


html, body {
  height: 100%;
  -webkit-user-select: auto;
  -moz-user-select: auto;
  -ms-user-select: auto;
  user-select: auto
}

.body-fixed {
  overflow: hidden
}

.wrapper {
  overflow-x: hidden;
  padding-top: 110px
}

@media (max-width: 1199.98px) {
  .wrapper {
    padding-top: 50px
  }
}

@media (min-width: 576px) {
  .no-gutters-sm {
    margin-right: 0;
    margin-left: 0
  }
}

@media (min-width: 992px) {
  .mt-120 {
    margin-top: 120px
  }
  .mb-120 {
    margin-bottom: 120px
  }
  .pt-120 {
    padding-top: 120px
  }
  .pb-120 {
    padding-bottom: 120px
  }
  .py-120 {
    padding-top: 120px;
    padding-bottom: 120px
  }
}

@media (max-width: 1199.98px) {
  .mt-120 {
    margin-top: 60px
  }
  .mb-120 {
    margin-bottom: 60px
  }
  .pt-120 {
    padding-top: 60px
  }
  .pb-120 {
    padding-bottom: 60px
  }
  .py-120 {
    padding-top: 60px;
    padding-bottom: 60px
  }
}

.color-bg {
  background: #001c5b
}

.color-bg-light {
  background: #fff url("../images/common/bg-pattern-light.svg") left top repeat
}

.entertainment .color-bg {
  background: #4a3a34 url("../images/common/bg-pattern.svg") left top repeat
}

.color-bg, .color-bg-light, .entertainment .color-bg {
  background-size: cover
}

header {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 100;
  background: #fff
}

.navbar-header {
  padding-top: 15px;
  padding-bottom: 15px
}

.navbar-header .navbar-brand {
  position: relative;
  display: block;
  margin: 0 15px;
  padding: 0;
  padding-top: 80px;
  height: 0;
  overflow: hidden;
  background-color: transparent;
  background-position: left center;
  background-repeat: no-repeat;
  background-size: contain;
  background-image: url("../images/header/w-logo_header.svg");
  -webkit-transition: all 0.2s ease-in-out;
  transition: all 0.2s ease-in-out
}

.navbar-header .navbar-brand:hover, .navbar-header .navbar-brand:focus {
  opacity: 0.8;
  text-decoration: none
}

.navbar-header .navbar-menu .row {
  margin: 0
}

.navbar-header .navbar-menu .row .col-auto::before {
  position: relative;
  display: block
}

.navbar-header .navbar-menu .row .col-auto.access {
  position: relative;
  display: block;
  margin: 0 15px;
  padding: 0;
  padding-top: 80px;
  width:40px;
  height: 0;
  overflow: hidden;
  background-color: transparent;
  background-position: left center;
  background-repeat: no-repeat;
  background-size: contain;
  background-image: url("../images/header/spot.svg");
  -webkit-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out
}

.navbar-header .navbar-menu .row .col-auto.contact {
  position: relative;
  display: block;
  margin: 0 15px;
  padding: 0;
  padding-top: 80px;
  width:40px;
  height: 0;
  overflow: hidden;
  background-color: transparent;
  background-position: left center;
  background-repeat: no-repeat;
  background-size: contain;
  background-image: url("../images/header/mail.svg");
  -webkit-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out
}

.navbar-header .navbar-menu .row .col-auto.access, .navbar-header .navbar-menu .row .col-auto.contact {
  text-align: center;
  font-size: 1rem;
  color: #898989
}

.navbar-header .navbar-menu .row .col-auto.access::before, .navbar-header .navbar-menu .row .col-auto.contact::before {
  text-align: center
}

.navbar-header .navbar-menu .row .col-auto.access:hover, .navbar-header .navbar-menu .row .col-auto.access:focus, .navbar-header .navbar-menu .row .col-auto.contact:hover, .navbar-header .navbar-menu .row .col-auto.contact:focus {
  color: #575757
}

.navbar-header .navbar-menu .row .col-auto.tel-num {
  font-size: 2.0rem;
  line-height: 36px;
  font-weight: 500;
  color: #638aac
}

.navbar-header .navbar-menu .row .col-auto.tel-num::before {
  color: #898989;
  font-size: 0.875rem;
  line-height: 1.6;
  letter-spacing: .2rem;
  content: "予約受付│電話番号"
}

@media (max-width: 992px) {
  .navbar-header {
    padding-top: 5px;
    padding-bottom: 5px
  }
  .navbar-header .navbar-brand {
    padding-top: 50px;
    margin-left:60px;
    -webkit-transition: all 0.2s ease-in-out;
    transition: all 0.2s ease-in-out
  }
  .navbar-header .navbar-menu .row .col-auto.tel-num {
    font-size: 1.35rem;
    line-height: 25px;
    -webkit-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out
  }
  .navbar-header .navbar-menu .row .col-auto.access {
    padding-top: 50px;
    width:30px;
    -webkit-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out
  }
  .navbar-header .navbar-menu .row .col-auto.contact {
    margin: 0 15px;
    padding: 0;
    padding-top: 50px;
    width:30px;
    -webkit-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out
  }
  .navbar-header .navbar-menu .row .col-auto.tel-num::before {
    font-size: 0.7rem;
    -webkit-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out
  }
}

@media (max-width: 768px) {
  .navbar-header {
    padding-top: 5px;
    padding-bottom: 5px
  }
  .navbar-header .navbar-brand {
    padding-top: 50px;
    margin-left: 0;
    background-position: center center;
    background-image: url("../images/header/w-logo_header_sp.svg");
    -webkit-transition: all 0.2s ease-in-out;
    transition: all 0.2s ease-in-out
  }
  .navbar-header .navbar-menu {
    display: none;
    -webkit-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out
  }
}

