@charset "UTF-8";
/*base*/
html {
  font-size: 62.5%;
  scroll-padding-top: 6rem; /* 固定ヘッダの高さ分 */
}
@media print, screen and (min-width: 1200px) {
  html {
    scroll-padding-top: 11rem; /* 固定ヘッダの高さ分 */
  }
}

html:focus-within {
  scroll-behavior: auto;
}

body {
  display: flex;
  flex-direction: column;
  position: relative;
  overflow-y: scroll;
  min-height: 100vh;
  color: #333333;
  font-family: "Noto Sans JP", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ", "Meiryo", "ＭＳＰゴシック", sans-serif;
  font-size: 1.6em;
  font-weight: 500;
  line-height: 1.8;
  -webkit-text-size-adjust: 100%;
}
@media print, screen and (min-width: 762px) {
  body {
    font-size: 1.8em;
    font-weight: bold;
  }
}
@media print {
  body {
    zoom: 0.8;
  }
}

body.fixed {
  width: 100%;
  height: 100%;
  position: fixed;
}

:focus:not(:focus-visible) {
  outline: 0;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  font-size: inherit;
  font-weight: inherit;
}

a {
  color: inherit;
  text-decoration: none;
  cursor: pointer;
}

@media print, screen and (min-width: 762px) {
  a[href*="tel:"] {
    cursor: pointer;
  }
}

picture,
img {
  height: auto;
}

ul {
  list-style: none;
  margin: 0;
  padding: 0;
}

ol {
  margin: 0;
  padding-left: 2.5rem;
}

table {
  border-spacing: 0;
}

th {
  font-weight: 500;
}

summary::-webkit-details-marker,
summary::marker {
  display: none;
}

button,
input,
textarea,
select {
  font: inherit;
}

button {
  padding: 0;
  border: none;
  background: transparent;
  color: #333333;
  cursor: pointer;
}

/* body */
.l-body {
  background-color: #fff;
}

.l-body.is-fixed {
  height: 100%;
  width: 100%;
  overflow: hidden;
}

/* header */
.l-header {
  position: sticky;
  top: 0;
  left: 0;
  display: flex;
  width: 100%;
  align-items: center;
  z-index: 100;
}
@media print, screen and (min-width: 762px) {
  .l-header {
    width: 100%;
  }
}
@media print, screen and (min-width: 1200px) {
  .l-header {
    height: 11rem;
  }
}
@media print {
  .l-header {
    position: static;
  }
}

/* main */
.l-main {
  flex-grow: 1;
  overflow: clip;
  width: 100%;
}

/* footer */
.l-footer {
  position: relative;
  width: 100%;
}

/* wrapper */
.l-wrapper {
  margin-right: auto;
  margin-left: auto;
  width: 100%;
}

/* container */
.c-container {
  padding-right: 2rem;
  padding-left: 2rem;
  /*&--top-works {

    @media (min-width: 980px) {
      padding-right: 0;
      padding-left: var.$margin-lv10;
    }

    @include var.media(pc-lg) {
      padding-left: 8rem;
    }
  }*/
}
@media print, screen and (min-width: 762px) {
  .c-container {
    padding-right: 5rem;
    padding-left: 5rem;
  }
}
@media print, screen and (min-width: 1200px) {
  .c-container {
    margin-right: auto;
    margin-left: auto;
    max-width: 130rem;
  }
}
@media print, screen and (min-width: 1200px) {
  .c-container--top {
    max-width: 154rem;
  }
}
@media print, screen and (min-width: 1600px) {
  .c-container--top {
    padding-right: 8rem;
    padding-left: 8rem;
    max-width: 160rem;
  }
}
.c-container--top-interview {
  padding-block: 7rem;
  background-color: #e5f0f8;
}
@media print, screen and (min-width: 762px) {
  .c-container--top-interview {
    max-width: 130rem;
    padding: 10rem 10rem 8rem;
  }
}
@media print, screen and (min-width: 1200px) {
  .c-container--top-interview {
    border-radius: 0;
  }
}
.c-container--top-only-left-environment {
  padding-right: 0;
  padding-left: 0;
}
@media print, screen and (min-width: 762px) {
  .c-container--top-only-left-environment {
    padding-left: 5rem;
  }
}
@media print, screen and (min-width: 1200px) {
  .c-container--top-only-left-environment {
    margin-right: 0;
    padding-left: 0;
    max-width: calc(100% - 5rem);
    background-color: #fff;
  }
}
@media (min-width: 1340px) {
  .c-container--top-only-left-environment {
    max-width: calc(120rem + 50vw - 60rem);
  }
}
@media print, screen and (min-width: 1200px) {
  .c-container--index {
    max-width: 130rem;
  }
}
.c-container--ideal-arrow {
  position: relative;
  z-index: 1;
}
.c-container--field {
  padding-right: 0;
}
@media print, screen and (min-width: 1200px) {
  .c-container--field {
    max-width: 100rem;
  }
}
@media print, screen and (min-width: 1600px) {
  .c-container--field {
    padding-right: 8rem;
    padding-left: 8rem;
    max-width: 116rem;
  }
}

.c-img-container {
  display: flex;
  align-items: center;
  justify-content: center;
}

/* flex */
.c-flex {
  display: flex;
  flex-wrap: wrap;
}
.c-flex--nowrap {
  flex-wrap: nowrap;
}
.c-flex--column {
  flex-direction: column;
}

.c-flex__item {
  flex-basis: 100%;
  max-width: 100%;
}

.c-flex-text {
  display: flex;
  flex-direction: column;
}
.c-flex-text--gap5 {
  gap: 0.5rem;
}
.c-flex-text--gap10 {
  gap: 1rem;
}
.c-flex-text--gap15 {
  gap: 1.5rem;
}
.c-flex-text--gap20 {
  gap: 2rem;
}
.c-flex-text--gap25 {
  gap: 2.5rem;
}
.c-flex-text--gap30 {
  gap: 3rem;
}
.c-flex-text--gap35 {
  gap: 3.5rem;
}
.c-flex-text--gap40 {
  gap: 4rem;
}

/* grid */
.c-grid {
  display: grid;
}
.c-grid--col-1-2 {
  grid-template-columns: 1fr;
  grid-template-rows: auto;
}
@media print, screen and (min-width: 762px) {
  .c-grid--col-1-2 {
    grid-template-columns: repeat(2, 1fr);
  }
}
.c-grid--col-1-3 {
  grid-template-columns: 1fr;
  grid-template-rows: auto;
}
@media print, screen and (min-width: 1200px) {
  .c-grid--col-1-3 {
    grid-template-columns: repeat(3, 1fr);
  }
}
.c-grid--col-1-2-3 {
  grid-template-columns: 1fr;
  grid-template-rows: auto;
}
@media print, screen and (min-width: 762px) {
  .c-grid--col-1-2-3 {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media (min-width: 960px) {
  .c-grid--col-1-2-3 {
    grid-template-columns: repeat(3, 1fr);
  }
}
.c-grid--col-2-4 {
  grid-template-columns: repeat(2, 1fr);
}
@media print, screen and (min-width: 762px) {
  .c-grid--col-2-4 {
    grid-template-columns: repeat(4, 1fr);
  }
}
@media print, screen and (min-width: 762px) {
  .c-grid--col-1-4 {
    grid-template-columns: repeat(4, 1fr);
  }
}
@media print, screen and (min-width: 1200px) {
  .c-grid--col-1-6 {
    grid-template-columns: repeat(6, minmax(0, 1fr));
  }
}
.c-grid--about-future {
  grid-template-columns: repeat(2, 1fr);
}
@media (min-width: 961px) {
  .c-grid--about-future {
    grid-template-columns: repeat(auto-fit, minmax(22rem, 1fr));
  }
}
.c-grid--gap-small {
  gap: 1.5rem;
}
@media print, screen and (min-width: 762px) {
  .c-grid--gap-small {
    gap: 2.5rem;
  }
}

/* button */
.c-button {
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  height: fit-content;
}

.c-button-container {
  display: flex;
  flex-wrap: wrap;
}
.c-button-container--center {
  justify-content: center;
}
.c-button-container--center-only-sp {
  justify-content: center;
}
@media print, screen and (min-width: 762px) {
  .c-button-container--center-only-sp {
    justify-content: flex-start;
  }
}
.c-button-container--large {
  margin-top: 5rem;
}

/* arrow */
.c-arrow {
  display: inline-block;
  color: #fff;
  line-height: 1;
  position: relative;
}
.c-arrow:after {
  content: "→";
  position: absolute;
  color: #fff;
}
.c-arrow--link {
  position: static;
}
.c-arrow--link:after {
  transform: translate(10%, -85%) rotate(0);
  color: #006ab7;
  z-index: 1;
}
.c-arrow--down {
  width: 1.6rem;
  height: 1.6rem;
}
.c-arrow--down:after {
  transform: rotate(90deg);
  left: calc(50% - 7px);
}
.c-arrow--page-top {
  position: absolute;
  top: calc(50% - 8px);
  height: 16px;
  width: 16px;
  border: 1px solid #000;
  border-radius: 50%;
}
.c-arrow--page-top:after {
  content: "";
  position: absolute;
  top: 58%;
  left: 50%;
  height: 5px;
  width: 5px;
  border-top: 1px solid #000;
  border-right: 1px solid #000;
  transform: translate(-50%, -50%) rotate(-45deg);
}

/* link */
.c-text-link {
  width: fit-content;
  color: #006ab7;
  text-decoration: none;
  word-break: break-word;
}
.c-text-link:after {
  background-color: #006ab7;
}
@media (hover: hover) and (pointer: fine) {
  .c-text-link:hover {
    text-decoration: underline;
  }
}
.c-text-link--intext {
  text-decoration: underline;
}
@media (hover: hover) and (pointer: fine) {
  .c-text-link--intext:hover {
    text-decoration: none;
  }
}
.c-text-link--breadcrumb {
  padding-right: min(2.4vw, 1rem);
  color: #006ab7;
}
.c-text-link[target=_blank]::after {
  content: "";
  display: inline-block;
  position: relative;
  height: 12px;
  width: 12px;
  margin: 0 0 0 0.5rem;
  -webkit-mask-image: url(../../assets/img/cmn/cmn_icon_other-window.svg);
  mask-image: url(../../assets/img/cmn/cmn_icon_other-window.svg);
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-position: center center;
  mask-position: center center;
  -webkit-mask-size: auto;
  mask-size: auto;
}
.c-text-link[href^=http]:not([href*=wdb-eu])::after, .c-text-link[href="https://www.wdb-eu.com/"]::after, .c-text-link[href="https://www.wdb-eu.com/guide/"]::after, .c-text-link[href="https://www.wdb-eu.com/contact/"]::after {
  height: 13px;
  width: 13px;
  -webkit-mask-image: url(../../assets/img/cmn/cmn_icon_external-site.svg);
  mask-image: url(../../assets/img/cmn/cmn_icon_external-site.svg);
}
.c-text-link[href^="https://www.wdb-g.com/"]::after {
  height: 12px;
  width: 12px;
  vertical-align: baseline;
  -webkit-mask-image: url(../../assets/img/cmn/cmn_icon_other-window.svg);
  mask-image: url(../../assets/img/cmn/cmn_icon_other-window.svg);
}
.c-text-link--black {
  color: #333333;
}
.c-text-link--black::after {
  background-color: #333333;
}
@media (hover: hover) and (pointer: fine) {
  .c-text-link--black:hover {
    text-decoration: underline;
  }
  .c-text-link--black:hover .u-d-inline-b {
    text-decoration: underline;
  }
}
.c-text-link--company {
  color: #006ab7;
}
.c-text-link--company::after {
  background-color: #006ab7;
}
@media (hover: hover) and (pointer: fine) {
  .c-text-link--company:hover {
    text-decoration: underline;
  }
}
.c-text-link--sitemap-title {
  display: block;
  width: 100%;
  color: #333333;
}
@media (hover: hover) and (pointer: fine) {
  .c-text-link--sitemap-title:hover {
    text-decoration: none;
  }
}
.c-text-link--sitemap-item {
  display: block;
  color: #333333;
}
.c-text-link--area-local-nav {
  font-size: 1.3rem;
  font-weight: bold;
}

/*card*/
.c-grid-card {
  display: grid;
  grid-template-rows: subgrid;
}
.c-grid-card--rowspan-2 {
  grid-row: span 2;
}
.c-grid-card--rowspan-3 {
  grid-row: span 3;
}
.c-grid-card--rowspan-4 {
  grid-row: span 4;
}
@media print, screen and (min-width: 1200px) {
  .c-grid-card--colspan-2 {
    grid-column: span 2;
  }
}
@media print, screen and (min-width: 1200px) {
  .c-grid-card--colspan-3 {
    grid-column: span 3;
  }
}
@media print, screen and (min-width: 1200px) {
  .c-grid-card--colspan-4 {
    grid-column: span 4;
  }
}
.c-grid-card--small {
  grid-row: span 2;
  padding: 1.5rem 0.5rem;
}
@media print, screen and (min-width: 762px) {
  .c-grid-card--small {
    padding: 4rem 1rem;
  }
}
.c-grid-card--about {
  grid-template-columns: minmax(0, 1fr);
}

.c-grid-card__heading {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
}

.c-grid-card__item {
  align-self: center;
  justify-self: center;
}
.c-grid-card__item--rowspan-2 {
  grid-row: span 2;
}
.c-grid-card__item--list {
  justify-self: flex-start;
  align-self: flex-start;
}
.c-grid-card__item--about {
  width: 100%;
}

.c-grid-large-card {
  display: grid;
  grid-template-columns: subgrid;
  grid-template-rows: subgrid;
  padding: 2.5rem;
  grid-row: span 3;
}
@media print, screen and (min-width: 762px) {
  .c-grid-large-card {
    grid-template-rows: auto;
    grid-column: span 2;
    row-gap: 2.5rem;
    padding: 10rem;
  }
}

.c-grid-large-card__heading {
  grid-area: 1/1/2/3;
}

.c-grid-large-card__img {
  grid-row: span 2;
  grid-area: 2/1/3/2;
  margin-right: auto;
  margin-left: auto;
}
@media print, screen and (min-width: 762px) {
  .c-grid-large-card__img {
    margin-right: 0;
    margin-left: 0;
  }
}

/* text-icon */
.c-text-icon {
  display: inline-block;
  border-radius: 0.5rem;
  max-width: fit-content;
  height: fit-content;
  padding: 0.5rem 1rem;
  background-color: #006ab7;
  color: #fff;
  font-size: clamp(0.9rem, 3.2vw, 1.2rem);
  line-height: 1.4;
}
@media print, screen and (min-width: 762px) {
  .c-text-icon {
    padding: 0.5rem 1rem;
    font-size: clamp(1rem, 3.2vw, 1.4rem);
  }
}
.c-text-icon--second {
  background-color: #00ade3;
}
.c-text-icon--third {
  background-color: #083927;
}
.c-text-icon--fourth {
  background-color: #707070;
}
.c-text-icon--fifth {
  background-color: #2162e4;
}
.c-text-icon--sixth {
  background-color: #f3ba00;
}

.c-text-icon-list {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
}
.c-text-icon-list--lv3 {
  margin-bottom: 1.5rem;
}

/* ribbon */
.c-ribbon {
  display: inline-block;
  position: relative;
  padding: 0.5rem 1rem;
  font-size: 1.6rem;
  color: #fff;
  background: #006ab7;
}
.c-ribbon::before {
  position: absolute;
  content: "";
  top: 100%;
  left: 0;
  border: none;
  border-bottom: solid 10px transparent;
  border-right: solid 10px #006b45; /*折り返し部分*/
}
.c-ribbon::after {
  content: "";
  position: absolute;
  top: 0;
  left: 8.3rem;
  width: 0px;
  height: 0px;
  border-color: #006ab7 transparent;
  border-style: solid;
  border-width: 1.9rem 1rem 1.9rem 0;
}

/* label */
.c-label {
  display: inline-block;
  width: fit-content;
  height: fit-content;
  padding: 0.5rem 1rem;
  background-color: #707070;
  color: #fff;
  font-size: 1.4rem;
  line-height: 1.5;
}

/* text */
.c-text--center {
  text-align: center;
}
@media print, screen and (min-width: 762px) {
  .c-text--center-only-pc {
    text-align: center;
  }
}
.c-text--right {
  text-align: right;
}
.c-text--lv2 {
  margin-bottom: 1rem;
}
.c-text--lv3 {
  margin-bottom: 1.5rem;
}
.c-text--lv5 {
  margin-bottom: 2.5rem;
}
.c-text--margin-top-lv2 {
  margin-top: 1rem;
}
.c-text--margin-top-lv3 {
  margin-top: 1.5rem;
}
.c-text--bold {
  font-weight: bold;
}
.c-text--pinchout {
  margin-bottom: 1rem;
}

.c-accent {
  color: #003890;
}
.c-accent--bold {
  font-weight: bold;
}
.c-accent--about {
  font-size: clamp(3rem, 14.5vw, 5rem);
  font-weight: bold;
}
.c-accent--middle {
  font-size: clamp(2rem, 11.5vw, 4rem);
  font-weight: bold;
  line-height: 1.4;
}
.c-accent--about-small {
  font-size: clamp(2rem, 2.5vw, 3rem);
  font-weight: bold;
}

.c-annotation {
  font-size: 1.2rem;
}
@media print, screen and (min-width: 762px) {
  .c-annotation {
    font-size: 1.4rem;
  }
}
.c-annotation--tiny-top {
  vertical-align: top;
}
.c-annotation--right {
  text-align: right;
}
.c-annotation--lv1 {
  margin-bottom: 0.5rem;
}
.c-annotation--lv2-top {
  margin-top: 1rem;
}

.c-emphasis {
  color: #003890;
}
.c-emphasis--bold {
  font-weight: bold;
}
.c-emphasis--center {
  text-align: center;
}

.c-modal-close {
  cursor: pointer;
}

/* header */
.p-header {
  width: 100%;
  background-color: #fff;
}
@media print, screen and (min-width: 1200px) {
  .p-header {
    min-height: 11rem;
  }
}

.p-header-inner-wrapper {
  display: flex;
  background-color: #fff;
}
@media print, screen and (min-width: 1200px) {
  .p-header-inner-wrapper {
    display: block;
  }
}

.p-header-inner {
  display: flex;
  gap: 1rem;
  justify-content: space-between;
  align-items: center;
  height: 6rem;
  width: 100%;
  background-color: #fff;
}
@media print, screen and (min-width: 1200px) {
  .p-header-inner {
    height: 11rem;
    padding: 2rem;
    background-color: #fff;
  }
}
.p-header-inner--top {
  background-color: #006ab7;
}
@media print, screen and (min-width: 1200px) {
  .p-header-inner--top {
    background-color: #fff;
  }
}

.p-header-logo-wrapper {
  height: 100%;
}

.p-header-logo {
  display: flex;
  align-items: center;
  height: 100%;
  width: 17.3rem;
  padding-left: 2rem;
}
@media print, screen and (min-width: 1200px) {
  .p-header-logo {
    width: 20rem;
    padding: 0;
    position: relative;
  }
}
@media (hover: hover) and (pointer: fine) {
  .p-header-logo:hover {
    opacity: 0.7;
  }
}

.p-header-logo__img {
  display: block;
  width: 100%;
}

.p-header-fixed-nav {
  right: 0;
  display: flex;
  align-items: center;
  margin-left: auto;
}
@media print, screen and (min-width: 1200px) {
  .p-header-fixed-nav {
    display: none;
  }
}

@media print, screen and (min-width: 1200px) {
  .p-header__entry-button-wrapper-sp {
    display: none;
  }
}

.p-header__entry-button-wrapper-pc {
  display: none;
}
@media print, screen and (min-width: 1200px) {
  .p-header__entry-button-wrapper-pc {
    display: inline-block;
  }
}

.p-header__toggle-button {
  position: relative;
  width: min(11vw, 5rem);
  height: min(11vw, 5rem);
  margin-left: min(1.4vw, 0.5rem);
  background-color: #fff;
  cursor: pointer;
}
@media print, screen and (min-width: 1200px) {
  .p-header__toggle-button {
    display: none;
  }
}

.p-header-toggle-bar {
  display: block;
  position: absolute;
  right: calc(50% - min(4.8vw, 2rem) / 2);
  border-radius: 0.2rem;
  height: min(0.63vw, 0.24rem);
  width: min(4.8vw, 2rem);
  background: #006ab7;
  cursor: pointer;
  transition: 0.3s ease-in-out;
}
.p-header-toggle-bar:nth-child(1) {
  top: calc(50% + 0.65rem);
}
.p-header-toggle-bar:nth-child(2) {
  top: 50%;
}
.p-header-toggle-bar:nth-child(3) {
  top: calc(50% - 0.6rem);
}

.p-header-nav {
  position: absolute;
  top: 5rem;
  right: 0;
  display: none;
  height: calc(100dvh - 5rem);
  width: 100%;
  background-color: #fff;
  overflow-y: auto;
  z-index: 100;
}
@media print, screen and (min-width: 1200px) {
  .p-header-nav {
    position: static;
    display: block;
    width: inherit;
    height: 100%;
    overflow-y: unset;
  }
}

.p-header-nav-list-wrapper {
  width: 100%;
  padding: 0 2rem 2rem;
  margin: 0 auto;
}
@media print, screen and (min-width: 1200px) {
  .p-header-nav-list-wrapper {
    max-width: 100%;
    height: 100%;
    padding: 0;
    margin: 0;
  }
}

@media print, screen and (min-width: 1200px) {
  .p-header-nav-list {
    display: flex;
    justify-content: center;
    gap: 4.5rem;
    height: 100%;
  }
}

.p-header-nav-list-inner {
  font-weight: bold;
}
@media print, screen and (min-width: 1200px) {
  .p-header-nav-list-inner {
    position: relative;
    height: 100%;
  }
  .p-header-nav-list-inner::after {
    content: "";
    position: absolute;
    width: 100%;
    height: 2rem;
    background: transparent;
    bottom: -2rem;
  }
}

.p-header-nav-list__index {
  display: flex;
  justify-content: space-between;
  border-bottom: 1px solid #888;
  padding: 2rem 0;
  font-size: 1.8rem;
  cursor: pointer;
}
.p-header-nav-list__index--drop::before, .p-header-nav-list__index--drop::after {
  content: "";
  position: absolute;
  right: 2.4rem;
  margin-top: 1.8rem;
  border-radius: 1px;
  height: 0.2rem;
  width: 1.5rem;
  background-color: #006ab7;
  transition: transform 0.1s;
}
.p-header-nav-list__index--drop::after {
  transform: rotate(90deg);
}
@media print, screen and (min-width: 1200px) {
  .p-header-nav-list__index--drop {
    display: none;
  }
}
.p-header-nav-list__index.is-focus::before {
  display: none;
}
.p-header-nav-list__index.is-focus::after {
  transform: rotate(0);
}
.p-header-nav-list__index--nodrop::after {
  display: block;
  content: "→";
  position: absolute;
  color: #006ab7;
  transform: rotate(0);
  right: 2.2rem;
}
.p-header-nav-list__index--link {
  display: none;
}
@media print, screen and (min-width: 1200px) {
  .p-header-nav-list__index--link {
    display: flex;
  }
}
@media print, screen and (min-width: 1200px) {
  .p-header-nav-list__index {
    flex-direction: column;
    justify-content: center;
    gap: 1rem;
    padding: 2.5rem 0 0.5rem;
    font-size: min(1.2vw, 1.6rem);
    line-height: 1.4;
    text-align: center;
    border-bottom: none;
  }
  .p-header-nav-list__index::after {
    content: "";
    position: static;
    width: 100%;
    max-width: 20rem;
    height: 5px;
    margin-top: 0;
    background-color: transparent;
    transform: scale(0, 1);
    transition: all 0.2s;
    transform-origin: left top;
  }
  .p-header-nav-list__index::before {
    display: none;
  }
}

.p-header-nav-list-icon {
  display: inline-block;
  padding-right: 7px;
}
@media print, screen and (min-width: 1200px) {
  .p-header-nav-list-icon {
    display: none;
  }
}

.p-header-nav-list__target {
  display: block;
  margin-top: 2rem;
  background-color: #fff;
  font-weight: 500;
}
.p-header-nav-list__target::before {
  content: "-";
  padding-right: 0.5rem;
}
@media print, screen and (min-width: 1200px) {
  .p-header-nav-list__target {
    min-width: 21rem;
    margin-top: 0;
    padding: 1.5rem 3rem;
    font-weight: bold;
  }
  .p-header-nav-list__target:not(:first-child) {
    border-top: 1px solid #ccd8d4;
  }
}
@media print and (hover: hover) and (pointer: fine), screen and (min-width: 1200px) and (hover: hover) and (pointer: fine) {
  .p-header-nav-list__target:hover {
    background-color: #006ab7;
    color: #fff;
  }
}

.p-header-nav-list__drop-list {
  display: none;
}
.p-header-nav-list__drop-list--bottom {
  padding-bottom: 3rem;
  border-bottom: 1px solid #888;
}
@media print, screen and (min-width: 1200px) {
  .p-header-nav-list__drop-list--bottom {
    padding-bottom: 0;
    border-bottom: none;
  }
}

@media print, screen and (min-width: 1200px) {
  .p-header-nav-list-inner:hover .p-header-nav-list__drop-list {
    display: block;
    position: absolute;
    top: 9rem;
    left: 50%;
    width: 30rem;
    padding-top: 1rem;
    font-size: 1.6rem;
    transform: translateX(-50%);
  }
  .p-header-nav-list-inner:hover .p-header-nav-list__index {
    color: #006ab7;
    transition: all 0.2s;
  }
  .p-header-nav-list-inner:hover .p-header-nav-list__index::after {
    background-color: #006ab7;
    transform: scale(1, 1);
  }
  .p-header-subnav-list-inner {
    display: none;
  }
}
@media print, screen and (min-width: 1200px) {
  .p-header-nav-list__drop-list-item {
    box-shadow: 0 3px 3px rgba(8, 57, 39, 0.15);
    overflow: hidden;
  }
  .p-header-nav-list__drop-list-item:first-child {
    display: none;
  }
}

@media print, screen and (min-width: 1200px) {
  .p-header-nav-list-inner.is-current {
    color: #006ab7;
  }
  .p-header-nav-list-inner.is-current .p-header-nav-list__index::after {
    background-color: #006ab7;
    transform: scale(1, 1);
    transition: all 0s;
  }
  .p-header-nav-list-inner.is-current .p-header-nav-list__drop-list {
    color: #333333;
  }
}

.p-header-subnav-list-inner {
  margin-top: 3rem;
}

.p-header-subnav-list__sp-list {
  margin-top: 3rem;
  font-size: 1.4rem;
}

.p-header-subnav-list__target {
  display: block;
  margin-top: 0.5rem;
}

@media print, screen and (max-width: 1199px) {
  .p-header.is-open {
    position: fixed;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    height: 100%;
    overflow-y: auto;
  }
  .p-header.is-open .p-header-toggle-bar:nth-child(1) {
    top: 50%;
    transform: rotate(45deg);
  }
  .p-header.is-open .p-header-toggle-bar:nth-child(2) {
    width: 0;
    transform: none;
  }
  .p-header.is-open .p-header-toggle-bar:nth-child(3) {
    top: 50%;
    transform: rotate(-45deg);
  }
}
/* breadcrumb */
.p-breadcrumb-list {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: min(2.4vw, 1rem);
  justify-content: flex-start;
  font-size: min(3.4vw, 1.2rem);
}
@media print, screen and (min-width: 762px) {
  .p-breadcrumb-list {
    font-size: 1.4rem;
  }
}
.p-breadcrumb-list--index {
  padding-bottom: 2.5rem;
}
@media print, screen and (min-width: 762px) {
  .p-breadcrumb-list--index {
    padding-bottom: 5rem;
  }
}
.p-breadcrumb-list--message {
  padding: 1.5rem 0;
}
@media print, screen and (min-width: 762px) {
  .p-breadcrumb-list--message {
    padding: 2.5rem 0;
  }
}
.p-breadcrumb-list--voice {
  position: absolute;
  bottom: 1rem;
  left: 2rem;
}
@media print, screen and (min-width: 1200px) {
  .p-breadcrumb-list--voice {
    top: -6rem;
    left: max(2rem, 50vw - 68rem);
    height: 2.4rem;
  }
}

.p-breadcrumb-list__item::after {
  content: "";
  display: inline-block;
  height: min(1.8vw, 0.7rem);
  width: min(1.8vw, 0.7rem);
  border-bottom: 1px solid #083927;
  border-left: 1px solid #083927;
  margin-bottom: 0.3rem;
  transform: rotate(-135deg);
  vertical-align: middle;
}
.p-breadcrumb-list__item:last-child::after {
  content: none;
}

/* main */
.p-main--top {
  padding-top: 0;
}
@media print, screen and (min-width: 762px) {
  .p-main--index, .p-main--message {
    padding-top: 6rem;
  }
}
@media print, screen and (min-width: 1200px) {
  .p-main--index, .p-main--message {
    padding-top: 0;
  }
}
@media print, screen and (min-width: 762px) {
  .p-main--voice {
    padding-top: 0;
  }
}
@media (min-width: 980px) {
  .p-main--voice {
    padding-top: 0;
  }
}

/* wrapper */
.p-wrapper--message {
  padding-bottom: 5rem;
}
@media print, screen and (min-width: 1200px) {
  .p-wrapper--message {
    padding-top: 7.4rem;
    padding-bottom: 10rem;
  }
}
.p-wrapper--index {
  padding-top: 2rem;
  padding-bottom: 10rem;
}
@media print, screen and (min-width: 1200px) {
  .p-wrapper--index {
    padding-top: 10rem;
  }
}
.p-wrapper--vision {
  padding-top: 2rem;
  padding-bottom: 3rem;
}
@media print, screen and (min-width: 1200px) {
  .p-wrapper--vision {
    padding-top: 5rem;
    padding-bottom: 5rem;
  }
}
.p-wrapper--index-people {
  padding: 5rem 0;
}
@media print, screen and (min-width: 762px) {
  .p-wrapper--index-people {
    padding: 10rem 0 5rem;
  }
}
.p-wrapper--info {
  padding-bottom: 5rem;
}
@media print, screen and (min-width: 762px) {
  .p-wrapper--info {
    padding-bottom: 10rem;
  }
}
.p-wrapper--no-padding-bottom {
  padding-top: 5rem;
}
@media print, screen and (min-width: 762px) {
  .p-wrapper--no-padding-bottom {
    padding-top: 10rem;
  }
}
.p-wrapper--sitemap {
  padding-top: 2rem;
  padding-bottom: 7rem;
}
@media print, screen and (min-width: 762px) {
  .p-wrapper--sitemap {
    padding-top: 5rem;
    padding-bottom: 10rem;
  }
}
.p-wrapper--error {
  padding-top: 7rem;
  padding-bottom: 7rem;
}
@media print, screen and (min-width: 1200px) {
  .p-wrapper--error {
    padding-top: 10rem;
    padding-bottom: 10rem;
  }
}
.p-wrapper--office-data {
  padding-bottom: 10rem;
}

/* section */
.p-large-section + .p-large-section {
  margin-top: 7rem;
}
@media print, screen and (min-width: 762px) {
  .p-large-section + .p-large-section {
    margin-top: 10rem;
  }
}
.p-large-section + .p-large-section--no-margin {
  margin-top: 0;
}

.p-large-section__heading {
  margin-bottom: 2.5rem;
}
.p-large-section__heading + .p-large-section__content--top {
  margin-bottom: 0;
  margin-top: 2.5rem;
}
@media print, screen and (min-width: 762px) {
  .p-large-section__heading + .p-large-section__content--top {
    margin-top: 5rem;
  }
}
.p-large-section__heading--mb-lg {
  margin-bottom: 3rem;
}
@media print, screen and (min-width: 762px) {
  .p-large-section__heading--mb-lg {
    margin-bottom: 4rem;
  }
}
.p-large-section__heading--office-data {
  margin-top: 2rem;
}
@media print, screen and (min-width: 762px) {
  .p-large-section__heading--office-data {
    margin-top: 8rem;
  }
}

/*構造改定で不要になるかも*/
.p-middle-section + .p-middle-section {
  margin-top: 2.5rem;
}
.p-middle-section--top + .p-middle-section--top {
  margin-top: 5rem;
}

.p-section-bg {
  width: 100%;
  padding-block: 7rem;
  background-color: #fff;
}
@media print, screen and (min-width: 762px) {
  .p-section-bg {
    padding-block: 10rem;
  }
}
.p-section-bg + .p-section-bg {
  margin-top: 0;
}
.p-section-bg--last {
  padding-bottom: 0;
}
.p-section-bg--no-padding-top {
  padding-top: 0;
}
.p-section-bg--middle {
  padding-block: 2rem;
}
@media print, screen and (min-width: 762px) {
  .p-section-bg--middle {
    padding-block: 5rem;
  }
}
@media print, screen and (min-width: 1200px) {
  .p-section-bg--middle {
    padding-block: 10rem;
  }
}
.p-section-bg--small {
  padding-block: 2rem;
}
@media print, screen and (min-width: 762px) {
  .p-section-bg--small {
    padding-block: 5rem;
  }
}
.p-section-bg--tiny {
  padding-block: 2rem;
}
@media print, screen and (min-width: 762px) {
  .p-section-bg--tiny {
    padding-block: 2.5rem;
  }
}
.p-section-bg--local-nav {
  padding: 5rem 2rem;
  background-color: #e5f0f8;
}
@media print, screen and (min-width: 762px) {
  .p-section-bg--local-nav {
    padding: 10rem 5rem;
  }
}
.p-section-bg--top-main {
  position: relative;
  padding: 0;
}
.p-section-bg--top {
  padding-block: 7rem;
}
@media print, screen and (min-width: 762px) {
  .p-section-bg--top {
    padding-block: 16rem;
    margin-bottom: 0;
  }
}
.p-section-bg--top + .p-section-bg--top {
  margin-top: 0;
}
.p-section-bg--top-vision {
  padding-block: 4rem;
  margin-bottom: -8rem;
}
@media print, screen and (min-width: 762px) {
  .p-section-bg--top-vision {
    padding-block: 12rem;
    margin-bottom: 0;
  }
}
.p-section-bg--top-vision + .p-section-bg--top-vision {
  margin-top: 0;
}
.p-section-bg--top-interview {
  padding-block: 0;
  background-color: transparent;
}
@media print, screen and (min-width: 762px) {
  .p-section-bg--top-interview {
    position: relative;
    padding: 0;
    margin-bottom: 15rem;
  }
  .p-section-bg--top-interview::after {
    content: "";
    position: absolute;
    right: 0;
    bottom: -15rem;
    display: block;
    height: 52rem;
    width: 35.375vw;
    background-color: #f5f5f5;
    z-index: -1;
  }
}
.p-section-bg--top-environment {
  padding-top: 7.5rem;
  padding-bottom: 0;
}
@media print, screen and (min-width: 762px) {
  .p-section-bg--top-environment {
    padding-block: 16rem;
  }
}
.p-section-bg--vision {
  background-color: transparent;
  padding-block: 7rem;
}
@media print, screen and (min-width: 762px) {
  .p-section-bg--vision {
    padding-block: 10rem;
  }
}
.p-section-bg--ideal-map {
  padding-block: 6rem;
  background-color: #d5e9f6;
}
@media print, screen and (min-width: 762px) {
  .p-section-bg--ideal-map {
    padding-block: 8rem;
  }
}
.p-section-bg--top-interview-swiper {
  position: relative;
  border-top-right-radius: 15rem;
  background-color: #006ab7;
}
@media print, screen and (min-width: 762px) {
  .p-section-bg--top-interview-swiper {
    border-top-right-radius: 40rem;
    padding-block: 15rem;
  }
}
.p-section-bg--interview-swiper {
  position: relative;
  padding-block: 5rem;
  background-color: #e5f0f8;
}
@media print, screen and (min-width: 762px) {
  .p-section-bg--interview-swiper {
    padding-block: 10rem;
  }
}
.p-section-bg--job-interview {
  padding-bottom: 0;
}
.p-section-bg--ideal-arrow {
  position: relative;
  padding-top: 5rem;
  padding-bottom: 7rem;
  background-color: #ccd8d4;
}
@media print, screen and (min-width: 762px) {
  .p-section-bg--ideal-arrow {
    padding-block: 10rem;
  }
}
.p-section-bg--ideal-arrow::before {
  content: "";
  position: absolute;
  top: 30rem;
  height: 100rem;
  width: 160rem;
  right: 0;
  background-color: #eff7fb;
  clip-path: polygon(100% 0, 100% 100%, 0 50%);
}
@media print, screen and (min-width: 762px) {
  .p-section-bg--ideal-arrow::before {
    top: 10rem;
    height: 140rem;
    width: 140vw;
    clip-path: polygon(100% 0, 100% 100%, 0 50%);
  }
}
.p-section-bg--ideal-arrow::after {
  content: "";
  position: absolute;
  bottom: 210rem;
  height: 100rem;
  width: 160rem;
  right: 0;
  background-color: #d4ecf5;
  clip-path: polygon(100% 0, 100% 100%, 0 50%);
}
@media print, screen and (min-width: 762px) {
  .p-section-bg--ideal-arrow::after {
    bottom: 30rem;
    height: 140rem;
    width: 140vw;
    clip-path: polygon(100% 0, 100% 100%, 0 50%);
  }
}
.p-section-bg--info-type {
  padding-bottom: 2.5rem;
}
@media print, screen and (min-width: 762px) {
  .p-section-bg--info-type {
    padding-bottom: 4rem;
  }
}
.p-section-bg--light-green {
  background-color: #e5f0f8;
}
.p-section-bg--gray {
  background-color: #f5f5f5;
}
.p-section-bg--blue {
  background-color: #ddf1f6;
}
.p-section-bg--introduction {
  padding: 2.5rem 0;
  background: linear-gradient(180deg, #fff 0%, #fff 35%, #006ab7 35%, #006ab7 100%);
  background: -webkit-linear-gradient(-90deg, #fff 0%, #fff 35%, #006ab7 35%, #006ab7 100%);
  background: -moz-linear-gradient(-90deg, #fff 0%, #fff 35%, #006ab7 35%, #006ab7 100%);
}
@media print, screen and (min-width: 762px) {
  .p-section-bg--introduction {
    padding: 5rem 0;
    background: linear-gradient(180deg, #fff 0%, #fff 40%, #006ab7 40%, #006ab7 100%);
    background: -webkit-linear-gradient(-90deg, #fff 0%, #fff 40%, #006ab7 40%, #006ab7 100%);
    background: -moz-linear-gradient(-90deg, #fff 0%, #fff 40%, #006ab7 40%, #006ab7 100%);
  }
}
.p-section-bg--voice {
  padding-bottom: 0;
  background: linear-gradient(180deg, #fff 0%, #fff 8%, #e5f0f8 8%, #e5f0f8 100%);
  background: -webkit-linear-gradient(-90deg, #fff 0%, #fff 8%, #e5f0f8 8%, #e5f0f8 100%);
  background: -moz-linear-gradient(-90deg, #fff 0%, #fff 8%, #e5f0f8 8%, #e5f0f8 100%);
}
@media print, screen and (min-width: 762px) {
  .p-section-bg--voice {
    background: linear-gradient(180deg, #fff 0%, #fff 15%, #e5f0f8 15%, #e5f0f8 100%);
    background: -webkit-linear-gradient(-90deg, #fff 0%, #fff 15%, #e5f0f8 15%, #e5f0f8 100%);
    background: -moz-linear-gradient(-90deg, #fff 0%, #fff 15%, #e5f0f8 15%, #e5f0f8 100%);
  }
}
@media print, screen and (min-width: 1200px) {
  .p-section-bg--voice {
    background: linear-gradient(180deg, #fff 0%, #fff 20%, #e5f0f8 20%, #e5f0f8 100%);
    background: -webkit-linear-gradient(-90deg, #fff 0%, #fff 20%, #e5f0f8 20%, #e5f0f8 100%);
    background: -moz-linear-gradient(-90deg, #fff 0%, #fff 20%, #e5f0f8 20%, #e5f0f8 100%);
  }
}
.p-section-bg--permanent-dispatch-top {
  padding-block: 0;
}
@media print, screen and (min-width: 762px) {
  .p-section-bg--permanent-dispatch-top {
    padding-top: 5rem;
  }
}
.p-section-bg--schedule {
  padding-top: 2.5rem;
  padding-bottom: 0;
}
@media print, screen and (min-width: 762px) {
  .p-section-bg--schedule {
    padding-top: 5rem;
    padding-bottom: 0;
  }
}
.p-section-bg--schedule-last {
  padding-top: 2.5rem;
  padding-bottom: 7rem;
}
@media print, screen and (min-width: 762px) {
  .p-section-bg--schedule-last {
    padding-top: 5rem;
    padding-bottom: 10rem;
  }
}
.p-section-bg--office-data {
  padding-top: 4rem;
}
@media print, screen and (min-width: 520px) {
  .p-section-bg--office-data {
    padding-top: 8rem;
  }
}

/* heading */
.p-top-heading {
  font-weight: bold;
}
.p-top-heading--catch {
  display: block;
  color: #fff;
  font-size: 3.5rem;
  font-feature-settings: "palt";
  line-height: 1.4;
}
@media print, screen and (min-width: 762px) {
  .p-top-heading--catch {
    font-size: clamp(2.4rem, 3.4vw, 4.8rem);
  }
}
.p-top-heading--sub-catch {
  margin-bottom: 0.5rem;
  color: #fff;
  font-size: 2rem;
}
@media print, screen and (min-width: 762px) {
  .p-top-heading--sub-catch {
    font-size: clamp(1.4rem, 1.8vw, 3rem);
  }
}
.p-top-heading--primary {
  font-size: 4.8rem;
  font-size: 5rem;
  /*font-size: clamp(4rem, 10.5vw ,var.$fs-lv11);*/
  line-height: 1.2;
}
@media print, screen and (min-width: 762px) {
  .p-top-heading--primary {
    font-size: 10rem;
    /*font-size: clamp(4rem, 10.5vw ,var.$fs-lv11);*/
    line-height: 1.4;
  }
}
.p-top-heading--primary-bland {
  color: #003890;
  font-size: 5rem;
  /*font-size: clamp(4rem, 10.5vw ,var.$fs-lv11);*/
  line-height: 1.2;
}
@media print, screen and (min-width: 762px) {
  .p-top-heading--primary-bland {
    font-size: 10rem;
    /*font-size: clamp(4rem, 10.5vw ,var.$fs-lv11);*/
    line-height: 1.4;
  }
}
.p-top-heading--secondary {
  font-size: 3rem;
  line-height: 1.4;
}
@media print, screen and (min-width: 762px) {
  .p-top-heading--secondary {
    font-size: clamp(2rem, 3.58vw, 4.8rem);
    letter-spacing: 0.05em;
    line-height: 1.5217391304;
  }
}
.p-top-heading--secondary-message {
  font-size: 3rem;
  line-height: 1.4;
  letter-spacing: 0.1em;
}
@media print, screen and (min-width: 762px) {
  .p-top-heading--secondary-message {
    font-size: clamp(2rem, 3.58vw, 4.8rem);
  }
}
.p-top-heading--sub {
  color: #003890;
}
@media print, screen and (min-width: 762px) {
  .p-top-heading--sub {
    font-size: 2rem;
  }
}
.p-top-heading--environment {
  color: #003890;
  font-size: 2rem;
  /*font-size: clamp(4rem, 10.5vw ,var.$fs-lv11);*/
  line-height: 1.4;
}
@media print, screen and (min-width: 762px) {
  .p-top-heading--environment {
    font-size: 2.4rem;
    /*font-size: clamp(4rem, 10.5vw ,var.$fs-lv11);*/
    line-height: 1.4;
  }
}
.p-top-heading--environment-sub {
  color: #333333;
  margin-bottom: 0.5rem;
}
@media print, screen and (min-width: 762px) {
  .p-top-heading--environment-sub {
    font-size: 1.8rem;
    margin-bottom: 1rem;
  }
}
.p-top-heading--lead {
  margin-top: 1rem;
}
@media print, screen and (min-width: 762px) {
  .p-top-heading--lead {
    margin-top: 2rem;
  }
}
.p-top-heading--white {
  color: #fff;
}

.p-top-heading-wrapper {
  display: flex;
  flex-direction: column;
}

.p-voice-slider-heading-wrapper {
  text-align: start;
}

.p-primary-heading {
  background-repeat: no-repeat;
  background-size: contain;
  font-size: 3.5rem;
  font-weight: bold;
  line-height: 1.2;
  color: #003890;
  white-space: nowrap;
}
@media print, screen and (min-width: 762px) {
  .p-primary-heading {
    font-size: 5.5rem;
    max-height: 6.7rem;
  }
}
.p-primary-heading--about {
  background-image: url(../../assets/img/mock/about_img_heading.svg);
  aspect-ratio: 234/67;
}
.p-primary-heading--permanent-dispatch {
  background-image: url(../../assets/img/mock/dispatch_img_heading.svg);
  aspect-ratio: 468/67;
}

.p-primary-heading-img {
  width: auto;
  height: 5rem;
}
@media print, screen and (min-width: 1200px) {
  .p-primary-heading-img {
    height: 6rem;
  }
}

.p-primary-local-heading-img {
  height: 5rem;
  margin-bottom: 1rem;
}

.p-heading {
  position: relative;
  font-weight: bold;
}
.p-heading--center {
  text-align: center;
}
.p-heading--center-sp {
  text-align: center;
}
@media print, screen and (min-width: 762px) {
  .p-heading--center-sp {
    text-align: start;
  }
}
.p-heading--lv3 {
  margin-bottom: 1.5rem;
}
.p-heading--number {
  padding-left: 3.8rem;
  text-indent: -3.8rem;
}
.p-heading--primary {
  margin-bottom: 2.5rem;
  font-size: 2.4rem;
  letter-spacing: 0.1em;
  line-height: 1.4;
}
@media print, screen and (min-width: 762px) {
  .p-heading--primary {
    margin-bottom: 5rem;
    font-size: 3rem;
  }
}
.p-heading--local {
  margin-bottom: 0;
  font-size: 1.2rem;
  color: #003890;
}
@media print, screen and (min-width: 762px) {
  .p-heading--local {
    font-size: 1.8rem;
    line-height: 1.3;
    text-align: left;
  }
}
.p-heading--sublocal {
  margin-bottom: 0;
  font-size: 1rem;
  color: #003890;
}
@media print, screen and (min-width: 762px) {
  .p-heading--sublocal {
    font-size: 1.4rem;
    line-height: 1.3;
    text-align: left;
  }
}
.p-heading--secondary {
  font-size: 2rem;
  letter-spacing: 0.1em;
  line-height: 1.4;
}
@media print, screen and (min-width: 762px) {
  .p-heading--secondary {
    font-size: 3rem;
  }
}
.p-heading--secondary-large {
  font-size: 2rem;
  line-height: 1.6;
}
@media print, screen and (min-width: 762px) {
  .p-heading--secondary-large {
    font-size: 3rem;
  }
}
.p-heading--secondary-sub {
  margin-bottom: 1.5rem;
  font-size: 2rem;
  line-height: 1.6;
}
.p-heading--secondary-bland {
  color: #003890;
  font-size: 2rem;
  line-height: 1.75;
  letter-spacing: 0.05em;
}
@media print, screen and (min-width: 762px) {
  .p-heading--secondary-bland {
    font-size: 3rem;
    line-height: 1.6666666667;
    letter-spacing: 0.1em;
  }
}
.p-heading--secondary-cmn {
  margin-bottom: 2.5rem;
  font-size: 2.4rem;
  line-height: 1.4;
}
.p-heading--tertiary {
  margin-bottom: 2rem;
  font-size: 2rem;
  letter-spacing: 0.1em;
  line-height: 1.6;
}
@media print, screen and (min-width: 762px) {
  .p-heading--tertiary {
    font-size: 2.4rem;
  }
}
.p-heading--tertiary-sub {
  font-size: 1.8rem;
  line-height: 2;
}
@media print, screen and (min-width: 762px) {
  .p-heading--tertiary-sub {
    font-size: 2.4rem;
    line-height: 1.6;
  }
}
.p-heading--tertiary-lv3 {
  margin-bottom: 1.5rem;
  font-size: 2rem;
  line-height: 1.6;
}
@media print, screen and (min-width: 762px) {
  .p-heading--tertiary-lv3 {
    font-size: 2.4rem;
  }
}
.p-heading--tertiary-bland {
  color: #003890;
  font-size: 2rem;
  line-height: 1.6;
}
@media print, screen and (min-width: 762px) {
  .p-heading--tertiary-bland {
    font-size: 2.4rem;
  }
}
.p-heading--tertiary-cmn {
  margin-bottom: 1.5rem;
  line-height: 1.6;
}
@media print, screen and (min-width: 762px) {
  .p-heading--tertiary-cmn {
    margin-bottom: 3rem;
    font-size: 2.4rem;
  }
}
.p-heading--quaternary {
  margin-bottom: 1.5rem;
  font-size: 1.8rem;
  letter-spacing: 0.1em;
}
@media print, screen and (min-width: 762px) {
  .p-heading--quaternary {
    font-size: 2rem;
  }
}
.p-heading--quaternary-no-margin {
  font-size: 1.8rem;
}
@media print, screen and (min-width: 762px) {
  .p-heading--quaternary-no-margin {
    font-size: 2rem;
  }
}
@media print, screen and (min-width: 1200px) {
  .p-heading--small {
    font-size: 1.8rem;
  }
}
.p-heading--local-nav {
  margin-top: 0.5rem;
  font-size: 1.2rem;
  text-align: center;
  color: #003890;
}
@media print, screen and (min-width: 1200px) {
  .p-heading--local-nav {
    font-size: 1.6rem;
  }
}
.p-heading--message {
  margin: 2.5rem 0 1.5rem;
  font-size: 2.8rem;
  line-height: 1.6;
}
@media print, screen and (min-width: 762px) {
  .p-heading--message {
    margin: 5rem 0 2.5rem;
    font-size: 3.2rem;
  }
}
.p-heading--title-voice {
  color: #003890;
  font-size: 2.8rem;
  line-height: 1.6;
}
@media print, screen and (min-width: 762px) {
  .p-heading--title-voice {
    font-size: clamp(2.5rem, 3vw, 3.2rem);
  }
}
.p-heading--title-voice > * + * {
  margin-top: 0.5rem;
}
.p-heading--voice-slider {
  color: #fff;
  font-size: 4.8rem;
  line-height: 1;
}
@media print, screen and (min-width: 762px) {
  .p-heading--voice-slider {
    font-size: 4.8rem;
  }
}
.p-heading--voice-slider-sub {
  color: #fff;
}
@media print, screen and (min-width: 762px) {
  .p-heading--voice-slider-sub {
    margin-left: 2rem;
    font-size: 2rem;
  }
}
.p-heading--about {
  font-size: clamp(1.6rem, 4.4vw, 3.5rem);
  letter-spacing: 0.1em;
  line-height: 1.4;
}
@media print, screen and (min-width: 762px) {
  .p-heading--about {
    font-size: 2rem;
  }
}
.p-heading--bg-emphasis {
  display: inline-block;
  margin-top: 0.5rem;
  background-color: #006ab7;
  color: #fff;
}
.p-heading--white {
  color: #fff;
}
.p-heading--green {
  color: #003890;
}
.p-heading--about {
  font-size: 1.8rem;
  line-height: 2;
  margin-bottom: 2.5rem;
}
@media print, screen and (min-width: 762px) {
  .p-heading--about {
    font-size: 2.4rem;
    line-height: 1.6;
    margin-bottom: 3rem;
  }
}
.p-heading--results {
  font-size: 1.8rem;
  line-height: 2;
  margin-top: 2.5rem;
  text-align: center;
}
@media print, screen and (min-width: 762px) {
  .p-heading--results {
    font-size: 2.4rem;
    line-height: 1.6;
    margin-top: 3rem;
  }
}
.p-heading--training {
  font-size: 1.8rem;
  line-height: 2;
  margin-bottom: 1.5rem;
}
@media print, screen and (min-width: 762px) {
  .p-heading--training {
    font-size: 2.4rem;
    line-height: 1.6;
    margin-bottom: 2rem;
  }
}
.p-heading--requirement {
  font-size: 2rem;
  margin-bottom: 3rem;
}
@media print, screen and (min-width: 762px) {
  .p-heading--requirement {
    font-size: 2.4rem;
    margin-bottom: 3rem;
  }
}
.p-heading--table {
  font-size: 2rem;
  margin-bottom: 1rem;
}
@media print, screen and (min-width: 762px) {
  .p-heading--table {
    font-size: 2.2rem;
  }
}
.p-heading--requirement-sub {
  font-size: 2rem;
  margin-bottom: 2rem;
}
@media print, screen and (min-width: 762px) {
  .p-heading--requirement-sub {
    font-size: 2.4rem;
  }
}
.p-heading--underline {
  padding-bottom: 1rem;
  border-bottom: solid 1px #888;
}
.p-heading--underline-mb0 {
  padding-bottom: 1rem;
  margin-bottom: 0;
  border-bottom: solid 1px #888;
}
.p-heading--lv0 {
  margin-bottom: 0;
}
.p-heading--mb {
  margin-bottom: 1.5rem;
}
@media print, screen and (min-width: 762px) {
  .p-heading--mb {
    margin-bottom: 3rem;
  }
}
.p-heading--placement {
  text-align: center;
}
.p-heading--placement + * {
  margin-top: 2.5rem;
}
@media print, screen and (min-width: 762px) {
  .p-heading--placement + * {
    margin-top: 4rem;
  }
}
.p-heading--area-local-nav {
  position: relative;
  margin-bottom: 1.5rem;
  padding-left: 1.5rem;
}
.p-heading--area-local-nav::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  display: block;
  width: 1rem;
  height: 0.4rem;
  border-radius: 0.2rem;
  background-color: #003890;
}
@media print, screen and (min-width: 1200px) {
  .p-heading--area-local-nav {
    margin-bottom: 2rem;
  }
}
.p-heading--office-data {
  margin-bottom: 5rem;
  font-size: 2rem;
  text-align: center;
}
@media print, screen and (min-width: 762px) {
  .p-heading--office-data {
    margin-bottom: 8rem;
    font-size: 2.8rem;
  }
}
.p-heading--graph-data {
  font-size: 2rem;
}
.p-heading--features {
  margin-bottom: 2rem;
  font-size: 2rem;
}
.p-heading--office-data-sub {
  font-size: 1.2rem;
  text-align: center;
}
@media print, screen and (min-width: 762px) {
  .p-heading--office-data-sub {
    font-size: 1.6rem;
  }
}
.p-heading--ideal {
  font-size: 1.8rem;
  margin-bottom: 0.5rem;
}
@media print, screen and (min-width: 762px) {
  .p-heading--ideal {
    font-size: 2.2rem;
  }
}
.p-heading--ideal-faculty {
  font-size: 2rem;
  margin-bottom: 1.5rem;
}
@media print, screen and (min-width: 762px) {
  .p-heading--ideal-faculty {
    font-size: 2.4rem;
    margin-bottom: 3rem;
  }
}

.p-top-category-heading {
  height: 5rem;
  margin-bottom: 1rem;
}
@media print, screen and (min-width: 762px) {
  .p-top-category-heading {
    height: 11rem;
    margin-bottom: 2rem;
  }
}
.p-top-category-heading img {
  height: 100%;
  width: auto;
}

/* button */
.p-button-main {
  gap: 1.5rem;
  width: 100%;
  max-width: 32rem;
  padding: 1.5rem 2rem;
  padding-right: 6rem;
  border: 1px solid #006ab7;
  border-radius: 6rem;
  background-color: #fff;
  color: #333333;
  font-weight: bold;
}
.p-button-main::after {
  content: "→";
  display: flex;
  align-items: center;
  justify-content: center;
  position: absolute;
  right: 1rem;
  border-radius: 50%;
  height: 4rem;
  width: 4rem;
  font-size: 2rem;
  font-weight: 500;
  color: #fff;
  border: 1px solid transparent;
  background-color: #006ab7;
  transition-duration: 0.25s;
}
@media (hover: hover) and (pointer: fine) {
  .p-button-main:hover {
    background-color: #006ab7;
    border: 1px solid #006ab7;
    color: #fff;
  }
  .p-button-main:hover::after {
    background-color: #fff;
    color: #006ab7;
  }
}
.p-button-main--office-data {
  padding: 1rem 3rem 1rem 1.5rem;
  box-shadow: none;
}
@media print, screen and (max-width: 1199px) {
  .p-button-main--office-data {
    justify-content: left;
  }
}
.p-button-main--office-data::after {
  content: "→";
  display: flex;
  align-items: center;
  justify-content: center;
  position: absolute;
  right: 1rem;
  border-radius: 50%;
  height: 1.8rem;
  width: 1.8rem;
  font-size: 0.9rem;
  font-weight: 500;
  color: #fff;
  border: 1px solid transparent;
  background-color: #006ab7;
  transition-duration: 0.25s;
}

.p-button-sub {
  gap: 1.5rem;
  max-width: max-content;
  padding: 1rem 0;
  padding-right: 5.5rem;
}
.p-button-sub .p-button-sub__text {
  width: fit-content;
  font-weight: bold;
}
.p-button-sub::after {
  content: "→";
  display: flex;
  align-items: center;
  justify-content: center;
  position: absolute;
  right: 0;
  border-radius: 50%;
  height: 4rem;
  width: 4rem;
  font-size: 2rem;
  font-weight: 500;
  color: #fff;
  border: 1px solid transparent;
  background-color: #006ab7;
  transition-duration: 0.25s;
}
@media (hover: hover) and (pointer: fine) {
  .p-button-sub:hover .p-button-sub__text {
    color: #006ab7;
  }
  .p-button-sub:hover::after {
    background-color: #fff;
    border: 1px solid #006ab7;
    color: #006ab7;
  }
}

.p-button-inpage-link {
  column-gap: 1rem;
  border: 1px solid #006ab7;
  border-radius: 1rem;
  padding: 1rem 2rem;
  background-color: #006ab7;
  color: #fff;
  box-shadow: 0 3px 3px rgba(8, 57, 39, 0.15);
}
.p-button-inpage-link .p-button-sub__text {
  flex-grow: 1;
}
@media (hover: hover) and (pointer: fine) {
  .p-button-inpage-link:hover {
    background-color: #fff;
    color: #006ab7;
  }
  .p-button-inpage-link:hover > .c-arrow--down::after {
    color: #006ab7;
  }
}
.p-button-inpage-link--outline {
  border: 1px solid #083927;
  background-color: #fff;
  color: #333333;
}
@media (hover: hover) and (pointer: fine) {
  .p-button-inpage-link--outline:hover {
    background-color: #006ab7;
    color: #fff;
  }
  .p-button-inpage-link--outline:hover > .c-arrow--down-green::after {
    color: #fff;
  }
}
.p-button-inpage-link--eu-pl {
  border: 1px solid #589BCF;
  background-color: #EFF8FE;
  border-radius: 0;
  color: #333333;
  width: 100%;
  font-weight: bold;
  color: #589BCF;
}
.p-button-inpage-link--eu-pl > .c-arrow--down-pl::after {
  color: #589BCF;
}
@media (hover: hover) and (pointer: fine) {
  .p-button-inpage-link--eu-pl:hover {
    background-color: #589BCF;
    color: #fff;
  }
  .p-button-inpage-link--eu-pl:hover > .c-arrow--down-pl::after {
    color: #fff;
  }
}
.p-button-inpage-link--eu-cm {
  border: 1px solid #88D470;
  background-color: #F1FBED;
  border-radius: 0;
  color: #333333;
  width: 100%;
  font-weight: bold;
  color: #88D470;
}
.p-button-inpage-link--eu-cm > .c-arrow--down-cm::after {
  color: #88D470;
}
@media (hover: hover) and (pointer: fine) {
  .p-button-inpage-link--eu-cm:hover {
    background-color: #88D470;
    color: #fff;
  }
  .p-button-inpage-link--eu-cm:hover > .c-arrow--down-cm::after {
    color: #fff;
  }
}
.p-button-inpage-link--eu-fc {
  border: 1px solid #FF8997;
  background-color: #FFF5F6;
  border-radius: 0;
  color: #333333;
  width: 100%;
  font-weight: bold;
  color: #FF8997;
}
.p-button-inpage-link--eu-fc > .c-arrow--down-fc::after {
  color: #FF8997;
}
@media (hover: hover) and (pointer: fine) {
  .p-button-inpage-link--eu-fc:hover {
    background-color: #FF8997;
    color: #fff;
  }
  .p-button-inpage-link--eu-fc:hover > .c-arrow--down-fc::after {
    color: #fff;
  }
}
.p-button-inpage-link--eu-pri {
  border: 1px solid #F7A73F;
  background-color: #FFFDE2;
  border-radius: 0;
  color: #333333;
  width: 100%;
  font-weight: bold;
  color: #F7A73F;
}
.p-button-inpage-link--eu-pri > .c-arrow--down-pri::after {
  color: #F7A73F;
}
@media (hover: hover) and (pointer: fine) {
  .p-button-inpage-link--eu-pri:hover {
    background-color: #F7A73F;
    color: #fff;
  }
  .p-button-inpage-link--eu-pri:hover > .c-arrow--down-pri::after {
    color: #fff;
  }
}

.p-button-page-top {
  display: block;
  width: 100%;
  height: 6rem;
  border: 2px solid #006ab7;
  border-bottom: none;
  padding: 1.5rem 0;
}
@media print, screen and (min-width: 1200px) {
  .p-button-page-top {
    position: absolute;
    width: 6rem;
    border: 1px solid #006ab7;
    border-radius: 50%;
    background-color: #fff;
    top: -8rem;
    right: 2rem;
  }
}
@media print and (hover: hover) and (pointer: fine), screen and (min-width: 1200px) and (hover: hover) and (pointer: fine) {
  .p-button-page-top:hover {
    background-color: #006ab7;
    transition-duration: 0.25s, 0.25s;
  }
  .p-button-page-top:hover .p-button-page-top__item::after {
    border-top: 2px solid #fff;
    border-right: 2px solid #fff;
  }
}

.p-button-page-top__item {
  position: relative;
  display: inline-block;
  background-color: transparent;
  padding-right: 3.5rem;
  font-size: 2rem;
  font-weight: bold;
  font-family: "Roboto", sans-serif;
  color: #006ab7;
  top: -0.3rem;
}
.p-button-page-top__item::before {
  content: "";
  position: absolute;
  height: 2.5rem;
  width: 2.5rem;
  background-color: #006ab7;
  border: 1px solid #006ab7;
  border-radius: 50%;
  right: 0;
  top: 15%;
}
@media print, screen and (min-width: 1200px) {
  .p-button-page-top__item::before {
    display: none;
  }
}
.p-button-page-top__item::after {
  content: "";
  position: absolute;
  height: 6px;
  width: 6px;
  border-top: 1px solid #fff;
  border-right: 1px solid #fff;
  top: 53%;
  right: 0.7rem;
  transform: translate(-50%, -50%) rotate(-45deg);
}
@media print, screen and (min-width: 1200px) {
  .p-button-page-top__item::after {
    height: 16px;
    width: 16px;
    border-top: 2px solid #006ab7;
    border-right: 2px solid #006ab7;
    top: 0.75rem;
    right: 1.3rem;
  }
}
@media print, screen and (min-width: 1200px) {
  .p-button-page-top__item {
    display: block;
    color: transparent;
    font-size: 0;
  }
}

.p-button-entry {
  border-radius: 7.2rem;
  border: 2px solid #006ab7;
  background-color: #006ab7;
  padding: 1rem;
  width: 9rem;
  height: 4rem;
  box-shadow: 0 3px 3px rgba(8, 57, 39, 0.15);
}
@media (min-width: 1200px) {
  .p-button-entry {
    padding: 2rem 2rem;
    width: 20rem;
    height: auto;
  }
}
@media (hover: hover) and (pointer: fine) {
  .p-button-entry:hover {
    background-color: #fff;
  }
  .p-button-entry:hover > .p-button-entry__text {
    color: #006ab7;
  }
}

.p-button-entry__text {
  color: #fff;
  font-family: "Roboto", sans-serif;
  font-size: 1.5rem;
  font-weight: bold;
  letter-spacing: 0.1em;
  line-height: 1;
  text-align: center;
}
@media (min-width: 1200px) {
  .p-button-entry__text {
    font-size: 2.5rem;
  }
}

.p-button-index {
  display: grid;
  grid-template-columns: 1fr;
  border-radius: 1rem;
  box-shadow: 0 3px 3px rgba(8, 57, 39, 0.15);
}
@media print, screen and (min-width: 762px) {
  .p-button-index {
    grid-template-columns: 3fr 7fr;
    border-radius: 2rem;
  }
}
@media (hover: hover) and (pointer: fine) {
  .p-button-index:hover .p-button-index__img > img {
    transform: scale(1.3);
    transition-duration: 0.25s, 0.25s;
  }
}

.p-button-index__img {
  padding: 0;
  height: 100%;
  width: 100%;
  max-height: 45vw;
  border-radius: 1rem 1rem 0 0;
  overflow: hidden;
}
@media print, screen and (min-width: 762px) {
  .p-button-index__img {
    border-radius: 2rem 0 0 2rem;
  }
}
.p-button-index__img > img {
  border-radius: 1rem 1rem 0 0;
  height: 100%;
  width: 100%;
  object-fit: cover;
  transition-duration: 0.25s, 0.25s;
}
@media print, screen and (min-width: 762px) {
  .p-button-index__img > img {
    border-radius: 2rem 0 0 2rem;
  }
}

.p-button-index__item {
  display: grid;
  align-items: center;
  grid-template-columns: 1fr 4rem;
  padding: 2.5rem;
  gap: 1rem;
}
@media print, screen and (min-width: 762px) {
  .p-button-index__item {
    gap: 2rem;
    padding: 5rem 1rem 5rem 5rem;
    border-top-right-radius: 1rem;
    border-bottom-right-radius: 1rem;
  }
}
.p-button-index__item > .p-button-index__icon {
  justify-self: end;
}
@media print, screen and (min-width: 762px) {
  .p-button-index__item > .p-button-index__icon {
    align-self: center;
  }
}

.p-button-index__heading {
  font-size: clamp(1.8rem, 7vw, 2.4rem);
  font-weight: bold;
  line-height: 1.3;
}
@media print, screen and (min-width: 762px) {
  .p-button-index__heading {
    font-size: 2.8rem;
  }
}

.p-button-index__text {
  font-size: clamp(1.4rem, 5vw, 1.6rem);
}

.p-button-slider {
  position: absolute;
  top: 30%;
  border-radius: 50%;
  height: 6rem;
  width: 6rem;
  background-color: #006ab7;
  z-index: 2;
  transform: translateY(-50%);
}
@media print, screen and (min-width: 520px) {
  .p-button-slider--sp {
    display: none;
  }
}
@media print, screen and (min-width: 762px) {
  .p-button-slider {
    top: 27%;
    border-radius: 50%;
    height: 7.5rem;
    width: 7.5rem;
    transform: none;
  }
}
@media print, screen and (min-width: 1200px) {
  .p-button-slider {
    top: 11rem;
    height: 10rem;
    width: 10rem;
  }
  .p-button-slider--sp-tab {
    display: none;
  }
}
@media (hover: hover) and (pointer: fine) {
  .p-button-slider:hover {
    background-color: #fff;
  }
  .p-button-slider:hover::after {
    border-color: #006ab7;
  }
}
.p-button-slider::after {
  content: "";
  position: absolute;
  top: calc(50% - 0.5rem);
  display: block;
  border-left: 2px solid #fff;
  border-bottom: 2px solid #fff;
  height: 1rem;
  width: 1rem;
}
@media print, screen and (min-width: 762px) {
  .p-button-slider::after {
    top: calc(50% - 0.8rem);
    height: 1.5rem;
    width: 1.5rem;
  }
}
@media print, screen and (min-width: 1200px) {
  .p-button-slider::after {
    top: calc(50% - 1rem);
    height: 2rem;
    width: 2rem;
  }
}
.p-button-slider--top {
  top: 32%;
  height: 6rem;
  width: 6rem;
}
@media print, screen and (min-width: 762px) {
  .p-button-slider--top {
    top: 27%;
  }
}
@media print, screen and (min-width: 1200px) {
  .p-button-slider--top {
    top: 14rem;
    height: 10rem;
    width: 10rem;
  }
}
@media print, screen and (min-width: 1200px) {
  .p-button-slider--top::after {
    top: calc(50% - 1rem);
    height: 2rem;
    width: 2rem;
  }
}
@media print, screen and (min-width: 1200px) {
  .p-button-slider--introduction {
    height: 10rem;
    width: 10rem;
  }
}
.p-button-slider--forward {
  right: 1.5rem;
}
.p-button-slider--forward::after {
  right: calc(50% - 0.4rem);
  transform: rotate(-135deg);
}
@media print, screen and (min-width: 1200px) {
  .p-button-slider--forward {
    right: -1rem;
  }
  .p-button-slider--forward::after {
    right: calc(50% - 0.5rem);
  }
}
.p-button-slider--forward-top {
  right: 1.5rem;
}
@media print, screen and (min-width: 1200px) {
  .p-button-slider--forward-top {
    right: -1rem;
  }
  .p-button-slider--forward-top::after {
    right: calc(50% - 0.5rem);
  }
}
.p-button-slider--forward-introduction {
  top: 28%;
  right: 2.25rem;
}
@media print, screen and (min-width: 762px) {
  .p-button-slider--forward-introduction {
    top: 44%;
    right: 0;
  }
  .p-button-slider--forward-introduction::after {
    right: calc(50% - 0.5rem);
  }
}
@media print, screen and (min-width: 1200px) {
  .p-button-slider--forward-introduction {
    top: 10.5rem;
    right: -0.5rem;
  }
}
.p-button-slider--back {
  left: 1.5rem;
}
.p-button-slider--back::after {
  right: calc(50% - 0.8rem);
  transform: rotate(45deg);
}
@media print, screen and (min-width: 1200px) {
  .p-button-slider--back {
    left: -1rem;
  }
  .p-button-slider--back::after {
    right: calc(50% - 1.5rem);
  }
}
.p-button-slider--back-top {
  left: 1.5rem;
}
@media print, screen and (min-width: 1200px) {
  .p-button-slider--back-top {
    left: -1rem;
  }
  .p-button-slider--back-top::after {
    right: calc(50% - 1.5rem);
  }
}
.p-button-slider--back-introduction {
  top: 28%;
  left: 2.25rem;
}
@media print, screen and (min-width: 762px) {
  .p-button-slider--back-introduction {
    top: 44%;
    left: 0;
  }
  .p-button-slider--back-introduction::after {
    right: calc(50% - 1rem);
  }
}
@media print, screen and (min-width: 1200px) {
  .p-button-slider--back-introduction {
    top: 10.5rem;
    left: -0.5rem;
  }
}

@media print, screen and (min-width: 1200px) {
  .p-button-column-box--sp {
    display: none;
  }
}

.p-button-column-box__list {
  display: grid;
  gap: 2rem 1rem;
  grid-template-columns: repeat(auto-fit, minmax(12rem, 0.5fr));
}

/* icon */
.p-icon-arrow {
  position: relative;
}

.p-icon-bg {
  border-radius: 50%;
  height: 4.4rem;
  width: 4.4rem;
  background-color: #006ab7;
  transition-duration: 0.25s;
}
.p-icon-bg--on-image {
  height: 3rem;
  width: 3rem;
  background-color: #fff;
}
@media print, screen and (min-width: 762px) {
  .p-icon-bg--on-image {
    height: 4rem;
    width: 4rem;
  }
}

@media (hover: hover) and (pointer: fine) {
  .c-button:hover .p-icon-bg,
  .p-people-card:hover .p-icon-bg,
  .p-slider-item:hover .p-icon-bg {
    background-color: #fff;
  }
  .c-button:hover .c-arrow--diagonal-on-img::after,
  .p-people-card:hover .c-arrow--diagonal-on-img::after,
  .p-slider-item:hover .c-arrow--diagonal-on-img::after {
    color: #fff;
  }
}

.p-icon-inpage-link {
  border: 1px solid #707070;
  min-height: 4rem;
  min-width: 4rem;
  background-color: #ccd8d4;
}

.p-icon-page-top {
  position: relative;
  height: 1.6rem;
  width: 1.6rem;
}

.p-icon-balloon {
  position: relative;
  display: inline-block;
  height: fit-content;
  width: fit-content;
  padding: 0.5rem 1rem;
  background-color: #006ab7;
  color: #fff;
  line-height: 1.5;
}
.p-icon-balloon::after {
  content: "";
  position: absolute;
  top: 70%;
  left: 20%;
  border: 10px solid transparent;
  border-left: 10px solid #006ab7;
  transform: rotate(-45deg);
}

.p-icon-local-nav {
  position: relative;
}
.p-icon-local-nav::after {
  content: "";
  position: absolute;
  top: 70%;
  left: 20%;
  border: 10px solid transparent;
  border-left: 10px solid #006ab7;
  transform: rotate(-45deg);
}

/* table */
.p-table {
  border-collapse: separate;
  width: 100%;
  text-align: left;
  border-top: 1px solid #707070;
  border-left: 1px solid #707070;
  word-break: break-word;
}
.p-table--w1200 {
  width: 120rem;
}
.p-table--comparison {
  table-layout: fixed;
  min-width: 60rem;
}
.p-table--minw1000 {
  width: 100%;
  min-width: 100rem;
}
.p-table--sticky {
  border-right: 1px solid #707070;
  border-bottom: 1px solid #707070;
  border-left: none;
}
.p-table--requirement {
  table-layout: fixed;
  min-width: 57rem;
}
.p-table--requirement .p-table__item {
  text-align: center;
}
.p-table--requirement .p-table__item--sub-heading {
  text-align: left;
}
.p-table--requirement .p-table__item:first-child {
  width: 18%;
  min-width: 10rem;
}
.p-table--requirement .p-table__item:not(:first-child) {
  width: 40%;
}

.p-table__row--sticky + .p-table__row--sticky > .p-table__item {
  border-top: 1px solid #707070;
}

.p-table__item {
  border-right: 1px solid #707070;
  border-bottom: 1px solid #707070;
  padding: 1.5rem 1rem;
  background-color: #fff;
  background-clip: padding-box;
  vertical-align: middle;
}
@media print, screen and (min-width: 762px) {
  .p-table__item {
    font-size: 1.6rem;
    font-weight: 500;
  }
}
.p-table__item--main-heading {
  background-color: #006ab7;
  color: #fff;
}
.p-table__item--sub-heading {
  background-color: #e5f0f8;
}
.p-table__item--sub-heading02 {
  background: linear-gradient(transparent 0px, transparent 1px, #f8f8f8 1px, #f8f8f8 calc(100% - 1px), transparent calc(100% - 1px), transparent 100%);
}
.p-table__item--width10 {
  width: 10%;
}
.p-table__item--width15 {
  width: 15%;
}
.p-table__item--width20 {
  width: 20%;
}
.p-table__item--width25 {
  width: 25%;
}
.p-table__item--width30 {
  width: 30%;
}
.p-table__item--width35 {
  width: 35%;
}
.p-table__item--width40 {
  width: 40%;
}
.p-table__item--width45 {
  width: 45%;
}
.p-table__item--width50 {
  width: 50%;
}
.p-table__item--accent {
  background-color: #e5f0f8;
  color: #003890;
  font-weight: bold;
}
.p-table__item--sticky-heading {
  position: sticky;
  top: 0;
  left: 0;
  border-right: 1px solid #707070;
  border-bottom: none;
  border-left: 1px solid #707070;
}
.p-table__item--sticky-heading + .p-table__item--sticky {
  border-left: none;
}
.p-table__item--sticky {
  border: none;
}
.p-table__item--sticky + .p-table__item--sticky {
  border-left: 1px solid #707070;
}
.p-table__item--requirement {
  padding: 1rem;
}
@media print, screen and (min-width: 762px) {
  .p-table__item--requirement {
    padding: 1.5rem;
  }
}
.p-table__item--about-heading {
  line-height: 1.1;
}
@media print, screen and (min-width: 762px) {
  .p-table__item--about-heading {
    line-height: 1.8;
  }
}

.p-table--col-3 .p-table__item {
  text-align: center;
}
.p-table--col-3 .p-table__item--sub-heading {
  text-align: left;
}
.p-table--col-3 .p-table__item:first-child {
  width: 20%;
  min-width: 11rem;
}
.p-table--col-3 .p-table__item:not(:first-child) {
  width: 40%;
}

.p-table--col-4 .p-table__item {
  text-align: center;
  border-color: #707070;
}
.p-table--col-4 .p-table__item--sub-heading02 {
  text-align: left;
}
.p-table--col-4 .p-table__item:first-child {
  width: 13rem;
  min-width: 13rem;
  max-width: 13rem;
  z-index: 2;
}
.p-table--col-4 .p-table__item:not(:first-child) {
  width: 29%;
}

/* responsive-table */
.p-responsive-table {
  display: flex;
  flex-direction: column;
  border: 1px solid #707070;
  border-collapse: collapse;
  text-align: left;
}
@media print, screen and (min-width: 762px) {
  .p-responsive-table {
    flex-direction: row;
    flex-wrap: wrap;
    width: 100%;
  }
}

.p-responsive-table__title {
  width: 100%;
  padding: 1.5rem;
  background-color: #006ab7;
  color: #fff;
  vertical-align: top;
}
.p-responsive-table__title--secondary {
  background-color: #e5f0f8;
  color: #333333;
}
.p-responsive-table__title--step {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  text-align: center;
}
@media print, screen and (min-width: 762px) {
  .p-responsive-table__title {
    width: 30%;
  }
  .p-responsive-table__title--width10 {
    width: 10%;
  }
  .p-responsive-table__title--width15 {
    width: 15%;
  }
  .p-responsive-table__title--width20 {
    width: 20%;
  }
  .p-responsive-table__title--width25 {
    width: 25%;
  }
  .p-responsive-table__title--width30 {
    width: 30%;
  }
  .p-responsive-table__title--width35 {
    width: 35%;
  }
  .p-responsive-table__title--width40 {
    width: 40%;
  }
  .p-responsive-table__title--width45 {
    width: 45%;
  }
  .p-responsive-table__title--width50 {
    width: 50%;
  }
}

.p-responsive-table__title + .p-responsive-table__content {
  border-top: 1px solid #707070;
}
@media print, screen and (min-width: 762px) {
  .p-responsive-table__title + .p-responsive-table__content {
    border-left: 1px solid #707070;
  }
}

.p-responsive-table__content + .p-responsive-table__title {
  border-top: 1px solid #707070;
}

.p-responsive-table__content {
  border-top: 1px solid #707070;
  padding: 1.5rem;
  width: 100%;
  vertical-align: top;
}
.p-responsive-table__content--center {
  text-align: center;
}
.p-responsive-table__content > * + * {
  margin-top: 1rem;
}
@media print, screen and (min-width: 762px) {
  .p-responsive-table__content {
    flex-grow: 1;
    width: 70%;
  }
  .p-responsive-table__content:first-of-type {
    border-top: none;
  }
  .p-responsive-table__content--width90 {
    width: 90%;
  }
  .p-responsive-table__content--width80 {
    width: 80%;
  }
  .p-responsive-table__content--width60 {
    width: 60%;
  }
  .p-responsive-table__content--width50 {
    width: 50%;
  }
}

/* office-data-table */
.p-office-data-table-wrapper {
  position: relative;
  margin-right: -2rem;
  padding-right: 2rem;
  overflow-x: auto;
}
.p-office-data-table-wrapper::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 1px;
  border-bottom: 1px solid #888;
}
@media print, screen and (min-width: 762px) {
  .p-office-data-table-wrapper {
    margin-right: 0;
    padding-right: 0;
  }
}

.p-office-data-table {
  min-width: 120rem;
  border-bottom: 1px solid #888;
  border-collapse: separate;
  table-layout: fixed;
}

.p-office-data-table__col {
  width: 14rem;
}
.p-office-data-table__col:first-child {
  width: 9rem;
  min-width: 9rem;
}

.p-office-data-table__blank {
  position: sticky;
  left: 0;
  width: 9rem;
  background-color: #fff;
  touch-action: pan-y;
}
.p-office-data-table__blank--border {
  border-right: 1px solid #888;
}

.p-office-data-table__thead-row--number .p-office-data-table__column-thead:last-child {
  border-right: 1px solid #888;
}

.p-office-data-table__industry-theader {
  padding-block: 1rem;
  border: 0.25rem solid #fff;
  border-bottom-width: 0.5rem;
  border-top: 0;
  background-color: #006ab7;
  color: #fff;
  font-weight: bold;
}

.p-office-data-table__column-thead {
  padding-block: 1.8rem;
  background-color: #fff;
  font-size: 1.4rem;
  font-weight: bold;
}
.p-office-data-table__column-thead + .p-office-data-table__column-thead {
  background-image: linear-gradient(to bottom, #888 2px, #888 2px);
  background-size: 1px 6px;
  background-repeat: repeat-y;
  background-position: left top;
}
.p-office-data-table__column-thead > span {
  color: #003890;
  font-weight: normal;
}

.p-office-data-table__row-theader {
  position: sticky;
  left: 0;
  width: 9rem;
  padding-block: 1.5rem;
  border: 1px solid #888;
  border-bottom: none;
  background-color: #fff;
  font-weight: bold;
}

.p-office-data-table__data {
  padding: 1.5rem;
  padding-right: 1rem;
  border-top: 1px solid #888;
  font-weight: bold;
  text-align: right;
}
.p-office-data-table__data + .p-office-data-table__data {
  background-image: linear-gradient(to bottom, #888 2px, #888 2px);
  background-size: 1px 6px;
  background-repeat: repeat-y;
  background-position: left top;
}
.p-office-data-table__data > span {
  color: #003890;
  font-size: 1.4rem;
  font-weight: normal;
}

.p-office-data-table__tbody-row:nth-child(odd) {
  background-color: #f0f9ff;
}
.p-office-data-table__tbody-row:nth-child(odd) .p-office-data-table__row-theader {
  background-color: #f0f9ff;
}
.p-office-data-table__tbody-row .p-office-data-table__data:last-child {
  border-right: 1px solid #888;
}

/* color-box */
.p-color-box {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
  padding: 1.5rem;
  border: 1px solid #888;
  background-color: #e5f0f8;
}
@media print, screen and (min-width: 762px) {
  .p-color-box {
    padding: 2.5rem;
  }
}
.p-color-box--outline {
  border: 1px solid #006ab7;
  background-color: #fff;
  padding: 1.5rem;
}
@media print, screen and (min-width: 762px) {
  .p-color-box--outline {
    padding: 2.5rem;
  }
}
.p-color-box--info {
  background-color: #feffe1;
}
.p-color-box--full {
  padding: 5rem 2rem;
  margin-inline: -2rem;
}
@media screen and (max-width: 761px) {
  .p-color-box--full {
    border: none;
  }
}
@media print, screen and (min-width: 762px) {
  .p-color-box--full {
    padding: 5rem;
    margin-inline: 0;
  }
}

.p-entry-box {
  padding: 3rem 2rem;
  border: 1px solid #888;
  background-color: #EFF8FE;
}
@media print, screen and (min-width: 762px) {
  .p-entry-box {
    padding: 3rem;
  }
}

/* list */
.p-ul-list {
  display: flex;
  flex-wrap: wrap;
  margin-left: -0.2rem;
}
.p-ul-list--lv3 {
  row-gap: 1.5rem;
}
.p-ul-list--lv4 {
  row-gap: 2rem;
}

.p-ul-list__item {
  flex-basis: 100%;
  position: relative;
  padding-left: 1.25em;
}
.p-ul-list__item::before {
  content: "";
  left: 0.3em;
  position: absolute;
  top: 0.75em;
  border-radius: 50%;
  display: block;
  height: 0.3em;
  width: 0.3em;
  background-color: #333333;
}
.p-ul-list__item--no-style {
  text-indent: -1em;
}
.p-ul-list__item--no-style::before {
  display: none;
}
.p-ul-list__item--check {
  position: relative;
  width: 100%;
  padding-left: 3.2rem;
}
.p-ul-list__item--check::before {
  content: "";
  display: block;
  position: absolute;
  left: 0;
  top: 0.5rem;
  width: 2.3rem;
  height: 2.1rem;
  border-radius: 0;
  background-image: url(../../assets/img/cmn/cmn_icon_checkbox.svg);
  background-size: contain;
  background-repeat: no-repeat;
  background-color: transparent;
}
@media print, screen and (min-width: 1200px) {
  .p-ul-list__item--check::before {
    top: 0.75rem;
  }
}
.p-ul-list__item--check + .p-ul-list__item--check {
  margin-top: 2rem;
}
.p-ul-list__item--check02 {
  position: relative;
  width: 100%;
  padding-left: 3.2rem;
}
.p-ul-list__item--check02::before {
  content: "";
  display: block;
  position: absolute;
  left: 0;
  top: 0.5rem;
  width: 2.3rem;
  height: 2.1rem;
  border-radius: 0;
  background-image: url(../../assets/img/company/permanent-dispatch_icon_checkbox.svg);
  background-size: contain;
  background-repeat: no-repeat;
  background-color: transparent;
}
@media print, screen and (min-width: 1200px) {
  .p-ul-list__item--check02::before {
    top: 0.75rem;
  }
}
.p-ul-list__item--check02 + .p-ul-list__item--check02 {
  margin-top: 1rem;
}
.p-ul-list__item--yuki-check {
  position: relative;
  width: 100%;
  padding-left: 3.2rem;
  font-weight: bold;
  color: #589BCF;
}
.p-ul-list__item--yuki-check::before {
  content: "";
  display: block;
  position: absolute;
  left: 0;
  top: 0.5rem;
  width: 2.3rem;
  height: 2.1rem;
  border-radius: 0;
  background-image: url(../../assets/img/cmn/cmn_icon_checkbox.svg);
  background-size: contain;
  background-repeat: no-repeat;
  background-color: transparent;
}
@media print, screen and (min-width: 1200px) {
  .p-ul-list__item--yuki-check::before {
    top: 0.75rem;
  }
}
.p-ul-list__item--yuki-check + .p-ul-list__item--yuki-check {
  margin-top: 1rem;
}
.p-ul-list__item--spaceing + .p-ul-list__item--spaceing {
  margin-top: 1rem;
}

.p-ol-list {
  counter-reset: ol-number;
  list-style-type: none;
  padding-left: 0;
}

.p-ol-list__item {
  position: relative;
  padding-left: 2.3rem;
}
.p-ol-list__item::before {
  counter-increment: ol-number;
  content: counter(ol-number) ".";
  position: absolute;
  top: 0;
  left: 0;
  height: 1.7rem;
  width: 1.7rem;
}

.p-inpage-link-button-list {
  display: flex;
  flex-wrap: wrap;
  gap: 1rem;
}
@media print, screen and (min-width: 762px) {
  .p-inpage-link-button-list--center-pc {
    justify-content: center;
  }
}
.p-inpage-link-button-list--introduction {
  margin-top: 2rem;
}

.p-definition-list:not(:last-child) {
  padding-bottom: 2.5rem;
}
.p-definition-list + .p-definition-list {
  border-top: 1px solid #ccd8d4;
  padding-top: 2.5rem;
}

.p-link-list__item {
  display: inline;
}
.p-link-list__item:not(:last-child):after {
  content: "｜";
  color: #888;
  padding: 0 0.8rem;
}

.p-definition-list:not(:last-child) {
  padding-bottom: 2.5rem;
}
.p-definition-list + .p-definition-list {
  border-top: 1px solid #ccd8d4;
  padding-top: 2.5rem;
}

.p-career-list {
  list-style: none;
}

.p-career-list-header {
  margin-bottom: 1rem;
  font-weight: bold;
}
.p-career-list-header--tab1 {
  color: #FFB554;
}
.p-career-list-header--tab2 {
  color: #589BCF;
}
.p-career-list-header--tab3 {
  color: #88D470;
}
@media print, screen and (min-width: 762px) {
  .p-career-list-header {
    font-size: 1.8rem;
    margin-bottom: 2rem;
  }
}
.p-career-list-header--sp-center {
  text-align: center;
}
@media print, screen and (min-width: 762px) {
  .p-career-list-header--sp-center {
    text-align: left;
  }
}

.p-career-list__item {
  position: relative;
  padding-left: 3rem;
  padding-bottom: 3rem;
}
@media print, screen and (min-width: 762px) {
  .p-career-list__item {
    padding-bottom: 5rem;
  }
}
.p-career-list__item:last-child {
  padding-bottom: 0;
}
.p-career-list__item > * + * {
  margin-top: 1rem;
}
.p-career-list__item::before {
  content: "";
  position: absolute;
  top: 0.4rem;
  left: 0;
  display: block;
  height: 2rem;
  width: 2rem;
  border-radius: 50%;
  z-index: 2;
}
.p-career-list__item::after {
  content: "";
  position: absolute;
  top: 1.4rem;
  left: 0.75rem;
  display: block;
  height: 100%;
  width: 0.5rem;
  z-index: 1;
}
.p-career-list__item--tab2::before {
  background-image: radial-gradient(#fff 0% 3px, #589bcf 3px 100%);
}
.p-career-list__item--tab2::after {
  background-color: #abcde7;
}
.p-career-list__item--tab1::before {
  background-image: radial-gradient(#fff 0% 3px, #ffb554 3px 100%);
}
.p-career-list__item--tab1::after {
  background-color: #ffdaa9;
}
.p-career-list__item--tab3::before {
  background-image: radial-gradient(#fff 0% 3px, #88d470 3px 100%);
}
.p-career-list__item--tab3::after {
  background-color: #c3e9b7;
}
.p-career-list__item:last-child::after {
  display: none;
}

.p-career-list__title {
  font-weight: bold;
}

.p-working-point-list-item + .p-working-point-list-item {
  padding-top: 5rem;
}

.p-working-point-list-item__heading-box {
  display: flex;
}

.p-working-point-list-item__point-icon {
  flex-shrink: 0;
  height: 5rem;
  width: 5rem;
  padding-top: 0.75rem;
  border-top: 1px solid #1a1311;
  border-left: 1px solid #1a1311;
  font-weight: bold;
  line-height: 1;
  text-align: center;
}
@media print, screen and (min-width: 1200px) {
  .p-working-point-list-item__point-icon {
    height: 10rem;
    width: 10rem;
    padding-top: 1.5rem;
  }
}

.p-working-point-list-item__heading {
  padding-top: 2rem;
  font-size: 1.8rem;
  font-weight: bold;
}
@media print, screen and (min-width: 1200px) {
  .p-working-point-list-item__heading {
    padding-top: 5rem;
    font-size: 2.4rem;
    letter-spacing: 0.1em;
  }
}

.p-working-point-list-item__catch {
  color: #003890;
}

.p-working-point-list-item__point-icon-text {
  font-size: 0.7rem;
}
@media print, screen and (min-width: 1200px) {
  .p-working-point-list-item__point-icon-text {
    font-size: 1.6rem;
  }
}

.p-working-point-list-item__point-icon-number {
  padding-top: 0.5rem;
  font-size: 2.1rem;
}
@media print, screen and (min-width: 1200px) {
  .p-working-point-list-item__point-icon-number {
    padding-top: 1.5rem;
    font-size: 4.4rem;
  }
}

.p-working-point-list-item__content-box {
  padding-top: 3rem;
}
@media print, screen and (min-width: 1200px) {
  .p-working-point-list-item__content-box {
    padding-top: 4rem;
    padding-left: 10rem;
  }
}
.p-working-point-list-item__content-box > * + * {
  margin-top: 2rem;
}
@media print, screen and (min-width: 1200px) {
  .p-working-point-list-item__content-box > * + * {
    margin-top: 4rem;
  }
}

/* accordion */
.p-accordion {
  border-bottom: 1px solid #083927;
  cursor: pointer;
}
.p-accordion:first-of-type {
  border-top: 1px solid #083927;
}

.p-accordion__header {
  position: relative;
  display: flex;
  align-items: center;
  column-gap: 2rem;
  padding: 1.5rem 3.6rem 1.5rem 0;
  font-weight: bold;
}
@media print, screen and (min-width: 762px) {
  .p-accordion__header {
    padding: 2.5rem 3.6rem 2.5rem 0;
  }
}
.p-accordion__header::-webkit-details-marker, .p-accordion__header::marker {
  display: none;
}

.p-accordion__content {
  display: flex;
  column-gap: 2rem;
  cursor: context-menu;
  overflow: hidden;
}

.p-accordion__content-inner {
  display: flex;
  flex-direction: column;
  row-gap: 2rem;
  padding: 0 3.6rem 1.5rem 0;
}
@media print, screen and (min-width: 762px) {
  .p-accordion__content-inner {
    padding: 0 3.6rem 2.5rem 0;
  }
}

.p-accordion__mark {
  font-weight: bold;
  color: #006ab7;
}
.p-accordion__mark--answer {
  color: #b70000;
}

.p-accordion__icon {
  position: absolute;
  right: 0;
}
.p-accordion__icon::before, .p-accordion__icon::after {
  content: "";
  position: absolute;
  top: 50%;
  right: 0;
  border-radius: 1px;
  height: 0.2rem;
  width: 1.4rem;
  background-color: #006ab7;
  transition: transform 0.1s;
}
.p-accordion__icon::after {
  transform: rotate(90deg);
}

details[open] .p-accordion__icon::after {
  transform: rotate(0);
  transition: transform 0.1s;
}

/*「続きを読む」開閉タブ*/
.p-accordion-area {
  position: relative;
}

.p-accordion-area__label {
  position: relative;
  display: block;
  z-index: 3;
  width: 100%;
  height: 10rem; /* グラデーションの高さ */
  margin-top: -10rem;
  cursor: pointer;
  text-align: center;
  /* 以下グラデーションは背景を自身のサイトに合わせて設定してください */
  background: linear-gradient(to bottom, rgba(255, 255, 255, 0) 0%, rgb(255, 255, 255) 60%);
}
.p-accordion-area__label--ideal {
  height: 16rem;
}
.p-accordion-area__label:after {
  content: " 続きを読む";
  position: absolute;
  z-index: 2;
  bottom: 1rem;
  left: 50%;
  width: 16rem;
  font-weight: bold;
  line-height: 2.5rem;
  transform: translate(-50%, 0);
}
.p-accordion-area__label:before {
  content: "";
  position: absolute;
  z-index: 2;
  bottom: 0;
  left: 50%;
  width: 1rem;
  height: 1rem;
  border-right: 1px solid #006ab7;
  border-bottom: 1px solid #006ab7;
  transform: translate(-50%, 0) rotate(45deg);
}

.p-accordion-area__input {
  display: none;
}

.p-accordion-area:has(.p-accordion-area__input:checked) .p-accordion-area__label {
  background: inherit;
}
.p-accordion-area:has(.p-accordion-area__input:checked) .p-accordion-area__label:after {
  content: " 閉じる";
  bottom: 0;
}
.p-accordion-area:has(.p-accordion-area__input:checked) .p-accordion-area__label:before {
  bottom: 2.5rem;
  transform: translate(-50%, 0) rotate(-135deg);
}
.p-accordion-area:has(.p-accordion-area__input:checked) .p-accordion-area__container {
  height: auto;
  padding-bottom: 9rem;
  overflow: visible;
}
.p-accordion-area:has(.p-accordion-area__input:checked) .p-accordion-area__container--ideal {
  padding-bottom: 2rem;
}

.p-accordion-area__container {
  overflow: hidden;
  height: 50rem;
}
@media print, screen and (min-width: 1200px) {
  .p-accordion-area__container {
    height: 39rem;
  }
}
.p-accordion-area__container--ideal {
  height: 35rem;
}
@media print, screen and (min-width: 1200px) {
  .p-accordion-area__container--ideal {
    height: 15rem;
  }
}

.p-accordion-area__container-inner + .p-accordion-area__container-inner {
  margin-top: 2.5rem;
}
@media print, screen and (min-width: 1200px) {
  .p-accordion-area__container-inner + .p-accordion-area__container-inner {
    margin-top: 7.5rem;
  }
}

/* card */
.p-card {
  padding: 2.5rem;
  background-color: #fff;
}
@media print, screen and (min-width: 762px) {
  .p-card {
    padding: 5rem;
  }
}
@media print, screen and (min-width: 762px) {
  .p-card--large {
    padding: 10rem;
  }
}

.p-round-card {
  padding: 2rem;
  border: 1px solid #888;
  border-radius: 0;
  background-color: #fff;
}
@media print, screen and (min-width: 762px) {
  .p-round-card {
    padding: 2.5rem;
    border-radius: 0;
  }
}
.p-round-card--middle {
  padding: 5rem;
}
@media print, screen and (min-width: 762px) {
  .p-round-card--large {
    padding: 5rem;
  }
}
@media print, screen and (min-width: 762px) {
  .p-round-card--about {
    padding: 4rem;
  }
}
.p-round-card--merit {
  flex-grow: 1;
  padding: 2.5rem 2.5rem 0;
}
@media print, screen and (min-width: 762px) {
  .p-round-card--merit {
    padding: 5rem 5rem 0;
  }
}
.p-round-card--small-about {
  padding: 3rem 3rem 6rem;
  gap: max(1rem, 3.3vw);
}
@media screen and (max-width: 761px) {
  .p-round-card--small-about {
    padding: 1.5rem 1.5rem 2.8rem;
    gap: max(1rem, 3.3vw);
  }
}
@media print, screen and (min-width: 762px) {
  .p-round-card--small-about {
    padding: 4rem 1rem;
    gap: 1.5rem;
  }
}

.p-grid-card-container {
  gap: 2.5rem;
}
.p-grid-card-container--merit {
  row-gap: 0.3rem;
}
@media print, screen and (min-width: 762px) {
  .p-grid-card-container--merit {
    gap: 1.6rem 2.5rem;
    margin-top: 1.5rem;
  }
}
.p-grid-card-container--demerit {
  grid-template-columns: 1fr;
  row-gap: 1.5rem;
}
@media print, screen and (min-width: 762px) {
  .p-grid-card-container--demerit {
    grid-template-columns: repeat(2, auto);
    gap: 2.5rem;
  }
}
@media (min-width: 1300px) {
  .p-grid-card-container--demerit {
    grid-template-columns: repeat(3, auto);
  }
}
@media print, screen and (min-width: 762px) {
  .p-grid-card-container--large {
    gap: 5rem;
  }
}

/*ページ内タブ*/
.p-card__tab__box {
  margin-left: -5rem;
  margin-right: -5rem;
  border-bottom: 1px solid #006ab7;
  margin-bottom: 3rem;
}
@media print, screen and (min-width: 1200px) {
  .p-card__tab__box {
    margin-left: calc((120rem - 100vw) / 2);
    margin-right: calc((120rem - 100vw) / 2);
    margin-bottom: 5rem;
  }
}
.p-card__tab__box--faq {
  border-bottom: none;
  margin-bottom: 0;
}

.p-card__tab-inner {
  width: calc(100vw - 10rem);
  margin: 0 auto;
}
@media print, screen and (min-width: 1200px) {
  .p-card__tab-inner {
    max-width: 120rem;
  }
}
.p-card__tab-inner--grad {
  width: calc(100vw - 3rem);
}
@media print, screen and (min-width: 762px) {
  .p-card__tab-inner--grad {
    width: calc(100vw - 10rem);
  }
}
.p-card__tab-inner--faq {
  width: calc(100vw - 6rem);
}
@media print, screen and (min-width: 762px) {
  .p-card__tab-inner--faq {
    width: calc(100vw - 12rem);
  }
}
@media print, screen and (min-width: 1200px) {
  .p-card__tab-inner--faq {
    width: calc(100vw - 10rem);
  }
}

.p-card__tab-menu {
  display: flex;
  list-style: none;
  gap: 1rem;
}
@media print, screen and (min-width: 1200px) {
  .p-card__tab-menu {
    gap: 2rem;
  }
}

.p-tab-menu-item {
  align-items: center;
  display: flex;
  flex-grow: 1;
  justify-content: center;
  padding: 1rem 0;
  width: 100%;
  height: 55px;
  max-width: 29rem;
  border: 1px solid #888;
  border-bottom: 0;
  border-radius: 4px 4px 0 0;
  background: #f4f4f4;
  font-size: 1.6rem;
  text-align: center;
  cursor: pointer;
}
@media print, screen and (min-width: 762px) {
  .p-tab-menu-item {
    height: 73px;
  }
}
.p-tab-menu-item--faq {
  max-width: 15rem;
}
@media print, screen and (min-width: 762px) {
  .p-tab-menu-item--faq {
    max-width: 29rem;
  }
}
.p-tab-menu-item.is-active, .p-tab-menu-item--active {
  position: relative;
  background: #fff;
  color: #006ab7;
  font-weight: bold;
  border-color: #006ab7;
  border-bottom: none;
  cursor: inherit;
}
.p-tab-menu-item.is-active::before, .p-tab-menu-item--active::before {
  content: "";
  display: block;
  position: absolute;
  top: -1px;
  left: 0;
  height: 4px;
  width: 100%;
  background: #006ab7;
  border-radius: 4px 4px 0 0;
}
.p-tab-menu-item.is-active::after, .p-tab-menu-item--active::after {
  content: "";
  display: block;
  position: absolute;
  bottom: -3px;
  left: 0;
  height: 5px;
  width: 100%;
  background: #fff;
}

.p-tab-menu-item--link {
  padding: 0;
}

.p-tab-menu-item__link {
  display: block;
  padding: 1rem 0.5rem;
  width: 100%;
  letter-spacing: -0.05rem;
}
@media print, screen and (min-width: 762px) {
  .p-tab-menu-item__link {
    letter-spacing: 0;
  }
}

/* local */
.p-local-page-top {
  display: grid;
  gap: 2rem 0;
  grid-template-columns: minmax(0, 1fr);
  padding: 0 2rem;
}
@media print, screen and (min-width: 762px) {
  .p-local-page-top {
    grid-template-rows: repeat(3, auto);
    gap: 3rem 0;
  }
}
@media print, screen and (min-width: 1200px) {
  .p-local-page-top {
    padding: 0 8.25vw;
    gap: 0 5rem;
  }
}
.p-local-page-top .p-local-breadcrumb {
  grid-area: 3/1/4/2;
}
@media print, screen and (min-width: 762px) {
  .p-local-page-top .p-local-breadcrumb {
    grid-area: 2/1/3/2;
    padding-left: 0;
    padding-top: 2rem;
    padding-bottom: 3rem;
  }
}
@media print, screen and (min-width: 1200px) {
  .p-local-page-top .p-local-breadcrumb {
    grid-area: 3/1/4/2;
    padding-top: 9rem;
    padding-bottom: 0;
  }
}
.p-local-page-top--no-visual {
  align-items: center;
  padding: 0;
}
.p-local-page-top--no-visual .p-local-heading {
  grid-area: 2/1/3/3;
  gap: 1.5rem;
}
@media print, screen and (min-width: 1200px) {
  .p-local-page-top--no-visual .p-local-heading {
    grid-area: 1/1/2/2;
    gap: 3rem;
  }
}
.p-local-page-top--no-visual .p-local-breadcrumb {
  grid-area: 1/1/2/3;
}
@media print, screen and (min-width: 762px) {
  .p-local-page-top--no-visual .p-local-breadcrumb {
    padding-top: 0;
  }
}
@media print, screen and (min-width: 1200px) {
  .p-local-page-top--no-visual .p-local-breadcrumb {
    grid-area: 1/2/2/3;
  }
}
@media print, screen and (min-width: 1200px) {
  .p-local-page-top--no-visual {
    grid-template-rows: repeat(2, auto);
  }
}

.p-local-breadcrumb--ideal {
  padding-top: 2rem;
  padding-bottom: 2rem;
}
@media print, screen and (min-width: 1200px) {
  .p-local-breadcrumb--ideal {
    padding-top: 4rem;
  }
}

.p-local-heading {
  display: grid;
  gap: 2rem;
  grid-area: 1/1/2/3;
}
@media print, screen and (min-width: 762px) {
  .p-local-heading {
    padding-left: 0;
    gap: 3rem;
    grid-area: 1/1/2/3;
  }
}
@media print, screen and (min-width: 1200px) {
  .p-local-heading {
    grid-area: 2/1/3/2;
  }
}

.p-local-main-visual {
  grid-area: 2/1/3/2;
  height: 100%;
  width: calc(100% + 4rem);
  aspect-ratio: 25/12;
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  margin: 0 -2rem;
}
@media print, screen and (min-width: 762px) {
  .p-local-main-visual {
    grid-area: 3/1/4/2;
    width: 100%;
    margin: 0 0 0 25vw;
    max-width: 75vw;
    aspect-ratio: 60/31;
    border-bottom-left-radius: 0;
  }
}
@media print, screen and (min-width: 1200px) {
  .p-local-main-visual {
    grid-area: 1/2/5/3;
    margin: 0 -8.25vw 0 0;
    width: 56.25vw;
  }
}
.p-local-main-visual--mock {
  background-image: url(../../assets/img/company/permanent-dispatch_main.webp);
}
.p-local-main-visual--about {
  background-image: url(../../assets/img/company/about_main.webp);
}
.p-local-main-visual--data {
  background-image: url(../../assets/img/company/data_main.webp);
}
.p-local-main-visual--company-working {
  background-image: url(../../assets/img/company/working_main.webp);
}
.p-local-main-visual--location {
  background-image: url(../../assets/img/work/location_main.webp);
}
.p-local-main-visual--introduction {
  background-image: url(../../assets/img/work/introduction_main.jpg);
}
.p-local-main-visual--fields {
  background-image: url(../../assets/img/work/fields_main.webp);
}
.p-local-main-visual--career {
  background-image: url(../../assets/img/environment/career_main.webp);
}
.p-local-main-visual--education {
  background-image: url(../../assets/img/environment/education_main.webp);
}
.p-local-main-visual--benefit {
  background-image: url(../../assets/img/environment/benefit_main.jpg);
}
.p-local-main-visual--type {
  background-image: url(../../assets/img/info/type_main.webp);
}
.p-local-main-visual--requirement {
  background-image: url(../../assets/img/info/requirement_main.webp);
}
.p-local-main-visual--requirement-career {
  background-image: url(../../assets/img/info/requirement-career_main.webp);
}
.p-local-main-visual--requirement-return {
  background-image: url(../../assets/img/info/requirement-return_main.webp);
}
.p-local-main-visual--organic {
  background-image: url(../../assets/img/info/organic_main.webp);
}
.p-local-main-visual--entry {
  background-image: url(../../assets/img/info/entry_main.webp);
}
.p-local-main-visual--faq {
  background-image: url(../../assets/img/info/faq_main.webp);
}

.p-local-intro {
  padding-top: 2.5rem;
  padding-bottom: 7rem;
}
@media print, screen and (min-width: 762px) {
  .p-local-intro {
    max-width: 125rem;
    padding-block: 5rem;
    margin-right: auto;
    margin-left: auto;
    text-align: center;
  }
}
.p-local-intro--margin-cmn {
  padding-bottom: 5rem;
}
.p-local-intro--large {
  padding-bottom: 5rem;
}
@media print, screen and (min-width: 762px) {
  .p-local-intro--large {
    padding-bottom: 10rem;
  }
}
.p-local-intro--middle {
  padding-bottom: 7rem;
}
@media print, screen and (min-width: 1200px) {
  .p-local-intro--middle {
    padding-bottom: 10rem;
  }
}
@media print, screen and (min-width: 762px) {
  .p-local-intro--no-text {
    padding-bottom: 5rem;
  }
}
.p-local-intro--no-text::before {
  margin-bottom: 0;
}
@media print, screen and (min-width: 762px) {
  .p-local-intro--no-text-large {
    padding-bottom: 10rem;
  }
}
.p-local-intro--no-text-large::before {
  margin-bottom: 0;
}

.p-index-page {
  margin-top: 2.5rem;
}
@media print, screen and (min-width: 762px) {
  .p-index-page {
    margin-top: 5rem;
  }
}
.p-index-page > * + * {
  margin-top: 2.5rem;
}
@media print, screen and (min-width: 762px) {
  .p-index-page > * + * {
    margin-top: 5rem;
  }
}

/* local-nav */
.p-local-nav {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 3rem;
}
@media print, screen and (min-width: 762px) {
  .p-local-nav {
    gap: 5rem;
  }
}
.p-local-nav--area {
  display: block;
  padding-block: 5rem;
  background-color: #d5e9f6;
}
@media print, screen and (min-width: 1200px) {
  .p-local-nav--area {
    padding-block: 7rem;
  }
}

.p-local-nav-container {
  width: 100%;
  max-width: 120rem;
  margin: 0 auto;
}
.p-local-nav-container--columns-2 {
  max-width: 100rem;
}
.p-local-nav-container--columns-1 {
  max-width: 36.6rem;
}
.p-local-nav-container--top {
  max-width: none;
}

.p-local-nav-list {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(25rem, 1fr));
  gap: 3rem;
}
.p-local-nav-list--index {
  grid-template-columns: 1fr;
}
@media print, screen and (min-width: 762px) {
  .p-local-nav-list--index {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media print, screen and (min-width: 1200px) {
  .p-local-nav-list--index {
    grid-template-columns: 1fr;
  }
}
.p-local-nav-list--info-index {
  grid-template-columns: 1fr;
}
@media (min-width: 900px) {
  .p-local-nav-list--info-index {
    display: grid;
    gap: 4rem 5rem;
    grid-template-columns: repeat(2, 1fr);
    grid-template-rows: auto auto;
  }
}
@media print, screen and (min-width: 762px) {
  .p-local-nav-list--top {
    grid-template-columns: repeat(auto-fit, minmax(50rem, 1fr));
    gap: 5rem;
  }
}

.p-local-nav-list__item {
  display: flex;
  container-type: inline-size;
}
@media (min-width: 900px) {
  .p-local-nav-list__item--info-index {
    grid-column: 1/3;
  }
}

/* card-link */
.p-card-link {
  display: flex;
  flex-grow: 1;
  flex-direction: column;
  container-type: inline-size;
  border: 1px solid #006ab7;
  background-color: #fff;
  overflow: hidden;
}
@media (hover: hover) and (pointer: fine) {
  .p-card-link:hover .p-card-link__image {
    transform: scale(1.1);
    transition-duration: 0.25s, 0.25s;
  }
}
@media (hover: hover) and (pointer: fine) {
  .p-card-link:hover .p-card-link__title::after {
    border: solid 1px #006ab7;
    background-color: #fff;
    color: #006ab7;
  }
}
@container (min-width: 50rem) {
  .p-card-link {
    flex-direction: row;
  }
}
@container (min-width: 50rem) {
  .p-card-link--index {
    flex-direction: column;
  }
}
@container (min-width: 100rem) {
  .p-card-link--index {
    flex-direction: row;
  }
}
.p-card-link--info-index {
  flex-direction: row;
}
.p-card-link--info-sub {
  flex-direction: row;
}
.p-card-link--info-sub .p-card-link__image {
  aspect-ratio: 20/19;
  max-width: 10.7rem;
}
@container (min-width: 50rem) {
  .p-card-link--info-sub .p-card-link__image {
    max-width: 19rem;
  }
}
.p-card-link--info-sub .p-card-link__title {
  font-size: 2rem;
}
@media print, screen and (min-width: 762px) {
  .p-card-link--info-sub .p-card-link__title {
    font-size: 2.4rem;
  }
}

.p-card-link__image {
  width: 100%;
  aspect-ratio: 61/29;
  background: #ccc no-repeat center top/cover;
}
.p-card-link__image--company-message {
  background-image: url(../../assets/img/company/index_img_message.webp);
}
.p-card-link__image--company-about {
  background-image: url(../../assets/img/company/index_img_about.webp);
}
.p-card-link__image--company-data {
  background-image: url(../../assets/img/company/index_img_data.webp);
}
.p-card-link__image--company-working {
  background-image: url(../../assets/img/company/index_img_working.webp);
}
.p-card-link__image--work-location {
  background-image: url(../../assets/img/work/index_img_location.webp);
}
.p-card-link__image--work-career-field {
  background-image: url(../../assets/img/work/index_img_career-field.webp);
}
.p-card-link__image--work-introduction {
  background-image: url(../../assets/img/work/index_img_introduction.webp);
}
.p-card-link__image--people {
  background-image: url(../../assets/img/ideal/index_img_interview.webp);
}
.p-card-link__image--environment-career {
  background-image: url(../../assets/img/environment/index_img_career.webp);
}
.p-card-link__image--environment-education {
  background-image: url(../../assets/img/environment/index_img_education.webp);
}
.p-card-link__image--environment-benefit {
  background-image: url(../../assets/img/environment/index_img_benefit.webp);
}
.p-card-link__image--recruit-talent {
  background-image: url(../../assets/img/info/index_img_talent.webp);
}
.p-card-link__image--recruit-talent-icon {
  background: #ccc no-repeat center left/cover;
  background-image: url(../../assets/img/info/recruit_img_candidate.webp);
}
.p-card-link__image--recruit-faq-icon {
  background: #ccc no-repeat center left/cover;
  background-image: url(../../assets/img/info/recruit_img_faq.webp);
}
.p-card-link__image--recruit-requirement {
  background-image: url(../../assets/img/info/index_img_requirement.webp);
}
.p-card-link__image--recruit-grad-type {
  background-image: url(../../assets/img/info/index_img_type.webp);
}
.p-card-link__image--recruit-career-requirement {
  background-image: url(../../assets/img/info/index_img_requirement_career.webp);
}
.p-card-link__image--recruit-career-organic {
  background: #ccc no-repeat center left/cover;
  background-image: url(../../assets/img/info/index_img_organic.webp);
}
.p-card-link__image--recruit-career-organic-local {
  background-image: url(../../assets/img/info/index_img_organic_local.webp);
}
.p-card-link__image--recruit-return {
  background-image: url(../../assets/img/info/index_img_return.webp);
}
.p-card-link__image--recruit-faq {
  background: #ccc no-repeat center left/cover;
  background-image: url(../../assets/img/info/index_img_faq.webp);
}
@container (min-width: 50rem) {
  .p-card-link__image {
    aspect-ratio: 20/19;
    max-width: 20rem;
  }
}
@container (min-width: 100rem) {
  .p-card-link__image {
    aspect-ratio: 40/19;
    max-width: 40rem;
  }
}
@container (min-width: 50rem) {
  .p-card-link__image--index {
    aspect-ratio: 40/19;
    max-width: 100%;
  }
}
@container (min-width: 100rem) {
  .p-card-link__image--index {
    max-width: 40rem;
  }
}
.p-card-link__image--info-index {
  aspect-ratio: 20/19;
  max-width: 11rem;
}
@container (min-width: 50rem) {
  .p-card-link__image--info-index {
    max-width: 20rem;
  }
}

.p-card-link__title {
  display: flex;
  position: relative;
  padding: 1.5rem 6rem 1.5rem 2rem;
  background-color: #fff;
  align-items: center;
  flex-grow: 1;
  flex-wrap: wrap;
  color: #333;
  font-weight: bold;
  letter-spacing: 0.1em;
}
.p-card-link__title--top-recruit {
  padding: 2rem 5rem 2rem 4rem;
}
@container (min-width: 50rem) {
  .p-card-link__title--top-recruit {
    padding: 2rem 5rem 2rem 2rem;
  }
}
.p-card-link__title::after {
  content: "→";
  display: flex;
  align-items: center;
  justify-content: center;
  position: absolute;
  right: 2rem;
  border-radius: 50%;
  height: 3rem;
  width: 3rem;
  font-size: 1.5rem;
  font-weight: 500;
  color: #fff;
  border: 1px solid transparent;
  background-color: #006ab7;
  transition-duration: 0.25s;
}
@container (min-width: 50rem) {
  .p-card-link__title {
    font-size: 2.4rem;
  }
  .p-card-link__title::after {
    content: "→";
    display: flex;
    align-items: center;
    justify-content: center;
    position: absolute;
    right: 2rem;
    border-radius: 50%;
    height: 4rem;
    width: 4rem;
    font-size: 2rem;
    font-weight: 500;
    color: #fff;
    border: 1px solid transparent;
    background-color: #006ab7;
    transition-duration: 0.25s;
  }
}
@container (min-width: 100rem) {
  .p-card-link__title {
    padding: 5rem 5rem;
  }
}
.p-card-link__title--info-index {
  aspect-ratio: 20/19;
  max-width: 20rem;
}

.p-card-link__subtitle {
  display: block;
  font-size: 1rem;
}
@container (min-width: 50rem) {
  .p-card-link__subtitle {
    font-size: 1.6rem;
  }
}
.p-card-link__subtitle--local {
  letter-spacing: 0.01rem;
}
@container (min-width: 50rem) {
  .p-card-link__subtitle--local {
    font-size: 1.4rem;
  }
}

/* area-local-nav */
.p-area-local-nav-list {
  display: grid;
  gap: 2rem;
  grid-template-columns: minmax(0, 1fr);
}
@media print, screen and (min-width: 1200px) {
  .p-area-local-nav-list {
    grid-template-columns: repeat(auto-fit, minmax(59rem, 1fr));
  }
}

.p-area-local-nav-list__item {
  display: flex;
  gap: 2rem;
}

.p-area-local-nav-list__area {
  width: 8rem;
  flex-shrink: 0;
}

.p-prefectures-list {
  display: flex;
  flex-wrap: wrap;
}

.p-prefectures-list__item {
  position: relative;
  flex-shrink: 0;
}
.p-prefectures-list__item::after {
  content: "";
  display: inline-block;
  width: 0.1rem;
  height: 1.3rem;
  margin-inline: 1rem;
  background-color: #888;
  vertical-align: middle;
}
.p-prefectures-list__item:last-child::after {
  display: none;
}

/* footer */
.p-footer {
  padding: 2.5rem 2rem;
  background-color: #fff;
}
@media print, screen and (min-width: 762px) {
  .p-footer {
    padding: 5rem 5rem 2.5rem;
  }
}
.p-footer--top {
  border-top: none;
}

.p-footer__logo {
  display: flex;
  justify-content: center;
  margin-bottom: 1rem;
}
@media print, screen and (min-width: 762px) {
  .p-footer__logo {
    display: block;
    margin-bottom: 0;
  }
}

.p-footer__logo-img {
  width: auto;
}

.p-footer__gnav-container {
  padding-bottom: 3rem;
}
@media print, screen and (min-width: 762px) {
  .p-footer__gnav-container {
    padding-bottom: 5rem;
  }
}
@media print, screen and (min-width: 1200px) {
  .p-footer__gnav-container {
    display: flex;
    flex-direction: column;
    gap: 5rem;
    column-gap: 5rem;
    max-width: 120rem;
    margin: 0 auto;
  }
}

.p-footer-gnav--sp {
  margin-top: 0.5rem;
}
@media print, screen and (min-width: 762px) {
  .p-footer-gnav--sp {
    display: none;
  }
}
.p-footer-gnav--pc {
  display: none;
}
@media print, screen and (min-width: 762px) {
  .p-footer-gnav--pc {
    display: block;
    margin-top: 5rem;
  }
}
@media print, screen and (min-width: 1600px) {
  .p-footer-gnav--pc {
    flex: 1;
    margin-top: 0;
  }
}

.p-footer-gnav__list {
  display: grid;
  grid-template-columns: 1fr;
  grid-template-rows: auto;
}
@media print, screen and (min-width: 762px) {
  .p-footer-gnav__list {
    grid-template-columns: repeat(2, 1fr);
    grid-template-rows: repeat(auto-fit, minmax(1rem, auto));
    column-gap: 5rem;
  }
}
@media print, screen and (min-width: 1200px) {
  .p-footer-gnav__list {
    grid-template-columns: repeat(4, 1fr);
    grid-template-rows: repeat(8, minmax(2rem, auto));
  }
}

.p-footer-gnav__list-item > a {
  display: block;
}
.p-footer-gnav__list-item--contact {
  margin-top: 2.5rem;
}
@media print, screen and (min-width: 762px) {
  .p-footer-gnav__list-item:nth-child(1) {
    grid-area: 1/1/2/2;
  }
  .p-footer-gnav__list-item:nth-child(2) {
    grid-area: 2/1/7/2;
    margin-top: 2.5rem;
  }
  .p-footer-gnav__list-item:nth-child(3) {
    grid-area: 7/1/13/2;
    margin-top: 2.5rem;
  }
  .p-footer-gnav__list-item:nth-child(4) {
    grid-area: 1/2/2/3;
  }
  .p-footer-gnav__list-item:nth-child(5) {
    grid-area: 2/2/6/3;
    margin-top: 2.5rem;
  }
  .p-footer-gnav__list-item:nth-child(6) {
    grid-area: 6/2/11/3;
    margin-top: 2.5rem;
  }
  .p-footer-gnav__list-item:nth-child(7) {
    grid-area: 11/2/13/3;
    margin-top: 2.5rem;
  }
}
@media print, screen and (min-width: 1200px) {
  .p-footer-gnav__list-item:nth-child(1) {
    grid-area: 1/1/3/2;
  }
  .p-footer-gnav__list-item:nth-child(2) {
    grid-area: 1/2/4/3;
    margin-top: 0;
  }
  .p-footer-gnav__list-item:nth-child(3) {
    grid-area: 4/2/8/3;
    margin-top: 0;
  }
  .p-footer-gnav__list-item:nth-child(4) {
    grid-area: 1/3/6/4;
  }
  .p-footer-gnav__list-item:nth-child(5) {
    grid-area: 1/4/6/5;
    margin-top: 0;
  }
  .p-footer-gnav__list-item:nth-child(6) {
    grid-area: 4/4/8/5;
    margin-top: 0;
  }
  .p-footer-gnav__list-item:nth-child(7) {
    grid-area: 6/4/8/5;
  }
}

.p-footer-nav__list-title {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: space-between;
  font-weight: bold;
  border-bottom: 1px solid #888;
  padding-top: 1.5rem;
  padding-bottom: 1.5rem;
  cursor: pointer;
}
@media print, screen and (min-width: 762px) {
  .p-footer-nav__list-title {
    padding-top: 0;
    padding-bottom: 0.5rem;
    line-height: 1.5;
  }
  .p-footer-nav__list-title > a {
    display: block;
    width: 100%;
  }
}
.p-footer-nav__list-title::before, .p-footer-nav__list-title::after {
  content: "";
  position: absolute;
  top: 50%;
  right: 0;
  border-radius: 1px;
  height: 0.2rem;
  width: 1.4rem;
  background-color: #006ab7;
  transition: transform 0.1s;
}
.p-footer-nav__list-title::after {
  transform: rotate(90deg);
}
.p-footer-nav__list-title--link::before {
  content: none;
}
.p-footer-nav__list-title--link::after {
  content: "→";
  top: 24%;
  right: 1.6rem;
  height: 0;
  width: 0;
  transform: rotate(0);
  color: #006ab7;
}
@media print, screen and (min-width: 762px) {
  .p-footer-nav__list-title::before {
    content: none;
  }
  .p-footer-nav__list-title::after {
    content: "→";
    display: flex;
    align-items: center;
    justify-content: center;
    position: absolute;
    top: 0.4rem;
    right: 1rem;
    border-radius: 50%;
    height: 1.7rem;
    width: 1.7rem;
    font-size: 0.85rem;
    font-weight: 500;
    color: #fff;
    border: 1px solid transparent;
    background-color: #006ab7;
    transition-duration: 0.25s;
  }
  .p-footer-nav__list-title::after {
    transform: rotate(0);
  }
}
@media (hover: hover) and (pointer: fine) {
  .p-footer-nav__list-title:hover {
    opacity: 0.7;
  }
}

details[open] .p-footer-nav__list-title::after {
  transform: rotate(0);
}

.p-footer-nav__inner-list {
  margin-top: 2rem;
  margin-bottom: 1.5rem;
}
.p-footer-nav__inner-list > * + * {
  margin-top: 2rem;
}
@media print, screen and (min-width: 1200px) {
  .p-footer-nav__inner-list {
    margin-top: 1.5rem;
    margin-bottom: 0;
  }
  .p-footer-nav__inner-list > * + * {
    margin-top: 1.5rem;
  }
}
.p-footer-nav__inner-list--lower {
  margin: 0;
}
@media print, screen and (min-width: 1200px) {
  .p-footer-nav__inner-list--lower {
    margin-top: 0;
  }
  .p-footer-nav__inner-list--lower > * + * {
    margin-top: 1rem;
  }
}

.p-footer-nav__list-target {
  display: flex;
  font-size: 1.6rem;
  line-height: 1.5;
}
.p-footer-nav__list-target a {
  display: block;
  width: 100%;
}
.p-footer-nav__list-target::before {
  content: "-";
  padding-right: 0.5rem;
}
.p-footer-nav__list-target--lower::before {
  display: none;
}

.p-footer-nav__list-lower {
  display: flex;
  line-height: 1.5;
  font-size: 1.4rem;
}
.p-footer-nav__list-lower a {
  display: block;
  width: 100%;
}
.p-footer-nav__list-lower::before {
  content: "";
  padding-right: 2rem;
}

@media print, screen and (min-width: 1200px) {
  .p-footer-subnav {
    border-top: 1px solid #707070;
  }
}

.p-footer-subnav__content {
  display: flex;
  flex-direction: column;
}
@media print, screen and (min-width: 1200px) {
  .p-footer-subnav__content {
    flex-direction: row;
    padding-top: 2.5rem;
    justify-content: space-between;
  }
}

.p-footer-subnav__list {
  display: flex;
  flex-wrap: wrap;
  gap: 1rem;
}
@media print, screen and (min-width: 762px) {
  .p-footer-subnav__list {
    column-gap: 3rem;
  }
}

.p-footer-subnav__list-item {
  display: flex;
  gap: 1rem;
  font-size: 1.4rem;
}
.p-footer-subnav__list-item:not(:last-child)::after {
  content: "|";
  color: #888;
}
.p-footer-subnav__list-item > a {
  display: block;
  width: fit-content;
}
@media print, screen and (min-width: 762px) {
  .p-footer-subnav__list-item:not(:last-child)::after {
    display: none;
  }
}

.p-footer__copyright {
  margin-top: 3rem;
  margin-right: auto;
  margin-left: auto;
  font-size: 1.4rem;
}
@media print, screen and (min-width: 1200px) {
  .p-footer__copyright {
    margin-left: auto;
    margin-top: 0;
    margin-right: 0;
  }
}

.p-footer__banner-img {
  width: 100%;
  max-width: 26.2rem;
  margin-top: 1.5rem;
  border: 1px solid #ccc;
}
@media print, screen and (min-width: 762px) {
  .p-footer__banner-img {
    margin-top: 0;
  }
}

/* top */
.p-top-main-vidual-container {
  position: relative;
  display: flex;
  flex-direction: column;
  row-gap: 2rem;
  margin-bottom: 12.7rem;
}
@media print, screen and (min-width: 762px) {
  .p-top-main-vidual-container {
    display: grid;
    grid-template-columns: 1fr 60%;
    grid-template-rows: 6rem calc(50vw - 6rem);
    row-gap: 0;
    margin-bottom: 8rem;
  }
}
@media (min-width: 980px) {
  .p-top-main-vidual-container {
    grid-template-rows: 50vw;
  }
}
@media print, screen and (min-width: 1200px) {
  .p-top-main-vidual-container {
    grid-template-rows: 7.4rem calc(50vw - 7.4rem);
    grid-template-columns: 1fr 67.5%;
  }
}

.p-top-main-visual {
  position: relative;
  top: 0;
  right: 0;
  height: 36rem;
  border-bottom-left-radius: 15rem;
  width: calc(100% - 2rem);
  margin-left: 2rem;
  background: url(../../assets/img/top/index_main.webp) center/cover no-repeat;
}
@media print, screen and (min-width: 762px) {
  .p-top-main-visual {
    position: absolute;
    height: 50vw;
    width: 60%;
    margin-left: 0;
  }
}
@media print, screen and (min-width: 1200px) {
  .p-top-main-visual {
    border-bottom-left-radius: 40rem;
    top: 0;
    width: 67.5%;
  }
}

.p-top-catch {
  display: flex;
  flex-direction: column;
  align-items: center;
  padding: 4rem 2rem 0;
}
@media print, screen and (min-width: 762px) {
  .p-top-catch {
    grid-area: 2/1/2/2;
    align-self: center;
    justify-self: center;
    padding: 0;
    z-index: 2;
  }
}
@media (min-width: 980px) {
  .p-top-catch {
    grid-area: 1/1/2/2;
  }
}
@media print, screen and (min-width: 1200px) {
  .p-top-catch {
    grid-area: 2/1/2/2;
  }
}
@media print, screen and (min-width: 762px) {
  .p-top-catch > * + * {
    margin-top: 4rem;
  }
}

.p-top-catch__heading {
  text-align: center;
}

.p-top-catch__img {
  position: absolute;
  bottom: -7.7rem;
  right: 2rem;
  max-width: 15.3rem;
  z-index: 2;
}
@media print, screen and (min-width: 762px) {
  .p-top-catch__img {
    position: static;
    max-width: 19vw;
  }
}

.p-top-vision-container {
  padding-top: 4rem;
  padding-bottom: 4rem;
  margin-right: auto;
  margin-left: auto;
}
.p-top-vision-container > * + * {
  margin-top: 2.5rem;
}
@media print, screen and (min-width: 762px) {
  .p-top-vision-container > * + * {
    margin-top: 5rem;
    position: relative;
  }
}

.p-top-vision {
  row-gap: 4rem;
  grid-template-columns: 1fr;
}
@media print, screen and (min-width: 1200px) {
  .p-top-vision {
    row-gap: 3rem;
    grid-template-columns: min(40vw, 56.5rem) auto;
    grid-column-gap: 100px;
  }
}

.p-top-vision__heading {
  font-size: 3rem;
  font-weight: bold;
  letter-spacing: 0.1em;
  line-height: 1.4;
}
@media print, screen and (min-width: 762px) {
  .p-top-vision__heading {
    grid-area: 1/1/2/2;
    font-size: 6rem;
    letter-spacing: 0.044em;
    line-height: 1.5217391304;
  }
}

.p-top-vision__content {
  display: flex;
  flex-direction: column;
  gap: 3rem;
}
@media print, screen and (min-width: 762px) {
  .p-top-vision__content {
    grid-area: 2/1/4/2;
  }
}

@media print, screen and (min-width: 762px) {
  .p-top-vision__text {
    grid-area: 2/2/2/3;
  }
}
.p-top-vision__text span {
  display: block;
}
.p-top-vision__text > * + * {
  margin-top: 3rem;
}

.p-top-vision__img {
  right: -2rem;
  width: calc(100% + 4rem);
  height: 50vw;
  background: url(../../assets/img/top/index_bg_vision.webp) center/cover no-repeat;
  margin-left: -2rem;
  margin-right: -2rem;
}
@media print, screen and (min-width: 762px) {
  .p-top-vision__img {
    width: calc(100% + 10rem);
    margin-left: -5rem;
    margin-right: -5rem;
  }
}
@media print, screen and (min-width: 1200px) {
  .p-top-vision__img {
    position: absolute;
    right: 0;
    width: 48vw;
    height: 40vw;
    margin-top: 0;
    margin-right: 0;
    margin-left: 60vw;
  }
}

.p-top-card-container {
  display: grid;
  gap: 1.5rem 5rem;
  border: 1px solid #888;
  background-color: #fff;
}
.p-top-card-container--about {
  padding: 3rem 2rem;
  grid-template-columns: 1fr;
  gap: 3rem 0;
}
@media print, screen and (min-width: 762px) {
  .p-top-card-container--about {
    padding: 5rem 10rem;
    grid-template-columns: repeat(2, 1fr);
    gap: 1.5rem 10rem;
  }
}
.p-top-card-container--vision {
  padding: 3rem 2rem;
}
@media print, screen and (min-width: 762px) {
  .p-top-card-container--vision {
    padding: 5rem 10rem;
  }
}

.p-top-card__heading {
  font-size: 2rem;
  font-weight: bold;
}
@media print, screen and (min-width: 762px) {
  .p-top-card__heading {
    font-size: 2.8rem;
  }
}

.p-top-card {
  display: flex;
  flex-direction: column;
  gap: 2rem;
}
@media print, screen and (min-width: 1200px) {
  .p-top-card {
    display: grid;
    grid-template-rows: subgrid;
    grid-row: span 4;
  }
}
.p-top-card + .p-top-card {
  margin-top: 3.5rem;
}
@media print, screen and (min-width: 762px) {
  .p-top-card + .p-top-card {
    margin-top: 0;
  }
}
.p-top-card--about {
  row-gap: 1.5rem;
}
.p-top-card--about .p-top-card__button-sp {
  justify-content: end;
}
.p-top-card + .p-top-card {
  margin-top: 0;
}
@media print, screen and (min-width: 762px) {
  .p-top-card + .p-top-card {
    border-top: none;
  }
}

.p-top-card__link-img {
  overflow: hidden;
}

.p-top-card__link-item {
  display: flex;
  flex-direction: column;
  gap: 1.5rem;
}
@media (hover: hover) and (pointer: fine) {
  .p-top-card__link-item:hover .p-top-card__img {
    transform: scale(1.1);
    transition-duration: 0.25s, 0.25s;
  }
  .p-top-card__link-item:hover .p-button-sub::after {
    border: solid 1px #006ab7;
    background-color: #fff;
    color: #006ab7;
  }
  .p-top-card__link-item:hover .p-button-sub__text {
    color: #006ab7;
  }
}

.p-top-card__text {
  flex-grow: 1;
}

.p-top-card__img {
  margin: 0 auto;
  overflow: hidden;
}
@media print, screen and (min-width: 762px) {
  .p-top-card__img {
    height: 100%;
    max-height: 30rem;
    object-fit: contain;
  }
}
@media print, screen and (min-width: 1200px) {
  .p-top-card__img {
    width: 100%;
    max-width: 100%;
    max-height: 100%;
    object-fit: cover;
  }
}
.p-top-card__img--width60 {
  max-width: 60vw;
}
@media print, screen and (min-width: 762px) {
  .p-top-card__img--width60 {
    max-width: 34.5rem;
    width: 100%;
    object-fit: contain;
  }
}

.p-top-card__item {
  row-gap: 2.5rem;
}

.p-top-vision-card {
  display: flex;
  flex-direction: column;
  row-gap: 1.5rem;
}
@media print, screen and (min-width: 1200px) {
  .p-top-vision-card {
    align-items: flex-start;
    flex-direction: row;
    column-gap: 5rem;
  }
}
.p-top-vision-card:has(.p-button-sub:hover) .p-top-vision-card__img-link .p-top-vision-card__img {
  transform: scale(1.1);
  transition-duration: 0.25s, 0.25s;
}
.p-top-vision-card:has(.p-top-vision-card__img-link:hover) .p-button-sub::after {
  border: solid 1px #006ab7;
  background-color: #fff;
  color: #006ab7;
}
.p-top-vision-card:has(.p-top-vision-card__img-link:hover) .p-button-sub__text {
  color: #006ab7;
}

.p-top-vision-card__content {
  display: contents;
}
@media print, screen and (min-width: 1200px) {
  .p-top-vision-card__content {
    display: flex;
    flex-direction: column;
    row-gap: 2rem;
  }
}

.p-top-vision-card__title {
  order: 1;
  font-size: 2rem;
  font-weight: bold;
}
@media print, screen and (min-width: 1200px) {
  .p-top-vision-card__title {
    order: 0;
    font-size: 3.2rem;
  }
}

.p-top-vision-card__img-link {
  border: 1px solid #888;
  order: 3;
  overflow: hidden;
}
@media print, screen and (min-width: 762px) {
  .p-top-vision-card__img-link {
    max-width: 38rem;
    margin-inline: auto;
  }
}
@media print, screen and (min-width: 1200px) {
  .p-top-vision-card__img-link {
    order: 0;
  }
}
@media (hover: hover) and (pointer: fine) {
  .p-top-vision-card__img-link:hover .p-top-vision-card__img {
    transform: scale(1.1);
    transition-duration: 0.25s, 0.25s;
  }
}

.p-top-vision-card__img {
  width: 100%;
}

.p-top-vision-card__text {
  order: 3;
}
@media print, screen and (min-width: 1200px) {
  .p-top-vision-card__text {
    order: 0;
  }
}

.p-top-vision-card__button-box {
  display: flex;
  justify-content: flex-end;
  order: 4;
}
@media print, screen and (min-width: 1200px) {
  .p-top-vision-card__button-box {
    order: 0;
  }
}

.p-top-section-about > * + * {
  margin-top: 5rem;
}

.p-top-about {
  display: flex;
  flex-direction: column;
  gap: 3rem;
}
@media print, screen and (min-width: 762px) {
  .p-top-about {
    display: grid;
    grid-template-rows: 1fr;
    gap: max(5vw, 10rem);
  }
}

.p-top-about__img {
  width: 100%;
}

.p-top-about__item {
  display: flex;
  flex-direction: column;
  gap: 2rem;
}
@media print, screen and (min-width: 762px) {
  .p-top-about__item {
    gap: 4rem;
    grid-column: 2;
    grid-row: 1;
    margin-top: 0;
  }
}

.p-top-about__item-message {
  margin-top: 1rem;
}
@media print, screen and (min-width: 762px) {
  .p-top-about__item-message {
    margin-top: 0;
  }
}

.p-top-works {
  display: grid;
  align-items: center;
  gap: 3rem 0;
}
@media print, screen and (min-width: 762px) {
  .p-top-works {
    gap: 5rem;
    grid-template-columns: repeat(2, 1fr);
    gap: 0 3rem;
    padding-left: 5rem;
  }
}
@media print, screen and (min-width: 1200px) {
  .p-top-works {
    max-width: calc(50vw - 60rem + 124rem);
    padding-left: 5rem;
    margin-left: auto;
  }
}
@media print, screen and (min-width: 1600px) {
  .p-top-works {
    grid-template-columns: minmax(auto, 63rem) 1fr;
  }
}

.p-top-works__item {
  display: flex;
  flex-direction: column;
  gap: 2rem;
  padding-inline: 2rem;
}
@media print, screen and (min-width: 762px) {
  .p-top-works__item {
    gap: 5rem;
    max-width: 65rem;
    padding-inline: 0;
  }
}

@media print, screen and (min-width: 762px) {
  .p-top-works__item-container {
    padding-right: 0;
    grid-area: 1/1/1/2;
  }
}

.p-top-works__button-container {
  display: grid;
  gap: 1.5rem;
  width: 100%;
  max-width: 32rem;
  margin-inline: auto;
}
@media screen and (min-width: 950px) {
  .p-top-works__button-container {
    grid-template-columns: 1fr 1fr;
  }
}
@media print, screen and (min-width: 762px) {
  .p-top-works__button-container {
    align-items: center;
    gap: 2rem;
    max-width: none;
  }
}
@media print, screen and (min-width: 1200px) {
  .p-top-works__button-container {
    justify-content: space-between;
    gap: 2rem;
    max-width: none;
    margin-right: 0;
    margin-left: 0;
  }
}

.p-top-works__img-container {
  width: 100%;
}

.p-top-works__img {
  padding-top: 74%;
  width: 100%;
  background-image: url(../../assets/img/top/index_bg_job.webp);
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
}

/*
.p-top-section-environment__bg-img {

  @include var.media(pc) {
    position: fixed;
    top: 0;
    right: 0;
    border-end-start-radius: 40rem; //左下を角丸に
    height: 50vw;
    width: 67.5%;
    background: url(../../assets/img/top/index_img_environment.webp) center/cover no-repeat;
    z-index: -1;
  }
}*/
.p-top-environment-inner-wrapper {
  padding: 4rem 4rem 7rem 4rem;
  margin-top: 11.5rem;
  background-color: #e5f0f8;
}
@media print, screen and (min-width: 762px) {
  .p-top-environment-inner-wrapper {
    padding: 5rem;
    margin-top: 19.5rem;
    flex-direction: row;
    gap: 5rem;
  }
}
@media print, screen and (min-width: 1200px) {
  .p-top-environment-inner-wrapper {
    padding: 8rem;
  }
}

.p-top-environment-inner {
  margin-top: -10.5rem;
  display: flex;
  flex-direction: column;
  gap: 5rem;
}
@media print, screen and (min-width: 762px) {
  .p-top-environment-inner {
    margin-top: -22.5rem;
    flex-direction: row;
    gap: 3rem;
  }
}

.p-top-environment-item-wrapper {
  display: flex;
  flex: 1;
  flex-direction: column;
  gap: 1.5rem;
}
@media print, screen and (min-width: 762px) {
  .p-top-environment-item-wrapper {
    gap: 2rem;
  }
}
@media (hover: hover) and (pointer: fine) {
  .p-top-environment-item-wrapper:hover .p-top-environment-item__img {
    transform: scale(1.1);
    transition-duration: 0.25s, 0.25s;
  }
  .p-top-environment-item-wrapper:hover .p-button-sub::after {
    border: solid 1px #006ab7;
    background-color: #fff;
    color: #006ab7;
  }
  .p-top-environment-item-wrapper:hover .p-button-sub__text {
    color: #006ab7;
  }
}

.p-top-environment-item {
  display: flex;
  flex-direction: column;
  gap: 2rem;
  overflow: hidden;
}

.p-top-environment-item__img {
  width: 100%;
}

.p-top-environment-item__text {
  flex-grow: 1;
}

.p-top-environment__button-sp {
  justify-content: end;
}

.p-top-recruit {
  justify-content: center;
  gap: 1rem;
}
@media print, screen and (min-width: 762px) {
  .p-top-recruit {
    justify-content: flex-start;
    gap: 2rem;
  }
}
@media print, screen and (min-width: 1200px) {
  .p-top-recruit {
    justify-content: center;
  }
}

.p-top-foot-entry-button {
  position: relative;
  display: block;
  border: 2px solid transparent;
  width: 100%;
  padding: 1.5rem;
  background-color: #006ab7;
  color: #fff;
  font-family: "Roboto", sans-serif;
  font-size: 2.5rem;
  text-align: center;
  line-height: 1;
  transition: background-color 0.25s;
}
@media print, screen and (min-width: 762px) {
  .p-top-foot-entry-button {
    padding: 2.5rem;
    font-size: 4rem;
  }
}
@media (hover: hover) and (pointer: fine) {
  .p-top-foot-entry-button:hover {
    border: 2px solid #006ab7;
    background-color: #fff;
    color: #006ab7;
  }
  .p-top-foot-entry-button:hover .p-top-foot-entry-arrow::after {
    background-color: #006ab7;
    color: #fff;
  }
}

.p-top-foot-entry-arrow {
  position: relative;
  display: inline-flex;
  padding-right: 3.5rem;
  font-weight: bold;
}
.p-top-foot-entry-arrow::after {
  content: "→";
  display: flex;
  align-items: center;
  justify-content: center;
  position: absolute;
  right: 0;
  border-radius: 50%;
  height: 2.5rem;
  width: 2.5rem;
  font-size: 1.25rem;
  font-weight: 500;
  color: #006ab7;
  border: 1px solid transparent;
  background-color: #fff;
  transition-duration: 0.25s;
}
@media print, screen and (min-width: 762px) {
  .p-top-foot-entry-arrow::after {
    top: 57.5%;
    transform: translateY(-50%);
  }
}
@media print, screen and (min-width: 1200px) {
  .p-top-foot-entry-arrow {
    padding-right: 5rem;
  }
  .p-top-foot-entry-arrow::after {
    height: 4rem;
    width: 4rem;
    font-size: 2rem;
  }
}

.top-mv-test {
  width: 100vw;
  height: 100%;
  aspect-ratio: 4/1;
  background: url(../../assets/img/top/index_main.webp) center/cover repeat;
  animation: bgiLoop 5s linear infinite;
}

@keyframes bgiLoop {
  0% {
    background-position: 0 0;
  }
  100% {
    background-position: -100vw 0;
  }
}
.p-top-pc-hero {
  position: relative;
  display: block;
  width: 100%;
  margin-inline: auto;
}

.p-top-hero__inner {
  position: relative;
  width: 100%;
  background-color: #fff;
  z-index: 1;
}
@media print, screen and (min-width: 1200px) {
  .p-top-hero__inner {
    position: relative;
    height: calc(100dvh - 11rem);
    max-height: 55dvw;
    overflow: hidden;
  }
}

.p-top-hero__video {
  width: 100%;
}
.p-top-hero__video--sp {
  display: block;
}
@media print, screen and (min-width: 762px) {
  .p-top-hero__video--sp {
    display: none;
  }
}
.p-top-hero__video--pc {
  display: none;
}
@media print, screen and (min-width: 762px) {
  .p-top-hero__video--pc {
    display: block;
  }
}
@media print, screen and (min-width: 1200px) {
  .p-top-hero__video--pc {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
  }
}

.p-internship-banner {
  position: fixed;
  bottom: 0;
  left: 0;
  border-top-left-radius: 12px;
  border-top-right-radius: 12px;
  padding: 0.8rem;
  width: 100%;
  background-color: #fff;
  box-shadow: 0 -3px 6px rgba(0, 0, 0, 0.16);
  z-index: 50;
}
@media print, screen and (min-width: 1200px) {
  .p-internship-banner {
    right: 4rem;
    bottom: 3.2rem;
    left: auto;
    border-radius: 12px;
    width: min(100%, 42rem);
    box-shadow: 0 3px 6px rgba(0, 0, 0, 0.16);
  }
}
@media print {
  .p-internship-banner {
    position: absolute;
    top: calc(52vw - 3.2rem);
    right: 4rem;
    bottom: auto;
  }
}

.p-internship-banner__link {
  position: relative;
  display: block;
  border-radius: 5px;
  margin-inline: auto;
  width: min(100%, 40rem);
  overflow: hidden;
}

.p-internship-banner__icon {
  position: absolute;
  top: 0;
  right: max(50% - 21rem, 0rem);
  display: flex;
  align-items: center;
  justify-content: center;
  height: 5rem;
  width: 5rem;
  font-size: 0;
}
.p-internship-banner__icon::after {
  content: "×";
  display: flex;
  align-items: center;
  justify-content: center;
  height: 2.4rem;
  width: 2.4rem;
  background-color: #fff;
  border-radius: 50%;
  font-size: 1.6rem;
  font-weight: bold;
}
@media print, screen and (min-width: 1200px) {
  .p-internship-banner__icon {
    top: 0;
    right: 0;
  }
}

/* slider */
.p-slider-item {
  position: relative;
  display: flex;
  flex-direction: column;
  row-gap: 1rem;
  height: auto;
}
@media (hover: hover) and (pointer: fine) {
  .p-slider-item:hover .p-slider-item__img img {
    transform: scale(1.1);
    transition-duration: 0.25s, 0.25s;
  }
  .p-slider-item:hover .p-icon-bg {
    background-color: #00ade3;
    color: #fff;
    transform: scale(2);
    transition-duration: 0.25s, 0.25s;
  }
}
.p-slider-item--no-swipe {
  width: calc(100% - 0.5rem);
  margin-inline: auto;
}
@media (min-width: 520px) {
  .p-slider-item--no-swipe {
    width: calc(50% - 2.5rem);
    margin-inline: 0;
  }
}
@media print, screen and (min-width: 1200px) {
  .p-slider-item--no-swipe {
    width: 30.7rem;
  }
}

.p-slider-item__img-wrapper {
  position: relative;
  margin-bottom: 0.5rem;
}
.p-slider-item__img-wrapper::after {
  content: "→";
  display: flex;
  align-items: center;
  justify-content: center;
  position: absolute;
  bottom: 0.5rem;
  right: 0.5rem;
  border-radius: 50%;
  height: 2.5rem;
  width: 2.5rem;
  font-size: 1.25rem;
  font-weight: 500;
  color: #006ab7;
  border: 1px solid transparent;
  background-color: #fff;
  transition-duration: 0.25s;
}
@media print, screen and (min-width: 762px) {
  .p-slider-item__img-wrapper {
    margin-bottom: 1.5rem;
  }
  .p-slider-item__img-wrapper::after {
    content: "→";
    display: flex;
    align-items: center;
    justify-content: center;
    position: absolute;
    bottom: 0.5rem;
    right: 0.5rem;
    border-radius: 50%;
    height: 4rem;
    width: 4rem;
    font-size: 2rem;
    font-weight: 500;
    color: #006ab7;
    border: 1px solid transparent;
    background-color: #fff;
    transition-duration: 0.25s;
  }
}

@media print and (hover: hover) and (pointer: fine), screen and (hover: hover) and (pointer: fine) and (min-width: 1200px) {
  .p-slider-item:hover .p-slider-item__img-wrapper {
    margin-bottom: 1.5rem;
  }
  .p-slider-item:hover .p-slider-item__img-wrapper::after {
    content: "→";
    display: flex;
    align-items: center;
    justify-content: center;
    position: absolute;
    border-radius: 50%;
    height: 4rem;
    width: 4rem;
    font-size: 2rem;
    font-weight: 500;
    color: #fff;
    border: 1px solid transparent;
    background-color: #006ab7;
    transition-duration: 0.25s;
  }
}

.p-slider-item__img {
  position: relative;
  overflow: hidden;
}
.p-slider-item__img img {
  height: max(16rem, 100%);
  width: max(16rem, 100%);
  aspect-ratio: 275/294;
  object-fit: cover;
  background-color: #ccc;
  transition-duration: 0.25s;
}
.p-slider-item__img--top img {
  aspect-ratio: 290/310;
}

.p-slider-item__intro {
  font-size: 2rem;
  font-weight: bold;
}
@media print, screen and (min-width: 762px) {
  .p-slider-item__intro {
    font-size: 2.4rem;
  }
}

.p-slider-button {
  display: grid;
  grid-template-columns: 1fr;
  grid-template-rows: 1fr;
  align-items: center;
  justify-items: center;
  margin-top: 2.5rem;
}
@media print, screen and (min-width: 762px) {
  .p-slider-button {
    margin-top: 5rem;
  }
}

@media print, screen and (min-width: 762px) {
  .p-slider-item__heading {
    padding-inline: 0.5rem;
  }
}

.p-slider-item__text-box {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  row-gap: 0.5rem;
}
@media print, screen and (min-width: 762px) {
  .p-slider-item__text-box {
    row-gap: 1rem;
    padding-inline: 1rem;
  }
}
@media print, screen and (min-width: 762px) {
  .p-slider-item__text-box--top {
    row-gap: 0;
  }
}
.p-slider-item__text-box--introduction {
  row-gap: 0;
}
@media print, screen and (min-width: 762px) {
  .p-slider-item__text-box--introduction {
    row-gap: 0;
  }
}

.p-slider-item__text {
  font-size: 1.2rem;
}
@media print, screen and (min-width: 762px) {
  .p-slider-item__text {
    font-size: 1.6rem;
  }
}
.p-slider-item__text--top {
  display: flex;
  flex-wrap: wrap;
  column-gap: 1rem;
}
@media print, screen and (min-width: 762px) {
  .p-slider-item__text--top {
    font-size: 1.4rem;
  }
}
.p-slider-item__text--introduction {
  margin-top: 0.5rem;
}
.p-slider-item__text--introduction + .p-slider-item__text--introduction {
  margin-top: 1rem;
}

.p-slider-item__category-icon {
  display: block;
  position: absolute;
  top: 0;
  right: 0;
  min-width: 13rem;
  padding: 0.5rem;
  color: #fff;
  font-size: 1.2rem;
  font-weight: bold;
  text-align: center;
  line-height: 1;
}
.p-slider-item__category-icon--medicine {
  background-color: #589bcf;
}
.p-slider-item__category-icon--chemical {
  background-color: #8dD470;
}
.p-slider-item__category-icon--food-cosmetics {
  background-color: #ff8997;
}
.p-slider-item__category-icon--service {
  background-color: #f7a73f;
}
.p-slider-item__category-icon--introduction {
  width: 4rem;
  padding-block: 0.1rem;
  font-size: 1rem;
}
@media print, screen and (min-width: 762px) {
  .p-slider-item__category-icon--introduction {
    width: 8.8rem;
    padding-block: 0.5rem;
    font-size: 1.6rem;
  }
}

.p-slider-item__keyword {
  flex-grow: 0;
  display: inline-block;
  padding-inline: 0.5rem;
  margin-left: 1rem;
  border: 1px solid #888;
  font-size: 1rem;
}
@media print, screen and (min-width: 762px) {
  .p-slider-item__keyword {
    font-size: 1.6rem;
  }
}
@media print, screen and (min-width: 762px) {
  .p-slider-item__keyword--top {
    font-size: 1.4rem;
  }
}

@media print, screen and (min-width: 762px) {
  .p-slider-item__br {
    display: none;
  }
}

/* swiper */
.p-people-slider-container--no-swipe {
  display: flex;
  gap: 3rem;
}
@media (min-width: 520px) {
  .p-people-slider-container--no-swipe {
    gap: 5rem;
  }
}
.p-people-slider-container .swiper-slide {
  width: max(16rem, 100%);
}

.p-swiper-area {
  position: relative;
  max-width: 106.4rem;
  margin-inline: -2rem;
}
@media print, screen and (min-width: 762px) {
  .p-swiper-area {
    margin-inline: auto;
  }
}
.p-swiper-area--introduction {
  position: relative;
}
@media print, screen and (min-width: 762px) {
  .p-swiper-area--introduction {
    max-width: 108rem;
  }
}
@media print, screen and (min-width: 762px) {
  .p-swiper-area--no-swipe {
    margin-inline: 0;
  }
}

.p-swiper {
  padding-inline: 1.9rem;
}
@media (min-width: 520px) {
  .p-swiper {
    padding-inline: 4.9rem;
  }
}
@media print, screen and (min-width: 762px) {
  .p-swiper--top {
    padding-inline: 4.9rem;
  }
}
.p-swiper--introduction {
  padding-inline: 1.4rem;
}
@media (min-width: 520px) {
  .p-swiper--introduction {
    padding-inline: 4.9rem;
  }
}
@media print, screen and (min-width: 762px) {
  .p-swiper--introduction {
    padding-inline: 2.9rem;
  }
}
.p-swiper--no-swipe {
  padding-inline: 5rem;
}
@media print, screen and (min-width: 762px) {
  .p-swiper--no-swipe {
    padding-inline: 0;
  }
}
@media print, screen and (min-width: 1200px) {
  .p-swiper .c-text-icon-list {
    flex-direction: column;
  }
}

/* company */
.p-message-main-visual {
  width: 100%;
}

.p-message-main-visual__img {
  width: 100%;
}

.p-message-title {
  margin-bottom: 5rem;
  text-align: center;
}
@media print, screen and (min-width: 762px) {
  .p-message-title {
    margin-bottom: 10rem;
  }
}

.p-message-section {
  max-width: 60rem;
  margin-right: auto;
  margin-left: auto;
}
.p-message-section + .p-message-section {
  margin-top: 5rem;
}
@media print, screen and (min-width: 762px) {
  .p-message-section + .p-message-section {
    margin-top: 10rem;
  }
}

.p-about-figure-section + .p-about-figure-section {
  margin-top: 5rem;
}
@media print, screen and (min-width: 762px) {
  .p-about-figure-section + .p-about-figure-section {
    margin-top: 10rem;
  }
}

.p-about-overview {
  display: grid;
  grid-template-columns: 1fr;
}
@media print, screen and (min-width: 762px) {
  .p-about-overview {
    grid-auto-rows: auto;
    grid-template-columns: repeat(2, 1fr);
    column-gap: 5rem;
  }
}
@media print, screen and (min-width: 1200px) {
  .p-about-overview {
    grid-template-columns: 1fr 1fr;
  }
}

.p-about-overview__item:has(img) {
  padding-top: 1.2rem;
  padding-bottom: 1.2rem;
}
@media print, screen and (min-width: 762px) {
  .p-about-overview__item:has(img) {
    padding-top: 0;
    padding-bottom: 0;
  }
}
.p-about-overview__item:nth-child(1) {
  grid-area: 1/1/2/2;
}
.p-about-overview__item:nth-child(2) {
  align-self: center;
  justify-self: center;
  max-width: 48vw;
}
.p-about-overview__item:nth-child(3) {
  margin-top: 1rem;
}
@media print, screen and (min-width: 762px) {
  .p-about-overview__item:nth-child(1) {
    grid-area: 1/1/2/3;
  }
  .p-about-overview__item:nth-child(2) {
    grid-area: 2/2/3/3;
    max-width: 21vw;
  }
  .p-about-overview__item:nth-child(3) {
    margin-top: 0;
  }
}
@media print, screen and (min-width: 1200px) {
  .p-about-overview__item:nth-child(1) {
    grid-area: 1/1/2/2;
  }
  .p-about-overview__item:nth-child(2) {
    grid-area: 1/2/3/3;
    max-width: 31.2rem;
  }
}

.p-about-lined-img {
  position: relative;
  display: flex;
  margin-top: 2.5rem;
  background-color: linear-gradient(180deg, #fff 0%, #fff 35%, #006ab7 35%, #006ab7 100%);
  background: -webkit-linear-gradient(-90deg, #fff 0%, #fff 35%, #006ab7 35%, #006ab7 100%);
  background: -moz-linear-gradient(-90deg, #fff 0%, #fff 35%, #006ab7 35%, #006ab7 100%);
}
@media print, screen and (min-width: 762px) {
  .p-about-lined-img {
    margin-top: 1rem;
  }
}

.p-about-lined-img__item {
  border-radius: 1rem;
  height: 18.75vw;
  width: 33.3333333333%;
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
}
@media print, screen and (min-width: 762px) {
  .p-about-lined-img__item {
    border-radius: 2rem;
  }
}
.p-about-lined-img__item:nth-child(1) {
  background-image: url(../../assets/img/company/about_img_numbers01.webp);
}
.p-about-lined-img__item:nth-child(2) {
  margin-top: 2.5rem;
  background-image: url(../../assets/img/company/about_img_numbers02.webp);
}
@media print, screen and (min-width: 762px) {
  .p-about-lined-img__item:nth-child(2) {
    margin-top: 5rem;
  }
}
@media print, screen and (min-width: 1600px) {
  .p-about-lined-img__item:nth-child(2) {
    margin-top: 10rem;
  }
}
.p-about-lined-img__item:nth-child(3) {
  background-image: url(../../assets/img/company/about_img_numbers03.webp);
}

.p-about-card-container {
  margin-top: 2rem;
  gap: 1rem;
}
@media print, screen and (min-width: 762px) {
  .p-about-card-container {
    gap: 2.5rem;
  }
}
.p-about-card-container--large {
  gap: 5rem;
}

.p-about-card {
  gap: 2.5rem;
}

.p-about-card__heading {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
}

.p-about-card__heading-eng {
  font-size: 1.2rem;
  color: #003890;
  text-align: center;
}
@media print, screen and (min-width: 1200px) {
  .p-about-card__heading-eng {
    font-size: 1.4rem;
  }
}

.p-about-card__heading-main {
  font-size: 1.8rem;
  font-weight: bold;
  text-align: center;
}

.p-about-card-content__img-box {
  display: flex;
  align-items: center;
  justify-content: center;
}

.p-about-card-content__value-set {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  margin-top: 1rem;
}

.p-about-card-content__value-title {
  font-size: 1.5rem;
}
@media print, screen and (min-width: 762px) {
  .p-about-card-content__value-title {
    font-size: 1.6rem;
  }
}

.p-about-card-content__text {
  margin-top: 2rem;
}
@media print, screen and (min-width: 762px) {
  .p-about-card-content__text {
    font-size: 1.6rem;
  }
}
.p-about-card-content__text--note {
  margin-top: 3rem;
}
@media print, screen and (min-width: 762px) {
  .p-about-card-content__text--bold {
    font-size: 2.4rem;
    font-weight: bold;
  }
}
.p-about-card-content__text--background-space {
  letter-spacing: -0.05em;
}

.p-about-card-content__container-wrap {
  display: flex;
  justify-content: center;
}
.p-about-card-content__container-wrap--col2 {
  gap: 4rem;
}
.p-about-card-content__container-wrap--col3 {
  gap: 0.5rem;
}
@media print, screen and (min-width: 762px) {
  .p-about-card-content__container-wrap--col3 {
    gap: 4rem;
  }
}

.p-about-card-content__value-set-wrap {
  display: flex;
  justify-content: center;
}
.p-about-card-content__value-set-wrap--col2 {
  gap: 4rem;
}
.p-about-card-content__value-set-wrap--col3 {
  gap: 1rem;
}
@media print, screen and (min-width: 762px) {
  .p-about-card-content__value-set-wrap--col3 {
    justify-content: center;
    gap: 4rem;
  }
}

.p-about-card-content__value {
  position: relative;
  white-space: nowrap;
}

.p-about-card-content__value-note {
  position: absolute;
  right: 0;
  bottom: -1rem;
  font-size: 1rem;
}

.p-about-card__item-figure {
  flex: 1;
  color: #003890;
  font-family: "Roboto", sans-serif;
  font-size: clamp(5rem, 14vw, 10.8rem);
  font-weight: bold;
  line-height: 1;
}
@media screen and (max-width: 761px) {
  .p-about-card__item-figure {
    font-size: clamp(4rem, 13.4vw, 5rem);
  }
}
@media print, screen and (min-width: 762px) {
  .p-about-card__item-figure {
    font-size: clamp(5rem, 4vw, 8rem);
  }
}
.p-about-card__item-figure--decimal {
  letter-spacing: -0.5rem;
}
.p-about-card__item-figure--large {
  font-size: 6rem;
}
@media print, screen and (min-width: 1200px) {
  .p-about-card__item-figure--large {
    font-size: 8rem;
  }
}

.p-about-card__item-unit {
  color: #003890;
  font-size: clamp(1.6rem, 2vw, 2rem);
  font-weight: bold;
  letter-spacing: normal;
}

.p-about-basic-salary-container > * + * {
  margin-top: 2.5rem;
}
@media print, screen and (min-width: 762px) {
  .p-about-basic-salary-container > * + * {
    margin-top: 5rem;
  }
}

.p-about-basic-salary {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: space-between;
  padding-right: 0.5rem;
  padding-left: 0.5rem;
}
.p-about-basic-salary:not(:last-child) {
  padding-bottom: 1.5rem;
}
@media print, screen and (min-width: 762px) {
  .p-about-basic-salary:not(:last-child) {
    padding-bottom: 0;
  }
}
.p-about-basic-salary + .p-about-basic-salary {
  border-top: 1px solid #ccd8d4;
  padding-top: 1.5rem;
}
@media print, screen and (min-width: 762px) {
  .p-about-basic-salary + .p-about-basic-salary {
    border-top: none;
    border-left: 1px solid #ccd8d4;
    padding-top: 0;
  }
}

.p-about-basic-salary__heading {
  font-size: 2rem;
  font-weight: bold;
  font-feature-settings: "palt";
  line-height: 1.4;
  text-align: center;
  word-break: keep-all;
  overflow-wrap: anywhere;
}

.p-about-basic-salary__item {
  font-weight: bold;
}
.p-about-basic-salary__item > * + * {
  padding-left: 0.5rem;
}

.p-about-table-sp {
  display: block;
}
@media print, screen and (min-width: 762px) {
  .p-about-table-sp {
    display: none;
  }
}

.p-about-table-sp__title {
  border-right: 1px solid #083927;
  border-left: 1px solid #083927;
  padding: 1.5rem;
  background-color: #006ab7;
  text-align: center;
  color: #fff;
}
.p-about-table-sp__title:first-of-type {
  border-top: 1px solid #083927;
}

.p-about-table-pc {
  display: none;
}
@media print, screen and (min-width: 762px) {
  .p-about-table-pc {
    display: block;
  }
}

.p-about-conclusion-box {
  position: relative;
  padding-top: 4.5rem;
}
@media print, screen and (min-width: 762px) {
  .p-about-conclusion-box {
    padding-top: 8rem;
  }
}
.p-about-conclusion-box::before {
  content: "";
  position: absolute;
  top: 1.5rem;
  right: calc(50% - 1.5rem);
  display: block;
  height: 1.5rem;
  width: 3rem;
  background-color: #e5f0f8;
  clip-path: polygon(0 0, 100% 0%, 50% 100%);
}
@media print, screen and (min-width: 762px) {
  .p-about-conclusion-box::before {
    top: 2.5rem;
    right: calc(50% - 3rem);
    display: block;
    height: 3rem;
    width: 6rem;
  }
}

.p-about-annotation-box {
  row-gap: 1.5rem;
  margin-top: 1.5rem;
}
@media print, screen and (min-width: 762px) {
  .p-about-annotation-box {
    row-gap: 2.5rem;
    margin-top: 2.5rem;
  }
}

.p-permanent-sub-heading {
  margin-bottom: 1rem;
}
@media print, screen and (min-width: 762px) {
  .p-permanent-sub-heading {
    margin-bottom: 1.5rem;
  }
}

@media print, screen and (min-width: 762px) {
  .p-permanent-structure-container {
    gap: 2.5rem 5rem;
  }
}

.p-permanent-structure__item > * + * {
  margin-top: 1rem;
}
@media print, screen and (min-width: 1200px) {
  .p-permanent-structure__item > * + * {
    margin-top: 1.5rem;
  }
}
@media print, screen and (min-width: 1200px) {
  .p-permanent-structure__item:nth-child(1) {
    grid-area: 1/1/2/2;
  }
  .p-permanent-structure__item:nth-child(2) {
    grid-area: 2/1/3/2;
  }
}

.p-permanent-structure__item-img {
  margin: 1rem auto 2.5rem;
  max-width: 66%;
}
@media print, screen and (min-width: 762px) {
  .p-permanent-structure__item-img {
    grid-area: 1/2/3/3;
    margin-top: 0;
    margin-bottom: 0;
    max-width: 100%;
  }
}

.p-permanent-reason-item {
  display: flex;
  flex-direction: column;
  gap: 1.5rem;
}
.p-permanent-reason-item--demerit {
  display: grid;
  grid-template-rows: subgrid;
}

.p-permanent-reason-item__icon {
  top: 2.2rem;
  left: 2.5rem;
}
@media print, screen and (min-width: 762px) {
  .p-permanent-reason-item__icon {
    top: 3.4rem;
    left: 5rem;
  }
}

.p-permanent-reason-item__inner {
  display: flex;
  flex-direction: column;
  gap: 1.5rem;
  flex-grow: 1;
}

.p-permanent-reason-item__heading * + * {
  margin-top: 1rem;
}

.p-permanent-reason-item__text {
  flex: 1;
}
.p-permanent-reason-item__text * + * {
  margin-top: 1rem;
}

.p-permanent-reason-item__img {
  margin-right: auto;
  margin-left: auto;
}

.p-permanent-reason__sub-heading {
  display: inline;
  width: fit-content;
  background: linear-gradient(transparent 60%, #e5f0f8 60%);
}

.p-permanent-solution-container {
  margin-top: 2.5rem;
}
@media print, screen and (min-width: 762px) {
  .p-permanent-solution-container {
    margin-top: 4rem;
  }
}

.p-permanent-solution-item + .p-permanent-solution-item {
  margin-top: 2.5rem;
}

.p-permanent-solution-card {
  display: grid;
  grid-template-columns: 1fr;
  border-radius: 1rem;
  box-shadow: 0 3px 3px rgba(8, 57, 39, 0.15);
}
@media print, screen and (min-width: 762px) {
  .p-permanent-solution-card {
    grid-template-columns: 1fr 2fr;
    border-radius: 2rem;
  }
}

.p-permanent-solution-card__icon {
  margin-bottom: 1.5rem;
}

.p-permanent-solution-card__img {
  border-radius: 1rem 1rem 0 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
@media print, screen and (min-width: 762px) {
  .p-permanent-solution-card__img {
    border-radius: 2rem 0 0 2rem;
  }
}

.p-permanent-solution-card__inner {
  border-radius: 0 0 1rem 1rem;
  padding: 2.5rem;
  background-color: #fff;
}
@media print, screen and (min-width: 762px) {
  .p-permanent-solution-card__inner {
    border-radius: 0 2rem 2rem 0;
    padding: 5rem;
  }
}

.p-permanent-solution-button-list {
  display: flex;
  flex-direction: column;
  gap: 2.5rem;
}
@media print, screen and (min-width: 1200px) {
  .p-permanent-solution-button-list {
    flex-direction: row;
    justify-content: flex-end;
    gap: 5rem;
  }
}

.p-permanent-solution-button-list__item {
  align-self: flex-end;
}

/* people */
.p-people {
  display: grid;
  grid-template-columns: 1fr;
  grid-auto-rows: auto;
  gap: 5rem;
  margin-top: 2.5rem;
}
@media print, screen and (min-width: 762px) {
  .p-people {
    gap: 10rem 5rem;
  }
}
@media print, screen and (min-width: 620px) {
  .p-people {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media print, screen and (min-width: 1080px) {
  .p-people {
    grid-template-columns: repeat(3, 1fr);
  }
}

.p-people__item {
  display: flex;
  flex-direction: column;
  row-gap: 1rem;
  border: 1px solid #006ab7;
  overflow: hidden;
  padding-bottom: 2rem;
}

.p-people-card {
  position: relative;
}
@media (hover: hover) and (pointer: fine) {
  .p-people-card:hover .p-people-card__img img {
    transform: scale(1.1);
    transition-duration: 0.25s, 0.25s;
  }
}
@media print and (hover: hover) and (pointer: fine), screen and (hover: hover) and (pointer: fine) and (min-width: 1200px) {
  .p-people-card:hover .p-people-card__img::after {
    content: "→";
    display: flex;
    align-items: center;
    justify-content: center;
    position: absolute;
    border-radius: 50%;
    height: 4rem;
    width: 4rem;
    font-size: 2rem;
    font-weight: 500;
    color: #fff;
    border: 1px solid transparent;
    background-color: #006ab7;
    transition-duration: 0.25s;
  }
}

.p-people-card__category-icon {
  display: block;
  position: absolute;
  top: 0;
  right: 0;
  width: 17rem;
  padding: 0.5rem;
  color: #fff;
  font-weight: bold;
  line-height: 1.4;
  text-align: center;
}
.p-people-card__category-icon--medicine {
  background-color: #589bcf;
}
.p-people-card__category-icon--chemical {
  background-color: #8dD470;
}
.p-people-card__category-icon--food-cosmetics {
  background-color: #ff8997;
}
.p-people-card__category-icon--service {
  background-color: #f7a73f;
}

.p-people-card__img-wrapper {
  position: relative;
  margin-bottom: 1.5rem;
}
.p-people-card__img-wrapper .p-people-card__img-icon {
  position: absolute;
  bottom: 0.5rem;
  right: 0.5rem;
}
@media print, screen and (min-width: 762px) {
  .p-people-card__img-wrapper .p-people-card__img-icon {
    bottom: 1rem;
    right: 1rem;
  }
}
.p-people-card__img-wrapper .p-people-card__img {
  position: relative;
  overflow: hidden;
  background-color: #ccc;
}
.p-people-card__img-wrapper .p-people-card__img::after {
  content: "→";
  display: flex;
  align-items: center;
  justify-content: center;
  position: absolute;
  bottom: 1rem;
  right: 1rem;
  border-radius: 50%;
  height: 4rem;
  width: 4rem;
  font-size: 2rem;
  font-weight: 500;
  color: #006ab7;
  border: 1px solid transparent;
  background-color: #fff;
  transition-duration: 0.25s;
}
.p-people-card__img-wrapper img {
  height: 100%;
  width: 100%;
  aspect-ratio: 14/15;
  transition-duration: 0.25s;
}
.p-people-card__inner {
  display: flex;
  flex-direction: column;
  row-gap: 1rem;
}

.p-people-card__heading {
  font-size: 2.4rem;
  font-weight: bold;
  line-height: 1.6;
  padding: 0 2rem;
}
@media print, screen and (min-width: 762px) {
  .p-people-card__heading {
    font-size: 2rem;
  }
}
.p-people-card__heading--job {
  padding: 0 1rem;
  font-size: 1.8rem;
  color: #fff;
}
@media print, screen and (min-width: 762px) {
  .p-people-card__heading--job {
    font-size: 2rem;
  }
}

.p-people-card__text {
  padding: 0 2rem;
  font-size: 1.2rem;
}
@media print, screen and (min-width: 762px) {
  .p-people-card__text {
    font-size: 1.4rem;
  }
}
.p-people-card__text--job {
  padding: 0 1rem;
  color: #fff;
  font-size: 1.2rem;
}
@media print, screen and (min-width: 762px) {
  .p-people-card__text--job {
    font-size: 1.4rem;
  }
}

.p-people-card__keyword {
  display: inline-block;
  margin-left: 1rem;
  padding-inline: 0.5rem;
  border: 1px solid #888;
}

.p-people__no-result-text {
  padding: 5rem 2rem;
  text-align: center;
  font-weight: bold;
}
@media print, screen and (min-width: 762px) {
  .p-people__no-result-text {
    padding: 5rem;
  }
}

.p-voice-hero-wrapper {
  position: relative;
}

.p-voice-hero {
  position: relative;
  padding-bottom: 5rem;
}
@media print, screen and (min-width: 1200px) {
  .p-voice-hero {
    display: flex;
    flex-direction: row-reverse;
    margin-top: 10rem;
  }
  .p-voice-hero::after {
    content: "";
    position: absolute;
    top: -10rem;
    left: 0;
    display: block;
    height: 69rem;
    width: 65%;
    background-color: #e5f0f8;
    z-index: -2;
  }
}

.p-voice-hero__img-box {
  height: 26rem;
  width: 100%;
  padding-top: 70%;
  background-position: top;
  background-repeat: no-repeat;
  background-size: cover;
}
.p-voice-hero__img-box--voice01 {
  background-image: url(../../assets/img/people/people_img_voice01.webp);
}
.p-voice-hero__img-box--voice08 {
  background-image: url(../../assets/img/people/people_img_voice08.webp);
}
.p-voice-hero__img-box--voice09 {
  background-image: url(../../assets/img/people/people_img_voice09.webp);
}
.p-voice-hero__img-box--voice10 {
  background-image: url(../../assets/img/people/people_img_voice10.webp);
}
.p-voice-hero__img-box--voice11 {
  background-image: url(../../assets/img/people/people_img_voice11.webp);
}
.p-voice-hero__img-box--voice12 {
  background-image: url(../../assets/img/people/people_img_voice12.webp);
}
.p-voice-hero__img-box--voice13 {
  background-image: url(../../assets/img/people/people_img_voice13.webp);
}
.p-voice-hero__img-box--voice14 {
  background-image: url(../../assets/img/people/people_img_voice14.webp);
}
.p-voice-hero__img-box--voice16 {
  background-image: url(../../assets/img/people/people_img_voice16.webp);
}
.p-voice-hero__img-box--voice17 {
  background-image: url(../../assets/img/people/people_img_voice17.webp);
}
.p-voice-hero__img-box--voice18 {
  background-image: url(../../assets/img/people/people_img_voice18.webp);
}
.p-voice-hero__img-box--voice19 {
  background-image: url(../../assets/img/people/people_img_voice19.webp);
}
.p-voice-hero__img-box--voice20 {
  background-image: url(../../assets/img/people/people_img_voice20.webp);
}
.p-voice-hero__img-box--voice21 {
  background-image: url(../../assets/img/people/people_img_voice21.webp);
}
.p-voice-hero__img-box--voice22 {
  background-image: url(../../assets/img/people/people_img_voice22.webp);
}
.p-voice-hero__img-box--voice23 {
  background-image: url(../../assets/img/people/people_img_voice23.webp);
}
.p-voice-hero__img-box--voice24 {
  background-image: url(../../assets/img/people/people_img_voice24.webp);
}
.p-voice-hero__img-box--voice25 {
  background-image: url(../../assets/img/people/people_img_voice25.webp);
}
@media print, screen and (min-width: 1200px) {
  .p-voice-hero__img-box {
    position: relative;
    flex-basis: 65%;
    height: 72.4rem;
    margin: 0;
    padding-top: 0;
    z-index: -1;
  }
}

.p-voice-hero__content-box {
  padding: 5rem 2rem 2rem 2rem;
  background-color: #e5f0f8;
}
.p-voice-hero__content-box > * + * {
  margin-top: 3rem;
}
@media print, screen and (min-width: 1200px) {
  .p-voice-hero__content-box {
    position: absolute;
    top: 0;
    left: clamp(5rem, 50vw - 60rem, 100%);
    background-color: transparent;
  }
  .p-voice-hero__content-box > * + * {
    margin-top: 7.5rem;
  }
}

@media print, screen and (min-width: 1200px) {
  .p-voice-hero__title-box {
    margin-left: -5rem;
  }
}
@media print, screen and (min-width: 1600px) {
  .p-voice-hero__title-box {
    margin-left: -10rem;
  }
}

.p-voice-hero__title {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  row-gap: 0.5rem;
}
.p-voice-hero__title span {
  background-color: #fff;
  color: #003890;
  font-size: 2.8rem;
  font-weight: bold;
}
@media print, screen and (min-width: 1200px) {
  .p-voice-hero__title {
    row-gap: 1.5rem;
  }
  .p-voice-hero__title span {
    font-size: 6rem;
  }
}

.p-voice-hero-icon {
  display: inline-block;
  margin-right: 0.5rem;
  padding: 0.5rem 1rem;
  border-radius: 0.5rem;
  color: #fff;
}
.p-voice-hero-icon--bio {
  background-color: #f7a73f;
}
.p-voice-hero-icon--chemical {
  background-color: #5da7e1;
}

.p-voice-hero__info > * + * {
  margin-top: 1rem;
}
@media print, screen and (min-width: 1200px) {
  .p-voice-hero__info > * + * {
    margin-top: 3rem;
  }
}

.p-voice-hero__industry {
  color: #003890;
}

.p-voice-content-wrapper + .p-voice-content-wrapper {
  margin-top: 5rem;
}
@media print, screen and (min-width: 762px) {
  .p-voice-content-wrapper + .p-voice-content-wrapper {
    margin-top: 10rem;
  }
}

.p-eu-heading {
  color: #003890;
  font-size: 2rem;
  font-weight: bold;
  letter-spacing: 0.1em;
  text-align: center;
}
@media print, screen and (min-width: 1200px) {
  .p-eu-heading {
    font-size: 3rem;
    text-align: left;
  }
}

.p-voice-content-box {
  position: relative;
}
.p-voice-content-box--stack01, .p-voice-content-box--stack02 {
  display: flex;
  flex-direction: column;
  margin-inline: -2rem;
}
@media print, screen and (min-width: 762px) {
  .p-voice-content-box--stack01, .p-voice-content-box--stack02 {
    margin-inline: -5rem;
  }
}
@media print, screen and (min-width: 1200px) {
  .p-voice-content-box--stack01, .p-voice-content-box--stack02 {
    flex-direction: row;
    margin-inline: auto;
  }
}
@media print, screen and (min-width: 1200px) {
  .p-voice-content-box--stack01 {
    justify-content: flex-end;
  }
}

.p-voice-content-box__img-box {
  position: relative;
  z-index: 3;
  overflow: hidden;
}
.p-voice-content-box__img-box--stack01 img {
  transform: translateX(-4rem);
}
.p-voice-content-box__img-box--stack02 img {
  transform: translateX(4rem);
}
@media print, screen and (min-width: 1200px) {
  .p-voice-content-box__img-box {
    position: absolute;
    width: 50vw;
    max-width: 80rem;
    height: 64rem;
    margin: 0;
    z-index: 1;
  }
  .p-voice-content-box__img-box--stack01 {
    left: calc(50% - 50vw);
  }
  .p-voice-content-box__img-box--stack02 {
    right: calc(50% - 50vw);
  }
}
@media print, screen and (min-width: 1600px) {
  .p-voice-content-box__img-box {
    width: 67%;
  }
  .p-voice-content-box__img-box--stack01 {
    left: calc(50% - 82rem);
  }
  .p-voice-content-box__img-box--stack02 {
    right: calc(50% - 82rem);
  }
}
.p-voice-content-box__img-box img {
  display: block;
  width: 100%;
}
@media print, screen and (min-width: 1200px) {
  .p-voice-content-box__img-box img {
    transform: none;
  }
}

.p-voice-content-box__text-box {
  position: relative;
  width: 100%;
  margin-top: -8rem;
  padding: 2rem;
  padding-top: 10rem;
  background-color: #e5f0f8;
  z-index: 2;
}
@media print, screen and (min-width: 1200px) {
  .p-voice-content-box__text-box {
    width: 67%;
    max-width: 80rem;
    margin-top: 15rem;
    padding: 10rem;
  }
}

.p-voice-content-box__title {
  padding-inline: 2rem;
}
.p-voice-content-box__title + * {
  margin-top: 3rem;
}
@media print, screen and (min-width: 1200px) {
  .p-voice-content-box__title {
    padding-inline: 0;
  }
  .p-voice-content-box__title + * {
    margin-top: 4rem;
  }
}

.p-voice-content-box__text {
  padding-inline: 2rem;
}
.p-voice-content-box__text > * + * {
  margin-top: 1.5rem;
}
@media print, screen and (min-width: 1200px) {
  .p-voice-content-box__text {
    padding-inline: 0;
  }
  .p-voice-content-box__text > * + * {
    margin-top: 2rem;
  }
}

/* timeline */
.p-time-line-box {
  position: relative;
  padding-left: 6rem;
}
@media print, screen and (min-width: 1200px) {
  .p-time-line-box {
    padding-left: 9rem;
  }
}

.p-time-line-box__item {
  position: relative;
  padding: 0 0 1.5rem 2rem;
  text-align: left;
}
@media print, screen and (min-width: 1200px) {
  .p-time-line-box__item {
    padding: 0 0 2.5rem 2.5rem;
  }
}
.p-time-line-box__item--line::before {
  content: "";
  display: block;
  position: absolute;
  width: 0.4rem;
  height: 100%;
  top: 1.5rem;
  left: -0.2rem;
  background-color: #e5f0f8;
}
.p-time-line-box__item--dot::after {
  content: "";
  display: block;
  position: absolute;
  top: 10px;
  left: -5px;
  height: 1rem;
  width: 1rem;
  border-radius: 50%;
  background-color: #e5f0f8;
  z-index: 2;
}
.p-time-line-box__item--introduction-eu-pl::before {
  background-color: #EFF8FE;
}
.p-time-line-box__item--introduction-eu-pl::after {
  background-color: #589BCF;
}
.p-time-line-box__item--introduction-eu-cm::before {
  background-color: #F3FBEF;
}
.p-time-line-box__item--introduction-eu-cm::after {
  background-color: #88D470;
}
.p-time-line-box__item--introduction-eu-fc::before {
  background-color: #FFF5F6;
}
.p-time-line-box__item--introduction-eu-fc::after {
  background-color: #FF8997;
}
.p-time-line-box__item--introduction-eu-pri::before {
  background-color: #FFFDE2;
}
.p-time-line-box__item--introduction-eu-pri::after {
  background-color: #F7A73F;
}

.p-time-line-box__item-time {
  position: absolute;
  top: 0;
  left: -6rem;
  font-weight: bold;
}
@media print, screen and (min-width: 1200px) {
  .p-time-line-box__item-time {
    top: -0.25rem;
    left: -7.5rem;
    font-size: 2rem;
  }
}
.p-time-line-box__item-time--introduction-eu-pl {
  color: #589BCF;
  font-size: 1.6rem;
}
@media print, screen and (min-width: 1200px) {
  .p-time-line-box__item-time--introduction-eu-pl {
    font-size: 1.8rem;
  }
}
.p-time-line-box__item-time--introduction-eu-cm {
  color: #88D470;
  font-size: 1.6rem;
}
@media print, screen and (min-width: 1200px) {
  .p-time-line-box__item-time--introduction-eu-cm {
    font-size: 1.8rem;
  }
}
.p-time-line-box__item-time--introduction-eu-fc {
  color: #FF8997;
  font-size: 1.6rem;
}
@media print, screen and (min-width: 1200px) {
  .p-time-line-box__item-time--introduction-eu-fc {
    font-size: 1.8rem;
  }
}
.p-time-line-box__item-time--introduction-eu-pri {
  color: #F7A73F;
  font-size: 1.6rem;
}
@media print, screen and (min-width: 1200px) {
  .p-time-line-box__item-time--introduction-eu-pri {
    font-size: 1.8rem;
  }
}

.p-time-line-box__item-title {
  font-weight: bold;
  margin-bottom: 1rem;
}

.p-time-line-box__item-detail {
  font-size: 1.2rem;
}
@media print, screen and (min-width: 762px) {
  .p-time-line-box__item-detail {
    font-size: 1.6rem;
  }
}

.p-work-content__model {
  display: flex;
  align-items: center;
}

.p-work-content__model-img {
  width: 8rem;
  height: 8rem;
  flex-shrink: 0;
}
@media print, screen and (min-width: 1200px) {
  .p-work-content__model-img {
    width: 10rem;
    height: 10rem;
  }
}

.p-work-content__model-detail {
  margin-left: 1.5rem;
  font-size: 1.2rem;
  font-weight: bold;
}
@media print, screen and (min-width: 1200px) {
  .p-work-content__model-detail {
    margin-left: 2rem;
    font-size: 1.6rem;
  }
}

.p-work-content__schedule > * + * {
  margin-top: 1.5rem;
}
@media print, screen and (min-width: 1200px) {
  .p-work-content__schedule > * + * {
    margin-top: 2rem;
  }
}

/* job */
.p-job-interview {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 1rem 2.5rem;
  margin-top: 1.5rem;
}
@media print, screen and (min-width: 762px) {
  .p-job-interview {
    grid-template-columns: repeat(3, minmax(auto, 28rem));
  }
}
@media (min-width: 1300px) {
  .p-job-interview {
    grid-template-columns: repeat(4, minmax(auto, 28rem));
  }
}

.p-job-interview__item {
  display: grid;
  grid-template-rows: subgrid;
  grid-row: span 4;
  row-gap: 1rem;
}

.p-introduction {
  display: flex;
  flex-direction: column;
  row-gap: 2.5rem;
  margin-top: 2.5rem;
}
@media print, screen and (min-width: 1200px) {
  .p-introduction {
    display: grid;
    grid-template-columns: 1fr 48rem;
    grid-auto-rows: auto;
    gap: 5rem;
    margin-top: 5rem;
  }
}

@media print, screen and (min-width: 1200px) {
  .p-introduction__item:nth-child(1) {
    grid-area: 1/2/2/3;
  }
}

.p-introduction-project {
  margin-top: 2.5rem;
}
@media print, screen and (min-width: 762px) {
  .p-introduction-project {
    margin-top: 5rem;
  }
}

.p-placement-container {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  grid-auto-rows: auto;
  gap: 1.5rem;
}
@media print, screen and (min-width: 762px) {
  .p-placement-container {
    gap: 5rem;
  }
}
@media (min-width: 1300px) {
  .p-placement-container {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    grid-auto-rows: auto;
  }
}

.p-placement-item {
  padding: 2.5rem;
  background-color: #fff;
}
.p-placement-item > * + * {
  margin-top: 1.5rem;
}
@media print, screen and (min-width: 762px) {
  .p-placement-item {
    padding: 5rem;
  }
}
@media (min-width: 1300px) {
  .p-placement-item--colspan {
    grid-column: span 2;
  }
}

.p-placement-item-inner {
  display: flex;
  flex-direction: column;
  row-gap: 5rem;
}
@media (min-width: 1300px) {
  .p-placement-item-inner {
    flex-direction: row;
    justify-content: space-between;
    column-gap: 5rem;
  }
  .p-placement-item-inner > * {
    width: calc(50% - 2.5rem);
  }
}

.p-placement-item__text {
  line-height: 1.75;
}
@media print, screen and (min-width: 762px) {
  .p-placement-item__text {
    line-height: 2.5;
  }
}

.p-placement-results-box {
  display: grid;
  gap: 5rem;
  grid-template-columns: minmax(0, 1fr);
  margin-top: 5rem;
}
@media print, screen and (min-width: 762px) {
  .p-placement-results-box {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}
@media print, screen and (min-width: 1200px) {
  .p-placement-results-box {
    gap: 10rem;
  }
}

.p-placement-results-box__item > * + * {
  margin-top: 1.5rem;
}
@media print, screen and (min-width: 762px) {
  .p-placement-results-box__item > * + * {
    margin-top: 2rem;
  }
}

.p-placement-results-box__item-img {
  display: flex;
  justify-content: center;
}

.p-placement-results-box__item-title {
  font-weight: bold;
  text-align: center;
}
@media print, screen and (min-width: 762px) {
  .p-placement-results-box__item-title {
    font-size: 1.8rem;
  }
}

/* environment */
.p-education-container + .p-education-container {
  margin-top: 5rem;
}
.p-education-container > * + * {
  margin-top: 5rem;
}

.p-support-container {
  margin-top: 2.5rem;
}

.p-support-item + .p-support-item {
  margin-top: 2.5rem;
}

.p-support-item__heading {
  margin-bottom: 2rem;
  font-size: 2rem;
  font-weight: bold;
  line-height: 1.4;
}

/* info */
.p-info-link + .p-info-link {
  margin-top: 2.5rem;
}
.p-info-link > * + * {
  margin-top: 1rem;
}

.p-info-link-list {
  display: flex;
  flex-wrap: wrap;
  gap: 1.5rem;
}
@media print, screen and (min-width: 762px) {
  .p-info-link-list {
    gap: 2.5rem;
  }
}
@media print, screen and (min-width: 1200px) {
  .p-info-link-list {
    flex-wrap: nowrap;
  }
}

.p-info-link-list__item {
  width: 100%;
}
@media print, screen and (min-width: 762px) {
  .p-info-link-list__item {
    max-width: 26.2rem;
    width: calc(33.3333333333% - 1.6666666667rem);
  }
}
.p-info-link-list__item--step {
  max-width: 26.2rem;
}

.p-info__button-container {
  display: grid;
  align-items: center;
  gap: 1rem 1.5rem;
  grid-template-columns: 1fr;
  width: 100%;
  max-width: 32rem;
  margin-inline: auto;
}
@media screen and (min-width: 950px) {
  .p-info__button-container {
    grid-auto-flow: column;
    grid-template-columns: repeat(3, 1fr);
    justify-content: center;
    max-width: 98rem;
  }
}

.p-grad__button {
  display: grid;
  grid-template-columns: 1fr;
  grid-template-rows: 1fr;
  justify-items: center;
  align-items: center;
  margin-top: 2.5rem;
}
@media print, screen and (min-width: 762px) {
  .p-grad__button {
    margin-top: 5rem;
  }
}

.p-info-index-content {
  display: flex;
  flex-direction: column;
  gap: 9.5rem;
}
@media print, screen and (min-width: 762px) {
  .p-info-index-content {
    gap: 8rem;
  }
}

.p-info-index-card {
  display: flex;
  flex-grow: 1;
  flex-direction: column;
  container-type: inline-size;
  border: 1px solid #006ab7;
  background-color: #fff;
  overflow: hidden;
  gap: 1.5rem;
  padding: 3rem 2rem;
}
@media print, screen and (min-width: 1200px) {
  .p-info-index-card {
    align-items: center;
    flex-direction: row;
    gap: 2rem 5rem;
    padding: 5rem 10rem;
  }
}
.p-info-index-card:has(.p-button-sub:hover) .p-info-index-card__img-link .p-info-index-card__img {
  transform: scale(1.1);
  transition-duration: 0.25s, 0.25s;
}
.p-info-index-card:has(.p-info-index-card__img-link:hover) .p-button-sub::after {
  border: solid 1px #006ab7;
  background-color: #fff;
  color: #006ab7;
}
.p-info-index-card:has(.p-info-index-card__img-link:hover) .p-button-sub__text {
  color: #006ab7;
}

.p-info-index-card__content {
  display: contents;
}
@media print, screen and (min-width: 1200px) {
  .p-info-index-card__content {
    display: flex;
    flex-direction: column;
    row-gap: 2rem;
  }
}

.p-info-index-card__title {
  order: 1;
  font-size: 2rem;
  font-weight: bold;
}
@media print, screen and (min-width: 1200px) {
  .p-info-index-card__title {
    order: 0;
    font-size: 3rem;
  }
}

.p-info-index-card__img-link {
  order: 3;
  width: 100%;
  overflow: hidden;
}
@media print, screen and (min-width: 762px) {
  .p-info-index-card__img-link {
    max-width: 45rem;
    margin-inline: auto;
  }
}
@media print, screen and (min-width: 1200px) {
  .p-info-index-card__img-link {
    order: 0;
  }
}
@media (hover: hover) and (pointer: fine) {
  .p-info-index-card__img-link:hover .p-info-index-card__img {
    transform: scale(1.1);
    transition-duration: 0.25s, 0.25s;
  }
}

.p-info-index-card__img {
  width: 100%;
}

.p-info-index-card__text {
  order: 2;
}
@media print, screen and (min-width: 1200px) {
  .p-info-index-card__text {
    order: 0;
  }
}

.p-info-index-card__button-box {
  display: flex;
  justify-content: flex-end;
  order: 4;
}
@media print, screen and (min-width: 1200px) {
  .p-info-index-card__button-box {
    order: 0;
  }
}

.p-info-type__faq-title {
  font-size: 2.2rem;
  font-weight: bold;
  margin-bottom: 1.8rem;
}
@media print, screen and (min-width: 762px) {
  .p-info-type__faq-title {
    font-size: 2rem;
    margin-bottom: 2rem;
  }
}

.p-scroll-x {
  overflow-x: auto;
  margin-right: -2rem;
}
@media print, screen and (min-width: 762px) {
  .p-scroll-x {
    margin-right: 0;
  }
}
.p-scroll-x > * {
  margin-right: 2rem;
}
@media print, screen and (min-width: 762px) {
  .p-scroll-x > * {
    margin-right: 0;
  }
}
.p-scroll-x--inner {
  margin-right: 0;
}

.p-scroll-img {
  min-width: 96rem;
}
@media print, screen and (min-width: 762px) {
  .p-scroll-img {
    min-width: unset;
  }
}

.p-scroll-x-finger {
  font-size: 1.2rem;
  margin-bottom: 1rem;
}
.p-scroll-x-finger::before {
  content: "";
  display: inline-block;
  margin-right: 1rem;
  height: 2.3rem;
  width: 2rem;
  background: url(../../assets/img/cmn/cmn_icon_swipe.webp) no-repeat center center/contain;
  vertical-align: middle;
}
@media print, screen and (min-width: 762px) {
  .p-scroll-x-finger--sp {
    display: none;
  }
}
@media print, screen and (min-width: 1200px) {
  .p-scroll-x-finger--sp-tab {
    display: none;
  }
}

/* career-plan 　下層パーツ*/
.p-preface {
  display: flex;
  flex-direction: column;
  gap: 2.5rem;
}
@media print, screen and (min-width: 762px) {
  .p-preface {
    gap: 4rem;
  }
}

.p-preface__text {
  display: flex;
  flex-direction: column;
  gap: 3rem;
}
@media print, screen and (min-width: 762px) {
  .p-preface__text--center-pc {
    text-align: center;
  }
}

.p-plan {
  display: flex;
  flex-direction: column;
  gap: 7rem;
}
@media print, screen and (min-width: 762px) {
  .p-plan {
    gap: 10rem;
  }
}

.p-plan-overview {
  display: grid;
  gap: 4rem;
  grid-template-rows: repeat(3, 1fr);
}
@media print, screen and (min-width: 762px) {
  .p-plan-overview {
    flex-direction: row;
    gap: 1.5rem;
    grid-template-rows: 1fr;
    grid-template-columns: repeat(3, 1fr);
  }
}

.p-plan-card {
  background-color: #fff;
}
.p-plan-card--overview {
  position: relative;
  margin-top: 3rem;
  border: 1px solid #888;
  border-top: 0;
  padding: 3rem 2rem 2rem 2rem;
}
@media print, screen and (min-width: 1200px) {
  .p-plan-card--overview {
    padding: 4rem 3rem 3rem 3rem;
  }
}
.p-plan-card--overview::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  width: 100%;
  height: 0.1rem;
  background: linear-gradient(to right, #888 0%, #888 42.5%, transparent 42.5%, transparent 57.5%, #888 57.5%, #888 100%);
}
.p-plan-card--detail {
  padding: 2rem;
  border: 1px solid #888;
}
@media print, screen and (min-width: 1200px) {
  .p-plan-card--detail {
    padding: 5rem 10rem;
  }
}
.p-plan-card--skill {
  padding: 2rem;
  border: solid 1px #00AF70;
}
.p-plan-card--position {
  padding: 2rem;
  border: 1px solid #888;
  border-radius: 4px;
}
@media print, screen and (min-width: 1200px) {
  .p-plan-card--position {
    width: calc((100% - 3rem) / 3);
    font-size: 1.6rem;
  }
}

.p-plan-overview__inner {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 2rem;
}

.p-plan-overview-number {
  font-size: 4rem;
  font-weight: bold;
  line-height: 1.2;
  text-align: center;
  margin-bottom: 1rem;
  margin-top: -6.5rem;
}
.p-plan-overview-number--continue {
  color: #f7a73f;
}
.p-plan-overview-number--transfer {
  color: #589bcf;
}
.p-plan-overview-number--group {
  color: #88d470;
}

.p-plan-overview__title {
  font-weight: bold;
  font-size: 1.8rem;
  line-height: 1.6;
  text-align: center;
}
@media print, screen and (min-width: 762px) {
  .p-plan-overview__title {
    font-size: 2.4rem;
  }
}

.p-plan-overview__item {
  font-weight: bold;
  line-height: 1.6;
  text-align: center;
}
@media print, screen and (min-width: 762px) {
  .p-plan-overview__item {
    font-size: 1.8rem;
    text-align: start;
  }
}
@media print, screen and (min-width: 1200px) {
  .p-plan-overview__item {
    font-size: 1.8rem;
    text-align: center;
  }
}

.p-plan-overview__img {
  width: 100%;
}
.p-text-markar--continue-light {
  background: linear-gradient(transparent 65%, #feedd8 65%);
}
.p-text-markar--transfer-light {
  background: linear-gradient(transparent 65%, #ddebf6 65%);
}
.p-text-markar--group-light {
  background: linear-gradient(transparent 65%, #e7f7e2 65%);
}
.p-text-markar--continue-dark {
  background: linear-gradient(transparent 65%, #feecc1 65%);
}
.p-text-markar--transfer-dark {
  background: linear-gradient(transparent 65%, #d0e5f4 65%);
}
.p-text-markar--group-dark {
  background: linear-gradient(transparent 65%, #def4d5 65%);
}
.p-text-markar--in-house {
  background: linear-gradient(transparent 65%, #FDE9D0 65%);
}
.p-text-markar--technical {
  background: linear-gradient(transparent 65%, #FFE2E5 65%);
}
.p-text-markar--skills {
  background: linear-gradient(transparent 65%, #E2F4DC 65%);
}
.p-text-markar--career {
  background: linear-gradient(transparent 65%, #D6E6F3 65%);
}
.p-text-markar--main {
  background: linear-gradient(transparent 65%, #CCE1F1 65%);
}

.p-plan-merit-card {
  padding: 2rem;
  background-color: #fff;
}
@media print, screen and (min-width: 1200px) {
  .p-plan-merit-card {
    padding: 3rem;
  }
}
.p-plan-merit-card--continue {
  background-color: #fff;
  border: #f7a73f solid 1px;
  padding: 3rem 2rem 2rem;
}
@media print, screen and (min-width: 1200px) {
  .p-plan-merit-card--continue {
    background-color: #fffde2;
  }
}
.p-plan-merit-card--transfer {
  background-color: #fff;
  border: #589bcf solid 1px;
  padding: 3rem 2rem 2rem;
}
@media print, screen and (min-width: 1200px) {
  .p-plan-merit-card--transfer {
    background-color: #eff8fe;
  }
}
.p-plan-merit-card--group {
  background-color: #fff;
  border: #88d470 solid 1px;
  padding: 3rem 2rem 2rem;
}
@media print, screen and (min-width: 1200px) {
  .p-plan-merit-card--group {
    background-color: #f3fBef;
  }
}

.p-plan-details-wrapper {
  display: flex;
  flex-direction: column;
  gap: 3rem;
}
@media print, screen and (min-width: 1200px) {
  .p-plan-details-wrapper {
    gap: 4rem;
  }
}

.p-plan-detail {
  display: flex;
  flex-direction: column;
  gap: 3rem;
}
@media print, screen and (min-width: 1200px) {
  .p-plan-detail {
    gap: 4rem;
  }
}

.p-plan-detail__title {
  font-size: 1.8rem;
  font-weight: bold;
  letter-spacing: 0.1em;
  line-height: 1.6;
  padding-left: 3.8rem;
  text-indent: -3.8rem;
}
@media print, screen and (min-width: 1200px) {
  .p-plan-detail__title {
    font-size: 3rem;
  }
}
.p-plan-detail__title--continue {
  color: #f7a73f;
}
.p-plan-detail__title--transfer {
  color: #589bcf;
}
.p-plan-detail__title--group {
  color: #88d470;
}

.p-plan-detail__inner {
  display: flex;
  flex-direction: column;
  gap: 2.5rem;
}
@media print, screen and (min-width: 1200px) {
  .p-plan-detail__inner {
    gap: 4rem;
  }
}

.p-plan-detail__item {
  display: grid;
  gap: 2rem;
}
@media print, screen and (min-width: 1200px) {
  .p-plan-detail__item {
    grid-template-columns: 1fr 45rem;
    grid-template-rows: max-content 1fr;
    gap: 3rem 5rem;
  }
}

.p-plan-detail__list-text {
  letter-spacing: -0.07em;
}

.p-plan-merit__inner {
  display: flex;
  flex-direction: column;
  gap: 2.5rem;
}
@media print, screen and (min-width: 1200px) {
  .p-plan-merit__inner {
    flex-direction: row;
    gap: 3.5rem;
  }
}

.p-plan-merit__content {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 1rem;
}
@media print, screen and (min-width: 1200px) {
  .p-plan-merit__content {
    gap: 2rem;
    width: calc((100% - 70px) / 3);
  }
}

.p-plan-detail__img {
  width: 100%;
}
@media print, screen and (min-width: 1200px) {
  .p-plan-detail__img {
    grid-area: 1/2/3/3;
  }
}

@media print, screen and (min-width: 1200px) {
  .p-plan-detail__text {
    grid-area: 1/1/2/1;
  }
}

@media print, screen and (min-width: 1200px) {
  .p-plan-detail__recommend {
    grid-area: 2/1/3/1;
  }
}

.p-plan-detail__recommend-heading {
  font-weight: bold;
}
.p-plan-detail__recommend-heading--continue {
  color: #f7a73f;
}
.p-plan-detail__recommend-heading--transfer {
  color: #589bcf;
}
.p-plan-detail__recommend-heading--group {
  color: #88d470;
}
@media print, screen and (min-width: 1200px) {
  .p-plan-detail__recommend-heading {
    font-size: 1.8rem;
  }
}

.p-plan-merit__icon {
  border-radius: 7.5rem;
  width: 15rem;
  height: 15rem;
  display: flex;
  align-items: center;
  justify-content: center;
}
.p-plan-merit__icon--continue {
  border: 1px solid #f7a73f;
  background-color: #fffde2;
}
.p-plan-merit__icon--transfer {
  border: 1px solid #589bcf;
  background-color: #eff8fe;
}
.p-plan-merit__icon--group {
  border: 1px solid #88d470;
  background-color: #f3fBef;
}
@media print, screen and (min-width: 1200px) {
  .p-plan-merit__icon {
    border-radius: 9rem;
    width: 18rem;
    height: 18rem;
    background-color: #fff;
  }
}

.p-plan-merit__heading {
  font-weight: bold;
}

.p-plan-detail-card {
  padding: 2rem;
  background-color: #fff;
  border-radius: 1rem;
}
@media print, screen and (min-width: 1200px) {
  .p-plan-detail-card {
    padding: 3rem;
    border-radius: 2rem;
  }
}

.p-plan-detail-list__heading {
  font-size: 1.8rem;
  font-weight: bold;
  line-height: 1.6;
  margin-bottom: 2rem;
}
@media print, screen and (min-width: 1200px) {
  .p-plan-detail-list__heading {
    font-size: 2.4rem;
  }
}

.p-plan-detail-list__title {
  color: #589BCF;
  font-weight: bold;
}
@media print, screen and (min-width: 1200px) {
  .p-plan-detail-list__title {
    font-size: 1.8rem;
  }
}

.p-plan-training {
  display: flex;
  flex-direction: column;
  gap: 3rem;
  align-items: center;
}
@media print, screen and (min-width: 762px) {
  .p-plan-training {
    gap: 4rem;
    text-align: center;
  }
}
.p-plan-training--border {
  border-bottom: solid 2px #00AF70;
  padding-bottom: 3rem;
  margin-bottom: 3rem;
}
@media print, screen and (min-width: 1200px) {
  .p-plan-training--border {
    padding-bottom: 5rem;
    margin-bottom: 5rem;
  }
}

.p-plan-training__image {
  margin-bottom: 2.5rem;
}
@media print, screen and (min-width: 762px) {
  .p-plan-training__image {
    margin-bottom: 5rem;
  }
}

.p-plan-growth {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 3rem;
}

.p-plan-growth__heading {
  font-weight: bold;
  margin-bottom: 2rem;
}

.p-plan-growth__button {
  width: 100%;
  max-width: 23.5rem;
}
@media print, screen and (min-width: 1200px) {
  .p-plan-growth__button {
    max-width: 32rem;
    margin-top: 1rem;
  }
}

.p-plan-growth__skill {
  display: flex;
  flex-direction: column;
  gap: 1rem;
}
@media print, screen and (min-width: 1200px) {
  .p-plan-growth__skill {
    flex-direction: row;
    gap: 1.5rem;
  }
}

.p-plan-growth__inner {
  display: flex;
  flex-direction: column;
  gap: 2rem;
  align-items: center;
}

.p-plan-growth__title {
  font-weight: bold;
}

.p-plan-growth__img {
  width: 100%;
}

.p-plan-position__wrapper {
  display: flex;
  flex-direction: column;
  gap: 1.5rem;
}
@media print, screen and (min-width: 1200px) {
  .p-plan-position__wrapper {
    gap: 2rem;
  }
}

.p-plan-position {
  display: flex;
  flex-direction: column;
  align-items: center;
}

.p-plan-position__card {
  display: flex;
  justify-content: center;
  width: 100%;
  padding: 2rem;
  border: 1px solid #888;
  border-radius: 4px;
}

.p-plan-position__content {
  display: flex;
  gap: 1.5rem;
  justify-content: space-around;
  width: 100%;
  height: 3.8rem;
}

.p-plan-position__arrow {
  position: relative;
}
.p-plan-position__arrow:after {
  content: "";
  position: absolute;
  display: block;
  top: 1rem;
  left: 50%;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 20px 20px 0 20px;
  transform: translateX(-50%);
  border-color: #888 transparent transparent transparent;
}

.p-plan-position__field {
  display: flex;
  flex-direction: column;
  gap: 1rem;
}
@media print, screen and (min-width: 1200px) {
  .p-plan-position__field {
    flex-direction: row;
    gap: 1.5rem;
  }
}

.p-plan-position__inner {
  display: flex;
  flex-direction: column;
  gap: 2rem;
  align-items: center;
}

.p-plan-position__title {
  font-weight: bold;
  color: #88D470;
}

.p-plan-position__img {
  width: 100%;
}

/* vision わたしたちの想い */
.p-vision-bg {
  position: relative;
  display: block;
  background-color: #fff;
  width: 100%;
  height: 100%;
  overflow: hidden;
  background-size: cover;
  background-repeat: no-repeat;
  background-image: url(../../assets/img/info/vision_bg_sp.webp);
}
@media print, screen and (min-width: 762px) {
  .p-vision-bg {
    background-image: url(../../assets/img/info/vision_bg_pc.webp);
    background-position: center top;
  }
}

.p-vision-card {
  background-color: #fff;
  border: 1px solid #888;
  padding: 3rem 2rem;
  margin: 0 1rem;
}
@media print, screen and (min-width: 1200px) {
  .p-vision-card {
    padding: 10rem 5rem;
    margin: 0;
  }
}

.p-vision-card__inner {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 2.5rem;
}
@media print, screen and (min-width: 1200px) {
  .p-vision-card__inner {
    gap: 7rem;
    text-align: center;
  }
}

.p-vision-card__heading {
  font-weight: bold;
  color: #003890;
  font-size: 2rem;
  line-height: 1.8;
  text-align: center;
}
@media print, screen and (min-width: 1200px) {
  .p-vision-card__heading {
    font-size: 4rem;
    line-height: 1.6;
  }
}

.p-vision-card__text {
  display: flex;
  flex-direction: column;
  gap: 3rem;
  font-size: 1.6rem;
  font-weight: 500;
}
@media print, screen and (min-width: 1200px) {
  .p-vision-card__text {
    gap: 5rem;
    font-size: 2.4rem;
    font-weight: bold;
  }
}

/* message トップメッセージ */
.p-message-main-bg {
  width: 100%;
  overflow: hidden;
  background-position: center right -25vw;
  background-repeat: no-repeat;
  background-size: cover;
  background-image: url(../../assets/img/company/message_bg.webp);
}
@media print, screen and (min-width: 1200px) {
  .p-message-main-bg {
    background-position: center center;
  }
}

.p-message-main {
  padding: 2rem 3rem;
  display: inline-flex;
  flex-direction: column;
  gap: 0;
  justify-content: center;
  min-height: 67vw;
}
@media print, screen and (min-width: 1200px) {
  .p-message-main {
    padding: 4rem 20rem;
    gap: 0;
    min-height: 36vw;
  }
}

.p-message-content__item {
  display: flex;
  flex-direction: column;
  gap: 2.5rem;
}
@media print, screen and (min-width: 762px) {
  .p-message-content__item {
    gap: 4rem;
    margin-right: 0;
  }
}

.p-message-content__image {
  border-radius: 1rem 0 0 1rem;
  overflow: hidden;
  width: 100%;
  height: auto;
  max-width: 55rem;
  margin-left: 3rem;
}
.p-message-content__image > img {
  width: 100%;
}
@media print, screen and (min-width: 1200px) {
  .p-message-content__image {
    border-radius: 2rem 0 0 2rem;
    margin-left: 0;
  }
}
.p-message-content__image--right {
  border-radius: 0 1rem 1rem 0;
  margin-right: 3rem;
  margin-left: 0;
}
@media print, screen and (min-width: 1200px) {
  .p-message-content__image--right {
    border-radius: 0 2rem 2rem 0;
    margin-right: 0;
  }
}

.p-message-content-left {
  display: grid;
  gap: 5rem;
  margin-bottom: 5rem;
}
@media print, screen and (min-width: 1200px) {
  .p-message-content-left {
    grid-template-columns: 1fr 35vw;
    gap: 10rem;
  }
}

.p-message-content .p-message-content__item {
  margin-right: 0;
}

.p-message-content-right {
  display: grid;
  gap: 5rem;
}
@media print, screen and (min-width: 1200px) {
  .p-message-content-right {
    grid-template-columns: 35vw 1fr;
    gap: 10rem;
  }
  .p-message-content-right .p-message-content__item {
    margin-top: 10rem;
    grid-area: 1/2/2/3;
  }
  .p-message-content-right .p-message-content__image {
    grid-area: 1/1/2/2;
  }
}

.p-message-grid-container {
  display: grid;
  gap: 5rem 0;
  grid-template-columns: 2rem 3rem 1fr 3rem 2rem;
  grid-template-rows: 1fr;
}
@media print, screen and (min-width: 1200px) {
  .p-message-grid-container {
    grid-template-columns: calc((100% - 130rem) / 2) 1fr 1.2fr 1fr calc((100% - 130rem) / 2);
    gap: 10rem 0;
  }
}
.p-message-grid-container .p-message-grid-container__item1 {
  display: flex;
  flex-direction: column;
  gap: 2.5rem;
  grid-column: 2/5;
}
@media print, screen and (min-width: 1200px) {
  .p-message-grid-container .p-message-grid-container__item1 {
    gap: 4rem;
    grid-column: 2/4;
    padding: 0 10rem 0 5rem;
  }
}
.p-message-grid-container .p-message-grid-container__item2 {
  display: flex;
  grid-column: 3/6;
  background: url(../../assets/img/company/message_img_01.webp) center top/cover no-repeat;
  justify-self: end;
  aspect-ratio: 11/8;
  width: 100%;
  max-height: 40rem;
}
@media print, screen and (min-width: 1200px) {
  .p-message-grid-container .p-message-grid-container__item2 {
    grid-column: 4/6;
  }
}
.p-message-grid-container .p-message-grid-container__item3 {
  display: flex;
  flex-direction: column;
  gap: 2.5rem;
  grid-column: 2/5;
}
@media print, screen and (min-width: 1200px) {
  .p-message-grid-container .p-message-grid-container__item3 {
    gap: 4rem;
    padding: 0 5rem;
  }
}
.p-message-grid-container .p-message-grid-container__item4 {
  display: flex;
  grid-column: 1/4;
  background: url(../../assets/img/company/message_img_02.webp) center top/cover no-repeat;
  justify-self: start;
  aspect-ratio: 11/10;
  width: 100%;
  max-height: 50rem;
}
@media print, screen and (min-width: 1200px) {
  .p-message-grid-container .p-message-grid-container__item4 {
    grid-column: 1/3;
  }
}
.p-message-grid-container .p-message-grid-container__item5 {
  display: flex;
  flex-direction: column;
  gap: 2.5rem;
  grid-column: 2/5;
}
@media print, screen and (min-width: 1200px) {
  .p-message-grid-container .p-message-grid-container__item5 {
    gap: 4rem;
    grid-column: 3/5;
    padding: 10rem 5rem 0 10rem;
  }
}

.p-message-catch {
  width: 100%;
}

.p-message-catch-img {
  width: 50vw;
}
@media print, screen and (min-width: 1200px) {
  .p-message-catch-img {
    width: 35.25vw;
  }
}

.p-message-name {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem 1rem;
  align-items: baseline;
  width: 100%;
  color: #fff;
}
@media print, screen and (min-width: 762px) {
  .p-message-name {
    gap: 3rem;
  }
}
@media print, screen and (min-width: 1200px) {
  .p-message-name {
    padding-left: 20rem;
    width: 100%;
  }
}
.p-message-name .p-message-name__yakusyoku {
  font-size: 1.2rem;
}
@media print, screen and (min-width: 762px) {
  .p-message-name .p-message-name__yakusyoku {
    font-size: 1.8rem;
  }
}
.p-message-name .p-message-name__name {
  font-size: 1.5rem;
}
@media print, screen and (min-width: 762px) {
  .p-message-name .p-message-name__name {
    font-size: 3rem;
  }
}

/* message 早わかり */
.p-about-company {
  display: grid;
  gap: 2.5rem 6rem;
}
@media print, screen and (min-width: 762px) {
  .p-about-company {
    grid-template-columns: 60% 1fr;
    grid-template-rows: max-content 1fr;
  }
}
@media print, screen and (min-width: 762px) {
  .p-about-company .p-about-company__heading {
    grid-area: 1/1/2/2;
  }
}
.p-about-company .p-about-company__image {
  width: 100%;
  max-width: max-content;
  margin: 0 auto;
}
@media print, screen and (min-width: 762px) {
  .p-about-company .p-about-company__image {
    grid-area: 1/2/3/3;
  }
}
@media print, screen and (min-width: 762px) {
  .p-about-company .p-about-company__text {
    grid-area: 2/1/3/2;
  }
}

.p-about-company-data {
  display: flex;
  flex-direction: column;
  gap: 1.5rem 6rem;
}
@media print, screen and (min-width: 762px) {
  .p-about-company-data {
    flex-direction: row-reverse;
    justify-content: space-between;
    align-items: start;
  }
}
.p-about-company-data .p-about-company__image {
  width: 100%;
  max-width: max-content;
  margin: 0 auto;
}
.p-about-company-data .p-about-company__text p + p {
  margin-top: 3rem;
}
@media print, screen and (min-width: 762px) {
  .p-about-company-data .p-about-company__text {
    width: 60%;
  }
}
.p-about-company-data .p-about-company__button {
  display: flex;
  justify-content: center;
  margin-top: 1.5rem;
}
@media print, screen and (min-width: 762px) {
  .p-about-company-data .p-about-company__button {
    justify-content: flex-start;
    margin-top: 2rem;
  }
}
.p-about-company-data .p-about-company-data__caption {
  font-weight: bold;
  text-align: center;
}
.p-about-company-data .p-about-company-data__item {
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 1rem;
  align-items: center;
}
@media print, screen and (min-width: 762px) {
  .p-about-company-data {
    gap: 2rem;
    margin: 0 auto;
  }
}

.p-about-company-data__figure {
  font-weight: bold;
  text-align: center;
  color: #003890;
  line-height: 1;
  overflow: hidden;
  font-size: 15rem;
  margin-bottom: 1rem;
}
@media print, screen and (min-width: 762px) {
  .p-about-company-data__figure {
    margin-bottom: 0;
  }
}

.p-about-attraction {
  display: grid;
  gap: 1.5rem;
}
@media print, screen and (min-width: 1200px) {
  .p-about-attraction {
    gap: 3rem;
    grid-template-columns: repeat(6, 1fr);
  }
}

.p-about-attraction__card {
  padding: 2rem;
  border: 1px solid #888;
  background-color: #e5f0f8;
  box-shadow: 0 3px 3px rgba(8, 57, 39, 0.15);
}
@media print, screen and (min-width: 1200px) {
  .p-about-attraction__card {
    padding: 5rem 4rem 4rem 4rem;
  }
  .p-about-attraction__card:nth-child(1) {
    grid-area: 1/1/2/3;
  }
  .p-about-attraction__card:nth-child(2) {
    grid-area: 1/3/2/5;
  }
  .p-about-attraction__card:nth-child(3) {
    grid-area: 1/5/2/7;
  }
}

.p-about-attraction__inner {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 1.5rem;
}
@media print, screen and (min-width: 762px) {
  .p-about-attraction__inner {
    font-size: 1.6rem;
  }
}
@media print, screen and (min-width: 1200px) {
  .p-about-attraction__inner {
    gap: 2rem;
  }
}

.p-about-attraction__icon {
  width: 100%;
  max-width: 9rem;
}

.p-about-attraction__heading {
  font-weight: bold;
  letter-spacing: 0.035em;
  line-height: 1.8;
  text-align: center;
}
@media print, screen and (min-width: 1200px) {
  .p-about-attraction__heading {
    font-size: 1.8rem;
  }
}

.p-about-results {
  display: flex;
  gap: 5rem;
  flex-direction: column;
}
@media print, screen and (min-width: 1200px) {
  .p-about-results {
    gap: 10rem;
    margin: 0 auto;
    padding: 0 5rem;
    flex-direction: row;
  }
}

.p-about-results__graph {
  display: flex;
  gap: 1.5rem;
  flex-direction: column;
  align-items: center;
}
@media print, screen and (min-width: 1200px) {
  .p-about-results__graph {
    gap: 2rem;
  }
}

.p-about-results__image {
  width: 100%;
  max-width: 25rem;
}

.p-about-results__heading {
  font-weight: bold;
  line-height: 1.8;
  text-align: center;
}
@media print, screen and (min-width: 1200px) {
  .p-about-results__heading {
    font-size: 1.8rem;
  }
}

@media print, screen and (min-width: 1200px) {
  .p-about-card-content--overtime {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 5rem;
  }
}

/* filter */
.p-filter-wrapper {
  padding: 2rem 0;
  background-color: #e5f0f8;
}
@media print, screen and (min-width: 1200px) {
  .p-filter-wrapper {
    padding: 5rem 0;
  }
}

.p-filter {
  width: 100%;
  max-width: 120rem;
  margin: 0 auto;
}
@media print, screen and (min-width: 1200px) {
  .p-filter {
    padding: 0;
  }
}

.p-filter__clear-btn-werapper {
  margin-top: 1rem;
}

.p-filter__clear-btn {
  padding: 0;
  color: #006ab7;
  font-size: 1.2rem;
  background-color: transparent;
  cursor: pointer;
}
@media print and (hover: hover) and (pointer: fine), screen and (min-width: 1200px) and (hover: hover) and (pointer: fine) {
  .p-filter__clear-btn:hover {
    text-decoration: underline;
  }
}

.p-filter-body {
  margin-top: 0;
}

.p-filter-title {
  margin-bottom: 2rem;
}

.p-filter-list {
  display: flex;
  align-items: baseline;
}
.p-filter-list + .p-filter-list {
  margin-top: 1rem;
}
@media print, screen and (min-width: 762px) {
  .p-filter-list + .p-filter-list {
    margin-top: 2rem;
  }
}

.p-filter-list__title {
  width: 7.5rem;
  font-size: 1.2rem;
  font-weight: bold;
  transform: translateY(-0.25rem);
}
@media print, screen and (min-width: 762px) {
  .p-filter-list__title {
    width: 9.5rem;
    font-size: 1.4rem;
  }
}

.p-filter-list__wrapper {
  width: calc(100% - 6.5rem);
  flex-grow: 1;
}
@media print, screen and (min-width: 762px) {
  .p-filter-list__wrapper {
    width: calc(100% - 8rem);
  }
}

.p-filter-list__contents {
  display: flex;
  flex-wrap: wrap;
  gap: 1rem;
  font-size: 1.2rem;
}
@media print, screen and (min-width: 762px) {
  .p-filter-list__contents {
    gap: 1rem 1.5rem;
    font-size: 1.6rem;
  }
}

.p-filter-list__item {
  letter-spacing: 0;
}
@media print and (hover: hover) and (pointer: fine), screen and (min-width: 1200px) and (hover: hover) and (pointer: fine) {
  .p-filter-list__item:hover .p-people-card__img img {
    opacity: 0.4;
  }
}
.p-filter-list__item label {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  min-width: 4.5rem;
  padding: 0.25rem 1rem;
  border-radius: 1.75rem;
  background: #fff;
  cursor: pointer;
  transition: background 0.3s cubic-bezier(0.215, 0.61, 0.355, 1), color 0.3s cubic-bezier(0.215, 0.61, 0.355, 1);
}
@media print, screen and (min-width: 762px) {
  .p-filter-list__item label {
    min-width: 7rem;
  }
}
@media print, screen and (min-width: 1200px) {
  .p-filter-list__item label {
    padding: 0.25rem 2rem;
  }
}
.p-filter-list__item input[type=radio] {
  display: none;
}
.p-filter-list__item input[type=radio]:checked + label {
  background: #006ab7;
  color: #fff;
}

.is-hide {
  display: none;
}

/* talent 求める人物像 */
.p-talent-schematic {
  display: flex;
  gap: 2.5rem;
  align-items: center;
  flex-direction: column;
}
@media print, screen and (min-width: 1200px) {
  .p-talent-schematic {
    gap: 4rem;
    margin: 0 auto;
  }
}

.p-talent-results__image {
  width: 100%;
  max-width: 70rem;
}

.p-talent-results__text {
  text-align: center;
}

.p-talent__heading {
  font-weight: bold;
  font-size: 2rem;
  letter-spacing: 0.1em;
}
@media print, screen and (min-width: 1200px) {
  .p-talent__heading {
    font-size: 3rem;
  }
}
.p-talent__heading--bland {
  color: #003890;
}

.p-talent-message {
  display: flex;
  flex-direction: column;
  gap: 3rem;
  margin: 0 auto;
}
@media print, screen and (min-width: 1200px) {
  .p-talent-message {
    gap: 4rem;
    max-width: 78rem;
  }
}

.p-talent-message__item {
  display: flex;
  flex-direction: column;
  gap: 2.5rem;
}
@media print, screen and (min-width: 1200px) {
  .p-talent-message__item {
    gap: 4rem;
  }
}

.p-talent-message__image {
  width: 100%;
}
.p-talent-message__name {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
}
@media print, screen and (min-width: 1200px) {
  .p-talent-message__name {
    border-radius: 2rem;
  }
}

.p-talent-message__name-main {
  font-weight: bold;
  text-align: center;
}
@media print, screen and (min-width: 1200px) {
  .p-talent-message__name-main {
    font-size: 2.4rem;
  }
}
.p-talent-message__name-main--furigana {
  color: #003890;
  font-size: 1.2rem;
  font-weight: 500;
}
@media print, screen and (min-width: 1200px) {
  .p-talent-message__name-main--furigana {
    font-size: 1.6rem;
  }
}

.p-talent-message__name-position {
  text-align: center;
  font-size: 1.2rem;
}
@media print, screen and (min-width: 1200px) {
  .p-talent-message__name-position {
    font-size: 1.6rem;
    margin-top: 0.5rem;
  }
}

.p-talent-message__heading {
  font-weight: bold;
  margin-bottom: 1rem;
}
@media print, screen and (min-width: 1200px) {
  .p-talent-message__heading {
    font-size: 1.8rem;
  }
}

.p-talent-message__text {
  display: flex;
  flex-direction: column;
  gap: 5rem;
}

/* benefit フォロー体制・福利厚生 */
.p-benefit {
  display: flex;
  flex-direction: column;
  gap: 3rem;
}
@media print, screen and (min-width: 762px) {
  .p-benefit {
    gap: 4rem;
  }
}

.p-benefit-container > * + * {
  margin-top: 3rem;
}
@media print, screen and (min-width: 762px) {
  .p-benefit-container > * + * {
    margin-top: 4rem;
  }
}

.p-benefit-table__heading {
  margin-bottom: 1.5rem;
  font-weight: bold;
}
@media print, screen and (min-width: 762px) {
  .p-benefit-table__heading {
    font-size: 1.8rem;
    margin-bottom: 2rem;
  }
}

.p-benefit-card {
  padding: 3rem 2rem;
  margin: 0 1rem;
  border: 1px solid #888;
  border-radius: 0;
  background-color: #fff;
}
@media print, screen and (min-width: 1200px) {
  .p-benefit-card {
    padding: 10rem;
    margin: 0;
  }
}

.p-benefit-card__inner {
  display: flex;
  flex-direction: column;
  gap: 3rem;
}
@media print, screen and (min-width: 1200px) {
  .p-benefit-card__inner {
    gap: 5rem;
  }
}

.p-benefit-card__content {
  display: grid;
  gap: 1.5rem;
}
@media print, screen and (min-width: 1200px) {
  .p-benefit-card__content {
    grid-template-columns: 1fr 30rem;
    grid-template-rows: max-content 1fr;
    gap: 2rem 4rem;
  }
}
.p-benefit-card__content + .p-benefit-card__content {
  padding-top: 3rem;
  border-top: solid 1px #888;
}
@media print, screen and (min-width: 1200px) {
  .p-benefit-card__content + .p-benefit-card__content {
    padding-top: 5rem;
  }
}

.p-benefit-card__heading {
  font-weight: bold;
  margin-bottom: 0;
}
@media print, screen and (min-width: 1200px) {
  .p-benefit-card__heading {
    font-size: 1.8rem;
    grid-area: 1/1/2/2;
  }
}

.p-benefit-card__image {
  width: 100%;
}
@media print, screen and (min-width: 1200px) {
  .p-benefit-card__image {
    max-width: 30rem;
    grid-area: 1/2/3/3;
  }
}

@media print, screen and (min-width: 1200px) {
  .p-benefit-card__text {
    grid-area: 2/1/3/2;
  }
}

/* tab */
.p-tab-list-wrapper {
  padding-bottom: 0.6rem;
  overflow-x: auto;
  overflow-y: hidden;
}
@-moz-document url-prefix() {
  .p-tab-list-wrapper {
    scrollbar-width: thin;
    scrollbar-color: #ccc #eee;
  }
}
.p-tab-list-wrapper::-webkit-scrollbar {
  height: 0.5rem;
}
.p-tab-list-wrapper::-webkit-scrollbar-thumb {
  border-radius: 0.25rem;
  background: #ccc;
}
.p-tab-list-wrapper::-webkit-scrollbar-track {
  border: none;
  background: #eee;
}
@media print, screen and (min-width: 762px) {
  .p-tab-list-wrapper {
    padding-bottom: 1.2rem;
  }
}

.p-tab-list {
  display: flex;
  justify-content: space-between;
  min-width: 46rem;
  border: 1px solid #888;
  border-radius: 3.1rem;
  background-color: #f6f6f6;
}
@media print, screen and (min-width: 762px) {
  .p-tab-list {
    margin-bottom: 1.2rem;
    border-radius: 3.1rem;
  }
}

.p-tab-list__button {
  position: relative;
  cursor: pointer;
  width: 14rem;
  min-height: 6rem;
  margin: -0.1rem;
  padding-block: 0.5rem;
  border-radius: 3.1rem;
  line-height: 1.5;
}
.p-tab-list__button.is-active {
  box-shadow: 0 0.3rem 0.6rem rgba(0, 0, 0, 0.16);
  color: #fff;
  font-weight: bold;
}
.p-tab-list__button.is-active::after {
  position: absolute;
  bottom: -0.6rem;
  left: 50%;
  content: "";
  display: block;
  transform: translateX(-50%);
}
@media print, screen and (min-width: 762px) {
  .p-tab-list__button {
    width: 30rem;
    padding-block: 1.5rem;
    font-size: 1.8rem;
  }
  .p-tab-list__button.is-active {
    font-size: 2rem;
  }
  .p-tab-list__button.is-active::after {
    position: absolute;
    bottom: -1.2rem;
    left: 50%;
    content: "";
    display: block;
    transform: translateX(-50%);
  }
}
.p-tab-list__button[id=tab2].is-active {
  background-color: #589BCF;
}
.p-tab-list__button[id=tab2]::after {
  border-top: 0.6rem solid #589BCF;
  border-right: 0.6rem solid transparent;
  border-bottom: 0;
  border-left: 0.6rem solid transparent;
}
@media print, screen and (min-width: 762px) {
  .p-tab-list__button[id=tab2]::after {
    border-top: 1.2rem solid #589BCF;
    border-right: 1.2rem solid transparent;
    border-left: 1.2rem solid transparent;
  }
}
.p-tab-list__button[id=tab1].is-active {
  background-color: #FFB554;
}
.p-tab-list__button[id=tab1]::after {
  border-top: 1.2rem solid #FFB554;
  border-right: 1.2rem solid transparent;
  border-bottom: 0;
  border-left: 1.2rem solid transparent;
}
@media print, screen and (min-width: 762px) {
  .p-tab-list__button[id=tab1]::after {
    border-top: 1.2rem solid #FFB554;
    border-right: 1.2rem solid transparent;
    border-left: 1.2rem solid transparent;
  }
}
.p-tab-list__button[id=tab3].is-active {
  background-color: #88D470;
}
.p-tab-list__button[id=tab3]::after {
  border-top: 1.2rem solid #88D470;
  border-right: 1.2rem solid transparent;
  border-bottom: 0;
  border-left: 1.2rem solid transparent;
}
@media print, screen and (min-width: 762px) {
  .p-tab-list__button[id=tab3]::after {
    border-top: 1.2rem solid #88D470;
    border-right: 1.2rem solid transparent;
    border-left: 1.2rem solid transparent;
  }
}

.p-tab-panel {
  height: 0;
  opacity: 0;
  transition: opacity 0.1s;
  visibility: hidden;
}
.p-tab-panel.is-active {
  height: auto;
  opacity: 1;
  visibility: visible;
}

.p-tab-panel__inner {
  padding: 2rem;
}
@media print, screen and (min-width: 762px) {
  .p-tab-panel__inner {
    padding: 4rem 6rem;
  }
}
.p-tab-panel__inner--no-padding {
  padding: 0;
}
@media print, screen and (min-width: 762px) {
  .p-tab-panel__inner--no-padding {
    padding: 0;
  }
}
.p-tab-panel__inner + .p-tab-panel__inner {
  margin-top: 1rem;
}
@media print, screen and (min-width: 762px) {
  .p-tab-panel__inner + .p-tab-panel__inner {
    margin-top: 4rem;
  }
}

/* job */
.p-job-interview {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 1rem 2.5rem;
  margin-top: 1.5rem;
}
@media print, screen and (min-width: 762px) {
  .p-job-interview {
    grid-template-columns: repeat(3, minmax(auto, 28rem));
  }
}
@media (min-width: 1300px) {
  .p-job-interview {
    grid-template-columns: repeat(4, minmax(auto, 28rem));
  }
}

.p-job-interview__item {
  display: grid;
  grid-template-rows: subgrid;
  grid-row: span 4;
  row-gap: 1rem;
}

.p-introduction {
  display: flex;
  flex-direction: column;
  row-gap: 2.5rem;
  margin-top: 2.5rem;
}
@media print, screen and (min-width: 1200px) {
  .p-introduction {
    display: grid;
    grid-template-columns: 1fr 48rem;
    grid-auto-rows: auto;
    gap: 5rem;
    margin-top: 5rem;
  }
}

@media print, screen and (min-width: 1200px) {
  .p-introduction__item:nth-child(1) {
    grid-area: 1/2/2/3;
  }
}

.p-introduction-project {
  margin-top: 2.5rem;
}
@media print, screen and (min-width: 762px) {
  .p-introduction-project {
    margin-top: 5rem;
  }
}

.p-placement-container {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  grid-auto-rows: auto;
  gap: 1.5rem;
}
@media print, screen and (min-width: 762px) {
  .p-placement-container {
    gap: 5rem;
  }
}
@media (min-width: 1300px) {
  .p-placement-container {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    grid-auto-rows: auto;
  }
}

.p-placement-item {
  padding: 2.5rem;
  border: 1px solid #888;
  background-color: #fff;
}
.p-placement-item > * + * {
  margin-top: 1.5rem;
}
@media print, screen and (min-width: 762px) {
  .p-placement-item {
    padding: 5rem;
  }
}
@media (min-width: 1300px) {
  .p-placement-item--colspan {
    grid-column: span 2;
  }
}

.p-placement-item-inner {
  display: flex;
  flex-direction: column;
  row-gap: 5rem;
}
@media (min-width: 1300px) {
  .p-placement-item-inner {
    flex-direction: row;
    justify-content: space-between;
    column-gap: 5rem;
  }
  .p-placement-item-inner > * {
    width: calc(50% - 2.5rem);
  }
}

.p-placement-results-box {
  display: grid;
  gap: 5rem;
  grid-template-columns: minmax(0, 1fr);
  margin-top: 1.5rem;
}
@media print, screen and (min-width: 762px) {
  .p-placement-results-box {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    margin-top: 2rem;
  }
}
@media print, screen and (min-width: 1200px) {
  .p-placement-results-box {
    gap: 10rem;
  }
}

.p-placement-results-box__item > * + * {
  margin-top: 1.5rem;
}
@media print, screen and (min-width: 762px) {
  .p-placement-results-box__item > * + * {
    margin-top: 2rem;
  }
}

.p-placement-results-box__item-img {
  display: flex;
  justify-content: center;
}

.p-placement-results-box__item-title {
  font-weight: bold;
  text-align: center;
}
@media print, screen and (min-width: 762px) {
  .p-placement-results-box__item-title {
    font-size: 1.8rem;
  }
}

@media print, screen and (min-width: 762px) {
  .p-inpage-link-button-list--eu--center-pc {
    justify-content: center;
  }
}

.p-inpage-link-button-list__item--eu {
  width: 100%;
}
@media print, screen and (min-width: 762px) {
  .p-inpage-link-button-list__item--eu {
    max-width: calc((100% - 1rem) / 2);
  }
}
@media print, screen and (min-width: 1200px) {
  .p-inpage-link-button-list__item--eu {
    max-width: calc((100% - 3rem) / 4);
  }
}

.p-section-bg--introduction-eu-pl {
  padding: 2.5rem 0;
  background-color: #EFF8FE;
}
.p-section-bg--introduction-eu-pl .p-inpage-link-target {
  color: #589BCF;
}
@media print, screen and (min-width: 762px) {
  .p-section-bg--introduction-eu-pl {
    padding: 5rem 0;
  }
}
.p-section-bg--introduction-eu-cm {
  padding: 2.5rem 0;
  background-color: #F3FBEF;
}
.p-section-bg--introduction-eu-cm .p-inpage-link-target {
  color: #88D470;
}
@media print, screen and (min-width: 762px) {
  .p-section-bg--introduction-eu-cm {
    padding: 5rem 0;
  }
}
.p-section-bg--introduction-eu-fc {
  padding: 2.5rem 0;
  background-color: #FFF5F6;
}
.p-section-bg--introduction-eu-fc .p-inpage-link-target {
  color: #FF8997;
}
@media print, screen and (min-width: 762px) {
  .p-section-bg--introduction-eu-fc {
    padding: 5rem 0;
  }
}
.p-section-bg--introduction-eu-pri {
  padding: 2.5rem 0;
  background-color: #FFFDE2;
}
.p-section-bg--introduction-eu-pri .p-inpage-link-target {
  color: #F7A73F;
}
@media print, screen and (min-width: 762px) {
  .p-section-bg--introduction-eu-pri {
    padding: 5rem 0;
  }
}

.p-timeline {
  display: flex;
  flex-direction: column;
  margin-top: 2.5rem;
}
@media print, screen and (min-width: 762px) {
  .p-timeline {
    flex-direction: row;
    justify-content: space-between;
    column-gap: 5rem;
  }
}
@media print, screen and (min-width: 762px) {
  .p-timeline--eu {
    flex-direction: column;
    justify-content: start;
  }
}

.p-timeline__time::after--introduction-eu-pl {
  background-color: #589BCF;
}
.p-timeline__time::after--introduction-eu-cm {
  background-color: #88D470;
}
.p-timeline__time::after--introduction-eu-fc {
  background-color: #FF8997;
}
.p-timeline__time::after--introduction-eu-pri {
  background-color: #F7A73F;
}

.p-timeline-item::after--introduction-eu-pl {
  background-color: #EFF8FE;
}
.p-timeline-item::after--introduction-eu-cm {
  background-color: #F3FBEF;
}
.p-timeline-item::after--introduction-eu-fc {
  background-color: #FFF5F6;
}
.p-timeline-item::after--introduction-eu-pri {
  background-color: #FFFDE2;
}

.p-heading--introduction-eu-pl {
  color: #589BCF;
}
@media print, screen and (min-width: 762px) {
  .p-heading--introduction-eu-pl {
    font-size: 1.8rem;
  }
}
.p-heading--introduction-eu-pl + * {
  margin-top: 1.5rem;
}
@media print, screen and (min-width: 762px) {
  .p-heading--introduction-eu-pl + * {
    margin-top: 2rem;
  }
}
.p-heading--introduction-eu-cm {
  color: #88D470;
}
@media print, screen and (min-width: 762px) {
  .p-heading--introduction-eu-cm {
    font-size: 1.8rem;
  }
}
.p-heading--introduction-eu-cm + * {
  margin-top: 1.5rem;
}
@media print, screen and (min-width: 762px) {
  .p-heading--introduction-eu-cm + * {
    margin-top: 2rem;
  }
}
.p-heading--introduction-eu-fc {
  color: #FF8997;
}
@media print, screen and (min-width: 762px) {
  .p-heading--introduction-eu-fc {
    font-size: 1.8rem;
  }
}
.p-heading--introduction-eu-fc + * {
  margin-top: 1.5rem;
}
@media print, screen and (min-width: 762px) {
  .p-heading--introduction-eu-fc + * {
    margin-top: 2rem;
  }
}
.p-heading--introduction-eu-pri {
  color: #F7A73F;
}
@media print, screen and (min-width: 762px) {
  .p-heading--introduction-eu-pri {
    font-size: 1.8rem;
  }
}
.p-heading--introduction-eu-pri + * {
  margin-top: 1.5rem;
}
@media print, screen and (min-width: 762px) {
  .p-heading--introduction-eu-pri + * {
    margin-top: 2rem;
  }
}

/* education 研修制度 */
.p-education {
  display: flex;
  flex-direction: column;
  gap: 7rem;
}
@media print, screen and (min-width: 762px) {
  .p-education {
    gap: 10rem;
  }
}

.p-education-figure {
  width: 100%;
  margin-top: 7rem;
}
@media print, screen and (min-width: 1200px) {
  .p-education-figure {
    margin-top: 10rem;
  }
}
.p-education-figure > img {
  width: 100%;
}

@media print, screen and (min-width: 1200px) {
  .p-education-figure-img--sp {
    display: none;
  }
}
.p-education-figure-img--pc {
  display: none;
}
@media print, screen and (min-width: 1200px) {
  .p-education-figure-img--pc {
    display: block;
  }
}

.p-education-card {
  background-color: #fff;
  border: 1px solid #888;
  padding: 5rem 2rem;
  margin: 0;
}
@media print, screen and (min-width: 1200px) {
  .p-education-card {
    padding: 10rem;
    margin: 0;
  }
}

.p-education__inner {
  display: flex;
  flex-direction: column;
  gap: 5rem;
}
@media print, screen and (min-width: 1200px) {
  .p-education__inner {
    gap: 7rem;
  }
}

.p-education-overview {
  display: grid;
  gap: 2.5rem;
}
@media print, screen and (min-width: 762px) {
  .p-education-overview {
    gap: 4rem;
    grid-template-rows: max-content 1fr;
  }
}

.p-education-overview__image {
  width: 100%;
}
@media print, screen and (min-width: 762px) {
  .p-education-overview__image {
    max-width: 30rem;
    grid-area: 1/2/3/3;
  }
}

.p-education-detail {
  display: flex;
  flex-direction: column;
  gap: 5rem;
}
@media print, screen and (min-width: 762px) {
  .p-education-detail {
    gap: 7rem;
  }
}

.p-education-detail__content {
  display: flex;
  flex-direction: column;
  gap: 1.5rem;
}
@media print, screen and (min-width: 762px) {
  .p-education-detail__content {
    gap: 2rem;
  }
}

.p-education-detail__item {
  display: flex;
  flex-direction: column;
  gap: 1rem;
}

.p-education-box {
  display: flex;
  flex-direction: column;
  gap: 1rem;
  border: 1px solid #888;
  padding: 1rem;
}
@media print, screen and (min-width: 762px) {
  .p-education-box {
    padding: 2rem;
  }
}

.p-education-flow {
  display: flex;
  flex-direction: column;
  gap: 1rem;
}

.p-education-flow__inner {
  display: flex;
  flex-direction: column;
}
@media print, screen and (min-width: 762px) {
  .p-education-flow__inner {
    flex-direction: row;
  }
}

.p-education-flow__item {
  display: flex;
  flex-direction: column;
  border: 1px solid #888;
}
@media print, screen and (min-width: 762px) {
  .p-education-flow__item {
    width: calc((100% - 5rem) / 3);
    font-size: 1.6rem;
  }
}

.p-education-flow__annual {
  color: #fff;
  background-color: #589BCF;
  text-align: center;
  padding: 1rem 2rem;
}
@media print, screen and (min-width: 762px) {
  .p-education-flow__annual {
    padding: 1rem 2.5rem;
  }
}

.p-education-flow__employment {
  display: flex;
  flex-direction: column;
  gap: 1rem;
  padding: 2rem;
  flex-grow: 1;
}
@media print, screen and (min-width: 762px) {
  .p-education-flow__employment {
    padding: 2.5rem;
  }
}

.p-education-flow__system {
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 2rem;
  background-color: #EFF8FE;
  padding: 2rem;
}
@media print, screen and (min-width: 762px) {
  .p-education-flow__system {
    padding: 2.5rem;
    width: calc((100% - 5rem) / 3);
    font-size: 1.6rem;
  }
}

.p-education-flow__system-heading {
  font-weight: bold;
  color: #589BCF;
  text-align: center;
}

.p-education-flow__arrow {
  width: auto;
  height: 5rem;
  position: relative;
}
.p-education-flow__arrow::after {
  content: "";
  position: absolute;
  display: block;
  top: 1.5rem;
  left: 50%;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 20px 20px 0 20px;
  transform: translateX(-50%);
  border-color: #589BCF transparent transparent transparent;
}
@media print, screen and (min-width: 762px) {
  .p-education-flow__arrow {
    width: 5rem;
    height: auto;
  }
  .p-education-flow__arrow::after {
    content: "";
    position: absolute;
    display: block;
    top: 42%;
    left: 54%;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 20px 0px 20px 20px;
    transform: translateX(-50%);
    border-color: transparent transparent transparent #589BCF;
  }
}

/* permanent-dispatch */
.p-large-section__heading--permanent-dispatch-l {
  margin-bottom: 4rem;
}
.p-large-section__heading--permanent-dispatch-m {
  margin-bottom: 3rem;
}

.p-permanent-dispatch-catch-text {
  margin-bottom: 3rem;
}
.p-permanent-dispatch-catch-text--inner {
  margin-bottom: 2rem;
}

.p-permanent-dispatch-catch-text__paragraph {
  display: block;
}
.p-permanent-dispatch-catch-text__paragraph + .p-permanent-dispatch-catch-text__paragraph {
  margin-top: 3rem;
}

.p-number-box-list {
  display: grid;
  gap: 2.5rem;
  grid-template-columns: 1fr;
}
@media print, screen and (min-width: 762px) {
  .p-number-box-list {
    grid-template-columns: 1fr 1fr;
  }
}

.p-number-box-list__item {
  display: grid;
  gap: 1.5rem;
  grid-template-rows: subgrid;
  grid-row: span 3;
  position: relative;
  background-color: #fff;
  border: 1px solid #888;
  border-radius: 1rem;
  margin-top: 3rem;
  padding: 4rem 2rem 0;
}
@media print, screen and (min-width: 1200px) {
  .p-number-box-list__item {
    padding: 6.5rem 3rem 0;
    border-radius: 2rem;
  }
}

.p-number-box-list__item-number {
  position: absolute;
  top: -2.5rem;
  left: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  height: 5rem;
  width: 5rem;
  margin-bottom: 1rem;
  border-radius: 50%;
  background-color: #589BCF;
  color: #fff;
  font-size: 1.8rem;
  font-weight: bold;
  text-align: center;
  transform: translateX(-50%);
}
@media print, screen and (min-width: 1200px) {
  .p-number-box-list__item-number {
    top: -3.5rem;
    height: 7rem;
    width: 7rem;
  }
}

.p-number-box-list__item-title {
  font-weight: bold;
  font-size: 1.8rem;
}
.p-number-box-list__item-title--center {
  text-align: center;
}
@media print, screen and (min-width: 762px) {
  .p-number-box-list__item-title {
    font-size: 2rem;
  }
}

.p-number-box-list__item-img {
  width: 100%;
}

.p-md-box-wrapper {
  display: grid;
  grid-template-columns: 1fr;
  gap: 3rem 6rem;
}
@media print, screen and (min-width: 1200px) {
  .p-md-box-wrapper {
    grid-template-columns: 1fr 1fr;
  }
}

.p-merit-box {
  display: flex;
  flex-direction: column;
}

.p-merit-box__title {
  position: relative;
  flex-grow: 0;
  padding: 1.5rem 0;
  background-color: #006ab7;
  color: #fff;
  font-weight: bold;
  text-align: center;
}
@media print, screen and (min-width: 1200px) {
  .p-merit-box__title {
    font-size: 1.8rem;
  }
}
.p-merit-box__title::after {
  content: "";
  position: absolute;
  bottom: -1.5rem;
  left: 50%;
  width: 2rem;
  height: 2rem;
  background-color: #006ab7;
  transform: rotate(45deg) translateX(-50%);
}

.p-merit-box__content {
  flex-grow: 1;
  padding: 2rem;
  border: 1px solid #888;
  background-color: #e5f0f8;
  font-weight: bold;
}
@media print, screen and (min-width: 1200px) {
  .p-merit-box__content {
    padding: 4rem;
  }
}

.p-demerit-box {
  display: flex;
  flex-direction: column;
}

.p-demerit-box__title {
  position: relative;
  flex-grow: 0;
  padding: 1.5rem 0;
  background-color: #707070;
  color: #fff;
  font-weight: bold;
  text-align: center;
}
@media print, screen and (min-width: 1200px) {
  .p-demerit-box__title {
    font-size: 1.8rem;
  }
}
.p-demerit-box__title::after {
  content: "";
  position: absolute;
  bottom: -1.5rem;
  left: 50%;
  width: 2rem;
  height: 2rem;
  background-color: #707070;
  transform: rotate(45deg) translateX(-50%);
}

.p-demerit-box__content {
  flex-grow: 1;
  padding: 2rem;
  border: 1px solid #888;
  background-color: #f5f5f5;
  font-weight: bold;
}
@media print, screen and (min-width: 1200px) {
  .p-demerit-box__content {
    padding: 4rem;
  }
}

.p-border-box {
  display: flex;
  flex-direction: column;
  align-items: center;
  border: 1px solid #006ab7;
  padding: 2rem;
  gap: 2rem;
}
@media print, screen and (min-width: 1200px) {
  .p-border-box {
    font-weight: 2rem;
    padding: 2rem 3rem;
  }
}

.p-check-point-title {
  display: flex;
  flex-direction: column;
  align-items: center;
  margin-top: 0.5rem;
  font-weight: bold;
  text-align: center;
}
@media print, screen and (min-width: 1200px) {
  .p-check-point-title {
    font-size: 2rem;
  }
}

.p-working-structure-box {
  display: flex;
  flex-direction: column;
  gap: 3rem;
}
@media print, screen and (min-width: 1200px) {
  .p-working-structure-box {
    flex-direction: row;
    gap: 5rem;
    margin-bottom: 5rem;
  }
}

.p-working-structure-img {
  margin: 1rem auto 2.5rem;
  max-width: 33.5rem;
}
@media print, screen and (min-width: 762px) {
  .p-working-structure-img {
    max-width: 66%;
  }
}
@media print, screen and (min-width: 1200px) {
  .p-working-structure-img {
    flex-shrink: 0;
    margin-top: 0;
    margin-bottom: 0;
    max-width: 100%;
  }
}

.p-permanent-dispatch-catch-box {
  display: flex;
  flex-direction: column;
  gap: 3rem;
  margin-top: 3rem;
}
@media print, screen and (min-width: 1200px) {
  .p-permanent-dispatch-catch-box {
    flex-direction: row;
    gap: 5rem;
    justify-content: space-between;
    margin-top: 8rem;
  }
}

.p-permanent-dispatch-catch-box__text {
  flex: 1;
}
.p-permanent-dispatch-catch-box__text > * + * {
  margin-top: 3rem;
}

.p-permanent-dispatch-catch-box__img {
  flex: 1;
  margin-inline: -2rem;
}
@media print, screen and (min-width: 762px) {
  .p-permanent-dispatch-catch-box__img {
    margin-inline: -5rem;
  }
}
@media print, screen and (min-width: 1200px) {
  .p-permanent-dispatch-catch-box__img {
    margin-inline: 0;
  }
}

.p-working-structure-content > * + * {
  margin-top: 3rem;
}

.p-working-structure-accordion-box__button {
  position: absolute;
  bottom: 0;
  width: 100%;
  cursor: pointer;
  font-weight: bold;
  list-style: none;
  text-align: center;
}
.p-working-structure-accordion-box__button::before {
  content: "";
  position: absolute;
  left: 50%;
  display: block;
  width: 1.5rem;
  height: 1.5rem;
  border-right: 1px solid #006ab7;
  border-bottom: 1px solid #006ab7;
  transform: rotate(45deg) translateX(-80%);
}
.p-working-structure-accordion-box__button::-webkit-details-marker {
  display: none;
}

.p-working-structure-accordion-box {
  position: relative;
  min-height: 5rem;
  margin: 1rem 0 -2rem 0;
}
.p-working-structure-accordion-box:not([open]) .p-working-structure-accordion-box__button {
  padding-bottom: 2rem;
}
.p-working-structure-accordion-box:not([open]) .p-working-structure-accordion-box__button::before {
  top: 3.5rem;
  transform: rotate(45deg) translateX(-80%);
}
.p-working-structure-accordion-box:not([open]) .p-working-structure-accordion-box__button::after {
  content: "待遇面の違いをもっと見る";
}
.p-working-structure-accordion-box[open] {
  margin-block: 3rem;
}
.p-working-structure-accordion-box[open] .p-working-structure-accordion-box__button {
  padding-top: 3.5rem;
}
.p-working-structure-accordion-box[open] .p-working-structure-accordion-box__button::before {
  bottom: 2rem;
  transform: rotate(-135deg) translateX(70%);
}
.p-working-structure-accordion-box[open] .p-working-structure-accordion-box__button::after {
  content: "閉じる";
}

.p-working-structure-accordion-box__content {
  padding-bottom: 7rem;
}

.p-bg-list__item {
  padding: 2rem;
  border: 1px solid #888;
  background-color: #fff;
}
@media print, screen and (min-width: 762px) {
  .p-bg-list__item {
    padding: 3rem;
  }
}

.p-bg-list__item + .p-bg-list__item {
  margin-top: 3rem;
}

.p-working-check-point-link {
  display: flex;
  justify-content: flex-end;
  margin-top: 1rem;
}

.p-recommended-box {
  margin-top: 5rem;
  padding: 2rem;
  border: 1px solid #003890;
}
.p-recommended-box > * + * {
  margin-top: 1rem;
}
@media print, screen and (min-width: 762px) {
  .p-recommended-box {
    margin-top: 3rem;
  }
}

.p-recommended-box__title {
  font-weight: bold;
  letter-spacing: 0.1em;
}
@media print, screen and (min-width: 762px) {
  .p-recommended-box__title {
    font-size: 2rem;
  }
}

.p-recommended-box__item-title {
  color: #003890;
  font-weight: bold;
}
@media print, screen and (min-width: 762px) {
  .p-recommended-box__item-title {
    font-size: 1.8rem;
  }
}
.p-recommended-box__item-title--step2 {
  color: #00a4b7;
}

.p-recommended-box__text {
  padding-left: 3rem;
}

.p-movie-box {
  margin-top: 1rem;
  width: 100%;
}
.p-movie-box--top-main {
  width: 100%;
  margin-top: -2px;
  background-color: #fff;
}
@media print, screen and (min-width: 1200px) {
  .p-movie-box--top-main {
    position: absolute;
    left: 4rem;
    bottom: 3.2rem;
    width: 24.9rem;
    height: 16.6rem;
    border: 5px solid #888;
    overflow: hidden;
  }
}

.p-movie-box__thumbnail {
  position: relative;
  display: block;
}
.p-movie-box__thumbnail img {
  width: 100%;
  height: auto;
}
.p-movie-box__thumbnail--req {
  max-width: 320px;
}
.p-movie-box__thumbnail--top-main {
  display: flex;
  justify-content: center;
  border: none;
  border-top: 1px solid #fff;
  background-color: #006ab7;
}
.p-movie-box__thumbnail--top-main:hover {
  opacity: 0.8;
}
@media print, screen and (min-width: 1200px) {
  .p-movie-box__thumbnail--top-main {
    border: none;
  }
}
.p-movie-box__thumbnail--border {
  border: 5px solid #888;
}

.p-movie-box__time {
  position: absolute;
  font-size: 1.2rem;
  bottom: 0.4rem;
  right: 0.4rem;
  padding: 0.2rem 1rem;
  background-color: #000;
  border-radius: 1.4rem;
  color: #fff;
  font-feature-settings: "palt";
}
@media print, screen and (min-width: 1200px) {
  .p-movie-box__time {
    bottom: 0.8rem;
    right: 0.8rem;
  }
}

.p-movie-box__text {
  max-width: 320px;
  font-size: 1.2rem;
  line-height: 1.8;
}

.p-movie-box__speed {
  display: flex;
  justify-content: center;
}
.p-movie-box__speed:hover {
  opacity: 0.8;
}

.p-video-modal {
  align-items: center;
  display: flex;
  justify-content: center;
  position: fixed;
  top: 0;
  height: 100dvh;
  width: 100%;
  overflow: hidden;
  z-index: 900;
}

.p-video-modal {
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.5s, visibility 0.5s;
}

.p-video-modal.is-active {
  opacity: 1;
  visibility: visible;
  transition: opacity 0.5s, visibility 0.5s;
}

.p-video-modal-overlay {
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
  background: #000;
  opacity: 0.7;
}
.p-video-modal-overlay--top {
  opacity: 1;
}

.p-video-modal-container {
  position: relative;
  margin: 0 auto;
  width: 90%;
  max-width: 100dvh;
}

/* PC表示 */
@media print, screen and (min-width: 1080px) {
  .p-video-modal-container {
    width: 70%;
    max-width: none;
  }
}
.p-video-modal-header {
  padding: 0.8rem 0;
  color: #fff;
  text-align: right;
}

/* MediaKind */
/* iPhoneの場合のみUI非表示 */
.bmpui-ui-controlbar.is-iphone,
.bmpui-ui-titlebar.is-iphone,
.bmpui-image.is-iphone {
  display: none;
}

/* iPhoneの場合のみ再生ボタンの範囲を調整（デフォルトUIのスキップが使えるように） */
.bmpui-container-wrapper .bmpui-ui-playbacktoggle-overlay.is-iphone,
.bmpui-container-wrapper .bmpui-ui-playbacktoggle-overlay.is-iphone .bmpui-ui-hugeplaybacktogglebutton {
  position: absolute;
  top: calc(50% - 2.5rem);
  left: calc(50% - 2.5rem);
  height: 5rem;
  width: 5rem;
}

.bitmovinplayer-container {
  margin: 0 auto !important;
  min-width: auto !important;
  min-height: auto !important;
}

@media print, screen and (min-width: 1080px) {
  .bitmovinplayer-container {
    max-width: none !important;
  }
}
/*modal */
.is-modal-open,
.is-modal-close {
  cursor: pointer;
}

.p-speed-modal-container {
  position: relative;
  border-radius: 4px;
  height: auto;
  max-height: 100%;
  max-width: 80rem;
  margin: 0 auto;
  background-color: #fff;
}

.p-speed-modal {
  display: flex;
  align-items: center;
  position: fixed;
  top: 0;
  padding: 2.4rem;
  height: 100%;
  width: 100%;
  overflow: hidden;
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.5s, visibility 0.5s;
  z-index: 100;
}

.p-speed-modal .p-speed-modal-container {
  transition: opacity 0.5s, visibility 0.5s, bottom 0.5s;
  overflow: hidden;
}

.p-speed-modal.is-active {
  opacity: 1;
  visibility: visible;
  transition: opacity 0.5s, visibility 0.5s;
}

.p-speed-modal.is-active .p-speed-modal-container {
  transition: opacity 0.5s, visibility 0.5s, bottom 0.5s;
}

.p-speed-modal-overlay {
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
  background: #000;
  opacity: 0.7;
}

.p-speed-modal-overlay--top {
  opacity: 1;
}

.p-speed-modal-header {
  display: flex;
  justify-content: space-between;
  border-bottom: 1px solid #999;
  padding: 0.8rem 1.6rem;
}

@media print, screen and (min-width: 1080px) {
  .p-speed-modal-header {
    padding: 1.6rem 2.4rem;
  }
}
.p-speed-modal-header__title {
  width: calc(100% - 6.4rem);
  font-size: 2rem;
  font-weight: bold;
}

.p-speed-modal-header__close {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  width: 7.4rem;
}

.p-speed-modal-content {
  padding: 0.8rem 1.6rem 1.6rem;
  min-height: 10rem;
  max-height: min(100dvh - 4.8rem - 5.3rem, 80rem);
  overflow-y: auto;
}

@media print, screen and (min-width: 1080px) {
  .p-speed-modal-content {
    max-height: calc(80dvh - 4.8rem);
    padding: 1.6rem 2.4rem 2.4rem;
  }
}
/* video-speed-modal */
.p-modal-video-speed {
  background-color: #fff;
}

.p-modal-video-speed--top-pc {
  display: none;
}

@media print, screen and (min-width: 1080px) {
  .p-modal-video-speed--top-pc {
    display: block;
  }
}
@media print, screen and (min-width: 1080px) {
  .p-modal-video-speed--top-sp {
    display: none;
  }
}
/*recruit動画用*/
.p-modal-video-speed--recruit-pc {
  display: none;
}

@media print, screen and (min-width: 520px) {
  .p-modal-video-speed--recruit-pc {
    display: block;
  }
}
@media print, screen and (min-width: 520px) {
  .p-modal-video-speed--recruit-sp {
    display: none;
  }
}
.p-modal-video-speed img {
  width: 100%;
}

@media print, screen and (min-width: 1080px) {
  .p-modal-video-speed__link:hover {
    opacity: 0.7;
  }
}
.p-modal-video-speed-annotation {
  margin-top: 0.8rem;
}

.p-video-speed-modal-section + .p-video-speed-modal-section {
  margin-top: 1.6rem;
}

@media print, screen and (min-width: 1080px) {
  .p-video-speed-modal-section + .p-video-speed-modal-section {
    margin-top: 2.4rem;
  }
}
.p-video-speed-modal-section__title {
  font-size: 1.8rem;
  font-weight: bold;
}

.p-video-speed-modal-section__content {
  display: flex;
  flex-direction: column;
  gap: 1.6rem;
  margin-top: 0.8rem;
}

@media print, screen and (min-width: 1080px) {
  .p-video-speed-modal-section__content {
    gap: 2.4rem;
  }
}
.p-video-speed-modal-section__text img {
  display: inline-block;
  margin: 0 2px 2px;
  vertical-align: middle;
}

.p-video-speed-modal-section__img {
  display: flex;
  flex-direction: column;
  gap: 1.6rem;
}

@media print, screen and (min-width: 1080px) {
  .p-video-speed-modal-section__img {
    gap: 2.4rem;
    margin: 0 auto;
    max-width: 60rem;
  }
}
.p-video-speed-modal-section__img img {
  width: 100%;
}

.p-video-speed-modal-icon {
  width: 17px;
  height: 17px;
}

/* requirement 募集要項・採用の流れ */
.p-table-requirement {
  font-size: 1.6rem;
  font-weight: bold;
}
@media print, screen and (min-width: 762px) {
  .p-table-requirement {
    font-size: 2rem;
  }
}

.p-requirement {
  display: flex;
  flex-direction: column;
  gap: 7rem;
}
@media print, screen and (min-width: 762px) {
  .p-requirement {
    gap: 10rem;
  }
}

.p-requirement__detail {
  display: flex;
  flex-direction: column;
  gap: 7rem;
}
@media print, screen and (min-width: 762px) {
  .p-requirement__detail {
    gap: 10rem;
  }
}

.p-requirement__page-link {
  display: flex;
  gap: 1.5rem;
  margin-bottom: 3rem;
}
@media print, screen and (min-width: 762px) {
  .p-requirement__page-link {
    gap: 2rem;
    margin-bottom: 4rem;
  }
}
.p-requirement__page-link--column {
  flex-direction: column;
}
.p-requirement__page-link--column .p-requirement__page-link__item {
  width: 100%;
}
@media print, screen and (min-width: 762px) {
  .p-requirement__page-link--column {
    flex-direction: row;
  }
  .p-requirement__page-link--column .p-requirement__page-link__item {
    width: 29rem;
  }
}

.p-requirement__page-link__item {
  display: block;
  border-radius: 4px;
  border: solid 1px #006ab7;
  width: calc((100% - 0.5rem) / 2);
  height: 6rem;
  line-height: 6rem;
  text-align: center;
}
@media print, screen and (min-width: 762px) {
  .p-requirement__page-link__item {
    width: 29rem;
  }
}
.p-requirement__page-link__item > span {
  position: relative;
}
.p-requirement__page-link__item > span::after {
  content: "↓";
  position: absolute;
  top: 50%;
  right: -2rem;
  display: block;
  color: #006ab7;
  transform: rotate(0) translateY(-50%);
}
@media (hover: hover) and (pointer: fine) {
  .p-requirement__page-link__item:hover:hover {
    color: #fff;
    background-color: #006ab7;
    transition: background-color 0.25s;
  }
  .p-requirement__page-link__item:hover:hover > span::after {
    color: #fff;
  }
}

.p-requirement-category__explanation {
  display: flex;
  flex-direction: column;
  gap: 2rem;
}

.p-requirement-category__figure {
  margin-top: 2.5rem;
}
@media print, screen and (min-width: 762px) {
  .p-requirement-category__figure {
    margin-top: 5rem;
  }
}

.p-requirement-index {
  margin-bottom: 3rem;
}

.p-requirement-course {
  display: flex;
  flex-direction: column;
  gap: 3rem;
}

.p-requirement-entry {
  display: flex;
  flex-direction: column;
  gap: 3rem;
}
@media print, screen and (min-width: 762px) {
  .p-requirement-entry {
    gap: 4rem;
  }
}

.p-requirement-flow {
  display: flex;
  flex-direction: column;
}

.p-requirement-flow__item {
  display: flex;
  flex-direction: column;
  border-top: solid 1px #888;
  border-bottom: solid 1px #888;
}
@media print, screen and (min-width: 762px) {
  .p-requirement-flow__item {
    flex-direction: row;
  }
}

.p-requirement-flow-step {
  padding: 2rem;
  background-color: #f5f5f5;
  text-align: center;
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
  align-items: center;
  justify-content: center;
}
@media print, screen and (min-width: 762px) {
  .p-requirement-flow-step {
    min-width: 25%;
  }
}

.p-requirement-flow-step__number {
  font-size: 1.2rem;
  color: #003890;
}

.p-requirement-flow-step__title {
  font-weight: bold;
}

.p-requirement-flow-content {
  padding: 2rem;
  flex-grow: 1;
  display: flex;
  flex-direction: column;
  gap: 2rem;
}
@media print, screen and (min-width: 1200px) {
  .p-requirement-flow-content {
    min-width: 75%;
    justify-content: center;
  }
}

.p-requirement-flow-content__item {
  display: flex;
  flex-direction: column;
  gap: 2rem;
}
@media print, screen and (min-width: 762px) {
  .p-requirement-flow-content__item {
    gap: 1rem;
  }
}

.p-requirement-flow-content__banner {
  display: flex;
  flex-direction: column;
  gap: 1rem;
}
.p-requirement-flow-content__banner > a > img {
  width: 100%;
}
@media print, screen and (min-width: 762px) {
  .p-requirement-flow-content__banner {
    flex-direction: row;
    flex-wrap: wrap;
  }
  .p-requirement-flow-content__banner > a {
    max-width: 28rem;
  }
}
@media print, screen and (min-width: 762px) {
  .p-requirement-flow-content__banner--col2 > a {
    max-width: 40rem;
  }
}

.p-requirement-flow__arrow {
  position: relative;
  width: 100%;
  height: 8.5rem;
}
@media print, screen and (min-width: 762px) {
  .p-requirement-flow__arrow {
    width: 25%;
  }
}
.p-requirement-flow__arrow::after {
  content: "↓";
  font-size: 2.4rem;
  position: absolute;
  top: 50%;
  right: 46%;
  display: block;
  color: #003890;
  transform: rotate(0) translateY(-50%);
}

.p-requirement-requirement {
  display: flex;
  flex-direction: column;
  gap: 3rem;
}
@media print, screen and (min-width: 762px) {
  .p-requirement-requirement {
    gap: 4rem;
  }
}

/* requirement 募集要項・採用の流れ */
/* career-requirement キャリア採用 */
.p-line-entry-box {
  display: flex;
  min-width: 30rem;
}

.p-line-entry-box__icon {
  display: flex;
  flex-direction: column;
  align-items: center;
  position: relative;
  margin-top: 0.5rem;
  margin-right: 26px;
  padding-right: 1rem;
  gap: 1rem;
}
.p-line-entry-box__icon ::after {
  content: "";
  position: absolute;
  width: 16px;
  height: 32px;
  top: calc(50% - 16px);
  right: -16px;
  background-color: #CCCCCC;
  clip-path: polygon(0 0, 0% 100%, 100% 50%);
}

.p-line-entry-box__banner {
  width: 100%;
}
@media print, screen and (min-width: 762px) {
  .p-line-entry-box__banner {
    max-width: 40rem;
  }
}

.p-career-requirement {
  display: flex;
  flex-direction: column;
  gap: 7rem;
}
@media print, screen and (min-width: 762px) {
  .p-career-requirement {
    gap: 10rem;
  }
}

.p-career-requirement__detail {
  display: flex;
  flex-direction: column;
  gap: 5rem;
}
@media print, screen and (min-width: 762px) {
  .p-career-requirement__detail {
    gap: 10rem;
  }
}

.p-career-requirement__inner {
  display: flex;
  flex-direction: column;
  gap: 3rem;
}

.p-career-requirement__item {
  display: flex;
  flex-direction: column;
  gap: 3rem;
}
@media print, screen and (min-width: 762px) {
  .p-career-requirement__item {
    gap: 4rem;
  }
}

.p-career-requirement__movie {
  max-width: 100%;
}
@media print, screen and (min-width: 762px) {
  .p-career-requirement__movie {
    max-width: 32rem;
  }
}

.p-requirement__navisite {
  margin-bottom: 5rem;
}

.p-requirement__navisite-link {
  display: flex;
  flex-wrap: wrap;
  column-gap: 1.5rem;
  row-gap: 0.5rem;
}
@media print, screen and (min-width: 762px) {
  .p-requirement__navisite-link {
    column-gap: 3rem;
  }
}

/* エントリー */
.p-entry {
  display: flex;
  flex-direction: column;
  gap: 2.5rem;
}
@media print, screen and (min-width: 762px) {
  .p-entry {
    gap: 4rem;
  }
}

.p-entry-heading {
  text-align: center;
  margin-bottom: 2.5rem;
}
@media print, screen and (min-width: 762px) {
  .p-entry-heading {
    margin-bottom: 4rem;
  }
}
.p-entry-heading--type {
  font-weight: bold;
  text-align: start;
  margin-bottom: 0;
  font-size: 2rem;
}
@media print, screen and (min-width: 762px) {
  .p-entry-heading--type {
    font-size: 3rem;
  }
}
.p-entry-heading--fiscal-year {
  font-weight: bold;
  text-align: start;
  margin-bottom: 0;
  font-size: 2rem;
}
.p-entry-heading--fiscal-year-sub {
  font-weight: bold;
  margin-bottom: 2rem;
}
@media print, screen and (min-width: 762px) {
  .p-entry-heading--fiscal-year-sub {
    font-size: 1.8rem;
  }
}

.p-entry-card {
  background-color: #fff;
  border: 1px solid #888;
  border-radius: 0;
  padding: 5rem 2rem;
  margin: 0;
}
@media print, screen and (min-width: 1200px) {
  .p-entry-card {
    padding: 10rem;
    margin: 0;
  }
}

.p-entry-card__inner {
  display: flex;
  flex-direction: column;
  gap: 2.5rem;
}
@media print, screen and (min-width: 1200px) {
  .p-entry-card__inner {
    gap: 4rem;
  }
}

.p-entry__page-link {
  display: flex;
  flex-direction: column;
  gap: 1rem;
  margin-bottom: 5rem;
}
@media print, screen and (min-width: 762px) {
  .p-entry__page-link {
    flex-direction: row;
    gap: 2rem;
  }
}

.p-entry__page-link__item {
  display: block;
  border-radius: 4px;
  border: solid 1px #006ab7;
  height: 6rem;
  line-height: 6rem;
  text-align: center;
  background-color: #fff;
}
@media print, screen and (min-width: 762px) {
  .p-entry__page-link__item {
    width: 29rem;
  }
}
.p-entry__page-link__item > span {
  position: relative;
}
.p-entry__page-link__item > span::after {
  content: "↓";
  position: absolute;
  top: 50%;
  right: -2rem;
  display: block;
  color: #006ab7;
  transform: rotate(0) translateY(-50%);
}
@media (hover: hover) and (pointer: fine) {
  .p-entry__page-link__item:hover:hover {
    color: #fff;
    background-color: #006ab7;
    transition: background-color 0.25s;
  }
  .p-entry__page-link__item:hover:hover > span::after {
    color: #fff;
  }
}

.p-entry-box__content {
  display: flex;
  flex-wrap: wrap;
  gap: 2.5rem;
}
@media print, screen and (min-width: 762px) {
  .p-entry-box__content > div {
    min-width: 27.5rem;
    width: calc((100% - 5rem) / 3);
  }
}
.p-entry-box__content--flex-center {
  justify-content: center;
}

.p-entry-box__item {
  display: flex;
  flex-direction: column;
  gap: 1rem;
}

.p-entry-banner {
  border: 1px solid #888;
}

/* サイトのご利用について */
.p-guide {
  display: flex;
  gap: 5rem;
  flex-direction: column;
}
.p-guide-content {
  display: flex;
  gap: 1.5rem;
  flex-direction: column;
}
@media print, screen and (min-width: 762px) {
  .p-guide-content {
    gap: 2rem;
  }
}

.p-guide-content-detail {
  margin-bottom: 1rem;
}
@media print, screen and (min-width: 762px) {
  .p-guide-content-detail {
    margin-bottom: 1.5rem;
  }
}

/* 採用Q&A */
.p-faq-container > * + * {
  margin-top: 7rem;
}
@media print, screen and (min-width: 1200px) {
  .p-faq-container > * + * {
    margin-top: 10rem;
  }
}
.p-faq-container--info-type > * + * {
  margin-top: 4rem;
}
@media print, screen and (min-width: 1200px) {
  .p-faq-container--info-type > * + * {
    margin-top: 4rem;
  }
}

.p-faq-card {
  padding: 3rem 2rem;
  margin: 0 1rem;
  border: 1px solid #006ab7;
  border-radius: 0;
  background-color: #fff;
}
@media print, screen and (min-width: 1200px) {
  .p-faq-card {
    padding: 10rem;
    margin: 0;
    border-radius: 0;
  }
}

.p-faq-inner {
  display: flex;
  flex-direction: column;
  gap: 2.5rem;
}
@media print, screen and (min-width: 1200px) {
  .p-faq-inner {
    gap: 4rem;
  }
}
.p-faq-inner--info-type {
  gap: 2rem;
}

.p-info-type__button {
  display: grid;
  grid-template-columns: 1fr;
  grid-template-rows: 1fr;
  justify-items: center;
  align-items: center;
  margin-top: 1.5rem;
}
@media print, screen and (min-width: 762px) {
  .p-info-type__button {
    margin-top: 2.5rem;
  }
}

/* お問い合わせ */
.p-contact {
  display: grid;
  gap: 2.5rem;
}
@media print, screen and (min-width: 762px) {
  .p-contact {
    gap: 4rem 6rem;
    grid-template-columns: 50% 1fr;
    grid-template-rows: max-content 1fr;
  }
}

@media print, screen and (min-width: 762px) {
  .p-contact__text {
    grid-area: 1/1/2/2;
  }
}

@media print, screen and (min-width: 762px) {
  .p-contact__detail {
    grid-area: 2/1/3/2;
    line-height: 2;
  }
}

.p-contact__image > img {
  width: 100%;
}
@media print, screen and (min-width: 762px) {
  .p-contact__image {
    grid-area: 1/2/3/3;
  }
}

.p-contact__image-title {
  margin-top: 1rem;
  text-align: center;
}

/* sitemap */
.p-sitemap {
  padding-top: 2rem;
}
@media print, screen and (min-width: 762px) {
  .p-sitemap {
    padding-top: 5rem;
  }
}

.p-sitemap__list {
  display: grid;
  grid-template-columns: 1fr;
  grid-template-rows: auto;
}
@media print, screen and (min-width: 762px) {
  .p-sitemap__list {
    column-gap: 5rem;
    grid-template-columns: repeat(2, 1fr);
    grid-template-rows: repeat(auto-fit, minmax(1rem, auto));
  }
}
@media print, screen and (min-width: 1200px) {
  .p-sitemap__list {
    column-gap: 4rem;
    grid-template-columns: repeat(4, 1fr);
    grid-template-rows: repeat(8, minmax(2rem, auto));
  }
}

.p-sitemap__list-item + .p-sitemap__list-item {
  margin-top: 5rem;
}
@media print, screen and (min-width: 762px) {
  .p-sitemap__list-item + .p-sitemap__list-item {
    margin-top: 0;
  }
}
@media print, screen and (min-width: 762px) {
  .p-sitemap__list-item:nth-child(1) {
    grid-area: 1/1/2/2;
  }
  .p-sitemap__list-item:nth-child(2) {
    grid-area: 2/1/7/2;
    margin-top: 2.5rem;
  }
  .p-sitemap__list-item:nth-child(3) {
    grid-area: 4/1/13/2;
    margin-top: 2.5rem;
  }
  .p-sitemap__list-item:nth-child(4) {
    grid-area: 1/2/2/3;
  }
  .p-sitemap__list-item:nth-child(5) {
    grid-area: 2/2/6/3;
    margin-top: 2.5rem;
  }
  .p-sitemap__list-item:nth-child(6) {
    grid-area: 6/2/11/3;
    margin-top: 2.5rem;
  }
}
@media print, screen and (min-width: 1200px) {
  .p-sitemap__list-item:nth-child(1) {
    grid-area: 1/1/3/2;
  }
  .p-sitemap__list-item:nth-child(2) {
    grid-area: 1/2/4/3;
    margin-top: 0;
  }
  .p-sitemap__list-item:nth-child(3) {
    grid-area: 3/2/8/3;
    margin-top: 0;
  }
  .p-sitemap__list-item:nth-child(4) {
    grid-area: 1/3/6/4;
  }
  .p-sitemap__list-item:nth-child(5) {
    grid-area: 1/4/6/5;
    margin-top: 0;
  }
  .p-sitemap__list-item:nth-child(6) {
    grid-area: 1/4/6/5;
    margin-top: 0;
  }
}

.p-sitemap__list-title {
  padding-bottom: 0.5rem;
  border-bottom: 1px solid #888;
  font-size: 2rem;
  font-weight: bold;
  cursor: pointer;
}
@media print, screen and (min-width: 762px) {
  .p-sitemap__list-title {
    padding-bottom: 1rem;
    font-size: 2.4rem;
    line-height: 1.5;
  }
}
@media (hover: hover) and (pointer: fine) {
  .p-sitemap__list-title:hover {
    opacity: 0.7;
  }
}

.p-sitemap-inner-nav-list {
  margin-top: 1.5rem;
}
.p-sitemap-inner-nav-list > * + * {
  margin-top: 1.5rem;
}
@media print, screen and (min-width: 1200px) {
  .p-sitemap-inner-nav-list {
    margin-top: 2rem;
  }
  .p-sitemap-inner-nav-list > * + * {
    margin-top: 2rem;
  }
}
.p-sitemap-inner-nav-list--lower {
  margin: 0;
}
@media print, screen and (min-width: 1200px) {
  .p-sitemap-inner-nav-list--lower {
    margin-top: 0;
  }
  .p-sitemap-inner-nav-list--lower > * + * {
    margin-top: 1rem;
  }
}

.p-sitemap-inner-nav-list__item {
  display: flex;
  line-height: 1.5;
}
.p-sitemap-inner-nav-list__item::before {
  content: "-";
  padding-right: 0.5rem;
}
.p-sitemap-inner-nav-list__item--lower {
  margin-top: 1rem;
}
.p-sitemap-inner-nav-list__item--lower::before {
  display: none;
}

.p-sitemap-inner-nav-list__item-lower {
  display: flex;
  line-height: 1.5;
}
.p-sitemap-inner-nav-list__item-lower::before {
  content: "";
  padding-right: 2rem;
}

/* error */
.p-error {
  display: flex;
  gap: 5rem;
  flex-direction: column;
}

.p-error-heading {
  font-weight: bold;
  text-align: center;
  font-size: 2.4rem;
  line-height: 1.5;
}
@media print, screen and (min-width: 762px) {
  .p-error-heading {
    font-size: 3rem;
  }
}

.map-parent:hover .p-eureka-button .p-eureka-button__box,
.map-parent:hover .p-eureka-button .p-eureka-button__border,
.map-parent:hover .p-eureka-button .p-eureka-button__icon,
.map-parent:hover .p-eureka-button .p-eureka-button__text,
.map-parent:hover .p-eureka-button .p-eureka-button__arrow {
  opacity: 0.5;
}
.map-parent:hover .p-eureka-map .p-eureka-map__area {
  opacity: 0.3;
}

.p-eureka-button__border {
  fill: #006ab7;
}

.p-eureka-button.is-active[data-area=hokkaido] .p-eureka-button__box, .p-eureka-button.is-active[data-area=tohoku] .p-eureka-button__box, .p-eureka-button.is-active[data-area=koshinetsu] .p-eureka-button__box, .p-eureka-button.is-active[data-area=hokuriku] .p-eureka-button__box, .p-eureka-button.is-active[data-area=tokai] .p-eureka-button__box, .p-eureka-button.is-active[data-area=south-kanto] .p-eureka-button__box, .p-eureka-button.is-active[data-area=north-kanto] .p-eureka-button__box, .p-eureka-button.is-active[data-area=kansai] .p-eureka-button__box, .p-eureka-button.is-active[data-area=chushikoku] .p-eureka-button__box, .p-eureka-button.is-active[data-area=kyusyu] .p-eureka-button__box {
  fill: #006ab7;
  opacity: 1;
}
.p-eureka-button.is-active[data-area=hokkaido] .p-eureka-button__arrow, .p-eureka-button.is-active[data-area=tohoku] .p-eureka-button__arrow, .p-eureka-button.is-active[data-area=koshinetsu] .p-eureka-button__arrow, .p-eureka-button.is-active[data-area=hokuriku] .p-eureka-button__arrow, .p-eureka-button.is-active[data-area=tokai] .p-eureka-button__arrow, .p-eureka-button.is-active[data-area=south-kanto] .p-eureka-button__arrow, .p-eureka-button.is-active[data-area=north-kanto] .p-eureka-button__arrow, .p-eureka-button.is-active[data-area=kansai] .p-eureka-button__arrow, .p-eureka-button.is-active[data-area=chushikoku] .p-eureka-button__arrow, .p-eureka-button.is-active[data-area=kyusyu] .p-eureka-button__arrow {
  fill: #006ab7;
  opacity: 1;
}
.p-eureka-button.is-active[data-area=hokkaido] .p-eureka-button__icon,
.p-eureka-button.is-active[data-area=hokkaido] .p-eureka-button__text, .p-eureka-button.is-active[data-area=tohoku] .p-eureka-button__icon,
.p-eureka-button.is-active[data-area=tohoku] .p-eureka-button__text, .p-eureka-button.is-active[data-area=koshinetsu] .p-eureka-button__icon,
.p-eureka-button.is-active[data-area=koshinetsu] .p-eureka-button__text, .p-eureka-button.is-active[data-area=hokuriku] .p-eureka-button__icon,
.p-eureka-button.is-active[data-area=hokuriku] .p-eureka-button__text, .p-eureka-button.is-active[data-area=tokai] .p-eureka-button__icon,
.p-eureka-button.is-active[data-area=tokai] .p-eureka-button__text, .p-eureka-button.is-active[data-area=south-kanto] .p-eureka-button__icon,
.p-eureka-button.is-active[data-area=south-kanto] .p-eureka-button__text, .p-eureka-button.is-active[data-area=north-kanto] .p-eureka-button__icon,
.p-eureka-button.is-active[data-area=north-kanto] .p-eureka-button__text, .p-eureka-button.is-active[data-area=kansai] .p-eureka-button__icon,
.p-eureka-button.is-active[data-area=kansai] .p-eureka-button__text, .p-eureka-button.is-active[data-area=chushikoku] .p-eureka-button__icon,
.p-eureka-button.is-active[data-area=chushikoku] .p-eureka-button__text, .p-eureka-button.is-active[data-area=kyusyu] .p-eureka-button__icon,
.p-eureka-button.is-active[data-area=kyusyu] .p-eureka-button__text {
  fill: #fff;
  opacity: 1;
}

.p-eureka-button__box,
.p-eureka-button__border,
.p-eureka-button__arrow,
.p-eureka-button__icon,
.p-eureka-button__text {
  transition: opacity 0.25s, fill 0.25s;
}

.p-eureka-map.is-active[data-area=hokkaido] .p-eureka-map__area, .p-eureka-map.is-active[data-area=tohoku] .p-eureka-map__area, .p-eureka-map.is-active[data-area=koshinetsu] .p-eureka-map__area, .p-eureka-map.is-active[data-area=hokuriku] .p-eureka-map__area, .p-eureka-map.is-active[data-area=tokai] .p-eureka-map__area, .p-eureka-map.is-active[data-area=south-kanto] .p-eureka-map__area, .p-eureka-map.is-active[data-area=north-kanto] .p-eureka-map__area, .p-eureka-map.is-active[data-area=kansai] .p-eureka-map__area, .p-eureka-map.is-active[data-area=chushikoku] .p-eureka-map__area, .p-eureka-map.is-active[data-area=kyusyu] .p-eureka-map__area {
  opacity: 1;
}
.p-eureka-map .p-eureka-map__area {
  transition: opacity 0.25s, fill 0.25s;
}
.p-eureka-map .p-eureka-map__area[data-area=tokyo].is-active.south-kanto {
  fill: #e95e5e;
  opacity: 1;
}
.p-eureka-map .p-eureka-map__area[data-area=tokyo].is-active.north-kanto {
  fill: #cd63e6;
  opacity: 1;
}
.p-eureka-map .p-eureka-map__area[data-area=tokyo].is-active.koshinetsu {
  fill: #eb63b4;
  opacity: 1;
}
.p-eureka-map .p-eureka-map__area[data-area=yamaguchi].is-active.chushikoku {
  fill: #88cc73;
  opacity: 1;
}
.p-eureka-map .p-eureka-map__area[data-area=yamaguchi].is-active.kyusyu {
  fill: #52d887;
  opacity: 1;
}

.p-eureka-button.is-active .p-eureka-button__detail-box {
  fill: #fff;
}
.p-eureka-button.is-active .p-eureka-button__detail-border {
  fill: #006ab7;
}
.p-eureka-button.is-active .p-eureka-button__detail-icon {
  fill: #006ab7;
}
.p-eureka-button.is-active .p-eureka-button__detail-text {
  fill: #006ab7;
}
.p-eureka-button.is-active .p-eureka-button__detail-arrow {
  fill: #fff;
}

.p-eureka-button__detail-box,
.p-eureka-button__detail-border,
.p-eureka-button__detail-icon,
.p-eureka-button__detail-text,
.p-eureka-button__detail-arrow {
  transition: fill 0.25s;
}

.p-eureka-map.is-active .p-eureka-map__detail-area {
  fill: #006ab7;
}

.p-eureka-map__detail-area {
  transition: fill 0.25s;
}

.p-ideal-desvg {
  display: block;
  width: 100%;
  height: 100%;
}
.p-ideal-desvg--pc {
  display: none;
}
@media print, screen and (min-width: 1200px) {
  .p-ideal-desvg--pc {
    display: block;
  }
}
@media print, screen and (min-width: 1200px) {
  .p-ideal-desvg--sp {
    display: none;
  }
}

.p-ideal-step {
  display: flex;
  align-items: center;
  flex-direction: column;
  gap: 7rem;
}
@media print, screen and (min-width: 762px) {
  .p-ideal-step {
    gap: 10rem;
  }
}

.p-ideal-flow {
  display: flex;
  align-items: center;
  flex-direction: column;
  gap: 5rem;
}
@media print {
  .p-ideal-flow img {
    width: 100rem;
  }
}

.p-ideal-flow__heading {
  background-color: #003890;
  padding: 1rem 5rem;
  color: #fff;
  font-size: 1.8rem;
  font-weight: bold;
  letter-spacing: 0.2rem;
  line-height: 1.5555555556;
  text-align: center;
}
@media print, screen and (min-width: 762px) {
  .p-ideal-flow__heading {
    padding: 1.5rem 5rem;
    font-size: 2.4rem;
  }
}

.p-ideal-step-caption {
  display: flex;
  align-items: center;
  gap: 1rem;
}

.p-ideal-step-caption__icon {
  position: relative;
  display: flex;
  align-items: center;
  flex-direction: column;
  justify-content: center;
  padding: 1rem 2rem;
  color: #fff;
  font-family: "Roboto", sans-serif;
  font-size: 2.3rem;
  line-height: 1.1;
  transform: skewX(0);
}
@media print, screen and (min-width: 762px) {
  .p-ideal-step-caption__icon {
    padding-inline: 2.5rem;
    font-size: 3.6rem;
  }
}
.p-ideal-step-caption__icon::before {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  transform: skewX(-10deg);
  z-index: -1;
}
.p-ideal-step-caption__icon--step1::before {
  background-color: #003890;
}
.p-ideal-step-caption__icon--step2::before {
  background-color: #00a4b7;
}

.p-ideal-step-caption__icon-ornament {
  font-size: 0.7rem;
}
@media print, screen and (min-width: 762px) {
  .p-ideal-step-caption__icon-ornament {
    font-size: 1.4rem;
  }
}

.p-ideal-step-caption__heading {
  font-size: 2rem;
  font-weight: bold;
}
@media print, screen and (min-width: 762px) {
  .p-ideal-step-caption__heading {
    font-size: 2.8rem;
  }
}

.p-ideal-step-caption__heading-emphasis--step1 {
  color: #003890;
}
.p-ideal-step-caption__heading-emphasis--step2 {
  color: #008c9c;
}

.p-ideal-card-wrapper {
  display: flex;
  flex-direction: column;
  gap: 6rem;
}
@media print, screen and (min-width: 762px) {
  .p-ideal-card-wrapper {
    gap: 10rem;
  }
}

.p-ideal-card {
  padding: 5rem 2rem;
  border: 1px solid #888;
  background-color: #fff;
}
@media print, screen and (min-width: 762px) {
  .p-ideal-card {
    padding: 10rem;
  }
}
.p-ideal-card--level {
  padding: 3rem 2rem;
  background-color: #ecf7f8;
  border-radius: 5px;
  margin-right: 2rem;
}
@media print, screen and (min-width: 762px) {
  .p-ideal-card--level {
    padding: 5rem;
    margin-right: 5rem;
  }
}
@media print, screen and (min-width: 1200px) {
  .p-ideal-card--level {
    margin-right: 0;
  }
}
.p-ideal-card--map {
  padding: 4rem 2rem;
}
@media print, screen and (min-width: 762px) {
  .p-ideal-card--map {
    padding: 7rem 10rem;
  }
}
.p-ideal-card--office-list {
  padding: 4rem 0;
}
@media print, screen and (min-width: 1200px) {
  .p-ideal-card--office-list {
    padding-block: 7rem;
  }
}
.p-ideal-card--sp-full {
  margin-inline: -2rem;
}
@media screen and (max-width: 761px) {
  .p-ideal-card--sp-full {
    border: none;
  }
}
@media print, screen and (min-width: 762px) {
  .p-ideal-card--sp-full {
    margin-inline: 0;
  }
}

.p-ideal-card__content {
  display: grid;
  gap: 4rem;
  grid-template-columns: minmax(0, 1fr);
}
.p-ideal-card__content--career-field {
  display: grid;
  gap: 3rem;
  grid-template-columns: minmax(0, 1fr);
}
@media print, screen and (min-width: 762px) {
  .p-ideal-card__content--career-field {
    gap: 9.5rem;
  }
}

.p-ideal-determination-flow {
  display: flex;
  flex-direction: column;
  gap: 1.5rem;
}
@media print, screen and (min-width: 1200px) {
  .p-ideal-determination-flow {
    gap: 2rem;
  }
}

.p-ideal-determination-flow__list {
  display: grid;
  gap: 4rem;
  padding-left: 0;
}
@media print, screen and (min-width: 1200px) {
  .p-ideal-determination-flow__list {
    grid-template-columns: repeat(3, 1fr);
  }
}
@media print, screen and (min-width: 1200px) {
  .p-ideal-determination-flow__list--col2 {
    grid-template-columns: repeat(2, 1fr);
  }
}

.p-ideal-determination-flow__list-item {
  position: relative;
  display: flex;
  flex-direction: column;
  border: solid 1px #6f9fc2;
}
.p-ideal-determination-flow__list-item + .p-ideal-determination-flow__list-item::after {
  content: "";
  position: absolute;
  display: block;
  top: -2.75rem;
  left: 50%;
  width: 0;
  height: 0;
  border-color: #d1e7f6 transparent transparent transparent;
  border-style: solid;
  border-width: 12px 15px 0 15px;
  transform: translateX(-50%);
}
@media print, screen and (min-width: 1200px) {
  .p-ideal-determination-flow__list-item + .p-ideal-determination-flow__list-item::after {
    top: 50%;
    left: -2.75rem;
    transform: rotate(-90deg) translate(0, -50%);
  }
}
.p-ideal-determination-flow__list-item--step2 {
  border-color: #66aab2;
}
.p-ideal-determination-flow__list-item--step2 + .p-ideal-determination-flow__list-item--step2::after {
  border-color: #aad3d8 transparent transparent transparent;
}
.p-ideal-determination-flow__list-item--step2 .p-ideal-determination-flow__step {
  background-color: #66aab2;
}

.p-ideal-determination-flow__step {
  background-color: #6f9fc2;
  padding: 1rem 2rem;
  color: #fff;
  font-size: 1.8rem;
  font-weight: bold;
  text-align: center;
}
@media print, screen and (min-width: 1200px) {
  .p-ideal-determination-flow__step {
    padding: 1rem 2.5rem;
  }
}

.p-ideal-determination-flow__description {
  display: flex;
  flex-direction: column;
  flex-grow: 1;
  gap: 1rem;
  padding: 2rem;
}
@media print, screen and (min-width: 1200px) {
  .p-ideal-determination-flow__description {
    padding: 2.5rem 3rem;
  }
}

.p-faculty-field {
  background: #fff;
}

.p-tab-content {
  display: none;
}
.p-tab-content.is-show {
  display: block;
}

.p-faculty-field__content {
  margin-top: 3rem;
  margin-bottom: 1rem;
}
@media print, screen and (min-width: 762px) {
  .p-faculty-field__content {
    margin-top: 4rem;
  }
}

.p-faculty-field-grid {
  container-type: inline-size;
  display: grid;
  gap: 3rem;
  margin-right: 2rem;
}
@media print, screen and (min-width: 762px) {
  .p-faculty-field-grid {
    gap: 6rem;
    grid-template-rows: 1fr max-content;
    margin-right: 5rem;
  }
}
@media print, screen and (min-width: 1200px) {
  .p-faculty-field-grid {
    margin-right: 0;
  }
}

.p-faculty-field-grid__image {
  width: 100%;
}
@media print, screen and (min-width: 762px) {
  .p-faculty-field-grid__image {
    grid-area: 1/2/2/3;
    max-width: 36rem;
  }
}
@media print, screen and (min-width: 1200px) {
  .p-faculty-field-grid__image {
    grid-area: 1/2/2/3;
  }
}

.p-faculty-field-grid__rank {
  display: flex;
  flex-direction: column;
  gap: 3rem;
  width: fit-content;
  margin-inline: auto;
}
@media print, screen and (min-width: 762px) {
  .p-faculty-field-grid__rank {
    grid-area: 2/1/2/3;
    flex-direction: row;
    flex-wrap: wrap;
    column-gap: 5rem;
    margin-inline: 0;
  }
}

.p-faculty-field-grid__rank-title {
  padding: 0.5rem 1rem;
  background-color: #6fc0c9;
  width: 10rem;
  color: #fff;
  font-size: 1.4rem;
  font-weight: bold;
  text-align: center;
}
@media print, screen and (min-width: 520px) {
  .p-faculty-field-grid__rank-title {
    white-space: nowrap;
  }
}

.p-faculty-field-grid__rank-inner {
  display: flex;
  align-items: flex-start;
  gap: 2.5rem;
}

.p-faculty-rank-list {
  display: grid;
  align-items: center;
  grid-template-columns: 1fr;
  gap: 2rem 3rem;
}
@media print, screen and (min-width: 762px) {
  .p-faculty-rank-list {
    gap: 2rem 2.5rem;
  }
}

.p-faculty-rank-list__item {
  position: relative;
  padding-left: 5rem;
  font-weight: bold;
}
.p-faculty-rank-list__item::before {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  left: 0;
  width: 4rem;
  height: 4rem;
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
  transform: translateY(-50%);
}
.p-faculty-rank-list__item--1st::before {
  background-image: url(../../assets/img/ideal/ideal_icon_no1.svg);
}
.p-faculty-rank-list__item--2nd::before {
  background-image: url(../../assets/img/ideal/ideal_icon_no2.svg);
}
.p-faculty-rank-list__item--3rd::before {
  background-image: url(../../assets/img/ideal/ideal_icon_no3.svg);
}

.p-ideal-level {
  container-name: ideal-level;
  container-type: inline-size;
  display: flex;
  align-items: center;
  flex-direction: column;
  gap: 3rem;
}

.p-ideal-level__detail {
  display: flex;
  flex-direction: column;
  gap: 2rem;
}
@media print, screen and (min-width: 762px) {
  .p-ideal-level__detail {
    gap: 3rem;
  }
}
@media print, screen and (min-width: 1200px) {
  .p-ideal-level__detail {
    flex-shrink: 1;
  }
}

.p-ideal-level__heading {
  font-size: 2rem;
  font-weight: bold;
}

.p-ideal-level__illustration {
  display: flex;
  flex-direction: column;
}
@container ideal-level (min-width: 541px) {
  .p-ideal-level__illustration {
    flex-direction: row;
    justify-content: space-between;
    width: 54rem;
  }
}
@media print, screen and (min-width: 1200px) {
  .p-ideal-level__illustration {
    flex-shrink: 0;
  }
}

.p-ideal-level__image {
  width: 100%;
  z-index: 1;
}
@container ideal-level (min-width: 541px) {
  .p-ideal-level__image {
    width: 23.5rem;
  }
}

.p-ideal-level__content {
  margin-top: 2.5rem;
}

.p-ideal-level__content-item {
  font-size: 1.6rem;
  margin-left: 3rem;
  padding-bottom: 1.5rem;
}
@container ideal-level (min-width: 541px) {
  .p-ideal-level__content-item {
    width: 40rem;
    padding-left: 12rem;
    margin-left: -12.5rem;
  }
}
.p-ideal-level__content-item + .p-ideal-level__content-item {
  border-top: 1px dotted #888;
  padding-top: 1.5rem;
}
.p-ideal-level__content-item--normal {
  font-weight: normal;
}
.p-ideal-level__content-item--target {
  position: relative;
}
.p-ideal-level__content-item--target::after {
  content: "";
  display: block;
  position: absolute;
  top: 2rem;
  left: -3rem;
  width: 2rem;
  height: 2rem;
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
  background-image: url(../../assets/img/ideal/ideal_icon_work-difficulty.svg);
}
@container ideal-level (min-width: 541px) {
  .p-ideal-level__content-item--target::after {
    left: 9rem;
  }
}

.p-ideal-level__occupation {
  font-weight: bold;
}
@container ideal-level (min-width: 541px) {
  .p-ideal-level__occupation {
    display: none;
  }
}

.p-ideal-category__figure-item {
  display: flex;
  align-items: center;
  flex-direction: column;
  gap: 1rem;
  justify-content: center;
}
.p-ideal-category__figure-item > img {
  width: 3rem;
}
@media print, screen and (min-width: 1200px) {
  .p-ideal-category__figure-item > img {
    width: 4rem;
  }
}

.p-table-requirement__heading {
  font-weight: bold;
}
@media print, screen and (min-width: 1200px) {
  .p-table-requirement__heading {
    font-size: 1.8rem;
  }
}
.p-table-requirement__heading--sub {
  font-size: 1.4rem;
}
@media print, screen and (min-width: 1200px) {
  .p-table-requirement__heading--sub {
    font-size: 1.8rem;
  }
}

.p-table-requirement__box {
  font-weight: bold;
  display: inline-flex;
  flex-direction: column;
  margin-inline: auto;
  text-align: left;
}

.p-table-requirement__box-main {
  font-size: 1.4rem;
  font-weight: bold;
}
@media print, screen and (min-width: 762px) {
  .p-table-requirement__box-main {
    font-size: 1.6rem;
  }
}

.p-table-requirement__box-annotation {
  font-size: 1.2rem;
  font-weight: 500;
}

.p-table-requirement__box {
  display: inline-flex;
  flex-direction: column;
  margin-inline: auto;
  font-weight: bold;
  text-align: left;
}

.p-ideal-nation-map-pc {
  display: none;
}
@media print, screen and (min-width: 1200px) {
  .p-ideal-nation-map-pc {
    display: block;
    margin-bottom: 2rem;
    overflow: visible;
  }
}

.p-ideal-nation-map-sp {
  display: flex;
  flex-direction: column;
  gap: 2rem;
  margin-bottom: 1.5rem;
}
.p-ideal-nation-map-sp > img {
  width: 100%;
}
@media print, screen and (min-width: 1200px) {
  .p-ideal-nation-map-sp {
    display: none;
  }
}

.p-ideal-nation-map-description {
  display: flex;
  flex-direction: column;
  gap: 2.5rem;
  margin-bottom: 2rem;
}
@media print, screen and (min-width: 1200px) {
  .p-ideal-nation-map-description {
    gap: 3rem;
    width: 55rem;
    margin-bottom: -16rem;
  }
}

.p-ideal-nation-map-description__heading {
  font-size: 2rem;
  font-weight: bold;
}

.p-ideal-local__heading {
  font-weight: bold;
  font-size: 2rem;
}
@media print, screen and (min-width: 762px) {
  .p-ideal-local__heading {
    font-size: 2.8rem;
  }
}

.p-ideal-nation-data {
  display: flex;
  flex-direction: column;
  gap: 3rem;
}
@media print, screen and (min-width: 762px) {
  .p-ideal-nation-data {
    gap: 5rem;
  }
}

.p-ideal-nation-data__heading {
  font-size: 2rem;
  font-weight: bold;
  margin-bottom: 2.5rem;
}
@media print, screen and (min-width: 762px) {
  .p-ideal-nation-data__heading {
    font-size: 2.8rem;
    margin-bottom: 4rem;
  }
}

.p-ideal-nation-data__data {
  display: flex;
  flex-direction: column;
  gap: 3rem;
}
@media print, screen and (min-width: 762px) {
  .p-ideal-nation-data__data {
    gap: 4rem;
  }
}

/* tab-link-list */
.p-tab-link-list-wrapper {
  margin-bottom: 3rem;
  overflow-y: hidden;
}
@media print, screen and (min-width: 762px) {
  .p-tab-link-list-wrapper {
    margin-bottom: 5rem;
  }
}

.p-tab-link-list {
  display: grid;
  grid-auto-columns: minmax(auto, max-content);
  grid-auto-flow: column;
  gap: 0.5rem;
  min-width: max-content;
  border-bottom: 2px solid #006ab7;
}
@media print, screen and (min-width: 762px) {
  .p-tab-link-list {
    gap: 1rem;
  }
}
.p-tab-link-list--faculty {
  grid-template-columns: repeat(7, 1fr);
  border-color: #00a4b7;
}

@media print, screen and (min-width: 762px) {
  .p-tab-link-list__item {
    min-width: 16.4rem;
  }
  .p-tab-link-list__item--faculty {
    min-width: 12.4rem;
  }
}

.p-tab-link-list__link {
  display: block;
  width: 100%;
  padding: 1rem 1.5rem;
  border: 1px solid #888;
  border-bottom: none;
  border-top-left-radius: 0.4rem;
  border-top-right-radius: 0.4rem;
  background-color: #f5f5f5;
  text-align: center;
  white-space: nowrap;
}
@media print, screen and (min-width: 762px) {
  .p-tab-link-list__link {
    padding-block: 2rem;
  }
}
.p-tab-link-list__link--active, .p-tab-link-list__link.is-active {
  height: calc(100% + 0.2rem);
  margin-bottom: -0.2rem;
  border-width: 2px;
  border-color: #006ab7;
  background-color: #fff;
  color: #006ab7;
  font-weight: bold;
}
.p-tab-link-list__link--faculty.is-active {
  border-color: #00a4b7;
  color: #00a4b7;
}
@media print, screen and (min-width: 762px) {
  .p-tab-link-list__link--faculty {
    padding-block: 1.5rem;
  }
}

/* office-number */
.p-office-number {
  display: flex;
  align-items: baseline;
  gap: 1rem;
  justify-content: center;
}

.p-office-number__national {
  color: #003890;
  font-size: 2rem;
  font-weight: bold;
}
@media print, screen and (min-width: 762px) {
  .p-office-number__national {
    font-size: 2.4rem;
  }
}

.p-office-number__number {
  color: #003890;
  font-family: "Roboto";
  font-size: 5rem;
  font-weight: bold;
}
@media print, screen and (min-width: 762px) {
  .p-office-number__number {
    font-size: 6rem;
  }
}

.p-office-number__unit {
  font-weight: bold;
}

/* office-data-box */
.p-office-data-box {
  display: grid;
  gap: 2rem;
  grid-template-columns: minmax(0, 1fr);
  padding: 6rem 2rem;
  border: 1px solid #888;
  background-color: #EAF3F3;
}
@media print, screen and (min-width: 1200px) {
  .p-office-data-box {
    padding: 7rem;
    grid-template-columns: 40fr 61fr;
  }
}

.p-office-data-box__link {
  display: flex;
  flex-direction: column;
  gap: 2rem;
  width: 100%;
  max-width: 50rem;
  margin-inline: auto;
}
@media print, screen and (min-width: 1200px) {
  .p-office-data-box__link {
    max-width: none;
  }
}

/* industry-legends */
.p-industry-legends-list {
  display: flex;
  gap: 0.5rem 2rem;
  flex-wrap: wrap;
  margin-bottom: 1rem;
  font-size: 1.4rem;
}
@media print, screen and (min-width: 1200px) {
  .p-industry-legends-list {
    font-size: 1.6rem;
  }
}

.p-industry-legends-parts {
  position: relative;
  display: flex;
  align-items: center;
  gap: 0.5rem;
  font-weight: bold;
}
.p-industry-legends-parts::before {
  content: "";
  display: inline-block;
  width: 1.6rem;
  height: 1.6rem;
  border-radius: 50%;
}
@media print, screen and (min-width: 1200px) {
  .p-industry-legends-parts::before {
    width: 2rem;
    height: 2rem;
  }
}
.p-industry-legends-parts--pharmaceuticals::before {
  background-color: #3169B3;
}
.p-industry-legends-parts--chemistry::before {
  background-color: #07aF7b;
}
.p-industry-legends-parts--food::before {
  background-color: #ec6110;
}
.p-industry-legends-parts--cosmetics::before {
  background-color: #a53d92;
}
.p-industry-legends-parts--institution::before {
  background-color: #f5a101;
}
.p-industry-legends-parts--venture::before {
  background-color: #fff100;
}
.p-industry-legends-parts--other::before {
  background-color: #7d818d;
}

/* office-tab */
.p-office-tab-list-wrapper {
  padding-bottom: 0.6rem;
  margin-bottom: 2rem;
  overflow-x: auto;
  overflow-y: hidden;
  text-align: center;
}
@media print, screen and (min-width: 762px) {
  .p-office-tab-list-wrapper {
    padding-bottom: 1.2rem;
    margin-bottom: 3rem;
  }
}

.p-office-tab-list {
  display: inline-flex;
  justify-content: center;
  gap: 1rem;
  margin-inline: 0.5rem;
}

.p-office-tab-list__button {
  position: relative;
  flex-grow: 0;
  flex-shrink: 0;
  width: auto;
  min-width: 15rem;
  min-height: 4.5rem;
  padding: 1rem;
  border: 1px solid #888;
  border-radius: 2.5rem;
  background-color: #f5f5f5;
  line-height: 1.5;
  font-weight: bold;
  white-space: nowrap;
}
.p-office-tab-list__button.is-active {
  border-color: #006ab7;
  background-color: #006ab7;
  color: #fff;
}
@media print, screen and (min-width: 762px) {
  .p-office-tab-list__button {
    min-width: 18rem;
    min-height: 5rem;
    padding-block: 1rem;
  }
}

.p-office-tab-panel {
  height: 0;
  opacity: 0;
  transition: opacity 0.1s;
  visibility: hidden;
}
.p-office-tab-panel.is-active {
  height: auto;
  opacity: 1;
  visibility: visible;
}

.p-office-tab-panel__inner {
  display: flex;
  align-items: center;
  flex-direction: column;
  padding-inline: 0.5rem;
}
@media print, screen and (min-width: 1200px) {
  .p-office-tab-panel__inner {
    padding-inline: 10rem;
  }
}

.p-tab-anchor-link-list {
  display: inline-flex;
  flex-wrap: wrap;
  padding-inline: 1.5rem;
  margin-bottom: 2rem;
}
@media print, screen and (min-width: 1200px) {
  .p-tab-anchor-link-list {
    padding-inline: 10rem;
    margin-bottom: 6rem;
  }
}

.p-tab-anchor-link-list__item {
  position: relative;
  flex-shrink: 0;
  font-size: 1.4rem;
}
@media print, screen and (min-width: 1200px) {
  .p-tab-anchor-link-list__item {
    font-size: 1.6rem;
  }
}
.p-tab-anchor-link-list__item:not(:last-child)::after {
  content: "";
  display: inline-block;
  width: 0.1rem;
  height: 1.3rem;
  margin-inline: 1rem;
  background-color: #888;
  vertical-align: baseline;
}

/* office-city-list */
.p-office-city-list {
  width: 100%;
}

.p-office-city-list__title {
  padding: 1rem 2rem;
  margin-bottom: 1rem;
  border: 1px solid #888;
  background-color: #f5f5f5;
  font-weight: bold;
}
@media print, screen and (min-width: 1200px) {
  .p-office-city-list__title {
    margin-bottom: 3rem;
    font-size: 1.8rem;
  }
}

.p-office-industry-list {
  padding-inline: 1rem;
}
@media print, screen and (min-width: 1200px) {
  .p-office-industry-list {
    padding-inline: 0;
  }
}

.p-office-industry-list__title {
  padding-bottom: 1rem;
  margin-bottom: 1rem;
  border-bottom: 1px solid #888;
  font-weight: bold;
}

.p-office-detail-list {
  display: grid;
  gap: 1rem 2rem;
  grid-template-columns: minmax(0, 1fr);
}
@media print, screen and (min-width: 1200px) {
  .p-office-detail-list {
    grid-template-columns: repeat(2, 1fr);
  }
}

.p-office-city-list__item + .p-office-city-list__item {
  margin-top: 3rem;
}

.p-office-industry-list__item + .p-office-industry-list__item {
  margin-top: 2rem;
}
@media print, screen and (min-width: 1200px) {
  .p-office-industry-list__item + .p-office-industry-list__item {
    margin-top: 3rem;
  }
}

@media print, screen and (min-width: 762px) {
  .p-office-data-map {
    width: auto;
    max-height: 80dvh;
    margin-inline: auto;
  }
}

/* graph-box */
.p-graph-box {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  padding-inline: 1.5rem;
}
@media print, screen and (min-width: 1200px) {
  .p-graph-box {
    grid-template-columns: repeat(3, 1fr);
    padding-inline: 0;
  }
}

.p-graph-box__item {
  position: relative;
}
.p-graph-box__item + .p-graph-box__item {
  margin-top: 6rem;
}
@media print, screen and (min-width: 1200px) {
  .p-graph-box__item + .p-graph-box__item {
    margin-top: 0;
  }
}
.p-graph-box__item + .p-graph-box__item::before {
  content: "";
  position: absolute;
  top: -3rem;
  left: 50%;
  display: block;
  width: 14rem;
  height: 0.1rem;
  background-color: #707070;
  transform: translate(-50%, 0);
}
@media print, screen and (min-width: 1200px) {
  .p-graph-box__item + .p-graph-box__item::before {
    top: 3rem;
    left: 0;
    width: 0.1rem;
    height: 14rem;
    transform: translate(0);
  }
}
@media print, screen and (min-width: 1200px) {
  .p-graph-box__item {
    padding-inline: 6rem;
  }
}

.p-graph-box__area {
  position: relative;
  display: flex;
  justify-content: center;
  margin-bottom: 1rem;
}

.p-graph-box__title {
  position: absolute;
  top: 50%;
  left: 50%;
  color: #083927;
  font-size: 2rem;
  font-weight: bold;
  transform: translate(-50%, -50%);
}

.p-graph-box__graph {
  width: 20rem;
  height: 20rem;
}

.p-graph-data-list {
  display: flex;
  flex-wrap: wrap;
  column-gap: 2rem;
}

.p-graph-data-list__item {
  display: flex;
  column-gap: 0.5rem;
  align-items: center;
  font-size: 1.3rem;
}
.p-graph-data-list__item::before {
  content: "";
  display: block;
  width: 1rem;
  height: 1rem;
}
.p-graph-data-list__item:nth-of-type(1)::before {
  background-color: #2c6c9e;
}
.p-graph-data-list__item:nth-of-type(2)::before {
  background-color: #679bc4;
}
.p-graph-data-list__item:nth-of-type(3)::before {
  background-color: #98c3e5;
}
.p-graph-data-list__item:nth-of-type(4)::before {
  background-color: #c2dbee;
}
.p-graph-data-list__item:nth-of-type(5)::before {
  background-color: #c5e3f8;
}
.p-graph-data-list__item:nth-of-type(6)::before {
  background-color: #c5eaf8;
}
.p-graph-data-list__item:nth-of-type(7)::before {
  background-color: #f2ffaa;
}
.p-graph-data-list__item:nth-of-type(8)::before {
  background-color: #dce89b;
}
.p-graph-data-list__item:nth-of-type(9)::before {
  background-color: #c8d38d;
}

.p-office-area {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  row-gap: 5rem;
}
@media print, screen and (min-width: 762px) {
  .p-office-area {
    row-gap: 8rem;
  }
}

.p-office-area-inner {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  row-gap: 2rem;
}
@media print, screen and (min-width: 762px) {
  .p-office-area-inner {
    row-gap: 4rem;
  }
}

.p-area-feature-text-box * + * {
  margin-top: 1.5rem;
}
.p-area-feature-text-box:not(:has(> .p-area-feature-text-accordion-box[open])) .p-area-feature-text-box__text--visible {
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

.p-area-feature-text-box__text {
  white-space: pre-line;
}

@media print, screen and (min-width: 762px) {
  .p-requirement-category__annotation {
    max-width: 100rem;
    margin: auto;
  }
}

/* recruitment-category-table */
.p-recruitment-category-table-wrapper {
  position: relative;
  margin-right: -2rem;
  padding-right: 2rem;
  overflow-x: auto;
}
@media print, screen and (min-width: 762px) {
  .p-recruitment-category-table-wrapper {
    margin-right: 0;
    padding-right: 0;
  }
}
.p-recruitment-category-table-wrapper::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  display: block;
  width: 50%;
  height: 0.1rem;
  border-bottom: 1px solid #888;
  z-index: 2;
}
@media print, screen and (min-width: 762px) {
  .p-recruitment-category-table-wrapper::after {
    display: none;
  }
}

.p-recruitment-category-table {
  table-layout: fixed;
  width: 100%;
  min-width: 59rem;
  border-collapse: separate;
  border-right: 1px solid #888;
  border-bottom: 1px solid #888;
}
@media print, screen and (min-width: 762px) {
  .p-recruitment-category-table {
    min-width: 88.5rem;
    max-width: 100rem;
    margin: auto;
  }
}
@media print {
  .p-recruitment-category-table {
    border-collapse: collapse;
  }
}
.p-recruitment-category-table--bg-gray .p-recruitment-category-table__blank {
  background-color: #f5f5f5;
}
.p-recruitment-category-table--bg-gray .p-recruitment-category-table__data {
  background-color: #fff;
}

.p-recruitment-category-table__blank {
  position: sticky;
  left: 0;
  background-color: #fff;
  touch-action: pan-y;
}
@media print {
  .p-recruitment-category-table__blank {
    position: static;
  }
}

.p-recruitment-category-table__theader {
  padding: 1.5rem 0.5rem;
  font-size: 1.6rem;
  font-weight: bold;
}
@media print, screen and (min-width: 1200px) {
  .p-recruitment-category-table__theader {
    padding-block: 2rem;
    font-size: 1.8rem;
  }
}
.p-recruitment-category-table__theader--small {
  padding: 0.5rem;
}
.p-recruitment-category-table__theader--region {
  background-color: #167ecb;
  color: #fff;
}
.p-recruitment-category-table__theader--nation {
  background-color: #0063ac;
  color: #fff;
}
.p-recruitment-category-table__theader--category {
  position: sticky;
  left: 0;
  background-color: #e5f0f8;
  border-right: 1px solid #888;
  font-size: 1.2rem;
}
@media print, screen and (min-width: 1200px) {
  .p-recruitment-category-table__theader--category {
    font-size: 1.8rem;
  }
}
@media print {
  .p-recruitment-category-table__theader--category {
    position: static;
  }
}
.p-recruitment-category-table__theader--academic-degrees {
  position: sticky;
  left: 4.5rem;
}
@media print, screen and (min-width: 762px) {
  .p-recruitment-category-table__theader--academic-degrees {
    left: 8.5rem;
  }
}
@media print {
  .p-recruitment-category-table__theader--academic-degrees {
    position: static;
  }
}

.p-recruitment-category-table__data {
  padding: 1.5rem 0.5rem;
  font-size: 1.6rem;
  font-weight: bold;
  text-align: center;
}
@media print, screen and (min-width: 1200px) {
  .p-recruitment-category-table__data {
    padding-block: 2rem;
    font-size: 1.8rem;
  }
}
.p-recruitment-category-table__data--small {
  padding: 0.5rem;
}

.p-recruitment-category-table__thead .p-recruitment-category-table__theader {
  border-top: 1px solid #fff;
  border-left: 1px solid #fff;
}

.p-recruitment-category-table__tbody .p-recruitment-category-table__theader,
.p-recruitment-category-table__tbody .p-recruitment-category-table__data {
  border-top: 1px solid #888;
  border-left: 1px solid #888;
}
@media print, screen and (min-width: 762px) {
  .p-recruitment-category-table__tbody .p-recruitment-category-table__theader,
  .p-recruitment-category-table__tbody .p-recruitment-category-table__data {
    padding-block: 2rem;
  }
}
.p-recruitment-category-table__tbody .p-recruitment-category-table__theader--first,
.p-recruitment-category-table__tbody .p-recruitment-category-table__data--first {
  border-left: none;
}
.p-recruitment-category-table__tbody .p-recruitment-category-table__theader--dashed,
.p-recruitment-category-table__tbody .p-recruitment-category-table__data--dashed {
  border-top: 1px dashed #888;
}
.p-recruitment-category-table__tbody .p-recruitment-category-table__theader--small,
.p-recruitment-category-table__tbody .p-recruitment-category-table__data--small {
  padding: 0.5rem;
}
.p-recruitment-category-table__tbody .p-recruitment-category-table__theader {
  font-size: 1.2rem;
  padding-inline: 0;
}
@media print, screen and (min-width: 762px) {
  .p-recruitment-category-table__tbody .p-recruitment-category-table__theader {
    font-size: 1.8rem;
  }
}
.p-recruitment-category-table__tbody .p-recruitment-category-table__theader--small {
  border-left: 0;
}
.p-recruitment-category-table__tbody .p-recruitment-category-table__data {
  padding-inline: 0.5rem;
}
@media print, screen and (min-width: 762px) {
  .p-recruitment-category-table__tbody .p-recruitment-category-table__data {
    padding-inline: 0;
    font-size: 1.8rem;
  }
}

.p-recruitment-category-table__col--thin {
  width: 4.5rem;
}
@media print, screen and (min-width: 762px) {
  .p-recruitment-category-table__col--thin {
    width: 8.5rem;
  }
}
.p-recruitment-category-table__col--middle {
  width: 15rem;
}
@media print, screen and (min-width: 762px) {
  .p-recruitment-category-table__col--middle {
    width: auto;
  }
}
.p-recruitment-category-table__col--large {
  width: 20rem;
}
@media print, screen and (min-width: 762px) {
  .p-recruitment-category-table__col--large {
    width: auto;
  }
}

/* rea-feature-text-accordion-box */
.p-area-feature-text-accordion-box__button {
  position: absolute;
  bottom: 0;
  width: 100%;
  font-weight: bold;
  list-style: none;
  text-align: center;
  cursor: pointer;
}
.p-area-feature-text-accordion-box__button::before {
  content: "";
  position: absolute;
  left: 50%;
  display: block;
  width: 1.5rem;
  height: 1.5rem;
  border-right: 1px solid #006ab7;
  border-bottom: 1px solid #006ab7;
  transform: rotate(45deg) translateX(-80%);
}
@media print, screen and (min-width: 1200px) {
  .p-area-feature-text-accordion-box__button {
    visibility: hidden;
  }
}

.p-area-feature-text-accordion-box {
  position: relative;
  min-height: 5rem;
}
.p-area-feature-text-accordion-box:not([open]) .p-area-feature-text-accordion-box__button {
  padding-bottom: 2rem;
}
.p-area-feature-text-accordion-box:not([open]) .p-area-feature-text-accordion-box__button::before {
  top: 3.5rem;
  transform: rotate(45deg) translateX(-80%);
}
.p-area-feature-text-accordion-box:not([open]) .p-area-feature-text-accordion-box__button::after {
  content: "続きを読む";
}
.p-area-feature-text-accordion-box[open] .p-area-feature-text-accordion-box__button {
  padding-top: 3.5rem;
}
.p-area-feature-text-accordion-box[open] .p-area-feature-text-accordion-box__button::before {
  bottom: 2rem;
  transform: rotate(-135deg) translateX(70%);
}
.p-area-feature-text-accordion-box[open] .p-area-feature-text-accordion-box__button::after {
  content: "閉じる";
}

.p-area-feature-text-accordion-box__content {
  padding-bottom: 7rem;
}
@media print, screen and (min-width: 1200px) {
  .p-area-feature-text-accordion-box__content {
    padding-bottom: 0;
  }
}
.p-area-feature-text-accordion-box__content > * + * {
  margin-top: 1.5rem;
}

/* loading */
.p-loading {
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  background-color: #fdfdfd;
  z-index: 1000;
}
.p-loading.is-hide {
  opacity: 0;
  pointer-events: none;
  transition: opacity 1.5s;
}

.p-loading__circle {
  display: block;
  position: relative;
  top: calc(50% - 20px);
  width: 40px;
  height: 40px;
  margin-inline: auto;
  border: 8px solid #e0e0e0;
  border-top: 8px solid #999;
  border-radius: 50px;
  animation: loading 1.5s linear infinite both;
}

@keyframes loading {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(700deg);
  }
}
.p-page-lead-text {
  text-align: left;
  font-size: 1.5rem;
  font-weight: bold;
}

@media print, screen and (min-width: 1200px) {
  .p-page-lead-text {
    font-size: 1.8rem;
    text-align: center;
  }
}
.p-heading--brand {
  color: #006ab7;
}

.p-heading--second {
  font-size: 1.5rem;
}

@media print, screen and (min-width: 1200px) {
  .p-heading--second {
    font-size: 2.4rem;
  }
}
.p-heading--forth {
  font-size: 1.8rem;
}

@media print, screen and (min-width: 1200px) {
  .p-heading--forth {
    font-size: 2.4rem;
  }
}
.p-heading--sp-left {
  text-align: left;
}

@media print, screen and (min-width: 1200px) {
  .p-heading--sp-left {
    text-align: center;
  }
}
.p-heading--left {
  text-align: left;
}

@media print, screen and (min-width: 1200px) {
  .p-heading--left--sp {
    text-align: center;
  }
}
@media print, screen and (min-width: 1200px) {
  .p-heading--left--pc {
    text-align: left;
  }
}
.p-heading--yuki-border {
  position: relative;
  margin-bottom: 3rem;
  line-height: 1.6;
}

.p-heading--yuki-border::before {
  content: "";
  position: absolute;
  bottom: -1rem;
  left: 0;
  display: block;
  width: 100%;
  height: 1px;
  background-color: #ccc;
}

@media print, screen and (min-width: 1200px) {
  .p-heading--yuki-border {
    margin-bottom: 6rem;
  }
  .p-heading--yuki-border::before {
    bottom: -2rem;
  }
}
@media print, screen and (min-width: 520px) {
  .p-img-talent {
    margin: 4rem auto 0;
    max-width: 70rem;
  }
}
.p-img-qr {
  max-width: 10rem;
}

/* 240917　松尾追記*/
.p-yuki-table {
  border-top: 1px solid #ccc;
  border-bottom: 1px solid #ccc;
  border-collapse: collapse;
  text-align: left;
  width: 100%;
}

.p-yuki-table__row {
  display: flex;
  flex-direction: column;
  width: 100%;
}

@media (min-width: 520px) {
  .p-yuki-table__row {
    flex-direction: row;
  }
}
.p-yuki-table__row + .p-yuki-table__row {
  border-top: 1px solid #ccc;
}

.p-yuki-table-data {
  padding: 2rem;
  background: #fff;
}

.p-yuki-table-data + .p-yuki-table-data {
  border-top: none;
}

@media (min-width: 520px) {
  .p-yuki-table-data--width10 {
    width: 10%;
  }
  .p-yuki-table-data--width15 {
    width: 15%;
  }
  .p-yuki-table-data--width20 {
    width: 20%;
  }
  .p-yuki-table-data--width25 {
    width: 25%;
  }
  .p-yuki-table-data--width30 {
    width: 30%;
  }
  .p-yuki-table-data--width35 {
    width: 35%;
  }
  .p-yuki-table-data--width40 {
    width: 40%;
  }
  .p-yuki-table-data--width45 {
    width: 45%;
  }
  .p-yuki-table-data--width50 {
    width: 50%;
  }
  .p-yuki-table-data--width60 {
    width: 60%;
  }
  .p-yuki-table-data--width75 {
    width: 75%;
  }
}
.p-yuki-table-data--heading {
  background: #e5f0f8;
  font-weight: 500;
}

.p-txt {
  margin-top: 3rem;
}

@media print, screen and (min-width: 1200px) {
  .p-txt {
    margin-top: 4rem;
  }
}
.p-txt-background {
  display: inline-block;
}

.p-txt-background--continue {
  background: linear-gradient(transparent 70%, rgba(255, 181, 84, 0.2) 70%, rgba(255, 181, 84, 0.2) 95%, transparent 95%);
}

.p-txt-background--transfer {
  background: linear-gradient(transparent 70%, rgba(88, 155, 207, 0.2) 70%, rgba(88, 155, 207, 0.2) 95%, transparent 95%);
}

.p-txt-background--group {
  background: linear-gradient(transparent 70%, rgba(136, 212, 112, 0.2) 70%, rgba(136, 212, 112, 0.2) 95%, transparent 95%);
}

.p-txt-background--yuki {
  background: linear-gradient(transparent 40%, rgb(197, 227, 245) 40%, rgb(197, 227, 245) 95%, transparent 95%);
  display: inline;
}

.p-txt-background--yuki-b {
  font-weight: bold;
  display: inline;
}

.p-career-step-program-box__list-title {
  color: #589bcf;
  font-weight: bold;
}

@media print, screen and (min-width: 1200px) {
  .p-career-step-program-box__list-title {
    font-size: 1.8rem;
  }
}
.p-yuki-letter {
  letter-spacing: -0.064rem;
}

@media (min-width: 376px) {
  .p-yuki-letter {
    letter-spacing: 0;
  }
}
.p-yuki__box {
  display: flex;
  gap: 2rem;
  flex-direction: column;
  justify-content: center;
}

@media (min-width: 768px) {
  .p-yuki__box {
    display: grid;
    gap: 2rem 4rem;
    grid-template-areas: "areaA areaC" "areaB areaC";
    grid-template-rows: auto 1fr;
  }
}
.p-yuki__box__img {
  display: block;
  width: 100%;
  height: auto;
}

@media (min-width: 520px) {
  .p-yuki__box__img {
    max-width: 36rem;
    height: auto;
  }
}
@media (min-width: 768px) {
  .p-yuki__box__item1 {
    order: 1;
    grid-area: areaA;
  }
}
@media (min-width: 768px) {
  .p-yuki__box__item2 {
    order: 2;
    grid-area: areaB;
  }
}
.p-yuki__box__item3 {
  display: flex;
  justify-content: center;
}

@media (min-width: 768px) {
  .p-yuki__box__item3 {
    order: 3;
    grid-area: areaC;
  }
}
.p-yuki-card {
  padding: 5rem 2rem;
  background-color: #fff;
}
@media (min-width: 1200px) {
  .p-yuki-card {
    padding: 10rem;
  }
}

.p-yuki-merit__box {
  display: flex;
  gap: 2rem;
  flex-direction: column;
  justify-content: center;
}

@media (min-width: 768px) {
  .p-yuki-merit__box {
    display: grid;
    gap: 4rem;
    grid-template-areas: "areaA areaC" "areaB areaC";
    grid-template-rows: auto 1fr;
  }
}
.p-yuki-merit__box__img {
  display: block;
  width: 100%;
  height: auto;
}

@media (min-width: 520px) {
  .p-yuki-merit__box__img {
    max-width: 48rem;
    height: auto;
  }
}
@media (min-width: 768px) {
  .p-yuki-merit__box__item1 {
    order: 1;
    grid-area: areaA;
  }
}
@media (min-width: 768px) {
  .p-yuki-merit__box__item2 {
    order: 2;
    grid-area: areaB;
  }
}
.p-yuki-merit__box__item3 {
  display: flex;
  justify-content: center;
}

@media (min-width: 768px) {
  .p-yuki-merit__box__item3 {
    order: 3;
    grid-area: areaC;
  }
}
.p-yuki-flame {
  padding: 2rem;
  border: 1px solid #ccc;
}

@media (min-width: 768px) {
  .p-yuki-flame {
    padding: 4rem;
  }
}
.p-yuki-flame__box {
  display: flex;
  flex-direction: column;
  gap: 2rem;
  justify-content: left;
}

/*概要*/
.p-yuki-outline {
  display: flex;
  gap: 2rem;
  flex-direction: column;
}

@media (min-width: 1200px) {
  .p-yuki-outline {
    text-align: center;
    gap: 4rem;
  }
}
.p-yuki-outline__title {
  font-size: 1.5rem;
  font-weight: bold;
  text-align: left;
}

@media (min-width: 1200px) {
  .p-yuki-outline__title {
    text-align: center;
  }
}
/*仕事の悩み*/
.p-yuki-problem {
  display: flex;
  gap: 2.5rem;
  flex-direction: column;
}

@media (min-width: 1200px) {
  .p-yuki-problem {
    gap: 5rem;
  }
}
.p-yuki-problem__content {
  position: relative;
  display: flex;
  gap: 2rem;
  flex-direction: column;
  padding-bottom: 5rem;
}

.p-yuki-problem__content::before {
  content: "";
  position: absolute;
  bottom: 0;
  width: 6rem;
  height: 7rem;
  background-color: transparent;
  background-image: url("../../assets/img/yukigosei/yuki_man.svg");
  background-size: 100% 100%;
  background-repeat: no-repeat;
}

@media (min-width: 1200px) {
  .p-yuki-problem__content::before {
    width: 8rem;
    height: 9rem;
  }
}
.p-yuki-problem__content::after {
  content: "";
  position: absolute;
  bottom: 0;
  right: 0;
  width: 6rem;
  height: 7rem;
  background-color: transparent;
  background-image: url("../../assets/img/yukigosei/yuki_woman.svg");
  background-size: 100% 100%;
  background-repeat: no-repeat;
}

@media (min-width: 1200px) {
  .p-yuki-problem__content::after {
    width: 8rem;
    height: 9rem;
  }
}
.p-yuki-problem__box {
  display: flex;
  gap: 1rem;
  flex-direction: column;
}

@media (min-width: 520px) {
  .p-yuki-problem__box {
    flex-direction: row;
    gap: 2rem;
    flex-wrap: wrap;
  }
}
.p-yuki-merit {
  display: flex;
  flex-direction: column;
  gap: 5rem;
}

@media (min-width: 1200px) {
  .p-yuki-merit {
    gap: 6rem;
  }
}
.p-yuki-skill__box {
  display: flex;
  flex-direction: column;
  gap: 2rem;
}

@media (min-width: 1200px) {
  .p-yuki-skill__box {
    gap: 4rem;
  }
}
.p-yuki-merit__career-box {
  display: flex;
  flex-direction: column;
  gap: 2rem;
}

@media (min-width: 520px) {
  .p-yuki-merit__career-box {
    flex-direction: row;
    justify-content: space-between;
  }
  .p-yuki-merit__career-box .p-ul-list {
    max-width: 66%;
  }
}
.p-yuki-problem__box-item {
  font-size: 1.5rem;
  padding: 2rem;
  background: #fff;
  border-radius: 1.5rem;
  line-height: 1.6;
}

@media (min-width: 520px) {
  .p-yuki-problem__box-item {
    width: calc((100% - 2rem) / 2);
  }
}
@media (min-width: 1200px) {
  .p-yuki-problem__box-item {
    padding: 4rem;
    border-radius: 3rem;
    width: calc((100% - 6rem) / 4);
  }
}
/*LINEボタン*/
.p-yuki-line__conversion {
  text-align: center;
  display: flex;
  gap: 1rem;
  flex-direction: column;
}

.p-yuki-line__conversion > p {
  position: relative;
  font-size: 1.5rem;
  color: #06C755;
  font-weight: bold;
  margin: 0 auto;
  padding-left: 1.6rem;
  line-height: 1.6;
}

.p-yuki-line__conversion > p::before {
  content: "";
  position: absolute;
  bottom: 0.7rem; /* 親要素の下側に配置 */
  left: 0.2rem; /* 親要素の中央に配置 */
  transform: translateX(-50%); /* 水平方向で中央に位置調整 */
  width: 0;
  height: 0;
  border-left: 8px solid transparent; /* 左側を透明にする */
  border-right: 8px solid transparent; /* 右側を透明にする */
  border-top: 10px solid #06C755; /* 上側に三角形を作成 */
  border-radius: 1px;
}

@media (min-width: 1200px) {
  .p-yuki-line__conversion > p {
    font-size: 1.8rem;
  }
}
.p-yuki-line__button {
  display: block;
  padding: 0.8rem 1rem;
  margin-inline: auto;
  max-width: 335px;
  width: 100%;
  border-radius: 3.6rem;
  background-color: #06C755;
  text-align: center;
  box-shadow: 3px 10px 10px rgba(0, 0, 0, 0.16);
}

@media (min-width: 1200px) {
  .p-yuki-line__button {
    font-size: 2rem;
    padding: 1.3rem 1rem;
    max-width: 357px;
  }
}
.p-yuki-line__contents {
  margin-inline: auto;
  color: #fff;
  font-size: 1.8rem;
  font-weight: bold;
  letter-spacing: 0.1rem;
}

@media (min-width: 1200px) {
  .p-yuki-line__contents {
    font-size: 2rem;
  }
}
.p-yuki-line__contents::before {
  content: "";
  display: inline-block;
  height: 4.6rem;
  width: 4.6rem;
  margin-right: 0.8rem;
  background: url(../../assets/img/yukigosei/index_icon_line.svg) no-repeat center/contain;
  vertical-align: middle;
}

.p-yuki-employment {
  display: flex;
  flex-direction: column;
  gap: 5rem;
}

@media (min-width: 1200px) {
  .p-yuki-employment {
    gap: 10rem;
  }
}
.p-yuki-employment__text {
  font-size: 1.5rem;
  margin-bottom: 2rem;
}
@media (min-width: 1200px) {
  .p-yuki-employment__text {
    font-size: 1.8rem;
    font-weight: bold;
  }
}

.p-yuki-industry {
  display: flex;
  flex-direction: column;
  gap: 4rem;
}

@media (min-width: 1200px) {
  .p-yuki-industry {
    flex-direction: row;
  }
}
.p-yuki-industry__box {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 2rem;
}

.p-yuki-industry__box__img {
  display: block;
  width: 100%;
  height: auto;
}

@media (min-width: 520px) {
  .p-yuki-industry__box__img {
    max-width: 34.7rem;
    height: auto;
  }
}
.p-yuki-voice {
  display: flex;
  flex-direction: column;
  gap: 2.4rem;
}

@media (min-width: 1200px) {
  .p-yuki-voice {
    flex-direction: row;
  }
}
.p-yuki-voice__box {
  border: solid 1px #CCCCCC;
  padding: 2rem;
  display: flex;
  flex-direction: column;
  gap: 2rem;
  align-items: center;
}

@media (min-width: 1200px) {
  .p-yuki-voice__box {
    padding: 4rem;
    width: 31.7333333333%;
  }
}
.p-yuki-voice__content {
  display: flex;
  flex-direction: column;
  gap: 1rem;
  align-items: center;
}

.p-yuki-voice__content__text {
  position: relative;
  padding: 0.5rem 1rem;
  background-color: #FFB554;
  border-radius: 1.9rem;
  line-height: 1.6;
  color: #fff;
  font-weight: bold;
}

.p-yuki-voice__content__text::after {
  content: "";
  position: absolute;
  bottom: -0.5rem;
  left: 50%;
  width: 0.6rem;
  height: 0.5rem;
  background-color: #FFB554;
  transform: rotate(45deg) translateX(-50%);
}

.p-yuki-voice__content__img {
  width: 8rem;
  height: auto;
}

.p-yuki-transfer {
  display: flex;
  gap: 1rem;
}

.p-yuki-transfer__text {
  font-size: 1.8rem;
  font-weight: bold;
  line-height: 1;
}

.p-yuki-transfer__text-income {
  font-size: 1.2rem;
  font-weight: 500;
}

/*こんな方におすすめ*/
.p-yuki-problem {
  display: flex;
  gap: 2rem;
  flex-direction: column;
}

@media (min-width: 1200px) {
  .p-yuki-problem {
    gap: 4rem;
  }
}
.p-yuki-training {
  display: flex;
  flex-direction: column;
  gap: 5rem;
}

@media (min-width: 1200px) {
  .p-yuki-training {
    gap: 6rem;
  }
}
.p-yuki-training__box {
  display: flex;
  flex-direction: column;
  gap: 2.4rem;
}

@media (min-width: 1200px) {
  .p-yuki-training__box {
    flex-direction: row;
  }
}
.p-yuki-training__box__item {
  padding: 4rem;
  background-color: #e5f0f8;
  display: flex;
  line-height: 1.6;
  gap: 2rem;
  flex-direction: column;
  align-items: center;
}

@media (min-width: 1200px) {
  .p-yuki-training__box__item {
    width: 33.3333333333%;
  }
}
.p-yuki-training__box__item-title {
  font-weight: bold;
  font-size: 1.8rem;
}

.p-yuki-message__box {
  display: flex;
  flex-direction: column;
  gap: 1rem;
}

@media (min-width: 520px) {
  .p-yuki-message__box {
    flex-direction: row;
    gap: 4rem;
  }
}
.p-yuki-message__box__img {
  display: block;
  max-width: 12rem;
  margin: 0 auto;
  height: auto;
}

@media (min-width: 520px) {
  .p-yuki-message__box__img {
    width: 100%;
    height: auto;
  }
}
.p-yuki-table__title {
  font-weight: bold;
}

@media (min-width: 1200px) {
  .yuki_gyokai-list_text {
    letter-spacing: -0.055rem;
  }
}
/*中途採用ページピックアップ*/
.p-career__title {
  font-size: 2rem;
  font-weight: bold;
  line-height: 1.6;
}

@media (min-width: 1200px) {
  .p-career__title {
    font-size: 2.4rem;
  }
}
.p-career__icon {
  background-color: #88D470;
  color: #fff;
  line-height: 1.6;
  padding: 0.5rem 1rem;
  border-radius: 0.4rem;
  margin-right: 1rem;
  margin-top: 0.2rem;
  margin-bottom: 0.2rem;
  font-size: 1.2rem;
  font-weight: bold;
}

@media (min-width: 1200px) {
  .p-career__icon {
    font-size: 1.5rem;
    margin-top: 0.5rem;
    margin-bottom: 0;
  }
}
.p-career-button {
  margin: 2rem auto 0;
}

@media (min-width: 768px) {
  .p-career-button {
    margin: 2rem 0 0 0;
  }
}
.p-career__box {
  border: solid 1px #88D470;
  padding: 2rem;
  display: flex;
  gap: 2rem;
  flex-direction: column;
  justify-content: center;
}

@media (min-width: 768px) {
  .p-career__box {
    padding: 4rem;
    display: grid;
    gap: 2rem 4rem;
    grid-template-areas: "areaA areaC" "areaB areaC";
    grid-template-rows: auto 1fr;
  }
}
.p-career__box__img {
  display: block;
  width: 100%;
  height: auto;
}

@media (min-width: 520px) {
  .p-career__box__img {
    max-width: 46.4rem;
    height: auto;
  }
}
.p-career__box__item1 {
  display: flex;
  justify-content: left;
}

@media (min-width: 768px) {
  .p-career__box__item1 {
    order: 1;
    grid-area: areaA;
  }
}
.p-career__box__item2 {
  display: flex;
  flex-direction: column;
  justify-content: center;
}

@media (min-width: 768px) {
  .p-career__box__item2 {
    order: 2;
    grid-area: areaB;
    justify-content: left;
  }
}
.p-career__box__item3 {
  display: flex;
  justify-content: center;
}

@media (min-width: 768px) {
  .p-career__box__item3 {
    order: 3;
    grid-area: areaC;
  }
}
/* color */
.u-color-white {
  color: #fff;
}

.u-color-bg-white {
  background-color: #fff;
}

/* display */
.u-d-none {
  display: none;
}

.u-d-block {
  display: block;
}

.u-d-inline-b {
  display: inline-block;
}

.u-d-only-pc {
  display: none;
}
@media print, screen and (min-width: 762px) {
  .u-d-only-pc {
    display: inline-block;
  }
}

.u-d-only-pc02 {
  display: none;
}
@media print, screen and (min-width: 1200px) {
  .u-d-only-pc02 {
    display: inline-block;
  }
}

@media print, screen and (min-width: 762px) {
  .u-d-only-sp {
    display: none;
  }
}
@media print, screen and (min-width: 1200px) {
  .u-d-only-tab {
    display: none;
  }
}/*# sourceMappingURL=style.css.map */