@charset "UTF-8";
@media (min-width: 1024.1px) {
  [data-layout=horizontal] .layout-width,
  [data-layout=horizontal] .container-fluid {
    max-width: 100%;
    margin: 0 auto;
  }
  [data-layout=horizontal] .topnav-hamburger {
    visibility: hidden;
  }
}
.position-sticky.pst-0 {
  top: 0;
}
.position-sticky.psb-0 {
  bottom: 0;
}

[data-layout=horizontal] .page-content {
  padding-bottom: 0;
}

.table-card {
  margin: 0rem -1rem -1rem -1rem;
}
.table-card + .table-card {
  margin: -1rem -1rem -1rem -1rem;
}
.table-card td.excellike, .table-card th.excellike {
  padding: 0;
  position: relative;
}
.table-card td.excellike .input-group, .table-card th.excellike .input-group {
  position: absolute;
  top: 0px;
  height: 100%;
}
.table-card td.excellike .input-group input, .table-card th.excellike .input-group input {
  width: auto;
  position: relative;
}
.table-card td.excellike input, .table-card th.excellike input {
  padding: 0 0.5rem;
  border: none;
  width: 100%;
  background-color: transparent;
  position: absolute;
  top: 0px;
  text-align: right;
  height: calc(100% + 0px);
}
.table-card td.excellike input:focus, .table-card th.excellike input:focus {
  outline: 0;
}
.table-card th.excellike input {
  padding: 0 0.5rem;
  height: 100%;
  border: none;
  width: 100%;
  background-color: transparent;
  position: absolute;
  top: 0px;
  height: 100%;
  color: #fff;
}
.table-card th.excellike input:focus {
  outline: 0;
}
.table-card td[contenteditable=true]:focus {
  outline: none;
  border: solid 1px #67b173;
}
.table-card tr[draggable=true] {
  pointer-events: none;
}
.table-card tr[draggable=true] td {
  pointer-events: all;
}

td.excellike {
  padding: 0 !important;
  height: 100%;
}
td.excellike input {
  height: 100%;
  border: none;
  width: 100%;
  box-sizing: border-box;
}
td.excellike input:focus {
  outline: 0;
}
td.excellike input:invalid {
  border-color: var(--bs-form-invalid-border-color);
  padding-right: calc(1.5em + 0.75rem);
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12' width='12' height='12' fill='none' stroke='%23dc3545'%3e%3ccircle cx='6' cy='6' r='4.5'/%3e%3cpath stroke-linejoin='round' d='M5.8 3.6h.4L6 6.5z'/%3e%3ccircle cx='6' cy='8.2' r='.6' fill='%23dc3545' stroke='none'/%3e%3c/svg%3e");
  background-repeat: no-repeat;
  background-position: right calc(0.375em + 0.1875rem) center;
  background-size: calc(0.75em + 0.375rem) calc(0.75em + 0.375rem);
}