.header-menu {
  list-style: none;
  margin: 0;
  padding: .5rem;
  padding-left: 60px;
  background-color: #808080;
  height: 60px
}

.header-menu li {
  font-size: 1.0rem;
  line-height: 1;
  margin-top: .1rem;
  margin-bottom: .1rem
}

.header-menu li a {
  display: inline-block;
  color: rgba(255, 255, 255, 0.8)
}

.header-menu li a:hover, .header-menu li a:focus {
  color: #fff
}

.header-menu li:not(:first-child) {
  border-left: 1px solid #fff;
  margin-left: -1px
}

@media (max-width: 991px) {
  .header-menu {
    display: none
  }
}

.sidebar-toggler, .sidebar-close {
  position: absolute;
  top: 0;
  left: 0;
  width: 60px;
  height: 60px;
  border: none;
  cursor: pointer;
  -webkit-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out
}

@media (min-width: 992px) {
  .sidebar-toggler, .sidebar-close {
    top: 140px;
    left: 0;
    -webkit-transform: translate(0, -50%);
    transform: translate(0, -50%);
    -webkit-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out
  }
}

.sidebar-toggler-icon {
  display: inline-block;
  width: 1.5em;
  height: 1.5em;
  vertical-align: middle;
  content: "";
  background: no-repeat center center;
  background-size: 100% 100%
}

.sidebar-toggler {
  background-color: #a6bfd2;
  z-index: 9999
}

.sidebar-toggler .sidebar-toggler-icon {
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg viewBox='0 0 30 30' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath stroke='%23fff' stroke-width='2' stroke-linecap='round' stroke-miterlimit='10' d='M4 7h22M4 15h22M4 23h22'/%3E%3C/svg%3E")
}

.sidebar-close {
  background-color: #fff;
  z-index: 10001
}

.sidebar-close .sidebar-toggler-icon {
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg viewBox='0 0 30 30' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath stroke='%23b1cbcb' stroke-width='2' stroke-linecap='round' stroke-miterlimit='10' d='M4 4l22 22 M4 26l22 -22'/%3E%3C/svg%3E")
}

.button-tel {
  position: absolute;
  top: 0;
  right: 0;
  display: block;
  width: 60px;
  padding-top: 60px;
  height: 0;
  overflow: hidden;
  background: #eca699 url("../images/header/tel-icon.svg") no-repeat center center;
  background-size: 21px;
  z-index: 9999
}

@media (min-width: 992px) {
  .button-tel {
    display: none
  }
}

@media (min-width: 992px) {
  header.scroll .navbar-header {
    padding: 5px 0
  }
  header.scroll .navbar-header .navbar-brand,header .col-auto.contact, header .col-auto.access,
  .navbar-header .navbar-menu .row .col-auto.access,.navbar-header .navbar-menu .row .col-auto.contact {
    padding-top: 70px
  }
  header.scroll .navbar-header .navbar-menu .col-auto.access, header.scroll .navbar-header .navbar-menu .col-auto.contact, header.scroll .navbar-header .navbar-menu .col-auto.tel-num::before {
    font-size: 0.75rem
  }
  header.scroll .sidebar-toggler, header.scroll .sidebar-close {
    top: 110px
  }
  header .navbar-header .navbar-brand, header .navbar-header .navbar-menu, header .sidebar-toggler, header .sidebar-close,
  .navbar-header .navbar-menu .row .col-auto.tel-num,.navbar-header .navbar-menu .row .col-auto.access,.navbar-header .navbar-menu .row .col-auto.contact {
    -webkit-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out
  }
}

@media (min-width: 992px) and (prefers-reduced-motion: reduce) {
  header .navbar-header .navbar-brand, header .sidebar-toggler, header .sidebar-close {
    -webkit-transition: none;
    transition: none
  }
}

.sidebar-offcanvas {
  position: fixed;
  height: 100%;
  min-height: 100%;
  top: 0;
  width: 100%;
  left: -100%;
  z-index: 10000;
  overflow-y: auto;
  opacity: 0;
  padding: 1rem;
  -webkit-transition: all 0.5s ease-in-out;
  transition: all 0.5s ease-in-out;
  background-color: rgba(58, 58, 58, 0.9)
}

.sidebar-offcanvas.active {
  left: 0;
  opacity: 1
}

@media (prefers-reduced-motion: reduce) {
  .sidebar-offcanvas {
    -webkit-transition: none;
    transition: none
  }
}

.sidebar-offcanvas .sitemap {
  height: 100%
}

.sidebar-offcanvas .sitemap .sidebar-nav {
  list-style: none;
  padding: 0
}

.sidebar-offcanvas .sitemap .sidebar-nav>li {
  line-height: 2.0
}

@media (min-width: 992px) {
  .sidebar-offcanvas .sitemap .sidebar-nav>li {
    font-size: 1.125rem
  }
}

.sidebar-offcanvas h6 {
  color: #b5b5b5
}

footer {
  background-color: #3a3a3a;
  color: #fff
}

footer .footer-sitemap .footer-nav {
  list-style: none;
  padding: 0
}

footer .footer-sitemap .footer-nav>li {
  padding-top: .5rem
}

footer .footer-sitemap h6 {
  color: #a6bfd2;
  font-size: 86%
}

@media (max-width: 1199.98px) {
  footer {
    text-align: center
  }
}

.color-note {
  background-color: #775d53;
  color: #922d19
}

.footer-nav>li>a, .sidebar-nav>li>a {
  position: relative;
  color: #ddd
}

.footer-nav>li>a::before, .sidebar-nav>li>a::before {
  display: block;
  position: absolute;
  width: 0;
  bottom: -.1rem;
  left: 0;
  content: "";
  border-bottom: 1px solid #fff;
  -webkit-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out
}

@media (prefers-reduced-motion: reduce) {
  .footer-nav>li>a::before, .sidebar-nav>li>a::before {
    -webkit-transition: none;
    transition: none
  }
}

