@charset "UTF-8";

/* リセット */
body,div,
dl,dt,dd,ul,ol,li,
h1,h2,h3,h4,h5,h6,
pre,form,fieldset,input,textarea,p,blockquote,th,td {
	margin: 0;
	padding: 0;
	font-size: 100%;
	list-style: none;
}
img {
  vertical-align: bottom;
	max-width: 100%;
}
body{
  font-family: 'Arial',YuGothic,'Yu Gothic','Hiragino Kaku Gothic ProN','ヒラギノ角ゴ ProN W3','メイリオ', Meiryo,'ＭＳ ゴシック',sans-serif
}
/* ヘッダーデザイン */
header{
	height: 70px;
	width: 100%;
	/* background: url(../images/header_bg.png) repeat; */
	background: #FFFFFF;
	position: fixed;
	top: 0;
	z-index: 10;
	/* box-shadow: 0px 2px 2px rgba(0,0,0,0.2); */
}
.logo{
	margin: 2px 20px;
}
.logo:hover {
	opacity: 0.7;
}
.header-left{
	float:left;
	width: 50%;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-o-box-sizing: border-box;
	-ms-box-sizing: border-box;
	box-sizing: border-box;
}
#menu{
	display: block;
}
@media (max-width: 968px){
	.header-left img{
		width: auto;
		height: auto;
	}
	.logo{
		margin: 2px 8px;
	}
	header{
		height:55px;
	}
  .header-right ul{
		margin-top: 50px;
		width:80%;
		list-style: none;
		float: right;
	}
	.header-right li a{
		display: block;
		padding: 10px 8px;
		color: #000000;
		font-size: 12px;
		text-decoration: none;
	}
	@media (max-width: 768px){
		header{
			height:76px;
		}
	}
	/* トグルボタン */
	#menubtn {
	    padding: 8px 10px;
	    border: solid 1px #aaaaaa;
	    border-radius: 5px;
	    position: absolute;
	    top: 4px;
	    right: 12px;
	    cursor: pointer;
	}
	#menubtn:hover{
		background: #dddddd;
	}
	#menubtn:hover{
		outline: none;
	}
	#menubtn i{
		color: #888888;
		font-size: 20px;
	}
	#menubtn span{
		display: inline-block;
		text-indent: -9999px
	}
	#menu{
		display: none;
	}
}
@media (min-width: 768px){
	#menubtn{
		display: none;
	}
}
header .hamburger{
	display: none;
}
@media (max-width: 968px){
	header .hamburger{
		display: block;
	}
}
/*　ハンバーガーボタン　*/
.hamburger {
  display : block;
  position: fixed;
  z-index : 3;
  right : 13px;
  top   : 12px;
  width : 42px;
  height: 42px;
  cursor: pointer;
  text-align: center;
}
.hamburger span {
  display : block;
  position: absolute;
  width   : 30px;
  height  : 2px ;
  left    : 6px;
  background : #555;
  -webkit-transition: 0.5s ease-in-out;
  -moz-transition   : 0.5s ease-in-out;
  transition        : 0.5s ease-in-out;
}
.hamburger span:nth-child(1) {
  top: 10px;
}
.hamburger span:nth-child(2) {
  top: 20px;
}
.hamburger span:nth-child(3) {
  top: 30px;
}

/* ナビ開いてる時のボタン */
.hamburger.active span:nth-child(1) {
  top : 16px;
  left: 6px;
  -webkit-transform: rotate(315deg);
  -moz-transform   : rotate(315deg);
  transform        : rotate(315deg);
}
.hamburger.active span:nth-child(2),
.hamburger.active span:nth-child(3) {
  top: 16px;
  -webkit-transform: rotate(-315deg);
  -moz-transform   : rotate(-315deg);
  transform        : rotate(-315deg);
}

nav.globalMenuSp {
  position: fixed;
  z-index : 2;
  top  : 0;
  left : 0;
  color: #000;
  background: #fff;
  text-align: center;
  transform: translateX(100%);
  transition: all 0.6s;
  width: 100%;
}

