@charset "UTF-8";
@import url(https://fonts.googleapis.com/css?family=Noto+Sans+JP:400,700&display=swap&subset=japanese);
@import url(https://fonts.googleapis.com/css2?family=Noto+Serif+JP:wght@400;700&display=swap&subset=japanese);

body {
	font-family: "Noto Serif JP";
	font-weight: 400;
	line-height: 1.6em;
	color: #433D3C;
	font-size: 15px;
	letter-spacing: 0.1em;
	background-color: #e6dee5;
}

a {
	text-decoration: none;
	color: #433d3c;
}

ul li {
	list-style-type: none;
}

img {
	border: 0;
	vertical-align: bottom;
}

a:hover {
	opacity: 0.8;
	-moz-opacity: 0.8;
	filter: alpha(opacity=80);
}


/*共通
*************************************************/

.img_bg {
	position: relative;
	margin-bottom: 50px;
	max-width: 100%;
}

.img_bg img {
	max-width: 100%;
}

.img_bg .bg {
	position: absolute;
	z-index: -1;
	background-image: url(../images/common/img_bg.png);
	background-repeat: repeat-x;
	background-size: contain;
}

.no_img {
	height: 1px;
	margin-bottom: 80px;
}

.wm100 img {
	max-width: 100%;
}

/**/

.link_01 {}

.link_01 a {
	display: block;
	font-size: 22px;
	font-weight: bold;
	text-align: center;
	background-image: url(../images/common/link_box01.png);
	width: 301px;
	margin: 0 auto;
	letter-spacing: 0.5em;
	padding: 14px;
	line-height: 1em;
}

@media all and (-webkit-min-device-pixel-ratio: 1.5) {
	.link_01 a {
		background-image: url('../images/common/link_box01@2x.png');
		background-size: 301px 51px;
	}
}

/**/

.link_02 a {
	display: block;
	font-size: 13px;
	font-weight: bold;
	text-align: center;
	background-image: url(../images/common/link_box02.png);
	width: 242px;
	color: #507E93;
	margin: 0 auto;
	letter-spacing: 0.5em;
	padding: 14px;
	line-height: 1em;
}

@media all and (-webkit-min-device-pixel-ratio: 1.5) {
	.link_02 a {
		background-image: url('../images/common/link_box02@2x.png');
		background-size: 242px 42px;
	}
}

/**/
#googlemap {
	height: 400px;
	width: 100%;
	margin-top: 60px;
}


/**** 
*******************************************/

.flot_sn {
	display: flex;
	justify-content: space-between;
}

.flot_sd {
	display: flex;
	justify-content: space-around;
}

.flot_ce {
	display: flex;
	justify-content: center;
}

.flot_fs {
	display: flex;
	justify-content: flex-start;
}

.flot_en {
	display: flex;
	justify-content: flex-end;

}

/**** 
*******************************************/
.mv_area {
	margin-top: 80px;
}

.mv_area h3 {
	font-size: 18px;
	font-weight: bold;
	margin-bottom: 20px;
}

/***   ***/

.top_box {
	max-width: 1400px;
	width: 100%;
	display: flex;
	justify-content: space-between;
	position: relative;
	/*padding-right: 40px;*/
	height: 520px;
	margin: 0 auto;

}

.img_box {
	max-width: 820px;
	width: 100%;
}

.txt_box {
	background-color: rgba(255, 255, 255, 0.75);
	padding: 20px 40px 50px;
	display: inline-block;
	width: 55%;
	z-index: 100;
	position: absolute;
	top: 30px;
	letter-spacing: 0.1em;
	margin-bottom: 100px;
	left: 0;
}

.top_box .img_bg {
	margin-left: 500px;
	z-index: 0;
}

.top_box h2 {
	font-size: 24px;
	font-weight: bold;
	margin: 50px 0 55px;
	line-height: 1.3em;
    letter-spacing: 0.2em;
}


/*top_box1*/

.top_box1 {
	max-width: 1300px;
	width: 100%;
	display: flex;
	justify-content: space-between;
	position: relative;
	padding-right: 40px;
	z-index: 0;
	height: 520px;
	margin-left: 40px;
	margin-bottom: 70px;
}

.top_box1 .img_bg {
	margin-right: 450px;
	z-index: 0;
}

.img_box {
	max-width: 820px;
	width: 100%;
}

.txt_box1 {
	background-color: rgba(255, 255, 255, 0.75);
	padding: 20px 40px 50px;
	display: inline-block;
	width: 55%;
	z-index: 100;
	position: absolute;
	top: 30px;
	right: 0;
	letter-spacing: 0.1em;
}

.top_box1 h2 {
	font-size: 24px;
	font-weight: bold;
	margin: 50px 0 55px;
}






/*商品一覧
*************************************************/

.product_list {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	margin-top: 55px;
}

.product_list > li {
	padding-bottom: 20px;
	margin: 0 5px 120px 5px;
	text-align: center;
	max-width: 240px;
	min-width: 240px;
	width: 100%;
	position: relative;
}

.product_list .prod_ttl span {
	display: block;
	text-align: center;
	font-size: 18px;
	margin: 15px 0 45px;
	font-weight: bold;
}

/*
.prod_img{
    background-color: #fff;
}*/
.product_list > li img {
	max-width: 100%;
	border: 1px solid #E7E7E7;
	padding: 3px;
	background-color: #fff;
}

.product_list li:last-child,
.product_list li:nth-child(22),
.product_list li:nth-child(21),
.product_list li:nth-child(23) {
	background-image: none;
}

.product_list .btn_01 {
	text-align: center;
	position: absolute;
	bottom: -15px;

}

.product_list .btn_01 span,
.cafe_box1 .btn_01 span,
#hirugohan .btn_01 span{
	text-align: center;
	position: relative;
}

