@charset "utf-8";

/*--------------------------------------------------------------------------------------------------------------
  CSSリセット
--------------------------------------------------------------------------------------------------------------*/

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;}
nav,ul,ol{list-style: none;}
blockquote,q{quotes: none;}
blockquote:before,blockquote:after,q:before,q:after{content: '';content: none;}
a{margin: 0;padding: 0;font-size: 100%;vertical-align: baseline;}
ins{background-color: #ff9;color: #000;text-decoration: none;}
mark{background-color: #ff9;color: #000;font-style: italic;font-weight: bold;}
del{text-decoration: line-through;}
abbr[title],dfn[title]{border-bottom: 1px dotted;cursor: help;}
table{border-collapse: collapse;border-spacing: 0;}
hr{display: block;height: 1px;border: 0;border-top: 1px solid #ccc;margin: 1em 0;padding: 0;}
input,select{vertical-align: middle;}
section.main a:hover{text-decoration: underline;}


/*--------------------------------------------------------------------------------------------------------------
  初期設定
--------------------------------------------------------------------------------------------------------------*/

body {
color: #fff;
letter-spacing: 1px;
-webkit-text-size-adjust: 100%;
background: #000;
word-wrap: break-word;
}

div {
margin: 0 auto;
}

header,footer,div,h1,h2,h3,h4,p,li,dl,dt,dd,th,td,article,em,a {
	-webkit-box-sizing:border-box;
box-sizing: border-box;
}

a {
color: inherit;
text-decoration: none;
}

a:hover {
	-webkit-transition: all 0.3s ease-in-out;
	-moz-transition: all 0.3s ease-in-out;
	-o-transition: all 0.3s ease-in-out;
transition: all 0.3s ease-in-out;
	filter:alpha(opacity=50);
	-moz-opacity: 0.5;
opacity: 0.5;
}

img {
height: auto;
width: auto;
max-width: 100%;
line-height: 100%;
vertical-align: bottom;
}

em {
font-style: normal;
}

p,li,td,th,dt,dd {
font-size: 18px;
line-height: 170%;
}

p,td,th,dt,dd {
word-break: break-word;
}

h2,h3,h4 {
font-weight: normal;
letter-spacing: 8px;
line-height: 130%;
}

h2 {
text-align: center;
}


/*--------------------------------------------------------------------------------------------------------------
  共通クラス
--------------------------------------------------------------------------------------------------------------*/

.t-center {
text-align: center;
}

.t-right {
text-align: right;
}

.f-bold {
font-weight: bold;
}

.f-big {
font-size: 1.2em;
}

.f-small {
font-size: .75em;
}

.clearfix:after {
content: "";
clear: both;
display: block;
}

.sp {
display: none;
}

.br-pc {
display: block;
}


/*--------------------------------------------------------------------------------------------------------------
  font
--------------------------------------------------------------------------------------------------------------*/

body {
	font-family: Century, Ryumin, "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "ＭＳ Ｐ明朝", "MS PMincho", serif;
}

.tnr,
.information td,
.top-box02 td {
	font-family: "Times New Roman", Ryumin, "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "ＭＳ Ｐ明朝", "MS PMincho", "Meiryo", serif;
}


/*--------------------------------------------------------------------------------------------------------------
  table 初期設定
--------------------------------------------------------------------------------------------------------------*/

table {
width: 100%;
border-collapse: collapse;
}

th,
td {
text-align: left;
font-weight: normal;
vertical-align: top;
word-break: keep-all;
}


/*--------------------------------------------------------------------------------------------------------------
  枠
--------------------------------------------------------------------------------------------------------------*/

html,body,#page {
width: 100%;
height: 100%;
}
#main-visual,.mv-img {
width: 100%;
height: unset;
}

/*--------------------------------------------------------------------------------------------------------------
  header
--------------------------------------------------------------------------------------------------------------*/

header {
width: 100%;
background: rgba(0,0,0,.7);
}


/*------------------------------------------
  nav
------------------------------------------*/

nav {
width: 100%;
}

nav li {
text-align: center;
}

nav li:last-of-type {
margin-right: 0;
}

nav li a {
display: block;
}


/* RESERVATION */

.nav-reserve {
font-weight: bold;
text-align: center;
background: #bb0d23;
}

.nav-reserve a {
display: block;
height: 100%;
}

.nav-reserve span {
display: block;
top: 50%;
	-webkit-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
transform: translateY(-50%);
position: relative;
}


/* プルダウンメニュー */

.nav-sub li,
.nav-sub li p {
position: relative;
font-size: 14px;
line-height: 180%;
}

.nav-sub .child li {
color: #b3b3b4;
float: none;
font-size: 12px;
}

.nav-sub .child li a {
padding: 0;
background: none;
}

.head_logo_70 {
width: 70%;
margin: 0 15%;
}

@media screen and (min-width: 768px) {

header {
padding: 15px 220px 15px 15px;
position: fixed;
top: 0;
z-index: 9999;
	display: -webkit-box;
	display: -moz-box;
display: box;
	display: -webkit-flex;
display: flex;
	-webkit-justify-content: flex-start;
justify-content: flex-start;
	-webkit-box-align: center;
	-ms-flex-align: center;
	-webkit-align-items: center;
align-items: center;
}

h1 {
width: 35%;
max-width: 190px;
margin: 0 7% 0 2%;
}

nav {
display: block !important;
}

nav li {
float: left;
position: relative;
}


/* RESERVATION */

.nav-reserve {
width: 190px;
right: 0;
top: 0;
height: 100%;
position: absolute;
}

.nav-reserve a:hover {
color: #bb0d23;
background: #fff;
opacity: 1;
}


/* nav-main */

.nav-main {
float: left;
}

.nav-main ul {
overflow: hidden;
}

.nav-main li {
float: left;
margin-right: 50px;
}


/* nav-sub */

.nav-sub {
float: right;
margin-top: 3px;
}

.nav-sub li {
margin-right: 20px;
}


/* プルダウンメニュー */

.nav-sub li a,
.nav-sub li.parents {
cursor: pointer;
padding-left: 15px;
background: url(../img/ico/ico_arrow01.png) no-repeat left center;
}

.nav-sub li.parents ul {
z-index: 2;
position: absolute;
left: 15px;
width: 150px;
opacity: 0;
top: 50%;
visibility: hidden;
transition: .5s;
}

.nav-sub li.parents:hover ul {
top: 100%;
visibility: visible;
opacity: 1;
}

.nav-sub .child li {
text-align: left;
}

.nav-sub .child li a:hover {
color: #fff;
}


/* ホバー下線 */

.nav-main li:after,
.nav-sub li p:after {
display: block;
content: "";
background: #fff;
width: 0;
height: 1px;
left: 50%;
bottom: 0;
position: absolute;
transition: .3s;
-webkit-transform: translateX(-50%);
transform: translateX(-50%);
}

.nav-main li:hover:after,
.nav-sub li p:hover:after {
width: 60%;
}

nav li a:hover,
nav li p:hover {
filter: alpha(opacity=100);
	-moz-opacity: 1;
opacity: 1;
}

.nav-sub .child li:after {
content: none;
}

.ipad .nav-main li:after,
.ipad .nav-sub li p:after {
content: none;
}

}


/*--------------------------------------------------------------------------------------------------------------
  mainvisual
--------------------------------------------------------------------------------------------------------------*/
.slick-list,.slick-track {
  width: 100%;
  height: 100%;
}



#main-visual .txt {
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
  position: absolute;
  text-align: center;
  display: table;
  width: 100%;
  height: 100%;
  z-index: 2;
}
#main-visual h2 {
  letter-spacing: 0.19em;
  display: table-cell;
  vertical-align: middle;
  font-size: 103px;
  line-height: 110%;
  text-shadow: 0 0 15px #000;
}

