@charset "utf-8";
/*---------------------------------
	CommonCSS [初期化,定義]
---------------------------------*/
body,div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,pre,form,fieldset,input,textarea,p,blockquote,th,td { 
	margin:0;padding:0;
	font-family:"メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif
}
ol,ul {
	list-style:none;
}
img{border:0}
table{
}
/*---------------------------------
	        Base CSS 
---------------------------------*/
a {
	color:#36F;
	text-decoration:none;
}
a:hover {
	color:#039;
	text-decoration:underline;
}
/* clearfix */
.clearfix:after { content:"."; display:block; clear:both; height:0; visibility:hidden; }
.clearfix { display:inline-block; }

/* for macIE \*/
* html .clearfix { height:1%; }
.clearfix { display:block; }


/*土曜の文字色*/
.youbi_6{
	color:#36F!important;
}
/*祝日と日曜の文字色*/
.youbi_0,.shukujitu{
	color:red!important;
}
/*本日の背景色　※ただし設定ファイルでの設定が優先されます*/
.today{
	background:#FF9;	
}
/*休業日設定した日の背景色　※ただし設定ファイルでの設定が優先されます*/
.holiday{
	background:#004ea2;
	color:#fff!important;
}
/*定休日設定した日の背景色　※ただし設定ファイルでの設定が優先されます*/
.closed{
	background:#FDD;	
}
.hidden{
	display:none;	
}
/*休業日テキスト部の左側の四角*/
.holidayCube{
	display:inline-block;
	width:13px;
	height:13px;
	margin:3px 3px 0 3px;
	position:relative;
	top:2px;
}
/*定休日テキスト部の左側の四角*/
.closedCube{
	display:inline-block;
	width:13px;
	height:13px;
	margin:3px 3px 0 3px;
	position:relative;
	top:2px;
}

/*---------------------------------
	 ▼index.php style▼ 
---------------------------------*/
body#index {
	width:100%;
	overflow:hidden;
	background:#fff;
}
body#index {
	box-sizing:border-box;
	padding:0;
}
.calendar-content{
	width:100%;
}
#calendarTable{
	width:100%;
	border:1px solid #777;
	border-collapse:collapse;
	table-layout:fixed;
}
#calendarTable th{
	padding:0;
	border:1px solid #777;
	color:#fff;
	font-size:clamp(11px, 4.8vw, 16px);
	font-weight:bold;
	line-height:1.2;
	text-align:center;
	vertical-align:middle;
	white-space:nowrap;
}
#calendarTable tr:first-child th{
	position:relative;
	height:14vw;
	border-right:0;
	border-left:0;
	background:#316db9;
	font-size:clamp(13px, 5.2vw, 18px);
	overflow:visible;
}
#calendarTable tr:first-child th:first-child,
#calendarTable tr:first-child th:last-child{
	z-index:2;
}
#calendarTable tr:nth-child(2) th{
	height:15vw;
	background:#83bce3;
	color:#fff!important;
}

#calendarTable td {
    position: relative;
    height: 3.2em;
    border: 1px solid #727171;
    font-size: 14px;
    font-weight: bold;
    line-height: 1;
    text-align: center;
    vertical-align: top;
    padding-top: .55em;
    box-sizing: border-box;
}

