.ecalendarHide{
	display:none !important;
}
#ecalendar.SP {
	background: #fff;
	text-align: center;
	box-sizing: content-box;
	font-size: 16px;
}
#ecalendar.SP *{
    box-sizing: content-box;
}
#ecalendar.PC {
	background: #fff;
	position:fixed;
	top:0;
	left:0;
	width: 570px;
	border: 1px solid #ddd;
	border-radius: 5px;
	box-shadow: 1px 1px 10px rgba(0,0,0,0.4);
	text-align: center;
	z-index: 1400;
	margin-top: 15px;
    transition: none !important;
	box-sizing: content-box;
}
.SP #ecalendarHeader {
	width: 100VW;
	position:fixed;
	top:0;
	left:0;
	height:50px;
	background:#5C9BFF;
	display:table;
	color:#fff;
	z-index: 1400;
}
.PC #ecalendarHeader {
	width: 100%;
	top: 0;
	left: 0;
	height: 50px;
	background: #5698FF;
	display: table;
	color: #fff;
	z-index: 400;
/*	border-radius: 5px 5px 0 0;*/
}
.PC #ecalendarMsg {
	width: 100%;
	top: 0;
	left: 0;
	height: 48px;
	background: #5698FF;
	display: table;
	color: #fff;
	z-index: 400;
	border-radius: 5px 5px 0 0;
	text-align: left;
}
.PC #ecalendarMsg div{
	vertical-align: middle;
	font-size: 1.6em;
	font-weight: bold;
/*	margin-top: 8px;*/
    margin-right: 8px;
}
.PC #ecalendarMsg div span{
	vertical-align: middle;
/*	font-size: 1.6em !important;*/
	font-weight: bold !important;
/*	margin-top: 8px;*/
    margin-right: 8px;
}
.PC #ecalendarMsg img{
	vertical-align: text-bottom;
	margin-left: 10px;
	margin-top: 10px;
}
.SP #ecalendarFooter {
	width: 100vw;
	position: fixed;
	bottom: 0;
	left: 0;
	height: 80px;
	background: #5C9BFF;
	/* padding-left: 50%; */
	/* margin-left: -65px; */
	z-index: 1400;
	box-sizing: content-box;
}
.PC #ecalendarFooter {
	*padding-left: 0;
  /* padding-left: 220px; */
	background: #98C0FF;
	clear: both;
	height: 10px;
	border-radius: 0 0 5px 5px;
}
.SP .ecalendarFromTo{
	display:table-cell;
	padding: 5px;
	position: relative;
	text-align: right;
}
.PC .ecalendarFromTo{
	*float:left;
	display:table-cell;
	padding: 5px;
	position: relative;
	*width: 250px;
	text-align: left;
    padding-left: 30px;
    padding-top: 14px;}
