@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:"游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "MS Pゴシック", "MS PGothic", sans-serif;
	font-weight: 500;
}

img{
	max-width: 100%;
	height: auto;
	vertical-align: bottom;
}

address{
	font-style: normal;
}


/* --------------------------------------------------------------------------------
	共通 リセット タグ等
-------------------------------------------------------------------------------- */
.common {
	font-size: 3.6vw;
}

.common * {
	margin: 0;
	padding: 0;
	border: 0;
	vertical-align: baseline;
	font-family:"游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "MS Pゴシック", "MS PGothic", sans-serif;
	font-weight: 500;
}

.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: #333;
    -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{
	color:#000;
}




.inner{
	padding: 0 2vw;
}



/* --------------------------------------------------------------------------------
	デバイスごとの表示・非表示
-------------------------------------------------------------------------------- */
.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 .header-outer{
	position: fixed;
	top: 0;
	z-index: 1000;
	width: 100%;
	background: #fff;
}


/* ----------------------------------------
header-inner
---------------------------------------- */
#header-sp .header-inner{
	display: flex;
	
	width: 100%;
	padding: 1.8vw 2vw 3.2vw;
}

/********** h-btn-menu **********/
#header-sp .h-btn-menu{
	display: block;
	width: 10vw;
	margin: 0 8.3vw 0 0;
}
#header-sp .h-btn-menu img{
	display: block;
}

/********** h-logo **********/
#header-sp .h-logo{
	display: block;
	width: 38vw;
	margin: 0 3.7vw 0 0;
}
#header-sp .h-logo img{
	display: block;
}

/********** h-btns **********/
#header-sp .h-btns{
	display: block;
	width: 36vw;
}
#header-sp .h-btns .h-btn-tel{
	display: block;
	padding: 0 0 2vw;
}
#header-sp .h-btns a{
	display: block;
}
#header-sp .h-btns img{
	display: block;
}


/* ----------------------------------------
search
---------------------------------------- */
#header-sp .search{
	padding: 0 2vw 6vw;
}
#header-sp .search .search-form{
	display: flex;
	justify-content: space-between;
	
	width: 100%;
	border-bottom: solid 0.3vw #333;
}
#header-sp .search .search-form .txt-search{
	display: block;
	width: 89vw;
}
#header-sp .search .search-form .img-search{
	display: block;
}
#header-sp .search .search-form .img-search input{
	width: 4.1vw;
	height: 6.5vw;
}


/* ----------------------------------------
h-menu
---------------------------------------- */
#header-sp .h-menu{
	display: none;
	
	position: fixed;
	z-index: 1001;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	
	width: 100%;
	height: 100%;
	color: #fff;
	background: #00664d;
	
	overflow: auto;
	-webkit-overflow-scrolling: touch;
}
#header-sp .h-menu a{
	color: #fff;
}


/* メニューアクティブ時 */
#header-sp .h-menu.active{
	display: block;
}


#header-sp .h-btn-close{
	padding: 2vw 2vw 0;
}
#header-sp .h-btn-close img{
	display: block;
	width: 10vw;
	height: auto;
	
}



/********** heading **********/
#header-sp .h-menu .heading{
	padding: 9vw 2vw 2vw;
	border-bottom: solid 1px #fff;
	font-weight: bold;
}

/********** 表示切り替え **********/
/* ログアウト */
#header-sp .h-menu .member-loggind-status-false .customer-logout{
	display: block;
}
#header-sp .h-menu .member-loggind-status-false .customer-login{
	display: none;
}
/* ログイン時 */
#header-sp .h-menu .member-loggind-status-true .customer-logout{
	display: none;
}
#header-sp .h-menu .member-loggind-status-true .customer-login{
	display: block;
}

/********** ログアウト時 **********/
#header-sp .h-menu .customer-logout .btns-customer{
	padding: 4vw 11vw 2vw;
}
#header-sp .h-menu .customer-logout .btns-customer a{
	display: block;
	padding: 2vw;
	text-align: center;
	border: solid 1px #fff;
}

/********** ログイン時 **********/
#header-sp .h-menu .customer-login .customer-login-box{
	display: flex;
	justify-content: space-between;
	
	width: 100%;
	padding: 12.5vw 2vw 0;
}
#header-sp .h-menu .customer-login .btns-customer a{
	display: block;
	text-decoration: underline;
}

