/* PC TAB */
#calendar_wrapper {
    padding: 0 20px;
    box-sizing: border-box;
    width: 1000px;
    margin-left: auto;
    margin-right: auto;
    max-width: 100%;
    font-family: 'Kosugi Maru', sans-serif;
}

.calendar h4 {
    text-align: center;
    font-size: 30px;
    color: #53b053;
    margin-bottom: 10px;
    font-weight: 900;
}

.calendar table {
    width: 100%;
    border-collapse: collapse;
    font-weight: 900;
}	

/* 平日 */
.calendar th {
    background-color: #ffffaa;
    color: #633319;
    padding: 5px;
    border: 1px solid #633319;
    font-size: 25px;
    text-align: center;
}

.calendar td {
    background-color: #fcfcf7;
    border: 1px solid #633319;
    text-align: center;
    width: 14%;
    vertical-align: top;
    height: 140px;
}


.calendar_date {
    color: #633319;
    font-weight: 700;
    font-size: 23px;
}

.calendar p {
    margin: 5px;
}

.calendar img {
    max-width: 100%;
    vertical-align: middle;
}



/* 土曜日 */
.calendar_pc th:nth-child(6) {
    color: blue;
}
/* 日曜日 */
.calendar_pc th:last-child {
    color: #e60012;
}

/* アイコン横並び */
.flex_box {
    display: flex;
    justify-content: space-evenly;
}
.explain{
    margin-top:20px;
}

/* カレンダー下の説明 */
.explain p {
    line-height: 2;
    color: #752a07;
    font-size: 15px;
    margin-bottom: 10px;
}

.explain .small {
    font-size: 15px;
    font-weight: 500;
    line-height: 1.8;
    color: #752a07;
}

.explain img {
    vertical-align: middle;

}

.calendar_menu {
    margin-bottom: 50px;
}

.calendar_mobile table {
    width: 100%;
    border-collapse: collapse;
}

.calendar_mobile {
    display: none;
}



.calendar_menu_mobile {
    display: none;
}

/* ボタン関連 */
.btn_pc {
    display: flex;
    justify-content: space-between;
    margin-bottom: 10px;
}
.btn_pc a:hover{
    opacity: 0.7;
}

/* 前の月ボタン 　例：今が11月とした時、前月である10月のボタンは非表示。
　　　　　　　　　　　次月の12月のボタンを押した時、前月の11月ボタンは表示される。*/
.btn_pre a {
    box-sizing: unset;
    background: #ffffaa;
    border-radius: 10px;
    position: relative;
    margin-right: auto;
    width: 100%;
    display: flex;
    justify-content: space-around;
    align-items: center;
    max-width: 280px;
    padding: 7px 20px;
    color: #633319;
    transition: 0.3s ease-in-out;
    font-weight: 600;
    text-decoration: none;
    border: 2px #633319 solid;
    /* margin-bottom: 10px; */
}




.btn_pre a:after {
    content: "";
    position: absolute;
    top: 50%;
    bottom: 0;
    left: 2rem;
    font-size: 90%;
    display: flex;
    justify-content: center;
    align-items: center;
    transition: right 0.3s;
    width: 9px;
    height: 9px;
    border-top: solid 2px currentColor;
    border-right: solid 2px currentColor;
    transform: translateY(-50%) rotate(-135deg);
    
}
.btn_pre p{
			text-align: start;
			margin-left: 10px;
		}

/* 次の月ボタン 　半年後まで表示可能に*/
.btn_next a {
    box-sizing:unset;
    cursor:pointer;
    background: #ffffaa;
    border-radius: 10px;
    position: relative;
    margin-left: auto;
    right: 45px;
    /* margin-bottom: 10px; */
    width: 100%;
    display: flex;
    justify-content: space-around;
    align-items: center;
    max-width: 280px;
    padding: 7px 20px;
    color: #752a07;
    transition: 0.3s ease-in-out;
    font-weight: 600;
    text-decoration: none;
    border: 2px  #752a07 solid;
}

