/* CSS overrides per 03_08 - tokens and UI components */
:root {
  --z-bottom-fixed: 4000;
  --z-modal: 100;   /* legacy modal z-index */
  --z-block: 10000; /* legacy OperationBlock */
  --z-notice: 10000;/* legacy NotificationBar */
  --focus-ring: 0 0 0 3px rgba(0, 109, 204, .35);
}

/* Notice (legacy classes) */
.notification[data-notification] {
  position: fixed;
  left: 0; top: 0; width: 100%;
  padding: 20px 0;
  z-index: var(--z-notice);
  background: #000; color: #fff;
}
@media (max-width: 767px) {
  .notification[data-notification] { padding: 13px 0; }
}
.notification[data-notification].notification-enter-active,
.notification[data-notification].notification-leave-active { transition: all .2s; }
.notification[data-notification].notification-enter { opacity: 0; transform: translateY(-200px); }
.notification[data-notification].notification-leave-to { opacity: 0; }
.notification[data-notification] .notification-context { text-align: center; font-weight: 700; }

/* Blocker (legacy class preserved) */
.operation-blocking[data-operation-block] { position: fixed; left: 0; top: 0; width: 100%; height: 100%; z-index: var(--z-block); }
.operation-blocking[data-operation-block].operation-blocking-enter-active,
.operation-blocking[data-operation-block].operation-blocking-leave-active { transition: all .1s; }
.operation-blocking[data-operation-block].operation-blocking-enter,
.operation-blocking[data-operation-block].operation-blocking-leave-to { opacity: 0; }

