﻿html { font-size: 62.5%;}

@font-face {
  font-family: NotoSerifJP-Regular;
  src: url('/font/NotoSerifJP-Regular.otf');
}

body {
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", "sans-serif";
	font-size: 1.0rem;
	color: #000000;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
}

#mobile-indicator {
    display: block;
}

/**************************************
input
**************************************/
select{
	width: 100%;
	height: calc(40 * (100vw / 320));
	box-sizing: border-box;
	font-size: calc(14 * (100vw / 320));
	padding: calc(4 * (100vw / 320)) calc(10 * (100vw / 320)) calc(4 * (100vw / 320)) calc(5 * (100vw / 320));
	background: #FFFFFF;
	border: 1px solid #d2d2d2;
	font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", "sans-serif";
	vertical-align: middle;
	cursor: pointer;
	box-shadow: 0 1px 2px 0 rgba(0,0,0,0.2) inset;
	-webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
	border-radius: 0;
	background-image: url(/img/icon_select_arrow.svg);
	background-repeat: no-repeat;
	background-position: calc(100% - 4px) center;
	background-size: calc(6 * (100vw / 320)) auto;
}

input[type="text"],
input[type="tel"],
input[type="number"],
input[type="password"],
input[type="email"]{
	width: 100%;
	height: calc(40 * (100vw / 320));
	box-sizing: border-box;
	font-size: calc(14 * (100vw / 320));
	padding: calc(4 * (100vw / 320)) calc(5 * (100vw / 320));
	background: #FFFFFF;
	border: 1px solid #d2d2d2;
	font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", "sans-serif";
	vertical-align: middle;
	cursor: pointer;
	box-shadow: 0 1px 2px 0 rgba(0,0,0,0.2) inset;
	-webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
}
textarea{
	width: 100%;
	height: calc(80 * (100vw / 320));
	box-sizing: border-box;
	font-size: calc(14 * (100vw / 320));
	padding: calc(4 * (100vw / 320)) calc(5 * (100vw / 320));
	background: #FFFFFF;
	border: 1px solid #d2d2d2;
	font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", "sans-serif";
	vertical-align: middle;
	cursor: pointer;
	box-shadow: 0 1px 2px 0 rgba(0,0,0,0.2) inset;
	-webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
}


:placeholder-shown { color: #b7b7b7; font-size: calc(14 * (100vw / 320)); padding: calc(4 * (100vw / 320)) calc(5 * (100vw / 320));}
::-webkit-input-placeholder { color: #b7b7b7; font-size: calc(14 * (100vw / 320)); padding: calc(4 * (100vw / 320)) calc(5 * (100vw / 320));}
:-moz-placeholder { color: #b7b7b7; opacity: 1; font-size: calc(14 * (100vw / 320)); padding: calc(4 * (100vw / 320)) calc(5 * (100vw / 320));}
::-moz-placeholder { color: #b7b7b7; opacity: 1; font-size: calc(14 * (100vw / 320)); padding: calc(4 * (100vw / 320)) calc(5 * (100vw / 320));}
:-ms-input-placeholder { color: #b7b7b7; font-size: calc(14 * (100vw / 320)); padding: calc(4 * (100vw / 320)) calc(5 * (100vw / 320));}

input[type="radio"],
input[type="checkbox"]{vertical-align: middle;}

input[type="text"].zipCode,
input[type="tel"].zipCode,
input[type="number"].zipCode{
	width: calc(160 * (100vw / 320));
}

input[type="text"].err,
input[type="tel"].err,
input[type="number"].err,
input[type="password"].err,
input[type="email"].err,
select.err,
textarea.err{
	background-color:#ffe7e7;
}

select.err > option{background: #FFFFFF;}

input[type="text"]:disabled,
input[type="tel"]:disabled,
input[type="number"]:disabled,
input[type="password"]:disabled,
input[type="email"]:disabled,
select:disabled,
option:disabled,
textarea:disabled{
	background: #efefef;
	color: #999999;
}


/**************************************
btn
**************************************/

/*** arrowLink ***********/
 a.arrowLink{
	font-size: calc(16 * (100vw / 320));
    color: #000000;
    text-decoration: underline;
    padding-left: calc(16 * (100vw / 320));
    background: url(/img/icon_arrow_brown_right.svg) 0 center no-repeat;
    background-size: calc(9 * (100vw / 320)) auto;
}


/**************************************
wrap
**************************************/
#wrap{
	width: 100%;
	margin: 0 auto;
	padding: 0;
	overflow: hidden;
}
#wrap.lock{
	position: fixed;
	overflow: hidden;
	top: 0;
}



/**************************************
#header
**************************************/
#header{
	width: 100%;
	margin: 0 auto 0;
	background: #FFFFFF;
	position: relative;
}

#headTop{ display: none;}

#header .headMiddle{
	width: 100%;
	height:  calc(61 * (100vw / 320));
	padding: calc(8 * (100vw / 320)) 3%;
	border-bottom: 1px solid #cdc6bf;
	margin-bottom: 1px;
}

#header .headMiddle > .inner{
	display: table;
	width: calc(100% - (50 * (100vw / 320)));
}

#header .headMiddle > .inner > .headLogo{
	display: table-cell;
	width: calc(120 * (100vw / 320));
	vertical-align: middle;
}
#header .headMiddle > .inner > .headLogo > a{display: block; width: 90%;text-decoration: none; text-align: center; color: #594e44;}
#header .headMiddle > .inner > .headLogo > a > img{display: block; width: 100%; height: auto;}
#header .headMiddle > .inner > .headLogo > a > span{display: block; margin-top: 2%}

/** #headUtility **************/
#headUtility{
	display: table-cell;
	vertical-align: middle;
}

/** change180907  *****************************/
#headUtility > ul{
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
    display: flex;
	-webkit-flex-wrap: wrap;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
    -webkit-box-align:stretch;
    -ms-flex-align:stretch;
    -webkit-align-items:stretch;
	align-items: stretch;
	-webkit-justify-content: flex-start;
	justify-content: flex-start;
	width: calc(95 * (100vw / 320));
	margin: 0 0 0 auto;
}

#headUtility > ul > li{
	box-sizing: border-box;
	width: calc(45 * (100vw / 320));
}
#headUtility > ul > li.tel{
	width: calc(45 * (100vw / 320));
	margin-right: calc(5 * (100vw / 320));
	letter-spacing: -0.05em;
}
#headUtility > ul > li.tel > a{
	display: block;
	width: 100%;
	height: calc(45 * (100vw / 320));
	padding-top: calc(30 * (100vw / 320));
	background: url(/img/icon_tel.svg) center calc(2 * (100vw / 320)) no-repeat;
	background-size: calc(15 * (100vw / 320)) auto;
	text-align: center;
	font-size: calc(10 * (100vw / 320));
	color: #333333;
	text-decoration: none;
	border: 2px solid #cccccc;
	border-radius: 4px;
	box-shadow: 2px 2px 2px rgba(0,0,0,.1);
}
/** change180907  END*****************************/

#headUtility > ul > li#btnHeadCart{
	width: calc(45 * (100vw / 320));
}
#headUtility > ul > li#btnHeadCart > a{
	display: block;
	width: 100%;
	height: calc(45 * (100vw / 320));
	padding-top: calc(31 * (100vw / 320));
	background: url(/img/icon_cart.svg) calc(9 * (100vw / 320)) calc(6 * (100vw / 320)) no-repeat #d80051;
	background-size: calc(24 * (100vw / 320)) auto;
	text-align: center;
	font-size: calc(10 * (100vw / 320));
	color: #FFFFFF;
	text-decoration: none;
	border: 1px solid #d80051;
	border-radius: 4px;
	box-shadow: 2px 2px 2px rgba(0,0,0,.2);
	position: relative;
}
#headUtility > ul > li#btnHeadCart > a > span{display: none;}

/**************************************
.cartCnt 180922 add
**************************************/
#headUtility > ul > li#btnHeadCart > a > span.cartCnt{
	display: block;
	width: 2.4rem; height: 2.4rem;
	border-radius: 100%;
	font-size: 1.2rem;
	text-align: center;
	color: #FFFFFF;
	line-height: 2.4rem;
	background: rgba(0,0,0,.6);
	position: absolute;
	right: calc(-4 * (100vw / 320));
	top:  calc(-6 * (100vw / 320));
}


/** #glnav ************************************/
#header #glnav{
	display: block;
	z-index: 1000;
	position: relative;
}
#header #glnav .openBtn{
    display: block;
    width: calc(45 * (100vw / 320));
    height: calc(45 * (100vw / 320));
	padding-top: calc(30 * (100vw / 320));
	box-shadow: 2px 2px 2px rgba(0,0,0,.2);
    box-sizing: border-box;
	text-align: center;
	font-size: calc(10 * (100vw / 320));
	letter-spacing: -0.05em;
	position:fixed;
	z-index: 100;
	background: #ffffff;
	border-radius: 4px;
	border: 1px solid #CCCCCC;
	right: calc(10 * (100vw / 320));
	top: calc(8 * (100vw / 320));
	webkit-transition: transform 0.2s ease 0.2s,box-shadow 0.5s ease 0.5s;
    -moz-transition: transform 0.2s ease 0.2s,box-shadow 0.5s ease 0.5s;
    -o-transition: transform 0.2s ease 0.2s,box-shadow 0.5s ease 0.5s;
    transition: transform 0.2s ease 0.2s,box-shadow 0.5s ease 0.5s;
}
#header #glnav .openBtn > .opentext{display: block;}
#header #glnav .openBtn > .closetext{display: none;}

#header #glnav .openBtn .icon-bar {
    display: block;
    height: calc(4 * (100vw / 320));
    width: calc(25 * (100vw / 320));
	left:calc(10 * (100vw / 320));
	border-radius: 4px;
    background-color: #7c7c7c;
	position:absolute;
	webkit-transition: transform 0.5s ease 0.2s,opacity 0.5s ease 0.2s;
    -moz-transition: transform 0.5s ease 0.2s,opacity 0.5s ease 0.2s;
    -o-transition: transform 0.5s ease 0.2s,opacity 0.5s ease 0.2s;
    transition: transform 0.5s ease 0.2s,opacity 0.5s ease 0.2s;
}

#header #glnav .openBtn .icon-bar:nth-child(1){top:calc(6 * (100vw / 320));}
#header #glnav .openBtn .icon-bar:nth-child(2){top:calc(14 * (100vw / 320));}
#header #glnav .openBtn .icon-bar:nth-child(3){top:calc(22 * (100vw / 320));}


#header #glnav.open .openBtn{
	-webkit-transform: translate(calc( -100vw + (56 * (100vw / 320))),0);
    -moz-transform: translate(calc( -100vw + (56 * (100vw / 320))),0);
    -o-transform: translate(calc( -100vw + (56 * (100vw / 320))),0);
    transform: translate(calc( -100vw + (56 * (100vw / 320))),0);
	border-right: none;
	border-radius: 4px 0 0 4px;
	box-shadow: -2px 2px 2px rgba(0,0,0,.2);
}

#header #glnav.open .openBtn .icon-bar:nth-child(1) {
    width: calc(23 * (100vw / 320));
	left:calc(11 * (100vw / 320));
	-webkit-transform: translateY(calc(8 * (100vw / 320))) rotate(-45deg);
	-moz-transform: translateY(calc(8 * (100vw / 320))) rotate(-45deg);
	-o-transform: translateY(calc(8 * (100vw / 320))) rotate(-45deg);
	transform: translateY(calc(8 * (100vw / 320))) rotate(-45deg);
}
#header #glnav.open .openBtn .icon-bar:nth-child(2)  {opacity: 0;}
#header #glnav.open .openBtn .icon-bar:nth-child(3) {
    width: calc(23 * (100vw / 320));
	left:calc(11 * (100vw / 320));
	-webkit-transform: translateY(calc(-8 * (100vw / 320))) rotate(45deg);
	-moz-transform: translateY(calc(-8 * (100vw / 320))) rotate(45deg);
	-o-transform: translateY(calc(-8 * (100vw / 320))) rotate(45deg);
 	transform: translateY(calc(-8 * (100vw / 320))) rotate(45deg);
}
#header #glnav.open .openBtn > .opentext{display: none;}
#header #glnav.open .openBtn > .closetext{display: block;}

#header #glnav > .glnavBg{
	width: 100vw;
	height: 100vh;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	position: fixed;
	-webkit-transform: translateY(200%);
	  -ms-transform: translateY(200%);
		  transform: translateY(200%);
	transition: background 0.15s ease-out, -webkit-transform 0s 0.15s;
	transition: background 0.15s ease-out, transform 0s 0.15s;
	-webkit-backface-visibility: hidden;
	z-index: 1;
}
#header #glnav.open > .glnavBg{
	-webkit-transform: translateY(0);
	  -ms-transform: translateY(0);
		  transform: translateY(0);
	background: rgba(0, 0, 0, 0.6);
}


#header #glnav > .glnavInner{
	display: block;
	width: calc(100vw - (45 * (100vw / 320)));
	height: 100vh;
	padding: calc(14 * (100vw / 320)) 3% 6%;
	background: #FFFFFF;
	border-left: 1px solid #CCCCCC;
	box-shadow: -2px 2px 2px rgba(0,0,0,.2);
	position: fixed;
	top: 0;
	left: calc(45 * (100vw / 320));
	z-index: 90;
	overflow-y: auto;
	-webkit-overflow-scrolling: touch;
	overflow-scrolling: touch;
	webkit-transition: transform 0.5s ease 0.2s;
    -moz-transition: transform 0.5s ease 0.2s;
    -o-transition: transform 0.5s ease 0.2s;
    transition: transform 0.5s ease 0.2s;
    -webkit-transform: translate(200vw,0);
    -moz-transform: translate(200vw,0);
    -o-transform: translate(200vw,0);
    transform: translate(200vw,0);
}
#header #glnav > .glnavInner::after{
	content: '';
	display: block;
	width: 100%;
	height: calc(100 * (100vw / 320));
}

#header #glnav.open > .glnavInner{
	-webkit-transform: translate(0,0);
    -moz-transform: translate(0,0);
    -o-transform: translate(0,0);
    transform: translate(0,0);
}
#header #glnav .glnavInner > .searchBox{
	display: block;
	width: 100%;
	margin: 0 auto 3%;
}

#header #glnav .glnavInner > .searchBox label{
	display:block;
	width: 100%;
	height:  calc(40 * (100vw / 320));
}

#header #glnav .glnavInner > .searchBox label > input[type=text]{
	display: block;
	width: calc(100% - (40 * (100vw / 320)));
	height:  calc(40 * (100vw / 320));
	padding:  calc(4 * (100vw / 320)) calc(5 * (100vw / 320));
	font-size: calc(14 * (100vw / 320));
	border-radius: 8px 0 0 8px;
	border-right: none;
	float: left;
}
#header #glnav .glnavInner > .searchBox label > .searchSubmit{
	display:block;
	width: calc(40 * (100vw / 320));
	height:  calc(40 * (100vw / 320));
	background: #c07878;
	border-radius: 0 8px 8px 0;
	vertical-align: middle;
	text-align: center;
	float: left;
}
#header #glnav .glnavInner > .searchBox label > .searchSubmit > img{
	display: block;
	width:  calc(20 * (100vw / 320));
	height: auto;
	margin: 0 auto;
}

#header #glnav .glnavInner > ul{
	display: block;
	width: 100%;
	border: 1px solid #cc7575;
	border-radius: 4px;
}

#header #glnav .glnavInner > ul > li{
	display: block;
	width: 100%;
	border-bottom: 1px solid #cc7575;
	overflow: hidden;
}
#header #glnav .glnavInner > ul > li:nth-last-of-type(1){border-bottom: none;}

#header #glnav .glnavInner > ul > li > a{
	display: block;
	padding: 0 calc(20 * (100vw / 320)) 0 calc(10 * (100vw / 320));
	line-height: calc(40 * (100vw / 320));
	font-size: calc(16 * (100vw / 320));
	font-family: 'NotoSerifJP-Regular';
	color: #FFFFFF;
	background: url(/img/icon_arrow_white_right.svg) calc(100% - (10 * (100vw / 320))) center no-repeat #a10035;
	background-size: calc(8 * (100vw / 320)) auto;
	text-decoration: none;
}

#header #glnav .glnavInner > ul > li.current > a{
	background: #cc7575;
}


#header #glnav .glnavInner > ul > li > ul{
	display: block;
	width: 100%;	
	padding: 0;
	background: #FFFFFF;
}

#header #glnav .glnavInner > ul > li > ul > li{
	display: block;
	text-align: left;
	border-bottom: 1px solid #CCCCCC;
}

#header #glnav .glnavInner > ul > li > ul > li > a{
	display: block;
	padding: 0 calc(20 * (100vw / 320)) 0 calc(10 * (100vw / 320));
	line-height: calc(40 * (100vw / 320));
	font-size: calc(14 * (100vw / 320));
	text-decoration: none;
	color: #000000;
	background: url(/img/icon_arrow_brown_right.svg) calc(100% - (10 * (100vw / 320))) center no-repeat;
	background-size:  calc(6 * (100vw / 320)) auto;
	white-space: nowrap;
}

/** #headSPnav ************************************/
#header #glnav .glnavInner > #headSPnav{
	padding-top: 6%;
}

#header #glnav .glnavInner > #headSPnav .tel{
	padding: 0 0 calc(4 * (100vw / 320)) calc(58 * (100vw / 320));
	position: relative;
}
#header #glnav .glnavInner > #headSPnav .tel::before{
	content: '';
	display: block;
	width: calc(52 * (100vw / 320)); height: calc(52 * (100vw / 320));
	border: 2px solid #cccccc;
	border-radius: 8px;
	background: url(/img/icon_tel.svg) center center no-repeat;
	background-size: auto calc(36 * (100vw / 320));
	position: absolute;
	left: 0;
	top: 0;
}

#header #glnav .glnavInner > #headSPnav .tel > a{
	display: block;
	font-family: 'NotoSerifJP-Regular';
	color: #000000;
	text-decoration: none;
	cursor: default;
	font-size: calc(28 * (100vw / 320));
}
#header #glnav .glnavInner > #headSPnav .tel > span{
	display: block;
	font-size: calc(12 * (100vw / 320));
	padding-top: calc(6 * (100vw / 320));
	letter-spacing: -0.05em;
}



/** #headUnder ************************************/
#headUnder{
	width: 100%;
	height: calc(35 * (100vw / 320));
	background: #a10035;
	text-align: center;
}

#headUnder > p{
	line-height: calc(35 * (100vw / 320));
	text-align: center;
	font-size: calc(16 * (100vw / 320));
	font-family: 'NotoSerifJP-Regular';
	color: #FFFFFF;
	letter-spacing: 0.05em;
}



/**************************************
#bottomGuide
**************************************/
#bottomGuide{
	width: 100%;
	padding: calc(10 * (100vw / 320)) 3%;
	background: #efefef;
}

#bottomGuide > .inner{
	display: block;
	width: 100%;
	margin: 0 auto;
}

#bottomGuide > .inner h3{
	padding-top: calc(10 * (100vw / 320));
	padding-bottom: calc(10 * (100vw / 320));
	margin-bottom: calc(15 * (100vw / 320));
	border-bottom: 1px solid #d48fa2;
	font-family: 'NotoSerifJP-Regular';
	font-size: calc(16 * (100vw / 320));
	position: relative;
}
#bottomGuide > .inner h3::after{
	content: '';
	display: block;
	width: 100%;
	height: 1px;
	background: #a10035;
	position: absolute;
	left: 0;
	bottom: calc(-3 * (100vw / 320));
}


#bottomGuide > .inner > .bottomGuideList{
	display: block;
	margin-bottom: calc(10 * (100vw / 320));
}

#bottomGuide > .inner > .bottomGuideList > li{
	display: block;
	padding: calc(10 * (100vw / 320));
	margin-bottom: calc(10 * (100vw / 320));
	background: #FFFFFF;
	position: relative;
}
#bottomGuide > .inner > .bottomGuideList > li:nth-last-of-type(1){margin-bottom: 0;}

#bottomGuide > .inner > .bottomGuideList > li > dl{}
#bottomGuide > .inner > .bottomGuideList > li > dl > dt{
	font-size: calc(14 * (100vw / 320));
	margin-bottom: calc(5 * (100vw / 320));
}
#bottomGuide > .inner > .bottomGuideList > li > dl > dd{
	font-size: calc(14 * (100vw / 320));
	margin-bottom: calc(8 * (100vw / 320));
	line-height: 1.6;
}
#bottomGuide > .inner > .bottomGuideList > li > dl + dl{
	padding-top: calc(12 * (100vw / 320));
	margin-top: calc(10 * (100vw / 320));
	border-top: 1px dotted #CCCCCC;
}

#bottomGuide > .inner > .bottomGuideList > li p{
	font-size: calc(14 * (100vw / 320));
	line-height: 1.6;
}

#bottomGuide > .inner > .bottomGuideList > li .btnMore{}
#bottomGuide > .inner > .bottomGuideList > li .btnMore > a{
	display: block;
	width: calc(70 * (100vw / 320));
	padding:calc(7 * (100vw / 320)) calc(5 * (100vw / 320)) calc(9 * (100vw / 320)) 0;
	font-family: 'NotoSerifJP-Regular';
	font-size: calc(14 * (100vw / 320));
	text-align: center;
	color: #FFFFFF;
	text-decoration: none;
	background: url(/img/icon_arrow_white_right.svg) calc(100% - (5 * (100vw / 320))) center no-repeat #a10035;
	background-size: calc(8 * (100vw / 320)) auto;
	border-radius: 8px;
	position: absolute;
	right: 3%;
	top: calc(10 * (100vw / 320));
	box-shadow: 2px 2px 2px rgba(0,0,0,.2);
}

#bottomGuide > .inner > .bottomGuideList > li .banYamato{padding-top: calc(10 * (100vw / 320));}


#bottomGuide > .inner > .bottomShopInfo{
	display: block;
	background: #FFFFFF;
	padding: calc(10 * (100vw / 320));
}

#bottomGuide > .inner > .bottomShopInfo > dl{
	display: block;
	margin-bottom: calc(10 * (100vw / 320));
}
#bottomGuide > .inner > .bottomShopInfo > dl > dt{
	font-family: 'NotoSerifJP-Regular';
	font-size: calc(16 * (100vw / 320));
	margin-bottom: calc(10 * (100vw / 320));
}
#bottomGuide > .inner > .bottomShopInfo > dl > dd{
	font-size:  calc(14 * (100vw / 320));
	line-height: 1.6;
}

#bottomGuide > .inner > .bottomShopInfo > .detail{
	padding: calc(10 * (100vw / 320));
	background: #f7f7f7;
	margin-bottom: calc(15 * (100vw / 320));
}

#bottomGuide > .inner > .bottomShopInfo > .detail h4{
	font-size: calc(14 * (100vw / 320));
	font-weight: 700;
	margin-bottom: calc(10 * (100vw / 320));
}
#bottomGuide > .inner > .bottomShopInfo > .detail p{
	font-size: calc(14 * (100vw / 320));
}

