@charset "UTF-8";
/* Reset Stylesheet Based on - html5doctor.com Reset Stylesheet http://html5doctor.com/html-5-reset-stylesheet/ */
html, body, div, span, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, abbr, address, cite, code, del, dfn, em, img, ins, kbd, q, samp, small, strong, sub, sup, var, b, i, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, figcaption, figure, footer, header, hgroup, menu, nav, section, summary, time, mark, audio, video { margin: 0; padding: 0; border: 0; outline: 0; font-size: 100%; vertical-align: baseline; }
body { line-height: 1; }
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section { display: block; }
table { border-collapse: collapse; border-spacing: 0; }
input, select { vertical-align: middle; }
ul, li { list-style: none; }


/*-------------------------------------
clearfix
-------------------------------------*/
.clearfix:before, .clearfix:after { content: ""; display: table; }
.clearfix:after { clear: both; }
.clearfix { zoom: 1; }


/*-------------------------------------
base
-------------------------------------*/
body { font: 75%/1.5 "Roboto Slab" , Garamond , "Times New Roman" , "游明朝" , "Yu Mincho" , "游明朝体" , "YuMincho" , "ヒラギノ明朝 Pro W3" , "Hiragino Mincho Pro" , "HiraMinProN-W3" , "HGS明朝E" , "ＭＳ Ｐ明朝" , "MS PMincho" , serif; }
body { font-weight: 300; color: rgb(40,40,40); -webkit-text-size-adjust: 100%; }
a { text-decoration: none; cursor: pointer; color: rgb(0,100,210); }
a:hover { text-decoration: underline; }
a:focus { outline: none; }
h1, h2, h3, h4 { font-weight: 300; }
video { vertical-align: bottom; }
img { vertical-align: bottom; }
img { backface-visibility: hidden; }
.inner { max-width: 1600px; margin: 0px auto; padding: 0 2%; position: relative; z-index: 3; }


/*-------------------------------------
index
-------------------------------------*/
.index { }
.index-entrance { padding: 200px 0 80px; text-align: center; position: relative; }
.index-entrance:after { content: ""; background: url(../images/index_cover.jpg) center center no-repeat; background-size: auto; background-size: cover; opacity: 1; position: absolute; top: 0; right: 0; bottom: 0; left: 0; z-index: 1; }
.index-entrance figure { background: rgb(86,24,60); border-radius: 50%; display: inline-block; padding: 45px 30px; }
.index-entrance figure img { max-width: 166px; }
.index-entrance h1 { margin-top: 30px; font-size: 18px; letter-spacing: 0.1em; color: rgb(180,130,60); }
.index-entrance h2 { margin-top: 20px; font-size: 80px; font-weight: 300; letter-spacing: 0.2em; line-height: 1; font-family: 'Cormorant Garamond', serif; }
.index-entrance h2 a { display: inline-block; color: rgb(180,130,60); transition : 0.3s; }
.index-entrance h2 a:hover { text-decoration: none; color: rgb(255,255,255); transition : 0.3s; }
.index-entrance h2 span { display: block; margin-top: 10px; padding: 10px 0; font-size: 18px; letter-spacing: 0.1em; background: rgb(86,24,60); border-radius: 20px; font-family: 'Times New Roman', serif; }
.index-entrance p { margin-top: 30px; font-size: 15px; color: rgb(180,130,60); line-height: 1.6; }
.index-entrance p a { color: rgb(180,130,60); text-decoration: underline; }
.index-entrance p a:hover { color: rgb(255,255,255); }
.index-info { padding: 80px 0; text-align: center; background: url("../images/index_bg.jpg") left top repeat; }
.index-info h2 { margin: 0 0 10px; font-size: 44px; color: rgb(180,130,60); }
.index-info p { font-size: 18px; line-height: 2; letter-spacing: 0.05em; color: rgb(180,130,60); }
.index-banner { max-width: 468px; margin: 30px auto; text-align: center; }
.index-banner img { text-align: center; max-width: 468px; }

