@charset "UTF-8";
/****************************************
Resetting
*****************************************/
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video, button {
	border: 0;
	font-size: 100%;
	font: inherit;
	margin: 0;
	padding: 0;
	vertical-align: baseline;
}

/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure,
footer, header, main,hgroup, menu, nav, section {
	display: block;
}

body {
	line-height: 1;
}

ol,ul,li{
	list-style: none;
}

blockquote, q {
	quotes: none;
}

blockquote:before,
blockquote:after,
q:before,
q:after {
	content: '';
	content: none;
}

table {
	border-collapse: collapse;
	border-spacing: 0;
}

input[type="submit"],
input[type="button"],
input[type="reset"]{
	appearance: button;
	border: none;
	border-radius: 0;
	box-sizing: border-box;
	cursor: pointer;
	-webkit-box-sizing: content-box;
	-webkit-appearance: button;
}
button {
	background:none;
}

a{
	text-decoration: none;
	outline: none;
}
a:focus, *:focus {outline:none;}

/******************************************
normarise
******************************************/
*{
	box-sizing:border-box;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-ms-box-sizing: border-box;
	-o-box-sizing: border-box;
}

body{
	color:#3a1e22;
	font-family:"ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, sans-serif;
	font-size:20px;
	line-height:1;
}
#wrapper {
	overflow: hidden;
	background:url(../img/bg_wood.png) repeat-y center 0;
	background-size:201% auto;
}

img {
	width:auto;
	max-width:100%;
}

a {
	color: #333;
	transition: .5s;
}

#svg {
  width:0;
  height:0;
  position:absolute;
  top:0;
  left:0;
}

/******************************************
clearfix
******************************************/
.cf:after {
	content: ".";
	clear: both;
	display: block;
	height: 0;
	visibility: hidden;
}

.cf {
	display: inline-table;
}
/* Hides from IE-mac \*/
* html .cf {
	height: 1%;
}
.cf {
	display: block;
}
/* End hide from IE-mac */

.pc {display:none;}

/****************************************
Layout
*****************************************/
.inner {
	width:100%;
	margin:0;
}
#contents {
	width:100%;
	padding:0 0 80px;
	position: relative;
	z-index:5;
}
#titleArea {
	padding:12% 0 10%;
	position:relative;
}
#titleArea #leaf_left, #titleArea #leaf_right {
  position: relative;
  margin-top:0;
  z-index:-1;
}
#titleArea #leaf_left img {
  width:30%;
  max-width:205px;
  position: absolute;
  left:-4%;
	margin-top:-25%;
}
#titleArea #leaf_right img {
  width:50%;
  max-width:406px;
  position: absolute;
  right:-11%;
	margin-top:-44%;
}
#titleArea h1 {
	padding:0 15%;
	position: relative;
	z-index:5;
}
#titleArea p {
	padding:0 20%;
	position: relative;
	z-index:5;
}
#titleArea h1 img, #titleArea p img {
	margin:0 auto;
	display:block;
}

