@charset "utf-8";

/*------------------------------------------------
reset
--------------------------------------------------*/
html, body, header, footer, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, address , abbr, acronym, aress, article, aside, big, cite, code,
del, dfn, em, font, img, ins, kbd, q, s, samp, section,
small, strike, strong, sub, sup, tt, var,
b, u, i, center, nav,
dl, dt, dd , ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
hr{
	margin: 0;
	padding: 0;
	border: 0;
	outline: 0;
	font-size:inherit;
	background: transparent;
	font-weight:inherit;  
	text-decoration:inherit;
	font-family:inherit;
	color:inherit;
	box-sizing:border-box;
	font-style:normal;
	text-align:left;
	list-style: none;
	position:relative;
	line-height:1;
}
input[type="text"],
input[type="email"],
textarea,
select{
	font-size:inherit;
	font-family:inherit;
	font-weight:inherit;
	-webkit-appearance:none;
	appearance:none;
	border:1px solid #999999;
	background-color:#FFFFFF;
	height: auto;
	line-height: 1.5;
	padding:5px;
}
input[type="text"],
input[type="email"],
textarea{
	width: 100%;
}
select{
	background-size:20px;
	padding-right: 15px;
	text-align:center;
}
body{
	font-size: 18px;
	font-family:'Noto Serif JP', "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
	font-weight:400;
	letter-spacing:0.025em;
	background:#111111 url(../images/bg.jpg) repeat center top;
	color:#FFFFFF;
}
img{
	vertical-align:bottom;
	max-width:100%;
}
img.maxWidthNone{
	max-width:none;
}
p{ line-height:1.8;}

/*------------------------------------------------
layout
--------------------------------------------------*/
.left{ float:left;}
.right{ float:right;}
.clearfloat{
    overflow: hidden;
    position: relative;
    zoom:1;
}
.absolute{
	position:absolute;
}
.absolute img,
img.absolute{
	max-width:none;
}
.flexSpace{
	display: -webkit-box; /*Android4.3*/
	display: -moz-box;    /*Firefox21*/
	display: -ms-flexbox; /*IE10*/
	display: -webkit-flex; /*PC-Safari,iOS8.4*/
	display: flex;
	-ms-flex-wrap:wrap;/*IE10*/
	-webkit-flex-wrap:wrap;/*PC-Safari,iOS8.4*/
	flex-wrap:wrap;
	-webkit-box-pack: justify; /*Android4.3*/
	-moz-box-pack: justify;    /*Firefox21*/
	-ms-flex-pack: justify;    /*IE10*/
	-webkit-justify-content: space-between; /*PC-Safari,iOS8.4*/
	justify-content: space-between;
}
.flexStart{
	display: -webkit-box; /*Android4.3*/
	display: -moz-box;    /*Firefox21*/
	display: -ms-flexbox; /*IE10*/
	display: -webkit-flex; /*PC-Safari,iOS8.4*/
	display: flex;
	-ms-flex-wrap:wrap;/*IE10*/
	-webkit-flex-wrap:wrap;/*PC-Safari,iOS8.4*/
	flex-wrap:wrap;
}
.flexCenter{
	display: -webkit-box; /*Android4.3*/
	display: -moz-box;    /*Firefox21*/
	display: -ms-flexbox; /*IE10*/
	display: -webkit-flex; /*PC-Safari,iOS8.4*/
	display: flex;
	-ms-flex-wrap:wrap;/*IE10*/
	-webkit-flex-wrap:wrap;/*PC-Safari,iOS8.4*/
	flex-wrap:wrap;
	-webkit-box-pack: center; /*Android4.3*/
	-moz-box-pack: center;    /*Firefox21*/
	-ms-flex-pack: center;    /*IE10*/
	-webkit-justify-content: center; /*PC-Safari,iOS8.4*/
	justify-content: center;
}
.flexEnd{
	display: -webkit-box; /*Android4.3*/
	display: -moz-box;    /*Firefox21*/
	display: -ms-flexbox; /*IE10*/
	display: -webkit-flex; /*PC-Safari,iOS8.4*/
	display: flex;
	-ms-flex-wrap:wrap;/*IE10*/
	-webkit-flex-wrap:wrap;/*PC-Safari,iOS8.4*/
	flex-wrap:wrap;
	-webkit-justify-content:flex-end;         /* Safari etc. */
	-ms-justify-content:flex-end;         /* IE10        */
	justify-content:flex-end;
}
.flexReverse{
	flex-direction: row-reverse;
}
.anchor{
	padding-top: 136px;
	margin-top: -136px;
	display: block;
	position:relative;
	z-index:-9999;
}
.hidden{
	display: none;
}
.container1240{
	width: 1240px;
	margin:0 auto;
	position:relative;
}
.container1040{
	width: 1040px;
	margin:0 auto;
	position:relative;
}
.swiper-pagination-bullet{
	width: 40px;
	height: 4px;
	background:#666666;
	opacity:1;
	border-radius:0;
}
.swiper-pagination-bullet-active{
	background-color:#FFFFFF;
}