/********** リスト **********/
#header-sp .h-menu .h-menu-box ul{
	padding: 0 0 20px;
}
#header-sp .h-menu .h-menu-box ul:last-child{
	padding: 0 0 0;
}
#header-sp .h-menu .h-menu-box ul li{
	border-bottom: solid 1px #fff;
}
#header-sp .h-menu .h-menu-box ul li:last-child{
	border-bottom: none;
}
#header-sp .h-menu .h-menu-box ul li a{
	display: block;
	padding: 2.8vw 2vw;
	color: #fff;
}




/* --------------------------------------------------------------------------------
	header-simple-sp
-------------------------------------------------------------------------------- */
#header-simple-sp{
	background: #ffffff url(../images/common/h-nav-bg.png) repeat-x 0 100%;
	background-size:1.5vw;
}
#header-simple-sp .h-logo {
    padding: 2vw 0 5vw;
	width:50vw;
	margin:0 auto;
}









/* --------------------------------------------------------------------------------
	footer-sp
-------------------------------------------------------------------------------- */
#footer-sp {
	padding: 47px 0 0;
}

/********** f-sns **********/
#footer-sp .f-sns ul{
	display: flex;
	
	justify-content: center;
	padding: 0 0 9vw;
}
#footer-sp .f-sns ul li{
	width: 12vw;
	margin: 0 1.5vw;
}
#footer-sp .f-sns ul li a{
	display: block;
}
#footer-sp .f-sns ul li img{
	display: block;
}

/********** f-img **********/
#footer-sp .f-img{
	padding: 0 0 9vw;
}
#footer-sp .f-img img{
	display: block;
}

/********** f-contact **********/
#footer-sp .f-contact{
	padding: 16px 0 14px;
	background: #f1f1e6;
}
#footer-sp .f-contact ul{
	padding: 0 2vw;
}
#footer-sp .f-contact ul li:nth-of-type(1){
	border-bottom: solid 0.2vw #c0bebd;
}
#footer-sp .f-contact ul li a{
	display: block;
}
#footer-sp .f-contact ul li img{
	display: block;
}





/********** f-cols **********/
#footer-sp .f-cols {
	margin: 0 auto;
	padding: 3vw 2vw 3vw;
}
#footer-sp .f-cols > ul {
}
#footer-sp .f-cols > ul > li{
	line-height: 1.6;
}
#footer-sp .f-cols > ul > li a{
	text-decoration: underline;
}

#footer-sp .f-cols ul li .f-col-contents{
	padding: 0 2vw;
}


/* txt */
#footer-sp .f-cols ul li .txt {
	padding: 0 0 2vw;
}

/* heading */
#footer-sp .f-cols ul li .heading {
	margin: 0 0 2vw;
	padding: 2vw 0;
	text-align: center;
	border-radius: 1vw;
	color: #fff;
	background: #00664d;
}


/* sheading */
#footer-sp .f-cols ul li .sheading {
	font-weight: bold;
}
#footer-sp .f-cols ul li .sheading a{
	font-weight:bold;
}

/* txt */
#footer-sp .f-cols ul li .txt {
	padding: 0 0 2vw;
}
#footer-sp .f-cols ul li .txt p {
}
#footer-sp .f-cols ul li .mark-1 {
	color: #c00;
	font-weight: bold;
}
#footer-sp .f-cols ul li .mark-2 {
	color: #e61446;
	font-weight: bold;
}

/********** 送料・配送について **********/
#footer-sp .f-cols ul li .shipping-1 ul li{
	padding: 0 0 0 1.1em;
	text-indent: -1em;
}
#footer-sp .f-cols ul li .shipping-1 ul li::before{
	content: '・';
}
#footer-sp .f-cols ul li .shipping-1 .txt{
	padding-left: 8px;
}
#footer-sp .f-cols ul li .shipping-1 .txt p{
	padding-left: 0;
}
#footer-sp .f-cols ul li .shipping-2 .txt p{
	padding-left: 0;
}







/********** カレンダー・ロゴ、help **********/
#footer-sp .calendar-logo-help{
	display: flex;
	justify-content: space-between;
	
	width: 100%;
	padding: 0 2vw;
}
#footer-sp .calendar-logo-help .logo-help{
	width: 43vw;
}








