/* リキッドレイアウト対応 */

body {
  color: #333;
  font-family: "Noto Sans JP", sans-serif;
}

.center {
  text-align: center;
}

.u-bold {
  font-weight: bold;
}

.u-line-yellow {
  background-image: -webkit-gradient(linear, left top, left bottom, color-stop(65%, rgba(0, 0, 0, 0)), color-stop(65%, #F4D105), to(#F4D105));
  background-image: linear-gradient(rgba(0, 0, 0, 0) 65%, #F4D105 65%, #F4D105 100%);
}

.u-green-bold {
  color: #159947;
  font-weight: bold;
}

.u-desktop {
  display: none;
}

html {
  font-size: 16px;
}

/* pcの電話番号発信対応 */

/* ホバー */

a {
  color: inherit;
  text-decoration: none;
  -webkit-transition: opacity 0.3s;
  transition: opacity 0.3s;
}

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

/* Remove default padding */

ul,
ol {
  padding: 0;
}

/* Remove default margin */

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

/* Set core root defaults */

/* Set core body defaults */

body {
  line-height: 1.5;
  min-height: 100vh;
  text-rendering: optimizeSpeed;
}

/* Remove list styles on ul, ol elements with a class attribute */

ul,
ol {
  list-style: none;
}

/* A elements that don't have a class get default styles */

a:not([class]) {
  -webkit-text-decoration-skip: ink;
  text-decoration-skip-ink: auto;
}

/* Make images easier to work with */

img {
  display: block;
  max-width: 100%;
  width: 100%;
}

/* Natural flow and rhythm in articles by default */

article>*+* {
  margin-top: 1em;
}

/* Inherit fonts for inputs and buttons */

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

/* Blur images when they have no alt attribute */

img:not([alt]) {
  filter: url('data:image/svg+xml;charset=utf-8,<svg xmlns="http://www.w3.org/2000/svg"><filter id="filter"><feGaussianBlur stdDeviation="10" /></filter></svg>#filter');
  -webkit-filter: blur(10px);
  filter: blur(10px);
}

/* フォームリセット */

input,
button,
select,
textarea {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  background: transparent;
  border: none;
  border-radius: 0;
  font: inherit;
}

textarea {
  resize: vertical;
}

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

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

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

.bgextend {
  -webkit-animation-duration: 1s;
  animation-duration: 1s;
  -webkit-animation-fill-mode: forwards;
  animation-fill-mode: forwards;
  -webkit-animation-name: bgextendAnimeBase;
  animation-name: bgextendAnimeBase;
  opacity: 0;
  position: relative;
}

/*中の要素*/

.bgappear {
  -webkit-animation-delay: 0.6s;
  animation-delay: 0.6s;
  -webkit-animation-duration: 1s;
  animation-duration: 1s;
  -webkit-animation-fill-mode: forwards;
  animation-fill-mode: forwards;
  -webkit-animation-name: bgextendAnimeSecond;
  animation-name: bgextendAnimeSecond;
  opacity: 0;
}

.bgappearTrigger,
.bgUDextendTrigger,
.bgDUextendTrigger,
.bgRLextendTrigger,
.bgLRextendTrigger {
  opacity: 0;
}

/*左から*/

.bgLRextend::before {
  -webkit-animation-duration: 1s;
  animation-duration: 1s;
  -webkit-animation-fill-mode: forwards;
  animation-fill-mode: forwards;
  -webkit-animation-name: bgLRextendAnime;
  animation-name: bgLRextendAnime;
  background-color: #159947;
  /*伸びる背景色の設定*/
  content: "";
  height: 100%;
  position: absolute;
  width: 100%;
}

.breadcrumb.inner {
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 1;
  color: #333;
  display: -webkit-box;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 14px;
  font-size: 0.875rem;
  font-weight: 500;
  letter-spacing: 0.06em;
  line-height: normal;
  overflow: hidden;
}

/*デフォルト色の指定*/

/*サイズ等の指定*/

/*ボタン系の指定*/

/*ラジオボタンの指定*/

/*チェックボックスの指定*/

/*テキストエリアの指定*/

[type=text],
[type=search],
[type=tel],
[type=url],
[type=email],
[type=password],
[type=date],
textarea {
  background: #fff;
  background-image: none;
  /*↓リセットCSS */
  border: none;
  border: 1px solid #CCCCCC;
  border-radius: 0;
  border-radius: 0;
  font-family: inherit;
  /*↓カスタム */
  font-size: 16px;
  font-size: 1rem;
  max-width: 420px;
  max-width: 26.25rem;
  padding: 5px 10px;
  padding: 0.3125rem 0.625rem;
  width: 100%;
  /*↓↓↓↓不要ならコメントアウト or 削除 */
  /*↓↓選択されているときの色*/
}

[type=text]:focus,
[type=search]:focus,
[type=tel]:focus,
[type=url]:focus,
[type=email]:focus,
[type=password]:focus,
[type=date]:focus,
textarea:focus {
  border: 1px solid #159947;
}

form button,
form [type=button],
form [type=submit] {
  background-color: #fff;
  background-image: none;
  border: 2px solid #1F5F5B;
  border-radius: 0;
  color: #1F5F5B;
  cursor: pointer;
  display: block;
  font-size: 18px;
  font-size: 1.125rem;
  /*↓リセットCSS */
  margin: 0;
  padding: 8px 30px 8px 10px;
  padding: 0.5rem 1.875rem 0.5rem 0.625rem;
  text-decoration: none;
  -webkit-transition: background-color 0.3s, color 0.3s;
  transition: background-color 0.3s, color 0.3s;
  /*↓カスタム */
  width: 100%;
}

form button:disabled,
form [type=button]:disabled,
form [type=submit]:disabled {
  pointer-events: none;
}

.wpcf7-previous[type=button] {
  background-color: #B5B5B5;
  border: 2px solid #B5B5B5;
  color: #fff;
  padding: 8px 10px 8px 30px;
  padding: 0.5rem 0.625rem 0.5rem 1.875rem;
}

[type=radio] {
  display: none;
}

[type=radio]+span {
  color: #333;
  display: inline-block;
  font-size: 14px;
  font-size: 0.875rem;
  font-weight: 700;
  letter-spacing: 0;
  line-height: 1.4285714286;
  margin: 0;
  padding: 0 0 0 41px;
  padding: 0 0 0 2.5625rem;
  position: relative;
  text-align: left;
}

[type=radio]+span {
  cursor: pointer;
}

[type=radio]+span::before {
  background: #fff;
  border: 1px solid #CCC;
  border-radius: 50%;
  content: "";
  display: block;
  height: 20px;
  height: 1.25rem;
  left: 0;
  position: absolute;
  top: 0.8em;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  width: 20px;
  width: 1.25rem;
}

[type=radio]+span::after {
  opacity: 0;
  -webkit-transition: 0.3s ease;
  transition: 0.3s ease;
}

[type=radio]:checked+span::before {
  border: 1px solid #159947;
}

[type=radio]:checked+span::after {
  background: #159947;
  border-radius: 50%;
  content: "";
  display: block;
  height: 10px;
  height: 0.625rem;
  left: 5px;
  left: 0.3125rem;
  opacity: 1;
  position: absolute;
  top: 0.8em;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  width: 10px;
  width: 0.625rem;
}

.form__vertical [type=checkbox] {
  display: none;
}

.form__vertical [type=checkbox]+span {
  color: #333;
  display: inline-block;
  font-size: 14px;
  font-size: 0.875rem;
  font-weight: 700;
  letter-spacing: 0;
  line-height: 1.4285714286;
  margin: 0;
  padding: 0 0 0 41px;
  padding: 0 0 0 2.5625rem;
  position: relative;
  text-align: left;
}

.form__vertical [type=checkbox]+span {
  cursor: pointer;
}

.form__vertical [type=checkbox]+span::before {
  background: #fff;
  border: 1px solid #CCC;
  border-radius: 50%;
  content: "";
  display: block;
  height: 20px;
  height: 1.25rem;
  left: 0;
  position: absolute;
  top: 0.8em;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  width: 20px;
  width: 1.25rem;
}

.form__vertical [type=checkbox]+span::after {
  opacity: 0;
  -webkit-transition: 0.3s ease;
  transition: 0.3s ease;
}

.form__vertical [type=checkbox]:checked+span::before {
  border: 1px solid #159947;
}

.form__vertical [type=checkbox]:checked+span::after {
  background: #159947;
  border-radius: 50%;
  content: "";
  display: block;
  height: 10px;
  height: 0.625rem;
  left: 5px;
  left: 0.3125rem;
  opacity: 1;
  position: absolute;
  top: 0.8em;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  width: 10px;
  width: 0.625rem;
}

.form__privacy [type=checkbox] {
  display: none;
}

.form__privacy [type=checkbox]+span {
  color: #333;
  cursor: pointer;
  display: block;
  font-size: 12px;
  font-size: 0.75rem;
  font-weight: 700;
  letter-spacing: 0;
  line-height: 1.4166666667;
  margin: 0 0 0 0;
  padding: 0 0 0 64px;
  padding: 0 0 0 4rem;
  position: relative;
  text-align: center;
  -webkit-transition: 0.3s ease;
  transition: 0.3s ease;
}

.form__privacy [type=checkbox]+span::before {
  background: #fff;
  border: 1px solid #ccc;
  content: "";
  display: block;
  height: 16px;
  height: 1rem;
  left: 40px;
  left: 2.5rem;
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  width: 16px;
  width: 1rem;
}

.form__privacy [type=checkbox]+span::after {
  opacity: 0;
  -webkit-transition: 0.3s ease;
  transition: 0.3s ease;
}

.form__privacy [type=checkbox]:checked+span::after {
  border-bottom: 2px solid #159947;
  border-left: 2px solid #159947;
  content: "";
  display: block;
  height: 6.4px;
  height: 0.4rem;
  left: 42px;
  left: 2.625rem;
  margin-left: 0.1em;
  margin-top: -0.1em;
  opacity: 1;
  position: absolute;
  top: 50%;
  /*チェックマークじゃない場合は以下を変更する*/
  -webkit-transform: translateY(-50%) rotate(-45deg);
  transform: translateY(-50%) rotate(-45deg);
  width: 9.6px;
  width: 0.6rem;
}

select {
  /*↓デフォルトのアイコンを消す場合はコメントアウト（noneにする）*/
  -webkit-appearance: auto;
  -moz-appearance: auto;
  appearance: auto;
  background-color: #fff;
  border: 1px solid #CCC;
  /*↓リセットCSS */
  border-radius: 0;
  color: inherit;
  cursor: pointer;
  font-family: inherit;
  /*↓カスタム */
  font-size: 16px;
  font-size: 1rem;
  max-width: 420px;
  max-width: 26.25rem;
  padding: 5px 10px;
  padding: 0.3125rem 0.625rem;
  width: 100%;
  /*↓デフォルトではないアイコンを使う場合は入力する*/
}

select:focus {
  border: 1px solid #159947;
}

[type=date] {
  /*↓デフォルトのアイコンを消す場合はコメントアウト（noneにする）*/
  -webkit-appearance: auto;
  -moz-appearance: auto;
  appearance: auto;
  max-width: 120px;
  max-width: 7.5rem;
  position: relative;
  /*↓デフォルトではないアイコンを使う場合は入力する*/
  width: 100%;
}

[type=date]:focus {
  border: 1px solid #159947;
}

input[type=date]::-webkit-calendar-picker-indicator {
  height: 100%;
  opacity: 0;
  position: absolute;
  width: 100%;
}

textarea {
  height: 250px;
  height: 15.625rem;
  max-width: 600px;
  max-width: 37.5rem;
  resize: none;
}

.wpcf7-spinner {
  display: none;
}

.wpcf7-form.sent .wpcf7-response-output {
  display: none;
}

.pagination {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  font-size: 16px;
  font-size: 1rem;
  font-weight: 400;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  line-height: 1.125;
}

.pagination__current {
  background-color: #159947;
  color: #fff;
  display: grid;
  font-size: 17px;
  font-size: 1.0625rem;
  font-weight: 700;
  height: 40px;
  height: 2.5rem;
  letter-spacing: 0;
  line-height: 1.1764705882;
  place-items: center;
  text-align: center;
  width: 40px;
  width: 2.5rem;
}

.pagination__prev,
.pagination__next {
  background-color: #159947;
  display: grid;
  height: 40px;
  height: 2.5rem;
  place-items: center;
  width: 40px;
  width: 2.5rem;
}

.pagination__arrow-img {
  aspect-ratio: 9/15;
  -webkit-transition: -webkit-transform 0.3s;
  transition: -webkit-transform 0.3s;
  transition: transform 0.3s;
  transition: transform 0.3s, -webkit-transform 0.3s;
  width: 9px;
  width: 0.5625rem;
}

.pagination__arrow-img img {
  -o-object-fit: contain;
  height: 100%;
  object-fit: contain;
  width: 100%;
}

.pagination__next {
  border-left: 1px solid #fff;
  border-radius: 0 1.25rem 1.25rem 0;
}

.pagination__prev {
  border-radius: 1.25rem 0 0 1.25rem;
  border-right: 1px solid #fff;
}

.archive__items {
  margin-top: 20px;
  margin-top: 1.25rem;
}

.archive__pagination {
  margin-top: 24px;
  margin-top: 1.5rem;
}

.archive__search-keyword {
  color: #333;
  font-size: 13px;
  font-size: 0.8125rem;
  font-weight: 400;
  letter-spacing: 0.01em;
  line-height: 1.4615384615;
  text-align: left;
}

.button-round-02 {
  background-color: #fff;
  border: 2px solid #1F5F5B;
  border-radius: 2.5rem;
  color: #1F5F5B;
  display: inline-block;
  font-size: 15px;
  font-size: 0.9375rem;
  font-weight: 600;
  letter-spacing: 0.02em;
  line-height: 1.4;
  max-width: 300px;
  max-width: 18.75rem;
  padding: 18px 10px 18px 0;
  padding: 1.125rem 0.625rem 1.125rem 0;
  position: relative;
  text-align: center;
  -webkit-transition: color 0.3s, background-color 0.3s;
  transition: color 0.3s, background-color 0.3s;
  width: 100%;
}

.button-round-02 span {
  position: relative;
}

.button-round-02 span::after {
  background: url(../images/common/icon-arrow-green.svg) no-repeat center center/contain;
  content: "";
  height: 14px;
  height: 0.875rem;
  position: absolute;
  right: -40px;
  right: -2.5rem;
  top: 55%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  -webkit-transition: background 0.3s;
  transition: background 0.3s;
  width: 8px;
  width: 0.5rem;
}

.button-round {
  background-color: #DD4A54;
  border: 1px solid #DD4A54;
  border-radius: 2.5rem;
  color: #fff;
  display: inline-block;
  font-size: 22px;
  font-size: 1.375rem;
  font-weight: 700;
  letter-spacing: 0.02em;
  line-height: 1.4545454545;
  max-width: 380px;
  max-width: 23.75rem;
  padding: 23px 10px 23px 0;
  padding: 1.4375rem 0.625rem 1.4375rem 0;
  position: relative;
  text-align: center;
  -webkit-transition: color 0.3s, background-color 0.3s;
  transition: color 0.3s, background-color 0.3s;
  width: 100%;
}

.button-round.button-round--green {
  background-color: #159947;
  border: 1px solid #159947;
}

.button-round.button-round--blue {
  background-color: #fff;
  border: 2px solid #fff;
  position: relative;
}

.button-round.button-round--blue::before {
  inset: 0;
  background: -webkit-gradient(linear, left top, left bottom, from(#2B3B76), to(#74A7D5));
  background: linear-gradient(to bottom, #2B3B76 0%, #74A7D5 100%);
  border-radius: inherit;
  content: "";
  opacity: 1;
  pointer-events: none;
  position: absolute;
  -webkit-transition: color 0.3s, opacity 0.3s, border-color 0.3s;
  transition: color 0.3s, opacity 0.3s, border-color 0.3s;
}

.button-round span {
  position: relative;
}

.button-round span::after {
  background: url(../images/common/icon-arrow-white.svg) no-repeat center center/contain;
  content: "";
  height: 18px;
  height: 1.125rem;
  position: absolute;
  right: -22px;
  right: -1.375rem;
  top: 55%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  -webkit-transition: background 0.3s;
  transition: background 0.3s;
  width: 10px;
  width: 0.625rem;
}

.button-round.button-round--blue span::after {
  background: url(../images/lp/lp-icon-arrow-white.svg) no-repeat center center/contain;
  height: 17px;
  height: 1.0625rem;
  -webkit-transition: background 0.3s;
  transition: background 0.3s;
  width: 9px;
  width: 0.5625rem;
}

.button-square {
  background-color: #fff;
  border: 2px solid #1F5F5B;
  color: #1F5F5B;
  display: inline-block;
  font-size: 16px;
  font-size: 1rem;
  font-weight: 500;
  letter-spacing: 0.02em;
  line-height: 1.5;
  max-width: 200px;
  max-width: 12.5rem;
  padding: 8px 20px 8px 0;
  padding: 0.5rem 1.25rem 0.5rem 0;
  position: relative;
  text-align: center;
  -webkit-transition: color 0.3s, background-color 0.3s;
  transition: color 0.3s, background-color 0.3s;
  width: 100%;
}

.button-square.button-square--prev {
  padding: 8px 0 8px 20px;
  padding: 0.5rem 0 0.5rem 1.25rem;
}

.button-square span {
  position: relative;
}

.button-square span::after {
  background: url(../images/common/icon-arrow-green.svg) no-repeat center center/contain;
  content: "";
  height: 10px;
  height: 0.625rem;
  position: absolute;
  right: -20px;
  right: -1.25rem;
  top: 55%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  -webkit-transition: background 0.3s;
  transition: background 0.3s;
  width: 6px;
  width: 0.375rem;
}

.button-square.button-square--prev span::after {
  left: -20px;
  left: -1.25rem;
  right: unset;
  -webkit-transform: translateY(-50%) rotate(-180deg);
  transform: translateY(-50%) rotate(-180deg);
}

.button-square.button-square--w190 {
  max-width: 190px;
  max-width: 11.875rem;
}

.button-yellow {
  border: 2px solid #1A1311;
  border-radius: 1.875rem;
  color: #333;
  display: inline-block;
  font-size: 18px;
  font-size: 1.125rem;
  font-weight: 600;
  letter-spacing: 0.03em;
  line-height: 0.7777777778;
  max-width: 240px;
  max-width: 15rem;
  padding: 21px 0 21px 22px;
  padding: 1.3125rem 0 1.3125rem 1.375rem;
  position: relative;
  text-align: center;
  width: 100%;
  z-index: 1;
}

.button-yellow::after {
  background-color: #F4D105;
  border-radius: 1.625rem;
  color: #fff;
  content: "";
  font-size: 22px;
  font-size: 1.375rem;
  font-weight: 700;
  height: 100%;
  left: 50%;
  letter-spacing: 0.02em;
  line-height: 1.4545454545;
  position: absolute;
  text-align: center;
  top: 50%;
  -webkit-transform: translate(-50%, -50%) scale(0.95, 0.84);
  transform: translate(-50%, -50%) scale(0.95, 0.84);
  -webkit-transition: -webkit-transform 0.3s;
  transition: -webkit-transform 0.3s;
  transition: transform 0.3s;
  transition: transform 0.3s, -webkit-transform 0.3s;
  width: 100%;
  z-index: -1;
}

.button-yellow span {
  position: relative;
}

.button-yellow span::after {
  background: url(../images/common/icon-arrow-circle.svg) no-repeat center center/contain;
  content: "";
  height: 36px;
  height: 2.25rem;
  left: -58px;
  left: -3.625rem;
  position: absolute;
  top: 55%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  -webkit-transition: -webkit-transform 0.3s;
  transition: -webkit-transform 0.3s;
  transition: transform 0.3s;
  transition: transform 0.3s, -webkit-transform 0.3s;
  width: 36px;
  width: 2.25rem;
}

.card-list {
  gap: 30px;
  gap: 1.875rem;
  display: grid;
  grid-template-columns: repeat(1, 1fr);
}

.card-list__item a {
  background-color: #fff;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  height: 100%;
}

.card-list__item-img {
  aspect-ratio: 360/240;
  overflow: hidden;
  width: 100%;
}

.card-list__item-img img {
  aspect-ratio: 360/240;
  -o-object-fit: cover;
  object-fit: cover;
  -webkit-transition: -webkit-transform 0.3s;
  transition: -webkit-transform 0.3s;
  transition: transform 0.3s;
  transition: transform 0.3s, -webkit-transform 0.3s;
  width: 100%;
}

.card-list__item-content {
  padding: 24px 0 0;
  padding: 1.5rem 0 0;
}

.card-list__item-title {
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
  color: #333;
  display: -webkit-box;
  font-size: 22px;
  font-size: 1.375rem;
  font-weight: 600;
  letter-spacing: 0.02em;
  line-height: 1.4545454545;
  overflow: hidden;
  text-align: left;
}

.card-list__item-text {
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
  color: #333;
  display: -webkit-box;
  font-size: 12px;
  font-size: 0.75rem;
  font-weight: 400;
  letter-spacing: 0;
  line-height: 2;
  margin-top: 10px;
  margin-top: 0.625rem;
  overflow: hidden;
  text-align: left;
}

.card-list__item-meta {
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  margin-top: auto;
  padding: 20px 0 16px;
  padding: 1.25rem 0 1rem;
}

.card-list__item-category {
  background-color: #fff;
  border: 2px solid #1F5F5B;
  color: #1F5F5B;
  font-size: 14px;
  font-size: 0.875rem;
  font-weight: 500;
  letter-spacing: 0.02em;
  line-height: 1.4285714286;
  min-width: 120px;
  min-width: 7.5rem;
  padding: 5px 8px;
  padding: 0.3125rem 0.5rem;
  text-align: center;
}

.card-list__item-date {
  color: #333;
  font-size: 14px;
  font-size: 0.875rem;
  font-weight: 400;
  letter-spacing: 0;
  line-height: 1.7142857143;
  padding-left: 24px;
  padding-left: 1.5rem;
  position: relative;
  text-align: left;
}

.card-list__item-date::before {
  background: url(../images/common/icon-time.svg) no-repeat center/contain;
  content: "";
  display: block;
  height: 16px;
  height: 1rem;
  left: 0;
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  width: 16px;
  width: 1rem;
}

.single-blog__content .card-supervisor {
  background-color: #F8F8F8;
  margin-top: 40px;
  margin-top: 2.5rem;
  padding: 32px 16px;
  padding: 2rem 1rem;
}

.single-blog__content .card-supervisor__heading {
  background-color: unset;
  border-bottom: 1px solid #B9B9B9;
  border-left: unset;
  color: #1F5F5B;
  font-size: 16px;
  font-size: 1rem;
  font-weight: 700;
  letter-spacing: 0;
  line-height: 1;
  margin-top: unset;
  padding: 0 0 16px 0;
  padding: 0 0 1rem 0;
  text-align: left;
}

.single-blog__content .card-supervisor__media {
  row-gap: 24px;
  row-gap: 1.5rem;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  margin-top: 24px;
  margin-top: 1.5rem;
}

.single-blog__content .card-supervisor__image {
  aspect-ratio: 1/1;
  width: 180px;
  width: 11.25rem;
}

.single-blog__content .card-supervisor__image img {
  -o-object-fit: contain;
  height: 100%;
  object-fit: contain;
  width: 100%;
}

.single-blog__content .card-supervisor__info {
  color: #333;
  font-size: 16px;
  font-size: 1rem;
  font-weight: 600;
  letter-spacing: 0.02em;
  line-height: 1.625;
  margin-top: unset;
  text-align: left;
}

.single-blog__content .card-supervisor__description {
  color: #333;
  font-size: 16px;
  font-size: 1rem;
  font-weight: 400;
  letter-spacing: 0.02em;
  line-height: 1.625;
  margin-top: 24px;
  margin-top: 1.5rem;
  text-align: left;
}

.cta {
  gap: 8px;
  gap: 0.5rem;
  background-color: #F7F7F7;
  border-radius: 1rem;
  bottom: 20px;
  bottom: 1.25rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  opacity: 0;
  padding: 8px;
  padding: 0.5rem;
  position: fixed;
  right: 50%;
  -webkit-transform: translateX(50%);
  transform: translateX(50%);
  -webkit-transition: opacity 0.3s ease, visibility 0.3s ease;
  transition: opacity 0.3s ease, visibility 0.3s ease;
  visibility: hidden;
  z-index: 899;
}

.cta.is-active {
  opacity: 1;
  visibility: visible;
}

.cta__close {
  background: #000;
  border: none;
  border-radius: 50%;
  color: #fff;
  cursor: pointer;
  font-size: 10px;
  font-size: 0.625rem;
  height: 14px;
  height: 0.875rem;
  line-height: 1;
  padding: 0;
  position: absolute;
  right: 0;
  top: -10px;
  top: -0.625rem;
  width: 14px;
  width: 0.875rem;
}

.cta__button {
  row-gap: 3px;
  row-gap: 0.1875rem;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  border-radius: 1rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  padding: min(8px, 2.1333333333vw);
  padding: min(0.5rem, 2.1333333333vw);
  -webkit-transition: background-color 0.3s, color 0.3s;
  transition: background-color 0.3s, color 0.3s;
  width: clamp(172px, 45.8666666667vw, 260px);
  width: clamp(10.75rem, 45.8666666667vw, 16.25rem);
}

.cta__button.cta__button--red {
  background-color: #DD4B54;
  border: 1px solid #DD4B54;
}

.cta__button.cta__button--green {
  background-color: #00A24A;
  border: 1px solid #00A24A;
}

.cta__text {
  color: #fff;
  font-size: 8px;
  font-size: 0.5rem;
  font-size: clamp(8px, 2.1333333333vw, 16px);
  font-size: clamp(0.5rem, 2.1333333333vw, 1rem);
  font-weight: 700;
  -webkit-transition: color 0.3s;
  transition: color 0.3s;
}

.cta__form {
  background-color: #fff;
  border-radius: 0.5rem;
  color: #DD4B54;
  font-size: clamp(8px, 2.1333333333vw, 15px);
  font-size: clamp(0.5rem, 2.1333333333vw, 0.9375rem);
  line-height: 1;
  padding: 3px 16px 3px 8px;
  padding: 0.1875rem 1rem 0.1875rem 0.5rem;
  position: relative;
  -webkit-transition: background-color 0.3s, color 0.3s;
  transition: background-color 0.3s, color 0.3s;
}

.cta__form::before {
  border-right: 2px solid #DD4B54;
  border-right: 0.125rem solid #DD4B54;
  border-top: 2px solid #DD4B54;
  border-top: 0.125rem solid #DD4B54;
  content: "";
  height: 6px;
  height: 0.375rem;
  position: absolute;
  right: 6px;
  right: 0.375rem;
  top: 50%;
  -webkit-transform: translateY(-50%) rotate(45deg);
  transform: translateY(-50%) rotate(45deg);
  -webkit-transition: border-color 0.3s;
  transition: border-color 0.3s;
  width: 6px;
  width: 0.375rem;
}

.cta__tel {
  color: #fff;
  font-size: 15px;
  font-size: 0.9375rem;
  font-size: clamp(15px, 4vw, 28px);
  font-size: clamp(0.9375rem, 4vw, 1.75rem);
  line-height: 1;
  padding-left: 36px;
  padding-left: 2.25rem;
  position: relative;
}

.cta__tel::before {
  background: url(../images/common/icon-tel.svg) no-repeat center/contain;
  content: "";
  display: block;
  height: 10px;
  height: 0.625rem;
  left: 0;
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  width: 18px;
  width: 1.125rem;
}

.follow-links {
  display: none;
}

.follow-link {
  background-color: #fff;
  border: 2px solid #159947;
  color: #159947;
  font-size: clamp(12px, 2.75vh, 22px);
  font-size: clamp(0.75rem, 2.75vh, 1.375rem);
  font-weight: 500;
  letter-spacing: 0.02em;
  line-height: 1.0909090909;
  min-height: clamp(100px, 25vh, 200px);
  min-height: clamp(6.25rem, 25vh, 12.5rem);
  padding: clamp(10px, 3vh, 24px) clamp(12px, 3.25vh, 26px);
  padding: clamp(0.625rem, 3vh, 1.5rem) clamp(0.75rem, 3.25vh, 1.625rem);
  text-align: center;
  text-orientation: upright;
  -webkit-transition: color 0.3s, background-color 0.3s;
  transition: color 0.3s, background-color 0.3s;
  -webkit-writing-mode: vertical-rl;
  -ms-writing-mode: tb-rl;
  writing-mode: vertical-rl;
}

.footer {
  margin-top: 40px;
  margin-top: 2.5rem;
}

.footer__top-inner.inner {
  gap: 20px 80px;
  gap: 1.25rem 5rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
}

.footer__logo {
  aspect-ratio: 460/40;
  max-width: 460px;
  max-width: 28.75rem;
  width: 100%;
}

.footer__logo img {
  -o-object-fit: contain;
  height: 100%;
  object-fit: contain;
  width: 100%;
}

.footer__address {
  color: #333;
  font-size: 13px;
  font-size: 0.8125rem;
  font-style: normal;
  font-weight: 600;
  letter-spacing: 0.02em;
  line-height: 1.6923076923;
  margin-top: 24px;
  margin-top: 1.5rem;
  text-align: left;
}

.footer__tel {
  margin-top: 8px;
  margin-top: 0.5rem;
}

.footer__note {
  color: #333;
  font-size: 11px;
  font-size: 0.6875rem;
  font-weight: 400;
  letter-spacing: 0.02em;
  line-height: 1.6923076923;
  text-align: left;
}

.footer__map {
  aspect-ratio: 475/240;
  width: 100%;
}

.footer__map iframe {
  height: 100%;
  width: 100%;
}

.footer__middle {
  background-color: #1F5F5B;
  margin-top: 40px;
  margin-top: 2.5rem;
  padding: 30px 0 48px;
  padding: 1.875rem 0 3rem;
}

.footer__middle-inner.inner {
  position: relative;
  z-index: 1;
}

.footer__middle-inner::after {
  aspect-ratio: 1120/530;
  background: url(../images/common/bg-footer.png) no-repeat center/contain;
  content: "";
  left: 50%;
  pointer-events: none;
  position: absolute;
  top: 70%;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
  width: 100%;
  z-index: 0;
}

.footer__middle-upper {
  gap: 24px 64px;
  gap: 1.5rem 4rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
}

.footer__middle-site-name {
  color: #fff;
  font-size: 16px;
  font-size: 1rem;
  font-weight: 600;
  letter-spacing: 0.02em;
  line-height: 2;
  text-align: left;
}

.footer__nav {
  color: #fff;
  font-size: 13px;
  font-size: 0.8125rem;
  font-weight: 600;
  letter-spacing: 0.04em;
  line-height: 2.4615384615;
  text-align: left;
}

.footer__nav-2col {
  gap: 10px;
  gap: 0.625rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  padding-left: 20px;
  padding-left: 1.25rem;
}

.footer__nav-items {
  row-gap: 10px;
  row-gap: 0.625rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
}

.footer__nav-item.footer__nav-item--2col {
  -moz-column-gap: 2.25rem;
  -webkit-column-gap: 2.25rem;
  column-gap: 2.25rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.footer__nav-item.footer__nav-item--2col p {
  position: relative;
}

.footer__nav-item.footer__nav-item--2col p::after {
  background-color: #fff;
  content: "";
  height: 12px;
  height: 0.75rem;
  position: absolute;
  right: -18px;
  right: -1.125rem;
  top: 16px;
  top: 1rem;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  width: 1px;
  width: 0.0625rem;
}

.footer__sub-nav-items {
  row-gap: 10px;
  row-gap: 0.625rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
}

.footer__middle-bottom {
  border-top: 1px solid #fff;
  margin-top: 30px;
  margin-top: 1.875rem;
  padding-left: 20px;
  padding-left: 1.25rem;
  padding-top: 30px;
  padding-top: 1.875rem;
  position: relative;
}

.footer__link-items {
  row-gap: 16px;
  row-gap: 1rem;
  color: #fff;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  font-size: 13px;
  font-size: 0.8125rem;
  font-weight: 600;
  letter-spacing: 0.04em;
  line-height: 2.4615384615;
  text-align: left;
}

.footer__sns-items {
  display: none;
}

.footer__sns-item {
  aspect-ratio: 1/1;
  width: 45px;
  width: 2.8125rem;
}

.footer__sns-item-link {
  height: 100%;
  width: 100%;
}

.footer__sns-item-link img {
  -o-object-fit: contain;
  height: 100%;
  object-fit: contain;
  width: 100%;
}

.footer__bottom {
  background-color: rgba(31, 95, 91, .1);
  color: #fff;
  display: grid;
  height: 100px;
  height: 6.25rem;
  place-items: center;
}

.footer__copyright {
  color: #333;
  font-size: 12px;
  font-size: 0.75rem;
  font-weight: 400;
  letter-spacing: 0.02em;
  line-height: 2.6666666667;
  text-align: center;
}

.heading-02 {
  border-bottom: 3px solid #ccc;
  color: #333;
  font-size: 20px;
  font-size: 1.25rem;
  font-weight: 700;
  letter-spacing: 0;
  line-height: 1.45;
  padding-bottom: 20px;
  padding-bottom: 1.25rem;
  position: relative;
  text-align: left;
}

.heading-02::after {
  background-color: #159947;
  content: "";
  height: 3px;
  left: 0;
  max-width: 110px;
  max-width: 6.875rem;
  position: absolute;
  top: 100%;
  width: 110px;
  width: 6.875rem;
  width: 32.8358208955%;
}

.heading-03 {
  background: #E1F0E7;
  border-left: 4px solid #159947;
  color: #333;
  font-size: 16px;
  font-size: 1rem;
  font-weight: 700;
  letter-spacing: 0;
  line-height: 1.5;
  padding: 8px 20px;
  padding: 0.5rem 1.25rem;
  text-align: left;
}

.heading-04 {
  border-left: 4px solid #159947;
  color: #333;
  font-size: 15px;
  font-size: 0.9375rem;
  font-weight: 700;
  letter-spacing: 0;
  line-height: 1.4;
  padding: 8px 16px;
  padding: 0.5rem 1rem;
  text-align: left;
}

.heading-05 {
  border-bottom: 1px solid #159947;
  color: #159947;
  font-size: 16px;
  font-size: 1rem;
  font-weight: 700;
  letter-spacing: 0;
  line-height: 1.5;
  padding: 8px 16px;
  padding: 0.5rem 1rem;
  position: relative;
  text-align: left;
}

.heading-05::after {
  background-color: #159947;
  bottom: 0;
  content: "";
  height: 40px;
  height: 2.5rem;
  left: 0;
  position: absolute;
  width: 4px;
}

.heading-06 {
  border-bottom: 4px dotted #159947;
  color: #333;
  font-size: 15px;
  font-size: 0.9375rem;
  font-weight: 700;
  letter-spacing: 0;
  line-height: 1.4;
  min-width: min(93.3333333333vw, 280px);
  min-width: min(93.3333333333vw, 17.5rem);
  padding: 8px 0;
  padding: 0.5rem 0;
  position: relative;
  text-align: left;
  width: -moz-fit-content;
  width: -webkit-fit-content;
  width: fit-content;
}

.heading-06.heading-06--yellow {
  border-bottom: 4px dotted #F4D105;
  color: #333;
  font-size: clamp(10px, 3.7333333333vw, 16px);
  font-size: clamp(0.625rem, 3.7333333333vw, 1rem);
  font-weight: 600;
  letter-spacing: 0.02em;
  line-height: 1.4285714286;
  text-align: left;
}

.heading {
  color: #333;
  font-size: 24px;
  font-size: 1.5rem;
  font-weight: 600;
  letter-spacing: 0.01em;
  line-height: 1.4583333333;
  text-align: left;
  width: -moz-fit-content;
  width: -webkit-fit-content;
  width: fit-content;
}

.heading>span {
  display: block;
  text-align: center;
}

.heading__en {
  color: #159947;
  display: block;
  font-size: 16px;
  font-size: 1rem;
  font-weight: 700;
  letter-spacing: 0.01em;
  line-height: 1.1875;
  margin-top: 6px;
  margin-top: 0.375rem;
  text-align: center;
}

.heading.heading--left {
  margin-inline: auto;
}

.heading.heading--left>span>span {
  text-align: center;
}

.heading.heading--left-left {
  text-align: left;
}

.heading.heading--left-left>span {
  text-align: left;
}

.heading.heading--left-left>span>span {
  text-align: left;
}

.heading-line {
  border-bottom: 3px solid #ccc;
  padding-bottom: 24px;
  padding-bottom: 1.5rem;
  position: relative;
}

.heading-line::after {
  background-color: #159947;
  content: "";
  height: 3px;
  left: 0;
  max-width: 200px;
  max-width: 12.5rem;
  position: absolute;
  top: 100%;
  width: 59.7014925373%;
}

.inner {
  margin-left: auto;
  margin-right: auto;
  max-width: 500px;
  padding-left: 20px;
  padding-right: 20px;
  width: 100%;
}

.js-fade-in {
  opacity: 0;
  -webkit-transform: translateY(30px);
  transform: translateY(30px);
  -webkit-transition: 0.6s ease-out;
  transition: 0.6s ease-out;
}

.js-fade-in.show {
  opacity: 1;
  -webkit-transform: translateY(0);
  transform: translateY(0);
}

.list-items__item {
  border-bottom: 1px solid #B5B5B5;
}

.list-items__item a {
  gap: 16px 24px;
  gap: 1rem 1.5rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  padding: 20px 8px 14px 0;
  padding: 1.25rem 0.5rem 0.875rem 0;
}

.list-items__item-meta {
  -moz-column-gap: 1.25rem;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-column-gap: 1.25rem;
  column-gap: 1.25rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.list-items__item-labels {
  -moz-column-gap: 1.25rem;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-column-gap: 1.25rem;
  column-gap: 1.25rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.list-items__item-category,
.list-items__item-tag {
  background-color: #159947;
  color: #fff;
  font-size: 12px;
  font-size: 0.75rem;
  font-weight: 600;
  letter-spacing: 0.01em;
  line-height: 1.4166666667;
  min-width: 80px;
  min-width: 5rem;
  padding: 8px 2px;
  padding: 0.5rem 0.125rem;
  text-align: center;
  width: -moz-fit-content;
  width: -webkit-fit-content;
  width: fit-content;
}

.list-items__item-date {
  color: #333;
  font-size: 13px;
  font-size: 0.8125rem;
  font-weight: 400;
  letter-spacing: 0.01em;
  line-height: 1.4615384615;
  text-align: left;
}

.list-items__item-title {
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 1;
  color: #333;
  display: -webkit-box;
  font-size: 13px;
  font-size: 0.8125rem;
  font-weight: 400;
  letter-spacing: 0.01em;
  line-height: 1.4615384615;
  overflow: hidden;
  text-align: left;
}

.list-items--search .list-items__item-title {
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 1;
  color: #159947;
  display: -webkit-box;
  font-size: 13px;
  font-size: 0.8125rem;
  font-weight: 700;
  letter-spacing: 0.01em;
  line-height: 1.4615384615;
  overflow: hidden;
  text-align: left;
}

.list-items--search .list-items__item-excerpt {
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 5;
  color: #333;
  display: -webkit-box;
  font-size: 13px;
  font-size: 0.8125rem;
  font-weight: 400;
  letter-spacing: 0.01em;
  line-height: 1.4615384615;
  overflow: hidden;
  text-align: left;
}

.margin-bottom__40-120 {
  margin-bottom: 40px;
  margin-bottom: 2.5rem;
}

.margin-bottom__40-80 {
  margin-bottom: 40px;
  margin-bottom: 2.5rem;
}

.margin-bottom__20-40 {
  margin-bottom: 20px;
  margin-bottom: 1.25rem;
}

.margin-top__8-16 {
  margin-top: 8px;
  margin-top: 0.5rem;
}

.margin-top__10-30 {
  margin-top: 10px;
  margin-top: 0.625rem;
}

.margin-top__16-8 {
  margin-top: 16px;
  margin-top: 1rem;
}

.margin-top__16-24 {
  margin-top: 16px;
  margin-top: 1rem;
}

.margin-top__16-32 {
  margin-top: 16px;
  margin-top: 1rem;
}

.margin-top__30-8 {
  margin-top: 30px;
  margin-top: 1.875rem;
}

.margin-top__24-16 {
  margin-top: 24px;
  margin-top: 1.5rem;
}

.margin-top__24-32 {
  margin-top: 24px;
  margin-top: 1.5rem;
}

.margin-top__24-40 {
  margin-top: 24px;
  margin-top: 1.5rem;
}

.margin-top__24-60 {
  margin-top: 24px;
  margin-top: 1.5rem;
}

.margin-top__32-0 {
  margin-top: 32px;
  margin-top: 2rem;
}

.margin-top__40-36 {
  margin-top: 40px;
  margin-top: 2.5rem;
}

.margin-top__40-40 {
  margin-top: 40px;
  margin-top: 2.5rem;
}

.margin-top__48-48 {
  margin-top: 40px;
  margin-top: 2.5rem;
}

.margin-top__40-80 {
  margin-top: 40px;
  margin-top: 2.5rem;
}

.margin-top__40-120 {
  margin-top: 40px;
  margin-top: 2.5rem;
}

.margin-top__64-70 {
  margin-top: 64px;
  margin-top: 4rem;
}

.margin-top__80-120 {
  margin-top: 80px;
  margin-top: 5rem;
}

.margin-top__100-120 {
  margin-top: 100px;
  margin-top: 6.25rem;
}

.page-to-top {
  bottom: 20px;
  bottom: 1.25rem;
  height: 48px;
  height: 3rem;
  position: fixed;
  right: 16px;
  right: 1rem;
  width: 48px;
  width: 3rem;
  z-index: 898;
}

.page-to-top a {
  background-color: #DD4A54;
  border: 2px solid #DD4A54;
  border-radius: 50%;
  display: block;
  height: 100%;
  position: relative;
  -webkit-transition: background-color 0.3s;
  transition: background-color 0.3s;
  width: 100%;
}

.page-to-top a::before,
.page-to-top a::after {
  background-color: #fff;
  border-radius: 3px;
  content: "";
  left: 50%;
  position: absolute;
  -webkit-transition: background-color 0.3s;
  transition: background-color 0.3s;
  width: 2px;
  width: 0.125rem;
}

.page-to-top a::before {
  height: 28px;
  height: 1.75rem;
  top: 50%;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}

.page-to-top a::after {
  height: 18px;
  height: 1.125rem;
  top: 8px;
  top: 0.5rem;
  -webkit-transform: translateX(-50%) rotate(24deg);
  transform: translateX(-50%) rotate(24deg);
  -webkit-transform-origin: top center;
  transform-origin: top center;
}

.parallelogram {
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-shadow: 3px 3px 5px 1px rgba(47, 47, 47, .2);
  box-shadow: 3px 3px 5px 1px rgba(47, 47, 47, .2);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-transform: skew(-20deg);
  transform: skew(-20deg);
  width: -moz-fit-content;
  width: -webkit-fit-content;
  width: fit-content;
}

.parallelogram p {
  color: #fff;
  font-weight: bold;
  -webkit-transform: skew(20deg);
  transform: skew(20deg);
}

.parallelogram p span {
  color: #FADFA0;
}

.search-box__form-inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
}

.search-box form [type=submit] {
  background-color: #1F5F5B;
  height: 36px;
  height: 2.25rem;
  padding: 4px;
  padding: 0.25rem;
  -webkit-transition: opacity 0.3s;
  transition: opacity 0.3s;
  width: 36px;
  width: 2.25rem;
}

.search-box form [type=submit] img {
  -o-object-fit: contain;
  height: 100%;
  object-fit: contain;
  width: 100%;
}

.tel__text {
  color: #333;
  font-size: 22px;
  font-size: 1.375rem;
  font-weight: 700;
  letter-spacing: 0.04em;
  line-height: 1.6;
  margin-bottom: 14px;
  margin-bottom: 0.875rem;
  text-align: left;
}

.tel__text.tel__text--center {
  text-align: center;
}

.tel__text .tel__text--green {
  color: #49B265;
}

.tel__text .tel__text--red {
  color: #DD4A54;
}

.tel__title {
  color: #333;
  font-size: 18px;
  font-size: 1.125rem;
  font-weight: 500;
  letter-spacing: 0.02em;
  line-height: 1.5555555556;
  text-align: left;
}

.tel__lead {
  color: #333;
  font-size: 13px;
  font-size: 0.8125rem;
  font-weight: 400;
  letter-spacing: 0;
  line-height: 2.4615384615;
  margin-bottom: 30px;
  margin-bottom: 1.875rem;
  text-align: center;
}

.tel__number {
  color: #333;
  font-size: clamp(32px, 3.59375vw, 46px);
  font-size: clamp(2rem, 3.59375vw, 2.875rem);
  font-weight: 700;
  letter-spacing: 0.06em;
  line-height: 1.1956521739;
  padding-left: 66px;
  padding-left: 4.125rem;
  position: relative;
  text-align: left;
}

.tel__number.tel__number--small {
  color: #333;
  font-size: 32px;
  font-size: 2rem;
  font-weight: 700;
  letter-spacing: 0.02em;
  line-height: 1.9;
  padding-left: 54px;
  padding-left: 3.375rem;
  position: relative;
  text-align: left;
}

.tel__number::before {
  background: url(../images/common/icon-tel.svg) no-repeat center/contain;
  content: "";
  display: block;
  height: 32px;
  height: 2rem;
  left: 0;
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  width: 56px;
  width: 3.5rem;
}

.tel__number.tel__number--small::before {
  height: 25px;
  height: 1.5625rem;
  width: 44px;
  width: 2.75rem;
}

.tel__button {
  text-align: center;
}

.tel__time {
  color: #333;
  font-size: 13px;
  font-size: 0.8125rem;
  font-weight: 400;
  letter-spacing: 0.04em;
  line-height: 2.4615384615;
  margin-top: 12px;
  margin-top: 0.75rem;
  text-align: center;
}

.tel__time.tel__time--left {
  text-align: left;
}

.tel__time.tel__time--center {
  text-align: center;
}

.text-page {
  overflow: hidden;
}

.text-page__inner.inner,
.text-page__wrapper.inner {
  position: relative;
}

.text-page__wrapper::after {
  background-color: #F8F8F8;
  content: "";
  height: 100%;
  left: 0;
  margin: 0 calc(50% - 50vw);
  position: absolute;
  top: 0;
  width: 100vw;
  z-index: -1;
}

.text-page__container {
  margin-top: 24px;
  margin-top: 1.5rem;
  padding: 24px 0;
  padding: 1.5rem 0;
  position: relative;
}

.text-page__box {
  background-color: #fff;
  padding: 16px;
  padding: 1rem;
}

.text-page__item-text {
  margin-top: 12px;
  margin-top: 0.75rem;
}

.text-page__list {
  row-gap: 12px;
  row-gap: 0.75rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
}

.text-page__list-item {
  padding-left: 1em;
  position: relative;
  text-indent: 0;
}

.text-page__list-item:before {
  content: "・";
  display: block;
  height: 1em;
  left: 0;
  position: absolute;
  top: 0;
  width: 1em;
}

.text-page__list.text-page__list-02>.text-page__list-item:before {
  content: "■";
}

.text-page__items {
  row-gap: 24px;
  row-gap: 1.5rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
}

.text-page__item>.text-page__list,
.text-page__item>.text-page__order-list {
  margin-top: 16px;
  margin-top: 1rem;
  padding-left: 8px;
  padding-left: 0.5rem;
}

#guideline .text-page__items {
  row-gap: 24px;
  row-gap: 1.5rem;
  counter-reset: number;
  /* 全体のリストアイテムのカウンターをリセット */
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
}

#guideline .text-page__item>.text-page__order-list {
  row-gap: 16px;
  row-gap: 1rem;
  counter-reset: unset;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
}

.text-page__order-list {
  row-gap: 16px;
  row-gap: 1rem;
  counter-reset: number;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
}

.text-page__order-list.text-page__order-list-03 {
  counter-reset: katakanalist;
  list-style: none;
}

.text-page__order-list.text-page__order-list--no-gap {
  row-gap: 0;
}

.text-page__order-list-item {
  padding-left: 1em;
  text-indent: -1.8em;
}

.text-page__order-list.text-page__order-list-02 .text-page__order-list-item {
  text-indent: -1.4em;
}

.text-page__order-list-item::before {
  content: "- " counter(number) ". ";
  counter-increment: number;
}

.text-page__order-list.text-page__order-list-02 .text-page__order-list-item::before {
  content: "(" counter(number) ")";
  counter-increment: number;
}

.text-page__order-list.text-page__order-list-03 .text-page__order-list-item::before {
  content: "(" counter(katakanalist, katakana) ")";
  counter-increment: katakanalist;
}

.text-page__order-list-item-text {
  margin-top: 8px;
  margin-top: 0.5rem;
  text-indent: 0;
  text-indent: initial;
}

.text-page__link {
  margin-top: 32px;
  margin-top: 2rem;
  text-align: center;
}

.text__13-18 {
  color: #333;
  font-size: 13px;
  font-size: 0.8125rem;
  font-weight: 400;
  letter-spacing: 0;
  line-height: 1.4615384615;
  text-align: left;
}

.text__13-18 a {
  color: #159947;
}

.text__13-18.text__13-18-bold {
  font-weight: 600;
}

.accordion-menu {
  background-color: unset;
  cursor: pointer;
  position: relative;
  width: 100%;
}

.accordion-menu__button {
  border-bottom: 1px solid #159947;
  color: #159947;
  display: block;
  font-size: 18px;
  font-size: 1.125rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  line-height: 1.4444444444;
  padding: 20px 10px;
  padding: 1.25rem 0.625rem;
  position: relative;
  text-align: left;
  width: 100%;
}

.accordion-menu__icon-container {
  display: inline-block;
  height: 16px;
  height: 1rem;
  position: absolute;
  right: 15px;
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  width: 16px;
  width: 1rem;
}

.accordion-menu__icon-container img {
  -o-object-fit: contain;
  height: 100%;
  object-fit: contain;
  -webkit-transform: rotate(180deg);
  transform: rotate(180deg);
  -webkit-transition: -webkit-transform 0.3s;
  transition: -webkit-transform 0.3s;
  transition: transform 0.3s;
  transition: transform 0.3s, -webkit-transform 0.3s;
  width: 100%;
}

.accordion-menu__button.is-open .accordion-menu__icon-container img {
  -webkit-transform: rotate(0deg);
  transform: rotate(0deg);
}

.accordion-menu__item-contents {
  background-color: #159947;
  height: 0;
  overflow: hidden;
  padding: 0 15px 0 20px;
  -webkit-transform-origin: top center;
  transform-origin: top center;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}

.accordion-menu__sub-items {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  padding: 0 0 30px;
  padding: 0 0 1.875rem;
}

.accordion-menu__sub-item a {
  border-bottom: 1px dotted #fff;
  color: #fff;
  display: block;
  font-size: 14px;
  font-weight: 400;
  letter-spacing: 0.2em;
  line-height: 1.2857142857;
  padding: 20px 10px;
  padding: 1.25rem 0.625rem;
  position: relative;
  text-align: left;
}

.accordion-menu__sub-item a::before {
  content: "-";
  left: 0px;
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
}

.drawer-icon {
  cursor: pointer;
  height: 60px;
  height: 3.75rem;
  padding: 0;
  position: relative;
  width: 40px;
  width: 2.5rem;
  z-index: 999;
}

.drawer-icon span {
  background-color: #159947;
  display: block;
  height: 2px;
  height: 0.125rem;
  position: absolute;
  right: 0;
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  -webkit-transition: top 0.3s, opacity 0.3s, -webkit-transform 0.3s;
  transition: top 0.3s, opacity 0.3s, -webkit-transform 0.3s;
  transition: top 0.3s, transform 0.3s, opacity 0.3s;
  transition: top 0.3s, transform 0.3s, opacity 0.3s, -webkit-transform 0.3s;
  width: 30px;
  width: 1.875rem;
}

.drawer-icon span:nth-of-type(1) {
  top: calc(50% - 0.5625rem);
}

.drawer-icon span:nth-of-type(3) {
  top: calc(50% + 0.5625rem);
}

.drawer-icon.is-open span:nth-of-type(1) {
  top: 50%;
  -webkit-transform: translateY(-50%) rotate(45deg);
  transform: translateY(-50%) rotate(45deg);
}

.drawer-icon.is-open span:nth-of-type(2) {
  opacity: 0;
}

.drawer-icon.is-open span:nth-of-type(3) {
  top: 50%;
  -webkit-transform: translateY(-50%) rotate(-45deg);
  transform: translateY(-50%) rotate(-45deg);
}

.drawer-menu {
  scrollbar-width: none;
  background-color: #fff;
  display: grid;
  height: 100vh;
  overflow-y: scroll;
  padding: 80px 0 100px;
  padding: 5rem 0 6.25rem;
  place-items: center;
  position: absolute;
  right: 0;
  top: 0;
  -webkit-transform: translateX(-120%);
  transform: translateX(-120%);
  -webkit-transition: 0.6s;
  transition: 0.6s;
  visibility: hidden;
  width: 100%;
  z-index: 900;
}

.drawer-menu.is-open {
  -webkit-transform: translateX(0);
  transform: translateX(0);
  visibility: visible;
}

.drawer-menu__items {
  margin-inline: auto;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  max-width: 500px;
  max-width: 31.25rem;
  width: 90%;
}

.drawer-menu__item {
  width: 100%;
}

.drawer-menu__item-link {
  border-bottom: 1px solid #159947;
  color: #159947;
  display: block;
  font-size: 18px;
  font-size: 1.125rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  line-height: 1.4444444444;
  padding: 20px 10px;
  padding: 1.25rem 0.625rem;
  text-align: left;
  width: 100%;
}

.drawer-menu__sns-links {
  -moz-column-gap: min(10.6666666667vw, 2.5rem);
  -webkit-column-gap: min(10.6666666667vw, 2.5rem);
  column-gap: min(10.6666666667vw, 2.5rem);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin-top: 40px;
  margin-top: 2.5rem;
}

.drawer-menu__sns-link {
  aspect-ratio: 1/1;
  width: 40px;
  width: 2.5rem;
}

.drawer-menu__sns-link a {
  height: 100%;
  width: 100%;
}

.drawer-menu__sns-link img {
  -o-object-fit: contain;
  height: 100%;
  object-fit: contain;
  width: 100%;
}

.drawer-menu__search {
  margin-inline: auto;
  margin-top: 40px;
  margin-top: 2.5rem;
  max-width: 500px;
  max-width: 31.25rem;
  width: 90%;
}

.header {
  height: 64px;
  height: 4rem;
  left: 0;
  position: fixed;
  top: 0;
  width: 100%;
  z-index: 999;
}

.header__inner.inner {
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  background-color: #fff;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  height: inherit;
  max-width: unset;
  position: relative;
  z-index: 999;
}

.header__logo {
  aspect-ratio: 432/38;
  margin-right: auto;
  position: relative;
  width: clamp(220px, 58.6666666667vw, 432px);
  width: clamp(13.75rem, 58.6666666667vw, 27rem);
  z-index: 999;
}

.header__logo img {
  -o-object-fit: contain;
  height: 100%;
  object-fit: contain;
  width: 100%;
}

.header__right {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: relative;
  width: 168px;
  width: 10.5rem;
  z-index: 999;
}

.header__contact {
  height: 64px;
  height: 4rem;
  width: 64px;
  width: 4rem;
}

.header__contact-link {
  display: block;
  height: 100%;
  padding: 14px 0 4px;
  padding: 0.875rem 0 0.25rem;
  width: 100%;
}

.header__contact-link.header__contact-link--phone .header__link-img {
  aspect-ratio: 1/1;
  margin-inline: auto;
  width: 25px;
  width: 1.5625rem;
}

.header__contact-link.header__contact-link--mail .header__link-img {
  aspect-ratio: 5/4;
  margin-inline: auto;
  width: 30px;
  width: 1.875rem;
}

.header__link-img img {
  -o-object-fit: contain;
  height: 100%;
  object-fit: contain;
  width: 100%;
}

.header__link-text {
  color: #159947;
  font-size: 9px;
  font-size: 0.5625rem;
  font-weight: 400;
  letter-spacing: 0;
  line-height: 1.2;
  margin-top: 4px;
  margin-top: 0.25rem;
  text-align: center;
}

.header__contact-link.header__contact-link--mail {
  background-color: #DD4A54;
  padding: 10px 0 4px;
  padding: 0.625rem 0 0.25rem;
}

.header__contact-link.header__contact-link--mail .header__link-text {
  color: #fff;
}

.header__pc-menu {
  display: none;
}

.pc-menu-drop {
  position: relative;
}

.pc-menu-drop__button {
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  color: #333;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  font-size: clamp(10px, 1.40625vw, 18px);
  font-size: clamp(0.625rem, 1.40625vw, 1.125rem);
  font-weight: 500;
  height: inherit;
  letter-spacing: 0.02em;
  line-height: 1.4444444444;
  padding: 20px min(0.234375vw, 3px) 0;
  padding: 1.25rem min(0.234375vw, 0.1875rem) 0;
  position: relative;
  text-align: center;
}

.pc-menu-drop__button::after {
  background-color: #159947;
  bottom: -4px;
  bottom: -0.25rem;
  content: "";
  height: 2px;
  left: 0;
  position: absolute;
  -webkit-transform: scaleX(0);
  transform: scaleX(0);
  -webkit-transform-origin: center left;
  transform-origin: center left;
  -webkit-transition: -webkit-transform 0.3s;
  transition: -webkit-transform 0.3s;
  transition: transform 0.3s;
  transition: transform 0.3s, -webkit-transform 0.3s;
  width: 100%;
}

.pc-menu-drop__nav {
  background: #fff;
  border-radius: 1.25rem;
  bottom: -192px;
  bottom: -12rem;
  display: block;
  filter: url('data:image/svg+xml;charset=utf-8,<svg xmlns="http://www.w3.org/2000/svg"><filter id="filter"><feGaussianBlur in="SourceAlpha" stdDeviation="10" /><feOffset dx="1" dy="1" result="offsetblur" /><feFlood flood-color="rgba(234,234,234,1)" /><feComposite in2="offsetblur" operator="in" /><feMerge><feMergeNode /><feMergeNode in="SourceGraphic" /></feMerge></filter></svg>#filter');
  -webkit-filter: drop-shadow(0px 0px 10px #EAEAEA);
  filter: drop-shadow(0px 0px 10px #EAEAEA);
  left: 50%;
  min-width: 250px;
  min-width: 15.625rem;
  opacity: 0;
  padding: 24px 40px;
  padding: 1.5rem 2.5rem;
  position: absolute;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
  -webkit-transition: visibility 0.3s, opacity 0.3s;
  transition: visibility 0.3s, opacity 0.3s;
  visibility: hidden;
  width: 100%;
}

.pc-menu-drop__nav.is-active {
  opacity: 1;
  visibility: visible;
}

.pc-menu-drop__nav::before {
  background: #fff;
  -webkit-clip-path: polygon(50% 30%, 0% 100%, 100% 100%);
  clip-path: polygon(50% 30%, 0% 100%, 100% 100%);
  /* 解説② */
  content: "";
  height: 17px;
  left: 50%;
  position: absolute;
  top: -16px;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
  width: 20px;
  z-index: 10;
}

.pc-menu-drop__items {
  row-gap: 24px;
  row-gap: 1.5rem;
  display: grid;
}

.pc-menu-drop__item>a {
  color: #333;
  font-size: clamp(12px, 1.09375vw, 14px);
  font-size: clamp(0.75rem, 1.09375vw, 0.875rem);
  font-weight: 500;
  letter-spacing: 0.02em;
  line-height: 1.4285714286;
  position: relative;
  text-align: center;
  -webkit-transition: color 0.3s;
  transition: color 0.3s;
}

.pc-menu-drop__item>a::after {
  background-color: #D0EBDA;
  bottom: -4px;
  bottom: -0.25rem;
  content: "";
  height: 2px;
  left: 0;
  position: absolute;
  -webkit-transform: scaleX(0);
  transform: scaleX(0);
  -webkit-transform-origin: center left;
  transform-origin: center left;
  -webkit-transition: -webkit-transform 0.3s;
  transition: -webkit-transform 0.3s;
  transition: transform 0.3s;
  transition: transform 0.3s, -webkit-transform 0.3s;
  width: 100%;
}

.pc-menu {
  height: inherit;
}

.pc-menu__items {
  -moz-column-gap: min(0.78125vw, 0.625rem);
  -webkit-column-gap: min(0.78125vw, 0.625rem);
  column-gap: min(0.78125vw, 0.625rem);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  height: inherit;
}

.pc-menu__item {
  height: inherit;
}

.pc-menu__item>a {
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  color: #333;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  font-size: clamp(10px, 1.40625vw, 18px);
  font-size: clamp(0.625rem, 1.40625vw, 1.125rem);
  font-weight: 500;
  height: inherit;
  letter-spacing: 0.02em;
  line-height: 1.4444444444;
  padding: 0 min(0.234375vw, 3px);
  padding: 0 min(0.234375vw, 0.1875rem);
  position: relative;
  text-align: center;
}

.pc-menu__item>a::after {
  background-color: #159947;
  bottom: 24px;
  bottom: 1.5rem;
  content: "";
  height: 2px;
  left: 0;
  position: absolute;
  -webkit-transform: scaleX(0);
  transform: scaleX(0);
  -webkit-transform-origin: center left;
  transform-origin: center left;
  -webkit-transition: -webkit-transform 0.3s;
  transition: -webkit-transform 0.3s;
  transition: transform 0.3s;
  transition: transform 0.3s, -webkit-transform 0.3s;
  width: 100%;
}

.pc-menu__item.pc-menu__item--contact>a {
  background-color: #DD4A54;
  border: 2px solid #DD4A54;
  color: #fff;
  cursor: pointer;
  display: grid;
  font-size: clamp(12px, 1.71875vw, 22px);
  font-size: clamp(0.75rem, 1.71875vw, 1.375rem);
  font-weight: 700;
  height: 100px;
  height: 6.25rem;
  letter-spacing: 0.02em;
  line-height: 2;
  margin-left: min(0.9375vw, 24px);
  margin-left: min(0.9375vw, 1.5rem);
  padding: 0 min(2.34375vw, 30px) 30px;
  padding: 0 min(2.34375vw, 1.875rem) 1.875rem;
  place-items: center;
  position: relative;
  text-align: center;
  -webkit-transition: background-color 0.3s, color 0.3s;
  transition: background-color 0.3s, color 0.3s;
}

.pc-menu__item-text {
  -moz-column-gap: 0.25rem;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  color: #fff;
  -webkit-column-gap: 0.25rem;
  column-gap: 0.25rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  font-size: clamp(12px, 1.328125vw, 17px);
  font-size: clamp(0.75rem, 1.328125vw, 1.0625rem);
  font-weight: 700;
  letter-spacing: 0.02em;
  line-height: 2;
  position: absolute;
  text-align: center;
  top: 50%;
  -webkit-transition: color 0.3s;
  transition: color 0.3s;
}

.pc-menu__item-text svg {
  height: clamp(12px, 1.328125vw, 17px);
  height: clamp(0.75rem, 1.328125vw, 1.0625rem);
  width: clamp(12px, 1.328125vw, 17px);
  width: clamp(0.75rem, 1.328125vw, 1.0625rem);
}

.pc-menu__item-text svg {
  -webkit-transition: -webkit-transform 0.3s;
  transition: -webkit-transform 0.3s;
  transition: transform 0.3s;
  transition: transform 0.3s, -webkit-transform 0.3s;
}

.pc-menu__item-text svg path {
  -webkit-transition: stroke 0.3s;
  transition: stroke 0.3s;
}

.pc-menu__sub-items {
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  background-color: #DD4A54;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  opacity: 0;
  position: absolute;
  right: 100%;
  top: 0;
  -webkit-transform: scaleY(0);
  transform: scaleY(0);
  -webkit-transform-origin: top center;
  transform-origin: top center;
  -webkit-transition: opacity 0.3s, visibility 0.3s, -webkit-transform 0.3s;
  transition: opacity 0.3s, visibility 0.3s, -webkit-transform 0.3s;
  transition: opacity 0.3s, visibility 0.3s, transform 0.3s;
  transition: opacity 0.3s, visibility 0.3s, transform 0.3s, -webkit-transform 0.3s;
  visibility: hidden;
  width: 160px;
  width: 10rem;
}

.pc-menuV2 {
  height: inherit;
}

.pc-menuV2__container {
  row-gap: 16px;
  row-gap: 1rem;
  -webkit-box-align: end;
  -ms-flex-align: end;
  align-items: flex-end;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
}

.pc-menuV2__items {
  -moz-column-gap: min(0.78125vw, 0.625rem);
  -webkit-column-gap: min(0.78125vw, 0.625rem);
  column-gap: min(0.78125vw, 0.625rem);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.pc-menuV2__item>a {
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  color: #333;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  font-size: clamp(10px, 1.40625vw, 18px);
  font-size: clamp(0.625rem, 1.40625vw, 1.125rem);
  font-weight: 500;
  height: inherit;
  letter-spacing: 0.02em;
  line-height: 1.4444444444;
  padding: 20px min(0.234375vw, 3px) 0;
  padding: 1.25rem min(0.234375vw, 0.1875rem) 0;
  position: relative;
  text-align: center;
}

.pc-menuV2__item>a::after {
  background-color: #159947;
  bottom: -4px;
  bottom: -0.25rem;
  content: "";
  height: 2px;
  left: 0;
  position: absolute;
  -webkit-transform: scaleX(0);
  transform: scaleX(0);
  -webkit-transform-origin: center left;
  transform-origin: center left;
  -webkit-transition: -webkit-transform 0.3s;
  transition: -webkit-transform 0.3s;
  transition: transform 0.3s;
  transition: transform 0.3s, -webkit-transform 0.3s;
  width: 100%;
}

.pc-menuV2__contact>a {
  background-color: #DD4A54;
  border: 2px solid #DD4A54;
  color: #fff;
  cursor: pointer;
  display: grid;
  font-size: clamp(12px, 1.71875vw, 22px);
  font-size: clamp(0.75rem, 1.71875vw, 1.375rem);
  font-weight: 700;
  height: 100px;
  height: 6.25rem;
  letter-spacing: 0.02em;
  line-height: 2;
  margin-left: min(0.9375vw, 24px);
  margin-left: min(0.9375vw, 1.5rem);
  padding: 0 min(2.34375vw, 30px) 30px;
  padding: 0 min(2.34375vw, 1.875rem) 1.875rem;
  place-items: center;
  position: relative;
  text-align: center;
  -webkit-transition: background-color 0.3s, color 0.3s;
  transition: background-color 0.3s, color 0.3s;
}

.pc-menuV2__item-text {
  -moz-column-gap: 0.25rem;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  color: #fff;
  -webkit-column-gap: 0.25rem;
  column-gap: 0.25rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  font-size: clamp(12px, 1.328125vw, 17px);
  font-size: clamp(0.75rem, 1.328125vw, 1.0625rem);
  font-weight: 700;
  letter-spacing: 0.02em;
  line-height: 2;
  position: absolute;
  text-align: center;
  top: 50%;
  -webkit-transition: color 0.3s;
  transition: color 0.3s;
}

.pc-menuV2__item-text svg {
  height: clamp(12px, 1.328125vw, 17px);
  height: clamp(0.75rem, 1.328125vw, 1.0625rem);
  width: clamp(12px, 1.328125vw, 17px);
  width: clamp(0.75rem, 1.328125vw, 1.0625rem);
}

.pc-menuV2__item-text svg {
  -webkit-transition: -webkit-transform 0.3s;
  transition: -webkit-transform 0.3s;
  transition: transform 0.3s;
  transition: transform 0.3s, -webkit-transform 0.3s;
}

.pc-menuV2__item-text svg path {
  -webkit-transition: stroke 0.3s;
  transition: stroke 0.3s;
}

.pc-menuV2__sub-items {
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  background-color: #DD4A54;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  opacity: 0;
  position: absolute;
  right: 100%;
  top: 0;
  -webkit-transform: scaleY(0);
  transform: scaleY(0);
  -webkit-transform-origin: top center;
  transform-origin: top center;
  -webkit-transition: opacity 0.3s, visibility 0.3s, -webkit-transform 0.3s;
  transition: opacity 0.3s, visibility 0.3s, -webkit-transform 0.3s;
  transition: opacity 0.3s, visibility 0.3s, transform 0.3s;
  transition: opacity 0.3s, visibility 0.3s, transform 0.3s, -webkit-transform 0.3s;
  visibility: hidden;
  width: 160px;
  width: 10rem;
}

.magazine-page__container {
  margin-top: 24px;
  margin-top: 1.5rem;
  padding: 24px 0;
  padding: 1.5rem 0;
}

.magazine-page__text-box {
  color: #333;
  font-size: 13px;
  font-size: 0.8125rem;
  font-weight: 400;
  letter-spacing: 0;
  line-height: 1.4615384615;
  text-align: left;
}

.magazine-page__text a {
  color: #159947;
}

.magazine-page__text+.magazine-page__text {
  margin-top: 1.5em;
}

.magazine-page__form-wrapper {
  margin-top: 24px;
  margin-top: 1.5rem;
}

.not-found {
  background: url(../images/common/bg-dot.png) repeat center/contain;
  padding: 24px 0;
  padding: 1.5rem 0;
}

.not-found__inner.inner {
  position: relative;
  z-index: 2;
}

.not-found__inner::after {
  aspect-ratio: 1/1;
  background-color: #fff;
  border-radius: 50%;
  content: "";
  left: 50%;
  position: absolute;
  top: 50%;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  width: clamp(240px, 64vw, 280px);
  width: clamp(15rem, 64vw, 17.5rem);
  z-index: -1;
}

.not-found__container {
  margin-inline: auto;
  border-radius: 50%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  position: relative;
}

.not-found__container::before,
.not-found__container::after {
  content: "";
  height: min(23.4666666667vw, 88px);
  height: min(23.4666666667vw, 5.5rem);
  position: absolute;
  top: 50%;
  width: min(23.4666666667vw, 88px);
  width: min(23.4666666667vw, 5.5rem);
}

.not-found__container::before {
  background: url(../images/character/404-character-image01.png) no-repeat center/contain;
  left: -20px;
  left: -1.25rem;
}

.not-found__container::after {
  background: url(../images/character/404-character-image02.png) no-repeat center/contain;
  right: -20px;
  right: -1.25rem;
}

.not-found__title {
  color: #DD4A54;
  font-size: 80px;
  font-size: 5rem;
  font-weight: 700;
  letter-spacing: 0.06em;
  line-height: 1.2;
  text-align: center;
}

.not-found__text-en {
  color: #DD4A54;
  font-size: 22px;
  font-size: 1.375rem;
  font-weight: 700;
  letter-spacing: 0.02em;
  line-height: 1.1818181818;
  text-align: center;
  text-transform: uppercase;
}

.not-found__text-jp {
  color: #DD4A54;
  font-size: 14px;
  font-size: 0.875rem;
  font-weight: 500;
  letter-spacing: 0;
  line-height: 1.5714285714;
  margin-top: 24px;
  margin-top: 1.5rem;
  text-align: center;
}

.not-found__link {
  margin-top: 28px;
  margin-top: 1.75rem;
  text-align: center;
}

.partnership {
  padding: 100px 0;
  padding: 6.25rem 0;
  position: relative;
}

.partnership::before {
  aspect-ratio: 335/338;
  background: url(../images/top/partnership-hokkaido.webp) center/contain no-repeat;
  content: "";
  left: 50%;
  position: absolute;
  top: 33%;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  width: 335px;
  width: 20.9375rem;
  z-index: -1;
}

.partnership__decoration-upper,
.partnership__decoration-bottom {
  display: block;
  height: 30px;
  height: 1.875rem;
  left: 50%;
  position: absolute;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
  width: 100%;
}

.partnership__decoration-upper {
  background: url(../images/top/partner-upper-wave-deco-sp.svg) center/contain repeat;
  top: 0;
}

.partnership__decoration-bottom {
  background: url(../images/top/partner-bottom-wave-deco-sp.svg) center/contain repeat;
  bottom: 0;
}

.partnership__heading {
  color: #333;
  font-size: 18px;
  font-size: 1.125rem;
  font-weight: 600;
  letter-spacing: 0.02em;
  line-height: 1.55;
  position: relative;
  text-align: center;
}

.partnership__heading::after {
  background: url(../images/top/partnership-fukidashi.svg) center/contain no-repeat;
  bottom: -24px;
  bottom: -1.5rem;
  content: "";
  height: 21px;
  height: 1.3125rem;
  left: 50%;
  max-width: 335px;
  max-width: 20.9375rem;
  position: absolute;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
  width: 100%;
}

.partnership__imageArea {
  row-gap: 8px;
  row-gap: 0.5rem;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  margin-top: 30px;
  margin-top: 1.875rem;
}

.partnership__logo-center {
  aspect-ratio: 290/50;
  max-width: 290px;
  max-width: 18.125rem;
  width: 100%;
}

.partnership_image {
  aspect-ratio: 240/240;
  max-width: 240px;
  max-width: 15rem;
  width: 100%;
}

.partnership__logo-Sapporo {
  aspect-ratio: 205/60;
  max-width: 205px;
  max-width: 12.8125rem;
  width: 100%;
}

.partnership__logo-center img,
.partnership_image img,
.partnership__logo-Sapporo img {
  -o-object-fit: contain;
  height: 100%;
  object-fit: contain;
  width: 100%;
}

.partnership__text {
  color: #333;
  font-size: 18px;
  font-size: 1.125rem;
  font-weight: 600;
  letter-spacing: 0.02em;
  line-height: 1.77;
  margin-top: 50px;
  margin-top: 3.125rem;
  text-align: center;
}

.price-page {
  overflow: hidden;
}

.price-page__inner.inner,
.price-page__wrapper.inner {
  position: relative;
}

.price-page__wrapper::after {
  background-color: #F8F8F8;
  content: "";
  height: 100%;
  left: 0;
  margin: 0 calc(50% - 50vw);
  position: absolute;
  top: 0;
  width: 100vw;
  z-index: -1;
}

.price-page__container {
  margin-top: 24px;
  margin-top: 1.5rem;
  padding: 24px 0;
  padding: 1.5rem 0;
  position: relative;
}

.price-page__contents {
  margin-top: 30px;
  margin-top: 1.875rem;
}

.price-page__item a {
  color: #49B265;
}

.price-page__table-title {
  background-color: #159947;
  color: #fff;
  font-size: clamp(13px, 3.4666666667vw, 24px);
  font-size: clamp(0.8125rem, 3.4666666667vw, 1.5rem);
  font-weight: 600;
  letter-spacing: 0.02em;
  line-height: 2.7692307692;
  text-align: center;
}

.price-page__note {
  color: #333;
  font-size: clamp(12px, 3.2vw, 14px);
  font-size: clamp(0.75rem, 3.2vw, 0.875rem);
  font-weight: 500;
  letter-spacing: 0.02em;
  line-height: 1.5;
  margin-top: 10px;
  margin-top: 0.625rem;
  text-align: left;
}

.access-page {
  overflow: hidden;
  padding-bottom: 64px;
  padding-bottom: 4rem;
  position: relative;
}

.access-page__inner.inner,
.access-page__wrapper.inner {
  position: relative;
}

.access__google-map {
  margin-inline: auto;
  margin-top: 40px;
  margin-top: 2.5rem;
  max-width: 460px;
  max-width: 28.75rem;
  width: 100%;
}

.access__google-map iframe {
  aspect-ratio: 375/265;
  height: auto;
  width: 100%;
}

.access__map-image {
  margin-inline: auto;
  margin-top: 64px;
  margin-top: 4rem;
  max-width: 460px;
  max-width: 28.75rem;
  width: 100%;
}

.access__map-image img {
  aspect-ratio: 375/319;
  height: auto;
  width: 100%;
}

.access-page__wrapper.inner {
  margin-top: 40px;
  margin-top: 2.5rem;
}

.access-page__text-bold {
  color: #333;
  font-size: 20px;
  font-size: 1.25rem;
  font-weight: 600;
  letter-spacing: 0.02em;
  line-height: 1.45;
  text-align: left;
}

.access__address {
  color: #333;
  font-size: 18px;
  font-size: 1.125rem;
  font-style: normal;
  font-weight: 400;
  letter-spacing: 0.02em;
  line-height: 1.5555555556;
  margin-top: 24px;
  margin-top: 1.5rem;
  text-align: left;
}

.access-page__text {
  color: #333;
  font-size: 18px;
  font-size: 1.125rem;
  font-weight: 400;
  letter-spacing: 0.02em;
  line-height: 1.5555555556;
  margin-top: 24px;
  margin-top: 1.5rem;
  text-align: left;
}

.blog-archive__container {
  margin-top: 40px;
  margin-top: 2.5rem;
}

.blog-archive__items {
  gap: 24px;
  gap: 1.5rem;
  display: grid;
  grid-template-columns: repeat(1, 1fr);
}

.blog-card {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
}

.blog-card__image {
  width: 100%;
}

.blog-card__image img {
  aspect-ratio: 335/225;
  -o-object-fit: cover;
  object-fit: cover;
  width: 100%;
}

.blog-card__meta {
  row-gap: 8px;
  row-gap: 0.5rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  padding: 20px 0 16px;
  padding: 1.25rem 0 1rem;
}

.blog-card__categories {
  -moz-column-gap: 0.25rem;
  -webkit-column-gap: 0.25rem;
  column-gap: 0.25rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.blog-card__category {
  background-color: #fff;
  border: 2px solid #1F5F5B;
  color: #1F5F5B;
  font-size: 14px;
  font-size: 0.875rem;
  font-weight: 500;
  letter-spacing: 0.02em;
  line-height: 1.4285714286;
  min-width: 120px;
  min-width: 7.5rem;
  padding: 5px 8px;
  padding: 0.3125rem 0.5rem;
  text-align: center;
  width: -moz-fit-content;
  width: -webkit-fit-content;
  width: fit-content;
}

.blog-card__date {
  color: #333;
  font-size: 14px;
  font-size: 0.875rem;
  font-weight: 400;
  letter-spacing: 0;
  line-height: 1.7142857143;
  position: relative;
  text-align: left;
}

.blog-card__content {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
}

.blog-card__title {
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
  color: #1F5F5B;
  display: -webkit-box;
  font-size: 22px;
  font-size: 1.375rem;
  font-weight: 600;
  letter-spacing: 0.02em;
  line-height: 1.4545454545;
  overflow: hidden;
  text-align: left;
}

.blog-card__text {
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
  color: #333;
  display: -webkit-box;
  font-size: 12px;
  font-size: 0.75rem;
  font-weight: 400;
  letter-spacing: 0;
  line-height: 2;
  margin: 12px 0;
  margin: 0.75rem 0;
  overflow: hidden;
  text-align: left;
}

.blog-card__link {
  margin-top: auto;
  text-align: center;
}

.single-blog__title {
  margin-top: 40px;
  margin-top: 2.5rem;
}

.single-blog__meta {
  row-gap: 8px;
  row-gap: 0.5rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  margin-top: 32px;
  margin-top: 2rem;
}

.single-blog__date {
  color: #333;
  font-size: 13px;
  font-size: 0.8125rem;
  font-weight: 400;
  letter-spacing: 0.01em;
  line-height: 1.4615384615;
  text-align: left;
}

.single-blog__categories {
  gap: 10px;
  gap: 0.625rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}

.single-blog__category a {
  background-color: #fff;
  border: 2px solid #1F5F5B;
  color: #1F5F5B;
  display: block;
  font-size: 12px;
  font-size: 0.75rem;
  font-weight: 600;
  letter-spacing: 0.01em;
  line-height: 1.4166666667;
  min-width: 80px;
  min-width: 5rem;
  padding: 8px 2px;
  padding: 0.5rem 0.125rem;
  text-align: center;
}

.single-blog__content {
  margin-top: 24px;
  margin-top: 1.5rem;
}

.single-blog__content h2 {
  background-color: #E1F0E7;
  border-left: 4px solid #159947;
  border-left: 0.25rem solid #159947;
  color: #333;
  font-size: 18px;
  font-size: 1.125rem;
  font-weight: 700;
  letter-spacing: 0;
  line-height: 1.5;
  margin-top: 32px;
  margin-top: 2rem;
  padding: 8px 0 8px 16px;
  padding: 0.5rem 0 0.5rem 1rem;
  text-align: left;
}

.single-blog__content h3 {
  color: #159947;
  font-size: 18px;
  font-size: 1.125rem;
  font-weight: 700;
  letter-spacing: 0;
  line-height: 1.5;
  margin-top: 24px;
  margin-top: 1.5rem;
  text-align: left;
}

.single-blog__content h4 {
  color: #333;
  font-size: 16px;
  font-size: 1rem;
  font-weight: 700;
  letter-spacing: 0;
  line-height: 1.5;
  margin-top: 20px;
  margin-top: 1.25rem;
  padding-left: 1em;
  position: relative;
  text-align: left;
}

.single-blog__content h4::before {
  background-color: #159947;
  border-radius: 50%;
  content: "";
  height: 12px;
  height: 0.75rem;
  left: 0;
  position: absolute;
  top: 0.45em;
  width: 12px;
  width: 0.75rem;
}

.single-blog__content h4+p {
  margin-top: 8px;
  margin-top: 0.5rem;
}

.single-blog__content p {
  color: #333;
  font-size: 16px;
  font-size: 1rem;
  font-weight: 400;
  letter-spacing: 0;
  line-height: 1.6;
  margin-top: 16px;
  margin-top: 1rem;
  text-align: left;
}

.single-blog__content p a {
  color: #1F5F5B;
  text-decoration: underline;
}

.single-blog__content p a[target=_blank]::after {
  background-image: url(../images/common/icon-link.svg);
  background-size: contain;
  content: "";
  display: inline-block;
  height: 13px;
  height: 0.8125rem;
  margin-bottom: -3px;
  margin-bottom: -0.1875rem;
  margin-left: 5px;
  margin-left: 0.3125rem;
  margin-right: 5px;
  margin-right: 0.3125rem;
  width: 13px;
  width: 0.8125rem;
}

.single-blog__content ul {
  margin-top: 24px;
  margin-top: 1.5rem;
}

.single-blog__content ul li {
  color: #333;
  font-size: 16px;
  font-size: 1rem;
  font-weight: 400;
  letter-spacing: 0;
  line-height: 1.6;
  padding-left: 1em;
  position: relative;
  text-align: left;
}

.single-blog__content ul li::before {
  content: "・";
  display: block;
  height: 1em;
  left: 0;
  position: absolute;
  top: 0;
  width: 1em;
}

.single-blog__content #toc_container {
  margin-top: 24px;
  margin-top: 1.5rem;
}

.single-blog__content #toc_container .toc_list>li {
  margin-top: 20px;
  margin-top: 1.25rem;
}

.single-blog__content #toc_container .toc_list ul {
  margin-top: 12px;
  margin-top: 0.75rem;
}

.single-blog__content #toc_container .toc_list ul>li {
  margin-top: 8px;
  margin-top: 0.5rem;
}

.single-blog__content #toc_container ul li::before {
  display: none;
}

.single-blog__content ol {
  counter-reset: number;
  margin-top: 24px;
  margin-top: 1.5rem;
}

.single-blog__content ol li {
  color: #333;
  font-size: 16px;
  font-size: 1rem;
  font-weight: 400;
  letter-spacing: 0;
  line-height: 1.6;
  text-align: left;
}

.single-blog__content ol li::before {
  color: #1F5F5B;
  content: counter(number) ".";
  counter-increment: number;
  display: inline-block;
  line-height: 1;
  margin-right: 8px;
  margin-right: 0.5rem;
}

.single-blog__content ul li:not(:first-of-type),
.single-blog__content ol li:not(:first-of-type) {
  margin-top: 8px;
  margin-top: 0.5rem;
}

.single-blog__content figure {
  margin-top: 24px;
  margin-top: 1.5rem;
}

.single-blog__content .faq-list {
  margin-top: 16px;
  margin-top: 1rem;
}

.single-blog__content .faq-list__item {
  padding-left: 0;
  position: relative;
}

.single-blog__content .faq-list__item::before {
  display: none;
}

.single-blog__content .faq-list__question {
  background-color: #F9F7F2;
  color: #333;
  display: block;
  font-size: 16px;
  font-size: 1rem;
  font-weight: 500;
  letter-spacing: 0;
  line-height: 1.4285714286;
  padding: 10px 40px;
  padding: 0.625rem 2.5rem;
  position: relative;
  text-align: left;
  width: 100%;
}

.single-blog__content .faq-list__question span {
  color: #333;
  font-family: "Helvetica", "Arial", sans-serif;
  font-size: 22px;
  font-size: 1.375rem;
  font-weight: 700;
  left: 16px;
  left: 1rem;
  letter-spacing: 0.2em;
  line-height: 1.6363636364;
  position: absolute;
  text-align: left;
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
}

.single-blog__content .faq-list__question::before,
.single-blog__content .faq-list__question::after {
  background: #333;
  content: "";
  height: 2px;
  height: 0.125rem;
  position: absolute;
  right: 16px;
  right: 1rem;
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  -webkit-transition: 0.3s;
  transition: 0.3s;
  width: 20px;
  width: 1.25rem;
}

.single-blog__content .faq-list__question::after {
  -webkit-transform: translateY(-50%) rotate(90deg);
  transform: translateY(-50%) rotate(90deg);
}

.single-blog__content .faq-list__question.is-open::after {
  -webkit-transform: translateY(-50%) rotate(0deg);
  transform: translateY(-50%) rotate(0deg);
}

.single-blog__content .faq-list__answer {
  background-color: #F9F7F2;
  height: 0;
  overflow: hidden;
  padding: 0 16px;
  padding: 0 1rem;
  -webkit-transform-origin: top center;
  transform-origin: top center;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}

.single-blog__content .faq-list__answer-text-box {
  background-color: #fff;
  color: #333;
  font-size: 13px;
  font-size: 0.8125rem;
  font-weight: 400;
  letter-spacing: 0;
  line-height: 1.1875;
  margin: 16px 0;
  margin: 1rem 0;
  padding: 16px 12px;
  padding: 1rem 0.75rem;
  text-align: left;
}

.single-blog__content p.faq-list__answer-text {
  margin-top: 0;
}

.single-blog__content p.faq-list__answer-text+p.faq-list__answer-text {
  margin-top: 1em;
}

.single-blog__content .faq-list__answer-order-list {
  row-gap: 8px;
  row-gap: 0.5rem;
  counter-reset: number;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
}

.single-blog__content .faq-list__answer-order-list-item {
  padding-left: 1.5em;
  text-indent: -1.3em;
}

.single-blog__content .faq-list__answer-order-list-item::before {
  content: counter(number) ".";
  counter-increment: number;
  margin-right: 0.5em;
}

.single-blog__content .faq-list__answer-list {
  row-gap: 8px;
  row-gap: 0.5rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  list-style: inside;
}

.single-blog__link {
  margin-top: 24px;
  margin-top: 1.5rem;
  text-align: center;
}

.single-blog__sub-contents.inner {
  row-gap: 40px;
  row-gap: 2.5rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  margin-top: 40px;
  margin-top: 2.5rem;
}

.single-blog__sub-content-title {
  border-bottom: 2px solid #1F5F5B;
  border-bottom: 0.125rem solid #1F5F5B;
  color: #1F5F5B;
  font-size: 20px;
  font-size: 1.25rem;
  font-weight: 700;
  letter-spacing: 0;
  line-height: 1.45;
  min-width: 200px;
  min-width: 12.5rem;
  padding-bottom: 16px;
  padding-bottom: 1rem;
  text-align: left;
  width: -moz-fit-content;
  width: -webkit-fit-content;
  width: fit-content;
}

.single-blog__other-article-list {
  row-gap: 24px;
  row-gap: 1.5rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  margin-top: 32px;
  margin-top: 2rem;
}

.single-blog__other-article-link {
  -moz-column-gap: 0.4375rem;
  -webkit-column-gap: 0.4375rem;
  column-gap: 0.4375rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.single-blog__other-article-image {
  aspect-ratio: 100/67;
  -webkit-box-flex: 0;
  -ms-flex: 0 1 100px;
  flex: 0 1 100px;
  -ms-flex: 0 1 6.25rem;
  flex: 0 1 6.25rem;
}

.single-blog__other-article-image img {
  -o-object-fit: cover;
  height: 100%;
  object-fit: cover;
  width: 100%;
}

.single-blog__other-article-title {
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
  color: #333;
  display: -webkit-box;
  -webkit-box-flex: 0;
  -ms-flex: 0 1 309px;
  flex: 0 1 309px;
  -ms-flex: 0 1 19.3125rem;
  flex: 0 1 19.3125rem;
  font-size: 14px;
  font-size: 0.875rem;
  font-weight: 400;
  letter-spacing: 0.02em;
  line-height: 1.7142857143;
  overflow: hidden;
  text-align: left;
}

.single-blog__category-items {
  gap: 16px;
  gap: 1rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin-top: 32px;
  margin-top: 2rem;
}

.single-blog__category-item {
  -webkit-box-flex: 0;
  -ms-flex: 0 1 120px;
  flex: 0 1 120px;
  -ms-flex: 0 1 7.5rem;
  flex: 0 1 7.5rem;
}

.single-blog__category-item a {
  height: 100%;
  width: 100%;
}

.single-blog__category-item a {
  background-color: #fff;
  border: 2px solid #1F5F5B;
  color: #1F5F5B;
  display: block;
  font-size: 14px;
  font-size: 0.875rem;
  font-weight: 600;
  letter-spacing: 0.02em;
  line-height: 1.4285714286;
  padding: 6px 2px;
  padding: 0.375rem 0.125rem;
  text-align: center;
}

.book-media {
  row-gap: 24px;
  row-gap: 1.5rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
}

.book-media__image {
  margin-inline: auto;
  aspect-ratio: 187/266;
  height: auto;
  width: clamp(187px, 49.8666666667vw, 240px);
  width: clamp(11.6875rem, 49.8666666667vw, 15rem);
}

.book-media__image img {
  -o-object-fit: contain;
  height: 100%;
  object-fit: contain;
  width: 100%;
}

.book-media__title {
  color: #159947;
  font-size: 20px;
  font-size: 1.25rem;
  font-weight: 600;
  letter-spacing: 0.01em;
  line-height: 1.45;
  text-align: left;
}

.book-media__lead {
  color: #333;
  font-size: 16px;
  font-size: 1rem;
  font-weight: 600;
  letter-spacing: 0.01em;
  line-height: 1.5;
  margin-top: 8px;
  margin-top: 0.5rem;
  text-align: left;
}

.book-media__info {
  color: #333;
  font-size: 16px;
  font-size: 1rem;
  font-weight: 400;
  letter-spacing: 0.01em;
  line-height: 1.5;
  margin-top: 16px;
  margin-top: 1rem;
  text-align: left;
}

.book-media__info.book-media__info--mt48 {
  margin-top: 48px;
  margin-top: 3rem;
}

.book-media__info-row {
  -moz-column-gap: 1rem;
  -webkit-column-gap: 1rem;
  column-gap: 1rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.book-media__link {
  margin-inline: auto;
  background-color: #fff;
  border: 2px solid #1F5F5B;
  color: #1F5F5B;
  display: block;
  font-size: 12px;
  font-size: 0.75rem;
  font-weight: 500;
  letter-spacing: 0.02em;
  line-height: 1.4166666667;
  margin-top: 24px;
  margin-top: 1.5rem;
  max-width: 180px;
  max-width: 11.25rem;
  padding: 2px 0;
  padding: 0.125rem 0;
  position: relative;
  text-align: center;
  -webkit-transition: background-color 0.3s, color 0.3s;
  transition: background-color 0.3s, color 0.3s;
  width: 100%;
}

.book-media__link.book-media__link--mt24-16 {
  margin-top: 24px;
  margin-top: 1.5rem;
}

.book-media__link-arrow {
  margin-inline: auto;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  position: relative;
  width: -moz-fit-content;
  width: -webkit-fit-content;
  width: fit-content;
}

.book-media__link-large {
  color: #1F5F5B;
  font-size: 16px;
  font-size: 1rem;
  line-height: 1.5;
  margin-top: -4px;
  margin-top: -0.25rem;
  -webkit-transition: color 0.3s;
  transition: color 0.3s;
}

.book-media__link-arrow::after {
  background: url(../images/common/icon-arrow-green.svg) no-repeat center center/contain;
  content: "";
  height: 14px;
  height: 0.875rem;
  position: absolute;
  right: -32px;
  right: -2rem;
  top: 55%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  -webkit-transition: background 0.3s;
  transition: background 0.3s;
  width: 8px;
  width: 0.5rem;
}

.book-page {
  overflow: hidden;
}

.book-page__inner.inner,
.book-page__wrapper.inner {
  position: relative;
}

.book-page__wrapper::after {
  background-color: #F9F7F2;
  content: "";
  height: 100%;
  left: 0;
  margin: 0 calc(50% - 50vw);
  position: absolute;
  top: 0;
  width: 100vw;
  z-index: -1;
}

.book-page__sub-heading {
  margin-top: 56px;
  margin-top: 3.5rem;
}

.book-page__wrapper {
  margin-top: 40px;
  margin-top: 2.5rem;
  padding-bottom: 40px;
  padding-bottom: 2.5rem;
  padding-top: 40px;
  padding-top: 2.5rem;
}

.book-page__items {
  row-gap: 40px;
  row-gap: 2.5rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
}

.company-info {
  border-bottom: 1px solid #49B265;
  border-top: 1px solid #49B265;
}

.company-info__row {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
}

.company-info__row+.company-info__row {
  border-top: 1px solid #49B265;
}

.company-info__term {
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  background-color: #DAF0E0;
  color: #333;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  font-size: 18px;
  font-size: 1.125rem;
  font-weight: 600;
  letter-spacing: 0.02em;
  line-height: 2;
  padding: 24px 16px;
  padding: 1.5rem 1rem;
  text-align: left;
}

.company-info__description {
  background-color: #fff;
  color: #333;
  font-size: 16px;
  font-size: 1rem;
  font-weight: 400;
  letter-spacing: 0.02em;
  line-height: 1.625;
  padding: 24px 16px;
  padding: 1.5rem 1rem;
  text-align: left;
}

.company-page__inner.inner {
  position: relative;
}

.company-page__wrapper.inner {
  margin-top: 24px;
  margin-top: 1.5rem;
  padding-bottom: 40px;
  padding-bottom: 2.5rem;
  padding-top: 40px;
  padding-top: 2.5rem;
  position: relative;
}

.company-page__wrapper::after {
  background-color: #F8F8F8;
  content: "";
  height: 100%;
  left: 0;
  margin: 0 calc(50% - 50vw);
  position: absolute;
  top: 0;
  width: 100vw;
  z-index: -1;
}

.contact-page {
  overflow: hidden;
}

.contact-page__heading {
  margin-inline: auto;
}

.contact-page__tel-box {
  margin-top: 40px;
  margin-top: 2.5rem;
  padding: 40px 0;
  padding: 2.5rem 0;
  position: relative;
}

.contact-page__tel-box::after {
  background-color: rgba(73, 178, 101, .1);
  content: "";
  height: 100%;
  left: 0;
  margin: 0 calc(50% - 50vw);
  position: absolute;
  top: 0;
  width: 100vw;
  z-index: -1;
}

.contact-page__body {
  margin-top: 40px;
  margin-top: 2.5rem;
}

.contact-page__body-text {
  color: #333;
  font-size: 13px;
  font-size: 0.8125rem;
  font-weight: 400;
  letter-spacing: 0;
  line-height: 1.4615384615;
  text-align: left;
}

.contact-page__body-text.contact-page__body-text--bold {
  font-weight: 700;
}

.contact-page__form-area {
  margin-top: 40px;
  margin-top: 2.5rem;
  padding: 30px 0 40px;
  padding: 1.875rem 0 2.5rem;
  position: relative;
}

#confirm .contact-page__form-area {
  padding: 0 0 40px;
  padding: 0 0 2.5rem;
}

.contact-page__form-area::after {
  background-color: #F8F8F8;
  content: "";
  height: 100%;
  left: 0;
  margin: 0 calc(50% - 50vw);
  position: absolute;
  top: 0;
  width: 100vw;
  z-index: -1;
}

.contact-page__form {
  background-color: #fff;
  padding: 40px 20px 24px;
  padding: 2.5rem 1.25rem 1.5rem;
}

#confirm .contact-page__form {
  background-color: unset;
}

.contact-page__thanks {
  background-color: #F9F7F2;
  border-radius: 1.5rem;
  margin-top: 24px;
  margin-top: 1.5rem;
  padding: 32px 16px;
  padding: 2rem 1rem;
}

.contact-page__thanks-heading {
  color: #DD4A54;
  font-size: 20px;
  font-size: 1.25rem;
  font-weight: 700;
  letter-spacing: 0;
  line-height: 1.45;
  text-align: center;
}

.contact-page__thanks-lead,
.contact-page__magazine-thanks-lead {
  color: #333;
  font-size: 14px;
  font-size: 0.875rem;
  font-weight: 500;
  letter-spacing: 0;
  line-height: 1.4285714286;
  margin-top: 24px;
  margin-top: 1.5rem;
  text-align: center;
}

.contact-page__thanks-text {
  color: #727272;
  font-size: 14px;
  font-size: 0.875rem;
  font-weight: 500;
  letter-spacing: 0;
  line-height: 1.4285714286;
  margin-top: 24px;
  margin-top: 1.5rem;
  text-align: left;
}

.contact-page__thanks-link {
  margin-top: 40px;
  margin-top: 2.5rem;
  text-align: center;
}

.form dl {
  row-gap: 24px;
  row-gap: 1.5rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
}

.form dl~dl {
  margin-top: 40px;
  margin-top: 2.5rem;
}

.form__heading {
  color: #333;
  font-size: 16px;
  font-size: 1rem;
  font-weight: 700;
  letter-spacing: 0;
  line-height: 1.5;
  max-width: 206px;
  max-width: 12.875rem;
  position: relative;
  text-align: left;
  width: 100%;
}

.form__heading::after {
  background-color: #49B265;
  bottom: -10px;
  bottom: -0.625rem;
  content: "";
  height: 1px;
  height: 0.0625rem;
  position: absolute;
  right: 0;
  width: 100%;
}

.form dd {
  row-gap: 2px;
  row-gap: 0.125rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  width: 100%;
}

.form__required {
  background: #E3332D;
  color: #fff;
  font-size: 13px;
  font-size: 0.8125rem;
  font-weight: 400;
  letter-spacing: 0.05em;
  padding: 2px 10px;
  padding: 0.125rem 0.625rem;
  position: absolute;
  right: 0;
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
}

.form__optional {
  background: #49B265;
  color: #fff;
  font-size: 13px;
  font-size: 0.8125rem;
  font-weight: 400;
  letter-spacing: 0.05em;
  padding: 2px 10px;
  padding: 0.125rem 0.625rem;
  position: absolute;
  right: 0;
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
}

.form__placeholder {
  color: #969292;
  font-size: 14px;
  font-size: 0.875rem;
  font-weight: 400;
}

.form__buttonWrapper {
  row-gap: 5px;
  row-gap: 0.3125rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: reverse;
  -ms-flex-direction: column-reverse;
  flex-direction: column-reverse;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  margin-left: auto;
  margin-right: auto;
  margin-top: 30px;
  margin-top: 1.875rem;
  max-width: 380px;
  max-width: 23.75rem;
  text-align: center;
}

.form__button {
  margin-inline: auto;
  position: relative;
  width: 180px;
  width: 11.25rem;
}

.form__button::after {
  background: url(../images/common/icon-arrow-green.svg) no-repeat center center/contain;
  content: "";
  height: 14px;
  height: 0.875rem;
  position: absolute;
  right: calc(50% - 3.75rem);
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  -webkit-transition: background 0.3s;
  transition: background 0.3s;
  width: 11px;
  width: 0.6875rem;
}

.form__button.form__button--prev::after {
  background: url(../images/common/icon-arrow-white.svg) no-repeat center center/contain;
  left: calc(50% - 3.75rem);
  top: 50%;
  -webkit-transform: translateY(-50%) rotate(180deg);
  transform: translateY(-50%) rotate(180deg);
}

.counseling-detail .wpcf7-free-text {
  margin-top: 24px;
  margin-top: 1.5rem;
  max-width: 600px;
  max-width: 37.5rem;
}

.form__vertical .wpcf7-radio {
  row-gap: 20px;
  row-gap: 1.25rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
}

.form__vertical.form__vertical--how-to-meeting .wpcf7-list-item {
  margin-left: 0;
}

.form__vertical .wpcf7-checkbox {
  row-gap: 20px;
  row-gap: 1.25rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  margin-top: 16px;
  margin-top: 1rem;
}

.form__text {
  color: #333;
  font-size: 14px;
  font-size: 0.875rem;
  font-weight: 400;
  letter-spacing: 0;
  line-height: 1.4285714286;
  text-align: left;
}

.form__vertical.form__vertical--counseling-detail .wpcf7-form-control-wrap {
  margin-top: 16px;
  margin-top: 1rem;
}

.form__vertical.form__vertical--counseling-detail .wpcf7-list-item {
  margin-left: 0;
}

.form__vertical.form__vertical--counseling-detail .wpcf7-free-text {
  display: block;
  margin-top: 8px;
  margin-top: 0.5rem;
}

.form__desired {
  row-gap: 8px;
  row-gap: 0.5rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
}

.form__desired+.form__desired {
  margin-top: 16px;
  margin-top: 1rem;
}

.form__desired p {
  color: #333;
  font-size: 14px;
  font-size: 0.875rem;
  font-weight: 700;
  letter-spacing: 0;
  line-height: 1.4285714286;
  text-align: left;
}

.form__desired-input {
  -moz-column-gap: 1rem;
  -webkit-column-gap: 1rem;
  column-gap: 1rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.form__desired-time .wpcf7-form-control-wrap {
  display: inline-block;
  margin-right: 10px;
  margin-right: 0.625rem;
}

.form .form__address dd {
  row-gap: 10px;
  row-gap: 0.625rem;
}

.form__address-number .wpcf7-text {
  max-width: 120px;
  max-width: 7.5rem;
  width: 100%;
}

.form__optional-items {
  margin-top: 40px;
  margin-top: 2.5rem;
}

.form__optional-items dt {
  color: #333;
  font-size: 14px;
  font-size: 0.875rem;
  font-weight: 700;
  letter-spacing: 0;
  line-height: 1.4285714286;
  text-align: left;
}

.form__optional-items dl:first-of-type {
  margin-top: 40px;
  margin-top: 2.5rem;
}

.form .form__optional-items dl {
  row-gap: 20px;
  row-gap: 1.25rem;
  margin-top: 40px;
  margin-top: 2.5rem;
}

.form__gender .wpcf7-radio {
  row-gap: 16px;
  row-gap: 1rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
}

.form__optional-items .form__birthday dd {
  row-gap: 8px;
  row-gap: 0.5rem;
}

.form__optional-items .form__birthday dd .wpcf7-form-control-wrap {
  display: inline-block;
  margin-right: 10px;
  margin-right: 0.625rem;
  width: 120px;
  width: 7.5rem;
}

.form__privacy {
  margin-top: 40px;
  margin-top: 2.5rem;
}

.form__privacy-text {
  color: #333;
  font-size: 12px;
  font-size: 0.75rem;
  font-weight: 400;
  letter-spacing: 0;
  line-height: 1.4166666667;
  margin-top: 30px;
  margin-top: 1.875rem;
  text-align: left;
}

.form__privacy-text a {
  color: #1F5F5B;
  text-decoration: underline;
}

.form__privacy .wpcf7-list-item-label {
  position: relative;
}

.form__privacy .wpcf7-list-item-label .form__required,
.form__privacy .wpcf7-list-item-label .form__optional {
  left: -20px;
  left: -1.25rem;
  position: absolute;
  right: unset;
}

.form__privacy .wpcf7-form-control-wrap {
  display: block;
  margin-top: 24px;
  margin-top: 1.5rem;
  text-align: center;
}

.event-item {
  background-color: #fff;
  padding: 16px 20px;
  padding: 1rem 1.25rem;
}

.event-item__title {
  color: #333;
  font-size: 15px;
  font-size: 0.9375rem;
  font-weight: 600;
  letter-spacing: 0;
  line-height: 1.4;
  text-align: left;
}

.event-item__description {
  color: #333;
  font-size: 13px;
  font-size: 0.8125rem;
  font-weight: 400;
  letter-spacing: 0;
  line-height: 1.4615384615;
  margin-top: 16px;
  margin-top: 1rem;
  text-align: left;
}

.event-item__bottom {
  color: #333;
  font-size: 13px;
  font-size: 0.8125rem;
  font-weight: 400;
  letter-spacing: 0;
  line-height: 1.4615384615;
  margin-top: 32px;
  margin-top: 2rem;
  position: relative;
  text-align: left;
}

.event-item__bottom::after {
  background-color: #CCC;
  content: "";
  height: 1px;
  left: 0;
  position: absolute;
  top: -16px;
  top: -1rem;
  width: 100%;
}

.event-item__instructor-memo {
  padding-left: 1em;
}

.single-event__page-title {
  margin-top: 40px;
  margin-top: 2.5rem;
}

.single-event__title.heading-03 {
  margin-top: 24px;
  margin-top: 1.5rem;
  padding-right: 60px;
  padding-right: 3.75rem;
}

.single-event__meta {
  -moz-column-gap: 1.25rem;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-column-gap: 1.25rem;
  column-gap: 1.25rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin-top: 32px;
  margin-top: 2rem;
}

.single-event__date {
  color: #333;
  font-size: 13px;
  font-size: 0.8125rem;
  font-weight: 400;
  letter-spacing: 0.01em;
  line-height: 1.4615384615;
  text-align: left;
}

.single-event__label-wrapper {
  gap: 10px;
  gap: 0.625rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.single-event__categories,
.single-event__tags {
  gap: 10px;
  gap: 0.625rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}

.single-event__category a,
.single-event__tag a {
  background-color: #159947;
  color: #fff;
  display: block;
  font-size: 12px;
  font-size: 0.75rem;
  font-weight: 600;
  letter-spacing: 0.01em;
  line-height: 1.4166666667;
  min-width: 80px;
  min-width: 5rem;
  padding: 8px 2px;
  padding: 0.5rem 0.125rem;
  text-align: center;
}

.single-event__head {
  margin-top: 40px;
  margin-top: 2.5rem;
}

.single-event__head p {
  color: #333;
  font-size: 16px;
  font-size: 1rem;
  font-weight: 400;
  letter-spacing: 0;
  line-height: 1.6;
  margin-top: 24px;
  margin-top: 1.5rem;
  text-align: left;
}

.single-event__head p a {
  color: #1F5F5B;
  text-decoration: underline;
}

.single-event__head p a[target=_blank]::after {
  background-image: url(../images/common/icon-link.svg);
  background-size: contain;
  content: "";
  display: inline-block;
  height: 13px;
  height: 0.8125rem;
  margin-bottom: -3px;
  margin-bottom: -0.1875rem;
  margin-left: 5px;
  margin-left: 0.3125rem;
  margin-right: 5px;
  margin-right: 0.3125rem;
  width: 13px;
  width: 0.8125rem;
}

.single-event__head ul {
  margin-top: 24px;
  margin-top: 1.5rem;
}

.single-event__head ul li {
  color: #333;
  font-size: 16px;
  font-size: 1rem;
  font-weight: 400;
  letter-spacing: 0;
  line-height: 1.6;
  padding-left: 1em;
  position: relative;
  text-align: left;
}

.single-event__head ul li::before {
  content: "・";
  display: block;
  height: 1em;
  left: 0;
  position: absolute;
  top: 0;
  width: 1em;
}

.single-event__head #toc_container {
  margin-top: 24px;
  margin-top: 1.5rem;
}

.single-event__head #toc_container .toc_list>li {
  margin-top: 20px;
  margin-top: 1.25rem;
}

.single-event__head #toc_container .toc_list ul {
  margin-top: 12px;
  margin-top: 0.75rem;
}

.single-event__head #toc_container .toc_list ul>li {
  margin-top: 8px;
  margin-top: 0.5rem;
}

.single-event__head #toc_container ul li::before {
  display: none;
}

.single-event__head ol {
  counter-reset: number;
  margin-top: 24px;
  margin-top: 1.5rem;
}

.single-event__head ol li {
  color: #333;
  font-size: 16px;
  font-size: 1rem;
  font-weight: 400;
  letter-spacing: 0;
  line-height: 1.6;
  text-align: left;
}

.single-event__head ol li::before {
  color: #1F5F5B;
  content: counter(number) ".";
  counter-increment: number;
  display: inline-block;
  line-height: 1;
  margin-right: 8px;
  margin-right: 0.5rem;
}

.single-event__head ul li:not(:first-of-type),
.single-event__head ol li:not(:first-of-type) {
  margin-top: 8px;
  margin-top: 0.5rem;
}

.single-event__head figure {
  margin-top: 24px;
  margin-top: 1.5rem;
}

.single-event__body {
  margin-top: 40px;
  margin-top: 2.5rem;
  padding: 30px 0;
  padding: 1.875rem 0;
  position: relative;
}

.single-event__body::after {
  background-color: #F8F8F8;
  content: "";
  height: 100%;
  left: 0;
  margin: 0 calc(50% - 50vw);
  position: absolute;
  top: 0;
  width: 100vw;
  z-index: -1;
}

.single-event__items {
  row-gap: 24px;
  row-gap: 1.5rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
}

.single-event__footer {
  margin-top: 24px;
  margin-top: 1.5rem;
  padding: 16px 0 40px;
  padding: 1rem 0 2.5rem;
  position: relative;
}

.single-event__footer::after {
  background-color: #F9F7F2;
  content: "";
  height: 100%;
  left: 0;
  margin: 0 calc(50% - 50vw);
  position: absolute;
  top: 0;
  width: 100vw;
  z-index: -1;
}

.single-event__footer-heading {
  color: #333;
  font-size: 15px;
  font-size: 0.9375rem;
  font-weight: 600;
  letter-spacing: 0;
  line-height: 1.4;
  text-align: left;
}

.single-event__overview {
  row-gap: 16px;
  row-gap: 1rem;
  color: #333;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  font-size: 13px;
  font-size: 0.8125rem;
  font-weight: 400;
  letter-spacing: 0;
  line-height: 1.4615384615;
  margin-top: 16px;
  margin-top: 1rem;
  text-align: left;
}

.single-event__overview-row {
  gap: 4px;
  gap: 0.25rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
}

.single-event__overview-term {
  font-weight: 700;
}

.single-event__cta-area {
  margin-top: 32px;
  margin-top: 2rem;
  position: relative;
}

.single-event__cta-area::after {
  background-color: #CCC;
  content: "";
  height: 1px;
  left: 0;
  position: absolute;
  top: -16px;
  top: -1rem;
  width: 100%;
}

.single-event__cta-link-box {
  margin-top: 16px;
  margin-top: 1rem;
}

.single-event__footer-cta-note {
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  color: #333;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  font-size: 16px;
  font-size: 1rem;
  font-weight: 700;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  letter-spacing: 0.02em;
  line-height: 1.75;
  text-align: center;
}

.single-event__footer-cta-note::before,
.single-event__footer-cta-note::after {
  background: #DD4A54;
  content: "";
  height: 24px;
  height: 1.5rem;
  width: 2px;
  width: 0.125rem;
}

.single-event__footer-cta-note::before {
  margin-right: 30px;
  margin-right: 1.875rem;
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
}

.single-event__footer-cta-note::after {
  margin-left: 30px;
  margin-left: 1.875rem;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}

.single-event__footer-cta-link {
  margin-top: 20px;
  margin-top: 1.25rem;
  text-align: center;
}

.single-event__cta-tel-box {
  margin-top: 24px;
  margin-top: 1.5rem;
  padding: 40px 20px;
  padding: 2.5rem 1.25rem;
}

.single-event__link {
  margin-top: 24px;
  margin-top: 1.5rem;
  text-align: center;
}

.faq-item__question {
  background-color: #F9F7F2;
  color: #333;
  display: block;
  font-size: 14px;
  font-size: 0.875rem;
  font-weight: 500;
  letter-spacing: 0;
  line-height: 1.4285714286;
  padding: 10px 40px;
  padding: 0.625rem 2.5rem;
  position: relative;
  text-align: left;
  width: 100%;
}

.faq-item__question span {
  color: #333;
  font-family: "Helvetica", "Arial", sans-serif;
  font-size: 22px;
  font-size: 1.375rem;
  font-weight: 700;
  left: 16px;
  left: 1rem;
  letter-spacing: 0.2em;
  line-height: 1.6363636364;
  position: absolute;
  text-align: left;
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
}

.faq-item__question::before,
.faq-item__question::after {
  background: #333;
  content: "";
  height: 2px;
  height: 0.125rem;
  position: absolute;
  right: 16px;
  right: 1rem;
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  -webkit-transition: 0.3s;
  transition: 0.3s;
  width: 20px;
  width: 1.25rem;
}

.faq-item__question::after {
  -webkit-transform: translateY(-50%) rotate(90deg);
  transform: translateY(-50%) rotate(90deg);
}

.faq-item__question.is-open::after {
  -webkit-transform: translateY(-50%) rotate(0deg);
  transform: translateY(-50%) rotate(0deg);
}

.faq-item__answer {
  background-color: #F9F7F2;
  height: 0;
  overflow: hidden;
  padding: 0 16px;
  padding: 0 1rem;
  -webkit-transform-origin: top center;
  transform-origin: top center;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}

.faq-item__answer-text-box {
  background-color: #fff;
  color: #333;
  font-size: 13px;
  font-size: 0.8125rem;
  font-weight: 400;
  letter-spacing: 0;
  line-height: 1.1875;
  margin: 16px 0;
  margin: 1rem 0;
  padding: 16px 12px;
  padding: 1rem 0.75rem;
  text-align: left;
}

.faq-item__answer-order-list {
  row-gap: 8px;
  row-gap: 0.5rem;
  counter-reset: number;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
}

.faq-item__answer-order-list-item {
  padding-left: 1.5em;
  text-indent: -1.3em;
}

.faq-item__answer-order-list-item::before {
  content: counter(number) ".";
  counter-increment: number;
  margin-right: 0.5em;
}

.faq-item__answer-list {
  row-gap: 8px;
  row-gap: 0.5rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  list-style: inside;
}

.faq-page {
  margin-bottom: 40px;
  margin-bottom: 2.5rem;
}

.faq-page__content-wrapper {
  margin-top: 40px;
  margin-top: 2.5rem;
  padding-bottom: 115px;
  padding-bottom: 7.1875rem;
  position: relative;
}

.faq-page__content-wrapper::before,
.faq-page__content-wrapper::after {
  bottom: 0;
  content: "";
  height: min(26.6666666667vw, 100px);
  height: min(26.6666666667vw, 6.25rem);
  position: absolute;
  width: min(26.6666666667vw, 100px);
  width: min(26.6666666667vw, 6.25rem);
}

.faq-page__content-wrapper::before {
  background: url(../images/character/faq-character-image01.png) no-repeat center/contain;
  left: 0;
}

.faq-page__content-wrapper::after {
  background: url(../images/character/faq-character-image02.png) no-repeat center/contain;
  right: 0;
}

.faq-page__content+.faq-page__content {
  margin-top: 40px;
  margin-top: 2.5rem;
}

.faq-page__faq-items {
  gap: 16px;
  gap: 1rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  margin-top: 24px;
  margin-top: 1.5rem;
}

.flow-items {
  row-gap: 40px;
  row-gap: 2.5rem;
  counter-reset: number;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
}

.flow-items__head {
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  min-height: clamp(50px, 18.6666666667vw, 120px);
  min-height: clamp(3.125rem, 18.6666666667vw, 7.5rem);
  position: relative;
  z-index: 2;
}

.flow-items__head::after {
  background-color: #159947;
  content: "";
  height: 2px;
  height: 0.125rem;
  position: absolute;
  right: 0;
  top: calc(100% + 0.5rem);
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  width: 100%;
  z-index: 1;
}

.flow-items__number {
  aspect-ratio: 1/1;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  background-color: #159947;
  border-radius: 50%;
  color: #fff;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  font-family: "Helvetica", "Arial", sans-serif;
  font-size: clamp(12px, 3.7333333333vw, 20px);
  font-size: clamp(0.75rem, 3.7333333333vw, 1.25rem);
  font-weight: 700;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  left: 0;
  letter-spacing: 0.04em;
  line-height: 1;
  padding-top: 8px;
  padding-top: 0.5rem;
  position: absolute;
  text-align: center;
  text-transform: uppercase;
  top: 0;
  width: clamp(50px, 18.6666666667vw, 120px);
  width: clamp(3.125rem, 18.6666666667vw, 7.5rem);
  z-index: 2;
}

.flow-items__number::after {
  aspect-ratio: 1/1;
  border: 1px solid #fff;
  border-radius: 50%;
  content: "";
  left: 50%;
  position: absolute;
  top: 50%;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  width: 91.4285714286%;
}

.flow-items__number span::after {
  color: #fff;
  content: counter(number);
  counter-increment: number;
  display: block;
  font-size: clamp(16px, 6.4vw, 32px);
  font-size: clamp(1rem, 6.4vw, 2rem);
  font-weight: 700;
  letter-spacing: 0.02em;
  line-height: 1;
  margin-top: 4px;
  margin-top: 0.25rem;
  text-align: center;
}

.flow-items__title {
  color: #333;
  font-size: clamp(12px, 4.2666666667vw, 20px);
  font-size: clamp(0.75rem, 4.2666666667vw, 1.25rem);
  font-weight: 700;
  letter-spacing: 0.02em;
  line-height: 1.5;
  padding-left: clamp(82px, 27.2vw, 152px);
  padding-left: clamp(5.125rem, 27.2vw, 9.5rem);
  text-align: left;
}

.flow-items__title .red {
  color: #DD4A54;
  display: block;
}

.flow-items__title .green {
  color: #159947;
  display: block;
}

.flow-items__title .red-inline {
  color: #DD4A54;
}

.flow-items__body {
  position: relative;
  z-index: 2;
}

.flow-items__link-box {
  padding: 20px 0;
  padding: 1.25rem 0;
  position: relative;
}

.flow-items__link-box--contact::before {
  background: url(../images/flow/flow-step01.png) no-repeat center/contain;
  content: "";
  height: min(27.4666666667vw, 103px);
  height: min(27.4666666667vw, 6.4375rem);
  position: absolute;
  right: -20px;
  right: -1.25rem;
  top: 36%;
  width: min(21.8666666667vw, 82px);
  width: min(21.8666666667vw, 5.125rem);
}

.flow-items__link-box::after {
  background-color: #fff;
  content: "";
  height: 100%;
  left: 50%;
  position: absolute;
  top: 50%;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  width: calc(100% + 1.5rem);
  z-index: -1;
}

.flow-items__link-text-note {
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  color: #333;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  font-size: 16px;
  font-size: 1rem;
  font-weight: 700;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  letter-spacing: 0.02em;
  line-height: 1.75;
  text-align: center;
}

.flow-items__link-text-note::before,
.flow-items__link-text-note::after {
  background: #DD4A54;
  content: "";
  height: 24px;
  height: 1.5rem;
  width: 2px;
  width: 0.125rem;
}

.flow-items__link-text-note::before {
  margin-right: 30px;
  margin-right: 1.875rem;
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
}

.flow-items__link-text-note::after {
  margin-left: 30px;
  margin-left: 1.875rem;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}

.flow-items__link {
  text-align: center;
}

.flow-items__link-text {
  color: #333;
  font-size: 16px;
  font-size: 1rem;
  font-weight: 700;
  letter-spacing: 0.02em;
  line-height: 1.75;
  text-align: center;
}

.flow-items__tel-link-heading {
  color: #333;
  font-size: 18px;
  font-size: 1.125rem;
  font-weight: 500;
  letter-spacing: 0.02em;
  line-height: 1.75;
  text-align: center;
}

.flow-items__tel-number {
  margin-inline: auto;
  color: #333;
  display: block;
  font-size: clamp(24px, 8.5333333333vw, 32px);
  font-size: clamp(1.5rem, 8.5333333333vw, 2rem);
  font-weight: 700;
  letter-spacing: 0.02em;
  line-height: 1.1875;
  margin-top: 12px;
  margin-top: 0.75rem;
  padding-left: 50px;
  padding-left: 3.125rem;
  padding-right: 16px;
  padding-right: 1rem;
  position: relative;
  text-align: left;
  width: -moz-fit-content;
  width: -webkit-fit-content;
  width: fit-content;
}

.flow-items__tel-number::before {
  background: url(../images/common/icon-tel.svg) no-repeat center/contain;
  content: "";
  display: block;
  height: 32px;
  height: 2rem;
  left: 0;
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  width: 45px;
  width: 2.8125rem;
}

.flow-items__tel-time.tel__time {
  text-align: center;
}

.flow-items__tel-text {
  color: #333;
  font-size: 14px;
  font-size: 0.875rem;
  font-weight: 500;
  letter-spacing: 0;
  line-height: 1.4285714286;
  text-align: left;
}

.flow-items__tel-text.flow-items__tel-text--red {
  color: #DD4A54;
  text-align: left;
}

.flow-items__text+.flow-items__text {
  margin-top: 1em;
}

.flow-items__image-area {
  margin-inline: auto;
  margin-top: 16px;
  margin-top: 1rem;
  max-width: 375px;
  max-width: 23.4375rem;
}

.flow-items__image-area img {
  -o-object-fit: contain;
  height: 100%;
  object-fit: contain;
  width: 100%;
}

.flow-page__contents {
  margin-top: 40px;
  margin-top: 2.5rem;
  padding: 32px 0 40px;
  padding: 2rem 0 2.5rem;
  position: relative;
}

.flow-page__contents::after {
  background-color: rgba(73, 178, 101, .1);
  content: "";
  height: 100%;
  left: 0;
  margin: 0 calc(50% - 50vw);
  position: absolute;
  top: 0;
  width: 100vw;
  z-index: -1;
}

.flow-page__body {
  margin-top: 40px;
  margin-top: 2.5rem;
}

.flow-page__body-text {
  color: #333;
  font-size: 13px;
  font-size: 0.8125rem;
  font-weight: 400;
  letter-spacing: 0;
  line-height: 1.4615384615;
  margin-top: 24px;
  margin-top: 1.5rem;
  text-align: left;
}

.flow-page__form-area {
  margin-top: 40px;
  margin-top: 2.5rem;
  padding: 30px 0 40px;
  padding: 1.875rem 0 2.5rem;
  position: relative;
}

.flow-page__form-area::after {
  background-color: #F9F7F2;
  content: "";
  height: 100%;
  left: 0;
  margin: 0 calc(50% - 50vw);
  position: absolute;
  top: 0;
  width: 100vw;
  z-index: -1;
}

.flow-page__form {
  background-color: #fff;
  padding: 40px 20px 24px;
  padding: 2.5rem 1.25rem 1.5rem;
}

.lp-cta01 {
  background-image: url("../images/lp/lp-cta01-bg-sp.webp");
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  padding: 64px 0;
  padding: 4rem 0;
}

.parallelogram.lp-cta01__head {
  margin-inline: auto;
  border: 1px solid #fff;
  border: 0.0625rem solid #fff;
  -webkit-box-shadow: none;
  box-shadow: none;
  padding: 5px 34px;
  padding: 0.3125rem 2.125rem;
}

.parallelogram.lp-cta01__head p {
  font-size: 18px;
  font-size: 1.125rem;
  font-weight: 700;
  text-shadow: 0 1px 2px rgba(47, 47, 47, .65);
  text-shadow: 0 0.0625rem 0.125rem rgba(47, 47, 47, .65);
}

.lp-cta01__text {
  margin-inline: auto;
  margin-top: 24px;
  margin-top: 1.5rem;
  position: relative;
  width: -moz-fit-content;
  width: -webkit-fit-content;
  width: fit-content;
}

.lp-cta01__text::before {
  background-image: url("../images/lp/lp-cta01-catch.svg");
  background-repeat: no-repeat;
  background-size: cover;
  content: "";
  display: block;
  height: 68px;
  height: 4.25rem;
  position: absolute;
  right: 0;
  top: -88px;
  top: -5.5rem;
  width: 68px;
  width: 4.25rem;
}

.lp-cta01__text p {
  color: #fff;
  font-size: 16px;
  font-size: 1rem;
  font-weight: 700;
  text-shadow: 0 2px 4px rgba(47, 47, 47, .65);
  text-shadow: 0 0.125rem 0.25rem rgba(47, 47, 47, .65);
}

.lp-cta01__main {
  margin-inline: auto;
  max-width: 330px;
  max-width: 20.625rem;
  position: relative;
}

.lp-cta01__main::before {
  background-image: url("../images/lp/lp-cta01-reef-left.svg");
  background-repeat: no-repeat;
  background-size: cover;
  content: "";
  display: block;
  height: 53px;
  height: 3.3125rem;
  left: 0;
  position: absolute;
  top: 0;
  width: 38px;
  width: 2.375rem;
  z-index: 2;
}

.lp-cta01__main::after {
  background-image: url("../images/lp/lp-cta01-reef-right.svg");
  background-repeat: no-repeat;
  background-size: cover;
  content: "";
  display: block;
  height: 53px;
  height: 3.3125rem;
  position: absolute;
  right: 0;
  top: 0;
  width: 38px;
  width: 2.375rem;
  z-index: 2;
}

.lp-cta01__main-text {
  margin-top: 8px;
  margin-top: 0.5rem;
  position: relative;
  z-index: 1;
}

.lp-cta01__main-text::before {
  background: #2B3979;
  border-radius: 50%;
  content: "";
  filter: url('data:image/svg+xml;charset=utf-8,<svg xmlns="http://www.w3.org/2000/svg"><filter id="filter"><feGaussianBlur stdDeviation="12" /></filter></svg>#filter');
  -webkit-filter: blur(12px);
  filter: blur(12px);
  height: 100%;
  left: 50%;
  opacity: 0.6;
  pointer-events: none;
  position: absolute;
  top: 50%;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  width: 100%;
  z-index: -1;
}

.lp-cta01__main-text h3 {
  gap: 5px;
  gap: 0.3125rem;
  -webkit-box-align: end;
  -ms-flex-align: end;
  align-items: flex-end;
  color: #fff;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  font-size: 19px;
  font-size: 1.1875rem;
  font-weight: 700;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  line-height: 2;
  text-shadow: 0 1px 2px rgba(47, 47, 47, .65);
  text-shadow: 0 0.0625rem 0.125rem rgba(47, 47, 47, .65);
}

.lp-cta01__main-text h3 .strong {
  color: #FADFA0;
  font-family: "Roboto Condensed", sans-serif;
  font-size: 48px;
  font-size: 3rem;
  font-weight: 500;
  letter-spacing: -0.04em;
  line-height: 1;
}

.lp-cta01__main-text .note {
  color: #fff;
  display: block;
  font-size: 9px;
  font-size: 0.5625rem;
  font-weight: 700;
  line-height: 1;
  margin-top: 2px;
  margin-top: 0.125rem;
  text-align: center;
  text-shadow: 0 1px 2px rgba(47, 47, 47, .65);
  text-shadow: 0 0.0625rem 0.125rem rgba(47, 47, 47, .65);
}

.lp-cta01__contact-btn {
  margin-inline: auto;
  margin-top: 16px;
  margin-top: 1rem;
  max-width: 270px;
  max-width: 16.875rem;
}

.lp-cta01__contact-btn .button-round {
  font-size: 16px;
  font-size: 1rem;
}

.lp-cta02 {
  background-image: url("../images/lp/lp-cta02-bg-sp.webp");
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  -webkit-box-shadow: 0 0.125rem 0.125rem rgba(51, 51, 51, .1);
  box-shadow: 0 0.125rem 0.125rem rgba(51, 51, 51, .1);
  padding: 40px 0;
  padding: 2.5rem 0;
}

.lp-cta02__upper-content {
  border-bottom: 1px solid #D9D9D9;
  border-bottom: 0.0625rem solid #D9D9D9;
  padding-bottom: 16px;
  padding-bottom: 1rem;
}

.lp-cta02__text {
  text-align: center;
}

.lp-cta02__text p {
  color: #2f2f2f;
  font-size: 16px;
  font-size: 1rem;
  font-weight: 700;
  letter-spacing: 0.06em;
  line-height: 1.6;
}

.lp-cta02__text p span {
  display: inline-block;
}

.lp-cta02__contact-btn {
  margin-inline: auto;
  margin-top: 16px;
  margin-top: 1rem;
  max-width: 270px;
  max-width: 16.875rem;
}

.lp-cta02__contact-btn .button-round {
  font-size: 16px;
  font-size: 1rem;
  padding-bottom: 20px;
  padding-bottom: 1.25rem;
  padding-top: 20px;
  padding-top: 1.25rem;
}

.lp-cta02__lower-content {
  padding-top: 16px;
  padding-top: 1rem;
}

.parallelogram.lp-cta02__tel-title {
  margin-inline: auto;
  background-color: #fff;
  border: 1px solid #49B264;
  border: 0.0625rem solid #49B264;
  -webkit-box-shadow: none;
  box-shadow: none;
  padding: 1px 18px 2px;
  padding: 0.0625rem 1.125rem 0.125rem;
}

.parallelogram.lp-cta02__tel-title p {
  color: #49B264;
  font-size: 12px;
  font-size: 0.75rem;
  font-weight: 700;
}

.lp-cta02__tel-number {
  text-align: center;
}

.lp-cta02__tel-number a {
  color: #49B264;
  font-family: "Roboto Condensed", sans-serif;
  font-size: 32px;
  font-size: 2rem;
  font-weight: 700;
  line-height: 1.2;
}

.lp-cta02__info {
  text-align: center;
}

.lp-cta02__info p {
  color: #2f2f2f;
  font-size: 9px;
  font-size: 0.5625rem;
  font-weight: 500;
  line-height: 1;
}

.lp-faq {
  padding: 40px 0;
  padding: 2.5rem 0;
}

.lp-faq__container {
  padding: 0 15px;
  padding: 0 0.9375rem;
}

.lp-faq .heading-03 {
  color: #2f2f2f;
}

.lp-faq .faq-item__question {
  color: #2f2f2f;
}

.lp-faq .faq-item__question span {
  color: #2f2f2f;
}

.lp-faq .faq-item__question::before,
.faq-item__question::after {
  background: #2f2f2f;
}

.lp-faq .faq-item__answer-text-box {
  color: #2f2f2f;
}

.lp-faq .faq-page__content-wrapper {
  padding-bottom: 0;
}

.lp-faq .faq-page__content-wrapper::before,
.lp-faq .faq-page__content-wrapper::after {
  content: none;
}

.lp-firstView {
  -webkit-mask-image: -webkit-gradient(linear, left top, left bottom, color-stop(99%, rgb(0, 0, 0)), to(rgba(0, 0, 0, 0)));
  -webkit-mask-image: linear-gradient(to bottom, rgb(0, 0, 0) 99%, rgba(0, 0, 0, 0) 100%);
  -webkit-mask-repeat: no-repeat;
  -webkit-mask-size: cover;
  background-image: url("../images/lp/lp-fv-bg-sp.webp");
  background-position: 50% 80%;
  background-repeat: no-repeat;
  background-size: cover;
  mask-image: -webkit-gradient(linear, left top, left bottom, color-stop(99%, rgb(0, 0, 0)), to(rgba(0, 0, 0, 0)));
  mask-image: linear-gradient(to bottom, rgb(0, 0, 0) 99%, rgba(0, 0, 0, 0) 100%);
  mask-repeat: no-repeat;
  mask-size: cover;
  padding-bottom: 5px;
  padding-bottom: 0.3125rem;
  padding-top: 80px;
  padding-top: 5rem;
}

.lp-firstView__container {
  margin-inline: auto;
  max-width: 448px;
  max-width: 28rem;
}

.lp-firstView__head {
  position: relative;
}

.lp-firstView__image {
  max-width: 220px;
  max-width: 13.75rem;
}

.lp-firstView__message {
  gap: 4px;
  gap: 0.25rem;
  bottom: -20px;
  bottom: -1.25rem;
  content: "";
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  left: 0;
  position: absolute;
  -webkit-transform: translateX(50%);
  transform: translateX(50%);
}

.parallelogram.lp-firstView__text {
  background-color: #2F2F2F;
  padding: 2px 20px 3px;
  padding: 0.125rem 1.25rem 0.1875rem;
}

.parallelogram.lp-firstView__text p {
  font-size: 12px;
  font-size: 0.75rem;
}

.lp-firstView__main {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  margin-top: 45px;
  margin-top: 2.8125rem;
}

.lp-firstView__main-title {
  border-bottom: 1px solid #9D9D9D;
  border-bottom: 0.0625rem solid #9D9D9D;
  padding-bottom: 8px;
  padding-bottom: 0.5rem;
}

.lp-firstView__main-title h2 {
  color: #2f2f2f;
  font-size: 20px;
  font-size: 1.25rem;
  line-height: 1.3;
  padding-left: 16px;
  padding-left: 1rem;
  position: relative;
}

.lp-firstView__main-title span {
  -webkit-background-clip: text;
  background: -webkit-gradient(linear, left top, right top, from(#49B264), to(#1F4C2B));
  background: linear-gradient(to right, #49B264, #1F4C2B);
  background-clip: text;
  color: transparent;
  font-size: 34px;
  font-size: 2.125rem;
}

.lp-firstView__main-title img {
  bottom: 0;
  content: "";
  height: 96px;
  height: 6rem;
  position: absolute;
  right: 0;
  -webkit-transform: translateY(50%);
  transform: translateY(50%);
  width: 96px;
  width: 6rem;
}

.lp-firstView__main-text {
  margin-top: 16px;
  margin-top: 1rem;
  max-width: 76%;
  padding-left: 16px;
  padding-left: 1rem;
}

.lp-firstView__main-text p {
  color: #2f2f2f;
  font-size: clamp(16px, 1.5vw, 22px);
  font-weight: 700;
  letter-spacing: 0.04em;
  line-height: 1.4;
}

.lp-firstView__main-image-item {
  margin-left: auto;
  margin-top: 8px;
  margin-top: 0.5rem;
  max-width: 260px;
  max-width: 16.25rem;
}

.lp-firstView__contact-btn {
  margin-inline: auto;
  margin-top: 20px;
  margin-top: 1.25rem;
  max-width: 270px;
  max-width: 16.875rem;
}

.lp-firstView__contact-btn .button-round {
  font-size: 16px;
  font-size: 1rem;
}

.lp-flow {
  padding: 40px 0;
  padding: 2.5rem 0;
}

.lp-flow__cards {
  margin-inline: auto;
  gap: 19px;
  gap: 1.1875rem;
  display: grid;
  grid-template-columns: 1fr;
  margin-top: 40px;
  margin-top: 2.5rem;
  max-width: 1010px;
  max-width: 63.125rem;
  padding: 0 42px;
  padding: 0 2.625rem;
}

.lp-flow__card {
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  background-color: #fff;
  border-radius: 0.5rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  filter: url('data:image/svg+xml;charset=utf-8,<svg xmlns="http://www.w3.org/2000/svg"><filter id="filter"><feGaussianBlur in="SourceAlpha" stdDeviation="0" /><feOffset dx="1" dy="1" result="offsetblur" /><feFlood flood-color="rgba(47,47,47,0.15)" /><feComposite in2="offsetblur" operator="in" /><feMerge><feMergeNode /><feMergeNode in="SourceGraphic" /></feMerge></filter></svg>#filter');
  -webkit-filter: drop-shadow(0 0 5px rgba(47, 47, 47, .15));
  filter: drop-shadow(0 0 5px rgba(47, 47, 47, .15));
  -webkit-filter: drop-shadow(0 0 0.3125rem rgba(47, 47, 47, .15));
  filter: drop-shadow(0 0 0.3125rem rgba(47, 47, 47, .15));
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  padding: 24px 16px;
  padding: 1.5rem 1rem;
  position: relative;
}

.lp-flow__card::before {
  border-bottom: 14px solid transparent;
  border-bottom: 0.875rem solid transparent;
  border-left: 24px solid #fff;
  border-left: 1.5rem solid #fff;
  border-top: 14px solid transparent;
  border-top: 0.875rem solid transparent;
  content: "";
  height: 0;
  position: absolute;
  right: -24px;
  right: -1.5rem;
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  width: 0;
}

.lp-flow__card-image {
  background-color: #F0F9F2;
  border-radius: 50%;
  height: 160px;
  height: 10rem;
  position: relative;
  width: 160px;
  width: 10rem;
}

.lp-flow__card:nth-child(1) img {
  height: 72px;
  height: 4.5rem;
  left: 50%;
  position: relative;
  top: 50%;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  width: 72px;
  width: 4.5rem;
}

.lp-flow__card:nth-child(2) img {
  height: 56px;
  height: 3.5rem;
  left: 50%;
  position: relative;
  top: 50%;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  width: 56px;
  width: 3.5rem;
}

.lp-flow__card:nth-child(3) img {
  height: 64px;
  height: 4rem;
  left: 50%;
  position: relative;
  top: 50%;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  width: 64px;
  width: 4rem;
}

.lp-flow__card-number {
  -webkit-background-clip: text;
  background: -webkit-gradient(linear, left top, right top, from(#49B264), to(#4988B2));
  background: linear-gradient(to right, #49B264, #4988B2);
  background-clip: text;
  color: transparent;
  font-family: "Roboto Condensed", sans-serif;
  font-size: 48px;
  font-size: 3rem;
  font-weight: 500;
  left: -6px;
  left: -0.375rem;
  position: absolute;
  top: -16px;
  top: -1rem;
}

.lp-flow__card-text {
  margin-top: 24px;
  margin-top: 1.5rem;
}

.lp-flow__card-title {
  color: #2f2f2f;
  font-size: 20px;
  font-size: 1.25rem;
  font-weight: 700;
  line-height: 1;
  text-align: center;
}

.lp-flow__card-description {
  color: #2f2f2f;
  font-size: 18px;
  font-size: 1.125rem;
  line-height: 1.4;
  margin-top: 16px;
  margin-top: 1rem;
}

.lp-point {
  background-image: url("../images/lp/lp-point-bg-sp.webp");
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  padding: 40px 20px 25px;
  padding: 2.5rem 1.25rem 1.5625rem;
}

.lp-point__container {
  border-radius: 0.5rem;
  overflow: hidden;
}

.lp-point__head {
  gap: 2px;
  gap: 0.125rem;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  background-color: #49B264;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  padding: 8px 8px 8px 2px;
  padding: 0.5rem 0.5rem 0.5rem 0.125rem;
}

.lp-point__head-icon {
  height: 37px;
  height: 2.3125rem;
  width: 44px;
  width: 2.75rem;
}

.lp-point__head-icon {
  aspect-ratio: 1/1;
}

.lp-point__main-title {
  color: #fff;
  font-size: 14px;
  font-size: 0.875rem;
  letter-spacing: 0.04em;
  line-height: 1.07;
}

.lp-point__main-title span {
  color: #fff;
  font-size: 20px;
  font-size: 1.25rem;
  letter-spacing: 0.04em;
  line-height: 1;
}

.lp-point__wrapper {
  background-color: #fff;
  padding: 23px;
  padding: 1.4375rem;
}

.lp-point__items {
  gap: 28px;
  gap: 1.75rem;
  display: grid;
  grid-template-columns: 1fr;
  margin-top: 20px;
  margin-top: 1.25rem;
}

.lp-point__item {
  position: relative;
}

.lp-point__item-number {
  -webkit-background-clip: text;
  background: -webkit-gradient(linear, left top, right top, from(#49B264), to(#4988B2));
  background: linear-gradient(to right, #49B264, #4988B2);
  background-clip: text;
  color: transparent;
  font-family: "Roboto Condensed", sans-serif;
  font-size: 33px;
  font-size: 2.0625rem;
  font-weight: 500;
  left: 16px;
  left: 1rem;
  position: absolute;
  top: -24px;
  top: -1.5rem;
}

.lp-point__item-wrapper {
  border-radius: 0.125rem;
  -webkit-box-shadow: 0 0.25rem 0.25rem rgba(0, 0, 0, .25);
  box-shadow: 0 0.25rem 0.25rem rgba(0, 0, 0, .25);
  padding-bottom: 16px;
  padding-bottom: 1rem;
}

.lp-point__item-wrapper img {
  border-radius: 0.125rem 0.25rem 0 0;
}

.lp-point__item-title {
  padding-inline: 16px;
  padding-inline: 1rem;
  color: #49B264;
  font-size: 16px;
  font-size: 1rem;
  font-weight: 700;
  line-height: 1.2;
  padding-top: 16px;
  padding-top: 1rem;
  text-align: left;
}

.lp-point__item-text {
  padding-inline: 16px;
  padding-inline: 1rem;
  margin-top: 16px;
  margin-top: 1rem;
}

.lp-point__item-text p {
  color: #2f2f2f;
  font-size: 14px;
  font-size: 0.875rem;
  font-weight: 400;
}

.lp-point__suggest {
  border: 1px solid #49B264;
  border: 0.0625rem solid #49B264;
  border-radius: 0.125rem;
  margin-top: 8px;
  margin-top: 0.5rem;
  padding: 19px 8px 16px;
  padding: 1.1875rem 0.5rem 1rem;
}

.parallelogram.lp-point__sub-title {
  margin-inline: auto;
  background: -webkit-gradient(linear, left top, right top, from(#49B264), to(#4988B2));
  background: linear-gradient(to right, #49B264, #4988B2);
  padding: 2px 30px;
  padding: 0.125rem 1.875rem;
  position: relative;
  text-align: center;
  top: 50px;
  top: 20px;
  top: 1.25rem;
}

.lp-point__sub-title p {
  gap: 5px;
  gap: 0.3125rem;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  color: #fff;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  font-size: 14px;
  font-size: 0.875rem;
  font-weight: 700;
}

.lp-point__sub-title span {
  height: 13px;
  height: 0.8125rem;
  width: 9px;
  width: 0.5625rem;
}

.lp-point__suggest-text {
  font-size: 14px;
  font-size: 0.875rem;
  font-weight: 700;
  line-height: 1.4;
  text-align: center;
}

.lp-point__suggest-text .strong {
  color: #4988B2;
}

.lp-point__suggest-text .underline {
  position: relative;
  z-index: 1;
}

.lp-point__suggest-text .underline::before {
  background-color: #FADFA0;
  bottom: 2px;
  bottom: 0.125rem;
  content: "";
  display: block;
  height: 3px;
  height: 0.1875rem;
  left: 0;
  position: absolute;
  width: 100%;
  z-index: -1;
}

.lp-point__suggest--pc {
  display: none;
}

.parallelogram.lp-point__sub-title--pc {
  display: none;
}

.lp-point__sub-title--pc p {
  gap: 10px;
  gap: 0.625rem;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  color: #fff;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  font-size: 22px;
  font-size: 1.375rem;
  font-weight: 700;
}

.lp-point__sub-title--pc span {
  height: 24px;
  height: 1.5rem;
  width: 18px;
  width: 1.125rem;
}

.lp-point__suggest-text--pc {
  font-size: 32px;
  font-size: 2rem;
  font-weight: 700;
  line-height: 1.4;
  text-align: center;
}

.lp-point__suggest-text--pc .strong {
  color: #4988B2;
}

.lp-point__suggest-text--pc .underline {
  position: relative;
  z-index: 1;
}

.lp-point__suggest-text--pc .underline::before {
  background-color: #FADFA0;
  bottom: 2px;
  bottom: 0.125rem;
  content: "";
  display: block;
  height: 12px;
  height: 0.75rem;
  left: 0;
  position: absolute;
  width: 100%;
  z-index: -1;
}

.lp-price {
  background-color: #F5F8FA;
  padding: 32px 0;
  padding: 2rem 0;
}

.lp-price__container {
  padding: 0 18px;
  padding: 0 1.125rem;
}

.lp-price__text {
  margin-inline: auto;
  margin-top: 16px;
  margin-top: 1rem;
  max-width: 86.1%;
}

.lp-price__text p {
  color: #2f2f2f;
  font-size: 16px;
  font-size: 1rem;
  font-weight: 500;
}

.lp-price__text p span {
  display: inline-block;
}

.lp-price__content {
  background-color: #fff;
  border: 1px solid #2f2f2f;
  border: 0.0625rem solid #2f2f2f;
  margin-top: 16px;
  margin-top: 1rem;
  padding: 15px 20px;
  padding: 0.9375rem 1.25rem;
}

.lp-price__upper-item {
  -webkit-box-align: end;
  -ms-flex-align: end;
  align-items: flex-end;
  border-bottom: 1px solid #D9D9D9;
  border-bottom: 0.0625rem solid #D9D9D9;
  color: #DF3E4D;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  font-size: 12px;
  font-size: 0.75rem;
  font-weight: 700;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  letter-spacing: 0.06em;
  line-height: 1;
  padding-bottom: 20px;
  padding-bottom: 1.25rem;
}

.lp-price__item-label--red {
  border: 1px solid #DF3E4D;
  border: 0.0625rem solid #DF3E4D;
  border-radius: 0.875rem;
  padding: 3px 8px 4px;
  padding: 0.1875rem 0.5rem 0.25rem;
}

.lp-price__upper-item .strong {
  display: inline-block;
  font-family: "Roboto Condensed", sans-serif;
  font-size: 36px;
  font-size: 2.25rem;
  font-weight: 500;
  letter-spacing: 0.03em;
  line-height: 0.65;
  margin-left: 3px;
  margin-left: 0.1875rem;
}

.lp-price__lower-item {
  -webkit-box-align: end;
  -ms-flex-align: end;
  align-items: flex-end;
  color: #2f2f2f;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  font-size: 11px;
  font-size: 0.6875rem;
  font-weight: 700;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  letter-spacing: 0.06em;
  line-height: 1;
  padding-top: 14px;
  padding-top: 0.875rem;
}

.lp-price__item-label--green {
  border: 1px solid #49B264;
  border: 0.0625rem solid #49B264;
  border-radius: 0.875rem;
  color: #49B264;
  padding: 3px 8px 4px;
  padding: 0.1875rem 0.5rem 0.25rem;
  position: relative;
  top: 2px;
  top: 0.125rem;
}

.lp-price__lower-item .middle {
  color: #49B264;
  display: inline-block;
  font-family: "Roboto Condensed", sans-serif;
  font-size: 20px;
  font-size: 1.25rem;
  font-weight: 500;
  letter-spacing: 0;
  margin-left: 3px;
  margin-left: 0.1875rem;
  position: relative;
  top: 2px;
  top: 0.125rem;
}

.lp-price__content-note {
  color: #2f2f2f;
  font-size: 9px;
  font-size: 0.5625rem;
  font-weight: 500;
  line-height: 1.4;
  margin-top: 12px;
  margin-top: 0.75rem;
  text-align: center;
}

.lp-reason {
  padding: 40px 0;
  padding: 2.5rem 0;
}

.lp-reason__head {
  text-align: center;
}

.lp-reason__head h3 {
  color: #2f2f2f;
  font-size: 20px;
  font-size: 1.25rem;
  letter-spacing: 0.04em;
  line-height: 1.4;
}

.lp-reason__head h3 span {
  -webkit-background-clip: text;
  background: -webkit-gradient(linear, left top, right top, from(#49B264), to(#4988B2));
  background: linear-gradient(to right, #49B264, #4988B2);
  background-clip: text;
  color: transparent;
}

.lp-reason__card-container {
  margin-top: 24px;
  margin-top: 1.5rem;
}

.lp-reason__cards {
  padding-inline: 28px;
  padding-inline: 1.75rem;
  gap: 24px;
  gap: 1.5rem;
  display: grid;
  grid-template-columns: 1fr;
}

.lp-reason__card-title {
  color: #49B264;
  font-size: 20px;
  font-size: 1.25rem;
  font-weight: 700;
  line-height: 1.3;
  margin-top: 16px;
  margin-top: 1rem;
  text-align: center;
}

.lp-reason__card-title span {
  font-size: 12px;
  font-size: 0.75rem;
  font-weight: 400;
}

.lp-reason__card-text {
  color: #2f2f2f;
  font-size: 18px;
  font-size: 1.125rem;
  line-height: 1.4;
  margin-top: 16px;
  margin-top: 1rem;
}

.lp-section__head {
  text-align: center;
}

.lp-section__head h3 {
  color: #2f2f2f;
  font-size: 20px;
  font-size: 1.25rem;
  font-weight: 700;
  line-height: 1;
}

.lp-section__head h3 span {
  color: #49B264;
  display: block;
  font-family: "Roboto Condensed", sans-serif;
  font-size: 18px;
  font-size: 1.125rem;
  font-weight: 500;
  line-height: 1;
  margin-bottom: 8px;
  margin-bottom: 0.5rem;
}

.lp-staff {
  background-image: url("../images/lp/lp-staff-bg-sp.webp");
  background-repeat: no-repeat;
  background-size: cover;
  padding: 40px 0;
  padding: 2.5rem 0;
}

.lp-staff__container {
  padding: 0 27px;
  padding: 0 1.6875rem;
}

.lp-staff__cards {
  margin-inline: auto;
  gap: 16px;
  gap: 1rem;
  display: grid;
  grid-template-columns: 1fr;
  margin-top: 40px;
  margin-top: 2.5rem;
  max-width: 1024px;
  max-width: 64rem;
}

.lp-staff__card {
  position: relative;
}

.lp-staff__card-text {
  margin-inline: 16px;
  margin-inline: 1rem;
  background: rgba(255, 255, 255, .95);
  border-radius: 0.5rem;
  bottom: 16px;
  bottom: 1rem;
  padding: 16px;
  padding: 1rem;
  position: absolute;
}

.lp-staff__card-image {
  height: 100%;
}

.lp-staff__card-image picture {
  display: block;
  height: 100%;
}

.lp-staff__card-image img {
  display: block;
  height: 100%;
}

.lp-staff__card-title {
  color: #2f2f2f;
  font-size: 20px;
  font-size: 1.25rem;
  font-weight: 700;
  line-height: 1.3;
  text-align: center;
}

.lp-staff__card-title span {
  color: #49B264;
  display: block;
  font-size: 16px;
  font-size: 1rem;
  font-weight: 700;
  margin-bottom: 8px;
  margin-bottom: 0.5rem;
}

.lp-staff__card-description {
  color: #2f2f2f;
  font-size: 18px;
  font-size: 1.125rem;
  line-height: 1.3;
  margin-top: 16px;
  margin-top: 1rem;
}

.lp-worries {
  -webkit-mask-image: -webkit-gradient(linear, left top, left bottom, color-stop(0, rgba(0, 0, 0, 0)), color-stop(10%, rgb(0, 0, 0)));
  -webkit-mask-image: linear-gradient(to bottom, rgba(0, 0, 0, 0) 0, rgb(0, 0, 0) 10%);
  -webkit-mask-repeat: no-repeat;
  -webkit-mask-size: cover;
  background-image: url("../images/lp/lp-worries-bg-sp.webp");
  background-position: center;
  background-position: 50% 80%;
  background-repeat: no-repeat;
  background-size: cover;
  margin-top: 34px;
  margin-top: 2.125rem;
  mask-image: -webkit-gradient(linear, left top, left bottom, color-stop(0, rgba(0, 0, 0, 0)), color-stop(10%, rgb(0, 0, 0)));
  mask-image: linear-gradient(to bottom, rgba(0, 0, 0, 0) 0, rgb(0, 0, 0) 10%);
  mask-repeat: no-repeat;
  mask-size: cover;
  padding-bottom: 40px;
  padding-bottom: 2.5rem;
  padding-top: 14px;
  padding-top: 0.875rem;
}

.lp-worries__heading {
  margin-inline: auto;
  color: #2f2f2f;
  font-size: 16px;
  font-size: 1rem;
  letter-spacing: 0.04em;
  width: -moz-fit-content;
  width: -webkit-fit-content;
  width: fit-content;
}

.lp-worries__heading span {
  font-size: 20px;
  font-size: 1.25rem;
  position: relative;
}

.lp-worries__heading span::before {
  background-image: url("../images/lp/lp-worries-icon01.svg");
  background-repeat: no-repeat;
  background-size: cover;
  bottom: -4px;
  bottom: -0.25rem;
  content: "";
  display: block;
  height: 12px;
  height: 0.75rem;
  left: 0;
  position: absolute;
  width: 100%;
  z-index: -1;
}

.lp-worries__container {
  margin-inline: auto;
  margin-top: 34px;
  margin-top: 2.125rem;
  max-width: 700px;
  max-width: 43.75rem;
  position: relative;
}

.lp-worries__container::before {
  background-image: url("../images/lp/lp-worries-img01.webp");
  background-repeat: no-repeat;
  background-size: cover;
  content: "";
  display: block;
  height: 52px;
  height: 3.25rem;
  position: absolute;
  right: 0;
  top: -64px;
  top: -4rem;
  width: 52px;
  width: 3.25rem;
}

.lp-worries__items {
  gap: 8px;
  gap: 0.5rem;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
}

.lp-worries-item-text {
  background: -webkit-gradient(linear, left top, right top, from(#36513D), to(#5F8469));
  background: linear-gradient(to right, #36513D 0%, #5F8469 100%);
  padding: 5px 5px 5px 20px;
  padding: 0.3125rem 0.3125rem 0.3125rem 1.25rem;
  position: relative;
}

.lp-worries-item-text::before {
  background-image: url("../images/lp/lp-worries-icon02.svg");
  background-repeat: no-repeat;
  background-size: cover;
  content: "";
  display: block;
  height: 12px;
  height: 0.75rem;
  left: 5px;
  left: 0.3125rem;
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%) skew(20deg);
  transform: translateY(-50%) skew(20deg);
  width: 12px;
  width: 0.75rem;
}

.lp-worries-item-text p {
  font-size: 11px;
  font-size: 0.6875rem;
  line-height: 1;
}

.single-news__title {
  margin-top: 40px;
  margin-top: 2.5rem;
}

.single-news__meta {
  -moz-column-gap: 1.25rem;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-column-gap: 1.25rem;
  column-gap: 1.25rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin-top: 32px;
  margin-top: 2rem;
}

.single-news__date {
  color: #333;
  font-size: 13px;
  font-size: 0.8125rem;
  font-weight: 400;
  letter-spacing: 0.01em;
  line-height: 1.4615384615;
  text-align: left;
}

.single-news__categories {
  gap: 10px;
  gap: 0.625rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}

.single-news__category a {
  background-color: #159947;
  color: #fff;
  display: block;
  font-size: 12px;
  font-size: 0.75rem;
  font-weight: 600;
  letter-spacing: 0.01em;
  line-height: 1.4166666667;
  min-width: 80px;
  min-width: 5rem;
  padding: 8px 2px;
  padding: 0.5rem 0.125rem;
  text-align: center;
  -webkit-transition: color 0.3s, background-color 0.3s;
  transition: color 0.3s, background-color 0.3s;
}

.single-news__content {
  margin-top: 24px;
  margin-top: 1.5rem;
}

.single-news__content h2 {
  border-left: 4px solid #159947;
  border-left: 0.25rem solid #159947;
  color: #333;
  font-size: 20px;
  font-size: 1.25rem;
  font-weight: 700;
  letter-spacing: 0;
  line-height: 1.45;
  margin-top: 40px;
  margin-top: 2.5rem;
  padding: 4px 0 4px 16px;
  padding: 0.25rem 0 0.25rem 1rem;
  text-align: left;
}

.single-news__content h3 {
  border-bottom: 1px solid #159947;
  border-top: 1px solid #159947;
  color: #333;
  font-size: 18px;
  font-size: 1.125rem;
  font-weight: 700;
  letter-spacing: 0;
  line-height: 1.5;
  margin-top: 64px;
  margin-top: 4rem;
  padding: 10px 0;
  padding: 0.625rem 0;
  text-align: left;
}

.single-news__content p {
  color: #333;
  font-size: 13px;
  font-size: 0.8125rem;
  font-weight: 400;
  letter-spacing: 0;
  line-height: 1.4615384615;
  margin-top: 24px;
  margin-top: 1.5rem;
  text-align: left;
}

.single-news__content p a {
  color: #1F5F5B;
  text-decoration: underline;
}

.single-news__content p a[target=_blank]::after {
  background-image: url(../images/common/icon-link.svg);
  background-size: contain;
  content: "";
  display: inline-block;
  height: 13px;
  height: 0.8125rem;
  margin-bottom: -3px;
  margin-bottom: -0.1875rem;
  margin-left: 5px;
  margin-left: 0.3125rem;
  margin-right: 5px;
  margin-right: 0.3125rem;
  width: 13px;
  width: 0.8125rem;
}

.single-news__content ul {
  margin-top: 24px;
  margin-top: 1.5rem;
}

.single-news__content ul li {
  color: #333;
  font-size: 13px;
  font-size: 0.8125rem;
  font-weight: 400;
  letter-spacing: 0;
  line-height: 1.25;
  padding-left: 1em;
  position: relative;
  text-align: left;
}

.single-news__content ul li::before {
  content: "・";
  display: block;
  height: 1em;
  left: 0;
  position: absolute;
  top: 0;
  width: 1em;
}

.single-news__content ol {
  counter-reset: number;
  margin-top: 24px;
  margin-top: 1.5rem;
}

.single-news__content ol li {
  color: #333;
  font-size: 13px;
  font-size: 0.8125rem;
  font-weight: 400;
  letter-spacing: 0;
  line-height: 1.25;
  text-align: left;
}

.single-news__content ol li::before {
  color: #1F5F5B;
  content: counter(number) ".";
  counter-increment: number;
  display: inline-block;
  line-height: 1;
  margin-right: 8px;
  margin-right: 0.5rem;
}

.single-news__content ul li:not(:first-of-type),
.single-news__content ol li:not(:first-of-type) {
  margin-top: 8px;
  margin-top: 0.5rem;
}

.single-news__content figure {
  margin-top: 24px;
  margin-top: 1.5rem;
}

.single-news__link {
  margin-top: 24px;
  margin-top: 1.5rem;
  text-align: center;
}

.ninchi-item01__image-area01.inner {
  margin-top: 40px;
  margin-top: 2.5rem;
  padding-bottom: 32px;
  padding-bottom: 2rem;
  padding-top: 40px;
  padding-top: 2.5rem;
  position: relative;
}

.ninchi-item01__image {
  aspect-ratio: 1050/420;
  margin-inline: auto;
  max-width: 1050px;
  max-width: 65.625rem;
}

.ninchi-item01__image-area02.inner {
  margin-top: 40px;
  margin-top: 2.5rem;
  padding-bottom: 16px;
  padding-bottom: 1rem;
  padding-top: 40px;
  padding-top: 2.5rem;
  position: relative;
}

.ninchi-item01__image-area02__image01 {
  aspect-ratio: 335/401;
  margin-inline: auto;
  width: min(89.3333333333vw, 335px);
  width: min(89.3333333333vw, 20.9375rem);
}

.ninchi-item01__image-area02__image02 {
  aspect-ratio: 335/415;
  margin-inline: auto;
  margin-top: 40px;
  margin-top: 2.5rem;
  width: min(89.3333333333vw, 335px);
  width: min(89.3333333333vw, 20.9375rem);
}

.ninchi-item01__image-area03.inner {
  margin-top: 40px;
  margin-top: 2.5rem;
  position: relative;
}

.ninchi-item01__image-area03__image01 {
  aspect-ratio: 335/533;
  margin-inline: auto;
}

.ninchi-item01__image img,
.ninchi-item01__image-area02__image01 img,
.ninchi-item01__image-area02__image02 img,
.ninchi-item01__image-area03__image01 img {
  -o-object-fit: contain;
  height: 100%;
  object-fit: contain;
  width: 100%;
}

.ninchi-item01__image-area01::after,
.ninchi-item01__image-area02::after {
  background: #F9F7F2;
  bottom: 0;
  content: "";
  height: 100%;
  left: 0;
  margin: 0 calc(50% - 50vw);
  position: absolute;
  width: 100vw;
  z-index: -1;
}

.ninchi-item01__list-area {
  margin-top: 40px;
  margin-top: 2.5rem;
}

.ninchi-item01__list {
  background: #F9F7F2;
  border: 2px solid #DD4A54;
  border-radius: 0.75rem;
  padding: 90px 20px 40px;
  padding: 5.625rem 1.25rem 2.5rem;
  position: relative;
}

.ninchi-item01__list::after {
  background-color: #DD4A54;
  border-radius: 1.25rem;
  -webkit-clip-path: polygon(0 50%, 100% 50%, 100% 100%, 0% 100%);
  clip-path: polygon(0 50%, 100% 50%, 100% 100%, 0% 100%);
  content: "";
  height: 40px;
  height: 2.5rem;
  left: 50%;
  position: absolute;
  top: 0;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  width: 130px;
  width: 8.125rem;
}

.ninchi-item01__list-heading {
  margin-inline: auto;
  background-color: #DD4A54;
  border-radius: 1.5rem;
  color: #fff;
  font-size: 20px;
  font-size: 1.25rem;
  font-weight: 600;
  letter-spacing: 0.02em;
  line-height: 1.4583333333;
  max-width: min(85.3333333333vw, 360px);
  max-width: min(85.3333333333vw, 22.5rem);
  padding: 6px;
  padding: 0.375rem;
  position: relative;
  text-align: center;
}

.ninchi-item01__list-heading::after {
  background: url(../images/ninchi/heading_ninchi-item01.svg) center/contain;
  content: "";
  height: 20px;
  height: 1.25rem;
  left: 50%;
  position: absolute;
  top: -50%;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  width: 40px;
  width: 2.5rem;
}

.ninchi-item01__list-items {
  row-gap: 48px;
  row-gap: 3rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  margin-top: 24px;
  margin-top: 1.5rem;
}

.ninchi-item01__list-item {
  margin-inline: auto;
  max-width: 718px;
  max-width: 44.875rem;
  width: 100%;
}

.ninchi-media {
  row-gap: 20px;
  row-gap: 1.25rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  padding: 10px 30px;
  padding: 0.625rem 1.875rem;
  position: relative;
  z-index: 2;
}

.ninchi-media::after {
  bottom: 0;
  content: "";
  height: 200px;
  height: 12.5rem;
  left: 50%;
  position: absolute;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
  width: 100%;
  z-index: 0;
}

.ninchi-media:not(:first-of-type)::before {
  background: url(../images/ninchi/arrow_ninchi-item01.svg) center/contain;
  content: "";
  height: 29px;
  height: 1.8125rem;
  left: 50%;
  position: absolute;
  top: -5%;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
  width: 83px;
  width: 5.1875rem;
  z-index: 3;
}

.ninchi-media__image-area {
  z-index: 1;
}

.ninchi-media__image {
  aspect-ratio: 287/172;
  width: 100%;
}

.ninchi-media__image img {
  -o-object-fit: contain;
  height: 100%;
  object-fit: contain;
  width: 100%;
}

.ninchi-media__caption {
  color: #333;
  font-size: 20px;
  font-size: 1.25rem;
  font-weight: 600;
  letter-spacing: 0.02em;
  line-height: 1.45;
  text-align: center;
}

.ninchi-media__text-area {
  row-gap: 8px;
  row-gap: 0.5rem;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  padding-bottom: 10px;
  padding-bottom: 0.625rem;
  z-index: 1;
}

.ninchi-media__text-area.ninchi-media__text-area--02 {
  padding-bottom: 0px;
  padding-bottom: 0rem;
}

.ninchi-media__btn {
  display: grid;
  place-items: center;
  width: 100%;
}

.ninchi-media__btn a,
.ninchi-media__btn p {
  background-color: #DD4A54;
  border: 1px solid #DD4A54;
  border-radius: 1.5rem;
  color: #fff;
  display: block;
  font-size: 18px;
  font-size: 1.125rem;
  font-weight: 600;
  letter-spacing: 0.02em;
  line-height: 1.4583333333;
  max-width: 320px;
  max-width: 20rem;
  padding: 6px 16px;
  padding: 0.375rem 1rem;
  text-align: center;
  -webkit-transition: color 0.3s, opacity 0.3s, background-color 0.3s;
  transition: color 0.3s, opacity 0.3s, background-color 0.3s;
  width: 100%;
}

.ninchi-media__btn a svg {
  height: 10px;
  height: 0.625rem;
  width: 10px;
  width: 0.625rem;
}

.ninchi-media__btn a svg path {
  -webkit-transition: fill 0.3s;
  transition: fill 0.3s;
}

.ninchi-media__text {
  color: #333;
  font-size: 16px;
  font-size: 1rem;
  font-weight: 600;
  letter-spacing: 0.02em;
  line-height: 1.5;
  text-align: left;
}

.ninchi-item01__bnr {
  margin-top: 40px;
  margin-top: 2.5rem;
}

.ninchi-item01__bnr-link {
  aspect-ratio: 620/200;
  margin-inline: auto;
  display: block;
  max-width: 620px;
  max-width: 38.75rem;
}

.ninchi-item01__bnr--nini .ninchi-item01__bnr-link {
  aspect-ratio: 600/180;
  max-width: 600px;
  max-width: 37.5rem;
}

.ninchi-item01__bnr-link img {
  -o-object-fit: contain;
  height: 100%;
  object-fit: contain;
  width: 100%;
}

.ninchi-item02__image-area01.inner {
  margin-top: 18px;
  margin-top: 1.125rem;
  padding-bottom: 25px;
  padding-bottom: 1.5625rem;
  padding-top: 18px;
  padding-top: 1.125rem;
  position: relative;
}

.ninchi-item02__image-area01::after,
.ninchi-item02__image-area02::after {
  background: #F9F7F2;
  bottom: 0;
  content: "";
  height: 100%;
  left: 0;
  margin: 0 calc(50% - 50vw);
  position: absolute;
  width: 100vw;
  z-index: -1;
}

.ninchi-item02__image01 {
  aspect-ratio: 1093/757;
  margin-inline: auto;
  max-width: 1093px;
  max-width: 68.3125rem;
}

.ninchi-item02__image02 {
  aspect-ratio: 1050/570;
  margin-inline: auto;
  margin-top: 4px;
  margin-top: 0.25rem;
  max-width: 1040px;
  max-width: 65rem;
}

.ninchi-item02__image01 img,
.ninchi-item02__image02 img,
.ninchi-item02__image02-heading img {
  -o-object-fit: contain;
  height: 100%;
  object-fit: contain;
  width: 100%;
}

.ninchi-item02__image-area02.inner {
  margin-top: 24px;
  margin-top: 1.5rem;
  padding-bottom: 18px;
  padding-bottom: 1.125rem;
  padding-top: 16px;
  padding-top: 1rem;
  position: relative;
}

.ninchi-item02__image02-heading {
  aspect-ratio: 225/44;
  margin-inline: auto;
}

.ninchi-page {
  overflow: hidden;
}

.ninchi-page__item01 {
  margin-top: 64px;
  margin-top: 4rem;
}

.ninchi-page__item02 {
  margin-top: 64px;
  margin-top: 4rem;
}

.seizen-intro__title {
  margin-top: 40px;
  margin-top: 2.5rem;
}

.seizen-intro__text {
  color: #333;
  font-size: 13px;
  font-size: 0.8125rem;
  font-weight: 400;
  letter-spacing: 0;
  line-height: 1.4615384615;
  margin-top: 24px;
  margin-top: 1.5rem;
  text-align: left;
}

.seizen-intro__body.inner {
  padding-bottom: 40px;
  padding-bottom: 2.5rem;
  position: relative;
}

.seizen-intro__body::after {
  background: rgba(21, 153, 71, .1);
  bottom: 0;
  content: "";
  height: calc(100% - 1.75rem);
  left: 0;
  margin: 0 calc(50% - 50vw);
  position: absolute;
  width: 100vw;
  z-index: -1;
}

.seizen-intro__point-title-container {
  aspect-ratio: 335/80;
  background: url(../images/seizen/intro-point-title.png) no-repeat center center/contain;
  margin-top: 40px;
  margin-top: 2.5rem;
  position: relative;
  width: 100%;
}

.seizen-intro__point-title {
  color: #159947;
  font-size: clamp(10px, 3.7333333333vw, 20px);
  font-size: clamp(0.625rem, 3.7333333333vw, 1.25rem);
  font-weight: 600;
  letter-spacing: 0.008em;
  line-height: 1;
  position: absolute;
  right: 6%;
  text-align: center;
  top: 20%;
}

.seizen-intro__point-title .strong {
  background-image: -webkit-gradient(linear, left top, left bottom, color-stop(75%, rgba(0, 0, 0, 0)), color-stop(75%, #F4D105), color-stop(90%, #F4D105), color-stop(90%, rgba(0, 0, 0, 0)));
  background-image: linear-gradient(rgba(0, 0, 0, 0) 75%, #F4D105 75%, #F4D105 90%, rgba(0, 0, 0, 0) 90%);
  color: #DD4A54;
  font-size: clamp(20px, 7.2vw, 40px);
  font-size: clamp(1.25rem, 7.2vw, 2.5rem);
  font-weight: 700;
  letter-spacing: 0.008em;
  line-height: 0.2592592593;
  text-align: center;
}

.seizen-intro__point-title .fs17-36 {
  color: #DD4A54;
  color: #DD4A54;
  font-size: 17px;
  font-size: 1.0625rem;
  font-size: clamp(10px, 4.5333333333vw, 20px);
  font-size: clamp(0.625rem, 4.5333333333vw, 1.25rem);
  font-weight: 600;
  font-weight: 600;
  letter-spacing: 0.008em;
  line-height: 0.4117647059;
  margin-left: -4px;
  margin-left: -0.25rem;
  text-align: center;
  text-align: center;
}

.seizen-intro__point-items {
  row-gap: 24px;
  row-gap: 1.5rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
}

.seizen-intro__anchor-links {
  -moz-column-gap: 0.625rem;
  -webkit-column-gap: 0.625rem;
  column-gap: 0.625rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  margin-top: 24px;
  margin-top: 1.5rem;
}

.seizen-intro__anchor-link {
  color: #159947;
  font-size: 16px;
  font-size: 1rem;
  font-weight: 600;
  letter-spacing: 0.02em;
  line-height: 2;
  text-align: left;
}

.seizen-intro__anchor-link a {
  border: 1px solid #159947;
  border-radius: 1.3125rem;
  padding: 4px 18px;
  padding: 0.25rem 1.125rem;
  -webkit-transition: background-color 0.3s, color 0.3s;
  transition: background-color 0.3s, color 0.3s;
}

.seizen-page {
  overflow: hidden;
}

.seizen-page__intro {
  margin-top: 40px;
  margin-top: 2.5rem;
}

.seizen-page__point01 {
  margin-top: 64px;
  margin-top: 4rem;
}

.seizen-page__point02 {
  margin-top: 64px;
  margin-top: 4rem;
}

.seizen-page__point03 {
  margin-top: 64px;
  margin-top: 4rem;
}

.seizen-point-item {
  background-color: #fff;
  padding: 40px 16px;
  padding: 2.5rem 1rem;
}

.seizen-point-item__media {
  row-gap: 16px;
  row-gap: 1rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
}

.seizen-point-item__image-area {
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
}

.seizen-point-item__title {
  aspect-ratio: 280/93;
  background: url(../images/seizen/title-image.png) no-repeat center center/contain;
  position: relative;
  width: 100%;
}

.seizen-point-item__title-number {
  color: #fff;
  font-size: clamp(20px, 7.7333333333vw, 29px);
  font-size: clamp(1.25rem, 7.7333333333vw, 1.8125rem);
  font-weight: 600;
  left: 10%;
  letter-spacing: 0.02em;
  line-height: 0.1724137931;
  position: absolute;
  text-align: center;
  top: 38%;
}

.seizen-point-item__title-text {
  color: #DD4A54;
  font-size: clamp(12px, 4.8vw, 18px);
  font-size: clamp(0.75rem, 4.8vw, 1.125rem);
  font-weight: 700;
  left: 45%;
  letter-spacing: 0.008em;
  line-height: 0.6111111111;
  position: absolute;
  text-align: center;
  top: 16%;
}

.seizen-point-item__image {
  aspect-ratio: 1/1;
  margin-left: 32px;
  margin-left: 2rem;
  margin-top: -32px;
  margin-top: -2rem;
  width: clamp(100px, 33.3333333333vw, 160px);
  width: clamp(6.25rem, 33.3333333333vw, 10rem);
}

.seizen-point-item__image img {
  -o-object-fit: contain;
  height: 100%;
  object-fit: contain;
  width: 100%;
}

.seizen-point-item__text-area {
  color: #333;
  font-size: 13px;
  font-size: 0.8125rem;
  font-weight: 400;
  letter-spacing: 0;
  line-height: 1.4615384615;
  text-align: left;
}

.seizen-point-item__text+.seizen-point-item__text {
  margin-top: 16px;
  margin-top: 1rem;
}

.seizen-point-item__link {
  margin-top: 24px;
  margin-top: 1.5rem;
  text-align: center;
}

.seizen-point01__body.inner {
  margin-top: 40px;
  margin-top: 2.5rem;
  padding-bottom: 32px;
  padding-bottom: 2rem;
  padding-top: 40px;
  padding-top: 2.5rem;
  position: relative;
}

.seizen-point01__title-container {
  aspect-ratio: 290/86;
  margin-inline: auto;
  background: url(../images/seizen/check-title.png) no-repeat center center/contain;
  max-width: clamp(200px, 77.3333333333vw, 290px);
  max-width: clamp(12.5rem, 77.3333333333vw, 18.125rem);
  position: relative;
  width: 100%;
}

.seizen-point01__title-check {
  bottom: 18%;
  color: #fff;
  font-size: clamp(10px, 4.2666666667vw, 20px);
  font-size: clamp(0.625rem, 4.2666666667vw, 1.25rem);
  font-weight: 700;
  left: 50%;
  letter-spacing: 0.008em;
  line-height: 1;
  max-width: clamp(200px, 77.3333333333vw, 290px);
  max-width: clamp(12.5rem, 77.3333333333vw, 18.125rem);
  position: absolute;
  text-align: center;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
  width: 100%;
}

.seizen-point01__body::after {
  background: #F9F7F2;
  bottom: 0;
  content: "";
  height: 100%;
  left: 0;
  margin: 0 calc(50% - 50vw);
  position: absolute;
  width: 100vw;
  z-index: -1;
}

.seizen-point01__check-sheet {
  margin-top: 124px;
  margin-top: 7.75rem;
  position: relative;
}

.seizen-point01__check-man {
  max-width: clamp(280px, 85.3333333333vw, 400px);
  max-width: clamp(17.5rem, 85.3333333333vw, 25rem);
  position: absolute;
  right: 50%;
  top: 0;
  -webkit-transform: translate(50%, -100%);
  transform: translate(50%, -100%);
  width: 100%;
}

.seizen-point01__check-man img,
.seizen-point01__check-sheet img {
  -o-object-fit: contain;
  height: 100%;
  object-fit: contain;
  width: 100%;
}

.seizen-point01__note-check {
  color: #333;
  font-size: 12px;
  font-size: 0.75rem;
  font-weight: 500;
  letter-spacing: 0;
  line-height: 1.5;
  margin-top: 16px;
  margin-top: 1rem;
  text-align: left;
}

.seizen-point01__bnr {
  margin-top: 40px;
  margin-top: 2.5rem;
}

.seizen-point01__bnr-link {
  aspect-ratio: 620/200;
  margin-inline: auto;
  display: block;
  max-width: 620px;
  max-width: 38.75rem;
}

.seizen-point01__bnr-link img {
  -o-object-fit: contain;
  height: 100%;
  object-fit: contain;
  width: 100%;
}

.seizen-point02__image-area01.inner {
  margin-top: 40px;
  margin-top: 2.5rem;
  padding-bottom: 32px;
  padding-bottom: 2rem;
  padding-top: 40px;
  padding-top: 2.5rem;
  position: relative;
}

.seizen-point02__image-area01::after {
  background: #F9F7F2;
  bottom: 0;
  content: "";
  height: 100%;
  left: 0;
  margin: 0 calc(50% - 50vw);
  position: absolute;
  width: 100vw;
  z-index: -1;
}

.seizen-point02__image01 {
  aspect-ratio: 295/1385;
  margin-inline: auto;
  max-width: 355px;
  max-width: 22.1875rem;
}

.seizen-point02__image01 img {
  -o-object-fit: contain;
  height: 100%;
  object-fit: contain;
  width: 100%;
}

.seizen-point02__example01.inner {
  margin-top: 40px;
  margin-top: 2.5rem;
  position: relative;
}

.seizen-point02__example01-text-image {
  aspect-ratio: 335/128;
  margin-inline: auto;
}

.seizen-point02__example01-text-image img {
  -o-object-fit: contain;
  height: 100%;
  object-fit: contain;
  width: 100%;
}

.seizen-point02__example01-image-wrapper.inner {
  padding-top: 32px;
  padding-top: 2rem;
  position: relative;
  position: relative;
}

.seizen-point02__example01-image-wrapper::after {
  background: #F9F7F2;
  bottom: 0;
  content: "";
  height: 100%;
  left: 0;
  margin: 0 calc(50% - 50vw);
  position: absolute;
  width: 100vw;
  z-index: -1;
}

.seizen-point02__example01-image {
  aspect-ratio: 335/662;
  margin-inline: auto;
}

.seizen-point02__example01-image img {
  -o-object-fit: contain;
  height: 100%;
  object-fit: contain;
  width: 100%;
}

.seizen-point02__example02.inner {
  margin-top: 16px;
  margin-top: 1rem;
  padding-bottom: 32px;
  padding-bottom: 2rem;
  position: relative;
}

.seizen-point02__example02::after {
  background: #F9F7F2;
  bottom: 0;
  content: "";
  height: calc(100% - 3.5rem);
  left: 0;
  margin: 0 calc(50% - 50vw);
  position: absolute;
  width: 100vw;
  z-index: -1;
}

.seizen-point02__example02-text-image {
  aspect-ratio: 335/80;
  margin-inline: auto;
}

.seizen-point02__example02-text-image img {
  -o-object-fit: contain;
  height: 100%;
  object-fit: contain;
  width: 100%;
}

.seizen-point02__example02-image {
  aspect-ratio: 335/856;
  margin-inline: auto;
  -webkit-transform: translateX(-0.5rem);
  transform: translateX(-0.5rem);
}

.seizen-point02__example02-image img {
  -o-object-fit: cover;
  height: 100%;
  object-fit: cover;
  width: 100%;
}

.seizen-point02__media {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  margin-top: 84px;
  margin-top: 5.25rem;
  position: relative;
}

.seizen-point02__media-label-image {
  aspect-ratio: 230/78;
  left: 0;
  position: absolute;
  top: -48px;
  top: -3rem;
  width: 230px;
  width: 14.375rem;
}

.seizen-point02__media-label-image img {
  -o-object-fit: contain;
  height: 100%;
  object-fit: contain;
  width: 100%;
}

.seizen-point02__media-list {
  row-gap: 8px;
  row-gap: 0.5rem;
  background-color: #fff;
  border-radius: 1.25rem 1.25rem 0 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  padding: 40px 16px 16px 16px;
  padding: 2.5rem 1rem 1rem 1rem;
}

.seizen-point02__media-list-item {
  color: #333;
  font-size: 14px;
  font-size: 0.875rem;
  font-weight: 600;
  letter-spacing: 0.01em;
  line-height: 1.4285714286;
  text-align: left;
  text-indent: -1em;
}

.seizen-point02__media-list-item {
  color: #333;
  font-size: 14px;
  font-size: 0.875rem;
  font-weight: 600;
  letter-spacing: 0.01em;
  line-height: 1.4285714286;
  padding-left: 2em;
  text-align: left;
  text-indent: -2em;
}

.seizen-point02__media-list-item::first-letter {
  margin-right: 1em;
}

.seizen-point02__media-note {
  background-color: rgba(244, 209, 5, .2);
  border-radius: 0 0 1.25rem 1.25rem;
  padding: 20px;
  padding: 1.25rem;
}

.seizen-point02__media-note-image {
  aspect-ratio: 185/90;
  margin-inline: auto;
  width: clamp(140px, 46.6666666667vw, 185px);
  width: clamp(8.75rem, 46.6666666667vw, 11.5625rem);
}

.seizen-point02__media-note-image img {
  -o-object-fit: contain;
  height: 100%;
  object-fit: contain;
  width: 100%;
}

.seizen-point02__media-note-text {
  color: #333;
  font-size: 14px;
  font-size: 0.875rem;
  font-weight: 400;
  letter-spacing: 0.01em;
  line-height: 1.4285714286;
  margin-top: 16px;
  margin-top: 1rem;
  text-align: left;
}

.seizen-point03__body.inner {
  margin-top: 40px;
  margin-top: 2.5rem;
  padding-bottom: 24px;
  padding-bottom: 1.5rem;
  padding-top: 32px;
  padding-top: 2rem;
  position: relative;
}

.seizen-point03__body::after {
  background: #F9F7F2;
  bottom: 0;
  content: "";
  height: 100%;
  left: 0;
  margin: 0 calc(50% - 50vw);
  position: absolute;
  width: 100vw;
  z-index: -1;
}

.seizen-point03__image01-heading {
  aspect-ratio: 335/44;
  margin-inline: auto;
}

.seizen-point03__image01 {
  margin-inline: auto;
  aspect-ratio: 375/905;
  margin-top: 40px;
  margin-top: 2.5rem;
}

.seizen-point03__image01-heading img,
.seizen-point03__image01 img {
  -o-object-fit: contain;
  height: 100%;
  object-fit: contain;
  width: 100%;
}

.seizen-point03__bnr {
  margin-top: 40px;
  margin-top: 2.5rem;
}

.seizen-point03__bnr-link {
  aspect-ratio: 600/180;
  margin-inline: auto;
  display: block;
  max-width: 600px;
  max-width: 37.5rem;
}

.seizen-point03__bnr-link img {
  -o-object-fit: contain;
  height: 100%;
  object-fit: contain;
  width: 100%;
}

.souzoku-item01__flow-area.inner {
  margin-top: 32px;
  margin-top: 2rem;
  max-width: 640px;
  max-width: 40rem;
  padding-bottom: 30px;
  padding-bottom: 1.875rem;
  padding-top: 70px;
  padding-top: 4.375rem;
  position: relative;
}

.souzoku-item01__flow-heading {
  margin-inline: auto;
  background-color: #DD4A54;
  border-radius: 1.5rem;
  color: #fff;
  font-size: 20px;
  font-size: 1.25rem;
  font-weight: 600;
  letter-spacing: 0.02em;
  line-height: 1.4583333333;
  max-width: min(85.3333333333vw, 360px);
  max-width: min(85.3333333333vw, 22.5rem);
  padding: 6px;
  padding: 0.375rem;
  position: relative;
  text-align: center;
}

.souzoku-item01__flow-heading::after {
  background: url(../images/ninchi/heading_ninchi-item01.svg) center/contain;
  content: "";
  height: 20px;
  height: 1.25rem;
  left: 50%;
  position: absolute;
  top: -50%;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  width: 40px;
  width: 2.5rem;
}

.souzoku-item01__flow-items {
  row-gap: 40px;
  row-gap: 2.5rem;
  display: grid;
  margin: 40px auto 0;
  margin: 2.5rem auto 0;
  max-width: 480px;
  max-width: 30rem;
}

.souzoku-item01__flow-item-head {
  -moz-column-gap: 0.875rem;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-column-gap: 0.875rem;
  column-gap: 0.875rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: relative;
}

.souzoku-item01__flow-item-head.souzoku-item01__flow-item-head--03 {
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: start;
}

.souzoku-item01__flow-item-num {
  aspect-ratio: 1;
  background-color: #DD4A54;
  border-radius: 100%;
  color: #fff;
  display: grid;
  font-size: 14px;
  font-size: 0.875rem;
  font-weight: 600;
  letter-spacing: 0.02em;
  line-height: 1.45;
  place-items: center;
  position: relative;
  text-align: center;
  width: 46px;
  width: 2.875rem;
}

.souzoku-item01__flow-item-num::before {
  aspect-ratio: 1;
  border: 1px solid white;
  border-radius: 50%;
  content: "";
  position: absolute;
  width: 40px;
  width: 2.5rem;
}

.souzoku-item01__flow-item-num::after {
  background: url(../images/common/icon-flow-arrow.svg) no-repeat center/contain;
  bottom: -30px;
  bottom: -1.875rem;
  content: "";
  height: 17px;
  height: 1.0625rem;
  left: 50%;
  position: absolute;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
  width: 11px;
  width: 0.6875rem;
}

.souzoku-item01__flow-item-head-text {
  color: #DD4A54;
  font-size: 16px;
  font-size: 1rem;
  font-weight: 600;
  letter-spacing: 0.02em;
  line-height: 1.45;
  text-align: left;
}

.souzoku-item01__flow-item-head-texts .souzoku-item01__flow-item-head-text {
  padding-left: 1em;
  text-indent: -1em;
}

.souzoku-item01__flow-item-body-text {
  color: #333;
  font-size: 14px;
  font-size: 0.875rem;
  font-weight: 600;
  letter-spacing: 0.02em;
  line-height: 1.3;
  margin-left: 52px;
  margin-left: 3.25rem;
  text-align: left;
}

.souzoku-item01__flow-item-point {
  aspect-ratio: 172/72;
  position: absolute;
  right: 0;
  top: 0;
  width: 88px;
  width: 5.5rem;
}

.souzoku-item01__flow-item-point img {
  -o-object-fit: contain;
  height: 100%;
  object-fit: contain;
  width: 100%;
}

.souzoku-item01__flow-item-body-text-tips {
  position: relative;
  width: -moz-fit-content;
  width: -webkit-fit-content;
  width: fit-content;
}

.souzoku-item01__flow-item-body-text-tips .souzoku-item01__flow-item-body-text {
  margin-left: 82px;
  margin-left: 5.125rem;
}

.souzoku-tooltip {
  left: 52px;
  left: 3.25rem;
  position: absolute;
  top: 0;
}

.souzoku-tooltip__btn {
  background: transparent;
  border: 0;
  cursor: pointer;
  height: 20px;
  height: 1.25rem;
  padding: 0;
  width: 20px;
  width: 1.25rem;
}

.souzoku-tooltip__btn img {
  -o-object-fit: contain;
  height: 100%;
  object-fit: contain;
  width: 100%;
}

.souzoku-tooltip__bubble {
  background-color: #ffffff;
  border: 1px solid #159947;
  left: -24px;
  left: -1.5rem;
  opacity: 0;
  padding: 16px 12px 12px;
  padding: 1rem 0.75rem 0.75rem;
  pointer-events: none;
  position: absolute;
  top: calc(100% + 1.25rem);
  -webkit-transition: opacity 0.15s ease, visibility 0.15s ease;
  transition: opacity 0.15s ease, visibility 0.15s ease;
  visibility: hidden;
  width: 290px;
  width: 18.125rem;
  z-index: 20;
}

.souzoku-tooltip__bubble::before {
  translate: -50% -100%;
  border-color: transparent transparent #159947;
  border-style: solid;
  border-width: 0 10px 20px 10px;
  border-width: 0 0.625rem 1.25rem 0.625rem;
  content: "";
  left: 32px;
  left: 2rem;
  position: absolute;
  top: 0;
}

.souzoku-tooltip__bubble::after {
  translate: -50% -100%;
  border-color: transparent transparent #ffffff;
  border-style: solid;
  border-width: 0 9.9px 19px 9.9px;
  border-width: 0 0.61875rem 1.1875rem 0.61875rem;
  content: "";
  left: 32px;
  left: 2rem;
  position: absolute;
  top: 1px;
  top: 0.0625rem;
}

.souzoku-tooltip.is-open .souzoku-tooltip__bubble {
  opacity: 1;
  pointer-events: auto;
  visibility: visible;
}

.souzoku-tooltip__title {
  color: #333;
  font-size: 12px;
  font-size: 0.75rem;
  font-weight: 600;
  letter-spacing: 0.02em;
  line-height: 1.4285714286;
  text-align: center;
}

.souzoku-tooltip__text {
  color: #333;
  font-size: 12px;
  font-size: 0.75rem;
  font-weight: 400;
  letter-spacing: 0.02em;
  line-height: 1.4285714286;
  text-align: left;
}

.souzoku-tooltip__bubble a {
  color: #159947;
}

/* sr-only */

.sr-only {
  clip: rect(0 0 0 0);
  border: 0;
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute;
  white-space: nowrap;
  width: 1px;
}

.souzoku-item01__image {
  aspect-ratio: 335/595;
  margin-inline: auto;
  max-width: 690px;
  max-width: 43.125rem;
}

.souzoku-item01__image img {
  -o-object-fit: contain;
  height: 100%;
  object-fit: contain;
  width: 100%;
}

.souzoku-item01__image-area02.inner {
  margin-top: 40px;
  margin-top: 2.5rem;
  padding-bottom: 40px;
  padding-bottom: 2.5rem;
  padding-top: 40px;
  padding-top: 2.5rem;
  position: relative;
}

.souzoku-item01__image02 {
  aspect-ratio: 335/2052;
  margin-inline: auto;
  max-width: 600px;
  max-width: 37.5rem;
}

.souzoku-item01__image img,
.souzoku-item01__image02 img {
  -o-object-fit: contain;
  height: 100%;
  object-fit: contain;
  width: 100%;
}

.souzoku-item01__flow-area::after,
.souzoku-item01__image-area02::after {
  background: #F9F7F2;
  bottom: 0;
  content: "";
  height: 100%;
  left: 0;
  margin: 0 calc(50% - 50vw);
  position: absolute;
  width: 100vw;
  z-index: -1;
}

.souzoku-item02__calc-area.inner {
  margin-top: 32px;
  margin-top: 2rem;
  padding: 40px 15px 40px;
  padding: 2.5rem 0.9375rem 2.5rem;
  position: relative;
}

.souzoku-item02__calc-text {
  color: #333;
  font-size: 16px;
  font-size: 1rem;
  font-weight: 600;
  letter-spacing: 0.02em;
  line-height: 1.5;
  text-align: center;
}

.souzoku-item02__calc {
  color: #DD4A54;
  font-size: 18px;
  font-size: 1.125rem;
  font-weight: 600;
  letter-spacing: 0.02em;
  line-height: 1.4444444444;
  text-align: center;
}

.souzoku-item02__calc-block {
  -webkit-box-align: baseline;
  -ms-flex-align: baseline;
  align-items: baseline;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  margin-top: 12px;
  margin-top: 0.75rem;
}

.souzoku-item02__calc .souzoku-item02__calc-font36-40 {
  color: #DD4A54;
  font-size: 36px;
  font-size: 2.25rem;
  font-weight: 600;
  letter-spacing: 0;
  line-height: 1.4444444444;
  text-align: center;
}

.souzoku-item02__calc .souzoku-item02__calc-font20-20-black {
  margin-inline: 8px;
  margin-inline: 0.5rem;
  color: #DD4A54;
  font-size: 20px;
  font-size: 1.25rem;
  font-weight: 600;
  letter-spacing: 0.02em;
  line-height: 1.45;
  text-align: center;
}

.souzoku-item02__calc-pc-black.souzoku-item02__calc-pc-black--left {
  margin-right: 0.5em;
}

.souzoku-item02__calc-pc-black.souzoku-item02__calc-pc-black--right {
  margin-left: 0.5em;
}

.souzoku-item02__image-area01.inner {
  margin-top: 32px;
  margin-top: 2rem;
  position: relative;
}

.souzoku-item02__image01 {
  aspect-ratio: 375/855;
  margin-inline: auto;
  max-width: 600px;
  max-width: 37.5rem;
}

.souzoku-item02__image-area02.inner {
  margin-top: 32px;
  margin-top: 2rem;
  padding: 56px 5px;
  padding: 3.5rem 0.3125rem;
  position: relative;
}

.souzoku-item02__image02 {
  aspect-ratio: 366/583;
  margin-inline: auto;
  max-width: 996px;
  max-width: 62.25rem;
}

.souzoku-item02__image01 img,
.souzoku-item02__image02 img {
  -o-object-fit: contain;
  height: 100%;
  object-fit: contain;
  width: 100%;
}

.souzoku-item02__calc-area::after,
.souzoku-item02__image-area02::after {
  background: #F9F7F2;
  bottom: 0;
  content: "";
  height: 100%;
  left: 0;
  margin: 0 calc(50% - 50vw);
  position: absolute;
  width: 100vw;
  z-index: -1;
}

.souzoku-item03__flow-area.inner {
  margin-top: 24px;
  margin-top: 1.5rem;
  position: relative;
}

.souzoku-item03__contents {
  margin-top: 24px;
  margin-top: 1.5rem;
}

.souzoku-page {
  overflow: hidden;
}

.souzoku-page__item01 {
  margin-top: 64px;
  margin-top: 4rem;
}

.souzoku-page__item02 {
  margin-top: 64px;
  margin-top: 4rem;
}

.souzoku-page__item03 {
  margin-top: 64px;
  margin-top: 4rem;
}

.staff-list-item {
  gap: 32px min(2.5vw, 32px);
  gap: 2rem min(2.5vw, 2rem);
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
}

.staff-list-item__image-area {
  position: relative;
  z-index: 2;
}

.staff-list-item__image {
  aspect-ratio: 400/480;
  width: 100%;
}

.staff-list-item__image img {
  -o-object-fit: contain;
  height: 100%;
  object-fit: contain;
  width: 100%;
}

.staff-list-item__name {
  background-color: #159947;
  bottom: 25px;
  bottom: 1.5625rem;
  color: #fff;
  font-size: 16px;
  font-size: 1rem;
  font-weight: 700;
  left: 0;
  letter-spacing: 0;
  line-height: 1.5;
  min-width: 260px;
  min-width: 16.25rem;
  padding: 10px 16px 6px 24px;
  padding: 0.625rem 1rem 0.375rem 1.5rem;
  position: absolute;
  text-align: left;
}

.staff-list-item__name span {
  color: #fff;
  font-size: 13px;
  font-size: 0.8125rem;
  font-weight: 400;
  letter-spacing: 0.02em;
  line-height: 1.1538461538;
  margin-left: 16px;
  margin-left: 1rem;
  text-align: left;
}

.staff-list-item__text-items {
  gap: 16px;
  gap: 1rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
}

.staff-list-item__text {
  color: #333;
  font-size: 13px;
  font-size: 0.8125rem;
  font-weight: 400;
  letter-spacing: 0;
  line-height: 1.4615384615;
  margin-top: 16px;
  margin-top: 1rem;
  text-align: left;
}

.staff-page {
  overflow: hidden;
}

.staff-page__lead {
  margin-top: 40px;
  margin-top: 2.5rem;
}

.staff-page__text+.staff-page__text {
  margin-top: 1em;
}

.staff-page__wrapper.inner {
  margin-top: 40px;
  margin-top: 2.5rem;
  padding: 32px 40px;
  padding: 2rem 2.5rem;
  position: relative;
}

.staff-page__wrapper::after {
  background-color: #F9F7F2;
  content: "";
  height: 100%;
  left: 0;
  margin: 0 calc(50% - 50vw);
  position: absolute;
  top: 0;
  width: 100vw;
  z-index: -1;
}

.staff-page__list {
  row-gap: 48px;
  row-gap: 3rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
}

.about {
  background: url(../images/top/bg-about.jpg) no-repeat center/cover;
  padding: 60px 0;
  padding: 3.75rem 0;
}

.about__container {
  background-color: #fff;
  padding: 30px 20px;
  padding: 1.875rem 1.25rem;
}

.about__heading {
  margin-inline: auto;
}

.about__text-area {
  color: #333;
  font-size: clamp(13px, 3.4666666667vw, 16px);
  font-size: clamp(0.8125rem, 3.4666666667vw, 1rem);
  font-weight: 600;
  letter-spacing: 0.02em;
  line-height: 1.5384615385;
  margin-top: 24px;
  margin-top: 1.5rem;
  text-align: center;
}

.about__text+.about__text {
  margin-top: 1em;
}

.advantages-list {
  row-gap: 20px;
  row-gap: 1.25rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
}

.advantages-list__item {
  border: 1px solid #1F5F5B;
  padding: 20px 20px 30px 20px;
  padding: 1.25rem 1.25rem 1.875rem 1.25rem;
  position: relative;
}

.advantages-list__item-number {
  aspect-ratio: 116/102;
  background-color: #fff;
  -webkit-clip-path: polygon(0 0, 0% 100%, 100% 0);
  clip-path: polygon(0 0, 0% 100%, 100% 0);
  left: -2px;
  padding: 16px;
  padding: 1rem;
  position: absolute;
  top: -2px;
  width: clamp(116px, 30.9333333333vw, 230px);
  width: clamp(7.25rem, 30.9333333333vw, 14.375rem);
  z-index: 0;
}

.advantages-list__item-number::before {
  background-color: rgba(31, 95, 91, .1);
  -webkit-clip-path: polygon(0 0, 0 calc(100% - 4px), calc(100% - 4px) 0);
  clip-path: polygon(0 0, 0 calc(100% - 4px), calc(100% - 4px) 0);
  content: "";
  height: 100%;
  left: 0;
  position: absolute;
  top: 0;
  width: 100%;
  z-index: -1;
}

.advantages-list__item-number::after {
  background-color: #1F5F5B;
  content: "";
  height: 2px;
  left: calc(50% - 2px);
  position: absolute;
  top: calc(50% - 2px);
  -webkit-transform: translate(-50%, -50%) rotate(-41deg);
  transform: translate(-50%, -50%) rotate(-41deg);
  width: 65%;
}

.advantages-list__item-number span {
  color: #1F5F5B;
  font-size: clamp(21px, 5.6vw, 40px);
  font-size: clamp(1.3125rem, 5.6vw, 2.5rem);
  font-weight: 500;
  letter-spacing: 0.02em;
  line-height: 0.8;
  text-align: left;
  z-index: 1;
}

.advantages-list__item-img {
  aspect-ratio: 140/140;
  margin-inline: auto;
  width: clamp(140px, 37.3333333333vw, 292px);
  width: clamp(8.75rem, 37.3333333333vw, 18.25rem);
}

.advantages-list__item-img img {
  -o-object-fit: contain;
  height: 100%;
  object-fit: contain;
  width: 100%;
}

.advantages-list__item-title {
  color: #159947;
  font-size: 16px;
  font-size: 1rem;
  font-weight: 600;
  letter-spacing: 0.02em;
  line-height: 1.5;
  text-align: center;
}

.advantages-list__item-media {
  gap: 36px;
  gap: 2.25rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  margin-top: 32px;
  margin-top: 2rem;
}

.advantages-list__item-text {
  color: #333;
  font-size: 13px;
  font-size: 0.8125rem;
  font-weight: 400;
  letter-spacing: 0.02em;
  line-height: 1.6923076923;
  text-align: left;
}

.advantages {
  margin-top: 30px;
  margin-top: 1.875rem;
}

.advantages__heading {
  margin-inline: auto;
}

.advantages__list {
  margin-top: 24px;
  margin-top: 1.5rem;
}

.advantages__link-area {
  margin-top: 24px;
  margin-top: 1.5rem;
  text-align: center;
}

.advantages__link {
  background-color: rgba(31, 95, 91, .1);
  color: #1F5F5B;
  display: inline-block;
  font-size: clamp(13px, 3.4666666667vw, 18px);
  font-size: clamp(0.8125rem, 3.4666666667vw, 1.125rem);
  font-weight: 600;
  letter-spacing: 0.02em;
  line-height: 2.7692307692;
  padding: 20px 7px 20px 3px;
  padding: 1.25rem 0.4375rem 1.25rem 0.1875rem;
  text-align: center;
  width: 100%;
}

.blog__heading {
  margin-inline: auto;
}

.blog__list {
  margin-top: 40px;
  margin-top: 2.5rem;
}

.blog__more-link {
  margin-top: 60px;
  margin-top: 3.75rem;
  text-align: center;
}

.books {
  background-color: rgba(73, 178, 101, .2);
  overflow: hidden;
  padding: 30px 0;
  padding: 1.875rem 0;
}

.books__container {
  padding: 40px 25px 56px;
  padding: 2.5rem 1.5625rem 3.5rem;
  position: relative;
  z-index: 1;
}

.books__container::after {
  background-color: #fff;
  content: "";
  height: 100%;
  left: 0;
  margin: 0 0 0 calc(50% - 50vw);
  position: absolute;
  top: 0;
  width: 100%;
  width: 100vw;
  z-index: -1;
}

.books__heading {
  margin-inline: auto;
}

.books__img {
  margin-inline: auto;
  margin-top: 24px;
  margin-top: 1.5rem;
  max-width: 620px;
  max-width: 38.75rem;
  width: 100%;
}

.books__img img {
  -o-object-fit: contain;
  height: 100%;
  object-fit: contain;
  width: 100%;
}

.books__more-link {
  margin-top: 24px;
  margin-top: 1.5rem;
  text-align: center;
}

.community-service {
  margin-top: 40px;
  margin-top: 2.5rem;
  overflow: hidden;
}

.community-service__heading {
  margin-inline: auto;
}

.community-service__items {
  margin-top: 24px;
  margin-top: 1.5rem;
}

.community-service__item {
  padding-top: 64px;
  padding-top: 4rem;
  position: relative;
  z-index: 1;
}

.community-service__item+.community-service__item {
  margin-top: 30px;
  margin-top: 1.875rem;
}

.community-service__item::after {
  background-color: rgba(73, 178, 101, .1);
  bottom: 0;
  content: "";
  height: calc(100% - 4.625rem);
  margin: 0 calc(50% - 50vw);
  position: absolute;
  width: 100vw;
  z-index: -1;
}

.community-service__item-img {
  aspect-ratio: 188/147;
  left: min(-1.5625vw, -20px);
  left: min(-1.5625vw, -1.25rem);
  position: absolute;
  top: 0;
  width: clamp(140px, 50.1333333333vw, 240px);
  width: clamp(8.75rem, 50.1333333333vw, 15rem);
  z-index: 0;
}

.community-service__item--reverse .community-service__item-img {
  left: unset;
  right: min(-1.5625vw, -20px);
  right: min(-1.5625vw, -1.25rem);
}

.community-service__item-img img {
  -o-object-fit: cover;
  height: 100%;
  object-fit: cover;
  width: 100%;
}

.community-service__item-container {
  padding: 90px 0 30px;
  padding: 5.625rem 0 1.875rem;
  position: relative;
  z-index: 1;
}

.community-service__item-title {
  color: #1F5F5B;
  font-size: 14px;
  font-size: 0.875rem;
  font-weight: 600;
  letter-spacing: 0.04em;
  line-height: 2.2857142857;
  text-align: right;
  text-align: right;
}

.community-service__item--reverse .community-service__item-title {
  text-align: left;
}

.community-service__item-text-box {
  color: #333;
  font-size: 13px;
  font-size: 0.8125rem;
  font-weight: 400;
  letter-spacing: 0.02em;
  line-height: 1.6923076923;
  margin-top: 16px;
  margin-top: 1rem;
  padding: 40px 20px 0;
  padding: 2.5rem 1.25rem 0;
  position: relative;
  text-align: left;
  z-index: 1;
}

.community-service__item--reverse .community-service__item-text-box {
  margin-left: unset;
  margin-right: auto;
}

.community-service__item-text-box::after {
  background-color: #fff;
  content: "";
  height: calc(100% + 2.5rem);
  opacity: 0.7;
  position: absolute;
  right: 0;
  top: 0;
  width: 100%;
  z-index: -1;
}

.community-service__item--reverse .community-service__item-text-box::after {
  left: 0;
  right: unset;
}

.community-service__item-text+.community-service__item-text {
  margin-top: 1.5em;
}

.community-service__item__link {
  margin-top: 64px;
  margin-top: 4rem;
  position: relative;
  text-align: center;
  z-index: 1;
}

.community-service__item__link+.community-service__item__link {
  margin-top: 5px;
  margin-top: 0.3125rem;
}

.community-service__item__bnr {
  aspect-ratio: 1030/264;
  margin-inline: auto;
  margin-top: 80px;
  margin-top: 5rem;
  max-width: 1030px;
  max-width: 64.375rem;
  position: relative;
  width: 100%;
  z-index: 1;
}

.community-service__item__bnr img {
  -o-object-fit: contain;
  height: 100%;
  object-fit: contain;
  width: 100%;
}

.contact {
  background-color: rgba(73, 178, 101, .1);
  padding: 60px 0 54px;
  padding: 3.75rem 0 3.375rem;
}

.contact__inner.inner {
  display: grid;
  place-items: center;
}

.contact__heading {
  color: #333;
  font-size: 24px;
  font-size: 1.5rem;
  font-weight: 600;
  letter-spacing: 0.02em;
  line-height: 1.4583333333;
  text-align: center;
}

.contact__heading span {
  background-image: -webkit-gradient(linear, left top, left bottom, color-stop(70%, rgba(0, 0, 0, 0)), color-stop(20%, rgb(254, 241, 128)));
  background-image: linear-gradient(rgba(0, 0, 0, 0) 70%, rgb(254, 241, 128) 20%);
  padding: 0 5px;
  padding: 0 0.3125rem;
}

.contact__lead {
  color: #333;
  font-size: 13px;
  font-size: 0.8125rem;
  font-weight: 400;
  letter-spacing: 0;
  line-height: 2.4615384615;
  margin-top: 20px;
  margin-top: 1.25rem;
  text-align: center;
}

.contact__link {
  margin-top: 20px;
  margin-top: 1.25rem;
  text-align: center;
}

.contact__tel {
  margin-top: 24px;
  margin-top: 1.5rem;
}

.event {
  background-color: rgba(31, 95, 91, .2);
  overflow-x: hidden;
}

.event__inner.inner {
  padding-bottom: 60px;
  padding-bottom: 3.75rem;
  padding-top: 60px;
  padding-top: 3.75rem;
  position: relative;
}

.event__inner.inner::before {
  background-color: #fff;
  content: "";
  height: calc(100% - 3.75rem);
  left: 10px;
  left: 0.625rem;
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  width: calc(50% + 50vw);
  z-index: 0;
}

.event__container {
  position: relative;
  z-index: 1;
}

.event__items {
  margin-top: 20px;
  margin-top: 1.25rem;
}

.event__more-link {
  margin-top: 20px;
  margin-top: 1.25rem;
  text-align: center;
}

.firstViewV2 {
  height: 480px;
  height: calc(30rem - 4rem);
  width: 100%;
}

.firstViewV2__container {
  margin-inline: auto;
  height: 100%;
  position: relative;
  width: 100%;
}

.firstViewV2__imageArea {
  height: auto;
  width: 100%;
  padding-top: 0;
  margin-top: 4rem;
}

@media screen and (min-width: 768px) {
  .firstViewV2__imageArea {
    height: 100%;
    padding-top: 0;
    margin-top: 6.25rem;
  }
}

/* @media screen and (min-width: 1000px) {
  .firstViewV2__imageArea {
    margin-top: 19px;
  }
} */


.firstViewV2__imageArea img {
  -o-object-fit: cover;
  height: 100%;
  object-fit: cover;
  width: 100%;
  object-position: top;
}

.firstViewV2__textArea {
  bottom: 0;
  left: 0;
  padding: 16px;
  padding: 1rem;
  position: absolute;
}

.firstViewV2__catch {
  background-color: #EDF7F1;
  color: #171615;
  font-size: 24px;
  font-size: 1.5rem;
  font-weight: 700;
  letter-spacing: 0.01em;
  line-height: 1.4583333333;
  margin-top: 8px;
  margin-top: 0.5rem;
  padding: 7px 10px;
  padding: 0.4375rem 0.625rem;
  text-align: left;
  width: -moz-fit-content;
  width: -webkit-fit-content;
  width: fit-content;
}

.firstViewV2__lead {
  color: #171615;
  font-size: 14px;
  font-size: 0.875rem;
  font-weight: 700;
  letter-spacing: 0.01em;
  line-height: 1.75;
  margin-top: 8px;
  margin-top: 0.5rem;
  text-align: left;
}

.firstViewV2__gekkeikan {
  aspect-ratio: 352/159;
  width: 118px;
  width: 7.375rem;
}

.firstViewV2__gekkeikan img {
  -o-object-fit: contain;
  height: 100%;
  object-fit: contain;
  width: 100%;
}

.mission {
  margin-top: 40px;
  margin-top: 2.5rem;
}

.mission__heading {
  margin-inline: auto;
}

.mission__container {
  background-color: #1F5F5B;
  margin-top: 24px;
  margin-top: 1.5rem;
  padding: 24px 0 70px;
  padding: 1.5rem 0 4.375rem;
}

.mission__contents.inner {
  padding: 0 10px;
  padding: 0 0.625rem;
  position: relative;
  z-index: 1;
}

.mission__contents::after {
  background-color: #fff;
  content: "";
  height: 100%;
  left: 20px;
  left: 1.25rem;
  position: absolute;
  top: 24px;
  top: 1.5rem;
  width: calc(100% - 1.25rem);
  z-index: -1;
}

.mission__contents-media {
  row-gap: 24px;
  row-gap: 1.5rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
}

.mission__image-area {
  row-gap: 32px;
  row-gap: 2rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
}

.mission__boss-image {
  aspect-ratio: 355/440;
  -webkit-transform: translateX(-0.625rem);
  transform: translateX(-0.625rem);
  width: 100%;
}

.mission__text-image {
  aspect-ratio: 290/260;
  margin-inline: auto;
  width: min(77.3333333333vw, 360px);
  width: min(77.3333333333vw, 22.5rem);
}

.mission__text-area {
  padding: 0 30px;
  padding: 0 1.875rem;
}

.mission__catch {
  color: #333;
  font-size: clamp(18px, 4.8vw, 30px);
  font-size: clamp(1.125rem, 4.8vw, 1.875rem);
  font-weight: 600;
  letter-spacing: 0.02em;
  line-height: 1.45;
  text-align: left;
}

.mission__lead {
  color: #159947;
  font-size: clamp(16px, 4.2666666667vw, 20px);
  font-size: clamp(1rem, 4.2666666667vw, 1.25rem);
  font-weight: 600;
  letter-spacing: 0.02em;
  line-height: 1.5;
  margin-top: 16px;
  margin-top: 1rem;
  text-align: left;
}

.mission__description {
  margin-top: 16px;
  margin-top: 1rem;
}

.mission__text {
  color: #333;
  font-size: clamp(14px, 3.7333333333vw, 18px);
  font-size: clamp(0.875rem, 3.7333333333vw, 1.125rem);
  font-weight: 400;
  letter-spacing: 0.02em;
  line-height: 1.7777777778;
  text-align: justify;
}

.mission__text+.mission__text {
  margin-top: 1.5em;
}

.mission__contents-bottom {
  margin-inline: auto;
  aspect-ratio: 292/266;
  margin-top: 24px;
  margin-top: 1.5rem;
  width: 100%;
  width: clamp(240px, 77.8666666667vw, 400px);
  width: clamp(15rem, 77.8666666667vw, 25rem);
}

.mission__boss-image img,
.mission__text-image img,
.mission__contents-bottom img {
  -o-object-fit: contain;
  height: 100%;
  object-fit: contain;
  width: 100%;
}

.news {
  background-color: rgba(31, 95, 91, .5);
  margin-top: 30px;
  margin-top: 1.875rem;
  overflow-x: hidden;
}

.news__inner.inner {
  padding-bottom: 60px;
  padding-bottom: 3.75rem;
  padding-top: 60px;
  padding-top: 3.75rem;
  position: relative;
}

.news__inner.inner::before {
  background-color: #fff;
  content: "";
  height: calc(100% - 3.75rem);
  left: 0;
  margin-left: calc(-50vw - -50%);
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  width: calc(100% + (100vw - 100% - 1.25rem) / 2);
  z-index: 0;
}

.news__container {
  position: relative;
  z-index: 1;
}

.news__items {
  margin-top: 20px;
  margin-top: 1.25rem;
}

.news__more-link {
  margin-top: 20px;
  margin-top: 1.25rem;
  text-align: center;
}

.price-table {
  border-collapse: collapse;
  table-layout: fixed;
  width: 100%;
}

.price-table__head {
  background-color: #DAF0E0;
  color: #333;
  font-size: clamp(13px, 3.4666666667vw, 22px);
  font-size: clamp(0.8125rem, 3.4666666667vw, 1.375rem);
  font-weight: 600;
  height: 80px;
  height: 5rem;
  letter-spacing: 0.02em;
  line-height: 1.3846153846;
  text-align: center;
}

.price-table__body {
  background-color: #fff;
}

.price-table__body-row {
  border-bottom: 1px solid #159947;
  height: 60px;
  height: 3.75rem;
}

.price-table__item,
.price-table__price {
  color: #333;
  font-size: clamp(13px, 3.4666666667vw, 15px);
  font-size: clamp(0.8125rem, 3.4666666667vw, 0.9375rem);
  font-weight: 600;
  letter-spacing: 0.02em;
  line-height: 1.3846153846;
  text-align: center;
  width: 50%;
}

.price-table__price-tax {
  color: #333;
  font-size: clamp(10px, 2.6666666667vw, 13px);
  font-size: clamp(0.625rem, 2.6666666667vw, 0.8125rem);
  font-weight: 600;
  letter-spacing: 0.02em;
  line-height: 1.8;
  margin-left: 6px;
  margin-left: 0.375rem;
  text-align: left;
}

.price-table__link-icon {
  aspect-ratio: 1;
  display: inline-block;
  margin-left: 5px;
  margin-left: 0.3125rem;
  width: clamp(10px, 2.6666666667vw, 12px);
  width: clamp(0.625rem, 2.6666666667vw, 0.75rem);
}

.price-table02 {
  border-collapse: collapse;
  table-layout: fixed;
  width: 100%;
}

.price-table02__head {
  background-color: #DAF0E0;
  color: #333;
  font-size: clamp(13px, 3.4666666667vw, 22px);
  font-size: clamp(0.8125rem, 3.4666666667vw, 1.375rem);
  font-weight: 600;
  height: 80px;
  height: 5rem;
  letter-spacing: 0.02em;
  line-height: 1.3846153846;
  text-align: center;
}

.price-table02__body {
  background-color: #fff;
}

.price-table02__body-row {
  border-bottom: 1px solid #159947;
  height: 60px;
  height: 3.75rem;
}

.price-table02__item,
.price-table02__price {
  color: #333;
  font-size: clamp(13px, 3.4666666667vw, 15px);
  font-size: clamp(0.8125rem, 3.4666666667vw, 0.9375rem);
  font-weight: 600;
  letter-spacing: 0.02em;
  line-height: 1.3846153846;
  text-align: left;
  width: 50%;
}

.price-table02__price.price-table02__price--1row {
  border-left: 1px solid #159947;
  color: #333;
  font-size: clamp(13px, 3.4666666667vw, 15px);
  font-size: clamp(0.8125rem, 3.4666666667vw, 0.9375rem);
  font-weight: 400;
  letter-spacing: 0.02em;
  line-height: 1.6923076923;
  padding: 0 16px;
  padding: 0 1rem;
  text-align: left;
}

.price {
  margin-top: 40px;
  margin-top: 2.5rem;
}

.price__heading {
  margin-inline: auto;
}

.price__contents {
  margin-top: 30px;
  margin-top: 1.875rem;
}

.price__item a {
  color: #49B265;
  position: relative;
}

.price__item a::after {
  background: #49B265;
  bottom: -1px;
  bottom: -0.0625rem;
  content: "";
  height: 2px;
  left: 50%;
  opacity: 0;
  position: absolute;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
  width: 100%;
}

.price__table-title {
  background-color: #159947;
  color: #fff;
  font-size: clamp(13px, 3.4666666667vw, 24px);
  font-size: clamp(0.8125rem, 3.4666666667vw, 1.5rem);
  font-weight: 600;
  letter-spacing: 0.02em;
  line-height: 2.7692307692;
  text-align: center;
}

.price__note {
  color: #333;
  font-size: clamp(12px, 3.2vw, 16px);
  font-size: clamp(0.75rem, 3.2vw, 1rem);
  font-weight: 500;
  letter-spacing: 0.02em;
  line-height: 1.5;
  margin-top: 10px;
  margin-top: 0.625rem;
  text-align: left;
}

.service-list {
  row-gap: 72px;
  row-gap: 4.5rem;
  display: grid;
  grid-template-columns: repeat(1, 1fr);
}

.service-list__item {
  background-color: #fff;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  padding: 64px 32px 32px;
  padding: 4rem 2rem 2rem;
  position: relative;
}

.service-list__item-number {
  background-color: #49B265;
  border-radius: 50%;
  color: #fff;
  display: grid;
  font-size: 30px;
  font-size: 1.875rem;
  font-weight: 600;
  height: 100px;
  height: 6.25rem;
  left: 50%;
  letter-spacing: 0.02em;
  line-height: 1.0666666667;
  place-items: center;
  position: absolute;
  text-align: center;
  top: -50px;
  top: -3.125rem;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
  width: 100px;
  width: 6.25rem;
}

.service-list__item-img {
  aspect-ratio: 1/1;
  margin-inline: auto;
  width: 130px;
  width: 8.125rem;
}

.service-list__item-img img {
  -o-object-fit: contain;
  height: 100%;
  object-fit: contain;
  width: 100%;
}

.service-list__item-title {
  color: #333;
  font-size: clamp(16px, 5.3333333333vw, 20px);
  font-size: clamp(1rem, 5.3333333333vw, 1.25rem);
  font-weight: 600;
  letter-spacing: 0.02em;
  line-height: 1.4583333333;
  margin-top: 18px;
  margin-top: 1.125rem;
  text-align: center;
}

.service-list__item-en-title {
  color: #159947;
  display: block;
  font-size: clamp(18px, 4.8vw, 22px);
  font-size: clamp(1.125rem, 4.8vw, 1.375rem);
  font-weight: 400;
  letter-spacing: 0.02em;
  line-height: 1.2222222222;
  margin-top: 16px;
  margin-top: 1rem;
  text-align: center;
}

.service-list__item-text {
  color: #333;
  font-size: clamp(12px, 4vw, 18px);
  font-size: clamp(0.75rem, 4vw, 1.125rem);
  font-weight: 600;
  letter-spacing: 0.02em;
  line-height: 1.625;
  margin-top: 14px;
  margin-top: 0.875rem;
  text-align: left;
}

.service-list__item-footer {
  margin-top: auto;
}

.service-list__item-link {
  margin-top: 24px;
  margin-top: 1.5rem;
  text-align: center;
}

.service {
  margin-top: 60px;
  margin-top: 3.75rem;
}

.service__heading {
  margin-inline: auto;
}

.service__container {
  background: url(../images/top/bg-service.webp) no-repeat center/cover;
  margin-top: 24px;
  margin-top: 1.5rem;
  padding-bottom: 40px;
  padding-bottom: 2.5rem;
  padding-top: 80px;
  padding-top: 5rem;
}

.staff {
  background-color: #F9F7F2;
  margin-top: 40px;
  margin-top: 2.5rem;
  padding: 30px 0;
  padding: 1.875rem 0;
}

.staff__heading {
  margin-inline: auto;
}

.staff__media {
  gap: 16px min(10.9375vw, 140px);
  gap: 1rem min(10.9375vw, 140px);
  background-color: #fff;
  border: 4px solid #159947;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  margin-top: 20px;
  margin-top: 1.25rem;
  padding: 32px 20px;
  padding: 2rem 1.25rem;
  -webkit-transition: background-color 0.3s;
  transition: background-color 0.3s;
}

.staff__media-text {
  color: #333;
  font-size: clamp(13px, 3.4666666667vw, 22px);
  font-size: clamp(0.8125rem, 3.4666666667vw, 1.375rem);
  font-weight: 400;
  letter-spacing: 0.02em;
  line-height: 1.6923076923;
  text-align: left;
}

.staff__media-img {
  aspect-ratio: 360/270;
  overflow: hidden;
  width: 100%;
}

.staff__media-img img {
  -o-object-fit: cover;
  height: 100%;
  object-fit: cover;
  -webkit-transition: -webkit-transform 0.3s ease;
  transition: -webkit-transform 0.3s ease;
  transition: transform 0.3s ease;
  transition: transform 0.3s ease, -webkit-transform 0.3s ease;
  width: 100%;
}

.top-banner {
  margin-top: 30px;
  margin-top: 1.875rem;
}

.top-banner img {
  aspect-ratio: 1200/360;
  height: auto;
}

.voice-list {
  row-gap: 30px;
  row-gap: 1.875rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
}

.voice-list__item {
  row-gap: 38px;
  row-gap: 2.375rem;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
}

.voice-list__item-img {
  aspect-ratio: 1/1;
  width: clamp(100px, 34.6666666667vw, 175px);
  width: clamp(6.25rem, 34.6666666667vw, 10.9375rem);
}

.voice-list__item-img img {
  -o-object-fit: contain;
  height: 100%;
  object-fit: contain;
  width: 100%;
}

.voice-list__item-speech-bubble {
  background-color: #F9F7F2;
  border-radius: 0.375rem;
  padding: 28px 20px 24px;
  padding: 1.75rem 1.25rem 1.5rem;
  position: relative;
  z-index: 1;
}

.voice-list__item-speech-bubble::before {
  background-color: #F9F7F2;
  -webkit-clip-path: polygon(100% 0, 0% 100%, 100% 100%);
  clip-path: polygon(100% 0, 0% 100%, 100% 100%);
  content: "";
  height: 24px;
  height: 1.5rem;
  left: 40%;
  position: absolute;
  top: -24px;
  top: -1.5rem;
  width: 48px;
  width: 3rem;
  z-index: -1;
}

.voice-list__item-text {
  color: #333;
  font-size: 13px;
  font-size: 0.8125rem;
  font-weight: 400;
  letter-spacing: 0.02em;
  line-height: 1.6923076923;
  text-align: left;
}

.voice-list__item-info {
  -moz-column-gap: 1.25rem;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-column-gap: 1.25rem;
  column-gap: 1.25rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin-top: 16px;
  margin-top: 1rem;
}

.voice-list__item-category {
  background-color: #159947;
  color: #fff;
  font-size: 13px;
  font-size: 0.8125rem;
  font-weight: 600;
  letter-spacing: 0.02em;
  line-height: 1.4615384615;
  min-width: 90px;
  min-width: 5.625rem;
  padding: 8px;
  padding: 0.5rem;
  text-align: center;
}

.voice-list__item-category.voice-list__item-category--color01 {
  background-color: #1F5F5B;
}

.voice-list__item-person {
  color: #333;
  font-size: 13px;
  font-size: 0.8125rem;
  font-weight: 400;
  letter-spacing: 0.02em;
  line-height: 2.4615384615;
  text-align: left;
}

.voice {
  margin-top: 40px;
  margin-top: 2.5rem;
}

.voice__heading {
  margin-inline: auto;
}

.voice__list {
  margin-top: 40px;
  margin-top: 2.5rem;
}

@media (hover: hover) {

  a:hover {
    opacity: 0.8;
  }

  form button:hover,
  form [type=button]:hover,
  form [type=submit]:hover {
    background-color: #1F5F5B;
    color: #fff;
  }

  .wpcf7-previous[type=button]:hover {
    background-color: #fff;
    color: #B5B5B5;
  }

  .pagination__next:hover,
  .pagination__prev:hover {
    opacity: 1;
  }

  .pagination__next:hover .pagination__arrow-img {
    -webkit-transform: translateX(0.25rem);
    transform: translateX(0.25rem);
  }

  .pagination__prev:hover .pagination__arrow-img {
    -webkit-transform: translateX(-0.25rem);
    transform: translateX(-0.25rem);
  }

  .button-round-02:hover {
    background-color: #1F5F5B;
    color: #fff;
    opacity: 1;
  }

  .button-round-02:hover span::after {
    background: url(../images/common/icon-arrow-white.svg) no-repeat center center/contain;
  }

  .button-round:hover {
    background-color: #fff;
    color: #DD4A54;
    opacity: 1;
  }

  .button-round:hover span::after {
    background: url(../images/common/icon-arrow-red.svg) no-repeat center center/contain;
  }

  .button-round.button-round--green:hover {
    background-color: #fff;
    color: #159947;
    opacity: 1;
  }

  .button-round.button-round--green:hover span::after {
    background: url(../images/common/icon-arrow-green02.svg) no-repeat center center/contain;
  }

  .button-round.button-round--blue:hover {
    border-color: #2B3B76;
    color: #2B3B76;
  }

  .button-round.button-round--blue:hover::before {
    opacity: 0;
  }

  .button-round.button-round--blue:focus-visible::before {
    opacity: 0;
  }

  .button-round.button-round--blue {
    isolation: isolate;
  }

  .button-round.button-round--blue:hover span::after {
    background: url(../images/lp/lp-icon-arrow-blue.svg) no-repeat center center/contain;
  }

  .button-square:hover {
    background-color: #1F5F5B;
    color: #fff;
    opacity: 1;
  }

  .button-square:hover span::after {
    background: url(../images/common/icon-arrow-white.svg) no-repeat center center/contain;
  }

  .button-yellow:hover {
    opacity: 1;
  }

  .button-yellow:hover::after {
    -webkit-transform: translate(-50%, -50%) scale(1, 1);
    transform: translate(-50%, -50%) scale(1, 1);
  }

  .button-yellow:hover span::after {
    -webkit-transform: translate(6px, -50%);
    transform: translate(6px, -50%);
  }

  .card-list__item a:hover {
    opacity: 1;
  }

  .card-list__item a:hover .card-list__item-title {
    text-decoration: underline;
  }

  .card-list__item a:hover img {
    -webkit-transform: scale(1.1);
    transform: scale(1.1);
  }

  .cta__button.cta__button--red:hover {
    background-color: #fff;
    color: #DD4B54;
    opacity: 1;
  }

  .cta__button.cta__button--red:hover .cta__text {
    color: #DD4B54;
  }

  .cta__button.cta__button--red:hover .cta__form {
    background-color: #DD4B54;
    color: #fff;
  }

  .cta__button.cta__button--red:hover .cta__form::before {
    border-right: 0.125rem solid #fff;
    border-top: 0.125rem solid #fff;
  }

  .cta__button.cta__button--green:hover {
    background-color: #fff;
    color: #00A24A;
    opacity: 1;
  }

  .cta__button.cta__button--green:hover .cta__text {
    color: #00A24A;
  }

  .cta__button.cta__button--green:hover .cta__tel {
    color: #00A24A;
  }

  .follow-link:hover {
    background-color: #159947;
    color: #fff;
    opacity: 1;
  }

  .footer__nav-item a:hover {
    opacity: 1;
    text-decoration: underline;
  }

  .footer__link-item a:hover {
    opacity: 1;
    text-decoration: underline;
  }

  .list-items__item a:hover {
    opacity: 1;
  }

  .list-items__item a:hover .list-items__item-title {
    text-decoration: underline;
  }

  .page-to-top a:hover {
    background-color: #fff;
    opacity: 1;
  }

  .page-to-top a:hover::before,
  .page-to-top a:hover::after {
    background-color: #DD4A54;
  }

  .search-box form [type=submit]:hover {
    opacity: 0.8;
  }

  .text__13-18 a:hover {
    text-decoration: underline;
  }

  .pc-menu-drop__button:hover,
  .pc-menu-drop__item>a:hover {
    opacity: 1;
  }

  .pc-menu-drop__button:hover:after {
    -webkit-transform: scaleX(1);
    transform: scaleX(1);
  }

  .pc-menu-drop__item>a:hover {
    color: #159947;
  }

  .pc-menu-drop__item>a:hover::after {
    -webkit-transform: scaleX(1);
    transform: scaleX(1);
  }

  .pc-menu-drop:hover .pc-menu-drop__nav,
  .pc-menu-drop:focus-within .pc-menu-drop__nav {
    opacity: 1;
    visibility: visible;
  }

  .pc-menu__item>a:hover {
    opacity: 1;
  }

  .pc-menu__item>a:hover:after {
    -webkit-transform: scaleX(1);
    transform: scaleX(1);
  }

  .pc-menu__item.pc-menu__item--contact:hover .pc-menu__sub-items {
    opacity: 1;
  }

  .pc-menu__item.pc-menu__item--contact>a:hover {
    background-color: #fff;
    color: #DD4A54;
    opacity: 1;
  }

  .pc-menu__item.pc-menu__item--contact>a:hover .pc-menu__item-text {
    color: #DD4A54;
  }

  .pc-menu__item.pc-menu__item--contact>a:hover .pc-menu__item-text svg {
    -webkit-transform: translateX(0.625rem);
    transform: translateX(0.625rem);
  }

  .pc-menu__item.pc-menu__item--contact>a:hover .pc-menu__item-text svg path {
    stroke: #DD4A54;
  }

  .pc-menu__item.pc-menu__item--contact>a:hover:after {
    display: none;
  }

  .pc-menuV2__item>a:hover {
    opacity: 1;
  }

  .pc-menuV2__item>a:hover:after {
    -webkit-transform: scaleX(1);
    transform: scaleX(1);
  }

  .pc-menuV2__item.pc-menuV2__item--contact:hover .pc-menuV2__sub-items {
    opacity: 1;
  }

  .pc-menuV2__contact>a:hover {
    background-color: #fff;
    color: #DD4A54;
    opacity: 1;
  }

  .pc-menuV2__contact>a:hover .pc-menuV2__item-text {
    color: #DD4A54;
  }

  .pc-menuV2__contact>a:hover .pc-menuV2__item-text svg {
    -webkit-transform: translateX(0.625rem);
    transform: translateX(0.625rem);
  }

  .pc-menuV2__contact>a:hover .pc-menuV2__item-text svg path {
    stroke: #DD4A54;
  }

  .pc-menuV2__item.pc-menuV2__item--contact>a:hover:after {
    display: none;
  }

  .magazine-page__text a:hover {
    text-decoration: underline;
  }

  .price-page__item a:hover {
    text-underline-offset: 2px;
    opacity: 1;
    text-decoration: underline;
  }

  .book-media__link:hover {
    background-color: #1F5F5B;
    color: #fff;
    opacity: 1;
  }

  .book-media__link:hover .book-media__link-large {
    color: #fff;
    opacity: 1;
  }

  .book-media__link:hover .book-media__link-arrow::after {
    background: url(../images/common/icon-arrow-white.svg) no-repeat center center/contain;
  }

  .form__button:hover::after {
    background: url(../images/common/icon-arrow-white.svg) no-repeat center center/contain;
  }

  .form__button.form__button--prev:hover::after {
    background: url(../images/common/icon-arrow-gray.svg) no-repeat center center/contain;
  }

  .form__privacy-text a:hover {
    text-decoration: none;
  }

  .ninchi-media__btn a:hover {
    background-color: #fff;
    color: #DD4A54;
    opacity: 1;
  }

  .ninchi-media__btn a:hover svg path {
    fill: #DD4A54;
  }

  .seizen-intro__anchor-link a:hover {
    background-color: #159947;
    color: #fff;
    opacity: 1;
  }

  .souzoku-tooltip__bubble a:hover {
    opacity: 1;
    text-decoration: underline;
  }

  .advantages__link:hover {
    opacity: 1;
    text-decoration: underline;
  }

  .price__item a:hover {
    opacity: 1;
  }

  .price__item a:hover::after {
    opacity: 1;
  }

  .staff__media:hover {
    background-color: rgba(73, 178, 101, .1);
    opacity: 1;
  }

  .staff__media:hover .staff__media-img img {
    -webkit-transform: scale(1.1);
    transform: scale(1.1);
  }

}

@media screen and (min-width: 500px) {

  .firstViewV2 {
    height: calc(33.75rem - 4rem);
  }

  .firstViewV2__container {
    max-width: 31.25rem;
  }

}

@media screen and (min-width: 768px) {

  .u-desktop {
    display: block;
  }

  .u-mobile {
    display: none;
  }

  html {
    font-size: 1.568627451vw;
  }

  a[href^="tel:"] {
    pointer-events: none;
  }

  a:hover {
    opacity: 0.8;
  }

  .breadcrumb.inner {
    max-width: 73.4375rem;
    padding-right: 5rem;
  }

  [type=radio]+span {
    font-size: 1rem;
    line-height: 1.5;
    padding: 0 0 0 2.8125rem;
  }

  [type=radio]+span::before {
    height: 1.5625rem;
    top: 50%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    width: 1.5625rem;
  }

  [type=radio]:checked+span::after {
    height: 0.9375rem;
    left: 0.3125rem;
    top: 50%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    width: 0.9375rem;
  }

  .form__vertical [type=checkbox]+span {
    font-size: 1rem;
    line-height: 1.5;
    padding: 0 0 0 2.8125rem;
  }

  .form__vertical [type=checkbox]+span::before {
    height: 1.5625rem;
    top: 50%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    width: 1.5625rem;
  }

  .form__vertical [type=checkbox]:checked+span::after {
    height: 0.9375rem;
    left: 0.3125rem;
    top: 50%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    width: 0.9375rem;
  }

  textarea {
    height: 11.25rem;
  }

  .pagination__current {
    font-size: 1.625rem;
    height: 3.75rem;
    line-height: 1.1923076923;
    width: 3.75rem;
  }

  .pagination__prev,
  .pagination__next {
    height: 3.75rem;
    width: 3.75rem;
  }

  .pagination__arrow-img {
    aspect-ratio: 14/24;
    width: 0.8125rem;
  }

  .pagination__next {
    border-radius: 0 2.5rem 2.5rem 0;
  }

  .pagination__prev {
    border-radius: 2.5rem 0 0 2.5rem;
  }

  .archive__inner.inner {
    max-width: 73.4375rem;
    padding-right: 5rem;
  }

  .archive__container {
    margin-inline: auto;
    max-width: 64.75rem;
    padding: 0 1.25rem;
  }

  .archive__items {
    margin-top: 2.5rem;
  }

  .archive__pagination {
    margin-top: 4rem;
  }

  .archive__search-keyword {
    font-size: 1rem;
    letter-spacing: 0.02em;
    line-height: 1.5;
  }

  .button-round-02 {
    font-size: 1rem;
    line-height: 1.5;
  }

  .button-square {
    font-size: 1.125rem;
    line-height: 1.4444444444;
    max-width: 23.75rem;
    padding: 1rem 1.125rem 1rem 0;
  }

  .button-square.button-square--prev {
    padding: 1rem 0 1rem 1.125rem;
  }

  .button-square span::after {
    height: 0.875rem;
    right: -1.125rem;
    width: 0.5rem;
  }

  .button-square.button-square--prev span::after {
    left: -1.125rem;
  }

  .card-list {
    gap: 1.25rem;
    grid-template-columns: repeat(3, 1fr);
  }

  .card-list__item-text {
    margin-top: 0.9375rem;
  }

  .single-blog__content .card-supervisor {
    margin-top: 4rem;
    padding: 2.5rem 4rem;
  }

  .single-blog__content .card-supervisor__media {
    -moz-column-gap: 1.5rem;
    -webkit-column-gap: 1.5rem;
    column-gap: 1.5rem;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
    margin-top: 2.5rem;
  }

  .single-blog__content .card-supervisor__image {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 11.25rem;
    flex: 0 0 11.25rem;
  }

  .cta {
    bottom: 0.5rem;
    right: 5rem;
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }

  .cta__close {
    font-size: 0.75rem;
    height: 1.125rem;
    width: 1.125rem;
  }

  .cta__button {
    row-gap: 0.5rem;
    min-width: 16.25rem;
    width: min(16.25rem, 20.3125vw);
  }

  .cta__text {
    font-size: 1rem;
  }

  .cta__form {
    border-radius: 1rem;
    font-size: 0.9375rem;
    padding: 0.4375rem 1.75rem;
  }

  .cta__form::before {
    height: 0.625rem;
    right: 1rem;
    width: 0.625rem;
  }

  .cta__tel {
    font-size: 1.75rem;
  }

  .cta__tel::before {
    height: 1.25rem;
    top: 55%;
    width: 2.125rem;
  }

  .follow-links {
    row-gap: 0.625rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    position: fixed;
    right: 0;
    top: clamp(5.625rem, 16.25vh, 8.125rem);
    z-index: 999;
  }

  .footer {
    margin-top: 7.5rem;
  }

  .footer__top-inner.inner {
    -webkit-box-align: stretch;
    -ms-flex-align: stretch;
    align-items: stretch;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
    max-width: 73.75rem;
    padding: 0 5rem;
  }

  .footer__top-left {
    -webkit-box-flex: 1;
    -ms-flex: 1 1 28.75rem;
    flex: 1 1 28.75rem;
  }

  .footer__address {
    font-size: min(1.5625vw, 1.25rem);
    line-height: 1.6;
    margin-top: 1rem;
  }

  .footer__note {
    font-size: min(1.171875vw, 0.9375rem);
  }

  .footer__top-right {
    -webkit-box-flex: 1;
    -ms-flex: 1 1 29.6875rem;
    flex: 1 1 29.6875rem;
  }

  .footer__map {
    aspect-ratio: unset;
    height: 100%;
  }

  .footer__middle {
    margin-top: 7.5rem;
    padding: 3.5rem;
  }

  .footer__middle-inner::after {
    top: 0;
    width: calc(100% + 6.875rem);
  }

  .footer__middle-upper {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
  }

  .footer__middle-site-name {
    font-size: 1.25rem;
    line-height: 1.6;
  }

  .footer__nav {
    font-size: 1rem;
    line-height: 2;
  }

  .footer__nav-2col {
    gap: 6.25rem;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
    padding-left: 0;
  }

  .footer__middle-bottom {
    padding-left: 0;
  }

  .footer__link-items {
    row-gap: 0.625rem;
    font-size: 1rem;
    line-height: 2;
    padding-left: 18.75rem;
  }

  .footer__sns-items {
    -moz-column-gap: 1.25rem;
    -webkit-column-gap: 1.25rem;
    column-gap: 1.25rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    position: absolute;
    right: 0;
    top: 1.5rem;
  }

  .footer__bottom {
    height: 8.125rem;
  }

  .footer__copyright {
    font-size: 0.8125rem;
    letter-spacing: 0.04em;
    line-height: 2.4615384615;
  }

  .heading-02 {
    font-size: 1.625rem;
    line-height: 1.4230769231;
  }

  .heading-02::after {
    max-width: 12.5rem;
    width: 19.6078431373%;
  }

  .heading-03 {
    font-size: 1.25rem;
    line-height: 1.45;
    padding: 0.5rem 1.25rem;
  }

  .heading-04 {
    font-size: 1.25rem;
    line-height: 1.45;
    padding: 0.5rem 1.25rem;
  }

  .heading-05 {
    font-size: 1.375rem;
    line-height: 1.4545454545;
    padding: 0.5rem 1.25rem;
  }

  .heading-05::after {
    height: 3.75rem;
  }

  .heading-06 {
    font-size: 1.25rem;
    line-height: 1.45;
    min-width: 23.4375rem;
  }

  .heading-06.heading-06--yellow {
    font-size: clamp(1.0625rem, 1.5625vw, 1.25rem);
    line-height: 1.45;
  }

  .heading {
    font-size: 2.25rem;
    letter-spacing: 0.02em;
    line-height: 1.4444444444;
  }

  .heading__en {
    font-size: 1.625rem;
    letter-spacing: 0.02em;
    line-height: 1.1923076923;
    margin-top: 0.625rem;
  }

  .heading.heading--left {
    margin-inline: unset;
    text-align: left;
  }

  .heading.heading--left>span>span {
    text-align: left;
  }

  .heading.heading--left-left {
    margin-inline: unset;
    text-align: left;
  }

  .heading-line {
    padding-bottom: 1rem;
  }

  .heading-line::after {
    max-width: 12.5rem;
    width: 19.6078431373%;
  }

  .inner {
    max-width: 1070px;
    padding-left: 25px;
    padding-right: 25px;
  }

  .list-items__item a {
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
    padding: 1.5rem 0.5rem 1.5rem 0;
  }

  .list-items__item.list-items__item--archive a {
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
  }

  .list-items__item.list-items__item--archive .list-items__item-meta {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
    -ms-flex-direction: row-reverse;
    flex-direction: row-reverse;
  }

  .list-items__item-category,
  .list-items__item-tag {
    font-size: 1.125rem;
    letter-spacing: 0.02em;
    line-height: 1.4444444444;
    min-width: 7.5rem;
    padding: 0.25rem 0.125rem;
  }

  .list-items__item-date {
    font-size: 1rem;
    letter-spacing: 0.02em;
    line-height: 1.5;
  }

  .list-items__item-title {
    font-size: 1rem;
    letter-spacing: 0.02em;
    line-height: 1.5;
  }

  .list-items--search .list-items__item-title {
    font-size: 1rem;
    letter-spacing: 0.02em;
    line-height: 1.5;
  }

  .list-items--search .list-items__item-excerpt {
    -webkit-line-clamp: 3;
    font-size: 1rem;
    letter-spacing: 0.02em;
    line-height: 1.5;
  }

  .margin-bottom__40-120 {
    margin-bottom: 7.5rem;
  }

  .margin-bottom__40-80 {
    margin-bottom: 5rem;
  }

  .margin-bottom__20-40 {
    margin-bottom: 2.5rem;
  }

  .margin-top__8-16 {
    margin-top: 1rem;
  }

  .margin-top__10-30 {
    margin-top: 1.875rem;
  }

  .margin-top__16-8 {
    margin-top: 0.5rem;
  }

  .margin-top__16-24 {
    margin-top: 1.5rem;
  }

  .margin-top__16-32 {
    margin-top: 2rem;
  }

  .margin-top__30-8 {
    margin-top: 0.5rem;
  }

  .margin-top__24-16 {
    margin-top: 1rem;
  }

  .margin-top__24-32 {
    margin-top: 2rem;
  }

  .margin-top__24-40 {
    margin-top: 2.5rem;
  }

  .margin-top__24-60 {
    margin-top: 3.75rem;
  }

  .margin-top__32-0 {
    margin-top: 0;
  }

  .margin-top__40-36 {
    margin-top: 2.25rem;
  }

  .margin-top__40-80 {
    margin-top: 5rem;
  }

  .margin-top__40-120 {
    margin-top: 7.5rem;
  }

  .margin-top__64-70 {
    margin-top: 4.375rem;
  }

  .margin-top__80-120 {
    margin-top: 7.5rem;
  }

  .margin-top__100-120 {
    margin-top: 7.5rem;
  }

  .page-to-top {
    bottom: 0.25rem;
  }

  .parallelogram {
    -webkit-box-shadow: 6px 6px 10px 2px rgba(47, 47, 47, .2);
    box-shadow: 6px 6px 10px 2px rgba(47, 47, 47, .2);
  }

  .tel__lead {
    font-size: 1.25rem;
    line-height: 1.6;
  }

  .tel__number {
    padding-left: 6.125rem;
  }

  .tel__number::before {
    height: 2.5rem;
    width: 4.375rem;
  }

  .tel__time {
    font-size: min(1.5625vw, 1.25rem);
    line-height: 1.6;
    margin-top: 0.5rem;
    text-align: left;
  }

  .tel__time.tel__time--small {
    font-size: min(1.09375vw, 0.875rem);
    line-height: 2.2857142857;
    margin-top: 0;
    text-align: left;
  }

  .tel__time.tel__time--small-center {
    font-size: min(1.09375vw, 0.875rem);
    line-height: 2.2857142857;
    margin-top: 0;
  }

  .text-page__inner.inner,
  .text-page__wrapper.inner {
    max-width: 73.4375rem;
    padding-right: 5rem;
  }

  .text-page__container {
    margin-top: 2.5rem;
    padding: 2.5rem 0 4rem 3.125rem;
  }

  .text-page__box {
    padding: 2.5rem 3rem;
  }

  .text-page__item-text {
    margin-top: 1.5rem;
    padding-left: 3.5rem;
  }

  .text-page__item-text.text-page__item-text--pl24 {
    padding-left: 1.5rem;
  }

  .text-page__items {
    row-gap: 2.5rem;
  }

  .text-page__item>.text-page__list,
  .text-page__item>.text-page__order-list {
    margin-top: 1.5rem;
    padding-left: 3.5rem;
  }

  #guideline .text-page__items {
    row-gap: 2.5rem;
  }

  #guideline .text-page__item>.text-page__order-list {
    row-gap: 1.5rem;
  }

  .text-page__order-list {
    row-gap: 1.5rem;
  }

  .text-page__link {
    margin-top: 2.5rem;
  }

  .text__13-18 {
    font-size: 1.125rem;
    letter-spacing: 0.02em;
    line-height: 1.5555555556;
  }

  .drawer-icon {
    display: none;
  }

  .header {
    height: 6.25rem;
  }

  .header__inner.inner {
    padding-left: min(1.5625vw, 1.25rem);
    padding-right: 0;
  }

  .header__logo {
    -webkit-box-flex: 0;
    -ms-flex: 0 1 23.75rem;
    flex: 0 1 23.75rem;
  }

  .header__right {
    display: none;
  }

  .header__pc-menu {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }

  .magazine-page__inner.inner {
    max-width: 73.4375rem;
    padding-right: 5rem;
  }

  .magazine-page__container {
    margin-top: 5rem;
    padding: 0 0.5rem 2.5rem 3.125rem;
  }

  .magazine-page__text-box {
    font-size: 1rem;
    line-height: 1.5;
  }

  .magazine-page__form-wrapper {
    margin-top: 5rem;
  }

  .not-found__inner::after {
    width: clamp(15rem, 49.21875vw, 39.375rem);
  }

  .not-found__container {
    aspect-ratio: 1/1;
    width: clamp(15rem, 49.21875vw, 39.375rem);
  }

  .not-found__container::before,
  .not-found__container::after {
    height: min(18.75vw, 15rem);
    top: 40%;
    width: min(18.75vw, 15rem);
  }

  .not-found__container::before {
    left: unset;
    right: 90%;
  }

  .not-found__container::after {
    left: 90%;
    right: unset;
  }

  .not-found__title {
    font-size: 9.375rem;
    line-height: 1.2;
  }

  .not-found__text-en {
    font-size: 2.25rem;
    line-height: 1.1944444444;
  }

  .not-found__text-jp {
    font-size: 1.125rem;
    line-height: 1.4444444444;
    margin-top: 2.5rem;
  }

  .not-found__link {
    margin-top: 3.5rem;
  }

  .partnership::before {
    top: 50%;
    width: 37.1875rem;
  }

  .partnership__decoration-upper,
  .partnership__decoration-bottom {
    height: 4.0625rem;
  }

  .partnership__decoration-upper {
    background: url(../images/top/partner-upper-wave-deco-pc.svg) center/contain repeat;
  }

  .partnership__decoration-bottom {
    background: url(../images/top/partner-bottom-wave-deco-pc.svg) center/contain repeat;
  }

  .partnership__heading {
    font-size: 1.75rem;
  }

  .partnership__heading::after {
    height: 1.5625rem;
    max-width: 45rem;
  }

  .partnership__imageArea {
    -moz-column-gap: 2rem;
    -webkit-column-gap: 2rem;
    column-gap: 2rem;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
    margin-top: 3rem;
    padding-right: 5.3125rem;
  }

  .partnership_image {
    -webkit-box-flex: 1;
    -ms-flex: 1 0 15rem;
    flex: 1 0 15rem;
  }

  .partnership__text {
    margin-top: 2.5rem;
  }

  .price-page__inner.inner,
  .price-page__wrapper.inner {
    max-width: 73.4375rem;
    padding-right: 5rem;
  }

  .price-page__container {
    margin-top: 2.5rem;
    padding: 2.5rem 0.5rem 4rem 3.125rem;
  }

  .price-page__note {
    margin-top: 0;
  }

  .access-page {
    padding-bottom: 5rem;
  }

  .access-page::before,
  .access-page::after {
    content: "";
    opacity: 0.4;
    position: absolute;
    z-index: -1;
  }

  .access-page::before {
    background: url(../images/access/access-bg-s.png) no-repeat center center/contain;
    height: 27.0625rem;
    left: -2.5rem;
    top: 31%;
    width: 13.875rem;
  }

  .access-page::after {
    background: url(../images/access/access-bg-l.png) no-repeat center center/contain;
    height: 71.1875rem;
    right: 0;
    top: 40%;
    width: 56.375rem;
  }

  .access-page__inner.inner,
  .access-page__wrapper.inner {
    max-width: 73.4375rem;
    padding-right: 5rem;
  }

  .access__google-map {
    margin-top: 4rem;
    max-width: 73.4375rem;
    padding-left: 1.5625rem;
    padding-right: 5rem;
  }

  .access__google-map iframe {
    aspect-ratio: 1070/543;
  }

  .access__map-image {
    margin-top: 5rem;
    max-width: 73.4375rem;
    padding-left: 4.0625rem;
    padding-right: 5rem;
  }

  .access__map-image img {
    aspect-ratio: 1027/603;
  }

  .access-page__wrapper.inner {
    margin-top: 4rem;
    padding-left: 5rem;
  }

  .blog-archive__inner.inner {
    max-width: 73.4375rem;
    padding-right: 5rem;
  }

  .blog-archive__container {
    margin-top: 4rem;
  }

  .blog-archive__items {
    gap: 3.9375rem 1rem;
    grid-template-columns: repeat(3, 1fr);
  }

  .single-blog__inner.inner {
    max-width: 73.4375rem;
    padding-right: 5rem;
  }

  .single-blog__title {
    margin-top: 5rem;
  }

  .single-blog__meta {
    margin-top: 4rem;
  }

  .single-blog__date {
    font-size: 1rem;
    letter-spacing: 0.02em;
    line-height: 1.5;
  }

  .single-blog__category a {
    font-size: 1.125rem;
    letter-spacing: 0.02em;
    line-height: 1.4444444444;
    min-width: 7.5rem;
    padding: 0.25rem 0.125rem;
  }

  .single-blog__content h2 {
    font-size: 1.25rem;
    line-height: 1.45;
    margin-top: 2.5rem;
    padding: 0.625rem 0 0.625rem 1.25rem;
  }

  .single-blog__content h3 {
    font-size: 1.25rem;
    margin-top: 2.5rem;
  }

  .single-blog__content h4 {
    font-size: 1.125rem;
  }

  .single-blog__content p {
    letter-spacing: 0.02em;
    line-height: 1.875;
    margin-top: 1.25rem;
  }

  .single-blog__content ul {
    margin-top: 1.5rem;
  }

  .single-blog__content ul li {
    letter-spacing: 0.02em;
    line-height: 1.25;
  }

  .single-blog__content ol {
    margin-top: 1.5rem;
  }

  .single-blog__content ol li {
    letter-spacing: 0.02em;
    line-height: 1.25;
  }

  .single-blog__content figure {
    margin-top: 2rem;
  }

  .single-blog__content .faq-list {
    margin-top: 2.5rem;
  }

  .single-blog__content .faq-list__question {
    font-size: 1.5rem;
    font-weight: 600;
    letter-spacing: 0.02em;
    line-height: 1.5;
    padding: 0.75rem 6.5rem;
  }

  .single-blog__content .faq-list__question span {
    font-size: 1.875rem;
    left: 3rem;
    line-height: 1.2;
  }

  .single-blog__content .faq-list__question::before,
  .single-blog__content .faq-list__question::after {
    width: 2rem;
  }

  .single-blog__content .faq-list__answer {
    padding: 0 1.5rem;
  }

  .single-blog__content .faq-list__answer-text-box {
    font-size: 1rem;
    line-height: 1.5;
    margin: 0.625rem 0;
    padding: 1.5rem;
  }

  .single-blog__link {
    margin-top: 4rem;
  }

  .single-blog__sub-contents.inner {
    -moz-column-gap: 2.5rem;
    -webkit-column-gap: 2.5rem;
    column-gap: 2.5rem;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    margin-top: 4rem;
    max-width: 73.4375rem;
    padding-right: 5rem;
  }

  .single-blog__other-article {
    -webkit-box-flex: 0;
    -ms-flex: 0 1 26rem;
    flex: 0 1 26rem;
  }

  .single-blog__sub-content-title {
    font-size: 1rem;
    letter-spacing: 0.02em;
    line-height: 1.5;
  }

  .single-blog__category-list {
    -webkit-box-flex: 0;
    -ms-flex: 0 1 16rem;
    flex: 0 1 16rem;
  }

  .book-media {
    -moz-column-gap: 5rem;
    background-color: #F9F7F2;
    -webkit-column-gap: 5rem;
    column-gap: 5rem;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    padding: 2rem 0;
  }

  .book-media__image {
    margin-inline: unset;
    -webkit-box-flex: 0;
    -ms-flex: 0 0 11.6875rem;
    flex: 0 0 11.6875rem;
    margin-left: 1.875rem;
  }

  .book-media__text-area {
    -webkit-box-flex: 0;
    -ms-flex: 0 1 23.75rem;
    flex: 0 1 23.75rem;
  }

  .book-media__link {
    margin-inline: unset;
    font-size: 1.125rem;
    line-height: 1.4444444444;
    margin-top: 2rem;
    max-width: 23.75rem;
    padding: 1rem 1.125rem 1rem 0;
  }

  .book-media__link.book-media__link--mt24-16 {
    margin-top: 1rem;
  }

  .book-media__link-arrow {
    display: block;
  }

  .book-media__link-large {
    display: inline-block;
    font-size: 1.125rem;
    line-height: 1.4444444444;
    margin-top: unset;
  }

  .book-media__link-arrow::after {
    height: 0.875rem;
    right: -1.125rem;
    width: 0.5rem;
  }

  .book-page__inner.inner,
  .book-page__wrapper.inner {
    max-width: 73.4375rem;
    padding-right: 5rem;
  }

  .book-page__wrapper::after {
    display: none;
  }

  .book-page__sub-heading {
    margin-top: 5rem;
  }

  .book-page__text {
    margin-left: 1.5rem;
  }

  .book-page__wrapper {
    margin-top: 5rem;
    padding-bottom: 5rem;
    padding-top: 0;
  }

  .book-page__items {
    row-gap: 5rem;
    margin-left: 1.5rem;
  }

  .company-info {
    border-right: 1px solid #49B265;
  }

  .company-info__row {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
  }

  .company-info__term {
    -webkit-box-flex: 1;
    -ms-flex: 1 1 22.5rem;
    flex: 1 1 22.5rem;
    font-size: 1.375rem;
    line-height: 1.6363636364;
    padding: 2rem;
  }

  .company-info__description {
    -webkit-box-flex: 1;
    -ms-flex: 1 1 44.375rem;
    flex: 1 1 44.375rem;
    font-size: 1.375rem;
    line-height: 1.6363636364;
    padding: 2rem;
  }

  .company-page__inner.inner {
    max-width: 73.4375rem;
    padding-right: 5rem;
  }

  .company-page__wrapper.inner {
    margin-top: 2.5rem;
    max-width: 73.4375rem;
    padding: 5rem 5.5rem 4rem 1.5625rem;
    padding-right: 5rem;
  }

  .contact-page__inner.inner {
    max-width: 73.4375rem;
    padding-right: 5rem;
  }

  .contact-page__tel-box {
    margin-inline: auto;
    background-color: unset;
    border: 1px solid #707070;
    display: grid;
    margin-top: 3.75rem;
    max-width: 50rem;
    padding: 3.75rem 1.25rem;
    place-items: center;
  }

  .contact-page__tel-box::after {
    display: none;
  }

  .contact-page__body {
    margin-top: 8.75rem;
  }

  .contact-page__body-text {
    font-size: 1rem;
    line-height: 1.5;
  }

  .contact-page__form-area {
    margin-top: 3rem;
    padding: 7rem 0 3.75rem;
  }

  .contact-page__form {
    padding: 5.625rem min(6.875vw, 5.5rem) 3.75rem;
  }

  .contact-page__thanks {
    margin-top: 5rem;
    padding: 2.5rem 2.5rem 4rem;
  }

  .contact-page__thanks-heading {
    font-size: 1.625rem;
    line-height: 1.4230769231;
  }

  .contact-page__thanks-lead,
  .contact-page__magazine-thanks-lead {
    font-size: 1.125rem;
    line-height: 1.4444444444;
    margin-top: 2.5rem;
    padding: 0 min(11.71875vw, 9.375rem);
    position: relative;
  }

  .contact-page__thanks-lead::before,
  .contact-page__thanks-lead::after {
    content: "";
    height: min(11.71875vw, 9.375rem);
    position: absolute;
    top: -2.25rem;
    width: min(11.71875vw, 9.375rem);
  }

  .contact-page__thanks-lead::before {
    background: url(../images/character/thanks-character-image01.png) no-repeat center/contain;
    left: 0;
  }

  .contact-page__thanks-lead::after {
    background: url(../images/character/thanks-character-image02.png) no-repeat center/contain;
    right: 0;
  }

  .contact-page__thanks-text {
    font-size: 1rem;
    line-height: 1.5;
    margin-top: 2.5rem;
    text-align: center;
  }

  .form dl {
    row-gap: 2.5rem;
  }

  .form__heading {
    font-size: 1.125rem;
    line-height: 1.4444444444;
    margin-top: 0.3125rem;
    max-width: 16.25rem;
  }

  .form dd {
    padding-left: 2.5rem;
  }

  .form__placeholder {
    font-size: 1rem;
  }

  .form__buttonWrapper {
    -moz-column-gap: 1.25rem;
    -webkit-column-gap: 1.25rem;
    column-gap: 1.25rem;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
    margin-top: 2.5rem;
  }

  .form__button {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 23.75rem;
    flex: 0 0 23.75rem;
    max-width: unset;
    width: 100%;
  }

  #confirm .form__button {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 12.5rem;
    flex: 0 0 12.5rem;
  }

  .form__text {
    font-size: 1rem;
    line-height: 1.5;
    margin-left: -2.5rem;
  }

  .form__vertical.form__vertical--counseling-detail .wpcf7-form-control-wrap {
    margin-top: 1.5rem;
  }

  .form__vertical.form__vertical--counseling-detail .wpcf7-free-text {
    margin-top: 1rem;
    max-width: 38.125rem;
  }

  .form__desired {
    -moz-column-gap: 1rem;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-column-gap: 1rem;
    column-gap: 1rem;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
  }

  .form__desired+.form__desired {
    margin-top: 1.25rem;
  }

  .form__desired p {
    font-size: 1rem;
    line-height: 1.5;
    margin-left: 2.5rem;
  }

  .form__optional-items dt {
    font-size: 1.125rem;
    line-height: 1.4444444444;
    margin-left: 2.5rem;
  }

  .form__gender .wpcf7-radio {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
  }

  .form__optional-items .form__birthday dd {
    -moz-column-gap: 1.25rem;
    -webkit-column-gap: 1.25rem;
    column-gap: 1.25rem;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
  }

  .form__privacy-text {
    font-size: 0.875rem;
    line-height: 1.4285714286;
    margin-top: 2.5rem;
  }

  .form__privacy .wpcf7-form-control-wrap {
    padding-right: 5rem;
  }

  .event-item {
    padding: 2.5rem;
  }

  .event-item__title {
    font-size: 1.25rem;
    line-height: 1.45;
  }

  .event-item__description {
    font-size: 1.125rem;
    font-weight: 500;
    letter-spacing: 0.02em;
    line-height: 1.5555555556;
  }

  .event-item__bottom {
    font-size: 1.125rem;
    font-weight: 500;
    letter-spacing: 0.02em;
    line-height: 1.5555555556;
    margin-top: 4rem;
  }

  .event-item__bottom::after {
    top: -2rem;
  }

  .single-event__inner.inner {
    max-width: 73.4375rem;
    padding-right: 5rem;
  }

  .single-event__page-title {
    margin-top: 5rem;
  }

  .single-event__contents {
    padding-left: min(3.90625vw, 3.125rem);
  }

  .single-event__meta {
    margin-top: 4rem;
  }

  .single-event__date {
    font-size: 1rem;
    letter-spacing: 0.02em;
    line-height: 1.5;
  }

  .single-event__category a,
  .single-event__tag a {
    font-size: 1.125rem;
    letter-spacing: 0.02em;
    line-height: 1.4444444444;
    min-width: 7.5rem;
    padding: 0.25rem 0.125rem;
  }

  .single-event__head p {
    letter-spacing: 0.02em;
    line-height: 1.875;
  }

  .single-event__head ul {
    margin-top: 1.5rem;
  }

  .single-event__head ul li {
    letter-spacing: 0.02em;
    line-height: 1.25;
  }

  .single-event__head ol {
    margin-top: 1.5rem;
  }

  .single-event__head ol li {
    letter-spacing: 0.02em;
    line-height: 1.25;
  }

  .single-event__head figure {
    margin-top: 2rem;
  }

  .single-event__body {
    background-color: #F8F8F8;
    padding: 1.875rem 1.25rem;
  }

  .single-event__body::after {
    display: none;
  }

  .single-event__items {
    row-gap: 2.5rem;
  }

  .single-event__footer {
    background-color: #F9F7F2;
    margin-top: 4rem;
    padding: 2.5rem 3.75rem;
  }

  .single-event__footer::after {
    display: none;
  }

  .single-event__footer-heading {
    font-size: 1.25rem;
    line-height: 1.45;
  }

  .single-event__overview {
    row-gap: 1.5rem;
    font-size: 1.125rem;
    font-weight: 500;
    letter-spacing: 0.02em;
    line-height: 1.5555555556;
  }

  .single-event__overview-row {
    gap: 1.5rem;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
  }

  .single-event__cta-area {
    margin-top: 5rem;
  }

  .single-event__cta-area::after {
    top: -2.5rem;
  }

  .single-event__cta-link-box,
  .single-event__cta-tel-box {
    margin-inline: auto;
    background-color: #fff;
    max-width: 41.25rem;
  }

  .single-event__cta-link-box {
    margin-top: 2.5rem;
    padding: 1.25rem;
  }

  .single-event__footer-cta-note {
    font-size: 1.125rem;
    line-height: 1.5555555556;
  }

  .single-event__footer-cta-note::before {
    margin-right: 1.25rem;
  }

  .single-event__footer-cta-note::after {
    margin-left: 1.25rem;
  }

  .single-event__cta-tel-box {
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
  }

  .single-event__link {
    margin-top: 4rem;
  }

  .faq-item__question {
    font-size: 1.5rem;
    font-weight: 600;
    letter-spacing: 0.02em;
    line-height: 1.5;
    padding: 0.75rem 6.5rem;
  }

  .faq-item__question span {
    font-size: 1.875rem;
    left: 3rem;
    line-height: 1.2;
  }

  .faq-item__question::before,
  .faq-item__question::after {
    width: 2rem;
  }

  .faq-item__answer {
    padding: 0 1.5rem;
  }

  .faq-item__answer-text-box {
    font-size: 1rem;
    line-height: 1.5;
    margin: 0.625rem 0;
    padding: 1.5rem;
  }

  .faq-page {
    margin-bottom: 5rem;
  }

  .faq-page__inner.inner {
    max-width: 73.4375rem;
    padding-right: 5rem;
  }

  .faq-page__content-wrapper {
    margin-top: 5rem;
    padding-bottom: 14.375rem;
  }

  .faq-page__content-wrapper::before,
  .faq-page__content-wrapper::after {
    bottom: 0;
    height: min(11.71875vw, 9.375rem);
    width: min(11.71875vw, 15093.75rem);
  }

  .faq-page__content+.faq-page__content {
    margin-top: 5rem;
  }

  .faq-page__faq-items {
    gap: 2rem;
    margin-top: 2.5rem;
  }

  .flow-items {
    row-gap: 1.5rem;
  }

  .flow-items__item {
    background-color: rgba(73, 178, 101, .1);
    padding: 2.5rem min(12.890625vw, 10.3125rem) 2.5rem min(3.125vw, 2.5rem);
  }

  .flow-items__head::after {
    right: 0;
    top: 75%;
    width: 90%;
  }

  .flow-items__number {
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
    font-size: 1rem;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    line-height: 1;
    padding-top: 0;
  }

  .flow-items__number span::after {
    display: inline;
    font-size: 2rem;
    line-height: 1;
    margin-left: 0.25rem;
    margin-top: 0;
  }

  .flow-items__title {
    font-size: 1.25rem;
    line-height: 1.45;
  }

  .flow-items__title .red {
    display: inline;
  }

  .flow-items__title .green {
    display: inline;
  }

  .flow-items__body {
    padding-left: clamp(5.125rem, 27.2vw, 9.5rem);
  }

  .flow-items__link-box {
    margin-inline: auto;
    max-width: 41.25rem;
    padding: 1.5rem 0 2rem;
  }

  .flow-items__link-box--contact::before {
    height: min(18.75vw, 15rem);
    right: max(-3.75vw, -3rem);
    top: 1rem;
    width: min(14.84375vw, 11.875rem);
  }

  .flow-items__link-text-note {
    font-size: 1.125rem;
    line-height: 1.5555555556;
  }

  .flow-items__link-text-note::before {
    margin-right: 1.25rem;
  }

  .flow-items__link-text-note::after {
    margin-left: 1.25rem;
  }

  .flow-items__link-text {
    font-size: 1.125rem;
    line-height: 1.5555555556;
  }

  .flow-items__tel-text {
    font-size: 1rem;
    letter-spacing: 0.02em;
    line-height: 1.75;
    text-align: center;
  }

  .flow-items__tel-text.flow-items__tel-text--red {
    margin-inline: auto;
    font-size: 0.875rem;
    max-width: 32.5rem;
  }

  .flow-items__image-area {
    margin-top: 1.5rem;
  }

  .flow-page__flow.inner {
    max-width: 73.4375rem;
    padding-right: 5rem;
  }

  .flow-page__contents {
    padding: 0;
  }

  .flow-page__contents::after {
    display: none;
  }

  .flow-page__contact.inner {
    max-width: 73.4375rem;
    padding-right: 5rem;
  }

  .flow-page__body {
    margin-top: 8.75rem;
  }

  .flow-page__body-text {
    font-size: 1rem;
    line-height: 1.5;
    margin-top: 3.75rem;
  }

  .flow-page__form-area {
    margin-top: 3rem;
    padding: 7rem 0 3.75rem;
  }

  .flow-page__form {
    padding: 5.625rem min(6.875vw, 5.5rem) 3.75rem;
  }

  .lp-cta01 {
    background-image: url("../images/lp/lp-cta01-bg-pc.webp");
    padding: 9.1875rem 0 5rem;
  }

  .parallelogram.lp-cta01__head {
    border-width: 0.125rem;
    padding: 0 6.4375rem;
  }

  .parallelogram.lp-cta01__head p {
    font-size: 2rem;
  }

  .lp-cta01__text {
    max-width: 63rem;
    text-align: center;
    width: 100%;
  }

  .lp-cta01__text::before {
    height: 8.75rem;
    top: -9.25rem;
    width: 8.75rem;
  }

  .lp-cta01__text p {
    font-size: 3rem;
  }

  .lp-cta01__main {
    max-width: 34.375rem;
  }

  .lp-cta01__main::before {
    height: 5.4375rem;
    width: 4rem;
  }

  .lp-cta01__main::after {
    height: 5.4375rem;
    width: 4rem;
  }

  .lp-cta01__main-text {
    margin-top: 1rem;
  }

  .lp-cta01__main-text::before {
    border-radius: 20%;
    filter: url('data:image/svg+xml;charset=utf-8,<svg xmlns="http://www.w3.org/2000/svg"><filter id="filter"><feGaussianBlur stdDeviation="30" /></filter></svg>#filter');
    -webkit-filter: blur(30px);
    filter: blur(30px);
    max-width: 73.75rem;
    opacity: 0.9;
    width: 80vw;
  }

  .lp-cta01__main-text h3 {
    font-size: 2rem;
  }

  .lp-cta01__main-text h3 .strong {
    font-size: 5rem;
  }

  .lp-cta01__main-text .note {
    font-size: 1rem;
  }

  .lp-cta01__contact-btn {
    margin-top: 3.4375rem;
    max-width: 29.625rem;
  }

  .lp-cta01__contact-btn .button-round {
    font-size: 1.625rem;
    max-width: 100%;
    padding: 1rem 0;
  }

  .lp-cta02 {
    background-image: none;
    margin-top: 5rem;
    padding: 4rem 0;
    position: relative;
  }

  .lp-cta02::before {
    inset: 0;
    -webkit-mask-image: -webkit-gradient(linear, left top, left bottom, from(rgba(0, 0, 0, 0)), color-stop(5%, #000));
    -webkit-mask-image: linear-gradient(to bottom, rgba(0, 0, 0, 0) 0%, #000 5%);
    -webkit-mask-repeat: no-repeat;
    -webkit-mask-size: 100% 100%;
    background-image: url("../images/lp/lp-cta02-bg-pc.webp");
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    content: "";
    mask-image: -webkit-gradient(linear, left top, left bottom, from(rgba(0, 0, 0, 0)), color-stop(5%, #000));
    mask-image: linear-gradient(to bottom, rgba(0, 0, 0, 0) 0%, #000 5%);
    mask-repeat: no-repeat;
    mask-size: 100% 100%;
    position: absolute;
    z-index: -1;
  }

  .lp-cta02__upper-content {
    padding-bottom: 2rem;
  }

  .lp-cta02__text p {
    font-size: 1.75rem;
  }

  .lp-cta02__contact-btn {
    margin-top: 2rem;
    max-width: 29.625rem;
  }

  .lp-cta02__contact-btn .button-round {
    font-size: 1.625rem;
    max-width: 100%;
  }

  .lp-cta02__lower-content {
    gap: 1.5rem;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    padding-top: 2rem;
  }

  .parallelogram.lp-cta02__tel-title {
    margin: 0;
    padding: 0.5rem 2rem;
  }

  .parallelogram.lp-cta02__tel-title p {
    font-size: 1.375rem;
  }

  .lp-cta02__tel-number a {
    font-size: 4rem;
    line-height: 1.1;
  }

  .lp-cta02__info {
    padding-left: 0.625rem;
  }

  .lp-cta02__info p {
    font-size: 1.125rem;
  }

  .lp-faq {
    padding: 5rem 0;
  }

  .lp-faq__container {
    margin-inline: auto;
    max-width: 69.375rem;
  }

  .lp-firstView {
    -webkit-mask-image: -webkit-gradient(linear, left top, left bottom, color-stop(99%, rgb(0, 0, 0)), to(rgba(0, 0, 0, 0)));
    -webkit-mask-image: linear-gradient(to bottom, rgb(0, 0, 0) 99%, rgba(0, 0, 0, 0) 100%);
    background-image: url("../images/lp/lp-fv-bg.webp");
    mask-image: -webkit-gradient(linear, left top, left bottom, color-stop(99%, rgb(0, 0, 0)), to(rgba(0, 0, 0, 0)));
    mask-image: linear-gradient(to bottom, rgb(0, 0, 0) 99%, rgba(0, 0, 0, 0) 100%);
    padding-bottom: 0.375rem;
    padding-top: 6.5rem;
  }

  .lp-firstView__container {
    max-width: 90rem;
    padding: 0 5rem;
  }

  .lp-firstView__image {
    max-width: 29.25rem;
  }

  .lp-firstView__message {
    gap: 0.5rem;
  }

  .parallelogram.lp-firstView__text {
    padding: 0.1875rem 2.1875rem 0.3125rem;
  }

  .parallelogram.lp-firstView__text p {
    font-size: clamp(20px, 1.8vw, 26px);
  }

  .lp-firstView__main {
    gap: 1.875rem;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
    margin-top: 30px;
    margin-top: 1.875rem;
  }

  .lp-firstView__main-title {
    padding-bottom: 1.75rem;
  }

  .lp-firstView__main-title h2 {
    font-size: clamp(24px, 2.4vw, 42px);
    padding-left: 0;
    width: 100%;
  }

  .lp-firstView__main-title span {
    font-size: clamp(30px, 4vw, 64px);
  }

  .lp-firstView__main-title img {
    height: clamp(90px, 9vw, 160px);
    right: clamp(-100px, -5vw, -30px);
    width: clamp(90px, 9vw, 160px);
  }

  .lp-firstView__main-text {
    margin-top: clamp(24px, 2.7vw, 40px);
    max-width: 30.5rem;
    padding-left: 0;
  }

  .lp-firstView__main-image-item {
    max-width: clamp(400px, 42.9vw, 656px);
  }

  .lp-firstView__contact-btn {
    margin-inline: 0;
    margin-top: 0rem;
    max-width: 20rem;
  }

  .lp-firstView__contact-btn .button-round {
    border-radius: 3.125rem;
    font-size: 1.625rem;
  }

  .lp-flow {
    padding: 5rem 0;
  }

  .lp-flow__cards {
    gap: 3.125rem;
    grid-template-columns: repeat(3, 1fr);
    margin-top: 4rem;
  }

  .lp-flow__card-title {
    font-size: 1.375rem;
  }

  .lp-point {
    padding-bottom: 4.375rem;
    padding-top: 4rem;
  }

  .lp-point__container {
    margin-inline: auto;
    max-width: 67.5rem;
  }

  .lp-point__head {
    padding: 0.875rem 0.5rem 1rem 0.125rem;
  }

  .lp-point__head-icon {
    height: 4.875rem;
    width: 6.125rem;
  }

  .lp-point__main-title {
    font-size: 1.75rem;
  }

  .lp-point__main-title span {
    font-size: 3rem;
  }

  .lp-point__wrapper {
    border-radius: 0 0 1rem 1rem;
    padding: 2.5rem 3.25rem;
  }

  .lp-point__items {
    gap: 3rem 1rem;
    grid-template-columns: repeat(2, 1fr);
  }

  .lp-point__item {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }

  .lp-point__item-number {
    font-size: 3.5rem;
    top: -2.625rem;
  }

  .lp-point__item-wrapper {
    border-radius: 0.5rem;
  }

  .lp-point__item-title {
    font-size: 1.25rem;
    text-align: center;
  }

  .lp-point__item-text p {
    font-size: 1.125rem;
  }

  .lp-point__suggest--pc {
    background-color: #fff;
    border: 0.0625rem solid #49B264;
    border-radius: 1rem;
    display: block;
    margin-top: 0.5rem;
    padding: 3.25rem 0.5rem 2rem;
  }

  .parallelogram.lp-point__sub-title--pc {
    margin-inline: auto;
    background: -webkit-gradient(linear, left top, right top, from(#49B264), to(#4988B2));
    background: linear-gradient(to right, #49B264, #4988B2);
    -webkit-box-shadow: none;
    box-shadow: none;
    display: block;
    padding: 0.5rem 10.4375rem 0.3125rem;
    position: relative;
    text-align: center;
    top: 1.875rem;
  }

  .lp-price {
    padding: 4rem 0;
  }

  .lp-price__text {
    margin-top: 2rem;
    max-width: 100%;
    text-align: center;
  }

  .lp-price__text p {
    font-size: 1.125rem;
  }

  .lp-price__content {
    margin-inline: auto;
    margin-top: 2.5rem;
    max-width: 45rem;
    padding: 2.5rem 3.75rem 4rem;
  }

  .lp-price__upper-item {
    font-size: 1.5rem;
    padding-bottom: 2.5rem;
  }

  .lp-price__item-label--red {
    border-radius: 1.25rem;
    padding: 0.375rem 1rem 0.5rem;
  }

  .lp-price__upper-item .strong {
    font-size: 4.5rem;
  }

  .lp-price__lower-item {
    font-size: 1.375rem;
    padding-top: 1.75rem;
  }

  .lp-price__item-label--green {
    border-radius: 1.25rem;
    font-size: 1.5rem;
    padding: 0.375rem 1rem 0.5rem;
    top: 0.25rem;
  }

  .lp-price__lower-item .middle {
    font-size: 2.5rem;
    top: 0.375rem;
  }

  .lp-price__content-note {
    font-size: 1.125rem;
    margin-top: 1.5rem;
  }

  .lp-reason {
    padding: 5rem 0;
  }

  .lp-reason__head h3 {
    font-size: 2rem;
  }

  .lp-reason__card-container {
    margin-top: 4rem;
  }

  .lp-reason__cards {
    margin-inline: auto;
    gap: 2.5rem;
    grid-template-columns: repeat(3, 1fr);
    max-width: 1096px;
  }

  .lp-reason__card-title {
    font-size: 1.5rem;
  }

  .lp-section__head h3 {
    font-size: 2rem;
  }

  .lp-section__head h3 span {
    font-size: 1.5rem;
  }

  .lp-staff {
    background-image: url("../images/lp/lp-staff-bg-pc.webp");
    padding: 5rem 0;
  }

  .lp-staff__cards {
    gap: 2rem;
    grid-template-columns: repeat(3, 1fr);
    margin-top: 4rem;
  }

  .lp-staff__card-title {
    font-size: 1.375rem;
    line-height: 1.2;
  }

  .lp-staff__card-title span {
    font-size: 1.125rem;
  }

  .lp-worries {
    background-image: url("../images/lp/lp-worries-bg-pc.webp");
    margin-top: 3.375rem;
    padding-bottom: 4rem;
    padding-top: 2.625rem;
  }

  .lp-worries__heading {
    font-size: 2rem;
  }

  .lp-worries__heading span {
    font-size: 3rem;
  }

  .lp-worries__heading span::before {
    bottom: -0.5rem;
    height: 1.625rem;
  }

  .lp-worries__container::before {
    height: 13.75rem;
    right: -9.375rem;
    top: -7.25rem;
    width: 13.75rem;
  }

  .lp-worries-item-text {
    padding: 0.9375rem 1.875rem 0.9375rem 3.125rem;
  }

  .lp-worries-item-text::before {
    height: 1.5rem;
    left: 1.25rem;
    width: 1.5rem;
  }

  .lp-worries-item-text p {
    font-size: 1.125rem;
  }

  .single-news__inner.inner {
    max-width: 73.4375rem;
    padding-right: 5rem;
  }

  .single-news__title {
    margin-top: 5rem;
  }

  .single-news__meta {
    margin-top: 4rem;
    padding-left: min(3.90625vw, 3.125rem);
  }

  .single-news__date {
    font-size: 1rem;
    letter-spacing: 0.02em;
    line-height: 1.5;
  }

  .single-news__category a {
    font-size: 1.125rem;
    letter-spacing: 0.02em;
    line-height: 1.4444444444;
    min-width: 7.5rem;
    padding: 0.25rem 0.125rem;
  }

  .single-news__content {
    padding-left: min(3.90625vw, 3.125rem);
  }

  .single-news__content h2 {
    font-size: 1.625rem;
    line-height: 1.4230769231;
    margin-top: 3rem;
    padding: 0.5rem 0 0.5rem 1rem;
  }

  .single-news__content h3 {
    font-size: 1.5rem;
    margin-top: 5rem;
    padding: 0.625rem 0;
  }

  .single-news__content p {
    font-size: 1rem;
    letter-spacing: 0.02em;
    line-height: 1.875;
  }

  .single-news__content ul {
    margin-top: 1.5rem;
  }

  .single-news__content ul li {
    font-size: 1rem;
    letter-spacing: 0.02em;
    line-height: 1.25;
  }

  .single-news__content ol {
    margin-top: 1.5rem;
  }

  .single-news__content ol li {
    font-size: 1rem;
    letter-spacing: 0.02em;
    line-height: 1.25;
  }

  .single-news__content figure {
    margin-top: 2rem;
  }

  .single-news__link {
    margin-top: 4rem;
  }

  .ninchi-item01__text-area.inner {
    max-width: 73.4375rem;
    padding-right: 5rem;
  }

  .ninchi-item01__image-area01.inner {
    margin-top: 5rem;
    max-width: 73.4375rem;
    padding-bottom: 5rem;
    padding-right: 5rem;
    padding-top: 6.75rem;
  }

  .ninchi-item01__image-area02.inner {
    margin-top: 4rem;
    max-width: 73.4375rem;
    padding-bottom: 5rem;
    padding-right: 5rem;
    padding-top: 2.5rem;
  }

  .ninchi-item01__image-area02__image01 {
    aspect-ratio: 1098/359;
    max-width: 68.625rem;
    width: 100%;
  }

  .ninchi-item01__image-area02__image02 {
    aspect-ratio: 593/724;
    margin-top: 4rem;
    max-width: 37.0625rem;
    width: 100%;
  }

  .ninchi-item01__image-area03.inner {
    margin-top: 3.75rem;
    max-width: 73.4375rem;
    padding-right: 5rem;
  }

  .ninchi-item01__image-area03__image01 {
    aspect-ratio: 1020/1127;
    max-width: 63.75rem;
  }

  .ninchi-item01__image-area01::after,
  .ninchi-item01__image-area02::after {
    height: 100%;
  }

  .ninchi-item01__list-area {
    margin-top: 3.75rem;
  }

  .ninchi-item01__list-heading {
    font-size: 1.5rem;
    max-width: 37.5rem;
  }

  .ninchi-item01__list-heading::after {
    height: 1.875rem;
    width: 3.75rem;
  }

  .ninchi-media {
    -moz-column-gap: 2.5rem;
    -webkit-column-gap: 2.5rem;
    column-gap: 2.5rem;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
  }

  .ninchi-media::after {
    background-color: #E4E4E4;
    border-radius: 7.8125rem;
    height: 10rem;
  }

  .ninchi-media:not(:first-of-type)::before {
    height: 2.6875rem;
    top: 0;
    width: 8rem;
  }

  .ninchi-media__image-area {
    -webkit-box-flex: 0;
    -ms-flex: 0 1 17.9375rem;
    flex: 0 1 17.9375rem;
  }

  .ninchi-media__text-area {
    -webkit-box-align: stretch;
    -ms-flex-align: stretch;
    align-items: stretch;
    -webkit-box-flex: 0;
    -ms-flex: 0 1 20rem;
    flex: 0 1 20rem;
    -webkit-box-pack: end;
    -ms-flex-pack: end;
    justify-content: end;
  }

  .ninchi-media__btn {
    place-items: unset;
  }

  .ninchi-media__btn a,
  .ninchi-media__btn p {
    font-size: min(1.71875vw, 1.375rem);
    max-width: 15.625rem;
  }

  .ninchi-media__btn a svg {
    height: 1rem;
    width: 1rem;
  }

  .ninchi-item02__text-area.inner {
    max-width: 73.4375rem;
    padding-right: 5rem;
  }

  .ninchi-item02__image-area01.inner {
    margin-top: 2.5rem;
    max-width: 73.4375rem;
    padding-bottom: 5rem;
    padding-right: 5rem;
    padding-top: 5rem;
  }

  .ninchi-item02__image-area01::after,
  .ninchi-item02__image-area02::after {
    height: 100%;
  }

  .ninchi-item02__image02 {
    margin-top: 0.75rem;
  }

  .ninchi-item02__image-area02.inner {
    margin-top: 2.5rem;
    max-width: 73.4375rem;
    padding-bottom: 2.5rem;
    padding-right: 5rem;
    padding-top: 2.5rem;
  }

  .ninchi-item02__image02-heading {
    aspect-ratio: 593/78;
    max-width: 37.0625rem;
  }

  .ninchi-page__heading-container.inner {
    max-width: 73.4375rem;
    padding-right: 5rem;
  }

  .ninchi-page__item01 {
    margin-top: 5rem;
  }

  .ninchi-page__item02 {
    margin-top: 5rem;
  }

  .seizen-intro__head.inner {
    max-width: 73.4375rem;
    padding-right: 5rem;
  }

  .seizen-intro__title {
    margin-left: 1.5rem;
  }

  .seizen-intro__text {
    font-size: 1.125rem;
    letter-spacing: 0.02em;
    line-height: 1.5555555556;
    margin-left: 1.5rem;
    margin-top: 2.5rem;
  }

  .seizen-intro__body.inner {
    max-width: 73.4375rem;
    padding-bottom: 3.75rem;
    padding-right: 5rem;
  }

  .seizen-intro__body::after {
    height: calc(100% - 3.5rem);
  }

  .seizen-intro__point-title-container {
    aspect-ratio: 684/160;
    margin-inline: auto;
    margin-top: 4.5rem;
    width: clamp(25rem, 53.4375vw, 42.75rem);
  }

  .seizen-intro__point-title {
    font-size: min(1.71875vw, 1.375rem);
    line-height: 1;
    right: 10%;
  }

  .seizen-intro__point-title .strong {
    font-size: min(4.375vw, 3.5rem);
    line-height: 0.25;
  }

  .seizen-intro__point-title .fs17-36 {
    font-size: min(2.8125vw, 2.25rem);
    line-height: 0.3888888889;
  }

  .seizen-intro__point-items {
    row-gap: 2.25rem;
  }

  .seizen-intro__anchor-links {
    -moz-column-gap: 1.5rem;
    -webkit-column-gap: 1.5rem;
    column-gap: 1.5rem;
    margin-top: 2.5rem;
  }

  .seizen-intro__anchor-link {
    font-size: 1.125rem;
  }

  .seizen-intro__anchor-link a {
    padding: 0.5rem 2rem;
  }

  .seizen-page__inner.inner {
    max-width: 73.4375rem;
    padding-right: 5rem;
  }

  .seizen-page__intro {
    margin-top: 4rem;
  }

  .seizen-page__point01 {
    margin-top: 5rem;
  }

  .seizen-page__point02 {
    margin-top: 5rem;
  }

  .seizen-page__point03 {
    margin-top: 5rem;
  }

  .seizen-point-item {
    padding: 2.25rem 3rem 3.5rem 4.5rem;
  }

  .seizen-point-item__media {
    -moz-column-gap: min(4.53125vw, 3.625rem);
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
    -webkit-column-gap: min(4.53125vw, 3.625rem);
    column-gap: min(4.53125vw, 3.625rem);
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
  }

  .seizen-point-item__image-area {
    -webkit-box-flex: 1;
    -ms-flex: 1 1 23.125rem;
    flex: 1 1 23.125rem;
  }

  .seizen-point-item__title {
    aspect-ratio: 320/93;
    width: clamp(17.5rem, 28.90625vw, 23.125rem);
  }

  .seizen-point-item__title-number {
    font-size: clamp(1.8125rem, 3.125vw, 2.5rem);
    left: 12%;
    line-height: 0.2;
    top: 35%;
  }

  .seizen-point-item__title-text {
    font-size: clamp(1.125rem, 1.875vw, 1.5rem);
    line-height: 0.5833333333;
  }

  .seizen-point-item__image {
    margin-left: 2rem;
    margin-top: -2rem;
  }

  .seizen-point-item__text-area {
    -webkit-box-flex: 1;
    -ms-flex: 1 1 31.875rem;
    flex: 1 1 31.875rem;
    font-size: 1.125rem;
    letter-spacing: 0.02em;
    line-height: 1.5555555556;
  }

  .seizen-point-item__text+.seizen-point-item__text {
    margin-top: 1.5rem;
  }

  .seizen-point-item__link {
    margin-top: 1rem;
  }

  .seizen-point01__head.inner {
    max-width: 73.4375rem;
    padding-right: 5rem;
  }

  .seizen-point01__body.inner {
    margin-top: 5rem;
    max-width: 73.4375rem;
    padding-bottom: 5rem;
    padding-right: 5rem;
    padding-top: 6.75rem;
  }

  .seizen-point01__title-container {
    aspect-ratio: 290/86;
    margin-inline: unset;
  }

  .seizen-point01__body::after {
    height: 100%;
  }

  .seizen-point01__check-sheet {
    margin-top: 1rem;
  }

  .seizen-point01__check-man {
    right: 0;
    -webkit-transform: translate(0, -100%);
    transform: translate(0, -100%);
  }

  .seizen-point01__note-check {
    font-size: 1rem;
    margin-top: 1.5rem;
  }

  .seizen-point02__text-area.inner {
    max-width: 73.4375rem;
    padding-right: 5rem;
  }

  .seizen-point02__image-area01.inner {
    margin-top: 2.5rem;
    max-width: 73.4375rem;
    padding-bottom: 2.5rem;
    padding-right: 5rem;
    padding-top: 3.125rem;
  }

  .seizen-point02__image-area01::after {
    height: 100%;
  }

  .seizen-point02__image01 {
    aspect-ratio: 845/600;
    max-width: 52.8125rem;
  }

  .seizen-point02__example01.inner {
    margin-top: 2.5rem;
    max-width: 73.4375rem;
    padding-right: 5rem;
  }

  .seizen-point02__example01-text-image {
    aspect-ratio: 708/211;
    max-width: 44.25rem;
  }

  .seizen-point02__example01-image-wrapper.inner {
    max-width: 73.4375rem;
    padding-bottom: 4rem;
    padding-right: 5rem;
    padding-top: 4rem;
  }

  .seizen-point02__example01-image-wrapper::after {
    height: 100%;
  }

  .seizen-point02__example01-image {
    aspect-ratio: 948/280;
    max-width: 59.25rem;
  }

  .seizen-point02__example02.inner {
    margin-top: 2.5rem;
    max-width: 73.4375rem;
    padding-bottom: 2.5rem;
    padding-right: 5rem;
  }

  .seizen-point02__example02::after {
    height: calc(100% - 6.75rem);
  }

  .seizen-point02__example02-text-image {
    aspect-ratio: 593/158;
    max-width: 37.0625rem;
  }

  .seizen-point02__example02-image {
    aspect-ratio: 948/495;
    max-width: 59.25rem;
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }

  .seizen-point02__media {
    margin-inline: auto;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
    margin-top: 6.25rem;
    max-width: 59.25rem;
  }

  .seizen-point02__media-label-image {
    left: -1.5rem;
    top: -3rem;
  }

  .seizen-point02__media-list {
    border-radius: 1.25rem 0 0 1.25rem;
    -webkit-box-flex: 1;
    -ms-flex: 1 1 37rem;
    flex: 1 1 37rem;
    padding: 2.5rem 1.25rem 2.5rem 2.5rem;
  }

  .seizen-point02__media-list-item {
    font-size: 1.125rem;
    line-height: 1.4444444444;
  }

  .seizen-point02__media-list-item {
    font-size: 1.125rem;
    line-height: 1.4444444444;
  }

  .seizen-point02__media-note {
    border-radius: 0 1.25rem 1.25rem 0;
    -webkit-box-flex: 1;
    -ms-flex: 1 1 22.25rem;
    flex: 1 1 22.25rem;
    padding: 1.5rem 2rem;
  }

  .seizen-point02__media-note-text {
    font-size: 1rem;
    line-height: 1.5;
    margin-top: 2rem;
  }

  .seizen-point03__head.inner {
    max-width: 73.4375rem;
    padding-right: 5rem;
  }

  .seizen-point03__body.inner {
    margin-top: 5rem;
    max-width: 73.4375rem;
    padding-bottom: 5rem;
    padding-right: 5rem;
    padding-top: 6.25rem;
  }

  .seizen-point03__body::after {
    height: 100%;
  }

  .seizen-point03__image01-heading {
    aspect-ratio: 593/78;
    max-width: 37.0625rem;
  }

  .seizen-point03__image01 {
    aspect-ratio: 996/1141;
    margin-top: 1.5rem;
    max-width: 62.25rem;
  }

  .souzoku-item01__text-area.inner {
    max-width: 73.4375rem;
    padding-right: 5rem;
  }

  .souzoku-item01__flow-area.inner {
    margin-top: 5.75rem;
    max-width: 73.4375rem;
    padding-bottom: 3rem;
    padding-right: 5rem;
    padding-top: 6rem;
  }

  .souzoku-item01__flow-heading {
    font-size: 1.5rem;
    max-width: 37.5rem;
  }

  .souzoku-item01__flow-heading::after {
    height: 1.875rem;
    width: 3.75rem;
  }

  .souzoku-item01__flow-items {
    max-width: 45rem;
  }

  .souzoku-item01__flow-item {
    margin-left: 5.5rem;
    margin-right: 10.75rem;
  }

  .souzoku-item01__flow-item-num {
    font-size: 1.25rem;
  }

  .souzoku-item01__flow-item-head-text {
    font-size: 1.25rem;
  }

  .souzoku-item01__flow-item-body-text {
    font-size: 1.25rem;
  }

  .souzoku-item01__flow-item-point {
    left: calc(100% + 1.875rem);
    right: unset;
    top: 50%;
    width: 10.75rem;
  }

  .souzoku-item01__flow-item-body-text-tips .souzoku-item01__flow-item-body-text {
    margin-left: 3.25rem;
  }

  .souzoku-tooltip {
    left: unset;
    right: -1.5rem;
    top: 50%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
  }

  .souzoku-tooltip__btn {
    height: 1.5rem;
    width: 1.5rem;
  }

  .souzoku-tooltip__bubble {
    left: 50%;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
  }

  .souzoku-tooltip__bubble::before {
    left: 50%;
  }

  .souzoku-tooltip__bubble::after {
    left: 50%;
  }

  .souzoku-tooltip__title {
    font-size: 0.875rem;
  }

  .souzoku-tooltip__text {
    font-size: 0.875rem;
  }

  .souzoku-item01__image {
    aspect-ratio: 690/862;
  }

  .souzoku-item01__image-area02.inner {
    margin-top: 4rem;
    max-width: 73.4375rem;
    padding-bottom: 5rem;
    padding-right: 5rem;
    padding-top: 6.5rem;
  }

  .souzoku-item01__image02 {
    aspect-ratio: 996/1629;
    max-width: 62.25rem;
  }

  .souzoku-item01__flow-area::after,
  .souzoku-item01__image-area02::after {
    height: 100%;
  }

  .souzoku-item02__text-area.inner {
    max-width: 73.4375rem;
    padding-right: 5rem;
  }

  .souzoku-item02__calc-area.inner {
    margin-top: 2rem;
    max-width: 73.4375rem;
    padding-bottom: 1.375rem;
    padding-right: 5rem;
    padding-top: 1.375rem;
  }

  .souzoku-item02__calc-text {
    font-size: 1.25rem;
    line-height: 1.45;
  }

  .souzoku-item02__calc {
    font-size: 1.5rem;
    line-height: 1.4583333333;
  }

  .souzoku-item02__calc-block {
    display: inline-block;
    margin-top: 0;
  }

  .souzoku-item02__calc .souzoku-item02__calc-font36-40 {
    font-size: 2.5rem;
    letter-spacing: 0.01em;
    line-height: 1.45;
  }

  .souzoku-item02__calc .souzoku-item02__calc-font20-20-black {
    margin-inline: 0.625rem;
    font-weight: 900;
  }

  .souzoku-item02__calc .souzoku-item02__calc-pc-black {
    font-weight: 900;
  }

  .souzoku-item02__image-area01.inner {
    margin-top: 5.75rem;
    max-width: 73.4375rem;
    padding-right: 5rem;
  }

  .souzoku-item02__image01 {
    aspect-ratio: 996/1193;
    max-width: 62.25rem;
  }

  .souzoku-item02__image-area02.inner {
    margin-top: 4rem;
    max-width: 73.4375rem;
    padding: 2.375rem 5rem 4.375rem 1.5625rem;
  }

  .souzoku-item02__image02 {
    aspect-ratio: 996/751;
  }

  .souzoku-item02__calc-area::after,
  .souzoku-item02__image-area02::after {
    height: 100%;
  }

  .souzoku-item03__text-area.inner {
    max-width: 73.4375rem;
    padding-right: 5rem;
  }

  .souzoku-item03__flow-area.inner {
    margin-top: 2rem;
    max-width: 73.4375rem;
    padding-right: 5rem;
  }

  .souzoku-item03__contents {
    margin-top: 2.5rem;
  }

  .souzoku-page__heading-container.inner {
    max-width: 73.4375rem;
    padding-right: 5rem;
  }

  .souzoku-page__item01 {
    margin-top: 5rem;
  }

  .souzoku-page__item02 {
    margin-top: 5rem;
  }

  .souzoku-page__item03 {
    margin-top: 5rem;
  }

  .staff-list-item {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
  }

  .staff-list-item.staff-list-item--reverse {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
    -ms-flex-direction: row-reverse;
    flex-direction: row-reverse;
  }

  .staff-list-item__image-area {
    -webkit-box-flex: 1;
    -ms-flex: 1 1 25rem;
    flex: 1 1 25rem;
  }

  .staff-list-item__image-area::after {
    aspect-ratio: 485/500;
    background-color: #159947;
    bottom: -4rem;
    content: "";
    left: max(-10.15625vw, -8.125rem);
    opacity: 0.1;
    position: absolute;
    width: 121.25%;
    z-index: -1;
  }

  .staff-list-item.staff-list-item--reverse .staff-list-item__image-area::after {
    left: unset;
    right: max(-10.15625vw, -8.125rem);
  }

  .staff-list-item__name {
    bottom: 2.5rem;
    font-size: 1.25rem;
    left: 0;
    line-height: 1.45;
    min-width: 21.875rem;
    padding: 0.625rem 1.5rem;
  }

  .staff-list-item.staff-list-item--reverse .staff-list-item__name {
    left: unset;
    right: 0;
  }

  .staff-list-item__name span {
    bottom: 2.5rem;
    font-size: 1rem;
    left: 0;
    line-height: 1.125;
  }

  .staff-list-item__text-area {
    -webkit-box-flex: 1;
    -ms-flex: 1 1 36.25rem;
    flex: 1 1 36.25rem;
  }

  .staff-list-item__text-items {
    gap: 2rem;
  }

  .staff-list-item__text {
    font-size: 1.125rem;
    letter-spacing: 0.02em;
    line-height: 1.5555555556;
  }

  .staff-page__inner.inner {
    max-width: 73.4375rem;
    padding-right: 5rem;
  }

  .staff-page__lead {
    margin-top: 4rem;
  }

  .staff-page__wrapper.inner {
    margin-top: 5rem;
    max-width: 80rem;
    padding: 5rem min(10.15625vw, 8.125rem) 4rem;
  }

  .staff-page__list {
    row-gap: 7.5rem;
  }

  .about__inner.inner {
    max-width: 66.875rem;
  }

  .about__container {
    padding: 1.875rem 1.25rem 3.75rem;
  }

  .about__text-area {
    margin-inline: auto;
    line-height: 1.75;
    margin-top: 2.5rem;
    min-width: 43.75rem;
  }

  .advantages-list {
    row-gap: 1.875rem;
  }

  .advantages-list__item {
    border: 2px solid #1F5F5B;
    padding: 2.5rem 5.5rem 2.5rem 7.5rem;
  }

  .advantages-list__item-number {
    aspect-ratio: 230/200;
    width: 14.375rem;
  }

  .advantages-list__item-number span {
    font-size: 2.5rem;
  }

  .advantages-list__item-img {
    aspect-ratio: 292/278;
    -webkit-box-flex: 1;
    -ms-flex: 1 1 18.25rem;
    flex: 1 1 18.25rem;
    width: 100%;
  }

  .advantages-list__item-title {
    font-size: 1.375rem;
    line-height: 1.6363636364;
  }

  .advantages-list__item-media {
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
  }

  .advantages-list__item-media.advantages-list__item-media--reverse {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
    -ms-flex-direction: row-reverse;
    flex-direction: row-reverse;
  }

  .advantages-list__item-text {
    -webkit-box-flex: 1;
    -ms-flex: 1 1 27.5rem;
    flex: 1 1 27.5rem;
    font-size: 1.125rem;
    line-height: 2;
  }

  .advantages {
    margin-top: 7.5rem;
  }

  .advantages__list {
    margin-top: 3.75rem;
  }

  .advantages__link-area {
    margin-top: 3.75rem;
  }

  .advantages__link {
    font-size: 1.375rem;
    line-height: 1.6363636364;
    max-width: 37.5rem;
    padding: 1.5rem 0.625rem;
  }

  .blog__inner.inner {
    max-width: 80rem;
    padding: 0 5rem;
  }

  .blog__list {
    margin-top: 3.75rem;
  }

  .books {
    margin-top: 7.5rem;
    padding: 3.75rem 0;
  }

  .books__inner.inner {
    max-width: 75rem;
  }

  .books__container::after {
    margin-left: -4.6875rem;
    width: 100%;
  }

  .books__img {
    margin-top: 3.75rem;
  }

  .books__more-link {
    margin-top: 3.75rem;
  }

  .community-service {
    margin-top: 7.5rem;
  }

  .community-service__inner.inner {
    max-width: 80rem;
    padding-left: min(10.15625vw, 8.125rem);
    padding-right: min(10.15625vw, 8.125rem);
  }

  .community-service__items {
    margin-top: 3.75rem;
  }

  .community-service__item+.community-service__item {
    margin-top: 0;
  }

  .community-service__item::after {
    height: calc(100% - 4rem);
  }

  .community-service__item-img {
    left: min(-10.15625vw, -8.125rem);
    width: clamp(11.75rem, 50vw, 40rem);
  }

  .community-service__item--reverse .community-service__item-img {
    right: min(-10.15625vw, -8.125rem);
  }

  .community-service__item-container {
    padding: 2.5rem 0 3.75rem;
  }

  .community-service__item-title {
    font-size: min(2.1875vw, 1.75rem);
  }

  .community-service__item-text-box {
    font-size: min(1.5625vw, 1.125rem);
    line-height: 1.7777777778;
    margin-left: auto;
    margin-top: 2rem;
    max-width: 52.5rem;
    padding: 4.375rem 0 0;
    text-align: right;
  }

  .community-service__item--reverse .community-service__item-text-box {
    text-align: left;
  }

  .community-service__item-text-box::after {
    height: calc(100% + 4rem);
    right: max(-10.15625vw, -8.125rem);
    width: max(100% + 14.84375vw, 100% + 11.875rem);
  }

  .community-service__item--reverse .community-service__item-text-box::after {
    left: max(-10.15625vw, -8.125rem);
  }

  .community-service__item__bnr {
    margin-top: 5.625rem;
  }

  .contact__heading {
    font-size: 2.25rem;
    line-height: 1.4444444444;
  }

  .contact__lead {
    font-size: 1.25rem;
    line-height: 1.6;
  }

  .event {
    background-color: unset;
  }

  .event__inner.inner {
    max-width: 73.125rem;
  }

  .event__inner.inner::before {
    display: none;
  }

  .event__inner.inner::after {
    background-color: rgba(31, 95, 91, .2);
    -webkit-clip-path: polygon(0 0, calc(100% - 16.25rem) 0, calc(100% - 16.25rem) 100%, 0% 100%);
    clip-path: polygon(0 0, calc(100% - 16.25rem) 0, calc(100% - 16.25rem) 100%, 0% 100%);
    content: "";
    height: 100%;
    left: 0;
    margin-left: calc(-50vw - -50%);
    position: absolute;
    top: 0;
    width: calc(50% + 50vw);
    z-index: -1;
  }

  .event__container {
    background-color: #fff;
    padding: 4rem 2.5rem 2.5rem 3.125rem;
  }

  .event__items {
    margin-top: 1rem;
  }

  .event__more-link {
    margin-top: 1.875rem;
  }

  .firstViewV2 {
    height: calc(40rem - 6.25rem);
  }

  .firstViewV2__container {
    max-width: 80rem;
  }

  .firstViewV2__textArea {
    padding: 1rem 2rem 0rem;
    width: min(73.828125vw, 59.0625rem);
  }

  .firstViewV2__catch {
    font-size: min(4.0625vw, 3.25rem);
    margin-top: 1rem;
    padding: 0.5rem 0.5rem 0.5rem 1.875rem;
  }

  .firstViewV2__lead {
    font-size: min(2.03125vw, 1.625rem);
    letter-spacing: 0.04em;
    line-height: 1.7692307692;
    margin-top: 1.875rem;
    margin-top: 1rem;
  }

  .firstViewV2__gekkeikan {
    width: min(26.5625vw, 21.25rem);
  }

  .mission {
    margin-top: 7.5rem;
  }

  .mission__container {
    margin-top: 2.5rem;
    padding: 5rem 0 3.75rem;
  }

  .mission__contents.inner {
    max-width: 80rem;
    padding: 0 5.3125rem 0 4.6875rem;
  }

  .mission__contents::after {
    left: min(9.765625vw, 7.8125rem);
    width: calc(100% - 7.8125rem);
  }

  .mission__contents-media {
    -moz-column-gap: 2.5rem;
    -webkit-column-gap: 2.5rem;
    column-gap: 2.5rem;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
  }

  .mission__image-area {
    -webkit-box-flex: 1;
    -ms-flex: 1 1 36.25rem;
    flex: 1 1 36.25rem;
  }

  .mission__boss-image {
    aspect-ratio: 580/720;
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }

  .mission__text-image {
    aspect-ratio: 580/520;
    max-width: 26.875rem;
    width: min(33.59375vw, 26.875rem);
  }

  .mission__text-area {
    -webkit-box-flex: 1;
    -ms-flex: 1 1 30.9375rem;
    flex: 1 1 30.9375rem;
    padding: 5.25rem 0 0 0;
  }

  .mission__catch {
    font-size: min(2.8125vw, 1.875rem);
    line-height: 1.4666666667;
  }

  .mission__lead {
    line-height: 1.6;
    margin-top: 2rem;
  }

  .mission__description {
    margin-top: 2rem;
  }

  .mission__contents-bottom {
    aspect-ratio: 526/480;
    margin-top: unset;
    width: min(41.09375vw, 32.875rem);
  }

  .news {
    background-color: unset;
    margin-top: 7.5rem;
  }

  .news__inner.inner {
    max-width: 73.125rem;
  }

  .news__inner.inner::before {
    display: none;
  }

  .news__inner.inner::after {
    background-color: rgba(31, 95, 91, .5);
    -webkit-clip-path: polygon(18.25rem 0%, 100% 0, 100% 100%, 18.25rem 100%);
    clip-path: polygon(18.25rem 0%, 100% 0, 100% 100%, 18.25rem 100%);
    content: "";
    height: 100%;
    left: 0;
    position: absolute;
    top: 0;
    width: calc(50% + 50vw);
    z-index: -1;
  }

  .news__container {
    background-color: #fff;
    padding: 4rem 2.5rem 2.5rem 3.125rem;
  }

  .news__items {
    margin-top: 1rem;
  }

  .news__more-link {
    margin-top: 1.875rem;
  }

  .price-table {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }

  .price-table__head {
    border: 1px solid #DAF0E0;
    display: grid;
    -webkit-box-flex: 1;
    -ms-flex: 1 1 34.6%;
    flex: 1 1 34.6%;
    font-size: 1.375rem;
    height: auto;
    place-items: center;
  }

  .price-table__body {
    border-right: 1px solid #159947;
    border-top: 1px solid #159947;
    -webkit-box-flex: 1;
    -ms-flex: 1 1 65.4%;
    flex: 1 1 65.4%;
    height: auto;
  }

  .price-table__body-row {
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    height: 6.25rem;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
  }

  .price-table__body-row.price-table__body-row--rowspan {
    display: inline;
    display: initial;
  }

  .price-table__item,
  .price-table__price {
    -webkit-box-flex: 1;
    -ms-flex: 1 1 50%;
    flex: 1 1 50%;
    font-size: clamp(1rem, 1.71875vw, 1.375rem);
    padding: 0 1.875rem;
  }

  .price-table__price-tax {
    font-size: clamp(0.8125rem, 1.40625vw, 1.125rem);
    margin-left: 0.5rem;
  }

  .price-table__item {
    text-align: left;
  }

  .price-table__link-icon {
    width: clamp(0.8125rem, 1.25vw, 1rem);
  }

  .price-table02 {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }

  .price-table02__head {
    border: 1px solid #DAF0E0;
    display: grid;
    -webkit-box-flex: 1;
    -ms-flex: 1 1 34.6%;
    flex: 1 1 34.6%;
    font-size: 1.375rem;
    height: auto;
    place-items: center;
  }

  .price-table02__body {
    border-right: 1px solid #159947;
    border-top: 1px solid #159947;
    -webkit-box-flex: 1;
    -ms-flex: 1 1 65.4%;
    flex: 1 1 65.4%;
    height: auto;
  }

  .price-table02__body-row {
    height: 6.25rem;
  }

  .price-table02__item,
  .price-table02__price {
    font-size: clamp(1rem, 1.71875vw, 1.375rem);
    padding: 0 1rem;
  }

  .price-table02__item {
    width: 56%;
  }

  .price-table02__price {
    width: 46%;
  }

  .price-table02__price.price-table02__price--1row {
    font-size: clamp(1rem, 1.71875vw, 1.375rem);
    line-height: 1.7272727273;
  }

  .price {
    margin-top: 7.5rem;
  }

  .price__inner.inner {
    max-width: 73.75rem;
    padding: 0 5rem;
  }

  .price__note {
    margin-top: 0;
  }

  .service-list {
    row-gap: 3.125rem;
    grid-template-columns: repeat(3, 1fr);
  }

  .service-list__item {
    padding: 5rem 2rem 3.5rem;
  }

  .service-list__item+.service-list__item {
    border-left: 1px solid #333;
  }

  .service-list__item-title {
    font-size: clamp(1.25rem, 2.1875vw, 1.75rem);
    line-height: 1.4285714286;
    margin-top: 1.5rem;
  }

  .service-list__item-en-title {
    font-size: clamp(1.125rem, 1.71875vw, 1.375rem);
    line-height: 1.1818181818;
  }

  .service-list__item-text {
    line-height: 1.7777777778;
    margin-top: 1.5rem;
  }

  .service {
    margin-top: 7.5rem;
  }

  .service__container {
    margin-top: 3.75rem;
    padding-bottom: 5.625rem;
    padding-top: 7rem;
  }

  .service__list.inner {
    max-width: 73.75rem;
    padding: 0 5rem;
  }

  .staff {
    margin-top: 7.5rem;
    padding: 4rem 0;
  }

  .staff__media {
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
    margin-top: 3rem;
    padding: 2rem 5.5rem;
  }

  .staff__media-text {
    -webkit-box-flex: 1;
    -ms-flex: 1 1 21.25rem;
    flex: 1 1 21.25rem;
    line-height: 2.0909090909;
  }

  .staff__media-img {
    -webkit-box-flex: 1;
    -ms-flex: 1 1 22.5rem;
    flex: 1 1 22.5rem;
  }

  .top-banner {
    margin-top: 7.5rem;
  }

  .voice-list {
    row-gap: 1.25rem;
  }

  .voice-list__item {
    -moz-column-gap: 4.5rem;
    -webkit-column-gap: 4.5rem;
    column-gap: 4.5rem;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
    padding-left: 1.5rem;
  }

  .voice-list__item-img {
    -webkit-box-flex: 1;
    -ms-flex: 1 1 10.9375rem;
    flex: 1 1 10.9375rem;
  }

  .voice-list__item-speech-bubble {
    -webkit-box-flex: 1;
    -ms-flex: 1 1 46.625rem;
    flex: 1 1 46.625rem;
    padding: 2rem 1.5rem 1.5rem;
  }

  .voice-list__item-speech-bubble::before {
    -webkit-clip-path: polygon(0 0, 100% 95%, 100% 3%);
    clip-path: polygon(0 0, 100% 95%, 100% 3%);
    height: 4rem;
    left: -3.5rem;
    top: 50%;
    -webkit-transform: translate(0, -50%);
    transform: translate(0, -50%);
    width: 3.75rem;
  }

  .voice-list__item-text {
    font-size: 1.125rem;
    line-height: 1.7777777778;
  }

  .voice-list__item-info {
    margin-top: 1.5rem;
  }

  .voice-list__item-category {
    font-size: 1.125rem;
    line-height: 1.4444444444;
    min-width: 7.5rem;
    padding: 0.25rem;
  }

  .voice-list__item-person {
    font-size: 1.125rem;
    line-height: 1.7777777778;
  }

  .voice {
    margin-top: 7.5rem;
  }

  .voice__inner.inner {
    max-width: 73.75rem;
    padding: 0 5rem;
  }

  .voice__list {
    margin-top: 4.5rem;
  }

}

@media (min-width: 1020px) {

  html {
    font-size: 16px;
  }

}

@media screen and (min-width: 1024px) {

  .lp-cta02__tel-number a {
    cursor: default;
    pointer-events: none;
  }

  .lp-firstView__main {
    gap: clamp(40px, 7vw, 109px);
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    margin-top: 0;
  }

  .lp-firstView__main-title img {
    height: clamp(120px, 9vw, 160px);
    width: clamp(120px, 9vw, 160px);
  }

  .firstViewV2 {
    height: calc(50rem - 6.25rem);
  }

}

@media (min-width: 1100px) {

  .lp-firstView__contact-btn {
    margin-top: -4rem;
  }

}

@media (max-width: 375px) {

  html {
    font-size: 4.2666666667vw;
  }

}

@-webkit-keyframes bgextendAnimeBase {

  from {
    opacity: 0;
  }

  to {
    opacity: 1;
  }

}

@keyframes bgextendAnimeBase {

  from {
    opacity: 0;
  }

  to {
    opacity: 1;
  }

}

@-webkit-keyframes bgextendAnimeSecond {

  0% {
    opacity: 0;
  }

  100% {
    opacity: 1;
  }

}

@keyframes bgextendAnimeSecond {

  0% {
    opacity: 0;
  }

  100% {
    opacity: 1;
  }

}

@-webkit-keyframes bgLRextendAnime {

  0% {
    -webkit-transform: scaleX(0);
    transform: scaleX(0);
    -webkit-transform-origin: left;
    transform-origin: left;
  }

  50% {
    -webkit-transform: scaleX(1);
    transform: scaleX(1);
    -webkit-transform-origin: left;
    transform-origin: left;
  }

  50.001% {
    -webkit-transform-origin: right;
    transform-origin: right;
  }

  100% {
    -webkit-transform: scaleX(0);
    transform: scaleX(0);
    -webkit-transform-origin: right;
    transform-origin: right;
  }

}

@keyframes bgLRextendAnime {

  0% {
    -webkit-transform: scaleX(0);
    transform: scaleX(0);
    -webkit-transform-origin: left;
    transform-origin: left;
  }

  50% {
    -webkit-transform: scaleX(1);
    transform: scaleX(1);
    -webkit-transform-origin: left;
    transform-origin: left;
  }

  50.001% {
    -webkit-transform-origin: right;
    transform-origin: right;
  }

  100% {
    -webkit-transform: scaleX(0);
    transform: scaleX(0);
    -webkit-transform-origin: right;
    transform-origin: right;
  }

}


/*# sourceMappingURL=styles.css.map */