@charset "UTF-8";

/* #### 共通 ####*/
#ribon {
	width: 100%;
	background-image: url("../img/calendar/kake_title.jpg");
	position: relative;
}

.d_td1,
	.d_td2,
	.d_td3,
	.d_td4,
	.d_td5,
	.d_td6,
	.d_td7,
	.d_td8,
	.d_td9,
	.d_td10,
	.d_td11,
	.d_td12,
	.d_td13,
	.d_td14,
	.d_td15,
	.d_td16,
	.d_td17,
	.d_td18,
	.d_td19,
	.d_td20,
	.d_td21,
	.d_td22,
	.d_td23,
	.d_td24,
	.d_td25,
	.d_td26,
	.d_td27,
	.d_td28,
	.d_td29,
	.d_td30,
	.d_td31,
	.d_td32,
	.d_td33,
	.d_td34
	{
	display: table-cell;
	padding: 5px 0;
	border: 1px solid #BDBDBD;
	vertical-align: middle;
	background-color: #EAEAEA;
	border-width:0 1px;
}
.d_th {
	width: 5.2%;
	}
.d_date {
	width: 11.6%;
	background-color: #F9F9F9;
	}
.d_td1 {
	width: 2.6%;
	border: 1px solid #BDBDBD;
}
.d_td2 {
	width: 5.2%;
	border: 1px solid #BDBDBD;
}
.d_td3 {
	width: 7.8%;
	border: 1px solid #BDBDBD;
}
.d_td4 {
	width: 10.4%;
	border: 1px solid #BDBDBD;
}
.d_td5 {
	width: 13%;
	border: 1px solid #BDBDBD;
}
.d_td6 {
	width: 15.6%;
	border: 1px solid #BDBDBD;
}	
.d_td7 {
	width: 18.2%;
	border: 1px solid #BDBDBD;
}
.d_td8 {
	width: 20.8%;
	border: 1px solid #BDBDBD;
}
.d_td9 {
	width: 23.4%;
	border: 1px solid #BDBDBD;
}
.d_td10 {
	width: 26%;
	border: 1px solid #BDBDBD;
}
.d_td11 {
	width: 28.6%;
	border: 1px solid #BDBDBD;
}
.d_td12 {
	width: 31.2%;
	border: 1px solid #BDBDBD;
}
.d_td13 {
	width: 33.8%;
	border: 1px solid #BDBDBD;
}
.d_td14 {
	width: 36.4%;
	border: 1px solid #BDBDBD;
}
.d_td15 {
	width: 39%;
	border: 1px solid #BDBDBD;
}
.d_td16 {
	width: 41.6%;
	border: 1px solid #BDBDBD;
}
.d_td17 {
	width: 44.2%;
	border: 1px solid #BDBDBD;
}
.d_td18 {
	width: 46.8%;
	border: 1px solid #BDBDBD;
}
.d_td19 {
	width: 49.4%;
	border: 1px solid #BDBDBD;
}
.d_td20 {
	width: 52%;
	border: 1px solid #BDBDBD;
}
.d_td21 {
	width: 54.6%;
	border: 1px solid #BDBDBD;
}
.d_td22 {
	width: 57.2%;
	border: 1px solid #BDBDBD;
}
.d_td23 {
	width: 59.8%;
	border: 1px solid #BDBDBD;
}
.d_td24 {
	width: 62.4%;
	border: 1px solid #BDBDBD;
}
.d_td25 {
	width: 65%;
	border: 1px solid #BDBDBD;
}
.d_td26 {
	width: 67.6%;
	border: 1px solid #BDBDBD;
}	
.d_td27 {
	width: 70.2%;
	border: 1px solid #BDBDBD;
}	
.d_td28 {
	width: 72.8%;
	border: 1px solid #BDBDBD;
}	
.d_td29 {
	width: 75.4%;
	border: 1px solid #BDBDBD;
}	
.d_td30 {
	width: 78%;
	border: 1px solid #BDBDBD;
}	
.d_td31 {
	width: 80.6%;
	border: 1px solid #BDBDBD;
}	
.d_td32 {
	width: 83.2%;
	border: 1px solid #BDBDBD;
}	
.d_td33 {
	width: 85.8%;
	border: 1px solid #BDBDBD;
}	
.d_td34 {
	width: 88.4%;
	border: 1px solid #BDBDBD;
}


/* #### width 359px以下の場合の設定 (for SP Only) #### */
@media (max-width: 359px) {
h2.pTitle {
	font-size: 22px;
	top:-40px;
}	
}

/* #### width 360px～500pxの場合の設定 (for SP Wide Only) #### */
@media (min-width: 360px) and (max-width: 500px) {
h2.pTitle {
	font-size: 22px;
	top:-40px;
}


}

/* ## width 501px～767pxの場合の設定 (for Tub Only) ## */
@media (min-width: 501px) and (max-width: 767px) {
h2.pTitle {
	font-size: 24px;
	top:-40px;
}	

	
}

