@charset "UTF-8";
/* Foundation
   ----------------------------------------------------------------- */
@font-face {
  font-family: "icomoon";
  src: url("../fonts/icomoon.eot?59nkno");
  src: url("../fonts/icomoon.eot?59nkno#iefix") format("embedded-opentype"), url("../fonts/icomoon.ttf?59nkno") format("truetype"), url("../fonts/icomoon.woff?59nkno") format("woff"), url("../fonts/icomoon.svg?59nkno#icomoon") format("svg");
  font-weight: normal;
  font-style: normal;
  font-display: block;
}
[class^=icon-], [class*=" icon-"] {
  /* use !important to prevent issues with browser extensions that change fonts */
  font-family: "icomoon" !important;
  speak: never;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  /* Better Font Rendering =========== */
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.icon-Vector3:before {
  content: "\e914";
}

.icon-Group:before {
  content: "\e900";
}

.icon-Group-1:before {
  content: "\e901";
}

.icon-Vector:before {
  content: "\e902";
}

.icon-Vector-1:before {
  content: "\e903";
}

.icon-Vector-2:before {
  content: "\e904";
}

.icon-Vector-3:before {
  content: "\e905";
}

.icon-Vector-4:before {
  content: "\e906";
}

.icon-Vector-5:before {
  content: "\e907";
}

.icon-Vector-6:before {
  content: "\e908";
}

.icon-Vector-7:before {
  content: "\e909";
}

.icon-Vector-8:before {
  content: "\e90a";
}

.icon-Group1:before {
  content: "\e90b";
}

.icon-Vector1:before {
  content: "\e90c";
}

.icon-Group2:before {
  content: "\e90d";
}

.icon-Vector2:before {
  content: "\e90e";
}

.icon-Vector-11:before {
  content: "\e90f";
}

.icon-Vector-21:before {
  content: "\e910";
}

.icon-Vector-31:before {
  content: "\e911";
}

.icon-Vector-41:before {
  content: "\e912";
}

.icon-Vector-51:before {
  content: "\e913";
}

/* Foundation
   ----------------------------------------------------------------- */
body {
  font-family: "Noto Sans", sans-serif;
  font-size: 16px;
  line-height: 1.5;
  color: #221815;
  text-align: justify;
}

a {
  transition: all 0.3s;
}
a:hover {
  color: #006C30;
}

img {
  max-width: 100%;
  height: auto;
  outline: none;
}
img:focus {
  outline: none;
}

/* Layout
   ----------------------------------------------------------------- */
/* Foundation
   ----------------------------------------------------------------- */

.l-inner {
  box-sizing: content-box;
}
.l-inner--l {
  max-width: 1160px;
}

.relative {
  position: relative;
}

.modal {
  visibility: hidden;
  opacity: 0;
  position: fixed;
  height: 100%;
  width: 100%;
  top: 0;
  left: 0;
  z-index: 1000;
  transition: all 0.3s;
}
.modal.open {
  opacity: 1;
  visibility: visible;
}
.modal.open .modal__overlay {
  opacity: 1;
  visibility: visible;
}
.modal__overlay {
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.7);
  position: fixed;
  left: 0;
  top: 0;
  z-index: 1;
  opacity: 0;
  visibility: hidden;
  transition: all 0.3s;
}
.modal__wrap {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
  position: relative;
}
.modal__inner {
  width: 90%;
  margin: 0 auto;
  padding: 20px;
  background: #fff;
  position: relative;
  z-index: 2;
}
.modal__close {
  display: inline-block;
  position: absolute;
  top: -41px;
  right: -20px;
  font-size: 40px;
  border-radius: 100%;
  color: #fff;
  cursor: pointer;
  text-align: center;
  width: 40px;
  line-height: 1;
}

/* Pagination */
.paginationjs {
  margin: 16px 0;
  font-size: 14px;
}

.paginationjs .paginationjs-pages ul {
  display: inline-flex;
  gap: 4px;
}

.paginationjs .paginationjs-pages li {
  background: #006C30;
  color: #fff;
  border: 1px solid #006C30;
  border-radius: 4px;
  min-width: 36px;
  height: 36px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
}

.paginationjs .paginationjs-pages li a {
  color: #fff;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
  padding: 0 10px;
}

.paginationjs .paginationjs-pages li a:hover {
  color: #fff !important;
}

.paginationjs .paginationjs-pages li.active a {
  color: #fff !important;
}

.paginationjs .paginationjs-pages li.disabled a,
.paginationjs .paginationjs-ellipsis a {
  color: #fff !important;
  opacity: 0.85;
}

.paginationjs .paginationjs-pages li.active {
  background: #004d22;
  border-color: #004d22;
}

.paginationjs .paginationjs-pages li:hover:not(.disabled):not(.active) {
  background: #008a3c;
  border-color: #008a3c;
}

.paginationjs .paginationjs-pages li.disabled,
.paginationjs .paginationjs-ellipsis {
  background: #7fb59a;
  border-color: #7fb59a;
  cursor: default;
}

.paginationjs .paginationjs-nav {
  display: inline-block;
  margin-right: 10px;
  color: #221815;
}

.paginationjs .paginationjs-size-changer select,
.paginationjs .paginationjs-go-input input,
.paginationjs .paginationjs-go-button input {
  height: 32px;
  border: 1px solid #C1C1C1;
  border-radius: 4px;
}

.paginationjs .paginationjs-go-button input {
  background: #006C30;
  color: #fff;
  border-color: #006C30;
  padding: 0 12px;
}

.paginationjs .paginationjs-go-button input:hover {
  background: #008a3c;
  border-color: #008a3c;
}

/* Foundation
   ----------------------------------------------------------------- */

