@charset "utf-8";




.header-old,
.fs-p-drawer,
.footer-old{
	display: none;
}



header
{
}


.fs-p-headerNavBar {
background: #03b1ad;
border-bottom: 2px solid #7c8790;
color: #ffffff;
}

.fs-preview-header
{
margin-bottom: 108px;
}

.fs-l-main
{
padding-top: 130px;
}

.fs-body-top .fs-l-main
{
padding-top: 20px;
}

.fs-pt-carousel
{
padding-top: 146px;
}

.btnfixed
{
position: fixed;
bottom: 30px;
right: 0px;
}

.fs-p-memberInfo__points {
display:none;
}


#pagetop{
	position: absolute;
	top: 0;
}







/* --------------------------------------------------------------------------------
	タグ
-------------------------------------------------------------------------------- */
html{
	
}
body {
	margin: 0;
	padding: 0;
	min-width: 1200px;
	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-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", "sans-serif";*/
	font-weight: 500;
	font-size: 16px;
	
	color: #000;
}

img{
	max-width: 100%;
	height: auto;
	vertical-align: bottom;
}

address{
	font-style: normal;
}


/* --------------------------------------------------------------------------------
	共通
-------------------------------------------------------------------------------- */
.common {
	font-size: 16px;
}

.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-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "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: underline;
}

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;
}


/* --------------------------------------------------------------------------------
	デバイスごとの表示・非表示
-------------------------------------------------------------------------------- */
.device-sp{
	display: none;
}
.device-sp-inline{
	display: none;
}
.device-pc{
	display: block;
}
.device-pc-inline{
	display: inline;
}

.inner{
	width: 1200px;
	margin: 0 auto;
}


/* --------------------------------------------------------------------------------
	container
-------------------------------------------------------------------------------- */
#container{
}


/* --------------------------------------------------------------------------------
	header
-------------------------------------------------------------------------------- */
#header{
	width: 100%;
	box-shadow: 0 5px 10px rgba(0,0,0,0.35);
	
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	z-index: 100;
}

@media screen and (min-width: 1px) and (max-width: 1150px){
	/* スマートフォン向けの幅～PC狭幅の時は右側を消す */
	#header .h-contents{
		width: 100% !important;
	}
	#header .h-sns-member{
		display: none !important;
	}
}



/* ----------------------------------------
header-inner
---------------------------------------- */
#header .header-inner {
	display: flex;
	
	width: 100%;
	height: 120px;
	
	overflow: hidden;
}

/* ----------------------------------------
h-contents
---------------------------------------- */
/********** h-contents **********/
#header .h-contents {
	display: flex;
	justify-content: space-between;
	
	width: calc(100% - 370px);
	background: #00aba5;
}

/********** h-logo **********/
#header .h-logo{
	display: flex;
	justify-content: center;
	align-items: center;
	
	width: 180px;
	margin: 0 0 0 30px;
}
#header .h-logo a{
	display: block;
}
#header .h-logo img{
	display: block;
}

/********** search-nav **********/
#header .search-nav{
	width: 550px;
	padding: 0 20px 0 0;
}

/********** 検索窓 **********/
#header .search .search-box{
	display: flex;
	
	width: 360px;
	margin: 0 0 0 auto;
	padding: 25px 0 1px;
	border-bottom: solid 1px #fff;
}
#header .search .txt-search{
	width: 338px;
}
#header .search .txt-search input{
	display: block;
	width: 330px;
	margin: 0 5px 0 0;
	color: #fff;
	background: none;
}
#header .search .img-search{
}
#header .search .img-search input{
	display: block;
	color: #fff;
	background: none;
}

/********** ナビゲーション **********/
#header .h-nav{
	display: flex;
	justify-content: flex-end;
	
	width: 100%;
	padding: 25px 0 1px;
}
#header .h-nav a{
	display: inline-block;
	margin: 0 0 0 35px;
	white-space: nowrap;
	color: #fff;
}


