@charset "UTF-8";
/* フォントサイズ
-------------------------------------------*/
html {
  font-size: 62.5%;
}

/* body
-------------------------------------------*/
body {
  text-align: left;
  line-height: 1.8;
  letter-spacing: 0.05em;
  color: #333333;
  width: 100%;
  font-size: 1.5rem;
  font-family: Arial, Meiryo;
  background: #fff8ef;
}

/* コンテンツ幅
-------------------------------------------*/
.inner {
  width: 100%;
  margin: 0 auto;
  padding: 0 25px;
}

body {
  min-width: 1180px;
}

.main .inner {
  max-width: 1500px;
}

/*------------------------------------
リンク 
------------------------------------*/
a {
  color: #333333;
  text-decoration: none;
}

/* ホバーアクション */
.hover {
  -webkit-transition: all 0.4s ease;
  transition: all 0.4s ease;
}

.hover:hover {
  opacity: 0.6 !important;
}

/*------------------------------------
スマホ　非表示
------------------------------------*/
@media screen and (min-width: 992px) {
  .sp-show {
    display: none !important;
  }
}

/*------------------------------------
PC　非表示
------------------------------------*/
@media screen and (max-width: 991px) {
  .pc-show {
    display: none !important;
  }
}

.header {
  background: #4d4d4d;
  padding: 10px 0;
  color: #fff;
}

.header-wrap {
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.header-links {
  padding-left: 200px;
  display: flex;
  align-items: center;
}

.header-links ul {
  display: flex;
}

.header-links ul li {
  display: flex;
}

.header-links ul li + li {
  margin-left: 10px;
}

.header-links ul li a {
  height: 40px;
  width: 30px;
  position: relative;
  display: block;
}

.header-links ul li a + a {
  margin-left: 5px;
}

.header-links ul li a.prev01::before {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  margin: auto;
  right: 0;
  width: 22px;
  height: 22px;
  border-top: 5px solid #fecf61;
  border-right: 5px solid #fecf61;
  -webkit-transform: rotate(-135deg);
  transform: rotate(-135deg);
}

.header-links ul li a.prev02::before {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  margin: auto;
  left: 0;
  right: 0;
  width: 0;
  height: 0;
  border-style: solid;
  border-color: transparent #fecf61 transparent transparent;
  border-width: 16px 16px 16px 0px;
}

.header-links ul li a.next02::before {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  margin: auto;
  left: 0;
  right: 0;
  width: 0;
  height: 0;
  border-style: solid;
  border-color: transparent transparent transparent #fecf61;
  border-width: 16px 0px 16px 16px;
}

.header-links ul li a.next01::before {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  margin: auto;
  left: 0;
  width: 22px;
  height: 22px;
  border-top: 5px solid #fecf61;
  border-right: 5px solid #fecf61;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}

.header-links-update {
  margin-left: 50px;
}

.header-links-update button {
  background: #fecf61;
  border: none;
  outline: none;
  height: 40px;
  line-height: 40px;
  padding: 0 15px;
  cursor: pointer;
  color: #333;
}

.header-links-update button:hover {
  background: #ffde85;
}

.header-left {
  display: flex;
  align-items: center;
}

.header-title {
  color: #fff;
  font-size: 3rem;
  position: relative;
  padding-left: 35px;
  line-height: 1.4;
}

.header-title::before {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  margin: auto;
  left: 0;
  width: 20px;
  height: 20px;
  border-top: 5px solid #fff;
  border-right: 5px solid #fff;
  -webkit-transform: rotate(-135deg);
  transform: rotate(-135deg);
}

.header a.header-title:hover {
  text-decoration: underline;
}

.header-right {
  display: flex;
  justify-content: flex-end;
  position: relative;
  width: 35%;
}

.header-right .js_toggle {
  display: flex;
  position: relative;
  padding-right: 40px;
  cursor: pointer;
  align-items: center;
}

.header-right .js_toggle::after {
  position: absolute;
  top: 50%;
  transform: translate(0, -50%);
  right: 15px;
  width: 0;
  height: 0;
  padding: 0;
  content: "";
  border-left: 8px solid transparent;
  border-right: 8px solid transparent;
  border-top: 10px solid #fff;
  pointer-events: none;
}

.header-right .js_toggle > div:first-child {
  padding-right: 15px;
}

.header-right .select {
  position: relative;
  overflow: hidden;
  text-align: center;
}

.header-right .select::after {
  position: absolute;
  top: 50%;
  transform: translate(0, -50%);
  right: 15px;
  width: 0;
  height: 0;
  padding: 0;
  content: "";
  border-left: 8px solid transparent;
  border-right: 8px solid transparent;
  border-top: 10px solid #fff;
  pointer-events: none;
}

.header-right .select select {
  display: block;
  width: 100%;
  height: 100%;
  cursor: pointer;
  text-overflow: ellipsis;
  border: none;
  outline: none;
  background: transparent;
  background-image: none;
  -webkit-appearance: none;
  appearance: none;
  padding: 0 40px 0 15px;
  text-align: left;
  font-size: 1.6rem;
  color: #fff;
}

.header-right .select option {
  color: #333;
  background: #fff;
}

.header .hidebox {
  opacity: 0;
  position: absolute;
  right: 0;
  top: calc(100% + 20px);
  z-index: 2;
  background: #fff;
  min-width: 200px;
  transition: all 0.2s ease;
  pointer-events: none;
}

.header .hidebox.active {
  opacity: 1;
  pointer-events: all;
}

.header .hidebox ul {
  padding: 15px;
  position: relative;
}

.header .hidebox ul::after {
  content: "";
  position: absolute;
  top: -14px;
  right: 15px;
  margin: auto;
  width: 0;
  height: 0;
  border-style: solid;
  border-color: transparent transparent #fff transparent;
  border-width: 0px 12px 14px 12px;
}

.header .hidebox ul li {
  border-bottom: 1px solid #ccc;
  min-height: 35px;
  min-height: 45px;
}

.header .hidebox ul li:first-child {
  border-top: 1px solid #ccc;
}

.header .hidebox ul li button {
  color: #333;
  padding: 8px 10px;
  width: 100%;
  -webkit-transition: all 0.2s ease;
  transition: all 0.2s ease;
}

.header .hidebox ul li button:hover {
  background: #fff8ef;
}

.header-mode {
  display: none;
  padding-left: 200px;
  align-items: center;
}

.header-mode > span {
  position: relative;
  color: #fdd264;
  padding: 0 35px;
  font-weight: 700;
  font-size: 1.6rem;
}

.header-mode > span::before {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  margin: auto;
  width: 20px;
  height: 2px;
  background: #fdd264;
}

.header-mode > span::after {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  right: 0;
  margin: auto;
  width: 20px;
  height: 2px;
  background: #fdd264;
}

.header-btns {
  display: none;
}

.header-btns button {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100px;
  height: 40px;
  border: 1px solid #fff;
  background: #fbd261;
  text-align: center;
  font-weight: 600;
  color: #333;
  position: relative;
  -webkit-transition: all 0.4s ease;
  transition: all 0.4s ease;
}

.header-btns button + button {
  margin-left: 10px;
}

.header-btns button:hover {
  background: #ffe9b3;
}

.header-btns button.edit-del {
  background: #ff7038;
}

.header-btns button.edit-del:hover {
  background: #ffa07a;
}

.page-404 .header-links,
.page-dealassign-list .header-links,
.page-work-list .header-links,
.page-private-list .header-links,
.page-facility-list .header-links,
.page-staff-list .header-links,
.page-menu .header-links,
.page-deal-list .header-links {
  display: none;
}

.etit-btn-area {
  display: none;
}

.etit-btn-area.--question .hidebox {
  opacity: 0;
  position: absolute;
  right: -8px;
  top: calc(100% + 20px);
  z-index: 2;
  background: #fff;
  width: 350px;
  transition: all 0.2s ease;
  pointer-events: none;
}

.etit-btn-area.--question .hidebox.active {
  opacity: 1;
  pointer-events: all;
}

.etit-btn-area.--question .hidebox .txt {
  position: relative;
  background: #f6f6f6;
  padding: 20px 20px 20px 20px;
  border: 1px solid #ccc;
  width: 100%;
  min-height: 180px;
  margin: 0;
}

.etit-btn-area.--question .hidebox .txt::after {
  content: "";
  position: absolute;
  top: -12px;
  right: 11px;
  margin: auto;
  width: 0;
  height: 0;
  border-style: solid;
  border-color: transparent transparent #f6f6f6 transparent;
  border-width: 0px 10px 12px 10px;
}

.etit-btn-area.--question .hidebox .txt::before {
  content: "";
  position: absolute;
  top: -14px;
  right: 10px;
  margin: auto;
  width: 0;
  height: 0;
  border-style: solid;
  border-color: transparent transparent #ccc transparent;
  border-width: 0px 11px 13px 11px;
}

.etit-btn-area.--question .hidebox .txt > div {
  text-align: left;
}

.etit-btn-area.--question .hidebox .txt > p {
  text-align: left;
}

.etit-btn-area.--question .hidebox .txt ul {
  display: flex;
}

.etit-btn-area.--question .hidebox .txt ul li > div {
  display: flex;
}

.etit-btn-area.--question .hidebox .txt ul li > div span:nth-child(1) {
  width: 5.5em;
}

.etit-btn-area.--question .js_toggle {
  margin-left: 15px;
  width: 25px;
  height: 25px;
  cursor: pointer;
}

body.edit .etit-btn-area, body.page-login .etit-btn-area {
  display: block;
}

body.edit .header-title, body.page-login .header-title {
  text-decoration: none !important;
  pointer-events: none;
}

body.edit .header-title::before, body.page-login .header-title::before {
  content: none;
}

body.edit .header-links, body.page-login .header-links {
  display: none;
}

body.edit .header-mode, body.page-login .header-mode {
  display: flex;
}

body.edit .header-btns, body.page-login .header-btns {
  display: flex;
}

body.edit .header-right .js_toggle, body.page-login .header-right .js_toggle {
  pointer-events: none;
  padding: 0 0 0 20px;
}

body.edit .header-right .js_toggle::after, body.page-login .header-right .js_toggle::after {
  content: none;
}

body.edit .input-text,
body.edit .select, body.page-login .input-text,
body.edit .button,
body.page-login .select {
  background: #fff;
  pointer-events: all;
}

 body.edit .edit-div{
    display: block;
 }

body.edit .input-text:required,
body.edit .radio-list.required,
body.edit .select:required, body.page-login .input-text:required,
body.page-login .select:required {
  background: #fffca9;
}

body.edit .input-chk,
body.edit .input-radio, body.page-login .input-chk,
body.page-login .input-radio {
  pointer-events: all;
}

body.edit .input-chk div span::before,
body.edit .input-radio div span::before, body.page-login .input-chk div span::before,
body.page-login .input-radio div span::before {
  background-color: #fff;
}

.btn-edit {
  display: flex;
  align-items: center;
  justify-content: center;
  min-width: 200px;
  height: 40px;
  border: 1px solid #ccc;
  background: #fbd261;
  text-align: center;
  font-weight: 600;
  color: #333;
  position: relative;
  -webkit-transition: all 0.4s ease;
  transition: all 0.4s ease;
  position: relative;
}

.btn-edit::after {
  content: "";
  position: absolute;
  top: -3px;
  left: -3px;
  margin: auto;
  width: calc(100% + 6px);
  height: calc(100% + 6px);
  border: 1px solid #ccc;
}

.btn-edit:hover {
  background: #ffe9b3;
}

.footer {
  padding-bottom: 10px;
}

.footer-time {
  text-align: right;
  display: flex;
  align-items: center;
  justify-content: flex-end;
}

.footer-time li {
  font-size: 1.4rem;
}

.footer-time li + li {
  margin-left: 15px;
}

table th.center,
table td.center {
  text-align: center !important;
}

table .edit_hidden {
display: none
}
table .edit_hidden.is-visible {
display: inline
}

table th.right,
table td.right {
  text-align: right !important;
}

table th .input-chk,
table td .input-chk {
  margin: auto;
}

.master-list {
  position: relative;
}

.master-list::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  margin: auto;
  height: 55px;
  width: 100%;
  background: #4d4d4d;
}

.master-list table {
  margin: 0;
  padding: 0px;
  width: 100%;
  table-layout: fixed;
  word-wrap: break-word;
  white-space: normal;
  position: relative;
  z-index: 1;
}

.master-list table th,
.master-list table td {
  vertical-align: middle;
  border-bottom: 1px solid #ddd;
  padding: 15px 5px;
  line-height: 1.4;
}

.master-list table th {
  background: #4d4d4d;
  text-align: left;
  color: #fff;
  font-weight: 400;
  padding: 0 10px 5px;
  height: 55px;
  vertical-align: bottom;
  position: sticky;
  top: 0;
  z-index: 2;
}

.master-list table th.center {
  padding: 0 5px 5px;
}

.master-list table .clickable {
  cursor: pointer;
  background: #fff8ef;
  -webkit-transition: all 0.2s ease;
  transition: all 0.2s ease;
}

.master-list table .clickable:hover {
  background: #e6f0fa;
  /* ホバー時の色 */
}

.master-list table td.td-arrow {
  padding-left: 50px;
}

.master-list table td.td-arrow div {
  position: relative;
}

.master-list table td.td-arrow div::before {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  margin: auto;
  left: 0;
  width: 16px;
  height: 16px;
  border-top: 2px solid #333;
  border-right: 2px solid #333;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}

.master-detail {
  padding: 50px 0 100px;
}

.master-detail-row {
  width: 1000px;
}

.master-detail-row + .master-detail-row {
  margin-top: 20px;
}

.master-detail-row.--auto {
  width: auto;
}

.master-detail-row.--start dl {
  place-items: start left;
}

.master-detail-row.--start dl dt {
  padding-top: 5px;
}

.master-detail-row dl {
  display: grid;
  grid-template-columns: 180px 1fr;
  gap: 20px;
  place-items: center left;
}

.master-detail-row dl + dl {
  margin-top: 20px;
}

.master-detail-row dl dt {
  font-weight: 400;
  text-align: right;
  width: 100%;
}

.master-detail-row dl dt.--question {
  position: relative;
  display: flex;
  justify-content: flex-end;
}

.master-detail-row dl dt.--question > div {
  position: relative;
}

.master-detail-row dl dt.--question button {
  display: block;
  position: relative;
  border: none;
  outline: none;
  cursor: pointer;
  padding-left: 35px;
}

.master-detail-row dl dt.--question button::after {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  margin: auto;
  background: url(../img/icon_question.svg) left center no-repeat;
  background-size: contain;
  width: 25px;
  height: 25px;
}

.master-detail-row dl dt.--question .hidebox {
  opacity: 0;
  position: absolute;
  left: -10px;
  top: calc(100% + 20px);
  z-index: 2;
  transition: all 0.2s ease;
  pointer-events: none;
}

.master-detail-row dl dt.--question .hidebox.active {
  pointer-events: all;
  opacity: 1;
}

.master-detail-row dl dt.--question .hidebox .txt {
  position: relative;
  background: #f6f6f6;
  padding: 20px 20px 20px 20px;
  border: 1px solid #ccc;
  min-width: 350px;
  min-height: 180px;
}

.master-detail-row dl dt.--question .hidebox .txt::after {
  content: "";
  position: absolute;
  top: -12px;
  left: 11px;
  margin: auto;
  width: 0;
  height: 0;
  border-style: solid;
  border-color: transparent transparent #f6f6f6 transparent;
  border-width: 0px 10px 12px 10px;
}

.master-detail-row dl dt.--question .hidebox .txt::before {
  content: "";
  position: absolute;
  top: -14px;
  left: 10px;
  margin: auto;
  width: 0;
  height: 0;
  border-style: solid;
  border-color: transparent transparent #ccc transparent;
  border-width: 0px 11px 13px 11px;
}

.master-detail-row dl dt.--question .hidebox .txt > div {
  text-align: left;
}

.master-detail-row dl dt.--question .hidebox .txt > p {
  text-align: left;
}

.master-detail-row dl dd {
  width: 100%;
}

.master-detail-row dl dd.dd-flex {
  display: flex;
  align-items: center;
}

.master-detail-row dl dd.dd-flex .txt {
  margin-left: 15px;
  line-height: 1.5;
}

.master-detail-row dl dd.--password {
  position: relative;
  padding-right: 35px;
  width: auto;
}

.master-detail-row dl dd.--password::after {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  right: 0;
  margin: auto;
  background: url(../img/rock.svg) left center no-repeat;
  background-size: contain;
  width: 25px;
  height: 25px;
}

.master-detail-row .flex {
  display: flex;
  align-items: center;
}

.master-detail-reserve {
  padding-top: 20px;
}

.master-detail-reserve h2 {
  padding-left: 150px;
  position: relative;
  margin-bottom: 20px;
}

.master-detail-reserve h2::after {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
  background: #333;
  width: 100%;
  height: 1px;
}

.master-detail-reserve h2 button {
  background: #fff8ef;
  padding: 10px 45px 10px 15px;
  position: relative;
  z-index: 1;
  cursor: pointer;
}

.master-detail-reserve h2 button::after {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  right: 10px;
  margin: auto;
  background: url(../img/icon_question.svg) left center no-repeat;
  background-size: contain;
  width: 25px;
  height: 25px;
}

.master-detail-reserve h2 .hidebox {
  opacity: 0;
  position: absolute;
  left: 75px;
  margin: auto;
  bottom: calc(100% + 10px);
  z-index: 2;
  transition: all 0.2s ease;
  pointer-events: none;
  max-width: 350px;
}

.master-detail-reserve h2 .hidebox.active {
  pointer-events: all;
  opacity: 1;
}

.master-detail-reserve h2 .hidebox .txt {
  position: relative;
  background: #f6f6f6;
  padding: 20px 20px 20px 20px;
  border: 1px solid #ccc;
  min-width: 350px;
  min-height: 180px;
}

.master-detail-reserve h2 .hidebox .txt::after {
  content: "";
  position: absolute;
  bottom: -12px;
  left: 0;
  right: 0;
  margin: auto;
  width: 0;
  height: 0;
  border-style: solid;
  border-color: #f6f6f6 transparent transparent transparent;
  border-width: 12px 10px 0 10px;
}

.master-detail-reserve h2 .hidebox .txt::before {
  content: "";
  position: absolute;
  bottom: -14px;
  left: 0;
  right: 0;
  margin: auto;
  width: 0;
  height: 0;
  border-style: solid;
  border-color: #ccc transparent transparent transparent;
  border-width: 13px 11px 0 11px;
}

.master-detail-reserve h2 .hidebox .txt > div {
  text-align: left;
}

.master-detail-reserve h2 .hidebox .txt > p {
  text-align: left;
}

.master-detail .select {
  position: relative;
  border: 1px solid #ccc;
  overflow: hidden;
  width: 100%;
  height: 40px;
  line-height: 40px;
  text-align: center;
  background: #fff;
}

@media screen and (max-width: 991px) {
  .master-detail .select {
    width: 100%;
  }
}

.master-detail .select::after {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  margin: auto;
  right: 10px;
  width: 8px;
  height: 8px;
  border-top: 2px solid #333;
  border-right: 2px solid #333;
  -webkit-transform: rotate(135deg);
  transform: rotate(135deg);
}

.master-detail .select select {
  display: block;
  text-align: left;
  width: 100%;
  height: 100%;
  font-size: 16px;
  border: 1px solid #ccc;
  overflow: hidden;
  padding-right: 1em;
  cursor: pointer;
  text-overflow: ellipsis;
  border: none;
  outline: none;
  background: transparent;
  background-image: none;
  box-shadow: none;
  -webkit-appearance: none;
  appearance: none;
  padding: 0 38px 0 15px;
}

@media screen and (max-width: 991px) {
  .master-detail .select select {
    font-size: 16px;
  }
}

.master-detail .input-text {
  height: 40px;
  line-height: 40px;
  padding: 10px 15px;
  border: 1px solid #ccc;
  -webkit-appearance: none;
  appearance: none;
  outline: none;
  display: block;
  width: 100%;
  font-size: 16px;
  background: #fff;
  line-height: 1.6;
}

.master-detail .input-text.--center {
  text-align: center;
}

.master-detail .input-text.--right {
  text-align: right;
}

.master-detail .input-text,
.master-detail .button,
.master-detail .select {
  pointer-events: none;
  background: #efefef;
}

.master-detail .edit-div{
  display: none;
}

.master-detail .input-text.disabled,
.master-detail .select.disabled {
  pointer-events: none;
  background: #efefef;
}

.master-detail textarea.input-text {
  height: 200px;
}

.master-detail .input-chk {
  display: table;
  pointer-events: none;
}

.master-detail .input-chk div span::before {
  background-color: #efefef;
}

.master-detail .input-chk input {
  -webkit-appearance: none;
  appearance: none;
  outline: none;
  position: absolute;
}

.master-detail .input-chk input:checked + div span::after {
  opacity: 1;
}

.master-detail .input-chk.disabled {
  pointer-events: none;
}

.master-detail .input-chk.disabled div span::before {
  background-color: #efefef;
}

.master-detail .input-chk div {
  display: flex;
  align-items: center;
}

.master-detail .input-chk span {
  border-radius: 4px;
  display: inline-block;
  position: relative;
  color: #444;
  letter-spacing: 0.05em;
  width: 24px;
  height: 24px;
}

.master-detail .input-chk span::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  width: 24px;
  height: 24px;
  border-radius: 2px;
  background: #fff;
  border: 1px solid #ccc;
}

.master-detail .input-chk span::after {
  content: "";
  position: absolute;
  opacity: 0;
  width: 10px;
  height: 16px;
  top: 50%;
  margin-top: -3px;
  left: 7px;
  -webkit-transform: translateY(-50%) rotate(45deg);
  transform: translateY(-50%) rotate(45deg);
  border-right: 3px solid #333;
  border-bottom: 3px solid #333;
}

.master-detail .input-chk b {
  font-weight: 400;
  padding-left: 10px;
}

.master-detail .input-file {
    pointer-events: none;
}

.edit .master-detail .input-file {
    pointer-events: all;
}

.master-detail .input-radio {
  display: table;
  pointer-events: none;
}

.master-detail .input-radio div span::before {
  background-color: #efefef;
}

.master-detail .input-radio input {
  -webkit-appearance: none;
  appearance: none;
  outline: none;
  position: absolute;
}

.master-detail .input-radio input:checked + div span::after {
  opacity: 1;
}

.master-detail .input-radio div {
  display: flex;
  align-items: center;
}

.master-detail .input-radio span {
  border-radius: 4px;
  display: inline-block;
  position: relative;
  color: #444;
  letter-spacing: 0.05em;
  width: 24px;
  height: 24px;
}

.master-detail .input-radio span::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  width: 24px;
  height: 24px;
  border-radius: 50%;
  background: #fff;
  border: 1px solid #ccc;
}

