@charset "UTF-8";
/*
Theme Name: 
Theme URI: https://
Author: Qubic Inc
Author URI: https://qu-bic.jp
Description: 
Version: 1.0
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
*/
/*****************************

このファイルは直接変更しないでください。
CSSを変更・修正・追記したい場合は、cssファイルを作成し、そちらに記述お願いします。

こちらのファイルに記述した場合、変更が失われてしまったり、保守が困難になることもあります。
充分にお気をつけください。

*****************************/
/*****************************
フォント変数
*****************************/
/*****************************
ブレイクポイント
*****************************/
/*****************************
カラー変数
*****************************/
body {
  -webkit-text-size-adjust: 100%;
}

body.is-menu-open {
  overflow: hidden;
}

body.is-menu-open .l-header {
  background: #ffffff;
}

html {
  background: #ffffff;
  color: #262626;
  font-family: "Noto Sans JP", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", "Meiryo", "verdana", sans-serif;
  line-height: 1.75;
  font-size: min(3.846vw, 18px);
}

@media screen and (min-width: 768px) {
  html {
    font-size: min(13px + 3 * (100vw - 768px) / 672, 16px);
  }
}
#wrapper {
  width: 100%;
  margin: 0 auto;
  height: 100%;
}

@media screen and (min-width: 768px) {
  #wrapper {
    height: auto;
  }
}
section,
.section {
  width: 100%;
  height: auto;
  position: relative;
}

@media screen and (min-width: 768px) {
  a[href*="tel:"] {
    display: block;
    pointer-events: none;
    cursor: default;
    text-decoration: none;
  }
}
* {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
  word-break: break-word;
  overflow-wrap: break-word;
}

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

main {
  display: block;
}

a {
  text-decoration: none;
  color: inherit;
  display: block;
}

input,
input:focus,
textarea:focus {
  outline: 0;
  border-radius: 0;
}

input[type=text],
input[type=tel],
input[type=email],
input[type=number],
input[type=submit],
input[type=button],
input[type=date]::-webkit-inner-spin-button,
input[type=date]::-webkit-clear-button,
textarea {
  -webkit-appearance: none;
  border-radius: 0;
}

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

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

input[type=submit]::focus,
input[type=button]::focus {
  outline-offset: -2px;
}

select {
  outline: none;
  text-indent: 0.01px;
  text-overflow: "";
  background: none transparent;
  vertical-align: middle;
  font-size: inherit;
  color: inherit;
  -webkit-appearance: button;
  -moz-appearance: button;
  appearance: button;
}

select option {
  background-color: #fff;
  color: #333;
}

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

select:-moz-focusring {
  color: transparent;
  text-shadow: 0 0 0 #828c9a;
}

figure {
  margin: 0;
}

img,
picture {
  vertical-align: bottom;
  border: none;
  max-width: 100%;
  height: auto;
}

iframe {
  max-width: 100%;
  vertical-align: bottom;
}

li {
  list-style: none;
}

table {
  border-collapse: collapse;
}

.preload * {
  transition: none;
}

.l-breadcrumb {
  padding: 0.7333333333rem 0 0;
  font-size: 0.8666666667rem;
  line-height: 1.5;
  letter-spacing: 0.05em;
}

@media screen and (min-width: 768px) {
  .l-breadcrumb {
    padding: 0.75rem 0;
    font-size: 0.875rem;
    line-height: 1.9;
  }
}
.l-breadcrumb__list {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0 0.5333333333rem;
}

@media screen and (min-width: 1280px) {
  .l-breadcrumb__list {
    position: relative;
    z-index: 500;
    max-width: 37%;
  }
}
@media screen and (min-width: 1440px) {
  .l-breadcrumb__list {
    max-width: 40%;
  }
}
@media screen and (min-width: 1680px) {
  .l-breadcrumb__list {
    max-width: 45%;
  }
}
.l-breadcrumb__item {
  display: flex;
  align-items: center;
  gap: 0 0.6666666667rem;
  flex-shrink: 0;
}

.l-breadcrumb__item:last-of-type {
  flex-shrink: 1;
  min-width: 6.6666666667rem;
}

.l-breadcrumb__item:last-of-type span {
  display: inline-block;
  text-overflow: ellipsis;
  overflow: hidden;
  white-space: nowrap;
}

.l-breadcrumb__item:not(:last-of-type)::after {
  content: "";
  display: block;
  width: 0.3333333333rem;
  height: 0.5333333333rem;
  mask-image: url(./images/common/ico_nav_arrow.svg);
  mask-size: contain;
  mask-position: center center;
  mask-repeat: no-repeat;
  -webkit-mask-image: url(./images/common/ico_nav_arrow.svg);
  -webkit-mask-size: contain;
  -webkit-mask-position: center center;
  -webkit-mask-repeat: no-repeat;
  background: #262626;
  flex-shrink: 0;
}

@media screen and (min-width: 768px) {
  .l-breadcrumb__item:not(:last-of-type)::after {
    margin-top: 0.1875rem;
  }
}
.l-breadcrumb__item a {
  transition: color 0.3s;
}

@media (hover: hover) {
  .l-breadcrumb__item a:hover {
    color: #007BC7;
  }
}
.l-cta {
  padding: 3.3333333333rem 0;
  text-align: center;
  background: linear-gradient(274.64deg, #00B9EF -2.89%, #01DEF2 124.42%);
  position: relative;
  overflow: hidden;
}

.l-cta::before {
  content: "";
  display: block;
  width: 22.2rem;
  height: 20.2666666667rem;
  background: url(./images/common/cta_logo_ico.svg) no-repeat center center/contain;
  position: absolute;
  top: 1.3333333333rem;
  left: calc(50% - 13rem);
}

@media screen and (min-width: 768px) {
  .l-cta {
    padding: 3.5625rem 0;
  }
  .l-cta::before {
    width: 30.3125rem;
    height: 29.8125rem;
    top: 0;
    left: 0;
  }
}
@media screen and (min-width: 1440px) {
  .l-cta::before {
    left: calc(50% - 46.25rem);
  }
}
.l-cta__img {
  width: 12.7333333333rem;
  position: absolute;
  top: 10.0666666667rem;
  left: calc(50% + 1.8666666667rem);
}

@media screen and (min-width: 768px) {
  .l-cta__img {
    width: min(39.0625vw, 25.125rem);
    top: auto;
    bottom: 0;
    left: calc(50% + 15.625vw);
  }
}
@media screen and (min-width: 1280px) {
  .l-cta__img {
    width: 25.125rem;
    top: auto;
    bottom: 0;
    left: calc(50% + 15.6875rem);
  }
}
.l-cta__img img {
  width: 100%;
}

.l-cta__title {
  font-size: 1.6rem;
  font-weight: 700;
  color: #ffffff;
  letter-spacing: 0.1em;
  line-height: 1.5;
  position: relative;
}

@media screen and (min-width: 768px) {
  .l-cta__title {
    font-size: 1.5rem;
    line-height: 1.75;
  }
}
.l-cta__lead {
  display: inline-flex;
  flex-direction: column;
  align-items: center;
  gap: 0.5333333333rem;
  font-size: 1.2rem;
  font-weight: 700;
  line-height: 1.5;
  margin: 1rem 0 0;
  position: relative;
}

.l-cta__lead::before, .l-cta__lead::after {
  content: "";
  width: 0.2rem;
  height: 3.3333333333rem;
  display: block;
  background: #ffffff;
  position: absolute;
  bottom: 0;
}

.l-cta__lead::before {
  left: -1rem;
  transform: rotate(-15deg);
}

.l-cta__lead::after {
  right: -1rem;
  transform: rotate(20deg);
}

.l-cta__lead span {
  display: inline-block;
  background: #FFFA9A;
  padding: 0 0.8rem 0.1333333333rem;
}

@media screen and (min-width: 768px) {
  .l-cta__lead {
    font-size: 1rem;
    line-height: 1.6875;
    flex-direction: row;
    gap: 0;
    background: #FFFA9A;
    padding: 0 1rem;
    margin-top: 1.5625rem;
  }
  .l-cta__lead::before, .l-cta__lead::after {
    content: "";
    height: 1.875rem;
    bottom: -0.3125rem;
  }
  .l-cta__lead::before {
    left: -1.5625rem;
  }
  .l-cta__lead::after {
    right: -1.5625rem;
  }
  .l-cta__lead span {
    padding: 0;
    background: transparent;
  }
}
.l-cta__box {
  margin: 3.125rem auto 0;
  max-width: 25.3333333333rem;
  background: #ffffff;
  padding: 0 1.3333333333rem 2rem;
  border-radius: 1rem;
  position: relative;
}

@media screen and (min-width: 768px) {
  .l-cta__box {
    padding: 5.4375rem 3.3125rem 2.0625rem;
    border-radius: 1.25rem;
    margin-top: 5.625rem;
    max-width: 52.9375rem;
  }
}
.l-cta__list {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 0.2666666667rem;
  margin-inline: auto;
  position: relative;
  top: -1.8rem;
  width: 15.3333333333rem;
}

.l-cta__list li {
  display: flex;
  align-items: center;
  justify-content: center;
  aspect-ratio: 1;
  font-weight: 700;
  line-height: 1.4;
  letter-spacing: 0.05em;
  color: #ffffff;
  text-align: center;
  border-radius: 50%;
  background: #007BC7;
  border: 0.2rem solid #ffffff;
}

@media screen and (min-width: 768px) {
  .l-cta__list {
    position: absolute;
    top: -4.0625rem;
    left: 50%;
    transform: translateX(-50%);
    width: 34.75rem;
    grid-template-columns: repeat(4, 1fr);
    gap: 0.875rem;
  }
}
.l-fixed-buttons {
  position: fixed;
  bottom: 0;
  left: 0;
  width: 100%;
  z-index: 400;
  display: flex;
  box-shadow: 0 -2px 10px rgba(0, 0, 0, 0.1);
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transition: opacity 0.3s ease, visibility 0.3s ease;
}

@media screen and (min-width: 768px) {
  .l-fixed-buttons {
    bottom: 1.25rem;
    left: auto;
    right: 1.6875rem;
    width: 16.5625rem;
    box-shadow: 0px 0px 16.3px #D6E0EC;
    border-radius: 0.625rem;
    background: #ffffff;
    padding: 1.25rem 0.75rem;
    flex-direction: column;
    align-items: center;
    gap: 0.625rem;
  }
}
body.is-scrolled .l-fixed-buttons {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
}

body.is-at-footer .l-fixed-buttons {
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
}

.l-fixed-buttons__medal {
  display: none;
}

@media screen and (min-width: 768px) {
  .l-fixed-buttons__medal {
    display: block;
    width: 5.1875rem;
    height: 5.1875rem;
    background: #EC365A;
    color: #ffffff;
    text-align: center;
    display: flex;
    align-items: center;
    justify-content: center;
    position: absolute;
    top: -2.0625rem;
    left: -1.125rem;
    border-radius: 50%;
  }
  .l-fixed-buttons__medal p {
    font-size: 1rem;
    font-weight: 700;
    line-height: 1.4;
  }
  .l-fixed-buttons__medal p span {
    font-size: 1.375rem;
    font-weight: 700;
    line-height: 1;
  }
}
.l-fixed-buttons__head {
  display: none;
}

@media screen and (min-width: 768px) {
  .l-fixed-buttons__head {
    display: block;
    font-size: 1rem;
    font-weight: 700;
    line-height: 1.5;
    letter-spacing: 0.05em;
    text-align: center;
  }
}
.l-fixed-buttons .l-fixed-buttons__sub-text {
  font-size: 1rem;
  font-weight: 700;
  line-height: 1.4;
  display: inline-flex;
  align-items: flex-end;
  justify-content: center;
  gap: 0.5333333333rem;
}

@media screen and (min-width: 768px) {
  .l-fixed-buttons .l-fixed-buttons__sub-text {
    font-size: 0.875rem;
    align-items: center;
    gap: 0.4375rem;
  }
}
.l-fixed-buttons .l-fixed-buttons__sub-text::before, .l-fixed-buttons .l-fixed-buttons__sub-text::after {
  content: "";
  width: 0.0666666667rem;
  height: 1rem;
  background: #ffffff;
  transition: background 0.3s;
}

@media screen and (min-width: 768px) {
  .l-fixed-buttons .l-fixed-buttons__sub-text::before, .l-fixed-buttons .l-fixed-buttons__sub-text::after {
    height: 0.6875rem;
  }
}
.l-fixed-buttons .l-fixed-buttons__sub-text::before {
  transform: rotate(-25deg);
}

.l-fixed-buttons .l-fixed-buttons__sub-text::after {
  transform: rotate(25deg);
}

.l-fixed-buttons__btn {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 1rem 0 0.5333333333rem;
  transition: opacity 0.2s;
  position: relative;
  color: #ffffff;
  text-align: center;
}

@media screen and (min-width: 768px) {
  .l-fixed-buttons__btn {
    flex-direction: column;
    padding: 0.3125rem 0 0.375rem;
    border-radius: 1.875rem;
  }
}
.l-fixed-buttons__btn--tel {
  background: #00B9EF;
  flex-direction: column;
  width: 50vw;
  border-right: 1px solid #ffffff;
}

.l-fixed-buttons__btn--tel .l-fixed-buttons__baloon {
  background: url(./images/common/fixed_balloon01.webp) no-repeat center center/contain;
  width: 8.2rem;
}

@media screen and (min-width: 768px) {
  .l-fixed-buttons__btn--tel {
    width: 100%;
    padding: 0.625rem 0 0.1875rem;
  }
}
.l-fixed-buttons__btn--line {
  background: #4FC32E;
  width: 25.1282051282vw;
  border-right: 1px solid #ffffff;
}

.l-fixed-buttons__btn--line .l-fixed-buttons__sub-text {
  display: none;
}

@media screen and (min-width: 768px) {
  .l-fixed-buttons__btn--line {
    width: 100%;
    border: 1px solid #4FC32E;
    transition: background 0.3s, color 0.3s;
  }
  .l-fixed-buttons__btn--line .l-fixed-buttons__sub-text {
    display: inline-flex;
  }
}
@media screen and (min-width: 768px) and (hover: hover) {
  .l-fixed-buttons__btn--line:hover {
    background: #ffffff;
    color: #4FC32E;
  }
  .l-fixed-buttons__btn--line:hover .l-fixed-buttons__sub-text::before, .l-fixed-buttons__btn--line:hover .l-fixed-buttons__sub-text::after {
    background: #4FC32E;
  }
}
.l-fixed-buttons__btn--line .l-fixed-buttons__baloon {
  background: url(./images/common/fixed_balloon02.webp) no-repeat center center/contain;
  width: 5.2666666667rem;
  color: #4FC32E;
}

.l-fixed-buttons__btn--form {
  background: #FA8E0A;
  width: 24.8717948718vw;
}

.l-fixed-buttons__btn--form .l-fixed-buttons__sub-text {
  display: none;
}

@media screen and (min-width: 768px) {
  .l-fixed-buttons__btn--form {
    width: 100%;
    border: 1px solid #FA8E0A;
    transition: background 0.3s, color 0.3s;
  }
  .l-fixed-buttons__btn--form .l-fixed-buttons__sub-text {
    display: inline-flex;
  }
}
@media screen and (min-width: 768px) and (hover: hover) {
  .l-fixed-buttons__btn--form:hover {
    background: #ffffff;
    color: #FA8E0A;
  }
  .l-fixed-buttons__btn--form:hover .l-fixed-buttons__sub-text::before, .l-fixed-buttons__btn--form:hover .l-fixed-buttons__sub-text::after {
    background: #FA8E0A;
  }
}
.l-fixed-buttons__btn--form .l-fixed-buttons__baloon {
  background: url(./images/common/fixed_balloon03.webp) no-repeat center center/contain;
  width: 5.2666666667rem;
  color: #FA8E0A;
}

.l-fixed-buttons .l-fixed-buttons__baloon {
  position: absolute;
  top: -1rem;
  left: 50%;
  transform: translateX(-50%);
  font-size: 0.8rem;
  font-weight: 700;
  line-height: 1;
  padding: 0.5333333333rem 0 0.8666666667rem;
  text-align: center;
}

@media screen and (min-width: 768px) {
  .l-fixed-buttons .l-fixed-buttons__baloon {
    display: none;
  }
}
.l-fixed-buttons .l-fixed-buttons__num {
  font-size: 1.6rem;
  font-weight: 700;
  line-height: 1.1;
}

@media screen and (min-width: 768px) {
  .l-fixed-buttons .l-fixed-buttons__num {
    line-height: 0.7;
  }
}
.l-fixed-buttons .l-fixed-buttons__text {
  font-size: 1rem;
  font-weight: 700;
  line-height: 1.3333333333;
}

@media screen and (min-width: 768px) {
  .l-fixed-buttons .l-fixed-buttons__text {
    font-size: 1.25rem;
    line-height: 1.4;
  }
}
.l-floating {
  position: fixed;
  bottom: 0;
  left: 0;
  width: 100%;
  z-index: 400;
  box-shadow: 0 -2px 10px rgba(0, 0, 0, 0.1);
}

@media screen and (min-width: 768px) {
  .l-floating {
    display: none;
  }
}
.l-floating__inner {
  display: flex;
  align-items: stretch;
  justify-content: center;
  gap: 0;
  background: #ffffff;
}

.l-floating__btn {
  flex: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0.8rem 0.5333333333rem;
  font-size: 0.8rem;
  font-weight: 700;
  font-family: "Noto Sans JP", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", "Meiryo", "verdana", sans-serif;
  color: #ffffff;
  text-decoration: none;
  transition: opacity 0.2s;
}

.l-floating__btn:active {
  opacity: 0.9;
}

.l-floating__btn--tel {
  background: #007BC7;
}

.l-floating__btn--line {
  background: #4FC32E;
}

.l-floating__btn--form {
  background: #FF9F2A;
}

.l-footer__main {
  padding: 3rem 0 2.6666666667rem;
}

@media screen and (min-width: 768px) {
  .l-footer__main {
    padding: 4.875rem 0;
  }
}
.l-footer__sitemap-title {
  font-family: "Montserrat", sans-serif;
  font-weight: 600;
  font-size: 1.6rem;
  letter-spacing: 0.05em;
  color: #007BC7;
}

@media screen and (min-width: 768px) {
  .l-footer__sitemap-accordion {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    margin: 1.875rem 0 0;
    gap: 1.875rem 0;
  }
}
@media screen and (min-width: 768px) {
  .l-footer__accordion-item {
    border-left: 1px solid #007BC7;
    padding: 0 1.875rem;
  }
}
.l-footer__accordion-head {
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: space-between;
  font-family: inherit;
  font-weight: 700;
  font-size: 1.2rem;
  line-height: 1.5;
  letter-spacing: 0.1em;
  color: #262626;
  text-align: left;
  background: transparent;
  border: none;
  border-bottom: 1px solid #007BC7;
  cursor: pointer;
  appearance: none;
  padding: 1.3333333333rem 2.6666666667rem 1.3333333333rem 0;
  position: relative;
}

@media screen and (min-width: 768px) {
  .l-footer__accordion-head {
    cursor: default;
    font-size: 1.25rem;
    line-height: 1.75;
    letter-spacing: 0;
    padding: 0;
    border: none;
  }
}
.l-footer__accordion-icon {
  width: 1.6rem;
  height: 1.6rem;
  flex-shrink: 0;
  position: absolute;
  top: 50%;
  right: 0;
  transform: translateY(-50%);
  transition: transform 0.25s ease;
  pointer-events: none;
}

@media screen and (min-width: 768px) {
  .l-footer__accordion-icon {
    display: none;
  }
}
.l-footer__accordion-icon::before, .l-footer__accordion-icon::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  background: #007BC7;
  transition: transform 0.25s ease;
}

.l-footer__accordion-icon::before {
  width: 14px;
  height: 2px;
  margin-left: -7px;
  margin-top: -1px;
}

.l-footer__accordion-icon::after {
  width: 2px;
  height: 14px;
  margin-left: -1px;
  margin-top: -7px;
}

.js-accordion-item.is-open .l-footer__accordion-icon::after {
  transform: rotate(90deg);
}

.l-footer__accordion-body {
  margin: 1.3333333333rem 0 0;
}

.l-footer__accordion-body.js-accordion-body {
  display: none;
}

@media screen and (min-width: 768px) {
  .l-footer__accordion-body.js-accordion-body {
    display: block !important;
  }
}
.l-footer__accordion-list {
  display: flex;
  flex-direction: column;
  gap: 1rem;
}

@media screen and (min-width: 768px) {
  .l-footer__accordion-list {
    gap: 0;
  }
}
.l-footer__accordion-list a {
  font-weight: 700;
  font-size: 1rem;
  line-height: 1.7;
  letter-spacing: 0.05em;
  transition: color 0.3s;
}

@media screen and (min-width: 768px) {
  .l-footer__accordion-list a {
    font-weight: 500;
    font-size: 1rem;
    line-height: 2.5;
    position: relative;
    display: inline-block;
  }
  .l-footer__accordion-list a::after {
    content: "";
    display: block;
    width: 0;
    height: 0.0666666667rem;
    background: #007BC7;
    position: absolute;
    bottom: 0;
    left: 0;
    transition: width 0.3s;
  }
}
@media screen and (min-width: 768px) and (hover: hover) {
  .l-footer__accordion-list a:hover {
    color: #007BC7;
  }
  .l-footer__accordion-list a:hover::after {
    width: 100%;
  }
}
.l-footer__related {
  margin: 2.6666666667rem 0 0;
}

@media screen and (min-width: 768px) {
  .l-footer__related {
    margin-top: 3.75rem;
  }
}
.l-footer__related-title {
  font-weight: 700;
  font-size: 1.6rem;
  line-height: 1.5;
  letter-spacing: 0.1em;
  color: #007BC7;
}

@media screen and (min-width: 768px) {
  .l-footer__related-title {
    font-size: 1.5rem;
    line-height: 1.75;
  }
}
.l-footer__related-list {
  display: flex;
  flex-direction: column;
  gap: 1rem;
  margin: 1.3333333333rem 0 0;
}

@media screen and (min-width: 768px) {
  .l-footer__related-list {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    align-items: center;
    gap: 1.25rem 3.75rem;
    margin-top: 1.875rem;
  }
}
.l-footer__related-list a {
  font-weight: 700;
  font-size: 1.2rem;
  line-height: 1.7;
  letter-spacing: 0.05em;
}

@media screen and (min-width: 768px) {
  .l-footer__related-list a {
    font-size: 1rem;
    line-height: 2;
    transition: color 0.3s;
    position: relative;
    display: inline-block;
  }
  .l-footer__related-list a::after {
    content: "";
    display: block;
    width: 0;
    height: 0.0666666667rem;
    background: #007BC7;
    position: absolute;
    bottom: 0;
    left: 0;
    transition: width 0.3s;
  }
}
@media screen and (min-width: 768px) and (hover: hover) {
  .l-footer__related-list a:hover {
    color: #007BC7;
  }
  .l-footer__related-list a:hover::after {
    width: 100%;
  }
}
.l-footer__company {
  background: #007BC7;
  color: #ffffff;
  padding: 2.5333333333rem 0 2.6666666667rem;
}

@media screen and (min-width: 768px) {
  .l-footer__company {
    padding: 3.875rem 0 2.5rem;
  }
}
.l-footer__inner {
  width: 100%;
  margin-inline: auto;
  padding: 0 2rem;
  display: flex;
  flex-direction: column;
  gap: 2rem;
}

@media screen and (min-width: 768px) {
  .l-footer__inner {
    width: min(90%, 1280px);
    padding: 0;
    flex-direction: row;
    align-items: flex-end;
    justify-content: space-between;
  }
}
.l-footer__company-name {
  font-weight: 700;
  font-size: 1.6rem;
  letter-spacing: 0.1em;
}

.l-footer__company-address {
  font-weight: 500;
  line-height: 1.6;
  letter-spacing: 0.05em;
  margin: 0.6666666667rem 0 0;
}

@media screen and (min-width: 768px) {
  .l-footer__company-address {
    line-height: 1.9;
  }
  .l-footer__company-address span {
    display: inline-block;
  }
}
.l-footer__company-badges {
  display: flex;
  flex-direction: column;
  gap: 0.6666666667rem;
  margin: 1.2rem 0 0;
}

@media screen and (min-width: 768px) {
  .l-footer__company-badges {
    flex-direction: row;
    margin: 0;
    gap: 0.625rem;
  }
}
.l-footer__badge {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 5.3333333333rem;
  border: 1px solid #ffffff;
  font-weight: 500;
  line-height: 1.6;
  letter-spacing: 0.05em;
}

@media screen and (min-width: 768px) {
  .l-footer__badge {
    padding: 0.625rem;
    font-size: 1rem;
    line-height: 1.9;
    height: 5rem;
    text-align: center;
    white-space: nowrap;
  }
}
.l-footer__copyright {
  background: #262626;
  color: #ffffff;
  padding: 0.5333333333rem;
  text-align: center;
}

@media screen and (min-width: 768px) {
  .l-footer__copyright {
    padding: 0.3125rem;
  }
}
.l-footer__copyright-text {
  font-weight: 500;
  font-size: 1rem;
  line-height: 1.6;
  letter-spacing: 0.05em;
}

@media screen and (min-width: 768px) {
  .l-footer__copyright-text {
    font-size: 1rem;
    line-height: 1.9;
  }
}
.l-header {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 500;
  margin-top: 4.0666666667rem;
  transition: margin-top 0.3s, background 0.3s;
}

.l-header.is-scroll {
  background: #ffffff;
  margin-top: 0;
}

.l-header.is-scroll .l-header__nav {
  height: calc(100vh - 3.5333333333rem);
  top: 3.5333333333rem;
}

@media screen and (min-width: 768px) {
  .l-header {
    position: absolute;
    margin-top: 0;
  }
}
.l-header__inner {
  padding: 0.6666666667rem 1rem;
  display: flex;
  align-items: center;
  justify-content: space-between;
}

@media screen and (min-width: 768px) {
  .l-header__inner {
    padding: 1.5625rem 0.9375rem;
    max-width: 1920px;
    margin-inline: auto;
    display: block;
  }
}
@media screen and (min-width: 1680px) {
  .l-header__inner {
    padding: 2.1875rem 3.125rem;
  }
}
.l-header__wrap {
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 100%;
}

@media screen and (min-width: 1680px) {
  .l-header__wrap {
    padding-right: min(1.5625vw, 1.875rem);
  }
}
.l-header__logo {
  display: flex;
  align-items: center;
}

@media screen and (min-width: 768px) {
  .l-header__logo {
    flex-direction: row-reverse;
  }
}
.l-header__logo a {
  width: 10.1333333333rem;
  display: block;
}

@media screen and (min-width: 768px) {
  .l-header__logo a {
    width: 16.0625rem;
  }
}
.l-header__logo a img {
  display: block;
  width: 100%;
  height: auto;
  object-fit: contain;
}

.l-header__text {
  position: absolute;
  top: -4.0666666667rem;
  left: 0;
  width: 100%;
  height: 4.0666666667rem;
  background: #F2F8FF;
  padding: 0.4666666667rem 1rem;
  font-size: 1rem;
  font-weight: 500;
  line-height: 1.6;
  display: flex;
  align-items: center;
}

.l-header__text--white {
  background: #ffffff;
}

@media screen and (min-width: 768px) {
  .l-header__text {
    position: static;
    width: auto;
    height: 2.8125rem;
    background: transparent;
    padding: 0 0.625rem;
    font-size: min(1.3020833333vw, 0.9375rem);
    font-weight: 700;
    letter-spacing: 0.05em;
  }
}
@media screen and (min-width: 1280px) {
  .l-header__text {
    font-size: 1rem;
    margin-top: 0.625rem;
  }
}
.l-header__nav {
  position: fixed;
  top: 7.6rem;
  right: -100%;
  width: 100%;
  height: calc(100vh - 7.6rem);
  background: #ffffff;
  padding: 1.5333333333rem 0 4rem;
  transition: right 0.3s;
  overflow-y: auto;
}

@media screen and (min-width: 768px) {
  .l-header__nav {
    position: relative;
    top: 0;
    right: auto;
    width: fit-content;
    max-width: 50rem;
    height: auto;
    padding: 0 min(8.875%, 3.125rem);
    background: #F8FBFF;
    border-radius: 0.625rem;
    margin: 1.875rem 0 0 auto;
    overflow: visible;
  }
}
.l-header__nav[aria-hidden=false] {
  right: 0;
}

@media screen and (min-width: 768px) {
  .l-header__nav-list {
    display: flex;
    align-items: center;
  }
}
.l-header__nav-item {
  border-bottom: 1px solid #007BC7;
}

@media screen and (min-width: 768px) {
  .l-header__nav-item {
    border-bottom: none;
  }
  .l-header__nav-item:first-child .l-header__nav-item-head::before {
    display: none;
  }
}
.l-header__nav-item a {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 1.3333333333rem 1.6666666667rem;
  font-size: 1rem;
  font-weight: 700;
  line-height: 1.7;
  letter-spacing: 0.05em;
}

.l-header__nav-item a::after {
  content: "";
  display: block;
  width: 0.8666666667rem;
  height: 0.8666666667rem;
  background: url(./images/common/ico_nav_arrow.svg) no-repeat center center/contain;
}

@media screen and (min-width: 768px) {
  .l-header__nav-item a {
    padding: 0.625rem 1.25rem;
    font-size: 1rem;
    font-weight: 500;
    line-height: 1.9;
    transition: color 0.3s;
    position: relative;
  }
  .l-header__nav-item a::after {
    display: none;
  }
  .l-header__nav-item a::before {
    content: "";
    width: 0.0625rem;
    height: 0.75rem;
    background: #262626;
    position: absolute;
    top: 50%;
    left: 0;
    transform: translateY(-50%);
  }
}
@media (hover: hover) {
  .l-header__nav-item a:hover {
    color: #007BC7;
  }
}
@media screen and (min-width: 768px) {
  .l-header__nav-item--has-sub:hover .l-header__submenu {
    visibility: visible;
    opacity: 1;
  }
}
.l-header__nav-item-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 100%;
  padding: 1.3333333333rem 1.6666666667rem;
  border: none;
  background: transparent;
  cursor: pointer;
  font-family: inherit;
  font-size: inherit;
  font-weight: inherit;
  color: inherit;
  text-align: left;
  appearance: none;
}

@media screen and (min-width: 768px) {
  .l-header__nav-item-head {
    padding: 1.25rem;
    transition: color 0.3s;
    position: relative;
  }
  .l-header__nav-item-head::before {
    content: "";
    width: 0.0625rem;
    height: 0.75rem;
    background: #262626;
    position: absolute;
    top: 50%;
    left: 0;
    transform: translateY(-50%);
  }
}
@media screen and (min-width: 768px) and (hover: hover) {
  .l-header__nav-item-head:hover {
    color: #007BC7;
  }
}
.l-header__nav-item-label {
  font-size: 1rem;
  font-weight: 700;
}

@media screen and (min-width: 768px) {
  .l-header__nav-item-label {
    font-size: 1rem;
    font-weight: 500;
    line-height: 1.9;
  }
}
.l-header__submenu-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  width: 0.9333333333rem;
  height: 0.9333333333rem;
  position: relative;
}

.l-header__submenu-icon::before, .l-header__submenu-icon::after {
  content: "";
  display: block;
  width: 100%;
  height: 0.1333333333rem;
  background: #007BC7;
}

.l-header__submenu-icon::after {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%) rotate(90deg);
  transition: transform 0.3s;
}

@media screen and (min-width: 768px) {
  .l-header__submenu-icon {
    display: none;
  }
}
.l-header__nav-item-head[aria-expanded=true] .l-header__submenu-icon::after {
  transform: translate(-50%, -50%) rotate(180deg);
}

.l-header__submenu.js-accordion-body {
  display: none;
}

@media screen and (min-width: 768px) {
  .l-header__submenu.js-accordion-body {
    display: flex;
  }
}
@media screen and (min-width: 768px) {
  .l-header__submenu {
    position: absolute;
    top: 100%;
    right: 0;
    justify-content: center;
    align-items: center;
    gap: 1.25rem;
    width: min(94.7916666667vw, 113.75rem);
    padding: 1.875rem 0.9375rem;
    box-shadow: 0 0 16.3px #D6E0EC;
    border-radius: 0.625rem;
    background: #ffffff;
    visibility: hidden;
    opacity: 0;
    transition: opacity 0.2s, visibility 0.2s;
    z-index: 10;
  }
}
.l-header__submenu li {
  border-bottom: 1px solid rgba(0, 123, 199, 0.2);
}

@media screen and (min-width: 768px) {
  .l-header__submenu li {
    border-bottom: none;
    width: 14.5604395604%;
  }
}
.l-header__submenu a {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 0.6666666667rem 1.6666666667rem 0.6666666667rem 3rem;
  font-size: 1rem;
  font-weight: 500;
  line-height: 2;
  letter-spacing: 0.05em;
}

.l-header__submenu a figure {
  display: none;
}

.l-header__submenu a::after {
  content: "";
  display: block;
  width: 0.8666666667rem;
  height: 0.8666666667rem;
  background: url(./images/common/ico_nav_arrow.svg) no-repeat center center/contain;
}

@media screen and (min-width: 768px) {
  .l-header__submenu a {
    padding: 0;
    font-size: min(1.3020833333vw, 1.125rem);
    line-height: 1.75;
    letter-spacing: 0.1em;
    color: #007BC7;
    white-space: nowrap;
    transition: color 0.3s;
    flex-direction: column;
    justify-content: flex-start;
    gap: 0.625rem;
  }
  .l-header__submenu a figure {
    display: block;
    border-radius: 1.25rem;
    overflow: hidden;
    border: 0.1875rem solid transparent;
    transition: border-color 0.3s;
  }
  .l-header__submenu a figure img {
    width: 100%;
    height: auto;
    object-fit: cover;
    aspect-ratio: 265/180;
  }
  .l-header__submenu a::before, .l-header__submenu a::after {
    display: none;
  }
}
@media (hover: hover) {
  .l-header__submenu a:hover {
    color: #00B9EF;
  }
  .l-header__submenu a:hover figure {
    border-color: #00B9EF;
  }
}
.l-header__nav-buttons {
  margin: 2.6666666667rem 0 0;
}

.l-header__menubtn {
  width: 2.2rem;
  height: 2.2rem;
  position: relative;
  background: transparent;
  border: none;
  cursor: pointer;
  padding: 0;
}

@media screen and (min-width: 768px) {
  .l-header__menubtn {
    display: none;
  }
}
.l-header__menubtn span {
  position: absolute;
  top: 50%;
  left: 50%;
  background: #007BC7;
  width: 25px;
  height: 2px;
  transition: 0.3s;
}

.l-header__menubtn span:nth-of-type(1) {
  transform: translate(-50%, -50%) translateY(-6px);
}

.l-header__menubtn span:nth-of-type(2) {
  transform: translate(-50%, -50%);
}

.l-header__menubtn span:nth-of-type(3) {
  transform: translate(-50%, -50%) translateY(6px);
}

.l-header__menubtn[aria-expanded=true] span:nth-of-type(1) {
  transform: translate(-50%, -50%) rotate(45deg);
}

.l-header__menubtn[aria-expanded=true] span:nth-of-type(2) {
  opacity: 0;
}

.l-header__menubtn[aria-expanded=true] span:nth-of-type(3) {
  transform: translate(-50%, -50%) rotate(-45deg);
}

.l-inner {
  margin-inline: auto;
  width: min(100% - 2rem, 650px);
}

@media screen and (min-width: 768px) {
  .l-inner {
    width: min(90%, 1280px);
  }
}
.l-inner__wide {
  margin-inline: auto;
  width: min(100% - 2rem);
}

@media screen and (min-width: 768px) {
  .l-inner__wide {
    width: min(95%, 1680px);
  }
}
.l-inner__md {
  margin-inline: auto;
  width: min(100% - 2rem, 650px);
}

@media screen and (min-width: 768px) {
  .l-inner__md {
    width: min(90%, 1080px);
  }
}
.l-inner__sm {
  margin-inline: auto;
  width: min(100% - 2rem, 650px);
}

@media screen and (min-width: 768px) {
  .l-inner__sm {
    width: min(90%, 960px);
  }
}
.l-lower-mv {
  background: #ffffff;
  padding: 8rem 0 0;
}

.l-lower-mv--noimage .l-lower-mv__inner {
  height: 38.8888888889vw;
  background: #F2F8FF;
  border-radius: 1.3333333333rem;
}

@media screen and (min-width: 768px) {
  .l-lower-mv--noimage .l-lower-mv__inner {
    height: 20.9375rem;
    mask-image: url(./images/common/lower_mv_mask02.webp);
    mask-size: cover;
    mask-position: center right;
    mask-repeat: no-repeat;
    -webkit-mask-image: url(./images/common/lower_mv_mask02.webp);
    -webkit-mask-size: cover;
    -webkit-mask-position: center right;
    -webkit-mask-repeat: no-repeat;
  }
}
.l-lower-mv--noimage .l-lower-mv__title {
  line-height: 1.5;
  letter-spacing: 0.1em;
  text-align: center;
}

@media screen and (min-width: 768px) {
  .l-lower-mv--noimage .l-lower-mv__title {
    text-align: left;
    font-size: min(5.859375vw, 4rem);
    width: min(90%, 1600px);
    top: 60%;
  }
}
@media screen and (min-width: 1024px) {
  .l-lower-mv--noimage .l-lower-mv__title {
    top: 50%;
  }
}
.l-lower-mv--contact .l-lower-mv__title {
  font-size: 1.3333333333rem;
}

@media screen and (min-width: 768px) {
  .l-lower-mv--contact .l-lower-mv__title {
    font-size: min(4.1666666667vw, 4rem);
    line-height: 1.5;
    letter-spacing: 0.1em;
  }
}
.l-lower-mv--example .l-lower-mv__title {
  text-shadow: rgb(255, 255, 255) 2px 0px 0px, rgb(255, 255, 255) 1.75517px 0.958851px 0px, rgb(255, 255, 255) 1.0806px 1.68294px 0px, rgb(255, 255, 255) 0.141474px 1.99499px 0px, rgb(255, 255, 255) -0.832294px 1.81859px 0px, rgb(255, 255, 255) -1.60229px 1.19694px 0px, rgb(255, 255, 255) -1.97998px 0.28224px 0px, rgb(255, 255, 255) -1.87291px -0.701566px 0px, rgb(255, 255, 255) -1.30729px -1.5136px 0px, rgb(255, 255, 255) -0.421592px -1.95506px 0px, rgb(255, 255, 255) 0.567324px -1.91785px 0px, rgb(255, 255, 255) 1.41734px -1.41108px 0px, rgb(255, 255, 255) 1.92034px -0.558831px 0px;
}

@media screen and (min-width: 768px) {
  .l-lower-mv--example .l-lower-mv__title {
    text-shadow: rgb(255, 255, 255) 4px 0px 0px, rgb(255, 255, 255) 3.87565px 0.989616px 0px, rgb(255, 255, 255) 3.51033px 1.9177px 0px, rgb(255, 255, 255) 2.92676px 2.72656px 0px, rgb(255, 255, 255) 2.16121px 3.36588px 0px, rgb(255, 255, 255) 1.26129px 3.79594px 0px, rgb(255, 255, 255) 0.282949px 3.98998px 0px, rgb(255, 255, 255) -0.712984px 3.93594px 0px, rgb(255, 255, 255) -1.66459px 3.63719px 0px, rgb(255, 255, 255) -2.51269px 3.11229px 0px, rgb(255, 255, 255) -3.20457px 2.39389px 0px, rgb(255, 255, 255) -3.69721px 1.52664px 0px, rgb(255, 255, 255) -3.95997px 0.56448px 0px, rgb(255, 255, 255) -3.97652px -0.432781px 0px, rgb(255, 255, 255) -3.74583px -1.40313px 0px, rgb(255, 255, 255) -3.28224px -2.28625px 0px, rgb(255, 255, 255) -2.61457px -3.02721px 0px, rgb(255, 255, 255) -1.78435px -3.57996px 0px, rgb(255, 255, 255) -0.843183px -3.91012px 0px, rgb(255, 255, 255) 0.150409px -3.99717px 0px, rgb(255, 255, 255) 1.13465px -3.8357px 0px, rgb(255, 255, 255) 2.04834px -3.43574px 0px, rgb(255, 255, 255) 2.83468px -2.82216px 0px, rgb(255, 255, 255) 3.44477px -2.03312px 0px, rgb(255, 255, 255) 3.84068px -1.11766px 0px, rgb(255, 255, 255) 3.9978px -0.132717px 0px;
  }
}
.l-lower-mv--404 .l-lower-mv__title {
  font-size: 1.3333333333rem;
  letter-spacing: 0.05em;
}

@media screen and (min-width: 768px) {
  .l-lower-mv {
    padding: min(10.4166666667vw, 8.125rem) 0 0;
  }
  .l-lower-mv--area .l-lower-mv__img::before {
    display: none;
  }
  .l-lower-mv--404 .l-lower-mv__title {
    font-size: min(5.2083333333vw, 4rem);
    letter-spacing: 0.1em;
  }
}
.l-lower-mv__inner {
  position: relative;
  margin-inline: auto;
  width: calc(100% - 2rem);
  height: 53.8888888889vw;
  display: flex;
  align-items: center;
}

@media screen and (min-width: 768px) {
  .l-lower-mv__inner {
    width: calc(100% - 1.875rem);
    height: 33.5rem;
  }
}
@media screen and (min-width: 1680px) {
  .l-lower-mv__inner {
    width: calc(100% - 6.25rem);
  }
}
.l-lower-mv__img {
  width: 100%;
  height: 100%;
  border-radius: 1.3333333333rem;
  overflow: hidden;
}

@media screen and (min-width: 768px) {
  .l-lower-mv__img {
    border-radius: 3.75rem;
    mask-image: url(./images/common/lower_mv_mask.webp);
    mask-size: cover;
    mask-position: center right;
    mask-repeat: no-repeat;
    -webkit-mask-image: url(./images/common/lower_mv_mask.webp);
    -webkit-mask-size: cover;
    -webkit-mask-position: center right;
    -webkit-mask-repeat: no-repeat;
    position: relative;
  }
  .l-lower-mv__img::before {
    content: "";
    width: 45.0549450549%;
    height: 133.5820895522%;
    z-index: 1;
    position: absolute;
    left: -1.3736263736%;
    top: 8.5820895522%;
    background: linear-gradient(90deg, #FFFFFF 29.33%, rgba(255, 255, 255, 0) 101.71%);
    opacity: 0.75;
    filter: blur(78.3px);
  }
}
.l-lower-mv__img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  aspect-ratio: 360/194;
}

@media screen and (min-width: 768px) {
  .l-lower-mv__img img {
    aspect-ratio: 1820/536;
  }
}
.l-lower-mv__title {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: min(90%, 1582px);
  z-index: 2;
  color: #007BC7;
  font-family: "M PLUS 1p", sans-serif;
  font-size: 1.6rem;
  font-weight: 500;
  line-height: 1.5;
  letter-spacing: 0.05em;
  font-family: "M PLUS 1p", sans-serif;
}

@media screen and (min-width: 768px) {
  .l-lower-mv__title {
    font-size: 4rem;
    letter-spacing: 0.1em;
  }
}
.l-service-mv {
  position: relative;
  overflow-x: clip;
  background: #F2F8FF;
  padding: 8.2666666667rem 0 2.6666666667rem;
  display: flex;
  flex-direction: column;
}

@media screen and (min-width: 768px) {
  .l-service-mv {
    padding: 13.125rem 0 3.75rem;
    display: block;
  }
  .l-service-mv--dust .l-service-mv__title::after, .l-service-mv--ihin .l-service-mv__title::after {
    background: url(./images/common/service_mv_title_bg.svg) no-repeat center center/contain;
    top: 40%;
    width: clamp(130px, 15.46875vw, 18.5625rem);
    height: clamp(130px, 16.1458333333vw, 19.375rem);
  }
  .l-service-mv--dust .l-service-mv__content {
    margin-bottom: min(1.09375vw, 1.3125rem);
  }
  .l-service-mv--seizenseiri .l-service-mv__content {
    margin-bottom: min(1.9270833333vw, 2.3125rem);
  }
  .l-service-mv--tokusyu .l-service-mv__content, .l-service-mv--akiya .l-service-mv__content, .l-service-mv--kaitori .l-service-mv__content {
    margin-bottom: min(2.8645833333vw, 3.4375rem);
  }
}
@media screen and (min-width: 1440px) {
  .l-service-mv {
    padding: 6.5625rem 0 3.75rem;
    display: block;
  }
}
@media screen and (min-width: 1680px) {
  .l-service-mv {
    padding: 7.125rem 0 3.75rem;
  }
}
.l-service-mv__inner {
  position: relative;
  z-index: 2;
  margin-inline: auto;
  width: min(100% - 2rem, 650px);
}

@media screen and (min-width: 768px) {
  .l-service-mv__inner {
    width: min(95%, 1680px);
    display: flex;
    flex-direction: row-reverse;
    align-items: flex-end;
  }
}
.l-service-mv__img {
  position: relative;
  z-index: 1;
  width: 96.1538461538vw;
  margin: 0 calc(50% - 50vw) 0 auto;
  aspect-ratio: 375/194;
}

.l-service-mv__img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: 1.3333333333rem 0 0 1.3333333333rem;
}

@media screen and (min-width: 768px) {
  .l-service-mv__img {
    width: 50vw;
  }
  .l-service-mv__img img {
    border-radius: 2.5rem 0 0 2.5rem;
    aspect-ratio: 1021/476;
  }
}
@media screen and (min-width: 1024px) {
  .l-service-mv__img {
    width: 53.1770833333vw;
  }
}
.l-service-mv__content {
  text-align: center;
  margin: -1.4666666667rem 0 0;
  position: relative;
  z-index: 2;
}

@media screen and (min-width: 768px) {
  .l-service-mv__content {
    width: 47%;
  }
}
@media screen and (min-width: 1024px) {
  .l-service-mv__content {
    width: 44.0476190476%;
  }
}
.l-service-mv__badge {
  display: inline-block;
  background: #007BC7;
  color: #ffffff;
  padding: 0.1333333333rem 1.5333333333rem 0.2rem;
  border-radius: 1.6666666667rem;
  font-size: 1.6rem;
  font-weight: 500;
  font-family: "M PLUS 1p", sans-serif;
  letter-spacing: 0.05em;
  line-height: 1.5;
}

@media screen and (min-width: 768px) {
  .l-service-mv__badge {
    padding: 0.0666666667rem min(2.3958333333vw, 2.875rem);
    border-radius: 1.5625rem;
    font-size: min(1.4583333333vw, 1.75rem);
    line-height: 1.75;
  }
}
.l-service-mv__title {
  font-family: "M PLUS 1p", sans-serif;
  font-weight: 500;
  font-size: 1.6rem;
  line-height: 1.5;
  letter-spacing: 0.05em;
  color: #007BC7;
  margin: 0.6rem 0 0;
  position: relative;
}

.l-service-mv__title::after {
  content: "";
  display: block;
  width: 10.8rem;
  height: 10.8rem;
  background: url(./images/common/service_mv_title_bg.svg) no-repeat center center/contain;
  position: absolute;
  top: -1.8rem;
  left: 50%;
  transform: translateX(-50%);
  z-index: -1;
}

@media screen and (min-width: 768px) {
  .l-service-mv__title {
    font-size: clamp(21px, 2.5vw, 3rem);
    letter-spacing: 0.1em;
    background: #F2F8FF;
    margin-top: 0.8125rem;
  }
  .l-service-mv__title::after {
    width: clamp(130px, 12.5520833333vw, 15.0625rem);
    height: clamp(130px, 12.5520833333vw, 15.0625rem);
    top: 25%;
    left: 50%;
    transform: translate(-50%, -50%);
    background: url(./images/seizenseiri/service_mv_title_bg.svg) no-repeat center center/contain;
  }
}
.l-service-mv__orange {
  color: #FF9F2A;
  background: #F2F8FF;
}

@media screen and (min-width: 768px) {
  .l-service-mv__sm {
    font-size: min(2.0833333333vw, 2.5rem);
    letter-spacing: 0.1em;
  }
}
.l-service-mv__price-box {
  display: flex;
  border: 2px solid #00B9EF;
  border-radius: 0.3333333333rem;
  overflow: hidden;
  margin: 3.2rem auto 0;
  width: 24rem;
}

@media screen and (min-width: 768px) {
  .l-service-mv__price-box {
    margin: clamp(45px, 4.53125vw, 5.4375rem) auto 0;
    width: clamp(230px, 19.4791666667vw, 23.375rem);
  }
}
.l-service-mv__price-label {
  background: #00B9EF;
  color: #ffffff;
  padding: 0.6rem;
  font-size: 1.2rem;
  font-weight: 700;
  line-height: 2;
  letter-spacing: 0.1em;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 25.2808988764%;
  flex-shrink: 0;
}

@media screen and (min-width: 768px) {
  .l-service-mv__price-label {
    padding: min(0.8333333333vw, 1rem);
    font-size: clamp(10px, 0.8333333333vw, 1rem);
    width: 32%;
  }
}
@media screen and (min-width: 1024px) {
  .l-service-mv__price-label {
    width: 25.935828877%;
  }
}
.l-service-mv__price {
  background: #ffffff;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 75%;
  padding: 1.5333333333rem 1.3333333333rem 1.1333333333rem;
}

.l-service-mv__price img {
  width: 13rem;
  object-fit: contain;
}

@media screen and (min-width: 768px) {
  .l-service-mv__price {
    padding: 1.25rem 0 0.6875rem;
    width: 74.3315508021%;
  }
  .l-service-mv__price img {
    width: 86.690647482%;
  }
}
.l-service-mv__text {
  margin: 3.2rem 0 0;
  font-weight: 700;
  line-height: 1.7;
  letter-spacing: 0.05em;
}

@media screen and (min-width: 768px) {
  .l-service-mv__text {
    margin-top: clamp(45px, 4.4270833333vw, 5.3125rem);
    font-size: clamp(13px, 1.25vw, 1.5rem);
    line-height: 1.75;
    letter-spacing: 0.1em;
  }
}
.c-area-list__item {
  border: 2px solid #007BC7;
  border-radius: 0.5333333333rem;
  overflow: hidden;
}

@media screen and (min-width: 768px) {
  .c-area-list__item {
    border-radius: 0.625rem;
  }
}
.c-area-list__region-summary {
  width: 100%;
  padding: 0.5333333333rem;
  font-size: 1rem;
  font-weight: 700;
  line-height: 1.6;
  letter-spacing: 0.2em;
  font-family: "Noto Sans JP", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", "Meiryo", "verdana", sans-serif;
  color: #007BC7;
  text-align: center;
  background: #F2FCFF;
  border: none;
  cursor: pointer;
  appearance: none;
  position: relative;
}

@media screen and (min-width: 768px) {
  .c-area-list__region-summary {
    padding: 0.75rem;
    font-size: 1.125rem;
    font-weight: 500;
    line-height: 1.75;
    letter-spacing: 0.1em;
  }
}
.c-area-list__region-icon {
  width: 1.6rem;
  height: 1.6rem;
  position: absolute;
  top: 50%;
  right: 1rem;
  transform: translateY(-50%);
  transition: transform 0.25s ease;
}

.c-area-list__region-icon::before, .c-area-list__region-icon::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  background: #007BC7;
  transition: transform 0.25s ease;
}

.c-area-list__region-icon::before {
  width: 14px;
  height: 2px;
  margin-left: -7px;
  margin-top: -1px;
}

.c-area-list__region-icon::after {
  width: 2px;
  height: 14px;
  margin-left: -1px;
  margin-top: -7px;
}

.js-accordion-item02.is-open .c-area-list__region-icon::after {
  transform: rotate(90deg);
}

.c-area-list__body.js-accordion-body02 {
  display: none;
}

.c-area-list__item-list {
  display: flex;
  flex-wrap: wrap;
  gap: 1rem;
  padding: 1.2rem 0.9333333333rem;
  border-top: 2px solid #007BC7;
  background: #ffffff;
}

@media screen and (min-width: 768px) {
  .c-area-list__item-list {
    gap: 0.625rem 0.9375rem;
    padding: 1.75rem 2.1875rem;
  }
}
.c-area-list__item-list a {
  display: flex;
  align-items: center;
  gap: 0.4rem;
  font-size: 1.2rem;
  font-weight: 700;
  line-height: 1.4;
  letter-spacing: 0.05em;
  transition: color 0.3s, text-decoration 0.3s;
}

.c-area-list__item-list a::before {
  content: "";
  width: 0.4rem;
  height: 0.6rem;
  mask-image: url(./images/common/ico_map_arrow.svg);
  mask-size: contain;
  mask-position: center center;
  mask-repeat: no-repeat;
  -webkit-mask-image: url(./images/common/ico_map_arrow.svg);
  -webkit-mask-size: contain;
  -webkit-mask-position: center center;
  -webkit-mask-repeat: no-repeat;
  background: #00B9EF;
}

@media screen and (min-width: 768px) {
  .c-area-list__item-list a {
    font-size: 1rem;
    font-weight: 500;
    line-height: 1.9;
  }
}
@media screen and (min-width: 768px) and (hover: hover) {
  .c-area-list__item-list a:hover {
    color: #007BC7;
  }
}
.c-area-osaka {
  padding: 2.4666666667rem 1.1333333333rem;
  border: 0.2rem solid #007BC7;
  border-radius: 1rem;
  background: #ffffff;
}

@media screen and (min-width: 768px) {
  .c-area-osaka {
    padding: 4.1875rem 4.1875rem 8.375rem;
    border-radius: 1.25rem;
    position: relative;
  }
}
.c-area-osaka__title {
  display: flex;
  justify-content: center;
  gap: 0.6666666667rem;
  font-size: 1.6rem;
  font-weight: 500;
  font-family: "M PLUS 1p", sans-serif;
  line-height: 1.5;
  color: #007BC7;
}

.c-area-osaka__title::before {
  content: "";
  width: 1.6666666667rem;
  height: 2.4666666667rem;
  background: url(./images/common/ico_map.svg) no-repeat center center/contain;
}

@media screen and (min-width: 768px) {
  .c-area-osaka__title {
    font-size: 2rem;
    line-height: 1.75;
    justify-content: flex-start;
    align-items: center;
  }
  .c-area-osaka__title::before {
    width: 2.125rem;
    height: 3.1875rem;
  }
}
.c-area-osaka__img {
  width: 12.0666666667rem;
  margin: 1.3333333333rem auto 0;
}

.c-area-osaka__img img {
  width: 100%;
}

@media screen and (min-width: 768px) {
  .c-area-osaka__img {
    width: 20rem;
    margin-top: 0.6875rem;
  }
}
.c-area-osaka__regions {
  display: grid;
  gap: 0.6666666667rem;
  margin: 1.3333333333rem 0 0;
}

.c-area-osaka__region {
  border: 2px solid #007BC7;
  border-radius: 0.5333333333rem;
  overflow: hidden;
}

@media screen and (min-width: 768px) {
  .c-area-osaka__region {
    border-radius: 0.625rem;
    position: absolute;
  }
  .c-area-osaka__region:nth-child(1) {
    width: 37.7604166667vw;
    top: min(20.1822916667vw, 200px);
    left: 3.2552083333vw;
  }
  .c-area-osaka__region:nth-child(2) {
    width: 28.6458333333vw;
    top: min(49.4791666667vw, 430px);
    left: 1.3020833333vw;
  }
  .c-area-osaka__region:nth-child(3) {
    width: 26.0416666667vw;
    top: 10.4166666667vw;
    right: 2.6041666667vw;
  }
  .c-area-osaka__region:nth-child(4) {
    width: 28.6458333333vw;
    top: min(36.4583333333vw, 300px);
    right: 1.3020833333vw;
  }
}
@media screen and (min-width: 1280px) {
  .c-area-osaka__region:nth-child(1) {
    width: 27.5rem;
    top: 14.75rem;
    left: calc(50% - 31.3125rem);
  }
  .c-area-osaka__region:nth-child(2) {
    width: 27.4375rem;
    top: 31rem;
    left: calc(50% - 35.6875rem);
  }
  .c-area-osaka__region:nth-child(3) {
    width: 25rem;
    top: 10.8125rem;
    right: calc(50% - 35.8125rem);
  }
  .c-area-osaka__region:nth-child(4) {
    width: 26.125rem;
    top: 21.5625rem;
    right: calc(50% - 36.875rem);
  }
}
.c-area-osaka__region-summary {
  width: 100%;
  padding: 0.5333333333rem;
  font-size: 1rem;
  font-weight: 700;
  font-family: "Noto Sans JP", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", "Meiryo", "verdana", sans-serif;
  color: #007BC7;
  text-align: center;
  background: #F2FCFF;
  border: none;
  cursor: pointer;
  appearance: none;
  position: relative;
}

@media screen and (min-width: 768px) {
  .c-area-osaka__region-summary {
    padding: 0.5rem 1.25rem;
    font-size: 1rem;
    cursor: default;
    pointer-events: none;
  }
}
.c-area-osaka__region-icon {
  width: 1.6rem;
  height: 1.6rem;
  position: absolute;
  top: 50%;
  right: 1rem;
  transform: translateY(-50%);
  transition: transform 0.25s ease;
}

@media screen and (min-width: 768px) {
  .c-area-osaka__region-icon {
    display: none;
  }
}
.c-area-osaka__region-icon::before, .c-area-osaka__region-icon::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  background: #007BC7;
  transition: transform 0.25s ease;
}

.c-area-osaka__region-icon::before {
  width: 14px;
  height: 2px;
  margin-left: -7px;
  margin-top: -1px;
}

.c-area-osaka__region-icon::after {
  width: 2px;
  height: 14px;
  margin-left: -1px;
  margin-top: -7px;
}

.js-accordion-item.is-open .c-area-osaka__region-icon::after {
  transform: rotate(90deg);
}

.c-area-osaka__body.js-accordion-body {
  display: none;
}

@media screen and (min-width: 768px) {
  .c-area-osaka__body.js-accordion-body {
    display: block !important;
  }
}
.c-area-osaka__list {
  display: flex;
  flex-wrap: wrap;
  gap: 0.6666666667rem 1rem;
  padding: 0.8666666667rem 0.7333333333rem;
  border-top: 2px solid #007BC7;
  background: #ffffff;
}

@media screen and (min-width: 768px) {
  .c-area-osaka__list {
    gap: 0 0.625rem;
    padding: 0.4375rem 1.0625rem;
  }
}
.c-area-osaka__list a {
  display: flex;
  align-items: center;
  gap: 0.4rem;
  font-size: 1.2rem;
  font-weight: 700;
  transition: color 0.3s, text-decoration 0.3s;
}

.c-area-osaka__list a::before {
  content: "";
  width: 0.4rem;
  height: 0.6rem;
  mask-image: url(./images/common/ico_map_arrow.svg);
  mask-size: contain;
  mask-position: center center;
  mask-repeat: no-repeat;
  -webkit-mask-image: url(./images/common/ico_map_arrow.svg);
  -webkit-mask-size: contain;
  -webkit-mask-position: center center;
  -webkit-mask-repeat: no-repeat;
  background: #00B9EF;
}

@media screen and (min-width: 768px) {
  .c-area-osaka__list a {
    font-size: 1rem;
    font-weight: 500;
  }
}
@media screen and (min-width: 768px) and (hover: hover) {
  .c-area-osaka__list a:hover {
    color: #007BC7;
    text-decoration: underline;
  }
}
.c-area {
  padding: 2.4666666667rem 1.1333333333rem;
  border: 0.2rem solid #007BC7;
  border-radius: 1rem;
  background: #ffffff;
  position: relative;
  z-index: 1;
}

@media screen and (min-width: 768px) {
  .c-area {
    padding: 4.1875rem 4.1875rem 12.1875rem;
    border-radius: 1.25rem;
  }
}
.c-area__title {
  display: flex;
  gap: 0.6666666667rem;
  font-size: 1.6rem;
  font-weight: 500;
  font-family: "M PLUS 1p", sans-serif;
  line-height: 1.5;
  color: #007BC7;
  margin-left: 0.6666666667rem;
}

.c-area__title::before {
  content: "";
  width: 1.6666666667rem;
  height: 2.4666666667rem;
  background: url(./images/common/ico_map.svg) no-repeat center center/contain;
}

@media screen and (min-width: 768px) {
  .c-area__title {
    font-size: 2rem;
    line-height: 1.75;
    align-items: center;
    margin-left: 0;
  }
  .c-area__title::before {
    width: 2.125rem;
    height: 3.1875rem;
  }
}
.c-area__img {
  width: 18.2rem;
  margin: -0.6666666667rem auto 0;
}

.c-area__img img {
  width: 100%;
}

@media screen and (min-width: 768px) {
  .c-area__img {
    width: 27.0625rem;
    margin-top: 0.125rem;
  }
}
.c-area__regions {
  display: grid;
  gap: 0.6666666667rem;
  margin: 2.6666666667rem 0 0;
}

.c-area__region {
  border: 2px solid #007BC7;
  border-radius: 0.5333333333rem;
  overflow: hidden;
}

.c-area__region:nth-child(1) .c-area__list {
  justify-content: center;
}

@media screen and (min-width: 768px) {
  .c-area__region {
    border-radius: 0.625rem;
    position: absolute;
    width: 11.875rem;
  }
  .c-area__region:nth-child(1) {
    width: 10rem;
    top: 4.25rem;
    left: calc(50% + 14.375rem);
  }
  .c-area__region:nth-child(2) {
    top: 14.25rem;
    left: calc(50% + 11.9375rem);
  }
  .c-area__region:nth-child(3) {
    top: 25.3125rem;
    left: calc(50% + 13.9375rem);
  }
  .c-area__region:nth-child(4) {
    top: 29.4375rem;
    left: calc(50% + 1.125rem);
  }
  .c-area__region:nth-child(5) {
    top: 10.625rem;
    left: calc(50% - 7.625rem);
  }
  .c-area__region:nth-child(6) {
    top: 12.75rem;
    left: calc(50% - 21.5rem);
  }
  .c-area__region:nth-child(7) {
    top: 34.6875rem;
    left: calc(50% - 11.6875rem);
  }
  .c-area__region:nth-child(8) {
    width: 11.25rem;
    top: 25.0625rem;
    left: calc(50% - 25.625rem);
  }
}
@media screen and (min-width: 1024px) {
  .c-area__region:nth-child(1) {
    width: 11.875rem;
    left: calc(50% + 14.625rem);
  }
  .c-area__region:nth-child(8) {
    width: 11.875rem;
    left: calc(50% - 26.3125rem);
  }
}
.c-area__region-summary {
  width: 100%;
  padding: 0.5333333333rem;
  font-size: 1rem;
  font-weight: 700;
  font-family: "Noto Sans JP", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", "Meiryo", "verdana", sans-serif;
  color: #007BC7;
  text-align: center;
  background: #F2FCFF;
  border: none;
  cursor: pointer;
  appearance: none;
  position: relative;
}

@media screen and (min-width: 768px) {
  .c-area__region-summary {
    padding: 0.5rem 1.25rem;
    font-size: 1rem;
    cursor: default;
    pointer-events: none;
  }
}
.c-area__region-icon {
  width: 1.6rem;
  height: 1.6rem;
  position: absolute;
  top: 50%;
  right: 1rem;
  transform: translateY(-50%);
  transition: transform 0.25s ease;
}

@media screen and (min-width: 768px) {
  .c-area__region-icon {
    display: none;
  }
}
.c-area__region-icon::before, .c-area__region-icon::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  background: #007BC7;
  transition: transform 0.25s ease;
}

.c-area__region-icon::before {
  width: 14px;
  height: 2px;
  margin-left: -7px;
  margin-top: -1px;
}

.c-area__region-icon::after {
  width: 2px;
  height: 14px;
  margin-left: -1px;
  margin-top: -7px;
}

.js-accordion-item.is-open .c-area__region-icon::after {
  transform: rotate(90deg);
}

.c-area__body.js-accordion-body {
  display: none;
}

@media screen and (min-width: 768px) {
  .c-area__body.js-accordion-body {
    display: block !important;
  }
}
.c-area__list {
  display: flex;
  flex-wrap: wrap;
  gap: 0.6666666667rem 1rem;
  padding: 0.8666666667rem 2.4666666667rem;
  border-top: 2px solid #007BC7;
  background: #ffffff;
}

@media screen and (min-width: 768px) {
  .c-area__list {
    gap: 0 0.625rem;
    padding: 0.4375rem 1.0625rem;
  }
}
.c-area__list a {
  display: flex;
  align-items: center;
  gap: 0.4rem;
  font-size: 1.2rem;
  font-weight: 700;
  transition: color 0.3s, text-decoration 0.3s;
}

.c-area__list a::before {
  content: "";
  width: 0.4rem;
  height: 0.6rem;
  mask-image: url(./images/common/ico_map_arrow.svg);
  mask-size: contain;
  mask-position: center center;
  mask-repeat: no-repeat;
  -webkit-mask-image: url(./images/common/ico_map_arrow.svg);
  -webkit-mask-size: contain;
  -webkit-mask-position: center center;
  -webkit-mask-repeat: no-repeat;
  background: #00B9EF;
}

@media screen and (min-width: 768px) {
  .c-area__list a {
    font-size: 1rem;
    font-weight: 500;
  }
}
@media screen and (min-width: 768px) and (hover: hover) {
  .c-area__list a:hover {
    color: #007BC7;
  }
}
.c-btn {
  display: inline-block;
  width: 24rem;
  padding: 0.8rem;
  font-size: 1.2rem;
  font-weight: 700;
  line-height: 2;
  letter-spacing: 0.05em;
  border: 0.0666666667rem solid #00B9EF;
  border-radius: 2.6666666667rem;
  background: #ffffff;
  color: #00B9EF;
  text-align: center;
  transition: background 0.3s, color 0.3s;
  position: relative;
}

.c-btn::after {
  content: "";
  width: 1.3333333333rem;
  height: 0.8rem;
  mask-image: url(./images/common/ico_btn_arrow.svg);
  mask-size: contain;
  mask-position: center center;
  mask-repeat: no-repeat;
  -webkit-mask-image: url(./images/common/ico_btn_arrow.svg);
  -webkit-mask-size: contain;
  -webkit-mask-position: center center;
  -webkit-mask-repeat: no-repeat;
  background: #00B9EF;
  position: absolute;
  top: 50%;
  right: 1.3333333333rem;
  transform: translateY(-50%);
  transition: background 0.3s, transform 0.3s;
}

.c-btn--sub {
  background: #00B9EF;
  color: #ffffff;
  border-color: #00B9EF;
}

.c-btn--sub::after {
  background: #ffffff;
}

.c-btn--back {
  width: 21.3333333333rem;
}

.c-btn--back::after {
  right: auto;
  left: 1.3333333333rem;
  transform: translateY(-50%) rotateY(180deg);
}

@media screen and (min-width: 768px) {
  .c-btn {
    width: 21.875rem;
    font-size: 1.125rem;
    padding: 0.6875rem;
  }
  .c-btn::after {
    right: 1.5625rem;
  }
}
@media screen and (min-width: 768px) and (hover: hover) {
  .c-btn:hover {
    color: #ffffff;
    background: #00B9EF;
  }
  .c-btn:hover::after {
    background: #ffffff;
    transform: translateY(-50%) translateX(5px);
  }
}
@media screen and (min-width: 768px) and (hover: hover) {
  .c-btn--sub:hover {
    background: #ffffff;
    color: #00B9EF;
  }
  .c-btn--sub:hover::after {
    background: #00B9EF;
  }
}
@media screen and (min-width: 768px) {
  .c-btn--back {
    width: 21.875rem;
  }
  .c-btn--back::after {
    left: 1.875rem;
  }
}
@media screen and (min-width: 768px) and (hover: hover) {
  .c-btn--back:hover::after {
    transform: translateY(-50%) translateX(-5px) rotateY(180deg);
  }
}
.c-btn--orange {
  border-color: #FA8E0A;
  background: #FA8E0A;
  color: #ffffff;
}

.c-btn--orange::after {
  background: #ffffff;
}

@media screen and (min-width: 768px) and (hover: hover) {
  .c-btn--orange:hover {
    background: #ffffff;
    color: #FA8E0A;
  }
  .c-btn--orange:hover::after {
    background: #FA8E0A;
  }
}
.c-btn--main {
  border-color: #007BC7;
  color: #007BC7;
}

.c-btn--main::after {
  background: #007BC7;
}

@media screen and (min-width: 768px) and (hover: hover) {
  .c-btn--main:hover {
    background: #007BC7;
  }
}
.c-case__slider {
  padding: 2rem 1rem 2.6rem;
}

@media screen and (min-width: 768px) {
  .c-case__slider {
    padding: 6.875rem 0 1.625rem;
  }
}
@media screen and (min-width: 768px) {
  .c-case .swiper-slide {
    opacity: 0.6;
    transition: transform 0.3s ease-in-out, opacity 0.3s ease-in-out;
  }
  .c-case .swiper-slide-active {
    transform: translateY(-40px);
    opacity: 1;
  }
}
.c-case__item {
  background: #ffffff;
  border-radius: 1rem;
  box-shadow: 0 0 16.3px 0 rgb(214, 224, 236);
  padding: 1.3333333333rem;
}

@media screen and (min-width: 768px) {
  .c-case__item {
    padding: 1.875rem 2.5rem;
    border-radius: 1.25rem;
  }
}
.c-case__categories {
  display: flex;
  flex-wrap: wrap;
  gap: 0.3333333333rem;
}

.c-case__categories li {
  font-weight: 700;
  letter-spacing: 0.05em;
  line-height: 1.6666666667;
  border-radius: 1.2rem;
  padding: 0 1.3333333333rem;
  border: 1px solid #DADADA;
}

.c-case__categories li.c-case__category-name {
  background: #00B9EF;
  color: #ffffff;
  border-color: #00B9EF;
}

@media screen and (min-width: 768px) {
  .c-case__categories {
    gap: 0.625rem;
  }
  .c-case__categories li {
    letter-spacing: 0.05em;
    line-height: 2;
    padding: 0.1875rem 1.25rem;
    border-radius: 1.25rem;
  }
}
.c-case__head {
  border-bottom: 1px solid #DADADA;
  padding-bottom: 1.0666666667rem;
  display: flex;
  flex-direction: column;
  gap: 0.6666666667rem;
  margin: 0.6666666667rem 0 0;
}

@media screen and (min-width: 768px) {
  .c-case__head {
    flex-direction: row;
    justify-content: space-between;
    align-items: flex-end;
    gap: 0.9375rem;
    padding-bottom: 1.25rem;
    margin: 0.75rem 0 0;
  }
}
.c-case__title {
  font-size: 1rem;
  font-weight: 700;
  line-height: 1.7;
  letter-spacing: 0.05em;
}

@media screen and (min-width: 768px) {
  .c-case__title {
    font-size: 1rem;
  }
}
.c-case__price {
  width: fit-content;
  background: #F2F8FF;
  border-radius: 0.3333333333rem;
  padding: 0.4rem 0.6666666667rem 0.6666666667rem;
  font-size: 1.0666666667rem;
  font-weight: 700;
  line-height: 1;
}

.c-case__price span {
  color: #FF9F2A;
  font-size: 1.6rem;
}

@media screen and (min-width: 768px) {
  .c-case__price {
    font-size: 1rem;
    flex-shrink: 0;
  }
  .c-case__price span {
    font-size: 1.5rem;
  }
}
.c-case__images {
  margin: 2.1333333333rem 0 0;
  display: flex;
  align-items: flex-end;
  gap: 0.2666666667rem;
}

@media screen and (min-width: 768px) {
  .c-case__images {
    margin: 2.5rem 0 0;
    gap: 16.5277777778%;
  }
}
.c-case__before {
  width: 33.3333333333%;
  position: relative;
}

.c-case__before img {
  border-radius: 0.3333333333rem;
  width: 100%;
  aspect-ratio: 105/96;
}

@media screen and (min-width: 768px) {
  .c-case__before {
    width: 31.9444444444%;
  }
  .c-case__before::after {
    content: "";
    width: 3.3125rem;
    height: 1.4375rem;
    background: url(./images/common/case_arrow.svg) no-repeat center center/contain;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    right: -5.375rem;
  }
  .c-case__before img {
    aspect-ratio: 230/170;
    border-radius: 0.625rem;
  }
}
.c-case__before-title {
  width: fit-content;
  white-space: nowrap;
  position: absolute;
  left: 50%;
  top: -0.6666666667rem;
  transform: translateX(-50%);
  font-size: 1rem;
  font-family: "M PLUS 1p", sans-serif;
  font-weight: 500;
  line-height: 1;
  color: #ffffff;
  background: #C8C8C8;
  border-radius: 1.7333333333rem;
  padding: 0.2rem 0.2666666667rem 0.3333333333rem;
}

.c-case__before-title::after {
  content: "";
  width: 0.4666666667rem;
  height: 0.4666666667rem;
  background: #C8C8C8;
  display: block;
  position: absolute;
  bottom: -0.3333333333rem;
  left: 50%;
  transform: translateX(-50%);
  clip-path: polygon(100% 0, 0 0, 50% 100%);
}

@media screen and (min-width: 768px) {
  .c-case__before-title {
    font-size: 1rem;
    font-weight: 700;
    line-height: 1.75;
    letter-spacing: 0.05em;
    padding: 0.1875rem 1.125rem;
    top: -3.125rem;
  }
  .c-case__before-title::after {
    width: 0.75rem;
    height: 0.6875rem;
    bottom: -0.5rem;
  }
}
.c-case__after {
  width: 65.3968253968%;
  position: relative;
}

.c-case__after img {
  border-radius: 0.3333333333rem;
  width: 100%;
  aspect-ratio: 206/172;
}

@media screen and (min-width: 768px) {
  .c-case__after {
    width: 51.8055555556%;
  }
  .c-case__after img {
    aspect-ratio: 373/276;
    border-radius: 0.625rem;
  }
}
.c-case__after-title {
  width: fit-content;
  white-space: nowrap;
  position: absolute;
  left: 50%;
  top: -0.6666666667rem;
  transform: translateX(-50%);
  font-size: 1.2rem;
  font-family: "M PLUS 1p", sans-serif;
  font-weight: 500;
  line-height: 1;
  letter-spacing: 0.05em;
  color: #ffffff;
  background: #FF9F2A;
  border-radius: 1.7333333333rem;
  padding: 0.2rem 2rem 0.3333333333rem;
}

.c-case__after-title::after {
  content: "";
  width: 0.5333333333rem;
  height: 0.5333333333rem;
  background: #FF9F2A;
  display: block;
  position: absolute;
  bottom: -0.2666666667rem;
  left: 50%;
  transform: translateX(-50%);
  clip-path: polygon(100% 0, 0 0, 50% 100%);
}

@media screen and (min-width: 768px) {
  .c-case__after-title {
    font-size: 1.5rem;
    font-weight: 700;
    line-height: 1.75;
    padding: 0.3125rem 1.875rem;
    top: -1.3125rem;
  }
  .c-case__after-title::after {
    width: 0.9375rem;
    height: 0.9375rem;
    bottom: -0.625rem;
  }
}
.c-case__text {
  margin: 1.3333333333rem 0 0;
}

.c-case__text p {
  font-weight: 500;
  line-height: 1.6;
  letter-spacing: 0.05em;
}

@media screen and (min-width: 768px) {
  .c-case__text p {
    line-height: 1.9;
  }
}
.c-case .swiper-pagination {
  bottom: 0;
}

.c-case .swiper-pagination-bullet {
  width: 0.8rem;
  height: 0.8rem;
  background: #DADADA;
  opacity: 1;
}

.c-case .swiper-pagination-bullet.swiper-pagination-bullet-active {
  background: #007BC7;
}

.c-case .swiper-horizontal > .swiper-pagination-bullets .swiper-pagination-bullet,
.c-case .swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet {
  margin: 0 0.3333333333rem;
}

.c-case__link {
  margin: 2rem 0 0;
  text-align: center;
}

@media screen and (min-width: 768px) {
  .c-case__link {
    margin-top: 3.75rem;
  }
}
.c-column-list {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 0.6666666667rem;
}

@media screen and (min-width: 768px) {
  .c-column-list {
    grid-template-columns: repeat(3, 1fr);
    gap: 1.25rem;
  }
}
.c-column-list__item--pc {
  display: none;
}

@media screen and (min-width: 768px) {
  .c-column-list__item--pc {
    display: block;
  }
}
@media screen and (min-width: 768px) and (hover: hover) {
  .c-column-list__item a:hover .c-column-list__img {
    border-color: #00B9EF;
  }
  .c-column-list__item a:hover .c-column-list__title {
    color: #00B9EF;
  }
}
.c-column-list__img {
  width: 100%;
  overflow: hidden;
  border-radius: 0.6666666667rem;
}

@media screen and (min-width: 768px) {
  .c-column-list__img {
    border-radius: 1.25rem;
    border: 0.1875rem solid transparent;
    transition: border-color 0.3s;
  }
}
.c-column-list__img img {
  width: 100%;
  height: auto;
  aspect-ratio: 175/131;
  object-fit: cover;
}

@media screen and (min-width: 768px) {
  .c-column-list__img img {
    aspect-ratio: 350/263;
  }
}
.c-column-list__info {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 0.3333333333rem;
  margin: 0.6666666667rem 0 0;
}

@media screen and (min-width: 768px) {
  .c-column-list__info {
    gap: 0.625rem;
  }
}
.c-column-list__date {
  font-size: 1rem;
  font-weight: 400;
  font-family: "Montserrat", sans-serif;
  letter-spacing: 0.05em;
}

@media screen and (min-width: 768px) {
  .c-column-list__date {
    font-size: 1rem;
  }
}
.c-column-list__category {
  font-size: 1rem;
  font-weight: 500;
  letter-spacing: 0.05em;
  line-height: 1.3333333333;
  border-radius: 1rem;
  background: #00B9EF;
  color: #ffffff;
  padding: 0 0.3333333333rem 0.0666666667rem;
  display: inline-block;
}

@media screen and (min-width: 768px) {
  .c-column-list__category {
    line-height: 1.6;
    padding-inline: 0.375rem;
  }
}
.c-column-list__title {
  font-size: 1rem;
  font-weight: 700;
  line-height: 1.7;
  letter-spacing: 0.05em;
  overflow: hidden;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  margin: 0.6666666667rem 0 0;
  width: 100%;
}

@media screen and (min-width: 768px) {
  .c-column-list__title {
    font-size: 1rem;
    line-height: 2;
    transition: color 0.3s;
  }
}
.c-compensation__head {
  background: linear-gradient(92.54deg, #00B9EF 0.18%, #009AED 162.43%);
  padding: 4.8666666667rem 0 14.2rem;
}

@media screen and (min-width: 768px) {
  .c-compensation__head {
    padding: 7.625rem 0 16.25rem;
  }
}
.c-compensation__head-inner {
  position: relative;
  z-index: 1;
  margin-inline: auto;
  width: min(100% - 2rem, 650px);
}

@media screen and (min-width: 768px) {
  .c-compensation__head-inner {
    width: min(90%, 1280px);
  }
}
.c-compensation__img {
  position: absolute;
  top: -8.2rem;
  right: calc(50% - 2rem);
  width: 20.9333333333rem;
}

@media screen and (min-width: 768px) {
  .c-compensation__img {
    width: min(44.921875vw, 28.625rem);
    top: max(-16.9270833333vw, -10rem);
    right: calc(50% + 11.71875vw);
  }
}
@media screen and (min-width: 1280px) {
  .c-compensation__img {
    right: calc(50% + 15.625rem);
  }
}
.c-compensation__img img {
  width: 100%;
}

.c-compensation__head-text {
  width: 14.2rem;
  margin-left: calc(50% - 2rem);
  font-size: 2.1333333333rem;
  font-weight: 500;
  font-family: "M PLUS 1p", sans-serif;
  color: #ffffff;
  line-height: 1.5;
  letter-spacing: 0.1em;
  position: relative;
  z-index: 1;
}

.c-compensation__head-text::before, .c-compensation__head-text::after {
  content: "";
  width: 5.2rem;
  height: 0.2rem;
  background: #ffffff;
  display: block;
  position: absolute;
  left: -1.2666666667rem;
}

.c-compensation__head-text::before {
  top: -1rem;
  transform: rotate(-15deg);
}

.c-compensation__head-text::after {
  bottom: -1rem;
  transform: rotate(15deg);
}

@media screen and (min-width: 768px) {
  .c-compensation__head-text {
    width: fit-content;
    margin-left: 32.5%;
    font-size: min(3.90625vw, 3rem);
    line-height: 1;
  }
  .c-compensation__head-text::before {
    top: -1.5625rem;
  }
  .c-compensation__head-text::after {
    bottom: -1.5625rem;
  }
}
.c-compensation__box {
  margin: -11.3333333333rem 0 0;
  border-radius: 0.5333333333rem;
  border: 0.2666666667rem solid #FA8E0A;
  background: #ffffff;
  padding: 1.0666666667rem;
  position: relative;
  z-index: 2;
  text-align: center;
}

.c-compensation__box p {
  font-weight: 700;
  line-height: 1.7;
  letter-spacing: 0.05em;
}

@media screen and (min-width: 768px) {
  .c-compensation__box {
    margin-top: -11.5625rem;
    border-radius: 0.625rem;
    padding: 3.75rem 1.875rem;
  }
  .c-compensation__box p {
    line-height: 2;
  }
}
@media screen and (min-width: 1280px) {
  .c-compensation__box {
    margin-top: -10.625rem;
  }
}
.c-compensation__box-title {
  font-family: "M PLUS 1p", sans-serif;
  font-weight: 500;
  font-size: 2.1333333333rem;
  letter-spacing: 0.1em;
  line-height: 1.5;
  color: #FA8E0A;
  margin: 1.3333333333rem 0 0;
}

@media screen and (min-width: 768px) {
  .c-compensation__box-title {
    font-size: 3rem;
    line-height: 1;
    margin-top: 1.4375rem;
  }
}
.c-compensation__box-content {
  margin: 1.3333333333rem auto 0;
  width: fit-content;
  background: #FFFA9A;
  padding: 0.6666666667rem 1.5333333333rem;
  font-feature-settings: "palt";
}

@media screen and (min-width: 768px) {
  .c-compensation__box-content {
    margin: 1.875rem auto 0;
    padding: 0.1875rem 1.25rem;
    font-feature-settings: normal;
  }
}
.c-cta-buttons {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0.5333333333rem;
}

.c-cta-buttons--nav {
  gap: 2rem;
}

.c-cta-buttons--flow {
  gap: 0.6666666667rem;
  margin-top: 1.3333333333rem;
}

.c-cta-buttons--popup {
  gap: 0.6666666667rem;
}

@media screen and (min-width: 768px) {
  .c-cta-buttons {
    gap: 0.625rem;
    flex-direction: row;
    justify-content: center;
  }
  .c-cta-buttons--header .c-cta-buttons__btn {
    width: min(18.2291666667vw, 11.875rem);
    font-size: min(1.5625vw, 1.0625rem);
  }
  .c-cta-buttons--header .c-cta-buttons__btn--tel {
    font-size: min(1.6927083333vw, 1.1875rem);
  }
  .c-cta-buttons--header .c-cta-buttons__sub-text {
    font-size: min(1.171875vw, 0.75rem);
  }
}
@media screen and (min-width: 1280px) {
  .c-cta-buttons--flow .c-cta-buttons__btn {
    width: min(16.40625vw, 15rem);
  }
}
@media screen and (min-width: 1680px) {
  .c-cta-buttons--header .c-cta-buttons__btn {
    font-size: 1.25rem;
    width: 15rem;
  }
  .c-cta-buttons--header .c-cta-buttons__btn--tel {
    font-size: 1.5rem;
  }
  .c-cta-buttons--header .c-cta-buttons__sub-text {
    font-size: 0.875rem;
  }
}
.c-cta-buttons__btn {
  display: inline-block;
  width: 21.3333333333rem;
  padding: 0.5333333333rem 0 0.6666666667rem;
  font-size: 1.3333333333rem;
  font-weight: 700;
  line-height: 1;
  text-align: center;
  color: #ffffff;
  border-radius: 2.6666666667rem;
}

@media screen and (min-width: 768px) {
  .c-cta-buttons__btn {
    padding: 0.625rem 0;
    font-size: 1.25rem;
    width: 15rem;
    border: 1px solid;
    transition: background 0.3s, color 0.3s;
  }
}
@media screen and (min-width: 768px) and (hover: hover) {
  .c-cta-buttons__btn:hover {
    background: #ffffff;
  }
  .c-cta-buttons__btn--line:hover {
    color: #4FC32E;
  }
  .c-cta-buttons__btn--line:hover .c-cta-buttons__sub-text::before, .c-cta-buttons__btn--line:hover .c-cta-buttons__sub-text::after {
    background: #4FC32E;
  }
  .c-cta-buttons__btn--form:hover {
    color: #FA8E0A;
  }
  .c-cta-buttons__btn--form:hover .c-cta-buttons__sub-text::before, .c-cta-buttons__btn--form:hover .c-cta-buttons__sub-text::after {
    background: #FA8E0A;
  }
}
.c-cta-buttons__btn--tel {
  background: #00B9EF;
  font-size: 1.6rem;
}

@media screen and (min-width: 768px) {
  .c-cta-buttons__btn--tel {
    font-size: 1.5rem;
    border-color: #00B9EF;
  }
}
.c-cta-buttons__btn--line {
  background: #4FC32E;
  border-color: #4FC32E;
}

.c-cta-buttons__btn--form {
  background: #FA8E0A;
  border-color: #FA8E0A;
}

.c-cta-buttons__sub-text {
  font-size: 1rem;
  display: flex;
  align-items: flex-end;
  justify-content: center;
  gap: 0.6666666667rem;
  margin: 0.2rem 0 0;
}

.c-cta-buttons__sub-text::before, .c-cta-buttons__sub-text::after {
  content: "";
  display: block;
  width: 0.0666666667rem;
  height: 1rem;
  background: #ffffff;
  transition: background 0.3s;
}

.c-cta-buttons__sub-text::before {
  transform: rotate(-25deg);
}

.c-cta-buttons__sub-text::after {
  transform: rotate(25deg);
}

@media screen and (min-width: 768px) {
  .c-cta-buttons__sub-text {
    font-size: 0.875rem;
    gap: 0.375rem;
    margin-top: 0.3125rem;
  }
  .c-cta-buttons__sub-text::before, .c-cta-buttons__sub-text::after {
    height: 0.7333333333rem;
  }
}
.c-cta-section {
  padding: 2.1333333333rem 1.3333333333rem;
  background: #F2F8FF;
  border-radius: 20px;
}

@media screen and (min-width: 768px) {
  .c-cta-section {
    padding: 2.5rem 2.5rem;
  }
}
.c-cta-section__step {
  margin-bottom: 1.6rem;
}

@media screen and (min-width: 768px) {
  .c-cta-section__step {
    margin-bottom: 1.5rem;
  }
}
.c-cta-section__step-badge {
  display: inline-block;
  padding: 0.5333333333rem 1.3333333333rem;
  font-size: 0.9333333333rem;
  font-weight: 700;
  font-family: "Noto Sans JP", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", "Meiryo", "verdana", sans-serif;
  color: #ffffff;
  background: #00B9EF;
  border-radius: 15px;
  margin-bottom: 0.8rem;
}

@media screen and (min-width: 768px) {
  .c-cta-section__step-badge {
    font-size: 1rem;
    padding: 0.5rem 1.5rem;
    margin-bottom: 0.75rem;
  }
}
.c-cta-section__step-title {
  font-size: 1.2rem;
  font-weight: 500;
  font-family: "M PLUS 1p", sans-serif;
  color: #007BC7;
  letter-spacing: 0.1em;
  line-height: 1.75;
  margin: 0 0 0.5333333333rem;
}

@media screen and (min-width: 768px) {
  .c-cta-section__step-title {
    font-size: 1.125rem;
    margin-bottom: 0.5rem;
  }
}
.c-cta-section__step-lead {
  font-size: 0.9333333333rem;
  font-weight: 700;
  font-family: "Noto Sans JP", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", "Meiryo", "verdana", sans-serif;
  color: #262626;
  line-height: 1.5;
  margin: 0;
}

@media screen and (min-width: 768px) {
  .c-cta-section__step-lead {
    font-size: 1rem;
  }
}
.c-cta-section__buttons {
  margin-top: 1.0666666667rem;
}

@media screen and (min-width: 768px) {
  .c-cta-section__buttons {
    margin-top: 1.25rem;
  }
}
.c-datail-cta {
  margin: 2rem -1.3333333333rem 0;
  text-align: center;
  background: linear-gradient(274.64deg, #00B9EF -2.89%, #01DEF2 124.42%);
  padding: 2rem 1.3333333333rem;
  position: relative;
  overflow: hidden;
}

.c-datail-cta::before {
  content: "";
  display: block;
  width: 22.2rem;
  height: 21.8666666667rem;
  background: url(./images/common/cta_logo_ico.svg) no-repeat center center/contain;
  position: absolute;
  top: -1.4666666667rem;
  left: -1rem;
  z-index: 1;
}

@media screen and (min-width: 768px) {
  .c-datail-cta {
    margin: 2.5rem -2.5rem;
    padding: 2.25rem;
  }
  .c-datail-cta::before {
    width: 15.625rem;
    height: 15.375rem;
    top: 0;
    left: calc(50% - 24rem);
  }
}
@media screen and (min-width: 1280px) {
  .c-datail-cta {
    margin-inline: -5rem;
  }
}
.c-datail-cta__box {
  background: #ffffff;
  border-radius: 1.3333333333rem;
  padding: 1.3333333333rem;
  position: relative;
  z-index: 2;
}

@media screen and (min-width: 768px) {
  .c-datail-cta__box {
    max-width: 51.9375rem;
    margin-inline: auto;
    padding: 2.1875rem 2.5rem;
  }
}
@media screen and (min-width: 1024px) {
  .c-datail-cta__box {
    padding: 2.1875rem 2.8125rem;
  }
}
.c-datail-cta p.c-datail-cta__title {
  font-size: 1.2rem;
  font-weight: 700;
  line-height: 1.5;
  text-align: center;
  margin: 0;
}

@media screen and (min-width: 768px) {
  .c-datail-cta p.c-datail-cta__title {
    font-size: 1rem;
  }
}
.c-datail-cta__buttons {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0.6666666667rem;
  margin: 1.3333333333rem 0 0;
}

@media screen and (min-width: 768px) {
  .c-datail-cta__buttons {
    flex-direction: row;
  }
}
.c-datail-cta a.c-datail-cta__btn {
  display: inline-block;
  width: 18.6666666667rem;
  padding: 1.2rem 0;
  font-size: 1.3333333333rem;
  font-weight: 700;
  line-height: 1;
  text-align: center;
  color: #ffffff;
  border-radius: 2.6666666667rem;
}

.c-datail-cta a.c-datail-cta__btn::after {
  display: none;
}

@media screen and (min-width: 768px) {
  .c-datail-cta a.c-datail-cta__btn {
    padding: 0.625rem 0;
    font-size: 1.25rem;
    width: 15rem;
    border: 1px solid;
    transition: background 0.3s, color 0.3s;
  }
}
.c-datail-cta a.c-datail-cta__btn--tel {
  background: #00B9EF;
  font-size: 1.6rem;
}

@media screen and (min-width: 768px) {
  .c-datail-cta a.c-datail-cta__btn--tel {
    font-size: 1.5rem;
    border-color: #00B9EF;
    padding: 0.5rem 0;
  }
}
.c-datail-cta a.c-datail-cta__btn--line {
  background: #4FC32E;
  border-color: #4FC32E;
}

.c-datail-cta a.c-datail-cta__btn--form {
  background: #FA8E0A;
  border-color: #FA8E0A;
}

@media (hover: hover) {
  .c-datail-cta a.c-datail-cta__btn:hover {
    background: #ffffff;
  }
  .c-datail-cta a.c-datail-cta__btn--line:hover {
    color: #4FC32E;
  }
  .c-datail-cta a.c-datail-cta__btn--line:hover .c-datail-cta__sub-text::before, .c-datail-cta a.c-datail-cta__btn--line:hover .c-datail-cta__sub-text::after {
    background: #4FC32E;
  }
  .c-datail-cta a.c-datail-cta__btn--form:hover {
    color: #FA8E0A;
  }
  .c-datail-cta a.c-datail-cta__btn--form:hover .c-datail-cta__sub-text::before, .c-datail-cta a.c-datail-cta__btn--form:hover .c-datail-cta__sub-text::after {
    background: #FA8E0A;
  }
}
.c-datail-cta__sub-text {
  font-size: 1rem;
  display: flex;
  align-items: flex-end;
  justify-content: center;
  gap: 0.6666666667rem;
  margin: 0.5333333333rem 0 0;
}

.c-datail-cta__sub-text::before, .c-datail-cta__sub-text::after {
  content: "";
  display: block;
  width: 0.0666666667rem;
  height: 1rem;
  background: #ffffff;
  transition: background 0.3s;
}

.c-datail-cta__sub-text::before {
  transform: rotate(-25deg);
}

.c-datail-cta__sub-text::after {
  transform: rotate(25deg);
}

@media screen and (min-width: 768px) {
  .c-datail-cta__sub-text {
    font-size: 0.875rem;
    gap: 0.375rem;
    margin-top: 0.3125rem;
  }
  .c-datail-cta__sub-text::before, .c-datail-cta__sub-text::after {
    height: 0.7333333333rem;
  }
}
.c-faq {
  display: grid;
  gap: 2rem;
}

@media screen and (min-width: 768px) {
  .c-faq {
    gap: 2.5rem;
  }
}
.c-faq__item {
  border-bottom: 1px solid #007BC7;
  padding-bottom: 1.3333333333rem;
}

@media screen and (min-width: 768px) {
  .c-faq__item {
    padding-bottom: 2.5rem;
  }
}
.c-faq__item:last-child {
  border-bottom: none;
}

.c-faq__trigger {
  width: 100%;
  font-size: 1rem;
  font-weight: 700;
  text-align: left;
  background: transparent;
  border: none;
  cursor: pointer;
  appearance: none;
  position: relative;
}

@media screen and (min-width: 768px) {
  .c-faq__trigger {
    font-size: 1rem;
    line-height: 2;
    letter-spacing: 0.05em;
  }
}
.c-faq__question {
  display: flex;
  align-items: center;
  gap: 1.3333333333rem;
  width: calc(100% - 2.3333333333rem);
  transition: color 0.3s;
}

.c-faq__question::before {
  content: "Q";
  width: 2.6666666667rem;
  height: 2.6666666667rem;
  background: #00B9EF;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 1.0666666667rem;
  font-weight: 400;
  font-family: "Montserrat", sans-serif;
  letter-spacing: 0.05em;
  line-height: 1.75;
  color: #ffffff;
  flex-shrink: 0;
}

@media screen and (min-width: 768px) and (hover: hover) {
  .c-faq__question:hover {
    color: #007BC7;
  }
}
.c-faq__icon {
  width: 1.6rem;
  height: 1.6rem;
  flex-shrink: 0;
  position: absolute;
  top: 50%;
  right: 0.8rem;
  transform: translateY(-50%);
  transition: transform 0.25s ease;
}

.c-faq__icon::before, .c-faq__icon::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  background: #007BC7;
  transition: transform 0.25s ease;
}

.c-faq__icon::before {
  width: 14px;
  height: 2px;
  margin-left: -7px;
  margin-top: -1px;
}

.c-faq__icon::after {
  width: 2px;
  height: 14px;
  margin-left: -1px;
  margin-top: -7px;
}

.c-faq .js-accordion-item02.is-open .c-faq__icon::after {
  transform: rotate(90deg);
}

.c-faq__body.js-accordion-body02 {
  display: none;
}

.c-faq__answer {
  margin: 1.3333333333rem 0 0;
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.6;
  letter-spacing: 0.05em;
  display: flex;
  gap: 1.3333333333rem;
}

.c-faq__answer::before {
  content: "A";
  width: 2.6666666667rem;
  height: 2.6666666667rem;
  background: #FA8E0A;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 1.0666666667rem;
  font-weight: 400;
  font-family: "Montserrat", sans-serif;
  letter-spacing: 0.05em;
  line-height: 1.75;
  color: #ffffff;
  flex-shrink: 0;
}

@media screen and (min-width: 768px) {
  .c-faq__answer {
    margin-top: 1.25rem;
    font-size: 1rem;
    font-weight: 500;
    line-height: 1.9;
  }
}
.c-news-list__item:not(:first-child) {
  margin-top: 2rem;
}

.c-news-list__item:not(:last-child) {
  padding-bottom: 2rem;
  border-bottom: 1px solid #007BC7;
}

@media screen and (min-width: 768px) {
  .c-news-list__item:last-child {
    padding-bottom: 2rem;
    border-bottom: 1px solid #007BC7;
  }
}
.c-news-list__item a {
  display: flex;
  flex-direction: column;
  gap: 0.6666666667rem;
  transition: color 0.3s;
}

@media screen and (min-width: 768px) {
  .c-news-list__item a {
    flex-direction: row;
    align-items: center;
    gap: 1.3333333333rem;
  }
}
@media screen and (min-width: 768px) and (hover: hover) {
  .c-news-list__item a:hover {
    color: #007BC7;
  }
}
.c-news-list__date {
  font-size: 1rem;
  font-weight: 400;
  font-family: "Montserrat", sans-serif;
  letter-spacing: 0.05em;
}

@media screen and (min-width: 768px) {
  .c-news-list__date {
    font-size: 1rem;
    flex-shrink: 0;
  }
}
.c-news-list__title {
  font-size: 1rem;
  font-weight: 500;
  line-height: 1.6;
  letter-spacing: 0.05em;
  overflow: hidden;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}

@media screen and (min-width: 768px) {
  .c-news-list__title {
    font-size: 1rem;
    font-weight: 700;
    line-height: 2;
    letter-spacing: 0.05em;
    text-overflow: ellipsis;
    overflow: hidden;
    white-space: nowrap;
  }
}
.c-pagination {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 1rem;
  max-width: 20.9333333333rem;
  margin-inline: auto;
}

@media screen and (min-width: 768px) {
  .c-pagination {
    gap: 1.5625rem;
    max-width: 18rem;
  }
}
.c-pagination li {
  width: 1.3333333333rem;
  font-size: 1.6rem;
  font-family: "Montserrat", sans-serif;
  font-weight: 700;
  line-height: 1;
  flex-shrink: 0;
}

@media screen and (min-width: 768px) {
  .c-pagination li {
    font-size: 1.125rem;
    width: 0.9375rem;
  }
}
.c-pagination li span {
  color: #007BC7;
  display: flex;
  justify-content: center;
  align-items: center;
}

.c-pagination li a {
  width: 100%;
  height: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  color: #C8C8C8;
  transition: color 0.3s;
}

@media screen and (min-width: 768px) and (hover: hover) {
  .c-pagination li a:hover {
    color: #007BC7;
  }
}
.c-pagination li.c-pagination__prev, .c-pagination li.c-pagination__next {
  width: 3.3333333333rem;
  height: 3.3333333333rem;
  border-radius: 50%;
  background: #00B9EF;
  position: relative;
  transition: background 0.3s;
}

.c-pagination li.c-pagination__prev::before, .c-pagination li.c-pagination__next::before {
  content: "";
  width: 0.8rem;
  height: 0.9333333333rem;
  background: #ffffff;
  position: absolute;
  top: 50%;
  left: 50%;
  pointer-events: none;
}

.c-pagination li.c-pagination__prev.inactive, .c-pagination li.c-pagination__next.inactive {
  background: #C8C8C8;
  pointer-events: none;
}

@media screen and (min-width: 768px) {
  .c-pagination li.c-pagination__prev, .c-pagination li.c-pagination__next {
    width: 1.6875rem;
    height: 1.6875rem;
  }
  .c-pagination li.c-pagination__prev::before, .c-pagination li.c-pagination__next::before {
    width: 0.4375rem;
    height: 0.5rem;
  }
}
@media screen and (min-width: 768px) and (hover: hover) {
  .c-pagination li.c-pagination__prev:hover, .c-pagination li.c-pagination__next:hover {
    background: #007BC7;
  }
}
.c-pagination li.c-pagination__prev {
  margin-right: auto;
}

.c-pagination li.c-pagination__prev::before {
  clip-path: polygon(100% 0, 0 50%, 100% 100%);
  transform: translate(-60%, -50%);
}

.c-pagination li.c-pagination__next {
  margin-left: auto;
}

.c-pagination li.c-pagination__next::before {
  clip-path: polygon(100% 50%, 0 0, 0 100%);
  transform: translate(-40%, -50%);
}

.c-popup {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.4);
  z-index: 500;
  display: none;
}

.c-popup.is-popup-end {
  display: none !important;
}

.c-popup__content {
  display: flex;
  align-items: center;
  height: 100%;
  position: relative;
  padding: 0 1rem;
  text-align: center;
}

.c-popup__inner {
  max-width: 650px;
  max-height: 90vh;
  margin: 0 auto;
  padding: 2rem 1.3333333333rem 3.3333333333rem;
  position: relative;
  overflow-y: scroll;
  background: #ffffff;
  border-radius: 1.3333333333rem;
}

@media screen and (min-width: 768px) {
  .c-popup__inner {
    max-width: 52.125rem;
    width: 90%;
    padding: 2.5rem;
  }
}
.c-popup__title {
  font-size: 1.6rem;
  font-weight: 700;
  color: #ffffff;
  letter-spacing: 0.1em;
  text-align: center;
  line-height: 1.5;
  width: 21.1333333333rem;
  margin: 0 auto;
  padding: 0.1333333333rem 0 0.8rem;
  background: url(./images/common/popup_ribbon.webp) no-repeat center/contain;
}

@media screen and (min-width: 768px) {
  .c-popup__title {
    line-height: 1.75;
    letter-spacing: 0.05em;
    width: 26.1875rem;
    padding: 0.3125rem 0 1.1875rem;
  }
}
.c-popup__center-text {
  font-weight: 700;
  line-height: 1.7;
  letter-spacing: 0.05em;
  margin: 1.8rem auto 0;
  display: inline-flex;
  justify-content: center;
  align-items: flex-end;
  gap: 0.6666666667rem;
}

.c-popup__center-text::before, .c-popup__center-text::after {
  content: "";
  display: block;
  width: 0.1333333333rem;
  height: 1.3333333333rem;
  background: #262626;
}

.c-popup__center-text::before {
  transform: rotate(-20deg);
}

.c-popup__center-text::after {
  transform: rotate(20deg);
}

@media screen and (min-width: 768px) {
  .c-popup__center-text {
    line-height: 2;
    margin-top: 1.25rem;
    align-items: center;
  }
}
.c-popup__num-text {
  font-size: 3.2rem;
  font-family: "Montserrat", sans-serif;
  font-weight: 700;
  letter-spacing: 0.1em;
  color: #EC365A;
  margin: -1.3333333333rem 0 0;
}

.c-popup__num-text span {
  font-size: 4.2666666667rem;
}

.c-popup__countdown-box {
  background: #F2FCFF;
  text-align: center;
  margin: 0.2666666667rem auto 0;
  padding: 1rem 0;
  border-radius: 0.6666666667rem;
  position: relative;
}

.c-popup__countdown-box::before, .c-popup__countdown-box::after {
  content: "";
  display: block;
  width: 5.1333333333rem;
  height: 5.2666666667rem;
  background: url(./images/common/popup_deco.webp) no-repeat center center/contain;
  position: absolute;
  top: -3.375rem;
}

.c-popup__countdown-box::before {
  left: -0.6rem;
}

.c-popup__countdown-box::after {
  transform: rotateY(180deg);
  right: -0.6rem;
}

@media screen and (min-width: 768px) {
  .c-popup__countdown-box {
    margin-top: 0;
    max-width: 31.25rem;
    padding: 0.1875rem 0 0.5625rem;
  }
  .c-popup__countdown-box::before, .c-popup__countdown-box::after {
    width: 8rem;
    height: 8.1875rem;
    top: -6.75rem;
  }
  .c-popup__countdown-box::before {
    left: -3.0625rem;
  }
  .c-popup__countdown-box::after {
    right: -3.0625rem;
  }
}
.c-popup__countdown-text {
  font-size: 1.0666666667rem;
  font-weight: 500;
  line-height: 1.9;
  letter-spacing: 0.05em;
}

.c-popup__countdown-num {
  font-size: 1.6rem;
  font-weight: 700;
  line-height: 1.4;
  letter-spacing: 0.05em;
  color: #FA8E0A;
}

@media screen and (min-width: 768px) {
  .c-popup__countdown-num {
    line-height: 1.9;
  }
}
.c-popup__tel {
  margin: 2rem 0 0;
  text-align: center;
}

@media screen and (min-width: 768px) {
  .c-popup__tel {
    margin-top: 1.25rem;
  }
}
.c-popup__tel-btn {
  display: inline-block !important;
  width: 21.3333333333rem;
  padding: 0.5333333333rem 0;
  background: #00B9EF;
  text-align: center;
  font-weight: 700;
  line-height: 1;
  color: #ffffff;
  border-radius: 2.6666666667rem;
}

@media screen and (min-width: 768px) {
  .c-popup__tel-btn {
    padding: 0.625rem 0;
    width: 23.75rem;
  }
}
.c-popup__tel-num {
  font-size: 1.6rem;
}

.c-popup__tel-text {
  font-size: 1rem;
  display: flex;
  align-items: flex-end;
  justify-content: center;
  gap: 0.6666666667rem;
  margin: 0.3333333333rem 0 0;
}

.c-popup__tel-text::before, .c-popup__tel-text::after {
  content: "";
  display: block;
  width: 0.0666666667rem;
  height: 1rem;
  background: #ffffff;
  transition: background 0.3s;
}

.c-popup__tel-text::before {
  transform: rotate(-25deg);
}

.c-popup__tel-text::after {
  transform: rotate(25deg);
}

@media screen and (min-width: 768px) {
  .c-popup__tel-text {
    font-size: 0.875rem;
    gap: 0.375rem;
    margin-top: 0.3125rem;
  }
  .c-popup__tel-text::before, .c-popup__tel-text::after {
    height: 0.7333333333rem;
  }
}
.c-popup__close {
  position: absolute;
  top: 0.7333333333rem;
  right: 1rem;
  width: 1.3333333333rem;
  height: 1.3333333333rem;
  cursor: pointer;
}

.c-popup__close::before, .c-popup__close::after {
  content: "";
  display: block;
  width: 1.6666666667rem;
  height: 0.1333333333rem;
  background: #007BC7;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%) rotate(45deg);
}

.c-popup__close::after {
  transform: translate(-50%, -50%) rotate(-45deg);
}

.c-postarea p {
  margin: 1.3333333333rem 0;
  font-weight: 500;
  line-height: 1.6;
  letter-spacing: 0.05em;
}

@media screen and (min-width: 768px) {
  .c-postarea p {
    margin: 1.875rem 0;
    line-height: 1.9;
  }
}
.c-postarea h2 {
  font-size: 1.4666666667rem;
  font-weight: 800;
  font-family: "M PLUS 1p", sans-serif;
  letter-spacing: 0.1em;
  margin: 2.6666666667rem 0 1.3333333333rem;
  background: #007BC7;
  color: #ffffff;
  padding: 0 0.6666666667rem;
}

@media screen and (min-width: 768px) {
  .c-postarea h2 {
    font-size: 2.5rem;
    margin: 2.5rem 0 1.25rem;
    padding: 0 1.25rem;
  }
}
.c-postarea h3 {
  font-family: "M PLUS 1p", sans-serif;
  font-size: 1.3333333333rem;
  font-weight: 800;
  letter-spacing: 0.1em;
  margin: 1.3333333333rem 0;
  color: #007BC7;
  padding-left: 0.5333333333rem;
  position: relative;
}

.c-postarea h3::before {
  content: "";
  width: 0.2rem;
  height: 70%;
  background: #007BC7;
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
}

@media screen and (min-width: 768px) {
  .c-postarea h3 {
    font-size: 2rem;
    padding-left: 1.3125rem;
  }
  .c-postarea h3::before {
    width: 0.375rem;
  }
}
.c-postarea h4 {
  font-family: "M PLUS 1p", sans-serif;
  font-size: 1.2rem;
  font-weight: 800;
  letter-spacing: 0.1em;
  margin: 1.3333333333rem 0;
  color: #007BC7;
  background: #F2F8FF;
  padding: 0 0.6666666667rem;
}

@media screen and (min-width: 768px) {
  .c-postarea h4 {
    font-size: 1.5rem;
    padding: 0.5625rem 1.25rem;
  }
}
.c-postarea h5 {
  font-family: "M PLUS 1p", sans-serif;
  font-size: 1.0666666667rem;
  font-weight: 500;
  letter-spacing: 0.1em;
  margin: 1.3333333333rem 0;
  color: #007BC7;
  border-bottom: 1px solid #007BC7;
}

@media screen and (min-width: 768px) {
  .c-postarea h5 {
    font-size: 1.125rem;
    font-weight: 800;
    padding-bottom: 0.3125rem;
    border-width: 0.125rem;
  }
}
.c-postarea h6 {
  font-family: "M PLUS 1p", sans-serif;
  font-size: 1rem;
  font-weight: 500;
  letter-spacing: 0.1em;
  margin: 1.3333333333rem 0;
  color: #007BC7;
}

@media screen and (min-width: 768px) {
  .c-postarea h6 {
    font-size: 1rem;
    font-weight: 800;
  }
}
.c-postarea ul {
  margin: 1.3333333333rem 0 1.3333333333rem 1.5rem;
}

@media screen and (min-width: 768px) {
  .c-postarea ul {
    margin: 1.875rem 0 1.875rem 2rem;
  }
}
.c-postarea ul.blocks-gallery-grid {
  margin: 2rem 0 0;
}

@media screen and (min-width: 768px) {
  .c-postarea ul.blocks-gallery-grid {
    margin: 3rem 0 0;
  }
}
.c-postarea ul li {
  list-style: disc;
  font-weight: 500;
  line-height: 1.6;
  letter-spacing: 0.05em;
}

.c-postarea ol {
  margin: 1.3333333333rem 0 1.3333333333rem 1.5rem;
}

@media screen and (min-width: 768px) {
  .c-postarea ol {
    margin: 1.875rem 0 1.875rem 2rem;
  }
}
.c-postarea ol li {
  list-style: decimal;
  font-weight: 500;
  line-height: 1.6;
  letter-spacing: 0.05em;
}

.c-postarea strong {
  font-weight: 900;
}

.c-postarea blockquote {
  background: #ffffff;
  border: 2px solid #00B9EF;
  border-radius: 0.3333333333rem;
  padding: 1.3333333333rem 2rem;
  position: relative;
  margin: 2.6666666667rem 0 2rem;
}

.c-postarea blockquote p {
  margin: 0;
}

@media screen and (min-width: 768px) {
  .c-postarea blockquote {
    padding: 1.875rem;
    margin: 3.375rem 0 2.5rem;
  }
}
.c-postarea blockquote::before {
  position: absolute;
  top: -0.5333333333rem;
  left: -0.4666666667rem;
  content: "“";
  width: 2rem;
  height: 2rem;
  border-radius: 50%;
  background: #00B9EF;
  display: flex;
  align-items: flex-end;
  justify-content: center;
  color: #ffffff;
  font-size: 1.6rem;
  font-weight: 900;
  line-height: 1;
}

@media screen and (min-width: 768px) {
  .c-postarea blockquote::before {
    font-size: 2.25rem;
    width: 2.625rem;
    height: 2.625rem;
    top: -0.875rem;
    left: -0.875rem;
  }
}
.c-postarea blockquote cite {
  font-size: 0.8rem;
  color: #999;
}

.c-postarea a {
  display: inline;
  color: #007BC7;
  position: relative;
}

.c-postarea a::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  height: 1px;
  background: #007BC7;
}

.c-postarea figure {
  margin: 2.6666666667rem auto;
  display: flex;
  justify-content: center;
}

.c-postarea img {
  width: auto;
  max-width: 100%;
  height: auto;
  display: block;
  border-radius: 0.6666666667rem;
}

@media screen and (min-width: 768px) {
  .c-postarea img {
    border-radius: 1.25rem;
  }
}
.c-postarea table {
  width: 100%;
  border-radius: 0.6666666667rem;
  overflow: hidden;
  border-collapse: separate;
  border-spacing: 0;
  border: 1px solid #00B9EF;
}

.c-postarea table thead th {
  background: #00B9EF;
  color: #ffffff;
  font-weight: 700;
  line-height: 2;
  letter-spacing: 0.05em;
  padding: 0.3333333333rem;
  border: none;
}

.c-postarea table thead th:not(:last-child) {
  border-right: 1px solid #ffffff;
}

.c-postarea table tr:not(:last-child) td {
  border-bottom: solid 1px #00B9EF;
}

.c-postarea table td {
  border: none;
  padding: 0.6666666667rem;
  font-size: 1rem;
  font-weight: 500;
  line-height: 1.6;
  letter-spacing: 0.05em;
}

.c-postarea table td:not(:last-child) {
  border-right: solid 1px #00B9EF;
}

@media screen and (min-width: 768px) {
  .c-postarea table td {
    font-size: 1rem;
    line-height: 1.9;
    padding: 0.8125rem;
    text-align: center;
  }
}
.c-postarea #ez-toc-container {
  border: 2px solid #007BC7;
  border-radius: 0.5333333333rem;
  overflow: hidden;
  padding: 0;
  margin: 2rem 0 1rem;
  box-shadow: 1px 1px 11.2px rgba(176, 176, 176, 0.3);
}

@media screen and (min-width: 768px) {
  .c-postarea #ez-toc-container {
    border-radius: 0.625rem;
  }
}
.c-postarea #ez-toc-container.toc_close .ez-toc-title-container a.ez-toc-toggle::after {
  transform: rotate(0);
}

.c-postarea #ez-toc-container ul.ez-toc-list {
  border-top: 2px solid #007BC7;
  padding: 1.3333333333rem;
}

@media screen and (min-width: 768px) {
  .c-postarea #ez-toc-container ul.ez-toc-list {
    padding: 1.875rem 3.125rem;
  }
}
.c-postarea #ez-toc-container ul.ez-toc-list li:not(:first-child) {
  margin-top: 1.3333333333rem;
}

.c-postarea #ez-toc-container ul.ez-toc-list a {
  color: #262626;
  font-size: 1rem;
  font-weight: 700;
  line-height: 1.7;
  letter-spacing: 0.05em;
}

@media screen and (min-width: 768px) {
  .c-postarea #ez-toc-container ul.ez-toc-list a {
    font-size: 1rem;
    line-height: 2;
  }
}
.c-postarea #ez-toc-container ul.ez-toc-list a::after {
  display: none;
}

.c-postarea #ez-toc-container ul.ez-toc-list a::before {
  color: #262626;
}

.c-postarea #ez-toc-container ul.ez-toc-list ul {
  margin: 1.0666666667rem 0 0 1.2rem;
}

@media screen and (min-width: 768px) {
  .c-postarea #ez-toc-container ul.ez-toc-list ul {
    margin: 0.625rem 0 0 1.125rem;
  }
}
.c-postarea #ez-toc-container ul.ez-toc-list ul li {
  position: relative;
}

.c-postarea #ez-toc-container ul.ez-toc-list ul li:not(:first-child) {
  margin-top: 0.6666666667rem;
}

.c-postarea #ez-toc-container ul.ez-toc-list ul li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0.2rem;
  width: 1px;
  height: 1.3333333333rem;
  background: #007BC7;
}

.c-postarea #ez-toc-container ul.ez-toc-list ul a {
  font-weight: 500;
  line-height: 1.6;
  padding-left: 0.6666666667rem;
}

@media screen and (min-width: 768px) {
  .c-postarea #ez-toc-container ul.ez-toc-list ul a {
    line-height: 1.9;
  }
}
.c-postarea #ez-toc-container .ez-toc-title-container {
  width: 100%;
  padding: 0.5333333333rem;
  text-align: center;
  background: #F2FCFF;
  border: none;
  appearance: none;
  position: relative;
}

.c-postarea #ez-toc-container .ez-toc-title-container p.ez-toc-title {
  font-size: 1rem;
  font-weight: 700;
  line-height: 1.6;
  letter-spacing: 0.2em;
  font-family: "M PLUS 1p", sans-serif;
  color: #007BC7;
}

.c-postarea #ez-toc-container .ez-toc-title-container .ez-toc-js-icon-con {
  display: none;
}

.c-postarea #ez-toc-container .ez-toc-title-container a.ez-toc-toggle {
  width: 3rem;
  height: 100%;
  position: absolute;
  top: 50%;
  right: 0;
  transform: translateY(-50%);
  transition: transform 0.25s ease;
  cursor: pointer;
}

@media screen and (min-width: 768px) {
  .c-postarea #ez-toc-container .ez-toc-title-container a.ez-toc-toggle {
    width: 3.75rem;
  }
}
.c-postarea #ez-toc-container .ez-toc-title-container a.ez-toc-toggle::before, .c-postarea #ez-toc-container .ez-toc-title-container a.ez-toc-toggle::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  background: #007BC7;
  transition: transform 0.25s ease;
}

.c-postarea #ez-toc-container .ez-toc-title-container a.ez-toc-toggle::before {
  width: 14px;
  height: 2px;
  margin-left: -7px;
  margin-top: -1px;
}

.c-postarea #ez-toc-container .ez-toc-title-container a.ez-toc-toggle::after {
  transform: rotate(90deg);
  width: 2px;
  height: 14px;
  margin-left: -1px;
  margin-top: -7px;
}

@media screen and (min-width: 768px) {
  .c-postarea #ez-toc-container .ez-toc-title-container {
    padding: 0.875rem;
  }
  .c-postarea #ez-toc-container .ez-toc-title-container p.ez-toc-title {
    font-size: 1.2rem;
    font-weight: 500;
    line-height: 1.75;
    letter-spacing: 0.1em;
  }
}
.c-postarea .liquid-speech-balloon-wrap {
  margin: 2.6666666667rem 0;
  align-items: flex-start;
}

@media screen and (min-width: 768px) {
  .c-postarea .liquid-speech-balloon-wrap {
    align-items: center;
  }
}
.c-postarea .liquid-speech-balloon-avatar {
  width: 4.6666666667rem;
  height: 4.6666666667rem;
  border-radius: 50%;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  position: relative;
}

.c-postarea .liquid-speech-balloon-avatar::after {
  position: absolute;
  top: 4.8666666667rem;
  left: 50%;
  transform: translateX(-50%);
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.5;
  letter-spacing: 0.05em;
  text-align: center;
}

@media screen and (min-width: 768px) {
  .c-postarea .liquid-speech-balloon-avatar {
    width: 6.25rem;
    height: 6.25rem;
  }
  .c-postarea .liquid-speech-balloon-avatar::after {
    font-size: 0.875rem;
    line-height: 1.9;
    top: 6.4375rem;
  }
}
.c-postarea .liquid-speech-balloon-text {
  border-radius: 0.6666666667rem;
  background: #ffffff;
  padding: 0.6666666667rem 1.3333333333rem;
  border: none;
  filter: drop-shadow(0px 0px 16.3px #D6E0EC);
  transform: translateZ(0);
  padding-left: 1.4rem;
}

.c-postarea .liquid-speech-balloon-text p {
  margin: 0;
}

@media screen and (min-width: 768px) {
  .c-postarea .liquid-speech-balloon-text {
    padding: 1.5625rem 1.75rem;
    margin-left: 2.125rem;
  }
}
.c-postarea .liquid-speech-balloon-right .liquid-speech-balloon-text {
  margin-left: 0;
  margin-right: 1.4rem;
}

@media screen and (min-width: 768px) {
  .c-postarea .liquid-speech-balloon-right .liquid-speech-balloon-text {
    margin-left: 0;
    margin-right: 2.125rem;
  }
}
.c-postarea .liquid-speech-balloon-wrap:not(.liquid-speech-balloon-vertical) .liquid-speech-balloon-arrow {
  background: #ffffff;
  width: 1.3333333333rem;
  height: 1.2rem;
  clip-path: polygon(100% 0, 0 50%, 100% 100%);
  border: none;
  left: -1.0666666667rem;
  top: 3.2rem;
}

@media screen and (min-width: 768px) {
  .c-postarea .liquid-speech-balloon-wrap:not(.liquid-speech-balloon-vertical) .liquid-speech-balloon-arrow {
    top: 50%;
    transform: translateY(-50%);
  }
}
.c-postarea .liquid-speech-balloon-wrap.liquid-speech-balloon-right .liquid-speech-balloon-arrow {
  left: auto;
  right: -1.0666666667rem;
  clip-path: polygon(0 0, 100% 50%, 0 100%);
}

@media screen and (min-width: 768px) {
  .c-postarea .liquid-speech-balloon-wrap.liquid-speech-balloon-right .liquid-speech-balloon-arrow {
    top: 50%;
    transform: translateY(-50%);
  }
}
.c-postarea .sabox-plus-item {
  margin: 2.6666666667rem 0;
  padding: 4.3333333333rem 0 1.3333333333rem;
  border-top: 1px solid #00B9EF;
  border-bottom: 1px solid #00B9EF;
  position: relative;
}

.c-postarea .sabox-plus-item::before {
  content: "この記事を書いたのは";
  position: absolute;
  top: 1.3333333333rem;
  left: 0;
  font-size: 1.2rem;
  font-weight: 500;
  line-height: 1.4;
  letter-spacing: 0.05em;
  color: #007BC7;
  text-align: center;
  width: 100%;
}

@media screen and (min-width: 768px) {
  .c-postarea .sabox-plus-item {
    padding: 4.625rem 0 1.875rem;
  }
  .c-postarea .sabox-plus-item::before {
    font-size: 1.125rem;
    line-height: 1.75;
    letter-spacing: 0.1em;
    text-align: left;
    top: 1.875rem;
  }
}
.c-postarea .saboxplugin-wrap {
  border: none;
}

.c-postarea .saboxplugin-wrap .saboxplugin-gravatar {
  padding: 0;
}

@media screen and (min-width: 768px) {
  .c-postarea .saboxplugin-wrap .saboxplugin-gravatar {
    width: 9.375rem;
    margin-right: 1.25rem;
  }
}
.c-postarea .saboxplugin-wrap .saboxplugin-gravatar img {
  width: 6rem;
  height: 6rem;
  border-radius: 50%;
  object-fit: cover;
}

@media screen and (min-width: 768px) {
  .c-postarea .saboxplugin-wrap .saboxplugin-gravatar img {
    width: 9.375rem;
    height: 9.375rem;
    max-width: 9.375rem;
  }
}
.c-postarea .saboxplugin-wrap .saboxplugin-authorname {
  font-size: 1rem;
  font-weight: 700;
  line-height: 1.7;
  letter-spacing: 0.05em;
  margin: 0.6666666667rem 0 0;
}

@media screen and (min-width: 768px) {
  .c-postarea .saboxplugin-wrap .saboxplugin-authorname {
    font-size: 1rem;
    line-height: 2;
  }
}
.c-postarea .saboxplugin-wrap .saboxplugin-authorname a {
  color: #262626;
}

.c-postarea .saboxplugin-wrap .saboxplugin-authorname a::after {
  display: none;
}

.c-postarea .saboxplugin-wrap .saboxplugin-desc {
  margin: 0.6666666667rem 0 0;
}

@media screen and (min-width: 768px) {
  .c-postarea .saboxplugin-wrap .saboxplugin-desc {
    margin-top: 0.3125rem;
  }
}
.c-postarea .saboxplugin-wrap .saboxplugin-desc p {
  margin: 0;
  font-size: 1rem !important;
  font-weight: 500;
  line-height: 1.6 !important;
  letter-spacing: 0.05em;
}

@media screen and (min-width: 768px) {
  .c-postarea .saboxplugin-wrap .saboxplugin-desc p {
    font-size: 1rem !important;
    line-height: 1.9 !important;
  }
}
.c-postarea .saboxplugin-wrap .saboxplugin-desc p + p {
  margin-top: 1em;
}

@media screen and (min-width: 768px) {
  .c-postarea .saboxplugin-wrap .saboxplugin-desc p + p {
    margin-top: 0;
  }
}
@media screen and (min-width: 768px) {
  .c-price-table {
    max-width: 48.75rem;
    margin-inline: auto;
  }
}
.c-price-table table {
  width: 100%;
  border-collapse: separate;
  border-spacing: 0;
  border-radius: 1rem;
  overflow: hidden;
  border: 0.1333333333rem solid #007BC7;
}

@media screen and (min-width: 768px) {
  .c-price-table table {
    border-radius: 1.25rem;
  }
}
.c-price-table table thead th {
  background: #007BC7;
  color: #ffffff;
  font-size: 1.2rem;
  font-weight: 700;
  line-height: 1.7;
  letter-spacing: 0.05em;
  padding: 0.9333333333rem;
  width: 50%;
}

.c-price-table table thead th:first-child {
  border-right: 0.1333333333rem solid #ffffff;
}

@media screen and (min-width: 768px) {
  .c-price-table table thead th {
    font-size: 1.5rem;
    line-height: 1.75;
    letter-spacing: 0.1em;
    padding: 0.5625rem;
  }
}
.c-price-table table tbody {
  background: #ffffff;
}

.c-price-table table tbody tr:last-child th,
.c-price-table table tbody tr:last-child td {
  border-bottom: none;
}

.c-price-table table tbody tr th,
.c-price-table table tbody tr td {
  padding: 0.7333333333rem 0.6666666667rem 0.8666666667rem;
  font-weight: 700;
  letter-spacing: 0.05em;
  text-align: center;
  border-bottom: 0.0666666667rem solid #DADADA;
}

.c-price-table table tbody tr th {
  border-right: 0.1333333333rem solid #DADADA;
}

@media screen and (min-width: 768px) {
  .c-price-table table tbody tr th {
    line-height: 2;
  }
}
.c-price-table table tbody tr td {
  line-height: 1;
}

.c-price-table table tbody tr td span {
  color: #FF9F2A;
  font-size: 1.6rem;
}

.c-price-table__note {
  margin: 0.6666666667rem 0 0;
  font-weight: 400;
  line-height: 1.5;
  letter-spacing: 0.05em;
  text-indent: -1.2em;
  padding-left: 1.2em;
  font-feature-settings: "palt";
}

@media screen and (min-width: 768px) {
  .c-price-table__note {
    font-size: 0.875rem;
    line-height: 1.9;
    margin-top: 0.3125rem;
    text-align: right;
  }
}
.c-results-card {
  background: #ffffff;
  border-radius: 20px;
  box-shadow: 0 0 16.3px 0 rgb(214, 224, 236);
  overflow: hidden;
}

.c-results-card__thumb {
  width: 100%;
  aspect-ratio: 4/3;
  background: #F2F8FF;
}

.c-results-card__content {
  padding: 1.0666666667rem;
}

@media screen and (min-width: 768px) {
  .c-results-card__content {
    padding: 1.25rem;
  }
}
.c-results-card__name {
  font-size: 0.9333333333rem;
  font-weight: 500;
  font-family: "Noto Sans JP", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", "Meiryo", "verdana", sans-serif;
  color: #262626;
  margin: 0 0 0.2666666667rem;
}

@media screen and (min-width: 768px) {
  .c-results-card__name {
    font-size: 1rem;
    margin-bottom: 0.25rem;
  }
}
.c-results-card__price {
  font-size: 0.8666666667rem;
  font-weight: 500;
  font-family: "Noto Sans JP", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", "Meiryo", "verdana", sans-serif;
  color: #262626;
  margin: 0;
}

@media screen and (min-width: 768px) {
  .c-results-card__price {
    font-size: 0.875rem;
  }
}
.c-results {
  padding: 1.3333333333rem 0 2.6rem;
  padding: 1.25rem 0 3.875rem;
}

.c-results__item {
  background: #ffffff;
  border-radius: 1rem;
  box-shadow: 0 0 16.3px 0 rgb(214, 224, 236);
  overflow: hidden;
}

@media screen and (min-width: 768px) {
  .c-results__item {
    border-radius: 1.25rem;
  }
}
.c-results__img {
  width: 100%;
}

.c-results__img img {
  width: 100%;
  height: auto;
  aspect-ratio: 360/200;
  object-fit: cover;
}

@media screen and (min-width: 768px) {
  .c-results__img img {
    aspect-ratio: 410/230;
  }
}
.c-results__content {
  padding: 1.3333333333rem;
  text-align: center;
}

.c-results__name {
  font-size: 1rem;
  font-weight: 500;
  line-height: 1.6;
  letter-spacing: 0.05em;
}

@media screen and (min-width: 768px) {
  .c-results__name {
    font-size: 1rem;
    line-height: 1.9;
  }
}
.c-results__price {
  font-size: 1rem;
  font-weight: 500;
  line-height: 1.6;
  letter-spacing: 0.05em;
}

.c-results__price span {
  color: #FF9F2A;
  font-size: 1.6rem;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0.1em;
}

@media screen and (min-width: 768px) {
  .c-results__price {
    font-size: 1rem;
    font-weight: 700;
    line-height: 2;
  }
  .c-results__price span {
    font-size: 1.5rem;
    line-height: 1.75;
  }
}
.c-results .swiper-pagination {
  bottom: 0;
}

.c-results .swiper-pagination-bullet {
  width: 0.8rem;
  height: 0.8rem;
  background: #DADADA;
  opacity: 1;
}

.c-results .swiper-pagination-bullet.swiper-pagination-bullet-active {
  background: #007BC7;
}

.c-results .swiper-horizontal > .swiper-pagination-bullets .swiper-pagination-bullet,
.c-results .swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet {
  margin: 0 0.3333333333rem;
}

.c-search-popup {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 5000;
  display: none;
}

.c-search-popup__outer {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100vh;
}

.c-search-popup__inner {
  background: #ffffff;
  border-radius: 1.3333333333rem;
  padding: 2rem 1.3333333333rem;
  text-align: center;
  position: relative;
  z-index: 500;
  max-width: 22.5rem;
  margin-inline: auto;
}

@media screen and (min-width: 768px) {
  .c-search-popup__inner {
    max-width: 52.125rem;
    padding: 3.125rem 2.9375rem;
  }
}
.c-search-popup__box {
  border-bottom: 0.0666666667rem solid #DADADA;
  padding: 0 0 2rem;
}

.c-search-popup__post {
  font-size: 1.6rem;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0.1em;
  color: #007BC7;
  text-align: center;
}

@media screen and (min-width: 768px) {
  .c-search-popup__post {
    line-height: 1.75;
  }
}
.c-search-popup__address {
  font-weight: 700;
  line-height: 1.7;
  letter-spacing: 0.05em;
  text-align: center;
  margin: 0.6666666667rem 0 0;
}

@media screen and (min-width: 768px) {
  .c-search-popup__address {
    margin-top: 0.3125rem;
    line-height: 2;
  }
}
.c-search-popup__possible {
  display: inline-block;
  font-size: 1.2rem;
  font-weight: 700;
  line-height: 2;
  letter-spacing: 0.05em;
  color: #ffffff;
  background: #FA8E0A;
  text-align: center;
  padding: 0.1333333333rem 1.4666666667rem;
  border-radius: 2.6666666667rem;
  margin: 1.1333333333rem 0 0;
}

@media screen and (min-width: 768px) {
  .c-search-popup__possible {
    margin-top: 0.625rem;
  }
}
.c-search-popup__bottom {
  margin: 2rem 0 0;
}

.c-search-popup__text {
  font-weight: 700;
  line-height: 1.7;
  letter-spacing: 0.05em;
  text-align: center;
}

@media screen and (min-width: 768px) {
  .c-search-popup__text {
    line-height: 1.5;
  }
}
.c-search-popup__item {
  margin: 1.3333333333rem 0 0;
}

.c-search-popup__close {
  position: absolute;
  top: 1.3333333333rem;
  right: 1.3333333333rem;
  cursor: pointer;
  width: 1.3333333333rem;
  height: 1.3333333333rem;
}

.c-search-popup__close button {
  border: none;
  background: none;
}

.c-search-popup__close::before, .c-search-popup__close::after {
  content: "";
  display: block;
  width: 1.6666666667rem;
  height: 0.1333333333rem;
  background: #007BC7;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%) rotate(45deg);
}

.c-search-popup__close::after {
  transform: translate(-50%, -50%) rotate(-45deg);
}

.c-search-popup__overray {
  background: rgba(0, 0, 0, 0.4);
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1;
  cursor: pointer;
}

.c-search {
  padding: 1.8rem 0 0;
}

@media screen and (min-width: 768px) {
  .c-search {
    padding: 2.6875rem 0 0;
  }
}
.c-search__box {
  background: #ffffff;
  padding: 2rem 1.3333333333rem;
  border-radius: 1.3333333333rem;
  box-shadow: 0 0 16.3px 0 rgb(214, 224, 236);
}

@media screen and (min-width: 768px) {
  .c-search__box {
    padding: 3.75rem 11.25rem;
    max-width: 52.125rem;
    margin-inline: auto;
  }
}
.c-search__title {
  font-size: 1.6rem;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0.1em;
  color: #007BC7;
  text-align: center;
}

@media screen and (min-width: 768px) {
  .c-search__title {
    line-height: 1.75;
  }
}
.c-search__input-area {
  margin: 1.3333333333rem 0 0;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.3333333333rem;
}

.c-search__input-area span {
  font-size: 1.6rem;
  font-weight: 700;
  letter-spacing: 0.1em;
}

.c-search__input-area input {
  width: 100%;
  background: #F2FCFF;
  border-radius: 0.6666666667rem;
  border: none;
  padding: 1.3333333333rem 0.6666666667rem;
  font-size: 16px;
}

@media screen and (min-width: 768px) {
  .c-search__input-area {
    margin-top: 1.875rem;
    gap: 0.625rem;
  }
}
.c-search__note {
  font-weight: 400;
  line-height: 1.5;
  letter-spacing: 0.05em;
  margin: 0.6rem 1.9333333333rem 0;
  text-indent: -1em;
  padding-left: 1em;
}

@media screen and (min-width: 768px) {
  .c-search__note {
    margin: 0.625rem 2.125rem 0;
    line-height: 1.9;
    font-weight: 500;
  }
}
.c-search__btn {
  margin: 2rem 0 0;
  text-align: center;
}

.c-search .c-btn {
  width: 21.3333333333rem;
}

@media screen and (min-width: 768px) {
  .c-search .c-btn {
    width: 21.875rem;
  }
}
.c-service-card {
  position: relative;
  background: #ffffff;
  border-radius: 0.6666666667rem;
  box-shadow: 0 0 16.3px 0 rgb(214, 224, 236);
  overflow: hidden;
}

@media screen and (min-width: 768px) {
  .c-service-card {
    border-radius: 1.25rem;
  }
}
.c-service-card--accordion {
  display: none;
  margin: 0.6666666667rem 0 0;
}

@media screen and (min-width: 768px) {
  .c-service-card--accordion {
    display: block !important;
    margin: 0;
    height: 100%;
  }
}
.c-service-card__img img {
  width: 100%;
  height: auto;
  object-fit: cover;
  aspect-ratio: 360/130;
}

@media screen and (min-width: 768px) {
  .c-service-card__img img {
    aspect-ratio: 410/220;
  }
}
.c-service-card__icon {
  position: absolute;
  top: min(28.2051282051vw, 207px);
  left: 50%;
  transform: translateX(-50%);
  width: 4rem;
  height: 4rem;
}

@media screen and (min-width: 768px) {
  .c-service-card__icon {
    width: min(9.1145833333vw, 7.5rem);
    height: min(9.1145833333vw, 7.5rem);
    top: min(11.71875vw, 10.875rem);
  }
}
@media screen and (min-width: 1440px) {
  .c-service-card__icon {
    width: 7.5rem;
    height: 7.5rem;
    top: 10.875rem;
  }
}
.c-service-card__icon img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}

.c-service-card__head {
  position: relative;
  margin: 2.1333333333rem 0 0;
  text-align: center;
}

@media screen and (min-width: 768px) {
  .c-service-card__head {
    margin-top: min(3.90625vw, 3.125rem);
  }
}
@media screen and (min-width: 1440px) {
  .c-service-card__head {
    margin-top: 3.125rem;
  }
}
.c-service-card__title {
  font-size: 1.2rem;
  font-weight: 500;
  font-family: "M PLUS 1p", sans-serif;
  color: #007BC7;
  letter-spacing: 0.05em;
  line-height: 1.4;
}

@media screen and (min-width: 768px) {
  .c-service-card__title {
    font-size: 1.125rem;
    line-height: 1.7;
    letter-spacing: 0.1em;
  }
}
.c-service-card__sub-title {
  font-weight: 700;
  line-height: 1.4;
  letter-spacing: 0.05em;
  margin: 0.3333333333rem 0 0;
}

@media screen and (min-width: 768px) {
  .c-service-card__sub-title {
    font-size: min(1.3020833333vw, 1rem);
  }
}
.c-service-card__list {
  margin: 0.6666666667rem 1.3333333333rem 1.3333333333rem;
  padding: 1.1333333333rem 0.8rem;
  background: #F2FCFF;
  border-radius: 0.6666666667rem;
  font-weight: 500;
  line-height: 1.6;
  letter-spacing: 0.05em;
}

@media screen and (min-width: 768px) {
  .c-service-card__list {
    margin: 1.125rem min(1.3020833333vw, 1.875rem) 1.875rem;
    padding: 0.625rem;
    min-height: 8.625rem;
    line-height: 1.9;
    font-size: min(1.4322916667vw, 1rem);
  }
}
@media screen and (min-width: 1280px) {
  .c-service-card__list {
    margin: 1.125rem 1.875rem 1.875rem;
    font-size: 1rem;
  }
}
.c-service-card__list li {
  position: relative;
  padding-left: 1.0666666667rem;
}

@media screen and (min-width: 768px) {
  .c-service-card__list li {
    padding-left: 1.4322916667vw;
  }
}
@media screen and (min-width: 1024px) {
  .c-service-card__list li {
    padding-left: 1rem;
  }
}
.c-service-card__list li::before {
  content: "・";
  position: absolute;
  left: 0;
}

.c-services-item__img {
  border-radius: 0.6666666667rem;
  overflow: hidden;
}

@media screen and (min-width: 768px) {
  .c-services-item__img {
    border-radius: 1.25rem;
  }
}
.c-services-item__img img {
  width: 100%;
  height: auto;
  object-fit: cover;
  aspect-ratio: 175/100;
}

@media screen and (min-width: 768px) {
  .c-services-item__img img {
    aspect-ratio: 300/172;
  }
}
.c-services-item__head {
  display: flex;
  align-items: center;
  gap: 0.6666666667rem;
  margin: 0.8666666667rem 0 0;
}

@media screen and (min-width: 768px) {
  .c-services-item__head {
    margin-top: 1.25rem;
  }
}
.c-services-item__title {
  font-size: 1rem;
  font-weight: 500;
  color: #007BC7;
  letter-spacing: 0.05em;
  line-height: 1.6;
  font-feature-settings: "palt";
}

@media screen and (min-width: 768px) {
  .c-services-item__title {
    font-size: 1.125rem;
    font-feature-settings: normal;
    line-height: 1.75;
    letter-spacing: 0.1em;
  }
}
.c-services-item__number {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 2rem;
  height: 2rem;
  font-size: 1.0666666667rem;
  font-weight: 400;
  font-family: "Montserrat", sans-serif;
  letter-spacing: 0.05em;
  color: #ffffff;
  background: #00B9EF;
  border-radius: 50%;
  flex-shrink: 0;
}

@media screen and (min-width: 768px) {
  .c-services-item__number {
    width: 2.5rem;
    height: 2.5rem;
    line-height: 1.75;
  }
}
.c-services-item__body {
  font-weight: 500;
  line-height: 1.6;
  letter-spacing: 0.09em;
  margin: 0.8666666667rem 0 0;
}

@media screen and (min-width: 768px) {
  .c-services-item__body {
    margin-top: 1.25rem;
    line-height: 1.9;
    font-feature-settings: "palt";
  }
}
.c-single-pagination {
  display: flex;
  justify-content: space-between;
  align-items: center;
  max-width: 20.9333333333rem;
  margin-inline: auto;
}

@media screen and (min-width: 768px) {
  .c-single-pagination {
    max-width: 18rem;
  }
}
.c-single-pagination__prev a, .c-single-pagination__next a {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 0.6666666667rem;
}

@media screen and (min-width: 768px) and (hover: hover) {
  .c-single-pagination__prev a:hover .c-single-pagination__icon, .c-single-pagination__next a:hover .c-single-pagination__icon {
    background: #007BC7;
  }
  .c-single-pagination__prev a:hover .c-single-pagination__text::after, .c-single-pagination__next a:hover .c-single-pagination__text::after {
    width: 0;
  }
}
.c-single-pagination__prev.inactive, .c-single-pagination__next.inactive {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 0.6666666667rem;
}

.c-single-pagination__prev.inactive .c-single-pagination__icon, .c-single-pagination__next.inactive .c-single-pagination__icon {
  background: #C8C8C8;
}

.c-single-pagination__prev.inactive .c-single-pagination__text, .c-single-pagination__next.inactive .c-single-pagination__text {
  color: #C8C8C8;
}

.c-single-pagination__prev.inactive .c-single-pagination__text::after, .c-single-pagination__next.inactive .c-single-pagination__text::after {
  display: none;
}

.c-single-pagination__icon {
  width: 3.3333333333rem;
  height: 3.3333333333rem;
  border-radius: 50%;
  background: #00B9EF;
  position: relative;
  transition: background 0.3s;
}

.c-single-pagination__icon::before {
  content: "";
  width: 0.8rem;
  height: 0.9333333333rem;
  background: #ffffff;
  position: absolute;
  top: 50%;
  left: 50%;
  pointer-events: none;
}

@media screen and (min-width: 768px) {
  .c-single-pagination__icon {
    width: 1.6875rem;
    height: 1.6875rem;
  }
  .c-single-pagination__icon::before {
    width: 0.4375rem;
    height: 0.5rem;
  }
}
.c-single-pagination__prev .c-single-pagination__icon::before {
  clip-path: polygon(100% 0, 0 50%, 100% 100%);
  transform: translate(-60%, -50%);
}

.c-single-pagination__next .c-single-pagination__icon::before {
  clip-path: polygon(100% 50%, 0 0, 0 100%);
  transform: translate(-40%, -50%);
}

.c-single-pagination__text {
  font-size: 1rem;
  font-weight: 700;
  line-height: 1.7;
  letter-spacing: 0.05em;
  color: #007BC7;
  position: relative;
  display: inline-block;
}

.c-single-pagination__text::after {
  content: "";
  width: 100%;
  height: 1px;
  background: #007BC7;
  position: absolute;
  bottom: 0.1333333333rem;
  left: 0;
  transition: width 0.3s;
}

@media screen and (min-width: 768px) {
  .c-single-pagination__text {
    font-size: 1rem;
    line-height: 1.9;
    font-weight: 500;
  }
  .c-single-pagination__text::after {
    bottom: 0.25rem;
  }
}
@media screen and (min-width: 768px) and (hover: hover) {
  .c-single-pagination__back:hover .c-single-pagination__text::after {
    width: 0;
  }
}
.c-staff {
  background: #ffffff;
  border-radius: 20px;
  box-shadow: 0 0 16.3px 0 rgb(214, 224, 236);
  overflow: hidden;
}

@media screen and (min-width: 768px) {
  .c-staff {
    display: flex;
    flex-direction: column;
  }
}
.c-staff__thumb {
  width: 100%;
  aspect-ratio: 4/3;
  background: #F2F8FF;
}

@media screen and (min-width: 768px) {
  .c-staff__thumb {
    aspect-ratio: 16/10;
  }
}
.c-staff__thumb img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.c-staff__message {
  padding: 1.3333333333rem;
  background: #FF9F2A;
  border-radius: 0 0 20px 20px;
}

@media screen and (min-width: 768px) {
  .c-staff__message {
    padding: 1.5rem;
  }
}
.c-staff__message p {
  font-size: 0.9333333333rem;
  font-weight: 500;
  font-family: "Noto Sans JP", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", "Meiryo", "verdana", sans-serif;
  color: #ffffff;
  line-height: 1.9;
  letter-spacing: 0.05em;
  margin: 0;
}

@media screen and (min-width: 768px) {
  .c-staff__message p {
    font-size: 1rem;
  }
}
.c-title {
  font-size: 1.6rem;
  font-weight: 500;
  font-family: "M PLUS 1p", sans-serif;
  color: #007BC7;
  text-align: center;
  letter-spacing: 0.05em;
  line-height: 1.5;
}

.c-title--left {
  text-align: left;
}

.c-title--flex {
  display: flex;
  align-items: baseline;
  gap: 0.6666666667rem;
}

.c-title__en {
  font-size: 1rem;
  font-weight: 400;
  font-family: "Montserrat", sans-serif;
  line-height: 1.7;
  display: block;
  margin-bottom: 0.6666666667rem;
}

.c-title__orange {
  font-size: 2.1333333333rem;
  color: #FF9F2A;
  line-height: 1.75;
  letter-spacing: 0.1em;
}

.c-title__num {
  font-size: 2.6666666667rem;
  color: #FF9F2A;
  line-height: 1;
  letter-spacing: 0.1em;
}

.c-title__dots {
  background-image: radial-gradient(circle at center, #FA8E0A 20%, transparent 20%);
  background-position: top center;
  background-repeat: repeat-x;
  background-size: 1.04em 0.4rem;
  padding-top: 0.4rem;
}

@media screen and (min-width: 768px) {
  .c-title {
    font-size: 2rem;
    line-height: 1.75;
  }
  .c-title__en {
    font-size: 1rem;
    line-height: 1.75;
  }
  .c-title__orange {
    font-size: 3rem;
    line-height: 1;
  }
  .c-title__num {
    font-size: 3rem;
    line-height: 1;
  }
  .c-title__dots {
    padding-top: 0.625rem;
  }
}
.c-voice {
  padding: 2rem 0 2.6rem;
  margin-inline: calc(50% - 50vw);
}

@media screen and (min-width: 768px) {
  .c-voice {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 0.625rem;
    padding: 4.375rem 0 0;
    margin: 0;
    overflow: visible;
  }
}
@media screen and (min-width: 1024px) {
  .c-voice {
    gap: 1.25rem;
  }
}
.c-voice__item {
  background: #ffffff;
  border-radius: 1.3333333333rem;
  box-shadow: 0 0 16.3px 0 rgb(214, 224, 236);
  padding: 2rem;
  position: relative;
}

@media screen and (min-width: 768px) {
  .c-voice__item {
    padding: 0.9375rem;
  }
}
@media screen and (min-width: 1024px) {
  .c-voice__item {
    padding: 2rem;
  }
}
@media screen and (min-width: 768px) {
  .c-voice .swiper-wrapper {
    display: contents;
  }
}
.c-voice .swiper-pagination {
  bottom: 0;
}

@media screen and (min-width: 768px) {
  .c-voice .swiper-pagination {
    display: none;
  }
}
.c-voice .swiper-pagination-bullet {
  width: 0.8rem;
  height: 0.8rem;
  background: #DADADA;
  opacity: 1;
}

.c-voice .swiper-pagination-bullet.swiper-pagination-bullet-active {
  background: #007BC7;
}

.c-voice .swiper-horizontal > .swiper-pagination-bullets .swiper-pagination-bullet,
.c-voice .swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet {
  margin: 0 0.3333333333rem;
}

.c-voice__tags {
  display: flex;
  flex-wrap: wrap;
  gap: 0.6666666667rem;
}

@media screen and (min-width: 768px) {
  .c-voice__tags {
    gap: 0.625rem;
  }
}
.c-voice__tag {
  display: inline-block;
  padding: 0.2rem 0.6666666667rem;
  font-size: 1rem;
  font-weight: 500;
  line-height: 1.6;
  color: #ffffff;
  background: #007BC7;
  border-radius: 1.3333333333rem;
}

@media screen and (min-width: 768px) {
  .c-voice__tag {
    font-size: 1rem;
    line-height: 1.9;
    letter-spacing: 0.05em;
    padding: 0 0.625rem;
  }
}
.c-voice__tag--seizenseiri {
  background: #FF4E77;
}

.c-voice__tag--tokusyu {
  background: #4BCCBE;
}

.c-voice__tag--kaitori {
  background: #E7CE4F;
}

.c-voice__tag--dust {
  background: #00B9EF;
}

.c-voice__tag--akiya {
  background: #FA8E0A;
}

.c-voice__icon {
  width: 8rem;
  height: 8rem;
  border-radius: 50%;
  margin: 2rem auto 0;
}

.c-voice__icon img {
  width: 100%;
}

.c-voice__title {
  font-size: 1.2rem;
  font-weight: 500;
  font-family: "M PLUS 1p", sans-serif;
  color: #007BC7;
  letter-spacing: 0.05em;
  line-height: 1.4;
  margin: 1.3333333333rem 0;
}

@media screen and (min-width: 768px) {
  .c-voice__title {
    font-size: 1.125rem;
    line-height: 1.75;
    overflow: hidden;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    min-height: 4rem;
    display: flex;
    align-items: center;
  }
}
.c-voice__body {
  font-weight: 500;
  line-height: 1.6;
  letter-spacing: 0.05em;
  padding-top: 1.3333333333rem;
  border-top: 1px solid #DADADA;
}

@media screen and (min-width: 768px) {
  .c-voice__body {
    line-height: 1.9;
  }
}
.c-voice__link {
  margin: 2rem 0 0;
  text-align: center;
}

@media screen and (min-width: 768px) {
  .c-voice__link {
    margin-top: 5rem;
  }
}
.p-about-section {
  padding: 2rem 0 4rem;
  overflow-x: clip;
}

@media screen and (min-width: 768px) {
  .p-about-section {
    padding: 2.6875rem 0 6.25rem;
  }
}
.p-about-section--ihin {
  padding-bottom: 0;
}

@media screen and (min-width: 768px) {
  .p-about-section--ihin .p-about-section__list {
    justify-content: center;
  }
}
@media screen and (min-width: 768px) {
  .p-about-section--seizenseiri .p-about-section__balloon {
    padding: 1.4375rem 0.625rem;
  }
}
@media screen and (min-width: 768px) {
  .p-about-section--dust .p-about-section__list {
    max-width: 52.5625rem;
  }
}
@media screen and (min-width: 768px) {
  .p-about-section--tokusyu .p-about-section__list {
    max-width: 51.25rem;
  }
}
@media screen and (min-width: 768px) {
  .p-about-section--akiya .p-about-section__list {
    max-width: 60.8125rem;
    justify-content: center;
  }
}
@media screen and (min-width: 768px) {
  .p-about-section--kaitori .p-about-section__list {
    max-width: 61.25rem;
    justify-content: center;
  }
}
.p-about-section__title {
  position: relative;
  text-align: center;
  font-family: "M PLUS 1p", sans-serif;
  font-size: 1.6rem;
  font-weight: 500;
  letter-spacing: 0.05em;
  line-height: 1.5;
  color: #007BC7;
}

@media screen and (min-width: 768px) {
  .p-about-section__title {
    font-size: 2rem;
    line-height: 1.75;
    letter-spacing: 0.1em;
  }
}
.p-about-section__orange {
  color: #FA8E0A;
  font-size: 2.1333333333rem;
  letter-spacing: 0.1em;
}

@media screen and (min-width: 768px) {
  .p-about-section__orange {
    font-size: 2.625rem;
    line-height: 1;
  }
}
@media screen and (min-width: 1280px) {
  .p-about-section__orange {
    font-size: 3rem;
  }
}
.p-about-section__line {
  background: linear-gradient(transparent 60%, #FFFA9A 40%);
}

.p-about-section__content {
  margin: 1.6666666667rem 0 0;
}

@media screen and (min-width: 768px) {
  .p-about-section__content {
    margin-top: 3.75rem;
  }
}
.p-about-section__lead {
  font-weight: 700;
  line-height: 1.7;
  letter-spacing: 0.05em;
  display: flex;
  align-items: flex-end;
  justify-content: center;
  gap: 0.6666666667rem;
}

.p-about-section__lead::before, .p-about-section__lead::after {
  content: "";
  width: 0.1333333333rem;
  height: 1.2666666667rem;
  background: #262626;
}

.p-about-section__lead::before {
  transform: rotate(-25deg);
}

.p-about-section__lead::after {
  transform: rotate(25deg);
}

@media screen and (min-width: 768px) {
  .p-about-section__lead {
    line-height: 2;
  }
}
.p-about-section__list {
  display: flex;
  flex-direction: column;
  gap: 0.6666666667rem;
  max-width: 24rem;
  margin: 1.3333333333rem auto 0;
}

@media screen and (min-width: 768px) {
  .p-about-section__list {
    max-width: 60rem;
    margin-top: 1.6875rem;
    flex-wrap: wrap;
    flex-direction: row;
    gap: 1.8125rem 1.625rem;
  }
  .p-about-section__list--grid .p-about-section__balloon {
    width: 19.1875rem;
    padding-inline: 1.375rem;
  }
}
.p-about-section__list li {
  display: flex;
  align-items: center;
  gap: 1.0666666667rem;
}

@media screen and (min-width: 768px) {
  .p-about-section__list li {
    gap: 1.5625vw;
  }
}
@media screen and (min-width: 1280px) {
  .p-about-section__list li {
    gap: 1.5rem;
  }
}
.p-about-section__list li:nth-child(1)::before {
  background: url(./images/common/about_ico01.webp) no-repeat center center/contain;
}

.p-about-section__list li:nth-child(2)::before {
  background: url(./images/common/about_ico02.webp) no-repeat center center/contain;
}

.p-about-section__list li:nth-child(3)::before {
  background: url(./images/common/about_ico03.webp) no-repeat center center/contain;
}

.p-about-section__list li:nth-child(4)::before {
  background: url(./images/common/about_ico04.webp) no-repeat center center/contain;
}

.p-about-section__list li::before {
  content: "";
  width: 3.7333333333rem;
  height: 4rem;
  flex-shrink: 0;
}

@media screen and (min-width: 768px) {
  .p-about-section__list li::before {
    width: 4.0625rem;
    height: 4.4375rem;
  }
}
@media screen and (min-width: 1280px) {
  .p-about-section__list li::before {
    width: 4.75rem;
    height: 5.0625rem;
  }
}
.p-about-section__balloon {
  background: #ffffff;
  padding: 1.1333333333rem 0.3333333333rem 1.1333333333rem 1.3333333333rem;
  border-radius: 0.6666666667rem;
  font-weight: 500;
  line-height: 1.6;
  letter-spacing: 0.05em;
  filter: drop-shadow(0px 0px 16.3px #D6E0EC);
  transform: translateZ(0);
  width: 100%;
}

@media screen and (min-width: 768px) {
  .p-about-section__balloon {
    padding: 1.4375rem 1.5625rem;
    width: fit-content;
  }
}
.p-about-section__balloon span {
  font-size: 1.2rem;
  line-height: 1.4;
  font-weight: 700;
  color: #007BC7;
}

.p-about-section__balloon::after {
  content: "";
  width: 1.3333333333rem;
  height: 1.2rem;
  background: #ffffff;
  position: absolute;
  top: 50%;
  left: -0.8rem;
  transform: translateY(-50%);
  clip-path: polygon(100% 0, 0 50%, 100% 100%);
}

.p-about-section__sub-title {
  font-size: 1.2rem;
  font-family: "M PLUS 1p", sans-serif;
  font-weight: 500;
  letter-spacing: 0.1em;
  line-height: 1.5;
  text-align: center;
  margin: 2.6666666667rem 0 0;
}

.p-about-section__sub-title--tokusyu {
  color: #00B9EF;
  font-size: 1.6rem;
  line-height: 1.5;
  letter-spacing: 0.05em;
}

.p-about-section__sub-title span {
  display: inline-flex;
  align-items: flex-end;
  gap: 0.6666666667rem;
  color: #00B9EF;
  font-size: 1.6rem;
  line-height: 1.5;
  letter-spacing: 0.05em;
}

.p-about-section__sub-title span::before, .p-about-section__sub-title span::after {
  content: "";
  width: 0.1333333333rem;
  height: 1.4666666667rem;
  background: #00B9EF;
}

.p-about-section__sub-title span::before {
  transform: rotate(-25deg);
}

.p-about-section__sub-title span::after {
  transform: rotate(25deg);
}

.p-about-section__sub-title + .p-about-section__box {
  margin-top: 4rem;
}

@media screen and (min-width: 768px) {
  .p-about-section__sub-title {
    position: relative;
    text-align: left;
    left: calc(50% - 3.3125rem);
    margin-top: 7.75rem;
    display: inline-flex;
    align-items: center;
    gap: 0.625rem;
    font-size: 1.25rem;
    line-height: 1.75;
    width: 55.2772808587%;
  }
  .p-about-section__sub-title--tokusyu {
    color: #00B9EF;
    font-size: 1.5rem;
    line-height: 1.75;
    letter-spacing: 0.1em;
  }
  .p-about-section__sub-title span {
    align-items: center;
    font-size: 1.5rem;
  }
  .p-about-section__sub-title + .p-about-section__box {
    margin-top: 0.9375rem;
  }
}
.p-about-section__box {
  margin: 5.3333333333rem 0 0;
  background: #F2F8FF;
  border-radius: 1.3333333333rem;
  padding: 38.4615384615vw 1.3333333333rem 2.6666666667rem;
  position: relative;
}

@media screen and (min-width: 768px) {
  .p-about-section__box {
    margin-top: 8.125rem;
    padding: 1.875rem 1.25rem 2.5rem;
    display: flex;
    align-items: flex-start;
    gap: 1.875rem;
  }
}
@media screen and (min-width: 1280px) {
  .p-about-section__box {
    margin-top: 9.5rem;
    padding: 3.75rem 4.6875rem 3.75rem 5.4375rem;
    display: flex;
    gap: 3.125rem;
  }
}
.p-about-section__img {
  width: 77.7777777778%;
  position: absolute;
  top: -2.6666666667rem;
  left: 50%;
  transform: translateX(-50%);
}

.p-about-section__img img {
  width: 100%;
  height: auto;
  object-fit: cover;
  aspect-ratio: 280/170;
  border-radius: 1.3333333333rem;
}

@media screen and (min-width: 768px) {
  .p-about-section__img {
    border-radius: 1.25rem;
    position: static;
    margin-top: -5.125rem;
    width: 40.2504472272%;
    transform: none;
  }
  .p-about-section__img img {
    aspect-ratio: 450/363;
  }
}
@media screen and (min-width: 1280px) {
  .p-about-section__img {
    margin-top: -7rem;
  }
}
.p-about-section__text {
  font-weight: 700;
  line-height: 1.7;
  letter-spacing: 0.05em;
}

.p-about-section__text ul {
  margin: 1.3333333333rem 0;
  display: flex;
  flex-wrap: wrap;
  gap: 0.3333333333rem;
}

.p-about-section__text ul li {
  background: #ffffff;
  color: #007BC7;
  padding: 0.6666666667rem 1.2666666667rem;
  border-radius: 0.3333333333rem;
  font-weight: 700;
  line-height: 1.4;
  letter-spacing: 0.05em;
}

@media screen and (min-width: 768px) {
  .p-about-section__text {
    width: 55.2772808587%;
    line-height: 2;
  }
  .p-about-section__text ul li {
    letter-spacing: 0;
    padding: 0.3125rem 1.25rem;
  }
}
.p-area-office {
  padding: 4rem 0;
  background: #F2F8FF;
}

@media screen and (min-width: 768px) {
  .p-area-office {
    padding: 6.25rem 0;
  }
}
.p-area-office__list {
  margin: 2.6666666667rem 0 0;
}

@media screen and (min-width: 768px) {
  .p-area-office__list {
    margin-top: 3.75rem;
  }
}
.p-area-section {
  padding: 4rem 0;
  background: #F2F8FF;
}

@media screen and (min-width: 768px) {
  .p-area-section {
    padding: 6.25rem 0;
  }
}
.p-area-section__list {
  display: grid;
  gap: 1.3333333333rem;
  margin: 2.6666666667rem 0 0;
}

.p-area {
  padding: 4rem 0;
  overflow-x: clip;
  position: relative;
}

.p-area--bg {
  background: #F2F8FF;
}

@media screen and (min-width: 768px) {
  .p-area {
    padding: 6.25rem 0;
  }
}
.p-area--img .c-area::before {
  content: "";
  display: block;
  width: 13.4666666667rem;
  height: 8.7333333333rem;
  position: absolute;
  top: -8.8rem;
  right: -2.4rem;
  background: url(./images/common/map_img.webp) no-repeat center center/contain;
}

@media screen and (min-width: 768px) {
  .p-area--img .c-area::before {
    width: 20.3125rem;
    height: 13.125rem;
    top: -13.125rem;
    right: -5rem;
  }
}
@media screen and (min-width: 1280px) {
  .p-area--img .c-area::before {
    width: 23.75rem;
    height: 13.75rem;
    top: -13.875rem;
    right: -6.5625rem;
  }
}
.p-badge {
  padding: 3rem 0 0;
}

@media screen and (min-width: 768px) {
  .p-badge {
    padding: 2.6875rem 0 0;
  }
}
.p-badge__box {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 1.4666666667rem;
  max-width: 24rem;
  margin-inline: auto;
}

.p-badge__box::before, .p-badge__box::after {
  content: "";
  width: 3.5333333333rem;
  height: 10.4666666667rem;
  background: url(./images/voice/badge_deco.svg) no-repeat center center/contain;
}

.p-badge__box::after {
  transform: rotateY(180deg);
}

@media screen and (min-width: 768px) {
  .p-badge__box {
    max-width: 28.5625rem;
    gap: 1.6875rem;
  }
  .p-badge__box::before, .p-badge__box::after {
    width: 4.25rem;
    height: 12.5rem;
  }
}
.p-badge__item {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 0.6666666667rem;
}

@media screen and (min-width: 768px) {
  .p-badge__item {
    gap: 0.375rem;
  }
}
.p-badge__text {
  font-family: "M PLUS 1p", sans-serif;
  font-size: 1.6rem;
  font-weight: 500;
  line-height: 1.5;
  letter-spacing: 0.05em;
  text-align: center;
  color: #007BC7;
  position: relative;
  padding-top: 1.6rem;
}

.p-badge__text::before {
  content: "";
  width: 4.3333333333rem;
  height: 1.4rem;
  background: url(./images/voice/badge_ster.svg) no-repeat center center/contain;
  display: block;
  position: absolute;
  top: -1rem;
  left: 50%;
  transform: translateX(-50%);
}

@media screen and (min-width: 768px) {
  .p-badge__text {
    font-size: 2rem;
    letter-spacing: 0.1em;
    line-height: 1.75;
    padding-top: 1.125rem;
  }
  .p-badge__text::before {
    width: 5.1875rem;
    height: 1.6875rem;
    top: -1.1875rem;
  }
}
.p-badge__num {
  font-size: 4.8rem;
  font-weight: 700;
  font-family: "Montserrat", sans-serif;
  line-height: 1;
  color: #EC365A;
}

.p-badge__num span {
  font-size: 3.7333333333rem;
  font-weight: 900;
}

@media screen and (min-width: 768px) {
  .p-badge__num {
    font-size: 6rem;
  }
  .p-badge__num span {
    font-size: 4rem;
  }
}
.p-basic-section {
  padding: 4rem 0;
  background: #F2F8FF;
}

.p-basic-section--mt {
  margin: 4rem 0 0;
}

@media screen and (min-width: 768px) {
  .p-basic-section--mt {
    margin: 0;
  }
}
.p-basic-section--mb {
  margin: 0 0 4rem;
}

@media screen and (min-width: 768px) {
  .p-basic-section--mb {
    margin: 0;
  }
}
.p-basic-section--kaitori {
  background: #ffffff;
}

.p-basic-section--area {
  background: #ffffff;
}

@media screen and (min-width: 768px) {
  .p-basic-section {
    padding: 6.25rem 0;
  }
}
.p-basic-section__title {
  font-size: 1.6rem;
  font-weight: 500;
  font-family: "M PLUS 1p", sans-serif;
  color: #007BC7;
  text-align: center;
  letter-spacing: 0.05em;
  line-height: 1.5;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.3333333333rem;
  position: relative;
  padding-top: 2.4rem;
  white-space: nowrap;
}

.p-basic-section__title::before, .p-basic-section__title::after {
  content: "";
  width: 2.9333333333rem;
  height: 0.0666666667rem;
  background: #007BC7;
  margin-bottom: 0.6666666667rem;
}

@media screen and (min-width: 768px) {
  .p-basic-section__title {
    font-size: 2rem;
    line-height: 1.75;
    gap: 1.5625rem;
    padding-top: 3.3125rem;
  }
  .p-basic-section__title::before, .p-basic-section__title::after {
    width: 26.171875%;
  }
}
.p-basic-section__en {
  font-size: 1rem;
  font-weight: 400;
  font-family: "Montserrat", sans-serif;
  line-height: 1.7;
  display: block;
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
}

@media screen and (min-width: 768px) {
  .p-basic-section__en {
    font-size: 1rem;
    line-height: 1.75;
  }
}
.p-basic-section__orange {
  font-size: 2.1333333333rem;
  color: #FF9F2A;
  line-height: 1.75;
  letter-spacing: 0.1em;
}

@media screen and (min-width: 768px) {
  .p-basic-section__orange {
    font-size: 3rem;
    line-height: 1;
  }
}
.p-basic-section__list {
  margin: 2.6666666667rem 0 0;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 1.3333333333rem 0.6666666667rem;
}

.p-basic-section__list li {
  width: calc((100% - 0.6666666667rem) / 2);
}

@media screen and (min-width: 768px) {
  .p-basic-section__list {
    margin-top: 3.75rem;
    gap: 2.5rem 1.25rem;
  }
  .p-basic-section__list li {
    width: calc((100% - 2.5rem) / 3);
  }
}
@media screen and (min-width: 1024px) {
  .p-basic-section__list {
    gap: 2.5rem 1.6875rem;
  }
  .p-basic-section__list li {
    width: calc((100% - 5.0625rem) / 4);
  }
}
.p-basic-section__option {
  margin: 4rem 0 0;
}

.p-basic-section__option .p-basic-section__title {
  gap: 0.1333333333rem;
  padding-top: 0;
}

.p-basic-section__option .p-basic-section__title::before, .p-basic-section__option .p-basic-section__title::after {
  width: 1.2rem;
  margin: 0;
}

@media screen and (min-width: 768px) {
  .p-basic-section__option {
    margin-top: 5rem;
  }
  .p-basic-section__option .p-basic-section__title {
    gap: 0.5rem;
  }
  .p-basic-section__option .p-basic-section__title::before, .p-basic-section__option .p-basic-section__title::after {
    width: 31.015625%;
  }
}
.p-breadcrumb {
  display: none;
}

@media screen and (min-width: 768px) {
  .p-breadcrumb {
    display: block;
  }
}
.p-cancel {
  padding: 2rem 0 4rem;
}

@media screen and (min-width: 768px) {
  .p-cancel {
    padding: 3.9375rem 0 6.25rem;
  }
}
.p-cancel__text {
  font-weight: 700;
  line-height: 1.7;
  letter-spacing: 0.05em;
  text-align: center;
}

@media screen and (min-width: 768px) {
  .p-cancel__text {
    line-height: 2;
  }
}
.p-cancel__box {
  background: #ffffff;
  border-radius: 2rem;
  box-shadow: 0 0 16.3px #d6e0ec;
  padding: 2rem 1.6666666667rem;
  margin: 2rem 0 0;
}

@media screen and (min-width: 768px) {
  .p-cancel__box {
    margin: 2.5rem auto 0;
    padding: 3.125rem 5rem;
    max-width: 31.875rem;
  }
}
.p-cancel__box ul li {
  position: relative;
  padding-left: 1.3em;
  font-weight: 700;
  line-height: 1.7;
  letter-spacing: 0.05em;
  display: flex;
  align-items: center;
}

@media screen and (min-width: 768px) {
  .p-cancel__box ul li {
    line-height: 2;
    gap: 1em;
  }
}
.p-cancel__box ul li span:first-child {
  display: flex;
  align-items: center;
}

@media screen and (min-width: 768px) {
  .p-cancel__box ul li span:first-child {
    width: 10.9375rem;
    justify-content: space-between;
  }
}
.p-cancel__box ul li span:first-child::after {
  content: "→";
}

.p-cancel__box ul li::before {
  content: "・";
  position: absolute;
  left: 0;
}

.p-cancel__box ul li:not(:first-child) {
  margin-top: 1.3333333333rem;
}

.p-cancel__box ul li:not(:last-child) {
  padding-bottom: 1.3333333333rem;
  border-bottom: 1px solid #00B9EF;
}

.p-case {
  padding: 4rem 0;
  background: #F2F8FF;
}

.p-case--price {
  background: #ffffff;
}

@media screen and (min-width: 768px) {
  .p-case {
    padding: 6.25rem 0;
  }
}
.p-column-recommend {
  padding: 4rem 0;
}

@media screen and (min-width: 768px) {
  .p-column-recommend {
    padding: 6.25rem 0;
  }
}
.p-column-recommend__list {
  margin: 2.6666666667rem 0 0;
}

@media screen and (min-width: 768px) {
  .p-column-recommend__list li:nth-child(n+4) {
    display: none;
  }
}
.p-column {
  padding: 2rem 0 4rem;
}

@media screen and (min-width: 768px) {
  .p-column {
    padding: 2.6875rem 0 6.25rem;
  }
}
.p-column__categories {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 0.6666666667rem;
}

@media screen and (min-width: 768px) {
  .p-column__categories {
    gap: 1.25rem 0.625rem;
    grid-template-columns: repeat(4, 1fr);
  }
}
.p-column__category {
  font-family: "M PLUS 1p", sans-serif;
  font-weight: 500;
  letter-spacing: 0.05em;
  line-height: 1.4;
  text-align: center;
}

.p-column__category a {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 4rem;
  background: #CBCBCB;
  border-radius: 2.3333333333rem;
  color: #ffffff;
  padding: 0.6666666667rem;
}

@media screen and (min-width: 768px) {
  .p-column__category a {
    font-size: 1.125rem;
    line-height: 1.75;
    letter-spacing: 0.1em;
    height: 3.125rem;
    transition: background 0.3s;
  }
}
@media screen and (min-width: 768px) and (hover: hover) {
  .p-column__category a:hover {
    background: #00B9EF;
  }
}
.p-column__category--current a {
  background: #00B9EF;
}

.p-column__list {
  margin: 2.6666666667rem 0 0;
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 2rem 0.6666666667rem;
}

@media screen and (min-width: 768px) {
  .p-column__list {
    margin-top: 5rem;
    grid-template-columns: repeat(3, 1fr);
    gap: 2.5rem 1.5625rem;
  }
}
.p-column .pagination {
  margin: 2.6666666667rem 0 0;
}

.p-company-policy {
  padding: 2rem 0 3.3333333333rem;
}

@media screen and (min-width: 768px) {
  .p-company-policy {
    padding: 2.6875rem 0 5rem;
  }
}
.p-company-policy__list {
  display: grid;
  gap: 0.6666666667rem;
  margin: 1.8rem 0 0;
}

@media screen and (min-width: 768px) {
  .p-company-policy__list {
    gap: 1.1875rem 0.3125rem;
    grid-template-columns: repeat(2, 1fr);
    margin-top: 3.75rem;
  }
}
@media screen and (min-width: 1024px) {
  .p-company-policy__list {
    gap: 1.1875rem 2.34375%;
  }
}
.p-company-policy__item {
  background: #ffffff;
  border: 0.2rem solid #007BC7;
  border-radius: 1.3333333333rem;
  padding: 1.8rem 0.6666666667rem;
  text-align: center;
  font-feature-settings: "halt" on;
}

@media screen and (min-width: 768px) {
  .p-company-policy__item {
    padding: 2.1875rem 0.3125rem;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
  }
}
.p-company-policy__heading {
  font-family: "M PLUS 1p", sans-serif;
  font-size: 1.2rem;
  font-weight: 500;
  color: #007BC7;
  letter-spacing: 0.05em;
  line-height: 1.4;
  display: inline-block;
  margin-inline: auto;
  position: relative;
  padding: 0 1rem;
}

.p-company-policy__heading::before, .p-company-policy__heading::after {
  content: "";
  display: block;
  width: 0.1333333333rem;
  height: 1.4666666667rem;
  background: #007BC7;
  position: absolute;
  bottom: 0.2rem;
}

.p-company-policy__heading::before {
  left: 0;
  transform: rotate(-25deg);
}

.p-company-policy__heading::after {
  right: 0;
  transform: rotate(25deg);
}

@media screen and (min-width: 768px) {
  .p-company-policy__heading {
    font-size: 1.125rem;
  }
}
.p-company-policy__orange {
  color: #FA8E0A;
  font-size: 1.6rem;
  letter-spacing: 0.1em;
}

.p-company-policy__dots {
  background-image: radial-gradient(circle at center, #FA8E0A 20%, transparent 20%);
  background-position: top center;
  background-repeat: repeat-x;
  background-size: 1.04em 0.2666666667rem;
  padding-top: 0.2666666667rem;
}

.p-company-policy__text {
  margin: 0.6666666667rem 0 0;
  font-weight: 500;
  line-height: 1.6;
  letter-spacing: 0.05em;
  text-align: center;
}

@media screen and (min-width: 768px) {
  .p-company-policy__text {
    line-height: 1.9;
    font-size: min(1.4322916667vw, 1rem);
  }
}
.p-company-voice {
  margin: 4rem 0 0;
}

.p-company-voice__text {
  font-weight: 500;
  line-height: 1.6;
  letter-spacing: 0.05em;
  text-align: center;
  font-feature-settings: "halt" on;
}

.p-company-voice__text + .p-company-voice__text {
  margin-top: 1.5em;
}

@media screen and (min-width: 768px) {
  .p-company-voice__text {
    line-height: 1.9;
  }
}
.p-company-voice__banner {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0.2rem;
  margin: 2rem 0 0;
}

.p-company-voice__banner span {
  display: inline-block;
  padding: 0 0.6rem 0.0666666667rem;
  background: #00B9EF;
  color: #ffffff;
  font-size: 1rem;
  font-weight: 500;
  text-align: center;
  letter-spacing: 0.05em;
  line-height: 1.4;
}

@media screen and (min-width: 768px) {
  .p-company-voice__banner {
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: center;
    gap: 0.125rem 0;
    width: 25.625rem;
    margin: 2.8125rem auto 0;
  }
  .p-company-voice__banner span {
    padding: 0 0.375rem 0.0625rem;
  }
  .p-company-voice__banner span:nth-child(2) {
    padding-right: 0;
  }
  .p-company-voice__banner span:nth-child(3) {
    padding-left: 0;
  }
}
.p-company-voice__box {
  margin: -3.8rem 0 0;
  background: #F2FCFF;
  border-radius: 1.3333333333rem;
  padding: 5.1333333333rem 1rem 2rem;
  display: flex;
  justify-content: center;
}

@media screen and (min-width: 768px) {
  .p-company-voice__box {
    margin-top: -2.5rem;
    padding: 5rem 1.25rem 3.125rem;
  }
}
.p-company-voice__list {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0.6666666667rem;
  max-width: 26.6666666667rem;
}

@media screen and (min-width: 768px) {
  .p-company-voice__list {
    gap: 1.8125rem 2.5rem;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: center;
    max-width: 56.4375rem;
  }
}
@media screen and (min-width: 1024px) {
  .p-company-voice__list {
    justify-content: flex-start;
  }
}
.p-company-voice__item {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
}

@media screen and (min-width: 768px) {
  .p-company-voice__item {
    width: fit-content;
  }
}
.p-company-voice__icon {
  width: 4.8666666667rem;
  height: 4rem;
  flex-shrink: 0;
}

@media screen and (min-width: 768px) {
  .p-company-voice__icon {
    width: 6.25rem;
    height: 5rem;
  }
}
.p-company-voice__icon img {
  width: auto;
  height: 100%;
}

.p-company-voice__bubble {
  padding: 0.6666666667rem 1.0666666667rem 0.6666666667rem 1.3333333333rem;
  font-weight: 500;
  line-height: 1.6;
  letter-spacing: 0.05em;
  border-radius: 0.6666666667rem;
  background: #ffffff;
  display: flex;
  align-items: center;
  position: relative;
  width: 100%;
  min-height: 4rem;
  box-shadow: 0 0 16.3px 0 rgb(214, 224, 236);
}

.p-company-voice__bubble::before {
  content: "";
  position: absolute;
  top: 50%;
  left: -0.8rem;
  transform: translateY(-50%);
  width: 1.3333333333rem;
  height: 1.2666666667rem;
  background: #ffffff;
  clip-path: polygon(100% 0, 0 50%, 100% 100%);
}

@media screen and (min-width: 768px) {
  .p-company-voice__bubble {
    padding: 1.4375rem 1.625rem;
    min-height: auto;
    width: auto;
  }
}
.p-company-voice__text-wrap {
  margin: 2rem 0 0;
}

@media screen and (min-width: 768px) {
  .p-company-voice__text-wrap {
    margin: 2.5rem 0 0;
  }
}
.p-company-voice__circles {
  position: relative;
  margin: 1.3333333333rem auto 0;
  width: 23.2rem;
  height: 21.4rem;
}

@media screen and (min-width: 768px) {
  .p-company-voice__circles {
    gap: 1.25rem;
    margin-top: 2.5rem;
    width: fit-content;
    height: auto;
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 1.25rem;
  }
  .p-company-voice__circles::before, .p-company-voice__circles::after {
    content: "";
    display: block;
    width: 0.1875rem;
    height: 10.4375rem;
    background: #00B9EF;
    margin-top: 1.875rem;
  }
  .p-company-voice__circles::before {
    order: 1;
    transform: rotate(-20deg);
    margin-right: 1.875rem;
  }
  .p-company-voice__circles::after {
    order: 5;
    transform: rotate(20deg);
    margin-left: 1.875rem;
  }
}
.p-company-voice__circle {
  width: 12rem;
  height: 12rem;
  display: flex;
  justify-content: center;
  align-items: center;
  border: 0.0666666667rem solid #00B9EF;
  border-radius: 50%;
  font-family: "M PLUS 1p", sans-serif;
  font-size: 1.2rem;
  font-weight: 500;
  color: #007BC7;
  letter-spacing: 0.05em;
  line-height: 1.4;
  text-align: center;
}

.p-company-voice__circle:nth-child(1) {
  margin-inline: auto;
}

.p-company-voice__circle:nth-child(2) {
  margin-top: -2.6666666667rem;
}

.p-company-voice__circle:nth-child(3) {
  position: absolute;
  bottom: 0;
  right: 0;
}

@media screen and (min-width: 768px) {
  .p-company-voice__circle {
    width: 13.75rem;
    height: 13.75rem;
    font-size: 1.125rem;
    line-height: 1.75;
    letter-spacing: 0.1em;
  }
  .p-company-voice__circle:nth-child(1) {
    margin: 0;
    order: 3;
  }
  .p-company-voice__circle:nth-child(2) {
    margin: 0;
    order: 2;
  }
  .p-company-voice__circle:nth-child(3) {
    position: static;
    order: 4;
  }
}
.p-company-voice__thoughts {
  margin: 2.6666666667rem auto 0;
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  gap: 0.6666666667rem;
  max-width: 24rem;
}

@media screen and (min-width: 768px) {
  .p-company-voice__thoughts {
    flex-direction: row;
    justify-content: center;
    gap: 1.0416666667vw;
    max-width: 68rem;
  }
}
@media screen and (min-width: 1280px) {
  .p-company-voice__thoughts {
    gap: 1.25rem;
  }
}
.p-company-voice__thoughts-item {
  position: relative;
}

.p-company-voice__thoughts-item:nth-child(1) .p-company-voice__thoughts-icon {
  left: -2.9333333333rem;
}

.p-company-voice__thoughts-item:nth-child(2) .p-company-voice__thoughts-icon {
  left: -3.4666666667rem;
}

.p-company-voice__thoughts-item:nth-child(3) .p-company-voice__thoughts-icon {
  left: -2.2666666667rem;
}

.p-company-voice__thoughts-item:nth-child(4) .p-company-voice__thoughts-icon {
  left: -2.4666666667rem;
}

@media screen and (min-width: 768px) {
  .p-company-voice__thoughts-item {
    display: flex;
    flex-direction: column-reverse;
    align-items: center;
  }
  .p-company-voice__thoughts-item:nth-child(1) .p-company-voice__thoughts-icon {
    margin-top: -1.0625rem;
    width: 6.25rem;
  }
  .p-company-voice__thoughts-item:nth-child(2) .p-company-voice__thoughts-icon {
    margin-top: -1.25rem;
    width: 7.625rem;
  }
  .p-company-voice__thoughts-item:nth-child(3) .p-company-voice__thoughts-icon {
    margin-top: -1.375rem;
    width: 6.6875rem;
  }
  .p-company-voice__thoughts-item:nth-child(4) .p-company-voice__thoughts-icon {
    margin-top: -1rem;
    width: 6.125rem;
  }
}
.p-company-voice__thoughts-icon {
  height: 5rem;
  position: absolute;
  bottom: -0.0666666667rem;
}

@media screen and (min-width: 768px) {
  .p-company-voice__thoughts-icon {
    position: static;
    height: auto;
  }
}
.p-company-voice__thoughts-icon img {
  width: auto;
  height: 100%;
}

.p-company-voice__thoughts-bubble {
  font-weight: 700;
  line-height: 1.7;
  letter-spacing: 0.05em;
  border-radius: 0.6666666667rem;
  background: #FFFAF4;
  border: 0.2rem solid #FA8E0A;
  display: flex;
  align-items: center;
  justify-content: center;
  height: 5.9333333333rem;
  width: 20.0666666667rem;
}

@media screen and (min-width: 768px) {
  .p-company-voice__thoughts-bubble {
    width: 21.7447916667vw;
    height: 5.5rem;
    font-weight: 500;
    font-size: min(1.4322916667vw, 1rem);
    line-height: 1.5;
    text-align: center;
  }
}
@media screen and (min-width: 1280px) {
  .p-company-voice__thoughts-bubble {
    width: 16.0625rem;
  }
}
.p-company-voice__sign {
  margin: 3em 0 0;
}

.p-company {
  padding: 4rem 0;
  background: #F2F8FF;
}

@media screen and (min-width: 768px) {
  .p-company {
    padding: 6.25rem 0;
  }
}
.p-company__box {
  background: #ffffff;
  border-radius: 1rem;
  padding: 2rem 1.3333333333rem;
  margin: 2rem 0 0;
  box-shadow: 0px 0px 16.3px #D6E0EC;
}

@media screen and (min-width: 768px) {
  .p-company__box {
    padding: 5rem 3.75rem;
    margin-top: 3.75rem;
    border-radius: 1.875rem;
  }
}
.p-company__table {
  width: 100%;
}

@media screen and (min-width: 768px) {
  .p-company__table {
    max-width: 58.75rem;
    margin-inline: auto;
  }
}
.p-company__table tr {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
}

.p-company__table tr:not(:last-child) {
  border-bottom: 0.0666666667rem solid #007BC7;
  padding-bottom: 1.3333333333rem;
}

.p-company__table tr:not(:first-child) {
  margin-top: 1.3333333333rem;
}

@media screen and (min-width: 768px) {
  .p-company__table tr {
    flex-direction: row;
  }
  .p-company__table tr:not(:last-child) {
    padding-bottom: 3.3333333333rem;
  }
  .p-company__table tr:not(:first-child) {
    margin-top: 3.125rem;
  }
}
.p-company__table th {
  font-weight: 700;
  line-height: 1.7;
  letter-spacing: 0.05em;
  color: #007BC7;
}

@media screen and (min-width: 768px) {
  .p-company__table th {
    width: 10.625rem;
    text-align: left;
    line-height: 2;
  }
}
.p-company__table td {
  margin: 0.3333333333rem 0 0;
  font-weight: 700;
  line-height: 1.7;
  letter-spacing: 0.05em;
}

@media screen and (min-width: 768px) {
  .p-company__table td {
    margin-top: 0;
    line-height: 2;
  }
}
.p-compensation__content {
  margin: 1.3333333333rem 0 0;
  border-radius: 0.6666666667rem;
  border: 0.2666666667rem solid #00B9EF;
  background: #F2FCFF;
  padding: 4rem 1rem 1.8666666667rem;
  position: relative;
  text-align: center;
}

@media screen and (min-width: 768px) {
  .p-compensation__content {
    margin-top: 1.875rem;
    border-radius: 0.625rem;
    padding: 7.5rem min(3.90625vw, 4.1875rem) 4.8125rem;
  }
}
@media screen and (min-width: 1024px) {
  .p-compensation__content {
    padding-inline: 4.1875rem;
  }
}
.p-compensation__box {
  border-radius: 0.5333333333rem;
  border: 0.2rem solid #EC365A;
  background: #FDF9FA;
  padding: 6rem 0.6666666667rem 1.5333333333rem;
  position: relative;
  z-index: 2;
}

@media screen and (min-width: 768px) {
  .p-compensation__box {
    border-radius: 0.625rem;
    padding: 7.0625rem 1.875rem 3.5625rem;
  }
}
.p-compensation__box-title {
  font-size: 1.6rem;
  font-weight: 500;
  font-family: "M PLUS 1p", sans-serif;
  line-height: 1.5;
  letter-spacing: 0.05em;
  color: #ffffff;
  background: #EC365A;
  position: absolute;
  top: -2rem;
  left: 50%;
  transform: translateX(-50%);
  width: 18.6666666667rem;
  padding: 0.6666666667rem 0.9333333333rem;
}

@media screen and (min-width: 768px) {
  .p-compensation__box-title {
    font-size: min(3.2552083333vw, 3rem);
    padding: 1.625rem 1.5rem;
    max-width: 62.125rem;
    width: 90%;
    top: -2.75rem;
  }
}
.p-compensation__balloon {
  margin-inline: auto;
  width: 19.6666666667rem;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 0.8666666667rem 0.3333333333rem;
}

.p-compensation__balloon li {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: fit-content;
  padding: 0.4rem 0.8rem;
  height: 2.7333333333rem;
  border-radius: 2.2666666667rem;
  background: #007BC7;
  color: #ffffff;
  font-size: 1rem;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0.05em;
  position: relative;
}

.p-compensation__balloon li::after {
  content: "";
  width: 1.0666666667rem;
  height: 1.0666666667rem;
  background: #007BC7;
  position: absolute;
  bottom: -0.5333333333rem;
  left: 50%;
  transform: translateX(-50%);
  clip-path: polygon(100% 0%, 0 0, 50% 100%);
}

@media screen and (min-width: 768px) {
  .p-compensation__balloon {
    width: 100%;
    flex-wrap: nowrap;
    gap: 0.625rem;
  }
  .p-compensation__balloon li {
    font-size: 1rem;
    line-height: 2;
    padding: 0 1.5625rem;
    height: 4.25rem;
  }
  .p-compensation__balloon li::after {
    bottom: -0.6875rem;
  }
}
.p-compensation__top-text {
  margin: 1.8666666667rem 0 0;
  font-weight: 700;
  line-height: 1.7;
  letter-spacing: 0.05em;
  position: relative;
}

.p-compensation__top-text::after {
  content: "";
  width: 3rem;
  height: 1.0666666667rem;
  background: url(./images/common/ico_compensation_arrow.svg) no-repeat center center/contain;
  position: absolute;
  bottom: -1.7333333333rem;
  left: 50%;
  transform: translateX(-50%);
}

@media screen and (min-width: 768px) {
  .p-compensation__top-text {
    margin: 2.25rem auto 0;
    width: fit-content;
    font-size: 1.125rem;
    line-height: 1.75;
    letter-spacing: 0.1em;
  }
  .p-compensation__top-text::before {
    content: "";
    width: 3rem;
    height: 1.0666666667rem;
    background: url(./images/common/ico_compensation_arrow.svg) no-repeat center center/contain;
    position: absolute;
    bottom: 0.3125rem;
    left: 4.4375rem;
  }
  .p-compensation__top-text::after {
    bottom: 0.3125rem;
    right: 3.75rem;
    left: auto;
  }
}
.p-compensation__box-list {
  margin: 3.0666666667rem auto 0;
  max-width: 19.3333333333rem;
  display: flex;
  flex-direction: column;
  gap: 0.6666666667rem;
}

.p-compensation__box-list li {
  background: #ffffff;
  border-radius: 0.5333333333rem;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 4rem;
  font-weight: 700;
  line-height: 1.4;
  letter-spacing: 0.05em;
  color: #007BC7;
}

@media screen and (min-width: 768px) {
  .p-compensation__box-list {
    margin-top: 0.625rem;
    flex-direction: row;
    justify-content: center;
    gap: 0.625rem;
    max-width: 57.75rem;
  }
  .p-compensation__box-list li {
    height: 4.9375rem;
    border-radius: 0.625rem;
    padding: 1.375rem 1.5625rem;
  }
}
.p-compensation__bottom-text {
  margin: 1.3333333333rem 0 0;
  font-weight: 500;
  line-height: 1.6;
  letter-spacing: 0.05em;
}

@media screen and (min-width: 768px) {
  .p-compensation__bottom-text {
    margin-top: rmL(25);
    line-height: 1.9;
  }
}
.p-compensation__case {
  margin: 2.6666666667rem 0 0;
}

@media screen and (min-width: 768px) {
  .p-compensation__case {
    margin: 3.3125rem auto 0;
    max-width: 65rem;
  }
}
.p-compensation__case-title {
  display: inline-flex;
  align-items: flex-end;
  justify-content: center;
  font-size: 1.6rem;
  font-family: "M PLUS 1p", sans-serif;
  font-weight: 500;
  line-height: 1.5;
  letter-spacing: 0.05em;
  color: #FA8E0A;
}

.p-compensation__case-title::before, .p-compensation__case-title::after {
  content: "";
  width: 2.2666666667rem;
  height: 2.2666666667rem;
  background: url(./images/common/ico_compensation.svg) no-repeat center center/contain;
  margin-bottom: -0.2rem;
}

@media screen and (min-width: 768px) {
  .p-compensation__case-title {
    font-size: 1.75rem;
    line-height: 1.75;
    letter-spacing: 0.1em;
    gap: 0.6875rem;
  }
  .p-compensation__case-title::before, .p-compensation__case-title::after {
    width: 4.125rem;
    height: 4.125rem;
    margin-bottom: -0.3125rem;
  }
}
@media screen and (min-width: 1024px) {
  .p-compensation__case-title {
    font-size: 2rem;
  }
}
.p-compensation__case-list {
  margin: 1.3333333333rem auto 0;
  width: 21.3333333333rem;
  display: flex;
  flex-direction: column;
  gap: 0.6666666667rem;
}

.p-compensation__case-list li {
  background: #ffffff;
  border-radius: 0.5333333333rem;
  padding: 1rem;
}

.p-compensation__case-list li h4 {
  font-size: 1rem;
  font-weight: 700;
  line-height: 1.4;
  letter-spacing: 0.05em;
  color: #EC365A;
}

.p-compensation__case-list li p {
  font-weight: 700;
  line-height: 1.4;
  letter-spacing: 0.05em;
  margin: 0.2666666667rem 0 0;
}

@media screen and (min-width: 768px) {
  .p-compensation__case-list {
    margin-top: 1.875rem;
    width: 100%;
    flex-direction: row;
    justify-content: center;
    gap: 0.375rem;
  }
  .p-compensation__case-list li {
    border-radius: 0.625rem;
    padding: 0.625rem 1.5625rem;
  }
  .p-compensation__case-list li h4 {
    font-size: 1rem;
  }
  .p-compensation__case-list li p {
    font-size: 1rem;
  }
}
.p-compensation__case-text {
  margin: 1.3333333333rem 0 0;
  font-weight: 500;
  line-height: 1.6;
  letter-spacing: 0.05em;
  text-align: left;
}

@media screen and (min-width: 768px) {
  .p-compensation__case-text {
    margin-top: 1.875rem;
    line-height: 1.9;
  }
}
.p-compensation__area {
  margin: 4rem 0;
}

.p-compensation__area p {
  margin: 1.3333333333rem 0 0;
  font-weight: 700;
  line-height: 1.7;
  letter-spacing: 0.05em;
  text-align: center;
  font-feature-settings: "palt";
}

@media screen and (min-width: 768px) {
  .p-compensation__area {
    margin: 6.25rem 0;
  }
  .p-compensation__area p {
    margin-top: 1.875rem;
    line-height: 2;
  }
}
.p-contact {
  padding: 1.7333333333rem 0 4rem;
  overflow-x: clip;
}

@media screen and (min-width: 768px) {
  .p-contact {
    padding: 2.6875rem 0 6.25rem;
  }
}
.p-contact__tel a {
  border: 0.1333333333rem solid #EC365A;
  border-radius: 1.3333333333rem;
  background: #FDF9FA;
  padding: 1.8666666667rem 0.6666666667rem;
  text-align: center;
}

@media screen and (min-width: 768px) {
  .p-contact__tel a {
    max-width: 52.125rem;
    padding: 2.75rem 0.625rem;
    margin-inline: auto;
  }
}
.p-contact__tel-text {
  font-family: "M PLUS 1p", sans-serif;
  font-size: 1.6rem;
  font-weight: 500;
  line-height: 1.5;
  letter-spacing: 0.05em;
  color: #EC365A;
}

@media screen and (min-width: 768px) {
  .p-contact__tel-text {
    line-height: 1.75;
    letter-spacing: 0.1em;
  }
}
.p-contact__tel-num {
  margin: 0.6666666667rem 0 0;
  color: #EC365A;
  text-align: center;
  font-family: "M PLUS 1p", sans-serif;
  font-size: 2.1333333333rem;
  font-weight: 900;
  line-height: 1.5;
  letter-spacing: 0.05em;
}

@media screen and (min-width: 768px) {
  .p-contact__tel-num {
    font-size: 3rem;
    letter-spacing: 0.1em;
    margin: 0;
  }
}
.p-contact__tel-time {
  color: #EC365A;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0.05em;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.6666666667rem;
}

.p-contact__tel-time::before, .p-contact__tel-time::after {
  content: "";
  display: block;
  width: 0.1333333333rem;
  height: 1rem;
  background: #EC365A;
}

.p-contact__tel-time::before {
  transform: rotate(-25deg);
}

.p-contact__tel-time::after {
  transform: rotate(25deg);
}

.p-contact__text {
  font-weight: 700;
  line-height: 1.7;
  letter-spacing: 0.05em;
  text-align: center;
  margin: 2.6666666667rem 0 0;
}

@media screen and (min-width: 768px) {
  .p-contact__text {
    line-height: 2;
    margin-top: 3.75rem;
  }
}
.p-contact__box {
  background: #ffffff;
  border-radius: 2rem;
  box-shadow: 0 0 16.3px #d6e0ec;
  padding: 2.6666666667rem 1.3333333333rem;
  margin: 2rem 0 0;
}

@media screen and (min-width: 768px) {
  .p-contact__box {
    padding: 5rem 2.5rem;
    border-radius: 1.875rem;
    margin-top: 2.5rem;
  }
}
.p-contact__form-wrap {
  margin: 2rem 0 0;
}

@media screen and (min-width: 768px) {
  .p-contact__form-wrap {
    max-width: 60.8125rem;
    margin: 3.75rem auto 0;
  }
}
.p-contact__item:not(:first-child) {
  margin-top: 1.3333333333rem;
}

@media screen and (min-width: 768px) {
  .p-contact__item {
    display: grid;
    grid-template-columns: 12.5rem 1fr;
    align-items: center;
  }
  .p-contact__item:has(.p-contact__textarea) {
    align-items: flex-start;
  }
  .p-contact__item:has(.p-contact__textarea) .p-contact__label {
    margin-top: 0.875rem;
  }
}
.p-contact__label label {
  display: flex;
  align-items: center;
  gap: 0.6666666667rem;
  font-weight: 700;
  font-size: 1.0666666667rem;
  line-height: 2;
  letter-spacing: 0.05em;
}

@media screen and (min-width: 768px) {
  .p-contact__label label {
    font-size: 1rem;
  }
}
.p-contact__label label span {
  display: inline-block;
  padding: 0 0.4666666667rem 0.0666666667rem;
  font-size: 0.9333333333rem;
  font-weight: 400;
  line-height: 1.4285714286;
  letter-spacing: 0.05em;
  color: #ffffff;
  background: #EC365A;
  border-radius: 0.6666666667rem;
}

.p-contact__label label span.p-contact__optional {
  background: #CCCCCC;
}

.p-contact__input {
  margin: 0.6666666667rem 0 0;
}

.p-contact__input input {
  display: block;
  width: 100%;
  padding: 1.2rem 1.3333333333rem;
  border: none;
  background: #F2FCFF;
  border-radius: 0.6666666667rem;
  font-size: 16px;
  line-height: 1.5;
}

.p-contact__input input[type=file] {
  font-size: 15px;
}

.p-contact__input input::placeholder {
  color: #999;
}

.p-contact__input:focus {
  outline: none;
}

@media screen and (min-width: 768px) {
  .p-contact__input {
    margin: 0;
  }
  .p-contact__input input {
    padding: 1rem 1.875rem;
  }
  .p-contact__input input[type=file] {
    font-size: min(1.3020833333vw, 12px);
  }
  .p-contact__input input::placeholder {
    font-size: 14px;
  }
  .p-contact__input--zip {
    max-width: 15rem;
  }
  .p-contact__input--tel {
    max-width: 15rem;
  }
}
@media screen and (min-width: 1280px) {
  .p-contact__input input[type=file] {
    font-size: 12px;
    padding: 1rem 0.625rem;
  }
}
@media screen and (min-width: 768px) {
  .p-contact__wrap {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 0.625rem;
  }
}
.p-contact__textarea {
  margin: 0.6666666667rem 0 0;
}

.p-contact__textarea textarea {
  display: block;
  width: 100%;
  min-height: 14.2666666667rem;
  padding: 1.2rem 1.3333333333rem;
  border: none;
  background: #F2FCFF;
  border-radius: 0.6666666667rem;
  font-size: 16px;
  line-height: 1.5;
}

.p-contact__textarea textarea::placeholder {
  color: #999;
}

.p-contact__textarea:focus {
  outline: none;
}

@media screen and (min-width: 768px) {
  .p-contact__textarea {
    margin: 0;
  }
  .p-contact__textarea textarea {
    min-height: 13.125rem;
    padding: 1rem 1.875rem;
  }
  .p-contact__textarea textarea::placeholder {
    font-size: 14px;
  }
}
.p-contact__privacy {
  margin: 2rem 0 0;
}

.p-contact__privacy-label {
  text-align: center;
}

.p-contact__privacy label {
  position: relative;
  display: inline-flex;
  justify-content: center;
  align-items: center;
}

.p-contact__privacy label input {
  position: absolute;
  top: 0;
  left: 0;
  opacity: 0;
}

.p-contact__privacy label input:checked + span::after {
  opacity: 1;
}

.p-contact__privacy label .wpcf7-form-control-wrap {
  display: block;
}

.p-contact__privacy label span {
  display: flex;
  justify-content: center;
  align-items: center;
  font-weight: 500;
  line-height: 1.6;
  position: relative;
  cursor: pointer;
}

.p-contact__privacy label span.wpcf7-not-valid-tip {
  position: absolute;
  display: block;
  bottom: -1.3333333333rem;
  width: 23.4rem;
}

.p-contact__privacy label span a {
  color: #007BC7;
  position: relative;
}

.p-contact__privacy label span a::after {
  content: "";
  display: block;
  width: 100%;
  height: 1px;
  background: #007BC7;
  position: absolute;
  bottom: 0.2rem;
  left: 0;
  transition: width 0.3s;
}

@media screen and (min-width: 768px) and (hover: hover) {
  .p-contact__privacy label span a:hover::after {
    width: 0;
  }
}
.p-contact__privacy label span.wpcf7-list-item-label::before {
  content: "";
  width: 2rem;
  height: 2rem;
  border: 1px solid #00B9EF;
  margin-right: 0.6666666667rem;
  border-radius: 0.3333333333rem;
}

.p-contact__privacy label span.wpcf7-list-item-label::after {
  display: block;
  position: absolute;
  z-index: 2;
  content: "";
  top: -0.2rem;
  left: 0.8rem;
  width: 0.9333333333rem;
  height: 1.6666666667rem;
  border-bottom: 3px solid #007BC7;
  border-right: 3px solid #007BC7;
  transform: rotate(45deg);
  opacity: 0;
  transition: 0.3s;
}

@media screen and (min-width: 768px) {
  .p-contact__privacy {
    margin-top: 3.75rem;
  }
  .p-contact__privacy label span {
    line-height: 1.9;
  }
  .p-contact__privacy label span.wpcf7-list-item-label::before {
    margin-right: 1.25rem;
  }
}
.p-contact__submit {
  margin: 1.3333333333rem auto 0;
  width: 21.3333333333rem;
  position: relative;
}

.p-contact__submit::after {
  content: "";
  width: 1.3333333333rem;
  height: 0.8rem;
  mask-image: url(./images/common/ico_btn_arrow.svg);
  mask-size: contain;
  mask-position: center center;
  mask-repeat: no-repeat;
  -webkit-mask-image: url(./images/common/ico_btn_arrow.svg);
  -webkit-mask-size: contain;
  -webkit-mask-position: center center;
  -webkit-mask-repeat: no-repeat;
  background: #00B9EF;
  position: absolute;
  top: 50%;
  right: 1.3333333333rem;
  transform: translateY(-50%);
  transition: background 0.3s, transform 0.3s;
}

.p-contact__submit input {
  display: inline-block;
  width: 100%;
  padding: 0.8rem;
  font-size: 1.2rem;
  font-weight: 700;
  line-height: 2;
  letter-spacing: 0.05em;
  border: 0.0666666667rem solid #00B9EF;
  border-radius: 2.6666666667rem;
  background: #ffffff;
  color: #00B9EF;
  text-align: center;
  transition: background 0.3s, color 0.3s;
}

.p-contact__submit .wpcf7-spinner {
  position: absolute;
  top: 50%;
  transform: translatey(-50%);
}

@media screen and (min-width: 768px) {
  .p-contact__submit {
    margin-top: 1.875rem;
    width: 21.875rem;
  }
}
@media screen and (min-width: 768px) and (hover: hover) {
  .p-contact__submit:has(input:not(:disabled)):hover::after {
    background: #ffffff;
    transform: translateY(-50%) translateX(5px);
  }
  .p-contact__submit:has(input:not(:disabled)):hover input {
    background: #00B9EF;
    color: #ffffff;
  }
}
.p-contact .wpcf7 .wpcf7-spinner {
  margin: 0;
  left: 105%;
}

.p-detail {
  padding: 7.6rem 0 4rem;
}

@media screen and (min-width: 768px) {
  .p-detail {
    padding: 12.5rem 0 6.25rem;
  }
}
@media screen and (min-width: 1280px) {
  .p-detail {
    padding: 7.125rem 0 6.25rem;
  }
}
.p-detail__box {
  margin: 2.8666666667rem 0 0;
  background: #ffffff;
  border-radius: 1.3333333333rem;
  box-shadow: 0 0 16.3px #D6E0EC;
  padding: 2.6666666667rem 1.3333333333rem;
}

@media screen and (min-width: 768px) {
  .p-detail__box {
    margin-top: 3.75rem;
    padding: 3.75rem 2.5rem;
    border-radius: 1.875rem;
  }
}
@media screen and (min-width: 1280px) {
  .p-detail__box {
    margin-top: 7rem;
    padding: 6.25rem 5rem;
  }
}
.p-detail__title {
  font-size: 1.2rem;
  font-weight: 500;
  line-height: 1.4;
  letter-spacing: 0.05em;
  color: #007BC7;
}

@media screen and (min-width: 768px) {
  .p-detail__title {
    font-size: 2rem;
    line-height: 1.75;
    letter-spacing: 0.1em;
  }
}
.p-detail__info {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.6666666667rem;
  margin: 0.6666666667rem 0 0;
}

@media screen and (min-width: 768px) {
  .p-detail__info {
    margin-top: 1.25rem;
  }
}
.p-detail__date {
  font-family: "Montserrat", sans-serif;
  font-weight: 400;
  letter-spacing: 0.05em;
}

.p-detail__category a {
  display: inline-block;
  font-weight: 500;
  line-height: 1.6;
  letter-spacing: 0.05em;
  color: #ffffff;
  background: #00B9EF;
  border: 1px solid #00B9EF;
  border-radius: 1.3333333333rem;
  padding: 0.1333333333rem 0.6rem;
  transition: background 0.3s, color 0.3s;
}

@media screen and (min-width: 768px) {
  .p-detail__category a {
    line-height: 1.9;
  }
}
@media screen and (min-width: 768px) and (hover: hover) {
  .p-detail__category a:hover {
    background: #ffffff;
    color: #00B9EF;
  }
}
.p-detail__img {
  width: 100%;
  overflow: hidden;
  border-radius: 0.6666666667rem;
  margin: 1.3333333333rem 0 0;
}

@media screen and (min-width: 768px) {
  .p-detail__img {
    margin-top: 3.75rem;
    border-radius: 1.25rem;
  }
}
.p-detail__img img {
  width: 100%;
}

.p-detail__related {
  margin: 2rem 0;
  background: #F2FCFF;
  border-radius: 1.3333333333rem;
  padding: 2.6666666667rem 1.3333333333rem;
}

@media screen and (min-width: 768px) {
  .p-detail__related {
    margin: 2.5rem 0;
    padding: 2.5rem 3.75rem;
    border-radius: 1.25rem;
  }
}
.p-detail h2.p-detail__related-title {
  margin: 0;
  font-size: 1.2rem;
  font-weight: 500;
  line-height: 1.4;
  letter-spacing: 0.05em;
  color: #007BC7;
  text-align: center;
  background: transparent;
}

@media screen and (min-width: 768px) {
  .p-detail h2.p-detail__related-title {
    font-size: 1.125rem;
    line-height: 1.75;
    letter-spacing: 0.1em;
  }
}
.p-detail ul.p-detail__related-list {
  display: flex;
  flex-direction: column;
  gap: 1rem;
  margin: 1.3333333333rem 0 0;
}

@media screen and (min-width: 768px) {
  .p-detail ul.p-detail__related-list {
    margin-top: 1.875rem;
    gap: 1.25rem;
  }
}
.p-detail li.p-detail__related-item {
  font-size: 1rem;
  font-weight: 500;
  line-height: 1.6;
  letter-spacing: 0.05em;
  padding: 0 0 0.9375rem;
  list-style: none;
  border-bottom: 1px solid #00B9EF;
}

@media screen and (min-width: 768px) {
  .p-detail li.p-detail__related-item {
    font-size: 1rem;
    line-height: 1.9;
    padding-bottom: 1.25rem;
  }
}
.p-detail li.p-detail__related-item:last-child {
  border-bottom: none;
  padding-bottom: 0;
}

.p-detail li.p-detail__related-item a {
  color: #262626;
  transition: color 0.3s;
}

.p-detail li.p-detail__related-item a::after {
  display: none;
}

@media (hover: hover) {
  .p-detail li.p-detail__related-item a:hover {
    color: #007BC7;
  }
}
.p-detail__pagination {
  margin-top: 2rem;
}

@media screen and (min-width: 768px) {
  .p-detail__pagination {
    margin-top: 3.75rem;
  }
}
.p-error {
  padding: 3.0666666667rem 0 4rem;
}

@media screen and (min-width: 768px) {
  .p-error {
    padding: 3.9375rem 0 6.25rem;
  }
}
.p-error__box {
  background: #ffffff;
  border-radius: 2rem;
  box-shadow: 0 0 16.3px #d6e0ec;
  padding: 2.6666666667rem 1.3333333333rem;
}

@media screen and (min-width: 768px) {
  .p-error__box {
    padding: 5rem 1.25rem;
  }
}
.p-error__text {
  font-weight: 700;
  line-height: 1.7;
  letter-spacing: 0.05em;
  text-align: center;
}

@media screen and (min-width: 768px) {
  .p-error__text {
    line-height: 2;
  }
}
.p-error__link {
  margin: 1.3333333333rem 0 0;
  text-align: center;
}

@media screen and (min-width: 768px) {
  .p-error__link {
    margin: 1.875rem 0 0;
  }
}
.p-example-case {
  padding: 2rem 0 4rem;
}

@media screen and (min-width: 768px) {
  .p-example-case {
    padding: 6.25rem 0;
  }
}
.p-example-case__list {
  display: grid;
  gap: 1.3333333333rem;
}

@media screen and (min-width: 768px) {
  .p-example-case__list {
    gap: 2.34375%;
    grid-template-columns: repeat(2, 1fr);
  }
}
.p-example-case__item {
  background: #ffffff;
  border-radius: 1rem;
  box-shadow: 0 0 16.3px 0 rgb(214, 224, 236);
  padding: 2rem 1.3333333333rem;
}

@media screen and (min-width: 768px) {
  .p-example-case__item {
    padding: 1.875rem min(1.953125vw, 2.5rem);
    border-radius: 1.25rem;
    position: relative;
  }
}
.p-example-case__categories {
  display: flex;
  flex-wrap: wrap;
  gap: 0.6666666667rem;
}

.p-example-case__categories li span {
  display: inline-block;
  font-weight: 700;
  letter-spacing: 0.05em;
  line-height: 2.3333333333;
  border-radius: 1.2rem;
  padding: 0 1.3333333333rem;
  border: 1px solid #DADADA;
}

.p-example-case__categories li.p-example-case__category-name span {
  background: #00B9EF;
  color: #ffffff;
  border-color: #00B9EF;
}

@media screen and (min-width: 768px) {
  .p-example-case__categories {
    gap: 0.3125rem;
  }
  .p-example-case__categories li:first-child {
    width: 100%;
  }
  .p-example-case__categories li span {
    line-height: 2;
    padding: 0.25rem 0.625rem;
    border-radius: 1.25rem;
  }
}
@media screen and (min-width: 1024px) {
  .p-example-case__categories {
    gap: 0.625rem;
  }
  .p-example-case__categories li span {
    padding: 0.25rem 1.25rem;
  }
}
.p-example-case__head {
  border-bottom: 1px solid #DADADA;
  padding-bottom: 1.0666666667rem;
  display: flex;
  flex-direction: column;
  gap: 1rem;
  margin: 1.3333333333rem 0 0;
}

@media screen and (min-width: 768px) {
  .p-example-case__head {
    display: block;
    padding-bottom: 0;
    border-bottom: none;
  }
}
.p-example-case__title {
  font-size: 1rem;
  font-weight: 700;
  line-height: 1.7;
  letter-spacing: 0.05em;
}

@media screen and (min-width: 768px) {
  .p-example-case__title {
    font-size: 1rem;
    line-height: 2;
  }
}
.p-example-case__price {
  width: fit-content;
  background: #F2F8FF;
  border-radius: 0.3333333333rem;
  padding: 0.4rem 0.8rem 0.6666666667rem;
  font-size: 1.0666666667rem;
  font-weight: 700;
  line-height: 1;
}

.p-example-case__price span {
  color: #FF9F2A;
  font-size: 1.6rem;
}

@media screen and (min-width: 768px) {
  .p-example-case__price {
    font-size: 1rem;
    position: absolute;
    top: 1.875rem;
    right: min(1.953125vw, 2.5rem);
    padding: 0.375rem 0.3125rem 0.625rem;
  }
  .p-example-case__price span {
    font-size: 1.5rem;
  }
}
@media screen and (min-width: 1024px) {
  .p-example-case__price {
    right: 1.875rem;
    padding: 0.375rem 0.75rem 0.625rem;
  }
}
.p-example-case__images {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 4rem;
  margin: 1.3333333333rem 0 0;
}

@media screen and (min-width: 768px) {
  .p-example-case__images {
    margin: 2.5rem 0 0;
    flex-direction: row;
    align-items: flex-end;
    gap: 3.125rem;
    padding-bottom: 1.625rem;
    border-bottom: 1px solid #DADADA;
  }
}
@media screen and (min-width: 1024px) {
  .p-example-case__images {
    gap: 5rem;
  }
}
.p-example-case__before {
  width: 71.875%;
  position: relative;
  padding-top: 3.1333333333rem;
}

.p-example-case__before::after {
  content: "";
  width: 2.1875rem;
  height: 1rem;
  background: url(./images/common/case_arrow.svg) no-repeat center center/contain;
  position: absolute;
  bottom: -2rem;
  transform: translateX(-50%) rotate(90deg);
  left: 50%;
}

.p-example-case__before img {
  border-radius: 0.6666666667rem;
  width: 100%;
  aspect-ratio: 230/139;
}

@media screen and (min-width: 768px) {
  .p-example-case__before {
    width: 33.0973451327%;
    padding-top: 2.5625rem;
  }
  .p-example-case__before::after {
    width: 2.6875rem;
    height: 0.9375rem;
    bottom: 2.5rem;
    transform: none;
    right: -2.875rem;
    left: auto;
  }
  .p-example-case__before img {
    aspect-ratio: 187/138;
    border-radius: 0.625rem;
  }
}
@media screen and (min-width: 1024px) {
  .p-example-case__before::after {
    width: 3.3125rem;
    height: 1.4375rem;
    bottom: 2.8125rem;
    right: -3.9375rem;
  }
}
.p-example-case__before-title {
  width: fit-content;
  white-space: nowrap;
  position: absolute;
  left: 50%;
  top: 0;
  transform: translateX(-50%);
  font-size: 1.0666666667rem;
  font-family: "M PLUS 1p", sans-serif;
  font-weight: 700;
  letter-spacing: 0.05em;
  color: #ffffff;
  background: #C8C8C8;
  border-radius: 1.7333333333rem;
  padding: 0.2rem 1.2rem;
}

.p-example-case__before-title::after {
  content: "";
  width: 0.7333333333rem;
  height: 0.7333333333rem;
  background: #C8C8C8;
  display: block;
  position: absolute;
  bottom: -0.5333333333rem;
  left: 50%;
  transform: translateX(-50%);
  clip-path: polygon(100% 0, 0 0, 50% 100%);
}

@media screen and (min-width: 768px) {
  .p-example-case__before-title {
    font-size: 1rem;
    padding: 0 0.5625rem;
  }
  .p-example-case__before-title::after {
    width: 0.5625rem;
    height: 0.5625rem;
    bottom: -0.375rem;
  }
}
.p-example-case__after {
  width: 100%;
  position: relative;
}

.p-example-case__after img {
  border-radius: 0.6666666667rem;
  width: 100%;
  aspect-ratio: 320/276;
}

@media screen and (min-width: 768px) {
  .p-example-case__after {
    width: 52.7433628319%;
  }
  .p-example-case__after img {
    aspect-ratio: 298/220;
    border-radius: 0.625rem;
  }
}
.p-example-case__after-title {
  width: fit-content;
  white-space: nowrap;
  position: absolute;
  left: 50%;
  top: -1.0666666667rem;
  transform: translateX(-50%);
  font-size: 1.2rem;
  font-family: "M PLUS 1p", sans-serif;
  font-weight: 500;
  line-height: 1.4;
  letter-spacing: 0.05em;
  color: #ffffff;
  background: #FF9F2A;
  border-radius: 1.7333333333rem;
  padding: 0.5333333333rem 2rem;
}

.p-example-case__after-title::after {
  content: "";
  width: 1rem;
  height: 1rem;
  background: #FF9F2A;
  display: block;
  position: absolute;
  bottom: -0.6rem;
  left: 50%;
  transform: translateX(-50%);
  clip-path: polygon(100% 0, 0 0, 50% 100%);
}

@media screen and (min-width: 768px) {
  .p-example-case__after-title {
    font-size: 1.5rem;
    font-weight: 700;
    line-height: 1.75;
    padding: 0 1.875rem;
    top: -1.125rem;
  }
  .p-example-case__after-title::after {
    width: 0.75rem;
    height: 0.75rem;
    bottom: -0.5rem;
  }
}
.p-example-case__text {
  margin: 0.6666666667rem 0 0;
}

.p-example-case__text p {
  font-weight: 500;
  line-height: 1.6;
  letter-spacing: 0.05em;
}

@media screen and (min-width: 768px) {
  .p-example-case__text p {
    line-height: 1.9;
  }
}
.p-example {
  padding: 4rem 0;
  background: #F2F8FF;
}

@media screen and (min-width: 768px) {
  .p-example {
    padding: 5rem 0;
  }
}
.p-example__title {
  font-family: "M PLUS 1p", sans-serif;
  font-size: 1.6rem;
  font-weight: 500;
  line-height: 1.5;
  letter-spacing: 0.05em;
  color: #007BC7;
  text-align: center;
}

@media screen and (min-width: 768px) {
  .p-example__title {
    font-size: 2rem;
    line-height: 1.75;
    letter-spacing: 0.1em;
  }
}
.p-example__tabs {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 0.6666666667rem;
  margin: 2.6666666667rem 0 0;
}

@media screen and (min-width: 768px) {
  .p-example__tabs {
    margin-top: 2.1875rem;
    flex-wrap: nowrap;
  }
}
.p-example__tab {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 11.6rem;
  height: 4rem;
  border: none;
  border-radius: 2.3333333333rem;
  background: #DADADA;
  color: #ffffff;
  font-family: "M PLUS 1p", sans-serif;
  font-size: 1.2rem;
  font-weight: 500;
  line-height: 1.4;
  letter-spacing: 0.05em;
  transition: background 0.2s;
}

@media screen and (min-width: 768px) {
  .p-example__tab {
    cursor: pointer;
    font-size: 1.125rem;
    line-height: 1.75;
    letter-spacing: 0.1em;
    min-width: 7.5rem;
    height: 2.5rem;
  }
}
@media screen and (min-width: 768px) and (hover: hover) {
  .p-example__tab:hover {
    background: #00B9EF;
  }
}
.p-example__tab.is-active {
  background: #00B9EF;
}

.p-example__panel {
  margin: 2rem 0 0;
}

@media screen and (min-width: 768px) {
  .p-example__panel {
    margin-top: 2.1875rem;
  }
}
.p-example__panel.is-active {
  display: block;
}

.p-example__panel:not(.is-active) {
  display: none;
}

.p-example__table {
  background: #ffffff;
  border-radius: 1.3333333333rem;
  overflow: hidden;
}

@media screen and (min-width: 768px) {
  .p-example__table {
    max-width: 69.0625rem;
    margin-inline: auto;
  }
}
.p-example__table tr {
  border-bottom: 0.0666666667rem solid #007BC7;
}

.p-example__table tr:last-child {
  border-bottom: none;
}

.p-example__table tr:last-child th {
  border-bottom: none;
}

.p-example__table th {
  width: 25.2777777778%;
  background: #007BC7;
  color: #ffffff;
  font-weight: 700;
  line-height: 1.7;
  letter-spacing: 0.05em;
  border-bottom: 0.0666666667rem solid #ffffff;
}

@media screen and (min-width: 768px) {
  .p-example__table th {
    font-size: 1.25rem;
    line-height: 1.75;
    letter-spacing: 0;
    width: 25.3393665158%;
  }
}
.p-example__table td {
  padding: 1.2666666667rem 1.0666666667rem 1.3333333333rem 0.6666666667rem;
  font-weight: 500;
  line-height: 1.6;
  letter-spacing: 0.05em;
}

@media screen and (min-width: 768px) {
  .p-example__table td {
    padding: 1.25rem 1.875rem;
    line-height: 1.9;
  }
}
.p-faq-anchor {
  padding: 2rem 0 0;
}

@media screen and (min-width: 768px) {
  .p-faq-anchor {
    padding: 2.6875rem 0 0;
  }
}
.p-faq-anchor__list {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 0.6666666667rem;
}

@media screen and (min-width: 768px) {
  .p-faq-anchor__list {
    grid-template-columns: repeat(3, 1fr);
    gap: 1.25rem 0.625rem;
  }
}
@media screen and (min-width: 1280px) {
  .p-faq-anchor__list {
    grid-template-columns: repeat(4, 1fr);
  }
}
.p-faq-anchor__item a {
  display: flex;
  align-items: center;
  justify-content: center;
  font-family: "M PLUS 1p", sans-serif;
  font-weight: 500;
  line-height: 1.3;
  letter-spacing: 0.05em;
  text-align: center;
  color: #ffffff;
  background: #CBCBCB;
  border-radius: 2.3333333333rem;
  height: 3rem;
}

@media screen and (min-width: 768px) {
  .p-faq-anchor__item a {
    font-size: 1.125rem;
    line-height: 1.75;
    letter-spacing: 0.1em;
    height: 3.125rem;
    transition: background 0.3s;
  }
}
@media screen and (min-width: 768px) and (hover: hover) {
  .p-faq-anchor__item a:hover {
    background: #00B9EF;
  }
}
.p-faq-section {
  padding: 4rem 0;
}

.p-faq-section--area {
  background: #F2F8FF;
}

@media screen and (min-width: 768px) {
  .p-faq-section {
    padding: 6.25rem 0;
  }
}
.p-faq-section__content {
  margin: 2.6666666667rem 0 0;
}

@media screen and (min-width: 768px) {
  .p-faq-section__content {
    margin-top: 3.75rem;
  }
}
.p-faq-section__btn {
  margin: 1.3333333333rem 0 0;
  text-align: center;
}

@media screen and (min-width: 768px) {
  .p-faq-section__btn {
    margin-top: 2rem;
  }
}
.p-faq {
  padding: 4rem 0;
}

.p-faq:first-child {
  padding-top: 2.6666666667rem;
}

.p-faq:nth-child(even) {
  background: #F2F8FF;
}

@media screen and (min-width: 768px) {
  .p-faq {
    padding: 6.25rem 0;
  }
  .p-faq:first-child {
    padding-top: 5rem;
  }
}
.p-faq__list {
  margin: 2.6666666667rem 0 0;
}

@media screen and (min-width: 768px) {
  .p-faq__list {
    margin-top: 3.75rem;
  }
}
.p-flow-section {
  padding: 4rem 0;
}

@media screen and (min-width: 768px) {
  .p-flow-section {
    padding: 8.125rem 0 6.6666666667rem;
  }
}
.p-flow-section--seizenseiri {
  padding-top: 1.9333333333rem;
}

@media screen and (min-width: 768px) {
  .p-flow-section--seizenseiri {
    padding-top: 0;
  }
}
.p-flow-section--kaitori, .p-flow-section--area {
  background: #F2F8FF;
}

.p-flow-section__inner {
  margin-inline: auto;
  width: min(100% - 2rem, 650px);
}

@media screen and (min-width: 768px) {
  .p-flow-section__inner {
    width: min(90%, 1326px);
  }
}
.p-flow-section__wrap {
  margin: 2.6666666667rem 0 0;
  display: flex;
  flex-direction: column;
  gap: 2.6666666667rem;
}

@media screen and (min-width: 768px) {
  .p-flow-section__wrap {
    flex-direction: row;
    margin: 3.75rem 0 0 calc(50% - 50vw);
    gap: 1.875rem;
  }
}
@media screen and (min-width: 1024px) {
  .p-flow-section__wrap {
    gap: 3.75rem;
  }
}
.p-flow-section__img {
  margin-left: calc(50% - 50vw);
  width: 96.1538461538vw;
  border-radius: 0 4rem 0 0;
  overflow: hidden;
}

.p-flow-section__img img {
  width: 100%;
  height: auto;
  object-fit: cover;
  aspect-ratio: 375/310;
}

@media screen and (min-width: 768px) {
  .p-flow-section__img {
    margin: 0;
    width: 41.1458333333vw;
    max-height: 880px;
    border-radius: 0 6.25rem 0 0;
    flex-shrink: 0;
  }
  .p-flow-section__img img {
    aspect-ratio: 790/881;
    height: 100%;
  }
}
.p-flow-section__list {
  display: grid;
  gap: 2rem;
}

@media screen and (min-width: 768px) {
  .p-flow-section__list {
    gap: 2.5rem;
  }
}
.p-flow-section__item {
  display: grid;
  grid-template-columns: 5.0666666667rem 1fr;
  gap: 1.1333333333rem;
  position: relative;
  z-index: 1;
}

.p-flow-section__item:not(:last-child)::before {
  content: "";
  width: 0.1333333333rem;
  height: 100%;
  background: #00B9EF;
  position: absolute;
  top: 4.6666666667rem;
  left: 2.4666666667rem;
  z-index: -1;
}

@media screen and (min-width: 768px) {
  .p-flow-section__item {
    grid-template-columns: 6.25rem 1fr;
    gap: 2.3125rem;
  }
  .p-flow-section__item:not(:last-child)::before {
    left: 3.0625rem;
  }
}
.p-flow-section__item-icon {
  width: 100%;
  aspect-ratio: 1;
}

.p-flow-section__item-icon img {
  width: 100%;
}

.p-flow-section__item-body {
  margin: 1rem 0 0;
}

@media screen and (min-width: 768px) {
  .p-flow-section__item-body {
    margin-top: 0.625rem;
  }
}
.p-flow-section__item-number {
  display: block;
  width: 6.2666666667rem;
  border-radius: 1rem;
  background: #00B9EF;
  color: #ffffff;
  font-size: 1.0666666667rem;
  font-weight: 400;
  font-family: "Montserrat", sans-serif;
  letter-spacing: 0.05em;
  line-height: 1.75;
  text-align: center;
  padding: 0.0666666667rem 0.6666666667rem;
}

@media screen and (min-width: 768px) {
  .p-flow-section__item-number {
    font-size: 1rem;
    padding: 0.0625rem 0.625rem;
  }
}
.p-flow-section__item-title {
  margin: 0.6666666667rem 0 0;
  font-size: 1.2rem;
  font-weight: 500;
  font-family: "M PLUS 1p", sans-serif;
  color: #007BC7;
  letter-spacing: 0.05em;
  line-height: 1.5;
}

@media screen and (min-width: 768px) {
  .p-flow-section__item-title {
    line-height: 1.75;
    letter-spacing: 0.1em;
    margin-top: 0.625rem;
  }
}
.p-flow-section__item-text {
  margin: 0.6666666667rem 0 0;
  line-height: 1.7;
  letter-spacing: 0.05em;
  font-weight: 700;
}

@media screen and (min-width: 768px) {
  .p-flow-section__item-text {
    margin-top: 0.625rem;
  }
}
.p-flow-section__link {
  text-align: center;
  margin: 2.5rem 0 0;
}

@media screen and (min-width: 768px) {
  .p-flow-section__link {
    margin-top: 1.875rem;
    text-align: left;
  }
}
.p-flow {
  padding: 2rem 0 0;
}

@media screen and (min-width: 768px) {
  .p-flow {
    padding: 2.6875rem 0 0;
  }
}
.p-flow__list {
  display: grid;
  gap: 5.6rem;
  margin: 4.6666666667rem 0 0;
}

@media screen and (min-width: 768px) {
  .p-flow__list {
    gap: 3.125rem;
    margin-top: 5.625rem;
  }
}
.p-flow__item {
  position: relative;
  background: #F2F8FF;
  padding: 5.3333333333rem 1.3333333333rem 1.3333333333rem;
  display: grid;
  gap: 1.3333333333rem;
}

.p-flow__item:not(:last-child)::after {
  content: "";
  width: 1.6rem;
  height: 1.2rem;
  background: #FA8E0A;
  position: absolute;
  bottom: -2.2666666667rem;
  left: 50%;
  transform: translateX(-50%);
  display: block;
  clip-path: polygon(100% 0, 0 0, 50% 100%);
}

@media screen and (min-width: 768px) {
  .p-flow__item {
    padding: 3.75rem 4.6875% 3.75rem 4.6875%;
    align-items: center;
  }
  .p-flow__item:not(:last-child)::after {
    bottom: -2.3125rem;
  }
}
@media screen and (min-width: 1280px) {
  .p-flow__item {
    padding: 3.75rem 4.6875% 3.75rem 6.25%;
    gap: 0;
    grid-template-columns: 22.0625rem auto;
  }
}
.p-flow__badge {
  position: absolute;
  top: -2rem;
  left: 50%;
  transform: translateX(-50%);
  width: 6rem;
  height: 6rem;
  border-radius: 50%;
  background: #EC365A;
  color: #ffffff;
  font-size: 1.6rem;
  font-weight: 500;
  font-family: "M PLUS 1p", sans-serif;
  line-height: 1.4;
  letter-spacing: 0.05em;
  text-align: center;
  display: flex;
  align-items: center;
  justify-content: center;
}

.p-flow__badge--sm {
  font-size: 1rem;
  line-height: 1.1;
}

.p-flow__badge--sm span {
  font-family: "Montserrat", sans-serif;
  font-size: 2.1333333333rem;
  font-weight: 700;
  letter-spacing: 0;
}

.p-flow__badge--md {
  font-size: 1rem;
  line-height: 1.4;
}

@media screen and (min-width: 768px) {
  .p-flow__badge {
    width: 6.5rem;
    height: 6.5rem;
    font-size: 2rem;
    top: -1.875rem;
    left: -2.5333333333rem;
    transform: none;
  }
  .p-flow__badge--sm {
    font-size: 1rem;
  }
  .p-flow__badge--sm span {
    font-size: 2rem;
  }
  .p-flow__badge--md {
    font-size: 1.5rem;
    line-height: 1.3;
    letter-spacing: 0.1em;
  }
}
.p-flow__number {
  display: inline-block;
  border-radius: 1rem;
  background: #00B9EF;
  color: #ffffff;
  font-size: 1.0666666667rem;
  font-weight: 400;
  font-family: "Montserrat", sans-serif;
  letter-spacing: 0.05em;
  text-align: center;
  padding: 0.0666666667rem 1.3333333333rem;
}

.p-flow__item-title {
  margin: 1.3333333333rem 0 0;
  font-size: 1.2rem;
  font-weight: 500;
  font-family: "M PLUS 1p", sans-serif;
  color: #007BC7;
  letter-spacing: 0.1em;
}

.p-flow__cta {
  margin: 1.3333333333rem -0.6666666667rem 0;
  background: #ffffff;
  padding: 1.3333333333rem 0.6666666667rem;
  border-radius: 1.3333333333rem;
}

@media screen and (min-width: 768px) {
  .p-flow__cta {
    margin: 0;
    padding: 1.875rem 0.9375rem;
  }
}
@media screen and (min-width: 1280px) {
  .p-flow__cta {
    padding: 1.875rem 1.4375rem;
  }
}
.p-flow__cta-text {
  font-weight: 700;
  line-height: 1.7;
  letter-spacing: 0.05em;
  text-align: center;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.8rem;
}

.p-flow__cta-text::before, .p-flow__cta-text::after {
  content: "";
  width: 1.7333333333rem;
  height: 1.3333333333rem;
  background: url(./images/flow/ico_arrow.svg) no-repeat center center/contain;
}

.p-flow__text {
  margin: 0.6666666667rem 0 0;
  font-size: 1.0666666667rem;
  font-weight: 700;
  line-height: 2;
  letter-spacing: 0.05em;
}

@media screen and (min-width: 768px) {
  .p-flow__text {
    font-size: 1rem;
  }
}
.p-flow__images {
  display: grid;
  gap: 0.6666666667rem;
}

@media screen and (min-width: 768px) {
  .p-flow__images {
    gap: 1.75rem;
    grid-template-columns: repeat(2, 1fr);
  }
}
.p-flow__img {
  border-radius: 1.3333333333rem;
  overflow: hidden;
}

.p-flow__img img {
  width: 100%;
  height: auto;
  object-fit: cover;
  aspect-ratio: 320/227;
}

.p-lead {
  padding: 0 0 4rem;
}

@media screen and (min-width: 768px) {
  .p-lead {
    padding: 2.6875rem 0 6.25rem;
  }
}
.p-lead__box {
  border-radius: 1.3333333333rem;
  background: #ffffff;
  padding: 2.6666666667rem 1.3333333333rem;
  box-shadow: 0 0 16.3px 0 rgb(214, 224, 236);
  margin: 6.6666666667rem 0 0;
}

@media screen and (min-width: 768px) {
  .p-lead__box {
    padding: 2.5rem min(2.6041666667vw, 3.75rem);
    margin-top: 6.875rem;
  }
}
.p-lead__head {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 1.3333333333rem;
  padding-bottom: 2rem;
  border-bottom: 0.0666666667rem solid #DADADA;
}

@media screen and (min-width: 768px) {
  .p-lead__head {
    flex-direction: row-reverse;
    gap: 2.5862068966%;
    padding-bottom: 2.5rem;
    align-items: flex-start;
  }
}
.p-lead__map {
  margin-top: -6.6666666667rem;
  border-radius: 1.3333333333rem;
  overflow: hidden;
  width: 100%;
}

.p-lead__map iframe {
  width: 100%;
  height: 13.6rem;
}

@media screen and (min-width: 768px) {
  .p-lead__map {
    width: 55.6896551724%;
    margin-top: -5.625rem;
  }
  .p-lead__map iframe {
    height: 25.6875rem;
  }
}
@media screen and (min-width: 768px) {
  .p-lead__content {
    width: 41.8965517241%;
  }
}
.p-lead__content-list li:not(:first-child) {
  margin-top: 1.3333333333rem;
}

@media screen and (min-width: 768px) {
  .p-lead__content-list li:not(:first-child) {
    margin-top: 1.875rem;
  }
}
.p-lead__content-list li p {
  font-weight: 500;
  line-height: 1.6;
  letter-spacing: 0.05em;
  margin: 0.6666666667rem 0 0;
}

@media screen and (min-width: 768px) {
  .p-lead__content-list li p {
    line-height: 1.9;
    font-feature-settings: "palt";
    margin-top: 0.3125rem;
  }
}
.p-lead__content-title {
  font-family: "M PLUS 1p", sans-serif;
  font-size: 1.2rem;
  font-weight: 500;
  line-height: 1.35;
  letter-spacing: 0.05em;
  color: #007BC7;
  position: relative;
  padding-left: 0.6666666667rem;
}

.p-lead__content-title::before {
  content: "";
  width: 0.1333333333rem;
  height: 1.2rem;
  background: #007BC7;
  position: absolute;
  left: 0;
  top: 0.2666666667rem;
  display: block;
}

@media screen and (min-width: 768px) {
  .p-lead__content-title {
    line-height: 1.75;
    letter-spacing: 0.1em;
  }
  .p-lead__content-title::before {
    top: 0.5rem;
  }
}
.p-lead__bottom {
  margin: 2rem 0 0;
}

.p-lead__bottom p {
  font-size: 1rem;
  font-weight: 500;
  line-height: 1.6;
  letter-spacing: 0.05em;
  font-feature-settings: "palt";
}

.p-lead__bottom p + p {
  margin-top: 1.5em;
}

@media screen and (min-width: 768px) {
  .p-lead__bottom {
    margin-top: 2.5rem;
  }
  .p-lead__bottom p {
    line-height: 1.9;
  }
  .p-lead__bottom p + p {
    margin-top: 2em;
  }
}
.p-mv {
  padding: 8.2666666667rem 0 3.3333333333rem;
}

@media screen and (min-width: 768px) {
  .p-mv {
    padding: min(24.7395833333vw, 18.125rem) 0 8.25rem;
    position: relative;
  }
}
@media screen and (min-width: 1680px) {
  .p-mv {
    padding: 15.5rem 0 8.25rem;
  }
}
.p-mv--area {
  padding-bottom: 3.4rem;
  position: relative;
  z-index: 1;
}

.p-mv--area .p-mv__price-box {
  margin: 0;
  width: 24rem;
}

@media screen and (min-width: 768px) {
  .p-mv--area {
    padding: min(31.25vw, 21.25rem) 0 min(12.3697916667vw, 13.9375rem);
  }
  .p-mv--area .p-mv__video {
    width: min(47.5260416667vw, 63.8125rem);
    height: min(29.9479166667vw, 24.375rem);
  }
  .p-mv--area .p-mv__inner {
    width: min(95%, 1394px);
  }
  .p-mv--area .p-mv__title {
    top: 16.6875rem;
    left: calc(50% - 10.9375rem);
    transform: translateX(0);
  }
  .p-mv--area .p-mv__price-box {
    width: auto;
    max-width: 21.875rem;
    margin-left: auto;
  }
  .p-mv--area .p-mv__price-text {
    font-size: 0.9375rem;
    padding: 0.625rem;
  }
  .p-mv--area .p-mv__price {
    padding: 0.9375rem 0.75rem 0.6875rem;
  }
}
@media screen and (min-width: 1024px) {
  .p-mv--area .p-mv__video {
    width: min(50vw, 63.8125rem);
  }
}
@media screen and (min-width: 1280px) {
  .p-mv--area .p-mv__video {
    width: min(52.1875vw, 63.8125rem);
  }
}
@media screen and (min-width: 1680px) {
  .p-mv--area {
    padding: 21.25rem 0 13.9375rem;
  }
  .p-mv--area .p-mv__video {
    width: 53.1770833333vw;
    height: min(24.7916666667vw, 29.75rem);
  }
  .p-mv--area .p-mv__price-box {
    max-width: 23.375rem;
  }
  .p-mv--area .p-mv__price-text {
    font-size: 1rem;
    padding: 1.125rem;
  }
}
.p-mv--osaka::before {
  content: "";
  width: 13rem;
  height: 18.8rem;
  mask-image: url(./images/common/map_osaka.webp);
  mask-size: contain;
  mask-position: center center;
  mask-repeat: no-repeat;
  -webkit-mask-image: url(./images/common/map_osaka.webp);
  -webkit-mask-size: contain;
  -webkit-mask-position: center center;
  -webkit-mask-repeat: no-repeat;
  background: rgba(0, 185, 239, 0.1);
  position: absolute;
  bottom: 0;
  left: calc(50% - 4.4rem);
  display: block;
  z-index: -1;
}

@media screen and (min-width: 768px) {
  .p-mv--osaka::before {
    width: min(24.1145833333vw, 28.9375rem);
    height: min(35.1041666667vw, 42.125rem);
    bottom: max(-3.59375vw, -4.3125rem);
    left: calc(50% + min(17.4479166667vw, 20.9375rem));
  }
}
.p-mv__video {
  width: calc(100% - 1rem);
}

.p-mv__video video {
  border-radius: 0 1rem 1rem 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

@media screen and (min-width: 768px) {
  .p-mv__video {
    width: min(49.21875vw, 59.0625rem);
    height: min(39.0625vw, 33.5625rem);
    aspect-ratio: 945/536;
    position: absolute;
    left: 0;
    top: 12.5rem;
  }
  .p-mv__video video {
    border-radius: 0 2.5rem 2.5rem 0;
  }
}
@media screen and (min-width: 1680px) {
  .p-mv__video {
    top: 7.8125rem;
  }
}
.p-mv__inner {
  margin-inline: auto;
  width: min(100% - 2rem, 650px);
}

@media screen and (min-width: 768px) {
  .p-mv__inner {
    width: min(95%, 1566px);
  }
}
.p-mv__wrap {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 2.9333333333rem;
}

@media screen and (min-width: 768px) {
  .p-mv__wrap {
    flex-direction: row;
    justify-content: flex-end;
  }
}
.p-mv__title {
  display: inline-flex;
  flex-direction: column;
  align-items: center;
  gap: 0.6666666667rem;
  font-size: 1.8666666667rem;
  font-family: "M PLUS 1p", sans-serif;
  font-weight: 800;
  line-height: 1.4;
  letter-spacing: 0.1em;
  text-align: center;
  text-shadow: rgb(255, 255, 255) 2px 0px 0px, rgb(255, 255, 255) 1.75517px 0.958851px 0px, rgb(255, 255, 255) 1.0806px 1.68294px 0px, rgb(255, 255, 255) 0.141474px 1.99499px 0px, rgb(255, 255, 255) -0.832294px 1.81859px 0px, rgb(255, 255, 255) -1.60229px 1.19694px 0px, rgb(255, 255, 255) -1.97998px 0.28224px 0px, rgb(255, 255, 255) -1.87291px -0.701566px 0px, rgb(255, 255, 255) -1.30729px -1.5136px 0px, rgb(255, 255, 255) -0.421592px -1.95506px 0px, rgb(255, 255, 255) 0.567324px -1.91785px 0px, rgb(255, 255, 255) 1.41734px -1.41108px 0px, rgb(255, 255, 255) 1.92034px -0.558831px 0px;
  color: #007BC7;
  position: relative;
  z-index: 1;
  margin: -1.5333333333rem 0 0;
}

.p-mv__title::after {
  content: "";
  width: 11rem;
  height: 11rem;
  background: url(./images/top/mv_title_bg.svg) no-repeat center center/contain;
  display: block;
  position: absolute;
  top: -1.2rem;
  left: 50%;
  transform: translateX(-50%);
  z-index: -1;
}

.p-mv__title span {
  text-shadow: none;
  display: inline-block;
  background: #007BC7;
  color: #ffffff;
  padding: 0 0.3333333333rem;
  border-radius: 1.6666666667rem;
  font-size: 1.3333333333rem;
  font-weight: 500;
  line-height: 1.4;
  letter-spacing: 0.05em;
}

@media screen and (min-width: 768px) {
  .p-mv__title {
    position: absolute;
    left: 50%;
    top: min(33.8541666667vw, 22.8125rem);
    transform: translateX(-50%);
    font-size: min(3.125vw, 3rem);
    margin-top: 0;
    text-shadow: rgb(255, 255, 255) 4px 0px 0px, rgb(255, 255, 255) 3.87565px 0.989616px 0px, rgb(255, 255, 255) 3.51033px 1.9177px 0px, rgb(255, 255, 255) 2.92676px 2.72656px 0px, rgb(255, 255, 255) 2.16121px 3.36588px 0px, rgb(255, 255, 255) 1.26129px 3.79594px 0px, rgb(255, 255, 255) 0.282949px 3.98998px 0px, rgb(255, 255, 255) -0.712984px 3.93594px 0px, rgb(255, 255, 255) -1.66459px 3.63719px 0px, rgb(255, 255, 255) -2.51269px 3.11229px 0px, rgb(255, 255, 255) -3.20457px 2.39389px 0px, rgb(255, 255, 255) -3.69721px 1.52664px 0px, rgb(255, 255, 255) -3.95997px 0.56448px 0px, rgb(255, 255, 255) -3.97652px -0.432781px 0px, rgb(255, 255, 255) -3.74583px -1.40313px 0px, rgb(255, 255, 255) -3.28224px -2.28625px 0px, rgb(255, 255, 255) -2.61457px -3.02721px 0px, rgb(255, 255, 255) -1.78435px -3.57996px 0px, rgb(255, 255, 255) -0.843183px -3.91012px 0px, rgb(255, 255, 255) 0.150409px -3.99717px 0px, rgb(255, 255, 255) 1.13465px -3.8357px 0px, rgb(255, 255, 255) 2.04834px -3.43574px 0px, rgb(255, 255, 255) 2.83468px -2.82216px 0px, rgb(255, 255, 255) 3.44477px -2.03312px 0px, rgb(255, 255, 255) 3.84068px -1.11766px 0px, rgb(255, 255, 255) 3.9978px -0.132717px 0px;
  }
  .p-mv__title::after {
    width: min(20.703125vw, 19.5625rem);
    height: min(21.484375vw, 20rem);
    top: max(-4.4270833333vw, -3.625rem);
  }
  .p-mv__title span {
    font-size: min(1.6927083333vw, 1.75rem);
    line-height: 1.7857142857;
    padding: 0 1.5rem;
  }
}
@media screen and (min-width: 1680px) {
  .p-mv__title {
    top: 18.75rem;
  }
}
@media screen and (min-width: 768px) {
  .p-mv__content {
    width: min(33.203125vw, 34.1875rem);
  }
}
.p-mv__list {
  position: relative;
  width: 17.6666666667rem;
  margin-inline: auto;
}

@media screen and (min-width: 768px) {
  .p-mv__list {
    width: min(29.9479166667vw, 25rem);
  }
}
.p-mv__list::before, .p-mv__list::after {
  content: "";
  width: 0.2rem;
  height: 7.1333333333rem;
  background: #007BC7;
  position: absolute;
  top: 50%;
}

@media screen and (min-width: 768px) {
  .p-mv__list::before, .p-mv__list::after {
    top: auto;
    bottom: 0;
    height: min(7.8125vw, 6.6875rem);
    width: 0.1875rem;
  }
}
@media screen and (min-width: 1680px) {
  .p-mv__list::before, .p-mv__list::after {
    height: 6.6875rem;
  }
}
.p-mv__list::before {
  left: -0.6666666667rem;
  transform: translateY(-50%) rotate(-15deg);
}

@media screen and (min-width: 768px) {
  .p-mv__list::before {
    transform: rotate(-15deg);
    left: -1.25rem;
  }
}
@media screen and (min-width: 1680px) {
  .p-mv__list::before {
    left: -2.1875rem;
  }
}
.p-mv__list::after {
  right: -0.6666666667rem;
  transform: translateY(-50%) rotate(15deg);
}

@media screen and (min-width: 768px) {
  .p-mv__list::after {
    transform: rotate(15deg);
  }
}
@media screen and (min-width: 1680px) {
  .p-mv__list::after {
    right: -1.25rem;
  }
}
.p-mv__list li {
  display: flex;
  align-items: center;
  gap: 0.6666666667rem;
  font-weight: 700;
  line-height: 1.7;
  letter-spacing: 0.05em;
  font-feature-settings: "palt";
}

@media screen and (min-width: 768px) {
  .p-mv__list li {
    font-size: min(1.6927083333vw, 1.5rem);
    font-weight: 500;
    line-height: 1.9;
  }
}
@media screen and (min-width: 1680px) {
  .p-mv__list li {
    font-size: 1.5rem;
  }
}
.p-mv__list li:not(:first-child) {
  margin-top: 0.3333333333rem;
}

.p-mv__list li::before {
  content: "";
  width: 1.6666666667rem;
  height: 1.6666666667rem;
  background: url(./images/common/ico_check.svg) no-repeat center center/contain;
}

.p-mv__price-box {
  margin: 2.2666666667rem 0 0;
  border: 0.1333333333rem solid #00B9EF;
  border-radius: 0.3333333333rem;
  display: flex;
  overflow: hidden;
}

@media screen and (min-width: 768px) {
  .p-mv__price-box {
    margin-top: 1.5625rem;
  }
}
.p-mv__price-text {
  font-size: 1.2rem;
  font-weight: 700;
  line-height: 2;
  letter-spacing: 0.1em;
  background: #00B9EF;
  color: #ffffff;
  padding: 0.6rem;
  flex-shrink: 0;
  display: flex;
  align-items: center;
}

@media screen and (min-width: 768px) {
  .p-mv__price-text {
    font-size: min(2.0833333333vw, 1.5rem);
    letter-spacing: 0.2em;
    padding: min(1.953125vw, 1.625rem);
  }
}
@media screen and (min-width: 1680px) {
  .p-mv__price-text {
    font-size: 1.5rem;
    padding: 1.625rem;
  }
}
.p-mv__price {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.5333333333rem;
  padding: 1.2rem 0.5333333333rem;
  width: 100%;
  background: #ffffff;
}

.p-mv__price span {
  font-weight: 700;
  line-height: 1.7;
  letter-spacing: 0.05em;
}

.p-mv__price img {
  width: 13rem;
  margin: 0.3333333333rem 0 0;
}

@media screen and (min-width: 768px) {
  .p-mv__price {
    padding: 1.125rem 1.953125vw;
    gap: 0;
    flex-direction: column;
    align-items: flex-start;
  }
  .p-mv__price span {
    line-height: 2;
  }
  .p-mv__price img {
    width: min(22.5260416667vw, 17.0625rem);
  }
}
@media screen and (min-width: 1680px) {
  .p-mv__price {
    padding: 1.125rem 1.5625rem;
    gap: 0.75rem;
    flex-direction: row;
    align-items: center;
  }
  .p-mv__price img {
    width: 17.0625rem;
  }
}
.p-mv__link {
  margin: 1.3333333333rem 0 0;
  text-align: center;
}

@media screen and (min-width: 768px) {
  .p-mv__link {
    margin-top: 1.5625rem;
  }
  .p-mv__link .c-btn {
    width: min(32.5520833333vw, 21.875rem);
  }
}
@media screen and (min-width: 1680px) {
  .p-mv__link .c-btn {
    width: 21.875rem;
  }
}
.p-news {
  padding: 2.8666666667rem 0 4rem;
}

@media screen and (min-width: 768px) {
  .p-news {
    padding: 2.6875rem 0 6.25rem;
  }
}
.p-news .pagination {
  margin-top: 2.6666666667rem;
}

@media screen and (min-width: 768px) {
  .p-news .pagination {
    margin-top: 3.75rem;
  }
}
.p-payment {
  padding: 4.9333333333rem 0 0;
}

@media screen and (min-width: 768px) {
  .p-payment {
    padding: 7.9375rem 0 6.25rem;
    border-bottom: 0.0666666667rem solid #007BC7;
  }
}
.p-payment__box {
  background: #F2F8FF;
  padding: 6rem 1.3333333333rem 2.6666666667rem;
  border-radius: 0.6666666667rem;
  position: relative;
}

@media screen and (min-width: 768px) {
  .p-payment__box {
    padding: 5.25rem 2.5rem 2.5rem;
    display: flex;
    gap: 1.25rem;
  }
}
.p-payment__title {
  font-size: 1.6rem;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0.1em;
  text-align: center;
  background: #00B9EF;
  color: #ffffff;
  padding: 0.5333333333rem;
  border-radius: 1.7333333333rem;
  position: absolute;
  top: -0.9333333333rem;
  left: 50%;
  transform: translateX(-50%);
  width: 20.6666666667rem;
}

.p-payment__title::after {
  content: "";
  width: 1.0666666667rem;
  height: 1rem;
  background: #00B9EF;
  position: absolute;
  bottom: -0.6666666667rem;
  left: 50%;
  transform: translateX(-50%);
  clip-path: polygon(100% 0%, 0 0, 50% 100%);
}

@media screen and (min-width: 768px) {
  .p-payment__title {
    line-height: 1.75;
    padding: 0.25rem;
    width: 21.0625rem;
  }
}
.p-payment__item {
  background: #ffffff;
  border-radius: 0.3333333333rem;
  padding: 2.6rem 1.6rem 1.3333333333rem;
  position: relative;
}

.p-payment__item:nth-of-type(2) {
  margin: 2.7333333333rem 0 0;
}

@media screen and (min-width: 768px) {
  .p-payment__item {
    border-radius: 0.625rem;
    padding: 3.0625rem 0.9375rem 1.8125rem;
    width: 70%;
    display: flex;
    align-items: center;
    justify-content: center;
  }
  .p-payment__item:nth-of-type(2) {
    margin: 0;
    width: 28%;
    padding-bottom: 1.0625rem;
  }
}
@media screen and (min-width: 1024px) {
  .p-payment__item {
    width: 63.4166666667%;
    padding: 3.0625rem 2.375rem 1.8125rem;
  }
  .p-payment__item:nth-of-type(2) {
    width: 34.9166666667%;
    padding-bottom: 1.0625rem;
  }
}
.p-payment__item-title {
  font-size: 1rem;
  font-weight: 700;
  line-height: 1.7;
  letter-spacing: 0.05em;
  text-align: center;
  width: 12.6666666667rem;
  border: 1px solid #00B9EF;
  border-radius: 1.7333333333rem;
  padding: 0.5333333333rem;
  position: absolute;
  top: -1.4rem;
  left: 50%;
  transform: translateX(-50%);
  background: #ffffff;
}

@media screen and (min-width: 768px) {
  .p-payment__item-title {
    font-size: 1rem;
    line-height: 2;
    padding: 0.25rem;
  }
}
.p-payment__item-img {
  width: 100%;
}

.p-payment__item-img img {
  width: 100%;
}

.p-payment__item-list {
  display: flex;
  justify-content: center;
  gap: 3.0666666667rem;
}

.p-payment__item-list li:first-child {
  position: relative;
}

.p-payment__item-list li:first-child::after {
  content: "/";
  position: absolute;
  bottom: 0;
  right: -1.7333333333rem;
  font-weight: 700;
  line-height: 1.6;
  letter-spacing: 0.2em;
}

@media screen and (min-width: 768px) {
  .p-payment__item-list li:first-child::after {
    font-weight: 500;
    line-height: 1.9;
    letter-spacing: 0.05em;
  }
}
.p-payment__item-icon {
  width: 3.6rem;
  margin-inline: auto;
}

.p-payment__item-text {
  font-weight: 700;
  line-height: 1.6;
  letter-spacing: 0.2em;
  text-align: center;
  margin: 1rem 0 0;
}

@media screen and (min-width: 768px) {
  .p-payment__item-text {
    font-weight: 500;
    line-height: 1.9;
    letter-spacing: 0.05em;
    margin-top: 0.75rem;
  }
}
.p-price-section {
  padding: 4rem 0;
  overflow-x: clip;
}

@media screen and (min-width: 768px) {
  .p-price-section {
    padding: 6.25rem 0;
  }
  .p-price-section--area .p-price-section__head p {
    width: 84%;
  }
  .p-price-section--area .p-price-section__head-img {
    left: calc(50% + 13.125rem);
  }
}
@media screen and (min-width: 768px) {
  .p-price-section__title {
    width: min(40.4947916667vw, 340px);
  }
}
@media screen and (min-width: 1024px) {
  .p-price-section__title {
    width: 100%;
  }
}
.p-price-section__head {
  margin: 1.3333333333rem auto 0;
  width: 25rem;
  position: relative;
}

.p-price-section__head p {
  font-weight: 700;
  line-height: 1.7;
  letter-spacing: 0.05em;
}

@media screen and (min-width: 768px) {
  .p-price-section__head {
    width: 100%;
    margin-left: 0;
  }
  .p-price-section__head p {
    line-height: 2;
  }
}
.p-price-section__head-img {
  width: 14rem;
  position: absolute;
  top: -3.1333333333rem;
  left: calc(50% - 1.3333333333rem);
}

@media screen and (min-width: 768px) {
  .p-price-section__head-img {
    width: 17.6875rem;
    top: -12.875rem;
    left: calc(50% + 12.0625rem);
  }
}
.p-price-section__head-img img {
  width: 100%;
}

.p-price-section__table {
  background: #F2F8FF;
  border-radius: 0.6666666667rem;
  padding: 2.6666666667rem 1.3333333333rem;
  margin: 1.6666666667rem 0 0;
  position: relative;
  z-index: 1;
}

@media screen and (min-width: 768px) {
  .p-price-section__table {
    margin-top: 3.5rem;
  }
}
.p-price-section__payment {
  margin: 2.2666666667rem 0 0;
  background: #F2F8FF;
  padding: 6rem 1.3333333333rem 2.6666666667rem;
  border-radius: 0.6666666667rem;
  position: relative;
}

@media screen and (min-width: 768px) {
  .p-price-section__payment {
    margin-top: 4.1875rem;
    padding: 5.25rem 2.5rem 2.5rem;
    display: flex;
    gap: 1.25rem;
  }
}
.p-price-section__payment-title {
  font-size: 1.6rem;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0.1em;
  text-align: center;
  background: #00B9EF;
  color: #ffffff;
  padding: 0.5333333333rem;
  border-radius: 1.7333333333rem;
  position: absolute;
  top: -0.9333333333rem;
  left: 50%;
  transform: translateX(-50%);
  width: 20.6666666667rem;
}

.p-price-section__payment-title::after {
  content: "";
  width: 1.0666666667rem;
  height: 1rem;
  background: #00B9EF;
  position: absolute;
  bottom: -0.6666666667rem;
  left: 50%;
  transform: translateX(-50%);
  clip-path: polygon(100% 0%, 0 0, 50% 100%);
}

@media screen and (min-width: 768px) {
  .p-price-section__payment-title {
    line-height: 1.75;
    padding: 0.25rem;
    width: 21.0625rem;
  }
}
.p-price-section__item {
  background: #ffffff;
  border-radius: 0.3333333333rem;
  padding: 2.6rem 1.6rem 1.3333333333rem;
  position: relative;
}

.p-price-section__item:nth-of-type(2) {
  margin: 2.7333333333rem 0 0;
}

@media screen and (min-width: 768px) {
  .p-price-section__item {
    border-radius: 0.625rem;
    padding: 3.0625rem 0.9375rem 1.8125rem;
    width: 70%;
    display: flex;
    align-items: center;
    justify-content: center;
  }
  .p-price-section__item:nth-of-type(2) {
    margin: 0;
    width: 28%;
    padding-bottom: 1.0625rem;
  }
}
@media screen and (min-width: 1024px) {
  .p-price-section__item {
    width: 63.4166666667%;
    padding: 3.0625rem 2.375rem 1.8125rem;
  }
  .p-price-section__item:nth-of-type(2) {
    width: 34.9166666667%;
    padding-bottom: 1.0625rem;
  }
}
.p-price-section__item-title {
  font-size: 1rem;
  font-weight: 700;
  line-height: 1.7;
  letter-spacing: 0.05em;
  text-align: center;
  width: 12.6666666667rem;
  border: 1px solid #00B9EF;
  border-radius: 1.7333333333rem;
  padding: 0.5333333333rem;
  position: absolute;
  top: -1.4rem;
  left: 50%;
  transform: translateX(-50%);
  background: #ffffff;
}

@media screen and (min-width: 768px) {
  .p-price-section__item-title {
    font-size: 1rem;
    line-height: 2;
    padding: 0.25rem;
  }
}
.p-price-section__item-img {
  width: 100%;
}

.p-price-section__item-img img {
  width: 100%;
}

.p-price-section__item-list {
  display: flex;
  justify-content: center;
  gap: 3.0666666667rem;
}

.p-price-section__item-list li:first-child {
  position: relative;
}

.p-price-section__item-list li:first-child::after {
  content: "/";
  position: absolute;
  bottom: 0;
  right: -1.7333333333rem;
  font-weight: 700;
  line-height: 1.6;
  letter-spacing: 0.2em;
}

@media screen and (min-width: 768px) {
  .p-price-section__item-list li:first-child::after {
    font-weight: 500;
    line-height: 1.9;
    letter-spacing: 0.05em;
  }
}
.p-price-section__item-icon {
  width: 3.6rem;
  margin-inline: auto;
}

.p-price-section__item-text {
  font-weight: 700;
  line-height: 1.6;
  letter-spacing: 0.2em;
  text-align: center;
  margin: 1rem 0 0;
}

@media screen and (min-width: 768px) {
  .p-price-section__item-text {
    font-weight: 500;
    line-height: 1.9;
    letter-spacing: 0.05em;
    margin-top: 0.75rem;
  }
}
.p-price-section__link {
  margin: 2rem 0 0;
  text-align: center;
}

@media screen and (min-width: 768px) {
  .p-price-section__link {
    margin-top: 3.75rem;
  }
}
.p-price {
  padding: 4rem 0;
}

.p-price:first-child {
  padding-top: 2rem;
}

.p-price:nth-child(even) {
  background: #F2F8FF;
}

@media screen and (min-width: 768px) {
  .p-price {
    padding: 6.25rem 0;
  }
  .p-price:first-child {
    padding-top: 2.6875rem;
  }
}
.p-price__text {
  font-weight: 700;
  line-height: 1.7;
  letter-spacing: 0.05em;
  text-align: center;
  margin: 1.3333333333rem 0 0;
}

@media screen and (min-width: 768px) {
  .p-price__text {
    margin-top: 2.5rem;
    font-weight: 700;
    line-height: 2;
  }
}
.p-price__table {
  margin: 2.6666666667rem 0 0;
}

.p-price__service {
  margin: 2.6666666667rem 0 0;
}

@media screen and (min-width: 768px) {
  .p-price__service {
    margin-top: 3.75rem;
  }
}
.p-price__service-title {
  font-family: "M PLUS 1p", sans-serif;
  font-size: 1.6rem;
  font-weight: 500;
  line-height: 1.5;
  letter-spacing: 0.05em;
  text-align: center;
  color: #007BC7;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.2666666667rem;
  white-space: nowrap;
  flex-shrink: 0;
}

@media screen and (min-width: 768px) {
  .p-price__service-title {
    font-size: 2rem;
    line-height: 1.75;
    letter-spacing: 0.1em;
    gap: 1.5625rem;
  }
}
.p-price__service-title::before, .p-price__service-title::after {
  content: "";
  width: 50%;
  height: 0.0666666667rem;
  background: #007BC7;
}

.p-price__service-list {
  display: flex;
  flex-flow: wrap;
  justify-content: center;
  gap: 1.3333333333rem 0.6666666667rem;
  margin: 2rem 0 0;
}

.p-price__service-list li {
  width: calc((100% - 0.6666666667rem) / 2);
}

@media screen and (min-width: 768px) {
  .p-price__service-list {
    margin-top: 3.75rem;
    gap: 2.5rem 1.6875rem;
  }
  .p-price__service-list li {
    width: calc((100% - 5.0625rem) / 4);
  }
}
.p-price__links {
  margin: 2.6666666667rem 0 0;
  display: flex;
  flex-direction: column;
  gap: 0.6666666667rem;
}

@media screen and (min-width: 768px) {
  .p-price__links {
    margin-top: 3.75rem;
    flex-direction: row;
    justify-content: center;
    gap: 1.25rem;
  }
}
.p-privacypolicy {
  padding: 2rem 0 4rem;
}

@media screen and (min-width: 768px) {
  .p-privacypolicy {
    padding: 3.9375rem 0 6.25rem;
  }
}
.p-privacypolicy__lead p {
  font-weight: 700;
  line-height: 1.7;
  letter-spacing: 0.05em;
  font-feature-settings: "halt" on;
}

.p-privacypolicy__lead p + p {
  margin-top: 1.5em;
}

@media screen and (min-width: 768px) {
  .p-privacypolicy__lead p {
    line-height: 2;
  }
}
.p-privacypolicy__content {
  margin-top: 2.6666666667rem;
}

@media screen and (min-width: 768px) {
  .p-privacypolicy__content {
    margin-top: 2.5rem;
  }
}
.p-privacypolicy__item:not(:first-child) {
  margin-top: 2rem;
}

@media screen and (min-width: 768px) {
  .p-privacypolicy__item:not(:first-child) {
    margin-top: 2.25rem;
  }
}
.p-privacypolicy__heading {
  font-feature-settings: "halt" on;
  font-family: "M PLUS 1p", sans-serif;
  font-size: 1.2rem;
  font-weight: 500;
  line-height: 1.4;
  letter-spacing: 0.05em;
  color: #007BC7;
  padding-bottom: 0.5333333333rem;
  border-bottom: 0.1333333333rem solid #007BC7;
}

.p-privacypolicy__body {
  margin: 1.3333333333rem 0 0;
  line-height: 1.9;
  font-weight: 500;
  line-height: 1.6;
  letter-spacing: 0.05em;
  font-feature-settings: "halt" on;
}

.p-privacypolicy__body ol {
  margin: 1.3333333333rem 0 0;
  padding-left: 1.4666666667rem;
}

.p-privacypolicy__body ol li {
  list-style: decimal;
}

.p-privacypolicy__body ol li:not(:first-child) {
  margin-top: 1.3333333333rem;
}

.p-privacypolicy__body ol li ol li:not(:first-child) {
  margin-top: 0;
}

.p-privacypolicy__body ol li ul {
  margin: 0.6666666667rem 0 0;
}

.p-privacypolicy__body ol li ul li {
  display: flex;
  align-items: baseline;
}

.p-privacypolicy__body ol li ul li:not(:first-child) {
  margin-top: 0;
}

.p-privacypolicy__body ol li ul li::before {
  content: "・";
  font-feature-settings: normal;
}

@media screen and (min-width: 768px) {
  .p-privacypolicy__body ol {
    margin: 0.875rem 0 1.125rem;
    padding-left: 1.625rem;
  }
}
.p-privacypolicy__footer {
  margin: 1.3333333333rem 0 0;
}

.p-privacypolicy__footer p {
  font-weight: 500;
  line-height: 1.6;
  letter-spacing: 0.05em;
  font-feature-settings: "halt" on;
  text-align: right;
}

.p-reason {
  padding: 2.6666666667rem 0;
}

@media screen and (min-width: 768px) {
  .p-reason {
    padding: 6.25rem 0;
  }
}
.p-reason__box {
  background: #F2FCFF;
  border-radius: 1rem;
  padding: 4rem 0.8rem 0;
}

@media screen and (min-width: 768px) {
  .p-reason__box {
    border-radius: 1.25rem;
    padding: 6.25rem 2.8125rem 0 4.375rem;
  }
}
@media screen and (min-width: 1024px) {
  .p-reason__box {
    display: grid;
    grid-template-columns: 20rem 1fr;
    gap: 1.875rem;
  }
}
@media screen and (min-width: 1280px) {
  .p-reason__box {
    grid-template-columns: 21.5rem 1fr;
    gap: 2.5rem;
  }
}
@media screen and (min-width: 768px) {
  .p-reason__head {
    display: flex;
    align-items: center;
    gap: 5rem;
  }
}
@media screen and (min-width: 1024px) {
  .p-reason__head {
    flex-direction: column;
    align-items: flex-start;
    gap: 7.4375rem;
    white-space: nowrap;
  }
}
.p-reason__img {
  margin: 2rem auto 0;
  width: 18rem;
}

@media screen and (min-width: 768px) {
  .p-reason__img {
    width: 21.5rem;
    margin: 0;
  }
}
@media screen and (min-width: 1024px) {
  .p-reason__img {
    margin-left: -1.5rem;
  }
}
.p-reason__img img {
  width: 100%;
}

.p-reason__content {
  margin: 1.7333333333rem 0 0;
  padding: 0 0.5333333333rem 2rem;
  height: 68.1333333333rem;
  overflow-y: auto;
}

@media screen and (min-width: 768px) {
  .p-reason__content {
    height: 56.25rem;
    padding: 0 0 2.5rem;
    margin: 0;
  }
}
.p-reason__list li {
  background: #ffffff;
  border-radius: 1rem;
  padding: 2.6666666667rem 1.6rem;
  border: 1px solid #00B9EF;
  box-shadow: 0px 0px 16.3px #D6E0EC;
}

.p-reason__list li:not(:first-child) {
  margin-top: 1.3333333333rem;
}

@media screen and (min-width: 768px) {
  .p-reason__list li {
    width: calc((100% - 15px) / 2);
    padding: 2.4375rem 1.8125rem;
  }
  .p-reason__list li:not(:first-child) {
    margin-top: reL(20);
  }
  .p-reason__list li:not(:first-child):nth-child(2) {
    margin-top: 2.5rem;
  }
}
@media screen and (min-width: 1024px) {
  .p-reason__list li {
    padding: 2.4375rem 0.9375rem;
  }
}
@media screen and (min-width: 1280px) {
  .p-reason__list li {
    padding-inline: 1.8125rem;
  }
}
.p-reason__number {
  display: flex;
  justify-content: center;
  height: 1.8666666667rem;
  width: auto;
}

@media screen and (min-width: 768px) {
  .p-reason__number {
    height: 2.75rem;
  }
}
.p-reason__number img {
  height: 100%;
  width: auto;
  object-fit: contain;
}

.p-reason__item-title {
  margin: 2rem 0 0;
  font-size: 1.2rem;
  font-weight: 500;
  font-family: "M PLUS 1p", sans-serif;
  color: #007BC7;
  letter-spacing: 0.05em;
  line-height: 1.4;
  text-align: center;
}

@media screen and (min-width: 768px) {
  .p-reason__item-title {
    font-size: 1.125rem;
    line-height: 1.75;
    letter-spacing: 0.1em;
    white-space: nowrap;
  }
}
.p-reason__item-text {
  margin: 1.3333333333rem 0 0;
  font-weight: 500;
  line-height: 1.6;
  letter-spacing: 0.05em;
}

.p-results-section {
  padding: 4rem 0;
  background: #F2F8FF;
  overflow-x: clip;
}

@media screen and (min-width: 768px) {
  .p-results-section {
    padding: 6.25rem 0;
  }
}
.p-results-section--price {
  background: #ffffff;
}

.p-results-section__text {
  margin: 1.3333333333rem 0 0;
  font-weight: 700;
  line-height: 1.7;
  letter-spacing: 0.05em;
  text-align: center;
}

@media screen and (min-width: 768px) {
  .p-results-section__text {
    margin-top: 2.5rem;
    line-height: 2;
  }
}
.p-results-section__slider {
  margin: 0.6666666667rem calc(50% - 50vw) 0;
}

@media screen and (min-width: 768px) {
  .p-results-section__slider {
    margin-top: 2.625rem;
  }
}
.p-results-section__link {
  margin: 2rem 0 0;
  text-align: center;
}

@media screen and (min-width: 768px) {
  .p-results-section__link {
    margin-top: 3.75rem;
  }
}
.p-results {
  padding: 4rem 0;
}

.p-results:first-child {
  padding-top: 2rem;
}

.p-results:nth-child(even) {
  background: #F2F8FF;
}

@media screen and (min-width: 768px) {
  .p-results {
    padding: 6.25rem 0;
  }
  .p-results:first-child {
    padding-top: 2.6875rem;
  }
}
.p-results__slider {
  margin: 0.6666666667rem calc(50% - 50vw) 0;
}

@media screen and (min-width: 768px) {
  .p-results__slider {
    margin-top: 2.625rem;
  }
}
.p-risk {
  padding: 4rem 0 0;
}

@media screen and (min-width: 768px) {
  .p-risk {
    padding: 6.25rem 0 0;
  }
}
.p-risk__list {
  display: grid;
  gap: 0.6666666667rem;
  margin: 2.6666666667rem 0 0;
}

@media screen and (min-width: 768px) {
  .p-risk__list {
    gap: 1.25rem;
    margin-top: 3.75rem;
  }
}
.p-risk__item {
  display: grid;
  gap: 2.6666666667rem;
  border: 0.2rem solid #EDEDED;
  border-radius: 1.3333333333rem;
  padding: 0 1.1333333333rem 1.8rem;
}

@media screen and (min-width: 768px) {
  .p-risk__item {
    grid-template-columns: 25.078125% 1fr;
    gap: 3.125rem;
    padding: 2.375rem 3.5625rem 2.375rem 0;
  }
}
.p-risk__item:nth-child(1) img {
  width: 5.8666666667rem;
}

@media screen and (min-width: 768px) {
  .p-risk__item:nth-child(1) img {
    width: 6.625rem;
  }
}
.p-risk__item:nth-child(2) img {
  width: 5.2666666667rem;
  margin-left: 0.6666666667rem;
}

@media screen and (min-width: 768px) {
  .p-risk__item:nth-child(2) img {
    width: 7.625rem;
    margin-left: 1.4375rem;
  }
}
.p-risk__item:nth-child(3) img {
  width: 5.4666666667rem;
}

@media screen and (min-width: 768px) {
  .p-risk__item:nth-child(3) img {
    width: 7.4375rem;
  }
}
.p-risk__item-img {
  height: 10.9333333333rem;
  display: flex;
  align-items: center;
  justify-content: center;
  border-bottom: 0.2rem solid #EDEDED;
}

@media screen and (min-width: 768px) {
  .p-risk__item-img {
    height: 100%;
    border-bottom: none;
    border-right: 0.2rem solid #EDEDED;
  }
}
.p-risk__item-title {
  font-size: 1.2rem;
  font-weight: 500;
  font-family: "M PLUS 1p", sans-serif;
  color: #EC365A;
  letter-spacing: 0.05em;
  line-height: 1.4;
  text-align: center;
}

@media screen and (min-width: 768px) {
  .p-risk__item-title {
    font-size: 1.125rem;
    line-height: 1.75;
    letter-spacing: 0.1em;
    text-align: left;
  }
}
.p-risk__item-text {
  font-weight: 500;
  letter-spacing: 0.05em;
  line-height: 1.6;
  margin: 1.3333333333rem 0 0;
}

@media screen and (min-width: 768px) {
  .p-risk__item-text {
    margin-top: 1.25rem;
    line-height: 1.9;
  }
}
.p-risk__box {
  margin: 4.6666666667rem auto 0;
  padding: 3.1333333333rem 1.1333333333rem 1.8rem;
  background: #FDF9FA;
  border-radius: 0.6666666667rem;
  border: 0.2rem solid #EC365A;
  position: relative;
}

@media screen and (min-width: 768px) {
  .p-risk__box {
    padding: 4.1875rem 4.8125rem 2.3125rem;
    max-width: 71.25rem;
  }
}
.p-risk__box-title {
  font-size: 1.2rem;
  font-weight: 500;
  font-family: "M PLUS 1p", sans-serif;
  line-height: 1.4;
  letter-spacing: 0.05em;
  background: #EC365A;
  color: #ffffff;
  text-align: center;
  position: absolute;
  top: -2rem;
  left: 50%;
  transform: translateX(-50%);
  width: 16.4666666667rem;
  padding: 1.1333333333rem 0.6666666667rem;
}

@media screen and (min-width: 768px) {
  .p-risk__box-title {
    font-size: 2rem;
    line-height: 1.75;
    letter-spacing: 0.1em;
    width: 33.75rem;
    padding: 0.125rem 3.625rem;
  }
}
.p-risk__box-text {
  font-weight: 500;
  letter-spacing: 0.05em;
  line-height: 1.6;
}

@media screen and (min-width: 768px) {
  .p-risk__box-text {
    line-height: 1.9;
  }
}
.p-risk__box-text span {
  color: #EC365A;
}

.p-sdgs {
  padding: 4rem 0;
}

@media screen and (min-width: 768px) {
  .p-sdgs {
    padding: 6.25rem 0;
  }
}
.p-sdgs__img {
  margin: 2rem 0 0;
  border-radius: 0.6666666667rem;
  overflow: hidden;
}

.p-sdgs__img img {
  width: 100%;
  height: auto;
  aspect-ratio: 360/210;
  object-fit: cover;
}

@media screen and (min-width: 768px) {
  .p-sdgs__img {
    margin-top: 3.75rem;
    border-radius: 1.25rem;
  }
  .p-sdgs__img img {
    aspect-ratio: 960/400;
  }
}
.p-sdgs__intro {
  margin: 1.0666666667rem 0 0;
  font-weight: 500;
  line-height: 1.6;
  letter-spacing: 0.05em;
  text-align: center;
}

@media screen and (min-width: 768px) {
  .p-sdgs__intro {
    margin-top: 2.5rem;
    line-height: 1.9;
  }
}
.p-sdgs__list {
  margin: 2rem 0 0;
  display: grid;
  gap: 0.6666666667rem;
}

@media screen and (min-width: 768px) {
  .p-sdgs__list {
    gap: 1.328125%;
    grid-template-columns: repeat(3, 1fr);
    margin-top: 3.75rem;
  }
}
.p-sdgs__item {
  background: #F2FCFF;
  border-radius: 1.3333333333rem;
  padding: 1.3333333333rem;
}

@media screen and (min-width: 768px) {
  .p-sdgs__item {
    padding: 1.875rem min(2.6041666667vw, 2.5rem);
  }
}
.p-sdgs__heading {
  font-family: "M PLUS 1p", sans-serif;
  font-size: 1.3333333333rem;
  font-weight: 500;
  color: #FA8E0A;
  letter-spacing: 0.05em;
  line-height: 1.5;
}

@media screen and (min-width: 768px) {
  .p-sdgs__heading {
    font-size: 1.5rem;
    letter-spacing: 0.1em;
  }
}
.p-sdgs__text {
  margin: 0.6666666667rem 0 0;
  font-weight: 500;
  line-height: 1.6;
  letter-spacing: 0.05em;
  font-feature-settings: "halt" on;
}

@media screen and (min-width: 768px) {
  .p-sdgs__text {
    line-height: 1.9;
  }
}
.p-sdgs__text ul li {
  position: relative;
  padding-left: 0.6666666667rem;
}

.p-sdgs__text ul li::before {
  content: "・";
  position: absolute;
  left: 0;
  top: 0;
}

.p-service-section {
  padding: 4rem 0;
  background: #F2F8FF;
}

.p-service-section--area .p-service-section__btn {
  padding-inline: 1.3333333333rem;
}

@media screen and (min-width: 768px) {
  .p-service-section {
    padding: 6.25rem 0;
  }
  .p-service-section--area .c-service-card__title {
    font-size: min(1.5625vw, 1.125rem);
  }
}
.p-service-section__lead {
  font-weight: 700;
  line-height: 1.7;
  margin: 1.5333333333rem 0 0;
  display: flex;
  align-items: flex-end;
  justify-content: center;
}

.p-service-section__lead::before, .p-service-section__lead::after {
  content: "";
  width: 0.1333333333rem;
  height: 1.2666666667rem;
  background: #262626;
  margin-bottom: 0.2rem;
}

.p-service-section__lead::before {
  margin-right: 0.6666666667rem;
  transform: rotate(-25deg);
}

.p-service-section__lead::after {
  margin-left: 0.3333333333rem;
  transform: rotate(25deg);
}

@media screen and (min-width: 768px) {
  .p-service-section__lead {
    line-height: 2;
    letter-spacing: 0.05em;
    margin-top: 3rem;
  }
}
.p-service-section__cards {
  display: grid;
  gap: 0.6666666667rem;
  margin: 2rem 0 0;
}

@media screen and (min-width: 768px) {
  .p-service-section__cards {
    grid-template-columns: repeat(3, 1fr);
    gap: 1.875rem min(1.0416666667vw, 1.5625rem);
    margin-top: 3.75rem;
  }
}
@media screen and (min-width: 1280px) {
  .p-service-section__cards {
    gap: 1.875rem 1.5625rem;
  }
}
.p-service-section__btn {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.8rem;
  width: 100%;
  padding: 0.8rem 1.3333333333rem 0.8rem 2rem;
  background: #ffffff;
  border: none;
  border-radius: 0.3333333333rem;
  box-shadow: 0 0 16.3px 0 rgb(214, 224, 236);
}

@media screen and (min-width: 768px) {
  .p-service-section__btn {
    display: none;
  }
}
.p-service-section__btn-title {
  flex: 1;
  font-size: 1.2rem;
  font-weight: 500;
  font-family: "M PLUS 1p", sans-serif;
  color: #007BC7;
  letter-spacing: 0.05em;
  line-height: 1.4;
  text-align: left;
}

.p-service-section__btn-icon {
  flex-shrink: 0;
  width: 1.6rem;
  height: 1.6rem;
  position: relative;
  transition: transform 0.25s ease;
}

.p-service-section__btn-icon::before, .p-service-section__btn-icon::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  background: #007BC7;
  transition: transform 0.25s ease;
}

.p-service-section__btn-icon::before {
  width: 14px;
  height: 2px;
  margin-left: -7px;
  margin-top: -1px;
}

.p-service-section__btn-icon::after {
  width: 2px;
  height: 14px;
  margin-left: -1px;
  margin-top: -7px;
}

.js-accordion-item.is-open .p-service-section__btn-icon::after {
  transform: rotate(90deg);
}

.p-service {
  padding: 4rem 0;
}

@media screen and (min-width: 768px) {
  .p-service {
    padding: 6.25rem 0;
  }
}
.p-service__list {
  margin: 5.3333333333rem 0 0;
  display: grid;
  gap: 4rem;
}

@media screen and (min-width: 768px) {
  .p-service__list {
    margin-top: 6.75rem;
    gap: 5rem;
  }
}
.p-service__item {
  border-radius: 1.3333333333rem;
  background: #ffffff;
  box-shadow: 0px 0px 16.3px #D6E0EC;
  padding: 38.4615384615vw 1.3333333333rem 2rem;
  position: relative;
}

@media screen and (min-width: 768px) {
  .p-service__item {
    padding: 2.5rem 3.75rem;
    display: flex;
    align-items: flex-end;
    gap: 2.8125rem;
  }
  .p-service__item:nth-child(even) {
    flex-direction: row-reverse;
  }
}
.p-service__img {
  width: 77.7777777778%;
  border-radius: 1.3333333333rem;
  overflow: hidden;
  position: absolute;
  top: -2.6666666667rem;
  left: 50%;
  transform: translateX(-50%);
}

.p-service__img img {
  width: 100%;
  height: auto;
  object-fit: cover;
  aspect-ratio: 280/170;
}

@media screen and (min-width: 768px) {
  .p-service__img {
    position: static;
    transform: none;
    width: 33.6206896552%;
    margin-top: -5.625rem;
  }
  .p-service__img img {
    aspect-ratio: 390/292;
  }
}
@media screen and (min-width: 768px) {
  .p-service__body {
    width: 64.224137931%;
  }
}
.p-service__item-title {
  font-size: 1.2rem;
  font-weight: 500;
  color: #007BC7;
  letter-spacing: 0.05em;
  line-height: 1.4;
}

@media screen and (min-width: 768px) {
  .p-service__item-title {
    line-height: 1.75;
    letter-spacing: 0.1em;
  }
}
.p-service__item-text {
  font-weight: 500;
  letter-spacing: 0.05em;
  line-height: 1.6;
  margin: 1rem 0 0;
}

@media screen and (min-width: 768px) {
  .p-service__item-text {
    margin-top: 1.25rem;
    line-height: 1.9;
  }
}
.p-specialist {
  max-width: 600px;
  margin-inline: auto;
}

.p-specialist__lead {
  font-size: 1rem;
  font-weight: 700;
  line-height: 1.75;
  letter-spacing: 0.05em;
  color: #262626;
  text-align: center;
  margin: 0;
}

@media screen and (min-width: 768px) {
  .p-specialist__lead {
    font-size: 1rem;
    line-height: 1.9;
  }
}
.p-specialist__list {
  list-style: none;
  margin: 1.6rem 0 0;
  padding: 0;
}

@media screen and (min-width: 768px) {
  .p-specialist__list {
    margin-top: 2rem;
  }
}
.p-specialist__list li {
  position: relative;
  padding-left: 1.3333333333rem;
  font-weight: 500;
  line-height: 1.7;
  letter-spacing: 0.05em;
  color: #262626;
}

@media screen and (min-width: 768px) {
  .p-specialist__list li {
    padding-left: 1.5rem;
    font-size: 0.9375rem;
  }
}
.p-specialist__list li::before {
  content: "・";
  position: absolute;
  left: 0;
  color: #007BC7;
}

.p-staff {
  padding: 4rem 0;
  background: #F2F8FF;
}

@media screen and (min-width: 768px) {
  .p-staff {
    padding: 6.25rem 0;
  }
}
.p-staff--kaitori {
  background: #ffffff;
  padding-bottom: 0;
}

@media screen and (min-width: 768px) {
  .p-staff--kaitori {
    padding-bottom: 6.25rem;
  }
}
.p-staff--area {
  background: #ffffff;
}

.p-staff__head {
  text-align: center;
  margin: 1.3333333333rem 0 0;
}

@media screen and (min-width: 768px) {
  .p-staff__head {
    margin-top: 2.5rem;
  }
}
.p-staff__head-text {
  font-weight: 500;
  line-height: 1.6;
  letter-spacing: 0.05em;
}

.p-staff__head-text + .p-staff__head-text {
  margin-top: 0.6666666667rem;
}

@media screen and (min-width: 768px) {
  .p-staff__head-text {
    line-height: 1.9;
  }
  .p-staff__head-text + .p-staff__head-text {
    margin-top: 0.875rem;
  }
}
.p-staff__head-text--bold {
  font-weight: 700;
  line-height: 1.7;
}

@media screen and (min-width: 768px) {
  .p-staff__head-text--bold {
    line-height: 2;
  }
}
.p-staff__slider {
  margin: 1.0666666667rem calc(50% - 50vw) 0;
  padding: 1.3333333333rem 0 2.6rem;
}

@media screen and (min-width: 768px) {
  .p-staff__slider {
    margin: 2.5rem 0 0;
    overflow: visible;
  }
}
@media screen and (min-width: 768px) {
  .p-staff__list {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 0.9375rem;
  }
}
@media screen and (min-width: 1024px) {
  .p-staff__list {
    gap: 1.5625rem;
  }
}
.p-staff .swiper-pagination {
  bottom: 0;
}

@media screen and (min-width: 768px) {
  .p-staff .swiper-pagination {
    display: none;
  }
}
.p-staff .swiper-pagination-bullet {
  width: 0.8rem;
  height: 0.8rem;
  background: #DADADA;
  opacity: 1;
}

.p-staff .swiper-pagination-bullet.swiper-pagination-bullet-active {
  background: #007BC7;
}

.p-staff .swiper-horizontal > .swiper-pagination-bullets .swiper-pagination-bullet,
.p-staff .swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet {
  margin: 0 0.3333333333rem;
}

.p-staff__item {
  border-radius: 1.3333333333rem;
  overflow: hidden;
  background: #ffffff;
  box-shadow: 0 0 16.3px 0 rgb(214, 224, 236);
}

.p-staff__item:nth-child(even) .p-staff__body p {
  color: #FF9F2A;
}

@media screen and (min-width: 768px) {
  .p-staff__item {
    height: fit-content;
  }
}
.p-staff__img img {
  width: 100%;
  height: auto;
  object-fit: cover;
  aspect-ratio: 360/190;
}

@media screen and (min-width: 768px) {
  .p-staff__img img {
    aspect-ratio: 410/300;
  }
}
.p-staff__body {
  padding: 1.3333333333rem 2rem;
}

@media screen and (min-width: 768px) {
  .p-staff__body {
    padding: 1.25rem;
  }
}
@media screen and (min-width: 1024px) {
  .p-staff__body {
    padding: 1.25rem 1.875rem;
  }
}
.p-staff__body p {
  font-weight: 500;
  line-height: 1.6;
  letter-spacing: 0.05em;
  color: #007BC7;
}

@media screen and (min-width: 768px) {
  .p-staff__body p {
    line-height: 1.9;
  }
}
.p-supervisor {
  padding: 2rem 0 4rem;
}

@media screen and (min-width: 768px) {
  .p-supervisor {
    padding: 3.9375rem 0 6.25rem;
  }
}
.p-supervisor__list {
  display: grid;
  gap: 1.3333333333rem;
}

.p-supervisor__item {
  background: #ffffff;
  box-shadow: 0px 0px 16.3px #D6E0EC;
  padding: 2.6666666667rem 1.3333333333rem;
  border-radius: 1.3333333333rem;
}

@media screen and (min-width: 768px) {
  .p-supervisor__item {
    padding: 2.5rem 2.5rem 5rem;
  }
}
.p-supervisor__head {
  padding-bottom: 2rem;
  border-bottom: 0.0666666667rem solid #DADADA;
}

.p-supervisor__title {
  font-family: "M PLUS 1p", sans-serif;
  font-size: 1.2rem;
  font-weight: 500;
  color: #007BC7;
  letter-spacing: 0.05em;
  line-height: 1.4;
}

@media screen and (min-width: 768px) {
  .p-supervisor__title {
    letter-spacing: 0.1em;
  }
}
.p-supervisor__info {
  display: flex;
  flex-wrap: wrap;
  gap: 0.6666666667rem;
  margin: 1.3333333333rem 0 0;
}

.p-supervisor__info li {
  display: inline-block;
  border-radius: 1.2rem;
  border: 0.0666666667rem solid #DADADA;
  padding: 0.2666666667rem 1.2666666667rem 0.3333333333rem;
  font-weight: 500;
  line-height: 1.6;
  letter-spacing: 0.05em;
}

@media screen and (min-width: 768px) {
  .p-supervisor__info li {
    line-height: 1.9;
    padding: 0.125rem 1.1875rem;
  }
}
.p-supervisor__body {
  margin: 2rem 0 0;
}

@media screen and (min-width: 768px) {
  .p-supervisor__body {
    display: grid;
    grid-template-columns: 30% 1fr;
    align-items: flex-start;
    gap: 1.875rem;
  }
}
.p-supervisor__img {
  width: 100%;
}

.p-supervisor__img figcaption {
  font-weight: 500;
  line-height: 1.6;
  letter-spacing: 0.05em;
  text-align: center;
  margin: 0.6666666667rem 0 0;
}

@media screen and (min-width: 768px) {
  .p-supervisor__img figcaption {
    line-height: 1.9;
  }
}
.p-supervisor__img img {
  border-radius: 1.3333333333rem;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.p-supervisor__content {
  margin: 1.3333333333rem 0 0;
}

@media screen and (min-width: 768px) {
  .p-supervisor__content {
    margin: 0;
  }
}
.p-supervisor__text {
  font-weight: 500;
  line-height: 1.6;
  letter-spacing: 0.05em;
}

@media screen and (min-width: 768px) {
  .p-supervisor__text {
    line-height: 1.9;
  }
}
.p-supervisor__links {
  display: grid;
  gap: 0.6666666667rem;
  margin: 1.3333333333rem 0 0;
}

.p-supervisor__link {
  background: #F2FCFF;
  padding: 0.6666666667rem 1rem;
  border-radius: 0.6666666667rem;
  font-weight: 500;
  line-height: 1.6;
  letter-spacing: 0.05em;
}

.p-supervisor__link a {
  display: inline-block;
}

@media screen and (min-width: 768px) {
  .p-supervisor__link {
    line-height: 1.9;
    padding: 0.9375rem;
  }
  .p-supervisor__link a {
    transition: color 0.3s;
  }
}
@media screen and (min-width: 768px) and (hover: hover) {
  .p-supervisor__link a:hover {
    color: #007BC7;
  }
}
.p-support-center {
  padding: 4rem 0;
  background: #F2F8FF;
  overflow-x: clip;
}

@media screen and (min-width: 768px) {
  .p-support-center {
    padding: 6.25rem 0;
  }
}
.p-support-center__content {
  display: flex;
  flex-direction: column;
  gap: 1.3333333333rem;
  margin: 2.6666666667rem 0 0;
}

@media screen and (min-width: 768px) {
  .p-support-center__content {
    flex-direction: row-reverse;
    align-items: flex-start;
    gap: 4.6875%;
    margin-top: 3.75rem;
  }
}
.p-support-center__img {
  margin-right: calc(50% - 50vw);
  width: calc(100vw - 1rem);
  border-radius: 1.3333333333rem 0 0 1.3333333333rem;
  overflow: hidden;
}

.p-support-center__img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  aspect-ratio: 375/209;
}

@media screen and (min-width: 768px) {
  .p-support-center__img {
    width: 42.2395833333vw;
  }
  .p-support-center__img img {
    aspect-ratio: 811/545;
  }
}
@media screen and (min-width: 768px) {
  .p-support-center__body {
    width: 56.71875%;
  }
}
.p-support-center__body-text {
  font-weight: 500;
  line-height: 1.6;
  letter-spacing: 0.05em;
  font-feature-settings: "palt";
}

.p-support-center__body-text + .p-support-center__body-text {
  margin-top: 1.5em;
}

@media screen and (min-width: 768px) {
  .p-support-center__body-text {
    line-height: 1.9;
  }
}
.p-support-center__info {
  margin: 4.8rem 0 0;
  text-align: center;
  background: #ffffff;
  padding: 0 0.6666666667rem 1.3333333333rem;
  border-radius: 0.6666666667rem;
}

@media screen and (min-width: 768px) {
  .p-support-center__info {
    margin-top: 5.4375rem;
    padding: 0 0.625rem 1.875rem;
  }
}
.p-support-center__info-text {
  font-size: 1.6rem;
  font-weight: 700;
  line-height: 1.3;
  letter-spacing: 0.1em;
  color: #ffffff;
  background: #00B9EF;
  padding: 0.6rem 1.6666666667rem 0.7333333333rem;
  border-radius: 2.6666666667rem;
  display: inline-block;
  position: relative;
  margin: -3.1333333333rem 0 0;
}

.p-support-center__info-text::after {
  content: "";
  width: 1.0666666667rem;
  height: 1rem;
  background: #00B9EF;
  position: absolute;
  left: 50%;
  bottom: -0.6rem;
  transform: translateX(-50%);
  clip-path: polygon(100% 0, 0 0, 50% 100%);
}

@media screen and (min-width: 768px) {
  .p-support-center__info-text {
    font-size: 1.25rem;
    line-height: 1.75;
    letter-spacing: 0;
    margin-top: -1.6875rem;
    padding: 0.5625rem;
    min-width: 21.0625rem;
  }
  .p-support-center__info-text::after {
    bottom: -0.625rem;
  }
}
.p-support-center__info-name {
  font-weight: 700;
  line-height: 1.7;
  letter-spacing: 0.05em;
  font-feature-settings: "palt";
  margin: 1.6rem 0 0;
}

@media screen and (min-width: 768px) {
  .p-support-center__info-name {
    line-height: 2;
    margin-top: 1.875rem;
  }
}
.p-support-center__info-address {
  font-weight: 500;
  line-height: 1.6;
  letter-spacing: 0.05em;
  font-feature-settings: "palt";
  margin: 0.6666666667rem 0 0;
}

@media screen and (min-width: 768px) {
  .p-support-center__info-address {
    line-height: 1.9;
  }
}
.p-terrace {
  padding: 4rem 0;
}

@media screen and (min-width: 768px) {
  .p-terrace {
    padding: 6.25rem 0;
  }
}
.p-terrace__head {
  margin: 1.3333333333rem 0 0;
  text-align: center;
}

@media screen and (min-width: 768px) {
  .p-terrace__head {
    margin-top: 2.5rem;
  }
}
.p-terrace__lead {
  font-weight: 700;
  line-height: 1.7;
  letter-spacing: 0.05em;
}

@media screen and (min-width: 768px) {
  .p-terrace__lead {
    line-height: 2;
  }
}
.p-terrace__head-text {
  font-weight: 500;
  line-height: 1.6;
  letter-spacing: 0.05em;
  margin: 0.6666666667rem 0 0;
}

@media screen and (min-width: 768px) {
  .p-terrace__head-text {
    margin-top: 0.875rem;
    line-height: 1.9;
  }
}
.p-terrace__list {
  display: grid;
  gap: 1.3333333333rem;
  margin: 2.6666666667rem 0 0;
}

@media screen and (min-width: 768px) {
  .p-terrace__list {
    margin-top: 3.75rem;
    grid-template-columns: repeat(3, 1fr);
    gap: 1.5625rem;
  }
}
.p-terrace__item {
  background: #ffffff;
  border-radius: 1.3333333333rem;
  box-shadow: 0 0 16.3px 0 rgb(214, 224, 236);
  padding: 0 1.3333333333rem 1.3333333333rem;
  overflow: hidden;
}

@media screen and (min-width: 768px) {
  .p-terrace__item {
    padding: 0 1.875rem 1.875rem;
  }
}
.p-terrace__img {
  margin-inline: -1.3333333333rem;
}

.p-terrace__img img {
  width: 100%;
  height: auto;
  object-fit: cover;
  aspect-ratio: 360/190;
}

@media screen and (min-width: 768px) {
  .p-terrace__img {
    margin-inline: -1.875rem;
  }
  .p-terrace__img img {
    aspect-ratio: 410/230;
  }
}
.p-terrace__item-title {
  font-size: 1.6rem;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0.1em;
  color: #007BC7;
  text-align: center;
  margin: 1.3333333333rem 0 0;
}

@media screen and (min-width: 768px) {
  .p-terrace__item-title {
    margin-top: 1.25rem;
    line-height: 1.75;
  }
}
.p-terrace__item-text {
  font-weight: 500;
  line-height: 1.6;
  letter-spacing: 0.05em;
  margin: 1.3333333333rem 0 0;
  font-feature-settings: "palt";
}

@media screen and (min-width: 768px) {
  .p-terrace__item-text {
    line-height: 1.9;
  }
}
.p-terrace__info {
  margin: 3.4666666667rem 0 0;
  text-align: center;
  background: #F2FCFF;
  padding: 0 1.3333333333rem 1.3333333333rem;
  border-radius: 0.6666666667rem;
}

@media screen and (min-width: 768px) {
  .p-terrace__info {
    margin-top: 5.4375rem;
    padding: 0 1.875rem 1.875rem;
  }
}
.p-terrace__info-text {
  font-size: 1.6rem;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0.1em;
  color: #ffffff;
  background: #00B9EF;
  padding: 0.0666666667rem 2.2rem;
  border-radius: 1.7333333333rem;
  display: inline-block;
  position: relative;
  margin: -1.3333333333rem 0 0;
}

.p-terrace__info-text::after {
  content: "";
  width: 1.0666666667rem;
  height: 1rem;
  background: #00B9EF;
  position: absolute;
  left: 50%;
  bottom: -0.6rem;
  transform: translateX(-50%);
  clip-path: polygon(100% 0, 0 0, 50% 100%);
}

@media screen and (min-width: 768px) {
  .p-terrace__info-text {
    font-size: 1.25rem;
    line-height: 1.75;
    letter-spacing: 0;
    margin-top: -1.6875rem;
    padding: 0.5625rem;
    min-width: 21.0625rem;
  }
  .p-terrace__info-text::after {
    bottom: -0.625rem;
  }
}
.p-terrace__address {
  font-weight: 500;
  line-height: 1.6;
  letter-spacing: 0.05em;
  font-feature-settings: "palt";
  margin: 1.6rem 0 0;
}

@media screen and (min-width: 768px) {
  .p-terrace__address {
    margin-top: 1.875rem;
    line-height: 1.9;
  }
}
.p-thanks {
  padding: 1.7333333333rem 0 4rem;
}

@media screen and (min-width: 768px) {
  .p-thanks {
    padding: 3.9375rem 0 6.25rem;
  }
}
.p-thanks__box {
  background: #ffffff;
  border-radius: 2rem;
  box-shadow: 0 0 16.3px #d6e0ec;
  padding: 2.6666666667rem 1.3333333333rem;
}

@media screen and (min-width: 768px) {
  .p-thanks__box {
    padding: 5rem 2.5rem;
  }
}
.p-thanks__text {
  font-weight: 700;
  line-height: 1.7;
  letter-spacing: 0.05em;
  text-align: center;
  font-feature-settings: "halt" on;
}

@media screen and (min-width: 768px) {
  .p-thanks__text {
    line-height: 2;
  }
}
.p-thanks__link {
  margin: 2rem 0 0;
  text-align: center;
}

@media screen and (min-width: 768px) {
  .p-thanks__link {
    margin-top: 2.5rem;
  }
}
.p-top-column {
  padding: 2.6666666667rem 0 4rem;
  position: relative;
  overflow-x: clip;
}

@media screen and (min-width: 768px) {
  .p-top-column {
    padding: 8.375rem 0 3.75rem;
  }
}
.p-top-column::after {
  content: "";
  width: 100%;
  height: calc(100% - 7.2rem);
  background: #F2F8FF;
  position: absolute;
  bottom: 0;
  left: 0;
  z-index: -1;
  display: block;
  border-radius: 4.6666666667rem 0 0 0;
}

@media screen and (min-width: 768px) {
  .p-top-column::after {
    border-radius: 6.25rem 0 0 0;
    height: calc(100% - 7.5rem);
    left: 30%;
    width: 100vw;
  }
}
@media screen and (min-width: 1280px) {
  .p-top-column::after {
    left: calc(50% - 21.875rem);
  }
}
.p-top-column__list {
  margin: 5.3333333333rem 0 0;
}

@media screen and (min-width: 768px) {
  .p-top-column__list {
    margin: 3.5625rem auto 0;
    max-width: 68.125rem;
  }
}
.p-top-column__link {
  margin: 2rem 0 0;
  text-align: center;
}

@media screen and (min-width: 768px) {
  .p-top-column__link {
    margin-top: 2.5rem;
    text-align: right;
  }
}
.p-top-ihin {
  padding: 8.8666666667rem 0 4rem;
  background: #F2F8FF;
}

@media screen and (min-width: 768px) {
  .p-top-ihin {
    padding: 10.8125rem 0 6.25rem;
  }
}
.p-top-ihin__title {
  position: relative;
  text-align: center;
  font-family: "M PLUS 1p", sans-serif;
  font-size: 1.6rem;
  font-weight: 500;
  line-height: 1.5;
  letter-spacing: 0.05em;
}

.p-top-ihin__orange {
  color: #FA8E0A;
  font-size: 2.1333333333rem;
  letter-spacing: 0.1em;
}

.p-top-ihin__balloon {
  display: inline-block;
  width: 22.6666666667rem;
  background: #007BC7;
  color: #ffffff;
  padding: 0.5333333333rem 1.6rem;
  border-radius: 1.7333333333rem;
  position: absolute;
  top: -4.8666666667rem;
  left: 50%;
  transform: translateX(-50%);
  font-family: "Noto Sans JP", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", "Meiryo", "verdana", sans-serif;
  font-weight: 700;
  letter-spacing: 0.1em;
}

.p-top-ihin__balloon::after {
  content: "";
  width: 1.0666666667rem;
  height: 1rem;
  background: #007BC7;
  position: absolute;
  bottom: -0.6666666667rem;
  left: 50%;
  transform: translateX(-50%);
  clip-path: polygon(100% 0%, 0 0, 50% 100%);
}

.p-top-ihin__box {
  margin: 1.3333333333rem 0 0;
  background: #ffffff;
  border-radius: 1rem;
  padding: 2.6666666667rem 1.3333333333rem;
}

@media screen and (min-width: 768px) {
  .p-top-ihin__box {
    margin-top: 3.75rem;
    border-radius: 1.25rem;
    padding: 2.8125rem min(3.90625vw, 2.5rem);
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 0 5.859375%;
  }
}
@media screen and (min-width: 1280px) {
  .p-top-ihin__box {
    padding: 2.8125rem 2.5rem;
    gap: 6.75rem;
  }
}
.p-top-ihin__item {
  text-align: center;
}

@media screen and (min-width: 768px) {
  .p-top-ihin__item {
    margin: 2.5rem 0 0;
  }
}
.p-top-ihin__list {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 0.6666666667rem;
  position: relative;
  padding-bottom: 3rem;
  max-width: 20.9333333333rem;
  margin-inline: auto;
}

.p-top-ihin__list::after {
  content: "";
  width: 100%;
  height: 1.1333333333rem;
  background: url(./images/common/balloon_line.svg) no-repeat center center/contain;
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
}

@media screen and (min-width: 768px) {
  .p-top-ihin__list {
    max-width: 18.75rem;
    padding-bottom: 1.6875rem;
    margin: 0;
  }
}
@media screen and (min-width: 1280px) {
  .p-top-ihin__list {
    flex-wrap: nowrap;
    max-width: 26.25rem;
  }
  .p-top-ihin__list::after {
    background: url(./images/common/balloon_line_pc.svg) no-repeat center center/contain;
  }
}
.p-top-ihin__list li {
  display: flex;
  align-items: center;
  gap: 0.6666666667rem;
  font-size: 1.2rem;
  font-weight: 500;
  line-height: 1.4;
  letter-spacing: 0.05em;
}

.p-top-ihin__list li::before {
  content: "";
  width: 1.6666666667rem;
  height: 1.6666666667rem;
  background: url(./images/common/ico_check_line.svg) no-repeat center center/contain;
}

@media screen and (min-width: 768px) {
  .p-top-ihin__list li {
    font-size: 1rem;
    font-weight: 700;
    line-height: 2;
  }
}
.p-top-ihin__price {
  margin: 1.3333333333rem 0 0;
}

@media screen and (min-width: 768px) {
  .p-top-ihin__price {
    margin-top: 1.875rem;
  }
}
.p-top-ihin__price-text {
  font-size: 1.6rem;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0.1em;
  text-align: center;
}

.p-top-ihin__price-img {
  width: 19.6666666667rem;
  margin: 1.3333333333rem auto 0;
}

@media screen and (min-width: 768px) {
  .p-top-ihin__price-img {
    width: 21.875rem;
    margin-top: 1.875rem;
  }
}
@media screen and (min-width: 1280px) {
  .p-top-ihin__price-img {
    width: 22.9375rem;
  }
}
.p-top-ihin__price-img img {
  width: 100%;
}

.p-top-ihin__text {
  margin: 2.3333333333rem 0 0;
  font-weight: 700;
  line-height: 1.7;
  letter-spacing: 0.05em;
}

@media screen and (min-width: 768px) {
  .p-top-ihin__text {
    max-width: 46.875%;
    margin: 0;
    line-height: 2;
  }
}
.p-top-ihin__images {
  margin: 1.3333333333rem 0 0;
  display: grid;
  gap: 1.3333333333rem;
}

@media screen and (min-width: 768px) {
  .p-top-ihin__images {
    margin-top: 2.5rem;
    grid-template-columns: repeat(2, 1fr);
    gap: 1.875rem;
  }
}
.p-top-ihin__image img {
  width: 100%;
  border-radius: 1rem;
}

@media screen and (min-width: 768px) {
  .p-top-ihin__image img {
    border-radius: 1.25rem;
  }
}
.p-top-ihin__image-text {
  margin: 0.6666666667rem 0 0;
  font-weight: 500;
  line-height: 1.6;
  letter-spacing: 0.05em;
}

@media screen and (min-width: 768px) {
  .p-top-ihin__image-text {
    line-height: 1.9;
    margin-top: 1.25rem;
    text-align: center;
  }
}
.p-top-ihin__bottom {
  margin: 1.3333333333rem 0 0;
  font-weight: 700;
  line-height: 1.7;
  letter-spacing: 0.05em;
  text-align: center;
  font-feature-settings: "palt";
}

@media screen and (min-width: 768px) {
  .p-top-ihin__bottom {
    margin-top: 2.5rem;
    line-height: 2;
  }
}
.p-top-news {
  padding: 4rem 0 0;
}

@media screen and (min-width: 768px) {
  .p-top-news {
    padding: 6.25rem 0 0;
  }
}
.p-top-news__wrap {
  display: flex;
  flex-direction: column;
}

@media screen and (min-width: 768px) {
  .p-top-news__wrap {
    flex-direction: row;
    gap: 1.875rem;
    justify-content: space-between;
  }
}
@media screen and (min-width: 1280px) {
  .p-top-news__wrap {
    gap: 7rem;
  }
}
.p-top-news__head {
  display: contents;
}

@media screen and (min-width: 768px) {
  .p-top-news__head {
    display: block;
    flex-shrink: 0;
  }
}
.p-top-news__title {
  order: 1;
}

.p-top-news__list {
  margin: 1.3333333333rem 0 0;
  order: 2;
}

@media screen and (min-width: 768px) {
  .p-top-news__list {
    width: 55%;
  }
}
@media screen and (min-width: 768px) {
  .p-top-news__list {
    width: 60%;
  }
}
@media screen and (min-width: 1280px) {
  .p-top-news__list {
    max-width: 50.4375rem;
    width: 100%;
  }
}
.p-top-news__link {
  margin: 2rem 0 0;
  text-align: center;
  order: 3;
}

@media screen and (min-width: 768px) {
  .p-top-news__link {
    margin-top: 2.875rem;
    text-align: left;
  }
}
.p-top {
  padding-top: 4rem;
}

@media screen and (min-width: 768px) {
  .p-top {
    padding-top: 7.5rem;
  }
}
.p-top__inner {
  width: min(100%, 1280px);
  margin-inline: auto;
  padding-inline: 1.3333333333rem;
}

@media screen and (min-width: 768px) {
  .p-top__inner {
    padding-inline: 2.5rem;
  }
}
.p-top__section-title {
  font-size: 1.6rem;
  font-weight: 700;
  font-family: "Noto Sans JP", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", "Meiryo", "verdana", sans-serif;
  color: #007BC7;
  text-align: center;
  margin: 0 0 1.6rem;
}

@media screen and (min-width: 768px) {
  .p-top__section-title {
    font-size: 2rem;
    margin-bottom: 2rem;
  }
}
.p-top__service-content {
  padding: 2.6666666667rem 0;
}

@media screen and (min-width: 768px) {
  .p-top__service-content {
    padding: 3.75rem 0;
  }
}
.p-top__service-cards {
  display: grid;
  gap: 1.6rem;
  margin-top: 1.6rem;
}

@media screen and (min-width: 768px) {
  .p-top__service-cards {
    grid-template-columns: repeat(2, 1fr);
    gap: 2rem;
    margin-top: 2rem;
  }
}
.p-top__voice {
  padding: 2.6666666667rem 0;
  background: #F2F8FF;
}

@media screen and (min-width: 768px) {
  .p-top__voice {
    padding: 3.75rem 0;
  }
}
.p-top__services {
  padding: 2.6666666667rem 0;
}

@media screen and (min-width: 768px) {
  .p-top__services {
    padding: 3.75rem 0;
  }
}
.p-top__first {
  padding: 2.6666666667rem 0;
  background: #F2F8FF;
}

@media screen and (min-width: 768px) {
  .p-top__first {
    padding: 3.75rem 0;
  }
}
.p-top__specialist {
  padding: 2.6666666667rem 0;
  background: #F2F8FF;
}

@media screen and (min-width: 768px) {
  .p-top__specialist {
    padding: 3.75rem 0;
  }
}
.p-top__staff {
  padding: 2.6666666667rem 0;
}

@media screen and (min-width: 768px) {
  .p-top__staff {
    padding: 3.75rem 0;
  }
}
.p-top__staff .p-top__inner {
  max-width: 400px;
  margin-inline: auto;
}

.p-top__results {
  padding: 2.6666666667rem 0;
  background: #F2F8FF;
}

@media screen and (min-width: 768px) {
  .p-top__results {
    padding: 3.75rem 0;
  }
}
.p-top__results-grid {
  display: grid;
  gap: 1.3333333333rem;
  margin-top: 1.6rem;
}

@media screen and (min-width: 768px) {
  .p-top__results-grid {
    grid-template-columns: repeat(3, 1fr);
    gap: 1.5rem;
    margin-top: 2rem;
  }
}
.p-top__column {
  padding: 2.6666666667rem 0;
}

@media screen and (min-width: 768px) {
  .p-top__column {
    padding: 3.75rem 0;
  }
}
.p-top__column-list {
  margin-top: 1.6rem;
}

@media screen and (min-width: 768px) {
  .p-top__column-list {
    margin-top: 2rem;
    max-width: 800px;
    margin-inline: auto;
  }
}
.p-top__cta {
  padding: 0;
}

.p-top__area {
  padding-bottom: 2.6666666667rem;
}

@media screen and (min-width: 768px) {
  .p-top__area {
    padding-bottom: 3.75rem;
  }
}
.p-top__area-osaka {
  padding-bottom: 2.6666666667rem;
  background: #F2F8FF;
}

@media screen and (min-width: 768px) {
  .p-top__area-osaka {
    padding-bottom: 3.75rem;
  }
}
.p-voice-detail {
  padding: 7.6rem 0 4rem;
}

@media screen and (min-width: 768px) {
  .p-voice-detail {
    padding: 12.5rem 0 6.25rem;
  }
}
@media screen and (min-width: 1280px) {
  .p-voice-detail {
    padding: 7.125rem 0 6.25rem;
  }
}
.p-voice-detail__box {
  margin: 2.8666666667rem 0 0;
  background: #ffffff;
  border-radius: 1.3333333333rem;
  box-shadow: 0 0 16.3px #D6E0EC;
  padding: 2.6666666667rem 1.3333333333rem;
}

@media screen and (min-width: 768px) {
  .p-voice-detail__box {
    border-radius: 1.875rem;
    margin-top: 3.75rem;
    padding: 3.75rem 2.5rem;
  }
}
@media screen and (min-width: 1280px) {
  .p-voice-detail__box {
    margin-top: 7rem;
    padding: 3.75rem 5rem;
  }
}
@media screen and (min-width: 768px) {
  .p-voice-detail__head {
    display: flex;
    align-items: flex-start;
    gap: 1.875rem;
  }
}
.p-voice-detail__icon {
  width: 6rem;
  height: 6rem;
  border-radius: 50%;
}

@media screen and (min-width: 768px) {
  .p-voice-detail__icon {
    width: 7.5rem;
    height: 7.5rem;
  }
}
.p-voice-detail__icon img {
  width: 100%;
}

.p-voice-detail__title {
  font-size: 1.2rem;
  font-weight: 500;
  font-family: "M PLUS 1p", sans-serif;
  color: #007BC7;
  letter-spacing: 0.05em;
  line-height: 1.4;
  margin: 0.6666666667rem 0 0;
}

@media screen and (min-width: 768px) {
  .p-voice-detail__title {
    font-size: 2rem;
    line-height: 1.5;
    letter-spacing: 0.1em;
    margin: 0.75rem 0 0;
  }
}
.p-voice-detail__tags {
  display: flex;
  flex-wrap: wrap;
  gap: 0.6666666667rem;
  margin: 0.6666666667rem 0 0;
}

@media screen and (min-width: 768px) {
  .p-voice-detail__tags {
    gap: 0.625rem;
    margin-top: 1.25rem;
  }
}
.p-voice-detail__tag {
  display: inline-block;
  padding: 0.2rem 0.6666666667rem;
  font-size: 1rem;
  font-weight: 500;
  line-height: 1.6;
  color: #ffffff;
  background: #007BC7;
  border-radius: 1.3333333333rem;
}

.p-voice-detail__tag a {
  position: relative;
}

.p-voice-detail__tag a::after {
  content: "";
  width: 100%;
  height: 1px;
  background: #ffffff;
  position: absolute;
  bottom: 0.3333333333rem;
  left: 0;
  transition: width 0.3s ease-in-out;
  display: block;
}

@media screen and (min-width: 768px) {
  .p-voice-detail__tag {
    font-size: 1rem;
    line-height: 1.9;
    letter-spacing: 0.05em;
    padding: 0 0.625rem;
  }
}
@media screen and (min-width: 768px) and (hover: hover) {
  .p-voice-detail__tag a:hover::after {
    width: 0;
  }
}
.p-voice-detail__tag--seizenseiri {
  background: #FF4E77;
}

.p-voice-detail__tag--tokusyu {
  background: #4BCCBE;
}

.p-voice-detail__tag--kaitori {
  background: #E7CE4F;
}

.p-voice-detail__tag--dust {
  background: #00B9EF;
}

.p-voice-detail__tag--akiya {
  background: #FA8E0A;
}

.p-voice-detail__img-box {
  margin: 1.3333333333rem 0 0;
  background: #F2FCFF;
  display: grid;
  gap: 2.6666666667rem;
  padding: 2rem 1.4666666667rem;
}

@media screen and (min-width: 768px) {
  .p-voice-detail__img-box {
    margin-top: 3.75rem;
    padding: 4.5625rem 3.3125rem 3.125rem;
    gap: 3.3125rem;
  }
}
.p-voice-detail__images {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 4.2rem;
}

@media screen and (min-width: 768px) {
  .p-voice-detail__images {
    margin: 2.5rem 0 0;
    flex-direction: row;
    gap: 7.0625rem;
  }
}
.p-voice-detail__before {
  width: 83.6363636364%;
  position: relative;
  padding-top: 3.1333333333rem;
}

.p-voice-detail__before::after {
  content: "";
  width: 2.1875rem;
  height: 1rem;
  background: url(./images/common/case_arrow.svg) no-repeat center center/contain;
  position: absolute;
  bottom: -2rem;
  transform: translateX(-50%) rotate(90deg);
  left: 50%;
}

.p-voice-detail__before img {
  border-radius: 0.6666666667rem;
  width: 100%;
  aspect-ratio: 230/139;
}

@media screen and (min-width: 768px) {
  .p-voice-detail__before {
    width: 36.4541832669%;
    padding-top: 3.625rem;
  }
  .p-voice-detail__before::after {
    width: 3.3125rem;
    height: 1.4375rem;
    bottom: 9.75rem;
    transform: none;
    right: -5.1875rem;
    left: auto;
  }
  .p-voice-detail__before img {
    aspect-ratio: 366/270;
    border-radius: 0.625rem;
  }
}
.p-voice-detail__before-title {
  width: fit-content;
  white-space: nowrap;
  position: absolute;
  left: 50%;
  top: 0;
  transform: translateX(-50%);
  font-size: 1.0666666667rem;
  font-family: "M PLUS 1p", sans-serif;
  font-weight: 700;
  letter-spacing: 0.05em;
  color: #ffffff;
  background: #C8C8C8;
  border-radius: 1.7333333333rem;
  padding: 0.2rem 1.2rem;
}

.p-voice-detail__before-title::after {
  content: "";
  width: 0.7333333333rem;
  height: 0.7333333333rem;
  background: #C8C8C8;
  display: block;
  position: absolute;
  bottom: -0.5333333333rem;
  left: 50%;
  transform: translateX(-50%);
  clip-path: polygon(100% 0, 0 0, 50% 100%);
}

@media screen and (min-width: 768px) {
  .p-voice-detail__before-title {
    font-size: 1rem;
    padding: 0.3125rem 1.4375rem;
  }
  .p-voice-detail__before-title::after {
    width: 1.125rem;
    height: 1.125rem;
    bottom: -0.5rem;
  }
}
.p-voice-detail__after {
  width: 100%;
  position: relative;
}

.p-voice-detail__after img {
  border-radius: 0.6666666667rem;
  width: 100%;
  aspect-ratio: 275/237;
}

@media screen and (min-width: 768px) {
  .p-voice-detail__after {
    width: 52.2908366534%;
  }
  .p-voice-detail__after img {
    aspect-ratio: 525/412;
    border-radius: 0.625rem;
  }
}
.p-voice-detail__after-title {
  width: fit-content;
  white-space: nowrap;
  position: absolute;
  left: 50%;
  top: -0.6666666667rem;
  transform: translateX(-50%);
  font-size: 1.2rem;
  font-family: "M PLUS 1p", sans-serif;
  font-weight: 500;
  line-height: 1;
  letter-spacing: 0.05em;
  color: #ffffff;
  background: #FF9F2A;
  border-radius: 1.7333333333rem;
  padding: 0.2rem 2rem 0.3333333333rem;
}

.p-voice-detail__after-title::after {
  content: "";
  width: 0.5333333333rem;
  height: 0.5333333333rem;
  background: #FF9F2A;
  display: block;
  position: absolute;
  bottom: -0.2666666667rem;
  left: 50%;
  transform: translateX(-50%);
  clip-path: polygon(100% 0, 0 0, 50% 100%);
}

@media screen and (min-width: 768px) {
  .p-voice-detail__after-title {
    font-size: 1.5rem;
    font-weight: 700;
    line-height: 1.75;
    padding: 0.125rem 1.875rem;
    top: -1.4375rem;
  }
  .p-voice-detail__after-title::after {
    width: 0.9375rem;
    height: 0.9375rem;
    bottom: -0.6875rem;
  }
}
.p-voice-detail__content {
  margin: 2rem 0 0;
}

@media screen and (min-width: 768px) {
  .p-voice-detail__content {
    margin-top: 3.75rem;
  }
}
.p-voice-detail__content h3 {
  font-size: 1.2rem;
  font-weight: 500;
  font-family: "M PLUS 1p", sans-serif;
  color: #007BC7;
  letter-spacing: 0.05em;
  line-height: 1.4;
  margin: 1.3333333333rem 0;
}

@media screen and (min-width: 768px) {
  .p-voice-detail__content h3 {
    font-size: 1.125rem;
    line-height: 1.75;
    letter-spacing: 0.1em;
  }
}
.p-voice-detail__content p {
  font-weight: 500;
  line-height: 1.6;
  letter-spacing: 0.05em;
  margin: 1.3333333333rem 0;
}

@media screen and (min-width: 768px) {
  .p-voice-detail__content p {
    line-height: 1.9;
  }
}
.p-voice-detail__pagination {
  margin-top: 2rem;
}

@media screen and (min-width: 768px) {
  .p-voice-detail__pagination {
    margin-top: 3.75rem;
  }
}
.p-voice-section {
  padding: 4rem 0;
  overflow-x: clip;
}

.p-voice-section--top {
  border-bottom: 1px solid #007BC7;
}

.p-voice-section--kaitori {
  padding-top: 1.3333333333rem;
}

.p-voice-section--price {
  background: #F2F8FF;
}

.p-voice-section--area .c-title__orange {
  font-size: 1.85rem;
}

@media screen and (min-width: 768px) {
  .p-voice-section {
    padding: 6.25rem 0;
  }
  .p-voice-section .c-title__orange {
    line-height: 1.4;
  }
  .p-voice-section--kaitori {
    padding-top: 0;
  }
  .p-voice-section--area .c-title__orange {
    font-size: 3rem;
  }
}
.p-voice__list {
  display: grid;
  gap: 1.3333333333rem;
  margin: 2.6666666667rem 0 0;
}

@media screen and (min-width: 768px) {
  .p-voice__list {
    margin-top: 3.75rem;
    grid-template-columns: repeat(2, 1fr);
    gap: 1.25rem 1.5625rem;
  }
}
@media screen and (min-width: 1024px) {
  .p-voice__list {
    grid-template-columns: repeat(3, 1fr);
  }
}
.p-voice__item a {
  height: 100%;
  background: #ffffff;
  border-radius: 1.3333333333rem;
  box-shadow: 0 0 16.3px 0 rgb(214, 224, 236);
  padding: 2rem;
  position: relative;
}

@media screen and (min-width: 768px) {
  .p-voice__item a {
    padding: 1.625rem 1.875rem;
  }
}
.p-voice__tags {
  display: flex;
  flex-wrap: wrap;
  gap: 0.6666666667rem;
}

@media screen and (min-width: 768px) {
  .p-voice__tags {
    gap: 0.625rem;
  }
}
.p-voice__tag {
  display: inline-block;
  padding: 0.2rem 0.6666666667rem;
  font-size: 1rem;
  font-weight: 500;
  line-height: 1.6;
  color: #ffffff;
  background: #007BC7;
  border-radius: 1.3333333333rem;
}

@media screen and (min-width: 768px) {
  .p-voice__tag {
    font-size: 1rem;
    line-height: 1.9;
    letter-spacing: 0.05em;
    padding: 0 0.625rem;
  }
}
.p-voice__tag--seizenseiri {
  background: #FF4E77;
}

.p-voice__tag--tokusyu {
  background: #4BCCBE;
}

.p-voice__tag--kaitori {
  background: #E7CE4F;
}

.p-voice__tag--dust {
  background: #00B9EF;
}

.p-voice__tag--akiya {
  background: #FA8E0A;
}

.p-voice__icon {
  width: 8rem;
  height: 8rem;
  border-radius: 50%;
  margin: 2rem auto 0;
}

.p-voice__icon img {
  width: 100%;
}

.p-voice__item-title {
  font-size: 1.2rem;
  font-weight: 500;
  font-family: "M PLUS 1p", sans-serif;
  color: #007BC7;
  letter-spacing: 0.05em;
  line-height: 1.4;
  margin: 1.3333333333rem 0;
}

@media screen and (min-width: 768px) {
  .p-voice__item-title {
    font-size: 1.125rem;
    line-height: 1.75;
    overflow: hidden;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    min-height: 4rem;
    display: flex;
    align-items: center;
  }
}
.p-voice__body {
  font-weight: 500;
  line-height: 1.6;
  letter-spacing: 0.05em;
  padding-top: 1.3333333333rem;
  border-top: 1px solid #DADADA;
}

@media screen and (min-width: 768px) {
  .p-voice__body {
    line-height: 1.9;
  }
}
.p-voice .pagination {
  margin-top: 2rem;
}

@media screen and (min-width: 768px) {
  .p-voice .pagination {
    margin-top: 3.75rem;
  }
}
.wpcf7 {
  position: relative;
}

.wpcf7 span.wpcf7-not-valid-tip {
  position: absolute;
  bottom: -20px;
  left: 10px;
  font-size: 12px;
  color: #dc4322;
}

.wpcf7 div.wpcf7-response-output {
  border: none !important;
  padding: 0 !important;
  margin: 0 !important;
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  text-align: center;
  color: #dc4322;
  font-size: 12px;
  white-space: nowrap;
}

.wpcf7 .wpcf7-spinner {
  position: absolute;
  top: 50%;
  left: 110%;
  transform: translate(-50%, -50%);
}

.u-desktop {
  display: none;
}

@media screen and (min-width: 768px) {
  .u-desktop {
    display: block;
  }
}
@media screen and (min-width: 768px) {
  .u-mobile {
    display: none;
  }
}
.u-tablet {
  display: none;
}

@media screen and (min-width: 768px) {
  .u-tablet {
    display: block;
  }
}
@media screen and (min-width: 1280px) {
  .u-tablet {
    display: none;
  }
}
/*# sourceMappingURL=sourcemaps/style.css.map */