.table.table-fixed {
  position: relative;
  table-layout: fixed;
  border-collapse: separate;
  border-spacing: 0px;
}
.table.table-fixed th, .table.table-fixed td {
  white-space: nowrap;
  overflow: auto;
  text-overflow: ellipsis;
  width: 140px;
  vertical-align: middle;
}
.table.table-fixed th.action, .table.table-fixed td.action {
  width: 50px;
  min-width: 50px;
  text-align: center;
}
.table.table-fixed th.actionbtnset, .table.table-fixed td.actionbtnset {
  width: 140px;
  min-width: 140px;
}
.table.table-fixed th.name, .table.table-fixed td.name {
  width: 220px;
  min-width: 220px;
  max-width: 100%;
}
.table.table-fixed th .badge, .table.table-fixed td .badge {
  color: #ddd;
  background-color: RGBA(var(--vz-light-rgb), var(--vz-bg-opacity, 1)) !important;
}
.table.table-fixed th .badge.status-ok, .table.table-fixed td .badge.status-ok {
  color: #fff;
  background-color: RGBA(103, 177, 115, var(--vz-bg-opacity, 1)) !important;
}
.table.table-fixed th .badge.status-warning, .table.table-fixed td .badge.status-warning {
  color: #fff;
  background-color: RGBA(255, 200, 75, var(--vz-bg-opacity, 1)) !important;
}
.table.table-fixed th .badge.status-error, .table.table-fixed td .badge.status-error {
  color: #fff;
  background-color: RGBA(241, 113, 113, var(--vz-bg-opacity, 1)) !important;
}
.table.table-fixed th.datecell, .table.table-fixed td.datecell {
  width: 130px;
  min-width: 130px;
}
.table.table-fixed th.colspancell3, .table.table-fixed td.colspancell3 {
  width: 390px;
  min-width: 390px;
}
.table.table-fixed th.colspancell2, .table.table-fixed td.colspancell2 {
  width: 260px;
  min-width: 260px;
}
.table.table-fixed .num {
  text-align: right;
}
.table.table-fixed .num.bold {
  font-weight: 700;
}
.table.table-fixed thead {
  position: relative;
}
.table.table-fixed thead th {
  position: sticky;
  top: 0;
  z-index: 10;
  cursor: pointer;
  white-space: initial;
  font-size: 12px;
  vertical-align: baseline;
  padding: 0.3rem 0.5rem;
  line-height: 1.3em;
}
.table.table-fixed thead th.sortable::after {
  font-family: "Material Design Icons";
  height: 100%;
  width: 24px;
  content: "\f04ba";
  display: flex;
  align-items: center;
  justify-content: center;
  position: absolute;
  right: 0;
  top: 0;
  color: rgb(173, 181, 189);
  font-size: 14px;
}
.table.table-fixed thead th.sortable.sort_up::after {
  font-family: "Material Design Icons";
  height: 100%;
  content: "\f04bd";
  display: flex;
  align-items: center;
  justify-content: center;
  position: absolute;
  right: 0;
  top: 0;
  color: rgb(173, 181, 189);
  font-size: 14px;
}
.table.table-fixed thead th.sortable.sort_down::after {
  font-family: "Material Design Icons";
  height: 100%;
  content: "\f04bc";
  display: flex;
  align-items: center;
  justify-content: center;
  position: absolute;
  right: 0;
  top: 0;
  color: rgb(173, 181, 189);
  font-size: 14px;
}
.table.table-fixed thead th:first-child {
  position: sticky;
  z-index: 30;
  left: 0;
}
.table.table-fixed thead + thead th {
  z-index: 9;
}
.table.table-fixed tbody {
  position: relative;
}
.table.table-fixed tbody .focused-row th, .table.table-fixed tbody .focused-row td {
  border-bottom: 1px solid #67b173; /* 境界線のスタイルを設定 */
}
.table.table-fixed tbody th {
  position: sticky;
  left: 0;
  z-index: 9;
  --vz-table-bg-type: #fff;
}
.table.table-fixed tbody tr:nth-of-type(2n+1) > * {
  --vz-table-bg-type: #fbfbfb;
}
.table.table-fixed tfoot {
  position: sticky;
  bottom: 0;
  z-index: 20;
}
.table.table-fixed tfoot th, .table.table-fixed tfoot td {
  color: #fff;
}
.table.table-fixed tfoot tr.total th, .table.table-fixed tfoot tr.total td {
  background-color: #63aed4;
}
.table.table-fixed tfoot tr.total + tr th, .table.table-fixed tfoot tr.total + tr td {
  background-color: #58a6cd;
}
.table.table-fixed tfoot tr.total + tr + tr th, .table.table-fixed tfoot tr.total + tr + tr td {
  background-color: #63aed4;
}
.table.table-fixed tfoot tr.taxtotal th, .table.table-fixed tfoot tr.taxtotal td {
  background-color: #464a50;
}
.table.table-fixed tfoot tr.taxtotal + tr th, .table.table-fixed tfoot tr.taxtotal + tr td {
  background-color: #42464d;
}
.table.table-fixed tfoot tr.taxtotal + tr + tr th, .table.table-fixed tfoot tr.taxtotal + tr + tr td {
  background-color: #464a50;
}
.table.table-fixed tfoot th:first-child {
  position: sticky;
  z-index: 30;
  left: 0;
}

.table-height-fixed {
  height: calc(100vh - 255px);
  max-height: calc(100vh - 255px);
  overflow: scroll;
}
@media (max-width: 1024.1px) {
  .table-height-fixed {
    height: auto;
    max-height: initial;
  }
}

.form-control {
  padding: 0.3rem 0.6rem;
}
.form-control + .password-addon {
  padding: 0.3rem 0.6rem;
}
.form-control.error {
  border: 1px solid #f17171;
  background-color: #fff3f3;
}

.form-select {
  padding: 0.3rem 0.6rem;
}

.input-group-text {
  padding: 0.3rem 0.3rem;
}

.table > :not(caption) > * > * {
  padding: 0.15rem 0.2rem;
  padding-right: 0.3rem;
}