.PC .moveArea{
	cursor:pointer;
}
.PC .bottomLeftMoveArea{
	/* float: left; */
	width: 100%;
	height: 11px;
	/* margin-left: -219px; */
	*margin-left: 0 !important;
	*margin-right:10px;
}
.PC .bottomRightMoveArea{
	width: 210px;
	height: 45px;
	display: inline-block;
	margin-left: 2px;
}
.SP .ecalendarFromTo.notSelected{
	color:#5C9BFF;
}
.PC .ecalendarFromTo.notSelected{
	color:#5698FF;
}
.PC #ecalendarToMsg{
	color: #FFFFFF !important;
	position: absolute;
	top: 4px;
	*left:3px;
	font-size: 1.3em;
	font-weight: bold;
	height: 40px;
	width: 255px;
	background: #3A7EEA;
	border-radius: 3px;
	padding-top:2px;
	line-height: 1.1;
	margin-left: -14px;
}
.PC #ecalendarToMsg img{
	vertical-align: middle;
	margin-top: -2px;
	width: 25px;
	margin-left: 20px;
	margin-right: -2px;
}
.PC .dummyTbl{
  width: 100%;
  height: 42px;
  text-align: left;
}
.SP #ecalendarToMsg{
	color: #FFFFFF !important;
	position: absolute;
	top: 4px;
	font-size: 1em;
	font-weight: bold;
	height: 40px;
	width: 95%;
	background: #4686EC;
	border-radius: 3px;
	padding-top: 2px;
	line-height: 1.2;
	margin-right: 3px;
}
.SP #ecalendarToMsg img{
	vertical-align: middle;
	margin-top: -2px;
	width: 25px;
	margin-left: 2px;
	margin-right: -1px;
}
.SP .dummyTbl{
  width: 100%;
  height: 42px;
  text-align: left;
}
.ecalendarFromToTitle{
	text-align:left;
	font-size:0.9em;
	margin-left: 5px;
	vertical-align: middle;
}
.PC .ecalendarFromToTitle{
	display: inline-block;
	margin-right: 10px;
}
.SP #ecalendarFrom ,.SP #ecalendarTo {
	font-size: 17px;
	font-weight: bold;
	width: 127px;
	text-align: center;
}
.SP #ecalendarFrom span ,.SP #ecalendarTo span {
	color: white;
	font-size: 14px;
	font-weight: bold;
	background: #f30000;
	border-radius: 3px;
	padding: 1px 10px 0;
}
.PC #ecalendarFrom ,.PC #ecalendarTo {
	font-size:1.5em;
	font-weight:bold;
	display: inline-block;
	vertical-align: middle;
}
#ecalendarClose {
	cursor: pointer;
	width: 35px;
	text-align: center;
	vertical-align: middle;
}
.PC #ecalendarClose {
	float:right;
}
.leftLine{
	border-left: 1px solid #ccc;
	position: absolute;
	height: 36px;
	width: 12px;
	top: 7px;
	left: 0;
}
#ecalendarClose img {
	vertical-align: middle;
	width: 19px;
	*margin-top: 10px;
	*margin-left: 7px;
}
#ecalendarClose img {
	opacity:0.6;
	filter: alpha(opacity=60);        /* ie lt 8 */
	-ms-filter: "alpha(opacity=60)";  /* ie 8 */
	-moz-opacity:0.6;                 /* FF lt 1.5, Netscape */
	-khtml-opacity: 0.6;              /* Safari 1.x */
	zoom:1;
}

.PC #ecalendarContent{
	white-space: nowrap;
	padding: 2px;
	*display:inline-block;
	*width:2200px;
}
.PC #ecalendarContentLeft, .PC #ecalendarContentRight{
	vertical-align: middle;
	display: table-cell;
	background: #EAF2FF;
	cursor:pointer;
	width: 35px;
	float: left;
	height: 222px;
}
.PC #ecalendarContentLeft img, .PC #ecalendarContentRight img{
	opacity:0.6;
	filter: alpha(opacity=60);        /* ie lt 8 */
	-ms-filter: "alpha(opacity=60)";  /* ie 8 */
	-moz-opacity:0.6;                 /* FF lt 1.5, Netscape */
	-khtml-opacity: 0.6;              /* Safari 1.x */
	zoom:1;
	margin-top: 93px;
}
.SP #ecalendarContentWrapInr{
	padding-right:45px;
	margin-top: 80px;
	margin-bottom: 50px;
	overflow-y: scroll;
	height: 100vh;
}
.PC #ecalendarContentWrapInr{
	width: 498px;
	height: 222px;
	overflow-x: scroll;
	*overflow-y: hidden;
	float: left;
}
#ecalendarContentNavi{
	padding-bottom: 80px;
}
#ecalendarContentNaviWrap{
	position: fixed;
	top: 50px;
	right: 0;
	text-align: right;
	width: 44px;
	background: #D5E5FF;
	border-left: 1px solid #ddd;
	z-index: 400;
    box-sizing: content-box;
    height: calc(100vh - 80px);
	overflow-y: scroll;
}
#ecalendarContent{
	padding-bottom: 120px;
	background: #fafafa;
}
#ecalendarContentNavi .naviBtn{
	height: 21px;
	padding-top: 5px;
	background: #D5E5FF;
	padding-left: 3px;
	width: 30px;
	margin-left: 6px;
	margin-bottom: 12px;
	cursor:pointer;
	box-sizing: content-box;
    font-size: 12px;
}
#ecalendarContentNavi .naviBtn span{
	font-size:0.6em;
	margin-left:1px;
}
#ecalendarContentNavi .naviYear{
	font-size: 11px;
	height: 15px;
	padding-top: 2px;
	background: #C2D9FF;
	margin-top: 6px;
	margin-bottom: 10px;
}
#ecalendarContentNavi .naviYear span{
	font-size:0.9em;
}
.SP #ecalendarContentWrap{
	width: 100vw;
	position: fixed;
	top: 0;
	left: 0;
	background: #fff;
	height: 100vh;
	z-index: 1390;
}
.PC #ecalendarContentWrap{
	top:50px;
	left:0;
	width: 100%;
	height: 202px;
	*height: 223px;
	display: table;
	font-size: 12px;
}
.PC .monthUnit{
	display:inline-block;
	margin-right: 3px;
	border: 1px solid #E4E4E4;
	*width:161px;
	*float:left;
	*height:200px;
	*white-space:nowrap;
}
.ecalendarTblTitle{
	background: #e4e4e4;
	color: #262B9E;
	margin-top: -1px;
	height: 18px;
	padding-top: 0px;
	font-size: 13px;
	border-top: 2px solid #bbb;
	font-weight: bold;
}
.ecalendarTbl{
	display:table;
	width: 100%;
	border-collapse: collapse;
}
.ecalendarTblDay{
	display:table;
	width: 100vw;
	height: 25px;
	border-collapse: collapse;
}
.SP .ecalendarTblDayWrap{
	width: 100vw;
	height: 25px;
	position:fixed;
	top:55px;
	left:0;
	z-index: 400;
}
.SP .ecalendarTblRow{
	display:table-row;
	height: 42px;
}
.PC .ecalendarTblRow{
	display:table-row;
	height: 25px;
}
.SP .ecalendarTblCell{
	font-weight: bold;
	vertical-align: middle;
	border: 1px solid #ddd;
	display:table-cell;
}
.PC .ecalendarTblCell{
	font-weight: bold;
	vertical-align: middle;
	border: 1px solid #ddd;
	display:table-cell;
	width: 23px;
	*width: 21px !important;
	*float: left;
	*height: 23px;
}