/****************************************
header
*****************************************/
header {
	width:100%;
	height:50px;
	position:fixed;
	background:#fff;
	z-index:99;
}
header button {
	position: absolute;
	top:0;
	left:0;
	width:50px;
	height:50px;
}
header button img {
	display:block;
}
#spHeader {
  width: 100%;
  position: fixed;
  background: #fff;
}
#spHeader.open {
  height: 100%;
  overflow-y: scroll;
}
#logo {
	width:100%;
	height:50px;
	text-align: center;
	background:#fff;
}
#logo img {
	height:38px;
	padding:13px 0 0;
	margin:0 auto;
	display:block;
	box-sizing: border-box;
}
#spMenu {
	position: absolute;
	top:0;
	left:0;
	width:50px;
	height:50px;
	background:url(../img/btn_close.png) no-repeat 0 0;
	background-size:100% auto;
}
#spMenu a {
	display:block;
}
#spMenu a img {
	opacity:1;
	transition:all ease 0.3s;
}
#spMenu a.on img {
	opacity:0;
}
#sp_gNav {
	display:none;
	clear: both;
  width: 100%;
  height: 100%;
	z-index: 9999;
  overflow-y: scroll;
}
#sp_gNav ul {
	width:100%;
	position:relative;
	background:#006933;
	z-index:1;
	border-top:solid 1px #fff;
}
#sp_gNav ul li {
	border-bottom:solid 1px #fff;
	background:url(../img/sp_arrow.png) no-repeat right center;
	background-size:24px auto;
}
#sp_gNav ul #menuMenu {
	background:url(../img/sp_arrow_down.png) no-repeat right 18px;
	background-size:24px auto;
}
#sp_gNav ul #menuMenu.open {
	background:url(../img/sp_arrow_up.png) no-repeat right 18px;
	background-size:24px auto;
}
#sp_gNav ul li a {
	color:#fff;
	font-size:16px;
	padding:17px 33px 17px 50px;
	display:block;
	background-size:30px auto !important;
}
#sp_gNav ul li.linkOff {
	background:#797979 !important;
}
#sp_gNav ul li.linkOff a {
	pointer-events: none;
	cursor:default;
	opacity:0.8;
}
#sp_gNav ul li#topMenu a {
  background: url(../img/ico_top.png) no-repeat 10px center;
}
#sp_gNav ul li#fairMenu a {
  background: url(../img/ico_fair.png) no-repeat 10px center;
}
#sp_gNav ul li#menuMenu a {
  background: url(../img/ico_menu.png) no-repeat 10px center;
}
#sp_gNav ul li#storyMenu a {
  background: url(../img/ico_story.png) no-repeat 10px center;
}
#sp_gNav ul li#shopMenu a {
  background: url(../img/ico_shop.png) no-repeat 10px center;
}
#sp_gNav ul li#instaMenu a {
  background: url(../img/ico_insta.png) no-repeat 10px center;
}
#sp_gNav ul li ul {
	background:#38ad71;
	display:none;
}
#sp_gNav ul li ul li a {
	background:none !important;
}
#gMenu {display:none;}

/****************************************
footer
*****************************************/
#footerMenu {
	margin:50px 15px 0;
	padding:25px;
	background:rgba(255,255,255,0.9);
}
#footerMenu .logo {
	padding:0 36% 12px 0;
}
#footerMenu .insta {
	padding:0 50% 10px 0;
	position: relative;
	display: block;
}
#footerMenu .insta p {
	color:#3a1e22;
	font-size:12px;
	line-height: 1;
	position: absolute;
	bottom:26%;
	left:12%;
}
#footerMenu .ftMenu ul {
	width:50%;
	padding:0 0 0 5px;
	float:left;
	box-sizing: border-box;
}
#footerMenu .ftMenu ul li {
	margin:10px 0 0;
}
#footerMenu .ftMenu li a {
	color:#3a1e22;
	font-size:12px;
	line-height:1.4;
	text-decoration: none;
	padding:0 0 0 13px;
	display: block;
	background:url(../img/ico_link2.png) no-repeat 0 4px;
	background-size:9px auto;
}
#footerMenu .ftMenu li.linkOff a {
	color:#b0b0b0;
	pointer-events: none;
	cursor: default;
	background:url(../img/ico_link_off.png) no-repeat 0 4px;
	background-size:9px auto;
}

footer {
	color: #fff;
	padding:15px 0 25px;
	position:relative;
	z-index: 9;
  background:#016934;
}
footer .inner {
	padding:0 15px;
	margin:0 auto;
}
footer p, footer ul li {
	color:#fff;
	font-size:12px;
	line-height:1.4;
	padding:0;
	margin:0;
	text-align: center;
}
footer p#copyright {
	font-size:10px;
	text-align: center;
	margin:15px 0 0;
}
footer p#copyright span {
	display:inline-block;
}
footer ul {
	text-align: center;
}
footer ul li {
	padding:0 5px;
	display: inline-block;
}
footer ul li:last-child {
	padding-left:10px;
	border-left:solid 1px #fff;
}
footer ul li a {
	color:#fff;
	text-decoration: none;
}

/* ページトップへ */
#pageTop {
  height: 10px;
  margin: 0 auto;
  z-index: 30000;
  clear: both;
  position: relative;
	visibility: visible;
}
#totopLink {
  width: 50px;
  height: 50px;
  position:fixed;
	bottom:15px;
	right:10px;
  box-sizing: border-box;
}
#totopLink a {
  width: 50px;
  height: 50px;
	background: url(../img/pagetop.png) no-repeat center center #016934;
	background-size:50% 50%;
	display:block;
	float: right;
	position: relative;
	top:100px;
	transition:all ease 0.3s;
}
#wrapper.totop #totopLink a {
	top:0;
}


