@charset "UTF-8";
/*base*/
html {
  font-size: 62.5%;
  word-break: break-word;
  scroll-padding-top: 7rem;
}
@media print, screen and (min-width: 1024px) {
  html {
    scroll-padding-top: 12rem;
  }
}

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

body {
  display: flex;
  flex-direction: column;
  position: relative;
  overflow-y: scroll;
  min-height: 100vh;
  color: #111;
  font-family: "Noto Sans JP", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ", "Meiryo", "ＭＳＰゴシック", sans-serif;
  font-size: 1.6em;
  font-weight: 500;
  line-height: 1.6;
  -webkit-text-size-adjust: 100%;
}

: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: 768px) {
  a[href*="tel:"] {
    cursor: pointer;
  }
}

img {
  height: auto;
}

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

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

input,
select,
textarea {
  padding: 0;
  font-size: 1.6rem;
}

input::-ms-reveal {
  visibility: hidden;
}

input[type=checkbox], input[type=radio], input[type=button], input[type=submit] {
  cursor: pointer;
}

input[type=submit] {
  -webkit-appearance: none;
}

textarea {
  resize: none;
}

button {
  border: none;
  padding: 0;
  background-color: transparent;
  color: #111;
  text-align: left;
  cursor: pointer;
}

select {
  color: #111;
  cursor: pointer;
}

hr {
  border: none;
  border-top: 1px solid #707070;
}

rt {
  padding: 0.2rem;
  text-align: center;
}

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

/* header */
.l-header {
  position: relative;
  width: 100%;
  left: 0;
  top: 0;
  z-index: 100;
}

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

/* footer */
.l-footer {
  overflow: clip;
  width: 100%;
}

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

/* container */
.c-container {
  padding: 0 2.4rem;
}
@media print, screen and (min-width: 1024px) {
  .c-container {
    margin: 0 auto;
    padding: 0 2.4rem;
    max-width: 124.8rem;
  }
}
@media print, screen and (min-width: 1024px) {
  .c-container--narrow {
    max-width: 104.8rem;
  }
}
@media print, screen and (min-width: 1024px) {
  .c-container--tiny {
    max-width: 86.8rem;
  }
}

/* text */
/* color */
.p-text-color-main {
  color: #0059b2;
}
.p-text-color-main--bold {
  font-weight: bold;
}

/* dot */
.c-dot-text {
  display: inline-block;
  position: relative;
  margin-top: 0.4em;
  color: #0059b2;
}
.c-dot-text::before {
  content: "・";
  position: absolute;
  top: -30%;
  left: 50%;
  font-size: 0.8em;
  transform: translateX(-50%);
  line-height: 1;
}
.c-dot-text--blue::before {
  color: #0059b2;
}

/* marker */
.c-text-marker {
  display: inline;
  background: linear-gradient(transparent 60%, #b9d9ff 60%, #b9d9ff 100%);
}

/* text-link */
/* 上の余白 */
.c-text-link-container-lv1 {
  margin-top: 1.6rem;
}

/* normal */
.c-text-link {
  color: #1364ef;
  text-decoration: none;
  word-break: break-word;
}
.c-text-link:hover {
  text-decoration: underline;
}
.c-text-link--intext {
  text-decoration: underline;
}
.c-text-link--intext:hover {
  text-decoration: none;
}
.c-text-link[target=_blank]::after {
  content: "";
  display: inline-block;
  position: relative;
  height: 1.2rem;
  width: 1.2rem;
  margin: 0 0 0 1.6rem;
  background: url(../../assets/img/cmn/cmn_icon_other-window.svg) no-repeat center center;
}
.c-text-link[href^=http]::after {
  height: 1.3rem;
  width: 1.3rem;
  background: url(../../assets/img/cmn/cmn_icon_external-site.svg) no-repeat center center;
}
.c-text-link[href^="https://www.wdb-g.com/"]::after {
  height: 1.2rem;
  width: 1.2rem;
  margin: 0 0 0 1.6rem;
  vertical-align: baseline;
  background: url(../../assets/img/cmn/cmn_icon_other-window.svg) no-repeat center center;
}

/* button */
.c-button {
  position: relative;
  display: inline-flex;
  align-items: center;
  overflow: hidden;
}

.c-button-container-center {
  display: flex;
  justify-content: center;
}

/* header */
.p-header {
  height: 7rem;
  width: 100%;
  background-color: #fff;
}
@media print, screen and (min-width: 1024px) {
  .p-header {
    position: sticky;
    border-bottom: 1px solid #888;
    height: 12rem;
    transition: all 0.2s ease 0s;
    -webkit-transition: all 0.2s ease 0s;
  }
}
@media print {
  .p-header {
    position: static;
  }
}

.p-header__inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding-inline: 0.6rem;
  height: 100%;
  width: 100%;
}
@media print, screen and (min-width: 1024px) {
  .p-header__inner {
    margin: 0 auto;
    padding-inline: min(3%, 6rem);
    height: 100%;
  }
}

.p-header__logo {
  width: 12.4rem;
}
@media print, screen and (min-width: 1024px) {
  .p-header__logo {
    width: 35%;
    max-width: 55rem;
    transition: all 0.2s ease 0s;
    -webkit-transition: all 0.2s ease 0s;
  }
}

.p-header-link img {
  width: 100%;
}
@media print, screen and (min-width: 1024px) {
  .p-header-link:hover {
    opacity: 0.7;
  }
}

.p-header-contact {
  display: flex;
  align-items: center;
  column-gap: min(1.8vw, 2.4rem);
  height: 100%;
}