/*-------------------------------------
video
-------------------------------------*/
.video { width: 100%; height: calc(100vh - 170px); position: relative; background: rgb(255,255,255); }
.video .videoinner { width: 100%; height: calc(100vh - 170px); position: fixed; top: 0; overflow: hidden; }
.video .videowrap { width: 100%; height: 100%; background: url("../images/dot.png"); }
.video .videoclip { max-height: initial; max-width: initial; min-width: 100%; min-height: calc(100vh - 170px); position: absolute; top: 0; left: 50%; transform: translateX(-50%); z-index: -1; }
.video .videoclipimg { display: none; min-height: 100%; min-height: 100vh; min-width: 100%; min-width: 100vw; background: url("../images/dot.png"); background-size: cover; position: absolute; top: 0; left: 0; z-index: -1; }


/*-------------------------------------
header
-------------------------------------*/
header { width: 100%; position: relative; z-index: 100; }
header .gb-head { background: rgb(86,24,60); }
header .gb-head h1 { padding: 15px 0; float: left; font-size: 14px; color: rgb(180,130,60); }
header .gb-head ul { float: right; }
header .gb-head li { float: left; margin-left: 30px; font-size: 14px; }
header .gb-head li a { padding: 15px 0; display: block; text-align: center; color: rgb(180,130,60); }
header .gb-cont { background: rgb(255,255,255); box-shadow: 0 0 20px rgba(0,0,0,0.2); }
header .gb-cont .logo-pc { background: rgb(86,24,60); border-radius: 50%; position: absolute; top: -80px; left: 50%; transform: translateX(-50%); }
header .gb-cont .logo-pc a { display: block; padding: 45px 30px; }
header .gb-cont .logo-pc img { max-width: 166px; }
header .gb-cont .logo-sp { display: none; }
header .gb-cont .gbnav-menu { display: none; }
header .gb-cont .gbnav { width: 100%; padding: 16px 0; }
header .gb-cont .gbnav li { width: 10%; float: left; font-size: 13px; }
header .gb-cont .gbnav li span { display: block; font-size: 18px; letter-spacing: 0.06em; font-family: 'Cormorant Garamond', serif; }
header .gb-cont .gbnav li a { padding: 20px 0 25px; color: rgb(180,130,60); position: relative; display: block; text-decoration: none; text-align: center; }
header .gb-cont .gbnav li a:after { position: absolute; bottom: 15px; left: 0; right: 0; margin: auto; content: ''; width: 70%; height: 1px; background: rgb(180,130,60); transform: scale(0, 1); transform-origin: center top; transition: transform .3s; }
header .gb-cont .gbnav li a:hover:after { transform-origin: center top; transform: scale(1, 1); }
header .gb-cont .gbnav li.gn4 { margin-right: 10%; }
header .gb-cont .gbnav li.gn5 { margin-left: 10%; }
header .gb-foot { position: relative; z-index: 101; display: none; }
header .gb-foot ul { width: 100%; position: fixed; bottom: 0; }
header .gb-foot li { width: 33.333333333333333%; float: left; }
header .gb-foot li a { padding: 20px 0; color: rgb(255,255,255); display: block; text-decoration: none; text-align: center; }
header .gb-foot .cast { background: rgb(60,20,45); }
header .gb-foot .schedule { background: rgb(10,20,40); }
header .gb-foot .reserve { background: rgb(140,100,40); }


/*-------------------------------------
visual
-------------------------------------*/
.visual { background: rgb(245,245,245); position: relative; overflow: hidden; z-index: 5; }
.visual .slider { display: block; }
.visual .slider li .pc { display: block; }
.visual .slider li .sp { display: none; }


/*-------------------------------------
shop-info
-------------------------------------*/
.shop-info { position: relative; padding: 30px 0; color: rgb(180,130,60); background: rgb(255,255,255); }
.shop-info .inner { max-width: 980px; }
.shop-info .open { float: left; margin-right: 30px; font-size: 24px; letter-spacing: 0.14em; }
.shop-info .tel { float: left; margin-right: 30px; font-size: 24px; letter-spacing: 0.14em; }
.shop-info .reserve { float: left; margin-top: 3px; font-size: 20px; letter-spacing: 0.1em; }
.shop-info .inspect { float: right; margin-top: 4px; font-size: 18px; letter-spacing: 0.1em; }
.shop-info .inspect .icon-heart { float: left; margin-right: 10px; font-size: 28px; }