/*------------------------------------------------
font
--------------------------------------------------*/
@font-face {
	font-family: 'copperplate';
	src:url(../fonts/copperplate.woff2) format('woff2'),
	url('../fonts/copperplate.woff') format('woff'),
	url('../fonts/copperplate.ttf') format('truetype');
}
.gothic{
	font-family: 'Noto Sans JP', 'ヒラギノ角ゴシック Pro', 'Hiragino Kaku Gothic Pro', メイリオ, Meiryo, Osaka, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
}
.copperplate{
	font-family:'copperplate', 'Noto Sans JP', 'ヒラギノ角ゴシック Pro', 'Hiragino Kaku Gothic Pro', メイリオ, Meiryo, Osaka, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
}
.fz12{ font-size:67%;}
.fz13{ font-size:72%;}
.fz14{ font-size:78%;}
.fz15{ font-size:83%;}
.fz16{ font-size:85%;}
.fz17{ font-size:94%;}
.fz18{ font-size:100%;}
.fz19{ font-size:106%;}
.fz20{ font-size:111%;}
.fz21{ font-size:117%;}
.fz22{ font-size:122%;}
.fz23{ font-size:128%;}
.fz24{ font-size:133%;}
.fz25{ font-size:139%;}
.fz26{ font-size:144%;}
.fz27{ font-size:150%;}
.fz28{ font-size:156%;}
.fz29{ font-size:161%;}
.fz30{ font-size:167%;}
.fz31{ font-size:172%;}
.fz32{ font-size:178%;}
.fz33{ font-size:183%;}
.fz34{ font-size:189%;}
.fz35{ font-size:194%;}
.fz36{ font-size:200%;}
.fz37{ font-size:206%;}
.fz38{ font-size:211%;}
.fz39{ font-size:217%;}
.fz40{ font-size:222%;}
.fz45{ font-size:250%;}
.fz47{ font-size:261%;}
.fz48{ font-size:266%;}
.fz50{ font-size:278%;}
.fz55{ font-size:306%;}
.fz60{ font-size:333%;}
.fz63{ font-size:350%;}
.fz66{ font-size:367%;}
.fz70{ font-size:389%;}
.fz80{ font-size:444%;}
.fz90{ font-size:500%;}
.fz100{ font-size:556%;}
.fz135{ font-size:750%;}
.medium{
	font-weight:500;
}
.bold{
	font-weight:700;
}
.ls100{
	letter-spacing:0.1em;
}
.ls200{
	letter-spacing:0.2em;
}
.ls300{
	letter-spacing:0.3em;
}
.ls400{
	letter-spacing:0.4em;
}
.ls500{
	letter-spacing:0.5em;
}
.taCenter{
	text-align:center;
}
.lh120{
	line-height: 1.2;
}
.lh130{
	line-height: 1.3;
}
.lh140{
	line-height: 1.4;
}
.lh150{
	line-height: 1.5;
}
.lh200{
	line-height: 2;
}
.lh220{
	line-height: 2.2;
}