.master-detail .input-radio span::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 6px;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  width: 12px;
  height: 12px;
  border-radius: 50%;
  background: #333;
  opacity: 0;
}

.master-detail .input-radio b {
  font-weight: 400;
  padding-left: 10px;
}

.master-detail .input-radio.disabled {
  pointer-events: none;
}

.master-detail .input-radio.disabled div span::before {
  background-color: #efefef;
}

.master-detail .tabbox {
  border: 1px solid #ccc;
  min-height: 530px;
  background: #fff;
}

.master-detail .tabbox-nav ul {
  display: flex;
}

.master-detail .tabbox-nav ul li {
  width: calc(100% / 3);
}

.master-detail .tabbox-nav ul li a {
  padding: 5px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: #efefef;
  border-bottom: 1px solid #ccc;
}

.master-detail .tabbox-nav ul li.active a {
  background: #fff;
  border-bottom-color: #fff;
}

.master-detail .tabbox-nav ul li:not(:last-child) {
  border-right: 1px solid #ccc;
}

.master-detail .tabbox-content {
  padding: 30px;
}

.master-detail .tabbox-ttl {
  padding-left: 50px;
  position: relative;
  margin-bottom: 20px;
}

.master-detail .tabbox-ttl::after {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
  background: #333;
  width: 100%;
  height: 1px;
}

.master-detail .tabbox-ttl span {
  background: #fff;
  padding: 10px 15px;
  position: relative;
  z-index: 1;
}

.master-detail .tabbox-item {
  display: none;
}

.master-detail .tabbox-item.active {
  display: block;
}

.master-detail .tabbox-item .master-detail-row dl {
  grid-template-columns: 115px 1fr;
}

.master-detail .tabbox-item .master-detail-row dl dt .input-text {
  padding-top: 5px;
}

.master-detail .tabbox-item .master-detail-row dl dd .image {
  width: 62%;
  border: 1px solid #ccc;
}

.edit .master-detail .tabbox-item .master-detail-row dl dd .image {
  background-color: #fffca9;
}

.master-detail .tabbox-item .master-detail-row dl dd .image > div {
  margin: 10px 30px;
  aspect-ratio: 400 / 300;
}

.master-detail .tabbox-item .master-detail-row dl dd .image > div img {
  object-fit: cover;
  width: 100%;
  height: 100%;
}

.master-detail .tabbox-item .master-detail-row dl dd textarea.input-text {
  height: 100px;
}

.master-detail .tabbox-item .item {
  width: 100%;
  margin: auto;
}

.master-detail .tabbox-item .item + .item {
  margin-top: 30px;
}

.master-detail .tabbox-item#tab02 .master-detail-row dl {
  grid-template-columns: 85px 1fr;
}

.master-detail .tabbox-item#tab03 .master-detail-row dl {
  grid-template-columns: 65px 1fr;
}

.page-login {
  background: #f7f7f7;
}

.page-login .header {
  background: #021c68;
}

.page-login .header-wrap {
  justify-content: center;
  position: relative;
}

.page-login .header-title {
  padding-left: 0;
  text-align: center;
}

.page-login .header-title::before {
  content: none;
}

.page-login .header-keyboard {
  position: absolute;
  right: 0;
  top: 0;
  bottom: 0;
  margin: auto;
  display: flex;
  align-items: center;
}

.page-login .header-keyboard dl {
  display: flex;
  align-items: center;
}

.page-login .header-keyboard dl dd ul {
  display: flex;
  align-items: center;
  border: 1px solid #000;
}

.page-login .header-keyboard dl dd ul li {
  width: 40px;
}

.page-login .header-keyboard dl dd ul li button {
  background: #efefef;
  width: 100%;
  text-align: center;
  color: #333;
  font-size: 1.4rem;
  height: 100%;
}

.page-login .header-keyboard dl dd ul li button.active {
  background: #fc554b;
  color: #fff;
}

.page-login .header-keyboard dl dd ul li + li {
  border-left: 1px solid #000;
}

.page-login .main {
  padding-top: 100px;
}

.page-login .master-detail-row {
  margin-left: auto;
  margin-right: auto;
}

.page-login .master-detail-row + .master-detail-row {
  margin-top: 30px;
}