/* ----------------------------------------
h-sns-member
---------------------------------------- */
/********** h-sns-member **********/
#header .h-sns-member {
	width: 370px;
	padding: 12px 0 0 19px;
	color: #fff;
	background:#006864;
}



/********** txt-greeting **********/
#header .fs-clientInfo.is-ready{
	display: flex;
	align-items: center;
	margin-bottom: 12px;
}

/********** txt-greeting **********/
#header .txt-greeting {
	/*padding: 0 0 17px;*/
}



/********** 会員ステージ **********/
/* 会員ステージ */
#header .member-information .stage {
	margin-left: 20px;
	font-size: 14px;
	background: #fff;
	border-radius: 7px;
	padding: 5px;
}
/* ダイヤモンド */
#header .member-information .stage .diamond-1 {
	color: #990000;
}
#header .member-information .stage .diamond-1:before {
	content: '';
	display: inline-block;
	width: 15px;
	height: 16px;
	background-image: url(../images/common/stage-rank-icon-diamond.png);
	background-repeat: no-repeat;
	background-size: contain;
	vertical-align: middle;
	margin-right: 5px;
}
/* プラチナ */
#header .member-information .stage .platinum-2 {
	color: #666666;
}
#header .member-information .stage .platinum-2:before {
	content: '';
	display: inline-block;
	width: 15px;
	height: 16px;
	background-image: url(../images/common/stage-rank-icon-platinum.png);
	background-repeat: no-repeat;
	background-size: contain;
	vertical-align: middle;
	margin-right: 5px;
}
/* ゴールド */
#header .member-information .stage .gold-3 {
	color: #cc9900;
}
#header .member-information .stage .gold-3:before {
	content: '';
	display: inline-block;
	width: 15px;
	height: 16px;
	background-image: url(../images/common/stage-rank-icon-gold.png);
	background-repeat: no-repeat;
	background-size: contain;
	vertical-align: middle;
	margin-right: 5px;
}
/* パール */
#header .member-information .stage .pearl-4 {
	color: #999966;
}
#header .member-information .stage .pearl-4:before {
	content: '';
	display: inline-block;
	width: 15px;
	height: 16px;
	background-image: url(../images/common/stage-rank-icon-pearl.png);
	background-repeat: no-repeat;
	background-size: contain;
	vertical-align: middle;
	margin-right: 5px;
}
/* サファイア */
#header .member-information .stage .sapphire-5 {
	color: #006699;
}
#header .member-information .stage .sapphire-5:before {
	content: '';
	display: inline-block;
	width: 15px;
	height: 16px;
	background-image: url(../images/common/stage-rank-icon-sapphire.png);
	background-repeat: no-repeat;
	background-size: contain;
	vertical-align: middle;
	margin-right: 5px;
}

/* レギュラー */
#header .member-information .stage .norank-1, #header .member-information .stage .norank-2, #header .member-information .stage .norank-3, #header .member-information .stage .norank-4,
#header .member-information .stage .norank-5 {
	display: none;
}
#header .member-information .stage .norank- {
	display: inline;
	color: #000;
}
#header .member-information .stage .diamond-1:after, #header .member-information .stage .platinum-2:after, #header .member-information .stagee .gold-3:after,
#header .member-information .stage .pearl-4:after, #header .member-information .stage .sapphire-5:after {
	content: '会員';
}





/********** h-sns **********/
#header .h-sns ul {
	display: flex;
	padding: 0 6px 8px;
}
#header .h-sns ul li {
	margin: 0 14px 0 0;
}
#header .h-sns ul li a {
	display: block;
}
#header .h-sns ul li img {
	display: block;
}

#header .h-sns .font-s14{
	font-size: 14px;
}


/********** h-mem **********/
#header .h-mem ul {
	display: flex;
	padding: 0 6px 9px;
}
#header .h-mem ul li {
	display: flex;
	margin: 0 14px 0 0;
	position: relative;
}
#header .h-mem ul li a {
	display: block;
}
#header .h-mem ul li img{
	display: block;
}
#header .h-mem ul li.h-mem-tel {
	display: flex;
	align-items: center;
	
	min-height: 20px;
	padding: 0 0 0 26px;
	background: url("../images/common/h-icon-tel.png") no-repeat 0 50%;
	white-space: nowrap;
}
#header .h-mem ul li a {
	color: #fff;
}