/*------------------------------------------------
title
--------------------------------------------------*/
.title01{
	width: 100%;
	position:relative;
	border-bottom:1px solid #E7F2F1;
	right:50%;
	margin-left: -290px;
}
.title01 span{
	width: 230px;
}
.title02{
	height: 50px;
	line-height: 50px;
	border-bottom:1px solid #FFFFFF;
	border-top:1px solid #FFFFFF;
	text-align:center;
}
.title03{
	text-align:center;
}
.title03:after{
	content:'';
	display: block;
	width: 225px;
	height: 1px;
	background-color:#E7F2F1;
	margin:0 auto;
}
.title_gradient{
	color:#E5E5E5;
	background: -webkit-linear-gradient(90deg, #CACACA, #FFFFFF);
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
}

/*------------------------------------------------
link
--------------------------------------------------*/
a,
.pointer,
button,
input[type="submit"]{
	-webkit-transition: opacity 0.3s ease-out;
	-moz-transition: opacity 0.3s ease-out;
	transition: opacity 0.3s ease-out;
	cursor:pointer;
}
a:hover,
.pointer:hover,
button:hover,
input[type="submit"]:hover{
	opacity:0.6;
}
.btn01{
	display: block;
	width: 500px;
	height: 75px;
	line-height: 75px;
	margin:0 auto;
	text-align:center;
	position:relative;
	background-color:#9B0202;
	-webkit-transition: all 0.3s ease-out;
	-moz-transition: all 0.3s ease-out;
	transition: all 0.3s ease-out;
}
.btn01:after{
	content:'';
	display:inline-block;
	width: 22px;
	height: 22px;
	background:url(../images/btn01.png);
	background-size:100%;
	margin-left: 5px;
	vertical-align:middle;
	position:relative;
}
.btn01:hover{
	opacity:1;
	background-color:rgba(155,2,2,0.6);
}
.menu_bg02{
	background:url(../images/menu_bg02.jpg) no-repeat center top;
	padding:80px 0;
}


/*------------------------------------------------
color
--------------------------------------------------*/


/*------------------------------------------------
header
--------------------------------------------------*/
#header{
	height: 136px;
	position:fixed;
	top:0;
	width: 100%;
	z-index:99999;
}
#header:after{
	content:'';
	background:#111111 url(../images/header_bg.png) no-repeat center top;
	position:absolute;
	width: 100%;
	height: 136px;
	display: block;
	z-index:-1;
	top:0;
	visibility:hidden;
	opacity:0;
	-webkit-transition: opacity 0.5s ease-out;
	-moz-transition: opacity 0.5s ease-out;
	transition: opacity 0.5s ease-out;
}
#header.header_bg:after{
	visibility:visible;
	opacity:1;
}
.headerLogo{
	width: 130px;
	height: 93px;
	position:absolute;
	top:21px;
	left:50%;
	margin-left: -65px;
	z-index:99;
}
.headerLogo a{
	display: block;
	background:url(../images/headerLogo.png) no-repeat;
	background-size:100%;
	width: 130px;
	height: 93px;
	text-indent: -9999px;
}
#mainMenu{
	padding-top: 75px;
	max-width:900px;
	margin:0 auto;
}
#mainMenu ul li:nth-of-type(1){
	margin-right: 30px;
}
#mainMenu ul li:nth-of-type(2){
	margin-right: 30px;
}
#mainMenu ul li:nth-of-type(3){
	margin-right: 200px;
}
#mainMenu ul li a span{
	font-size: 90%;
	font-weight:700;
	display: block;
	text-align:center;
}
#mainMenu ul li a span:nth-of-type(2){
	color:#666666;
	font-size: 85%;
	margin-top: 5px;
}
#subMenu{
	position:absolute;
	top:0;
	right:0;
	height: 48px;
	padding:6px;
}
.subMenu_tel {
	margin-left: 18px;
}
.subMenu_tel a{
	background:#FFFFFF url(../images/subMenu_tel.png) no-repeat 10px center;
	background-size:22px;
	display: block;
	height: 36px;
	line-height: 36px;
	padding:0 10px 0 35px;
}
.subMenu_tel a span{
	font-size: 85%;
	color:#111111;
	vertical-align:top;
	height: 36px;
	line-height: 36px;
}
.subMenu_tel a em{
	font-weight:700;
	color:#9B0202;
	font-size: 133%;
}
.subMenu_language{
	font-size: 85%;
	line-height: 36px;
}
.subMenu_language a{
	color:#666666;
}
#lead{
	width: 100%;
	height: 100vh;
}
.topSlider{
	width: 100%;
	height: 100vh;
}
.topSlider .swiper-slide img{
	height: 100vh;
	width:100%;
	max-width:none;
	position:absolute;
	top:0;
	left:50%;
	-webkit-transform:translateX(-50%);
	-moz-transform:translateX(-50%);
	transform:translateX(-50%);
	-o-object-fit: cover;
	object-fit: cover;
}
.lead_text{
	position:absolute;
	top:50%;
	left:50%;
	transform:translate(-50%,-50%);
	z-index:99;
	width: 1040px;
	padding-top: 100px;
}
.lead_text h2{
	background:url(../images/lead_h2.png) no-repeat center top;
	background-size:321px;
	text-align:center;
	padding-top: 280px;
	padding-bottom: 35px;
	line-height: 1.4;
}
.lead_scroll{
	position:absolute;
	right:20px;
	bottom:10px;
}
.lead_scroll a{
	display: block;
	background:url(../images/lead_scroll.png) no-repeat center bottom;
	background-size:100%;
	width: 13px;
	height: 136px;
	text-indent: -9999px;
	z-index:99;
}

