@charset "Shift-JIS";

@import "./vendor/ress.min.css";

/* Modules
   ========================================================================== */
.parts-modules {
  margin-top: 15px;
  background-color: #fff;
}

.parts-modules > section {
  padding: 20px; 
}

.module-main-title {
  padding: 12px 9px 8px;
}

.module-main-title h1 {
  padding-left: 10px;
  border-left: 4px solid #f68d31;
  font-size: 24px;
}

.module-sub-title {
  position: relative;
  margin-bottom: 15px;
  padding-bottom: 7px;
  border-bottom: 2px solid #d0d0d0
}

.module-sub-title::after {
  position: absolute;
  left: 0;
  bottom: -2px;
  width: 178px;
  height: 2px;
  background-color: #f68d31;
  font-size: 21px;
  content: "";
}

.module-table-title {
  position: relative;
  margin: 10px 0 5px;
  padding-left: 20px;
}

.module-table-title::before {
  display: block;
  position: absolute;
  top: 3px;
  left: 0;
  width: 14px;
  height: 14px;
  background: #000;
  border-radius: 7px;
  content: '';
}

.module-btn1 {
  padding: 5px 10px;
}

.modules-box1 li {
  height: 52px;
}

.modules-box1 {
  width: 795px;
}

.modules-box1::after {
  right: 318px;
}

.modules-box1 > div:first-child {
  width: 467px;
  padding: 9px 16px 16px 9px;  
}

.modules-box1 li label input[type=checkbox] + p::before {
  top: 5px;
}

.modules-box1 li label input[type=checkbox]:checked + p::after {
  top: 19px;
}

.modules-box1 > div:last-child {
  margin: auto;
}

.modules-box2 {
  height: 200px;
}

.modules-box2 div {
  text-align: center;
  line-height: 200px;
}

.modules-table {
  width: 100%;
  border: 1px solid #999;
  border-spacing: 0;
}
  
.modules-table th {
  border-right: 1px solid #999;
  background-color: #eee;
}

.modules-table th,
.modules-table td {
  border-top: 1px solid #999;
  padding: 10px;
}

.modules-table tr:first-child th,
.modules-table tr:first-child td {
  border-top: none;
}

.content-header-down {
  display: inline-block;
  width: 22px;
  height: 22px;
  background: #98a2b0 url(../../approval/images/icon-arrow_img08.png) center center no-repeat;
  background-size: 40% 25%;
  border: solid 1px #494e57;
  border-radius: 3px 0px 0px 3px;
  box-shadow: 2px 2px 3px 0px rgba(0, 0, 0, 0.1);
  cursor: pointer;
}

.content-header-down:hover {
  display: inline-block;
  width: 22px;
  height: 22px;
  background: #7c8490 url(../../approval/images/icon-arrow_img08.png) center center no-repeat;
  background-size: 40% 25%;
  border: solid 1px #494e57;
  border-radius: 3px 0px 0px 3px;
  box-shadow: 2px 2px 3px 0px rgba(0, 0, 0, 0.1);
  cursor: pointer;
}

.content-header-down.select {
  display: inline-block;
  width: 22px;
  height: 22px;
  background: #59606b url(../../approval/images/icon-arrow_img08.png) center center no-repeat;
  background-size: 40% 25%;
  border: solid 1px #494e57;
  border-radius: 3px 0px 0px 3px;
  box-shadow: 2px 2px 3px 0px rgba(0, 0, 0, 0.1) inset;
  cursor: default;
}

.content-header-down.select:hover {
  display: inline-block;
  width: 22px;
  height: 22px;
  background: #59606b url(../../approval/images/icon-arrow_img08.png) center center no-repeat;
  background-size: 40% 25%;
  border: solid 1px #494e57;
  border-radius: 3px 0px 0px 3px;
  box-shadow: 2px 2px 3px 0px rgba(0, 0, 0, 0.1) inset;
  cursor: default;
}