/* ツールチップ */
#header .h-mem .tooltip{
    position: relative;
    cursor: pointer;
    display: inline-block;
}
#header .h-mem .tooltip p{
    margin:0;
    padding:0;
}
#header .h-mem .description {
    display: none;
    position: absolute;
    padding: 5px;
    font-size: 10px;
    line-height: 1.6em;
    color: #006864;
    border-radius: 5px;
    background: #fff;
    width: 75px;
	text-align: center;
}
#header .h-mem .description:before {
    content: "";
    position: absolute;
    top: 100%;
    left: 50%;
    border: 8px solid transparent;
    border-top: 8px solid #fff;
    margin-left: -15px;
}
#header .h-mem .tooltip:hover .description{
    display: inline-block;
    top: -35px;
    left: -22px;
}

/* カート数量 */
#header .h-mem span.fs-client-cart-count {
	display: block;
	position: absolute;
	width: 1.3em;
	height: 1.3em;
	top: -5px;
	left: 13px;
	text-align: center;
	font-size: 70%;
	color: #006864;
	background-color: #fff;
	border-radius: 2em;
	z-index: 999;
}



/* ----------------------------------------
customer表示切り替え
---------------------------------------- */
/********** ログイン・ログアウトの表示切り替え：ログアウト時 **********/
.my-false .logout{
	display: block !important;
}
.my-false .login{
	display: none !important;
}
/********** ログイン・ログアウトの表示切り替え：ログイン時 **********/
.my-true .logout{
	display: none !important;
}
.my-true .login{
	display: block !important;
}





/* --------------------------------------------------------------------------------
	footer
-------------------------------------------------------------------------------- */
#footer {
}

/********** 画像 **********/
#footer .f-img img{
	display: block;
}

/********** contact **********/
#footer .btns-contact ul{
	display: flex;
	justify-content: center;
	
	margin: 0 auto 24px;
}
#footer .btns-contact ul li a{
	display: block;
}
#footer .btns-contact ul li img{
	display: block;
}

/********** f-sns **********/
#footer .f-sns ul {
	display: flex;
	justify-content: center;
	
	margin: 0 auto 88px;
}
#footer .f-sns ul li {
	padding: 0 10px;
}
#footer .f-sns ul li a {
	display: block;
}
#footer .f-sns ul li img {
	display: block;
}


/********** footer-inner **********/
#footer .footer-inner{
	padding: 0 0 30px;
	background: #00aba5;
	color: #fff;
}


/********** サイトマップ **********/
#footer .f-sitemap {
	padding: 91px 0 70px;
}
#footer .f-sitemap .f-sitemap-wrapper {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	
	width: 1080px;
	margin: 0 auto;
}
#footer .f-sitemap .heading {
	padding: 0 0 11px;
	font-weight: bold;
	font-size: 30px;
}
#footer .f-sitemap .f-sitemap-box {
	width: 350px;
}
#footer .f-sitemap ul {
}
#footer .f-sitemap ul li {
	padding: 0 0 24px;
}
#footer .f-sitemap ul li a {
	display: block;
	color: #fff;
}

/********** information **********/
#footer .information .sheading{
	padding: 0 0 20px;
	font-weight: bold;
}

/********** f-contact **********/
#footer .information .f-contact{
	padding: 0 0 73px;
}
#footer .information .f-contact-tel{
	display: flex;
	align-items: center;
	min-height: 28px;
	
	margin: 0 0 20px;
	padding: 0 0 0 29px;
	background: url("../images/common/f-icon-tel.png") no-repeat 0 50%;
}
#footer .information .f-contact-mail{
	padding: 0;
}
#footer .information .f-contact-mail a{
	display: inline-flex;
	align-items: center;
	min-height: 28px;
	
	padding: 0 30px 0 29px;
	background: url("../images/common/f-icon-mail.png") no-repeat 0 45%;
}

