@charset "UTF-8";
/* common */
body {
 background-color: #f3ede6;
 color: #0b0d20;
 font-family: "游明朝", "Yu Mincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", serif;
 font-size: 16px;
 line-height: 1.6;
}
p {
 text-align: justify;
 line-break: strict;
}
/* ハンバーガーメニュー */
.inner {
 width: 100%;
 margin: 0 auto;
}
.inner:after {
 content: "";
 clear: both;
 display: block;
}
/* header */
#top-head {
 top: -135px;
 position: absolute;
 width: 100%;
 margin: 100px auto 0;
 padding: 40px 40px 0;
 line-height: 1;
 z-index: 999;
}
#top-head a, #top-head {
 color: #fff;
 text-decoration: none;
}
#top-head .inner {
 position: relative;
}
#top-head .logo {
 float: left;
 margin-left: 30px;
 margin-top: 10px;
}
#global-nav ul {
 position: absolute;
 right: 0;
 bottom: 0;
 font-size: 17px;
}
#global-nav ul li {
 float: left;
}
#global-nav ul li a {
 padding: 0 25px;
}
/* Fixed */
#top-head.fixed {
 top: 0;
 margin-top: 0;
 position: fixed;
 padding-top: 0px;
 height: 80px;
 background: #fff;
 background: rgba(0, 0, 0, .7);
 transition: top .65s ease-in;
 -webkit-transition: top .65s ease-in;
 -moz-transition: top .65s ease-in;
}
.logo img {
 height: 50px;
 width: auto;
}
.logo img:hover {
 opacity: 0.8;
 transition: .5s;
}
#top-head.fixed #global-nav ul li a {
 padding: 0 25px;
}
/* Toggle Button */
#nav-toggle {
 display: none;
 position: absolute;
 right: 12px;
 top: 22px;
 width: 34px;
 height: 36px;
 cursor: pointer;
 z-index: 101;
}
#nav-toggle div {
 position: relative;
}
#nav-toggle span {
 display: block;
 position: absolute;
 height: 3px;
 width: 100%;
 background: #fff;
 left: 0;
 -webkit-transition: .35s ease-in-out;
 -moz-transition: .35s ease-in-out;
 transition: .35s ease-in-out;
}
#nav-toggle span:nth-child(1) {
 top: 0;
}
#nav-toggle span:nth-child(2) {
 top: 11px;
}
#nav-toggle span:nth-child(3) {
 top: 22px;
}
@media screen and (max-width: 896px) {
 #top-head, .inner {
  width: 100%;
  padding: 0;
 }
 #top-head {
  top: 0;
  position: fixed;
  margin-top: 0;
 }
 /* Fixed reset */
 #top-head.fixed {
  padding-top: 0;
  background: transparent;
 }
 #mobile-head {
  width: 100%;
  height: 60px;
  z-index: 999;
  position: relative;
 }
 #top-head.fixed {
  top: 0;
  margin-top: 0;
  position: fixed;
  padding-top: 0px;
  height: 70px;
  background: #fff;
  background: rgba(0, 0, 0, .7);
  transition: top .65s ease-in;
  -webkit-transition: top .65s ease-in;
  -moz-transition: top .65s ease-in;
 }
 #global-nav {
  position: absolute;
  /* 開いてないときは画面外に配置 */
  top: -500px;
  background: #333;
  width: 100%;
  text-align: center;
  padding: 10px 0;
  -webkit-transition: .65s ease-in-out;
  -moz-transition: .65s ease-in-out;
  transition: .65s ease-in-out;
 }
 #global-nav ul {
  position: static;
  right: 0;
  bottom: 0;
  font-size: 14px;
 }
 #global-nav ul li {
  float: none;
  position: static;
 }
 #top-head #global-nav ul li a, #top-head.fixed #global-nav ul li a {
  width: 100%;
  display: block;
  color: #fff;
  padding: 18px 0;
 }
 #nav-toggle {
  display: block;
 }
 /* #nav-toggle 切り替えアニメーション */
 .open #nav-toggle span:nth-child(1) {
  top: 11px;
  -webkit-transform: rotate(315deg);
  -moz-transform: rotate(315deg);
  transform: rotate(315deg);
 }
 .open #nav-toggle span:nth-child(2) {
  width: 0;
  left: 50%;
 }
 .open #nav-toggle span:nth-child(3) {
  top: 11px;
  -webkit-transform: rotate(-315deg);
  -moz-transform: rotate(-315deg);
  transform: rotate(-315deg);
 }
 /* #global-nav スライドアニメーション */
 .open #global-nav {
  /*height: 100vh;*/
  -moz-transform: translateY(556px);
  -webkit-transform: translateY(556px);
  transform: translateY(556px);
 }
}
/* ハンバーガーメニューここまで */
/* ヒーロー画像 */
.full div {
 background-repeat: no-repeat;
 background-size: cover;
 background-position: center;
 height: 100vh;
 margin: 0;
}
.full div.img01 {
 background-image: url(../img/hero_1.png);
}
.full div.img02 {
 background-image: url(../img/hero_2.png);
}
.full div.img03 {
 background-image: url(../img/hero_3.png);
}
.full .slick-dots {
 bottom: 4%;
 z-index: +1;
}
/* パンくずリスト */
.breadcrumbs {
 max-width: 1024px;
 margin: 20px auto 0;
}
.breadcrumbs ul {
 display: flex;
 list-style-type: none;
 margin-left: 20px;
}
.breadcrumbs li {
 font-size: 18px;
}
.breadcrumbs li a {
 color: #333333;
 text-decoration: none;
}
.breadcrumbs li a:hover {
 color: #c7af97;
}
.breadcrumbs li:after {
 content: '\003e';
 margin-left: 10px;
 margin-right: 10px;
 color: #888888;
}
.breadcrumbs li:last-child:after {
 content: "";
}
/* メイン領域・全ページ共通 */
.main {
 padding: 0 20px;
}
.about p, .concept p, .lead p {
 text-align: center;
 padding-bottom: 20px;
}
.h2 {
 padding-top: 30px;
 margin-bottom: 30px;
 font-size: 25px;
 text-align: center;
}
.h3 {
 padding-top: 10px;
 padding-left: 5px;
 font-size: 18px;
}
/* ページトップへ戻るボタン */
.pagetop {
 z-index: 1000;
 position: fixed;
 bottom: 10px;
 right: 20px;
}
.pagetop a {
 display: block;
}
.pagetop img {
 width: 30px;
}
/* フッター領域・全ページ共通(SP) */
.border_1 {
 border: 1px solid #333;
 margin-top: -190px;
 margin-left: 20px;
 margin-right: 20px;
}
.border_2 {
 border: 2px solid #333;
 margin-top: 180px;
 margin-bottom: 20px;
 margin-left: 20px;
 margin-right: 20px;
}
/* 店舗情報(SP) */
.footer_info {
 display: block;
 margin: 0 auto;
 float: inherit;
 width: 90%;
 position: relative;
 margin-bottom: 30px;
}
.footer_info li {
 float: left;
 width: 33%;
 height: 61px;
 margin-top: 20px;
 position: relative;
}
.footer_info li:nth-child(4) {
 float: left;
 width: 40%;
}
.footer_info li:last-child {
 float: right;
 width: 40%;
}
.footer_info li:before:first-child {
 margin-left: 20px;
}
.tea, .holiday, .tel {
 padding-top: 10px;
}
.holiday {
 padding-left: 7%;
 margin-left: 5%;
}
.tel {
 padding-left: 5%;
 margin-right: 10%;
}
.tel dl dt {
 width: 120%;
}
.lunch:before, .tea:before, .dinner:before, .holiday:before, .tel:before {
 content: "";
 width: 1px;
 height: 40px;
 position: absolute;
 bottom: 8px;
 left: 0px;
 border-left: 1px solid #1a1311;
}
.dinner:after, .tel:after {
 content: "";
 width: 1px;
 height: 40px;
 position: absolute;
 bottom: 10px;
 border-right: 1px solid #1a1311;
}
.tel:after {
 margin-left: 10%;
}
.footer_info li h2 {
 float: left;
 width: 100%;
 text-align: center;
 font-size: 15px;
 font-weight: normal;
 letter-spacing: 0.1em;
 line-height: 1.5em;
}
.footer_info dl {
 float: left;
 width: 100%;
}
.footer_info dl dt {
 float: left;
 width: 100%;
 text-align: center;
 font-size: 15px;
}
.footer_info dl dd {
 float: left;
 width: 100%;
 text-align: center;
 font-size: 15px;
 line-height: 1.5em;
}
/* SNS&copyright(SP) */
footer li {
 display: inline-block;
 justify-content: space-between;
 width: 50px;
 text-align: center;
}
.footer_sns li a {
 position: relative;
 display: block;
 width: 34px;
 height: 34px;
}
.footer_sns img {
 width: auto;
 height: 38px;
}
.footer_contact img {
 width: 40px;
 height: 30px;
}
.footer_sns > div {
 width: 140px;
 position: relative;
 margin-top: 60px;
 padding-right: 0;
 padding-left: 40px;
 display: inline-block;
}
.footer_sns, .footer_contact {
 text-align: center;
 margin: 16px auto;
}
.footer_sns h4 {
 font-size: 15px;
 position: absolute;
 left: 0;
 top: 50%;
 transform: translate(0%, -50%);
}
.footer_contact li a {
 position: relative;
 display: block;
 width: 34px;
 height: 34px;
}
.footer_contact > div {
 width: 180px;
 position: relative;
 margin: 16px 8px;
 padding-left: 60px;
 display: inline-block;
}
.footer_contact h4 {
 font-size: 15px;
 position: absolute;
 left: 0;
 top: 50%;
 transform: translate(0%, -50%);
}
.instagram a:hover, .facebook a:hover, .footer_contact a:hover {
 transform: scale(.8, .8);
}
.copyright {
	margin-bottom: 20px;
 text-align: center;
 font-size: 14px;
 letter-spacing: 1px;
}
/* topページ(SP) */
.about h2 {
	padding-top: 0;
}
.menu h2, .shop h2 {
	margin-bottom: 20px;
}
.menu a {
 color: #fff;
 text-decoration: none;
}
.menu h3 {
 margin-left: 20px;
 margin-bottom: 10px;
}
.menu p, .shop p {
 padding-bottom: 20px;
 width: 80%;
 margin: 0 auto;
}
.menu img {
 width: 90%;
 padding-top: 20px;
 padding-bottom: 10px;
 display: block;
 margin: 0 auto;
}
.shop img {
 width: 90%;
 padding-bottom: 30px;
 display: block;
 margin: 0 auto;
}
.food, .sweets, .drink {
 background-color: #f9f6f3;
 margin-top: 20px;
}
.drink {
 margin-bottom: 20px;
}
.shop .readmore {
 margin-top: -20px;
}
/* .ReadMoreボタン */
.readmore p {
 max-width: 140px;
 margin-right: auto;
 margin-left: auto;
 text-align: left;
 font-size: 15px;
}
.readmore a {
 display: block;
 padding: 3px 1px 1px 17px;
 margin-top: 25px;
 background: #b59575;
 line-height: 2.5;
 color: #fff;
 text-decoration: none;
 transition: 1s;
}
.readmore a:hover {
 background: #c6b9ad;
 color: #fff;
}
.readmore a:after {
 content: url(../img/arrow.png);
 display: inline-block;
 max-width: 5px;
 margin-left: 10px;
}
/* 下層ページ共通(SP) */
/* 固定ナビゲーションメニュー */
#top-head.header_nav.fixed {
 background: rgba(255, 255, 255, .9);
}
#top-head.header_nav.fixed #global-nav.header_nav ul li a {
 color: #fff;
}
#nav-toggle.header_nav span {
 background: #333;
}
#top-head.header_nav a, #top-head.header_nav {
 color: #333;
}
#top-head.header_nav a::after {
 background-color: #333;
}
/* ヒーローイメージ(SP・PC) */
.hero div {
 background-repeat: no-repeat;
 background-size: cover;
 background-position: center;
 height: 50vh;
 margin: 0;
}
/* aboutページ(SP) */
.hero div.about_hero {
 margin-top: 70px;
 background-image: url(../img/about_hero.png);
}
.h2_sub, .h2_sub_philosophy {
 margin-top: -35px !important;
 font-size: 18px;
 font-weight: bold;
}
.h2_sub_philosophy {
 text-align: center;
}
.ingredients img {
 width: 40%;
 padding-top: 20px;
 padding-bottom: 10px;
 display: block;
 margin: 0 auto;
}
.ingredients h3 {
 margin-left: 8%;
 margin-bottom: 10px;
 color: #a68c75;
}
.border {
 margin-left: 10px;
 border-bottom: solid 1px #a68c75;
}
.ingredients p {
 padding-bottom: 20px;
 width: 80%;
 margin: 0 auto;
}
/* menuページ(SP) */
.hero div.menu_hero {
 margin-top: 70px;
 background-image: url("../img/menu_hero.png");
}
.menupage {
 margin: 0 20px;
}
.menupage img {
 width: 80%;
 display: block;
 margin: 0 auto 10px;
 border-radius: 10px;
}
.lead {
 margin-bottom: 40px;
}
.menu_food, .menu_sweets, .menu_drink {
 margin-bottom: 50px;
}
.menupage .h3 {
 margin-bottom: 10px;
 font-size: 22px;
}
.menu-items {
 line-height: 35px;
}
/* メニューリスト(SP・PC) */
.flex {
 display: flex;
 display: -ms-flexbox;
 -ms-flex-flow: row wrap;
 flex-flow: row wrap;
 width: 100%;
}
.tab-reader-box2 {
 text-align: center;
 flex: auto;
}
.tab-r-line_1 {
 display: inline-block;
 width: 93%;
 height: 1px;
 padding-bottom: 5px;
 border-top: dotted 2px #ccc;
}
/* menuページのボタン(SP・PC) */
.btn {
 margin-top: 20px;
 text-align: center;
}
.btn_view {
 display: inline-block;
 text-align: center;
 justify-content: center;
 padding: 5px 10px;
 text-decoration: none;
 color: #6f4f47;
 border: double 4px #b59575;
 border-radius: 3px;
 transition: .4s;
 font-size: 14px;
 font-weight: bold;
}
.btn_view:hover {
 background: #fffbef;
}
/* PC版の表示 */
@media screen and (min-width: 897px) {
 /* ハンバーガーメニュー(PC) */
 #global-nav ul li {
  font-size: 17px;
 }
 #global-nav ul li a {
  padding: 0 25px;
  position: relative;
  display: inline-block;
  transition: .3s;
 }
 #global-nav ul li a::after {
  position: absolute;
  bottom: -10px;
  left: 0;
  content: '';
  width: 0;
  height: 1px;
  background-color: #fff;
  transition: .3s;
 }
 #global-nav ul li a:hover::after {
  width: 100%;
 }
 #top-head .inner {
  top: 5px;
 }
 .logo img {
  height: 70px;
  width: auto;
 }
 #top-head .logo {
  width: 70px;
  float: left;
  margin-top: 0;
  margin-bottom: -30px;
 }
	/* 固定ナビゲーションメニュー(PC) */
 #top-head.header_nav.fixed #global-nav.header_nav ul li a {
  color: #333;
 }
 #top-head.header_nav.fixed #global-nav.header_nav ul li a::after {
  background-color: #333;
 }
 /* ページトップへ戻るボタン(PC) */
 .pagetop {
  right: 20px;
  bottom: 30px;
 }
 .pagetop img {
  width: 35px;
 }
 /* フッター領域・全ページ共通(PC) */
 .footer {
		margin-top: 50px;
  margin-bottom: 20px;
 }
	/* 店舗情報(PC) */
 .footer_info {
  width: 100%;
  max-width: 810px;
  margin-bottom: 0px;
  display: flex;
  justify-content: center;
 }
 .footer_info li {
  max-width: 160px;
 }
 .holiday:before {
  display: none;
 }
 .tel:after {
  margin: 0;
 }
 .holiday, .tel {
  margin: 0;
  padding: 10px 0 0;
 }
 .border_1 {
  display: none;
 }
 .border_2 {
  border: 1px solid #333;
  margin-top: -10px;
  margin-left: 20px;
  margin-right: 20px;
 }
	/* SNS&copyright(PC) */
 .sns_contact {
  display: inline-flex;
 }
 .sns_1 {
  text-align: center;
 }
 .footer_sns img {
  width: auto;
  height: 40px;
 }
 .footer_contact img {
  width: 40px;
  height: 30px;
 }
 .instagram {
  margin-left: 40px;
 }
 .facebook {
  margin-left: 30px;
 }
 .footer_sns {
  margin-top: 0;
 }
 .footer_sns > div {
  margin-top: 80px;
 }
 .footer_contact {
  margin-top: 70px;
  margin-left: 20px;
  margin-right: -10px;
 }
 /* topページ(PC) */
	.about h2, .menu h2, .shop h2 {
	font-size: 36px;
	margin-top: 20px;
	}
 .menu_detail {
  display: flex;
  justify-content: center;
 }
 .menu_detail img {
  width: 270px;
  height: auto;
 }
 .food {
  max-width: 320px;
  margin-bottom: 32px;
  margin-right: 10px;
 }
 .sweets {
  max-width: 320px;
  margin-bottom: 32px;
  margin-right: 12px;
 }
 .drink {
  max-width: 320px;
  margin-bottom: 32px;
 }
 .shop img {
  width: 375px;
  height: auto;
  margin-left: 30px;
 }
 .shop_p {
  margin-top: 30px;
 }
 .shop_detail {
  max-width: 860px;
  display: flex;
  margin: 0 auto;
		padding-top: 20px;
  padding-bottom: 15px;
 }
	
 /* .ReadMoreボタン(PC) */
 .readmore p {
  max-width: 160px;
  font-size: 17px;
  margin-bottom: 40px;
 }
 .readmore a {
  padding: 5px 15px 3px 20px;
 }
 .readmore a:after {
  margin-left: 8px;
 }
 /* 下層ページ共通(PC) */
 .hero div.about_hero, .hero div.menu_hero {
  margin-top: 90px;
 }
	/* aboutページ(PC) */
 .wrap, .wrap1, .wrap2 {
  display: flex;
 }
 .ingredients {
  max-width: 1024px;
  width: 100%;
  margin: 30px auto 0;
  padding: 0 30px 0 20px;
 }
 .ingredients img {
  width: 140px;
  padding-top: 40px;
  padding-bottom: 50px;
 }
 .wrap2 {
  margin-right: -40px;
 }
 .vegetables {
  margin-left: -20px;
  margin-right: 10px;
 }
 .sugar {
  margin-left: -20px;
  margin-right: 35px;
 }
 .chocolate {
  margin-left: -20px;
  margin-right: 50px;
 }
 .vegetables p, .flour p, .sugar p, .fruits p, .chocolate p, .coffee p {
  margin-left: 40px;
 }
 .vegetables p {
  width: 69%;
 }
 .flour p {
  width: 85%;
 }
 .sugar p {
  width: 73%;
 }
 .fruits p {
  width: 85%;
 }
 .chocolate p {
  width: 77%;
 }
 .coffee p {
  width: 82%;
 }
 /* menuページ(PC) */
 .menupage {
  max-width: 1024px;
  width: 100%;
  margin: 40px auto 10px;
 }
 .menupage .h3 {
  font-size: 25px;
 }
 .menu_food, .menu_drink {
  display: flex;
  justify-content: center;
  flex-direction: row-reverse;
 }
 .menu_sweets {
  display: flex;
  justify-content: center;
 }
 .menu-items {
  width: 300px;
  line-height: 40px;
 }
 .menu_food .menu-items, .menu_drink .menu-items {
  margin-right: 100px;
  margin-left: 70px;
 }
 .menu_sweets .menu-items {
  margin-left: 100px;
  margin-right: 60px;
 }
 .menupage img {
  width: 400px;
  margin-top: 20px;
 }
 .btn {
  margin-top: 20px;
  text-align: right;
  line-height: 30px;
 }
}