@charset "UTF-8";
body, p, ul, ol, h1,
h2, input {
	margin: 0;
}
ul, ol {
	padding: 0;
}
li {
	list-style: none;
}
a {
	text-decoration: none;
}
a:hover {
	text-decoration: underline;
}
img {
	vertical-align: middle;
}
input {
	vertical-align: middle;
}
.inputReserveConditionModal {
	position: fixed;
	top: 5%;
	left: 0;
	right: 0;
	margin: auto;
	width: 100%;
	max-width: 770px;
	height: 90%;
	max-height: 729px;
	z-index: 5000;
	background: #FFF;
	border-radius: 5px;
	box-sizing: border-box;
	overflow: hidden;
}
.inputReserveConditionModal a {
	cursor: pointer;
}
.inputReserveConditionModal > .modalBody {
	width: inherit;
	position: relative;
	height: 100%;
}
.inputReserveConditionModal > .modalBody > .header {
	position: relative;
	padding: 15px 10px 15px 0;
	box-sizing: border-box;
	border-bottom: #CCCCCC solid 1px;
	overflow: hidden;
}
.inputReserveConditionModal > .modalBody > .header .storeName {
	display: inline-block;
	border-left: 4px solid #999999;
	padding-left: 15px;
	color: #1E212D;
	font-size: 14px;
	font-weight: bold;
	max-width: 581px;
	line-height: 1.2;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
	vertical-align: bottom;
}
.inputReserveConditionModal > .modalBody > .header .storeText {
	display: inline-block;
	padding-left: 4px;
	color: #1E212D;
	font-size: 14px;
	font-weight: bold;
	line-height: 1.2;
	vertical-align: bottom;
}
.inputReserveConditionModal > .modalBody .conditionsContentWrap {
	height: calc(100% - 47px - 85px);
	margin-right: 4px;
	overflow-y: scroll;
	box-sizing: border-box;
}
.inputReserveConditionModal > .modalBody .conditionsContentWrap > .overlay {
	top: 120px;
	bottom: 30px;
}
.inputReserveConditionModal > .modalBody .conditionsContentWrap.opened {
	height: calc(100% - 47px);
}
.inputReserveConditionModal > .modalBody .conditionsContentWrap.opened > .overlay {
	bottom: 85px;
}
.inputReserveConditionModal > .modalBody .conditionsContentWrap .modalPointText {
	margin: 10px 20px 0;
	padding: 0 10px;
	background: #F5F1E9;
	font-size: 12px;
	line-height: 30px;
	font-weight: bold;
	color: #1E212D;
}
.inputReserveConditionModal > .modalBody .conditionsContentWrap .modalPointText > span {
	font-weight: bold;
	color: #D0111B;
}
.inputReserveConditionModal > .modalBody .conditionsContentWrap::-webkit-scrollbar {
	width: 8px;
	background: none;
}
.inputReserveConditionModal > .modalBody .conditionsContentWrap::-webkit-scrollbar-thumb {
	background: #C1C1C1;
	border-radius: 5px;
}
.inputReserveConditionModal > .modalBody .conditionsContent {
	position: relative;
	margin-right: 4px;
	padding: 25px 20px;
}
.inputReserveConditionModal > .modalBody .footer {
	display: flex;
	align-items: center;
	position: absolute;
	right: 0;
	left: 0;
	bottom: 0;
	height: 85px;
	border-radius: 0 0 5px 5px;
	box-shadow: 0 -2px 5px 0 rgba(0, 0, 0, 0.1);
	box-sizing: border-box;
	background-color: #FFFFFF;
	z-index: 1100;
}
.inputReserveConditionModal > .modalBody .pointPlus.conditionsContent {
	padding: 10px 20px 30px;
}
.inputReserveConditionModal > .modalBody .pointPlus.conditionsContent .selectOfDateCalendar .dateWrap td a.enabledReserve,
.inputReserveConditionModal > .modalBody .pointPlus.conditionsContent .selectOfDateCalendar .dateWrap td .disabledReserve {
	padding: 6px 0 16px;
}
.inputReserveConditionModal > .modalBody .pointPlus.conditionsContent .selectOfDateCalendar .dateWrap td > .pastDay {
	padding: 8px 0 36px;
}
.inputReserveConditionModal > .modalBody .pointPlus.conditionsContent .selectOfDateCalendar .dateWrap td a.enabledReserve .pointPlusIcn {
	position: relative;
}
.inputReserveConditionModal > .modalBody .pointPlus.conditionsContent .selectOfDateCalendar .dateWrap td a.enabledReserve .pointPlusIcn::after {
	position: absolute;
	left: 0;
	bottom: -16px;
	right: 0;
	width: 100%;
	height: 14px;
	margin: auto;
	background: url("/SYS/PC/images/icn/point_plus_30x20@2x.png") #F5F1E9 center/15px 10px no-repeat;
	content: "";
}
.inputReserveConditionModal > .modalBody .pointPlus.conditionsContent .selectOfDateCalendar .dateWrap td a.enabledReserve.selected .pointPlusIcn::after {
	bottom: -15px;
	width: calc(100% - 2px);
	height: 13px;
}
.inputReserveConditionModal .modalPointNote {
	margin-top: 15px;
}
.inputReserveConditionModal .modalPointNote > .title {
	margin-bottom: -5px;
	font-weight: bold;
	font-size: 12px;
	color: #1E212D;
}
.inputReserveConditionModal .closeButtonWrap {
	position: absolute;
	top: 16px;
	right: 16px;
	background: url("/SYS/cmn/images/front_002/icn_modal_close_on.png");
}
.inputReserveConditionModal .closeButton {
	display: block;
	width: 13px;
	height: 13px;
	background: url("/SYS/cmn/images/front_002/icn_modal_close.png");
}
.inputReserveConditionModal .closeButton:hover {
	background: none;
}
.inputReserveConditionModal .errorText {
	color: #E41A12;
	font-size: 14px;
	font-weight: bold;
	white-space: pre-wrap;
}
.inputReserveConditionModal .errorSubText {
	margin-top: 3px;
	color: #787878;
	font-size: 12px;
}
.inputReserveConditionModal .errorModal {
	display: block;
	position: absolute;
	top: 33%;
	right: 0;
	left: 0;
	width: 364px;
	margin: auto;
	padding: 20px;
	border: #BBBBBB solid 1px;
	background: #FFFFFF;
	color: #787878;
	font-size: 12px;
	text-align: center;
	z-index: 2000;
}
.inputReserveConditionModal .errorModal > .telephone {
	margin-top: 15px;
	color: #1E212D;
	font-weight: normal;
	font-size: 18px;
	line-height: 1;
}
.inputReserveConditionModal .errorModal > .telephone:before {
	display: inline-block;
	width: 11px;
	height: 16px;
	padding-right: 3px;
	background-image: url("/SYS/cmn/images/front_002/icn_tel_handset_gray.png");
	background-repeat: no-repeat;
	vertical-align: baseline;
	content: "";
}
.inputReserveConditionModal .overlay {
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	border-radius: 5px;
	background: #FFF;
	opacity: 0.7;
	z-index: 1000;
}
.inputReserveConditionModal .errorBtn {
	margin-top: 20px;
}
.inputReserveConditionModal .errorBtn > a {
	display: block;
	width: 202px;
	height: 50px;
	line-height: 50px;
	/* autoprefixer: off */
	background: -ms-linear-gradient(top, #FEFEFE, #EDEDED);
	/* autoprefixer: on */
	background: -webkit-linear-gradient(top, #FEFEFE, #EDEDED);
	background: linear-gradient(top, #FEFEFE, #EDEDED);
	border: 1px solid #CCCCCC;
	box-shadow: 0px 0px 1px 0px #FFFFFF inset;
	color: #1E212D;
	font-weight: bold;
	font-size: 15px;
	text-decoration: none;
	border-radius: 2px;
	box-sizing: border-box;
	margin: 0 auto;
}
.inputReserveConditionModal .errorBtn > a:hover {
	/* autoprefixer: off */
	background: -ms-linear-gradient(top, #EDEDED, #E7E7E7);
	/* autoprefixer: on */
	background: -webkit-linear-gradient(top, #EDEDED, #E7E7E7);
	background: linear-gradient(top, #EDEDED, #E7E7E7);
}
.inputReserveConditionModal .errorBtn .btnCloseReserveModal {
	width: 202px;
}
.inputReserveConditionModal .errorBtn .btnOk {
	width: 100px;
}
.inputReserveConditionModal .conditionsContent {
	/**** calendar ****//**** course ****/
}
.inputReserveConditionModal .conditionsContent > .selectOfPerson,
.inputReserveConditionModal .conditionsContent > .selectOfDate,
.inputReserveConditionModal .conditionsContent > .selectOfTime,
.inputReserveConditionModal .conditionsContent > .selectOfCourse,
.inputReserveConditionModal .conditionsContent > .selectOfSeat {
	display: table;
	width: 100%;
	margin-top: 25px;
}
.inputReserveConditionModal .conditionsContent > .selectOfCourse .sectionHeading,
.inputReserveConditionModal .conditionsContent > .selectOfSeat .sectionHeading {
	padding-top: 20px;
	vertical-align: top;
}
.inputReserveConditionModal .conditionsContent > .selectOfPerson {
	margin-top: 0;
}
.inputReserveConditionModal .conditionsContent .selectOfDate .pulldownSelectContent {
	overflow-x: hidden;
}
.inputReserveConditionModal .conditionsContent .selectOfPerson .pulldownHead,
.inputReserveConditionModal .conditionsContent .selectOfTime .pulldownHead {
	border-bottom: 1px dotted #E0E0E0;
}
.inputReserveConditionModal .conditionsContent .selectOfPerson .pulldownSelectContent,
.inputReserveConditionModal .conditionsContent .selectOfTime .pulldownSelectContent {
	padding-right: 0;
}
.inputReserveConditionModal .conditionsContent .selectOfPerson .pulldownSelectList,
.inputReserveConditionModal .conditionsContent .selectOfTime .pulldownSelectList {
	max-height: 341px;
	overflow-y: scroll;
}
.inputReserveConditionModal .conditionsContent .selectOfPerson .pulldownSelectList::-webkit-scrollbar,
.inputReserveConditionModal .conditionsContent .selectOfTime .pulldownSelectList::-webkit-scrollbar {
	width: 5px;
	background: none;
}
.inputReserveConditionModal .conditionsContent .selectOfPerson .pulldownSelectList::-webkit-scrollbar-thumb,
.inputReserveConditionModal .conditionsContent .selectOfTime .pulldownSelectList::-webkit-scrollbar-thumb {
	background: #D8D8D8;
	border-radius: 5px;
}
.inputReserveConditionModal .conditionsContent .selectOfSeat {
	position: relative;
}
.inputReserveConditionModal .conditionsContent .sectionHeading,
.inputReserveConditionModal .conditionsContent .sectionContent {
	position: relative;
	display: table-cell;
}
.inputReserveConditionModal .conditionsContent .sectionHeading {
	width: 70px;
	color: #1E212D;
	font-size: 12px;
	font-weight: bold;
}
.inputReserveConditionModal .conditionsContent .pulldownCurrentState {
	position: relative;
	padding: 6px 27px 6px 14px;
	border: #CCCCCC solid 1px;
	border-radius: 4px;
}
.inputReserveConditionModal .conditionsContent .pulldownCurrentState > .defaultText {
	color: #1E212D;
	font-size: 14px;
}
.inputReserveConditionModal .conditionsContent .pulldownCurrentState > .statusValue {
	color: #1E212D;
	font-size: 14px;
}
.inputReserveConditionModal .conditionsContent .pulldownCurrentState.active {
	cursor: pointer;
}
.inputReserveConditionModal .conditionsContent .pulldownCurrentState.error {
	border-color: #E41A12;
}
.inputReserveConditionModal .conditionsContent .alertParagraph {
	margin-top: 5px;
	color: #E41A12;
	font-size: 10px;
}
.inputReserveConditionModal .conditionsContent .pulldownArrow {
	display: block;
	position: absolute;
	top: 10px;
	bottom: 0;
	right: 22px;
}
.inputReserveConditionModal .conditionsContent .pulldownArrow:after {
	background-color: transparent;
	border-right: solid 2px #CCCCCC;
	border-top: solid 2px #CCCCCC;
	content: "";
	height: 6px;
	width: 6px;
	margin-bottom: 3px;
	transform: rotate(135deg);
	display: block;
	position: absolute;
}
.inputReserveConditionModal .conditionsContent .pulldownSelectContent {
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	background-color: #FFF;
	padding-bottom: 15px;
	border: 1px solid #CCC;
	border-radius: 5px;
	box-shadow: 0px 2px 5px rgba(0, 0, 0, 0.3);
	box-sizing: border-box;
	z-index: 6000;
}
.inputReserveConditionModal .conditionsContent .pulldownHead {
	padding: 6px 27px 5px 14px;
	color: #1E212D;
	font-size: 14px;
	cursor: pointer;
}
.inputReserveConditionModal .conditionsContent .pulldownHead .pulldownArrow:after {
	transform: rotate(-45deg);
}
.inputReserveConditionModal .conditionsContent .pulldownSelectList > li > a {
	display: block;
	padding: 10px 0 10px 14px;
	line-height: 1.1;
	font-size: 14px;
	color: #1E212D;
}
.inputReserveConditionModal .conditionsContent .pulldownSelectList > li > a:hover {
	background-color: #F1F1F1;
	text-decoration: none;
}
.inputReserveConditionModal .conditionsContent .pulldownSelectList > li > a > .pointPlusNumber {
	margin-left: 20px;
	padding-right: 20px;
	background: url("/SYS/PC/images/icn/point_plus_36x24@2x.png") right center/18px 12px no-repeat;
	font-size: 12px;
	font-weight: bold;
	color: #D0111B;
}
.inputReserveConditionModal .conditionsContent .variableSelectCurrentState {
	padding: 15px;
	border: #E0E0E0 solid 1px;
	font-size: 14px;
	box-sizing: border-box;
}
.inputReserveConditionModal .conditionsContent .variableSelectCurrentState.open {
	border-bottom: none;
}
.inputReserveConditionModal .conditionsContent .variableSelectCurrentState.open > .seatDetail {
	border-bottom: 0;
}
.inputReserveConditionModal .conditionsContent .variableSelectCurrentState.error:not(.open) {
	border-color: #E73820;
}
.inputReserveConditionModal .conditionsContent .variableSelectCurrentState > .defaultText {
	color: #1E212D;
	font-size: 14px;
}
.inputReserveConditionModal .conditionsContent .variableSelectCurrentState .courseDetailWrap {
	margin: 0;
}
.inputReserveConditionModal .conditionsContent .variableSelectContentiWrap.disable {
	display: none;
}
.inputReserveConditionModal .conditionsContent .variableSelectContent {
	border: #E0E0E0 solid 1px;
	border-top: 0;
}
.inputReserveConditionModal .conditionsContent .variableSelectContent > .title {
	padding: 10px 20px;
	background-color: #F4F4F4;
	font-size: 12px;
	font-weight: bold;
	color: #1E212D;
	line-height: 1.4;
}
.inputReserveConditionModal .conditionsContent .variableSelectList .variableSelectCurrentState {
	border: 0;
}
.inputReserveConditionModal .conditionsContent .variableSelectList > li > .courseDetailWrap,
.inputReserveConditionModal .conditionsContent .variableSelectList > li > .seatDetailWrap {
	margin: 0;
	padding: 0 15px 15px;
}
.inputReserveConditionModal .conditionsContent .variableSelectList > li .courseDetail,
.inputReserveConditionModal .conditionsContent .variableSelectList > li .seatDetail {
	padding-top: 15px;
}
.inputReserveConditionModal .conditionsContent .variableSelectList > li .seatDetail {
	border-top: #E0E0E0 dotted 1px;
}
.inputReserveConditionModal .conditionsContent .variableSelectList > li + li .courseDetail {
	border-top: #E0E0E0 dotted 1px;
}
.inputReserveConditionModal .conditionsContent .loading {
	padding: 15px;
	text-align: center;
}
.inputReserveConditionModal .conditionsContent .toggleCalendar {
	width: 100%;
	height: 12px;
}
.inputReserveConditionModal .conditionsContent .toggleCalendar > li {
	position: absolute;
	top: 13px;
}
.inputReserveConditionModal .conditionsContent .toggleCalendar > .prev {
	left: 18px;
}
.inputReserveConditionModal .conditionsContent .toggleCalendar > .prev > .arrow:after {
	display: block;
	margin: -4px 0 3px;
	width: 6px;
	height: 6px;
	transform: rotate(225deg);
	background-color: transparent;
	border-right: solid 2px #CCCCCC;
	border-top: solid 2px #CCCCCC;
	content: "";
}
.inputReserveConditionModal .conditionsContent .toggleCalendar > .next {
	right: 18px;
}
.inputReserveConditionModal .conditionsContent .toggleCalendar > .next > .arrow:before {
	display: block;
	width: 6px;
	height: 6px;
	transform: rotate(45deg);
	margin: -4px 0 3px;
	background-color: transparent;
	border-right: solid 2px #CCCCCC;
	border-top: solid 2px #CCCCCC;
	content: "";
}
.inputReserveConditionModal .conditionsContent .subCurrentStateBody {
	position: relative;
	padding: 8px 15px 0;
	border-top: 1px dotted #E0E0E0;
	z-index: -2;
}
.inputReserveConditionModal .conditionsContent .selectOfDateCalendarList {
	z-index: -1;
	position: relative;
	left: -19px;
	margin-top: -15px;
	white-space: nowrap;
}
.inputReserveConditionModal .conditionsContent .selectOfDateCalendarList li {
	display: inline-block;
	width: 47%;
	margin-left: 36px;
	vertical-align: top;
}
.inputReserveConditionModal .conditionsContent .selectOfDateCalendarList li:first-child {
	margin-left: 20px;
}
.inputReserveConditionModal .conditionsContent .selectOfDateCalendarList li.enabled {
	display: block;
}
.inputReserveConditionModal .conditionsContent .selectOfDateCalendarList li.disabled {
	display: none;
}
.inputReserveConditionModal .conditionsContent .selectOfDateCalendarList li.disabled + li {
	margin-left: 20px !important;
}
.inputReserveConditionModal .conditionsContent .selectOfDateCalendar {
	margin: 0 auto;
	width: 100%;
	border: none;
	table-layout: fixed;
}
.inputReserveConditionModal .conditionsContent .selectOfDateCalendar .yearMonth {
	margin-bottom: 8px;
	color: #1E212D;
	font-size: 10px;
	font-weight: bold;
}
.inputReserveConditionModal .conditionsContent .selectOfDateCalendar .dayWrap {
	border: 1px solid #CCCCCC;
}
.inputReserveConditionModal .conditionsContent .selectOfDateCalendar .dayWrap th {
	padding: 2px 0;
	background: #F4F4F4;
	border: none;
	text-align: center;
	color: #1E212D;
	font-size: 10px;
	font-weight: bold;
}
.inputReserveConditionModal .conditionsContent .selectOfDateCalendar .dayWrap th.sun {
	background: #FCE8E7;
	color: #E41A12;
}
.inputReserveConditionModal .conditionsContent .selectOfDateCalendar .dayWrap th.sat {
	background: #EBF6FA;
	color: #3BA3CD;
}
.inputReserveConditionModal .conditionsContent .selectOfDateCalendar .dayWrap th + th {
	border-left: 1px solid #CCCCCC;
}
.inputReserveConditionModal .conditionsContent .selectOfDateCalendar .dateWrap td {
	padding: 0;
	border: 1px solid #CCCCCC;
	background: #FFFFFF;
	text-align: center;
	font-size: 12px;
	vertical-align: bottom;
	box-sizing: border-box;
}
.inputReserveConditionModal .conditionsContent .selectOfDateCalendar .dateWrap td:nth-child(7n) .enabledReserve .date,
.inputReserveConditionModal .conditionsContent .selectOfDateCalendar .dateWrap td.holiday .enabledReserve div .date {
	color: #E41A12;
}
.inputReserveConditionModal .conditionsContent .selectOfDateCalendar .dateWrap td:nth-child(6n) .enabledReserve .date {
	color: #3BA3CD;
}
.inputReserveConditionModal .conditionsContent .selectOfDateCalendar .dateWrap td .date {
	font-size: 12px;
	line-height: 1;
	color: #1E212D;
}
.inputReserveConditionModal .conditionsContent .selectOfDateCalendar .dateWrap td .status {
	display: block;
	padding: 7px 0 1px;
	font-size: 14px;
	line-height: 1;
	color: #1470CC;
}
.inputReserveConditionModal .conditionsContent .selectOfDateCalendar .dateWrap td .mark {
	padding: 4px 0 0;
	font-family: "ヒラギノ角ゴ Pro";
	font-size: 18px;
	font-weight: bold;
}
.inputReserveConditionModal .conditionsContent .selectOfDateCalendar .dateWrap td a.enabledReserve {
	display: block;
	height: 100%;
	padding: 6px 0;
	text-decoration: none;
	box-sizing: border-box;
}
.inputReserveConditionModal .conditionsContent .selectOfDateCalendar .dateWrap td a.enabledReserve.selected {
	outline: 2px solid #FFDA7A;
	outline-offset: -1px;
}
.inputReserveConditionModal .conditionsContent .selectOfDateCalendar .dateWrap td a.enabledReserve:hover {
	background-color: #FFFBF0;
}
.inputReserveConditionModal .conditionsContent .selectOfDateCalendar .dateWrap td > .disabledReserve {
	height: 100%;
	padding: 8px 0 10px;
}
.inputReserveConditionModal .conditionsContent .selectOfDateCalendar .dateWrap td > .disabledReserve > .status {
	padding: 6px 0 0;
}
.inputReserveConditionModal .conditionsContent .selectOfDateCalendar .dateWrap td > .disabledReserve > .cross {
	padding: 0;
	font-size: 22px;
	font-weight: normal;
}
.inputReserveConditionModal .conditionsContent .selectOfDateCalendar .dateWrap td > .pastDay {
	padding: 8px 0 26px;
	background: #FAFAFA;
}
.inputReserveConditionModal .conditionsContent .selectOfDateCalendar .dateWrap td > .disabledReserve > .date,
.inputReserveConditionModal .conditionsContent .selectOfDateCalendar .dateWrap td > .disabledReserve > .status,
.inputReserveConditionModal .conditionsContent .selectOfDateCalendar .dateWrap td > .pastDay > .date,
.inputReserveConditionModal .conditionsContent .selectOfDateCalendar .dateWrap td > .pastDay > .status {
	color: #999999;
}
.inputReserveConditionModal .conditionsContent .calendarIcn {
	padding: 0 27px 0 14px;
	line-height: 32px;
}
.inputReserveConditionModal .conditionsContent .calendarIcn:before {
	position: absolute;
	top: 8px;
	display: inline-block;
	width: 16px;
	height: 16px;
	background-image: url("/SYS/cmn/images/front_002/icn_open_calender_gray.png");
	background-repeat: no-repeat;
	background-size: 16px 16px;
	content: "";
}
.inputReserveConditionModal .conditionsContent .calendarIcn > .statusValue {
	margin-left: 24px;
	font-size: 14px;
}
.inputReserveConditionModal .conditionsContent .pointPlusIcnDescription {
	margin: 15px 14px 0;
	padding-left: 17px;
	background: url("/SYS/PC/images/icn/point_plus_36x24@2x.png") left center/18px 12px no-repeat;
	font-size: 12px;
	color: #1E212D;
}
.inputReserveConditionModal .conditionsContent .legendWrap {
	margin-top: 15px;
	padding: 0 15px;
}
.inputReserveConditionModal .conditionsContent .legendWrap .pointPlusIcnDescription {
	margin: 0;
	padding-left: 14px;
	background: url("/SYS/PC/images/icn/point_plus_30x20@2x.png") left center/15px 10px no-repeat;
	font-size: 10px;
}
.inputReserveConditionModal .conditionsContent .legendList {
	display: table;
	font-size: 10px;
}
.inputReserveConditionModal .conditionsContent .legendList > li {
	display: table-cell;
	font-size: 0;
}
.inputReserveConditionModal .conditionsContent .legendList > li .mark {
	color: #1470CC;
	font-size: 10px;
}
.inputReserveConditionModal .conditionsContent .legendList > li + li {
	padding-left: 10px;
}
.inputReserveConditionModal .conditionsContent .legendList > li .noReserve {
	color: #999999;
}
.inputReserveConditionModal .conditionsContent .desc {
	color: #1E212D;
	font-size: 10px;
}
.inputReserveConditionModal .conditionsContent .courseDetail,
.inputReserveConditionModal .conditionsContent .seatDetail {
	display: table;
	table-layout: fixed;
	width: 100%;
	box-sizing: border-box;
}
.inputReserveConditionModal .conditionsContent .courseDetail > div + div,
.inputReserveConditionModal .conditionsContent .seatDetail > div + div {
	padding-left: 10px;
}
.inputReserveConditionModal .conditionsContent .courseDetail > .photo,
.inputReserveConditionModal .conditionsContent .seatDetail > .photo {
	position: relative;
	display: table-cell;
	float: none;
	width: 100px;
	height: 100px;
	vertical-align: top;
	overflow: hidden;
}
.inputReserveConditionModal .conditionsContent .courseDetail > .photo > .photoFrame,
.inputReserveConditionModal .conditionsContent .seatDetail > .photo > .photoFrame {
	height: 100px;
	border: 1px solid #E0E0E0;
	box-sizing: border-box;
}
.inputReserveConditionModal .conditionsContent .courseDetail > .photo > .photoFrame > img,
.inputReserveConditionModal .conditionsContent .seatDetail > .photo > .photoFrame > img {
	position: absolute;
	top: 50px;
	left: 50%;
	max-width: 98px;
	/* autoprefixer: off */
	-ms-transform: translate(-50%, -50%);
	/* autoprefixer: on */
	    transform: translate(-50%, -50%);
}
.inputReserveConditionModal .conditionsContent .courseDetail > .info,
.inputReserveConditionModal .conditionsContent .seatDetail > .info {
	display: table-cell;
	vertical-align: middle;
}
.inputReserveConditionModal .conditionsContent .courseDetail > .info > .courseLabel + .title,
.inputReserveConditionModal .conditionsContent .seatDetail > .info > .courseLabel + .title {
	margin-top: 7px;
}
.inputReserveConditionModal .conditionsContent .courseDetail > .info > .seatOnlyLabel,
.inputReserveConditionModal .conditionsContent .seatDetail > .info > .seatOnlyLabel {
	margin-bottom: 5px;
	font-size: 12px;
	color: #1E212D;
	line-height: 1.4;
}
.inputReserveConditionModal .conditionsContent .courseDetail > .info > .title,
.inputReserveConditionModal .conditionsContent .seatDetail > .info > .title {
	color: #1E212D;
}
.inputReserveConditionModal .conditionsContent .courseDetail > .info > .title > .name,
.inputReserveConditionModal .conditionsContent .courseDetail > .info > .title > .partitionName,
.inputReserveConditionModal .conditionsContent .seatDetail > .info > .title > .name,
.inputReserveConditionModal .conditionsContent .seatDetail > .info > .title > .partitionName {
	color: #1E212D;
}
.inputReserveConditionModal .conditionsContent .courseDetail > .button,
.inputReserveConditionModal .conditionsContent .seatDetail > .button {
	display: table-cell;
	vertical-align: middle;
	width: 128px;
}
.inputReserveConditionModal .conditionsContent .courseDetail > .button > a,
.inputReserveConditionModal .conditionsContent .courseDetail > .button > .offButton,
.inputReserveConditionModal .conditionsContent .seatDetail > .button > a,
.inputReserveConditionModal .conditionsContent .seatDetail > .button > .offButton {
	display: block;
	padding: 5px;
	border: 1px solid #CCCCCC;
	border-radius: 2px;
	box-sizing: border-box;
	color: #1E212D;
	font-weight: bold;
	font-size: 12px;
	text-align: center;
	text-decoration: none;
}
.inputReserveConditionModal .conditionsContent .courseDetail > .button > a,
.inputReserveConditionModal .conditionsContent .seatDetail > .button > a {
	/* autoprefixer: off */
	background: -ms-linear-gradient(top, #FEFEFE, #EDEDED);
	/* autoprefixer: on */
	background: -webkit-linear-gradient(top, #FEFEFE, #EDEDED);
	background: linear-gradient(top, #FEFEFE, #EDEDED);
	box-shadow: 0px 0px 1px 0px #FFFFFF inset;
}
.inputReserveConditionModal .conditionsContent .courseDetail > .button > a .btnArrow,
.inputReserveConditionModal .conditionsContent .seatDetail > .button > a .btnArrow {
	display: inline-block;
	height: 10px;
	position: relative;
}
.inputReserveConditionModal .conditionsContent .courseDetail > .button > a .btnArrow:after,
.inputReserveConditionModal .conditionsContent .seatDetail > .button > a .btnArrow:after {
	display: block;
	content: "";
	width: 5px;
	height: 5px;
	position: absolute;
	top: 0;
	right: -26px;
	margin-bottom: 3px;
	background-color: transparent;
	border-right: solid 2px #CCCCCC;
	border-top: solid 2px #CCCCCC;
	transform: rotate(135deg);
}
.inputReserveConditionModal .conditionsContent .courseDetail > .button > a:hover,
.inputReserveConditionModal .conditionsContent .seatDetail > .button > a:hover {
	/* autoprefixer: off */
	background: -ms-linear-gradient(top, #EDEDED, #E7E7E7);
	/* autoprefixer: on */
	background: -webkit-linear-gradient(top, #EDEDED, #E7E7E7);
	background: linear-gradient(top, #EDEDED, #E7E7E7);
}
.inputReserveConditionModal .conditionsContent .courseDetail > .button > .offButton,
.inputReserveConditionModal .conditionsContent .seatDetail > .button > .offButton {
	background: #DEDEDE;
	color: #9C9C9C;
}
.inputReserveConditionModal .conditionsContent .courseDetail > .button > .selectedButtun,
.inputReserveConditionModal .conditionsContent .seatDetail > .button > .selectedButtun {
	border: 1px solid #1470CC;
	color: #1470CC;
}
.inputReserveConditionModal .conditionsContent .courseDetail > .button > .selectedButtun .btnArrow:after,
.inputReserveConditionModal .conditionsContent .seatDetail > .button > .selectedButtun .btnArrow:after {
	border-right: solid 2px #1470CC;
	border-top: solid 2px #1470CC;
	right: -26px;
	top: 4px;
	transform: rotate(-45deg);
}
.inputReserveConditionModal .conditionsContent .courseDetail > .info > .price {
	font-size: 0;
}
.inputReserveConditionModal .conditionsContent .courseDetail > .info > .price > .useCoupon,
.inputReserveConditionModal .conditionsContent .courseDetail > .info > .price > .priceNote {
	color: #666666;
	font-size: 10px;
}
.inputReserveConditionModal .conditionsContent .courseDetail > .info > .price > .priceNote {
	display: inline-block;
	max-width: 100%;
}
.inputReserveConditionModal .conditionsContent .courseDetail > .info > .price > .useCoupon + .value {
	padding-left: 5px;
}
.inputReserveConditionModal .conditionsContent .courseDetail > .info > .price > .value {
	color: #E73820;
	font-size: 18px;
	font-weight: bold;
}
.inputReserveConditionModal .conditionsContent .courseDetail > .info > .price > .tax {
	color: #E73820;
	font-size: 10px;
	margin-left: -5px;
}
.inputReserveConditionModal .conditionsContent .courseDetail > .info > .price > .tax:not(:last-child) {
	padding-right: 5px;
}
.inputReserveConditionModal .conditionsContent .courseDetail > .info > .price > .unit {
	color: #E73820;
	font-size: 12px;
}
.inputReserveConditionModal .conditionsContent .courseDetail > .info > .price > .unit:not(:last-child) {
	padding-right: 5px;
}
.inputReserveConditionModal .conditionsContent .courseDetail > .info > .title {
	font-size: 16px;
	font-weight: bold;
}
.inputReserveConditionModal .conditionsContent .courseDetail > .info > .title > .name {
	font-size: 16px;
	font-weight: bold;
}
.inputReserveConditionModal .conditionsContent .courseDetail > .info > .seatOnlyNotes {
	margin-top: 5px;
	font-size: 12px;
	color: #666666;
	line-height: 1.4;
}
.inputReserveConditionModal .conditionsContent .seatDetail > .info > .title {
	display: -ms-flexbox;
	display: flex;
}
.inputReserveConditionModal .conditionsContent .seatDetail > .info > .title > .partitionName,
.inputReserveConditionModal .conditionsContent .seatDetail > .info > .title > .seatName,
.inputReserveConditionModal .conditionsContent .seatDetail > .info > .title > .capacity {
	font-size: 14px;
}
.inputReserveConditionModal .conditionsContent .seatDetail > .info > .title > .seatName,
.inputReserveConditionModal .conditionsContent .seatDetail > .info > .title > .capacity {
	font-weight: bold;
}
.inputReserveConditionModal .conditionsContent .seatDetail > .info > .title > .smokingUnit {
	font-size: 14px;
	color: #1E212D;
}
.inputReserveConditionModal .conditionsContent .seatDetail > .info > .title > .smokingUnit.smoking,
.inputReserveConditionModal .conditionsContent .seatDetail > .info > .title > .smokingUnit.nonsmoking {
	position: relative;
	margin-left: 10px;
	padding-left: 18px;
}
.inputReserveConditionModal .conditionsContent .seatDetail > .info > .title > .smokingUnit.smoking:before,
.inputReserveConditionModal .conditionsContent .seatDetail > .info > .title > .smokingUnit.nonsmoking:before {
	position: absolute;
	top: 2px;
	left: 0;
	width: 16px;
	height: 16px;
	background-size: 16px 16px;
	background-repeat: no-repeat;
	content: "";
}
.inputReserveConditionModal .conditionsContent .seatDetail > .info > .title > .smokingUnit.smoking:before {
	background-image: url("/SYS/cmn/images/front_002/icn_smoking_16.png");
}
.inputReserveConditionModal .conditionsContent .seatDetail > .info > .title > .smokingUnit.nonsmoking:before {
	background-image: url("/SYS/cmn/images/front_002/icn_nonsmoking_16.png");
}
.inputReserveConditionModal .conditionsContent .seatDetail > .info > .caption {
	margin-top: 5px;
	color: #666666;
	font-size: 10px;
}
.inputReserveConditionModal .conditionsContent .seatDetail > .capacity {
	display: table-cell;
	vertical-align: middle;
	width: 48px;
	color: #1E212D;
	font-size: 14px;
}
.inputReserveConditionModal .conditionsContent .courseDetailTrigger {
	margin-top: 3px;
	font-size: 14px;
}
.inputReserveConditionModal .conditionsContent .courseDetailTrigger > a {
	color: #1470CC;
	font-size: 12px;
	font-weight: normal;
	position: relative;
	padding-right: 19px;
}
.inputReserveConditionModal .conditionsContent .courseDetailTrigger > a:after {
	background-color: transparent;
	border-right: solid 1px #1470CC;
	border-top: solid 1px #1470CC;
	content: "";
	top: 0px;
	right: 2px;
	height: 7px;
	width: 7px;
	margin-bottom: 3px;
	transform: rotate(135deg);
	display: block;
	position: absolute;
}
.inputReserveConditionModal .conditionsContent .courseDetailTrigger.open > a:after {
	transform: rotate(-45deg);
	top: 5px;
}
.inputReserveConditionModal .conditionsContent .moreInfo {
	margin-top: 10px;
	margin-right: 138px;
	padding: 10px;
	background-color: #FEF9F4;
}
.inputReserveConditionModal .conditionsContent .moreInfo.withPhoto {
	margin-left: 110px;
}
.inputReserveConditionModal .conditionsContent .moreInfo .courseCondition {
	color: #666666;
	font-size: 10px;
	white-space: pre-wrap;
}
.inputReserveConditionModal .conditionsContent .moreInfo .courseCondition + .courseDetailHeading {
	margin-top: 8px;
}
.inputReserveConditionModal .conditionsContent .moreInfo .courseDetailHeading {
	margin-top: 10px;
	color: #666666;
	font-size: 10px;
	font-weight: bold;
}
.inputReserveConditionModal .conditionsContent .moreInfo .courseDetailInformation {
	color: #1E212D;
	font-size: 12px;
	white-space: pre-wrap;
}
.inputReserveConditionModal .conditionsContent .moreInfo .courseAnnotation {
	color: #666666;
	font-size: 10px;
	white-space: pre-wrap;
}
.inputReserveConditionModal .conditionsContent .moreInfo .courseAnnotation:not(:first-child) {
	margin-top: 10px;
}
.inputReserveConditionModal .conditionsContent .moreInfo .linkCourseDetail {
	margin-top: 10px;
	font-size: 12px;
	text-align: right;
}
.inputReserveConditionModal .conditionsContent .moreInfo:empty {
	height: 33px;
	background-image: url("/SYS/cmn/images/front_002/img_loading_100x100_red.gif");
	background-repeat: no-repeat;
	background-size: 34px 33px;
	background-position: center;
}
.inputReserveConditionModal .conditionsContent .blankLinkIcon {
	position: relative;
	padding-right: 14px;
}
.inputReserveConditionModal .conditionsContent .blankLinkIcon:after {
	position: absolute;
	top: 1px;
	right: 0;
	display: inline-block;
	width: 10px;
	height: 10px;
	background-image: url(/SYS/cmn/images/front_002/icn_window_blue_large.png);
	background-repeat: no-repeat;
	background-size: 10px 10px;
	content: "";
}
.inputReserveConditionModal > .modalBody > .footer > .reservebleContent {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 10px;
	width: 100%;
	padding: 0 35px;
}
.inputReserveConditionModal > .modalBody > .footer > .reservebleContent > .submitButton > a,
.inputReserveConditionModal > .modalBody > .footer > .reservebleContent > .submitButton > .offButton {
	display: block;
	width: 202px;
	height: 50px;
	margin-left: auto;
	line-height: 50px;
	font-size: 14px;
	font-weight: bold;
	text-decoration: none;
	border-radius: 2px;
	text-align: center;
	box-sizing: border-box;
}
.inputReserveConditionModal > .modalBody > .footer > .reservebleContent > .submitButton > a {
	/* autoprefixer: off */
	background: -ms-linear-gradient(top, #34B6EB, #20A7DE);
	/* autoprefixer: on */
	background: -webkit-linear-gradient(top, #34B6EB, #20A7DE);
	background: linear-gradient(top, #34B6EB, #20A7DE);
	border: 1px solid #12A1C5;
	box-shadow: 0px 0px 1px 1px #00C1F2 inset;
	color: #FFFFFF;
}
.inputReserveConditionModal > .modalBody > .footer > .reservebleContent > .submitButton > a:hover {
	/* autoprefixer: off */
	background: -ms-linear-gradient(top, #22AEE6, #0A92CC);
	/* autoprefixer: on */
	background: -webkit-linear-gradient(top, #22AEE6, #0A92CC);
	background: linear-gradient(top, #22AEE6, #0A92CC);
}
.inputReserveConditionModal > .modalBody > .footer > .reservebleContent > .submitButton > .offButton {
	background: #DEDEDE;
	border: 1px solid #CCCCCC;
	color: #9C9C9C;
}
.inputReserveConditionModal > .modalBody > .footer .conditionState {
	color: #1AC94B;
	font-size: 14px;
	font-weight: bold;
}
.inputReserveConditionModal > .modalBody > .footer .conditionState.failure {
	color: #E73820;
}
.inputReserveConditionModal > .modalBody > .footer .caption {
	margin-top: 5px;
	color: #666666;
	font-size: 12px;
	font-weight: normal;
}
.inputReserveConditionModal > .modalBody > .footer .caption .reserveStatus {
	font-size: 14px;
	font-weight: bold;
}
.inputReserveConditionModal > .modalBody > .footer .checkIcon {
	position: relative;
	padding-left: 22px;
}
.inputReserveConditionModal > .modalBody > .footer .checkIcon:before {
	position: absolute;
	top: 2px;
	left: 0;
	display: inline-block;
	width: 17px;
	height: 17px;
	background-image: url("/SYS/cmn/images/front_002/icn_green_check.png");
	background-repeat: no-repeat;
	background-size: 17px 17px;
	content: "";
}
.inputReserveConditionModalOverlay {
	width: 100%;
	height: 100%;
	position: fixed;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	background: #333333;
	opacity: 0.7;
	z-index: 1000;
}
button {
	padding: 0;
	border: none;
	background: none;
	font-family: inherit;
	text-transform: none;
	outline: none;
	box-shadow: none;
	appearance: none;
}
.strongLabel,
.campaignLabel {
	padding: 5px;
	border: 1px solid #D7C1AB;
	border-radius: 2px;
	box-sizing: border-box;
	background-color: #FFFFFF;
	font-size: 10px;
	font-weight: bold;
	color: #A4784D;
	line-height: 1;
}
.shopDetailIcons > li {
	text-align: left;
}
.shopDetailIcons {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
}
.shopDetailIcons > li {
	float: initial;
	height: initial;
}
.pointPlusLabel {
	padding-left: 22px;
	background-image: url("/SYS/PC/images/icn/point_plus_30x20.png");
	background-repeat: no-repeat;
	background-position: 5px;
	background-size: 15px 10px;
}
.pointLabel {
	padding: 1px 4px 0 4px;
	border: 1px solid #BEA030;
	color: #4E4E4E;
	line-height: normal;
}
.storeCassetteCalendarWrap {
	position: relative;
	margin-top: 10px;
	height: 123px;
}
.storeCassetteCalendarWrap.pointPlusCalendar {
	height: 160px;
}
.storeCassetteCalendarWrap.pointPlusCalendar .stockRequestFailed {
	padding-top: 24px;
}
.storeCassetteCalendarWrap.pointPlusCalendar .calendarTable > tbody > tr > td {
	height: 78px;
}
.storeCassetteCalendarWrap.pointPlusCalendar .calendarTable > tbody > tr > td > button,
.storeCassetteCalendarWrap.pointPlusCalendar .calendarTable > tbody > tr > td > a {
	display: block;
	height: 100%;
	min-height: 78px;
	box-sizing: border-box;
}
.storeCassetteCalendarWrap.pointPlusCalendar .calendarTable > tbody > tr:not(.pointPlus) > td .status {
	margin-top: 20px;
}
.storeCassetteCalendarWrap.pointPlusCalendar .calendarTable > tbody > tr:not(.pointPlus) > td.mark .status {
	margin-top: 18px;
}
.storeCassetteCalendarWrap.pointPlusCalendar .calendarTable > tbody > tr:not(.pointPlus) > td.disabled.cross > .status {
	margin-top: 15px;
}
.storeCassetteCalendarWrap .titleWrap {
	display: flex;
	align-items: baseline;
	justify-content: space-between;
	padding-left: 25px;
	background: url("/SYS/cmn/images/front_002/icn_yoyaku_red_small.png") no-repeat left top;
	color: #1E212D;
}
.storeCassetteCalendarWrap .titleWrap > .title {
	font-size: 12px;
	font-weight: bold;
}
.storeCassetteCalendarWrap .titleWrap > .note {
	padding-left: 15px;
	background: url("/SYS/PC/images/icn/info_blue_24x24@2x.png") left center/12px no-repeat;
	font-size: 10px;
}
.storeCassetteCalendarWrap .calendarWrap {
	position: relative;
	margin-top: 10px;
}
.storeCassetteCalendarWrap .calendarWrap table {
	border: none;
}
.storeCassetteCalendarWrap .calendarWrap table > thead th,
.storeCassetteCalendarWrap .calendarWrap table > thead td,
.storeCassetteCalendarWrap .calendarWrap table > tbody th,
.storeCassetteCalendarWrap .calendarWrap table > tbody td {
	padding: 0;
	border: none;
	background: none;
}
.storeCassetteCalendarWrap .calendarWrap .calendarTable {
	min-height: 75px;
	border-collapse: unset;
	border-spacing: 0;
	border-right: 1px solid #CCCCCC;
}
.storeCassetteCalendarWrap .calendarWrap .calendarTable > tbody > tr > td {
	width: 7.1428571429vw;
	max-width: 49px;
	min-width: 48px;
	border-collapse: unset;
	border-spacing: 0;
	box-sizing: border-box;
}
.storeCassetteCalendarWrap .calendarWrap .calendarTable > thead > tr > th {
	padding: 2px 0;
	border-top: 1px solid #CCCCCC;
	background: #F4F4F4;
	font-size: 12px;
	font-weight: bold;
	color: #1E212D;
	line-height: 1;
	text-align: center;
}
.storeCassetteCalendarWrap .calendarWrap .calendarTable > thead > tr > th.sat {
	background: #EBF6FA;
	color: #3BA3CD;
}
.storeCassetteCalendarWrap .calendarWrap .calendarTable > thead > tr > th.sun {
	background: #FCE8E7;
	color: #E41A12;
}
.storeCassetteCalendarWrap .calendarWrap .calendarTable > thead > tr > th:first-child,
.storeCassetteCalendarWrap .calendarWrap .calendarTable > thead > tr > th + th {
	border-left: 1px solid #CCCCCC;
}
.storeCassetteCalendarWrap .calendarWrap .calendarTable > tbody > tr > td.disabled,
.storeCassetteCalendarWrap .calendarWrap .calendarTable > tbody > tr > td > button,
.storeCassetteCalendarWrap .calendarWrap .calendarTable > tbody > tr > td > a {
	border-top: 1px solid #CCCCCC;
	border-bottom: 1px solid #CCCCCC;
	border-left: 1px solid #CCCCCC;
}
.storeCassetteCalendarWrap .calendarWrap .calendarTable > tbody > tr > td {
	max-height: 78px;
	padding: 0;
	background: #FFFFFF;
}
.storeCassetteCalendarWrap .calendarWrap .calendarTable > tbody > tr > td.sat .date {
	color: #3BA3CD;
}
.storeCassetteCalendarWrap .calendarWrap .calendarTable > tbody > tr > td.sun .date {
	color: #E41A12;
}
.storeCassetteCalendarWrap .calendarWrap .calendarTable > tbody > tr > td.holiday .date {
	color: #E41A12;
}
.storeCassetteCalendarWrap .calendarWrap .calendarTable > tbody > tr > td .date,
.storeCassetteCalendarWrap .calendarWrap .calendarTable > tbody > tr > td .status {
	display: block;
	line-height: 1;
	text-align: center;
}
.storeCassetteCalendarWrap .calendarWrap .calendarTable > tbody > tr > td .date {
	font-size: 12px;
	line-height: 1;
	color: #1E212D;
}
.storeCassetteCalendarWrap .calendarWrap .calendarTable > tbody > tr > td .status {
	margin-top: 10px;
	font-size: 16px;
	color: #1470CC;
}
.storeCassetteCalendarWrap .calendarWrap .calendarTable > tbody > tr > td.mark button .status,
.storeCassetteCalendarWrap .calendarWrap .calendarTable > tbody > tr > td.mark a .status {
	margin-top: 8px;
	font-family: "ヒラギノ角ゴ Pro";
	font-size: 20px;
	font-weight: bold;
}
.storeCassetteCalendarWrap .calendarWrap .calendarTable > tbody > tr > td > button,
.storeCassetteCalendarWrap .calendarWrap .calendarTable > tbody > tr > td > a {
	display: grid;
	grid-template-rows: 12px 36px;
	position: relative;
	padding-top: 8px;
	text-decoration: none;
	cursor: pointer;
}
.storeCassetteCalendarWrap .calendarWrap .calendarTable > tbody > tr > td > button:hover,
.storeCassetteCalendarWrap .calendarWrap .calendarTable > tbody > tr > td > a:hover {
	background: #FFFBF0;
}
.storeCassetteCalendarWrap .calendarWrap .calendarTable > tbody > tr > td > button {
	width: 100%;
}
.storeCassetteCalendarWrap .calendarWrap .calendarTable > tbody > tr > td.disabled {
	vertical-align: top;
}
.storeCassetteCalendarWrap .calendarWrap .calendarTable > tbody > tr > td.disabled > .date {
	margin-top: 8px;
	color: #999999;
}
.storeCassetteCalendarWrap .calendarWrap .calendarTable > tbody > tr > td.disabled > .status {
	color: #999999;
}
.storeCassetteCalendarWrap .calendarWrap .calendarTable > tbody > tr > td.disabled.cross > .status {
	margin-top: 5px;
	font-size: 24px;
}
.storeCassetteCalendarWrap .calendarWrap .calendarTable > tbody > tr > td.pointPlusIcn > button,
.storeCassetteCalendarWrap .calendarWrap .calendarTable > tbody > tr > td.pointPlusIcn > a {
	grid-template-rows: 12px 48px;
	gap: 8px 0;
}
.storeCassetteCalendarWrap .calendarWrap .calendarTable > tbody > tr > td.pointPlusIcn > button .status,
.storeCassetteCalendarWrap .calendarWrap .calendarTable > tbody > tr > td.pointPlusIcn > a .status {
	margin: 0;
}
.storeCassetteCalendarWrap .calendarWrap .calendarTable > tbody > tr > td.pointPlusIcn > button::after,
.storeCassetteCalendarWrap .calendarWrap .calendarTable > tbody > tr > td.pointPlusIcn > a::after {
	position: absolute;
	bottom: 0;
	width: 100%;
	height: 20px;
	background: url("/SYS/PC/images/icn/point_plus_36x24@2x.png") #F5F1E9 center/18px 12px no-repeat;
	content: "";
	z-index: 50;
}
.storeCassetteCalendarWrap .calendarWrap .calendarIcnDescription {
	display: flex;
	justify-content: end;
	margin-top: 5px;
	font-size: 10px;
	color: #1E212D;
}
.storeCassetteCalendarWrap .calendarWrap .calendarIcnDescription > li {
	color: #1E212D;
}
.storeCassetteCalendarWrap .calendarWrap .calendarIcnDescription > li + li {
	padding-left: 8px;
}
.storeCassetteCalendarWrap .calendarWrap .calendarIcnDescription > li > .enabled {
	font-weight: bold;
	color: #1470CC;
}
.storeCassetteCalendarWrap .calendarWrap .calendarIcnDescription > li > .disabled {
	font-weight: bold;
	color: #999999;
}
.storeCassetteCalendarWrap .calendarWrap .pointPlusIcnDescription {
	width: fit-content;
	margin: 2px 0 0 auto;
	padding-left: 20px;
	background: url("/SYS/PC/images/icn/point_plus_36x24@2x.png") 4px 1px/18px 12px no-repeat;
	font-size: 10px;
	color: #1E212D;
}
.storeCassetteCalendarWrap .calendarWrap.empty {
	position: absolute;
	top: 18px;
	left: 0;
	bottom: 0;
	right: 0;
	width: 30px;
	height: 30px;
	margin: auto;
	border-top: 3px solid #D0111B;
	border-right: 3px solid #CCCCCC;
	border-bottom: 3px solid #CCCCCC;
	border-left: 3px solid #CCCCCC;
	border-radius: 50%;
	animation: loading-animation 2s infinite linear;
}
@keyframes loading-animation {
	0% {
	 transform: rotate(0deg);
	}
	100% {
	 transform: rotate(360deg);
	}
}
.storeCassetteCalendarWrap .stockRequestFailed {
	padding-top: 9px;
	text-align: center;
}
.storeCassetteCalendarWrap .stockRequestFailed > .text {
	font-size: 12px;
	line-height: 1.4;
	color: #E41A12;
	text-align: center;
}
.storeCassetteCalendarWrap .stockRequestFailed > .btn {
	margin-top: 8px;
	width: 223px;
	height: 30px;
	border: 1px solid #CCCCCC;
	border-radius: 2px;
	background: linear-gradient(to bottom, #FEFEFE, #EDEDED);
	font-size: 12px;
	font-weight: bold;
	color: #1E212D;
	box-shadow: inset 0 0 1px 0 #FFFFFF;
	cursor: pointer;
}
.storeCassetteCalendarWrap .stockRequestFailed > .btn:hover {
	background: linear-gradient(to bottom, #EDEDED, #E7E7E7);
}
.inputReserveConditionModal div,
p {
	text-align: inherit;
}
.shopDetailTop {
	margin-top: 8px;
	padding-top: 5px;
	background: url("/SYS/cmn/images/front_002/bg_shopdetail_wrap_top.png") no-repeat left top;
}
.shopDetailMiddle {
	padding: 3px 8px;
	background: url("/SYS/cmn/images/front_002/bg_shopdetail_wrap_middle.png") repeat-y left top;
}
.shopDetailBottom {
	padding-bottom: 5px;
	background: url("/SYS/cmn/images/front_002/bg_shopdetail_wrap_bottom.png") no-repeat left bottom;
}
.shopDetailInnerTop {
	position: relative;
	padding-top: 5px;
	background: url("/SYS/cmn/images/front_002/bg_shopdetail_inner_top.png") no-repeat left top;
}
.shopDetailInnerMiddle {
	padding: 0 12px 7px;
	background: url("/SYS/cmn/images/front_002/bg_shopdetail_inner_middle.png") repeat-y left top;
}
.shopDetailInnerBottom {
	padding-bottom: 5px;
	background: url("/SYS/cmn/images/front_002/bg_shopdetail_inner_bottom.png") no-repeat left bottom;
}
.shopDetailCoreInner {
	display: flex;
	padding-top: 10px;
}
.shopDetailTop ~ .shopDetailTop {
	margin-top: 20px;
}
.shopDetailWithCourseCalendar .shopDetailCouponWrap {
	margin-top: 15px;
}
.shopDetailWithCourseCalendar .shopDetailMiddle {
	padding-bottom: 0;
}
.iconSaveList {
	float: right;
	padding-right: 3px;
	background: url("/SYS/cmn/images/front_002/btn_list_gray_small_off.png") no-repeat left top;
}
.iconSaveList {
	position: absolute;
	top: 9px;
	right: 6px;
}
.iconSaveList > a {
	display: block;
}
.iconSaveList > a > img {
	vertical-align: top;
}
.shopDetailFigureWrap .shopPhotoMain {
	width: 180px;
	height: 180px;
	border: 1px solid #DFDFDF;
	text-align: center;
}
.shopDetailFigureWrap .shopPhotoMain > a {
	display: block;
}
.shopDetailFigureWrap .shopPhotoMain > a > img {
	max-width: 180px;
	max-height: 180px;
}
.shopDetailFigureWrap .shopPhotoSub {
	display: flex;
	margin-top: 2px;
}
.shopDetailFigureWrap .shopPhotoSub > li {
	width: 88px;
	height: 88px;
	border: 1px solid #DFDFDF;
	text-align: center;
}
.shopDetailFigureWrap .shopPhotoSub > li > a {
	display: block;
}
.shopDetailFigureWrap .shopPhotoSub > li > a > img {
	max-width: 88px;
	max-height: 88px;
}
.shopDetailFigureWrap .shopPhotoSub > li + li {
	margin-left: 2px;
}
.shopDetailFigureWrap img {
	font-size: 12px;
}
.shopDetailFigureWrap + .shopDetailText {
	padding-left: 16px;
}
.shopDetailText {
	width: 100%;
	font-size: 12px;
	color: #333333;
	overflow: hidden;
}
.shopDetailText .parentGenreName {
	margin-top: 5px;
	font-weight: bold;
}
.shopDetailText .storeNamePrefix {
	font-size: 10px;
	font-weight: bold;
	color: #666666;
}
.shopDetailText .storeNamePrefix + .shopDetailStoreName {
	margin-top: 5px;
}
.shopDetailText .shopDetailStoreName {
	font-size: 18px;
}
.shopDetailIcons {
	display: flex;
	margin-top: -2px;
	flex-wrap: wrap;
	align-items: center;
}
.shopDetailIcons > li {
	margin-top: 5px;
	margin-left: 5px;
}
.shopDetailIcons > li:not(.strongLabel):not(.campaignLabel) {
	height: 18px;
}
.shopDetailInfo {
	margin-top: 10px;
}
.shopDetailInfo > li {
	min-height: 19px;
	padding-left: 27px;
	color: #666666;
	text-overflow: ellipsis;
	overflow: hidden;
	font-size: 12px;
	white-space: nowrap;
}
.shopDetailInfo > li + li {
	margin-top: 5px;
}
.shopDetailInfo .shopDetailInfoAccess {
	background: url("/SYS/cmn/images/front_002/icn_access_red_small.png") no-repeat left top;
}
.shopDetailInfo .shopDetailInfoTime {
	background: url("/SYS/cmn/images/front_002/icn_time_red_small.png") no-repeat left top;
}
.shopDetailInfo .shopDetailInfoBudget {
	background: url("/SYS/cmn/images/front_002/icn_budget_red_small.png") no-repeat left top;
}
.shopDetailInfo .shopDetailInfoCapacity {
	background: url("/SYS/cmn/images/front_002/icn_chair_red_small.png") no-repeat left top;
}
.shopDetailIcons + .shopDetailInfo {
	margin-top: 12px;
}
.shopDetailCouponWrap {
	margin-top: 15px;
}
.shopDetailCouponWrap .shopDetailCouponTop {
	background: url("/SYS/cmn/images/front_002/bg_shopdetail_coupon_top.png") no-repeat left top;
}
.shopDetailCouponWrap .shopDetailCouponBottom {
	position: relative;
	padding: 3px 0;
	background: url("/SYS/cmn/images/front_002/bg_shopdetail_coupon_bottom.png") no-repeat left bottom;
}
.shopDetailCouponWrap .icnCheck {
	position: absolute;
	top: 0;
	left: 0;
}
.shopDetailCouponWrap .icnTodayCoupon {
	position: absolute;
	top: -6px;
	right: 0;
	height: 16px;
}
.shopDetailCouponWrap .icnTodayCoupon > img {
	vertical-align: top;
}
.shopDetailCouponWrap .shopDetailCouponInner {
	border-collapse: collapse;
	border-left: 2px solid #FFC579;
	border-right: 2px solid #FFC579;
}
.shopDetailCouponWrap .shopDetailCouponInner > tbody > tr > td {
	min-width: 380px;
	padding: 8px 10px;
	line-height: 14px;
	box-sizing: border-box;
}
.shopDetailCouponWrap .shopDetailCouponInner > tbody > tr > td > a {
	font-size: 12px;
	font-weight: bold;
}
.shopDetailCouponWrap .shopDetailCouponInner > tbody > tr > th {
	width: 100px;
	padding: 6px 8px 5px 8px;
	background: #F9F4EE;
	background: linear-gradient(to bottom, #F9F4EE, #FFFFFF);
	background: -webkit-linear-gradient(top, #F9F4EE, #FFFFFF);
	border-right: 1px dotted #FFC579;
	box-sizing: border-box;
}
.shopDetailCourseWrap {
	margin-top: 10px;
	font-size: 12px;
}
.shopDetailCourseWrap .icnCourseRed {
	padding: 1px 0 1px 25px;
	background: url("/SYS/cmn/images/front_002/icn_shop_red_small.png") no-repeat left top;
	font-weight: bold;
	color: #333333;
}
.shopDetailCourseWrap .shopDetailCourse > dd {
	position: relative;
	margin-top: 1px;
	padding-left: 20px;
	background: url("/SYS/cmn/images/front_002/icn_round_gray.png") no-repeat left 3px;
}
.shopDetailCourseWrap .icnCourseRed + dd {
	margin-top: 5px;
}
.shopDetailCourseWrap .shopDetailCoursePriceWrap {
	display: flex;
	position: absolute;
	right: 0;
	color: #D0111B;
	text-align: right;
}
.shopDetailCourseWrap .shopDetailCoursePrice {
	width: 100px;
	font-weight: bold;
	margin-right: 40px;
}
.shopDetailCourseWrap .shopDetailCourseTax {
	font-size: 10px;
	margin-top: 3px;
	margin-left: -40px;
}
.shopDetailCourseWrap .shopDetailCourseTitle {
	display: block;
	width: 520px;
	line-height: 18px;
}
.shopDetailCourseWrap .shopDetailCourseTitle > img {
	margin-right: 5px;
	vertical-align: middle;
}
.shopDetailCourseWrap .shopDetailCourseListLinkWrap {
	margin-top: 5px;
	font-size: 12px;
	text-align: right;
}
.shopDetailCourseWrap .shopDetailCourseListLink {
	display: inline-block;
	padding-left: 10px;
	background: url("/SYS/cmn/images/front_002/icon_links_small.png") no-repeat 0 6px;
}
.shopDetailCourseWrap .shopDetailCourseMoreInfo {
	margin-top: 5px;
}
.shopSeoName {
	margin-top: 2px;
	font-size: 10px;
	color: #999999;
	text-align: right;
}
.storeBudgetAverage {
	display: flex;
	margin-top: 10px;
	align-items: center;
}
.storeBudgetAverage .dinnerBudget,
.storeBudgetAverage .lunchBudget {
	height: 19px;
	padding-left: 27px;
	color: #666666;
	font-size: 12px;
	line-height: 19px;
}
.storeBudgetAverage .dinnerBudget {
	background: url("/SYS/PC/images/icn/dinner_38x38@2x.png") no-repeat left center/19px 19px;
}
.storeBudgetAverage .lunchBudget {
	background: url("/SYS/PC/images/icn/lunch_38x38@2x.png") no-repeat left center/19px 19px;
}
.storeBudgetAverage .dinnerBudget + .lunchBudget {
	margin-left: 10px;
}
.storeBudgetAverage + .shopDetailInfo {
	margin-top: 5px;
}
.modal-mask {
	position: fixed;
	top: 0;
	width: 100%;
	overflow: hidden;
	z-index: 500;
}
@keyframes fadeIn {
	0% {
	 opacity: 0;
	}
	100% {
	 opacity: 1;
	}
}
@keyframes fadeOut {
	0% {
	 opacity: 1;
	}
	100% {
	 opacity: 0;
	}
}
.modal-mask.show {
	display: block;
}
.modal-mask:not(.show) {
	display: none;
}
.modal-mask.fadeIn {
	animation: fadeIn 0.15s ease-in;
}
.modal-mask.fadeOut {
	animation: fadeOut 0.15s ease-in;
}
.modal-mask .modal-overlay {
	position: fixed;
	width: 100%;
	height: 100vh;
	background-color: rgba(0, 0, 0, 0.7);
}
.modal-mask .modal-wrapper {
	position: relative;
	height: 100vh;
	display: flex;
}
.modal-close-btn {
	padding: 16px 0;
}
.modal-close-btn > a {
	display: block;
	width: 13px;
	height: 13px;
	margin: 0 16px 0 auto;
	background: url("/SYS/PC/images/icn/modal_close.png");
}
.modal-content {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate3d(-50%, -50%, 0);
	width: 500px;
	background: #FFFFFF;
	border-radius: 5px;
	box-sizing: border-box;
}
.modal-container {
	padding: 25px;
	border-top: 1px solid #CCCCCC;
}
.modal-title {
	padding-left: 9px;
	border-left: 5px solid #CCCCCC;
	font-size: 14px;
	color: #1E212D;
	font-weight: bold;
}
.modal-text {
	margin-top: 10px;
	font-size: 12px;
	color: #1E212D;
}
.modal-text + .modal-title {
	margin-top: 30px;
}
.shopDetailInnerTop .shopDetailCouponTop {
	padding-top: 0;
}
.footerWrap {
	display: flex;
	align-items: flex-start;
	flex-wrap: wrap;
	width: 950px;
	margin: 0 auto;
	padding-top: 8px;
	padding-bottom: 18px;
}
.footerWrap > .footerPageLinkWrap {
	display: flex;
	height: 10px;
	margin-left: auto;
	justify-content: flex-end;
	order: 3;
}
.footerWrap > .footerPageLinkWrap > li {
	margin-right: 5px;
	padding-right: 5px;
	border-right: solid 1px #CCCCCC;
	line-height: 1;
	font-size: 10px;
}
.footerWrap > .footerPageLinkWrap > li:last-child {
	margin-right: 0;
	padding-right: 0;
	border: none;
}
.footerWrap > .contentLeft {
	display: flex;
	align-items: flex-end;
}
.footerWrap .recruitLinkWrap {
	font-size: initial;
}
.footerWrap .recruitLinkWrap a {
	display: flex;
	align-items: flex-end;
	text-decoration: none !important;
}
.footerWrap .recruitLinkWrap a:hover,
.footerWrap .recruitLinkWrap a:active {
	text-decoration: none !important;
}
.footerWrap .recruitLinkWrap a:hover > img {
	opacity: 1;
}
.footerWrap .recruitLinkWrap a .recruitLogoWrap {
	width: 100px;
	height: 26px;
}
.footerWrap .recruitLinkWrap a .recruitLogoWrap > img {
	width: 100%;
	height: 100%;
}
.footerWrap .recruitLinkWrap a .copyright {
	display: block;
	margin-left: 10px;
	color: #435B67;
	font-size: 10px;
	font-family: "メイリオ", sans-serif;
	font-weight: bold;
	font-style: normal;
	line-height: 1;
}
.footerWrap .linkForStoreWrap {
	display: flex;
	align-items: baseline;
	padding-left: 35px;
}
.footerWrap .linkForStoreWrap .linkForStoreText {
	position: relative;
	padding: 0 8px 0 18px;
	font-size: 10px;
	font-weight: bold;
	color: #4E4E4E;
	line-height: 1;
}
.footerWrap .linkForStoreWrap .linkForStoreText::before,
.footerWrap .linkForStoreWrap .linkForStoreText::after {
	position: absolute;
	top: 5px;
	transform: translate3d(0, -50%, 0);
	content: "";
}
.footerWrap .linkForStoreWrap .linkForStoreText::before {
	left: 0;
	width: 12px;
	height: 12px;
	border-radius: 2px;
	background-color: #F6A004;
}
.footerWrap .linkForStoreWrap .linkForStoreText::after {
	left: 4px;
	box-sizing: border-box;
	width: 3px;
	height: 3px;
	border: 3px solid transparent;
	border-left: 5px solid #FFFFFF;
}
.footerWrap .linkForStoreWrap > a {
	font-size: 10px;
	line-height: 1;
}
.spotCategory .positionSidebar {
	width: 186px;
}
.spotCategory .positionSidebar li {
	width: 180px;
}
.reselectionList > li {
	padding-left: 10px;
	box-sizing: border-box;
}