/* Errors (scoped by data-comp to avoid global impact) */
.c-error-summary[data-comp="error-summary"] { color: #d93025; }
.c-error-summary[data-comp="error-summary"]:empty { display: none; }
.c-form-error-text[data-comp="form-errors"] { margin-bottom: 0; margin-top: 15px; }
.c-form-error-text[data-comp="form-errors"]:empty { display: none; }
[data-comp="form-errors"] .c-form-error-text__dd > span > span { display: block; transition: all .2s; white-space: break-spaces; }
[data-comp="form-errors"] .list-enter, [data-comp="form-errors"] .list-leave-to { opacity: 0; transform: translateY(3px); }
[data-comp="form-errors"] .list-leave-active { position: absolute; }
/* Note: keep classes for semantics; no visual change to honor 1:1 layout */

/* Bottom Fixed: follow legacy styles in app.css/vue.css; no override here */

/* Scoped parity for DesiredConditionEditForm.vue */
.p-form[data-scope="desired-condition-edit"] { margin-top: 0; }
.p-form[data-scope="job-histories-edit"] { margin-top: 0; }
.p-form[data-scope="disability-edit"] { margin-top: 0; }
[data-scope="disability-edit"] .consideration-work-style-link {
  display: block;
  width: inherit;
}
[data-scope="disability-edit"] .c-radio--ul--max-width {
  display: flex;
  gap: 10px;
  list-style: none;
  flex-direction: column;
}
[data-scope="disability-edit"] .c-radio--label--max-width-description {
  font-size: 13px;
  font-weight: 400;
  line-height: 1.6;
}
[data-scope="disability-edit"] .c-radio--rabel--max-width {
  width: 100%;
  color: #000 !important;
}
[data-scope="disability-edit"] .support-usage-other {
  display: flex;
  align-items: flex-start;
  gap: 8px;
  margin-top: 12px;
  line-height: 1.5;
}
[data-scope="disability-edit"] .support-usage-other input {
  margin-top: 4px;
}
[data-scope="disability-edit"] .support-usage-other__label {
  display: block;
}
[data-scope="disability-edit"] .support-usage-other__desc {
  display: block;
  font-size: 13px;
  color: #555;
  margin-top: 4px;
  margin-left: 27px;
}
[data-scope="job-histories-edit"] .jhr-current { margin-bottom: 0; }
[data-scope="job-histories-edit"] .jhr-onleave { margin-top: 10px; }
[data-scope="job-histories-edit"] .jhr-expcount { margin-bottom: 20px; }
[data-scope="job-histories-edit"] .jhr-otherjobtext { margin-top: 20px; }
/* Profile/Skills/PR forms do not use data-scope; align spacing when top link precedes form */
.c-title-top-link + .p-form { margin-top: 0; }

/* FormWrapLead (migrated from Vue scoped style) */
.p-form__warp__lead { margin-top: -5px; margin-bottom: 20px; display: flex; justify-content: space-between; }
.p-form__warp__lead .link-outer { text-align: right; }
.p-form__warp__lead .link-outer:only-child { width: 100%; display: block; }
.p-form__warp__lead .c-icon-required { margin-right: 5px; }
.p-form__warp__lead a { text-decoration: none; }
@media (max-width: 767px) {
  .p-form__warp__lead { padding: 20px 15px; margin-top: 0; margin-bottom: 0; border-bottom: 1px solid #ddd; display: block; }
  .p-form__warp__lead p { font-size: 13px; margin-bottom: 5px; }
}

/* Ensure consistent spacing between period select links regardless of state */
.p-form-period .c-select-link {
  box-sizing: border-box;
}

/* Prevent clicks on visually disabled select links (e.g., 退職年月 when 在籍中) */
.c-select-link.is-disabled {
  pointer-events: none;
}

/* FormCheckboxesEmployment.vue styles */
[data-scope="desired-condition-edit"] .cst-checkboxes-employment {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  margin: 4px 0 0;
  padding: 0;
  list-style: none;
}
[data-scope="desired-condition-edit"] .cst-checkboxes-employment__item {
  margin: 0;
  padding: 0;
  border: none !important;
  background: transparent !important;
  box-shadow: none !important;
  display: inline-flex;
  align-items: center;
}
[data-scope="desired-condition-edit"] .cst-checkboxes-employment__label {
  color: #4a4a4a;
  font-weight: 500;
  padding-left: 8px;
  line-height: 1.6;
  border: none !important;
  background: transparent !important;
  box-shadow: none !important;
  min-height: 43px !important;
}
[data-scope="desired-condition-edit"] .cst-checkboxes-employment .c-checkbox {
  width: 18px;
  height: 18px;
  border: 1px solid #cfcfcf;
  border-radius: 3px;
  background: #f7f7f7;
  box-shadow: none;
  margin: 0;
  flex-shrink: 0;
}

/* DesiredConditionForm.vue (scoped) */
[data-scope="desired-condition-edit"] .dc-jobtype__note {
  margin: 0;
  color: #4a4a4a;
  line-height: 1.6;
}
[data-scope="desired-condition-edit"] .dc-jobtype__select {
  margin: 8px 0 12px;
}
[data-scope="desired-condition-edit"] .dc-jobtype__link {
  display: block;
  width: inherit;
}
[data-scope="desired-condition-edit"] .dc-jobtype__any {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  font-size: 16px;
  color: #4a4a4a;
  line-height: 1.4;
  margin-top: 6px;
}
[data-scope="desired-condition-edit"] .dc-jobtype__any input[type="checkbox"] {
  width: 18px;
  height: 18px;
  margin: 0;
  border: 1px solid #b8b8b8;
  border-radius: 3px;
}

/* Reset legacy layout classes if left in surrounding markup */
[data-scope="desired-condition-edit"] .p-form__warp__contents__dd__layout2 {
  display: contents !important;
}
[data-scope="desired-condition-edit"] .p-form__warp__contents__dd__layout2__li {
  width: auto !important;
  border: none !important;
  background: transparent !important;
  box-shadow: none !important;
  padding: 0 !important;
  margin: 0 !important;
}

/* Flatten required checkbox skin to match Vue component look */
[data-scope="desired-condition-edit"] .cst-checkboxes-employment .c-checkbox.c-checkbox--required + label.c-checkbox--label {
  border: none !important;
  background: transparent !important;
  padding-left: 8px;
}
[data-scope="desired-condition-edit"] .cst-checkboxes-employment .c-checkbox.c-checkbox--required:checked + label.c-checkbox--label {
  background: transparent !important;
  border: none !important;
}
[data-scope="desired-condition-edit"] .cst-checkboxes-employment .c-checkbox.c-checkbox--required--ver-w + label.c-checkbox--label {
  border: none !important;
  background: transparent !important;
}

/* Scoped parity for SkillEditForm.vue / SkillForm.vue */
.p-form[data-scope="skill-edit"] { margin-top: 0; }
[data-scope="skill-edit"] .c-plus-link:only-child { margin-top: 10px; }
[data-scope="skill-edit"] .c-plus-link.disabled { opacity: .5; pointer-events: none; cursor: default; }
[data-scope="skill-edit"] .p-form-culmun2:last-child { border-bottom: none; }
[data-scope="skill-edit"] .si2-note {
  margin: 0 0 8px;
  font-size: 12px;
  line-height: 1.6;
  color: #4a4a4a;
}
[data-scope="skill-edit"] .c-radio--ul--max-width {
  display: flex;
  gap: 10px;
  list-style: none;
  flex-direction: column;
}
[data-scope="skill-edit"] .c-radio--label--max-width-description {
  font-size: 13px;
  font-weight: 400;
  line-height: 1.6;
}
[data-scope="skill-edit"] .c-radio--rabel--max-width {
  width: 100%;
  color: #000 !important;
}

/* (reverted) no-editable note styles */

/* Modal (scoped to modal-entry root) */
.modal-entry[data-modal-root] .modal-bg { position: fixed; left:0; top:0; width:100%; height:100%; }
.modal-entry[data-modal-root] { z-index: var(--z-modal); position: relative; }
.modal-entry[data-modal-root] .modal-bg { background: rgba(0, 0, 0, .5); }
/* ModalHeading parity */
.modal-entry[data-modal-root] .modal-container .modal-heading { height: 56px; background: #f2f2f2; position: relative; text-align: center; }
.modal-entry[data-modal-root] .modal-container .modal-heading .title { font-size: 18px; line-height: 56px; font-weight: 600; }
.modal-entry[data-modal-root] .modal-container .modal-heading .back,
.modal-entry[data-modal-root] .modal-container .modal-heading .close { font-size: 15px; position: absolute; display: inline-block; padding: 0 10px; height: 40px; line-height: 40px; text-align: center; top: 50%; margin-top: -20px; color: #006dcc; }
.modal-entry[data-modal-root] .modal-container .modal-heading .close { right: 10px; }
.modal-entry[data-modal-root] .modal-container .modal-heading .back { left: 10px; }
@media (max-width: 767px) {
  .modal-entry[data-modal-root] .modal-container .modal-heading.modal-heading--in-cover { height: 50px; width: 100%; }
  .modal-entry[data-modal-root] .modal-container .modal-heading.modal-heading--in-cover .title { line-height: 50px; }
}

/* Loading overlay (Vue parity: visibility is controlled by inline style) */
.loading[data-loading] { position: fixed; left: 0; top: 0; width: 100%; height: 100%; z-index: 10000; }
.modal-entry[data-modal-root] .loading[data-loading] { z-index: 10000; }
.loading[data-loading] .loading-sym {
  display: block;
  width: 60px;
  height: 60px;
  position: absolute;
  right: 0;
  top: 0;
}
.loading[data-loading] .loading-sym svg {
  width: 60px;
  height: 60px;
}
.loading[data-loading] .loading-sym svg path,
.loading[data-loading] .loading-sym svg rect {
  fill: #fff;
}
@media (max-width: 767px) {
  .loading[data-loading] .loading-sym {
    width: 100px;
    height: 100px;
    left: 50%;
    top: 50%;
    right: auto;
    margin-left: -50px;
    margin-top: -50px;
  }
  .loading[data-loading] .loading-sym svg {
    width: 100px;
    height: 100px;
  }
  .loading[data-loading] .loading-sym svg path,
  .loading[data-loading] .loading-sym svg rect {
    fill: #0d8a19;
  }
}

/* fade for modal-bg (match Vue) */
.modal-entry[data-modal-root] .fade-enter-active,
.modal-entry[data-modal-root] .fade-leave-active { transition: opacity .45s; will-change: opacity; }
.modal-entry[data-modal-root] .fade-enter,
.modal-entry[data-modal-root] .fade-leave-to { opacity: 0; }

/* scale/forward/backward transitions (match pre-migration vue.css) */
@media (max-width: 767px) {
  /* SP: scale (apply to transition wrapper itself) */
  .modal-entry[data-modal-root] .scale-enter-active,
  .modal-entry[data-modal-root] .scale-leave-active { transition: opacity .3s, transform .3s; }
  .modal-entry[data-modal-root] .scale-enter-active .modal-box-outer,
  .modal-entry[data-modal-root] .scale-leave-active .modal-box-outer { overflow: hidden; }
  .modal-entry[data-modal-root] .scale-enter,
  .modal-entry[data-modal-root] .scale-leave-to { transform: scale(.9); opacity: 0; }
  /* Prevent initial flash before enter classes apply */
  .modal-entry[data-modal-root] .modal-container.pre-enter .modal-box { opacity: 0; }

  /* SP: forward */
  .modal-entry[data-modal-root] .forward-enter-active,
  .modal-entry[data-modal-root] .forward-leave-active { position: absolute!important; }
  .modal-entry[data-modal-root] .forward-enter-active .modal-box,
  .modal-entry[data-modal-root] .forward-leave-active .modal-box { transition: transform .4s, opacity .4s; will-change: transform, opacity; }
  .modal-entry[data-modal-root] .forward-enter .modal-box { transform: translateX(100px); opacity: 0; }
  .modal-entry[data-modal-root] .forward-leave-to .modal-box { transform: translateX(-100px); opacity: 0; }
  .modal-entry[data-modal-root] .forward-leave-active:after { content:" "; position:absolute; left:0; top:0; width:100%; height:100%; background:#000; opacity:0; transition: opacity .4s; }
  .modal-entry[data-modal-root] .forward-leave-to:after { opacity:.05; }

  /* SP: backward */
  .modal-entry[data-modal-root] .backward-enter-active,
  .modal-entry[data-modal-root] .backward-leave-active { position: absolute!important; z-index: 1; }
  .modal-entry[data-modal-root] .backward-enter-active .modal-box,
  .modal-entry[data-modal-root] .backward-leave-active .modal-box { transition: transform .4s, opacity .4s; will-change: transform, opacity; }
  .modal-entry[data-modal-root] .backward-enter .modal-box { transform: translateX(-100px); opacity: 0; }
  .modal-entry[data-modal-root] .backward-leave-to .modal-box { transform: translateX(100px); opacity: 0; }
  .modal-entry[data-modal-root] .backward-enter-active:after { content:" "; position:absolute; left:0; top:0; width:100%; height:100%; background:#000; opacity:0; transition: opacity .4s; }
  .modal-entry[data-modal-root] .backward-enter:after { opacity:.05; }
}

@media (min-width: 768px) {
  /* PC: scale (animate box) */
  .modal-entry[data-modal-root] .scale-enter-active,
  .modal-entry[data-modal-root] .scale-leave-active { transition: all .3s; }
  .modal-entry[data-modal-root] .scale-enter-active .modal-box,
  .modal-entry[data-modal-root] .scale-leave-active .modal-box { transition: opacity .3s, transform .3s; }
  .modal-entry[data-modal-root] .scale-enter,
  .modal-entry[data-modal-root] .scale-leave-to { transition: all .3s; }
  .modal-entry[data-modal-root] .scale-enter .modal-box,
  .modal-entry[data-modal-root] .scale-leave-to .modal-box { transform: scale(.9); opacity: 0; }
  /* Prevent initial flash before enter classes apply */
  .modal-entry[data-modal-root] .modal-container.pre-enter .modal-box { opacity: 0; }

  /* PC: forward */
  .modal-entry[data-modal-root] .forward-enter-active,
  .modal-entry[data-modal-root] .forward-leave-active { transition: all .6s; position: absolute!important; overflow: visible!important; }
  .modal-entry[data-modal-root] .forward-enter-active .modal-box,
  .modal-entry[data-modal-root] .forward-leave-active .modal-box { transition: all .6s; }
  .modal-entry[data-modal-root] .forward-enter .modal-box { opacity: 0; transform: translateX(100px); z-index:1; }
  .modal-entry[data-modal-root] .forward-leave-to .modal-box { opacity: 0; transform: translateX(-100px); }

  /* PC: backward */
  .modal-entry[data-modal-root] .backward-enter-active,
  .modal-entry[data-modal-root] .backward-leave-active { position: absolute!important; transition: all .6s; overflow: visible!important; }
  .modal-entry[data-modal-root] .backward-enter-active .modal-box,
  .modal-entry[data-modal-root] .backward-leave-active .modal-box { transition: all .6s; }
  .modal-entry[data-modal-root] .backward-leave-active .modal-box { z-index: 1; }
  .modal-entry[data-modal-root] .backward-enter .modal-box { opacity: 0; transform: translateX(-100px); }
  .modal-entry[data-modal-root] .backward-leave-to .modal-box { opacity: 0; transform: translateX(100px); }
}
/* Base container behavior (boolean attributes only) */
.modal-entry[data-modal-root] .modal[modal-container] .modal-container { position: fixed; left: 0; top: 0; width: 100%; height: 100%; box-sizing: border-box; overflow-y: auto; -webkit-overflow-scrolling: touch; }
.modal-entry[data-modal-root] .modal[modal-cover-container] .modal-container { position: fixed; left: 0; top: 0; width: 100%; height: 100%; box-sizing: border-box; overflow-y: auto; -webkit-overflow-scrolling: touch; }
/* ModalContainer parity (scoped; simpleBox) */
.modal-entry[data-modal-root] .modal[modal-container] .modal-box-outer { text-align: center; padding: 60px; }
.modal-entry[data-modal-root] .modal[modal-container] .modal-box-outer:before { content: " "; display: inline-block; vertical-align: middle; width: 0; height: 100%; }
.modal-entry[data-modal-root] .modal[modal-container] .modal-box { vertical-align: middle; }
/* ModalCoverContainer parity (scoped; cover type) */
.modal-entry[data-modal-root] .modal[modal-cover-container] .modal-box-outer { text-align: center; padding: 60px; }
.modal-entry[data-modal-root] .modal[modal-cover-container] .modal-box-outer:before { content: " "; display: inline-block; vertical-align: top; width: 0; height: 100%; }
.modal-entry[data-modal-root] .modal[modal-cover-container] .modal-box { vertical-align: top; }
/* ModalFromNode parity (scoped via class added at runtime) */
.modal-entry[data-modal-root] .modal-box-outer.modal-from-node {
  height: 100%;
  overflow-y: auto;
  text-align: center;
  padding: 10px;
  box-sizing: border-box;
}
.modal-entry[data-modal-root] .modal-box-outer.modal-from-node:before {
  content: " ";
  display: inline-block;
  vertical-align: middle;
  width: 0;
  height: 100%;
}
.modal-entry[data-modal-root] .modal-box-outer.modal-from-node .modal-box {
  vertical-align: middle;
}
.modal-entry[data-modal-root] .modal[modal-container] .modal-box,
.modal-entry[data-modal-root] .modal[modal-cover-container] .modal-box { width: 700px; display: inline-block; border-radius: 5px; background: #fff; box-sizing: border-box; box-shadow: 0 2px 8px 0 rgba(0, 0, 0, 0.2); overflow: hidden; vertical-align: top; }
.modal-entry[data-modal-root] .modal[modal-container] .modal-content,
.modal-entry[data-modal-root] .modal[modal-cover-container] .modal-content { padding: 30px 50px; }
/* Diagnoses multi-select (精神) - parity with Vue scoped styles */
.modal-entry[data-modal-root] .modal[modal-cover-container] .modal-box.modal-cover-box.modal-box--relative { position: relative; }
.modal-entry[data-modal-root] .modal[modal-cover-container] .modal-scroll.modal-scroll--inside-pc { overflow-y: auto; -webkit-overflow-scrolling: touch; }
@media (min-width: 768px) {
  .modal-entry[data-modal-root] .modal[modal-cover-container] .modal-scroll.modal-scroll--inside-pc {
    max-height: calc(100vh - 260px);
    overflow-y: auto;
    margin-bottom: 80px;
  }
}
/* DiagnosesMulti: place flow button fixed at bottom of box (PC/SP) */
.modal-entry[data-modal-root] .modal[modal-cover-container] .modal-box.modal-cover-box.modal-box--relative > .modal-flow-button {
  position: absolute; left: 0; bottom: 0; width: 100%; padding: 15px; box-sizing: border-box; background-color: rgba(0, 0, 0, 0.8);
}
/* OtherContext: PC margin-top; SP fixed bottom */
.modal-entry[data-modal-root] .other-context { text-align: left; }
.modal-entry[data-modal-root] .modal-select > .modal-flow-button { margin-top: 40px; }
@media (max-width: 767px) {
  .modal-entry[data-modal-root] .other-context { padding: 0 15px; }
  .modal-entry[data-modal-root] .modal-select .modal-select-list { margin-bottom: 80px; }
  .modal-entry[data-modal-root] .modal-flow-button.is-hide { display: none; }
  .modal-entry[data-modal-root] .modal-select > .modal-flow-button {
    margin-top: 0; position: absolute; left: 0; bottom: 0; width: 100%; padding: 15px; box-sizing: border-box; background-color: rgba(0, 0, 0, 0.8);
  }
}
@media (max-width: 767px) {
  /* Match Vue: .modal, .modal-entry fixed full-screen on SP */
  .modal-entry[data-modal-root],
  .modal-entry[data-modal-root] .modal { position: fixed; width: 100%; height: 100%; }
  /* ModalCoverContainer SP container override */
  .modal-entry[data-modal-root] .modal[modal-cover-container] .modal-container { position: relative; left: 0; top: 0; overflow-y: inherit; -webkit-overflow-scrolling: inherit; }
  /* ModalFromNode SP tweaks */
  .modal-entry[data-modal-root] .modal-box-outer.modal-from-node { padding: 10px; height: 100%; }
  /* ModalContainer SP parity */
  .modal-entry[data-modal-root] .modal[modal-container] .modal-box-outer { text-align: center; padding: 10px; box-sizing: border-box; }
  /* ModalCoverContainer SP parity */
  .modal-entry[data-modal-root] .modal[modal-cover-container] .modal-box-outer { height: 100%; padding: 0; }
  .modal-entry[data-modal-root] .modal[modal-cover-container] .modal-box-outer:before { display: none; }
  /* ModalContainer (simpleBox) SP: only width 100% */
  .modal-entry[data-modal-root] .modal[modal-container] .modal-box { width: 100%; }
  /* ModalCoverContainer (cover) SP: fill height and flex */
  .modal-entry[data-modal-root] .modal[modal-cover-container] .modal-box { width: 100%; border-radius: 0; height: 100%; position: relative; display: flex; flex-direction: column; }
  .modal-entry[data-modal-root] .modal-box-outer.modal-from-node .modal-box { height: auto; display: inline-block; }
  .modal-entry[data-modal-root] .modal[modal-cover-container] .modal-scroll { flex: 1; overflow-y: auto; -webkit-overflow-scrolling: touch; }
  .modal-entry[data-modal-root] .modal[modal-container] .modal-content,
  .modal-entry[data-modal-root] .modal[modal-cover-container] .modal-content { padding: 15px 15px 30px; }
  /* Vue parity: ModalCoverContainer's modifier must win over base SP padding */
  .modal-entry[data-modal-root] .modal[modal-cover-container] .modal-content.modal-content--sp-no-horizon-padding,
  .modal-entry[data-modal-root] .modal-content.modal-content--sp-no-horizon-padding { padding-right: 0; padding-left: 0; }
}

/* Scoped aliases: map feature scopes to base container styles */
/* Select modals use cover container base */
.modal-entry[data-modal-root] .modal[modal-select] .modal-container,
.modal-entry[data-modal-root] .modal[modal-select] .modal-container { position: fixed; left: 0; top: 0; width: 100%; height: 100%; box-sizing: border-box; overflow-y: auto; -webkit-overflow-scrolling: touch; }
.modal-entry[data-modal-root] .modal[modal-select] .modal-box-outer,
.modal-entry[data-modal-root] .modal[modal-select] .modal-box-outer { text-align: center; padding: 60px; }
.modal-entry[data-modal-root] .modal[modal-select] .modal-box-outer:before,
.modal-entry[data-modal-root] .modal[modal-select] .modal-box-outer:before { content: " "; display: inline-block; vertical-align: top; width: 0; height: 100%; }
.modal-entry[data-modal-root] .modal[modal-select] .modal-box,
.modal-entry[data-modal-root] .modal[modal-select] .modal-box { width: 700px; display: inline-block; border-radius: 5px; background: #fff; box-sizing: border-box; box-shadow: 0 2px 8px 0 rgba(0, 0, 0, 0.2); overflow: hidden; vertical-align: top; }
.modal-entry[data-modal-root] .modal[modal-select] .modal-content,
.modal-entry[data-modal-root] .modal[modal-select] .modal-content { padding: 30px 50px; }
/* ModalSelectRadioList.vue: only description is scoped here */
.modal-entry[data-modal-root] .modal[modal-select-radio-list] .modal-select .c-radio--modal-label .description { display: block; font-size: 13px; color: #666; }
/* Handicap situation sample uses cover base as well */
.modal-entry[data-modal-root] .modal[modal-handicap-situation-sample] .modal-container { position: fixed; left: 0; top: 0; width: 100%; height: 100%; box-sizing: border-box; overflow-y: auto; -webkit-overflow-scrolling: touch; }
/* Hospital purpose sample uses simple container base */
.modal-entry[data-modal-root] .modal[modal-hospital-purpose-sample] .modal-container,
.modal-entry[data-modal-root] .modal[modal-hospital-purpose-sample] .modal-container { position: fixed; left: 0; top: 0; width: 100%; height: 100%; box-sizing: border-box; overflow-y: auto; -webkit-overflow-scrolling: touch; }
.modal-entry[data-modal-root] .modal[modal-hospital-purpose-sample] .modal-box-outer,
.modal-entry[data-modal-root] .modal[modal-hospital-purpose-sample] .modal-box-outer { text-align: center; padding: 10px; box-sizing: border-box; }
.modal-entry[data-modal-root] .modal[modal-hospital-purpose-sample] .modal-box-outer:before,
.modal-entry[data-modal-root] .modal[modal-hospital-purpose-sample] .modal-box-outer:before { content: " "; display: inline-block; vertical-align: middle; width: 0; height: 100%; }
.modal-entry[data-modal-root] .modal[modal-hospital-purpose-sample] .modal-box,
.modal-entry[data-modal-root] .modal[modal-hospital-purpose-sample] .modal-box { width: 700px; display: inline-block; border-radius: 5px; background: #fff; box-sizing: border-box; box-shadow: 0 2px 8px 0 rgba(0, 0, 0, 0.2); overflow: hidden; vertical-align: middle; }
.modal-entry[data-modal-root] .modal[modal-hospital-purpose-sample] .modal-content,
.modal-entry[data-modal-root] .modal[modal-hospital-purpose-sample] .modal-content { padding: 30px 50px; }
@media (max-width: 767px) {
  .modal-entry[data-modal-root] .modal[modal-hospital-purpose-sample] .modal-box-outer,
  .modal-entry[data-modal-root] .modal[modal-hospital-purpose-sample] .modal-box-outer { text-align: center; padding: 10px; box-sizing: border-box; }
  .modal-entry[data-modal-root] .modal[modal-hospital-purpose-sample] .modal-box,
  .modal-entry[data-modal-root] .modal[modal-hospital-purpose-sample] .modal-box { width: 100%; }
  .modal-entry[data-modal-root] .modal[modal-hospital-purpose-sample] .modal-content,
  .modal-entry[data-modal-root] .modal[modal-hospital-purpose-sample] .modal-content { padding: 15px 15px 30px; }
}
.modal-entry[data-modal-root] .modal[modal-handicap-situation-sample] .modal-box-outer,
.modal-entry[data-modal-root] .modal[modal-handicap-situation-sample] .modal-box-outer { height: 100%; overflow-y: auto; text-align: center; padding: 10px; box-sizing: border-box; }
.modal-entry[data-modal-root] .modal[modal-handicap-situation-sample] .modal-box-outer:before,
.modal-entry[data-modal-root] .modal[modal-handicap-situation-sample] .modal-box-outer:before { display: none; }
.modal-entry[data-modal-root] .modal[modal-handicap-situation-sample] .modal-box,
.modal-entry[data-modal-root] .modal[modal-handicap-situation-sample] .modal-box { width: 700px; display: inline-block; border-radius: 5px; background: #fff; box-sizing: border-box; box-shadow: 0 2px 8px 0 rgba(0, 0, 0, 0.2); overflow: hidden; vertical-align: top; }
.modal-entry[data-modal-root] .modal[modal-handicap-situation-sample] .modal-content,
.modal-entry[data-modal-root] .modal[modal-handicap-situation-sample] .modal-content { padding: 30px 50px; }
@media (max-width: 767px) {
  .modal-entry[data-modal-root] .modal[modal-select] .modal-container,
  .modal-entry[data-modal-root] .modal[modal-select] .modal-container { position: relative; left: 0; top: 0; overflow-y: inherit; -webkit-overflow-scrolling: inherit; }
  .modal-entry[data-modal-root] .modal[modal-select] .modal-box-outer,
  .modal-entry[data-modal-root] .modal[modal-select] .modal-box-outer { height: 100%; padding: 0; }
  .modal-entry[data-modal-root] .modal[modal-select] .modal-box-outer:before,
  .modal-entry[data-modal-root] .modal[modal-select] .modal-box-outer:before { display: none; }
  .modal-entry[data-modal-root] .modal[modal-select] .modal-box,
  .modal-entry[data-modal-root] .modal[modal-select] .modal-box { width: 100%; border-radius: 0; height: 100%; position: relative; display: flex; flex-direction: column; }
  .modal-entry[data-modal-root] .modal[modal-select] .modal-scroll,
  .modal-entry[data-modal-root] .modal[modal-select] .modal-scroll { flex: 1; overflow-y: auto; -webkit-overflow-scrolling: touch; }
  .modal-entry[data-modal-root] .modal[modal-select] .modal-content,
  .modal-entry[data-modal-root] .modal[modal-select] .modal-content { padding: 15px 15px 30px; }
  .modal-entry[data-modal-root] .modal[modal-handicap-situation-sample] .modal-box { width: 100%; }
  .modal-entry[data-modal-root] .modal[modal-handicap-situation-sample] .modal-content { padding: 15px 15px 30px; }
}

/* Ensure SP no-horizon padding wins over later [modal-select] padding rules */
@media (max-width: 767px) {
  .modal-entry[data-modal-root] .modal[modal-select] .modal-content.modal-content--sp-no-horizon-padding { padding-right: 0; padding-left: 0; }
}

/* From-node message-like modals are simple box base (no cover) */
.modal-entry[data-modal-root] .modal[modal-from-node] .modal-container,
.modal-entry[data-modal-root] .modal[modal-from-node] .modal-container { position: fixed; left: 0; top: 0; width: 100%; height: 100%; box-sizing: border-box; overflow-y: auto; -webkit-overflow-scrolling: touch; }
.modal-entry[data-modal-root] .modal[modal-from-node] .modal-box-outer,
.modal-entry[data-modal-root] .modal[modal-from-node] .modal-box-outer { text-align: center; padding: 60px; }
.modal-entry[data-modal-root] .modal[modal-from-node] .modal-box-outer:before,
.modal-entry[data-modal-root] .modal[modal-from-node] .modal-box-outer:before { content: " "; display: inline-block; vertical-align: middle; width: 0; height: 100%; }
.modal-entry[data-modal-root] .modal[modal-from-node] .modal-box,
.modal-entry[data-modal-root] .modal[modal-from-node] .modal-box { width: 700px; display: inline-block; border-radius: 5px; background: #fff; box-sizing: border-box; box-shadow: 0 2px 8px 0 rgba(0, 0, 0, 0.2); overflow: hidden; vertical-align: middle; }
.modal-entry[data-modal-root] .modal[modal-from-node] .modal-content,
.modal-entry[data-modal-root] .modal[modal-from-node] .modal-content { padding: 30px 50px; }
/* Message modal parity (ModalShowMessage.vue) */
.modal-entry[data-modal-root] .modal[modal-show-message] .modal-message .message { font-size: 15px; line-height: 1.6; font-weight: 400; text-align: left; }
.modal-entry[data-modal-root] .modal[modal-show-message] .c-button { margin-top: 20px; width: 240px; font-weight: bold; }
/* Layout parity for ModalShowMessage.vue */
.modal-entry[data-modal-root] .modal[modal-show-message] .modal-container { position: fixed; left: 0; top: 0; width: 100%; height: 100%; box-sizing: border-box; overflow-y: auto; -webkit-overflow-scrolling: touch; display: flex; justify-content: center; }
.modal-entry[data-modal-root] .modal[modal-show-message] .modal-box-outer { text-align: center; padding: 60px; }
.modal-entry[data-modal-root] .modal[modal-show-message] .modal-box-outer:before { content: " "; display: inline-block; vertical-align: middle; width: 0; height: 100%; }
.modal-entry[data-modal-root] .modal[modal-show-message] .modal-box { width: 700px; display: inline-block; border-radius: 5px; background: #fff; box-sizing: border-box; box-shadow: 0 2px 8px 0 rgba(0, 0, 0, 0.2); overflow: hidden; vertical-align: middle; padding: 30px 50px; }
@media (max-width: 767px) {
  .modal-entry[data-modal-root] .modal[modal-from-node] .modal-box-outer,
  .modal-entry[data-modal-root] .modal[modal-from-node] .modal-box-outer { text-align: center; padding: 10px; box-sizing: border-box; }
  .modal-entry[data-modal-root] .modal[modal-from-node] .modal-box,
  .modal-entry[data-modal-root] .modal[modal-from-node] .modal-box { width: 100%; }
  .modal-entry[data-modal-root] .modal[modal-from-node] .modal-content,
  .modal-entry[data-modal-root] .modal[modal-from-node] .modal-content { padding: 15px 15px 30px; }
  .modal-entry[data-modal-root] .modal[modal-from-node] .modal-content.modal-content--no-scroll-wrapper {
    max-height: calc(100vh - 140px);
    overflow-y: auto;
    -webkit-overflow-scrolling: touch;
  }
  .modal-entry[data-modal-root] .modal[modal-show-message] .c-button { width: 240px; }
  .modal-entry[data-modal-root] .modal[modal-show-message] .modal-box-outer { text-align: center; padding: 10px; box-sizing: border-box; }
  .modal-entry[data-modal-root] .modal[modal-show-message] .modal-box { width: 90%; padding: 15px 15px; }
}


/* ModalSelect: base alignment only (per ModalSelect.vue) */
.modal-entry[data-modal-root] .modal[modal-select] .modal-select .lead,
.modal-entry[data-modal-root] .modal[modal-select] .modal-select .notice { text-align: left; }
.modal-entry[data-modal-root] .modal-select .notice { font-size: 14px; margin-top: 15px; }
@media (max-width: 767px) {
  .modal-entry[data-modal-root] .modal-select .lead,
  .modal-entry[data-modal-root] .modal-select .notice { padding: 0 15px; }
}
.modal-entry[data-modal-root] .modal-select-list { margin-top: 30px; }
@media (max-width: 767px) {
  .modal-entry[data-modal-root] .modal[modal-select] .modal-select-list { margin-top: 15px; }
}
.modal-entry[data-modal-root] .modal-select-list__item { border: solid #ddd; border-width: 0 1px 1px 1px; }
.modal-entry[data-modal-root] .modal-select-list__item:first-child { border-top-width: 1px; }
@media (max-width: 767px) {
  .modal-entry[data-modal-root] .modal-select-list__item { border-right: none; border-left: none; }
}
.modal-entry[data-modal-root] .modal-select-list__item .c-radio + .c-radio--modal-label,
.modal-entry[data-modal-root] .modal-select-list__item .c-checkbox + .c-checkbox--modal-label { display: block; text-align: left; }
/* Description text inside label */
.modal-entry[data-modal-root] .modal-select-list__item .c-radio--modal-label .description,
.modal-entry[data-modal-root] .modal-select-list__item .c-checkbox--modal-label .description { display: block; font-size: 13px; color: #666666; }

/* Disability select modals only */
.modal-entry[data-modal-root] .modal[modal-disability-select] .modal-select .lead,
.modal-entry[data-modal-root] .modal[modal-disability-select] .modal-select .notice { text-align: left; }
.modal-entry[data-modal-root] .modal[modal-disability-select] .modal-select-list__item .c-radio--modal-label .description,
.modal-entry[data-modal-root] .modal[modal-disability-select] .modal-select-list__item .c-checkbox--modal-label .description {
  display: block;
  font-size: 13px;
  color: #666666;
}
@media (max-width: 767px) {
  .modal-entry[data-modal-root] .modal[modal-disability-select] .modal-select-list__item .c-radio--modal-label .description,
  .modal-entry[data-modal-root] .modal[modal-disability-select] .modal-select-list__item .c-checkbox--modal-label .description {
    padding-right: 20px;
  }
}

/* Disability select STEP2 only (障害者手帳の取得状況) */
/* Use this scope when you need style changes limited to the second modal only. */
@media (max-width: 767px) {
.modal-entry[data-modal-root] .modal[modal-disability-select-status] .modal-select-list { margin-bottom: 0px; }
}

/* (Removed) SP padding for radio labels: use base app.css/_form.scss and station-specific component styles */

/* Scoped styles for SearchTop place selector (ModalSearchSettingCheckboxListPlace.vue) */
.modal-entry[data-modal-root] .modal[modal-search-setting-checkbox-list-place] .modal-select { margin-top: 0; }
.modal-entry[data-modal-root] .modal[modal-search-setting-checkbox-list-place] .modal-select-count { font-size: 10px; }
.modal-entry[data-modal-root] .modal[modal-search-setting-checkbox-list-place] .modal-select-list__item__inner { position: relative; margin-left: -20px; }
.modal-entry[data-modal-root] .modal[modal-search-setting-checkbox-list-place] .modal-select-list { margin-top: 0; }
.modal-entry[data-modal-root] .modal[modal-search-setting-checkbox-list-place] .modal-select-list__item { border: solid #ddd; border-width: 0 1px 1px 1px; overflow: hidden; }
.modal-entry[data-modal-root] .modal[modal-search-setting-checkbox-list-place] .modal-select-list__item:first-child { border-top-width: 1px; }
.modal-entry[data-modal-root] .modal[modal-search-setting-checkbox-list-place] .modal-select-list__item .c-radio + .c-radio--modal-label,
.modal-entry[data-modal-root] .modal[modal-search-setting-checkbox-list-place] .modal-select-list__item .c-checkbox + .c-checkbox--modal-label { display: block; text-align: left; padding-right: 54px; }
.modal-entry[data-modal-root] .modal[modal-search-setting-checkbox-list-place] .modal-select-list__item.is-disabled-parent { opacity: .45; }
.modal-entry[data-modal-root] .modal[modal-search-setting-checkbox-list-place] .modal-select-child-list__item.is-disabled { opacity: .45; pointer-events: none; }
.modal-entry[data-modal-root] .modal[modal-search-setting-checkbox-list-place] .modal-select-list__item__inner a { pointer-events: auto; }
.modal-entry[data-modal-root] .modal[modal-search-setting-checkbox-list-place] .modal-select-list__item__inner input.c-checkbox { display: none !important; pointer-events: none !important; }
.modal-entry[data-modal-root] .modal[modal-search-setting-checkbox-list-place] .modal-select-list__item__inner .c-checkbox--modal-label { user-select: none; }
.modal-entry[data-modal-root] .modal[modal-search-setting-checkbox-list-place] .modal-select-list__item__inner label.c-checkbox--modal-label::before { visibility: hidden; }
.modal-entry[data-modal-root] .modal[modal-search-setting-checkbox-list-place] .modal-select-list__toggle { position: absolute; display: block; right: 0; top: 0; border-left: 1px solid #ddd; height: 100%; width: 44px; background: #efefef; }
.modal-entry[data-modal-root] .modal[modal-search-setting-checkbox-list-place] .modal-select-list__toggle:after { content: " "; position: absolute; width: 14px; height: 14px; display: block; background: url(/cst/assets/images/common/common/arrow/arrow_tile_list--gray.png); background-size: contain; right: 14px; top: 50%; margin-top: -7px; transition: all .1s; transform: rotate(90deg); }
.modal-entry[data-modal-root] .modal[modal-search-setting-checkbox-list-place] .modal-select-list__toggle--open:after { transform: rotate(-90deg); }
.modal-entry[data-modal-root] .modal[modal-search-setting-checkbox-list-place] .modal-select-child-list__item { border-top: 1px solid #ddd; overflow: hidden; }
.modal-entry[data-modal-root] .modal[modal-search-setting-checkbox-list-place] .modal-select-child_list__item__inner { position: relative; }
.modal-entry[data-modal-root] .modal[modal-search-setting-checkbox-list-place] .modal-select-child-list .c-radio + .c-radio--modal-label,
.modal-entry[data-modal-root] .modal[modal-search-setting-checkbox-list-place] .modal-select-child-list .c-checkbox + .c-checkbox--modal-label { display: block; text-align: left; padding-left: 70px; }
.modal-entry[data-modal-root] .modal[modal-search-setting-checkbox-list-place] .modal-select-child-list .c-radio + .c-radio--modal-label:before,
.modal-entry[data-modal-root] .modal[modal-search-setting-checkbox-list-place] .modal-select-child-list .c-checkbox + .c-checkbox--modal-label:before { left: 40px; }
.modal-entry[data-modal-root] .modal[modal-search-setting-checkbox-list-place] .modal-select-child-list__toggle { position: absolute; display: block; right: 0; top: 0; border-left: 1px solid #ddd; height: 100%; width: 44px; background: #efefef; }
.modal-entry[data-modal-root] .modal[modal-search-setting-checkbox-list-place] .modal-select-child-list__toggle:after { content: " "; position: relative; width: 14px; height: 14px; display: block; background: url(/cst/assets/images/common/common/arrow/arrow_tile_list--gray.png); background-size: contain; right: -14px; top: 50%; margin-top: -7px; transition: all .1s; transform: rotate(90deg); }
.modal-entry[data-modal-root] .modal[modal-search-setting-checkbox-list-place] .modal-select-child-list__toggle--open:after { transform: rotate(-90deg); }
.modal-entry[data-modal-root] .modal[modal-search-setting-checkbox-list-place] .modal-select-grand-child-list__item { border-top: 1px solid #ddd; }
.modal-entry[data-modal-root] .modal[modal-search-setting-checkbox-list-place] .modal-select-grand-child-list .c-radio + .c-radio--modal-label,
.modal-entry[data-modal-root] .modal[modal-search-setting-checkbox-list-place] .modal-select-grand-child-list .c-checkbox + .c-checkbox--modal-label { display: block; text-align: left; padding-left: 100px; }
.modal-entry[data-modal-root] .modal[modal-search-setting-checkbox-list-place] .modal-select-grand-child-list .c-radio + .c-radio--modal-label:before,
.modal-entry[data-modal-root] .modal[modal-search-setting-checkbox-list-place] .modal-select-grand-child-list .c-checkbox + .c-checkbox--modal-label:before { left: 70px; }
.modal-entry[data-modal-root] .modal[modal-search-setting-checkbox-list-place] .dcj-notes {
  padding: 2px 12px;
  font-size: 15px;
  line-height: 1.4;
  color: #4a4a4a;
  text-align: left;
  margin-bottom: 20px;
}
.modal-entry[data-modal-root] .modal[modal-search-setting-checkbox-list-place] .dcj-notes p { margin: 0 0 2px; }
.modal-entry[data-modal-root] .modal[modal-search-setting-checkbox-list-place] .modal-link { text-align: left; margin-bottom: 20px; }
.modal-entry[data-modal-root] .modal[modal-search-setting-checkbox-list-place] .switch-button { line-height: 30px; width: 140px; height: 30px; -webkit-box-shadow:none; box-shadow:none; }
.modal-entry[data-modal-root] .modal[modal-search-setting-checkbox-list-place] .select-info { text-align: left; color: #c00; display: none; }
.modal-entry[data-modal-root] .modal[modal-search-setting-checkbox-list-place] .select-info.is-show { display: block !important; }
.modal-entry[data-modal-root] .modal[modal-search-setting-checkbox-list-place] .modal-select-list__item__inner .c-checkbox+label.c-checkbox--modal-label{ background-color: #f8f8f8; }
@media (max-width: 767px) {
  .modal-entry[data-modal-root] .modal[modal-search-setting-checkbox-list-place] .modal-search-setting { margin-bottom: 80px; }
  .modal-entry[data-modal-root] .modal[modal-search-setting-checkbox-list-place] .modal-select { margin-top: -15px; }
  .modal-entry[data-modal-root] .modal[modal-search-setting-checkbox-list-place] .switch-button { margin-top: 16px; margin-right:10px; }
  .modal-entry[data-modal-root] .modal[modal-search-setting-checkbox-list-place] .modal-select-list__item__inner .c-checkbox+label.c-checkbox--modal-label{ padding: 15px 10px 10px 40px; }
}

/* Scoped styles for Station Place (ModalSelectStationPlace.vue) */
.modal-entry[data-modal-root] .modal[modal-select-station-place] .modal-link { text-align: left; }
.modal-entry[data-modal-root] .modal[modal-select-station-place] .switch-button { line-height: 30px; width: 140px; height: 30px; -webkit-box-shadow:none; box-shadow:none; }
@media (max-width: 767px) {
  .modal-entry[data-modal-root] .modal[modal-search-setting-checkbox-list-place] .modal-select { margin-top: -15px; }
  .modal-entry[data-modal-root] .modal[modal-search-setting-checkbox-list-place] .switch-button { margin-top: 16px; margin-right:10px; }
  .modal-entry[data-modal-root] .modal[modal-search-setting-checkbox-list-place] .modal-select-list__item__inner .c-checkbox+label.c-checkbox--modal-label{ padding: 15px 10px 10px 40px; }
}

/* Scoped styles for ModalSelectDesiredJobCategoryTree.vue */
.modal-entry[data-modal-root] .modal[modal-select-desired-job-category-tree] .modal-select { margin-top: 0; }
.modal-entry[data-modal-root] .modal[modal-select-desired-job-category-tree] .modal-select-count { font-size: 10px; color: #1aa179; }
.modal-entry[data-modal-root] .modal[modal-select-desired-job-category-tree] .parent-item-modal-label { padding: 12px 14px; }
.modal-entry[data-modal-root] .modal[modal-select-desired-job-category-tree] .modal-select-list__item__inner { position: relative; }
.modal-entry[data-modal-root] .modal[modal-select-desired-job-category-tree] .modal-select-list { margin-top: 0; }
.modal-entry[data-modal-root] .modal[modal-select-desired-job-category-tree] .modal-select-list__item { border: solid #ddd; border-width: 0 1px 1px 1px; overflow: hidden; }
.modal-entry[data-modal-root] .modal[modal-select-desired-job-category-tree] .modal-select-list__item:first-child { border-top-width: 1px; }
.modal-entry[data-modal-root] .modal[modal-select-desired-job-category-tree] .modal-select-list__item .c-radio + .c-radio--modal-label,
.modal-entry[data-modal-root] .modal[modal-select-desired-job-category-tree] .modal-select-list__item .c-checkbox + .c-checkbox--modal-label,
.modal-entry[data-modal-root] .modal[modal-select-desired-job-category-tree] .modal-select-list__item .parent-item-modal-label { display: block; text-align: left; padding-right: 54px; }
.modal-entry[data-modal-root] .modal[modal-select-desired-job-category-tree] .modal-select-list__item.is-disabled-parent { opacity: .45; }
.modal-entry[data-modal-root] .modal[modal-select-desired-job-category-tree] .modal-select-list__item.is-disabled-parent .parent-item-modal-label { cursor: not-allowed; }
.modal-entry[data-modal-root] .modal[modal-select-desired-job-category-tree] .modal-select-child-list__item.is-disabled { opacity: .45; pointer-events: none; }
.modal-entry[data-modal-root] .modal[modal-select-desired-job-category-tree] .modal-select-child-list__item.is-disabled .c-checkbox--modal-label { cursor: not-allowed; }
.modal-entry[data-modal-root] .modal[modal-select-desired-job-category-tree] .modal-select-list__item__inner a { pointer-events: auto; }
.modal-entry[data-modal-root] .modal[modal-select-desired-job-category-tree] .modal-select-list__item__inner input.c-checkbox { display: none !important; pointer-events: none !important; }
.modal-entry[data-modal-root] .modal[modal-select-desired-job-category-tree] .modal-select-list__item__inner .c-checkbox--modal-label { user-select: none; }
.modal-entry[data-modal-root] .modal[modal-select-desired-job-category-tree] .modal-select-list__item__inner label.c-checkbox--modal-label::before { visibility: hidden; }
.modal-entry[data-modal-root] .modal[modal-select-desired-job-category-tree] .modal-select-list__toggle { position: absolute; display: block; right: 0; top: 0; border-left: 1px solid #ddd; height: 100%; width: 44px; background: #efefef; }
.modal-entry[data-modal-root] .modal[modal-select-desired-job-category-tree] .modal-select-list__toggle:after { content: " "; position: absolute; width: 14px; height: 14px; display: block; background: url(/cst/assets/images/common/common/arrow/arrow_tile_list--gray.png); background-size: contain; right: 14px; top: 50%; margin-top: -7px; transition: all .1s; transform: rotate(90deg); }
.modal-entry[data-modal-root] .modal[modal-select-desired-job-category-tree] .modal-select-list__toggle--open:after { transform: rotate(-90deg); }
.modal-entry[data-modal-root] .modal[modal-select-desired-job-category-tree] .modal-select-child-list__item { border-top: 1px solid #ddd; overflow: hidden; }
.modal-entry[data-modal-root] .modal[modal-select-desired-job-category-tree] .modal-select-child_list__item__inner { position: relative; }
.modal-entry[data-modal-root] .modal[modal-select-desired-job-category-tree] .modal-select-child-list .c-radio + .c-radio--modal-label,
.modal-entry[data-modal-root] .modal[modal-select-desired-job-category-tree] .modal-select-child-list .c-checkbox + .c-checkbox--modal-label { display: block; text-align: left; padding-left: 70px; }
.modal-entry[data-modal-root] .modal[modal-select-desired-job-category-tree] .modal-select-child-list .c-radio + .c-radio--modal-label:before,
.modal-entry[data-modal-root] .modal[modal-select-desired-job-category-tree] .modal-select-child-list .c-checkbox + .c-checkbox--modal-label:before { left: 40px; }
.modal-entry[data-modal-root] .modal[modal-select-desired-job-category-tree] .dcj-notes {
  padding: 2px 12px 2px;
  font-size: 15px;
  line-height: 1.4;
  color: #4a4a4a;
  text-align: left;
  margin-bottom: 20px;
}
.modal-entry[data-modal-root] .modal[modal-select-desired-job-category-tree] .dcj-notes p { margin: 0 0 2px; }
@media (max-width: 767px) {
  .modal-entry[data-modal-root] .modal[modal-select-desired-job-category-tree] .modal-search-setting { margin-bottom: 80px; }
  .modal-entry[data-modal-root] .modal[modal-select-desired-job-category-tree] .modal-select { margin-top: -15px; }
  .modal-entry[data-modal-root] .modal[modal-select-desired-job-category-tree] .modal-select-list__item { border-right: none; border-left: none; }
  .modal-entry[data-modal-root] .modal[modal-select-desired-job-category-tree] .modal-select-child-list__item { border-right: none; border-left: none; }
}

/* Scoped styles for Station Prefecture (ModalSelectStationPrefecture.vue) */
.modal-entry[data-modal-root] .modal[modal-select-station-prefecture] .modal-link { text-align: left; margin-bottom: 20px; }
.modal-entry[data-modal-root] .modal[modal-select-station-prefecture] .modal-select-list { margin-top: 0px; }
/* Prefecture modal: ensure back row and list spacing consistent */
.modal-entry[data-modal-root] .modal[modal-select-station-prefecture] .modal-back { text-align: left; background-color: #efefef; border-top: 1px solid #ddd; border-left: 1px solid #ddd; border-right: 1px solid #ddd; padding: 10px 0px 5px 15px; }
.modal-entry[data-modal-root] .modal[modal-select-station-prefecture] .back { cursor: pointer; }
.modal-entry[data-modal-root] .modal[modal-select-station-prefecture] .switch-button { line-height: 30px; width: 140px; height: 30px; -webkit-box-shadow:none; box-shadow:none; }
@media (max-width: 767px) {
  .modal-entry[data-modal-root] .modal[modal-select-station-prefecture] .switch-button { margin-right:10px; }
}

/* Scoped styles for Station 3-trees list (ModalSearchSettingCheckboxList3TreesStation.vue) */
.modal-entry[data-modal-root] .modal[modal-search-setting-checkbox-list-3-trees-station] .modal-select-list__item__inner { position: relative; margin-left: -20px; }
.modal-entry[data-modal-root] .modal[modal-search-setting-checkbox-list-3-trees-station] .modal-select-list { margin-top: 0; }
.modal-entry[data-modal-root] .modal[modal-search-setting-checkbox-list-3-trees-station] .modal-select-list__item { border: solid #ddd; border-width: 0 1px 1px 1px; overflow: hidden; }
.modal-entry[data-modal-root] .modal[modal-search-setting-checkbox-list-3-trees-station] .modal-select-list__item:first-child { border-top-width: 1px; }
.modal-entry[data-modal-root] .modal[modal-search-setting-checkbox-list-3-trees-station] .modal-select-list__item__inner a { pointer-events: auto; }
.modal-entry[data-modal-root] .modal[modal-search-setting-checkbox-list-3-trees-station] .modal-select-list__item__inner label.c-checkbox--modal-label::before { visibility: hidden; }
.modal-entry[data-modal-root] .modal[modal-search-setting-checkbox-list-3-trees-station] .modal-select-list__item .c-radio + .c-radio--modal-label,
.modal-entry[data-modal-root] .modal[modal-search-setting-checkbox-list-3-trees-station] .modal-select-list__item .c-checkbox + .c-checkbox--modal-label { display: block; text-align: left; padding-right: 54px; }
.modal-entry[data-modal-root] .modal[modal-search-setting-checkbox-list-3-trees-station] .modal-select-list__toggle { position: absolute; display: block; right: 0; top: 0; border-left: 1px solid #ddd; height: 100%; width: 44px; background: #efefef; }
.modal-entry[data-modal-root] .modal[modal-search-setting-checkbox-list-3-trees-station] .modal-select-list__toggle:after { content: " "; position: absolute; width: 14px; height: 14px; display: block; background: url(/cst/assets/images/common/common/arrow/arrow_tile_list--gray.png); background-size: contain; right: 14px; top: 50%; margin-top: -7px; transition: all .1s; transform: rotate(90deg); }
.modal-entry[data-modal-root] .modal[modal-search-setting-checkbox-list-3-trees-station] .modal-select-list__toggle--open:after { transform: rotate(-90deg); }
.modal-entry[data-modal-root] .modal[modal-search-setting-checkbox-list-3-trees-station] .modal-select-child-list__item { border-top: 1px solid #ddd; overflow: hidden; }
.modal-entry[data-modal-root] .modal[modal-search-setting-checkbox-list-3-trees-station] .modal-select-child_list__item__inner { position: relative; }
.modal-entry[data-modal-root] .modal[modal-search-setting-checkbox-list-3-trees-station] .modal-select-child-list .c-radio + .c-radio--modal-label,
.modal-entry[data-modal-root] .modal[modal-search-setting-checkbox-list-3-trees-station] .modal-select-child-list .c-checkbox + .c-checkbox--modal-label { display: block; text-align: left; padding-left: 70px; }
.modal-entry[data-modal-root] .modal[modal-search-setting-checkbox-list-3-trees-station] .modal-select-child-list .c-radio + .c-radio--modal-label:before,
.modal-entry[data-modal-root] .modal[modal-search-setting-checkbox-list-3-trees-station] .modal-select-child-list .c-checkbox + .c-checkbox--modal-label:before { left: 40px; }
.modal-entry[data-modal-root] .modal[modal-search-setting-checkbox-list-3-trees-station] .modal-select-child-list__toggle { position: absolute; display: block; right: 0; top: 0; border-left: 1px solid #ddd; height: 100%; width: 44px; background: #efefef; }
.modal-entry[data-modal-root] .modal[modal-search-setting-checkbox-list-3-trees-station] .modal-select-child-list__toggle:after { content: " "; position: relative; width: 14px; height: 14px; display: block; background: url(/cst/assets/images/common/common/arrow/arrow_tile_list--gray.png); background-size: contain; right: -14px; top: 50%; margin-top: -7px; transition: all .1s; transform: rotate(90deg); }
.modal-entry[data-modal-root] .modal[modal-search-setting-checkbox-list-3-trees-station] .modal-select-child-list__toggle--open:after { transform: rotate(-90deg); }
.modal-entry[data-modal-root] .modal[modal-search-setting-checkbox-list-3-trees-station] .modal-select-grand-child-list__item { border-top: 1px solid #ddd; }
.modal-entry[data-modal-root] .modal[modal-search-setting-checkbox-list-3-trees-station] .modal-select-grand-child-list .c-radio + .c-radio--modal-label,
.modal-entry[data-modal-root] .modal[modal-search-setting-checkbox-list-3-trees-station] .modal-select-grand-child-list .c-checkbox + .c-checkbox--modal-label { display: block; text-align: left; padding-left: 100px; }
.modal-entry[data-modal-root] .modal[modal-search-setting-checkbox-list-3-trees-station] .modal-select-grand-child-list .c-radio + .c-radio--modal-label:before,
.modal-entry[data-modal-root] .modal[modal-search-setting-checkbox-list-3-trees-station] .modal-select-grand-child-list .c-checkbox + .c-checkbox--modal-label:before { left: 70px; }
.modal-entry[data-modal-root] .modal[modal-search-setting-checkbox-list-3-trees-station] .modal-link { text-align: left; margin-bottom: 20px; }
.modal-entry[data-modal-root] .modal[modal-search-setting-checkbox-list-3-trees-station] .switch-button { line-height: 30px; width: 140px; height: 30px; -webkit-box-shadow:none; box-shadow:none; }
.modal-entry[data-modal-root] .modal[modal-search-setting-checkbox-list-3-trees-station] .modal-back { text-align: left; background-color: #efefef; border-top: 1px solid #ddd; border-left: 1px solid #ddd; border-right: 1px solid #ddd; padding: 10px 0px 5px 15px; }
.modal-entry[data-modal-root] .modal[modal-search-setting-checkbox-list-3-trees-station] .back { cursor: pointer; }
.modal-entry[data-modal-root] .modal[modal-search-setting-checkbox-list-3-trees-station] .select-info { text-align: left; color: #c00; display: none; }
.modal-entry[data-modal-root] .modal[modal-search-setting-checkbox-list-3-trees-station] .selected-pref { text-align:left; border-top: 1px solid #ddd; border-left: 1px solid #ddd; border-right: 1px solid #ddd; padding: 10px 0px 5px 15px; }
.modal-entry[data-modal-root] .modal[modal-search-setting-checkbox-list-3-trees-station] .modal-select-list__item__inner .c-checkbox+label.c-checkbox--modal-label{ background-color: #f8f8f8; }
@media (max-width: 767px) {
  .modal-entry[data-modal-root] .modal[modal-search-setting-checkbox-list-3-trees-station] .modal-select { margin-top: -15px; }
  .modal-entry[data-modal-root] .modal[modal-search-setting-checkbox-list-3-trees-station] .switch-button { margin-top: 16px; margin-right:10px; }
  .modal-entry[data-modal-root] .modal[modal-search-setting-checkbox-list-3-trees-station] .modal-select-list__item__inner .c-checkbox+label.c-checkbox--modal-label{ padding: 15px 10px 10px 40px; }
}
/* (Removed) station-specific scope. Profile uses [modal-select-radio-list] only. */

/* Scoped styles for Generic 3-trees (ModalSearchSettingCheckboxList3Trees.vue) */
.modal-entry[data-modal-root] .modal[modal-search-setting-checkbox-list-3-trees] .modal-select-list__item { border: solid #ddd; border-width: 0 1px 1px 1px; overflow: hidden; }
.modal-entry[data-modal-root] .modal[modal-search-setting-checkbox-list-3-trees] .modal-select-list__item:first-child { border-top-width: 1px; }
.modal-entry[data-modal-root] .modal[modal-search-setting-checkbox-list-3-trees] .modal-select-list__item__inner { position: relative; pointer-events: auto; }
.modal-entry[data-modal-root] .modal[modal-search-setting-checkbox-list-3-trees] .modal-select-list__item .c-radio + .c-radio--modal-label,
.modal-entry[data-modal-root] .modal[modal-search-setting-checkbox-list-3-trees] .modal-select-list__item .c-checkbox + .c-checkbox--modal-label { display: block; text-align: left; padding-right: 54px; }
.modal-entry[data-modal-root] .modal[modal-search-setting-checkbox-list-3-trees] .modal-select-list__toggle { position: absolute; display: block; right: 0; top: 0; border-left: 1px solid #ddd; height: 100%; width: 44px; background: #efefef; }
.modal-entry[data-modal-root] .modal[modal-search-setting-checkbox-list-3-trees] .modal-select-list__toggle:after { content: " "; position: absolute; width: 14px; height: 14px; display: block; background: url(/cst/assets/images/common/common/arrow/arrow_tile_list--gray.png); background-size: contain; right: 14px; top: 50%; margin-top: -7px; transition: all .1s; transform: rotate(90deg); }
.modal-entry[data-modal-root] .modal[modal-search-setting-checkbox-list-3-trees] .modal-select-list__toggle--open:after { transform: rotate(-90deg); }
.modal-entry[data-modal-root] .modal[modal-search-setting-checkbox-list-3-trees] .modal-select-list__item__inner a { pointer-events: auto; }
.modal-entry[data-modal-root] .modal[modal-search-setting-checkbox-list-3-trees] .modal-select-child-list__item { border-top: 1px solid #ddd; overflow: hidden; }
.modal-entry[data-modal-root] .modal[modal-search-setting-checkbox-list-3-trees] .modal-select-child_list__item__inner { position: relative; }
.modal-entry[data-modal-root] .modal[modal-search-setting-checkbox-list-3-trees] .modal-select-child-list .c-radio + .c-radio--modal-label,
.modal-entry[data-modal-root] .modal[modal-search-setting-checkbox-list-3-trees] .modal-select-child-list .c-checkbox + .c-checkbox--modal-label { display: block; text-align: left; padding-left: 70px; }
.modal-entry[data-modal-root] .modal[modal-search-setting-checkbox-list-3-trees] .modal-select-child-list .c-radio + .c-radio--modal-label:before,
.modal-entry[data-modal-root] .modal[modal-search-setting-checkbox-list-3-trees] .modal-select-child-list .c-checkbox + .c-checkbox--modal-label:before { left: 40px; }
.modal-entry[data-modal-root] .modal[modal-search-setting-checkbox-list-3-trees] .modal-select-child-list__toggle { position: absolute; display: block; right: 0; top: 0; border-left: 1px solid #ddd; height: 100%; width: 44px; background: #efefef; }
.modal-entry[data-modal-root] .modal[modal-search-setting-checkbox-list-3-trees] .modal-select-child-list__toggle:after { content: " "; position: relative; width: 14px; height: 14px; display: block; background: url(/cst/assets/images/common/common/arrow/arrow_tile_list--gray.png); background-size: contain; right: -14px; top: 50%; margin-top: -7px; transition: all .1s; transform: rotate(90deg); }
.modal-entry[data-modal-root] .modal[modal-search-setting-checkbox-list-3-trees] .modal-select-child-list__toggle--open:after { transform: rotate(-90deg); }
.modal-entry[data-modal-root] .modal[modal-search-setting-checkbox-list-3-trees] .modal-select-grand-child-list__item { border-top: 1px solid #ddd; }
.modal-entry[data-modal-root] .modal[modal-search-setting-checkbox-list-3-trees] .modal-select-grand-child-list .c-radio + .c-radio--modal-label,
.modal-entry[data-modal-root] .modal[modal-search-setting-checkbox-list-3-trees] .modal-select-grand-child-list .c-checkbox + .c-checkbox--modal-label { display: block; text-align: left; padding-left: 100px; }
.modal-entry[data-modal-root] .modal[modal-search-setting-checkbox-list-3-trees] .modal-select-grand-child-list .c-radio + .c-radio--modal-label:before,
.modal-entry[data-modal-root] .modal[modal-search-setting-checkbox-list-3-trees] .modal-select-grand-child-list .c-checkbox + .c-checkbox--modal-label:before { left: 70px; }
.modal-entry[data-modal-root] .modal[modal-search-setting-checkbox-list-3-trees] .modal-link { text-align: left; }
.modal-entry[data-modal-root] .modal[modal-search-setting-checkbox-list-3-trees] .switch-button { line-height: 30px; width: 140px; height: 30px; -webkit-box-shadow:none; box-shadow:none; }
.modal-entry[data-modal-root] .modal[modal-search-setting-checkbox-list-3-trees] .modal-select-count { font-size: 10px; }
@media (max-width: 767px) {
  .modal-entry[data-modal-root] .modal[modal-search-setting-checkbox-list-3-trees] .modal-select { margin-top: -15px; }
  .modal-entry[data-modal-root] .modal[modal-search-setting-checkbox-list-3-trees] .modal-select-list__item { border-right: none; border-left: none; }
}

/* Job 2-level list (parity with Vue ModalSearchSettingCheckboxList.vue) */
.modal-entry[data-modal-root] .modal[modal-search-setting-checkbox-list] .modal-select-list__item { border: solid #ddd; border-width: 0 1px 1px 1px; overflow: hidden; }
.modal-entry[data-modal-root] .modal[modal-search-setting-checkbox-list] .modal-select-list__item:first-child { border-top-width: 1px; }
.modal-entry[data-modal-root] .modal[modal-search-setting-checkbox-list] .modal-select-list__item__inner { position: relative; }
.modal-entry[data-modal-root] .modal[modal-search-setting-checkbox-list] .modal-select-list__item__inner a { pointer-events: auto; }
.modal-entry[data-modal-root] .modal[modal-search-setting-checkbox-list] .modal-select-list__item .c-radio + .c-radio--modal-label,
.modal-entry[data-modal-root] .modal[modal-search-setting-checkbox-list] .modal-select-list__item .c-checkbox + .c-checkbox--modal-label { display: block; text-align: left; padding-right: 54px; }
.modal-entry[data-modal-root] .modal[modal-search-setting-checkbox-list] .modal-select-list__toggle { position: absolute; display: block; right: 0; top: 0; border-left: 1px solid #ddd; height: 100%; width: 44px; background: #efefef; }
.modal-entry[data-modal-root] .modal[modal-search-setting-checkbox-list] .modal-select-list__toggle:after { content: " "; position: absolute; width: 14px; height: 14px; display: block; background: url(/cst/assets/images/common/common/arrow/arrow_tile_list--gray.png); background-size: contain; right: 14px; top: 50%; margin-top: -7px; transition: all .1s; transform: rotate(90deg); }
.modal-entry[data-modal-root] .modal[modal-search-setting-checkbox-list] .modal-select-list__toggle--open:after { transform: rotate(-90deg); }
.modal-entry[data-modal-root] .modal[modal-search-setting-checkbox-list] .modal-select-child-list__item { border-top: 1px solid #ddd; }
.modal-entry[data-modal-root] .modal[modal-search-setting-checkbox-list] .modal-select-child_list__item__inner { position: relative; }
.modal-entry[data-modal-root] .modal[modal-search-setting-checkbox-list] .modal-select-child-list .c-radio + .c-radio--modal-label,
.modal-entry[data-modal-root] .modal[modal-search-setting-checkbox-list] .modal-select-child-list .c-checkbox + .c-checkbox--modal-label { display: block; text-align: left; padding-left: 70px; }
.modal-entry[data-modal-root] .modal[modal-search-setting-checkbox-list] .modal-select-child-list .c-radio + .c-radio--modal-label:before,
.modal-entry[data-modal-root] .modal[modal-search-setting-checkbox-list] .modal-select-child-list .c-checkbox + .c-checkbox--modal-label:before { left: 40px; }
.modal-entry[data-modal-root] .modal[modal-search-setting-checkbox-list] .modal-select-count { font-size: 10px; color: #1aa179; }
@media (max-width: 767px) {
  .modal-entry[data-modal-root] .modal[modal-search-setting-checkbox-list] .modal-select { margin-top: -15px; }
  .modal-entry[data-modal-root] .modal[modal-search-setting-checkbox-list] .modal-select-list__item { border-right: none; border-left: none; }
  .modal-entry[data-modal-root] .modal[modal-search-setting-checkbox-list] .modal-select-child-list__item { border-right: none; border-left: none; }
}

/* Scoped styles for NoParent list (ModalSearchSettingCheckboxListNoParent.vue parity) */
@media (max-width: 767px) {
  .modal-entry[data-modal-root] .modal[modal-search-setting-checkbox-list-no-parent] .modal-select { margin-top: -15px; }
}

/* ModalSettingSearchBottom (migrated from Vue scoped styles) */
.modal-entry[data-modal-root] .modal-setting-search-bottom { position: absolute; left: 0; bottom: 0; width: 100%; padding: 15px; box-sizing: border-box; background-color: rgba(0, 0, 0, 0.8); }
@media (max-width: 767px) {
  .modal-entry[data-modal-root] .modal-setting-search-bottom { position: fixed; padding: 12px; }
  .modal-entry[data-modal-root] .modal-setting-search-bottom.is-hide { display: none; }
}
.modal-entry[data-modal-root] .modal-setting-search-bottom__inner { width: 600px; margin: auto; display: flex; }
@media (max-width: 767px) {
  .modal-entry[data-modal-root] .modal-setting-search-bottom__inner { width: 100%; }
}
.modal-entry[data-modal-root] .modal-setting-search-bottom__inner.modal-setting-search-bottom__inner--from-detail { display: block; }
.modal-entry[data-modal-root] .modal-setting-search-bottom__count { width: 110px; text-align: center; color: #fff; margin-right: 20px; }
@media (max-width: 767px) {
  .modal-entry[data-modal-root] .modal-setting-search-bottom__count { width: 100px; margin-right: 10px; }
}
.modal-entry[data-modal-root] .modal-setting-search-bottom__count__h { font-size: 13px; display: block; }
.modal-entry[data-modal-root] .modal-setting-search-bottom__count__v { font-size: 22px; display: inline-block; height: 30px; line-height: 30px; }
.modal-entry[data-modal-root] .modal-setting-search-bottom__count__l { display: block; margin: -8px auto; width: 46px; height: 46px; }
.modal-entry[data-modal-root] .modal-setting-search-bottom__count__l svg { width: 46px; height: 46px; }
.modal-entry[data-modal-root] .modal-setting-search-bottom__count__l svg path,
.modal-entry[data-modal-root] .modal-setting-search-bottom__count__l svg rect { fill: #fff; }
.modal-entry[data-modal-root] .modal-setting-search-bottom__count__u { font-size: 15px; margin-left: 5px; }
.modal-entry[data-modal-root] .modal-setting-search-bottom__buttons { flex: 1; display: flex; }
.modal-entry[data-modal-root] .modal-setting-search-bottom__buttons.modal-setting-search-bottom__buttons--only:before { content: " "; flex: 1; display: block; }
.modal-entry[data-modal-root] .modal-setting-search-bottom__buttons .c-button { min-width: auto; width: auto; flex: 1; }
.modal-entry[data-modal-root] .modal-setting-search-bottom__buttons .c-button:last-child { margin-left: 15px; }
@media (max-width: 767px) {
  .modal-entry[data-modal-root] .modal-setting-search-bottom__buttons .c-button:last-child { margin-left: 10px; }
}
.modal-entry[data-modal-root] .modal-setting-search-bottom__buttons .c-button span { display: inline-block; width: auto; position: static; top: auto; -webkit-transform: none; transform: none; line-height: inherit; font-size: 13px; margin-left: 3px; }
@media (max-width: 767px) {
  .modal-entry[data-modal-root] .modal-setting-search-bottom__buttons .c-button { display: flex; line-height: 1.4; align-items: center; }
  .modal-entry[data-modal-root] .modal-setting-search-bottom__buttons .c-button p { display: inline-block; margin: auto; text-align: left; padding-left: 5px; }
  .modal-entry[data-modal-root] .modal-setting-search-bottom__buttons .c-button span { display: block; margin-left: 0; }
}
.modal-entry[data-modal-root] .modal-setting-search-bottom__buttons .c-button--white { position: relative; }
.modal-entry[data-modal-root] .modal-setting-search-bottom__buttons .c-button--white:before,
.modal-entry[data-modal-root] .modal-setting-search-bottom__buttons .c-button--white:after { content: " "; width: 14px; height: 2px; background: #006dcc; position: absolute; left: 20px; top: 50%; margin-top: -1px; }
@media (max-width: 767px) {
  .modal-entry[data-modal-root] .modal-setting-search-bottom__buttons .c-button--white:before,
  .modal-entry[data-modal-root] .modal-setting-search-bottom__buttons .c-button--white:after { left: 8px; }
}
.modal-entry[data-modal-root] .modal-setting-search-bottom__buttons .c-button--white:after { -webkit-transform: rotate(90deg); transform: rotate(90deg); }
.modal-entry[data-modal-root] .modal-setting-search-bottom__buttons .c-button--blue { position: relative; }
.modal-entry[data-modal-root] .modal-setting-search-bottom__buttons .c-button--blue:before { content: " "; display: block; background: url(/cst/assets/images/common/common/icon/icon_search--white.svg); background-size: contain; width: 20px; height: 20px; position: absolute; left: 20px; top: 50%; margin-top: -10px; }
@media (max-width: 767px) {
  .modal-entry[data-modal-root] .modal-setting-search-bottom__buttons .c-button--blue:before { width: 14px; height: 14px; margin-top: -7px; left: 8px; }
}
.modal-entry[data-modal-root] .modal-setting-search-bottom__buttons .c-button--blue.c-button--blue--no-icon:before { display: none; }
.modal-entry[data-modal-root] .modal-setting-search-bottom__buttons.modal-setting-search-bottom__buttons--from-detail { display: block; padding: 0; max-width: 300px; margin: auto; }
.modal-entry[data-modal-root] .modal-setting-search-bottom__buttons.modal-setting-search-bottom__buttons--from-detail .c-button { margin: 0!important; width: 100%; font-size: 18px; }
.modal-entry[data-modal-root] .modal-setting-search-bottom__buttons.modal-setting-search-bottom__buttons--from-detail .c-button p { padding: 0; }
.modal-entry[data-modal-root] .modal-setting-search-bottom__buttons.modal-setting-search-bottom__buttons--from-detail .c-button span { display: inline-block; }
@media (max-width: 767px) {
  .modal-entry[data-modal-root] .modal-setting-search-bottom__buttons.modal-setting-search-bottom__buttons--from-detail .c-button--blue:before { width: 18px; height: 18px; margin-top: -9px; left: 20px; }
}
.modal-entry[data-modal-root] a.c-button.c-button--white.c-button--inactive::before { background-color: #fff; }
.modal-entry[data-modal-root] a.c-button.c-button--white.c-button--inactive::after { background-color: #fff; }

/* Saved Conditions (ConditionForm.vue scoped styles migrated) */
[data-scope="condition-form"] .p-joboffer-list { min-height: 180px; margin-bottom: 20px; }
[data-scope="condition-form"] .p-joboffer-list__info__table { display: inline-table; margin-bottom: 20px; }
[data-scope="condition-form"] .condition-count { text-align: left; margin-bottom: 15px; }
[data-scope="condition-form"] .condition-number { font-size: 18px; font-weight: 700; display: contents; }
[data-scope="condition-form"] .p-time { text-align: left; font-size: 13px; margin-top: -10px; }
/* Limit button layout tweaks to list area and bottom link */
[data-scope="condition-form"] .p-joboffer-list .c-button, [data-scope="condition-form"] .bottom-button { display: block; margin: auto; margin-bottom: 20px; width: 200px; }
[data-scope="condition-form"] .p-joboffer-list .c-button.c-button--blue { margin-top: 20px; }
[data-scope="condition-form"] .bottom-button { margin-top: 15px; }
[data-scope="condition-form"] .condition-footer { text-align: center; margin-top: 15px; }
[data-scope="condition-form"] .footer { display: block; background-color: #fff; padding: 30px; }
[data-scope="condition-form"] .display-none { display: none; }
[data-scope="condition-form"] .fotter-title { font-weight: bold; font-size: 18px; padding-bottom: 10px; }
[data-scope="condition-form"] .p-joboffer-list__info__table th { width: 110px; }
[data-scope="condition-form"] .p-mail-setting { display: block; background-color: #fff; padding: 20px; margin-bottom: 20px; }
[data-scope="condition-form"] .p-mail-setting-container { display: flex; justify-content: space-between; }
[data-scope="condition-form"] .p-mail-setting-container-left { margin-top: 12px; }
@media screen and (max-width: 767px) {
  [data-scope="condition-form"] .p-joboffer-list .c-button, [data-scope="condition-form"] .bottom-button { display: block; width: 200px; margin-bottom: 10px; margin-top: 10px; }
  [data-scope="condition-form"] .condition-count { margin-top: 0px; margin-bottom: 5px; }
  [data-scope="condition-form"] .p-joboffer-list .c-button.c-button--blue { margin-top: 0px; }
  [data-scope="condition-form"] .p-joboffer-list__lead-area { display: block; text-align: center; }
  [data-scope="condition-form"] .p-joboffer-list__lead-area__photo { display: inline; }
  [data-scope="condition-form"] .p-joboffer-list__info__table th { width: 110px; }
  [data-scope="condition-form"] .condition-footer { text-align: center; margin-top: 0px; margin-bottom: -10px; }
  [data-scope="condition-form"] .p-mail-setting-container { display: block; text-align: center; }
  [data-scope="condition-form"] .p-mail-setting-container-left { margin-top: 0px; margin-bottom: 12px; }
  [data-scope="condition-form"] .bottom-button { margin-top: 15px; }
}

/* SearchResultForm.vue scoped: save-condition */
[data-search-result-form] .p-seach-condition__condition .save-condition { margin: 16px 5px -9px 205px; color: #fff; font-weight: bold; }
[data-search-result-form] .p-seach-condition__condition .save-condition:hover { opacity: .7; cursor: pointer; }
@media (max-width: 767px) {
  [data-search-result-form] .p-seach-condition__condition .save-condition { margin: 16px 5px -9px 0; width: 210px; height: 21px; margin-right: -20px; }
}

/* Scoped styles for Detailed Search (ModalSearchSettingDetail.vue → modal-search-setting-detail) */
.modal-entry[data-modal-root] .modal[modal-search-setting-detail] .detail-list__item { border: solid #ddd; border-width: 0 1px 1px 1px; }
.modal-entry[data-modal-root] .modal[modal-search-setting-detail] .detail-list__item:first-child { border-top-width: 1px; }
@media (max-width: 767px) {
  .modal-entry[data-modal-root] .modal[modal-search-setting-detail] .detail-list__item { border-left: none; border-right: none; }
  .modal-entry[data-modal-root] .modal[modal-search-setting-detail] .detail-list { margin-top: -15px; }
}
.modal-entry[data-modal-root] .modal[modal-search-setting-detail] .detail-list__container { display: table; table-layout: fixed; width: 100%; box-sizing: border-box; }
.modal-entry[data-modal-root] .modal[modal-search-setting-detail] .detail-list__container__h { display: table-cell; width: 80px; font-size: 13px; color: #0d8a19; text-align: left; padding: 15px 5px 15px 15px; box-sizing: border-box; line-height: 1.3; height: 62px; }
.modal-entry[data-modal-root] .modal[modal-search-setting-detail] .detail-list__container__v { display: table-cell; padding: 15px 15px 15px 10px; text-align: left; line-height: 1.3; color: #141414; }
.modal-entry[data-modal-root] .modal[modal-search-setting-detail] .detail-list__container__v--empty { color: #999; }
.modal-entry[data-modal-root] .modal[modal-search-setting-detail] .detail-list__container--vm .detail-list__container__h,
.modal-entry[data-modal-root] .modal[modal-search-setting-detail] .detail-list__container--vm .detail-list__container__v { vertical-align: middle; }
.modal-entry[data-modal-root] .modal[modal-search-setting-detail] .detail-list__link { display: block; position: relative; }
.modal-entry[data-modal-root] .modal[modal-search-setting-detail] .detail-list__link .detail-list__container__h,
.modal-entry[data-modal-root] .modal[modal-search-setting-detail] .detail-list__link .detail-list__container__v { vertical-align: middle; }
.modal-entry[data-modal-root] .modal[modal-search-setting-detail] .detail-list__link .detail-list__container__v { padding-right: 50px; }
.modal-entry[data-modal-root] .modal[modal-search-setting-detail] .detail-list__link:after { content: " "; position: absolute; width: 14px; height: 14px; display: block; background: url(/cst/assets/images/common/common/arrow/arrow_tile_list--gray.png); background-size: contain; right: 20px; top: 50%; margin-top: -7px; }
.modal-entry[data-modal-root] .modal[modal-search-setting-detail] .detail-inner-list__item { margin-bottom: 10px; }
.modal-entry[data-modal-root] .modal[modal-search-setting-detail] .detail-inner-list__item:last-child { margin-bottom: 0; }
@media (max-width: 767px) {
  .modal-entry[data-modal-root] .modal[modal-search-setting-detail] .c-checkbox--label,
  .modal-entry[data-modal-root] .modal[modal-search-setting-detail] .c-radio--label { width: 100%; min-width: 0; }
}
.modal-entry[data-modal-root] .modal[modal-search-setting-detail] .c-select--income { width: 130px; border: 2px solid #aaa; border-radius: 3px; padding: 0 0 0 5px; appearance: auto; }
.modal-entry[data-modal-root] .modal[modal-search-setting-detail] .detail-list__container__v--income { white-space: nowrap; }
.modal-entry[data-modal-root] .modal[modal-search-setting-detail] .detail-list__container__v--income .c-select--income,
.modal-entry[data-modal-root] .modal[modal-search-setting-detail] .detail-list__container__v--income > span { display: inline-block; vertical-align: middle; }
@media (max-width: 767px) {
  .modal-entry[data-modal-root] .modal[modal-search-setting-detail] .c-select--income { width: 115px; }
}

/* Web resume bottom buttons (FormButtonsWebResume.vue parity) */
.js-webresume-form .c-form-button-area__outer_corver {
  text-align: center;
}
/* FormBottomFixedWithSave.vue parity: is-hidden only hides on SP */
@media (max-width: 767px) {
  .js-webresume-form .p-form-fixed.is-hidden {
    display: none;
  }
}
.js-webresume-form .c-form-button-area__outer {
  text-align: center;
  margin-top: 15px;
}
.js-webresume-form .c-form-button-area__outer_corver .c-form-button-area.is-table {
  display: flex;
  gap: 10px;
  justify-content: center;
  align-items: center;
}
.js-webresume-form .c-form-button-area__outer_corver .c-form-button-area.is-table > div:first-child { flex: 1; }
.js-webresume-form .c-form-button-area__outer_corver .c-form-button-area.is-table > div:last-child { flex: 2; }
.js-webresume-form .c-form-button-area__outer_corver .c-form-button-area.is-table > div:first-child .c-button {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  padding: 10px 16px;
  border: 2px solid #2f64bd;
  background: #fff;
  color: #2f64bd;
  box-sizing: border-box;
}
.js-webresume-form .c-form-button-area__outer_corver .c-form-button-area.is-table > div:last-child .c-button {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  box-sizing: border-box;
}
.js-webresume-form .webresume_back_arrow_img { margin-right: 10px; }
@media (min-width: 768px) {
  .js-webresume-form .c-form-button-area__outer_corver {
    width: 50%;
    margin-left: 25%;
  }
}