nav.globalMenuSp ul {
  background: #ccc;
  margin: 0 auto;
  padding: 0;
  width: 100%;
}
nav.globalMenuSp ul li {
  list-style-type: none;
  padding: 0;
  width: 100%;
  border-bottom: 1px solid #fff;
}
nav.globalMenuSp ul li:last-child {
  padding-bottom: 0;
  border-bottom: none;
}
nav.globalMenuSp ul li:hover{
  background :#ddd;
}
nav.globalMenuSp ul li a {
  display: block;
  color: #000;
  padding: 1em 0;
  text-decoration :none;
}

/* このクラスを、jQueryで付与・削除する */
nav.globalMenuSp.active {
  transform: translateX(0%);
}
.header-right {
    float: right;
		width: 50%;
    padding: .5em 1.5% 0 0;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-o-box-sizing: border-box;
	-ms-box-sizing: border-box;
	box-sizing: border-box;
}
.header-right ul {
	margin-top: 12px;
	padding: 0;
	list-style: none;
	text-align: right;
}
@media (max-width: 768px){
	/* メニュー設定 */
	.header-right ul {
		margin-top: 50px;
		width: 70%;
		list-style: none;
		float: right;
	}
}
.header-right li a{
	display: block;
	color:#000000;
	font-size: 16px;
	font-weight: bold;
	text-decoration: none;
	float: right;
}
.header-right li{
	width:auto;
	padding: 0 2%;
	display: inline-block;
}
/* ナビに線を入れる設定 */
.menu a:after {
	padding-bottom: .3em;
  border-bottom: solid 3px #7b89b9;
  bottom: 0;
  content: "";
  display: block;
  transition: all .3s ease;
  -webkit-transition: all .3s ease;
  width: 0;
}
.menu a:hover:after {
  width: 100%;
}

/* スライドCSSここから*/
.slide img{
  width: 100%;
	text-align: center;
}
.slide{
	margin-left: 6em;
	margin-right: 6em;
}

/* SP用メディアクエリ */
@media (max-width: 767px){
	.slide{
		display: none;
	}
	.slide02 img{
	  width: 100%;
		height: auto;
		text-align: center;
	}
}
@media (min-width: 768px){
	.slide02{
		display: none;
	}
}
@media (max-width: 1080px){
	.slide{
		margin-left: 1em;
		margin-right: 1em;
	}
}
/* topフォトテキスト設定 */
.top_photo_text{
	position: absolute;
	right: 4em;
	top: 28em;
}
.top_photo_text span{
	font-size: 15px;
}
.top_photo_text h3{
	font-weight: normal;
	font-size: 12px;
  text-align: right;
	line-height: 2em;
	letter-spacing: 0.1em;
	font-family: 'Quicksand',"Lucida Sans Unicode", "Lucida Grande", sans-serif;
}
@media (max-width: 1780px){
	.top_photo_text{
		position: absolute;
		right: 4em;
		top: 24em;
	}
}
@media (max-width: 1568px){
	.top_photo_text{
		position: absolute;
		right: 4em;
		top: 20em;
	}
}
@media (max-width: 1276px){
	.top_photo_text{
		position: absolute;
		right: 2em;
		top: 15em;
	}
	.top_photo_text h3{
		font-size: 10px;
	}
}
	@media (max-width: 780px){
		.top_photo_text h3{
			display: none;
		}
	}
	/* トライアングル設定 */
.triangle01 {
  position: absolute;
  left: 0;
  top: 10em;
  z-index: -5;
}
@media (max-width: 1540px){
	.triangle01 {
	  position: absolute;
	  left: 0;
	  top: 6em;
	  z-index: -5;
		width: 500px;
	}
	.triangle02 {
	  position: absolute;
	  right: 0;
	  top: 50em;
	  z-index: -5;
	}
	.triangle03{
		position: absolute;
	  right: 0;
	  top: 80em;
	  z-index: -5;
	}
}
@media (max-width: 1024px){
	.triangle01 {
		position: absolute;
		left: 0;
		top: 8em;
		z-index: -5;
		width: 320px;
		height: auto;
	}
	.back_coffee{
		display: none;
	}
}
@media (max-width: 768px){
	.triangle01 {
		position: absolute;
		left: 0;
		top: 6em;
		z-index: -5;
		width: 320px;
		height: auto;
	}
}
@media (max-width: 698px){
	.triangle01 {
		display: none;
	}
}
/*1.フェードインアニメーションの指定*/
.scrollanime {opacity: 0;} /*一瞬表示されるのを防ぐ*/
.fadeInDown {
    animation-name: fadeInDown;
    animation-duration: 5s;
    animation-fill-mode: forwards;
}
@keyframes fadeInDown {
    0% {
        opacity: 0;
    }
    100% {
    opacity: 1;
    transform: translate(0);
    }
}
/*2.上下の動きを指定*/
.updown {transform: translateY(-100px);}
.downup {transform: translateY(100px);}
/*3.左右の動きを指定*/
.sect02{overflow: hidden;} /*横スクロールバーを隠す*/
.slide-right {transform: translateX(200px);}
.slide-left {transform: translateX(-200px);}

