/*-----------------------------------
　店舗メンテナンス中
------------------------------------*/
body.fs-body-closed main.fs-l-main{
padding:0;
}
body.fs-body-closed .fs-p-closed{
width:100%;
height:100%;
min-height:100vh;
display:flex;
justify-content:center;
align-items:center;
}
body.fs-body-closed .fs-p-closed > div{
margin:auto;
padding:0 2rem;
height:max-content;
text-align:center;
}
body.fs-body-closed .fs-p-closed > div > h2{
margin:2rem auto;
font-weight:600;
}
body.fs-body-closed .fs-p-closed > div > img{
max-width:unset;
}
@media screen and (min-width:769px){
	body.fs-body-closed .fs-p-closed > div > img{
	width:250px;
	}
	body.fs-body-closed .fs-p-closed > div > h2{
	font-size:3rem !important;
	}
	body.fs-body-closed .fs-p-closed > div > .fs-p-closed__message{
	font-size:1.6rem;
	line-height:1.8;
	}
}
@media screen and (max-width:768px){
	body.fs-body-closed .fs-p-closed > div{
	padding:0 4rem;
	}
	body.fs-body-closed .fs-p-closed > div > img{
	width:180px;
	}
	body.fs-body-closed .fs-p-closed > div > h2{
	font-size:1.6rem !important;
	}
	body.fs-body-closed .fs-p-closed > div > .fs-p-closed__message{
	font-size:1.3rem;
	line-height:1.5;
	}
}
/*-----------------------------------
　ページが見つかりません
------------------------------------*/
body.fs-body-notfound main.fs-l-main{
padding:0;
}
body.fs-body-notfound .fs-p-pageNotFound{
width:100%;
display:flex;
justify-content:center;
align-items:center;
}
body.fs-body-notfound .fs-p-pageNotFound > div{
width:100%;
height:max-content;
margin:auto;
text-align:center;
}
body.fs-body-notfound .fs-p-pageNotFound > div > h2{
margin:2rem 0;
font-weight:600;
}
@media screen and (min-width:769px){
	body.fs-body-notfound .fs-p-pageNotFound{
	height:calc(100vh - 280px);
	}
	.fs-p-pageNotFound > div > img{
	width:300px;
	}
	body.fs-body-notfound .fs-p-pageNotFound > div > h2{
	font-size:4rem;
	}
	body.fs-body-notfound .fs-p-pageNotFound > div > .fs-p-pageNotFound__body{
	line-height:1.6;
	font-size:1.6rem;
	}
}
@media screen and (max-width:768px){
	body.fs-body-notfound .fs-p-pageNotFound{
	height:max-content;
	}
	body.fs-body-notfound .fs-p-pageNotFound > div{
	padding:8rem 4rem;
	}
	body.fs-body-notfound .fs-p-pageNotFound > div > img{
	width:60vw;
	}
	body.fs-body-notfound .fs-p-pageNotFound > div > h2{
	font-size:3rem;
	}
	body.fs-body-notfound .fs-p-pageNotFound > div > .fs-p-pageNotFound__body{
	line-height:1.6;
	font-size:1.3rem;
	}
}