/********** address **********/
#footer .address{
	padding: 0 0 30px;
}
#footer .address .sheading{
	padding: 0 0 24px;
}
#footer .address .address-box{
	line-height: 1.95;
}

/* 営業日カレンダー */
#footer .calendar {
	width: 240px;
}
#footer .calendar .calendar-box {
	padding: 0 0 8px;
}
#footer .calendar table {
	width: 100%;
	margin: 0 0 5px;
	line-height: 1.4;
	font-size: 14px;
	text-align: center;
	border-collapse: collapse;
	color: #333;
	background: #fff;
}
/* 月名 */
#footer .calendar caption {
	padding: 6px;
	text-align: center;
	font-weight: bold;
	background: #eee;
}
/* 曜日 */
#footer .calendar th {
	padding: 5px 0;
	width: calc(100% / 7);
	border: 1px solid #ccc;
	font-weight: bold;
}
#footer .calendar th.sunday {
	color: #c00;
}
#footer .calendar th.saturday {
	color: #69c;
}
/* 日付の枠 */
#footer .calendar td {
	padding: 5px 0;
	width: calc(100% / 7);
	border: 1px solid #ccc;
}
#footer .calendar td.sunday {
}
#footer .calendar td.saturday {}
#footer .calendar td.close {}
/* 日付の文字 */
#footer .calendar td span {}
#footer .calendar td.close {
	color: #fff;
	background: #c99;
}
/* 休業日 */
#footer .calendar .cal-hours {
	padding: 0 0 0 20px;
	position: relative;
}
#footer .calendar .cal-hours::before {
	content: '';
	position: absolute;
	left: 0;
	top: 3px;
	display: block;
	width: 15px;
	height: 15px;
	background: #c00;
}
#footer .calendar .cal-txt-1 {
	display: flex;
	padding: 0 0 10px 8px;
}
#footer .calendar .cal-txt-1 .mark-open {
	display: flex;
	align-items: center;
	margin: 0 10px 0 0;
}
#footer .calendar .cal-txt-1 .mark-open::before {
	content: '';
	display: block;
	width: 15px;
	height: 15px;
	margin: 0 12px 0 0;
	border: solid 1px #ccc;
	background: #fff;
	box-sizing: border-box;
}
#footer .calendar .cal-txt-1 .mark-close {
	display: flex;
	align-items: center;
	margin: 0 10px 0 0;
}
#footer .calendar .cal-txt-1 .mark-close::before {
	content: '';
	display: block;
	width: 15px;
	height: 15px;
	margin: 0 12px 0 0;
	border: solid 1px #ccc;
	background: #c99;
	box-sizing: border-box;
}

/********** cal-txt-2 **********/
#footer .calendar .cal-txt-2 {
	line-height: 1.6;
}


/********** ロゴ **********/
#footer .f-logo a {
	display: block;
	margin: 0 auto;
	width: 405px;
}
#footer .f-logo img {
	display: block;
	margin: 0 auto;
}


/********** copyright **********/
#footer .copyright {
	padding: 15px 0;
	text-align: center;
}


/********** fix **********/
#footer .fix{
	position: fixed;
	z-index: 1000;
	
	right: 0;
	bottom: 20%;
}
#footer .fix .fix-btn-top{
	padding: 0 0 1px;
	position: relative;
}
#footer .fix a{
	display: block;
}
#footer .fix img{
	display: block;
}

/********** fix カート数量 **********/

#footer .fix .fix-btn-top span.fs-client-cart-count {
	display: block;
	position: absolute;
	width: 1.5em;
	height: 1.5em;
	padding-top: 0.05em;
	top: 15px;
	right: 15px;
	text-align: center;
	font-size: 90%;
	color: #006864;
	background-color: #fff;
	border-radius: 2em;
	z-index: 999;
}