/* フェードイン */
.fadein {
  opacity : 0;
  transform : translate(0, 0);
  transition : all ease 0.5s;
}
.fadein1 {
  opacity : 0;
  transform : translate(0, 50px);
  transition : all ease 0.3s;
}
.fadein2 {
  opacity : 0;
  transform : translate(0, 50px);
  transition : all ease 0.5s;
}
.fadein3 {
  opacity : 0;
  transform : translate(50px, 0);
  transition : all ease 0.5s;
}
.fadein4 {
  opacity : 0;
  transform : translate(0, 50px);
  transition : all ease 1s;
}
.fadein.scrollin, .fadein1.scrollin, .fadein2.scrollin, .fadein3.scrollin, .fadein4.scrollin {
  opacity : 1;
  transform : translate(0, 0);
}


/****************************************
error
*****************************************/
#errorPage #contents {
	margin-top:50px;
}
#errorPage #titleArea {
	padding:12% 0 0;
}
#errorPage #titleArea h1 {
	font-size:20px;
	line-height:1.5;
	font-weight:bold;
	padding:0 15px;
	text-align: center;
	margin:7% 0 30px;
}
#errorPage #titleArea p {
	font-size:14px;
	line-height:1.7;
	text-align: center;
	padding:0 15px;
	margin:0 0 30px;
	letter-spacing:0.1em;
}


@media screen and (max-width:359px) {
footer ul li:last-child {
  padding-left:5px;
}

}


@media screen and (min-width:480px) {
#footerMenu {
	margin:60px 15px 0;
}
#footerMenu .ftMenu ul li {
	margin:14px 0 0;
}
#footerMenu .ftMenu ul li a {
	font-size:14px;
}
footer p, footer ul li {
	font-size:12px;
}

}

@media screen and (min-width:560px) {
#totopLink a {
	top:120px;
}

}

@media screen and (min-width:640px) {
#footerMenu {
	margin:80px 30px 0;
	padding: 50px;
}
#footerMenu .insta p {
	font-size:16px;
	bottom:16%;
}
#footerMenu .ftMenu ul {
	padding:0 0 0 10px;
}
#footerMenu .ftMenu ul li {
	margin:20px 0 0;
}
#footerMenu .ftMenu ul li a {
	font-size:20px;
	padding:0 0 0 22px;
	background: url(../img/ico_link2.png) no-repeat 0 6px;
}
#footerMenu .ftMenu li.linkOff a {
	background:url(../img/ico_link_off.png) no-repeat 0 4px;
	background-size: 16px auto;
}

#pageTop {
  height:100px;
}
#totopLink {
	width:70px;
  height:70px;
}
#totopLink a {
  width:70px;
  height:70px;
	background: url(../img/pagetop.png) no-repeat center center #016934;
	background-size:28px auto;
}

header {
	height:100px;
}
header button {
	width:100px;
	height:100px;
}
#logo {
	height:100px;
}
#logo img {
	height: 76px;
	padding: 30px 0 0;
}
#spMenu {
	width: 100px;
	height: 100px;
}
#sp_gNav ul li a {
  font-size:24px;
  padding:33px 66px 33px 44px;
}
#sp_gNav ul li {
  border-bottom: solid 2px #fff;
  background-size: 48px auto;
}
#sp_gNav ul #menuMenu {
	background: url(../img/sp_arrow_down.png) no-repeat right 32px;
  background-size: 48px auto;
}
#sp_gNav ul #menuMenu.open {
	background: url(../img/sp_arrow_up.png) no-repeat right 32px;
  background-size: 48px auto;
}

footer {
	padding:30px 0 50px;
}
footer p, footer ul li {
	font-size:16px;
}
footer p#copyright {
	font-size:14px;
}

#errorPage #contents {
	margin-top:100px;
}
#errorPage #titleArea h1 {
	font-size:24px;
	margin:7% 0 30px;
}
#errorPage #titleArea h1 br {
	display:none;
}
#errorPage #titleArea p {
	font-size:16px;
	line-height:2;
	padding:0 30px;
}

}

@media screen and (min-width: 768px) {
.pc {display:block;}
.sp {display:none;}

#wrapper {
	background:url(../img/bg_wood.png) repeat-y center 0;
	background-size:100% auto;
}