.l-header {
  width: 100%;
  background: #006C30;
}
.l-wrap--timetable .l-header {
  position: static;
}
.l-header__inner, .l-header__group, .l-header__nav {
  display: flex;
  flex-wrap: wrap;
}
.l-header__inner {
  max-width: 1200px;
}
.l-header__logo {
  width: 205px;
  text-align: center;
  position: relative;
  height: auto;
  display: flex;
  align-items: center;
  padding: 0 15px;
  background: #D9D9D9;
}
.l-header__logo:after {
  content: "";
  width: 30px;
  height: 100%;
  position: absolute;
  right: -1px;
  top: 0;
  background: #006C30;
  clip-path: polygon(0 0, 100% 0, 0 100%);
  transform: rotate(180deg);
}
.l-header__group {
  width: calc(100% - 205px);
  background: #006C30;
  padding: 0 20px;
  gap: 40px;
  justify-content: space-between;
}
.l-header__login {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  color: #fff;
  padding: 0;
  gap: 5px;
}
.l-header__login:hover {
  color: #fff;
}
.l-header__login:before {
  content: "";
  background: url(../img/common/ico_login.png) no-repeat center/contain;
  width: 36px;
  height: 30px;
  display: block;
}
.l-header__nav {
  gap: 20px;
  font-family: "Inter", sans-serif;
}
.l-header__nav li {
  width: calc((100% - 100px) / 6);
  text-align: center;
}
.l-header__nav li a {
  color: #fff;
  padding: 5px 0;
  display: block;
  font-weight: 500;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: 5px;
}
.l-header__nav li a:before {
  font-family: "icomoon";
  line-height: 1;
  height: 25px;
  display: flex;
  align-items: center;
}
.l-header__user {
  width: 140px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
}
.l-header__user:has(.l-header__login) {
  justify-content: flex-start;
}
.l-header__user p {
  width: 100%;
}
.l-header__userName {
  height: 24px;
  display: flex;
  align-items: center;
  justify-content: center;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  font-size: 14px;
  width: 100%;
  background: #fff;
  position: relative;
}
.l-header__userName:before {
  content: "\e914";
  font-family: "icomoon";
  line-height: 1;
  color: #006C30;
  font-size: 20px;
  margin-right: 10px;
}
.l-header__logout {
  height: 21px;
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 12px;
  color: #fff;
  border: 1px solid #fff;
  border-radius: 21px;
  margin: 5px 0 0;
  width: 100%;
}
.l-header__logout:hover {
  background: #D9D9D9;
}
.l-header__reception:before {
  content: "\e908";
  font-size: 20px;
}
.l-header__customer:before {
  content: "";
  background: url(../img/common/ico_building.png) no-repeat center/contain;
  width: 20px;
}
.l-header__employee:before {
  content: "";
  background: url(../img/common/ico_working.png) no-repeat center/contain;
  width: 20px;
}
.l-header__site:before {
  content: "\e912";
  font-size: 20px;
}
.l-header__timetable:before {
  content: "\e906";
  font-size: 20px;
}
.l-header__driver:before {
  content: "\e910";
  font-size: 20px;
}

.l-header__actionBtn {
  width: 29px;
  height: 3px;
  background-color: #fff;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  margin: auto;
  transition: background-color 0.3s;
  position: relative;
  cursor: pointer;
}
.l-header__actionBtn:before, .l-header__actionBtn:after {
  content: "";
  width: 100%;
  height: 3px;
  background: #fff;
  position: absolute;
  top: 0;
  left: 50%;
  margin: auto;
  transition: transform 0.3s, width 0.3s;
}
.l-header__actionBtn:before {
  transform: translate(-50%, -400%);
}
.l-header__actionBtn:after {
  transform: translate(-50%, 400%);
}
.js-nav-open .l-header__actionBtn {
  background-color: rgba(34, 24, 21, 0);
}
.js-nav-open .l-header__actionBtn:before {
  width: 29px;
  transform: translate(-50%, 0) rotate(-45deg);
}
.js-nav-open .l-header__actionBtn:after {
  width: 29px;
  transform: translate(-50%, 0) rotate(45deg);
}

/* Foundation
   ----------------------------------------------------------------- */
/* Object
   ----------------------------------------------------------------- */
/* Foundation
   ----------------------------------------------------------------- */
/* Foundation
   ----------------------------------------------------------------- */
/* Foundation
   ----------------------------------------------------------------- */
/* Foundation
   ----------------------------------------------------------------- */
/* Foundation
   ----------------------------------------------------------------- */
.c-heading {
  font-size: 18px;
  font-weight: 500;
}

/* Foundation
   ----------------------------------------------------------------- */
/* Foundation
   ----------------------------------------------------------------- */
.btn {
  background: #006C30;
  color: #fff;
  height: 52px;
  min-width: 182px;
  padding: 0 10px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-weight: 500;
}
.btn--secondary {
  background: #C74848;
}
.btn--cancel {
  background: #595959;
}
.btn:hover {
  background: #D9D9D9;
}
.btn--s {
  height: 38px;
}
.btn--transparent {
  background: #fff;
  border: 1px solid #006C30;
  color: #221815;
}

.btn-s {
  background: #006C30;
  color: #fff;
  min-width: 120px;
  padding: 7px 10px;
  display: inline-block;
  text-align: center;
  font-weight: 500;
}
.btn-s span {
  font-size: 12px;
  display: block;
  text-align: center;
}
.btn-s--secondary {
  background: #C74848;
}
.btn-s:hover {
  background: #D9D9D9;
}
.btn-s.-back {
  position: relative;
}
.btn-s.-back:before {
  content: "\e915";
  position: absolute;
  left: 16px;
  top: 50%;
  transform: translateY(-50%);
  font-family: "icomoon";
  line-height: 1;
  font-size: 10px;
}
.btn-s.-back:hover {
  background: #D9D9D9;
}
.btn-s.-select {
  position: relative;
}
.btn-s.-select:after {
  content: "\e916";
  position: absolute;
  right: 16px;
  top: 50%;
  transform: translateY(-50%);
  font-family: "icomoon";
  line-height: 1;
  font-size: 6px;
}
.btn-s.-output {
  position: relative;
  padding-right: 55px;
  line-height: 1.3;
}
.btn-s.-output:after {
  content: "\e90b";
  position: absolute;
  right: 16px;
  top: 50%;
  transform: translateY(-50%);
  font-family: "icomoon";
  line-height: 1;
  font-size: 26px;
}

/* Foundation
   ----------------------------------------------------------------- */
/* Foundation
   ----------------------------------------------------------------- */
table.dataTable > thead > tr > th, table.dataTable > thead > tr > td {
  padding: 8px 10px;
  text-align: center;
}

table.dataTable > thead > tr > th {
  background-color: #E5E5E5;
  text-align: center;
}

table.dataTable thead tr > .dtfc-fixed-left, table.dataTable thead tr > .dtfc-fixed-right {
  background-color: #E5E5E5;
}

table.dataTable > thead > tr > td {
  border: 1px solid #C1C1C1;
  vertical-align: middle;
}

table {
  width: 100%;
}
table th {
  background-color: #F7F7F7;
  text-align: center;
  white-space: nowrap;
}
table td, table th {
  padding: 8px 10px;
  border: 1px solid #C1C1C1;
  vertical-align: middle;
  text-align: center;
}
table .td-inner {
  padding: 5px 10px;
  white-space: nowrap;
}

.p-table__large th {
  min-width: 100px;
  white-space: nowrap;
}

