@charset "utf-8";
/* CSS Document */

/* ======================================================
	Calendar
------------------------------------------------------ */
.Calendar	{
	text-align: center;
}
.Calendar label	{
	margin: auto;
}

.Calendar ul	{
	text-align: inherit;
	margin-top: 0;
}
.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;
}
.Calendar table	{
	width: 100%;
	table-layout: fixed;
	letter-spacing: normal;
	background-color: rgba(255,255,255,1.0);
	border-spacing: 0px;
	line-height: 1.25em;
}
/*
	border-collapse:collapse;
	background-color: #fff;
*/



.Calendar th,
.Calendar td	{
	padding: 0;
	padding-top: 0.25em;
	padding-bottom: 0.25em;
}
.Calendar .day,
.Calendar th small,
.Calendar td small	{
	font-size: 0.8em;
}
.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
	{
}
.Calendar thead th,
.Calendar thead td,
.Calendar tfoot th,
.Calendar tfoot td	{
}

.Calendar thead th,
.Calendar thead td	{
	font-weight: bold;
}

.Calendar tbody th,
.Calendar tbody td	{
	border-top-width: 1px;
	border-top-color: rgba(0,0,0,0.3);
	border-right-color: rgba(0,0,0,0.3);
}

.Calendar tfoot th,
.Calendar tfoot td	{
}

.Calendar thead tr:last-child th,
.Calendar thead tr:last-child td,
.Calendar .Thead tr:last-child th,
.Calendar .Thead tr:last-child td	{
	border-bottom-width: 1px;
	border-bottom-style: solid;
}


.Calendar th>div,
.Calendar td>div,
.Calendar th>label,
.Calendar td>label	{
	width: 100%;
	position: relative;
}

.Calendar thead th>div,
.Calendar thead td>div,
.Calendar thead th>label,
.Calendar thead td>label	{
	height: 100%;
/*
	border-bottom-width: 1px;
	padding: 0.5em 0;
	margin-bottom: 2px;
*/
}
.Calendar tbody th>div,
.Calendar tbody td>div,
.Calendar tbody th>label,
.Calendar tbody td>label	{
}


/* 空セル */
.Calendar .Blank	{
}
.Calendar .Blank .type	{
}
#Admin .Calendar .Blank .type	{
}


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


#Admin .Calendar table	{
}
#Admin .Calendar th:not(:last-child),
#Admin .Calendar td:not(:last-child)	{
	border-right-width: 1px;
}


.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-left: calc(0em - ((1.2em * 60) - 800px) / 2);
	margin-right: 0;
}
#Admin .CalendarTime tbody th>div,
#Admin .CalendarTime tbody td>div,
#Admin .CalendarTime tbody th>label,
#Admin .CalendarTime tbody td>label	{
}


/* 午前・午後で線を区切る
.BorderDouble	{}
.BorderDouble th,
.BorderDouble td
	{
	border-bottom-style: double;
	border-bottom-width: 3px;
}
*/





/* ------------------------------------------------------
	次・前ボタン
------------------------------------------------------ 
.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;
}
*/




/* ------------------------------------------------------
	曜日・装飾
------------------------------------------------------ */
.Reservation .Calendar .day	{
}

/* sun */
.Calendar th:first-child,
.Calendar td:first-child,
.Calendar .Holiday,
.Calendar td:last-child.Holiday	{
	background-color: rgba(255,243,243,1.0);
	background-color: rgba(255,232,232,0.5);
}
.Calendar th:first-child,
.Calendar td:first-child,
.Calendar .Holiday,
.Calendar .Closed	{
	color: rgba(244,69,108,1.0);
}
.Calendar thead th:first-child,
.Calendar thead td:first-child	{
}
/*
	background-color: rgba(186,57,78,0.5);
	background-color: rgba(218,121,141,1.0);
	background-color: rgba(255,244,244,1.0);
	background-color: rgba(255,233,233,0.5);
*/

/* sat */
.Calendar th:last-child,
.Calendar td:last-child	{
	background-color: rgba(245,250,254,1.0);
	background-color: rgba(235,245,253,0.5);
	color: rgba(124,147,201,1.0);
}
.Calendar thead th:last-child,
.Calendar thead td:last-child	{
}
/*
	background-color: rgba(30,76,151,0.5);
	background-color: rgba(88,139,196,1.0);
	background-color: rgba(245,250,255,1.0);
	background-color: rgba(234,245,255,0.5);
*/

/* ○ */
.Reservation .Calendar .type	{
	color: rgba(32,35,192,1.0);
}
/* × */
.Reservation .Calendar .Off .type	{
	color: rgba(0,0,0,0.354);
}

/*
.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 .BorderDouble	{}
.Calendar .BorderDouble th,
.Calendar .BorderDouble td	{
	border-bittom-width: 2px;
}





/* ------------------------------------------------------
	凡例
------------------------------------------------------ */
.Calendar .type	{
}

.Calendar .Closed .type	{
}

.Calendar .Off,
.Calendar .Off:first-child,
.Calendar .Off:last-child	{
/*
	background-color: rgba(0,0,0,0.09);
*/
}
.Calendar .Off .day	{
}
.Calendar .Off .type	{
/*
	color: rgba(0,0,0,0.4);
*/
}

.Calendar .Past .type	{
}
.Calendar .Ok .type	{
}
.Calendar .Few .type	{
}


.Calendar.CalMark	{
	margin-top: 1em;
	line-height: 2em;
}
.CalMark ul	{
	margin-top: 0;
	margin-bottom: 0;
}
.CalMark li	{
	margin-top: 0;
	margin-bottom: 0;
}
.CalMark li .Mark	{
	display: inline-block;
	vertical-align: top;
	margin-right: 0.5em;
}
.CalMark li .type	{
	line-height: 2em;
	width: 2em;
	height: 2em;
	background-color: rgba(255,255,255,1.0);
}
.CalMark li .Txt	{
	display: inline-block;
	vertical-align: top;
}

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

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

#Admin .Calendar p	{
	letter-spacing: normal;
}



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

.CalMark	{
	padding-bottom: 1em;
	padding-top: 1em;
	margin-bottom: 2em;
	margin-top: 2em;
}
.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;
}
.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);
}
.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	{
}
.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		{
}
*/



/* ======================================================
	スケジュールカレンダー用
------------------------------------------------------ */
.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;
/*
	margin-top: 5px;
	display: block;
	font-size: 0.8em;
*/
}
.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;
}


/* ======================================================
	<script>ミニカレンダー
------------------------------------------------------ */
.ui-datepicker-calendar	{}
.ui-datepicker-calendar th	{
	display: table-cell;
}
.ui-datepicker-calendar td	{
	display: table-cell;
}




/* ======================================================
	.Side
------------------------------------------------------ */
.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>
------------------------------------------------------ */
.Footer .FooterInfoR	{
	font-size: 0.8em;
	text-align: center;
}
.Footer .Calendar	{
	font-size: 0.8em;
}
.Footer .Calendar ul	{
/*	justify-content: flex-start;		横・左*/
/*	justify-content: center;			横・中*/
	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	{
	color: rgba(0,0,0,1.0);
}

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



/* ------------------------------------------------------ */
/* 480px以下 */
/* ------------------------------------------------------ */
@media screen, (max-width:30em), screen, (max-width:182mm) {
/* → small.css */
}
