@charset "utf-8";



/* --------------------------------------------------------------------------------
	html & body
-------------------------------------------------------------------------------- */
html {
	
}
body {
	margin: 0 auto;
	padding: 0;
	max-width: 800px;
	line-height: 1.5;
	text-size-adjust: 100%;
	
	font-family: 'Noto Sans JP', sans-serif;
	font-weight: 400;
}

img {
	max-width: 100%;
	height: auto;
	vertical-align: bottom;
}

address {
	font-style: normal;
}


/* --------------------------------------------------------------------------------
	共通 リセット タグ等
-------------------------------------------------------------------------------- */
.common {
	text-align: left;
	font-size: 4vw;
}

.common * {
	margin: 0;
	padding: 0;
	
	font-family: 'Noto Sans JP', sans-serif;
}

.common h1,
.common h2,
.common h3,
.common h4,
.common h5,
.common h6 {
	font-size: 1em;
}
.common ol,
.common ul {
	list-style: none;
}
.common table {
	border-collapse: collapse;
	border-spacing: 0;
	font-size: 1em;
}
.common a,
.common a:link,
.common a:visited {
	text-decoration: none;
	color: #222020;
	-webkit-tap-highlight-color:rgba(0,0,0,0.1);
	tap-highlight-color:rgba(0,0,0,0.8);
}
.common a:hover,
.common a:active {
	text-decoration: none;
}

input,
select,
textarea {
	outline: none !important;
	box-shadow: none !important;
}


/* --------------------------------------------------------------------------------
	共通クラス
-------------------------------------------------------------------------------- */
.clear {
	clear:both;
}
br.clear {
	display:block;
	margin:0;
	padding:0;
	clear:both;
	height:0;
	border:none;
	visibility:hidden;
	font-size:0;
}
.clearfix::after {
	content:".";
	display:block;
	clear:both;
	height:0;
	visibility:hidden;
}
.clearfix {
	min-height:1%;
}
* html .clearfix {
	height:1%;
	/*\*//*/
	height: auto;
	overflow: hidden;
	/**/
}

.font-mincho,
.font-mincho * {
	font-family:"游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
	font-weight: 400;
}

/********** プレースホルダー **********/
::-webkit-input-placeholder,
::placeholder {
	color:#000;
}

.font-lusitana,
.font-lusitana * {
	font-family: 'Lusitana', serif;
	font-weight: 400;
	/* font-weight: 400 or 700 */
}
.font-noto_serif,
.font-noto_serif * {
	font-family: 'Noto Serif JP', serif;
	font-weight: 400;
}



/* --------------------------------------------------------------------------------
	デバイスごとの表示・非表示
-------------------------------------------------------------------------------- */
.device-sp {
	display:block;
}
.device-sp-inline {
	display:inline;
}
.device-pc {
	display:none;
}
.device-pc-inline {
	display:none;
}




/* --------------------------------------------------------------------------------
	container
-------------------------------------------------------------------------------- */
#container {
}




/* --------------------------------------------------------------------------------
	header-sp
-------------------------------------------------------------------------------- */
#header-sp {
}



/* --------------------------------------------------------------------------------
	ヘッダー固定
-------------------------------------------------------------------------------- */
#header-sp .h-fix {
	width: 100%;
	box-sizing: border-box;
	
	background: #fff;
}

/* jQueryで付与されるfixedの固定配置するためのスタイル */
#header-sp .h-fix.fixed {
	position: fixed;
	z-index: 10;
	top: 0;
	left: 0;
}


/********** header-inner **********/
#header-sp .header-inner {
	display: flex;
	justify-content: space-between;
	
	width: 100%;
	border-bottom: solid 0.2vw #eee9e6;
}

/********** ロゴ **********/
#header-sp .header-inner .h-logo {
	width: 60.4vw;
	padding: 2.5vw 23.2vw 2.3vw 3vw;
}
#header-sp .header-inner .h-logo a {
	display: block;
	width: 34.2vw;
}

/********** ボタン **********/
#header-sp .header-inner .h-btns {
	width: 25.8vw;
	padding: 2vw 2.7vw 0;
}
#header-sp .header-inner .h-btns ul {
	display: flex;
	
	width: 100%;
}
#header-sp .header-inner .h-btns ul li {
	margin: 0 0.4vw 0 0;
}
#header-sp .header-inner .h-btns ul li:last-child {
	margin: 0;
}
#header-sp .header-inner .h-btns ul li a {
	display: flex;
	justify-content: center;
	align-items: center;
	
	width: 10vw;
	height: 10vw;
}
#header-sp .header-inner .h-btns img {
	display: block;
	width: 5.4vw;
	height: 5vw;
}

