@charset "UTF-8";

/*
プラグイン用のCSS
*/
/*-------------------------------------------------------
	Simple Booking Calendar
-------------------------------------------------------*/

:root {

  /* 月 */
  --calendar-month-color: var(--pallet-black);
  --calendar-month-font-size: var(--font-size-32px);
  --calendar-month-font-family: var(--font-family-ja);
  --calendar-month-font-style: var(--font-style-ja);
  --calendar-month-font-weight: var(--font-weight-ja-demibold);

  /* 曜日 */
  --calendar-day-color: inherit;
  --calendar-day-holiday-color: var(--pallet-black);
  --calendar-day-color: var(--pallet-black);
  --calendar-day-font-size: var(--font-size-13px);
  --calendar-day-font-family: var(--font-family-ja);
  --calendar-day-font-style: var(--font-style-ja);
  --calendar-day-font-weight: var(--font-weight-ja-regular);

  /* 日 */
  --calendar-date-color: inherit;
  --calendar-date-font-size: var(--font-size-15px);
  --calendar-date-font-family: var(--font-family-ja);
  --calendar-date-font-style: var(--font-style-ja);
  --calendar-date-font-weight: var(--font-weight-ja-regular);

  /* etc */
  --calendar-outer-frame-color: var(--pallet-gray);
  --calendar-border-color: var(--pallet-gray);
  --calendar-background-color: var(--pallet-white);
}

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

  :root {

    /* 月 */
    --calendar-month-font-size: var(--font-size-21px);

    /* 曜日 */
    --calendar-day-font-size: var(--font-size-11px);

    /* 日 */
    --calendar-date-font-size: var(--font-size-13px);
  }

}

.calendar {
  border: 1px solid var(--calendar-outer-frame-color);
  padding: 30px 25px 10px;
  height: 100%;
}

/* .calendar {
  border: 1px solid var(--calendar-outer-frame-color);
  padding: 30px 25px 10px;
  height: 100%;
  display: flex;
  align-items: center;
  flex-direction: column;
  justify-content: center;
} */

.wpsbc-calendars-wrapper {
  color: var(--calendar-day-color);
}

.wpsbc-calendar {
  margin: 0 auto;
  width: 100% !important;
  /* border: 1px solid var( --calendar-outer-frame-color) !important; */
  border: none !important;
}

/* カレンダー本体のラッパー */

.wpsbc-container[data-columns] .wpsbc-calendars {
  margin-left: unset !important;
  margin-right: unset !important;
}

.wpsbc-container[data-columns] .wpsbc-calendars .wpsbc-calendar {
  float: none !important;
  margin: 0 auto !important;
  /* max-width: 480px !important; */
  max-width: 100% !important;
  /* padding: 30px 30px 15px; */
}

.wpsbc-container .wpsbc-calendars .wpsbc-calendar {
  background-color: var(--calendar-background-color) !important;
}

/* カレンダーの文字色を変更 */
.wpsbc-container .wpsbc-calendars .wpsbc-calendar table th {
  text-align: center;
}

.wpsbc-container .wpsbc-calendars .wpsbc-calendar table td {
  text-align: center;
}

/* カレンダーの月を表示しているヘッダ部分 */
.wpsbc-container .wpsbc-calendars .wpsbc-calendar .wpsbc-calendar-header {
  background-color: transparent !important;
  padding: 0 !important;
  position: relative;
}

/* カレンダーの月送りのヘッダ部分 */
.wpsbc-container
  .wpsbc-calendars
  .wpsbc-calendar
  .wpsbc-calendar-header
  .wpsbc-calendar-header-navigation {
    line-height: 1 !important;
    position: static !important;
    padding: 0 !important;
    display: grid;
    grid-template-columns: 25px 1fr 25px;
    align-items: center;
    width: 100%;
    margin-bottom: 20px;
}