.footer-nav>li>a:hover, .footer-nav>li>a:focus, .sidebar-nav>li>a:hover, .sidebar-nav>li>a:focus {
  color: #fff
}

.footer-nav>li>a:hover::before, .footer-nav>li>a:focus::before, .sidebar-nav>li>a:hover::before, .sidebar-nav>li>a:focus::before {
  width: 100%;
  left: 0
}

.link-usage, .mn-equip {
  margin: 0 -5px;
  padding: 0;
  list-style: none;
  z-index: 80
}

.link-usage li, .mn-equip li {
  float: left;
  margin: 0;
  padding: 5px;
  width: 20%
}

@media (max-width: 1199.98px) {
  .link-usage li, .mn-equip li {
    width: 50%
  }
}

.link-usage li .btn, .mn-equip li .btn {
  width: 100%;
  margin: 0;
  padding: 8px 3px;
  border-radius: 20px / 50%
}

.link-usage .btn-usage, .mn-equip .btn-usage {
  color: #fff;
  background-color: #b5b5b5;
  border-color: #5f9ea0
}

.link-usage .btn-usage:hover, .link-usage .btn-usage:focus, .mn-equip .btn-usage:hover, .mn-equip .btn-usage:focus {
  color: #fff;
  background-color: #5f9ea0;
  border-color: #5f9ea0
}

.link-usage .btn-usage:active, .mn-equip .btn-usage:active {
  color: #fff;
  background-color: #5f9ea0;
  border-color: #5f9ea0
}

.link-usage::after, .mn-equip::after {
  display: block;
  clear: both;
  content: ""
}

.link-menu.row {
  border-top: 1px solid transparent;
  border-left: 1px solid transparent
}

.link-menu.row [class*="col-"] {
  padding: 1.2rem 1rem;
  text-align: center;
  border-right: 1px solid transparent;
  border-bottom: 1px solid transparent;
  background-color: #fff
}

.link-menu.row a {
  color: #575757
}

.link-menu.row a:hover, .link-menu.row a:focus {
  background-color: #eef4f4
}

a, a:hover, a:focus {
  text-decoration: none;
  outline: none
}

.lead {
  line-height: 2rem;
  text-align: justify
}

@media (max-width: 1199.98px) {
  .lead {
    font-size: 0.875rem;
    line-height: 1.5rem
  }
}

.headline li>a, .headline li>div {
  color: #575757;
  background-color: #efefef
}

.headline li>a:hover, .headline li>a:focus {
  background-color: #ddd
}

.headline li:not(:last-child) {
  margin-bottom: 0.25rem
}

.list-styled {
  padding-left: 1.25rem
}

.list-styled li {
  list-style: none;
  text-indent: -1.25rem;
  margin-bottom: .5rem
}

.list-styled li.unstyled {
  text-indent: 0;
  margin-left: -1.25rem
}

.list-styled li.note::before {
  content: "※";
  margin-right: .4rem
}

.list-styled li.circle::before {
  content: "◯";
  margin-right: .4rem
}

#index .usage-search , #index .pickup , #index .information h2, #under .headcopy h2 {
  font-weight: 400;
  font-size: 1.8rem;
  letter-spacing: 0.3rem
}

@media (max-width: 1199.98px) {
  #index .usage-search h2, #index .pickup h2, #index .information h2, #under .headcopy h2 {
    font-size: 1.125rem;
    letter-spacing: 0
  }
}

.text-l2 {
  font-size: 1.2rem
}

.link-arrow-dl {
  display: block;
  color: #b1cbcb;
  -webkit-transition: all 0.2s ease-in-out;
  transition: all 0.2s ease-in-out
}

.link-arrow-dl::after {
  display: inline-block;
  width: 1.0rem;
  margin-left: 0.5rem;
  content: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 12 12'%3e%3cpath stroke-width='1' stroke='%23b1cbcb' d='M2,0 6,6 2,12 M6,0 10,6 6,12'/%3e%3c/svg%3E")
}

.link-arrow-dl:hover, .link-arrow-dl:focus {
  color: #b1cbcb
}

.link-arrow-dl:hover::after, .link-arrow-dl:focus::after {
  margin-left: 1.0rem
}

@media (prefers-reduced-motion: reduce) {
  .link-arrow-dl {
    -webkit-transition: none;
    transition: none
  }
}

button {
  outline: none !important
}

.btn {
  display: block;
  text-align: center;
  position: relative;
  padding: 1rem 1rem;
  font-size: .875rem;
  line-height: 1.6;
  border-radius: .5rem;
  -webkit-transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, -webkit-box-shadow 0.15s ease-in-out;
  transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, -webkit-box-shadow 0.15s ease-in-out;
  transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
  transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out, -webkit-box-shadow 0.15s ease-in-out
}

@media (prefers-reduced-motion: reduce) {
  .btn {
    -webkit-transition: none;
    transition: none
  }
}

.btn:hover, .btn:focus {
  text-decoration: none
}

.btn.link-btn {
  background-color: #82a5c3;
  color: #fff
}

.btn.link-btn::after {
  padding-left: .5rem;
  content: url("../images/common/link-arrow-dl.svg")
}

.btn-outline {
  color: #898989;
  background-color: #fff;
  background-image: none;
  border-color: #b5b5b5
}

.btn-outline:hover, .btn-outline:focus, .btn-outline.focus {
  color: #575757;
  background-color: #efefef;
  border-color: #b5b5b5
}

.btn-outline.disabled, .btn-outline:disabled {
  color: #ddd;
  background-color: transparent
}

.btn-outline:not(:disabled):not(.disabled):active, .btn-outline:not(:disabled):not(.disabled).active {
  color: #575757;
  background-color: #efefef;
  border-color: #b5b5b5
}

.stretch-container>[class*="col-"] {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex
}

