@charset "utf-8";



.Calendar	{
	text-align: center;
}
.Calendar label	{
	margin: auto;
}
.Calendar td a	{
	display: block;
}

.Calendar .Column>ul>li	{
	margin-top: 0;
}


.Calendar caption	{
	font-size: 1.2em;
	padding: 1em 0;
}
.Calendar .CalendarYYMM	{
	font-size: 1.2em;
}
.Calendar .CalendarYYMM th	{
	padding: 1em 0;
}
.Calendar .CalendarYYMM .Big	{
}
.Side .Calendar	{
	padding-bottom: 0.5em;
	border-width: 0;
}
.Side .Calendar table	{
	margin-left: auto;
	margin-right: auto;
}



.Calendar caption	{
	text-align: center;
}
#Admin .Calendar caption	{
	text-align: center;
	font-size: 1.2em;
}
.Calendar caption>.big	{
	display: block;
	text-align: center;
	line-height: 1;
	margin-bottom: -1em;
}
.Calendar caption>.big:after	{
	content: "";
	display:inline;
}
.Calendar caption>.small	{
}



.Calendar table,
.Calendar th,
.Calendar td	{
	text-align: center;
	border-style: solid;
	border-color: rgba(0,0,0,0.1);

}
.Calendar th.l,
.Calendar td.l	{
	text-align: left;
}
.Calendar th.r,
.Calendar td.r	{
	text-align: right;
}

.Calendar table	{
	width: 100%;
	table-layout: fixed;
	letter-spacing: normal;
	background-color: rgba(255,255,255,1.0);
	border-spacing: 0px;

}

#Admin .Calendar table	{
}


.Calendar th,
.Calendar td	{
	padding: 0;
}
.Calendar th small,
.Calendar td small	{
	font-size: 0.8em;
	position: absolute;
	left: 0.5em;
	top: 0.5em;
}
.Calendar * th,
.Calendar * td	{
}


.Calendar th,
.Calendar td,
.Calendar * th,
.Calendar * td
	{
	border-radius: 0em;
}

.Calendar table label {
	display: block;
}

.Calendar th,
.Calendar td,
.Calendar thead th,
.Calendar thead td,
.Calendar tfoot th,
.Calendar tfoot td
	{
	line-height: 1.05em;
	vertical-align: middle;
	font-weight: normal;
}
.Calendar thead th,
.Calendar thead td,
.Calendar tfoot th,
.Calendar tfoot td	{
}

.Calendar thead th,
.Calendar thead td	{
}

.Calendar tbody th,
.Calendar tbody td	{
	width: auto;
	min-width: initial;
	background-color: transparent;
	font-weight: inherit;
}
.Calendar tbody th	{
	border-right-width: 1px;
}

.Calendar tbody td,
.Calendar tbody td:last-child,
.Calendar tbody:first-child tr:first-child td,
.Calendar thead+tbody tr:first-child td,
.Calendar tbody tr>td:first-child,
.Calendar td[rowspan]
	{
}

.Calendar tfoot th,
.Calendar tfoot td	{
}


.Calendar th>div,
.Calendar td>div,
.Calendar th>label,
.Calendar td>label	{
}

.Calendar thead th>div,
.Calendar thead td>div,
.Calendar thead th>label,
.Calendar thead td>label	{

}
.Calendar tbody th>div,
.Calendar tbody td>div,
.Calendar tbody th>label,
.Calendar tbody td>label,
.Calendar tbody th>a,
.Calendar tbody td>a	{
	padding: 0.5em;
}



.Calendar .kara	{
	border-width: 0;
}


.Calendar table input[type="checkbox"]:not([class]) {
	margin: auto;
}




.CalendarTime thead th,
.CalendarTime thead td,
.CalendarTime tfoot th,
.CalendarTime tfoot td	{
	padding: 0;
}
.CalendarTime tbody th>div,
.CalendarTime tbody td>div,
.CalendarTime tbody th>label,
.CalendarTime tbody td>label	{
}

.CalendarTime th>div,
.CalendarTime td>div,
.CalendarTime th>label,
.CalendarTime td>label	{
}
#Admin .CalendarTime	{
	width: calc(1.2em * 60);
	margin-right: 0;
}
#Admin .CalendarTime tbody th>div,
#Admin .CalendarTime tbody td>div,
#Admin .CalendarTime tbody th>label,
#Admin .CalendarTime tbody td>label	{
}









.Calendar .PrevNext	{
	margin: auto auto 2em;
	width: auto;
}
.Calendar .PrevNext>div,
.Calendar .PrevNext>label	{
	float: none;
	text-align: center;
}