.c-table td:has(.td-btn) {
  position: relative;
}
.c-table th {
  background: #E5E5E5;
}
.c-table th.blank {
  background: transparent;
}
.c-table .td-inner {
  border-left: 0.03125em solid #A9A9A9;
  border-right: 0.03125em solid #A9A9A9;
}

.td-btn {
  cursor: pointer;
}

.td-inner {
  width: 50px;
}
.td-inner .td-btn {
  background: #006C30;
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 5px;
  text-align: center;
  min-height: 40px;
  height: 100%;
  width: 100%;
  top: 0;
  left: 0;
}
.td-inner .td-btn--edit:before {
  content: "";
  width: 30px;
  height: 33px;
  background: url(../img/common/ico_edit.png) no-repeat center/contain;
}
.td-inner .td-btn--waste:before {
  content: "";
  width: 27px;
  height: 25px;
  background: url(../img/common/ico_waste.png) no-repeat center/contain;
}

.dataTable {
  width: 100% !important;
}

/* Foundation
   ----------------------------------------------------------------- */
input, select, textarea {
  height: 36px;
  border: 1px solid #C1C1C1;
  border-radius: 2px;
  padding: 0 20px;
  width: 100%;
  transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
  background: #fff;
}
input:focus, select:focus, textarea:focus {
  border-color: #86b7fe;
  outline: 0;
  box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25);
}

select {
  background-image: url('data:image/svg+xml,<svg width="10" height="8" viewBox="0 0 10 8" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M8.98061 0.438005C9.10381 0.438005 9.22459 0.472314 9.3294 0.537089C9.4342 0.601863 9.5189 0.694544 9.574 0.804745C9.6291 0.914946 9.65243 1.03831 9.64136 1.16102C9.6303 1.28373 9.58528 1.40094 9.51136 1.49951L5.53073 6.80701C5.46893 6.88941 5.3888 6.95629 5.29667 7.00235C5.20455 7.04841 5.10297 7.07239 4.99998 7.07239C4.89698 7.07239 4.7954 7.04841 4.70328 7.00235C4.61116 6.95629 4.53102 6.88941 4.46922 6.80701L0.488596 1.49951C0.414671 1.40094 0.369653 1.28373 0.358589 1.16102C0.347524 1.03831 0.37085 0.914945 0.425951 0.804744C0.481051 0.694543 0.565749 0.601863 0.670557 0.537088C0.775364 0.472314 0.896139 0.438004 1.01935 0.438004L8.98061 0.438005Z" fill="%23212121"/></svg>');
  background-repeat: no-repeat;
  background-position: right 0.75rem center;
  background-size: 9px;
}

textarea {
  height: 144px;
  resize: none;
  vertical-align: top;
  padding-top: 20px;
}

input[type=file] {
  padding-top: 15px;
}

label {
  position: relative;
  cursor: pointer;
}
label > input[type=radio], label > input[type=checkbox] {
  display: none;
  position: absolute;
  left: 0;
  top: 0;
}
label:has(input[type=radio]) {
  padding-left: 21px;
}
label:has(input[type=radio]):before {
  content: "";
  width: 12px;
  height: 12px;
  border: 1px solid #221815;
  display: block;
  border-radius: 100%;
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
  margin-top: 1px;
}
label:has(input[type=checkbox]) {
  padding-left: 27px;
}
label:has(input[type=checkbox]):before {
  content: "";
  width: 16px;
  height: 16px;
  border: 1px solid #C1C1C1;
  border-radius: 3px;
  display: block;
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
}
label:has(input[type=radio]:checked):before {
  background: url(../img/common/ico_radio.svg) no-repeat center/contain;
}
label:has(input[type=checkbox]:checked):before {
  background: url(../img/common/ico_check.svg) no-repeat center/contain;
}

input[type=number]::-webkit-inner-spin-button,
input[type=number]::-webkit-outer-spin-button {
  -webkit-appearance: none;
  margin: 0;
}

/* Firefox */
input[type=number] {
  -moz-appearance: textfield;
  padding-left: 15px;
  padding-right: 15px;
  text-align: center;
}

.c-select {
  position: relative;
}
.c-select:after {
  content: "";
  position: absolute;
  right: 35px;
  top: 0;
  height: 100%;
  width: 1px;
  background: #a1a1a1;
}
.c-select select {
  padding-right: 38px;
}

/* Foundation
   ----------------------------------------------------------------- */
.u-color_black {
  color: #221815 !important;
}
.u-color_white {
  color: #fff !important;
}
.u-color_green {
  color: #006C30;
}

/* Foundation
   ----------------------------------------------------------------- */
/* display Utility */
.u-none {
  display: none !important;
}
.u-block {
  display: block !important;
}
.u-inline {
  display: inline !important;
}
.u-ib {
  display: inline-block !important;
}

/* Foundation
   ----------------------------------------------------------------- */
.u-m_t0 {
  margin-top: 0 !important;
}
.u-m_b0 {
  margin-bottom: 0 !important;
}

.u-m_r4 {
  margin-right: 4px;
}
.u-m_l5 {
  margin-left: 5px;
}
.u-m_b20 {
  margin-bottom: 20px;
}
.u-m_b50 {
  margin-bottom: 50px;
}
.u-m_t4 {
  margin-top: 4px;
}
.u-m_t8 {
  margin-top: 8px;
}
.u-m_t10 {
  margin-top: 10px;
}
.u-m_t15 {
  margin-top: 15px;
}
.u-m_t20 {
  margin-top: 20px;
}
.u-m_t30 {
  margin-top: 30px;
}
.u-m_t40 {
  margin-top: 40px;
}
.u-m_t50 {
  margin-top: 50px;
}
.u-m_t80 {
  margin-top: 80px;
}
.u-m_t95 {
  margin-top: 95px;
}

/* Foundation
   ----------------------------------------------------------------- */
.u-fw_bold {
  font-weight: bold !important;
}
.u-fw_normal {
  font-weight: normal !important;
}
.u-fw_medium {
  font-weight: 500 !important;
}

.u-td_u {
  text-decoration: underline !important;
}
.u-td_none {
  text-decoration: none !important;
}

.u-ta_center {
  text-align: center !important;
}
.u-ta_left {
  text-align: left !important;
}
.u-ta_right {
  text-align: right !important;
}

.u-ws_preline {
  white-space: pre-line !important;
}
.u-ws_nowrap {
  white-space: nowrap !important;
}

.u-text_sub, .u-text_sup {
  font-size: 0.6em;
  letter-spacing: -0.2em;
}
.u-text_sup {
  vertical-align: super;
}

[class].u-flex_center {
  display: flex;
  justify-content: center;
}
[class].u-flex_baseline {
  align-items: baseline;
}
[class].u-flex_right {
  display: flex;
  justify-content: flex-end;
}

