@charset "utf-8";



/* --------------------------------------------------------------------------------
	body
-------------------------------------------------------------------------------- */
body {
	margin: 0 auto;
	padding: 0;
	max-width: 800px;
	line-height: 1.5;
	font-size: 3.8vw;
	text-size-adjust: 100%;
	
	color: #333;
	background: none;
}


/* --------------------------------------------------------------------------------
	タグ
-------------------------------------------------------------------------------- */
.common * {
	margin: 0;
	padding: 0;
	border: 0;
	vertical-align: baseline;
	font-family: "メイリオ", Meiryo, Osaka, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "ＭＳ Ｐゴシック", "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;
	tont-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;
}

img{
	max-width: 100%;
	height: auto;
}


/* --------------------------------------------------------------------------------
	共通クラス
-------------------------------------------------------------------------------- */
.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;
	/**/
}

ul.ul{
	list-style:disc;
	padding:0 0 0 1.5em;
}
ol.ol{
	list-style:decimal;
	padding:0 0 0 1.75em;
}

/********** プレースホルダー **********/
::-webkit-input-placeholder{
	color:#000;
}

/* --------------------------------------------------------------------------------
	デバイスごとの表示・非表示
-------------------------------------------------------------------------------- */
.device-sp{
	display:block;
}
.device-sp-inline{
	display:inline;
}
.device-pc{
	display:none;
}
.device-pc-inline{
	display:none;
}

/* --------------------------------------------------------------------------------
	container
-------------------------------------------------------------------------------- */
#container{
}


/********** pagetop **********/
#pagetop{
	position: absolute;
	top: 0;
}


/* --------------------------------------------------------------------------------
	header-sp
-------------------------------------------------------------------------------- */
#header-sp{
	position: fixed;
	top: 0;
	right: 0;
	left: 0;
	z-index: 1000;
	
	width: 100%;
	background: rgba(255,255,255,0.9);
}

/********** ヘッダーコンテンツ **********/
#header-sp .header-contents{
	display: flex;
	justify-content: space-between;
	
	width: 100%;
	padding: 0 1.5vw 3vw 4vw;
	border-bottom: solid 0.3vw #dcdcdc;
	
	box-sizing: border-box;
}

/********** ロゴ **********/
#header-sp .h-logo{
	width: 29.4vw;
	padding: 4.5vw 0 0;
}
#header-sp .h-logo a{
	display: block;
}
#header-sp .h-logo img{
	display: block;
}

/********** ボタン **********/
#header-sp .h-btns ul{
	display: flex;
	justify-content: space-between;
	
	width: 40vw;
	padding: 4.3vw 0 0;
}
#header-sp .h-btns ul li{
	text-align: center;
}

/********** リンク・アイコン **********/
#header-sp .h-btns ul li a{
	display: block;
	font-size: 2.6vw;
}
#header-sp .h-btns ul li.h-btn-mypage{
	width: 15vw;
}
#header-sp .h-btns ul li.h-btn-mypage img{
	display: block;
	width: 4.4vw;
	height: auto;
	margin: 0 auto 0.7vw;
}
#header-sp .h-btns ul li.h-btn-cart{
	width: 15vw;
}
#header-sp .h-btns ul li.h-btn-cart img{
	display: block;
	width: 5.8vw;
	height: auto;
	margin: 0 auto 0.7vw;
}
#header-sp .h-btns ul li.h-btn-menu{
	width: 15vw;
}
#header-sp .h-btns ul li.h-btn-menu img{
	display: block;
	width: 6vw;
	height: auto;
	margin: 0 auto 0.7vw;
}

/********** メニューボタン **********/
#header-sp .h-btns ul li .label{
	display: block;
	font-size: 2.6vw;
}

/* --------------------------------------------------------------------------------
	h-menu
-------------------------------------------------------------------------------- */
#header-sp .h-menu{
	/* 最初は消しておく */
	display: none;
	
	position: fixed;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	z-index: 100;
	
	width: 100%;
	height: 100%;
	background: #fff;
	
	overflow: auto;
	-webkit-overflow-scrolling: touch;
}

/********** CLOSEボタン **********/
#header-sp .h-menu .h-btn-close{
	display: table;
	
	width: 15vw;
	margin: 0 1vw 4vw auto;
	padding: 4.5vw 0 0;
	text-align: center;
	font-size: 2.6vw;
}
#header-sp .h-menu .h-btn-close .icon img {
	display: block;
	width: 6vw;
	height: auto;
	margin: 0 auto 0.7vw;
}
#header-sp .h-menu .h-btn-close .label {
	text-align: center;
}

/********** 検索フォーム **********/
#header-sp .h-menu .search{
	padding: 0 5vw 6vw;
}
#header-sp .h-menu .search form{
	border-radius: 10em;
	border: solid 0.3vw #dcdcdc;
}
#header-sp .h-menu .search form .search-box{
	display: flex;
	align-items: center;
	justify-content: space-between;
	
	width: 100%;
	padding: 0 6.5vw;
	box-sizing: border-box;
}
#header-sp .h-menu .search form input[type="text"]{
	display: block;
	width: calc(100% - 8vw);
	padding: 2vw 0;
	font-size: 3.4vw;
	outline: none !important;
}
#header-sp .h-menu .search form input[type="image"]{
	display: block;
	width: 5vw;
	height: 5.1vw;
}