#main-visual .mv-img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  font-family: 'object-fit: cover; object-position: center;';
}

.deli-main-img {
  width: 100%;
  margin-top: 130px;
}

#main-visual h2.lunch-ajito {
display: table-row;font-size: 80px;
}
#main-visual .mv-p-left {
display: table-cell;text-align: left;vertical-align: bottom;font-size: 35px;padding-top: 100px;padding-bottom: 50px;
}
#main-visual .mv-p-cen {
display: table-row;text-align: center;vertical-align: bottom;font-size: 30px;
}
#main-visual .mv-p-cen span{
font-size: 0.7em;
}

/*------------------------------------------
  information
------------------------------------------*/

.information {
padding: 110px 20px;
text-align: center;
}

.information h2 {
font-size: 60px;
margin-bottom: 40px;
}

.information .ttl {
font-size: 32px;
letter-spacing: 3px;
margin-bottom: 25px;
}

.information .time {
font-size: 24px;
margin: 0 auto 10px;
}

.information table {
width: auto;
margin: 0 auto 15px;
}

.information th,
.information td {
font-size: 18px;
padding: 5px 10px;
}

.information p {
font-size: 14px;
}

.information p + p {
margin-top: 40px;
}

.information .facebook {
font-size: 17px;
margin: 50px auto;
max-width: 400px;
width: 100%;
}