.u-ta_center {
  text-align: center;
}

/* Foundation
   ----------------------------------------------------------------- */
.u-w_full {
  width: 100% !important;
}

.u-w_p5 {
  width: 5% !important;
}

.u-w_p6 {
  width: 6% !important;
}

.u-w_p7 {
  width: 7% !important;
}

.u-w_p8 {
  width: 8% !important;
}

.u-w_p9 {
  width: 9% !important;
}

.u-w_p10 {
  width: 10% !important;
}

.u-w_p11 {
  width: 11% !important;
}

.u-w_p12 {
  width: 12% !important;
}

.u-w_p13 {
  width: 13% !important;
}

.u-w_p14 {
  width: 14% !important;
}

.u-w_p15 {
  width: 15% !important;
}

.u-w_p16 {
  width: 16% !important;
}

.u-w_p17 {
  width: 17% !important;
}

.u-w_p18 {
  width: 18% !important;
}

.u-w_p19 {
  width: 19% !important;
}

.u-w_p20 {
  width: 20% !important;
}

.u-w_p21 {
  width: 21% !important;
}

.u-w_p22 {
  width: 22% !important;
}

.u-w_p23 {
  width: 23% !important;
}

.u-w_p24 {
  width: 24% !important;
}

.u-w_p25 {
  width: 25% !important;
}

.u-w_p26 {
  width: 26% !important;
}

.u-w_p27 {
  width: 27% !important;
}

.u-w_p28 {
  width: 28% !important;
}

.u-w_p29 {
  width: 29% !important;
}

.u-w_p30 {
  width: 30% !important;
}

.u-w_p31 {
  width: 31% !important;
}

.u-w_p32 {
  width: 32% !important;
}

.u-w_p33 {
  width: 33% !important;
}

.u-w_p34 {
  width: 34% !important;
}

.u-w_p35 {
  width: 35% !important;
}

.u-w_p36 {
  width: 36% !important;
}

.u-w_p37 {
  width: 37% !important;
}

.u-w_p38 {
  width: 38% !important;
}

.u-w_p39 {
  width: 39% !important;
}

.u-w_p40 {
  width: 40% !important;
}

.u-w_p41 {
  width: 41% !important;
}

.u-w_p42 {
  width: 42% !important;
}

.u-w_p43 {
  width: 43% !important;
}

.u-w_p44 {
  width: 44% !important;
}

.u-w_p45 {
  width: 45% !important;
}

.u-w_p46 {
  width: 46% !important;
}

.u-w_p47 {
  width: 47% !important;
}

.u-w_p48 {
  width: 48% !important;
}

.u-w_p49 {
  width: 49% !important;
}

.u-w_p50 {
  width: 50% !important;
}

.u-w_p51 {
  width: 51% !important;
}

.u-w_p52 {
  width: 52% !important;
}

.u-w_p53 {
  width: 53% !important;
}

.u-w_p54 {
  width: 54% !important;
}

.u-w_p55 {
  width: 55% !important;
}

.u-w_p56 {
  width: 56% !important;
}

.u-w_p57 {
  width: 57% !important;
}

.u-w_p58 {
  width: 58% !important;
}

.u-w_p59 {
  width: 59% !important;
}

.u-w_p60 {
  width: 60% !important;
}

.u-w_p61 {
  width: 61% !important;
}

.u-w_p62 {
  width: 62% !important;
}

.u-w_p63 {
  width: 63% !important;
}

.u-w_p64 {
  width: 64% !important;
}

.u-w_p65 {
  width: 65% !important;
}

.u-w_p66 {
  width: 66% !important;
}

.u-w_p67 {
  width: 67% !important;
}

.u-w_p68 {
  width: 68% !important;
}

.u-w_p69 {
  width: 69% !important;
}

.u-w_p70 {
  width: 70% !important;
}

.u-w_p71 {
  width: 71% !important;
}

.u-w_p72 {
  width: 72% !important;
}

.u-w_p73 {
  width: 73% !important;
}

.u-w_p74 {
  width: 74% !important;
}

.u-w_p75 {
  width: 75% !important;
}

.u-w_p76 {
  width: 76% !important;
}

.u-w_p77 {
  width: 77% !important;
}

.u-w_p78 {
  width: 78% !important;
}

.u-w_p79 {
  width: 79% !important;
}

.u-w_p80 {
  width: 80% !important;
}

.u-w_p81 {
  width: 81% !important;
}

.u-w_p82 {
  width: 82% !important;
}

.u-w_p83 {
  width: 83% !important;
}

.u-w_p84 {
  width: 84% !important;
}

.u-w_p85 {
  width: 85% !important;
}

.u-w_p86 {
  width: 86% !important;
}

.u-w_p87 {
  width: 87% !important;
}

.u-w_p88 {
  width: 88% !important;
}

.u-w_p89 {
  width: 89% !important;
}

.u-w_p90 {
  width: 90% !important;
}

.u-w_p91 {
  width: 91% !important;
}

.u-w_p92 {
  width: 92% !important;
}

.u-w_p93 {
  width: 93% !important;
}

.u-w_p94 {
  width: 94% !important;
}

.u-w_p95 {
  width: 95% !important;
}

.u-w_p96 {
  width: 96% !important;
}

.u-w_p97 {
  width: 97% !important;
}

.u-w_p98 {
  width: 98% !important;
}

.u-w_p99 {
  width: 99% !important;
}

.u-w_p100 {
  width: 100% !important;
}

.u-w_70 {
  width: 70px;
}
.u-w_80 {
  width: 80px;
}
.u-w_100 {
  width: 100px;
}
.u-w_120 {
  width: 120px;
}
.u-w_200 {
  width: 200px;
}
.u-w_230 {
  width: 230px;
}
.u-w_s {
  width: 200px;
}

.u-mw_100 {
  min-width: 100px;
}

/* Foundation
   ----------------------------------------------------------------- */
.u-hover_trans:hover {
  opacity: 0.7;
}

/* Foundation
   ----------------------------------------------------------------- */
.box-hover {
  overflow: hidden;
  display: block;
}
.box-hover img {
  transition: all 0.3s;
}
.box-hover:hover img {
  transform: scale(1.05);
}

.breadcrumb {
  display: flex;
  align-items: center;
  gap: 30px;
  margin: 5px 0 0;
  padding: 0 60px;
}
.breadcrumb li + li {
  position: relative;
}
.breadcrumb li + li:before {
  content: "";
  background: url('data:image/svg+xml,<svg width="6" height="9" viewBox="0 0 6 9" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M5.01408e-07 1.0575L3.7085 4.5L-1.00498e-07 7.9425L1.1417 9L6 4.5L1.1417 -4.24726e-07L5.01408e-07 1.0575Z" fill="%23212121"/></svg>') no-repeat center/contain;
  width: 9px;
  height: 9px;
  display: block;
  position: absolute;
  left: -17px;
  top: 50%;
  transform: translateY(-50%);
}