/* #### width 767px 以下の場合の設定 (for All Mobile Dvices) #### */
@media (max-width: 767px) {
/*新しいCSS*/
	
html { 
	scroll-behavior: smooth;
}
.wrapper {
	height: auto;
}
h3.caTitle {
	font-size: 16px;
	border-top: 2px solid #444444;
	padding: 10px;
	margin-bottom: 10px;
	background-color: #F2F2F2;
}
table.pTable {
	width: 100%;
	border-collapse: collapse;
	font-size: 12px;
	margin-bottom: 10px;
}
table.pTable th {
	border: solid 1px #cccccc;
	padding: 10px;
	text-align: center;
	background-color: #E6E4E4;
}
table.pTable td {
	border: solid 1px #cccccc;
	padding: 10px;
	background-color: #F7F7F7;
	text-align: center;
}
p.hosoku {
	font-size: 12px;
}
p.hosoku2 {
	font-size: 12px;
	color: #1F62CE;
	margin-top: 5px 0;
}
.newsArea {
	width: 100%;
	margin: 30px auto;
}
.newsBox {
	width: 100%;
	margin: 0 auto;
	border-bottom: 1px dotted #cccccc;
	padding: 10px 0;		
}
.newsBox a {
	color: #414141;		
}
.newsBox .nDate {
	font-size: 12px;
	margin: 0;
}
.newsBox .News {
	font-size: 12px;
}

#pCalendar{
	overflow: auto; /*スクロールさせる*/
	white-space: nowrap; /*文字の折り返しを禁止*/
}

/* 以下、スクロールバーを追加 */
#pCalendar::-webkit-scrollbar{
 	height: 5px;
}
#pCalendar::-webkit-scrollbar-track{
	background: #333;
}
#pCalendar::-webkit-scrollbar-thumb {
	background: #999;
}

#pCalendar th {
	text-align: center;
}	
.yButton {
	width: 140px;
	background-color: #ED9300;
	text-align: center;
	padding: 8px;
	border-radius: 8px;
	margin: 10px 0;
	float: right;
}
.yButton a {
	color: #ffffff;
}
.yButton a:hover {
	color: #F3CDCE;
}	
ul.atten2 li {
	list-style: decimal;
	margin-left: 35px;
	line-height: 1.6;
}	

/*カレンダー*/	
select  {
	font-size: 18px;
	font-weight: bold;
	padding: 3px 10px;
}	
.d_table {
	min-width: 900px;
	display: table;
	border-collapse: collapse;
	text-align:center;
	margin-bottom: 3px;
	}

.d_caption.calSelect {
	padding: 20px 0;
	background-color: #B8D2B7;
	margin-top: 20px;
}
.d_thead  {
	display:table-header-group;
	background: #D3EFC5;
	font-weight:bold;
	}
.d_tbody {
	display:table-row-group;
	}
.d_foot  {
	display:table-footer-group;
	}
.d_tr {
	display: table-row;
}
/*予定なし*/
.d_th,
	.d_td,
	.d_date  {
	display: table-cell;
	padding: 5px 0;
	border: 1px solid #BDBDBD;
	vertical-align: middle;
}
h2.pTitle {
	font-size: 28px;
	top:-40px;
}	
	

}

/* #### width 768px 以上の場合の設定 (for PC) #### */
@media (min-width: 768px) {

html { 
	scroll-behavior: smooth;
}
.wrapper {
	height: auto;
}
h3.caTitle {
	font-size: 22px;
	border-top: 2px solid #444444;
	padding: 15px;
	margin-bottom: 20px;
	background-color: #F2F2F2;
}
table.pTable {
	width: 100%;
	border-collapse: collapse;
	font-size: 14px;
	margin-bottom: 10px;
}
table.pTable th {
	border: solid 1px #cccccc;
	padding: 10px;
	text-align: center;
	background-color: #E6E4E4;
}
table.pTable td {
	border: solid 1px #cccccc;
	padding: 10px;
	background-color: #F7F7F7;
	text-align: center;
}
p.hosoku {
	font-size: 12px;
}
p.hosoku2 {
	font-size: 12px;
	color: #1F62CE;
	margin-top: 5px 0;
}
.newsArea {
	width: 100%;
	margin: 30px auto;
}
.newsBox {
	width: 80%;
	margin: 0 auto;
	border-bottom: 1px dotted #cccccc;
	padding: 15px 0;		
}
.newsBox a {
	color: #414141;		
}
.newsBox .nDate {
	font-size: 14px;
	margin: 0 10px;
	float: left;
}
.newsBox .News {
	font-size: 16px;
}

#pCalendar {
	overflow-x: auto;
}
#pCalendar th {
	text-align: center;
}	
.yButton {
	width: 200px;
	background-color: #ED9300;
	text-align: center;
	padding: 10px;
	border-radius: 8px;
	margin: 20px 0;
	float: right;
}
.yButton a {
	color: #ffffff;
}
.yButton a:hover {
	color: #F3CDCE;
}	
ul.atten2 li {
	list-style: decimal;
	margin-left: 35px;
	line-height: 1.6;
}	

/*カレンダー*/	
select  {
	font-size: 18px;
	font-weight: bold;
	padding: 3px 10px;
}	
.d_table {
	width:100%;
	display: table;
	border-collapse: collapse;
	text-align:center;
	margin-bottom: 3px;
	}

.d_caption.calSelect {
	padding: 20px 0;
	background-color: #B8D2B7;
	margin-top: 20px;
}
.d_thead  {
	display:table-header-group;
	background: #D3EFC5;
	font-weight:bold;
	}
.d_tbody {
	display:table-row-group;
	}
.d_foot  {
	display:table-footer-group;
	}
.d_tr {
	display: table-row;
}
/*予定なし*/
.d_th,
	.d_td,
	.d_date  {
	display: table-cell;
	padding: 5px 0;
	border: 1px solid #BDBDBD;
	vertical-align: middle;
}
h2.pTitle {
	font-size: 38px;
	top:-80px;
}
}

/* #### width 980px 以上の場合の設定 #### */
@media (min-width: 980px) {
h2.pTitle {
	font-size: 58px;
	top:-90px;
}


}


/* #### width 1200px 以上の場合の設定 #### */
@media (min-width: 1200px) {
h2.pTitle {
	font-size: 58px;
	top:-100px;
}

}