#bottomGuide > .inner > .bottomShopInfo > .detail .adder{
	margin-top: calc(10 * (100vw / 320));
	padding-top: calc(10 * (100vw / 320));
	border-top: 1px dotted #CCCCCC;
	font-size: calc(14 * (100vw / 320));
	line-height: 1.6;
}
#bottomGuide > .inner > .bottomShopInfo > .detail .adder address{
	margin-bottom: calc(5 * (100vw / 320));
}


#bottomGuide > .inner > .bottomShopInfo > .contactList{
	display: block;
}

#bottomGuide > .inner > .bottomShopInfo > .contactList > .tel{
	display: table;
	margin-bottom: calc(10 * (100vw / 320));
}

#bottomGuide > .inner > .bottomShopInfo > .contactList > .tel > .icon{
	display: block;
	width: calc(45 * (100vw / 320));
	border: 2px solid #cccccc;
	border-radius: 8px;
	background: url(/img/icon_tel.svg) center calc(2 * (100vw / 320)) no-repeat;
	background-size: auto calc(24 * (100vw / 320));
	padding: calc(28 * (100vw / 320)) 0 calc(4 * (100vw / 320)) 0;
	font-family: 'NotoSerifJP-Regular';
	text-align: center;
	font-size: calc(14 * (100vw / 320));
}
#bottomGuide > .inner > .bottomShopInfo > .contactList > .tel > .num{
	display: table-cell;
	text-align: left;
	vertical-align: middle;
	padding-left: calc(10 * (100vw / 320));
}
#bottomGuide > .inner > .bottomShopInfo > .contactList > .tel > .num > a{
	display: block;
	font-family: 'NotoSerifJP-Regular';
	color: #000000;
	text-decoration: none;
	cursor: default;
	font-size: calc(24 * (100vw / 320));
	letter-spacing: 0.08em;
	margin-bottom: calc(4 * (100vw / 320));
}
#bottomGuide > .inner > .bottomShopInfo > .contactList > .tel > .num > span{
	display: block;
	font-size: calc(12 * (100vw / 320));
	letter-spacing: 0.02em;
}

#bottomGuide > .inner > .bottomShopInfo > .contactList > .fax{
	display: table;
	margin-bottom: calc(20 * (100vw / 320));
}

#bottomGuide > .inner > .bottomShopInfo > .contactList > .fax > .icon{
	display: block;
	width: calc(45 * (100vw / 320));
	border: 2px solid #cccccc;
	border-radius: 8px;
	background: url(/img/icon_fax.svg) center calc(4 * (100vw / 320)) no-repeat;
	background-size: auto calc(20 * (100vw / 320));
	padding: calc(28 * (100vw / 320)) 0 calc(4 * (100vw / 320)) 0;
	font-family: 'NotoSerifJP-Regular';
	text-align: center;
	font-size: calc(14 * (100vw / 320));
}
#bottomGuide > .inner > .bottomShopInfo > .contactList > .fax > .num{
	display: table-cell;
	text-align: left;
	vertical-align: middle;
	padding-left: calc(10 * (100vw / 320));
}
#bottomGuide > .inner > .bottomShopInfo > .contactList > .fax > .num > p{
	display: block;
	font-family: 'NotoSerifJP-Regular';
	color: #000000;
	font-size: calc(24 * (100vw / 320));
	letter-spacing: 0.08em;
	margin-bottom: calc(4 * (100vw / 320));
}
#bottomGuide > .inner > .bottomShopInfo > .contactList > .fax > .num > a.pdfLink{
	display: inline-block;
	font-size: calc(10 * (100vw / 320));
	color: #000000;
	padding-left: calc(20 * (100vw / 320));
	position: relative;
	line-height: 1.2;
}
#bottomGuide > .inner > .bottomShopInfo > .contactList > .fax > .num > a.pdfLink::before{
	content: '';
	display:block;
	width: calc(16 * (100vw / 320)); height: calc(16 * (100vw / 320));
	background: url(/img/icon_pdf.png) 0 0 no-repeat;
	background-size:  calc(16 * (100vw / 320)) auto;
	position: absolute;
	left: 0;
	top: 0;
}


/*** btnContact ***********/
#bottomGuide > .inner > .bottomShopInfo > .contactList > .btnContact{
	display: block;
	margin-bottom: calc(10 * (100vw / 320));
}

#bottomGuide > .inner > .bottomShopInfo > .contactList > .btnContact > a{
	display: block;
	height: calc(45 * (100vw / 320));
	padding: calc(14 * (100vw / 320)) 0 calc(15 * (100vw / 320)) calc(40 * (100vw / 320));
	font-family: 'NotoSerifJP-Regular';
	font-size: calc(16 * (100vw / 320));
	color: #FFFFFF;
	text-decoration: none;
	text-align: center;
	background: url(/img/icon_mail.svg) calc(20 * (100vw / 320)) center no-repeat #a10035;
	background-size: calc(24 * (100vw / 320)) auto;
	border-radius: 8px;
	box-shadow: 2px 2px 2px rgba(0,0,0,.2);
}

#bottomGuide .facebookLink > a{
	display: table;
	font-size: calc(14 * (100vw / 320));
	margin: 0 0 0 auto;
	color: #000000;
}

#bottomGuide .facebookLink > a > i,
#bottomGuide .facebookLink > a > span{
	display: table-cell;
	vertical-align: middle;
	text-align: left;
}
#bottomGuide .facebookLink > a > i{
	width: calc(40 * (100vw / 320));
	padding-right: calc(5 * (100vw / 320));
}
#bottomGuide .facebookLink > a > i > img{display: block; width: 100%; height: auto;}



/**************************************
#footer
**************************************/
#footer{
	width: 100%;
	background: #a10035;
}

#footer > .inner{
	display: block;
	width: 100%;
	margin: 0 auto;
	padding: calc(20 * (100vw / 320)) 3%;
	position: relative;
}


#footer #footCategoryNav,
#footer #footUtility,
#footer .shopLogo{
	display: block;
}


/*** footCategoryNav  **************/
#footer #footCategoryNav > dl{
	display: block;
	width: 100%;
	padding: 0;
	background: #FFFFFF;
	border-radius: 4px;
	margin-bottom: calc(10 * (100vw / 320));
}

#footer #footCategoryNav > dl > dt{
	display: block;
	border-bottom: 1px solid #CCCCCC;
}

#footer #footCategoryNav > dl > dt > a{
	display: block;
	padding: calc(10 * (100vw / 320));
	font-size: calc(16 * (100vw / 320));
	font-family: 'NotoSerifJP-Regular';
	color: #000000;
	text-decoration: none;
	background: url(/img/icon_arrow_brown_right.svg) calc(100% - (10 * (100vw / 320))) center no-repeat;
	background-size: calc(8 * (100vw / 320)) auto;
}
#footer #footCategoryNav > dl > dt > a:hover{opacity: .6; border-bottom: 1px solid #FFFFFF;}


#footer #footCategoryNav > dl > dd{ display: block;}

#footer #footCategoryNav > dl > dd > ul{
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
    display: flex;
	-webkit-flex-wrap: wrap;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
    -webkit-box-align:stretch;
    -ms-flex-align:stretch;
    -webkit-align-items:stretch;
	align-items: stretch;
	-webkit-justify-content: left;
	justify-content: left;
	width: 100%;
}

#footer #footCategoryNav > dl > dd > ul > li{
	display: block;
	width: 50%;
	border-bottom: 1px solid #CCCCCC;
}
#footer #footCategoryNav > dl > dd > ul > li:nth-child(2n){
	border-left: 1px solid #CCCCCC;
}
#footer #footCategoryNav > dl > dd > ul > li:nth-last-of-type(1),
#footer #footCategoryNav > dl > dd > ul > li:nth-last-of-type(2){border-bottom: none;}

#footer #footCategoryNav > dl > dd > ul > li > a{
	display: block;
	padding: calc(10 * (100vw / 320));
	font-size: calc(16 * (100vw / 320));
	color: #000000;
	text-decoration: none;
	background: url(/img/icon_arrow_brown_right.svg) calc(100% - (10 * (100vw / 320))) center no-repeat;
	background-size: calc(6 * (100vw / 320)) auto;
}
#footer #footCategoryNav > dl > dd > ul > li > a span{
	display: block;
	font-size: calc(12 * (100vw / 320));
	margin-bottom:  calc(5 * (100vw / 320));
}


/*** footCategoryNav  **************/
#footer #footUtility > ul{
	display: block;
	width: 100%;
	padding: 0;
	background: #FFFFFF;
	border-radius: 4px;
	margin-bottom: calc(10 * (100vw / 320));
}

#footer #footUtility > ul > li{
	display: block;
	border-bottom: 1px solid #CCCCCC;
}
#footer #footUtility > ul > li:nth-last-of-type(1){border-bottom: none;}

#footer #footUtility > ul > li > a{
	display: block;
	padding: calc(10 * (100vw / 320));
	font-size: calc(16 * (100vw / 320));
	font-family: 'NotoSerifJP-Regular';
	color: #000000;
	text-decoration: none;
	background: url(/img/icon_arrow_brown_right.svg) calc(100% - (10 * (100vw / 320))) center no-repeat;
	background-size: calc(8 * (100vw / 320)) auto;
}

/*** shopLogo  **************/
#footer .shopLogo{
	width:50%;
	text-align: center;
	margin: 0 auto;
}

#footer .shopLogo > a{display: block; width: 100%;}
#footer .shopLogo > a > img{display: block; width: 100%; height: auto; margin: 0 auto;}


/*** footerCopyArea  **************/
#footer .footerCopyArea{
	display: block;
	width: 100%;
	background: #570014;
	padding: calc(10 * (100vw / 320));
}

#footer .footerCopyArea > nav{
	display: block;
}


#footer .footerCopyArea > .copy{
	display: block;
	margin: 0 auto;
	text-align: center;
	color: #FFFFFF;
	font-size: calc(12 * (100vw / 320));
}


/**************************************
calendarTable
**************************************/
.calendarTable{}
.calendarTable table{
	border: 1px solid #cccccc;
	font-size: calc(14 * (100vw / 320));
}

.calendarTable table > thead{
	font-family: 'NotoSerifJP-Regular';
	letter-spacing: 0.05em;
}
.calendarTable table td,
.calendarTable table th{
	border: 1px solid #cccccc;
	text-align: center;
	vertical-align: middle;
	padding: calc(5 * (100vw / 320));
}

.calendarTable table td.blank{background: #ededed;}

.calendarTable table td span{
	display: block;
	padding: calc(2 * (100vw / 320)) calc(5 * (100vw / 320)) 0;
	font-weight: 700;
}

.calendarTable table td a{
	color: #333333;
}

.calendarTable table tr td:nth-of-type(6),
.calendarTable table tr th:nth-of-type(6),
.calendarTable table tr td:nth-of-type(6) a{color: #1d33d8;}

.calendarTable table tr td:nth-of-type(7),
.calendarTable table tr th:nth-of-type(7),
.calendarTable table tr td:nth-of-type(7) a{color: #d71515;}





/**************************************
main
**************************************/
#main{
	padding: 0 0 calc(20 * (100vw / 320));
}

#main .mainTTL{
	min-height: calc(34 * (100vw / 320));
	padding:calc(8 * (100vw / 320)) calc(30 * (100vw / 320)) calc(8 * (100vw / 320)) 0;
	margin-bottom: calc(15 * (100vw / 320));
    font-family: 'NotoSerifJP-Regular';
	font-size: calc(20 * (100vw / 320));
	border-bottom: 1px solid #fac5c5;
	background: url(/img/ttl_icon_dance.png) right bottom no-repeat;
	background-size: auto calc(32 * (100vw / 320));
	position: relative;
}
#main .mainTTL::after {
    content: '';
    display: block;
    width: 100%;
    height: 1px;
    background: #a10035;
    position: absolute;
    left: 0;
    bottom: -3px;
}

#main .subttlArea{
	display: table;
	width: 100%;
	margin: 0 auto  calc(15 * (100vw / 320)) 0;
}
#main .subttlArea > .subttl{
	display: table-cell;
    font-family: 'NotoSerifJP-Regular';
	font-size:  calc(18 * (100vw / 320));
	text-align: left;
	vertical-align: middle;
}

#main .subttlArea > .helpLink{
	display: table-cell;
	text-align: right;
	vertical-align: middle;
}
#main .subttlArea > .helpLink > li{
	display: inline-block;
	padding-right: calc(10 * (100vw / 320));
	vertical-align: middle;
}
#main .subttlArea > .helpLink > li:nth-last-of-type(1){padding-right: 0;}

#main .subttlArea > .helpLink > li > a{
    display: inline-block;
    padding-left: calc(20 * (100vw / 320));
    line-height: calc(18 * (100vw / 320));
    color: #000000;
    background: url(/img/icon_help.svg) 0 center no-repeat;
    background-size: calc(18 * (100vw / 320)) auto;
    font-size: calc(14 * (100vw / 320));
    text-decoration: underline;
}



/**************************************
breadcrumbs
180924 change
**************************************/
#main .breadcrumbs{
	display: block;
	width: 100%;
    background: #efefef;
	color: #666666;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    padding: 0;
}
#main .breadcrumbs > ul{
	display: table;
    max-width: 100%;
	padding: 0 3%;
}
#main .breadcrumbs > ul > li{
	display: table-cell;
    height: calc(28 * (100vw / 320));
    vertical-align: middle;
    font-size: 1.2rem;
	position: relative;
    white-space: nowrap;
}
#main .breadcrumbs > ul > li::after{
    content: '\＞';
	display: inline-block;
	padding: 0 0.2rem;
    font-size: 1.0rem;
	line-height:  calc(18 * (100vw / 320));
	vertical-align: middle;
}
#main .breadcrumbs > ul > li:nth-last-of-type(1){margin-right: 0;}
#main .breadcrumbs > ul > li:nth-last-of-type(1)::after{display: none;}
#main .breadcrumbs > ul > li > a{
	display: inline-block;
    height: calc(18 * (100vw / 320));
	line-height:  calc(18 * (100vw / 320));
	border-radius: 4px;
	padding: 0 5px;
	color: #666666;
	text-decoration: none;
	background: rgba(255,255,255,.8);
	vertical-align: middle;
}

/**************************************
home
**************************************/
#mainPanel{
	display: block;
	width: 100%; height: calc(216 * (100vw / 320));
	background-image:-webkit-linear-gradient(top,rgba(245, 88, 173, .2), rgba(255, 255, 255, .2)), url(/img/home/bg_mainpanel.jpg);
	background-image: linear-gradient(to bottom, rgba(245, 88, 173, .2), rgba(255, 255, 255, .2)), url(/img/home/bg_mainpanel.jpg);
	background-position: 0 0 , calc(-30 * (100vw / 320)) 0;
	background-size: 0 0, auto calc(216 * (100vw / 320));
	background-repeat: no-repeat;
	position: relative;
}
#mainPanel::after{
	content:'';
	display: block;
	width: 100%; height: 2px;
	border-bottom: 1px solid #fac5c5;
	position: absolute;
	bottom: -2px;
}

#mainPanel > .mainPanelBg{
	display: block;
	width: 100%; height: calc(216 * (100vw / 320));
	padding: 0;
	background: url(/img/home/img_main_panel.png) calc(-175 * (100vw / 320)) 0 no-repeat;
	background-size: auto calc(216 * (100vw / 320));
}

#mainPanel > .mainPanelBg > .inner{
	display: block;
	height: calc(216 * (100vw / 320));
	padding-left:  calc(140 * (100vw / 320));
	position: relative;
	margin: 0 auto;
}

#mainPanel > .mainPanelBg > .inner > .text{
	display: block;
	padding-top:  calc(30 * (100vw / 320));
}

#mainPanel > .mainPanelBg > .inner > .text > h2{
	font-size: calc(23 * (100vw / 320));
	font-family: 'NotoSerifJP-Regular';
	line-height: 1.4;
	letter-spacing: -0.05em;
	text-align: left;
	padding-bottom: calc(5 * (100vw / 320));
}

#mainPanel > .mainPanelBg > .inner > .text p{
	font-size: calc(14 * (100vw / 320));
	font-family: 'NotoSerifJP-Regular';
	line-height: 1.6;
}

#mainPanel > .mainPanelBg > .inner > .text p.fcRed{
	font-size: calc(14 * (100vw / 320));
	line-height: 1.4;
	color: #ac0726;
}



#mainPanel > .mainPanelBg > .inner > .dsiLogo{
	width: calc(20 * (100vw / 320));
	height: calc(20 * (100vw / 320));
	position: absolute;
	bottom: calc(15 * (100vw / 320));
	right: calc(10 * (100vw / 320));
}
#mainPanel > .mainPanelBg > .inner > .dsiLogo > img{display: block; width: 100%; height: auto;}



/*** homeNav  **************/
#homeNav{display: block;}


#homeNav > nav{ display: block;}

#homeNav > nav > ul{
	display: block;
}

#homeNav > nav > ul > li{
	display: block;
	width: 50%;
	float: left;
	height: calc(61 * (100vw / 320));
	border-bottom: 1px solid #fac5c5;
}
#homeNav > nav > ul > li:nth-of-type(2n){border-left: 1px solid #fac5c5;}

#homeNav > nav > ul > li > .tab{
	display: table;
	width: 100%;
	height: calc(60 * (100vw / 320));
	padding: calc(5 * (100vw / 320)) calc(5 * (100vw / 320));
	text-decoration: none;
	font-family: 'NotoSerifJP-Regular';
	color: #000000;
	white-space: nowrap;
}

#homeNav > nav > ul > li > a.tab{
	background: url(/img/icon_arrow_brown_right.svg) calc(100% - (5 * (100vw / 320))) center no-repeat #FFFFFF;
	background-size: calc(6 * (100vw / 320)) auto;
}
#homeNav > nav > ul > li > div.tab{
	background: url(/img/icon_popupnav.svg) calc(100% - (4 * (100vw / 320))) center no-repeat #FFFFFF;
	background-size: calc(16 * (100vw / 320)) auto;
}

#homeNav > nav > ul > li > .tab > i,
#homeNav > nav > ul > li > .tab > span{
	display: table-cell;
	text-align: center;
	vertical-align: middle;
}
#homeNav > nav > ul > li > .tab > i{
	width: calc(38 * (100vw / 320));
	padding-right: calc(3 * (100vw / 320));
}
#homeNav > nav > ul > li > .tab > i > img{display: block; width: 100%; height: auto;}

#homeNav > nav > ul > li > .tab > span{
	text-align: left;
	font-size: calc(15 * (100vw / 320));
}
#homeNav > nav > ul > li > a.tab > span > span{display: none;}
#homeNav > nav > ul > li > div.tab > span > span{
	display: inline-block;
	font-size: calc(14 * (100vw / 320));
}


#homeNav > nav > ul > li > a.tab + .openNav{display: none;}


#homeNav > nav > ul > li > div.tab + .openNav{
	display: block;
	position: fixed;
	background: #FFFFFF;
	width: 100vw;
	height: 100vh;
	overflow-y: auto;
	-webkit-overflow-scrolling: touch;
	overflow-scrolling: touch;
  -webkit-transform: translateX(200vw);
      -ms-transform: translateX(200vw);
          transform: translateX(200vw);
	z-index: 1000;
	top: 0;
	left: 0;
	transition: all 0.5s ease-out;
	-webkit-backface-visibility: hidden;
}

#homeNav > nav > ul > li.open > div.tab + .openNav{
  -webkit-transform: translateX(0);
      -ms-transform: translateX(0);
          transform: translateX(0);
}

#homeNav > nav > ul > li.open > div.tab + .openNav::after{
	content: '';
	display: block;
	width: 100%;
	height: calc(40 * (100vw / 320));
}

#homeNav > nav > ul > li > .openNav .openTitleArea{
	display: block;
	position: relative;
}
#homeNav > nav > ul > li > .openNav.lock{overflow: hidden;}

#homeNav > nav > ul > li > .openNav .openTitleArea > .openTitle{
	display: block;
	background: #a10035;
	padding: calc(18 * (100vw / 320)) calc(20 * (100vw / 320))  calc(20 * (100vw / 320));
	text-align: center;
	color: #FFFFFF;
	font-family: 'NotoSerifJP-Regular';
	font-size: calc(18 * (100vw / 320));
}


#homeNav > nav > ul > li > .openNav .openTitleArea .closeBtn{
	display: block;
	width: calc(40 * (100vw / 320));
	height: calc(40 * (100vw / 320));
	padding-top: calc(26 * (100vw / 320));
	border-radius: 4px;
	background:url(/img/icon_close_white.svg) center calc(4 * (100vw / 320)) no-repeat #cc7575;
	background-size: calc(18 * (100vw / 320)) auto;
	box-shadow: 2px 2px 2px rgba(0,0,0,.1);
	font-size: calc(10 * (100vw / 320));
	text-align: center;
	color: #FFFFFF;	
	position: absolute;
	right: 3%;
	top: calc(8 * (100vw / 320));
}

#homeNav > nav > ul > li > .openNav .openClose{
	display: block;
	padding-top: calc(15 * (100vw / 320));
}
#homeNav > nav > ul > li > .openNav .openClose > span{
	display: block;
	width: 60%;
	margin: 0 auto;
	padding: 0 0 0 calc(18 * (100vw / 320));
	border: 1px solid #CCCCCC;
	line-height: calc(40 * (100vw / 320));
	font-size: calc(14 * (100vw / 320));
    background: url(/img/icon_close.svg) calc(10 * (100vw / 320)) center no-repeat;
    background-size: calc(14 * (100vw / 320)) auto;
	text-align: center;
	border-radius: 8px;
	box-shadow: 2px 2px 2px rgba(0,0,0,.1);
}



/*** colorList  ***********/
#homeNav > nav > ul > li > .openNav > ul.colorList{
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
    display: flex;
	-webkit-flex-wrap: wrap;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
    -webkit-box-align:stretch;
    -ms-flex-align:stretch;
    -webkit-align-items:stretch;
	align-items: stretch;
	-webkit-justify-content: left;
	justify-content: left;
	width: 100%;
	padding: calc(20 * (100vw / 320)) 3% 0;
}
#homeNav > nav > ul > li > .openNav > ul.colorList > li{
	display: block;
	width: 32%;
	margin-right: 2%;
	margin-bottom: calc(10 * (100vw / 320));
}
#homeNav > nav > ul > li > .openNav > ul.colorList > li:nth-of-type(3n){margin-right: 0;}


#homeNav > nav > ul > li > .openNav > ul.colorList > li > a{
	display: table;
	width: 100%;
	height: calc(60 * (100vw / 320));
	background: #FFFFFF;
	padding: 1px;
	border: 1px solid #CCCCCC;
	box-shadow: 2px 2px 2px rgba(0,0,0,.2);
	text-decoration: none;
	font-family: 'NotoSerifJP-Regular';
	color: #ffffff;
	font-size: calc(14 * (100vw / 320));
	position:relative;
}