.p-tool {
  display: flex;
  justify-content: space-between;
  align-items: baseline;
  flex-wrap: wrap;
  gap: 20px;
  max-width: 1200px;
}
.p-tool:not(:has(.-back)) {
  justify-content: end;
}
.p-tool.p-tool--center {
  justify-content: center;
}
.p-tool__list {
  display: flex;
  align-items: flex-end;
  flex-wrap: wrap;
  gap: 20px;
}
.p-tool--start {
  justify-content: flex-start;
}

.hidden {
  opacity: 0;
}

.p-form {
  margin: 0;
  background: #F7F7F7;
}
.p-form__inner {
  max-width: 100%;
  margin: 0 auto;
  padding: 15px;
  box-sizing: content-box;
}
.p-form__item {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  padding: 8px 0;
}
.p-form__item--top {
  align-items: baseline;
}
.p-form__item + .p-form__item {
  border-top: 1px solid #D9D9D9;
}
.p-form__label {
  font-weight: 500;
}
.p-form__content.-flex {
  display: flex;
  flex-wrap: wrap;
  gap: 16px 32px;
}
.p-form__content.-half {
  gap: 10px;
  display: flex;
}
.p-form__content label span {
  font-size: 12px;
  font-weight: 500;
}
.p-form__content .u-w_100 + select, .p-form__content .u-w_100 + input {
  width: calc(100% - 132px);
}
.p-form__content .u-w_200 + select, .p-form__content .u-w_200 + input {
  width: calc(100% - 232px);
}
.p-form__inline {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 32px;
}
.p-form__text {
  padding-left: 100px;
  margin: 10px 0 0;
}

.p-action {
  margin: 20px 0 0;
  display: flex;
  justify-content: center;
  gap: 50px;
}
.p-action--right {
  justify-content: flex-end;
  padding-right: 100px;
  gap: 20px;
}
.p-date {
  display: flex;
  gap: 4px;
}
.p-tool--start .p-date {
  padding-left: 110px;
}
.p-date__btn {
  display: flex;
}
.p-date__prev, .p-date__next, .p-date input.-date {
  height: 28px;
}
.p-date input.-date {
  background: #C2C2C2;
}
.p-date__prev, .p-date__next {
  width: 28px;
  border: 0.03125em solid #A1A1A1;
}
.p-date__prev {
  background: #C2C2C2 url(../img/common/ico_prev.svg) no-repeat center right 5px/6px;
}
.p-date__next {
  background: #C2C2C2 url(../img/common/ico_next.svg) no-repeat center left 5px/6px;
}

.p-timetable {
  margin: 110px 0 0;
}
.p-timetable__form {
  max-width: 530px;
  margin: 40px auto 0;
  background-color: #DEE9E3;
  padding: 45px 30px;
}
.p-timetable__item {
  display: flex;
  align-items: center;
  gap: 10px;
}
.p-timetable__item + .p-timetable__item {
  margin: 25px 0 0;
}
.p-timetable__label {
  width: 70px;
  font-weight: 500;
}
.p-timetable__content {
  width: calc(100% - 80px);
}
.p-timetable__action {
  padding-left: 80px;
  display: flex;
  gap: 22px;
  justify-content: center;
  margin: 34px 0 0;
}

.c-flex {
  display: flex;
  flex-wrap: wrap;
  gap: 15px 38px;
}
.c-flex > * {
  flex: 1;
}

.s-company {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}
.s-company > [data-modal] {
  width: 70px;
  background: #fff;
  height: 36px;
  display: flex;
  align-items: center;
  justify-content: center;
  border: 1px solid #C1C1C1;
}
.s-company input {
  width: calc(100% - 80px);
}

[data-modal] {
  cursor: pointer;
}
[data-modal].disabled {
  pointer-events: none;
  opacity: 0.7;
  cursor: not-allowed;
}

/* CSS for dual monitor layout */
/* CSS for dual monitor layout end */
.btn-s {
  cursor: pointer;
}

.btn-s.-back {
  background: #006837;
}

.btn-s.-prev,
.btn-s.-next {
  background: #e0e0e0;
  color: #333;
  width: 32px;
  max-width: 32px;
  min-width: unset;
  margin: 0;
}

.btn-s.-date {
  background: #e0e0e0;
  color: #333;
  min-width: unset;
  width: -moz-fit-content;
  width: fit-content;
  margin: 0 0 0 4px;
}

.btn-s.-add {
  background: #fff;
  color: #006837;
  border: 1px solid #006837;
}

.btn-group {
  display: flex;
}

.btn-s.-driver {
  background: #006837;
  color: #fff;
}

.btn-s.-change {
  background: #fff;
  color: #006837;
  border: 1px solid #006837;
}

.cell-open-btn {
  position: absolute;
  top: 5px;
  right: 5px;
  width: 20px;
  height: 20px;
  background: #006837;
  color: #fff;
  border-radius: 50%;
  text-decoration: none;
  font-size: 10px;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: all 0.3s ease;
  z-index: 5;
  opacity: 0.7;
}

.cell-open-btn:hover {
  background: #004d29;
  color: #fff;
  text-decoration: none;
  opacity: 1;
  transform: scale(1.1);
}

.p-table-wrapper {
  width: 100%;
  overflow-x: auto;
  margin-top: 25px;
  position: relative;
  overflow-y: auto;
  -webkit-overflow-scrolling: touch;
  height: 600px;
}

.p-table.bg-transparent {
  position: sticky;
  top: 0;
  z-index: 11;
  background: #fff;
}

.bg-transparent {
  background: transparent !important;
}

.p-table.bg-transparent {
  border: none !important;
}

/* Tabs */
.tab-pane {
}

.p-table.bg-transparent .p-table__cell:not(.hidden-cell) {
  border: 1px solid #ddd;
  line-height: 1 !important;
  box-shadow: 2px 0 5px rgba(0, 0, 0, 0.1);
  height: 60px !important;
}

.p-table.bg-transparent .p-table__cell.hidden-cell {
  height: 60px !important;
  box-shadow: unset;
}
#employee-table .p-table.bg-transparent .p-table__cell.hidden-cell {
  flex: 1;
}

.tab-pane .p-table {
  width: -moz-max-content;
  width: max-content;
  background: #fafafa;
  margin: 0;
  padding: 0;
  position: relative;
  min-width: 100%;
}