.page-login .master-detail-row dl {
  gap: 30px;
  grid-template-columns: 350px 1fr;
}

.page-login .master-detail-row dl dt,
.page-login .master-detail-row dl dd {
  font-size: 2rem;
}

.page-login .master-detail-row dl dt .input-text,
.page-login .master-detail-row dl dt .select select,
.page-login .master-detail-row dl dd .input-text,
.page-login .master-detail-row dl dd .select select {
  font-size: 2rem;
}

.page-login .master-detail-row dl dt .select,
.page-login .master-detail-row dl dt .input-text,
.page-login .master-detail-row dl dd .select,
.page-login .master-detail-row dl dd .input-text {
  height: 50px;
  line-height: 50px;
}

.page-login .login-ttl {
  text-align: center;
  font-size: 5rem;
  margin-bottom: 50px;
}

.page-login .login-btns {
  margin-top: 80px;
}

.page-login .login-btns ul {
  display: flex;
  justify-content: center;
}

.page-login .login-btns ul li {
  width: 150px;
  height: 50px;
}

.page-login .login-btns ul li + li {
  margin-left: 50px;
}

.page-login .login-btns ul li button {
  height: 100%;
  width: 100%;
  text-align: center;
  color: #fff;
  font-size: 2rem;
  font-weight: 700;
}

.page-login .login-btns ul li button.btn-end {
  background: #fc554b;
}

.page-login .login-btns ul li button.btn-login {
  background: #021c68;
}

.page-shop-detail .master-detail-row {
  width: auto;
}

.page-shop-detail .grid {
  display: grid;
  place-items: start left;
}

.page-shop-detail .grid + .grid {
  margin-top: 20px;
}

.page-shop-detail .grid.--grid01, .page-shop-detail .grid.--grid02, .page-shop-detail .grid.--grid03, .page-shop-detail .grid.--grid05 {
  grid-template-columns: 310px 33% 1fr;
  gap: 0;
}

.page-shop-detail .grid.--grid01 .master-detail-row dl, .page-shop-detail .grid.--grid02 .master-detail-row dl, .page-shop-detail .grid.--grid03 .master-detail-row dl, .page-shop-detail .grid.--grid05 .master-detail-row dl {
  grid-template-columns: 190px 1fr;
}

.page-shop-detail .grid.--grid01 .col:nth-child(2), .page-shop-detail .grid.--grid01 .col:nth-child(3), .page-shop-detail .grid.--grid02 .col:nth-child(2), .page-shop-detail .grid.--grid02 .col:nth-child(3), .page-shop-detail .grid.--grid03 .col:nth-child(2), .page-shop-detail .grid.--grid03 .col:nth-child(3), .page-shop-detail .grid.--grid05 .col:nth-child(2), .page-shop-detail .grid.--grid05 .col:nth-child(3) {
  width: 100%;
}

.page-shop-detail .grid.--grid01 .col:nth-child(2) .master-detail-row dl, .page-shop-detail .grid.--grid01 .col:nth-child(3) .master-detail-row dl, .page-shop-detail .grid.--grid02 .col:nth-child(2) .master-detail-row dl, .page-shop-detail .grid.--grid02 .col:nth-child(3) .master-detail-row dl, .page-shop-detail .grid.--grid03 .col:nth-child(2) .master-detail-row dl, .page-shop-detail .grid.--grid03 .col:nth-child(3) .master-detail-row dl, .page-shop-detail .grid.--grid05 .col:nth-child(2) .master-detail-row dl, .page-shop-detail .grid.--grid05 .col:nth-child(3) .master-detail-row dl {
  grid-template-columns: 100px 1fr;
}

.page-shop-detail .grid.--grid01 .col:nth-child(2) .input-text, .page-shop-detail .grid.--grid01 .col:nth-child(3) .input-text, .page-shop-detail .grid.--grid02 .col:nth-child(2) .input-text, .page-shop-detail .grid.--grid02 .col:nth-child(3) .input-text, .page-shop-detail .grid.--grid03 .col:nth-child(2) .input-text, .page-shop-detail .grid.--grid03 .col:nth-child(3) .input-text, .page-shop-detail .grid.--grid05 .col:nth-child(2) .input-text, .page-shop-detail .grid.--grid05 .col:nth-child(3) .input-text {
  width: 100%;
}

.page-shop-detail .grid.--grid03 .master-detail-row dl dt {
  white-space: nowrap;
}

.page-shop-detail .grid.--grid03 .col:nth-child(3) .master-detail-row dl {
  grid-template-columns: 120px 1fr;
  margin-left: -20px;
}

.page-shop-detail .grid.--grid04 {
  grid-template-columns: 310px 33% 1fr;
  place-items: center left;
  gap: 0;
}

.page-shop-detail .grid.--grid04 .col:nth-child(1) .master-detail-row dl {
  grid-template-columns: 190px 1fr;
}

.page-shop-detail .grid.--grid04 .col:nth-child(2) {
  width: 100%;
}

.page-shop-detail .grid.--grid04 .col:nth-child(2) .master-detail-row dl {
  grid-template-columns: 120px 1fr;
}

.page-shop-detail .grid.--grid04 .col:nth-child(3) {
  width: 100%;
  margin-left: -100px;
}

.page-shop-detail .grid.--grid04 .col:nth-child(3) .master-detail-row dl {
  grid-template-columns: 100px 1fr;
}

.page-shop-detail .grid.--grid04 .col:nth-child(3) .dd-flex .txt {
  white-space: nowrap;
}

.page-shop-detail .grid.--grid05 {
  grid-template-columns: 310px calc(33% - 50px) 1fr;
}

.page-shop-detail .grid.--grid05 .col:nth-child(1) .input-text {
  width: 350px;
}

.page-shop-detail .grid.--grid05 .col:nth-child(1) .ini-code {
  width: auto;
}

.page-shop-detail .grid.--grid05 .col:nth-child(1) .icon-q {
  position: relative;
  padding-left: 15px;
}

.page-shop-detail .grid.--grid05 .col:nth-child(1) .icon-q .js_toggle {
  width: 25px;
  height: 25px;
  position: relative;
  cursor: pointer;
}

.page-shop-detail .grid.--grid05 .col:nth-child(1) .icon-q .js_toggle::after {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  margin: auto;
  background: url(../img/icon_question.svg) left center no-repeat;
  background-size: contain;
  width: 100%;
  height: 100%;
}

.page-shop-detail .grid.--grid05 .col:nth-child(1) .icon-q .hidebox {
  opacity: 0;
  position: absolute;
  left: 5px;
  top: calc(100% + 20px);
  z-index: 2;
  transition: all 0.2s ease;
  pointer-events: none;
}

.page-shop-detail .grid.--grid05 .col:nth-child(1) .icon-q .hidebox.active {
  pointer-events: all;
  opacity: 1;
}

.page-shop-detail .grid.--grid05 .col:nth-child(1) .icon-q .hidebox .txt {
  position: relative;
  background: #f6f6f6;
  padding: 20px 20px 20px 20px;
  border: 1px solid #ccc;
  min-width: 350px;
  min-height: 180px;
  margin: 0;
}

.page-shop-detail .grid.--grid05 .col:nth-child(1) .icon-q .hidebox .txt::after {
  content: "";
  position: absolute;
  top: -12px;
  left: 11px;
  margin: auto;
  width: 0;
  height: 0;
  border-style: solid;
  border-color: transparent transparent #f6f6f6 transparent;
  border-width: 0px 10px 12px 10px;
}

.page-shop-detail .grid.--grid05 .col:nth-child(1) .icon-q .hidebox .txt::before {
  content: "";
  position: absolute;
  top: -14px;
  left: 10px;
  margin: auto;
  width: 0;
  height: 0;
  border-style: solid;
  border-color: transparent transparent #ccc transparent;
  border-width: 0px 11px 13px 11px;
}

.page-shop-detail .grid.--grid05 .col:nth-child(1) .icon-q .hidebox .txt > div {
  text-align: left;
}

.page-shop-detail .grid.--grid05 .col:nth-child(1) .icon-q .hidebox .txt > p {
  text-align: left;
}

.page-shop-detail .grid.--grid05 .col:nth-child(1) .icon-q .hidebox .txt ul {
  display: flex;
}

.page-shop-detail .grid.--grid05 .col:nth-child(1) .icon-q .hidebox .txt ul li > div {
  display: flex;
}

.page-shop-detail .grid.--grid05 .col:nth-child(1) .icon-q .hidebox .txt ul li > div span:nth-child(1) {
  width: 5.5em;
}

.page-shop-detail .grid.--grid05 .col:nth-child(3) .master-detail-row dl {
  grid-template-columns: 150px 1fr;
  place-items: start left;
}

.page-shop-detail .grid.--grid05 .col:nth-child(3) .master-detail-row dl dt {
  white-space: nowrap;
}

.page-shop-detail .grid.--grid05 .col:nth-child(3) .master-detail-row dl dd {
  position: relative;
}

.page-shop-detail .grid.--grid05 .col:nth-child(3) .master-detail-row dl dd .textarea {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
}

.page-shop-detail .grid.--grid05 .col:nth-child(3) .master-detail-row dl dd .textarea .input-text {
  height: 120px;
}

.page-shop-detail .grid.--grid05 .col:nth-child(3) .master-detail-row dl dd .textarea .txt {
  margin-top: 5px;
  text-align: right;
}

.page-shop-detail .grid.--grid06 {
  grid-template-columns: 310px 360px 360px;
  place-items: center left;
  gap: 0;
}

.page-shop-detail .grid.--grid06 .col:nth-child(1) .master-detail-row dl {
  grid-template-columns: 190px 1fr;
}

.page-shop-detail .grid.--grid06 .col:nth-child(2) {
  width: 100%;
}

.page-shop-detail .grid.--grid06 .col:nth-child(2) .master-detail-row dl {
  grid-template-columns: 100px 1fr;
}

.page-shop-detail .grid.--grid06 .col:nth-child(3) {
  width: 100%;
  margin-left: -100px;
}

.page-shop-detail .grid.--grid06 .col:nth-child(3) .master-detail-row dl {
  grid-template-columns: 100px 1fr;
}

.page-shop-detail .grid.--grid06 .col:nth-child(3) .dd-flex .txt {
  white-space: nowrap;
}

.page-shop-detail .grid.--grid07 {
  grid-template-columns: 40% 1fr;
  gap: 30px;
}

.page-shop-detail .grid.--grid07 .master-detail-row dl {
  grid-template-columns: 190px 1fr;
}

.page-shop-detail .grid.--grid07 .col {
  width: 100%;
}

.page-shop-detail .grid.--grid07 .col:nth-child(1) .input-text {
  width: 100%;
}

.page-shop-detail .grid.--grid07 .col:nth-child(2) .master-detail-row dl {
  grid-template-columns: 150px 1fr;
}

.page-shop-detail .grid.--grid07 .col:nth-child(2) .master-detail-row dl.dl-message dt {
  padding-right: 3em;
  position: relative;
  display: flex;
  align-items: center;
  height: 100%;
  line-height: 1.5;
}

.page-shop-detail .grid.--grid07 .col:nth-child(2) .master-detail-row dl.dl-message dt .t1 {
  position: absolute;
  right: 0;
  top: 0.5em;
}

.page-shop-detail .grid.--grid07 .col:nth-child(2) .master-detail-row dl.dl-message dt .t2 {
  position: absolute;
  right: 0;
  bottom: 0.5em;
}

.page-shop-detail .grid.--grid07 .col:nth-child(2) .master-detail-row dl dd .input-text + .input-text {
  margin-top: 20px;
}

.page-shop-detail .grid.--grid07 .flex.--flex01 {
  display: grid;
  grid-template-columns: 1fr 350px;
  gap: 20px;
  place-items: start left;
}

.page-shop-detail .grid.--grid07 .flex.--flex01 .item {
  width: 100%;
}

.page-shop-detail .grid.--grid07 .flex.--flex01 .item:nth-child(2) dl {
  grid-template-columns: 80px 1fr;
}

.page-shop-detail .grid.--grid07 .flex.--flex01 textarea.input-text {
  height: 100px;
}

.page-shop-detail .grid.--grid07 .flex.--flex01 .image {
  border: 1px solid #ccc;
  background: #fff;
}

.page-shop-detail .grid.--grid07 .flex.--flex01 .image > div {
  margin: 10px 30px;
  aspect-ratio: 400 / 300;
}

.page-shop-detail .grid.--grid07 .flex.--flex01 .image > div img {
  object-fit: cover;
  width: 100%;
  height: 100%;
}

.page-shop-detail .tbl {
  margin: 0;
  padding: 0px;
  width: 100%;
  border: 1px solid #333;
  table-layout: fixed;
  word-wrap: break-word;
  white-space: normal;
}

.page-shop-detail .tbl tbody.--scroll {
  display: block;
  height: 300px;
  overflow-y: scroll;
}

.page-shop-detail .tbl thead,
.page-shop-detail .tbl tbody tr {
  display: table;
  width: 100%;
  table-layout: fixed;
  /* 列幅を揃える */
}

.page-shop-detail .tbl th,
.page-shop-detail .tbl td {
  vertical-align: middle;
  padding: 10px 15px;
  line-height: 1.4;
}

.page-shop-detail .tbl th:not(:first-child),
.page-shop-detail .tbl td:not(:first-child) {
  border-left: 1px solid #ccc;
}

.page-shop-detail .tbl th:first-child,
.page-shop-detail .tbl td:first-child {
  width: 50px;
}

.page-shop-detail .tbl tr:not(:last-child) td {
  border-bottom: 1px solid #ccc;
}

.page-shop-detail .tbl tr:nth-child(even) td {
  background: #f6f6f6;
}