.stretch-container>[class*="col-"] .card {
  width: 100%;
  -webkit-box-align: stretch;
  -ms-flex-align: stretch;
  align-items: stretch
}

@media (max-width: 1199.98px) {
  .stretch-container>[class*="col-"] {
    margin-top: 1rem
  }
}

.feature .row.no-gutters [class*="col-"] {
  background-color: #fff
}

.feature .row.no-gutters [class*="col-"]:not(:first-child) {
  border-left: 1px solid #efefef
}

@media (max-width: 1199.98px) {
  .feature .row.no-gutters [class*="col-"]:not(:first-child) {
    border-left: 0
  }
}

.feature .row.no-gutters [class*="col-"] h5 {
  font-weight: bold
}

@media (max-width: 1199.98px) {
  .feature .row.no-gutters>[class*="col-"] {
    margin-top: 1rem
  }
}

@media (max-width: 1199.98px) {
  .layout h5 {
    font-size: 0.875rem
  }
}

.usage-re .stretch-container {
  margin-bottom: -1.8rem
}

.usage-re .stretch-container [class*="col-"] {
  margin-bottom: 1.8rem
}

@media (max-width: 1199.98px) {
  .usage-re .stretch-container [class*="col-"] {
    margin-bottom: 0.8rem
  }
}

.usage-re .stretch-container .card .card-title {
  border-bottom: 1px solid #cacaca;
  padding-bottom: .5rem
}

.usage-re .stretch-container .card .card-title span {
  display: block;
  letter-spacing: 0
}

.usage-re .stretch-container .card .card-text {
  text-align: justify
}

.usage-re .stretch-container .card .price {
  margin-bottom: 1rem
}

.usage-re .stretch-container .card .price::before {
  padding-right: .25rem;
  content: "¥"
}

.usage-re .stretch-container .card .price small {
  font-weight: 600
}

#index .slick-slider li {
  position: relative
}

#index .slick-slider li .slick-slider__text {
  position: absolute;
  top: 10vh;
  left: 10vw;
  overflow: hidden
}

#index .slick-slider li .slick-slider__text span {
  padding: 0 .5rem;
  font-size: 24px;
  letter-spacing: .3rem;
  -webkit-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
  font-weight: 400;
  font-style: normal
}

#index .slick-slider li .slick-slider__text span.first, #index .slick-slider li .slick-slider__text span.second, #index .slick-slider li .slick-slider__text span.third, #index .slick-slider li .slick-slider__text span.fourth {
  color: #fff
}

#index .slick-slider li .slick-slider__text span.first{
  background-color: rgba(0,0,0,0.2)
}

@media (prefers-reduced-motion: reduce) {
  #index .slick-slider li .slick-slider__text span {
    -webkit-transition: none;
    transition: none
  }
}

@media (max-width: 991px) {
  #index .slick-slider li .slick-slider__text {
    top: 9vh;
    left: 6vw
  }
  #index .slick-slider li .slick-slider__text span {
    font-size: 14px;
    letter-spacing: .2rem;
    -webkit-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out
  }
}

@media (max-width: 767px) {
  #index .slick-slider li .slick-slider__text span {
    font-size: 12px;
    letter-spacing: .05rem;
    -webkit-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out
  }
}

#index .slick-slider li .slick-slider__text span {
  position: relative;
  left: -100%
}

#index .slick-slider li.slick-active .slick-slider__text span {
  left: 0
}

#index .link-container a.link-arrow-next {
  font-weight: 700
}

#index .link-container a.link-arrow-next:hover, #index .link-container a.link-arrow-next:focus {
  text-decoration: underline
}

#index .link-container a.link-arrow-next::after {
  display: inline-block;
  width: 48px;
  height: auto;
  margin-left: 0.5rem
}

#index .link-container {
  position: relative;
  top: -60px;
  margin-bottom: -90px
}

@media (max-width: 1199.98px) {
  #index .link-container {
    top: -90px;
    margin-bottom: -30px
  }
}

#index .link-container .card .card-title {
  text-align: center
}

#index .link-container .card .card-title h2 {
  font-weight: 500;
  font-size: 2.0rem;
  letter-spacing: 0.1rem;
  margin: 0;
  color: #312019
}

@media (max-width: 1199.98px) {
  #index .link-container .card .card-title h2 {
    font-size: 1.5rem
  }
}

#index .link-container .card .card-title h2::before {
  display: block;
  font-size: 0.8rem;
  line-height: 2rem;
  color: #000;
  font-weight: 300;
  content: "for"
}

#index .link-container .card .card-title small {
  color: #bf9d6d;
  font-weight: 700;
  font-size: 100%
}

#index .link-container .card .card-text {
  margin-bottom: 4rem;
  font-size: 1rem;
  text-align: center
}

#index .link-container .card a.link-arrow-next {
  position: absolute;
  bottom: 2rem;
  left: 50%;
  -webkit-transform: translate(-50%, 0);
  transform: translate(-50%, 0);
  color: #575757
}

#index .link-container .card a.link-arrow-next::after {
  content: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 48 12'%3e%3cpath stroke-width='1' stroke='%23575757' d='M42,3 48,9 0,9'/%3e%3c/svg%3E")
}

#index .feature h2 {
  color: #bf9d6d;
  font-weight: bold
}

#index .link-menu.row {
  margin: -1px;
  border-top-color: #775d53;
  border-left-color: #775d53
}

#index .link-menu.row [class*="col-"] {
  border-right-color: #775d53;
  border-bottom-color: #775d53
}

#index .pickup-slider .slide-item {
  position: relative;
  background-color: #fff;
  border-bottom: 1px solid #ddd
}

#index .pickup-slider .slide-item:not(:first-child) {
  margin-left: -1px;
  border-left: 1px solid #ddd
}