.content-header-up {
  display: inline-block;
  width: 22px;
  height: 22px;
  background: #98a2b0 url(../../approval/images/icon-arrow_img09.png) center center no-repeat;
  background-size: 40% 25%;
  border-top: solid 1px #494e57;
  border-right: solid 1px #494e57;
  border-bottom: solid 1px #494e57;
  border-radius: 0px 3px 3px 0px;
  box-shadow: 2px 2px 3px 0px rgba(0, 0, 0, 0.1);
  cursor: pointer;
}

.content-header-up:hover {
  display: inline-block;
  width: 22px;
  height: 22px;
  background: #7c8490 url(../../approval/images/icon-arrow_img09.png) center center no-repeat;
  background-size: 40% 25%;
  border-top: solid 1px #494e57;
  border-right: solid 1px #494e57;
  border-bottom: solid 1px #494e57;
  border-radius: 0px 3px 3px 0px;
  box-shadow: 2px 2px 3px 0px rgba(0, 0, 0, 0.1);
  cursor: pointer;
}

.content-header-up.select {
  display: inline-block;
  width: 22px;
  height: 22px;
  background: #59606b url(../../approval/images/icon-arrow_img09.png) center center no-repeat;
  background-size: 40% 25%;
  border-top: solid 1px #494e57;
  border-right: solid 1px #494e57;
  border-bottom: solid 1px #494e57;
  border-radius: 0px 3px 3px 0px;
  box-shadow: 2px 2px 3px 0px rgba(0, 0, 0, 0.1) inset;
  cursor: default;
}

.content-header-up.select:hover {
  display: inline-block;
  width: 22px;
  height: 22px;
  background: #59606b url(../../approval/images/icon-arrow_img09.png) center center no-repeat;
  background-size: 40% 25%;
  border-top: solid 1px #494e57;
  border-right: solid 1px #494e57;
  border-bottom: solid 1px #494e57;
  border-radius: 0px 3px 3px 0px;
  box-shadow: 2px 2px 3px 0px rgba(0, 0, 0, 0.1) inset;
  cursor: default;
}

.content-pager-main {
  padding-left: 0px;
  width: 36px;
  height: 36px;
}

.content-pager-prev {
  padding: 0px 0px 0px 10px;
  width: 120px;
  height: 36px;
}

.content-pager-prev:before {
  content: '';
  display: block;
  position: absolute;
  top: 13px;
  left: 14px;
  width: 6px;
  height: 10px;
  background: url(./../../common/images/parts/icon-arrow_img10.png) no-repeat;
  background-size: 6px 10px;
}

.content-pager-next {
  padding: 0px 10px 0px 0px;
  width: 120px;
  height: 36px;
}

.content-pager-next:before {
  content: '';
  display: block;
  position: absolute;
  top: 13px;
  right: 14px;
  width: 6px;
  height: 10px;
  background: url(./../../common/images/parts/icon-arrow_img05.png) no-repeat;
  background-size: 6px 10px;
}

.content-option-once-btn {
  padding-left: 25px;
  width: 140px;
  height: 36px;
  font-size:14px;
}

.content-option-once-btn:before {
  content: '';
  display: block;
  position: absolute;
  top: 11px;
  left: 16px;
  width: 14px;
  height: 10px;
  background: url(../../approval/images/icon-check_img02.png) no-repeat;
  background-size: 100% 100%;
}

.content-option-clear-btn {
  padding-left: 20px;
  width: 90px;
  height: 36px;
  font-size:14px;
}

.content-option-clear-btn:before {
  content: '';
  display: block;
  position: absolute;
  top: 11px;
  left: 14px;
  width: 10px;
  height: 10px;
  background: url(../../approval/images/icon-cancel_img02.png) no-repeat;
  background-size: 100% 100%;
}

.content-option-only-btn {
  padding-left: 25px;
  width: 200px;
  height: 36px;
  font-size:14px;
}

