﻿/* =========================================================
   スタッフスケジュール
========================================================= */

.jscAtworkScheduleArea {
  position: relative;
  width: 100%;
  margin: 0 auto;
  padding: 0;
  box-sizing: border-box;
}


/* =========================================================
   タイトル
========================================================= */

.jscAtworkScheduleArea .jscAtworkCalTtl {
  width: 100%;
  box-sizing: border-box;
  background: #fff;
  z-index: 1000;
  display: none !important;
}

.jscAtworkScheduleArea .jscAtworkCalTtl h2 {
  margin: 0;
}


/* =========================================================
   前の2週 / 次の2週
========================================================= */

.jscAtworkScheduleArea .jscAtworkCalNav {
  position: sticky;
  top: 0;
  z-index: 1001;

  display: none;

  align-items: center;
  justify-content: space-between;

  width: 100%;
  padding: 12px 0;

  box-sizing: border-box;

  background: #fff;
}


/* =========================================================
   PC
========================================================= */

@media screen and (min-width: 769px) {

  .jscAtworkScheduleArea .jscAtworkCalNav {
    display: flex;
  }

}


/* =========================================================
   ナビボタン
========================================================= */

.jscAtworkScheduleArea
.jscAtworkCalPrev,
.jscAtworkScheduleArea
.jscAtworkCalNext {
  display: inline-flex;

  align-items: center;
  justify-content: center;

  min-width: 120px;
  min-height: 42px;

  padding: 8px 14px;

  box-sizing: border-box;

  border: 1px solid #ccc;
  border-radius: 6px;

  background: #fff;

  color: #333;

  text-decoration: none;

  font-size: 14px;

  cursor: pointer;
}


/* 無効 */

.jscAtworkScheduleArea
.jscAtworkCalPrev.isDisabled,
.jscAtworkScheduleArea
.jscAtworkCalNext.isDisabled {
  opacity: .35;
  pointer-events: none;
}


/* =========================================================
   カレンダー全体
========================================================= */

.jscAtworkScheduleArea .jscAtworkCalCnt {
  position: relative;

  width: 100%;

  box-sizing: border-box;

  overflow: visible;
}


/* =========================================================
   左：スタッフ
========================================================= */

.jscAtworkScheduleArea .leftSide {
  float: left;

  width: 180px;

  box-sizing: border-box;

  background: #fff;

  z-index: 20;
}


/* スタッフテーブル */

.jscAtworkScheduleArea .leftSide table {
  width: 100%;

  border-collapse: collapse;

  table-layout: fixed;
}


/* スタッフヘッダー */

.jscAtworkScheduleArea .jscStaffColumnHead {
  box-sizing: border-box;

  background: #fff;

  z-index: 1002;
}


/* スタッフ */

.jscAtworkScheduleArea
.leftSide
tbody
tr {
  height: 82px;
}


/* スタッフセル */

.jscAtworkScheduleArea
.leftSide
td {
  box-sizing: border-box;

  height: 82px;

  padding: 8px;

  border-right: 1px solid #ddd;
  border-bottom: 1px solid #ddd;

  background: #fff;

  vertical-align: middle;
}


/* =========================================================
   スタッフ画像
========================================================= */

.jscAtworkScheduleArea
.staffInfoSingleImgWrap {
  width: 52px;

  margin: 0 auto 5px;
}


.jscAtworkScheduleArea
.staffInfoSingleImg {
  width: 52px;
  height: 52px;

  overflow: hidden;

  border-radius: 50%;
}


.jscAtworkScheduleArea
.staffInfoSingleImg img {
  display: block;

  width: 100%;
  height: 100%;

  object-fit: cover;
}


/* =========================================================
   スタッフ名
========================================================= */

.jscAtworkScheduleArea
.staffInfoSingleTxtWrap {
  width: 100%;

  text-align: center;
}


.jscAtworkScheduleArea
.staffInfoSingleName {
  display: block;

  margin: 0;

  font-size: 13px;
  line-height: 1.4;

  font-weight: 600;

  color: #333;

  text-decoration: none;
}