/*-------------------------------------
contents
-------------------------------------*/
.contents { font-size: 15px; position: relative; overflow: hidden; }
/* block-a */
.block-a { padding: 80px 0 100px; background: rgb(255,255,255); position: relative; }
.block-a .title { margin-bottom: 30px; text-align: center; font-size: 18px; font-weight: 300; line-height: 200%; letter-spacing: 0.5em; color: rgb(180,130,60); position: relative; z-index: 2; }
.block-a .title span { display: block; font-size: 80px; line-height: 100%; font-family: 'Cormorant Garamond', serif; }
/* block-b */
.block-b { padding: 80px 0 100px; background: rgb(245,245,245); position: relative; }
.block-b .title { margin-bottom: 30px; text-align: center; font-size: 18px; font-weight: 300; line-height: 200%; letter-spacing: 0.5em; color: rgb(30,40,60); position: relative; z-index: 2; }
.block-b .title span { display: block; font-size: 80px; line-height: 100%; font-family: 'Cormorant Garamond', serif; }
/* block1 */
.block1 { background: rgb(86,24,60); }
.block1:after { content: ""; background: url(../images/bg_block1.jpg) center center no-repeat; background-size: auto; background-size: cover; background-attachment: fixed; opacity: 0.1; position: absolute; top: 0; right: 0; bottom: 0; left: 0; z-index: 1; }
/* block2 */
.block2 { background: rgb(255,255,255); }
.block2:after { content: ""; background: url(../images/bg_block2.jpg) center center no-repeat; background-size: auto; background-size: cover; background-attachment: fixed; opacity: 0.1; position: absolute; top: 0; right: 0; bottom: 0; left: 0; z-index: 1; }
/* block3 */
.block3 { background: rgb(30,40,60); }
.block3:after { content: ""; background: url(../images/bg_block3.jpg) center center no-repeat; background-size: auto; background-size: cover; background-attachment: fixed; opacity: 0.1; position: absolute; top: 0; right: 0; bottom: 0; left: 0; z-index: 1; }
/* block4 */
.block4 { background: rgb(255,255,255); }
.block4:after { content: ""; background: url(../images/bg_block4.jpg) center center no-repeat; background-size: auto; background-size: cover; background-attachment: fixed; opacity: 0.1; position: absolute; top: 0; right: 0; bottom: 0; left: 0; z-index: 1; }
/* block5 */
.block5 { background: rgb(86,24,60); }
.block5:after { content: ""; background: url(../images/bg_block5.jpg) center center no-repeat; background-size: auto; background-size: cover; background-attachment: fixed; opacity: 0.1; position: absolute; top: 0; right: 0; bottom: 0; left: 0; z-index: 1; }
/* block6 */
.block6 { background: rgb(30,40,60); }
.block6:after { content: ""; background: url(../images/bg_block6.jpg) center center no-repeat; background-size: auto; background-size: cover; background-attachment: fixed; opacity: 0.1; position: absolute; top: 0; right: 0; bottom: 0; left: 0; z-index: 1; }
/* block7 */
.block7 { background: rgb(0,0,0); }
.block7:after { content: ""; background: url(../images/bg_block7.jpg) center center no-repeat; background-size: auto; background-size: cover; background-attachment: fixed; opacity: 0.2; position: absolute; top: 0; right: 0; bottom: 0; left: 0; z-index: 1; }
/* block8 */
.block8 { background: rgb(255,255,255); }
.block8:after { content: ""; background: url(../images/bg_block8.jpg) center center no-repeat; background-size: auto; background-size: cover; background-attachment: fixed; opacity: 0.1; position: absolute; top: 0; right: 0; bottom: 0; left: 0; z-index: 1; }
/* block9 */
.block9 { background: rgb(255,255,255); }
.block9:after { content: ""; background: url(../images/bg_block9.jpg) center center no-repeat; background-size: auto; background-size: cover; background-attachment: fixed; opacity: 0.1; position: absolute; top: 0; right: 0; bottom: 0; left: 0; z-index: 1; }
/* block10 */
.block10 { background: rgb(255,255,255); }
.block10:after { content: ""; background: url(../images/bg_block10.jpg) center center no-repeat; background-size: auto; background-size: cover; background-attachment: fixed; opacity: 0.1; position: absolute; top: 0; right: 0; bottom: 0; left: 0; z-index: 1; }
/* block11 */
.block11 { background: rgb(255,255,255); }
.block11:after { content: ""; background: url(../images/bg_block11.jpg) center center no-repeat; background-size: auto; background-size: cover; background-attachment: fixed; opacity: 0.1; position: absolute; top: 0; right: 0; bottom: 0; left: 0; z-index: 1; }
/* block12 */
.block12 { background: rgb(255,255,255); }
.block12:after { content: ""; background: url(../images/bg_block12.jpg) center center no-repeat; background-size: auto; background-size: cover; background-attachment: fixed; opacity: 0.1; position: absolute; top: 0; right: 0; bottom: 0; left: 0; z-index: 1; }
/* block13 */
.block13 { background: rgb(255,255,255); }
.block13:after { content: ""; background: url(../images/bg_block13.jpg) center center no-repeat; background-size: auto; background-size: cover; background-attachment: fixed; opacity: 0.6; position: absolute; top: 0; right: 0; bottom: 0; left: 0; z-index: 1; }
/* more */
.more-a { margin-top: 30px; }
.more-a a { padding: 20px 0; display: block; text-align: center; color: rgb(180,130,60); font-size: 15px; background: rgba(10,20,40,0.8); border-radius: 4px; transition : 0.2s; }
.more-a a:hover { text-decoration: none; color: rgb(180,130,60); background: rgb(255,255,255); transition : 0.2s; }
.more-b { margin-top: 30px; }
.more-b a { padding: 20px 0; display: block; text-align: center; color: rgb(180,130,60); font-size: 15px; background: rgba(60,20,45,0.8); border-radius: 4px; transition : 0.2s; }
.more-b a:hover { text-decoration: none; color: rgb(180,130,60); background: rgb(255,255,255); transition : 0.2s; }
.more-c { margin-top: 30px; }
.more-c a { padding: 20px 0; display: block; text-align: center; color: rgb(180,130,60); font-size: 15px; background: rgba(0,0,0,0.8); border-radius: 4px; transition : 0.2s; }
.more-c a:hover { text-decoration: none; color: rgb(180,130,60); background: rgb(255,255,255); transition : 0.2s; }