#index .pickup-slider .slide-item .date {
  position: absolute;
  top: 0;
  left: 0;
  background-color: #eca699;
  color: #fff;
  padding: 0.25rem 0.5rem
}

#index .pickup-slider .slide-item .date small {
  margin-left: 0.25rem
}

#index .pickup-slider .slide-item h5 {
  font-weight: bold
}

#index .link-banner {
  margin-bottom: 3rem;
  margin-top: -1rem
}

#index .link-banner ul {
  margin: 0;
  padding: 0
}

#index .link-banner ul li img {
  margin: .5rem 0
}

#under h4 {
  letter-spacing: 0.1rem
}

@media (max-width: 1199.98px) {
  #under h4 {
    font-size: 1.125rem
  }
}

#under .image-photos div, #under .image-photos-nav div {
  text-align: center
}

#under .image-photos div img, #under .image-photos-nav div img {
  margin: auto
}

#under .image-photos div p, #under .image-photos-nav div p {
  margin: 1rem;
  font-size: 1.2857rem
}

#under .image-photos-nav .nav-photo-wrapper {
  position: relative;
  border-left: 1px solid transparent;
  border-right: 1px solid transparent
}

#under .spec-table>[class*="col-"] {
  padding-top: 1rem;
  padding-bottom: 1rem;
  border-bottom: 1px solid #cacaca;
  border-top: 1px solid #cacaca
}

#under .spec-table>[class*="col-"]:first-child {
  border-color: #898989
}

#under .spec-table>[class*="col-"] dl {
  margin-bottom: 0
}

#under .spec-table>[class*="col-"] dl dt {
  white-space: nowrap
}

@media (max-width: 1199.98px) {
  #under .spec-table>[class*="col-"] dl dd {
    margin-left: 1rem
  }
}

#under .spec-table+.spec-table>[class*="col-"] {
  border-top: none
}

.g-frame {
  position: relative;
  width: 100%;
  padding-top: 56.25%;
}

.g-frame iframe {
  position: absolute;
  top: 0;
  right: 0;
  width: 100% !important;
  height: 100% !important;
}

a.lead-link-p-btn {
  overflow: hidden;
  padding: 1rem 3rem;
  color: #fff;
  border-radius: 0;
  background: rgba(58, 58, 58, 0.8);
  font-size: 20px;
  letter-spacing: 0.5rem;
  -webkit-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out
}

a.lead-link-p-btn span {
  position: relative
}

a.lead-link-p-btn:before {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  content: '';
  -webkit-transition: all .5s ease-in-out;
  transition: all .5s ease-in-out;
  -webkit-transform: translateX(-96%);
  transform: translateX(-96%);
  background: #eca699
}

a.lead-link-p-btn:hover:before {
  -webkit-transform: translateX(0%);
  transform: translateX(0%);
}

a.lead-link-b-btn {
  overflow: hidden;
  padding: 1rem 3rem;
  color: #fff;
  border-radius: 0;
  background: rgba(58, 58, 58, 0.8);
  font-size: 20px;
  letter-spacing: 0.5rem;
  -webkit-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out
}

a.lead-link-b-btn span {
  position: relative
}

a.lead-link-b-btn:before {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  content: '';
  -webkit-transition: all .5s ease-in-out;
  transition: all .5s ease-in-out;
  -webkit-transform: translateX(-96%);
  transform: translateX(-96%);
  background: #436aa9
}

a.lead-link-b-btn:hover:before {
  -webkit-transform: translateX(0%);
  transform: translateX(0%);
}

.fa-right {
  position: absolute;
  top: calc(50% - .5em);
  right: 1rem;
  font-weight: 900;
  font-family: "Font Awesome 5 Free";
  display: inline-block;
  font-style: normal;
  font-variant: normal;
  text-rendering: auto;
  line-height: 1
}
.fa-right:before {
    content: "\f105";
}

@media (max-width: 767px) {
  a.lead-link-b-btn {
    font-size: 12px;
    letter-spacing: 0.2rem;
    font-weight: 600;
    -webkit-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out
  }

  a.lead-link-p-btn {
    font-size: 12px;
    letter-spacing: 0.2rem;
    font-weight: 600;
    -webkit-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out
  }

}

#under .related-link-btn a {
  display: block;
  text-align: center;
  padding: .5rem;
  border: 2px solid rgba(221, 221, 221, 0.8);
  color: #898989
}

#under .related-link-btn a:hover, #under .related-link-btn a:focus {
  color: #717171;
  background-color: #efefef
}

#under .usage-re .table {
  background-color: #fff;
  border: 0
}

#under .usage-re .table thead {
  background-color: #638aac;
  color: #fff
}

#under .usage-re .table thead th, #under .usage-re .table thead td {
  border-bottom: 0
}

#under .usage-re .table thead th {
  white-space: nowrap
}

#under .usage-re .table tbody th, #under .usage-re .table tbody td:nth-last-child(-n+2) {
  white-space: nowrap
}

/*
#under .usage-re .table tbody td:nth-last-child(-n+2) {
  text-align: right
}
*/

#under .headcopy>h2 {
  text-align: center;
  color: #bf9d6d;
  font-weight: bold
}

#under .headcopy>.lead {
  text-align: center;
  color: #fff
}

#under .headcopy .nav-tabs .nav-link {
  text-align: center;
  font-size: 1.1rem;
  padding: 1rem 1rem;
  background-color: #a6bfd2;
  color: #fff
}

#under .headcopy .nav-tabs .nav-link:hover, #under .headcopy .nav-tabs .nav-link:focus {
  background-color: #a6bfd2;
  -webkit-transition: background-color 0.15s linear;
  transition: background-color 0.15s linear
}

#under .headcopy .nav-tabs .nav-link.active {
  background-color: #efefef;
  color: #3a3a3a;
  font-weight: 500
}