/* リンクを使わない */

.jscAtworkScheduleArea
.staffInfoSingleName a {
  color: inherit;

  text-decoration: none;

  pointer-events: none;
}


/* 職種・歴 */

.jscAtworkScheduleArea
.staffInfoSingleClass,
.jscAtworkScheduleArea
.staffInfoSingleHistory {
  display: none !important;
}


/* =========================================================
   右：カレンダー
========================================================= */

.jscAtworkScheduleArea .rightSide {
  margin-left: 180px;

  width: calc(100% - 180px);

  box-sizing: border-box;
}


/* =========================================================
   カレンダーヘッダー
========================================================= */

.jscAtworkScheduleArea .jscCalHeadWrap {
  position: sticky !important;

  top: 100px !important;

  z-index: 1002;

  width: 100%;

  box-sizing: border-box;

  overflow-x: auto;
  overflow-y: hidden;

  scrollbar-width: none;

  background: #fff;
}


.jscAtworkScheduleArea
.jscCalHeadWrap::-webkit-scrollbar {
  display: none;
}


/* =========================================================
   カレンダー本体
========================================================= */

.jscAtworkScheduleArea .jscCalBody {
  width: 100%;

  box-sizing: border-box;

  overflow-x: auto;
  overflow-y: hidden;

  scrollbar-width: thin;
}


/* =========================================================
   カレンダー table
========================================================= */

.jscAtworkScheduleArea
.jscCalHead table,
.jscAtworkScheduleArea
.jscCalBody table {
  width: 100%;

  min-width: 700px;

  border-collapse: collapse;

  table-layout: fixed;

  margin: 0;
}


/* =========================================================
   日付ヘッダー
========================================================= */

.jscAtworkScheduleArea
.jscCalHead th {
  box-sizing: border-box;

  height: 36px;

  padding: 5px 2px;

  border-right: 1px solid #ddd;
  border-bottom: 1px solid #ddd;

  background: #f7f7f7;

  text-align: center;

  font-size: 12px;
  line-height: 1.3;

  font-weight: 600;

  white-space: nowrap;
}


/* 月 */

.jscAtworkScheduleArea
.jscCalHead .month {
  height: 30px;

  background: #eee;

  font-size: 13px;
}


/* 土曜日 */

.jscAtworkScheduleArea
.jscCalHead .sat {
  background: #f2f6fb;
}


/* 日曜日 */

.jscAtworkScheduleArea
.jscCalHead .sun {
  background: #fbf2f2;
}


/* =========================================================
   スケジュール本体
========================================================= */

.jscAtworkScheduleArea
.jscCalBody td {
  box-sizing: border-box;

  height: 82px;

  padding: 4px 2px;

  border-right: 1px solid #ddd;
  border-bottom: 1px solid #ddd;

  background: #fff;

  text-align: center;

  vertical-align: middle;

  font-size: 12px;
}


/* 土曜日 */

.jscAtworkScheduleArea
.jscCalBody td.sat {
  background: #f8fbff;
}


/* 日曜日 */

.jscAtworkScheduleArea
.jscCalBody td.sun {
  background: #fff8f8;
}


/* 休日 */

.jscAtworkScheduleArea
.jscCalBody td.holiday {
  background: #f7f7f7;
}


/* 休業日 */

.jscAtworkScheduleArea
.jscCalBody td.closed {
  background: #eee;

  color: #777;

  font-weight: 600;
}


/* =========================================================
   「休」表示
========================================================= */

.jscAtworkScheduleArea
.jscCalBody .holiday span {
  display: inline-flex;

  align-items: center;
  justify-content: center;

  min-width: 28px;
  min-height: 28px;

  border-radius: 50%;

  background: #eee;

  font-size: 11px;
}


/* =========================================================
   clearfix
========================================================= */

.jscAtworkScheduleArea
.jscAtworkCalCnt::after {
  content: "";

  display: table;

  clear: both;
}