.information .facebook a {
display: block;
padding: 20px;
border: 1px solid #fff;
}

.information .facebook a:hover {
color: #000;
background: #fff;
opacity: 1;
}

.information .links {
display: table;
margin: 0 auto;
overflow: hidden;
}

.information .links li {
float: left;
width: 90%;
/*margin-right: 2%;*/
margin: 0 5%;
}

.information .links li:last-of-type {
margin-right: 0;
}


/*------------------------------------------
  contact
------------------------------------------*/

.contact {
text-align: center;
padding: 80px 0 70px;
background: url(../img/bg/bg01.png) no-repeat center;
background-size: cover;
}

.contact p {
letter-spacing: 3px;
line-height: 140%;
}

.contact-reserve, .contact-interview {
display: table;
margin: 50px auto;
font-size: 23px;
}

.contact-reserve a, .contact-interview a {
display: block;
padding: 20px 70px;
background: #bb0d23;
}

.contact-reserve a:hover, .contact-interview a:hover {
color: #bb0d23;
opacity: 1;
background: #fff;
}
.contact-interview a {
color: #bb0d23 !important;
background: #fff !important;
}
.contact-interview a:hover {
color: #fff !important;
background: #bb0d23 !important;
}

.contact .ttl {
font-size: 30px;
margin-bottom: 10px;
}

.contact .tel {
font-size: 58px;
}

.contact .time {
font-size: 18px;
}

.contact .name {
font-size: 30px;
margin-top: 40px;
}
.sub-txt01{
    margin-bottom: 50px;
}

/*--------------------------------------------------------------------------------------------------------------
  footer
--------------------------------------------------------------------------------------------------------------*/

footer {
padding: 30px 10px;
text-align: center;
clear: both;
}

footer p {
font-size: 14px;
}


/*--------------------------------------------------------------------------------------------------------------
	media query  
--------------------------------------------------------------------------------------------------------------*/


@media screen and (max-width: 1024px) {

header {
padding-right: 170px;
}

.nav-main li {
font-size: 16px;
}

.nav-reserve {
width: 160px;
}

#main-visual {
height: 100%;
}

.mv-img {
height: 100%;
}

}


@media screen and (max-width: 767px) {

.pc {
display: none;
}

.sp {
display: block !important;
}

.br-pc {
display: inline;
}

p,li,td,th,dt,dd {
}


#page,header {
min-width: 100%;
}


/*--------------------------------------------------------------------------------------------------------------
  header
--------------------------------------------------------------------------------------------------------------*/

header {
height: 60px;
padding: 10px;
position: relative;
z-index: 9999;
}

h1 {
margin: 0;
}

h1 img {
/*height: 45px;*/
width: 80px;
}

.head_logo_70 {
    width: 17%;
    margin-left: 3%;
}
/*------------------------------------------
  nav
------------------------------------------*/

nav {
display: none;/* SP初期設定 */
width: 100%;
height: 100%;
top: 0;
bottom: 0;
left: 0;
right: 0;
margin: auto;
position: fixed;
overflow-y: scroll;
background: rgba(0,0,0,.87);
z-index: 9998 !important;
}

nav.fixed {
display: block;
}

	nav::-webkit-scrollbar {
	display: none;
	}

nav .nav-inner {
display: table;
width: 100%;
height: 100%;
position: relative;
}

nav .nav-wrap {
display: table-cell;
vertical-align: middle;
margin: 0 auto;
}

nav ul {
width: 200px;
display: table;
margin: 0 auto 20px;
}

nav li {
width: 100%;
margin: 0 auto !important;
}


/* RESERVATION */

.nav-reserve {
bottom: 0;
width: 200px;
height: 60px;
}


/* nav-main */

.nav-main li {
font-size: 16px;
}

.nav-main a {
padding: 10px 0!important;
}


/* nav-sub */

.nav-sub li {
font-size: 14px !important;
padding: 10px 0;
}


/* プルダウンメニュー */

.nav-sub .child {
display: block !important;
}

.nav-sub li.parents {
padding: 0;
margin-top: 15px !important;
}

.nav-sub li.parents span {
padding-right: 15px;
background: url(../img/ico/ico_arrow02.png) no-repeat right center;
}

.nav-sub .child {
margin: 0 auto;
}

