.layui-laydate.kzDesignA {
  width: 100%;
  position: static;
  margin: 0;
  padding: 10px;
  padding-top: 0;
  border: none;
  background-color: #f5f5f5;
  border-radius: 6px;
  box-shadow: unset;
}

.layui-laydate.kzShow {
  opacity: 1 !important;
}

.layui-laydate {
  opacity: 0 !important;
  transition: opacity 1s;
}

.layui-laydate.kzDesignA .layui-laydate-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  height: auto;
  padding: 20px 0;
  align-items: flex-end;
  border: none;
}

.layui-laydate.kzDesignA .layui-laydate-content {
  padding: 0;
  background-color: #fff;
  border-radius: 6px;
}

/* テーブルを固定 */
.layui-laydate.kzDesignA .layui-laydate-content > table {
  width: 100%;
  table-layout: fixed;
  border-collapse: collapse;
}

#layui-laydate1 th {
  text-align: center;
  padding-top: 5px;
  padding-bottom: 5px;
}

.layui-laydate.kzDesignA .layui-laydate-content > table tr {
  display: flex !important;
  padding: 0 10px;
}

#layui-laydate1 td,
#layui-laydate1 th {
  flex: 0 0 calc(100% / 7); /* 7列固定 */
  max-width: calc(100% / 7);
  box-sizing: border-box;
}

/* フォント */
#layui-laydate1 th,
#layui-laydate1 td {
  font-family: "Hiragino Kaku Gothic ProN";
  font-size: 14px;
  font-weight: 600;
  line-height: 160%;
  letter-spacing: 0.5px;
  color: #333;
}

/* 日付セルのレイアウト */
#layui-laydate1 td {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  text-align: center;
  height: 56px;
  box-sizing: border-box;
  padding: 0;
  cursor: pointer;
}

/* 数字 */
#layui-laydate1 td .day-num {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  font-feature-settings: "pnum";
  letter-spacing: 0;
}

/* TEL/休/〇/✖ */
#layui-laydate1 td .day-tell,
#layui-laydate1 td .day-open,
#layui-laydate1 td .day-close {
  display: flex;
  justify-content: center;
  align-items: center;
}

/* ○マーク */
#layui-laydate1 td .day-open {
  position: relative;
  width: 12px;
  height: 12px;
  display: inline-block;
  margin-top: 2px;
  margin-bottom: 8px;
}

#layui-laydate1 td .day-open::after {
  content: "";
  position: absolute;
  inset: 0;
  border: 2px solid #cd554c;
  border-radius: 50%;
  box-sizing: border-box;
}

/* ○ の下線 */
#layui-laydate1 td .day-open::before {
  content: "";
  position: absolute;
  left: 50%;
  width: 10px;
  height: 2px;
  transform: translateX(-50%);
  background: #cd554c;
  top: calc(100% + 2px);
}

/* 土日ラベル */
#layui-laydate1 thead th.sun {
  color: #da1616 !important;
}
#layui-laydate1 thead th.sat {
  color: #177ee5 !important;
}

/* 土日の日付 */
#layui-laydate1 td.sun .day-num {
  color: #da1616 !important;
}
#layui-laydate1 td.sat .day-num {
  color: #177ee5 !important;
}

/* TEL/休/○は土日でも元の色を維持 */
#layui-laydate1 td .day-tell,
#layui-laydate1 td .day-close,
#layui-laydate1 td .day-open {
  color: inherit;
}

/* TEL/休/○の色 */
#layui-laydate1 td .day-tell {
  color: #c83126 !important;
}
#layui-laydate1 td .day-open {
  color: #c83126 !important;
}
#layui-laydate1 td .day-close {
  color: #ccc !important;
}
#layui-laydate1 td .day-ng {
  color: #ccc;
}
#layui-laydate1 td.disabled .day-ng {
  color: inherit !important;
  -webkit-text-fill-color: inherit !important;
}

/* disabled */
#layui-laydate1 td.disabled {
  color: #ccc;
}

#layui-laydate1 td.sat.disabled .day-num,
#layui-laydate1 td.sun.disabled .day-num {
  opacity: 0.3;
}

/* 選択不可能日のカーソル表示🚫 */
.layui-laydate td .disabled,
.layui-laydate .disabled:hover {
  cursor: not-allowed !important;
}

/* 罫線 */
#layui-laydate1 .layui-laydate-content > table > thead > tr {
  border-bottom: 1px solid #e6e6e6;
}

/* 行のドット線 */
#layui-laydate1 .layui-laydate-content > table tr + tr:before {
  content: "";
  position: absolute;
  top: 0;
  left: 20px;
  right: 20px;
  height: 4px;
  background-image: radial-gradient(circle, #555 1px, transparent 1px);
  background-size: 5px 4px;
  background-repeat: repeat-x;
}

/* ヘッダー（年・月・範囲） */
.laydate-set-ym {
  font-family: "Hiragino Kaku Gothic ProN";
  font-size: 14px;
  font-weight: 600;
  color: #333;
  letter-spacing: 0.7px;
}

/* 試乗希望日時： */
.kzPreferredDatetime {
  display: flex;
  align-items: center;
  justify-content: flex-start !important;
  margin: 7px 0;
  padding-left: 22px !important;
  width: calc(100vw - 44px) !important;
  color: #333;
  font-size: 13px;
  font-style: normal;
  font-weight: 600;
  line-height: 140%;
  letter-spacing: 0.65px;
  padding-bottom: 0 !important;
}

.kzPreferredDatetime:has(.kzDatetime:empty) {
  color: #999;
}

.kzPreferredDatetime .kzDatetime {
  margin: 0 0 0 2px;
}

/* 選択された日付のスタイル */
#layui-laydate1 td.active .day-num {
  width: 28px;
  height: 28px;
  line-height: 28px;
  border-radius: 50%;
  background-color: #ff893a;
  color: #fff !important;
  flex-shrink: 0;
}

#layui-laydate1 td.active.sun .day-num,
#layui-laydate1 td.active.sat .day-num {
  color: #fff !important;
}