/*-----------------------------------
　会員特典：タイトル
------------------------------------*/
#members-rule-title > section > h1{
font-weight:600;
line-height:1.5;
text-align:center;
}
#members-rule-title > section > h1 > span{
font-weight:300;
display:block;
}
#members-rule-title > section > p{
line-height:1.5;
}
#myPageTopInfoBox #members-rule-title{
width:100%;
display:block;
margin:0 auto;
background:unset;
}
#myPageTopInfoBox #members-rule-title > section > p,
#myPageTopInfoBox #members-rule-title > section > #btn-members-register,
#myPageTopInfoBox #members-rule-title > figure{
display:none;
}
@media screen and (min-width:769px){
	#members-rule-title{
	width:100%;
	min-width:1200px;
	display:grid;
	grid-template-columns:570px 550px;
	gap:0 4rem;
	align-items:center;
	justify-content:center;
	margin:0 auto;
	padding:4rem 0;
	background:#c5af89;
	}
	#members-rule-title > figure{
	order:2;
	}
	#members-rule-title > section{
	order:1;
	display:flex;
	flex-wrap:wrap;
	align-items:center;
	gap:2rem 0;
	padding:0 4rem;
	}
	#members-rule-title > section > h1{
	font-size:3.5rem;
	width:100%;
	margin:auto auto 0 auto;
	}
	#members-rule-title > section > h1 > span{
	font-size:1.3rem;
	letter-spacing:.12em;
	}
	#members-rule-title > section > p{
	width:100%;
	font-size:1.4rem;
	}
	#members-rule-title > section > p > br{
	display:none;
	}
	#members-rule-title > section > #btn-members-register{
	order:4;
	margin:0 auto auto auto;
	}
}
@media screen and (max-width:768px){
	#members-rule-title > figure{
	background:#c5af89;
	aspect-ratio:1 / .49;
	overflow:hidden;
	padding:1.5rem 0 0 1.5rem;
	}
	#members-rule-title > section > h1{
	font-size:2.2rem;
	margin:2.5rem auto 2rem auto;
	}
	#members-rule-title > section > h1 > span{
	font-size:1.1rem;
	}
	#members-rule-title > section > p{
	font-size:1.2rem;
	padding:0 3rem;
	margin-bottom:4rem;
	}
	#members-rule-title > section > #btn-members-register{
	display:none;
	}
}

/*-----------------------------------
　会員特典：特典リスト
------------------------------------*/
#members-benefits-list > ul{
display:grid;
}
#members-benefits-list > ul > li{
background:#e9e9e8;
text-align:center;
}
#members-benefits-list > ul > li > p{
font-weight:600;
line-height:1.5;
}
#members-benefits-list > ul > li > span:not(.material-symbols-outlined){
display:block;
line-height:1.5;
text-align:left;
}
#members-benefits-list > a{
padding:1.2rem 0;
border:1px solid #212121;
font-weight:600;
text-align:center;
display:block;
width:100%;
letter-spacing:0;
}
@media screen and (min-width:769px){
	#members-benefits-list{
	border-bottom:1px solid #ddd;
	padding-top:6rem;
	padding-bottom:8rem;
	}
	#members-benefits-list > ul{
	width:1180px;
	margin:0 auto;
	padding:0 2rem;
	grid-template-columns:repeat(4,1fr);
	gap:0 2rem;
	}
	#members-benefits-list > ul > li{
	padding:3rem;
	}
	#members-benefits-list > ul > li > .material-symbols-outlined{
	font-size:8rem;
	line-height:1;
	margin-bottom:2rem;
	}
	#members-benefits-list > ul > li > p{
	font-size:1.6rem;
	margin-bottom:2rem;
	}
	#members-benefits-list > ul > li > span:not(.material-symbols-outlined){
	font-size:1.3rem;
	}
	#myPageTopInfoBox #members-benefits-list > ul{
	width:100%;
	grid-template-columns:repeat(2,1fr);
	gap:2rem;
	}
}
@media screen and (max-width:768px){
	#members-benefits-list > ul{
	grid-template-columns:repeat(2,1fr);
	gap:1rem;
	margin:0 auto 4rem auto;
	padding:0 2rem;
	}
	#members-benefits-list > ul > li{
	padding:1.5rem 1.5rem 3rem 1.5rem;
	}
	#members-benefits-list > ul > li > .material-symbols-outlined{
	font-size:5rem;
	line-height:1;
	margin-bottom:1rem;
	}
	#members-benefits-list > ul > li > p{
	font-size:1.2rem;
	margin-bottom:1rem;
	}
	#members-benefits-list > ul > li > span:not(.material-symbols-outlined){
	font-size:1.1rem;
	}
}