.page-shop-detail .tbl th {
  background: #4d4d4d;
  color: #fff;
  font-weight: 400;
  position: relative;
}

.page-shop-detail .tbl th:not(:first-child) {
  border-left-color: #fff;
}

.page-shop-detail .tbl th:first-child {
  padding: 10px 0;
}

.page-shop-detail .tbl th .add {
  background: #fff;
  width: 25px;
  height: 25px;
  margin-left: auto;
  position: absolute;
  right: 10px;
  top: 0;
  bottom: 0;
  margin: auto;
  border-radius: 50%;
}

.page-shop-detail .tbl th .add div {
  position: relative;
}

.page-shop-detail .tbl th .add div::before {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  right: 0;
  left: 0;
  margin: auto;
  width: 3px;
  height: 17px;
  background: #4d4d4d;
}

.page-shop-detail .tbl th .add div::after {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  right: 0;
  left: 0;
  margin: auto;
  width: 17px;
  height: 3px;
  background: #4d4d4d;
}

.page-shop-detail .tbl td {
  background: #fff;
}

.page-shop-detail .tbl td > div {
  min-height: 100px;
}

.page-shop-detail .tbl td:not(:last-child) {
  border-right: 1px solid #ccc;
}

.page-shop-detail .tbl td:first-child {
  text-align: center;
  vertical-align: middle;
  padding: 10px 0;
}

.page-shop-detail .tbl td:first-child > div {
  display: flex;
  align-items: center;
  justify-content: center;
}

.page-private-detail .master-detail-row .--flex01 {
  justify-content: space-between;
}

.page-private-detail .master-detail-row .--flex01 .item:nth-child(2) dl {
  grid-template-columns: 100px 1fr;
}

.page-private-detail .master-detail-row .--flex02 {
  white-space: nowrap;
}

.page-private-detail .master-detail-row .--flex02 .item + .item {
  margin-left: 40px;
}

.page-private-detail .master-detail-row .--flex02 .item dd {
  display: flex;
  align-items: center;
}

.page-private-detail .master-detail-row .--flex02 .item dd .txt {
  padding-left: 20px;
}

.page-private-detail .master-detail-row .--flex02 .item dd .txt ul {
  display: flex;
  align-items: center;
}

.page-private-detail .master-detail-row .--flex02 .item dd .txt ul li + li {
  margin-left: 15px;
}

.page-deal-detail .master-detail-row {
  width: auto;
}

.page-deal-detail .grid {
  display: grid;
  place-items: start left;
}

.page-deal-detail .grid.--grid01 {
  grid-template-columns: 280px 1fr 550px;
  gap: 0;
}

.page-deal-detail .grid.--grid01 .master-detail-row dl {
  grid-template-columns: 120px 1fr;
}

.page-deal-detail .grid.--grid01 .master-detail-row dd.--deal-code .etit-btn-area {
  margin-top: 10px;
  position: relative;
}

.page-deal-detail .grid.--grid01 .master-detail-row dd.--deal-code .etit-btn-area button {
  width: 100%;
  min-width: inherit;
  padding: 0 10px;
}

.page-deal-detail .grid.--grid01 .master-detail-row dd.--deal-code .etit-btn-area ul {
  position: absolute;
  right: 0;
  top: 50px;
}

.page-deal-detail .grid.--grid01 .master-detail-row dd.--deal-code .etit-btn-area ul li {
  display: flex;
  white-space: nowrap;
}

.page-deal-detail .grid.--grid01 .master-detail-row dd.--deal-code .etit-btn-area ul li > div:nth-child(1) {
  width: 5.5em;
  color: #ff7038;
  font-weight: 700;
}

.page-deal-detail .grid.--grid01 .master-detail-row dd.--category-code .etit-btn-area button {
  min-width: inherit;
  padding: 0 10px;
  margin-left: 10px;
}

.page-deal-detail .grid.--grid01 .master-detail-row dd.--bed-name .etit-btn-area button {
  min-width: inherit;
  padding: 0 10px;
  margin-left: 10px;
}

.page-deal-detail .grid.--grid01 .col:nth-child(2) {
  width: 100%;
}

.page-deal-detail .grid.--grid01 .col:nth-child(2) .master-detail-row dl {
  grid-template-columns: 100px 1fr;
}

.page-deal-detail .grid.--grid01 .col:nth-child(2) .input-text {
  width: 100%;
}

.page-deal-detail .grid.--grid01 .col:nth-child(2) .input-text.--short {
  width: 90%;
}

.page-deal-detail .grid.--grid01 .col:nth-child(3) .master-detail-row dl {
  grid-template-columns: 150px 1fr;
}

.page-deal-detail .grid.--grid01 .flex.--flex01 .item:nth-child(2) dl {
  grid-template-columns: 100px 1fr;
}

.page-deal-detail .grid.--grid01 .flex.--flex02 .item:nth-child(2) dl {
  grid-template-columns: 130px 1fr;
}

.page-deal-detail .grid.--grid02 {
  grid-template-columns: 800px 1fr;
  gap: 20px;
}

.page-deal-detail .grid.--grid02 .master-detail-row dl {
  grid-template-columns: 120px 1fr;
}

.page-deal-detail .grid.--grid02 .flex.--flex01 {
  align-items: flex-start;
}

.page-deal-detail .grid.--grid02 .flex.--flex01 .item:nth-child(2) {
  display: flex;
  padding-left: 50px;
  padding-top: 5px;
}

.page-deal-detail .grid.--grid02 .flex.--flex01 .item:nth-child(2) .t2 {
  padding-left: 15px;
}

.page-deal-detail .grid.--grid02 .flex.--flex01 .item:nth-child(2) .t2 ul li + li {
  margin-top: 3px;
}

.page-deal-detail .grid.--grid02 .flex.--flex02 {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  margin-top: 20px;
}

.page-deal-detail .grid.--grid02 .flex.--flex02 dl {
  place-items: start left;
}

.page-deal-detail .grid.--grid02 .flex.--flex02 .item .image {
  aspect-ratio: 400 / 300;
  background: #fff;
  border: 1px solid #ccc;
}

.page-deal-detail .grid.--grid02 .flex.--flex02 .item .image div {
  padding: 10px;
  aspect-ratio: 400 / 300;
}

.page-deal-detail .grid.--grid02 .flex.--flex02 .item .image div img {
  object-fit: cover;
  width: 100%;
  height: 100%;
}

.page-deal-detail .grid.--grid02 .flex.--flex02 .item:nth-child(1) {
  width: 45%;
}

.page-deal-detail .grid.--grid02 .flex.--flex02 .item:nth-child(2) {
  width: 55%;
  padding-left: 20px;
}

.page-deal-detail .grid.--grid02 .flex.--flex02 .item:nth-child(2) dl {
  grid-template-columns: auto 1fr;
}

.page-deal-detail .grid.--grid02 .flex.--flex02 .item:nth-child(2) textarea.input-text {
  height: 100px;
}

.page-deal-detail .tbl {
  margin: 0;
  padding: 0px;
  width: 100%;
  border: 1px solid #333;
  table-layout: fixed;
  word-wrap: break-word;
  white-space: normal;
}

.page-deal-detail .tbl tbody.--scroll {
  display: block;
  height: 300px;
  overflow-y: scroll;
}

.page-deal-detail .tbl thead,
.page-deal-detail .tbl tbody tr {
  display: table;
  width: 100%;
  table-layout: fixed;
  /* 列幅を揃える */
}

.page-deal-detail .tbl th,
.page-deal-detail .tbl td {
  vertical-align: middle;
  padding: 10px 15px;
  line-height: 1.4;
}

.page-deal-detail .tbl th:not(:first-child),
.page-deal-detail .tbl td:not(:first-child) {
  border-left: 1px solid #ccc;
}

.page-deal-detail .tbl th:first-child,
.page-deal-detail .tbl td:first-child {
  width: 50px;
}

.page-deal-detail .tbl tr:not(:last-child) td {
  border-bottom: 1px solid #ccc;
  vertical-align: top;
}

.page-deal-detail .tbl tr:not(:last-child) td .btn-del {
  margin-top: 20px;
}

.page-deal-detail .tbl tr:nth-child(even) td {
  background: #f6f6f6;
}

.page-deal-detail .tbl th {
  background: #4d4d4d;
  color: #fff;
  font-weight: 400;
  position: relative;
}

.page-deal-detail .tbl th:not(:first-child) {
  border-left-color: #fff;
}

.page-deal-detail .tbl th:first-child {
  padding: 10px 0;
}

.page-deal-detail .tbl th .add {
  background: #fff;
  width: 25px;
  height: 25px;
  margin-left: auto;
  position: absolute;
  right: 10px;
  top: 0;
  bottom: 0;
  margin: auto;
  border-radius: 50%;
}

.page-deal-detail .tbl th .add div {
  position: relative;
}

.page-deal-detail .tbl th .add div::before {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  right: 0;
  left: 0;
  margin: auto;
  width: 3px;
  height: 17px;
  background: #4d4d4d;
}

.page-deal-detail .tbl th .add div::after {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  right: 0;
  left: 0;
  margin: auto;
  width: 17px;
  height: 3px;
  background: #4d4d4d;
}

.page-deal-detail .tbl td {
  background: #fff;
  padding: 12px 15px;
}

.page-deal-detail .tbl td > div {
  min-height: 100px;
}

.page-deal-detail .tbl td:not(:last-child) {
  border-right: 1px solid #ccc;
}

.page-deal-detail .tbl td:first-child {
  text-align: center;
  vertical-align: middle;
  padding: 10px 10px;
}

.page-deal-detail .tbl td:first-child > div {
  display: flex;
  align-items: center;
  justify-content: center;
}

.page-deal-detail .tbl td .box-days {
  display: grid;
}

@media screen and (min-width: 992px) {
  .page-deal-detail .tbl td .box-days {
    grid-template-columns: repeat(7, 1fr);
    gap: 10px 5px;
  }
}

@media screen and (max-width: 991px) {
  .page-deal-detail .tbl td .box-days {
    row-gap: 20px;
  }
}

.page-deal-detail .tbl td .box-days li {
  font-size: 1.4rem;
}

.page-deal-detail .tbl td .box-days li:nth-child(10) {
  grid-column: 3 / 5;
}

.page-deal-detail .tbl td .box-days li:nth-child(11) {
  grid-column: 5 / 8;
  display: flex;
  justify-content: flex-end;
}

.page-deal-detail .tbl td .box-days li:nth-child(11) .input-chk b {
  padding: 0 5px 0 0;
}

.page-deal-detail .tbl td .box-days li .input-chk {
  margin: 0;
}

.page-deal-detail .tbl td .box-days li .input-chk span {
  width: 18px;
  height: 18px;
}

.page-deal-detail .tbl td .box-days li .input-chk span::before {
  width: 18px;
  height: 18px;
}

.page-deal-detail .tbl td .box-days li .input-chk span::after {
  width: 8px;
  height: 14px;
  left: 5px;
  margin-top: -2px;
}

.page-deal-detail .tbl td .box-days li .input-chk b {
  padding-left: 5px;
}

.page-deal-detail .tbl td .box-days li .input-chk b > b {
  letter-spacing: -0.01em;
  margin-left: -0.3em;
  padding-left: 0;
}

.page-deal-detail .tbl td .box-time {
  display: flex;
  justify-content: space-between;
  margin-top: 15px;
}

.page-deal-detail .tbl td .box-time .item {
  display: flex;
  align-items: center;
}

.page-deal-detail .tbl td .box-time .item .t1 {
  font-size: 1.4rem;
  padding-right: 10px;
}

.page-deal-detail .tbl td .box-time .item .t2 {
  display: flex;
  align-items: center;
}

.page-staff-detail-therapist .tbl td .box-time .item .t2 {
  display: flex;
  align-items: center;
  justify-content: space-between;
}

.page-deal-detail .tbl td .box-time .item .t2 .input-text {
  width: 60px;
  height: 30px;
  padding: 5px;
  text-align: center;
}

.page-deal-detail .tbl td .box-time .item .t2 span {
  padding: 0 5px;
}

.page-deal-detail .tbl td .box-time .item .t3 .input-text {
  width: 100px;
  height: 30px;
  padding: 5px;
  text-align: center;
}

.page-facility-detail .master-detail-row {
  width: auto;
}

.page-facility-detail .grid {
  display: grid;
  place-items: end left;
}

.page-facility-detail .grid.--grid01 {
  grid-template-columns: 55% 1fr;
  gap: 50px;
}

.page-facility-detail .grid.--grid01 .col {
  width: 100%;
}

.page-facility-detail .grid.--grid01 .col:nth-child(1) .master-detail-row dl {
  grid-template-columns: 120px 1fr;
}

.page-facility-detail .grid.--grid01 .col:nth-child(1) .master-detail-row .flex.--flex01 {
  display: grid;
  grid-template-columns: auto 1fr;
  gap: 20px;
  place-items: start left;
}

.page-facility-detail .grid.--grid01 .col:nth-child(1) .master-detail-row .flex.--flex01 .item:nth-child(2) {
  width: 100%;
}

.page-facility-detail .grid.--grid01 .col:nth-child(1) .master-detail-row .flex.--flex01 .item:nth-child(2) dl {
  grid-template-columns: 80px 1fr;
}

.page-facility-detail .grid.--grid01 .col:nth-child(1) .master-detail-row .dd-flex > div:nth-child(2) {
  margin: 0 15px;
}

.page-facility-detail .grid.--grid01 .col:nth-child(1) .master-detail-row .dd-flex.--time {
  position: relative;
}

