@charset "UTF-8";
/*{*/
.eformsDesc {
  margin: 10px 0;
  padding-bottom: 20px;
  border-bottom: 1px solid #dcdcdc;
}

.eformsDesc_bottom {
  margin: 10px 0;
  padding-top: 20px;
}

.fillform {
  font-size: 14px;
  line-height: 26px;
  color: #252525;
}

@media (max-width: 992px) {
  .form-group label {
    padding-left: 15px !important;
    padding-right: 15px !important;
  }
}
.buttons_area {
  position: relative;
  margin-left: 75px;
  margin-top: 20px;
}

.button1 {
  color: #FFFFFF !important;
  font-size: 12px;
  padding: 8px 25px;
  border-radius: 3px;
  background: #5B5B5B;
  text-decoration: none;
}

.button1:hover {
  color: #FFFFFF !important;
  background: #787878;
}

.button2 {
  color: #FFFFFF !important;
  font-size: 12px;
  padding: 8px 25px;
  border-radius: 3px;
  background: #323232;
  text-decoration: none;
}

.button2:hover {
  color: #FFFFFF !important;
  background: #787878;
}

label.error {
  color: red;
  display: block;
}

#waitmsg {
  position: relative;
  display: none;
}

#waitmsg #maskmsg {
  left: 50%;
  margin-left: -25%;
  top: 40%;
  width: 50%;
  height: 120px;
  position: fixed;
  display: block;
  text-align: center;
  padding-top: 10px;
  -moz-opacity: 1;
  opacity: 1;
  font-weight: bold;
  color: #000;
  font-size: 16px;
  line-height: 230%;
  z-index: 9999;
  background: #fff url(../../../images/loading.gif) center center scroll no-repeat;
}

#waitmsg #maskcover {
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  min-height: 900px;
  position: fixed;
  display: block;
  background: #000;
  filter: Alpha(Opacity=80, FinishOpacity=80, Style=2);
  -moz-opacity: 0.5;
  opacity: 0.5;
  z-index: 9998;
}

.systemmsg {
  line-height: 1.5em;
  letter-spacing: 2px;
}

.error {
  color: red;
}

.formtitle {
  color: #4d4d4d;
  font-size: 18px;
  padding: 10px 0px;
}

.formdesc {
  color: #4d4d4d;
  padding: 10px 0px;
  margin-bottom: 20px;
}

/*recruitment}*/
.boxname {
  margin-right: 8px;
}

/*↓↓從eforms.php頁面移過來的css*/
.row,
.col-sm-6 {
  margin-top: 3px;
}

.btn_area {
  margin-left: 0px;
}

.mobile_c1,
.mobile_c2,
.mobile_c3 {
  margin-top: 3px;
}

.ebtn {
  color: #ffffff;
  line-height: 32px;
  padding: 0;
  background: #5b5b5b;
  border-radius: 3px;
  cursor: pointer;
  display: inline-block;
  float: left;
  margin-right: 5px;
}

.ebtn.refill_btn {
  display: none;
}

.ebtn a {
  width: 100%;
  display: block;
  padding: 0px 30px;
  color: #ffffff;
  text-decoration: none;
}

/*調整寬度*/
.new-form {
  margin-top: 30px;
  margin-left: -15px;
  margin-right: -15px;
}

.new-form .new-width .hasprename input {
  margin-bottom: 3px;
}

.new-form .new-width .web_btn1 {
  display: none;
}

.new-form .new-width .row .col-md-11 {
  margin-top: 15px;
  margin-bottom: 30px;
}