#homeNav > nav > ul > li > .openNav > ul.colorList > li > a > span{
	display: table-cell;
	background: #000000;
	text-align: center;
	vertical-align: middle;
}
#homeNav > nav > ul > li > .openNav > ul.colorList > li > a > span.black{background-color: #232323;}
#homeNav > nav > ul > li > .openNav > ul.colorList > li > a > span.yellow{background-color: #ffeb7c; color: #000000;}
#homeNav > nav > ul > li > .openNav > ul.colorList > li > a > span.blue{background-color: #2558ff;}
#homeNav > nav > ul > li > .openNav > ul.colorList > li > a > span.red{background-color: #ed1616;}
#homeNav > nav > ul > li > .openNav > ul.colorList > li > a > span.brown{background-color: #6a482a;}
#homeNav > nav > ul > li > .openNav > ul.colorList > li > a > span.pink{background-color: #fb597b;}
#homeNav > nav > ul > li > .openNav > ul.colorList > li > a > span.purple{background-color: #d63ee8;}
#homeNav > nav > ul > li > .openNav > ul.colorList > li > a > span.green{background-color: #1a9b20;}
#homeNav > nav > ul > li > .openNav > ul.colorList > li > a > span.white{background-color: #ffffff; color: #000000;}
#homeNav > nav > ul > li > .openNav > ul.colorList > li > a > span.orange{background-color: #f78b00;}
#homeNav > nav > ul > li > .openNav > ul.colorList > li > a > span.other{background-color: #a7a7a7;}


/*** calendarSearch  ***********/
#homeNav > nav > ul > li > .openNav > .calendarSearch{
	width: 100%;
	margin: 0 auto;
	padding: calc(20 * (100vw / 320)) 3% 0;
	position: relative;
}

#homeNav > nav > ul > li > .openNav > .calendarSearch > h3{
	font-size: calc(16 * (100vw / 320));
	line-height: 1.4;
	text-align: center;
	margin-bottom: calc(10 * (100vw / 320));
}

#homeNav > nav > ul > li > .openNav > .calendarSearch > .calendarInput{
	width: 100%;
	margin: 0 auto;
}

#homeNav > nav > ul > li > .openNav > .calendarSearch > .calendarInput #dateSearch{
	font-size: calc(14 * (100vw / 320));
	background: url(/img/icon_calendar_red.svg) calc(100% - (10 * (100vw / 320))) center no-repeat;
	background-size: calc(24 * (100vw / 320)) auto;
}
#homeNav > nav > ul > li > .openNav > .calendarSearch > .calendarInput .searchBtn{
	display: block;
	width: 100%;
	margin: calc(10 * (100vw / 320)) auto 0;
}

#homeNav > nav > ul > li > .openNav > .calendarSearch > .calendarInput .searchBtn > button{
    display: block;
	width: 100%;
    padding: calc(18 * (100vw / 320)) calc(24 * (100vw / 320)) calc(19 * (100vw / 320));
    font-family: 'NotoSerifJP-Regular';
    font-size: calc(16 * (100vw / 320));
    color: #FFFFFF;
    text-decoration: none;
    background: url(/img/icon_arrow_white_right.svg) calc(100% - (8 * (100vw / 320))) center no-repeat #a10035;
    background-size: calc(8 * (100vw / 320)) auto;
    border-radius: 8px;
    box-shadow: 2px 2px 2px rgba(0,0,0,.2);
}

#homeNav > nav > ul > li > .openNav > .calendarSearch > .calendarInput .searchBtn > button:disabled{
	box-shadow: none;
	background: #CCCCCC;
	cursor: default;
}


/*** topSection  **************/
#main .topSection{
	padding: calc(20 * (100vw / 320)) 3% 0;
	margin: 0 auto;
}

#main .topSection .topTTL{
	font-family: 'NotoSerifJP-Regular';
	font-size: calc(20 * (100vw / 320));
	text-align: center;
	position: relative;
	margin-bottom: calc(5 * (100vw / 320));
}

#main .topSection .topTTL > span{
	display: inline-block;
	padding: 0 calc(10 * (100vw / 320)) 0 calc(15 * (100vw / 320));
	background: #FFFFFF;
	position: relative;
	z-index: 2;
}

#main .topSection .topTTL > span > span{
	display: block;
	margin: calc(5 * (100vw / 320)) auto;
	font-size: calc(12 * (100vw / 320));
	color: #a10035;
}

#main .topSection .topTTL::before{
	content: '';
	width: 100%;
	height: 1px;
	background: #d48fa2;
	position: absolute;
	top: 50%;
	left: 0;
}
#main .topSection .topTTL::after{
	content: '';
	width: 100%;
	height: 1px;
	background: #a10035;
	position: absolute;
	top: calc(50% + 2px);
	left: 0;
}

#main .topSection > .lede{
	font-size: calc(14 * (100vw / 320));
	text-align: center;
	margin-bottom: calc(10 * (100vw / 320));
	line-height: 1.4;
}


/*** newItemList  ***********/
#main .topSection > ul.newItemList{
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
    display: flex;
	-webkit-flex-wrap: wrap;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
    -webkit-box-align:stretch;
    -ms-flex-align:stretch;
    -webkit-align-items:stretch;
	align-items: stretch;
	-webkit-justify-content: left;
	justify-content: left;
	width: 100%;
}
#main .topSection > ul.newItemList > li{
	display: block;
	width: 48%;
	margin-right:2%;
	margin-bottom:calc(10 * (100vw / 320));
}
#main .topSection > ul.newItemList > li.moreItem{display: none;}
#main .topSection > ul.newItemList > li:nth-of-type(2n){margin-right: 0;}

#main .topSection > ul.newItemList > li.btnListMore{
	display: block;
	width: 100%;
	padding: calc(12 * (100vw / 320)) 0 calc(12 * (100vw / 320));
	text-align: center;
	font-family: 'NotoSerifJP-Regular';
	font-size: calc(16 * (100vw / 320));
	border: 1px solid #CCCCCC;
	background: url(/img/icon_plus.svg) calc(10 * (100vw / 320)) center no-repeat;
	background-size: calc(16 * (100vw / 320)) auto;
	border-radius: 8px;
}
#main .topSection > ul.newItemList > li.btnListMore.close{display: none;}


#main .topSection > ul.newItemList > li > a{
	display: block;
	background: #FFFFFF;
	box-shadow: 1px 1px 4px rgba(0,0,0,.2);
	text-decoration: none;
	color: #000000;
	position:relative;
}

#main .topSection > ul.newItemList > li > a > .img{display: block;}
#main .topSection > ul.newItemList > li > a > .img > img{display: block; width: 100%; height: auto;}

#main .topSection > ul.newItemList > li > a > .text{
	display: block;
	padding: calc(5 * (100vw / 320));
	position: relative;
	background: url(/img/icon_arrow_brown_right.svg) calc(100% - (5 * (100vw / 320))) center no-repeat;
	background-size: calc(6 * (100vw / 320)) auto;
}

#main .topSection > ul.newItemList > li > a > .text > .category{
	display: block;
	width: 100%;
	height: calc(20 * (100vw / 320));
	padding: 0 calc(10 * (100vw / 320));
	line-height: calc(20 * (100vw / 320));
	font-size: calc(12 * (100vw / 320));
	font-weight: 700;
	color: #FFFFFF;
	position: absolute;
	top: calc(-20 * (100vw / 320));
	text-align: center;
	left: 0;
}
#main .topSection > ul.newItemList > li > a > .text > .category.standard{background: rgba(18,26,191,.6);}
#main .topSection > ul.newItemList > li > a > .text > .category.latin{background: rgba(195,9,97,.6);}

#main .topSection > ul.newItemList > li > a > .text > .name{
	text-decoration: underline;
	font-size: calc(14 * (100vw / 320));
	margin-bottom: calc(5 * (100vw / 320));
}

#main .topSection > ul.newItemList > li > a > .text > .price{
	display: table;
}
#main .topSection > ul.newItemList > li > a > .text > .price > span{
	display: table-cell;
	text-align: left;
	vertical-align: middle;
	font-size: calc(16 * (100vw / 320));
}
#main .topSection > ul.newItemList > li > a > .text > .price > span.tax{
	font-size: calc(12 * (100vw / 320));
	padding-left: calc(4 * (100vw / 320));
}



/*** newItemList  ***********/
#main .topSection > .newsList{
	width: 100%;
}

#main .topSection > .newsList > ul{
	display: block;
}

#main .topSection > .newsList > ul > li{
	display: block;
	width: 100%;
	margin-top: calc(10 * (100vw / 320));
}

#main .topSection > .newsList > ul > li > a{
	display: block;
	border-radius: 8px;
	text-decoration: none;
	color: #000000;
    box-shadow: 1px 1px 4px rgba(0,0,0,.2);
	position: relative;
}


#main .topSection > .newsList > ul > li .inner{
	display: block;
	width: 100%;
	padding: calc(10 * (100vw / 320));
	border:1px solid #CCCCCC;
	border-radius: 8px;
	line-height: 1.6;
}

#main .topSection > .newsList > ul > li .inner time{
	display:block;
	text-align: left;
	vertical-align: top;
	border-bottom: 1px solid #CCCCCC;
	font-size:  calc(14 * (100vw / 320));
	padding-bottom: calc(10 * (100vw / 320));
}

#main .topSection > .newsList > ul > li .inner .detail{
	display: block;
	text-align: left;
	vertical-align: top;
	padding-top: calc(10 * (100vw / 320));
	font-size: calc(14 * (100vw / 320));

}


#main .topSection > .newsList > ul > li > a > .inner .newsMore{
	display: block;
	padding-right: calc(16 * (100vw / 320));
	text-align: center;
	vertical-align: middle;
	background: url(/img/icon_arrow_brown_right.svg) right center no-repeat;
	background-size:  calc(6 * (100vw / 320)) auto;
	font-size:  calc(14 * (100vw / 320));
	font-family: 'NotoSerifJP-Regular';
	position: absolute;
	right: calc(10 * (100vw / 320));
	top: calc(10 * (100vw / 320));
}




/**************************************
productsListSection
**************************************/
#productsListSection{
	margin: 0 auto;
	padding: 0 3%;
	position: relative;
}

#productsListMain{
	padding-top: calc(50 * (100vw / 320));
}

#productsListMain .productsListTTLArea{margin-bottom: calc(10 * (100vw / 320));}
#productsListMain .productsListTTLArea .mainTTL{margin-bottom: calc(15 * (100vw / 320));}

/*** #searchOptions  *******************/
#productsListMain #searchOptions{
	display: block;
	width: 100%;
}

#productsListMain #searchOptions > ul{
	display: block;
	text-align: left;
	vertical-align: top;
	margin-right: calc(-5 * (100vw / 320));
}
#productsListMain #searchOptions > ul > li{
	display: inline-block;
	padding: 0 calc(30 * (100vw / 320)) 0 calc(5 * (100vw / 320));;
	margin:0 calc(5 * (100vw / 320)) calc(5 * (100vw / 320)) 0;
	float: left;
	border: 1px solid #CCCCCC;
	border-radius: 4px;
	font-size: calc(12 * (100vw / 320));
	line-height: calc(25 * (100vw / 320));
	white-space: nowrap;
	position: relative;
	cursor: pointer;
}
#productsListMain #searchOptions > ul > li::after{
	content: '';
	display: block;
	height: calc(25 * (100vw / 320)); width: calc(25 * (100vw / 320));
	border-left: 1px solid #CCCCCC;
	background: url(/img/icon_close.svg) center center no-repeat;
	background-size: calc(10 * (100vw / 320)) auto;
	position: absolute;
	right: 0;
	top: 0;
}

#productsListMain #searchOptions > .resetBtn{display: none;}


/*** .productsListControl  *******************/
#productsListMain .productsListControl{
	display: block;
	width: 100%;
	margin-bottom: calc(15 * (100vw / 320));
}

#productsListMain .productsListControl > .contorol{
	display:table;
	width: 100%;
	border: 1px solid #1d1417;
	border-radius: 4px;
	box-shadow: 2px 2px 4px rgba(0,0,0,.2);
	margin-bottom:  calc(15 * (100vw / 320));
}

#productsListMain .productsListControl > .contorol .hitCnt{
	display: table-cell;
	height: calc(40 * (100vw / 320));
	vertical-align: middle;
	text-align: center;
	font-size: calc(16 * (100vw / 320));
	font-weight: 700;
}
#productsListMain .productsListControl > .contorol .hitCnt > span{font-size: calc(14 * (100vw / 320)); font-weight: 400; padding-left: 5px;}

#productsListMain .productsListControl > .contorol > .spSearchNavOpen{
	display: table-cell;
	width: calc(200 * (100vw / 320));
	height: calc(40 * (100vw / 320));
	padding-left: calc(28 * (100vw / 320));
	background: url(/img/icon_popupnav_white.svg) calc(24 * (100vw / 320)) center no-repeat #1d1417;
	background-size: calc(18 * (100vw / 320)) auto;
	vertical-align: middle;
	text-align: center;
	font-size: calc(14 * (100vw / 320));
	color: #FFFFFF;
	font-weight: 700;
	cursor: pointer;
}

/*** .sort  *******************/
#productsListMain .productsListControl > .sort{display: block;}
#productsListMain .productsListControl > .sort > .viewCnt{display: none;}

#productsListMain .productsListControl > .sort > .sortOption{
	display: block;
}
#productsListMain .productsListControl > .sort > .sortOption > dl{
	display: table;
	width: 100%;
	border:1px solid #CCCCCC;
	border-radius: 4px;
	overflow: hidden;
}
#productsListMain .productsListControl > .sort > .sortOption > dl > dt,
#productsListMain .productsListControl > .sort > .sortOption > dl > dd{
	display: table-cell;
	text-align: center;
	vertical-align: middle;
	font-size: calc(14 * (100vw / 320));
	line-height: 30px;
}

#productsListMain .productsListControl > .sort > .sortOption > dl > dt{
	background: #7c7c7c;
	color: #FFFFFF;
	padding: 0 calc(10 * (100vw / 320));;
}
#productsListMain .productsListControl > .sort > .sortOption > dl > dd{border-right: 1px solid #CCCCCC;}
#productsListMain .productsListControl > .sort > .sortOption > dl > dd:nth-last-of-type(1){border-right: none;}

#productsListMain .productsListControl > .sort > .sortOption > dl > dd > button{
	display: block;
	/*padding: 0 calc(20 * (100vw / 320)) 0 calc(10 * (100vw / 320));*/
	padding: 0 calc(16 * (100vw / 320)) 0 calc(16 * (100vw / 320));
	background: url(/img/icon_list_down.svg) 100% center no-repeat;
	/*background-size: calc(14 * (100vw / 320)) auto;*/
	background-size: 0;
}
#productsListMain .productsListControl > .sort > .sortOption > dl > dd > button.up{
	background-image: url(/img/icon_list_up.svg);
	background-size: calc(14 * (100vw / 320)) auto;
	padding: 0 calc(20 * (100vw / 320)) 0 calc(10 * (100vw / 320));
}
#productsListMain .productsListControl > .sort > .sortOption > dl > dd > button.down{
	background-size: calc(14 * (100vw / 320)) auto;
	padding: 0 calc(20 * (100vw / 320)) 0 calc(10 * (100vw / 320));
}

/*** .productsListNohit  *******************/
#productsListMain .productsListNohit{
	display: block;
    width: 100%;
    text-align: center;
    padding: calc(10 * (100vw / 320));
    margin: 10px auto;
    border: 4px double #CCCCCC;
    font-size: calc(14 * (100vw / 320));
    line-height: 1.6;
}

/*** .productsList  *******************/
#productsListMain .productsList{
	display: block;
	margin-bottom: calc(25 * (100vw / 320))
}

#productsListMain .productsList > ul{ display: block;}
#productsListMain .productsList > ul > li{
	display: block;
	margin-bottom: calc(10 * (100vw / 320));
}

#productsListMain .productsList > ul > li > a{
	display: block;
	padding: calc(5 * (100vw / 320)) calc(25 * (100vw / 320)) calc(5 * (100vw / 320)) calc(5 * (100vw / 320));
	border: 1px solid #FFFFFF;
	text-decoration: none;
	color: #000000;
	box-shadow: 1px 1px 4px rgba(0,0,0,.3);
	background-image: url(/img/icon_arrow_white_right.svg),-webkit-linear-gradient(left,rgb(255, 255, 255) 0%,rgb(255, 255, 255) calc(100% - (15 * (100vw / 320))), rgb(161, 0, 53) calc(100% - (15 * (100vw / 320))), rgb(161, 0, 53));
	background-image: url(/img/icon_arrow_white_right.svg), linear-gradient(to right, rgb(255, 255, 255) 0%,rgb(255, 255, 255) calc(100% - (15 * (100vw / 320))), rgb(161, 0, 53) calc(100% - (15 * (100vw / 320))), rgb(161, 0, 53));
	background-position: calc(100% - (3 * (100vw / 320))) center, 0 0;
	background-size: calc(8 * (100vw / 320)) auto, auto;
	background-repeat: no-repeat;
}

#productsListMain .productsList > ul > li > a > .inner{
	display: table;
	width: 100%;
	position: relative;
}
#productsListMain .productsList > ul > li > a > .inner > .img{
	display: table-cell;
	width: calc(95 * (100vw / 320));
	vertical-align: top;
}
#productsListMain .productsList > ul > li > a > .inner > .img > img{display: block; width: 100%; height: auto;}

#productsListMain .productsList > ul > li > a > .inner > .text{
	display: table-cell;
	padding-left: calc(10 * (100vw / 320));
	vertical-align: middle;
	text-align: left;
}

#productsListMain .productsList > ul > li > a > .inner > .text > .nameprice{
	display: block;
	width: 100%;
}

#productsListMain .productsList > ul > li > a > .inner > .text > .nameprice > .nameArea > .category{
	display: block;
	width: calc(95 * (100vw / 320));
	height: calc(20 * (100vw / 320));
	line-height: calc(20 * (100vw / 320));
	background: rgba(47,47,47,.6);
	color: #FFFFFF;
	font-size: calc(12 * (100vw / 320));
	font-weight: 700;
	text-align: center;
	position: absolute;
	left: 0;
	top: calc(119 * (100vw / 320));
}
#productsListMain .productsList > ul > li > a > .inner > .text > .nameprice > .nameArea > .category.latin{ background: rgba(214,44,124,.6);}
#productsListMain .productsList > ul > li > a > .inner > .text > .nameprice > .nameArea > .category > span{display: none;}

#productsListMain .productsList > ul > li > a > .inner > .text > .nameprice > .nameArea > .name{
	padding-top: calc(5 * (100vw / 320));
	font-size:  calc(16 * (100vw / 320));
	font-weight: 700;
}
#productsListMain .productsList > ul > li > a > .inner > .text > .nameprice > .nameArea > .name > .country{display: none;}

#productsListMain .productsList > ul > li > a > .inner > .text > .nameprice > .priceArea{
	display: block;
	padding-top: calc(10 * (100vw / 320));
}
#productsListMain .productsList > ul > li > a > .inner > .text > .nameprice > .priceArea > li{
	display: table;
	width: 100%;
}

#productsListMain .productsList > ul > li > a > .inner > .text > .nameprice > .priceArea > li.rental > span{
	display: table-cell;
	vertical-align: middle;
	text-align: left;
	font-size: calc(12 * (100vw / 320));
	letter-spacing: -0.06em;
	white-space: nowrap;
}
#productsListMain .productsList > ul > li > a > .inner > .text > .nameprice > .priceArea > li.rental > span:nth-of-type(1){
	width: 6.5em;
}
#productsListMain .productsList > ul > li > a > .inner > .text > .nameprice > .priceArea > li.rental > span:nth-of-type(2){
	font-size: calc(14 * (100vw / 320));
	padding-right: calc(3 * (100vw / 320));
	text-align: right;
	font-weight: 700;
}
#productsListMain .productsList > ul > li > a > .inner > .text > .nameprice > .priceArea > li.rental > span:nth-of-type(3){
	width: 2em;
	font-size:calc(10 * (100vw / 320));
}

#productsListMain .productsList > ul > li > a > .inner > .text > .nameprice > .priceArea > li.sell{padding-top: calc(5 * (100vw / 320));}
#productsListMain .productsList > ul > li > a > .inner > .text > .nameprice > .priceArea > li.sell > span{
	display: table-cell;
	vertical-align: middle;
	text-align: left;
	font-size:calc(12 * (100vw / 320));
	letter-spacing: -0.06em;
}
#productsListMain .productsList > ul > li > a > .inner > .text > .nameprice > .priceArea > li.sell > span:nth-of-type(1){
	width: 6.5em;
}
#productsListMain .productsList > ul > li > a > .inner > .text > .nameprice > .priceArea > li.sell > span:nth-of-type(2){
	padding-right: calc(3 * (100vw / 320));
	text-align: right;
}
#productsListMain .productsList > ul > li > a > .inner > .text > .nameprice > .priceArea > li.sell > span:nth-of-type(3){
	width: 2em;
	font-size:calc(10 * (100vw / 320));
}


#productsListMain .productsList > ul > li > a > .inner > .text > .options{
	margin-top: calc(10 * (100vw / 320));
}

#productsListMain .productsList > ul > li > a > .inner > .text > .options > .sizeColor{ margin-right: calc(-5 * (100vw / 320))}
#productsListMain .productsList > ul > li > a > .inner > .text > .options > .sizeColor li{
	display: inline-block;
	padding: calc(5 * (100vw / 320)) calc(5 * (100vw / 320));
	margin: 0 calc(5 * (100vw / 320)) calc(5 * (100vw / 320)) 0;
	line-height: 1.2;
	font-size: calc(12 * (100vw / 320));
	border: 1px solid #CCCCCC;
	border-radius: 4px;
	float: left;
}
#productsListMain .productsList > ul > li > a > .inner > .text > .options > .sizeColor li > span{font-weight: 700;}

#productsListMain .productsList > ul > li > a > .inner > .text > .options > .otherOption{display: none;}
#productsListMain .productsList > ul > li > a > .inner > .text > .options > .remarks{display: none;}
#productsListMain .productsList > ul > li > a > .staffComment{display: none;}



/*** .productsList  *******************/
#productsListMain .productsListPager{
	display: block;
	margin: 0 auto;
}

/*** .pageNumList  *****************************/
#productsListMain .productsListPager > .pageNumList{display: none;}

/*** .pageDirectJump  *****************************/

#productsListMain .productsListPager > .pageDirectJump{
	display: table;
	width: 100%;
	margin: 0 auto calc(20 * (100vw / 320));
}

#productsListMain .productsListPager > .pageDirectJump > li{
	display: table-cell;
	height: calc(45 * (100vw / 320));
	vertical-align: middle;
	text-align: center;
}

#productsListMain .productsListPager > .pageDirectJump > li.prev,
#productsListMain .productsListPager > .pageDirectJump > li.next{
	width: calc(80 * (100vw / 320));
}