.page-facility-detail .grid.--grid01 .col:nth-child(1) .master-detail-row .dd-flex.--time .etit-btn-area {
  z-index: 2;
  position: absolute;
  top: 0;
  left: 270px;
  width: calc(100% - 230px);
}

.page-facility-detail .grid.--grid01 .col:nth-child(1) .master-detail-row .dd-flex.--time .etit-btn-area ul {
  margin-bottom: 15px;
}

.page-facility-detail .grid.--grid01 .col:nth-child(1) .master-detail-row .dd-flex.--time .etit-btn-area ul li {
  font-size: 1.4rem;
}

.page-facility-detail .grid.--grid01 .col:nth-child(1) .master-detail-row .dd-flex.--time .etit-btn-area ul li + li {
  margin-top: 5px;
}

.page-facility-detail .grid.--grid01 .col:nth-child(2) .etit-btn-area {
  padding-bottom: 20px;
}

.page-facility-detail .grid.--grid01 .col:nth-child(2) .etit-btn-area .q-flex {
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: flex-end;
  position: relative;
}

.page-facility-detail .grid.--grid02 {
  grid-template-columns: auto auto auto;
  place-items: start left;
  gap: 10px;
}

.page-facility-detail .grid.--grid02 .master-detail-row dl {
  grid-template-columns: 120px 1fr;
}

.page-facility-detail .grid.--grid02 .master-detail-row dl + dl {
  margin-top: 10px;
}

.page-facility-detail .grid.--grid02 .col:nth-child(2) dl {
  grid-template-columns: 150px 1fr;
}

.page-facility-detail .grid.--grid02 .col:nth-child(3) dl {
  grid-template-columns: 120px 1fr;
}

.page-facility-detail .grid.--grid02 .dd-flex.--code .input-text + .input-text {
  margin-left: 15px;
}

.page-facility-detail .tbl {
  margin: 0;
  padding: 0px;
  width: 100%;
  border: 1px solid #333;
  table-layout: fixed;
  word-wrap: break-word;
  white-space: normal;
}

.page-facility-detail .tbl + .caution {
  padding-top: 5px;
}

.page-facility-detail .tbl tbody.--scroll {
  display: block;
  height: 300px;
  overflow-y: scroll;
}

.page-facility-detail .tbl th,
.page-facility-detail .tbl td {
  vertical-align: middle;
  padding: 10px 15px;
  line-height: 1.4;
}

.page-facility-detail .tbl th:not(:first-child),
.page-facility-detail .tbl td:not(:first-child) {
  border-left: 1px solid #ccc;
}

.page-facility-detail .tbl th:nth-child(1), .page-facility-detail .tbl th:nth-child(3),
.page-facility-detail .tbl td:nth-child(1),
.page-facility-detail .tbl td:nth-child(3) {
  width: 120px;
}

.page-facility-detail .tbl th:nth-child(4),
.page-facility-detail .tbl td:nth-child(4) {
  width: 80px;
  padding-right: 5px;
  padding-left: 5px;
}

.page-facility-detail .tbl th:nth-child(5),
.page-facility-detail .tbl td:nth-child(5) {
  width: 50px;
  padding-right: 5px;
  padding-left: 5px;
}

.page-facility-detail .tbl tr:not(:last-child) td {
  border-bottom: 1px solid #ccc;
}

.page-facility-detail .tbl th {
  background: #4d4d4d;
  color: #fff;
  font-weight: 400;
  position: relative;
}

.page-facility-detail .tbl th:not(:first-child) {
  border-left-color: #fff;
}

.page-facility-detail .tbl th .add {
  background: #fff;
  width: 25px;
  height: 25px;
  margin-left: auto;
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  margin: auto;
  border-radius: 50%;
}

.page-facility-detail .tbl th .add div {
  position: relative;
}

.page-facility-detail .tbl th .add div::before {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  right: 0;
  left: 0;
  margin: auto;
  width: 3px;
  height: 17px;
  background: #4d4d4d;
}

.page-facility-detail .tbl th .add div::after {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  right: 0;
  left: 0;
  margin: auto;
  width: 17px;
  height: 3px;
  background: #4d4d4d;
}

.page-facility-detail .tbl td {
  background: #fff;
}

.page-facility-detail .tbl td:not(:last-child) {
  border-right: 1px solid #ccc;
}

.page-staff-detail .master-detail-row {
  width: auto;
}

.page-staff-detail .grid {
  display: grid;
  place-items: start left;
}

.page-staff-detail .grid.--grid01 {
  grid-template-columns: 1fr 600px;
  gap: 50px;
}

.page-staff-detail .grid.--grid01 .col {
  width: 100%;
}

.page-staff-detail .grid.--grid01 .col:nth-child(1) .master-detail-row dl {
  grid-template-columns: 120px 1fr;
}

.page-staff-detail .grid.--grid01 .col:nth-child(1) .master-detail-row .flex.--flex01 {
  display: grid;
  grid-template-columns: 250px 1fr;
  gap: 20px;
  place-items: center left;
}

.page-staff-detail .grid.--grid01 .col:nth-child(1) .master-detail-row .flex.--flex01 .item:nth-child(2) {
  width: 100%;
}

.page-staff-detail .grid.--grid01 .col:nth-child(1) .master-detail-row .flex.--flex01 .item:nth-child(2) dl {
  grid-template-columns: 120px 1fr;
}

.page-staff-detail .grid.--grid01 .col:nth-child(1) .staff-code dl {
  grid-template-columns: auto 1fr;
}

.page-staff-detail .grid.--grid01 .col:nth-child(1) .staff-code .icon-q {
  position: relative;
  padding-left: 15px;
}

.page-staff-detail .grid.--grid01 .col:nth-child(1) .staff-code .icon-q .js_toggle {
  width: 25px;
  height: 25px;
  position: relative;
  cursor: pointer;
}

.page-staff-detail .grid.--grid01 .col:nth-child(1) .staff-code .icon-q .js_toggle::after {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  margin: auto;
  background: url(../img/icon_question.svg) left center no-repeat;
  background-size: contain;
  width: 100%;
  height: 100%;
}

.page-staff-detail .grid.--grid01 .col:nth-child(1) .staff-code .icon-q .hidebox {
  opacity: 0;
  position: absolute;
  left: 5px;
  top: calc(100% + 20px);
  z-index: 2;
  transition: all 0.2s ease;
  pointer-events: none;
}

.page-staff-detail .grid.--grid01 .col:nth-child(1) .staff-code .icon-q .hidebox.active {
  pointer-events: all;
  opacity: 1;
}

.page-staff-detail .grid.--grid01 .col:nth-child(1) .staff-code .icon-q .hidebox .txt {
  position: relative;
  background: #f6f6f6;
  padding: 20px 20px 20px 20px;
  border: 1px solid #ccc;
  min-width: 350px;
  min-height: 180px;
  margin: 0;
}

.page-staff-detail .grid.--grid01 .col:nth-child(1) .staff-code .icon-q .hidebox .txt::after {
  content: "";
  position: absolute;
  top: -12px;
  left: 11px;
  margin: auto;
  width: 0;
  height: 0;
  border-style: solid;
  border-color: transparent transparent #f6f6f6 transparent;
  border-width: 0px 10px 12px 10px;
}

.page-staff-detail .grid.--grid01 .col:nth-child(1) .staff-code .icon-q .hidebox .txt::before {
  content: "";
  position: absolute;
  top: -14px;
  left: 10px;
  margin: auto;
  width: 0;
  height: 0;
  border-style: solid;
  border-color: transparent transparent #ccc transparent;
  border-width: 0px 11px 13px 11px;
}

.page-staff-detail .grid.--grid01 .col:nth-child(1) .staff-code .icon-q .hidebox .txt > div {
  text-align: left;
}

.page-staff-detail .grid.--grid01 .col:nth-child(1) .staff-code .icon-q .hidebox .txt > p {
  text-align: left;
}

.page-staff-detail .grid.--grid01 .col:nth-child(1) .staff-code .icon-q .hidebox .txt ul {
  display: flex;
}

.page-staff-detail .grid.--grid01 .col:nth-child(1) .staff-code .icon-q .hidebox .txt ul li > div {
  display: flex;
}

.page-staff-detail .grid.--grid01 .col:nth-child(1) .staff-code .icon-q .hidebox .txt ul li > div span:nth-child(1) {
  width: 5.5em;
}

.page-staff-detail .grid.--grid01 .col:nth-child(1) .name-box dl {
  min-height: 80px;
}

.page-staff-detail .grid.--grid01 .col:nth-child(1) .name-box dl dt {
  position: relative;
  height: 100%;
}

.page-staff-detail .grid.--grid01 .col:nth-child(1) .name-box dl dt img {
  width: 80px;
  height: 80px;
  position: absolute;
  right: 0;
  bottom: 0;
}

.page-staff-detail .grid.--grid01 .col:nth-child(1) .name-box dl dd {
  width: auto;
  height: 100%;
  position: relative;
}

.page-staff-detail .grid.--grid01 .col:nth-child(1) .name-box dl dd > .input-text {
  height: 80px;
  font-size: 2.8rem;
}

.page-staff-detail .grid.--grid01 .col:nth-child(1) .name-box dl dd .staff-box {
  position: absolute;
  bottom: 0;
  right: -165px;
}

.page-staff-detail .grid.--grid01 .col:nth-child(1) .radio-list {
  display: flex;
}

.page-staff-detail .grid.--grid01 .col:nth-child(1) .radio-list li + li {
  margin-left: 30px;
}

.page-staff-detail .grid.--grid01 .col:nth-child(1) .level-box {
  padding-left: 40px;
}

.page-staff-detail .grid.--grid01 .col:nth-child(1) .level-box table {
  table-layout: fixed;
  word-wrap: break-word;
  white-space: normal;
  width: 100%;
}

.page-staff-detail .grid.--grid01 .col:nth-child(1) .level-box table th,
.page-staff-detail .grid.--grid01 .col:nth-child(1) .level-box table td {
  vertical-align: middle;
}

.page-staff-detail .grid.--grid01 .col:nth-child(1) .level-box table th:nth-child(1),
.page-staff-detail .grid.--grid01 .col:nth-child(1) .level-box table td:nth-child(1) {
  width: 2em;
  text-align: center;
}

.page-staff-detail .grid.--grid01 .col:nth-child(1) .level-box table th:nth-child(2),
.page-staff-detail .grid.--grid01 .col:nth-child(1) .level-box table td:nth-child(2) {
  width: 350px;
}

.page-staff-detail .grid.--grid01 .col:nth-child(1) .level-box table tr:nth-child(2) td:first-child,
.star01 {
  color: #ff2319;
}

.page-staff-detail .grid.--grid01 .col:nth-child(1) .level-box table tr:nth-child(3) td:first-child,
.star02 {
  color: #fe9f00;
}

.page-staff-detail .grid.--grid01 .col:nth-child(1) .level-box table tr:nth-child(4) td:first-child,
.star03 {
  color: #6db349;
}

.page-staff-detail .grid.--grid01 .col:nth-child(1) .level-box table tr:nth-child(5) td:first-child,
.star04 {
  color: #0749fe;
}

.page-staff-detail .grid.--grid01 .col:nth-child(1) .level-box table tr:nth-child(6) td:first-child,
.star05 {
  color: #700ca5;
}

.page-staff-detail .grid.--grid01 .col:nth-child(1) .level-box table th {
  font-weight: 400;
  padding-bottom: 5px;
}

.page-staff-detail .grid.--grid01 .col:nth-child(1) .level-box table td:nth-child(1) {
  font-size: 2rem;
  line-height: 1.5;
}

.page-staff-detail .grid.--grid01 .col:nth-child(1) .level-box table td:nth-child(2) {
  padding-left: 10px;
  color: #700ca5;
}

.page-staff-detail .grid.--grid01 .col:nth-child(1) .level-box table td:nth-child(3) {
  vertical-align: top;
}

.page-staff-detail .grid.--grid01 .col:nth-child(1) .level-box table textarea.input-text {
  height: 150px;
}

.page-staff-detail .grid.--grid01 .col:nth-child(2) textarea.input-text {
  height: 80px;
  width: 90%;
}

.page-staff-detail .grid.--grid01 .col:nth-child(2) .memo-box {
  position: absolute;
  right: 0;
  top: 0;
  width: calc(100% - 250px);
}

.page-staff-detail .grid.--grid01 .col:nth-child(2) .memo-box textarea.input-text {
  height: 120px;
  width: 100%;
}

.page-staff-detail .grid.--grid01 .col:nth-child(2) .master-detail-row.--memo dl dd {
  position: relative;
}

.page-staff-detail .grid.--grid01 .col:nth-child(2) .tbl-box {
  margin-top: 50px;
}

.page-staff-detail .grid.--grid01 .col:nth-child(2) .tbl-box .tbl {
  margin: 0;
  padding: 0px;
  width: 100%;
  border: 1px solid #333;
  table-layout: fixed;
  word-wrap: break-word;
  white-space: normal;
}

.page-staff-detail .grid.--grid01 .col:nth-child(2) .tbl-box .tbl tbody.--scroll {
  display: block;
  height: 500px;
  overflow-y: scroll;
}

.page-staff-detail .grid.--grid01 .col:nth-child(2) .tbl-box .tbl thead,
.page-staff-detail .grid.--grid01 .col:nth-child(2) .tbl-box .tbl tbody tr {
  display: table;
  width: 100%;
  table-layout: fixed;
  /* 列幅を揃える */
}