.content-option-only-btn:before {
  content: '';
  display: block;
  position: absolute;
  top: 11px;
  left: 16px;
  width: 14px;
  height: 10px;
  background: url(../../approval/images/icon-check_img02.png) no-repeat;
  background-size: 100% 100%;
}

.content-filter-toggle {
  margin: 4px 0px;
  font-size: 0px;
}

.content-filter-toggle-signal {
  display: inline-block;
  margin-right: 4px;
  width: 14px;
  height: 14px;
  vertical-align: middle;
  background: url(../../approval/images/icon-plus_img01.png) center center no-repeat;
  background-size: 100% 100%;
}

.open.content-filter-toggle-signal {
  display: inline-block;
  margin-right: 4px;
  width: 14px;
  height: 3px;
  vertical-align: middle;
  background: url(../../approval/images/icon-minus_img01.png) center center no-repeat;
  background-size: 100% 100%;
}

.content-filter-toggle-label {
  display: inline-block;
  vertical-align: middle;
  font-size: 14px;
}

.content-work-prev {
  position: relative;
  margin-right: 10px;
  width: 27px;
  height: 27px;
}

.content-work-prev:before {
  content: "";
  position: absolute;
  z-index: 1;
  margin: auto;
  top: 0px;
  bottom: 0px;
  left: 0px;
  right: 0px;
  width: 6px;
  height: 10px;
  background: url(../../approval/images/icon-arrow_img03.png) no-repeat;
  background-size: 100% 100%;
}

.content-work-next {
  position: relative;
  margin-left: 4px;
  margin-right: 16px;
  width: 27px;
  height: 27px;
}

.content-work-next:before {
  content: "";
  position: absolute;
  z-index: 1;
  margin: auto;
  top: 0px;
  bottom: 0px;
  left: 0px;
  right: 0px;
  width: 6px;
  height: 10px;
  background: url(../../approval/images/icon-arrow_img04.png) no-repeat;
  background-size: 100% 100%;
}

.content-head-sub {
  display: flex;
  align-items: center;
}

.content-head-calendar {
  padding-left: 25px;
  width: 160px;
  height: 36px;
  font-size: 14px;
  border-radius: 3px 0px 0px 3px;
}

.content-head-calendar:before {
  content: '';
  display: block;
  position: absolute;
  top: 9px;
  left: 12px;
  width: 17px;
  height: 15px;
  background: url(../../approval/images/icon-calendar_img01.png) no-repeat;
  background-size: 100% 100%;
}

.content-head-list {
  padding-left: 25px;
  width: 130px;
  height: 36px;
  font-size: 14px;
  border-left: none;
  border-radius: 0px 3px 3px 0px;
}

.content-head-list:before {
  content: '';
  display: block;
  position: absolute;
  top: 11px;
  left: 12px;
  width: 17px;
  height: 12px;
  background: url(../../approval/images/icon-list_img01.png) no-repeat;
  background-size: 100% 100%;
}

.content-head-link {
  display: flex;
  align-items: center;
  margin-right: 20px;
}

.content-head-link-icon {
  margin-right: 8px;
  width: 14px;
  height: 14px;
  background: url(../../approval/images/icon-arrow_img10.png) no-repeat;
  background-size: 100% 100%;
}

.content-head-link-label {
  font-size: 14px;
}

.content-work-extra {
  display: flex;
}

.content-work-show {
  width: 14px;
  height: 16px;
  background: url(../../approval/images/icon-schedule_img01.png) no-repeat;
  background-size: 100% 100%;
}

.content-work-link {
  margin-left: 8px;
  font-size: 14px;
}

.content-calendar {
  overflow: hidden;
  width:835px;
}

.content-calendar-head {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 30px;
  background: #7c8490;
}

.content-calendar-week {
  flex: 1 1 auto;
  text-align: center;
  font-size: 14px;
  color: #fff;
}

.content-calendar-body {
  display: flex;
  align-items: flex-start;
  justify-content: flex-start;
  flex-wrap: wrap;
  width: 837px;
}

