.skeduler-container {
  font-family: Helvetica, Arial, sans-serif;
}
.skeduler-container * {
  box-sizing: content-box;
}

/* グループヘッダー（2段目） */
.skeduler-headers-group {
  border-left: 1px solid #921f56;
  display: flex;
  padding-left: 60px;
  position: relative;
}
.skeduler-headers-group:before {
  border-top: 1px solid #921f56;
  content: "";
  width: 60px;
  position: absolute;
  left: 0;
}
.skeduler-headers-group > div {
  height: 40px;
  line-height: 40px;
  background-color: #e8c8d8;
  border-left: 1px solid #921f56;
  border-bottom: 1px solid #921f56;
  border-top: 1px solid #921f56;
  text-align: center;
  font-weight: bold;
  font-size: 14px;
  -webkit-box-sizing: border-box;
     -moz-box-sizing: border-box;
          box-sizing: border-box;
  margin-bottom: -1px;
}
.skeduler-headers-group > div:last-child {
  border-right: 1px solid #921f56;
}
.skeduler-headers-group > div:empty {
  background-color: transparent;
  border-top: none;
  border-bottom: none;
}

/* ヘッダー */
.skeduler-headers {
  border-left: 1px solid #921f56;
  display: flex;
  padding-left: 60px;
  position: relative;
}
.skeduler-headers:before {
  border-top: 1px solid #921f56;
  content: "";
  width: 60px;
  position: absolute;
  left: 0;
}
.skeduler-headers > div {
  flex: 1;
  padding: 13px 0 10px;
  line-height: 1.4;
  background-color: #fef0f7;
  border-left: 1px solid #921f56;
  border-bottom: 1px solid #921f56;
  border-top: 1px solid #921f56;
  text-align: center;
  font-weight: bold;
  display: flex;
  -webkit-align-items: center;
          align-items: center;
  -webkit-justify-content: center;
          justify-content: center;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
}
.skeduler-headers > div small {
  display: block;
  text-align: center;
  font-size: 14px;

}
.skeduler-headers > div small.style2{
  font-size: 12px;
}
.skeduler-headers > div:last-child,
.skeduler-main-body > div > div.skeduler-cell {
  border-right: 1px solid #921f56;
}

/* メイン */
.skeduler-main {
  display: flex;
}

/* タイムライン */
.skeduler-main-timeline {
  margin-top: -1px;
}
.skeduler-main-timeline div {
  width: 50px;
  height: 30px;
  padding-top: 0;
  padding-left: 10px;
  text-align: left;
  color: #333;
  border-right: 1px solid #921f56;
  border-left: 1px solid #921f56;
  display: flex;
  align-items: center;
}
.skeduler-main-timeline div:first-child {
  border-top: 1px solid #921f56;
}

/* タイムラインのラベルサイズ */
.skeduler-time-hour {
  font-size: 12px;
  font-weight: bold;
  color: #333;
}
.skeduler-time-slot {
  font-size: 10px;
  color: #aaa;
}

/* ボディ */
.skeduler-main-body {
  display: flex;
  flex: 1;
}
.skeduler-main-timeline div,
.skeduler-main-body > div > div.skeduler-cell {
  background-color: #FFF;
}
.skeduler-main-timeline div:nth-child(even),
.skeduler-main-body > div > div.skeduler-cell:nth-child(odd) {
  border-top: 1px dotted #921f56;
  border-bottom: 1px solid #921f56;
}

/* グリッドセル */
.skeduler-main-body > div > div.skeduler-cell {
  width: auto;
  height: 30px;
}

/* 列を横幅いっぱいに均等配置 */
.skeduler-main-body > div {
  flex: 1;
}

/* タスクカードのプレースホルダー */
.skeduler-main-body > div > .skeduler-task-placeholder {
  height: 0;
  position: relative;
}

/* タスクカード */
.skeduler-main-body > div > .skeduler-task-placeholder > div {
  position: absolute;
  overflow: hidden;
  background-color: #921f56;
  padding: 6px 10px;
  box-sizing: border-box;
  box-shadow: 0 .125em .25em rgba(0, 0, 0, .25);
  margin-top: 0;
  color: #FFF;
  word-wrap: break-word;
  min-width: 0;
  min-height: 0;
  transition: all .4s;
  -webkit-border-radius: 5px;
          border-radius: 5px;
}

/* カード内のテキスト */
.card-time {
  font-size: 10px;
  line-height: 1;
  color: rgba(255, 255, 255, 0.75);
  margin-bottom: 5px;
}
.card-title {
  font-size: 13px;
  font-weight: bold;
  line-height: 1;
}
.card-note {
  font-size: 10px;
  color: rgba(255, 255, 255, 0.65);
  margin-top: 10px;
  line-height: 1.2;
}

.skeduler-card-short {
  display: flex;
  -webkit-align-items: center;
          align-items: center;
}
.skeduler-card-short .card-time {
  display: inline-block;
  vertical-align: middle;
  margin-right: 10px;
  line-height: 1;
  margin-bottom: 0;
}
.skeduler-card-short:hover .card-time {
  display: block;
}

.card-break {
  background-color: #93838b !important;
}
.card-tour {
  background-color: #c8779e !important;
}
.card-reception {
  background-color: #247581 !important;
}
.card-exc{
  background-color: #166589 !important;
}

.header-day2{
  background-color: #C1E4F4!important;
}

.group-excursion{
  background-color: #5499B9!important;
  color: #fff!important;
}


.card-span {
  border-radius: 0 !important;
  box-shadow: none !important;
  overflow: visible !important;  /* ← 追加 */
}
.card-span-first {
  border-radius: 5px 0 0 5px !important;
}
.card-span-last {
  border-radius: 0 5px 5px 0 !important;
}
.card-span::after {
  content: '';
  position: absolute;
  top: 0;
  right: -8px;
  width: 8px;
  height: 100%;
  background-color: inherit;
  z-index: 1;
}
.card-span-last:after{
  content: none;
}

.card-span:not(.card-span-first) .card-time {
  display: none;
}
.card-span:not(.card-span-first) .card-title {
  display: none;
}