.page-staff-detail .grid.--grid01 .col:nth-child(2) .tbl-box .tbl th,
.page-staff-detail .grid.--grid01 .col:nth-child(2) .tbl-box .tbl td {
  vertical-align: middle;
  padding: 5px;
  line-height: 1.4;
}

.page-staff-detail .grid.--grid01 .col:nth-child(2) .tbl-box .tbl th:not(:first-child),
.page-staff-detail .grid.--grid01 .col:nth-child(2) .tbl-box .tbl td:not(:first-child) {
  border-left: 1px solid #ccc;
}

.page-staff-detail .grid.--grid01 .col:nth-child(2) .tbl-box .tbl th:nth-child(1),
.page-staff-detail .grid.--grid01 .col:nth-child(2) .tbl-box .tbl td:nth-child(1) {
  width: 110px;
}

.page-staff-detail .grid.--grid01 .col:nth-child(2) .tbl-box .tbl th:nth-child(2),
.page-staff-detail .grid.--grid01 .col:nth-child(2) .tbl-box .tbl td:nth-child(2) {
  width: 310px;
}

.page-staff-detail .grid.--grid01 .col:nth-child(2) .tbl-box .tbl th:nth-child(3),
.page-staff-detail .grid.--grid01 .col:nth-child(2) .tbl-box .tbl td:nth-child(3) {
  width: 120px;
}

.page-staff-detail .grid.--grid01 .col:nth-child(2) .tbl-box .tbl tr:not(:last-child) td {
  border-bottom: 1px solid #ccc;
}

.page-staff-detail .grid.--grid01 .col:nth-child(2) .tbl-box .tbl th {
  background: #4d4d4d;
  color: #fff;
  font-weight: 400;
  position: relative;
}

.page-staff-detail .grid.--grid01 .col:nth-child(2) .tbl-box .tbl th:not(:first-child) {
  border-left-color: #fff;
}

.page-staff-detail .grid.--grid01 .col:nth-child(2) .tbl-box .tbl th:first-child {
  padding: 10px 0;
}

.page-staff-detail .grid.--grid01 .col:nth-child(2) .tbl-box .tbl th .add {
  background: #fff;
  width: 25px;
  height: 25px;
  margin-left: auto;
  position: absolute;
  right: 0;
  left: 0;
  top: 0;
  bottom: 0;
  margin: auto;
  border-radius: 50%;
}

.page-staff-detail .grid.--grid01 .col:nth-child(2) .tbl-box .tbl th .add div {
  position: relative;
}

.page-staff-detail .grid.--grid01 .col:nth-child(2) .tbl-box .tbl th .add div::before {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  right: 0;
  left: 0;
  margin: auto;
  width: 3px;
  height: 17px;
  background: #4d4d4d;
}

.page-staff-detail .grid.--grid01 .col:nth-child(2) .tbl-box .tbl th .add div::after {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  right: 0;
  left: 0;
  margin: auto;
  width: 17px;
  height: 3px;
  background: #4d4d4d;
}

.page-staff-detail .grid.--grid01 .col:nth-child(2) .tbl-box .tbl td {
  background: #fff;
}

.page-staff-detail .grid.--grid01 .col:nth-child(2) .tbl-box .tbl td > div {
  min-height: 15px;
}

.page-staff-detail .grid.--grid01 .col:nth-child(2) .tbl-box .tbl td:not(:last-child) {
  border-right: 1px solid #ccc;
}

.page-staff-detail .grid.--grid01 .col:nth-child(2) .tbl-box .tbl td .select select {
  padding: 0 5px 0 15px;
}

.page-printer-detail .tbl-box {
  margin: 50px auto 0;
  width: 1180px;
}

.page-printer-detail .tbl-box .tbl {
  margin: 0;
  padding: 0px;
  width: 100%;
  border: 1px solid #333;
  table-layout: fixed;
  word-wrap: break-word;
  white-space: normal;
}

.page-printer-detail .tbl-box .tbl tbody.--scroll {
  display: block;
  height: 500px;
  overflow-y: scroll;
}

.page-printer-detail .tbl-box .tbl thead,
.page-printer-detail .tbl-box .tbl tbody tr {
  display: table;
  width: 100%;
  table-layout: fixed;
  /* 列幅を揃える */
}

.page-printer-detail .tbl-box .tbl th,
.page-printer-detail .tbl-box .tbl td {
  vertical-align: middle;
  padding: 10px 5px;
  line-height: 1.4;
}

.page-printer-detail .tbl-box .tbl th:not(:first-child),
.page-printer-detail .tbl-box .tbl td:not(:first-child) {
  border-left: 1px solid #ccc;
}

.page-printer-detail .tbl-box .tbl th:nth-child(1),
.page-printer-detail .tbl-box .tbl td:nth-child(1) {
  width: 80px;
}

.page-printer-detail .tbl-box .tbl th:nth-child(2),
.page-printer-detail .tbl-box .tbl td:nth-child(2) {
  width: 300px;
}

.page-printer-detail .tbl-box .tbl th:nth-child(3),
.page-printer-detail .tbl-box .tbl td:nth-child(3) {
  width: 120px;
}

.page-printer-detail .tbl-box .tbl th:nth-child(4),
.page-printer-detail .tbl-box .tbl td:nth-child(4) {
  width: 90px;
}

.page-printer-detail .tbl-box .tbl th:nth-child(5),
.page-printer-detail .tbl-box .tbl td:nth-child(5) {
  width: 175px;
}

.page-printer-detail .tbl-box .tbl th:nth-child(6),
.page-printer-detail .tbl-box .tbl td:nth-child(6) {
  width: 175px;
}

.page-printer-detail .tbl-box .tbl th:nth-child(7),
.page-printer-detail .tbl-box .tbl td:nth-child(7) {
  width: 175px;
}

.page-printer-detail .tbl-box .tbl tr:not(:last-child) td {
  border-bottom: 1px solid #ccc;
}

.page-printer-detail .tbl-box .tbl th {
  background: #4d4d4d;
  color: #fff;
  font-weight: 400;
  position: relative;
  text-align: center;
}

.page-printer-detail .tbl-box .tbl th:not(:first-child) {
  border-left-color: #fff;
}

.page-printer-detail .tbl-box .tbl th:first-child {
  padding: 10px 0;
}

.page-printer-detail .tbl-box .tbl th:nth-child(4) {
  border-left: dashed 1px #000;
}

.page-printer-detail .tbl-box .tbl th .add {
  background: #fff;
  width: 25px;
  height: 25px;
  margin-left: auto;
  position: absolute;
  left: 10px;
  top: 0;
  bottom: 0;
  margin: auto;
  border-radius: 50%;
}

.page-printer-detail .tbl-box .tbl th .add div {
  position: relative;
}

.page-printer-detail .tbl-box .tbl th .add div::before {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  right: 0;
  left: 0;
  margin: auto;
  width: 3px;
  height: 17px;
  background: #4d4d4d;
}

.page-printer-detail .tbl-box .tbl th .add div::after {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  right: 0;
  left: 0;
  margin: auto;
  width: 17px;
  height: 3px;
  background: #4d4d4d;
}

.page-printer-detail .tbl-box .tbl td {
  background: #fff;
  padding: 5px;
}

.page-printer-detail .tbl-box .tbl td:first-child {
  text-align: center;
  vertical-align: middle;
}

.page-printer-detail .tbl-box .tbl td:first-child > div {
  display: flex;
  align-items: center;
  justify-content: center;
}

.page-printer-detail .tbl-box .tbl td:nth-child(4) {
  border-left: dashed 1px #000 !important;
}

.page-deal-assign-detail .master-detail-row {
  width: auto;
}

.page-deal-assign-detail .grid {
  display: grid;
  place-items: start left;
}

.page-deal-assign-detail .grid.--grid01 {
  grid-template-columns: 40% 1fr;
  gap: 50px;
}

.page-deal-assign-detail .grid.--grid01 .col {
  width: 100%;
}

.page-deal-assign-detail .grid.--grid01 .col:nth-child(1) .master-detail-row dl {
  grid-template-columns: 120px 1fr;
}

.page-deal-assign-detail .grid.--grid01 .col:nth-child(2) .master-detail-row dl {
  grid-template-columns: 80px auto;
}

.page-deal-assign-detail .grid.--grid02 {
  margin-top: 30px;
  grid-template-columns: 620px 1fr;
  gap: 20px;
}

.page-deal-assign-detail .grid.--grid02 .col {
  width: 100%;
}

.page-deal-assign-detail .grid.--grid02 .tbl-box > div {
  padding-bottom: 5px;
}

.page-deal-assign-detail .grid.--grid02 .tbl-box .tbl {
  margin: 0;
  padding: 0px;
  width: 100%;
  border: 1px solid #333;
  table-layout: fixed;
  word-wrap: break-word;
  white-space: normal;
}

.page-deal-assign-detail .grid.--grid02 .tbl-box .tbl tbody.--scroll {
  display: block;
  height: 765px;
  overflow-y: scroll;
}

.page-deal-assign-detail .grid.--grid02 .tbl-box .tbl thead,
.page-deal-assign-detail .grid.--grid02 .tbl-box .tbl tbody tr {
  display: table;
  width: 100%;
  table-layout: fixed;
  /* 列幅を揃える */
}

.page-deal-assign-detail .grid.--grid02 .tbl-box .tbl th,
.page-deal-assign-detail .grid.--grid02 .tbl-box .tbl td {
  vertical-align: middle;
  padding: 10px 15px;
  line-height: 1.4;
}

.page-deal-assign-detail .grid.--grid02 .tbl-box .tbl th:nth-child(1),
.page-deal-assign-detail .grid.--grid02 .tbl-box .tbl td:nth-child(1) {
  width: 120px;
}

.page-deal-assign-detail .grid.--grid02 .tbl-box .tbl th:nth-child(2),
.page-deal-assign-detail .grid.--grid02 .tbl-box .tbl td:nth-child(2) {
  width: 280px;
}

.page-deal-assign-detail .grid.--grid02 .tbl-box .tbl th:nth-child(3),
.page-deal-assign-detail .grid.--grid02 .tbl-box .tbl td:nth-child(3) {
  width: 100px;
}

.page-deal-assign-detail .grid.--grid02 .tbl-box .tbl th:not(:first-child) {
  border-left: 1px solid #ccc;
}

.page-deal-assign-detail .grid.--grid02 .tbl-box .tbl tr:not(:last-child) td {
  border-bottom: 1px solid #ccc;
}

.page-deal-assign-detail .grid.--grid02 .tbl-box .tbl th {
  background: #4d4d4d;
  color: #fff;
  font-weight: 400;
  position: relative;
  padding: 10px 10px;
}

.page-deal-assign-detail .grid.--grid02 .tbl-box .tbl th:not(:first-child) {
  border-left-color: #fff;
}

.page-deal-assign-detail .grid.--grid02 .tbl-box .tbl th:last-child {
  position: relative;
  text-align: left;
}

.page-deal-assign-detail .grid.--grid02 .tbl-box .tbl th:last-child > div {
  position: absolute;
  top: 0;
  bottom: 0;
  right: 5px;
  margin: auto;
  font-size: 1rem;
  color: #fff;
  display: flex;
  align-items: center;
}

.page-deal-assign-detail .grid.--grid02 .tbl-box .tbl td {
  background: #fff;
  padding: 5px;
}

.page-deal-assign-detail .grid.--grid02 .tbl-box .tbl td:first-child {
  padding: 5px 5px 5px 5px;
}

.page-deal-assign-detail .grid.--grid02 .tbl-box .tbl td .td-flex {
  display: flex;
  align-items: center;
  justify-content: flex-end;
}

.page-deal-assign-detail .grid.--grid02 .tbl-box .tbl td .td-flex .etit-btn-area {
  width: calc(100% - 70px);
  padding-right: 5px;
}

.page-deal-assign-detail .grid.--grid02 .tbl-box .tbl td .td-flex .etit-btn-area button {
  background: #f3fad2;
  border: 1px solid #ccc;
  display: flex;
  align-items: center;
  justify-content: center;
  height: 25px;
  width: 100%;
  font-size: 1.2rem;
  padding: 0 5px;
  font-weight: 600;
  letter-spacing: -0.03em;
}

.page-deal-assign-detail .grid.--grid02 .tbl-box .tbl td .td-flex .input-text {
  width: 70px;
  padding: 5px 0;
}

.page-deal-assign-detail .grid.--grid02 .tabbox {
  border: none;
  min-height: auto;
  background: none;
}

.page-deal-assign-detail .grid.--grid02 .tabbox-nav {
  width: 90%;
}

.page-deal-assign-detail .grid.--grid02 .tabbox-nav ul li a {
  font-weight: 700;
  color: #fff;
}

.page-deal-assign-detail .grid.--grid02 .tabbox-nav ul li.active {
  position: relative;
}

/* body.edit.page-deal-assign-detail .grid.--grid02 .tabbox-nav ul li.active::after {
  content: "";
  position: absolute;
  bottom: 0;
  right: 5px;
  margin: auto;
  background: url(../img/icon_edit.png) left center no-repeat;
  background-size: contain;
  width: 30px;
  height: 30px;
} */
body.edit .tabbox-nav .edit-icon {
  position: absolute;
  bottom: 0;
  right: 5px;
  width: 30px;
  height: 30px;
  background: url(../img/icon_edit.png) no-repeat center;
  background-size: contain;
  cursor: pointer;
}


.page-deal-assign-detail .grid.--grid02 .tabbox-nav ul li.active a {
  background: #fff !important;
  color: #333 !important;
}

.page-deal-assign-detail .grid.--grid02 .tabbox-nav ul li:nth-child(1) a {
  background: #0067c0;
}