/*-------------------------------------
footer
-------------------------------------*/
footer { font-size: 16px; position: relative; overflow: hidden; }
footer .pagetop { width: 100%; height: 58px; display: block; background: rgb(40,40,40); position: relative; overflow: hidden; -webkit-transition: all 0.3s ease 0s; -moz-transition: all 0.3s ease 0s; -o-transition: all 0.3s ease 0s; transition: all 0.3s ease 0s; }
footer .pagetop .arrow { width: 28px; height: 58px; margin: 0 auto; display: block; background: url(../images/pagetop.png) no-repeat; background-position: 0 20px; position: relative; z-index: 2; }
footer .pagetop:after { width: 100%; height: 58px; content: ""; position: absolute; left: 0; top: 58px; background: rgb(0,0,0); z-index: 1; -webkit-transition: all 0.3s ease 0s; -moz-transition: all 0.3s ease 0s; -o-transition: all 0.3s ease 0s; transition: all 0.3s ease 0s; }
footer .pagetop:hover:after { top: 0; }
footer .copyright { padding: 14px 0px; text-align: center; font-size: 13px; letter-spacing: 0.1em; color: rgb(180,130,60); background: rgb(86,24,60); }
footer .group { padding: 70px 0px; color: rgb(255,255,255); background: url(../images/group_bg.jpg) repeat; background-size: 1110px; }
footer .group .inner { max-width: 1440px; padding: 0; }
footer .group h2 { text-align: center; font-size: 18px; line-height: 200%; letter-spacing: 0.4em; }
footer .group h2 span { display: block; font-size: 60px; line-height: 100%; font-family: 'Cormorant Garamond', serif; }
footer .group ul { margin-top: 40px; }
footer .group ul li { width: 18%; margin: 0 3.5%; float: left; text-align: center; }
footer .group ul li img { margin-bottom: 10px; }
footer .group ul li a { display: block; color: rgb(255,255,255); }
footer .group ul li a:hover { text-decoration: none; }