@media (max-width: 1199.98px) {
  #under .headcopy .nav-tabs .nav-link {
    font-size: 0.8rem
  }
}

#under.charge-list .content .tab-content .tab-pane, #under.equipment-list .content .tab-content .tab-pane, #under.download-list .content .tab-content .tab-pane, #under.link-list .content .tab-content .tab-pane {
  display: none
}

#under.charge-list .content .tab-content .tab-pane.active, #under.equipment-list .content .tab-content .tab-pane.active, #under.download-list .content .tab-content .tab-pane.active, #under.link-list .content .tab-content .tab-pane.active {
  display: block !important
}

#under.charge-list .content h4, #under.equipment-list .content h4, #under.download-list .content h4, #under.link-list .content h4 {
  color: #8cb3b3
}

#under.charge-list .table, #under.equipment-list .table, #under.download-list .table, #under.link-list .table {
  background-color: #fff;
  border: 0
}

#under.charge-list .table tbody th, #under.equipment-list .table tbody th, #under.download-list .table tbody th, #under.link-list .table tbody th {
  text-align: left;
  white-space: nowrap
}

#under.charge-list .table tbody td.set, #under.equipment-list .table tbody td.set, #under.download-list .table tbody td.set, #under.link-list .table tbody td.set {
  text-align: left;
  white-space: nowrap;
  background-color: #efefef
}

#under.charge-list .table tbody th, #under.charge-list .table tbody td, #under.equipment-list .table tbody th, #under.equipment-list .table tbody td, #under.download-list .table tbody th, #under.download-list .table tbody td, #under.link-list .table tbody th, #under.link-list .table tbody td {
  vertical-align: middle
}

#under.charge-list .table tbody td.maker, #under.equipment-list .table tbody td.maker, #under.download-list .table tbody td.maker, #under.link-list .table tbody td.maker {
  background-color: #efefef
}

#under.charge-list .table tbody td.quantity, #under.equipment-list .table tbody td.quantity, #under.download-list .table tbody td.quantity, #under.link-list .table tbody td.quantity {
  text-align: right
}

#under.about .about-hall .copy h2 {
  font-size: 2rem;
  font-family: "Noto Serif JP", serif;
  font-weight: 600;
  letter-spacing: .2rem;
  color: #b1cbcb
}

#under.about .about-hall .copy .lead {
  color: #fff
}

@media (max-width: 1199.98px) {
  #under.about .about-hall .copy h2 {
    font-size: 1.2rem;
    letter-spacing: .1rem
  }
}

#under.about .about-hall .bg-image {
  position: relative;
  background: url("../../images/about/about_building.png") left center no-repeat
}

#under.about .about-hall .bg-image .copy {
  background-color: #5f9ea0;
  width: auto
}

@media (min-width: 992px) {
  #under.about .about-hall .bg-image {
    background-size: cover;
    padding-top: 42%;
    height: 0
  }
  #under.about .about-hall .bg-image .copy {
    position: absolute;
    top: -40px;
    right: -30vw;
    padding: 40px 80px
  }
}

@media (max-width: 1199.98px) {
  #under.about .about-hall .bg-image {
    background-position: center top;
    background-size: 120%;
    padding-bottom: 180px;
    height: auto
  }
  #under.about .about-hall .bg-image .copy {
    position: relative;
    top: 210px;
    right: -16.66666%;
    padding: 20px
  }
}

#under.about #apDots .swipe-nav {
  padding: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap
}

#under.about #apDots .swipe-nav li {
  list-style: none;
  -ms-flex-preferred-size: 0;
  flex-basis: 0;
  -webkit-box-flex: 1;
  -ms-flex-positive: 1;
  flex-grow: 1;
  width: 60px;
  height: 60px
}

#under.about #apDots .swipe-nav li button {
  width: 100%;
  height: 100%;
  border: none;
  outline: none;
  font-weight: 700;
  color: #898989;
  background-color: #efefef
}

#under.about #apDots .swipe-nav li button::after {
  content: "F"
}

#under.about #apDots .swipe-nav li.slick-active button {
  color: #fff;
  background-color: #898989
}

#under.about.entertainment .headcopy>h2 {
  text-align: center;
  color: #000
}

#under.about.entertainment .headcopy>.lead {
  text-align: center;
  color: #000
}

#under.about.entertainment .color-bg {
  color: #fff
}

#under.about.entertainment #apDots .swipe-nav li button {
  background-color: #775d53;
  color: #fff
}

#under.about.entertainment #apDots .swipe-nav li.slick-active button {
  background-color: #fff;
  color: #898989
}

#under.about.entertainment .related-link-btn a {
  color: #fff;
  background-color: rgba(255, 255, 255, 0.4)
}

#under.about.entertainment .related-link-btn a:hover, #under.about.entertainment .related-link-btn a:focus {
  color: #717171;
  background-color: #efefef
}

#under.flow .content h4, #under.tos .content h4, #under.caution .content h4, #under.privacy .content h4 {
  padding-bottom: 1rem;
  padding-top: 1rem;
  border-bottom: 1px solid #cacaca;
  border-top: 1px solid #cacaca
}

#under.flow .content h5, #under.tos .content h5, #under.caution .content h5, #under.privacy .content h5 {
  color: #a6bfd2
}

#under.flow .content ul li, #under.tos .content ul li, #under.caution .content ul li, #under.privacy .content ul li {
  text-align: justify
}

#under.flow .content dl dt {
  font-size: 1rem
}

#under.flow .content dl dt span {
  display: inline-block;
  width: 45px;
  line-height: 45px;
  margin-bottom: 15px;
  margin-right: 15px;
  background-color: #5f9ea0;
  color: #fff;
  text-align: center
}

#under.flow .content dl dd {
  margin-left: 60px;
  margin-bottom: 2rem
}

@media (max-width: 1199.98px) {
  #under.flow .content dl dd {
    margin-left: 0
  }
}