#productsListMain .productsListPager > .pageDirectJump > li.prev > a{
	display: block;
	width: 100%;
	font-size: calc(14 * (100vw / 320));
	line-height:calc(40 * (100vw / 320));
	border: 1px solid #d2d2d2;
	padding-left: 12px;
	color: #000000;
	text-decoration: none;
	background: url(/img/icon_arrow_brown_left.svg) 5px center no-repeat;
	background-size: calc(8 * (100vw / 320)) auto;
}

#productsListMain .productsListPager > .pageDirectJump > li.next > a{
	display: block;
	width: 100%;
	font-size: calc(14 * (100vw / 320));
	line-height: calc(40 * (100vw / 320));
	border: 1px solid #d2d2d2;
	padding-right: calc(12 * (100vw / 320));
	color: #000000;
	text-decoration: none;
	background: url(/img/icon_arrow_brown_right.svg) calc(100% - 5 * (100vw / 320)) center no-repeat;
	background-size: calc(8 * (100vw / 320)) auto;
}


#productsListMain .productsListPager > .pageDirectJump > li.selectPage{
	width: calc(100% - 160 * (100vw / 320));
}
#productsListMain .productsListPager > .pageDirectJump > li.selectPage > label{
	display: table;
	margin: 0 auto;
}
#productsListMain .productsListPager > .pageDirectJump > li.selectPage > label select,
#productsListMain .productsListPager > .pageDirectJump > li.selectPage > label span{
	display: table-cell;
	vertical-align: middle;
	text-align: center;
}

#productsListMain .productsListPager > .pageDirectJump > li.selectPage > label select{
	width: calc(60 * (100vw / 320));
}

#productsListMain .productsListPager > .pageDirectJump > li.selectPage > label span{
	width: calc(50 * (100vw / 320));
	font-size: 1.4rem;
}
#productsListMain .productsListPager > .pageDirectJump > li.selectPage > label span::before{
	content: '\／';
	padding: 0 calc(10 * (100vw / 320));
	vertical-align: top;
}


/**************************************
productsListNav
**************************************/
#productsListNav{}

#productsListNav .category{
	display: table;
	width: 100vw;
	position: absolute;
	top: calc(10 * (100vw / 320));
	left: 0;
	padding: 0 3%;
}
#productsListNav .category > li{
	display: table-cell;
	vertical-align: middle;
	text-align: center;
	width: 50%;
}

#productsListNav .category > li > a{
	display: block;
	padding: calc(7 * (100vw / 320)) 0 calc(9 * (100vw / 320)) 0;
	font-family: 'NotoSerifJP-Regular';
	font-size: calc(12 * (100vw / 320));
	color: #7f7f7f;
	text-decoration: none;
	background: #efefef;
	position: relative;
	border: 1px solid #CCCCCC;
}
#productsListNav .category > li.current > a{
	background: #e1163c;
	border-color: #e1163c;
	color: #FFFFFF;
}

#productsListNav .category > li:first-child > a{
	border-radius: 8px 0 0 8px;
	border-right: none;
}
#productsListNav .category > li:last-child > a{border-radius: 0 8px 8px 0;}

/*** #productsListNavInner  ***********/
#productsListNav #productsListNavInner{
	display: block;
    position: fixed;
    background: #FFFFFF;
	overflow: hidden;
    width: 100vw;
    height: 100vh;
    -webkit-transform: translateX(200vw);
    -ms-transform: translateX(200vw);
    transform: translateX(200vw);
    z-index: 1000;
    top: 0;
    left: 0;
    transition: all 0.5s ease-out;
    -webkit-backface-visibility: hidden;
}
#productsListNav #productsListNavInner.open{
    -webkit-transform: translateX(0);
    -ms-transform: translateX(0);
    transform: translateX(0);
}

#productsListNav #productsListNavInner .openTitleArea {
    display: block;
    position: relative;
	box-shadow: 0 2px 4px rgba(0,0,0,.2);
}
#productsListNav #productsListNavInner .openTitleArea > .openTitle{
    display: block;
    background: #a10035;
    padding: calc(18 * (100vw / 320)) calc(20 * (100vw / 320)) calc(20 * (100vw / 320));
    text-align: center;
    color: #FFFFFF;
    font-family: 'NotoSerifJP-Regular';
    font-size: calc(18 * (100vw / 320));
}
#productsListNav #productsListNavInner .openTitleArea .closeBtn {
    display: block;
    width: calc(40 * (100vw / 320));
    height: calc(40 * (100vw / 320));
    padding-top: calc(26 * (100vw / 320));
    border-radius: 4px;
    background: url(/img/icon_close_white.svg) center calc(4 * (100vw / 320)) no-repeat #cc7575;
    background-size: calc(18 * (100vw / 320)) auto;
    box-shadow: 2px 2px 2px rgba(0,0,0,.1);
    font-size: calc(10 * (100vw / 320));
    text-align: center;
    color: #FFFFFF;
    position: absolute;
    right: 3%;
    top: calc(8 * (100vw / 320));
}

#productsListNav .btnArea{
	display: block;
	width: 100vw;
	position: fixed;
	height:  calc(40 * (100vw / 320));
	z-index: 1001;
	left: 0;
	bottom: 0;
    -webkit-transform: translateY(200vh);
    -ms-transform: translateY(200vh);
    transform: translateY(200vh);
	transition: all 0.3s ease-out;
    -webkit-backface-visibility: hidden;
}
#productsListNav #productsListNavInner.open + .btnArea{
    -webkit-transform: translateY(0);
    -ms-transform: translateY(0);
    transform: translateY(0);
}
#productsListNav #productsListNavInner.open + .btnArea.lock{
    -webkit-transform: translateY(200vh);
    -ms-transform: translateY(200vh);
    transform: translateY(200vh);
}

#productsListNav .btnArea > ul{
	display: table;
	width: 100%;
	height: calc(40 * (100vw / 320));
	background: #FFFFFF;
	box-shadow: 0 -1px 4px rgba(0,0,0,.2);
}
#productsListNav .btnArea > ul > li{
	display: table-cell;
	vertical-align: middle;
	text-align: center;
}
#productsListNav .btnArea > ul > li.btnClear{
	width: calc(120 * (100vw / 320));
}

#productsListNav .btnArea > ul > li.btnClear > span{
	display: block;
	width: 100%; height: 100%;
	line-height:calc(40 * (100vw / 320));
    font-size: calc(14 * (100vw / 320));
	text-align: center;
	color: #333333;
	background: #efefef;
}

#productsListNav .btnArea > ul > li.btnResult > button{
    display: block;
	width: 100%; height: 100%;
	padding-left: calc(10 * (100vw / 320));
	line-height:calc(40 * (100vw / 320));
    font-size: calc(16 * (100vw / 320));
    color: #FFFFFF;
    text-decoration: none;
    background: url(/img/icon_arrow_white_right.svg) calc(100% - (10 * (100vw / 320))) center no-repeat #a10035;
    background-size: calc(8 * (100vw / 320)) auto;
	text-align: center;
}



/*** optionList  *******************/
#productsListNav .optionList{
	display: block;
	height: calc(100vh - (56 * (100vw / 320)));
	padding: calc(10 * (100vw / 320)) calc(10 * (100vw / 320)) calc(60 * (100vw / 320)) calc(10 * (100vw / 320));
    overflow-y: auto;
    -webkit-overflow-scrolling: touch;
    overflow-scrolling: touch;
}
#productsListNav .optionList::after{
    content: '';
    display: block;
    width: 100%;
    height: calc(120 * (100vw / 320));
}
#productsListNav .optionList.lock{overflow: hidden;}


#productsListNav .optionList > dl{
	margin-bottom: calc(20 * (100vw / 320));
}
#productsListNav .optionList > dl:nth-last-of-type(1){margin-bottom: 0;}

#productsListNav .optionList > dl > dt{
	padding-bottom: calc(9 * (100vw / 320));
    margin-bottom: calc(15 * (100vw / 320));
    border-bottom: 1px solid #d48fa2;
    font-family: 'NotoSerifJP-Regular';
    font-size: calc(16 * (100vw / 320));
    position: relative;
}
#productsListNav .optionList > dl > dt::after {
    content: '';
    display: block;
    width: 100%;
    height: 1px;
    background: #a10035;
    position: absolute;
    left: 0;
    bottom: -3px;
}

#productsListNav .optionList > dl > dd{
	font-size: calc(14 * (100vw / 320));
	color: #333333;
}
#productsListNav .optionList > dl > dd + dd{
	border-top: 1px solid #CCCCCC;
	padding-top: calc(15 * (100vw / 320));
	margin-top: calc(15 * (100vw / 320));
}

#productsListNav .optionList > dl > dd .subttl{
	font-weight: 700;
	margin-bottom: calc(15 * (100vw / 320));
	color: #333333;
}
#productsListNav .optionList > dl > dd .cap{font-size: calc(12 * (100vw / 320));}

/*#productsListNav .optionList > dl > dd > ul + ul{
	padding-top: calc(15 * (100vw / 320));
	margin-top: calc(15 * (100vw / 320));
	border-top: 1px dotted #CCCCCC;
}*/

/*** .checkBoxList  *******************/
#productsListNav .checkBoxList{}
#productsListNav .checkBoxList > li{
	display: block;
	margin-bottom: calc(15 * (100vw / 320));
}
#productsListNav .checkBoxList > li:nth-last-of-type(1){margin-bottom: 0;}

#productsListNav .checkBoxList label{
    display: inline-block;
    padding-left: calc(22 * (100vw / 320));
    position: relative;
	line-height: 1.2;
    cursor: pointer;
    -webkit-transition: opacity 0.2s ease;
    -moz-transition: opacity 0.2s ease;
    -o-transition: opacity 0.2s ease;
    transition: opacity 0.2s ease;
}
#productsListNav .checkBoxList label::before{
	content: '';
	display: block;
	width: calc(16 * (100vw / 320)); height: calc(16 * (100vw / 320));
	background: #FFFFFF;
	border: 1px solid #CCCCCC;
	box-shadow:0 1px 2px 0 rgba(0,0,0,0.2) inset;
	border-radius: 4px;
	position: absolute;
	left: 0;
	top: 0;
}

#productsListNav .checkBoxList label > input[type=checkbox] {display: none;}
#productsListNav .checkBoxList label > input[type=checkbox] + span{ display: inline-block;}
#productsListNav .checkBoxList label > input[type=checkbox] + span::after {
    content: '';
    display: block;
    width: calc(16 * (100vw / 320));
    height: calc(16 * (100vw / 320));
	border-radius: 4px;
    background: url(/img/icon_checked.svg) center center no-repeat #df4d81;
    background-size: 10px auto;
    position: absolute;
    left: 0;
    top: 0;
    opacity: 0;
    -webkit-transition: opacity 0.2s ease, transform 0.2s ease;
    -moz-transition: opacity 0.2s ease, transform 0.2s ease;
    -o-transition: opacity 0.2s ease, transform 0.2s ease;
    transition: opacity 0.2s ease, transform 0.2s ease;
    -webkit-transform: scale(0);
    -moz-transform: scale(0);
    -o-transform: scale(0);
    -ms-transform: scale(0);
    transform: scale(0);
}
#productsListNav .checkBoxList label > input[type=checkbox]:checked + span::after{
	opacity: 1;
    -webkit-transform: scale(1);
    -moz-transform: scale(1);
    -o-transform: scale(1);
    -ms-transform: scale(1);
    transform: scale(1);
}



/*** .dateSearch  *******************/
#productsListNav #dateSearch{
	height: calc(40 * (100vw / 320));
    font-size: calc(14 * (100vw / 320));
    background: url(/img/icon_calendar_red.svg) calc(100% - (10 * (100vw / 320))) center no-repeat;
    background-size: calc(24 * (100vw / 320)) auto;
	padding: calc(4 * (100vw / 320)) calc(5 * (100vw / 320));
	border-radius: 8px;
}
#productsListNav #dateSearch:placeholder-shown { font-size: calc(14 * (100vw / 320));}
#productsListNav #dateSearch::-webkit-input-placeholder { font-size: calc(14 * (100vw / 320));}
#productsListNav #dateSearch:-moz-placeholder { font-size: calc(14 * (100vw / 320));}
#productsListNav #dateSearch::-moz-placeholder { font-size: calc(14 * (100vw / 320));}
#productsListNav #dateSearch:-ms-input-placeholder { font-size: calc(14 * (100vw / 320));}



/*** colorList  ***********/
#productsListNav .colorCheckList{
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
    display: flex;
	-webkit-flex-wrap: wrap;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
    -webkit-box-align:stretch;
    -ms-flex-align:stretch;
    -webkit-align-items:stretch;
	align-items: stretch;
	-webkit-justify-content: left;
	justify-content: left;
	width: 100%;
}
#productsListNav .colorCheckList > li{
	display: block;
	width: 32%;
	margin-right: 2%;
	border: 1px solid #CCCCCC;
}
#productsListNav .colorCheckList > li:nth-of-type(3n){margin-right: 0;}
#productsListNav .colorCheckList > li:nth-of-type(n+4){margin-top: calc(10 * (100vw / 320));}

#productsListNav .colorCheckList > li > label{
	display: block;
	position: relative;
}

#productsListNav .colorCheckList > li > label > input[type=checkbox]{display: none;}

#productsListNav .colorCheckList > li > label > span{
	display: block;
	width: 100%;
	height: calc(40 * (100vw / 320));
	border: 2px solid #FFFFFF;
}
#productsListNav .colorCheckList > li > label > span.black{background-color: #232323;}
#productsListNav .colorCheckList > li > label > span.yellow{background-color: #ffeb7c; color: #000000;}
#productsListNav .colorCheckList > li > label > span.blue{background-color: #2558ff;}
#productsListNav .colorCheckList > li > label > span.red{background-color: #ed1616;}
#productsListNav .colorCheckList > li > label > span.brown{background-color: #6a482a;}
#productsListNav .colorCheckList > li > label > span.pink{background-color: #fb597b;}
#productsListNav .colorCheckList > li > label > span.purple{background-color: #d63ee8;}
#productsListNav .colorCheckList > li > label > span.green{background-color: #1a9b20;}
#productsListNav .colorCheckList > li > label > span.white{background-color: #ffffff; color: #000000;}
#productsListNav .colorCheckList > li > label > span.orange{background-color: #f78b00;}
#productsListNav .colorCheckList > li > label > span.other{background-color: #a7a7a7;}

#productsListNav .colorCheckList > li > label > span::after{
    content: '';
    display: block;
    width: calc(14 * (100vw / 320));
    height: calc(14 * (100vw / 320));
    background: url(/img/icon_checked.svg) center center no-repeat;
    background-size: calc(14 * (100vw / 320)) auto;
    position: absolute;
    left: 50%;
    top: 50%;
	margin-top: -5px;
	margin-left: -5px;
    opacity: 0;
    -webkit-transition: opacity 0.2s ease, transform 0.2s ease;
    -moz-transition: opacity 0.2s ease, transform 0.2s ease;
    -o-transition: opacity 0.2s ease, transform 0.2s ease;
    transition: opacity 0.2s ease, transform 0.2s ease;
    -webkit-transform: scale(0);
    -moz-transform: scale(0);
    -o-transform: scale(0);
    -ms-transform: scale(0);
    transform: scale(0);
}
#productsListNav .colorCheckList > li > label > span.yellow::after,
#productsListNav .colorCheckList > li > label > span.white::after{background-image: url(/img/icon_checked_black.svg);}

#productsListNav .colorCheckList > li > label > input[type=checkbox]:checked + span{ border-color: #df4d81;}
#productsListNav .colorCheckList > li > label > input[type=checkbox]:checked + span::after{
	opacity: 1;
    -webkit-transform: scale(1);
    -moz-transform: scale(1);
    -o-transform: scale(1);
    -ms-transform: scale(1);
    transform: scale(1);
}

#productsListNav .colorCheckList > li > label > span > span{
	display: block;
	font-size: calc(14 * (100vw / 320));
	line-height: calc(36 * (100vw / 320));
	text-align: center;
	color: #FFFFFF;
    -webkit-transition: opacity 0.2s ease, transform 0.2s ease;
    -moz-transition: opacity 0.2s ease, transform 0.2s ease;
    -o-transition: opacity 0.2s ease, transform 0.2s ease;
    transition: opacity 0.2s ease, transform 0.2s ease;
}
#productsListNav .colorCheckList > li > label > span.yellow > span,
#productsListNav .colorCheckList > li > label > span.white > span{color: #333333;}

#productsListNav .colorCheckList > li > label > input[type=checkbox]:checked + span > span{
	opacity: 0;
    -webkit-transform: scale(0);
    -moz-transform: scale(0);
    -o-transform: scale(0);
    -ms-transform: scale(0);
	transform: scale(0);
}


/*** textBoxList  ***********/
#productsListNav .textBoxList{}
#productsListNav .textBoxList > li{
	display: table;
	width: 100%;
	margin-bottom: calc(10 * (100vw / 320));
}
#productsListNav .textBoxList > li > span{
	display: table-cell;
	text-align: left;
	vertical-align: middle;
}

#productsListNav .textBoxList > li > span:nth-child(1),
#productsListNav .textBoxList > li > span:nth-child(3){width: 2em; white-space: nowrap;}

#productsListNav .textBoxList > li > span:nth-child(2){text-align: center; padding: 0 calc(10 * (100vw / 320));}
#productsListNav .textBoxList > li > span > input[type="number"]{
	border-radius: 8px;
	padding: 2px 5px;
}

#productsListNav .textBoxList > li > span > input::-webkit-outer-spin-button,
#productsListNav .textBoxList > li > span > input::-webkit-inner-spin-button {
    -webkit-appearance: none;
}

/**************************************
#productsDetailSection
**************************************/
#productsDetailSection{}

/**** detailMain *****************/

#productsDetailSection #detailMain{
	display: block;
	margin: 0 auto;
	padding: 0 3%;
}

#productsDetailSection #detailMain .mainTTL{
	display: block;
	width: 100%;
	margin-bottom: calc(15 * (100vw / 320));
}


/****  imgArea ************************/
#productsDetailSection #detailMain .imgArea{
	display: block;
	width: 60%;
	margin: 0 auto;
	padding-bottom: calc(10 * (100vw / 320));
}
#productsDetailSection #detailMain .imgArea img{display: block; width: 100%; height: auto;}

#productsDetailSection #detailMain .imgArea .procutBigImg{
	display: block;
    width: 80%;
    margin: 0;
    overflow: hidden;
    padding: 0;
    position: relative;
	float: left
}


#productsDetailSection #detailMain .imgArea .procutBigImg > .zoomIcon {
    display: block;
    height: calc(30 * (100vw / 320));
    width:  calc(30 * (100vw / 320));
	border-radius:  calc(15 * (100vw / 320));
    background-color: rgba(0,0,0,.6);
    background-image: url(/img/icon_zoom.svg);
    background-position: center center;
    background-repeat: no-repeat;
    background-size:  calc(20 * (100vw / 320)) auto;
    position: absolute;
    left: 5px;
    top: 5px;
}

#productsDetailSection #detailMain .imgArea .procutBigImg .bigImgWrap{
    z-index: 1;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-box-align: stretch;
    -ms-flex-align: stretch;
    -webkit-align-items: stretch;
    align-items: stretch;
    -webkit-transition-property: -webkit-transform;
    -moz-transition-property: -moz-transform;
    -o-transition-property: -o-transform;
    -ms-transition-property: -ms-transform;
    transition-property: transform;
    -webkit-box-sizing: content-box;
    -moz-box-sizing: content-box;
    box-sizing: content-box;
    -webkit-transform: translate3d(0,0,0);
    -moz-transform: translate3d(0,0,0);
    -o-transform: translate(0,0);
    -ms-transform: translate3d(0,0,0);
    transform: translate3d(0,0,0);
    width: 100%;
}
#productsDetailSection #detailMain .imgArea .procutBigImg .bigImgWrap > .bigImgSlide{
	display: block;
    -webkit-flex-shrink: 0;
    -ms-flex: 0 0 auto;
    flex-shrink: 0;
    width: 100%;
    position: relative;
}

#productsDetailSection #detailMain .imgArea .procutBigImg > .bigImgSlide > img{display: block; width: 100%; height: auto; cursor: pointer;}

#productsDetailSection #detailMain .imgArea > .procutBigImgThums{
	display: block;
	width: 15.5%;
	float: right;
}

#productsDetailSection #detailMain .imgArea > .procutBigImgThums > li{
	display: block;
	width: 100%;
	margin-bottom: calc(5 * (100vw / 320));
	border: 2px solid #ffffff;
	cursor: pointer;
	position: relative;
}
#productsDetailSection #detailMain .imgArea > .procutBigImgThums > li.current{border: 2px solid #a60d3f;}
#productsDetailSection #detailMain .imgArea > .procutBigImgThums > li.current:hover{opacity: 1;}

#productsDetailSection #detailMain .imgArea > .procutBigImgThums > li.current::after{
	content: '';
	display: block;
	width: calc(10 * (100vw / 320)); height: 100%;
	background: url(/img/fukidashi_red_right.svg) center center no-repeat;
	background-size: auto calc(10 * (100vw / 320));
	position: absolute;
	top: 0;
	left: calc(-10 * (100vw / 320));
}

#productsDetailSection #detailMain .imgArea > .procutBigImgThums > li > img{
	display: block; width: 100%; height: auto;
}


/****  textArea ************************/
#productsDetailSection #detailMain .textArea{
	display: block;
	width: 100%;
}

#productsDetailSection #detailMain .textArea .priceCart{
	display: block;
	width: 100%;
}

#productsDetailSection #detailMain .textArea .priceCart > .priceArea{
	display: block;
	text-align: center;
}

#productsDetailSection #detailMain .textArea .priceCart > .priceArea > li.rental{
	display: table;
	margin: 0 auto;
	margin-bottom: calc(5 * (100vw / 320));
}
#productsDetailSection #detailMain .textArea .priceCart > .priceArea > li.rental > span{
	display: table-cell;
	text-align: left;
	vertical-align: middle;
	font-size:  calc(16 * (100vw / 320));
}
#productsDetailSection #detailMain .textArea .priceCart > .priceArea > li.rental > span:nth-child(2){
	font-size:  calc(20 * (100vw / 320));
	font-weight: 700;
	padding: 0  calc(5 * (100vw / 320)) 0  calc(5 * (100vw / 320));
}

#productsDetailSection #detailMain .textArea .priceCart > .priceArea > li.sell{
	display: table;
	margin: 0 auto;
	margin-bottom: calc(10 * (100vw / 320));
}
#productsDetailSection #detailMain .textArea .priceCart > .priceArea > li.sell > span{
	display: table-cell;
	text-align: left;
	vertical-align: middle;
	font-size: calc(14 * (100vw / 320));
}
#productsDetailSection #detailMain .textArea .priceCart > .priceArea > li.sell > span:nth-child(2){ padding: 0 calc(5 * (100vw / 320)) 0 calc(5* (100vw / 320));}