/* バナー設定 */
.banner{
	width: auto;
	padding-top: 2em;
	text-align: center;
	margin-bottom: 5em;
}
.banner a:hover{
	opacity: 0.7;
}
@media (max-width: 768px){
	.banner{
		padding-top: 1em;
	}
}
.banner_wraper a{
  text-decoration: none;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all  0.3s ease;
}
/* メニュー設定 */
.content_menu{
	width: auto;
}
.lunch{
	width: 780px;
	margin-top: 5em;
	margin-left: auto;
	margin-right: auto;
	margin-bottom: 2em;
}
.lunch:after{
	content: "";
	display: block;
	clear: both;
}
.lunch_wrapper{
	margin-bottom: 1.8em;
	height: 10.5em;
}
.lunch_wrapper :after{
	content: "";
	display: block;
	clear: both;
}
.lunch .image{
	 text-align: center;
	 margin-bottom: 2em;
	 margin-top: 2em;
 }
 .lunch h4{
 	font-size: 19px;
	color: #825C5F;
 	margin-left: auto;
 	margin-right: auto;
 	line-height: 1.8em;
 }
.lunch p{
	font-size: 16px;
	margin-left: auto;
	margin-right: auto;
	line-height: 1.8em;
}
.lunch_left{
	float: left;
	width: 634px;
}
.lunch_left h3{
	font-size: 21px;
	color: #825C5F;
}
.lunch_left h3 span{
	font-weight: normal;
	font-size: 17px;
}
.takeout_icon{
	margin-top: 7em;
}
.text{
	float: left;
	width: 748px;
	margin-left: auto;
	margin-right: auto;
}
.text p{
	font-size: 15px;
	text-align: right;
	margin-top: 2.6em;
}
@media (max-width: 821px){
	.lunch_wrapper{
		width: 748px;
		margin-left: auto;
		margin-right: auto;
	}
	.lunch{
		width: auto;
	}
	.lunch_left{
		width: 560px;
		margin-left: 1.5em;
	}
	/* .text p{
		margin-right: 1em;
		margin-top: 2.6em;
	} */
}
@media (max-width: 766px){
	.lunch_wrapper{
		width: auto;
		margin-left: auto;
		margin-right: auto;
		height: auto;
	}
	.content_menu{
	}
	.lunch_left{
		float: none;
		width: auto;
		margin-left: 1em;
	}
	.lunch {
		width: auto;
		margin-bottom: 4em;
	  margin-left: .8em;
	  margin-right: .8em;
	}
	.lunch p{
		font-size: 16px;
		line-height: 1.6em;
	}
	.menu_photo{
		text-align: center;
	}
	.menu_photo img{
		margin-top: .8em;
		width: 50%;
	}
	.text p{
		text-align: left;
	}
	.text{
		float: left;
		width: auto;
	}
}
/* footerデザイン */
footer{
	margin-bottom: 5em;
}
.wrapbox01 {
    width: 920px;
    height: auto;
    margin-right: auto;
    margin-left: auto;
    position: relative;
}
@media (max-width: 821px){
	.wrapbox01 {
			width: auto;
	}
	footer h1 {
			float: left;
			width: 110px;
			height: auto;
			position: relative;
			left: 50%;
			margin-left: -72px;
	}
}
@media (max-width: 780px){
	.wrapbox01 {
			width: auto;
	}
	footer h1 {
			float: left;
			width: 110px;
			height: auto;
			position: relative;
			left: 50%;
			margin-left: -72px;
	}
}
@media (min-width: 735px){
	footer .footer_info li {
    float: left;
    width: 558px;
}
}
@media (max-width: 734px){
	footer{
		margin-bottom: 3em;
	}
	footer .footer_info {
    float: right;
    width: 100%;
    position: relative;
    margin-bottom: 30px;
}
footer .footer_info li {
    float: left;
    width: 50%;
    height: 61px;
    margin-top: 30px;
    position: relative;
}
footer .footer_info li:before {
    content: "";
    width: 1px;
    height: 17px;
    position: absolute;
    bottom: 0px;
    left: 0px;
    border-left: 1px solid #1a1311;
}
footer .footer_info li:last-child:after {
    content: "";
    float: left;
    width: 1px;
    height: 17px;
    position: absolute;
    right: 0;
    bottom: 0;
    /* border-right: 1px solid #1a1311; */
}
footer .footer_info dl dt {
    float: left;
    width: 100%;
    text-align: center;
    font-size: 14px;
}
footer .footer_info dl dd {
    float: left;
    width: 100%;
    text-align: center;
    font-size: 10px;
    line-height: 1.5em;
}
footer .footer_info02 .address {
    float: left;
    width: 100%;
    font-size: 13px;
    text-align: center;
}
footer .footer_info02 .copy {
    float: left;
    width: 100%;
    position: relative;
    font-size: 10px;
    font-family: 'Quicksand', sans-serif;
    margin-right: 20px;
    text-align: center;
}
}
footer h1 {
    float: left;
    width: 153px;
    position: relative;
		margin-top: 2.5em;
		text-align: right;
}
footer .footer_info {
    float: right;
    position: relative;
    margin-bottom: 30px;
}
footer .footer_info li {
    float: left;
    width: 186px;
    height: 68px;
    margin-top: 30px;
    position: relative;
}
footer .footer_info li:before {
    content: "";
    float: left;
    width: 1px;
    height: 17px;
    position: absolute;
    bottom: 15px;
    left: 0px;
    border-left: 1px solid #1a1311;
}
footer .footer_info li h2 {
    float: left;
    width: 100%;
    text-align: center;
    font-size: 13px;
    font-weight: normal;
    letter-spacing: 0.1em;
    line-height: 1.5em;
    font-family: 'Quicksand', sans-serif;
    margin-bottom: 5px;
}
footer .footer_info dl dd {
    float: left;
    width: 100%;
    text-align: center;
    font-size: 13px;
    line-height: 1.5em;
}
footer .footer_info dl {
    float: left;
    width: 100%;
}
footer .footer_info dl dt {
    float: left;
    width: 100%;
    text-align: center;
    font-size: 15px;
}
footer .footer_info li:before {
    content: "";
    float: left;
    width: 1px;
    height: 17px;
    position: absolute;
    bottom: 15px;
    left: 0px;
    border-left: 1px solid #1a1311;
}
footer .footer_info li h2 {
    float: left;
    width: 100%;
    text-align: center;
    font-size: 13px;
    font-weight: normal;
    letter-spacing: 0.1em;
    line-height: 1.5em;
    font-family: 'Quicksand', sans-serif;
    margin-bottom: 5px;
}
footer .footer_info02 .address {
    float: left;
    font-size: 13px;
}
footer .footer_info02 .copy {
    float: right;
    font-size: 9px;
    font-family: 'Quicksand', sans-serif;
    margin-right: 20px;
}

.line_wave{
	margin-bottom: 3em;
	text-align: center;
}
footer:after{
	content:"";
	display: block;
	clear: both;
}

/* グーグルmap設定 */
.google-maps {
position: relative;
padding-bottom: 25%; // これが縦横比
height: 0;
overflow: hidden;
margin-top: 2.5em;
}
.google-maps iframe {
position: absolute;
top: 0;
left: 0;
width: 100% !important;
height: 100% !important;
}
@media (max-width: 768px){
	.google-maps{
		width: auto;
		height: 12em;
	}
}

/* コピーライト設定 */
.copyright{
	background-color: #371E00;
}
.copyright h1{
	font-weight: normal;
	font-size: 15px;
	padding-top: 1.2em;
	padding-bottom: 1.2em;
	color:white;
	text-align: center;
}