#under.download-list .content .link-menu.row, #under.link-list .content .link-menu.row {
  margin: -1px;
  border-top-color: #ddd;
  border-left-color: #ddd
}

#under.download-list .content .link-menu.row [class*="col-"], #under.link-list .content .link-menu.row [class*="col-"] {
  border-right-color: #ddd;
  border-bottom-color: #ddd
}

#under.download-list .content a::before, #under.link-list .content a::before {
  font-family: 'Font Awesome 5 Free';
  font-weight: 900;
  font-size: 1.125rem;
  margin-right: 7.5px
}

#under.download-list .content a.pdf::before, #under.link-list .content a.pdf::before {
  content: "\f1c1"
}

#under.download-list .content a.wrd::before, #under.link-list .content a.wrd::before {
  content: "\f1c2"
}

#under.download-list .content a.exl::before, #under.link-list .content a.exl::before {
  content: "\f1c3"
}

#under.download-list .content a.zip::before, #under.link-list .content a.zip::before {
  content: "\f1c6"
}

#under.schedule #nav-month .this-month {
  color: #fff;
  font-size: 5rem;
  font-family: 'Roboto Condensed', sans-serif;
  font-weight: normal;
  line-height: 1.1;
  letter-spacing: .1rem;
  text-align: center
}

#under.schedule #nav-month .this-month small {
  font-size: .875rem
}

@media (max-width: 1199.98px) {
  #under.schedule #nav-month .this-month {
    font-size: 3rem
  }
}

#under.schedule #nav-month a.nav-month-next, #under.schedule #nav-month a.nav-month-prev {
  color: #efefef;
  font-size: 1.2rem;
  font-weight: 500;
  opacity: 0.8
}

#under.schedule #nav-month a.nav-month-next:hover, #under.schedule #nav-month a.nav-month-next:focus, #under.schedule #nav-month a.nav-month-prev:hover, #under.schedule #nav-month a.nav-month-prev:focus {
  opacity: 1.0
}

#under.schedule #nav-month a.nav-month-next::before, #under.schedule #nav-month a.nav-month-next::after, #under.schedule #nav-month a.nav-month-prev::before, #under.schedule #nav-month a.nav-month-prev::after {
  display: inline-block;
  width: 30px
}

@media (max-width: 1199.98px) {
  #under.schedule #nav-month a.nav-month-next, #under.schedule #nav-month a.nav-month-prev {
    font-size: 0;
    height: 0;
    margin: 0
  }
}

#under.schedule #nav-month a.nav-month-next::after {
  margin-left: 1rem;
  content: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='%23ffffff' stroke='none' viewBox='0 0 30 10'%3e%3cpath d='M0,0 30,5 0,10'/%3e%3c/svg%3E")
}

#under.schedule #nav-month a.nav-month-prev::before {
  margin-right: 1rem;
  content: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='%23ffffff' stroke='none' viewBox='0 0 30 10'%3e%3cpath d='M30,0 0,5 30,10'/%3e%3c/svg%3E")
}

#under.schedule .schedule-list>.row {
  margin-left: 0;
  margin-right: 0
}

#under.schedule .schedule-list>.row+.row {
  margin-top: 1.5rem
}

#under.schedule .schedule-list>.row+.align-items-center {
  background-color: #fff
}

#under.schedule .schedule-list>.row+.align-items-center>[class*="col"] {
  background-color: inherit
}

#under.schedule .schedule-list>.row>[class*="col"] {
  background-color: #fff
}

#under.schedule .schedule-list>.row>[class*="col"].date, #under.schedule .schedule-list>.row>[class*="col"].date small {
  font-family: 'Roboto Condensed', sans-serif;
  font-weight: 600
}

#under.schedule .schedule-list>.row>[class*="col"].date, #under.schedule .schedule-list>.row>[class*="col"] .info {
  padding-top: 1rem;
  padding-bottom: 1rem
}

#under.schedule .schedule-list>.row>[class*="col"].date {
  text-align: center
}

#under.schedule .schedule-list>.row>[class*="col"].date h3 {
  font-size: 2.4rem;
  line-height: 1.2
}

#under.schedule .schedule-list>.row>[class*="col"].date h3.weekday {
  color: #3a3a3a
}

#under.schedule .schedule-list>.row>[class*="col"].date h3.saturday {
  color: #17a2b8
}

#under.schedule .schedule-list>.row>[class*="col"].date h3.sunday {
  color: #dc5135
}

#under.schedule .schedule-list>.row>[class*="col"].date h3 small {
  display: block;
  font-size: .875rem;
  text-transform: uppercase
}

#under.schedule .schedule-list>.row>[class*="col"].date h3 small.month::after {
  display: block;
  content: "･";
  line-height: 1.0
}

#under.schedule .schedule-list>.row>[class*="col"].date div.tilde {
  padding: 1rem;
  -webkit-transform: rotate(-90deg);
  transform: rotate(-90deg)
}

#under.schedule .schedule-list>.row>[class*="col"] .info h3 {
  margin-top: .25rem
}

#under.schedule .schedule-list>.row>[class*="col"] .info h3 small {
  display: block;
  margin-top: 0.5rem;
  font-size: 1rem;
  color: #f08700
}

#under.schedule .schedule-list>.row>[class*="col"] .info dl dt {
  color: #b5b5b5
}

#under.schedule .schedule-list>.row>[class*="col"] .info dl dd {
  padding-right: 0
}

#under.schedule .schedule-list>.row>[class*="col"] .image {
  background-color: #efefef
}

#under.schedule .schedule-list>.row>[class*="col"] .image::before {
  content: "";
  display: block;
  padding-top: 100%
}

#under.schedule .schedule-list>.row>[class*="col"] .image .d-flex {
  margin: 0;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%
}