.p-table-wrapper .p-table {
  transition: all 0.3s;
  padding: 0;
  margin: 0;
}
.p-table-wrapper .stuck {
  position: fixed;
  width: 100%;
}
.tab-pane .p-table-wrapper .stuck {
  width: auto;
}

.p-table._noleft {
  width: 100%;
  border-bottom: 2px solid #ddd;
}

.p-table__row {
  display: flex;
}

.p-table__cell {
  padding: 12px;
  font-size: 15px;
  align-content: center;
  border-right: 1px solid #ddd;
}

.t-table table {
  table-layout: fixed;
}
.t-table .p-table__content {
  width: 100%;
  display: flex;
  align-items: center;
  border: 0;
  min-width: inherit;
  text-align: left;
}
.t-table .p-table__content:has(.cell_data_content-inner:empty) {
  background: transparent;
}
.t-table tbody td {
  padding: 0;
}
.t-table tbody td:empty {
  height: 60px;
}
.t-table tbody td:first-child {
  font-weight: bold;
}

.p-table__hour {
  text-align: center;
  font-weight: bold;
  min-height: 82px;
  background: #f5f5f5;
  position: sticky;
  left: 0;
  z-index: 10;
  border: 1px solid #ddd;
  box-shadow: 2px 0 5px rgba(0, 0, 0, 0.1);
  position: sticky;
}

.p-table__content {
  position: relative;
  background: #fafafa;
  /* padding-right: 30px; */
  display: inherit;
  border: 1px solid #ddd;
}

.p-table__cell:last-child {
  border-right: none;
}

.p-table__row:last-child {
  border-bottom: none;
}

.p-table._noleft .p-table__cell:first-child {
  padding: 0;
  margin: 0;
  border-right: 1px solid #ddd;
  background: transparent;
  visibility: hidden;
}

.hidden-cell {
  background: transparent;
  border: none;
  color: transparent;
  font-size: 0;
  padding: 0;
  margin: 0;
  box-sizing: border-box;
  min-height: 60px;
  outline: none;
  box-shadow: none;
  z-index: 99;
}

.p-table._noleft .p-table__cell {
  flex: 1;
  padding: 12px;
  border-right: 1px solid #ddd;
  font-size: 15px;
  min-height: 82px;
  min-width: 200px;
}

.p-table__dropdown {
  cursor: pointer;
  width: 100%;
  position: absolute;
  bottom: 5px;
  padding-right: 5px;
  left: 0;
  z-index: 1;
  display: flex;
  align-items: center;
  justify-content: flex-end;
  line-height: 1;
}
.p-table__dropdown > * {
  width: 100%;
  text-align: right;
}
.p-table__dropdown-close {
  display: none;
}
.-open .p-table__dropdown-close {
  display: block;
}
.-open .p-table__dropdown-open {
  display: none;
}

.p-table__content-inner {
  display: block;
  animation: fadeIn 0.3s ease;
  height: auto;
  overflow: hidden;
  font-weight: 500;
  text-align: left;
}

.p-table__content-inner label:has(input[type=checkbox]):before {
  border: 1px solid #221815;
}

.p-table__content.-open .p-table__dropdown {
  top: calc(100% - 36px);
}

.p-table__content.-open .p-table__content-inner {
  height: auto;
  overflow: visible;
}

.p-table__content .p-table__dropdown .p-table__dropdown-close,
.p-table__content.-open .p-table__dropdown .p-table__dropdown-open {
  display: none;
}

.p-table__content .p-table__dropdown .p-table__dropdown-open,
.p-table__content.-open .p-table__dropdown .p-table__dropdown-close {
  display: block;
}

.p-box-wrap {
  display: flex;
  gap: 40px;
  margin-top: 80px;
}

.p-box {
  flex: 1;
}

.p-box__title {
  font-size: 18px;
  font-weight: bold;
  margin-bottom: 16px;
}

.p-box__content {
  background: #e6f0ea;
  padding: 45px 35px;
}

.p-box__content:hover,
.p-box__content:focus-within {
  background: #d1e4d7;
  border: 2px solid #004d29;
}

.p-box__row {
  display: flex;
  align-items: center;
  margin-bottom: 18px;
}

.p-box__label {
  width: 80px;
  font-size: 16px;
  font-weight: bold;
}

.p-box__formdata {
  flex: 1;
  display: flex;
  gap: 22px;
}

.p-box__select {
  flex: 1;
  padding: 0 8px;
  font-size: 14px;
  border: 1px solid #A1A1A1;
}

.p-box__btns {
  display: flex;
  gap: 22px;
  margin-top: 35px;
  margin-left: 80px;
  justify-content: center;
}

.p-box__btn {
  min-width: 113px;
  padding: 10px 0;
  font-size: 16px;
  border: none;
  cursor: pointer;
  text-align: center;
  font-weight: 500;
}

.p-box__btn.-cancel {
  background: #c44e4e;
  color: #fff;
}

.p-box__btn.-ok {
  background: #006837;
  color: #fff;
}

.map-link {
  color: #005BB6;
  text-decoration: underline;
  font-weight: 600;
}

.map-link:hover {
  color: #034485;
}

.status-controls {
  margin-top: 8px;
  padding: 10px;
  background: rgba(255, 255, 255, 0.8);
  border-radius: 4px;
  font-size: 14px;
  color: #006837;
  width: 85px;
}

.status-controls label {
  display: inline-block;
  margin-right: 10px;
  margin-bottom: 2px;
  cursor: pointer;
  font-weight: 700;
}

.status-controls input[type=radio] {
  margin-right: 3px;
  transform: scale(0.8);
}

.status-controls input[type=radio]:checked + label {
  color: #006837;
  font-weight: bold;
}
/* Tooltip CSS */
.p-table__cell.has-tooltip {
  position: relative;
}

.tooltip-content {
  position: absolute;
  bottom: -30px;
  left: 50%;
  background: #333;
  color: #fff;
  padding: 8px 12px;
  border-radius: 4px;
  font-size: 12px;
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.3s, visibility 0.3s;
  z-index: 8;
  pointer-events: auto;
  max-width: 250px;
  max-height: 250px;
  overflow-y: auto;
  white-space: normal;
  word-wrap: break-word;
  transform: translateX(-50%);
}

.p-table__cell.has-tooltip:hover .tooltip-content {
  opacity: 1;
  visibility: visible;
}

.draggable-cell {
  cursor: move;
  cursor: grab;
  transition: opacity 0.3s, box-shadow 0.3s;
}

.draggable-cell:active {
  cursor: grabbing;
}