#titleArea {
  padding:100px 0 50px;
}
#titleArea #leaf_left img {
  width:205px;
  left:0;
	margin-top:-200px;
}
#titleArea #leaf_right img {
  width:406px;
  right:0;
	margin-top:-310px;
}

}

@media screen and (min-width: 1000px) {
#spMenu, #sp_gNav {display:none !important;}
#spHeader.open {
	height:auto !important;
	overflow-y:hidden !important;
}
#logo, #logo a img {
	width:240px;
	height:37px;
	padding:0;
}
#logo {
	margin:33px 20px 0;
}
#logo a, #logo a img {
	display: block;
}
#gMenu {
	width:680px;
	display:block;
	position: absolute;
	top:19px;
	right:0;
}
#gMenu li {
	width:16.66%;
	float:left;
}
#gMenu li a {
	color:#3a1e22;
	font-size:12px;
	line-height:1;
	text-align:center;
	padding:50px 0 19px;
	display:block;
}
#gMenu li.topMenu a {
	background:url(../img/menu_top.png) no-repeat center 0;
}
#gMenu li.fairMenu a {
	background:url(../img/menu_fair.png) no-repeat center 0;
}
#gMenu li.menuMenu a {
	background:url(../img/menu_menu.png) no-repeat center 0;
}
#gMenu li.storyMenu a {
	background:url(../img/menu_story.png) no-repeat center 0;
}
#gMenu li.shopMenu a {
	background:url(../img/menu_shop.png) no-repeat center 0;
}
#gMenu li.instaMenu a {
	background:url(../img/menu_insta.png) no-repeat center 0;
}
#gMenu li a:hover {
	color:#006933;
}
#gMenu li.topMenu a:hover, #topPage #gMenu li.topMenu a {
	color:#006933;
	background:url(../img/menu_top_on.png) no-repeat center 0;
}
#gMenu li.fairMenu a:hover, #fairPage #gMenu li.fairMenu a {
	color:#006933;
	background:url(../img/menu_fair_on.png) no-repeat center 0;
}
#gMenu li.menuMenu a:hover, #menuPage #gMenu li.menuMenu a {
	color:#006933;
	background:url(../img/menu_menu_on.png) no-repeat center 0;
}
#gMenu li.storyMenu a:hover, #storyPage #gMenu li.storyMenu a {
	color:#006933;
	background:url(../img/menu_story_on.png) no-repeat center 0;
}
#gMenu li.shopMenu a:hover, #shopPage #gMenu li.shopMenu a {
	color:#006933;
	background:url(../img/menu_shop_on.png) no-repeat center 0;
}
#gMenu li.instaMenu a:hover {
	color:#006933;
	background:url(../img/menu_insta_on.png) no-repeat center 0;
}
#gMenu li.linkOff a, #gMenu li.linkOff a:hover {
	color:#b0b0b0;
	pointer-events: none;
	cursor: default;
}
#gMenu li.fairMenu.linkOff a {
	background:url(../img/menu_fair_off.png) no-repeat center 0 !important;
}