/* ----------------------------------------
カレンダー
---------------------------------------- */
#footer-sp .calendar{
	margin: 0 0 16vw;
}


/********** カレンダーレイアウト **********/
#footer-sp .calendar .calendar-wrapper{
	margin: 0 0 1vw;
}

/********** カレンダー外枠 **********/
#footer-sp .calendar .calendar-box{
	width:48vw;
}
#footer-sp .calendar .calendar-box:nth-of-type(2){
	display: none;
}

/********** 営業日カレンダー **********/
#footer-sp .calendar table{
	width:100%;
	line-height:1.5;
	font-size:2.8vw;
	text-align:center;
	border-collapse:collapse;
	background:#fff;
	color:#333333;
}

/********** 月名 **********/
#footer-sp .calendar caption{
	padding:1vw;
	text-align:center;
	font-weight:bold;
	border-top: solid 1px #333333;
	border-right: solid 1px #333333;
	border-left: solid 1px #333333;
	background:#333333;
	color:#ffffff;
}

/********** 曜日 **********/
#footer-sp .calendar tr:nth-child(1) th{
	background:#eeeeee;
	line-height:2;
}
#footer-sp .calendar th{
	width:calc(100% / 7);
	border:1px solid #333333;
	font-weight:bold;
}
#footer-sp .calendar th.sunday{
	color:#cc0000;
}
#footer-sp .calendar th.saturday{
	color:#6699cc;
}

/********** 日付の枠 **********/
#footer-sp .calendar td{
	padding:1vw 0;
	width:calc(100% / 7);
	border:1px solid #333333;
}
#footer-sp .calendar td.sunday{
}
#footer-sp .calendar td.saturday{
}
#footer-sp .calendar td.close{
}

/********** 日付の文字 **********/
#footer-sp .calendar td span{
}
#footer-sp .calendar td.close{
	color: #fff;
	background: #cc9999;
}

/********** 休業日 **********/
#footer-sp .calendar .cal-hours{
	position: relative;
}
#footer-sp .calendar .cal-hours::before {
	content: '';
	
	position: absolute;
	left: 0;
	top: 0.1vw;
	
	display: block;
	width: 2.8vw;
	height: 2.8vw;
	background: #c00;
}
#footer-sp .calendar .cal-txt{
	font-size: 2.8vw;
	margin:3vw 0 0;
    width: 48vw;
	color:#333333;
}
#footer-sp .calendar .cal-txt .open-close{
	display: flex;
	margin:0 0 1.5vw;
}
#footer-sp .calendar .cal-txt .open-close .mark-open{
	display: flex;
	align-items: center;
	
	margin: 0 10px 0 0;
}
#footer-sp .calendar .cal-txt .open-close .mark-close{
	display: flex;
	align-items: center;
	
	margin: 0 10px 0 0;
}
#footer-sp .calendar .cal-txt .open-close .mark-open::before {
	content: '';
	
	display: block;
	width: 3vw;
	height: 3vw;
	margin: 0 1vw 0 0;
	background: #ffffff;
	border:1px solid #cccccc;
	
	box-sizing: border-box;
}
#footer-sp .calendar .cal-txt .open-close .mark-close::before {
	content: '';
	
	display: block;
	width: 3vw;
	height: 3vw;
	margin: 0 1vw 0 0;
	background: #cc9999;
	
	box-sizing: border-box;
}
#footer-sp .calendar .cal-txt .txt1{
	font-size:2.8vw;
	line-height:1.7;
}

/********** logo-help **********/
#footer-sp .logo-help{
}
#footer-sp .logo-help .f-logo{
	width: 43vw;
}
#footer-sp .logo-help .f-help{
}
#footer-sp .logo-help .f-help ul li{
	padding: 0 0 2.5vw;
}

/********** コピーライト **********/
#footer-sp .copyright{
	padding: 0 0 10vw;
	text-align: center;
}


/********** フローティング **********/
#footer-sp .fix{
	position: fixed;
	right: 0;
	top: 50%;
	z-index: 1000;
	
	width: 20vw;
}
#footer-sp .fix a{
	display: block;
}
#footer-sp .fix img{
	display: block;
}