.draggable-cell:hover {
  box-shadow: 0 2px 8px rgba(0, 104, 55, 0.3);
}

.p-table__content.drag-over {
  background-color: #e6f0ea !important;
  border: 2px dashed #006837 !important;
  box-shadow: inset 0 0 10px rgba(0, 104, 55, 0.2);
}

.mb-0 {
  margin-bottom: 0 !important;
}

.content-dropdown {
  display: none;
}
.cell_data_content.-open .content-dropdown {
  display: block;
}

.cell_data_content:has(.p-table__dropdown) {
  position: relative;
  padding: 10px 10px 25px;
}

.slide-btn svg {
  width: 20px;
  height: 20px;
}

.error {
  color: red;
}
.error-form {
  border: 1px solid red;
}

/* Foundation
   ----------------------------------------------------------------- */
.p-box {
  max-width: 529px;
  margin: 0 auto;
  padding: 40px;
  background: #F7F7F7;
}
.p-box__title {
  text-align: center;
  font-size: 20px;
  margin-bottom: 25px;
  padding-bottom: 25px;
  border-bottom: 1px solid rgb(0, 108, 48);
}
.p-box__input {
  margin-bottom: 15px;
}
.p-box__pwd {
  position: relative;
}
.p-box input {
  background: rgba(0, 108, 48, 0.1);
  border-color: #A9A9A9;
  height: 42px;
}

.p-form-action {
  max-width: 444px;
  margin: 28px auto 0;
}
.p-form-action .btn {
  font-size: 24px;
  width: 100%;
}

.show-pwd {
  background: url(../img/common/ico_eye.svg) no-repeat center/contain;
  width: 15px;
  height: 10px;
  position: absolute;
  right: 15px;
  top: 50%;
  transform: translateY(-50%);
  z-index: 2;
  cursor: pointer;
}
.show-pwd.active {
  background-image: url(../img/common/ico_eye_show.svg);
}

#p-box__login.error .p-box__title {
  border-bottom: unset;
  margin-bottom: 0;
}

#p-box__login .p-box__error {
  display: none;
}

#p-box__login.error .p-box__error {
  display: block;
}

#p-box__login.error input {
  border-color: #f44336;
  background-color: #fff0f0;
}

.p-box__error > div {
  color: #f44336;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 16px;
  font-size: 14px;
}

.p-box__error > div > svg {
  margin-right: 4px;
}

@media screen and (min-width: 768px) and (max-width: 1024px) {
  .p-form__label {
    padding-left: 50px;
    width: 250px;
  }
  .p-form__content {
    padding-right: 50px;
    width: calc(100% - 250px);
  }
}

@media screen and (max-width: 767px) {
  .l-header__group {
    padding-top: 8px;
    padding-bottom: 8px;
    align-items: center;
    justify-content: flex-start;
    flex-direction: row-reverse;
    height: 66px;
  }
  .l-header__nav {
    gap: 20px;
  }
  .l-header__nav li {
    width: calc((100% - 20px) / 2);
  }
  .l-header__menu {
    width: 100%;
    height: calc(100% - 71px);
    position: fixed;
    top: 71px;
    right: 0;
    background: #006C30;
    transform: translate(100%, 0px);
    z-index: 100;
    padding: 20px 0;
    overflow: auto;
    transition: all 0.3s;
  }
  .js-nav-open .l-header__menu {
    transform: inherit;
  }
  .btn {
    font-size: 12px;
    min-width: 100px;
  }
  .btn-s {
    font-size: 12px;
    min-width: 100px;
  }
  .btn-s span {
    font-size: 10px;
  }
  input, select, textarea {
    padding: 0 15px;
  }
  textarea {
    padding-top: 15px;
  }
  label {
    font-size: 15px;
  }
  .u-none_sp {
    display: none !important;
  }
  .u-m_t30 {
    margin-top: 20px;
  }
  .u-m_t80 {
    margin-top: 40px;
  }
  .u-m_t95 {
    margin-top: 50px;
  }
  .u-ta_center_sp {
    text-align: center !important;
  }
  .u-ta_left_sp {
    text-align: left !important;
  }
  .u-ta_right_sp {
    text-align: right !important;
  }
  .u-w_s {
    width: 100%;
  }
  .p-tool__list {
    gap: 15px;
    width: 100%;
  }
  .p-form__item {
    padding: 15px 0;
  }
  .p-form__label {
    width: 100%;
    margin-bottom: 5px;
  }
  .p-form__content {
    width: 100%;
  }
  .p-form__content.-half {
    flex-direction: column;
  }
  .p-form__content.-half > * {
    width: 100%;
  }
  .p-timetable__action {
    padding-left: 0;
  }
  .c-flex > * {
    width: 100%;
    flex: 100%;
  }
  .p-table-wrapper {
    margin-top: 20px;
  }
  .p-table._noleft {
    width: 100%;
  }
  .p-table__cell {
    min-width: 100px;
    padding: 8px;
  }
  .p-table__hour {
    width: 80px;
    flex: 0 0 80px;
  }
  /* Responsive CSS cho hidden-cell trên mobile */
  .hidden-cell {
    width: 80px !important;
    flex: 0 0 80px !important;
    background: transparent !important;
    border: none !important;
    visibility: hidden !important;
    color: transparent !important;
    font-size: 0 !important;
    padding: 0 !important;
    margin: 0 !important;
    min-height: 82px !important;
    opacity: 0 !important;
    outline: none !important;
    box-shadow: none !important;
  }
  .p-table._noleft .p-table__cell {
    min-width: 150px;
    padding: 8px;
  }
  .p-table__content {
    min-width: 150px;
  }
}

@media screen and (max-width: 480px) {
  .l-header__logo {
    width: 42.71vw;
    padding: 0 3.13vw;
  }
  .l-header__logo img {
    width: 32.92vw;
  }
  .l-header__group {
    width: calc(100% - 42.71vw);
    padding: 8px 3.13vw;
  }
  .l-header__user {
    width: 29.17vw;
  }
  .l-header__userName {
    font-size: 2.92vw;
  }
  .l-header__userName:before {
    font-size: 4.17vw;
  }
}

@media screen and (min-width: 768px) and (max-width: 1200px) {
  .l-header__logo {
    width: 160px;
    padding-right: 25px;
  }
  .l-header__group {
    width: calc(100% - 160px);
  }
}