.product_list .btn_01 a {
	width: 240px !important;
}

.product_list .btn_01 span:before,
.delivery_box li .btn_01 span:before,
.cafe_box1 .btn_01 span:before,
#hirugohan .btn_01 span:before{
	font-family: "Font Awesome 5 Free";
	content: "\f07a";
	position: absolute;
	left: -37px;
	font-weight: bold;
	height: 25px;
	top: 0;
	bottom: 0;
	margin: auto;

}



.cafe_menu > li {
	margin: 0 5px 40px 5px;
}

/**** 
*******************************************/

.prod_ttl {
	position: relative;

}

.prod_ttl:before {
	font-family: "Font Awesome 5 Free";
	content: "\f107";
	position: absolute;
	font: 22px;
	left: 0;
	right: 0;
	width: 22px;
	margin: 0 auto;
	bottom: -20px;
	font-weight: bold;
}

.tag_box {
	display: flex;
	justify-content: flex-start;
	margin-top: 10px;
}

.tag_box > li {
	padding: 3px 13px;
	letter-spacing: 0;
	font-size: 12px;
	font-weight: bold;
	text-align: center;
	display: inline-block;
	margin: 0 5px;
	position: relative;
	line-height: 1em;
}

.tag_new {
	position: absolute;
	left: -2px;
	top: -2px;
	z-index: 1000;
}

.tag_new img {
	background-color: transparent !important;
	border: 0 !important;
}

.tag_osusume {
	background-color: #BFCD8B;
	border: 1px solid #9CA856;
}

.tag_kisetsu {
	background-color: #DDD697;
	border: 1px solid #B7B07D;
}

.tag_awase {
	background-color: #C6A166;
	border: 1px solid #93764C;
}

.tag_reizo {
	background-color: #A1D0E5;
	border: 1px solid #7CA9C1;
}
.tag_reito {
	background-color: #D7DBDE;
	border: 1px solid #BABABA;
}



/**/
.no_img {
	height: 1px;
	margin-bottom: 0 !important;
	padding: 0 !important;
}

.no_bgi {
	background-image: none !important;
}

/**/
.max_w > img {
	max-width: 100%;
}


/*pick_up*/

.pick_up ul > li .pick_up {
	margin-top: 100px;
}

.pick_up .a_ttl {
	margin-bottom: 50px;
}

.pick_up ul {
	display: flex;
	justify-content: space-around;
	flex-wrap: wrap;
}

.pick_up ul > li {
	width: 21%;
	margin: 0 10px;
	text-align: center;
}

.pick_up ul > li img {
	max-width: 240px;
	width: 100%;
}

.pick_up ul > li p {
	font-weight: bold;
	letter-spacing: 0.05em;
	text-align: center;
	margin-top: 10px;
}


/***********************************pagenavi*/

.wp-pagenavi {
	font-size: 14px;
	text-align: center;
	margin-top: 60px;
}