@media (min-width: 992px) {
  .new-form .new-width .must,
  .new-form .new-width .control-label,
  .new-form .new-width .row .col-md-1 {
    width: 130px;
    padding-right: 20px;
    clear: left;
  }
  .new-form .new-width .col-md-5,
  .new-form .new-width .col-md-11 {
    width: calc(100% - 130px) !important;
    padding-right: 0;
  }
  .new-form .formdesc {
    padding-top: 0;
  }
  .new-form .new-width .currectsend_btn {
    float: right;
    margin-right: 0;
  }
  .new-form .form-horizontal .form-group {
    margin-left: 0;
    margin-right: 0;
  }
  .new-form .form-horizontal .form-group > .col-md-5:nth-child(even) {
    margin-bottom: 15px;
  }
  .new-form .form-horizontal .form-group > .col-md-5:last-child {
    margin-bottom: 0;
  }
}
@media (min-width: 801px) {
  .mobile_c1,
  .mobile_c2,
  .mobile_c3 {
    width: 32%;
    display: inline;
    margin-right: 1%;
  }
  .new-width .mobile_c1,
  .new-width .mobile_c2,
  .new-width .mobile_c3 {
    width: 31.5%;
  }
}
@media (min-width: 800px) {
  .new-form .new-width .control-label {
    text-align: left !important;
  }
}
@media (max-width: 800px) {
  .ebtn {
    float: none;
    width: 100%;
    display: block;
    margin-top: 5px;
    text-align: center;
  }
}
@media (min-width: 768px) {
  .new-width .mobile_c1,
  .new-width .mobile_c2,
  .new-width .mobile_c3 {
    width: 31.5%;
  }
}
/*------------檔案上傳 Start------------*/
.cust_upload::after {
  display: none;
}

.cust_upload_btn {
  display: inline-block;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
  margin: 0 15px 0 0;
  background: #999;
  color: #fff;
  padding: 0.5em 1.3em;
}

.no-touch .cust_upload_btn:hover {
  background: #222;
}

.cust_filelist {
  padding: 0 0 15px 0;
  font-size: 0;
  /*為了消除inline-block間距*/
  letter-spacing: 0;
}

.cust_file {
  position: relative;
  display: inline-block;
  vertical-align: top;
  margin: 8px 15px 8px 0px;
  width: 180px;
  border: #efefef 1px solid;
  border-radius: 3px;
  overflow: hidden;
  background: #efefef;
  font-size: 14px;
  text-align: center;
  -webkit-transition: all 0.2s;
  transition: all 0.2s;
}

.cust_file[data-filetype=pic] {
  /*檔案是圖片時最寬50%*/
  max-width: calc(50% - 15px);
}

.cust_file.error {
  color: inherit;
}

.no-touch .cust_file:hover {
  background: #fff;
}

/*添加::before顯示檔案類型：不是圖片或圖片有錯*/
.cust_file:not([data-filetype=pic])::before,
.cust_file[data-filetype=pic].error::before {
  content: attr(data-filetype);
  padding: 0.34em 1em;
  font-size: 12px;
  line-height: 1;
  letter-spacing: 1px;
  text-transform: uppercase;
  color: #fff;
  background: #ccc;
  border-radius: 0.8em;
  display: inline-block;
  position: absolute;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  left: 50%;
  bottom: 55%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
}

.cust_filelink {
  position: relative;
  display: block;
  border: 0;
  text-decoration: none;
}

.cust_fileimg {
  display: block;
  max-width: 100%;
  margin: 0 auto;
}

.cust_file:hover .cust_fileimg {
  opacity: 0.8;
}