#productsDetailSection #detailMain .textArea .priceCart > .priceArea > li.cuntry{
	font-size: calc(16 * (100vw / 320));
	padding-top: calc(10 * (100vw / 320));
	border-top: 1px dotted #CCCCCC;
}



#productsDetailSection #detailMain .textArea .priceCart > .cartArea{
	display: block;
	margin: calc(10 * (100vw / 320)) auto;
	text-align: center;
}

#productsDetailSection #detailMain .textArea .priceCart > .cartArea .btnCart{
	margin-bottom: calc(10 * (100vw / 320));
}
#productsDetailSection #detailMain .textArea .priceCart > .cartArea .btnCart > button{
	display: block;
    width: 100%;
    height: calc(52 * (100vw / 320));
    padding-left: calc(40 * (100vw / 320));
    background: url(/img/icon_cart.svg) 16px center no-repeat #d80051;
    background-size: calc(24 * (100vw / 320)) auto;
    font-family: 'NotoSerifJP-Regular';
    text-align: center;
    line-height: calc(50 * (100vw / 320));
    font-size: calc(20 * (100vw / 320));
    color: #FFFFFF;
    text-decoration: none;
    border-radius: 8px;
    box-shadow: 2px 2px 2px rgba(0,0,0,.2);
}

#productsDetailSection #detailMain .textArea .priceCart > .cartArea .btnReservation{}
#productsDetailSection #detailMain .textArea .priceCart > .cartArea .btnReservation > a{
	display: block;
    width: 90%;
	margin: 0 auto;
    height: calc(40 * (100vw / 320));
    padding-left: calc(30 * (100vw / 320));
    background: url(/img/icon_calendar_green.svg) calc(50 * (100vw / 320)) center no-repeat #ffffff;
    background-size: calc(24 * (100vw / 320)) auto;
    font-family: 'NotoSerifJP-Regular';
    text-align: center;
    line-height: calc(36 * (100vw / 320));
	border: 1px solid #CCCCCC;
    font-size: calc(18 * (100vw / 320));
    color: #000000;
    text-decoration: none;
    border-radius: 8px;
    box-shadow: 2px 2px 2px rgba(0,0,0,.2);
}



/** .helpLink ****************************/
#productsDetailSection #detailMain .textArea .helpLink{display: none;}


/** .detailInfo ****************************/
#productsDetailSection #detailMain .textArea .detailInfo{
	display: block;
	margin-top: calc(20 * (100vw / 320));
	border-bottom: 1px solid #CCCCCC;
}

#productsDetailSection #detailMain .textArea .detailInfo > dl{
	display: table;
	width: 100%;
	padding: calc(10 * (100vw / 320)) 0;
	border-top: 1px solid #CCCCCC;
}
#productsDetailSection #detailMain .textArea .detailInfo > dl:nth-of-type(n + 4){
	border-top: 1px dotted #CCCCCC;
}

#productsDetailSection #detailMain .textArea .detailInfo > dl > dt,
#productsDetailSection #detailMain .textArea .detailInfo > dl > dd{
	display: table-cell;
	vertical-align: middle;
	text-align: left;
	font-size: calc(14 * (100vw / 320));
	line-height: 1.6;
}
#productsDetailSection #detailMain .textArea .detailInfo > dl > dt{
	width: calc(100 * (100vw / 320));
	font-weight: 700;
}
#productsDetailSection #detailMain .textArea .detailInfo > dl > dt > span{display: block;}


/** .staffComment ****************************/
#productsDetailSection #detailMain .textArea .staffComment{
    margin-top: calc(10 * (100vw / 320));
}
#productsDetailSection #detailMain .textArea .staffComment > dl{
	display: block;
    width: 100%;
    background: #f2f2f2;
    padding: calc(10 * (100vw / 320));
}
#productsDetailSection #detailMain .textArea .staffComment > dl > dt{
	display: block;
    padding: calc(5 * (100vw / 320)) 0;
	color: #f0617f;
	font-size: calc(16 * (100vw / 320));
	font-weight: 700;
	line-height: 1.4;
	vertical-align: middle;
	text-align: center;
	letter-spacing: -0.06em;
}
#productsDetailSection #detailMain .textArea .staffComment > dl > dd{
	display: block;
	font-size: calc(14 * (100vw / 320));
	line-height: 1.6;
	text-align: left;
	vertical-align: middle;
}

			
/** .reservationStatus ****************************/

#productsDetailSection #reservationStatus{
	background: #f2f2f2;
	margin: calc(10 * (100vw / 320)) 0;
	padding: calc(20 * (100vw / 320)) 0 0;
}

#productsDetailSection #reservationStatus > .inner{
	margin: 0 auto;
	padding: 0;
}
#productsDetailSection #reservationStatus > .inner > .subttlArea{padding: 0 3%;}


#productsDetailSection #reservationStatus > .inner .statusInfo{
	background: #FFFFFF;
	padding: calc(20 * (100vw / 320)) 0;
}

#productsDetailSection #reservationStatus > .inner .statusInfo > ul{
	display: table;
	margin: 0 auto 3%;
}
#productsDetailSection #reservationStatus > .inner .statusInfo > ul > li{
	display: table-cell;
	font-size: calc(12 * (100vw / 320));
	letter-spacing: -0.1em;
}
#productsDetailSection #reservationStatus > .inner .statusInfo > ul > li::after{
	content: '\/';
	display: inline-block;
	padding: 0 calc(6 * (100vw / 320));
	color: #CCCCCC;
}
#productsDetailSection #reservationStatus > .inner .statusInfo > ul > li:nth-last-of-type(1)::after{display: none;}



#productsDetailSection #reservationStatus > .inner .calendarList{
	width: 100%;
	margin: 0 auto;
	overflow: hidden;
	padding: calc(5 * (100vw / 320)) calc(34 * (100vw / 320)) calc(20 * (100vw / 320));
	position: relative;
	background: #FFFFFF;
}

#productsDetailSection #reservationStatus > .inner .calendarList::before{
	content: '';
	display: block;
	width: calc(30 * (100vw / 320));
	height: 100%;
	background: -moz-linear-gradient(left, rgba(255,255,255,1) 0%, rgba(255,255,255,0) 100%);
	background: -webkit-linear-gradient(left, rgba(255,255,255,1) 0%,rgba(255,255,255,0) 100%);
	background: linear-gradient(to right, rgba(255,255,255,1) 0%,rgba(255,255,255,0) 100%);
	position: absolute;
	left: 0;
	top: 0;
	z-index: 1;
}
#productsDetailSection #reservationStatus > .inner .calendarList::after{
	content: '';
	display: block;
	width: calc(30 * (100vw / 320));
	height: 100%;
	background: -moz-linear-gradient(right, rgba(255,255,255,1) 0%, rgba(255,255,255,0) 100%);
	background: -webkit-linear-gradient(right, rgba(255,255,255,1) 0%,rgba(255,255,255,0) 100%);
	background: linear-gradient(to left, rgba(255,255,255,1) 0%,rgba(255,255,255,0) 100%);
	position: absolute;
	right: 0;
	top: 0;
	z-index: 1;
}

#productsDetailSection #reservationStatus > .inner .calendarList > ul.calendarListWrap{
	z-index: 1;
	display: -webkit-box;
	display: -moz-box;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: flex;
    -webkit-box-align:stretch;
    -ms-flex-align:stretch;
    -webkit-align-items:stretch;
	align-items: stretch;
	-webkit-transition-property: -webkit-transform;
	-moz-transition-property: -moz-transform;
	-o-transition-property: -o-transform;
	-ms-transition-property: -ms-transform;
	transition-property: transform;
	-webkit-box-sizing: content-box;
	-moz-box-sizing: content-box;
	box-sizing: content-box;
	-webkit-transform: translate3d(0,0,0);
	-moz-transform: translate3d(0,0,0);
	-o-transform: translate(0,0);
	-ms-transform: translate3d(0,0,0);
	transform: translate3d(0,0,0);
	width: 100%;
}

#productsDetailSection #reservationStatus > .inner .calendarList > ul.calendarListWrap > li.calendarListSlide{
	display: block;
	-webkit-flex-shrink: 0;
	-ms-flex: 0 0 auto;
	flex-shrink: 0;
	position: relative;
}


#productsDetailSection #reservationStatus > .inner .calendarList .calendarPrev {
	height: calc(14 * (100vw / 320));;
	margin-top: calc(18 * (100vw / 320));
	text-align: center;
	line-height: 1;
}


#productsDetailSection #reservationStatus > .inner .calendarList .calendarPrev,
#productsDetailSection #reservationStatus > .inner .calendarList .calendarNext{
	display: block;
	width: calc(30 * (100vw / 320)); height: 100%;
	margin: 0;
	position: absolute;
	top: 0;
	cursor: pointer;
	-webkit-transition: all 0.3s ease;
	-moz-transition: all 0.3s ease;
	-o-transition: all 0.3s ease;
	transition: all 0.3s ease;
	z-index: 2;
}
#productsDetailSection #reservationStatus > .inner .calendarList .calendarNext{
	background-image:url(/img/icon_arrow_brown_right.svg);
	background-position: center center;
	background-size: calc(20 * (100vw / 320)) auto;
	right: 0;
}
#productsDetailSection #reservationStatus > .inner .calendarList .calendarPrev{
	background-image:url(/img/icon_arrow_brown_left.svg);
	background-position: center center;
	background-size: calc(20 * (100vw / 320)) auto;
	left: 0;
}

#productsDetailSection #reservationStatus > .inner .calendarList .calendarPrev.swiper-button-disabled,
#productsDetailSection #reservationStatus > .inner .calendarList .calendarNext.swiper-button-disabled{opacity: 0; cursor: default;}


#productsDetailSection #reservationStatus > .cartArea{
	width: 100%;
	margin: 0 auto;
	padding: calc(20 * (100vw / 320)) 3% ;
}

#productsDetailSection #reservationStatus > .cartArea .btnCart > button {
    display: block;
    width: 100%;
    height: 52px;
    padding-left: 40px;
    background: url(/img/icon_cart.svg) 16px center no-repeat #d80051;
    background-size: 24px auto;
    font-family: 'NotoSerifJP-Regular';
    text-align: center;
    line-height: 50px;
    font-size: 20px;
    color: #FFFFFF;
    text-decoration: none;
    border-radius: 8px;
    box-shadow: 2px 2px 2px rgba(0,0,0,.2);
    -webkit-transition: box-shadow 0.2s ease,background-color 0.2s ease;
    -moz-transition: box-shadow 0.2s ease,background-color 0.2s ease;
    -o-transition: box-shadow 0.2s ease,background-color 0.2s ease;
    transition: box-shadow 0.2s ease,background-color 0.2s ease;
}
#productsDetailSection #reservationStatus > .cartArea .btnCart > button:hover {
    background-color: #eb4181;
    box-shadow: 2px 4px 2px rgba(0,0,0,.2);
}


/** .sizeGuideSection ****************************/

#productsDetailSection .sizeGuideSection{
	padding: calc(20 * (100vw / 320)) 3% 0;
}

#productsDetailSection  .sizeGuideSection > .inner{
	margin: 0 auto;
}

#productsDetailSection  .sizeGuideSection .sizeGuideBox{}

#productsDetailSection  .sizeGuideSection .sizeGuideBox > .kitakeImage{
	display: block;
	width: 50%;
	float: left;
}
#productsDetailSection  .sizeGuideSection .sizeGuideBox > .kitakeImage > img{
	display: block;
	width: 100%; height: auto;
	border: 1px solid #CCCCCC;
}

#productsDetailSection  .sizeGuideSection .sizeGuideBox > .guideText{
	display: block;
	width: 45%;
	float: right;
}
#productsDetailSection  .sizeGuideSection .sizeGuideBox > .guideText > dl{ font-size: calc(14 * (100vw / 320));}
#productsDetailSection  .sizeGuideSection .sizeGuideBox > .guideText > dl > dt{
	font-weight: 700;
	margin-bottom:  calc(5 * (100vw / 320));
}
#productsDetailSection  .sizeGuideSection .sizeGuideBox > .guideText > dl > dd{
	line-height: 1.2;
	margin-bottom: calc(15 * (100vw / 320));
}

#productsDetailSection  .sizeGuideSection .sizeGuideBox > .sizeTableArea{
	display: block;
	width: 100%;
	padding-top:  calc(10 * (100vw / 320));
	clear: both;
}

#productsDetailSection  .sizeGuideSection .sizeGuideBox > .sizeTableArea > .sizeTableThead{
	width: 100%;
	background: #8e3737;
	font-size:  calc(16 * (100vw / 320));
	line-height:  calc(20 * (100vw / 320));
	text-align: center;
	color: #FFFFFF;
}
#productsDetailSection  .sizeGuideSection .sizeGuideBox > .sizeTableArea > .sizeTable{
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
    display: flex;
	-webkit-flex-wrap: wrap;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
    -webkit-box-align:stretch;
    -ms-flex-align:stretch;
    -webkit-align-items:stretch;
	align-items: stretch;
	-webkit-justify-content: left;
	justify-content: left;
	width: 100%;
	margin: 0 auto calc(10 * (100vw / 320));
	border: 1px solid #CCCCCC;
}
#productsDetailSection  .sizeGuideSection .sizeGuideBox > .sizeTableArea > .sizeTable > dl{
	display: table;
	width: 50%;
	text-align: center;
	vertical-align: middle;
	border-right: 1px solid #CCCCCC;
	border-bottom: 1px solid #CCCCCC;
}
#productsDetailSection  .sizeGuideSection .sizeGuideBox > .sizeTableArea > .sizeTable > dl:nth-of-type(2n){border-right: none;}
#productsDetailSection  .sizeGuideSection .sizeGuideBox > .sizeTableArea > .sizeTable > dl:nth-last-of-type(1){border-bottom: none;}

#productsDetailSection  .sizeGuideSection .sizeGuideBox > .sizeTableArea > .sizeTable > dl > dt{
	display: table-cell;
	width: 4em;
	font-size:  calc(14 * (100vw / 320));
	line-height:  calc(30 * (100vw / 320));
	border-right: 1px solid #CCCCCC;
	background: #f1f1f1;
	vertical-align: middle;
	text-align: center;
}
#productsDetailSection  .sizeGuideSection .sizeGuideBox > .sizeTableArea > .sizeTable > dl > dd{
	display: table-cell;
	font-size:  calc(14 * (100vw / 320));
	line-height:  calc(30 * (100vw / 320));
	vertical-align: middle;
	text-align: center;
}

#productsDetailSection  .sizeGuideSection .sizeGuideBox > .sizeTableArea .caution{
	display: block;
}
#productsDetailSection  .sizeGuideSection .sizeGuideBox > .sizeTableArea .caution > li{
	display: block;
	font-size: calc(14 * (100vw / 320));
	padding-left: 1em;
	text-indent: -1em;
	line-height: 1.4;
	margin-bottom: calc(5 * (100vw / 320));
}

/**************************************
.formSection
**************************************/
.formSection{
	display: block;
	margin-bottom: calc(30 * (100vw / 320));
}

.formSection .subttl{
	font-size: calc(15 * (100vw / 320));
	margin-bottom: calc(10 * (100vw / 320));
	line-height: 1.2;
	font-weight: 700;
}

.formSection .formLede{
	font-size: calc(14 * (100vw / 320));
	line-height: 1.4;
	margin-bottom: calc(10 * (100vw / 320));
}

.formSection p + ul.cautionList{padding-top: calc(10 * (100vw / 320));}
.formSection ul.cautionList li{
	font-size: calc(12 * (100vw / 320));
	margin-bottom: calc(5 * (100vw / 320));
	padding-left: 1em;
	text-indent: -1em;
	color: #c71616;
}


.formTable{
	display: block;
}

.formTable > dl{
	display: block;
	width: 100%;
	margin: 0 auto calc(5 * (100vw / 320));
	border: 1px solid #CCCCCC;
}
.formTable > dl:nth-last-of-type(1){margin-bottom: 0;}

.formTable > dl > dt,
.formTable > dl > dd{
	display: block;
	vertical-align: middle;
	text-align: left;
}

.formTable > dl > dt{
	padding: calc(10 * (100vw / 320)) calc(10 * (100vw / 320));
	background: #efefef;
	font-size: calc(14 * (100vw / 320));
	font-weight: 500;
	line-height: 1.4;
	position: relative;
	text-align: left;
}
.formTable > dl.required > dt{
	padding-right: calc(50 * (100vw / 320));
}
.formTable > dl.required > dt::after{
	content: '\必須';
	display: block;
	width: calc(50 * (100vw / 320)); height: calc(20 * (100vw / 320));
	line-height: calc(20 * (100vw / 320));
	font-size: calc(14 * (100vw / 320));
	border-radius: 4px;
	text-align: center;
	background: #ac0726;
	color: #FFFFFF;
	position: absolute;
	right: calc(10 * (100vw / 320));
	top: calc(10 * (100vw / 320));
}

.formTable > dl > dd{
	padding: calc(20 * (100vw / 320)) calc(10 * (100vw / 320));
	font-size: calc(14 * (100vw / 320));
	line-height: 1.4;
}

.formTable .guideText{
	padding-top: calc(10 * (100vw / 320));
	color: #585858;
}
.formTable .errMsg{
	margin-top:  calc(15 * (100vw / 320));
	padding-left: calc(20 * (100vw / 320));
	color: #c71616;
	font-weight: 500;
	font-weight: 700; 
	background: url(/img/form/icon_err.svg) left  calc(2 * (100vw / 320)) no-repeat;
	background-size:  calc(15 * (100vw / 320)) auto;
}

.agreeBox .errMsg{
	font-size: calc(14 * (100vw / 320));
	margin-top:  calc(15 * (100vw / 320));
	padding-left: calc(20 * (100vw / 320));
	color: #c71616;
	font-weight: 500;
	font-weight: 700; 
	line-height: 1.4;
	background: url(/img/form/icon_err.svg) left  calc(2 * (100vw / 320)) no-repeat;
	background-size:  calc(15 * (100vw / 320)) auto;
}

/*** formInner List******************/
.formTable > dl > dd ul.nomalList{}
.formTable > dl > dd ul.nomalList > li{
	margin-bottom:  calc(5 * (100vw / 320));
}

.formTable > dl > dd ul.nomalList li::before{
	content:'\・';
	padding-right: calc(4 * (100vw / 320));
}

.formTable > dl > dd .adderBox{
	display: block;
}

.formTable > dl > dd .adderBox > li{
	display: block;
	margin-bottom:  calc(15 * (100vw / 320));
}
.formTable > dl > dd .adderBox > li:nth-last-of-type(1){margin-bottom: 0;}

.formTable > dl > dd .adderBox > li > span,
.formTable > dl > dd .adderBox > li > label{
	display: block;
	vertical-align: middle;
	text-align: left;
}
.formTable > dl > dd .adderBox > li > span{
	margin-bottom:  calc(5 * (100vw / 320));
}


.formTable > dl > dd ul.mailAdderBox{}
.formTable > dl > dd ul.mailAdderBox > li{
	margin-bottom:  calc(15 * (100vw / 320));
}
.formTable > dl > dd ul.mailAdderBox > li:nth-last-of-type(1){margin-bottom: 0;}



/*** formInner input******************/
.formTable .calendar{
    background: url(/img/icon_calendar_red.svg) calc(100% - (10 * (100vw / 320))) center no-repeat;
    background-size: calc(24 * (100vw / 320)) auto;
}


/*** formInner checkBox******************/
label.checkBox{
    display: inline-block;
    padding-left: calc(30 * (100vw / 320));
    position: relative;
	line-height: 1.2;
}
label.checkBox::before{
	content: '';
	display: block;
	width: calc(20 * (100vw / 320)); height: calc(20 * (100vw / 320));
	background: #FFFFFF;
	border: 1px solid #CCCCCC;
	box-shadow:0 1px 2px 0 rgba(0,0,0,0.2) inset;
	border-radius: 4px;
	position: absolute;
	left: 0;
	top: 0;
}

label.checkBox > input[type=checkbox] {display: none;}
label.checkBox > input[type=checkbox] + span{ display: inline-block; vertical-align: middle; line-height: calc(20 * (100vw / 320));}
label.checkBox > input[type=checkbox] + span::after {
    content: '';
    display: block;
    width: calc(20 * (100vw / 320));
    height: calc(20 * (100vw / 320));
	border-radius: 4px;
    background: url(/img/icon_checked.svg) center center no-repeat #df4d81;
    background-size: calc(12 * (100vw / 320)) auto;
    position: absolute;
    left: 0;
    top: 0;
    opacity: 0;
    -webkit-transition: opacity 0.2s ease, transform 0.2s ease;
    -moz-transition: opacity 0.2s ease, transform 0.2s ease;
    -o-transition: opacity 0.2s ease, transform 0.2s ease;
    transition: opacity 0.2s ease, transform 0.2s ease;
    -webkit-transform: scale(0);
    -moz-transform: scale(0);
    -o-transform: scale(0);
    -ms-transform: scale(0);
    transform: scale(0);
}
label.checkBox > input[type=checkbox]:checked + span::after{
	opacity: 1;
    -webkit-transform: scale(1);
    -moz-transform: scale(1);
    -o-transform: scale(1);
    -ms-transform: scale(1);
    transform: scale(1);
}

/*** block checkBox******************/
label.checkBoxBlock{
    display: block;
    padding:calc(20 * (100vw / 320)) calc(20 * (100vw / 320)) calc(20 * (100vw / 320)) calc(50 * (100vw / 320));
    position: relative;
	line-height: 1.2;
    cursor: pointer;
    -webkit-transition: opacity 0.2s ease;
    -moz-transition: opacity 0.2s ease;
    -o-transition: opacity 0.2s ease;
    transition: opacity 0.2s ease;
}
label.checkBoxBlock::before{
	content: '';
	display: block;
	width: calc(20 * (100vw / 320)); height: calc(20 * (100vw / 320));
	background: #FFFFFF;
	border: 1px solid #CCCCCC;
	box-shadow:0 1px 2px 0 rgba(0,0,0,0.2) inset;
	border-radius: 4px;
	position: absolute;
	left: calc(20 * (100vw / 320));
	top: 50%;
	margin-top: calc(-10 * (100vw / 320));
}
label.checkBoxBlock:hover{opacity: .6;}