.content-calendar-day {
  padding: 0px 4px 0px 8px;
  width: 14.285714%;
  border-right: solid 1px #adadad;
  border-bottom: solid 1px #adadad;
}

.content-calendar-day.disable {
  background: url(../../approval/images/bg_img01.png) repeat;
  cursor: pointer;
}

.content-calendar-day.disable:hover {
  background: url(../../approval/images/bg_img02.png) repeat;
}

.content-calendar-day.active {
  background: url(../../approval/images/bg_img03.png) repeat;
  cursor: pointer;
}

.content-calendar-day.active:hover {
  background: url(../../approval/images/bg_img04.png) repeat;
}

.content-calendar-day.default {
  cursor: pointer;
}

.content-calendar-day.default:hover {
  background: url(../../approval/images/bg_img06.png) repeat;
}

.content-calendar-date {
  display: flex;
  align-items: center;
  height: 1.8em;
}

.content-calendar-check + p {
  position: relative;
  left: -10px;
  width: 18px !important;
}

.content-calendar-label {
  position: relative;
  top: 2px;
  flex: 1 1 auto;
  text-decoration: underline;
  font-size: 17px;
}

.content-calendar-label.sat {
  color: #1379c7;
}

.content-calendar-label.sun {
  color: #e2143b;
}

.content-calendar-card {
  padding: 2px 6px 0px 6px;
  font-size: 12px;
  border: solid 1px #adadad;
}

.content-calendar-interval {
  height: 1.5em;
  font-size: 14px;
}

.content-calendar-minute {
  height: 1.5em;
  font-size: 12px;
}

.content-calendar-signal {
  height: 1.5em;
}

.content-calendar-icon {
  margin-right: 2px;
}

.content-calendar-icon.left {
  float: left;
}

.content-calendar-icon.right {
  float: right;
}

.content-calendar-icon.yen {
  width: 17px;
  height: 17px;
  background: url(../../approval/images/icon-money_img02.png) top right no-repeat;
  background-size: 100% 100%;
}

.content-calendar-icon.yen.disable {
  width: 17px;
  height: 17px;
  background: url(../../approval/images/icon-money_img01.png) top right no-repeat;
  background-size: 100% 100%;
}

.content-calendar-icon.edit {
  width: 17px;
  height: 17px;
  background: url(../../approval/images/icon-pencil_img02.png) top right no-repeat;
  background-size: 100% 100%;
}

.content-calendar-icon.edit.disable {
  width: 17px;
  height: 17px;
  background: url(../../approval/images/icon-pencil_img01.png) top right no-repeat;
  background-size: 100% 100%;
}

.content-calendar-icon.lock {
  width: 20px;
  height: 20px;
  background: url(../../approval/images/icon-lock_img01.png) top right no-repeat;
  background-size: 100% 100%;
}

.content-calendar-icon.check {
  width: 17px;
  height: 17px;
  background: url(../../approval/images/icon-check_img01.png) top right no-repeat;
  background-size: 100% 100%;
}

.content-calendar-icon.warn {
  width: 17px;
  height: 17px;
  background: url(../../approval/images/icon-uncheck_img01.png) top right no-repeat;
  background-size: 100% 100%;
}

.content-calendar-icon.still {
  width: 17px;
  height: 17px;
  background: url(../../approval/images/icon-unrequest_img01.png) top right no-repeat;
  background-size: 100% 100%;
}

.content-header {
  display: flex;
  width: 836px;
  background-color: #7c8490;
}

.content-header-column {
  padding: 0px 4px;
  height: 70px;
  border-right: solid 1px #8e96a1;
}

.column-xsmall {
  width: 40px;
}

.column-small {
  width: 55px;
}

.column-normal {
  width: 70px;
}

.column-large {
  width: 100px;
}

.column-flex {
  flex: 1 1 auto;
}

.content-header-title {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  height: 40px;
}

.content-header-label {
  font-size: 14px;
  color: #fff;
  text-align: center;
}

.content-header-label.bold {
  font-weight: bold;
}

