@charset "UTF-8";
.z-30,
.z-50 {
  position: relative
}
.header__nav__block-main,
.header__nav__block-sub2,
.rsvBox__select-wrap::after {
  pointer-events: none;
  pointer-events: none
}
.car-rental__btn,
.index__plan__card,
.index__plan__cta__btn,
.info-box__link,
.kaisen-btn,
.rsvBox__links a {
  text-decoration: none
}
.rsvBox__head .rsvBox__con {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: stretch;
  -ms-flex-align: stretch;
  align-items: stretch;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between
}
.index__plan .slick-slide,
.index__plan .slick-track {
  display: -webkit-box!important;
  display: -ms-flexbox!important
}
.rsvBox__head__tabs {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
  -ms-flex-align: end;
  align-items: flex-end
}
.rsvBox__input:focus,
.rsvBox__select:focus {
  -webkit-box-shadow: 0 0 0 3px rgba(200,168,130,.18);
  box-shadow: 0 0 0 3px rgba(200,168,130,.18)
}
@media (max-width:700px) {
  .rsvBox__head__left {
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    gap: 6px 10px
  }
  .rsvBox__head__divider {
    display: none
  }
  .rsvBox__head__brand {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto
  }
  .rsvBox__head__copy {
    -webkit-box-flex: 1;
    -ms-flex: 1 1 auto;
    flex: 1 1 auto
  }
  .rsvBox__best-rate {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-flex: 0;
    -ms-flex: 0 0 100%;
    flex: 0 0 100%;
    gap: 8px;
    padding: 6px 0
  }
  .rsvBox__best-rate__label,
  .rsvBox__best-rate__txt {
    font-size: 11px
  }
}
.index__plan .slider-card__item,
.index__plan__card {
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal
}
body:not(.is-index) .rsvBox-section {
  display: none!important
}
.index__plan__item__name {
  font-size: 14px;
  letter-spacing: .04em;
  padding: 10px 8px;
  line-height: 1.5
}
.index__plan__bg {
  padding: 2rem 0 2.5rem
}
.index__plan__inner {
  padding: 0 4px
}
.index__plan .slick-track {
  display: flex!important
}
.index__plan .slick-slide {
  display: flex!important;
  height: auto!important;
  border: none!important;
  outline: 0!important
}
.index__plan .slick-slide > div {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 100%
}
.index__plan .slider-card__item {
  padding: 0 8px;
  display: -webkit-box!important;
  display: -ms-flexbox!important;
  display: flex!important;
  -ms-flex-direction: column;
  flex-direction: column;
  height: auto!important
}
.index__plan__card {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-flex: 1;
  -ms-flex: 1;
  flex: 1;
  color: inherit;
  background: #fff;
  border-radius: 4px;
  overflow: hidden;
  -webkit-box-shadow: 0 2px 12px rgba(0,0,0,.1);
  box-shadow: 0 2px 12px rgba(0,0,0,.1);
  -webkit-transition: -webkit-transform .2s,-webkit-box-shadow .2s;
  transition: transform .2s,box-shadow .2s,-webkit-transform .2s,-webkit-box-shadow .2s
}
.index__plan__card:hover {
  -webkit-transform: translateY(-5px);
  transform: translateY(-5px);
  -webkit-box-shadow: 0 12px 32px rgba(0,0,0,.18);
  box-shadow: 0 12px 32px rgba(0,0,0,.18)
}
.index__plan__card__img {
  -ms-flex-negative: 0;
  flex-shrink: 0;
  overflow: hidden;
  height: 200px
}
.index__plan__card__img img {
  width: 100%;
  height: 100%;
  display: block;
  -o-object-fit: cover;
  object-fit: cover;
  -o-object-position: center;
  object-position: center;
  -webkit-transition: -webkit-transform .3s;
  transition: transform .3s;
  transition: transform .3s,-webkit-transform .3s
}
.index__plan__card:hover .index__plan__card__img img {
  -webkit-transform: scale(1.04);
  transform: scale(1.04)
}
.index__plan .bl__paragraph {
  -webkit-box-flex: 1;
  -ms-flex: 1;
  flex: 1;
  font-size: 13px;
  line-height: 1.8;
  color: #333;
  padding: 10px 12px 0;
  margin: 0
}
.index__plan__btn {
  display: block;
  -ms-flex-negative: 0;
  flex-shrink: 0;
  margin: 14px 14px 16px;
  padding: 12px 0;
  text-align: center;
  font-size: 15px;
  font-weight: 700;
  letter-spacing: .08em;
  color: #3397d1;
  border: 1.5px solid #bbdff3;
  border-radius: 3px;
  background: 0 0;
  -webkit-transition: background .18s,color .18s;
  transition: background .18s,color .18s
}
.index__plan__card:hover .index__plan__btn {
  background: #93c6e4;
  color: #fff
}
.index__plan__cta {
  text-align: center;
  padding: 16px 0 36px
}
.index__plan__cta__btn {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  gap: 10px;
  padding: 16px 56px;
  background: #3397d1;
  color: #fff;
  font-size: 15px;
  font-weight: 700;
  letter-spacing: .1em;
  border-radius: 3px;
  min-width: 280px;
  -webkit-transition: background .2s,-webkit-transform .1s;
  transition: background .2s,transform .1s,-webkit-transform .1s
}
.rsvBox__head__sub,
.rsvBox__head__title {
  letter-spacing: .06em;
  white-space: nowrap
}
.index__plan__cta__btn i {
  font-size: 16px
}
.index__plan__cta__btn:hover {
  background: #93c6e4;
  -webkit-transform: translateY(-2px);
  transform: translateY(-2px)
}
@media screen and (max-width:575px) {
  .rsvBox__head .rsvBox__con,
  .rsvBox__head__left {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal
  }
  .rsvBox__head .rsvBox__con {
    -ms-flex-direction: column;
    flex-direction: column;
    padding: 0
  }
  .rsvBox__head__left {
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
    padding: 12px 16px 8px;
    width: 100%;
    gap: 6px
  }
  .rsvBox__head__divider {
    display: none
  }
  .rsvBox__head__logo {
    height: 26px
  }
  .rsvBox__head__title {
    font-size: 15px
  }
  .rsvBox__head__sub {
    font-size: 11px
  }
  .rsvBox__best-rate__label,
  .rsvBox__best-rate__txt {
    font-size: 10px
  }
  .rsvBox__head__tabs {
    width: 100%;
    border-top: 1px solid rgba(200,168,130,.2)
  }
  .rsvBox__tab__btn {
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    padding: 12px 8px;
    font-size: 13px;
    height: auto;
    gap: 6px
  }
  .rsvBox__tab__btn i {
    font-size: 13px
  }
  .rsvBox__panel .rsvBox__con {
    padding: 14px 14px 12px
  }
  .rsvBox__fields {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 10px 8px
  }
  .rsvBox__field--date {
    grid-column: 1/-1
  }
  .rsvBox__field--btn {
    grid-column: 1/-1;
    width: 100%
  }
  .rsvBox__field,
  .rsvBox__field--md,
  .rsvBox__field--sm {
    -webkit-box-flex: 0;
    -ms-flex: none;
    flex: none;
    min-width: 0
  }
  .rsvBox__label {
    font-size: 12px;
    margin-bottom: 4px
  }
  .rsvBox__input,
  .rsvBox__select {
    height: 44px;
    font-size: 16px;
    padding: 0 10px
  }
  .rsvBox__input::-webkit-input-placeholder {
    font-size: 14px
  }
  .rsvBox__input::-moz-placeholder {
    font-size: 14px
  }
  .rsvBox__input:-ms-input-placeholder {
    font-size: 14px
  }
  .rsvBox__input::-ms-input-placeholder {
    font-size: 14px
  }
  .rsvBox__input::placeholder {
    font-size: 14px
  }
  .rsvBox__submit {
    width: 100%;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    height: 50px;
    font-size: 16px;
    letter-spacing: .1em;
    gap: 10px
  }
  .rsvBox__submit i {
    font-size: 16px
  }
  .rsvBox__links {
    overflow-x: auto
  }
  .rsvBox__links .rsvBox__con {
    padding: 8px 14px 12px;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap
  }
  .rsvBox__links a {
    font-size: 11px;
    white-space: nowrap;
    padding: 3px 14px 3px 0
  }
  .index__plan__bg {
    padding: 1.5rem 0 2rem;
    background: -webkit-gradient(linear,left top,left bottom,from(#aaa),to(#c8c8c8));
    background: linear-gradient(to bottom,#aaa,#c8c8c8)
  }
  .index__plan__cta {
    padding: 12px 16px 32px
  }
  .index__plan__cta__btn {
    width: 100%;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    padding: 16px 24px;
    min-width: 0
  }
}
.index__plan__bg--sp > .ly__con-transparent:first-child .ttl-con {
  padding-bottom: 1rem
}
.shimokoshiki-font-color {
  color: #4d4d4d
}
.deco-circle,
.footer,
.shimokoshiki-bg {
  background: #3397d1
}
.shimokoshiki-bg-pale {
  background: #5dacda
}
.z-50 {
  z-index: 50
}
.z-30 {
  z-index: 30
}
.header__nav__block-main,
.z-10 {
  z-index: 10;
  position: relative
}
.rsvBox-section {
  padding: 0;
  width: 100%
}
.faqNav__item,
.rsvBox-section__inner {
  width: 100%
}
.rsvBox__con {
  max-width: 950px;
  margin: 0 auto;
  padding: 0 24px
}
.rsvBox__head {
  background: linear-gradient(135deg,#3e3028 0,#5e4a3a 100%);
  display: block;
  width: 100%
}
.rsvBox__head::after,
.rsvBox__head::before {
  display: none!important
}
.rsvBox__head .rsvBox__con,
.rsvBox__head__left,
.rsvBox__head__tabs {
  display: -webkit-box;
  display: -ms-flexbox
}
.rsvBox__head .rsvBox__con {
  display: flex;
  -webkit-box-align: stretch;
  -ms-flex-align: stretch;
  align-items: stretch;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  gap: 0;
  padding-top: 0;
  padding-bottom: 0
}
.rsvBox__head__left {
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -ms-flex-direction: row;
  flex-direction: row;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  padding: 15px 0;
  gap: 14px
}
.ng .ly__wrapper,
.rsvBox__field,
.rsvBox__head__copy,
.thanks .ly__wrapper {
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal
}
.rsvBox__head__tabs {
  display: flex;
  -webkit-box-align: end;
  -ms-flex-align: end;
  align-items: flex-end;
  gap: 0
}
.rsvBox__head__brand {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  gap: 14px
}
.rsvBox__head__logo {
  display: block;
  height: 50px;
  width: auto;
  opacity: .92
}
.rsvBox__head__divider {
  width: 1px;
  height: 28px;
  background: rgba(200,168,130,.4)
}
.rsvBox__head__copy {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
  flex-direction: column;
  gap: 1px
}
.rsvBox__head__title {
  font-size: 20px;
  font-weight: 700;
  color: #fff
}
.rsvBox__head__sub {
  font-size: 13px;
  color: rgba(220,200,175,.65)
}
.rsvBox__best-rate {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  gap: 7px;
  white-space: nowrap
}
.rsvBox__best-rate__label {
  font-size: 12px;
  font-weight: 800;
  color: #c8a882;
  letter-spacing: .12em;
  background: rgba(200,168,130,.18);
  border: 1px solid rgba(200,168,130,.4);
  border-radius: 2px;
  padding: 2px 7px
}
.rsvBox__best-rate__txt {
  font-size: 12px;
  color: #fff;
  letter-spacing: .03em;
  white-space: nowrap
}
.rsvBox__label,
.rsvBox__tab__btn {
  -webkit-box-align: center;
  font-size: 13px;
  white-space: nowrap
}
.br-sp,
.rsvBox__tab {
  display: none
}
.rsvBox__fields,
.rsvBox__tab__btn {
  display: -webkit-box;
  display: -ms-flexbox
}
.rsvBox__tab__btn {
  padding: 12px 22px 10px;
  border: none;
  border-top: 3px solid transparent;
  border-bottom: 3px solid transparent;
  background: rgba(255,255,255,.06);
  cursor: pointer;
  font-weight: 500;
  color: rgba(220,200,175,.6);
  letter-spacing: .05em;
  display: flex;
  -ms-flex-align: center;
  align-items: center;
  gap: 8px;
  font-family: inherit;
  -webkit-transition: color .18s,border-color .18s,background .18s;
  transition: color .18s,border-color .18s,background .18s;
  height: 100%
}
.rsvBox__input,
.rsvBox__select,
.rsvBox__submit {
  height: 42px;
  font-family: inherit;
  cursor: pointer
}
.rsvBox__tab__btn i {
  font-size: 14px
}
.rsvBox__tab__btn.is-active {
  color: #fff;
  border-bottom-color: #c8a882;
  font-weight: 700;
  background: rgba(255,255,255,.1)
}
.rsvBox__tab__btn:hover:not(.is-active) {
  color: rgba(220,200,175,.9);
  background: rgba(255,255,255,.09)
}
.rsvBox__panel {
  display: none;
  width: 100%
}
.rsvBox__panel::after,
.rsvBox__panel::before {
  display: none!important
}
.rsvBox__panel.is-active {
  display: block;
  background: #fdfaf7
}
.rsvBox__panel .rsvBox__con {
  padding-top: 20px;
  padding-bottom: 16px
}
.rsvBox__fields {
  display: flex;
  -webkit-box-align: end;
  -ms-flex-align: end;
  align-items: flex-end;
  gap: 10px;
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap
}
.rsvBox__field,
.rsvBox__label {
  display: -webkit-box;
  display: -ms-flexbox
}
.rsvBox__field {
  display: flex;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-flex: 1;
  -ms-flex: 1 1 0px;
  flex: 1 1 0;
  min-width: 0
}
.rsvBox__field--date {
  -webkit-box-flex: 1.8;
  -ms-flex: 1.8 1 0px;
  flex: 1.8 1 0
}
.rsvBox__field--sm {
  -webkit-box-flex: .85;
  -ms-flex: .85 1 0px;
  flex: .85 1 0
}
.rsvBox__field--md {
  -webkit-box-flex: 1.2;
  -ms-flex: 1.2 1 0px;
  flex: 1.2 1 0
}
.rsvBox__field--btn {
  -webkit-box-flex: 0;
  -ms-flex: 0 0 auto;
  flex: 0 0 auto
}
.rsvBox__label {
  color: #6b5a4a;
  font-weight: 700;
  letter-spacing: .05em;
  margin-bottom: 5px;
  display: flex;
  -ms-flex-align: center;
  align-items: center;
  gap: 5px
}
.rsvBox__label i {
  color: #c8a882;
  font-size: 12px
}
.rsvBox__label--hidden {
  visibility: hidden
}
.rsvBox__input,
.rsvBox__select {
  width: 100%;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  padding: 0 12px;
  border: 1.5px solid #ddd5cc;
  border-radius: 4px;
  font-size: 14px;
  color: #2e2826;
  background: #fff;
  -moz-appearance: none;
  appearance: none;
  -webkit-appearance: none;
  -webkit-transition: border-color .18s,-webkit-box-shadow .18s;
  transition: border-color .18s,box-shadow .18s,-webkit-box-shadow .18s;
  outline: 0
}
.rsvBox__input:focus,
.rsvBox__select:focus {
  border-color: #c8a882;
  -webkit-box-shadow: 0 0 0 3px rgba(200,168,130,.18);
  box-shadow: 0 0 0 3px rgba(200,168,130,.18);
  background: #fff
}
.rsvBox__input::-webkit-input-placeholder {
  color: #b8a898;
  font-size: 13px
}
.rsvBox__input::-moz-placeholder {
  color: #b8a898;
  font-size: 13px
}
.rsvBox__input:-ms-input-placeholder {
  color: #b8a898;
  font-size: 13px
}
.rsvBox__input::-ms-input-placeholder {
  color: #b8a898;
  font-size: 13px
}
.rsvBox__input::placeholder {
  color: #b8a898;
  font-size: 13px
}
.deco-kame,
.deco-udon,
.rsvBox__select-wrap,
.speech-bubble {
  position: relative
}
.rsvBox__select-wrap::after {
  content: "▾";
  content: "\f078";
  font-family: "Font Awesome 6 Free";
  font-weight: 900;
  font-size: 9px;
  color: #c8a882;
  position: absolute;
  right: 10px;
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%)
}
.header__nav__block-main a,
.header__nav__block-sub2 .header__nav__social__item.header__nav__social__insta,
.header__nav__block-sub2 .header__nav__social__item.header__nav__social__insta a,
.header__nav__social__item.header__nav__social__rsv {
  pointer-events: auto
}
.rsvBox__submit {
  padding: 0 22px;
  background: #3e3028;
  color: #fff;
  border: none;
  border-radius: 4px;
  font-size: 14px;
  font-weight: 700;
  letter-spacing: .08em;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  gap: 8px;
  -webkit-transition: background .2s,-webkit-transform .1s;
  transition: background .2s,transform .1s,-webkit-transform .1s;
  white-space: nowrap
}
.rsvBox__submit:hover {
  background: #5e4a3a;
  -webkit-transform: translateY(-1px);
  transform: translateY(-1px)
}
.rsvBox__submit:active {
  -webkit-transform: translateY(0);
  transform: translateY(0)
}
.rsvBox__links {
  display: block;
  width: 100%;
  background: #ede6de
}
.rsvBox__links .rsvBox__con {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  gap: 0;
  padding-top: 8px;
  padding-bottom: 12px
}
.rsvBox__links a {
  font-size: 12px;
  color: #7a6a5a;
  padding: 2px 14px 2px 0;
  -webkit-transition: color .15s;
  transition: color .15s
}
.rsvBox__links a::before {
  content: "›";
  margin-right: 4px;
  color: #c8a882;
  font-size: 14px
}
.rsvBox__links a:hover {
  color: #3e3028
}
@media (max-width:830px) {
  .rsvBox__head__left {
    gap: 10px
  }
  .rsvBox__head__logo {
    height: 40px
  }
  .rsvBox__head__title {
    font-size: 15px
  }
  .rsvBox__best-rate__label,
  .rsvBox__head__sub {
    font-size: 11px
  }
  .rsvBox__head__divider {
    height: 22px
  }
  .rsvBox__best-rate {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
    gap: 2px
  }
  .rsvBox__best-rate__txt {
    font-size: 10px
  }
  .rsvBox__tab__btn {
    padding: 11px 14px 9px;
    font-size: 12px;
    gap: 6px
  }
}
@media (max-width:700px) {
  .rsvBox__head__left {
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    gap: 6px 10px
  }
  .rsvBox__head__divider {
    display: none
  }
  .rsvBox__head__brand {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto
  }
  .rsvBox__head__copy {
    -webkit-box-flex: 1;
    -ms-flex: 1 1 auto;
    flex: 1 1 auto
  }
  .rsvBox__best-rate {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-flex: 0;
    -ms-flex: 0 0 100%;
    flex: 0 0 100%;
    gap: 8px;
    padding-top: 6px;
    padding-bottom: 6px
  }
  .rsvBox__best-rate__label,
  .rsvBox__best-rate__txt {
    font-size: 11px
  }
}
.index .index__plan__bg--sp {
  padding-top: 0!important
}
.index .index__plan__bg--sp > .ly__con-transparent:first-child {
  padding-top: 2rem
}
.header__nav__block-main {
  max-width: 1024px;
  background: 0 0
}
.header__nav__social__item.header__nav__social__rsv a {
  background: #fff!important;
  opacity: 1!important;
  pointer-events: auto
}
.header__nav__social__item.header__nav__social__rsv a span {
  color: #3397d1!important
}
.footer__rsv {
  background: #fff7d3;
  color: #074f7b
}
.contact .ttl-con,
.footer__rsv__btn {
  background: #fff
}
.deco-bike::after,
.deco-kame::after,
.deco-udon::after {
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain
}
.footer__insta {
  background: #e0ae73
}
.footer__info__link__item {
  border-right: 1px solid #fff
}
.hero__sub {
  display: block;
  margin-bottom: 0;
  padding-bottom: 0;
  font-size: 0
}
.header__index__logo .text-center {
  font-size: 24px;
  line-height: .5;
  letter-spacing: .12em
}
.header__index__logo .text-center small {
  display: block;
  font-size: 16px;
  letter-spacing: .2em;
  opacity: .85
}
@media (max-width:1024px) and (min-width:592px) {
  .header__index__logo .text-center {
    font-size: 20px
  }
  .header__index__logo .text-center small {
    font-size: 14px
  }
}
@media (max-width:591px) {
  .header__index__logo .text-center {
    font-size: 20px;
    letter-spacing: .08em
  }
  .header__index__logo .text-center small {
    font-size: 12px
  }
}
.bl__campaignBox__ttl {
  background: #7493ab
}
.bl__campaignBox__inner {
  margin-top: -40px
}
.bl__campaignBox.all-clr-red {
  color: #f71818
}
.bl__campaignBox.all-clr-red > * {
  border-color: #f71818;
  color: #f71818
}
.directions-card hr {
  border: 3px solid #dfdfdf
}
.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;
  position: relative
}
.deco-kame::after {
  position: absolute;
  display: block;
  content: "";
  z-index: -1;
  width: 190px;
  height: 180px;
  background-image: url(/img/shimokoshiki/index/kame.webp);
  top: -13rem;
  right: 0
}
.special-top__img img {
  -webkit-box-shadow: -10px 10px 0 0 #c2d3f0;
  box-shadow: -10px 10px 0 0 #c2d3f0
}
.index__plan__item__name {
  color: #fff;
  background: #3397d1!important
}
.index__plan__bg {
  background: #fff9de
}
.mv-picture {
  display: block;
  width: 100%;
  overflow: hidden
}
.mv-img {
  display: block;
  width: 100%;
  height: 300px;
  -o-object-fit: cover;
  object-fit: cover;
  -o-object-position: center center;
  object-position: center center
}
.info-box__link,
.kaisen-reserve__btns {
  display: -webkit-box;
  display: -ms-flexbox
}
.info-box {
  background: #e6f2f8;
  padding: 24px;
  border-radius: 8px
}
.info-box__title {
  text-align: center;
  font-weight: 700;
  margin-bottom: 16px
}
.info-box__list {
  margin: 0 0 20px;
  padding-left: 20px
}
.info-box__list li {
  margin-bottom: 8px;
  line-height: 1.6
}
.info-box__link {
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  gap: 12px;
  padding: 14px 16px;
  border: 1px solid #333;
  color: #333;
  background: 0 0
}
.info-box__icon {
  width: 24px;
  height: auto
}
.info-box + .info-box {
  margin-top: 24px
}
.info-box__link + .info-box__link {
  margin-top: 16px
}
.car-rental-banner {
  margin-top: 60px;
  padding: 0 16px;
  text-align: center
}
.car-rental-banner a {
  display: block;
  max-width: 1024px;
  margin: 0 auto
}
.car-rental-banner img,
.kanokoyuri-header img,
.mv img {
  width: 100%;
  height: auto;
  display: block
}
.room-cards__ttl__border {
  border-bottom: 8px solid #3397d1
}
.room-cards__items .card__border {
  border: 3px solid #d8c882
}
.room-cards__ttl {
  color: #3397d1
}
.room__amenity__list .def-list div:first-child {
  background: #d9ebf5
}
.deco-human::after {
  background-image: url(/img/shimokoshiki/room/human-one.webp)!important
}
.hotel-parking__rental-bike {
  max-width: 725px;
  margin: auto
}
.hotel-parking__rental-bike__ttl {
  font-weight: 400
}
.deco-bike::after {
  display: block;
  content: "　";
  z-index: 1;
  width: 50.87px;
  height: 31.05px;
  background-image: url(/img/shimokoshiki/access/bike.png?0);
  left: -50px
}
.ttl-sub__dotted {
  padding-bottom: 1em;
  font-weight: 400;
  line-height: 1.5;
  border-top: none;
  border-bottom: 1px dotted #4d4136
}
.about-shimokoshiki-udon {
  padding: 1rem 12%;
  background: #f0f9ff;
  margin-top: 3rem
}
@media screen and (min-width:576px) {
  .header a span:last-child {
    letter-spacing: .5px;
    font-size: .9em
  }
  .deco-bike {
    position: relative;
    margin-right: 1rem
  }
  .deco-bike::after {
    position: absolute
  }
  .deco-udon {
    margin-left: 6rem
  }
}
.deco-udon::after {
  position: absolute;
  display: block;
  content: "";
  z-index: 1;
  width: 49px;
  height: 39px;
  background-image: url(/img/shimokoshiki/restaurant/udon-sp.png?0);
  top: 0;
  left: -6rem
}
.breakfast-time__item .def-list > div:first-child {
  background-color: #fef4e0
}
.deco-txt__left--dinner::before,
.deco-txt__left::before {
  color: #3397d1!important;
  -webkit-text-fill-color: #3397d1!important
}
.line-left {
  border-left: 3px solid #3397d1!important
}
.dinner-time__item .def-list > div:first-child {
  background-color: #d9ebf5
}
.deco__item__icon-gohan {
  display: inline-block;
  width: 44px;
  height: 43px;
  margin-right: .75rem;
  vertical-align: middle;
  background: url(/img/shimokoshiki/restaurant/gohan.png) center/contain no-repeat
}
.kaisen {
  font-family: inherit;
  -webkit-box-sizing: border-box;
  box-sizing: border-box
}
.kaisen-desc,
.kaisen-lead {
  -webkit-box-sizing: border-box
}
.kaisen-lead {
  text-align: center;
  margin-top: 4rem;
  margin-bottom: 3rem;
  box-sizing: border-box
}
.kaisen-lead__sub {
  font-size: 20px;
  color: #3e3e3e;
  letter-spacing: .04em;
  margin-bottom: 1.2rem
}
.kaisen-lead__ttl {
  font-family: inherit;
  font-size: 4.6rem;
  font-weight: 600;
  letter-spacing: .06em;
  line-height: .4
}
.kaisen-lead__line {
  display: block;
  width: 100%;
  height: 10px;
  margin: -1.6rem auto 0;
  border: 0
}
.kaisen-lead__line--pink {
  background: #fad7cc
}
.kaisen-lead__line--blue {
  background: #d9ebf5
}
.kaisen-hero {
  width: 100%;
  max-width: 1080px;
  margin: 0 auto 3.6rem
}
.kaisen-hero img,
.kaisen-menu__grid img {
  display: block;
  width: 100%;
  height: auto
}
.kaisen-desc {
  max-width: 760px;
  margin: 0 auto 4rem;
  text-align: left;
  font-size: 1.55rem;
  line-height: 2.1;
  color: #55524e;
  box-sizing: border-box
}
.center-section,
.kaisen-btn,
.kaisen-menu__banner,
.kaisen-menu__note,
.kaisen-option__item {
  text-align: center
}
.kaisen-btn,
.kaisen-reserve {
  -webkit-box-sizing: border-box
}
.kaisen-reserve {
  max-width: 1080px;
  margin: 0 auto;
  padding: 3.4rem 3rem;
  border-radius: 4px;
  box-sizing: border-box
}
.kaisen-reserve--seafood {
  background: #ffece6
}
.kaisen-reserve--teishoku {
  background: #f0f8fc
}
.kaisen-reserve__head {
  text-align: center;
  font-size: 1.7rem;
  letter-spacing: .04em;
  padding-bottom: 2rem;
  margin-bottom: 2.4rem;
  border-bottom: 1px solid rgba(60,58,55,.18)
}
.kaisen-reserve__btns {
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  gap: 1.8rem
}
.kaisen-btn {
  font-family: inherit;
  box-sizing: border-box;
  -webkit-box-flex: 1;
  -ms-flex: 1 1 0px;
  flex: 1 1 0;
  min-width: 240px;
  max-width: 380px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  padding: 2rem 1.8rem;
  border-radius: 3px;
  color: #fff;
  font-size: 1.6rem;
  letter-spacing: .04em;
  line-height: 1.45;
  white-space: nowrap;
  -webkit-transition: background-color .2s,-webkit-transform .15s;
  transition: background-color .2s,transform .15s,-webkit-transform .15s
}
.kaisen-btn:hover {
  -webkit-transform: translateY(-2px);
  transform: translateY(-2px)
}
.kaisen-btn--orange {
  background: #ed9741
}
.kaisen-btn--orange:hover {
  background: #de8731
}
.kaisen-btn--brick {
  background: #c45839
}
.kaisen-btn--brick:hover {
  background: #ac492c
}
.kaisen-menu {
  margin-top: 6rem
}
.kaisen-menu__banner {
  max-width: 520px;
  margin: 6rem auto 3rem;
  padding: 1.4rem 2.4rem;
  font-size: 1.8rem;
  letter-spacing: .12em;
  color: #42566a;
  background: #d9ebf5;
  border-radius: 999px
}
.kaisen-menu__note {
  margin-top: 2.6rem;
  font-size: 1.25rem;
  color: #9a9792
}
.kaisen-option {
  margin: 40px auto 55px
}
.kaisen-option__ttl {
  margin: 0 0 18px;
  padding: 10px 18px;
  font-size: 2rem;
  font-weight: 500;
  letter-spacing: .08em;
  line-height: 1.5;
  color: #4a3a2d;
  background: -webkit-gradient(linear,left top,right top,from(#e9bd58),to(#fff));
  background: linear-gradient(90deg,#e9bd58 0,#fff 100%)
}
.kaisen-option__grid {
  display: grid;
  grid-template-columns: repeat(4,1fr);
  gap: 12px
}
.kaisen-option__item img {
  display: block;
  width: 100%;
  aspect-ratio: 4/2.5;
  -o-object-fit: cover;
  object-fit: cover
}
.kaisen-option__item p {
  margin: 10px 0 0;
  font-size: 1.4rem;
  line-height: 1.7;
  letter-spacing: .05em;
  color: #3f332b
}
@media screen and (max-width:767px) {
  .kaisen-option {
    margin: 32px auto 45px
  }
  .kaisen-option__ttl {
    padding: 9px 12px;
    font-size: 1.6rem
  }
  .kaisen-option__grid {
    grid-template-columns: repeat(2,1fr);
    gap: 16px 10px
  }
  .kaisen-option__item p {
    font-size: 1.25rem
  }
}
.faq-category__ttl,
.faq-list__list__block > div {
  padding: 19px 6%;
  letter-spacing: .2rem;
  text-indent: -2.5%
}
.ng .ly__wrapper,
.thanks .ly__wrapper {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
  flex-direction: column;
  min-height: 100vh
}
.ng .footer,
.thanks .footer {
  margin-top: auto
}
.hero__sub__ttl {
  font-size: 2.4rem;
  top: 60%
}
.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
}
@media screen and (min-width:1025px) {
  .header__nav__block-main {
    margin-left: calc((100% - 1024px)/ 2);
    font-size: .95em
  }
  .header__nav__list__item a,
  .header__nav__list__item.tab-pc a {
    padding: 9px
  }
  .access header,
  .contact header,
  .faq header,
  .index header,
  .ng header,
  .restaurant header,
  .service header,
  .smk-car-rental header,
  .spa header,
  .thanks header {
    margin-bottom: -14rem
  }
  .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,
  .smk-car-rental .hero__sub__img img,
  .spa .hero__sub__img img,
  .thanks .hero__sub__img img {
    height: 150px!important
  }
  .room header {
    margin-bottom: -14.5rem
  }
  .speech-bubble::after {
    margin-top: .5rem
  }
}
.faq-category__ttl {
  font-weight: 400;
  background: #bee5fc;
  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
}
@media screen and (max-width:1024px) {
  .about-shimokoshiki-udon {
    margin-top: 5rem
  }
  .kaisen {
    padding-left: 5%;
    padding-right: 5%
  }
  .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
  }
}
.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 {
  line-height: 1.8
}
@media screen and (min-width:576px) and (max-width:1024px) {
  .header__nav__block-main {
    width: 80%
  }
  .access header,
  .contact header,
  .faq header,
  .header-car-rental-page header,
  .index header,
  .ng header,
  .restaurant header,
  .room header,
  .service header,
  .smk-car-rental header,
  .spa header,
  .thanks header {
    margin-bottom: -22rem
  }
  .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,
  .smk-car-rental .hero__sub__img img,
  .spa .hero__sub__img img,
  .thanks .hero__sub__img img {
    height: 24rem!important
  }
  .room .hero__sub__img img {
    margin-top: -12px!important
  }
  .hero__sub__index-movie {
    margin-top: -.8rem
  }
  .deco-bike::after {
    width: 47.87px;
    height: 28.05px;
    top: -2px
  }
  .hero__sub__ttl {
    top: 78%
  }
  .faq-list__list__block > div {
    padding: 19px 10% 19px 6%;
    text-indent: -4%
  }
}
@media screen and (max-width:575px) {
  .rsvBox__head .rsvBox__con,
  .rsvBox__head__left {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal
  }
  .rsvBox__head .rsvBox__con {
    -ms-flex-direction: column;
    flex-direction: column;
    padding: 0
  }
  .rsvBox__head__left {
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
    padding: 12px 16px 8px;
    width: 100%;
    gap: 6px
  }
  .rsvBox__head__divider {
    display: none
  }
  .rsvBox__head__logo {
    height: 26px
  }
  .rsvBox__head__title {
    font-size: 15px
  }
  .rsvBox__head__sub {
    font-size: 11px
  }
  .rsvBox__best-rate__label,
  .rsvBox__best-rate__txt {
    font-size: 10px
  }
  .rsvBox__head__tabs {
    width: 100%;
    border-top: 1px solid rgba(200,168,130,.2)
  }
  .rsvBox__tab__btn {
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    padding: 12px 8px;
    font-size: 13px;
    height: auto;
    gap: 6px
  }
  .rsvBox__tab__btn i {
    font-size: 13px
  }
  .rsvBox__panel .rsvBox__con {
    padding: 14px 14px 12px
  }
  .rsvBox__fields {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 10px 8px
  }
  .rsvBox__field--date {
    grid-column: 1/-1
  }
  .rsvBox__field--btn {
    grid-column: 1/-1;
    width: 100%
  }
  .rsvBox__field,
  .rsvBox__field--md,
  .rsvBox__field--sm {
    -webkit-box-flex: 0;
    -ms-flex: none;
    flex: none;
    min-width: 0
  }
  .rsvBox__label {
    font-size: 12px;
    margin-bottom: 4px
  }
  .rsvBox__input,
  .rsvBox__select {
    height: 44px;
    font-size: 16px;
    padding: 0 10px
  }
  .rsvBox__input::-webkit-input-placeholder {
    font-size: 14px
  }
  .rsvBox__input::-moz-placeholder {
    font-size: 14px
  }
  .rsvBox__input:-ms-input-placeholder {
    font-size: 14px
  }
  .rsvBox__input::-ms-input-placeholder {
    font-size: 14px
  }
  .rsvBox__input::placeholder {
    font-size: 14px
  }
  .rsvBox__submit {
    width: 100%;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    height: 50px;
    font-size: 16px;
    letter-spacing: .1em;
    gap: 10px
  }
  .rsvBox__submit i {
    font-size: 16px
  }
  .rsvBox__links {
    overflow-x: auto
  }
  .rsvBox__links .rsvBox__con {
    padding: 8px 14px 12px;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
    gap: 0
  }
  .rsvBox__links a {
    font-size: 11px;
    white-space: nowrap;
    padding: 3px 14px 3px 0
  }
  .header__fixed-nav__hum {
    background: #1f80bc
  }
  .header__fixed-nav .reservation {
    color: #1f80bc
  }
  .header__global-nav {
    color: #4075c9;
    background: -webkit-gradient(linear,left top,left bottom,from(#afdbc4),to(#eacf75));
    background: linear-gradient(to bottom,#afdbc4,#eacf75)
  }
  .hero__sub {
    border-top-style: solid;
    border-top-width: 5px
  }
  .hero__sub .hero__sub__index-movie {
    display: none!important
  }
  .deco-kame::after {
    width: 130px;
    height: 131px;
    top: -10rem;
    right: -5px
  }
  .index__plan .slider-card__item div {
    padding: 15px 0
  }
  .deco-bike::after {
    margin: -2rem auto;
    width: 47.87px;
    height: 28.05px
  }
  .about-shimokoshiki-udon {
    margin: 0 calc(50% - 50vw);
    padding: 5rem 12% 3rem;
    width: 100vw
  }
  .deco-udon::after {
    width: 81.32px;
    height: 64.13px;
    top: -36px;
    left: -41px
  }
  .kaisen-lead {
    margin-top: 3.5rem
  }
  .kaisen-lead__sub {
    font-size: 1.6rem;
    line-height: 1.7
  }
  .kaisen-lead__ttl {
    font-size: 3.6rem;
    line-height: 1.4
  }
  .kaisen-lead__line {
    height: 6px;
    margin: 1.2rem auto 0
  }
  .kaisen-reserve {
    padding: 2.6rem 1.8rem
  }
  .kaisen-reserve__head {
    font-size: 1.5rem;
    line-height: 1.7
  }
  .kaisen-reserve__btns {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 1.2rem
  }
  .kaisen-btn {
    min-width: 0;
    max-width: none;
    width: 100%;
    padding: 1.5rem 1rem;
    font-size: 1.6rem;
    letter-spacing: .02em
  }
  .kaisen-menu {
    margin-top: 4rem
  }
  .kaisen-menu__banner {
    font-size: 1.6rem
  }
  .br-sp {
    display: inline
  }
  .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%
  }
}
.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%;
  line-height: 1.8;
  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
}
.center-section__inner,
.mv {
  max-width: 1024px;
  margin: 0 auto
}
.center-section {
  padding: 60px 20px
}
.center-section__img {
  max-width: 100%;
  height: auto;
  margin-bottom: 20px
}
.center-section__text {
  font-size: 16px;
  line-height: 1.8
}
.access__detail__img {
  margin: 0 auto;
  display: block;
  width: 100%;
  height: auto
}
.kanokoyuri-section {
  margin-top: 80px
}
.kanokoyuri-header {
  position: relative;
  margin-bottom: 0;
  z-index: 1
}
.kanokoyuri-header__labels,
.spot-item .spot-badge {
  position: absolute;
  display: -webkit-box;
  display: -ms-flexbox;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal
}
.kanokoyuri-header__labels {
  bottom: -40px;
  left: 0;
  display: flex;
  -ms-flex-direction: column;
  flex-direction: column;
  gap: 6px
}
.kanokoyuri-header__label {
  display: inline-block;
  background-color: rgba(212,133,58,.8);
  color: #fff;
  padding: 8px 20px;
  font-size: 20px;
  letter-spacing: .08em
}
.spot-banner,
.spot-item .spot-badge {
  background-color: #d4853a;
  color: #fff
}
.kanokoyuri-header__label--large {
  font-size: 25px;
  font-weight: 700;
  padding: 10px 20px
}
.kanokoyuri-body {
  position: relative;
  padding: 50px;
  margin-bottom: 0;
  background-image: url(/img/shimokoshiki/access/spot/spot1_bg.webp);
  background-size: 45%;
  background-position: right center;
  background-repeat: no-repeat
}
@media (min-width:768px) and (max-width:1024px) {
  .kanokoyuri-body {
    background-size: 50%
  }
}
@media (max-width:767px) {
  .kanokoyuri-header {
    margin-top: -40px
  }
  .kanokoyuri-header__label {
    font-size: 13px;
    padding: 6px 14px
  }
  .kanokoyuri-header__label--large {
    font-size: 15px;
    padding: 8px 14px
  }
  .kanokoyuri-body {
    background-size: 70%;
    background-position: right bottom
  }
  .kanokoyuri-body p {
    text-align: left
  }
}
.kanokoyuri-body p {
  position: relative;
  font-size: 15px;
  line-height: 2;
  color: #333;
  text-align: center;
  margin-bottom: 0
}
.kanokoyuri-info {
  font-size: 16px;
  letter-spacing: .05em;
  text-align: center;
  padding: 12px 0;
  margin-top: 16px;
  margin-bottom: 0;
  display: inline-block;
  width: 100%;
  border-bottom: 2px solid #d4853a
}
.spot-banner {
  text-align: center;
  padding: 14px;
  font-size: 16px;
  letter-spacing: .08em;
  margin-top: 0;
  margin-bottom: 24px
}
.spot-grid {
  display: grid;
  grid-template-columns: repeat(3,1fr);
  gap: 16px;
  margin-bottom: 40px
}
.spot-item {
  position: relative;
  text-align: center
}
.spot-item img {
  width: 100%;
  height: 200px;
  -o-object-fit: cover;
  object-fit: cover;
  display: block
}
.spot-item .spot-badge {
  top: -21px;
  left: -20px;
  z-index: 1;
  border-radius: 50%;
  width: 68px;
  height: 68px;
  display: flex;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  font-size: 12px;
  line-height: 1.4;
  border: 3px solid #fff;
  -webkit-box-sizing: border-box;
  box-sizing: border-box
}
.spot-item .spot-label {
  margin-top: 8px;
  font-size: 14px;
  letter-spacing: .05em
}
@media (max-width:767px) {
  .kanokoyuri-info {
    font-size: 13px
  }
  .spot-grid {
    grid-template-columns: 1fr
  }
  .spot-item img {
    height: 220px
  }
  .spot-item .spot-badge {
    top: -14px;
    left: -9px
  }
  .pc-only {
    display: none
  }
  .access__detail__img {
    width: calc(100% - 32px);
    margin: 0 auto;
    display: block
  }
}
.spot-wrap {
  max-width: 900px;
  margin: 0 auto
}
@media (max-width:1024px) {
  .spot-banner {
    margin: 0 16px 24px
  }
  .spot-wrap {
    padding: 0 16px
  }
}
.car-rental__cta {
  position: relative;
  left: 50%;
  right: 50%;
  margin-left: -50vw;
  margin-right: -50vw;
  width: 100vw;
  background-color: #e1f5fe;
  padding: 2.5rem 1rem;
  margin-top: 2.5rem;
  text-align: center
}
.car-rental__lead {
  font-size: 20px;
  margin-bottom: .75rem
}
.car-rental__btn {
  display: inline-block;
  width: 800px;
  padding: 1rem 2rem;
  background-color: #29b6f6;
  color: #fff;
  border-radius: 12px;
  font-size: 20px;
  font-weight: 700;
  -webkit-transition: background-color .2s;
  transition: background-color .2s
}
.car-rental__btn:hover {
  background-color: #0288d1;
  color: #fff
}
@media (max-width:768px) {
  .car-rental__lead {
    font-size: 16px
  }
  .car-rental__btn {
    width: 90%;
    font-size: 16px;
    padding: .875rem 1rem
  }
}