/* カレンダーの月移動の前ボタン */
.wpsbc-container
  .wpsbc-calendars
  .wpsbc-calendar
  .wpsbc-calendar-header
  .wpsbc-calendar-header-navigation
  .wpsbc-prev {
  background-color: transparent !important;
  position: static !important;
  margin-top: 0 !important;
  display: flex;
  justify-content: center;
  align-items: center;
  line-height: 1 !important;
  grid-column: 1 / 2;
}

.wpsbc-container
  .wpsbc-calendars
  .wpsbc-calendar
  .wpsbc-calendar-header
  .wpsbc-calendar-header-navigation
  .wpsbc-prev
  .wpsbc-arrow {
  border-width: 0 !important;
}

.wpsbc-container
  .wpsbc-calendars
  .wpsbc-calendar
  .wpsbc-calendar-header
  .wpsbc-calendar-header-navigation
  .wpsbc-next {
  background-color: transparent !important;
  position: static !important;
  margin-top: 0 !important;
  display: flex;
  justify-content: center;
  align-items: center;
  line-height: 1 !important;
  grid-column: 3 / 4;
}

.wpsbc-container
  .wpsbc-calendars
  .wpsbc-calendar
  .wpsbc-calendar-header
  .wpsbc-calendar-header-navigation
  .wpsbc-next
  .wpsbc-arrow {
  border-width: 0 !important;
}

.wpsbc-container
.wpsbc-calendars
.wpsbc-calendar
.wpsbc-calendar-header
.wpsbc-calendar-header-navigation
.wpsbc-next::after {
  content: '';
  display: inline-block;
  width: 8px;
  height: 14px;
  background-image: url("../images/svg/calendar/calendar_right.svg");
  background-size: contain;
  background-repeat: no-repeat;
  vertical-align: middle;
}

.wpsbc-container
.wpsbc-calendars
.wpsbc-calendar
.wpsbc-calendar-header
.wpsbc-calendar-header-navigation
.wpsbc-prev::after {
  content: '';
  display: inline-block;
  width: 8px;
  height: 14px;
  background-image: url("../images/svg/calendar/calendar_left.svg");
  background-size: contain;
	background-repeat: no-repeat;
  vertical-align: middle;
}

/* カレンダーの月を表示しているヘッダ部分の後ろに画像を追加 */
/* .wpsbc-container
.wpsbc-calendars
.wpsbc-calendar
.wpsbc-calendar-header::after {
    content: '';
    display: inline-block;
    width: 70px;
    height: 16px;
    background-image: url("../images/svg/calendar/close_day.svg");
    background-size: contain;
    background-repeat: no-repeat;
    vertical-align: middle;
    position: absolute;
    top: 50%;
    right: 50px;
    transform: translate(0, -50%);
} */

.wpsbc-container .wpsbc-calendars .wpsbc-calendar-wrapper {
  position: relative;
  padding-inline: 0 !important;
  /* top: -25px;
  margin-bottom: -40px; */
}

/* カレンダー説明部分 */
.wpsbc-legend {
  display: grid;
  border-color: transparent !important;
  margin: 0;
  padding: 8px 0 5px 0;
  max-width: max-content;
  margin-inline: auto;
  padding-right: 35%;
}

.wpsbc-legend-item:first-child {
  display: none;
}

.wpsbc-legend .wpsbc-legend-item {
  margin-bottom: 3px !important;
  margin-left: 6px;
}

/* 説明 */
.wpsbc-legend .wpsbc-legend-item-icon-color {
  width: 18px !important;
  height: 18px !important;
  border-radius: 999px;
  position: absolute;
  top: 50%;
  right: 50%;
  transform: translate(-50%, -50%);
  left: 50%;
}

.wpsbc-legend-item-icon[data-type=single] div:first-of-type {
  top: 50% !important;
  left: 50%  !important;
}

.calendar_note_txt {
  font-size: var(--font-size-13px);
  line-height: 1.2;
  text-align: center;
}

/* カレンダーの該当なし日付の背景を変更 */
.wpsbc-container
  .wpsbc-calendars
  .wpsbc-calendar
  table
  tr
  td
  .wpsbc-date.wpsbc-gap {
  background-color: transparent !important;
}