/*-------------------------------------
form
-------------------------------------*/
label { cursor: pointer; }
label { position: relative; display: block; }
label span { display: inline-block; }
label input[type="checkbox"] + span { position: relative; padding: 0 0 0 26px; }
label input[type="radio"] + span { position: relative; padding: 0 0 0 26px; }
/* checkbox */
label input[type="checkbox"] { position: absolute; top: 0; left: 0; opacity: 0; }
label input[type="checkbox"] + span:before { position: absolute; top: 0; left: 0; display: inline-block; content: ''; box-sizing: border-box; }
label input[type="checkbox"] + span:after { position: absolute; top: 0; left: 0; display: inline-block; content: ''; box-sizing: border-box; }
label input[type="checkbox"] + span:before { z-index: 0; width: 20px; height: 20px; border: solid 1px rgb(225,225,225); border-radius: 3px; }
label input[type="checkbox"] + span::after { z-index: 1; margin: 4px 7px; width: 6px; height: 10px; }
label input[type="checkbox"]:checked + span::before { background-color: rgb(255,255,255); }
label input[type="checkbox"]:checked + span::after { border: solid 2.5px rgb(0,0,0); border-width: 0 2.5px 2.5px 0; transform: rotate(45deg); border-radius: 1px; }
/* radio */
label input[type="radio"] { position: absolute; top: 0; left: 0; opacity: 0; }
label input[type="radio"] + span::before { position: absolute; top: 2px; left: 0; display: inline-block; content: ''; box-sizing: border-box; }
label input[type="radio"] + span:after { position: absolute; top: 2px; left: 0; display: inline-block; content: ''; box-sizing: border-box; }
label input[type="radio"] + span:before { z-index: 0; width: 20px; height: 20px; border: solid 1px rgb(225,225,225); border-radius: 20px; }
label input[type="radio"] + span::after { z-index: 1; margin: 5px; }
label input[type="radio"]:checked + span::before { border-width: 1px; }
label input[type="radio"]:checked + span::after { border: solid 5px rgb(0,0,0); border-radius: 5px; }
/* text */
input[type="text"] { border: 0; outline: 0; }
input[type="text"] { padding: 5px; border: 1px solid rgb(235,235,235); border-radius: 3px; font-size: 14px; transition: border-color ease .2s; }
input[type="text"]:focus { border-color: rgb(95,152,225); }
/* textarea */
textarea { border: 0; outline: 0; font-family: sans-serif; }
textarea { padding: 5px; border: 1px solid rgb(235,235,235); border-radius: 3px; font-size: 14px; transition: border-color ease .2s; }
textarea:focus { border-color: rgb(95,152,225); }
/* select */
select { border: 0; outline: 0; }
select { padding: 5px; border: 1px solid rgb(235,235,235); border-radius: 3px; font-size: 14px; transition: border-color ease .2s; }
select:focus { border-color: rgb(95,152,225); }
/* submit */
input[type="submit"], button[type="submit"] { padding: 10px 60px; font-size: 14px; color: rgb(0,0,0); background: rgb(255,255,255); border: 1px solid rgb(0,0,0); border-radius: 4px; cursor: pointer; }
input[type="submit"]:hover, button[type="submit"]:hover { text-decoration: none; color: rgb(255,255,255); background: rgb(0,0,0); transition: all 0.2s ease-in-out 0s; }