/*------------------------------------------------
footer
--------------------------------------------------*/
.totop{
	position:fixed;
	z-index:999;
	right:20px;
	bottom:20px;
	opacity:0;
	visibility:hidden;
	-webkit-transition: opacity 0.5s ease-out;
	-moz-transition: opacity 0.5s ease-out;
	transition: opacity 0.5s ease-out;
}
.totop_active{
	opacity:1;
	visibility:visible;
}
.totop a{
	display: block;
	text-indent: -9999px;
	background:url(../images/totop.png) no-repeat center bottom;
	background-size:100%;
	width: 13px;
	height: 146px;
}
#footer{
	background-color:#111111;
}
.copyright{
	height: 40px;
	line-height: 40px;
}
/*------------------------------------------------
about
--------------------------------------------------*/
#sect_about{
	padding:80px 0;
	overflow:hidden;
	position:relative;
	z-index:99;
	background:url(../images/bg.jpg) no-repeat center top;
}
.about_box{
	background:url(../images/about_box.png) repeat-y center top;
	overflow:visible;
}
.about_box .container1240{
	overflow:visible;
}
.about_box h2.title01{
	top:-35px;
	margin-left: 0;
}
.about_box h2.title01 span{
	width: 520px;
}
.about_pic01{
	width: 850px;
	position:absolute;
	top:-35px;
	left:50%;
	margin-left: 160px;
}
.about_text01{
	padding-right: 450px;
	margin-bottom: 80px;
}
.about_text01 h3{
	line-height: 1.8;
	margin-bottom: 30px;
}
.about_gallery{
	margin:10px 0 20px;
}
.about_gallery li{
	width: 412px;
}
.about_gallery li p{
	position:absolute;
	font-size: 85%;
	background-color:#111111;
	left:5px;
	padding:2px 5px;
	bottom:5px;
	line-height: 1;
}
.about_p01{
	background:url(../images/about_p01.png) no-repeat center top;
	width: 733px;
	min-height: 171px;
	margin:30px auto;
	padding:35px;
	font-weight:bold;
	background-size:100% 100%;
	color:#111111;
	letter-spacing:0;
}
.about_kodawari{
	background:url(../images/about_kodawari.png) no-repeat center top;
	position:relative;
}
.about_kodawari h3{
	position:absolute;
	background-color:#FFFFFF;
	color:#111111;
	height: 42px;
	line-height: 42px;
	padding:0 10px;
	top:14px;
	left:50%;
	margin-left: 285px;
}
.about_kodawari_text{
	padding:90px 0 0 380px;
}
.about_kodawari_text h4{
	margin-bottom: 40px;
}
.about_kodawari_text p span{
	display: block;
	text-align:center;
	padding-top: 50px;
	padding-bottom: 130px;
	background:url(../images/about_kodawari_p.png) no-repeat left bottom;
	background-size:300px;
}
.about_kodawari_pic01{
	position:absolute;
	width: 466px;
	top:0;
	right:50%;
	margin-right: 170px;
}
.oitawagyu{
	border:1px solid #666666;
	padding:10px;
	margin-top: 40px;
}
.oitawagyu_inner{
	background-color:#111111;
	padding:10px;
}
.oitawagyu_image{
	width: 173px;
	padding:20px;
	margin-right: 30px;
}
.oitawagyu_text{
	width: 750px;
}
.oitawagyu_text h3{
	margin:20px 0;
}