.content-header-sort {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 30px;
}

.content-header-down {
  display: inline-block;
  width: 22px;
  height: 22px;
  background: #98a2b0 url(../../approval/images/icon-arrow_img08.png) center center no-repeat;
  background-size: 40% 25%;
  border: solid 1px #494e57;
  border-radius: 3px 0px 0px 3px;
  box-shadow: 2px 2px 3px 0px rgba(0, 0, 0, 0.1);
  cursor: pointer;
}

.content-header-down.select {
  display: inline-block;
  width: 22px;
  height: 22px;
  background: #59606b url(../../approval/images/icon-arrow_img08.png) center center no-repeat;
  background-size: 40% 25%;
  border: solid 1px #494e57;
  border-radius: 3px 0px 0px 3px;
  box-shadow: 2px 2px 3px 0px rgba(0, 0, 0, 0.1) inset;
  cursor: default;
}

.content-header-up {
  display: inline-block;
  width: 22px;
  height: 22px;
  background: #98a2b0 url(../../approval/images/icon-arrow_img09.png) center center no-repeat;
  background-size: 40% 25%;
  border-top: solid 1px #494e57;
  border-right: solid 1px #494e57;
  border-bottom: solid 1px #494e57;
  border-radius: 0px 3px 3px 0px;
  box-shadow: 2px 2px 3px 0px rgba(0, 0, 0, 0.1);
  cursor: pointer;
}

.content-header-up.select {
  display: inline-block;
  width: 22px;
  height: 22px;
  background: #59606b url(../../approval/images/icon-arrow_img09.png) center center no-repeat;
  background-size: 40% 25%;
  border-top: solid 1px #494e57;
  border-right: solid 1px #494e57;
  border-bottom: solid 1px #494e57;
  border-radius: 0px 3px 3px 0px;
  box-shadow: 2px 2px 3px 0px rgba(0, 0, 0, 0.1) inset;
  cursor: default;
}

.content-result {
  width: 836px;
}

.content-result-record {
  display: flex;
}

.content-result-column {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  min-height: 60px;
  border-right: solid 1px #c1c1c1;
  border-bottom: solid 1px #c1c1c1;
}

.content-result-column .mod-checkbox-wrapper {
  width: 100%;
  height: 100%;
}

.content-result-record.select {
  background: url(../../approval/images/bg_img09.png);
}

.content-result-column .mod-checkbox + p {
  position: relative;
  z-index: 2;
  width: auto;
  padding: 9px 0px 30px 18px;
}

.content-result-column .mod-checkbox + p:before {
  top: 10px !important;
}

.content-result-column .mod-checkbox + p:after {
  top: 24px !important;
}

.content-result-record .content-result-column.check .mod-checkbox:checked + p + span {
  display: block;
  position: absolute;
  z-index: 1;
  top: 0px;
  bottom: 0px;
  left: 0px;
  right: 0px;
  background: url(../../approval/images/bg_img14.png);
}

.content-result-record.select .content-result-column.check .mod-checkbox + p + span {
  display: block;
  position: absolute;
  z-index: 1;
  top: 0px;
  bottom: 0px;
  left: 0px;
  right: 0px;
  background: url(../../approval/images/bg_img10.png);

}

.content-result-record.select .content-result-column.check .mod-checkbox:checked + p + span {
  display: block;
  position: absolute;
  z-index: 1;
  top: 0px;
  bottom: 0px;
  left: 0px;
  right: 0px;
  background: url(../../approval/images/bg_img11.png);
}

.content-result-column.start {
  align-items: flex-start;
}

.content-result-reader {
  position: relative;
  width: 100%;
  height: 1.5em;
}

.content-result-wrap {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
}

.content-result-item {
  margin: 2px 6px;
  text-align: center;
}