@media only screen and (max-width: 1279px) {
/*-------------------------------------
header
-------------------------------------*/
header .gb-head h1 { padding: 10px 0; font-size: 12px; }
header .gb-head li { margin-left: 20px; font-size: 12px; }
header .gb-head li a { padding: 10px 0; }
header .gb-cont .logo-pc { top: -60px; }
header .gb-cont .logo-pc a { padding: 35px 24px; }
header .gb-cont .logo-pc img { max-width: 126px; }
header .gb-cont .gbnav { padding: 10px 0; }
header .gb-cont .gbnav li { font-size: 12px; }
header .gb-cont .gbnav li span { font-size: 16px; }
header .gb-cont .gbnav li a { padding: 15px 0 20px; }


/*-------------------------------------
shop-info
-------------------------------------*/
.shop-info { padding: 20px 0; }
.shop-info .inner { max-width: 820px; }
.shop-info .open { margin-right: 20px; font-size: 20px; }
.shop-info .tel { margin-right: 20px; font-size: 20px; }
.shop-info .reserve { margin-top: 3px; font-size: 17px; }
.shop-info .inspect { margin-top: 3px; font-size: 16px; }
.shop-info .inspect .icon-heart { margin: 0 10px 0 0; font-size: 25px; }


/*-------------------------------------
contents
-------------------------------------*/
.contents { font-size: 14px; }
/* block-a */
.block-a { padding: 50px 0 70px; }
.block-a .title { margin-bottom: 20px; font-size: 18px; }
.block-a .title span { font-size: 60px; }
/* block-b */
.block-b { padding: 50px 0 70px; }
.block-b .title { margin-bottom: 20px; font-size: 18px; }
.block-b .title span { font-size: 60px; }


/*-------------------------------------
footer
-------------------------------------*/
footer .group { padding: 60px 0px 30px; }
footer .group ul li { width: 21%; margin: 0 2% 40px; }
footer .group ul li img { max-width: 240px; }

}/*--------------------------------------------------------------------------*/





@media only screen and (max-width: 1023px) {
/*-------------------------------------
index
-------------------------------------*/
.index-entrance { padding: 100px 0 40px; }
.index-entrance h2 { margin-top: 20px; }
.index-info { padding: 40px 0; }
.index-info h2 { font-size: 36px; }
.index-info p { font-size: 16px; }
.index-footer .copyright { padding: 14px 0px; }


/*-------------------------------------
header
-------------------------------------*/
header .gb-head h1 { padding: 5px 0; font-size: 12px; }
header .gb-head ul { display: none; }
header .gb-cont { display: block; }
header .gb-cont .logo-sp { display: inline-block; }
header .gb-cont .logo-sp a { display: block; padding: 15px 0; }
header .gb-cont .logo-sp img { max-width: 186px; }
header .gb-cont .logo-pc { display: none; }
header .gb-cont .gbnav-menu { width: 50px; margin-top: 8px; display: block; float: right; position: relative; }
header .gb-cont .gbnav-menu a { width: 100%; height: 50px; display: block; background: rgb(0,0,0); background: rgb(255,255,255); }
header .gb-cont .gbnav-menu .gbnav-icon { display: block; position: absolute; top: 50%; left: 50%; width: 22px; height: 3px; margin: -2px 0 0 -11px; background: rgb(0,0,0); transition: .2s; }
header .gb-cont .gbnav-menu .gbnav-icon:before { display: block; content: ""; position: absolute; top: 50%; left: 50%; width: 22px; height: 3px; margin-top: -9px; margin-left: -11px; background: rgb(0,0,0); transition: .3s; }
header .gb-cont .gbnav-menu .gbnav-icon:after { display: block; content: ""; position: absolute; top: 50%; left: 50%; width: 22px; height: 3px; margin-top: 6px; margin-left: -11px; background: rgb(0,0,0); transition: .3s; }
header .gb-cont .gbnav-menu .close { background: transparent; }
header .gb-cont .gbnav-menu .close:before { margin-top: 0; transform: rotate(-45deg); }
header .gb-cont .gbnav-menu .close:after { margin-top: 0; transform: rotate(-135deg); }
header .gb-cont { width: 100%; padding-right: 0; float: none; }
header .gb-cont .gbnav { display: none; }
header .gb-cont .gbnav li { width: 33.333333333333333%; }
header .gb-cont .gbnav li.gn4 { margin: 0; }
header .gb-cont .gbnav li.gn5 { margin: 0; }
header .gb-foot { display: block; }


/*-------------------------------------
shop-info
-------------------------------------*/
.shop-info .inner { max-width: 590px; }
.shop-info .tel { display: none; }


/*-------------------------------------
footer
-------------------------------------*/
footer .group ul li { width: 40%; margin: 0 5% 40px; }
footer .copyright { padding: 14px 0px 72px; }

}/*--------------------------------------------------------------------------*/





