@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: 'Kaisei Opti', serif;*/
	font-family: 'Roboto', sans-serif;
	/*font-family:"Open Sans", "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "MS Pゴシック", "MS PGothic", sans-serif;*/
}

img{
	max-width: 100%;
	height: auto;
	vertical-align: bottom;
}

address{
	font-style: normal;
}


/* --------------------------------------------------------------------------------
	共通 リセット タグ等
-------------------------------------------------------------------------------- */
.common {
	font-size: 2.6vw;
}

.common * {
	margin: 0;
	padding: 0;
	border: 0;
	vertical-align: baseline;
    /*font-family: 'Kaisei Opti', serif;*/
	font-family: 'Roboto', sans-serif;
	/*font-family:"Open Sans", "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "MS Pゴシック", "MS PGothic", sans-serif;*/
	color: #333;
}

.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: 'Roboto', sans-serif;
	/*font-family:"游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;*/
	font-weight: 500;
}

/********** プレースホルダー **********/
::-webkit-input-placeholder,
::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{
	background: #fff;
}




/* ----------------------------------------
メニュー＆ロゴ
---------------------------------------- */
#header-sp .h-contents {
	display: flex;
	width: 100%;
	padding: 4.9vw 0 0;
}


/* ----------------------------------------
info-my
---------------------------------------- */
#header-sp .info-my {
	display: flex;
	justify-content: space-between;
	align-items: center;
	
	width: 100%;
	padding: 0 1.8vw 3vw;
}

/********** member-information **********/
#header-sp .info-my .member-information{
	width: calc(100% - 20vw);
}

/********** my **********/
#header-sp .info-my .h-my{
	width: 19vw;
	margin: 0 1.3vw 0 0;
}
#header-sp .info-my .h-my ul{
	display: flex;
	justify-content: space-between;
}
#header-sp .info-my .h-my ul li a{
	position: relative;
	display: block;
}
#header-sp .info-my .h-my ul li .fs-client-cart-count {
	position: absolute;
	display: flex;
	z-index: 2;
	background: #ce6b7b;
	color: #fff;
	min-width: 4.8vw;
	height: 4.8vw;
	border-radius: 100%;
	left: 4.5vw;
	justify-content: center;
	align-items: center;
	top: -6px;
}
#header-sp .info-my .h-my ul li img{
	display: block;
	width: 6.4vw;
}
#header-sp .info-my .h-my ul li a{
	display: block;
}

/********** info **********/
#header-sp .info{
	display: flex;
	align-items: center;
	
	width: 100%;
	padding: 0 2vw 3vw;
}
#header-sp .info .heading {
	margin: 0 2vw 0 0;
	padding: 0 2vw;
	font-size: 3vw;
	color: #fff;
	background: #ce6b7b;
}
#header-sp .info .info-box {
	font-weight: bold;
	color: #ce6b7b;
}
#header-sp .info .info-box a{
	font-weight: bold;
	color: #ce6b7b;
}


/* ----------------------------------------
メニュー
---------------------------------------- */
#header-sp .h-menu {
	position: absolute;
	top: 0;
	bottom: 0;
	left: -100vw;
	z-index: 10;
	
	display: flex;
	flex-direction: row-reverse;
	
	transition: 0.2s linear;
	
	width: 100%;
	height: 100%;
	padding: 0 0 0;
}
.h-fix-mode #header-sp .h-menu {
	position: fixed;
}

/* メニューアクティブ */
#header-sp.active-h-menu .h-menu {
	left: -10vw;
	transition: 0.2s linear;
}

/* メニューボタン */
#header-sp .h-menu .h-btn-menu {
	position: relative;
	left: 0.8vw;
	
	width: 12vw;
	height: 12vw;
	margin: 0 -12vw 0 0;
	padding: 0 1vw 0;
}

/* ヘッダー固定時 */
.h-fix-mode #header-sp .h-menu .h-btn-menu {
	position: fixed;
	left: 0.8vw;
	
	margin: 0 -10vw 0 0;
}

/* メニュー表示 */
#header-sp.active-h-menu .h-menu .h-btn-menu {
	position: fixed;
	
	left: 89vw;
	
	margin: 0 -10vw 0 0;
	padding: 0 1vw 0;
}