.p-header-contact__tel-container {
  display: grid;
  align-items: center;
  gap: 0.4rem 1rem;
  grid-template-columns: 6.8rem 1fr;
}
@media print, screen and (min-width: 1024px) {
  .p-header-contact__tel-container {
    grid-template-columns: 10rem 1fr;
    justify-content: center;
  }
}

.p-header-contact__support-desk {
  border-radius: 12px;
  padding: 0.3rem 0.6rem;
  background-color: #666;
  color: #fff;
  font-size: 0.8rem;
  font-weight: bold;
  text-align: center;
}
@media print, screen and (min-width: 1024px) {
  .p-header-contact__support-desk {
    font-size: 1.2rem;
  }
}

.p-header-contact__tel-number {
  display: inline-flex;
  align-items: center;
  font-size: 1.6rem;
  font-weight: bold;
  line-height: 1.4;
}
@media print, screen and (min-width: 1024px) {
  .p-header-contact__tel-number {
    font-size: min(3vw, 3.2rem);
  }
}
.p-header-contact__tel-number::before {
  content: "";
  display: block;
  height: 2.2rem;
  margin-right: 0.4rem;
  width: 2.2rem;
  background: url(../../assets/img/cmn/cmn_icon_tel.svg) no-repeat center center/contain;
}

.p-header-contact__tel-office-hours {
  font-size: 0.8rem;
  grid-column: 1/-1;
  margin-left: 0.6rem;
}
@media print, screen and (min-width: 1024px) {
  .p-header-contact__tel-office-hours {
    font-size: 1.3rem;
  }
}

.p-header-contact__button {
  display: none;
}
@media print, screen and (min-width: 1024px) {
  .p-header-contact__button {
    display: grid;
    place-items: center;
  }
}

/* button */
.p-button-entry {
  display: flex;
  justify-content: center;
  border-radius: 40px;
  height: 100%;
  background-color: #f5a623;
  color: #fff;
  font-weight: bold;
  transition: all 0.2s ease 0s;
  -webkit-transition: all 0.2s ease 0s;
}
@media print, screen and (min-width: 1024px) {
  .p-button-entry:hover {
    opacity: 0.7;
  }
}
@media print, screen and (min-width: 1024px) {
  .p-button-entry--header {
    height: fit-content;
    padding: 2.4rem;
    width: min(22vw, 25rem);
    font-size: 2rem;
  }
}
.p-button-entry--footer {
  box-shadow: 0 0.3rem 0.3rem rgba(0, 0, 0, 0.16);
  width: min(100%, 33.5rem);
  font-size: 1.6rem;
}
.p-button-entry--contact {
  padding: 1.5rem;
  width: min(100%, 26.4rem);
  font-size: 1.8rem;
}
@media print, screen and (min-width: 1024px) {
  .p-button-entry--contact {
    font-size: 2.4rem;
    padding: 1.8rem;
    width: min(100%, 36rem);
  }
}

.p-button-entry__icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  height: 2.5rem;
  margin-left: 1.2rem;
  width: 2.5rem;
  border-radius: 50%;
  background-color: #fff;
}
.p-button-entry__icon::after {
  content: "";
  display: inline-block;
  border-top: 3.5px solid #f5a623;
  border-right: 3.5px solid #f5a623;
  margin-left: -0.3rem;
  height: 0.9rem;
  width: 0.9rem;
  transform: rotate(45deg);
  transition: border-color 0.2s;
}
.p-button-entry__icon--footer {
  height: 1.6rem;
  width: 1.6rem;
}
.p-button-entry__icon--footer::after {
  border-top: 2px solid #f5a623;
  border-right: 2px solid #f5a623;
  height: 0.7rem;
  width: 0.7rem;
}

.p-button-eureka {
  display: flex;
  justify-content: center;
  border: 1px solid #1364ef;
  border-radius: 40px;
  height: 100%;
  padding: 0.7rem;
  width: min(100%, 19.2rem);
  background-color: #fff;
  color: #1364ef;
  font-weight: bold;
}
@media print, screen and (min-width: 1024px) {
  .p-button-eureka {
    padding: 1.3rem;
    width: min(100%, 25rem);
    font-size: 1.8rem;
  }
}

.p-button-more {
  display: flex;
  justify-content: center;
  border: 1px solid #0059b2;
  border-radius: 100px;
  height: 100%;
  padding: 0.7rem;
  width: min(100%, 16.4rem);
  background-color: #fff;
  color: #0059b2;
  font-weight: bold;
}
@media print, screen and (min-width: 1024px) {
  .p-button-more {
    padding: 1.3rem;
    width: min(100%, 20.6rem);
    font-size: 1.8rem;
  }
}

.p-button-more__icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  height: 2rem;
  margin-left: 1.6rem;
  width: 2rem;
  border-radius: 50%;
  background-color: #0059b2;
}
.p-button-more__icon::after {
  content: "";
  display: inline-block;
  border-top: 2.5px solid #fff;
  border-right: 2.5px solid #fff;
  margin-top: -0.3rem;
  height: 0.7rem;
  width: 0.7rem;
  transform: rotate(135deg);
  transition: border-color 0.2s;
}

/* main */
@media print {
  .p-main {
    margin-top: 0;
  }
}