@media screen and (min-width: 768px) {
  .l-header__nav li a {
    font-size: 14px;
  }
  .l-header__menu {
    width: calc(100% - 180px);
    height: 61px;
  }
  .u-none_pc {
    display: none !important;
  }
  .u-ta_center_pc {
    text-align: center !important;
  }
  .u-ta_left_pc {
    text-align: left !important;
  }
  .u-ta_right_pc {
    text-align: right !important;
  }
  .p-form__label {
    width: 320px;
    padding-left: 100px;
  }
  .p-form__content {
    width: calc(100% - 320px);
    padding-right: 100px;
  }
  .p-table-wrapper .stuck {
    left: 15px;
  }
  .p-table__hour.p-table__cell {
    width: 3vw;
  }
}

@media screen and (min-width: 768px) and (max-width: 1300px) {
  .l-header__nav li a {
    font-size: 13px;
  }
}

@media screen and (min-width: 768px) and (max-width: 1023px) {
  .l-header__nav li a {
    font-size: 1.17vw;
  }
}

@media screen and (min-width: 2700px) {
  table.dataTable > thead > tr > th, table.dataTable > thead > tr > td {
    padding: 8px 0.37vw;
  }
  table td, table th {
    padding: 8px 0.37vw;
  }
  table.dataTable tbody th, table.dataTable tbody td {
    padding: 8px 0.37vw;
  }
  .p-table__cell {
    width: 4.5vw;
  }
  .t-table thead th {
    width: 4.5vw !important;
  }
  .t-table thead th:first-child {
    width: 3vw !important;
  }
}

@media screen and (min-width: 2560px) {
  .l-header .l-header__inner {
    max-width: 50vw;
    margin: 0 auto 0 0;
  }
  .l-main .breadcrumb,
  .l-main .l-mainContent .l-inner .p-tool,
  .l-main .l-mainContent .l-inner .p-form {
    max-width: 50vw;
    margin-left: 0;
    margin-right: auto;
  }
  .l-main .l-mainContent .l-inner {
    position: relative;
  }
  .l-main .l-mainContent .l-inner #tab-reception,
  .l-main .l-mainContent .l-inner .tab-pane {
    max-width: 100vw;
    width: 100vw;
    margin-left: 0;
    position: relative;
    left: 0;
  }
  .l-main .l-mainContent .l-inner > div:not(.p-tool):not(.breadcrumb):not(.p-form) {
    max-width: 100vw;
    width: 100vw;
    position: relative;
    left: 0;
  }
  .p-table-wrapper {
    overflow-x: auto;
    overflow-y: auto;
  }
  .p-tool {
    flex-wrap: nowrap;
    gap: 15px;
  }
  .p-tool__list {
    flex-wrap: nowrap;
    gap: 15px;
  }
}

@media screen and (min-width: 3200px) {
  .l-header .l-header__inner {
    max-width: 1600px;
  }
  .l-main .breadcrumb,
  .l-main .l-mainContent .l-inner .p-tool,
  .l-main .l-mainContent .l-inner .p-form {
    max-width: 1600px;
  }
}

@media screen and (max-width: 2559px) {
  .l-header .l-header__inner,
  .l-main .breadcrumb,
  .l-main .l-mainContent .l-inner .p-tool,
  .l-main .l-mainContent .l-inner .p-form {
    max-width: 100%;
  }
}

@media screen and (max-width: 2699px) {
  .p-table__cell {
    min-width: 120px;
  }
  .t-table thead th {
    width: 160px !important;
  }
  .t-table thead th:first-child {
    width: 80px !important;
  }
  .p-table__content.-open {
    width: calc(100% - 120px);
  }
  .p-table._noleft .p-table__cell:first-child {
    width: 4vw;
  }
  .hidden-cell {
    width: 4vw;
  }
}
/*# sourceMappingURL=../../maps/assets/css/style.css.map */

/* container (BSC)
   ----------------------------------------------------------------- */

.l-wrap {
  width: 100%;
  height: 100vh;

  /* flex(縦) */
  display: flex;
  flex-direction: column;
  overflow: hidden;
}

.l-wrap:has([data-js_main_wrapper="container"]) {
  gap: 20px; /* ヘッダーとメインの間の余白 */
}

.l-wrap > .l-main {
  margin: 0 auto;
  height: 100%;

  /* flex(縦) */
  display: flex;
  flex-direction: column;
  overflow: hidden;
}

.l-wrap:has([data-js_main_wrapper="container"]) > .l-main {
  width: calc(100% - 20px); /* メインの左右の余白 */
  padding-bottom: 20px; /* メインの下の余白 */
}

.l-wrap:has([data-js_main_wrapper="container"]) > .l-main > .l-mainContent {
  height: 100%;

  /* flex(縦) */
  display: flex;
  flex-direction: column;
  overflow: hidden;
  gap: 20px; /* ブロックとブロックの余白 */
}

.l-wrap:has([data-js_main_wrapper="container"])
  > .l-main
  > .l-mainContent
  > .l-inner {
  /* flex(縦) */
  display: flex;
  flex-direction: column;
  gap: 20px; /* ブロックとブロックの余白 */
}

.l-wrap:has([data-js_main_wrapper="container"])
  > .l-main
  > .l-mainContent:not(:has(> .p-table, .c-table, .tab-pane))
  > .l-inner {
  height: 100%;
}

.l-wrap:has([data-js_main_wrapper="container"])
  > .l-main
  > .l-mainContent
  > .p-table,
.l-wrap:has([data-js_main_wrapper="container"])
  > .l-main
  > .l-mainContent
  > .l-inner:not(:has(#t-timetable))
  > *:is(.p-table, .c-table, .tab-pane) {
  height: 100%;

  /* flex(縦) */
  display: flex;
  flex-direction: column;
  gap: 20px; /* ブロックとブロックの余白 */
}

.l-wrap:has([data-js_main_wrapper="container"])
  > .l-main
  > .l-mainContent
  > .l-inner
  > .tab-pane:not(:has(* .p-table__inner)),
.l-wrap:has([data-js_main_wrapper="container"])
  > .l-main
  > .l-mainContent
  > .l-inner
  > .c-table,
.l-wrap:has([data-js_main_wrapper="container"]) .p-table > .p-table__inner {
  border: 1px solid #c1c1c1;
}

/* register系ページ */
.l-wrap:not(:has([data-js_main_wrapper="container"])) > .l-main {
  width: 100%;
  padding: 20px;
  overflow: auto;
}
.l-wrap:not(:has([data-js_main_wrapper="container"])) #ct_form {
  margin-top: 20px;
}
.l-wrap:not(:has([data-js_main_wrapper="container"])) .p-form + .p-form {
  margin-top: 20px;
}

/* js用 */
.l-wrap .l-main [data-js_main_wrapper="container"] {
  height: 100%;
}

.l-wrap .l-main [data-js_main_wrapper="container"] > [data-js_main_wrapper="minus_height"] {
  height: auto;
}