/********** メニューボタン **********/
#header-sp .header-inner .h-btn-menu {
	display: flex;
	justify-content: center;
	align-items: center;
	
	width: 13.8vw;
	background: #807065;
}
#header-sp .header-inner .h-btn-menu img {
	display: block;
	width: 4.8vw;
	height: 4vw;
}


/* ----------------------------------------
h-menu
---------------------------------------- */
#header-sp .h-menu {
	position: fixed;
	z-index: 100;
	
	width: 100%;
	height: 100%;
	
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	
	overflow: auto;
	-webkit-overflow-scrolling: touch;
	
	background: #f7f4f0;
}

/* 最初は消しておく */
#header-sp .h-menu {
	display: none;
}


/* h-menu-wrapper */
#header-sp .h-menu-wrapper {
	padding: 0 8vw 10vw;
}


/********** 閉じるボタン **********/
#header-sp .h-menu .h-close {
	padding: 1vw 1vw 0 0;
	
	display: flex;
	justify-content: flex-end;
	 
	width: 100%;
}
#header-sp .h-menu .h-close .h-close-box {
	display: flex;
	justify-content: center;
	align-items: center;
	
	width: 11.8vw;
	height: 11.8vw;
}
#header-sp .h-menu .h-close img {
	display: block;
	width: 4vw;
	height: 4vw;
}


/********** 閉じるボタン **********/
#header-sp .h-menu .h-close {
	padding: 1vw 1vw 0 0;
	
	display: flex;
	justify-content: flex-end;
	 
	width: 100%;
}


/********** heading **********/
#header-sp .h-menu .heading {
	margin: 0 0 2vw;
	font-weight: 700;
	font-size: 4vw;
	color: #604c3f;
}


/********** 商品カテゴリ **********/
#header-sp .h-menu .h-category {
	padding: 3.5vw 0 2vw;
	border-top: solid 0.2vw #a2978f;
}


/********** 利用シーン **********/
#header-sp .h-menu .h-scene {
	padding: 3.5vw 0 2vw;
	border-top: solid 0.2vw #a2978f;
}


/********** コンテンツリスト **********/
#header-sp .h-menu .h-menu-contents {
	padding: 3.5vw 0 10vw;
	border-top: solid 0.2vw #a2978f;
}


/********** 商品カテゴリ・利用シーン リスト **********/
#header-sp .h-menu .h-category .h-menu-list ul li,
#header-sp .h-menu .h-scene .h-menu-list ul li {
	padding: 0.5vw 0 0.5vw 3.5vw;
}


/********** コンテンツ リスト **********/
#header-sp .h-menu .h-menu-contents-list ul li {
	padding: 0.75vw 0 0.75vw 0;
}


/********** リストボタン **********/
#header-sp .h-menu .h-menu-list ul li a,
#header-sp .h-menu .h-menu-contents-list ul li a {
	display: block;
	padding: 1.5vw 2.5vw;
	font-size: 4vw;
	background: url("../images/common-device/h-arrow.svg") no-repeat calc(100% - 3vw) 2vw;
	background-size: 1.4vw auto;
}


#header-sp .h-menu .h-menu-contents-list ul li a {
	font-size: 3.6vw;
}



/* ----------------------------------------
お問い合わせ・CONTACT
---------------------------------------- */
#header-sp .h-btns-contact {
}
#header-sp .h-btns-contact ul {
	display: flex;
	justify-content: space-between;
	
	width: 100%;
}
#header-sp .h-btns-contact ul li {
	display: flex;
}
#header-sp .h-btns-contact ul li a {
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	
	width: 40vw;
	padding: 2.5vw 0;
	text-decoration: none;
	color: #fff;
	background: #807065;
	font-size: 3.6vw;
}
#header-sp .h-btns-contact ul li.h-btns-contact-tel a {
}
#header-sp .h-btns-contact ul li.h-btns-contact-form a {
}
#header-sp .h-btns-contact ul li .btn-icon img {
	display: block;
	margin: 0 auto 5px;
	width: 8.4vw;
	height: auto;
}









/* --------------------------------------------------------------------------------
	footer-sp
-------------------------------------------------------------------------------- */
#footer-sp {

}


/********** footer-outer **********/
#footer-sp .footer-outer {
	padding: 20vw 0 0;
	background: #eee9e6;
}

