  *:where(:not(html, iframe, canvas, img, svg, video, audio):not(svg *, symbol *)) {
  all: unset;
  display: revert
}
*,
*::before,
*::after {
  box-sizing: border-box
}
a,
button {
  cursor: revert
}
ol,
ul,
menu {
  list-style: none
}
table {
  border-collapse: collapse
}
input,
textarea {
  -webkit-user-select: auto
}
textarea {
  white-space: revert
}
meter {
  -webkit-appearance: revert;
  appearance: revert
}
:where(pre) {
  all: revert
}
::placeholder {
  color: unset
}
::marker {
  content: initial
}
:where([hidden]) {
  display: none
}
:where([contenteditable]:not([contenteditable=false])) {
  -moz-user-modify: read-write;
  -webkit-user-modify: read-write;
  overflow-wrap: break-word;
  -webkit-line-break: after-white-space;
  -webkit-user-select: auto
}
:where([draggable=true]) {
  -webkit-user-drag: element
}
:where(dialog:modal) {
  all: revert
}
ruby rt {
  font-size: 75%;
  line-height: 1;
  transform: translateY(5px);
}
.c-voice-card,
.c-tiny-card,
.c-step-card,
.c-photo-card,
.c-mini-card,
.c-feature-card,
.c-expansion-card {
  border: 2px solid #e0e0e0;
  overflow: hidden
}
@keyframes fadeIn {
  from {
    opacity: 0
  }
  to {
    opacity: 1
  }
}
@keyframes zoomOut {
  from {
    transform: scale(1.15)
  }
  to {
    transform: scale(1)
  }
}
html {
  scroll-behavior: smooth;
  scroll-padding-top: var(--headerHeight);
  font-size: 100%
}
body {
  width: 100%;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-weight: 500;
  line-height: 1.75;
  color: #000
}
a,
button,
input:not([type=range]),
label,
select,
summary {
  touch-action: manipulation
}
button {
  cursor: pointer
}
a {
  text-decoration: none
}
img {
  max-width: 100%;
  height: auto;
  vertical-align: bottom
}
input {
  margin: 0;
  padding: 0;
  background: none;
  border: none;
  border-radius: 0;
  outline: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none
}
input[type=date] {
  width: 1px;
  height: 1px;
  white-space: nowrap;
  clip: rect(0 0 0 0);
  clip-path: inset(50%);
  overflow: hidden;
  position: absolute
}
sup {
  vertical-align: super;
  font-size: smaller
}
.c-article-block {
  display: grid
}
@media screen and (max-width: 767.98px) {
  .c-article-block {
    row-gap: 32px
  }
}
@media print,
screen and (min-width: 768px) {
  .c-article-block {
    grid-template-columns: 1fr 240px;
    column-gap: 48px
  }
}
.c-article-block-heading {
  line-height: 1.75;
  color: #b52b5d;
  font-weight: bold
}
@media screen and (max-width: 767.98px) {
  .c-article-block-heading {
    font-size: 1.3125rem
  }
}
@media print,
screen and (min-width: 768px) {
  .c-article-block-heading {
    font-size: 1.25rem
  }
}
.c-profile {
  display: grid
}
@media screen and (max-width: 767.98px) {
  .c-profile {
    grid-template-columns: 1fr 1fr;
    column-gap: 20px
  }
}
@media print,
screen and (min-width: 768px) {
  .c-profile {
    row-gap: 8px
  }
}
@media screen and (max-width: 767.98px) {
  .c-profile-heading {
    font-size: .75rem;
    margin-bottom: 16px
  }
}
@media print,
screen and (min-width: 768px) {
  .c-profile-heading {
    font-size: 1rem;
    margin-bottom: 8px
  }
  .c-profile-heading br {
    display: none
  }
}
@media screen and (max-width: 767.98px) {
  .c-profile-heading__name {
    font-size: 1rem
  }
}
@media print,
screen and (min-width: 768px) {
  .c-profile-heading__name {
    font-size: 1.25rem;
    margin-inline: 16px 4px
  }
}
@media screen and (max-width: 767.98px) {
  .c-profile-content__career {
    font-size: .75rem
  }
}
@media print,
screen and (min-width: 768px) {
  .c-profile-content__career {
    font-size: .875rem
  }
}
.c-article-box {
  margin-inline: auto;
  display: flex
}
@media screen and (max-width: 767.98px) {
  .c-article-box {
    row-gap: 24px;
    flex-wrap: wrap
  }
}
@media print,
screen and (min-width: 768px) {
  .c-article-box {
    column-gap: 40px
  }
}
@media screen and (max-width: 767.98px) {
  .c-article-box__item {
    width: 100%
  }
}
@media print,
screen and (min-width: 768px) {
  .c-article-box__item {
    width: 50%
  }
}
@media print,
screen and (min-width: 768px) {
  .c-article-box--expand-uneven {
    column-gap: 48px
  }
}
@media print,
screen and (min-width: 768px) {
  .c-article-box--expand-uneven .c-article-box__item:nth-of-type(1) {
    width: 53.3333333333%
  }
}
@media print,
screen and (min-width: 768px) {
  .c-article-box--expand-uneven .c-article-box__item:nth-of-type(2) {
    width: 42.2222222222%
  }
}
@media print,
screen and (min-width: 768px) {
  .c-article-box--row-reverse {
    flex-direction: row-reverse
  }
}
@media screen and (max-width: 767.98px) {
  .c-article-box--row-reverse {
    flex-direction: column-reverse
  }
}
@media print,
screen and (min-width: 768px) {
  .c-article-box--vertical-center .c-article-box__item {
    display: flex;
    flex-direction: column;
    justify-content: center
  }
}
.c-article-box .c-article-box-item__heading+.c-article-box-item__text {
  margin-top: 24px
}
.c-with-aspect-ratio {
  width: 100%;
  object-fit: cover;
  aspect-ratio: var(--aspect-ratio)
}
@media print,
screen and (min-width: 768px) {
  .c-with-aspect-ratio[style*="--aspect-ratio-pc"] {
    aspect-ratio: var(--aspect-ratio-pc)
  }
}
@media screen and (max-width: 767.98px) {
  .c-with-aspect-ratio[style*="--aspect-ratio-sp"] {
    aspect-ratio: var(--aspect-ratio-sp)
  }
}
@media screen and (min-width: 768px)and (max-width: 1024px) {
  .c-with-aspect-ratio[style*="--aspect-ratio-tablet"] {
    aspect-ratio: var(--aspect-ratio-tablet)
  }
}
.c-avatar {
  clip-path: circle(50%);
  background-color: var(--bg-color)
}
.c-avatar__img {
  object-fit: cover;
  aspect-ratio: 1;
  transform: scale(var(--scale))
}
.c-avatar--square {
  clip-path: inset(0% 0% 0% 0%)
}
.c-footer-horizontal-banner,
.c-footer-banner,
.c-horizontal-banner,
.c-banner {
  display: flex;
  width: 100%;
  transition: opacity .3s;
  position: relative;
  overflow: hidden
}
@media(hover: hover) {
  .c-footer-horizontal-banner:not(.is-disabled-hover):hover,
  .c-footer-banner:not(.is-disabled-hover):hover,
  .c-horizontal-banner:not(.is-disabled-hover):hover,
  .c-banner:not(.is-disabled-hover):hover {
    opacity: .8
  }
}
.c-horizontal-banner,
.c-banner {
  box-shadow: 0 3px 10px rgba(0, 0, 0, .2)
}
@media print,
screen and (min-width: 768px) {
  .c-horizontal-banner,
  .c-banner {
    border-radius: 15px
  }
}
@media screen and (max-width: 767.98px) {
  .c-horizontal-banner,
  .c-banner {
    border-radius: 10px
  }
}
.c-footer-horizontal-banner,
.c-footer-banner {
  border-radius: 5px
}
.c-banner {
  --icon-color: #db7499
}
.c-banner__icon,
.c-banner__image {
  display: block
}
.c-banner__image {
  width: 100%
}
.c-banner__image img {
  object-fit: cover;
  width: 100%;
  height: 100%
}
.c-banner__icon {
  position: absolute
}
.c-banner__icon--prev {
  transform: translateY(-50%) rotate(180deg);
  top: 50%
}
@media print,
screen and (min-width: 768px) {
  .c-banner__icon--prev {
    left: 20px
  }
}
@media screen and (max-width: 767.98px) {
  .c-banner__icon--prev {
    left: 12px
  }
}
.c-banner__icon--next {
  bottom: 12px
}
@media print,
screen and (min-width: 768px) {
  .c-banner__icon--next {
    right: 10px
  }
}
@media screen and (max-width: 767.98px) {
  .c-banner__icon--next {
    right: 12px
  }
}
.c-horizontal-banner {
  --bg-color: #db7499;
  position: relative
}
.c-horizontal-banner::after {
  content: "";
  display: block;
  width: 24px;
  height: 12px;
  clip-path: polygon(50% 0, 100% 100%, 0 100%);
  background-color: var(--bg-color);
  transform: rotate(135deg);
  position: absolute;
  right: 4px;
  bottom: 10px
}
.c-horizontal-banner__image {
  display: block
}
@media print,
screen and (min-width: 768px) {
  .c-horizontal-banner__image {
    width: 40.1162790698%
  }
}
@media screen and (max-width: 767.98px) {
  .c-horizontal-banner__image {
    width: 29.8507462687%
  }
}
.c-horizontal-banner__image img {
  object-fit: cover;
  width: 100%;
  height: 100%
}
.c-horizontal-banner__content {
  display: flex;
  flex-direction: column;
  justify-content: center;
  text-align: center;
  background-color: #e8e8e8
}
@media print,
screen and (min-width: 768px) {
  .c-horizontal-banner__content {
    width: 59.8837209302%;
    padding: 30px 10px
  }
}
@media screen and (max-width: 767.98px) {
  .c-horizontal-banner__content {
    width: 70.1492537313%
  }
}
.c-horizontal-banner__text,
.c-horizontal-banner__large-text {
  display: block;
  width: 100%;
  letter-spacing: .02em
}
.c-horizontal-banner__text {
  font-size: .875rem;
  line-height: 1.428
}
@media print,
screen and (min-width: 768px) {
  .c-horizontal-banner__text+.c-horizontal-banner__large-text {
    margin-top: 6px
  }
}
@media screen and (max-width: 767.98px) {
  .c-horizontal-banner__text+.c-horizontal-banner__large-text {
    margin-top: 2px
  }
}
.c-horizontal-banner__large-text {
  font-size: 1.25rem;
  line-height: 1.45;
  color: #0054ac
}
.c-footer-banner--border {
  border: solid 1px #ccc
}
.c-footer-horizontal-banner {
  --bg-color: #db7499;
  border: solid 1px #ccc;
  position: relative
}
.c-footer-horizontal-banner::after {
  content: "";
  display: block;
  width: 16px;
  height: 8px;
  clip-path: polygon(50% 0, 100% 100%, 0 100%);
  background-color: var(--bg-color);
  transform: rotate(135deg);
  position: absolute;
  right: 7px;
  bottom: 7px
}
@media print,
screen and (min-width: 768px) {
  .c-footer-horizontal-banner__image {
    width: 30%
  }
}
@media screen and (max-width: 767.98px) {
  .c-footer-horizontal-banner__image {
    width: 29.8507462687%
  }
}
.c-footer-horizontal-banner__image img {
  object-fit: cover;
  width: 100%;
  height: 100%
}
.c-footer-horizontal-banner__text {
  display: flex;
  flex-direction: column;
  justify-content: center;
  text-align: center;
  letter-spacing: .02em;
  color: #0054ac;
  background-color: #f4f4f4
}
@media print,
screen and (min-width: 768px) {
  .c-footer-horizontal-banner__text {
    width: 70%;
    font-size: 1rem
  }
}
@media screen and (max-width: 767.98px) {
  .c-footer-horizontal-banner__text {
    width: 70.1492537313%;
    font-size: 1.4375rem
  }
}
.c-breadcrumbs {
  list-style-type: none
}
@media print,
screen and (min-width: 768px) {
  .c-breadcrumbs {
    padding-inline: 40px
  }
}
@media screen and (max-width: 767.98px) {
  .c-breadcrumbs {
    padding-inline: 20px
  }
}
.c-breadcrumbs-item {
  display: inline
}
.c-breadcrumbs-item__icon {
  display: inline-flex;
  width: 5px;
  height: 8px;
  padding: 0 8px;
  background-color: #000;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-position: center;
  mask-position: center;
  -webkit-mask-size: contain;
  mask-size: contain;
  -webkit-mask-image: url("/assets/images/icon/breadcrumbs-arrow_gray.svg");
  mask-image: url("/assets/images/icon/breadcrumbs-arrow_gray.svg")
}
.c-breadcrumbs-item:last-child {
  pointer-events: none;
  cursor: default
}
.c-breadcrumbs-item:not(:last-child) {
  color: #0054ac;
  border: none
}
.c-breadcrumbs-item:nth-of-type(1) .c-breadcrumbs-item__link {
  text-transform: uppercase
}
.c-breadcrumbs-item__link {
  transition: opacity .3s
}
@media(hover: hover) {
  .c-breadcrumbs-item__link:not(.is-disabled-hover):hover:hover {
    opacity: .8
  }
}
@media print,
screen and (min-width: 768px) {
  .c-breadcrumbs-item__link {
    font-size: .875rem
  }
}
@media screen and (max-width: 767.98px) {
  .c-breadcrumbs-item__link {
    font-size: .75rem
  }
}
.reserve-button,
.c-cv-button,
.c-search-store-button,
.c-button {
  display: flex;
  align-items: center;
  width: 100%;
  font-weight: bold;
  text-align: center;
  box-shadow: 0 3px 10px rgba(0, 0, 0, .2);
  transition: opacity .3s
}
@media print,
screen and (min-width: 768px) {
  .reserve-button,
  .c-cv-button,
  .c-search-store-button,
  .c-button {
    border-radius: 15px
  }
}
@media screen and (max-width: 767.98px) {
  .reserve-button,
  .c-cv-button,
  .c-search-store-button,
  .c-button {
    border-radius: 10px
  }
}
@media(hover: hover) {
  .reserve-button:not(.is-disabled-hover):hover,
  .c-cv-button:not(.is-disabled-hover):hover,
  .c-search-store-button:not(.is-disabled-hover):hover,
  .c-button:not(.is-disabled-hover):hover {
    opacity: .8
  }
}
.c-button {
  --icon-color: #db7499;
  color: #b52b5d;
  background-color: #fff;
  border: 2px solid #db7499
}
@media print,
screen and (min-width: 768px) {
  .c-button {
    font-size: 1.25rem;
    letter-spacing: .02em;
    padding: 15px 19px 16px
  }
}
@media screen and (max-width: 767.98px) {
  .c-button {
    font-size: 1rem;
    letter-spacing: .04em;
    padding: 19px 15px
  }
}
@media(hover: hover) {
  .c-button:not(.is-disabled-hover):hover {
    opacity: .8
  }
}
.c-button__text {
  display: block;
  width: 100%;
  padding: 0 .5em
}
.c-button__icon {
  flex-shrink: 0;
  width: 28px !important;
  height: 28px !important;
  border-radius: 50%
}
.c-button__icon--left {
  transform: rotate(180deg)
}
.c-button--fill {
  color: #fff;
  background-color: #db7499;
  border: 2px solid rgba(0, 0, 0, 0)
}
.c-button--fill .c-button__icon {
  background-color: #fff !important
}
.c-button--blue {
  color: #0054ac;
  border-color: #0054ac
}
.c-button--blue .c-button__icon {
  --icon-color: #0054ac
}
.c-button--blue.c-button--fill {
  color: #fff;
  background-color: #0054ac
}
.c-button[disabled],
.c-button--disabled {
  --icon-color: #cccccc;
  color: #ccc;
  border-color: #ccc;
  box-shadow: none;
  pointer-events: none
}
.c-button[disabled].c-button--fill,
.c-button--disabled.c-button--fill {
  --icon-color: #ffffff;
  color: #fff;
  background-color: #ccc
}
.c-search-store-button {
  --icon-color: #ffffff;
  color: #fff;
  background-color: #db7499;
  background-repeat: no-repeat;
  background-size: auto
}
@media print,
screen and (min-width: 768px) {
  .c-search-store-button {
    font-size: 1.5rem;
    letter-spacing: .02em;
    background-image: url("/service/assets/images/img_search-store_pc.png");
    background-position: top 0 left 40px;
    padding: 38px 20px 40px
  }
}
@media screen and (max-width: 767.98px) {
  .c-search-store-button {
    font-size: 1.3125rem;
    letter-spacing: .04em;
    background-image: url("/service/assets/images/img_search-store_sp.png");
    background-position: top 0 left 0;
    padding: 31.625px 16px
  }
}
@media(hover: hover) {
  .c-search-store-button:not(.is-disabled-hover):hover {
    opacity: .8
  }
}
.c-search-store-button__text {
  display: block;
  width: 100%;
  padding-right: .5em;
  padding-left: calc(24px + .5em)
}
.c-search-store-button__icon {
  flex-shrink: 0;
  border-radius: 50%
}
.c-cv-button {
  --color: #000000;
  --bg-color: #f7df5c;
  --icon-color: #000000;
  font-size: 1.25rem;
  line-height: 1.45;
  letter-spacing: .04em;
  color: var(--color);
  background-color: var(--bg-color);
  padding: 19px 15px 22px
}
@media(hover: hover) {
  .c-cv-button:not(.is-disabled-hover):hover {
    opacity: .8
  }
}
.c-cv-button__text {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  padding-right: .5em
}
.c-cv-button__icon {
  flex-shrink: 0;
  width: 15px !important;
  height: 15px !important;
  background-color: var(--icon-color)
}
.c-cv-button--slim {
  font-size: 1rem;
  padding: 13px 15px 15px
}
.c-cv-button--mail .c-cv-button__text::before {
  content: "";
  flex-shrink: 0;
  display: block;
  width: 20px;
  height: 20px;
  background-color: var(--icon-color);
  -webkit-mask-image: url("/assets/images/icon/mail_black.svg");
  mask-image: url("/assets/images/icon/mail_black.svg");
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-position: center;
  mask-position: center;
  -webkit-mask-size: contain;
  mask-size: contain;
  margin-right: 1em
}
.reserve-button {
  --icon-color: #ffffff;
  font-size: 1.25rem;
  line-height: 1.45;
  letter-spacing: .04em;
  color: #fff;
  background-color: #db7499;
  padding: 20px 20px 21px
}
@media(hover: hover) {
  .reserve-button:not(.is-disabled-hover):hover {
    opacity: .8
  }
}
.reserve-button__text {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  padding-inline: .5em
}
.reserve-button__icon {
  flex-shrink: 0
}
.reserve-button__icon:last-of-type {
  width: 15px !important;
  height: 15px !important
}
.c-area-button {
  display: block;
  text-align: center;
  color: #000;
  background-color: #fff;
  border: 2px solid #0054ac;
  border-radius: 10px;
  box-shadow: 0 3px 10px rgba(0, 0, 0, .2);
  transition: color .3s, background-color .3s
}
@media print,
screen and (min-width: 768px) {
  .c-area-button {
    font-size: 1.25rem;
    padding: 9px 14px 10px
  }
}
@media screen and (max-width: 767.98px) {
  .c-area-button {
    font-size: 1.125rem;
    padding: 9px 6px 12px
  }
}
@media(hover: hover) {
  .c-area-button:not(.is-disabled-hover):hover {
    color: #fff;
    background-color: #0054ac
  }
}
.c-area-button.is-active {
  color: #fff;
  background-color: #0054ac
}
.c-job-requirements-button {
  display: flex;
  align-items: center;
  font-weight: bold;
  color: #0054ac;
  border: solid 2px #0054ac;
  box-shadow: 0 3px 10px rgba(0, 0, 0, .2);
  position: relative;
  transition: opacity .3s
}
@media print,
screen and (min-width: 768px) {
  .c-job-requirements-button {
    font-size: 1.25rem;
    padding: 10px 62px 8px 30px;
    border-radius: 15px
  }
}
@media screen and (max-width: 767.98px) {
  .c-job-requirements-button {
    font-size: 1.125rem;
    padding: 8px 64px 8px 22px;
    border-radius: 10px
  }
}
@media(hover: hover) {
  .c-job-requirements-button:not(.is-disabled-hover):hover {
    opacity: .8
  }
}
.c-job-requirements-button::after {
  content: "";
  width: 28px;
  height: 28px;
  background-color: #0054ac;
  -webkit-mask-image: url("/assets/images/icon/circle-right-arrow_black.svg");
  mask-image: url("/assets/images/icon/circle-right-arrow_black.svg");
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-position: center;
  mask-position: center;
  -webkit-mask-size: contain;
  mask-size: contain;
  position: absolute;
  top: 50%;
  right: 18px;
  transform: translateY(-50%)
}
.c-job-requirements-button__text {
  padding-right: 16px
}
@media print,
screen and (min-width: 768px) {
  .c-job-requirements-button__text {
    width: 76.4150943396%
  }
}
@media screen and (max-width: 767.98px) {
  .c-job-requirements-button__text {
    width: 71.4285714286%
  }
}
.c-job-requirements-button__image {
  display: block
}
@media print,
screen and (min-width: 768px) {
  .c-job-requirements-button__image {
    width: 23.5849056604%
  }
}
@media screen and (max-width: 767.98px) {
  .c-job-requirements-button__image {
    width: 28.5714285714%
  }
}
.c-job-requirements-button__image>img {
  width: 100%;
  max-width: none;
  aspect-ratio: 1/1
}
.c-anchor-button {
  display: block;
  font-weight: bold;
  text-align: center;
  color: #0054ac;
  background-color: #fff;
  border: 2px solid #0054ac;
  border-radius: 10px;
  box-shadow: 0 3px 10px rgba(0, 0, 0, .2);
  transition: opacity .3s
}
@media print,
screen and (min-width: 768px) {
  .c-anchor-button {
    padding: 14px 14px 12px
  }
}
@media screen and (max-width: 767.98px) {
  .c-anchor-button {
    padding: 10px 14px 12px
  }
}
@media(hover: hover) {
  .c-anchor-button:not(.is-disabled-hover):hover {
    opacity: .8
  }
}
@media print,
screen and (min-width: 768px) {
  .c-anchor-button__text {
    font-size: 1.125rem;
    line-height: 1.444;
    letter-spacing: .02em
  }
}
@media screen and (max-width: 767.98px) {
  .c-anchor-button__text {
    font-size: 1rem;
    line-height: 1.5;
    letter-spacing: .04em
  }
}
.c-anchor-button__text::after {
  content: "";
  display: block;
  width: 15px;
  height: 15px;
  background-color: #0054ac;
  -webkit-mask-image: url("/assets/images/icon/right-arrow_black.svg");
  mask-image: url("/assets/images/icon/right-arrow_black.svg");
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-position: center;
  mask-position: center;
  -webkit-mask-size: contain;
  mask-size: contain;
  transform: rotate(90deg)
}
@media print,
screen and (min-width: 768px) {
  .c-anchor-button__text::after {
    margin: 6px auto 0
  }
}
@media screen and (max-width: 767.98px) {
  .c-anchor-button__text::after {
    margin: 8px auto 0
  }
}
.c-anchor-button--red {
  color: #b52b5d;
  border-color: #db7499
}
.c-anchor-button--red .c-anchor-button__text::after {
  background-color: #db7499
}
.c-anchor-button--up-arrow .c-anchor-button__text::after {
  transform: rotate(270deg)
}
.c-card-button {
  display: flex;
  flex-wrap: wrap;
  font-weight: bold;
  text-align: center;
  font-size: 1.25rem;
  line-height: 1.45;
  letter-spacing: .02em;
  color: #fff;
  box-shadow: 0 3px 10px rgba(0, 0, 0, .2);
  transition: opacity .3s;
  overflow: hidden;
  position: relative
}
@media print,
screen and (min-width: 768px) {
  .c-card-button {
    border-radius: 15px
  }
}
@media screen and (max-width: 767.98px) {
  .c-card-button {
    min-height: 100px;
    border-radius: 10px
  }
}
@media screen and (min-width: 768px)and (max-width: 1024px) {
  .c-card-button {
    font-size: 1.125rem
  }
}
@media(hover: hover) {
  .c-card-button:not(.is-disabled-hover):hover {
    opacity: .8
  }
}
.c-card-button::after {
  content: "";
  width: 28px;
  height: 28px;
  background-color: #fff;
  -webkit-mask-image: url("/assets/images/icon/circle-right-arrow_black.svg");
  mask-image: url("/assets/images/icon/circle-right-arrow_black.svg");
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-position: center;
  mask-position: center;
  -webkit-mask-size: contain;
  mask-size: contain;
  position: absolute
}
@media print,
screen and (min-width: 768px) {
  .c-card-button::after {
    right: 12px;
    bottom: 12px
  }
}
@media screen and (max-width: 767.98px) {
  .c-card-button::after {
    top: 50%;
    right: 16px;
    transform: translateY(-50%)
  }
}
.c-card-button__image {
  display: block;
  width: 100%
}
.c-card-button__image>img {
  display: block;
  width: 100%;
  height: 100%;
  max-width: none;
  object-fit: cover
}
.c-card-button__text {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0
}
@media print,
screen and (min-width: 768px) {
  .c-card-button__text {
    padding: 40px 16px
  }
}
@media screen and (max-width: 767.98px) {
  .c-card-button__text {
    padding: 18px 44px
  }
}
.c-expansion-card {
  padding: 24px 24px 4px;
  border-radius: 16px
}
@media print,
screen and (min-width: 768px) {
  .c-expansion-card {
    display: flex;
    flex-direction: column;
    padding: 23px 23px
  }
}
@media screen and (max-width: 767.98px) {
  .c-expansion-card {
    box-shadow: 0 3px 10px rgba(0, 0, 0, .2)
  }
}
@media print,
screen and (min-width: 768px) {
  .c-expansion-card__head {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    column-gap: 12px;
    align-items: center
  }
}
.c-expansion-card__title {
  font-family: "Noto Serif JP", serif;
  text-align: center
}
@media screen and (max-width: 767.98px) {
  .c-expansion-card__title {
    font-size: 1.125rem
  }
}
@media print,
screen and (min-width: 768px) {
  .c-expansion-card__title {
    font-size: 1.25rem
  }
}
.c-expansion-card__title span {
  color: #b52b5d
}
.c-expansion-card__image {
  margin-top: -4px;
  border-radius: 5px;
  overflow: hidden
}
@media screen and (max-width: 767.98px) {
  .c-expansion-card__image {
    transform: translateY(20px)
  }
}
.c-expansion-card__image>img {
  width: 100%
}
.c-expansion-card__collapse {
  grid-column: 1/3
}
@media print,
screen and (min-width: 768px) {
  .c-expansion-card__collapse {
    display: contents !important
  }
}
@media screen and (max-width: 767.98px) {
  .c-expansion-card__text {
    font-size: 1rem;
    padding-top: 44px;
    padding-right: 24px
  }
}
@media print,
screen and (min-width: 768px) {
  .c-expansion-card__text {
    font-size: 1.125rem;
    padding-top: 24px
  }
}
.c-expansion-card__text span {
  color: #b52b5d
}
.c-expansion-card__footer {
  text-align: right
}
@media screen and (max-width: 767.98px) {
  .c-expansion-card__footer {
    padding: 8px 24px 8px 0;
    font-size: 12px
  }
}
@media print,
screen and (min-width: 768px) {
  .c-expansion-card__footer {
    margin-top: auto;
    font-size: 14px
  }
}
@media screen and (max-width: 767.98px) {
  .c-collapse--expansion-card {
    margin-right: -24px
  }
}
.c-collapse--expansion-card .c-collapse-heading {
  position: relative;
  display: inline-flex;
  justify-content: center;
  align-items: center;
  width: 40px;
  height: 40px;
  margin-left: auto;
  border-radius: 50%;
  background-color: #fff
}
@media print,
screen and (min-width: 768px) {
  .c-collapse--expansion-card .c-collapse-heading {
    display: none
  }
}
.c-collapse--expansion-card .c-collapse-heading .c-icon {
  width: 20px;
  height: 20px;
  background-color: #db7499
}
@media print,
screen and (min-width: 768px) {
  .c-collapse--expansion-card .c-collapse-content {
    display: contents !important
  }
}
.c-feature-card {
  display: flex;
  justify-content: center;
  padding: 24px 16px 24px 24px;
  border-radius: 16px
}
@media print,
screen and (min-width: 768px) {
  .c-feature-card {
    align-items: flex-start
  }
}
@media screen and (max-width: 767.98px) {
  .c-feature-card {
    align-items: center
  }
}
.c-feature-card__content {
  width: calc(100% - 108px);
  margin-right: 8px
}
.c-feature-card__heading {
  font-size: 1.25rem;
  color: #b52b5d;
  font-family: "Noto Serif JP", serif
}
.c-feature-card__text {
  font-size: 1rem
}
.c-feature-card__image {
  width: 100px
}
@media print,
screen and (min-width: 768px) {
  .c-feature-card__image {
    margin-top: 8px
  }
}
.c-feature-card--text-only {
  display: block
}
.c-feature-card--text-only .c-feature-card__content {
  width: 100%
}
.c-feature-card--border-none {
  border: none;
  border-radius: 0;
  padding: 0
}
@media print,
screen and (min-width: 768px) {
  .c-feature-card--border-none {
    align-items: center
  }
}
@media screen and (max-width: 767.98px) {
  .c-feature-card--border-none {
    align-items: flex-start
  }
}
@media screen and (max-width: 767.98px) {
  .c-feature-card--border-none .c-feature-card__image {
    margin-top: 8px
  }
}
.c-feature-card--border-none .c-feature-card__image .c-flex-image {
  border-radius: 16px
}
.c-feature-card--border-none .c-feature-card__heading {
  font-weight: bold;
  font-family: "Zen Kaku Gothic New", sans-serif
}
@media print,
screen and (min-width: 768px) {
  .c-feature-card--border-none .c-feature-card__heading {
    font-size: 1.25rem
  }
}
@media screen and (max-width: 767.98px) {
  .c-feature-card--border-none .c-feature-card__heading {
    font-size: 1rem
  }
}
.c-feature-card__heading+.c-feature-card__text {
  margin-top: 8px
}
.c-mini-card {
  background-color: #fff;
  border: none;
  border-radius: 16px
}
@media print,
screen and (min-width: 768px) {
  .c-mini-card {
    width: 100%;
    padding-inline: 32px
  }
}
@media print,
screen and (min-width: 768px) {
  .c-mini-card__inner {
    display: flex;
    align-items: center;
    gap: 0 32px;
    width: 100%;
    max-width: 456px;
    margin-left: auto
  }
}
@media screen and (max-width: 767.98px) {
  .c-mini-card__inner {
    display: grid;
    grid-template-columns: 88px 1fr
  }
}
@media print,
screen and (min-width: 768px) {
  .c-mini-card__image-wrap {
    flex-shrink: 0
  }
}
@media screen and (max-width: 767.98px) {
  .c-mini-card__image-wrap {
    padding-left: 24px
  }
}
.c-mini-card__img {
  margin-left: auto;
  object-fit: cover
}
.c-mini-card__text {
  display: flex;
  align-items: center;
  line-height: 1.6
}
@media print,
screen and (min-width: 768px) {
  .c-mini-card__text {
    display: flex;
    align-items: center;
    width: 100%;
    font-size: 1.25rem
  }
}
@media screen and (max-width: 767.98px) {
  .c-mini-card__text {
    padding-inline: 12px;
    font-size: 1.125rem
  }
}
.c-photo-card {
  border-radius: 16px
}
.c-photo-card__content {
  padding: 24px
}
.c-photo-card__heading {
  color: #b52b5d;
  font-size: 1.25rem;
  font-family: "Noto Serif JP", serif
}
.c-photo-card__text {
  font-size: 1rem
}
.c-photo-card__heading+.c-photo-card__text {
  margin-top: 16px
}
.c-step-card {
  display: flex;
  flex-direction: column;
  border-radius: 16px
}
@media print,
screen and (min-width: 768px) {
  .c-step-card {
    padding: 9px 15px 13px
  }
}
@media screen and (max-width: 767.98px) {
  .c-step-card {
    padding: 15px
  }
}
.c-step-card__heading {
  flex-shrink: 0
}
.c-step-card__image {
  flex-shrink: 0;
  margin-inline: auto;
  overflow: hidden
}
@media print,
screen and (min-width: 768px) {
  .c-step-card__image {
    border-radius: 15px;
    margin-top: 24px
  }
}
@media screen and (max-width: 767.98px) {
  .c-step-card__image {
    border-radius: 5px;
    margin-top: 16px
  }
}
.c-step-card__image img {
  width: 100%
}
.c-step-card__text {
  display: flex;
  justify-content: center;
  align-items: center;
  height: 100%;
  color: #0054ac;
  text-align: center;
  line-height: 1.5
}
@media print,
screen and (min-width: 768px) {
  .c-step-card__text {
    font-size: 1.25rem;
    margin-top: 12px
  }
}
@media screen and (max-width: 767.98px) {
  .c-step-card__text {
    font-size: 1.125rem;
    margin-top: 15px
  }
}
.c-step-card-heading {
  text-align: center;
  display: flex;
  justify-content: center;
  text-align: center;
  line-height: 1
}
.c-step-card-heading__bar {
  display: inline-flex;
  justify-content: center;
  align-items: baseline;
  position: relative
}
.c-step-card-heading__bar::after {
  content: "";
  height: 2px;
  background-color: #db7499;
  position: absolute;
  left: 0;
  right: 0;
  bottom: -4px
}
.c-step-card-heading__prefix {
  text-transform: uppercase
}
@media screen and (max-width: 767.98px) {
  .c-step-card-heading__prefix {
    font-size: .9375rem
  }
}
@media print,
screen and (min-width: 768px) {
  .c-step-card-heading__prefix {
    font-size: 1rem
  }
}
.c-step-card-heading__number {
  color: #b52b5d;
  margin-left: 8px;
  font-family: "Noto Serif JP", serif
}
@media screen and (max-width: 767.98px) {
  .c-step-card-heading__number {
    font-size: 1.5rem
  }
}
@media print,
screen and (min-width: 768px) {
  .c-step-card-heading__number {
    font-size: 2rem
  }
}
.c-tiny-card {
  display: flex;
  border-radius: 20px
}
.c-tiny-card__image {
  display: flex;
  align-items: flex-end
}
@media print,
screen and (min-width: 768px) {
  .c-tiny-card__image {
    width: 34.3023255814%
  }
}
@media screen and (max-width: 767.98px) {
  .c-tiny-card__image {
    width: 35.223880597%
  }
}
.c-tiny-card__text {
  display: flex;
  align-items: center;
  padding-inline: 32px
}
@media print,
screen and (min-width: 768px) {
  .c-tiny-card__text {
    width: 65.6976744186%
  }
}
@media screen and (max-width: 767.98px) {
  .c-tiny-card__text {
    width: 64.776119403%
  }
}
@media screen and (min-width: 768px)and (max-width: 1024px) {
  .c-tiny-card__text {
    padding-inline: 16px
  }
}
.c-voice-card {
  display: flex;
  flex-direction: column;
  border-radius: 16px;
  transition: opacity .3s;
  box-shadow: 0 3px 10px rgba(0, 0, 0, .2)
}
@media screen and (max-width: 767.98px) {
  .c-voice-card {
    padding: 16px
  }
}
@media print,
screen and (min-width: 768px) {
  .c-voice-card {
    padding: 24px
  }
}
@media(hover: hover) {
  .c-voice-card:not(.is-disabled-hover):hover {
    opacity: .8
  }
}
.c-voice-card__patients {
  padding-bottom: 16px
}
.c-voice-card__text {
  padding-top: 16px;
  border-top: 1px solid #ccc
}
@media screen and (max-width: 767.98px) {
  .c-voice-card__text {
    font-size: 1rem
  }
}
@media print,
screen and (min-width: 768px) {
  .c-voice-card__text {
    font-size: 1.125rem
  }
}
.c-voice-card__link {
  display: inline-flex;
  padding-top: 8px;
  margin-top: auto;
  margin-left: auto
}
.c-voice-card__link-icon {
  background-color: #db7499
}
.c-card-list-item {
  display: contents
}
.c-care-suggestion {
  width: 100%;
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
  position: relative
}
@media print,
screen and (min-width: 768px) {
  .c-care-suggestion {
    background-image: url("/service/assets/images/top/bg_suggestion_pc.png");
    padding-block: 64px;
    padding-inline: 40px
  }
}
@media screen and (max-width: 767.98px) {
  .c-care-suggestion {
    background-image: url("/service/assets/images/top/bg_suggestion_sp.png");
    padding-block: 42px;
    padding-inline: 20px
  }
}
.c-care-suggestion__title {
  width: 100%
}
.c-care-suggestion__image {
  display: flex;
  justify-content: center;
  width: 100%;
  margin-top: 16px
}
.c-care-suggestion__button {
  margin-inline: auto
}
@media print,
screen and (min-width: 768px) {
  .c-care-suggestion__button {
    max-width: 400px;
    width: 100%;
    margin-top: 48px
  }
}
@media screen and (max-width: 767.98px) {
  .c-care-suggestion__button {
    width: 78.6666666667%;
    margin-top: 40px
  }
}
.c-check-list-wrap {
  container-type: inline-size;
  background-color: #fdf0f4;
  padding: 24px
}
.c-check-list-wrap--gray {
  background-color: #f4f4f4
}
@media print,
screen and (min-width: 768px) {
  .c-check-list-wrap {
    padding: 40px 48px
  }
  .c-check-list-wrap--horizontal .c-check-list {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    column-gap: 56px
  }
  @container (min-width: 744px) {
    .c-check-list-wrap--horizontal .c-check-list {
      grid-template-columns: repeat(3, 1fr)
    }
  }
}
@media screen and (max-width: 767.98px) {
  .c-check-list-wrap {
    padding: 24px
  }
}
.c-check-list-wrap__heading {
  display: block;
  padding-bottom: 16px;
  color: #b52b5d;
  font-weight: bold;
  text-transform: uppercase;
  text-align: center
}
@media print,
screen and (min-width: 768px) {
  .c-check-list-wrap__heading {
    font-size: 1.25rem
  }
}
@media screen and (max-width: 767.98px) {
  .c-check-list-wrap__heading {
    font-size: 1.125rem
  }
}
.c-check-list {
  display: flex;
  flex-direction: column;
  line-height: 1.4
}
@media print,
screen and (min-width: 768px) {
  .c-check-list {
    row-gap: 16px;
    font-size: 1.125rem
  }
}
@media screen and (max-width: 767.98px) {
  .c-check-list {
    row-gap: 24px;
    font-size: 1rem
  }
}
@media print,
screen and (min-width: 768px) {
  .c-check-list-item {
    text-indent: calc(-1em - 8px);
    padding-left: calc(1em + 8px);
    letter-spacing: .02em
  }
}
@media screen and (max-width: 767.98px) {
  .c-check-list-item {
    text-indent: calc(-1em - 16px);
    padding-left: calc(1em + 16px);
    letter-spacing: .04em
  }
}
.c-check-list-item::before {
  content: "";
  flex-shrink: 0;
  margin: -3px 8px 0 0;
  background: url(/assets/images/icon/check.png);
  background-size: contain;
  display: inline-block;
  vertical-align: middle;
  aspect-ratio: 1
}
@media print,
screen and (min-width: 768px) {
  .c-check-list-item::before {
    width: 18px
  }
}
@media screen and (max-width: 767.98px) {
  .c-check-list-item::before {
    width: 24px
  }
}
.c-collapse {
  display: flex;
  flex-direction: column
}
.c-collapse--reversed {
  flex-direction: column-reverse
}
.c-collapse-heading {
  --icon-color: #000000;
  display: flex;
  cursor: pointer;
  align-items: center;
  justify-content: space-between
}
.c-collapse-heading::marker {
  content: none
}
.c-collapse-heading__decor {
  flex-shrink: 0
}
.c-collapse-heading--open .c-collapse-heading__decor--open,
.c-collapse-heading--opening .c-collapse-heading__decor--open {
  display: none
}
.c-collapse-heading--closed .c-collapse-heading__decor--close,
.c-collapse-heading--closing .c-collapse-heading__decor--close {
  display: none
}
.c-collapse-content {
  margin-block: 0;
  padding-block: 0;
  overflow: hidden
}
.c-collapse-content[aria-hidden=true] {
  display: none
}
.c-collapse-group {
  display: flex;
  flex-direction: column
}
.c-contact-info {
  background-color: #f4f4f4;
  padding: 24px 32px;
  letter-spacing: .04em;
  line-height: 1.5;
  font-weight: bold
}
@media screen and (max-width: 767.98px) {
  .c-contact-info {
    font-size: 1rem
  }
}
@media print,
screen and (min-width: 768px) {
  .c-contact-info {
    font-size: 1.25rem
  }
}
.c-contact-info__lead {
  text-align: center;
  color: #b52b5d;
  padding-bottom: 8px
}
.c-contact-info__list {
  margin-inline: auto;
  max-width: max-content
}
.c-contact-info-list__item {
  display: grid;
  grid-template-columns: 1fr 1fr;
  column-gap: 48px;
  padding: 16px
}
.c-contact-info-list__item+.c-contact-info-list__item {
  border-top: 1px solid #ccc
}
@media(hover: none) {
  .c-contact-info-list__link {
    text-decoration: underline;
    text-decoration-skip-ink: none
  }
}
@media(hover) {
  .c-contact-info-list__link {
    pointer-events: none
  }
}
.c-faq-prompt-section {
  background-color: #fdf0f4
}
@media print,
screen and (min-width: 768px) {
  .c-faq-prompt-section {
    padding: 40px
  }
}
.c-faq-prompt-section__inner {
  display: flex;
  justify-content: center
}
@media print,
screen and (min-width: 768px) {
  .c-faq-prompt-section__inner {
    gap: 56px;
    width: 100%;
    max-width: 1032px;
    margin: 0 auto
  }
}
@media screen and (max-width: 767.98px) {
  .c-faq-prompt-section__inner {
    flex-direction: column;
    gap: 24px;
    align-items: center;
    padding: 40px 20px 0
  }
}
@media print,
screen and (min-width: 768px) {
  .c-faq-prompt-section__list {
    width: 60%
  }
}
@media screen and (max-width: 767.98px) {
  .c-faq-prompt-section__list {
    display: flex;
    flex-direction: column;
    width: 100%
  }
}
.c-faq-prompt-section__contents {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center
}
@media print,
screen and (min-width: 768px) {
  .c-faq-prompt-section__contents {
    width: 40%;
    font-size: 1.25rem
  }
}
@media screen and (max-width: 767.98px) {
  .c-faq-prompt-section__contents {
    width: 100%
  }
}
@media print,
screen and (min-width: 768px) {
  .c-faq-prompt-section__button {
    margin-top: 24px
  }
}
@media screen and (max-width: 767.98px) {
  .c-faq-prompt-section__button {
    margin-top: 20px
  }
}
.c-faq-prompt-section__image {
  position: relative
}
@media print,
screen and (min-width: 768px) {
  .c-faq-prompt-section__image {
    top: 40px
  }
}
@media screen and (max-width: 767.98px) {
  .c-faq-prompt-section__image {
    margin-top: 16px
  }
}
.c-mini-card-list__item+.c-mini-card-list__item {
  margin-top: 16px
}
@media print,
screen and (min-width: 768px) {
  .c-mini-card-list__item {
    width: 100%
  }
}
.c-flex-image {
  display: block
}
.c-flex-image--fixed,
.c-flex-image--stretched {
  max-width: none
}
.c-flex-image--stretched {
  width: 100%
}
.c-floating-button {
  display: flex;
  position: fixed;
  right: 0;
  z-index: 10;
  opacity: 0;
  visibility: hidden;
  transition: opacity .5s, visibility .5s
}
@media print,
screen and (min-width: 768px) {
  .c-floating-button {
    flex-direction: column;
    gap: 20px;
    top: 110px
  }
}
@media screen and (max-width: 767.98px) {
  .c-floating-button {
    width: 100%;
    bottom: 0
  }
}
.c-floating-button.is-show {
  opacity: 1;
  visibility: visible
}
@media print,
screen and (min-width: 768px) {
  .c-floating-button>* {
    border-radius: 15px 0 0 15px
  }
}
@media screen and (max-width: 767.98px) {
  .c-floating-button>* {
    width: 50%
  }
  .c-floating-button>*:nth-of-type(1) {
    border-radius: 0 10px 0 0
  }
  .c-floating-button>*:nth-of-type(2) {
    border-radius: 10px 0 0 0
  }
}
.c-floating-button--single {
  justify-content: flex-end
}
@media screen and (max-width: 767.98px) {
  .c-floating-button--single>* {
    width: 50%;
    border-radius: 10px 0 0 0 !important
  }
}
.c-recruitment-button {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  gap: 4px;
  font-weight: bold;
  font-size: 1.125rem;
  color: #0054ac;
  background-color: #0054ac;
  box-shadow: 0 3px 10px rgba(0, 0, 0, .2);
  transition: opacity .3s
}
@media print,
screen and (min-width: 768px) {
  .c-recruitment-button {
    width: 60px;
    line-height: 1.195;
    letter-spacing: 0em;
    padding: 28px 15px 24px
  }
}
@media screen and (max-width: 767.98px) {
  .c-recruitment-button {
    max-width: 50%;
    line-height: 1;
    letter-spacing: .02em;
    padding: 12px 16px
  }
}
@media(hover: hover) {
  .c-recruitment-button:not(.is-disabled-hover):hover {
    opacity: .8
  }
}
.c-recruitment-button__icon {
  --bg-color: #ffffff;
  flex-shrink: 0;
  display: block
}
@media print,
screen and (min-width: 768px) {
  .c-recruitment-button__icon {
    width: 32px;
    height: 32px
  }
}
@media screen and (max-width: 767.98px) {
  .c-recruitment-button__icon {
    width: 36px;
    height: 36px
  }
}
.c-recruitment-button__text {
  display: block;
  background-color: #fff;
  border-radius: 4px
}
@media print,
screen and (min-width: 768px) {
  .c-recruitment-button__text {
    padding: 3px 6px 4px
  }
}
@media screen and (max-width: 767.98px) {
  .c-recruitment-button__text {
    padding: 8px 14px 10px
  }
}
.c-contact-button {
  --icon-color: #000000;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  gap: 2px;
  font-weight: bold;
  letter-spacing: 0;
  background-color: #f7df5c;
  box-shadow: 0 3px 10px rgba(0, 0, 0, .2);
  transition: opacity .3s
}
@media print,
screen and (min-width: 768px) {
  .c-contact-button {
    width: 60px;
    text-align: center;
    font-size: 1.125rem;
    line-height: 1.167;
    padding: 16px 17px 12px
  }
}
@media screen and (max-width: 767.98px) {
  .c-contact-button {
    max-width: 50%;
    font-size: 1rem;
    line-height: 1;
    padding: 16px
  }
}
@media(hover: hover) {
  .c-contact-button:not(.is-disabled-hover):hover {
    opacity: .8
  }
}
.c-contact-button__icon {
  display: block;
  flex-shrink: 0
}
.c-contact-button__text {
  display: block
}
.c-job-search-button {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  gap: 4px;
  font-weight: bold;
  color: #0054ac;
  background-color: #0054ac;
  box-shadow: 0 3px 10px rgba(0, 0, 0, .2);
  transition: opacity .3s
}
@media print,
screen and (min-width: 768px) {
  .c-job-search-button {
    width: 60px;
    padding: 20px 15px 16px;
    border-radius: 15px 0 0 15px
  }
}
@media screen and (max-width: 767.98px) {
  .c-job-search-button {
    padding: 12px 16px;
    border-radius: 0 10px 0 0
  }
}
@media(hover: hover) {
  .c-job-search-button:not(.is-disabled-hover):hover {
    opacity: .8
  }
}
.c-job-search-button__text {
  color: #fff
}
@media print,
screen and (min-width: 768px) {
  .c-job-search-button__text {
    writing-mode: vertical-rl;
    font-size: 1.125rem;
    line-height: 1;
    letter-spacing: .2em
  }
}
@media screen and (max-width: 767.98px) {
  .c-job-search-button__text {
    font-size: 1rem
  }
}
.c-job-search-button__text span {
  display: inline-flex;
  font-weight: bold;
  color: #0054ac;
  background-color: #fff;
  border-radius: 4px
}
@media print,
screen and (min-width: 768px) {
  .c-job-search-button__text span {
    letter-spacing: .1em;
    padding: 4px 5px;
    margin-bottom: 4px
  }
}
@media screen and (max-width: 767.98px) {
  .c-job-search-button__text span {
    font-size: 1.125rem;
    padding: 3px 14px 5px;
    margin-right: 6px
  }
}
.c-fc-contact-button {
  display: block;
  font-weight: bold;
  text-align: center;
  letter-spacing: 0;
  background-color: #f7df5c;
  box-shadow: 0 3px 10px rgba(0, 0, 0, .2);
  transition: opacity .3s
}
@media print,
screen and (min-width: 768px) {
  .c-fc-contact-button {
    -ms-writing-mode: tb-rl;
    writing-mode: vertical-rl;
    width: 60px;
    font-size: 1.125rem;
    line-height: 1.167;
    padding: 16px 20px
  }
}
@media screen and (max-width: 767.98px) {
  .c-fc-contact-button {
    max-width: 50%;
    font-size: 1rem;
    line-height: 1.5;
    padding: 6px
  }
}
@media(hover: hover) {
  .c-fc-contact-button:not(.is-disabled-hover):hover {
    opacity: .8
  }
}
.c-fc-contact-button__text {
  display: block
}
.c-reservation-button {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  gap: 4px;
  font-weight: bold;
  font-size: 1.125rem;
  line-height: 1.167;
  color: #fff;
  background-color: #db7499;
  box-shadow: 0 3px 10px rgba(0, 0, 0, .2);
  transition: opacity .3s
}
@media print,
screen and (min-width: 768px) {
  .c-reservation-button {
    -ms-writing-mode: tb-rl;
    writing-mode: vertical-rl;
    width: 60px;
    line-height: 1.195;
    letter-spacing: .1em;
    padding: 16px 20px 12px
  }
}
@media screen and (max-width: 767.98px) {
  .c-reservation-button {
    max-width: 50%;
    line-height: 1;
    letter-spacing: .02em;
    padding: 12px 16px
  }
}
@media(hover: hover) {
  .c-reservation-button:not(.is-disabled-hover):hover {
    opacity: .8
  }
}
.c-reservation-button__icon {
  --bg-color: #ffffff;
  flex-shrink: 0;
  display: block
}
@media print,
screen and (min-width: 768px) {
  .c-reservation-button__icon {
    width: 32px;
    height: 32px
  }
}
@media screen and (max-width: 767.98px) {
  .c-reservation-button__icon {
    width: 36px;
    height: 36px
  }
}
.c-reservation-button__text {
  display: block
}
.c-footer {
  position: relative;
  width: 100%;
  background-color: #464646
}
.c-footer__logo {
  display: flex;
  justify-content: center;
  background-color: #fff
}
@media print,
screen and (min-width: 768px) {
  .c-footer__logo {
    padding-block: 48px
  }
}
@media screen and (max-width: 767.98px) {
  .c-footer__logo {
    padding-block: 32px
  }
}
.c-footer__body {
  max-width: 1120px;
  margin: 0 auto
}
@media print,
screen and (min-width: 768px) {
  .c-footer__menu {
    margin-top: 10px;
    padding-inline: 40px;
    padding-bottom: 48px
  }
}
@media screen and (max-width: 767.98px) {
  .c-footer__menu {
    margin-top: 30px;
    padding-bottom: 24px
  }
}
.c-footer__page-top {
  display: flex;
  text-transform: uppercase;
  background: #fff;
  border-radius: 0 0 0 16px;
  margin-left: auto;
  transition: opacity .3s
}
@media print,
screen and (min-width: 768px) {
  .c-footer__page-top {
    height: 70px;
    width: 70px
  }
}
@media screen and (max-width: 767.98px) {
  .c-footer__page-top {
    height: 50px;
    width: 50px
  }
}
@media(hover: hover) {
  .c-footer__page-top:not(.is-disabled-hover):hover {
    opacity: .8
  }
}
.c-footer__page-top span {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  width: 100%
}
.c-footer__page-top span::before {
  content: "";
  display: block;
  width: 24px;
  height: 24px;
  background-color: #000;
  -webkit-mask-image: url("/assets/images/icon/pagetop-arrow_black.svg");
  mask-image: url("/assets/images/icon/pagetop-arrow_black.svg");
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-position: center;
  mask-position: center;
  -webkit-mask-size: contain;
  mask-size: contain
}
.c-footer__copyright {
  text-align: center;
  font-size: .625rem;
  background-color: #fff;
  padding: 16px 20px
}
.c-footer__copyright small {
  display: inline-flex;
  transform: scale(0.8)
}
.c-footer-body {
  padding-inline: 20px
}
@media print,
screen and (min-width: 768px) {
  .c-footer-body {
    display: grid;
    grid-template-columns: 242px 1fr;
    padding-block: 80px 30px
  }
}
@media screen and (max-width: 767.98px) {
  .c-footer-body {
    padding-block: 76px 30px
  }
}
.c-footer-body__menu {
  color: #fff
}
@media print,
screen and (min-width: 768px) {
  .c-footer-body__menu {
    display: grid;
    grid-template-rows: repeat(2, 0fr);
    grid-template-columns: 37.3983739837% 1fr 1fr;
    grid-auto-flow: column;
    row-gap: 48px;
    column-gap: 36px;
    margin-left: 11.9331742243%
  }
}
@media screen and (min-width: 768px)and (max-width: 1024px) {
  .c-footer-body__menu {
    display: grid;
    grid-template-rows: repeat(3, 0fr);
    grid-template-columns: repeat(2, 1fr);
    grid-auto-flow: column;
    row-gap: 48px;
    column-gap: 386x;
    margin-left: 11.9331742243%
  }
}
@media screen and (max-width: 767.98px) {
  .c-footer-body__menu {
    margin-inline: -20px;
    margin-inline: -20px;
    margin-top: 48px;
    color: #fff
  }
}
.c-footer-body__info {
  color: #fff
}
@media print,
screen and (min-width: 768px) {
  .c-footer-body__info {
    display: flex;
    flex-flow: row-reverse;
    grid-column: 1/-1;
    gap: 24px;
    align-items: end;
    justify-content: right;
    margin-top: 24px
  }
}
@media screen and (max-width: 767.98px) {
  .c-footer-body__info {
    display: flex;
    flex-direction: column;
    gap: 32px;
    align-items: center;
    margin-top: 40px
  }
}
@media screen and (max-width: 767.98px) {
  .c-footer-body__logo {
    display: flex;
    flex-direction: column;
    align-items: center
  }
}
.c-footer-body-banner-list__item {
  display: block
}
@media print,
screen and (min-width: 768px) {
  .c-footer-body-banner-list__item+.c-footer-body-banner-list__item {
    margin-top: 12px
  }
}
@media screen and (max-width: 767.98px) {
  .c-footer-body-banner-list__item+.c-footer-body-banner-list__item {
    margin-top: 16px
  }
}
.c-footer-body-banner-list__banner {
  background-color: #e8e8e8
}
@media print,
screen and (min-width: 768px) {
  .c-footer-body-banner-list__banner+.c-footer-body-banner-list__banner {
    margin-top: 12px
  }
}
@media screen and (max-width: 767.98px) {
  .c-footer-body-banner-list__banner+.c-footer-body-banner-list__banner {
    margin-top: 16px
  }
}
@media print,
screen and (min-width: 768px) {
  .c-footer-body-menu__item {
    padding-left: 14px;
    border-left: 1px solid #fff
  }
}
@media print,
screen and (min-width: 768px) {
  .c-footer-body-menu__head {
    display: inline-block;
    margin-bottom: 20px;
    font-size: 1.125rem;
    line-height: 1.78
  }
}
@media screen and (max-width: 767.98px) {
  .c-footer-body-menu__head {
    line-height: 1.75
  }
}
@media print,
screen and (min-width: 768px) {
  .c-footer-body-menu-list {
    line-height: 2
  }
}
@media screen and (max-width: 767.98px) {
  .c-footer-body-menu-list {
    padding: 16px 0 16px 20px;
    line-height: 2.5
  }
}
@media screen and (max-width: 767.98px) {
  .c-footer-body-menu-list--outfield {
    padding-top: 24px;
    padding-bottom: 0
  }
}
.c-footer-body-menu-list--info {
  display: flex
}
@media print,
screen and (min-width: 768px) {
  .c-footer-body-menu-list--info {
    font-size: .8125rem
  }
}
@media screen and (max-width: 767.98px) {
  .c-footer-body-menu-list--info {
    padding: 0;
    font-size: .75rem
  }
}
.c-footer-body-menu-list--info .c-footer-body-menu-list__item+.c-footer-body-menu-list__item {
  margin-left: 1rem
}
.c-footer-body-menu-list--info .c-footer-body-menu-list__item::before {
  top: 13px
}
@media screen and (max-width: 767.98px) {
  .c-footer-body-menu-list--info .c-footer-body-menu-list__item::before {
    top: 15px
  }
}
.c-footer-body-menu-list__item {
  position: relative;
  padding-left: 10px
}
.c-footer-body-menu-list__item::before {
  position: absolute;
  top: 16px;
  left: 0;
  width: 5px;
  height: 2px;
  content: "";
  background-color: #fff
}
@media screen and (max-width: 767.98px) {
  .c-footer-body-menu-list__item::before {
    top: 20px
  }
}
@media screen and (max-width: 767.98px) {
  .c-footer-body-menu-list__item a {
    display: flex
  }
}
.c-footer-body-menu-list a:hover {
  text-decoration: underline
}
.c-footer-bar {
  padding-block: 16px;
  font-size: .625rem;
  text-align: center;
  background-color: #fff
}
.c-footer-bar span {
  display: inline-block;
  transform: scale(0.8)
}
.c-collapse-group--footer {
  margin-top: 48px
}
.c-collapse-group--footer .c-collapse {
  background-color: #6a6a6a
}
.c-collapse-group--footer .c-collapse+.c-collapse {
  border-top: 2px solid #464646
}
.c-collapse-group--footer .c-collapse-heading {
  --icon-color: #ffffff;
  padding: 12px 20px
}
.c-collapse-group--footer .c-collapse-content {
  background-color: #464646
}
.c-footer-page-top {
  --icon-color: #000000;
  position: absolute;
  right: 0;
  background: #fff;
  border-radius: 0 0 0 16px;
  display: flex;
  flex-direction: column;
  align-items: center;
  z-index: 2
}
@media print,
screen and (min-width: 768px) {
  .c-footer-page-top {
    top: 126px;
    justify-content: center;
    height: 70px;
    width: 70px
  }
}
@media screen and (max-width: 767.98px) {
  .c-footer-page-top {
    top: 94px;
    height: 50px;
    width: 50px
  }
}
@media print,
screen and (min-width: 768px) {
  .c-footer-page-top__icon {
    width: 22px;
    height: 12px
  }
}
@media screen and (max-width: 767.98px) {
  .c-footer-page-top__icon {
    width: 20px;
    height: 10px
  }
}
.c-footer-page-top__text {
  margin-top: 8px;
  text-transform: uppercase
}
@media screen and (max-width: 767.98px) {
  .c-footer-page-top__text {
    font-size: .9375rem
  }
}
@media print,
screen and (min-width: 768px) {
  .c-footer-menu__contact {
    max-width: 1080px;
    margin-top: 48px;
    margin-inline: auto
  }
}
@media screen and (max-width: 767.98px) {
  .c-footer-menu__contact {
    text-align: center;
    padding-inline: 40px;
    margin-top: 40px
  }
}
@media print,
screen and (min-width: 768px) {
  .c-footer-menu__pc-fc-nav {
    margin-top: -32px
  }
}
.c-footer-menu__footer-links {
  margin-inline: auto;
  margin-top: 40px
}
@media print,
screen and (min-width: 768px) {
  .c-footer-menu__footer-links {
    justify-content: flex-end;
    max-width: 1080px;
    margin-inline: auto
  }
}
@media screen and (max-width: 767.98px) {
  .c-footer-menu__footer-links {
    justify-content: center
  }
}
.c-footer-menu__fc-banner {
  padding-inline: 20px;
  margin-top: 48px
}
@media print,
screen and (min-width: 768px) {
  .c-footer-menu__fc-banner {
    justify-content: center;
    align-items: center;
    max-width: 504px;
    margin-inline: auto
  }
}
@media screen and (max-width: 767.98px) {
  .c-footer--recruit .c-footer-menu .c-footer-menu__footer-links {
    max-width: 250px
  }
}
@media print,
screen and (min-width: 768px) {
  .c-footer--fc .c-footer-menu .c-footer-menu__footer-links {
    justify-content: center
  }
}
.c-footer-pc-site-nav {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 24px;
  max-width: 1080px;
  color: #fff;
  margin-inline: auto
}
@media screen and (max-width: 767.98px) {
  .c-footer-pc-site-nav {
    display: none
  }
}
.c-footer-pc-site-nav__item {
  padding-left: 16px;
  border-left: solid 1px #fff
}
.c-footer-pc-site-nav__item+.c-footer-pc-site-nav__item {
  margin-top: 40px
}
.c-footer-pc-site-nav__large-category {
  font-size: 1.125rem;
  letter-spacing: .04em;
  transition: opacity .3s
}
@media(hover: hover) {
  .c-footer-pc-site-nav__large-category:not(.is-disabled-hover):hover {
    opacity: .8
  }
}
.c-footer-pc-site-nav__large-category+.c-footer-pc-site-nav__small-category {
  margin-top: 20px
}
.c-footer-pc-site-nav__small-category {
  font-size: 1rem;
  letter-spacing: .04em
}
@media print,
screen and (min-width: 768px) {
  .c-footer-sp-site-nav {
    display: none
  }
}
.c-footer-pc-fc-nav {
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: .875rem;
  line-height: 1.428;
  letter-spacing: .02em;
  color: #fff
}
@media screen and (max-width: 767.98px) {
  .c-footer-pc-fc-nav {
    display: none
  }
}
.c-footer-pc-fc-nav__item {
  padding: 5px 20px;
  border-right: 1px solid #fff
}
.c-footer-pc-fc-nav__item:first-of-type {
  border-left: 1px solid #fff
}
.c-footer-pc-fc-nav__link {
  transition: opacity .3s
}
@media(hover: hover) {
  .c-footer-pc-fc-nav__link:not(.is-disabled-hover):hover {
    opacity: .8
  }
}
.c-footer-banners {
  display: flex;
  gap: 12px 24px
}
@media screen and (max-width: 767.98px) {
  .c-footer-banners {
    flex-direction: column
  }
}
.c-footer-banners--vertical {
  flex-direction: column
}
@media print,
screen and (min-width: 768px) {
  .c-footer-contact {
    display: flex;
    justify-content: space-between;
    gap: 1rem
  }
}
@media screen and (max-width: 767.98px) {
  .c-footer-contact {
    text-align: center
  }
}
@media screen and (min-width: 768px)and (max-width: 1024px) {
  .c-footer-contact {
    flex-direction: column;
    justify-content: center;
    align-items: center
  }
}
.c-footer-contact__content {
  letter-spacing: .02em;
  color: #fff
}
@media print,
screen and (min-width: 768px) {
  .c-footer-contact__content {
    font-size: 1rem
  }
}
@media screen and (max-width: 767.98px) {
  .c-footer-contact__content {
    font-size: .9375rem
  }
}
@media screen and (max-width: 767.98px) {
  .c-footer-contact__info {
    padding-top: 16px;
    border-top: solid 1px #ccc;
    margin-top: 16px
  }
}
.c-footer-contact__buttons {
  display: flex;
  gap: 24px
}
@media print,
screen and (min-width: 768px) {
  .c-footer-contact__buttons {
    align-items: center
  }
}
@media screen and (max-width: 767.98px) {
  .c-footer-contact__buttons {
    flex-direction: column;
    margin-top: 24px
  }
}
@media print,
screen and (min-width: 768px) {
  .c-footer-contact__button {
    width: 285px
  }
}
.c-footer-links {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 1em;
  letter-spacing: .04em;
  color: #fff
}
@media print,
screen and (min-width: 768px) {
  .c-footer-links {
    font-size: .8125rem
  }
}
@media screen and (max-width: 767.98px) {
  .c-footer-links {
    font-size: .75rem
  }
}
.c-footer-links__item {
  display: flex;
  align-items: baseline
}
.c-footer-links__item::before {
  content: "-";
  font-size: 1rem;
  padding-right: 5px
}
.c-footer-links__link {
  transition: opacity .3s
}
@media(hover: hover) {
  .c-footer-links__link:not(.is-disabled-hover):hover {
    opacity: .8
  }
}
.c-select {
  position: relative;
  width: 100%;
  display: flex;
  align-items: center
}
.c-select__options {
  display: block;
  background-color: #fff;
  border: 1px solid #ccc;
  border-radius: 5px;
  padding: 8px 16px;
  width: 100%;
  appearance: none;
  line-height: 1.5
}
@media print,
screen and (min-width: 768px) {
  .c-select__options {
    font-size: 1.125rem
  }
}
@media screen and (max-width: 767.98px) {
  .c-select__options {
    font-size: 1rem
  }
}
.c-select__options--error {
  border-color: #ce0000
}
.c-select__options--error+.c-select__icon {
  transform: rotate(90deg) scale(0.7)
}
.c-select__options:disabled {
  background-color: #f4f4f4;
  color: #ccc
}
.c-select__options:disabled+.c-select__icon {
  background-color: #ccc
}
.c-select__option {
  color: #000
}
.c-select__icon {
  position: absolute;
  transform: rotate(90deg) scale(0.7);
  right: 16px;
  pointer-events: none;
  --icon-color: #000000
}
.c-radio {
  border: 1px solid #ccc;
  border-radius: 50%;
  width: 20px;
  height: 20px;
  margin-right: 8px;
  background-color: #fff;
  flex-shrink: 0
}
.c-radio:disabled {
  background-color: #f4f4f4
}
.c-radio:disabled+.c-text {
  color: #ccc
}
.c-radio:checked {
  background-image: url("/assets/images/icon/radio_on.svg");
  background-repeat: no-repeat;
  background-position: 50%
}
.c-radio-label {
  display: flex;
  align-items: center
}
.c-radio-label--error .c-radio {
  border-color: #ce0000
}
.c-radio-label--full {
  width: 100%
}
.c-input-label {
  display: inline-flex;
  align-items: flex-start
}
.c-input-label__text {
  font-weight: bold;
  font-family: "Zen Kaku Gothic New", sans-serif;
  letter-spacing: .02em;
  line-height: 1.75
}
@media print,
screen and (min-width: 768px) {
  .c-input-label__text {
    font-size: 1.125rem
  }
}
@media screen and (max-width: 767.98px) {
  .c-input-label__text {
    font-size: 1rem
  }
}
.c-input-label__icon {
  font-size: .875rem;
  border: 1px solid #ce0000;
  border-radius: 5px;
  color: #ce0000;
  padding: 0 4px;
  margin-left: 8px;
  line-height: 1.5;
  min-width: 40px
}
@media print,
screen and (min-width: 768px) {
  .c-input-label__icon {
    margin-top: 4px
  }
}
@media screen and (max-width: 767.98px) {
  .c-input-label__icon {
    margin-top: 4px
  }
}
.c-check-box {
  border: 1px solid #ccc;
  border-radius: 5px;
  width: 20px;
  height: 20px;
  margin-right: 8px;
  background-color: #fff;
  flex-shrink: 0
}
.c-check-box:disabled {
  background-color: #f4f4f4
}
.c-check-box:disabled+.c-check-box__label>.c-text {
  color: #ccc
}
.c-check-box:checked {
  background-image: url("/assets/images/icon/checkbox_off.svg");
  background-repeat: no-repeat;
  background-position: center;
  background-size: auto;
  background-color: #0054ac;
  border: none;
  width: 20px;
  height: 20px
}
.c-check-box--error {
  border-color: #ce0000
}
.c-check-box-item {
  display: flex;
  align-items: center
}
.c-textarea {
  display: block;
  border: 1px solid #ccc;
  border-radius: 5px;
  width: 100%;
  height: 231px;
  padding: 8px 16px;
  margin-bottom: 16px;
  background-color: #fff
}
.c-textarea:disabled {
  background-color: #f4f4f4
}
.c-textarea--error {
  border-color: #ce0000
}
.c-textarea--vertical {
  resize: vertical
}
.c-search-filed {
  display: flex
}
.c-search-filed__label {
  display: flex;
  align-items: center;
  border: #ccc 1px solid;
  border-right: none;
  border-radius: 4px 0 0 4px;
  padding: 8px 16px;
  width: 100%
}
.c-search-filed__label::before {
  content: "";
  display: block;
  width: 22px;
  height: 22px;
  background-color: #db7499;
  -webkit-mask-image: url("/assets/images/icon/search_black.svg");
  mask-image: url("/assets/images/icon/search_black.svg");
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-position: center;
  mask-position: center;
  -webkit-mask-size: contain;
  mask-size: contain
}
.c-search-filed__input {
  flex-grow: 1;
  padding-left: 16px;
  line-height: 1;
  width: 100%
}
.c-search-filed__input::placeholder {
  color: #ccc
}
.c-search-filed__button {
  text-align: center;
  align-self: stretch;
  background-color: #db7499;
  border-radius: 0 4px 4px 0;
  font-family: "Zen Kaku Gothic New", sans-serif;
  line-height: 1;
  color: #fff;
  flex-shrink: 0
}
@media print,
screen and (min-width: 768px) {
  .c-search-filed__button {
    padding: 0 24px;
    font-size: 1.125rem
  }
}
@media screen and (max-width: 767.98px) {
  .c-search-filed__button {
    padding: 0 16px;
    font-size: 1rem
  }
}
@media(hover: hover) {
  .c-search-filed__button:not(.is-disabled-hover):hover {
    opacity: .8
  }
}
.c-text-field {
  display: block;
  border: 1px solid #ccc;
  border-radius: 5px;
  width: 100%;
  padding: 8px 16px;
  background: #fff
}
@media print,
screen and (min-width: 768px) {
  .c-text-field {
    font-size: 1.125rem
  }
}
@media screen and (max-width: 767.98px) {
  .c-text-field {
    font-size: 1rem
  }
}
.c-text-field::placeholder {
  color: #ccc
}
@media print,
screen and (min-width: 768px) {
  .c-text-field::placeholder {
    font-size: 1.125rem
  }
}
@media screen and (max-width: 767.98px) {
  .c-text-field::placeholder {
    font-size: 1rem
  }
}
.c-text-field:disabled {
  background-color: #f4f4f4
}
.c-text-field--error {
  border-color: #ce0000
}
.c-text-field-label {
  display: flex;
  flex-wrap: nowrap;
  align-items: center
}
.c-text-field-label__text {
  flex-shrink: 0;
  margin-left: 8px
}
@media print,
screen and (min-width: 768px) {
  .c-text-field-label__text {
    font-size: 1.125rem
  }
}
@media screen and (max-width: 767.98px) {
  .c-text-field-label__text {
    font-size: 1rem
  }
}
.c-date-field {
  display: flex;
  justify-content: space-between;
  align-items: center;
  width: 100%;
  background-color: #fff;
  padding: 7px 15px;
  border: 1px solid #ccc;
  border-radius: 4px;
  cursor: pointer
}
@media print,
screen and (min-width: 768px) {
  .c-date-field {
    min-height: 42px;
    font-size: 1.125rem;
    line-height: 1.444;
    letter-spacing: .02em;
    align-items: center
  }
}
@media screen and (max-width: 767.98px) {
  .c-date-field {
    min-height: 40px;
    font-size: 1rem;
    line-height: 1.5;
    letter-spacing: .04em;
    align-items: flex-start
  }
}
.c-date-field__icon {
  --icon-color: #000000;
  margin-left: 16px;
  width: 18px !important;
  height: 18px !important
}
.c-date-field--error {
  border-color: #ce0000
}
.c-form {
  background-color: #f4f4f4
}
@media print,
screen and (min-width: 768px) {
  .c-form {
    padding: 48px 64px
  }
}
@media screen and (max-width: 767.98px) {
  .c-form {
    padding: 24px
  }
}
@media print,
screen and (min-width: 768px) {
  .c-form__item+.c-form__item {
    padding-top: 32px
  }
}
@media screen and (max-width: 767.98px) {
  .c-form__item+.c-form__item {
    padding-top: 24px
  }
}
.c-form__item:not(:last-child) {
  border-bottom: 1px solid #ccc
}
@media print,
screen and (min-width: 768px) {
  .c-form__item:not(:last-child) {
    padding-bottom: 32px
  }
}
@media screen and (max-width: 767.98px) {
  .c-form__item:not(:last-child) {
    padding-bottom: 24px
  }
}
.c-form-item__name {
  padding-bottom: 16px
}
@media print,
screen and (min-width: 768px) {
  .c-form-item__attention {
    padding-top: 8px
  }
}
@media screen and (max-width: 767.98px) {
  .c-form-item__attention {
    padding-top: 12px
  }
}
.c-form-item__error-message {
  padding-top: 16px
}
.c-post-code {
  line-height: 1.5;
  letter-spacing: .02em;
  display: flex;
  align-items: center
}
@media print,
screen and (min-width: 768px) {
  .c-post-code {
    font-size: 1.125rem
  }
}
@media screen and (max-width: 767.98px) {
  .c-post-code {
    font-size: 1rem
  }
}
.c-post-code__number {
  margin-inline: 8px;
  width: 100%
}
.c-desired .c-input-label__text {
  font-weight: 500
}
@media print,
screen and (min-width: 768px) {
  .c-desired__date {
    display: flex
  }
}
@media print,
screen and (min-width: 768px) {
  .c-desired__date .c-date-field+.c-select {
    margin-left: 24px
  }
}
@media screen and (max-width: 767.98px) {
  .c-desired__date .c-date-field+.c-select {
    margin-top: 16px
  }
}
.c-desired+.c-desired {
  margin-top: 24px
}
.c-text+.c-desired {
  margin-top: 24px
}
.c-form-group {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 16px 40px;
  width: 100%
}
.c-form-group__item {
  flex-shrink: 0
}
@media screen and (max-width: 767.98px) {
  .c-form-group__item {
    width: 100%
  }
}
.c-form-group__item-parent {
  display: flex;
  gap: 16px 40px
}
@media screen and (max-width: 767.98px) {
  .c-form-group__item-parent {
    flex-wrap: wrap
  }
}
@media screen and (max-width: 767.98px) {
  .c-form-group--half .c-form-group__item {
    width: calc(50% - 20px)
  }
}
.c-grid {
  display: grid;
  list-style-type: none;
  margin: 0;
  padding: 0
}
@media print,
screen and (min-width: 768px) {
  .c-grid[style*="--grid-gap-pc"] {
    gap: var(--grid-gap-pc)
  }
  .c-grid[style*="--grid-col-pc"] {
    grid-template-columns: var(--grid-col-pc)
  }
  .c-grid[style*="--grid-row-pc"] {
    grid-template-rows: var(--grid-row-pc)
  }
}
@media screen and (max-width: 767.98px) {
  .c-grid[style*="--grid-gap-sp"] {
    gap: var(--grid-gap-sp)
  }
  .c-grid[style*="--grid-col-sp"] {
    grid-template-columns: var(--grid-col-sp)
  }
  .c-grid[style*="--grid-row-sp"] {
    grid-template-rows: var(--grid-row-sp)
  }
}
@media screen and (min-width: 768px)and (max-width: 1024px) {
  .c-grid[style*="--grid-gap-tablet"] {
    gap: var(--grid-gap-tablet)
  }
  .c-grid[style*="--grid-col-tablet"] {
    grid-template-columns: var(--grid-col-tablet)
  }
  .c-grid[style*="--grid-row-tablet"] {
    grid-template-rows: var(--grid-row-tablet)
  }
}
@media print,
screen and (min-width: 768px) {
  .c-grid-item[style*="--grid-item-col-pc"] {
    grid-column: var(--grid-item-col-pc)
  }
  .c-grid-item[style*="--grid-item-row-pc"] {
    grid-column: var(--grid-item-row-pc)
  }
}
@media screen and (max-width: 767.98px) {
  .c-grid-item[style*="--grid-item-col-sp"] {
    grid-column: var(--grid-item-col-sp)
  }
  .c-grid-item[style*="--grid-item-row-sp"] {
    grid-column: var(--grid-item-row-sp)
  }
}
@media screen and (min-width: 768px)and (max-width: 1024px) {
  .c-grid-item[style*="--grid-item-col-tablet"] {
    grid-column: var(--grid-item-col-tablet)
  }
  .c-grid-item[style*="--grid-item-row-tablet"] {
    grid-column: var(--grid-item-row-tablet)
  }
}
body.is-fixed {
  overflow-y: hidden
}
.c-header {
  background-color: #fff;
  position: sticky;
  top: 0;
  left: 0;
  z-index: 1000;
  overflow-x: hidden
}
.c-header__main-menu {
  display: flex;
  justify-content: space-between;
  align-items: center;
  width: 100%
}
@media print,
screen and (min-width: 768px) {
  .c-header__main-menu {
    gap: 16px
  }
}
@media screen and (max-width: 767.98px) {
  .c-header__main-menu {
    gap: 12px
  }
}
.c-header__hamburger-menu {
  width: 100%;
  height: calc(100vh - var(--headerHeight));
  height: calc(100dvh - var(--headerHeight));
  background-color: #fff;
  padding-bottom: 24px;
  position: fixed;
  top: var(--headerHeight);
  right: -100%;
  transition: width .4s, right .4s;
  overflow-y: auto;
  overscroll-behavior-y: contain
}
.c-header__hamburger-menu.is-opened {
  right: 0
}
.c-header--fc .c-header__main-menu {
  color: #fff;
  background-color: #0054ac
}
.c-header--fc .c-header-main-menu__top-link::before {
  background-color: #fff
}
.c-header--fc .c-header-top-link {
  color: #fff
}
@media screen and (max-width: 767.98px) {
  .c-header--fc .c-header-top-link {
    font-size: .875rem
  }
}
.c-header--fc .c-header-hamburger-button::before,
.c-header--fc .c-header-hamburger-button::after,
.c-header--fc .c-header-hamburger-button__line {
  background-color: #fff
}
.c-header-main-menu {
  background-color: #fff
}
@media print,
screen and (min-width: 768px) {
  .c-header-main-menu {
    padding-block: 20px;
    padding-inline: 40px
  }
}
@media screen and (max-width: 767.98px) {
  .c-header-main-menu {
    padding-block: 14px;
    padding-inline: 20px
  }
}
@media print,
screen and (min-width: 768px) {
  .c-header-main-menu__logo {
    flex-shrink: 0
  }
}
@media screen and (max-width: 767.98px) {
  .c-header-main-menu__logo {
    max-width: 140px
  }
}
.c-header-main-menu__nav {
  margin-left: auto
}
.c-header-main-menu__search-button {
  flex-shrink: 0;
  margin-left: auto
}
.c-header-main-menu__top-link {
  display: flex;
  align-items: center;
  margin-right: auto
}
.c-header-main-menu__top-link::before {
  content: "";
  display: inline-flex;
  width: 1px;
  height: 16px;
  background-color: #0054ac
}
@media print,
screen and (min-width: 768px) {
  .c-header-main-menu__top-link::before {
    margin-right: 16px
  }
}
@media screen and (max-width: 767.98px) {
  .c-header-main-menu__top-link::before {
    margin-right: 12px
  }
}
.c-header-main-menu__hamburger-button {
  flex-shrink: 0
}
@media screen and (min-width: 1100px) {
  .c-header-main-menu__search-button,
  .c-header-main-menu__hamburger-button {
    display: none !important
  }
}
@media screen and (max-width: 1099.98px)and (min-width: 768px) {
  .c-header-main-menu {
    padding-inline: 20px
  }
}
@media screen and (max-width: 1099.98px) {
  .c-header-main-menu__nav {
    display: none !important
  }
}
.c-header-nav {
  display: flex;
  align-items: center;
  font-size: .875rem;
  line-height: 1.428;
  letter-spacing: .02em
}
.c-header-nav__item {
  padding-block: 5px
}
.c-header-nav__item+.c-header-nav__item {
  padding-left: 20px;
  border-left: 1px solid #ccc;
  margin-left: 20px
}
.c-header-nav__link {
  display: inline-flex;
  transition: opacity .3s
}
@media(hover: hover) {
  .c-header-nav__link:not(.is-disabled-hover):hover {
    opacity: .8
  }
}
.c-header-search-button {
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: .75rem;
  line-height: 1.416;
  letter-spacing: .04em;
  color: #0054ac;
  background-color: #fff;
  padding: 2px 12px 3px;
  border: 2px solid #0054ac;
  border-radius: 12px;
  transition: opacity .3s
}
@media(hover: hover) {
  .c-header-search-button:not(.is-disabled-hover):hover {
    opacity: .8
  }
}
.c-header-top-link {
  line-height: 1;
  letter-spacing: .04em;
  color: #0054ac
}
@media print,
screen and (min-width: 768px) {
  .c-header-top-link {
    font-size: 1.25rem
  }
}
@media screen and (max-width: 767.98px) {
  .c-header-top-link {
    font-size: 1.125rem
  }
}
.c-header-hamburger-button {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 36px;
  height: 22px;
  position: relative
}
@media(hover: hover) {
  .c-header-hamburger-button:not(.is-disabled-hover):hover {
    opacity: .8
  }
}
.c-header-hamburger-button::before,
.c-header-hamburger-button::after {
  content: "";
  display: block;
  width: 100%;
  height: 4px;
  background-color: #0054ac;
  transform: translateY(0) rotate(0) scaleY(0.5);
  transition: all .3s;
  position: absolute
}
.c-header-hamburger-button::before {
  top: 0
}
.c-header-hamburger-button::after {
  bottom: 0
}
.c-header-hamburger-button__line {
  width: 100%;
  height: 4px;
  background-color: #0054ac;
  transition: all .3s;
  transform: scaleY(0.5);
  transition: all .3s
}
.c-header-hamburger-button.is-opened::before {
  top: 50%;
  transform: translateY(-50%) rotate(45deg) scaleY(0.5)
}
.c-header-hamburger-button.is-opened::after {
  top: 50%;
  transform: translateY(-50%) rotate(-45deg) scaleY(0.5)
}
.c-header-hamburger-button.is-opened .c-header-hamburger-button__line {
  background-color: rgba(0, 0, 0, 0)
}
.c-header-hamburger-menu__links {
  padding-inline: 20px
}
@media print,
screen and (min-width: 768px) {
  .c-header-hamburger-menu__links {
    margin-top: 40px
  }
}
@media screen and (max-width: 767.98px) {
  .c-header-hamburger-menu__links {
    margin-top: 24px
  }
}
.c-header-hamburger-menu__banners,
.c-header-hamburger-menu__buttons {
  padding-inline: 20px;
  margin-top: 40px
}
.c-header-hamburger-menu__button+.c-header-hamburger-menu__button {
  margin-top: 24px
}
@media print,
screen and (min-width: 768px) {
  .c-header-banners {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 1rem
  }
}
.c-header-banners__link {
  display: block
}
@media screen and (max-width: 767.98px) {
  .c-header-banners__link+.c-header-banners__link {
    margin-top: 16px
  }
}
.c-heading-type1 {
  font-family: "Noto Serif JP", serif;
  line-height: 1.75;
  letter-spacing: .04em;
  color: #000
}
@media print,
screen and (min-width: 768px) {
  .c-heading-type1 {
    font-size: 2rem
  }
}
@media screen and (max-width: 767.98px) {
  .c-heading-type1 {
    font-size: 1.5rem
  }
}
.c-heading-type1--border {
  display: flex;
  align-items: flex-start
}
.c-heading-type1--border::before {
  content: "";
  display: inline-block;
  border-top: 1px solid #db7499;
  margin-top: 1px
}
@media screen and (max-width: 767.98px) {
  .c-heading-type1--border::before {
    margin-right: 10px;
    width: calc(100% - 305px);
    max-width: 100px;
    min-width: 40px;
    margin-top: 20px
  }
}
@media print,
screen and (min-width: 768px) {
  .c-heading-type1--border::before {
    margin-right: 20px;
    width: 100px;
    margin-top: 28px
  }
}
.c-heading-type2 {
  font-family: "Noto Serif JP", serif;
  font-weight: 500;
  line-height: 1.75;
  letter-spacing: .04em;
  color: #0054ac;
  border-color: #0054ac;
  display: inline-block;
  border: 1px solid;
  border-radius: 15px;
  letter-spacing: .04em
}
@media print,
screen and (min-width: 768px) {
  .c-heading-type2 {
    font-size: 2.25rem;
    padding: 4px 22px 6px 23px
  }
}
@media screen and (max-width: 767.98px) {
  .c-heading-type2 {
    font-size: 1.3125rem;
    padding: 5px 15px 7px 15px
  }
}
.c-heading-type3 {
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-weight: bold;
  line-height: 1.75;
  letter-spacing: .04em;
  color: #b52b5d
}
@media print,
screen and (min-width: 768px) {
  .c-heading-type3 {
    font-size: 1.5rem
  }
}
@media screen and (max-width: 767.98px) {
  .c-heading-type3 {
    font-size: 1.3125rem
  }
}
.c-heading-type3--text-small {
  font-family: "Zen Kaku Gothic New", sans-serif;
  line-height: 1.75;
  color: #000
}
@media print,
screen and (min-width: 768px) {
  .c-heading-type3--text-small {
    font-size: 1.25rem;
    letter-spacing: .02em
  }
}
@media screen and (max-width: 767.98px) {
  .c-heading-type3--text-small {
    font-size: 1.125rem;
    letter-spacing: .1em
  }
}
.c-heading-type3--border {
  border-left: 4px solid;
  padding-left: 16px;
  border-color: #db7499
}
.c-heading-type3--border-blue {
  border-left: 4px solid;
  padding-left: 16px;
  border-color: #0054ac
}
.c-heading-type3--border-green {
  border-left: 4px solid;
  padding-left: 16px;
  border-color: #78cbce
}
.c-heading-type4 {
  display: inline-block;
  font-family: "Noto Serif JP", serif;
  line-height: 1.4;
  letter-spacing: .04em;
  padding-bottom: 8px;
  border-bottom: 2px solid #db7499
}
@media print,
screen and (min-width: 768px) {
  .c-heading-type4 {
    font-size: 2rem
  }
}
@media screen and (max-width: 767.98px) {
  .c-heading-type4 {
    font-size: 1.5rem
  }
}
.c-heading-label {
  font-family: "Noto Serif JP", serif;
  line-height: 1.75;
  color: #fff;
  background-color: #0054ac;
  display: inline-block;
  border-radius: 52px;
  letter-spacing: .04em
}
@media print,
screen and (min-width: 768px) {
  .c-heading-label {
    font-size: 2.25rem;
    padding: 8px 92px
  }
}
@media screen and (max-width: 767.98px) {
  .c-heading-label {
    font-size: 1.3125rem;
    padding: 8px 55px
  }
}
.c-heading-step {
  font-family: "Noto Serif JP", serif;
  color: #b52b5d;
  line-height: 1.5;
  letter-spacing: .04em;
  display: inline-block;
  border-bottom: 2px solid #db7499
}
@media print,
screen and (min-width: 768px) {
  .c-heading-step {
    font-size: 2rem;
    padding: 0 5px
  }
}
@media screen and (max-width: 767.98px) {
  .c-heading-step {
    font-size: 1.5rem;
    padding: 0 10px
  }
}
.c-heading-step__text {
  font-family: "Zen Kaku Gothic New", sans-serif;
  color: #000;
  letter-spacing: .02em;
  text-transform: uppercase
}
@media print,
screen and (min-width: 768px) {
  .c-heading-step__text {
    font-size: 1rem;
    margin-right: 9px
  }
}
@media screen and (max-width: 767.98px) {
  .c-heading-step__text {
    font-size: .9375rem;
    margin-right: 10px
  }
}
.c-icon {
  display: inline-flex;
  width: 24px;
  height: 24px;
  background-color: var(--icon-color);
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-position: center;
  mask-position: center;
  -webkit-mask-size: contain;
  mask-size: contain
}
.c-icon--pagetop {
  -webkit-mask-image: url("/assets/images/icon/pagetop-arrow_black.svg");
  mask-image: url("/assets/images/icon/pagetop-arrow_black.svg")
}
.c-icon--recruitment {
  -webkit-mask-image: url("/assets/images/icon/recruitment_black.svg");
  mask-image: url("/assets/images/icon/recruitment_black.svg")
}
.c-icon--search {
  -webkit-mask-image: url("/assets/images/icon/search_black.svg");
  mask-image: url("/assets/images/icon/search_black.svg")
}
.c-icon--tel {
  -webkit-mask-image: url("/assets/images/icon/tel_black.svg");
  mask-image: url("/assets/images/icon/tel_black.svg")
}
.c-icon--mail {
  -webkit-mask-image: url("/assets/images/icon/mail_black.svg");
  mask-image: url("/assets/images/icon/mail_black.svg")
}
.c-icon--circle-right-arrow {
  -webkit-mask-image: url("/assets/images/icon/circle-right-arrow_black.svg");
  mask-image: url("/assets/images/icon/circle-right-arrow_black.svg")
}
.c-icon--right-arrow {
  -webkit-mask-image: url("/assets/images/icon/right-arrow_black.svg");
  mask-image: url("/assets/images/icon/right-arrow_black.svg")
}
.c-icon--plus {
  -webkit-mask-image: url("/assets/images/icon/plus_black.svg");
  mask-image: url("/assets/images/icon/plus_black.svg")
}
.c-icon--minus {
  -webkit-mask-image: url("/assets/images/icon/minus_black.svg");
  mask-image: url("/assets/images/icon/minus_black.svg")
}
.c-icon--square-check {
  -webkit-mask-image: url("/assets/images/icon/square-check_black.svg");
  mask-image: url("/assets/images/icon/square-check_black.svg")
}
.c-icon--question {
  -webkit-mask-image: url("/assets/images/icon/question.svg");
  mask-image: url("/assets/images/icon/question.svg")
}
.c-icon--answer {
  -webkit-mask-image: url("/assets/images/icon/answer.svg");
  mask-image: url("/assets/images/icon/answer.svg")
}
.c-icon--calendar {
  -webkit-mask-image: url("/assets/images/icon/calendar_black.svg");
  mask-image: url("/assets/images/icon/calendar_black.svg")
}
@media print,
screen and (min-width: 768px) {
  .c-inquiry-section {
    padding: 40px;
    background-color: #fcf7e8
  }
}
@media screen and (max-width: 767.98px) {
  .c-inquiry-section {
    padding: 34px 20px 40px;
    background-color: #fff6db
  }
}
@media print,
screen and (min-width: 768px) {
  .c-inquiry-section__inner {
    width: 100%;
    max-width: 840px;
    margin-inline: auto
  }
}
.c-inquiry-section--recruit,
.c-inquiry-section--fc {
  background-color: #e5f0fc
}
@media print,
screen and (min-width: 768px) {
  .c-inquiry-info {
    display: flex
  }
}
@media print,
screen and (min-width: 768px) {
  .c-inquiry-info__item {
    width: 50%
  }
}
@media print,
screen and (min-width: 768px) {
  .c-inquiry-info__item:nth-of-type(1) {
    padding-right: 25px
  }
}
@media screen and (max-width: 767.98px) {
  .c-inquiry-info__item:nth-of-type(1) {
    text-align: center
  }
}
@media print,
screen and (min-width: 768px) {
  .c-inquiry-info__item:nth-of-type(2) {
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding-left: 25px;
    border-left: 1px solid #ccc
  }
}
@media screen and (max-width: 767.98px) {
  .c-inquiry-info__item:nth-of-type(2) {
    padding-top: 24px;
    border-top: 1px solid #ccc;
    margin-top: 24px
  }
}
.c-inquiry-heading {
  letter-spacing: .02em
}
@media print,
screen and (min-width: 768px) {
  .c-inquiry-heading {
    font-size: 1.25rem
  }
}
@media screen and (max-width: 767.98px) {
  .c-inquiry-heading {
    font-size: .75rem
  }
}
.c-inquiry-tel-number {
  display: inline-flex;
  font-family: "Lora", serif;
  font-weight: 400;
  word-break: break-all;
  color: #0054ac;
  transition: opacity .3s
}
@media print,
screen and (min-width: 768px) {
  .c-inquiry-tel-number {
    font-size: 3.75rem;
    line-height: 1.266
  }
}
@media screen and (max-width: 767.98px) {
  .c-inquiry-tel-number {
    font-size: 2.375rem;
    line-height: 1.263
  }
}
@media(hover) {
  .c-inquiry-tel-number {
    pointer-events: none
  }
}
.c-inquiry-reception-hours {
  display: flex;
  align-items: baseline;
  flex-wrap: wrap;
  letter-spacing: .02em
}
@media print,
screen and (min-width: 768px) {
  .c-inquiry-reception-hours {
    font-size: 1.25rem;
    line-height: 1.45
  }
}
@media screen and (max-width: 767.98px) {
  .c-inquiry-reception-hours {
    justify-content: center;
    font-size: .75rem;
    line-height: 1.416
  }
}
.c-inquiry-reception-hours__time {
  font-family: "Noto Serif JP", serif;
  letter-spacing: .04em
}
@media print,
screen and (min-width: 768px) {
  .c-inquiry-reception-hours__time {
    font-size: 1.25rem;
    line-height: 1.35;
    margin-left: 12px
  }
}
@media screen and (max-width: 767.98px) {
  .c-inquiry-reception-hours__time {
    font-size: .875rem;
    line-height: 1.357;
    margin-left: 7px
  }
}
.c-inquiry-reception-hours__days {
  letter-spacing: .02em
}
@media print,
screen and (min-width: 768px) {
  .c-inquiry-reception-hours__days {
    font-size: 1rem;
    line-height: 1.5;
    margin-left: 5px
  }
}
@media screen and (max-width: 767.98px) {
  .c-inquiry-reception-hours__days {
    font-size: .75rem;
    line-height: 1.416;
    margin-left: 4px
  }
}
.c-inquiry-info-button+.c-inquiry-info-button {
  margin-top: 24px
}
.c-service-inquiry__heading {
  font-family: "Noto Serif JP", serif;
  text-align: center;
  letter-spacing: .04em
}
@media print,
screen and (min-width: 768px) {
  .c-service-inquiry__heading {
    font-size: 2rem
  }
}
@media screen and (max-width: 767.98px) {
  .c-service-inquiry__heading {
    font-size: 1.5rem
  }
}
@media print,
screen and (min-width: 768px) {
  .c-service-inquiry__body {
    margin-top: 32px
  }
}
@media screen and (max-width: 767.98px) {
  .c-service-inquiry__body {
    margin-top: 25px
  }
}
.c-recruit-inquiry__heading {
  font-family: "Noto Serif JP", serif;
  text-align: center;
  letter-spacing: .04em;
  color: #0054ac;
  font-weight: 500
}
@media print,
screen and (min-width: 768px) {
  .c-recruit-inquiry__heading {
    font-size: 1.25rem
  }
}
@media screen and (max-width: 767.98px) {
  .c-recruit-inquiry__heading {
    font-size: 1.125rem
  }
}
.c-recruit-inquiry__text {
  line-height: 1.5;
  text-align: center
}
@media print,
screen and (min-width: 768px) {
  .c-recruit-inquiry__text {
    font-size: 1rem;
    margin-top: 16px
  }
}
@media screen and (max-width: 767.98px) {
  .c-recruit-inquiry__text {
    font-size: .9375rem;
    margin-top: 24px
  }
}
@media print,
screen and (min-width: 768px) {
  .c-recruit-inquiry__body {
    margin-top: 40px
  }
}
@media screen and (max-width: 767.98px) {
  .c-recruit-inquiry__body {
    margin-top: 24px
  }
}
.c-fc-inquiry__body {
  margin-top: 24px
}
.c-fc-inquiry-head {
  display: flex;
  font-family: "Noto Serif JP", serif;
  letter-spacing: .04em
}
@media print,
screen and (min-width: 768px) {
  .c-fc-inquiry-head {
    font-size: 1.25rem
  }
}
@media screen and (max-width: 767.98px) {
  .c-fc-inquiry-head {
    font-size: 1.125rem
  }
}
.c-fc-inquiry-head__image {
  flex-shrink: 0;
  width: 80px
}
.c-fc-inquiry-head__text {
  width: 100%;
  padding-top: 10px
}
@media print,
screen and (min-width: 768px) {
  .c-fc-inquiry-head__text {
    padding-left: 24px
  }
}
@media screen and (max-width: 767.98px) {
  .c-fc-inquiry-head__text {
    padding-left: 16px
  }
}
.c-job-info {
  background-color: #e5f0fc
}
.c-job-info__inner {
  display: flex;
  align-items: center
}
@media print,
screen and (min-width: 768px) {
  .c-job-info__inner {
    max-width: 1080px;
    width: 100%;
    padding: 80px 20px;
    justify-content: space-between;
    margin: 0 auto 0
  }
}
@media screen and (max-width: 767.98px) {
  .c-job-info__inner {
    flex-direction: column;
    padding: 40px 20px
  }
}
@media print,
screen and (min-width: 768px) {
  .c-job-info__recruit {
    max-width: 336px;
    width: 100%;
    margin-right: 68px
  }
}
@media screen and (max-width: 767.98px) {
  .c-job-info__recruit {
    margin-bottom: 24px
  }
}
.c-job-info__text {
  color: #000;
  line-height: 1.75;
  text-align: center
}
@media print,
screen and (min-width: 768px) {
  .c-job-info__text {
    font-size: 1.25rem;
    font-family: "Zen Maru Gothic", sans-serif;
    letter-spacing: .04em;
    margin-top: 32px
  }
}
@media screen and (max-width: 767.98px) {
  .c-job-info__text {
    font-size: 1.125rem;
    font-family: "Zen Kaku Gothic New", sans-serif;
    letter-spacing: .02em;
    margin-top: 24px
  }
}
.c-job-info__link {
  display: block;
  width: 100%
}
.c-jumbotron {
  display: flex;
  justify-content: center;
  align-items: center;
  --height: 200px;
  padding: 20px;
  background-color: #e5f0fc;
  height: var(--height)
}
.c-jumbotron__text {
  text-align: center;
  font-family: "Noto Serif JP", serif;
  color: #0054ac;
  letter-spacing: .04em
}
@media screen and (max-width: 767.98px) {
  .c-jumbotron__text {
    font-size: 1.5rem
  }
}
@media print,
screen and (min-width: 768px) {
  .c-jumbotron__text {
    font-size: 2rem
  }
}
.c-jumbotron__inner {
  display: flex;
  overflow: hidden;
  align-items: center;
  white-space: nowrap
}
.c-jumbotron__logo {
  aspect-ratio: 183/23
}
@media screen and (max-width: 767.98px) {
  .c-jumbotron__logo {
    width: 175px;
    margin-right: 8px
  }
}
@media print,
screen and (min-width: 768px) {
  .c-jumbotron__logo {
    width: 223px;
    margin-right: 12px
  }
}
.l-base {
  padding-bottom: 80px
}
.l-contents {
  max-width: 1160px;
  margin-inline: auto
}
@media screen and (max-width: 767.98px) {
  .l-contents {
    padding-inline: 20px
  }
}
@media print,
screen and (min-width: 768px) {
  .l-contents {
    padding-inline: 40px
  }
}
@media print and (hover: hover),
screen and (min-width: 768px)and (hover: hover) {
  .c-link:not(.is-disabled-hover):hover {
    opacity: .8
  }
}
.c-link--text {
  text-decoration: underline
}
.c-link--hover-no-underline {
  text-decoration: underline;
  transition: text-decoration-color .3s
}
@media(hover: hover) {
  .c-link--hover-no-underline:not(.is-disabled-hover):hover {
    opacity: unset;
    text-decoration-color: rgba(0, 0, 0, 0)
  }
}
.c-link-list {
  display: grid
}
@media screen and (max-width: 767.98px) {
  .c-link-list--faq {
    row-gap: 16px
  }
}
@media print,
screen and (min-width: 768px) {
  .c-link-list--faq {
    gap: 40px 24px;
    grid-template-columns: repeat(3, 1fr)
  }
}
@media screen and (max-width: 767.98px) {
  .c-link-list--faq .c-link-list-item {
    font-size: .9375rem
  }
}
@media print,
screen and (min-width: 768px) {
  .c-link-list--faq .c-link-list-item {
    font-size: 1rem
  }
}
.c-link-list--prefectures {
  grid-template-columns: repeat(3, 1fr);
  gap: 16px 4%
}
.c-link-list--prefectures .c-prefectures__heading {
  grid-column: 1/4
}
@media screen and (max-width: 767.98px) {
  .c-link-list--prefectures .c-link-list-item {
    font-size: .9375rem
  }
}
@media print,
screen and (min-width: 768px) {
  .c-link-list--prefectures .c-link-list-item {
    font-size: 1rem;
    font-size: clamp(13px, 1.3vw, 16px)
  }
}
@media print,
screen and (min-width: 768px) {
  .c-link-list--site-map {
    gap: 40px 24px;
    grid-template-rows: repeat(3, 0fr);
    grid-auto-flow: column;
    grid-template-columns: 49% 1fr
  }
}
@media screen and (max-width: 767.98px) {
  .c-link-list--site-map {
    row-gap: 32px
  }
}
.c-link-list-item {
  display: flex;
  align-items: baseline;
  text-decoration-color: #000;
  text-decoration-skip-ink: none;
  letter-spacing: .02em
}
.c-link-list-item>a {
  width: 100%;
  text-decoration: underline;
  transition: text-decoration-color .3s
}
@media(hover: hover) {
  .c-link-list-item>a:not(.is-disabled-hover):hover {
    text-decoration-color: rgba(0, 0, 0, 0)
  }
}
.c-link-list-item::before {
  content: "";
  flex-shrink: 0;
  display: inline-flex;
  transform: translateY(2px);
  width: 16px;
  height: 16px;
  background-color: #db7499;
  -webkit-mask-image: url("/assets/images/icon/right-arrow_black.svg");
  mask-image: url("/assets/images/icon/right-arrow_black.svg");
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-position: center;
  mask-position: center;
  -webkit-mask-size: contain;
  mask-size: contain;
  margin-right: .125em
}
.c-faq {
  background-color: #f4f4f4
}
@media screen and (max-width: 767.98px) {
  .c-faq {
    padding: 24px
  }
}
@media print,
screen and (min-width: 768px) {
  .c-faq {
    padding: 40px 80px
  }
}
.c-faq__heading {
  color: #b52b5d;
  letter-spacing: .04em;
  text-align: center
}
@media screen and (max-width: 767.98px) {
  .c-faq__heading {
    margin-bottom: 16px;
    font-size: 1rem
  }
}
@media print,
screen and (min-width: 768px) {
  .c-faq__heading {
    font-weight: bold;
    margin-bottom: 40px;
    font-size: 1.25rem
  }
}
.c-prefectures {
  background-color: #f4f4f4;
  padding: 24px
}
.c-prefectures__heading {
  color: #b52b5d;
  letter-spacing: .04em
}
@media screen and (max-width: 767.98px) {
  .c-prefectures__heading {
    font-size: 1rem
  }
}
@media print,
screen and (min-width: 768px) {
  .c-prefectures__heading {
    font-size: 1.125rem
  }
}
.c-merit-card-button {
  display: flex;
  align-items: center;
  width: 100%;
  font-weight: bold;
  text-align: center;
  box-shadow: 0 3px 10px rgba(0, 0, 0, .2);
  transition: opacity .3s;
  color: #0054ac;
  background-color: #fff;
  border: 2px solid #ccc;
  flex-direction: column;
  position: relative;
  letter-spacing: .04em;
  font-family: "Noto Serif JP", serif
}
@media print,
screen and (min-width: 768px) {
  .c-merit-card-button {
    border-radius: 15px;
    font-size: 1.25rem;
    padding: 14px 14px
  }
}
@media screen and (max-width: 767.98px) {
  .c-merit-card-button {
    border-radius: 10px;
    font-size: 1.125rem;
    padding: 14px 14px 18px
  }
}
@media(hover: hover) {
  .c-merit-card-button:not(.is-disabled-hover):hover {
    opacity: .8;
    cursor: pointer
  }
}
.c-merit-card-button__text {
  display: block;
  width: 100%;
  margin-bottom: 8px
}
.c-merit-card-button__icon {
  flex-shrink: 0;
  width: 28px !important;
  height: 28px !important;
  background-color: #0054ac !important;
  border-radius: 50%;
  position: absolute;
  bottom: 12px;
  right: 12px
}
.c-merit-card-button__image {
  width: 100%;
  object-fit: cover;
  margin-top: auto
}
@media print,
screen and (min-width: 768px) {
  .c-merit-card-button__image {
    padding-inline: 32px
  }
}
.c-merit-item {
  display: grid;
  grid-template-rows: subgrid;
  grid-row: span 2
}
@media print,
screen and (min-width: 768px) {
  .c-merit-item {
    gap: 24px
  }
}
@media screen and (max-width: 767.98px) {
  .c-merit-item {
    gap: 16px
  }
}
.c-merit-item__text {
  line-height: 1.65;
  letter-spacing: .02em
}
@media print,
screen and (min-width: 768px) {
  .c-merit-item__text {
    font-size: 1rem
  }
}
@media screen and (max-width: 767.98px) {
  .c-merit-item__text {
    font-size: .9375rem
  }
}
.c-modal {
  border: none;
  padding: 0;
  width: 100%;
  overscroll-behavior: contain;
  background: rgba(0, 0, 0, 0);
  max-width: var(--max-width)
}
@media(min-aspect-ratio: 1.4352941176) {
  .c-modal {
    max-width: min(var(--max-width), 70%)
  }
}
@media screen and (orientation: landscape)and (max-width: 767.98px) {
  .c-modal {
    max-width: 80%
  }
}
.c-modal__inner {
  padding-top: 36px
}
@media print,
screen and (min-width: 768px) {
  .c-modal__inner {
    padding-inline: 36px
  }
}
@media(min-aspect-ratio: 1.4352941176) {
  .c-modal__inner {
    padding-inline: 36px
  }
}
@media(orientation: landscape)and (max-width: 767.98px) {
  .c-modal__inner {
    padding-inline: 36px
  }
}
.c-modal::backdrop {
  background-color: rgba(0, 0, 0, .5)
}
.c-modal-closer {
  position: absolute;
  top: 2px;
  right: 0;
  display: block;
  width: 36px;
  height: 26px;
  transition: opacity .3s ease-out
}
@media print,
screen and (min-width: 768px) {
  .c-modal-closer {
    transform: translateX(-100%)
  }
}
@media(min-aspect-ratio: 1.4352941176) {
  .c-modal-closer {
    transform: translateX(-100%) scale(0.75)
  }
}
@media(hover: hover) {
  .c-modal-closer:not(.is-disabled-hover):hover {
    opacity: .8
  }
}
.c-modal-closer::before,
.c-modal-closer::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  width: 2px;
  height: 42px;
  background-color: #fff
}
.c-modal-closer::before {
  transform: translate(-50%, -50%) rotate(54deg)
}
.c-modal-closer::after {
  transform: translate(-50%, -50%) rotate(-54deg)
}
.c-movie-list__item {
  display: flex;
  align-items: center;
  border-radius: 10px;
  overflow: hidden
}
.c-nav-accordion__item+.c-nav-accordion__item {
  margin-top: 2px
}
.c-nav-accordion__heading {
  width: 100%;
  background-color: #f4f4f4;
  padding-block: 12px;
  padding-inline: 20px
}
.c-nav-accordion__links>* {
  padding-block: 16px;
  padding-inline: 20px
}
.c-nav-accordion--dark {
  color: #fff
}
.c-nav-accordion--dark .c-nav-accordion__heading {
  background-color: #6a6a6a
}
.c-nav-accordion--dark .c-nav-accordion__heading>.c-icon {
  background-color: #fff
}
.c-nav-accordion-links {
  list-style: none;
  font-size: 1rem;
  line-height: 1.5;
  letter-spacing: .04em
}
.c-nav-accordion-links__item {
  padding-left: 1rem;
  position: relative
}
.c-nav-accordion-links__item::before {
  content: "-";
  font-size: 1rem;
  line-height: 1;
  position: absolute;
  top: .25rem;
  left: 0
}
.c-nav-accordion-links__item+.c-nav-accordion-links__item {
  margin-top: 16px
}
.c-nav-accordion-links__link {
  display: block;
  transition: opacity .3s
}
@media(hover: hover) {
  .c-nav-accordion-links__link:not(.is-disabled-hover):hover {
    opacity: .8
  }
}
@media print,
screen and (min-width: 768px) {
  .c-news__item {
    padding-right: 40px;
    padding-bottom: 24px;
    padding-left: 40px
  }
}
@media screen and (max-width: 767.98px) {
  .c-news__item {
    padding-right: 16px;
    padding-bottom: 16px;
    padding-left: 16px
  }
}
@media print,
screen and (min-width: 768px) {
  .c-news__item:not(:first-of-type) {
    padding-top: 24px
  }
}
@media screen and (max-width: 767.98px) {
  .c-news__item:not(:first-of-type) {
    padding-top: 16px
  }
}
.c-news__item+.c-news__item {
  border-top: 1px solid #ccc
}
.c-news__date {
  display: block
}
@media print,
screen and (min-width: 768px) {
  .c-news__date {
    font-size: 1rem
  }
}
@media screen and (max-width: 767.98px) {
  .c-news__date {
    font-size: .9375rem
  }
}
.c-news__text {
  display: inline-flex;
  align-items: baseline;
  text-decoration: underline;
  text-decoration-color: #000;
  text-decoration-skip-ink: none;
  transition: text-decoration-color .3s
}
@media print,
screen and (min-width: 768px) {
  .c-news__text {
    font-size: 1.125rem;
    letter-spacing: .02em;
    margin-top: 16px
  }
}
@media screen and (max-width: 767.98px) {
  .c-news__text {
    font-size: 1rem;
    letter-spacing: .04em;
    margin-top: 8px
  }
}
@media(hover: hover) {
  .c-news__text:not(.is-disabled-hover):hover {
    text-decoration-color: rgba(0, 0, 0, 0)
  }
}
.c-news__text::before {
  content: "";
  flex-shrink: 0;
  display: inline-flex;
  width: 16px;
  height: 16px;
  background-color: #db7499;
  -webkit-mask-image: url("/assets/images/icon/right-arrow_black.svg");
  mask-image: url("/assets/images/icon/right-arrow_black.svg");
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-position: center;
  mask-position: center;
  -webkit-mask-size: contain;
  mask-size: contain;
  margin-right: .125em
}
.c-news--top {
  background-color: #f4f4f4
}
@media print,
screen and (min-width: 768px) {
  .c-news--top {
    padding-top: 24px;
    border-radius: 15px
  }
}
@media screen and (max-width: 767.98px) {
  .c-news--top {
    padding-top: 16px;
    border-radius: 10px
  }
}
@media print,
screen and (min-width: 768px) {
  .c-news--top .c-news__item {
    display: flex
  }
}
@media print,
screen and (min-width: 768px) {
  .c-news--top .c-news__date {
    width: 172px;
    padding-right: 1em
  }
}
.c-news--top .c-news__text {
  letter-spacing: .02em
}
@media print,
screen and (min-width: 768px) {
  .c-news--top .c-news__text {
    width: calc(100% - 172px);
    font-size: 1rem;
    margin-top: 0
  }
}
@media screen and (max-width: 767.98px) {
  .c-news--top .c-news__text {
    font-size: .9375rem
  }
}
.c-paragraph-block p {
  font-size: 1.125rem
}
.c-paragraph-block *+p {
  margin-top: 1.5rem
}
.c-process-list__item {
  display: flex;
  width: 100%
}
@media print,
screen and (min-width: 768px) {
  .c-process-list__item {
    gap: 48px
  }
}
@media screen and (max-width: 767.98px) {
  .c-process-list__item {
    flex-wrap: wrap;
    flex-direction: column-reverse;
    gap: 16px
  }
}
.c-process-list__item+.c-process-list__item {
  margin-top: 32px
}
@media print,
screen and (min-width: 768px) {
  .c-process-list__item--center {
    align-items: center
  }
}
.c-process-list__image {
  flex-shrink: 0
}
@media print,
screen and (min-width: 768px) {
  .c-process-list__image {
    width: 312px
  }
}
@media screen and (max-width: 767.98px) {
  .c-process-list__image {
    width: 100%
  }
}
@media print,
screen and (min-width: 768px) {
  .c-process-list__content {
    width: calc(100% - 312px)
  }
}
@media screen and (max-width: 767.98px) {
  .c-process-list__content {
    width: 100%
  }
}
.c-process-list__heading>span:nth-of-type(2) {
  display: block;
  margin-top: 16px;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-weight: bold;
  line-height: 1.45;
  letter-spacing: .04em;
  color: #b52b5d
}
@media print,
screen and (min-width: 768px) {
  .c-process-list__heading>span:nth-of-type(2) {
    font-size: 1.25rem
  }
}
@media screen and (max-width: 767.98px) {
  .c-process-list__heading>span:nth-of-type(2) {
    font-size: 1.3125rem
  }
}
@media print,
screen and (min-width: 768px) {
  .c-process-list__heading+.c-process-list__text {
    margin-top: 24px
  }
}
@media screen and (max-width: 767.98px) {
  .c-process-list__heading+.c-process-list__text {
    margin-top: 16px
  }
}
@media print,
screen and (min-width: 768px) {
  .c-process-list__text {
    line-height: 1.4
  }
}
@media screen and (max-width: 767.98px) {
  .c-process-list__text {
    line-height: 1.5
  }
}
@media screen and (max-width: 767.98px) {
  .c-process-list--arrow-type .c-heading-step {
    font-size: 1.4375rem
  }
}
@media print,
screen and (min-width: 768px) {
  .c-process-list--arrow-type .c-process-list__heading>span:nth-of-type(2) {
    font-size: 1.125rem
  }
}
@media screen and (max-width: 767.98px) {
  .c-process-list--arrow-type .c-process-list__heading>span:nth-of-type(2) {
    font-size: 1rem
  }
}
.c-process-list--arrow-type .c-process-list__item {
  position: relative;
  border-bottom: 1px solid #ccc;
  padding-bottom: 32px
}
@media screen and (max-width: 767.98px) {
  .c-process-list--arrow-type .c-process-list__item {
    flex-direction: initial
  }
}
.c-process-list--arrow-type .c-process-list__item:not(:last-child)::before {
  content: "";
  position: absolute;
  clip-path: polygon(0 0, 50% 100%, 100% 0);
  width: 22px;
  height: 11px;
  background-color: #ccc;
  bottom: -11px;
  left: 50%;
  transform: translateX(-50%)
}
.c-process-list--arrow-type .c-process-list__item:not(:last-child)::after {
  content: "";
  position: absolute;
  clip-path: polygon(0 0, 50% 100%, 100% 0);
  width: 22px;
  height: 11px;
  background-color: #fff;
  bottom: -10px;
  left: 50%;
  transform: translateX(-50%)
}
@media print,
screen and (min-width: 768px) {
  .c-process-list--arrow-type .c-process-list__image {
    width: 140px
  }
}
@media screen and (max-width: 767.98px) {
  .c-process-list--arrow-type .c-process-list__image {
    width: 144px
  }
}
@media print,
screen and (min-width: 768px) {
  .c-process-list--arrow-type .c-process-list__content {
    width: 100%
  }
}
@media screen and (max-width: 767.98px) {
  .c-process-list--arrow-type .c-process-list__content {
    display: contents
  }
}
.c-process-list--arrow-type .c-process-list__heading {
  display: flex;
  align-items: center
}
@media print,
screen and (min-width: 768px) {
  .c-process-list--arrow-type .c-process-list__heading {
    gap: 32px
  }
}
@media screen and (max-width: 767.98px) {
  .c-process-list--arrow-type .c-process-list__heading {
    width: calc(100% - 160px);
    flex-direction: column
  }
}
@media print,
screen and (min-width: 768px) {
  .c-process-list--arrow-type .c-process-list__heading>span:nth-of-type(1) {
    flex-shrink: 0
  }
}
@media print,
screen and (min-width: 768px) {
  .c-process-list--arrow-type .c-process-list__heading>span:nth-of-type(2) {
    flex-shrink: 0
  }
}
@media screen and (max-width: 767.98px) {
  .c-process-list--arrow-type .c-process-list__heading>span:nth-of-type(2) {
    text-align: center
  }
}
.c-question-list {
  display: flex;
  flex-direction: column
}
.c-question-list--collapse .c-collapse {
  gap: 24px;
  background-color: #fff;
  border-bottom: 1px solid #ccc
}
.c-question-list--collapse .c-collapse:first-child {
  border-top: 1px solid #ccc
}
@media print,
screen and (min-width: 768px) {
  .c-question-list--collapse .c-collapse {
    padding: 24px 40px
  }
}
@media screen and (max-width: 767.98px) {
  .c-question-list--collapse .c-collapse {
    padding: 24px 16px
  }
}
.c-question-list--collapse .c-collapse-heading {
  display: grid;
  grid-template-columns: auto 1fr auto;
  justify-content: initial;
  align-items: stretch;
  font-size: 1.125rem;
  color: #b52b5d;
  cursor: auto
}
.c-question-list--collapse .c-collapse-heading__decor {
  background-color: #b52b5d
}
.c-question-list--collapse .c-collapse-heading__decor:first-child {
  margin-right: 8px
}
@media print,
screen and (min-width: 768px) {
  .c-question-list--collapse .c-collapse-heading__decor:first-child {
    width: 20px;
    height: 27px
  }
}
@media screen and (max-width: 767.98px) {
  .c-question-list--collapse .c-collapse-heading__decor:first-child {
    width: 18px;
    height: 24px
  }
}
@media print,
screen and (min-width: 768px) {
  .c-question-list--collapse .c-collapse-heading__decor:nth-child(2),
  .c-question-list--collapse .c-collapse-heading__decor:nth-child(3) {
    width: 20px;
    height: 20px;
    margin-top: 4px;
    margin-left: 16px
  }
}
@media screen and (max-width: 767.98px) {
  .c-question-list--collapse .c-collapse-heading__decor:nth-child(2),
  .c-question-list--collapse .c-collapse-heading__decor:nth-child(3) {
    width: 20px;
    height: 20px;
    margin-left: 8px
  }
}
.c-question-list--collapse .c-collapse-content {
  display: flex
}
@media print,
screen and (min-width: 768px) {
  .c-question-list--collapse .c-collapse-content {
    font-size: 1rem
  }
}
@media screen and (max-width: 767.98px) {
  .c-question-list--collapse .c-collapse-content {
    font-size: 1.125rem
  }
}
.c-question-list--collapse .c-collapse-content[aria-hidden=true] {
  display: none
}
.c-question-list--collapse .c-collapse-content__decor {
  flex-shrink: 0;
  background-color: #000;
  margin-right: 8px
}
@media print,
screen and (min-width: 768px) {
  .c-question-list--collapse .c-collapse-content__decor {
    width: 20px;
    height: 29px
  }
}
@media screen and (max-width: 767.98px) {
  .c-question-list--collapse .c-collapse-content__decor {
    width: 20px;
    height: 26px
  }
}
.c-question-list-foot {
  display: flex;
  align-items: baseline;
  justify-content: right;
  padding-top: 24px;
  text-decoration: underline;
  text-decoration-color: #000;
  transition: text-decoration-color .3s;
  text-decoration-skip-ink: none
}
@media print,
screen and (min-width: 768px) {
  .c-question-list-foot {
    font-size: 1.125rem;
    letter-spacing: .02em
  }
}
@media screen and (max-width: 767.98px) {
  .c-question-list-foot {
    font-size: 1rem;
    letter-spacing: .04em
  }
}
@media(hover: hover) {
  .c-question-list-foot:not(.is-disabled-hover):hover {
    text-decoration-color: rgba(0, 0, 0, 0)
  }
}
.c-question-list-foot::before {
  content: "";
  flex-shrink: 0;
  display: inline-flex;
  width: 16px;
  height: 16px;
  background-color: #db7499;
  -webkit-mask-image: url("/assets/images/icon/right-arrow_black.svg");
  mask-image: url("/assets/images/icon/right-arrow_black.svg");
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-position: center;
  mask-position: center;
  -webkit-mask-size: contain;
  mask-size: contain;
  margin-right: .125em
}
.c-collapse-group--question .c-collapse {
  background-color: #fff;
  border-bottom: 1px solid #ccc
}
@media print,
screen and (min-width: 768px) {
  .c-collapse-group--question .c-collapse {
    padding: 0 40px
  }
}
@media screen and (max-width: 767.98px) {
  .c-collapse-group--question .c-collapse {
    padding: 0 16px
  }
}
.c-collapse-group--question .c-collapse:first-child {
  border-top: 1px solid #ccc
}
.c-collapse-group--question .c-collapse-heading {
  display: grid;
  grid-template-columns: auto 1fr auto;
  align-items: stretch;
  font-size: 1.125rem;
  color: #b52b5d;
  padding: 24px 0
}
.c-collapse-group--question .c-collapse-heading__decor {
  background-color: #b52b5d
}
.c-collapse-group--question .c-collapse-heading__decor:first-child {
  margin-right: 8px
}
@media print,
screen and (min-width: 768px) {
  .c-collapse-group--question .c-collapse-heading__decor:first-child {
    width: 20px;
    height: 27px
  }
}
@media screen and (max-width: 767.98px) {
  .c-collapse-group--question .c-collapse-heading__decor:first-child {
    width: 18px;
    height: 24px
  }
}
@media print,
screen and (min-width: 768px) {
  .c-collapse-group--question .c-collapse-heading__decor:nth-child(2),
  .c-collapse-group--question .c-collapse-heading__decor:nth-child(3) {
    width: 20px;
    height: 20px;
    margin-top: 4px;
    margin-left: 16px
  }
}
@media screen and (max-width: 767.98px) {
  .c-collapse-group--question .c-collapse-heading__decor:nth-child(2),
  .c-collapse-group--question .c-collapse-heading__decor:nth-child(3) {
    width: 20px;
    height: 20px;
    margin-left: 8px
  }
}
.c-collapse-group--question .c-collapse-heading__decor.c-icon--plus,
.c-collapse-group--question .c-collapse-heading__decor.c-icon--minus {
  background-color: #db7499
}
.c-collapse-group--question .c-collapse-content {
  display: flex
}
@media print,
screen and (min-width: 768px) {
  .c-collapse-group--question .c-collapse-content {
    font-size: 1rem
  }
}
@media screen and (max-width: 767.98px) {
  .c-collapse-group--question .c-collapse-content {
    font-size: 1.125rem
  }
}
.c-collapse-group--question .c-collapse-content[aria-hidden=true] {
  display: none
}
.c-collapse-group--question .c-collapse-content[aria-hidden=false] {
  display: flex !important
}
.c-collapse-group--question .c-collapse-content__decor {
  flex-shrink: 0;
  margin-right: 8px;
  background-color: #000
}
@media print,
screen and (min-width: 768px) {
  .c-collapse-group--question .c-collapse-content__decor {
    width: 20px;
    height: 29px
  }
}
@media screen and (max-width: 767.98px) {
  .c-collapse-group--question .c-collapse-content__decor {
    width: 20px;
    height: 26px
  }
}
.c-collapse-group--question .c-collapse-content>div>p {
  padding-bottom: 24px
}
@media screen and (max-width: 767.98px) {
  .c-scroll-hint {
    overflow-x: auto;
    position: relative
  }
  .c-scroll-hint::before {
    content: "";
    position: absolute;
    background: url("/assets/images/icon/scroll-hint.svg") no-repeat;
    width: 120px;
    height: 120px;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    z-index: 1
  }
}
.c-scroll-hint.js-scroll-hint--hide::before {
  display: none
}
.c-search-result {
  width: 100%
}
@media print,
screen and (min-width: 768px) {
  .c-search-result__title {
    margin: 48px
  }
}
@media screen and (max-width: 767.98px) {
  .c-search-result__title {
    margin: 32px
  }
}
.c-search-result__input-container {
  margin: 0 auto
}
@media print,
screen and (min-width: 768px) {
  .c-search-result__input-container {
    width: 453px;
    margin-bottom: 32px
  }
}
@media screen and (max-width: 767.98px) {
  .c-search-result__input-container {
    width: 100%;
    margin-bottom: 32px
  }
}
@media print,
screen and (min-width: 768px) {
  .c-search-result__info-text {
    margin-bottom: 24px
  }
}
@media screen and (max-width: 767.98px) {
  .c-search-result__info-text {
    margin-bottom: 32px
  }
}
@media print,
screen and (min-width: 768px) {
  .c-search-result__table {
    margin-bottom: 48px
  }
}
@media screen and (max-width: 767.98px) {
  .c-search-result__table {
    margin-bottom: 32px
  }
}
@media screen and (max-width: 767.98px) {
  .c-search-result .c-table__body {
    width: 100%;
    display: flex;
    flex-wrap: wrap
  }
}
@media screen and (max-width: 767.98px) {
  .c-search-result .c-table__body .c-table__item {
    width: 100%;
    border-top: 1px solid #ccc
  }
}
@media screen and (max-width: 767.98px) {
  .c-search-result .c-table__body .c-table__item+.c-table__item {
    margin-top: 48px
  }
}
@media print,
screen and (min-width: 768px) {
  .c-service-area {
    display: grid;
    column-gap: 30%;
    grid-template-columns: 35% 35%;
    grid-template-areas: "heading heading""koshinetsu hokkaido""hokuriku hokuriku""chugoku tohoku""shikoku kanto""tokai tokai""kyushu kinki";
    align-items: start;
    background: url("/service/assets/images/shop/img_map.png") no-repeat;
    background-position: 50% 50%;
    transition: background-position-x .3s ease-out
  }
}
@media(max-width: 980px) {
  .c-service-area {
    background-position-x: 30%
  }
}
.c-service-area__heading {
  font-family: "Noto Serif JP", serif;
  line-height: 1.75;
  text-align: center;
  letter-spacing: .04em
}
@media screen and (max-width: 767.98px) {
  .c-service-area__heading {
    font-size: 1.5rem;
    margin-bottom: 32px
  }
}
@media print,
screen and (min-width: 768px) {
  .c-service-area__heading {
    grid-area: heading;
    font-size: 2rem;
    margin-bottom: 48px
  }
}
.c-service-area__item {
  margin-bottom: 16px
}
@media screen and (max-width: 767.98px) {
  .c-service-area__item:last-child {
    margin-bottom: 0
  }
}
@media print,
screen and (min-width: 768px) {
  .c-service-area__item--hokkaido {
    grid-area: hokkaido
  }
  .c-service-area__item--tohoku {
    grid-area: tohoku
  }
  .c-service-area__item--kanto {
    grid-area: kanto
  }
  .c-service-area__item--koshinetsu {
    grid-area: koshinetsu
  }
  .c-service-area__item--hokuriku {
    grid-area: hokuriku
  }
  .c-service-area__item--tokai {
    grid-area: tokai
  }
  .c-service-area__item--kinki {
    grid-area: kinki
  }
  .c-service-area__item--chugoku {
    grid-area: chugoku
  }
  .c-service-area__item--shikoku {
    grid-area: shikoku
  }
  .c-service-area__item--kyushu {
    grid-area: kyushu
  }
  .c-service-area__item--tokai {
    width: 35%;
    justify-self: end
  }
  .c-service-area__item--hokuriku {
    width: 35%
  }
  .c-service-area__item--kinki {
    margin-bottom: 0
  }
  .c-service-area__item--kyushu {
    margin-top: -35px;
    margin-bottom: 0
  }
}
.c-site-links {
  list-style: none;
  font-size: 1rem;
  line-height: 1.5;
  letter-spacing: .04em
}
.c-site-links__item {
  display: flex;
  align-items: baseline
}
.c-site-links__item::before {
  content: "-";
  font-size: 1rem;
  padding-right: 5px
}
.c-site-links__item+.c-site-links__item {
  margin-top: 16px
}
.c-site-links__link {
  display: block;
  transition: opacity .3s
}
@media(hover: hover) {
  .c-site-links__link:not(.is-disabled-hover):hover {
    opacity: .8
  }
}
.c-site-links--dark {
  color: #fff
}
.c-site-nav {
  list-style: none
}
.c-site-nav__item+.c-site-nav__item {
  margin-top: 16px
}
.c-site-nav__large-category {
  --icon-color: #000000;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  background-color: #f4f4f4;
  padding: 12px 17px 12px 20px;
  transition: opacity .3s
}
@media(hover: hover) {
  .c-site-nav__large-category:not(.is-disabled-hover):hover {
    opacity: .8
  }
}
.c-site-nav__large-category::after {
  content: "";
  display: inline-flex;
  width: 15px;
  height: 15px;
  background-color: var(--icon-color);
  -webkit-mask-image: url("/assets/images/icon/right-arrow_black.svg");
  mask-image: url("/assets/images/icon/right-arrow_black.svg");
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-position: center;
  mask-position: center;
  -webkit-mask-size: contain;
  mask-size: contain
}
.c-site-nav__small-category {
  padding: 16px 20px 0
}
.c-site-nav--dark {
  color: #fff
}
.c-site-nav--dark .c-site-nav__large-category {
  --icon-color: #ffffff;
  background-color: #6a6a6a
}
.c-shop-type-list {
  width: 100%;
  display: flex
}
@media print,
screen and (min-width: 768px) {
  .c-shop-type-list {
    flex-wrap: wrap;
    column-gap: 48px;
    row-gap: 16px
  }
}
@media screen and (max-width: 767.98px) {
  .c-shop-type-list {
    flex-direction: column;
    row-gap: 24px
  }
}
.c-shop-type-list__item {
  display: flex;
  align-items: center
}
.c-shop-type-list__caption {
  margin-left: 16px
}
@media print,
screen and (min-width: 768px) {
  .c-shop-type-list__caption {
    font-size: 1rem;
    line-height: 1.5
  }
}
@media screen and (max-width: 767.98px) {
  .c-shop-type-list__caption {
    font-size: .9375rem;
    line-height: 1.4
  }
}
.c-shop-type-list--icon-only {
  column-gap: 16px;
  flex-direction: row
}
.c-table {
  font-family: "Zen Kaku Gothic New", sans-serif;
  letter-spacing: .02em;
  line-height: 1.75;
  width: 100%
}
@media print,
screen and (min-width: 768px) {
  .c-table {
    font-size: 1.125rem
  }
}
@media print,
screen and (min-width: 768px) {
  .c-table {
    font-size: 1rem
  }
}
.c-table__body {
  -webkit-text-size-adjust: 100%
}
.c-table__item {
  border: 1px solid #ccc
}
.c-table__item+.c-table__item {
  border-top: none
}
.c-table-item__data {
  padding: 16px;
  border-left: 1px solid #ccc;
  font-size: 1.125rem
}
@media screen and (max-width: 767.98px) {
  .c-table-item__data {
    vertical-align: middle;
    font-size: 1rem
  }
}
.c-table-item__title {
  padding: 16px;
  background-color: #f4f4f4;
  border-left: 1px solid #ccc;
  font-weight: bold;
  font-size: 1.125rem
}
@media screen and (max-width: 767.98px) {
  .c-table-item__title {
    vertical-align: middle;
    font-size: 1rem
  }
}
.c-table-item__heading {
  background-color: #f4f4f4;
  padding: 16px;
  font-weight: bold;
  font-size: 1.125rem
}
@media screen and (max-width: 767.98px) {
  .c-table-item__heading {
    vertical-align: middle;
    font-size: 1rem
  }
}
.c-table-item__heading>p+p {
  margin-top: 24px
}
@media screen and (max-width: 767.98px) {
  .c-table--stack {
    width: 100%
  }
}
@media screen and (max-width: 767.98px) {
  .c-table--stack .c-table__header {
    display: none
  }
}
@media screen and (max-width: 767.98px) {
  .c-table--stack .c-table-item__heading {
    display: block;
    width: 100%
  }
}
@media screen and (max-width: 767.98px) {
  .c-table--stack .c-table-item__data {
    display: block;
    width: 100%;
    border-top: 1px solid #ccc;
    border-left: none
  }
}
.c-table--scroll {
  position: relative;
  width: auto
}
@media screen and (max-width: 767.98px) {
  .c-table--scroll .c-table__header {
    width: 100%
  }
}
@media screen and (max-width: 767.98px) {
  .c-table--scroll .c-table-item__data {
    width: 100%
  }
}
.c-table--result .c-table-item__heading {
  vertical-align: middle
}
.c-table--result .c-table-item__data {
  vertical-align: middle
}
@media print,
screen and (min-width: 768px) {
  .c-table-item-title--shop {
    width: 25%
  }
}
@media print,
screen and (min-width: 768px) {
  .c-table-item-title--area {
    width: 43%
  }
}
@media print,
screen and (min-width: 768px) {
  .c-table-item-title--icon {
    width: 32%
  }
}
@media print,
screen and (min-width: 768px) {
  .c-table-item-heading--area {
    width: 26%
  }
}
.c-text {
  line-height: 1.75;
  letter-spacing: .02em;
  color: #000;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 1.125rem
}
.c-text--primary {
  color: #b52b5d
}
.c-text--secondary {
  color: #0054ac
}
.c-text--caution {
  color: #ce0000
}
.c-text--error::before {
  content: "＊"
}
.c-text--line-height-ss {
  line-height: 1.25
}
.c-text--line-height-s {
  line-height: 1.5
}
.c-text--line-height-l {
  line-height: 2
}
.c-text--serif {
  font-family: "Noto Serif JP", serif;
  letter-spacing: .04em
}
.c-text--maru {
  font-family: "Zen Maru Gothic", sans-serif;
  letter-spacing: .04em
}
.c-text--lora {
  font-family: "Lora", serif;
  font-weight: 400;
  letter-spacing: .06em
}
@media print,
screen and (min-width: 768px) {
  .c-text--xs {
    font-size: .875rem
  }
}
@media screen and (max-width: 767.98px) {
  .c-text--xs {
    font-size: .75rem
  }
}
@media print,
screen and (min-width: 768px) {
  .c-text--s {
    font-size: 1rem
  }
}
@media screen and (max-width: 767.98px) {
  .c-text--s {
    font-size: .9375rem
  }
}
@media print,
screen and (min-width: 768px) {
  .c-text--s-small {
    font-size: 1rem
  }
}
@media screen and (max-width: 767.98px) {
  .c-text--s-small {
    font-size: .875rem
  }
}
@media print,
screen and (min-width: 768px) {
  .c-text--m {
    font-size: 1.125rem
  }
}
@media screen and (max-width: 767.98px) {
  .c-text--m {
    font-size: 1rem
  }
}
@media print,
screen and (min-width: 768px) {
  .c-text--l {
    font-size: 1.25rem
  }
}
@media screen and (max-width: 767.98px) {
  .c-text--l {
    font-size: 1.125rem
  }
}
@media print,
screen and (min-width: 768px) {
  .c-text--l-small {
    font-size: 1.25rem
  }
}
@media screen and (max-width: 767.98px) {
  .c-text--l-small {
    font-size: 1.125rem
  }
}
@media print,
screen and (min-width: 768px) {
  .c-text--xl {
    font-size: 1.625rem
  }
}
@media screen and (max-width: 767.98px) {
  .c-text--xl {
    font-size: 1.125rem
  }
}
@media print,
screen and (min-width: 768px) {
  .c-text--xxl {
    font-size: 2.25rem
  }
}
@media screen and (max-width: 767.98px) {
  .c-text--xxl {
    font-size: 1.3125rem
  }
}
@media print,
screen and (min-width: 768px) {
  .c-text--max {
    font-size: 3.75rem
  }
}
@media screen and (max-width: 767.98px) {
  .c-text--max {
    font-size: 2.375rem
  }
}
.c-text--semi-bold {
  font-weight: 700
}
@media print,
screen and (min-width: 768px) {
  .c-user-feedback {
    display: grid;
    grid-template-columns: 96px 1fr;
    gap: 24px
  }
}
@media screen and (max-width: 767.98px) {
  .c-user-feedback {
    font-size: .9375rem
  }
}
.c-user-feedback__avatar {
  text-align: center
}
@media screen and (max-width: 767.98px) {
  .c-user-feedback__icon {
    display: inline-block;
    width: 96px;
    height: 96px
  }
}
@media print,
screen and (min-width: 768px) {
  .c-user-feedback__name {
    margin-top: 16px
  }
}
@media screen and (max-width: 767.98px) {
  .c-user-feedback__name {
    margin-top: 8px
  }
}
@media print,
screen and (min-width: 768px) {
  .c-user-feedback__info {
    padding: 24px
  }
}
@media screen and (max-width: 767.98px) {
  .c-user-feedback__info {
    margin-top: -100px;
    padding: 116px 24px 52px
  }
}
.c-user-feedback-info {
  display: grid;
  background-color: #f4f4f4
}
@media print,
screen and (min-width: 768px) {
  .c-user-feedback-info {
    grid-template-columns: repeat(2, 1fr);
    gap: 8px
  }
  .c-user-feedback-info__item:nth-child(1) {
    order: 1
  }
  .c-user-feedback-info__item:nth-child(2) {
    order: 3
  }
  .c-user-feedback-info__item:nth-child(3) {
    order: 5
  }
  .c-user-feedback-info__item:nth-child(4) {
    order: 2
  }
  .c-user-feedback-info__item:nth-child(5) {
    order: 4
  }
  .c-user-feedback-info__item:nth-child(6) {
    order: 6
  }
}
@media screen and (max-width: 767.98px) {
  .c-user-feedback-info {
    gap: 16px
  }
}
.c-user-feedback-info__item {
  display: grid
}
@media print,
screen and (min-width: 768px) {
  .c-user-feedback-info__item {
    grid-template-columns: 136px 1fr;
    gap: 16px
  }
}
@media screen and (max-width: 767.98px) {
  .c-user-feedback-info__item {
    grid-template-columns: 96px 1fr;
    gap: 12px
  }
}
.c-user-feedback-info__term {
  display: flex;
  align-items: center;
  justify-content: center;
  color: #0054ac;
  background-color: #fff;
  text-align: center
}
@media print,
screen and (min-width: 768px) {
  .c-user-feedback-info__term {
    min-height: 64px;
    padding: 8px 0;
    line-height: 1.75
  }
}
@media screen and (max-width: 767.98px) {
  .c-user-feedback-info__term {
    padding: 8px 2px
  }
}
.c-user-feedback-info__description {
  display: flex;
  align-items: center
}
@media screen and (max-width: 767.98px) {
  .c-user-feedback-info__description {
    display: flex;
    align-items: center
  }
}
.c-user-voice-list {
  display: grid
}
@media print,
screen and (min-width: 768px) {
  .c-user-voice-list {
    grid-template-columns: repeat(3, 1fr);
    column-gap: 24px;
    row-gap: 40px
  }
}
@media screen and (max-width: 767.98px) {
  .c-user-voice-list {
    position: relative;
    grid-template-columns: repeat(var(--sp-column), 1fr);
    gap: 12px;
    scroll-snap-type: x mandatory
  }
}
@media screen and (min-width: 768px)and (max-width: 1024px) {
  .c-user-voice-list {
    grid-template-columns: repeat(2, 1fr)
  }
}
.c-user-voice-list__item {
  display: grid;
  grid-template-rows: subgrid;
  grid-row: span 2
}
@media print,
screen and (min-width: 768px) {
  .c-user-voice-list__item {
    gap: 24px
  }
}
@media screen and (max-width: 767.98px) {
  .c-user-voice-list__item {
    row-gap: 24px;
    column-gap: 20px;
    min-width: 288px;
    scroll-snap-align: start
  }
}
.c-user-voice-list__link {
  display: contents
}
.c-voice-manager-header {
  padding-bottom: 16px;
  letter-spacing: .02em
}
@media print,
screen and (min-width: 768px) {
  .c-voice-manager-header {
    font-size: 1rem
  }
}
@media screen and (max-width: 767.98px) {
  .c-voice-manager-header {
    font-size: .9375rem
  }
}
.c-voice-manager-header__top {
  display: flex;
  align-items: center
}
.c-voice-manager-header__icon {
  height: auto
}
@media print,
screen and (min-width: 768px) {
  .c-voice-manager-header__icon {
    width: 72px
  }
}
@media screen and (max-width: 767.98px) {
  .c-voice-manager-header__icon {
    width: 50px
  }
}
@media print,
screen and (min-width: 768px) {
  .c-voice-manager-header__icon+.c-voice-manager-header__icon {
    margin-left: 4px
  }
}
@media screen and (max-width: 767.98px) {
  .c-voice-manager-header__icon+.c-voice-manager-header__icon {
    margin-left: 8px
  }
}
.c-voice-manager-header__avatar {
  margin-left: 16px
}
.c-voice-manager-header__facility {
  margin-top: 16px;
  color: #9a4664
}
.c-voice-manager-header__job {
  color: #9a4664
}
.c-voice-family-header {
  padding-bottom: 16px;
  letter-spacing: .02em
}
@media print,
screen and (min-width: 768px) {
  .c-voice-family-header {
    font-size: 1rem
  }
}
@media screen and (max-width: 767.98px) {
  .c-voice-family-header {
    font-size: .9375rem
  }
}
.c-voice-family-header__top {
  display: flex;
  flex-wrap: wrap;
  align-items: center
}
.c-voice-family-header__icon {
  height: auto;
  flex-shrink: 0
}
@media print,
screen and (min-width: 768px) {
  .c-voice-family-header__icon {
    width: 72px
  }
}
@media screen and (max-width: 767.98px) {
  .c-voice-family-header__icon {
    width: 50px
  }
}
@media print,
screen and (min-width: 768px) {
  .c-voice-family-header__icon+.c-voice-family-header__icon {
    margin-left: 4px
  }
}
@media screen and (max-width: 767.98px) {
  .c-voice-family-header__icon+.c-voice-family-header__icon {
    margin-left: 8px
  }
}
@media print,
screen and (min-width: 768px) {
  .c-voice-family-header__avatar {
    margin-left: 8px
  }
}
@media screen and (max-width: 767.98px) {
  .c-voice-family-header__avatar {
    margin-left: 16px
  }
}
.c-voice-family-header__degree {
  display: flex;
  gap: 12px;
  margin-top: 16px
}
.c-voice-family-header__degree-title {
  min-width: 72px;
  color: #0054ac
}
.c-voice-family-header__status {
  display: grid;
  grid-template-columns: 72px 1fr;
  gap: 12px;
  margin-top: 8px
}
.c-voice-family-header__status-title {
  color: #0054ac
}
.c-voice-manager-detail {
  letter-spacing: .02em
}
@media print,
screen and (min-width: 768px) {
  .c-voice-manager-detail {
    font-size: 1rem
  }
}
@media screen and (max-width: 767.98px) {
  .c-voice-manager-detail {
    font-size: .9375rem
  }
}
.c-voice-manager-detail__top {
  display: flex;
  align-items: center
}
@media screen and (max-width: 767.98px) {
  .c-voice-manager-detail__top {
    flex-direction: column
  }
}
@media screen and (max-width: 767.98px) {
  .c-voice-manager-detail__personally {
    display: flex;
    flex-direction: column;
    align-items: center
  }
}
.c-voice-manager-detail__facility {
  color: #b52b5d
}
@media print,
screen and (min-width: 768px) {
  .c-voice-manager-detail__facility {
    font-size: 1.25rem;
    margin-left: 24px
  }
}
@media screen and (max-width: 767.98px) {
  .c-voice-manager-detail__facility {
    font-size: 1rem;
    margin-top: 16px
  }
}
.c-voice-manager-detail-personally__icon {
  height: auto
}
@media print,
screen and (min-width: 768px) {
  .c-voice-manager-detail-personally__icon {
    width: 96px;
    flex-shrink: 0
  }
}
@media screen and (max-width: 767.98px) {
  .c-voice-manager-detail-personally__icon {
    width: 76px
  }
}
@media print,
screen and (min-width: 768px) {
  .c-voice-manager-detail-personally__icon+.c-voice-manager-detail-personally__icon {
    margin-left: 4px
  }
}
@media screen and (max-width: 767.98px) {
  .c-voice-manager-detail-personally__icon+.c-voice-manager-detail-personally__icon {
    margin-left: 8px
  }
}
.c-voice-manager-detail-personally__avatar {
  margin-top: 16px
}
@media print,
screen and (min-width: 768px) {
  .c-voice-detail .c-text--l {
    font-size: 1.25rem !important
  }
}
.c-voice-detail__button {
  margin-inline: auto
}
@media print,
screen and (min-width: 768px) {
  .c-voice-detail__button {
    max-width: 400px;
    width: 100%
  }
}
@media screen and (max-width: 767.98px) {
  .c-voice-detail__button {
    width: calc(100% - 40px)
  }
}
.c-work-style {
  background-color: #fdf0f4;
  border-radius: 10px
}
@media screen and (max-width: 767.98px) {
  .c-work-style {
    padding: 24px
  }
}
@media print,
screen and (min-width: 768px) {
  .c-work-style {
    padding: 40px 40px 0 24px;
    display: grid;
    column-gap: 20px;
    grid-template-columns: auto 1fr;
    grid-template-areas: "img list""img note"
  }
}
.c-work-style__img {
  margin-inline: auto;
  grid-area: img;
  align-self: self-end
}
.c-work-style__list {
  grid-area: list
}
@media print,
screen and (min-width: 768px) {
  .c-work-style__list {
    transform: translateY(8px)
  }
}
.c-work-style__note {
  grid-area: note
}
@media screen and (max-width: 767.98px) {
  .c-work-style__note {
    margin-top: 8px;
    text-align: center;
    font-size: .75rem
  }
}
@media print,
screen and (min-width: 768px) {
  .c-work-style__note {
    font-size: .875rem;
    justify-self: self-end;
    padding-block: 16px 12px
  }
}
.c-work-style-list {
  display: grid
}
@media screen and (max-width: 767.98px) {
  .c-work-style-list {
    row-gap: 8px
  }
}
@media print,
screen and (min-width: 768px) {
  .c-work-style-list {
    gap: 16px;
    grid-template-rows: 1fr 1fr;
    grid-auto-flow: column
  }
}
.c-work-style-list-item {
  letter-spacing: .02em;
  text-align: center;
  background-color: #fff;
  border-radius: 10px
}
@media screen and (max-width: 767.98px) {
  .c-work-style-list-item {
    padding: 16px 24px
  }
}
@media print,
screen and (min-width: 768px) {
  .c-work-style-list-item {
    padding: 16px
  }
}
.c-work-style-list-item__heading {
  display: block;
  color: #b52b5d;
  font-weight: bold
}
@media screen and (max-width: 767.98px) {
  .c-work-style-list-item__heading {
    font-size: 1.125rem
  }
}
@media print,
screen and (min-width: 768px) {
  .c-work-style-list-item__heading {
    font-size: 1.25rem
  }
}
@media screen and (max-width: 767.98px) {
  .c-work-style-list-item__text {
    font-size: .9375rem
  }
}
@media print,
screen and (min-width: 768px) {
  .c-work-style-list-item__text {
    font-size: 1rem
  }
}
.c-work-place {
  display: flex;
  align-items: flex-start
}
@media print,
screen and (min-width: 768px) {
  .c-work-place {
    gap: 52px
  }
}
@media screen and (max-width: 767.98px) {
  .c-work-place {
    gap: 23px
  }
}
.c-work-place__areas {
  display: grid;
  width: 50%;
  background-color: #e5f0fc;
  border-radius: 10px;
  position: relative
}
@media print,
screen and (min-width: 768px) {
  .c-work-place__areas {
    grid-template-columns: repeat(2, 1fr);
    gap: 20px;
    padding: 20px
  }
}
@media screen and (max-width: 767.98px) {
  .c-work-place__areas {
    grid-template-columns: repeat(1, 1fr);
    gap: 24px;
    padding: 16px
  }
}
.c-work-place__areas::after {
  content: "";
  display: block;
  width: 32px;
  height: 24px;
  clip-path: polygon(50% 0, 100% 100%, 0 100%);
  background-color: #e5f0fc;
  position: absolute;
  top: 50%;
  right: -24px;
  transform: translateY(-50%) rotate(90deg)
}
.c-work-place__prefectures {
  width: 50%
}
@media print,
screen and (min-width: 768px) {
  .c-work-place__prefectures {
    padding: 20px
  }
}
@media screen and (max-width: 767.98px) {
  .c-work-place__prefectures {
    padding: 16px
  }
}
.c-work-place__prefecture {
  display: none
}
.c-work-place__prefecture.is-active {
  display: grid
}
@media print,
screen and (min-width: 768px) {
  .c-work-place__prefecture.is-active {
    grid-template-columns: repeat(2, 1fr);
    gap: 20px
  }
}
@media screen and (max-width: 767.98px) {
  .c-work-place__prefecture.is-active {
    grid-template-columns: repeat(1, 1fr);
    gap: 24px
  }
}
@media screen and (max-width: 767.98px) {
  .u-pc-only {
    display: none
  }
}
@media print,
screen and (min-width: 768px) {
  .u-sp-only {
    display: none
  }
}
.u-tablet-only {
  display: none
}
@media screen and (min-width: 768px)and (max-width: 1024px) {
  .u-tablet-only {
    display: block
  }
}
.has-overlay {
  overflow-y: hidden
}
.u-mt-8 {
  margin-top: 8px
}
.u-mt-16 {
  margin-top: 16px
}
.u-mt-24 {
  margin-top: 24px
}
.u-mt-32 {
  margin-top: 32px
}
.u-mt-48 {
  margin-top: 48px
}
@media print,
screen and (min-width: 768px) {
  .u-mt-24-16 {
    margin-top: 24px
  }
}
@media screen and (max-width: 767.98px) {
  .u-mt-24-16 {
    margin-top: 16px
  }
}
@media print,
screen and (min-width: 768px) {
  .u-mt-32-24 {
    margin-top: 32px
  }
}
@media screen and (max-width: 767.98px) {
  .u-mt-32-24 {
    margin-top: 24px
  }
}
@media print,
screen and (min-width: 768px) {
  .u-mt-40-24 {
    margin-top: 40px
  }
}
@media screen and (max-width: 767.98px) {
  .u-mt-40-24 {
    margin-top: 24px
  }
}
@media print,
screen and (min-width: 768px) {
  .u-mt-48-32 {
    margin-top: 48px
  }
}
@media screen and (max-width: 767.98px) {
  .u-mt-48-32 {
    margin-top: 32px
  }
}
@media print,
screen and (min-width: 768px) {
  .u-mt-48-40 {
    margin-top: 48px
  }
}
@media screen and (max-width: 767.98px) {
  .u-mt-48-40 {
    margin-top: 40px
  }
}
@media print,
screen and (min-width: 768px) {
  .u-mt-64-40 {
    margin-top: 64px
  }
}
@media screen and (max-width: 767.98px) {
  .u-mt-64-40 {
    margin-top: 40px
  }
}
@media print,
screen and (min-width: 768px) {
  .u-mt-64-48 {
    margin-top: 64px
  }
}
@media screen and (max-width: 767.98px) {
  .u-mt-64-48 {
    margin-top: 48px
  }
}
@media print,
screen and (min-width: 768px) {
  .u-mt-80-32 {
    margin-top: 80px
  }
}
@media screen and (max-width: 767.98px) {
  .u-mt-80-32 {
    margin-top: 32px
  }
}
@media print,
screen and (min-width: 768px) {
  .u-mt-80-48 {
    margin-top: 80px
  }
}
@media screen and (max-width: 767.98px) {
  .u-mt-80-48 {
    margin-top: 48px
  }
}
.u-mw-400 {
  max-width: 400px;
  margin-inline: auto
}
.u-mw-456 {
  max-width: 456px;
  margin-inline: auto
}
.u-mw-1080 {
  max-width: 1080px;
  margin-inline: auto
}
.u-text-align-center {
  text-align: center !important
}
.u-text-align-left {
  text-align: left !important
}
.u-text-align-right {
  text-align: right !important
}
.u-font-weight-normal {
  font-weight: 500 !important
}
.u-font-weight-bold {
  font-weight: bold !important
}