/*-----------------------------------
　会員特典：ランク別特典リスト詳細
------------------------------------*/
#members-rank-benefits > h2{
font-weight:600;
text-align:center;
}
#members-rank-benefits > p{
text-align:center;
line-height:1.5;
}
#members-rank-benefits > ul.rank-point-list > li{
color:#fff;
border-radius:1rem;
}
#members-rank-benefits > ul.rank-point-list > li.member{
background:#a5b6be;
}
#members-rank-benefits > ul.rank-point-list > li.bronze{
background:#906556;
}
#members-rank-benefits > ul.rank-point-list > li.silver{
background:#b8b8b8;
}
#members-rank-benefits > ul.rank-point-list > li.gold{
background:#b7923f;
}
#members-rank-benefits > ul.rank-point-list > li.platinum{
background:#df6e94;
}
#members-rank-benefits > ul.rank-point-list > li > .title{
font-weight:600;
line-height:1.5;
}
#members-rank-benefits > ul.rank-point-list > li > .title:before{
font-family:'Material Symbols Outlined';
content:"\ead5";
font-variation-settings:'FILL' 0,'wght' 100,'GRAD' 0,'opsz' 24;
display:block;
line-height:1;
}
#members-rank-benefits > ul.rank-point-list > li > .title > span{
font-weight:300;
display:block;
}
#members-rank-benefits > ul.rank-point-list > li > .contents > .point,
#members-rank-benefits > ul.rank-point-list > li > .contents > .birthday,
#members-rank-benefits > ul.rank-point-list > li > .contents > .total-purchase-val{
display:grid;
align-items:center;
line-height:1.5;
font-weight:600;
}
#members-rank-benefits > ul.rank-point-list > li > .contents > .point:before,
#members-rank-benefits > ul.rank-point-list > li > .contents > .birthday:before,
#members-rank-benefits > ul.rank-point-list > li > .contents > .total-purchase-val:before{
font-weight:300;
}
#members-rank-benefits > ul.rank-point-list > li > .contents > .point:before{
content:"ポイント還元率";
}
#members-rank-benefits > ul.rank-point-list > li > .contents > .birthday:before{
content:"誕生日クーポン";
}
#members-rank-benefits > ul.rank-point-list > li > .contents > .total-purchase-val:before{
content:"年間購入金額※1";
}
#members-rank-benefits > p.rank-point-rule{
line-height:1.5;
text-align:left;
}
@media screen and (min-width:769px){
	#members-rank-benefits{
	border-bottom:1px solid #ddd;
	padding-top:8rem;
	padding-bottom:8rem;
	}
	#members-rank-benefits > h2{
	font-size:2.2rem;
	}
	#members-rank-benefits > p{
	font-size:1.5rem;
	margin:2rem auto 0 auto;
	}
	#members-rank-benefits > ul.rank-point-list{
	display:grid;
	grid-template-columns:repeat(5,1fr);
	gap:0 2rem;
	width:1180px;
	margin:4rem auto 0 auto;
	padding:0 2rem;
	}
	#members-rank-benefits > ul.rank-point-list > li{
	padding:0 1.5rem 1rem 1.5rem;
	}
	#members-rank-benefits > ul.rank-point-list > li > .title{
	font-size:2rem;
	border-bottom:1px solid #fff;
	text-align:center;
	padding:2.5rem 0;
	}
	#members-rank-benefits > ul.rank-point-list > li > .title:before{
	font-size:3.5rem;
	margin-bottom:.5rem;
	}
	#members-rank-benefits > ul.rank-point-list > li > .title > span{
	margin-top:.1rem;
	font-size:1.2rem;
	}
	#members-rank-benefits > ul.rank-point-list > li > .contents > .point,
	#members-rank-benefits > ul.rank-point-list > li > .contents > .birthday,
	#members-rank-benefits > ul.rank-point-list > li > .contents > .total-purchase-val{
	grid-template-columns:50px 1fr;
	padding:1rem 0;
	gap:0 2rem;
	}
	#members-rank-benefits > ul.rank-point-list > li > .contents > .point,
	#members-rank-benefits > ul.rank-point-list > li > .contents > .birthday{
	border-bottom:1px dotted #fff;
	}
	#members-rank-benefits > ul.rank-point-list > li > .contents > .point{
	font-size:2rem;
	}
	#members-rank-benefits > ul.rank-point-list > li > .contents > .birthday{
	font-size:1.6rem;
	}
	#members-rank-benefits > ul.rank-point-list > li > .contents > .total-purchase-val{
	font-size:1.2rem;
	}
	#members-rank-benefits > ul.rank-point-list > li > .contents > .point:before,
	#members-rank-benefits > ul.rank-point-list > li > .contents > .birthday:before,
	#members-rank-benefits > ul.rank-point-list > li > .contents > .total-purchase-val:before{
	font-size:1.2rem;
	}
	#members-rank-benefits > p.rank-point-rule{
	width:1180px;
	margin:4rem auto 0 auto;
	padding:0 2rem;
	font-size:1.2rem;
	}
	#myPageTopInfoBox #members-rank-benefits > ul.rank-point-list{
	grid-template-columns:repeat(3,1fr);
	gap:2rem;
	}
	#myPageTopInfoBox #members-rank-benefits > ul.rank-point-list,
	#myPageTopInfoBox #members-rank-benefits > p.rank-point-rule{
	width:100%;
	}
}
@media screen and (max-width:768px){
	#members-rank-benefits{
	padding:4rem 2rem;
	border-top:1px solid #ddd;
	}
	#members-rank-benefits > h2{
	font-size:1.6rem;
	}
	#members-rank-benefits > p{
	font-size:1.2rem;
	margin:.5rem auto 0 auto;
	}
	#members-rank-benefits > ul.rank-point-list{
	margin:2rem auto 0 auto;
	}
	#members-rank-benefits > ul.rank-point-list > li{
	padding:0 1.5rem .5rem 1.5rem;
	margin-bottom:1rem;
	}
	#members-rank-benefits > ul.rank-point-list > li > .title{
	font-size:1.5rem;
	border-bottom:1px solid #fff;
	display:flex;
	align-items:center;
	width:100%;
	height:5.5rem;
	padding:0;
	gap:0 .5rem;
	}
	#members-rank-benefits > ul.rank-point-list > li > .title:before{
	font-size:2.6rem;
	}
	#members-rank-benefits > ul.rank-point-list > li > .title > span{
	font-size:1.1rem;
	}
	#members-rank-benefits > ul.rank-point-list > li > .contents{
	display:flex;
	align-items:center;
	flex-wrap:wrap;
	gap:0 2rem;
	}
	#members-rank-benefits > ul.rank-point-list > li > .contents > .point,
	#members-rank-benefits > ul.rank-point-list > li > .contents > .birthday,
	#members-rank-benefits > ul.rank-point-list > li > .contents > .total-purchase-val{
	grid-template-columns:auto 1fr;
	padding:.8rem 0;
	gap:0 1rem;
	}
	#members-rank-benefits > ul.rank-point-list > li > .contents > .point,
	#members-rank-benefits > ul.rank-point-list > li > .contents > .birthday{
	font-size:1.4rem;
	}
	#members-rank-benefits > ul.rank-point-list > li > .contents > .total-purchase-val{
	font-size:1.3rem;
	grid-column:span 2;
	border-top:1px dotted #fff;
	width:100%;
	}
	#members-rank-benefits > ul.rank-point-list > li > .contents > .point:before,
	#members-rank-benefits > ul.rank-point-list > li > .contents > .birthday:before,
	#members-rank-benefits > ul.rank-point-list > li > .contents > .total-purchase-val:before{
	font-size:1.0rem;
	}
	#members-rank-benefits > p.rank-point-rule{
	margin:3rem auto 0 auto;
	font-size:1.0rem;
	}
}


