/* calendar --------------------------------------------*/
:root {
  --webBGC: #ffd2dd;
  --telBGC: #9be0f0;
}


.year-month{
	text-align:center;
}
.year-month b{
	font-weight:bold;
	font-size:110%;
	letter-spacing:0.2em;
	text-align:center;
}
.yoyaku_calendar{
	max-width: 1000px;
	margin: 0.7em auto;
	display:flex;
	flex-wrap:wrap;
	border-top:1px solid #fcc;
	border-bottom:1px solid #fcc;
}
.calendar_box{
		padding: 2.5vw;
		margin: 0vw auto 0;
		max-width:700px;
		width:95vw;
}
.yoyaku_calendar a,
.yoyaku_calendar p{
	width: 14.25%;
	text-align:center;
	border-bottom:4px solid transparent;
	border-right:4px solid transparent;
	padding: 1.5vw  1.5vw;
	margin-bottom:8px
}
.yoyaku_calendar p.yyk_no{
	color:#bbb;
}

.yoyaku_calendar a{
	color:#333;
}
.yoyaku_calendar a.yyk_no{
	color:#aaa;
}
.yoyaku_calendar p span,.yoyaku_calendar p a{
	display: block;
	padding: 0.5vw 0 1.3vw;
	width: calc(5vw + 20px);
}
@media(min-width:1000px){
	.yoyaku_calendar p span,.yoyaku_calendar p a{
		padding: 5px 0 8px;
		width:60px;
	}
}
.yoyaku_calendar p a{
	background: #c53434;
	color:#fff;
	border-radius:5px;
}
.yoyaku_calendar p:nth-child(7n+1){
	width: 14.25%;
}
.yoyaku_calendar p:nth-child(1){
	color:red;
	width: 14.3%;
}
.yoyaku_calendar p:nth-child(7){
	color:#3f70f9;
}

.calendar_nextback {
	display:flex;
}
.calendar_nextback p{
	width:50%;
	padding: 0 25px;
}
.calendar_nextback p:first-child{
	text-align:left;
}
.calendar_nextback p:last-child{
	text-align:right;
}
.calendar_nextback a{
	display:inline-block;
}


/*カレンダー数字の背景マーク*/
.yyk_ok,
.yyk_tel,
.yyk_ari,
.yyk_full {
	position: relative;
	z-index: 1;
}

.yyk_ok::before,
.yyk_tel::before,
.yyk_ari::before,
.yyk_full::before {
	width: 100%;
	position: absolute;
	left: 50%;
	transform: translate(-50%, -50%);
	z-index: -1;
	color: var(--webBGC);
	/* 円の色 */
}
.yyk_tel::before{
	color: var(--telBGC);
}

.yyk_ok::before,
.yyk_tel::before {
	font-size: 280%;
	top: 47%;
	content: "●";
}
.yyk_ari::before{
	font-size:280%;
	top: 45%;
	content: "▲";

}
.yyk_full::before{
	font-size:280%;
	top: 45%;
	content: "×";
}
.yyk_thumb{
	max-width:200px;
}
.yoyaku_time{
	max-width:850px;
	width:90vw;
	margin:30px auto;
	display:flex;
	flex-wrap:wrap;
	background:#fff;
}
.yoyaku_time p{
	width: 50%;
	text-align:center;
	border-bottom:1px solid #ed7895;
	border-right:1px dotted #ffbcd9;
	padding:20px 0;
}
.yoyaku_time p:nth-child(2n+1){
	border-left:1px solid #ed7895;
}
.yoyaku_time p:nth-child(2n){
	border-right:1px solid #ed7895;
}
.yoyaku_time p:nth-child(-n+2){
	border-top:1px solid #ed7895;	
}
.yoyaku_time a{
	background-color:#ed7895;
	color:#fff;
	font-weight:bold;
	font-size :95%;
	padding:5px 30px;
	border-radius:5px;
	box-shadow:1px 2px 3px #ccc
}
.yoyaku_time span{
	background:#eee;
	padding:5px 10px;
	border-radius:5px;
	display:inline-block;
	max-width:9em;
}
.yoyaku_time_hiduke{
	text-align:center;
	font-size:150%;
	letter-spacing:4px;
	font-weight:bold;
}

table.yoyaku{
	width: 95%;
	margin-left: 2.5%;
	border-collapse:collapse;
}
table.yoyaku tr{
	border-bottom: 1px solid #ccc;
	height: 85px;
}

table.yoyaku th{
	/* text-align: left; */
	width:35%;
	color:#666;
	font-size:90%;
}
table.yoyaku th span,table.yoyaku td span{
    color:#f8b;
    font-weight:normal;
}
table.yoyaku td.times_special span{
	color:#555;
	display:
	inline-block;
	margin-bottom:5px;
	width: 48%;
	font-size:110%;
}
.web_yoyaku_color{
	color:var(--webBGC);
}
.tel_yoyaku_color{
	color:var(--telBGC);;
}