label.checkBoxBlock > input[type=checkbox] {display: none;}
label.checkBoxBlock > input[type=checkbox] + span{ display: block; line-height: calc(20 * (100vw / 320));}
label.checkBoxBlock > input[type=checkbox] + span::after {
    content: '';
    display: block;
    width: calc(20 * (100vw / 320));
    height: calc(20 * (100vw / 320));
	border-radius: 4px;
    background: url(/img/icon_checked.svg) center center no-repeat #df4d81;
    background-size: calc(12 * (100vw / 320)) auto;
    position: absolute;
	left: calc(20 * (100vw / 320));
	top: 50%;
	margin-top:calc(-10 * (100vw / 320));
    opacity: 0;
    -webkit-transition: opacity 0.2s ease, transform 0.2s ease;
    -moz-transition: opacity 0.2s ease, transform 0.2s ease;
    -o-transition: opacity 0.2s ease, transform 0.2s ease;
    transition: opacity 0.2s ease, transform 0.2s ease;
    -webkit-transform: scale(0);
    -moz-transform: scale(0);
    -o-transform: scale(0);
    -ms-transform: scale(0);
    transform: scale(0);
}
label.checkBoxBlock > input[type=checkbox]:checked + span::after{
	opacity: 1;
    -webkit-transform: scale(1);
    -moz-transform: scale(1);
    -o-transform: scale(1);
    -ms-transform: scale(1);
    transform: scale(1);
}



/*** formInner radio******************/
.formTable  ul.radioList > li{
	margin-bottom: calc(10 * (100vw / 320))
}
.formTable  ul.radioList > li:nth-last-of-type(1){
	margin-bottom: 0;
}

.formTable  ul.radioList > li label{
	display: block;
	width: 100%;
	border: 1px dotted #CCCCCC;
	border-radius: 4px;
	padding: calc(20 * (100vw / 320)) 0 calc(20 * (100vw / 320)) calc(40 * (100vw / 320));
	position: relative;
	cursor: pointer;
    -webkit-transition: opacity 0.2s ease;
    -moz-transition: opacity 0.2s ease;
    -o-transition: opacity 0.2s ease;
    transition: opacity  0.2s ease;
}
.formTable  ul.radioList > li label::before{
	content: '';
	display: block;
	width: calc(20 * (100vw / 320)); height: calc(20 * (100vw / 320));
	background: #FFFFFF;
	border-radius: calc(10 * (100vw / 320));
	border: 1px solid #CCCCCC;
	box-shadow: 1px 1px 4px rgba(0,0,0,.2) inset;
	position: absolute;
	left: calc(10 * (100vw / 320));
	top: 50%;
	margin-top: calc(-10 * (100vw / 320));
}

.formTable  ul.radioList > li label > input[type=radio]{display: none;}

.formTable  ul.radioList > li label > .selectDetail{
	display: table;
	width: 100%;
}

.formTable  ul.radioList > li label > .selectDetail > .inner{
	display: table-cell;
	vertical-align: middle;
	text-align: left;
	white-space: nowrap;
	padding-right: calc(10 * (100vw / 320));
}
.formTable  ul.radioList > li label > .selectDetail > .caution{
	display: table-cell;
	padding-left: calc(10 * (100vw / 320));
	border-left: 1px solid #CCCCCC;
	text-align: left;
	vertical-align: middle;
	font-size:calc(12 * (100vw / 320));
}

.formTable  ul.radioList > li label > input[type=radio] + .selectDetail::after{
	content: '';
	display: block;
	width: calc(12 * (100vw / 320)); height: calc(12 * (100vw / 320));
	background:  #df4d81;
	border-radius: calc(6 * (100vw / 320));
	position: absolute;
	left: calc(14 * (100vw / 320));
	top: 50%;
	margin-top: calc(-6 * (100vw / 320));
	opacity: 0;
    -webkit-transition: opacity 0.2s ease, transform  0.2s ease;
    -moz-transition: opacity 0.2s ease, transform  0.2s ease;
    -o-transition: opacity 0.2s ease, transform  0.2s ease;
    transition: opacity  0.2s ease, transform  0.2s ease;
    -webkit-transform: scale(0);
    -moz-transform: scale(0);
    -o-transform: scale(0);
    -ms-transform: scale(0);
    transform: scale(0);
}

.formTable  ul.radioList > li label > input[type=radio]:checked + .selectDetail::after{
	opacity: 1;
    -webkit-transform: scale(1);
    -moz-transform: scale(1);
    -o-transform: scale(1);
    -ms-transform: scale(1);
    transform: scale(1);
}


/*** formInner radioListInline******************/
.formTable  ul.radioListInline > li{
	display: block;
	margin-bottom: calc(5 * (100vw / 320));
}
.formTable  ul.radioListInline > li:nth-last-of-type(1){
	padding-right: 0;
}

.formTable  ul.radioListInline > li label{
	display: inline-block;
	width: 100%;
	padding: calc(5 * (100vw / 320)) 0 calc(5 * (100vw / 320)) calc(30 * (100vw / 320));
	position: relative;
	cursor: pointer;
    -webkit-transition: opacity 0.2s ease;
    -moz-transition: opacity 0.2s ease;
    -o-transition: opacity 0.2s ease;
    transition: opacity  0.2s ease;
}
.formTable  ul.radioListInline > li label::before{
	content: '';
	display: block;
	width: calc(20 * (100vw / 320)); height: calc(20 * (100vw / 320));
	box-shadow: 1px 1px 4px rgba(0,0,0,.2) inset;
	background: #FFFFFF;
	border-radius: calc(10 * (100vw / 320));
	border: 1px solid #d2d2d2;
	position: absolute;
	left: 0;
	top: 50%;
	margin-top: calc(-10 * (100vw / 320));
}

.formTable  ul.radioListInline > li label > input[type=radio]{display: none;}
.formTable  ul.radioListInline > li label > .span{}

.formTable  ul.radioListInline > li label > input[type=radio] + span::after{
	content: '';
	display: block;
	width: calc(12 * (100vw / 320)); height: calc(12 * (100vw / 320));
	background:  #df4d81;
	border-radius: calc(6 * (100vw / 320));
	position: absolute;
	left: calc(4 * (100vw / 320));
	top: 50%;
	margin-top: calc(-6 * (100vw / 320));
	opacity: 0;
    -webkit-transition: opacity 0.2s ease, transform  0.2s ease;
    -moz-transition: opacity 0.2s ease, transform  0.2s ease;
    -o-transition: opacity 0.2s ease, transform  0.2s ease;
    transition: opacity  0.2s ease, transform  0.2s ease;
    -webkit-transform: scale(0);
    -moz-transform: scale(0);
    -o-transform: scale(0);
    -ms-transform: scale(0);
    transform: scale(0);
}

.formTable  ul.radioListInline > li label > input[type=radio]:checked + span::after{
	opacity: 1;
    -webkit-transform: scale(1);
    -moz-transform: scale(1);
    -o-transform: scale(1);
    -ms-transform: scale(1);
    transform: scale(1);
}

/**************************************
outer Form
**************************************/
.formTable + .adderCopy{
	display: block;
	margin-top: calc(10 * (100vw / 320));
	border: 1px solid #CCCCCC;
	border-radius: 8px;
	font-size: calc(14 * (100vw / 320));
}

.agreeBox{
	display: block;
	width: 100%;
	margin: calc(-20 * (100vw / 320)) auto calc(30 * (100vw / 320));
}
.agreeBox > dl{
	display: block;
	width: 100%;
	margin: 0 auto;
	font-size: calc(14 * (100vw / 320));
	border: 4px double #CCCCCC;
	line-height: 1.4;
}

.agreeBox > dl > dt{
	display: block;
	text-align: left;
	padding: calc(10 * (100vw / 320));
	background: #efefef;
}
.agreeBox > dl > dt > a{text-decoration: underline; color: #000000;}

.agreeBox > dl > dd{
	display: block;
	vertical-align: middle;
	text-align: left;
}

/**************************************
form item
**************************************/
.btnFormNext > button,
.btnFormNext > a{
	display: block;
    width: 100%;
    height: calc(52 * (100vw / 320));
    background: url(/img/icon_arrow_white_right.svg) calc(100% - (10 * (100vw / 320))) center no-repeat #d80051;
    background-size: calc(10 * (100vw / 320)) auto;
    font-family: 'NotoSerifJP-Regular';
    text-align: center;
    line-height: calc(50 * (100vw / 320));
    font-size: calc(18 * (100vw / 320));
    color: #FFFFFF;
    text-decoration: none;
    border-radius: 8px;
    box-shadow: 2px 2px 2px rgba(0,0,0,.2);
}

.btnFormNext > button:disabled, .btnFormNext > a:disabled {
    box-shadow: none;
    background: #CCCCCC;
    cursor: default;
}

.btnFormBack > button,
.btnFormBack > a{
	display: block;
    width: 100%;
    padding: 0 0 0 calc(18 * (100vw / 320));
    height: calc(42 * (100vw / 320));
    font-size: calc(14 * (100vw / 320));
    line-height: calc(42 * (100vw / 320));
    color: #000000;
    text-align: center;
    text-decoration: none;
    background: url(/img/icon_arrow_brown_left.svg) calc(10 * (100vw / 320)) center no-repeat #efefef;
    background-size: calc(10 * (100vw / 320)) auto;
    border-radius: 8px;
    box-shadow: 2px 2px 2px rgba(0,0,0,.2);
}


.formBtnArea{
	display: block;
}
.formBtnArea > ul{display: block; margin: 0 auto;}

.formBtnArea > ul > li:nth-of-type(1){
	margin-bottom: calc(15 * (100vw / 320));
}
.formBtnArea > ul > li:nth-of-type(2){
	max-width: 60%;
	margin: 0 auto 0 0;
}
.formBtnArea > ul > li:nth-last-of-type(1){margin-bottom: 0;}



/**************************************
#cartSection
**************************************/
#cartSection{
	display: block;
	margin: 0 auto;
	padding: calc(10 * (100vw / 320)) 3%;
}

/** .noChargeLimit ****************************/
#cartSection .noChargeLimit{
	display: block;
	margin: 0 auto calc(10 * (100vw / 320)) auto;
}

#cartSection .noChargeLimit > dl{
	display: block;
	text-align: center;
	border: 4px double #d50031;
	padding: calc(10 * (100vw / 320))  0;
}
#cartSection .noChargeLimit > dl > dt{
	font-size: calc(16 * (100vw / 320));
    font-family: 'NotoSerifJP-Regular';
    text-align: center;
	margin-bottom: calc(10 * (100vw / 320));
}
#cartSection .noChargeLimit > dl > dt > span{ color: #d50031;}

#cartSection .noChargeLimit > dl > dd{
	display: block;
	text-align: center;
	font-size: calc(12 * (100vw / 320));
}

/** .cartHead ****************************/
#cartSection .cartHead{
	display: block;
	width: 100%;
	margin: 0 auto calc(20 * (100vw / 320)) auto;
}

#cartSection .cartHead > .text{
	display: block;
	text-align: left;
	vertical-align: middle;
}
#cartSection .cartHead > .text .lede{
	font-size:calc(14 * (100vw / 320));
	margin-bottom: calc(10 * (100vw / 320)) ;
	line-height: 1.4;
	text-align: center;
}


#cartSection .cartHead > .btnFormNext{
	display: none;
}

/** #cartTable ****************************/
#cartSection #cartTable{
	display: block;
	margin-bottom: calc(10 * (100vw / 320));
}

#cartSection #cartTable .cartTableHead{display: none;}


#cartSection #cartTable > ul{display: block;}

#cartSection #cartTable > ul > li{
	display: block;
	width: 100%;
	margin-bottom: calc(10 * (100vw / 320));
	padding: calc(5 * (100vw / 320)) 0;
	border: 1px solid #CCCCCC;
	position: relative;
}


#cartSection #cartTable > ul > li > .itemInfo{display: block; padding: 0 calc(5 * (100vw / 320));}
#cartSection #cartTable > ul > li > .itemInfo > .inner{
	display: table;
	width: 100%;
}

#cartSection #cartTable > ul > li > .itemInfo > .inner > .img{
	display: table-cell;
	width: calc(45 * (100vw / 320));
	vertical-align: top;
}
#cartSection #cartTable > ul > li > .itemInfo > .inner > .img > a{display: block;}
#cartSection #cartTable > ul > li > .itemInfo > .inner > .img img{display: block; width: 100%; height: auto;}

#cartSection #cartTable > ul > li > .itemInfo > .inner > .text{
	display: table-cell;
	width: calc(100% - 45px);
	padding-left: calc(10 * (100vw / 320));
	padding-bottom: calc(20 * (100vw / 320));
	vertical-align: middle;
	text-align: left;
}

#cartSection #cartTable > ul > li > .itemInfo > .inner > .text > .nameArea{
	display: table;
	width: 100%;
	border-bottom: 1px solid #CCCCCC;
	padding-bottom:  calc(10 * (100vw / 320));
}

#cartSection #cartTable > ul > li > .itemInfo > .inner > .text > .nameArea > .category{
	display: table-cell;
	padding: calc(5 * (100vw / 320)) 0;
	width: 7em;
	background: #2f2f2f;
	color: #FFFFFF;
	border-radius: 8px;
	font-size: calc(10 * (100vw / 320));
	font-weight: 700;
	text-align: center;
	vertical-align: middle;
}
#cartSection #cartTable > ul > li > .itemInfo > .inner > .text > .nameArea > .category.latin{ background: #d62c7c; }
#cartSection #cartTable > ul > li > .itemInfo > .inner > .text > .nameArea > .category > span{display: none;}

#cartSection #cartTable > ul > li > .itemInfo > .inner > .text > .nameArea > .name{
	display: table-cell;
	padding:0 0 0 calc(5 * (100vw / 320));
	font-size: calc(14 * (100vw / 320));
	vertical-align: middle;
	text-align: left;
}

#cartSection #cartTable > ul > li > .itemInfo > .inner > .text > .options{display: none;}



/*** priceArea  *********/

#cartSection #cartTable > ul > li > .priceArea{
	display: block;
}

#cartSection #cartTable > ul > li > .priceArea > .price{
	display: table;
	position: absolute;
	margin: 0 auto 0 auto;
	right:  calc(15 * (100vw / 320));
	bottom: calc(10 * (100vw / 320));
}

#cartSection #cartTable > ul > li > .priceArea > .price > span{
	display: table-cell;
	vertical-align: middle;
	text-align: right;
}
#cartSection #cartTable > ul > li > .priceArea > .price > span:nth-of-type(1){
	padding-right: calc(5 * (100vw / 320));
	font-weight: 700;
	font-size: calc(14 * (100vw / 320));
}
#cartSection #cartTable > ul > li > .priceArea > .price > span:nth-of-type(2){
	font-size: calc(12 * (100vw / 320));
}

#cartSection #cartTable > ul > li > .priceArea  > .btnRemoveCart{
	position: absolute;
	width: calc(25 * (100vw / 320));
	right: 0;
	top: 0;
}

#cartSection #cartTable > ul > li > .priceArea > .btnRemoveCart > button {
    display: block;
    width: calc(25 * (100vw / 320));
    height: calc(25 * (100vw / 320));
    color: #000000;
    text-align: center;
    text-decoration: none;
    /*background: url(/img/icon_close.svg) center center no-repeat #efefef;*/
    background: #efefef;
    background-size: 8px auto;
}
#cartSection #cartTable > ul > li > .priceArea > .btnRemoveCart > button > span{display: none;}



/*** cartTotal  *********/
#cartSection #cartTable .cartTotal{padding-top: calc(5 * (100vw / 320));}
#cartSection #cartTable .cartTotal > ul {
	display: table;
	width: 100%;
	border: 4px double #CCCCCC;
	padding: calc(5 * (100vw / 320)) 0;
}
#cartSection #cartTable .cartTotal >  ul > li{
	display: table-cell;
	vertical-align: middle;
	text-align: right;
	font-size: calc(16 * (100vw / 320));
	padding-right: calc(20 * (100vw / 320));
}

#cartSection #cartTable .cartTotal >  ul > li.totalPrice{
	padding: calc(15 * (100vw / 320)) calc(10 * (100vw / 320));
	border-left: 1px solid #CCCCCC;
	text-align: center;
}
#cartSection #cartTable .cartTotal >  ul > li.totalPrice > span{display: table; margin: 0 0 0 auto;}

#cartSection #cartTable .cartTotal >  ul > li.totalPrice > span > span:nth-of-type(1){
	display: table-cell;
	vertical-align: middle;
	padding-right: calc(5 * (100vw / 320));
	font-weight: 700;
	font-size: calc(16 * (100vw / 320));
}
#cartSection #cartTable .cartTotal >  ul > li.totalPrice > span > span:nth-of-type(2){
	display: table-cell;
	vertical-align: middle;
	font-size: calc(12 * (100vw / 320));
	font-weight: normal;
}


#cartSection #cartTable .caution{
	font-size: calc(12 * (100vw / 320));
	padding-left: 1em;
	text-indent: -1em;
	line-height: 1.6;
	padding-top:calc(15 * (100vw / 320));
}

/*** .cartNoItem  *********/
#cartSection .cartNoItem{
	display: block;
	width: 100%;
	text-align: center;
	padding:  calc(20 * (100vw / 320));
	margin:  calc(10 * (100vw / 320)) auto;
	border: 4px double #CCCCCC;
}
#cartSection .cartNoItem > .lede{
	font-size:  calc(16 * (100vw / 320));
	text-align: center;
	margin-bottom: calc(20 * (100vw / 320));
	line-height: 1.4;
}

#cartSection .cartNoItem > .btnFormBack{max-width: 80%; margin: 0 auto;}

/**************************************
#entrySection
**************************************/
#entrySection{
	display: block;
	margin: 0 auto;
	padding:calc(15 * (100vw / 320)) 3% calc(20 * (100vw / 320));
}

#entrySection .ledeBox{
	display: block;
	margin-bottom: calc(20 * (100vw / 320));
}
#entrySection .ledeBox > p{
	font-size: calc(14 * (100vw / 320));
	line-height: 1.4;
}

#entrySection .ledeBox > p.caution{
	padding-top: calc(10 * (100vw / 320));
	padding-left: 1em;
	text-indent: -1em;
	font-size: calc(14 * (100vw / 320));
}


/**  #entrySection .contactTEL  ***********************************/

#entrySection .contactTEL{
	display: block;
	width: 100%;
	text-align: center;
	padding: calc(10 * (100vw / 320)) calc(10 * (100vw / 320)) 0 ;
	border: 4px double #CCCCCC;
	margin-bottom: calc(30 * (100vw / 320));
}

#entrySection .contactTEL > .subttl{
	font-size: calc(16 * (100vw / 320));
	font-weight: 700;
	margin-bottom: calc(10 * (100vw / 320));
}
#entrySection .contactTEL > .lede{
	font-size: calc(14 * (100vw / 320));
	text-align: center;
	line-height: 1.4;
}


/**  completeBox  ***********************************/

#entrySection .completeBox{
	display: block;
	width: 100%;
	text-align: center;
	padding: calc(10 * (100vw / 320));
	margin: calc(15 * (100vw / 320)) auto;
	border: 4px double #CCCCCC;
	margin-bottom: calc(20 * (100vw / 320))
}

#entrySection .completeBox > h3{
	font-size: calc(16 * (100vw / 320));
	font-weight: 700;
	text-align: center;
	margin-bottom: 20px;
	line-height: 1.4;
}

#entrySection .completeBox > .lede{
	font-size: calc(14 * (100vw / 320));
	margin-bottom: calc(15 * (100vw / 320));
	text-align: left;
	line-height: 1.4;
}



/**  telFaxBox  ***********************************/
#entrySection .telFaxBox{
	margin-top: calc(15 * (100vw / 320));
	padding: calc(20 * (100vw / 320)) 0 ;
	border-top: 1px dotted #CCCCCC;
}
#entrySection .telFaxBox > h4{
	font-size: calc(14 * (100vw / 320));
	font-weight: 700;
	padding-bottom: calc(10 * (100vw / 320));
}

#entrySection .telFaxBox > .contactList{
	display: block;
	margin: 0 auto;
	background: #FFFFFF;
}

#entrySection .telFaxBox > .contactList > li{}
#entrySection .telFaxBox > .contactList > li:first-child{border-bottom: calc(15 * (100vw / 320)) solid #ffffff;}

#entrySection .telFaxBox > .contactList > li > .tel{
	display: table;
}

#entrySection .telFaxBox > .contactList > li > .tel > .icon{
	display: block;
	width: calc(45 * (100vw / 320));
	border: 2px solid #cccccc;
	border-radius: 8px;
	background: url(/img/icon_tel.svg) center calc(2 * (100vw / 320)) no-repeat;
	background-size: auto calc(24 * (100vw / 320));
	padding: calc(28 * (100vw / 320)) 0 calc(4 * (100vw / 320)) 0;
	font-family: 'NotoSerifJP-Regular';
	text-align: center;
	font-size: calc(14 * (100vw / 320));
}
#entrySection .telFaxBox > .contactList > li > .tel > .num{
	display: table-cell;
	text-align: left;
	vertical-align: middle;
	padding-left: calc(10 * (100vw / 320));
}
#entrySection .telFaxBox > .contactList > li > .tel > .num > a{
	display: block;
	font-family: 'NotoSerifJP-Regular';
	color: #000000;
	text-decoration: none;
	cursor: default;
	font-size: calc(24 * (100vw / 320));
	letter-spacing: 0.08em;
	margin-bottom: calc(4 * (100vw / 320));
}
#entrySection .telFaxBox > .contactList > li > .tel > .num > span{
	display: block;
	font-size: calc(12 * (100vw / 320));
	letter-spacing: 0.02em;
}

#entrySection .telFaxBox > .contactList > li > .fax{
	display: table;
}

#entrySection .telFaxBox > .contactList > li > .fax > .icon{
	display: block;
	width: calc(45 * (100vw / 320));
	border: 2px solid #cccccc;
	border-radius: 8px;
	background: url(/img/icon_fax.svg) center calc(4 * (100vw / 320)) no-repeat;
	background-size: auto calc(20 * (100vw / 320));
	padding: calc(28 * (100vw / 320)) 0 calc(4 * (100vw / 320)) 0;
	font-family: 'NotoSerifJP-Regular';
	text-align: center;
	font-size: calc(14 * (100vw / 320));
}
#entrySection .telFaxBox > .contactList > li > .fax > .num{
	display: table-cell;
	text-align: left;
	vertical-align: middle;
	padding-left: calc(10 * (100vw / 320));
}
#entrySection .telFaxBox > .contactList > li > .fax > .num > p{
	display: block;
	font-family: 'NotoSerifJP-Regular';
	color: #000000;
	font-size: calc(24 * (100vw / 320));
	letter-spacing: 0.08em;
	margin-bottom: calc(4 * (100vw / 320));
}
#entrySection .telFaxBox > .contactList > li > .fax > .num > a.pdfLink{
	display: inline-block;
	font-size: calc(10 * (100vw / 320));
	color: #000000;
	padding-left: calc(20 * (100vw / 320));
	position: relative;
	line-height: 1.2;
}
#entrySection .telFaxBox > .contactList > li > .fax > .num > a.pdfLink::before{
	content: '';
	display:block;
	width: calc(16 * (100vw / 320)); height: calc(16 * (100vw / 320));
	background: url(/img/icon_pdf.png) 0 0 no-repeat;
	background-size:  calc(16 * (100vw / 320)) auto;
	position: absolute;
	left: 0;
	top: 0;
}