/*-----------------------------------
　会員特典：ランク判定期間
------------------------------------*/
#members-rank-confirmed-rule > h2{
font-weight:600;
text-align:center;
}
#members-rank-confirmed-rule > p{
text-align:center;
line-height:1.5;
}
#members-rank-confirmed-rule > p.rank-confirmed-rule{
line-height:1.5;
text-align:left;
}
@media screen and (min-width:769px){
	#members-rank-confirmed-rule{
	padding:8rem 2rem;
	}
	#members-rank-confirmed-rule > h2{
	font-size:2.2rem;
	}
	#members-rank-confirmed-rule > p{
	font-size:1.5rem;
	margin:2rem auto 0 auto;
	}
	#members-rank-confirmed-rule > figure{
	width:1180px;
	margin:4rem auto 0 auto;
	padding:0 2rem;
	}
	#members-rank-confirmed-rule > p.rank-confirmed-rule{
	width:1180px;
	margin:4rem auto 0 auto;
	padding:0 2rem;
	font-size:1.2rem;
	}
	#myPageTopInfoBox #members-rank-confirmed-rule > figure{
	overflow-x:auto;
	width:100%;
	}
	#myPageTopInfoBox #members-rank-confirmed-rule > figure > img{
	width:auto;
	height:250px;
	}
	#myPageTopInfoBox #members-rank-confirmed-rule > p.rank-confirmed-rule{
	width:100%;
	}
}
@media screen and (max-width:768px){
	main#members-agreement-wrapper{
	padding-bottom:8rem;
	}
	#members-rank-confirmed-rule{
	padding:4rem 2rem;
	border-top:1px solid #ddd;
	}
	#members-rank-confirmed-rule > h2{
	font-size:1.6rem;
	}
	#members-rank-confirmed-rule > p{
	font-size:1.2rem;
	margin:.5rem auto 0 auto;
	}
	#members-rank-confirmed-rule > figure{
	overflow-x:auto;
	margin:2rem auto 0 auto;
	}
	#members-rank-confirmed-rule > figure > img{
	width:auto;
	height:250px;
	}
	#members-rank-confirmed-rule > p.rank-confirmed-rule{
	margin:2rem auto 0 auto;
	font-size:1.0rem;
	}
}


