@charset "utf-8";

/* head */
.DayPicker_weekHeaders {
	position: relative;
}
.DayPicker_weekHeader{
	width: 100%;
	top: 0;
	padding: 20px 0 5px;
	border-bottom: 1px solid #dbdbdb;
	text-align: center;
}
.DayPicker_weekHeader_ul {
	max-width: 300px;
	margin: 1px auto;
	font-size: 16px;
	text-align: center;
}
.DayPicker_weekHeader_li {
	width: 14.28%;
	display: inline-block;
	text-align: center;
	border: 1px solid #FFF;
	box-sizing: border-box;
}
.DayPicker_focusRegion{
	padding-top: 5px;
}
.DayPicker_transitionContainer{
	max-width: 300px;
	margin: 0 auto;
}
/*
.calendar-popup .cal-head {
	border-radius: 10px;
	border-bottom-left-radius: 0;
	border-bottom-right-radius: 0;
	background-color: #ebebeb;
	padding: 12px 0 0 13px;
	height: 25px;
	font-size: 13px;
	font-weight: bold;
	color: #039;
}
.calendar-popup .cal-head.step0 {
	-webkit-animation: cal-head-step0 0.5s ease 0 4 alternate;
}
@-webkit-keyframes cal-head-step0 {
	0% { background-color:#ebebeb; }
	100% { background-color:#fffc98; }
}
.calendar-popup .cal-head.step1 {
	color: #c00;
	-webkit-animation: cal-head-step1 0.5s ease 0 4 alternate;
}
@-webkit-keyframes cal-head-step1 {
	0% { background-color:#ebebeb; }
	100% { background-color:#fffc98; }
}
*/

/* month */
.calendar-popup {
	background-color: #fff;
}
.calendar-popup .cal-month {
	position:relative;
	background-color: #000;
	z-index:202;
}
.calendar-popup .cal-month .ctrl {
	padding: 10px 0;
	text-align: center;
}
.calendar-popup .cal-month .ctrl .ttl {
	color: #fff;
	font-size: 18px;
	font-weight: normal;
	line-height: 32px;
	vertical-align: top;
	display: inline-block;
	padding: 0 8vw;
}
.calendar-popup .cal-month .ctrl .mp {
	background: url(../img/arrow_l.png) no-repeat 50% 50%;
}
.calendar-popup .cal-month .ctrl .mn {
	background: url(../img/arrow_r.png) no-repeat 50% 50%;
}
.calendar-popup .cal-month .ctrl .mp,
.calendar-popup .cal-month .ctrl .mn {
	height: 30px;
	width: 60px;
	cursor: pointer;
	background-size: 24px 24px;
	display: inline-block;
}
.calendar-popup .cal-month .ctrl .stop {
	opacity: 0;
}
.calendar-popup .cal-month .ctrl .ms {
	display:none;
	position:absolute;
	top:8px;
	right:3px;
	border-radius: 5px;
	padding:6px 12px 0 12px;
	height:18px;
	font-size: 12px;
	font-weight: bold;
	text-align:center;
	cursor:pointer;
	background: linear-gradient(top, #fff, #bfbfbf);
	background: -webkit-linear-gradient(top, #fff, #bfbfbf);
	background-image: -webkit-gradient(linear,center top,center bottom,from(#fff),to(#bfbfbf));
}
.calendar-popup .cal-month .ctrl .ms.sel {
	background: linear-gradient(top, #bfbfbf, #e0e0e0);
	background: -webkit-linear-gradient(top, #bfbfbf, #e0e0e0);
	background-image: -webkit-gradient(linear,center top,center bottom,from(#bfbfbf),to(#e0e0e0));
}

/* index */
.calendar-popup .cal-idx {
	display:table;
	width:100%;
	border-top:solid 1px #BCBCBC;
	border-bottom:solid 1px #BCBCBC;
}
.calendar-popup .cal-idx div {
	display:table-cell;
	width:14%;
	padding-top: 8px;
	height:20px;
	border-left:solid 1px #bcbcbc;
	font-size: 12px;
	font-weight: bold;
	text-align:center;
	background-color:#999;
	color: #fff;
}
.calendar-popup .cal-idx div.sun {
	border-left:none;
	background-color:#fb6969;
}
.calendar-popup .cal-idx div.sat {
	background-color:#7398c7;
}

/* body */
.calendar-popup .cal-body {
	position:relative;
	height:200px;
	overflow:hidden;
	z-index:201;
}

/* footer */
.calendar-popup .cal-foot {
	width: 100%;
	min-height: 32px;
	padding: 15px 0;
	background: #fff;
	border-top: 1px solid #DDD;
	border-bottom: 1px solid #DDD;
	/* box-shadow: 0 0 5px 2px rgba(0,0,0,0.1); */
	z-index:202;
}
.calendar-popup .cal-foot .undo {
	width:20%;
	position:absolute;
	top: 15px;
	left: 15px;
	background-color: #000000;
	color: #fff;
	border-radius: 30px;
	padding: 3vw 2vw;
	font-size: 3vw;
	line-height: 1.2;
	text-align: center;
}
.calendar-popup .cal-foot .confirm {
	width:30%;
	margin:auto;
	background-color: #ffc108;
	border-radius: 30px;
	padding: 3vw 2vw;
	font-size: 3vw;
	line-height: 1.2;
	text-align: center;
}
.calendar-popup .cal-foot .close {
	width:20%;
	position:absolute;
	top: 15px;
	right: 15px;
	background-color: #333;
	color: #fff;
	border-radius: 30px;
	padding: 3vw 2vw;
	font-size: 3vw;
	line-height: 1.2;
	text-align: center;
}

/* slider */
.cal-slide {
	position:absolute;
	z-index:199;
	overflow: hidden;
	min-width: 300%;
	-webkit-transition: -webkit-transform .3s cubic-bezier(0,0,0.25,1);
}
.cal-slide .cal-tbl {
	padding-top: 10px;
	display:table;
	float: left;
}
.cal-slide .cal-row {
	display:table-row;
}
.cal-slide .cal-row div {
	display:table-cell;
	border: 1px solid #FFF;
	vertical-align: middle;
	text-align:center;
	cursor:pointer;
	color: #565a5c;
	font-size: 16px;
	box-sizing: border-box;
}

.cal-slide .cal-row div.step0,.cal-slide .cal-row div.step1,.cal-slide .cal-row div.sat.step0,.cal-slide .cal-row div.sat.step1,.cal-slide .cal-row div.sun.step0,.cal-slide .cal-row div.sun.step1 {
	background-color: #ffc108;
}
.cal-slide .cal-row div.intv,.cal-slide .cal-row div.sat.intv,.cal-slide .cal-row div.sun.intv {
	background-color: #ffeeba;
}

.cal-slide .cal-row div.sat {
	background-color: #b7d5f4;
}
.cal-slide .cal-row div.sun {
	background-color: #ffd8de;
}
.cal-slide .cal-row div.uns {
	color: rgba(0,0,0,0.5);
	opacity: 0.3;
}

/* hide */
body > .calendar-popup,
body > .cal-slide {
	display:none;
}