div.cal_wrapper {
	padding: 10px 0px;
}

div.cal_wrapper table.cal tr th p {
	float: left;
	padding: 5px;
	margin: 0px;
	color: #fff;
	font-size: 20px;
}
div.cal_wrapper table.cal tr th div.cal_ui {
	float: right;
}
div.cal_wrapper table.cal tr th div.cal_ui input {
	border: solid 1px #6a543c;
	background-color: #54300f;
    color: #fff;
	font-size: 15px;
	margin: 5px 10px;
	padding: 3px 5px;
	border-radius: 3px;
}
div.cal_wrapper table.cal tr td {
	border-top: solid 1px #6a543c;
}
div.cal_wrapper table.cal tr td {
	font-size: 18px;
	text-align: center;
	padding: 5px
}
div.cal_wrapper table.cal tr.headline td {
	padding: 5px 0px;
	color: #fff;
}
div.cal_wrapper table.cal tr.headline {
	background-color: #211006;
}
div.cal_wrapper table.cal tr td div {
	position: relative;
	padding: 10px 15px;
	font-size: 18px;
	text-align: center;
	background-color: #54300f;
	border-radius: 3px;
}
div.cal_wrapper table.cal tr td div span {
	display: none;
	position: absolute;
	top: 20px;
	left: 0px;
	width: 180px;
	border: solid 1px #6a543c;
	background-color: #211006;
	text-align: left;
	padding: 5px;
	z-index: 10;
	color: #fff;
  	font-size: 15px;
	font-weight: normal;
	line-height: 1.5em;
	box-shadow: 1px 2px 3px #666;
	border-radius: 3px;
}

/* 以下、クラス指定するときのアレ */

div.cal_wrapper table.cal tr td div.Holiday {
	color: #F00;
}
div.cal_wrapper table.cal tr td div.Today {
	font-weight: bolder;
}
div.cal_wrapper table.cal tr td div.Closeday {
	font-weight: bolder;
	color: #090;
	background-color: #ffc0cb;
}
div.cal_wrapper table.cal tr td div.Specialday {
	font-weight: bolder;
	background-color: #a0d8ef;
	color: #090;
	border-radius: 3px;
}

Smart Phone
※ 幅600px以下のデバイスには、下記のスタイルが継承されます。

----------------------------------------- */

@media screen and (max-width: 600px) {

/* --------------------------------------
  共通項目
--------------------------------------- */

div.cal_wrapper {
  width: 100%;  
}