.btn_next a::after {
    content: "";
    position: absolute;
    top: 50%;
    bottom: 0;
    right: 2rem;
    font-size: 90%;
    display: flex;
    justify-content: center;
    align-items: center;
    transition: right 0.3s;
    width: 9px;
    height: 9px;
    border-top: solid 2px currentColor;
    border-right: solid 2px currentColor;
    transform: translateY(-50%) rotate(45deg);
}
.btn_next p{
			text-align: end;
			margin-right: 10px;
		}
/* 休縁日の設定 */
.yasumi_pc {
    font-size: 25px;
    margin-top: 30px;
    color: #222;
    padding-top: 10px;
}

.calendar_dogrun_map img{
    margin-top: 20px;
    margin-bottom: 20px;
    width: 1000px;
    height: auto;
    max-width: 100%;
  }
  .calendar_dogrun_map{
    margin-top: 50px;
    margin-bottom: 50px;
    /*border-top: 8px dotted #663300;
    border-bottom: 8px dotted #663300;*/
  }
  .calendar_dogrun_map p{
    font-size: 15px;
    font-family: 'M+ Type-1 (general-j) Regular', sans-serif;
    font-weight: 500;
    line-height: 1.7;
    color: #663300;
  }
  .dogrun_red{
    color: #e60012;
    font-size: 130%;
    font-weight: 700;
  }
  .dogrun_green{
    color: #377e39;
  }
  .calendar_menu{
    margin-bottom: 50px;
  }
  .calendar_mobile table{
    display:table;
    width: 100%;
    border-collapse: collapse;
  }
  .calendar_mobile{
    display: none;
  }
  .calendar_menu img, .calendar_menu_mobile img{
   margin-top: 20px;
   margin-bottom: 20px;
   width: 1000px;
   height: auto;
   max-width: 100%;
  }
  .calendar_menu_mobile{
    display: none;
  }
  .today{
    background:#c4f2b4!important
  }

	/* sp用CSS */
    @media screen and (max-width: 415px) {


        .calendar h4 {
            font-size: 25px;
        }

        .explain {
            margin-top: 20px;
        }

        .explain img {
            width: 35px;
        }


        .explain p {
            line-height: 1.8;
            font-size: 13px;
            margin-bottom: 5px;

        }

        .explain .small {
            font-size: 12px;
            line-height: 1.5;
        }

        .calendar p {
            margin: auto 0 auto 0;
        }

        .calendar_pc {
            display: none;
        }

        .calendar_mobile {
            display: contents;
        }

        .calendar_mobile table {
            border-collapse: collapse;
        }

        .calendar_mobile th {
            font-size: 16px;
            width: 32%;
            height: 50px;
            padding: 0 5px;
            box-sizing: border-box;
        }
 
        .calendar_mobile td {
            width: 100%;
            height: 50px;
            display: table-cell;
            justify-content: space-around;
            padding: 0 5px;
            box-sizing: border-box;
            vertical-align: middle;
            border: 1px solid #633319;
  
        }
        .flex_box{
            display:inline-block;
        }
        .calendar_mobile td p{
            display:inline;
        }
     
        .calendar_mobile p:first-child {
            margin-top: auto;
        }

        .calendar_mobile img {
            margin-top: auto;
            margin-right: 3px;
        }


        .calendar_menu {
            display: none;
        }

        .calendar_menu_mobile {
            display: block;
        }

        .calendar_menu_mobile img {
            margin-top: 0;
        }


        /* 月の切り替えボタン */
        .btn_sp {
            display: flex;
            justify-content: space-between;
            margin-top: 10px;
            margin-bottom: 10px;
        }

        /* 前の月ボタン */
        .btn_pre a {
            max-width: 50;
        }
		.btn_pre p{
			text-align: start;
			margin-left: 10px;
		}

        /* 次の月ボタン */
        .btn_next a {
            max-width: 50;
        }
		.btn_next p{
			text-align: end;
			margin-right: 10px;
		}

        /* 休縁日 */
        .yasumi_sp {
            font-size: 20px;
            /* color: #194c35; */
            color: #222222;

        }
        @media screen and (max-width: 350px) {
            .calendar_mobile th {
                width:32%;
                font-size:14px
            }
            .flex_box img{
                width: 29px;
            }
			 .calendar h4 {
            font-size: 20px;
        }
        }
    }