.hcol00,.hcol01,.hcol02,.hcol03,.hcol04,.hcol05,.hcol06,.colopn,.colsun,.colhol,.colsat,.colhaf,.colchg,.colbl{
vertical-align: middle; 
font-weight:bold;
font-size: 120%;
padding: 0 5px;
color: #02A541;
box-shadow:0.5px 0.5px 1px 1px #02A541 inset;
border: 5px solid #FAFFAC;
}
.hcol00{background: #F1B4AC; color:#DC3A23;}/*日*/
.hcol01{background: #A3E8AD;}/*月*/
.hcol02{background: #A3E8AD;}/*火*/
.hcol03{background: #A3E8AD;}/*水*/
.hcol04{background: #A3E8AD;}/*木*/
.hcol05{background: #A3E8AD;}/*金*/
.hcol06{background: #A3E2E5;color:#1970AF;}/*土*/
.colopn{background: linear-gradient(180deg, #ffffff 0%, #ffffff 50%,#ffffff 50%, #ffffff 100%); }/*平日・通常診療*/
.colsun{background: #FFD2DE; color:#FF8AA9}/*休診*/
.colhol{background: #A3E2E5;}/*変更あり*/
.colsat{background: linear-gradient(180deg, #A3E2E5 0%,#A3E2E5 50%,#A3E2E5 50%, #A3E2E5 100%); }/*午後休診*/
.colchg{background: linear-gradient(180deg, #EFDD3A 0%, #EFDD3A 50%,#EFDD3A 50%, #EFDD3A 100%);}/*変更有*/
.colhaf{background: linear-gradient(180deg, #A3E2E5 0%, #A3E2E5 50%,#FFD2DE 50%, #FFD2DE 100%);}/*午前変更・午後休診*/
.colbl{background: #E7EEAB; color:#031815;}/*空白*/


.cal_admin{
width: 97%;
background: rgba(5,144,88,0.50);
border-radius: 10px;
padding: 10px 0 15px;
}
.top_cal_flex{
display: flex;
flex-direction: row;
}
.cal_inner{

}
.caltable {
padding: 5px 10px 10px 10px;
}
.caltitle2 {
line-height: 1.2;
padding: 5px 0 0 0;
width: 50%;
margin: 0 auto;
} 
.caltable table {
border-collapse: collapse;
text-align: center;
width: 100%;
}
.cal_title {
padding: 10px 0 0 10px;
}
.title_large {
font-size:130%;
color:#02A541;
text-align: center;
font-weight: bold;
padding: 5px 3px 5px 9px;
line-height: 1;
text-decoration: none;
background: #ffffff;
border-bottom-left-radius: 0px;
border-top-left-radius: 8px;
border-bottom-right-radius: 0px;
border-top-right-radius: 8px;
cursor: pointer;
}
.title_large:hover{
background: #C0E8BE;
}
.title_small{
font-size:100%;
color:#02A541;
font-weight: bold;
text-decoration: none;
background: #DDE8E1;
padding: 5px 3px 5px 9px;
border:0.5px solid rgba(84,177,109,1.00);
border-top-left-radius: 8px;
border-bottom-right-radius: 0px;
border-top-right-radius: 8px;
}
.title_small:hover{
font-size:110%;
background: #C0E8BE;
}
/*.title_small::before{
content: "＞";
}*/
.cal_box{
background: rgba(255,255,255,0.50);
width: 95%;
margin: 0 auto 5px;
padding:0 0 3px 0; 
}
.caltitle2 p{
width: 95%;
margin: 5px auto;
font-size: 95%;
font-weight: 600;
line-height: 1.3;
}
.shikaku{
background-color: #ffffff;
border: solid 0.5px #02A541;
color: #02A541;
padding: 3px 20px 3px 5px;
font-weight: bold;
display: inline-block;
border-bottom-right-radius: 8px;
border-top-right-radius: 8px;
}
.shikaku00{
background-color: #FFCACB;
border: solid 0.5px #02A541;
color: #02A541;
padding: 3px 20px 3px 5px;
font-weight: bold;
display: inline-block;
border-bottom-right-radius: 8px;
border-top-right-radius: 8px;
}
.shikaku01{
background: #CBEBEF;
border: solid 0.5px #02A541;
color: #02A541;
padding: 3px 20px 3px 5px;
font-weight: bold;
display: inline-block;
border-bottom-right-radius: 8px;
border-top-right-radius: 8px;
}
.shikaku02{
background-color: #EEAC00;
display: inline-block;
height: 10px;
margin: 0 3px;
position: relative;
top: 0;
width: 18px;
border: solid 0.5px #0AC154;
}
.shikaku03{
background-color: #FBFF5F;
display: inline-block;
height: 10px;
margin: 0 3px;
position: relative;
top: 0;
width: 18px;
border: solid 0.5px #0AC154;
}
.flex_shikaku{
display: flex;
flex-direction: row;
align-items: center;
justify-content: flex-start;
padding: 5px;
flex-wrap: wrap;
font: 95%;
}
.shikaku02{
display: inline-block;
height: 15px;
margin: 0 3px;
position: relative;
top: 0;
width: 18px;
border: solid 0.5px #0AC154;
}
.shi_colopn{background: #ffffff;}/*平日・通常診療*/
.shi_colsun{background: #FFD2DE;}/*休診*/
.shi_colsat{background: linear-gradient(180deg, #A3E2E5 0%,#A3E2E5 50%,#A3E2E5 50%, #A3E2E5 100%); }/*土曜日午後休診*/
.shi_colchg{background: linear-gradient(180deg, #EFDD3A 0%, #EFDD3A 50%,#EFDD3A 50%, #EFDD3A 100%);}/*変更あり*/
@media screen and (max-width: 1200px){
.hcol00,.hcol01,.hcol02,.hcol03,.hcol04,.hcol05,.hcol06,.colopn,.colsun,.colhol,.colsat,.colhaf,.colchg,.colbl{
font-size: 110%;
height: auto;
}
.caltitle2 {
font-size:95%;
padding: 10px 5px 30px 0;
}
}
/*　iPadサイズ　----------------------------------*/

@media screen and (max-width: 998px){
.hcol00,.hcol01,.hcol02,.hcol03,.hcol04,.hcol05,.hcol06,.colopn,.colsun,.colhol,.colsat,.colhaf,.colchg,.colbl{
font-size: 100%;
}
.top_cal_flex{
justify-content: center;
right: 0;
top:0;
flex-direction: column;
}
.caltitle2 {
font-size:90%;
width: 95%;
line-height: 1.2;
padding: 5px 0 0 0;
} 
.cal_admin{
width: 97%;
margin: 0 auto;
padding: 10px 0 5px;
}
.cal_title {
padding: 15px 0 0 10px;
}
.top_cal_flex{
justify-content: center;
right: 0;
top:0;
flex-direction: row;
}
.caltable {
margin: 3px auto;
padding: 0;
width: 90%;
}
.cal_admin{
width: 97%;
padding: 5px 0 10px;
border-radius: 10px;
}
.caltitle2 {
padding: 10px 5px 30px 20px;
font-size:90%;
width: 50%;
}

}
@media screen and (max-width: 520px){
.hcol00,.hcol01,.hcol02,.hcol03,.hcol04,.hcol05,.hcol06,.colopn,.colsun,.colhol,.colsat,.colhaf,.colchg,.colbl{
padding: 5px 0;
font-size: 95%;
box-shadow:0px 0px 1px 1px #54E325 ;
border:5px solid #F7F4D2;
}
.cal_title {
padding: 30px 0 0 20px;
}
.cal_admin{
width: 96%;
padding: 0;
border-radius: 10px;
}
.top_cal_flex{
flex-direction: column;
}
.shikaku,.shikaku00,.shikaku01,.shikaku02,.shikaku03{

}
.caltitle2 {
line-height: 1.2;
padding: 10px 0px;
width: 95%;
margin: auto;
}
}
@media screen and (max-width: 350px){
.caltable {
margin: 2px auto;
padding: 0;
width: 95%;
}
}