.wp-pagenavi a, .wp-pagenavi span {
	display: inline-block;
	border: 1px solid #96514D;
	border-radius: 5px;
	color: #96514D;
	padding: 6px 14px;
	margin: 5px;
	font-size: 15px;
	font-weight: bold;
	margin-bottom: 15px;
	white-space: nowrap;
	letter-spacing: 0;
	font-family: "ヒラギノ Pro W3", "Hiragino Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}

.wp-pagenavi span {
	padding: 6px 14px;
	margin: 5px;
	margin-bottom: 20px;
}

.wp-pagenavi .first {
	font-size: 14px;
}

.wp-pagenavi a:hover {
	background-color: #96514D;
	color: #fff;
	opacity: 1;
}






/*
*************************************************/

.wrap {
	/*overflow: hidden;*/
}

.side {
	background-color: #e6dee5;
	width: 273px;
	position: fixed;
	padding-bottom: 32768px;
	margin-bottom: -32768px;
	z-index: 10000000;
}

.side_inner {
	width: 273px !important;
	position: relative;
}

.side h1 {
	text-align: center;
	max-height: 100%;
	padding: 60px 23px 75px;
}

.side_inner .logo_height {
	display: none;
}

.main {
	background-color: #f8f4e6;
	overflow: hidden;
	padding-left: 273px;
	width: 100%;
	z-index: -2;
	background-image: url("../images/common/main_bg.png");
	background-position: center;
	background-repeat: repeat-y;
}

.side_bnr {
	padding-bottom: 10px;
}


/*nav
*************************************************/

.pc_nav {}

.pc_nav ul {}

.pc_nav > ul li {
	font-size: 15px;
	letter-spacing: 0;
	position: relative;
}

.pc_nav > ul li a,
.pc_sub_box > ul li a {
	display: block;
	padding: 10px 30px;
	cursor: pointer;
}



.nav_sns{
	display: flex;
	justify-content: flex-start;
    align-items: center;
}

.nav_sns a {
	font-size: 20px;
	font-weight: bold;
	padding: 0;
	margin-top: 40px;
}
.nav_sns i:hover{
    color: #C3D28C;
}
.nav_sns i {
	padding: 0 0 0 35px;
    font-size: 20px;
}

.pc_nav > ul li .en_menu,
.pc_sub_box > ul li .en_menu {
	font-size: 12px;
	font-family: Arial, Helvetica, " sans-serif";
	display: block;
	font-weight: bold;
}

.pc_nav > ul li a:hover {
	opacity: 1;
}

.pc_nav > ul > li:hover:after,
.pc_nav > ul .active:after {
	content: "\f054";
	font-family: "Font Awesome 5 Free";
	position: absolute;
	right: 20px;
	font-size: 15px;
	top: 0;
	bottom: 0;
	margin: auto;
	font-weight: bold;
	height: 15px;
}


/*ナビ子*/

.pc_sub_box {
	display: none;
	position: absolute;
	background-color: #f3eef5;
	z-index: 1000;
	margin: 0 auto;
	left: 273px;
	height: 100vh;
	top: 0;
	width: 290px;
}

.pc_sub_area {
	/*overflow-y: scroll;*/
	height: 100vh;
	margin-top: 200px;
}



/*sp_nav
*************************************************/
.sp_head {
	padding: 5px 15px;
	height: 80px;
	background-color: #f8f4e6;
	position: fixed;
	z-index: 100000;
	top: 0;
	left: 0;
	width: 100%;
	border-bottom: 1px solid #ccc;
}

.sp_head h1 {
	padding: 10px 0;
}

.sp_box {
	position: fixed;
	left: 0;
	z-index: 2000;
	background-color: rgba(238, 230, 237, 0.95);
	top: 80px;
	width: 100%;
	display: none;
	padding-bottom: 80px;
	height: 100%;

}





.sp_box_inner {
	overflow-y: scroll;
	height: 100%;
}

.sp_nav > ul {
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
}

.sp_nav > ul > li {
	border-bottom: 1px solid #c9caca;
	font-size: 14px;
	letter-spacing: 0;
	width: 47%;
	font-weight: bold;
}

.sp_nav > ul > li:nth-child(odd) {
	width: 48%;
}

.sp_nav > ul > li > a .nav_in_en {
	font-size: 13px;
	display: block;
	font-family: Arial, Helvetica, " sans-serif";
	letter-spacing: 0.05em;
	font-weight: normal;
}

.sp_nav > ul > li > a {
	color: #333333;
	margin: 30px 10px 15px;
	display: block;
	text-decoration: none;
	text-align: left;
	font-size: 18px;
	line-height: 1.15em;

}

.sp_nav > ul > li:nth-child(even) a {
	margin: 30px 10px 15px;
}

.sp_nav > ul > li:nth-child(odd) a {
	border-right: 1px solid #c9caca;
}

.sp_nav .sp_fb a {
	font-family: Arial, Helvetica, " sans-serif";
	padding-bottom: 10px;
}

.sp_nav .sp_is a {
	font-family: Arial, Helvetica, " sans-serif";
	padding-bottom: 10px;
}

.sp_nav .sp_fb i,
.sp_nav .sp_is i {
	margin-right: 10px;
}

.sns_btn {
	display: flex;
	justify-content: center;
    align-items: center;
}

.sns_btn a {
	border-right: 0 !important;
    padding: 25px 30px;
    font-size: 18px;
}
.sns_btn a:hover{
    color: #C3D28C;
}
/**/
.sp_in_logo {
	text-align: center;
	padding: 35px 20px;
}

.sp_shop_bnr {}

.sp_shop_bnr img {
	width: 100%;
}

/**/
.sp_foot {
	display: flex;
	flex-wrap: wrap;
	background-color: #433d3c;
	padding: 10px;
	align-items: center;

}

.sp_foot > li {
	width: 49%;
	padding: 20px 10px 20px 0;
	letter-spacing: 0;
}

.sp_foot > li:first-child,
.sp_foot > li:nth-child(2) {
/*	border-bottom: 1px solid #fff;*/
}

.sp_foot > li > a {
	color: #fff;
	text-align: left;
	display: block;
	padding: 5px;
	line-height: 1.2em;
}

.sp_foot > li:nth-child(odd) a {
	border-right: 1px solid #c9caca;
}

.sp_foot > li:nth-child(odd) {
	width: 51%;
}

/*  ハンバーガーメニュー
--------------------------------------------------*/

#navToggle {
	display: block;
	position: fixed;
	right: 5px;
	top: 15px;
	width: 70px;
	padding: 10px;
	height: 50px;
	cursor: pointer;
	z-index: 1000000;
}