body#index #calendarTable td.youbi_6{
	color:#1d50a2!important;
}
body#index #calendarTable td.youbi_0,
body#index #calendarTable td.shukujitu{
	color:#e21!important;
}
body#index #calendarTable td.youbi_0,
body#index #calendarTable td.youbi_6,
body#index #calendarTable td.shukujitu{
	background:#fdeff5;
}
body#index #calendarTable td.closed,
body#index #calendarTable td.holiday{
	background:#dff2fc !important;
}
body#index #calendarTable td.holiday{
	background:#004ea2!important;
	color:#fff!important;
}
body#index #calendarTable td.pink-day{
	background:#fadce3!important;
	color:#e21!important;
}
body#index #calendarTable td.today{
	background:#fff7c7!important;
}
body#index #calendarTable td.closed::after,
body#index #calendarTable td.holiday::after{
	display:block;
	position:absolute;
	right:3px;
	bottom:3px;
	left:3px;
	color:#e21;
	font-size:9px;
	font-weight:bold;
	line-height:1;
	white-space:nowrap;
}
body#index #calendarTable td.closed::after{
	content:"定休日";
}
body#index #calendarTable td.holiday::after{
	content:"開催日";
	color:#fff;
}
body#index #calendarTable td.holiday:has(.scheduleComment)::after{
	content:none;
}
body#index #calendarTable .calendar-holiday-name{
	display:block;
	position:absolute;
	right:3px;
	bottom:3px;
	left:3px;
	max-height:2.1em;
	overflow:hidden;
	color:#e21;
	font-size:clamp(8px, 3.2vw, 10px);
	font-weight:bold;
	line-height:1;
	box-sizing:border-box;
}
body#index #calendarTable .calendar-pink-name{
	display:block;
	position:absolute;
	right:3px;
	bottom:3px;
	left:3px;
	max-height:2.1em;
	overflow:hidden;
	color:#e21;
	font-size:9px;
	font-weight:bold;
	line-height:1;
	box-sizing:border-box;
}
body#index #calendarTable .scheduleComment{
	display:block;
	position:absolute;
	right:3px;
	bottom:3px;
	left:3px;
	max-height:2.2em;
	overflow:hidden;
	color:#e21;
	font-size:9px;
	font-weight:bold;
	line-height:1.1;
	text-align:center;
	box-sizing:border-box;
}
body#index #calendarTable td.holiday .scheduleComment{
	color:#fff;
}
body#index #calendarTable .calendar-holiday-name + .scheduleComment{
	bottom:calc(3px + 1.2em);
}
body#index p {
	margin:5px 0 0;
	font-size:clamp(7px, 2.6vw, 11px);
	line-height:1.3;
}
body#index .calendar-notice{
	margin:1em 0 0;
	padding-left:1em;
	color:#e60012;
	font-size:14px;
	line-height:1.5;
	text-align:left;
	text-indent:-1em;
}
body#index .calendarHeader a{
	display:flex;
	position:absolute;
	top:50%;
	z-index:3;
	align-items:center;
	justify-content:center;
	width:clamp(45px, 18vw, 54px);
	height:clamp(20px, 7vw, 24px);
	padding:0;
	border-radius:3px;
	background:#fff;
	color:#75add4;
	font-size:clamp(9px, 3.5vw, 12px);
	line-height:1.2;
	white-space:nowrap;
	box-sizing:border-box;
	transform:translateY(-50%);
}
body#index #calendarTable tr:first-child th:first-child a{
	left:clamp(8px, 3vw, 12px);
}
body#index #calendarTable tr:first-child th:last-child a{
	right:clamp(8px, 3vw, 12px);
}
body#index .calendarHeader a:hover,
body#index .calendarHeader a:focus{
	color:#316db9;
	text-decoration:none;
}
body#index .holidayCube,
body#index .closedCube{
	width:clamp(7px, 3vw, 12px);
	height:clamp(7px, 3vw, 12px);
	margin:0 3px 0 0;
	top:2px;
}
body#index > div:last-of-type{
	margin-top:4px!important;
	font-size:clamp(7px, 2.3vw, 10px)!important;
}

/* if ListStyle */
#calendarList li{
	border-bottom:1px solid #999;
	padding:5px;
}
#calendarList li.first-child{
	border-top:1px solid #999;
}
table.navNextPrev {
	width:100%;
}
table.navNextPrev .dspPrev{
	text-align:left;	
	padding:10px;
}
table.navNextPrev .dspNext{
	text-align:right;
	padding:10px;
}
h2#headerYm{
	background:#666;
	color:#fff;
	text-align:center;
	padding:5px ;
	font-size:110%;
	font-weight:normal;
}

/* /if ListStyle */
/*---------------------------------
	 ▲index.php style▲ 
---------------------------------*/




/*---------------------------------
	 ▼admin.php style▼ 
---------------------------------*/
body#admin p {
	margin:0 0 5px;
	line-height:130%;
	font-size:13px;
}
body#admin #wrapper {
	width:840px;
	border: 1px solid #ccc;
	border-top:0;
	border-bottom:0;
	box-shadow: 0 0px 7px #aaa;
	margin:0 auto;
	color:#666;
	padding:5px 20px;
	position:relative;
}
body#admin h1 {
	font-size:18px;
	color:#333;
	margin:5px 0 15px;
	padding-left:5px;
	border-left:5px solid #333;
	font-weight:normal;
	height:23px;
}
body#admin h2 {
	font-size:14px;
	color:#fff;
	margin-bottom:10px;
	padding-left:5px;
	background:#333;
	padding:5px 8px 3px;
	border-radius:3px;
}
table.calendarClassAdmin{
	width:100%;
	margin:15px 0;
}
table.calendarClassAdmin td{
	padding:8px;
	line-height:160%;
	font-size:16px;
	border:1px solid #ccc;
	text-align:right;
	color:#555;
}
table.calendarClassAdmin th{
	background:#eee;
	padding:5px 10px;
	line-height:160%;
	font-size:14px;
	border:1px solid #ccc;
	width:14%;
}
.adminTextArea{
	margin-top:3px;
	font-size:11px;
}
.adminTextArea textarea{
	font-size:12px;
}