/* =========================================================
   SP
========================================================= */

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

  /*
  ---------------------------------------------------------
    スケジュール本体
  ---------------------------------------------------------
  */

  .jscAtworkScheduleArea {
    margin-top: 0;
  }


  /*
  ---------------------------------------------------------
    スタッフ欄
  ---------------------------------------------------------
  */

  .jscAtworkScheduleArea .leftSide {
    width: 105px;
  }


  .jscAtworkScheduleArea .rightSide {
    margin-left: 105px;

    width: calc(100% - 105px);
  }


  /*
  ---------------------------------------------------------
    スタッフ
  ---------------------------------------------------------
  */

  .jscAtworkScheduleArea
  .leftSide
  tbody
  tr {
    height: 72px;
  }


  .jscAtworkScheduleArea
  .leftSide
  td {
    height: 72px;

    padding: 5px;
  }


  /*
  ---------------------------------------------------------
    画像
  ---------------------------------------------------------
  */

  .jscAtworkScheduleArea
  .staffInfoSingleImgWrap,
  .jscAtworkScheduleArea
  .staffInfoSingleImg {
    width: 42px;
    height: 42px;
  }


  /*
  ---------------------------------------------------------
    名前
  ---------------------------------------------------------
  */

  .jscAtworkScheduleArea
  .staffInfoSingleName {
    font-size: 11px;
  }


  /*
  ---------------------------------------------------------
    カレンダーヘッダー
  ---------------------------------------------------------
  */

  .jscAtworkScheduleArea .jscCalHeadWrap {
    position: sticky !important;

    top: 0 !important;

    z-index: 1002;

    width: 100%;

    overflow-x: auto;
    overflow-y: hidden;

    -webkit-overflow-scrolling: touch;

    overscroll-behavior-x: contain;

    scrollbar-width: none;

    background: #fff;
  }


  .jscAtworkScheduleArea
  .jscCalHeadWrap::-webkit-scrollbar {
    display: none;
  }


  /*
  ---------------------------------------------------------
    カレンダー本体
  ---------------------------------------------------------
  */

  .jscAtworkScheduleArea .jscCalBody {
    width: 100%;

    overflow-x: auto;
    overflow-y: hidden;

    -webkit-overflow-scrolling: touch;

    overscroll-behavior-x: contain;

    white-space: nowrap;
  }


  /*
  ---------------------------------------------------------
    上部カレンダー
    全期間を横一列
  ---------------------------------------------------------
  */

  .jscAtworkScheduleArea .jscCalHead {
    width: max-content !important;

    margin-left: 0;

    white-space: nowrap;
  }


  /*
  ---------------------------------------------------------
    各2週間table
  ---------------------------------------------------------
  */

  .jscAtworkScheduleArea
  .jscCalHead > table,
  .jscAtworkScheduleArea
  .jscCalBody > table {

    display: inline-table;

    vertical-align: top;

    width: 630px !important;

    min-width: 630px;

    max-width: 630px;

    margin: 0;
  }


  /*
  ---------------------------------------------------------
    日付
  ---------------------------------------------------------
  */

  .jscAtworkScheduleArea
  .jscCalHead th {
    height: 34px;

    font-size: 11px;
  }


  /*
  ---------------------------------------------------------
    本体
  ---------------------------------------------------------
  */

  .jscAtworkScheduleArea
  .jscCalBody td {
    height: 72px;

    font-size: 11px;
  }


  /*
  ---------------------------------------------------------
    ナビ
  ---------------------------------------------------------
  */

  .jscAtworkScheduleArea
  .jscAtworkCalNav {
    display: none;

    gap: 8px;
  }


  .jscAtworkScheduleArea
  .jscAtworkCalPrev,
  .jscAtworkScheduleArea
  .jscAtworkCalNext {
    min-width: 0;

    width: 50%;

    min-height: 40px;

    padding: 7px 8px;

    font-size: 12px;
  }

}