/* section */
.p-large-section {
  padding-block: 5.6rem;
}
@media print, screen and (min-width: 1024px) {
  .p-large-section {
    padding-block: 12rem;
  }
}
.p-large-section--bg {
  background-color: #e9f3ff;
}
.p-large-section--footer {
  padding-bottom: 8.6rem;
  padding-inline: 5.6rem;
}
@media print, screen and (min-width: 1024px) {
  .p-large-section--footer {
    padding-bottom: 2.4rem;
  }
}
.p-large-section--bg-problem {
  position: relative;
  padding-top: 5.6rem;
  padding-bottom: 8.1rem;
  background-color: #e9f3ff;
}
@media print, screen and (min-width: 1024px) {
  .p-large-section--bg-problem {
    padding-top: 12rem;
    padding-bottom: 17rem;
  }
}
.p-large-section--bg-problem::before {
  display: block;
  content: "";
  position: absolute;
  border-bottom: 25px solid #fff;
  border-right: 40px solid transparent;
  bottom: 0;
  left: 0;
  width: 50%;
}
@media print, screen and (min-width: 1024px) {
  .p-large-section--bg-problem::before {
    border-bottom: 50px solid #fff;
    border-right: 100px solid transparent;
  }
}
.p-large-section--bg-problem::after {
  display: block;
  content: "";
  border-bottom: 25px solid #fff;
  border-left: 40px solid transparent;
  position: absolute;
  bottom: 0;
  right: 0;
  width: 50%;
}
@media print, screen and (min-width: 1024px) {
  .p-large-section--bg-problem::after {
    border-bottom: 50px solid #fff;
    border-left: 100px solid transparent;
  }
}
.p-large-section--bg-about {
  background: linear-gradient(to bottom, #e9f3ff 0%, #fff 25%, #fff 100%);
}

.p-large-section__heading + .p-large-section__content {
  margin-top: 3.2rem;
}
@media print, screen and (min-width: 1024px) {
  .p-large-section__heading + .p-large-section__content {
    margin-top: 8rem;
  }
}

/* heading */
.p-heading-primary-box {
  display: flex;
  align-items: center;
  flex-direction: column;
  row-gap: 0.8rem;
}

.p-heading-primary-main {
  font-size: 2.4rem;
  font-weight: bold;
  letter-spacing: 0.05em;
  line-height: 1.5;
  text-align: center;
  font-feature-settings: "palt";
}
@media print, screen and (min-width: 1024px) {
  .p-heading-primary-main {
    font-size: 4rem;
  }
}

.p-heading-primary-sub {
  color: rgba(74, 144, 226, 0.8);
  font-family: "Noto Sans", sans-serif;
  font-size: 1.4rem;
  font-weight: bold;
}
@media print, screen and (min-width: 1024px) {
  .p-heading-primary-sub {
    position: relative;
    display: inline-block;
    font-size: 1.8rem;
  }
}

/* footer */
.p-footer__button {
  position: fixed;
  bottom: 0;
  left: 0;
  display: flex;
  justify-content: center;
  padding: 1.2rem 2.4rem;
  height: 7rem;
  width: 100%;
  z-index: 100;
}
@media print, screen and (min-width: 1024px) {
  .p-footer__button {
    display: none;
  }
}

.p-footer {
  display: flex;
  flex-direction: column;
  justify-content: center;
  text-align: center;
}
.p-footer img {
  width: 100%;
}

.p-footer-submenu {
  display: flex;
  align-items: center;
  flex-direction: column;
  row-gap: 1.6rem;
  font-size: 1.4rem;
}
@media print, screen and (min-width: 1024px) {
  .p-footer-submenu {
    row-gap: 5.6rem;
    margin: 0 auto;
    max-width: 120rem;
    font-size: 1.8rem;
  }
}
.p-footer-submenu + .p-footer-submenu {
  margin-top: 1.6rem;
}
@media print, screen and (min-width: 1024px) {
  .p-footer-submenu + .p-footer-submenu {
    margin-top: 8rem;
  }
}

.p-footer-submenu__eureka-logo {
  margin: 0 auto;
  width: 10rem;
}
@media print, screen and (min-width: 1024px) {
  .p-footer-submenu__eureka-logo {
    width: 21rem;
  }
}

.p-footer-submenu__address {
  display: flex;
  flex-direction: column;
  row-gap: 0.4rem;
}

.p-footer-submenu__list {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  font-weight: normal;
}

.p-footer-submenu__list-item {
  display: inline;
}
.p-footer-submenu__list-item:not(:last-child):after {
  content: "｜";
  padding-inline: 0.4rem;
  color: #888;
}

.p-footer-submenu__link {
  font-size: 1rem;
}
@media print, screen and (min-width: 1024px) {
  .p-footer-submenu__link {
    font-size: 1.6rem;
  }
}
.p-footer-submenu__link[target=_blank]::after {
  content: "";
  display: inline-block;
  position: relative;
  height: 1rem;
  width: 1rem;
  margin-left: 0.4rem;
  background: url(../../assets/img/cmn/cmn_icon_other-window-black.svg) no-repeat center center/contain;
}
@media print, screen and (min-width: 1024px) {
  .p-footer-submenu__link[target=_blank]::after {
    height: 1.2rem;
    width: 1.2rem;
  }
}
.p-footer-submenu__link[href^=http]::after {
  height: 1rem;
  width: 1rem;
  background: url(../../assets/img/cmn/cmn_icon_external-site-black.svg) no-repeat center center/contain;
}
@media print, screen and (min-width: 1024px) {
  .p-footer-submenu__link[href^=http]::after {
    height: 1.3rem;
    width: 1.3rem;
  }
}
@media print, screen and (min-width: 1024px) {
  .p-footer-submenu__link:hover {
    text-decoration: underline;
  }
}

.p-footer-submenu__wdbg-logo {
  width: 10rem;
}
@media print, screen and (min-width: 1024px) {
  .p-footer-submenu__wdbg-logo {
    width: 12rem;
  }
}

.p-footer-copyright {
  margin-top: 1.6rem;
  font-size: 1rem;
  text-align: center;
}
@media print, screen and (min-width: 1024px) {
  .p-footer-copyright {
    margin-top: 5.6rem;
    font-size: 1.2rem;
  }
}

/* local */
/* main-visual */
.p-main-visual {
  display: flex;
  justify-content: center;
  background-color: #134272;
}
@media print, screen and (min-width: 1024px) {
  .p-main-visual {
    max-height: calc(100vh - 12rem);
    min-height: 56rem;
    overflow: hidden;
  }
}
@media print, screen and (min-width: 1280px) {
  .p-main-visual {
    min-height: 62rem;
  }
}
.p-main-visual picture {
  display: inline;
}
.p-main-visual img {
  width: 100%;
}
@media print, screen and (min-width: 1024px) {
  .p-main-visual img {
    max-width: 192rem;
    height: 100%;
    object-fit: cover;
    object-position: center;
  }
}

/* problem */
.p-heading-problem {
  font-size: 2rem;
  font-weight: bold;
  letter-spacing: 0.05em;
  text-align: center;
}
@media print, screen and (min-width: 1024px) {
  .p-heading-problem {
    font-size: 3.2rem;
  }
}
.p-heading-problem::after {
  content: "";
  display: inline-block;
  position: relative;
  height: 3.2rem;
  width: 3.4rem;
  margin-bottom: 0.8rem;
  background: url(../../assets/img/top/index_icon_worry-bubble.svg) no-repeat center center/contain;
  vertical-align: middle;
}
@media print, screen and (min-width: 1024px) {
  .p-heading-problem::after {
    height: 4.6rem;
    width: 4.8rem;
  }
}

.p-problem {
  display: grid;
  grid-template-columns: auto;
  gap: 2.8rem;
}
@media print, screen and (min-width: 1024px) {
  .p-problem {
    grid-template-columns: repeat(2, 1fr);
    justify-content: center;
    gap: 5.2rem 4rem;
  }
  .p-problem > :nth-last-child(1):nth-child(odd) {
    grid-column: 1/span 2;
    justify-self: center;
    width: calc((100% - 6.4rem) / 2);
  }
}
@media print, screen and (min-width: 1280px) {
  .p-problem {
    grid-template-columns: repeat(3, 1fr);
    gap: 3.6rem 2.4rem;
  }
  .p-problem > :nth-last-child(1):nth-child(odd) {
    grid-column: auto;
    justify-self: auto;
    width: auto;
  }
}

.p-problem__item {
  display: grid;
  place-items: center;
  position: relative;
  border: 2px solid #0059b2;
  border-radius: 10px;
  padding: 2.4rem;
  background-color: #fff;
  font-weight: bold;
  text-align: center;
}
@media print, screen and (min-width: 768px) {
  .p-problem__item {
    padding: 5.6rem 4rem;
    font-size: 2.2rem;
    line-height: 1.7;
  }
}
.p-problem__item::before {
  content: "";
  position: absolute;
  top: -1.2rem;
  left: 50%;
  height: 2.4rem;
  width: 2.4rem;
  background: url(../../assets/img/cmn/cmn_icon_check-mark.svg) no-repeat center center/contain;
  transform: translateX(-50%);
  z-index: 3;
}
@media print, screen and (min-width: 1024px) {
  .p-problem__item::before {
    top: -2.4rem;
    height: 4.8rem;
    width: 4.8rem;
  }
}

/* solution */
.p-solution {
  display: flex;
  align-items: center;
  flex-direction: column;
  row-gap: 2.4rem;
}
@media print, screen and (min-width: 1024px) {
  .p-solution {
    row-gap: 4.8rem;
  }
}

.p-solution-introduction {
  font-weight: bold;
  letter-spacing: 0.015em;
  line-height: 1.8;
}
@media print, screen and (min-width: 1024px) {
  .p-solution-introduction {
    font-size: 2rem;
    line-height: 2.5;
    letter-spacing: 0;
  }
}

/* about */
.p-about-introduction {
  font-size: 1.8rem;
  font-weight: bold;
}
@media print, screen and (min-width: 1024px) {
  .p-about-introduction {
    font-size: 2.4rem;
    text-align: center;
  }
}

.p-about {
  display: flex;
  flex-direction: column;
  gap: 4.8rem;
  margin-top: 2.4rem;
}
@media print, screen and (min-width: 1024px) {
  .p-about {
    gap: 8.8rem;
    margin-top: 5.6rem;
  }
}

.p-about__item {
  position: relative;
}
.p-about__item + .p-about__item::before {
  content: "";
  position: absolute;
  top: -3.2rem;
  left: 50%;
  border-top: 1.8rem solid #227de8;
  border-right: 1.8rem solid transparent;
  border-left: 1.8rem solid transparent;
  transform: translateX(-50%);
}
@media print, screen and (min-width: 1024px) {
  .p-about__item + .p-about__item::before {
    top: -5.6rem;
    border-top: 3.2rem solid #227de8;
    border-right: 3.2rem solid transparent;
    border-left: 3.2rem solid transparent;
  }
}

.p-about__title {
  display: flex;
  flex-direction: column;
  border: 1px solid #0059b2;
  border-bottom: none;
  border-radius: 10px 10px 0 0;
  padding: 0.6rem 0.8rem;
  background-color: #0059b2;
  color: #fff;
  font-size: 1.8rem;
  font-weight: bold;
  text-align: center;
}
@media print, screen and (min-width: 1024px) {
  .p-about__title {
    align-items: center;
    column-gap: 4rem;
    flex-direction: row;
    padding: 1.6rem 4rem;
    font-size: 3rem;
    text-align: left;
  }
}

.p-about-step {
  flex-shrink: 0;
  font-family: "Noto Sans", sans-serif;
  font-size: 1.4rem;
}
@media print, screen and (min-width: 1024px) {
  .p-about-step {
    font-size: 2.4rem;
  }
}

.p-about__content {
  display: flex;
  flex-direction: column;
  row-gap: 2.4rem;
  border: 1px solid #888;
  border-top: none;
  border-radius: 0 0 10px 10px;
  padding: 3.2rem 2.4rem;
  background-color: #fff;
}
@media print, screen and (min-width: 1024px) {
  .p-about__content {
    row-gap: 4rem;
    padding: 5.6rem min(10%, 15rem);
    font-size: 1.8rem;
  }
}

.p-about-number-container {
  line-height: 1;
}

.p-about-number {
  color: #0059b2;
  font-family: "Noto Sans", sans-serif;
  font-size: 5.5rem;
  font-weight: bold;
  letter-spacing: -0.01em;
}

.p-about-number-small {
  color: #0059b2;
  font-family: "Noto Sans", sans-serif;
  font-size: 2rem;
  font-weight: bold;
  letter-spacing: -0.01em;
}

.p-about-dispatch-box {
  display: flex;
  flex-direction: column;
  row-gap: 0.8rem;
}
@media print, screen and (min-width: 1024px) {
  .p-about-dispatch-box {
    row-gap: 1.6rem;
  }
}

.p-about-dispatch-box-heading {
  font-size: 1.8rem;
  font-weight: bold;
}
@media print, screen and (min-width: 1024px) {
  .p-about-dispatch-box-heading {
    font-size: 2rem;
  }
}

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

.p-about-dispatch__list {
  display: flex;
  align-items: center;
  flex-direction: column;
  row-gap: 1.6rem;
  border-radius: 10px;
  padding: 2.4rem;
  background-color: #f5f5f5;
  font-size: 1.4rem;
}
.p-about-dispatch__list img {
  width: 100%;
}
@media print, screen and (min-width: 1024px) {
  .p-about-dispatch__list:first-child {
    grid-column: 1/2;
    grid-row: 1/2;
  }
  .p-about-dispatch__list:nth-child(2) {
    grid-column: 1/2;
    grid-row: 2/3;
  }
  .p-about-dispatch__list:nth-child(3) {
    grid-column: 2/3;
    grid-row: 1/3;
  }
  .p-about-dispatch__list:nth-child(4) {
    grid-column: 3/4;
    grid-row: 1/3;
  }
}

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

.p-about-evaluation-explanation {
  display: flex;
  flex-direction: column;
  row-gap: 0.8rem;
}

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

.p-about-tripartite-heading-container {
  display: grid;
  place-items: center;
}

.p-about-tripartite-heading {
  display: inline-block;
  position: relative;
  padding-left: 2.5rem;
  font-size: 1.8rem;
  font-weight: bold;
}
@media print, screen and (min-width: 1024px) {
  .p-about-tripartite-heading {
    font-size: 2rem;
  }
}
.p-about-tripartite-heading::before {
  position: absolute;
  content: "";
  display: block;
  left: 0;
  top: 0.6rem;
  height: 1.8rem;
  width: 1.8rem;
  background: url(../../assets/img/cmn/cmn_icon_check-mark.svg) no-repeat center center/contain;
}
@media print, screen and (min-width: 1024px) {
  .p-about-tripartite-heading::before {
    top: 0.7rem;
    height: 2rem;
    width: 2rem;
  }
}

.p-about-permanent-employee {
  display: flex;
  flex-direction: column;
  row-gap: 2.4rem;
}

.p-about-permanent-employee-heading {
  font-size: 1.8rem;
  font-weight: bold;
  letter-spacing: 0.015em;
  line-height: 1.4;
  text-align: center;
}
@media print, screen and (min-width: 1024px) {
  .p-about-permanent-employee-heading {
    font-size: 2.8rem;
    text-align: left;
  }
}

/* features */
.p-features {
  display: flex;
  flex-direction: column;
  row-gap: 4rem;
}
@media print, screen and (min-width: 1024px) {
  .p-features {
    row-gap: 8rem;
  }
}

.p-features__item {
  display: flex;
  align-items: center;
  flex-direction: column;
  row-gap: 1.6rem;
}
@media print, screen and (min-width: 1024px) {
  .p-features__item {
    row-gap: 4rem;
  }
}

.p-heading-features-number {
  color: #227de8;
  font-family: "Noto Sans", sans-serif;
  font-size: 4rem;
  font-weight: bold;
  letter-spacing: -0.01em;
  line-height: 1.35;
  text-align: center;
}
@media print, screen and (min-width: 1024px) {
  .p-heading-features-number {
    font-size: 8rem;
    letter-spacing: normal;
  }
}

.p-heading-features {
  display: flex;
  flex-direction: column;
  align-items: center;
  row-gap: 0.8rem;
}

.p-heading-features__sub {
  position: relative;
  display: inline-block;
  padding-inline: 1.6rem;
  font-size: 1.4rem;
  font-weight: bold;
  line-height: 1.6;
  text-align: center;
  z-index: 2;
}
.p-heading-features__sub::before, .p-heading-features__sub::after {
  content: "";
  position: absolute;
  bottom: 15%;
  display: block;
  height: 1.25em;
  border-right: 2px solid #707070;
}
.p-heading-features__sub::before {
  left: 0;
  transform: rotate(-30deg);
}
.p-heading-features__sub::after {
  right: 0;
  transform: rotate(30deg);
}
@media print, screen and (min-width: 1024px) {
  .p-heading-features__sub {
    font-size: 2rem;
  }
  .p-heading-features__sub::before, .p-heading-features__sub::after {
    height: 1em;
  }
}

.p-heading-features__main {
  font-size: 2rem;
  font-weight: bold;
  letter-spacing: 0.05em;
}
@media print, screen and (min-width: 1024px) {
  .p-heading-features__main {
    font-size: 3.6rem;
  }
}

.p-features__content {
  display: flex;
  flex-direction: column;
  row-gap: 0.8rem;
}
@media print, screen and (min-width: 1024px) {
  .p-features__content {
    row-gap: 2.4rem;
  }
}

.p-features__explanation {
  display: flex;
  flex-direction: column;
  row-gap: 1.6rem;
  border-radius: 10px;
  padding: 1.6rem;
  background-color: #fff;
}
@media print, screen and (min-width: 1024px) {
  .p-features__explanation {
    row-gap: 2.4rem;
    padding: 4rem;
    font-size: 1.8rem;
  }
}

@media print, screen and (min-width: 1024px) {
  .p-features-img {
    width: 80%;
    margin-inline: auto;
  }
}
.p-features-img img {
  width: 100%;
}

.p-features-aim {
  margin-top: 4rem;
  font-size: 1.8rem;
  font-weight: bold;
}
@media print, screen and (min-width: 1024px) {
  .p-features-aim {
    margin-top: 8rem;
    font-size: 2.4rem;
  }
}

/* voice */
.p-voice {
  display: grid;
  grid-template-columns: 1fr;
  gap: 1.6rem;
}
@media print, screen and (min-width: 1024px) {
  .p-voice {
    grid-template-columns: repeat(2, 1fr);
    gap: 2.4rem;
  }
}

.p-voice__list {
  display: grid;
  align-items: flex-start;
  grid-template-areas: "left right" "full full";
  grid-template-columns: auto 1fr;
  grid-template-rows: auto 1fr;
  gap: 1.6rem 2.4rem;
  border-radius: 10px;
  padding: 3.2rem 2.4rem;
  background-color: #fff;
}

.p-voice__img {
  grid-area: left;
  width: 8rem;
}

.p-voice__title {
  grid-area: right;
  display: flex;
  flex-direction: column;
  justify-content: center;
  row-gap: 0.4rem;
  font-size: 1.4rem;
}
@media print, screen and (min-width: 1024px) {
  .p-voice__title {
    row-gap: 0.8rem;
    font-size: 1.6rem;
  }
}

.p-heading-voice {
  font-size: 2rem;
  color: #0059b2;
  font-weight: bold;
  line-height: 1.3;
}
@media print, screen and (min-width: 1024px) {
  .p-heading-voice {
    font-size: 2.4rem;
  }
}

.p-voice__explanation {
  grid-area: full;
  font-size: 1.8rem;
}

/* flow */
.p-flow {
  display: grid;
  gap: 2.4rem;
  grid-template-columns: 1fr;
  max-width: 60rem;
  margin-inline: auto;
}
@media print, screen and (min-width: 1280px) {
  .p-flow {
    align-items: stretch;
    gap: 3.2rem 4rem;
    grid-template-columns: repeat(4, 1fr);
    max-width: 100%;
  }
}
.p-flow + .p-flow {
  margin-top: 2.4rem;
}
@media print, screen and (min-width: 1280px) {
  .p-flow:first-child {
    grid-template-columns: repeat(3, 1fr);
    margin-inline: min(13%, 16rem);
  }
}

.p-flow__list {
  position: relative;
  border-radius: 10px;
}
@media print, screen and (min-width: 1280px) {
  .p-flow__list {
    display: flex;
    flex-direction: column;
    min-height: 28.2rem;
    width: 27rem;
  }
}
.p-flow__list::after {
  content: "";
  position: absolute;
  bottom: -1.8rem;
  left: 50%;
  border-top: 1rem solid #999;
  border-right: 1rem solid transparent;
  border-left: 1rem solid transparent;
  transform: translateX(-50%);
}
@media print, screen and (min-width: 1280px) {
  .p-flow__list::after {
    top: 55%;
    bottom: auto;
    right: -4.5rem;
    left: auto;
    border-top: 1.2rem solid #999;
    border-right: 1.2rem solid transparent;
    border-left: 1.2rem solid transparent;
    transform: translateX(-50%) rotate(-90deg);
  }
}

.p-flow:last-of-type .p-flow__list:last-child::after {
  content: none;
}

.p-flow__title {
  border: 2px solid #0059b2;
  border-bottom: none;
  border-radius: 10px 10px 0 0;
  padding: 1.2rem;
  background-color: #0059b2;
  color: #fff;
  font-weight: bold;
  letter-spacing: 0.05em;
  text-align: center;
}
@media print, screen and (min-width: 1280px) {
  .p-flow__title {
    padding: 1.6rem;
    font-size: 2.4rem;
  }
}

.p-flow__content {
  display: flex;
  flex-direction: column;
  row-gap: 2.4rem;
  border: 2px solid #0059b2;
  border-top: none;
  border-radius: 0 0 10px 10px;
  padding: 1.6rem 3.2rem;
}
@media print, screen and (min-width: 1280px) {
  .p-flow__content {
    flex: 1;
    padding: 2.4rem 3.2rem;
    font-size: 2rem;
  }
}

/* contact */
.p-contact {
  display: flex;
  align-items: center;
  flex-direction: column;
  row-gap: 3.2rem;
  font-weight: bold;
}
@media print, screen and (min-width: 1024px) {
  .p-contact {
    row-gap: 5.6rem;
    font-size: 2rem;
    text-align: center;
  }
}

/* color-box */
.p-color-box {
  display: flex;
  flex-direction: column;
  row-gap: 1.6rem;
  border-radius: 10px;
  height: 100%;
  padding: 2.4rem;
  background-color: #f5f5f5;
}

/* table */
.p-scroll-finger {
  display: flex;
  row-gap: 0.8rem;
  justify-content: center;
  margin-bottom: 1.6rem;
  font-weight: normal;
}
@media (min-width: 798px) {
  .p-scroll-finger {
    display: none;
  }
}

.p-compare-table-wrapper {
  position: relative;
  margin-right: -3.2rem;
  padding-right: 3.2rem;
  padding-top: 1.6rem;
  padding-bottom: 0.9rem;
  backface-visibility: hidden;
  overflow-x: auto;
}
@media print, screen and (min-width: 1024px) {
  .p-compare-table-wrapper {
    margin-right: 0;
    padding-right: 0;
  }
}

.p-compare-table {
  border-spacing: 0;
  table-layout: fixed;
  width: 100%;
  min-width: 75rem;
  border-collapse: separate;
  border-radius: 10px;
  font-size: 1.4rem;
  backface-visibility: hidden;
}
@media print, screen and (min-width: 1024px) {
  .p-compare-table {
    font-size: 1.8rem;
  }
}

.p-compare-table__col--header {
  width: 9rem;
}
@media print, screen and (min-width: 1024px) {
  .p-compare-table__col--header {
    width: 13.6rem;
  }
}
.p-compare-table__col--middle {
  width: calc((100% - 9rem) / 4);
}
@media print, screen and (min-width: 1024px) {
  .p-compare-table__col--middle {
    width: calc((100% - 13.6rem) / 4);
  }
}
.p-compare-table__col--large {
  width: calc((100% - 9rem) / 4);
}
@media print, screen and (min-width: 1024px) {
  .p-compare-table__col--large {
    width: calc((100% - 13.6rem) / 4);
  }
}

.p-compare-table-thead,
.p-compare-table-item-head,
.p-compare-table-tdata {
  position: relative;
}

.p-compare-table-tdata {
  font-weight: normal;
}

.p-compare-table-thead__background,
.p-compare-table-item-head__background,
.p-compare-table-tdata__background {
  position: absolute;
  inset: 0;
}

.p-compare-table-thead__inner,
.p-compare-table-item-head__inner,
.p-compare-table-tdata__inner {
  position: relative;
  padding: 1.6rem 0.8rem;
  z-index: 1;
}

.p-compare-table-thead {
  color: #fff;
  font-size: 1.6rem;
  text-align: center;
}
@media print, screen and (min-width: 1024px) {
  .p-compare-table-thead {
    font-size: 2rem;
  }
}
.p-compare-table-thead--sticky {
  position: sticky;
  left: 0;
  z-index: 2;
}

.p-compare-table-thead__background--use {
  background-color: #0059b2;
}
.p-compare-table-thead__background--no-use {
  background-color: #606060;
  border-right: 1px solid #fff;
}
.p-compare-table-thead__background--blank {
  margin-top: -1.6rem;
  background-color: #fff;
}

.p-compare-table__row:first-child .p-compare-table-thead:nth-child(2) .p-compare-table-thead__background {
  margin-top: -0.8rem;
  border-top-left-radius: 1rem;
  border-top-right-radius: 1rem;
}
.p-compare-table__row:first-child .p-compare-table-thead:nth-child(2) .p-compare-table-thead__inner {
  padding-bottom: 2.4rem;
}
.p-compare-table__row:first-child .p-compare-table-thead:last-child .p-compare-table-thead__background {
  border-top-right-radius: 1rem;
  border-right: none;
}

.p-compare-table-item-head {
  position: sticky;
  left: 0;
  background-color: #fff;
  z-index: 2;
}
@media print, screen and (min-width: 1024px) {
  .p-compare-table-item-head {
    font-size: 2rem;
  }
}

.p-compare-table-item-head__background {
  border-right: 1px solid #707070;
  border-bottom: 1px solid #707070;
  border-left: 1px solid #707070;
  background-color: #f5f9ff;
}

.p-compare-table__row:last-child .p-compare-table-item-head__background {
  border-bottom-left-radius: 1rem;
}
.p-compare-table__row:last-child .p-compare-table-item-head__background::after {
  content: "";
  position: absolute;
  display: block;
  bottom: -0.9rem;
  left: -0.1rem;
  width: calc(100% + 0.1rem);
  height: 0.8rem;
  background-color: #fff;
}

.p-compare-table__row:nth-child(2) .p-compare-table-item-head__background {
  border-top: 1px solid #707070;
  border-top-left-radius: 1rem;
}

.p-compare-table-tdata__inner {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
}

.p-compare-table-tdata-icon {
  display: flex;
  justify-content: center;
  margin-bottom: 0.4rem;
  width: 3rem;
}
@media print, screen and (min-width: 1024px) {
  .p-compare-table-tdata-icon {
    width: 4rem;
  }
}

.p-compare-table-tdata-icon-title {
  color: #0059b2;
  font-weight: bold;
}
@media print, screen and (min-width: 1024px) {
  .p-compare-table-tdata-icon-title {
    font-size: 2rem;
  }
}

.p-compare-table-tdata__background {
  border-right: 1px solid #707070;
  border-bottom: 1px solid #707070;
}

.p-compare-table__row:not(:first-child) .p-compare-table-tdata:first-of-type .p-compare-table-tdata__background {
  border-left: 0.8rem solid #0059b2;
  border-right: 0.8rem solid #0059b2;
}
.p-compare-table__row:last-child .p-compare-table-tdata:first-of-type .p-compare-table-tdata__background {
  margin-bottom: -0.8rem;
  border-bottom-left-radius: 1rem;
  border-bottom-right-radius: 1rem;
  border-bottom: 0.8rem solid #0059b2;
}
.p-compare-table__row:last-child .p-compare-table-tdata:last-child .p-compare-table-tdata__background {
  border-bottom-right-radius: 1rem;
}

/* annotation */
.p-annotation-container-lv2 {
  margin-top: 1.6rem;
}

.p-annotation {
  font-size: 1.4rem;
  font-weight: 400;
}
@media print, screen and (min-width: 1024px) {
  .p-annotation {
    font-size: 1.8rem;
  }
}
@media print, screen and (min-width: 1024px) {
  .p-annotation--small {
    font-size: 1.6rem;
  }
}

/* accordion */
.p-accordion {
  border: 1px solid #707070;
  border-radius: 10px;
  background-color: #fff;
}
.p-accordion + .p-accordion {
  margin-top: 0.8rem;
}
@media print, screen and (min-width: 1024px) {
  .p-accordion + .p-accordion {
    margin-top: 1.6rem;
  }
}

.p-accordion__header {
  display: flex;
  align-items: center;
  gap: 0.8rem;
  position: relative;
  cursor: pointer;
  padding: 1.6rem 3.5rem 1.6rem 1.6rem;
  font-weight: bold;
}
@media print, screen and (min-width: 1024px) {
  .p-accordion__header {
    gap: 3.2rem;
    padding: 3.2rem 6.5rem 3.2rem 3.2rem;
    font-size: 2rem;
  }
}
.p-accordion__header::-webkit-details-marker, .p-accordion__header::marker {
  display: none;
}

.p-accordion__q-mark,
.p-accordion__a-mark {
  margin-bottom: 0.3rem;
  font-size: 1.8rem;
  font-weight: bold;
}
@media print, screen and (min-width: 1024px) {
  .p-accordion__q-mark,
  .p-accordion__a-mark {
    font-size: 2.4rem;
  }
}

.p-accordion__q-mark {
  color: #227de8;
}

.p-accordion__a-mark {
  margin-right: 0.5rem;
  color: #ff4e4e;
}

.p-accordion__arrow-icon {
  position: absolute;
  top: 48%;
  right: 1.6rem;
  display: inline-block;
}
@media print, screen and (min-width: 1024px) {
  .p-accordion__arrow-icon {
    right: 3.2rem;
  }
}
.p-accordion__arrow-icon::before, .p-accordion__arrow-icon::after {
  content: "";
  position: absolute;
  right: 0;
  top: 50%;
  height: 0.1rem;
  width: 1.1rem;
  background-color: #227de8;
  transition: transform 0.1s;
}
@media print, screen and (min-width: 1024px) {
  .p-accordion__arrow-icon::before, .p-accordion__arrow-icon::after {
    height: 0.25rem;
    width: 2.5rem;
  }
}
.p-accordion__arrow-icon::after {
  transform: rotate(90deg);
}
.js-details.is-opened .p-accordion__arrow-icon::after {
  transform: rotate(180deg);
}

.p-accordion__content {
  position: relative;
  overflow: hidden;
}

.p-accordion__content-inner {
  display: flex;
  position: relative;
  gap: 0.8rem;
  padding: 1.6rem;
  font-weight: bold;
}
@media print, screen and (min-width: 1024px) {
  .p-accordion__content-inner {
    gap: 2.4rem;
    padding: 3.2rem;
    font-size: 2rem;
  }
}
.p-accordion__content-inner::before {
  position: absolute;
  content: "";
  top: 0;
  left: 1.6rem;
  height: 1px;
  width: calc(100% - 3.2rem);
  background-color: #777;
}
@media print, screen and (min-width: 1024px) {
  .p-accordion__content-inner::before {
    left: 3.2rem;
    width: calc(100% - 6.4rem);
  }
}

/* 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: 1024px) {
  .u-d-only-pc {
    display: inline-block;
  }
}

@media print, screen and (min-width: 768px) {
  .u-d-only-sp {
    display: none;
  }
}
.u-d-tab-sp {
  display: block;
}
@media print, screen and (min-width: 1024px) {
  .u-d-tab-sp {
    display: none;
  }
}

/* text */
.u-fs-note {
  font-size: 1.2rem;
}
@media print, screen and (min-width: 1024px) {
  .u-fs-note {
    font-size: 1.4rem;
  }
}

/* font-weight */
.u-fw-medium {
  font-weight: 500;
}

.u-fw-bold {
  font-weight: bold;
}/*# sourceMappingURL=style.css.map */