.page-deal-assign-detail .grid.--grid02 .tabbox-nav ul li:nth-child(1).active {
  border-top: 2px solid #0067c0;
  border-right: 2px solid #0067c0;
  border-left: 2px solid #0067c0;
}

.page-deal-assign-detail .grid.--grid02 .tabbox-nav ul li:nth-child(2) a {
  background: #fe7c71;
}

.page-deal-assign-detail .grid.--grid02 .tabbox-nav ul li:nth-child(2).active {
  border-top: 2px solid #fe7c71;
  border-right: 2px solid #fe7c71;
  border-left: 2px solid #fe7c71;
}

.page-deal-assign-detail .grid.--grid02 .tabbox-nav ul li:nth-child(3) a {
  background: #7de6ff;
}

.page-deal-assign-detail .grid.--grid02 .tabbox-nav ul li:nth-child(3).active {
  border-top: 2px solid #7de6ff;
  border-right: 2px solid #7de6ff;
  border-left: 2px solid #7de6ff;
}

.page-deal-assign-detail .grid.--grid02 .tabbox-content {
  border: 2px solid #0067c0;
  margin-top: -2px;
  background: #fff;
  height: 800px;
  overflow-y: scroll;
  padding: 20px 10px;
}

.page-deal-assign-detail .grid.--grid02 .tabbox-content.--tab01 {
  border-color: #0067c0;
}

.page-deal-assign-detail .grid.--grid02 .tabbox-content.--tab02 {
  border-color: #fe7c71;
}

.page-deal-assign-detail .grid.--grid02 .tabbox-content.--tab03 {
  border-color: #7de6ff;
}

.page-deal-assign-detail .grid.--grid02 .tabbox-item .flex {
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  gap: 5px;
  width: calc(100% - 30px);
}

.page-deal-assign-detail .grid.--grid02 .tabbox-item .flex .item {
  margin: 0;
  position: relative;
}

.page-deal-assign-detail .grid.--grid02 .tabbox-item .flex .item .box-del {
  position: absolute;
  right: -30px;
  bottom: 34px;
  margin: auto;
  display: flex;
  align-items: center;
}

.page-deal-assign-detail .grid.--grid02 .tabbox-item .flex .item .t1 {
  display: flex;
  align-items: center;
  justify-content: center;
}

.page-deal-assign-detail .grid.--grid02 .tabbox-item .flex .item .t1 .input-text {
  width: 70px;
  margin: 0 2px;
  padding: 5px 0;
  text-align: center;
}

.page-deal-assign-detail .grid.--grid02 .tabbox-item .flex .item .t2 {
  margin-top: 5px;
  min-height: 86px;
  background: #e1f5fb;
  text-align: center;
  border: 1px solid #000;
  border-radius: 10px;
  padding: 8px 10px;
  line-height: 1.5;
}

.page-deal-assign-detail .grid.--grid02 .tabbox-item .flex .item.invalid .input-text {
  color: #ccc;
}

.page-deal-assign-detail .grid.--grid02 .tabbox-item .flex .item.invalid .t2 {
  color: #ccc;
}

.page-deal-assign-detail .grid.--grid02 .tabbox-item#tab01.active .flex .item .t2 {
  background: #e3f4fe;
}

.page-deal-assign-detail .grid.--grid02 .tabbox-item#tab02.active .flex .item .t2 {
  background: #ffede6;
}

.page-deal-assign-detail .grid.--grid02 .tabbox-item#tab03.active .flex .item .t2 {
  background: #dcfcfe;
}

.page-deal-assign-detail .grid.--grid02 .tabbox .etit-btn-area.--add {
  margin-bottom: 10px;
}

.page-deal-assign-detail .grid.--grid02 .tabbox .etit-btn-area.--add .btn-area {
  display: flex;
  justify-content: flex-end;
}

.page-deal-assign-detail .grid.--grid02 .tabbox .etit-btn-area.--add .btn-detail-add {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 120px;
  height: 30px;
  background: #9c9c9c;
  border: 1px solid #000;
  color: #fff;
}

.page-deal-assign-detail .grid.--grid02 .tabbox .etit-btn-area.--add .btn-detail-add div {
  position: relative;
}

.page-deal-assign-detail .grid.--grid02 .tabbox .etit-btn-area.--add .btn-detail-add div::before {
  content: '';
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  margin: auto;
  width: 18px;
  height: 18px;
  background: #fff;
  border-radius: 50%;
}

.page-deal-assign-detail .grid.--grid02 .tabbox .etit-btn-area.--add .btn-detail-add div > span {
  position: relative;
  display: block;
  padding-left: 25px;
}

.page-deal-assign-detail .grid.--grid02 .tabbox .etit-btn-area.--add .btn-detail-add div > span::before {
  content: '';
  position: absolute;
  top: 0;
  bottom: 0;
  left: 4px;
  margin: auto;
  width: 10px;
  height: 2px;
  background: #9c9c9c;
}

.page-deal-assign-detail .grid.--grid02 .tabbox .etit-btn-area.--add .btn-detail-add div > span::after {
  content: '';
  position: absolute;
  top: 0;
  bottom: 0;
  left: 8px;
  margin: auto;
  height: 10px;
  width: 2px;
  background: #9c9c9c;
}

.page-deal-assign-detail .grid.--grid02 .tabbox .etit-btn-area.--paste button, .page-deal-assign-detail .grid.--grid02 .tabbox .etit-btn-area.--clear button {
  border: 1px solid #ccc;
  display: flex;
  align-items: center;
  justify-content: center;
  height: 25px;
  font-size: 1.2rem;
  padding: 0 3px;
  font-weight: 600;
  letter-spacing: -0.05em;
  border-radius: 5px;
}

.page-deal-assign-detail .grid.--grid02 .tabbox .etit-btn-area.--paste button {
  background: #f3fad2;
}

.page-deal-assign-detail .grid.--grid02 .tabbox .etit-btn-area.--clear button {
  background: #f8dac9;
}

.page-private-list .col-shop-code {
  width: 5em;
}

.page-private-list .col-facility-code {
  width: 7em;
}

.page-private-list .col-private-code {
  width: 7em;
}

.page-facility-list .col-shop-code {
  width: 9em;
}

.page-facility-list .col-facility-code {
  width: 7em;
}

.page-facility-list .col-start {
  width: 8em;
}

.page-facility-list .col-between {
  width: 2em;
}

.page-facility-list .col-end {
  width: 8em;
}

.page-facility-list .col-time {
  width: 6em;
}

.page-deal-list .col-shop-code {
  width: 5em;
}

.page-deal-list .col-facility-code {
  width: 5em;
}

.page-deal-list .col-deal-code {
  width: 8em;
}

.page-deal-list .col-price {
  width: 6em;
}

.page-deal-list .col-time {
  width: 8em;
}

.page-deal-list .col-interval {
  width: 10em;
}

.page-deal-list .col-arrow {
  width: 10em;
}

.page-staff-list .col-shop-code {
  width: 5em;
}

.page-staff-list .col-facility-code {
  width: 8em;
}

.page-staff-list .col-staff-code {
  width: 8em;
}

.page-staff-list .col-staff-name {
  width: 16em;
}

.page-staff-list .col-gender {
  width: 8em;
}

.page-staff-list .col-occupation {
  width: 6em;
}

.page-staff-list .col-level {
  width: 10em;
}

.page-dealassign-list .col-shop-code {
  width: 9em;
}

.page-dealassign-list .col-deal-code {
  width: 7em;
}

.page-work-list .col-shop-code {
  width: 9em;
}

.page-work-list .col-facility-code {
  width: 7em;
}

.box404 {
  display: table;
  margin: auto;
  padding-top: 100px;
}

.box404 h1 {
  font-size: 5rem;
  font-weight: 700;
  margin-bottom: 15px;
}

.box404-link {
  display: flex;
  justify-content: center;
  margin-top: 50px;
}

.box404-link a {
  display: flex;
  align-items: center;
  justify-content: center;
  background: #021c68;
  height: 100%;
  width: 100%;
  text-align: center;
  color: #fff;
  font-size: 2rem;
  font-weight: 700;
  width: 300px;
  height: 50px;
}

.menu-list {
  padding-top: 125px;
}

.menu-list ul {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  max-width: 800px;
  margin: auto;
}

.menu-list ul li {
  width: 40%;
}

.menu-list ul li:nth-child(n + 3) {
  margin-top: 40px;
}

.menu-list ul li a {
  display: flex;
  justify-content: center;
  align-items: center;
  text-align: center;
  color: #fff;
  font-size: 2.4rem;
  font-weight: 500;
  width: 100%;
  height: 70px;
  background: #4d4d4d;
  border-radius: 5px;
}

.wid100 {
  width: 100px !important;
}

.wid150 {
  width: 150px !important;
}

.wid200 {
  width: 200px !important;
}

.wid300 {
  width: 300px !important;
}

.wid400 {
  width: 400px !important;
}

.wid500 {
  width: 500px !important;
}

/* プレースフォルダ設定 */
::-webkit-input-placeholder {
  color: #9f9f9f;
}

:-ms-input-placeholder {
  color: #9f9f9f;
}

::placeholder {
  color: #9f9f9f;
}

input:focus::placeholder {
  color: transparent !important;
  transition: 0.1s;
}

input:focus::-webkit-input-placeholder {
  color: transparent !important;
  transition: 0.1s;
}

input:focus:-moz-placeholder {
  color: transparent !important;
  transition: 0.1s;
}

input:focus::-moz-placeholder {
  color: transparent !important;
  transition: 0.1s;
}

button.btn-del {
  position: relative;
  width: 25px;
  height: 25px;
}

button.btn-del::after {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
  background: url(../img/icon_trash.svg) left center no-repeat;
  background-size: contain;
  width: 100%;
  height: 100%;
}

/* modal */
.modal {
  position: fixed;
  top: 50vh;
  left: 50vw;
  transform: translate(-50%, -50%);
  max-width: 800px;
  width: 100%;
  z-index: 100;
  display: none;
  box-shadow: 0 0 10px rgba(0, 0, 0, 0.3);
}
.modal-bg {
  position: fixed;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100vh;
  background: rgba(0, 0, 0, .5);
  z-index: 5;
  display: none;
}
.modal-head {
  background: #4d4d4d;
  color: #fff;
  text-align: center;
  padding: 8px 0;
  position: relative;
}
.modal-head h2 {
  font-size: 30px;
}
.modal-body {
  background: #FFF8F0;
  min-height: 250px;
}
.modal-inner {
  padding: 50px 80px;
}
.modal-input-box {
  margin-bottom: 50px;
}
.modal-input-item {
  display: flex;
  align-items: center;
  gap: 0 20px;
  font-size: 18px;
}
.modal-input-item:not(:last-of-type) {
  margin-bottom: 30px;
}
.modal-input-item dt {
  font-weight: 500;
  width: 100px;
}
.modal-input-item dd {
  flex: 1;
}
.modal-input-item dd :is(input, select) {
  background: #fff;
  width: 100%;
  padding: 7px 14px;
  border: 1px solid #ccc;
  outline: none;
}
.modal-input-item dd input:disabled {
  color: #aaa;
}
.modal-input-item dd select {
  cursor: pointer;
}
.modal-btns {
  display: flex;
  justify-content: center;
  gap: 0 50px;
}
.modal-btn {
  border: 3px double #aaa;
  padding: 10px;
  width: 23%;
  text-align: center;
  font-weight: 600;
  cursor: pointer;
}
.modal-btn.yellow {
  background: #fbd261;
}
.modal-btn.clear {
  background: transparent;
}
.modal-btn.red {
  background: #ff7038;
}
.modal-btn.lightblue {
  background: #38b3ff;
}
.modal-close {
  position: absolute;
  width: 30px;
  height: 30px;
  border-radius: 50%;
  background: #fff;
  top: 50%;
  right: 20px;
  transform: translateY(-50%);
  cursor: pointer;
}
.modal-close::before {
  content: "";
  width: 15px;
  height: 3px;
  background: #4d4d4d;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%) rotate(45deg);
}
.modal-close::after {
  content: "";
  width: 15px;
  height: 3px;
  background: #4d4d4d;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%) rotate(-45deg);
}
.level-btn {
  margin: 15px 0 10px auto;
  width: 200px;
}
.level-btn button {
  background: #7a7a7a;
  text-align: center;
  padding: 10px;
  color: #fff;
  width: 100%;
}
.level-table input {
  width: 100%;
  outline: none;
  padding: 10px 15px;
  border: 1px solid #ccc;
}
.level-table input.--center {
  text-align: center;
}
.level-table tbody tr td:first-child {
  display: flex;
  align-items: center;
  gap: 0 10px;
}
.level-table tbody tr td:first-child {
  display: flex;
  align-items: center;
  gap: 0 10px;
}
.level-table tbody tr td:first-child span {
  font-size: 2rem;
}
.level-table .input-hide :is(input, span) {
  opacity: 0;
  visibility: hidden;
}

.master-detail-row {
  position: relative;
}

.fake-input-text {
  position: absolute;
  top: 0;
  left: 1;
  padding: 8px 12px;
  font-size: 14px;
  color: #333333;
  pointer-events: none;
}

.input-text.facility_code.hidden_code {
  position: relative;
  background-color: #f5f5f5;
  color: transparent; /* テキストを見えなくする */
}



