@charset "UTF-8";
/* 領域確認用 */
/* * {
	outline: 1px solid magenta;
} */

@font-face {
  font-family: 'Material Icons';
  font-style: normal;
  font-weight: 400;
  src: url(../font/flUhRq6tzZclQEJ-Vdg-IuiaDsNc.woff2) format('woff2');
}

@font-face {
  font-family: "IBM Plex Sans";
  src: url(../font/IBMPlexSansJP-Regular.woff2) format("woff2");
}

/* 文字が上寄りになる問題の調整 */
h5, h6, dt {
  padding-top: 2px;
}

input[type="text"], input[type="password"], input[type="number"], input[type="file"], input[type="month"] {
  /* width: 100%; */
  font-size: .875rem;
  padding: 4px 10px;
}

/* type="number"の右側を消す */
input[type="number"]::-webkit-outer-spin-button,
input[type="number"]::-webkit-inner-spin-button {
  -webkit-appearance: none;
  margin: 0;
}
input[type="number"] {
  -moz-appearance:textfield;
}

button {
  white-space: nowrap;
}

textarea.form-control {
  font-size: 14px;
  padding: 4px 10px;
}

iframe {
  max-width: 100%;
}

.form-select {
  /* height: 30px; */
  /* padding: 3px 10px; */
  font-size: inherit;
  padding: .25rem 2.25rem .25rem .625rem;
}

table thead tr {
  text-align: center;
  vertical-align: middle;
}

input[type="checkbox"], input[type="radio"],
label[for],
select, option {
  cursor: pointer;
}

/* label[for] {
  display: inline-block;
  position: relative;
  padding: 0 .25em 0 1.25em;
}

label input[type="checkbox"],
label input[type="radio"] {
  position:absolute;
  top:0;
  bottom:0;
  left:0;
  margin:auto;
} */

p {
  margin-bottom: 0px;
}

dl {
  margin-bottom: 0;
}

dt {
  font-weight: normal;
  white-space: nowrap;
}

dd {
  margin-bottom: 0;
  /* text-align: center; */
  line-height: 1.8;
}

/* テーブル */

table {
  border-collapse: initial;
}

.text-danger {
  margin-bottom: 1rem;
}

.table {
  border: none;
  border-top: 1px solid;
  border-left: 1px solid;
  border-spacing: 0;
  border-radius: 5px;
  word-break: break-all;
  border-color: #dee2e6;
  margin-bottom: 0;
}

.table tr > *{
  border: none;
  border-right: 1px solid;
  border-bottom: 1px solid;
  border-color: #dee2e6;
}

.table thead tr:first-of-type > *:first-of-type {
  border-radius: 5px 0 0 0;
}

.table thead tr:first-of-type > *:last-of-type {
  border-radius: 0 5px 0 0;
}

.table thead tr:first-of-type > *:only-of-type {
  border-radius: 5px 5px 0 0;
}

/* .table.card-table tbody tr:first-of-type > *:first-of-type {
  border-radius: 5px 0 0 0!important;
}

.table.card-table tbody tr:first-of-type > *:last-of-type {
  border-radius: 0 5px 0 0!important;
}

.table.card-table tbody tr:first-of-type > *:only-of-type {
  border-radius: 5px 5px 0 0!important;
} */

.table:not( > thead > tr) tbody {
  background-color: red!important;
}

.table > :not(:last-child) > :last-child > * {
  border-bottom-color: inherit;
}

.table tbody tr:first-of-type > td:first-of-type,
.table tbody tr:first-of-type > th:first-of-type {
  border-radius: 5px 0 0 0;
}

.table tbody tr:first-of-type > td:last-of-type,
.table tbody tr:first-of-type > th:first-of-type + td:last-of-type {
  border-radius: 0 5px 0 0;
}

.table tbody tr:first-of-type > th:only-of-type,
.table tbody tr:only-of-type > th:only-of-type {
  border-radius: 5px 5px 0 0;
}

/* .table:has( > thead > *) tbody:has(tr + tr) tr:first-of-type > * { */
table:not(.card-table).table:has( > thead > *) > tbody:has(tr + tr) > tr:first-of-type > *:not(td[class*="last-td"]) {
  border-radius: initial!important;
}