/********** 新規会員登録・ログイン **********/
#header-sp .h-menu .h-menu-btns{
	padding: 0 5vw 7vw;
}
#header-sp .h-menu .h-menu-btns ul{
	display: flex;
	justify-content: space-between;
	
	width: 100%;
}
#header-sp .h-menu .h-menu-btns ul li{
	width: 48%;
}
#header-sp .h-menu .h-menu-btns ul li a{
	display: flex;
	justify-content: center;
	box-sizing: border-box;
	
	width: 100%;
	border-radius: 0.5vw;
	padding: 2vw 0 2vw 0;
}
#header-sp .h-menu .h-menu-btns ul li.h-menu-btns-register a{
	color: #333;
	background: #eec95e;
}
#header-sp .h-menu .h-menu-btns ul li.h-menu-btns-register a::before{
	content: '';
	display: block;
	width: 4.9vw;
	height: 4.6vw;
	margin: 0 3vw 0 0;
	background: url('../common-device/h-menu-btn-icon-register.png') no-repeat 0 0;
	background-size: 100%;
}
#header-sp .h-menu .h-menu-btns ul li.h-menu-btns-login a{
	color: #fff;
	background: #666;
}
#header-sp .h-menu .h-menu-btns ul li.h-menu-btns-login a::before{
	content: '';
	display: block;
	width: 4.2vw;
	height: 4.6vw;
	margin: 0 3vw 0 0;
	background: url('../common-device/h-menu-btn-icon-login.png') no-repeat 0 0;
	background-size: 100%;
}

/********** メニューリスト **********/
#header-sp .h-menu .h-menu-list-box{
	padding: 0 0 7vw;
}
#header-sp .h-menu .heading{
	padding: 1vw 5vw 1vw 5vw;
	border-bottom: solid 0.6vw #dcdcdc;
	font-weight: bold;
	font-size: 3.8vw;
}
#header-sp .h-menu .open-close .open-close-btn{
	display: block;
	padding: 2.7vw 13vw 2.7vw 7vw;
	background: url("../common-device/h-menu-icon-plus.png") no-repeat calc(100% - 8.7vw) 50%;
	background-size: 3vw auto;
}
#header-sp .h-menu ul li a{
	display: block;
	padding: 2.7vw 13vw 2.7vw 7vw;
	background: url("../common-device/h-menu-arr.png") no-repeat calc(100% - 8.7vw) 50%;
	background-size: 1.5vw auto;
}
#header-sp .h-menu ul li ul{
	background: #f0f0f0;
}
#header-sp .h-menu ul li ul li a{
	padding-left: 11vw;
}


/********** 展開のスタイル **********/
/* 最初は閉じておく */
#header-sp .h-menu .open-close .open-close-contents{
	display: none;
}

/* 展開時 */
#header-sp .h-menu .open-close.active .open-close-btn{
	background-image: url("../common-device/h-menu-icon-minus.png");
}
#header-sp .h-menu .open-close.active .open-close-contents{
	display: block;
}



/* --------------------------------------------------------------------------------
	fs-l-main
-------------------------------------------------------------------------------- */
.fs-p-scrollingCartButton{
	display: none;
}


/* --------------------------------------------------------------------------------
	footer-sp
-------------------------------------------------------------------------------- */
#footer-sp{
}

.fs-l-footer{
	margin: 0;
	padding: 3vw 0 0;
	background: none;
}

/********** sns **********/
#footer-sp .sns {
	padding: 0 19vw;
}
#footer-sp .sns ul {
	display: flex;
	justify-content: space-between;
	width: 100%;
	padding: 0 0 9vw;
}
#footer-sp .sns ul li {
	width: 8vw;
}
#footer-sp .sns ul li a {
	display: block;
}
#footer-sp .sns ul li img {
	display: block;
}


/********** メニューリスト **********/
#footer-sp .f-menu ul{
	padding: 2.3vw 5vw;
	background: #bfbfbf;
}
#footer-sp .f-menu ul li{
	border-bottom: solid 1px #fff;
}
#footer-sp .f-menu ul li:last-child{
	border-bottom: none;
}
#footer-sp .f-menu ul li a{
	display: block;
	padding: 3.45vw 0;
	font-size: 3.4vw;
}

/********** コピーライト **********/
#footer-sp .copyright{
	padding: 3vw 0;
	text-align: center;
	font-size: 2.6vw;
}

/********** ページトップ **********/
#footer-sp .f-btn-pagetop{
	position: fixed;
	right: 1vw;
	bottom: 8vw;
	z-index: 100;
}
#footer-sp .f-btn-pagetop a{
	display: block;
}
#footer-sp .f-btn-pagetop img{
	display: block;
	width: 12vw;
	height: auto;
}