.Calendar .PrevNext .Title	{
	text-align: center;
	font-size: 2em;
	margin-top: 0;
	margin-bottom: 0;
	width: 10em;
	font-weight: bold;
}

.Calendar .PrevNext a	{
	padding: 0;
	width: 2em;
	line-height: 2em;
	text-align: center;
	border-width: 1px;
}
.Calendar .PrevNext .PrevBtn,
.Calendar .PrevNext .NextBtn	{
}
.Calendar .PrevNext div>a	{
	font-size: 1.5em;
	letter-spacing: normal;
	text-align: center;
}
.Calendar .PrevNext .PrevBtn	{
}
.Calendar .PrevNext .NextBtn	{
}

.Calendar .PrevBtn a.ColorBtn,
.Calendar .NextBtn a.ColorBtn
	{
	min-width: initial;
	padding: 0;

}
.Calendar .PrevBtn a:before,
.Calendar .PrevBtn a:after,
.Calendar .NextBtn a:before,
.Calendar .NextBtn a:after	{
	font-family: 'ElegantIcons';
	display: inline-block;
	font-size: 1.2em;
	vertical-align: middle;
	letter-spacing: normal;
}
.Calendar .PrevBtn a:before,
.Calendar thead .PrevBtn a:before,
.Calendar tfoot .PrevBtn a:before
	{
	content: "\38";
	left: -1em;
}
.Calendar .NextBtn a:after,
.Calendar thead .NextBtn a:after,
.Calendar tfoot .NextBtn a:after
	{
	content: "\39";
	right: -1em;
}






.Calendar .read	{
	font-size: 1em;
	font-weight: normal;
}
.CalendarText	{
}

.CalMark	{

}
.CalMark ul	{
	margin: auto;
	list-style: none;
}
.CalMark li	{
	display: inline-block;
	background-color: rgba(255,255,255,1.0);
	padding: 0.5em;
	line-height: 1;
	margin-top: 0;
	margin-bottom: 0;
}
.CalMark li:not(:first-child)	{
	margin-left: 1em;
}
.CalMark li:not(:last-child)	{
	margin-right: 1em;
}

.Footer .CalMark	{
	margin-bottom: 0em;
	margin-top: 0em;
	text-align: right;
}
.Footer .CalMark>ul	{
	text-align: inherit;
}

.Side .CalMark li	{
}

.CalMark img	{ vertical-align: middle; }

.CalMark b,
.CalMark span	{
	display: inline-block;
	vertical-align: middle;
	font-weight: normal;
}
.CalMark span	{
	line-height: 1;
	margin-right: 0.5em;
	width: 1em;
	height: 1em;
}
.CalMark div:before,
.CalMark span:before	{

}

.CalMark .Img		{
}

.CalMark .Mark		{
	width: 1.25em;
	height: 1.25em;
	text-align: center;
	letter-spacing: normal;
	border-width: 1px;
	background-color: rgba(255,255,255,0.5);
	display: inline-block;
	vertical-align: middle;
	line-height: 1;
}
.CalMark .Mark>span		{
	font-size: 0.8em;
}

.CalMark .Title		{
	letter-spacing: normal;
	line-height: 1;
	width: 3em;
	text-align: center;
	padding: 0.25em;
	margin-right: 0.5em;
}
.CalMark .Txt	{
	display: inline-block;
	vertical-align: middle;
}
.CalMark .Title:before,
.CalMark .Title:after,
.CalMark .Txt:before,
.CalMark .Txt:after		{
	content: "";
	display:inline-block;
	vertical-align: middle;
}
.CalMark .Title:before		{
}
.CalMark .Title:after		{
}
.CalMark .Txt:before		{
}
.CalMark .Txt:after		{
}





.Calendar .Sunday,
.Calendar .Sunday .DayHeader	{
	color: rgba(218,52,72,1.0);
}
.Calendar thead .Sunday	{
}
.Calendar tbody .Sunday,
.Calendar tbody .Sunday .DayHeader	{

}
.Calendar .Holiday	{
	background-color: rgba(239,173,181,0.3);
}

.Calendar .Saturday,
.Calendar .Saturday .DayHeader	{
	color: rgba(0,151,224,1.0);
}
.Calendar thead .Saturday	{
}
.Calendar tbody .Saturday,
.Calendar tbody .Saturday .DayHeader	{

}

