
@charset "UTF-8";

.calendar-wrap {
  background-color: #5f6272;
  color: #333;
  width: 640px;
  margin: auto;
  border: 1px #fff solid;
}

.calendar-wrap .calendar_title{
  width: 100%;
  text-align: center;
  border-bottom: #fff solid 1px;
  color: #fff;
  font-size: 27px;
  padding: 30px 0;
}
.calendar-wrap .calendar_title p.month{
  line-height: 1.2!important;
  font-size: 80px!important;
  margin: 0!important;
  padding: 0 25px!important;
  display: inline-block;
  border-bottom: solid #fff 1px;
}
.calendar-wrap .calendar_title p.title{
  margin: 10px 0 0!important;
  padding: 0!important;
  font-size: 27px!important;
}

.calendar-wrap p.closedDay,
.calendar-wrap p.emergencyDay,
.calendar-wrap p.restaurant_closedDay,
.calendar-wrap p.today{
  color: #fff!important;
  padding: 15px 10px!important;
  margin: 0!important;
  display:inline-block;
}

.calendar-wrap p.closedDay span{
  background-color: #ffdae7!important;
  color: #000;
  padding: 3px 9px;
}

.calendar-wrap p.emergencyDay span{
  background-color: #ff7f7f!important;
  color: #000;
  padding: 3px 9px;
}

.calendar-wrap p.restaurant_closedDay span{
    background-color: yellow!important;
  color: #000;
  padding: 3px 9px;
}

.calendar-wrap p.today span{
    background-color: #80B7DE!important;
  color: #000;
  padding: 3px 9px;
}

.calendar-wrap .calendar_inner ul,
.calendar-wrap .calendar_inner li{
  list-style: none;
}

.calendar-wrap .calendar_inner {
  margin: 0 auto 20px;
  padding: 0;
  display: flex;
  flex-wrap: wrap;
  justify-content: start;
  width: 100%;
  border-top: solid 1px #fff;
}

.calendar-wrap .calendar_inner li {
  width: calc( 100% / 3 );
  padding: 2.5px 7px 10px;
  border-right: solid 1px #fff;
  border-bottom: solid 1px #fff;
}

.calendar-wrap .calendar_inner li:nth-of-type(3),
.calendar-wrap .calendar_inner li:nth-of-type(6),
.calendar-wrap .calendar_inner li:nth-of-type(9),
.calendar-wrap .calendar_inner li:nth-of-type(12){
  border-right: none;
}

.calendar-wrap .calendar_inner .month {
  line-height: 1.2!important;
  font-size: 33px!important;
    padding: 5px 0 0 7px!important;
  margin: 0!important;
  color: #fff;
  position: relative;
}
.calendar-wrap .calendar_inner .month span {
  position: absolute;
  bottom: 2px;
  right: 0;
  font-size: 22px;
  color: #85adb9;
}

.calendar-wrap .calendar_inner .calendar {
  padding: 1px;
  width: 100%;
  table-layout: fixed;
  border-spacing: 1px;
  border-collapse: separate;
}
.calendar-wrap .calendar th {
  text-align: center;
  padding: 5px 0;
  font-size: 11px;
  background-color: #efe9e9;
}

.calendar-wrap .calendar td {
  text-align: center;
  padding: 5px 0;
  background-color: #fff;
  font-weight: bold;
  font-size: 11px;
}

.calendar-wrap .calendar th.sun,
.calendar-wrap .calendar td.sun,
.calendar-wrap .calendar th.mon,
.calendar-wrap .calendar td.mon {
  background-color: #ffdae7!important;
}

.calendar-wrap .calendar td.mon-holiday,
.calendar-wrap .calendar td.sun,
.calendar-wrap .calendar td.week-holiday
 {
  background-color: #ffdae7!important;
  color: #fb2424;
}

.calendar-wrap .calendar td.sat-holiday
 {
  background-color: #dff6f7!important;
  color: #fb2424;
}

.calendar-wrap .calendar th.sat,
.calendar-wrap .calendar td.sat {
  color: blue;
  background-color: #dff6f7!important;
}

.calendar-wrap td.sat-emergency {
  color: blue;
  background-color: yellow!important;
}


.calendar-wrap td.holiday {
  color: #fb2424;
}
.calendar-wrap td.temporary {
  color: #000;
  background-color: #ffdae7!important;
}
.calendar-wrap td.emergency {
  color: #8f8d8d;
  background-color: yellow!important;
}

.calendar-wrap td.holiday-emergency {
  color: #fb2424;
  background-color: yellow!important;
}

.calendar-wrap .calendar td.closed {
  background-color: #ffdae7!important;
}

/*202312add*/
h3#headerom {
    color: #fff;
    text-align: center;
    font-size: 3rem;
    margin-top: 10px;
}

div#calendarom {
    padding: 20px 10px;
}


@media screen and (max-width: 820px){
  /*--241126追記--*/
  .calendar-container{
    padding: 0 20px;
  }
  /*-----*/
  .calendar-wrap{
    width: 90%;
    max-width: 800px;
    min-width: 600px;
  }
  .calendar-wrap .calendar_title p.month{
    font-size: 11vw!important;
  }
.calendar-wrap .calendar_inner li {
    width: calc( 100% / 2 );
}

.calendar-wrap .calendar_inner li:nth-of-type(even){
  border-right: none;
}

.calendar-wrap .calendar_inner li:nth-of-type(3),
.calendar-wrap .calendar_inner li:nth-of-type(9){
  border-right: solid 1px #fff;
}

}

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

  .calendar-wrap{
    min-width: 290px;
    /*--241126 70%から変更--*/
    width: 100%;
  }
  .calendar-wrap .calendar_title p.month{
    font-size: 11vw!important;
  }
  .calendar-wrap .calendar_title p.title{
    font-size: 3vw!important;
  }
  .calendar-wrap .calendar_inner li {
    width: 100%;
    padding: 2.5px 14px 10px;
}

#g-restaurant aside{
  min-width: 280px!important;
  width: 100%!important;
}
}
