.ex-display { font-size: 60px; font-weight: 700; }
.ex-container { width: 1038px; margin: 60px auto 100px; }
.ex-container .ex-guide { margin: 2px 0 8px; }
.ex-spacer-h { height: 100px; }
.ex-page-home > .ex-container:last-child { margin-bottom: 130px; }
.ex-header { position: relative; height: 100px; padding: 10px 20px; }
.ex-header .ex-left > *, .ex-header .ex-nav > * { float: left; line-height: 100px; }
.ex-header .ex-sitename br { display: none; }
.ex-toggle { display: none; }
.ex-header .ex-nav { float: right; }
.ex-header .ex-nav .ex-nv > li { float: left; margin: 0 20px; }
.ex-header .ex-book { margin: 25px 10px; }
.ex-header .ex-book a { display: block; padding: 0 28px; }
.ex-header .ex-spnv { display: none; }
.ex-logo { width: 100px; height: 100px; line-height: 100px; }
.ex-lang .lang-toggle { min-height: 0; justify-content: center; }
.ex-fv > .ex-beige { height: calc(100% + 10%); }
.ex-main .ex-trim-front, .ex-main .ex-trim-back { width: calc(100% - 5%); }
.ex-main--top .ex-tt { width: calc(90% - 5%); height: 3em; top: calc(50% + -2em); }
.ex-main--top .ex-tt span { top: 0; }
.ex-page-home .ex-scrl a { display: block; }
.ex-arrow-d { height: 70px; }
.ex-arrow-d svg { top: 22px; }
.ex-txt-l, .ex-txt-r { display: table-cell; }
.ex-txt-l { width: 35%; }
.ex-txt-r { width: 60%; }
.ex-head span { margin: -30px 0 30px; }
.ex-head h2 { padding-bottom: 100px; }
.ex-btn { margin: 50px 0 0; width: 210px; }
.ex-holder .ex-img-s { width: 45%; height: 85%; }
.ex-holder .ex-img-m { width: 55%; top: 15%; }
.ex-holder .ex-top { margin-top: 5%; }
.ex-holder .ex-pd-r { right: 5%; }
.ex-holder .ex-pd-l { left: 5%; }
.ex-holder--double { margin-bottom: 80px; }
.ex-holder--single { margin-bottom: -10px; }
.ex-info { margin: 30px 30px 0 0; }
.ex-info dd, .ex-info dt { margin-bottom: 12px; }
.ex-topinfo .ex-store { width: 35%; display: inline-block; float: left; }
.ex-topinfo .ex-btn { position: absolute; }
.ex-footer .ex-foot-l, .ex-footer .ex-foot-r { height: 30vw; }
.ex-footer .ex-belt { padding: 50px; }
.ex-footer .ex-foot-l { width: calc(50% - 5%); }
.ex-footer .ex-foot-r { width: calc(50% + 5%); }
.ex-footer .ex-links { display: table-cell; padding: 0 160px 0 100px; }
.ex-footer .ex-links li a { line-height: 70px; }
.ex-footer .ex-links li a .ex-arrow { height: 70px; }
.ex-footer .ex-links li a .ex-arrow svg { top: 22px; }
.ex-footer .ex-imgarea { top: -70px; }
.ex-footer .ex-imgarea .ex-btn { bottom: 80px; left: min(60%, calc(100% - 240px)); }
.ex-footer-bottom { padding: 0 80px 50px; }
.ex-footer-bottom > * { line-height: 100px; }
.ex-footer-bottom .ex-copy { width: 50%; }
.ex-footer-bottom .ex-goup { display: none; }
.ex-slider-top { height: 100%; width: calc(90% - 5%); }
.ex-progress { bottom: 20%; left: -10%; }
.ex-slide-intro { z-index: 110; }
.ex-mbtn { width: 50%; background: rgba(255, 255, 255, 0); opacity: 0; }
.ex-mbtn span { padding: 0 20px; width: 66px; height: 70px; }
.ex-mbtn--prev { left: 0; }
.ex-mbtn--next { right: 0; }
.ex-mbtn svg { top: 22px; }
.ex-mbtn--prev svg { left: 20px; }
.ex-mbtn--next svg { right: 20px; }
.ex-sub .ex-main { height: 500px; margin: 0 0 200px; }
.ex-sub .ex-main .ex-trim-img { height: 100%; width: 75%; top: 50px; }
.ex-sub .ex-main .ex-tt span { top: calc(50% - 0.2em); }
.ex-sub .ex-fv > .ex-beige { height: calc(100% + 100px); }
.ex-about-slider .ex-tt { height: 100%; top: 0px; width: 100%; line-height: 1em; }
.ex-about-slider .ex-trim-area { width: 55%; top: 15%; left: 5%; }
.ex-about-slider .ex-tt span { width: 80%; left: 90%; top: 79%; }
.ex-dslider-wrap.ex-left { width: 55%; top: 15%; left: 5%; z-index: 3; }
.ex-dslider-wrap.ex-right { height: 85%; width: 45%; }
.ex-dslider-box { left: 5%; height: 100%; width: 55%; top: 15%; }
.ex-dslider-ctrl { left: 0; }
.ex-dslider-ctrl button { width: 80px; height: 80px; }
.ex-dslider-ctrl button span { height: 80px; }
.ex-dslider-ctrl button svg { left: 27px; top: 27px; }
.ex-dslider-ctrl button.ex-next svg { left: 26px; }
.ex-social { margin: 0 auto 140px; }
.ex-social li { margin: 0 20px; }
.ex-resv-inner { margin: 0 auto 80px; }
.ex-resv-inner .ex-btn { margin: 50px auto; }
.ex-resv-inner h2 { padding-bottom: 0px; }
.ex-resv-inner h2::after { display: none; }
.ex-resv-inner .ex-tel-big { font-size: 30px; }
.ex-resv-list { display: flex; }
.ex-footer .ex-imgarea .ex-tt span { width: 70%; font-size: 60px; }
.ex-menu-list { width: 90%; padding: 0 50px; }
.ex-menu-list .ex-beige.ex-shift { height: calc(80% - 150px); }
.ex-menu-list > ul > li { width: 49%; padding: 0 50px; }
.ex-menu-list .ex-thumb { height: 300px; }
.ex-menu-list .ex-data { margin: 30px 0 70px; }
.ex-menu-list h3 { margin: 30px 0 15px; }
.ex-plan-head { padding: 0 5% 5%; }
.ex-plan-list .ex-memo { margin: 10px 0 40px; }
.ex-lineup { padding: 0 20px; }
.ex-spec { width: 1140px; padding: 5% 10% 6%; }
.ex-spec th, .ex-spec td { padding: 20px 0; }
.ex-spec th { width: 30%; }
.ex-spec td { width: 70%; }
.ex-page-contact .ex-txt-l { width: 50%; }
.ex-page-contact .ex-txt-r { width: 40%; }
.ex-map { width: 70%; height: 100%; }
.ex-map-area { margin: 0 0 160px; }
.ex-map-txt { display: table; position: absolute; height: 100%; width: 30%; top: 0; left: 60%; }
.ex-map-txt .ex-display { font-size: 3.8vw; }
.ex-map-txt .ex-btn { float: left; }
.ex-wh2 { height: calc(100svh * 2 / 3); }
.ex-wh3 { height: calc(100svh * 2 / 3); }
.ex-page-home .ex-fv { height: 100svh; }
@media (max-width: 1280px) {
  .ex-footer .ex-foot-l, .ex-footer .ex-foot-r { height: 40vw; }
  .ex-lang .lang-current { display: none; }
}
@media (max-width: 1038px) {
  .ex-header { height: 90px; padding: 0 10px; }
  .ex-header .ex-left > *, .ex-header .ex-nav > * { line-height: 90px; }
  .ex-header .ex-left span { margin: 0; width: 68%; }
  .ex-header .ex-sitename { line-height: 1.2em; }
  .ex-header .ex-sitename br { display: block; }
  .ex-header .ex-nav .ex-nv > li { margin: 0 1vw; }
  .ex-logo { width: 90px; height: 90px; line-height: 90px; }
  .ex-header .ex-nav, .ex-overlay, .ex-toggle span { transition: all 0.3s; }
  .ex-container { width: 100%; padding: 0 5vw; }
  .ex-main--top .ex-tt span { font-size: 8vw; line-height: 1em; }
  .ex-tt span, .ex-footer .ex-imgarea .ex-tt { font-size: 6vw; line-height: 0.9em; }
  .ex-footer .ex-links { padding: 0 80px; }
  .ex-menu-list > ul > li { padding: 0 3vw; }
  .ex-spec { width: 90%; }
}
@media (min-width: 769px) {
  .ex-mslide::before { content: ""; position: absolute; width: 100%; height: 100%; top: 0; left: 0; opacity: .5; background: #fff; z-index: 1; pointer-events: none; transition: opacity .3s ease-in-out .2s; }
  .ex-mslide.is-current::before { opacity: 0; }
  .ex-mlist.hover-l .ex-mslide { transform: translateX(calc(var(--o, 0) * 100% + 60px)); }
  .ex-mlist.hover-r .ex-mslide { transform: translateX(calc(var(--o, 0) * 100% - 60px)); }
  .ex-mlist.is-clicked.hover-l .ex-mslide, .ex-mlist.is-clicked.hover-r .ex-mslide { transform: translateX(calc(var(--o, 0) * 100%)); }
  .ex-mslider:hover .ex-mbtn:hover { opacity: 1; }
  .ex-mslider:hover .ex-mbtn--prev:hover span { transform: translateX(-30px); }
  .ex-mslider:hover .ex-mbtn--next:hover span { transform: translateX(30px); }
  .ex-dslider-ctrl button.ex-next:hover span { transform: translateX(10px); }
  .ex-dslider-ctrl button.ex-prev:hover span { transform: translateX(-10px); }
  .ex-dslider-ctrl button.ex-next.is-clicked:hover span { transform: translateX(20px); }
  .ex-dslider-ctrl button.ex-prev.is-clicked:hover span { transform: translateX(-20px); }
  .ex-dslider-ctrl button.ex-next.is-clicked:hover, .ex-dslider-ctrl button.ex-prev.is-clicked:hover { background: #564a39; }
  .ex-header .ex-nav .ex-nv > li { transition: all .5s; }
  .ex-header .ex-nav .ex-nv > li:hover { opacity: .5; }
  .ex-header .ex-book:hover { background: #fff; transition: all .3s .6s; }
  .ex-header .ex-book:hover::before, .ex-header .ex-book:hover::after { transform: translate3d(0, 100%, 0); }
  .ex-header .ex-book:hover::after { transition-delay: 0.175s; }
  .ex-header .ex-book:hover span { color: #000; transform: translateX(-7px); padding: 0 10px; }
  .ex-header .ex-book:hover span.ex-book-i { color: #000; transform: translateY(0) scale(0.7); opacity: 1; transition: transform .3s ease-in-out .2s, opacity .3s ease-in-out .3s; font-size: 10px; }
  .ex-sub .ex-scrl a { transition: all .5s; }
  .ex-sub .ex-scrl a:hover { color: #333; }
  .ex-btn { transition: .3s ease .2s; }
  .ex-btn::after { transition: .3s ease; transform-origin: right; }
  .ex-btn { background-image: linear-gradient(to bottom, #000, #000 50%, #fff 50%, #fff); background-position: 0 0; background-size: 100% 200%; }
  .ex-btn.enter { color: #000; background-position: 0 100%; padding: 0 40px; }
  .ex-btn.enter::after { background: #000; width: 80%; right: 0; }
  .ex-btn.enter.out::after { width: 80%; right: 10%; background: #000; }
  .ex-btn.out::after { width: 20%; transform-origin: left; right: 100%; background: #000; }
  .ex-btn.leave::after { width: 0%; transform: translateX(-30px); right: initial; left: 0; transition: transform .3s ease 0s, width .3s ease 0s, right .2s ease .6s, left .2s ease .6s, background .2s ease .3s; }
  .ex-footer .ex-links li a .ex-links-t, .ex-footer .ex-links li a .ex-ext { transition: .3s ease; }
  .ex-footer .ex-links li:hover a .ex-arrow { transform: translateX(10px); }
  .ex-footer .ex-links li:hover a .ex-ext { opacity: 1; }
  .ex-footer-bottom .ex-sns li a { transition: .3s ease; }
  .ex-footer-bottom .ex-sns li a:hover { color: #ccc; }
}