/*-----------------------------------
　会員特典：ボタン
------------------------------------*/
#btn-members-register{
width:100%;
display:flex;
flex-wrap:wrap;
justify-content:space-between;
}
#btn-members-register > p > a{
width:100%;
height:5rem;
display:flex !important;
justify-content:center;
align-items:center;
padding:0 !important;
}
#btn-members-register > p.btn-type-01 > a{
background:#212121;
border:1px solid #212121;
color:#fff;
}
#btn-members-register > p.btn-type-02 > a{
background:#fff;
border:1px solid #212121;
color:#000;
}
@media screen and (min-width:769px){
	#btn-members-register{
	max-width:600px;
	margin:0 auto;
	}
	#btn-members-register > p{
	width:calc((100% / 2) - .5rem);
	}
	#btn-members-register > p > a{
	font-size:1.4rem;
	}
}
@media screen and (max-width:768px){
	#btn-members-register{
	padding:0 2rem;
	}
	#btn-members-register > p{
	width:100% !important;
	}
	#btn-members-register > p.btn-type-01{
	margin-bottom:.5rem;
	}
	#btn-members-register > p > a{
	font-size:1.2rem;
	}
}


/* --------------------------------------------------------------------
　【04】メールマガジン設定
-------------------------------------------------------------------- */
main#mailMagazineWrap{
margin:4rem auto 80px;
padding:0 2rem;
}
main#mailMagazineWrap > .fs-c-heading.fs-c-heading--page{
font-size:30px;
text-align:center;
margin-bottom:4rem;
line-height:1.4;
}
main#mailMagazineWrap > .fs-c-heading.fs-c-heading--page:after{
content:"MAIL MAGAZINE";
font-size:10px;
text-align:center;
margin-top:10px;
display:block;
}
main#mailMagazineWrap > .fs-c-inputInformation__message{
font-size:11px;
text-align:center;
margin-bottom:4rem;
}
main#mailMagazineWrap > form{
max-width:460px;
width:100%;
padding:4rem;
margin:auto;
background:#fff;
filter:drop-shadow(0 0 10px rgba(0,0,0,.1));
text-align:center;
font-size:14px;
}
main#mailMagazineWrap > form > div > fieldset > table > tbody > tr > th,
main#mailMagazineWrap > form > div > fieldset > table > tbody > tr > td{
display:block;
text-align:center;
width:100%;
position:unset;
margin:0 auto;
font-weight:300;
}
main#mailMagazineWrap > form > div > fieldset > table > tbody > tr > th{
padding:0 0 5px 0;
}
main#mailMagazineWrap > form > div > fieldset > table > tbody > tr > td{
padding:0 0 2rem 0;
}
main#mailMagazineWrap > form > .fs-c-inputInformation__button.fs-c-buttonContainer.fs-c-buttonContainer--confirmRegister{
margin-top:2rem;
}
main#mailMagazineWrap > .fs-c-documentContent{
max-width:max-content;
margin:auto auto 50px auto;
font-size:12px;
}
body.fs-body-newsletter-unsubscribe > .fs-l-page > main#mailMagazineWrap > form > div > fieldset > table{
width:100%;
}
@media screen and (max-width:768px){
	main#mailMagazineWrap{
	margin:4rem auto;
	}
	main#mailMagazineWrap > .fs-c-heading.fs-c-heading--page{
	font-size:25px;
	margin:4rem auto;
	text-align:center;
	}
}