#gMenu li ul {
	display:none;
	width:100%;
	height:230px;
  position: fixed;
  left: 0;
	background:#006933;
}
#gMenu li ul .inner {
	width:1000px;
	margin:0 auto;
}
#gMenu li ul li {
	margin:0 0 0 41px;
	float: left;
}
#gMenu li ul li:first-child {
	width:190px;
	margin:0;
}
#gMenu li ul li:nth-child(2) {
	width:172px;
}
#gMenu li ul li:nth-child(3) {
	width:162px;
}
#gMenu li ul li:nth-child(4) {
	width:112px;
}
#gMenu li ul li:nth-child(5) {
	width:182px;
}
#gMenu li ul li a, #gMenu li ul li a img {
	display:block;
}
#gMenu li ul li a {
	text-align:left;
	padding:0;
}
#gMenu li ul li a img {
	transition:all ease 0.3s;
}
#gMenu li ul li a:hover img {
	opacity:0;
}
#gMenu li.menuMenu ul li a, #gMenu li.menuMenu ul li a:hover {
  background:transparent !important;
}
#gMenu li ul li .pancake {
	width:190px;
	margin:37px 0 0;
	background:url(../img/grandmenu_pancake_on.png) no-repeat 0 0;
}
#gMenu li ul li .dish {
	width:172px;
	margin:20px 0 0;
	background:url(../img/grandmenu_dish_on.png) no-repeat 0 0;
}
#gMenu li ul li .burger {
	width:162px;
	margin:10px 0 0;
	background:url(../img/grandmenu_burger_on.png) no-repeat 0 0;
}
#gMenu li ul li .benedict {
	width:162px;
	margin:20px 0 0;
	background:url(../img/grandmenu_benedict_on.png) no-repeat 0 0;
}
#gMenu li ul li .meal {
	width:146px;
	margin:10px 0 0;
	background:url(../img/grandmenu_meal_on.png) no-repeat 0 0;
}
#gMenu li ul li .appetizer {
	width:112px;
	margin:8px 0 0;
	background:url(../img/grandmenu_appetizer_on.png) no-repeat 0 0;
}
#gMenu li ul li .dessert {
	width:78px;
	margin:10px 0 0;
	background:url(../img/grandmenu_dessert_on.png) no-repeat 0 0;
}
#gMenu li ul li .drink {
	width:182px;
	margin:8px 0 0;
	background:url(../img/grandmenu_drink_on.png) no-repeat 0 0;
}
#gMenu li ul li .coffee {
	width:78px;
	margin:10px 0 0;
	background:url(../img/grandmenu_coffee_on.png) no-repeat 0 0;
}

#footerMenu {
	box-sizing: border-box;
  padding:50px;
	position: relative;
}
#footerMenu .logo {
	width:30%;
	max-width:261px;
	padding:0 0 20px;
	box-sizing: border-box;
}
#footerMenu .logo a {
	display:block;
	transition:all ease 0.3s;
}
#footerMenu a.insta {
	text-decoration: none;
	width:24%;
	max-width:202px;
	padding:0;
	box-sizing: border-box;
	transition:all ease 0.3s;
}
#footerMenu .insta p {
  font-size: 12px;
  bottom: 8%;
	left:23%;
}
#footerMenu .logo a:hover, #footerMenu a.insta:hover {
	opacity:0.7;
}

#footerMenu .ftMenu {
	width:55%;
	max-width:640px;
	position: absolute;
	top:30px;
	right:50px;
}
#footerMenu .ftMenu ul {
	width:50%;
  padding: 0 0 0 15px;
}
#footerMenu .ftMenu ul li a {
  font-size: 16px;
  padding: 0 0 0 18px;
  background: url(../img/ico_link2.png) no-repeat 0 4px;
  background-size: 14px auto;
	transition:all ease 0.3s;
}
#footerMenu .ftMenu li.linkOff a {
	background:url(../img/ico_link_off.png) no-repeat 0 4px;
	background-size: 14px auto;
}
#footerMenu .ftMenu ul li a:hover {
	color:#006933;
}
#footerMenu .ftMenu ul.right li:nth-child(4), #footerMenu .ftMenu ul.right li:nth-child(5) {
	display:none;
}
#totopLink a {
  width: 70px;
  height: 70px;
  background: url(../img/pagetop.png) no-repeat center center #016934;
  background-size: 28px auto;
	transition:all ease 0.3s;
}
#totopLink a:hover {
	background-color:#67a585;
}
footer {
  padding:30px 0;
}
footer .inner {
	padding:0 20px;
}
footer ul {
	text-align:left;
	float: left;
}
footer p#copyright {
	text-align:left;
	float:right;
  margin:4px 0 0;
}
footer p, footer ul li {
  font-size:14px;
}
footer ul li a:hover {
	text-decoration: underline;
}

#errorPage #titleArea {
	padding:9% 0 2%;
}
#errorPage #titleArea h1 {
	font-size:28px;
}

}


@media screen and (min-width: 1200px) {
#logo, #logo a img {
	width:261px;
	height:40px;
}
#logo {
	margin:30px;
}
#gMenu {
  width:780px;
}
#gMenu li ul .inner {
	width:1200px;
}
#gMenu li ul li {
	margin:0 0 0 92px;
}
#footerMenu {
	max-width:1200px;
	margin:80px auto 0;
}

}


@media screen and (min-width: 1440px) {
#totopLink {
	right:30px;
}
footer .inner {
  padding: 0 30px;
}

}