/* メニュー画像 */
#header-sp .h-menu .h-btn-menu img {
	display: block;
}


/* ---- メニュー切り替え ---- */
#header-sp .h-menu .h-btn-menu .h-btn-menu-open {
	display: block;
}
#header-sp .h-menu .h-btn-menu .h-btn-menu-close {
	display: none;
}
#header-sp.active-h-menu .h-menu .h-btn-menu-open {
	display: none;
}
#header-sp.active-h-menu .h-menu .h-btn-menu-close {
	display: block;
}


/* h-menu-wrapper */
#header-sp .h-menu .h-menu-wrapper {
	width: 90vw;
	background: rgba(255,255,255,0.8);
	
	overflow: auto;
	-webkit-overflow-scrolling: touch;
}


/* h-menu-box heading */
#header-sp .h-menu .h-menu-box .heading {
	padding: 3.1vw 2vw;
	border-bottom: solid 0.3vw #ccc;
	font-size: 4.8vw;
	
	background:url("../images/common-device/h-menu-icon-arr-down.png") no-repeat calc(100% - 2vw) 50%;
	background-size: 4vw auto;
}
#header-sp .h-menu .h-menu-box .heading {
	
}


/* リスト */
#header-sp.active-h-menu .h-menu .h-menu-list-box.active .heading{
	background-image: url("../images/common-device/h-menu-icon-arr-up.png");
}
#header-sp.active-h-menu .h-menu .open-contents {
	display: none;
}
#header-sp .h-menu .h-menu-box .h-menu-list ul li a {
	display: block;
	padding: 3.5vw 2vw;
}








/* ----------------------------------------
ロゴ
---------------------------------------- */
#header-sp .h-logo {
	/*width: 40.1vw;*/
    width: 39.4vw;
	/*margin: 0 0 5vw 30vw;*/
    margin: 0 0 5vw 33vw;
}
#header-sp .h-logo h1 a {
	display: block;
}
#header-sp .h-logo h1 img {
	display: block;
	/*width: 40vw;*/
    width: 39.4vw;
	height: auto;
}


/* ----------------------------------------
search-nav
---------------------------------------- */
#header-sp .search-nav {
	display: flex;
	width: 100%;
	
	background: #dd9d9f;
}
/********** #heaer-sp.h-fix-mode：アクティブ時 **********/
body.h-fix-mode #header-sp .search-nav,
body.h-fix-mode2 #header-sp .search-nav{
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	z-index: 100;
	
	width: 100%;
}

/********** 検索ボタン **********/
#header-sp .search-nav .btn-open-search{
	display: flex;
}

#header-sp .search-nav .h-btn-search{
	display: flex;
	justify-content: center;
	align-items: center;
	
	width: 20vw;
	background: #dd9d9f;
}
#header-sp .search-nav .h-btn-search img {
	width: 7vw;
	height: auto;
}


/********** 検索 **********/
#header-sp .search{
	visibility: hidden;
	
	position: absolute;
	z-index: 2;
	
	width: 100%;
	margin: 15vw 0 0;
	padding: 0 2vw 12.5vw;
	border-right: solid 2vw #eed5d9;
	border-bottom: solid 4vw #eed5d9;
	border-left: solid 2vw #eed5d9;
	
	background: #fff;
}

/* 検索：アクティブ */
#header-sp .search.active{
	visibility: visible;
}

#header-sp .search .search-box{
	display: flex;
	align-items: center;
	
	width: 100%;
	padding: 9vw 0 2vw;
	border-bottom: solid 0.3vw #ccc;
}
#header-sp .search .img-search{
	width: 11vw;
}
#header-sp .search .img-search input{
	display: block;
	width: 7vw;
	height: auto;
}
#header-sp .search .txt-search{
	display: block;
	width: 78vw;
}
#header-sp .search .txt-search input{
	display: block;
	width: 100%;
}

/********** h-nav **********/
#header-sp .h-nav{
	width: calc(100% - 20vw);
	
	background: #dd9d9f;
}


#header-sp .h-nav > nav > ul{
	display: flex;
	width: 100%;
}