/**************************************
#guideSection
**************************************/
#guideSection{
	display: block;
	margin: 0 auto;
	padding:calc(15 * (100vw / 320)) 3% calc(20 * (100vw / 320));
}

#guideSection .subttl{
    font-size: calc(16 * (100vw / 320));
    margin-bottom: calc(10 * (100vw / 320));
    line-height: 1.2;
    font-weight: 700;
}

#guideSection .subttlBorder{
    font-size: calc(16 * (100vw / 320));
    margin-bottom: calc(10 * (100vw / 320));
	padding-bottom: calc(10 * (100vw / 320));
	border-bottom: 1px solid #CCCCCC;
	font-weight: 700;
    line-height: 1.4;
}

#guideSection .lede{
    font-size: calc(14 * (100vw / 320));
    line-height: 1.4;
    margin-bottom: calc(15 * (100vw / 320));
}

#guideSection .ledeBox{
	display: block;
    margin-bottom: calc(20 * (100vw / 320));
}
#guideSection .ledeBox > p{
	font-size: calc(14 * (100vw / 320));
	line-height: 1.4;
}

#guideSection .caution{
	display: block;
	margin-top: calc(10 * (100vw / 320));
	padding-left: calc(1em + 2px);
	font-size: calc(14 * (100vw / 320));
	line-height: 1.4;
	position: relative;
}
#guideSection .caution::before{
	content: '\※';
	position: absolute;
	left: 0;
	top: 0;
}

#guideSection .cautionList{display: block;}
#guideSection .cautionList > li{
	display: block;
	margin-top: calc(5 * (100vw / 320));
	padding-left: calc(1em + 2px);
	font-size: calc(14 * (100vw / 320));
	line-height: 1.4;
	position: relative;
}
#guideSection .cautionList > li::after{
	content: '\※';
	position:absolute;
	left:0;
	top:0;
}

#guideSection .guideOneSection{margin-bottom: calc(30 * (100vw / 320));}
#guideSection .guideOneSection:nth-last-of-type(1){margin-bottom: 0;}

#guideSection strong{font-weight: 700;}


#guideSection ul.helpLink{}
#guideSection ul.helpLink > li{margin-bottom: calc(10 * (100vw / 320));}
#guideSection ul.helpLink > li:nth-last-of-type(1){margin-bottom: 0;}

#guideSection ul.helpLink > li > a{
    display: inline-block;
    padding-left: calc(20 * (100vw / 320));
    line-height: calc(18 * (100vw / 320));
    color: #000000;
    background: url(/img/icon_help.svg) 0 center no-repeat;
    background-size: calc(18 * (100vw / 320)) auto;
    font-size: calc(14 * (100vw / 320));
    text-decoration: underline;
}

/**  guideIndex  ***********************************/

#guideSection .guideIndex{
	display: block;
	margin-bottom: calc(35 * (100vw / 320));
}

#guideSection .guideIndex > dl{
	display: block;
	width: 100%;
	/*border: 1px solid #CCCCCC;*/
	border-radius: 8px;
	padding: 0;
}
#guideSection .guideIndex > dl > dt{
	display: none;
	padding: calc(8 * (100vw / 320)) 0 calc(10 * (100vw / 320));
	font-family: 'NotoSerifJP-Regular';
	font-size: calc(14 * (100vw / 320));
	border-bottom: 1px solid #CCCCCC;
	text-align: center;
}

#guideSection .guideIndex > dl > dd{
	display: block;
	/*padding: calc(10 * (100vw / 320));*/
}

#guideSection .guideIndex > dl > dd > ul{
	display: block;
}
#guideSection .guideIndex > dl > dd > ul > li{
	display: block;
	margin-bottom: calc(10 * (100vw / 320));
}
#guideSection .guideIndex > dl > dd > ul > li:nth-last-of-type(1){margin-bottom: 0;}

#guideSection .guideIndex > dl > dd > ul > li > a{
	display: block;
	padding: calc(10 * (100vw / 320)) calc(25 * (100vw / 320)) calc(10 * (100vw / 320)) calc(10 * (100vw / 320));
    text-align: left;
    font-size:  calc(14 * (100vw / 320));
	line-height: 1.4;
    border: 1px solid #CCCCCC;
    background: url(/img/fukidashi_red.svg) calc(100% - 10 * (100vw / 320)) center no-repeat;
    background-size: calc(10 * (100vw / 320)) auto;
    border-radius: 8px;
	text-decoration: none;
	color: #000000;
	box-shadow: 1px 1px 2px rgba(0,0,0,.2);
}


#guideSection .guideIndex > .helpLink{
	margin-top: calc(15 * (100vw / 320));
}



/**  guideList  ***********************************/
#guideSection .guideList{
	display: block;
	font-size: calc(14 * (100vw / 320));
	line-height: 1.4;
	margin-bottom: calc(15 * (100vw / 320));
}
#guideSection .guideList:nth-last-child(1){margin-bottom: 0;}

#guideSection dl.guideList > dt{
	font-weight: 700;
	margin-bottom: 10px;
}

#guideSection dl.guideList > dd,
#guideSection ul.guideList > li{
	display: block;
	margin-bottom: 5px;
	padding-left: calc(1em + 5px);
	line-height: 1.4;
	position: relative;
}
#guideSection  dl.guideList > dd:nth-last-of-type(1),
#guideSection  ul.guideList > li:nth-last-of-type(1){margin-bottom: 0;}

#guideSection dl.guideList > dd::before,
#guideSection ul.guideList > li::before{
	content: '\●';
	position: absolute;
	left: 0;
	top: 0;
}
#guideSection dl.guideList > dd > span,
#guideSection ul.guideList > li > span{font-size: 14px;}

#guideSection .guideList .exBox{
	display: block;
	padding:  calc(10 * (100vw / 320));
	background: #f1f1f1;
	margin:  calc(10 * (100vw / 320)) 0  calc(10 * (100vw / 320));
	font-weight: 700;
	font-size:  calc(14 * (100vw / 320));
}


/**  guideTable  ***********************************/
#guideSection .guideTable{
	display: block;
	margin-bottom:  calc(10 * (100vw / 320));
}
#guideSection .guideTable:nth-last-child(1){margin-bottom: 0;}

#guideSection .guideTable > dl{
	display: block;
	width: 100%;
	border: 1px solid #CCCCCC;
	font-size:  calc(14 * (100vw / 320));
	line-height: 1.4;
}

#guideSection .guideTable > dl + dl{margin-top: calc(5 * (100vw / 320));}

#guideSection .guideTable > dl > dt{
	display:block;
	background: #efefef;
	border-bottom: 1px solid #CCCCCC;
	font-weight: 700;
	text-align: center;
	vertical-align: top;
	padding: calc(10 * (100vw / 320));
}

#guideSection .guideTable > dl.firstDress > dt{
	background: #ec2b6a;
	color: #FFFFFF;
}
#guideSection .guideTable.spAlLeft > dl > dt{text-align: left;}

#guideSection .guideTable > dl > dd{padding:  calc(10 * (100vw / 320));}
#guideSection .guideTable > dl > dd.inTable{padding: 0;}


/**  guideTable inTable ***********************************/

#guideSection .guideTable > dl > dd.inTable > table{ width: 100%;}
#guideSection .guideTable > dl > dd.inTable > table tr{
	border-bottom: 1px solid #CCCCCC;
}
#guideSection .guideTable > dl > dd.inTable > table tr:nth-last-of-type(1){border-bottom: none;}
#guideSection .guideTable > dl > dd.inTable > table tr th{
	width: 40%;
	padding:  calc(10 * (100vw / 320)) 0;
	border-right: 1px solid #CCCCCC;
	text-align: center;
	vertical-align: middle;
	font-weight: 700;
	white-space: nowrap;
}
#guideSection .guideTable > dl > dd.inTable > table tr th > a{
	font-weight: normal;
	color: #000000;
}

#guideSection .guideTable > dl > dd.inTable > table tr td{
	width: 60%;
	padding: calc(10 * (100vw / 320));
	text-align: center;
	vertical-align: middle;
	font-weight: 700;
}
#guideSection .guideTable > dl > dd.inTable > table tr td span{font-weight: normal;}



/**  guideTable inner ***********************************/

#guideSection .guideTable > dl > dd .subsubTTL{
	font-size: calc(14 * (100vw / 320));
	font-weight: 700;
	line-height: 1.4;
	margin-bottom: calc(15 * (100vw / 320));
}

#guideSection .guideTable > dl > dd .lineBox{margin: 15px 0;}
#guideSection .guideTable > dl > dd .lineBox > dl{
	border-top: 1px solid #CCCCCC;
	border-bottom: 1px solid #CCCCCC;
	padding:calc(10 * (100vw / 320)) 0 0 0;
}
#guideSection .guideTable > dl > dd .lineBox > dl > dt{
	font-weight: 700;
	padding-bottom: calc(10 * (100vw / 320));
	border-bottom: 1px solid #CCCCCC;
}

#guideSection .guideTable > dl > dd .lineBox > dl > dd{}

#guideSection .guideTable > dl > dd .lineBox > dl > dd > table{
	margin: 0 auto 0 0; width: 100%;
	font-size: calc(14 * (100vw / 320));
}

#guideSection .guideTable > dl > dd .lineBox > dl > dd > table tr{
	border-bottom: 1px dotted #CCCCCC;
}
#guideSection .guideTable > dl > dd .lineBox > dl > dd > table tr:nth-last-of-type(1){border-bottom: none;}

#guideSection .guideTable > dl > dd .lineBox > dl > dd > table tr th{
	padding: calc(10 * (100vw / 320)) calc(10 * (100vw / 320)) calc(10 * (100vw / 320)) 0;
	text-align: left;
	vertical-align: top;
}
#guideSection .guideTable > dl > dd .lineBox > dl > dd > table tr td{
	padding:  calc(10 * (100vw / 320)) 0  calc(10 * (100vw / 320))  calc(10 * (100vw / 320));
	white-space: nowrap;
	text-align: left;
	vertical-align: middle;
	border-left: 1px solid #CCCCCC;
}


#guideSection .guideTable > dl > dd .borderBox{
	margin-top: calc(15 * (100vw / 320));
	border: 1px solid #CCCCCC;
	padding: calc(10 * (100vw / 320));
}

#guideSection .guideTable > dl > dd .borderBox > dl{
	display: block;
}
#guideSection .guideTable > dl > dd .borderBox > dl > dt{
	display:block;
	padding:0 0 calc(5 * (100vw / 320));
	text-align: left;
	vertical-align: top;
	white-space: nowrap;
}
#guideSection .guideTable > dl > dd .borderBox > dl > dd{
	display: block;
}




/**  flowStepArea  ***********************************/
#guideSection .flowStepArea{}

#guideSection .flowStepArea > ol{
	display: block;
	width: 100%;
}
#guideSection .flowStepArea > ol > li{
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
    display: flex;
	width: 100%;
	margin-bottom: calc(10 * (100vw / 320));
	position: relative;
}
#guideSection .flowStepArea > ol > li:nth-last-of-type(1){margin-bottom: 0;}

#guideSection .flowStepArea > ol > li > a{
	display: block;
	width: 100%;
	border-radius: 8px;
	color: #000000;
	text-decoration: none;
	position: relative;
	box-shadow: 0 0 4px rgba(0,0,0,.4);
    -webkit-transition: box-shadow 0.2s ease,opacity 0.2s ease;
    -moz-transition: box-shadow 0.2s ease,opacity 0.2s ease;
    -o-transition: box-shadow 0.2s ease,opacity 0.2s ease;
    transition: box-shadow 0.2s ease,opacity 0.2s ease;
}
#guideSection .flowStepArea > ol > li > a::after{
	content: '';
	display: block;
	width: 100%;
	height: calc(10 * (100vw / 320));
	background: url(/img/fukidashi_red.svg) calc(30 * (100vw / 320)) 0 no-repeat;
	background-size: auto 100%;
	position: absolute;
	left: 0;
	bottom: calc(-9 * (100vw / 320));
}
#guideSection .flowStepArea > ol > li:nth-last-of-type(1) > a::after{display: none;}

#guideSection .flowStepArea > ol > li > a > dl{
	display: block;
}
#guideSection .flowStepArea > ol > li > a > dl > dt{
	display: block;
	padding:  calc(10 * (100vw / 320)) calc(10 * (100vw / 320));
	font-size:  calc(12 * (100vw / 320));
	font-weight: 700;
	background: #a10035;
	text-align: left;
	color: #FFFFFF;
	border-radius: 8px;
}
#guideSection .flowStepArea > ol > li > a > dl > dt > span{
	font-size: calc(16 * (100vw / 320));
	padding-left: 10px;
}

#guideSection .flowStepArea > ol > li > a > dl > dd.text{ display: none;}

#guideSection .flowStepArea > ol > li > a > dl > dd.btnMore{
	display: block;
	width: calc(10 * (100vw / 320));
	height: calc(36 * (100vw / 320));
	background: url(/img/guide/step_more_sp.svg) center center no-repeat;
	background-size: calc(10 * (100vw / 320)) auto;
	position: absolute;
	right: calc(10 * (100vw / 320));
	top: 0;
	
}

#guideSection .flowStepArea > ol > li > a > dl > dd.btnMore > span{ display: none;}


/**  stepFlowDetail  ***********************************/

#guideSection  .stepFlowDetail{counter-reset:number;}

#guideSection  .stepFlowDetail > ol{display: block;}

#guideSection  .stepFlowDetail > ol > li{
	display: block;
	width: 100%;
	border: 1px solid #CCCCCC;
	border-radius: 8px;
	position: relative;
	margin-bottom: calc(25 * (100vw / 320));
}
#guideSection  .stepFlowDetail > ol > li::after{
	content: '';
	display: block;
	width: 100%;
	height: calc(15 * (100vw / 320));
	background: url(/img/fukidashi_red.svg) center 0 no-repeat;
	background-size: auto calc(15 * (100vw / 320));
	position: absolute;
	left: 0;
	bottom: calc(-20 * (100vw / 320));
}
#guideSection  .stepFlowDetail > ol > li:nth-last-of-type(1)::after{display: none;}


#guideSection  .stepFlowDetail > ol > li > h4{
	display: block;
	padding: calc(10 * (100vw / 320)) calc(10 * (100vw / 320));
	text-align: left;
	font-size: calc(14 * (100vw / 320));
	font-weight: 700;
	color: #FFFFFF;
	line-height: 1.2;
	background: #a10035;
	border-radius: 8px 8px 0 0;
}
#guideSection  .stepFlowDetail > ol > li > h4 > span{
	font-size: calc(16 * (100vw / 320));
	padding-left: 5px;
}



/*** detail ****/
#guideSection  .stepFlowDetail > ol > li > .detail{
	display: table-cell;
	width: 100%;
	padding: calc(10 * (100vw / 320)) calc(10 * (100vw / 320));
	vertical-align: top;
	text-align: left;
	font-size: calc(14 * (100vw / 320));
	line-height: 1.6;
}


#guideSection  .stepFlowDetail > ol > li > .detail > .detailOnline{
	display: table;
	width: 100%;
	padding-bottom: calc(10 * (100vw / 320));
	margin-bottom: calc(10 * (100vw / 320));
	border-bottom: 1px dotted #CCCCCC;
}
#guideSection  .stepFlowDetail > ol > li > .detail > .detailOnline:nth-last-of-type(1){
	padding-bottom: 0;
	margin-bottom: 0;
	border-bottom: none;
}

#guideSection  .stepFlowDetail > ol > li > .detail > .detailOnline::before{
	counter-increment: number;
	content: counter(number);
	display: table-cell;
	width: calc(24 * (100vw / 320));
	background: #CCCCCC;
	padding: calc(12 * (100vw / 320)) 0;
	border-radius: 4px;
	font-size: calc(12 * (100vw / 320));
	font-weight: 700;
	text-align: center;
	vertical-align: top;
	letter-spacing: -0.1em;
	color: #ffffff;
}

#guideSection  .stepFlowDetail > ol > li > .detail > .detailOnline > dl{
	display: table-cell;
	padding: calc(10 * (100vw / 320)) 0 calc(10 * (100vw / 320)) calc(10 * (100vw / 320));
	vertical-align: top;
	text-align: left;
}
#guideSection  .stepFlowDetail > ol > li > .detail > .detailOnline > dl > dt{
	display: block;
	font-weight: 700;
	margin-bottom:calc(5 * (100vw / 320));
	font-size: calc(16 * (100vw / 320));
}
#guideSection  .stepFlowDetail > ol > li > .detail > .detailOnline > dl > dt > span{font-weight: normal; font-size:calc(14 * (100vw / 320)); padding-left: calc(10 * (100vw / 320));}



#guideSection  .stepFlowDetail > ol > li > .detail > .detailOnline > dl > dd{
	margin-bottom: calc(10 * (100vw / 320));
}
#guideSection  .stepFlowDetail > ol > li > .detail > .detailOnline > dl > dd:nth-last-of-type(1){margin-bottom: 0;}

#guideSection  .stepFlowDetail > ol > li > .detail > .detailOnline > dl > dd.ex{
	background: #f1f1f1;
	padding: calc(10 * (100vw / 320));
}

#guideSection  .stepFlowDetail > ol > li > .detail > .detailOnline > dl > dd.ex.imgText{
	display: block;
	width: 100%;
}
#guideSection  .stepFlowDetail > ol > li > .detail > .detailOnline > dl > dd.ex.imgText > .img{
	display: block;
	text-align: left;
}
#guideSection  .stepFlowDetail > ol > li > .detail > .detailOnline > dl > dd.ex.imgText > .img > img{display: block; max-width: 100%; height: auto;}
#guideSection  .stepFlowDetail > ol > li > .detail > .detailOnline > dl > dd.ex.imgText > .text{
	display: block;
	vertical-align: middle;
	text-align: left;
	padding-top: calc(5 * (100vw / 320));
}


#guideSection  .stepFlowDetail > ol > li > .detail > .detailOnline > dl > dd > a{ color: #000000;}
#guideSection  .stepFlowDetail > ol > li > .detail > .detailOnline > dl > dd > .exBtn{color: #a10035;}


#guideSection  .stepFlowDetail > ol > li > .detail > .detailOnline > dl > dd dl.guideList{display: block;}
#guideSection  .stepFlowDetail > ol > li > .detail > .detailOnline > dl > dd dl.guideList > dt{
	font-weight: 700;
	margin-bottom: calc(5 * (100vw / 320));
}

#guideSection  .stepFlowDetail > ol > li > .detail > .detailOnline > dl > dd dl.guideList > dd,
#guideSection  .stepFlowDetail > ol > li > .detail > .detailOnline > dl > dd ul.guideList > li{
	display: block;
	margin-bottom: 5px;
	padding-left: calc(1em + 3px);
	position: relative;
	line-height: 1.4;
}
#guideSection  .stepFlowDetail > ol > li > .detail > .detailOnline > dl > dd dl.guideList > dd:nth-last-of-type(1),
#guideSection  .stepFlowDetail > ol > li > .detail > .detailOnline > dl > dd ul.guideList > li:nth-last-of-type(1){margin-bottom: 0;}

#guideSection  .stepFlowDetail > ol > li > .detail > .detailOnline > dl > dd dl.guideList > dd::before,
#guideSection  .stepFlowDetail > ol > li > .detail > .detailOnline > dl > dd ul.guideList > li::before{
	content: '\●';
	position: absolute;
	left: 0;
	top: 0;
}
#guideSection  .stepFlowDetail > ol > li > .detail > .detailOnline > dl > dd dl.guideList > dd > span,
#guideSection  .stepFlowDetail > ol > li > .detail > .detailOnline > dl > dd ul.guideList > li > span{font-size: calc(12 * (100vw / 320));}





#guideSection  .stepFlowDetail > ol > li > .detail > .detailOnline > dl > dd dl.periodList{ display: block;}
#guideSection  .stepFlowDetail > ol > li > .detail > .detailOnline > dl > dd dl.periodList > dt{
	display: block;
	font-weight: 700;
	margin-bottom: calc(5 * (100vw / 320));
}

#guideSection  .stepFlowDetail > ol > li > .detail > .detailOnline > dl > dd dl.periodList > dd{
	display: block;
	margin-bottom: calc(10 * (100vw / 320));
}
#guideSection  .stepFlowDetail > ol > li > .detail > .detailOnline > dl > dd dl.periodList > dd:nth-last-of-type(1){margin-bottom: 0;}
#guideSection  .stepFlowDetail > ol > li > .detail > .detailOnline > dl > dd dl.periodList > dd img{max-width: 100%; height: auto;}

#guideSection  .stepFlowDetail > ol > li > .detail > .detailOnline > dl > dd dl.periodList > dd.periodDetail{
	background: #FFFFFF;
	padding: calc(5 * (100vw / 320));
}

#guideSection  .stepFlowDetail > ol > li > .detail > .detailOnline > dl > dd dl.periodList > dd.periodDetail > h5{
	font-weight: 700;
	margin-bottom: calc(5 * (100vw / 320));
}
#guideSection  .stepFlowDetail > ol > li > .detail > .detailOnline > dl > dd dl.periodList > dd.periodDetail > h5.reasnableDress{color: #177a83;}
#guideSection  .stepFlowDetail > ol > li > .detail > .detailOnline > dl > dd dl.periodList > dd.periodDetail > h5.firstDress{color: #f6328a;}

#guideSection  .stepFlowDetail > ol > li > .detail > .detailOnline > dl > dd dl.periodList > dd.periodDetail > p{margin-bottom: calc(15 * (100vw / 320));}


#guideSection  .stepFlowDetail > .flowComplete{
	display: block;
	border: 4px double #CCCCCC;
	width: 100%;
	margin: 0 auto;
	padding: calc(20 * (100vw / 320)) 0;
	text-align: center;
	font-size: calc(16 * (100vw / 320));
	line-height: 1.4;
	font-weight: 700;
}


/**************************************
reformGuideTable
**************************************/
#guideSection .reformGuideTable{
	display: block;
	margin-bottom:calc(30 * (100vw / 320));
}
#guideSection .reformGuideTable:nth-last-of-type(1){margin-bottom: 0;}


#guideSection .reformGuideTable .subsubTTL{
	font-size: calc(16 * (100vw / 320));
	font-weight: 700;
	line-height: 1.4;
	margin-bottom: calc(5 * (100vw / 320));
}
#guideSection .reformGuideTable .subsubTTL + .caution{margin-bottom: calc(5 * (100vw / 320));}


#guideSection .reformGuideTable > dl{
	display: block;
	width: 100%;
	margin-bottom: calc(10 * (100vw / 320));
	border: 1px solid #a6937c;
	font-size: calc(14 * (100vw / 320));
	line-height: 1.4;
}
#guideSection .reformGuideTable > dl:nth-last-of-type(1){margin-bottom: 0;}

#guideSection .reformGuideTable > dl > dt{
	display: block;
	padding: calc(10 * (100vw / 320));
	background: #f8f5ef;
	border-bottom: 1px dotted #a6937c;
	text-align: left;
	vertical-align: middle;
}

