body {display: flex; flex-direction: column; min-width: 320px; min-height: 100vh; overflow-x: hidden;}
body::-webkit-scrollbar {width: 5px;}
body::-webkit-scrollbar-thumb {width: 5px;}
.pc {display: none!important;} .container {display: block; margin: 0 16px;} .flex {display: flex; flex-wrap: wrap; justify-content: space-between;} .pagination {margin: 36px 0 42px;}
.pagination .nav-links {display: flex; justify-content: center; align-items: center;}
.pagination span,
.pagination a {display: inline-block; text-decoration: none; font-size: 16px; padding: 8px 16px; background: #fff; box-shadow: 0 0 0 1px #744250;}
.pagination a {color: #744250;}
.pagination a:hover {color: #fff; background: #744250;}
.pagination .current {background: #744250; color: #fff;} header {display: block; position: relative; width: 100vw; height: 60vw;}
header video {width: 100%; min-height: 100%; object-fit: cover; object-position: 50%; font-family: 'object-fit: cover; object-position: 50%;';}
header .logo {display: block; position: absolute; width: 100px; height: 95px; top: 50%; left: 50%; transform: translate(-50%,-50%);}
header .logo h1 {width: 100px; height: 95px;}
header .logo h1 img{width: 100%;} header #nav-toggle {display: block; position: absolute; top: 10px; right: 10px; width: 50px; height: 50px; box-shadow: 0 0 0 1px #fff; border-radius: 4px; z-index: 900;}
header #nav-toggle span {position: relative; display: block; width: 32px; height: 2px; margin: auto; background: #fff; transition: all .4s;}
header #nav-toggle span:nth-child(1) {top:10px;}
header #nav-toggle span:nth-child(2) {top:16px; opacity: 1; transition: all .3s;}
header #nav-toggle span:nth-child(3) {top:22px;}
header #nav-toggle p {position: relative; top: 23px; color: #fff; text-align: center;}
header #nav-toggle:hover {cursor: pointer;}
header .g-navi {display: flex; flex-direction: column; justify-content: center; align-items: center; position: fixed; background: rgba(116,66,80, .9); width: 100%; height: 100%; top: 0; left: 0; transform: translate(100%,0); opacity: 0; transition: .35s ease; z-index: 800;}
header .g-navi nav h3 {display: none;}
header .g-navi nav ul li {display: block; margin: 0 0 0 -35px!important;}
header .g-navi nav ul li a {display: block; font-family:"ヒラギノ明朝 ProN W3","Hiragino Mincho ProN",'Noto Serif JP',"游明朝",YuMincho,serif; width: 100%; font-size: 21px; font-weight: 500; color: #fff; text-align: center; padding: 16px; text-decoration: none; transform: .2s ease;}
header .g-navi .sns {justify-content: center; margin-top: 40px;}
header .g-navi .sns a {width: 48px; height: 48px; margin: 0 10px; opacity: .7;}
.hamburger_open #nav-toggle {position: fixed;}
.hamburger_open #nav-toggle span:nth-child(1) {transform: rotate(225deg); top:18px;}
.hamburger_open #nav-toggle span:nth-child(2) {transform: scale(0,1);}
.hamburger_open #nav-toggle span:nth-child(3) {transform: rotate(-225deg); top:14px;}
.hamburger_open .g-navi {transform: translate(0,0); opacity: 1; transition: .45s ease;} #movie {} #lang {display: block; position: absolute; top: 6px; left: 10px;}
#lang .bogo-language-switcher {display: flex; flex-direction: column; position: absolute; top: 0; left: 0; width: 100px; height: 36px; background: url(//zem.staging-env.dev/cms-509274/wp-content/themes/new-zenzai/img/common/lang.png) 6px 8px/18px auto no-repeat transparent; border-bottom: 1px solid #fff; box-sizing: border-box; cursor: pointer; transition: .3s;}
#lang .bogo-language-switcher * {color: #fff; font-size: 15px; font-weight: 700; line-height: 1; text-align: right;}
#lang .bogo-language-switcher li.current,
#lang .bogo-language-switcher li a {display: block; width: 100%; padding: 10px 8px; box-sizing: border-box; transition: .3s;}
#lang .bogo-language-switcher li.current {order: -1;}
#lang .bogo-language-switcher li:not(.current) {display: block; background: rgba(0,0,0, .2); transform: scale(1,0); transform-origin: top; opacity: 0; transition: .3s;}
#lang .bogo-language-switcher:hover li:not(.current) {opacity: 1; transform: scale(1,1);}
#lang .bogo-language-switcher li a:hover {background: rgba(0,0,0, 0.3);} #menu {margin: 0 auto 20px;}
#menu .menu_list {justify-content: center;}
#menu .menu_list .menutitle {flex-wrap: nowrap; justify-content: center; align-items: center; width: 38%; margin: 0 1% 0 9%; padding-right: 2%;}
#menu .menu_list .menutitle h2 {flex-direction: column; justify-content: center; align-items: center; width: 50px; height: 160px; font-size: 21px; font-weight: 400; letter-spacing: 5px; line-height: 20px; padding: 0 12px; -ms-writing-mode: tb-lr; -webkit-writing-mode: vertical-lr; -o-writing-mode: vertical-lr; writing-mode: vertical-lr; border: 1px solid #cdcdcd;}
@media all and (-ms-high-contrast:none) {#menu .menu_list .menutitle h2 {padding: 0 18px 0 12px;}}
#menu .menu_list .menutitle p {font-size: 11px; color: #7a6d60; letter-spacing: 1px; -ms-writing-mode: tb-lr; -webkit-writing-mode: vertical-lr; -o-writing-mode: vertical-lr; writing-mode: vertical-lr; margin-left: 10px;}
#menu .menu_list .menu_box {display: block; width: 48%; margin: 0 1% 10px 1%;}
#menu .menu_list .menu_box img {display: block; margin: 0 auto;}
#menu .menu_list .menu_box h3 {font-size: 13px; line-height: 1.5; text-align: center;}
#menu .read {margin: 0 auto;}
#menu .read p {font-size: 14px; color: #7a6d60; text-align: center;	line-height: 2; margin: 10px 0;}
#menu .read .reserve {width: 90%; background: linear-gradient(-45deg,#fff 25%,#7a6d60 25%,#7a6d60 50%,#fff 50%,#fff 75%,#7a6d60 75%,#7a6d60); background-size: 6px 6px; margin: 16px auto; padding: 8px;}
#menu .read .reserve p {font-size: 14px; margin: 0; padding: 8px; background: #fff;}
#menu .read .reserve a {display: block; font-size: 18px; margin: 6px; padding: 4px; color: #fff; background: #7a6d60; border-radius: 5px;} #news {padding: 0 0 20px;}
#news h2 {font-size: 18px; font-weight: 400; text-align: center; line-height: 1.5; letter-spacing: .05rem; text-indent: -.05rem; border-bottom: 1px solid #744250;}
#news .news_box {padding: 0 6px;}
#news .news_box .news_list {display: block; padding: 10px 0; border-bottom: 1px dotted #744250;}
#news .news_box .news_list:last-child {border: none;}
#news .news_box .news_list .st {display: block;}
#news .news_box .news_list h3 {font-size: 17px; overflow: hidden; white-space: nowrap; text-overflow: ellipsis; margin-bottom: 4px;}
#news .news_box .news_list p {font-size: 13px; overflow: hidden; white-space: nowrap; text-overflow: ellipsis;}
#news .news_box .news_list time {justify-content: flex-start; font-size: 13px;}
#news .news_box .news_list time img {width: 13px; margin: 0 6px 1px 0;}
#news .news_box .news_list .text {width: 100%;}
#news .more {float: right; display: inline-block; font-size: 13px; color: #fff; background: #744250; border: 1px solid #744250; margin: 12px 4px 0; padding: 4px 12px;}
#news .more:hover {color: #744250; background: #fff; text-decoration: none;} #contact {padding: 20px 0 0;}
#contact h2 {font-size: 18px; font-weight: 400; text-align: center; line-height: 1.5; letter-spacing: .05rem; text-indent: -.05rem; border-bottom: 1px solid #744250;}
#contact .left,
#contact .right {width: 100%;}
#contact article {margin: 20px 0; width: 100%;}
#contact article:last-child {margin: 20px 0 0}
#contact article h3 {font-size: 16px; color: #7a6d60; line-height: 1.75; margin-bottom: 8px; padding: 0 4px 2px; border-bottom: 1px solid #4c4948;}
#contact article a {color: #7a6d60;}
#contact article span {display: block; padding: 0 5px 5px;}
#contact article span p {margin-bottom: 20px;}
#contact article span p:last-child {margin: 0;}
#contact article h4 {font-size: 18px;}
#contact article img {width: 100%;}
#contact article.parking {background: #f4ece2; width: calc(100% - 30px); margin: 20px 0; padding: 15px;}
#contact article.parking h3,
#contact article.parking p {color:#a91d22;}
#contact article.parking p {margin: 0;}
#contact article.frame {height: auto; margin: 10px 0 20px; border: 1px solid #744250;}
#contact article.frame img {display: block; width: auto; margin: auto;}
#contact article.map{margin: 0 0 20px;}
#contact article.map .googlemap {height: 320px; margin: 0 0 5px; border: 1px solid #744250;}
#contact article.map a {float: right;} #icon {justify-content: center; margin: 32px auto 48px;}
#icon a {width: 48px; height: 48px; margin: 0 5px;} footer {width: 100%; background: #744250; margin-top: auto;}
footer .container {flex-direction: column; justify-content: center; align-items: center; position: relative; padding: 86px 0 24px;}
footer #scroll {display: flex; justify-content: center; align-items: center; position: absolute; top: 0; left: -16px; width: 100vw; height: 48px; text-decoration: none; background: #fff; border-top: 1px solid #744250;}
footer #scroll .up {content: ""; width: 0; height: 0; margin: auto 10px auto 0; border-style: solid; border-width: 0 4px 4px 4px; border-color: transparent transparent #744250 transparent;}
footer #scroll span {font-size: 16px; line-height: 16px;}
footer p {margin-top: 36px; color: #fff;} #archive-news {}
#archive-news h1 {font-size: 20px; border-bottom: 1px solid #744250; margin: 20px 0; padding: 0 8px;}
@media all and (-ms-high-contrast:none) {#archive-news h1 {line-height: 1.5;}}
#archive-news .news_list_box {display: block; width: 98%; margin: 0 auto 20px;}
#archive-news .news_list_box img.thumb {width: 100%; height: 56vw; object-fit: cover; object-position: 50%; font-family: 'object-fit: cover; object-position: 50% 50%;';}
#archive-news .news_list_box .text {margin-top: 10px;}
#archive-news .news_list_box .text h2 {font-size: 18px; padding: 0 0 5px 0; border-bottom: 1px solid #744250;}
#archive-news .news_list_box .text time {justify-content: flex-start; font-size: 14px; margin: 4px 0;}
#archive-news .news_list_box .text time img {width: 14px; margin: 0 6px 1px 0;} #single-news {}
#single-news .single_head {margin: 20px 0;}
#single-news .single_head h1 {font-size: 20px; line-height: 1.25; border-bottom: 1px solid #744250; padding: 8px 4px;}
#single-news .single_head time {justify-content: flex-start; font-size: 14px; margin-left: 4px;}
#single-news .single_head time img {width: 14px; margin: 0 6px 1px 0;}
#single-news .single {word-break: break-all; padding: 0 4px;}
#single-news .single h2 {
font-size: 18px;
font-weight: 700;
line-height: 1.5;
margin: 12px 0;
padding: 10px 10px;
background: #fffbe4;
border-left: 4px solid #744250;
}
#single-news .single h3 {
position: relative;
font-size: 16px;
font-weight: 700;
line-height: 1;
margin: 12px 0;
padding: 10px 4px;
border-bottom: 1px solid #744250;
}
#single-news .single h3:after {
display: block;
content: "";
position: absolute;
bottom: -3px;
left: 0;
width: 10%;
border-bottom: 3px solid #744250;
}
#single-news .single h4 {
position: relative;
font-size: 14px;
font-weight: 700;
line-height: 1;
margin: 10px 0;
padding: 10px 22px;
}
#single-news .single h4:after {
content: "";
position: absolute;
top: 11px;
left: 2px;
width: 12px;
height: 12px;
background: #744250;
} #single-news .single ul {margin: 12px 0;}
#single-news .single ul li {padding: 0 16px;}
#single-news .single ul li:before {
content: "";
display: inline-block;
position: relative;
width: 6px;
height: 6px;
border-radius: 100%;
background: #744250;
margin: 0;
left: -12px;
top: -1px;
} #single-news .single ol {
counter-reset: li;
margin: 12px 0;
}
#single-news .single ol > li {padding: 0 16px;}
#single-news .single ol > li:before {
counter-increment: li;
content: counter(li);
display: inline-block;
position: relative;
left: -12px;
color: #744250;
margin: 0;
}
#single-news .single strong,
#single-news .single em {font-weight: 700;}
#single-news .single p{line-height: 1.8;}
#single-news .single img{margin: 20px 0;}
#single-news .single_postlink {
display: flex;
justify-content: space-between;
margin: 40px auto;
}
#single-news .single_postlink p {font-size: 14px;}
#single-news .single_postlink {justify-content: center; margin: 40px auto;}
#single-news .single_postlink p {width: 90px; text-align: center;}
#single-news .single_postlink p a {display: block; font-size: 13px; border: 1px solid #744250; padding: 10px 0;}
#single-news .single_postlink p a:hover {color: #fff; background: #744250;}
#single-news .single_postlink p.center {margin: 0 -1px;} #single-menu {width: 100vw; padding: 30px 0; overflow-x: hidden;}
#single-menu h2 {text-align: center; padding: 5px 0;}
#single-menu h2 span {display: inline-block; font-size: 20px; color: #7a6d60; line-height: 1;}
#single-menu h2 span.price {margin-left: .75em;}
#single-menu p {font-size: 13px;}
#single-menu .main_text {margin: 15px 10px 0; text-align: center;}
#single-menu .main_image {margin: 30px 0;}
#single-menu .main_image img {width: 100%; height: auto; object-fit: cover; object-position: 50%; font-family: 'object-fit: cover; object-position: 50% 50%;';}
#single-menu .flex {display: block;}
#single-menu .sub_box {margin-bottom: 20px; padding: 0 10px;}
#single-menu .sub_box article {min-width: 45%;}
#single-menu .sub_box article h3 {}
#single-menu .sub_box article h3:before {content: ""; display: inline-block; position: relative; top: -2px; left: 0; width: 7px; height: 7px; background: #7a6c5f; border-radius: 50%;}
#single-menu .sub_box article h3 span {font-size: 14px; color: #7a6c5f; margin-left: 6px;}
#single-menu .sub_box article h3 span:last-child {margin-left: 0.25em;}
#single-menu .sub_box article .read p {color: #7a6c5f; margin-bottom: 20px; padding-left: 1em;}
#single-menu .sub_box article:last-child .read p {margin: 0;}
#single-menu .sub_box article .notes {width: calc(100% - 32px); padding: 15px; border: 1px solid #744250; margin: 20px 0;}
#single-menu .sub_box article .notes p {text-align: center;}
#single-menu .bottom_notes {padding: 0 10px;}
#single-menu .bottom_notes p {color: #7a6d60;} #modal {
display: none;
position: fixed;
top: 0;
left: 0;
width: 100vw;
height: 100vh;
background: #fff;
border-radius: 3px;
background: #744250;
box-shadow: 0 0 25px #000;
z-index: 1000;
}
#modal *:focus {outline:none;}
#modal .head {
display: flex;
align-items: center;
background: #744250 url(//zem.staging-env.dev/cms-509274/wp-content/themes/new-zenzai/img/menu_head.png) 10px -3px/100px 55px no-repeat;
width: 100%;
height: 50px;
margin: 0;
zoom: 1;
}
#modal .head .close {
display: flex;
align-items: flex-end;
height: 32px;
margin: auto 0 auto auto;
padding: 9px 12px;
color: #fff;
cursor: pointer;
text-decoration: none;
}
#modal .head .close .left {
display: flex;
flex-direction: column;
justify-content: space-between;
align-items: flex-end;
margin-right: 8px;
height: 32px;
}
#modal .head .close .left .arrow {
display: block;
position: relative;
height: 15px;
top: 0;
}
#modal .head .close .left .arrow:before {
content: "";
position: absolute;
width: 6px;
height: 6px;
border: 0px;
border-top: solid 1px #fff;
border-right: solid 1px #fff;
transform: rotate(45deg);
top: 4px;
right: 4px;
}
#modal .head .close .left .arrow:after {
content: "";
position: absolute;
width: 16px;
height: 1px;
border: 0px;
border-top: solid 1px rgba(255,255,255, .7);
top: 7px;
right: 4px;
}
#modal .head .close .left p {
height: 17px;
font-size: 17px;
font-weight: 400;
line-height: 17px;
letter-spacing: -.125em;
color: #fff;
}
@media all and (-ms-high-contrast:none) {#modal .head .close .left p {height: 14px;}}
#modal .head .close .closs {
position: relative;
top: -2px;
width: 28px;
height: 28px;
margin: 0;
background-color: #7b6d60;
box-shadow: 0 0 0 2px #fff;
border-radius: 2px;
}
#modal .head .close .closs:before,
#modal .head .close .closs:after {
content: "";
display: block;
position: absolute;
top: 13px;
left: -7px;
width: 42px;
height: 2px;
background: #fff;
}
#modal .head .close .closs:before {transform: rotate(45deg);}
#modal .head .close .closs:after {transform: rotate(135deg);}
#overlay {display: none;}
.modal_open #modal {display: block;}
#iframecontainer iframe {width: 100vw; height: calc(100vh - 50px); border: none; background: #fff; overflow-x: hidden; overflow-y: scroll;} #notfound {position: relative; width: 100vw; height: 100vh; overflow: hidden;}
#notfound video {display: block; position: absolute; top: 0; left: 0; width: 100vw; height: 100vh; object-fit: cover; object-position: 50% 50%; font-family: 'object-fit: cover; object-position: 50% 50%;'; z-index: 1;}
#notfound .overlay {display: flex; justify-content: center; align-items: center; flex-direction: column; position: absolute; top: 0; left: 0; width: 100vw; height: 100vh; background: rgba(0,0,0, .25); z-index: 2;}
#notfound h1 span {display: block; font-size: 24px; color: #fff; line-height: 1.5; letter-spacing: 2px; text-align: center;}
#notfound h1 span.http {font-size: 15px;}
#notfound a {display: inline-block; font-size: 16px; color: #fff; border: 1px solid #fff; margin-top: 40px; padding: 8px 24px;}
#notfound a:hover {background: #fff; color: #744250;}