#header-sp .h-nav li{
	width: calc(100% - 28vw);
	
}
#header-sp .h-nav li.brand-list{
	width: 28vw;
}

/* BRANDボタン */
#header-sp .h-nav .h-nav-open-close{
	padding: 4.7vw 0 4.7vw 4.3vw;
	font-size: 4.2vw;
	color: #fff;
	background: url("../images/common-device/h-nav-icon-down.png") no-repeat calc(100% - 4.3vw) 50%;
	background-size: 4vw auto;
}

/* BRANDボタンアクティブ時 */
#header-sp .h-nav li.brand-list.active .h-nav-open-close{
	background-color: #d48182;
	background-image: url("../images/common-device/h-nav-icon-up.png");
}

/* SHOPPING GUIDEボタン */
#header-sp .h-nav > nav > ul > li > a{
	display: block;
	padding: 4.7vw 0 4.7vw 4.3vw;
	font-size: 4.2vw;
	color: #fff;
	background: url("../images/common-device/h-nav-icon-right.png") no-repeat calc(100% - 4.3vw) 50%;
	background-size: 2.1vw auto;
}



/* open-contents */
#header-sp .h-nav .brand-list .h-nav-open-contents{
	position: absolute;
	left: 0;
	right: 0;
	z-index: 2;
	
	width: 100%;
	visibility: hidden;
	border: solid 2vw #d48182;
}

/* アクティブ時 */
#header-sp .h-nav .brand-list.active .h-nav-open-contents{
	visibility: visible;
}
#header-sp .h-nav .brand-list .h-nav-open-contents ul{
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	
	width: 100%;
}
#header-sp .h-nav .brand-list .h-nav-open-contents ul li{
	width: 33.333%; /* 20240216 kim */
	border-right: solid 0.15vw #ccc;
	border-bottom: solid 0.15vw #ccc;
}
#header-sp .h-nav .brand-list .h-nav-open-contents ul li:nth-of-type(2n){
	border-right: none;
	border-left: solid 0.15vw #ccc;
}
#header-sp .h-nav .brand-list .h-nav-open-contents ul li a{
	display: block;
	background: #fff;
}
#header-sp .h-nav .brand-list .h-nav-open-contents ul li img{
	display: block;
}




/* --------------------------------------------------------------------------------
	footer-sp
-------------------------------------------------------------------------------- */
#footer-sp{
	padding: 10vw 0 0;
	background: #fff;
}


/* ----------------------------------------
f-sns
---------------------------------------- */
#footer-sp .f-sns ul {
	display: flex;
	justify-content: space-between;
	
	width: 35vw;
	margin: 0 auto 5vw;
}
#footer-sp .f-sns ul li {
	width: 10vw;
	height: auto;
	margin: 0 5px;
}
#footer-sp .f-sns ul li a {
	display: block;
}
#footer-sp .f-sns ul li img {
	display: block;
}


/********** ロゴ **********/
#footer-sp .f-logo {
	width: 40vw;
	margin: 0 auto 5vw;
}
#footer-sp .f-logo a {
	display: block;
}
#footer-sp .f-logo img {
	display: block;
}


/********** f-help **********/
#footer-sp .f-help ul {
	display: flex;
	flex-wrap: wrap;
	
	width: 100%;
	border-top: solid 0.3vw #ccc;
}
#footer-sp .f-help ul li {
	width: 50%;
	border-bottom: solid 0.3vw #ccc;
}
#footer-sp .f-help ul li.h-help-full_size {
	width: 100%;
	border-left: none;
	border-bottom: solid 0.3vw #ccc;
}
#footer-sp .f-help ul li:nth-of-type(2n) {
	border-left: solid 0.3vw #ccc;
}
#footer-sp .f-help ul li a {
	display: block;
	padding: 4.25vw 0;
	text-align: center;
}


/********** copyright **********/
#footer-sp .copyright {
	padding: 3.5vw 0;
	text-align: center;
}


/********** 固定 **********/
#footer-sp .fix{
	position: fixed;
	right: 0;
	bottom: 30vw;
	z-index: 10;
}
#footer-sp .fix a{
	display: block;
}
#footer-sp .fix img{
	display: block;
	width: 12vw;
	height: auto;
}