#under.schedule .schedule-list>.row>[class*="col"] .image .d-flex .img-fluid-s {
  max-width: 70%;
  max-height: 100%;
  width: auto;
  height: auto
}

@media (max-width: 1199.98px) {
  #under.schedule .schedule-list>.row>[class*="col"] .info {
    padding-left: 0
  }
  #under.schedule .schedule-list>.row>[class*="col"] .info h3 {
    font-size: 1.2rem
  }
}

.slick-slider {
  position: relative;
  display: block;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -ms-touch-action: pan-y;
  touch-action: pan-y;
  -webkit-tap-highlight-color: transparent
}

.slick-list {
  position: relative;
  overflow: hidden;
  display: block;
  margin: 0;
  padding: 0
}

.slick-list:focus {
  outline: none
}

.slick-list.dragging {
  cursor: pointer;
  cursor: hand
}

.slick-slider .slick-track, .slick-slider .slick-list {
  -webkit-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0)
}

.slick-track {
  position: relative;
  left: 0;
  top: 0;
  display: block;
  margin-left: auto;
  margin-right: auto
}

.slick-track:before, .slick-track:after {
  content: "";
  display: table
}

.slick-track:after {
  clear: both
}

.slick-loading .slick-track {
  visibility: hidden
}

.slick-slide {
  float: left;
  height: 100%;
  min-height: 1px;
  display: none
}

[dir="rtl"] .slick-slide {
  float: right
}

.slick-slide img {
  display: block
}

.slick-slide.slick-loading img {
  display: none
}

.slick-slide.dragging img {
  pointer-events: none
}

.slick-initialized .slick-slide {
  display: block
}

.slick-loading .slick-slide {
  visibility: hidden
}

.slick-vertical .slick-slide {
  display: block;
  height: auto;
  border: 1px solid transparent
}

.slick-arrow.slick-hidden {
  display: none
}

.slick-loading .slick-list {
  background: #fff url("../images/ajax-loader.gif") center center no-repeat
}

@font-face {
  font-family: "slick";
  src: url("../fonts/slick.eot");
  src: url("../fonts/slick.eot?#iefix") format("embedded-opentype"), url("../fonts/slick.woff") format("woff"), url("../fonts/slick.ttf") format("truetype"), url("../fonts/slick.svg#slick") format("svg");
  font-weight: normal;
  font-style: normal
}

.slick-prev, .slick-next {
  position: absolute;
  display: block;
  height: 20px;
  width: 30px;
  line-height: 0px;
  font-size: 0px;
  cursor: pointer;
  background: transparent;
  color: transparent;
  top: 50%;
  -webkit-transform: translate(0, -50%);
  transform: translate(0, -50%);
  padding: 0;
  border: none;
  outline: none
}

.slick-prev:hover, .slick-prev:focus, .slick-next:hover, .slick-next:focus {
  outline: none;
  background: transparent;
  color: transparent
}

.slick-prev:hover:before, .slick-prev:focus:before, .slick-next:hover:before, .slick-next:focus:before {
  opacity: 1
}

.slick-prev.slick-disabled:before, .slick-next.slick-disabled:before {
  opacity: .25
}

.slick-prev {
  left: -40px
}

[dir="rtl"] .slick-prev {
  left: auto;
  right: -40px
}

.slick-prev:before {
  content: url("../images/common/link-arrow-prev.svg")
}

[dir="rtl"] .slick-prev:before {
  content: url("../images/common/link-arrow-next.svg")
}

.slick-next {
  right: -40px
}

[dir="rtl"] .slick-next {
  left: -40px;
  right: auto
}

.slick-next:before {
  content: url("../images/common/link-arrow-next.svg")
}

[dir="rtl"] .slick-next:before {
  content: url("../images/common/link-arrow-prev.svg")
}

.slick-dotted.slick-slider {
  margin-bottom: 30px
}

.slick-dots {
  position: absolute;
  bottom: -25px;
  list-style: none;
  display: block;
  text-align: center;
  padding: 0;
  margin: 0;
  width: 100%
}

.slick-dots li {
  position: relative;
  display: inline-block;
  height: 20px;
  width: 20px;
  margin: 0 5px;
  padding: 0;
  cursor: pointer
}

.slick-dots li button {
  border: 0;
  background: transparent;
  display: block;
  height: 20px;
  width: 20px;
  outline: none;
  line-height: 0px;
  font-size: 0px;
  color: transparent;
  padding: 5px;
  cursor: pointer
}

.slick-dots li button:hover, .slick-dots li button:focus {
  outline: none
}

.slick-dots li button:hover:before, .slick-dots li button:focus:before {
  opacity: 1
}

.slick-dots li button:before {
  position: absolute;
  top: 0;
  left: 0;
  content: "•";
  width: 20px;
  height: 20px;
  font-family: "slick";
  font-size: 6px;
  line-height: 20px;
  text-align: center;
  color: #000;
  opacity: .25;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale
}

.slick-dots li.slick-active button:before {
  color: #000;
  opacity: .75
}

/*charge_page_css*/
.table-bordered tr th.border-b-double,
.table-bordered tr td.border-b-double {
  border-bottom: 3px double #cacaca;
}
.table-bordered tr th.border-l-double,
.table-bordered tr td.border-l-double {
  border-left: 3px double #cacaca;
}
.table-bordered.table-charge thead th {
  border-bottom: 1px solid #cacaca;
  font-weight: normal;
  vertical-align:middle;
  background-color:#7d8e9c;
  color:#fff;
}
.table-bordered.table-charge thead th span {
  display:block;
  font-size:0.765rem;
}
.table-bordered.table-charge thead th.title {
  background-color:#638aac;
  font-size: 1rem;
}
.table-bordered.table-charge thead th.time-zone {
  padding: 0.2rem;
  font-size: 0.7rem;
  border-top-style: none;
}
.table-bordered.table-charge tbody th {
  text-align:center;
}