#navToggle div {
	position: relative;
}

#navToggle span {
	display: block;
	position: absolute;
	/*#navToggle div に対して*/
	width: 100%;
	border-bottom: solid 3px #433d3c;
	-webkit-transition: .35s ease-in-out;
	-moz-transition: .35s ease-in-out;
	transition: .35s ease-in-out
}

#navToggle span:nth-child(1) {
	top: 0;
	width: 100%;
}

#navToggle span:nth-child(2) {
	top: 11px;
	width: 100%;
}

#navToggle span:nth-child(3) {
	top: 22px;
	width: 100%;
}

.openNav #navToggle span:nth-child(1) {
	top: 11px;
	width: 100%;
	-webkit-transform: rotate(-45deg);
	-moz-transform: rotate(-45deg);
	transform: rotate(-45deg);
	right: 0;
}


/*2番目と3番目のspanを45度に*/

.openNav #navToggle span:nth-child(2),
.openNav #navToggle span:nth-child(3) {
	right: 0;
	top: 11px;
	width: 100%;
	-webkit-transform: rotate(45deg);
	-moz-transform: rotate(45deg);
	transform: rotate(45deg);
}

.footer_link_bnr .img-responsive {
	display: inline-block;
}

.footer_link_bnr .col-md-4 {
	margin-bottom: 20px;
}

#navToggle:after {
	content: "メニュー";
	font-size: 12px;
	color: #433d3c;
	padding-top: 26px;
	position: absolute;
	font-weight: bold;
	text-align: center;
	width: 70px;
	left: 0;
	right: 10px;
	margin: 0 auto;
	top: 8px;
	letter-spacing: 0;
	font-family: 'Chivo', sans-serif;
}

.openNav #navToggle:after {
	content: "";
	text-align: center;
	margin: 0 auto;
	width: 40px;
	left: 0;
	right: 0;
}




/* foot
*************************************************/

footer {
	background-image: url(../images/common/foot_img.jpg);
	margin-top: 100px;
	height: 380px;
	background-size: cover;
	display: flex;
	align-items: flex-end;
}

.foot_inner {
	display: flex;
	justify-content: space-between;
	letter-spacing: 0;
	align-items: flex-end;
	padding: 20px 30px;
	font-size: 12px;
	height: 100%;
	width: 100%;
}

.foot_inner .copy {
	font-family: Arial, Helvetica, " sans-serif";
	letter-spacing: 0.1em;
	margin-right: auto;
}