/* ===== Alert base ===== */
.alert {
  --_bg: #fef3f2;            /* 背景 */
  --_text: #7a271a;          /* 文字色 (WCAGコントラスト確保) */
  --_border: #fda29b;        /* 枠線色 */
  --_accent: #d92d20;        /* 左ライン＆アイコン色 */

  position: relative;
  display: grid;
  grid-template-columns: auto 1fr auto;
  gap: .75rem .75rem;
  align-items: start;

  padding: .875rem 1rem;
  border: 1px solid var(--_border);
  border-left: .4rem solid var(--_accent);
  border-radius: .6rem;
  background: var(--_bg);
  color: var(--_text);
  line-height: 1.55;
  box-shadow: 0 1px 0 rgba(16,24,40,.04);
}

.alert::before {
  content: "";
  width: 1.25rem;
  height: 1.25rem;
  margin-top: .1rem;
  border-radius: .25rem;
  background: var(--_accent);
}

.alert .alert-title {
  font-weight: 700;
  margin: 0;
}
.alert .alert-message {
  margin: 0;
  grid-column: 2 / -1;
}
.alert a {
  color: var(--_accent);
  text-decoration: underline;
  text-underline-offset: 2px;
}
.alert .alert-actions {
  display: inline-flex;
  gap: .5rem;
  align-items: center;
}
.alert .btn {
  border: 1px solid var(--_accent);
  background: transparent;
  color: var(--_accent);
  padding: .35rem .6rem;
  border-radius: .45rem;
  font-size: .875rem;
  cursor: pointer;
}
.alert .btn:hover { background: rgba(217,45,32,.08); }

/* ===== Danger variant ===== */
.alert.alert-danger {
  /* カラー変数を上書き */
  --_bg: #fef3f2;
  --_text: #7a271a;
  --_border: #fda29b;
  --_accent: #d92d20;
}

/* ダークモード */
@media (prefers-color-scheme: dark) {
  .alert.alert-danger {
    --_bg: #2b0f0d;
    --_text: #ffd9d3;
    --_border: #7a241f;
    --_accent: #ff6b5e;
    box-shadow: inset 0 1px 0 rgba(255,255,255,.04);
  }
}

/* モーション控えめ環境ではアニメ無し推奨 */
@media (prefers-reduced-motion: reduce) {
  .alert, .btn { transition: none !important; }
}

.unit-input {
  display: flex;
  align-items: center;
  gap: 3px;
}

body.edit input.input-text:read-only,
body.edit textarea:read-only,
body.edit select.select-box:read-only,
body.page-login input.input-text:read-only {
  background: none !important;
}

.login-staffcode {
  display: flex;
}

/* スタッフマスタ詳細（セラピスト用） */
.page-staff-detail-therapist .header-mode {
  padding-left: 70px;
}
.page-staff-detail-therapist .grid {
  display: grid;
}
.page-staff-detail-therapist .grid.--grid03 {
  grid-template-columns: 1fr 0.6fr 1fr;
}
.page-staff-detail-therapist .grid.--grid03 .col {
  width: 100%;
}
.page-staff-detail-therapist dd,
.page-staff-detail-therapist textarea.input-text {
  width: 100%;
}
.page-staff-detail-therapist .grid.--grid03 textarea {
  height: 160px;
}
.page-staff-detail-therapist .master-detail-row dl {
  grid-template-columns: 150px 1fr;
}
.page-staff-detail-therapist .grid.--grid03 .col:nth-child(3) .master-detail-row dl {
  grid-template-columns: 90px 1fr;
}
.page-staff-detail-therapist .grid.--grid03 .col:nth-child(3) .master-detail-row dl dd input:nth-child(2) {
  flex: 1;
}
.page-staff-detail-therapist .tag-wrap {
  margin-top: 50px;
}
.page-staff-detail-therapist .js_tab {
  display: flex;
  position: relative;
  z-index: 2;
  top: 1px;
}
.page-staff-detail-therapist .js_tab li {
  width: 25%;
  padding: 10px;
  text-align: center;
  border-top: 1px solid #ccc;
  border-right: 1px solid #ccc;
  background: #ccc;
  cursor: pointer;
}
.page-staff-detail-therapist .js_tab li.active {
  background: #fff8ef;
}
.page-staff-detail-therapist .js_tab li a {
  color: #fff;
}
.page-staff-detail-therapist .js_tab li.active a {
  color: #333;
}
.page-staff-detail-therapist .tabbox-content {
  border-top: 1px solid #ccc;
}
.page-staff-detail-therapist .tbl-box th {
  background: #4d4d4d;
  color: #fff;
  font-weight: 400;
  position: relative;
}
.page-staff-detail-therapist .tbl-box table {
  table-layout: fixed;
  word-wrap: break-word;
  white-space: normal;
  width: 100%;
  border: 1px solid #333;
}
.page-staff-detail-therapist .tbl-box :is(th, td) {
  padding: 5px;
  vertical-align: middle;
}
.page-staff-detail-therapist #tab01 .tbl-box th:nth-child(1) {
  width: 130px;
}
.page-staff-detail-therapist #tab01 .tbl-box th:nth-child(2) {
  padding-left: 10px;
}
.page-staff-detail-therapist #tab01 .tbl-box th:nth-child(3) {
  width: 100px;
}
.page-staff-detail-therapist #tab01 .tbl-box th:nth-child(4) {
  width: 50px;
}
.page-staff-detail-therapist #tab02 .tbl-box th:nth-child(1) {
  width: 120px;
}
.page-staff-detail-therapist .tbl-box th:not(:first-child) {
  border-left: 1px solid #fff;
}
.page-staff-detail-therapist .tbl-box .tbl th .add {
  background: #fff;
  width: 25px;
  height: 25px;
  position: absolute;
  right: 0;
  left: 0;
  top: 0;
  bottom: 0;
  margin: auto;
  border-radius: 50%;
}
.page-staff-detail-therapist .tbl-box .tbl th .add div {
  position: relative;
}
.page-staff-detail-therapist .tbl-box .tbl th .add div::before {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  right: 0;
  left: 0;
  margin: auto;
  width: 3px;
  height: 17px;
  background: #4d4d4d;
}
.page-staff-detail-therapist .tbl-box .tbl th .add div::after {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  right: 0;
  left: 0;
  margin: auto;
  width: 17px;
  height: 3px;
  background: #4d4d4d;
}
.page-staff-detail-therapist .tbl-box td {
  background: #fff;
  vertical-align: middle;
}
.page-staff-detail-therapist .tbl-box .tbl td:not(:last-child) {
  border-right: 1px solid #ccc;
}
.page-staff-detail-therapist .tbl-box .tbl tr:not(:last-child) td {
  border-bottom: 1px solid #ccc;
}
.page-staff-detail-therapist .tbl-box .tbl td > div {
  min-height: 35px;
}
.page-staff-detail-therapist .level-box table tr td:first-child {
  font-size: 2rem;
  line-height: 1.5;
  width: 30px;
  text-align: center;
}
.page-staff-detail-therapist .level-box table tr:nth-child(1) td:first-child {
  color: #ff2319;
}
.page-staff-detail-therapist .level-box table tr:nth-child(2) td:first-child {
  color: #fe9f00;
}
.page-staff-detail-therapist .level-box table tr:nth-child(3) td:first-child {
  color: #6db349;
}
.page-staff-detail-therapist .level-box table tr:nth-child(4) td:first-child {
  color: #0749fe;
}
.page-staff-detail-therapist .level-box table tr:nth-child(5) td:first-child {
  color: #700ca5;
}
.page-staff-detail-therapist .level-box table tr td:nth-child(2) {
  padding-left: 10px;
  color: #700ca5;
}
.page-staff-detail-therapist #tab01 textarea {
  height: 160px;
}
.page-staff-detail-therapist .master-detail .tabbox-item .item + .item {
  margin: 0;
}
.page-staff-detail-therapist #tab01 .grid {
  grid-template-columns: 1fr 470px;
}
.page-staff-detail-therapist #tab02 .grid {
  grid-template-columns: 1fr 350px;
}
.page-staff-detail-therapist .master-detail #tab02 .master-detail-row dl {
  grid-template-columns: 120px 1fr;
  padding-top: 27px;
}
.page-staff-detail-therapist #tab02 dl dt {
  font-weight: 400;
}
.page-staff-detail-therapist #tab02 :is(.col, dl, textarea) {
  height: 100%;
}
.page-staff-detail-therapist #tab02 dl dd {
  height: 360px;
}
.page-staff-detail-therapist .tbl-box {
  padding-top: 27px;
  position: relative;
}
.page-staff-detail-therapist .table-btn {
  position: absolute;
  top: -10px;
  right: 0;
  background: #aaa;
  color: #fff;
  padding: 2px 10px;
  border: 1px solid #333;
  display: none;
}
.page-staff-detail-therapist.edit .table-btn {
  display: block;
}
.page-staff-detail-therapist .shift-note {
  display: none;
  margin-top: 20px;
}
.page-staff-detail-therapist.edit .shift-note {
  display: block;
}
.page-staff-detail-therapist .shift-modal-table {
  padding-top: 0;
  margin: 30px 0;
}
.page-staff-detail-therapist .shift-modal-table tr th:first-child {
  width: 60px;
}
.page-staff-detail-therapist .shift-modal-table tr th:nth-child(2) {
  width: 100px;
}
.page-staff-detail-therapist .shift-modal-table tr th:nth-child(3) {
  width: 258px;
}
.page-staff-detail-therapist .shift-modal-table tr th:nth-child(4) {
  width: 100px;
}
.page-staff-detail-therapist .shift-modal-table tr th:nth-child(5) {
  width: 120px;
}
.page-staff-detail-therapist .shift-modal-table tr td:first-child {
  width: 60px;
}
.page-staff-detail-therapist .shift-modal-table tr td:nth-child(2) {
  width: 100px;
}
.page-staff-detail-therapist .shift-modal-table tr td:nth-child(3) {
  width: 258px;
}
.page-staff-detail-therapist .shift-modal-table tr td:nth-child(4) {
  width: 100px;
}
.page-staff-detail-therapist .shift-modal-table tr td:nth-child(5) {
  width: 105px;
}
.page-staff-detail-therapist .shift-modal-table .tbl {
  width: 100%;
  border-collapse: collapse;
  table-layout: fixed;
}
.page-staff-detail-therapist .shift-modal-table .tbl thead, 
.page-staff-detail-therapist .shift-modal-table .tbl tbody tr {
  display: table;
  width: 100%;
  table-layout: fixed;
}
.page-staff-detail-therapist .shift-modal-table .tbl tbody.--scroll {
  display: block;
  height: 300px;
  overflow-y: scroll;
  width: 100%;
}


.page-staff-detail-therapist .tbl.productTable {
  border-collapse: collapse;
  width: 100%;
  table-layout: fixed;
}

.page-staff-detail-therapist .tbl.productTable thead th {
  position: sticky;
  top: 0;
  background: #4d4d4d;
  z-index: 2;
}

.page-staff-detail-therapist .tbl.productTable tbody.--scroll {
  display: block;
  max-height: 300px; 
  overflow-y: scroll;
}

.page-staff-detail-therapist .tbl.productTable thead, .page-staff-detail-therapist .tbl.productTable tbody tr {
  display: table;
  width: 100%;
  table-layout: fixed;
}

.page-staff-detail-therapist .tbl.productTable tbody td:nth-child(1) {
  width: 130px;
}
.page-staff-detail-therapist .tbl.productTable tbody td:nth-child(2) {
  padding-left: 10px;
}
.page-staff-detail-therapist .tbl.productTable tbody td:nth-child(3) {
  width: 100px;
}
.page-staff-detail-therapist .tbl.productTable tbody td:nth-child(4) {
  width: 35px;
}
.page-staff-detail-therapist .tbl.productTable thead td:nth-child(2) {
  width: 130px;
}
.page-staff-detail-therapist tbody td:not(:first-child) {
  border-left: 1px solid #fff;
}
.page-staff-detail-therapist .tbl.productTable::-webkit-scrollbar {
  height: 12px;
}


/* 分類登録 */
.window-wrap .deal-modal {
  display: block!important;
}
.deal-modal-table {
  margin-top: 40px;
}
.deal-modal .tbl td > div {
  min-height: 30px;
}
.deal-modal .tbl tr:nth-child(even) td {
  background: #fff;
}
.deal-modal .tbl tr th:first-child {
  width: 100px;
}
.deal-modal .tbl tr td:first-child {
  width: 100px;
}
.deal-modal .tbl tr th:nth-child(3) {
  width: 80px;
  position: relative;
}
.deal-modal .tbl tr td:nth-child(3) {
  width: 65px;
}
.deal-modal .tbl tr th:nth-child(3) .add {
  background: #fff;
  width: 25px;
  height: 25px;
  position: absolute;
  right: 0;
  left: 0;
  top: 0;
  bottom: 0;
  margin: auto;
  border-radius: 50%;
}
.deal-modal .tbl tr th:nth-child(3) .add div {
  position: relative;
}
.deal-modal .tbl tr th:nth-child(3) .add div::before {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  right: 0;
  left: 0;
  margin: auto;
  width: 3px;
  height: 17px;
  background: #4d4d4d;
}
.deal-modal .tbl tr th:nth-child(3) .add div::after {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  right: 0;
  left: 0;
  margin: auto;
  width: 17px;
  height: 3px;
  background: #4d4d4d;
}
.page-deal-detail .window-wrap .tbl tbody.--scroll {
  height: 500px;
}

.edit-register-newwindow {
  position: absolute;
  top: 20%;
  right: 80px;
  align-items: center;
  justify-content: center;
  width: 100px;
  height: 40px;
  border: 1px solid #fff;
  background: #fbd261;
  text-align: center;
  font-weight: 600;
  color: #333;
  -webkit-transition: all 0.4s ease;
  transition: all 0.4s ease;
}
.service-unit-price {
    display: flex;
    align-items: center;
}