.table-card th:first-child,
.table-card td:first-child {
  padding-left: 0.5rem;
}

.table-card th:last-child,
.table-card td:last-child {
  padding-right: 0.5rem;
}

.dropzone {
  border-style: dashed;
}
.dragging {
  opacity: 0.5;
}

.btn.btn-icon {
  padding: 0.1rem;
  max-width: 40px;
}

.btn.drag-handle {
  padding: 0.1rem;
  width: 100%;
}

.title-tablecaption {
  padding: 0.3rem 0.3rem;
  font-size: 16px;
}

.monthlytotal .input-group {
  width: 50%;
  margin-right: 0.3rem;
}

.card-header .d-flex .form-select {
  width: 50%;
  margin-right: 10px;
}
.card-header .d-flex .card {
  margin-bottom: 0;
  margin-right: 1rem;
}
.card-header .d-flex .card .card-body {
  padding: 0.1rem 0.5rem;
  vertical-align: baseline;
}

sub {
  vertical-align: top;
}

.FinAchRate {
  display: flex;
  align-items: center;
  margin-right: 0.3rem;
  box-shadow: 0 1px 2px rgba(56, 65, 74, 0.15);
  border-radius: 4px;
  padding: 0.1rem 0.5rem 0.1rem 70px;
  position: relative;
}
.FinAchRate::before {
  display: flex;
  align-items: center;
  justify-content: center;
  position: absolute;
  width: 60px;
  left: 0;
  top: 0;
  height: 100%;
  content: "前年";
  font-size: 14px;
  padding: 0 0.8em;
  border-right: 1px solid #ddd;
  font-weight: normal;
  color: #000;
}
.FinAchRate h4 {
  margin-bottom: 0;
  margin-right: 0.5em;
}
.FinAchRate h4 span {
  font-size: 12px;
}

.loginname {
  margin-left: 1rem;
  padding: 0.3em 0.5em;
  background-color: #ddd;
  border: 1px solid #ccc;
  border-radius: 6px;
}

.displaynone {
  display: none !important;
}

.table td {
  position: relative;
}
.recordTable .table tbody tr th, .recordTable .table tbody tr td {
  padding: 0.5em 1em;
}
.recordTable .table tbody tr th {
  text-align: center;
}
.recordTable .table tbody tr td span {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  height: 100%;
}

[data-layout=horizontal] .page-title-box {
  padding: 0.1rem 0 1rem 0;
}
[data-layout=horizontal] .navbar-menu {
  margin-top: 50px;
}
[data-layout=horizontal] .header-item {
  height: 50px;
}

.navbar-header {
  height: 50px;
}

@media (min-width: 1024.1px) {
  [data-layout=horizontal] .page-content {
    margin-top: 50px;
    padding: calc(45px + 1.5rem) 0.75rem 0px 0.75rem;
  }
}
@media (max-width: 1024.1px) {
  [data-layout=horizontal] .page-content {
    margin-top: 50px;
    padding: calc(0px + 1.2rem) 0.75rem 0px 0.75rem;
  }
}
[data-layout=horizontal] .navbar-menu .navbar-nav .nav-link {
  padding: 0.35rem 1.5rem;
}

@media (max-width: 1024.1px) {
  .storeMenu .storeMenuBody {
    margin-bottom: 10px;
  }
}
.storeMenu .storeMenuBody .form-select {
  margin-right: 3px;
}
@media (max-width: 1024.1px) {
  .storeMenu .storeMenuBody .form-select {
    margin-right: 0px;
    margin-bottom: 3px;
  }
}

#element_summary .goal {
  display: flex;
  align-items: center;
  box-shadow: 0 1px 2px rgba(56, 65, 74, 0.15);
  border-radius: 4px;
  margin-right: 5px;
  padding: 0.1rem 0.5rem 0.1rem 70px;
  position: relative;
  height: 39px;
}
@media (max-width: 1024.1px) {
  #element_summary .goal {
    margin-right: 0px;
    margin-bottom: 5px;
  }
}
#element_summary .goal::before {
  display: flex;
  align-items: center;
  justify-content: center;
  position: absolute;
  width: 60px;
  left: 0;
  top: 0;
  height: 100%;
  content: "目標";
  font-size: 14px;
  padding: 0 0.8em;
  border-right: 1px solid #ddd;
  font-weight: normal;
  color: #000;
}
#element_summary .goal h4 {
  margin-bottom: 0;
  margin-right: 0.5em;
}
#element_summary .goal h4 span {
  font-size: 12px;
}