#page_top {
	position: fixed;
	bottom: 50px !important;
	right: 20px;
}

#shop_guide {
	position: fixed;
	right: 20px;
	top: 350px;
}

#shop_cart {
	position: fixed;
	right: 20px;
	top: 450px;
}

/* media 高さ
*************************************************/

@media (max-height: 900px) {
	.side_inner h1 {
		display: none;
	}

	.side_inner .logo_height {
		text-align: center;
		display: block;
		margin: 20px 0 30px;
	}


	.pc_sub_area {

		margin-top: 35%;
	}
}


/* media 横幅
*************************************************/
.sp_on,
.sp_header {
	display: none;
}


.fix {
	position: fixed !important;
	width: 100%;
	height: 100%;
}

@media (max-width: 1400px) {

	.top_box1 .img_bg {
		margin-right: 20%;
	}

	.txt_box1 {
		width: 80%;
		top: 30px;
		margin-bottom: 150px;
	}


	.top_box .img_bg {
		margin-left: 20%;
	}

	.txt_box {
		width: 80%;
		top: 30px;
	}



}

@media (max-width: 1355px) {

	/*mv
*************************************************/
	.mv_img > img {
		left: -150%;
	}

	/*オンラインショップ
*************************************************/
	.product_list {
		justify-content: space-around;
	}

	.product_list > li {
		margin: 0 10px 100px;
	}


	.pick_up ul > li {
		margin-bottom: 80px;
	}


}

@media (max-width: 1200px) {
	.mv_img > img {
		left: -166%;
	}
    
}


@media (max-width: 1070px) {

	/*オンラインショップ
*************************************************/
	.product_list {
		display: flex;
		flex-wrap: wrap;
		justify-content: space-around;
		margin-top: 55px;
	}

	.product_list > li {
		margin: 0 20px 100px;
	}
	
	.cafe_menu > li {
		margin: 0 20px 40px;
	}

	
	#page_top {
		right: -10px;
	}

	#shop_cart,
	#shop_guide {
		right: -25px;
	}

	#shop_guide {
		top: 380px;
	}

	#page_top img {
		width: 70%;
	}

	#shop_cart img,
	#shop_guide img {
		width: 60%;
	}

}





@media (max-width: 1000px) {
	.side {
		display: none;
	}

	.main {
		padding-left: 0;
	}

	.sp_header {
		display: block !important;
	}

	.mv_img {
		margin-top: 77px;
	}

	.fixed {
		position: fixed !important;
		width: 100%;
		height: 100%;
	}

	.mv_area {
		margin-top: 110px;
	}
}

@media (max-width: 875px) {
	.pick_up ul > .no_img {
		margin-bottom: 0;
	}

}

@media (max-width: 768px) {
	.pc_on {
		display: none;
	}

	.sp_on {
		display: block;
	}

	.wm100 img {
		margin: 0 auto;
	}

	/***   ***/
	.txt_box1 {
		margin-bottom: 0;
		width: 100%;
	}

	.top_box1 .img_bg {
		margin-right: 0;
	}


	.top_box1 {
		display: block;
		margin-left: 0;
		padding-right: 0;
		height: auto;
	}

	/*共通
*************************************************/
	.sp_nav > ul > li > a {
		font-size: 15px;
	}

	.wp-pagenavi a {
		margin-bottom: 10px;
	}

	.link_01 a {
		background-size: contain;
		width: 269px;
	}

	#page_top {
		bottom: 20px !important;
		right: -10px;
	}



	#shop_cart,
	#shop_guide {
		display: none;
	}




	.pick_up > ul > li {
		width: 44%;
		margin: 0 7px;
	}

	.pick_up ul > .no_img {
		margin-bottom: 0;
	}

	.mv_area .txt_box {
		padding: 0px 25px 30px;
	}
    
}

@media (max-width: 600px) {

	.mv_area {
		margin-bottom: 70px;
	}

	.mv_area .txt_box {
		position: relative;
		top: 0;
		margin-bottom: 0;
	}

	.mv_area .top_box {
		height: 100%;
		display: block;

	}


	.top_box .img_bg {
		margin-left: 0;

	}

	.top_box {
		padding-right: 0;
	}

	.txt_box {
		width: 100%;
		padding: 10px 15px 50px;
		bottom: auto;
		top: 25%;
	}

}





@media (max-width: 350px) {
	.product_list > li {
		width: 41%;
	}


}