@media only screen and (max-width: 767px) {
/*-------------------------------------
index
-------------------------------------*/
.index-entrance figure { padding: 40px 30px; }
.index-entrance figure img { max-width: 140px; }
.index-entrance h1 { margin-top: 20px; font-size: 16px; letter-spacing: 0.01em; }
.index-entrance h2 { font-size: 60px; }
.index-info h2 { font-size: 30px; }
.index-info p { max-width: 480px; margin: 0 auto 5px; font-size: 15px; line-height: 1.5; letter-spacing: 0.01em; }


/*-------------------------------------
video
-------------------------------------*/
.video { height: calc(80vh - 170px); }
.video .videoinner { height: calc(80vh - 170px); }
.video .videoclip { min-height: calc(80vh - 170px); max-height: 100%; }


/*-------------------------------------
visual
-------------------------------------*/
.visual .slider li .pc { display: none; }
.visual .slider li .sp { display: block; }


/*-------------------------------------
shop-info
-------------------------------------*/
.shop-info .inner { max-width: 420px; }
.shop-info .tel { display: none; }
.shop-info .reserve { display: none; }


/*-------------------------------------
contents
-------------------------------------*/
/* block-a */
.block-a { padding: 40px 0 60px; }
.block-a .title { margin-bottom: 15px; font-size: 16px; }
.block-a .title span { font-size: 50px; }
/* block-b */
.block-b { padding: 40px 0 60px; }
.block-b .title { margin-bottom: 15px; font-size: 16px; }
.block-b .title span { font-size: 50px; }
/* more */
.more-a { margin-top: 20px; }
.more-a a { padding: 15px 0; font-size: 13px; }
.more-b { margin-top: 20px; }
.more-b a { padding: 15px 0; font-size: 13px; }
.more-c { margin-top: 20px; }
.more-c a { padding: 15px 0; font-size: 13px; }


/*-------------------------------------
footer
-------------------------------------*/
footer .group h2 { font-size: 16px; }
footer .group h2 span { font-size: 50px; }

}/*--------------------------------------------------------------------------*/





@media only screen and (max-width: 567px) {
/*-------------------------------------
index
-------------------------------------*/
.index-entrance h1 { margin-top: 15px; }
.index-entrance h2 { margin-top: 10px; font-size: 50px; }
.index-entrance h2 span { margin-top: 5px; padding: 8px 0; font-size: 16px; }
.index-entrance p { margin-top: 20px; font-size: 14px; }
.index-info { padding: 30px 0; }
.index-info h2 { max-width: 220px; margin: 0 auto 5px; font-size: 24px; }
.index-info p { max-width: 300px; font-size: 14px; }


/*-------------------------------------
shop-info
-------------------------------------*/
.shop-info .inner { max-width: 320px; }
.shop-info .open { font-size: 16px; margin-right: 5px; }
.shop-info .inspect { margin-top: 2px; font-size: 13px; }
.shop-info .inspect .icon-heart { margin-right: 2px; font-size: 20px; }


/*-------------------------------------
contents
-------------------------------------*/
/* block-a */
.block-a { padding: 40px 0 50px; }
.block-a .title { font-size: 14px; letter-spacing: 0.4em; }
.block-a .title span { font-size: 40px; }
/* block-b */
.block-b { padding: 40px 0 50px; }
.block-b .title { font-size: 14px; letter-spacing: 0.4em; }
.block-b .title span { font-size: 40px; }


/*-------------------------------------
footer
-------------------------------------*/
footer .group h2 { font-size: 14px; }
footer .group h2 span { font-size: 40px; }
footer .group ul li { width: 60%; margin: 0 20% 40px; }

}/*--------------------------------------------------------------------------*/





@media only screen and (max-width: 329px) {
/*-------------------------------------
shop-info
-------------------------------------*/
.shop-info .inner { max-width: 320px; }
.shop-info .open { font-size: 15px; margin-right: 5px; }
.shop-info .inspect { margin-top: 2px; font-size: 12px; }
.shop-info .inspect .icon-heart { margin-right: 2px; font-size: 20px; }


/*-------------------------------------
contents
-------------------------------------*/
.contents { font-size: 13px; }
/* block-a */
.block-a .title { font-size: 13px; }
.block-a .title span { font-size: 34px; }
/* block-b */
.block-b .title { font-size: 13px; }
.block-b .title span { font-size: 34px; }


/*-------------------------------------
footer
-------------------------------------*/
footer .group h2 { font-size: 13px; }
footer .group h2 span { font-size: 34px; }

}/*--------------------------------------------------------------------------*/