/********** footer-inner **********/
#footer-sp .footer-inner {
}


/********** f-sns **********/
#footer-sp .f-sns {
	padding: 0 0 25.5vw;
}
#footer-sp .f-sns .heading {
	padding: 0 0 5vw;
	text-align: center;
	font-size: 7.6vw;
	color: #604c3f;
}
#footer-sp .f-sns ul {
	display: flex;
	justify-content: center;
}
#footer-sp .f-sns ul li {
	padding: 0 5vw;
}
#footer-sp .f-sns ul li a {
	display: block;
}
#footer-sp .f-sns ul li img {
	display: block;
	width: 10vw;
	height: 10vw;
}


/********** フッターコンテンツ **********/
#footer-sp .f-contents {
}


/* ----------------------------------------
カレンダー
---------------------------------------- */
#footer-sp .calendar {
	padding: 0 14vw 15vw;
}
#footer-sp .calendar .calendar-wrapper {
}
/* カレンダー外枠 */
#footer-sp .calendar .calendar-box {
}
/* 営業日カレンダー */
#footer-sp .calendar table {
	width: 100%;
	margin: 0 0 3.5vw;
	line-height: 1.5;
	font-size: 3.9vw;
	text-align: center;
	border: 0.2vw solid #807065;
	border-collapse: collapse;
	background: #fff;
}
/* 月名 */
#footer-sp .calendar caption {
	padding: 1.5vw;
	text-align: center;
	color: #fff;
	background: #807065;
}
/* 曜日 */
#footer-sp .calendar th {
	padding: 1.5vw 0;
	width: calc(100% / 7);
	border: 1px solid #807065;
}
#footer-sp .calendar th.sunday {
	color: #e60012;
	background-color: #fff;
}
#footer-sp .calendar th.saturday {
	color: #00479d;
	background: #fff;
}

/* 日付の枠 */
#footer-sp .calendar td {
	padding: 1.5vw 0;
	width: calc(100% / 7);
	border: 0.2vw solid #807065;
}
#footer-sp .calendar td.close {
	background: #ea5514;
}

/* カレンダーの色説明 */
#footer-sp .calendar .cal-txt {
	font-size: 3.6vw;
}
#footer-sp .calendar .cal-txt .mark-close {
	display: flex;
	align-items: center;
}
#footer-sp .calendar .cal-txt .mark-close::before {
	content: '';
	
	display: block;
	width: 3.6vw;
	height: 3.6vw;
	margin: 0 2vw 0 0;
	background: #ea5514;
}


/* ----------------------------------------
f-contents
---------------------------------------- */
#footer-sp .f-contents {
	padding: 0 5vw 9vw;
}




/* ----------------------------------------
f-info
---------------------------------------- */
#footer-sp .f-info {
	font-size: 3.6vw;
}


/********** ロゴ **********/
#footer-sp .f-logo {
	width: 46vw;
	padding: 0 0 5vw;
}
#footer-sp .f-logo a {
	display: block;
}
#footer-sp .f-logo img {
	display: block;
}

/********** 住所 **********/
#footer-sp .address {
	padding: 0 0 7vw;
}


/* ----------------------------------------
f-info
---------------------------------------- */
#footer-sp .f-menu-list {
	padding: 0 0 1vw;
	font-size: 2.9vw;
}
#footer-sp .f-menu-list .f-menu-list-box {
	padding: 0 0 5vw;
}









/********** コピーライト **********/
#footer-sp .copyright {
	line-height: 1.8;
	font-size: 2.7vw;
}
#footer-sp .copyright small {
	font-size: 1em;
}


/********** ページトップ **********/
#fix-sp .btn-pagetop {
	position: fixed;
	right: 1vw;
	bottom: 5vw;
	z-index: 100;
}
#fix-sp .btn-pagetop img {
	display: block;
}
#fix-sp .btn-pagetop img {
	display: block;
	width: 14vw;
	height: 14vw;
}




/* --------------------------------------------------------------------------------
	各パーツ
-------------------------------------------------------------------------------- */
/* ----------------------------------------
CATEGORY
---------------------------------------- */
.parts-category-bnrs {
	margin: 0 0 22vw;
}
.parts-category-bnrs .parts-category-bnrs-box {
	padding: 0 10vw;
}

.parts-category-bnrs h2 {
	padding: 0 0 6vw;
	text-align: center;
	color: #604c3f;
}
.parts-category-bnrs h2 .label-en {
	display: block;
	padding: 0 0 1.5vw;
	font-size: 7.6vw;
}
.parts-category-bnrs h2 .label-ja {
	display: block;
	font-size: 4vw;
}