/* カレンダーの通常の背景を変更 */
.calendar .wpsbc-container.wpsbc-calendar-1 .wpsbc-legend-item-icon-1 div:first-of-type {
  background-color: transparent !important;
}

/* カレンダーの定休日の背景を変更 */
/* .wpsbc-container.wpsbc-calendar-1 .wpsbc-legend-item-icon-2 div:first-of-type,
.wpsbc-container.wpsbc-calendar-1 .wpsbc-legend-item-icon-5 div:first-of-type,
.wpsbc-container.wpsbc-calendar-2 .wpsbc-legend-item-icon-6 div:first-of-type,
.wpsbc-container.wpsbc-calendar-2 .wpsbc-legend-item-icon-color:first-of-type {
  border-radius: 50%;
  width: 26px;
  height: 26px;
  top: 55%;
  left: 50%;
  transform: translate(-50%, -55%);
  right: 50%;
} */

.wpsbc-legend-item-icon-color:first-of-type {
  border-radius: 50%;
  width: 26px;
  height: 26px;
  top: 55%;
  left: 50%;
  transform: translate(-50%, -50%);
  right: 50%;
}

.wpsbc-calendars .wpsbc-legend-item-icon {
  position: absolute;
  z-index: 0;
  top: 50%;
  left: 50%;
  display: inline-block;
  width: 100%;
  height: 100%;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  overflow: hidden;
  width: 26px;
  height: 26px;
  transform: translate(-50%, -50%);
}

/* カレンダーの営業日でも定休日でもない時の背景色を変更 */
.wpsbc-container.wpsbc-calendar-1 .wpsbc-legend-item-icon-3 div:first-of-type {
  background-color: transparent !important;
}

.wpsbc-date-inner {
  height: 35px !important;
  line-height: 35px !important;
}

/* カレンダーの日付のフォントサイズ */
.wpsbc-container
  .wpsbc-calendars
  .wpsbc-calendar
  table
  tr
  td
  .wpsbc-date-inner
  .wpsbc-date-number {
  font-size: var(--calendar-date-font-size) !important;
  font-family: var(--calendar-date-font-family);
  font-style: var(--calendar-date-font-style);
  font-weight: var(--calendar-date-font-weight);
  color: var(--calendar-date-color);
}

/* カレンダーのプルダウンの非表示 */
.wpsbc-calendars-wrapper .wpsbc-select-container select {
  display: none;
}

/* カレンダーのプルダウンの代わりに月の数字を表示する */
.wpsbc-container .wpsbc-select-container::before {
  font-family: var(--calendar-month-font-family);
  font-style: var(--calendar-month-font-style);
  font-weight: var(--calendar-month-font-weight);
  font-size: var(--calendar-month-font-size);
  color: var(--calendar-month-color) !important;
  display: block;
  grid-column: 2 / 3;
}

.wpsbc-container .wpsbc-select-container::after {
  font-size: 18px;
  display: block;
}

.wpsbc-container[data-current_month="1"] .wpsbc-select-container::before {
  content: "1";
}

.wpsbc-container[data-current_month="2"] .wpsbc-select-container::before {
  content: "2";
}

.wpsbc-container[data-current_month="3"] .wpsbc-select-container::before {
  content: "3";
}

.wpsbc-container[data-current_month="4"] .wpsbc-select-container::before {
  content: "4";
}

.wpsbc-container[data-current_month="5"] .wpsbc-select-container::before {
  content: "5";
}

.wpsbc-container[data-current_month="6"] .wpsbc-select-container::before {
  content: "6";
}

.wpsbc-container[data-current_month="7"] .wpsbc-select-container::before {
  content: "7";
}

.wpsbc-container[data-current_month="8"] .wpsbc-select-container::before {
  content: "8";
}

.wpsbc-container[data-current_month="9"] .wpsbc-select-container::before {
  content: "9";
}

.wpsbc-container[data-current_month="10"] .wpsbc-select-container::before {
  content: "10";
}

.wpsbc-container[data-current_month="11"] .wpsbc-select-container::before {
  content: "11";
}