.content-result-reader > .content-result-wrap > .content-result-item {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.content-result-icon {
  display: inline-block;
  margin: 4px 0px 2px 0px;
  width: 20px;
  height: 20px;
  background: url(../../attendance-record/images/icon-circle_img03.png) no-repeat;
  background-size: 100% 100%;
}

.content-result-item.xsmall {
  font-size: 12px;
}

.content-result-item.small {
  font-size: 14px;
}

.content-result-item.normal {
  font-size: 16px;
}

.content-result-item.large {
  font-size: 18px;
}

.content-result-item.bold {
  font-weight: bold;
}

.content-result-item.warn {
  color: #f80000;
  font-weight: bold;
}

.content-result-item.thin {
  color:#666666;
}

.content-shift {
  overflow: hidden;
  width:836px;
}

.content-shift-head {
  display: flex;
  align-items: center;
  background: #7c8490;
}

.content-shift-head > .content-shift-column {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  height: 50px;
}

.content-shift-head > .content-shift-column > .content-shift-label {
  color: #fff;
}

.content-shift-body {
  width: 836px;
}

.content-shift-body > .content-shift-record {
  display: flex;
  align-items: center;
}

.content-shift-body > .content-shift-record.disable {
  background: url(../../approval/images/bg_img01.png) repeat;
}

.content-shift-body > .content-shift-record.active {
  background: url(../../approval/images/bg_img12.png) repeat;
}

.content-shift-body > .content-shift-record > .content-shift-column {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  height: 44px;
  border-right: solid 1px #c1c1c1;
  border-bottom: solid 1px #c1c1c1;
}

.disable .content-shift-column.head {
  background: url(../../approval/images/bg_img02.png) repeat;
}

.active .content-shift-column.head {
  background: url(../../approval/images/bg_img13.png) repeat;
}

.content-shift-column.xsmall {
  width: 26px;
}

.content-shift-column.small {
  width: 40px;
}

.content-shift-column.default {
  width: 64px;
}

.content-shift-column.large {
  width: 72px;
}

.content-shift-column.xlarge {
  width: 90px;
}

.content-shift-column.flex {
  width: 118.5px;
}

.content-shift-label.large {
  font-size: 18px;
}

.content-shift-label {
  overflow: hidden;
  width: 100%;
  text-align: center;
  font-size: 14px;
}

.content-shift-label.small {
  font-size: 12px;
}

.content-shift-label.xsmall {
  font-size: 10px;
}

.content-shift-label.bold {
  font-weight: bold;
}

.content-shift-label.remark {
  font-weight: bold;
  color: #f68d31;
}

.content-shift-label.underline {
  text-decoration: underline;
}

.content-shift-label.green {
  color: #42a563;
}

.content-shift-label.red {
  color: #f80000;
}

.content-shift-label.gray {
  color: #b4b9bf;
}

.content-shift-label.this {
  color: #666;
}

.content-shift-label.sat {
  color: #1379c7;
}

.content-shift-label.sun {
  color: #e2143b;
}

.content-shift-icon.check {
  margin-bottom: 2px;
  width: 20px;
  height: 20px;
  background: url(../../approval/images/icon-check_img01.png) no-repeat;
  background-size: 100% 100%;
}

.content-shift-icon.lock {
  margin-bottom: 2px;
  width: 20px;
  height: 20px;
  background: url(../../approval/images/icon-lock_img01.png) no-repeat;
  background-size: 100% 100%;
}

.content-shift-icon.warn {
  margin-bottom: 2px;
  width: 20px;
  height: 20px;
  background: url(../../approval/images/icon-uncheck_img01.png) no-repeat;
  background-size: 100% 100%;
}

.content-shift-icon.still {
  margin-bottom: 2px;
  width: 20px;
  height: 20px;
  background: url(../../approval/images/icon-unrequest_img01.png) no-repeat;
  background-size: 100% 100%;
}

.content-shift-column-check > p {
  padding: 14px 5px 10px 13px !important;
  width: 26px !important;
}

.content-shift-column-check > p:after {
  top: 18px !important;
  left: 8px !important;
}

.side-extra-item {
  display:block;
}
