@charset "utf-8";

/* Sprite */
.icnReserve::before {
	background-image: url(/CSP/img/common/smb/sprites/icon_reserve.png?switch=20200414);
	background-repeat: no-repeat;
	-webkit-background-size: 100px auto;
	-moz-background-size: 100px auto;
	background-size: 100px auto;
}

.header + .rsvSlnHeader {
	margin-top: 10px;
}
.rsvSlnHeader {
	background-color: #F4F4F4;
	color: #665555;
	padding: 7px 10px;
	word-wrap: break-word;
}
.rsvSlnHeader:after {
	clear: both;
	content: "";
	display: block;
}
.rsvType {
	background-color: #EF4256;
	border-radius: 4px;
	color: #FFFFFF;
	float: left;
	font-size: 10px;
	font-weight: bold;
	line-height: 21px;
	margin-right: 10px;
	margin-top: 3px;
	text-align: center;
	width: 30px;
}
.rsvSlnNameWrap {
	line-height: 1.2;
	overflow: hidden;
}
.rsvSlnName {
	font-size: 14px;
	font-weight: bold;
	margin-bottom: 3px;
}

/* 矢羽根 ログイン前 */
.reserveStepList {
	display: table;
	width: 100%;
}
.reserveStepList li {
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	color: #988989;
	display: table-cell;
	font-size: 10px;
	font-weight: bold;
	height: 34px;
	line-height: 1.4;
	position: relative;
	text-align: center;
	vertical-align: middle;
}
.rslInner {
	display: inline-block;
	position: relative;
	text-align: left;
}
.rslCouponMenu {
	padding-left: 35px;
}
.rslDate {
	padding-left: 39px;
}
.rslCouponMenu::before,
.rslDate::before {
	content: "";
	display: block;
	position: absolute;
}
.rslCouponMenu::before {
	background-position: 0 0;
	height: 22px;
	left: -4px;
	top: 2px;
	width: 33px;
}
.rslDate::before {
	background-position: 0 -26px;
	height: 34px;
	left: 0;
	top: -6px;
	width: 33px;
}
.rslCouponMenu.active::before {
	background-position: 0 -64px;
}
.rslDate.active::before {
	background-position: 0 -90px;
}
.reserveStepList .active {
	color: #CC4466;
}
.rslArrow {
	width: 3%;
}
.rslArrow::after,
.rslArrow::before {
	border-right: 1px solid #CDC5C5;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	content: "";
	display: block;
	height: 8px;
	left: 50%;
	margin-left: -2px;
	position: absolute;
	width: 1px;
	z-index: 1;
}
.rslArrow::after {
	bottom: 9px;
	-webkit-transform: skew(-33deg);
	transform: skew(-33deg);
}
.rslArrow::before {
	top: 9px;
	-webkit-transform: skew(33deg);
	transform: skew(33deg);
}
.rslProcedure {
	padding-left: 5px;
	padding-right: 5px;
}

/* 矢羽根 ログイン後 */
.reserveCompleteStepList {
	display: table;
	width: 100%;
}
.reserveCompleteStepList li {
	background-color: #EEEEEE;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	color: #665555;
	display: table-cell;
	font-size: 11px;
	font-weight: bold;
	height: 40px;
	vertical-align: middle;
}
.rcslInner {
	border-bottom: 1px solid #CCCCCC;
	border-top: 1px solid #CCCCCC;
	display: block;
	height: 100%;
	line-height: 1.3;
	padding-top: 12px;
	position: relative;
	text-align: center;
}
.reserveCompleteStepList li ~ li > .rcslInner {
	padding-left: 14px;
}
.rcslInner::after,
.rcslInner::before {
	border-right: 1px solid #CCCCCC;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	content: "";
	display: block;
	height: 20px;
	position: absolute;
	width: 16px;
	z-index: 1;
}
.rcslInner::after {
	border-bottom: 1px solid #CCCCCC;
	bottom: -1px;
	right: -8px;
	-webkit-transform: skew(-40deg);
	transform: skew(-40deg);
}
.rcslInner::before {
	border-top: 1px solid #CCCCCC;
	right: -8px;
	top: -1px;
	-webkit-transform: skew(40deg);
	transform: skew(40deg);
}
.reserveCompleteStepList .passive {
	background-color: #FFFFFF;
	color: #CCCCCC;
}
.reserveCompleteStepList .active {
	background-color: #FFFFFF;
	color: #CC4466;
}
.reserveCompleteStepList .passive .rcslInner::before,
.reserveCompleteStepList .passive .rcslInner::after,
.reserveCompleteStepList .active .rcslInner::before,
.reserveCompleteStepList .active .rcslInner::after {
	background-color: #FFFFFF;
}
.reserveCompleteStepList li:last-child .rcslInner::before,
.reserveCompleteStepList li:last-child .rcslInner::after {
	content: normal;
}

/* 見出し */
.rsvHeadline {
	background-color: #EEEEEE;
	color: #333333;
	font-size: 13px;
	font-weight: bold;
	line-height: 1.4;
	padding: 15px 10px;
}
.rsvHeadlineBt {
	background-color: #F4F4F4;
	color: #CC4466;
	font-size: 13px;
	font-weight: bold;
	line-height: 1;
	padding: 10px;
}

.rsvHeadlineLead {
	padding: 0 10px;
}
.rsvHeadlineLead li {
	color: #665555;
	padding-left: 1em;
	position: relative;
}
.rsvHeadlineLead li:before {
	content: "※";
	display: block;
	left: 0;
	position: absolute;
	text-align: center;
	top: 0;
	width: 1em;
}

.fcOrange {
	color: #E57417;
}

/* クーポン画面 */
.iconPlus {
	display: block;
	width: 17px;
	height: 17px;
	text-indent: -9999px;
	overflow: hidden;
	background: url("/CSP/img/bt/smb/b_icon_plus.png?switch=20200414") no-repeat;
}
.typeList { display:table-cell; font-size: 10px; vertical-align: middle; }
.typeList dt { display: table-cell; padding-right: 3px; vertical-align: middle; }
.typeList dd { display: table-cell; text-align: left; vertical-align: middle; }