/********** parts-category-bnrs **********/
.parts-category-bnrs .parts-category-bnrs-box {
}
.parts-category-bnrs ul {
}
.parts-category-bnrs ul li {
	margin: 0 0 2vw;
}


/* ----------------------------------------
SCENE
---------------------------------------- */
.parts-scene {
	padding: 0 5vw 12vw;
}
.parts-scene .parts-scene-box {
}

.parts-scene h2 {
	padding: 0 0 6vw;
	text-align: center;
	color: #604c3f;
}
.parts-scene h2 .label-en {
	display: block;
	padding: 0 0 1.5vw;
	font-size: 7.6vw;
}
.parts-scene h2 .label-ja {
	display: block;
	font-size: 4vw;
}

/********** parts-scene **********/
.parts-scene .parts-scene-box {
}
.parts-scene ul {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	
	width: 100%;
}
.parts-scene ul li {
	width: 43vw;
	margin: 0 0 3vw;
}


/* ----------------------------------------
MENULIST
---------------------------------------- */
.parts-menu-list {
	margin: 0 0 23.5vw;
}
.parts-menu-list .parts-menu-list-box {
}
.parts-menu-list ul {
	display: flex;
	flex-wrap: wrap;
	
	width: 100%;
	padding: 0 0 0 5vw;
}
.parts-menu-list ul li {
	display: flex;
	
	width: 29vw;
	margin: 0 1.5vw 1.5vw 0;
}
.parts-menu-list ul li:nth-of-type(3n) {
	margin-right: 0;
}
.parts-menu-list ul li a {
	display: flex;
	justify-content: center;
	align-items: center;
	
	width: 100%;
	padding: 16.5vw 2vw 3vw;
	border-radius: 2vw;
	line-height: 1.4;
	text-align: center;
	text-decoration: none;
	font-size: 3.6vw;
	color: #fff !important;
}

/* 新規会員登録 */
.parts-menu-list ul li.parts-menu-list-register a {
	background: #807065 url("../images/common/icon-member.svg") no-repeat 50% 5vw;
	background-size: 9.6vw;
}

/* ミーチョについて */
.parts-menu-list ul li.parts-menu-list-about a {
	background: #807065 url("../images/common/icon-about.svg") no-repeat 50% 5vw;
	background-size: 9.6vw;
}

/* 直営店のご案内 */
.parts-menu-list ul li.parts-menu-list-shop a {
	background: #807065 url("../images/common/icon-shop.svg") no-repeat 50% 5vw;
	background-size: 9.6vw;
}




/* ----------------------------------------
CATEGORY ボタン
---------------------------------------- */
.parts-category-btns {
	background: #f7f4f0;
	padding: 15vw 0;
	margin: 0 0 22vw;
}

.parts-category-btns h2 {
	padding: 0 0 10vw;
	text-align: center;
	color: #604c3f;	
	font-weight: normal;
}
.parts-category-btns h2 .label-en {
	display: block;
	font-size: 7.6vw;
}
.parts-category-btns h2 .label-ja {
	display: block;
	font-size: 4vw;	
}	
	
/********** parts-category-bnrs **********/	
.parts-category-btns-box {
}
.parts-category-btns-box ul {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;	
	width: 90vw;
	margin: 0 auto;
}
.parts-category-btns-box ul li {
	background: #807065;
	width: 43vw;
	border-radius: 1.6vw;
	margin-bottom: 4vw;
}
.parts-category-btns-box ul li a {
	display: block;
	padding: 3vw;
	text-decoration: none;
	font-size: 4.4vw;
	color: #fff !important;
	font-weight: bold;
	
	position: relative;
}
.parts-category-btns-box ul li a span{
	display: block;
	font-size: 3vw;
}
.parts-category-btns-box ul li a::after {
	content: '';
	border: 0;
	border-top: solid 2px #fff;
	border-right: solid 2px #fff;
	display: inline-block;
	width:2vw;
	height: 2vw;
	/* 矢印アイコンの位置を設定 */
	position: absolute;
	top: 50%;
	right: 3.6vw;
	transform: translateY(-50%) rotate(45deg);
}	




/* ----------------------------------------
SCENE カテゴリーページ用パーツ
---------------------------------------- */
.parts-scene-cat-box ul {
	width:100%;
	margin-bottom: 14vw;
	
	display: flex;
	justify-content: space-between;
}
.parts-scene-cat-box ul li {
	width: 31vw;
}