.hidden_text{
	position:absolute;
	top:50px;
	left:27px;
	color:#F00;
	font-weight:bold;
	font-size:14px;
}
body#admin .submitBtn {
	width:240px;
	height:30px;
	cursor:pointer;
}
body#admin form p {
	border-bottom:1px dotted #ccc;
	padding:5px 0;
	margin-bottom:10px;
}
body#admin textarea{
	width:100%;
	padding:2px;
}
body#admin .admin-calendar-check,
body#admin .admin-pink-day label{
	display:inline-block;
	margin-top:3px;
	font-size:12px;
	line-height:1.4;
}
body#admin .admin-pink-day{
	margin-top:4px;
	padding-top:4px;
	border-top:1px dotted #ddd;
	font-size:12px;
	text-align:left;
}
body#admin .admin-pink-day input[type="text"]{
	box-sizing:border-box;
	width:100%;
	margin-top:3px;
	padding:2px;
	font-size:12px;
}
.fc_bbb, .fc_bbb a:link {
	color:#bbb!important
}
.fc_red {
	color:#F00!important
}
.message_com {
	min-height:18px
}
.logout_btn {
	position:absolute;
	right:20px;
	top:10px;
}
.logout_btn a {
	padding:2px 10px;
	border:1px solid #aaa;
	text-decoration:none;
	color:#666;
	font-size:13px;
	border-radius:4px;
}
.logout_btn a:hover {
	background:#eee;
}
/*　AuthPageStyle　*/
body#auth{
	margin-top:15px;	
}
body#auth #login_form{
	width:500px;	
	margin:25px auto;
    border: 1px solid #ccc;
    border-radius: 10px;
    box-shadow: 0 0px 7px #aaa;
    font-weight: normal;
    padding: 16px 16px 20px;
	color:#666;
	line-height:1.3;
	font-size:90%;
}
body#auth form .input {
    font-size: 20px;
    margin:2px 6px 10px 0;
    padding: 3px;
    width: 97%;
}
body#auth input[type="text"], body#auth input[type="password"], body#auth input[type="file"], body#auth input[type="button"], body#auth input[type="submit"], body#auth input[type="reset"] {
    background-color: #FFFFFF;
    border: 1px solid #999;
}
body#auth .button-primary {
    border: 1px solid #000;
    border-radius: 11px;
    cursor: pointer;
    font-size: 18px;
    padding: 3px 10px;
	width:450px;
	height:38px;
}

/*---------------------------------
	 ▲admin.php style▲ 
---------------------------------*/

/*---------------------------------
         class Library
---------------------------------*/
/* Margin・padding class */
.m0{margin:0!important}.mt5{margin-top:5px!important}.mt10{margin-top:10px!important}.mt15{margin-top:15px!important}.mt20{margin-top:20px!important}.mb5{margin-bottom:5px!important}.mb10{margin-bottom:10px!important}.mb15{margin-bottom:15px!important}.mb20{margin-bottom:20px!important}.mr5{margin-right:5px!important}.mr10{margin-right:10px!important}.mr15{margin-right:15px!important}.mr20{margin-right:20px!important}.ml5{margin-left:5px!important}.ml10{margin-left:10px!important}.ml15{margin-left:15px!important}.ml20{margin-left:20px!important}.pt5{padding-top:5px!important}.pt10{padding-top:10px!important}.pt15{padding-top:15px!important}.pb5{padding-bottom:5px!important}.pb10{padding-bottom:10px!important}.pb15{padding-bottom:15px!important}.pr5{padding-right:5px!important}.pr10{padding-right:10px!important}.pr15{padding-right:15px!important}.pl5{padding-left:5px!important}.pl10{padding-left:10px!important}.pl15{padding-left:15px!important}
.pall5{padding:5px!important}.pall10{padding:10px!important}.pall15{padding:15px!important}
/* /Margin・padding class */

.clear {clear:both;}
.taR {text-align:right!important;}
.taL {text-align:left!important;}
.taC {text-align:center!important}
.big {font-size:170%!important;line-height:130%}
/*Font color*/
.bold {font-weight:bold!important;}
.col1 {	color:#FF6600!important;}
.col2 {	color:#FF9933!important}
.col3 {	color:#FF3300!important;}
.col4 {	color:#D9006C!important;}
.col5 {	color:#669999!important}
.col6 {	color:#0000CC!important}
.col7 {	color:#000099!important}
.col8 {	color:#0066FF!important}
.col9 {	color:#333333!important}
.col10 {color:#666666!important}
.col11 {color:#009900!important}
.col12 {color:#009900!important}
.col13 {color:#996633!important}
.col14 {color:#FF66CC!important}
.col15 {color:#669900!important;}
.col16 {color:#00CC99!important;}
.col17 {color:#fff!important;}
.col18{color:#009966!important}
.col19{color:#F00!important}
.floL {float:left;margin-top:0 !important;}
.floR {float:right;margin-top:0 !important;}
.light {font-weight:normal}
.floL img{margin-right:10px;}
.floR img{margin-left:10px;}
.small{font-size:12px!important}
/*---------------------------------
         /class Library
---------------------------------*/