.table tbody tr:last-of-type > td:first-of-type,
.table > tbody > tr:last-of-type > th {
  border-radius: 0 0 0 5px;
}

.table > tbody > tr:last-of-type > th:first-of-type + td:first-of-type {
  border-radius: 0 0 0 0;
}

.table tbody tr:last-of-type > td:last-of-type,
.table > tbody > tr:last-of-type > th:first-of-type + td:last-of-type {
  border-radius: 0 0 5px 0;
}

.table > tbody > tr:only-of-type > th:first-of-type {
  border-radius: 5px 0 0 5px!important;
}

table:not(.card-table) > tbody > tr:only-of-type > td:last-of-type {
  border-radius: 0 0px 5px 0!important;
}

table:not(.card-table).table tbody:not(> tr td[class*="last-td"]) tr:last-of-type > td:only-of-type {
  border-radius: 0 0 5px 5px!important;
}

table tbody tr:last-of-type td.last-td {
  border-radius: 0 0 5px 5px!important;
}

table tbody tr:last-of-type td.last-td-left {
  border-radius: 0 0 0 5px!important;
}

table tbody tr:last-of-type td.last-td-right {
  border-radius: 0 0 5px 0!important;
}

.table > tbody > tr:last-of-type > th + td:only-of-type {
  border-radius: 0 5px 5px 0!important;
}

/* table:not(.card-table) > tbody:not(> tr th) > tr:only-of-type > td:only-of-type {
  border-radius: 0 0 5px 5px!important;
} */

/* データテーブル */

div.dataTables_wrapper div.dataTables_length {
  text-align: left!important;
}

div.dataTables_wrapper div.dataTables_filter {
  text-align: right!important;
}

div.dataTables_wrapper div.dataTables_filter input {
  width: calc(100% - 69px);
}

.modal.sp div.dataTables_wrapper div.dataTables_filter label {
  text-align: right;
}

.modal.sp div.dataTables_wrapper div.dataTables_filter input {
  width: calc(100% - 89px);
}

table.dataTable:not(.card-table) > tbody > tr > td.dataTables_empty {
  border-radius: 0 0 5px 5px!important;
}

/* ボタン */

.btn:not(.question-form button.btn-danger, .question-form button.btn-next, .question-form button.btn-secondary) {
  padding-left: 2.7rem;
  position: relative;
  line-height: 1rem;
  box-shadow: 1px 2px 2px 0 rgba(0, 0, 0, .3);
  font-size: .875rem;
}

.btn > i {
  left: 0;
  border-top-left-radius: inherit;
  border-bottom-left-radius: inherit;
  margin-right: 0.75rem;
}

.btn > i {
  display: flex;
  align-items: center;
  position: absolute;
  z-index: 5;
  top: 0;
  border-radius: 0;
  padding: 0 0.4rem;
  height: 100%;
}

.btn-icons {
  font-family: 'Material Icons';
  font-weight: normal;
  font-style: normal;
  font-size: 20px;
  line-height: 1;
  letter-spacing: normal;
  text-transform: none;
  display: inline-block;
  white-space: nowrap;
  word-wrap: normal;
  direction: ltr;
  font-feature-settings: "liga";
  -webkit-font-feature-settings: 'liga';
  -webkit-font-smoothing: antialiased;
}

.btn-search {
  color: #fff;
  background-color: #fff;
  border-color: #17a2b8;
}

.btn-search span {
  color: #404040;
}

.btn-search > i::before {
  background-color: #17a2b8;
  content: "";
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  z-index: -10;
  border-radius: 0.17rem 0 0 0.17rem;
}

.btn-search:hover {
  color: #fff;
  background-color: #effafc;
  border-color: #0c5b68;
}

.btn-cancel {
  color: #404040;
  /* background-color: transparent; */
  background-color: #FFFFFF;
  background-image: none;
  border-color: rgba(128, 128, 128, 0.5);
}

.btn-cancel > i::before {
  background-color: rgba(128, 128, 128, 0.5);
  content: "";
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  z-index: -10;
  border-radius: 0.18rem 0 0 0.18rem;
}

.btn-cancel:hover {
  color: #404040;
  background-color: rgba(224, 224, 224, 0.2);
  border-color: rgba(122, 122, 122, 0.9);
}