.ecalendarTblRow .ecalendarTblCell{
	background:#EAEAEA;
	opacity:0.7;
	filter: alpha(opacity=70);        /* ie lt 8 */
	-ms-filter: "alpha(opacity=70)";  /* ie 8 */
	-moz-opacity:0.7;                 /* FF lt 1.5, Netscape */
	-khtml-opacity: 0.7;              /* Safari 1.x */
	zoom:1;
}
.ecalendarTblCell.avail{
	cursor:pointer;
	background:#fff;
	opacity:1 !important;
	filter: alpha(opacity=100);        /* ie lt 8 */
	-ms-filter: "alpha(opacity=100)";  /* ie 8 */
	-moz-opacity:1;                 /* FF lt 1.5, Netscape */
	-khtml-opacity: 1;              /* Safari 1.x */
	zoom:1;
}
.ecalendarTblCell.avail:hover{
	background:#C9DEFF !important;
}
.ecalendarTbl .notSet{
	*width:23px !important;
	border:none;
	background-color: #F5F5F5;
}
.ecalendarTbl .d0, .ecalendarTblDay .d0, .ecalendarTbl .hol{
	color: #f00;
}
.ecalendarTbl .d6, .ecalendarTblDay .d6{
	color: #00f;
}
.ecalendarTblDay .dummy{
	width:44px;
}
.ecalendarTblDay .dtitle{
	*width:23px !important;
	*height:21px !important;
	height: 10px;
	background: #E7F2FF;
	padding-top: 3px;
	font-size: 0.9em;
	border-left: none;
	border-right: none;
	border-top: none;
}

#ecalendarDecide{
	height: 35px;
	line-height: 35px;
	font-size: 1.4em;
	border: none;
	color: #ffffff;
	font-weight: bold;
	width: 130px;
	border-radius: 5px;
	text-shadow: 0 1px #333333;
	box-shadow: 0 0 4px #cccccc;
	text-shadow: 0 1px #bc611e;
	background: -webkit-gradient(linear, left top, left bottom, from(#f39800), color-stop(60%, #ff7800), to(#ff7800));
	filter: progid:DXImageTransform.Microsoft.gradient(GradientType=0,startcolorstr=#f39800, endcolorstr=#ff7800));
	/* IE8 */
	-ms-filter:"progid:DXImageTransform.Microsoft.gradient(GradientType=0,startcolorstr=#f39800, endcolorstr=#ff7800))";
	zoom: 1;
	background: -moz-linear-gradient(top, #fff, #f39800 1%, #ff7800 50%, #ff7800 99%, #ccc);
	margin: 7px auto;
	cursor:pointer;
/*	margin-left: calc(50vw - 63px);*/
}
.naviBtn,.naviYear{
	padding-right: 5px;*/
}
.naviBtn.disp,.naviYear.disp {
	background: #C8D5EA !important;
}
.ecalendarTblCell.selectedDay{
	background:#fffd00;
}