.wpsbc-container[data-current_month="12"] .wpsbc-select-container::before {
  content: "12";
}

/* デフォルトの曜日表記を非表示にして英語表記の曜日に変更 */
/* #main_contents .wpsbc-calendar-wrapper thead {
  border-bottom: 1px solid var(--calendar-border-color) !important;
} */

#main_contents .wpsbc-calendar-wrapper tbody:before {
	content: "";
	height: 1px;
	width: 100%;
	padding: 5px 0;
	display: block;
}

.wpsbc-container .wpsbc-calendars .wpsbc-calendar table tbody {
  border-top: 1px solid var(--calendar-border-color) !important;
}

.wpsbc-calendar-wrapper th {
  font-size: 0 !important;
}

.wpsbc-calendar-wrapper th::after {
  color: var(--calendar-day-color);
  font-size: var(--calendar-day-font-size);
  font-family: var(--calendar-day-font-family);
  font-style: var(--calendar-day-font-style);
  font-weight: var(--calendar-day-font-weight);
}

.wpsbc-calendar-wrapper th:nth-child(1)::after {
  content: "日";
  color: var(--calendar-day-holiday-color);
}

.wpsbc-calendar-wrapper th:nth-child(2)::after {
  content: "月";
}

.wpsbc-calendar-wrapper th:nth-child(3)::after {
  content: "火";
}

.wpsbc-calendar-wrapper th:nth-child(4)::after {
  content: "水";
}

.wpsbc-calendar-wrapper th:nth-child(5)::after {
  content: "木";
}

.wpsbc-calendar-wrapper th:nth-child(6)::after {
  content: "金";
}

.wpsbc-calendar-wrapper th:nth-child(7)::after {
  content: "土";
}

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

  .wpsbc-legend {
    padding-right: 0;
  }

}

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

  /* .wpsbc-calendars-wrapper {
    padding-top: 0;
  }

  .wpsbc-date-inner {
    height: 25px !important;
    line-height: 25px !important;
  }

  .wpsbc-container .wpsbc-select-container::before {
    font-size: var(--calendar-month-font-size);
    display: block;
    position: relative;
  }

  .wpsbc-container .wpsbc-select-container::after {
    font-size: 15px;
    display: block;
  }

  .wpsbc-container
    .wpsbc-calendars
    .wpsbc-calendar
    table
    tr
    td
    .wpsbc-date-inner
    .wpsbc-date-number {
    font-size: 13px !important;
    font-weight: 400;
  }

  .wpsbc-container
    .wpsbc-calendar-1
    .wpsbc-legend-item-icon-1
    div:first-of-type {
    border-radius: 100%;
    width: 20px;
    height: 20px;
    left: 28.5%;
  }

  .wpsbc-container.wpsbc-calendar-1 .wpsbc-legend-item-icon-2 div:first-of-type,
  .wpsbc-container.wpsbc-calendar-2 .wpsbc-legend-item-icon-6 div:first-of-type {
    width: 22px;
    height: 22px;
  }

  .wpsbc-container[data-columns] .wpsbc-calendars {
    margin-left: initial !important;
    margin-right: initial !important;
  }

  .wpsbc-container[data-columns] .wpsbc-calendars .wpsbc-calendar {
    width: 90%;
    padding: 15px;
  }

  .wpsbc-container
    .wpsbc-calendars
    .wpsbc-calendar
    .wpsbc-calendar-header::after {
    top: -44px;
  } */

  .calendar {
    padding: 20px 25px 18px;
  }

  .wpsbc-container
  .wpsbc-calendars
  .wpsbc-calendar
  .wpsbc-calendar-header
  .wpsbc-calendar-header-navigation {
    margin-bottom: 0;
  }

  .calendar_note_txt {
    font-size: var(--font-size-12px) !important; 
  }

  .wpsbc-legend .wpsbc-legend-item-name {
    font-size: var(--font-size-12px);
  }

  .wpsbc-container .wpsbc-calendars .wpsbc-calendar table tr td .wpsbc-date-inner .wpsbc-date-number {
    top: 1px;
  }

}