.Calendar .OffDay,
.Calendar .PastDay,
.Calendar .Closed,
.Calendar .Kaisai	{
	background-color: red;
	background-color: rgba(0,0,0,0.1);
	background-color: rgba(239,173,181,0.3);
}

.Calendar td.Today .Kaisai	{
	background-color: rgba(250,230,233,1.0);
}

.Calendar .PastDay,
.Calendar .Closed	{
}
.Calendar .OffDay .DayNum,
.Calendar .PastDay .DayNum,
.Calendar .Closed .DayNum	{
	opacity: 0.5;
}

#Admin .Calendar .DayNum	{
	letter-spacing: normal;
	display: block;
}





.Calendar .BorderDouble	{}
.Calendar .BorderDouble th,
.Calendar .BorderDouble td	{
	border-bittom-width: 2px;
}




.Calendar .Today	{
	background-color: rgba(255,241,117,1.0);
	background-color: rgba(255,235,59,0.7);
}
.Calendar td.Today>label	{
	padding: 0;
	margin: 0.5em;
}

.Lesson.LessonCalendarTuki .Calendar td.Today a.over:after	{
	background-color: rgba(255,241,117,1.0);
}


.Calendar .First	{
	background-color: rgba(188,223,252,1.0);
	background-color: rgba(33,150,243,0.3);
}

.Lesson.LessonCalendarTuki .Calendar td a.First.over:after,
.Calendar td.Today .First	{
	background-color: rgba(188,223,252,1.0);
}




.Schedule .Calendar caption	{
	display: none;
	width: 0px;
	height: 0px;
	border: none;
	overflow: hidden;
}
.Schedule .Calendar td	{
	text-align: left;
	height: 5em;
	padding-left: 5px;
	padding-right: 5px;
	line-height: inherit;
}
.Schedule .Calendar td b	{
	display: block;
	padding-left: 7px;
}
.Schedule .Calendar td p	{
	text-indent: -1em;
	padding-left: 1em;
	font-weight: normal;

}
.Schedule .Calendar td a:before	{
	display: inline;
	content: "> ";
}



.Calendar .DayHeader	{
	display: table;
	width: calc(100% - 1em);
	width: 100%;
}
.Calendar .DayHeader>p	{
	display: table-cell;
}

.Calendar .Day	{
	text-align: left;
	padding: 0.5em;
	font-weight: bold;
}

.Calendar .Day6you	{
	text-align: right;
	font-size: 0.7em;
	padding: 0.5em;
}






.WeddingCalendar	{}
.WeddingCalendar .Calendar th,
.WeddingCalendar .Calendar td	{
	vertical-align: top;
}
.WeddingCalendar .Calendar table a	{
	display: block;
	text-align: left;
	padding: 0.5em;
	position: relative;
	border-top-width: 1px;
	border-top-style: dotted;
	line-height: 1.5;
}

.WeddingCalendar .Calendar table .CustomerName	{
}
.WeddingCalendar .Calendar table .CustomerName>span	{
}

.WeddingCalendar .Calendar table .NewMark	{
	margin-top: 0;
	position: absolute;
	right: 0.5em;
	top: 0;
	z-index: 5;
}



.ui-datepicker-calendar	{}
.ui-datepicker-calendar th	{
	display: table-cell;
}
.ui-datepicker-calendar td	{
	display: table-cell;
}





.Side .Calendar	{
}
.Side .Calendar table	{
}
.Side .Calendar .Column>ul	{
	margin: 0;
	width: 100%;
}
.Side .Calendar .Column>ul>li	{
	margin: 0;
	width: 100%;
}
.Side .Calendar caption	{
	padding: 0em;
}
.Side .Calendar .CalMark	{
	margin-top: 0.5em;
	margin-right: 0;
	margin-left: 0;
	margin-bottom: 0;
	display: block;
}




.Footer .FooterInfoR	{
	font-size: 0.8em;
	text-align: center;
}
.Footer .Calendar	{
}
.Footer .Calendar ul	{


	justify-content: space-between;
}
.Footer .Calendar ul>li	{
}

.Footer .Calendar ul>li>.Wrap	{
}
.Footer .Calendar ul>li:first-child>.Wrap	{
	padding-right: 0.5em;
}
.Footer .Calendar ul>li:last-child>.Wrap	{
	padding-left: 0.5em;
}


.Footer .Calendar table	{
}

.Footer .Calendar .caption	{
	text-align: center;
}
.Footer .Calendar .caption .Big	{
	display: inline-block;
	vertical-align: baseline;
	font-size: 1.5em;
}






@media screen, (max-width:30em), screen, (max-width:182mm) {

}