.cust_filename {
  position: absolute;
  top: 52%;
  display: block;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  width: 100%;
  padding: 0 1em;
  line-height: 1.5;
  text-align: center;
  overflow: hidden;
  text-overflow: ellipsis;
  word-break: break-all;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

.cust_fileimg + .cust_filename {
  /*有圖片時 就隱藏檔名*/
  display: none;
}

.cust_file.newfile .cust_fileimg + .cust_filename {
  /*新上傳的圖片，依然要顯示檔名*/
  position: relative;
  display: block;
  top: 0;
}

.cust_file:not([data-filetype=pic]) .cust_filelink::before {
  content: "";
  display: block;
  padding-top: 61.8%;
  min-height: 8em;
  /*檔名最多2行3em*/
}

/*呈上，準備上傳的新檔案，還沒有檔案連結可以撐高，所以要給他高度*/
.newfile.cust_file:not([data-filetype=pic]),
.newfile.cust_file[data-filetype=pic].error {
  height: 8em;
}

.cust_errormsg {
  position: absolute;
  color: #fff;
  background: red;
  border-radius: 3px;
  /* margin: 0.25em 0 0 6px; */
  padding: 0.34em 0.5em;
  font-size: 0.857em;
  line-height: 1;
}

/*刪除按鈕*/
.cust_filedel {
  position: absolute;
  right: 0;
  top: 0;
  margin: 0;
  padding: 0.95em 1em;
  background: #aaa;
  color: #fff;
  outline: 0;
  border: 0;
  white-space: nowrap;
  font-size: 0.875em;
  line-height: 1;
  text-decoration: none;
  z-index: 2;
  opacity: 1;
  -webkit-transition: all 0.25s;
  transition: all 0.25s;
}

/*準備上傳的新檔案，按鈕會是"取消"，必須一直存在*/
.newfile .cust_filedel,
.no-touch .newfile .cust_filedel {
  opacity: 1;
}

.no-touch .cust_filedel {
  /*桌機時按鈕小一點*/
  padding: 0.4em 0.7em;
  opacity: 0;
}

.no-touch .cust_filedel:hover {
  background: red;
}

.no-touch .cust_file:hover .cust_filedel {
  opacity: 1;
}

/*因為這個功能銷售時只提供RWD版本，所以RWD寫在這也無妨，2.0不會有此欄位*/
@media (max-width: 767px) {
  .newfile.cust_file:not([data-filetype=pic]),
  .newfile.cust_file[data-filetype=pic].error {
    height: auto;
  }
  .cust_file:not([data-filetype=pic]) {
    width: auto;
  }
  .cust_file:not([data-filetype=pic]):not(.newfile) {
    padding: 0 4em 0 0;
  }
  .cust_file:not([data-filetype=pic]) .cust_errormsg {
    position: relative;
  }
  .cust_filename {
    position: relative;
    top: 0;
    padding: 0.5em 1em;
    text-align: left;
  }
  .cust_file:not([data-filetype=pic])::before {
    display: none !important;
  }
  .cust_file:not([data-filetype=pic]) .cust_filelink::before {
    display: none;
  }
}
/*檔案上傳 END*/
/*↑↑從eforms.php頁面移過來的css*/
/*2025 新增 選擇日期區間*/
.reservation-box {
  max-width: 500px;
  width: 100%;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

.time-title {
  color: var(--ColorPrimary, #333);
  margin-top: 30px;
  margin-bottom: 20px;
  font-size: 1.1em;
  border-top: 1px solid var(--BorderColorPrimary, #ddd);
  padding-top: 20px;
}

.time-script {
  color: var(--TextColorTitle, #ccc);
  width: 100%;
}

.circle-date-container,
.square-time-container {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 12px;
  margin-top: 10px;
}

.date-button {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  border: 1.5px solid var(--ColorPrimary, #333);
  border-radius: 5px;
  cursor: pointer;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  height: 70px;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  text-align: center;
  width: 70px;
  color: var(--ColorPrimary, #333);
  -webkit-transition: all 0.2s ease-in-out;
  transition: all 0.2s ease-in-out;
}

.date-button.active {
  background-color: var(--ColorPrimary, #333);
  color: var(--BtnPrimaryTextColor, #fff);
  -webkit-transform: translateY(-2px);
          transform: translateY(-2px);
  -webkit-box-shadow: 0 2px 6px rgba(51, 51, 51, 0.4);
          box-shadow: 0 2px 6px rgba(51, 51, 51, 0.4);
}

.date-button:disabled {
  border-color: #ccc;
  color: #ccc;
  cursor: not-allowed;
  background-color: #f9f9f9;
}

.week-day {
  font-size: 14px;
}

.date-text {
  font-size: 16px;
  font-weight: bold;
}

.square-time {
  border: 1.5px solid var(--ColorPrimary, #333);
  border-radius: 8px;
  padding: 10px 14px;
  cursor: pointer;
  text-align: center;
  color: var(--ColorPrimary, #333);
  -webkit-transition: all 0.2s ease-in-out;
  transition: all 0.2s ease-in-out;
  font-weight: 500;
}

.square-time.active {
  background-color: var(--ColorPrimary, #333);
  color: var(--BtnPrimaryTextColor, #fff);
}

@media (hover: hover) {
  .date-button:hover {
    background-color: var(--ColorPrimaryHover, #ededed);
    -webkit-transform: translateY(-2px);
            transform: translateY(-2px);
  }
  .date-button.active:hover {
    background-color: var(--ColorPrimary, #333);
    color: var(--BtnPrimaryTextColor, #fff);
    -webkit-transform: translateY(-2px);
            transform: translateY(-2px);
    -webkit-box-shadow: 0 2px 6px rgba(0, 0, 0, 0.4);
            box-shadow: 0 2px 6px rgba(0, 0, 0, 0.4);
  }
  .square-time:hover {
    background-color: var(--ColorPrimaryHover, #ddd);
    -webkit-transition: border 0.3s, background-color 0.3s;
    transition: border 0.3s, background-color 0.3s;
  }
  .square-time.active:hover {
    background-color: var(--ColorPrimary, #333);
    color: var(--BtnPrimaryTextColor, #fff);
  }
}
.selected-list {
  list-style-type: none;
  padding: 0;
  margin: 10px 0 0 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 10px;
}

.selected-item {
  background-color: var(--ColorPrimaryHover, #ededed);
  color: var(--ColorPrimary, #333);
  padding: 8px 12px;
  border-radius: 20px;
  font-size: 14px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 8px;
}

.remove-btn {
  padding: 0;
  background-color: var(--ColorPrimary, #333);
  color: var(--BtnPrimaryTextColor, #fff);
  border: none;
  border-radius: 50%;
  width: 18px;
  height: 18px;
  font-size: 18px;
  line-height: 18px;
  text-align: center;
  cursor: pointer;
  font-weight: normal;
  -webkit-transition: opacity 0.2s;
  transition: opacity 0.2s;
}

.remove-btn:hover {
  opacity: 0.8;
}

.btn-check-more {
  width: 100%;
  cursor: pointer;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
  padding: 12px;
  margin-top: 20px;
  font-size: 16px;
  font-weight: bold;
  border-radius: 8px;
  -webkit-transition: all 0.2s ease-in-out;
  transition: all 0.2s ease-in-out;
  border: 1.5px solid var(--ColorPrimary, #333);
  text-align: center;
  background-color: transparent;
  color: var(--ColorPrimary, #333);
}

.btn-check-more:hover {
  background-color: var(--primary-color-light);
}

/*表單內容樣式C*/
.eforms-wrapper {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  /*手機版時欄位標題變成上下排*/
}
.eforms-wrapper > .form-row:first-child {
  margin-top: 0;
}
.eforms-wrapper .main-red,
.eforms-wrapper .form-require-alert {
  color: #ff0000;
}
.eforms-wrapper .form-row {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  width: 100%;
  margin-top: 25px;
}
.eforms-wrapper .form-row-half {
  width: 50%;
  -webkit-box-flex: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
}
.eforms-wrapper .form-item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
.eforms-wrapper .form-item + .form-item {
  margin-top: 15px;
}
.eforms-wrapper .form-tag {
  width: 150px;
}
.eforms-wrapper .form-col {
  width: calc(100% - 150px);
  -webkit-box-flex: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
}
.eforms-wrapper .form-style {
  display: block;
  width: 100%;
  padding: 6px 12px;
  background-color: #eee;
  border: 1px transparent solid;
  border-radius: 0;
  -webkit-box-shadow: none;
          box-shadow: none;
  line-height: 1.5;
}
.eforms-wrapper .form-style:focus {
  outline: 0;
  -webkit-box-shadow: none;
          box-shadow: none;
  border-color: #999;
  background-color: #fff;
}
.eforms-wrapper .form-item-memo,
.eforms-wrapper .form-require-alert {
  width: 100%;
  margin-top: 5px;
}
.eforms-wrapper .form-checkbox,
.eforms-wrapper .form-radio {
  margin-right: 15px;
  font-weight: normal;
  cursor: pointer;
}
.eforms-wrapper .address-item {
  gap: 0 10px;
}
.eforms-wrapper .address-item .form-row-half {
  width: calc(50% - 5px);
}
.eforms-wrapper .captcha-col {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.eforms-wrapper .captcha-col .form-style {
  width: 150px;
  line-height: 1;
  padding: 0 12px;
  margin-right: 10px;
  min-height: 36px;
}
.eforms-wrapper .captcha-col .captcha-img {
  cursor: pointer;
  border: 1px solid #ccc;
  height: 34px;
}
.eforms-wrapper .captcha-col .captcha-refresh {
  margin-left: 10px;
  width: 34px;
  height: 34px;
  border: 0;
  cursor: pointer;
  background-color: transparent;
  color: #aaa;
}
.eforms-wrapper .google-recaptcha-alert {
  color: #a94442;
  border: 1px solid #ebccd1;
  background-color: #f2dede;
  padding: 15px;
  border-radius: 4px;
}
.eforms-wrapper .file-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 15px;
  min-height: 100px;
  border: 1px dashed #eee;
  padding: 10px;
}
.eforms-wrapper .file-item {
  width: 150px;
  height: 150px;
  border: 1px solid #ddd;
  border-radius: 5px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  position: relative;
  overflow: hidden;
  background-color: #f9f9f9;
  -webkit-box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1);
          box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1);
}
.eforms-wrapper .file-item.error {
  border-color: #ff4d4f;
  background-color: #fff1f0;
}
.eforms-wrapper .file-item img {
  max-width: 100%;
  max-height: 100px;
  -o-object-fit: contain;
     object-fit: contain;
  margin-bottom: 5px;
}
.eforms-wrapper .file-item .file-type-icon {
  font-size: 14px;
  color: #fff;
  margin-bottom: 5px;
  text-align: center;
  line-height: 1;
  background-color: #666;
  border-radius: 50px;
  padding: 8px 0;
  width: 90px;
}
.eforms-wrapper .file-item .file-name {
  font-size: 12px;
  word-break: break-all;
  text-align: center;
  padding: 0 5px;
  max-height: 30px;
  overflow: hidden;
  line-height: 1.2;
  color: #333;
}
.eforms-wrapper .file-item .file-type {
  font-size: 10px;
  color: #999;
  margin-bottom: 3px;
}
.eforms-wrapper .file-item .error-message {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  background-color: #ff4d4f;
  color: white;
  font-size: 12px;
  padding: 3px 5px;
  text-align: center;
  border-top-left-radius: 5px;
  border-top-right-radius: 5px;
  z-index: 10;
}
.eforms-wrapper .file-item .remove-btn {
  position: absolute;
  top: 5px;
  right: 5px;
  background: rgba(0, 0, 0, 0.5);
  color: white;
  border: none;
  border-radius: 50%;
  width: 20px;
  height: 20px;
  font-size: 12px;
  cursor: pointer;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  line-height: 1;
  z-index: 11;
}
.eforms-wrapper .add-file-button {
  width: 150px;
  height: 150px;
  border: 2px dashed #007bff;
  border-radius: 5px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  font-size: 24px;
  color: #007bff;
  cursor: pointer;
  background-color: #eaf5ff;
  -webkit-transition: background-color 0.2s;
  transition: background-color 0.2s;
}
.eforms-wrapper .add-file-button:hover {
  background-color: #d0e7ff;
}
.eforms-wrapper .hidden-input {
  display: none;
}
@media (max-width: 767px) {
  .eforms-wrapper .form-tag,
  .eforms-wrapper .form-col {
    width: 100%;
  }
  .eforms-wrapper .form-tag {
    margin-bottom: 8px;
  }
}