/* --------------------------------------------------------------------
　【99】特定商取引法に基づく表記・プライバシーポリシー設定
-------------------------------------------------------------------- */
.fs-body-about-terms > .fs-l-page > main > h1,
.fs-body-about-privacyPolicy > .fs-l-page > main > h1{
font-weight:600;
line-height:1;
text-align:center;
}
.fs-body-about-terms > .fs-l-page > main,
.fs-body-about-privacyPolicy > .fs-l-page > main{
margin-bottom:4rem;
}
#asctnotice-wrap > section{
display:flex;
flex-wrap:wrap;
line-height:1.8;
}
#asctnotice-wrap > section > h3{
width:29%;
font-weight:600;
}
#asctnotice-wrap > section > div{
width:71%;
}
#asctnotice-wrap > section > div > ul,
#privacypolicy-wrap > section > div > ul{
margin:10px 0;
}
#asctnotice-wrap > section > div > ul > li,
#privacypolicy-wrap > section > div > ul > li{
list-style-type:disc;
margin:0 0 0 15px;
}
#asctnotice-wrap section a,
#privacypolicy-wrap section a{
color:#23abdd;
text-decoration:underline;
}
#privacypolicy-wrap > section{
line-height:1.8;
}
#privacypolicy-wrap > section > h3{
padding:4rem 0 2rem 0;
font-weight:600;
}
#privacypolicy-wrap > section > div{
padding:0 0 4rem 0;
}
#privacypolicy-wrap > section > p{
padding:0 0 2rem 0;
}
@media screen and (min-width:769px){
	.fs-body-about-terms > .fs-l-page > main > h1,
	.fs-body-about-privacyPolicy > .fs-l-page > main > h1{
	font-size:2.4rem;
	padding:2rem 0 8rem 0;
	}
	#asctnotice-wrap > section{
	font-size:1.4rem;
	margin-bottom:4rem;
	}
	#asctnotice-wrap > section > h3{
	font-size:1.6rem;
	}
	#asctnotice-wrap > section{
	font-size:1.4rem;
	margin-bottom:4rem;
	}
	#asctnotice-wrap > section > h3{
	font-size:1.6rem;
	}
	#privacypolicy-wrap > section{
	font-size:1.4rem;
	}
	#privacypolicy-wrap > section > h3{
	font-size:1.6rem;
	padding:0 0 1rem 0;
	}
}
@media screen and (max-width:768px){
	.fs-body-about-terms > .fs-l-page > main > h1,
	.fs-body-about-privacyPolicy > .fs-l-page > main > h1{
	font-size:1.8rem;
	padding:4rem 0;
	}
	.fs-body-about-terms > .fs-l-page > main > article,
	.fs-body-about-privacyPolicy > .fs-l-page > main > article{
	margin-bottom:4rem;
	}
	#asctnotice-wrap > section{
	font-size:1.2rem;
	margin-bottom:3rem;
	}
	#asctnotice-wrap > section > h3{
	font-size:1.4rem;
	}
	#asctnotice-wrap > section > h3,
	#asctnotice-wrap > section > div{
	width:100%;
	}
	#privacypolicy-wrap > section{
	font-size:1.2rem;
	}
	#privacypolicy-wrap > section > h3{
	font-size:1.4rem;
	padding:0 0 1rem 0;
	}
	#privacypolicy-wrap > section > p{
	padding:0 0 1.3rem 0;
	}
}