.btn-regist {
  color: #fff;
  background-color: #fff;
  border-color: #4cae4c;
}

.btn-regist span {
  color: #404040;
}

.btn-regist > i::before {
  /* background-color: #5cb85c; */
  background-color: #4cae4c;
  content: "";
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  z-index: -10;
  border-radius: 0.17rem 0 0 0.17rem;
}

.btn-regist:hover {
  color: #fff;
  background-color: #f2fff2;
  border-color: #3c813c;
}

.btn-edit {
  color: #fff;
  background-color: #fff;
  border-color: #0f9ada;
}

.btn-edit span {
  color: #404040;
}

.btn-edit > i::before {
  /* background-color: #03A9F4; */
  background-color: #0f9ada;
  content: "";
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  z-index: -10;
  border-radius: 0.17rem 0 0 0.17rem;
}

.btn-edit:hover {
  color: #fff;
  background-color: #cbecfc;
  border-color: #0b6e9c;
}

.btn-delete {
  color: #fff;
  background-color: #fff;
  border-color: #ff2424;
}

.btn-delete span {
  color: #404040;
}

.btn-delete > i::before {
  background-color: #ff2424;
  content: "";
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  z-index: -10;
  border-radius: 0.17rem 0 0 0.17rem;
}

.btn-delete:hover {
  color: #fff;
  background-color: #ffecec;
  border-color: #8a1212;
}

.btn-save {
  color: #fff;
  background-color: #03A9F4;
  border-color: #0f9ada;
}

.btn-save > i::before {
  /* background-color: rgba(6, 7, 8, 0.3); */
  background-color: #0f9ada;
  content: "";
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  z-index: -10;
  border-radius: 0.17rem 0 0 0.17rem;
}

.btn-save:hover {
  color: #fff;
  background-color: #0f9ada;
  border-color: #0f9ada;
}

.btn-next {
  color: #fff;
  background-color: #f6ab00;
  border-color: #dd9f10;
  width: 130px;
  /* margin-left: 365px; */
  padding-right: 2.7rem;
  position: relative;
  box-shadow: 1px 2px 2px 0 rgba(0, 0, 0, .3);
}

.btn-next > i::after {
  /* background-color: rgba(6, 7, 8, 0.3); */
  background-color: #fff;
  content: "";
  /* width: 100%;
  height: 100%; */
  width: 20px;
  height: 20px;

  position: absolute;
  /* top: 0; */
  left: 6px;
  z-index: -10;
  border-radius: 50%;
}

.btn-next > i {
  color: #f6ab00;
  left: 0;
  border-top-left-radius: inherit;
  border-bottom-left-radius: inherit;
  margin-right: 0.75rem;
}

.btn-next > i {
  display: flex;
  align-items: center;
  position: absolute;
  z-index: 5;
  top: 0;
  left: 85px;
  border-radius: 0;
  padding: 0 0.4rem;
  height: 100%;
}

.btn-next:hover {
  color: #fff;
  background-color: #dd9f10;
  border-color: #dd9f10;
}

.btn-customer {
    color: #fff;
    background-color: #fff;
    border-color: #cb5f5f;
  }

  .btn-customer span {
    color: #404040;
  }

  .btn-customer > i::before {
    background-color: #cb5f5f;
    content: "";
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    z-index: -10;
    border-radius: 0.17rem 0 0 0.17rem;
  }

  .btn-customer:hover {
    color: #fff;
    background-color: #fbebeb;
    border-color: #cb5f5f;
  }

.btn-image {
    display: inline-block;
    font-weight: 400;
    line-height: 1.5;
    color: #212529;
    text-align: center;
    text-decoration: none;
    vertical-align: middle;
    cursor: pointer;
    -webkit-user-select: none;
    -moz-user-select: none;
    user-select: none;
    background-color: transparent;
    border: 1px solid transparent;
    border-radius: .25rem;
    transition: color .15s ease-in-out, background-color .15s ease-in-out, border-color .15s ease-in-out, box-shadow .15s ease-in-out;
    position: relative;
    box-shadow: 1px 2px 2px 0 rgba(0, 0, 0, .3);
    border-color: #c6c6c6;
}

.form-check-label {
  line-height: 1.7em;
  /* padding-right: 10px; */
}

.pagination-center .pagination {
  justify-content: center!important;
}