/*------------------------------------------------
menu
--------------------------------------------------*/
.menu_bg01{
	background:url(../images/menu_bg01.jpg) no-repeat center top;
	padding-top: 70px;
	padding-bottom: 80px;
}
.menu_p01{
	padding:40px 0;
}
.menu_p01 span{
	display: block;
	text-align:right;
	line-height: 1.8;
	font-size: 85%;
}
#menuLunch{
	background:url(../images/menu_lunch.png) no-repeat center top;
}
#menuLunch h3{
	text-align:right;
	padding-top: 10px;
	padding-bottom: 15px;
}
.menuSlider li{
	background-color:#FFFFFF;
	color:#111111;
	width: 480px !important;
	margin:0 20px;
}
.menuSlider_text{
	padding:10px 20px;
	height: 190px;
}
.menuSlider_text h4{
	line-height: 1.8;
	margin-bottom: 10px;
}
.menuSlider_price{
	color:#9B0202;
	position:absolute;
	bottom:25px;
	right:20px;
	line-height: 1;
}
.menu_p02{
	text-align:right;
	line-height: 1;
	margin-top: 15px;
	margin-bottom: 45px;
}
#menuDinner{
	background:url(../images/menu_dinner.png) no-repeat center top;
}
#menuDinner h3{
	padding-top: 10px;
	padding-bottom: 15px;
}
#menuDinnerSlider{
	margin-bottom: 45px;
}

/*------------------------------------------------
shopinfo
--------------------------------------------------*/
#sect_shopinfo{
	background:url(../images/shopinfo_bg.jpg) no-repeat center top;
	padding:80px 0;
}
.shopinfo_box{
	padding-top: 40px;
	background:url(../images/shopinfo_box.png) no-repeat center top;
	margin:40px 0 80px;
}
.shopinfo_address{
	width: 400px;
}
.shopinfo_address h3{
	line-height: 1.4;
	margin-bottom: 20px;
}
.shopinfo_address address{
	line-height: 1.8;
}
.shopinfo_address table{
	border-collapse:separate;
	border-spacing:0 5px;
	width: 100%;
}
.shopinfo_address table th{
	width: 100px;
	vertical-align:top;
	padding-top: 5px;
}
.shopinfo_address table th span{
	display: block;
	border:1px solid #FFFFFF;
	line-height: 1.2;
	padding:5px 0;
	text-align:center;
}
.shopinfo_address table td{
	padding-left: 20px;
	line-height: 1.4;
	vertical-align:middle;
}

.shopinfo_map{
	width: 580px;
	height: 580px;
}
#gmap{
	width: 100%;
	height: 580px;
}
.shopinfo_tel{
	border:1px solid #666666;
	padding:10px;
}
.shopinfo_tel_inner{
	background:url(../images/shopinfo_tel.png) no-repeat center top;
	background-size:100%;
	height: 166px;
	padding-right: 440px;
	padding-top: 35px;
}
.shopinfo_tel_inner p{
	line-height: 1;
	color:#111111;
}
.shopinfo_tel_link{
	text-align:center;
	margin-top: 20px;
}
.shopinfo_tel_link a{
	color:#9B0202;
}
.shopinfo_tel_link a:before{
	content:'';
	display:inline-block;
	margin-right: 5px;
	background:url(../images/shopinfo_tel_link.png) no-repeat center center;
	background-size:100%;
	width: 45px;
	height: 33px;
}
#tatenpo{
	padding:80px 0;
}
.tatenpo_banner{
	display: block;
	background:#FFFFFF url(../images/tatenpo_banner.png) no-repeat center top;
	background-size:100%;
	width: 480px;
	height: 240px;
	text-indent: -9999px;
	margin:45px auto 0;
}
.tatenpo_banner:hover{
	opacity:1;
	background-color:rgba(255,255,255,0.6);
	-webkit-transition: all 0.3s ease-out;
	-moz-transition: all 0.3s ease-out;
	transition: all 0.3s ease-out;
}
.tatenpo_banner2{
	display: block;
	background:#FFFFFF url(../images/tatenpo_banner2.png) no-repeat center top;
	background-size:100%;
	width: 480px;
	height: 240px;
	text-indent: -9999px;
	margin:45px auto 0;
}
.tatenpo_banner2:hover{
	opacity:1;
	background-color:rgba(255,255,255,0.6);
	-webkit-transition: all 0.3s ease-out;
	-moz-transition: all 0.3s ease-out;
	transition: all 0.3s ease-out;
}
.tabelog_banner{
	display: block;
	background-size:100%;
	width: 480px;
	margin:45px auto 0;
}











