.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; }
.ex-footer .ex-foot-l, .ex-footer .ex-foot-r { height: 40vw; }
.ex-lang .lang-current { display: none; }
.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%; }
.ex-header { position: fixed; top: 0; left: 0; height: 60px; background: #fff; padding: 0; }
.ex-header .ex-left > *, .ex-header .ex-nav > * { float: none; line-height: 60px; }
.ex-header .ex-nav-cont { padding: 60px 50px; display: table-cell; vertical-align: middle; }
.ex-header .ex-nav .ex-nav-bg { position: absolute; width: 100%; height: 100%; top: 0; left: 0; background: #fff; z-index: -1; opacity: 0; }
.ex-header .ex-spnv { display: block; width: 100%; position: absolute; left: 0; bottom: 30px; }
.ex-header .ex-spnv .ex-sns { display: block; position: relative; width: 200px; float: none; margin: 0 auto; opacity: 0.6; }
.ex-header .ex-spnv .ex-sns ul, .ex-header .ex-spnv .ex-sns p { display: inline-block; float: left; }
.ex-header .ex-spnv .ex-sns ul li { margin: 0 10px; }
.ex-header .ex-nav { height: 100%; width: 100%; box-sizing: border-box; }
.ex-header .ex-logo { width: 40px; height: 40px; line-height: 60px; padding: 0; margin: 10px; }
.ex-header .ex-nav { float: none; display: table; position: relative; }
.ex-header .ex-nav .ex-nv { width: 100%; display: table-cell; vertical-align: middle; }
.ex-header .ex-nav .ex-nv > li { float: none; line-height: 4; border-image-width: 100%; }
.ex-header .ex-nav .ex-nv > li > a { display: block; }
.ex-header .ex-sitename { font-size: 10px; }
.ex-header .ex-book { width: 100%; margin: 20px 0px; padding: 0 0; }
.ex-header .ex-book a { display: block; max-width: 200px; padding: 14px 24px; margin: 0 auto; line-height: 25px; text-align: center; }
.ex-nav-lang .ex-lang { display: inline-block; vertical-align: top; }
.ex-lang .lang-toggle { min-height: 48px; justify-content: flex-start; }
.ex-lang .lang-current { display: inline; }
.ex-lang .lang-menu { left: 0; right: auto; }
.ex-toggle { display: block; padding: 22px 20px; top: 0; right: 0; transition: all .3s 0s; position: fixed; width: 60px; height: 60px; z-index: 300; box-sizing: border-box; }
.ex-toggle span.ex-t2 { margin: 5px auto; }
.ex-overlay { position: fixed; top: 0; left: 0; width: 100%; height: 100%; background: rgba(189, 159, 119, 0.3); z-index: -2; }
.ex-header .ex-nav, .ex-header .ex-nav .ex-nav-bg, .ex-header .ex-nav-cont { opacity: 0; transform: scale(0.95) translateY(10px); transition: all .3s 0s; }
.ex-nav-wrap { width: 100%; height: 100%; float: none; position: fixed; left: 0; top: 0; opacity: 0; box-sizing: border-box; transform: translate(0, 100%); transition: opacity .3s .5s, transform .3s .3s, visibility 0s .8s; visibility: hidden; }
.ex-header .ex-overlay { opacity: 0; transform: translate(0, 100%); transition: opacity .3s 0s, transform .3s .3s, visibility 0s .6s; visibility: hidden; }
.is-openside .ex-header .ex-nav, .is-openside .ex-header .ex-nav .ex-nav-bg, .is-openside .ex-header .ex-nav-cont { opacity: 1; transform: scale(1) translateY(0); transition: opacity .3s .2s, transform .3s 0s; }
.is-openside .ex-nav-wrap { transform: translate(0, 0); opacity: 1; transition: opacity .2s 0s, transform .3s .1s, visibility 0s 0s; visibility: visible; }
.is-openside .ex-header .ex-overlay { opacity: 1; transform: translate(0, 0); transition: opacity .3s .3s, transform .3s 0s, visibility 0s 0s; visibility: visible; }
html.is-openside, html.is-openside body { overflow: hidden; }
.ex-toggle span { display: block; height: 2px; width: 20px; background: #333; margin: 0 auto; transform: rotate(0deg) translate(0, 0); transition: all .4s 0s; }
.is-openside .ex-toggle span { transition: all .2s 0s; }
.is-openside .ex-toggle span.ex-t1 { transform: rotate(45deg) translate(5px, 5px); }
.is-openside .ex-toggle span.ex-t2 { opacity: 0; }
.is-openside .ex-toggle span.ex-t3 { transform: rotate(-45deg) translate(5px, -5px); }
.ex-arrow-d { height: 60px; }
.ex-arrow-d svg { top: 17px; }
.ex-fv { margin-top: 60px; }
.ex-fv > .ex-beige { height: calc(100% + 11%); }
.ex-slider-top { width: 100%; margin-top: 40%; height: 40%; }
.ex-progress { right: initial; left: 20px; bottom: 40%; }
.ex-main--top { height: 100%; }
.ex-main--top .ex-tt { width: calc(100% - 20px); margin-top: calc(40% - 15px); height: 40%; top: 0; }
.ex-main--top .ex-tt span { top: -2em; left: 20px; font-size: 11vw; line-height: 0.9; }
.ex-page-home .ex-scrl { position: absolute; bottom: 10%; left: 0; width: 100%; }
.ex-page-home .ex-scrl a { display: block; width: 300px; margin: 30px auto; }
.ex-footer.ex-footer--top { margin-top: calc(30vw + 40px); }
.ex-page-home > .ex-container:last-child { margin-bottom: 5vw; }
.ex-footer .ex-foot-l, .ex-footer .ex-foot-r { height: 30vw; }
.ex-footer .ex-foot-l { display: block; width: 100%; }
.ex-footer .ex-links { display: block; margin: 40px auto 50px; padding: 0; width: 300px; }
.ex-footer .ex-links li a { line-height: 60px; }
.ex-footer .ex-links li a .ex-arrow { height: 60px; }
.ex-footer .ex-links li a .ex-arrow svg { top: 17px; }
.ex-footer .ex-belt { padding: 20px; }
.ex-footer-bottom { padding: 0 30px 20px; }
.ex-footer-bottom > * { line-height: 40px; }
.ex-footer-bottom .ex-sns { float: none; width: 100%; text-align: left; }
.ex-footer-bottom .ex-sns ul { margin-left: 6px; }
.ex-footer-bottom .ex-copy { width: 100%; }
.ex-footer-bottom .ex-copy .ex-logo { display: none; }
.ex-footer-bottom .ex-goup { display: block; position: absolute; right: 0; bottom: 0; background: #000; width: 50px; height: 50px; text-align: center; }
.ex-footer-bottom .ex-goup a { display: flex; align-items: center; justify-content: center; width: 50px; height: 50px; color: #fff; }
.ex-footer-bottom .ex-goup svg { display: block; width: 20px; height: 20px; transform: rotate(90deg); }
.ex-footer { margin-top: 30vw; }
.ex-footer .ex-foot-r { position: absolute; top: -30vw; width: 100%; }
.ex-footer .ex-foot-l { height: initial; }
.ex-footer .ex-imgarea { top: 1px; }
.ex-footer .ex-imgarea .ex-trim-front, .ex-footer .ex-imgarea .ex-trim-back { padding: 0 20px; }
.ex-footer .ex-imgarea .ex-tt span { left: 0; font-size: 6vw; width: 50%; font-weight: 900; letter-spacing: 0em; }
.ex-footer .ex-imgarea .ex-btn { bottom: calc(50% - 30px); left: min(52%, calc(100% - 280px)); }
.ex-tt span { font-size: 13vw; }
h3 { line-height: 1.4; }
.ex-display { font-size: 30px; font-weight: 900; }
p { font-size: 12px; }
.ex-btn { width: 250px; margin: 20px 0 0; }
.ex-txt-l, .ex-txt-r { display: block; }
.ex-txt-l { width: 100%; }
.ex-txt-r { width: 100%; }
.ex-txt-l .ex-inner, .ex-txt-r .ex-inner { padding: 0 5px; }
.ex-head { margin: -30px 0 0 10px; }
.ex-head span { margin: 0 0 10px; }
.ex-head h2 { padding-bottom: 30px; }
.ex-head .ex-quote::before { left: -0.6em; top: -0.2em; }
.ex-container { margin: 0 auto 5vw; }
.ex-container .ex-guide { margin: 15px 0 4px; }
.ex-holder .ex-pd-r { right: 0; }
.ex-holder .ex-pd-l { left: 0; }
.ex-holder .ex-top { margin-top: 0; }
.ex-holder .ex-img-m { width: 95%; top: 60%; }
.ex-holder .ex-img-s { width: 65%; height: 70%; z-index: 2; }
.ex-holder--double { margin-bottom: 35%; }
.ex-holder--double.ex-holder--flip { margin-bottom: 30%; }
.ex-holder--single { margin-top: 0px; margin-bottom: 10px; }
.ex-topinfo .ex-btn { position: relative; }
.ex-topinfo .ex-store { width: 50%; }
.ex-topinfo .ex-head { margin-left: 0; }
.ex-info { margin: 10px 0 20px; }
.ex-info dd, .ex-info dt { margin-bottom: 0px; }
.ex-main .ex-trim-front, .ex-main .ex-trim-back { width: 100%; }
.ex-sub .ex-main { height: 200px; margin: 0 0 80px; }
.ex-sub .ex-main .ex-trim-img { top: 0; width: 79%; height: 90%; position: relative; }
.ex-sub .ex-main .ex-trim-img::after { content: ""; position: absolute; width: 100%; height: 100%; top: 0; left: 0; background: #000; opacity: 0.2; z-index: 5; pointer-events: none; }
.ex-sub .ex-main .ex-tt span { top: calc(50% - 0.6em); }
.ex-sub .ex-main .ex-tt { height: 90%; }
.ex-sub .ex-scrl { display: none; }
.ex-sub .ex-fv > .ex-beige { height: calc(100% + 20px); }
.ex-dslider-wrap.ex-left { left: 0; width: 95%; top: 0%; z-index: 2; }
.ex-dslider-wrap.ex-right { width: 65%; height: 90%; top: 90%; }
.ex-dslider-box { left: 0; top: 0; height: 50px; width: 100%; right: 0; }
.ex-dslider-ctrl { right: 5%; left: initial; }
.ex-dslider-ctrl button { width: 50px; height: 50px; }
.ex-dslider-ctrl button span { height: 50px; }
.ex-dslider-ctrl button svg { top: 12px; left: 12px; }
.ex-dslider-ctrl button.ex-next svg { left: 11px; }
.ex-about-slider { margin: 20% 0 35%; }
.ex-about-slider .ex-trim-area { width: 100%; left: 0; top: 90%; }
.ex-about-slider .ex-tt { height: 90%; top: 0; width: 65%; line-height: 1em; left: initial; right: 0; }
.ex-about-slider .ex-tt span { font-size: 9vw; width: 120%; box-sizing: border-box; top: 37%; left: -45%; }
.ex-social { margin: 0 auto 40px; max-width: 500px; }
.ex-social li { margin: 5px auto; width: 100%; }
.ex-menu-list { width: 100%; padding: 0 10%; }
.ex-menu-list > ul > li { width: 100%; float: none; padding: 0 20px; }
.ex-menu-list .ex-thumb { height: 320px; }
.ex-menu-list .ex-data { margin: 10px 0 30px; padding: 0 0 30px; border-bottom: 1px solid rgba(0, 0, 0, 0.1); }
.ex-menu-list > ul > li:last-child .ex-data { border-bottom: none; margin: 10px 0; }
.ex-menu-list h3 { margin: 10px 0 15px; }
.ex-menu-list .ex-beige.ex-shift { height: calc(100% - 110px); }
.ex-mbtn { opacity: 1; width: 50px; background: rgba(255, 255, 255, 0); }
.ex-mbtn span { background: rgba(255, 255, 255, .5); padding: 0 10px; width: 46px; height: 60px; }
.ex-mbtn--next { right: -25px; }
.ex-mbtn--prev { left: -25px; }
.ex-mbtn svg { top: 17px; }
.ex-mbtn--prev svg { left: 10px; }
.ex-mbtn--next svg { right: 10px; }
.ex-slide-intro { z-index: 0; opacity: 0; }
.ex-plan-head { padding: 0 5% 20%; }
.ex-examples .ex-menu-list .ex-beige { top: 0; height: 100%; }
.ex-plan-list .ex-memo { margin: 10px 0 20px; }
.ex-lineup li { line-height: 1.2; }
.ex-lineup { padding: 0; }
.ex-spec { padding: 5px 25px; }
.ex-spec th, .ex-spec td { padding: 15px 0; font-size: 13px; line-height: 1.3; letter-spacing: .01em; vertical-align: top; }
.ex-spec th { width: 35%; padding-right: 5%; }
.ex-spec td { width: 60%; }
.ex-spec tr:last-child th, .ex-spec tr:last-child td { border-bottom: none; }
.ex-page-contact .ex-txt-r { width: 100%; }
.ex-page-contact .ex-info dd { width: 100%; }
.ex-map { width: 100%; height: 200px; }
.ex-map-area { margin: 0 0 20px; padding: 0 20px; }
.ex-map-txt { display: block; position: relative; width: auto; top: initial; left: initial; height: initial; margin: 20px 5vw; }
.ex-map-txt .ex-display { text-align: right; font-size: 20px; }
.ex-map-txt .ex-btn { float: right; }
.ex-page-contact .ex-txt-l { width: 100%; }
.ex-spacer-h { height: 0px; }
.ex-wh2 { height: calc(100svh / 3); }
.ex-wh3 { height: auto; }
.ex-page-home .ex-fv { height: 100svh; }
.ex-resv-inner { margin: 0 0 40px; }
.ex-resv-inner .ex-btn { margin: 30px auto 0; }
.ex-resv .ex-head { margin: 0 auto; }
.ex-resv .ex-head span { margin: 0 0 0px; line-height: 1; }
.ex-resv-inner h2 { padding-bottom: 0px; }
.ex-resv-inner h2::after { display: none; }
.ex-resv-inner .ex-tel-big { font-size: 20px; }
.ex-resv-list { display: block; }
.ex-resv-list li { width: 100%; margin: 15px 0; padding-bottom: 30px; position: relative; }
.ex-resv-list li::after { content: ""; position: absolute; display: block; width: 60px; height: 1px; background: #bd9f77; bottom: 0; left: 50%; margin-left: -30px; }
.ex-lineup.ex-cf > li { width: calc(100% - 1px); }
@media (min-width: 640px) {
  .ex-about-slider { margin: 15% 0 20%; }
  .ex-holder--double.ex-wh2 { padding: 0; box-sizing: border-box; }
}
@media (max-width: 425px) {
  .ex-menu-list { padding: 0; }
  .ex-menu-list .ex-thumb { height: 200px; }
  .ex-about-slider .ex-trim-area { top: 96%; }
  .ex-about-slider { margin: 20% 0 20%; }
  .ex-about-slider .ex-tt span { top: 50%; }
  .ex-about-slider .ex-trim-area { top: 90%; }
  .ex-main--top .ex-tt { margin-top: calc(40% - 7px); }
  .ex-topinfo .ex-store { display: block; width: 100%; float: none; }
  .ex-holder--double { margin-bottom: 50%; }
  .ex-holder--double.ex-holder--flip { margin-bottom: 40%; }
  .ex-footer .ex-imgarea .ex-btn { width: 160px; left: min(52%, calc(100% - 190px)); }
}