.couponTitle {
	font-size: 14px;
	font-weight: bold;
	color: #555555;
}
.couponList li { float: left; margin: 5px 3px 0 0; }
.couponTerm { float: left; margin-right: 3px; color: #CC4466; }
.prArea		{ margin: 0 5px;  border-top: 1px solid #DDDDDD; padding: 5px; }
.reserveArea { background-color: #FFE2E8; padding: 10px; }

/* 日時選択画面 */
.tabBottom {
	border-bottom: 2px solid #917979;
	margin-bottom: 10px;
}

.reserveDateTabOn {
	background-color: #F5C3CC;
	-webkit-border-top-left-radius: 4px;
	-webkit-border-top-right-radius: 4px;
	border-top-left-radius: 4px;
	border-top-right-radius: 4px;
	padding: 5px;
	cursor: pointer;
	font-weight: bold;
	font-size: 11px;
	color: #632523;
}

.reserveDateTabOff {
	background-color: #D6DBE1;
	-webkit-border-top-left-radius: 4px;
	-webkit-border-top-right-radius: 4px;
	border-top-left-radius: 4px;
	border-top-right-radius: 4px;
	padding: 5px;
	cursor: pointer;
	font-weight: bold;
	font-size: 11px;
	color: #999999;
}

.topTable {
	border: 1px solid #BCBCBC;
	background-color: #F5F3EF;
	padding: 5px;
}

.whiteTable {
	border: 1px solid #BCBCBC;
	background-color: #FFFFFF;
	padding: 5px;
}

.reserveTerms dt{
	display: inline-block;
	width: 29px;
	vertical-align: middle;
	text-align: center;
	font-weight: bold;
}
.reserveTerms dd{
	display: inline-block;
	vertical-align: middle;
	font-size: 10px;
}
.leftLine {
	width: 39%;
	border-left: 1px solid #A6A6A6;
	padding-left: 10px;
}
.dayTable {
	border-collapse: collapse;
	border-spacing: 0;
	width: 99.9%;
}
.dayTable th, .dayTable td {
	border: 1px solid #CCCCCC;
	text-align: center;
	position: relative;
}
.timeTable {
	border-collapse: collapse;
	border-spacing: 0;
	color: #000000;
	height: 275px;
	width: 100%;
}
.timeTable td {
	border: none;
	height: 35px;
	text-align: center;
	line-height: 34px;
}
.timeTable td.isDisabled,
.telCell.isDisabled {
	background: #FFFFFF;
	color: #CCCCCC;
}
.timeTable.timeColor td,
.timeColor > th.w16p {
	min-width: 56px;
	padding-right: 2px;
}
.timeTable tr:not(:first-child) > td {
	border-top: 1px solid #CCCCCC;
}
.timeTableBand td.timeSharp {
	font-size: 14px;
}
.timeTable tr:not(:first-child) > .timeSharp {
	border-top: 2px solid #CCCCCC;
}
.timeTableBand td:not(.timeSharp) > span {
	padding-left: 5px;
}
.otherSchedule {
	width: 100%;
	border-top: 1px solid #BCBCBC;
	border-left: 1px solid #BCBCBC;
}
.otherSchedule th, .otherSchedule td {
	border-top: 1px solid #FFFFFF;
	border-left: 1px solid #FFFFFF;
	border-right: 1px solid #BCBCBC;
	border-bottom: 1px solid #BCBCBC;
	padding: 5px;
}
.sun		{ background-color: #f4bfac; color: #000000; }
.sat		{ background-color: #bfd7ee; color: #000000; }
.close		{ background-color: #f4f4f4; z-index: -1; }
.telColText,
.closeColText {
	font-family: sans-serif;
	letter-spacing: 5px;
	left: 50%;
	position: absolute;
	top: calc(50% + 3px); /* letter-spacingが文字下部に5pxつくため、半分の2.5pxを切り上げた3px分を下にずらすことで上下中央寄せにする */
	transform: translate(-50%, -50%);
	white-space: nowrap;
	writing-mode: vertical-rl;
}
.OtherStylistContents {
	width: 100%;
	position: absolute;
	top: 0;
	left: 0;
	z-index: 2;
	-webkit-box-shadow: 5px 5px 5px rgba(0, 0, 0, .7);
	box-shadow: 5px 5px 5px rgba(0, 0, 0, .7);
}

/* ログイン画面 */
.loginRBox {
	background-color: #999191;
	border-radius: 12px;
	padding: 10px;
	color: #FFFFFF;
}
.forFisrtBeginner {
	background-color: #FFFFFF;
	border-radius: 12px;
	padding: 10px;
	color: #666666;
}

.bgMobilePopupWing {
	position: absolute;
	top: -10px;
	right: 0;
	width: 224px;
	padding-left: 20px;
}
.bgMobilePopupWing:before {
	content: '';
	position: absolute;
	top: 57px;
	left: 20px;
	display: block;
	width: 50px;
	height: 30px;
	background: #FF9999;
	border: 3px solid #FF9999;
	-webkit-transform: skew(-60deg);
}

.bgMobilePopup {
	position: relative;
	z-index: 1;
	padding: 10px;
	background: #FAEFEF;
	border: 2px solid #FF9999;
	-webkit-border-radius: 10px;
	border-radius: 10px;
	color: #666666;
}
.bgMobilePopup:before {
	content: '';
	position: absolute;
	top: 59px;
	left: 1px;
	display: block;
	width: 50px;
	height: 30px;
	background: #FAEFEF;
	-webkit-transform: skew(-60deg);
}

/* メニュー画面 */
.sumTable {
	border-spacing: 0px;
	width: 100%;
	border-top: none;
	border-left: none;
	font-weight: bold;
	font-size: 14px;
	color: #632523;
}
.sumTable th, .sumTable td {
	border-right: 1px solid #CCCCCC;
	border-bottom: 1px solid #CCCCCC;
	border-left: 1px solid #FFFFFF;
	border-top: 1px solid #D9D9D9;
	padding: 5px;
}
.chkResultTable tbody th {
	background-color: #F5C3CC;
}

/* couponMenuIcon spで利用するとアイコンが出ない
.couponMenuIcon {
	display: none !important;
}*/

/* 仮予約入力画面 */
.reserveDateTabOn {
	background-color: #F5C3CC;
	-webkit-border-top-left-radius: 4px;
	-webkit-border-top-right-radius: 4px;
	border-top-left-radius: 4px;
	border-top-right-radius: 4px;
	padding: 5px;
	cursor: pointer;
	font-weight: bold;
	font-size: 11px;
	color: #632523;
	width: 46%;
}

.reserveDateTabOff {
	background-color: #D6DBE1;
	-webkit-border-top-left-radius: 4px;
	-webkit-border-top-right-radius: 4px;
	border-top-left-radius: 4px;
	border-top-right-radius: 4px;
	padding: 5px;
	cursor: pointer;
	font-weight: bold;
	font-size: 11px;
	color: #999999;
	width: 46%;
}
.wCircle,
.circle {
	font-size: 16px;
	line-height: 1;
	vertical-align: middle;
}
.wtriangle{font-size:16px;line-height: 1;
	vertical-align: middle;}
.wtriangle a:hover{color:#303030;}
@media screen and (min-width: 981px) {
	.wtriangle{height:35px;text-align:center;}
}
.wCircle > a,
.wCircle > span,
.circle > a,
.circle > span {
	color: #CC4466 !important;
	display: block;
	height: 100%;
	position: relative;
	text-decoration: none !important;
	text-indent: -9999px;
	width: 100%;
}
.wCircle > a::before,
/* .wCircle > a::after, */
.wCircle > span::before{
	border: 1px solid #CC4466;
	border-radius: 100px;
	content: "";
	display: block;
	left: 0;
	margin: auto;
	position: absolute;
	right: 0;
}
.wCircle > a::before,
.wCircle > span::before {
	height: 14px;
	top: 50%;
	-webkit-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	transform: translateY(-50%);
	width: 14px;
}
/* .wCircle > a::after,
.wCircle > span::after {
	height: 8px;
	top: 50%;
	-webkit-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	transform: translateY(-50%);
	width: 8px;
} */
.circle > a:before,
.circle > span:before {
	border: 1px solid #CC4466;
	border-radius: 100px;
	content: "";
	display: block;
	height: 12px;
	left: 0;
	margin: auto;
	position: absolute;
	right: 0;
	top: 50%;
	-webkit-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	transform: translateY(-50%);
	width: 12px;
}
.timeTable td.isDisabled.wCircle > span::before,
.timeTable td.isDisabled.wCircle > span::after,
.timeTable td.isDisabled.circle > span::before {
	border: 1px solid #CCCCCC;
}
@media screen and (device-width : 480px) and (device-width : 800px) {
	.wCircle { font-size: 26px; line-height:24px; height:26px; }
	.timeTable td {
		border: none;
		height: 26px;
		text-align: center;
		line-height: 26px;
	}
}

@media screen and (min-device-width : 400px) {
	.w98p 	{ width: 99% !important; }
}

.w93p 	{ width: 93% !important; }

/* スタイリスト画面 */
.orderCassette	{
	margin-top: 5px;
	border-bottom: 1px solid #DDDDDD;
	padding: 5px 5px 10px 5px;
}

/* お客様情報入力 */
.imageHide {
	display: none;
}
/* カレンダータブ */
.calTab {
	position: relative;
	height: 32px;
	text-align: center;
	margin-top: 10px;
	font-weight: bold;
	left: -1px;
}
.calTab:after {
	content: '';
	position: absolute;
	bottom: -12px;
	display: block;
	width: 100%;
	height: 10px;
	_opacity: .1;
}
.calTab > li {
	display: inline-block;
	vertical-align: top;
	margin-right: 2px;
}
.calTab > li:last-child {
	margin-right: 0;
}
.calTab .calTabChild {
	position: relative;
	bottom: -2px;
	display: inline-block;
	width: 100%;
	height: 30px;
	line-height: 30px;
	padding: 0 10px;
	text-decoration: none !important;
	color: #666666 !important;
	font-weight: bold;
	white-space: nowrap;
	border-style: solid;
	border-width: 1px 1px 0 1px;
	border-color: #CDCDCD;
	border-radius: 4px 4px 0 0;
	-webkit-box-sizing: border-box;
}
.calTab .calTabChild:active {
	color: #D36985 !important;
	border-width: 2px 2px 0 2px;
	border-color: #D36985;
	-webkit-box-sizing: border-box;
}
.calTab .current .calTabChild {
	height: 32px;
	bottom: -2px;
	border-width: 2px;
	border-color: #917979 #917979 #FFFFFF #917979;
	color: #917979 !important;
	background: #FFF;
}

/* 縦リンク一覧 */
.verticalLinkList {
	position: relative;
}
.verticalLinkList > .normalSplitLineT {
	display: block;
	position: relative;
}
.verticalLinkList > .normalSplitLineT:last-child {
	border-bottom: 2px solid #BFB9B0;
}
.verticalLinkList > .normalSplitLineT > a,
.verticalLinkList > .normalSplitLineT > span,
.verticalLinkList > .normalSplitLineT > label {
	display: block;
	padding: 8px 30px 8px 10px;
	text-decoration: none !important;
	color: #666666 !important;
}
.verticalLinkList > .imageNormalSplitLineT > a,
.verticalLinkList > .imageNormalSplitLineT > span,
.verticalLinkList > .imageNormalSplitLineT > label {
	display: block;
	padding: 8px 30px 8px 10px;
	text-decoration: none !important;
	color: #666666 !important;
}
.verticalLinkList > .normalSplitLineT > label {
	padding: 8px 35px 8px 20px;
}
.verticalLinkList > .normalSplitLineT:first-child > label {
	border-radius: 10px 10px 0 0;
}
.verticalLinkList > .normalSplitLineT:last-child > label {
	border-radius: 0 0 10px 10px;
}
.verticalLinkList > .normalSplitLineT > input:checked + label {
	background: #EF4256;
	color: #FFFFFF !important;
}
.verticalLinkList > .normalSplitLineT > input:checked + label:after {
	content: url(/CSP/img/my/smb/icons/icn_checked.png?switch=20200414);
	display: block;
	position: absolute;
	top: 50%;
	right: 10px;
	margin-top: -7.5px;
}
.verticalLinkList > .normalSplitLineT > input {
	position: absolute;
	z-index: 10;
	width: 100%;
	height: 100%;
	opacity: 0;
	-webkit-box-sizing: border-box;
	-webkit-tap-highlight-color: rgba(0,0,0,0);
}
.verticalLinkList > .menuCassetteWrap {
	-webkit-background-size: 100% 100%;
	background-size: 100% 100%;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	display: block;
	position: relative;
}
.verticalLinkList > .normalSplitLineT > a:after,
.verticalLinkList > .normalSplitLineT > .couponCassetteInner > a:after,
.slnCouponMenuList .couponCassetteInner > a:after,
.menuCassetteWrap > a:after {
	content: '';
	display: block;
	position: absolute;
	top: 50%;
	width: 9px;
	height: 14px;
	line-height: 1;
	margin-top: -6.5px;
	right: 10px;
	color: #7C7C7C;
	font-weight: bold;
	background: url(/CSP/img/common/smb/icon_link2.png?switch=20200414) no-repeat 0 0;
	-webkit-background-size: 9px 14px;
	background-size: 9px 14px;
}
.verticalLinkList input[type="checkbox"] {
	margin-right: 5px;
}
.gradationListWrap > .verticalLinkList > .normalSplitLineT {
	background-image: -webkit-gradient(linear, left top, left bottom, color-stop(0, #FFFFFF), color-stop(1, #E4E2DE));
}

/* 改変版 */
.verticalLinkList.altered > .normalSplitLineT:first-child {
	border-top-left-radius: 10px;
	border-top-right-radius: 10px;
	overflow: hidden;
}
.verticalLinkList.altered > .normalSplitLineT:last-child {
	border-bottom-left-radius: 10px;
	border-bottom-right-radius: 10px;
    overflow: hidden;
}
/* 非活性リンク */
ul > .normalSplitLineT.disable,
ul > .normalSplitLineT.disable:hover  {
	background: #F9F9F9 !important;
}
ul > .normalSplitLineT.disable > span {
	color: #A9A9A9 !important;
}
ul > .normalSplitLineT.disable .icnPCSite {
	background: url(/CSP/img/bt/smb/icons/icn_pcsite_disable.png?switch=20200414) no-repeat left center;
}
.selectedArea {
	padding: 8px 10px;
	background: #FFFFFF !important;
}
/* ブロックの区切り線 */
.boldSplitLineT		{ border-top: 2px solid #BFB9B0; }
.boldSplitLineB		{ border-bottom: 2px solid #BFB9B0; }
.normalSplitLineT	{ border-top: 1px solid #BFB9B0; }
.normalSplitLineR	{ border-right: 1px solid #BFB9B0; }
.normalSplitLineB	{ border-bottom: 1px solid #BFB9B0; }
.normalSplitLineL	{ border-left: 1px solid #BFB9B0; }

.imageNormalSplitLineT	{ border-top: 1px solid #BFB9B0; }


/* 詳細要望入力 */
.mmSettingBox {
	margin: 10px;
	padding: 10px;
	background-color: #F2F2F2;
	border-radius: 6px;
}
.mmSettingHeadline {
	font-weight: bold;
	color: #666666;
}
.mmSettingBody {
	border-top: 1px solid #CCC;
	margin-top: 5px;
	padding-top: 10px;
}

.iconCouponTypeCT01 {
		display: block;
		border: 2px solid #FF6666;
		width: 30px;
		height: 30px;
		line-height: 30px;
		text-align: center;
		color: #FF6666;
		font-size: 10px;
		font-weight: bold;
		background-color: #FFFFFF;
}
.iconCouponTypeCT02 {
		display: block;
		border: 2px solid #AF51AF;
		width: 30px;
		height: 30px;
		line-height: 30px;
		text-align: center;
		color: #AF51AF;
		font-size: 10px;
		font-weight: bold;
		background-color: #FFFFFF;
}
.iconCouponTypeCT03 {
		display: block;
		border: 2px solid #5E6EDD;
		width: 30px;
		height: 30px;
		line-height: 30px;
		text-align: center;
		color: #5E6EDD;
		font-size: 10px;
		font-weight: bold;
		background-color: #FFFFFF;
}

/* 小サイズ */
.iconCouponTypeSmallCT01 {
		display: block;
		border: 2px solid #FF6666;
		width: 30px;
		text-align: center;
		color: #FF6666;
		font-size: 10px;
		font-weight: bold;
		background-color: #FFFFFF;
}
.iconCouponTypeSmallCT02 {
		display: block;
		border: 2px solid #AF51AF;
		width: 30px;
		text-align: center;
		color: #AF51AF;
		font-size: 10px;
		font-weight: bold;
		background-color: #FFFFFF;
}
.iconCouponTypeSmallCT03 {
		display: block;
		border: 2px solid #5E6EDD;
		width: 30px;
		text-align: center;
		color: #5E6EDD;
		font-size: 10px;
		font-weight: bold;
		background-color: #FFFFFF;
}
.couponMenuIcons{
	overflow:hidden;
}
.couponMenuIcons li {
	float: left;
	margin-right: 5px;
	margin-bottom: 5px;
	padding: 1px 10px;
	color:white;
	text-align: left;
	white-space: nowrap;
}
.limitedCouponIcon > li {
	background: #FFFFFF;
	border: 1px solid #CCBBBB;
	color: #665555;
	float: left;
	font-size: 11px;
	line-height: 1;
	margin: 0 5px 5px 0;
	padding: 2px 9px;
}
.limitedCouponIcon + .rsvToggleMenuNameList,
.limitedCouponIcon + .couponMenuName,
.couponDetailModalArea .limitedCouponIcon + .couponDetailModalMenuName {
	margin-top: 0;
	padding-top: 0;
}
.narrowdownPanel {
	border-radius: 10px 10px 0 0;
	webkit-box-shadow: 1px 1px 0 0 #CCCCCC;
}
.narrowdownPanelTitle {
	padding-bottom: 2px;
	border-bottom: 1px dotted #DDDDDD;
	font-weight: bold !important;
	font-size: 14px;
}
.narrowdownPanelTitle:before {
	content: '';
	display: inline-block;
	width: 5px;
	height: 1em;
	background-color: #FFFFFF;
	margin-right: 5px;
}
.listHeader {
	padding: 8px 10px;
	color: #FFFFFF;
	background:#333333;
}
.listHeader dt {
	position: relative;
	z-index: 10;
	min-width: 6.5em;
	background-color: #FEFEFE;
	color: #632523;
	font-size: 10px;
	line-height: 18px;
	padding: 0 10px;
	border-radius: 2px 0 0 2px;
	margin-right: 15px;
}
.listHeader dt:after {
	content: '';
	display: block;
	position: absolute;
	z-index: 0;
	top: 2px;
	right: -7px;
	width: 14px;
	height: 14px;
	background-color: #FEFEFE;
	-webkit-transform: rotate(45deg) scale(.95);
}
.listHeader dt,
.listHeader dd {
	margin-bottom: 1px;
}
.listSubHeader {
	position: relative;
	background-color: #f0eddd;
	padding: 5px 10px;
	margin-bottom: 15px;
	border-radius: 0 0 2px 2px;
}
.listSubHeader:after {
	content: '';
	position: absolute;
	left: 20px;
	bottom: -6px;
	display: block;
	width: 0;
	height: 0;
	border-top: 6px solid transparent;
	border-right: 6px solid #f0eddd;
	border-bottom: 6px solid #f0eddd;
	border-left: 6px solid transparent;
	-webkit-transform: rotate(45deg);
}
.listNumberBox {
	position: relative;
	background-color: #f0eddd;
	padding: 3px 10px;
}
.listNumberBox:after {
	content: '';
	position: absolute;
	left: 20px;
	bottom: -6px;
	display: block;
	width: 0;
	height: 0;
	border-top: 6px solid transparent;
	border-right: 6px solid #f0eddd;
	border-bottom: 6px solid #f0eddd;
	border-left: 6px solid transparent;
	-webkit-transform: rotate(45deg);
}

.changeSearchRule {
	height: 30px;
}

.changeSearchRule > a {
	display: table-cell;
	vertical-align: middle;
	padding: 0 4px;
	width: 50px;
	height: 30px;
	white-space: nowrap;
	line-height: 30px;
	font-size: 10px;
	color: #3A2C1E !important;
	text-align: center;
	text-decoration: none;
	border-radius: 8px;
	-webkit-background-size: 100% 100%;
	background-size: 100% 100%;
	background: -webkit-gradient(
		linear,
		left top,
		left bottom,
		from(#FFFFFF),
		to(#DEDEDE),
		color-stop(0.6, #FFFFFF)
	);
	border-top: 1px solid #737373;
	border-bottom: 1px solid #BBB8B9;
	border-left: 1px solid #737373;
	border-right: 1px solid #BBB8B9;
	-webkit-box-sizing: border-box;
}

.changeSearchRuleSubmit > input {
	display: table-cell;
	vertical-align: middle;
	padding: 0 4px;
	width: 50px;
	height: 30px;
	white-space: nowrap;
	line-height: 30px;
	font-size: 10px;
	color: #3A2C1E !important;
	text-align: center;
	text-decoration: none;
	border-radius: 8px;
	-webkit-background-size: 100% 100%;
	background-size: 100% 100%;
	background: -webkit-gradient(
		linear,
		left top,
		left bottom,
		from(#FFFFFF),
		to(#DEDEDE),
		color-stop(0.6, #FFFFFF)
	);
	border-top: 1px solid #737373;
	border-bottom: 1px solid #BBB8B9;
	border-left: 1px solid #737373;
	border-right: 1px solid #BBB8B9;
	-webkit-box-sizing: border-box;
}

.narrowdownList {
	border-radius: 0 0 10px 10px;
	border: solid #BFB9B0;
	border-width: 1px 1px 2px 1px;
}
/*arrowdownList .normalSplitLineT:first-of-type {
	border-top-left-radius: 10px;
	border-top-right-radius: 10px;
}*/
.detailBodyShopInfo {
	padding-bottom: 20px;
	margin-bottom: 10px;
}


@media screen and (min-width: 400px){
	.selectCoupon br{
		display: none;
			}
}

/* アクションエリア */
.bottomActionAreaWrapper {
	position: fixed;
	left: 0;
	bottom: 0;
	z-index: 100;
	width: 100%;
	padding: 0 10px;
	-webkit-box-sizing: border-box;
}
.bottomActionArea {
	background-color: rgba(0, 0, 0, .6);
	border-radius: 8px 8px 0 0;
}

.innerBottomActionAreaWrapper {
	width: 100%;
	padding: 10px;
	-webkit-box-sizing: border-box;
}
.innerBottomActionArea {
	border-top: 2px solid #D36985;
	border-bottom: 2px solid #D36985;
	border-right: 2px solid #D36985;
	border-left: 2px solid #D36985;
	background-color: #FFFFFF;
	-webkit-box-shadow: 0 -2px 2px 0 rgba(0, 0, 0, .1);
	border-radius: 8px 8px 8px 8px;
}

.headline3 {
	font-size: 16px;
	padding: 15px 6px 12px 6px;
	width:100%;
	color: #d36985;
	-webkit-box-sizing: border-box;
	background: #FFFFFF;
	border-top: solid 1px #e2e2e2;
	border-bottom: solid 1px #e2e2e2;
}
.btn5 {
	display: inline-block;
	vertical-align: middle;
	margin-left: auto;
	margin-right: auto;
	padding-left: 4px;
	padding-right: 4px;
	font-size: 10px;
	color: #666666 !important;
	text-align: center;
	text-decoration: none;
	font-weight: bold;
	background: 0;
	border-radius: 4px;
	-webkit-background-size: 100% 100%;
	background-size: 100% 100%;
	background: -webkit-gradient(
		linear,
		left top,
		left bottom,
		from(#FFFFFF),
		to(#F2F2F2)
		);
	border: 1px solid #A29697;
	-webkit-box-sizing: border-box;
}
.narrowButtonWrapper > li {
	display: inline-block;
	height: 33px;
	width: 135px;
	border: 1px solid #a29697;
	vertical-align: middle;
	line-height: 33px;
	color: #666666;
	font-weight: bold;
	text-decoration: none;
	text-align: center;
	background: -webkit-gradient( linear, left top, left bottom, from(white), to(#F2F2F2) );}

.narrowButtonWrapper > li a {
	display: block;
	width: 100%;
	height: 100%;
	color: #666666;
	text-decoration: none;
}
.narrowButtonWrapper > li:first-child {
	-webkit-border-top-left-radius: 4px;
	-webkit-border-bottom-left-radius: 4px;
	border-left: 1px solid #A29697;
	border-top: 1px solid #A29697;
	border-bottom: 1px solid #A29697;
	border-right-width: 0;
}
.narrowButtonWrapper > li:last-child {
	-webkit-border-top-right-radius: 4px;
	-webkit-border-bottom-right-radius: 4px;
	border-right: 1px solid #A29697;
	border-top: 1px solid #A29697;
	border-bottom: 1px solid #A29697;
}
.narrowButtonWrapper > li:first-child a {
	-webkit-border-top-left-radius: 4px;
	-webkit-border-bottom-left-radius: 4px;
}
.narrowButtonWrapper > li:last-child a {
	-webkit-border-top-right-radius: 4px;
	-webkit-border-bottom-right-radius: 4px;
}
.topHeadlineRecommend {
	padding: 10px 10px;
	line-height: 22px;
	z-index: 0;
	font-size: 16px;
	color: #988989;
	border-bottom: 2px solid #BFB9B0;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	min-height: 40px;
	background: white;
	border-top: solid 1px #BFB9B0;
}
.topHeadlineRecommend::before {
	content: '';
	display: inline-block;
	width: 15px;
	height: 15px;
	background: #988989;
	vertical-align: -1px;
	margin-right: 7px;
	border-radius: 4px;
}
.salonOptionIconList {
	margin: -3px 0 6px;
}
.salonOptionIconList > li {
	margin-top: 3px;
}
.salonOptionIconList > li + li {
	margin-left: 5px;
}
.icnImmediatelyRsv,
.icnTemporaryRsv,
.icnExperience,
.icnMerchantsPoint,
.icnMensRecommend {
	border-radius: 4px;
	display: inline-block;
	font-size: 10px;
	padding: 0 5px;
}
.icnImmediatelyRsv,
.icnTemporaryRsv,
.icnExperience {
	color: #988989;
	border: 1px solid #988989;
	background-color: #FFFFFF;
}
.icnMerchantsPoint {
	color: #FFFFFF;
	border: 1px solid #EB961D;
	background-color: #ECA241;
}
.icnMensRecommend {
	background-color: #E4EDF0;
	border: solid 1px #8CB5DF;
	color: #4286CC;
}
.icnInfoMark {
	display: inline-block;
	width: 20px;
	height: 20px;
	padding: 2px;
	line-height: 20px;
	text-align: center;
	border-radius: 20px;
	border: 2px solid #D36985;
	background: -webkit-gradient(
		linear,
		left top,
		left bottom,
		from(#FFFFFF),
		to(#DEDEDE),
		color-stop(0.6, #FFFFFF)
	);
	border-radius: 20px;
	color: #999999;
	font-size: 20px;
	font-weight: bold;
}

/* サロンダイレクト */
.detailBodySD {
	padding-bottom: 15px;
	margin-bottom: 10px;
}
.headerUtilSD {
	background: #DFD6C8;
	color: #FFFFFF;
	font-size: 12px;
	font-weight: normal;
	text-align: center;
	word-wrap: break-word;
	overflow-wrap: break-word;
}
.detailHeaderShopInfo {
	padding: 0px 0px 10px 0px;
	background: #F6F5EC;
	border-bottom: 2px solid #917979;
}
body, input, select, textarea, table {
	color: #666666;
	font-size: 12px;
	line-height: 1.5;
}
.detailPankuzu {
	color: #9A8376;
}
.detailPankuzu li {
	float: left;
}
.detailPankuzu {
	color: #9A8376;
}
.detailPankuzu li {
	float: left;
}
.detailHeaderShopInfo .salonOptionIconList {
	margin-top: 8px;
	text-align: center;
}
.detailTitle {
	font-size: 20px;
	line-height: 1;
	word-break: break-all;
}
.detailTitleRubi {
	font-size: 10px;
	font-weight: normal;
	line-height: 1;
	margin-top: 3px;
}
.detailPankuzu li:after {
	content: " > ";
}
.detailPankuzu li:last-child:after {
	content: "";
}
.submitAreaSD {
	background-color: #FFFFFF;
	display: block;
	line-height: 20px;
	padding: 10px 0;
}
.footerSD {
	border-top: 2px solid #917979;
	padding: 5px 0;
}
.changeDeviceSD {
	margin-top: 10px;
	padding-top: 20px;
	padding-bottom: 20px;
	border-top: 2px solid #917979;
}

#calHeader{
	top: 0;
	left: 0;
	width: 100%;
	z-index: 999;
}

.calHeaderWrap {
	top: 0;
	left: 0;
	transform: translate3d(0,0,0);
	width: 100%;
	z-index: 999;
}
/*クーポン絞り込み */
.narrowSearchBar {
	height: 39px;
}
.couponListHeader {
	background: #988989;
	border-bottom: solid 3px #877878;
	border-radius: 4px;
	border-top: none;
	color: #FFFFFF;
	cursor: pointer;
	padding: 9px 10px 10px;
}
.couponListHeader.active {
	border-bottom: none;
	border-radius: 4px 4px 0 0;
}
.couponListHeader h3 {
	font-size: 14px;
}
.icnNbCouponSearch {
	border: solid 2px #EAE7E7;
	border-radius: 50%;
	height: 11px;
	margin-right: 10px;
	position: relative;
	width: 11px;
}
.icnNbCouponSearch:after {
	background: #EAE7E7;
	border-radius: 2px;
	content: "";
	height: 7px;
	left: 12px;
	position: absolute;
	top: 11px;
	-webkit-transform: rotate(-45deg);
	transform: rotate(-45deg);
	width: 3px;
}
.iconSwich {
	width: 11px;
	height: 11px;
	background: #FFFFFF;
	position: absolute;
	right: 12px;
	top: 12px;
	-webkit-transform: rotate(-45deg);
	transform: rotate(-45deg);
}
.iconSwich:after {
	content: '';
	position: absolute;
	width: 11px;
	height: 11px;
	background: #988989;
	left: 3px;
	top: -3px;
	-webkit-transform: rotate(-90deg);
	transform: rotate(-90deg);
}
.active .iconSwich  {
	top: 16px;
}
.active .iconSwich:after  {
	left: -3px;
	top: 3px;
}
.couponSearchListMenuWrap {
	margin-bottom: 19px;
	margin-left: 10px;
	margin-right: 10px;
}
.couponSearchListMenu {
	border: solid #988989;
	border-radius: 0 0 4px 4px;
	border-width: 0 1px 1px 1px;
}
.cmHeading {
	margin-bottom: 5px;
	color: #CC4466;
	font-size: 16px;
	font-weight: bold;
}
.couponSerachTtl{
	position: relative;
	display: block;
	background: url("/CSP/img/bt/smb/icons/icon_white_serach.png?switch=20200414") left center no-repeat;
	background-size: 20px;
	padding-left: 27px;
	color: #ffffff !important;
	text-decoration: none !important;
	font-size: 15px
}

/* Icon Plus */
.iconPlusMinus {
    width: 16px;
    height: 2px;
    background: #ffffff;
    position: absolute;
    right: 10px;
    top: 19px;
}
.iconPlusMinus:after {
    content: '';
    position: absolute;
    width: 2px;
    height: 16px;
    background: #ffffff;
    left: 7px;
    top: -7px;
}
/* Icon Minus */
.active .iconPlusMinus:after  {
    width: 0;
    height: 0;
    background:none;
    position: absolute;
    right: 10px;
    top: 16px;
}
.couponMenuAssort{
	border-top: 1px solid #E9E9D9;
	border-bottom: 1px solid #E9E9D9;
	background:#FBFAF2;
	padding:7px 10px;
}
.couponMenuAssortList{
	text-align: center;
	margin-top: 10px;
}
.couponMenuAssortList > li{
	display: inline-block;
	margin: 0 5px;
}
.couponMenuAssortList > li > input[type="radio"] {
	display: none;
}
.couponMenuAssortList > li > input[type="radio"] + label {
	display: table-cell;
	width: 84px;
	height: 40px;
	vertical-align: middle;
	color: #777373 !important;
	text-align: center;
	font-weight: bold;
	line-height: 1.2;
	border-radius: 6px;
	background: -webkit-gradient(
		linear,
		left top,
		left bottom,
		from(#FFFFFF),
		to(#E2E2E2)
	);
	border: 1px solid #B4B0B0;
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
	-webkit-tap-highlight-color: rgba(0,0,0,0);
}
.couponMenuAssortList > li > input[type="radio"] + label.disabled {
	color: #D1D1D1 !important;
	background:#ebebeb;
	border: 1px solid #E7E7E7;
}
.couponMenuAssortList > li > input[type="radio"]:checked + label {
	background: #BFB4AB;
	color: #FFFFFF !important;
	-webkit-tap-highlight-color: rgba(0,0,0,0);
}
.twoColumnSelect {
	width: 100%;
	background-color: #FFFFFF;
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
}
.twoColumnSelect li {
	float: left;
	position: relative;
	width: 50%;
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
	border-right: #E9E9D9 1px solid;
	border-bottom: #E9E9D9 1px solid;
	display: table;
	font-size: 12px;
}
.twoColumnSelect li:nth-child(even) {
	border-right: none;
}
.twoColumnSelect li label {
	display: table-cell;
	vertical-align: middle;
	padding: 8px;
	font-size: 12px;
	text-decoration: none;
	color: #333333 !important;
	-webkit-tap-highlight-color: rgba(0,0,0,0);
}
.twoColumnSelect li label.disabled{
	color: #D8D5D5 !important;
}
.twoColumnSelect li input[type="checkbox"] {
	border: 3px solid #DAD8D8;
	-webkit-border-radius: 0;
  	border-radius: 0;
	-webkit-appearance: none;
	appearance: none;
	-webkit-box-sizing: content-box;
	box-sizing: content-box;
	position: relative;
	margin-right: 7px;
	width: 22px;
	height: 22px;
	background: #F7F7F7;
	vertical-align: middle;
	-webkit-tap-highlight-color: rgba(0,0,0,0);
}

.twoColumnSelect li label.disabled input[type="checkbox"]{
	border: 3px solid #EEE9E9;
	background: #FFFFFF;
}

.twoColumnSelect li input[type="checkbox"]:checked {
	border: 3px solid #DAD8D8;
	background: #F7F7F7;
}

.twoColumnSelect li input[type="checkbox"]:checked:before {
	position: absolute;
	left: 1px;
	top: 15px;
	display: block;
	content: "";
	width: 10px;
	height: 4px;
	background: #CC4466;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
	-webkit-transform-origin: right center;
	transform-origin: right center;
}

.twoColumnSelect li input[type="checkbox"]:checked:after {
	display: block;
	position: absolute;
	left: 9px;
	top: 15px;
	content: "";
	width: 16px;
	height: 4px;
	background: #CC4466;
	-webkit-transform: rotate(-53deg);
	transform: rotate(-53deg);
	-webkit-transform-origin: left center;
	transform-origin: left center;
}

.couponSerachBtn {
	width: 240px;
	display: block;
	vertical-align: middle;
	margin-left: auto;
	margin-right: auto;
	padding-left: 5px;
	padding-right: 5px;
	font-size: 14px;
	color: white !important;
	text-align: center;
	text-decoration: none;
	font-weight: bold;
	border: solid 1px #DA949B;
	background: 0;
	border-radius: 4px;
	-webkit-background-size: 100% 100%;
	background-size: 100% 100%;
	background: -webkit-gradient(
	 linear,
	 left top,
	 left bottom,
	 from(#FF858E),
	 to(#F64459),
	 color-stop(.2, #FF858E)
	 );
	-webkit-box-shadow: inset 0px 1px 0px 0 rgba(255, 255, 255, .5), inset 0px 0px 5px 0 rgba(255, 255, 255, .75);
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}
.twoColumnSelect li.searchOption{
	border-right: none;
	width: 100%;
}
.twoColumnSelect li.searchOption input[type="checkbox"]{ float: left; }
.twoColumnSelect li.searchOption .searchOptionText{
	float: left;
	line-height: 1.3;
	padding-top: 3px;
	width: 85%;
}
@media screen and (min-width: 550px){
	.twoColumnSelect li.searchOption .searchOptionText{
		padding-top: 1.6%;
		width: 93%;
	}
}

/*icoArrow ポジション指定*/
.icoArrowR.otherStaffBtnWrap:before {
	left: 23px;
	top: 10px;
}
.otherStaffBtn {
	padding-left: 35px;
}

/*ボタン付きクーポンカセット*/
.couponCassetteWrap {
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
	display: table;
	width: 100%;
}
.slnCouponMenuList .couponCassetteWrap {
	border: solid #BFB9B0;
	border-width: 1px 1px 0 1px;
}
.slnCouponMenuList .couponCassetteWrap:last-child {
	border-bottom: 1px solid #BFB9B0;
}
.couponCassetteInner {
	display: table-cell;
	vertical-align: middle;
	word-break: break-all;
}
.couponCassetteInner > a {
	display: block;
	padding: 10px 30px 10px 10px;
	text-decoration: none !important;
	color: #666666 !important;
}
.couponTextWrap {
	padding: 4px;
	font-size :12px;
	font-family: monospace;
	font-weight: bold;
	background-color: #ffe0e0;
	border-right: 1px solid #ffc2c2;
	color: #FF6666;
}
.couponTextWrap.couponLabelCT02 {
	background-color: #FF9DA2;
	color: #FFFFFF;
}
.couponTextWrap.couponLabelCT01 {
	background-color: #FFC8CB;
	color: #FC636B;
}
.couponTextWrap.couponLabelCT03 {
	background-color: #FFE0E0;
	color: #FC636B;
}
.slnCouponMenuList .couponCassetteInner {
	vertical-align: top;
}
.slnCouponMenuList .couponTextWrap {
	border-right: none;
	padding: 8px 4px 0;
}
.cassetteBtnWrap .btn2,
.cassetteBtnWrap .btn3 {
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
	width: 100%;
	min-width: 120px;
	max-width: 200px;
	font-size: 10px;
	padding-top: 8px;
}
.menuCassetteWrap > a,
.menuCassetteWrap > span {
	display: block;
	padding: 15px 30px 15px 10px;
	text-decoration: none;
	color: #666666;
}
.menuCassetteWrap {
	border: solid #BFB9B0;
	border-width: 1px 1px 0 1px;
}
.menuCassetteWrap:last-child {
	border-bottom: 1px solid #BFB9B0;
}
.changeBtnWrap {
	border: solid #BFB9B0;
	border-radius: 0 0 10px 10px;
	border-width: 0 1px 2px 1px;
	padding: 20px 0;
}

/*iconPlusMinusGray ポジション指定*/
.iconPlusMinusGray.addBtnIcon {
	right: 0;
	top: 15px;
}
.iconPlusMinusGray.addBtnIcon:after {
	left: 7px;
	top: -7px;
}
.slnMenuNote {
	padding: 10px;
	word-wrap : break-word;
	overflow-wrap : break-word;
}

/*アンケート回答画面*/
.answerBox li{
	border-bottom: 1px dotted #cccccc;
	margin-bottom: 10px;
	padding-bottom: 10px;
}
.answerBox li:last-child{
	border-bottom: none;
	margin-bottom: 0;
	padding-bottom: 0;
}
.answerBox .pullDown {
	position: relative;
	display: block;
	margin-right: 2px;
}
.answerBox .pullDown:before {
	position: absolute;
	content: '';
	width: 0px;
	height: 0px;
	border-style: solid;
	border-width: 8px 4px 0 4px;
	border-color: #999 transparent transparent transparent;
	top: 14px;
	right: 10px;
}
.answerBox .pullDownSelect {
	-webkit-appearance: none;
	padding: 7px 20px 6px 7px;
	border-radius: 5px;
	border: 1px solid #BBBBBB;
	background-color: #FFFFFF;
	color: #666666;
}
.jscPullDownList label:first-child{
	margin-top:5px;
}
.returnBtn{
	margin-left:10px;
}
.answerBox .textArea{
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
	border: 1px solid #BBBBBB;
	border-radius: 5px;
}

.bgAlert {
	background: #F3F1CA;
}
.bgComplete {
	background: #F2F2F2;
}
.confirmed {
	display: inline-block;
	padding: 5px 10px 5px 0;
	margin: 10px 0;
}

.toggleBgAlertText {
	padding: 2px 1px;
	border: 1px solid #A9A9A9;
}

.upperDate {
	color: #000000;
}
.upperDate tr {
	background-color: #FFFFFF;
}
.calDate {
	display: block;
	font-size: 14px;
	line-height: 18px;
	padding-top: 2px;
}
.attentionTxtWrap {
	background: #F3F1CA;
	margin-top: 5px;
	padding: 6px;
	text-align: center;
}
.attentionTxt {
	color: #666666;
	font-size: 13px;
}
.atEmphasis {
	color: #CC4466;
	display: block;
	font-size: 14px;
}

/*staffSelect*/
.rsvNoNominative,
.rsvNominative {
	margin-left: 15px;
	margin-right: 15px;
}
.rsvNominativeHead {
	color: #000000;
	font-size: 14px;
	font-weight: bold;
}
.rsvNominativeAlertTxt {
	color: #FF0000;
	margin-top: 10px;
}
.rsvNoNominativeStaffSelect,
.rsvNominativeStaffSelect {
	margin-left: 10px;
	margin-right: 10px;
}
.rsvNoNominativeStaffSelect + .rsvNominativeStaffSelect {
	margin-top: 30px;
}
.rsvNoNominativeStaffSelect + .rsvOtherNominativeStaffSelect {
	margin-top: 30px;
}
.rsvNominativeStaffSelect ~ .rsvOtherNominativeStaffSelect {
	margin-top: 20px;
}
.btnNoNominativeNextWrapStaffSelect + .btnBackToSlnCalWrapStaffSelect {
	margin-top: 10px;
}
.rsvStaffCassette {
	border-bottom: 1px solid #BFB9B0;
	border-top: 1px solid #BFB9B0;
	padding: 15px;
	position: relative;
}
.rsvStaffCassette ~ .rsvStaffCassette {
	border-top: none;
}
.rsvStaffImg {
	float: left;
}
.rsvStaffDtl {
	overflow: hidden;
	padding: 0 0 45px 15px;
}
.rsvStaffName {
	color: #665555;
	font-size: 16px;
	font-weight: bold;
	margin-top: -2px;
	word-wrap: break-word;
}
.rsvStaffRankWrap {
	line-height: 1;
	word-wrap: break-word;
}
.rsvStaffRank {
	color: #CC4466;
	font-size: 10px;
}
.rsvStaffCareer {
	color: #333333;
	font-size: 10px;
}
.rsvStaffCatch {
	background-color: #F6F5EC;
	color: #663300;
	font-size: 11px;
	margin-top: 15px;
	padding: 5px;
	word-wrap: break-word;
}
.rsvStaffCatch a:link { color: #4C4C80; }
.rsvStaffCatch a:visited { color: #996699; }
.rsvStaffCatch a:hover,
.rsvStaffCatch a:active { color: #7878CC; text-decoration: none; }

.rsvStaffNominatePrice {
	margin-top: 10px;
}
.rsvStaffBtn {
	bottom: 15px;
	left: 148px;
	position: absolute;
	right: 15px;
}
.rsvStaffBtn input {
	width: 100%;
}
.rsvStaffBtn .btnH34 {
	font-size: 12px;
}

/*staffSelectModal*/
.rsvModalOverlay {
	background: black;
	display: none;
	filter: alpha(opacity=60);
	max-height: 152%;
	height: 152%;
	left: 0;
	opacity: 0.6;
	position: fixed;
	-webkit-tap-highlight-color: rgba(0,0,0,0) !important;
	top: 0;
	width: 100%;
	z-index: 1000;
}
.rsvModalArea {
	display: none;
	left: 0;
	padding: 0 30px 30px;
	position: absolute;
	right: 0;
	z-index: 1001;
}
.rsvModalContents {
	background-color: #FFFFFF;
	-webkit-border-radius: 4px;
	-moz-border-radius: 4px;
	border-radius: 4px;
	padding: 15px;
}
.rsvModalCloseBtn {
	height: 30px;
	position: absolute;
	right: 15px;
	top: -12px;
	width: 30px;
	z-index: 1001;
}
.rsvModalCloseBtn > a {
	background-color: #FFFFFF;
	border: 2px solid #CCCCCC;
	border-radius: 22px;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	color: #8A7C7C !important;
	display: block;
	height: 100%;
	text-decoration: none !important;
	text-indent: -9999px;
	vertical-align: top;
	width: 100%;
}
.rsvModalCloseBtn > a::before,
.rsvModalCloseBtn > a::after {
	background-color: #999999;
	content: "";
	display: block;
	height: 3px;
	left: 8px;
	position: absolute;
	top: 13px;
	width: 15px;
}
.rsvModalCloseBtn > a::before {
	-webkit-transform: rotate(45deg);
	-moz-transform: rotate(45deg);
	transform: rotate(45deg);
}
.rsvModalCloseBtn > a::after {
	-webkit-transform: rotate(-45deg);
	-moz-transform: rotate(-45deg);
	transform: rotate(-45deg);
}
.rsvModalStaffImgWrap {
	float: left;
	margin-right: 15px;
	width: 120px;
}
.rsvModalStaffPrideimage {
	margin-top: 5px;
	word-wrap: break-word;
}
.rsvModalStaffRank {
	color: #CC4466;
}
.rsvModalStaffNameWrap {
	margin-top: 12px;
	word-wrap: break-word;
}
.rsvModalStaffName {
	font-size: 13px;
}
.rsvModalStaffCatch {
	color: #CC4466;
	font-size: 1.1em;
	margin-top: 15px;
	word-wrap: break-word;
}
.rsvModalStaffReadWrap {
	color: #333333;
	margin-top: 25px;
	word-wrap: break-word;
}
.rsvModalStaffPrideTechnique {
	margin-top: 25px;
}
.rsvModalStaffPrideTechnique > dt {
	color: #CC4466;
	font-weight: bold;
}
.rsvModalStaffPrideTechnique > dd {
	margin-top: 5px;
}
.rsvModalStaffIcnScissors {
	background: url(/CSP/img/bt/smb/icons/icn_scissors.png?switch=20200414) no-repeat 0 0;
	padding-left: 20px;
}

.btnLGray {
	background: -webkit-gradient( linear, left top, left bottom, from(white), to(#F2F2F2) );
	border: 1px solid #A29697;
	border-radius: 4px;
	box-sizing: border-box;
	display: block;
	font-weight: bold;
	text-align: center;
}

/* アプリDLボタン */
.appDownloadBtn > a {
	color: #666666;
	text-decoration: none;
	width: 170px;
}
.appDownloadLead {
	font-size: 10px;
	padding-left: 1em;
	position: relative;
}
.appDownloadLead::before {
	content: "※";
	display: block;
	left: 0;
	position: absolute;
	text-align: center;
	width: 1em;
}
.couponResultMessage {
	color: #988989;
	font-size: 12px;
	line-height: 1;
}
.couponPager {
	background-color: #F0EDDD;
	margin: 10px -10px 0;
	padding: 10px;
}
.couponPager > p {
	height: 34px;
	line-height: 34px;
}
.couponPager > p > a {
	font-size: 13px;
	width: 90px;
}
.couponTblInner {
	padding: 15px 8px;
}
.couponCassetteInner,
.couponTblInner,
.couponTblInner2,
.couponTblInner3 {
	display: table-cell;
	vertical-align: top;
	word-break: break-all;
}
.couponMenuIcons li.couponMenuIconOff {
	color: #CC4466;
	font-size: 10px;
	padding: 0;
	text-align: left;
}
.cassetteBtnWrap {
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	width: 100%;
}
.couponImgWrap {
	text-align: center;
	width: 119px;
}
.btnCouponTypeFilter {
	background-color: #FFFFFF;
	border: solid #CCCCCC;
	border-radius: 4px;
	border-width: 1px 1px 3px 1px;
	box-sizing: border-box;
	display: table-cell;
	font-size: 13px;
	font-weight: bold;
	padding: 0 5px;
	text-align: center;
	vertical-align: middle;
	width: 100%;
}
.couponTypeFilter {
	width: 100%;
}
.couponTypeFilter > li {
	box-sizing: border-box;
	display: table;
	float: left;
	height: 40px;
	line-height: 1;
	vertical-align: middle;
	width: 33.3333%;
}
.couponTypeFilter > li + li {
	padding-left: 10px;
}
.btnCouponTypeFilter.isCr {
	background-color: #BEB4AB;
	border: 0;
	color: #FFFFFF;
}
a.btnCouponTypeFilter {
	color: #988989;
	text-decoration: none;
}
.btnCouponTypeFilter.isDisabled {
	border-color: #EEEEEE;
	color: #CCCCCC;
}

.btnCssLGray {
	background-color: #FFFFFF;
	border: solid #BFB9B0;
	border-radius: 4px;
	border-width: 1px 1px 2px 1px;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	color: #666666 !important;
	display: block;
	font-weight: bold;
	text-align: center;
	text-decoration: none;
}
.btnH29 {
	height: 29px;
	line-height: 26px;
}
.btnH34 {
	height: 34px;
	line-height: 31px;
}
.listBottom {
	padding: 8px 10px 10px;
	background-color: #F0EDDD;
	border-radius: 0 0 4px 4px;
	margin: 10px -10px 0;
}
.listBottom .prev,
.listBottom .next {
	display: block;
	width: 80px;
	vertical-align: middle;
	margin-left: auto;
	margin-right: auto;
	padding: 2px 5px;
	font-size: 14px;
	color: #666666 !important;
	text-align: center;
	text-decoration: none;
	font-weight: normal;
	border-radius: 4px;
	-webkit-background-size: 100% 100%;
	background-size: 100% 100%;
	background: -webkit-gradient(
		linear,
		left top,
		left bottom,
		from(#FFFFFF),
		to(#DEDEDE),
		color-stop(0.6, #FFFFFF)
	);
	border-top: 1px solid #737373;
	border-right: 1px solid #BBB8B9;
	border-left: 1px solid #737373;
	border-bottom: 1px solid #BBB8B9;
}

.listBottom .numOfPage {
	font-size: 14px;
	line-height: 27px;
}
input[type="submit"].btnCssLGray {
	-webkit-appearance: none;
}
.fixBtnWrap {
	background: #D36985;
	box-shadow: none;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	-ms-filter: alpha(opacity="90");
	filter: alpha(opacity="90");
	left: 0;
	opacity: 0.90;
	padding: 10px 20px;
	position: fixed;
	-webkit-tap-highlight-color: rgba(0,0,0,0);
	top: -55px;
	transition: top 1s;/*moved to the top because the speed up.*/
	-webkit-transition: top 0.3s;
	-moz-transition: top 0.3s;
	width: 100%;
	z-index: 2;
}
.fixBtnWrap.isVisible {
	top: 0;
}
.menuSelectFixBtn {
	border: 1px solid #FFFFFF;
	border-radius: 4px;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	color: #FFFFFF !important;
	cursor: pointer;
	display: block;
	font-size: 14px;
	font-weight: bold;
	padding: 4px;
	text-align: center;
	text-decoration: none;
	width: 100%;
}
.fcAlert	{ color: #CC0000; }
@media screen and (orientation:landscape) {
	.menuSelectFixBtn {
		width: 100%;
	}
}
.rsvChooseAppointWrap {
	margin-top: 10px;
	padding: 0 20px 0 20px;
}
.rsvChooseAppointWrap > dt,
.rsvChooseAppointWrap > dd {
	color: #665555;
	display: inline-block;
}
.rsvChooseAppointList > li {
	display: inline-block;
	padding-left: 5px;
	position: relative;
}
.rsvChooseAppointList > li ~ li {
	padding-left: 18px;
}
.rsvChooseAppointLabel {
	display: inline-block;
	min-height: 20px;
	padding-left: 26px;
	padding-top: 1px;
}
.singleSelectInput {
	-webkit-appearance: none;
	background: #FFFFFF;
	border: 2px solid #CCCCCC;
	border-radius: 10px;
	box-sizing: border-box;
	height: 20px;
	margin: 0;
	position: absolute;
	-webkit-tap-highlight-color: rgba(0,0,0,0);
	width: 20px;
	z-index: 1;
}
.singleSelectInput:checked:after {
	background-color: #D36985;
	border-radius: 5px;
	content: "";
	display: block;
	height: 10px;
	left: 50%;
	margin-left: -5px;
	margin-top: -5px;
	position: absolute;
	top: 50%;
	width: 10px;
	z-index: 2;
}
.rsvAlertTxt {
	color: #CC0000;
	padding-left: 5px;
	padding-right: 5px;
}
.rsvInfoWrap {
	color: #665555;
	margin-top: 10px;
	padding-left: 10px;
	padding-right: 10px;
	word-wrap: break-word;
}
.rsvInfoWrap a:link,
.rsvInfoWrap a:visited {
	color: #4C4C80;
}
.rsvInfoWrap ~ .rsvInfoWrap {
	margin-top: 20px;
}
.rsvCompleteMsg {
	background-color: #FFE2E8;
	border-radius: 4px;
	font-size: 14px;
	font-weight: bold;
	padding: 10px;
}
/* reserve detail btn */
.rsvCompleteSlnDtBtn {
	margin-top: 10px;
	text-align: center;
}
.rsvCompleteSlnDtBtn a {
	font-size: 13px;
	margin: 0 auto;
	width: 290px;
}
.rsvCompleteSlnDtBtn a + a {
	margin-top: 10px;
}
/* about cancel */
.rsvCompleteCancelMsg {
	background-color: #F6F5EC;
	border-radius: 4px;
	color: #665555;
	margin-top: 10px;
	padding: 10px;
}
.rsvCompleteCancelMsg > dt {
	font-size: 11px;
}
.rsvCompleteCancelMsg > dd {
	font-size: 13px;
	font-weight: bold;
	margin-top: 5px;
}

/* recommend salon */
.stHeadline {
	background-color: #EEEEEE;
	color: #333333;
	font-size: 14px;
	line-height: 1;
	padding: 15px 10px;
}
.rsvRecommendWrap {
	margin-top: 30px;
}
.rsvRecommendCategoryHead {
	color: #333333;
	font-size: 12px;
	font-weight: bold;
	margin-top: 10px;
	padding-left: 10px;
	padding-right: 10px;
}
.rsvRecommendCategoryTtlWrap {
	margin-bottom: 6px;
	margin-top: 10px;
	padding-left: 10px;
	padding-right: 10px;
}
.rsvRecommendCategoryTtl {
	color: #8C61B8;
	font-size: 14px;
	font-weight: bold;
}
.rsvRecommendImg,
.rsvRecommendDtl {
	display: table-cell;
	vertical-align: top;
}
.rsvRecommendImg {
	padding-right: 10px;
	width: 97px;
}
.rsvRecommendDtl {
	position: relative;
}
.rsvRecommendArea {
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	display: table;
	width: 100%;
}
.rsvRecommendCouponTxt {
	color: #7030A0;
	line-height: 19px;
	word-break: break-all;
}
.rsvRecommendName {
	color: #665555;
	font-size: 13px;
	font-weight: bold;
	padding-bottom: 29px;
	word-break: break-all;
}
.rsvRecommendName + .rsvRecommendCoupon {
	margin-top: -29px;
	padding-bottom: 29px;
	padding-top: 5px;
}
.rsvRecommendAccess {
	bottom: 2px;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	left: -4px;
	position: absolute;
	width: 100%;
}
.sdS {
	background-image: url("/CSP/img/common/smb/sprites/icon_salon_detail.png?switch=20200414");
	background-repeat: no-repeat;
	-webkit-background-size: 20px auto;
	background-size: 20px auto;
}
.icnAccessLabel {
	background-position: 4px -31px;
}
.rsvRecommendCouponIcon {
	float: left;
	margin-right: 5px;
	vertical-align: middle;
}
.rsvRecommendIcon {
	float: left;
	height: 22px;
	position: relative;
	width: 20px;
}
.rsvRecommendAccessTxt {
	color: #665555;
	font-size: 10px;
	line-height: 24px;
	overflow: hidden;
	padding-left: 3px;
	text-overflow: ellipsis;
	white-space: nowrap;
}
.rsvLinkBtnList > li {
	font-size: 13px;
	margin: 0 auto;
	width: 290px;
}
.rsvLinkBtnList > li + li {
	margin-top: 10px;
}
.rsvLinkBtnList ~ .rsvRecommendCategoryTtlWrap {
	margin-top: 20px;
}
.rsvCompleteScheduleAddList {
	font-size: 0;
	margin-top: 10px;
	text-align: center;
}
.rsvCompleteScheduleAddList li {
	display: inline-block;
	font-size: 12px;
}
.rsvCompleteScheduleAddList li + li {
	margin-left: 15px;
}
/* coupon type  */
.iconCouponTypeSmallCT01Kr {
	background-color: #8C61BB;
	color: #FFFFFF;
	display: block;
	font-size: 10px;
	font-weight: bold;
	height: 17px;
	line-height: 17px;
	text-align: center;
	width: 32px;
}
/* add clendar btn */
.btnAddCalendar {
	background: url(/CSP/img/common/smb/icn_rsvAddCalendar.png?switch=20200414) no-repeat 30px 6px;
	background-color: #FFFFFF;
	background-size: 23px;
	border: solid #BFB9B0;
	border-radius: 5px;
	border-width: 1px 1px 2px 1px;
	box-sizing: border-box;
	color: #666666 !important;
	display: block;
	font-size: 12px;
	font-weight: bold;
	height: 40px;
	line-height: 38px;
	padding-left: 30px;
	text-decoration: none;
	width: 190px;
}

/* 選択済みメニュー切り替え */
.rsvSelectedMenuCassetteWrap {
	border: 1px solid #BFB9B0;
	border-radius: 3px;
	margin: 10px 10px 0;
}
a.rsvSelectedMenuChangeText {
	color: #D36985;
	display: block;
	font-size: 11px;
	font-weight: bold;
	padding: 8px 10px;
	position: relative;
	text-decoration: none;
}
.rsvSelectedMenuChangeText::after {
	background: url("/CSP/img/common/smb/icon_link2.png?switch=20200414") no-repeat 0 0;
	content: "";
	display: block;
	height: 14px;
	margin-top: -7.5px;
	position: absolute;
	right: 13px;
	top: 50%;
	-webkit-transform: rotate(90deg);
	transform: rotate(90deg);
	width: 9px;
}
.rsvSelectedMenuChangeText.isOpened::after {
	-webkit-transform: rotate(-90deg);
	transform: rotate(-90deg);
}

.rsvSelectedMenuCassetteList {
	color: #665555;
	padding: 5px 10px 10px;
	word-break: break-all;
}
.rsvSelectedMenuCassetteList > li ~ li {
	border-top: 1px solid #CCCCCC;
	margin-top: 10px;
	padding-top: 10px;
}

.rsvSelectedMenuCassetteCouponType {
	display: table-cell;
	padding-right: 10px;
	vertical-align: middle;
}
.rsvSelectedMenuCassetteCouponName {
	display: table-cell;
	font-size: 13px;
	font-weight: bold;
	vertical-align: middle;
}
.rsvSelectedMenuCassetteCouponDtl dl ~ dl {
	margin-top: 5px;
}
.rsvToggleMenuNameList {
	padding: 5px 10px 10px;
}
.rsvToggleMenuNameList li {
	color: #665555;
	font-weight: bold;
	line-height: 1.4em;
	overflow: hidden;
	word-break: break-all;
}
.rsvToggleMenuNameList li ~ li {
	border-top: 1px dotted #CCCCCC;
	margin-top: 8px;
	padding-top: 8px;
}
.rsvSelectedCaptionWrap {
	margin-top: 8px;
	padding: 0 10px 0 20px;
}
.rsvSelectedTotalTime {
	color: #665555;
	display: inline-block;
	font-size: 11px;
}
.rsvSelectedMenuCassetteChangeTtl {
	color: #D36985 !important;
	display: block;
	font-size: 11px;
	font-weight: bold;
	padding: 8px 10px;
	position: relative;
	text-decoration: none;
}
.rsvSelectedMenuCassetteChangeTtl::after {
	background: url("/CSP/img/common/smb/icon_link2.png?switch=20200414") no-repeat 0 0;
	-webkit-background-size: 9px 14px;
	background-size: 9px 14px;
	content: "";
	display: block;
	height: 14px;
	margin-top: -7.5px;
	position: absolute;
	right: 13px;
	top: 50%;
	-webkit-transform: rotate(90deg);
	-moz-transform: rotate(90deg);
	transform: rotate(90deg);
	width: 9px;
}
.rsvSelectedMenuCassetteChangeTtl.isOpened::after {
	-webkit-transform: rotate(-90deg);
	-moz-transform: rotate(-90deg);
	transform: rotate(-90deg);
}
.rsvSmcBlock ~ .rsvSmcBlock {
	margin-top: 8px;
}
.rsvAddMenuBtnWrap {
	float: right;
	padding-left: 20px;
}
.rsvAddMenuBtnWrap > a {
	font-size: 12px;
	line-height: 32px;
	margin-top: 2px;
	width: 130px;
}

/* 追加メニュー表示 */
.rsvAddMenuWrap {
	margin-top: 20px;
	padding-left: 10px;
	padding-right: 10px;
}
.rsvAddMenuTitle {
	color: #CC4466;
	font-size: 13px;
	font-weight: bold;
}
.rsvAddMenuTitle + .rsvAddMenuBox {
	margin-top: 7px;
}
.rsvAddMenuItem {
	box-sizing: border-box;
	display: table;
	padding-bottom: 8px;
	padding-top: 8px;
	width: 100%;
	word-break: break-all;
}
.rsvAddMenuItem + .rsvAddMenuItem {
	border-top: 1px dotted #BFB9B0;
}
.rsvAddMenu {
	border: 1px solid #BFB9B0;
	border-radius: 3px;
	padding-left: 10px;
	padding-right: 10px;
}
.rsvAddMenuEmptyMsg {
	color: #999999;
	padding-bottom: 8px;
	padding-top: 8px;
}
.rsvAddMenuItemName {
	color: #665555;
	display: table-cell;
	font-weight: bold;
	width: 85%;
}
.rsvAddMenuItemTime {
	color: #665555;
	display: table-cell;
	text-align: right;
	vertical-align: middle;
	width: 15%;
}
/* modal */
.couponDetailModalLink {
	font-size: 11px;
	overflow: hidden;
}
.couponDetailModalLink>a {
	color: #4C4C80;
	display: block;
	padding-bottom: 5px;
}
.couponDetailModalArea {
	left: 0;
	margin: 0 30px;
	opacity: 0;
	position: absolute;
	right: 0;
	-webkit-transform: translate3d(0, 0, 1px);
	transform: translate3d(0, 0, 1px);
	-webkit-transition-property: opacity;
	transition-property: opacity;
	z-index: 1001;
}
.couponDetailModalArea.isOpen {
	opacity: 1;
	-webkit-transition-duration: 0.6s;
	transition-duration: 0.6s;
}
.couponDetailModalArea.isClose {
	opacity: 0;
	-webkit-transition-duration: 0.3s;
	transition-duration: 0.3s;
}
.couponDetailModalContents {
	background-color: #FFFFFF;
	border-radius: 4px;
	padding: 15px;
}
.ttlCouponDetailModal {
	color: #D36985;
	float: left;
	font-size: 11px;
}
.couponDetailModalPrice {
	color: #CC4466;
	float: right;
	font-size: 14px;
	font-weight: bold;
	text-align: right;
	width: 100px;
}
.couponDetailModalMenuName {
	color: #665555;
	font-size: 13px;
	font-weight: bold;
	word-wrap: break-word;
}
.couponDetailModalCloseBtn {
	height: 30px;
	position: absolute;
	right: -15px;
	top: -12px;
	width: 30px;
	z-index: 1001;
}
.couponDetailModalCloseBtn>a {
	background-color: #FFFFFF;
	border: 2px solid #CCCCCC;
	border-radius: 22px;
	box-sizing: border-box;
	color: #8A7C7C;
	display: block;
	height: 100%;
	vertical-align: top;
	width: 100%;
}
.couponDetailModalCloseBtn>a:before,
.couponDetailModalCloseBtn>a:after {
	background-color: #999999;
	content: "";
	display: block;
	height: 3px;
	left: 8px;
	position: absolute;
	top: 13px;
	width: 15px;
}
.couponDetailModalCloseBtn>a:before {
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}
.couponDetailModalCloseBtn>a:after {
	-webkit-transform: rotate(-45deg);
	transform: rotate(-45deg);
}
.couponDetailOverlay {
	background: #000000;
	height: 152%;
	left: 0;
	opacity: 0;
	position: fixed;
	top: 0;
	-webkit-transform: translate3d(0, 0, 0);
	transform: translate3d(0, 0, 0);
	-webkit-transition-property: opacity;
	transition-property: opacity;
	width: 100%;
	z-index: 1000;
}
.couponDetailOverlay.isOpen {
	opacity: 0.6;
	-webkit-transition-duration: 0.3s;
	transition-duration: 0.3s;
}
.couponDetailOverlay.isClose {
	opacity: 0;
	-webkit-transition-duration: 0.6s;
	transition-duration: 0.6s;
}
.couponDetailDescription {
	border-left: 4px solid #FF8A90;
	color: #665555;
	font-size: 12px;
	font-weight: bold;
	padding-left: 10px;
}

/* 日時選択カレンダーヘッダ固定用 */
.calHeaderWrap.isFixed {
	position: fixed;
	border-bottom: 1px solid #CCCCCC;
}
.calHeaderWrap.isAbsolute {
	position: absolute;
}

/* 前/次の一週間ボタン */
.rsvCalTopBtnWrap {
	padding: 10px;
}
.rsvCalNextBtn,
.rsvCalPrevBtn {
	background-color: #FFFFFF;
	border: solid #BFB9B0;
	border-radius: 4px;
	border-width: 1px 1px 2px 1px;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	display: block;
	font-weight: bold;
	height: 32px;
	line-height: 30px;
	position: relative;
	text-align: center;
	text-decoration: none;
	min-width: 120px;
}
.rsvCalNextBtn {
	padding-left: 10px;
	padding-right: 22px;
}
.rsvCalPrevBtn {
	padding-left: 22px;
	padding-right: 10px;
}
.rsvCalNextBtn.isDisabled,
.rsvCalPrevBtn.isDisabled {
	border: solid #CCCCCC;
	border-radius: 4px;
	border-width: 1px 1px 2px 1px;
	color: #CCCCCC !important;
}
.rsvCalNextBtn:visited,
.rsvCalPrevBtn:visited,
.rsvCalNextBtn:link,
.rsvCalPrevBtn:link {
	color: #666666;
}
.rsvCalPrevBtn::after,
.rsvCalNextBtn::after {
	border-color: #666666;
	border-style: solid;
	border-width: 0 2px 2px 0;
	content: "";
	display: block;
	height: 5px;
	line-height: 1;
	margin-top: -4px;
	position: absolute;
	top: 50%;
	width: 5px;
}
.rsvCalPrevBtn::after {
	left: 12px;
	-webkit-transform: rotate(135deg);
	transform: rotate(135deg);
}
.rsvCalNextBtn::after {
	right: 12px;
	-webkit-transform: rotate(-45deg);
	transform: rotate(-45deg);
}
.rsvCalPrevBtn.isDisabled::after, .rsvCalNextBtn.isDisabled::after {
	border-color: #CCCCCC;
	border-style: solid;
	border-width: 0 2px 2px 0;
}

/* 画面内スクロール */
.rsvCalTimeSelectTtl {
	background: #EDEAE5;
}
.rsvCalTimeSelectList {
	font-size: 0;
	padding-bottom: 13px;
	padding-top: 13px;
}
.rsvCalTimeSelectList > li {
	display: inline-block;
	font-size: 12px;
	font-weight: bold;
	vertical-align: top;
}
.rsvCalTimeSelectList > li > a {
	color: #4C4C80 !important;
	text-decoration: underline;
}

.rsvCalTimeSelectList > li::before {
	border-left: 4px solid transparent;
	border-right: 4px solid transparent;
	border-top: solid 6px #988989;
	content: "";
	display: inline-block;
	margin-bottom: 1px;
	margin-right: 4px;
	vertical-align: middle;
}
.rsvCalTimeSelectList > li + li {
	margin-left: 20px;
}
/* 予約確認画面 */
.btnConfirmReserve {
	height: 40px;
}
.rsvMainColor {
	color: #CC4466;
	font-weight: bold;
}
.rsvAssistTxt {
	color: #CA9239;
	font-size: 11px;
}
.rsvIconRequired {
	background-color: #E53B4E;
	border-radius: 2px;
	color: #FFFFFF;
	display: inline-block;
	font-size: 10px;
	font-weight: normal;
	padding: 0 5px;
}
.iconArrowR:before {
	border: 4px solid;
	border-color: transparent transparent transparent #D36985;
	content: "";
	display: inline-block;
}
.iconArrowGrayR:before {
	border: 4px solid;
	border-color: transparent transparent transparent #999999;
	content: "";
	display: inline-block;
}

.rsvAttentionTxtWrap {
	background: #F3F1CA;
	margin: 10px;
	padding: 12px 15px;
	text-align: center;
}
.rsvInformationFormWrap {
	padding: 0 10px;
}
.rsvInformationForm {
	display: table;
	margin-top: 15px;
	width: 100%;
}
.rsvInformationFormLabel,
.rsvInformationFormDetail {
	display: table-cell;
	vertical-align: top;
}
.rsvInformationFormLabel {
	color: #665555;
	font-weight: bold;
	width: 105px;
}
.rsvInformationFormDetail {
	word-break: break-all;
}
.rsvInformationFormLabelTop {
	color: #665555;
	font-weight: bold;
}
.rsvPointBalance {
	color: #CC4466;
	font-size: 13px;
	font-weight: bold;
	margin-right: 3px;
}
.rsvCustomerName {
	color: #999999;
	font-size: 14px;
}

/* 予約確認画面 form */
.rsvFormSelect {
	-webkit-appearance: none;
	appearance: none;
	background-color: #FFFFFF;
	border: 1px solid #BFB9B0;
	border-radius: 5px;
	box-sizing: border-box;
	height: 36px;
	padding: 5px 20px 5px 10px;
}
.rsvFormSelectPoint {
	width: 125px;
}
.rsvFormSelectFree {
	width: 100%;
}
.rsvFormSelectWrap {
	position: relative;
}
.rsvFormSelectWrap::after {
	border-color: #666666 transparent transparent transparent;
	border-style: solid;
	border-width: 10px 4px 0;
	content: "";
	display: block;
	pointer-events: none;
	position: absolute;
	right: 9px;
	top: 50%;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
}

.rsvFormInputTel {
	border: 1px solid #BFB9B0;
	border-radius: 5px;
	box-sizing: border-box;
	height: 36px;
	padding: 5px 10px;
}
.rsvFormInputRadioLabel {
	display: inline-block;
	font-size: 13px;
	min-height: 20px;
	padding-left: 26px;
	padding-top: 1px;
}
.rsvFormInputRadioMsg {
	display: inline-block;
	padding-left: 10px;
	text-align: inherit;
}
.rsvFormInputCheckLabel {
	display: inline-block;
	min-height: 20px;
	padding-left: 26px;
	padding-top: 1px;
}
.rsvFormInputCheckConfirm {
	display: inline-block;
	padding: 10px;
	position: relative;
}
.rsvFormInputCheckFree {
	margin-top: 2px;
	padding: 10px 0 0 10px;
	position: relative;
}
.rsvFormTextarea {
	border: 1px solid #BFB9B0;
	border-radius: 5px;
	box-sizing: border-box;
	padding: 5px 10px;
	width: 100%;
}
.rsvFormText {
	border: 1px solid #BFB9B0;
	border-radius: 5px;
	box-sizing: border-box;
	height: 36px;
	padding: 5px 10px;
	width: 100%;
}
.rsvFormInputAlert,
.rsvFormTextareaAlert {
	background-color: #F2DCDB;
	border: 2px solid #CC4466;
}
.rsvFormConfirmAlert {
	background-color: #F2DCDB;
}
.rsvFormInputRadioAlert,
.rsvFormInputCheckAlert {
	border: 2px solid #CC4466;
}

/* 詳細要望を入力する */
.rsvMoreDetailRequestLink {
	box-sizing: border-box;
	color: #4C4C80;
	display: inline-block;
	font-weight: bold;
	text-decoration: underline;
	width: 100%;
}
.rsvMoreDetailRequestLinkCaption {
	color: #666666;
	display: inline-block;
}
.rsvMoreDetailRequestWrap {
	height: 0;
	margin-top: 10px;
	overflow: hidden;
}
.rsvMoreDetailRequest {
	overflow: hidden;
}
.rsvMoreDetailRequestCnt {
	margin-top: 15px;
}
.rsvMoreDetailRequestLabel {
	color: #665555;
	font-weight: bold;
}
.rsvFavoriteStyleArea {
	height: 182px;
	margin-top: 15px;
}
.rsvFavoriteStyleWrap {
	display: table;
	width: 100%;
}
.rsvFavoriteStyleImgWrap {
	display: table-cell;
	padding-right: 15px;
	vertical-align: top;
	width: 115px;
}
.rsvFavoriteStyleImg {
	background-color: #F4F4F4;
	box-sizing: border-box;
	display: table;
	height: 153px;
	border: 1px solid #cccccc;
	width: 115px;
}
.rsvFavoriteStyleImg.dn {
	display: none;
}
.rsvFavoriteStyleImgTxt {
	color: #999999;
	display: table-cell;
	font-size: 10px;
	font-weight: bold;
	text-align: center;
	vertical-align: middle;
	border: 2px solid #FFFFFF;
}
.rsvFavoriteStyleLink {
	display: table-cell;
	vertical-align: top;
}
.rsvFavoriteStyleLink a {
	color: #4C4C80;
}
.rsvFavoriteStyleImgClear:link {
	color: #4C4C80;
}

/* 会員登録完了 */
.rsvCompletRegistrationTxt {
	padding: 10px 0;
	text-align: center;
}

/* 入力エラーテキスト */
.rsvInformationFormErrTxt {
	color: #CC0000;
	padding: 8px 10px 5px;
}
.rsvInformationFormErrList {
	font-weight: bold;
	margin-left: 10px;
}

/* 入力エラーテキスト */
.rsvConfirmArea + .rsvConfirmArea {
	margin-top: 8px;
}
.rsvConfirmWrap {
	color: #665555;
	margin: 0 10px;
	padding: 13px 0;
}
.rsvConfirmWrap + .rsvConfirmWrap {
	border-top: 1px dotted #BFB9B0;
}
.rsvConfirmCnt {
	display: table;
	width: 100%;
	word-break: break-all;
}
.rsvConfirmLabel,
.rsvConfirmDetail {
	display: table-cell;
}
.rsvConfirmLabel {
	vertical-align: top;
	width: 150px;
}
.rsvConfirmDetail {
	vertical-align: middle;
}
.rsvConfirmLabelTop {
	font-weight: bold;
}
.rsvConfirmCoupon {
	display: table;
	margin-top: 12px;
	width: 100%;
	word-break: break-all;
}
.rsvConfirmCouponDetail,
.rsvConfirmCouponPrice {
	display: table-cell;
}
.rsvConfirmCouponDetail {
	vertical-align: top;
}
.rsvConfirmCouponPrice {
	text-align: right;
	vertical-align: middle;
	width: 85px;
}
.rsvConfirmCouponType,
.rsvConfirmCouponName {
	display: table-cell;
	vertical-align: middle;
}
.rsvConfirmCouponType {
	padding-right: 10px;
}
.rsvConfirmCouponName {
	font-size: 13px;
	font-weight: bold;
}
.rsvConfirmCouponConditionList + .rsvConfirmCouponConditionList {
	margin-top: 5px;
}
.rsvConfirmCouponConditionLabel {
	color: #CC4466;
	float: left;
}
.rsvConfirmCouponCondition {
	overflow: hidden;
}
.rsvConfirmNomination {
	display: table;
	width: 100%;
}
.rsvConfirmNominationStaff,
.rsvConfirmNominationFee {
	display: table-cell;
	vertical-align: top;
}
.rsvConfirmNominationFee {
	text-align: right;
	width: 85px;
}
.rsvConfirmAreaBottom {
	color: #665555;
	padding: 25px 10px 0;
}
.rsvImgCopyGuardWrap {
	position: relative;
	display: inline-block;
	-moz-user-select: none;
	-webkit-user-select: none;
	user-select: none;
}
.rsvImgCopyGuardCover {
	position: absolute;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
}

/* お客様情報入力：子ウィンドウ */
.rsvChildSelectBody div.wrapper {
	overflow: hidden;
}

.w16p {
    width: 16%;
}
.w12p {
    width: 12%;
}