@charset "UTF-8";
/* リキッドレイアウト対応 */
body {
  font-family: "Noto Sans JP", sans-serif;
  color: #111;
}

.pc {
  display: none;
}
@media (min-width: 768px) {
  .pc {
    display: block;
  }
}

@media (min-width: 768px) {
  .sp {
    display: none;
  }
}

@media (max-width: 767px) {
  html {
    font-size: 4.2666666667vw;
  }
}
@media (min-width: 768px) {
  html {
    font-size: 1.3333333333vw;
  }
}
@media (min-width: 1200px) {
  html {
    font-size: 16px;
  }
}

/* pcの電話番号発信対応 */
@media (min-width: 768px) {
  a[href^="tel:"] {
    pointer-events: none;
  }
}

/* ホバー */
a {
  text-decoration: none;
  color: inherit;
  cursor: pointer;
}

th {
  text-align: left;
}

*,
*::before,
*::after {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

/* Remove default padding */
ul,
ol {
  padding: 0;
}

/* Remove default margin */
body,
h1,
h2,
h3,
h4,
p,
ul,
ol,
figure,
blockquote,
dl,
dd {
  margin: 0;
}

/* Set core root defaults */
html {
  scroll-behavior: smooth;
}

/* Set core body defaults */
body {
  min-height: 100vh;
  text-rendering: optimizeSpeed;
  line-height: 1.5;
}

/* Remove list styles on ul, ol elements with a class attribute */
ul,
ol {
  list-style: none;
}

/* A elements that don't have a class get default styles */
a:not([class]) {
  -webkit-text-decoration-skip: ink;
          text-decoration-skip-ink: auto;
}

/* Make images easier to work with */
img {
  max-width: 100%;
  display: block;
  width: 100%;
}

/* Natural flow and rhythm in articles by default */
article > * + * {
  margin-top: 1em;
}

/* Inherit fonts for inputs and buttons */
input,
button,
textarea,
select {
  font: inherit;
}

/* フォームリセット */
input,
button,
select,
textarea {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  background: transparent;
  border: none;
  border-radius: 0;
  font: inherit;
  outline: none;
}

textarea {
  resize: vertical;
}

input[type=checkbox],
input[type=radio] {
  display: none;
}

input[type=submit],
input[type=button],
label,
button,
select {
  cursor: pointer;
}

select::-ms-expand {
  display: none;
}

.about-greeting {
  background: #FFF;
}

.about-greeting__inner {
  padding-block: 5rem;
  padding-inline: 0.9375rem;
}
@media screen and (min-width: 376px) {
  .about-greeting__inner {
    padding-block: 80px;
    padding-inline: 15px;
  }
}
@media (min-width: 768px) {
  .about-greeting__inner {
    padding-block: 6.25rem;
    padding-inline: 7.5rem;
  }
}

.about-greeting__content {
  display: -ms-grid;
  display: grid;
      grid-template-areas: "title" "image" "subtitle" "text" "name";
  gap: 1.5rem;
  width: 100%;
  max-width: 100%;
  margin-inline: auto;
}
@media screen and (min-width: 376px) {
  .about-greeting__content {
    gap: 24px;
    width: clamp(375px, 31.25rem, 500px);
  }
}
@media (min-width: 768px) {
  .about-greeting__content {
    width: 75rem;
        grid-template-areas: "body image";
    -ms-grid-columns: 1fr 6.25rem 27.625rem;
    grid-template-columns: 1fr 27.625rem;
    gap: 6.25rem;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
  }
}

.about-greeting__body {
  grid-area: body;
  display: contents;
}
@media (min-width: 768px) {
  .about-greeting__body {
    -webkit-box-flex: 1;
    -webkit-flex: 1;
        -ms-flex: 1;
            flex: 1;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: 1.5rem;
  }
}

.about-greeting__title {
  -ms-grid-row: 1;
  -ms-grid-column: 1;
  width: 10.5rem;
  max-width: 100%;
  margin-inline: auto;
  grid-area: title;
}

.page-steps__head > .about-greeting__title {
  -ms-grid-row: 1;
  -ms-grid-column: 1;
}
@media screen and (min-width: 376px) {
  .about-greeting__title {
    width: 168px;
  }
}
@media (min-width: 768px) {
  .about-greeting__title {
    width: 290px;
    height: 40px;
    margin-inline: 0;
  }
}
.about-greeting__title img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.about-greeting__sub-title {
  -ms-grid-row: 5;
  -ms-grid-column: 1;
  font-size: 1.25rem;
  font-weight: 900;
  line-height: 1.6;
  color: #111;
  margin-top: 0.5rem;
  text-align: center;
  grid-area: subtitle;
}
@media screen and (min-width: 376px) {
  .about-greeting__sub-title {
    font-size: 20px;
    margin-top: 8px;
  }
}
@media (min-width: 768px) {
  .about-greeting__sub-title {
    font-size: clamp(20px, 1.5rem, 24px);
    margin-top: 24px;
    text-align: left;
  }
}

.about-greeting__text {
  -ms-grid-row: 7;
  -ms-grid-column: 1;
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.6;
  color: #111;
  grid-area: text;
}
@media screen and (min-width: 376px) {
  .about-greeting__text {
    font-size: 14px;
  }
}
@media (min-width: 768px) {
  .about-greeting__text {
    font-size: clamp(14px, 1rem, 16px);
  }
}

.about-greeting__name {
  -ms-grid-row: 9;
  -ms-grid-column: 1;
  font-size: 1rem;
  font-weight: 500;
  line-height: 1.6;
  color: #111;
  grid-area: name;
}
@media screen and (min-width: 376px) {
  .about-greeting__name {
    font-size: 16px;
  }
}
@media (min-width: 768px) {
  .about-greeting__name {
    font-size: clamp(16px, 1.125rem, 18px);
  }
}

.about-greeting__img {
  -ms-grid-row: 3;
  -ms-grid-column: 1;
  width: 17.5rem;
  height: 20.8125rem;
  max-width: 100%;
  margin-inline: auto;
  margin-top: 0.5rem;
  grid-area: image;
}
@media screen and (min-width: 376px) {
  .about-greeting__img {
    width: 280px;
    height: 333px;
    margin-top: 8px;
  }
}
@media (min-width: 768px) {
  .about-greeting__img {
    width: 27.625rem;
    height: 32.9375rem;
    margin-top: initial;
  }
}
.about-greeting__img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.about-info {
  padding-block: 5rem;
  background: url(../img/webp/about-info-bg-sp.webp) no-repeat center center/cover;
}
@media screen and (min-width: 376px) {
  .about-info {
    padding-block: 80px;
  }
}
@media (min-width: 768px) {
  .about-info {
    padding-block: 6.25rem;
    background: url(../img/webp/about-info-bg-pc.webp) no-repeat center center/cover;
  }
}

.about-info__inner {
  padding-inline: 0.9375rem;
}
@media screen and (min-width: 376px) {
  .about-info__inner {
    padding-inline: 15px;
  }
}
@media (min-width: 768px) {
  .about-info__inner {
    padding-inline: 1.5625rem;
  }
}

.about-info__title {
  width: 6.5625rem;
  max-width: 100%;
  height: 100%;
  margin-inline: auto;
}
@media screen and (min-width: 376px) {
  .about-info__title {
    width: 105px;
  }
}
@media (min-width: 768px) {
  .about-info__title {
    width: 178px;
  }
}
.about-info__title img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.about-info__items {
  width: 100%;
  max-width: 100%;
  margin-inline: auto;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 0.5rem;
  margin-top: 2rem;
}
@media screen and (min-width: 376px) {
  .about-info__items {
    width: clamp(375px, 31.25rem, 500px);
    gap: 8px;
    margin-top: 32px;
  }
}
@media (min-width: 768px) {
  .about-info__items {
    width: 50rem;
    gap: 0.5rem;
    margin-top: 4rem;
  }
}

.about-info__item {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 6.125rem 15.4375rem;
  grid-template-columns: 6.125rem 15.4375rem;
  overflow: hidden;
}
@media screen and (min-width: 376px) {
  .about-info__item {
    -ms-grid-columns: clamp(98px, 6.125rem, 120px) 1fr;
    grid-template-columns: clamp(98px, 6.125rem, 120px) 1fr;
  }
}
@media (min-width: 768px) {
  .about-info__item {
    -ms-grid-columns: 11.25rem 38.75rem;
    grid-template-columns: 11.25rem 38.75rem;
  }
}
.about-info__item dt {
  border-radius: 0.375rem 0 0 0.375rem;
  background: #2698D5;
  color: #FFF;
  font-size: 0.875rem;
  font-weight: 500;
  line-height: 1.6;
  padding-block: 1rem;
  text-align: center;
  place-content: center;
}
@media screen and (min-width: 376px) {
  .about-info__item dt {
    font-size: 14px;
    padding-block: 16px;
    border-radius: 6px 0 0 6px;
  }
}
@media (min-width: 768px) {
  .about-info__item dt {
    font-size: 16px;
    padding-block: 1rem;
    border-radius: 0.375rem 0 0 0.375rem;
  }
}
.about-info__item dd {
  border-radius: 0 0.375rem 0.375rem 0;
  background: #FFF;
  color: #111;
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.6;
  padding-block: 1rem;
  padding-inline: 1.5rem;
}
@media screen and (min-width: 376px) {
  .about-info__item dd {
    border-radius: 0 6px 6px 0;
    font-size: 14px;
    padding-block: 16px;
    padding-inline: 24px;
  }
}
@media (min-width: 768px) {
  .about-info__item dd {
    border-radius: 0 0.375rem 0.375rem 0;
    font-size: 16px;
    padding-block: 1rem;
    padding-inline: 1.5rem;
  }
}

.anxiety {
  margin-top: 4rem;
}
@media screen and (min-width: 376px) {
  .anxiety {
    margin-top: 64px;
  }
}
@media (min-width: 768px) {
  .anxiety {
    margin-top: 5rem;
  }
}

.anxiety__content {
  width: 100%;
  max-width: 100%;
  margin-inline: auto;
}
@media screen and (min-width: 376px) {
  .anxiety__content {
    width: 500px;
  }
}
@media (min-width: 768px) {
  .anxiety__content {
    width: 90rem;
  }
}

.anxiety__title {
  position: relative;
  background: #595959;
  width: 100%;
  height: 7.25rem;
}
@media screen and (min-width: 376px) {
  .anxiety__title {
    height: 116px;
  }
}
@media (min-width: 768px) {
  .anxiety__title {
    height: 8.9375rem;
  }
}
.anxiety__title picture {
  position: absolute;
  top: 50%;
  left: 44%;
  translate: -50% -50%;
  width: 15.625rem;
  display: block;
  max-width: 100%;
  margin-inline: auto;
}
@media screen and (min-width: 376px) {
  .anxiety__title picture {
    width: 250px;
  }
}
@media (min-width: 768px) {
  .anxiety__title picture {
    width: 33.3125rem;
    left: 46%;
  }
}
.anxiety__title img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.anxiety__title::after {
  content: "";
  position: absolute;
  left: 50%;
  translate: -50% 0;
  background: #595959;
  -webkit-clip-path: polygon(50% 100%, 0 0, 100% 0);
  clip-path: polygon(50% 100%, 0 0, 100% 0);
  width: 2.4375rem;
  height: 1.3125rem;
  bottom: -1.125rem;
}
@media screen and (min-width: 376px) {
  .anxiety__title::after {
    width: 39px;
    height: 21px;
    bottom: -18px;
  }
}
@media (min-width: 768px) {
  .anxiety__title::after {
    width: 4.5625rem;
    height: 2.4375rem;
    bottom: -2.1875rem;
  }
}

.anxiety__body {
  background: url(../img/webp/anxiety-bg-sp.webp) no-repeat center center/cover;
  padding-block: 2.5rem 5.8125rem;
  padding-inline: 0.9375rem;
}
@media screen and (min-width: 376px) {
  .anxiety__body {
    padding-block: 40px 93px;
    padding-inline: 15px;
  }
}
@media (min-width: 768px) {
  .anxiety__body {
    padding-block: 5rem 5.625rem;
    background: url(../img/webp/anxiety-bg-pc.webp) no-repeat center center/cover;
  }
}

.anxiety__body-box-img {
  width: 18.125rem;
  height: 12.3125rem;
  max-width: 100%;
  margin-inline: auto;
}
@media screen and (min-width: 376px) {
  .anxiety__body-box-img {
    width: 290px;
    height: 197px;
  }
}
@media (min-width: 768px) {
  .anxiety__body-box-img {
    width: 26.875rem;
    height: 18.3125rem;
  }
}
.anxiety__body-box-img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.anxiety__body-box {
  width: 100%;
  max-width: 100%;
  margin-inline: auto;
}
@media screen and (min-width: 376px) {
  .anxiety__body-box {
    width: 100%;
    max-width: 100%;
    margin-inline: auto;
  }
}
@media (min-width: 768px) {
  .anxiety__body-box {
    width: 75rem;
  }
}

.anxiety__items {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 2.5rem;
  margin-top: -0.9375rem;
}
@media screen and (min-width: 376px) {
  .anxiety__items {
    gap: 40px;
    margin-top: -15px;
    width: 500px;
    max-width: 100%;
    margin-inline: auto;
  }
}
@media screen and (min-width: 951px) {
  .anxiety__items {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-direction: row;
        -ms-flex-direction: row;
            flex-direction: row;
    gap: 2rem;
    margin-top: -5.625rem;
    width: initial;
  }
}

.anxiety__item {
  position: relative;
  padding: 1rem;
  background: #FFF;
  border-radius: 1.25rem;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 0.5rem;
  height: -webkit-fit-content;
  height: -moz-fit-content;
  height: fit-content;
}
@media screen and (min-width: 376px) {
  .anxiety__item {
    padding: 16px;
    border-radius: 20px;
    gap: 8px;
  }
}
@media (min-width: 768px) {
  .anxiety__item {
    padding: 2rem 1.875rem;
    gap: 1rem;
  }
}
.anxiety__item::before {
  content: "";
  position: absolute;
  top: -1.375rem;
  left: 0.3125rem;
  width: 1.875rem;
  height: 2.625rem;
  background: url(../img/webp/anxiety-icon.webp) no-repeat center center/contain;
}
@media screen and (min-width: 376px) {
  .anxiety__item::before {
    width: 30px;
    height: 42px;
    top: -22px;
    left: 5px;
  }
}
@media (min-width: 768px) {
  .anxiety__item::before {
    width: 2.3125rem;
    height: 3.25rem;
    top: -1.75rem;
    left: 1.25rem;
  }
}
.anxiety__item:nth-child(odd) {
  margin-right: 2.8125rem;
}
@media screen and (min-width: 376px) {
  .anxiety__item:nth-child(odd) {
    margin-right: 45px;
  }
}
@media (min-width: 768px) {
  .anxiety__item:nth-child(odd) {
    margin-right: initial;
  }
}
.anxiety__item:nth-child(even) {
  margin-left: 2.8125rem;
}
@media screen and (min-width: 376px) {
  .anxiety__item:nth-child(even) {
    margin-left: 45px;
  }
}
@media screen and (min-width: 951px) {
  .anxiety__item:nth-child(even) {
    margin-left: initial;
    margin-top: 4.5625rem;
  }
}

.anxiety__item-title {
  font-size: 1.125rem;
  font-weight: 900;
  line-height: 1.6;
  color: #116BAF;
  text-align: center;
}
@media screen and (min-width: 376px) {
  .anxiety__item-title {
    font-size: 18px;
  }
}
@media (min-width: 768px) {
  .anxiety__item-title {
    font-size: clamp(18px, 1.5rem, 24px);
    white-space: nowrap;
  }
}

.anxiety__item-text {
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.6;
  color: #111;
}
@media screen and (min-width: 376px) {
  .anxiety__item-text {
    font-size: 14px;
  }
}
@media (min-width: 768px) {
  .anxiety__item-text {
    font-size: 16px;
  }
}

.apply {
  background: url(../img/webp/brick-bg.webp) no-repeat center center/cover;
}
.apply .cta__tel-btn--pc {
  display: none;
}
@media (min-width: 768px) {
  .apply .cta__tel-btn--pc {
    background: #FFF;
    border-radius: 1.25rem;
    padding-block: 1rem;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
}
.apply .cta__tel-btn--sp {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 0.5rem;
  background: #FFF;
  border-radius: 1rem;
  padding: 1.5rem;
}
@media screen and (min-width: 376px) {
  .apply .cta__tel-btn--sp {
    padding: 24px;
    gap: 8px;
    border-radius: 16px;
  }
}
@media (min-width: 768px) {
  .apply .cta__tel-btn--sp {
    display: none;
  }
}
.apply .cta__tel-btn--sp .cta__tel-text {
  color: #116BAF;
  text-align: center;
  font-size: 1rem;
  font-weight: 700;
  line-height: 1.6;
  margin-bottom: 0;
}
@media screen and (min-width: 376px) {
  .apply .cta__tel-btn--sp .cta__tel-text {
    font-size: 16px;
  }
}
.apply .page-cta__banner {
  padding-block: 4rem 5rem;
  margin-block: 0;
}
@media screen and (min-width: 376px) {
  .apply .page-cta__banner {
    padding-block: 64px 80px;
  }
}
@media (min-width: 768px) {
  .apply .page-cta__banner {
    padding-block: 6.25rem;
  }
}

.apply__content {
  width: 100%;
  max-width: 100%;
  margin-inline: auto;
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: minmax(0, 1fr);
  grid-template-columns: minmax(0, 1fr);
}
@media screen and (min-width: 376px) {
  .apply__content {
    width: clamp(375px, 31.25rem, 500px);
  }
}
@media (min-width: 768px) {
  .apply__content {
    width: 90rem;
    -ms-grid-columns: (1fr)[2];
    grid-template-columns: repeat(2, 1fr);
  }
}

.apply__img {
  width: 100%;
  max-width: 100%;
  margin-inline: auto;
}
.apply__img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.apply__body {
  -webkit-box-flex: 1;
  -webkit-flex: 1;
      -ms-flex: 1;
          flex: 1;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 1.5rem;
  padding: 2.5rem 1.875rem;
  background: #2698D5;
}
@media screen and (min-width: 376px) {
  .apply__body {
    padding: 40px 30px;
    gap: 24px;
  }
}
@media (min-width: 768px) {
  .apply__body {
    gap: 2.5rem;
    padding: 6.25rem 7.5rem 6.25rem 5rem;
  }
}

.apply__title {
  width: 19.6875rem;
  max-width: 100%;
  margin-inline: auto;
}
@media screen and (min-width: 376px) {
  .apply__title {
    width: 315px;
  }
}
@media (min-width: 768px) {
  .apply__title {
    margin-inline: initial;
    width: 26.4375rem;
  }
}
.apply__title img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.apply__text {
  font-size: 0.875rem;
  font-weight: 700;
  line-height: 1.6;
  color: #FFF;
}
@media screen and (min-width: 376px) {
  .apply__text {
    font-size: 14px;
  }
}
@media (min-width: 768px) {
  .apply__text {
    font-size: 16px;
  }
}

.author-box {
  background: #D7EEFF;
  border-radius: 1rem;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  gap: 1rem;
  -webkit-box-align: start;
  -webkit-align-items: flex-start;
      -ms-flex-align: start;
          align-items: flex-start;
  padding: 1.5rem 1rem;
  margin-top: 1.5rem;
}
@media screen and (min-width: 376px) {
  .author-box {
    gap: 16px;
    border-radius: 20px;
    padding: 24px 16px;
    margin-top: 24px;
  }
}
@media (min-width: 768px) {
  .author-box {
    gap: 2rem;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    border-radius: 1.25rem;
    padding: 2rem;
  }
}

.author-box__body {
  -webkit-box-flex: 1;
  -webkit-flex: 1;
      -ms-flex: 1;
          flex: 1;
}

.author-box__avatar {
  width: 5rem;
  height: 5rem;
  border-radius: 100vmax;
  overflow: hidden;
}
@media screen and (min-width: 376px) {
  .author-box__avatar {
    width: 80px;
    height: 80px;
  }
}
@media (min-width: 768px) {
  .author-box__avatar {
    width: 7.1875rem;
    height: 7.1875rem;
  }
}
.author-box__avatar img {
  display: block;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.author-box__head {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0.5rem;
}
@media screen and (min-width: 376px) {
  .author-box__head {
    gap: 8px;
  }
}
@media (min-width: 768px) {
  .author-box__head {
    gap: 1rem;
  }
}

.author-box__label {
  font-size: 0.875rem;
  padding: 0.375rem 1rem;
  background: #FFF;
  border-radius: 6.25rem;
  line-height: 1;
  font-weight: 700;
  color: #111;
}
@media screen and (min-width: 376px) {
  .author-box__label {
    font-size: 14px;
    padding: 6px 16px;
    border-radius: 100px;
  }
}
@media (min-width: 768px) {
  .author-box__label {
    font-size: 16px;
    padding: 0.5rem 1rem;
    border-radius: 6.25rem;
  }
}

.author-box__name {
  display: block;
  font-size: 1rem;
  font-weight: 700;
  line-height: 1.3;
}
@media screen and (min-width: 376px) {
  .author-box__name {
    font-size: 16px;
  }
}
@media (min-width: 768px) {
  .author-box__name {
    font-size: 18px;
  }
}

.author-box__text {
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.6;
  color: #111;
  margin-top: 0.5rem;
}
@media screen and (min-width: 376px) {
  .author-box__text {
    font-size: 14px;
    margin-top: 8px;
  }
}
@media (min-width: 768px) {
  .author-box__text {
    font-size: 16px;
  }
}

.breadcrumb__list {
  line-height: 1.8;
  font-size: 0.8125rem;
}
@media screen and (min-width: 376px) {
  .breadcrumb__list {
    font-size: 13px;
  }
}
@media (min-width: 768px) {
  .breadcrumb__list {
    font-size: clamp(14px, 1rem, 16px);
  }
}
.breadcrumb__list li {
  display: inline;
  font-weight: 500;
  line-height: 1.4;
  color: #111;
}
.breadcrumb__list li:last-child {
  color: rgba(17, 17, 17, 0.5);
}
.breadcrumb__list li a {
  position: relative;
  -webkit-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
}
.breadcrumb__list li a::after {
  content: "";
  display: inline-block;
  background: url(../img/svg/arrow-right-black.svg) no-repeat center center/contain;
  width: 0.5rem;
  height: 0.625rem;
  margin-inline: 0.40625rem;
}
@media screen and (min-width: 376px) {
  .breadcrumb__list li a::after {
    margin-inline: 6.5px;
    width: 8px;
    height: 10px;
  }
}
@media (min-width: 768px) {
  .breadcrumb__list li a::after {
    margin-inline: 1rem;
    width: 0.5rem;
    height: 0.625rem;
  }
}
@media (any-hover: hover) {
  .breadcrumb__list li a:hover {
    opacity: 0.6;
  }
}

.campaign {
  position: relative;
  background: url(../img/webp/campaign-bg-sp.webp) no-repeat center center/cover;
  margin-top: 5rem;
  padding-block: 0.625rem 5rem;
}
@media screen and (min-width: 376px) {
  .campaign {
    margin-top: 80px;
    padding-block: 10px 80px;
  }
}
@media (min-width: 768px) {
  .campaign {
    background: url(../img/webp/campaign-bg-pc.webp) no-repeat center center/cover;
    padding-block: 1.625rem 8.375rem;
    margin-top: 5rem;
  }
}
.campaign::before {
  content: "";
  position: absolute;
  top: -0.0625rem;
  left: 50%;
  translate: -50%;
  width: 100%;
  aspect-ratio: 375/69;
  height: auto;
  background: url(../img/webp/arrow-bg-light-blue-sp.webp) no-repeat center center/cover;
}
@media (min-width: 768px) {
  .campaign::before {
    aspect-ratio: 1440/134;
    background: url(../img/webp/arrow-bg-light-blue-pc.webp) no-repeat center center/cover;
  }
}

.campaign--home {
  margin-top: 0;
}
.campaign--home::before {
  content: "";
  position: absolute;
  top: -0.0625rem;
  left: 50%;
  translate: -50%;
  width: 100%;
  aspect-ratio: 375/69;
  height: auto;
  background: url(../img/webp/arrow-bg-white-sp.webp) no-repeat center center/cover;
}
@media (min-width: 768px) {
  .campaign--home::before {
    aspect-ratio: 1440/134;
    background: url(../img/webp/arrow-bg-white-pc.webp) no-repeat center center/cover;
  }
}

.campaign__title {
  position: relative;
  width: 21.4375rem;
  max-width: 100%;
  margin-inline: auto;
}
@media screen and (min-width: 376px) {
  .campaign__title {
    width: 343px;
  }
}
@media (min-width: 768px) {
  .campaign__title {
    width: 40.125rem;
  }
}
.campaign__title img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.campaign__items {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: minmax(0, 1fr);
  grid-template-columns: minmax(0, 1fr);
  gap: 1.5rem;
  width: 100%;
  max-width: 100%;
  margin-inline: auto;
  margin-top: 2rem;
  padding-inline: 0.9375rem;
}
@media screen and (min-width: 376px) {
  .campaign__items {
    padding-inline: 1.875rem;
    margin-top: 32px;
    width: 500px;
  }
}
@media (min-width: 768px) {
  .campaign__items {
    -ms-grid-columns: (minmax(0, 1fr))[2];
    grid-template-columns: repeat(2, minmax(0, 1fr));
    margin-top: 4rem;
    width: 70rem;
    padding-inline: 1.875rem;
  }
}
@media screen and (min-width: 951px) {
  .campaign__items {
    -ms-grid-columns: (minmax(0, 1fr))[2];
    grid-template-columns: repeat(2, minmax(0, 1fr));
    width: 70rem;
    padding-inline: 3.75rem;
  }
}
@media screen and (min-width: 1301px) {
  .campaign__items {
    width: 82.5rem;
    padding-inline: 3.75rem;
    -ms-grid-columns: (minmax(0, 1fr))[3];
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 1.5rem;
  }
}

.campaign__item {
  background: #FFF;
  border-radius: 1rem;
  border: 3px solid #222;
  padding: 1.5rem 0.8125rem;
  position: relative;
}
@media screen and (min-width: 376px) {
  .campaign__item {
    border-radius: 16px;
    padding: 24px 1rem;
  }
}
@media (min-width: 768px) {
  .campaign__item {
    -webkit-box-shadow: 6px 6px 0 0 rgba(0, 0, 0, 0.2);
            box-shadow: 6px 6px 0 0 rgba(0, 0, 0, 0.2);
    border-radius: 1.25rem;
    padding: 2rem 1.25rem;
  }
  .campaign__item:last-child:nth-child(2n+1) {
    grid-column: 1/-1;
    -ms-grid-column-align: center;
        justify-self: center;
    width: calc((100% - 1.5rem) / 2);
  }
}
@media screen and (min-width: 1301px) {
  .campaign__item:last-child:nth-child(2n+1) {
    grid-column: auto;
    -ms-grid-column-align: stretch;
        justify-self: stretch;
    width: auto;
  }
}
.campaign__item::before {
  content: "";
  position: absolute;
  top: -1.25rem;
  left: -1.25rem;
  width: 5.625rem;
  height: 5.625rem;
  background: url(../img/webp/campaign-badge01.webp) no-repeat center center/cover;
}
@media screen and (min-width: 376px) {
  .campaign__item::before {
    width: 82px;
    height: 82px;
    top: -20px;
    left: -20px;
  }
}
@media (min-width: 768px) {
  .campaign__item::before {
    width: 90px;
    height: 90px;
    top: -20px;
    left: -20px;
  }
}
.campaign__item:nth-child(2)::before {
  background: url(../img/webp/campaign-badge02.webp) no-repeat center center/cover;
}
.campaign__item:nth-child(3) .campaign__item-img {
  border-radius: 1.25rem;
}
@media screen and (min-width: 376px) {
  .campaign__item:nth-child(3) .campaign__item-img {
    border-radius: 20px;
  }
}
@media (min-width: 768px) {
  .campaign__item:nth-child(3) .campaign__item-img {
    width: 21rem;
    height: 12.5rem;
    border-radius: 1.25rem;
  }
}
.campaign__item:nth-child(3)::before {
  background: url(../img/webp/campaign-badge03.webp) no-repeat center center/cover;
}

.campaign__item-img {
  width: 100%;
  max-width: 100%;
  margin-inline: auto;
  height: 11.0625rem;
}
@media screen and (min-width: 376px) {
  .campaign__item-img {
    height: auto;
  }
}
@media (min-width: 768px) {
  .campaign__item-img {
    width: 21rem;
    height: 13.5rem;
  }
}
.campaign__item-img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  border-radius: 1.25rem;
}

.campaign__item-title {
  font-size: 1.25rem;
  font-weight: 900;
  line-height: 1.6;
  color: #222;
  text-align: center;
  background: #FDD557;
  padding-inline: 0.5rem;
  margin-top: 1rem;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  margin-inline: auto;
}
@media screen and (min-width: 376px) {
  .campaign__item-title {
    font-size: 20px;
    padding-inline: 8px;
    margin-top: 16px;
  }
}
@media (min-width: 768px) {
  .campaign__item-title {
    font-size: clamp(20px, 1.5rem, 24px);
    padding-inline: 0.5rem;
    margin-top: 1.5rem;
  }
}

.campaign__item-text {
  color: #222;
  font-weight: 700;
  font-size: 0.875rem;
  line-height: 1.6;
  margin-top: 1rem;
}
.campaign__item-text span {
  color: #F2761E;
}
@media screen and (min-width: 376px) {
  .campaign__item-text {
    font-size: 14px;
    margin-top: 16px;
  }
}
@media (min-width: 768px) {
  .campaign__item-text {
    font-size: clamp(14px, 1rem, 16px);
    margin-top: 1rem;
  }
}

.cat-nav-area .cat-nav__item a {
  -webkit-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
  font-size: 0.875rem;
  color: #FFF;
  background: #2698D5;
  font-weight: 700;
  line-height: 1.6;
  display: inline-block;
  padding: 0.5rem 1rem;
  border-radius: 6.25rem;
}
@media screen and (min-width: 376px) {
  .cat-nav-area .cat-nav__item a {
    font-size: clamp(14px, 0.875rem, 16px);
    padding: 8px 16px;
  }
}
@media (min-width: 768px) {
  .cat-nav-area .cat-nav__item a {
    font-size: clamp(16px, 1.125rem, 18px);
    padding: 0.75rem 2rem;
  }
}
.cat-nav-area .cat-nav__item a.selected {
  background: #111;
  color: #FFF;
}
@media (any-hover: hover) {
  .cat-nav-area .cat-nav__item a:hover {
    opacity: 0.6;
  }
}

.cat-nav-cat .cat-nav__item a {
  -webkit-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
  font-size: 0.875rem;
  background: #FDD557;
  color: #111;
  font-weight: 700;
  line-height: 1.6;
  display: inline-block;
  padding: 0.5rem 1rem;
  border-radius: 6.25rem;
}
@media screen and (min-width: 376px) {
  .cat-nav-cat .cat-nav__item a {
    font-size: clamp(14px, 0.875rem, 16px);
    padding: 8px 16px;
  }
}
@media (min-width: 768px) {
  .cat-nav-cat .cat-nav__item a {
    font-size: clamp(16px, 1.125rem, 18px);
    padding: 0.75rem 2rem;
  }
}
.cat-nav-cat .cat-nav__item a.selected {
  background: #111;
  color: #FFF;
}
@media (any-hover: hover) {
  .cat-nav-cat .cat-nav__item a:hover {
    opacity: 0.6;
  }
}

.cat-nav-area__content {
  background: #FFF;
  border-radius: 1rem;
  padding: 1.5rem 1rem;
  width: 100%;
  max-width: 100%;
  margin-inline: auto;
}
@media screen and (min-width: 376px) {
  .cat-nav-area__content {
    padding: 24px 16px;
    border-radius: 16px;
    width: clamp(375px, 31.25rem, 500px);
  }
}
@media (min-width: 768px) {
  .cat-nav-area__content {
    padding: 2rem;
    border-radius: 1.25rem;
    width: 75rem;
  }
}

.cat-nav__items {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0.5rem;
}
@media screen and (min-width: 376px) {
  .cat-nav__items {
    gap: 8px;
  }
}
@media (min-width: 768px) {
  .cat-nav__items {
    gap: 0.5rem;
  }
}

.top-column {
  background: #D7EEFF;
}
.top-column .tags-box {
  margin-top: 4rem;
}
@media screen and (min-width: 376px) {
  .top-column .tags-box {
    margin-top: 64px;
  }
}
@media (min-width: 768px) {
  .top-column .tags-box {
    margin-top: 5rem;
  }
}

.top-column__inner {
  padding-block: 5rem;
}
@media screen and (min-width: 376px) {
  .top-column__inner {
    padding-block: 80px;
  }
}
@media (min-width: 768px) {
  .top-column__inner {
    padding-block: 3.75rem 6.25rem;
  }
}

.top-column__title {
  width: 21.3125rem;
  max-width: 100%;
  margin-inline: auto;
}
@media screen and (min-width: 376px) {
  .top-column__title {
    width: 341px;
  }
}
@media (min-width: 768px) {
  .top-column__title {
    width: 40.1875rem;
  }
}
.top-column__title img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.column__content {
  width: 100%;
  max-width: 100%;
  margin-inline: auto;
  position: relative;
  z-index: 0;
}
@media (min-width: 768px) {
  .column__content {
    width: 90rem;
  }
}
.column__content::after {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  width: 11.875rem;
  height: 11.875rem;
  background: url(../img/webp/paint-white-sp.webp) no-repeat center center/cover;
  z-index: -1;
}
@media (min-width: 768px) {
  .column__content::after {
    width: 26.9375rem;
    height: 20.25rem;
    background: url(../img/webp/paint-white-pc.webp) no-repeat center center/cover;
  }
}

.column__items {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: (1fr)[1];
  grid-template-columns: repeat(1, 1fr);
  gap: 1.5rem;
  margin-top: 2.5rem;
  width: 100%;
  max-width: 100%;
  margin-inline: auto;
}
@media screen and (min-width: 376px) {
  .column__items {
    margin-top: 40px;
    width: clamp(375px, 31.25rem, 500px);
  }
}
@media (min-width: 768px) {
  .column__items {
    gap: 24px;
    -ms-grid-columns: (1fr)[2];
    grid-template-columns: repeat(2, 1fr);
    margin-top: 3.125rem;
    width: 75rem;
  }
}
@media screen and (min-width: 1000px) {
  .column__items {
    -ms-grid-columns: (1fr)[3];
    grid-template-columns: repeat(3, 1fr);
    gap: 1.5rem;
  }
}

.column__item {
  padding: 1.5rem 1rem;
  background: #FFF;
  border-radius: 1rem;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
}
@media screen and (min-width: 376px) {
  .column__item {
    padding: 24px 16px;
    border-radius: 16px;
  }
}
@media (min-width: 768px) {
  .column__item {
    padding: 1.5rem;
  }
  .top-column .column__item:last-child:nth-child(2n+1) {
    grid-column: 1/-1;
    -ms-grid-column-align: center;
        justify-self: center;
    width: calc((100% - 24px) / 2);
  }
}
@media screen and (min-width: 1000px) {
  .top-column .column__item:last-child:nth-child(2n+1) {
    grid-column: auto;
    -ms-grid-column-align: stretch;
        justify-self: stretch;
    width: auto;
  }
}
.column__item.--new-arrival {
  position: relative;
}
.column__item.--new-arrival::before {
  content: "";
  z-index: 1;
  position: absolute;
  top: -1.5625rem;
  left: -1.125rem;
  width: 5rem;
  height: 5rem;
  background: url(../img/webp/new-badge.webp) no-repeat center center/cover;
}
@media screen and (min-width: 376px) {
  .column__item.--new-arrival::before {
    width: clamp(80px, 5rem, 92px);
    height: clamp(80px, 5rem, 92px);
    top: -25px;
    left: -18px;
  }
}
@media (min-width: 768px) {
  .column__item.--new-arrival::before {
    width: clamp(80px, 5.75rem, 92px);
    height: clamp(80px, 5.75rem, 92px);
  }
}

.column__item-img {
  -webkit-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
  display: block;
  border-radius: 1rem;
  aspect-ratio: 336/189;
  overflow: hidden;
}
@media screen and (min-width: 376px) {
  .column__item-img {
    border-radius: 16px;
  }
}
@media (min-width: 768px) {
  .column__item-img {
    border-radius: 1.25rem;
  }
}
.column__item-img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
@media (any-hover: hover) {
  .column__item-img:hover {
    opacity: 0.6;
  }
}

.column__item-body {
  margin-top: 1rem;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 0.5rem;
}
@media screen and (min-width: 376px) {
  .column__item-body {
    margin-top: 16px;
    gap: 8px;
  }
}
@media (min-width: 768px) {
  .column__item-body {
    margin-top: 1rem;
    gap: 0.5rem;
  }
}

.column__item-meta {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 1rem;
}
.column__item-meta .date {
  font-size: 0.875rem;
  font-weight: 600;
  line-height: 1.6;
  color: #888888;
  font-family: "Montserrat", sans-serif;
}
@media screen and (min-width: 376px) {
  .column__item-meta .date {
    font-size: clamp(14px, 1rem, 16px);
  }
}
@media (min-width: 768px) {
  .column__item-meta .date {
    font-size: clamp(14px, 1rem, 16px);
  }
}
.column__item-meta .cta-tag a {
  font-size: 0.875rem;
  font-weight: 700;
  line-height: 1.6;
  color: #111;
  padding: 0.25rem 0.5rem;
  background: #FDD557;
  border-radius: 6.25rem;
}
@media screen and (min-width: 376px) {
  .column__item-meta .cta-tag a {
    font-size: clamp(14px, 0.875rem, 16px);
    padding: 4px 8px;
  }
}
@media (min-width: 768px) {
  .column__item-meta .cta-tag a {
    font-size: 16px;
  }
}

.column__item-title {
  display: block;
  -webkit-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
  font-size: 1rem;
  font-weight: 700;
  line-height: 1.6;
  color: #111;
  letter-spacing: 0.05em;
}
@media screen and (min-width: 376px) {
  .column__item-title {
    font-size: clamp(16px, 1rem, 18px);
  }
}
@media (min-width: 768px) {
  .column__item-title {
    font-size: 18px;
  }
}
@media (any-hover: hover) {
  .column__item-title:hover {
    opacity: 0.6;
  }
}

.column__item-text {
  display: block;
  -webkit-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.6;
  color: #222;
  letter-spacing: 0.05em;
}
@media screen and (min-width: 376px) {
  .column__item-text {
    font-size: clamp(14px, 0.875rem, 16px);
  }
}
@media (min-width: 768px) {
  .column__item-text {
    font-weight: 500;
    font-size: 16px;
  }
}
@media (any-hover: hover) {
  .column__item-text:hover {
    opacity: 0.6;
  }
}

.column__item-bottom {
  text-align: end;
  margin-top: 1rem;
}
@media screen and (min-width: 376px) {
  .column__item-bottom {
    margin-top: 16px;
  }
}
@media (min-width: 768px) {
  .column__item-bottom {
    margin-top: 1.5rem;
  }
}

.column__item-more {
  -webkit-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
  font-size: 0.875rem;
  font-weight: 700;
  line-height: 1.6;
  position: relative;
  display: -webkit-inline-box;
  display: -webkit-inline-flex;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0.625rem;
  -webkit-box-pack: end;
  -webkit-justify-content: flex-end;
      -ms-flex-pack: end;
          justify-content: flex-end;
}
@media screen and (min-width: 376px) {
  .column__item-more {
    font-size: clamp(14px, 0.875rem, 16px);
    gap: 10px;
  }
}
@media (min-width: 768px) {
  .column__item-more {
    gap: 0.625rem;
    font-size: 16px;
  }
}
.column__item-more::after {
  content: "";
  background: url(../img/svg/arrow-circle-right-bg-black.svg) no-repeat center center/contain;
  width: 1.25rem;
  height: 1.25rem;
}
@media screen and (min-width: 376px) {
  .column__item-more::after {
    width: 20px;
    height: 20px;
  }
}
@media (min-width: 768px) {
  .column__item-more::after {
    width: clamp(20px, 1.875rem, 30px);
    height: clamp(20px, 1.875rem, 30px);
  }
}
@media (any-hover: hover) {
  .column__item-more:hover {
    opacity: 0.6;
  }
}

.tags-box {
  margin-top: 5rem;
}
@media screen and (min-width: 376px) {
  .tags-box {
    margin-top: 80px;
  }
}
@media (min-width: 768px) {
  .tags-box {
    margin-top: 5rem;
  }
}

.tags-box__conteiner {
  width: 100%;
  max-width: 100%;
  margin-inline: auto;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 1.5rem;
}
@media screen and (min-width: 376px) {
  .tags-box__conteiner {
    gap: 24px;
    width: clamp(375px, 31.25rem, 500px);
  }
}
@media (min-width: 768px) {
  .tags-box__conteiner {
    gap: 2rem;
    width: 75rem;
  }
}

.tags-box__column {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: start;
  -webkit-align-items: flex-start;
      -ms-flex-align: start;
          align-items: flex-start;
  gap: 1.5rem;
  padding: 1.5rem 1rem;
  background: #FDD652;
  border-radius: 1rem;
}
@media screen and (min-width: 376px) {
  .tags-box__column {
    padding: 24px 16px;
    border-radius: 16px;
    gap: 24px;
  }
}
@media (min-width: 768px) {
  .tags-box__column {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-direction: row;
        -ms-flex-direction: row;
            flex-direction: row;
    gap: 3.25rem;
    padding: 3rem 4rem 3rem;
    border-radius: 1.25rem;
  }
}
.tags-box__column .tags-box__item a {
  font-size: 0.875rem;
  font-weight: 700;
  line-height: 1.6;
  color: #FFF;
  padding: 0.375rem 1rem;
  border-radius: 6.25rem;
  background: #111;
  display: block;
  -webkit-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
}
@media screen and (min-width: 376px) {
  .tags-box__column .tags-box__item a {
    font-size: 14px;
    padding: 6px 16px;
    border-radius: 100px;
  }
}
@media (min-width: 768px) {
  .tags-box__column .tags-box__item a {
    font-size: clamp(16px, 1.25rem, 20px);
    padding: 0.75rem 2rem;
    border-radius: 6.25rem;
    padding: 0.75rem 2rem;
  }
}
@media (any-hover: hover) {
  .tags-box__column .tags-box__item a:hover {
    opacity: 0.6;
  }
}
.tags-box__column .tags-box__title {
  width: 12.875rem;
  max-width: 100%;
  -webkit-box-flex: 0;
  -webkit-flex-grow: 0;
      -ms-flex-positive: 0;
          flex-grow: 0;
  -webkit-flex-shrink: 0;
      -ms-flex-negative: 0;
          flex-shrink: 0;
}
@media screen and (min-width: 376px) {
  .tags-box__column .tags-box__title {
    width: 206px;
  }
}
@media (min-width: 768px) {
  .tags-box__column .tags-box__title {
    width: 20.0625rem;
  }
}
.tags-box__column .tags-box__title img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.tags-box__items {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  gap: 0.5rem;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  gap: 0.5rem;
}
@media screen and (min-width: 376px) {
  .tags-box__items {
    gap: 8px;
  }
}
@media (min-width: 768px) {
  .tags-box__items {
    gap: 0.5rem;
  }
}

.top-column__btn {
  margin-top: 3rem;
}
@media screen and (min-width: 376px) {
  .top-column__btn {
    margin-top: 48px;
  }
}
@media (min-width: 768px) {
  .top-column__btn {
    margin-top: 4rem;
  }
}
.top-column__btn .btn-blue::after {
  right: 1rem;
}
@media screen and (min-width: 376px) {
  .top-column__btn .btn-blue::after {
    right: 16px;
  }
}
@media (min-width: 768px) {
  .top-column__btn .btn-blue::after {
    right: 2.5rem;
  }
}

.company-profile {
  background: #FFF;
}
.company-profile .company-profile__inner {
  padding-inline: 1rem 0.75rem;
}
@media screen and (min-width: 376px) {
  .company-profile .company-profile__inner {
    padding-inline: 16px 12px;
  }
}
@media (min-width: 768px) {
  .company-profile .company-profile__inner {
    padding-inline: 1rem 0.75rem;
  }
}

.company-profile__container {
  padding-block: 3.75rem 5rem;
  position: relative;
  z-index: 0;
  width: 90rem;
  max-width: 100%;
  margin-inline: auto;
}
@media screen and (min-width: 376px) {
  .company-profile__container {
    padding-block: 60px 80px;
    width: 100%;
  }
}
@media (min-width: 768px) {
  .company-profile__container {
    width: 90rem;
    padding-block: 3.75rem 6.25rem;
  }
}
.company-profile__container::before, .company-profile__container::after {
  content: "";
  position: absolute;
  z-index: -2;
}
.company-profile__container::before {
  width: 13.6875rem;
  height: 10rem;
  top: 0;
  left: 0;
  background: url(../img/webp/paint-blue-sp.webp) no-repeat center center/cover;
}
@media screen and (min-width: 376px) {
  .company-profile__container::before {
    width: 219px;
    height: 160px;
  }
}
@media (min-width: 768px) {
  .company-profile__container::before {
    width: 26.9375rem;
    height: 18.75rem;
    background: url(../img/webp/paint-blue-pc.webp) no-repeat center center/cover;
  }
}
.company-profile__container::after {
  width: 14.125rem;
  height: 15.5625rem;
  bottom: 0;
  right: 0;
  background: url(../img/webp/paint-yellow-sp.webp) no-repeat center center/cover;
}
@media screen and (min-width: 376px) {
  .company-profile__container::after {
    width: 226px;
    height: 249px;
  }
}
@media (min-width: 768px) {
  .company-profile__container::after {
    width: 26.9375rem;
    height: 13.875rem;
    background: url(../img/webp/paint-yellow-pc.webp) no-repeat center center/cover;
  }
}

.company-profile__title {
  width: 20.1875rem;
  max-width: 100%;
  margin-inline: auto;
}
@media screen and (min-width: 376px) {
  .company-profile__title {
    width: 323px;
  }
}
@media (min-width: 768px) {
  .company-profile__title {
    width: 31.125rem;
  }
}
.company-profile__title img {
  width: 100%;
  height: 100%;
}

.company-profile__content {
  max-width: 21.5625rem;
  width: 100%;
  margin-inline: auto;
  display: block;
  gap: 3.0625rem;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin-top: 2.5rem;
}
@media screen and (min-width: 376px) {
  .company-profile__content {
    margin-top: 40px;
  }
}
@media (min-width: 768px) {
  .company-profile__content {
    max-width: 75rem;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    margin-top: 4.375rem;
  }
}

.company-profile__img {
  width: 21.125rem;
  max-width: 100%;
  margin-inline: auto;
}
@media screen and (min-width: 376px) {
  .company-profile__img {
    width: 338px;
  }
}
@media (min-width: 768px) {
  .company-profile__img {
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    -webkit-box-flex: 1;
    -webkit-flex: 1;
        -ms-flex: 1;
            flex: 1;
  }
}
.company-profile__img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.company-profile__box {
  width: 20.9375rem;
  max-width: 100%;
  margin-inline: auto;
  height: -webkit-fit-content;
  height: -moz-fit-content;
  height: fit-content;
  background: #D7EEFF;
  padding: 2rem 1rem;
  border-radius: 1rem;
  margin-top: 0.6875rem;
  position: relative;
}
@media screen and (min-width: 376px) {
  .company-profile__box {
    padding: 32px 16px;
    width: 500px;
    border-radius: 16px;
    margin-top: 11px;
  }
}
@media (min-width: 768px) {
  .company-profile__box {
    padding: 2.5rem;
    width: 36.75rem;
    border-radius: 1.25rem;
    margin-top: initial;
  }
}
.company-profile__box::before {
  content: "";
  position: absolute;
  top: -0.875rem;
  left: 50%;
  translate: -50% 0;
  width: 1.6875rem;
  height: 0.9375rem;
  background-color: #D7EEFF;
  -webkit-clip-path: polygon(50% 0%, 0% 100%, 100% 100%);
          clip-path: polygon(50% 0%, 0% 100%, 100% 100%);
}
@media screen and (min-width: 376px) {
  .company-profile__box::before {
    width: 27px;
    height: 15px;
    top: -14px;
  }
}
@media (min-width: 768px) {
  .company-profile__box::before {
    top: 50%;
    left: -1.5625rem;
    translate: 0 -50%;
    width: 1.6875rem;
    height: 1.6875rem;
    background-color: #D7EEFF;
    -webkit-clip-path: polygon(100% 0%, 100% 100%, 0% 50%);
            clip-path: polygon(100% 0%, 100% 100%, 0% 50%);
  }
}
.company-profile__box::after {
  content: "";
  position: absolute;
  bottom: -0.625rem;
  left: 0.625rem;
  z-index: -1;
  width: 100%;
  height: 100%;
  border-radius: 1.25rem;
  background: url(../img/webp/box-bg-sp.webp) no-repeat center center/cover;
}
@media screen and (min-width: 376px) {
  .company-profile__box::after {
    bottom: -10px;
    left: 10px;
  }
}
@media (min-width: 768px) {
  .company-profile__box::after {
    bottom: -0.3125rem;
    left: 0.3125rem;
    background: url(../img/webp/box-bg-pc.webp) no-repeat center center/cover;
  }
}

.company-profile__box-inner {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 1.5rem;
}
@media screen and (min-width: 376px) {
  .company-profile__box-inner {
    gap: 24px;
  }
}
@media (min-width: 768px) {
  .company-profile__box-inner {
    gap: 1.5rem;
  }
}

.company-profile__logo {
  width: 18.9375rem;
  max-width: 100%;
}
@media screen and (min-width: 376px) {
  .company-profile__logo {
    width: 303px;
  }
}
@media (min-width: 768px) {
  .company-profile__logo {
    width: 23.1875rem;
  }
}
.company-profile__logo img {
  width: 100%;
  height: 100%;
}

.company-profile__address {
  font-size: 0.875rem;
  font-weight: 500;
  line-height: 1.6;
  font-style: normal;
}
@media screen and (min-width: 376px) {
  .company-profile__address {
    font-size: clamp(14px, 0.875rem, 16px);
  }
}
@media (min-width: 768px) {
  .company-profile__address {
    font-size: 16px;
  }
}

.company-profile__box-title {
  font-size: 1rem;
  font-weight: 700;
  line-height: 1.6;
  margin-bottom: 0.5rem;
}
@media screen and (min-width: 376px) {
  .company-profile__box-title {
    font-size: 16px;
  }
}
@media (min-width: 768px) {
  .company-profile__box-title {
    font-size: clamp(18px, 1.25rem, 20px);
  }
}

.company-profile__btn {
  text-align: end;
}
.company-profile__btn a {
  -webkit-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
  font-size: 0.875rem;
  font-weight: 700;
  line-height: 1.6;
  color: #111;
  position: relative;
  display: -webkit-inline-box;
  display: -webkit-inline-flex;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: end;
  -webkit-justify-content: flex-end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  gap: 0.625rem;
}
@media screen and (min-width: 376px) {
  .company-profile__btn a {
    font-size: 14px;
    gap: 10px;
  }
}
@media (min-width: 768px) {
  .company-profile__btn a {
    font-size: 1rem;
    gap: 0.625rem;
  }
}
.company-profile__btn a::after {
  content: "";
  width: 1.25rem;
  height: 1.25rem;
  background: url(../img/svg/arrow-circle-right-bg-black.svg) no-repeat center center/cover;
}
@media screen and (min-width: 376px) {
  .company-profile__btn a::after {
    width: 20px;
    height: 20px;
  }
}
@media (min-width: 768px) {
  .company-profile__btn a::after {
    width: 1.875rem;
    height: 1.875rem;
  }
}
@media (any-hover: hover) {
  .company-profile__btn a:hover {
    opacity: 0.6;
  }
}

.cta-box {
  position: relative;
  border-radius: 1rem;
  border: 0.1875rem solid #111;
  width: 100%;
  max-width: 100%;
  margin-inline: auto;
  overflow: hidden;
}
@media screen and (min-width: 376px) {
  .cta-box {
    border-radius: 16px;
    border: 3px solid #111;
  }
}
@media (min-width: 768px) {
  .cta-box {
    border-radius: 1.25rem;
    border: 4px solid #111;
    width: 46.25rem;
  }
}
.cta-box .cta__wrap {
  margin-top: 1.5rem;
}
@media screen and (min-width: 376px) {
  .cta-box .cta__wrap {
    margin-top: 24px;
  }
}
@media (min-width: 768px) {
  .cta-box .cta__wrap {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: 1rem;
    margin-top: 1.5rem;
  }
}
@media (min-width: 768px) {
  .cta-box .cta-btn {
    padding-block: 1.0625rem;
    padding-inline: 1rem 1.5rem;
    width: 21.875rem;
    height: 4.375rem;
  }
}
@media (min-width: 768px) {
  .cta-box .cta__tel-btn--pc .cta__tel-text-number {
    font-size: clamp(20px, 1.625rem, 26px);
  }
}
.cta-box .cta__sub-text {
  margin-top: 1.5rem;
  font-size: 0.75rem;
  font-weight: 500;
  line-height: 1.6;
  color: #111;
}
@media screen and (min-width: 376px) {
  .cta-box .cta__sub-text {
    margin-top: 16px;
    font-size: 12px;
  }
}
@media (min-width: 768px) {
  .cta-box .cta__sub-text {
    margin-top: 1rem;
    font-size: clamp(12px, 0.875rem, 14px);
  }
}
.cta-box .cta__tel-text-sub {
  display: block;
  font-size: 0.625rem;
}
@media screen and (min-width: 376px) {
  .cta-box .cta__tel-text-sub {
    font-size: 10px;
  }
}
@media (min-width: 768px) {
  .cta-box::after {
    content: "";
    width: 16.0625rem;
    height: 21.4375rem;
    background: url(../img/webp/clip-person-cta-box-pc.webp) no-repeat center center/contain;
    position: absolute;
    bottom: 0;
    left: 0;
  }
}
.cta-box .cta-box__body {
  padding: 1.5rem 0.9375rem 2rem;
}
@media screen and (min-width: 376px) {
  .cta-box .cta-box__body {
    padding: 24px 15px 32px;
  }
}
@media (min-width: 768px) {
  .cta-box .cta-box__body {
    padding: 1.5625rem 0.90625rem 2.25rem 11.375rem;
  }
}
.cta-box .cta-box__title {
  width: 100%;
  max-width: 100%;
  margin-inline: auto;
  background: #2698D5;
  padding: 0.9375rem 0.625rem;
}
@media screen and (min-width: 376px) {
  .cta-box .cta-box__title {
    padding: 15px 10px;
  }
}
@media (min-width: 768px) {
  .cta-box .cta-box__title {
    padding: 1.5625rem 1.25rem;
  }
}
.cta-box .cta-box__title picture {
  width: 18.9375rem;
  max-width: 100%;
  margin-inline: auto;
  display: block;
}
@media screen and (min-width: 376px) {
  .cta-box .cta-box__title picture {
    width: 303px;
  }
}
@media (min-width: 768px) {
  .cta-box .cta-box__title picture {
    width: 35.0625rem;
  }
}
.cta-box .cta-box__title img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.cta-box .cta__text {
  font-size: 1rem;
  line-height: 1.6;
  font-weight: 700;
  text-align: center;
}
@media screen and (min-width: 376px) {
  .cta-box .cta__text {
    font-size: 16px;
  }
}
@media screen and (min-width: 951px) {
  .cta-box .cta__text {
    font-size: 18px;
  }
}
.cta-box .cta__text span {
  color: #F2761E;
}

.cta {
  overflow: hidden;
  position: relative;
  z-index: 1;
  padding-block: 102px 180px;
  background: url(../img/webp/cta-bg-pc.webp) no-repeat center center/cover;
}
@media (min-width: 768px) {
  .cta {
    padding-block: 92px 80px;
  }
}
@media screen and (min-width: 1200px) {
  .cta {
    padding-block: 5.75rem 5rem;
  }
}
.cta::before, .cta::after {
  content: "";
  position: absolute;
  z-index: 2;
}
.cta::before {
  width: 12.9375rem;
  height: 13.75rem;
  left: -1.25rem;
  bottom: -0.625rem;
  background: url(../img/webp/clip-person-cta-1.webp) no-repeat center center/contain;
}
@media screen and (min-width: 376px) and (max-width: 767px) {
  .cta::before {
    width: 207px;
    height: 220px;
    left: -20px;
    bottom: -10px;
  }
}
@media (min-width: 768px) {
  .cta::before {
    display: none;
  }
}
.cta::after {
  width: 11.0625rem;
  height: 11.25rem;
  background: url(../img/webp/clip-person-cta-2.webp) no-repeat center center/contain;
  right: -8px;
  bottom: 0;
}
@media screen and (min-width: 376px) and (max-width: 767px) {
  .cta::after {
    width: 177px;
    height: 180px;
  }
}
@media (min-width: 768px) {
  .cta::after {
    display: none;
  }
}

.cta__inner {
  max-width: 1440px;
  width: 100%;
  margin-inline: auto;
  position: relative;
  padding-inline: 0.9375rem;
}
@media screen and (min-width: 376px) {
  .cta__inner {
    padding-inline: 15px;
  }
}
@media (min-width: 768px) {
  .cta__inner {
    padding-inline: 0.9375rem;
  }
  .cta__inner::before, .cta__inner::after {
    content: "";
    position: absolute;
    z-index: 1;
  }
  .cta__inner::before {
    left: 0;
    width: 207px;
    height: 220px;
    bottom: -80px;
    background: url(../img/webp/clip-person-cta-1.webp) no-repeat center center/contain;
  }
  .cta__inner::after {
    right: 0;
    background: url(../img/webp/clip-person-cta-2.webp) no-repeat center center/contain;
    width: 177px;
    height: 180px;
    bottom: -81px;
  }
}
@media screen and (min-width: 951px) {
  .cta__inner::before {
    width: 290px;
    height: 388px;
    bottom: -90px;
  }
}
@media screen and (min-width: 1321px) {
  .cta__inner::before {
    width: 310px;
    height: 408px;
    bottom: -86px;
  }
}
@media screen and (min-width: 951px) {
  .cta__inner::after {
    width: 300px;
    height: 335px;
    bottom: -81px;
  }
}
@media screen and (min-width: 1321px) {
  .cta__inner::after {
    width: 322px;
    height: 357px;
    bottom: -81px;
  }
}

.cta__content {
  max-width: 21.5625rem;
  width: 100%;
  margin-inline: auto;
  background: #FFF;
  padding: 2.71875rem 0.9375rem 2.03125rem;
  border-radius: 1rem;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 24px;
}
@media screen and (min-width: 376px) {
  .cta__content {
    max-width: 500px;
    padding: 43.5px 15px 32.5px;
    border-radius: 16px;
  }
}
@media (min-width: 768px) {
  .cta__content {
    max-width: 700px;
    padding: 66px 40px;
    border-radius: 1.25rem;
  }
}
@media screen and (min-width: 951px) {
  .cta__content {
    max-width: 900px;
    gap: 30px;
  }
}
@media screen and (min-width: 1321px) {
  .cta__content {
    max-width: 1200px;
    gap: 32px;
  }
}

.cta__title {
  width: 20.9375rem;
  max-width: 100%;
  margin-inline: auto;
  margin-top: -26%;
}
@media screen and (min-width: 376px) {
  .cta__title {
    width: 335px;
    margin-top: -68px;
  }
}
@media (min-width: 768px) {
  .cta__title {
    margin-top: -13%;
    width: 590px;
  }
}
@media screen and (min-width: 951px) {
  .cta__title {
    margin-top: -10%;
  }
}
@media screen and (min-width: 1321px) {
  .cta__title {
    margin-top: -7%;
  }
}
.cta__title img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.cta__text {
  font-size: 1rem;
  line-height: 1.6;
  font-weight: 700;
  text-align: center;
}
@media screen and (min-width: 376px) {
  .cta__text {
    font-size: 16px;
  }
}
@media screen and (min-width: 951px) {
  .cta__text {
    font-size: 18px;
  }
}
.cta__text span {
  color: #F2761E;
}

.cta__sub-text {
  font-size: 0.75rem;
  line-height: 1.6;
  font-weight: 500;
  text-align: center;
  margin-top: -0.5rem;
}
@media screen and (min-width: 376px) {
  .cta__sub-text {
    font-size: 12px;
    margin-top: -8px;
  }
}
@media (min-width: 768px) {
  .cta__sub-text {
    font-size: 14px;
    margin-top: initial;
  }
}

.cta__wrap {
  position: relative;
  z-index: 2;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-orient: vertical;
  -webkit-box-direction: reverse;
  -webkit-flex-direction: column-reverse;
      -ms-flex-direction: column-reverse;
          flex-direction: column-reverse;
  gap: 1rem;
}
@media screen and (min-width: 376px) {
  .cta__wrap {
    gap: 16px;
  }
}
@media (min-width: 768px) {
  .cta__wrap {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-direction: row;
        -ms-flex-direction: row;
            flex-direction: row;
    gap: 1.25rem;
  }
}
@media screen and (min-width: 951px) {
  .cta__wrap {
    gap: 20px;
  }
}
@media screen and (min-width: 1321px) {
  .cta__wrap {
    gap: 40px;
  }
}

.cta-btn {
  font-size: 1rem;
  font-weight: 900;
  line-height: 1;
  color: #FFF;
  background: #F6A522;
  border: 2px solid #111;
  -webkit-box-shadow: 0 4px 0 rgba(0, 0, 0, 0.2);
          box-shadow: 0 4px 0 rgba(0, 0, 0, 0.2);
  border-radius: 6.25rem;
  padding-inline: 0.625rem 1rem;
  padding-block: 1.25rem;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  width: 17.5rem;
  height: 3.75rem;
  max-width: 100%;
  position: relative;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-transition: background 0.3s ease;
  transition: background 0.3s ease;
}
@media screen and (min-width: 376px) {
  .cta-btn {
    width: 280px;
    height: 60px;
    font-size: clamp(16px, 1.25rem, 20px);
    padding-block: 16px;
    padding-inline: 10px 16px;
  }
}
@media (min-width: 768px) {
  .cta-btn {
    width: 240px;
    height: 5.375rem;
    padding-block: 20px;
    padding-inline: 32px;
  }
}
@media screen and (min-width: 951px) {
  .cta-btn {
    width: 320px;
  }
}
@media screen and (min-width: 1321px) {
  .cta-btn {
    width: 394px;
    padding-block: 23px;
  }
}
.cta-btn::before {
  content: "";
  background-image: url(../img/svg/mail-icon-orange.svg);
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center center;
  width: 2.03125rem;
  height: 2.03125rem;
  -webkit-transition: background 0.3s ease;
  transition: background 0.3s ease;
}
@media screen and (min-width: 376px) {
  .cta-btn::before {
    width: 32.5px;
    height: 32.5px;
  }
}
@media screen and (min-width: 951px) {
  .cta-btn::before {
    width: 36px;
    height: 36px;
  }
}
.cta-btn::after {
  content: "";
  background: url(../img/svg/arrow-right-white.svg) no-repeat center center/contain;
  width: 0.75rem;
  height: 0.9375rem;
}
@media screen and (min-width: 376px) {
  .cta-btn::after {
    width: 12px;
    height: 15px;
  }
}
@media (min-width: 768px) {
  .cta-btn::after {
    width: 0.75rem;
    height: 1.25rem;
  }
}
@media (any-hover: hover) {
  .cta-btn:hover {
    background: #111;
  }
  .cta-btn:hover::before {
    background-image: url(../img/svg/mail-icon-black.svg);
  }
}

.cta--home {
  overflow: visible;
  padding-block: 15.8125rem 5rem;
  background: url(../img/webp/cta-home-bg-sp.webp) no-repeat center center/cover;
}
@media screen and (min-width: 376px) {
  .cta--home {
    padding-block: 253px 80px;
  }
}
@media (min-width: 768px) {
  .cta--home {
    padding-block: 17.375rem 6.25rem;
    background: url(../img/webp/cta-home-bg-pc.webp) no-repeat center center/cover;
  }
}
.cta--home::before, .cta--home::after {
  content: none;
}
.cta--home .cta__title {
  position: absolute;
  left: 50%;
  translate: -50%;
  top: -25%;
  z-index: -1;
  width: 100%;
  max-width: 100%;
  margin-inline: auto;
}
@media screen and (min-width: 376px) {
  .cta--home .cta__title {
    width: 347px;
    top: -120px;
  }
}
@media (min-width: 768px) {
  .cta--home .cta__title {
    width: 500px;
    height: auto;
    top: -39%;
  }
}
@media screen and (min-width: 951px) {
  .cta--home .cta__title {
    width: 650px;
    top: -54%;
  }
}
@media screen and (min-width: 1201px) {
  .cta--home .cta__title {
    width: 750px;
    top: -54%;
  }
}
@media screen and (min-width: 1321px) {
  .cta--home .cta__title {
    width: 929px;
    height: 450px;
    top: -83%;
  }
}
@media (min-width: 768px) {
  .cta--home .cta__inner {
    width: 69.0625rem;
  }
}
.cta--home .cta__inner::before, .cta--home .cta__inner::after {
  content: none;
}
.cta--home .cta__content {
  position: relative;
  border: 0.1875rem solid #111;
  max-width: 21.5625rem;
  width: 100%;
  margin-inline: auto;
  background: #FFF;
  padding: 5.625rem 0.9375rem 2rem;
  border-radius: 1rem;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 1.5rem;
}
@media screen and (min-width: 376px) {
  .cta--home .cta__content {
    max-width: 500px;
    padding: 90px 15px 32px;
    border: 3px solid #111;
    gap: 24px;
    border-radius: 16px;
  }
}
@media (min-width: 768px) {
  .cta--home .cta__content {
    max-width: 600px;
    padding: 40px 30px;
    border: 4px solid #111;
    border-radius: 1.25rem;
  }
}
@media screen and (min-width: 951px) {
  .cta--home .cta__content {
    max-width: 750px;
    gap: 30px;
  }
}
@media screen and (min-width: 1201px) {
  .cta--home .cta__content {
    max-width: 1000px;
    gap: 32px;
  }
}
.cta--home .cta__content::before {
  content: "";
  background: url(../img/webp/contact-bubble-sp.webp) no-repeat center center/cover;
  width: 10.625rem;
  height: 6.6875rem;
  position: absolute;
  top: -2.375rem;
  left: 50%;
  translate: -50%;
  z-index: 1;
}
@media screen and (min-width: 376px) {
  .cta--home .cta__content::before {
    top: -35px;
    width: clamp(170px, 11.875rem, 200px);
    height: clamp(107px, 7.3125rem, 135px);
  }
}
@media (min-width: 768px) {
  .cta--home .cta__content::before {
    top: -0.4375rem;
    left: -8.75rem;
    translate: initial;
    width: 13.875rem;
    height: 8.4375rem;
    background: url(../img/webp/contact-bubble-pc.webp) no-repeat center center/contain;
  }
}
@media screen and (min-width: 951px) {
  .cta--home .cta__content::before {
    left: -9.375rem;
  }
}
@media screen and (min-width: 1201px) {
  .cta--home .cta__content::before {
    left: -105px;
  }
}
.cta--home .request-guide {
  background: initial;
  margin-top: 1.875rem;
  padding: initial;
}
@media screen and (min-width: 376px) {
  .cta--home .request-guide {
    margin-top: 30px;
  }
}
@media (min-width: 768px) {
  .cta--home .request-guide {
    margin-top: 2.1875rem;
  }
}
.cta--home .request-guide__content {
  position: relative;
  border-radius: 1rem;
  padding-block: 5.625rem 2rem;
  padding-inline: 1.40625rem;
  background: #116BAF;
  width: 100%;
  max-width: 100%;
  margin-inline: auto;
}
@media screen and (min-width: 376px) {
  .cta--home .request-guide__content {
    width: clamp(375px, 31.25rem, 500px);
    padding-block: 90px 32px;
    padding-inline: 22.5px;
    border-radius: 16px;
  }
}
@media (min-width: 768px) {
  .cta--home .request-guide__content {
    width: 100%;
    max-width: 600px;
    padding-block: 2.5rem;
    padding-inline: 3.4375rem;
  }
}
@media screen and (min-width: 951px) {
  .cta--home .request-guide__content {
    max-width: 750px;
  }
}
@media screen and (min-width: 1201px) {
  .cta--home .request-guide__content {
    max-width: 1000px;
  }
}
.cta--home .request-guide__content::before {
  content: "";
  z-index: 1;
  background: url(../img/webp/guide-bubble-sp.webp) no-repeat center center/cover;
  width: 10.625rem;
  height: 6.6875rem;
  position: absolute;
  top: -1.875rem;
  left: 50%;
  translate: -50%;
}
@media screen and (min-width: 376px) {
  .cta--home .request-guide__content::before {
    top: -42px;
    width: clamp(170px, 11.875rem, 200px);
    height: clamp(107px, 7.3125rem, 135px);
  }
}
@media (min-width: 768px) {
  .cta--home .request-guide__content::before {
    top: -0.3125rem;
    left: -8.75rem;
    translate: initial;
    width: 13.875rem;
    height: 8.4375rem;
    background: url(../img/webp/guide-bubble-pc.webp) no-repeat center center/contain;
  }
}
@media screen and (min-width: 951px) {
  .cta--home .request-guide__content::before {
    left: -9.375rem;
  }
}
@media screen and (min-width: 1011px) {
  .cta--home .request-guide__content::before {
    left: -105px;
  }
}
.cta--home .request-guide__text {
  margin-top: initial;
}
.cta--home .cta__text {
  font-size: 0.875rem;
  line-height: 1.6;
  font-weight: 700;
  text-align: center;
}
@media screen and (min-width: 376px) {
  .cta--home .cta__text {
    font-size: 14px;
  }
}
@media screen and (min-width: 951px) {
  .cta--home .cta__text {
    font-size: 18px;
  }
}
.cta--home .cta__text span {
  color: #F2761E;
}

.drawer__icon {
  padding: 0;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 60px;
  height: 60px;
  background: #2698D5;
  z-index: 102;
  position: relative;
}
@media screen and (min-width: 951px) {
  .drawer__icon {
    display: none;
  }
}

.drawer__icon-inner {
  width: 20px;
  gap: 6px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
}

.drawer__icon--bars {
  width: 20px;
  height: 17px;
  z-index: 3;
  position: relative;
}

.drawer__icon--bar {
  position: absolute;
  left: 50%;
  translate: -50%;
  width: 20px;
  height: 2px;
  border-radius: 2px;
  background: #FFF;
  -webkit-transition: opacity 0.3s ease, -webkit-transform 0.4s ease;
  transition: opacity 0.3s ease, -webkit-transform 0.4s ease;
  transition: transform 0.4s ease, opacity 0.3s ease;
  transition: transform 0.4s ease, opacity 0.3s ease, -webkit-transform 0.4s ease;
  -webkit-transform-origin: center;
          transform-origin: center;
}
.drawer__icon--bar:nth-of-type(1) {
  top: 0;
}
.drawer__icon--bar:nth-of-type(2) {
  top: 50%;
  left: 50%;
  translate: -50% -50%;
}
.drawer__icon--bar:nth-of-type(3) {
  bottom: 0;
}

.drawer__icon.js-show {
  background: #FFF;
}
.drawer__icon.js-show .drawer__icon--bar:nth-of-type(1) {
  rotate: 35deg;
  top: 7px;
  background: #116BAF;
  width: 25px;
  height: 2px;
}
.drawer__icon.js-show .drawer__icon--bar:nth-of-type(2) {
  display: none;
}
.drawer__icon.js-show .drawer__icon--bar:nth-of-type(3) {
  rotate: -35deg;
  bottom: 8px;
  background: #116BAF;
  width: 25px;
  height: 2px;
}

.drawer {
  position: fixed;
  z-index: 101;
  right: 0;
  top: 0;
  width: 100%;
  height: 100vh;
  height: 100svh;
  overflow-y: scroll;
  scrollbar-width: none !important;
  background: #2698D5;
  opacity: 0;
  visibility: hidden;
  -webkit-transition: opacity 0.4s ease;
  transition: opacity 0.4s ease;
}
.drawer.js-show {
  opacity: 1;
  visibility: visible;
}
.drawer .menu {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
}
.drawer .menu .menu-item a {
  color: #FFF;
  font-size: 0.875rem;
  font-weight: 700;
  line-height: 1.6;
  display: block;
}
@media screen and (min-width: 376px) {
  .drawer .menu .menu-item a {
    font-size: 14px;
  }
}
.drawer .drawer__top-menu {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: (1fr)[2];
  grid-template-columns: repeat(2, 1fr);
  gap: 0.5rem;
}
@media screen and (min-width: 376px) {
  .drawer .drawer__top-menu {
    gap: 8px;
  }
}
.drawer .drawer__top-menu > .menu-item:nth-child(1) {
  background: #116BAF;
  padding: 24px 22px 24px 16px;
  border-radius: 10px;
  grid-column: 1/-1;
}
.drawer .drawer__top-menu > .menu-item:nth-child(n+2) a {
  position: relative;
  background: #116BAF;
  padding: 0.75rem 1rem;
  border-radius: 10px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
@media screen and (min-width: 376px) {
  .drawer .drawer__top-menu > .menu-item:nth-child(n+2) a {
    padding: 12px 16px;
  }
}
.drawer .drawer__top-menu > .menu-item:nth-child(n+2) a::after {
  content: "";
  width: 1.25rem;
  height: 1.25rem;
  background: url(../img/svg/arrow-circle-right-dark-blue.svg) no-repeat center center/contain;
}
@media screen and (min-width: 376px) {
  .drawer .drawer__top-menu > .menu-item:nth-child(n+2) a::after {
    width: 20px;
    height: 20px;
  }
}
.drawer .drawer__sub-menu-content {
  margin-top: 16px;
}
.drawer .drawer__sub-menu-content .sub-menu {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: (1fr)[2];
  grid-template-columns: repeat(2, 1fr);
  gap: 8px;
}
.drawer .drawer__sub-menu-content .sub-menu .menu-item a {
  width: 100%;
  height: 4.25rem;
}
@media screen and (min-width: 376px) {
  .drawer .drawer__sub-menu-content .sub-menu .menu-item a {
    height: 68px;
  }
}
@media screen and (min-width: 451px) {
  .drawer .drawer__sub-menu-content .sub-menu .menu-item a {
    height: 86px;
  }
}
@media screen and (min-width: 951px) {
  .drawer .drawer__sub-menu-content .sub-menu .menu-item a {
    height: 121px;
  }
}
.drawer .drawer__bottom-menu {
  border-top: 1px solid #FFF;
  padding-top: 2rem;
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: (1fr)[2];
  grid-template-columns: repeat(2, 1fr);
  gap: 1.5rem 2rem;
}
@media screen and (min-width: 376px) {
  .drawer .drawer__bottom-menu {
    gap: 24px 32px;
    padding-top: 32px;
  }
}
.drawer .drawer__bottom-menu .menu-item a {
  color: #FFF;
  font-size: 0.8125rem;
  font-weight: 700;
  line-height: 1.6;
  position: relative;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: start;
  -webkit-justify-content: flex-start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  gap: 8px;
}
@media screen and (min-width: 376px) {
  .drawer .drawer__bottom-menu .menu-item a {
    font-size: 13px;
  }
}
.drawer .drawer__bottom-menu .menu-item a::before {
  content: "";
  width: 10px;
  height: 10px;
  background: url(../img/svg/arrow-right-white.svg) no-repeat center center/contain;
}

.drawer__body {
  width: 100%;
  max-width: 375px;
  margin-inline: auto;
  height: -webkit-fit-content;
  height: -moz-fit-content;
  height: fit-content;
  min-height: 100%;
  padding-block: 5.3125rem 4.0625rem;
  padding-inline: 0.9375rem;
}
@media screen and (min-width: 376px) {
  .drawer__body {
    padding-block: 85px 65px;
    padding-inline: 15px;
  }
}
@media screen and (min-width: 451px) {
  .drawer__body {
    max-width: 450px;
  }
}
@media screen and (min-width: 951px) {
  .drawer__body {
    max-width: 600px;
  }
}

.drawer__inner {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  row-gap: 2rem;
}
@media screen and (min-width: 376px) {
  .drawer__inner {
    row-gap: 32px;
  }
}

.drawer__banner {
  width: 100%;
}
.drawer__banner img {
  width: 100%;
  height: 100%;
}

.features-voice {
  position: relative;
  z-index: 1;
  background: url(../img/webp/page-cta-bg-pc.webp) no-repeat center center/cover;
  padding-block: 4.6875rem 4rem;
  padding-inline: 0.9375rem;
}
@media screen and (min-width: 376px) {
  .features-voice {
    padding-block: 75px 64px;
    padding-inline: 15px;
  }
}
@media (min-width: 768px) {
  .features-voice {
    padding-block: 6.25rem 7.375rem;
    padding-inline: 1.5625rem;
  }
}

.features-voice__content {
  width: 100%;
  max-width: 100%;
  margin-inline: auto;
}
@media screen and (min-width: 376px) {
  .features-voice__content {
    width: clamp(375px, 31.25rem, 500px);
  }
}
@media (min-width: 768px) {
  .features-voice__content {
    width: 75rem;
  }
}

.features-voice__top-img {
  width: 21.5625rem;
  max-width: 100%;
  margin-inline: auto;
  margin-bottom: -0.625rem;
}
@media screen and (min-width: 376px) {
  .features-voice__top-img {
    width: 345px;
    margin-bottom: -10px;
  }
}
@media (min-width: 768px) {
  .features-voice__top-img {
    width: 57.8125rem;
    margin-bottom: -0.9375rem;
  }
}
.features-voice__top-img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.top-features {
  background: #D7EEFF;
  position: relative;
  z-index: 1;
}

.top-features__inner {
  width: 91.875rem;
  max-width: 100%;
  margin-inline: auto;
  position: relative;
  padding-block: 5rem 0;
}
@media screen and (min-width: 376px) {
  .top-features__inner {
    padding-block: 80px 0;
  }
}
@media (min-width: 768px) {
  .top-features__inner {
    padding-block: 3.75rem 6.875rem;
  }
  .top-features__inner::after {
    content: "";
    position: absolute;
    z-index: 1;
    width: 11.375rem;
    height: 8.9375rem;
    bottom: 0;
    right: 0;
    background: url(../img/webp/clip-person-point-pc.webp) no-repeat center center/cover;
  }
}
@media screen and (min-width: 768px) and (min-width: 376px) {
  .top-features__inner::after {
    width: 182px;
    height: 143px;
  }
}
@media (min-width: 768px) and (min-width: 768px) {
  .top-features__inner::after {
    width: 23.1875rem;
    height: 18.3125rem;
  }
}
.top-features__inner::before {
  content: "";
  position: absolute;
  z-index: 1;
  width: 13.4375rem;
  height: 13.125rem;
  top: 0;
  left: 0;
  background: url(../img/webp/paint-blue03-sp.webp) no-repeat center center/cover;
}
@media screen and (min-width: 376px) {
  .top-features__inner::before {
    width: 215px;
    height: 210px;
  }
}
@media (min-width: 768px) {
  .top-features__inner::before {
    width: 26.9375rem;
    height: 18.75rem;
    background: url(../img/webp/paint-blue-pc.webp) no-repeat center center/cover;
  }
}

.top-features__head {
  position: relative;
  z-index: 2;
  padding-inline: 0.9375rem;
}
@media screen and (min-width: 376px) {
  .top-features__head {
    width: 500px;
    max-width: 100%;
    margin-inline: auto;
    padding-inline: 15px;
  }
}
@media (min-width: 768px) {
  .top-features__head {
    padding-inline: 1.5625rem;
    width: 100%;
  }
}

.top-features__title {
  width: 21.3125rem;
  max-width: 100%;
  margin-inline: auto;
}
@media screen and (min-width: 376px) {
  .top-features__title {
    width: 341px;
  }
}
@media (min-width: 768px) {
  .top-features__title {
    width: 47.1875rem;
  }
}
.top-features__title img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.top-features__text {
  font-size: 0.875rem;
  font-weight: 700;
  line-height: 1.6;
  color: #111;
  text-align: left;
  margin-top: 2.5rem;
}
@media screen and (min-width: 376px) {
  .top-features__text {
    font-size: 14px;
    margin-top: 40px;
  }
}
@media (min-width: 768px) {
  .top-features__text {
    font-size: clamp(16px, 1.125rem, 18px);
    margin-top: 4rem;
    text-align: center;
  }
}
.top-features__text span {
  background: #FDD652;
}
.top-features__text .pc {
  display: none;
}
@media screen and (min-width: 820px) {
  .top-features__text .pc {
    display: block;
  }
}

.features__content {
  width: 100%;
  max-width: 100%;
  margin-inline: auto;
  margin-top: 8.75rem;
  position: relative;
}
@media screen and (min-width: 376px) {
  .features__content {
    margin-top: 140px;
    width: clamp(375px, 31.25rem, 500px);
  }
}
@media (min-width: 768px) {
  .features__content {
    width: 90rem;
    margin-top: 5rem;
  }
}
.features__content::after {
  content: "";
  position: absolute;
  z-index: 1;
  width: 11.375rem;
  height: 8.9375rem;
  bottom: 0;
  right: 0;
  background: url(../img/webp/clip-person-point-pc.webp) no-repeat center center/cover;
}
@media screen and (min-width: 376px) {
  .features__content::after {
    width: 220px;
    height: 160px;
  }
}
@media (min-width: 768px) {
  .features__content::after {
    content: none;
  }
}

.features__items {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 8.25rem;
}
@media screen and (min-width: 376px) {
  .features__items {
    gap: 132px;
  }
}
@media (min-width: 768px) {
  .features__items {
    gap: 3.5rem;
  }
}

@media (min-width: 768px) {
  .features__item {
    max-width: 100%;
    margin-left: auto;
    width: 84.0625rem;
    padding-left: 1.5625rem;
  }
}
@media (min-width: 768px) {
  .features__item:nth-child(even) {
    margin-right: auto;
    margin-left: initial;
    padding-left: initial;
    padding-right: 1.5625rem;
  }
}
@media (min-width: 768px) {
  .features__item:nth-child(even) .features__body {
    border-radius: 0 1.25rem 1.25rem 0;
    padding: 4rem 16.875rem 4rem 1.875rem;
    margin-right: 20rem;
    margin-left: initial;
  }
}
@media screen and (min-width: 951px) and (max-width: 1260px) {
  .features__item:nth-child(even) .features__body {
    padding: 4rem 16.875rem 4rem 3.125rem;
  }
}
@media screen and (min-width: 1261px) {
  .features__item:nth-child(even) .features__body {
    padding: 4rem 16.875rem 4rem 7.5rem;
  }
}
@media (min-width: 768px) {
  .features__item:nth-child(even) .features__head-img {
    left: initial;
    right: -20rem;
  }
}

.features__head-img {
  content: "";
  position: absolute;
  top: -20%;
  translate: -50%;
  left: 50%;
  z-index: 1;
  width: 21.5625rem;
  max-width: 100%;
}
@media screen and (min-width: 376px) {
  .features__head-img {
    width: 345px;
  }
}
@media (min-width: 768px) {
  .features__head-img {
    top: 50%;
    left: -20rem;
    translate: 0 -50%;
    width: 34.6875rem;
  }
}
.features__head-img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.features__body {
  position: relative;
  background: #FFF;
  padding: 10.1875rem 0.9375rem 3rem;
}
@media screen and (min-width: 376px) {
  .features__body {
    padding: 163px 15px 48px;
  }
}
@media screen and (min-width: 501px) and (max-width: 767px) {
  .features__body {
    border-radius: 16px;
  }
}
@media (min-width: 768px) {
  .features__body {
    padding: 4rem 1.875rem 4rem 16.875rem;
    border-radius: 1.25rem 0 0 1.25rem;
    margin-left: 20rem;
  }
}
@media screen and (min-width: 951px) and (max-width: 1260px) {
  .features__body {
    padding: 4rem 3.125rem 4rem 16.875rem;
  }
}
@media screen and (min-width: 1261px) {
  .features__body {
    padding: 4rem 7.5rem 4rem 16.875rem;
  }
}

.features__head {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0.5rem;
}
@media screen and (min-width: 376px) {
  .features__head {
    gap: 8px;
  }
}
@media (min-width: 768px) {
  .features__head {
    gap: 0.5rem;
  }
}

.features-num {
  display: block;
  width: 4.375rem;
  max-width: 100%;
}
@media screen and (min-width: 376px) {
  .features-num {
    width: 70px;
  }
}
@media (min-width: 768px) {
  .features-num {
    width: 7.9375rem;
  }
}
.features-num img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.features__head-title {
  font-size: 1.25rem;
  font-weight: 900;
  line-height: 1.6;
  color: #116BAF;
  -webkit-box-flex: 1;
  -webkit-flex: 1;
      -ms-flex: 1;
          flex: 1;
}
@media screen and (min-width: 376px) {
  .features__head-title {
    font-size: 20px;
  }
}
@media (min-width: 768px) {
  .features__head-title {
    font-size: 1.75rem;
  }
}

.features__body-text {
  font-size: 0.875rem;
  font-weight: 500;
  line-height: 1.6;
  color: #111;
  margin-top: 1rem;
}
@media screen and (min-width: 376px) {
  .features__body-text {
    font-size: 14px;
    margin-top: 16px;
  }
}
@media (min-width: 768px) {
  .features__body-text {
    font-size: clamp(14px, 1rem, 16px);
    margin-top: 1.5rem;
    letter-spacing: 0.05em;
  }
}
.features__body-text span {
  color: #F2761E;
  font-weight: 700;
}

.features__btn {
  margin-top: 3rem;
}
@media screen and (min-width: 376px) {
  .features__btn {
    margin-top: 48px;
  }
}
@media (min-width: 768px) {
  .features__btn {
    margin-top: 4rem;
  }
}
.features__btn .btn-blue {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  padding-inline: 4rem;
}
@media screen and (min-width: 376px) {
  .features__btn .btn-blue {
    padding-inline: 64px;
  }
}
@media (min-width: 768px) {
  .features__btn .btn-blue {
    padding-inline: 6.25rem;
  }
}

.features__point {
  padding: 4rem 0.9375rem 7.8125rem;
  background: #2698D5;
  width: 100%;
  max-width: 100%;
  margin-inline: auto;
  margin-top: 5.125rem;
}
@media screen and (min-width: 376px) {
  .features__point {
    padding: 64px 15px 125px;
    border-radius: 20px;
    width: 500px;
    margin-top: 82px;
  }
}
@media (min-width: 768px) {
  .features__point {
    padding: 2.5rem 2.5rem 3.25rem;
    border-radius: 1.25rem;
    margin-top: 5rem;
    width: calc(100% - 15rem);
    max-width: 75rem;
  }
}

.features__point-title {
  width: 15.3125rem;
  max-width: 100%;
  margin-inline: auto;
}
@media screen and (min-width: 376px) {
  .features__point-title {
    width: 245px;
  }
}
@media (min-width: 768px) {
  .features__point-title {
    width: 22.9375rem;
  }
}
.features__point-title img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.features__point-content {
  margin-top: 2rem;
  padding: 1.5rem 1rem;
  border-radius: 1rem;
  background: #FFF;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 1.5rem;
}
@media screen and (min-width: 376px) {
  .features__point-content {
    gap: 24px;
    border-radius: 16px;
    padding: 24px 16px;
    margin-top: 32px;
  }
}
@media (min-width: 768px) {
  .features__point-content {
    padding: 2.5rem;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-direction: row;
        -ms-flex-direction: row;
            flex-direction: row;
    gap: 5rem;
    border-radius: 1.25rem;
    margin-top: 2rem;
  }
}

.features__point-item-img {
  width: 100%;
  max-width: 100%;
  margin-inline: auto;
}
@media (min-width: 768px) {
  .features__point-item-img {
    width: 21.875rem;
    height: -webkit-fit-content;
    height: -moz-fit-content;
    height: fit-content;
  }
}
.features__point-item-img img {
  width: 100%;
  height: 100%;
}

.features__point-item-body {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 1rem;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}
@media screen and (min-width: 376px) {
  .features__point-item-body {
    gap: 16px;
  }
}
@media (min-width: 768px) {
  .features__point-item-body {
    -webkit-box-flex: 1;
    -webkit-flex: 1;
        -ms-flex: 1;
            flex: 1;
    gap: 1.5rem;
    -webkit-box-align: initial;
    -webkit-align-items: initial;
        -ms-flex-align: initial;
            align-items: initial;
  }
}

.features__point-item-title {
  font-size: 1.25rem;
  font-weight: 700;
  line-height: 1.6;
  color: #111;
}
@media screen and (min-width: 376px) {
  .features__point-item-title {
    font-size: 20px;
  }
}
@media (min-width: 768px) {
  .features__point-item-title {
    font-size: 28px;
    font-size: clamp(20px, 1.75rem, 28px);
    margin-top: initial;
  }
}
.features__point-item-title span {
  background: -webkit-gradient(linear, left top, left bottom, color-stop(60%, transparent), color-stop(60%, #FFEB15));
  background: linear-gradient(transparent 60%, #FFEB15 60%);
}
.features__point-item-title strong {
  color: #F2761E;
}

.features__point-item-text {
  font-size: 0.875rem;
  font-weight: 500;
  line-height: 1.6;
  color: #111;
}
@media screen and (min-width: 376px) {
  .features__point-item-text {
    font-size: 14px;
  }
}
@media (min-width: 768px) {
  .features__point-item-text {
    font-size: 16px;
  }
}

.first-guide {
  background: url(../img/webp/first-guide-bg-sp.webp) no-repeat top center/cover;
}
@media (min-width: 768px) {
  .first-guide {
    background: url(../img/webp/first-guide-bg-pc.webp) no-repeat top center/cover;
  }
}
.first-guide a {
  -webkit-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
}
@media (any-hover: hover) {
  .first-guide a:hover {
    opacity: 0.6;
  }
}

.first-guide__inner {
  padding-block: 5rem;
}
@media screen and (min-width: 376px) {
  .first-guide__inner {
    padding-block: 80px;
  }
}
@media (min-width: 768px) {
  .first-guide__inner {
    padding-block: 3.75rem 6.25rem;
  }
}

.first-guide__title {
  width: 19.75rem;
  max-width: 100%;
}
@media screen and (min-width: 376px) {
  .first-guide__title {
    width: 316px;
    margin-inline: auto;
  }
}
@media (min-width: 768px) {
  .first-guide__title {
    width: 48.125rem;
  }
}
.first-guide__title img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.first-guide__items {
  width: 100%;
  max-width: 100%;
  margin-inline: auto;
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: (minmax(0, 1fr))[1];
  grid-template-columns: repeat(1, minmax(0, 1fr));
  gap: 1.5rem;
  margin-top: 2.5rem;
}
@media screen and (min-width: 376px) {
  .first-guide__items {
    gap: 24px;
    margin-top: 40px;
    width: 500px;
  }
}
@media (min-width: 768px) {
  .first-guide__items {
    -ms-grid-columns: (minmax(0, 1fr))[2];
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 1.5rem;
    margin-top: 4rem;
    width: 100%;
  }
}
@media screen and (min-width: 1001px) {
  .first-guide__items {
    -ms-grid-columns: (minmax(0, 1fr))[4];
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 1.5rem;
    margin-top: 4rem;
  }
}

.first-guide__item {
  border-radius: 1rem;
  background: #FFF;
  padding: 1.5rem 1rem;
  position: relative;
}
@media screen and (min-width: 376px) {
  .first-guide__item {
    padding: 24px 16px;
    border-radius: 16px;
  }
}
@media (min-width: 768px) {
  .first-guide__item {
    padding: 1.5rem 1rem;
    border-radius: 1rem;
  }
}
.first-guide__item::after {
  content: "";
  position: absolute;
  top: -1.0625rem;
  left: -1.125rem;
  width: 5.125rem;
  height: 5.125rem;
  background: url(../img/webp/point-badge01.webp) no-repeat center center/cover;
}
@media screen and (min-width: 376px) {
  .first-guide__item::after {
    top: -17px;
    left: -18px;
    width: clamp(82px, 21.86rem, 90px);
    height: clamp(82px, 21.86rem, 90px);
  }
}
@media (min-width: 768px) {
  .first-guide__item::after {
    top: -1.6875rem;
    left: -1.5625rem;
    width: 5.625rem;
    height: 5.625rem;
  }
}
.first-guide__item:nth-child(2)::after {
  background: url(../img/webp/point-badge02.webp) no-repeat center center/cover;
}
.first-guide__item:nth-child(3)::after {
  background: url(../img/webp/point-badge03.webp) no-repeat center center/cover;
}
.first-guide__item:nth-child(4)::after {
  background: url(../img/webp/point-badge04.webp) no-repeat center center/cover;
}

.first-guide__item-img {
  position: relative;
  width: 100%;
}
.first-guide__item-img img {
  display: block;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.first-guide__item-title {
  font-size: 1.25rem;
  font-weight: 900;
  line-height: 1.6;
  color: #116BAF;
  text-align: center;
  margin-top: 1rem;
}
@media screen and (min-width: 376px) {
  .first-guide__item-title {
    font-size: 20px;
    margin-top: 16px;
  }
}
@media (min-width: 768px) {
  .first-guide__item-title {
    font-size: 22px;
  }
}

.first-guide__item-text {
  font-size: 0.875rem;
  font-weight: 500;
  line-height: 1.6;
  color: #111;
  margin-top: 0.5rem;
}
@media screen and (min-width: 376px) {
  .first-guide__item-text {
    font-size: 14px;
    margin-top: 8px;
  }
}
@media (min-width: 768px) {
  .first-guide__item-text {
    font-size: 16px;
  }
}

.first-guide__bottom {
  margin-top: 1.5rem;
  text-align: end;
}
@media screen and (min-width: 376px) {
  .first-guide__bottom {
    margin-top: 24px;
  }
}
@media (min-width: 768px) {
  .first-guide__bottom {
    margin-top: 1.5rem;
  }
}

.first-guide__more {
  -webkit-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
  font-size: 0.875rem;
  font-weight: 700;
  line-height: 1.6;
  color: #111;
  position: relative;
  display: -webkit-inline-box;
  display: -webkit-inline-flex;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: end;
  -webkit-justify-content: flex-end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  gap: 0.625rem;
}
@media screen and (min-width: 376px) {
  .first-guide__more {
    font-size: 14px;
    gap: 10px;
  }
}
@media (min-width: 768px) {
  .first-guide__more {
    font-size: 16px;
    gap: 0.625rem;
  }
}
.first-guide__more::after {
  content: "";
  background: url(../img/svg/arrow-circle-right-bg-black.svg) no-repeat center center/contain;
  width: 1.25rem;
  height: 1.25rem;
}
@media screen and (min-width: 376px) {
  .first-guide__more::after {
    width: 25px;
    height: 25px;
  }
}
@media (min-width: 768px) {
  .first-guide__more::after {
    width: 1.875rem;
    height: 1.875rem;
  }
}
@media (any-hover: hover) {
  .first-guide__more:hover {
    opacity: 0.6;
  }
}

.first-guide__btn {
  margin-top: 3rem;
}
@media screen and (min-width: 376px) {
  .first-guide__btn {
    margin-top: 48px;
  }
}
@media (min-width: 768px) {
  .first-guide__btn {
    margin-top: 4rem;
  }
}

.fixed-nav {
  background: rgba(255, 255, 255, 0.9);
  position: fixed;
  z-index: 101;
  left: 0;
  bottom: 0;
  width: 100%;
  pointer-events: none;
  -webkit-transform: translateY(100%);
          transform: translateY(100%);
  opacity: 0;
  -webkit-transition: opacity 0.6s ease-in-out, -webkit-transform 0.6s ease-in-out;
  transition: opacity 0.6s ease-in-out, -webkit-transform 0.6s ease-in-out;
  transition: transform 0.6s ease-in-out, opacity 0.6s ease-in-out;
  transition: transform 0.6s ease-in-out, opacity 0.6s ease-in-out, -webkit-transform 0.6s ease-in-out;
}
.fixed-nav.--show {
  -webkit-transform: translateY(0px);
          transform: translateY(0px);
  opacity: 1;
  pointer-events: auto;
}

.fixed-nav__inner {
  padding: 0.5rem;
}
@media screen and (min-width: 376px) {
  .fixed-nav__inner {
    padding: 8px;
  }
}
@media (min-width: 768px) {
  .fixed-nav__inner {
    padding-block: 0.75rem;
    padding-inline: 1.5rem;
  }
}

.fixed-nav-items {
  gap: 0.375rem;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
}
@media screen and (min-width: 376px) {
  .fixed-nav-items {
    gap: 6px;
  }
}
@media (min-width: 768px) {
  .fixed-nav-items {
    gap: 1rem;
  }
}

.fixed-nav-item.--home {
  width: 7.125rem;
}
@media screen and (min-width: 376px) {
  .fixed-nav-item.--home {
    width: 114px;
  }
}
@media (min-width: 768px) {
  .fixed-nav-item.--home {
    width: 14.625rem;
  }
}
.fixed-nav-item.--phone {
  margin-left: 0.25rem;
  width: 3.375rem;
  border-radius: 0.5rem;
  -webkit-box-shadow: 0 2px 0 rgba(0, 0, 0, 0.2);
          box-shadow: 0 2px 0 rgba(0, 0, 0, 0.2);
}
@media screen and (min-width: 376px) {
  .fixed-nav-item.--phone {
    margin-left: 4px;
    width: 54px;
    border-radius: 8px;
  }
}
@media (min-width: 768px) {
  .fixed-nav-item.--phone {
    -webkit-box-shadow: none;
            box-shadow: none;
    width: 18.375rem;
    margin-left: initial;
    border-radius: initial;
  }
}
.fixed-nav-item.--faq {
  width: 3.375rem;
}
@media screen and (min-width: 376px) {
  .fixed-nav-item.--faq {
    width: 54px;
  }
}
@media (min-width: 768px) {
  .fixed-nav-item.--faq {
    width: 16.3125rem;
    margin-left: 1.0625rem;
  }
}
.fixed-nav-item.--plan {
  width: 3.375rem;
}
@media screen and (min-width: 376px) {
  .fixed-nav-item.--plan {
    width: 54px;
  }
}
@media (min-width: 768px) {
  .fixed-nav-item.--plan {
    width: 16.3125rem;
  }
}
.fixed-nav-item.--contact {
  width: 3.375rem;
}
@media screen and (min-width: 376px) {
  .fixed-nav-item.--contact {
    width: 54px;
  }
}
@media (min-width: 768px) {
  .fixed-nav-item.--contact {
    width: 16.3125rem;
  }
}
.fixed-nav-item a {
  display: block;
}
.fixed-nav-item .btn {
  border-radius: 0.5rem;
  -webkit-box-shadow: 0 2px 0 rgba(0, 0, 0, 0.2);
          box-shadow: 0 2px 0 rgba(0, 0, 0, 0.2);
  -webkit-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
}
@media screen and (min-width: 376px) {
  .fixed-nav-item .btn {
    border-radius: 8px;
    -webkit-box-shadow: 0 3px 0 rgba(0, 0, 0, 0.2);
            box-shadow: 0 3px 0 rgba(0, 0, 0, 0.2);
  }
}
@media (min-width: 768px) {
  .fixed-nav-item .btn {
    border-radius: 6.25rem;
    -webkit-box-shadow: 0 4px 0 rgba(0, 0, 0, 0.2);
            box-shadow: 0 4px 0 rgba(0, 0, 0, 0.2);
  }
}
@media (min-width: 768px) and (any-hover: hover) {
  .fixed-nav-item .btn:hover {
    opacity: 0.6;
  }
}
.fixed-nav-item img {
  width: 100%;
  height: 100%;
}

.footer {
  background: #116BAF;
  position: relative;
  overflow: hidden;
}

.footer__inner {
  padding: 80px 15px 145px;
}
@media screen and (min-width: 376px) {
  .footer__inner {
    padding: 80px 15px 145px;
  }
}
@media screen and (min-width: 951px) {
  .footer__inner {
    padding: 76px 70px 160px;
  }
}
@media screen and (min-width: 1001px) {
  .footer__inner {
    padding: 76px 90px 150px;
  }
}
@media screen and (min-width: 1321px) {
  .footer__inner {
    padding: 76px 120px 200px;
  }
}

.footer__nav {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 24px;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  padding-bottom: 40px;
  border-bottom: 1px solid #FFF;
  width: 375px;
  max-width: 100%;
  margin-inline: auto;
}
@media screen and (min-width: 951px) {
  .footer__nav {
    width: 100%;
    margin-inline: initial;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-direction: row;
        -ms-flex-direction: row;
            flex-direction: row;
    padding-bottom: 64px;
    gap: 3.125rem;
  }
}
@media screen and (min-width: 1321px) {
  .footer__nav {
    gap: 5rem;
  }
}
.footer__nav .menu {
  width: 100%;
  max-width: 100%;
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: (1fr)[2];
  grid-template-columns: repeat(2, 1fr);
  gap: 24px;
}
@media screen and (min-width: 951px) {
  .footer__nav .menu {
    width: 200px;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
  }
}
@media screen and (min-width: 1321px) {
  .footer__nav .menu {
    width: 240px;
  }
}
.footer__nav .menu-item a {
  color: #FFF;
  font-size: 0.8125rem;
  line-height: 1.6;
  font-weight: 700;
  position: relative;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 8px;
}
@media screen and (min-width: 376px) {
  .footer__nav .menu-item a {
    font-size: 13px;
  }
}
@media (min-width: 768px) {
  .footer__nav .menu-item a {
    font-size: clamp(14px, 1rem, 16px);
  }
}
@media screen and (min-width: 951px) {
  .footer__nav .menu-item a {
    gap: 16px;
  }
}
.footer__nav .menu-item a::before {
  content: "";
  width: 10px;
  height: 11px;
  background: url(../img/svg/arrow-right-white.svg) no-repeat center center/contain;
}

.footer__content {
  display: block;
  margin-top: 35px;
  width: 375px;
  max-width: 100%;
  margin-inline: auto;
}
@media screen and (min-width: 951px) {
  .footer__content {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-align: end;
    -webkit-align-items: flex-end;
        -ms-flex-align: end;
            align-items: flex-end;
    margin-top: 64px;
    max-width: 1200px;
    width: 100%;
    margin-inline: auto;
  }
}

.footer__logo {
  display: block;
  width: 160px;
  height: 112px;
  margin-inline: auto;
  -webkit-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
}
@media screen and (min-width: 951px) {
  .footer__logo {
    width: 200px;
    height: 141px;
    margin-inline: initial;
  }
}
.footer__logo img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
@media (any-hover: hover) {
  .footer__logo:hover {
    opacity: 0.6;
  }
}

.footer__address {
  color: #FFF;
  font-style: normal;
  font-size: 14px;
  line-height: 1.6;
  font-weight: 700;
}
@media (min-width: 768px) {
  .footer__address {
    font-size: 16px;
  }
}
@media screen and (min-width: 951px) {
  .footer__address {
    font-size: 16px;
  }
}

.footer__sns {
  margin-inline: auto;
}
@media screen and (min-width: 951px) {
  .footer__sns {
    margin-inline: initial;
  }
}

.footer__sns-items {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  gap: 16px;
}

.footer__sns-item a {
  -webkit-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
  display: block;
  width: 50px;
  height: 50px;
}
@media screen and (min-width: 951px) {
  .footer__sns-item a {
    width: 54px;
    height: 54px;
  }
}
.footer__sns-item a img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
@media (any-hover: hover) {
  .footer__sns-item a:hover {
    opacity: 0.6;
  }
}

.footer__right,
.footer__left {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 24px;
  -webkit-box-align: start;
  -webkit-align-items: flex-start;
      -ms-flex-align: start;
          align-items: flex-start;
}
@media screen and (min-width: 951px) {
  .footer__right,
  .footer__left {
    -webkit-box-align: initial;
    -webkit-align-items: initial;
        -ms-flex-align: initial;
            align-items: initial;
    gap: 24px;
  }
}

.footer__right {
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  margin-top: 65px;
}
@media screen and (min-width: 951px) {
  .footer__right {
    -webkit-box-align: end;
    -webkit-align-items: end;
        -ms-flex-align: end;
            align-items: end;
    margin-top: initial;
  }
}

.footer__msg {
  width: 21.375rem;
  margin-inline: auto;
  background: #FFF;
  border-radius: 1rem;
  padding: 1rem;
  position: relative;
}
@media screen and (min-width: 376px) {
  .footer__msg {
    width: 342px;
    border-radius: 16px;
    padding: 16px;
  }
}
@media screen and (min-width: 951px) {
  .footer__msg {
    width: 437px;
    margin-inline: initial;
    padding: 24px;
    border-radius: 20px;
  }
}
.footer__msg::before {
  content: "";
  position: absolute;
  top: -30px;
  right: -15px;
  width: 70px;
  height: 80px;
  background: url(../img/svg/illust-roller-blue.svg) no-repeat center center/contain;
}
@media screen and (min-width: 951px) {
  .footer__msg::before {
    width: 90px;
    height: 100px;
  }
}

.footer-msg__title {
  width: 19.75rem;
  max-width: 100%;
  margin-inline: auto;
}
@media screen and (min-width: 376px) {
  .footer-msg__title {
    width: 316px;
  }
}
@media screen and (min-width: 951px) {
  .footer-msg__title {
    width: 373px;
  }
}
.footer-msg__title img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.footer__banner {
  width: 15.625rem;
  height: 6.25rem;
  max-width: 100%;
  margin-inline: auto;
}
@media screen and (min-width: 376px) {
  .footer__banner {
    width: 250px;
    height: 100px;
  }
}
@media (min-width: 768px) {
  .footer__banner {
    width: 250px;
    height: 100px;
  }
}
@media screen and (min-width: 951px) {
  .footer__banner {
    margin-right: 0;
    margin-left: auto;
  }
}
.footer__banner img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.footer-msg__text {
  font-size: 14px;
  line-height: 1.6;
  font-weight: 500;
  margin-top: 8px;
}
@media screen and (min-width: 951px) {
  .footer-msg__text {
    font-size: 16px;
  }
}

.footer__copyright {
  color: #FFF;
  font-size: 0.6875rem;
  line-height: 1.6;
  text-align: center;
  font-family: "Inter", sans-serif;
  margin-top: 64px;
}
@media screen and (min-width: 376px) {
  .footer__copyright {
    font-size: 11px;
  }
}
@media screen and (min-width: 951px) {
  .footer__copyright {
    margin-top: 80px;
    margin-top: 64px;
  }
}

.pagetop {
  position: absolute;
  bottom: 4.6875rem;
  right: 0.3125rem;
  z-index: 100;
}
@media screen and (min-width: 376px) {
  .pagetop {
    bottom: 75px;
    right: 5px;
  }
}
@media (min-width: 768px) {
  .pagetop {
    bottom: 85px;
  }
}
@media screen and (min-width: 951px) {
  .pagetop {
    bottom: 100px;
    right: 20px;
  }
}
@media screen and (min-width: 1001px) {
  .pagetop {
    bottom: 120px;
  }
}
@media screen and (min-width: 1321px) {
  .pagetop {
    bottom: 140px;
  }
}
.pagetop a {
  color: #FFF;
  font-size: 0.75rem;
  font-weight: 700;
  line-height: 1.6;
  font-family: "Montserrat", sans-serif;
  background: #111;
  border: 2px solid #111;
  border-radius: 100vmax;
  width: 3.125rem;
  height: 3.125rem;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  position: relative;
  -webkit-transition: background 0.3s ease, color 0.3s ease;
  transition: background 0.3s ease, color 0.3s ease;
}
@media screen and (min-width: 376px) {
  .pagetop a {
    font-size: 12px;
    width: 50px;
    height: 50px;
  }
}
@media screen and (min-width: 951px) {
  .pagetop a {
    font-size: 18px;
    width: 70px;
    height: 70px;
  }
}
.pagetop a::before {
  content: "";
  width: 10px;
  height: 10px;
  background: url(../img/svg/arrow-up-white.svg) no-repeat center center/contain;
  -webkit-transition: background 0.3s ease;
  transition: background 0.3s ease;
}
@media (any-hover: hover) {
  .pagetop a:hover {
    background: #FFF;
    color: #111;
  }
  .pagetop a:hover::before {
    background: url(../img/svg/arrow-up-black.svg) no-repeat center center/contain;
  }
}

.fv {
  position: relative;
  overflow: hidden;
}

.fv__bg {
  width: 100%;
  max-width: 100%;
  margin-inline: auto;
  height: 43.625rem;
}
@media (min-width: 768px) {
  .fv__bg {
    height: 54.625rem;
  }
}
.fv__bg img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.fv__content {
  position: absolute;
  top: 50%;
  left: 50%;
  translate: -50% -50%;
  width: 100%;
  max-width: 100%;
  margin-inline: auto;
  height: 100%;
  height: 43.625rem;
}
@media (min-width: 768px) {
  .fv__content {
    height: 54.625rem;
    width: 80rem;
    max-width: 100%;
    margin-inline: auto;
  }
}

.fv__main {
  position: absolute;
  top: -0.625rem;
  right: 0;
  width: 100%;
  height: auto;
  max-width: 100%;
  margin-inline: auto;
}
@media screen and (min-width: 376px) {
  .fv__main {
    width: 23.4375rem;
    top: -0.625rem;
    left: 50%;
    translate: -50%;
  }
}
@media (min-width: 768px) {
  .fv__main {
    width: 75.6875rem;
    top: -3.6875rem;
    left: 47%;
    translate: -50%;
  }
}
.fv__main img {
  width: 100%;
  height: 100%;
}

.fv__people {
  position: absolute;
  bottom: 12.5rem;
  left: 50%;
  translate: -50%;
  width: 100%;
  height: auto;
  max-width: 100%;
  margin-inline: auto;
}
@media screen and (min-width: 376px) {
  .fv__people {
    width: 23.4375rem;
  }
}
@media (min-width: 768px) {
  .fv__people {
    width: 78.4375rem;
    bottom: -3.75rem;
    left: calc(50% - 0.625rem);
    translate: -50%;
  }
}
.fv__people img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.fv__sub {
  position: absolute;
  bottom: 1rem;
  left: 50%;
  translate: -50%;
  width: 100%;
  height: auto;
  max-width: 100%;
  margin-inline: auto;
}
@media screen and (min-width: 376px) {
  .fv__sub {
    width: 23.4375rem;
    bottom: 15px;
  }
}
@media (min-width: 768px) {
  .fv__sub {
    width: 75rem;
    bottom: 1.5625rem;
  }
}
@media screen and (min-width: 768px) and (max-width: 1309px) {
  .fv__sub {
    padding-left: 4.875rem;
  }
}

.fv__point {
  display: none;
}
@media (min-width: 768px) {
  .fv__point {
    display: block;
    width: 57.125rem;
    max-width: 100%;
    height: auto;
    -webkit-margin-start: calc(50% - 30rem);
            margin-inline-start: calc(50% - 30rem);
    -webkit-margin-end: auto;
            margin-inline-end: auto;
  }
}

.fv__sub-content {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  gap: 1.125rem;
  -webkit-box-align: end;
  -webkit-align-items: flex-end;
      -ms-flex-align: end;
          align-items: flex-end;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin-top: -1.5625rem;
  -webkit-box-orient: vertical;
  -webkit-box-direction: reverse;
  -webkit-flex-direction: column-reverse;
      -ms-flex-direction: column-reverse;
          flex-direction: column-reverse;
}
@media (min-width: 768px) {
  .fv__sub-content {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-direction: row;
        -ms-flex-direction: row;
            flex-direction: row;
    gap: 1.25rem;
  }
}

.fv__sub-plan {
  position: relative;
  height: -webkit-fit-content;
  height: -moz-fit-content;
  height: fit-content;
  background: rgba(255, 255, 255, 0.9);
  padding: 1.875rem 0.875rem 1.5rem;
  width: 100%;
  max-width: 100%;
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: (minmax(0, 1fr))[3];
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 0.25rem;
}
@media (min-width: 768px) {
  .fv__sub-plan {
    width: 45.25rem;
    padding: 1.5625rem 1.1875rem 1.8125rem;
    border-radius: 1.25rem;
    background: #FFF;
    gap: 0.5625rem;
  }
}
.fv__sub-plan::before {
  content: "";
  display: block;
  width: 4.375rem;
  height: 3.125rem;
  background: url(../img/webp/fv-plan-title.webp) no-repeat center center/cover;
  position: absolute;
  left: 0.375rem;
  top: -1.5rem;
  z-index: 1;
}
@media (min-width: 768px) {
  .fv__sub-plan::before {
    width: 9.1875rem;
    height: 6.5625rem;
    left: -4.875rem;
    top: -2.375rem;
  }
}

.fv__sub-plan-item-img {
  display: block;
  -webkit-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
  aspect-ratio: 221/160;
  position: relative;
  background-color: #116BAF;
  border: solid 0.1875rem #116BAF;
  border-radius: 0.625rem;
  padding-top: 0.875rem;
}
@media (min-width: 768px) {
  .fv__sub-plan-item-img {
    border-width: 0.25rem;
    border-radius: 1.25rem;
    padding-top: 1.5rem;
  }
}
.fv__sub-plan-item-img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  border-radius: 0 0 0.5625rem 0.5625rem;
}
@media (min-width: 768px) {
  .fv__sub-plan-item-img img {
    border-radius: 0 0 1.125rem 1.125rem;
  }
}
@media (any-hover: hover) {
  .fv__sub-plan-item-img:hover {
    opacity: 0.6;
  }
}

.fv__sub-plan-item-head {
  width: 100%;
  text-align: center;
  position: absolute;
  top: -0.5625rem;
  left: 50%;
  translate: -50%;
  z-index: 1;
  display: block;
  font-size: 0.875rem;
  font-weight: 700;
  color: #FFF;
  -webkit-text-stroke: 4px #116BAF;
  text-stroke: 4px #116BAF;
  paint-order: stroke;
  white-space: nowrap;
}
@media (min-width: 768px) {
  .fv__sub-plan-item-head {
    top: -0.875rem;
    font-size: 1.5rem;
    -webkit-text-stroke: 5px #116BAF;
    text-stroke: 5px #116BAF;
    paint-order: stroke;
  }
}

.fv__sub-plan__item-label {
  position: absolute;
  bottom: -0.75rem;
  left: 50%;
  -webkit-transform: translateX(-48%);
          transform: translateX(-48%);
  z-index: 1;
  width: 100%;
}
@media (min-width: 768px) {
  .fv__sub-plan__item-label {
    bottom: -1.125rem;
  }
}
.fv__sub-plan__item-label .--price-box {
  white-space: nowrap;
  text-shadow: 0px 1px 0px rgba(0, 0, 0, 0.25);
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: baseline;
  -webkit-align-items: baseline;
      -ms-flex-align: baseline;
          align-items: baseline;
  gap: 0.0625rem;
}
@media (min-width: 768px) {
  .fv__sub-plan__item-label .--price-box {
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    gap: 0.125rem;
  }
}
.fv__sub-plan__item-label .--price {
  font-size: 1.1875rem;
  font-weight: 700;
  color: #F2761E;
  font-family: "Montserrat", sans-serif;
  -webkit-text-stroke: 4px #fff;
  text-stroke: 4px #fff;
  paint-order: stroke;
}
@media (min-width: 768px) {
  .fv__sub-plan__item-label .--price {
    font-size: 2.125rem;
    -webkit-text-stroke: 5px #fff;
    text-stroke: 5px #fff;
    paint-order: stroke;
  }
}
.fv__sub-plan__item-label .--unit {
  font-size: 0.75rem;
  font-weight: 900;
  color: #116BAF;
  -webkit-text-stroke: 4px #fff;
  text-stroke: 4px #fff;
  paint-order: stroke;
}
@media (min-width: 768px) {
  .fv__sub-plan__item-label .--unit {
    font-size: 1.375rem;
    -webkit-text-stroke: 5px #fff;
    text-stroke: 5px #fff;
    paint-order: stroke;
  }
}
.fv__sub-plan__item-label .--tax {
  font-size: 0.4375rem;
  font-weight: 900;
  color: #116BAF;
  -webkit-text-stroke: 4px #fff;
  text-stroke: 4px #fff;
  paint-order: stroke;
}
@media (min-width: 768px) {
  .fv__sub-plan__item-label .--tax {
    font-size: 0.875rem;
    -webkit-text-stroke: 5px #fff;
    text-stroke: 5px #fff;
    paint-order: stroke;
  }
}

.fv-badge {
  width: 22.3125rem;
  max-width: 100%;
}
@media (min-width: 768px) {
  .fv-badge {
    width: 28.375rem;
  }
}
.fv-badge img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.header {
  height: 60px;
}
@media screen and (min-width: 951px) {
  .header {
    height: 90px;
  }
}

@media (max-width: 950px) {
  .header.--fixed {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    -webkit-transition: -webkit-transform 0.3s ease;
    transition: -webkit-transform 0.3s ease;
    transition: transform 0.3s ease;
    transition: transform 0.3s ease, -webkit-transform 0.3s ease;
    z-index: 200;
    background: #FFF;
  }
  .header.--hide {
    -webkit-transform: translateY(-100%);
            transform: translateY(-100%);
  }
  .header.js-show .header__logo {
    display: none;
  }
  .header.--fixed.js-show {
    background: transparent;
  }
}
.header__inner {
  height: 100%;
  padding-inline: 0.9375rem 0;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
@media screen and (min-width: 376px) {
  .header__inner {
    padding-inline: 15px 0;
  }
}
@media screen and (min-width: 951px) {
  .header__inner {
    padding-inline: 24px;
  }
}

.header__left {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}
@media screen and (min-width: 951px) {
  .header__left {
    gap: 22px;
  }
}
@media screen and (min-width: 1321px) {
  .header__left {
    gap: 40px;
  }
}

.header__logo a {
  display: block;
  width: 17.5rem;
  height: 1.5625rem;
  -webkit-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
}
@media screen and (min-width: 376px) {
  .header__logo a {
    width: 280px;
    height: 25px;
  }
}
@media screen and (min-width: 951px) {
  .header__logo a {
    width: 250px;
    height: 20px;
  }
}
@media screen and (min-width: 1321px) {
  .header__logo a {
    width: 371px;
    height: 33px;
  }
}
.header__logo a img {
  width: 100%;
  height: 100%;
}
@media (any-hover: hover) {
  .header__logo a:hover {
    opacity: 0.6;
  }
}

.menu-item > a {
  -webkit-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
}

@media (any-hover: hover) {
  .menu-item:hover > a {
    opacity: 0.6;
  }
}
.menu-item > span > a {
  -webkit-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
}

@media (any-hover: hover) {
  .menu-item:hover > span > a {
    opacity: 0.6;
  }
}
.header__nav {
  display: none;
}
@media screen and (min-width: 951px) {
  .header__nav {
    display: block;
  }
  .header__nav .menu {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
  }
}
@media screen and (min-width: 951px) and (min-width: 951px) {
  .header__nav .menu {
    gap: 16px;
  }
}
@media screen and (min-width: 951px) and (min-width: 1321px) {
  .header__nav .menu {
    gap: 24px;
  }
}
@media screen and (min-width: 951px) {
  .header__nav .menu-item {
    font-size: 1rem;
    font-weight: 700;
    line-height: 1.6;
    color: #111;
  }
}
@media screen and (min-width: 951px) and (min-width: 376px) {
  .header__nav .menu-item {
    font-size: 16px;
  }
}
@media screen and (min-width: 951px) and (min-width: 951px) {
  .header__nav .menu-item {
    font-size: 12px;
  }
}
@media screen and (min-width: 951px) and (min-width: 1001px) {
  .header__nav .menu-item {
    font-size: 14px;
  }
}
@media screen and (min-width: 951px) and (min-width: 1321px) {
  .header__nav .menu-item {
    font-size: 16px;
  }
}

.header__right {
  display: none;
}
@media screen and (min-width: 951px) {
  .header__right {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    gap: 12px;
  }
}
@media screen and (min-width: 1321px) {
  .header__right {
    gap: 16px;
  }
}

.header__tel-text {
  font-size: 0.8125rem;
  font-weight: 700;
  line-height: 1.6;
  color: #FFF;
  padding: 0.0625rem 0.625rem;
  background: #116BAF;
  border-radius: 6.25rem;
}
@media screen and (min-width: 376px) {
  .header__tel-text {
    font-size: 13px;
    padding: 1px 10px;
    border-radius: 100px;
  }
}
@media screen and (min-width: 951px) {
  .header__tel-text {
    font-size: 10px;
  }
}
@media screen and (min-width: 1321px) {
  .header__tel-text {
    font-size: 13px;
  }
}

.header__tel {
  margin-top: 0.375rem;
}
@media screen and (min-width: 376px) {
  .header__tel {
    margin-top: 6px;
  }
}
@media screen and (min-width: 951px) {
  .header__tel {
    margin-top: 4px;
  }
}
@media screen and (min-width: 1321px) {
  .header__tel {
    margin-top: 6px;
  }
}
.header__tel a {
  display: block;
  font-size: 1.625rem;
  font-weight: 700;
  line-height: 1;
  letter-spacing: 0.04em;
  color: #116BAF;
  font-family: "Montserrat", sans-serif;
  position: relative;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0.25rem;
}
@media screen and (min-width: 376px) {
  .header__tel a {
    font-size: 26px;
    gap: 4px;
  }
}
@media screen and (min-width: 951px) {
  .header__tel a {
    font-size: 20px;
  }
}
@media screen and (min-width: 1321px) {
  .header__tel a {
    font-size: 26px;
  }
}
.header__tel a::before {
  content: "";
  width: 1.5rem;
  height: 1.5rem;
  background: url(../img/svg/tel-icon-blue.svg) no-repeat center center/contain;
}
@media screen and (min-width: 376px) {
  .header__tel a::before {
    width: 24px;
    height: 24px;
  }
}
@media screen and (min-width: 951px) {
  .header__tel a::before {
    width: 18px;
    height: 18px;
  }
}
@media screen and (min-width: 1321px) {
  .header__tel a::before {
    width: 24px;
    height: 24px;
  }
}

.header__tel-text-sub {
  font-weight: 500;
  line-height: 1.6;
  color: #111;
  letter-spacing: 0.03em;
  margin-top: 1px;
}
@media screen and (min-width: 951px) {
  .header__tel-text-sub {
    font-size: 10px;
    text-indent: initial;
  }
}
@media screen and (min-width: 1321px) {
  .header__tel-text-sub {
    font-size: 13px;
    text-indent: -6px;
  }
}

.sub-header {
  position: relative;
  background: #2698D5;
  height: 3.25rem;
  width: 100%;
}
@media screen and (min-width: 376px) {
  .sub-header {
    height: 52px;
  }
}
@media screen and (min-width: 951px) {
  .sub-header {
    height: 66px;
  }
}

.sub-header__inner {
  height: 100%;
  padding-inline: 0.9375rem;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}
@media screen and (min-width: 376px) {
  .sub-header__inner {
    padding-inline: 15px;
  }
}
@media screen and (min-width: 951px) {
  .sub-header__inner {
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between;
    padding-inline: 24px;
  }
}

.sub-header__left {
  display: none;
}
@media screen and (min-width: 951px) {
  .sub-header__left {
    display: block;
  }
}

.sub-header__nav > .menu {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}
.sub-header__nav > .menu > .menu-item:first-child > span > a {
  padding-left: 0;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 8px;
}
.sub-header__nav > .menu > .menu-item:first-child > span > a::after {
  content: "";
  display: inline-block;
  width: 1.5rem;
  height: 1.5rem;
  background: url(../img/svg/arrow-circle-down-blue.svg) no-repeat center center/contain;
}
@media screen and (min-width: 376px) {
  .sub-header__nav > .menu > .menu-item:first-child > span > a::after {
    width: 24px;
    height: 24px;
  }
}
@media screen and (min-width: 951px) {
  .sub-header__nav > .menu > .menu-item:first-child > span > a::after {
    width: 18px;
    height: 18px;
  }
}
@media screen and (min-width: 1321px) {
  .sub-header__nav > .menu > .menu-item:first-child > span > a::after {
    width: 24px;
    height: 24px;
  }
}
.sub-header__nav .menu-item span {
  position: relative;
  display: block;
}
.sub-header__nav .menu-item span::after {
  content: "";
  width: 1px;
  height: 1.625rem;
  background: #FFF;
  position: absolute;
  top: 50%;
  translate: 0 -50%;
  right: 0;
}
@media screen and (min-width: 376px) {
  .sub-header__nav .menu-item span::after {
    width: 1px;
    height: 26px;
  }
}
.sub-header__nav .menu-item a {
  display: block;
  font-size: 16px;
  font-weight: 700;
  line-height: 1.6;
  color: #FFF;
  padding-inline: 24px;
  padding-block: 20px;
}
@media screen and (min-width: 951px) {
  .sub-header__nav .menu-item a {
    font-size: 13px;
    padding-inline: 14px;
  }
}
@media screen and (min-width: 1021px) {
  .sub-header__nav .menu-item a {
    font-size: 14px;
    padding-inline: 15px;
  }
}
@media screen and (min-width: 1321px) {
  .sub-header__nav .menu-item a {
    font-size: 16px;
    padding-inline: 24px;
  }
}

.sub-header__google {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 18.3125rem;
  height: 2.25rem;
  border-radius: 6.25rem;
  background: #FFF;
  padding: 0.53125rem 1rem;
}
@media screen and (min-width: 376px) {
  .sub-header__google {
    width: 293px;
    height: 36px;
    padding: 8.5px 16px;
    border-radius: 100px;
  }
}
@media screen and (min-width: 951px) {
  .sub-header__google {
    width: 250px;
    height: 30px;
  }
}
@media screen and (min-width: 1321px) {
  .sub-header__google {
    width: 382px;
    height: 50px;
    border-radius: 6.25rem;
    padding: 12px 24px;
  }
}

.sub-header__google-text {
  width: 6.5625rem;
  height: 1.1875rem;
  -o-object-fit: contain;
     object-fit: contain;
}
@media screen and (min-width: 376px) {
  .sub-header__google-text {
    width: 105px;
    height: 19px;
  }
}
@media screen and (min-width: 951px) {
  .sub-header__google-text {
    width: 100px;
    height: 22px;
  }
}
@media screen and (min-width: 1321px) {
  .sub-header__google-text {
    width: 140px;
    height: 26px;
  }
}

.sub-header__google-score {
  font-size: 1.125rem;
  font-weight: 700;
  line-height: 1;
  color: #111;
  font-family: "Montserrat", sans-serif;
  margin-left: 0.5rem;
}
@media screen and (min-width: 376px) {
  .sub-header__google-score {
    font-size: 18px;
    margin-left: 8px;
  }
}
@media screen and (min-width: 951px) {
  .sub-header__google-score {
    font-size: 16px;
    margin-left: 5px;
  }
}
@media screen and (min-width: 1321px) {
  .sub-header__google-score {
    font-size: 1.5rem;
    margin-left: 0.5rem;
  }
}

.sub-header__google-review {
  width: 6.375rem;
  height: 1rem;
  margin-left: 1rem;
}
@media screen and (min-width: 376px) {
  .sub-header__google-review {
    width: 102px;
    height: 16px;
    margin-left: 16px;
  }
}
@media screen and (min-width: 951px) {
  .sub-header__google-review {
    width: 95px;
    height: 12px;
    margin-left: 10px;
  }
}
@media screen and (min-width: 1321px) {
  .sub-header__google-review {
    width: 8.125rem;
    height: 1.25rem;
    margin-left: 1rem;
  }
}

.sub-menu-content {
  position: absolute;
  top: 100%;
  left: 0;
  right: 0;
  width: 100%;
  background: #2698D5;
  padding: 16px 24px 24px;
  opacity: 0;
  pointer-events: none;
  -webkit-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
  z-index: 100;
}

@media (any-hover: hover) {
  .menu-item-has-children:hover > .sub-menu-content {
    opacity: 1;
    pointer-events: auto;
  }
}
.sub-menu {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: (200px)[3];
  grid-template-columns: repeat(3, 200px);
  gap: 14px;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}
@media screen and (min-width: 1321px) {
  .sub-menu {
    -ms-grid-columns: (220px)[5];
    grid-template-columns: repeat(5, 220px);
    gap: 16px;
  }
}

.sub-menu-item a {
  display: block;
  width: 100%;
  height: 93px;
}
@media screen and (min-width: 1321px) {
  .sub-menu-item a {
    height: 102px;
  }
}
.sub-menu-item:nth-child(1) a {
  background: url(../img/webp/sub-menu-tips.webp) no-repeat center center/cover;
}
.sub-menu-item:nth-child(2) a {
  background: url(../img/webp/sub-menu-steps.webp) no-repeat center center/cover;
}
.sub-menu-item:nth-child(3) a {
  background: url(../img/webp/sub-menu-faq.webp) no-repeat center center/cover;
}
.sub-menu-item:nth-child(4) a {
  background: url(../img/webp/sub-menu-flow.webp) no-repeat center center/cover;
}
.sub-menu-item:nth-child(5) a {
  background: url(../img/webp/sub-menu-after-support.webp) no-repeat center center/cover;
}

.sub-header__cta {
  width: 100%;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  height: 50px;
}
@media screen and (min-width: 951px) {
  .sub-header__cta {
    display: none;
  }
}

.sub-header__cta-tel {
  width: 100%;
  height: 100%;
  background: #116BAF;
  padding-block: 6px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
}

.sub-header__cta-tel-text {
  font-size: 1rem;
  font-weight: 700;
  letter-spacing: 0.04em;
  color: #FFF;
  line-height: 1;
  position: relative;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0.5rem;
  position: relative;
}
@media screen and (min-width: 376px) {
  .sub-header__cta-tel-text {
    font-size: 16px;
    gap: 8px;
  }
}
.sub-header__cta-tel-text::before {
  content: "";
  width: 1.5rem;
  height: 1.5rem;
  background: url(../img/svg/tel-icon-white.svg) no-repeat center center/contain;
}
@media screen and (min-width: 376px) {
  .sub-header__cta-tel-text::before {
    width: 24px;
    height: 24px;
  }
}

.sub-header__cta-text {
  font-size: 0.5625rem;
  font-weight: 500;
  color: #FFF;
  line-height: 1.6;
  letter-spacing: 0.03em;
  text-indent: 0.75rem;
}
@media screen and (min-width: 376px) {
  .sub-header__cta-text {
    font-size: 9px;
    text-indent: 12px;
  }
}

.sub-header__cta-mail {
  width: 100%;
  height: 100%;
  font-size: 0.875rem;
  font-weight: 700;
  color: #FFF;
  line-height: 1.6;
  position: relative;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0.75rem;
  padding-block: 0.75rem;
  background: #F6A522;
}
@media screen and (min-width: 376px) {
  .sub-header__cta-mail {
    font-size: 14px;
    gap: 12px;
    padding-block: 12px;
  }
}
.sub-header__cta-mail::before {
  content: "";
  width: 1.5625rem;
  height: 1.5625rem;
  background: url(../img/svg/mail-icon-orange.svg) no-repeat center center/contain;
}
@media screen and (min-width: 376px) {
  .sub-header__cta-mail::before {
    width: 25px;
    height: 25px;
  }
}

.inner {
  width: 100%;
  padding-inline: 0.9375rem;
  margin-inline: auto;
}
@media (min-width: 768px) {
  .inner {
    max-width: 1250px;
    padding-inline: 1.5625rem;
  }
}

.page-news {
  padding-block: 4rem 0;
}
@media screen and (min-width: 376px) {
  .page-news {
    padding-block: 64px 0;
  }
}
@media (min-width: 768px) {
  .page-news {
    padding-block: 6.25rem;
  }
}
.page-news .page-column__item {
  background: #f0f0f0;
}
.page-news .page-column__items {
  margin-top: 2rem;
  width: 100%;
  max-width: 100%;
  margin-inline: auto;
}
@media screen and (min-width: 376px) {
  .page-news .page-column__items {
    margin-top: 32px;
    width: clamp(375px, 31.25rem, 500px);
  }
}
@media (min-width: 768px) {
  .page-news .page-column__items {
    margin-top: 3rem;
    width: inherit;
  }
}
@media screen and (max-width: 767px) {
  .page-news .page-column__item {
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: 113px 16px 1fr;
    grid-template-columns: 113px 1fr;
    -ms-grid-rows: auto 16px auto;
        grid-template-areas: "thumb body" "thumb bottom";
    gap: 16px;
    -webkit-box-align: start;
    -webkit-align-items: start;
        -ms-flex-align: start;
            align-items: start;
  }
  .page-news .page-column__item-img {
    grid-area: thumb;
    height: 75px;
    width: 100%;
  }
  .page-news .page-column__item-body {
    grid-area: body;
    margin-top: 0;
  }
  .page-news .page-column__item-bottom {
    grid-area: bottom;
    margin-top: 0;
  }
  .page-news .page-column__item-title {
    display: none;
  }
  .page-news .page-column__item::before {
    width: clamp(65px, 4.0625rem, 80px);
    height: clamp(65px, 4.0625rem, 80px);
    top: -30px;
    left: -13px;
  }
  .page-news .page-column__item-text {
    font-weight: 500;
  }
  .page-news .page-column__item-meta {
    gap: 8px;
  }
  .page-news .page-column__item > .about-greeting__body {
    -ms-grid-row: 1;
    -ms-grid-column: 3;
  }
}
@media screen and (max-width: 375px) {
  .page-news .page-column__item {
    -ms-grid-columns: 7.0625rem 1fr;
    grid-template-columns: 7.0625rem 1fr;
    gap: 1rem;
  }
  .page-news .page-column__item-img {
    height: 4.6875rem;
  }
  .page-news .page-column__item-meta .cta-tag a {
    font-size: 0.75rem;
  }
  .page-news .page-column__item::before {
    width: 4.0625rem;
    height: 4.0625rem;
    top: -1.25rem;
    left: -0.8125rem;
  }
  .page-news .page-column__item-meta {
    gap: 0.5rem;
  }
}

.page-news__content {
  width: 100%;
  max-width: 100%;
  margin-inline: auto;
  margin-top: 4rem;
}
@media screen and (min-width: 376px) {
  .page-news__content {
    width: clamp(375px, 31.25rem, 500px);
    margin-top: 64px;
  }
}
@media (min-width: 768px) {
  .page-news__content {
    width: 75rem;
    margin-top: 5rem;
  }
}

.page-news__items {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 1.5rem;
}
@media screen and (min-width: 376px) {
  .page-news__items {
    gap: 24px;
  }
}
@media (min-width: 768px) {
  .page-news__items {
    gap: 1rem;
  }
}

.page-news__item a {
  -webkit-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
  background: #FFF;
  padding: 1.5rem 1rem;
  border-radius: 1rem;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 0.5rem;
}
@media screen and (min-width: 376px) {
  .page-news__item a {
    padding: 24px 16px;
    border-radius: 16px;
    gap: 8px;
  }
}
@media (min-width: 768px) {
  .page-news__item a {
    padding: 2rem 2.375rem;
    border-radius: 1.25rem;
    gap: 1rem;
  }
}
@media (any-hover: hover) {
  .page-news__item a:hover {
    opacity: 0.6;
  }
}

.news-date .date {
  font-size: 0.875rem;
  font-weight: 500;
  line-height: 1.6;
  color: #888888;
  font-family: "Montserrat", sans-serif;
}
@media screen and (min-width: 376px) {
  .news-date .date {
    font-size: 14px;
  }
}
@media (min-width: 768px) {
  .news-date .date {
    font-size: 16px;
  }
}

.page-news__item-title {
  font-size: 1rem;
  font-weight: 700;
  line-height: 1.6;
  color: #111;
}
@media screen and (min-width: 376px) {
  .page-news__item-title {
    font-size: 16px;
  }
}
@media (min-width: 768px) {
  .page-news__item-title {
    font-size: 18px;
    margin-top: -0.5rem;
  }
}

.page-news__item-text {
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.6;
  color: #111;
}
@media screen and (min-width: 376px) {
  .page-news__item-text {
    font-size: 14px;
  }
}
@media (min-width: 768px) {
  .page-news__item-text {
    font-size: 16px;
  }
}

.new-column-content,
.new-others-content {
  background: #FFF;
  padding: 5rem 0.875rem;
  margin-top: 5rem;
  margin-inline: -0.9375rem;
}
@media screen and (min-width: 376px) {
  .new-column-content,
  .new-others-content {
    padding: 80px 15px;
    margin-top: 80px;
    margin-inline: -0.9375rem;
  }
}
@media (min-width: 768px) {
  .new-column-content,
  .new-others-content {
    padding: 4rem 2.5rem;
    border-radius: 1.25rem;
    margin-top: 7.5rem;
    margin-inline: 0;
  }
}

@media (min-width: 768px) {
  .new-column-content .page-column__item-img {
    aspect-ratio: 309/174;
  }
}
.new-column-content .page-column__item-meta .cta-tag a {
  font-size: 0.75rem;
  font-weight: 700;
  line-height: 1.6;
  color: #111;
  padding: 0.25rem 0.75rem;
  background: #fdd557;
  border-radius: 6.25rem;
}
@media screen and (min-width: 376px) {
  .new-column-content .page-column__item-meta .cta-tag a {
    font-size: clamp(12px, 0.75rem, 14px);
    padding: 4px 12px;
  }
}
@media (min-width: 768px) {
  .new-column-content .page-column__item-meta .cta-tag a {
    font-size: 16px;
  }
}

.new-others-content {
  background: #f0f0f0;
}

.others-features {
  background: #2698D5;
  position: relative;
  z-index: 0;
}

.others-features__inner {
  width: 90rem;
  max-width: 100%;
  margin-inline: auto;
  padding-block: 4rem 3.75rem;
  padding-inline: 0.9375rem;
  position: relative;
}
@media screen and (min-width: 376px) {
  .others-features__inner {
    padding-inline: 15px;
    padding-block: 64px 60px;
  }
}
@media (min-width: 768px) {
  .others-features__inner {
    padding-block: 6.25rem;
  }
}
.others-features__inner::before, .others-features__inner::after {
  content: "";
  position: absolute;
  z-index: -1;
}
@media (min-width: 768px) {
  .others-features__inner::before {
    left: 0;
    bottom: 0;
    width: 26.3125rem;
    height: 21.1875rem;
    background: url(../img/webp/paint-transparent-bottom-pc.webp) no-repeat center center/cover;
  }
}
.others-features__inner::after {
  right: 0;
  top: 27%;
  width: 14.125rem;
  height: 21.5rem;
  background: url(../img/webp/paint-transparent-right-sp.webp) no-repeat center center/cover;
}
@media screen and (min-width: 376px) {
  .others-features__inner::after {
    width: 226px;
    height: 344px;
  }
}
@media (min-width: 768px) {
  .others-features__inner::after {
    top: 0;
    width: 26.875rem;
    height: 18.3125rem;
    background: url(../img/webp/paint-transparent-top-pc.webp) no-repeat center center/cover;
  }
}

.others-features__title {
  width: 24.375rem;
  max-width: 100%;
  margin-inline: auto;
}
@media screen and (min-width: 376px) {
  .others-features__title {
    width: 390px;
  }
}
@media (min-width: 768px) {
  .others-features__title {
    width: 42.9375rem;
  }
}
.others-features__title img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.others-features__items {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr;
  grid-template-columns: 1fr;
  gap: 1.5rem;
  margin-top: 2rem;
  width: 100%;
  max-width: 100%;
  margin-inline: auto;
}
@media screen and (min-width: 376px) {
  .others-features__items {
    gap: 24px;
    margin-top: 32px;
    width: clamp(375px, 31.25rem, 500px);
  }
}
@media (min-width: 768px) {
  .others-features__items {
    gap: 2rem;
    -ms-grid-columns: (1fr)[3];
    grid-template-columns: repeat(3, 1fr);
    width: 75rem;
    margin-top: 4rem;
  }
}

.others-features__item {
  background: #FFF;
  padding: 1.5rem 1rem;
  border-radius: 1rem;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 1rem;
}
@media screen and (min-width: 376px) {
  .others-features__item {
    border-radius: 16px;
    gap: 16px;
  }
}
@media (min-width: 768px) {
  .others-features__item {
    padding: 1.5rem;
    border-radius: 1.25rem;
    gap: 1.5rem;
  }
}

.others-features__item-img {
  width: 100%;
}
.others-features__item-img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.others-features__item-title {
  font-size: 1.25rem;
  font-weight: 700;
  line-height: 1.6;
  color: #111;
  margin-top: 0.5rem;
  text-align: center;
}
@media screen and (min-width: 376px) {
  .others-features__item-title {
    font-size: 20px;
    margin-top: 8px;
  }
}
@media (min-width: 768px) {
  .others-features__item-title {
    font-size: clamp(20px, 1.5rem, 24px);
    margin-top: initial;
  }
}
.others-features__item-title strong {
  color: #F2761E;
  font-size: 1.25rem;
  font-weight: 700;
  line-height: 1.6;
}
@media screen and (min-width: 376px) {
  .others-features__item-title strong {
    font-size: 20px;
  }
}
@media (min-width: 768px) {
  .others-features__item-title strong {
    font-size: clamp(20px, 1.5rem, 24px);
  }
}
.others-features__item-title span {
  padding-inline: 0.3125rem;
  background: -webkit-gradient(linear, left top, left bottom, color-stop(60%, transparent), color-stop(60%, #FFEB15));
  background: linear-gradient(transparent 60%, #FFEB15 60%);
}

.others-features__item-text {
  font-size: 0.875rem;
  font-weight: 500;
  line-height: 1.6;
  color: #111;
}
@media screen and (min-width: 376px) {
  .others-features__item-text {
    font-size: 14px;
  }
}
@media (min-width: 768px) {
  .others-features__item-text {
    font-size: 16px;
  }
}

.page-404 {
  background: #D7EEFF;
}

.page-404__inner {
  padding-block: 4rem 5rem;
}
@media screen and (min-width: 376px) {
  .page-404__inner {
    padding-block: 64px 80px;
  }
}
@media (min-width: 768px) {
  .page-404__inner {
    padding-block: 6.25rem 6.875rem;
  }
}

.page-404__content {
  text-align: center;
}

.page-404__title {
  font-size: 1.25rem;
  font-weight: 900;
  line-height: 1.6;
  text-align: center;
  color: #116BAF;
}
@media screen and (min-width: 376px) {
  .page-404__title {
    font-size: 20px;
  }
}
@media (min-width: 768px) {
  .page-404__title {
    font-size: clamp(24px, 2.25rem, 36px);
  }
}

.page-404__text {
  font-size: 0.875rem;
  font-weight: 500;
  line-height: 1.6;
  text-align: center;
  color: #111;
  margin-top: 1.5rem;
}
@media screen and (min-width: 376px) {
  .page-404__text {
    font-size: clamp(14px, 0.875rem, 16px);
    margin-top: 24px;
  }
}
@media (min-width: 768px) {
  .page-404__text {
    margin-top: 2rem;
    font-size: clamp(16px, 1.125rem, 18px);
  }
}

.page-404__btn {
  text-align: center;
  margin-top: 2rem;
}
@media screen and (min-width: 376px) {
  .page-404__btn {
    margin-top: 32px;
  }
}
@media (min-width: 768px) {
  .page-404__btn {
    margin-top: 4rem;
  }
}

.page-about__inner {
  padding-top: 4rem;
}
@media screen and (min-width: 376px) {
  .page-about__inner {
    padding-top: 64px;
  }
}
@media (min-width: 768px) {
  .page-about__inner {
    padding-top: 6.25rem;
  }
}

.about-intro {
  margin-block: 4rem 5rem;
  width: 100%;
  max-width: 100%;
  margin-inline: auto;
}
@media screen and (min-width: 376px) {
  .about-intro {
    margin-block: 64px 80px;
    width: clamp(375px, 31.25rem, 500px);
  }
}
@media (min-width: 768px) {
  .about-intro {
    width: 81.375rem;
    margin-block: 64px 100px;
  }
}

.about-intro__inner {
  position: relative;
  padding-block: 20.25rem 0;
  padding-inline: 0.9375rem;
}
.about-intro__inner::before {
  content: "";
  position: absolute;
  top: 0;
  left: 50%;
  translate: -50%;
  width: 21.4375rem;
  height: 18.25rem;
  z-index: -1;
  background: url(../img/webp/about-intro-img-sp.webp) no-repeat center center/cover;
}
@media screen and (min-width: 376px) {
  .about-intro__inner::before {
    width: 343px;
    height: 292px;
  }
}
@media (min-width: 768px) {
  .about-intro__inner::before {
    top: 0;
    left: 0;
    translate: initial;
    width: 17.125rem;
    height: 18.5625rem;
    background: url(../img/webp/about-intro-img01-pc.webp) no-repeat center center/cover;
  }
}
@media (min-width: 768px) {
  .about-intro__inner::after {
    content: "";
    position: absolute;
    bottom: 0;
    right: 0;
    width: 17.0625rem;
    height: 19.4375rem;
    z-index: -1;
    background: url(../img/webp/about-intro-img02-pc.webp) no-repeat center center/cover;
  }
}
@media screen and (min-width: 376px) {
  .about-intro__inner {
    padding-block: 324px 0;
    padding-inline: 15px;
  }
}
@media (min-width: 768px) {
  .about-intro__inner {
    padding-block: 73px 40px;
  }
}

.page-about__title {
  width: 15.125rem;
  max-width: 100%;
  margin-inline: auto;
}
@media screen and (min-width: 376px) {
  .page-about__title {
    width: 242px;
  }
}
@media (min-width: 768px) {
  .page-about__title {
    width: 612px;
  }
}
.page-about__title img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.about-intro__text.--pc {
  display: none;
}
@media (min-width: 768px) {
  .about-intro__text.--pc {
    display: block;
    margin-top: 48px;
  }
}
.about-intro__text.--pc p {
  font-weight: 500;
  line-height: 1.6;
  color: #111;
  text-shadow: 0 1px 3px rgba(215, 238, 255, 0.7);
  border-bottom: 2px dashed #000;
  text-align: center;
  display: block;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  margin-inline: auto;
}
@media (min-width: 768px) {
  .about-intro__text.--pc p {
    font-size: clamp(16px, 1.125rem, 18px);
    padding-block: 1.125rem;
  }
}

.about-intro__text.--sp {
  display: block;
  margin-top: 2rem;
}
@media screen and (min-width: 376px) {
  .about-intro__text.--sp {
    margin-top: 32px;
  }
}
@media (min-width: 768px) {
  .about-intro__text.--sp {
    display: none;
  }
}
.about-intro__text.--sp p {
  font-size: 0.875rem;
  font-weight: 500;
  line-height: 1.6;
  color: #111;
  border-bottom: 2px dotted #000;
  padding-block: 0.75rem;
  text-align: center;
  display: block;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  margin-inline: auto;
}
@media screen and (min-width: 376px) {
  .about-intro__text.--sp p {
    font-size: clamp(14px, 0.875rem, 16px);
    padding-block: 12px;
  }
}

.page-column-archive {
  margin-top: 4rem;
}
@media screen and (min-width: 376px) {
  .page-column-archive {
    margin-top: 64px;
  }
}
@media (min-width: 768px) {
  .page-column-archive {
    margin-top: 5rem;
  }
}

.page-column__inner {
  padding-block: 4rem 5rem;
}
@media screen and (min-width: 376px) {
  .page-column__inner {
    padding-block: 64px 80px;
  }
}
@media (min-width: 768px) {
  .page-column__inner {
    padding-block: 6.25rem;
  }
}

.page-column__content {
  margin-top: 3rem;
  width: 100%;
  max-width: 100%;
  margin-inline: auto;
}
@media screen and (min-width: 376px) {
  .page-column__content {
    margin-top: 48px;
    width: clamp(375px, 31.25rem, 500px);
  }
}
@media (min-width: 768px) {
  .page-column__content {
    margin-top: 4rem;
    width: 75rem;
  }
}

.page-column__items {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: (1fr)[1];
  grid-template-columns: repeat(1, 1fr);
  gap: 1.5rem;
}
@media (min-width: 768px) {
  .page-column__items {
    gap: 24px;
    -ms-grid-columns: (1fr)[2];
    grid-template-columns: repeat(2, 1fr);
  }
}
@media screen and (min-width: 1000px) {
  .page-column__items {
    -ms-grid-columns: (1fr)[3];
    grid-template-columns: repeat(3, 1fr);
    gap: 1.5rem;
  }
}

.page-column__item {
  position: relative;
  padding: 1.5rem 1rem;
  background: #FFF;
  border-radius: 1rem;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
}
@media screen and (min-width: 376px) {
  .page-column__item {
    padding: 24px 16px;
    border-radius: 16px;
  }
}
@media (min-width: 768px) {
  .page-column__item {
    padding: 1.5rem;
  }
}
.page-column__item.--new-arrival::before {
  content: "";
  z-index: 1;
  position: absolute;
  top: -1.5625rem;
  left: -1.125rem;
  width: 5rem;
  height: 5rem;
  background: url(../img/webp/new-badge.webp) no-repeat center center/cover;
}
@media screen and (min-width: 376px) {
  .page-column__item.--new-arrival::before {
    width: clamp(80px, 5rem, 92px);
    height: clamp(80px, 5rem, 92px);
    top: -25px;
    left: -18px;
  }
}
@media (min-width: 768px) {
  .page-column__item.--new-arrival::before {
    width: clamp(80px, 5.75rem, 92px);
    height: clamp(80px, 5.75rem, 92px);
  }
}

.page-column__item-img {
  -webkit-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
  display: block;
  border-radius: 1rem;
  overflow: hidden;
  aspect-ratio: 336/197;
}
@media screen and (min-width: 376px) {
  .page-column__item-img {
    border-radius: 16px;
  }
}
@media (min-width: 768px) {
  .page-column__item-img {
    border-radius: 1.25rem;
  }
}
.page-column__item-img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
@media (any-hover: hover) {
  .page-column__item-img:hover {
    opacity: 0.6;
  }
}

.page-column__item-body {
  margin-top: 1rem;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 0.5rem;
}
@media screen and (min-width: 376px) {
  .page-column__item-body {
    margin-top: 16px;
    gap: 8px;
  }
}
@media (min-width: 768px) {
  .page-column__item-body {
    margin-top: 1rem;
    gap: 0.5rem;
  }
}

.page-column__item-meta {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 1rem;
}
.page-column__item-meta .date {
  font-size: 0.875rem;
  font-weight: 600;
  line-height: 1.6;
  color: #888888;
  font-family: "Montserrat", sans-serif;
}
@media screen and (min-width: 376px) {
  .page-column__item-meta .date {
    font-size: clamp(14px, 0.875rem, 16px);
  }
}
@media (min-width: 768px) {
  .page-column__item-meta .date {
    font-size: clamp(14px, 1rem, 16px);
  }
}
.page-column__item-meta .cta-tag a {
  font-size: 0.875rem;
  font-weight: 700;
  line-height: 1.6;
  color: #111;
  padding: 0.25rem 0.75rem;
  background: #FDD557;
  border-radius: 6.25rem;
}
@media screen and (min-width: 376px) {
  .page-column__item-meta .cta-tag a {
    font-size: clamp(14px, 0.875rem, 16px);
    padding: 4px 12px;
  }
}
@media (min-width: 768px) {
  .page-column__item-meta .cta-tag a {
    font-size: 16px;
  }
}

.page-column__item-title {
  -webkit-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
  display: block;
  font-size: 1rem;
  font-weight: 700;
  line-height: 1.6;
  color: #111;
  letter-spacing: 0.05em;
}
@media screen and (min-width: 376px) {
  .page-column__item-title {
    font-size: clamp(16px, 1rem, 18px);
  }
}
@media (min-width: 768px) {
  .page-column__item-title {
    font-size: 18px;
  }
}
@media (any-hover: hover) {
  .page-column__item-title:hover {
    opacity: 0.6;
  }
}

.page-column__item-text {
  -webkit-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
  display: block;
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.6;
  color: #222;
  letter-spacing: 0.05em;
}
@media screen and (min-width: 376px) {
  .page-column__item-text {
    font-size: clamp(14px, 0.875rem, 16px);
  }
}
@media (min-width: 768px) {
  .page-column__item-text {
    font-weight: 500;
    font-size: 16px;
  }
}
@media (any-hover: hover) {
  .page-column__item-text:hover {
    opacity: 0.6;
  }
}

.page-column__item-footer,
.page-column__item-bottom {
  text-align: end;
  margin-top: 1.5rem;
}
@media screen and (min-width: 376px) {
  .page-column__item-footer,
  .page-column__item-bottom {
    margin-top: 24px;
  }
}
@media (min-width: 768px) {
  .page-column__item-footer,
  .page-column__item-bottom {
    margin-top: 1.5rem;
  }
}

.page-column__item-more {
  -webkit-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
  font-size: 0.875rem;
  font-weight: 700;
  line-height: 1.6;
  position: relative;
  display: -webkit-inline-box;
  display: -webkit-inline-flex;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0.625rem;
  -webkit-box-pack: end;
  -webkit-justify-content: flex-end;
      -ms-flex-pack: end;
          justify-content: flex-end;
}
@media screen and (min-width: 376px) {
  .page-column__item-more {
    font-size: clamp(14px, 0.875rem, 16px);
    gap: 10px;
  }
}
@media (min-width: 768px) {
  .page-column__item-more {
    gap: 0.625rem;
    font-size: 16px;
  }
}
.page-column__item-more::after {
  content: "";
  background: url(../img/svg/arrow-circle-right-bg-black.svg) no-repeat center center/contain;
  width: 1.25rem;
  height: 1.25rem;
}
@media screen and (min-width: 376px) {
  .page-column__item-more::after {
    width: 20px;
    height: 20px;
  }
}
@media (min-width: 768px) {
  .page-column__item-more::after {
    width: clamp(20px, 1.25rem, 30px);
    height: clamp(20px, 1.25rem, 30px);
  }
}
@media (any-hover: hover) {
  .page-column__item-more:hover {
    opacity: 0.6;
  }
}

.page-column__title {
  font-size: 1.5rem;
  font-weight: 900;
  line-height: 1.6;
  color: #111;
  text-align: center;
}
@media screen and (min-width: 376px) {
  .page-column__title {
    font-size: 24px;
  }
}
@media (min-width: 768px) {
  .page-column__title {
    font-size: clamp(30px, 2.5rem, 40px);
  }
}

.page-column.--keyword .page-column__content {
  margin-top: 2rem;
}
@media screen and (min-width: 376px) {
  .page-column.--keyword .page-column__content {
    margin-top: 32px;
  }
}
@media (min-width: 768px) {
  .page-column.--keyword .page-column__content {
    margin-top: 4rem;
  }
}
.page-column.--keyword .cta-name {
  font-size: 1rem;
  font-weight: 900;
  line-height: 1.6;
  color: #222;
  margin-bottom: 1.5rem;
}
@media screen and (min-width: 376px) {
  .page-column.--keyword .cta-name {
    font-size: clamp(16px, 1rem, 28px);
    margin-bottom: 24px;
  }
}
@media (min-width: 768px) {
  .page-column.--keyword .cta-name {
    margin-bottom: 3rem;
    font-size: clamp(28px, 2rem, 32px);
  }
}
.page-column.--category .cta-name {
  font-size: 1rem;
  font-weight: 900;
  line-height: 1.6;
  color: #222;
  margin-bottom: 1.5rem;
}
@media screen and (min-width: 376px) {
  .page-column.--category .cta-name {
    font-size: clamp(16px, 1rem, 28px);
    margin-bottom: 24px;
  }
}
@media (min-width: 768px) {
  .page-column.--category .cta-name {
    margin-bottom: 3rem;
    font-size: clamp(24px, 1.75rem, 28px);
  }
}

.page-column-category {
  margin-top: 2rem;
}
@media screen and (min-width: 376px) {
  .page-column-category {
    margin-top: 32px;
  }
}
@media (min-width: 768px) {
  .page-column-category {
    margin-top: 4rem;
  }
}

.page-contact-thanks {
  background: #D7EEFF;
}

.page-contact-thanks__inner {
  padding-block: 4rem 5rem;
}
@media screen and (min-width: 376px) {
  .page-contact-thanks__inner {
    padding-block: 64px 80px;
  }
}
@media (min-width: 768px) {
  .page-contact-thanks__inner {
    padding-block: 6.25rem 6.875rem;
  }
}

.page-contact-thanks__content {
  width: 100%;
  max-width: 100%;
  margin-inline: auto;
  background: #FFF;
  padding-block: 2rem;
  padding-inline: 1rem;
  border-radius: 1rem;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 1rem;
}
@media screen and (min-width: 376px) {
  .page-contact-thanks__content {
    padding-inline: 16px;
    padding-block: 32px;
    gap: 16px;
    border-radius: 16px;
  }
}
@media (min-width: 768px) {
  .page-contact-thanks__content {
    width: 75rem;
    padding-inline: auto;
    padding-block: 4rem;
    border-radius: 1.25rem;
    gap: 2.5rem;
  }
}

.page-contact-thanks__title {
  font-size: 1.25rem;
  font-weight: 900;
  line-height: 1.6;
  text-align: center;
  color: #116BAF;
}
@media screen and (min-width: 376px) {
  .page-contact-thanks__title {
    font-size: 20px;
  }
}
@media (min-width: 768px) {
  .page-contact-thanks__title {
    font-size: clamp(24px, 2.25rem, 36px);
  }
}

.page-contact-thanks__text {
  font-size: 0.875rem;
  font-weight: 500;
  line-height: 1.6;
  text-align: center;
  color: #111;
}
@media screen and (min-width: 376px) {
  .page-contact-thanks__text {
    font-size: clamp(14px, 0.875rem, 16px);
  }
}
@media (min-width: 768px) {
  .page-contact-thanks__text {
    font-size: 16px;
  }
}

input[type=text],
input[type=email],
input[type=tel],
select,
textarea {
  display: block;
  border-radius: 0.3125rem;
  width: 100%;
  border: none;
  padding: 0.875rem 0.625rem;
  background: #F0F0F0;
  font-size: 0.875rem;
  font-weight: 500;
  line-height: normal;
}
@media screen and (min-width: 376px) {
  input[type=text],
  input[type=email],
  input[type=tel],
  select,
  textarea {
    font-size: 14px;
    padding: 14px 10px;
    border-radius: 5px;
  }
}
@media (min-width: 768px) {
  input[type=text],
  input[type=email],
  input[type=tel],
  select,
  textarea {
    font-size: 18px;
    padding: 16px 25px;
  }
}
input[type=text]::-webkit-input-placeholder, input[type=email]::-webkit-input-placeholder, input[type=tel]::-webkit-input-placeholder, select::-webkit-input-placeholder, textarea::-webkit-input-placeholder {
  color: #C2C2C2;
}
input[type=text]::-moz-placeholder, input[type=email]::-moz-placeholder, input[type=tel]::-moz-placeholder, select::-moz-placeholder, textarea::-moz-placeholder {
  color: #C2C2C2;
}
input[type=text]:-ms-input-placeholder, input[type=email]:-ms-input-placeholder, input[type=tel]:-ms-input-placeholder, select:-ms-input-placeholder, textarea:-ms-input-placeholder {
  color: #C2C2C2;
}
input[type=text]::-ms-input-placeholder, input[type=email]::-ms-input-placeholder, input[type=tel]::-ms-input-placeholder, select::-ms-input-placeholder, textarea::-ms-input-placeholder {
  color: #C2C2C2;
}
input[type=text]::placeholder,
input[type=email]::placeholder,
input[type=tel]::placeholder,
select::placeholder,
textarea::placeholder {
  color: #C2C2C2;
}

textarea {
  height: 12.5rem;
  resize: vertical;
}
@media screen and (min-width: 376px) {
  textarea {
    height: 200px;
  }
}
@media (min-width: 768px) {
  textarea {
    height: 350px;
  }
}

select {
  -webkit-appearance: none;
  -moz-appearance: none;
       appearance: none;
}

input[type=radio] {
  width: 1px;
  height: 1px;
  position: absolute;
  clip: rect(0, 0, 0, 0);
}

input[type=radio]:checked + span::after {
  opacity: 1;
}

.contact__data-radio {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: (auto)[2];
  grid-template-columns: repeat(2, auto);
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  gap: 0.5rem 1.5rem;
}
@media screen and (min-width: 376px) {
  .contact__data-radio {
    gap: 8px 24px;
  }
}
@media (min-width: 768px) {
  .contact__data-radio {
    -ms-grid-columns: (auto)[4];
    grid-template-columns: repeat(4, auto);
    gap: 1.5rem;
  }
}
.contact__data-radio .wpcf7-list-item-label {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0.5rem;
  font-size: 1rem;
  font-weight: 500;
  line-height: 1.6;
  position: relative;
}
@media screen and (min-width: 376px) {
  .contact__data-radio .wpcf7-list-item-label {
    font-size: 16px;
    gap: 8px;
  }
}
@media (min-width: 768px) {
  .contact__data-radio .wpcf7-list-item-label {
    font-size: 18px;
    gap: 8px;
  }
}
.contact__data-radio .wpcf7-list-item-label::before {
  content: "";
  width: 0.9375rem;
  height: 0.9375rem;
  border: 1px solid #CCCCCC;
  background: #FFF;
  border-radius: 100vmax;
}
@media screen and (min-width: 376px) {
  .contact__data-radio .wpcf7-list-item-label::before {
    width: 15px;
    height: 15px;
  }
}
@media (min-width: 768px) {
  .contact__data-radio .wpcf7-list-item-label::before {
    width: 20px;
    height: 20px;
  }
}
.contact__data-radio .wpcf7-list-item-label::after {
  content: "";
  position: absolute;
  left: 0.1875rem;
  top: 50%;
  translate: 0 -50%;
  width: 0.5625rem;
  height: 0.5625rem;
  border-radius: 100vmax;
  background: #116BAF;
  opacity: 0;
  -webkit-transition: opacity 0.2s ease;
  transition: opacity 0.2s ease;
}
@media screen and (min-width: 376px) {
  .contact__data-radio .wpcf7-list-item-label::after {
    width: 9px;
    height: 9px;
    left: 3px;
  }
}
@media (min-width: 768px) {
  .contact__data-radio .wpcf7-list-item-label::after {
    left: 4px;
    width: 12px;
    height: 12px;
  }
}

input[type=checkbox] {
  width: 1px;
  height: 1px;
  position: absolute;
  clip: rect(0, 0, 0, 0);
}

input[type=checkbox]:checked + span::after {
  opacity: 1;
}

.contact__data-checkbox {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: (auto)[2];
  grid-template-columns: repeat(2, auto);
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  margin-inline: auto;
}
.contact__data-checkbox .wpcf7-list-item-label {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0.5rem;
  font-size: 1rem;
  font-weight: 500;
  line-height: 1.6;
  text-align: center;
  position: relative;
}
@media screen and (min-width: 376px) {
  .contact__data-checkbox .wpcf7-list-item-label {
    font-size: 16px;
    gap: 8px;
  }
}
@media (min-width: 768px) {
  .contact__data-checkbox .wpcf7-list-item-label {
    font-size: 18px;
  }
}
.contact__data-checkbox .wpcf7-list-item-label::before {
  content: "";
  display: inline-block;
  width: 1.125rem;
  height: 1.125rem;
  border: 1px solid #574133;
  border-radius: 0.125rem;
}
@media screen and (min-width: 376px) {
  .contact__data-checkbox .wpcf7-list-item-label::before {
    width: 18px;
    height: 18px;
    border-radius: 2px;
  }
}
@media (min-width: 768px) {
  .contact__data-checkbox .wpcf7-list-item-label::before {
    width: 18px;
    height: 18px;
    border-radius: 2px;
  }
}
.contact__data-checkbox .wpcf7-list-item-label::after {
  content: "";
  position: absolute;
  top: 0.375rem;
  left: 0.375rem;
  width: 6px;
  height: 12px;
  rotate: 45deg;
  border-right: 3px solid #116BAF;
  border-bottom: 3px solid #116BAF;
  opacity: 0;
  -webkit-transition: opacity 0.2s ease;
  transition: opacity 0.2s ease;
}
@media screen and (min-width: 376px) {
  .contact__data-checkbox .wpcf7-list-item-label::after {
    left: 6px;
    top: 4px;
    width: 7px;
    height: 17px;
  }
}
@media (min-width: 768px) {
  .contact__data-checkbox .wpcf7-list-item-label::after {
    left: 6px;
    top: 4px;
    width: 7px;
    height: 17px;
  }
}

.contact__acceptance {
  text-align: center;
  margin-top: 2.5rem;
}
@media screen and (min-width: 376px) {
  .contact__acceptance {
    margin-top: 40px;
  }
}
@media (min-width: 768px) {
  .contact__acceptance {
    margin-top: 64px;
  }
}
.contact__acceptance a {
  display: block;
  font-weight: 500;
  color: #2698D5;
  display: inline-block;
  text-decoration: underline;
}

input[type=submit],
input[type=button] {
  border-radius: 0px;
  -webkit-box-sizing: content-box;
  -webkit-appearance: button;
  -moz-appearance: button;
       appearance: button;
  border: none;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  cursor: pointer;
  background: transparent;
}

input[type=submit]::-webkit-search-decoration,
input[type=button]::-webkit-search-decoration {
  display: none;
}

.row.jc-center {
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
}

.contact__submit {
  margin-top: 32px;
}
@media screen and (min-width: 376px) {
  .contact__submit {
    margin-top: 32px;
  }
}
@media (min-width: 768px) {
  .contact__submit {
    margin-top: 32px;
  }
}
.contact__submit button,
.contact__submit input[type=submit] {
  background: #111;
  border: 0.125rem solid #111;
  -webkit-box-shadow: 0 4px 0 rgba(0, 0, 0, 0.2);
          box-shadow: 0 4px 0 rgba(0, 0, 0, 0.2);
  border-radius: 6.25rem;
  position: relative;
  padding: 1rem 3.125rem;
  width: 17rem;
  max-width: 100%;
  margin-inline: auto;
  display: block;
  color: #FFF;
  font-size: 1rem;
  font-weight: 900;
  line-height: normal;
  text-align: center;
  -webkit-transition: background 0.3s ease;
  transition: background 0.3s ease;
}
@media screen and (min-width: 376px) {
  .contact__submit button,
  .contact__submit input[type=submit] {
    width: 272px;
    font-size: 16px;
    border: 2px solid #111;
    padding: 16px 50px;
  }
}
@media (min-width: 768px) {
  .contact__submit button,
  .contact__submit input[type=submit] {
    padding: 22px 80px;
    width: 362px;
    font-size: 18px;
    border: 2px solid #111;
  }
}
.contact__submit button::after,
.contact__submit input[type=submit]::after {
  content: "";
  position: absolute;
  top: 50%;
  translate: 0 -50%;
  right: 1rem;
  background: url(../img/svg/arrow-circle-right-black-bg-white.svg) no-repeat center center/contain;
  width: 1.5rem;
  height: 1.5rem;
}
@media screen and (min-width: 376px) {
  .contact__submit button::after,
  .contact__submit input[type=submit]::after {
    width: 24px;
    height: 24px;
    right: 16px;
  }
}
@media (min-width: 768px) {
  .contact__submit button::after,
  .contact__submit input[type=submit]::after {
    width: 30px;
    height: 30px;
    right: 24px;
  }
}
@media (any-hover: hover) {
  .contact__submit button:hover,
  .contact__submit input[type=submit]:hover {
    color: #111;
    background: #FFF;
    border: 2px solid #111;
  }
  .contact__submit button:hover::after,
  .contact__submit input[type=submit]:hover::after {
    background: url(../img/svg/arrow-circle-right-bg-black.svg) no-repeat center center/contain;
  }
}
.contact__submit button:disabled,
.contact__submit input[type=submit]:disabled {
  background: #CCCCCC;
  border: 2px solid #CCCCCC;
  cursor: not-allowed;
}
@media (any-hover: hover) {
  .contact__submit button:disabled,
  .contact__submit input[type=submit]:disabled {
    color: #fff;
  }
}

.contact__content {
  width: 100%;
  max-width: 100%;
  margin-top: 4rem;
  padding: 4rem 0.9375rem 5rem;
  margin-inline: auto;
  background: #FFF;
}
@media screen and (min-width: 376px) {
  .contact__content {
    padding: 64px 15px 80px;
    margin-top: 64px;
    width: 500px;
  }
}
@media screen and (min-width: 501px) and (max-width: 767px) {
  .contact__content {
    border-radius: 16px;
  }
}
@media (min-width: 768px) {
  .contact__content {
    padding: 5rem 5rem 6.25rem;
    width: 75rem;
    margin-top: 5rem;
    border-radius: 1.25rem;
  }
}

.page-contact__inner {
  padding-block: 4rem 0;
}
@media screen and (min-width: 376px) {
  .page-contact__inner {
    padding-block: 64px 0;
  }
}
@media (min-width: 768px) {
  .page-contact__inner {
    padding-block: 6.25rem 6.875rem;
    padding-inline: 1.5625rem;
  }
}

.contact__row {
  padding-block: 1.5rem;
  border-top: 1px solid #CCCCCC;
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: (1fr)[1];
  grid-template-columns: repeat(1, 1fr);
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0.5rem;
}
@media screen and (min-width: 376px) {
  .contact__row {
    padding-block: 24px;
    gap: 8px;
  }
}
@media screen and (min-width: 851px) {
  .contact__row {
    -ms-grid-columns: 17.875rem 1fr;
    grid-template-columns: 17.875rem 1fr;
    padding-bottom: 32px;
    gap: initial;
  }
}
.contact__row.--aifs {
  -webkit-box-align: start;
  -webkit-align-items: flex-start;
      -ms-flex-align: start;
          align-items: flex-start;
}
.contact__row.--last {
  border-bottom: 1px solid #CCCCCC;
}

.contact__head {
  font-size: 1rem;
  font-weight: 700;
  line-height: 1.8;
}
@media screen and (min-width: 376px) {
  .contact__head {
    font-size: 16px;
  }
}
@media (min-width: 768px) {
  .contact__head {
    font-size: 18px;
  }
}
.contact__head span.--must {
  position: relative;
  display: inline-block;
}
.contact__head span.--must::after {
  content: "必須";
  position: absolute;
  top: calc(50% + 1px);
  translate: 0 -50%;
  left: calc(100% + 1rem);
  font-size: 0.8125rem;
  font-weight: bold;
  line-height: 1.8;
  display: inline-block;
  padding-inline: 0.25rem;
  background: #FDD557;
  border-radius: 0.1875rem;
  color: #111;
  white-space: nowrap;
}
@media screen and (min-width: 376px) {
  .contact__head span.--must::after {
    left: calc(100% + 16px);
    font-size: 13px;
    padding-inline: 4px;
    border-radius: 3px;
  }
}
@media (min-width: 768px) {
  .contact__head span.--must::after {
    left: calc(100% + 0.5rem);
    font-size: 14px;
    padding-inline: 0.25rem;
  }
}

.contact__data {
  border-radius: 0.3125rem;
}
@media screen and (min-width: 376px) {
  .contact__data {
    border-radius: 5px;
  }
}
@media (min-width: 768px) {
  .contact__data {
    border-radius: 0.3125rem;
  }
}

.page-cta {
  position: relative;
  z-index: 1;
  padding-block: 6.9375rem 4rem;
  background: url(../img/webp/page-cta-bg-pc.webp) no-repeat center center/cover;
}
@media screen and (min-width: 376px) {
  .page-cta {
    padding-block: 111px 64px;
  }
}
@media (min-width: 768px) {
  .page-cta {
    padding-block: 8.75rem 6.875rem;
  }
}
.page-cta .page-cta__inner {
  padding-inline: 0.75rem;
}

.page-cta__content-wrap {
  padding: 17.1875rem 0.9375rem 1.5rem;
  width: 21.75rem;
  max-width: 100%;
  margin-inline: auto;
  border: 0.1875rem solid #111;
  border-radius: 1rem;
  background: #FFF;
  position: relative;
}
@media screen and (min-width: 376px) {
  .page-cta__content-wrap {
    padding: 275px 15px 24px;
    width: 500px;
    border: 3px solid #111;
    border-radius: 16px;
  }
}
@media (min-width: 768px) {
  .page-cta__content-wrap {
    padding: 3.75rem 2.125rem 2.5rem;
    border: 0.375rem solid #111;
    width: 62.5rem;
    border-radius: 1.25rem;
  }
}
@media screen and (min-width: 1321px) {
  .page-cta__content-wrap {
    width: 74.0625rem;
  }
}
.page-cta__content-wrap::before {
  content: "";
  background: url(../img/webp/clip-person-page-cta-sp.webp) no-repeat center center/cover;
  width: 19.125rem;
  height: 21.5625rem;
  max-width: 100%;
  position: absolute;
  top: -5.625rem;
  left: 45%;
  translate: -50%;
  z-index: 1;
}
@media screen and (min-width: 376px) {
  .page-cta__content-wrap::before {
    width: 306px;
    height: 345px;
    top: -90px;
  }
}
@media (min-width: 768px) {
  .page-cta__content-wrap::before {
    background: url(../img/webp/clip-person-page-cta-pc.webp) no-repeat center center/cover;
    left: -0.625rem;
    translate: initial;
    top: clamp(35px, 2.25rem, 37px);
    width: 31.25rem;
    height: 34.375rem;
  }
}
@media screen and (min-width: 1321px) {
  .page-cta__content-wrap::before {
    left: -6.25rem;
    top: -7.0625rem;
    width: 41.75rem;
    height: 45.375rem;
  }
}
@media (min-width: 768px) {
  .page-cta__content-wrap::after {
    content: "";
    position: absolute;
    bottom: -1.125rem;
    left: 1.25rem;
    z-index: -2;
    width: 100%;
    height: 100%;
    border-radius: 1.25rem;
    background: url(../img/webp/box-bg-pc.webp) no-repeat center center/cover;
  }
}

.page-cta__check-items {
  width: 19.6875rem;
  max-width: 100%;
  margin-inline: auto;
  margin-top: initial;
  padding-inline: 0.9375rem;
}
@media screen and (min-width: 376px) {
  .page-cta__check-items {
    width: 100%;
    margin-left: auto;
    margin-right: 0;
    padding-inline: 15px;
  }
}
@media (min-width: 768px) {
  .page-cta__check-items {
    width: 29.6875rem;
    margin-left: auto;
    padding-inline: initial;
  }
}
@media screen and (min-width: 951px) {
  .page-cta__check-items {
    width: 29.6875rem;
  }
}
@media screen and (min-width: 1321px) {
  .page-cta__check-items {
    width: 35.9375rem;
  }
}

.page-cta__check-item {
  font-size: 1rem;
  color: #111;
  font-weight: 900;
  line-height: 1.6;
  position: relative;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0.5rem;
  padding-block: 0.5rem;
  border-top: 1px solid #CCCCCC;
}
@media screen and (min-width: 376px) {
  .page-cta__check-item {
    font-size: 16px;
    gap: 16px;
    padding-block: 8px;
  }
}
@media (min-width: 768px) {
  .page-cta__check-item {
    padding-block: 1rem;
    gap: 1rem;
    font-size: clamp(20px, 1.75rem, 28px);
  }
}
.page-cta__check-item span {
  color: #F2761E;
  display: contents;
}
.page-cta__check-item::before {
  content: "";
  background: url(../img/svg/check-icon-gray.svg) no-repeat center center/cover;
  width: 1.25rem;
  height: 1.3125rem;
}
@media screen and (min-width: 376px) {
  .page-cta__check-item::before {
    width: 20px;
    height: 21px;
  }
}
@media (min-width: 768px) {
  .page-cta__check-item::before {
    width: 2rem;
    height: 2.125rem;
  }
}
.page-cta__check-item:last-child {
  border-bottom: 1px solid #CCCCCC;
}

.page-cta__bottom-content {
  border-radius: 1rem;
  background: #D7EEFF;
  padding: 1.5rem 0.9375rem;
  width: 100%;
  max-width: 100%;
  margin-inline: auto;
  margin-top: 1.5rem;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 1rem;
  position: relative;
  z-index: 1;
}
@media screen and (min-width: 376px) {
  .page-cta__bottom-content {
    padding: 24px 15px;
    margin-top: 24px;
    gap: 16px;
    border-radius: 16px;
  }
}
@media (min-width: 768px) {
  .page-cta__bottom-content {
    width: 69rem;
    padding: 2.5rem;
    gap: 1.5rem;
    margin-top: 2.8125rem;
    border-radius: 1.25rem;
  }
}

.page-cta__title {
  width: 16.9375rem;
  max-width: 100%;
  margin-inline: auto;
}
@media screen and (min-width: 376px) {
  .page-cta__title {
    width: 271px;
  }
}
@media (min-width: 768px) {
  .page-cta__title {
    width: 30.8125rem;
  }
}
.page-cta__title img {
  width: 100%;
  height: 100%;
}

.page-cta__text {
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.6;
  text-align: center;
}
@media screen and (min-width: 376px) {
  .page-cta__text {
    font-size: clamp(14px, 0.875rem, 16px);
  }
}
@media (min-width: 768px) {
  .page-cta__text {
    font-size: clamp(16px, 1.125rem, 18px);
  }
}

.page-cta__banner {
  margin-top: 4rem;
}
@media screen and (min-width: 376px) {
  .page-cta__banner {
    margin-top: 64px;
  }
}
@media (min-width: 768px) {
  .page-cta__banner {
    margin-top: 7.1875rem;
  }
}
.page-cta__banner img {
  width: 100%;
  height: 100%;
}
.page-cta__banner a {
  margin-inline: auto;
  width: 21.75rem;
  max-width: 100%;
  display: block;
  -webkit-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
}
@media screen and (min-width: 376px) {
  .page-cta__banner a {
    width: 348px;
  }
}
@media (min-width: 768px) {
  .page-cta__banner a {
    width: 43.75rem;
  }
}
@media (any-hover: hover) {
  .page-cta__banner a:hover {
    opacity: 0.6;
  }
}

.top-cta__banner img {
  width: 100%;
  height: 100%;
}
.top-cta__banner a {
  width: 100%;
  max-width: 100%;
  margin-inline: auto;
  display: block;
  -webkit-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
}
@media screen and (min-width: 376px) {
  .top-cta__banner a {
    width: 345px;
  }
}
@media (min-width: 768px) {
  .top-cta__banner a {
    width: 43.75rem;
  }
}
@media (any-hover: hover) {
  .top-cta__banner a:hover {
    opacity: 0.6;
  }
}

.top-cta__banner-inner {
  padding-inline: 0.9375rem;
  padding-block: 2.5rem;
  max-width: 100%;
  margin-inline: auto;
  width: 91.875rem;
}
@media screen and (min-width: 376px) {
  .top-cta__banner-inner {
    padding-inline: 15px;
    padding-block: 40px;
  }
}
@media (min-width: 768px) {
  .top-cta__banner-inner {
    position: relative;
    padding-block: 3.9375rem;
  }
  .top-cta__banner-inner::after {
    content: "";
    z-index: 1;
    position: absolute;
    bottom: -3.125rem;
    left: 0;
    width: 21.3125rem;
    height: 22.8125rem;
    background: url(../img/webp/clip-person-cta-banner.webp) no-repeat center center/contain;
  }
}

.page-faq__inner {
  padding-block: 4rem;
}
@media screen and (min-width: 376px) {
  .page-faq__inner {
    padding-block: 64px;
  }
}
@media (min-width: 768px) {
  .page-faq__inner {
    padding-block: 6.25rem;
  }
}

.page-faq__text {
  font-size: 0.875rem;
  font-weight: 700;
  line-height: 1.6;
  letter-spacing: 0.05em;
  text-align: center;
  color: #111;
}
@media screen and (min-width: 376px) {
  .page-faq__text {
    font-size: clamp(14px, 1rem, 16px);
  }
}
@media (min-width: 768px) {
  .page-faq__text {
    font-size: clamp(16px, 1.125rem, 18px);
  }
}

.faq__items {
  width: 100%;
  max-width: 100%;
  margin-inline: auto;
  margin-top: 4rem;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 1rem;
}
@media screen and (min-width: 376px) {
  .faq__items {
    margin-top: 64px;
    gap: 16px;
  }
}
@media (min-width: 768px) {
  .faq__items {
    margin-top: 5rem;
    width: 62.5rem;
    gap: 1rem;
  }
}

.faq__item {
  background: #FFF;
  border-radius: 1rem;
}
@media screen and (min-width: 376px) {
  .faq__item {
    border-radius: 16px;
  }
}
@media (min-width: 768px) {
  .faq__item {
    border-radius: 1.25rem;
  }
}

.faq__item-question {
  position: relative;
  padding: 1.5rem 1rem;
}
@media screen and (min-width: 376px) {
  .faq__item-question {
    padding: 24px 16px;
  }
}
@media (min-width: 768px) {
  .faq__item-question {
    padding: 2rem;
  }
}
.faq__item-question::before {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  translate: 0 -50%;
  right: 1rem;
  background: #116BAF;
  width: 15px;
  height: 3px;
}
@media screen and (min-width: 376px) {
  .faq__item-question::before {
    right: 16px;
    width: clamp(15px, 1.25rem, 23px);
  }
}
@media (min-width: 768px) {
  .faq__item-question::before {
    right: 2rem;
    width: clamp(23px, 1.5625rem, 25px);
  }
}
.faq__item-question::after {
  display: block;
  content: "";
  position: absolute;
  top: 50%;
  right: 1rem;
  background: #116BAF;
  width: 15px;
  height: 3px;
  -webkit-transform: translateY(-50%) rotate(90deg);
          transform: translateY(-50%) rotate(90deg);
  -webkit-transition: -webkit-transform 0.5s ease;
  transition: -webkit-transform 0.5s ease;
  transition: transform 0.5s ease;
  transition: transform 0.5s ease, -webkit-transform 0.5s ease;
}
@media screen and (min-width: 376px) {
  .faq__item-question::after {
    right: 16px;
    width: clamp(15px, 1.25rem, 23px);
  }
}
@media (min-width: 768px) {
  .faq__item-question::after {
    right: 2rem;
    width: clamp(23px, 1.5625rem, 25px);
  }
}
@media (any-hover: hover) {
  .faq__item-question:hover {
    cursor: pointer;
  }
}

.is-opened .faq__item-question::after {
  -webkit-transform: translateY(-50%) rotate(0deg);
          transform: translateY(-50%) rotate(0deg);
}

.faq__item-question-text {
  font-size: 1rem;
  letter-spacing: 0.05em;
  font-weight: 700;
  line-height: 1.6;
  color: #111;
  position: relative;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 1rem;
  padding-right: 1.875rem;
}
@media screen and (min-width: 376px) {
  .faq__item-question-text {
    font-size: 16px;
    gap: 16px;
    padding-right: 30px;
  }
}
@media (min-width: 768px) {
  .faq__item-question-text {
    font-size: clamp(16px, 1.125rem, 18px);
    gap: 1rem;
    padding-right: 2rem;
  }
}
.faq__item-question-text::before {
  content: "Q";
  font-family: "Montserrat", sans-serif;
  font-size: 1rem;
  font-weight: 700;
  line-height: 1.6;
  background: #111;
  border-radius: 100vmax;
  color: #FFF;
  width: 2.25rem;
  height: 2.25rem;
  -webkit-box-flex: 0;
  -webkit-flex-grow: 0;
      -ms-flex-positive: 0;
          flex-grow: 0;
  -webkit-flex-shrink: 0;
      -ms-flex-negative: 0;
          flex-shrink: 0;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
}
@media screen and (min-width: 376px) {
  .faq__item-question-text::before {
    font-size: 16px;
    width: 36px;
    height: 36px;
  }
}
@media (min-width: 768px) {
  .faq__item-question-text::before {
    font-size: 1.125rem;
    width: 2.875rem;
    height: 2.875rem;
  }
}

.faq__item-answer {
  height: 0;
  opacity: 0;
  overflow: hidden;
  -webkit-transition: height 0.4s ease, opacity 0.4s ease;
  transition: height 0.4s ease, opacity 0.4s ease;
}

.is-opened .faq__item-answer {
  opacity: 1;
}

.faq__item-answer-text {
  padding: 0 1rem 1.5rem;
}
@media screen and (min-width: 376px) {
  .faq__item-answer-text {
    padding: 0 16px 24px;
  }
}
@media (min-width: 768px) {
  .faq__item-answer-text {
    padding: 0 2rem 2rem;
  }
}

.faq__item-answer-text,
.faq__item-answer-link {
  font-size: 0.875rem;
  font-weight: 500;
  line-height: 1.6;
  color: #111;
}
@media screen and (min-width: 376px) {
  .faq__item-answer-text,
  .faq__item-answer-link {
    font-size: 14px;
  }
}
@media (min-width: 768px) {
  .faq__item-answer-text,
  .faq__item-answer-link {
    font-size: clamp(14px, 1rem, 16px);
  }
}

.faq__item-answer-link {
  color: #2698D5;
  text-decoration: underline;
  display: block;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  margin-top: 0.75rem;
  padding-top: 0;
  -webkit-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
}
@media screen and (min-width: 376px) {
  .faq__item-answer-link {
    margin-top: 12px;
  }
}
@media (min-width: 768px) {
  .faq__item-answer-link {
    margin-top: 1rem;
  }
}
@media (any-hover: hover) {
  .faq__item-answer-link:hover {
    opacity: 0.6;
    text-decoration: none;
  }
}

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

.page-features__inner {
  padding-top: 4rem;
}
@media screen and (min-width: 376px) {
  .page-features__inner {
    padding-top: 64px;
  }
}
@media (min-width: 768px) {
  .page-features__inner {
    padding-top: 6.25rem;
  }
}

.page-features__content {
  width: 100%;
  max-width: 100%;
  margin-inline: auto;
  margin-top: 10.25rem;
}
@media screen and (min-width: 376px) {
  .page-features__content {
    margin-top: 164px;
    width: clamp(375px, 31.25rem, 500px);
  }
}
@media (min-width: 768px) {
  .page-features__content {
    width: 90rem;
    margin-top: 5rem;
    padding-bottom: 6.25rem;
  }
}

.page-features__items {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 8.25rem;
}
@media screen and (min-width: 376px) {
  .page-features__items {
    gap: 132px;
  }
}
@media (min-width: 768px) {
  .page-features__items {
    gap: 3.5rem;
  }
}

@media (min-width: 768px) {
  .page-features__item {
    max-width: 100%;
    margin-left: auto;
    width: 84.0625rem;
    padding-left: 1.5625rem;
  }
}
@media (min-width: 768px) {
  .page-features__item:nth-child(even) {
    margin-right: auto;
    margin-left: initial;
    padding-left: initial;
    padding-right: 1.5625rem;
  }
}
@media (min-width: 768px) {
  .page-features__item:nth-child(even) .page-features__body {
    border-radius: 0 1.25rem 1.25rem 0;
    padding: 4rem 16.875rem 4rem 1.875rem;
    margin-right: 20rem;
    margin-left: initial;
  }
}
@media screen and (min-width: 951px) and (max-width: 1260px) {
  .page-features__item:nth-child(even) .page-features__body {
    padding: 4rem 16.875rem 4rem 3.125rem;
  }
}
@media screen and (min-width: 1261px) {
  .page-features__item:nth-child(even) .page-features__body {
    padding: 4rem 16.875rem 4rem 7.5rem;
  }
}
@media (min-width: 768px) {
  .page-features__item:nth-child(even) .page-features__head-img {
    left: initial;
    right: -20rem;
  }
}

.page-features__head-img {
  content: "";
  position: absolute;
  top: -25%;
  translate: -50%;
  left: 50%;
  z-index: 1;
  width: 21.5625rem;
  max-width: 100%;
}
@media screen and (min-width: 376px) {
  .page-features__head-img {
    width: 345px;
  }
}
@media (min-width: 768px) {
  .page-features__head-img {
    top: 50%;
    left: -20rem;
    translate: 0 -50%;
    width: 34.6875rem;
  }
}
.page-features__head-img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.page-features__body {
  position: relative;
  background: #FFF;
  padding: 10.1875rem 0.9375rem 3rem;
}
@media screen and (min-width: 376px) {
  .page-features__body {
    padding: 163px 15px 48px;
  }
}
@media screen and (min-width: 501px) and (max-width: 767px) {
  .page-features__body {
    border-radius: 16px;
  }
}
@media (min-width: 768px) {
  .page-features__body {
    padding: 4rem 1.875rem 4rem 16.875rem;
    border-radius: 1.25rem 0 0 1.25rem;
    margin-left: 20rem;
  }
}
@media screen and (min-width: 951px) and (max-width: 1260px) {
  .page-features__body {
    padding: 4rem 3.125rem 4rem 16.875rem;
  }
}
@media screen and (min-width: 1261px) {
  .page-features__body {
    padding: 4rem 7.5rem 4rem 16.875rem;
  }
}

.page-features__head {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0.5rem;
}
@media screen and (min-width: 376px) {
  .page-features__head {
    gap: 8px;
  }
}
@media (min-width: 768px) {
  .page-features__head {
    gap: 0.5rem;
  }
}

.page-features-num {
  display: block;
  width: 4.375rem;
  max-width: 100%;
}
@media screen and (min-width: 376px) {
  .page-features-num {
    width: 70px;
  }
}
@media (min-width: 768px) {
  .page-features-num {
    width: 7.9375rem;
  }
}
.page-features-num img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.page-features__head-title {
  font-size: 1.25rem;
  font-weight: 900;
  line-height: 1.6;
  color: #116BAF;
  -webkit-box-flex: 1;
  -webkit-flex: 1;
      -ms-flex: 1;
          flex: 1;
}
@media screen and (min-width: 376px) {
  .page-features__head-title {
    font-size: 20px;
  }
}
@media (min-width: 768px) {
  .page-features__head-title {
    font-size: 1.75rem;
  }
}

.page-features__body-text {
  font-size: 0.875rem;
  font-weight: 500;
  line-height: 1.6;
  color: #111;
  margin-top: 1rem;
}
@media screen and (min-width: 376px) {
  .page-features__body-text {
    font-size: 14px;
    margin-top: 16px;
  }
}
@media (min-width: 768px) {
  .page-features__body-text {
    font-size: clamp(14px, 1rem, 16px);
    margin-top: 1.5rem;
    letter-spacing: 0.05em;
  }
}
.page-features__body-text span {
  color: #F2761E;
  font-weight: 700;
}

.page-fv {
  overflow-y: hidden;
  position: relative;
  z-index: 1;
  background: url(../img/webp/brick-bg.webp) no-repeat center center/cover;
  height: 15.875rem;
}
@media screen and (min-width: 376px) {
  .page-fv {
    height: 254px;
  }
}
@media (min-width: 768px) {
  .page-fv {
    height: 25rem;
  }
}

.page-fv__inner {
  width: 90rem;
  max-width: 100%;
  margin-inline: auto;
  position: relative;
  padding-block: 2.5rem 6.5625rem;
  height: 100%;
}
@media screen and (min-width: 376px) {
  .page-fv__inner {
    padding-block: 40px 110px;
  }
}
@media (min-width: 768px) {
  .page-fv__inner {
    padding-block: 5.625rem 7.6875rem;
  }
}
.page-fv__inner::before, .page-fv__inner::after {
  content: "";
  position: absolute;
  z-index: -1;
}
.page-fv__inner::before {
  width: 10.625rem;
  height: 100%;
  bottom: 0;
  left: 0;
  background: url(../img/webp/page-fv-left-sp.webp) no-repeat center center/cover;
}
@media (min-width: 768px) {
  .page-fv__inner::before {
    width: 31.625rem;
    height: 23.0625rem;
    background: url(../img/webp/page-fv-left-pc.webp) no-repeat center center/cover;
  }
}
.page-fv__inner::after {
  width: 10.4375rem;
  height: 9.25rem;
  bottom: 0;
  right: 0;
  background: url(../img/webp/page-fv-right-sp.webp) no-repeat center center/cover;
}
@media (min-width: 768px) {
  .page-fv__inner::after {
    width: 33.6875rem;
    height: 23.6875rem;
    background: url(../img/webp/page-fv-right-pc.webp) no-repeat center center/cover;
  }
}

.page-fv__title {
  max-width: 100%;
  margin-inline: auto;
}
.page-fv__title img {
  width: 100%;
  height: 100%;
}
.page-fv__title.--contact {
  width: 22.25rem;
}
@media screen and (min-width: 376px) {
  .page-fv__title.--contact {
    width: 356px;
  }
}
@media (min-width: 768px) {
  .page-fv__title.--contact {
    width: 39.5625rem;
  }
}
.page-fv__title.--404 {
  width: 15.375rem;
}
@media screen and (min-width: 376px) {
  .page-fv__title.--404 {
    width: 246px;
  }
}
@media (min-width: 768px) {
  .page-fv__title.--404 {
    width: 27.75rem;
  }
}
.page-fv__title.--privacy-policy {
  width: 22.25rem;
}
@media screen and (min-width: 376px) {
  .page-fv__title.--privacy-policy {
    width: 356px;
  }
}
@media (min-width: 768px) {
  .page-fv__title.--privacy-policy {
    width: 54.125rem;
  }
}
.page-fv__title.--faq {
  width: 22.25rem;
}
@media screen and (min-width: 376px) {
  .page-fv__title.--faq {
    width: 356px;
  }
}
@media (min-width: 768px) {
  .page-fv__title.--faq {
    width: 39.375rem;
  }
}
.page-fv__title.--voice {
  width: 22.25rem;
}
@media screen and (min-width: 376px) {
  .page-fv__title.--voice {
    width: 356px;
  }
}
@media (min-width: 768px) {
  .page-fv__title.--voice {
    width: 43.375rem;
  }
}
.page-fv__title.--column {
  width: 22.25rem;
}
@media screen and (min-width: 376px) {
  .page-fv__title.--column {
    width: 356px;
  }
}
@media (min-width: 768px) {
  .page-fv__title.--column {
    width: 42.625rem;
  }
}
.page-fv__title.--work {
  width: 22.25rem;
}
@media screen and (min-width: 376px) {
  .page-fv__title.--work {
    width: 356px;
  }
}
@media (min-width: 768px) {
  .page-fv__title.--work {
    width: 45.75rem;
  }
}
.page-fv__title.--news {
  width: 16.625rem;
}
@media screen and (min-width: 376px) {
  .page-fv__title.--news {
    width: 266px;
  }
}
@media (min-width: 768px) {
  .page-fv__title.--news {
    width: 33.125rem;
  }
}
.page-fv__title.--staff {
  width: 22.25rem;
}
@media screen and (min-width: 376px) {
  .page-fv__title.--staff {
    width: 356px;
  }
}
@media (min-width: 768px) {
  .page-fv__title.--staff {
    width: 42.125rem;
  }
}
.page-fv__title.--about {
  width: 22.25rem;
}
@media screen and (min-width: 376px) {
  .page-fv__title.--about {
    width: 356px;
  }
}
@media (min-width: 768px) {
  .page-fv__title.--about {
    width: 48.5rem;
  }
}
.page-fv__title.--recruit {
  width: 16.625rem;
}
@media screen and (min-width: 376px) {
  .page-fv__title.--recruit {
    width: 266px;
  }
}
@media (min-width: 768px) {
  .page-fv__title.--recruit {
    width: 35.375rem;
  }
}
.page-fv__title.--steps {
  width: 22.25rem;
}
@media screen and (min-width: 376px) {
  .page-fv__title.--steps {
    width: 356px;
  }
}
@media (min-width: 768px) {
  .page-fv__title.--steps {
    width: 46.0625rem;
  }
}
.page-fv__title.--features {
  width: 22.25rem;
}
@media screen and (min-width: 376px) {
  .page-fv__title.--features {
    width: 356px;
  }
}
@media (min-width: 768px) {
  .page-fv__title.--features {
    width: 48.625rem;
  }
}
.page-fv__title.--service {
  width: 22.25rem;
}
@media screen and (min-width: 376px) {
  .page-fv__title.--service {
    width: 356px;
  }
}
@media (min-width: 768px) {
  .page-fv__title.--service {
    width: 47.0625rem;
  }
}
.page-fv__title.--plan {
  width: 16.625rem;
}
@media screen and (min-width: 376px) {
  .page-fv__title.--plan {
    width: 266px;
  }
}
@media (min-width: 768px) {
  .page-fv__title.--plan {
    width: 36.9375rem;
  }
}
.page-fv__title.--tips {
  width: 22.25rem;
}
@media screen and (min-width: 376px) {
  .page-fv__title.--tips {
    width: 356px;
  }
}
@media (min-width: 768px) {
  .page-fv__title.--tips {
    width: 41.6875rem;
  }
}

.page-staff .page-text {
  letter-spacing: 0;
}
.page-staff .page-nav-content {
  margin-top: 3rem;
}
@media screen and (min-width: 376px) {
  .page-staff .page-nav-content {
    margin-top: 48px;
  }
}
@media (min-width: 768px) {
  .page-staff .page-nav-content {
    margin-top: 4rem;
  }
}

.page-staff__inner {
  padding-block: 4rem 5rem;
}
@media screen and (min-width: 376px) {
  .page-staff__inner {
    padding-block: 64px 80px;
  }
}
@media (min-width: 768px) {
  .page-staff__inner {
    padding-block: 6.25rem;
  }
}

.page-staff__content {
  margin-top: 4rem;
  width: 100%;
  max-width: 100%;
  margin-inline: auto;
}
@media screen and (min-width: 376px) {
  .page-staff__content {
    margin-top: 64px;
    width: clamp(375px, 31.25rem, 500px);
  }
}
@media (min-width: 768px) {
  .page-staff__content {
    margin-top: 5rem;
    width: 75rem;
  }
}

.page-staff__items {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 1.5rem;
}
@media screen and (min-width: 376px) {
  .page-staff__items {
    gap: 24px;
  }
}
@media (min-width: 768px) {
  .page-staff__items {
    gap: 2rem;
  }
}

.page-staff__item {
  background: #FDD557;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 1rem;
  padding: 1.5rem 1rem;
  border-radius: 1rem;
}
@media screen and (min-width: 376px) {
  .page-staff__item {
    gap: 16px;
    padding: 24px 16px;
    border-radius: 16px;
  }
}
@media (min-width: 768px) {
  .page-staff__item {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-direction: row;
        -ms-flex-direction: row;
            flex-direction: row;
    gap: 2.5rem;
    padding: 2.5rem;
    border-radius: 1.25rem;
  }
}
.page-staff__item .page-staff__img {
  background-color: #F6A522;
}
.page-staff__item:nth-child(even) {
  background: #F6A522;
}
.page-staff__item:nth-child(even) .page-staff__img {
  background-color: #FDD557;
}
.page-staff__item:last-child .page-staff__tags-items {
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: start;
  -webkit-align-items: flex-start;
      -ms-flex-align: start;
          align-items: flex-start;
  gap: 1rem;
}
@media screen and (min-width: 376px) {
  .page-staff__item:last-child .page-staff__tags-items {
    gap: 16px;
  }
}
@media screen and (min-width: 951px) {
  .page-staff__item:last-child .page-staff__tags-items {
    gap: 1.5rem;
  }
}

.page-staff__intro {
  width: 100%;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-direction: row;
      -ms-flex-direction: row;
          flex-direction: row;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 1.5rem;
}
@media screen and (min-width: 376px) {
  .page-staff__intro {
    width: 100%;
    gap: 24px;
  }
}
@media (min-width: 768px) {
  .page-staff__intro {
    width: 16.25rem;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: 1rem;
  }
}

.page-staff__img {
  width: 10rem;
  height: 10rem;
  border-radius: 1rem;
  overflow: hidden;
}
@media screen and (min-width: 376px) {
  .page-staff__img {
    width: 160px;
    height: 160px;
    border-radius: 16px;
  }
}
@media (min-width: 768px) {
  .page-staff__img {
    width: 16.25rem;
    height: 16.25rem;
    border-radius: 1.25rem;
  }
}
.page-staff__img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.page-staff__profile {
  text-align: left;
}
@media (min-width: 768px) {
  .page-staff__profile {
    text-align: center;
  }
}

.page-staff__name {
  font-size: 1.25rem;
  font-weight: 700;
  line-height: 1.6;
  color: #111;
  margin-top: 0.5rem;
}
@media screen and (min-width: 376px) {
  .page-staff__name {
    font-size: 20px;
    margin-top: 8px;
  }
}
@media (min-width: 768px) {
  .page-staff__name {
    font-size: clamp(20px, 1.5rem, 24px);
    margin-top: 0.5rem;
  }
}

.page-staff__position {
  font-size: 0.875rem;
  display: inline-block;
  font-weight: 700;
  line-height: 1.6;
  color: #FFF;
  padding: 0.125rem 0.75rem;
  background: #111;
  border-radius: 6.25rem;
}
@media screen and (min-width: 376px) {
  .page-staff__position {
    font-size: 14px;
    padding: 2px 12px;
  }
}
@media (min-width: 768px) {
  .page-staff__position {
    font-size: 16px;
    padding: 0.125rem 1rem;
  }
}

.page-staff__furigana {
  font-size: 0.75rem;
  font-weight: 700;
  line-height: 1.6;
  color: #111;
  display: block;
}
@media screen and (min-width: 376px) {
  .page-staff__furigana {
    font-size: 12px;
  }
}

.page-staff__body {
  background: #FFF;
  padding: 1.5rem 1rem;
  border-radius: 0.625rem;
  -webkit-box-flex: 1;
  -webkit-flex: 1;
      -ms-flex: 1;
          flex: 1;
  height: -webkit-fit-content;
  height: -moz-fit-content;
  height: fit-content;
}
@media screen and (min-width: 376px) {
  .page-staff__body {
    padding: 24px 16px;
    border-radius: 10px;
  }
}
@media (min-width: 768px) {
  .page-staff__body {
    padding: 2.5rem;
    border-radius: 0.625rem;
  }
}

.page-staff__title {
  font-size: 1rem;
  font-weight: 900;
  line-height: 1.6;
  color: #116BAF;
}
@media screen and (min-width: 376px) {
  .page-staff__title {
    font-size: 16px;
  }
}
@media (min-width: 768px) {
  .page-staff__title {
    font-size: 20px;
  }
}

.page-staff__text {
  font-size: 0.875rem;
  font-weight: 500;
  line-height: 1.6;
  color: #111;
  margin-top: 1rem;
}
@media screen and (min-width: 376px) {
  .page-staff__text {
    font-size: 14px;
    margin-top: 16px;
  }
}
@media (min-width: 768px) {
  .page-staff__text {
    font-size: 16px;
    margin-top: 1rem;
  }
}

.page-staff__tags-items {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: start;
  -webkit-align-items: flex-start;
      -ms-flex-align: start;
          align-items: flex-start;
  gap: 1rem;
  padding: 1rem;
  background: #D7EEFF;
  border-radius: 0.625rem;
  margin-top: 1.5rem;
}
@media screen and (min-width: 376px) {
  .page-staff__tags-items {
    padding: 16px;
    border-radius: 10px;
    margin-top: 24px;
    gap: 16px;
  }
}
@media screen and (min-width: 951px) {
  .page-staff__tags-items {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-direction: row;
        -ms-flex-direction: row;
            flex-direction: row;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    margin-top: 1.5rem;
    gap: 1.5rem;
  }
}

.page-staff__tags-item {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: start;
  -webkit-align-items: flex-start;
      -ms-flex-align: start;
          align-items: flex-start;
  gap: 0.5rem;
}
@media screen and (min-width: 376px) {
  .page-staff__tags-item {
    gap: 8px;
    white-space: nowrap;
  }
}
@media (min-width: 768px) {
  .page-staff__tags-item {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-direction: row;
        -ms-flex-direction: row;
            flex-direction: row;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    gap: 0.5rem;
    white-space: initial;
  }
}
.page-staff__tags-item.--hobby {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-direction: row;
      -ms-flex-direction: row;
          flex-direction: row;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}

.page-staff__tags-item-title {
  font-size: 0.8125rem;
  font-weight: 700;
  line-height: 1.6;
  color: #FFF;
  padding: 0.125rem 0.75rem;
  background: #116BAF;
  border-radius: 6.25rem;
}
@media screen and (min-width: 376px) {
  .page-staff__tags-item-title {
    font-size: 13px;
    padding: 2px 10px;
    border-radius: 100px;
  }
}
@media (min-width: 768px) {
  .page-staff__tags-item-title {
    padding: 0.25rem 1rem;
    border-radius: 6.25rem;
    font-size: clamp(13px, 0.8125rem, 14px);
  }
}

.page-staff__tags-item-text {
  font-size: 0.875rem;
  font-weight: 500;
  line-height: 1.6;
  color: #111;
  white-space: normal;
}
@media screen and (min-width: 376px) {
  .page-staff__tags-item-text {
    font-size: 14px;
  }
}
@media (min-width: 768px) {
  .page-staff__tags-item-text {
    font-size: clamp(14px, 1rem, 16px);
    -webkit-box-flex: 1;
    -webkit-flex: 1;
        -ms-flex: 1;
            flex: 1;
  }
}

.page-nav {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0.75rem;
}
@media screen and (min-width: 376px) {
  .page-nav {
    gap: 12px;
  }
}
@media (min-width: 768px) {
  .page-nav {
    gap: 1rem;
  }
}
.page-nav span.prev.page-numbers,
.page-nav span.next.page-numbers {
  opacity: 0.5;
}
@media (any-hover: hover) {
  .page-nav span.prev.page-numbers:hover,
  .page-nav span.next.page-numbers:hover {
    opacity: 0.5;
  }
}
.page-nav .prev.page-numbers {
  display: none;
}
@media (min-width: 768px) {
  .page-nav .prev.page-numbers {
    gap: 1rem;
  }
}
.page-nav .prev.page-numbers::before {
  content: "";
  rotate: 180deg;
  width: 2rem;
  height: 2rem;
  aspect-ratio: 1;
  background: url(../img/svg/arrow-circle-right-white-bg-blue.svg) no-repeat center center/contain;
}
@media screen and (min-width: 376px) {
  .page-nav .prev.page-numbers::before {
    width: 32px;
    height: 32px;
  }
}
@media (min-width: 768px) {
  .page-nav .prev.page-numbers::before {
    width: clamp(30px, 1.5rem, 32px);
    height: clamp(30px, 1.5rem, 32px);
  }
}
@media (min-width: 768px) {
  .page-nav .prev.page-numbers {
    padding-right: 1.875rem;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
    gap: 0.75rem;
  }
}
.page-nav .next.page-numbers {
  display: none;
}
.page-nav .next.page-numbers::after {
  content: "";
  width: 2rem;
  height: 2rem;
  aspect-ratio: 1;
  background: url(../img/svg/arrow-circle-right-white-bg-blue.svg) no-repeat center center/contain;
}
@media screen and (min-width: 376px) {
  .page-nav .next.page-numbers::after {
    width: 32px;
    height: 32px;
  }
}
@media (min-width: 768px) {
  .page-nav .next.page-numbers::after {
    width: clamp(30px, 1.5rem, 32px);
    height: clamp(30px, 1.5rem, 32px);
  }
}
@media (min-width: 768px) {
  .page-nav .next.page-numbers {
    padding-left: 1.875rem;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
    gap: 0.625rem;
  }
}

a.page-numbers,
span.page-numbers {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  font-size: 1rem;
  font-weight: 700;
  color: #FFF;
  font-family: "Montserrat", sans-serif;
  background: #2698d5;
  width: 2.5rem;
  height: 2.5rem;
  border-radius: 100vmax;
  aspect-ratio: 1;
}
@media screen and (min-width: 376px) {
  a.page-numbers,
  span.page-numbers {
    font-size: 16px;
    width: 40px;
    height: 40px;
  }
}
@media (min-width: 768px) {
  a.page-numbers,
  span.page-numbers {
    width: clamp(40px, 3.125rem, 50px);
    height: clamp(40px, 3.125rem, 50px);
    font-size: clamp(16px, 1.25rem, 20px);
  }
}

span.page-numbers.dots {
  border: none;
  pointer-events: none;
  -webkit-transition: none;
  transition: none;
  background: none;
  color: #111;
  margin-left: -0.4em;
  margin-right: -0.4em;
}
@media (min-width: 768px) {
  span.page-numbers.dots {
    margin-left: 0;
    margin-right: 0;
  }
}

.prev.page-numbers,
.next.page-numbers {
  -webkit-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
  aspect-ratio: initial;
  border: none;
  margin: 0;
  background-color: transparent;
  white-space: nowrap;
  padding: 0;
  font-size: 0.875rem;
  color: #111;
  font-weight: 700;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  position: relative;
}
@media screen and (min-width: 376px) {
  .prev.page-numbers,
  .next.page-numbers {
    font-size: 14px;
  }
}
@media (min-width: 768px) {
  .prev.page-numbers,
  .next.page-numbers {
    font-size: clamp(14px, 1rem, 16px);
  }
}
@media (any-hover: hover) {
  .prev.page-numbers:hover,
  .next.page-numbers:hover {
    opacity: 0.6;
  }
}

.page-numbers.current {
  color: #FFF;
  background: #a2d4f2;
}

a.page-numbers:not(.dots):not(.prev):not(.next) {
  -webkit-transition: background-color 0.5s ease;
  transition: background-color 0.5s ease;
}
@media (any-hover: hover) {
  a.page-numbers:not(.dots):not(.prev):not(.next):hover {
    background-color: #a2d4f2;
  }
}

.page-nav-bottom {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  margin-top: 1.5rem;
}
@media screen and (min-width: 376px) {
  .page-nav-bottom {
    margin-top: 24px;
  }
}
@media (min-width: 768px) {
  .page-nav-bottom {
    display: none;
  }
}
.page-nav-bottom span.prev.page-numbers,
.page-nav-bottom span.next.page-numbers {
  opacity: 0.5;
}
@media (any-hover: hover) {
  .page-nav-bottom span.prev.page-numbers:hover,
  .page-nav-bottom span.next.page-numbers:hover {
    opacity: 0.5;
  }
}
.page-nav-bottom .prev.page-numbers {
  gap: clamp(10px, 0.75rem, 14px);
}
.page-nav-bottom .prev.page-numbers::before {
  content: "";
  rotate: 180deg;
  width: 2rem;
  height: 2rem;
  aspect-ratio: 1;
  background: url(../img/svg/arrow-circle-right-white-bg-blue.svg) no-repeat center center/contain;
}
@media screen and (min-width: 376px) {
  .page-nav-bottom .prev.page-numbers::before {
    width: 32px;
    height: 32px;
  }
}
.page-nav-bottom .next.page-numbers {
  gap: clamp(10px, 0.75rem, 14px);
}
.page-nav-bottom .next.page-numbers::after {
  content: "";
  width: 2rem;
  height: 2rem;
  aspect-ratio: 1;
  background: url(../img/svg/arrow-circle-right-white-bg-blue.svg) no-repeat center center/contain;
}
@media screen and (min-width: 376px) {
  .page-nav-bottom .next.page-numbers::after {
    width: 32px;
    height: 32px;
  }
}

.page-nav-content {
  margin-top: 4rem;
  width: 100%;
  max-width: 100%;
  margin-inline: auto;
}
@media screen and (min-width: 376px) {
  .page-nav-content {
    margin-top: 64px;
    width: clamp(375px, 31.25rem, 500px);
  }
}
@media (min-width: 768px) {
  .page-nav-content {
    margin-top: 4rem;
    width: 75rem;
  }
}

.page-plan__inner {
  padding-top: 4rem;
}
@media screen and (min-width: 376px) {
  .page-plan__inner {
    padding-top: 64px;
  }
}
@media (min-width: 768px) {
  .page-plan__inner {
    padding-top: 6.25rem;
  }
}

.page-plan__content {
  width: 100%;
  padding-inline: 0.9375rem;
  max-width: 100%;
  margin-inline: auto;
  margin-top: 3.875rem;
}
@media screen and (min-width: 376px) {
  .page-plan__content {
    margin-top: 62px;
    padding-inline: 15px;
    width: clamp(375px, 31.25rem, 500px);
  }
}
@media (min-width: 768px) {
  .page-plan__content {
    margin-top: 5rem;
    width: 83.25rem;
    padding-inline: 4.125rem;
  }
}
.page-plan__content .plan__items {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 3.75rem;
}
@media screen and (min-width: 376px) {
  .page-plan__content .plan__items {
    gap: 60px;
  }
}
@media (min-width: 768px) {
  .page-plan__content .plan__items {
    gap: 5rem;
  }
}
.page-plan__content .plan__item {
  background: #FFF;
  border-radius: 1rem;
  padding: 1.5rem 1rem;
  position: relative;
}
@media screen and (min-width: 376px) {
  .page-plan__content .plan__item {
    border-radius: 16px;
    padding: 1.5rem 1rem 2rem;
  }
}
@media (min-width: 768px) {
  .page-plan__content .plan__item {
    padding: 5rem 3.9375rem;
    border-radius: 1.25rem;
  }
}
.page-plan__content .plan__item .plan__item-box-body {
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: start;
  -webkit-align-items: flex-start;
      -ms-flex-align: start;
          align-items: flex-start;
  gap: 0.5rem;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
}
.page-plan__content .plan__item-head {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 1.5rem;
}
@media screen and (min-width: 376px) {
  .page-plan__content .plan__item-head {
    gap: 24px;
  }
}
@media (min-width: 768px) {
  .page-plan__content .plan__item-head {
    gap: 3rem;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-direction: row;
        -ms-flex-direction: row;
            flex-direction: row;
  }
}
.page-plan__content .plan__item-img {
  position: relative;
  width: 100%;
  max-width: 100%;
  margin-inline: auto;
  border-radius: 1rem;
  overflow: hidden;
  aspect-ratio: 314/200;
}
@media screen and (min-width: 376px) {
  .page-plan__content .plan__item-img {
    border-radius: 16px;
  }
}
@media (min-width: 768px) {
  .page-plan__content .plan__item-img {
    aspect-ratio: 416/277;
    width: 26rem;
    height: 17.3125rem;
    border-radius: 1.25rem;
  }
}
.page-plan__content .plan__item-img img {
  display: block;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -webkit-transform: translateZ(0);
          transform: translateZ(0);
}
.page-plan__content .plan__item-body {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 1.5rem;
  -webkit-box-flex: 1;
  -webkit-flex: 1;
      -ms-flex: 1;
          flex: 1;
}
@media screen and (min-width: 376px) {
  .page-plan__content .plan__item-body {
    gap: 24px;
  }
}
@media (min-width: 768px) {
  .page-plan__content .plan__item-body {
    gap: 2rem;
  }
}
.page-plan__content .plan__item-title {
  font-size: 1.25rem;
  font-weight: 900;
  line-height: 1.6;
  color: #116BAF;
  text-align: center;
}
@media screen and (min-width: 376px) {
  .page-plan__content .plan__item-title {
    font-size: 20px;
    text-align: center;
  }
}
@media (min-width: 768px) {
  .page-plan__content .plan__item-title {
    font-size: clamp(20px, 1.875rem, 30px);
    text-align: left;
  }
}
.page-plan__content .plan__item-text {
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.6;
  color: #111;
  margin-top: -0.5rem;
  letter-spacing: 0.05em;
}
@media screen and (min-width: 376px) {
  .page-plan__content .plan__item-text {
    font-size: 14px;
    margin-top: -8px;
  }
}
@media (min-width: 768px) {
  .page-plan__content .plan__item-text {
    font-size: clamp(14px, 1rem, 16px);
    letter-spacing: initial;
    margin-top: -0.9375rem;
  }
}
.page-plan__content .plan__item-box {
  background: #F0F0F0;
  border-radius: 1rem;
  padding: 1.5rem;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 0.625rem;
}
@media screen and (min-width: 376px) {
  .page-plan__content .plan__item-box {
    padding: 24px;
    gap: 10px;
    border-radius: 16px;
  }
}
@media (min-width: 768px) {
  .page-plan__content .plan__item-box {
    padding: 1.5rem 1.25rem 1.5rem 1.5rem;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-direction: row;
        -ms-flex-direction: row;
            flex-direction: row;
    gap: 1.5rem;
    border-radius: 1.25rem;
    white-space: nowrap;
  }
}
.page-plan__content .plan__item-box-head {
  font-size: 1rem;
  font-weight: 700;
  line-height: 1.6;
  color: #F1761E;
  padding: 0.25rem;
  background: #FFF;
  border-radius: 0.375rem;
  white-space: nowrap;
  height: -webkit-fit-content;
  height: -moz-fit-content;
  height: fit-content;
  text-align: center;
  width: 100%;
}
@media screen and (min-width: 376px) {
  .page-plan__content .plan__item-box-head {
    font-size: 16px;
    padding: 4px;
    border-radius: 6px;
  }
}
@media (min-width: 768px) {
  .page-plan__content .plan__item-box-head {
    font-size: 1.25rem;
    font-size: clamp(16px, 1.25rem, 20px);
    padding: 1.25rem 0.5rem;
    border-radius: 0.25rem;
    text-align: initial;
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
  }
}
.page-plan__content .plan__item-box-list {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  row-gap: 0.5rem;
}
@media screen and (min-width: 376px) {
  .page-plan__content .plan__item-box-list {
    row-gap: 8px;
  }
}
.page-plan__content .plan__item-box-text {
  font-size: 0.875rem;
  font-weight: 700;
  color: #116BAF;
}
@media screen and (min-width: 376px) {
  .page-plan__content .plan__item-box-text {
    font-size: 14px;
  }
}
@media (min-width: 768px) {
  .page-plan__content .plan__item-box-text {
    font-size: clamp(14px, 1.125rem, 18px);
    margin-left: 0.25rem;
  }
}
.page-plan__content .plan__item-box-item {
  white-space: nowrap;
  color: #FFF;
  font-size: 0.8125rem;
  font-weight: 700;
  line-height: 1.6;
  padding: 0.125rem 0.5rem;
  background: #116BAF;
  border-radius: 0.25rem;
  position: relative;
}
@media screen and (min-width: 376px) {
  .page-plan__content .plan__item-box-item {
    font-size: 13px;
    padding: 2px 8px;
    border-radius: 4px;
  }
}
@media (min-width: 768px) {
  .page-plan__content .plan__item-box-item {
    font-size: clamp(13px, 1.125rem, 18px);
    padding: 0.125rem 0.5rem;
    border-radius: 0.25rem;
  }
}
.page-plan__content .plan__item-box-item:nth-child(4) {
  margin-left: 1.125rem;
}
@media screen and (min-width: 376px) {
  .page-plan__content .plan__item-box-item:nth-child(4) {
    margin-left: 18px;
  }
}
@media (min-width: 768px) {
  .page-plan__content .plan__item-box-item:nth-child(4) {
    margin-left: 0.9375rem;
  }
}
.page-plan__content .plan__item-box-item:not(:first-child) {
  margin-left: 1rem;
}
@media screen and (min-width: 376px) {
  .page-plan__content .plan__item-box-item:not(:first-child) {
    margin-left: 16px;
  }
}
@media (min-width: 768px) {
  .page-plan__content .plan__item-box-item:not(:first-child) {
    margin-left: 0.9375rem;
  }
}
.page-plan__content .plan__item-box-item:not(:first-child)::after {
  content: "+ ";
  font-size: 1rem;
  font-weight: 700;
  line-height: 1.6;
  color: #116BAF;
  position: absolute;
  top: 50%;
  left: -0.75rem;
  translate: 0 -50%;
}
@media screen and (min-width: 376px) {
  .page-plan__content .plan__item-box-item:not(:first-child)::after {
    font-size: 16px;
    left: -12px;
  }
}
@media (min-width: 768px) {
  .page-plan__content .plan__item-box-item:not(:first-child)::after {
    left: -0.8125rem;
    font-size: clamp(13px, 1.125rem, 18px);
  }
}
.page-plan__content .plan__item-box-text-sub {
  display: block;
  font-size: 0.75rem;
  font-weight: 700;
  line-height: 1.6;
  color: #116BAF;
}
@media screen and (min-width: 376px) {
  .page-plan__content .plan__item-box-text-sub {
    font-size: 12px;
  }
}
@media (min-width: 768px) {
  .page-plan__content .plan__item-box-text-sub {
    font-size: clamp(12px, 0.875rem, 14px);
  }
}

.plan-item__label {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  position: absolute;
  bottom: -0.0625rem;
  left: -0.0625rem;
  background: #FFF;
  padding: 0.5rem 1rem;
  border-radius: 0 1rem 0 0;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  line-height: 1.2;
}
@media screen and (min-width: 376px) {
  .plan-item__label {
    padding: 8px 16px;
    border-radius: 0 16px 0 0;
  }
}
@media (min-width: 768px) {
  .plan-item__label {
    padding: 1rem;
    border-radius: 0 1.25rem 0 0;
  }
}
.plan-item__label .--size {
  font-size: 0.875rem;
  font-weight: 700;
}
@media screen and (min-width: 376px) {
  .plan-item__label .--size {
    font-size: 14px;
  }
}
@media (min-width: 768px) {
  .plan-item__label .--size {
    font-size: clamp(14px, 1rem, 16px);
  }
}
.plan-item__label .--price {
  color: #F1761E;
  font-size: 2rem;
  font-weight: 700;
}
@media screen and (min-width: 376px) {
  .plan-item__label .--price {
    font-size: 32px;
  }
}
@media (min-width: 768px) {
  .plan-item__label .--price {
    font-size: clamp(32px, 2.5rem, 40px);
  }
}
.plan-item__label .--unit {
  font-size: 1.125rem;
  font-weight: 700;
}
@media screen and (min-width: 376px) {
  .plan-item__label .--unit {
    font-size: 18px;
  }
}
@media (min-width: 768px) {
  .plan-item__label .--unit {
    font-size: clamp(18px, 1.375rem, 22px);
  }
}
.plan-item__label .--tax {
  font-size: 0.75rem;
  font-weight: 700;
}
@media screen and (min-width: 376px) {
  .plan-item__label .--tax {
    font-size: 12px;
  }
}
@media (min-width: 768px) {
  .plan-item__label .--tax {
    font-size: clamp(12px, 0.875rem, 14px);
  }
}

.plan-course {
  margin-top: 2rem;
}
@media screen and (min-width: 376px) {
  .plan-course {
    margin-top: 32px;
  }
}
@media (min-width: 768px) {
  .plan-course {
    margin-top: 3.84375rem;
  }
}
.plan-course .plan-item__label {
  position: initial;
  background: transparent;
  padding: 0;
  margin-inline: auto;
}

.plan-course__title {
  background: #D7EEFF;
  border-radius: 0.625rem;
  padding-block: 1rem;
  position: relative;
}
@media screen and (min-width: 376px) {
  .plan-course__title {
    padding-block: 16px;
  }
}
@media (min-width: 768px) {
  .plan-course__title {
    padding-block: 1.5rem;
  }
}
.plan-course__title::after {
  content: "";
  position: absolute;
  left: 50%;
  translate: -50% 0;
  background: #D7EEFF;
  -webkit-clip-path: polygon(50% 100%, 0 0, 100% 0);
  clip-path: polygon(50% 100%, 0 0, 100% 0);
  width: 1rem;
  height: 0.625rem;
  bottom: -0.625rem;
}
@media screen and (min-width: 376px) {
  .plan-course__title::after {
    width: 16px;
    height: 10px;
    bottom: -10px;
  }
}
@media (min-width: 768px) {
  .plan-course__title::after {
    width: 1.5rem;
    height: 0.9375rem;
    bottom: -0.875rem;
  }
}
.plan-course__title span {
  width: 7.8125rem;
  max-width: 100%;
  margin-inline: auto;
  height: 1.25rem;
  display: block;
}
@media screen and (min-width: 376px) {
  .plan-course__title span {
    width: 125px;
    height: 20px;
  }
}
@media (min-width: 768px) {
  .plan-course__title span {
    width: 12.5rem;
    height: 1.875rem;
  }
}
.plan-course__title img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.plan-course__items {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: (1fr)[1];
  grid-template-columns: repeat(1, 1fr);
  gap: 1rem;
  margin-top: 1.125rem;
}
@media screen and (min-width: 376px) {
  .plan-course__items {
    margin-top: 18px;
    gap: 16px;
  }
}
@media (min-width: 768px) {
  .plan-course__items {
    -ms-grid-columns: (1fr)[2];
    grid-template-columns: repeat(2, 1fr);
    margin-top: 1.875rem;
    gap: 1rem;
  }
}
@media screen and (min-width: 951px) {
  .plan-course__items {
    -ms-grid-columns: (1fr)[2];
    grid-template-columns: repeat(2, 1fr);
  }
}
@media screen and (min-width: 1251px) {
  .plan-course__items {
    -ms-grid-columns: (1fr)[3];
    grid-template-columns: repeat(3, 1fr);
    gap: 1.5rem;
  }
}

.plan-course__item {
  background: #2698D5;
  border-radius: 1rem;
  padding: 1.5rem 1rem 1rem;
}
@media screen and (min-width: 376px) {
  .plan-course__item {
    padding: 24px 16px 16px;
    border-radius: 16px;
  }
}
@media (min-width: 768px) {
  .plan-course__item {
    padding: 1.5rem 0.625rem 0.625rem;
    border-radius: 1.25rem;
  }
}
.plan-course__item .plan-item__label .--price {
  font-size: 2.5rem;
}
@media screen and (min-width: 376px) {
  .plan-course__item .plan-item__label .--price {
    font-size: 40px;
  }
}
@media (min-width: 768px) {
  .plan-course__item .plan-item__label .--price {
    font-size: 2.5rem;
  }
}

.plan-course__item-head {
  text-align: center;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 0.25rem;
}
@media screen and (min-width: 376px) {
  .plan-course__item-head {
    gap: 4px;
  }
}
@media (min-width: 768px) {
  .plan-course__item-head {
    gap: 0.25rem;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
  }
}
.plan-course__item-head .plan-course__item-head-num {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  margin-inline: auto;
  font-size: 0.75rem;
  font-weight: 700;
  line-height: 1.6;
  color: #2698D5;
  font-family: "Montserrat", sans-serif;
  background: #FFF;
  padding: 0.125rem 0.5rem;
  border-radius: 6.25rem;
  display: inline-block;
}
@media screen and (min-width: 376px) {
  .plan-course__item-head .plan-course__item-head-num {
    font-size: 12px;
    padding: 2px 8px;
  }
}
@media (min-width: 768px) {
  .plan-course__item-head .plan-course__item-head-num {
    font-size: 0.875rem;
    padding: 0.125rem 0.5rem;
  }
}
.plan-course__item-head .plan-course__item-title-sub {
  font-size: 0.8125rem;
  font-weight: 900;
  line-height: 1.6;
  display: block;
  color: #FFF;
}
@media screen and (min-width: 376px) {
  .plan-course__item-head .plan-course__item-title-sub {
    font-size: 13px;
  }
}
@media (min-width: 768px) {
  .plan-course__item-head .plan-course__item-title-sub {
    font-size: 1rem;
  }
}

.plan-course__item-title {
  font-size: 1.25rem;
  font-weight: 900;
  line-height: 1.6;
  color: #FFF;
}
@media screen and (min-width: 376px) {
  .plan-course__item-title {
    font-size: 20px;
  }
}
@media (min-width: 768px) {
  .plan-course__item-title {
    font-size: 1.5rem;
  }
}

.plan-course__item-body {
  background: #FFF;
  border-radius: 1rem;
  padding: 0.5rem;
  margin-top: 0.5rem;
}
@media screen and (min-width: 376px) {
  .plan-course__item-body {
    padding: 8px;
    border-radius: 16px;
    margin-top: 8px;
  }
}
@media (min-width: 768px) {
  .plan-course__item-body {
    padding: 1rem 0.625rem;
    border-radius: 0.625rem;
    margin-top: 1rem;
  }
}

.plan-course__list {
  margin-top: 1rem;
  padding-inline: 0.9375rem;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-direction: row;
      -ms-flex-direction: row;
          flex-direction: row;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 1rem;
}
@media screen and (min-width: 376px) {
  .plan-course__list {
    gap: 16px;
    margin-top: 16px;
    padding-inline: 15px;
  }
}
@media (min-width: 768px) {
  .plan-course__list {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: initial;
    margin-top: 1rem;
    padding-inline: 1.5rem;
  }
}
.plan-course__list li {
  position: relative;
  font-size: 1rem;
  font-weight: 700;
  line-height: 1.6;
  color: #111;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}
@media screen and (min-width: 376px) {
  .plan-course__list li {
    font-size: 16px;
  }
}
@media (min-width: 768px) {
  .plan-course__list li {
    font-size: 1.125rem;
  }
}
.plan-course__list li span {
  color: #F1761E;
}
.plan-course__list li::before {
  content: "";
  width: 1.125rem;
  height: 1rem;
  background: url(../img/svg/check-icon02.svg) no-repeat center center/contain;
  margin-right: 0.5rem;
}
@media screen and (min-width: 376px) {
  .plan-course__list li::before {
    width: 18px;
    height: 16px;
    margin-right: 8px;
  }
}
@media (min-width: 768px) {
  .plan-course__list li::before {
    width: 1.125rem;
    height: 1rem;
    margin-right: 0.5rem;
  }
}

.plan-course__rate {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  margin-inline: auto;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0.8125rem;
  border-radius: 6.25rem;
  background: #FDD557;
  font-size: 0.875rem;
  font-weight: 700;
  line-height: 1.6;
  color: #111;
  padding: 0.25rem 1rem;
  margin-top: 1rem;
}
@media screen and (min-width: 376px) {
  .plan-course__rate {
    padding: 4px 16px;
    border-radius: 100px;
    font-size: 14px;
    gap: 13px;
    margin-top: 16px;
  }
}
@media (min-width: 768px) {
  .plan-course__rate {
    font-size: 1rem;
    padding: 0.375rem 1.5rem;
    border-radius: 6.25rem;
    gap: 0.8125rem;
    margin-top: 1rem;
  }
}
.plan-course__rate .bars {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0.125rem;
}
@media screen and (min-width: 376px) {
  .plan-course__rate .bars {
    gap: 2px;
  }
}
@media (min-width: 768px) {
  .plan-course__rate .bars {
    gap: 0.125rem;
  }
}
.plan-course__rate .bar {
  width: 1.25rem;
  height: 0.625rem;
  background: #FFF;
}
@media screen and (min-width: 376px) {
  .plan-course__rate .bar {
    width: 20px;
    height: 10px;
  }
}
@media (min-width: 768px) {
  .plan-course__rate .bar {
    width: 1.25rem;
    height: 0.625rem;
  }
}
.plan-course__rate .color-navy {
  background: #116BAF;
}
.plan-course__rate .color-blue {
  background: #2698D5;
}
.plan-course__rate .color-orange {
  background: #F1761E;
}

.plan-course__text {
  background: #D7EEFF;
  border-radius: 1rem;
  padding: 1rem;
  margin-top: 1rem;
}
@media screen and (min-width: 376px) {
  .plan-course__text {
    padding: 16px;
    border-radius: 16px;
    margin-top: 16px;
  }
}
@media (min-width: 768px) {
  .plan-course__text {
    padding: 1rem;
    border-radius: 1.25rem;
    margin-top: 1.5rem;
  }
}
.plan-course__text p {
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.6;
  color: #111;
  margin-top: 0.5rem;
}
@media screen and (min-width: 376px) {
  .plan-course__text p {
    margin-top: 8px;
    font-size: 14px;
  }
}
@media (min-width: 768px) {
  .plan-course__text p {
    margin-top: 0.5rem;
    font-size: 1rem;
  }
}

.plan-course__text-title {
  font-size: 0.875rem;
  font-weight: 700;
  line-height: 1.6;
  color: #2698D5;
  position: relative;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 0.5rem;
}
@media screen and (min-width: 376px) {
  .plan-course__text-title {
    font-size: 14px;
    gap: 8px;
  }
}
@media (min-width: 768px) {
  .plan-course__text-title {
    font-size: 16px;
    gap: 0.5rem;
  }
}
.plan-course__text-title::before, .plan-course__text-title::after {
  content: "";
  width: 0.875rem;
  height: 0.125rem;
  background: #2698D5;
  rotate: 60deg;
}
@media screen and (min-width: 376px) {
  .plan-course__text-title::before, .plan-course__text-title::after {
    width: 14px;
    height: 2px;
  }
}
@media (min-width: 768px) {
  .plan-course__text-title::before, .plan-course__text-title::after {
    width: 1rem;
    height: 0.125rem;
  }
}
.plan-course__text-title::after {
  rotate: -60deg;
}

.plan-cta {
  padding: 1.5rem 0.9375rem;
  background: #F0F0F0;
  border-radius: 1.25rem;
  margin-top: 2rem;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 1rem;
}
@media screen and (min-width: 376px) {
  .plan-cta {
    padding: 24px 15px;
    margin-top: 32px;
    gap: 16px;
    border-radius: 20px;
  }
}
@media (min-width: 768px) {
  .plan-cta {
    padding: 2.5rem 2rem;
    border-radius: 1.25rem;
    margin-top: 4rem;
    gap: 2.5rem;
  }
}
.plan-cta .cta__wrap {
  margin-top: 0;
}

.plan-cta__title {
  text-align: center;
  font-size: 1.125rem;
  font-weight: 700;
  color: #111;
}
@media screen and (min-width: 376px) {
  .plan-cta__title {
    font-size: clamp(18px, 1.125rem, 22px);
  }
}
@media (min-width: 768px) {
  .plan-cta__title {
    font-size: 1.75rem;
  }
}
.plan-cta__title span {
  color: #F1761E;
}

.fire-insurance__content {
  width: 100%;
  padding-inline: 0.9375rem;
  max-width: 100%;
  margin-inline: auto;
  margin-top: 5.5rem;
}
@media screen and (min-width: 376px) {
  .fire-insurance__content {
    padding-inline: 15px;
    width: clamp(375px, 31.25rem, 500px);
    margin-top: 88px;
  }
}
@media (min-width: 768px) {
  .fire-insurance__content {
    width: 83.25rem;
    padding-inline: 4.125rem;
    margin-top: 7.75rem;
  }
}
.fire-insurance__content .plan-cta {
  position: relative;
  z-index: 1;
  margin-top: 0;
}
@media (min-width: 768px) {
  .fire-insurance__content .plan-cta {
    margin-top: 0.625rem;
  }
}

.fire-insurance__item {
  background: #FFF;
  border-radius: 1rem;
  padding: 5.3125rem 0.9375rem 1.5rem;
  position: relative;
}
@media screen and (min-width: 376px) {
  .fire-insurance__item {
    border-radius: 16px;
    padding: 85px 15px 24px;
  }
}
@media (min-width: 768px) {
  .fire-insurance__item {
    padding: 8.875rem 3.25rem 5rem;
    border-radius: 1.25rem;
  }
}

.fire-insurance__title {
  width: 100%;
  max-width: 100%;
  content: "";
  position: absolute;
  top: -1.5rem;
  left: 50%;
  translate: -50%;
  z-index: 1;
}
@media screen and (min-width: 376px) {
  .fire-insurance__title {
    top: -24px;
  }
}
@media (min-width: 768px) {
  .fire-insurance__title {
    top: -2.75rem;
  }
}
.fire-insurance__title span {
  display: block;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  margin-inline: auto;
  font-size: 1.25rem;
  font-weight: 900;
  line-height: 1.3;
  color: #FFF;
  text-align: center;
  background: #116BAF;
  padding: 0.75rem 1.125rem;
  border-radius: 1rem;
  position: relative;
}
@media screen and (min-width: 376px) {
  .fire-insurance__title span {
    font-size: 20px;
    padding: 12px 18px;
    border-radius: 16px;
  }
}
@media (min-width: 768px) {
  .fire-insurance__title span {
    font-size: 2rem;
    padding: 1.75rem 3.25rem;
    border-radius: 1.25rem;
  }
}
.fire-insurance__title span::after {
  content: "";
  position: absolute;
  left: 50%;
  translate: -50% 0;
  background: #116BAF;
  -webkit-clip-path: polygon(50% 100%, 0 0, 100% 0);
  clip-path: polygon(50% 100%, 0 0, 100% 0);
  width: 1.875rem;
  height: 1.25rem;
  bottom: -0.9375rem;
}
@media screen and (min-width: 376px) {
  .fire-insurance__title span::after {
    width: 30px;
    height: 20px;
    bottom: -15px;
  }
}
@media (min-width: 768px) {
  .fire-insurance__title span::after {
    width: 2.25rem;
    height: 1.8125rem;
    bottom: -1.375rem;
  }
}

.fire-insurance__icons {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: (minmax(0, 1fr))[6];
  grid-template-columns: repeat(6, minmax(0, 1fr));
  -webkit-column-gap: 0.75rem;
     -moz-column-gap: 0.75rem;
          column-gap: 0.75rem;
}
@media screen and (min-width: 376px) {
  .fire-insurance__icons {
    -webkit-column-gap: 12px;
       -moz-column-gap: 12px;
            column-gap: 12px;
  }
}
@media (min-width: 768px) {
  .fire-insurance__icons {
    gap: 1.5rem;
    -ms-grid-columns: (minmax(0, 1fr))[5];
    grid-template-columns: repeat(5, minmax(0, 1fr));
  }
}
.fire-insurance__icons li {
  aspect-ratio: 1/1;
  -ms-grid-column-span: 2;
  grid-column: span 2;
}
.fire-insurance__icons li:nth-child(1) {
  -ms-grid-column: 1;
  -ms-grid-column-span: 2;
  grid-column: 1/3;
}
.fire-insurance__icons li:nth-child(2) {
  margin-top: 1.1875rem;
  -ms-grid-column: 3;
  -ms-grid-column-span: 2;
  grid-column: 3/5;
}
@media screen and (min-width: 376px) {
  .fire-insurance__icons li:nth-child(2) {
    margin-top: 19px;
  }
}
@media (min-width: 768px) {
  .fire-insurance__icons li:nth-child(2) {
    margin-top: initial;
  }
}
.fire-insurance__icons li:nth-child(3) {
  -ms-grid-column: 5;
  -ms-grid-column-span: 2;
  grid-column: 5/7;
}
.fire-insurance__icons li:nth-child(4) {
  -ms-grid-column: 2;
  -ms-grid-column-span: 2;
  grid-column: 2/4;
}
.fire-insurance__icons li:nth-child(5) {
  -ms-grid-column: 4;
  -ms-grid-column-span: 2;
  grid-column: 4/6;
}
@media (min-width: 768px) {
  .fire-insurance__icons li:nth-child(even) {
    margin-top: 2.5rem;
  }
}
@media (min-width: 768px) {
  .fire-insurance__icons li {
    -ms-grid-column-span: 1 !important;
    grid-column: span 1 !important;
  }
}
.fire-insurance__icons li img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.fire-insurance__content-main {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 1rem;
  margin-top: 1.75rem;
}
@media (min-width: 768px) {
  .fire-insurance__content-main {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-direction: row;
        -ms-flex-direction: row;
            flex-direction: row;
    gap: 1.5625rem;
    margin-top: 1.875rem;
  }
}

.fire-insurance__body {
  -webkit-box-flex: 1;
  -webkit-flex: 1;
      -ms-flex: 1;
          flex: 1;
}

.fire-insurance__list {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 0.5rem;
  width: 18rem;
  max-width: 100%;
  margin-inline: auto;
}
@media screen and (min-width: 376px) {
  .fire-insurance__list {
    gap: 8px;
    width: 288px;
  }
}
@media (min-width: 768px) {
  .fire-insurance__list {
    gap: 0.5rem;
    width: initial;
    -webkit-box-pack: start;
    -webkit-justify-content: flex-start;
        -ms-flex-pack: start;
            justify-content: flex-start;
  }
}
.fire-insurance__list li {
  font-size: 1.125rem;
  font-weight: 700;
  padding: 0.375rem 1rem;
  background: #FDD557;
  border-radius: 6.25rem;
  line-height: 1.25;
}
@media screen and (min-width: 376px) {
  .fire-insurance__list li {
    font-size: 18px;
    padding: 6px 16px;
  }
}
@media (min-width: 768px) {
  .fire-insurance__list li {
    font-size: 1.5rem;
    padding: 0.5rem 1rem;
  }
}
.fire-insurance__list li:last-child {
  background: none;
  font-size: 0.875rem;
  padding: 0;
}
@media screen and (min-width: 376px) {
  .fire-insurance__list li:last-child {
    font-size: 14px;
  }
}
@media (min-width: 768px) {
  .fire-insurance__list li:last-child {
    font-size: 1.5rem;
    font-weight: 900;
  }
}

.fire-insurance__img {
  width: 19.5rem;
  max-width: 100%;
  height: 12rem;
  margin-bottom: -2.1875rem;
}
@media screen and (min-width: 376px) {
  .fire-insurance__img {
    width: 312px;
    height: 192px;
    margin-bottom: -35px;
    margin-left: auto;
  }
}
@media (min-width: 768px) {
  .fire-insurance__img {
    width: 22.8125rem;
    height: 16.1875rem;
    margin-bottom: 0;
  }
}
.fire-insurance__img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.fire-insurance__text {
  font-size: 0.875rem;
  font-weight: 500;
  line-height: 1.6;
  color: #111;
  margin-top: 1rem;
}
@media screen and (min-width: 376px) {
  .fire-insurance__text {
    font-size: 14px;
    margin-top: 16px;
  }
}
@media (min-width: 768px) {
  .fire-insurance__text {
    font-size: 1.125rem;
    margin-top: 2rem;
  }
}

.page-service__inner {
  padding-block: 4rem 5rem;
}
@media screen and (min-width: 376px) {
  .page-service__inner {
    padding-block: 64px 80px;
  }
}
@media (min-width: 768px) {
  .page-service__inner {
    padding-block: 6.25rem;
  }
}

.service__item .plan__item-fukidashi,
.plan__item .plan__item-fukidashi {
  position: absolute;
  display: block;
  z-index: 1;
  top: 0;
  -webkit-transform: translateY(-40%);
          transform: translateY(-40%);
  left: -0.8125rem;
  width: 9.875rem;
}
@media screen and (min-width: 376px) {
  .service__item .plan__item-fukidashi,
  .plan__item .plan__item-fukidashi {
    width: clamp(158px, 9.875rem, 250px);
    left: -22px;
  }
}
@media (min-width: 768px) {
  .service__item .plan__item-fukidashi,
  .plan__item .plan__item-fukidashi {
    width: 20.25rem;
    left: -4.6875rem;
    -webkit-transform: translateY(-32%);
            transform: translateY(-32%);
  }
}
.service__item .plan__item-fukidashi picture,
.service__item .plan__item-fukidashi img,
.plan__item .plan__item-fukidashi picture,
.plan__item .plan__item-fukidashi img {
  display: block;
  width: 100%;
  height: auto;
}

.page-service__content01 {
  margin-top: 6.0625rem;
}
@media screen and (min-width: 376px) {
  .page-service__content01 {
    margin-top: 97px;
  }
}
@media (min-width: 768px) {
  .page-service__content01 {
    margin-top: 5rem;
  }
}
.page-service__content01 .service__items {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 3.75rem;
}
@media screen and (min-width: 376px) {
  .page-service__content01 .service__items {
    gap: 60px;
  }
}
@media (min-width: 768px) {
  .page-service__content01 .service__items {
    gap: 4.1875rem;
  }
}
.page-service__content01 .service__item {
  background: #FFF;
  border-radius: 1rem;
  padding: 1.5rem 1rem;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 1rem;
  position: relative;
}
@media screen and (min-width: 376px) {
  .page-service__content01 .service__item {
    gap: 16px;
    border-radius: 16px;
  }
}
@media (min-width: 768px) {
  .page-service__content01 .service__item {
    padding: 5rem 4rem 4rem;
    gap: 3rem;
    border-radius: 1.25rem;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-direction: row;
        -ms-flex-direction: row;
            flex-direction: row;
  }
}
.page-service__content01 .service__item-img {
  width: 100%;
  max-width: 100%;
  margin-inline: auto;
  border-radius: 1rem;
  overflow: hidden;
  aspect-ratio: 314/200;
}
@media screen and (min-width: 376px) {
  .page-service__content01 .service__item-img {
    border-radius: 16px;
  }
}
@media (min-width: 768px) {
  .page-service__content01 .service__item-img {
    aspect-ratio: 416/277;
    width: 26rem;
    height: 17.3125rem;
    border-radius: 1.25rem;
  }
}
.page-service__content01 .service__item-img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.page-service__content01 .service__item-body {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 1.5rem;
  -webkit-box-flex: 1;
  -webkit-flex: 1;
      -ms-flex: 1;
          flex: 1;
}
@media screen and (min-width: 376px) {
  .page-service__content01 .service__item-body {
    gap: 24px;
  }
}
@media (min-width: 768px) {
  .page-service__content01 .service__item-body {
    gap: 2rem;
  }
}
.page-service__content01 .service__item-title {
  font-size: 1.25rem;
  font-weight: 900;
  line-height: 1.6;
  color: #116BAF;
  padding: 0.5rem;
  background: #D7EEFF;
  border-radius: 0.375rem;
  text-align: center;
}
@media screen and (min-width: 376px) {
  .page-service__content01 .service__item-title {
    font-size: 20px;
    padding: 8px;
    border-radius: 6px;
    text-align: center;
  }
}
@media (min-width: 768px) {
  .page-service__content01 .service__item-title {
    font-size: clamp(20px, 1.75rem, 28px);
    border-radius: 0.625rem;
    padding: 0.625rem 1rem;
    text-align: initial;
  }
}
.page-service__content01 .service__item-text {
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.6;
  color: #111;
  margin-top: -0.5rem;
  letter-spacing: 0.05em;
}
@media screen and (min-width: 376px) {
  .page-service__content01 .service__item-text {
    font-size: 14px;
    margin-top: -8px;
  }
}
@media (min-width: 768px) {
  .page-service__content01 .service__item-text {
    font-size: clamp(14px, 1rem, 16px);
    letter-spacing: initial;
    margin-top: -0.9375rem;
  }
}
.page-service__content01 .service__item-box {
  background: #F0F0F0;
  border-radius: 1rem;
  padding: 1rem;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 0.625rem;
}
@media screen and (min-width: 376px) {
  .page-service__content01 .service__item-box {
    padding: 16px;
    gap: 10px;
    border-radius: 16px;
  }
}
@media (min-width: 768px) {
  .page-service__content01 .service__item-box {
    padding: 1.5rem 1.25rem 1.5rem 1.5rem;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-direction: row;
        -ms-flex-direction: row;
            flex-direction: row;
    gap: 1.5rem;
    border-radius: 1.25rem;
  }
}
.page-service__content01 .service__item-head {
  font-size: 1rem;
  font-weight: 700;
  line-height: 1.6;
  color: #F1761E;
  padding: 0.25rem;
  background: #FFF;
  border-radius: 0.375rem;
  white-space: nowrap;
  height: -webkit-fit-content;
  height: -moz-fit-content;
  height: fit-content;
  text-align: center;
}
@media screen and (min-width: 376px) {
  .page-service__content01 .service__item-head {
    font-size: 16px;
    padding: 4px;
    border-radius: 6px;
  }
}
@media (min-width: 768px) {
  .page-service__content01 .service__item-head {
    font-size: 1.25rem;
    font-size: clamp(16px, 1.25rem, 20px);
    padding: 1.25rem 0.5rem;
    border-radius: 0.25rem;
    text-align: initial;
  }
}
.page-service__content01 .service__item-box-list {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  row-gap: 0.5rem;
}
.page-service__content01 .service__item-box-text {
  font-size: 0.875rem;
  font-weight: 700;
  color: #116BAF;
}
@media screen and (min-width: 376px) {
  .page-service__content01 .service__item-box-text {
    font-size: 14px;
  }
}
@media (min-width: 768px) {
  .page-service__content01 .service__item-box-text {
    font-size: clamp(14px, 1.125rem, 18px);
    margin-left: 0.25rem;
  }
}
.page-service__content01 .service__item-box-item {
  white-space: nowrap;
  color: #FFF;
  font-size: 0.8125rem;
  font-weight: 700;
  line-height: 1.6;
  padding: 0.125rem 0.5rem;
  background: #116BAF;
  border-radius: 0.25rem;
  position: relative;
}
@media screen and (min-width: 376px) {
  .page-service__content01 .service__item-box-item {
    font-size: 13px;
    padding: 2px 8px;
    border-radius: 4px;
  }
}
@media (min-width: 768px) {
  .page-service__content01 .service__item-box-item {
    font-size: clamp(13px, 1.125rem, 18px);
    padding: 0.125rem 0.5rem;
    border-radius: 0.25rem;
  }
}
.page-service__content01 .service__item-box-item:nth-child(4) {
  margin-left: 1.125rem;
}
@media screen and (min-width: 376px) {
  .page-service__content01 .service__item-box-item:nth-child(4) {
    margin-left: 18px;
  }
}
@media (min-width: 768px) {
  .page-service__content01 .service__item-box-item:nth-child(4) {
    margin-left: 1.0625rem;
  }
}
.page-service__content01 .service__item-box-item:not(:first-child) {
  margin-left: 1rem;
}
@media screen and (min-width: 376px) {
  .page-service__content01 .service__item-box-item:not(:first-child) {
    margin-left: 16px;
  }
}
@media (min-width: 768px) {
  .page-service__content01 .service__item-box-item:not(:first-child) {
    margin-left: 1.0625rem;
  }
}
.page-service__content01 .service__item-box-item:not(:first-child)::after {
  content: "+ ";
  font-size: 1rem;
  font-weight: 700;
  line-height: 1.6;
  color: #116BAF;
  position: absolute;
  top: 50%;
  left: -0.75rem;
  translate: 0 -50%;
}
@media screen and (min-width: 376px) {
  .page-service__content01 .service__item-box-item:not(:first-child)::after {
    font-size: 16px;
    left: -12px;
  }
}
@media (min-width: 768px) {
  .page-service__content01 .service__item-box-item:not(:first-child)::after {
    left: -0.8125rem;
    font-size: clamp(13px, 1.125rem, 18px);
  }
}
.page-service__content01 .service__item-box-text-sub {
  display: block;
  font-size: 0.75rem;
  font-weight: 700;
  line-height: 1.6;
  color: #116BAF;
}
@media screen and (min-width: 376px) {
  .page-service__content01 .service__item-box-text-sub {
    font-size: 12px;
  }
}
@media (min-width: 768px) {
  .page-service__content01 .service__item-box-text-sub {
    font-size: clamp(12px, 0.875rem, 14px);
  }
}

.page-service__content {
  width: 100%;
  padding-inline: 0.9375rem;
  max-width: 100%;
  margin-inline: auto;
}
@media screen and (min-width: 376px) {
  .page-service__content {
    padding-inline: 15px;
    width: clamp(375px, 31.25rem, 500px);
  }
}
@media (min-width: 768px) {
  .page-service__content {
    width: 75rem;
    width: 83.25rem;
    padding-inline: 4.125rem;
  }
}

.page-service__item-btn {
  text-align: end;
}

.page-service__item-more {
  -webkit-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
  display: block;
  font-size: 0.875rem;
  font-weight: 700;
  line-height: 1.6;
  color: #111;
  position: relative;
  display: -webkit-inline-box;
  display: -webkit-inline-flex;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: end;
  -webkit-justify-content: flex-end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  gap: 0.625rem;
}
@media screen and (min-width: 376px) {
  .page-service__item-more {
    font-size: 14px;
    gap: 10px;
  }
}
@media (min-width: 768px) {
  .page-service__item-more {
    font-size: clamp(14px, 1rem, 16px);
    gap: 0.625rem;
  }
}
.page-service__item-more::after {
  content: "";
  background: url(../img/svg/arrow-circle-right-bg-black.svg) no-repeat center center/contain;
  width: 1.25rem;
  height: 1.25rem;
}
@media screen and (min-width: 376px) {
  .page-service__item-more::after {
    width: 20px;
    height: 20px;
  }
}
@media (min-width: 768px) {
  .page-service__item-more::after {
    width: clamp(20px, 1.875rem, 30px);
    height: clamp(20px, 1.875rem, 30px);
  }
}
@media (any-hover: hover) {
  .page-service__item-more:hover {
    opacity: 0.6;
  }
}

.page-service__content02 {
  margin-top: 4rem;
}
@media screen and (min-width: 376px) {
  .page-service__content02 {
    margin-top: 64px;
  }
}
@media (min-width: 768px) {
  .page-service__content02 {
    margin-top: 9.1875rem;
  }
}
.page-service__content02 .page-service__items {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr;
  grid-template-columns: 1fr;
  gap: 3.75rem;
}
@media screen and (min-width: 376px) {
  .page-service__content02 .page-service__items {
    gap: 60px;
  }
}
@media (min-width: 768px) {
  .page-service__content02 .page-service__items {
    -ms-grid-columns: (1fr)[2];
    grid-template-columns: repeat(2, 1fr);
    gap: 5.1875rem 2.375rem;
  }
}
.page-service__content02 .page-service__item {
  padding: 1.5rem 1rem;
  background: #FFF;
  border-radius: 1rem;
  position: relative;
}
@media screen and (min-width: 376px) {
  .page-service__content02 .page-service__item {
    border-radius: 16px;
  }
}
@media (min-width: 768px) {
  .page-service__content02 .page-service__item {
    padding: 2.5rem 2rem;
    border-radius: 1.25rem;
  }
}
.page-service__content02 .page-service__item .page-service__item-fukidashi {
  position: absolute;
  display: block;
  z-index: 1;
  top: 0;
  -webkit-transform: translateY(-33%);
          transform: translateY(-33%);
  left: -0.9375rem;
  width: 10.625rem;
}
@media screen and (min-width: 376px) {
  .page-service__content02 .page-service__item .page-service__item-fukidashi {
    width: clamp(170px, 10.625rem, 294px);
    left: -23px;
  }
}
@media (min-width: 768px) {
  .page-service__content02 .page-service__item .page-service__item-fukidashi {
    width: 18.375rem;
    left: -2.5rem;
    -webkit-transform: translateY(-32%);
            transform: translateY(-32%);
  }
}
.page-service__content02 .page-service__item .page-service__item-fukidashi picture,
.page-service__content02 .page-service__item .page-service__item-fukidashi img {
  display: block;
  width: 100%;
  height: auto;
}
.page-service__content02 .page-service__item-body {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 1.5rem;
}
@media screen and (min-width: 376px) {
  .page-service__content02 .page-service__item-body {
    gap: 24px;
  }
}
@media (min-width: 768px) {
  .page-service__content02 .page-service__item-body {
    gap: 1.5rem;
  }
}
.page-service__content02 .page-service__item-img {
  width: 100%;
  max-width: 100%;
  margin-inline: auto;
  border-radius: 1rem;
  aspect-ratio: 516/290;
  overflow: hidden;
}
@media screen and (min-width: 376px) {
  .page-service__content02 .page-service__item-img {
    border-radius: 16px;
  }
}
@media (min-width: 768px) {
  .page-service__content02 .page-service__item-img {
    border-radius: 1.25rem;
  }
}
.page-service__content02 .page-service__item-img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.page-service__content02 .page-service__item-text {
  margin-top: 1rem;
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.6;
  color: #111;
  letter-spacing: 0.05em;
}
@media screen and (min-width: 376px) {
  .page-service__content02 .page-service__item-text {
    font-size: 14px;
    margin-top: 16px;
  }
}
@media (min-width: 768px) {
  .page-service__content02 .page-service__item-text {
    margin-top: 2rem;
    font-size: clamp(14px, 1rem, 16px);
    letter-spacing: initial;
  }
}
.page-service__content02 .page-service__item-foot {
  padding: 1rem;
  background: #F0F0F0;
  border-radius: 1rem;
}
@media screen and (min-width: 376px) {
  .page-service__content02 .page-service__item-foot {
    padding: 16px;
    border-radius: 16px;
  }
}
@media (min-width: 768px) {
  .page-service__content02 .page-service__item-foot {
    padding: 1.5rem;
    border-radius: 1.25rem;
  }
}
.page-service__content02 .page-service__item-foot-title {
  font-size: 1rem;
  font-weight: 900;
  line-height: 1.8;
  color: #116BAF;
  text-align: center;
}
@media screen and (min-width: 376px) {
  .page-service__content02 .page-service__item-foot-title {
    font-size: 16px;
  }
}
@media (min-width: 768px) {
  .page-service__content02 .page-service__item-foot-title {
    font-size: clamp(16px, 1.125rem, 18px);
  }
}
.page-service__content02 .page-service__item-foot-items {
  margin-top: 1rem;
}
@media screen and (min-width: 376px) {
  .page-service__content02 .page-service__item-foot-items {
    margin-top: 16px;
  }
}
@media (min-width: 768px) {
  .page-service__content02 .page-service__item-foot-items {
    margin-top: 1rem;
  }
}
.page-service__content02 .page-service__item-foot-item {
  position: relative;
  font-size: 0.875rem;
  font-weight: 500;
  line-height: 1.8;
  color: #111;
  padding-left: 1.125rem;
  letter-spacing: 0.05em;
}
@media screen and (min-width: 376px) {
  .page-service__content02 .page-service__item-foot-item {
    padding-left: 18px;
    font-size: 14px;
  }
}
@media (min-width: 768px) {
  .page-service__content02 .page-service__item-foot-item {
    font-size: clamp(14px, 1rem, 16px);
    padding-left: 1.25rem;
    letter-spacing: initial;
  }
}
.page-service__content02 .page-service__item-foot-item::before {
  content: "";
  position: absolute;
  top: 0.5lh;
  translate: 0 -50%;
  left: 0;
  width: 0.5rem;
  height: 0.5rem;
  background: #2698D5;
  border-radius: 100vmax;
}
@media screen and (min-width: 376px) {
  .page-service__content02 .page-service__item-foot-item::before {
    width: 8px;
    height: 8px;
  }
}
@media (min-width: 768px) {
  .page-service__content02 .page-service__item-foot-item::before {
    width: 0.75rem;
    height: 0.75rem;
  }
}

.page-service__content03 {
  margin-top: 6rem;
}
@media screen and (min-width: 376px) {
  .page-service__content03 {
    margin-top: 96px;
  }
}
@media (min-width: 768px) {
  .page-service__content03 {
    margin-top: 13.125rem;
    width: 90rem;
    max-width: 100%;
    margin-inline: auto;
    padding-inline: 7.5rem;
  }
}
.page-service__content03 .page-service__items {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: (1fr)[2];
  grid-template-columns: repeat(2, 1fr);
  gap: 3.5rem 1.0625rem;
}
@media screen and (min-width: 376px) {
  .page-service__content03 .page-service__items {
    gap: 56px 17px;
  }
}
@media (min-width: 768px) {
  .page-service__content03 .page-service__items {
    -ms-grid-columns: (1fr)[4];
    grid-template-columns: repeat(4, 1fr);
    gap: 8.4375rem 2.5rem;
  }
}
.page-service__content03 .page-service__item {
  position: relative;
  height: -webkit-fit-content;
  height: -moz-fit-content;
  height: fit-content;
  width: 100%;
}
.page-service__content03 .page-service__item .page-service__item-fukidashi {
  position: absolute;
  display: block;
  z-index: 1;
  top: 0;
  -webkit-transform: translateY(-38%);
          transform: translateY(-38%);
  left: -1rem;
  width: 9.0625rem;
}
@media screen and (min-width: 376px) {
  .page-service__content03 .page-service__item .page-service__item-fukidashi {
    width: clamp(145px, 9.0625rem, 200px);
    left: -16px;
  }
}
@media (min-width: 768px) {
  .page-service__content03 .page-service__item .page-service__item-fukidashi {
    width: 17.875rem;
    left: -2.625rem;
    -webkit-transform: translateY(-70%);
            transform: translateY(-70%);
  }
}
.page-service__content03 .page-service__item .page-service__item-fukidashi picture,
.page-service__content03 .page-service__item .page-service__item-fukidashi img {
  display: block;
  width: 100%;
  height: auto;
}
.page-service__content03 .page-service__item:nth-child(even) {
  margin-top: 3.1875rem;
}
@media screen and (min-width: 376px) {
  .page-service__content03 .page-service__item:nth-child(even) {
    margin-top: 51px;
  }
}
@media (min-width: 768px) {
  .page-service__content03 .page-service__item:nth-child(even) {
    margin-top: 5.625rem;
  }
}
.page-service__content03 .page-service__item-img {
  width: 100%;
  aspect-ratio: 270/180;
  border-radius: 1rem;
  overflow: hidden;
}
@media screen and (min-width: 376px) {
  .page-service__content03 .page-service__item-img {
    border-radius: 16px;
  }
}
@media (min-width: 768px) {
  .page-service__content03 .page-service__item-img {
    border-radius: 1.25rem;
  }
}
.page-service__content03 .page-service__item-img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.application-support {
  margin-top: 5.625rem;
}
@media screen and (min-width: 376px) {
  .application-support {
    margin-top: 90px;
  }
}
@media (min-width: 768px) {
  .application-support {
    margin-top: 9.5rem;
  }
}

.application-support__inner {
  position: relative;
  width: 100%;
  margin-inline: auto;
  max-width: 100%;
  padding-inline: 0.9375rem;
}
@media screen and (min-width: 376px) {
  .application-support__inner {
    padding-inline: 15px;
    width: clamp(375px, 31.25rem, 500px);
  }
}
@media (min-width: 768px) {
  .application-support__inner {
    width: 76.875rem;
    padding-inline: 0.9375rem;
  }
}

.application-support__content {
  position: relative;
  overflow: hidden;
  border: 0.3125rem solid #111;
  background: #FDD557;
  border-radius: 1rem;
}
@media screen and (min-width: 376px) {
  .application-support__content {
    border-radius: 16px;
    border: 5px solid #111;
  }
}
@media (min-width: 768px) {
  .application-support__content {
    border-radius: 1.25rem;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
  }
}

.application-support__img {
  position: relative;
  width: 100%;
  max-width: 100%;
  margin-inline: auto;
  z-index: 1;
}
@media (min-width: 768px) {
  .application-support__img {
    width: 32.9375rem;
  }
}
.application-support__img img {
  width: 100%;
  height: 100%;
}
.application-support__img::after {
  content: "";
  position: absolute;
  top: 5rem;
  left: 50%;
  translate: -50%;
  width: 16rem;
  height: 10.6875rem;
  background: url(../img/webp/clip-person-application-support.webp) no-repeat center center/cover;
  z-index: 1;
}
@media screen and (min-width: 376px) {
  .application-support__img::after {
    width: clamp(256px, 15.625rem, 350px);
    height: clamp(171px, 10.6875rem, 234px);
    top: 80px;
  }
}
@media (min-width: 768px) {
  .application-support__img::after {
    top: initial;
    bottom: 0;
    width: 29rem;
    height: 19.375rem;
  }
}

.application-support__body {
  padding: 1.4375rem 0.8125rem 2rem;
  -webkit-box-flex: 1;
  -webkit-flex: 1;
      -ms-flex: 1;
          flex: 1;
}
@media screen and (min-width: 376px) {
  .application-support__body {
    padding: 23px 13px 32px;
  }
}
@media (min-width: 768px) {
  .application-support__body {
    padding: 9.375rem 1.5625rem 3.125rem 2.8125rem;
  }
}
@media screen and (min-width: 1001px) {
  .application-support__body {
    padding: 10.9375rem 2.625rem 4rem 4.1875rem;
  }
}

.application-support__title {
  position: absolute;
  position: absolute;
  top: -5%;
  left: 50%;
  translate: -50%;
  width: 17.625rem;
  max-width: 100%;
  margin-inline: auto;
  z-index: 2;
}
@media screen and (min-width: 376px) {
  .application-support__title {
    width: 282px;
  }
}
@media (min-width: 768px) {
  .application-support__title {
    width: 37.375rem;
    top: -2rem;
    left: initial;
    right: 2.625rem;
    translate: initial;
  }
}
.application-support__title img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.application-support__text {
  font-size: 0.875rem;
  font-weight: 500;
  line-height: 1.6;
  color: #111;
  letter-spacing: 0.05em;
}
@media screen and (min-width: 376px) {
  .application-support__text {
    font-size: 14px;
  }
}
@media (min-width: 768px) {
  .application-support__text {
    font-size: clamp(14px, 1rem, 16px);
    letter-spacing: -0.06em;
  }
}

.page-steps .page-steps__inner {
  padding-block: 4rem 5rem;
}
@media screen and (min-width: 376px) {
  .page-steps .page-steps__inner {
    padding-block: 64px 80px;
  }
}
@media (min-width: 768px) {
  .page-steps .page-steps__inner {
    padding-block: 6.25rem;
  }
}
.page-steps .cta__wrap {
  margin-top: 1.5rem;
}
@media screen and (min-width: 376px) {
  .page-steps .cta__wrap {
    margin-top: 24px;
  }
}
@media (min-width: 768px) {
  .page-steps .cta__wrap {
    margin-top: 2rem;
  }
}
@media (min-width: 768px) {
  .page-steps .cta-btn {
    width: 21.875rem;
    height: 70px;
    padding-inline: 1rem 1.5rem;
  }
}

.page-steps__flow {
  counter-reset: flow;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 1.6875rem;
  margin-top: 2rem;
}
@media screen and (min-width: 376px) {
  .page-steps__flow {
    gap: 27px;
    margin-top: 32px;
  }
}
@media (min-width: 768px) {
  .page-steps__flow {
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: (1fr)[4];
    grid-template-columns: repeat(4, 1fr);
    gap: 0;
    margin-top: 5.5rem;
  }
}

.page-steps__flow-item {
  counter-increment: flow;
  position: relative;
}
.page-steps__flow-item::before {
  content: counter(flow);
  position: absolute;
  top: 50%;
  left: 1rem;
  translate: 0 -50%;
  width: 1.875rem;
  height: 1.875rem;
  background: #FDD557;
  color: #111;
  font-weight: 700;
  border-radius: 100vmax;
  font-size: 0.875rem;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  z-index: 1;
}
@media screen and (min-width: 376px) {
  .page-steps__flow-item::before {
    font-size: 14px;
    width: 30px;
    height: 30px;
    top: 50%;
    left: 16px;
    translate: 0 -50%;
  }
}
@media (min-width: 768px) {
  .page-steps__flow-item::before {
    font-size: 1.5rem;
    width: 3rem;
    height: 3rem;
    top: -1.4375rem;
    left: 1.5rem;
    translate: initial;
  }
}
.page-steps__flow-item:nth-child(odd) .page-steps__flow-item-box {
  background: #2698D5;
}
.page-steps__flow-item:nth-child(even) .page-steps__flow-item-box {
  background: #116BAF;
}
.page-steps__flow-item:not(:last-child)::after {
  content: "";
  display: block;
  width: 2rem;
  height: 0.9375rem;
  background: url(../img/svg/arrow-bg-yellow.svg) no-repeat center center/contain;
  position: absolute;
  top: 113%;
  left: 50%;
  translate: -50%;
}
@media screen and (min-width: 376px) {
  .page-steps__flow-item:not(:last-child)::after {
    width: 32px;
    height: 15px;
    top: 110%;
  }
}
@media (min-width: 768px) {
  .page-steps__flow-item:not(:last-child)::after {
    display: none;
  }
}

.page-steps__flow-item-box {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 100%;
  height: 100%;
  color: #FFF;
  font-weight: 700;
  text-align: center;
  padding: 1.0625rem;
  -webkit-clip-path: none;
          clip-path: none;
}
@media (min-width: 768px) {
  .page-steps__flow-item-box {
    padding: 1.5625rem 3.125rem 1.5625rem 1.25rem;
    -webkit-clip-path: polygon(0 0, calc(100% - 30px) 0, 100% 50%, calc(100% - 30px) 100%, 0 100%, 0 0);
            clip-path: polygon(0 0, calc(100% - 30px) 0, 100% 50%, calc(100% - 30px) 100%, 0 100%, 0 0);
  }
}

.flow-text {
  font-size: 1rem;
  font-weight: 900;
  line-height: 1.1;
}
@media screen and (min-width: 376px) {
  .flow-text {
    font-size: 16px;
  }
}
@media (min-width: 768px) {
  .flow-text {
    font-size: 1.5rem;
  }
}

.page-steps__items {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 2.5rem;
  margin-top: 4rem;
}
@media screen and (min-width: 376px) {
  .page-steps__items {
    gap: 40px;
    margin-top: 64px;
  }
}
@media (min-width: 768px) {
  .page-steps__items {
    gap: 5rem;
    margin-top: 5rem;
  }
}

.page-steps__item {
  background: #FFF;
  border-radius: 1.25rem;
  padding: 2rem 0.9375rem;
}
@media screen and (min-width: 376px) {
  .page-steps__item {
    border-radius: 20px;
    width: clamp(375px, 31.25rem, 500px);
    max-width: 100%;
    margin-inline: auto;
  }
}
@media (min-width: 768px) {
  .page-steps__item {
    padding: 4rem;
    border-radius: 1.25rem;
    width: 100%;
  }
}
.page-steps__item:nth-child(2) .page-steps__flow {
  -ms-grid-columns: (1fr)[3];
  grid-template-columns: repeat(3, 1fr);
}
.page-steps__item:nth-child(2) .page-steps__flow-item-box {
  padding-block: 1.0625rem;
}
@media screen and (min-width: 376px) {
  .page-steps__item:nth-child(2) .page-steps__flow-item-box {
    padding-block: 17px;
  }
}
@media (min-width: 768px) {
  .page-steps__item:nth-child(2) .page-steps__flow-item-box {
    padding-block: 3.125rem;
  }
}
.page-steps__item:nth-child(2) .page-steps__head-title picture {
  display: block;
  width: 18rem;
  max-width: 100%;
  height: 4.25rem;
}
@media screen and (min-width: 376px) {
  .page-steps__item:nth-child(2) .page-steps__head-title picture {
    width: clamp(288px, 18rem, 400px);
    height: 100%;
  }
}
@media (min-width: 768px) {
  .page-steps__item:nth-child(2) .page-steps__head-title picture {
    width: 27.5rem;
    height: 6rem;
  }
}
.page-steps__item:nth-child(3) .page-steps__flow {
  -ms-grid-columns: (1fr)[3];
  grid-template-columns: repeat(3, 1fr);
}
.page-steps__item:nth-child(3) .page-steps__flow-item-box {
  padding-block: 1.0625rem;
}
@media screen and (min-width: 376px) {
  .page-steps__item:nth-child(3) .page-steps__flow-item-box {
    padding-block: 17px;
  }
}
@media (min-width: 768px) {
  .page-steps__item:nth-child(3) .page-steps__flow-item-box {
    padding-block: 3.125rem;
  }
}
.page-steps__item:nth-child(3) .page-steps__head-title picture {
  display: block;
  width: 19.5rem;
  max-width: 100%;
  height: 4.25rem;
}
@media screen and (min-width: 376px) {
  .page-steps__item:nth-child(3) .page-steps__head-title picture {
    width: clamp(312px, 19.5rem, 400px);
    height: 100%;
  }
}
@media (min-width: 768px) {
  .page-steps__item:nth-child(3) .page-steps__head-title picture {
    width: 32.5rem;
    height: 7rem;
  }
}

.page-steps__head {
  width: 100%;
  max-width: 100%;
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: minmax(0, 1fr) auto;
  grid-template-columns: minmax(0, 1fr) auto;
      grid-template-areas: "title" "img" "person";
}
@media (min-width: 768px) {
  .page-steps__head {
    gap: 3.125rem 5.1875rem;
        grid-template-areas: "title  img" "person img";
  }
  .page-steps__head > .about-greeting__title {
    -ms-grid-row: 1;
    -ms-grid-column: 1;
  }
}

.page-steps__head-title {
  -ms-grid-row: 1;
  -ms-grid-column: 1;
  grid-area: title;
}

.page-steps__head > .page-steps__head-title {
  -ms-grid-row: 1;
  -ms-grid-column: 1;
}
.page-steps__head-title picture {
  display: block;
  width: 15rem;
  max-width: 100%;
  height: 2.125rem;
}
@media screen and (min-width: 376px) {
  .page-steps__head-title picture {
    width: clamp(240px, 15rem, 420px);
    height: 100%;
  }
}
@media (min-width: 768px) {
  .page-steps__head-title picture {
    width: 30.5625rem;
    height: 3.5rem;
  }
}
.page-steps__head-title img {
  width: 100%;
  height: 100%;
}

.page-steps__person {
  -ms-grid-row: 3;
  -ms-grid-column: 1;
  grid-area: person;
  width: 9.125rem;
  height: 6.75rem;
  max-width: 100%;
  margin-top: -1.875rem;
  position: relative;
}
@media (min-width: 768px) {
  .page-steps__person {
    width: 18.75rem;
    height: 13.875rem;
    margin-inline: auto;
  }
}
.page-steps__person img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.page-steps__head-img {
  -ms-grid-row: 2;
  -ms-grid-column: 1;
  width: 100%;
  max-width: 100%;
  margin-top: 1.5rem;
  grid-area: img;
}

@media (min-width: 768px){
  .about-greeting__body {
    -ms-grid-row: 1;
    -ms-grid-column: 1;
  }
  .about-greeting__img {
    -ms-grid-row: 1;
    -ms-grid-column: 3;
  }
  .page-news .page-column__item-body {
    -ms-grid-row: 1;
    -ms-grid-column: 1;
  }
  .page-steps__head > .page-steps__head-title {
    -ms-grid-row: 1;
    -ms-grid-column: 1;
  }
  .page-steps__person {
    -ms-grid-row: 3;
    -ms-grid-column: 1;
  }
  .page-steps__head-img {
    -ms-grid-row: 1;
    -ms-grid-row-span: 3;
    -ms-grid-column: 3;
  }
}

@media screen and (max-width: 767px){
  .page-news .page-column__item-img {
    -ms-grid-row: 1;
    -ms-grid-row-span: 3;
    -ms-grid-column: 1;
  }
  .page-news .page-column__item > .page-column__item-body {
    -ms-grid-row: 1;
    -ms-grid-column: 3;
  }
  .page-news .page-column__item-bottom {
    -ms-grid-row: 3;
    -ms-grid-column: 3;
  }
}
@media screen and (min-width: 376px) {
  .page-steps__head-img {
    margin-top: 24px;
  }
}
@media (min-width: 768px) {
  .page-steps__head-img {
    margin-top: initial;
    width: 31.25rem;
    height: 20.8125rem;
  }
}
.page-steps__head-img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  border-radius: 1.25rem;
}

.page-steps__lists {
  counter-reset: step;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 1rem;
  margin-top: 2rem;
}
@media screen and (min-width: 376px) {
  .page-steps__lists {
    gap: 16px;
    margin-top: 32px;
  }
}
@media (min-width: 768px) {
  .page-steps__lists {
    gap: 1rem;
    margin-top: 3rem;
  }
}

.page-steps__list {
  background: #F0F0F0;
  border-radius: 1rem;
  padding: 1.5rem 1rem;
}
@media screen and (min-width: 376px) {
  .page-steps__list {
    border-radius: 16px;
    padding: 24px 16px;
  }
}
@media (min-width: 768px) {
  .page-steps__list {
    border-radius: 1.25rem;
    padding: 2.5rem;
  }
}

.page-steps__list-title {
  position: relative;
  counter-increment: step;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 1rem;
  font-size: 1.125rem;
  color: #116BAF;
  font-weight: 900;
  line-height: 1.6;
}
@media screen and (min-width: 376px) {
  .page-steps__list-title {
    gap: 16px;
    font-size: clamp(18px, 1.125rem, 20px);
  }
}
@media (min-width: 768px) {
  .page-steps__list-title {
    font-size: 24px;
    gap: 1rem;
  }
}
.page-steps__list-title::before {
  content: counter(step);
  display: inline-block;
  font-size: 1.125rem;
  font-family: "Montserrat", sans-serif;
  font-weight: 700;
  line-height: 1.1;
  color: #116BAF;
  border-bottom: 1px solid #116BAF;
  padding-inline: 0.375rem;
}
@media screen and (min-width: 376px) {
  .page-steps__list-title::before {
    padding-inline: 6px;
    font-size: clamp(18px, 1.125rem, 20px);
  }
}
@media (min-width: 768px) {
  .page-steps__list-title::before {
    font-size: 24px;
    padding-inline: 0.3125rem 0.125rem;
    border-bottom: 2px solid #116BAF;
  }
}

.page-steps__list-text {
  font-size: 0.875rem;
  font-weight: 500;
  line-height: 1.6;
  color: #111;
  margin-top: 1rem;
  letter-spacing: 0.05em;
}
@media screen and (min-width: 376px) {
  .page-steps__list-text {
    font-size: 14px;
    margin-top: 16px;
  }
}
@media (min-width: 768px) {
  .page-steps__list-text {
    font-size: 16px;
    margin-top: 1.5rem;
  }
}

.page-tips__inner {
  padding-top: 4rem;
}
@media screen and (min-width: 376px) {
  .page-tips__inner {
    padding-top: 64px;
  }
}
@media (min-width: 768px) {
  .page-tips__inner {
    padding-top: 6.25rem;
  }
}

.page-voice__inner {
  padding-block: 4rem 5rem;
}
@media screen and (min-width: 376px) {
  .page-voice__inner {
    padding-block: 64px 80px;
  }
}
@media (min-width: 768px) {
  .page-voice__inner {
    padding-block: 6.25rem;
  }
}

.page-voice-archive {
  margin-top: 4rem;
}
@media screen and (min-width: 376px) {
  .page-voice-archive {
    margin-top: 64px;
  }
}
@media (min-width: 768px) {
  .page-voice-archive {
    margin-top: 5rem;
  }
}

.page-voice__text {
  font-size: 0.875rem;
  font-weight: 700;
  line-height: 1.6;
  letter-spacing: 0.05em;
  text-align: center;
  color: #111;
}
@media screen and (min-width: 376px) {
  .page-voice__text {
    font-size: clamp(14px, 1rem, 16px);
  }
}
@media (min-width: 768px) {
  .page-voice__text {
    font-size: clamp(16px, 1.125rem, 18px);
  }
}

.page-voice__content {
  margin-top: 3rem;
  width: 100%;
  max-width: 100%;
  margin-inline: auto;
}
@media screen and (min-width: 376px) {
  .page-voice__content {
    margin-top: 48px;
    width: clamp(375px, 31.25rem, 500px);
  }
}
@media (min-width: 768px) {
  .page-voice__content {
    margin-top: 4rem;
    width: 75rem;
  }
}

.page-voice__items {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: (1fr)[1];
  grid-template-columns: repeat(1, 1fr);
  gap: 1.5rem;
}
@media screen and (min-width: 376px) {
  .page-voice__items {
    -ms-grid-columns: (1fr)[1];
    grid-template-columns: repeat(1, 1fr);
    gap: 30px;
  }
}
@media (min-width: 768px) {
  .page-voice__items {
    -ms-grid-columns: (1fr)[2];
    grid-template-columns: repeat(2, 1fr);
    gap: 3rem;
  }
}

.page-voice__item {
  position: relative;
  padding: 1.5rem;
  background: #FFF;
  border-radius: 1rem;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 1rem;
}
@media screen and (min-width: 376px) {
  .page-voice__item {
    gap: 16px;
    padding: 24px;
    border-radius: 16px;
  }
}
@media (min-width: 768px) {
  .page-voice__item {
    gap: 1.5rem;
    padding: 2rem;
  }
}
.page-voice__item::after {
  content: "";
  position: absolute;
  display: block;
  bottom: -0.5rem;
  left: 0.5rem;
  width: 100%;
  height: 100%;
  border-radius: 1.25rem;
  z-index: -1;
  background: url(../img/webp/box-bg-pc.webp) no-repeat center center/cover;
}

.page-voice__item-user {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 1.5rem;
}
@media screen and (min-width: 376px) {
  .page-voice__item-user {
    gap: 24px;
  }
}
@media (min-width: 768px) {
  .page-voice__item-user {
    gap: 2.5rem;
  }
}

.page-voice__item-user-img {
  width: 5.625rem;
  height: 5.625rem;
  max-width: 100%;
}
@media screen and (min-width: 376px) {
  .page-voice__item-user-img {
    width: 90px;
    height: 90px;
  }
}
@media (min-width: 768px) {
  .page-voice__item-user-img {
    width: 7.5rem;
    height: 7.5rem;
  }
}
.page-voice__item-user-img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.page-voice__item-user-body {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 0.5rem;
}

.cat-area {
  font-size: 0.875rem;
  font-weight: 700;
  line-height: 1.6;
  color: #FFF;
  border-radius: 6.25rem;
  padding: 0.25rem 0.5rem;
  background: #2698D5;
  display: inline-block;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
}
@media screen and (min-width: 376px) {
  .cat-area {
    font-size: 14px;
    padding: 4px 8px;
  }
}
@media (min-width: 768px) {
  .cat-area {
    padding: 0.25rem 0.5rem;
    font-size: clamp(14px, 1rem, 16px);
  }
}

.page-voice__item-user-name {
  font-size: 1rem;
  font-weight: 700;
  line-height: 1.6;
  color: #222;
}
@media screen and (min-width: 376px) {
  .page-voice__item-user-name {
    font-size: 16px;
  }
}
@media (min-width: 768px) {
  .page-voice__item-user-name {
    font-size: clamp(18px, 1.25rem, 20px);
  }
}

.page-voice__item-capture {
  background: #FDD557;
  width: 100%;
  padding: 0.625rem;
  max-width: 100%;
  margin-inline: auto;
}
@media screen and (min-width: 376px) {
  .page-voice__item-capture {
    padding: 10px;
  }
}
@media (min-width: 768px) {
  .page-voice__item-capture {
    padding: 0.625rem;
  }
}
.page-voice__item-capture img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.page-voice__item-text {
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.6;
  color: #222;
}
@media screen and (min-width: 376px) {
  .page-voice__item-text {
    font-size: clamp(14px, 0.875rem, 16px);
  }
}
@media (min-width: 768px) {
  .page-voice__item-text {
    font-size: clamp(14px, 1rem, 16px);
  }
}

.page-voice__item-btn {
  text-align: end;
}

.page-voice__item-more {
  -webkit-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
  font-size: 0.875rem;
  font-weight: 700;
  line-height: 1.6;
  position: relative;
  display: -webkit-inline-box;
  display: -webkit-inline-flex;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0.625rem;
  -webkit-box-pack: end;
  -webkit-justify-content: flex-end;
      -ms-flex-pack: end;
          justify-content: flex-end;
}
@media screen and (min-width: 376px) {
  .page-voice__item-more {
    font-size: clamp(14px, 0.875rem, 16px);
    gap: 10px;
  }
}
@media (min-width: 768px) {
  .page-voice__item-more {
    font-size: clamp(14px, 1rem, 16px);
  }
}
.page-voice__item-more::after {
  content: "";
  background: url(../img/svg/arrow-circle-right-bg-black.svg) no-repeat center center/contain;
  width: 1.25rem;
  height: 1.25rem;
}
@media screen and (min-width: 376px) {
  .page-voice__item-more::after {
    width: 20px;
    height: 20px;
  }
}
@media (min-width: 768px) {
  .page-voice__item-more::after {
    width: 1.875rem;
    height: 1.875rem;
  }
}
@media (any-hover: hover) {
  .page-voice__item-more:hover {
    opacity: 0.6;
  }
}

.page-voice-area {
  margin-top: 2rem;
}
@media screen and (min-width: 376px) {
  .page-voice-area {
    margin-top: 32px;
  }
}
@media (min-width: 768px) {
  .page-voice-area {
    margin-top: 64px;
  }
}

.page-voice__title {
  font-size: 1.5rem;
  font-weight: 900;
  line-height: 1.6;
  color: #111;
  text-align: center;
}
@media screen and (min-width: 376px) {
  .page-voice__title {
    font-size: 24px;
  }
}
@media (min-width: 768px) {
  .page-voice__title {
    font-size: clamp(30px, 2.5rem, 40px);
  }
}

.cta-name {
  font-size: 1rem;
  font-weight: 900;
  line-height: 1.6;
  color: #222;
  margin-bottom: 1.5rem;
}
@media screen and (min-width: 376px) {
  .cta-name {
    font-size: 16px;
    margin-bottom: 24px;
  }
}
@media (min-width: 768px) {
  .cta-name {
    margin-bottom: 3rem;
    font-size: clamp(28px, 2rem, 32px);
  }
}

.page-voice.--tag .page-voice__content {
  margin-top: 2rem;
}
@media screen and (min-width: 376px) {
  .page-voice.--tag .page-voice__content {
    margin-top: 32px;
  }
}
@media (min-width: 768px) {
  .page-voice.--tag .page-voice__content {
    margin-top: 4rem;
  }
}

.page-work-archive {
  margin-top: 4rem;
}
@media screen and (min-width: 376px) {
  .page-work-archive {
    margin-top: 64px;
  }
}
@media (min-width: 768px) {
  .page-work-archive {
    margin-top: 5rem;
  }
}
.page-work-archive.--category {
  margin-top: 2rem;
}
@media screen and (min-width: 376px) {
  .page-work-archive.--category {
    margin-top: 32px;
  }
}
@media (min-width: 768px) {
  .page-work-archive.--category {
    margin-top: 5rem;
  }
}

.page-work .cta-tag a {
  font-size: 0.875rem;
  font-weight: 700;
  line-height: 1.6;
  color: #111;
  padding: 0.25rem 0.5rem;
  background: #FDD557;
  border-radius: 6.25rem;
}
@media screen and (min-width: 376px) {
  .page-work .cta-tag a {
    font-size: 14px;
    padding: 4px 8px;
  }
}
@media (min-width: 768px) {
  .page-work .cta-tag a {
    font-size: 16px;
  }
}
.page-work .name a,
.page-work .name span {
  background: #F0F0F0;
}

.page-work__inner {
  padding-block: 4rem 5rem;
}
@media screen and (min-width: 376px) {
  .page-work__inner {
    padding-block: 64px 80px;
  }
}
@media (min-width: 768px) {
  .page-work__inner {
    padding-block: 6.25rem;
  }
}

.page-work__content {
  width: 100%;
  max-width: 100%;
  margin-inline: auto;
  margin-top: 3rem;
}
@media screen and (min-width: 376px) {
  .page-work__content {
    margin-top: 48px;
    width: clamp(375px, 31.25rem, 500px);
  }
}
@media (min-width: 768px) {
  .page-work__content {
    margin-top: 4rem;
    width: 75rem;
  }
}

.page-work__item {
  -webkit-box-shadow: 5px 5px 0 0 #93BBD9;
          box-shadow: 5px 5px 0 0 #93BBD9;
  padding: 1.5rem 0.8125rem;
  background: #FFF;
  border-radius: 1rem;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 1.5rem;
}
@media screen and (min-width: 376px) {
  .page-work__item {
    padding: 24px;
    border-radius: 16px;
    gap: 24px;
  }
}
@media (min-width: 768px) {
  .page-work__item {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-direction: row;
        -ms-flex-direction: row;
            flex-direction: row;
    padding: 2.5rem;
    border-radius: 1.25rem;
    gap: 3rem;
  }
}

.page-work__items {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 1.5rem;
}
@media screen and (min-width: 376px) {
  .page-work__items {
    gap: 24px;
  }
}
@media (min-width: 768px) {
  .page-work__items {
    gap: 1.5rem;
  }
}
.page-work__items .date {
  font-size: 0.875rem;
  font-weight: 700;
  line-height: 1.6;
  color: #222;
}
@media screen and (min-width: 376px) {
  .page-work__items .date {
    font-size: clamp(14px, 0.875rem, 16px);
  }
}
@media (min-width: 768px) {
  .page-work__items .date {
    font-size: clamp(14px, 1rem, 16px);
  }
}

.page-work__item-thumbs {
  -webkit-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
  width: 35.625rem;
  max-width: 100%;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0.625rem;
  position: relative;
}
@media screen and (min-width: 376px) {
  .page-work__item-thumbs {
    gap: 10px;
  }
}
@media (min-width: 768px) {
  .page-work__item-thumbs {
    gap: 0.625rem;
  }
}
.page-work__item-thumbs::after {
  content: "";
  position: absolute;
  z-index: 2;
  top: 50%;
  left: 50%;
  translate: -50% -50%;
  width: 2.8125rem;
  height: 2.8125rem;
  background: url(../img/webp/before-after-arrow.webp) no-repeat center center/cover;
}
@media screen and (min-width: 376px) {
  .page-work__item-thumbs::after {
    width: 45px;
    height: 45px;
  }
}
@media (min-width: 768px) {
  .page-work__item-thumbs::after {
    width: 5rem;
    height: 4.375rem;
  }
}
@media (any-hover: hover) {
  .page-work__item-thumbs:hover {
    opacity: 0.6;
  }
}

.page-work__item-before,
.page-work__item-after {
  position: relative;
  overflow: hidden;
  border-radius: 1rem;
  width: 100%;
  max-width: 100%;
  aspect-ratio: 154/200;
}
@media screen and (min-width: 376px) {
  .page-work__item-before,
  .page-work__item-after {
    border-radius: 16px;
    height: -webkit-fit-content;
    height: -moz-fit-content;
    height: fit-content;
  }
}
@media (min-width: 768px) {
  .page-work__item-before,
  .page-work__item-after {
    border-radius: 1.25rem;
    aspect-ratio: 526/564;
  }
}
.page-work__item-before::after,
.page-work__item-after::after {
  content: "";
  position: absolute;
  bottom: -1.25rem;
  left: -0.625rem;
  width: 4.6875rem;
  height: 4.6875rem;
  border-radius: 1rem;
}
@media screen and (min-width: 376px) {
  .page-work__item-before::after,
  .page-work__item-after::after {
    width: 80px;
    height: 80px;
    bottom: -20px;
    left: -15px;
  }
}
@media (min-width: 768px) {
  .page-work__item-before::after,
  .page-work__item-after::after {
    width: 8.4375rem;
    height: 8.4375rem;
    bottom: -2.5rem;
    left: -1.25rem;
  }
}
.page-work__item-before img,
.page-work__item-after img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.page-work__item-before::after {
  background: url(../img/webp/before-badge.webp) no-repeat center center/cover;
}

.page-work__item-after::after {
  background: url(../img/webp/after-badge.webp) no-repeat center center/cover;
}

.page-work__item-body {
  -webkit-box-flex: 1;
  -webkit-flex: 1;
      -ms-flex: 1;
          flex: 1;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 2rem;
}
@media screen and (min-width: 376px) {
  .page-work__item-body {
    gap: 32px;
  }
}
@media (min-width: 768px) {
  .page-work__item-body {
    gap: 2rem;
  }
}

.page-work__item-main {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 1rem;
}
@media screen and (min-width: 376px) {
  .page-work__item-main {
    gap: 16px;
  }
}
@media (min-width: 768px) {
  .page-work__item-main {
    gap: 1rem;
  }
}

.page-work__item-user {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  gap: 0.75rem;
}
@media screen and (min-width: 376px) {
  .page-work__item-user {
    gap: 12px;
  }
}
@media (min-width: 768px) {
  .page-work__item-user {
    gap: 0.75rem;
  }
}

.page-work__item-text {
  display: block;
  -webkit-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
  font-size: 0.875rem;
  font-weight: 500;
  line-height: 1.6;
  color: #222;
}
@media screen and (min-width: 376px) {
  .page-work__item-text {
    font-size: clamp(14px, 0.875rem, 16px);
  }
}
@media (min-width: 768px) {
  .page-work__item-text {
    font-size: clamp(14px, 1rem, 16px);
  }
}
@media (any-hover: hover) {
  .page-work__item-text:hover {
    opacity: 0.6;
  }
}

.page-work__item-btn {
  text-align: end;
}

.page-work__item-more {
  -webkit-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
  font-size: 0.875rem;
  font-weight: 700;
  line-height: 1.6;
  position: relative;
  display: -webkit-inline-box;
  display: -webkit-inline-flex;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0.625rem;
  -webkit-box-pack: end;
  -webkit-justify-content: flex-end;
      -ms-flex-pack: end;
          justify-content: flex-end;
}
@media screen and (min-width: 376px) {
  .page-work__item-more {
    font-size: clamp(14px, 0.875rem, 16px);
    gap: 10px;
  }
}
@media (min-width: 768px) {
  .page-work__item-more {
    font-size: clamp(14px, 1rem, 16px);
  }
}
.page-work__item-more::after {
  content: "";
  background: url(../img/svg/arrow-circle-right-bg-black.svg) no-repeat center center/contain;
  width: 1.25rem;
  height: 1.25rem;
}
@media screen and (min-width: 376px) {
  .page-work__item-more::after {
    width: 20px;
    height: 20px;
  }
}
@media (min-width: 768px) {
  .page-work__item-more::after {
    width: 1.875rem;
    height: 1.875rem;
  }
}
@media (any-hover: hover) {
  .page-work__item-more:hover {
    opacity: 0.6;
  }
}

.page-work-keyword {
  margin-top: 2rem;
}
@media screen and (min-width: 376px) {
  .page-work-keyword {
    margin-top: 32px;
  }
}
@media (min-width: 768px) {
  .page-work-keyword {
    margin-top: 64px;
  }
}

.page-work__title {
  font-size: 1.5rem;
  font-weight: 900;
  line-height: 1.6;
  color: #111;
  text-align: center;
}
@media screen and (min-width: 376px) {
  .page-work__title {
    font-size: 24px;
  }
}
@media (min-width: 768px) {
  .page-work__title {
    font-size: clamp(30px, 2.5rem, 40px);
  }
}

.cta-name {
  font-size: 1rem;
  font-weight: 900;
  line-height: 1.6;
  color: #222;
  margin-bottom: 1.5rem;
}
@media screen and (min-width: 376px) {
  .cta-name {
    font-size: clamp(16px, 1rem, 28px);
    margin-bottom: 24px;
  }
}
@media (min-width: 768px) {
  .cta-name {
    margin-bottom: 3rem;
    font-size: clamp(28px, 2rem, 32px);
  }
}

.page-work.--category .page-work__content {
  margin-top: 2rem;
}
@media screen and (min-width: 376px) {
  .page-work.--category .page-work__content {
    margin-top: 32px;
  }
}
@media (min-width: 768px) {
  .page-work.--category .page-work__content {
    margin-top: 4rem;
  }
}

.work-info-content,
.work-point-content {
  margin-top: 4rem;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 2rem;
}
@media screen and (min-width: 376px) {
  .work-info-content,
  .work-point-content {
    margin-top: 64px;
    gap: 32px;
  }
}
@media (min-width: 768px) {
  .work-info-content,
  .work-point-content {
    margin-top: 4rem;
    gap: 2.5rem;
  }
}

.info-table {
  width: 100%;
  border-collapse: separate;
}
@media (min-width: 768px) {
  .info-table {
    border-spacing: 0.25rem;
  }
}
@media screen and (max-width: 767px) {
  .info-table tr {
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: 1fr;
    grid-template-columns: 1fr;
    margin-bottom: 11px;
  }
  .info-table tr:last-child {
    margin-bottom: 0;
  }
}
@media screen and (max-width: 375px) {
  .info-table tr {
    margin-bottom: 0.6875rem;
  }
  .info-table tr:last-child {
    margin-bottom: 0;
  }
}

.info-table th,
.info-table td {
  padding: 1rem;
  vertical-align: middle;
  font-size: 0.875rem;
  font-weight: 700;
  line-height: 1.6;
}
@media screen and (min-width: 376px) {
  .info-table th,
  .info-table td {
    font-size: clamp(14px, 0.875rem, 16px);
    padding: 16px;
  }
}
@media (min-width: 768px) {
  .info-table th,
  .info-table td {
    font-size: 18px;
    padding: 1rem 1.5rem;
  }
}

.info-table th {
  width: 100%;
  background: #0f6ab4;
  color: #FFF;
  font-weight: 700;
  text-align: center;
  border-radius: 4px 4px 0 0;
}
@media screen and (min-width: 376px) {
  .info-table th {
    width: 100%;
  }
}
@media (min-width: 768px) {
  .info-table th {
    width: 17.9375rem;
    border-radius: 4px;
  }
}

.info-table td {
  background: #F0F0F0;
  color: #111;
  border-radius: 0 0 4px 4px;
}
@media (min-width: 768px) {
  .info-table td {
    border-radius: 4px;
  }
}

/* キーワード */
.info-table__keywords {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  gap: 0.625rem;
}
@media screen and (min-width: 376px) {
  .info-table__keywords {
    gap: 10px;
  }
}

.info-table__keywords a {
  color: #2698D5;
  text-decoration: underline;
}

.info-table__keywords a:last-child {
  margin-right: 0;
}

.work-thumbs {
  position: relative;
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: (1fr)[2];
  grid-template-columns: repeat(2, 1fr);
  gap: 0.625rem;
  margin-top: 2rem;
}
@media screen and (min-width: 376px) {
  .work-thumbs {
    gap: 10px;
    margin-top: 32px;
  }
}
@media (min-width: 768px) {
  .work-thumbs {
    gap: 1.25rem;
    margin-top: 4rem;
  }
}
.work-thumbs::after {
  content: "";
  position: absolute;
  z-index: 2;
  top: 50%;
  left: 50%;
  translate: -50% -50%;
  width: 3.4375rem;
  height: 2.25rem;
  background: url(../img/webp/before-after-arrow.webp) no-repeat center center/cover;
}
@media screen and (min-width: 376px) {
  .work-thumbs::after {
    width: 55px;
    height: 36px;
  }
}
@media (min-width: 768px) {
  .work-thumbs::after {
    width: 10.9375rem;
    height: 10.25rem;
  }
}

.work-thumbs__before,
.work-thumbs__after {
  position: relative;
  overflow: hidden;
  border-radius: 1rem;
  aspect-ratio: 154/200;
  width: 100%;
  height: 100%;
  max-width: 100%;
}
@media screen and (min-width: 376px) {
  .work-thumbs__before,
  .work-thumbs__after {
    border-radius: 16px;
    height: -webkit-fit-content;
    height: -moz-fit-content;
    height: fit-content;
  }
}
@media (min-width: 768px) {
  .work-thumbs__before,
  .work-thumbs__after {
    border-radius: 1.25rem;
    width: 32.875rem;
    height: 35.25rem;
  }
}
.work-thumbs__before img,
.work-thumbs__after img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.work-thumbs__before::after {
  content: "";
  position: absolute;
  bottom: -1.25rem;
  left: -0.625rem;
  width: 5.0625rem;
  height: 5.0625rem;
  border-radius: 1rem;
  background: url(../img/webp/before-badge.webp) no-repeat center center/cover;
}
@media screen and (min-width: 376px) {
  .work-thumbs__before::after {
    width: 81px;
    height: 81px;
    bottom: -20px;
    left: -10px;
  }
}
@media (min-width: 768px) {
  .work-thumbs__before::after {
    width: 15.8125rem;
    height: 15.8125rem;
    bottom: -5.5rem;
    left: -3.4375rem;
  }
}

.work-thumbs__after::after {
  content: "";
  position: absolute;
  bottom: -1.25rem;
  left: -0.625rem;
  width: 5.0625rem;
  height: 5.0625rem;
  border-radius: 1rem;
  background: url(../img/webp/after-badge.webp) no-repeat center center/cover;
}
@media screen and (min-width: 376px) {
  .work-thumbs__after::after {
    width: 81px;
    height: 81px;
    bottom: -20px;
    left: -10px;
  }
}
@media (min-width: 768px) {
  .work-thumbs__after::after {
    width: 15.8125rem;
    height: 15.8125rem;
    bottom: -5.5rem;
    left: -3.4375rem;
  }
}

.single-contents_head {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 1rem;
}
@media screen and (min-width: 376px) {
  .single-contents_head {
    gap: 16px;
  }
}
@media (min-width: 768px) {
  .single-contents_head {
    gap: 1rem;
  }
}

.work-date {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 0.25rem;
}
@media screen and (min-width: 376px) {
  .work-date {
    gap: 4px;
  }
}
@media (min-width: 768px) {
  .work-date {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-direction: row;
        -ms-flex-direction: row;
            flex-direction: row;
    gap: 1.5rem;
  }
}

.completed-date,
.post-date {
  font-size: 0.8125rem;
  font-weight: 700;
  line-height: 1.6;
  color: #222;
}
@media screen and (min-width: 376px) {
  .completed-date,
  .post-date {
    font-size: clamp(13px, 0.8125rem, 16px);
  }
}
@media (min-width: 768px) {
  .completed-date,
  .post-date {
    font-size: 16px;
  }
}

.completed-date {
  color: #111;
}

.post-date {
  color: #222;
}

.work-text-content {
  margin-top: 4rem;
  background: #D7EEFF;
  padding: 1.5rem 1rem;
  border-radius: 1rem;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 1.5rem;
}
@media screen and (min-width: 376px) {
  .work-text-content {
    margin-top: 64px;
    padding: 24px 16px;
    border-radius: 16px;
    gap: 24px;
  }
}
@media (min-width: 768px) {
  .work-text-content {
    margin-top: 4rem;
    padding: 4.0625rem 2.5rem;
    border-radius: 1.25rem;
    gap: 2.5rem;
  }
}

.work-text {
  font-size: 0.875rem;
  font-weight: 500;
  line-height: 1.6;
  color: #222;
}
@media screen and (min-width: 376px) {
  .work-text {
    font-size: clamp(14px, 0.875rem, 16px);
  }
}
@media (min-width: 768px) {
  .work-text {
    font-size: 16px;
  }
}

.work-point-items {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: (1fr)[1];
  grid-template-columns: repeat(1, 1fr);
  gap: 2rem;
}
@media screen and (min-width: 376px) {
  .work-point-items {
    gap: 32px;
  }
}
@media (min-width: 768px) {
  .work-point-items {
    -ms-grid-columns: (1fr)[3];
    grid-template-columns: repeat(3, 1fr);
    gap: 2rem;
  }
}

.work-point-item {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 1rem;
}
@media screen and (min-width: 376px) {
  .work-point-item {
    gap: 16px;
  }
}
@media (min-width: 768px) {
  .work-point-item {
    gap: 1.5rem;
  }
}

.work-point-text {
  font-size: 0.875rem;
  font-weight: 500;
  line-height: 1.6;
  color: #222;
}
@media screen and (min-width: 376px) {
  .work-point-text {
    font-size: clamp(14px, 0.875rem, 16px);
  }
}
@media (min-width: 768px) {
  .work-point-text {
    font-size: 16px;
  }
}

.work-point-img {
  width: 100%;
  max-width: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  border-radius: 1rem;
  aspect-ratio: 345/224;
  overflow: hidden;
}
@media screen and (min-width: 376px) {
  .work-point-img {
    border-radius: 16px;
  }
}
@media (min-width: 768px) {
  .work-point-img {
    border-radius: 1.25rem;
  }
}
.work-point-img img {
  width: 100%;
  height: 100%;
}

.work-connection-content {
  margin-top: 5rem;
  padding: 5rem 0.9375rem;
  background: #F0F0F0;
  gap: 2rem;
  margin-inline: -0.9375rem;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
}
@media screen and (min-width: 376px) {
  .work-connection-content {
    margin-top: 80px;
    padding: 80px 15px;
    gap: 32px;
  }
}
@media (min-width: 768px) {
  .work-connection-content {
    margin-top: 5rem;
    padding: 4rem 3rem;
    border-radius: 1.25rem;
    gap: 3rem;
    margin-inline: 0;
  }
}

.page-privacy-policy__inner {
  padding-block: 4rem 0;
}
@media screen and (min-width: 376px) {
  .page-privacy-policy__inner {
    padding-block: 64px 80px;
  }
}
@media (min-width: 768px) {
  .page-privacy-policy__inner {
    padding-block: 5rem 6.25rem;
    padding-inline: 1.5625rem;
  }
}

.page-privacy-policy__text {
  font-size: 0.875rem;
  font-weight: 700;
  line-height: 1.6;
  text-align: center;
  color: #111;
}
@media screen and (min-width: 376px) {
  .page-privacy-policy__text {
    font-size: clamp(14px, 1rem, 16px);
  }
}
@media (min-width: 768px) {
  .page-privacy-policy__text {
    font-size: 18px;
  }
}

.page-privacy-policy__content {
  margin-top: 4rem;
  width: 100%;
  max-width: 100%;
  margin-inline: auto;
  background: #FFF;
  padding: 4rem 0.9375rem 5rem;
}
@media screen and (min-width: 376px) {
  .page-privacy-policy__content {
    padding: 64px 0.9375rem 80px;
    margin-top: 64px;
    width: 500px;
  }
}
@media screen and (min-width: 501px) and (max-width: 767px) {
  .page-privacy-policy__content {
    border-radius: 16px;
  }
}
@media (min-width: 768px) {
  .page-privacy-policy__content {
    width: 75rem;
    padding: 4rem;
    border-radius: 1.25rem;
    margin-top: 5rem;
  }
}
.page-privacy-policy__content .top-text {
  margin-top: 0;
}
.page-privacy-policy__content p {
  font-size: 0.875rem;
  font-weight: 500;
  line-height: 1.6;
  margin-top: 1rem;
}
@media screen and (min-width: 376px) {
  .page-privacy-policy__content p {
    font-size: clamp(14px, 0.875rem, 16px);
    margin-top: 16px;
  }
}
@media (min-width: 768px) {
  .page-privacy-policy__content p {
    font-size: 16px;
  }
}

.page-privacy-policy__content-title {
  font-size: 1.125rem;
  font-weight: 700;
  line-height: 1.6;
  color: #116BAF;
  margin-top: 2rem;
  padding-left: 1em;
  text-indent: -1em;
}
@media screen and (min-width: 376px) {
  .page-privacy-policy__content-title {
    font-size: clamp(18px, 1.125rem, 20px);
    margin-top: 32px;
  }
}
@media (min-width: 768px) {
  .page-privacy-policy__content-title {
    font-size: 24px;
    margin-top: 2.5rem;
  }
}

.recruit-flow {
  padding-block: 5rem;
  background: url(../img/webp/brick-bg.webp) no-repeat center center/cover;
}
@media screen and (min-width: 376px) {
  .recruit-flow {
    padding-block: 80px;
  }
}
@media (min-width: 768px) {
  .recruit-flow {
    padding-block: 6.25rem;
  }
}

.recruit-flow__inner {
  padding-inline: 0.9375rem;
}
@media screen and (min-width: 376px) {
  .recruit-flow__inner {
    padding-inline: 15px;
  }
}
.recruit-flow__title {
  width: 7.8125rem;
  max-width: 100%;
  margin-inline: auto;
  height: 100%;
}
@media screen and (min-width: 376px) {
  .recruit-flow__title {
    width: 125px;
  }
}
@media screen and (min-width: 376px) {
  .recruit-flow__title {
    width: 125px;
  }
}
@media (min-width: 768px) {
  .recruit-flow__title {
    width: 200px;
  }
}
.recruit-flow__title img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.recruit-flow__content {
  margin-top: 2rem;
  border-radius: 1rem;
  background: #D7EEFF;
  padding: 2rem 1rem;
  width: 100%;
  max-width: 100%;
  margin-inline: auto;
}
@media screen and (min-width: 376px) {
  .recruit-flow__content {
    margin-top: 32px;
    border-radius: 16px;
    padding: 32px 16px;
    width: clamp(375px, 31.25rem, 500px);
  }
}
@media (min-width: 768px) {
  .recruit-flow__content {
    width: 60rem;
    margin-top: 4rem;
    border-radius: 1.25rem;
    padding: 2.5rem;
  }
}

.recruit-flow__items {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: minmax(0, 1fr);
  grid-template-columns: minmax(0, 1fr);
  gap: 1.6875rem;
  width: 100%;
  max-width: 100%;
  margin-inline: auto;
}
@media screen and (min-width: 376px) {
  .recruit-flow__items {
    gap: 27px;
    width: clamp(375px, 31.25rem, 500px);
  }
}
@media (min-width: 768px) {
  .recruit-flow__items {
    width: inherit;
    -ms-grid-columns: (1fr)[6];
    grid-template-columns: repeat(6, 1fr);
    gap: 3.5rem;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-direction: row;
        -ms-flex-direction: row;
            flex-direction: row;
  }
}

.recruit-flow__item {
  background: #FDD557;
  border: 3px solid #111;
  border-radius: 0.625rem;
  font-weight: 700;
  line-height: 1.1;
  color: #111;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  position: relative;
  font-size: 1rem;
  line-height: 1.1;
  padding: 1.5rem;
}
@media screen and (min-width: 376px) {
  .recruit-flow__item {
    border-radius: 10px;
    font-size: 16px;
    padding: 24px;
  }
}
@media (min-width: 768px) {
  .recruit-flow__item {
    border-radius: 1.25rem;
    height: 15.625rem;
    font-size: 1.25rem;
    -webkit-writing-mode: vertical-rl;
        -ms-writing-mode: tb-rl;
            writing-mode: vertical-rl;
    padding: initial;
  }
}
.recruit-flow__item:not(:last-child)::after {
  content: "";
  display: block;
  width: 2rem;
  height: 0.9375rem;
  background: url(../img/svg/arrow-bottom-bg-black.svg) no-repeat center center/contain;
  position: absolute;
  top: 4.6875rem;
  left: 50%;
  translate: -50%;
}
@media screen and (min-width: 376px) {
  .recruit-flow__item:not(:last-child)::after {
    width: 32px;
    height: 15px;
    top: 75px;
  }
}
@media (min-width: 768px) {
  .recruit-flow__item:not(:last-child)::after {
    background: url(../img/svg/arrow-bg-black.svg) no-repeat center center/contain;
    top: 50%;
    right: -3.125rem;
    left: initial;
    translate: 0 -50%;
    width: 2.0625rem;
    height: 1.5rem;
  }
}

.page-recruit__inner {
  padding-top: 4rem;
}
@media screen and (min-width: 376px) {
  .page-recruit__inner {
    padding-top: 64px;
  }
}
@media (min-width: 768px) {
  .page-recruit__inner {
    padding-top: 6.25rem;
  }
}

.recruitment {
  margin-top: 4rem;
  padding-bottom: 5.1875rem;
}
@media screen and (min-width: 376px) {
  .recruitment {
    margin-top: 64px;
    padding-bottom: 83px;
  }
}
@media (min-width: 768px) {
  .recruitment {
    margin-top: 5rem;
    padding-bottom: 6.25rem;
  }
}

.recruitment__inner {
  padding-inline: 0.9375rem;
}
@media (min-width: 768px) {
  .recruitment__inner {
    padding-inline: 7.5rem;
  }
}

.recruitment__title {
  width: 6.5625rem;
  max-width: 100%;
  margin-inline: auto;
}
@media screen and (min-width: 376px) {
  .recruitment__title {
    width: 105px;
  }
}
@media (min-width: 768px) {
  .recruitment__title {
    width: 175px;
  }
}
.recruitment__title img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.recruitment__items {
  width: 100%;
  max-width: 100%;
  margin-inline: auto;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 2rem;
  margin-top: 2rem;
}
@media screen and (min-width: 376px) {
  .recruitment__items {
    margin-top: 32px;
    width: clamp(375px, 31.25rem, 500px);
    gap: 32px;
  }
}
@media (min-width: 768px) {
  .recruitment__items {
    width: 75rem;
    gap: 4rem;
    margin-top: 4rem;
  }
}

.recruitment__item {
  background: #FFF;
  border-radius: 1rem;
  padding: 2rem 1rem;
}
@media screen and (min-width: 376px) {
  .recruitment__item {
    border-radius: 16px;
    padding-block: 32px;
  }
}
@media (min-width: 768px) {
  .recruitment__item {
    border-radius: 1.25rem;
    padding: 4rem;
  }
}

.recruitment__item-title {
  position: relative;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 0.5rem;
  font-size: 1.25rem;
  font-weight: 900;
  line-height: 1.6;
  color: #116BAF;
}
@media screen and (min-width: 376px) {
  .recruitment__item-title {
    gap: 8px;
    font-size: 20px;
  }
}
@media (min-width: 768px) {
  .recruitment__item-title {
    font-size: 32px;
    gap: 1.5rem;
  }
}
.recruitment__item-title::after {
  content: "";
  width: 1.875rem;
  height: 2px;
  background: #2698D5;
  border-radius: 6.25rem;
}
@media screen and (min-width: 376px) {
  .recruitment__item-title::after {
    width: 30px;
    height: 2px;
  }
}
@media (min-width: 768px) {
  .recruitment__item-title::after {
    width: 2.875rem;
    height: 4px;
  }
}

.recruitment__item-text {
  margin-top: 2rem;
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.6;
  color: #000;
}
@media screen and (min-width: 376px) {
  .recruitment__item-text {
    font-size: 14px;
    margin-top: 32px;
  }
}
@media (min-width: 768px) {
  .recruitment__item-text {
    margin-top: 4rem;
    font-size: 16px;
  }
}

.recruitment__content {
  width: 100%;
  max-width: 100%;
  margin-inline: auto;
  border-radius: 1.25rem;
  background: #F0F0F0;
  padding: 2rem 1rem;
  margin-top: 2rem;
}
@media screen and (min-width: 376px) {
  .recruitment__content {
    margin-top: 32px;
    border-radius: 20px;
    padding-block: 32px;
  }
}
@media (min-width: 768px) {
  .recruitment__content {
    padding: 4rem;
    margin-top: 4rem;
    border-radius: 1.25rem;
  }
}

.recruitment__content-title {
  font-size: 1rem;
  font-weight: 700;
  line-height: 1.6;
  padding-bottom: 1.5rem;
}
@media screen and (min-width: 376px) {
  .recruitment__content-title {
    font-size: 16px;
    padding-bottom: 24px;
  }
}
@media (min-width: 768px) {
  .recruitment__content-title {
    font-size: 24px;
    padding-bottom: 2rem;
  }
}

.recruitment__content-item {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: start;
  -webkit-align-items: flex-start;
      -ms-flex-align: start;
          align-items: flex-start;
  gap: 1rem;
  padding-block: 1rem;
  border-top: 2px solid #CCCCCC;
}
@media screen and (min-width: 376px) {
  .recruitment__content-item {
    gap: 16px;
    padding-block: 16px;
  }
}
@media (min-width: 768px) {
  .recruitment__content-item {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-direction: row;
        -ms-flex-direction: row;
            flex-direction: row;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    gap: 2.5rem;
    padding-block: 1.625rem;
  }
}
.recruitment__content-item:last-child {
  border-bottom: 2px solid #CCCCCC;
}

.recruitment__content-item-title {
  font-size: 1rem;
  font-weight: 500;
  line-height: 1.6;
  color: #000;
  width: 100%;
  max-width: 100%;
  margin-inline: auto;
}
@media screen and (min-width: 376px) {
  .recruitment__content-item-title {
    font-size: 16px;
  }
}
@media (min-width: 768px) {
  .recruitment__content-item-title {
    font-size: 16px;
    width: 15rem;
  }
}

.recruitment__content-item-text {
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.6;
  color: #000;
}
@media screen and (min-width: 376px) {
  .recruitment__content-item-text {
    font-size: 16px;
  }
}
@media (min-width: 768px) {
  .recruitment__content-item-text {
    font-size: 16px;
    -webkit-box-flex: 1;
    -webkit-flex: 1;
        -ms-flex: 1;
            flex: 1;
  }
}

.related-box {
  position: relative;
  padding: 1.5rem 1rem 1.6875rem;
  border: 1px solid #CCCCCC;
  border-radius: 1rem;
  margin-block: 2.8125rem 5rem;
}
.related-box a {
  -webkit-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
}
@media (any-hover: hover) {
  .related-box a:hover {
    opacity: 0.6;
  }
}
@media screen and (min-width: 376px) {
  .related-box {
    border-radius: 16px;
    padding: 24px 16px 27px;
    margin-block: 45px 80px;
  }
}
@media (min-width: 768px) {
  .related-box {
    width: 46.25rem;
    max-width: 100%;
    margin-inline: auto;
    padding: 2.5rem 2rem;
    border-radius: 1.25rem;
    margin-block: 3.4375rem 5rem;
  }
}
.related-box .related-box__title {
  position: absolute;
  top: -0.9375rem;
  left: 1.125rem;
  font-size: 1rem;
  font-weight: 700;
  line-height: 1.6;
  color: #111;
  display: inline-block;
  padding-inline: 0.625rem;
  background: #FFF;
}
@media screen and (min-width: 376px) {
  .related-box .related-box__title {
    font-size: 16px;
    top: -15px;
    left: 18px;
    padding-inline: 10px;
  }
}
@media (min-width: 768px) {
  .related-box .related-box__title {
    top: -1.0625rem;
    left: 2.5rem;
    padding-inline: 0.625rem;
    font-size: 18px;
  }
}
.related-box .related-item-text {
  -webkit-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
  font-size: 0.875rem;
  font-weight: 500;
  line-height: 1.6;
  color: #111;
  margin-top: 0.5rem;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
  overflow: hidden;
}
@media screen and (min-width: 376px) {
  .related-box .related-item-text {
    font-size: 14px;
    margin-top: 8px;
  }
}
@media (min-width: 768px) {
  .related-box .related-item-text {
    font-size: 16px;
    margin-top: 0.5rem;
    display: block;
    -webkit-line-clamp: initial;
    overflow: visible;
  }
}
.related-box .related-item-img {
  -webkit-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
  width: 7.0625rem;
  max-width: 100%;
  height: 4.6875rem;
  border-radius: 1rem;
  overflow: hidden;
  -webkit-box-flex: 0;
  -webkit-flex-grow: 0;
      -ms-flex-positive: 0;
          flex-grow: 0;
  -webkit-flex-shrink: 0;
      -ms-flex-negative: 0;
          flex-shrink: 0;
}
@media screen and (min-width: 376px) {
  .related-box .related-item-img {
    border-radius: 16px;
    width: 113px;
    height: 75px;
  }
}
@media (min-width: 768px) {
  .related-box .related-item-img {
    border-radius: 1.25rem;
    width: 200px;
    height: 133px;
  }
}
.related-box .related-item-img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.related-box .related-item-meta {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0.25rem 0.5rem;
}
@media screen and (min-width: 376px) {
  .related-box .related-item-meta {
    gap: 4px 8px;
  }
}
@media (min-width: 768px) {
  .related-box .related-item-meta {
    gap: 8px 1rem;
  }
}
.related-box .related-item-meta .date {
  font-size: 0.875rem;
  font-family: "Montserrat", sans-serif;
  font-weight: 500;
  line-height: 1.6;
  color: #888888;
}
@media screen and (min-width: 376px) {
  .related-box .related-item-meta .date {
    font-size: 14px;
  }
}
@media (min-width: 768px) {
  .related-box .related-item-meta .date {
    font-size: 16px;
  }
}
.related-box .related-item-meta .cta-tag {
  -webkit-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
  display: inline-block;
  font-size: 0.75rem;
  font-weight: 700;
  line-height: 1.6;
  color: #111;
  padding: 0.25rem 0.75rem;
  background: #FDD557;
  border-radius: 6.25rem;
}
@media screen and (min-width: 376px) {
  .related-box .related-item-meta .cta-tag {
    font-size: 12px;
    padding: 4px 12px;
    border-radius: 100px;
  }
}
@media (min-width: 768px) {
  .related-box .related-item-meta .cta-tag {
    font-size: 16px;
  }
}
.related-box .related-item a {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  gap: 1rem;
}
@media screen and (min-width: 376px) {
  .related-box .related-item a {
    gap: 16px;
  }
}
@media (min-width: 768px) {
  .related-box .related-item a {
    gap: 2rem;
  }
}

.related-content {
  margin-top: 5rem;
}
@media screen and (min-width: 376px) {
  .related-content {
    margin-top: 80px;
  }
}
@media (min-width: 768px) {
  .related-content .content-footer-title {
    font-size: 28px;
  }
}

.related__items {
  margin-top: 32px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 0.625rem;
}
@media screen and (min-width: 376px) {
  .related__items {
    margin-top: 32px;
    gap: 10px;
  }
}
@media (min-width: 768px) {
  .related__items {
    margin-top: 40px;
    gap: 16px;
  }
}

.related__item {
  position: relative;
}
.related__item.--new-arrival::before {
  content: "";
  position: absolute;
  z-index: 1;
  top: -1.25rem;
  left: -1.0625rem;
  width: 4.0625rem;
  height: 4.0625rem;
  background: url(../img/webp/new-badge.webp) no-repeat center center/cover;
}
@media screen and (min-width: 376px) {
  .related__item.--new-arrival::before {
    width: 65px;
    height: 65px;
    top: -20px;
    left: -17px;
  }
}
@media (min-width: 768px) {
  .related__item.--new-arrival::before {
    width: clamp(80px, 5.75rem, 92px);
    height: clamp(80px, 5.75rem, 92px);
    top: -25px;
    left: -25px;
  }
}
.related__item a {
  background: #F0F0F0;
  padding: 1.5rem 1rem;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  gap: 1rem;
  border-radius: 1rem;
  -webkit-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
}
@media screen and (min-width: 376px) {
  .related__item a {
    gap: 16px;
    padding: 24px 16px;
    border-radius: 16px;
  }
}
@media (min-width: 768px) {
  .related__item a {
    gap: 2rem;
    padding: 2rem;
    border-radius: 20px;
  }
}
@media (any-hover: hover) {
  .related__item a:hover {
    opacity: 0.6;
  }
}

.related__img {
  -webkit-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
  width: 113px;
  height: 75px;
  overflow: hidden;
  border-radius: 1rem;
}
@media screen and (min-width: 376px) {
  .related__img {
    width: 113px;
    height: 75px;
    border-radius: 16px;
  }
}
@media (min-width: 768px) {
  .related__img {
    width: clamp(180px, 12.5rem, 200px);
    height: clamp(113px, 8.3125rem, 133px);
    border-radius: 1.25rem;
  }
}
.related__img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.related__body {
  -webkit-box-flex: 1;
  -webkit-flex: 1;
      -ms-flex: 1;
          flex: 1;
}

.related-meta {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  gap: 0.25rem 0.5rem;
}
@media screen and (min-width: 376px) {
  .related-meta {
    gap: 4px 8px;
  }
}
@media (min-width: 768px) {
  .related-meta {
    gap: 8px 16px;
  }
}
.related-meta .date {
  display: block;
  font-family: "Montserrat", sans-serif;
  color: #888888;
  line-height: 1.6;
  font-weight: 500;
  font-size: 0.875rem;
}
@media screen and (min-width: 376px) {
  .related-meta .date {
    font-size: 14px;
  }
}
@media (min-width: 768px) {
  .related-meta .date {
    font-size: clamp(14px, 1rem, 16px);
  }
}
.related-meta .cta-tag {
  -webkit-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
  display: block;
  font-size: 0.75rem;
  font-weight: 700;
  line-height: 1.6;
  color: #111;
  padding: 0.25rem 0.5rem;
  background: #FDD557;
  border-radius: 6.25rem;
}
@media screen and (min-width: 376px) {
  .related-meta .cta-tag {
    font-size: 12px;
    padding: 4px 8px;
    border-radius: 100px;
  }
}
@media (min-width: 768px) {
  .related-meta .cta-tag {
    font-size: clamp(14px, 1rem, 16px);
  }
}

.related__text {
  -webkit-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
  font-size: 0.875rem;
  font-weight: 500;
  line-height: 1.6;
  color: #111;
  margin-top: 0.5rem;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
  overflow: hidden;
}
@media screen and (min-width: 376px) {
  .related__text {
    font-size: 14px;
    margin-top: 8px;
  }
}
@media (min-width: 768px) {
  .related__text {
    font-size: 16px;
    display: block;
    -webkit-line-clamp: unset;
    overflow: visible;
  }
}

.request-guide {
  background: #FFF;
}
@media (min-width: 768px) {
  .request-guide {
    padding-inline: 1.5625rem;
    padding-bottom: 6.25rem;
  }
}

.request-guide__content {
  padding-block: 4rem;
  padding-inline: 2.34375rem;
  background: #116BAF;
  width: 100%;
  max-width: 100%;
  margin-inline: auto;
}
@media screen and (min-width: 376px) {
  .request-guide__content {
    width: clamp(375px, 31.25rem, 500px);
    padding-block: 64px;
    padding-inline: 37.5px;
  }
}
@media (min-width: 768px) {
  .request-guide__content {
    border-radius: 1.25rem;
    width: 75rem;
    padding-block: 4rem;
    padding-inline: 9.75rem;
  }
}

.request-guide__title {
  width: 16.6875rem;
  max-width: 100%;
  margin-inline: auto;
}
@media screen and (min-width: 376px) {
  .request-guide__title {
    width: 267px;
  }
}
@media (min-width: 768px) {
  .request-guide__title {
    width: 367px;
    width: clamp(267px, 22.9375rem, 367px);
  }
}
.request-guide__title img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.request-guide__text {
  font-size: 0.875rem;
  font-weight: 700;
  line-height: 1.6;
  text-align: center;
  color: #FFF;
  margin-top: 1.5rem;
}
@media screen and (min-width: 376px) {
  .request-guide__text {
    font-size: 14px;
    margin-top: 24px;
  }
}
@media screen and (min-width: 951px) {
  .request-guide__text {
    font-size: 18px;
    margin-top: 2rem;
  }
}
.request-guide__text span {
  color: #FDD557;
}

.request-guide__items {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: (1fr)[1];
  grid-template-columns: repeat(1, 1fr);
  gap: 1rem;
  margin-top: 1.5rem;
}
@media screen and (min-width: 376px) {
  .request-guide__items {
    gap: 16px;
    margin-top: 24px;
  }
}
@media screen and (min-width: 420px) and (max-width: 767px) {
  .request-guide__items {
    padding-inline: 50px;
  }
}
@media (min-width: 768px) {
  .request-guide__items {
    margin-top: 1.5rem;
    gap: 1.5rem;
    -ms-grid-columns: (1fr)[3];
    grid-template-columns: repeat(3, 1fr);
  }
}

.request-guide__item a {
  display: block;
  -webkit-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
}
@media (any-hover: hover) {
  .request-guide__item a:hover {
    opacity: 0.6;
  }
}
.request-guide__item img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.contact-btn {
  font-size: 1.125rem;
  font-weight: 700;
  color: #FFF;
  line-height: 1.6;
  position: relative;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0.5rem;
  padding: 0.9375rem 1.5rem;
  background: #F6A522;
  border: 0.09375rem solid #111;
  border-radius: 6.25rem;
  -webkit-transition: background 0.3s ease;
  transition: background 0.3s ease;
}
@media screen and (min-width: 951px) {
  .contact-btn {
    font-size: 0.75rem;
    padding: 0.625rem 1rem;
  }
}
@media screen and (min-width: 1321px) {
  .contact-btn {
    font-size: 1.125rem;
    padding: 0.9375rem 1.5rem;
  }
}
.contact-btn::before {
  content: "";
  background: url(../img/svg/mail-icon-orange.svg) no-repeat center center/contain;
}
@media screen and (min-width: 951px) {
  .contact-btn::before {
    width: 1.125rem;
    height: 1.125rem;
  }
}
@media screen and (min-width: 1321px) {
  .contact-btn::before {
    width: 1.875rem;
    height: 1.875rem;
  }
}
@media (any-hover: hover) {
  .contact-btn:hover {
    background: #111;
  }
  .contact-btn:hover::before {
    background: url(../img/svg/mail-icon-black.svg) no-repeat center center/contain;
  }
}

/* CTA黒ボタン */
.btn-black {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  max-width: 100%;
  margin-inline: auto;
  margin-top: 2.5rem;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  padding: 0.9375rem 4rem;
  background: #111;
  border: 0.125rem solid #111;
  border-radius: 6.25rem;
  color: #FFF;
  text-align: center;
  font-size: 0.875rem;
  line-height: 1;
  font-weight: 900;
  -webkit-box-shadow: 0 4px 0 rgba(0, 0, 0, 0.2);
          box-shadow: 0 4px 0 rgba(0, 0, 0, 0.2);
  position: relative;
  -webkit-transition: background 0.3s ease;
  transition: background 0.3s ease;
}
@media screen and (min-width: 376px) {
  .btn-black {
    font-size: 14px;
    padding: 15px 64px;
    border-radius: 100px;
    margin-top: 40px;
    border: 2px solid #111;
  }
}
@media (min-width: 768px) {
  .btn-black {
    border-radius: 6.25rem;
    margin-inline: initial;
    font-size: clamp(14px, 1rem, 16px);
    margin-top: 1.5rem;
    padding: 0.9375rem 4rem;
  }
}
.btn-black::after {
  content: "";
  background: url(../img/svg/arrow-circle-right-black-bg-white.svg) no-repeat center center/contain;
  width: 1.25rem;
  height: 1.25rem;
  position: absolute;
  top: 50%;
  translate: 0 -50%;
  right: 1rem;
}
@media screen and (min-width: 376px) {
  .btn-black::after {
    width: 20px;
    height: 20px;
    right: 16px;
  }
}
@media (min-width: 768px) {
  .btn-black::after {
    width: clamp(20px, 1.5rem, 24px);
    height: clamp(20px, 1.5rem, 24px);
  }
}
@media (any-hover: hover) {
  .btn-black:hover {
    background: #FFF;
    color: #111;
  }
  .btn-black:hover::after {
    background: url(../img/svg/arrow-circle-right-bg-black.svg) no-repeat center center/contain;
  }
}

/* CTA青ボタン */
.btn-blue {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  padding-inline: 4rem;
  height: 3.75rem;
  max-width: 100%;
  margin-inline: auto;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  padding-block: 1.125rem;
  background: #2698D5;
  border: 2px solid #111;
  border-radius: 6.25rem;
  color: #FFF;
  text-align: center;
  font-size: 1rem;
  font-weight: 900;
  -webkit-box-shadow: 0 4px 0 rgba(0, 0, 0, 0.2);
          box-shadow: 0 4px 0 rgba(0, 0, 0, 0.2);
  position: relative;
  -webkit-transition: background 0.3s ease;
  transition: background 0.3s ease;
}
@media screen and (min-width: 376px) {
  .btn-blue {
    font-size: 16px;
    padding-inline: 64px;
    padding-block: 22px;
    height: 60px;
  }
}
@media (min-width: 768px) {
  .btn-blue {
    padding-inline: 6.25rem;
    font-size: clamp(16px, 1.125rem, 18px);
    padding-block: 1.25rem;
    height: 4.75rem;
  }
}
.btn-blue::after {
  content: "";
  background: url(../img/svg/arrow-circle-right-blue.svg) no-repeat center center/contain;
  width: 1.5rem;
  height: 1.5rem;
  position: absolute;
  top: 50%;
  translate: 0 -50%;
  right: 1rem;
}
@media screen and (min-width: 376px) {
  .btn-blue::after {
    width: 24px;
    height: 24px;
    right: 16px;
  }
}
@media (min-width: 768px) {
  .btn-blue::after {
    width: 1.875rem;
    height: 1.875rem;
    right: 1.5rem;
  }
}
@media (any-hover: hover) {
  .btn-blue:hover {
    background: #111;
  }
  .btn-blue:hover::after {
    background: url(../img/svg/arrow-circle-right-black-bg-white.svg) no-repeat center center/contain;
  }
}

.tags {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  gap: 0.5rem;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
}
@media screen and (min-width: 376px) {
  .tags {
    gap: 8px;
  }
}
@media (min-width: 768px) {
  .tags {
    gap: 0.5rem;
  }
}

.keyword-tag a {
  -webkit-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
  font-size: 0.875rem;
  font-weight: 700;
  line-height: 1.6;
  padding: 0.25rem 0.5rem;
  border-radius: 0.375rem;
  background: #116BAF;
  color: #FFF;
  display: block;
}
@media screen and (min-width: 376px) {
  .keyword-tag a {
    font-size: 14px;
    padding: 4px 8px;
    border-radius: 6px;
  }
}
@media (min-width: 768px) {
  .keyword-tag a {
    font-size: 16px;
    padding: 0.25rem 0.5rem;
    border-radius: 0.375rem;
  }
}
@media (any-hover: hover) {
  .keyword-tag a:hover {
    opacity: 0.6;
  }
}

.cta-tag {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  gap: 0.5rem;
}
.cta-tag a {
  -webkit-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
  display: block;
  font-size: 0.875rem;
  font-weight: 700;
  line-height: 1.6;
  color: #111;
  padding: 0.25rem 0.75rem;
  background: #FDD557;
  border-radius: 6.25rem;
}
@media screen and (min-width: 376px) {
  .cta-tag a {
    font-size: clamp(14px, 1rem, 16px);
    padding: 4px 12px;
  }
}
@media (min-width: 768px) {
  .cta-tag a {
    font-size: 16px;
  }
}
@media (any-hover: hover) {
  .cta-tag a:hover {
    opacity: 0.6;
  }
}

.content-title {
  font-size: 1.25rem;
  font-weight: 900;
  line-height: 1.6;
  color: #116BAF;
  position: relative;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 0.5rem;
}
@media screen and (min-width: 376px) {
  .content-title {
    font-size: clamp(20px, 1.75rem, 28px);
    gap: 8px;
  }
}
@media (min-width: 768px) {
  .content-title {
    font-size: 28px;
    gap: 1rem;
  }
}
.content-title::after {
  content: "";
  background: #116BAF;
  width: 1.875rem;
  height: 2px;
  border-radius: 6.25rem;
}
@media screen and (min-width: 376px) {
  .content-title::after {
    width: 30px;
    height: 2px;
  }
}
@media (min-width: 768px) {
  .content-title::after {
    width: 3.125rem;
    height: 4px;
  }
}

.content-footer-title {
  font-size: 1.5rem;
  font-weight: 900;
  line-height: 1.6;
  color: #116BAF;
  text-align: center;
}
@media screen and (min-width: 376px) {
  .content-footer-title {
    font-size: 24px;
  }
}
@media (min-width: 768px) {
  .content-footer-title {
    font-size: 36px;
  }
}

.page-text {
  font-size: 0.875rem;
  font-weight: 700;
  line-height: 1.6;
  letter-spacing: 0.05em;
  text-align: center;
  color: #111;
}
@media screen and (min-width: 376px) {
  .page-text {
    font-size: 14px;
  }
}
@media (min-width: 768px) {
  .page-text {
    font-size: clamp(16px, 1.125rem, 18px);
  }
}

.page-main {
  position: relative;
  z-index: 1;
  background: #D7EEFF;
}

.cta__tel-btn--pc {
  display: none;
}
@media (min-width: 768px) {
  .cta__tel-btn--pc {
    display: block;
  }
}
.cta__tel-btn--pc .cta-tel-btn {
  display: block;
  text-align: center;
}
.cta__tel-btn--pc .cta__tel-text-number {
  position: relative;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0.25rem;
  font-family: "Montserrat", sans-serif;
  font-weight: 700;
  letter-spacing: 0.04em;
}
@media screen and (min-width: 376px) {
  .cta__tel-btn--pc .cta__tel-text-number {
    gap: 4px;
    font-size: 1.25rem;
  }
}
@media (min-width: 768px) {
  .cta__tel-btn--pc .cta__tel-text-number {
    gap: 0.25rem;
    position: relative;
    font-size: clamp(24px, 1.875rem, 30px);
    color: #116BAF;
  }
}
.cta__tel-btn--pc .cta__tel-text-number::before {
  content: "";
  width: 2.03125rem;
  height: 2.03125rem;
  background: url(../img/svg/tel-icon-blue.svg) no-repeat center center/contain;
}
@media screen and (min-width: 376px) {
  .cta__tel-btn--pc .cta__tel-text-number::before {
    width: 32.5px;
    height: 32.5px;
  }
}
@media screen and (min-width: 951px) {
  .cta__tel-btn--pc .cta__tel-text-number::before {
    width: 36px;
    height: 36px;
  }
}
.cta__tel-btn--pc .cta__tel-text {
  display: block;
  font-size: clamp(14px, 1rem, 16px);
  font-weight: 700;
  line-height: 1.6;
  color: #116BAF;
}
.cta__tel-btn--pc .cta__tel-text-sub {
  font-weight: 500;
  color: #111;
  font-size: clamp(12px, 0.875rem, 14px);
  letter-spacing: 0.03em;
}

.cta__tel-btn--sp {
  display: block;
}
@media (min-width: 768px) {
  .cta__tel-btn--sp {
    display: none;
  }
}
.cta__tel-btn--sp .cta__tel-text {
  font-size: 1rem;
  text-align: center;
  font-weight: 700;
  line-height: 1.6;
  color: #116BAF;
  margin-bottom: 0.25rem;
}
@media screen and (min-width: 376px) {
  .cta__tel-btn--sp .cta__tel-text {
    font-size: 16px;
    margin-bottom: 4px;
  }
}
.cta__tel-btn--sp .cta-tel-btn {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  background: #116BAF;
  border: 2px solid #111;
  border-radius: 6.25rem;
  -webkit-box-shadow: 0 4px 0 rgba(0, 0, 0, 0.2);
          box-shadow: 0 4px 0 rgba(0, 0, 0, 0.2);
  padding-inline: 0.625rem 1rem;
  padding-block: 0.625rem;
  width: 17.5rem;
  height: 3.75rem;
  position: relative;
}
@media screen and (min-width: 376px) {
  .cta__tel-btn--sp .cta-tel-btn {
    width: 280px;
    height: 60px;
    padding-inline: 10px 16px;
    padding-block: 12px;
  }
}
.cta__tel-btn--sp .cta-tel-btn::before {
  content: "";
  width: 2.03125rem;
  height: 2.03125rem;
  background: url(../img/svg/tel-icon-white.svg) no-repeat center center/contain;
}
@media screen and (min-width: 376px) {
  .cta__tel-btn--sp .cta-tel-btn::before {
    width: 32.5px;
    height: 32.5px;
  }
}
.cta__tel-btn--sp .cta-tel-btn::after {
  content: "";
  background: url(../img/svg/arrow-right-white.svg) no-repeat center center/contain;
  width: 0.75rem;
  height: 0.9375rem;
}
@media screen and (min-width: 376px) {
  .cta__tel-btn--sp .cta-tel-btn::after {
    width: 12px;
    height: 15px;
  }
}
.cta__tel-btn--sp .cta__tel-text-number {
  font-size: 1.25rem;
  font-weight: 700;
  line-height: 1;
  letter-spacing: 0.04em;
  color: #FFF;
  font-family: "Montserrat", sans-serif;
  display: block;
  padding-left: 0.46875rem;
}
@media screen and (min-width: 376px) {
  .cta__tel-btn--sp .cta__tel-text-number {
    font-size: 20px;
    padding-left: 7.5px;
  }
}
.cta__tel-btn--sp .cta__tel-text-sub {
  font-weight: 500;
  line-height: 1.6;
  color: #FFF;
  letter-spacing: 0.03em;
  font-size: 0.625rem;
}
@media screen and (min-width: 376px) {
  .cta__tel-btn--sp .cta__tel-text-sub {
    font-size: 10px;
  }
}
.cta__tel-btn--sp .cta__tel-bottom-text {
  font-size: 0.75rem;
  font-weight: 500;
  line-height: 1.6;
  color: #111;
  text-align: center;
  margin-top: 1rem;
}
@media screen and (min-width: 376px) {
  .cta__tel-btn--sp .cta__tel-bottom-text {
    font-size: 12px;
    margin-top: 16px;
  }
}

.sidebar-cta-btn {
  display: block;
  font-size: 1rem;
  font-weight: 900;
  line-height: 1;
  color: #FFF;
  text-align: center;
  background: #F6A522;
  border: 2px solid #111;
  -webkit-box-shadow: 0 4px 0 rgba(0, 0, 0, 0.2);
          box-shadow: 0 4px 0 rgba(0, 0, 0, 0.2);
  border-radius: 6.25rem;
  padding-inline: 0.625rem 1rem;
  padding-block: 1.25rem;
  width: 17.5rem;
  width: 100%;
  height: 3.75rem;
  max-width: 100%;
  margin-inline: auto;
  position: relative;
  -webkit-transition: background 0.3s ease;
  transition: background 0.3s ease;
}
@media screen and (min-width: 376px) {
  .sidebar-cta-btn {
    width: 280px;
    height: 60px;
    font-size: clamp(16px, 1.25rem, 20px);
    padding-block: 16px;
    padding-inline: 10px 16px;
  }
}
@media (min-width: 768px) {
  .sidebar-cta-btn {
    width: 100%;
    height: 100%;
    padding-block: 1.5rem;
    font-size: clamp(16px, 1.25rem, 20px);
  }
}
.sidebar-cta-btn::after {
  content: "";
  position: absolute;
  top: 50%;
  translate: 0 -50%;
  right: 1rem;
  background: url(../img/svg/arrow-right-white.svg) no-repeat center center/contain;
  width: 0.9375rem;
  height: 1.25rem;
}
@media screen and (min-width: 376px) {
  .sidebar-cta-btn::after {
    width: 15px;
    height: 20px;
    right: 16px;
  }
}
@media (min-width: 768px) {
  .sidebar-cta-btn::after {
    width: 0.75rem;
    height: 1rem;
    right: 1.5rem;
  }
}
.sidebar-cta-btn::before {
  content: "";
  position: absolute;
  top: 50%;
  translate: 0 -50%;
  left: 0.625rem;
  background: url(../img/svg/mail-icon-orange.svg) no-repeat center center/contain;
  width: 2.03125rem;
  height: 2.03125rem;
  -webkit-transition: background 0.3s ease;
  transition: background 0.3s ease;
}
@media screen and (min-width: 376px) {
  .sidebar-cta-btn::before {
    width: 32.5px;
    height: 32.5px;
    left: 10px;
  }
}
@media (min-width: 768px) {
  .sidebar-cta-btn::before {
    display: none;
  }
}
@media (any-hover: hover) {
  .sidebar-cta-btn:hover {
    background: #111;
  }
  .sidebar-cta-btn:hover::before {
    background: url(../img/svg/mail-icon-black.svg) no-repeat center center/contain;
  }
}

.sidebar {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 1.5rem;
  padding-inline: 0.9375rem;
}
@media screen and (min-width: 376px) {
  .sidebar {
    gap: 24px;
    padding-inline: 15px;
  }
}
@media (min-width: 768px) {
  .sidebar {
    padding-inline: initial;
  }
}

.sidebar__title {
  font-size: 1.125rem;
  font-weight: 900;
  line-height: 1.6;
  color: #111;
  padding-left: 1rem;
  position: relative;
}
@media screen and (min-width: 376px) {
  .sidebar__title {
    font-size: 18px;
    padding-left: 16px;
  }
}
@media (min-width: 768px) {
  .sidebar__title {
    font-size: 20px;
  }
}
.sidebar__title::before {
  content: "";
  background: #2698D5;
  width: 4px;
  height: 100%;
  position: absolute;
  left: 0;
  top: 0;
  border-radius: 6.25rem;
}

.sidebar__cats,
.sidebar__columns {
  border-radius: 1.5rem;
  padding: 1.5rem 1rem;
  background: #FFF;
}
@media screen and (min-width: 376px) {
  .sidebar__cats,
  .sidebar__columns {
    border-radius: 24px;
  }
}
@media (min-width: 768px) {
  .sidebar__cats,
  .sidebar__columns {
    border-radius: 1.25rem;
    padding: 2.5rem 1.5rem;
  }
}

.sidebar__cats-items {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  gap: 0.5rem;
  margin-top: 1.5rem;
}
@media screen and (min-width: 376px) {
  .sidebar__cats-items {
    gap: 8px;
    margin-top: 24px;
  }
}

.sidebar__cats-item a {
  -webkit-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
  font-size: 0.875rem;
  font-weight: 700;
  line-height: 1.6;
  color: #111;
  padding: 0.375rem 1rem;
  border-radius: 6.25rem;
  background: #FDD557;
  color: #111;
  display: block;
}
@media screen and (min-width: 376px) {
  .sidebar__cats-item a {
    font-size: 14px;
    padding: 6px 16px;
    border-radius: 100px;
  }
}
@media (min-width: 768px) {
  .sidebar__cats-item a {
    font-size: clamp(14px, 1rem, 16px);
    padding: 0.5rem 1.5rem;
    border-radius: 6.25rem;
  }
}
.sidebar__cats-item a.selected {
  background: #111;
  color: #FFF;
}
@media (any-hover: hover) {
  .sidebar__cats-item a:hover {
    opacity: 0.6;
  }
}

.sidebar__columns-items {
  margin-top: 1.5rem;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 1rem;
}
@media screen and (min-width: 376px) {
  .sidebar__columns-items {
    margin-top: 24px;
    gap: 16px;
  }
}
@media (min-width: 768px) {
  .sidebar__columns-items {
    margin-top: 34px;
    gap: 1.625rem;
  }
}

.sidebar__columns-item:nth-child(1) a::before {
  background: url(../img/webp/rank-no01.webp) no-repeat center center/contain;
}
.sidebar__columns-item:nth-child(2) a::before {
  background: url(../img/webp/rank-no02.webp) no-repeat center center/contain;
}
.sidebar__columns-item:nth-child(3) a::before {
  background: url(../img/webp/rank-no03.webp) no-repeat center center/contain;
}
.sidebar__columns-item a {
  position: relative;
  -webkit-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
  background: #F0F0F0;
  border-radius: 1rem;
  padding: 1rem;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 0.5rem;
}
@media screen and (min-width: 376px) {
  .sidebar__columns-item a {
    padding: 16px;
    border-radius: 16px;
    gap: 8px;
  }
}
@media (min-width: 768px) {
  .sidebar__columns-item a {
    padding: 1rem 1rem 1rem 1.5rem;
    border-radius: 20px;
  }
}
.sidebar__columns-item a .date {
  color: #888888;
  font-size: 0.875rem;
  font-weight: 500;
  line-height: 1.6;
  font-family: "Montserrat", sans-serif;
}
@media screen and (min-width: 376px) {
  .sidebar__columns-item a .date {
    font-size: 14px;
  }
}
.sidebar__columns-item a::before {
  content: "";
  position: absolute;
  top: -0.625rem;
  left: -0.625rem;
  width: 1.625rem;
  height: 1.625rem;
}
@media screen and (min-width: 376px) {
  .sidebar__columns-item a::before {
    width: 26px;
    height: 26px;
    top: -10px;
    left: -10px;
  }
}
@media (min-width: 768px) {
  .sidebar__columns-item a::before {
    width: clamp(26px, 2rem, 32px);
    height: clamp(26px, 2rem, 32px);
    top: -10px;
    left: -10px;
  }
}
@media (any-hover: hover) {
  .sidebar__columns-item a:hover {
    opacity: 0.6;
  }
}

.sidebar__columns-text {
  font-size: 0.875rem;
  font-weight: 500;
  line-height: 1.6;
  color: #111;
}
@media screen and (min-width: 376px) {
  .sidebar__columns-text {
    font-size: 14px;
  }
}

.sidebar__logo {
  display: block;
  width: 10rem;
  height: auto;
  margin-inline: auto;
  -webkit-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
}
@media screen and (min-width: 376px) {
  .sidebar__logo {
    width: 160px;
  }
}
@media (min-width: 768px) {
  .sidebar__logo {
    width: 12.5rem;
  }
}
.sidebar__logo img {
  width: 100%;
  height: auto;
}
@media (any-hover: hover) {
  .sidebar__logo:hover {
    opacity: 0.6;
  }
}

.sidebar__cta-text {
  font-size: 0.875rem;
  font-weight: 700;
  line-height: 1.6;
  color: #111;
  text-align: center;
  padding-inline: 0.3125rem;
  margin-top: 1rem;
}
@media screen and (min-width: 376px) {
  .sidebar__cta-text {
    font-size: 14px;
    padding-inline: 5px;
    margin-top: 16px;
  }
}
@media (min-width: 768px) {
  .sidebar__cta-text {
    font-size: clamp(14px, 1.25rem, 18px);
    padding-inline: 5px;
  }
}
.sidebar__cta-text span {
  color: #F1761E;
}

.sidebar__cta {
  top: 1.25rem;
  border-radius: 1.25rem;
  padding: 1.5rem 2rem 2rem;
  background: #FFF;
}
@media screen and (min-width: 376px) {
  .sidebar__cta {
    padding: 24px 32px 32px;
    border-radius: 20px;
  }
}
@media (min-width: 768px) {
  .sidebar__cta {
    padding: 2.5rem 1.84375rem;
    border-radius: 1.25rem;
  }
}
@media screen and (min-width: 951px) {
  .sidebar__cta {
    position: -webkit-sticky;
    position: sticky;
    top: 1.25rem;
  }
}
.sidebar__cta .cta__wrap {
  -webkit-box-orient: vertical;
  -webkit-box-direction: reverse;
  -webkit-flex-direction: column-reverse;
      -ms-flex-direction: column-reverse;
          flex-direction: column-reverse;
  gap: 1rem;
  margin-top: 1.5rem;
}
@media screen and (min-width: 376px) {
  .sidebar__cta .cta__wrap {
    gap: 16px;
    margin-top: 24px;
  }
}
.sidebar__cta .cta__btn {
  width: 100%;
}
.sidebar__cta .cta__tel-btn--pc .cta__tel-text {
  font-size: 1.125rem;
}
.sidebar__cta .cta__tel-btn--pc .cta__tel-text-number {
  font-size: clamp(20px, 1.75rem, 28px);
  white-space: nowrap;
}
@media (min-width: 768px) {
  .sidebar__cta .cta__tel-btn--pc .cta__tel-text-number::before {
    width: clamp(20px, 2.03125rem, 32.5px);
    height: clamp(20px, 2.03125rem, 32.5px);
  }
}

.column {
  margin-top: 1.875rem;
}
@media screen and (min-width: 376px) {
  .column {
    margin-top: 30px;
  }
}
@media (min-width: 768px) {
  .column {
    padding-inline: 1.5625rem;
    margin-top: 4rem;
  }
}

.column-wrap {
  width: 100%;
  max-width: 100%;
  margin-inline: auto;
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr;
  grid-template-columns: 1fr;
  gap: 4rem;
}
@media screen and (min-width: 376px) {
  .column-wrap {
    gap: 64px;
    width: clamp(375px, 31.25rem, 500px);
  }
}
@media (min-width: 768px) {
  .column-wrap {
    gap: 1.875rem;
    width: 100%;
    max-width: 75rem;
    -ms-grid-columns: minmax(0, 1fr) 21.875rem;
    grid-template-columns: minmax(0, 1fr) 21.875rem;
  }
}

.column-single__body {
  background: #FFF;
}
@media screen and (min-width: 501px) and (max-width: 767px) {
  .column-single__body {
    border-radius: 16px;
  }
}
@media (min-width: 768px) {
  .column-single__body {
    border-radius: 1.25rem;
  }
}
.column-single__body .inner {
  padding-inline: 0.9375rem;
  padding-block: 4rem 5rem;
}
@media screen and (min-width: 376px) {
  .column-single__body .inner {
    padding-block: 64px 80px;
  }
}
@media (min-width: 768px) {
  .column-single__body .inner {
    padding: 40px;
  }
}
.column-single__body .related-item-img {
  height: 75px;
}
@media (min-width: 768px) {
  .column-single__body .related-item-img {
    width: clamp(180px, 12.5rem, 200px);
    height: clamp(113px, 8.3125rem, 133px);
  }
}
.column-single__body .single-post-nav-content .single-post-nav.--pc {
  display: none;
}
@media screen and (min-width: 1200px) {
  .column-single__body .single-post-nav-content .single-post-nav.--pc {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
  }
}
.column-single__body .single-post-nav-content .single-post-nav.--sp {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
}
@media screen and (min-width: 1200px) {
  .column-single__body .single-post-nav-content .single-post-nav.--sp {
    display: none;
  }
}
.column-single__body .nav-thumb {
  width: 140px;
  height: 93px;
  border-radius: 20px;
  overflow: hidden;
}
.column-single__body .nav-thumb img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.column-single__body .related-box {
  margin-block: 2.8125rem 2rem !important;
}
@media screen and (min-width: 376px) {
  .column-single__body .related-box {
    margin-block: 45px 32px !important;
  }
}
@media (min-width: 768px) {
  .column-single__body .related-box {
    margin-block: 3.4375rem 2.5rem !important;
  }
}
@media (min-width: 768px) {
  .column-single__body .related-box .related-item-meta .date {
    font-size: clamp(14px, 1rem, 16px);
  }
}
@media (min-width: 768px) {
  .column-single__body .related-box .related-item-meta .cta-tag {
    font-size: clamp(14px, 1rem, 16px);
  }
}

.single-post-nav-content.--column .single-post-nav.is-next-only {
  -webkit-box-pack: end;
  -webkit-justify-content: flex-end;
      -ms-flex-pack: end;
          justify-content: flex-end;
}
.single-post-nav-content.--column .single-post-nav.--pc .next {
  gap: 0.5rem;
}
@media screen and (min-width: 376px) {
  .single-post-nav-content.--column .single-post-nav.--pc .next {
    gap: 8px;
  }
}
.single-post-nav-content.--column .single-post-nav.--pc .prev {
  gap: 0.5rem;
}
@media screen and (min-width: 376px) {
  .single-post-nav-content.--column .single-post-nav.--pc .prev {
    gap: 8px;
  }
}
.single-post-nav-content.--column .single-post-nav.--pc .wrap {
  width: 140px;
  max-width: 100%;
}

.next .nav-column-wrap {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
  -webkit-flex-direction: row-reverse;
      -ms-flex-direction: row-reverse;
          flex-direction: row-reverse;
  gap: 1rem;
}

.nav-column-wrap {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 1rem;
}

.column-single__head {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 1rem;
}
@media screen and (min-width: 376px) {
  .column-single__head {
    gap: 16px;
  }
}
@media (min-width: 768px) {
  .column-single__head {
    gap: 1rem;
  }
}
.column-single__head .single-post-title {
  margin-top: initial;
}

.column-single__meta {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0.5rem;
}
@media screen and (min-width: 376px) {
  .column-single__meta {
    gap: 8px;
  }
}
@media (min-width: 768px) {
  .column-single__meta {
    gap: 0.5rem;
  }
}
.column-single__meta .date {
  margin-right: 0.5rem;
}
@media screen and (min-width: 376px) {
  .column-single__meta .date {
    margin-right: 8px;
  }
}
@media (min-width: 768px) {
  .column-single__meta .date {
    margin-right: 0.5rem;
  }
}

.single-post-eyecatch {
  margin-top: 1.5rem;
  border-radius: 1rem;
  overflow: hidden;
}
@media screen and (min-width: 376px) {
  .single-post-eyecatch {
    margin-top: 24px;
    border-radius: 16px;
  }
}
@media (min-width: 768px) {
  .single-post-eyecatch {
    margin-top: 1.5rem;
    border-radius: 1.25rem;
  }
}
.single-post-eyecatch img {
  width: 100%;
  height: auto;
  -o-object-fit: cover;
     object-fit: cover;
}

.single-contents.--column {
  padding-block: 2rem 5rem;
}
@media screen and (min-width: 376px) {
  .single-contents.--column {
    padding-block: 32px 80px;
  }
}
@media (min-width: 768px) {
  .single-contents.--column {
    padding-block: 2.5rem 6.25rem;
  }
}

.single-main {
  background: #D7EEFF;
}

.single-contents {
  padding-block: 2rem 0;
}
@media screen and (min-width: 376px) {
  .single-contents {
    padding-block: 32px 0;
  }
}
@media (min-width: 768px) {
  .single-contents {
    padding-block: 2.5rem 6.25rem;
  }
}
.single-contents .page-news__items {
  margin-top: 2rem;
}
@media screen and (min-width: 376px) {
  .single-contents .page-news__items {
    margin-top: 32px;
  }
}
@media (min-width: 768px) {
  .single-contents .page-news__items {
    margin-top: 3rem;
  }
}

.single-contents__editor {
  font-size: 0.875rem;
}
@media screen and (min-width: 376px) {
  .single-contents__editor {
    font-size: 14px;
  }
}
@media (min-width: 768px) {
  .single-contents__editor {
    font-size: 16px;
  }
}
.single-contents__editor > *,
.single-contents__editor .wp-block-post-content > * {
  margin-block: 1rem;
}
@media screen and (min-width: 376px) {
  .single-contents__editor > *,
  .single-contents__editor .wp-block-post-content > * {
    margin-block: 16px;
  }
}
@media (min-width: 768px) {
  .single-contents__editor > *,
  .single-contents__editor .wp-block-post-content > * {
    margin-block: 24px;
  }
}
.single-contents__editor h2 {
  font-size: 1.375rem;
  font-weight: 900;
  line-height: 1.6;
  color: #111;
  margin-top: 2rem;
  padding-bottom: 0.5rem;
  position: relative;
}
@media screen and (min-width: 376px) {
  .single-contents__editor h2 {
    font-size: 22px;
    margin-top: 32px;
    padding-bottom: 8px;
  }
}
@media (min-width: 768px) {
  .single-contents__editor h2 {
    font-size: 30px;
    margin-top: 2.5rem;
    padding-bottom: 0.875rem;
  }
}
.single-contents__editor h2::after {
  content: "";
  width: 100%;
  height: 3px;
  background: #2698d5;
  position: absolute;
  bottom: 0;
  left: 0;
}
.single-contents__editor h3 {
  font-size: 1.25rem;
  font-weight: 900;
  line-height: 1.6;
  color: #111;
  margin-top: 2rem;
  padding-block: 0.5rem;
  background: #d7eeff;
  padding-left: 1rem;
  border-radius: 0.25rem;
  position: relative;
}
@media screen and (min-width: 376px) {
  .single-contents__editor h3 {
    font-size: 20px;
    margin-top: 32px;
    padding-block: 8px;
    padding-left: 16px;
  }
}
@media (min-width: 768px) {
  .single-contents__editor h3 {
    font-size: 28px;
    margin-top: 2.5rem;
    padding-block: 0.5rem;
    padding-left: 1rem;
  }
}
.single-contents__editor h3::after {
  content: "";
  width: 3px;
  height: 2.25rem;
  background: #116baf;
  position: absolute;
  top: 50%;
  translate: 0 -50%;
  left: 0;
  border-radius: 6.25rem;
}
@media screen and (min-width: 376px) {
  .single-contents__editor h3::after {
    width: 3px;
    height: 36px;
  }
}
@media (min-width: 768px) {
  .single-contents__editor h3::after {
    width: 4px;
    height: 42px;
  }
}
.single-contents__editor h4 {
  font-size: 1.125rem;
  font-weight: 900;
  line-height: 1.6;
  color: #111;
  margin-top: 2rem;
  padding-block: 0.375rem;
  background: #f0f0f0;
  border-radius: 0.25rem;
  padding-left: 0.5rem;
}
@media screen and (min-width: 376px) {
  .single-contents__editor h4 {
    font-size: 18px;
    margin-top: 32px;
    padding-block: 6px;
    padding-left: 8px;
  }
}
@media (min-width: 768px) {
  .single-contents__editor h4 {
    font-size: 24px;
    margin-top: 2.5rem;
    padding-block: 0.5rem;
    padding-left: 1rem;
  }
}
.single-contents__editor h5 {
  font-size: 1rem;
  font-weight: 900;
  line-height: 1.6;
  color: #111;
  margin-top: 2rem !important;
  margin-bottom: 0 !important;
  padding-left: 0.75rem;
  position: relative;
}
@media screen and (min-width: 376px) {
  .single-contents__editor h5 {
    font-size: 16px;
    margin-top: 32px !important;
    padding-left: 12px;
  }
}
@media (min-width: 768px) {
  .single-contents__editor h5 {
    font-size: 20px;
    margin-top: 2.5rem !important;
    padding-left: 0.75rem;
  }
}
.single-contents__editor h5::after {
  content: "";
  width: 3px;
  height: 1.625rem;
  background: #2698d5;
  position: absolute;
  top: 50%;
  translate: 0 -50%;
  left: 0;
  border-radius: 6.25rem;
}
@media screen and (min-width: 376px) {
  .single-contents__editor h5::after {
    width: 3px;
    height: 26px;
  }
}
.single-contents__editor h6 {
  font-size: 1rem;
  font-weight: 900;
  line-height: 1.6;
  color: #111;
  margin-top: 2rem !important;
  margin-bottom: 0 !important;
}
@media screen and (min-width: 376px) {
  .single-contents__editor h6 {
    font-size: 16px;
    margin-top: 32px !important;
  }
}
@media (min-width: 768px) {
  .single-contents__editor h6 {
    font-size: 18px;
    margin-top: 2.5rem !important;
  }
}
.single-contents__editor > p,
.single-contents__editor .wp-block-post-content > p,
.single-contents__editor .wp-block-paragraph {
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.6;
  margin-top: 1rem;
}
@media screen and (min-width: 376px) {
  .single-contents__editor > p,
  .single-contents__editor .wp-block-post-content > p,
  .single-contents__editor .wp-block-paragraph {
    font-size: 14px;
    margin-top: 16px;
  }
}
@media (min-width: 768px) {
  .single-contents__editor > p,
  .single-contents__editor .wp-block-post-content > p,
  .single-contents__editor .wp-block-paragraph {
    font-size: 16px;
    margin-top: 24px;
  }
}
.single-contents__editor > p a,
.single-contents__editor .wp-block-post-content > p a,
.single-contents__editor .wp-block-paragraph a {
  color: #2698d5;
  letter-spacing: 0.05em;
  text-decoration: underline;
  -webkit-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
}
@media (any-hover: hover) {
  .single-contents__editor > p a:hover,
  .single-contents__editor .wp-block-post-content > p a:hover,
  .single-contents__editor .wp-block-paragraph a:hover {
    text-decoration: none;
    opacity: 0.6;
  }
}
.single-contents__editor > ul.wp-block-list,
.single-contents__editor > ol.wp-block-list {
  margin-top: 2rem;
}
@media screen and (min-width: 376px) {
  .single-contents__editor > ul.wp-block-list,
  .single-contents__editor > ol.wp-block-list {
    margin-top: 32px;
  }
}
@media (min-width: 768px) {
  .single-contents__editor > ul.wp-block-list,
  .single-contents__editor > ol.wp-block-list {
    margin-top: 40px;
  }
}
.single-contents__editor ul.wp-block-list {
  list-style: none !important;
  list-style-type: none !important;
}
.single-contents__editor ul.wp-block-list > li {
  position: relative;
  padding-left: 0.875rem;
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.8;
  margin-top: 0.5rem;
}
@media screen and (min-width: 376px) {
  .single-contents__editor ul.wp-block-list > li {
    padding-left: 14px;
    font-size: 14px;
    margin-top: 8px;
  }
}
@media (min-width: 768px) {
  .single-contents__editor ul.wp-block-list > li {
    padding-left: 0.875rem;
    font-size: 16px;
  }
}
.single-contents__editor ul.wp-block-list > li::before {
  content: "";
  display: block;
  width: 0.375rem;
  height: 0.375rem;
  background: #116baf;
  position: absolute;
  top: 0.5lh;
  translate: 0 -50%;
  left: 0;
  border-radius: 100vmax;
}
@media screen and (min-width: 376px) {
  .single-contents__editor ul.wp-block-list > li::before {
    width: 6px;
    height: 6px;
  }
}
.single-contents__editor ol.wp-block-list {
  list-style-type: decimal;
  padding-left: 1em;
}
@media screen and (min-width: 376px) {
  .single-contents__editor ol.wp-block-list {
    padding-left: 1.5em;
  }
}
@media (min-width: 768px) {
  .single-contents__editor ol.wp-block-list {
    padding-left: 1.5em;
  }
}
.single-contents__editor ol.wp-block-list > li {
  position: relative;
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.8;
  margin-top: 0.5rem;
}
@media screen and (min-width: 376px) {
  .single-contents__editor ol.wp-block-list > li {
    font-size: 14px;
    margin-top: 8px;
  }
}
@media (min-width: 768px) {
  .single-contents__editor ol.wp-block-list > li {
    font-size: 16px;
  }
}
.single-contents__editor ol.wp-block-list > li::marker {
  color: #116baf;
  font-size: 0.875rem;
  font-weight: 700;
  line-height: 1.6;
  font-family: "Montserrat", sans-serif;
}
@media screen and (min-width: 376px) {
  .single-contents__editor ol.wp-block-list > li::marker {
    font-size: 14px;
  }
}
@media (min-width: 768px) {
  .single-contents__editor ol.wp-block-list > li::marker {
    font-size: 18px;
  }
}
.single-contents__editor ol.wp-block-list[type=a] {
  list-style-type: lower-alpha;
}
.single-contents__editor blockquote {
  background: #f0f0f0;
  padding: 1.5rem 1rem;
  border-radius: 0.625rem;
  margin-block: 2rem;
}
@media screen and (min-width: 376px) {
  .single-contents__editor blockquote {
    padding: 24px 16px;
    border-radius: 10px;
    margin-block: 32px;
  }
}
@media (min-width: 768px) {
  .single-contents__editor blockquote {
    padding: 2rem;
    border-radius: 0.625rem;
    margin-block: 2.5rem;
  }
}
.single-contents__editor blockquote p {
  margin-top: 0 !important;
  font-size: 0.875rem;
}
@media screen and (min-width: 376px) {
  .single-contents__editor blockquote p {
    font-size: 14px;
  }
}
@media (min-width: 768px) {
  .single-contents__editor blockquote p {
    font-size: 16px;
  }
}
.single-contents__editor blockquote cite {
  font-weight: 500;
  font-size: 0.875rem;
  line-height: 1.6;
  display: block;
  margin-top: 1rem;
  font-style: normal;
}
@media screen and (min-width: 376px) {
  .single-contents__editor blockquote cite {
    margin-top: 16px;
    font-size: 14px;
  }
}
@media (min-width: 768px) {
  .single-contents__editor blockquote cite {
    font-size: 16px;
  }
}
.single-contents__editor figcaption {
  font-size: 0.8em;
  text-align: center;
}
.single-contents__editor {
  /* ======================================
  WordPress テーブル共通スタイル
  ====================================== */
}
.single-contents__editor .wp-block-table {
  width: 100%;
  overflow-x: auto;
  margin-block: 2rem;
}
@media screen and (min-width: 376px) {
  .single-contents__editor .wp-block-table {
    margin-block: 32px;
  }
}
@media (min-width: 768px) {
  .single-contents__editor .wp-block-table {
    margin-block: 2.5rem;
  }
}
.single-contents__editor .wp-block-table table {
  width: 100%;
  border-collapse: collapse;
  border: 1px solid #cccccc;
  background: #fff;
}
.single-contents__editor .wp-block-table {
  /* ヘッダー */
}
.single-contents__editor .wp-block-table thead {
  border-bottom: none;
}
.single-contents__editor .wp-block-table tfoot {
  border-top: none;
}
.single-contents__editor .wp-block-table thead th, .single-contents__editor .wp-block-table thead td,
.single-contents__editor .wp-block-table tfoot th,
.single-contents__editor .wp-block-table tfoot td {
  background: #d7eeff;
  color: #111;
  font-weight: 500;
  padding: 1.125rem 0.625rem;
  border: 1px solid #cccccc;
  font-size: 0.875rem;
  line-height: 1.6;
}
@media screen and (min-width: 376px) {
  .single-contents__editor .wp-block-table thead th, .single-contents__editor .wp-block-table thead td,
  .single-contents__editor .wp-block-table tfoot th,
  .single-contents__editor .wp-block-table tfoot td {
    font-size: 14px;
    padding: 16px 8px;
  }
}
@media (min-width: 768px) {
  .single-contents__editor .wp-block-table thead th, .single-contents__editor .wp-block-table thead td,
  .single-contents__editor .wp-block-table tfoot th,
  .single-contents__editor .wp-block-table tfoot td {
    font-size: 16px;
    padding: 1rem;
  }
}
.single-contents__editor {
  /* ボディセル */
}
.single-contents__editor .wp-block-table tbody td {
  padding: 1.125rem 0.625rem;
  border: 1px solid #cccccc;
  font-size: 0.875rem;
  color: #111;
  line-height: 1.6;
  font-weight: 400;
}
@media screen and (min-width: 376px) {
  .single-contents__editor .wp-block-table tbody td {
    font-size: 14px;
    padding: 16px 8px;
  }
}
@media (min-width: 768px) {
  .single-contents__editor .wp-block-table tbody td {
    font-size: 16px;
    padding: 1rem;
  }
}
.single-contents__editor .wp-block-button a {
  text-decoration: none;
}
.single-contents__editor .wp-block-button.is-style-custom-1 .wp-block-button__link, .single-contents__editor .wp-block-button.is-style-custom-2 .wp-block-button__link {
  min-height: 3.125rem;
  max-width: 100%;
  margin-inline: auto;
  display: block;
  padding: 0.9375rem 4em;
  border-radius: 6.25rem;
  text-align: center;
  font-size: 0.875rem;
  line-height: 1;
  font-weight: 900;
  -webkit-box-shadow: 0 4px 0 rgba(0, 0, 0, 0.2);
          box-shadow: 0 4px 0 rgba(0, 0, 0, 0.2);
  position: relative;
  -webkit-transition: background 0.3s ease;
  transition: background 0.3s ease;
}
@media screen and (min-width: 376px) {
  .single-contents__editor .wp-block-button.is-style-custom-1 .wp-block-button__link, .single-contents__editor .wp-block-button.is-style-custom-2 .wp-block-button__link {
    font-size: 14px;
    padding: 15px 4em;
    min-height: 50px;
  }
}
@media (min-width: 768px) {
  .single-contents__editor .wp-block-button.is-style-custom-1 .wp-block-button__link, .single-contents__editor .wp-block-button.is-style-custom-2 .wp-block-button__link {
    font-size: 16px;
  }
}
.single-contents__editor .wp-block-button.is-style-custom-1 .wp-block-button__link::after, .single-contents__editor .wp-block-button.is-style-custom-2 .wp-block-button__link::after {
  content: "";
  width: 1.25rem;
  height: 1.25rem;
  position: absolute;
  top: 50%;
  translate: 0 -50%;
  right: 1rem;
}
@media screen and (min-width: 376px) {
  .single-contents__editor .wp-block-button.is-style-custom-1 .wp-block-button__link::after, .single-contents__editor .wp-block-button.is-style-custom-2 .wp-block-button__link::after {
    width: 20px;
    height: 20px;
    right: 16px;
  }
}
@media (min-width: 768px) {
  .single-contents__editor .wp-block-button.is-style-custom-1 .wp-block-button__link::after, .single-contents__editor .wp-block-button.is-style-custom-2 .wp-block-button__link::after {
    width: 24px;
    height: 24px;
  }
}
.single-contents__editor .wp-block-button.is-style-custom-1 .wp-block-button__link {
  background: #2698d5;
  border: 0.125rem solid #111;
  color: #FFF;
}
@media screen and (min-width: 376px) {
  .single-contents__editor .wp-block-button.is-style-custom-1 .wp-block-button__link {
    border: 2px solid #111;
  }
}
.single-contents__editor .wp-block-button.is-style-custom-1 .wp-block-button__link::after {
  background: url(../img/svg/arrow-circle-right-blue.svg) no-repeat center center/contain;
}
@media (any-hover: hover) {
  .single-contents__editor .wp-block-button.is-style-custom-1 .wp-block-button__link:hover {
    background: #111;
  }
  .single-contents__editor .wp-block-button.is-style-custom-1 .wp-block-button__link:hover::after {
    background: url(../img/svg/arrow-circle-right-black-bg-white.svg) no-repeat center center/contain;
  }
}
.single-contents__editor .wp-block-button.is-style-custom-2 .wp-block-button__link {
  background: #111;
  border: 0.125rem solid #111;
  color: #FFF;
}
@media screen and (min-width: 376px) {
  .single-contents__editor .wp-block-button.is-style-custom-2 .wp-block-button__link {
    border: 2px solid #111;
  }
}
.single-contents__editor .wp-block-button.is-style-custom-2 .wp-block-button__link::after {
  background: url(../img/svg/arrow-circle-right-black-bg-white.svg) no-repeat center center/contain;
}
@media (any-hover: hover) {
  .single-contents__editor .wp-block-button.is-style-custom-2 .wp-block-button__link:hover {
    background: #FFF;
    color: #111;
  }
  .single-contents__editor .wp-block-button.is-style-custom-2 .wp-block-button__link:hover::after {
    background: url(../img/svg/arrow-circle-right-bg-black.svg) no-repeat center center/contain;
  }
}
.single-contents__editor {
  /* ======================================
  テーブル：カスタムスタイル1
  ====================================== */
}
.single-contents__editor .wp-block-table.is-style-custom-1,
.single-contents__editor .wp-block-table.is-style-custom-2 {
  width: 100%;
  overflow-x: auto;
}
.single-contents__editor .wp-block-table.is-style-custom-1 table,
.single-contents__editor .wp-block-table.is-style-custom-2 table {
  width: 100%;
  border-collapse: collapse;
  border: 1px solid #cccccc;
  background: #FFF;
}
.single-contents__editor .wp-block-table.is-style-custom-1 td,
.single-contents__editor .wp-block-table.is-style-custom-2 td {
  padding: 1.125rem 0.625rem;
  font-size: 0.875rem;
  line-height: 1.6;
  border: 1px solid #cccccc;
  color: #111;
  font-weight: 400;
}
@media screen and (min-width: 376px) {
  .single-contents__editor .wp-block-table.is-style-custom-1 td,
  .single-contents__editor .wp-block-table.is-style-custom-2 td {
    font-size: 14px;
    padding: 16px 8px;
  }
}
@media (min-width: 768px) {
  .single-contents__editor .wp-block-table.is-style-custom-1 td,
  .single-contents__editor .wp-block-table.is-style-custom-2 td {
    font-size: 16px;
    padding: 1rem;
  }
}
.single-contents__editor .wp-block-table.is-style-custom-1 tbody td:first-child,
.single-contents__editor .wp-block-table.is-style-custom-2 tbody td:first-child {
  background: #d7eeff;
  font-weight: 500;
}
.single-contents__editor .wp-block-table.is-style-custom-2 tbody td:first-child {
  background: #f0f0f0;
}
.single-contents__editor .has-small-font-size {
  font-size: 0.8em !important;
}
.single-contents__editor .has-medium-font-size {
  font-size: 1em !important;
}
.single-contents__editor .has-large-font-size {
  font-size: 1.25em !important;
}
.single-contents__editor .has-x-large-font-size {
  font-size: 1.5em !important;
}
.single-contents__editor {
  /* カラーパレット */
}
.single-contents__editor .has-custom-color-1-color {
  color: #fff;
}
.single-contents__editor .has-custom-color-2-color {
  color: #116BAF;
}
.single-contents__editor .has-custom-color-3-color {
  color: #2698D5;
}
.single-contents__editor .has-custom-color-4-color {
  color: #e8f3fc;
}
.single-contents__editor .has-custom-color-5-color {
  color: #F1761E;
}
.single-contents__editor .has-custom-color-6-color {
  color: #F6A522;
}
.single-contents__editor .has-custom-color-7-color {
  color: #FDD557;
}
.single-contents__editor .has-custom-color-1-background-color {
  color: #fff;
}
.single-contents__editor .has-custom-color-2-background-color {
  background-color: #116BAF;
}
.single-contents__editor .has-custom-color-3-background-color {
  background-color: #2698D5;
}
.single-contents__editor .has-custom-color-4-background-color {
  background-color: #e8f3fc;
}
.single-contents__editor .has-custom-color-5-background-color {
  background-color: #F1761E;
}
.single-contents__editor .has-custom-color-6-background-color {
  background-color: #F6A522;
}
.single-contents__editor .has-custom-color-7-background-color {
  background-color: #FDD557;
}
.single-contents__editor .single-entry-header .date,
.single-contents__editor .single-entry-footer .date {
  margin-top: 0;
  font-size: 0.875rem;
  font-family: "Montserrat", sans-serif;
  font-weight: 500;
  line-height: 1.6;
  color: #888888;
  display: block;
}
@media screen and (min-width: 376px) {
  .single-contents__editor .single-entry-header .date,
  .single-contents__editor .single-entry-footer .date {
    font-size: 14px;
  }
}
@media (min-width: 768px) {
  .single-contents__editor .single-entry-header .date,
  .single-contents__editor .single-entry-footer .date {
    font-size: 16px;
  }
}
.single-contents__editor .single-entry-footer {
  margin-top: 5rem;
}
@media screen and (min-width: 376px) {
  .single-contents__editor .single-entry-footer {
    margin-top: 80px;
  }
}

.single-work-contents .single-work-post-title {
  font-size: 1.125rem;
  font-weight: 700;
  line-height: 1.6;
  color: #222;
}
@media screen and (min-width: 376px) {
  .single-work-contents .single-work-post-title {
    font-size: clamp(18px, 1.125rem, 24px);
  }
}
@media (min-width: 768px) {
  .single-work-contents .single-work-post-title {
    font-size: 2.25rem;
    font-size: clamp(30px, 2.25rem, 36px);
  }
}
.single-work-contents .work-connection-content .page-work__item {
  -webkit-box-shadow: none;
          box-shadow: none;
}
.single-work-contents .work-connection-content .page-work__item-thumbs {
  width: 28.125rem;
  height: -webkit-fit-content;
  height: -moz-fit-content;
  height: fit-content;
  -webkit-box-align: start;
  -webkit-align-items: flex-start;
      -ms-flex-align: start;
          align-items: flex-start;
  position: relative;
}
.single-work-contents .sns-list {
  margin-top: 4rem;
}
@media screen and (min-width: 376px) {
  .single-work-contents .sns-list {
    margin-top: 64px;
  }
}
@media (min-width: 768px) {
  .single-work-contents .sns-list {
    margin-top: 5rem;
  }
}
.single-work-contents .name a,
.single-work-contents .name span {
  background: #F0F0F0;
  font-size: 0.875rem;
  font-weight: 700;
  line-height: 1.6;
  color: #116BAF;
  padding: 0.25rem 1rem;
  border-radius: 6.25rem;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
}
@media screen and (min-width: 376px) {
  .single-work-contents .name a,
  .single-work-contents .name span {
    font-size: clamp(14px, 0.875rem, 16px);
    padding: 4px 16px;
  }
}
@media (min-width: 768px) {
  .single-work-contents .name a,
  .single-work-contents .name span {
    font-size: clamp(16px, 1.125rem, 18px);
    padding: 0.25rem 1rem;
  }
}
@media (any-hover: hover) {
  .single-work-contents:is(a):hover {
    opacity: 0.6;
  }
}

.single-post-title {
  font-size: 1.5rem;
  font-weight: 900;
  line-height: 1.6;
  color: #116BAF;
  margin-top: 0.5rem;
}
@media screen and (min-width: 376px) {
  .single-post-title {
    font-size: 24px;
    margin-top: 8px;
  }
}
@media (min-width: 768px) {
  .single-post-title {
    font-size: 32px;
    margin-top: 8px;
  }
}

.single-contents__body {
  width: 100%;
  max-width: 100%;
  margin-inline: auto;
  background: #FFF;
  margin-top: 2rem;
}
@media screen and (min-width: 376px) {
  .single-contents__body {
    width: clamp(375px, 31.25rem, 500px);
    margin-top: 32px;
  }
}
@media screen and (min-width: 501px) and (max-width: 767px) {
  .single-contents__body {
    border-radius: 16px;
  }
}
@media (min-width: 768px) {
  .single-contents__body {
    width: 75rem;
    margin-top: 4rem;
  }
}
@media screen and (min-width: 1200px) {
  .single-contents__body {
    border-radius: 1.25rem;
  }
}
.single-contents__body .inner {
  padding-block: 4rem 0;
}
@media screen and (min-width: 376px) {
  .single-contents__body .inner {
    padding-block: 64px 0;
  }
}
@media (min-width: 768px) {
  .single-contents__body .inner {
    padding: 4rem;
  }
}

.single-contents_tags {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 1rem;
}
@media screen and (min-width: 376px) {
  .single-contents_tags {
    gap: 16px;
  }
}
@media (min-width: 768px) {
  .single-contents_tags {
    gap: 1.5rem;
  }
}

.single-post-nav-content {
  border-top: 1px solid #CCCCCC;
  padding-top: 1.5625rem;
  margin-top: 5rem;
}
@media screen and (min-width: 376px) {
  .single-post-nav-content {
    padding-top: 25px;
    margin-top: 80px;
  }
}
@media (min-width: 768px) {
  .single-post-nav-content {
    padding-top: 2rem;
  }
}
.single-post-nav-content .single-post-nav.is-next-only {
  -webkit-box-pack: end !important;
  -webkit-justify-content: flex-end !important;
      -ms-flex-pack: end !important;
          justify-content: flex-end !important;
}
.single-post-nav-content .single-post-nav.--pc {
  display: none;
}
@media (min-width: 768px) {
  .single-post-nav-content .single-post-nav.--pc {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
  }
  .single-post-nav-content .single-post-nav.--pc .wrap {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: start;
    -webkit-align-items: flex-start;
        -ms-flex-align: start;
            align-items: flex-start;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: 0.375rem;
  }
  .single-post-nav-content .single-post-nav.--pc .date {
    font-family: "Montserrat", sans-serif;
    font-size: 0.875rem;
    font-weight: 500;
    line-height: 1.6;
    color: #888888;
    display: block;
  }
}
@media screen and (min-width: 768px) and (min-width: 376px) {
  .single-post-nav-content .single-post-nav.--pc .date {
    font-size: 14px;
  }
}
@media (min-width: 768px) and (min-width: 768px) {
  .single-post-nav-content .single-post-nav.--pc .date {
    font-size: 16px;
  }
}
@media (min-width: 768px) {
  .single-post-nav-content .single-post-nav.--pc .text {
    font-size: 0.875rem;
    font-weight: 500;
    line-height: 1.6;
    color: #111;
    display: block;
  }
}
@media screen and (min-width: 768px) and (min-width: 376px) {
  .single-post-nav-content .single-post-nav.--pc .text {
    font-size: 14px;
  }
}
@media (min-width: 768px) and (min-width: 768px) {
  .single-post-nav-content .single-post-nav.--pc .text {
    font-size: 16px;
  }
}
@media (min-width: 768px) {
  .single-post-nav-content .single-post-nav.--pc .prev,
  .single-post-nav-content .single-post-nav.--pc .next {
    -webkit-transition: opacity 0.3s ease;
    transition: opacity 0.3s ease;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    gap: 1rem;
    position: relative;
  }
  .single-post-nav-content .single-post-nav.--pc .prev::before,
  .single-post-nav-content .single-post-nav.--pc .next::before {
    content: "";
    rotate: 180deg;
    width: 2rem;
    height: 2rem;
    aspect-ratio: 1;
    background: url(../img/svg/arrow-circle-right-white-bg-blue.svg) no-repeat center center/contain;
  }
}
@media screen and (min-width: 768px) and (min-width: 376px) {
  .single-post-nav-content .single-post-nav.--pc .prev::before,
  .single-post-nav-content .single-post-nav.--pc .next::before {
    width: 32px;
    height: 32px;
  }
}
@media (min-width: 768px) and (min-width: 768px) {
  .single-post-nav-content .single-post-nav.--pc .prev::before,
  .single-post-nav-content .single-post-nav.--pc .next::before {
    width: clamp(30px, 1.5rem, 32px);
    height: clamp(30px, 1.5rem, 32px);
  }
}
@media (min-width: 768px) and (any-hover: hover) {
  .single-post-nav-content .single-post-nav.--pc .prev:hover,
  .single-post-nav-content .single-post-nav.--pc .next:hover {
    opacity: 0.6;
  }
}
@media (min-width: 768px) {
  .single-post-nav-content .single-post-nav.--pc .next {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
    -webkit-flex-direction: row-reverse;
        -ms-flex-direction: row-reverse;
            flex-direction: row-reverse;
  }
  .single-post-nav-content .single-post-nav.--pc .next::before {
    rotate: 0deg;
  }
}
.single-post-nav-content .single-post-nav.--sp {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 1rem;
}
@media screen and (min-width: 376px) {
  .single-post-nav-content .single-post-nav.--sp {
    gap: 16px;
  }
}
.single-post-nav-content .single-post-nav.--sp .prev,
.single-post-nav-content .single-post-nav.--sp .next {
  font-size: 0.875rem;
  font-weight: 700;
  line-height: 1.6;
  color: #111;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 1rem;
  position: relative;
}
@media screen and (min-width: 376px) {
  .single-post-nav-content .single-post-nav.--sp .prev,
  .single-post-nav-content .single-post-nav.--sp .next {
    font-size: clamp(14px, 0.875rem, 16px);
    gap: 16px;
  }
}
.single-post-nav-content .single-post-nav.--sp .prev::before,
.single-post-nav-content .single-post-nav.--sp .next::before {
  content: "";
  rotate: 180deg;
  width: 2rem;
  height: 2rem;
  aspect-ratio: 1;
  background: url(../img/svg/arrow-circle-right-white-bg-blue.svg) no-repeat center center/contain;
}
@media screen and (min-width: 376px) {
  .single-post-nav-content .single-post-nav.--sp .prev::before,
  .single-post-nav-content .single-post-nav.--sp .next::before {
    width: 32px;
    height: 32px;
  }
}
.single-post-nav-content .single-post-nav.--sp .next {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
  -webkit-flex-direction: row-reverse;
      -ms-flex-direction: row-reverse;
          flex-direction: row-reverse;
}
.single-post-nav-content .single-post-nav.--sp .next::before {
  rotate: 0deg;
}
@media (min-width: 768px) {
  .single-post-nav-content .single-post-nav.--sp {
    display: none;
  }
}

.sns-list {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  gap: 1rem;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  margin-top: 2.5rem;
}
@media screen and (min-width: 376px) {
  .sns-list {
    gap: 16px;
    margin-top: 40px;
  }
}
@media (min-width: 768px) {
  .sns-list {
    gap: 1rem;
  }
}
.sns-list li a {
  display: block;
  width: 10.25rem;
  -webkit-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
}
@media screen and (min-width: 376px) {
  .sns-list li a {
    width: 164px;
  }
}
@media (min-width: 768px) {
  .sns-list li a {
    width: 12.5rem;
  }
}
@media (any-hover: hover) {
  .sns-list li a:hover {
    opacity: 0.6;
  }
}
.sns-list li a img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.solution__inner {
  padding-block: 4rem 5rem;
}
@media screen and (min-width: 376px) {
  .solution__inner {
    padding-block: 64px 80px;
  }
}
@media (min-width: 768px) {
  .solution__inner {
    padding-block: 6.25rem;
  }
}

.solution__content {
  background: #FFF;
  width: 100%;
  max-width: 100%;
  margin-inline: auto;
  width: calc(100% - 1.875rem);
}
@media screen and (min-width: 376px) {
  .solution__content {
    width: 500px;
  }
}
@media (min-width: 768px) {
  .solution__content {
    width: calc(100% - 15rem);
    max-width: 75rem;
  }
}

.solution__title {
  position: relative;
  width: 100%;
  max-width: 100%;
  margin-inline: auto;
  height: 9.5rem;
  background: url(../img/webp/solution-bg-sp.webp) no-repeat center center/cover;
}
@media screen and (min-width: 376px) {
  .solution__title {
    width: 500px;
  }
}
@media (min-width: 768px) {
  .solution__title {
    width: 100%;
    height: 16.5625rem;
    background: url(../img/webp/solution-bg-pc.webp) no-repeat center center/cover;
  }
}
.solution__title picture {
  position: absolute;
  top: 2rem;
  left: 50%;
  translate: -50%;
  display: block;
  max-width: 100%;
  margin-inline: auto;
  width: 19.75rem;
}
@media screen and (min-width: 376px) {
  .solution__title picture {
    width: 400px;
    padding-inline: 15px;
    top: 50%;
    left: 50%;
    translate: -50% -50%;
  }
}
@media (min-width: 768px) {
  .solution__title picture {
    width: 35.625rem;
    left: 50%;
    top: 3.25rem;
    translate: -50%;
  }
}
.solution__title img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.solution__content-inner {
  padding: 0rem 0.9375rem 2rem;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}
@media screen and (min-width: 376px) {
  .solution__content-inner {
    padding: 0 0.9375rem 32px;
  }
}
@media screen and (min-width: 1391px) {
  .solution__content-inner {
    display: block;
    padding: 2.5rem 3.0625rem 4rem 4rem;
  }
}

.solution__head {
  width: 17.5rem;
  max-width: 100%;
  margin-inline: auto;
  -webkit-box-ordinal-group: 3;
  -webkit-order: 2;
      -ms-flex-order: 2;
          order: 2;
  margin-top: 1rem;
  position: relative;
  z-index: 1;
}
@media screen and (min-width: 376px) {
  .solution__head {
    width: 280px;
    margin-top: 16px;
  }
}
@media (min-width: 768px) {
  .solution__head {
    width: 31.8125rem;
    margin-top: initial;
  }
}
@media screen and (min-width: 1391px) {
  .solution__head {
    -webkit-box-ordinal-group: 1;
    -webkit-order: 0;
        -ms-flex-order: 0;
            order: 0;
  }
}
.solution__head img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.solution__body {
  display: contents;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 1.5rem;
}
@media screen and (min-width: 376px) {
  .solution__body {
    gap: 24px;
  }
}
@media (min-width: 768px) {
  .solution__body {
    margin-top: 2.8125rem;
    gap: 1.5rem;
  }
}
@media screen and (min-width: 1391px) {
  .solution__body {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-direction: row;
        -ms-flex-direction: row;
            flex-direction: row;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    gap: 4.0625rem;
  }
}

.solution__items {
  position: relative;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 0.5rem;
  -webkit-box-ordinal-group: 4;
  -webkit-order: 3;
      -ms-flex-order: 3;
          order: 3;
  margin-top: 1.5rem;
}
@media screen and (min-width: 376px) {
  .solution__items {
    gap: 8px;
    margin-top: 24px;
  }
}
@media (min-width: 768px) {
  .solution__items {
    gap: 0.5rem;
  }
}
@media screen and (min-width: 1391px) {
  .solution__items {
    margin-top: initial;
    -webkit-box-ordinal-group: 3;
    -webkit-order: 2;
        -ms-flex-order: 2;
            order: 2;
  }
  .solution__items::before {
    content: "";
    position: absolute;
    left: 0;
    top: -13.75rem;
    width: 15.375rem;
    height: 13.75rem;
    background: url(../img/webp/clip-person-solution-pc.webp) no-repeat center center/cover;
  }
}

.solution__item {
  padding: 0.75rem 1rem 0.75rem 3.5rem;
  background: #F0F0F0;
  border-radius: 0.625rem;
  position: relative;
  font-size: 0.875rem;
  font-weight: 700;
  line-height: 1.6;
}
@media screen and (min-width: 376px) {
  .solution__item {
    font-size: 14px;
    padding: 12px 16px 12px 56px;
    border-radius: 10px;
  }
}
@media (min-width: 768px) {
  .solution__item {
    font-size: 24px;
    font-size: clamp(18px, 1.5rem, 24px);
    padding: 1.4375rem 1.5rem 1.4375rem 5rem;
  }
}
.solution__item::before {
  content: "";
  position: absolute;
  top: 50%;
  translate: 0 -50%;
  left: 1rem;
  width: 1.5rem;
  height: 1.5625rem;
  background: url(../img/svg/check-icon-white.svg) no-repeat center center/cover;
}
@media screen and (min-width: 376px) {
  .solution__item::before {
    width: 24px;
    height: 25px;
    left: 16px;
  }
}
@media (min-width: 768px) {
  .solution__item::before {
    left: 1.5rem;
    width: 2rem;
    height: 2.125rem;
  }
}
.solution__item span {
  background: -webkit-gradient(linear, left top, left bottom, color-stop(60%, transparent), color-stop(60%, #FDD652));
  background: linear-gradient(transparent 60%, #FDD652 60%);
}

.solution__img {
  width: 18.8125rem;
  max-width: 100%;
  -webkit-box-ordinal-group: 2;
  -webkit-order: 1;
      -ms-flex-order: 1;
          order: 1;
  position: relative;
  margin-top: -1.875rem;
}
@media screen and (min-width: 376px) {
  .solution__img {
    width: 301px;
    margin-top: -30px;
  }
}
@media (min-width: 768px) {
  .solution__img {
    width: 360px;
    margin-top: initial;
  }
}
@media screen and (min-width: 1391px) {
  .solution__img {
    width: 22.5rem;
    -webkit-box-ordinal-group: 3;
    -webkit-order: 2;
        -ms-flex-order: 2;
            order: 2;
    margin-top: initial;
  }
}
.solution__img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.top-staff {
  overflow-x: hidden;
  position: relative;
  background: url(../img/webp/top-brick-bg.webp) no-repeat top center/cover;
  padding-block: 5rem 10.25rem;
}
@media screen and (min-width: 376px) {
  .top-staff {
    padding-block: 80px 164px;
  }
}
@media (min-width: 768px) {
  .top-staff {
    padding-block: 3.75rem 6.25rem;
  }
}
.top-staff::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 50%;
  translate: -50%;
  width: 13.4375rem;
  height: 9rem;
  background: url(../img/webp/clip-person-staff.webp) no-repeat center center/cover;
}
@media screen and (min-width: 376px) {
  .top-staff::after {
    width: 215px;
    height: 144px;
  }
}
@media (min-width: 768px) {
  .top-staff::after {
    left: calc(50% + 26.875rem);
    width: 22.9375rem;
    height: 15.3125rem;
  }
}

.top-staff__title {
  width: 21.4375rem;
  max-width: 100%;
  margin-inline: auto;
}
@media screen and (min-width: 376px) {
  .top-staff__title {
    width: 343px;
  }
}
@media (min-width: 768px) {
  .top-staff__title {
    width: 38.125rem;
  }
}
.top-staff__title img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.top-staff__slider .top-staff-loop {
  padding-block: 4rem;
}
@media screen and (min-width: 376px) {
  .top-staff__slider .top-staff-loop {
    padding-block: 64px;
  }
}
@media (min-width: 768px) {
  .top-staff__slider .top-staff-loop {
    padding-block: 4.5rem;
  }
}

.top-staff__item {
  background: #FDD557;
  border-radius: 1rem 1rem 0 1rem;
  position: relative;
  padding: 7.5rem 1rem 1.5rem;
  width: 17.5rem;
  max-width: 100%;
}
@media screen and (min-width: 376px) {
  .top-staff__item {
    width: 320px;
    padding: 120px 16px 24px;
    border-radius: 16px 16px 0 16px;
  }
}
@media (min-width: 768px) {
  .top-staff__item {
    width: 20rem;
    padding: 7.5rem 1rem 1.5rem;
    border-radius: 1rem 1rem 0 1rem;
  }
}
.top-staff__item::after {
  content: "";
  position: absolute;
  bottom: -3.25rem;
  right: 0;
  width: 9.4375rem;
  height: 3.3125rem;
  background: url(../img/webp/slider-bg-yellow.webp) no-repeat center center/cover;
}
@media screen and (min-width: 376px) {
  .top-staff__item::after {
    width: 151px;
    height: 53px;
    bottom: -52px;
  }
}
@media (min-width: 768px) {
  .top-staff__item::after {
    width: 9.4375rem;
    height: 3.3125rem;
    bottom: -3.25rem;
  }
}
.top-staff__item:nth-child(odd) {
  margin-top: 2.5rem;
}
@media screen and (min-width: 376px) {
  .top-staff__item:nth-child(odd) {
    margin-top: 40px;
  }
}
@media (min-width: 768px) {
  .top-staff__item:nth-child(odd) {
    margin-top: 2.5rem;
  }
}
.top-staff__item:nth-child(even) {
  background: #F6A522;
}
.top-staff__item:nth-child(even)::after {
  background: url(../img/webp/slider-bg-orange.webp) no-repeat center center/cover;
}

.top-staff__img {
  position: absolute;
  top: -3.125rem;
  left: 50%;
  translate: -50%;
  max-width: 100%;
  width: 100%;
  height: auto;
}
@media screen and (min-width: 376px) {
  .top-staff__img {
    top: -45px;
  }
}
@media (min-width: 768px) {
  .top-staff__img {
    top: -3.125rem;
  }
}
.top-staff__img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.top-staff__body {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0.25rem;
}
@media screen and (min-width: 376px) {
  .top-staff__body {
    gap: 4px;
  }
}
@media (min-width: 768px) {
  .top-staff__body {
    gap: 0.25rem;
  }
}

.top-staff__position {
  font-size: 14px;
  font-weight: 700;
  line-height: 1.6;
  color: #FFF;
  background: #111;
  padding: 0.125rem 0.625rem;
  border-radius: 6.25rem;
  display: inline-block;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
}
@media screen and (min-width: 376px) {
  .top-staff__position {
    font-size: 14px;
    padding: 2px 10px;
    border-radius: 100px;
  }
}
@media (min-width: 768px) {
  .top-staff__position {
    padding: 0.125rem 0.625rem;
    border-radius: 6.25rem;
  }
}

.top-staff__name {
  font-size: 1.125rem;
  font-weight: 700;
  line-height: 1.6;
  color: #111;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
}
@media screen and (min-width: 376px) {
  .top-staff__name {
    font-size: 18px;
  }
}

.top-staff__box {
  padding: 1rem;
  background: #FFF;
  border-radius: 0.625rem;
  margin-top: 1rem;
}
@media screen and (min-width: 376px) {
  .top-staff__box {
    margin-top: 16px;
    padding: 16px;
    border-radius: 10px;
  }
}
@media (min-width: 768px) {
  .top-staff__box {
    border-radius: 0.625rem;
    padding: 1rem;
    margin-top: 1rem;
  }
}

.top-staff__text {
  font-size: 0.875rem;
  font-weight: 500;
  line-height: 1.6;
  color: #111;
}
@media screen and (min-width: 376px) {
  .top-staff__text {
    font-size: 14px;
  }
}
@media (min-width: 768px) {
  .top-staff__text {
    font-size: 16px;
  }
}

.top-staff__btn {
  margin-top: 3rem;
}
@media screen and (min-width: 376px) {
  .top-staff__btn {
    margin-top: 48px;
  }
}
@media (min-width: 768px) {
  .top-staff__btn {
    margin-top: 7.5rem;
  }
}

.status__inner {
  position: relative;
  width: 91.875rem;
  padding-inline: 0.9375rem;
  max-width: 100%;
  margin-inline: auto;
  padding-block: 4rem 5rem;
}
@media screen and (min-width: 376px) {
  .status__inner {
    padding-block: 64px 80px;
  }
}
@media (min-width: 768px) {
  .status__inner {
    padding-block: 4rem;
  }
}
.status__inner::before, .status__inner::after {
  content: "";
  position: absolute;
  z-index: -1;
}
.status__inner::before {
  left: 0;
  top: 0;
  width: 13.25rem;
  height: 14.75rem;
  background: url(../img/webp/paint-yellow02-sp.webp) no-repeat center center/cover;
}
@media (min-width: 768px) {
  .status__inner::before {
    width: 26.9375rem;
    height: 18.3125rem;
    background: url(../img/webp/paint-yellow02-pc.webp) no-repeat center center/cover;
  }
}
.status__inner::after {
  right: 0;
  bottom: 0;
  width: 14.375rem;
  height: 10.8125rem;
  background: url(../img/webp/paint-blue02-sp.webp) no-repeat center center/cover;
}
@media (min-width: 768px) {
  .status__inner::after {
    width: 26.9375rem;
    height: 23.375rem;
    background: url(../img/webp/paint-blue02-pc.webp) no-repeat center center/cover;
  }
}

.status__content {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: (minmax(0, 1fr))[1];
  grid-template-columns: repeat(1, minmax(0, 1fr));
  gap: 1rem;
  width: 21.5625rem;
  max-width: 100%;
  margin-inline: auto;
}
@media screen and (min-width: 376px) {
  .status__content {
    width: 500px;
    gap: 16px;
  }
}
@media (min-width: 768px) {
  .status__content {
    -ms-grid-columns: (minmax(0, 1fr))[2];
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 2.5rem;
    width: 75rem;
  }
}

.status__box {
  border-radius: 1rem;
  padding: 1.5rem 0.9375rem;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
  -webkit-align-items: flex-start;
      -ms-flex-align: start;
          align-items: flex-start;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 0.625rem;
  background: #2698D5;
}
@media screen and (min-width: 376px) {
  .status__box {
    border-radius: 16px;
    padding: 24px 15px;
    gap: 10px;
  }
}
@media (min-width: 768px) {
  .status__box {
    border-radius: 1.25rem;
    padding: 1.5rem;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    gap: 1rem;
  }
}
.status__box.--contact {
  gap: 0.625rem;
}

.status__box-title-wrap {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 0.5rem;
  width: 100%;
  text-align: center;
}
@media (min-width: 768px) {
  .status__box-title-wrap {
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
}

.status__box-title {
  color: #FFF;
  font-size: 1.5rem;
  font-weight: 900;
  text-align: center;
  line-height: 1.6;
}
@media screen and (min-width: 376px) {
  .status__box-title {
    font-size: 24px;
  }
}

.status__box-subtitle {
  color: #FFF;
  background: #111;
  font-size: 0.875rem;
  line-height: 1.6;
  font-weight: 700;
  padding: 0.25rem 1rem;
  border-radius: 6.25rem;
  display: inline-block;
  margin-inline: auto;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
}
@media screen and (min-width: 376px) {
  .status__box-subtitle {
    font-size: 14px;
    padding: 4px 16px;
    border-radius: 100px;
  }
}
@media (min-width: 768px) {
  .status__box-subtitle {
    font-size: 16px;
    padding: 0.25rem 1rem;
    border-radius: 6.25rem;
  }
}

.status-box__list-wrap {
  background: #FFF;
  padding: 1rem;
  height: 15.4375rem;
  width: 100%;
  border-radius: 1rem;
}
@media screen and (min-width: 376px) {
  .status-box__list-wrap {
    height: 247px;
    border-radius: 16px;
  }
}
@media (min-width: 768px) {
  .status-box__list-wrap {
    height: 17.5625rem;
    width: 100%;
    padding: 1rem;
    border-radius: 1.25rem;
  }
}

.status-box__list li {
  margin-right: 1.375rem;
}
@media screen and (min-width: 376px) {
  .status-box__list li {
    margin-right: 22px;
  }
}
@media (min-width: 768px) {
  .status-box__list li {
    margin-right: 1.375rem;
  }
}
.status-box__list li:nth-child(n+2) {
  padding-top: 1rem;
}
@media screen and (min-width: 376px) {
  .status-box__list li:nth-child(n+2) {
    padding-top: 16px;
  }
}
@media (min-width: 768px) {
  .status-box__list li:nth-child(n+2) {
    padding-top: 1rem;
  }
}
.status-box__list li:not(:last-child) {
  border-bottom: 1px solid #CCCCCC;
  font-size: 1rem;
  padding-bottom: 1rem;
}
@media screen and (min-width: 376px) {
  .status-box__list li:not(:last-child) {
    padding-bottom: 16px;
  }
}
@media (min-width: 768px) {
  .status-box__list li:not(:last-child) {
    padding-bottom: 1rem;
  }
}
.status-box__list li .date {
  font-size: 0.8125rem;
  color: #888888;
  font-weight: 500;
  line-height: 1.6;
  font-family: "Montserrat", sans-serif;
}
@media screen and (min-width: 376px) {
  .status-box__list li .date {
    font-size: 13px;
  }
}
@media (min-width: 768px) {
  .status-box__list li .date {
    font-size: 14px;
  }
}
.status-box__list li .text {
  font-size: 0.875rem;
  line-height: 1.6;
  letter-spacing: 0.05em;
  font-weight: 500;
  margin-top: 0.25rem;
}
@media screen and (min-width: 376px) {
  .status-box__list li .text {
    font-size: 14px;
    margin-top: 4px;
  }
}
@media (min-width: 768px) {
  .status-box__list li .text {
    font-size: 16px;
    margin-top: 0.25rem;
  }
}

.scroll-area {
  height: 100%;
  width: 100%;
}

/* simplebar用 */
.simplebar-track {
  border-radius: 6.25rem;
}

.simplebar-track .simplebar-scrollbar.simplebar-visible::before {
  opacity: 1;
}

.simplebar-track .simplebar-scrollbar::before {
  background: #AAAAAA;
}
.status__box.--news {
  background: #116BAF;
}
@media (min-width: 768px) {
  .status__box.--news {
    padding: 1.5rem 1.5rem 2rem;
  }
}
.status__box.--news .status__box-title-wrap {
  gap: 0.5rem;
}
@media (min-width: 768px) {
  .status__box.--news .status__box-title-wrap {
    gap: 0.5rem;
  }
}
.status__box.--news .status-box__list-wrap {
  height: 15.4375rem;
}
@media screen and (min-width: 376px) {
  .status__box.--news .status-box__list-wrap {
    height: 247px;
  }
}
@media (min-width: 768px) {
  .status__box.--news .status-box__list-wrap {
    height: 13.8125rem;
  }
}
.status__box.--news .status-box__list li .text {
  cursor: pointer;
  -webkit-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
  text-decoration: underline;
}
@media (any-hover: hover) {
  .status__box.--news .status-box__list li:hover .text {
    opacity: 0.6;
    text-decoration: none;
  }
}

.status-box__link {
  margin-left: auto;
}

.status-box__more {
  font-size: 0.875rem;
  font-weight: 700;
  line-height: 1.6;
  color: #FFF;
  -webkit-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
  position: relative;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: end;
  -webkit-justify-content: flex-end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  gap: 0.625rem;
}
@media screen and (min-width: 376px) {
  .status-box__more {
    font-size: 14px;
    gap: 10px;
  }
}
@media (min-width: 768px) {
  .status-box__more {
    font-size: 16px;
    gap: 0.625rem;
  }
}
.status-box__more::after {
  content: "";
  background: url(../img/svg/arrow-circle-right-black-bg-white.svg) no-repeat center center/contain;
  width: 1.25rem;
  height: 1.25rem;
}
@media screen and (min-width: 376px) {
  .status-box__more::after {
    width: 25px;
    height: 25px;
  }
}
@media (min-width: 768px) {
  .status-box__more::after {
    width: 1.875rem;
    height: 1.875rem;
  }
}
@media (any-hover: hover) {
  .status-box__more:hover {
    opacity: 0.6;
  }
}

.tags-box {
  margin-top: 5rem;
}
@media screen and (min-width: 376px) {
  .tags-box {
    margin-top: 80px;
  }
}
@media (min-width: 768px) {
  .tags-box {
    margin-top: 5rem;
  }
}

.tags-box__conteiner {
  width: 100%;
  max-width: 100%;
  margin-inline: auto;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 1.5rem;
}
@media screen and (min-width: 376px) {
  .tags-box__conteiner {
    gap: 24px;
    width: clamp(375px, 31.25rem, 500px);
  }
}
@media (min-width: 768px) {
  .tags-box__conteiner {
    gap: 2rem;
    width: 75rem;
  }
}

.tags-box__category {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: start;
  -webkit-align-items: flex-start;
      -ms-flex-align: start;
          align-items: flex-start;
  gap: 1.5rem;
  padding: 1.5rem 1rem;
  background: #2698D5;
  border-radius: 1rem;
}
@media screen and (min-width: 376px) {
  .tags-box__category {
    padding: 24px 16px;
    border-radius: 16px;
    gap: 24px;
  }
}
@media (min-width: 768px) {
  .tags-box__category {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-direction: row;
        -ms-flex-direction: row;
            flex-direction: row;
    gap: 5rem;
    padding: 3rem 4rem 3.375rem;
    border-radius: 1.25rem;
    gap: 5rem;
  }
}
.tags-box__category .tags-box__item a {
  font-size: 0.875rem;
  font-weight: 700;
  line-height: 1.6;
  color: #111;
  padding: 0.375rem 1rem;
  border-radius: 6.25rem;
  background: #FDD557;
  color: #111;
  display: block;
  -webkit-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
}
@media screen and (min-width: 376px) {
  .tags-box__category .tags-box__item a {
    font-size: 14px;
    padding: 6px 16px;
    border-radius: 100px;
  }
}
@media (min-width: 768px) {
  .tags-box__category .tags-box__item a {
    font-size: clamp(16px, 1.125rem, 18px);
    padding: 0.75rem 2rem;
    border-radius: 6.25rem;
    padding: 0.75rem 2rem;
  }
}
@media (any-hover: hover) {
  .tags-box__category .tags-box__item a:hover {
    opacity: 0.6;
  }
}
.tags-box__category .tags-box__title {
  width: 11.625rem;
  max-width: 100%;
  -webkit-box-flex: 0;
  -webkit-flex-grow: 0;
      -ms-flex-positive: 0;
          flex-grow: 0;
  -webkit-flex-shrink: 0;
      -ms-flex-negative: 0;
          flex-shrink: 0;
}
@media screen and (min-width: 376px) {
  .tags-box__category .tags-box__title {
    width: 186px;
  }
}
@media (min-width: 768px) {
  .tags-box__category .tags-box__title {
    width: 18.1875rem;
  }
}
.tags-box__category .tags-box__title img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.tags-box__items {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  gap: 0.5rem;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  gap: 0.5rem;
}
@media screen and (min-width: 376px) {
  .tags-box__items {
    gap: 8px;
  }
}
@media (min-width: 768px) {
  .tags-box__items {
    gap: 0.5rem;
  }
}

.tags-box__keyword {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: start;
  -webkit-align-items: flex-start;
      -ms-flex-align: start;
          align-items: flex-start;
  gap: 1.5rem;
  padding: 1.5rem 1rem;
  background: #FFF;
  border-radius: 1rem;
}
@media screen and (min-width: 376px) {
  .tags-box__keyword {
    padding: 24px 16px;
    border-radius: 16px;
    gap: 24px;
  }
}
@media (min-width: 768px) {
  .tags-box__keyword {
    gap: 3.125rem;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-direction: row;
        -ms-flex-direction: row;
            flex-direction: row;
    padding: 3rem 4rem 3.375rem;
    border-radius: 1.25rem;
  }
}
.tags-box__keyword .tags-box__item a {
  font-size: 0.875rem;
  font-weight: 700;
  line-height: 1.6;
  color: #111;
  padding: 0.375rem 1rem;
  border-radius: 0.375rem;
  background: #116BAF;
  color: #FFF;
  display: block;
  -webkit-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
}
@media screen and (min-width: 376px) {
  .tags-box__keyword .tags-box__item a {
    font-size: 14px;
    padding: 6px 16px;
    border-radius: 6px;
  }
}
@media (min-width: 768px) {
  .tags-box__keyword .tags-box__item a {
    font-size: clamp(16px, 1.125rem, 18px);
    padding: 0.75rem 2rem;
    border-radius: 0.375rem;
  }
}
@media (any-hover: hover) {
  .tags-box__keyword .tags-box__item a:hover {
    opacity: 0.6;
  }
}
.tags-box__keyword .tags-box__title {
  width: 12.875rem;
  max-width: 100%;
  -webkit-box-flex: 0;
  -webkit-flex-grow: 0;
      -ms-flex-positive: 0;
          flex-grow: 0;
  -webkit-flex-shrink: 0;
      -ms-flex-negative: 0;
          flex-shrink: 0;
}
@media screen and (min-width: 376px) {
  .tags-box__keyword .tags-box__title {
    width: 206px;
  }
}
@media (min-width: 768px) {
  .tags-box__keyword .tags-box__title {
    width: 20.0625rem;
  }
}
.tags-box__keyword .tags-box__title img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.tips {
  width: 90rem;
  max-width: 100%;
  margin-inline: auto;
}

.tips__inner {
  width: 100%;
  max-width: 100%;
  height: 100%;
  margin-inline: auto;
}

.tips__title {
  position: relative;
  width: 100%;
  max-width: 100%;
  margin-inline: auto;
  height: 8rem;
  background: url(../img/webp/tips-bg-sp.webp) no-repeat center center/cover;
}
@media screen and (min-width: 376px) {
  .tips__title {
    height: 170px;
    width: 500px;
  }
}
@media (min-width: 768px) {
  .tips__title {
    width: 90rem;
    height: 17.6875rem;
    background: url(../img/webp/tips-bg-pc.webp) no-repeat center center/cover;
  }
}
.tips__title picture {
  position: absolute;
  top: -3.25rem;
  left: 50%;
  translate: -50%;
  width: 100%;
  max-width: 100%;
  height: 11.3125rem;
  display: block;
}
@media screen and (min-width: 376px) {
  .tips__title picture {
    width: 383px;
    height: 184px;
    top: -14px;
  }
}
@media (min-width: 768px) {
  .tips__title picture {
    top: -1.875rem;
    width: 100%;
    height: 19.5625rem;
  }
}
.tips__title img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.tips__content-box {
  overflow: hidden;
  position: relative;
  padding-inline: 0.9375rem;
}
@media screen and (min-width: 376px) {
  .tips__content-box {
    padding-inline: 0;
  }
}
.tips__content-box::before {
  content: "";
  position: absolute;
  top: 3%;
  left: 0;
  width: 100%;
  height: 100%;
  background: url(../img/webp/tips-bg-accent-sp.webp) no-repeat center top/contain;
  z-index: -1;
}
@media screen and (min-width: 376px) {
  .tips__content-box::before {
    top: 2%;
    background: url(../img/webp/tips-bg-accent-sp.webp) repeat-y center top/100% 100%;
  }
}
@media screen and (min-width: 501px) {
  .tips__content-box::before {
    top: 2%;
    background: url(../img/webp/tips-bg-accent-sp.webp) repeat-y center top/cover;
  }
}
@media (min-width: 768px) {
  .tips__content-box::before {
    top: 0;
    background: url(../img/webp/tips-bg-accent-pc.webp) no-repeat center center/cover;
  }
}

.tips__content {
  overflow: hidden;
  max-width: 100%;
  margin-inline: auto;
  border-radius: 1rem;
  border: 0.1875rem solid #111;
  background: #FDD652;
  margin-top: 2rem;
  width: 100%;
}
@media screen and (min-width: 376px) {
  .tips__content {
    width: 500px;
    border-radius: 16px;
    border: 3px solid #111;
    margin-top: 32px;
  }
}
@media (min-width: 768px) {
  .tips__content {
    border-radius: 1.25rem;
    margin-top: 4rem;
    border: 0.375rem solid #111;
    width: 60rem;
  }
}
@media screen and (min-width: 1201px) {
  .tips__content {
    width: calc(100% - 15rem);
    max-width: 75rem;
  }
}

.tips__content-title {
  background: #111;
  padding-block: 1.5rem;
}
@media screen and (min-width: 376px) {
  .tips__content-title {
    padding-block: 24px 16px;
  }
}
@media (min-width: 768px) {
  .tips__content-title {
    padding-block: 2.5rem 1rem;
    padding-inline: 0.9375rem;
  }
}
.tips__content-title picture {
  width: 19.5625rem;
  height: 4.9375rem;
  display: block;
  max-width: 100%;
  margin-inline: auto;
}
@media screen and (min-width: 376px) {
  .tips__content-title picture {
    width: 313px;
    height: 79px;
  }
}
@media (min-width: 768px) {
  .tips__content-title picture {
    width: 58.3125rem;
    height: 5.0625rem;
  }
}
.tips__content-title img {
  width: 100%;
  height: 100%;
}

.tips__items {
  padding: 1.5rem 0.4375rem;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 1.5rem;
}
@media screen and (min-width: 376px) {
  .tips__items {
    padding: 24px 0.9375rem;
    gap: 24px;
  }
}
@media (min-width: 768px) {
  .tips__items {
    padding: 4rem 4.625rem 4.6875rem;
    gap: 3rem;
  }
}

.tips__item {
  background: #FFF;
  padding: 1.5rem 1rem;
  border-radius: 1rem;
  position: relative;
}
@media screen and (min-width: 376px) {
  .tips__item {
    padding: 24px 16px;
    border-radius: 16px;
  }
}
@media (min-width: 768px) {
  .tips__item {
    padding: 4rem;
    border-radius: 1.25rem;
  }
}
.tips__item::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 4.875rem;
  height: 4.875rem;
}
@media screen and (min-width: 376px) {
  .tips__item::before {
    width: clamp(78px, 5rem, 100px);
    height: clamp(78px, 5rem, 100px);
  }
}
@media (min-width: 768px) {
  .tips__item::before {
    top: -2.5rem;
    left: -2.5rem;
    width: 110px;
    height: 110px;
  }
}
.tips__item:nth-child(1)::before {
  background: url(../img/webp/check-badge01.webp) no-repeat center center/cover;
}
.tips__item:nth-child(1) .tips__item-content-img {
  width: 13.8125rem;
  height: 13.0625rem;
}
@media screen and (min-width: 376px) {
  .tips__item:nth-child(1) .tips__item-content-img {
    width: 221px;
    height: 209px;
  }
}
@media (min-width: 768px) {
  .tips__item:nth-child(1) .tips__item-content-img {
    width: 21.4375rem;
    height: 20.75rem;
  }
}
.tips__item:nth-child(2)::before {
  background: url(../img/webp/check-badge02.webp) no-repeat center center/cover;
}
.tips__item:nth-child(3)::before {
  background: url(../img/webp/check-badge03.webp) no-repeat center center/cover;
}
.tips__item:nth-child(4)::before {
  background: url(../img/webp/check-badge04.webp) no-repeat center center/cover;
}
.tips__item:nth-child(5)::before {
  background: url(../img/webp/check-badge05.webp) no-repeat center center/cover;
}
.tips__item:nth-child(6)::before {
  background: url(../img/webp/check-badge06.webp) no-repeat center center/cover;
}
.tips__item:nth-child(7)::before {
  background: url(../img/webp/check-badge07.webp) no-repeat center center/cover;
}
.tips__item:nth-child(8)::before {
  background: url(../img/webp/check-badge08.webp) no-repeat center center/cover;
}
.tips__item:nth-child(9)::before {
  background: url(../img/webp/check-badge09.webp) no-repeat center center/cover;
}
.tips__item:nth-child(10)::before {
  background: url(../img/webp/check-badge10.webp) no-repeat center center/cover;
}

.tips__item-content {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: reverse;
  -webkit-flex-direction: column-reverse;
      -ms-flex-direction: column-reverse;
          flex-direction: column-reverse;
  -webkit-box-align: start;
  -webkit-align-items: flex-start;
      -ms-flex-align: start;
          align-items: flex-start;
  gap: 1rem;
}
@media screen and (min-width: 376px) {
  .tips__item-content {
    gap: 16px;
  }
}
@media screen and (min-width: 951px) {
  .tips__item-content {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-direction: row;
        -ms-flex-direction: row;
            flex-direction: row;
    gap: 4rem;
  }
}

.tips__item-content-body {
  -webkit-box-flex: 1;
  -webkit-flex: 1;
      -ms-flex: 1;
          flex: 1;
}

.tips__item-title {
  position: relative;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 1rem;
  font-size: 1.125rem;
  font-weight: 900;
  line-height: 1.6;
  color: #116BAF;
}
@media screen and (min-width: 376px) {
  .tips__item-title {
    font-size: 18px;
    gap: 16px;
  }
}
@media (min-width: 768px) {
  .tips__item-title {
    font-size: clamp(24px, 1.875rem, 30px);
    gap: 1rem;
  }
}
.tips__item-title::before {
  content: "";
  width: 1.5rem;
  height: 1.5625rem;
  background: url(../img/svg/check-icon-blue.svg) no-repeat center center/cover;
  display: block;
  aspect-ratio: 1;
}
@media screen and (min-width: 376px) {
  .tips__item-title::before {
    width: 24px;
    height: 25px;
  }
}
@media (min-width: 768px) {
  .tips__item-title::before {
    width: clamp(24px, 12rem, 32px);
    height: clamp(25px, 2.125rem, 34px);
  }
}

.tips__item-text {
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.6;
  color: #111;
  margin-top: 1rem;
}
@media screen and (min-width: 376px) {
  .tips__item-text {
    font-size: 14px;
    margin-top: 16px;
  }
}
@media (min-width: 768px) {
  .tips__item-text {
    font-size: 16px;
    margin-top: 1.5rem;
  }
}

.tips-level {
  margin-top: 1.5rem;
  padding: 0.5rem 0.9375rem;
  border-radius: 0.625rem;
  background: #F0F0F0;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 1.5rem;
  width: 100%;
}
@media screen and (min-width: 376px) {
  .tips-level {
    margin-top: 24px;
    padding: 8px 15px;
    border-radius: 10px;
    gap: 24px;
  }
}
@media (min-width: 768px) {
  .tips-level {
    margin-top: 2.5rem;
    padding: 0.5rem 1.5rem;
    gap: 1.5rem;
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
  }
}
@media screen and (min-width: 951px) {
  .tips-level {
    white-space: nowrap;
  }
}
.tips-level .bars {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0.25rem;
}
@media screen and (min-width: 376px) {
  .tips-level .bars {
    gap: 4px;
  }
}
@media (min-width: 768px) {
  .tips-level .bars {
    gap: 0.25rem;
  }
}
.tips-level .bar {
  width: 2rem;
  height: 0.9375rem;
  border-radius: 0.125rem;
  display: block;
  background: #FFF;
}
@media screen and (min-width: 376px) {
  .tips-level .bar {
    width: 32px;
    height: 15px;
    border-radius: 2px;
  }
}
@media (min-width: 768px) {
  .tips-level .bar {
    width: 2.5rem;
    height: 0.9375rem;
  }
}
.tips-level .color-read {
  background: #FF342A;
}
.tips-level .color-orange {
  background: #F2761E;
}
.tips-level .color-green {
  background: #2BC223;
}
.tips-level.--color-read .tips-level__head-number {
  color: #FF342A;
}
.tips-level.--color-orange .tips-level__head-number {
  color: #F2761E;
}
.tips-level.--color-green .tips-level__head-number {
  color: #2BC223;
}

.tips-level__head-title {
  font-size: 0.8125rem;
  font-weight: 700;
  line-height: 1.6;
  color: #111;
}
@media screen and (min-width: 376px) {
  .tips-level__head-title {
    font-size: 13px;
  }
}
@media (min-width: 768px) {
  .tips-level__head-title {
    font-size: 16px;
  }
}

.tips-level__head-number {
  font-size: 1.25rem;
  font-weight: 600;
  line-height: 1;
  font-family: "Montserrat", sans-serif;
}
@media screen and (min-width: 376px) {
  .tips-level__head-number {
    font-size: 20px;
  }
}
@media (min-width: 768px) {
  .tips-level__head-number {
    font-size: 1.5rem;
    line-height: 1.6;
  }
}

.tips-level__head {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0.5rem;
}
@media screen and (min-width: 376px) {
  .tips-level__head {
    gap: 8px;
  }
}
@media (min-width: 768px) {
  .tips-level__head {
    gap: 0.5rem;
  }
}

.tips__item-content-img {
  width: 100%;
  max-width: 100%;
  margin-inline: auto;
}
@media (min-width: 768px) {
  .tips__item-content-img {
    width: 21.875rem;
  }
}
.tips__item-content-img img {
  width: 100%;
  height: 100%;
  border-radius: 1.25rem;
  -o-object-fit: cover;
     object-fit: cover;
}
@media screen and (min-width: 376px) {
  .tips__item-content-img img {
    border-radius: 20px;
  }
}

#toc_container {
  background: #F0F0F0;
  padding: 24px 16px;
  border-radius: 16px;
  margin-block: 24px 64px;
}
@media screen and (min-width: 376px) {
  #toc_container {
    padding: 24px 16px;
    border-radius: 16px;
    margin-block: 24px 64px;
  }
}
@media (min-width: 768px) {
  #toc_container {
    padding: 32px;
    border-radius: 1.25rem;
    margin-block: 24px 40px;
  }
}

.toc_title {
  font-size: 18px;
  font-weight: 700;
  line-height: 1;
  color: #111;
  text-align: center;
  padding-bottom: 16px;
  border-bottom: 2px solid #FFF;
}
@media (min-width: 768px) {
  .toc_title {
    font-size: 20px;
  }
}

.toc_list {
  margin-top: 24px;
  counter-reset: toc;
}
.toc_list > li {
  counter-increment: toc;
  font-size: 14px;
  font-weight: 700;
  line-height: 1.6;
  padding-left: 30px;
  position: relative;
}
@media (min-width: 768px) {
  .toc_list > li {
    font-size: 16px;
    padding-left: 32px;
  }
}
.toc_list > li::before {
  content: counter(toc);
  position: absolute;
  top: 0.5lh;
  translate: 0 -50%;
  left: 0;
  width: 22px;
  height: 22px;
  color: #FFF;
  background: #116BAF;
  border-radius: 100vmax;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  font-size: 12px;
  font-weight: 700;
  font-family: "Montserrat", sans-serif;
}
@media (min-width: 768px) {
  .toc_list > li::before {
    font-size: 14px;
    width: 24px;
    height: 24px;
  }
}
.toc_list li a {
  -webkit-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
}
@media (any-hover: hover) {
  .toc_list li a:hover {
    opacity: 0.6;
  }
}
.toc_list > li + li {
  margin-top: 16px;
}
.toc_list > li > ul > li {
  padding-left: 17px;
  font-size: 14px;
  font-weight: 400;
  line-height: 1.6;
  margin-top: 8px;
  position: relative;
}
@media (min-width: 768px) {
  .toc_list > li > ul > li {
    font-size: 16px;
  }
}
.toc_list > li > ul > li::before {
  content: "";
  position: absolute;
  top: 0.5lh;
  translate: 0 -50%;
  left: 0;
  width: 8px;
  height: 13px;
  background: url(../img/svg/arrow-right-blue.svg) no-repeat center center/contain;
}

.toc_number {
  display: none;
}

.top-plan {
  position: relative;
  padding-block: 5rem;
}
@media screen and (min-width: 376px) {
  .top-plan {
    padding-block: 80px;
  }
}
@media (min-width: 768px) {
  .top-plan {
    padding-block: 3.75rem 5.1875rem;
    width: 90rem;
    max-width: 100%;
    margin-inline: auto;
  }
}
.top-plan::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 13.4375rem;
  height: 13.125rem;
  background: url(../img/webp/paint-blue03-sp.webp) no-repeat center center/cover;
  z-index: -1;
}
@media screen and (min-width: 376px) {
  .top-plan::before {
    width: 215px;
    height: 210px;
  }
}
@media (min-width: 768px) {
  .top-plan::before {
    width: 26.9375rem;
    height: 20.25rem;
    background: url(../img/webp/paint-blue-pc.webp) no-repeat center center/cover;
  }
}
.top-plan::after {
  content: "";
  position: absolute;
  bottom: 7.1875rem;
  right: 0;
  width: 16.0625rem;
  height: 20.3125rem;
  background: url(../img/webp/paint-yellow02.webp) no-repeat center center/cover;
  z-index: -1;
}
@media screen and (min-width: 376px) {
  .top-plan::after {
    bottom: 115px;
    width: 257px;
    height: 325px;
  }
}
@media (min-width: 768px) {
  .top-plan::after {
    bottom: 6.75rem;
    width: 26.9375rem;
    height: 33.9375rem;
  }
}

.top-plan__inner {
  padding-inline: 0.9375rem;
}
@media screen and (min-width: 376px) {
  .top-plan__inner {
    padding-inline: 15px;
  }
}
@media (min-width: 768px) {
  .top-plan__inner {
    padding-inline: 1.5625rem;
  }
}

.top-plan__title {
  width: 21.4375rem;
  max-width: 100%;
  margin-inline: auto;
}
@media screen and (min-width: 376px) {
  .top-plan__title {
    width: 343px;
  }
}
@media (min-width: 768px) {
  .top-plan__title {
    width: 36.125rem;
  }
}
.top-plan__title img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.top-plan__items {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: minmax(0, 1fr);
  grid-template-columns: minmax(0, 1fr);
  grid-auto-rows: 1fr;
  gap: 1rem;
  width: 100%;
  max-width: 100%;
  margin-inline: auto;
  margin-top: 2.5rem;
}
@media screen and (min-width: 376px) {
  .top-plan__items {
    margin-top: 40px;
    gap: 16px;
    width: 500px;
  }
}
@media (min-width: 768px) {
  .top-plan__items {
    width: 75rem;
    -ms-grid-columns: (minmax(0, 1fr))[2];
    grid-template-columns: repeat(2, minmax(0, 1fr));
    margin-top: 4rem;
    gap: 1.5rem;
  }
}
@media screen and (min-width: 1111px) {
  .top-plan__items {
    -ms-grid-columns: (minmax(0, 1fr))[3];
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

.top-plan__item {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
}
@media (min-width: 768px) {
  .top-plan__item:last-child:nth-child(2n+1) {
    grid-column: 1/-1;
    -ms-grid-column-align: center;
        justify-self: center;
    width: calc((100% - 1.5rem) / 2);
  }
}
@media screen and (min-width: 1111px) {
  .top-plan__item:last-child:nth-child(2n+1) {
    grid-column: auto;
    -ms-grid-column-align: stretch;
        justify-self: stretch;
    width: auto;
  }
}

.top-plan__item-head {
  position: relative;
  font-size: 1.25rem;
  font-weight: 700;
  line-height: 1.6;
  color: #FFF;
  text-align: center;
  background: #111;
  padding: 0.75rem;
  border-radius: 6.25rem;
  width: 100%;
}
@media screen and (min-width: 376px) {
  .top-plan__item-head {
    padding: 12px;
    border-radius: 100px;
    font-size: 20px;
  }
}
@media (min-width: 768px) {
  .top-plan__item-head {
    padding: 0.75rem;
    font-size: 1.625rem;
    font-size: clamp(20px, 1.625rem, 26px);
  }
}
.top-plan__item-head::after {
  content: "";
  position: absolute;
  left: 50%;
  translate: -50% 0;
  background: #111;
  -webkit-clip-path: polygon(50% 100%, 0 0, 100% 0);
  clip-path: polygon(50% 100%, 0 0, 100% 0);
  width: 1.5625rem;
  height: 1.125rem;
  bottom: -0.625rem;
}
@media screen and (min-width: 376px) {
  .top-plan__item-head::after {
    width: 25px;
    height: 18px;
    bottom: -10px;
  }
}
@media (min-width: 768px) {
  .top-plan__item-head::after {
    width: 1.5625rem;
    height: 1.125rem;
    bottom: -0.9375rem;
  }
}

.top-plan__item-content {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: start;
  -webkit-justify-content: flex-start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  border-radius: 1rem;
  background: #B1D8F4;
  padding: 1.5rem 1rem;
  margin-top: 1.125rem;
  gap: 1rem;
  -webkit-box-flex: 1;
  -webkit-flex-grow: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
}
@media screen and (min-width: 376px) {
  .top-plan__item-content {
    margin-top: 18px;
    gap: 16px;
    padding: 24px 16px;
    border-radius: 16px;
  }
}
@media (min-width: 768px) {
  .top-plan__item-content {
    border-radius: 1.25rem;
    margin-top: 1.25rem;
    gap: 1rem;
    padding: 1.5rem;
  }
}

.top-plan__item-img {
  width: 100%;
  height: -webkit-fit-content;
  height: -moz-fit-content;
  height: fit-content;
  position: relative;
  overflow: hidden;
  border-radius: 1rem 1rem 0 1rem;
  aspect-ratio: 315/177;
}
@media screen and (min-width: 376px) {
  .top-plan__item-img {
    border-radius: 16px 16px 0 16px;
  }
}
@media (min-width: 768px) {
  .top-plan__item-img {
    aspect-ratio: 336/189;
    border-radius: 1.25rem 1.25rem 0 1.25rem;
  }
}
.top-plan__item-img img {
  width: 100%;
  height: 100%;
}

.top-plan__item-label {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  background: #B1D8F4;
  border-radius: 1rem 0 0 0;
  position: absolute;
  bottom: -0.0625rem;
  right: -0.0625rem;
  width: 10.3125rem;
  height: 4rem;
}
@media screen and (min-width: 376px) {
  .top-plan__item-label {
    width: 165px;
    height: 64px;
    border-radius: 16px 0 0 0;
  }
}
@media (min-width: 768px) {
  .top-plan__item-label {
    width: 192px;
    height: 61px;
    border-radius: 1.25rem 0 0 0;
  }
}
.top-plan__item-label .--size {
  font-size: 0.75rem;
  font-weight: 700;
  text-shadow: 2px 2px 2px #fff, -2px -2px 2px #fff, -2px 2px 2px #fff, 2px -2px 2px #fff, 2px 0 2px #fff, -2px 0 2px #fff, 0 2px 2px #fff, 0 -2px 2px #fff;
}
@media screen and (min-width: 376px) {
  .top-plan__item-label .--size {
    font-size: 12px;
  }
}
@media (min-width: 768px) {
  .top-plan__item-label .--size {
    font-size: 14px;
  }
}
.top-plan__item-label .--price-box {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0.28125rem;
  margin-left: auto;
}
@media screen and (min-width: 376px) {
  .top-plan__item-label .--price-box {
    gap: 4.5px;
  }
}
@media (min-width: 768px) {
  .top-plan__item-label .--price-box {
    gap: 0.25rem;
    margin-left: initial;
  }
}
.top-plan__item-label .--price {
  color: #F2761E;
  font-size: 1.75rem;
  font-weight: 700;
  font-family: "Montserrat", sans-serif;
  line-height: 1;
  text-shadow: 3px 3px 2px #fff, -3px -3px 2px #fff, -3px 3px 2px #fff, 3px -3px 2px #fff, 3px 0 2px #fff, -3px 0 2px #fff, 0 3px 2px #fff, 0 -3px 2px #fff;
}
@media screen and (min-width: 376px) {
  .top-plan__item-label .--price {
    font-size: 28px;
  }
}
@media (min-width: 768px) {
  .top-plan__item-label .--price {
    font-size: 32px;
  }
}
.top-plan__item-label .--unit {
  font-size: 0.75rem;
  font-weight: 700;
  text-shadow: 2px 2px 2px #fff, -2px -2px 2px #fff, -2px 2px 2px #fff, 2px -2px 2px #fff, 2px 0 2px #fff, -2px 0 2px #fff, 0 2px 2px #fff, 0 -2px 2px #fff;
}
@media screen and (min-width: 376px) {
  .top-plan__item-label .--unit {
    font-size: 12px;
  }
}
@media (min-width: 768px) {
  .top-plan__item-label .--unit {
    font-size: 14px;
  }
}

.top-plan__lists {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 0.25rem;
}
@media screen and (min-width: 376px) {
  .top-plan__lists {
    gap: 4px;
  }
}
@media (min-width: 768px) {
  .top-plan__lists {
    gap: 4px;
  }
}

.top-plan__list {
  background: #FFF;
  border-radius: 0.625rem;
  padding: 0.5rem;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

.top-plan__list-head {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 0.125rem;
}

.plan-num {
  font-family: "Montserrat", sans-serif;
  font-size: 0.875rem;
  font-weight: 700;
  line-height: 1.6;
  color: #FFF;
  padding: 0.125rem 0.625rem;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  background: #2698D5;
  border-radius: 6.25rem;
}
@media screen and (min-width: 376px) {
  .plan-num {
    font-size: 14px;
  }
}
@media (min-width: 768px) {
  .plan-num {
    font-size: 0.8125rem;
  }
}

.top-plan__list-title {
  font-size: 1rem;
  font-weight: 700;
  line-height: 1.6;
  color: #111;
}
@media screen and (min-width: 376px) {
  .top-plan__list-title {
    font-size: 16px;
  }
}
@media (min-width: 768px) {
  .top-plan__list-title {
    font-size: clamp(16px, 1.125rem, 18px);
  }
}
.top-plan__list-title span {
  font-size: 0.875rem;
}
@media screen and (min-width: 376px) {
  .top-plan__list-title span {
    font-size: 14px;
  }
}
@media (min-width: 768px) {
  .top-plan__list-title span {
    font-size: 14px;
  }
}

.top-plan__list-text {
  font-size: 0.875rem;
  font-weight: 700;
  line-height: 1.6;
  color: #111;
}
@media screen and (min-width: 376px) {
  .top-plan__list-text {
    font-size: 14px;
  }
}
@media (min-width: 768px) {
  .top-plan__list-text {
    font-size: 14px;
  }
}
.top-plan__list-text span {
  color: #F2761E;
}

.top-plan__list-head-price .--price {
  font-size: 1.875rem;
  color: #F2761E;
  font-weight: 700;
  line-height: 1;
  display: block;
  font-family: "Montserrat", sans-serif;
}
@media screen and (min-width: 376px) {
  .top-plan__list-head-price .--price {
    font-size: 30px;
  }
}
@media (min-width: 768px) {
  .top-plan__list-head-price .--price {
    font-size: clamp(30px, 2.25rem, 36px);
  }
}
.top-plan__list-head-price .--unit {
  font-size: 0.75rem;
  color: #111;
  font-weight: 700;
  line-height: 1.3;
  display: block;
}
@media screen and (min-width: 376px) {
  .top-plan__list-head-price .--unit {
    font-size: 12px;
  }
}
@media (min-width: 768px) {
  .top-plan__list-head-price .--unit {
    font-size: 12px;
  }
}

.plan__item-box {
  background: #FDD557;
  border-radius: 0.625rem;
  padding: 0.5rem;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 1rem;
}
@media screen and (min-width: 376px) {
  .plan__item-box {
    padding: 8px;
    gap: 16px;
    border-radius: 10px;
  }
}
@media (min-width: 768px) {
  .plan__item-box {
    padding: 0.5rem;
    gap: 1rem;
    border-radius: 0.625rem;
  }
}

.plan__item-box-head {
  font-size: 0.75rem;
  font-weight: 700;
  line-height: 1.6;
  color: #FFF;
  padding: 0.25rem 0.625rem;
  background: #111;
  border-radius: 6.25rem;
  height: -webkit-fit-content;
  height: -moz-fit-content;
  height: fit-content;
  text-align: center;
  -webkit-box-flex: 0;
  -webkit-flex-grow: 0;
      -ms-flex-positive: 0;
          flex-grow: 0;
  -webkit-flex-shrink: 0;
      -ms-flex-negative: 0;
          flex-shrink: 0;
}
@media screen and (min-width: 376px) {
  .plan__item-box-head {
    font-size: 12px;
    padding: 4px 10px;
    border-radius: 100px;
  }
}
@media (min-width: 768px) {
  .plan__item-box-head {
    font-size: 14px;
    padding: 0.25rem 0.625rem;
    border-radius: 6.25rem;
    text-align: initial;
  }
}

.plan__item-box-list {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  row-gap: 0.5rem;
}
@media screen and (min-width: 376px) {
  .plan__item-box-list {
    row-gap: 8px;
  }
}
@media (min-width: 768px) {
  .plan__item-box-list {
    row-gap: 0.5rem;
  }
}

.plan__item-box-text {
  font-size: 0.875rem;
  font-weight: 700;
  line-height: 1.6;
  color: #111;
}
@media screen and (min-width: 376px) {
  .plan__item-box-text {
    font-size: 14px;
  }
}
@media (min-width: 768px) {
  .plan__item-box-text {
    font-size: 14px;
  }
}

.top-plan__item-btn {
  text-align: end;
  margin-top: auto;
}

.top-plan__item-more {
  -webkit-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
  font-size: 0.875rem;
  font-weight: 700;
  line-height: 1.6;
  position: relative;
  display: -webkit-inline-box;
  display: -webkit-inline-flex;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0.625rem;
  -webkit-box-pack: end;
  -webkit-justify-content: flex-end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  margin-top: auto;
}
@media screen and (min-width: 376px) {
  .top-plan__item-more {
    font-size: 14px;
    gap: 10px;
  }
}
@media (min-width: 768px) {
  .top-plan__item-more {
    gap: 0.625rem;
    font-size: clamp(14px, 1rem, 16px);
    margin-top: 1.5rem;
    margin-top: auto;
  }
}
.top-plan__item-more::after {
  content: "";
  background: url(../img/svg/arrow-circle-right-bg-black.svg) no-repeat center center/contain;
  width: 1.25rem;
  height: 1.25rem;
}
@media screen and (min-width: 376px) {
  .top-plan__item-more::after {
    width: 20px;
    height: 20px;
  }
}
@media (min-width: 768px) {
  .top-plan__item-more::after {
    width: 1.875rem;
    height: 1.875rem;
  }
}
@media (any-hover: hover) {
  .top-plan__item-more:hover {
    opacity: 0.6;
  }
}

.top-plan__btn {
  margin-top: 3rem;
}
@media screen and (min-width: 376px) {
  .top-plan__btn {
    margin-top: 48px;
  }
}
@media (min-width: 768px) {
  .top-plan__btn {
    margin-top: 4rem;
  }
}

.swiper-loop > .swiper-wrapper,
.top-staff-loop > .swiper-wrapper {
  -webkit-transition-timing-function: linear !important;
  transition-timing-function: linear !important;
}

.top-slider .swiper-slide {
  width: 12.5rem;
  height: 12.5rem;
}
@media screen and (min-width: 376px) {
  .top-slider .swiper-slide {
    width: 200px;
    height: 200px;
  }
}
@media (min-width: 768px) {
  .top-slider .swiper-slide {
    width: 17.9375rem;
    height: 17.125rem;
  }
}
.top-slider .swiper-slide img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.top-voice {
  background: #D7EEFF;
}

.top-voice__inner {
  position: relative;
  padding-block: 5rem;
}
@media screen and (min-width: 376px) {
  .top-voice__inner {
    padding-block: 80px;
  }
}
@media (min-width: 768px) {
  .top-voice__inner {
    padding-block: 5rem 6.25rem;
  }
}
.top-voice__inner::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0%;
  width: 6.25rem;
  height: 8.875rem;
  background: url(../img/webp/clip-person-voice-area.webp) no-repeat center center/cover;
  z-index: 1;
}
@media screen and (min-width: 376px) {
  .top-voice__inner::after {
    left: -6%;
    width: clamp(100px, 26.6vw, 200px);
    height: clamp(142px, 37.86vw, 284px);
  }
}
@media (min-width: 768px) {
  .top-voice__inner::after {
    left: -7%;
    width: 15.3125rem;
    height: 21.75rem;
  }
}

.top-voice__title {
  width: 21.3125rem;
  max-width: 100%;
  margin-inline: auto;
}
@media screen and (min-width: 376px) {
  .top-voice__title {
    width: 341px;
  }
}
@media (min-width: 768px) {
  .top-voice__title {
    width: 40.25rem;
  }
}
.top-voice__title img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.top-voice__area {
  margin-top: 4rem;
}
@media screen and (min-width: 376px) {
  .top-voice__area {
    margin-top: 64px;
  }
}
@media (min-width: 768px) {
  .top-voice__area {
    margin-top: 5rem;
  }
}

.top-voice__area-content {
  background: #94D87F;
  border-radius: 1rem;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: reverse;
  -webkit-flex-direction: column-reverse;
      -ms-flex-direction: column-reverse;
          flex-direction: column-reverse;
  position: relative;
  overflow: hidden;
  height: -webkit-fit-content;
  height: -moz-fit-content;
  height: fit-content;
}
@media screen and (min-width: 376px) {
  .top-voice__area-content {
    border-radius: 16px;
    width: 500px;
    max-width: 100%;
    margin-inline: auto;
  }
}
@media (min-width: 768px) {
  .top-voice__area-content {
    width: 100%;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-direction: row;
        -ms-flex-direction: row;
            flex-direction: row;
    border-radius: 1.25rem;
  }
}

.top-voice__area-img {
  width: 100%;
  max-width: 100%;
  margin-inline: auto;
  position: relative;
  z-index: 2;
  padding: 0.3125rem;
}
@media screen and (min-width: 376px) {
  .top-voice__area-img {
    padding: 5px;
  }
}
@media (min-width: 768px) {
  .top-voice__area-img {
    width: 23.375rem;
    padding: 0.3125rem;
  }
}
.top-voice__area-img img {
  width: 100%;
  height: 100%;
  border-radius: 0.9375rem 0.9375rem 0 0;
}
@media screen and (min-width: 376px) {
  .top-voice__area-img img {
    border-radius: 15px 15px 0 0;
  }
}
@media (min-width: 768px) {
  .top-voice__area-img img {
    border-radius: 0 0.9375rem 0.9375rem 0;
  }
}

.top-voice__area-body {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 1rem;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 1rem 1rem 2.5rem;
  -webkit-box-flex: 1;
  -webkit-flex: 1;
      -ms-flex: 1;
          flex: 1;
}
@media (min-width: 768px) {
  .top-voice__area-body {
    padding: 4rem 5.625rem 4rem 8.5rem;
    gap: 2rem;
  }
}

.top-voice__area-title {
  width: 19.5625rem;
  max-width: 100%;
  margin-inline: auto;
}
@media screen and (min-width: 376px) {
  .top-voice__area-title {
    width: 313px;
  }
}
@media (min-width: 768px) {
  .top-voice__area-title {
    width: 30rem;
    height: 2.375rem;
  }
}
.top-voice__area-title img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.top-voice__area-text {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  gap: 0.5rem;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
}
@media screen and (min-width: 376px) {
  .top-voice__area-text {
    gap: 8px;
  }
}
@media (min-width: 768px) {
  .top-voice__area-text {
    gap: 0.5rem;
    -webkit-box-pack: start;
    -webkit-justify-content: flex-start;
        -ms-flex-pack: start;
            justify-content: flex-start;
  }
}
.top-voice__area-text li {
  font-size: 0.875rem;
  font-weight: 700;
  line-height: 1;
  color: #FFF;
  background: #2698D5;
  padding: 0.375rem 1rem;
  border-radius: 6.25rem;
}
@media screen and (min-width: 376px) {
  .top-voice__area-text li {
    font-size: 14px;
    padding: 6px 16px;
    border-radius: 100px;
  }
}
@media (min-width: 768px) {
  .top-voice__area-text li {
    font-size: clamp(16px, 1.25rem, 20px);
    padding: 0.625rem 1rem;
    border-radius: 6.25rem;
  }
}
.top-voice__area-text a {
  -webkit-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
}
@media (any-hover: hover) {
  .top-voice__area-text a:hover {
    opacity: 0.6;
  }
}

.top-voice__btn {
  margin-top: 3rem;
}
@media screen and (min-width: 376px) {
  .top-voice__btn {
    margin-top: 48px;
  }
}
@media (min-width: 768px) {
  .top-voice__btn {
    margin-top: 4rem;
  }
}

.voice__content {
  position: relative;
  z-index: 0;
  width: 100%;
  max-width: 100%;
  margin-inline: auto;
}
@media (min-width: 768px) {
  .voice__content {
    width: 90rem;
  }
}
.voice__content::before {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  width: 16.0625rem;
  height: 13.9375rem;
  background: url(../img/webp/paint-white-sp.webp) no-repeat center center/cover;
  z-index: -1;
}
@media (min-width: 768px) {
  .voice__content::before {
    width: 26.9375rem;
    height: 20.25rem;
    background: url(../img/webp/paint-white-pc.webp) no-repeat center center/cover;
  }
}

.voice__items {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: (1fr)[1];
  grid-template-columns: repeat(1, 1fr);
  gap: 1.5rem;
  margin-top: 3rem;
  width: 100%;
  max-width: 100%;
  margin-inline: auto;
}
@media screen and (min-width: 376px) {
  .voice__items {
    -ms-grid-columns: (1fr)[1];
    grid-template-columns: repeat(1, 1fr);
    gap: 24px;
    margin-top: 48px;
    width: clamp(375px, 31.25rem, 500px);
  }
}
@media (min-width: 768px) {
  .voice__items {
    -ms-grid-columns: (1fr)[2];
    grid-template-columns: repeat(2, 1fr);
    gap: 3rem;
    margin-top: 4rem;
    width: 75rem;
  }
}

.voice__item {
  position: relative;
  padding: 1.5rem;
  background: #FFF;
  border-radius: 1rem;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 1rem;
}
@media screen and (min-width: 376px) {
  .voice__item {
    gap: 16px;
    padding: 24px;
    border-radius: 16px;
  }
}
@media (min-width: 768px) {
  .voice__item {
    gap: 1.5rem;
    padding: 2rem;
  }
}
.voice__item::after {
  content: "";
  position: absolute;
  display: block;
  bottom: -0.5rem;
  left: 0.5rem;
  width: 100%;
  height: 100%;
  border-radius: 1.25rem;
  z-index: -1;
  background: url(../img/webp/box-bg-pc.webp) no-repeat center center/cover;
}

.voice__item-user {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 1.5rem;
}
@media screen and (min-width: 376px) {
  .voice__item-user {
    gap: 24px;
  }
}
@media (min-width: 768px) {
  .voice__item-user {
    gap: 2.5rem;
  }
}

.voice__item-user-img {
  width: 5.625rem;
  height: 5.625rem;
  max-width: 100%;
}
@media screen and (min-width: 376px) {
  .voice__item-user-img {
    width: 90px;
    height: 90px;
  }
}
@media (min-width: 768px) {
  .voice__item-user-img {
    width: 7.5rem;
    height: 7.5rem;
  }
}
.voice__item-user-img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.voice__item-user-body {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 0.5rem;
}

.cat-area {
  font-size: 0.875rem;
  font-weight: 700;
  line-height: 1.6;
  color: #FFF;
  border-radius: 6.25rem;
  padding: 0.25rem 0.75rem;
  background: #2698D5;
  display: inline-block;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  -webkit-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
}
@media screen and (min-width: 376px) {
  .cat-area {
    font-size: 14px;
    padding: 4px 12px;
  }
}
@media (min-width: 768px) {
  .cat-area {
    padding: 0.25rem 0.75rem;
    font-size: clamp(14px, 1rem, 16px);
  }
}
@media (any-hover: hover) {
  .cat-area:hover {
    opacity: 0.6;
  }
}

.voice__item-user-name {
  font-size: 1rem;
  font-weight: 700;
  line-height: 1.6;
  color: #222;
}
@media screen and (min-width: 376px) {
  .voice__item-user-name {
    font-size: 16px;
  }
}
@media (min-width: 768px) {
  .voice__item-user-name {
    font-size: clamp(18px, 1.25rem, 20px);
  }
}

.voice__item-capture {
  background: #FDD557;
  width: 100%;
  padding: 0.625rem;
  max-width: 100%;
  margin-inline: auto;
}
@media screen and (min-width: 376px) {
  .voice__item-capture {
    padding: 10px;
  }
}
@media (min-width: 768px) {
  .voice__item-capture {
    padding: 0.625rem;
  }
}
.voice__item-capture img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.voice__item-text {
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.6;
  color: #222;
}
@media screen and (min-width: 376px) {
  .voice__item-text {
    font-size: clamp(14px, 0.875rem, 16px);
  }
}
@media (min-width: 768px) {
  .voice__item-text {
    font-size: clamp(14px, 1rem, 16px);
  }
}

.voice__item-btn {
  text-align: end;
}

.voice__item-more {
  -webkit-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
  font-size: 0.875rem;
  font-weight: 700;
  line-height: 1.6;
  position: relative;
  display: -webkit-inline-box;
  display: -webkit-inline-flex;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0.625rem;
  -webkit-box-pack: end;
  -webkit-justify-content: flex-end;
      -ms-flex-pack: end;
          justify-content: flex-end;
}
@media screen and (min-width: 376px) {
  .voice__item-more {
    font-size: clamp(14px, 0.875rem, 16px);
    gap: 10px;
  }
}
@media (min-width: 768px) {
  .voice__item-more {
    font-size: clamp(14px, 1rem, 16px);
  }
}
.voice__item-more::after {
  content: "";
  background: url(../img/svg/arrow-circle-right-bg-black.svg) no-repeat center center/contain;
  width: 1.25rem;
  height: 1.25rem;
}
@media screen and (min-width: 376px) {
  .voice__item-more::after {
    width: 20px;
    height: 20px;
  }
}
@media (min-width: 768px) {
  .voice__item-more::after {
    width: 1.875rem;
    height: 1.875rem;
  }
}
@media (any-hover: hover) {
  .voice__item-more:hover {
    opacity: 0.6;
  }
}

.top-work {
  background: url(../img/webp/top-brick-bg.webp) no-repeat top center/cover;
}
.top-work .tags-box {
  margin-top: 4rem;
}
@media screen and (min-width: 376px) {
  .top-work .tags-box {
    margin-top: 64px;
  }
}
@media (min-width: 768px) {
  .top-work .tags-box {
    margin-top: 5rem;
  }
}

.top-work__inner {
  padding-block: 5rem;
}
@media screen and (min-width: 376px) {
  .top-work__inner {
    padding-block: 80px;
  }
}
@media (min-width: 768px) {
  .top-work__inner {
    padding-block: 3.75rem 6.25rem;
  }
}

.top-work__title {
  width: 21.3125rem;
  max-width: 100%;
  margin-inline: auto;
}
@media screen and (min-width: 376px) {
  .top-work__title {
    width: 341px;
  }
}
@media (min-width: 768px) {
  .top-work__title {
    width: 46.75rem;
  }
}
.top-work__title img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.work__content {
  width: 100%;
  max-width: 100%;
  margin-inline: auto;
  margin-top: 3rem;
}
@media screen and (min-width: 376px) {
  .work__content {
    margin-top: 48px;
    width: clamp(375px, 31.25rem, 500px);
  }
}
@media (min-width: 768px) {
  .work__content {
    margin-top: 4rem;
    width: 75rem;
  }
}

.work__item {
  -webkit-box-shadow: 5px 5px 0 0 #93BBD9;
          box-shadow: 5px 5px 0 0 #93BBD9;
  padding: 1.5rem 0.84375rem;
  background: #D7EEFF;
  border-radius: 1rem;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 1.5rem;
}
@media screen and (min-width: 376px) {
  .work__item {
    padding: 24px;
    border-radius: 16px;
    gap: 24px;
  }
}
@media (min-width: 768px) {
  .work__item {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-direction: row;
        -ms-flex-direction: row;
            flex-direction: row;
    padding: 2.5rem;
    border-radius: 1.25rem;
    gap: 3rem;
  }
}

.work__items {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 1.5rem;
}
@media screen and (min-width: 376px) {
  .work__items {
    gap: 24px;
  }
}
@media (min-width: 768px) {
  .work__items {
    gap: 1.5rem;
  }
}
.work__items .date {
  font-size: 0.875rem;
  font-weight: 700;
  line-height: 1.6;
  color: #222;
}
@media screen and (min-width: 376px) {
  .work__items .date {
    font-size: clamp(14px, 0.875rem, 16px);
  }
}
@media (min-width: 768px) {
  .work__items .date {
    font-size: clamp(14px, 1rem, 16px);
  }
}

.work__item-thumbs {
  -webkit-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
  width: 100%;
  max-width: 100%;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0.625rem;
  position: relative;
}
@media screen and (min-width: 376px) {
  .work__item-thumbs {
    gap: 10px;
  }
}
@media (min-width: 768px) {
  .work__item-thumbs {
    gap: 0.625rem;
    width: 35.625rem;
  }
}
.work__item-thumbs::after {
  content: "";
  position: absolute;
  z-index: 2;
  top: 50%;
  left: 50%;
  translate: -50% -50%;
  width: 4.0625rem;
  height: 4.0625rem;
  background: url(../img/webp/before-after-arrow.webp) no-repeat center center/cover;
}
@media screen and (min-width: 376px) {
  .work__item-thumbs::after {
    width: 65px;
    height: 65px;
  }
}
@media (min-width: 768px) {
  .work__item-thumbs::after {
    width: 5rem;
    height: 4.375rem;
  }
}
@media (any-hover: hover) {
  .work__item-thumbs:hover {
    opacity: 0.6;
  }
}

.work__item-before,
.work__item-after {
  position: relative;
  overflow: hidden;
  border-radius: 1rem;
  width: 100%;
  max-width: 100%;
  aspect-ratio: 154/200;
}
@media screen and (min-width: 376px) {
  .work__item-before,
  .work__item-after {
    border-radius: 16px;
    height: -webkit-fit-content;
    height: -moz-fit-content;
    height: fit-content;
  }
}
@media (min-width: 768px) {
  .work__item-before,
  .work__item-after {
    border-radius: 1.25rem;
    aspect-ratio: 526/564;
  }
}
.work__item-before::after,
.work__item-after::after {
  content: "";
  position: absolute;
  bottom: -1.25rem;
  left: -0.9375rem;
  width: 4.0625rem;
  height: 4.0625rem;
  border-radius: 1rem;
}
@media screen and (min-width: 376px) {
  .work__item-before::after,
  .work__item-after::after {
    width: 80px;
    height: 80px;
    bottom: -20px;
    left: -15px;
  }
}
@media (min-width: 768px) {
  .work__item-before::after,
  .work__item-after::after {
    width: 8.4375rem;
    height: 8.4375rem;
    bottom: -2.8125rem;
    left: -1.25rem;
  }
}
.work__item-before img,
.work__item-after img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.work__item-before::after {
  background: url(../img/webp/before-badge.webp) no-repeat center center/cover;
}

.work__item-after::after {
  background: url(../img/webp/after-badge.webp) no-repeat center center/cover;
}

.work__item-body {
  -webkit-box-flex: 1;
  -webkit-flex: 1;
      -ms-flex: 1;
          flex: 1;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 2rem;
}
@media screen and (min-width: 376px) {
  .work__item-body {
    gap: 32px;
  }
}
@media (min-width: 768px) {
  .work__item-body {
    gap: 2rem;
  }
}

.work__item-main {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 1rem;
}
@media screen and (min-width: 376px) {
  .work__item-main {
    gap: 16px;
  }
}
@media (min-width: 768px) {
  .work__item-main {
    gap: 1rem;
  }
}

.work__item-user {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  gap: 0.75rem;
}
@media screen and (min-width: 376px) {
  .work__item-user {
    gap: 12px;
  }
}
@media (min-width: 768px) {
  .work__item-user {
    gap: 0.75rem;
  }
}

.name a,
.name span {
  -webkit-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
  font-size: 0.875rem;
  font-weight: 700;
  line-height: 1.6;
  color: #116BAF;
  padding: 0.25rem 1rem;
  background: #FFF;
  border-radius: 6.25rem;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
}
@media screen and (min-width: 376px) {
  .name a,
  .name span {
    font-size: clamp(14px, 0.875rem, 16px);
    padding: 4px 16px;
  }
}
@media (min-width: 768px) {
  .name a,
  .name span {
    font-size: clamp(16px, 1.125rem, 18px);
    padding: 0.25rem 1rem;
  }
}

.work__item-text {
  -webkit-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
  display: block;
  font-size: 0.875rem;
  font-weight: 500;
  line-height: 1.6;
  color: #222;
}
@media screen and (min-width: 376px) {
  .work__item-text {
    font-size: clamp(14px, 0.875rem, 16px);
  }
}
@media (min-width: 768px) {
  .work__item-text {
    font-size: clamp(14px, 1rem, 16px);
  }
}
@media (any-hover: hover) {
  .work__item-text:hover {
    opacity: 0.6;
  }
}

.work__item-btn {
  text-align: end;
}

.work__item-more {
  -webkit-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
  font-size: 0.875rem;
  font-weight: 700;
  line-height: 1.6;
  position: relative;
  display: -webkit-inline-box;
  display: -webkit-inline-flex;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0.625rem;
  -webkit-box-pack: end;
  -webkit-justify-content: flex-end;
      -ms-flex-pack: end;
          justify-content: flex-end;
}
@media screen and (min-width: 376px) {
  .work__item-more {
    font-size: clamp(14px, 0.875rem, 16px);
    gap: 10px;
  }
}
@media (min-width: 768px) {
  .work__item-more {
    font-size: clamp(14px, 1rem, 16px);
  }
}
.work__item-more::after {
  content: "";
  background: url(../img/svg/arrow-circle-right-bg-black.svg) no-repeat center center/contain;
  width: 1.25rem;
  height: 1.25rem;
}
@media screen and (min-width: 376px) {
  .work__item-more::after {
    width: 20px;
    height: 20px;
  }
}
@media (min-width: 768px) {
  .work__item-more::after {
    width: 1.875rem;
    height: 1.875rem;
  }
}
@media (any-hover: hover) {
  .work__item-more:hover {
    opacity: 0.6;
  }
}

.foot-tags {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  gap: 0.5rem;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
}
@media screen and (min-width: 376px) {
  .foot-tags {
    gap: 8px;
  }
}
@media (min-width: 768px) {
  .foot-tags {
    gap: 0.5rem;
    margin-top: -0.5rem;
  }
}
.foot-tags .keyword-tag a {
  font-size: 0.875rem;
  font-weight: 700;
  line-height: 1.6;
  padding: 0.25rem 0.5rem;
  border-radius: 0.375rem;
  background: #116BAF;
  color: #FFF;
  display: block;
}
@media screen and (min-width: 376px) {
  .foot-tags .keyword-tag a {
    font-size: 14px;
    padding: 4px 8px;
    border-radius: 6px;
    font-size: clamp(14px, 1rem, 16px);
  }
}
@media (min-width: 768px) {
  .foot-tags .keyword-tag a {
    font-size: 16px;
    padding: 0.25rem 0.5rem;
    border-radius: 0.375rem;
  }
}

.work__btn {
  margin-top: 3rem;
}
@media screen and (min-width: 376px) {
  .work__btn {
    margin-top: 48px;
  }
}
@media (min-width: 768px) {
  .work__btn {
    margin-top: 4rem;
  }
}

.tags-box__work {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: start;
  -webkit-align-items: flex-start;
      -ms-flex-align: start;
          align-items: flex-start;
  gap: 1.5rem;
  padding: 1.5rem 1rem;
  background: #FDD652;
  border-radius: 1rem;
}
@media screen and (min-width: 376px) {
  .tags-box__work {
    padding: 24px 16px;
    border-radius: 16px;
    gap: 24px;
  }
}
@media (min-width: 768px) {
  .tags-box__work {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-direction: row;
        -ms-flex-direction: row;
            flex-direction: row;
    gap: 3.25rem;
    padding: 3rem 4rem 3rem;
    border-radius: 1.25rem;
  }
}
.tags-box__work .tags-box__item a {
  font-size: 0.875rem;
  font-weight: 700;
  line-height: 1.6;
  color: #FFF;
  padding: 0.375rem 1rem;
  border-radius: 6.25rem;
  background: #111;
  display: block;
  -webkit-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
}
@media screen and (min-width: 376px) {
  .tags-box__work .tags-box__item a {
    font-size: 14px;
    padding: 6px 16px;
    border-radius: 100px;
  }
}
@media (min-width: 768px) {
  .tags-box__work .tags-box__item a {
    font-size: clamp(16px, 1.25rem, 20px);
    padding: 0.75rem 2rem;
    border-radius: 6.25rem;
    padding: 0.75rem 2rem;
  }
}
@media (any-hover: hover) {
  .tags-box__work .tags-box__item a:hover {
    opacity: 0.6;
  }
}
.tags-box__work .tags-box__title {
  width: 11.625rem;
  max-width: 100%;
  -webkit-box-flex: 0;
  -webkit-flex-grow: 0;
      -ms-flex-positive: 0;
          flex-grow: 0;
  -webkit-flex-shrink: 0;
      -ms-flex-negative: 0;
          flex-shrink: 0;
}
@media screen and (min-width: 376px) {
  .tags-box__work .tags-box__title {
    width: 186px;
  }
}
@media (min-width: 768px) {
  .tags-box__work .tags-box__title {
    width: 18.1875rem;
  }
}
.tags-box__work .tags-box__title img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
/*# sourceMappingURL=style.css.map */
