@charset "UTF-8";
.z-30,
.z-50 {
  position: relative
}
.mini-convini .open-time__item.note .open-time__table .def-list__inner > div:first-child,
.open-time__table .def-list > div:first-child {
  min-width: 42px;
  background: 0 0
}
.day-trip-hotspring a,
.ksk-font-color {
  color: #4d4d4d
}
.ksk-bg-pin {
  background: #f6ecf1
}
.z-50 {
  z-index: 50
}
.z-30 {
  z-index: 30
}
.header__nav__block-main,
.z-10 {
  z-index: 10;
  position: relative
}
.bl__paragraph-wide,
.side-dish-list__txt {
  line-height: 1.6
}
.ttl--border-before--new-line {
  background: -webkit-gradient(linear,left top,left bottom,color-stop(91%,transparent),color-stop(0,#b48c30));
  background: linear-gradient(transparent 91%,#b48c30 0);
  display: inline;
  padding: 0 2px 4px
}
.ttl--border-before {
  position: relative;
  top: 0
}
.ttl--border-before::before {
  position: absolute;
  bottom: -5px;
  left: 50%;
  content: "";
  width: 100%;
  max-width: 755px;
  border-bottom: 2px solid #b48c30;
  -webkit-transform: translate(-50%);
  transform: translate(-50%)
}
.color-box-kadomaru {
  background: #d3d3d3;
  padding: 2rem 6rem;
  border-radius: 30px
}
.bg-clr-beige {
  background: #ebead2
}
.bg-clr-bark-yellow {
  background: #c7c00f
}
.bg-clr-pale-yellow {
  background: #fffff4
}
.bg-clr-pale-orange {
  background: #fffbf8
}
.bg-clr-pale-bule {
  background: #effcff
}
.bg-clr-bule {
  background: #5ca3c9
}
.bg-clr-bule-green,
.footer {
  background: #41929b
}
.bg-clr-light-bule {
  background: #d6ecf0
}
.bg-clr-pale-orange2 {
  background: #f5e2d3!important
}
.over-w--orange {
  -o-border-image: linear-gradient(#e8bba1,#e8bba1) 0 fill//0 100vw 0 100vw;
  border-image: -webkit-gradient(linear,left top,left bottom,from(#e8bba1),to(#e8bba1)) 0 fill//0 100vw 0 100vw;
  border-image: linear-gradient(#e8bba1,#e8bba1) 0 fill//0 100vw 0 100vw
}
.bg-clr-pastel-orange {
  background: #fff5ef
}
.over-w---pastel-orange {
  -o-border-image: linear-gradient(#fff5ef,#fff5ef) 0 fill//0 100vw 0 100vw;
  border-image: -webkit-gradient(linear,left top,left bottom,from(#fff5ef),to(#fff5ef)) 0 fill//0 100vw 0 100vw;
  border-image: linear-gradient(#fff5ef,#fff5ef) 0 fill//0 100vw 0 100vw
}
.over-w---pale-orange {
  -o-border-image: linear-gradient(#f8e0d2,#f8e0d2) 0 fill//0 100vw 0 100vw;
  border-image: -webkit-gradient(linear,left top,left bottom,from(#f8e0d2),to(#f8e0d2)) 0 fill//0 100vw 0 100vw;
  border-image: linear-gradient(#f8e0d2,#f8e0d2) 0 fill//0 100vw 0 100vw
}
.clearfix::after {
  content: "";
  clear: both;
  display: block
}
.rsvBox {
  color: #000
}
.bus__bnr,
.rsvBox__tab__item button.js-rsvTab--active,
.rsvLink {
  color: #fff
}
.rsvBox__submit span {
  color: #3f8ebe
}
.rsvBox__form__block,
.rsvBox__head,
.rsvBox__head::before,
.rsvBox__tab__item button.js-rsvTab--active,
.rsvBox__ttl {
  background: #7493ab
}
.rsvBox__form__item,
.rsvBox__tab__item button.js-rsvTab--inactive {
  background: #d5dee5
}
.rsvBox__inner,
.rsvLink {
  background: #5b7283
}
.header__nav__block-main {
  max-width: 820px
}
@media screen and (min-width:1025px) {
  .header__nav__list__item a {
    font-size: 90%;
    padding: 10px 9px
  }
  .header__nav__block-main {
    margin-left: calc((100% - 1024px)/ 2)
  }
  .access header,
  .contact header,
  .faq header,
  .index header,
  .ng header,
  .restaurant header,
  .service header,
  .spa header,
  .thanks header {
    margin-bottom: -10rem
  }
  .access .hero__sub__img img,
  .contact .hero__sub__img img,
  .faq .hero__sub__img img,
  .index .hero__sub__img img,
  .ng .hero__sub__img img,
  .restaurant .hero__sub__img img,
  .service .hero__sub__img img,
  .spa .hero__sub__img img,
  .thanks .hero__sub__img img {
    height: 110px!important
  }
  .room header {
    margin-bottom: -10.5rem
  }
  .bus__items {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex
  }
}
.header__nav__social__item.header__nav__social__rsv span {
  color: #41929b!important
}
.footer__rsv {
  background: #fffdce;
  color: #4e5d6a
}
.about-breakfast .def-list,
.footer__rsv__btn {
  background: #fff
}
.footer__insta {
  background: #9eccd5
}
.footer__info__link__item {
  border-right: 1px solid #fff
}
.mvSlider__item.gest-room .mvSlider__item__bg {
  background-image: url(/img/koshiki/index/hero1.jpg?6)
}
.mvSlider__item.reception-shelf .mvSlider__item__bg {
  background-image: url(/img/koshiki/index/hero2.jpg?6)
}
.mvSlider__item.breakfast-udon .mvSlider__item__bg {
  background-image: url(/img/koshiki/index/hero3.jpg?6)
}
.mvSlider__item.reception .mvSlider__item__bg {
  background-image: url(/img/koshiki/index/hero4.jpg?6)
}
.bl__campaignBox__ttl {
  background: #fff;
  color: currentColor
}
.bl__campaignBox__inner {
  margin-top: 1rem;
  margin-bottom: 6rem;
  padding: 35px 25px
}
.bg-clr-light-bule-gradation {
  background: -webkit-gradient(linear,left top,left bottom,color-stop(30%,#effcff),to(rgba(239,252,255,0)));
  background: linear-gradient(to bottom,#effcff 30%,rgba(239,252,255,0))
}
.wave-background--light-blue {
  background-image: url(/img/koshiki/bg-nami-light-blue.png)
}
.wave-background--light-yellow {
  background-image: url(/img/koshiki/bg-nami-light-yellow.png)
}
.wave-background--white {
  background-image: url(/img/koshiki/bg-nami-white.png)
}
.activity .work-shop__top-deco,
.index .wave-background {
  margin-bottom: -17rem
}
.directions-card hr {
  border: 3px solid #dfdfdf
}
.deco-maru1,
.deco-maru2,
.deco-nami,
.deco__item--onsen,
.element,
.wave-blue--left,
.wave-blue--right {
  position: relative
}
.deco-nami::after {
  position: absolute;
  display: block;
  content: "";
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  z-index: 1;
  width: 548px;
  height: 171px;
  background-image: url(/img/koshiki/index/wave-light-blue.png?0);
  top: -13rem;
  right: -10rem
}
.deco-maru1::after,
.deco-maru2::after,
.deco-maru2::before {
  position: absolute;
  content: "";
  background: #9eccd5;
  border-radius: 50%
}
.special-top__img img {
  -webkit-box-shadow: -10px 10px 0 0 #cae1e3;
  box-shadow: -10px 10px 0 0 #cae1e3
}
.index__plan__item__name {
  color: #fff;
  background: #41929b!important
}
.index__plan__bg {
  background: #f9f7d7
}
.index__access__txt {
  font-size: 2.5rem;
  line-height: 1.6
}
.index__access__img3 {
  padding-left: 6.3rem;
  margin-right: -48rem
}
.bnr-karaoke {
  font-size: 2.2rem
}
.wave-blue--right .wave-blue__item {
  top: -190px;
  right: calc((100% - 1024px)/ 2 - 220px)
}
.wave-blue--left .wave-blue__item {
  top: -175px;
  left: calc((100% - 1024px)/ 2 - 270px);
  -webkit-transform: scale(-1,1);
  transform: scale(-1,1)
}
.deco-maru1::after {
  width: 11px;
  height: 11px;
  top: 1.5rem;
  right: -38rem
}
.deco-maru2::before {
  width: 20px;
  height: 20px;
  top: -1rem;
  right: -34rem
}
.deco-maru2::after {
  width: 11px;
  height: 11px;
  top: .5rem;
  right: -35rem
}
.icon-ferry::after,
.icon-white-bus::after,
.icon-white-ferry::after {
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  z-index: 1;
  right: -8px;
  position: absolute;
  content: "　";
  display: block
}
.by-ferry-or-boat__ttl {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex
}
.by-ferry-or-boat__ttl p {
  font-size: 2rem;
  line-height: 1.1
}
.by-ferry-or-boat__btn {
  display: inline-block;
  padding: .8em 2rem;
  background: #41929b;
  border-radius: 2.5em
}
.icon-ferry {
  position: relative;
  margin-left: 4rem
}
.icon-ferry::after {
  width: 51px;
  height: 43px;
  background-image: url(/img/koshiki/index/ferry.png?0);
  top: 0
}
.icon-white-bus,
.icon-white-ferry {
  position: relative;
  margin-left: 2rem
}
.icon-white-ferry::after {
  width: 26px;
  height: 22px;
  background-image: url(/img/koshiki/index/ferry-white.png?0);
  top: -2px
}
.icon-white-bus::after {
  width: 26px;
  height: 22px;
  background-image: url(/img/koshiki/index/bus-white.png?0);
  top: -3px
}
.day-trip-hotspring .txt-shadow--yellow {
  text-shadow: 1px 1px 0 #f7f6da,-1px -1px 0 #f7f6da,-1px 1px 0 #f7f6da,1px -1px 0 #f7f6da,0 1px 0 #f7f6da,-1px 0 #f7f6da,-1px 0 0 #f7f6da,1px 0 0 #f7f6da
}
.day-trip-hotspring .txt-shadow--white {
  text-shadow: 1px 1px 0 #fff,-1px -1px 0 #fff,-1px 1px 0 #fff,1px -1px 0 #fff,0 1px 0 #fff,-1px 0 #fff,-1px 0 0 #fff,1px 0 0 #fff
}
.day-trip-hotspring .card__ttl__inner {
  background: #41929b;
  color: #fff;
  font-weight: 400;
  font-size: 3rem;
  text-align: center;
  border-radius: 30px;
  padding: .5rem 4%;
  margin-bottom: 1.5rem
}
.day-trip-hotspring .card__bg {
  border-radius: 30px;
  padding: 1.5rem 1.5rem 3rem;
  background-image: url(/img/koshiki/index/info-hotspring/bg.webp);
  background-size: contain;
  background-position: top;
  background-repeat: no-repeat
}
.day-trip-hotspring .card__box {
  background: #fff;
  max-width: 665px;
  margin: auto;
  border-radius: 20px;
  padding: 1.6rem 4%
}
.deco__item--onsen::after,
.deco__item--towels-drinks::after,
.element::before {
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  content: ""
}
.day-trip-hotspring .card__box__name,
.day-trip-hotspring .card__box__table-txt {
  font-size: 2.1rem
}
.day-trip-hotspring .card__box p,
.drink-menu p,
.kids-menu p,
.rental-car__txt-tel {
  margin: 0
}
.day-trip-hotspring .card__box--1 p {
  margin-bottom: 1.2rem
}
.day-trip-hotspring .card__info {
  font-size: 1.6rem
}
.day-trip-hotspring .txt-red {
  color: #b20202;
  font-size: 2rem
}
.bnr-car-rental {
  padding-top: 2rem;
  font-size: 2rem
}
.bnr-car-rental a {
  color: #4d4d4d;
  text-decoration: none
}
.bnr-car-rental .about-car-rental {
  margin-bottom: 3rem;
  display: block
}
.bnr-car-rental .rental-car-only {
  border: 1px solid;
  border-radius: 40px;
  padding: 1rem 4%;
  max-width: 900px;
  display: block;
  text-align: center;
  margin: auto
}
.element::before {
  position: absolute;
  background-image: url(/path/to/image.png);
  width: 120px;
  height: 80px
}
.deco__item--onsen::after {
  position: absolute;
  background-image: url(/img/koshiki/index/info-hotspring/onsen.png?0);
  width: 146px;
  height: 168px;
  top: -6rem;
  left: 1rem
}
@media screen and (min-width:576px) and (max-width:1024px) {
  .header__nav__block-main {
    width: 80%
  }
  .access header,
  .contact header,
  .faq header,
  .index header,
  .ng header,
  .restaurant header,
  .room header,
  .service header,
  .spa header,
  .thanks header {
    margin-bottom: -16.5rem
  }
  .access .hero__sub__img img,
  .contact .hero__sub__img img,
  .faq .hero__sub__img img,
  .index .hero__sub__img img,
  .ng .hero__sub__img img,
  .restaurant .hero__sub__img img,
  .service .hero__sub__img img,
  .spa .hero__sub__img img,
  .thanks .hero__sub__img img {
    height: 17rem!important
  }
  .room .hero__sub__img img {
    margin-top: -12px!important
  }
  .header-car-rental {
    font-size: 80%
  }
  .hero__sub__index-movie {
    margin-top: -.8rem
  }
  .deco-maru2::before {
    right: -30rem
  }
  .deco-maru2::after {
    right: -31rem
  }
  .icon-ferry::after {
    width: 45.9px;
    height: 38.7px;
    margin-top: -2px;
    right: -8px
  }
  .icon-white-ferry::after {
    width: 23.4px;
    height: 19.8px;
    margin-top: -2px;
    right: -8px
  }
  .icon-white-bus::after {
    width: 23.4px;
    height: 19.8px;
    margin-top: 1px;
    right: -8px
  }
  .deco__item--onsen::after {
    width: calc(146px * .6);
    height: calc(168px * .6);
    top: -9rem
  }
}
.arrow-down,
.category__ttl--deco,
.deco-kome,
.deco-maguro,
.deco-nami-hanmaru,
.deco__item--towels-drinks,
.ksk-deco--1,
.ksk-deco--2,
.ksk-deco--3,
.restaurant .deco-img {
  position: relative
}
.deco__item--towels-drinks::after {
  position: absolute;
  background-image: url(/img/koshiki/index/info-hotspring/towels-drinks.png?0);
  width: 219px;
  height: 219px;
  bottom: -.5rem;
  right: -17rem
}
.room-cards__ttl {
  color: #41929b
}
.room-cards__ttl__border {
  border-bottom: 8px solid #41929b
}
.room-cards__items .card__border {
  border: 3px solid #eae67c
}
.service .deco-circle {
  height: 150px;
  width: 150px;
  top: -6rem;
  font-size: 190%;
  padding-top: 9px
}
.service .deco-circle__blue {
  background: #41929a;
  font-size: 180%
}
.service .deco-circle__yellow {
  height: 140px;
  width: 140px;
  background: #d1ca11;
  font-size: 2.6rem
}
.bus .icon-bus-access::after,
.deco-kome::before,
.knife-fork::after {
  background-size: contain;
  z-index: 1
}
.room__amenity__list .def-list div:first-child {
  background: #e4eef0
}
.about-spa__inner,
.hot-spring-use__table>.def-list div:first-child {
  background: #f8eaca
}
.deco-human::after {
  background-image: url(/img/koshiki/room/human-one.png?0)!important
}
@media screen and (min-width:576px) {
  .sp {
    display: none!important
  }
  .header__nav__list__item {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center
  }
  .header a span:last-child {
    letter-spacing: 1.2px
  }
  .wave-background {
    width: 100%;
    height: 300px;
    background-repeat: repeat-x;
    background-position: bottom
  }
  .index__access__items:nth-child(3) {
    margin-top: 6rem
  }
  .index__access__img1 {
    margin-left: -47rem
  }
  .wave-blue__item {
    position: absolute
  }
  .service .deco-circle__yellow {
    margin-left: 0;
    left: 0
  }
  .access-items__top-img {
    margin-bottom: 10rem
  }
}
.kids-menu .content__ttl,
.rental-car__item {
  margin-bottom: 7rem
}
.about-meals .content__ttl,
.rental-car__txt-top {
  margin-bottom: 5rem
}
.about-kenminwari__ttl,
.bus__ttl,
.hot-spring-use__ttl,
.open-time__ttl,
.rental-car__ttl-sub {
  font-weight: 400
}
.rental-car__ttl-sub span {
  font-size: 80%;
  color: #41929b
}
.rental-car__ttl-sub a {
  color: #4d4d4d;
  text-decoration: none
}
.rental-car__border-y-bold {
  border-top: 3px solid #c3c3c3;
  border-bottom: 3px solid #c3c3c3
}
.rental-car__border-y {
  border-top: 1px solid #c3c3c3;
  border-bottom: 1px solid #c3c3c3
}
.rental-car__icon {
  font-size: 300%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
  -ms-flex-pack: end;
  justify-content: end;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  color: #41929b
}
@media screen and (min-width:576px) and (max-width:1024px) {
  .deco__item--towels-drinks::after {
    width: calc(219px * .6);
    height: calc(219px * .6);
    bottom: -12.5rem;
    right: 0
  }
  .service .deco-circle {
    height: 120px;
    width: 120px;
    top: -4rem
  }
  .service .deco-circle__blue,
  .service .deco-circle__yellow {
    font-size: 170%
  }
  .rental-car__icon {
    padding: 0
  }
}
.rental-car__txt-tel span {
  color: #41929b
}
.rental-car__num-tel {
  font-size: 200%;
  margin: 0
}
.breakfast-point,
.bus,
.drink-menu,
.kids-menu {
  margin-bottom: 10rem
}
.bus__txt p {
  font-size: 240%;
  line-height: 1.5
}
@media screen and (max-width:1024px) {
  .ttl--border-before {
    display: block
  }
  .index__access__img3 {
    padding-left: .3rem;
    margin-right: -4rem;
    height: 23vh
  }
  .index__access__img3 > img {
    -o-object-fit: cover;
    object-fit: cover;
    width: 100%;
    height: 100%
  }
  .day-trip-hotspring .card__ttl__inner {
    border-radius: 50px;
    padding: 1.5rem 4%;
    font-size: 2.5rem
  }
  .day-trip-hotspring .card__bg {
    background: #f7f6da
  }
  .day-trip-hotspring .card__body {
    padding-bottom: 4rem
  }
  .bus__txt p {
    text-align: center
  }
}
@media screen and (max-width:575px) {
  .fit-over__sp--30 {
    height: 30vh
  }
  .fit-over__sp--30 > img {
    -o-object-fit: cover;
    object-fit: cover;
    width: 100%;
    height: 100%
  }
  .fit-over__sp--40 {
    height: 40vh
  }
  .fit-over__sp--40 > img {
    -o-object-fit: cover;
    object-fit: cover;
    width: 100%;
    height: 100%
  }
  .header__fixed-nav .reservation {
    color: #41929b!important
  }
  .header__fixed-nav__hum {
    background: #41929b
  }
  .header__global-nav {
    color: #333;
    background: -webkit-gradient(linear,left top,left bottom,from(#a8e4af),to(#58c7e5));
    background: linear-gradient(to bottom,#a8e4af,#58c7e5)
  }
  .footer__rsv {
    background: #f0efcb
  }
  .wave-background {
    background-position: center;
    background-size: cover;
    width: 100%;
    height: 85px
  }
  .index .wave-background {
    margin-bottom: -5rem
  }
  .deco-nami::after {
    width: 310px;
    height: 98px;
    top: -10rem;
    right: -14px
  }
  .index__plan__bg {
    padding-top: 2rem;
    padding-bottom: 1rem;
    background: #fdfdf3
  }
  .index__plan .slider-card__item div {
    padding: 15px 0
  }
  .index__access__items:nth-child(3) {
    margin-top: 1rem
  }
  .index__access__items:nth-child(3) > * {
    display: grid
  }
  .index__access__items:nth-child(3) > * p {
    -webkit-box-ordinal-group: 3;
    -ms-flex-order: 2;
    order: 2
  }
  .index__access__items:nth-child(3) > * div {
    -webkit-box-ordinal-group: 2;
    -ms-flex-order: 1;
    order: 1
  }
  .index__access__txt {
    font-size: 2rem
  }
  .index__access__img1 {
    margin-right: 7%;
    height: 30vh
  }
  .index__access__img1 > img {
    -o-object-fit: cover;
    object-fit: cover;
    width: 100%;
    height: 100%
  }
  .index__access__img2 {
    margin-right: 30%
  }
  .index__access__img3 {
    height: 30vh;
    padding-left: 1rem
  }
  .bnr-karaoke {
    font-size: 150%
  }
  .wave-blue--right .wave-blue__item {
    margin-top: -7rem;
    margin-right: -6rem;
    padding-left: 15rem;
    opacity: .6;
    margin-bottom: -3rem
  }
  .wave-blue--left .wave-blue__item {
    margin-left: -8rem;
    margin-right: 40%;
    opacity: .6;
    margin-top: -7rem
  }
  .day-trip-hotspring .card__ttl__inner {
    line-height: 1.2;
    border-radius: 60px;
    padding: 2rem 6%
  }
  .day-trip-hotspring .card__box__name,
  .day-trip-hotspring .card__box__table-txt {
    font-size: clamp(1rem,4.25vw,1.9rem)
  }
  .day-trip-hotspring .card__box--2 {
    font-size: 1.8rem
  }
  .day-trip-hotspring .card__info {
    font-size: clamp(1rem,4.5vw,1.5rem)
  }
  .bnr-car-rental {
    padding-top: 5rem;
    font-size: 1.8rem
  }
  .bnr-car-rental .about-car-rental {
    margin-bottom: 1rem
  }
  .deco__item--onsen::after,
  .deco__item--towels-drinks::after {
    display: none
  }
  .service .deco-circle {
    top: -4rem;
    left: -20px
  }
  .service .deco-circle__blue,
  .service .deco-circle__yellow {
    height: 102px;
    width: 102px;
    font-size: 160%
  }
  .bus__txt p {
    font-size: 200%
  }
  .bus__txt p:first-child {
    font-size: 140%
  }
}
.bus__txt p .ttl--border-before--new-line {
  background: -webkit-gradient(linear,left top,left bottom,color-stop(91%,transparent),color-stop(0,#fff));
  background: linear-gradient(transparent 91%,#fff 0)
}
.bus__bnr.color-box-kadomaru {
  padding: 3rem 10rem
}
.bus .icon-bus-access::after {
  display: block;
  content: "　";
  background-repeat: no-repeat;
  background-position: center;
  width: 100px;
  height: 100px;
  background-image: url(/img/koshiki/access/bus-white-big.png?0);
  top: 23px;
  left: 7px
}
.about-kenminwari__table>.def-list div:last-child,
.hot-spring-use__table>.def-list div:last-child {
  padding-left: 4%
}
.about-kenminwari__table > .def-list div:first-child {
  background: #cae8ef
}
.about-spa__inner {
  padding-top: 5rem;
  padding-bottom: 3rem
}
.about-spa__box {
  max-width: 756px
}
.about-spa__txt-main {
  font-weight: 400;
  margin: 5rem 0 3rem
}
.about-spa__txt {
  font-size: 14px
}
.about-kome__txt,
.about-spa__txt.bl__paragraph {
  line-height: 1.8
}
.sauna {
  margin-top: 15rem;
  margin-bottom: 10rem
}
.sauna__img-main img {
  margin-top: -7rem
}
.sauna__txt {
  max-width: 860px;
  padding-bottom: 6rem;
  margin: -2rem auto 0
}
.bath__list__ttl {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center
}
.bath__list__ttl > * {
  background: #41929b;
  color: #fff;
  display: inline;
  padding: 3px 7%;
  border-radius: 20px;
  font-weight: 400
}
.bath__list > :last-child .bath__list__ttl > * {
  background: #baa066
}
.ttl-sub__dotted {
  padding-bottom: 1em;
  font-weight: 400;
  line-height: 1.5;
  border-top: none;
  border-bottom: 1px dotted #4d4136
}
.hotel-map__ttl {
  color: #fff;
  background: #c7c00f;
  font-weight: 400;
  display: inline-block;
  padding: .2rem 5rem
}
.hotel-map__ttl__base {
  text-align: center
}
.hotel-map__img {
  margin-top: -8rem
}
.hotel-map__info {
  margin-bottom: 2rem
}
.hotel-map__info__inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex
}
.hotel-map__mark {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center
}
.big-bath__btn a {
  padding: 1.5rem 0
}
.karaoke .open-time__item.note,
.mini-convini .open-time__item.note {
  display: block
}
.karaoke .open-time__item.note .open-time__table {
  max-width: 560px;
  margin: auto
}
.about-kome__inner,
.karaoke .open-time__item.note .open-time__table .place,
.karaoke .open-time__item.note .open-time__table .time,
.menu-list__example-oshinagaki__inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex
}
.mini-convini .open-time__item.note .open-time__table {
  max-width: 515px;
  margin: auto
}
.mini-convini .open-time__item.note .open-time__table .def-list__inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  min-width: 232px;
  margin: auto
}
.open-time {
  background: #d6ecf0;
  padding: 2rem 6rem 5rem
}
.open-time__item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center
}
.open-time__body {
  max-width: 530px;
  margin: auto
}
.open-time__table .def-list:first-child {
  border-top: none
}
.open-time__table .def-list {
  border-bottom: 1px solid #707070
}
.open-time__list {
  list-style: none
}
.breakfast-time__info,
.open-time__list li {
  text-indent: -1rem;
  margin-left: 1rem
}
.open-time__list a {
  color: currentColor;
  text-decoration: none;
  border-bottom: 2px solid #41929b
}
.mini-convini .open-time__table {
  min-width: 240px
}
.beach-rental__list > * {
  padding-left: .5%;
  padding-right: .5%
}
.about-breakfast {
  padding-top: 7rem
}
.about-breakfast .def-list > div:first-child {
  background: #fcfac6
}
.breakfast-point .deco-txt__left::before,
.breakfast-point .deco-txt__right::before {
  color: #eab77c
}
.breakfast-point .line-left,
.breakfast-point .line-right {
  border-color: #eab77c
}
.about-kome {
  padding: 1rem 7% 1rem 0;
  background: #e8e2d6;
  margin-top: 3rem
}
.about-kome__imgs {
  margin-bottom: -3rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex
}
.about-kome__imgs .kome > div {
  margin-left: -9rem;
  margin-top: -3rem
}
.about-kome__imgs .kome-illust > div {
  margin-top: -1rem
}
.deco-kome::before {
  position: absolute;
  display: block;
  content: "";
  background-repeat: no-repeat;
  background-position: center;
  width: 200px;
  height: 257px;
  background-image: url(/img/koshiki/restaurant/point/kome-illust.png?0);
  bottom: 0;
  left: -11rem
}
.knife-fork {
  position: relative;
  padding-left: 5rem
}
.knife-fork::before {
  display: none
}
.deco-maguro::after,
.deco-nami-hanmaru::after,
.knife-fork::after {
  display: block;
  background-repeat: no-repeat;
  content: "";
  position: absolute
}
.knife-fork::after {
  background-position: center;
  width: 51px;
  height: 51px;
  background-image: url(/img/koshiki/restaurant/knife-fork.png?0);
  top: -44px;
  right: -4px
}
.bl_restaurant__img__sub {
  margin-top: -19rem
}
.detail-panel .deco-txt__right::before {
  bottom: 0
}
@media screen and (min-width:1025px) {
  .bus__item:first-child {
    width: 20%
  }
  .bus__item:last-child {
    width: 80%
  }
  .bus .icon-bus-access {
    position: relative;
    margin-left: 3rem
  }
  .bus .icon-bus-access::after {
    position: absolute
  }
  .hot-spring-use .price p:nth-child(2) {
    text-indent: -162px;
    margin-left: 162px;
    margin-top: -13px
  }
  .ksk-deco__item {
    position: absolute;
    z-index: -1
  }
  .ksk-deco--1 .ksk-deco__item,
  .ksk-deco--2 .ksk-deco__item {
    top: -77px;
    left: calc((100% - 1024px)/ 2 - 215px)
  }
  .about-kome__item:first-child {
    width: 40%
  }
  .about-kome__item:last-child {
    width: 60%
  }
  .detail-panel .line-left,
  .detail-panel .line-right {
    height: 95%
  }
  .menu-list__example__inner p {
    margin-left: -19px;
    margin-right: -19px
  }
}
.side-dish-list {
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between
}
.side-dish-list__ttl {
  margin-top: 2rem
}
.restaurant .bg-img-koshiki {
  background-repeat: no-repeat;
  background-position: center;
  background-image: url(/img/koshiki/restaurant/point/map-kosihki.png);
  background-size: 75%
}
.deco-maguro::after,
.deco-nami-hanmaru::after {
  background-position: center;
  background-size: contain;
  width: 489px;
  height: 285px
}
.deco-nami-hanmaru::after {
  z-index: 1
}
.deco-maguro::after {
  z-index: -1;
  background-image: url(/img/koshiki/restaurant/point/maguro.png?0);
  top: -42rem;
  right: -35rem
}
.category-kaisendon .line-left.deco-nami-hanmaru::after,
.category-kaisendon .line-right.deco-nami-hanmaru::after {
  background-image: url(/img/koshiki/restaurant/point/nami-hanmaru-orange.png?0)
}
.category-kaisendon .line-right.deco-nami-hanmaru::after {
  top: 21rem;
  right: -5rem
}
.category-kaisendon .line-left.deco-nami-hanmaru::after {
  top: 12rem;
  right: 15rem
}
.restaurant .category-scroll .card__items {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: distribute;
  justify-content: space-around;
  max-width: 540px;
  margin: auto
}
.bl_dinner__item.about-dinner2 .menu-list__ttl,
.drink-menu .card__body>*,
.kids-menu .card__body>*,
.koshiki-tours .work-shop__item-block>:nth-child(2)>div,
.menu__main-image-block .card__img,
.shiodukuri .work-shop__item-block>:nth-child(2)>div {
  margin-bottom: 2rem
}
.restaurant .category-scroll .card {
  border: none;
  background: 0 0;
  border-bottom: 1px solid currentColor;
  width: 209px;
  height: 62px;
  font-size: 2rem;
  padding-bottom: 2rem;
  color: currentColor
}
.restaurant .deco-circle__orange span::after,
.restaurant .deco-img::after {
  display: block;
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain
}
.arrow-down:hover {
  opacity: .6
}
.arrow-down::after {
  position: absolute;
  content: "";
  display: inline-block;
  width: 9px;
  height: 9px;
  border: 2px solid;
  border-color: transparent transparent #565656 #565656;
  left: 50%;
  -webkit-transform: translate(-50%) rotate(-45deg);
  transform: translate(-50%) rotate(-45deg);
  bottom: -10px;
  -webkit-transition: bottom .2s;
  transition: bottom .2s
}
.arrow-down:hover::after {
  bottom: -15px
}
.category__ttl--deco::after {
  position: absolute;
  content: "Dinner";
  font-size: 6rem;
  color: #fff;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%,-50%);
  transform: translate(-50%,-50%);
  letter-spacing: 3px
}
.category__ttl--deco.ttl--dinner::after {
  content: "Dinner"
}
.category__ttl--deco.ttl--breakfast::after {
  content: "Break fast"
}
.bl_breakfast__top-img,
.bl_dinner__top-img {
  width: 100vw;
  margin: 0 calc(50% - 50vw)
}
.bl_breakfast__top-img > *,
.bl_dinner__top-img > * {
  max-width: 1920px;
  margin: auto
}
.bl_breakfast .card__btn a,
.bl_dinner .card__btn a {
  padding: 1.5rem
}
.bl_dinner__top-img > * {
  margin-bottom: 6rem
}
.bl_breakfast__top-img {
  margin-bottom: -10px
}
.menu {
  margin-bottom: 9rem
}
.drink-menu .content__ttl,
.menu__main-image-block {
  padding-bottom: 2rem
}
.menu__main-image-block .card__name {
  font-size: 280%;
  letter-spacing: 3px;
  line-height: 1.2
}
.menu__main-image-block .card__name .ttl-small {
  font-size: 65%
}
.menu__detail > * {
  padding: 3rem 0
}
.menu__detail .card__body {
  padding-left: 2.5%
}
.menu__detail .card__name {
  font-size: 190%
}
@media screen and (min-width:576px) {
  .bus__txt p:first-child {
    font-size: 200%
  }
  .service__indent {
    padding-right: 6%;
    padding-left: 6%
  }
  .service .wave-background {
    margin-bottom: -7rem
  }
  .big-bath .open-time__table .price div:nth-child(2) p:nth-child(2),
  .big-bath .open-time__table .time div:nth-child(2) p:nth-child(1) {
    text-indent: -98px;
    margin-left: 98px
  }
  .big-bath .open-time__table .price div:first-child {
    min-width: 48px
  }
  .karaoke .open-time__item.note .open-time__table .place,
  .karaoke .open-time__item.note .open-time__table .time {
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center
  }
  .about-kome__line {
    margin-top: -4rem;
    margin-left: -1.5rem;
    margin-bottom: -1.3rem
  }
  .bl_restaurant__txt {
    padding-top: 18rem
  }
  .side-dish-list__items {
    width: calc(33.3333333333% - 10px)
  }
  .restaurant .bg-img-koshiki {
    background-position: 50% 90%;
    background-size: 75%
  }
  .menu__detail .card__inner {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex
  }
  .menu__detail .card__img {
    width: 42%
  }
  .menu__detail .card__body {
    width: 58%
  }
}
.ttl-border-left {
  position: relative;
  padding: 0 0 0 .4em
}
.ttl-border-left::before {
  position: absolute;
  content: "";
  height: 80%;
  width: 5px;
  background: #db7e48;
  top: 50%;
  left: 0;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%)
}
@media screen and (max-width:1024px) {
  .bus__bnr.color-box-kadomaru {
    padding: 3rem 4%;
    font-size: 84%
  }
  .bus .icon-bus-access {
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex
  }
  .hotel-map__img {
    margin-top: -8%
  }
  .about-kome {
    margin-top: 5rem
  }
  .deco-maguro::after,
  .deco-nami-hanmaru::after {
    width: 280px;
    height: 150px
  }
  .deco-maguro::after {
    top: -4rem;
    left: 38rem
  }
  .category-kaisendon .line-right.deco-nami-hanmaru::after {
    top: 1rem;
    right: -8rem
  }
  .category-kaisendon .line-left.deco-nami-hanmaru::after {
    top: 16rem;
    left: -6rem
  }
  .ttl-border-left::before {
    height: 100%
  }
  .restaurant .snow-big::after {
    display: none
  }
}
.bl_dinner__item.about-dinner2 .content__ttl {
  padding-top: 5rem;
  padding-bottom: 5rem
}
.bl_dinner__item.about-dinner2 .menu-list {
  padding-top: 1rem
}
.bl_dinner__item.about-dinner2 .tobanyaki {
  padding-bottom: 4rem
}
.bl_dinner__item.about-dinner2 .kurobuta-syabusyabu .menu__main-image-block .ttl-border-left::before {
  height: 80%;
  -webkit-transform: translateY(-45%);
  transform: translateY(-45%)
}
.bl_dinner__item.about-dinner2 .kurobuta-syabusyabu .card__img {
  margin-bottom: 0
}
@media screen and (min-width:576px) and (max-width:1024px) {
  .bus .icon-bus-access::after {
    width: 90px;
    height: 90px;
    margin-top: 1px
  }
  .hot-spring-use .price p:nth-child(2) {
    text-indent: -140px;
    margin-left: 140px
  }
  .about-spa__txt-main2 {
    font-size: 15px
  }
  .ksk-deco__item {
    position: absolute;
    z-index: -1
  }
  .ksk-deco--1 .ksk-deco__item {
    top: -77px;
    left: calc((100% - 1024px)/ 2 + 47px)
  }
  .ksk-deco--2 .ksk-deco__item {
    top: -77px;
    left: calc((100% - 1024px)/ 2 - 5px)
  }
  .beach-rental .open-time {
    padding: 2rem 7%
  }
  .about-kome {
    padding: 1rem 4% 1rem 0
  }
  .about-kome__item:first-child {
    width: 50%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    padding-right: 2%
  }
  .about-kome__item:last-child {
    width: 50%
  }
  .about-kome__ttl {
    line-height: 1.3
  }
  .about-kome__imgs .kome > div {
    margin-left: -6rem
  }
  .knife-fork {
    padding-left: 3rem
  }
  .knife-fork::after {
    width: calc(51px * .8);
    height: calc(51px * .8);
    top: -35px;
    right: -9px
  }
  .category__ttl--deco::after {
    font-size: 4rem
  }
  .bl_breakfast__top-img > *,
  .bl_dinner__top-img > * {
    height: 35vh
  }
  .bl_breakfast__top-img > * img,
  .bl_dinner__top-img > * img {
    -o-object-fit: cover;
    object-fit: cover;
    width: 100%;
    height: 100%
  }
  .bl_dinner__item.about-dinner2 .kurobuta-syabusyabu .card__img {
    -ms-flex-line-pack: center;
    align-content: center
  }
}
.bl_dinner__item.about-dinner2 .kurobuta-syabusyabu .menu__detail .card__body {
  padding-left: 0
}
.bl_dinner__item.about-dinner2 .osashimi-gozen {
  padding-top: 5rem;
  padding-bottom: 6rem
}
.bl_dinner__item.about-dinner2 .osashimi-gozen .menu__detail,
.deco-sea-glass {
  margin-bottom: 4rem
}
.bl_dinner__item.about-dinner2 .osashimi-gozen .menu-list {
  margin-bottom: 5rem
}
.menu-list__example__inner {
  list-style: none;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  padding: 0;
  margin: 0;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center
}
.menu-list__example__inner li {
  -webkit-box-flex: 0;
  -ms-flex: 0 0 auto;
  flex: 0 0 auto;
  margin: 0 10px 1.5rem 0
}
.menu-list__example__inner .list__img span {
  display: inline-block;
  margin-bottom: 3px
}
.menu-list__example__inner p {
  margin-top: 10px;
  letter-spacing: 1px;
  line-height: 1.2!important
}
.faq-category__ttl,
.faq-list__list__block > div {
  padding: 19px 6%;
  letter-spacing: .2rem;
  text-indent: -2.5%
}
@media screen and (max-width:575px) {
  .bus .icon-bus-access::after {
    width: 50px;
    height: 50px;
    margin-top: 1px
  }
  .about-kenminwari__table>.def-list div:first-child,
  .hot-spring-use__table>.def-list div:first-child {
    width: 110px
  }
  .about-spa__inner {
    padding-top: 1.5rem
  }
  .about-spa__txt-main2 {
    font-size: 14px
  }
  .sauna {
    margin-bottom: 5rem
  }
  .bath__list__ttl > * {
    font-size: 120%
  }
  .ksk-deco__item {
    position: absolute;
    z-index: -1
  }
  .ksk-deco--1 .ksk-deco__item {
    top: -77px;
    width: 50%;
    left: calc((100% - 1024px)/ 2 + 270px)
  }
  .ksk-deco--2 .ksk-deco__item {
    top: 6rem;
    width: 70%;
    left: calc((100% - 1024px)/ 2 + 280px)
  }
  .hotel-map__ttl {
    font-size: 100%;
    padding: .2rem 3rem
  }
  .hotel-map__info {
    margin-top: 1rem
  }
  .open-time {
    padding: 2rem 7% 4rem
  }
  .mini-convini .open-time__table {
    min-width: 200px
  }
  .beach-rental__list > * {
    padding: .7%
  }
  .breakfast-point {
    padding-bottom: 10rem;
    margin-bottom: 0
  }
  .about-kome {
    margin: 0 calc(50% - 50vw);
    padding: 2rem 4% 5rem;
    width: 100vw
  }
  .about-kome__inner {
    display: grid
  }
  .about-kome__item:first-child {
    -webkit-box-ordinal-group: 3;
    -ms-flex-order: 2;
    order: 2;
    max-width: 380px;
    margin: auto
  }
  .about-kome__item:last-child {
    -webkit-box-ordinal-group: 2;
    -ms-flex-order: 1;
    order: 1
  }
  .about-kome__ttl {
    font-size: 180%;
    text-align: center
  }
  .about-kome__line {
    text-align: center;
    margin: -3.5rem auto auto;
    max-width: 290px;
    height: 27px
  }
  .about-kome__imgs .kome > div {
    margin-left: -1rem;
    margin-top: -20px
  }
  .about-kome__imgs .kome-illust > div {
    margin-top: -3rem;
    margin-right: -5rem
  }
  .knife-fork {
    padding-left: 2.5rem
  }
  .knife-fork::after {
    width: calc(51px * .7);
    height: calc(51px * .7);
    top: -30px;
    right: -10px
  }
  .bl_restaurant__img__main {
    height: 33vh
  }
  .bl_restaurant__img__main img {
    -o-object-fit: cover;
    object-fit: cover;
    width: 100%;
    height: 100%
  }
  .bl_restaurant__img__sub {
    margin-top: -11rem
  }
  .side-dish-list {
    max-width: 328px
  }
  .side-dish-list__container {
    margin-top: 5rem;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex
  }
  .side-dish-list__ttl {
    margin-top: -3rem
  }
  .side-dish-list__txt {
    margin-bottom: 3rem
  }
  .restaurant .bg-img-koshiki {
    background-position: 50% 17%;
    background-size: 135%
  }
  .about-meals .content__ttl {
    margin-bottom: 4rem
  }
  .restaurant .category-scroll .card {
    width: 43%;
    max-width: 180px
  }
  .category__ttl--deco::after {
    font-size: 4rem
  }
  .bl_breakfast .category__ttl--deco::after {
    font-size: 3rem
  }
  .menu__main-image-block {
    padding-bottom: 1rem
  }
  .menu__main-image-block .card__name {
    font-size: 3rem;
    letter-spacing: -1px
  }
  .menu__detail .card__img {
    margin-bottom: 2rem
  }
  .bl_dinner__item.about-dinner2 .menu-list__ttl {
    font-size: 1.8rem
  }
  .bl_dinner__item.about-dinner2 .tobanyaki.menu {
    margin-bottom: 0
  }
  .bl_dinner__item.about-dinner2 .kurobuta-syabusyabu .card__img {
    margin-bottom: 1rem
  }
  .bl_dinner__item.about-dinner2 .osashimi-gozen {
    padding-top: 0
  }
  .bl_dinner__item.about-dinner2 .osashimi-gozen.menu {
    margin-bottom: 7rem
  }
  .menu-list__example__inner li {
    margin: 0 5px
  }
  .menu-list__example__inner .list__img {
    width: 85px
  }
  .menu-list__example__inner p {
    font-size: 1.6rem;
    line-height: 1!important
  }
}
.faq-list__list__block > div,
.faq-list__list__block > ul > li {
  border-bottom: 1px solid #898989;
  border-right: 1px solid #898989;
  border-left: 1px solid #898989;
  line-height: 1.8;
  position: relative
}
.menu-list__example__inner .list__img {
  height: auto;
  width: 184px
}
.drink-menu .card__img,
.kids-menu .card__img,
.menu-list__example-oshinagaki .card__img,
.work-shop__ttl {
  margin-bottom: 1.5rem
}
.menu-list__example-oshinagaki .card__list {
  padding-left: 0;
  margin-bottom: 4rem
}
.menu-list__example-oshinagaki .card__list li {
  list-style: none;
  border-bottom: 1px dotted;
  line-height: 2
}
.menu-list__example-oshinagaki .card__info {
  line-height: 1
}
.restaurant .deco-img::after {
  position: absolute;
  content: ""
}
.restaurant .nami-hude::after {
  background-image: url(/img/koshiki/restaurant/dinner/nami-fude.png?0);
  width: 489px;
  height: 285px;
  z-index: -1;
  bottom: -16rem;
  right: -10rem
}
.restaurant .snow-big::after {
  background-image: url(/img/koshiki/restaurant/dinner/snow-big.png?0);
  width: 258px;
  height: 277px;
  z-index: -1;
  top: -5rem;
  left: -20.5rem
}
.restaurant .snow-small::after {
  background-image: url(/img/koshiki/restaurant/dinner/snow-small.png?0);
  width: 171px;
  height: 185px;
  z-index: -1;
  top: -6rem;
  right: -14.5rem;
  -webkit-transform: rotate(78deg);
  transform: rotate(78deg)
}
.restaurant .pig::after {
  background-image: url(/img/koshiki/restaurant/dinner/pig.png?0);
  width: 231px;
  height: 137px;
  z-index: 20;
  bottom: -3rem;
  left: -10rem
}
.restaurant .map-kagoshima::after {
  background-image: url(/img/koshiki/restaurant/dinner/map-kagoshima.png?0);
  width: 315px;
  height: 285px;
  z-index: -1;
  bottom: -2rem;
  right: -14.5rem
}
.restaurant .deco-circle {
  height: 140px;
  width: 140px;
  font-size: 160%;
  top: auto;
  left: auto;
  bottom: 0;
  right: 0;
  line-height: 1.1;
  margin-bottom: -7rem
}
.restaurant .deco-circle.advance-booking span,
.restaurant .deco-circle:first-child span,
.restaurant .deco-circle:nth-of-type(2) span {
  margin-bottom: -5%
}
.restaurant .deco-circle:nth-of-type(2) {
  margin-right: 13.5%;
  font-size: 225%;
  line-height: 1
}
.restaurant .deco-circle.advance-booking {
  bottom: auto;
  top: -5rem;
  right: auto;
  left: -2rem
}
.restaurant .deco-circle__blue-green {
  background: #41929a
}
.activity .deco-circle__yellow,
.restaurant .deco-circle__yellow {
  background: #d1ca11;
  border: 10px solid #c7c00f
}
.restaurant .deco-circle__light-orange {
  background: #eaa200
}
.restaurant .deco-circle__orange {
  background: #ef9936
}
.deco-canoe,
.deco-sea-glass,
.deco-txt-neko,
.restaurant .deco-circle__orange span,
.speech-bubble {
  position: relative
}
.restaurant .deco-circle__orange span::after {
  position: absolute;
  content: "";
  background-image: url(/img/koshiki/restaurant/dinner/snow-pop.png?0);
  width: 96px;
  height: 106px;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%,-50%);
  transform: translate(-50%,-50%)
}
.drink-menu .card__body,
.kids-menu .card__body {
  padding-left: 1%
}
.drink-menu .card__name,
.kids-menu .card__name {
  font-size: 4rem
}
.drink-menu .card__price,
.kids-menu .card__price {
  font-size: 3rem
}
.drink-menu .card__info,
.kids-menu .card__info {
  font-size: 1.4rem
}
.drink-menu .card__info li,
.kids-menu .card__info li {
  list-style: none;
  text-indent: -15px;
  margin-left: 15px
}
.contact .ttl-con {
  background: #edf1f4
}
.ng .ly__wrapper,
.thanks .ly__wrapper {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  min-height: 100vh
}
.ng .footer,
.thanks .footer {
  margin-top: auto
}
.hero__sub__ttl {
  top: 60%
}
.reserve .hero__sub__img img {
  margin-top: -2rem
}
.speech-bubble::before {
  color: transparent
}
.speech-bubble::after {
  position: absolute;
  display: block;
  content: "　";
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  z-index: 1;
  width: 40px;
  height: 37px;
  background-image: url(/img/common_2/faq/speech-bubble.png?0);
  top: 0;
  right: 0
}
.faq-category__ttl {
  font-weight: 400;
  background: #dff7fc;
  margin: 0
}
.faqNav__list {
  padding-left: 0;
  margin-top: 0;
  margin-bottom: 0;
  list-style: none;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center
}
.faqNav__item {
  width: 100%
}
.faqNav__item + .faqNav__item {
  margin-left: .2rem
}
.faqNav__button {
  width: 100%;
  padding: 1.4rem 0;
  font-size: 110%;
  color: currentColor;
  background: inherit;
  border: 1px solid #cbcbcb;
  border-radius: 40px;
  -webkit-transition: background-color .5s;
  transition: background-color .5s;
  -webkit-box-shadow: 0 3px 6px rgba(0,0,0,.1607843137);
  box-shadow: 0 3px 6px rgba(0,0,0,.1607843137)
}
.faqNav__button:hover {
  color: #fff;
  cursor: pointer;
  background: #cbcbcb;
  border: 1px solid transparent;
  -webkit-transition: background-color 1s;
  transition: background-color 1s
}
.faqNav__button:focus {
  outline: 0
}
.faq-list__list {
  display: block;
  color: #594a41;
  line-height: 2.6
}
.faq-list__list__block:first-child > div {
  border-top: 1px solid #898989
}
.faq-list__list__block > div::after,
.faq-list__list__block > div::before {
  position: absolute;
  display: block;
  content: "";
  background: #898989
}
.faq-list__list__block > ul {
  padding: 0;
  margin: 0;
  list-style: none
}
.faq-list__list__block > ul > li {
  padding: 20px 4% 20px 7%;
  margin: 0;
  background: #f7f7f7;
  text-indent: -3%;
  display: block
}
.faq-list__list__block > ul > li > a {
  color: currentColor;
  text-decoration: none
}
.faq-list__list__block > ul > li > a > span {
  font-size: 90%;
  color: currentColor
}
.faq-list__list__block .icon-q::before {
  content: "Q."
}
.faq-list__list__block .icon-a::before {
  content: "A. "
}
.faq-list__btn {
  color: #fff!important;
  min-width: 188px!important;
  background: #307fce;
  border-right: 1px solid #005db8;
  border-bottom: 1px solid #005db8
}
.indent__asterisk {
  display: inline-block;
  text-indent: -13px;
  padding-left: 13px
}
@media (min-width:576px) and (max-width:1920px) {
  .activity .hero__sub__img img {
    width: 100%;
    height: 30vh;
    -o-object-fit: cover;
    object-fit: cover
  }
}
.activity-top__ttl-special {
  font-size: 360%;
  color: #d8e8eb
}
.activity .other-activity__top-deco,
.activity .spot__top-deco {
  margin-top: -8rem;
  margin-bottom: -17rem
}
.activity .bg-img-koshiki {
  background-repeat: no-repeat;
  background-image: url(/img/koshiki/activity/map-koshiki.png);
  background-position: 100% 95%;
  background-size: 434px auto;
  max-width: 1100px;
  margin: auto
}
.activity .deco-circle {
  height: 135px;
  width: 135px;
  font-size: 210%;
  top: -6rem;
  line-height: 1
}
.activity .deco-circle:first-child {
  left: -.6em
}
.activity .deco-circle:nth-of-type(2) {
  left: 3.4em
}
.activity .deco-circle__blue {
  background: #9eccd5;
  border: 10px solid #7ebac6
}
.deco-canoe::after,
.deco-sea-glass::after,
.deco-txt-neko::after {
  position: absolute;
  display: block;
  content: "　";
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  right: 0
}
.deco-canoe {
  margin-left: 4rem
}
@media screen and (max-width:1024px) {
  .restaurant .snow-small::after {
    display: none
  }
  .activity .deco-circle__yellow,
  .restaurant .deco-circle__yellow {
    border: 5px solid #c7c00f;
    font-size: 180%
  }
  .restaurant .deco-circle__orange {
    font-size: 180%
  }
  .restaurant .deco-circle__orange span::after {
    width: calc(96px * .6);
    height: calc(106px * .6)
  }
  .drink-menu .card__body > *,
  .kids-menu .card__body > * {
    margin-bottom: 1rem
  }
  .drink-menu .card__name,
  .kids-menu .card__name {
    font-size: 3rem
  }
  .faqNav__list {
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -ms-flex-pack: distribute;
    justify-content: space-around;
    max-width: 500px;
    margin: auto
  }
  .faqNav__item {
    width: 48%;
    margin-bottom: .5em
  }
  .activity .deco-circle__blue {
    border: 5px solid #7ebac6;
    font-size: 180%
  }
  .deco-canoe {
    margin-left: 1em
  }
}
.deco-canoe::after {
  z-index: 1;
  width: 54px;
  height: 54px;
  background-image: url(/img/koshiki/activity/canoe.png?0);
  top: -7px
}
.deco-txt-neko::after {
  width: 396px;
  height: 195px;
  background-image: url(/img/koshiki/activity/txt-img-neko.png?0);
  bottom: -16rem
}
.deco-sea-glass::after {
  width: 412px;
  height: 218px;
  background-image: url(/img/koshiki/activity/txt-img-sea-glass.png?0);
  bottom: -9rem;
  right: -4rem
}
.activity .bl__btn-bar-kadomaru {
  padding: 1.8rem 5%;
  border-radius: 45px;
  font-size: 110%;
  max-width: 579px;
  margin: auto
}
.work-shop__content {
  margin-bottom: 20rem
}
.work-shop__txt {
  line-height: 2.3em
}
@media screen and (min-width:1025px) {
  .menu-list__example-oshinagaki .card__body {
    width: 60%;
    padding-right: 3%
  }
  .menu-list__example-oshinagaki .card__imgs {
    width: 40%
  }
  .speech-bubble::after {
    margin-top: .5rem
  }
  .activity header {
    margin-bottom: -10.5rem
  }
  .activity-top__ttl {
    width: 107%
  }
  .work-shop__txt {
    padding: 2em 5em
  }
}
@media screen and (min-width:576px) and (max-width:1024px) {
  .menu-list__example__inner .list__img {
    width: 150px
  }
  .menu-list__example-oshinagaki .card__body {
    width: 55%;
    padding-right: 3%
  }
  .menu-list__example-oshinagaki .card__imgs {
    width: 45%
  }
  .restaurant .nami-hude::after {
    width: calc(489px * .6);
    height: calc(285px * .6);
    top: -1rem
  }
  .restaurant .pig::after {
    height: calc(137px * .6);
    bottom: -2rem;
    left: -1rem;
    width: 40%
  }
  .restaurant .map-kagoshima::after {
    width: calc(315px * .6);
    height: calc(285px * .6);
    bottom: auto;
    right: -1.5rem;
    top: -2rem
  }
  .restaurant .deco-circle {
    height: 90px;
    width: 90px;
    font-size: 120%;
    bottom: -1rem;
    right: 10px
  }
  .restaurant .deco-circle:first-child {
    margin-bottom: -3%
  }
  .restaurant .deco-circle:nth-of-type(2) {
    margin-bottom: -3%;
    margin-right: 90px;
    font-size: 150%
  }
  .restaurant .deco-circle.advance-booking {
    top: -4rem
  }
  .drink-menu .card__price,
  .kids-menu .card__price {
    font-size: 2rem
  }
  .drink-menu .content__ttl__sub {
    margin-bottom: -1rem
  }
  .hero__sub__ttl {
    top: 70%
  }
  .reserve .hero__sub__img img {
    margin-top: -6rem
  }
  .faq-list__list__block > div {
    padding: 19px 10% 19px 6%;
    text-indent: -4%
  }
  .activity header {
    margin-bottom: -16.5rem
  }
  .activity .hero__sub__img img {
    margin-top: -12px!important
  }
  .activity .bg-img-koshiki {
    background-position: 93% 100%
  }
  .activity .deco-circle {
    height: 90px;
    width: 90px;
    top: -1rem;
    font-size: 155%
  }
  .activity .deco-circle:first-child {
    left: -1em
  }
  .activity .deco-circle:nth-of-type(2) {
    left: 3.1em
  }
  .deco-canoe::after {
    width: 49px;
    height: 49px;
    margin-top: -1rem;
    right: -8px
  }
  .deco-sea-glass,
  .deco-txt-neko {
    margin-bottom: 6rem
  }
  .deco-txt-neko::after {
    width: 386px;
    height: 185px;
    bottom: -18rem;
    right: -5rem
  }
  .deco-sea-glass::after {
    bottom: -6rem;
    right: -3rem;
    width: 260px;
    height: 134px
  }
  .work-shop__ttl {
    width: 64%;
    margin-left: auto
  }
  .work-shop__txt {
    padding: 0 1em
  }
}
.other-activity {
  padding-bottom: 7rem
}
.other-activity__item {
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex
}
.other-activity__info {
  background: #d8e8eb;
  padding: 1.5rem 4%;
  margin-top: auto
}
.other-activity__link {
  color: #000;
  text-decoration: none
}
.other-activity__ttl {
  margin-bottom: .5rem
}
@media screen and (max-width:575px) {
  .menu-list__example__inner .list__img {
    width: 105px
  }
  .menu-list__example-oshinagaki__inner,
  .work-shop__item-block {
    display: grid
  }
  .menu-list__example-oshinagaki .card__body {
    display: contents
  }
  .menu-list__example-oshinagaki .card__body__inner {
    -webkit-box-ordinal-group: 4;
    -ms-flex-order: 3;
    order: 3
  }
  .menu-list__example-oshinagaki .card__ttl {
    -webkit-box-ordinal-group: 2;
    -ms-flex-order: 1;
    order: 1;
    text-align: center
  }
  .menu-list__example-oshinagaki .card__imgs {
    -webkit-box-ordinal-group: 3;
    -ms-flex-order: 2;
    order: 2;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between
  }
  .menu-list__example-oshinagaki .card__img {
    width: calc(50% - 5px)
  }
  .menu-list__example-oshinagaki small {
    font-size: 100%
  }
  .restaurant .nami-hude::after {
    width: calc(489px * .6);
    height: calc(285px * .6);
    bottom: -3rem;
    top: auto
  }
  .restaurant .pig::after {
    width: calc(231px * .8);
    height: calc(137px * .8);
    bottom: -7rem;
    left: -5rem;
    z-index: -1
  }
  .restaurant .map-kagoshima::after {
    width: calc(315px * .8);
    height: calc(285px * .8);
    bottom: -4rem;
    right: -5rem
  }
  .restaurant .deco-circle {
    height: 82px;
    width: 82px;
    font-size: 110%;
    margin-bottom: -2rem;
    right: 10px
  }
  .restaurant .deco-circle:first-child {
    margin-bottom: -5%
  }
  .restaurant .deco-circle:nth-of-type(2) {
    margin-right: 82px;
    margin-bottom: -5%;
    font-size: 140%
  }
  .restaurant .deco-circle.advance-booking {
    top: -1rem
  }
  .kids-menu .content__ttl {
    margin-bottom: 4rem
  }
  .drink-menu .content__ttl__sub {
    margin-bottom: -9rem
  }
  .speech-bubble::after {
    width: 45px;
    height: 30px;
    right: -13px
  }
  .faqNav__list {
    max-width: 480px;
    font-size: 1rem
  }
  .faq-list__list__block > div {
    padding: 19px 4% 19px 9%;
    text-indent: -7%
  }
  .activity .hero__sub__img {
    height: auto;
    margin-top: 8rem
  }
  .activity .hero__sub__img img {
    width: auto;
    height: auto
  }
  .activity .work-shop__top-deco {
    margin-top: 3rem;
    margin-bottom: -5rem
  }
  .activity .other-activity__top-deco {
    padding-top: 12rem;
    margin-bottom: -5rem
  }
  .activity .spot__top-deco {
    margin-bottom: -5rem
  }
  .activity .bg-img-koshiki {
    background-position: -18% 109%;
    background-size: 500px auto
  }
  .activity .deco-circle {
    height: 90px;
    width: 90px;
    top: -4rem;
    left: -20px
  }
  .activity .deco-circle:first-child {
    left: -.9em
  }
  .activity .deco-circle:nth-of-type(2) {
    left: 2.9em
  }
  .deco-canoe::after {
    width: 34px;
    height: 34px;
    right: -5px
  }
  .deco-txt-neko {
    margin-bottom: 10.5em
  }
  .deco-txt-neko::after {
    bottom: -16.6rem;
    right: -2rem;
    width: 371px;
    height: 196px
  }
  .deco-sea-glass {
    margin-bottom: 10rem
  }
  .deco-sea-glass::after {
    bottom: -10rem;
    right: 5rem;
    width: 300px;
    height: 160px
  }
  .activity .color-box-kadomaru {
    padding: 2rem 7%
  }
  .work-shop__content {
    margin-bottom: 13rem
  }
  .work-shop__ttl {
    margin-left: 7%;
    margin-bottom: 6.5rem
  }
  .work-shop__item-block > :first-child {
    -webkit-box-ordinal-group: 2;
    -ms-flex-order: 1;
    order: 1;
    margin-bottom: 2rem
  }
  .work-shop__item-block > :nth-child(2) {
    -webkit-box-ordinal-group: 3;
    -ms-flex-order: 2;
    order: 2
  }
  .work-shop__item-block > :nth-child(2) > div {
    margin-right: -4em;
    margin-left: 5em
  }
  .work-shop__item-block > :nth-child(3) {
    -webkit-box-ordinal-group: 5;
    -ms-flex-order: 4;
    order: 4
  }
  .work-shop__item-block > :nth-child(4) {
    -webkit-box-ordinal-group: 4;
    -ms-flex-order: 3;
    order: 3
  }
  .koshiki-tours .work-shop__item-block>:nth-child(2)>div,
  .shiodukuri .work-shop__item-block>:nth-child(2)>div {
    margin-right: -1.7em
  }
  .shiodukuri .work-shop__item-block > :nth-child(3) > div {
    margin-left: -4em;
    margin-right: 3em
  }
}