@charset "UTF-8";
.ui-datepicker .ui-icon,
.ui-icon {
  text-indent: -99999px;
  overflow: hidden;
  background-repeat: no-repeat
}
@font-face {
  font-family: icomoon;
  font-style: normal;
  font-weight: 400;
  font-display: block;
  src: url(../../fonts/icomoon2/icomoon.ttf?cddqx3) format("truetype")
}
.icon-location::before {
  content: "\e947"
}
/*! jQuery UI - v1.12.1 - 2016-09-14
* //jqueryui.com
* Includes: core.css, accordion.css, autocomplete.css, menu.css, button.css, controlgroup.css, checkboxradio.css, datepicker.css, dialog.css, draggable.css, resizable.css, progressbar.css, selectable.css, selectmenu.css, slider.css, sortable.css, spinner.css, tabs.css, tooltip.css, theme.css
* To view and modify this theme, visit //jqueryui.com/themeroller/?ffDefault=Verdana%2CArial%2Csans-serif&fwDefault=normal&fsDefault=1.1em&cornerRadius=4px&bgColorHeader=cccccc&bgTextureHeader=highlight_soft&bgImgOpacityHeader=75&borderColorHeader=aaaaaa&fcHeader=222222&iconColorHeader=222222&bgColorContent=ffffff&bgTextureContent=flat&bgImgOpacityContent=75&borderColorContent=aaaaaa&fcContent=222222&iconColorContent=222222&bgColorDefault=e6e6e6&bgTextureDefault=glass&bgImgOpacityDefault=75&borderColorDefault=d3d3d3&fcDefault=555555&iconColorDefault=888888&bgColorHover=dadada&bgTextureHover=glass&bgImgOpacityHover=75&borderColorHover=999999&fcHover=212121&iconColorHover=454545&bgColorActive=ffffff&bgTextureActive=glass&bgImgOpacityActive=65&borderColorActive=aaaaaa&fcActive=212121&iconColorActive=454545&bgColorHighlight=fbf9ee&bgTextureHighlight=glass&bgImgOpacityHighlight=55&borderColorHighlight=fcefa1&fcHighlight=363636&iconColorHighlight=2e83ff&bgColorError=fef1ec&bgTextureError=glass&bgImgOpacityError=95&borderColorError=cd0a0a&fcError=cd0a0a&iconColorError=cd0a0a&bgColorOverlay=aaaaaa&bgTextureOverlay=flat&bgImgOpacityOverlay=0&opacityOverlay=30&bgColorShadow=aaaaaa&bgTextureShadow=flat&bgImgOpacityShadow=0&opacityShadow=30&thicknessShadow=8px&offsetTopShadow=-8px&offsetLeftShadow=-8px&cornerRadiusShadow=8px
* Copyright jQuery Foundation and other contributors; Licensed MIT */
.ui-helper-hidden {
  display: none
}
.ui-helper-hidden-accessible {
  border: 0;
  clip: rect(0 0 0 0);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute;
  width: 1px
}
.ui-helper-reset {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  line-height: 1.3;
  text-decoration: none;
  font-size: 100%;
  list-style: none
}
.ui-helper-clearfix:after,
.ui-helper-clearfix:before {
  content: "";
  display: table;
  border-collapse: collapse
}
.ui-helper-clearfix:after {
  clear: both
}
.ui-helper-zfix {
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  position: absolute;
  opacity: 0;
  filter: Alpha(Opacity=0)
}
.ui-front {
  z-index: 100
}
.ui-state-disabled {
  cursor: default!important;
  pointer-events: none
}
.ui-icon {
  display: inline-block;
  vertical-align: middle;
  margin-top: -.25em;
  position: relative
}
.ui-widget-icon-block {
  left: 50%;
  margin-left: -8px;
  display: block
}
.ui-widget-overlay {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%
}
.ui-datepicker {
  width: 17em;
  padding: .2em .2em 0;
  display: none
}
.ui-datepicker .ui-datepicker-header {
  position: relative;
  padding: .2em 0
}
.ui-datepicker .ui-datepicker-next,
.ui-datepicker .ui-datepicker-prev {
  position: absolute;
  top: 2px;
  width: 1.8em;
  height: 1.8em
}
.ui-datepicker .ui-datepicker-next-hover,
.ui-datepicker .ui-datepicker-prev-hover {
  top: 1px
}
.ui-datepicker .ui-datepicker-prev {
  left: 2px
}
.ui-datepicker .ui-datepicker-next {
  right: 2px
}
.ui-datepicker .ui-datepicker-prev-hover {
  left: 1px
}
.ui-datepicker .ui-datepicker-next-hover {
  right: 1px
}
.ui-datepicker .ui-datepicker-next span,
.ui-datepicker .ui-datepicker-prev span {
  display: block;
  position: absolute;
  left: 50%;
  margin-left: -8px;
  top: 50%;
  margin-top: -8px
}
.ui-datepicker .ui-datepicker-title {
  margin: 0 2.3em;
  line-height: 1.8em;
  text-align: center
}
.ui-datepicker .ui-datepicker-title select {
  font-size: 1em;
  margin: 1px 0
}
.ui-datepicker select.ui-datepicker-month,
.ui-datepicker select.ui-datepicker-year {
  width: 45%
}
.ui-datepicker table {
  width: 100%;
  font-size: .9em;
  border-collapse: collapse;
  margin: 0 0 .4em
}
.ui-datepicker th {
  padding: .7em .3em;
  text-align: center;
  font-weight: 700;
  border: 0
}
.ui-datepicker td {
  border: 0;
  padding: 1px
}
.ui-datepicker td a,
.ui-datepicker td span {
  display: block;
  padding: .2em;
  text-align: right;
  text-decoration: none
}
.ui-datepicker .ui-datepicker-buttonpane {
  background-image: none;
  margin: .7em 0 0;
  padding: 0 .2em;
  border-left: 0;
  border-right: 0;
  border-bottom: 0
}
.ui-datepicker .ui-datepicker-buttonpane button {
  float: right;
  margin: .5em .2em .4em;
  cursor: pointer;
  padding: .2em .6em .3em;
  width: auto;
  overflow: visible
}
.ui-datepicker .ui-datepicker-buttonpane button.ui-datepicker-current,
.ui-datepicker-multi .ui-datepicker-group,
.ui-datepicker-rtl .ui-datepicker-buttonpane button {
  float: left
}
.ui-datepicker.ui-datepicker-multi {
  width: auto
}
.ui-datepicker-multi .ui-datepicker-group table {
  width: 95%;
  margin: 0 auto .4em
}
.ui-datepicker-multi-2 .ui-datepicker-group {
  width: 50%
}
.ui-datepicker-multi-3 .ui-datepicker-group {
  width: 33.3%
}
.ui-datepicker-multi-4 .ui-datepicker-group {
  width: 25%
}
.ui-datepicker-multi .ui-datepicker-group-last .ui-datepicker-header,
.ui-datepicker-multi .ui-datepicker-group-middle .ui-datepicker-header {
  border-left-width: 0
}
.ui-datepicker-multi .ui-datepicker-buttonpane {
  clear: left
}
.ui-datepicker-row-break {
  clear: both;
  width: 100%;
  font-size: 0
}
.ui-datepicker-rtl {
  direction: rtl
}
.ui-datepicker-rtl .ui-datepicker-prev {
  right: 2px;
  left: auto
}
.ui-datepicker-rtl .ui-datepicker-next {
  left: 2px;
  right: auto
}
.ui-datepicker-rtl .ui-datepicker-prev:hover {
  right: 1px;
  left: auto
}
.ui-datepicker-rtl .ui-datepicker-next:hover {
  left: 1px;
  right: auto
}
.ui-datepicker-rtl .ui-datepicker-buttonpane {
  clear: right
}
.ui-datepicker-rtl .ui-datepicker-buttonpane button.ui-datepicker-current,
.ui-datepicker-rtl .ui-datepicker-group {
  float: right
}
.ui-datepicker-rtl .ui-datepicker-group-last .ui-datepicker-header,
.ui-datepicker-rtl .ui-datepicker-group-middle .ui-datepicker-header {
  border-right-width: 0;
  border-left-width: 1px
}
.ui-datepicker .ui-icon {
  display: block;
  left: .5em;
  top: .3em
}
.ui-widget {
  font-family: Verdana,Arial,sans-serif;
  font-size: 1.1em
}
.ui-widget .ui-widget {
  font-size: 1em
}
.ui-widget button,
.ui-widget input,
.ui-widget select,
.ui-widget textarea {
  font-family: Verdana,Arial,sans-serif;
  font-size: 1em
}
.ui-widget.ui-widget-content {
  border: 1px solid #d3d3d3
}
.ui-widget-content {
  border: 1px solid #aaa;
  background: #fff;
  color: #222
}
.ui-widget-content a,
.ui-widget-header a {
  color: #222
}
.ui-widget-header {
  border: 1px solid #aaa;
  background: url(//ajax.googleapis.com/ajax/libs/jqueryui/1.12.1/themes/smoothness/images/ui-bg_highlight-soft_75_cccccc_1x100.png) 50% 50% repeat-x #ccc;
  color: #222;
  font-weight: 700
}
.ui-state-default,
.ui-widget-content .ui-state-default,
.ui-widget-header .ui-state-default {
  border: 1px solid #d3d3d3;
  background: url(//ajax.googleapis.com/ajax/libs/jqueryui/1.12.1/themes/smoothness/images/ui-bg_glass_75_e6e6e6_1x400.png) 50% 50% repeat-x #e6e6e6;
  font-weight: 400;
  color: #555
}
.ui-state-default a,
.ui-state-default a:link,
.ui-state-default a:visited {
  color: #555;
  text-decoration: none
}
.ui-state-focus,
.ui-state-hover,
.ui-widget-content .ui-state-focus,
.ui-widget-content .ui-state-hover,
.ui-widget-header .ui-state-focus,
.ui-widget-header .ui-state-hover {
  border: 1px solid #999;
  background: url(//ajax.googleapis.com/ajax/libs/jqueryui/1.12.1/themes/smoothness/images/ui-bg_glass_75_dadada_1x400.png) 50% 50% repeat-x #dadada;
  font-weight: 400;
  color: #212121
}
.ui-state-active a,
.ui-state-active a:link,
.ui-state-active a:visited,
.ui-state-focus a,
.ui-state-focus a:hover,
.ui-state-focus a:link,
.ui-state-focus a:visited,
.ui-state-hover a,
.ui-state-hover a:hover,
.ui-state-hover a:link,
.ui-state-hover a:visited {
  color: #212121;
  text-decoration: none
}
.ui-visual-focus {
  -webkit-box-shadow: 0 0 3px 1px #5e9ed6;
  box-shadow: 0 0 3px 1px #5e9ed6
}
.ui-state-active,
.ui-widget-content .ui-state-active,
.ui-widget-header .ui-state-active {
  border: 1px solid #aaa;
  background: url(//ajax.googleapis.com/ajax/libs/jqueryui/1.12.1/themes/smoothness/images/ui-bg_glass_65_ffffff_1x400.png) 50% 50% repeat-x #fff;
  font-weight: 400;
  color: #212121
}
.ui-icon-background,
.ui-state-active .ui-icon-background {
  border: #aaa;
  background-color: #212121
}
.ui-state-highlight,
.ui-widget-content .ui-state-highlight,
.ui-widget-header .ui-state-highlight {
  border: 1px solid #fcefa1;
  background: url(//ajax.googleapis.com/ajax/libs/jqueryui/1.12.1/themes/smoothness/images/ui-bg_glass_55_fbf9ee_1x400.png) 50% 50% repeat-x #fbf9ee;
  color: #363636
}
.ui-state-checked {
  border: 1px solid #fcefa1;
  background: #fbf9ee
}
.ui-state-highlight a,
.ui-widget-content .ui-state-highlight a,
.ui-widget-header .ui-state-highlight a {
  color: #363636
}
.ui-state-error,
.ui-widget-content .ui-state-error,
.ui-widget-header .ui-state-error {
  border: 1px solid #cd0a0a;
  background: url(//ajax.googleapis.com/ajax/libs/jqueryui/1.12.1/themes/smoothness/images/ui-bg_glass_95_fef1ec_1x400.png) 50% 50% repeat-x #fef1ec;
  color: #cd0a0a
}
.ui-state-error a,
.ui-state-error-text,
.ui-widget-content .ui-state-error a,
.ui-widget-content .ui-state-error-text,
.ui-widget-header .ui-state-error a,
.ui-widget-header .ui-state-error-text {
  color: #cd0a0a
}
.ui-priority-primary,
.ui-widget-content .ui-priority-primary,
.ui-widget-header .ui-priority-primary {
  font-weight: 700
}
.ui-priority-secondary,
.ui-widget-content .ui-priority-secondary,
.ui-widget-header .ui-priority-secondary {
  opacity: .7;
  filter: Alpha(Opacity=70);
  font-weight: 400
}
.ui-state-disabled,
.ui-widget-content .ui-state-disabled,
.ui-widget-header .ui-state-disabled {
  opacity: .35;
  filter: Alpha(Opacity=35);
  background-image: none
}
.ui-state-disabled .ui-icon {
  filter: Alpha(Opacity=35)
}
.ui-icon {
  width: 16px;
  height: 16px
}
.ui-icon,
.ui-widget-content .ui-icon,
.ui-widget-header .ui-icon {
  background-image: url(//ajax.googleapis.com/ajax/libs/jqueryui/1.12.1/themes/smoothness/images/ui-icons_222222_256x240.png)
}
.ui-state-active .ui-icon,
.ui-state-focus .ui-icon,
.ui-state-hover .ui-icon {
  background-image: url(//ajax.googleapis.com/ajax/libs/jqueryui/1.12.1/themes/smoothness/images/ui-icons_454545_256x240.png)
}
.ui-state-highlight .ui-icon {
  background-image: url(//ajax.googleapis.com/ajax/libs/jqueryui/1.12.1/themes/smoothness/images/ui-icons_2e83ff_256x240.png)
}
.ui-state-error .ui-icon,
.ui-state-error-text .ui-icon {
  background-image: url(//ajax.googleapis.com/ajax/libs/jqueryui/1.12.1/themes/smoothness/images/ui-icons_cd0a0a_256x240.png)
}
.ui-icon-circle-triangle-e {
  background-position: -48px -192px
}
.ui-icon-circle-triangle-w {
  background-position: -80px -192px
}
.ui-corner-all,
.ui-corner-left,
.ui-corner-tl,
.ui-corner-top {
  border-top-left-radius: 4px
}
.ui-corner-all,
.ui-corner-right,
.ui-corner-top,
.ui-corner-tr {
  border-top-right-radius: 4px
}
.ui-corner-all,
.ui-corner-bl,
.ui-corner-bottom,
.ui-corner-left {
  border-bottom-left-radius: 4px
}
.ui-corner-all,
.ui-corner-bottom,
.ui-corner-br,
.ui-corner-right {
  border-bottom-right-radius: 4px
}
.ui-widget-overlay {
  background: #aaa;
  opacity: .3;
  filter: Alpha(Opacity=30)
}
.ui-widget-shadow {
  -webkit-box-shadow: -8px -8px 8px #aaa;
  box-shadow: -8px -8px 8px #aaa
}
@font-face {
  font-family: icomoon;
  font-style: normal;
  font-weight: 400;
  src: url(../../fonts/icomoon/icomoon.eot?bwpcb6);
  src: url(../../fonts/icomoon/icomoon.eot?bwpcb6#iefix) format("embedded-opentype"),url(../../fonts/icomoon/icomoon.ttf?bwpcb6) format("truetype"),url(../../fonts/icomoon/icomoon.woff?bwpcb6) format("woff"),url(../../fonts/icomoon/icomoon.svg?bwpcb6#icomoon) format("svg")
}
[class*=" icon-"],
[class^=icon-] {
  speak: none;
  text-transform: none;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-family: icomoon!important;
  font-style: normal;
  font-weight: 400;
  font-variant: normal;
  line-height: 1;
  text-transform: none;
  speak: none;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale
}
.a1-font-sawarabi,
.deco-circle,
.font-mincho,
.ttl-con {
  font-family: "Sawarabi Mincho",sans-serif
}
.icon-airplane::before {
  content: "\e900"
}
.icon-bag::before {
  content: "\e901"
}
.icon-bed::before {
  content: "\e902"
}
.icon-loope::before {
  content: "\e903"
}
.icon-pen::before {
  content: "\e904"
}
.icon-calendar::before {
  content: "\e905"
}
.icon-camera::before {
  content: "\e906"
}
.icon-child::before {
  content: "\e907"
}
.icon-eat::before {
  content: "\e908"
}
.icon-heart::before {
  content: "\e909"
}
.icon-hotel::before {
  content: "\e90a"
}
.icon-insta::before {
  content: "\e90b"
}
.icon-yen::before {
  content: "\e90c"
}
.icon-non-smoking::before {
  content: "\e90d"
}
.icon-people::before {
  content: "\e90e"
}
.icon-smoking::before {
  content: "\e90f"
}
.icon-spa::before {
  content: "\e910"
}
.icon-clock::before {
  content: "\e911"
}
.icon-twitter::before {
  content: "\e912"
}
.icon-phone::before {
  content: "\e942"
}
.icon-menu::before {
  content: "\e9bd"
}
.icon-facebook::before {
  content: "\ea91"
}
.js-rsvPanel--active {
  display: block
}
.header__nav__list__item br.tab,
.header__nav__list__item br.tab-pc,
.js-rsvPanel--inactive {
  display: none
}
.rsvBox__head {
  background: #ccc;
  position: relative;
  padding-bottom: 10px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: end;
  -ms-flex-align: end;
  align-items: flex-end
}
.rsvBox__head::before {
  content: "";
  display: block;
  height: 15px;
  position: absolute;
  top: -15px;
  right: 0;
  background: #ccc
}
.bl_gallery,
.rsvBox__tab {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex
}
.header {
  background: 0 0;
  margin-bottom: -8.6rem;
  color: #fff
}
@media screen and (min-width:576px) and (max-width:767px) {
  :where(.header) .sp:not(.header__nav__social__tell) {
    display: block!important
  }
  :where(.header) .tab-pc {
    display: none!important
  }
  .header.ly__con-zindex {
    position: static;
    z-index: auto
  }
  .header {
    margin-bottom: 0!important
  }
}
.footer a,
.footer a:focus,
.footer a:hover,
.header a,
.header a:focus,
.header a:hover {
  color: inherit;
  text-decoration: none
}
.header__nav__block-sub2 {
  z-index: 1!important;
  top: 0
}
@media screen and (min-width:768px) {
  .header__nav__wrapper {
    position: relative
  }
  .header__nav__block-sub2 {
    position: absolute;
    bottom: -70px;
    left: 0;
    width: 100%;
    z-index: 999
  }
  .header__nav__social {
    text-align: right
  }
  .header__nav__social__inner {
    display: inline-block
  }
  .header__nav__social__inner::after {
    display: block;
    clear: both;
    content: ""
  }
  .header__nav__social__item {
    float: left
  }
  .header__nav__social__tell {
    text-shadow: 0 0 7px rgba(0,0,0,.5);
    font-size: 2rem;
    color: #fff;
    letter-spacing: .1em;
    padding-right: 10px;
    margin-top: 20px
  }
  .header__nav__social__insta a {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-transition: .3s;
    transition: .3s;
    width: 70px;
    height: 70px;
    background: linear-gradient(135deg,#427eff 0,#f13f79 40%,#ffdc42 97%);
    color: #fff;
    text-align: center
  }
  .header__nav__social__insta a:hover {
    color: rgba(255,255,255,.6)
  }
  .header__nav__social__insta a i {
    display: block;
    font-size: 4rem
  }
  .header__nav__social__insta a span {
    display: block;
    padding-top: 3px;
    font-size: 1rem
  }
  .header__nav__social__rsv a {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-transition: .3s;
    transition: .3s;
    padding: .5em .7em;
    color: #fff;
    font-size: 1.6rem;
    letter-spacing: .1em;
    background: #fff;
    height: 80px
  }
  .header__nav__social__rsv a span {
    color: #000!important
  }
  .header__nav__social__rsv a:hover {
    opacity: .6
  }
}
.deco-coffee::after,
.room-cards__ttl .deco-human::after {
  content: "　";
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  z-index: 1
}
.header__nav__block-main {
  z-index: 10;
  position: relative;
  max-width: 820px
}
@media screen and (min-width:1025px) {
  .rsvBox__head::before {
    width: 550px
  }
  .header__block-sub1 {
    position: relative
  }
  .header__block-sub1::after {
    content: "";
    display: block;
    width: calc((100% - 1024px)/ 2);
    height: 35px;
    position: absolute;
    top: 0;
    right: 0;
    background: #5b7283
  }
  .header__nav__block-main,
  .header__nav__block-sub2 {
    width: 1024px;
    margin-right: auto;
    margin-left: auto;
    margin-left: calc((100% - 1024px)/ 2)
  }
  .special-top {
    border-left: 2.5px solid #707070;
    padding-left: 4rem
  }
}
@media screen and (min-width:768px) {
  .header__nav__block-main {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
    padding-right: 10px;
    padding-left: 10px
  }
  .header__fixed-nav,
  .header__nav__close {
    display: none
  }
  .header__nav__list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin-top: 10px;
    margin-bottom: 10px
  }
  .header__nav__list__item {
    margin: 10px 0 0;
    border-right: 1px solid #fff
  }
  .header__nav__list__item a {
    display: block;
    text-align: center;
    padding: 10px
  }
  .header__nav__list__item a span {
    display: block;
    white-space: nowrap
  }
  .header__nav__list__item a span:last-child {
    font-size: 80%;
    margin-top: 3px;
    color: #fff;
    letter-spacing: 1.2px
  }
  .header.is-nav-wrap .header__nav__list__item br.tab-pc,
  .yoyakuban .header .header__nav__list__item br.tab-pc {
    display: inline
  }
}
@media screen and (min-width:768px) and (min-width:1025px) {
  .header__nav__list__item a {
    padding: 10px 25px
  }
}
@media screen and (min-width:768px) and (min-width:768px) and (max-width:1024px) {
  .header__nav__social__rsv a {
    font-size: 90%
  }
  .header.is-nav-wrap .header__nav__list__item br.tab,
  .yoyakuban .header .header__nav__list__item br.tab {
    display: inline
  }
}
@media screen and (min-width:768px) {
  .header.is-nav-wrap .header__nav__list__item a span,
  .yoyakuban .header .header__nav__list__item a span {
    white-space: normal
  }
}
@media screen and (max-width:767px) {
  .header__nav__block-main {
    color: #fff
  }
  .header__fixed-nav {
    position: fixed;
    bottom: 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    width: 100%;
    z-index: 999998;
    top: 0;
    right: 0;
    left: auto;
    max-height: 68px;
    max-width: 300px
  }
  .header__fixed-nav__item {
    -webkit-box-flex: 1;
    -ms-flex-positive: 1;
    flex-grow: 1;
    background: #fff;
    color: #fff;
    text-align: center
  }
  .header__fixed-nav__item__inner,
  .header__fixed-nav__item__inner:focus,
  .header__fixed-nav__item__inner:hover {
    color: inherit;
    text-decoration: none
  }
  .header__fixed-nav__item:not(:last-child) {
    border-right: 1px solid #fff
  }
  .header__fixed-nav__item__inner {
    display: block;
    padding: 10px
  }
  .header__fixed-nav__item__inner i {
    color: #fff;
    font-size: 5rem
  }
  .header__fixed-nav__item__inner span {
    display: block;
    font-size: 1rem;
    color: #fff;
    padding-top: 7px
  }
  .header__fixed-nav.modest {
    z-index: 1
  }
  .header__fixed-nav__hum {
    background: #5b7283;
    max-width: 83px
  }
  .header__fixed-nav .reservation {
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    color: #5b7283;
    font-weight: 700
  }
  .header #js-nav-bg,
  .header__global-nav {
    position: fixed;
    top: 0;
    width: 100%;
    height: 100%
  }
  .header__global-nav {
    right: 0;
    padding: calc(20px + 3rem) 4% 2em;
    -webkit-transition: .3s ease-out;
    transition: .3s ease-out;
    overflow: scroll;
    z-index: 999999;
    background: -webkit-gradient(linear,left top,left bottom,from(#9bc6e0),to(#74ead5));
    background: linear-gradient(to bottom,#9bc6e0,#74ead5)
  }
  .header__global-nav.hide,
  .header__nav__social__tell {
    display: none
  }
  .header__global-nav.show,
  .header__nav__list,
  .header__nav__list__item a,
  .header__nav__list__item span,
  .header__nav__social__insta span {
    display: block
  }
  .header #js-nav-bg {
    left: 0;
    z-index: 9998
  }
  .header__nav__close {
    position: absolute;
    top: 10px;
    font-size: 3rem;
    left: auto;
    right: 10px;
    color: #fff
  }
  .header__nav__logo {
    text-align: center;
    margin-bottom: 5em;
    font-size: 50%
  }
  .header__nav__logo img {
    -o-object-fit: contain;
    object-fit: contain;
    width: 220px;
    height: 60px
  }
  .header__nav__logo__sub {
    margin-top: -1em;
    font-weight: 400
  }
  .header__nav__logo__ttl {
    margin-top: 2em;
    margin-bottom: 3rem;
    font-weight: 400;
    letter-spacing: 3px
  }
  .header__nav__list {
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between
  }
  .header__nav__list__item {
    font-family: "Sawarabi Mincho",sans-serif;
    text-align: center;
    border-bottom: 1px solid #fff;
    margin: 0 auto;
    letter-spacing: 3px;
    width: calc(70% - .5em)
  }
  .header__nav__list__item:last-child {
    border-bottom: none
  }
  .header__nav__list__item a {
    position: relative;
    padding: 1em 1.1em
  }
  .header__nav__list__item a::after {
    content: "";
    position: absolute;
    top: 50%;
    right: .4em;
    width: .5em;
    height: .5em;
    border-top: 1px solid currentColor;
    border-right: 1px solid currentColor;
    -webkit-transform: translateY(-50%) rotate(45deg);
    transform: translateY(-50%) rotate(45deg);
    opacity: .8
  }
  .header__nav__list__item a:focus-visible {
    outline: currentColor solid 2px;
    outline-offset: 2px
  }
  .header__nav__list__item__en {
    display: none!important
  }
  .header__nav__list__item span:first-child {
    font-size: 1.4em;
    padding-bottom: 0;
    text-wrap: balance
  }
  .header__nav__list__item span:last-child {
    font-size: 1.7rem
  }
  .header__nav__social__inner {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center
  }
  .header__nav__social__insta {
    text-align: center;
    color: #fff;
    margin-right: 1em
  }
  .header__nav__social__insta .fa-instagram {
    font-size: 4em
  }
  .header__nav__social__insta i {
    font-size: 6rem
  }
  .header__nav__social__rsv a {
    display: block;
    text-align: center;
    height: 50px;
    padding: 1.4em 10px;
    background: #fff!important
  }
  .header__nav__social__rsv a span {
    color: #000!important
  }
  .header__nav__menu-sp {
    margin-top: 2rem;
    color: #fff
  }
  .header__nav__tell {
    font-size: 2.3rem;
    letter-spacing: 4.2px
  }
  .header__nav__inc {
    margin-top: 10rem
  }
}
.footer,
.footer__rsv {
  background: #999;
  color: #fff
}
@media screen and (min-width:768px) and (max-width:1024px) {
  .header {
    margin-bottom: -12.4rem;
    position: relative
  }
  .header__nav__block-main {
    width: 80%
  }
  .header .header__nav__block-main {
    width: calc(100% - 180px)
  }
  .header .header__nav__list__item a {
    padding-right: clamp(3px,.7vw,8px);
    padding-left: clamp(3px,.7vw,8px)
  }
  .header .header__nav__list__item a span:first-child {
    font-size: clamp(1.25rem,1.6vw,1.4rem);
    word-break: keep-all
  }
  .header .header__nav__list__item a span:last-child {
    font-size: clamp(.95rem,1.2vw,1.12rem);
    letter-spacing: .3px
  }
}
.header__index__logo {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%,-50%);
  transform: translate(-50%,-50%)
}
.header__index__logo a {
  text-decoration: none;
  color: #fff;
  font-weight: 400
}
.footer {
  padding-bottom: 2rem
}
.footer__rsv__btn {
  text-decoration: none;
  color: #fff;
  border: 1px solid #fff;
  padding: .7em 1em;
  display: block;
  text-align: center;
  font-size: 130%;
  letter-spacing: .3em
}
.footer__rsv__btn:focus,
.footer__rsv__btn:hover {
  color: inherit;
  text-decoration: none
}
.footer__rsv__btn:hover,
.l-footer-copyright__text {
  color: #fff
}
.footer__rsv__about {
  text-decoration: underline!important
}
.footer__insta {
  background: #ccc
}
.footer__insta a,
.line-break {
  display: inline-block
}
.footer__insta a div {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center
}
.footer__insta a div i {
  font-size: 4rem;
  color: #fff
}
.footer__insta a div span {
  color: #fff;
  padding-left: .5em
}
.footer__info__tell {
  line-height: 1.5;
  letter-spacing: .3em
}
.footer__info__tell__ttl {
  font-size: 130%
}
.footer__info__tell__num {
  font-size: 180%
}
.footer__info__link {
  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
}
.footer__info__link__item {
  border-right: 1px solid #4d4136;
  margin: 10px 0
}
.footer__info__link__item:last-child {
  border-right: none
}
.footer__info__link__item a {
  display: block;
  padding: 0 1em
}
.footer__info__address__item {
  line-height: 1.5
}
.bl_gallery__item:not(:first-child) {
  margin-left: 1em
}
.modal-plain {
  position: fixed;
  inset: 0;
  z-index: 999999;
  display: none
}
.modal-plain.is-open {
  display: block;
  -webkit-animation: .3s a1ModalFadeIn;
  animation: .3s a1ModalFadeIn
}
.modal-plain__overlay {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  width: 100%;
  height: 100%;
  background: rgba(0,0,0,.8)
}
.deco-circle__base,
.deco-coffee,
.detail-panel .deco-txt__left,
.detail-panel .deco-txt__right,
.hero__sub,
.index .ttl-con,
.modal-plain__content,
.mvSlider,
.mvSlider__item {
  position: relative
}
.modal-plain__close {
  position: absolute;
  top: -3.5rem;
  right: 5px;
  padding: 0;
  border: 0;
  background: 0 0;
  line-height: 1;
  cursor: pointer
}
.modal-plain__close i {
  font-size: 3rem;
  color: #fff
}
.modal-plain__content__inner {
  background: #fff;
  padding: 10px
}
.modal-plain__content__inner img {
  display: block;
  -o-object-fit: contain;
  object-fit: contain
}
.js-modal-plain-btn {
  cursor: pointer
}
@-webkit-keyframes a1ModalFadeIn {
  0% {
    opacity: 0
  }
  100% {
    opacity: 1
  }
}
@keyframes a1ModalFadeIn {
  0% {
    opacity: 0
  }
  100% {
    opacity: 1
  }
}
.hero__sub__index-movie {
  height: 100vh;
  width: 100%;
  -o-object-fit: cover;
  object-fit: cover;
  vertical-align: bottom
}
@media screen and (min-width:576px) and (max-width:1024px) {
  .rsvBox__head::before {
    width: 455px
  }
  .bl_gallery__item:not(:first-child) {
    margin-left: .5em
  }
  .hero__sub__index-movie {
    height: 105.3vh;
    margin-top: 1.2rem
  }
}
@media screen and (min-width:576px) and (max-width:767px) {
  .hero__sub__index-movie {
    margin-top: 0
  }
}
.a1-movie-wrap {
  background: -webkit-gradient(linear,left top,left bottom,from(#1a1a1a),to(#1a1a1a)) top left/100% 100vh no-repeat;
  background: linear-gradient(#1a1a1a,#1a1a1a) top left/100% 100vh no-repeat
}
.hero__sub__index-movie.a1-movie-fade {
  opacity: 0;
  -webkit-transition: opacity .5s;
  transition: opacity .5s
}
.hero__sub__index-movie.a1-movie-fade.is-ready {
  opacity: 1
}
.hero__sub__index-img {
  height: 100vh;
  width: 100%;
  -o-object-fit: cover;
  object-fit: cover;
  margin-top: 8.1rem
}
.mvSlider div {
  line-height: 1
}
.mvSlider__item__bg {
  width: 100%;
  height: 100vh;
  background: center no-repeat;
  background-size: cover
}
.slide-animation {
  -webkit-animation: 8s forwards fadezoom;
  animation: 8s forwards fadezoom
}
@-webkit-keyframes fadezoom {
  0% {
    -webkit-transform: scale(1);
    transform: scale(1)
  }
  100% {
    -webkit-transform: scale(1.07);
    transform: scale(1.07)
  }
}
@keyframes fadezoom {
  0% {
    -webkit-transform: scale(1);
    transform: scale(1)
  }
  100% {
    -webkit-transform: scale(1.07);
    transform: scale(1.07)
  }
}
.special-top__img img {
  -webkit-box-shadow: -10px 10px 0 0 #dfdfdf;
  box-shadow: -10px 10px 0 0 #dfdfdf;
  margin-bottom: 10px;
  margin-left: 10px
}
.index__plan__item {
  color: inherit;
  text-decoration: none;
  display: block
}
.access__detail__link:focus,
.access__detail__link:hover,
.index__plan__item:focus,
.index__plan__item:hover,
.rectBtn__link:focus,
.rectBtn__link:hover {
  color: inherit;
  text-decoration: none
}
.index__plan__item__name {
  padding: .5em .7em;
  text-align: center;
  background: #ccc
}
.index__bnr-box__txt {
  font-size: 2.5rem
}
.access__detail__link,
.rectBtn__link {
  color: inherit;
  text-decoration: none;
  -webkit-transition: .3s;
  transition: .3s;
  border: 1px solid currentColor;
  display: inline-block;
  padding: .5em 2em;
  text-align: center
}
.access__detail__link:hover,
.rectBtn__link:hover {
  opacity: .6
}
.access__detail__ttl,
.list__line {
  display: -webkit-box;
  display: -ms-flexbox
}
@media screen and (min-width:1025px) {
  .special-top__main .special-top__items,
  .special-top__sub {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex
  }
  .special-top__main .special-top__txt {
    min-height: 31rem;
    width: 39%;
    -webkit-box-ordinal-group: 2;
    -ms-flex-order: 1;
    order: 1
  }
  .special-top__main .special-top__img {
    -webkit-box-ordinal-group: 3;
    -ms-flex-order: 2;
    order: 2
  }
  .special-top__sub .special-top__items {
    width: 60%;
    -webkit-box-ordinal-group: 2;
    -ms-flex-order: 1;
    order: 1
  }
  .special-top__sub .special-top__img {
    width: 40%;
    -webkit-box-ordinal-group: 3;
    -ms-flex-order: 2;
    order: 2
  }
  .index__bnr-box__item img {
    width: 100%
  }
  .category-cards__item:nth-child(odd) {
    padding-right: 1.4rem;
    padding-left: 0
  }
  .category-cards__item:nth-child(even) {
    padding-left: 1.4rem;
    padding-right: 0
  }
  .room-cards__items .card__item:nth-child(odd) {
    padding-right: 1rem
  }
  .room-cards__items .card__item:nth-child(even) {
    padding-left: 1rem
  }
}
.category-cards .card__ttl {
  font-size: 2.2rem;
  font-weight: 400
}
.access-map .btn,
.access__detail__link {
  font-size: 2rem;
  letter-spacing: .1em
}
.category-cards .card__btn {
  letter-spacing: .1em;
  padding: .5em 5em
}
.bl_google-map {
  height: 400px
}
.access-map .btn {
  display: inline-block;
  padding: .5em 2em
}
.access__detail__item hr,
.directions-cards .directions-card hr {
  border: 3px solid #bae2ea
}
.access__detail__icon {
  font-size: 4rem
}
.access__detail__ttl {
  line-height: 1.2;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center
}
.info__items {
  max-width: 800px;
  margin: auto
}
@media (min-width:576px) and (max-width:1920px) {
  .room .hero__sub__img img {
    width: 100%;
    height: 30vh;
    -o-object-fit: cover;
    object-fit: cover
  }
  .access .hero__sub__img img,
  .contact .hero__sub__img img,
  .faq .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 {
    width: 100%;
    -o-object-fit: cover;
    object-fit: cover
  }
}
.room-cards__ttl__main {
  padding-right: 1rem;
  margin-bottom: 0
}
.room-cards__ttl__main .ttl-con__main {
  font-size: 140%
}
.room-cards__ttl__sub {
  font-weight: 400;
  margin-top: -3.5rem
}
.room-cards__ttl__border {
  margin-top: -2rem;
  border-top: none;
  border-right: none;
  border-bottom: 8px solid #bdbdbd
}
.room-cards__ttl .deco-human-space--one {
  margin-left: 6%
}
@media screen and (max-width:1024px) {
  .header__index__logo a {
    font-size: 70%
  }
  .modal-plain__content__inner {
    padding: 5px
  }
  .index__bnr-box {
    margin: 0 4%
  }
  .index__bnr-box__item:not(:last-child) {
    margin-bottom: 1em
  }
  .room-cards__ttl__sub {
    margin-top: 0;
    margin-bottom: 0
  }
  .room-cards__ttl__border {
    margin-top: -1.5rem
  }
  .room-cards__ttl .deco-human-space--one {
    margin-left: 3.5rem
  }
}
.room-cards__ttl .deco-human-space--two {
  margin-left: 10%
}
@media screen and (min-width:576px) and (max-width:1024px) {
  .mvSlider__item__bg {
    height: 105.3vh
  }
  .special-top__img img {
    float: right;
    margin-bottom: 1.5em;
    margin-left: 1.5em
  }
  .special-top__main .special-top__txt {
    min-height: 28rem
  }
  .special-top__main .special-top__img img {
    width: 61%
  }
  .special-top__sub .special-top__img img {
    width: 40%;
    min-width: 250px
  }
  .category-cards__item:nth-child(odd) {
    padding-right: .5rem;
    padding-left: 0
  }
  .category-cards__item:nth-child(even) {
    padding-left: .5rem;
    padding-right: 0
  }
  .category-cards .card__btn {
    padding: .5em 2em;
    min-width: auto
  }
  .access__detail__icon {
    font-size: 3rem
  }
  .room-cards__ttl .deco-human-space--two {
    margin-left: 8rem
  }
}
@media screen and (max-width:575px) {
  .rsvBox__head::before {
    width: 245px
  }
  .header__index__logo {
    width: 310px
  }
  .footer {
    padding-bottom: 80px
  }
  .mvSlider {
    margin-top: 8.1rem
  }
  .special-top__img {
    margin-right: -5%
  }
  .special-top__sub .special-top__img img {
    width: 100%
  }
  .category-cards__inner {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center
  }
  .category-cards__item {
    padding: 0
  }
  .category-cards .card {
    max-width: 437px
  }
  .category-cards .card__btn {
    padding: .5em 6em;
    min-width: auto
  }
  .access__detail__item:first-child,
  .access__detail__item:nth-child(2),
  .directions-cards__item:first-child,
  .directions-cards__item:nth-child(2) {
    border-bottom: 1px solid currentColor
  }
  .room .hero__sub__img {
    height: auto;
    margin-top: 8rem
  }
  .room .hero__sub__img img {
    width: auto;
    height: auto
  }
  .room-cards__ttl__main .ttl-con__main {
    font-size: 115%
  }
  .room-cards__ttl__sub {
    margin-bottom: -1rem
  }
  .room-cards__ttl .deco-human-space--two {
    margin-left: 7rem
  }
}
.room-cards__ttl .deco-human-space--three {
  margin-left: 14%
}
@media screen and (min-width:576px) and (max-width:1024px) {
  .room-cards__ttl .deco-human-space--three {
    margin-left: 12rem
  }
}
@media screen and (max-width:575px) {
  .room-cards__ttl .deco-human-space--three {
    margin-left: 11rem
  }
}
.room-cards__ttl .deco-human-space--four {
  margin-left: 18%
}
.room-cards__ttl .deco-human {
  position: relative;
  margin-right: 6rem
}
.room-cards__ttl .deco-human:not(:first-child) {
  margin-left: -2rem
}
.room-cards__ttl .deco-human::after {
  position: absolute;
  display: block;
  width: 49.27px;
  height: 57.5px;
  background-image: url(/img/ise/room/human-one.png?0);
  top: -35px;
  right: -50px
}
.room-cards__items {
  max-width: 900px;
  margin: auto
}
.room-cards__items .card__border {
  border: 3px solid #bdbdbd
}
.room-cards__items .card__ttl {
  width: 100%;
  line-height: 1.2;
  margin-bottom: 0;
  margin-right: .5em;
  font-weight: 400
}
@media screen and (min-width:1025px) {
  .room-cards__items .card__ttl {
    font-size: 2.2rem
  }
  .deco-circle {
    top: -1rem
  }
}
.room-cards__items .card__txt__main {
  font-weight: 400;
  font-size: 110%
}
.room-cards__items .card__btn .btn__link {
  width: 100%;
  font-size: 2rem;
  letter-spacing: .1em
}
.room-cards__items .txt-list {
  padding-left: 0;
  margin-top: 0;
  margin-bottom: 0;
  list-style: none
}
.room-cards__items .txt-list__item {
  font-size: 1.25rem;
  padding-left: 1.25em;
  line-height: 1.25;
  text-indent: -1.25em
}
.room-cards__items .txt-list__item::before {
  content: "※"
}
.list__line {
  margin-top: 0;
  margin-bottom: 0;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  border-bottom: 1px dashed gray
}
.list__line:first-child {
  border-top: 1px dashed gray
}
.list__line__name {
  -webkit-box-flex: 1;
  -ms-flex: 1 0 auto;
  flex: 1 0 auto;
  width: 50%;
  padding: .5em
}
.list__line__detail {
  margin-left: 0;
  -webkit-box-flex: 0;
  -ms-flex: 0 1 auto;
  flex: 0 1 auto;
  width: 50%;
  padding: .5em
}
.deco-circle {
  position: absolute;
  height: 109.76px;
  width: 109.76px;
  border-radius: 50%;
  text-align: center;
  background: #bdbdbd;
  color: #fff;
  margin-left: 20px;
  line-height: 1.2;
  font-size: 120%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  left: -5rem
}
.room__amenity__list {
  -webkit-column-count: 3;
  -moz-column-count: 3;
  column-count: 3
}
.room__amenity__list .def-list {
  -webkit-column-break-inside: avoid;
  -moz-column-break-inside: avoid;
  break-inside: avoid-column
}
.room__amenity__list .def-list > div:first-child {
  -webkit-box-flex: 1;
  -ms-flex-positive: 1;
  flex-grow: 1
}
.room__amenity__list .def-list > div:last-child {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  width: 2em;
  min-width: 2em
}
.room__rental__others__ttl {
  font-weight: 400;
  font-size: 100%;
  display: inline-block;
  background: #fff;
  padding: 0 1em
}
.room__rental__others__box {
  border: 1px solid #4d4136;
  padding: 2em 1em;
  margin-top: -2em;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap
}
.room__rental__others__box > div {
  padding: 0 1em
}
.rental__items .list__ttl {
  font-weight: 400
}
.deco-coffee::before {
  color: transparent
}
.deco-coffee::after {
  position: absolute;
  display: block;
  width: 49px;
  height: 34px;
  background-image: url(/img/common_2/restaurant/coffee.png?0);
  top: 0;
  right: 0
}
.bl_table .def-list > div:first-child {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  width: 30%;
  min-width: 30%;
  background: #dbdbdb
}
.bl_table .def-list > div:first-child i {
  padding-right: .3em;
  vertical-align: -1px
}
.detail-panel__items {
  margin-top: 8rem
}
.detail-panel__box-txts__inner {
  padding-right: 3rem;
  padding-left: 3rem
}
.detail-panel .line-left {
  border-left: 3px solid
}
.detail-panel .line-right {
  border-right: 3px solid #123b5c
}
.detail-panel .deco-txt__left::before {
  position: absolute;
  -webkit-writing-mode: vertical-lr;
  -ms-writing-mode: tb-lr;
  writing-mode: vertical-lr;
  content: "Breakfast Point";
  color: #123b5c;
  font-size: 129%;
  -webkit-transform: rotate(180deg);
  transform: rotate(180deg);
  left: -30px
}
.detail-panel .deco-txt__right::before {
  position: absolute;
  -webkit-writing-mode: vertical-lr;
  -ms-writing-mode: tb-lr;
  writing-mode: vertical-lr;
  content: "Breakfast Point";
  color: #123b5c;
  font-size: 129%;
  right: -30px
}
.hotel-parking .content__ttl {
  margin-bottom: 4rem
}
.hotel-parking__ttl {
  margin-bottom: -1rem;
  font-weight: 400
}
.hotel-parking__detail {
  max-width: 725px;
  margin: auto
}
.hotel-parking__info {
  background: #f0f9ff;
  padding-top: 2rem;
  padding-bottom: 2rem
}
.reserve-ttl {
  border-bottom: 2px solid #4d4136;
  padding-bottom: .3em
}
.reserve-sub-ttl {
  background: #ebe7e3;
  padding: .7em .5em;
  margin-bottom: 1em;
  font-weight: 700
}
.reserve-btn {
  text-decoration: none;
  display: inline-block;
  background: #ccc1b6;
  padding: .7em 2em;
  color: #fff;
  -webkit-box-shadow: 2px 2px 3px 2px rgba(153,153,153,.3);
  box-shadow: 2px 2px 3px 2px rgba(153,153,153,.3);
  border-right: 1px solid #c1b4a7;
  border-bottom: 1px solid #c1b4a7;
  line-height: 1.5;
  letter-spacing: .1em;
  font-weight: 700;
  font-size: 120%
}
.contact .ttl-con,
.ttl-sub {
  border-bottom: 1px solid #4d4136
}
.reserve-btn:focus,
.reserve-btn:hover {
  text-decoration: none;
  color: #fff
}
.contact .ttl-con {
  margin: 0;
  padding: 6em 0;
  background: #ccc
}
@media screen and (max-width:1024px) {
  .room-cards__items .card__ttl {
    font-size: 2rem;
    margin-right: 0
  }
  .detail-panel .line-left {
    padding-right: 0;
    margin-left: 3rem
  }
  .detail-panel .line-right {
    padding-left: 0;
    margin-right: 3rem
  }
  .detail-panel .deco-txt__right::before {
    bottom: 0
  }
  .reserve-ttl img {
    -o-object-fit: contain;
    object-fit: contain;
    -o-object-position: left center;
    object-position: left center;
    width: 100%;
    height: 27px
  }
  .ly__con-padding--none {
    padding-right: 0;
    padding-left: 0
  }
  .ly__con-padding--sp-tab {
    padding-right: 4%;
    padding-left: 4%
  }
}
.font-mincho,
.ttl-con {
  line-height: 1.5
}
.ttl-con__inner {
  display: inline-block;
  font-weight: 400
}
.ttl-sub {
  padding: 1em 0;
  border-top: 1px solid #4d4136;
  font-weight: 400;
  line-height: 1.5
}
.ttl__s-midle,
.ttl__s-small,
.txt__s-midle {
  line-height: 1.6;
  letter-spacing: 3px
}
.content__ttl__main {
  background: #fff;
  padding-right: 1rem
}
.content__ttl__sub {
  font-weight: 400;
  margin-bottom: -5.5rem
}
.content__ttl hr {
  margin-top: -3.5rem
}
.ttl__s-midle {
  font-size: 220%;
  font-weight: 400
}
.ttl__s-small {
  font-size: 180%;
  font-weight: 400
}
.txt__s-midle {
  font-size: 1.1em
}
.hero__sub__ttl {
  text-shadow: 0 0 15px rgba(0,0,0,.5);
  width: 100%;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%,-50%);
  transform: translate(-50%,-50%);
  margin: 0;
  color: #fff;
  letter-spacing: .3em
}
@media screen and (min-width:1025px) {
  .deco-coffee::after {
    margin-top: .5rem
  }
  .bl_con__txt--left {
    padding-right: 10rem
  }
  .bl_con__img--right {
    margin-left: -38rem
  }
  .bl_con__img--left {
    margin-right: -41rem
  }
  .breakfast-time__item {
    padding-right: calc(4% * 3);
    padding-left: calc(4% * 3)
  }
  .detail-panel__items {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex
  }
  .detail-panel__box-txts {
    width: 47%
  }
  .detail-panel__box-img {
    width: 53%
  }
  .detail-panel .img-out-right {
    margin-right: -20rem
  }
  .detail-panel .img-out-left {
    margin-left: -20rem
  }
  .hotel-parking .content__ttl {
    margin-left: 10%
  }
  .hero__sub__ttl,
  .ttl-con__main {
    font-size: 220%
  }
  .ttl-con__sub {
    font-size: 100%
  }
}
@media (min-width:1025px) and (max-width:1920px) {
  .access .hero__sub__img img,
  .contact .hero__sub__img img,
  .faq .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: 90px
  }
}
@media screen and (min-width:576px) and (max-width:1024px) {
  .room-cards__ttl .deco-human-space--four {
    margin-left: 16rem
  }
  .room-cards__ttl .deco-human:first-child {
    margin-left: 1rem
  }
  .room-cards__ttl .deco-human::after {
    width: 44px;
    height: 51px;
    top: -31px
  }
  .deco-circle {
    width: 80px;
    height: 80px;
    left: -4rem;
    font-size: 100%;
    margin-top: -1rem
  }
  .deco-coffee::after {
    width: 43px;
    height: 28px
  }
  .detail-panel.reverse-order--tab {
    display: grid
  }
  .detail-panel.reverse-order--tab > div:first-child {
    -webkit-box-ordinal-group: 3;
    -ms-flex-order: 2;
    order: 2
  }
  .detail-panel.reverse-order--tab > div:nth-child(2) {
    -webkit-box-ordinal-group: 2;
    -ms-flex-order: 1;
    order: 1
  }
  .ly__con-padding--tab {
    padding-right: 4%;
    padding-left: 4%
  }
  .hero__sub__ttl,
  .ttl-con__main {
    font-size: 185%
  }
  .ttl-con__sub {
    font-size: 100%
  }
  .content__ttl__sub {
    margin-bottom: -4rem
  }
  .content__ttl hr {
    margin-top: -3rem
  }
  .ttl__s-midle,
  .ttl__s-small {
    font-size: 200%
  }
  .access .hero__sub__img img,
  .contact .hero__sub__img img,
  .faq .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: 13rem
  }
}
.page-lead p {
  line-height: 2;
  letter-spacing: .1em
}
.def-list {
  border-top: 1px dashed #999;
  border-bottom: 1px dashed #999;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex
}
.def-list + .def-list {
  border-top: none
}
.def-list > div:first-child {
  background: #ededed;
  padding: .5em;
  line-height: 1.5
}
.def-list > div:last-child {
  padding: .5em;
  line-height: 1.5
}
.l-footer-sticky {
  position: fixed;
  right: 5px;
  z-index: 999;
  -webkit-transform: translateY(-60%);
  transform: translateY(-60%);
  text-align: right
}
@media screen and (min-width:576px) {
  .footer__info__address {
    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
  }
  .footer__info__address__item {
    padding: 0 .2em
  }
  .footer__info__address__spacer {
    width: 100%
  }
  .index__plan__item,
  .index__plan__item:focus,
  .index__plan__item:hover {
    color: inherit;
    text-decoration: none
  }
  .index__plan {
    padding: 2em 1em
  }
  .index__plan__inner {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex
  }
  .index__plan__item {
    display: block;
    width: 33.3333333333%;
    padding: 0 1em
  }
  .index__plan__item:nth-child(2) {
    border-right: 1px solid #fff;
    border-left: 1px solid #fff
  }
  .access__detail__link,
  .rectBtn__link {
    font-size: 2rem;
    letter-spacing: .1em
  }
  .category-cards .card__btn {
    font-size: 2rem
  }
  .access__detail__item:first-child,
  .access__detail__item:nth-child(2),
  .directions-cards__item:first-child,
  .directions-cards__item:nth-child(2) {
    border-right: 1px solid currentColor
  }
  .bl_con__img--right {
    padding-right: 10rem
  }
  .bl_con__img--left {
    padding-left: 10rem
  }
  .service__indent {
    padding-right: calc(4% * 2);
    padding-left: calc(4% * 2)
  }
  .hotel-parking .content__ttl__sub {
    margin-bottom: -9.5rem
  }
  .l-footer-sticky {
    top: 62%
  }
}
.l-footer-copyright {
  display: inline-block;
  color: #25313c;
  font-size: 1.2rem;
  letter-spacing: .06em;
  -webkit-writing-mode: vertical-rl;
  -ms-writing-mode: tb-rl;
  writing-mode: vertical-rl;
  margin-right: 2.3em
}
.l-footer-copyright__text span:not(:last-child) {
  padding-bottom: 1px
}
@media screen and (max-width:575px) {
  .room-cards__ttl .deco-human-space--four {
    margin-left: 14rem
  }
  .room-cards__ttl .deco-human {
    margin-right: 4.5rem
  }
  .room-cards__ttl .deco-human:not(:first-child) {
    margin-left: -1rem
  }
  .room-cards__ttl .deco-human::after {
    width: 44px;
    height: 51px;
    top: -33px;
    left: 0
  }
  .deco-circle {
    width: 89.76px;
    height: 89.76px;
    left: -8%;
    margin-top: -.5rem
  }
  .room__amenity__list {
    -webkit-column-count: 2;
    -moz-column-count: 2;
    column-count: 2
  }
  .rental__items {
    max-width: 400px;
    margin: auto
  }
  .deco-coffee::after {
    width: 34px;
    height: 22px;
    right: -5px
  }
  .bl_con__img--right {
    height: 30vh
  }
  .bl_con__img--right img {
    -o-object-fit: cover;
    object-fit: cover;
    width: 100%;
    height: 100%
  }
  .bl_con__img--left {
    height: 30vh;
    width: 100%
  }
  .bl_con__img--left img {
    -o-object-fit: cover;
    object-fit: cover;
    width: 100%;
    height: 100%
  }
  .bl_table .def-list > div:first-child {
    width: 43%
  }
  .detail-panel__items:nth-child(5) {
    margin-top: 0
  }
  .detail-panel__img.sp-img-r {
    margin-right: -5%
  }
  .detail-panel__img.sp-img-l {
    margin-left: -5%
  }
  .detail-panel__img .sp-img-a {
    margin: 0 calc(50% - 50vw);
    width: 100vw
  }
  .detail-panel.reverse-order--sp {
    display: grid
  }
  .detail-panel.reverse-order--sp > div:first-child {
    -webkit-box-ordinal-group: 3;
    -ms-flex-order: 2;
    order: 2
  }
  .detail-panel.reverse-order--sp > div:nth-child(2) {
    -webkit-box-ordinal-group: 2;
    -ms-flex-order: 1;
    order: 1
  }
  .hotel-parking__ttl {
    margin-bottom: 0
  }
  .ly__con-padding__smp-none {
    padding-right: 0;
    padding-left: 0
  }
  .ly__con-padding--sp {
    padding-right: 4%;
    padding-left: 4%
  }
  .sp-img-a {
    margin: 0 calc(50% - 50vw);
    width: 100vw
  }
  .ttl-con__main {
    font-size: 160%;
    display: block
  }
  .ttl-con__sub {
    font-size: 90%;
    display: block
  }
  .content__ttl__sub {
    margin-bottom: -7.5rem
  }
  .content__ttl hr {
    margin-top: -2.5rem;
    margin-right: -2rem
  }
  .ttl__s-midle,
  .ttl__s-small {
    font-size: 150%
  }
  .hero__sub__ttl {
    font-size: 160%
  }
  .hero__sub__img {
    width: 100%;
    height: 30vh
  }
  .hero__sub__img > img {
    -o-object-fit: cover;
    object-fit: cover;
    width: 100%;
    height: 100%
  }
  .access .hero__sub__img,
  .contact .hero__sub__img,
  .faq .hero__sub__img,
  .ng .hero__sub__img,
  .restaurant .hero__sub__img,
  .service .hero__sub__img,
  .spa .hero__sub__img,
  .thanks .hero__sub__img {
    height: auto;
    margin-top: 8rem
  }
  .access .hero__sub__img img,
  .contact .hero__sub__img img,
  .faq .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 {
    width: auto;
    height: auto
  }
  .slider-card {
    margin-right: -4%;
    margin-left: -4%
  }
  .slider-card__item {
    padding: 0 10px
  }
  .slider-card__item > div {
    padding: 15px
  }
  .l-footer-sticky {
    position: absolute;
    bottom: -6em
  }
  .l-footer-sticky-sns-list__item span {
    display: none!important
  }
  .l-footer-copyright {
    display: none
  }
}
.l-footer-sticky-sns-list {
  margin-top: 35px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -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;
  list-style-type: none
}
.side__nav__social__insta a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-transition: .3s;
  transition: .3s;
  width: 70px;
  height: 70px;
  background: 0 0;
  color: #fff;
  text-align: center;
  text-decoration: none
}
.side__nav__social__insta a:hover {
  color: rgba(255,255,255,.6)
}
.side__nav__social__insta a i {
  display: block;
  font-size: 4rem
}
.side__nav__social__insta a span {
  display: block;
  padding-top: 3px;
  font-size: 1rem
}
.fade-out {
  -webkit-animation-name: fadeOut;
  animation-name: fadeOut;
  -webkit-animation-duration: .3s;
  animation-duration: .3s;
  -webkit-animation-fill-mode: forwards;
  animation-fill-mode: forwards
}
@-webkit-keyframes fadeOut {
  from {
    opacity: 1
  }
  to {
    opacity: 0
  }
}
@keyframes fadeOut {
  from {
    opacity: 1
  }
  to {
    opacity: 0
  }
}
.fade-in {
  -webkit-animation-name: fadeIn;
  animation-name: fadeIn;
  -webkit-animation-duration: .3s;
  animation-duration: .3s;
  -webkit-animation-fill-mode: forwards;
  animation-fill-mode: forwards
}
@-webkit-keyframes fadeIn {
  from {
    opacity: 0
  }
  to {
    opacity: 1
  }
}
@keyframes fadeIn {
  from {
    opacity: 0
  }
  to {
    opacity: 1
  }
}