#guideSection .reformGuideTable > dl > dd{
	padding: calc(15 * (100vw / 320))  calc(10 * (100vw / 320));
	text-align: left;
}
#guideSection .reformGuideTable > dl.inTable > dd{padding: 0;}


#guideSection .reformGuideTable > dl.inTable > dd > dl{
	display: block;
	width: 100%;
	border-bottom: 1px solid #CCCCCC;
	padding: calc(10 * (100vw / 320));
}
#guideSection .reformGuideTable > dl.inTable > dd > dl:nth-last-of-type(1){border-bottom: 1px;}

#guideSection .reformGuideTable > dl.inTable > dd > dl > dt{
	display: block;
	text-align: left;
	vertical-align: middle;
}

#guideSection .reformGuideTable > dl.inTable > dd > dl > dd{
	display: block;
	vertical-align: middle;
	text-align: left;
}


#guideSection .reformGuideTable > dl > dd .caution,
#guideSection .reformGuideTable > dl > dd .cautionList > li{font-size: calc(14 * (100vw / 320));}



/**************************************
faqOneSection
**************************************/
#guideSection .faqOneSection{
	display: block;
	margin-bottom:  calc(15 * (100vw / 320));
	padding:  calc(10 * (100vw / 320));
	border: 1px solid #CCCCCC;
	border-radius: 8px;
}
#guideSection .faqOneSection:nth-last-of-type(1){margin-bottom: 0;}

#guideSection .faqOneSection > .faqQ{
    font-family: 'NotoSerifJP-Regular';
    font-size: calc(16 * (100vw / 320));
	line-height: 1.4;
	padding-bottom:  calc(10 * (100vw / 320));
	padding-left: calc(30 * (100vw / 320));
	border-bottom: 1px dotted #CCCCCC;
	position: relative;
}
#guideSection .faqOneSection > .faqQ::before{
	content: '\Ｑ';
    font-size:  calc(20 * (100vw / 320));
	color: #1b159b;
	position: absolute;
	line-height: 1;
	left: 0;
	top: 0;
}

#guideSection .faqOneSection > .faqA{
	font-size: calc(14 * (100vw / 320));
	line-height: 1.6;
	padding-top: calc(10 * (100vw / 320));
	position: relative;
}




#guideSection .faqOneSection > .faqA .faqEx{
	background: #f1f1f1;
	padding: calc(10 * (100vw / 320));
	margin: calc(15 * (100vw / 320)) 0 calc(15 * (100vw / 320));
}

#guideSection .faqOneSection > .faqA .faqEx > dl{ margin-bottom: calc(15 * (100vw / 320));}
#guideSection .faqOneSection > .faqA .faqEx > dl:nth-last-of-type(1){margin-bottom: 0;}



#guideSection .faqOneSection > .faqA .faqEx > dl > dt{
	margin-bottom: calc(5 * (100vw / 320));
	font-weight: 700;
}

#guideSection .faqOneSection > .faqA .faqEx > dl > dd{}

#guideSection .faqOneSection > .faqA .faqEx > dl.indentList > dt{
	padding-left: 2.5em;
	text-indent: -2.5em;
	margin-bottom: calc(5 * (100vw / 320));
	font-weight: 700;
}
#guideSection .faqOneSection > .faqA .faqEx > dl.indentList > dd{
	padding-left: 2.5em;
}


#guideSection .faqOneSection > .faqA .faqEx > dl.faqGuideList{
	padding: calc(5 * (100vw / 320));
	background: #FFFFFF;
}
#guideSection .faqOneSection > .faqA .faqEx > dl.faqGuideList > dt{
	padding-bottom: calc(5 * (100vw / 320));
	margin-bottom: calc(5 * (100vw / 320));
	border-bottom: 1px dotted #CCCCCC;
}

#guideSection .faqOneSection > .faqA .faqEx > dl.faqGuideList > dd{
	padding-left: 1.5em;
	position: relative;
	margin-bottom:calc(2 * (100vw / 320));
}
#guideSection .faqOneSection > .faqA .faqEx > dl.faqGuideList > dd::before{
	content: '\●';
	position: absolute;
	left: 0;
	top: 0;
}


#guideSection .faqOneSection > .faqA .faqEx > dl > dd.innerExBox{
	margin-top: calc(15 * (100vw / 320));
	background: #FFFFFF;
	padding: calc(10 * (100vw / 320));
}

#guideSection .faqOneSection > .faqA .faqEx > dl > dd.innerExBox > dl{}
#guideSection .faqOneSection > .faqA .faqEx > dl > dd.innerExBox dl > dt{
	margin-bottom:  calc(5 * (100vw / 320));
	padding-bottom: calc(5 * (100vw / 320));
	border-bottom: 1px dotted #CCCCCC;
	font-weight: 700;
}


#guideSection .faqOneSection > .faqA .faqLineBox{
	border-top: 1px dotted #CCCCCC;
	padding:  calc(10 * (100vw / 320)) 0 0 0;
	margin:  calc(15 * (100vw / 320)) 0;
}

#guideSection .faqOneSection > .faqA .faqLineBox > dl{}
#guideSection .faqOneSection > .faqA .faqLineBox > dl> dt{
	font-weight: 700;
	margin-bottom:  calc(5 * (100vw / 320));
	padding-bottom: calc(5 * (100vw / 320));
	border-bottom: 1px dotted #CCCCCC;
}
#guideSection .faqOneSection > .faqA .faqLineBox > dl> dd{margin-bottom: calc(10 * (100vw / 320));}
#guideSection .faqOneSection > .faqA .faqLineBox > dl> dd:nth-last-of-type(1){margin-bottom: 0;}


#guideSection .faqOneSection > .faqA .faqLineBox > dl> dd.innerExBox{
	padding: calc(5 * (100vw / 320))  calc(10 * (100vw / 320));
	background: #f1f1f1;
}

#guideSection .faqOneSection > .faqA .faqLineBox > dl> dd.innerExBox > dl.exPriceTable{
	display: block;
	width: 100%;
	padding:  calc(5 * (100vw / 320)) 0;
	border-bottom: 1px dotted #CCCCCC;
}
#guideSection .faqOneSection > .faqA .faqLineBox > dl> dd.innerExBox > dl.exPriceTable:nth-last-of-type(1){
	border-bottom: none;
}

#guideSection .faqOneSection > .faqA .faqLineBox > dl> dd.innerExBox > dl > dt{
	display: block;
	vertical-align: top;
	text-align: left;
}

#guideSection .faqOneSection > .faqA .faqLineBox > dl> dd.innerExBox > dl > dd{
	display:block;
	vertical-align: top;
	text-align: left;
}

/**************************************
userVoiceList
**************************************/
#guideSection .userVoiceList{
	display: block;
}


#guideSection .userVoiceList > dl{
	display: block;
	margin-bottom: calc(10 * (100vw / 320));
	padding: 0 calc(10 * (100vw / 320)) calc(10 * (100vw / 320)) calc(10 * (100vw / 320));
	border: 1px solid #CCCCCC;
	position: relative;
}
#guideSection .userVoiceList > dl:nth-last-of-type(1){margin-bottom: 0;}


#guideSection .userVoiceList > dl > dt{
	min-height: calc(40 * (100vw / 320));
	padding: calc(10 * (100vw / 320)) calc(50 * (100vw / 320)) calc(8 * (100vw / 320)) 0;
    font-family: 'NotoSerifJP-Regular';
    font-size: calc(18 * (100vw / 320));
	line-height: 1.2;
	color: #570014;
	position: relative;
}

#guideSection .userVoiceList > dl > dt::before{
	content: '';
	display: block;
	width: calc(40 * (100vw / 320));
	height:calc(40 * (100vw / 320));
	border-radius: calc(20 * (100vw / 320));
	overflow: hidden;
	background: url(/img/guide/icon_dance_01.svg) center calc(5 * (100vw / 320)) no-repeat #f1f1f1;
	background-size: calc(80 * (100vw / 320)) auto;
	position: absolute;
	right: 0;
	top: 50%;
	margin-top: calc( -20 * (100vw / 320));
}

#guideSection .userVoiceList > dl > dd.name{
	font-size: calc(12 * (100vw / 320));
	padding: calc(15 * (100vw / 320)) 0;
	border-top: 1px solid #CCCCCC;
}

#guideSection .userVoiceList > dl > dd.comment{
	font-size:  calc(14 * (100vw / 320));
	line-height: 1.6;
}


/**************************************
#shopSection
**************************************/
#shopSection{
	display: block;
	margin: 0 auto;
	padding:calc(15 * (100vw / 320)) 3% calc(20 * (100vw / 320));
}

#shopSection .shopLede{
	display: block;
	margin-bottom: calc(15 * (100vw / 320));
}

#shopSection .shopLede > .text{
	display: block;
	font-size:  calc(14 * (100vw / 320));
	line-height: 1.4;
	padding-bottom: calc(10 * (100vw / 320));
}

#shopSection .shopLede > .text p{
	margin-bottom: calc(15 * (100vw / 320));
}

#shopSection .shopLede > .text p.shopTTL{
	margin-bottom: calc(15 * (100vw / 320));
    font-family: 'NotoSerifJP-Regular';
	font-size:  calc(16 * (100vw / 320));
	color: #a10035;
	line-height: 1.4;
}


#shopSection .shopLede > .shopInner{}


#shopSection .shopInfoTable{
	border-top: 1px solid #848484;
	border-bottom: 1px solid #848484;
	margin-bottom:  calc(15 * (100vw / 320));
}

#shopSection .shopInfoTable > dl{
	display: table;
	width: 100%;
	border-bottom: 1px solid #CCCCCC;
	padding:  calc(10 * (100vw / 320)) 0;
	font-size:  calc(14 * (100vw / 320));
	line-height: 1.4;
}

#shopSection .shopInfoTable > dl:nth-last-of-type(1){border-bottom: none;}

#shopSection .shopInfoTable > dl > dt{
	display: table-cell;
	width:  calc(80 * (100vw / 320));
	text-align: left;
	vertical-align: middle;
	font-weight: 700;
}

#shopSection .shopInfoTable > dl > dd{
	display: table-cell;
	text-align: left;
	vertical-align: middle;
}

#shopSection .shopInfoTable > dl > dd > a{color: #000000; text-decoration: none; cursor:default;}


/** map ***********************/
#shopSection .innerMap {
position: relative;
padding-bottom: 56.25%;
padding-top: 30px;
height: 0;
overflow: hidden;
}

#shopSection .innerMap iframe,
#shopSection .innerMap object,
#shopSection .innerMap embed{
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
}


#shopSection .shopMap {
position: relative;
padding-bottom: 56.25%;
padding-top: 30px;
height: 0;
overflow: hidden;
}

#shopSection .shopMap iframe,
#shopSection .shopMap object,
#shopSection .shopMap embed{
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
}



/**************************************
privacyOneSection
**************************************/
#guideSection .privacyOneSection{
	font-size: calc(14 * (100vw / 320));
	line-height: 1.4;
	margin-bottom: calc(30 * (100vw / 320));
}

#guideSection .privacyOneSection p{margin-bottom: calc(15 * (100vw / 320));}

#guideSection .privacyOneSection dl.privacyList{
	margin-bottom: calc(15 * (100vw / 320));
}
#guideSection .privacyOneSection dl.privacyList:nth-last-child(1){margin-bottom: 0;}

#guideSection .privacyOneSection dl.privacyList > dt{
	margin-bottom: calc(10 * (100vw / 320));
	font-weight: 700;
}
#guideSection .privacyOneSection dl.privacyList > dd{
	padding-left: 1.6em;
	text-indent: -1.6em;
	margin-bottom: calc(5 * (100vw / 320));
}
#guideSection .privacyOneSection dl.privacyList > dd:nth-last-of-type(1){margin-bottom: 0;}

#guideSection .privacyOneSection dl.privacyContact{
	border: 1px dotted #CCCCCC;
	padding:  calc(10 * (100vw / 320));
}

#guideSection .privacyOneSection dl.privacyContact > dt{
	font-size:  calc(16 * (100vw / 320));
	border-bottom: 1px dotted #CCCCCC;
	padding-bottom:  calc(10 * (100vw / 320));
	margin-bottom: calc(10 * (100vw / 320));
}
#guideSection .privacyOneSection dl.privacyContact > dd{margin-bottom: calc(5 * (100vw / 320));;}
#guideSection .privacyOneSection dl.privacyContact > dd:nth-last-of-type(1){margin-bottom: 0;}

/**************************************
#formSecondly
**************************************/
.formTable .nomalList > li.errMsg::before{display: none;}
.formTable .nomalList > li span{
	display: block;
	margin-top: 5px;
	margin-bottom: 10px;
	font-weight: normal;
}


#formSecondly{
	visibility: hidden;
	height: 0;
    -webkit-transition: 0.2s ease;
    -moz-transition: 0.2s ease;
    -o-transition: 0.2s ease;
    transition: 0.2s ease;
}

#formSecondly.open{
	visibility: visible;
	height: auto;
}


#formStepComment{
	display: block;
	width: 100%;
	border: 2px solid #CCCCCC;
	padding: 10px 3%;
	margin: 0 auto 20px;
	font-size: calc(14 * (100vw / 320));
	line-height: 1.6;
	text-align: center;
	font-weight: 700;
}

#formSecondly.open + #formStepComment{display: none;}

#dateErrMsg{
	display: block;
	width: 100%;
	border: 2px solid #c71616;
	color: #c71616;
	padding: 10px 3%;
	margin: 0 auto 20px;
	font-size: calc(14 * (100vw / 320));
	line-height: 1.6;
	text-align: left;
	font-weight: 700;
}

#dateErrMsg{
	display: block;
	width: 100%;
	border: 2px solid #c71616;
	color: #c71616;
	padding: 10px 3%;
	margin: 0 auto 20px;
	font-size: calc(14 * (100vw / 320));
	line-height: 1.6;
	text-align: left;
	font-weight: 700;
}

#errList{
	display: block;
	width: 100%;
	border: 2px solid #c71616;
	padding: 10px 3%;
	margin: 0 auto 20px;
	text-align: left;
}
#errList > p{
	font-size: calc(14 * (100vw / 320));
	line-height: 1.4;
	text-align: center;
}
#errList > p.bold{
	font-size: calc(16 * (100vw / 320));
	font-weight: 700;
	margin-bottom: 10px;
}

#errList > ul{}
#errList > ul > li{
	font-size: calc(14 * (100vw / 320));
	line-height: 1.4;
	margin-bottom: 5px;
    margin-top: calc(15 * (100vw / 320));
    padding-left: calc(20 * (100vw / 320));
    color: #c71616;
    font-weight: 500;
    font-weight: 700;
    background: url(/img/form/icon_err.svg) left calc(2 * (100vw / 320)) no-repeat;
    background-size: calc(15 * (100vw / 320)) auto;
}

/**************************************
#otanoshimiCard
**************************************/
#otanoshimiCard{
	display: block;
	width: 100%;
	padding: calc(20 * (100vw / 320)) 3% calc(10 * (100vw / 320)) 3%;
}

#otanoshimiCard > .inner{
	display: block;
	width: 100%;
	border:1px solid #CCCCCC;
}

#otanoshimiCard > .inner > .otanoshimiTTL{
	display: block;
	padding: calc(5 * (100vw / 320)) 0;
	background: #ea89a9;
    font-family: 'NotoSerifJP-Regular';
	font-size: calc(20 * (100vw / 320));
	color: #FFFFFF;
	vertical-align: middle;
	text-align: center;
	line-height: 1.4;
}
#otanoshimiCard > .inner > .otanoshimiTTL > span{
	display: block;
	font-size: calc(14 * (100vw / 320));
	color: #4d001a;
}


#otanoshimiCard > .inner > .otanoshimiText{
	display: block;
	padding: calc(10 * (100vw / 320)) calc(10 * (100vw / 320)) 0;
}

#otanoshimiCard > .inner > .otanoshimiText > p{
	font-size:  calc(13 * (100vw / 320));
	border-bottom: 4px double #CCCCCC;
	padding-bottom: calc(10 * (100vw / 320));
	margin-bottom:  calc(10 * (100vw / 320));
	text-align: center;
	line-height: 1.4;
}

#otanoshimiCard > .inner > .otanoshimiText .otanoshimiGuide{
	display: block;
	width: 100%;
}

#otanoshimiCard > .inner > .otanoshimiText .otanoshimiGuide > figure{
	display: block;
	text-align: center;
	padding-bottom: calc(10 * (100vw / 320));
}
#otanoshimiCard > .inner > .otanoshimiText .otanoshimiGuide > figure > img{display: block; max-width:70%; margin: 0 auto;}

#otanoshimiCard > .inner > .otanoshimiText .otanoshimiGuide > figure > figcaption{
	display: block;
	padding-top: calc(10 * (100vw / 320));
	font-size: calc(14 * (100vw / 320));
}

#otanoshimiCard > .inner > .otanoshimiText .otanoshimiGuide > .price{
	display: block;
}

#otanoshimiCard > .inner > .otanoshimiText .otanoshimiGuide > .price > dl{
	display: block;
	padding:  calc(15 * (100vw / 320)) 0  calc(15 * (100vw / 320)) calc(30 * (100vw / 320));
	background: url(/img/otanoshimi/icon_arrow_otanoshimi_blue.png) 0 center no-repeat;
	background-size: calc(25 * (100vw / 320)) auto;
	border-top: 1px dotted #CCCCCC;
}
#otanoshimiCard > .inner > .otanoshimiText .otanoshimiGuide > .price > dl.latin{background-image: url(/img/otanoshimi/icon_arrow_otanoshimi_red.png);}

#otanoshimiCard > .inner > .otanoshimiText .otanoshimiGuide > .price > dl > dt{
	font-weight: 700;
	margin-bottom: calc(5 * (100vw / 320));
	font-size: calc(14 * (100vw / 320));
}

#otanoshimiCard > .inner > .otanoshimiText .otanoshimiGuide > .price > dl > dd{
	font-size: calc(13 * (100vw / 320));
}

#otanoshimiCard > .inner > .otanoshimiText .otanoshimiGuide > .price > dl > dd > span{
	font-size: calc(16 * (100vw / 320));
	color: #a10035;
	padding-right: 5px;
}


#otanoshimiCard > .otanoshimiCaution{
	padding-left: 1em;
	text-indent: -1em;
	line-height: 1.4;
	font-size:  calc(12 * (100vw / 320));
	margin-top: 5px;
	text-align: left;
}

/**************************************
#sizeOptions 180907 add
**************************************/
#sizeOptions {
	display: block;
	margin-bottom: calc(10 * (100vw / 320));
}

#sizeOptions dl{}

#sizeOptions dl > dt{
	font-size: calc(14 * (100vw / 320));
	padding-bottom: calc(5 * (100vw / 320));
	font-weight: 600;
	text-align: left;
}

#sizeOptions dl > dd{}
#sizeOptions dl > dd > ul{
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
    display: flex;
	-webkit-flex-wrap: wrap;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
    -webkit-box-align:stretch;
    -ms-flex-align:stretch;
    -webkit-align-items:stretch;
	align-items: stretch;
	-webkit-justify-content: flex-start;
	justify-content: flex-start;
}

#sizeOptions dl > dd > ul > li{
	width: 30%;
	margin-right: 5%;
	margin-top: calc(5 * (100vw / 320));
	font-size: calc(14 * (100vw / 320));
}
#sizeOptions dl > dd > ul > li:nth-of-type(3n){margin-right: 0;}

#sizeOptions dl > dd > ul > li label {
    display: block;
	width: 100%;
    padding: calc(5 * (100vw / 320)) calc(5 * (100vw / 320)) calc(5 * (100vw / 320)) calc(10 * (100vw / 320));
	border: 1px solid #CCCCCC;
	border-radius: 4px;
    position: relative;
	text-align: center;
    line-height: 1.2;
    cursor: pointer;
    -webkit-transition: opacity 0.2s ease;
    -moz-transition: opacity 0.2s ease;
    -o-transition: opacity 0.2s ease;
    transition: opacity 0.2s ease;
}

#sizeOptions dl > dd > ul > li label::before {
    content: '';
    display: block;
    width: calc(16 * (100vw / 320));
    height: calc(16 * (100vw / 320));
    background: #FFFFFF;
    border: 1px solid #CCCCCC;
    box-shadow: 0 1px 2px 0 rgba(0,0,0,0.2) inset;
    border-radius: 4px;
    position: absolute;
    left:  calc(5 * (100vw / 320));
    top:  calc(5 * (100vw / 320));
}

#sizeOptions dl > dd > ul > li label > input[type=checkbox] {
    display: none;
}

#sizeOptions dl > dd > ul > li label > input[type=checkbox] + span {
    display: inline-block;
}

#sizeOptions dl > dd > ul > li label > input[type=checkbox] + span::after{
	content: '';
    display: block;
    width: calc(16 * (100vw / 320));
    height: calc(16 * (100vw / 320));
    border-radius: 4px;
    background: url(/img/icon_checked.svg) center center no-repeat #df4d81;
    background-size: 10px auto;
    position: absolute;
    left:  calc(5 * (100vw / 320));
    top:  calc(5 * (100vw / 320));
    opacity: 0;
    -webkit-transition: opacity 0.2s ease, transform 0.2s ease;
    -moz-transition: opacity 0.2s ease, transform 0.2s ease;
    -o-transition: opacity 0.2s ease, transform 0.2s ease;
    transition: opacity 0.2s ease, transform 0.2s ease;
    -webkit-transform: scale(0);
    -moz-transform: scale(0);
    -o-transform: scale(0);
    -ms-transform: scale(0);
    transform: scale(0);
}

#sizeOptions dl > dd > ul > li label > input[type=checkbox]:checked + span::after {
    opacity: 1;
    -webkit-transform: scale(1);
    -moz-transform: scale(1);
    -o-transform: scale(1);
    -ms-transform: scale(1);
    transform: scale(1);
}

#searchOptions{
	padding-top: calc(10 * (100vw / 320));
	border-top: 1px dotted #CCCCCC;
}

/**************************************
specialBanner
**************************************/
.specialBanner{
    margin: 0 auto;
    padding: calc(20 * (100vw / 320)) 3%;
}
.specialBanner > a{
    display: block;
}

.specialBanner img{display: block; width: 100%; height: auto;}

/**************************************
overRide
**************************************/
.mb10{margin-bottom: 10px!important;}

.fcRed{color: #c71616!important;}

/**************************************
SPitem
**************************************/
.pcView{display: none!important;}

#homeNav .color {display: none}
#homeNav .calendar {display: none}

#number_dress_in_cart {
	position: absolute;
    font-size: calc(12 * (100vw / 320));
    background: #000000;
    color: #fff;
    padding: 3px 5px;
    vertical-align: top;
    top: calc(2 * (100vw / 320));
    left: calc(25 * (100vw / 320));
    border-radius: 15px;
    opacity: 0.7;
    font-weight: bold;
    line-height: 13px;
}