.nav-sub .child li {
font-size: 11px !important;
padding: 0 !important;
}

.nav-sub .child li a {
padding: 5px 0 !important;
}


/*------------------------------------------
  SPメニューボタン
------------------------------------------*/

#menu-btn {
width: 50px;
height: 50px;
top: 5px;
right: 5px;
position: fixed;
z-index: 9999 !important;
}

#menu-btn button {
width: 50px;
height: 50px;
cursor: pointer;
border: 0;
outline: 0;
background: none;
position: absolute;
}

.menu-open {
z-index: 2;
}

.menu-close {
opacity: 0;
}

.drawer-hamburger span {
left: 0;
right: 0;
margin: auto;
width: 32px;
height: 3px;
display: inline-block;
transition: all .4s;
box-sizing: border-box;
position: absolute;
border-radius: 4px;
background-color: #fff;
}

.menu-close span {
background: #fff;
}

.drawer-hamburger span:nth-of-type(1) {
top: 10px;
}

.drawer-hamburger span:nth-of-type(2) {
top: 23px;
margin: auto;
}

.drawer-hamburger span:nth-of-type(3) {
bottom: 12px;
}

.menu-open.active span:nth-of-type(1),
.menu-close span:nth-of-type(1) {
	-webkit-transform: translateY(13px) rotate(-45deg);
transform: translateY(13px) rotate(-45deg);
}

.menu-open.active span:nth-of-type(2),
.menu-close span:nth-of-type(2) {
left: 50%;
opacity: 0;
}

.menu-open.active span:nth-of-type(3),
.menu-close span:nth-of-type(3) {
	-webkit-transform: translateY(-12px) rotate(45deg);
transform: translateY(-12px) rotate(45deg);
}


/*--------------------------------------------------------------------------------------------------------------
  mainvisual
--------------------------------------------------------------------------------------------------------------*/

#main-visual {
z-index: 1;
margin-top: -60px;
height: 100%;
}
.mv-img {
height: 100%;
}

  #main-visual h2 {
    line-height: 140%;
  }

#main-visual h2.lunch-ajito {
font-size: 36px;
}
#main-visual .mv-p-left {
font-size: initial; padding-top: 70px;
}
#main-visual .mv-p-cen {
font-size: initial;
}
#main-visual .mv-p-cen span{
font-size: 0.7em;
}

/*--------------------------------------------------------------------------------------------------------------
  main
--------------------------------------------------------------------------------------------------------------*/


/*------------------------------------------
  information
------------------------------------------*/

.information {
padding: 30px 20px;
}

.information h2 {
font-size: 30px;
margin-bottom: 30px;
}

.information .ttl {
font-size: 20px;
margin-bottom: 15px;
}

.information .time {
font-size: 18px;
}

.information table {
margin-bottom: 30px;
}

.information th,
.information td {
display: block;
width: 100%;
font-size: 16px;
}

.information th {
font-weight: bold;
border-bottom: 1px solid #fff;
}

.information td {
font-size: 16px;
padding-bottom: 15px;
}	

.information p {
font-size: 12px;
}

.information p + p {
margin-top: 20px;
}

.information .facebook {
font-size: 14px;
margin: 30px auto;
}


/*------------------------------------------
  contact
------------------------------------------*/

.contact {
padding: 30px 20px;
}

.contact-reserve, .contact-interview {
width: 100%;
max-width: 300px;
font-size: 16px;
margin-bottom: 30px;
}

.contact-reserve a, .contact-interview a {
padding: 20px 10px;
}

.contact .ttl {
font-size: 18px;
}

.contact .tel {
font-size: 36px;
}

.contact .time {
/*font-size: 12px;*/
}

.contact .name {
font-size: 25px;
margin-top: 30px;
}



/*--------------------------------------------------------------------------------------------------------------
  footer
--------------------------------------------------------------------------------------------------------------*/

footer {
padding: 20px;
}

footer p {
font-size: 10px;
}


}



@media screen and (max-width: 414px) {

.br-414 {
display: inline-block;
}


/*------------------------------------------
  SPメニューボタン
------------------------------------------*/

#menu-btn {
right: 0;
}


/*--------------------------------------------------------------------------------------------------------------
  main
--------------------------------------------------------------------------------------------------------------*/


/*------------------------------------------
  information
------------------------------------------*/

.information {
padding: 30px 10px;
}

.information h2 {
font-size: 24px;
}

#main .information .links li {
width: 70%;
float: none;
margin: 0 auto 20px;
}

.deli-main-img {
margin-top: 0px;
}

}