@charset "UTF-8";

* {
  margin: 0;
  padding: 0;
  line-height: calc(.25rem + 1em + .25rem)
}

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

:where(:not(fieldset, progress, meter)) {
  border-collapse: collapse;
  border-width: 0;
  border-style: solid;
  background-origin: border-box;
  background-repeat: no-repeat
}

html {
  block-size: 100%;
  -webkit-text-size-adjust: none
}

body {
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeSpeed;
  min-block-size: 100%
}

:where(img, svg, video, canvas, audio, iframe, embed, object) {
  display: block
}

:where(img, svg, video) {
  block-size: auto;
  max-inline-size: 100%
}

:where(svg) {
  stroke: none;
/*  fill: currentColor*/
}

:where(svg):where(:not([fill])) {
  stroke: currentColor;
  fill: none;
  stroke-linecap: round;
  stroke-linejoin: round
}

:where(svg):where(:not([width])) {
  inline-size: 5rem
}

:where(input, button, textarea, select),
:where(input[type=file])::-webkit-file-upload-button {
  color: inherit;
  font: inherit;
  font-size: inherit;
  letter-spacing: inherit
}

:where(textarea) {
  resize: vertical
}

@supports (resize:block) {
  :where(textarea) {
    resize: block
  }
}

:where(p, h1, h2, h3, h4, h5, h6) {
  overflow-wrap: break-word
}

h1 {
  font-size: 2em
}

:where(ul, ol) {
  list-style: none
}

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

:where(a[href], area, button, input, label[for], select, summary, textarea, [tabindex]:not([tabindex*="-"])) {
  cursor: pointer;
  touch-action: manipulation;
  text-decoration: none
}

:where(input[type=file]) {
  cursor: auto
}

:where(input[type=file])::-webkit-file-upload-button,
:where(input[type=file])::file-selector-button {
  cursor: pointer
}

:where(:not(:active)):focus-visible {
  outline-offset: 5px
}

:where(button, button[type], input[type=button], input[type=submit], input[type=reset]),
:where(input[type=file])::-webkit-file-upload-button,
:where(input[type=file])::file-selector-button {
  -webkit-tap-highlight-color: transparent;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  user-select: none;
  text-align: center
}

:where(button, button[type], input[type=button], input[type=submit], input[type=reset])[disabled] {
  cursor: not-allowed
}

:where(iframe[src*=youtube]) {
  width: 100%;
  height: auto;
  aspect-ratio: 16/9
}

.is-pc {
  display: block
}

.is-sp {
  display: none
}

[data-anim-elm] {
  opacity: 0
}

[v-cloak] {
  display: none
}

table {
  width: 100%;
  border-collapse: collapse
}

button {
  outline: 0;
  background: 0 0
}

html {
  scroll-behavior: smooth
}

body {
  font-family: "Noto Sans JP", Helvetica, Arial, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", 游ゴシック, "Yu Gothic ", YuGothic, Osaka, メイリオ, Meiryo, "MS Pゴシック", "MS P Gothic", sans-serif;
  background: #faf9f5;
  color: #143d32;
  font-weight: 500;
  letter-spacing: .02em
}

a {
  color: inherit
}

.inner {
  max-width: 1180px;
  margin: 0 auto;
  padding-top: 86px;
  padding-bottom: 160px;
  padding-inline: 40px
}

.article_block__img {
  width: 100%
}

.article_block__img img {
  width: 100%;
  border-radius: 8px
}

.article_block h4 {
  color: var(--green-900, #143d32);
  font-size: 1.25rem;
  font-weight: 700;
  line-height: 160%;
  letter-spacing: .05rem;
  margin-top: 16px
}

.article_block time {
  display: block;
  color: var(--green-600, #00b506);
  font-family: Inter;
  font-size: .8125rem;
  font-weight: 500;
  line-height: 100%;
  letter-spacing: .0163rem;
  margin-top: 20px
}

.article_block p {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  overflow: hidden;
  text-overflow: ellipsis;
  color: var(--green-900, #143d32);
  text-overflow: ellipsis;
  font-size: .875rem;
  font-weight: 400;
  line-height: 160%;
  letter-spacing: .035rem;
  margin-top: 9px
}

.article_block__label {
  border-radius: 32px;
  background: #e0eae1;
  display: inline-block;
  margin-top: 20px;
  transition: .2s
}

.article_block__label a {
  padding: 8px 11px;
  display: inline-block;
  color: #7a967d;
  display: inline-block;
  font-size: .6875rem;
  font-weight: 500;
  line-height: 100%;
  letter-spacing: .48px;
  width: 100%
}

.article_block__date_wrapper {
  display: flex;
  align-items: center;
  margin-top: 15px
}

.article_block__date_wrapper .updated_date {
  position: relative
}

.article_block__date_wrapper .updated_date::after {
  content: "";
  display: inline-block;
  position: relative;
  width: 1px;
  height: .875rem;
  background: #a1a1a1;
  margin-right: 10px;
  margin-left: 10px;
  top: 3px
}

.article_block__date_wrapper p {
  color: #666;
  text-align: justify;
  font-size: .75rem;
  line-height: 160%
}

.article_block__date_wrapper span {
  width: 1px;
  height: 14px;
  background: #666;
  display: block;
  margin-top: 9px
}

.article_block__author {
  display: flex;
  align-items: center;
  gap: 10px;
  margin-top: 10px
}

.article_block__author p {
  color: #666;
  font-size: .75rem;
  line-height: 220%
}

.article_block__author_pic {
  width: 27px
}

.article_block__author_pic img {
  width: 100%
}

.breadcrumb_block {
  color: var(--green-850, #1cac85);
  font-weight: 600;
  padding-top: 30px
}

.breadcrumb_block__inner {
  padding: 0 40px;
  display: flex;
  justify-content: flex-end;
  gap: 16px;
  align-items: center;
  overflow-x: auto;
  white-space: nowrap;
  -webkit-overflow-scrolling: touch
}

.breadcrumb_block__inner span {
  font-size: 14px;
  font-weight: 500
}

.breadcrumb_block__inner img {
  display: inline
}

.breadcrumb_block__inner::-webkit-scrollbar {
  display: none
}

.breadcrumb_block .current-item {
  color: #143d32
}

.c-btn {
  border-radius: 9999px;
  border: 2px solid var(--green-850, #1cac85);
  display: inline-block;
  position: relative
}

.c-btn--contact_complete,
.c-btn--page_404 {
  width: 100%
}

.c-btn a {
  color: var(--green-850, #1cac85);
  background-color: #fff;
  font-size: 18px;
  font-weight: 700;
  line-height: 170%;
  letter-spacing: .0225rem;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 1rem;
  padding: 20px 36px;
  border-radius: 9999px
}

.c-btn a::after {
  display: block;
  content: "";
  background: url(../images/arrow-btn.svg) no-repeat center;
  width: 10px;
  height: 10px
}

.c-btn:hover a {
  color: #fff;
  background: #1cac85;
  transition-duration: .3s
}

.c-btn:hover a::after {
  transition-duration: .3s;
  background: url(../images/arrow-btn.svg) no-repeat center
}

.contact_btn {
  width: 296px;
  position: fixed;
  top: 80%;
  right: 20px;
  z-index: 100;
  transition: top .6s ease, opacity .6s ease
}

.contact_block {
/*  border-radius: 0 0 6px 6px;*/
  background: #393939;
/*  background: #af987d;*/
  color: #fff;
  position: relative;
  overflow: hidden
}
.contact_block::before {
  content: '';
  position: absolute;
  inset: 0;
  background: url('../images/top-contact-bg.jpg') center / cover no-repeat;
  opacity: .12;
  pointer-events: none
}

.contact_block__inner {
  max-width: 1180px;
  margin: 0 auto;
  padding: 80px 40px 93px;
  position: relative;
  z-index: 1
}

.contact_block span {
  font-family: Inter;
  font-size: .875rem;
  font-weight: 600;
  line-height: 170%;
  letter-spacing: .0525rem
}

.contact_block__head {
  display: flex;
  margin-top: 30px;
  justify-content: space-between
}

.contact_block__head h4 {
  font-family: "Noto Sans JP";
  font-size: 3.125rem;
  font-weight: 800;
  line-height: 120%
}

.contact_block__head p {
  font-family: "Noto Sans JP";
  font-size: .9375rem;
  font-weight: 600;
  line-height: 200%;
  letter-spacing: .0187rem;
  text-align: justify
}

.contact_block__contents {
  display: flex;
  margin-top: 60px;
  justify-content: space-between
}

.contact_block__contents--contact-business,
.contact_block__contents--contact_form {
  display: none
}

.contact_block__btn_wrapper {
  display: flex;
  gap: 30px
}

.contact_block__btn {
  border-radius: 9999px
}

.contact_block__btn:hover {
  opacity: .7;
  transition-duration: .3s
}

.contact_block__btn a {
  display: inline-flex;
  align-items: center;
  font-family: "Noto Sans JP";
  font-size: 1.375rem;
  font-weight: 700;
  line-height: 120%;
  padding: 1rem 2rem
}

.contact_block__btn--line a {
  border-radius: 9999px;
  background: #06c755;
  display: inline-flex;
  color: #fff;
  gap: 8px
}

.contact_block__btn--line a:before {
  display: block;
  content: "";
  background: url("../images/icon_line.svg") no-repeat center/contain;
  width: 42px;
  height: 42px
}

.contact_block__btn--mail a {
  border-radius: 9999px;
  background: #9d2828;
  color: #fff;
  gap: 8px
}

.contact_block__btn--mail a:before {
  display: block;
  content: "";
  background: url("../images/icon_mail_01.svg") no-repeat center/contain;
  width: 42px;
  height: 42px
}

.contact_block__btn--tel {
  border: 2px solid #fff
}

.contact_block__btn--black a {
  background: #143d32;
  color: #fff;
  border-radius: 9999px
}

.contact_block__tel p {
  font-size: 1.125rem;
  font-weight: 700;
  line-height: 120%;
  letter-spacing: .0625rem
}

.contact_block__tel p.num {
  margin-top: 5px;
  font-family: Inter;
  font-size: 3rem;
  font-weight: 700;
  letter-spacing: -.01rem;
  display: flex;
  gap: 14px;
  align-items: center
}

.contact_block__tel p.num:before {
  display: block;
  content: "";
  background: url("../images/icon_tel_03.svg") no-repeat center;
  width: 40px;
  height: 40px
}

.fixed_btn {
  position: fixed;
  bottom: 0;
  left: 0;
  width: 100%;
  z-index: 1000
}

.fixed_btn__wrapper {
  display: flex
}

.fixed_btn__item {
  display: flex;
  gap: calc(18 / 393 * 100vw);
  width: 50%;
  padding: calc(20 / 393 * 100vw) calc(27 / 393 * 100vw);
  justify-self: center
}

.fixed_btn__item a {
  color: #fff;
  font-size: calc(15 / 393 * 100vw);
  font-weight: 700;
  line-height: 140%;
  letter-spacing: .0187rem
}

.fixed_btn__item--line {
  background: #0bba12
}

.fixed_btn__item--line img {
  width: calc(43 / 393 * 100vw)
}

.fixed_btn__item--mail {
  background: #1cac85
}

.fixed_btn__item--mail img {
  width: calc(43 / 393 * 100vw)
}

.footer_block__inner {
  max-width: 1180px;
  margin: 0 auto;
  padding-top: 80px;
  padding-inline: 40px
}

.footer_block__main {
  display: flex;
  justify-content: space-between
}

.footer_block__logo a {
  display: flex;
  align-items: center;
  gap: 20px
}

.footer_block__logo a p {
  color: #64bea6;
  font-size: 1.3rem;
  font-weight: 800;
  line-height: 100%
}

.footer_block__logo_img {
  width: 280px
}

.footer_block__logo_img img {
  width: 100%
}

.footer_block__info {
  margin-top: 35px;
  color: #6e6e6e;
  font-size: .8125rem;
  font-weight: 500;
  line-height: 170%;
  letter-spacing: .0325rem;
  font-family: Zen Kaku Gothic New, -apple-system, BlinkMacSystemFont, Helvetica Neue, Hiragino Sans, "\30D2\30E9\30AE\30CE\89D2\30B4 ProN W3", Hiragino Kaku Gothic ProN, Yu Gothic, YuGothic, Verdana, Meiryo, "M+ 1p", sans-serif;
}

.footer_block__info p:not(:first-child) {
  margin-top: 7px
}

.footer_block__sub {
  background: #1a3a6b;
  background: #343439;
  display: flex;
  justify-content: space-between;
  color: #fff;
  padding: 10px 0 15px;
  margin-top: 40px;
  margin-right: calc(50% - 50vw);
  margin-left: calc(50% - 50vw);
  padding-left: calc(50vw - 50%);
  padding-right: calc(50vw - 50%)
}

.footer_block__sub_left {
  display: flex;
  align-items: center;
  gap: 16px
}

.footer_block__sub_left a {
  color: #fff;
  font-family: "Noto Sans JP";
  font-size: .75rem;
  font-weight: 500
}

.footer_block__sub_left span {
  display: block;
  width: 1px;
  height: 11px;
  background: #fff
}

.footer_block__sub_right {
  font-family: Inter;
  font-size: .6875rem;
  font-weight: 500;
  letter-spacing: .0275rem
}

.footer_menu__list {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 50px 80px;
  font-family: Zen Kaku Gothic New, -apple-system, BlinkMacSystemFont, Helvetica Neue, Hiragino Sans, "\30D2\30E9\30AE\30CE\89D2\30B4 ProN W3", Hiragino Kaku Gothic ProN, Yu Gothic, YuGothic, Verdana, Meiryo, "M+ 1p", sans-serif;
}

.footer_menu__item a {
  color: #333;
  font-size: 1.125rem;
  font-weight: 700;
  line-height: 100%;
  letter-spacing: .045rem;
  font-family: Zen Kaku Gothic New, -apple-system, BlinkMacSystemFont, Helvetica Neue, Hiragino Sans, "\30D2\30E9\30AE\30CE\89D2\30B4 ProN W3", Hiragino Kaku Gothic ProN, Yu Gothic, YuGothic, Verdana, Meiryo, "M+ 1p", sans-serif;
}

.footer_menu__item ul {
  margin-top: 11px
}

.footer_menu__item ul li a {
  color: #1cac85;
  font-size: .875rem;
  font-weight: 500;
  line-height: 100%;
  letter-spacing: .02rem;
  display: flex;
  gap: 8px;
  align-items: center
}

.footer_menu__item ul li a::before {
  display: block;
  content: "";
  background: #1cac85;
  width: 4px;
  height: 4px;
  border-radius: 50%
}

.footer_menu__item ul li:not(:first-child) {
  margin-top: 9px
}

.header_block {
  display: flex;
  justify-content: space-between;
/*  background: #fff;*/
  padding-inline: 40px;
  position: fixed;
  z-index: 100;
  width: 100%
}

.header_block__logo {
  padding: calc(28 / 1512 * 100vw) 0
}

.header_block__logo a {
  display: flex;
  gap: 30px
}

.header_block__logo a p {
  color: var(--green-900, #143d32);
  font-family: "Noto Sans JP";
  font-size: 1.5625rem;
  font-weight: 800;
  line-height: 105%
}

.header_block__logo a p span {
  font-size: 1rem
}

.header_block__logo_img img {
  width: 100%
}

.header_block__btn {
  display: none
}

.header_block__btn span {
  background: #64bea6;
  display: block
}

.header_block__btn.is-open span:nth-child(1) {
  transform: translateY(8px) rotate(405deg)
}

.header_block__btn.is-open span:nth-child(2) {
  opacity: 0
}

.header_block__btn.is-open span:nth-child(3) {
  transform: translateY(-8px) rotate(-405deg)
}

.header_block__list {
  display: flex;
  gap: 30px;
  justify-self: end;
  align-items: center
}

.header_block__list--bottom {
  gap: 36px;
}

.header_block__link {
  display: flex;
  align-items: center;
  gap: 17px
}

.header_block__link span {
  display: block;
  width: 1px;
  height: 10px;
  background: #475844
}

.header_block__link_item a {
  color: #475844;
  font-family: "Noto Sans JP";
  font-size: 15px;
  font-style: normal;
  font-weight: 500;
  line-height: 120%;
  letter-spacing: .6px
}

.header_block__contact {
  display: flex;
  gap: 8px
}

.header_block__contact_btn {
  border-radius: 0 0 6px 6px
}

.header_block__contact_btn--tel {
  background: var(--green-100, #ebf5ef);
  padding: 5px 21px
}

.header_block__contact_btn--tel a p {
  color: var(--green-850, #1cac85);
  font-family: "Noto Sans JP";
  font-size: calc(12 / 1512 * 100vw);
  font-style: normal;
  font-weight: 700;
  letter-spacing: .96px
}

.header_block__contact_btn--tel a p.tel {
  color: var(--green-900, #143d32);
  font-family: Inter;
  font-size: calc(20 / 1512 * 100vw);
  font-weight: 700;
  letter-spacing: -.025rem;
  display: flex;
  align-items: center;
  gap: 8px
}

.header_block__contact_btn--tel a p.tel::before {
  display: block;
  content: "";
  background: url(../images/icon_tel_03.svg) no-repeat center;
  width: calc(20 / 1512 * 100vw);
  height: calc(20 / 1512 * 100vw)
}

.header_block__contact_btn--mail {
  background: var(--green-850, #1cac85);
  padding: 19px 35px 0 24px
}

.header_block__contact_btn--mail a {
  display: flex;
  gap: 10px;
  color: #fff;
  font-size: calc(16 / 1512 * 100vw);
  font-weight: 700;
  line-height: 120%;
  letter-spacing: .64px
}

.header_block__contact_btn--mail a::before {
  display: block;
  content: "";
  background: url(../images/icon_mail_01.svg) no-repeat center/contain;
  width: calc(20 / 1512 * 100vw);
  height: calc(20 / 1512 * 100vw)
}

.header_block__item p {
  color: #555;
  color: #fff;
  font-family: Zen Kaku Gothic New, -apple-system, BlinkMacSystemFont, Helvetica Neue, Hiragino Sans, "\30D2\30E9\30AE\30CE\89D2\30B4 ProN W3", Hiragino Kaku Gothic ProN, Yu Gothic, YuGothic, Verdana, Meiryo, "M+ 1p", sans-serif;
  font-size: 16px;
  font-style: normal;
  font-weight: 500;
  line-height: 120%;
  letter-spacing: .64px
}

.header_block__item p:hover {
  color: #1a2744
}

.header_block__item--deco {
  display: flex;
  align-items: center;
  gap: 11px
}

.header_block__item--deco::after {
  display: block;
  content: "";
  background: url('../images/deco_header.svg') no-repeat;
  width: 10px;
  height: 10px;
  transition: transform .3s ease
}

.header_block__item--deco:hover::after {
  transform: rotate(-180deg)
}

.header_block__item--deco .dropdown {
  visibility: hidden;
  opacity: 0;
  position: absolute;
  top: 100%;
  left: 0;
  background-color: #fff;
  list-style: none;
  padding: 40px 0;
  border-radius: 0 0 5px 5px;
  transition: visibility .3s, opacity .3s ease;
  display: flex;
  gap: 70px;
  width: 100%;
  justify-content: center
}

.header_block__item--deco .dropdown__title span {
  color: var(--green-850, #1cac85);
  font-family: Inter;
  font-size: .8125rem;
  font-weight: 700;
  line-height: 135%;
  letter-spacing: .0325rem;
  text-transform: uppercase
}

.header_block__item--deco .dropdown__title p {
  color: var(--green-850, #1cac85);
  font-size: 2rem;
  font-weight: 800;
  line-height: 120%
}

.header_block__item--deco .dropdown__img {
  width: 219px
}

.header_block__item--deco .dropdown__page_title {
  color: var(--green-900, #143d32);
  font-size: .9375rem;
  font-weight: 700;
  line-height: 120%;
  letter-spacing: .0375rem;
  display: flex;
  align-items: center;
  gap: 10px;
  margin-top: 10px
}

.header_block__item--deco .dropdown__page_title::before {
  content: "";
  display: block;
  background: url(../images/arrow-btn.svg) no-repeat center/contain;
  width: 18px;
  height: 18px
}

.header_block__item--deco .dropdown ul {
  display: flex;
  gap: 30px;
  align-items: center
}

.header_block__item--deco .dropdown li a {
  display: inline-block;
  white-space: nowrap;
  color: var(--green-900, #143d32);
  text-decoration: none;
  font-size: 1rem;
  font-weight: 700;
  line-height: 120%;
  letter-spacing: .64px
}

.header_block__item--deco .dropdown li li,
.header_block__item--deco .dropdown li:hover p {
  opacity: .7;
  color: var(--green-850, #1cac85)
}

.header_block__item--deco .dropdown:hover,
.header_block__item--deco:hover .dropdown {
  visibility: visible;
  opacity: 1
}

.hamburger_block.is-open {
  background: rgba(0, 0, 0, .5)
}

.hamburger_block__inner {
  border-top: 1px solid #e6e6e6;
  background: #fff;
  height: 0;
  width: 100%;
  overflow-y: scroll
}

.hamburger_block__contents {
  padding-inline: 24px;
  width: min(100%, 800px);
  padding-bottom: 366px;
  margin: 82px auto 0
}

.hamburger_block__item {
  padding: 12px 0
}

.hamburger_block__item+.hamburger_block__item {
/*  border-top: 1px solid #e6e6e6*/
}

.hamburger_block__item a {
  color: var(--green-900, #143d32);
  font-family: "Noto Sans JP";
  font-size: 1.25rem;
  font-style: normal;
  font-weight: 800;
  line-height: 120%;
  letter-spacing: .64px;
  display: flex;
  align-items: center;
  gap: 10px
}

.hamburger_block__item a:hover {
  color: var(--green-850, #1cac85)
}

/*
.hamburger_block__item a::before {
  display: block;
  content: "";
  background: url(../images/arrow-btn.svg) no-repeat center/contain;
  width: 18px;
  height: 18px
}
*/

.hamburger_block__item ul li a {
  color: #143d32;
  font-family: "Noto Sans JP";
  font-size: 1.0625rem;
  font-style: normal;
  font-weight: 500;
  line-height: 100%;
  display: flex;
  align-items: center;
  gap: 10px;
  margin-left: 2rem
}

.hamburger_block__item ul li a:hover {
  color: var(--green-900, #1cac85)
}

.hamburger_block__item ul li a::before {
  display: block;
  content: "";
  background: url(../images/arrow-btn.svg) no-repeat center/contain;
  width: 18px;
  height: 18px
}

.hamburger_block__item ul li:not(:first-child) {
  margin-top: 16px
}

.mv_block {
  overflow-x: hidden;
  padding-top: 120px
}

.mv_block__inner {
  max-width: 1180px;
  margin: 0 auto;
  padding-inline: 40px
}

.mv_block__wrap {
  display: flex;
  align-items: center
}

.mv_block__head {
  max-width: 417px;
  color: var(--green-850, #1cac85);
  position: relative
}

.mv_block__sub_title {
  font-family: Inter;
  font-weight: 600;
  letter-spacing: .06em;
  text-shadow: 0 0 80px #fff;
  text-transform: uppercase
}

.mv_block__main_title {
  margin-top: 24px;
  font-size: 54px;
  font-weight: 700;
  letter-spacing: -.04em;
  line-height: 1.25;
  text-shadow: 0 0 80px #fff;
  white-space: nowrap
}

.mv_block__img {
  margin-right: calc(50% - 50vw);
  margin-left: -111px;
  width: 100vw
}

.mv_block__img img {
  aspect-ratio: 1000/430;
  width: 100%;
  object-position: bottom;
  border-radius: 0 0 0 20px;
  object-fit: cover
}

nav.header_block__nav {
    display: grid;
}

.wp-pagenavi {
  display: flex;
  justify-content: center;
  align-items: center;
  margin: auto
}

.wp-pagenavi a,
.wp-pagenavi span {
  margin: 0 15px
}

.wp-pagenavi__flip {
  display: block;
  width: 15px;
  height: 24px;
  overflow: hidden;
  text-indent: 100%;
  white-space: nowrap
}

.wp-pagenavi .previouspostslink {
  display: block;
  width: 15px;
  height: 24px;
  overflow: hidden;
  text-indent: 100%;
  white-space: nowrap;
  margin-left: 24px;
  background: url(../img/common/icon_pager_prev.svg) left top/cover no-repeat
}

.wp-pagenavi .nextpostslink {
  display: block;
  width: 15px;
  height: 24px;
  overflow: hidden;
  text-indent: 100%;
  white-space: nowrap;
  margin-right: 24px;
  background: url(../img/common/icon_pager_next.svg) left top/cover no-repeat
}

.wp-pagenavi_list {
  display: flex;
  justify-content: space-between;
  width: min(80%, 300px)
}

.wp-pagenavi_list--wide {
  width: min(80%, 450px)
}

.wp-pagenavi .first,
.wp-pagenavi .last,
.wp-pagenavi .page,
.wp-pagenavi__dots {
  display: flex;
  justify-content: center;
  width: 40px;
  padding: 8px 0;
  border-radius: 2px;
  font-family: Inter;
  font-size: 26px;
  font-weight: 700;
  line-height: 1
}

.wp-pagenavi .current {
  display: flex;
  justify-content: center;
  width: 40px;
  padding: 8px 0;
  border-radius: 2px;
  font-family: Inter;
  font-size: 26px;
  font-weight: 700;
  line-height: 1;
  background: #00b506;
  color: #fff
}

.recommend_sub_block {
  background-color: #f4efe5;
  position: relative;
  z-index: 0
}

.recommend_sub_block__inner {
  max-width: 1180px;
  margin: 0 auto;
  padding-top: 167px;
  padding-bottom: 160px;
  padding-inline: 40px
}

.recommend_sub_block__head {
  display: flex;
  color: #143d32;
  gap: 40px;
  align-items: center
}

.recommend_sub_block__head h4 {
  font-size: 2.125rem;
  font-weight: 800;
  line-height: 170%;
  letter-spacing: -.0425rem;
  display: flex;
  gap: 20px;
  align-items: center
}

.recommend_sub_block__head h4::before {
  content: "";
  display: block;
  background: url(../images/deco_header.svg) no-repeat center/cover;
  width: 55px;
  height: 55px
}

.recommend_sub_block__head p {
  font-size: 1rem;
  font-weight: 600;
  line-height: 130%;
  letter-spacing: .02rem
}

.recommend_sub_block__iframe {
  border-radius: 20px;
  background: #fff;
  margin-top: 30px;
  position: relative;
  margin-bottom: 68px;
  height: 452px;
  overflow: auto
}

.recommend_sub_block__iframe::after {
  position: absolute;
  content: "";
  background: url(/assets/img/top/deco_search_02.svg) no-repeat center/contain;
  display: block;
  width: 100px;
  height: 103px;
  right: 32px;
  top: -87px;
  z-index: -1
}

.recommend_sub_block__iframe iframe {
  margin: auto
}

.recommend_sub_block__img {
  width: 829px;
  margin: auto
}

.recommend_sub_block__img img {
  width: 100%
}

.recommend_sub_block .c-btn {
  margin-top: 50px;
  left: 50%;
  transform: translateX(-50%)
}

.recommend_block {
  position: relative;
  z-index: 0
}

.recommend_block__inner {
  max-width: 1180px;
  margin: 0 auto;
  padding-top: 167px;
  padding-inline: 40px
}

.recommend_block__head {
  display: flex;
  color: #143d32;
  gap: 40px;
  align-items: center
}

.recommend_block__head h4 {
  font-size: 2.125rem;
  font-weight: 800;
  line-height: 170%;
  letter-spacing: -.0425rem;
  display: flex;
  gap: 20px;
  align-items: center
}

.recommend_block__head h4::before {
  content: "";
  display: block;
  background: url(../images/deco_header.svg) no-repeat center/cover;
  width: 55px;
  height: 55px
}

.recommend_block__head p {
  font-size: 1rem;
  font-weight: 600;
  line-height: 130%;
  letter-spacing: .02rem
}

.recommend_block__iframe {
  border-radius: 20px;
  background: #fff;
  margin-top: 30px;
  position: relative;
  overflow: auto;
  height: 452px
}

.recommend_block__iframe::after {
  position: absolute;
  content: "";
  background: url(/assets/img/top/deco_search_02.svg) no-repeat center/contain;
  display: block;
  width: 100px;
  height: 103px;
  right: 32px;
  top: -87px;
  z-index: -1
}

.recommend_block__iframe iframe {
  margin: 0 auto
}

.recommend_block__img {
  max-width: 829px;
  width: 100%;
  margin: auto
}

.recommend_block__img img {
  width: 100%
}

.about_page {
  background: #faf9f5;
  color: #143d32
}

.about_page .section_wrapper {
  width: min(85%, 1100px);
  margin-inline: auto
}

.about_page .mv_block {
  overflow-x: hidden;
  padding-top: 120px
}

.about_page .mv_block__inner {
  max-width: 1180px;
  margin: 0 auto;
  padding-inline: 40px
}

.about_page .mv_block__wrap {
  display: flex;
  align-items: center
}

.about_page .mv_block__head {
  max-width: 417px;
  color: var(--green-850, #1cac85);
  position: relative
}

.about_page .mv_block__sub_title {
  font-family: Inter;
  font-weight: 600;
  letter-spacing: .06em;
  text-shadow: 0 0 80px #fff;
  text-transform: uppercase
}

.about_page .mv_block__main_title {
  margin-top: 24px;
  font-size: 54px;
  font-weight: 700;
  letter-spacing: -.04em;
  line-height: 1.25;
  text-shadow: 0 0 80px #fff;
  white-space: nowrap
}

.about_page .mv_block__img {
  margin-right: calc(50% - 50vw);
  margin-left: -111px;
  width: 100vw
}

.about_page .mv_block__img img {
  aspect-ratio: 1000/430;
  width: 100%;
  object-position: bottom;
  border-radius: 0 0 0 20px;
  object-fit: cover
}

.about_page .lead_block {
  margin-top: 106px;
  padding: 0 0 73px;
  background: url(../img/about/bg_lead.webp) center center/min(98%, 1454px) auto no-repeat
}

.about_page .lead_block_inner {
  width: min(84.7%, 700px);
  margin-inline: auto;
  text-align: center
}

.about_page .lead_block__sp_bg {
  display: none
}

.about_page .lead_block__sp_bg_01 {
  width: 98%;
  transform: translateX(calc(-10 / 393 * 100vw))
}

.about_page .lead_block__sp_bg_02 {
  width: 106%;
  transform: translateX(calc(-10 / 393 * 100vw))
}

.about_page .lead_block__top_bg {
  width: min(100%, 609px);
  margin: 0 auto 60px
}

.about_page .lead_block__title {
  margin-bottom: 27px;
  color: #1cac85;
  font-size: 3rem;
  font-weight: 800;
  line-height: 1.4;
  letter-spacing: -.02em
}

.about_page .lead_block__subtitle {
  margin-bottom: 42px;
  color: #1cac85;
  font-family: Inter;
  font-size: 1rem;
  font-weight: 600;
  line-height: 1.7;
  letter-spacing: .06em
}

.about_page .lead_block__text {
  font-size: 1rem;
  font-weight: 700;
  line-height: 2.5;
  letter-spacing: .02em
}

.about_page .about_block {
  display: flex;
  position: relative;
  margin-top: 126px
}

.about_page .about_block_main {
  width: min(56.4%, 620px);
  padding: 63px 0;
  background: #fff;
  border-radius: 20px 0 0 20px
}

.about_page .about_block_main_head {
  margin-bottom: 46px;
  padding: 0 0 3px;
  border-left: 6px solid #1cac85
}

.about_page .about_block_main_head__subtitle {
  margin: 0 0 35px 8.5%;
  color: #1cac85;
  font-family: Inter;
  font-size: .875;
  font-weight: 600;
  line-height: 1;
  letter-spacing: -.005em
}

.about_page .about_block_main_head__title {
  margin-inline: 4.5%;
  font-family: Noto Sans JP;
  font-size: 3.125rem;
  font-weight: 800;
  line-height: 1.2;
  letter-spacing: .01em
}

.about_page .about_block_main_head__title span {
  letter-spacing: -.55em
}

.about_page .about_block_main__text {
  width: 80.64%;
  margin: 0 auto;
  font-size: 1rem;
  font-weight: 500;
  line-height: 2;
  letter-spacing: .02em;
  text-align: justified
}

.about_page .about_block_sub {
  width: min(43.6%, 480px);
  padding: 80px 0 0;
  border-radius: 0 20px 20px 0;
  background: #f3e5d5
}

.about_page .about_block_sub__problems {
  width: min(90%, 425px);
  margin: 0 auto 28px;
  transform: translateX(3px)
}

.about_page .about_block_sub_answer {
  position: relative;
  display: flex;
  width: min(78%, 361px);
  margin: 0 auto;
  padding: 19px 10px 18px 17px;
  transform: translateX(3px);
  border-radius: 6px;
  background: #fff
}

.about_page .about_block_sub_answer__icon {
  margin: 0 10px 0 0
}

.about_page .about_block_sub_answer__01 {
  margin: 3px 0 4px;
  font-size: .9375rem;
  font-weight: 700;
  line-height: 1;
  letter-spacing: -.02em
}

.about_page .about_block_sub_answer__02 {
  display: inline;
  position: relative;
  padding-inline: 1px;
  background: linear-gradient(transparent 60%, #faff00 0);
  color: #1cac85;
  font-size: 1.375rem;
  font-weight: 700;
  line-height: 1;
  letter-spacing: -.02em
}

.about_page .about_block_sub_answer::after {
  content: "";
  position: absolute;
  right: 29%;
  bottom: -8px;
  width: 20px;
  height: 8px;
  background: url(../img/about/bg_about_text.svg) left top/contain no-repeat
}

.about_page .about_block_sub_answer__character {
  position: absolute;
  z-index: 2;
  right: calc(-90 / 1512 * 100vw);
  bottom: -71px;
  width: 36.288%
}

.about_page .about_block::before {
  content: "";
  position: absolute;
  top: -114px;
  left: 60px;
  width: 168px;
  aspect-ratio: 168/114;
  background: url(../img/about/bg_about.svg) left top/cover no-repeat
}

.about_page .feature_block {
  padding: 160px 0 0
}

.about_page .feature_block_head {
  margin-bottom: 80px
}

.about_page .feature_block_head__subtitle {
  margin-bottom: 10px;
  color: #1cac85;
  font-family: Inter;
  font-size: .875rem;
  font-weight: 600;
  line-height: 1.7;
  letter-spacing: .06em;
  text-align: center
}

.about_page .feature_block_head_title {
  text-align: center
}

.about_page .feature_block_head_title__01 {
  font-size: 2.75rem;
  font-weight: 800;
  line-height: 1.2;
  letter-spacing: -.005em
}

.about_page .feature_block_head_title__02 {
  position: relative;
  display: inline-block;
  color: #12906e;
  font-family: Inter;
  font-size: 4.8125rem;
  font-weight: 700;
  line-height: 1.2;
  letter-spacing: -.06em
}

.about_page .feature_block_head_title__02::after {
  content: "";
  position: absolute;
  top: -8px;
  left: -3px;
  display: block;
  width: 40px;
  aspect-ratio: 25/16;
  background: url(../img/about/ico_feature_title.svg) left top/contain no-repeat
}

.about_page .feature_block_head_title__03,
.about_page .feature_block_head_title__04 {
  font-size: 3.125rem;
  font-weight: 800;
  line-height: 1.2;
  letter-spacing: -.03em
}

.about_page .feature_block_head_title__03 {
  color: #12906e
}

.about_page .feature_block_head_title__04 {
  margin-left: calc(-4 / 393 * 100vw)
}

.about_page .feature_block_list {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 118px 80px
}

.about_page .feature_block_list_item {
  position: relative
}

.about_page .feature_block_list_item_number {
  position: absolute;
  top: -37px;
  left: 30px;
  width: 78px;
  aspect-ratio: 78/83;
  padding: 25px 0 0;
  background: url(../img/about/bg_feature_number.svg) left top/cover no-repeat;
  color: #1cac85;
  font-family: Inter;
  text-align: center
}

.about_page .feature_block_list_item_number__01 {
  display: block;
  margin-bottom: 4px;
  font-size: .6875rem;
  font-weight: 600;
  line-height: 1;
  letter-spacing: .06em
}

.about_page .feature_block_list_item_number__02 {
  font-size: 1.9375rem;
  font-weight: 700;
  line-height: 1;
  letter-spacing: -.02em
}

.about_page .feature_block_list_item__title {
  display: flex;
  margin-bottom: 21px;
  padding: 31px 0 21px;
  border-bottom: 1px solid #dcece8;
  color: #1cac85;
  font-size: 1.5625rem;
  font-weight: 800;
  line-height: 1.2;
  letter-spacing: -.02em
}

.about_page .feature_block_list_item__title::before {
  content: "";
  flex-shrink: 0;
  width: 28px;
  height: 28px;
  margin-right: 12px;
  background: url(../img/about/ico_feature_list_title.svg) left top/cover no-repeat
}

.about_page .feature_block_list_item__text {
  font-size: .9375rem;
  font-weight: 600;
  line-height: 1.6;
  letter-spacing: .04em
}

.about_page .merit_block {
  padding: 136px 0 80px
}

.about_page .merit_block_wrapper {
  position: relative;
  padding: 76px 4% 80px;
  background: #1cac85;
  border-radius: 20px
}

.about_page .merit_block__top_bg {
  position: absolute;
  top: -70px;
  left: 0;
  right: 0;
  width: 123px;
  margin-inline: auto
}

.about_page .merit_block_head__subtitle {
  margin-bottom: 13px;
  color: #fff;
  font-family: Inter;
  font-size: .875rem;
  font-weight: 600;
  line-height: 1;
  letter-spacing: .06em;
  text-align: center
}

.about_page .merit_block_head {
  position: relative;
  text-align: center;
  padding-bottom: 28px
}

.about_page .merit_block_head span {
  position: relative;
  z-index: 2
}

.about_page .merit_block_head_title__01 {
  color: #fff;
  font-size: 2.75rem;
  font-weight: 800;
  line-height: 1.2;
  letter-spacing: -.005em
}

.about_page .merit_block_head_title__02 {
  position: relative;
  display: inline-block;
  color: #faff00;
  font-family: Inter;
  font-size: 4.8125rem;
  font-weight: 700;
  line-height: 1.2;
  letter-spacing: -.06em;
  vertical-align: -3px
}

.about_page .merit_block_head_title__02::after {
  content: "";
  position: absolute;
  top: 5px;
  right: -28px;
  display: block;
  width: 27px;
  aspect-ratio: 27/22;
  background: url(../img/about/ico_merit_number.svg) left top/contain no-repeat
}

.about_page .merit_block_head_title__03,
.about_page .merit_block_head_title__04 {
  color: #fff;
  font-size: 2.75rem;
  font-weight: 800;
  line-height: 1.2;
  letter-spacing: -.03em
}

.about_page .merit_block_head_title__03 {
  color: #faff00
}

.about_page .merit_block_head::after {
  content: "";
  position: absolute;
  z-index: 1;
  right: 0;
  bottom: 0;
  width: 16.5%;
  aspect-ratio: 161/111;
  background: url(../img/about/bg_merit_header.svg) left top/cover no-repeat
}

.about_page .merit_block_cards_card {
  position: relative;
  display: flex;
  align-items: center;
  padding: 38px 2.5% 46px 4.1%;
  background: #fff;
  border-radius: 20px
}

.about_page .merit_block_cards_card+section {
  margin-top: 56px
}

.about_page .merit_block_cards_card_number {
  position: absolute;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  top: -38px;
  left: -20px;
  width: 118px;
  height: 118px;
  padding-top: 4px;
  background: #faff00;
  border: 4px solid #1cac85;
  border-radius: 50%;
  text-align: center;
  color: #1cac85
}

.about_page .merit_block_cards_card_number_first {
  top: -69px;
  left: -40px
}

.about_page .merit_block_cards_card_number__01 {
  margin-bottom: 2px;
  font-size: .8125rem;
  font-family: Inter;
  font-weight: 800;
  line-height: 1
}

.about_page .merit_block_cards_card_number__02 {
  font-size: 2.75rem;
  font-family: Inter;
  font-weight: 700;
  line-height: 1;
  letter-spacing: .05em
}

.about_page .merit_block_cards_card_head {
  color: #1cac85
}

.about_page .merit_block_cards_card_head_first {
  width: 28.5%;
  padding-top: 1px
}

.about_page .merit_block_cards_card_head_second {
  width: 27.5%;
  padding-top: 1px;
  margin-left: 1%
}

.about_page .merit_block_cards_card_head_third {
  width: 27.5%;
  padding-top: 16px;
  margin-left: 1%
}

.about_page .merit_block_cards_card_head__subtitle {
  display: block;
  margin-bottom: 8px;
  font-size: .8125rem;
  font-weight: 700;
  line-height: 1.4;
  letter-spacing: .02em
}

.about_page .merit_block_cards_card_head__title {
  padding: 0 2px 0;
  background: linear-gradient(transparent 65%, #faff00 0);
  font-size: 1.875rem;
  font-weight: 800;
  line-height: 1.4;
  letter-spacing: .02em
}

.about_page .merit_block_cards_card_list {
  width: 72.5%;
  margin-left: 1%
}

.about_page .merit_block_cards_card_list li {
  display: flex;
  font-size: .9375rem;
  font-weight: 500;
  line-height: 1.3;
  letter-spacing: .02em
}

.about_page .merit_block_cards_card_list li+li {
  margin-top: 7px
}

.about_page .merit_block_cards_card_list li b {
  display: inline-block;
  background: #ffe500
}

.about_page .merit_block_cards_card_list_first li+li {
  margin-top: 16px
}

.about_page .merit_block_cards_card_list li::before {
  content: "・";
  margin: 2px 3px 0 0;
  color: #1cac85
}

.about_page .flow_block {
  padding: 80px 0 160px;
  background: #fff
}

.about_page .flow_block_head {
  margin-bottom: 76px
}

.about_page .flow_block_head__subtitle {
  margin-bottom: 30px;
  color: #1cac85;
  font-family: Inter;
  font-size: .875rem;
  font-weight: 600;
  line-height: 1.7;
  letter-spacing: .06em
}

.about_page .flow_block_head__title {
  font-size: 3.125rem;
  font-weight: 800;
  line-height: 1.2
}

.about_page .flow_block_list {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 86px 80px;
  width: min(85%, 1080px);
  margin: 0 auto 65px;
  transform: translateX(8px);
  background: url(../img/about/bg_flow.svg) center center/min(80%, 774px) auto no-repeat
}

.about_page .flow_block_list_item {
  position: relative;
  padding: 12px 0 29px;
  background: #ebf5ef;
  border-radius: 16px
}

.about_page .flow_block_list_item_number {
  position: absolute;
  top: -16px;
  left: -18px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  width: 80px;
  height: 80px;
  background: #1cac85;
  border-radius: 50%;
  color: #fff;
  text-align: center
}

.about_page .flow_block_list_item_number__01 {
  font-family: Inter;
  font-size: .875rem;
  font-weight: 600;
  line-height: 1;
  letter-spacing: .06em
}

.about_page .flow_block_list_item_number__02 {
  font-family: Inter;
  font-size: 1.875rem;
  font-weight: 700;
  line-height: 1
}

.about_page .flow_block_list_item__image {
  width: min(80%, 140px);
  margin: 0 auto 4px
}

.about_page .flow_block_list_item__text {
  padding-inline: 14% 8%;
  font-size: .875rem;
  font-weight: 500;
  line-height: 1.6
}

.about_page .flow_block_link {
  left: 50%;
  transform: translateX(-50%)
}

.about_page .voice_block {
  display: flex;
  overflow: hidden
}

.about_page .voice_block_head {
  width: 50%;
  background: url(../img/about/bg_voice.webp) right top/cover no-repeat
}

.about_page .voice_block_head_inner {
  width: min(86.5%, 550px);
  padding: 85px 2% 0 0;
  margin-left: auto
}

.about_page .voice_block_head__subtitle {
  margin-bottom: 40px;
  color: #1cac85;
  font-family: Inter;
  font-size: .875rem;
  font-weight: 600;
  line-height: 1;
  letter-spacing: .06em
}

.about_page .voice_block_head__title {
  margin-bottom: 35px;
  font-size: 3.125rem;
  font-weight: 800;
  line-height: 1
}

.about_page .voice_block_head__text {
  margin-bottom: 60px;
  font-size: 1rem;
  font-weight: 600;
  line-height: 1.7;
  letter-spacing: .02em
}

.about_page .voice_block_body {
  width: 50%;
  background: #d4eadd;
  padding: 80px 8.8% 126px
}

.about_page .voice_block_body_list {
  width: min(100%, 460px)
}

.about_page .voice_block_body_list_item {
  position: relative;
  padding: 26px 2% 23px 11%;
  background: #f5faf7;
  border-radius: 10px
}

.about_page .voice_block_body_list_item:nth-of-type(2) {
  margin-top: 77px
}

.about_page .voice_block_body_list_item:nth-of-type(3) {
  margin-top: 43px
}

.about_page .voice_block_body_list_item:nth-of-type(4) {
  margin-top: 54px
}

.about_page .voice_block_body_list_item__text {
  margin-bottom: 15px;
  color: #1cac85;
  font-size: 1.3125rem;
  font-weight: 400;
  line-height: 1.55;
  letter-spacing: -.02em
}

.about_page .voice_block_body_list_item:nth-of-type(3) .voice_block_body_list_item__text {
  font-size: 1.125rem
}

.about_page .voice_block_body_list_item__status {
  font-size: .875rem;
  font-weight: 500;
  line-height: 1.7
}

.about_page .voice_block_body_list_item__status--02,
.about_page .voice_block_body_list_item__status--04 {
  margin-left: 250px
}

.about_page .voice_block_body_list_item__status span+span {
  display: inline-block;
  margin-left: 6px
}

.about_page .voice_block_body_list_item::before {
  content: "";
  position: absolute;
  bottom: -14px;
  z-index: 1;
  display: block;
  width: 25px;
  height: 14px
}

.about_page .voice_block_body_list_item:nth-of-type(odd)::before {
  left: 46px;
  background: url(../img/about/bg_voice_01.svg) left top/cover no-repeat
}

.about_page .voice_block_body_list_item:nth-of-type(even)::before {
  right: 46px;
  background: url(../img/about/bg_voice_02.svg) left top/cover no-repeat
}

.about_page .voice_block_body_list_item::after {
  content: "";
  position: absolute;
  z-index: 2;
  display: block;
  width: 23.26%;
  aspect-ratio: 1/1
}

.about_page .voice_block_body_list_item:nth-of-type(1)::after {
  left: calc(-72 / 1512 * 100vw);
  bottom: calc(-46 / 1512 * 100vw);
  background: url(../img/about/ico_voice_01.svg) left top/cover no-repeat
}

.about_page .voice_block_body_list_item:nth-of-type(2)::after {
  right: calc(-72 / 1512 * 100vw);
  bottom: calc(-13 / 1512 * 100vw);
  background: url(../img/about/ico_voice_02.svg) left top/cover no-repeat
}

.about_page .voice_block_body_list_item:nth-of-type(3)::after {
  left: calc(-72 / 1512 * 100vw);
  bottom: calc(-24 / 1512 * 100vw);
  background: url(../img/about/ico_voice_03.svg) left top/cover no-repeat
}

.about_page .voice_block_body_list_item:nth-of-type(4)::after {
  right: calc(-72 / 1512 * 100vw);
  bottom: calc(-46 / 1512 * 100vw);
  background: url(../img/about/ico_voice_04.svg) left top/cover no-repeat
}

.about_page .voice_block_body_link {
  display: none
}

.about_page .recommend_wrapper {
  padding: 60px 0 160px;
  background: #f4efe5
}

.about_page .recommend_block__head {
  color: #143d32
}

.about_page .recommend_block__head h4::before {
  background: url(../images/deco_header.svg) no-repeat center/cover
}

.about_page .recommend_block__iframe {
  padding: 10px 0;
  background: #fff
}

.about_page .recommend_block__img {
  max-width: 100%
}

.about_page .recommend_block_link {
  padding-top: 60px;
  text-align: center
}

.blog_detail_page {
  margin-top: 200px;
  position: relative
}

.blog_detail_page__inner {
  max-width: 1164px;
  margin: 60px auto;
  display: flex;
  gap: 40px;
  padding-bottom: 220px;
  align-items: flex-start;
  position: relative
}

.blog_detail_page main {
  width: 100%
}

.blog_detail_page .blog_block {
  background-color: #fff;
  padding: 60px 65px 80px;
  border-radius: 10px
}

.blog_detail_page .blog_block h1 {
  color: #143d32;
  text-align: justify;
  font-size: 1.875rem;
  font-weight: 500;
  line-height: 160%
}

.blog_detail_page .blog_block__contents h1 {
  color: #143d32;
  text-align: justify;
  font-size: 1.875rem;
  font-weight: 500;
  line-height: 160%
}

.blog_detail_page .blog_block__contents h2 {
  margin-top: 70px;
  color: #143d32;
  font-size: 1.625rem;
  font-style: normal;
  font-weight: 700;
  line-height: 160%;
  letter-spacing: .0488rem;
  background-color: #d7ece0;
  padding: 8px 0 8px 18px
}

.blog_detail_page .blog_block__contents h3 {
  margin-top: 60px;
  color: #143d32;
  font-size: 1.625rem;
  font-weight: 700;
  line-height: 160%;
  letter-spacing: .0488rem;
  padding: 0 0 12px;
  border-bottom: 1px solid #d7ece0
}

.blog_detail_page .blog_block__contents h4 {
  margin-top: 60px;
  color: #143d32;
  font-family: "Noto Sans JP";
  font-size: 1.375rem;
  font-weight: 700;
  line-height: 160%
}

.blog_detail_page .blog_block__contents h5 {
  margin-top: 60px;
  color: #143d32;
  font-size: 1.1875rem;
  font-weight: 700;
  line-height: 160%
}

.blog_detail_page .blog_block__contents p {
  margin-top: 30px;
  font-size: 1.0625rem;
  line-height: 210%;
  letter-spacing: .0425rem;
  font-weight: 400
}

.blog_detail_page .blog_block__contents a {
  color: #00b506;
  font-family: "Noto Sans JP";
  font-style: normal;
  text-decoration-line: underline
}

.blog_detail_page .blog_block__contents>ul {
  margin-top: 40px
}

.blog_detail_page .blog_block__contents>ul+ul {
  margin-top: 20px
}

.blog_detail_page .blog_block__contents>ul a {
  line-height: 100%
}

.blog_detail_page .blog_block__contents>ul li {
  padding: 0 0 0 1.25rem;
  position: relative;
  margin-top: 13px;
  position: relative;
  padding-left: 20px
}

.blog_detail_page .blog_block__contents>ul li::before {
  top: .625rem;
  left: 0;
  position: absolute;
  content: "";
  display: inline-block;
  width: .375rem;
  height: .375rem;
  background: #1cac85;
  border-radius: 50%
}

.blog_detail_page .blog_block__contents>ul li ul {
  margin-top: 1.25rem
}

.blog_detail_page .blog_block__contents>ul li ul li {
  position: relative;
  padding: 0 0 0 1.25rem
}

.blog_detail_page .blog_block__contents>ul li ul li::before {
  content: "";
  position: absolute;
  top: .625rem;
  left: 0;
  width: .375rem;
  height: .375rem;
  border: 1px double #1cac85;
  background: #fff;
  border-radius: 50%
}

.blog_detail_page .blog_block__contents table.table-1 {
  border-radius: 4px;
  border: 1px solid #a7d1c6;
  margin-top: 40px
}

.blog_detail_page .blog_block__contents table.table-1 th {
  background: #dfeee5;
  color: #0e8a69;
  text-align: justify;
  font-size: .9375rem;
  font-weight: 600;
  line-height: 220%;
  letter-spacing: .0375rem;
  border-bottom: 1px solid #a7d1c6;
  padding: 20px 61px 32px 20px
}

.blog_detail_page .blog_block__contents table.table-1 td {
  color: #143d32;
  text-align: justify;
  font-size: .9375rem;
  font-weight: 400;
  line-height: 175%;
  letter-spacing: .0375rem;
  border-bottom: 1px solid #a7d1c6;
  padding: 20px
}

.blog_detail_page .blog_block__contents .has-fixed-layout {
  border-radius: 4px;
  border-left: 1px solid #a7d1c6;
  margin-top: 40px
}

.blog_detail_page .blog_block__contents .has-fixed-layout thead {
  border: #a7d1c6 1px
}

.blog_detail_page .blog_block__contents .has-fixed-layout tr {
  border: 1px solid #a7d1c6
}

.blog_detail_page .blog_block__contents .has-fixed-layout th {
  background: #dfeee5;
  color: #0e8a69;
  font-size: .9375rem;
  font-weight: 600;
  line-height: 200%;
  letter-spacing: .0375rem;
  border: 1px solid #a7d1c6;
  padding: 25px 25px
}

.blog_detail_page .blog_block__contents .has-fixed-layout td {
  color: #143d32;
  text-align: justify;
  font-size: .9375rem;
  font-weight: 400;
  line-height: 175%;
  letter-spacing: .0375rem;
  border: 1px solid #a7d1c6;
  padding: 20px 20px 24px 20px
}

.blog_detail_page .blog_block__contents .has-fixed-layout tbody tr:nth-child(odd) {
  background-color: #fff
}

.blog_detail_page .blog_block__contents .has-fixed-layout tbody tr:nth-child(even) {
  background-color: #eef3ee
}

.blog_detail_page .blog_block__contents .highlight {
  color: #00b506
}

.blog_detail_page .blog_block__contents strong {
  font-weight: 700
}

.blog_detail_page .blog_block__contents .wp-element-caption {
  font-size: 13px;
  color: #6e6e6e
}

.blog_detail_page .blog_block__contents .wp-block-image {
  margin-top: 40px
}

.blog_detail_page .blog_block__contents .wp-block-image img {
  width: 100%
}

.blog_detail_page .blog_block__info {
  display: flex;
  gap: 12px;
  align-items: center;
  margin-top: 37px
}

.blog_detail_page .blog_block__info time {
  color: #143d32;
  text-align: justify;
  font-size: .875rem;
  line-height: 160%
}

.blog_detail_page .blog_block__info span {
  display: block;
  background-color: #a7d1c6;
  width: 1px;
  height: 15px
}

.blog_detail_page .blog_block__info_sub {
  display: flex;
  gap: 23px;
  margin-top: 21px;
  align-items: center
}

.blog_detail_page .blog_block__label_wrapper {
  display: flex;
  gap: 10px;
  align-items: center
}

.blog_detail_page .blog_block__label {
  background: #e0eae1;
  display: block;
  border-radius: 80px;
  padding: 1px 14px;
  color: #7a967d;
  font-size: .75rem;
  font-weight: 500;
  letter-spacing: .03rem;
  text-decoration-line: none
}

.blog_detail_page .blog_block__author {
  display: flex;
  align-items: center;
  gap: 12px
}

.blog_detail_page .blog_block__author p {
  color: #143d32;
  text-align: justify;
  font-size: .875rem;
  line-height: 160%;
  margin: 0
}

.blog_detail_page .blog_block__author_pic {
  width: 35px;
  height: 35px
}

.blog_detail_page .blog_block__sns_link {
  margin-left: auto;
  display: flex;
  gap: 5px
}

.blog_detail_page .blog_block__eyecatch {
  margin-top: 50px
}

.blog_detail_page .blog_block__eyecatch img {
  width: 100%
}

.blog_detail_page .blog_block .article_summary {
  border-radius: 4px;
  border: 6px solid #1cac85;
  padding: 24px 40px 40px 40px;
  position: relative;
  margin-top: 50px
}

.blog_detail_page .blog_block .article_summary::before {
  position: absolute;
  content: "";
  display: block;
  background: url(../images/deco_header.svg) no-repeat center/contain;
  width: 130px;
  height: 118px;
  right: 20px;
  top: -30px
}

.blog_detail_page .blog_block .article_summary__list {
  margin-top: 20px
}

.blog_detail_page .blog_block .article_summary__item {
  display: block
}

.blog_detail_page .blog_block .article_summary__item::before {
  display: none
}

.blog_detail_page .blog_block .article_summary__item h4 {
  color: #143d32;
  font-size: 1.125rem;
  font-weight: 600;
  line-height: 220%;
  display: flex;
  gap: 10px;
  align-items: baseline;
  margin-top: 15px
}

.blog_detail_page .blog_block .article_summary__item h4::before {
  content: "";
  display: block;
  background: #1cac85;
  width: 8px;
  height: 8px;
  border-radius: 50%
}

.blog_detail_page .blog_block .article_summary__item p {
  color: #143d32;
  font-size: .875rem;
  line-height: 190%;
  letter-spacing: .035rem;
  margin-top: 10px
}

.blog_detail_page .blog_block .article_summary h3 {
  color: #143d32;
  font-size: 1.25rem;
  font-weight: 600;
  line-height: 220%;
  border-bottom: 2px solid #a7d1c6;
  padding-bottom: 10px;
  margin: 0
}

.blog_detail_page .blog_block .information_block {
  border-radius: 4px;
  border: 1px solid #a7d1c6;
  padding: 30px 40px 40px 40px;
  margin-top: 50px
}

.blog_detail_page .blog_block .information_block h5 {
  color: #143d32;
  font-size: 1.125rem;
  font-weight: 600;
  line-height: 220%;
  letter-spacing: .045rem;
  border-bottom: 2px solid #a7d1c6;
  margin: 0
}

.blog_detail_page .blog_block .information_block ul {
  margin-top: 20px
}

.blog_detail_page .blog_block .information_block ul li::before {
  background: #143d32
}

.blog_detail_page .blog_block .information_block p {
  margin-top: 20px;
  color: #143d32;
  text-align: justify;
  font-size: .875rem;
  font-weight: 400;
  line-height: 190%;
  letter-spacing: .035rem
}

.blog_detail_page .blog_block .download_block {
  border-radius: 4px;
  border: 6px solid #1cac85;
  padding: 24px 30px 40px 30px;
  margin-top: 40px;
  position: relative
}

.blog_detail_page .blog_block .download_block::before {
  content: "";
  display: block;
  width: 110px;
  height: 145px;
  background: url(../images/deco_header.svg) no-repeat center/contain;
  position: absolute;
  right: -30px;
  top: 10px
}

.blog_detail_page .blog_block .download_block h5 {
  color: #143d32;
  font-family: "Noto Sans JP";
  font-size: 20px;
  font-style: normal;
  font-weight: 600;
  line-height: 220%;
  border-bottom: 2px solid #a7d1c6;
  margin: 0
}

.blog_detail_page .blog_block .download_block p {
  color: #143d32;
  font-size: .8125rem;
  line-height: 190%;
  letter-spacing: .0325rem;
  margin: 0
}

.blog_detail_page .blog_block .download_block__body {
  margin-top: 14px;
  display: flex;
  gap: 20px;
  align-items: center
}

.blog_detail_page .blog_block .download_block__contents {
  flex: 1
}

.blog_detail_page .blog_block .download_block__img {
  width: 244px
}

.blog_detail_page .blog_block .download_block .secondary_btn {
  margin-top: 15px;
  width: 100%
}

.blog_detail_page .blog_block .download_block .secondary_btn a {
  text-align: center
}

.blog_detail_page .primary_btn {
  width: 100%;
  text-align: center
}

.blog_detail_page .primary_btn a {
  border-radius: 9999px;
  border: 2px solid var(--green-850, #1cac85);
  display: inline-block;
  color: var(--green-850, #1cac85);
  font-size: 1.125rem;
  font-weight: 700;
  line-height: 170%;
  letter-spacing: .0225rem;
  margin: 50px 0 20px;
  gap: 1rem;
  padding: 20px 36px;
  border-radius: 9999px;
  text-decoration: none
}

.blog_detail_page .primary_btn:hover a {
  color: #fff;
  background: #1cac85;
  transition-duration: .3s
}

.blog_detail_page .wp-block-separator {
  padding: 40px 0 0 0;
  border-top: none;
  border-bottom: #d7ece0 1px solid
}

.blog_detail_page .secondary_btn {
  border-radius: 9999px;
  border: 2px solid var(--green-850, #1cac85);
  display: inline-block;
  position: relative;
  text-align: center
}

.blog_detail_page .secondary_btn a {
  color: #fff;
  background-color: var(--green-850, #1cac85);
  font-size: .9375rem;
  font-weight: 700;
  line-height: 170%;
  letter-spacing: .0225rem;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 1rem;
  padding: 23px 22px;
  border-radius: 9999px;
  text-decoration: none
}

.blog_detail_page .secondary_btn:hover a {
  color: var(--green-850, #1cac85);
  background: #fff;
  transition-duration: .3s
}

.blog_detail_page .author_profile h5 {
  color: #143d32;
  font-size: 1.1875rem;
  font-weight: 600;
  line-height: 100%
}

.blog_detail_page .author_profile__body {
  border-radius: 6px;
  background: #f4f4f3;
  display: flex;
  padding: 28px 34px 24px 30px;
  gap: 26px;
  align-items: center;
  margin-top: 20px
}

.blog_detail_page .author_profile__img {
  width: 110px;
  height: 110px
}

.blog_detail_page .author_profile__img img {
  border-radius: 999px
}

.blog_detail_page .author_profile__contents {
  flex: 1
}

.blog_detail_page .author_profile__contents h6 {
  color: #083d2f;
  text-align: justify;
  font-size: 1.125rem;
  font-weight: 500;
  line-height: 175%
}

.blog_detail_page .author_profile__contents span {
  font-size: .8125rem;
  font-weight: 600;
  line-height: 175%;
  margin-right: 12px
}

.blog_detail_page .author_profile__contents p {
  color: #083d2f;
  text-align: justify;
  font-family: "Noto Sans JP";
  font-size: 14px;
  font-style: normal;
  font-weight: 400;
  line-height: 175%;
  margin-top: 0
}

.blog_detail_page .author_profile__link {
  margin-top: 8px
}

.blog_detail_page .author_profile__link a {
  text-decoration: none;
  color: #00b506;
  font-size: .8125rem;
  line-height: 175%
}

.blog_detail_page .related_article_block h5 {
  color: #143d32;
  font-size: 1.1875rem;
  font-weight: 600;
  line-height: 100%
}

.blog_detail_page .related_article_block__body {
  margin-top: 17px;
  border-radius: 6px;
  border: 1px solid #a7d1c6;
  background: #fff;
  padding: 20px 24px 20px 20px
}

.blog_detail_page .related_article_block__body a {
  display: flex;
  gap: 20px;
  text-decoration: none
}

.blog_detail_page .related_article_block__img {
  width: 186px
}

.blog_detail_page .related_article_block__img img {
  width: 100%
}

.blog_detail_page .related_article_block__contents {
  flex: 1
}

.blog_detail_page .related_article_block__contents h6 {
  color: #143d32;
  font-size: 1rem;
  font-weight: 600;
  line-height: 165%
}

.blog_detail_page .related_article_block__contents p {
  color: #7a967d;
  font-size: .75rem;
  line-height: 175%;
  margin-top: 10px
}

.blog_detail_page .share_block {
  margin-top: 70px
}

.blog_detail_page .share_block h6 {
  text-align: center;
  color: #143d32;
  font-size: 1.1875rem;
  font-weight: 600;
  line-height: 100%
}

.blog_detail_page .share_block__wrapper {
  margin-top: 23px;
  display: flex;
  justify-content: center;
  gap: 20px
}

.blog_detail_page .share_block__item {
  border: 1px solid #a7d1c6;
  border-radius: 5px;
  padding: 20px 90px
}

.blog_detail_page .share_block__item img {
  width: 100%
}

.blog_detail_page .contact_us_block {
  width: 780px;
  display: flex;
  margin: 50px 0 0;
  background: #fff;
  gap: 32px;
  padding: 42px;
  border-radius: 10px
}

.blog_detail_page .contact_us_block__body h6 {
  color: #1cac85;
  font-family: Inter;
  font-size: 1.75rem;
  font-weight: 600;
  line-height: 130%
}

.blog_detail_page .contact_us_block__body p {
  margin-top: 16px;
  color: #143d32;
  font-size: .9375rem;
  font-weight: 400;
  line-height: 180%;
  letter-spacing: .0187rem
}

.blog_detail_page .contact_us_block__btn_wrapper {
  flex: 1
}

.blog_detail_page .contact_us_block__btn_wrapper a {
  text-decoration: none
}

.blog_detail_page .contact_us_block__btn {
  border-radius: 9999px;
  border: 2px solid #1cac85;
  width: 100%;
  text-align: center;
  flex: 1;
  border: 2px solid var(--green-850, #1cac85);
  display: inline-block
}

.blog_detail_page .contact_us_block__btn:nth-child(2) {
  margin-top: 15px
}

.blog_detail_page .contact_us_block__btn:hover {
  background: #1cac85;
  color: #fff;
  transition-duration: .3s
}

.blog_detail_page .contact_us_block__btn:hover a {
  color: #fff
}

.blog_detail_page .contact_us_block__btn a {
  color: #1cac85;
  font-family: "Noto Sans JP";
  font-size: 16px;
  font-style: normal;
  font-weight: 600;
  line-height: 100%;
  letter-spacing: .64px;
  display: block;
  padding: 22px 33px
}

.blog_detail_page .related_articles_block {
  max-width: 780px;
  margin-top: 70px
}

.blog_detail_page .related_articles_block h5 {
  color: #143d32;
  font-size: 1.1875rem;
  font-weight: 600;
  line-height: 100%
}

.blog_detail_page .related_articles_block__list {
  display: flex;
  gap: 30px;
  margin-top: 30px
}

.blog_detail_page .related_articles_block__navigation {
  display: flex;
  justify-content: space-between;
  margin-top: 70px
}

.blog_detail_page .related_articles_block__nav_button {
  display: flex;
  align-items: center;
  gap: 10px
}

.blog_detail_page .related_articles_block__nav_button a {
  color: #1cac85;
  font-family: Inter;
  font-size: 1.5rem;
  font-weight: 600;
  line-height: 130%
}

.blog_detail_page .related_articles_block__nav_button--prev::before {
  content: "";
  display: block;
  width: 15px;
  height: 15px;
  transform: rotate(45deg);
  border-left: 4px solid #1cac85;
  border-bottom: 4px solid #1cac85
}

.blog_detail_page .related_articles_block__nav_button--next::after {
  content: "";
  display: block;
  width: 15px;
  height: 15px;
  transform: rotate(-135deg);
  border-left: 4px solid #1cac85;
  border-bottom: 4px solid #1cac85
}

.blog_detail_page .related_articles_block__blog_link {
  width: 100%
}

.blog_detail_page .related_articles_block__blog_link a {
  margin: 72px auto 0;
  width: 182px;
  height: 64px;
  display: block;
  border-radius: 9999px;
  border: 2px solid #1cac85;
  color: #1cac85;
  font-family: "Noto Sans JP";
  font-size: 18px;
  font-style: normal;
  font-weight: 700;
  line-height: 60px;
  letter-spacing: .36px;
  text-align: center
}

.blog_detail_page .related_articles_block__blog_link a:hover {
  background: #1cac85;
  color: #fff;
  transition-duration: .3s
}

.blog_detail_page .related_articles_block .article_block__img {
  width: 240px
}

.blog_detail_page .related_articles_block .article_block h4 {
  color: #143d32;
  text-align: justify;
  font-size: .875rem;
  font-weight: 600;
  line-height: 180%
}

.blog_detail_page .related_articles_block .article_block__date_wrapper {
  gap: unset;
  align-items: center
}

.blog_detail_page .related_articles_block .article_block__date_wrapper .published_date,
.blog_detail_page .related_articles_block .article_block__date_wrapper .updated_date {
  color: #143d32;
  font-size: .6875rem;
  line-height: 160%;
  text-align: unset;
  letter-spacing: 0
}

.blog_detail_page .related_articles_block .article_block__date_wrapper .updated_date {
  position: relative
}

.blog_detail_page .related_articles_block .article_block__date_wrapper .updated_date:after {
  content: "";
  display: inline-block;
  position: relative;
  width: 1px;
  height: .875rem;
  background: #a1a1a1;
  margin-right: 10px;
  margin-left: 10px;
  top: 3px
}

.blog_detail_page .related_articles_block .article_block__author p {
  color: #7a967d;
  font-size: .6875rem;
  line-height: 160%
}

.blog_detail_page .related_articles_block .post_navigation_block {
  display: grid;
  grid-template-columns: 1fr 1fr;
  margin-top: 40px;
  align-items: center
}

.blog_detail_page .related_articles_block .post_navigation_block a {
  display: flex;
  gap: 20px;
  flex: 1
}

.blog_detail_page .related_articles_block .post_navigation_block span {
  display: block;
  content: "";
  background: #d9d9d9;
  width: 1px;
  height: 96px
}

.blog_detail_page .related_articles_block .post_navigation_block__item--prev {
  padding: 0 40px 0 0
}

.blog_detail_page .related_articles_block .post_navigation_block__item--next {
  padding: 0 0 0 40px;
  border-left: 1px solid #d9d9d9
}

.blog_detail_page .related_articles_block .post_navigation_block__img {
  width: 154px;
  height: 96.428px
}

.blog_detail_page .related_articles_block .post_navigation_block__img img {
  width: 100%;
  height: 100%;
  object-fit: cover
}

.blog_detail_page .related_articles_block .post_navigation_block__info {
  flex: 1
}

.blog_detail_page .related_articles_block .post_navigation_block__info h4 {
  color: #143d32;
  font-size: .875rem;
  font-weight: 600;
  line-height: 160%
}

.blog_detail_page .related_articles_block .post_navigation_block__info time {
  color: #7a967d;
  font-family: Inter;
  font-size: .875rem;
  font-weight: 500;
  line-height: 130%
}

.blog_detail_page .popular-articles {
  border-radius: 10px;
  background: #fff;
  padding: 20px 26px;
  position: sticky;
  top: 200px
}

.blog_detail_page .popular-articles h2 {
  color: #143d32;
  font-size: 1rem;
  font-weight: 600;
  line-height: 160%;
  padding: 0 0 17px 0;
  border-bottom: 2px solid #f5faf7
}

.blog_detail_page .popular-articles .article {
  padding: 18px 0 14px 0;
  border-bottom: 2px solid #f5faf7
}

.blog_detail_page .popular-articles .article:last-child {
  border-bottom: none
}

.blog_detail_page .popular-articles .article_head {
  display: flex;
  gap: 15px
}

.blog_detail_page .popular-articles .article_head h3 {
  color: #393939;
  text-align: justify;
  font-size: .8125rem;
  font-weight: 500;
  line-height: 160%;
  letter-spacing: -.0081rem;
  flex: 1
}

.blog_detail_page .popular-articles .article_thumbnail {
  width: 60px
}

.blog_detail_page .popular-articles .article_thumbnail img {
  width: 100%
}

.blog_detail_page .popular-articles .article_info {
  display: flex;
  gap: 15px;
  margin-top: 12px
}

.blog_detail_page .popular-articles .date {
  color: #393939;
  font-size: .75rem;
  font-weight: 400;
  line-height: 220%
}

.blog_detail_page .popular-articles .author {
  display: flex;
  align-items: center;
  gap: 7px
}

.blog_detail_page .popular-articles .author span {
  color: #393939;
  font-size: .6875rem;
  line-height: 220%
}

.blog_detail_page .popular-articles .author_img {
  width: 22px;
  height: 22px;
  border-radius: 50%;
  overflow: hidden
}

.blog_detail_page .popular-articles .author_img img {
  width: 100%;
  object-fit: contain
}

.blog_detail_page .sns_block {
  position: sticky;
  top: 200px
}

.blog_detail_page .sns_block__item {
  width: 26px
}

.blog_detail_page .sns_block__item:not(:first-child) {
  margin-top: 15px
}

.blog_detail_page .sns_block__item img {
  width: 100%
}

.blog_detail_page .breadcrumb_block {
  max-width: 1100px;
  margin: auto
}

.blog_detail_page .breadcrumb_block__inner {
  padding-right: 0
}

.blog_detail_page div#toc_container {
  margin-top: 30px;
  padding: 20px 36px 30px;
  border-radius: 10px;
  background: #f4f4f3
}

.blog_detail_page div#toc_container .toc_list {
  margin: 0;
  border-top: 2px solid #d4d4d4;
  padding-top: 17px;
  margin-top: 17px
}

.blog_detail_page div#toc_container .toc_list li {
  margin: 0
}

.blog_detail_page div#toc_container .toc_list li a {
  color: #143d32;
  font-size: 1.0625rem;
  line-height: 2.2;
  letter-spacing: .0425rem;
  display: flex;
  align-items: center;
  gap: 10px;
  text-decoration: none
}

.blog_detail_page div#toc_container .toc_list li a::before {
  content: "";
  display: inline-block;
  width: 6px;
  height: 6px;
  background: #143d32;
  border-radius: 50%
}

.blog_detail_page div#toc_container .toc_list li ul {
  margin: 0;
  padding-left: 20px
}

.blog_detail_page div#toc_container .toc_list li ul li a {
  color: #143d32;
  font-size: .9375rem;
  line-height: 2.2;
  letter-spacing: .0375rem
}

.blog_detail_page div#toc_container .toc_list li ul li a::before {
  display: none
}

.blog_detail_page div#toc_container .toc_title {
  color: #143d32;
  font-size: 1.125rem;
  line-height: 2.2;
  letter-spacing: .045rem;
  margin: 0
}

.blog_detail_page .toc_number {
  display: none
}

.blog_page .mv_block {
  overflow-x: hidden;
  padding-top: 120px
}

.blog_page .mv_block__inner {
  max-width: 1180px;
  margin: 0 auto;
  padding-inline: 40px
}

.blog_page .mv_block__wrap {
  display: flex;
  align-items: center;
  gap: 60px
}

.blog_page .mv_block__head {
  max-width: 417px;
  color: var(--green-850, #1cac85);
  position: relative;
  margin-top: -40px
}

.blog_page .mv_block__sub_title {
  font-family: Inter;
  font-weight: 600;
  letter-spacing: .06em;
  text-shadow: 0 0 80px #fff;
  text-transform: uppercase
}

.blog_page .mv_block__main_title {
  margin-top: 24px;
  font-size: 54px;
  font-weight: 700;
  letter-spacing: -.04em;
  line-height: 1.25;
  text-shadow: 0 0 80px #fff;
  white-space: nowrap
}

.blog_page .mv_block__img {
  margin-right: calc(50% - 50vw);
  margin-left: -111px;
  width: 100vw
}

.blog_page .mv_block__img img {
  aspect-ratio: 1000/430;
  width: 100%;
  object-position: bottom;
  border-radius: 0 0 0 20px;
  object-fit: cover
}

.blog_page .section_wrapper {
  width: min(85%, 1100px);
  margin-inline: auto
}

.blog_page .updated_date {
  position: relative
}

.blog_page .updated_date::after {
  content: "";
  display: inline-block;
  position: relative;
  width: 1px;
  height: .875rem;
  background: #a1a1a1;
  margin-right: 10px;
  margin-left: 10px;
  top: 3px
}

.blog_page .index_block {
  padding-top: 10px
}

.blog_page .index_block_top {
  display: flex;
  justify-content: space-between;
  margin-top: 80px;
  margin-bottom: 80px
}

.blog_page .index_block_top--reverse {
  flex-direction: row-reverse
}

.blog_page .index_block_top__img {
  width: 50%;
  display: block;
  position: relative;
  overflow: hidden
}

.blog_page .index_block_top__img img {
  border-radius: 8px
}

.blog_page .index_block_top_body {
  width: 45.45%
}

.blog_page .index_block_top time {
  display: block;
  color: var(--green-600, #00b506);
  font-family: Inter;
  font-size: 1rem;
  font-weight: 700;
  line-height: 100%;
  letter-spacing: .0163rem;
  margin-top: 10px
}

.blog_page .index_block_top__title {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  overflow: hidden;
  text-overflow: ellipsis;
  color: var(--green-900, #143d32);
  font-size: 1.75rem;
  font-weight: 700;
  line-height: 160%;
  letter-spacing: .05rem;
  margin-top: 28px
}

.blog_page .index_block_top__text {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  overflow: hidden;
  text-overflow: ellipsis;
  color: var(--green-900, #143d32);
  text-overflow: ellipsis;
  font-size: 1rem;
  font-weight: 400;
  line-height: 170%;
  letter-spacing: .02rem;
  margin-top: 19px
}

.blog_page .index_block_top__label {
  border-radius: 32px;
  background: #e0eae1;
  display: inline-block;
  margin-top: 20px
}

.blog_page .index_block_top__label a {
  padding: 4px 11px;
  color: #7a967d;
  font-size: .75rem;
  display: inline-block;
  font-weight: 500;
  letter-spacing: .03rem;
  width: 100%
}

.blog_page .index_block_top__date_wrapper {
  display: flex;
  align-items: center;
  margin-top: 15px
}

.blog_page .index_block_top__date_wrapper p {
  color: #666;
  text-align: justify;
  font-size: .75rem;
  line-height: 160%
}

.blog_page .index_block_top__date_wrapper span {
  width: 1px;
  height: 14px;
  background: #666;
  display: block
}

.blog_page .index_block_top__author {
  display: flex;
  align-items: center;
  gap: 10px;
  margin-top: 10px
}

.blog_page .index_block_top__author p {
  color: #666;
  font-size: .75rem;
  line-height: 220%
}

.blog_page .index_block_top__author_pic {
  width: 27px
}

.blog_page .index_block_top__author_pic img {
  width: 100%
}

.blog_page .index_block_list {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 80px 40px
}

.blog_page .pager_block {
  padding-top: 100px;
  padding-bottom: 160px
}

.company_page {
  overflow: hidden
}

.company_page .mv_block {
  overflow-x: hidden;
  padding-top: 120px
}

.company_page .mv_block__inner {
  max-width: 1180px;
  margin: 0 auto;
  padding-inline: 40px
}

.company_page .mv_block__wrap {
  display: flex;
  align-items: center;
  gap: 211px
}

.company_page .mv_block__head {
  max-width: 417px;
  color: var(--green-850, #1cac85);
  position: relative;
  margin-top: -40px
}

.company_page .mv_block__sub_title {
  font-family: Inter;
  font-weight: 600;
  letter-spacing: .06em;
  text-shadow: 0 0 80px #fff;
  text-transform: uppercase
}

.company_page .mv_block__main_title {
  margin-top: 24px;
  font-size: 54px;
  font-weight: 700;
  letter-spacing: -.04em;
  line-height: 1.25;
  text-shadow: 0 0 80px #fff;
  white-space: nowrap
}

.company_page .mv_block__img {
  margin-right: calc(50% - 50vw);
  margin-left: -111px;
  width: 100vw
}

.company_page .mv_block__img img {
  aspect-ratio: 1000/430;
  width: 100%;
  object-position: bottom;
  border-radius: 0 0 0 20px;
  object-fit: cover
}

.company_page .greeting_block {
  position: relative
}

.company_page .greeting_block::before {
  content: "";
  position: absolute;
  top: 50px;
  right: -10%;
  background: url(/assets/img/company/deco_greeting.svg) center center no-repeat;
  width: 561px;
  height: 390px;
  background-size: contain;
  mix-blend-mode: multiply
}

.company_page .greeting_block__inner {
  max-width: 1140px;
  padding-inline: 20px;
  margin: 87px auto 0;
  position: relative
}

.company_page .greeting_block__label {
  font-family: Inter;
  font-size: .875rem;
  font-weight: 600;
  letter-spacing: .06em;
  line-height: 1.7;
  color: #2fa888
}

.company_page .greeting_block__title {
  font-size: 3.125rem;
  font-weight: 600;
  letter-spacing: 0;
  line-height: 1.2;
  color: #143d32;
  margin-top: 30px
}

.company_page .greeting_block__img {
  max-width: 780px;
  width: 100%
}

.company_page .greeting_block__img img {
  width: 100%
}

.company_page .greeting_block__head {
  width: 100vw;
  margin: 80px calc(50% - 50vw) 0;
  display: flex;
  align-items: center
}

.company_page .greeting_block__head_texts {
  margin: 30px 0 0 -183px
}

.company_page .greeting_block__subtitle {
  font-size: 1.9375rem;
  font-weight: 700;
  letter-spacing: .02em;
  line-height: 2.1;
  color: #fff;
  box-decoration-break: clone;
  -webkit-box-decoration-break: clone;
  display: inline;
  padding: 1px 10px 5px 9px;
  background: #00b506;
  font-feature-settings: "palt"
}

.company_page .greeting_block__position {
  font-size: .9375rem;
  font-weight: 500;
  letter-spacing: .04em;
  line-height: 1;
  text-align: right;
  color: #143d32;
  margin-top: 45px
}

.company_page .greeting_block__position span {
  font-size: 1.75rem;
  margin-left: 18px;
  font-weight: 800;
  letter-spacing: 0
}

.company_page .greeting_block__contents {
  background: #fff;
  margin-top: -40px;
  position: relative;
  border-radius: 20px;
  padding: 80px 20px
}

.company_page .greeting_block__contents::before {
  content: "";
  background: url(/assets/img/company/txt_message.svg) center center no-repeat;
  width: 287px;
  height: 99px;
  background-size: contain;
  position: absolute;
  top: -33px;
  left: 8.8%
}

.company_page .greeting_block__text {
  max-width: 790px;
  width: 100%;
  margin: auto;
  font-size: 1rem;
  font-weight: 500;
  letter-spacing: .01em;
  line-height: 2.2;
  color: #143d32
}

.company_page .greeting_block__text+.greeting_block__text {
  margin-top: 33px
}

.company_page .information_block {
  max-width: 1140px;
  width: 100%;
  margin: 160px auto 0;
  padding-inline: 20px
}

.company_page .information_block__label {
  font-family: Inter;
  font-size: .875rem;
  font-weight: 600;
  letter-spacing: .06em;
  line-height: 1.7;
  color: #2fa888;
  text-align: center
}

.company_page .information_block__title {
  font-size: 3.125rem;
  font-weight: 800;
  line-height: 1.2;
  color: #143d32;
  margin-top: 30px;
  text-align: center
}

.company_page .information_block__contents {
  margin-top: 70px;
  background: #fff
}

.company_page .information_block__list {
  max-width: 830px;
  width: 100%;
  margin: auto;
  padding: 80px 20px
}

.company_page .information_item_block {
  display: flex;
  align-items: flex-start;
  gap: 60px;
  padding: 0 0 24px 0
}

.company_page .information_item_block+.information_item_block {
  border-top: 1px solid #c7dace;
  padding: 24px 0
}

.company_page .information_item_block:nth-last-of-type(1) {
  padding: 24px 0 0 0
}

.company_page .information_item_block__head {
  font-size: .9375rem;
  font-weight: 700;
  letter-spacing: .08em;
  line-height: 1.5;
  color: #00b506;
  flex-basis: 80px
}

.company_page .information_item_block__text {
  font-size: .9375rem;
  font-weight: 400;
  letter-spacing: 0;
  line-height: 1.5;
  color: #143d32
}

.company_page .information_item_block__text+.information_item_block__text {
  margin-top: 6px
}

.company_page .information_banner_block {
  display: flex;
  gap: 40px;
  margin-top: 80px
}

.company_page .information_banner_block__item {
  width: 730px;
  margin: auto;
  border-radius: 10px;
  background: url(/assets/img/company/pic_about_holdings.webp) bottom center no-repeat;
  background-size: cover
}

.company_page .information_banner_block__item a {
  display: block;
  padding: 24px 30px
}

.company_page .information_banner_block__label {
  font-family: Inter;
  font-size: .8125rem;
  font-weight: 600;
  letter-spacing: .06em;
  line-height: 1.7;
  color: #fff
}

.company_page .information_banner_block__title {
  font-size: 1.625rem;
  font-weight: 800;
  letter-spacing: 0;
  line-height: 1.2;
  color: #fff;
  margin-top: 18px
}

.company_page .information_banner_block__title img {
  display: inline-block;
  margin-left: 8px;
  width: 19px
}

.company_page .information_banner_block__text {
  font-size: .875rem;
  font-weight: 600;
  letter-spacing: .02em;
  line-height: 1.7;
  color: #fff;
  margin-top: 24px
}

.company_page .access_block {
  max-width: 1140px;
  width: 100%;
  margin: 160px auto 0;
  padding-inline: 20px
}

.company_page .access_block__label {
  font-family: Inter;
  font-size: .875rem;
  font-weight: 600;
  letter-spacing: .06em;
  line-height: 1.7;
  color: #2fa888;
  text-align: center
}

.company_page .access_block__title {
  font-size: 3.125rem;
  font-weight: 800;
  letter-spacing: 0;
  line-height: 1.2;
  color: #143d32;
  margin-top: 30px;
  text-align: center
}

.company_page .access_block__contents {
  margin-top: 70px;
  background: #fff;
  padding: 80px 20px
}

.company_page .access_block__wrapper {
  display: flex;
  gap: 20px;
  justify-content: space-between;
  max-width: 900px;
  width: 100%;
  margin: auto
}

.company_page .access_block__list {
  max-width: 313px;
  width: 100%
}

.company_page .access_block__item {
  display: flex;
  align-items: flex-start;
  gap: 26px
}

.company_page .access_block__item+.access_block__item {
  margin-top: 30px
}

.company_page .access_block__head {
  font-size: .9375rem;
  font-weight: 500;
  letter-spacing: .02em;
  line-height: 1.5;
  color: #00b506;
  flex-basis: 62px
}

.company_page .access_block__text {
  font-size: .9375rem;
  font-weight: 500;
  letter-spacing: .02em;
  line-height: 1.5;
  color: #143d32
}

.company_page .access_block__map {
  max-width: 496px;
  width: 100%
}

.company_page .access_block__map_iframe iframe {
  width: 100%
}

.company_page .access_block__link {
  margin-top: 16px;
  display: block;
  font-size: .75rem;
  font-weight: 500;
  letter-spacing: .02em;
  line-height: 1.5;
  color: #143d32;
  display: inline-flex;
  align-items: center;
  gap: 10px;
  text-decoration: underline;
  transition: opacity .3s
}

.company_page .access_block__link::before {
  content: "";
  background: url(/assets/img/shop_detail/icon_map.svg) left top/cover no-repeat;
  width: 13px;
  height: 18px;
  display: block
}

.company_page .location_block {
  margin: 160px auto;
  max-width: 1140px;
  width: 100%;
  padding-inline: 20px
}

.company_page .location_block__label {
  font-family: Inter;
  font-size: .875rem;
  font-weight: 500;
  letter-spacing: .06em;
  line-height: 1.7;
  color: #2fa888
}

.company_page .location_block__head {
  display: flex;
  justify-content: space-between;
  gap: 20px;
  margin-top: 30px;
  flex-wrap: wrap
}

.company_page .location_block__title {
  font-size: 3.125rem;
  font-weight: 800;
  line-height: 1.2;
  color: #143d32
}

.company_page .location_block__text {
  font-size: 1rem;
  font-weight: 700;
  letter-spacing: .02em;
  line-height: 1.7;
  color: #143d32
}

.company_page .location_banner_block {
  margin-top: 60px;
  width: 100%;
  background: url(/assets/img/company/pic_office_locations.webp) center center no-repeat;
  background-size: cover;
  border-radius: 10px;
  transition: opacity .3s
}

.company_page .location_banner_block__inner {
  display: flex;
  max-width: 672px;
  width: 100%;
  padding: 36px 20px 49px;
  margin: auto;
  flex-direction: column;
  align-items: flex-end
}

.company_page .location_banner_block__label {
  font-family: Inter;
  font-size: .875rem;
  font-weight: 600;
  letter-spacing: .06em;
  line-height: 1.7;
  color: #fff
}

.company_page .location_banner_block__title {
  font-size: 2.25rem;
  font-weight: 800;
  letter-spacing: 0;
  line-height: 1.3;
  color: #fff;
  margin-top: 18px;
  display: flex;
  align-items: center;
  gap: 10px
}

.company_page .location_banner_block__title img {
  margin-top: 5px
}

.company_page .location_banner_block__text {
  font-size: 1rem;
  font-weight: 600;
  letter-spacing: .02em;
  line-height: 1.7;
  color: #fff;
  margin-top: 20px
}

.contact_complete_page .mv_block {
  overflow-x: hidden;
  padding-top: 120px
}

.contact_complete_page .mv_block__inner {
  max-width: 1180px;
  margin: 0 auto;
  padding-inline: 40px
}

.contact_complete_page .mv_block__wrap {
  display: flex;
  align-items: center
}

.contact_complete_page .mv_block__head {
  max-width: 417px;
  color: var(--green-850, #1cac85);
  position: relative
}

.contact_complete_page .mv_block__sub_title {
  font-family: Inter;
  font-weight: 600;
  letter-spacing: .06em;
  text-shadow: 0 0 80px #fff;
  text-transform: uppercase
}

.contact_complete_page .mv_block__main_title {
  margin-top: 24px;
  font-size: 54px;
  font-weight: 700;
  letter-spacing: -.04em;
  line-height: 1.25;
  text-shadow: 0 0 80px #fff;
  white-space: nowrap
}

.contact_complete_page .mv_block__img {
  margin-right: calc(50% - 50vw);
  margin-left: -111px;
  width: 100vw
}

.contact_complete_page .mv_block__img img {
  aspect-ratio: 1000/430;
  width: 100%;
  object-position: bottom;
  border-radius: 0 0 0 20px;
  object-fit: cover
}

.contact_complete_page .contact_complete_block__title {
  font-size: 2.125rem;
  font-weight: 700;
  padding-left: 24px;
  position: relative;
  line-height: 1.5
}

.contact_complete_page .contact_complete_block__title::before {
  position: absolute;
  content: "";
  width: 8px;
  height: 80%;
  top: 50%;
  transform: translateY(-50%);
  left: 0;
  background-color: #1cac85
}

.contact_complete_page .contact_complete_block__text {
  margin-top: 40px;
  line-height: 1.9
}

.contact_complete_page .contact_complete_block__btn {
  max-width: 288px;
  width: 100%;
  margin-top: 60px
}

.contact_page .mv_block {
  overflow-x: hidden;
  padding-top: 120px
}

.contact_page .mv_block__inner {
  max-width: 1180px;
  margin: 0 auto;
  padding-inline: 40px
}

.contact_page .mv_block__wrap {
  display: flex;
  align-items: center
}

.contact_page .mv_block__head {
  max-width: 417px;
  color: var(--green-850, #1cac85);
  position: relative
}

.contact_page .mv_block__sub_title {
  font-family: Inter;
  font-weight: 600;
  letter-spacing: .06em;
  text-shadow: 0 0 80px #fff;
  text-transform: uppercase
}

.contact_page .mv_block__main_title {
  margin-top: 24px;
  font-size: 54px;
  font-weight: 700;
  letter-spacing: -.04em;
  line-height: 1.25;
  text-shadow: 0 0 80px #fff;
  white-space: nowrap
}

.contact_page .mv_block__img {
  margin-right: calc(50% - 50vw);
  margin-left: -111px;
  width: 100vw
}

.contact_page .mv_block__img img {
  aspect-ratio: 1000/430;
  width: 100%;
  object-position: bottom;
  border-radius: 0 0 0 20px;
  object-fit: cover
}

.contact_page .contact_form_block {
  background-color: #faf9f5;
  font-size: 16px
}

.contact_page .contact_form_block__inner {
  max-width: 1180px;
  margin: 0 auto;
  padding-top: 86px;
  padding-bottom: 160px;
  padding-inline: 40px
}

.contact_page .contact_form_block__text_area {
  display: flex;
  gap: 70px
}

.contact_page .contact_form_block__info {
  max-width: 406px;
  width: 100%
}

.contact_page .contact_form_block__text {
  line-height: 1.9;
  font-weight: 500;
  margin-top: 10px
}

.contact_page .contact_form_block__note {
  margin-top: 10px;
  line-height: 2;
  letter-spacing: .02em;
  font-weight: 500
}

.contact_page .contact_form_block__note span.required {
  color: #fff;
  background-color: #cb3434;
  padding: 4px 6px;
  margin-right: 10px;
  border-radius: 2px;
  font-size: 13px
}

.contact_page .contact_form_block__enterprise {
  background: url(/assets/img/contact/bg_contact_btn.png) no-repeat center/cover;
  color: #fff;
  font-size: 1.375rem;
  font-weight: 600;
  line-height: 160%;
  letter-spacing: .055rem;
  border-radius: 8px;
  margin-top: 40px
}

.contact_page .contact_form_block__enterprise span {
  font-size: .875rem;
  font-weight: 600;
  line-height: 160%
}

.contact_page .contact_form_block__enterprise a {
  padding: 30px;
  display: inline-flex;
  align-items: center;
  gap: 43px
}

.contact_page .contact_form_block__enterprise a p {
  white-space: nowrap
}

.contact_page .contact_form_block__enterprise a::after {
  content: "";
  display: block;
  background: url(../images/arrow-btn.svg) no-repeat center/contain;
  width: 22px;
  height: 22px
}

.contact_page .contact_form_block__enterprise:hover {
  opacity: .7;
  transition: opacity .4s cubic-bezier(.22, 1, .36, 1)
}

.contact_page .contact_form_block__guide {
  line-height: 1.7;
  letter-spacing: .02em;
  font-weight: 600;
  padding-top: 40px;
  border-top: solid 2px #dae6df;
  margin-top: 50px
}

.contact_page .contact_form_block__img {
  margin-top: 12px
}

.contact_page .contact_form_block__tel {
  margin-top: 60px
}

.contact_page .contact_form_block__tel_text {
  font-size: 18px;
  font-weight: 700;
  line-height: 1;
  letter-spacing: .02em;
  padding-left: 20px;
  position: relative
}

.contact_page .contact_form_block__tel_text::before {
  position: absolute;
  content: "・";
  color: #1cac85;
  top: 50%;
  transform: translateY(-50%);
  left: 0
}

.contact_page .contact_form_block__tel_wrap {
  margin-top: 30px;
  display: flex;
  align-items: center;
  gap: 14px;
  border-radius: 6px;
  background-color: #fff
}

.contact_page .contact_form_block__tel_wrap span {
  background-color: initial;
  color: #143d32;
  display: inline
}

.contact_page .contact_form_block__tel_img {
  aspect-ratio: 1/1;
  padding: 26px 20px;
  background-color: #143d32;
  border-radius: 6px 0 0 6px
}

.contact_page .contact_form_block__tel_img img {
  width: 36px;
  height: 36px;
  object-fit: contain
}

.contact_page .contact_form_block__tel_number {
  display: flex;
  font-size: 42px;
  font-family: Inter;
  letter-spacing: -.02em;
  font-weight: 700
}

.contact_page .contact_form_block__business-days,
.contact_page .contact_form_block__business-hours {
  font-size: 13px;
  line-height: 1.7;
  letter-spacing: .04em;
  font-weight: 600;
  color: #6e6e6e
}

.contact_page .contact_form_block__business-hours {
  margin-top: 12px
}

.contact_page .contact_form_block__form {
  max-width: 624px;
  width: 100%;
  background-color: #fff;
  padding: 40px 50px 60px;
  display: flex;
  flex-direction: column;
  gap: 36px;
  border-radius: 20px
}

.contact_page .contact_form_block__form span.required {
  font-size: 13px;
  color: #fff;
  background-color: #cb3434;
  padding: 1px 6px 2px;
  margin-left: 10px;
  border-radius: 2px
}

.contact_page .contact_form_block__form_input input {
  -webkit-appearance: none;
  appearance: none;
  width: 100%;
  padding: 13px 20px;
  border: solid 2px #d5d5d5;
  border-radius: 6px;
  margin-top: 12px
}

.contact_page .contact_form_block__form_input input:focus {
  outline: 0
}

.contact_page .contact_form_block__form_input input[type=number] {
  width: 50px;
  padding: 11px 8px
}

.contact_page .contact_form_block__form_textarea {
  margin-top: 12px;
  border-radius: 6px;
  border: 2px solid #d5d5d5;
  width: 100%;
  height: 270px
}

.contact_page .contact_form_block__form_textarea textarea {
  width: 100%;
  height: 100%;
  padding: 13px 20px
}

.contact_page .contact_form_block__form_textarea textarea:focus {
  outline: 0
}

.contact_page .contact_form_block__form_flex {
  display: flex;
  align-items: flex-end;
  gap: 6px
}

.contact_page .contact_form_block .form_age {
  background-color: initial;
  color: inherit;
  font-size: inherit;
  margin-left: 0
}

.contact_page .contact_form_block__form_description {
  margin-top: 6px;
  line-height: 1.9
}

.contact_page .contact_form_block__form_description a {
  text-decoration: underline
}

.contact_page .contact_form_block__form_submit {
  margin: 24px auto 0
}

.contact_page .contact_form_block__form_submit .wpcf7-spinner {
  display: none
}

.contact_page .form_select {
  position: relative
}

.contact_page .form_select::after {
  position: absolute;
  content: "";
  display: block;
  width: 14px;
  height: 14px;
  background: url(/assets/img/contact/icon_form_arrow.svg) no-repeat center/contain;
  right: 30px;
  top: 32px
}

.contact_page .form_select select {
  -webkit-appearance: none;
  appearance: none;
  width: 100%;
  padding: 13px 20px;
  border-radius: 6px;
  border: 2px solid #d5d5d5;
  background: #fff;
  margin-top: 12px
}

.contact_page .form_select select::-ms-expand {
  display: none
}

.contact_page .form_select select:focus {
  outline: 0
}

.contact_page .form_select--date {
  display: flex;
  gap: 18px;
  align-items: flex-end
}

.contact_page .form_select--date .date_select {
  position: relative;
  -webkit-appearance: none;
  appearance: none;
  background: 0 0
}

.contact_page .form_select--date .date_select::after {
  content: "";
  position: absolute;
  display: block;
  width: 14px;
  height: 14px;
  background: url(/assets/img/contact/icon_form_arrow.svg) no-repeat center/contain;
  pointer-events: none;
  right: 10px;
  top: 50%
}

.contact_page .form_select--date .date_select select {
  -webkit-appearance: none;
  appearance: none;
  width: 120px;
  padding: 13px 20px;
  border-radius: 6px;
  border: 2px solid #d5d5d5;
  background: #fff;
  margin-top: 12px
}

.contact_page .form_select--date .date_select select::-ms-expand {
  display: none
}

.contact_page .form_select--date .date_select select:focus {
  outline: 0
}

.contact_page .form_radio label {
  display: inline-block;
  margin-top: 16px;
  cursor: pointer
}

.contact_page .form_radio span {
  background-color: initial;
  color: #143d32;
  margin-left: 0
}

.contact_page .form_radio label:not(:first-of-type) {
  margin-top: 0;
  margin-left: 30px
}

.contact_page .form_radio input {
  display: none
}

.contact_page .form_radio input+span {
  display: inline-block;
  padding: 0 0 0 36px;
  position: relative;
  display: block;
  font-size: 15px;
  line-height: 1
}

.contact_page .form_radio input+span::before {
  content: "";
  width: 24px;
  height: 24px;
  display: block;
  position: absolute;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
  background: #fff;
  border: 2px solid #d5d5d5;
  border-radius: 50%
}

.contact_page .form_radio input+span::after {
  content: "";
  padding: 2px;
  width: 12px;
  height: 12px;
  position: absolute;
  top: 50%;
  left: 6px;
  transform: translateY(-50%);
  border: 1px solid transparent;
  border-radius: 50%;
  background: #143d32;
  opacity: 0;
  transition: .3s
}

.contact_page .form_radio input:checked+span::after {
  opacity: 1
}

.contact_page .form_submit {
  max-width: 306px;
  width: 100%;
  border-radius: 9999px;
  border: 2px solid var(--green-850, #1cac85);
  background-color: #1cac85;
  text-align: center;
  padding: 16px 36px;
  transition: .3s;
  position: relative;
  cursor: pointer
}

.contact_page .form_submit::after {
  display: inline-block;
  position: absolute;
  content: "";
  background: url(../images/arrow-btn.svg) no-repeat center;
  width: 10px;
  height: 10px;
  top: 50%;
  transform: translateY(-50%);
  right: 36px
}

.contact_page .form_submit input {
  color: #fff;
  font-size: 18px;
  font-weight: 700;
  line-height: 170%;
  letter-spacing: .0225rem;
  background: 0 0
}

.contact_page .form_submit:hover {
  background-color: #fff
}

.contact_page .form_submit:hover::after {
  transition-duration: .3s;
  background: url(../images/arrow-btn.svg) no-repeat center
}

.contact_page .form_submit:hover input {
  color: #1cac85;
  transition-duration: .3s
}

.contact_page .address_search_wrapper {
  display: flex;
  gap: 8px;
  margin-top: 12px
}

.contact_page .address_search_wrapper .p-postal-code {
  max-width: 154px;
  min-height: 54px;
  margin-top: 0
}

.contact_page .address_search_wrapper .contact_form_block__form_input {
  margin: 0;
  width: calc(154 / 1512 * 100vw);
  margin: 0
}

.contact_page .address_search_btn {
  color: #fff;
  text-align: justify;
  font-size: .9375rem;
  font-weight: 600;
  line-height: 190%;
  letter-spacing: .0187rem;
  background: #545454;
  padding: 13px 20px;
  border-radius: 8px;
  max-height: 54px
}

.contact_page .address_search_btn:hover {
  opacity: .7;
  transition: opacity .4s cubic-bezier(.22, 1, .36, 1)
}

.contact_page .wpcf7-radio {
  display: flex;
  gap: 36px
}

.contact_business_page .contact-business_block {
  background-color: #faf9f5;
  font-size: 16px
}

.contact_business_page .contact-business_block__inner {
  max-width: 1180px;
  margin: 0 auto;
  padding-top: 86px;
  padding-bottom: 160px;
  padding-inline: 40px
}

.contact_business_page .contact-business_block__text_area {
  display: flex;
  gap: 70px
}

.contact_business_page .contact-business_block__info {
  max-width: 406px;
  width: 100%
}

.contact_business_page .contact-business_block__text {
  line-height: 1.9;
  font-weight: 500;
  margin-top: 10px
}

.contact_business_page .contact-business_block__note {
  margin-top: 10px;
  line-height: 2;
  letter-spacing: .02em;
  font-weight: 500
}

.contact_business_page .contact-business_block__note span.required {
  color: #fff;
  background-color: #cb3434;
  padding: 4px 6px;
  margin-right: 10px;
  border-radius: 2px;
  font-size: 13px
}

.contact_business_page .contact-business_block__enterprise {
  background: url(/assets/img/contact/bg_contact_btn.png) no-repeat center/cover;
  color: #fff;
  font-size: 1.375rem;
  font-weight: 600;
  line-height: 160%;
  letter-spacing: .055rem;
  border-radius: 8px;
  margin-top: 40px
}

.contact_business_page .contact-business_block__enterprise span {
  font-size: .875rem;
  font-weight: 600;
  line-height: 160%
}

.contact_business_page .contact-business_block__enterprise a {
  padding: 30px;
  display: inline-flex;
  align-items: center;
  gap: 43px
}

.contact_business_page .contact-business_block__enterprise a p {
  white-space: nowrap
}

.contact_business_page .contact-business_block__enterprise a::after {
  content: "";
  display: block;
  background: url(../images/arrow-btn.svg) no-repeat center/contain;
  width: 22px;
  height: 22px
}

.contact_business_page .contact-business_block__enterprise:hover {
  opacity: .7;
  transition: opacity .4s cubic-bezier(.22, 1, .36, 1)
}

.contact_business_page .contact-business_block__guide {
  line-height: 1.7;
  letter-spacing: .02em;
  font-weight: 600;
  padding-top: 40px;
  border-top: solid 2px #dae6df;
  margin-top: 50px
}

.contact_business_page .contact-business_block__img {
  margin-top: 12px
}

.contact_business_page .contact-business_block__tel {
  margin-top: 60px
}

.contact_business_page .contact-business_block__tel_text {
  font-size: 18px;
  font-weight: 700;
  line-height: 1;
  letter-spacing: .02em;
  padding-left: 20px;
  position: relative
}

.contact_business_page .contact-business_block__tel_text::before {
  position: absolute;
  content: "・";
  color: #1cac85;
  top: 50%;
  transform: translateY(-50%);
  left: 0
}

.contact_business_page .contact-business_block__tel_wrap {
  margin-top: 30px;
  display: flex;
  align-items: center;
  gap: 14px;
  border-radius: 6px;
  background-color: #fff
}

.contact_business_page .contact-business_block__tel_wrap span {
  background-color: initial;
  color: #143d32;
  display: inline
}

.contact_business_page .contact-business_block__tel_img {
  aspect-ratio: 1/1;
  padding: 26px 20px;
  background-color: #143d32;
  border-radius: 6px 0 0 6px
}

.contact_business_page .contact-business_block__tel_img img {
  width: 36px;
  height: 36px;
  object-fit: contain
}

.contact_business_page .contact-business_block__tel_number {
  display: flex;
  font-size: 42px;
  font-family: Inter;
  letter-spacing: -.02em;
  font-weight: 700
}

.contact_business_page .contact-business_block__business-days,
.contact_business_page .contact-business_block__business-hours {
  font-size: 13px;
  line-height: 1.7;
  letter-spacing: .04em;
  font-weight: 600;
  color: #6e6e6e
}

.contact_business_page .contact-business_block__business-hours {
  margin-top: 12px
}

.contact_business_page .contact-business_block__form {
  max-width: 624px;
  width: 100%;
  background-color: #fff;
  padding: 40px 50px 60px;
  display: flex;
  flex-direction: column;
  gap: 36px;
  border-radius: 20px
}

.contact_business_page .contact-business_block__form span.required {
  font-size: 13px;
  color: #fff;
  background-color: #cb3434;
  padding: 1px 6px 2px;
  margin-left: 10px;
  border-radius: 2px
}

.contact_business_page .contact-business_block__form_input input {
  -webkit-appearance: none;
  appearance: none;
  width: 100%;
  padding: 13px 20px;
  border: solid 2px #d5d5d5;
  border-radius: 6px;
  margin-top: 12px
}

.contact_business_page .contact-business_block__form_input input:focus {
  outline: 0
}

.contact_business_page .contact-business_block__form_input input[type=number] {
  width: 50px;
  padding: 11px 8px
}

.contact_business_page .contact-business_block__form_textarea {
  margin-top: 12px;
  border-radius: 6px;
  border: 2px solid #d5d5d5;
  width: 100%;
  height: 270px
}

.contact_business_page .contact-business_block__form_textarea textarea {
  width: 100%;
  height: 100%;
  padding: 13px 20px
}

.contact_business_page .contact-business_block__form_textarea textarea:focus {
  outline: 0
}

.contact_business_page .contact-business_block__form_flex {
  display: flex;
  align-items: flex-end;
  gap: 6px
}

.contact_business_page .contact-business_block .form_age {
  background-color: initial;
  color: #143d32;
  margin-left: 0
}

.contact_business_page .contact-business_block__form_description {
  margin-top: 6px;
  line-height: 1.9
}

.contact_business_page .contact-business_block__form_description a {
  text-decoration: underline
}

.contact_business_page .contact-business_block__form_submit {
  margin: 24px auto 0
}

.contact_business_page .contact-business_block__form_submit .wpcf7-spinner {
  display: none
}

.contact_business_page .form_select {
  position: relative
}

.contact_business_page .form_select::after {
  position: absolute;
  content: "";
  display: block;
  width: 14px;
  height: 14px;
  background: url(/assets/img/contact/icon_form_arrow.svg) no-repeat center/contain;
  right: 30px;
  top: 32px
}

.contact_business_page .form_select select {
  -webkit-appearance: none;
  appearance: none;
  width: 100%;
  padding: 13px 20px;
  border-radius: 6px;
  border: 2px solid #d5d5d5;
  background: #fff;
  margin-top: 12px
}

.contact_business_page .form_select select::-ms-expand {
  display: none
}

.contact_business_page .form_select select:focus {
  outline: 0
}

.contact_business_page .form_radio label {
  display: inline-block;
  margin-top: 16px;
  cursor: pointer
}

.contact_business_page .form_radio span {
  background-color: initial;
  color: #143d32;
  margin-left: 0
}

.contact_business_page .form_radio label:not(:first-of-type) {
  margin-top: 0;
  margin-left: 30px
}

.contact_business_page .form_radio input {
  display: none
}

.contact_business_page .form_radio input+span {
  display: inline-block;
  padding: 0 0 0 36px;
  position: relative;
  display: block;
  font-size: 15px;
  line-height: 1
}

.contact_business_page .form_radio input+span::before {
  content: "";
  width: 24px;
  height: 24px;
  display: block;
  position: absolute;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
  background: #fff;
  border: 2px solid #d5d5d5;
  border-radius: 50%
}

.contact_business_page .form_radio input+span::after {
  content: "";
  padding: 2px;
  width: 12px;
  height: 12px;
  position: absolute;
  top: 50%;
  left: 6px;
  transform: translateY(-50%);
  border: 1px solid transparent;
  border-radius: 50%;
  background: #143d32;
  opacity: 0;
  transition: .3s
}

.contact_business_page .form_radio input:checked+span::after {
  opacity: 1
}

.contact_business_page .form_submit {
  max-width: 306px;
  width: 100%;
  border-radius: 9999px;
  border: 2px solid var(--green-850, #1cac85);
  background-color: #1cac85;
  text-align: center;
  padding: 16px 36px;
  transition: .3s;
  position: relative;
  cursor: pointer
}

.contact_business_page .form_submit::after {
  display: inline-block;
  position: absolute;
  content: "";
  background: url(../images/arrow-btn.svg) no-repeat center;
  width: 10px;
  height: 10px;
  top: 50%;
  transform: translateY(-50%);
  right: 36px
}

.contact_business_page .form_submit input {
  color: #fff;
  font-size: 18px;
  font-weight: 700;
  line-height: 170%;
  letter-spacing: .0225rem;
  background: 0 0
}

.contact_business_page .form_submit:hover {
  background-color: #fff
}

.contact_business_page .form_submit:hover::after {
  transition-duration: .3s;
  background: url(../images/arrow-btn.svg) no-repeat center
}

.contact_business_page .form_submit:hover input {
  color: #1cac85;
  transition-duration: .3s
}

.contact_business_page .address_search_wrapper {
  display: flex;
  gap: 8px;
  margin-top: 12px
}

.contact_business_page .address_search_wrapper .p-postal-code {
  max-width: 154px;
  min-height: 54px;
  margin-top: 0
}

.contact_business_page .address_search_wrapper .contact_form_block__form_input {
  margin: 0;
  width: calc(154 / 1512 * 100vw);
  margin: 0
}

.contact_business_page .address_search_btn {
  color: #fff;
  text-align: justify;
  font-size: .9375rem;
  font-weight: 600;
  line-height: 190%;
  letter-spacing: .0187rem;
  background: #545454;
  padding: 13px 20px;
  border-radius: 8px;
  max-height: 54px
}

.contact_business_page .address_search_btn:hover {
  opacity: .7;
  transition: opacity .4s cubic-bezier(.22, 1, .36, 1);
  max-height: unset
}

.faq_page .section_wrapper {
  width: min(85%, 1100px);
  margin-inline: auto
}

.faq_page .mv_block {
  overflow-x: hidden;
  padding-top: 130px
}

.faq_page .mv_block__inner {
  max-width: 1180px;
  margin: 0 auto;
  padding-inline: 40px
}

.faq_page .mv_block__wrap {
  display: flex;
  align-items: center;
  gap: 125px
}

.faq_page .mv_block__head {
  max-width: 417px;
  color: var(--green-850, #1cac85);
  position: relative;
  top: -25px
}

.faq_page .mv_block__sub_title {
  font-family: Inter;
  font-weight: 600;
  letter-spacing: .06em;
  text-shadow: 0 0 80px #fff;
  text-transform: uppercase
}

.faq_page .mv_block__main_title {
  margin-top: 24px;
  font-size: 54px;
  font-weight: 700;
  line-height: 1.25;
  text-shadow: 0 0 80px #fff;
  white-space: nowrap
}

.faq_page .mv_block__img {
  margin-right: calc(50% - 50vw);
  margin-left: -111px;
  width: 100vw
}

.faq_page .mv_block__img img {
  aspect-ratio: 1000/430;
  width: 100%;
  object-position: bottom;
  border-radius: 0 0 0 20px;
  object-fit: cover
}

.faq_page .faq_block {
  padding: 90px 0 160px
}

.faq_page .faq_block__title {
  display: flex;
  align-items: center;
  margin-bottom: 80px;
  padding: 3px 0 6px 34px;
  border-left: 6px solid #1cac85;
  font-size: 25px;
  font-weight: 800;
  line-height: 1.5;
  letter-spacing: -.02em
}

.faq_page .faq_block_details {
  background: #fff;
  border: 3px solid #a7d1c6;
  border-radius: 16px
}

.faq_page .faq_block_details+details {
  margin-top: 40px
}

.faq_page .faq_block_details[open] summary::after {
  transform: rotate(180deg)
}

.faq_page .faq_block_summary {
  display: flex;
  align-items: center;
  list-style: none;
  padding: 22px 2.5%;
  font-size: 20px;
  line-height: 1.3;
  font-weight: 800;
  letter-spacing: .04em
}

.faq_page .faq_block_summary::-webkit-details-marker {
  display: none
}

.faq_page .faq_block_summary span {
  width: min(89%, 960px)
}

.faq_page .faq_block_summary:hover {
  opacity: .7;
  transition-duration: .3s
}

.faq_page .faq_block_summary::before {
  content: "Q.";
  margin-right: 10px;
  color: #1cac85
}

.faq_page .faq_block_summary::after {
  content: "";
  display: block;
  width: 17px;
  height: 11px;
  margin: 4px 10px 0 auto;
  background: url('../images/deco_header.svg') left top/cover no-repeat
}

.faq_page .faq_block_answer {
  padding: 3px 2.5% 22px;
  font-size: 16px;
  font-weight: 600;
  line-height: 1.9;
  letter-spacing: .01em
}

.flow_page .mv_block {
  overflow-x: hidden;
  padding-top: 120px
}

.flow_page .mv_block__inner {
  max-width: 1180px;
  margin: 0 auto;
  padding-inline: 40px
}

.flow_page .mv_block__wrap {
  display: flex;
  align-items: center
}

.flow_page .mv_block__head {
  max-width: 417px;
  color: var(--green-850, #1cac85);
  position: relative
}

.flow_page .mv_block__sub_title {
  font-family: Inter;
  font-weight: 600;
  letter-spacing: .06em;
  text-shadow: 0 0 80px #fff;
  text-transform: uppercase
}

.flow_page .mv_block__main_title {
  margin-top: 24px;
  font-size: 54px;
  font-weight: 700;
  letter-spacing: -.04em;
  line-height: 1.25;
  text-shadow: 0 0 80px #fff;
  white-space: nowrap
}

.flow_page .mv_block__img {
  margin-right: calc(50% - 50vw);
  margin-left: -111px;
  width: 100vw
}

.flow_page .mv_block__img img {
  aspect-ratio: 1000/430;
  width: 100%;
  object-position: bottom;
  border-radius: 0 0 0 20px;
  object-fit: cover
}

.flow_page .flow_block {
  background-color: #faf9f5
}

.flow_page .flow_block__head {
  font-size: 25px;
  font-weight: 700;
  letter-spacing: -.02em;
  color: #143d32;
  padding-left: 40px;
  position: relative
}

.flow_page .flow_block__head--yellow {
  display: inline-block;
  background: linear-gradient(transparent 60%, #faff00 0)
}

.flow_page .flow_block__head .mt-10 {
  margin-top: 7px
}

.flow_page .flow_block__head p {
  line-height: 1
}

.flow_page .flow_block__head span {
  color: var(--green-850, #1cac85)
}

.flow_page .flow_block__head .font_large {
  font-size: 40px;
  font-family: Inter
}

.flow_page .flow_block__head::before {
  content: "";
  position: absolute;
  top: 62%;
  transform: translateY(-50%);
  left: 0;
  width: 6px;
  height: 100%;
  background-color: var(--green-850, #1cac85)
}

.flow_page .flow_list {
  margin-top: 100px;
  position: relative
}

.flow_page .flow_list::before {
  content: "";
  position: absolute;
  width: 388px;
  aspect-ratio: 388/170;
  right: 76px;
  top: -159px;
  background: url(../img/flow/pic_illust.svg) no-repeat center center/contain;
  z-index: 1
}

.flow_page .flow_list__item {
  max-width: 1050px;
  width: 100%;
  margin: auto;
  border-radius: 20px
}

.flow_page .flow_list__item:not(:first-child) {
  margin-top: 74px;
  position: relative
}

.flow_page .flow_list__item:not(:first-child)::before {
  position: absolute;
  content: "";
  width: 4px;
  height: 90px;
  background: url(/assets/img/flow/pic_dashed_line.svg) repeat center center/contain;
  top: -80px;
  left: 220px
}

.flow_page .flow_list__head {
  position: relative
}

.flow_page .flow_list__number {
  position: absolute;
  content: "";
  top: 50%;
  transform: translateY(-50%);
  left: -26px;
  width: 100px;
  height: 100px;
  border-radius: 50%;
  background-color: #fff;
  border: solid 3.75px var(--green-850, #1cac85);
  z-index: 1
}

.flow_page .flow_list__number img {
  position: absolute;
  top: 54%;
  transform: translateY(-50%);
  left: 22%
}

.flow_page .flow_list__title {
  font-size: 26px;
  letter-spacing: -.02em;
  font-weight: 700;
  color: #fff;
  background-color: var(--green-850, #1cac85);
  border-radius: 20px 15px 0 0;
  width: 100%;
  display: flex;
  align-items: center;
  padding: 15px 106px;
  position: relative
}

.flow_page .flow_list__body {
  padding: 20px 50px 0 50px;
  background-color: #fff;
  border-left: solid 4px #a7d1c6;
  border-bottom: solid 4px #a7d1c6;
  border-right: solid 4px #a7d1c6;
  border-radius: 0 0 20px 20px
}

.flow_page .flow_list__sub_title {
  font-size: 21px;
  font-weight: 600;
  line-height: 1.6;
  letter-spacing: -.02em;
  color: var(--green-850, #1cac85);
  border-bottom: solid 2px #eee;
  padding-bottom: 20px
}

.flow_page .flow_list__wrap {
  display: flex;
  align-items: flex-end;
  gap: 60px;
  padding-top: 18px
}

.flow_page .flow_list__text {
  font-weight: 600;
  line-height: 1.9;
  letter-spacing: -.02em;
  max-width: 480px;
  width: 100%;
  padding-bottom: 40px
}

.flow_page .flow_list__img {
  padding-bottom: 40px
}

.flow_page .flow_list__img--pb {
  padding-bottom: 0
}

.index_page {
  position: relative;
  overflow: hidden
}

.index_page .mainvisual_block {
  position: relative;
  z-index: 1;
  padding-bottom: 34px;
  padding-top: 20px
}

.index_page .mainvisual_block__title {
  padding-top: 100px;
  padding-left: 72px
}

.index_page .mainvisual_block__title h2 {
  color: #1a3a6b;
  font-size: calc(60 / 1512 * 100vw);
  font-weight: 900;
  line-height: 160%
}

.index_page .mainvisual_block__title span.sub {
  font-size: calc(21 / 1512 * 100vw);
  font-weight: 800;
  line-height: 400%;
  letter-spacing: .0262rem
}

.index_page .mainvisual_block__title span.small {
  font-size: calc(54 / 1512 * 100vw);
  font-weight: 900;
  line-height: 120%
}

.index_page .mainvisual_block__title span.middle {
  font-size: calc(72 / 1512 * 100vw);
  font-weight: 900;
  line-height: 160%;
  letter-spacing: .08rem;
  margin-right: 7px;
}

.index_page .mainvisual_block__title span.big {
  font-family: Inter;
  font-size: calc(105 / 1512 * 100vw);
  font-weight: 700;
  line-height: 100%;
  letter-spacing: .3rem
}

.index_page .mainvisual_block__title span.green {
  color: #15345e;
}

.index_page .mainvisual_block__title span.underline {
/*  text-decoration-line: underline;*/
  text-underline-offset: .2em
}

.index_page .mainvisual_block__title_wrapper {
  display: flex;
  gap: calc(30 / 1512 * 100vw);
  margin-top: 4rem;
}

.index_page .mainvisual_block__title_img {
  width: calc(200 / 1512 * 100vw)
}

.index_page .mainvisual_block__img {
  width: calc(913 / 1512 * 100vw);
  margin: 0;
  position: absolute;
  right: 0;
  top: 100px;
  z-index: -1;
  border-radius: 0 0 0 15px
}

.index_page .mainvisual_block .splide__arrow {
  display: none
}

.index_page .mainvisual_block .splide__pagination {
  gap: 5px;
  justify-content: left;
  margin: 14px 0 0 20px
}

.index_page .mainvisual_block .splide__pagination__page {
  background: #1cac85;
  height: 6px;
  width: 60px;
  border-radius: 10px;
  margin: 0
}

.index_page .mainvisual_block .splide__pagination__page.is-active {
  background: #d9d9d9;
  transform: none
}

.index_page .lead_block {
  color: var(--green-900, #143d32);
  position: relative;
  z-index: -1
}

.index_page .lead_block__inner {
  background-color: #eff2ea;
  max-width: calc(1400 / 1512 * 100vw);
  margin: 0 auto;
  border-radius: 20px 0 0 20px;
  padding: calc(60 / 1512 * 100vw) 0 calc(50 / 1512 * 100vw) calc(92 / 1512 * 100vw);
  margin-right: calc(50% - 50vw);
  padding-right: calc(50vw - 50%)
}

.index_page .lead_block__contents {
  display: flex;
  justify-content: space-between
}

.index_page .lead_block__title_wrapper {
  padding-top: calc(96 / 1512 * 100vw)
}

.index_page .lead_block__title_wrapper span {
  color: var(--green-600, #00b506);
  font-family: Inter;
  font-size: .875rem;
  font-style: normal;
  font-weight: 600;
  line-height: 170%;
  letter-spacing: .84px
}

.index_page .lead_block__title_wrapper h3 {
  color: var(--green-900, #143d32);
  font-family: "Noto Sans JP";
  font-size: 3.375rem;
  font-style: normal;
  font-weight: 800;
  line-height: 125%;
  margin-top: 25px;
  white-space: nowrap
}

.index_page .lead_block__title_wrapper h3 span {
  color: var(--green-600, #00b506);
  font-size: 3.375rem
}

.index_page .lead_block__title_wrapper p {
  font-family: "Noto Sans JP";
  font-size: 16px;
  font-style: normal;
  font-weight: 700;
  line-height: 250%;
  letter-spacing: .32px;
  margin-top: 20px
}

.index_page .lead_block__img {
  width: calc(657 / 1512 * 100vw)
}

.index_page .lead_block__img img {
  width: 100%
}

.index_page .feature_block {
  padding: 0 20px 80px;
  margin-top: 80px
}

.index_page .feature_block__inner {
  max-width: 1100px;
  margin: 0 auto
}

.index_page .feature_block__head {
  text-align: center;
  color: var(--green-900, #143d32)
}

.index_page .feature_block__head span {
  color: #2fa888;
  font-family: Inter;
  font-size: .875rem;
  font-weight: 600;
  line-height: 170%;
  letter-spacing: .0525rem
}

.index_page .feature_block__head h3 {
  color: var(--green-900, #143d32);
  font-size: 2.75rem;
  font-weight: 800;
  line-height: 120%;
  position: relative;
  letter-spacing: .08rem
}

.index_page .feature_block__head h3 span.green {
  color: #12906e;
  font-size: inherit;
  font-weight: 800
}

.index_page .feature_block__head h3 span.big {
  color: var(--green-800, #12906e);
  font-size: 4.8125rem;
  font-weight: 700;
  line-height: 120%;
  letter-spacing: .2888rem
}

.index_page .feature_block__head h3 span.deco::before {
  content: "";
  background: url(../images/deco_header.svg) no-repeat center/contain;
  display: block;
  position: absolute;
  width: 30px;
  height: 26px;
  top: -10px;
  right: 330px
}

.index_page .feature_block__head p {
  font-size: 1rem;
  font-weight: 600;
  line-height: 170%;
  letter-spacing: .02rem;
  margin-top: 35px
}

.index_page .feature_block__contents {
  margin-top: 98px
}

.index_page .feature_block__item {
  display: flex;
  gap: 80px;
  justify-content: space-between
}

.index_page .feature_block__item:not(:first-child) {
  margin-top: 80px
}

.index_page .feature_block__item--reverse {
  flex-direction: row-reverse
}

.index_page .feature_block__description {
  color: var(--green-900, #143d32)
}

.index_page .feature_block__description h4 {
  margin-top: 18px;
  font-size: 2.75rem;
  font-weight: 700;
  letter-spacing: -.055rem
}

.index_page .feature_block__description h4 span.marker {
  background: linear-gradient(transparent 70%, #faff00 70%)
}

.index_page .feature_block__description h4 span.green {
  color: #12906e
}

.index_page .feature_block__description h4 span.big {
  font-size: 4.375rem;
  margin-left: 10px
}

.index_page .feature_block__description p {
  margin-top: 28px;
  font-size: 1rem;
  font-weight: 500;
  line-height: 170%;
  letter-spacing: .02rem
}

.index_page .feature_block__num {
  width: 120px
}

.index_page .feature_block__num img {
  width: 100%
}

.index_page .feature_block__img {
  width: 416px;
  position: relative;
  margin-top: 10px
}

.index_page .feature_block__img img {
  width: 100%
}

.index_page .feature_block__sub_img {
  position: absolute
}

.index_page .feature_block__sub_img--01 {
  width: 217px;
  top: 77px;
  left: -127px
}

.index_page .feature_block__sub_img--02 {
  width: 296px;
  bottom: 0;
  right: -60px
}

.index_page .feature_block__sub_img--03 {
  width: 330px;
  bottom: -4px;
  left: -269px
}

.index_page .feature_block__sub_img--04 {
  width: 98px;
  right: -50px;
  bottom: 25px
}

.index_page .feature_block__btn {
  margin-top: 60px;
  position: relative;
  left: 50%;
  transform: translateX(-50%)
}

.index_page .search_block {
  background: var(--green-850, #1cac85);
  padding: 80px 20px 120px;
  overflow: hidden
}

.index_page .search_block__inner {
  max-width: 1100px;
  margin: 0 auto
}

.index_page .search_block__head {
  color: #fff
}

.index_page .search_block__head span {
  font-family: Inter;
  font-size: .875rem;
  font-weight: 600;
  line-height: 170%;
  letter-spacing: .0525rem
}

.index_page .search_block__title_wrapper {
  display: flex;
  flex-wrap: wrap;
  gap: 20px;
  justify-content: space-between;
  margin-top: 30px
}

.index_page .search_block__title_wrapper h3 {
  font-size: 3.125rem;
  font-weight: 800;
  line-height: 120%
}

.index_page .search_block__title_wrapper p {
  color: #fff;
  font-size: 1rem;
  font-weight: 600;
  line-height: 170%;
  letter-spacing: .02rem
}

.index_page .search_block .recommend_block {
  margin-top: 100px
}

.index_page .search_block .recommend_block__inner {
  padding-top: 0;
  padding-bottom: 0;
  padding-inline: 0
}

.index_page .search_block .recommend_block__head h4 {
  color: #fff
}

.index_page .search_block .recommend_block__head h4::before {
  content: "";
  display: block;
  background: url(../images/deco_header.svg) no-repeat center/cover;
  width: 55px;
  height: 55px
}

.index_page .search_block .recommend_block__head p {
  color: #fff
}

.index_page .search_block .recommend_block__iframe {
  margin-bottom: 0
}

.index_page .map_block {
  display: flex;
  border-radius: 20px;
  margin-top: 163px;
  position: relative;
  z-index: 0
}

.index_page .map_block::before {
  position: absolute;
  display: block;
  content: "";
  background: url(/assets/img/top/deco_search_01.svg) no-repeat center/contain;
  width: 182px;
  height: 100px;
  top: -87px;
  right: 0;
  z-index: -1
}

.index_page .map_block__contents {
  background: #faf9f5;
  padding: 50px 50px 60px 50px;
  border-radius: 20px 0 0 20px
}

.index_page .map_block__contents h4 {
  color: var(--green-800, #12906e);
  font-family: "Noto Sans JP";
  font-size: 34px;
  font-style: normal;
  font-weight: 800;
  line-height: 170%;
  letter-spacing: -.68px;
  display: flex;
  align-items: center;
  gap: 16px
}

.index_page .map_block__contents h4::before {
  content: "";
  background: url(../images/arrow-btn.svg) no-repeat center/contain;
  display: block;
  width: 34px;
  height: 34px
}

.index_page .map_block__counter {
  margin-top: 36px;
  border-radius: 6px;
  background: var(--beige-50, #eff2ea);
  display: inline-block;
  padding: 12px 20px 15px 20px
}

.index_page .map_block__counter p {
  color: var(--green-900, #143d32);
  font-size: 1.25rem;
  font-weight: 600;
  line-height: 170%;
  letter-spacing: .0175rem
}

.index_page .map_block__counter span {
  color: var(--green-600, #00b506);
  font-family: Inter;
  font-size: 2.625rem;
  font-weight: 800;
  line-height: 100%;
  letter-spacing: .1rem
}

.index_page .map_block__counter span.date {
  color: #9cb8a6;
  font-size: .8125rem;
  font-weight: 600;
  line-height: 170%;
  letter-spacing: .01rem
}

.index_page .map_block__description {
  margin-top: 37px;
  color: var(--green-900, #143d32);
  font-size: .875rem;
  font-weight: 600;
  line-height: 170%;
  letter-spacing: .0175rem
}

.index_page .map_block__note {
  margin-top: 35px;
  color: #9cb8a6;
  font-size: .8125rem;
  font-weight: 600;
  line-height: 170%
}

.index_page .map_block__map {
  background: #eff2ea;
  border-radius: 0 20px 20px 0;
  padding: 32px 63px 32px 62px
}

.index_page .map_block__map img {
  width: 100%
}

.index_page .blog_block {
  padding: 80px 20px;
  background: var(--green-100, #ebf5ef)
}

.index_page .blog_block__inner {
  max-width: 1100px;
  margin: 0 auto
}

.index_page .blog_block__head span {
  color: #2fa888;
  font-family: Inter;
  font-size: .875rem;
  font-weight: 600;
  line-height: 170%;
  letter-spacing: .0525rem
}

.index_page .blog_block__title_wrapper {
  color: var(--green-900, #143d32);
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  margin-top: 30px;
  gap: 20px
}

.index_page .blog_block__title_wrapper h3 {
  font-size: 3.125rem;
  font-weight: 800;
  line-height: 120%
}

.index_page .blog_block__title_wrapper p {
  font-size: 1rem;
  font-weight: 600;
  line-height: 170%;
  letter-spacing: .02rem
}

.index_page .blog_block__contents {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 40px;
  margin-top: 80px
}

.index_page .blog_block__btn {
  margin-top: 60px;
  position: relative;
  left: 50%;
  transform: translateX(-50%)
}

.index_page .member_block__inner {
  max-width: 1140px;
  width: 100%;
  margin: 0 auto;
  padding: 80px 20px 0
}

.index_page .member_block__head span {
  color: #2fa888;
  font-family: Inter;
  font-size: .875rem;
  font-weight: 600;
  line-height: 170%;
  letter-spacing: .0525rem
}

.index_page .member_block__title_wrapper {
  display: flex;
  flex-wrap: wrap;
  gap: 20px;
  justify-content: space-between;
  margin-top: 30px
}

.index_page .member_block__title_wrapper h3 {
  color: var(--green-900, #143d32);
  font-size: 3.125rem;
  font-weight: 800;
  line-height: 120%
}

.index_page .member_block__title_wrapper p {
  letter-spacing: .02rem;
  font-size: 1.0625rem;
  line-height: 170%;
  font-weight: 600
}

.index_page .member_block__title_wrapper p span {
  color: #fff;
  font-family: "Noto Sans JP";
  font-size: 40px;
  font-style: normal;
  font-weight: 700;
  line-height: 130%;
  letter-spacing: -.8px;
  background: var(--green-800, #12906e);
  padding: 0 5px
}

.index_page .member_block__title_wrapper p br {
  display: block;
  margin-top: 26px;
  content: ""
}

.index_page .member_block__splide .splide__track {
  margin-right: calc(50% - 50vw);
  margin-left: calc(50% - 50vw);
  padding-left: calc(50vw - 50%);
  padding-right: calc(50vw - 50%);
  padding-top: calc(40 / 393 * 100vw)
}

.index_page .member_block__bg {
  position: relative;
  background: #deece3;
  overflow: visible;
  height: calc(263 / 1512 * 100vw)
}

.index_page .member_block__bg::before {
  position: absolute;
  display: block;
  content: "";
  width: 52px;
  height: 60px;
  top: -20px;
  left: 20px
}

.index_page .member_block__bg--01::before {
  background: url(/assets/img/top/num_member_01.svg) no-repeat center/contain
}

.index_page .member_block__bg--02::before {
  background: url(/assets/img/top/num_member_02.svg) no-repeat center/contain
}

.index_page .member_block__bg--03::before {
  background: url(/assets/img/top/num_member_03.svg) no-repeat center/contain
}

.index_page .member_block__bg--04::before {
  background: url(/assets/img/top/num_member_04.svg) no-repeat center/contain
}

.index_page .member_block__bg--05::before {
  background: url(/assets/img/top/num_member_05.svg) no-repeat center/contain
}

.index_page .member_block__img {
  position: absolute;
  width: calc(249 / 1512 * 100vw);
  margin: auto;
  top: 38%;
  left: 50%;
  transform: translate(-50%, -50%)
}

.index_page .member_block__img img {
  width: 100%
}

.index_page .member_block__text_wrapper {
  margin-top: 46px
}

.index_page .member_block__role {
  display: inline-block;
  padding: 0 10px;
  border: 2px solid #1cac85;
  color: #1cac85;
  font-size: .875rem;
  font-weight: 600;
  line-height: 170%;
  letter-spacing: .0175rem
}

.index_page .member_block__name {
  color: var(--green-900, #143d32);
  font-size: 1.125rem;
  font-weight: 500;
  line-height: 170%;
  letter-spacing: .0225rem
}

.index_page .recruit_block {
  position: relative;
  margin-top: 108px
}

.index_page .recruit_block::before {
  position: absolute;
  display: block;
  content: "";
  background: url(/assets/img/top/deco_recruit.svg) no-repeat center/contain;
  width: 120px;
  height: 120px;
  top: -40px;
  left: -44px;
  z-index: 1
}

.index_page .news_block {
  margin-top: 160px;
  padding-inline: 20px
}

.index_page .news_block__inner {
  max-width: 1100px;
  margin: 0 auto
}

.index_page .news_block__head span {
  color: #2fa888;
  font-family: Inter;
  font-size: .875rem;
  font-weight: 600;
  line-height: 170%;
  letter-spacing: .0525rem
}

.index_page .news_block__title_wrapper {
  display: flex;
  flex-direction: column
}

.index_page .news_block__title_wrapper h3 {
  color: var(--green-900, #143d32);
  font-size: 3.125rem;
  font-weight: 800;
  line-height: 120%
}

.index_page .news_block__title_wrapper .c-btn {
  margin: 60px 0 0 0
}

.index_page .news_block__body {
  display: flex;
  flex-wrap: wrap;
  gap: 50px;
  justify-content: space-between;
  margin-top: 30px
}

.index_page .news_block__contents {
  max-width: 739px
}

.index_page .news_block__item {
  display: flex;
  gap: 50px
}

.index_page .news_block__item:not(:first-child) {
  margin-top: 20px
}

.index_page .news_block__item time {
  color: var(--green-600, #00b506);
  font-family: Inter;
  font-size: 16px;
  font-style: normal;
  font-weight: 700;
  line-height: 170%
}

.index_page .news_block__item p {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  overflow: hidden;
  color: var(--green-900, #143d32);
  font-size: 1rem;
  font-style: normal;
  font-weight: 600;
  line-height: 170%;
  letter-spacing: .02rem
}

.index_page .news_block__btn {
  margin-top: 60px;
  left: 50%;
  transform: translateX(-50%)
}

.index_page .news_block__btn--sp {
  display: none
}

.index_page .link_block {
  margin-top: 161px
}

.index_page .link_block__inner {
  max-width: 1140px;
  width: 100%;
  margin: 0 auto;
  padding: 0 20px 154px
}

.index_page .link_block__top {
  display: flex;
  gap: 40px
}

.index_page .link_block__company {
  flex: 1;
  overflow: hidden;
  border-radius: 10px
}

.index_page .link_block__company:hover a {
  transform: scale(1.02)
}

.index_page .link_block__company a {
  transition: transform .6s ease;
  height: 100%;
  display: flex;
  align-items: center;
  position: relative;
  background: url(/assets/img/top/pic_banner_link_01.webp) center left no-repeat;
  background-size: cover
}

.index_page .link_block__company img {
  width: 100%
}

.index_page .link_block__text_wrapper {
  color: #fff;
  padding-left: 30px
}

.index_page .link_block__text_wrapper span {
  margin-top: 25px;
  display: block;
  font-family: Inter;
  font-size: .875rem;
  font-weight: 600;
  line-height: 170%;
  letter-spacing: .0515rem
}

.index_page .link_block__text_wrapper h4 {
  margin-top: 6px;
  font-size: 1.9375rem;
  font-weight: 800;
  line-height: 140%
}

.index_page .link_block__qna {
  flex: 1
}

.index_page .link_block__qna_text {
  border-radius: 10px;
  color: #fff;
  background: url(/assets/img/top/bg_qna.svg) no-repeat center/cover;
  padding: 42px 45px 75px 28px
}

.index_page .link_block__qna_text span {
  font-family: Inter;
  font-size: .875rem;
  font-weight: 600;
  line-height: 170%;
  letter-spacing: .0515rem
}

.index_page .link_block__qna_text h4 {
  font-size: 1.9375rem;
  font-weight: 800;
  line-height: 140%;
  margin-top: 6px
}

.index_page .link_block__qna_text ul {
  display: flex;
  gap: 40px;
  margin-top: 30px
}

.index_page .link_block__qna_text ul li {
  font-size: .875rem;
  font-weight: 700;
  display: flex;
  gap: 12px;
  align-items: center
}

.index_page .link_block__qna_text ul li::after {
  content: "";
  background: url(../images/arrow-btn.svg) no-repeat center/contain;
  display: block;
  width: 10px;
  height: 10px
}

.index_page .link_block__qna_text ul+ul {
  margin-top: 16px
}

.index_page .link_block__bottom {
  margin-top: 46px
}

.index_page .link_block .recruit_banner_block {
  overflow: hidden;
  border-radius: 10px
}

.index_page .link_block .recruit_banner_block:hover a {
  transform: scale(1.02)
}

.index_page .link_block .recruit_banner_block a {
  transition: transform .6s ease;
  padding: 30px 20px 40px;
  position: relative;
  display: flex;
  background: url(/assets/img/top/pic_img_link_recruit.webp) center left no-repeat;
  background-size: cover
}

.index_page .link_block .recruit_banner_block__text_wrapper {
  color: #fff;
  max-width: 380px;
  width: 100%;
  margin-left: 52%
}

.index_page .link_block .recruit_banner_block__text_wrapper span {
  font-family: Inter;
  font-size: 14px;
  font-weight: 600;
  line-height: 170%;
  letter-spacing: .0525rem
}

.index_page .link_block .recruit_banner_block__text_wrapper h4 {
  margin-top: 20px;
  font-size: 3.125rem;
  font-weight: 800;
  line-height: 120%
}

.index_page .link_block .recruit_banner_block__text_wrapper p {
  margin-top: 20px;
  font-size: 1rem;
  font-weight: 600;
  line-height: 170%;
  letter-spacing: .02rem
}

.index_page .fixed_btn {
  position: fixed;
  bottom: 0;
  left: 0;
  width: 100%;
  z-index: 1000
}

.index_page .fixed_btn__wrapper {
  display: flex
}

.index_page .fixed_btn__item {
  display: flex;
  gap: calc(18 / 393 * 100vw);
  width: 50%;
  padding: calc(20 / 393 * 100vw) calc(27 / 393 * 100vw);
  justify-self: center
}

.index_page .fixed_btn__item a {
  color: #fff;
  font-size: calc(15 / 393 * 100vw);
  font-weight: 700;
  line-height: 140%;
  letter-spacing: .0187rem
}

.index_page .fixed_btn__item--line {
  background: #0bba12
}

.index_page .fixed_btn__item--mail {
  background: #1cac85
}

.message_page .mv_block {
  overflow-x: hidden;
  padding-top: 120px
}

.message_page .mv_block__inner {
  max-width: 1180px;
  margin: 0 auto;
  padding-inline: 40px
}

.message_page .mv_block__wrap {
  display: flex;
  align-items: center
}

.message_page .mv_block__head {
  max-width: 417px;
  color: var(--green-850, #1cac85);
  position: relative
}

.message_page .mv_block__sub_title {
  font-family: Inter;
  font-weight: 600;
  letter-spacing: .06em;
  text-shadow: 0 0 80px #fff;
  text-transform: uppercase
}

.message_page .mv_block__main_title {
  margin-top: 24px;
  font-size: 54px;
  font-weight: 700;
  letter-spacing: -.04em;
  line-height: 1.25;
  text-shadow: 0 0 80px #fff;
  white-space: nowrap
}

.message_page .mv_block__img {
  margin-right: calc(50% - 50vw);
  margin-left: -111px;
  width: 100vw
}

.message_page .mv_block__img img {
  aspect-ratio: 1000/430;
  width: 100%;
  object-position: bottom;
  border-radius: 0 0 0 20px;
  object-fit: cover
}

.message_page .message_block__head {
  font-size: 25px;
  font-weight: 700;
  padding-left: 38px;
  position: relative
}

.message_page .message_block__head::before {
  position: absolute;
  content: "";
  width: 6px;
  height: 44px;
  background-color: #1cac85;
  top: 50%;
  transform: translateY(-50%);
  left: 0
}

.message_page .message_block__list {
  margin-top: 80px;
  display: flex;
  flex-direction: column;
  gap: 120px
}

.message_page .message_block__item {
  display: flex;
  align-items: flex-start
}

.message_page .message_block__item:nth-child(2n) {
  flex-direction: row-reverse
}

.message_page .message_block__item:nth-child(2n) .message_block__body {
  padding-left: 120px
}

.message_page .message_block__item:nth-child(2n) .message_block__item_wrap {
  margin-right: -66px
}

.message_page .message_block__item:nth-child(2n+1) .message_block__item_wrap {
  margin-left: -66px
}

.message_page .message_block__body {
  background-color: #fff;
  max-width: 680px;
  width: 61.81818%;
  padding: 48px 80px 48px 60px;
  display: flex;
  flex-direction: column;
  gap: 24px;
  border-radius: 20px;
  position: relative;
  z-index: -1
}

.message_page .message_block__body_title {
  font-size: 26px;
  font-weight: 700;
  color: #1cac85
}

.message_page .message_block__body_wrap {
  display: flex;
  gap: 12px;
  align-items: center
}

.message_page .message_block__body_img {
  width: 40px;
  aspect-ratio: 1/1
}

.message_page .message_block__body_img img {
  width: 100%;
  height: 100%;
  object-fit: contain
}

.message_page .message_block__body_name {
  font-size: 15px;
  font-weight: 600
}

.message_page .message_block__body_text {
  line-height: 2;
  max-width: 500px;
  width: 100%
}

.message_page .message_block__item_wrap {
  margin-top: 48px;
  position: relative
}

.message_page .message_block__item_number {
  position: absolute;
  top: -50px;
  right: 30px;
  width: 94px;
  aspect-ratio: 94/100.19;
  padding: 32px 0 0;
  background: url(../img/about/bg_feature_number.svg) left top/cover no-repeat;
  color: #1cac85;
  font-family: Inter;
  text-align: center
}

.message_page .message_block__item_number_01 {
  display: block;
  margin-bottom: 4px;
  font-size: 12px;
  font-weight: 600;
  line-height: 1;
  letter-spacing: .06em
}

.message_page .message_block__item_number_02 {
  font-size: 37.85px;
  font-weight: 700;
  line-height: 1;
  letter-spacing: -.02em
}

.message_page .message_block__item_img {
  aspect-ratio: 486/324;
  max-width: 486px;
  width: 100%
}

.message_page .message_block__item_img img {
  width: 100%;
  height: 100%;
  object-fit: cover
}

.message_page .message_block__other_voices {
  margin-top: 120px
}

.message_page .other_voice_block {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(340px, 1fr));
  gap: 40px
}

.message_page .other_voice_block__item {
  background-color: #fff;
  border-radius: 20px;
  border: 2px solid #e3efe8;
  padding: 30px
}

.message_page .other_voice_block__comment {
  font-size: 15px;
  line-height: 1.8;
  letter-spacing: -.01em
}

.message_page .other_voice_block__wrap {
  margin-top: 40px;
  display: flex;
  gap: 16px;
  align-items: center
}

.message_page .other_voice_block__img {
  width: 50px;
  aspect-ratio: 1/1
}

.message_page .other_voice_block__img img {
  width: 100%;
  height: 100%;
  object-fit: cover
}

.message_page .other_voice_block__name {
  font-size: 15px;
  font-weight: 600
}

.news_detail_page .breadcrumb_block {
  padding-top: 150px;
  padding-bottom: 60px
}

.news_detail_page .breadcrumb_block__inner {
  padding: 0
}

.news_detail_page .breadcrumb_block,
.news_detail_page_wrapper {
  width: min(85%, 1100px);
  margin-inline: auto
}

.news_detail_page_wrapper {
  margin-bottom: 160px
}

.news_detail_page .news_article_block {
  padding: 60px 5.909%;
  background: #fff;
  border-radius: 20px
}

.news_detail_page .news_article_block__date {
  display: block;
  margin-bottom: 15px;
  color: #00b506;
  font-family: Inter;
  font-size: 16px;
  font-weight: 700;
  line-height: 1.7
}

.news_detail_page .news_article_block__title {
  margin-bottom: 37px;
  font-size: 44px;
  font-weight: 800;
  line-height: 1.5
}

.news_detail_page .news_article_block_labels {
  margin-bottom: 40px
}

.news_detail_page .news_article_block__label {
  display: inline-block
}

.news_detail_page .news_article_block__label+div {
  margin-left: 9px
}

.news_detail_page .news_article_block__label a {
  display: block;
  width: 100%;
  padding: 5px 13px;
  background: #e0eae1;
  border-radius: 32px;
  color: #7a967d;
  font-size: 12px;
  font-weight: 500;
  letter-spacing: .04em
}

.news_detail_page .news_article_block__label a:hover {
  color: #fff;
  background: #00b506;
  transition-duration: .3s
}

.news_detail_page .news_article_block__img {
  overflow: hidden;
  width: 100%;
  margin-bottom: 60px;
  border-radius: 20px
}

.news_detail_page .news_article_block__text {
  font-size: 17px;
  font-weight: 400;
  line-height: 2.1;
  letter-spacing: .04em
}

.news_detail_page .news_article_block>p+p {
  margin-top: 40px
}

.news_detail_page_back {
  padding: 80px 0 0
}

.news_detail_page_back a {
  display: flex;
  align-items: center;
  font-size: 20px;
  font-weight: 700;
  line-height: 1;
  letter-spacing: .02em
}

.news_detail_page_back a::before {
  content: "";
  display: block;
  margin-right: 26px;
  width: 13px;
  height: 21px;
  background: url(../img/common/icon_pager_prev.svg) left top/cover no-repeat
}

.news_page .mv_block {
  overflow-x: hidden;
  padding-top: 120px
}

.news_page .mv_block__inner {
  max-width: 1180px;
  margin: 0 auto;
  padding-inline: 40px
}

.news_page .mv_block__wrap {
  display: flex;
  align-items: center
}

.news_page .mv_block__head {
  max-width: 417px;
  color: var(--green-850, #1cac85);
  position: relative
}

.news_page .mv_block__sub_title {
  font-family: Inter;
  font-weight: 600;
  letter-spacing: .06em;
  text-shadow: 0 0 80px #fff;
  text-transform: uppercase
}

.news_page .mv_block__main_title {
  margin-top: 24px;
  font-size: 54px;
  font-weight: 700;
  letter-spacing: -.04em;
  line-height: 1.25;
  text-shadow: 0 0 80px #fff;
  white-space: nowrap
}

.news_page .mv_block__img {
  margin-right: calc(50% - 50vw);
  margin-left: -111px;
  width: 100vw
}

.news_page .mv_block__img img {
  aspect-ratio: 1000/430;
  width: 100%;
  object-position: bottom;
  border-radius: 0 0 0 20px;
  object-fit: cover
}

.news_page .news_list {
  width: min(85%, 1100px);
  margin-inline: auto;
  padding: 50px 0 80px
}

.news_page .news_list_item {
  display: flex;
  padding: 40px 0;
  border-bottom: 2px solid #dae6df
}

.news_page .news_list_item__date {
  margin-top: 1px;
  flex-shrink: 0;
  width: 150px;
  color: #00b506;
  font-family: Inter;
  font-size: 16px;
  font-weight: 700;
  line-height: 1.7;
  letter-spacing: .03em
}

.news_page .news_list_item__title {
  margin-bottom: 21px;
  font-size: 20px;
  font-weight: 700;
  line-height: 1.6;
  letter-spacing: .04em
}

.news_page .news_list_item__text {
  font-size: 16px;
  font-weight: 400;
  line-height: 1.7;
  letter-spacing: .02em
}

.news_page .pager_block {
  padding-bottom: 160px
}

.page_404_block {
  padding-top: 140px
}

.page_404_block__head {
  color: #1cac85;
  font-family: Inter;
  font-size: 54px;
  font-weight: 700;
  line-height: 1.25
}

.page_404_block__title {
  margin-top: 80px;
  font-size: 34px;
  font-weight: 800;
  line-height: 1.7;
  letter-spacing: -.02em;
  padding-left: 28px;
  position: relative
}

.page_404_block__title::before {
  position: absolute;
  content: "";
  width: 8px;
  height: 40px;
  background-color: #1cac85;
  top: 50%;
  transform: translateY(-50%);
  left: 0
}

.page_404_block__text {
  margin-top: 40px;
  font-size: 16px;
  line-height: 1.9;
  letter-spacing: 0
}

.page_404_block__btn {
  max-width: 288px;
  width: 100%;
  margin-top: 60px
}

.privacy_page .mv_block {
  overflow-x: hidden;
  padding-top: 120px
}

.privacy_page .mv_block__inner {
  max-width: 1180px;
  margin: 0 auto;
  padding-inline: 40px
}

.privacy_page .mv_block__wrap {
  display: flex;
  align-items: center
}

.privacy_page .mv_block__head {
  max-width: 417px;
  color: var(--green-850, #1cac85);
  position: relative
}

.privacy_page .mv_block__sub_title {
  font-family: Inter;
  font-weight: 600;
  letter-spacing: .06em;
  text-shadow: 0 0 80px #fff;
  text-transform: uppercase
}

.privacy_page .mv_block__main_title {
  margin-top: 24px;
  font-size: 54px;
  font-weight: 700;
  letter-spacing: -.04em;
  line-height: 1.25;
  text-shadow: 0 0 80px #fff;
  white-space: nowrap
}

.privacy_page .mv_block__img {
  margin-right: calc(50% - 50vw);
  margin-left: -111px;
  width: 100vw
}

.privacy_page .mv_block__img img {
  aspect-ratio: 1000/430;
  width: 100%;
  object-position: bottom;
  border-radius: 0 0 0 20px;
  object-fit: cover
}

.privacy_page .privacy_block__text {
  font-size: 16px;
  font-weight: 600;
  line-height: 1.7
}

.privacy_page .privacy_block__list {
  margin-top: 60px;
  display: flex;
  flex-direction: column;
  gap: 60px
}

.privacy_page .privacy_block__item {
  display: flex;
  flex-direction: column
}

.privacy_page .privacy_block__item_head {
  color: #00b506;
  font-size: 16px;
  font-weight: 600;
  line-height: 1.5;
  letter-spacing: .08em;
  margin-bottom: 4px
}

.privacy_page .privacy_block__item_text {
  font-size: 16px;
  font-weight: 500;
  line-height: 1.9;
  letter-spacing: 0;
  margin-top: 16px;
  text-indent: 1rem
}

.privacy_page .privacy_block__item_text--ls {
  line-height: 2;
  text-indent: 0
}

.property-qualite_detail_page .section_wrapper {
  width: min(85%, 1100px);
  margin-inline: auto
}

.property-qualite_detail_page .breadcrumb_block {
  padding-top: calc(140 / 1512 * 100vw)
}

.property-qualite_detail_page .detail_block {
  border-radius: 20px;
  background: #fff;
  width: 1100px;
  padding: 60px 65px 65px 65px;
  margin-top: 60px
}

.property-qualite_detail_page .detail_block__adress {
  color: #00b506;
  font-size: 1rem;
  font-weight: 700;
  line-height: 170%
}

.property-qualite_detail_page .detail_block__title {
  color: #143d32;
  font-size: 2.75rem;
  font-weight: 800;
  line-height: 150%
}

.property-qualite_detail_page .gallery_block {
  position: relative;
  margin-top: 40px
}

.property-qualite_detail_page .intro_block {
  margin-top: 77px
}

.property-qualite_detail_page .intro_block h3 {
  color: #143d32;
  font-size: 1.5625rem;
  font-weight: 800;
  line-height: 100%;
  letter-spacing: -.0313rem;
  border-radius: 4px;
  background: var(--green-150, #e3efe8);
  padding: 17px 0 17px 21px
}

.property-qualite_detail_page .intro_block p {
  margin-top: 30px;
  color: #143d32;
  text-align: justify;
  font-size: 1.0625rem;
  line-height: 210%;
  letter-spacing: .0425rem
}

.property-qualite_detail_page .intro_block ul {
  margin-top: 30px;
  text-indent: -1rem;
  padding-left: 1rem
}

.property-qualite_detail_page .intro_block ul li {
  line-height: 210%
}

.property-qualite_detail_page .intro_block ul li+li {
  margin-top: 20px
}

.property-qualite_detail_page .info_block {
  margin-top: 70px
}

.property-qualite_detail_page .info_block__top {
  display: flex;
  justify-content: space-between;
  align-items: flex-start
}

.property-qualite_detail_page .info_block__bottom {
  margin-top: 40px
}

.property-qualite_detail_page .data_block {
  border-radius: 10px;
  background: #f6f6f6;
  padding: 30px;
  position: relative
}

.property-qualite_detail_page .data_block::before {
  display: block;
  content: "";
  background: #1cac85;
  width: 8px;
  height: 30px;
  position: absolute;
  left: 0
}

.property-qualite_detail_page .data_block h4 {
  font-size: 1.375rem;
  font-weight: 700;
  line-height: 100%;
  letter-spacing: .0413rem;
  display: flex;
  align-items: center;
  gap: 22px
}

.property-qualite_detail_page .data_block table tr {
  margin-top: 20px
}

.property-qualite_detail_page .data_block table th {
  color: var(--green-850, #1cac85);
  font-size: .9375rem;
  font-weight: 500;
  line-height: 150%;
  letter-spacing: .0187rem;
  text-align: start;
  vertical-align: baseline;
  padding: 20px 25px 0 0
}

.property-qualite_detail_page .data_block table td {
  color: #143d32;
  font-size: .9375rem;
  font-weight: 500;
  line-height: 150%;
  letter-spacing: .0187rem;
  vertical-align: baseline
}

.property-qualite_detail_page .feature_block {
  border-radius: 10px;
  background: #f6f6f6;
  padding: 30px 106px 30px 30px;
  position: relative
}

.property-qualite_detail_page .feature_block::before {
  display: block;
  content: "";
  background: #1cac85;
  width: 8px;
  height: 30px;
  position: absolute;
  left: 0
}

.property-qualite_detail_page .feature_block h4 {
  font-size: 1.375rem;
  font-weight: 700;
  line-height: 100%;
  letter-spacing: .0413rem;
  display: flex;
  align-items: center;
  gap: 22px
}

.property-qualite_detail_page .feature_block ul {
  margin-top: 36px
}

.property-qualite_detail_page .feature_block ul li+li {
  margin-top: 20px
}

.property-qualite_detail_page .service_block {
  border-radius: 10px;
  background: #f6f6f6;
  padding: 30px;
  position: relative
}

.property-qualite_detail_page .service_block::before {
  display: block;
  content: "";
  background: #1cac85;
  width: 8px;
  height: 30px;
  position: absolute;
  left: 0
}

.property-qualite_detail_page .service_block h4 {
  font-size: 1.375rem;
  font-weight: 700;
  line-height: 100%;
  letter-spacing: .0413rem;
  display: flex;
  align-items: center;
  gap: 22px
}

.property-qualite_detail_page .service_block__tag_wrapper {
  display: flex;
  flex-wrap: wrap;
  margin-top: 36px
}

.property-qualite_detail_page .service_block__tag_wrapper li {
  display: inline-block;
  margin: 0 12px 5px 0;
  padding: 10px 16px;
  background: #efefef;
  color: #cdcdcd;
  font-size: .9375rem;
  font-weight: 600;
  line-height: 1;
  letter-spacing: -.02em
}

.property-qualite_detail_page .service_block__tag_wrapper li.--active {
  background: #e3efe8;
  color: #143d32
}

.property-qualite_detail_page .back_link_btn {
  margin-top: 80px;
  padding-bottom: 160px
}

.property-qualite_detail_page .back_link_btn a {
  color: #143d32;
  font-feature-settings: "halt"on;
  font-family: "Noto Sans JP";
  font-size: 1.25rem;
  font-style: normal;
  font-weight: 700;
  line-height: 100%;
  letter-spacing: .025rem;
  display: flex;
  align-items: center;
  gap: 20px
}

.property-qualite_detail_page .back_link_btn a:before {
  display: block;
  content: "";
  width: 15px;
  height: 15px;
  border-left: 4px solid #143d32;
  border-bottom: 4px solid #143d32;
  rotate: 45deg
}

.property-qualite_detail_page .thumbnails {
  display: grid;
  margin: 20px auto 0;
  padding: 0;
  justify-content: center;
  grid-template-columns: repeat(6, 1fr);
  gap: 17px 11px
}

.property-qualite_detail_page .thumbnail {
  width: 146px;
  border-radius: 6px;
  overflow: hidden;
  list-style: none;
  cursor: pointer
}

.property-qualite_detail_page .thumbnail img {
  width: 100%;
  height: 100%;
  object-fit: cover
}

.property-qualite_detail_page .thumbnail.is-active {
  border: 3px solid #00b506
}

.property-qualite_detail_page .splide__slide {
  border-radius: 20px;
  overflow: hidden
}

.property-qualite_detail_page .splide__slide img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: inherit
}

.property-qualite_detail_page .splide__arrows {
  display: flex;
  justify-content: space-between;
  z-index: 1;
  position: absolute;
  width: 105%;
  top: 50%;
  transform: translateX(-3%)
}

.property-qualite_detail_page .splide__arrow svg {
  display: none
}

.property-qualite_detail_page .splide__arrow--next,
.property-qualite_detail_page .splide__arrow--prev {
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  width: 50px;
  height: 50px;
  background-color: transparent
}

.property-qualite_detail_page .splide__arrow--prev {
  background-image: url(../images/arrow-btn.svg)
}

.property-qualite_detail_page .splide__arrow--next {
  background-image: url(../images/arrow-btn.svg)
}

_::-webkit-full-page-media,
_:future,
:root .property_page .lead_block_nav_item_main {
  padding: 14px 4% 14px 6%
}

_::-webkit-full-page-media,
_:future,
:root .property_page .lead_block_nav_item__img img {
  max-inline-size: 100%;
  height: auto
}

_::-webkit-full-page-media,
_:future,
:root .property_page .lead_block_nav_item_main__title {
  font-size: 26px;
  line-height: 1.2
}

.property-qualite_page .mv_block {
  overflow-x: hidden;
  padding-top: 130px
}

.property-qualite_page .mv_block__inner {
  max-width: 1180px;
  margin: 0 auto;
  padding-inline: 40px
}

.property-qualite_page .mv_block__wrap {
  display: flex;
  align-items: center;
  gap: 160px
}

.property-qualite_page .mv_block__head {
  max-width: 417px;
  color: #143d32;
  position: relative
}

.property-qualite_page .mv_block__sub_title {
  display: flex;
  align-items: center;
  gap: 11px;
  white-space: nowrap
}

.property-qualite_page .mv_block__sub_title::after {
  display: block;
  content: "";
  background: url(/assets/img/property-qualite/pic_mv_01.svg) no-repeat center/contain;
  width: 53px;
  height: 42px
}

.property-qualite_page .mv_block__main_title {
  margin-top: 24px;
  font-size: 54px;
  font-weight: 700;
  letter-spacing: -.04em;
  line-height: 1.25;
  text-shadow: 0 0 80px #fff;
  white-space: nowrap
}

.property-qualite_page .mv_block__img {
  margin-right: calc(50% - 50vw);
  margin-left: -111px;
  width: 100vw
}

.property-qualite_page .mv_block__img img {
  aspect-ratio: 1000/430;
  width: 100%;
  object-position: bottom;
  border-radius: 0 0 0 20px;
  object-fit: cover
}

.property-qualite_page .section_wrapper {
  width: min(85%, 1100px);
  margin-inline: auto
}

.property-qualite_page .lead_block {
  display: flex;
  gap: 66px;
  margin-top: 86px
}

.property-qualite_page .lead_block__text {
  flex: 1
}

.property-qualite_page .lead_block__text h3 {
  color: var(--green-850, #1cac85);
  font-family: "Noto Sans JP";
  font-size: 1.625rem;
  font-weight: 800;
  line-height: 120%;
  letter-spacing: .065rem
}

.property-qualite_page .lead_block__text p {
  margin-top: 40px;
  text-align: justify;
  font-size: 1rem;
  font-weight: 600;
  line-height: 190%;
  letter-spacing: -.02rem
}

.property-qualite_page .lead_block__img {
  width: 554px
}

.property-qualite_page .lead_block__img img {
  width: 100%
}

.property-qualite_page .intro_block {
  margin-top: 65px
}

.property-qualite_page .intro_block h3 {
  overflow: hidden;
  color: #143d32;
  font-size: 2.125rem;
  font-weight: 800;
  line-height: 170%;
  letter-spacing: -.0425rem;
  display: flex;
  align-items: center;
  gap: 20px
}

.property-qualite_page .intro_block h3::before {
  display: block;
  content: "";
  background: #1cac85;
  width: 8px;
  height: 40px
}

.property-qualite_page .intro_block p {
  margin-top: 26px;
  color: #143d32;
  font-size: 1rem;
  font-weight: 600;
  line-height: 170%;
  letter-spacing: .02rem
}

.property-qualite_page .intro_block__list {
  display: grid;
  grid-template-columns: repeat(6, 1fr);
  gap: 12px;
  margin-top: 40px
}

.property-qualite_page .intro_block__list li {
  border-radius: 10px;
  background: var(--green-150, #e3efe8);
  text-align: center;
  padding: 23px 15px 23px 15px
}

.property-qualite_page .intro_block__list li p {
  margin-top: 20px;
  color: var(--green-900, #143d32);
  font-size: .9375rem;
  font-weight: 700;
  line-height: 130%;
  letter-spacing: .0375rem
}

.property-qualite_page .intro_block__icon {
  width: 86px;
  display: inline-block
}

.property-qualite_page .intro_block__icon img {
  width: 100%
}

.property-qualite_page .property_block {
  margin-top: 160px;
  padding-bottom: 160px
}

.property-qualite_page .property_block h3 {
  color: #143d32;
  font-size: 2.5rem;
  font-weight: 700;
  line-height: 150%;
  letter-spacing: .05rem
}

.property-qualite_page .property_block__area {
  margin-top: 50px
}

.property-qualite_page .property_block__area h4 {
  color: #143d32;
  font-size: 2.125rem;
  font-weight: 800;
  line-height: 170%;
  letter-spacing: -.0425rem;
  display: flex;
  align-items: center;
  gap: 20px
}

.property-qualite_page .property_block__area h4::before {
  display: block;
  content: "";
  background: #1cac85;
  width: 8px;
  height: 40px
}

.property-qualite_page .qualite_block {
  padding: 160px 0 135px;
  overflow: hidden
}

.property-qualite_page .qualite_block_head {
  position: relative;
  z-index: 1;
  display: flex;
  justify-content: space-between;
  flex-direction: row-reverse
}

.property-qualite_page .qualite_block_head_main {
  width: 53.18%;
  padding: 34px 0 0
}

.property-qualite_page .qualite_block_head_title {
  margin-bottom: 41px
}

.property-qualite_page .qualite_block_head_title__01 {
  display: block;
  margin-bottom: 19px;
  font-size: 24px;
  font-weight: 800;
  line-height: 1.2;
  letter-spacing: .04em
}

.property-qualite_page .qualite_block_head_title__02 {
  display: flex;
  font-size: 50px;
  font-weight: 800;
  line-height: 1.2
}

.property-qualite_page .qualite_block_head_title__02::before {
  flex-shrink: 0;
  content: "";
  width: 64px;
  height: 64px;
  margin-right: 15px;
  background: url(/assets/img/property/icon_home.svg) left top/cover no-repeat
}

.property-qualite_page .qualite_block_head__subtitle {
  margin-bottom: 40px;
  font-size: 16px;
  font-weight: 500;
  line-height: 2.2;
  letter-spacing: 0
}

.property-qualite_page .qualite_block_head_link a {
  padding: 14px 36px
}

.property-qualite_page .qualite_block_head_img {
  flex-shrink: 0;
  width: min(58.2%, 640px);
  margin-left: -19%
}

.property-qualite_page .qualite_block_head::after {
  content: "";
  position: absolute;
  display: block;
  right: 1%;
  bottom: 69px;
  width: 10%;
  aspect-ratio: 109/87;
  background: url(../images/badge.png) left top/cover no-repeat
}

.property-qualite_page .qualite_block_list {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 40px;
  position: relative;
  z-index: 2;
  margin-top: 26px
}

.property-qualite_page .qualite_block_list_item {
  border-radius: 16px;
  background: #fff;
  box-shadow: 0 0 10px 0 rgba(0, 0, 0, .0588235294);
  transition-duration: .3s
}

.property-qualite_page .qualite_block_list_item:hover {
  opacity: .7
}

.property-qualite_page .qualite_block_list_item__img img {
  width: 100%
}

.property-qualite_page .qualite_block_list_item_body {
  padding: 16px 8.4% 20px;
  border-radius: 0 0 16px 16px;
  background-color: #fff
}

.property-qualite_page .qualite_block_list_item__area {
  margin-bottom: 9px;
  font-size: 12px;
  font-weight: 700;
  line-height: 1;
  letter-spacing: .02em
}

.property-qualite_page .qualite_block_list_item__name {
  margin-bottom: 11px;
  font-size: 20px;
  font-weight: 800;
  line-height: 1.3;
  letter-spacing: .04em
}

.property-qualite_page .qualite_block_list_item__outline {
  margin-bottom: 11px;
  color: #7a967d;
  font-size: 13px;
  font-weight: 500;
  line-height: 1.5;
  letter-spacing: .04em
}

.property-qualite_page .qualite_block_list_item__outline span+span {
  margin-left: 2.5%
}

.property-qualite_page .qualite_block_list_item_feature {
  display: flex;
  flex-wrap: wrap;
  width: 105%;
  margin-bottom: 13px
}

.property-qualite_page .qualite_block_list_item_feature li {
  display: inline-block;
  margin: 0 4px 5px 0;
  padding: 6px 6px 7px;
  background: #efefef;
  color: #cdcdcd;
  font-size: 11px;
  font-weight: 600;
  line-height: 1;
  letter-spacing: -.02em
}

.property-qualite_page .qualite_block_list_item_feature li.--active {
  background: #e3efe8;
  color: #143d32
}

.property-qualite_page .qualite_block_list_item__cta {
  display: flex;
  align-items: center;
  justify-content: space-between;
  align-self: flex-end;
  width: 116px;
  height: 29px;
  padding-inline: 15px 7px;
  margin-top: auto;
  background: #1cac85;
  border: 2px solid var(--green-850, #1cac85);
  border-radius: 9999px;
  color: #fff;
  font-size: 13px;
  font-weight: 700;
  line-height: 1;
  letter-spacing: .0225rem
}

.property-qualite_page .qualite_block_list_item__cta::after {
  display: block;
  content: "";
  background: url(../images/arrow-btn.svg) no-repeat center;
  width: 10px;
  height: 10px
}

_::-webkit-full-page-media,
_:future,
:root .property_page .lead_block_nav_item_main {
  padding: 14px 4% 14px 6%
}

_::-webkit-full-page-media,
_:future,
:root .property_page .lead_block_nav_item__img img {
  max-inline-size: 100%;
  height: auto
}

_::-webkit-full-page-media,
_:future,
:root .property_page .lead_block_nav_item_main__title {
  font-size: 26px;
  line-height: 1.2
}

.property_page .section_wrapper {
  width: min(85%, 1100px);
  margin-inline: auto
}

.property_page .mv_block {
  overflow-x: hidden;
  padding-top: 120px
}

.property_page .mv_block__inner {
  max-width: 1180px;
  margin: 0 auto;
  padding-inline: 40px
}

.property_page .mv_block__wrap {
  display: flex;
  align-items: center;
  gap: 160px
}

.property_page .mv_block__head {
  max-width: 417px;
  color: var(--green-850, #1cac85);
  position: relative;
  margin-top: -40px
}

.property_page .mv_block__sub_title {
  font-family: Inter;
  font-weight: 600;
  letter-spacing: .06em;
  text-shadow: 0 0 80px #fff;
  text-transform: uppercase
}

.property_page .mv_block__main_title {
  margin-top: 24px;
  font-size: 54px;
  font-weight: 700;
  letter-spacing: -.04em;
  line-height: 1.25;
  text-shadow: 0 0 80px #fff;
  white-space: nowrap
}

.property_page .mv_block__img {
  margin-right: calc(50% - 50vw);
  margin-left: -111px;
  width: 100vw
}

.property_page .mv_block__img img {
  aspect-ratio: 1000/430;
  width: 100%;
  object-position: bottom;
  border-radius: 0 0 0 20px;
  object-fit: cover
}

.property_page .lead_block {
  margin-bottom: 40px
}

.property_page .lead_block__title {
  display: flex;
  align-items: center;
  margin-bottom: 40px;
  font-size: 34px;
  font-weight: 800;
  line-height: 1.7;
  letter-spacing: -.02em
}

.property_page .lead_block__title::before {
  content: "";
  display: block;
  width: 8px;
  height: 40px;
  margin: 0 21px 0 0;
  background: #1cac85
}

.property_page .lead_block__text {
  margin-bottom: 56px;
  font-size: 16px;
  font-weight: 600;
  line-height: 1.7;
  letter-spacing: .02em
}

.property_page .lead_block_nav {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 60px
}

.property_page .lead_block_nav_item {
  display: flex;
  background: #fff;
  border: 2px solid #a7d1c6;
  border-radius: 12px
}

.property_page .lead_block_nav_item:hover {
  opacity: .7;
  transition-duration: .3s
}

.property_page .lead_block_nav_item__img {
  flex-shrink: 0;
  overflow: hidden;
  width: 35.57%
}

.property_page .lead_block_nav_item__img img {
  object-position: center;
  object-fit: cover;
  max-inline-size: auto;
  height: 100%;
  width: 100%
}

.property_page .lead_block_nav_item_main {
  position: relative;
  display: flex;
  flex-direction: column;
  width: 64.43%;
  padding: 20px 4% 20px 6%
}

.property_page .lead_block_nav_item_main__title {
  margin-bottom: 19px;
  color: #1cac85;
  font-size: 30px;
  font-weight: 800;
  line-height: 1.2;
  letter-spacing: .04em
}

.property_page .lead_block_nav_item_main__title--small {
  font-size: 26px;
  line-height: 1.2
}

.property_page .lead_block_nav_item_main__text {
  font-size: 13px;
  font-weight: 500;
  line-height: 1.5;
  letter-spacing: .02em
}

.property_page .lead_block_nav_item_main__cta {
  display: flex;
  align-items: center;
  justify-content: space-between;
  align-self: flex-end;
  width: 116px;
  height: 29px;
  padding-inline: 17px 5px;
  margin-top: auto;
  margin-left: auto;
  background: #1cac85;
  border: 2px solid var(--green-850, #1cac85);
  border-radius: 9999px;
  color: #fff;
  font-size: 13px;
  font-weight: 700;
  line-height: 1;
  letter-spacing: .0225rem
}

.property_page .lead_block_nav_item_main__cta::after {
  display: block;
  content: "";
  background: url(../images/arrow-btn.svg) no-repeat center;
  width: 10px;
  height: 10px
}

.property_page .search_block {
  padding-top: 120px
}

.property_page .search_block_bg {
  padding: 58px 4%;
  background: #e3efe8;
  border-radius: 20px
}

.property_page .search_block_head {
  display: flex;
  align-items: flex-end;
  margin-bottom: 38px
}

.property_page .search_block_head::before {
  content: "";
  display: block;
  width: 64px;
  aspect-ratio: 1/1;
  margin-right: 23px;
  background: url(/assets/img/property/icon_home.svg) left top/cover no-repeat
}

.property_page .search_block_head span {
  margin-bottom: 6px
}

.property_page .search_block_head__title_01 {
  margin-right: 11px;
  font-size: 50px;
  font-weight: 800;
  line-height: 1.2
}

.property_page .search_block_head__title_02,
.property_page .search_block_head__title_03 {
  font-size: 24px;
  font-weight: 800;
  line-height: 1.2;
  letter-spacing: .04em
}

.property_page .search_block_head__text {
  margin-bottom: 40px;
  font-size: 16px;
  font-weight: 500;
  line-height: 2.2;
  letter-spacing: -.01em
}

.property_page .search_block_body {
  padding: 40px 5% 38px;
  background: #fff;
  border-radius: 20px
}

.property_page .search_block_body__title {
  display: flex;
  align-items: center;
  color: #12906e;
  font-size: 28px;
  font-weight: 800;
  line-height: 1.7;
  letter-spacing: -.02em
}

.property_page .search_block_body__title::before {
  content: "";
  display: block;
  width: 30px;
  aspect-ratio: 1/1;
  margin-right: 20px;
  background: url(/assets/img/property/icon_loupe.svg) left top/cover no-repeat
}

.property_page .search_block_body_nav {
  display: flex;
  flex-wrap: wrap;
  margin: 38px 0 50px;
  padding-bottom: 54px;
  border-bottom: 2px solid #eee
}

.property_page .search_block_body_nav a {
  display: flex;
  font-size: 20px;
  font-weight: 800;
  line-height: 1;
  letter-spacing: .16em
}

.property_page .search_block_body_nav a::before {
  content: "";
  display: block;
  width: 22px;
  height: 22px;
  margin-right: 13px;
  background: url(/assets/img/property/icon_circle.svg) left top/cover no-repeat
}

.property_page .search_block_body_nav a+a {
  margin-left: 8.7%
}

.property_page .search_block_body_list {
  margin: 20px;
  height: 452px;
  overflow: auto
}

.property_page .search_block_body_list iframe {
  margin: auto
}

.property_page .qualite_block {
  padding: 160px 0 135px;
  overflow: hidden
}

.property_page .qualite_block_head {
  position: relative;
  z-index: 1;
  display: flex;
  justify-content: space-between;
  flex-direction: row-reverse
}

.property_page .qualite_block_head_main {
  width: 53.18%;
  padding: 34px 0 0
}

.property_page .qualite_block_head_title {
  margin-bottom: 41px
}

.property_page .qualite_block_head_title__01 {
  display: block;
  margin-bottom: 19px;
  font-size: 24px;
  font-weight: 800;
  line-height: 1.2;
  letter-spacing: .04em
}

.property_page .qualite_block_head_title__02 {
  display: flex;
  font-size: 50px;
  font-weight: 800;
  line-height: 1.2
}

.property_page .qualite_block_head_title__02::before {
  flex-shrink: 0;
  content: "";
  width: 64px;
  height: 64px;
  margin-right: 15px;
  background: url(/assets/img/property/icon_home.svg) left top/cover no-repeat
}

.property_page .qualite_block_head__subtitle {
  margin-bottom: 40px;
  font-size: 16px;
  font-weight: 500;
  line-height: 2.2;
  letter-spacing: 0
}

.property_page .qualite_block_head_link a {
  padding: 14px 36px
}

.property_page .qualite_block_head_img {
  flex-shrink: 0;
  width: min(58.2%, 640px);
  margin-left: -19%
}

.property_page .qualite_block_head::after {
  content: "";
  position: absolute;
  display: block;
  right: 1%;
  bottom: 69px;
  width: 10%;
  aspect-ratio: 109/87;
  background: url(../images/badge.png) left top/cover no-repeat
}

.property_page .qualite_block_list {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 40px;
  position: relative;
  z-index: 2;
  margin-top: -24px
}

.property_page .qualite_block_list_item {
  border-radius: 16px;
  background: #fff;
  box-shadow: 0 0 10px 0 rgba(0, 0, 0, .0588235294);
  transition-duration: .3s
}

.property_page .qualite_block_list_item:hover {
  opacity: .7
}

.property_page .qualite_block_list_item_body {
  padding: 16px 8.4% 20px
}

.property_page .qualite_block_list_item__area {
  margin-bottom: 9px;
  font-size: 12px;
  font-weight: 700;
  line-height: 1;
  letter-spacing: .02em
}

.property_page .qualite_block_list_item__name {
  margin-bottom: 11px;
  font-size: 20px;
  font-weight: 800;
  line-height: 1.3;
  letter-spacing: .04em
}

.property_page .qualite_block_list_item__outline {
  margin-bottom: 11px;
  color: #7a967d;
  font-size: 13px;
  font-weight: 500;
  line-height: 1.5;
  letter-spacing: .04em
}

.property_page .qualite_block_list_item__outline span+span {
  margin-left: 2.5%
}

.property_page .qualite_block_list_item_feature {
  display: flex;
  flex-wrap: wrap;
  width: 105%;
  margin-bottom: 13px
}

.property_page .qualite_block_list_item_feature li {
  display: inline-block;
  margin: 0 4px 5px 0;
  padding: 6px 6px 7px;
  background: #efefef;
  color: #cdcdcd;
  font-size: 11px;
  font-weight: 600;
  line-height: 1;
  letter-spacing: -.02em
}

.property_page .qualite_block_list_item_feature li.--active {
  background: #e3efe8;
  color: #143d32
}

.property_page .qualite_block_list_item__cta {
  display: flex;
  align-items: center;
  justify-content: space-between;
  align-self: flex-end;
  width: 116px;
  height: 29px;
  padding-inline: 15px 7px;
  margin-top: auto;
  background: #1cac85;
  border: 2px solid var(--green-850, #1cac85);
  border-radius: 9999px;
  color: #fff;
  font-size: 13px;
  font-weight: 700;
  line-height: 1;
  letter-spacing: .0225rem
}

.property_page .qualite_block_list_item__cta::after {
  display: block;
  content: "";
  background: url(../images/arrow-btn.svg) no-repeat center;
  width: 10px;
  height: 10px
}

_::-webkit-full-page-media,
_:future,
:root .property_page .lead_block_nav_item_main {
  padding: 14px 4% 14px 6%
}

_::-webkit-full-page-media,
_:future,
:root .property_page .lead_block_nav_item__img img {
  max-inline-size: 100%;
  height: auto;
  height: 100%;
  object-fit: cover
}

_::-webkit-full-page-media,
_:future,
:root .property_page .lead_block_nav_item_main__title {
  font-size: 26px;
  line-height: 1.2
}

.shop_detail_page .mv_block {
  overflow-x: hidden;
  padding-top: 120px
}

.shop_detail_page .mv_block__inner {
  max-width: 1180px;
  margin: 0 auto;
  padding-inline: 40px
}

.shop_detail_page .mv_block__wrap {
  display: flex;
  align-items: center
}

.shop_detail_page .mv_block__head {
  max-width: 417px;
  color: var(--green-850, #1cac85);
  position: relative;
  margin-top: -40px
}

.shop_detail_page .mv_block__sub_title {
  font-family: Inter;
  font-weight: 600;
  letter-spacing: .06em;
  text-shadow: 0 0 80px #fff;
  text-transform: uppercase
}

.shop_detail_page .mv_block__main_title {
  margin-top: 24px;
  font-size: 54px;
  font-weight: 700;
  letter-spacing: -.04em;
  line-height: 1.25;
  text-shadow: 0 0 80px #fff;
  white-space: nowrap
}

.shop_detail_page .mv_block__img {
  margin-right: calc(50% - 50vw);
  margin-left: -111px;
  width: 100vw
}

.shop_detail_page .mv_block__img img {
  aspect-ratio: 1000/430;
  width: 100%;
  object-position: bottom;
  border-radius: 0 0 0 20px;
  object-fit: cover
}

.shop_detail_page .section_wrapper {
  width: min(85%, 1100px);
  margin-inline: auto
}

.shop_detail_page .title_style {
  display: flex;
  align-items: center;
  font-size: 34px;
  font-weight: 800;
  line-height: 1.7;
  letter-spacing: -.02em
}

.shop_detail_page .title_style::before {
  content: "";
  display: block;
  width: 8px;
  height: 40px;
  margin: 0 21px 0 0;
  background: #1cac85
}

.shop_detail_page .lead_block {
  display: flex;
  justify-content: space-between;
  margin-top: 86px;
  margin-bottom: 80px
}

.shop_detail_page .lead_block_main {
  width: 49.81%
}

.shop_detail_page .lead_block__title {
  margin-bottom: 36px
}

.shop_detail_page .lead_block__title span {
  display: inline-block;
  padding: 0 0 3px 10px;
  font-size: 28px;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: -.02em;
  background: #12906e;
  color: #fff
}

.shop_detail_page .lead_block__title span+span {
  margin-top: 14px
}

.shop_detail_page .lead_block__title span:nth-of-type(1) {
  position: relative
}

.shop_detail_page .lead_block__title span:nth-of-type(1)::after {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  display: block;
  width: 2.8%;
  height: 100%;
  background: #faf9f5
}

.shop_detail_page .lead_block__title span:nth-of-type(3) {
  padding-left: 0
}

.shop_detail_page .lead_block__text {
  font-size: 16px;
  line-height: 2.2
}

.shop_detail_page .lead_block_sub {
  width: min(42%, 452px)
}

.shop_detail_page .lead_block__img {
  margin-bottom: 30px
}

.shop_detail_page .lead_block_area {
  padding: 30px 6.637%;
  background: #e3efe8;
  border-radius: 10px
}

.shop_detail_page .lead_block_area__title {
  margin-bottom: 16px;
  font-size: 18px;
  font-weight: 800;
  line-height: 1.2;
  letter-spacing: .04em
}

.shop_detail_page .lead_block_area_list li {
  display: flex;
  font-size: 16px;
  line-height: 2.2
}

.shop_detail_page .lead_block_area_list li::before {
  content: "・";
  margin-inline: 6px 3px
}

.shop_detail_page .outline_block {
  margin-bottom: 121px
}

.shop_detail_page .outline_block__title {
  margin-bottom: 38px
}

.shop_detail_page .outline_block_wrapper {
  display: flex;
  justify-content: space-between
}

.shop_detail_page .outline_block_head {
  width: min(49%, 530px)
}

.shop_detail_page .outline_block__img {
  margin-bottom: 16px
}

.shop_detail_page .outline_block__img iframe {
  width: 100%
}

.shop_detail_page .outline_block__map {
  display: flex;
  align-items: center;
  font-size: 12px;
  font-weight: 500;
  line-height: 18px;
  letter-spacing: .02em;
  text-decoration-line: underline;
  text-decoration-style: solid
}

.shop_detail_page .outline_block__map::before {
  content: "";
  display: block;
  width: 13px;
  height: 18px;
  margin-right: 10px;
  background: url(../img/shop_detail/icon_map.svg) left top/cover no-repeat
}

.shop_detail_page .outline_block_body {
  width: min(45%, 490px)
}

.shop_detail_page .outline_block_list {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  margin-bottom: 30px;
  font-size: 15px;
  font-weight: 500;
  line-height: 1.5;
  letter-spacing: .02em
}

.shop_detail_page .outline_block_list dt {
  flex-shrink: 0;
  width: 90px;
  color: #00b506;
  white-space: nowrap
}

.shop_detail_page .outline_block_list dd+dt,
.shop_detail_page .outline_block_list dd:nth-of-type(n+2) {
  margin-top: 30px
}

.shop_detail_page .outline_block_list dd {
  width: calc(100% - 90px)
}

.shop_detail_page .outline_block_link {
  border-radius: 9999px;
  border: 2px solid var(--green-850, #1cac85);
  display: block;
  position: relative
}

.shop_detail_page .outline_block_link a {
  position: relative;
  color: #fff;
  background: #1cac85;
  font-size: 18px;
  font-weight: 700;
  line-height: 170%;
  letter-spacing: .0225rem;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 1rem;
  padding: 15px 36px;
  border-radius: 9999px
}

.shop_detail_page .outline_block_link a::after {
  position: absolute;
  right: 6%;
  display: block;
  content: "";
  background: url(../images/arrow-btn.svg) no-repeat center;
  width: 10px;
  height: 10px
}

.shop_detail_page .outline_block_link:hover a {
  color: var(--green-850, #1cac85);
  background-color: #fff;
  transition-duration: .3s
}

.shop_detail_page .outline_block_link:hover a::after {
  transition-duration: .3s;
  background: url(../images/arrow-btn.svg) no-repeat center
}

.shop_detail_page .staff_block {
  margin-bottom: 146px
}

.shop_detail_page .staff_block_head {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 60px
}

.shop_detail_page .staff_block_head__title {
  white-space: nowrap
}

.shop_detail_page .staff_block_head__subtitle {
  margin-left: 20px;
  font-size: 16px;
  font-weight: 600;
  line-height: 1.7;
  letter-spacing: .02em
}

.shop_detail_page .staff_block_list {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 50px 40px
}

.shop_detail_page .staff_block_list__img {
  margin-bottom: 13px
}

.shop_detail_page .staff_block_list__text {
  margin-bottom: 4px;
  font-size: 15px;
  font-weight: 700;
  line-height: 1.7
}

.shop_detail_page .staff_block_list__status {
  font-size: 13px;
  font-weight: 500;
  line-height: 1.7;
  letter-spacing: .02em
}

.shop_detail_page .staff_block_list__status span+span {
  margin-left: 7px
}

.shop-list_page .mv_block {
  overflow-x: hidden;
  padding-top: 120px
}

.shop-list_page .mv_block__inner {
  max-width: 1180px;
  margin: 0 auto;
  padding-inline: 40px
}

.shop-list_page .mv_block__wrap {
  display: flex;
  align-items: center;
  gap: 209px
}

.shop-list_page .mv_block__head {
  max-width: 417px;
  color: var(--green-850, #1cac85);
  position: relative;
  margin-top: -40px
}

.shop-list_page .mv_block__sub_title {
  font-family: Inter;
  font-weight: 600;
  letter-spacing: .06em;
  text-shadow: 0 0 80px #fff;
  text-transform: uppercase
}

.shop-list_page .mv_block__main_title {
  margin-top: 24px;
  font-size: 54px;
  font-weight: 700;
  letter-spacing: -.04em;
  line-height: 1.25;
  text-shadow: 0 0 80px #fff;
  white-space: nowrap
}

.shop-list_page .mv_block__img {
  margin-right: calc(50% - 50vw);
  margin-left: -111px;
  width: 100vw
}

.shop-list_page .mv_block__img img {
  aspect-ratio: 1000/430;
  width: 100%;
  object-position: bottom;
  border-radius: 0 0 0 20px;
  object-fit: cover
}

.shop-list_page .shop_block__text {
  font-size: 16px
}

.shop-list_page .shop_block__nav {
  margin-top: 40px
}

.shop-list_page .shop_block__nav_list {
  display: flex;
  gap: 20px;
  flex-wrap: wrap
}

.shop-list_page .shop_block__shop_item {
  cursor: pointer
}

.shop-list_page .shop_block__shop_item a {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 260px;
  border-radius: 12px;
  border: solid 2px #a7d1c6;
  background-color: #fff
}

.shop-list_page .shop_block__shop_item a:hover {
  background-color: #1cac85;
  transition: .3s all
}

.shop-list_page .shop_block__shop_item a:hover p {
  color: #fff
}

.shop-list_page .shop_block__shop_item a:hover p::after {
  background: url(../img/shop/icon_shop_arrow_hover.svg) no-repeat center center/contain
}

.shop-list_page .shop_block__shop_item p {
  font-weight: 600;
  color: #143d32;
  line-height: 1.2;
  font-size: 16px;
  padding-left: 30px;
  border-radius: 0 10px 10px 0;
  width: 69.23%;
  position: relative
}

.shop-list_page .shop_block__shop_item p::after {
  position: absolute;
  content: "";
  background: url(../img/shop/icon_shop_arrow.svg) no-repeat center center/contain;
  width: 9px;
  height: 9px;
  top: 50%;
  transform: translateY(-50%);
  right: 24px
}

.shop-list_page .shop_block__shop_img {
  aspect-ratio: 1/1;
  width: 30.769%;
  height: 100%
}

.shop-list_page .shop_block__shop_img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block
}

.shop-list_page .shop_block__shop_list {
  margin-top: 120px
}

.shop-list_page .shop_block__shop_lists {
  display: flex;
  flex-direction: column;
  gap: 100px
}

.shop-list_page .shop-list__head {
  font-size: 36px;
  font-weight: 700;
  line-height: 1;
  padding-left: 24px;
  position: relative
}

.shop-list_page .shop-list__head::before {
  position: absolute;
  content: "";
  width: 8px;
  height: 40px;
  background-color: #1cac85;
  top: 50%;
  transform: translateY(-50%);
  left: 0
}

.shop-list_page .shop-list__items {
  margin-top: 40px;
  display: flex;
  flex-wrap: wrap;
  gap: 40px
}

.shop-list_page .shop-list__item {
  width: 340px
}

.shop-list_page .shop-list__item a {
  display: inline-block;
  background-color: #fff;
  border: solid 3px #faf9f5;
  border-radius: 18px;
  height: 100%
}

.shop-list_page .shop-list__item a:hover {
  border: solid 3px #a7d1c6;
  transition: .3s all
}

.shop-list_page .shop-list__item_img {
  aspect-ratio: 340/180;
  width: 100%
}

.shop-list_page .shop-list__item_img img {
  width: 100%;
  height: 100%;
  object-fit: cover
}

.shop-list_page .shop-list__item_body {
  padding: 30px 20px 28px 23px;
  display: flex;
  flex-direction: column;
  color: #143d32
}

.shop-list_page .shop-list__item_title {
  font-size: 20px;
  font-weight: 800;
  letter-spacing: .04em
}

.shop-list_page .shop-list__item_content {
  margin-top: 20px
}

.shop-list_page .shop-list__item_content a {
  display: inline-block;
  margin-top: 10px;
  font-size: 12px;
  line-height: 1;
  padding-left: 23px;
  text-decoration: underline;
  border: none;
  position: relative
}

.shop-list_page .shop-list__item_content a:hover {
  border: none;
  opacity: .7
}

.shop-list_page .shop-list__item_content a::before {
  position: absolute;
  content: "";
  background: url(../img/shop/icon_shop_map_pin.svg) no-repeat center center/contain;
  width: 18px;
  height: 18px;
  top: 50%;
  transform: translateY(-50%);
  left: 0
}

.shop-list_page .shop-list__item_adress {
  font-size: 16px;
  line-height: 1.5
}

.shop-list_page .shop-list__item_wrap {
  display: flex;
  align-items: center;
  gap: 44px;
  margin-top: 20px
}

.shop-list_page .shop-list__item_tel {
  font-family: Inter;
  font-size: 15px;
  letter-spacing: -.02em;
  padding-left: 25px;
  position: relative
}

.shop-list_page .shop-list__item_tel::before {
  position: absolute;
  content: "";
  background: url(../img/common/icon_tel.svg) no-repeat center center/contain;
  width: 18px;
  height: 18px;
  top: 50%;
  transform: translateY(-50%);
  left: 0
}

.shop-list_page .shop-list__item_btn {
  font-size: 13px;
  font-weight: 700;
  color: #fff;
  background-color: #1cac85;
  border-radius: 9999px;
  padding: 4px 16px;
  max-width: 116px;
  width: calc(100% - 20px);
  display: flex;
  align-items: center;
  position: relative
}

.shop-list_page .shop-list__item_btn::before {
  position: absolute;
  content: "";
  background: url(../img/common/deco_btn_arrow_02.svg) no-repeat center center/contain;
  width: 7px;
  height: 7px;
  top: 50%;
  transform: translateY(-50%);
  right: 12px
}

.shop_page .mv_block {
  overflow-x: hidden;
  padding-top: 120px
}

.shop_page .mv_block__inner {
  max-width: 1180px;
  margin: 0 auto;
  padding-inline: 40px
}

.shop_page .mv_block__wrap {
  display: flex;
  align-items: center;
  gap: 209px
}

.shop_page .mv_block__head {
  max-width: 417px;
  color: var(--green-850, #1cac85);
  position: relative;
  margin-top: -40px
}

.shop_page .mv_block__sub_title {
  font-family: Inter;
  font-weight: 600;
  letter-spacing: .06em;
  text-shadow: 0 0 80px #fff;
  text-transform: uppercase
}

.shop_page .mv_block__main_title {
  margin-top: 24px;
  font-size: 54px;
  font-weight: 700;
  letter-spacing: -.04em;
  line-height: 1.25;
  text-shadow: 0 0 80px #fff;
  white-space: nowrap
}

.shop_page .mv_block__img {
  margin-right: calc(50% - 50vw);
  margin-left: -111px;
  width: 100vw
}

.shop_page .mv_block__img img {
  aspect-ratio: 1000/430;
  width: 100%;
  object-position: bottom;
  border-radius: 0 0 0 20px;
  object-fit: cover
}

.shop_page .shop_block__top {
  padding: 40px 50px;
  background-color: #1cac85;
  display: flex;
  gap: 58px;
  align-items: center;
  border-radius: 20px 20px 0 0
}

.shop_page .shop_block__title {
  display: flex;
  gap: 16px;
  align-items: center
}

.shop_page .shop_block__title_img {
  width: 34px;
  aspect-ratio: 1/1
}

.shop_page .shop_block__title_img img {
  width: 100%;
  height: 100%;
  object-fit: contain
}

.shop_page .shop_block__title_text {
  font-size: 34px;
  font-weight: 700;
  color: #fff;
  line-height: 1;
  letter-spacing: -.02em;
  line-height: 1.4
}

.shop_page .shop_block__text {
  color: #fff;
  line-height: 1.7
}

.shop_page .shop_block__map_img {
  width: 100%;
  aspect-ratio: 1100/554;
  position: relative
}

.shop_page .shop_block__map_img::before {
  content: "";
  position: absolute;
  width: 159px;
  aspect-ratio: 159/127;
  right: 36px;
  bottom: -24px;
  background: url(/assets/img/about/bg_about_character.svg) no-repeat center center/contain;
  z-index: 1
}

.shop_page .shop_block__map_img img {
  width: 100%;
  object-fit: cover
}

.sitepolicy_page .mv_block {
  overflow-x: hidden;
  padding-top: 120px
}

.sitepolicy_page .mv_block__inner {
  max-width: 1180px;
  margin: 0 auto;
  padding-inline: 40px
}

.sitepolicy_page .mv_block__wrap {
  display: flex;
  align-items: center
}

.sitepolicy_page .mv_block__head {
  max-width: 417px;
  color: var(--green-850, #1cac85);
  position: relative
}

.sitepolicy_page .mv_block__sub_title {
  font-family: Inter;
  font-weight: 600;
  letter-spacing: .06em;
  text-shadow: 0 0 80px #fff;
  text-transform: uppercase
}

.sitepolicy_page .mv_block__main_title {
  margin-top: 24px;
  font-size: 54px;
  font-weight: 700;
  letter-spacing: -.04em;
  line-height: 1.25;
  text-shadow: 0 0 80px #fff;
  white-space: nowrap
}

.sitepolicy_page .mv_block__img {
  margin-right: calc(50% - 50vw);
  margin-left: -111px;
  width: 100vw
}

.sitepolicy_page .mv_block__img img {
  aspect-ratio: 1000/430;
  width: 100%;
  object-position: bottom;
  border-radius: 0 0 0 20px;
  object-fit: cover
}

.sitepolicy_page .sitepolicy_block__text {
  font-size: 16px;
  font-weight: 600;
  line-height: 1.7
}

.sitepolicy_page .sitepolicy_block__list {
  margin-top: 60px;
  display: flex;
  flex-direction: column;
  gap: 60px
}

.sitepolicy_page .sitepolicy_block__item {
  display: flex;
  flex-direction: column
}

.sitepolicy_page .sitepolicy_block__item_head {
  color: #00b506;
  font-size: 16px;
  font-weight: 600;
  line-height: 1.5;
  letter-spacing: .08em;
  margin-bottom: 4px
}

.sitepolicy_page .sitepolicy_block__item_text {
  font-size: 16px;
  font-weight: 500;
  line-height: 1.9;
  letter-spacing: 0;
  margin-top: 16px;
  text-indent: 1rem
}

.sitepolicy_page .sitepolicy_block__item_text--ls {
  line-height: 2;
  text-indent: 0
}

@media screen and (769px <=width) {
  .blog_page .index_block_top__img img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    object-fit: contain
  }
}

@media screen and (max-width:768px) {
  .is-pc {
    display: none
  }

  .is-sp {
    display: block
  }

  html {
    font-size: calc(16 / 393 * 100vw)
  }

  .article_block h4 {
    margin-top: calc(12 / 393 * 100vw);
    font-size: 1.125rem;
    line-height: 140%;
    letter-spacing: .045rem
  }

  .article_block time {
    margin-top: calc(16 / 393 * 100vw);
    font-size: .75rem;
    letter-spacing: .015rem
  }

  .article_block p {
    font-size: .8125rem;
    line-height: 140%;
    letter-spacing: .0163rem
  }

  .article_block__label {
    margin-top: calc(16 / 393 * 100vw)
  }

  .article_block__label a {
    padding: calc(10 / 393 * 100vw);
    font-size: .6875rem;
    font-weight: 500;
    line-height: 100%;
    letter-spacing: .0275rem
  }

  .article_block__date_wrapper {
    margin-top: calc(16 / 393 * 100vw)
  }

  .article_block__date_wrapper p {
    font-size: .6875rem
  }

  .article_block__date_wrapper span {
    height: calc(14 / 393 * 100vw)
  }

  .article_block__author {
    margin-top: calc(8 / 393 * 100vw);
    gap: calc(10 / 393 * 100vw)
  }

  .article_block__author p {
    font-size: .7125rem;
    margin: 0
  }

  .breadcrumb_block {
    padding-top: calc(12 / 393 * 100vw)
  }

  .breadcrumb_block__inner {
    gap: calc(12 / 393 * 100vw);
    padding: 0 calc(30 / 393 * 100vw);
    margin: 0 calc(30 / 393 * 100vw)
  }

  .breadcrumb_block__inner span {
    font-size: calc(12 / 393 * 100vw)
  }

  .c-btn a {
    font-size: calc(16 / 393 * 100vw);
    line-height: 100%;
    letter-spacing: .02rem;
    padding: calc(20 / 393 * 100vw) calc(26 / 393 * 100vw)
  }

  .contact_block span {
    font-size: .8125rem;
    letter-spacing: .0488rem
  }

  .contact_block__contents--contact-business,
  .contact_block__contents--contact_form {
    display: block
  }

  .contact_block__contents.contact_block__contents--contact-business {
    margin-top: calc(20 / 393 * 100vw)
  }

  .contact_block__btn_wrapper--illust {
    position: relative;
    z-index: 1
  }

  .contact_block__btn_wrapper--illust::before {
    content: "";
    position: absolute;
    top: -57px;
    right: 20px;
    width: 62px;
    height: auto;
    aspect-ratio: 62/86;
    background: url(/assets/img/contact/pic_contact_form.svg) no-repeat center;
    z-index: -1
  }

  .contact_block__btn--line a:before {
    width: calc(30 / 393 * 100vw);
    height: calc(30 / 393 * 100vw)
  }

  .contact_block__btn--mail a:before {
    width: calc(25 / 393 * 100vw);
    height: calc(25 / 393 * 100vw)
  }

  .contact_block__btn--tel a {
    color: #fff;
    letter-spacing: .02rem
  }

  .contact_block__btn--tel a:before {
    display: block;
    content: "";
    background: url('../images/icon_tel_03.svg') no-repeat center;
    width: 42px;
    height: 42px
  }

  .contact_block__contents_text {
    color: #544d0e;
    font-size: calc(14 / 393 * 100vw);
    font-weight: 700;
    position: relative;
    padding: 0 calc(16 / 393 * 100vw);
    display: inline-block;
    margin-bottom: calc(12 / 393 * 100vw)
  }

  .contact_block__contents_text::before {
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    width: 2px;
    height: 80%;
    background-color: #544d0e;
    transform: rotate(-45deg);
    border-radius: 5px
  }

  .contact_block__contents_text::after {
    content: "";
    position: absolute;
    bottom: 0;
    right: 0;
    width: 2px;
    height: 80%;
    background-color: #544d0e;
    transform: rotate(45deg);
    border-radius: 5px
  }

  .footer_block__main {
    flex-direction: column-reverse
  }

  .footer_block__logo {
/*    margin-top: calc(87 / 393 * 100vw);*/
/*	order: 1;*/
  }
/*
  .footer_menu {
	order: 2;
  }
*/

  .footer_block__logo a {
    flex-direction: column;
    align-items: start;
    gap: calc(20 / 393 * 100vw)
  }

  .footer_block__info p:not(:first-child) {
    margin-top: calc(7 / 393 * 100vw)
  }

  .footer_block__sub {
    flex-direction: column;
/*    padding-bottom: calc(95 / 393 * 100vw)*/
  }

  .footer_block__sub_left {
    gap: calc(8 / 393 * 100vw)
  }

  .footer_block__sub_left a {
    font-size: .6875rem
  }

  .footer_block__sub_right {
    font-size: .6875rem
  }

  .footer_menu__item ul {
    margin-top: calc(20 / 393 * 100vw)
  }

  .header_block__logo a {
    align-items: end;
    gap: calc(11 / 393 * 100vw)
  }

  .header_block__nav {
    display: none
  }

  .header_block__btn {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    gap: calc(5 / 393 * 100vw)
  }

  .header_block__btn span {
    width: calc(36 / 393 * 100vw);
    height: calc(2 / 393 * 100vw)
  }

  .header_block__btn.is-open span:nth-child(1) {
    transform: translateY(calc(8 / 393 * 100vw)) rotate(405deg)
  }

  .header_block__btn.is-open span:nth-child(2) {
    opacity: 0
  }

  .header_block__btn.is-open span:nth-child(3) {
    transform: translateY(calc(-7 / 393 * 100vw)) rotate(-405deg)
  }

  .header_block {
    padding: calc(15 / 393 * 100vw) 0
  }

  .hamburger_block {
    margin-top: calc(60 / 480 * 100vw);
    position: fixed;
    inset: 0;
    z-index: 10;
    display: none
  }

  .hamburger_block__inner {
    padding-inline: calc(24 / 393 * 100vw);
    margin: 0
  }

  .hamburger_block__item {
    padding: calc(30 / 393 * 100vw) 0
  }

  .hamburger_block__item ul {
    margin-top: calc(28 / 393 * 100vw)
  }

  .hamburger_block__item ul:not(:first-child) {
    margin-top: calc(24 / 393 * 100vw)
  }

  .mv_block {
    padding-top: calc(75 / 393 * 100vw)
  }

  .mv_block__wrap {
    display: unset;
    position: relative
  }

  .mv_block__head {
    max-width: initial;
    position: absolute;
    top: calc(137 / 393 * 100vw);
    transform: translateY(-50%);
    left: -8px;
    z-index: 1
  }

  .mv_block__sub_title {
    font-size: calc(14 / 393 * 100vw)
  }

  .mv_block__main_title.mv_block__main_title--contact-business {
    font-size: calc(26 / 393 * 100vw)
  }

  .mv_block__img {
    margin-left: 0;
    width: initial
  }

  .mv_block__img img {
    aspect-ratio: 363/260
  }

  .wp-pagenavi a,
  .wp-pagenavi span {
    margin: 0 calc(4 / 393 * 100vw)
  }

  .wp-pagenavi {
    margin-inline: auto;
    padding-inline: calc(20 / 393 * 100vw)
  }

  .wp-pagenavi__flip {
    width: calc(14 / 393 * 100vw);
    height: calc(21 / 393 * 100vw)
  }

  .wp-pagenavi .previouspostslink {
    margin-right: calc(16 / 393 * 100vw);
    margin-left: 0
  }

  .wp-pagenavi .nextpostslink {
    margin-left: calc(16 / 393 * 100vw);
    margin-right: 0
  }

  .wp-pagenavi_list {
    width: min(72%, 500px)
  }

  .wp-pagenavi .first,
  .wp-pagenavi .last,
  .wp-pagenavi .page,
  .wp-pagenavi__dots {
    width: calc(40 / 393 * 100vw);
    padding: calc(6 / 393 * 100vw) 0;
    border-radius: calc(2 / 393 * 100vw);
    font-size: calc(20 / 393 * 100vw)
  }

  .wp-pagenavi .current {
    width: calc(40 / 393 * 100vw);
    padding: calc(8 / 393 * 100vw) 0;
    border-radius: calc(2 / 393 * 100vw);
    font-size: calc(20 / 393 * 100vw)
  }

  .recommend_sub_block__head {
    flex-direction: column;
    align-items: start;
    gap: calc(33 / 393 * 100vw)
  }

  .recommend_sub_block__head h4 {
    font-size: 1.375rem;
    font-weight: 800;
    line-height: 100%;
    letter-spacing: -.0275rem;
    gap: calc(8 / 393 * 100vw)
  }

  .recommend_sub_block__head h4::before {
    width: calc(25 / 393 * 100vw);
    height: calc(25 / 393 * 100vw)
  }

  .recommend_sub_block__head p {
    font-size: .8125rem;
    line-height: 170%;
    letter-spacing: .0163rem
  }

  .recommend_sub_block__iframe {
    margin-top: calc(24 / 393 * 100vw);
    height: calc(700 / 393 * 100vw)
  }

  .recommend_sub_block__iframe::after {
    width: calc(60 / 393 * 100vw);
    height: calc(60 / 393 * 100vw);
    right: calc(1 / 393 * 100vw);
    top: calc(50 / 393 * 100vw)
  }

  .recommend_sub_block__img {
    width: calc(333 / 393 * 100vw)
  }

  .recommend_block {
    margin-top: calc(80 / 393 * 100vw)
  }

  .recommend_block__head h4 {
    font-size: 1.375rem;
    font-weight: 800;
    line-height: 100%;
    letter-spacing: -.0275rem;
    gap: calc(8 / 393 * 100vw)
  }

  .recommend_block__head h4::before {
    width: calc(25 / 393 * 100vw);
    height: calc(25 / 393 * 100vw)
  }

  .recommend_block__head p {
    font-size: .8125rem;
    line-height: 170%;
    letter-spacing: .0163rem
  }

  .recommend_block__iframe {
    margin-top: calc(24 / 393 * 100vw);
    height: calc(700 / 393 * 100vw)
  }

  .recommend_block__iframe::after {
    width: calc(60 / 393 * 100vw);
    height: calc(60 / 393 * 100vw);
    right: calc(1 / 393 * 100vw);
    top: calc(50 / 393 * 100vw)
  }

  .recommend_block__img {
    width: calc(333 / 393 * 100vw)
  }

  .about_page .mv_block {
    padding-top: calc(75 / 393 * 100vw)
  }

  .about_page .mv_block__wrap {
    display: unset;
    position: relative
  }

  .about_page .mv_block__head {
    max-width: initial;
    position: absolute;
    top: calc(137 / 393 * 100vw);
    transform: translateY(-50%);
    left: -8px;
    z-index: 1
  }

  .about_page .mv_block__sub_title {
    font-size: calc(14 / 393 * 100vw)
  }

  .about_page .mv_block__img {
    margin-left: 0;
    width: initial
  }

  .about_page .mv_block__img img {
    aspect-ratio: 363/260
  }

  .about_page .lead_block {
    margin-top: calc(26 / 393 * 100vw);
    padding-bottom: calc(67 / 393 * 100vw);
    background: 0 0
  }

  .about_page .lead_block__sp_bg {
    display: block
  }

  .about_page .lead_block__top_bg {
    margin: 0 auto calc(7 / 393 * 100vw)
  }

  .about_page .lead_block__title {
    margin-bottom: calc(22 / 393 * 100vw);
    font-size: calc(28 / 393 * 100vw);
    line-height: 1.3
  }

  .about_page .lead_block__subtitle {
    margin-bottom: calc(38 / 393 * 100vw);
    font-size: calc(13 / 393 * 100vw);
    letter-spacing: .05em
  }

  .about_page .lead_block__text {
    margin-bottom: calc(16 / 393 * 100vw);
    font-size: calc(15 / 393 * 100vw);
    line-height: 2.08;
    text-align: left
  }

  .about_page .about_block {
    display: block;
    margin-top: calc(50 / 393 * 100vw)
  }

  .about_page .about_block_main {
    width: 100%;
    padding: calc(39 / 393 * 100vw) 0 calc(40 / 393 * 100vw);
    border-radius: calc(20 / 393 * 100vw) calc(20 / 393 * 100vw) 0 0
  }

  .about_page .about_block_main_head {
    margin-bottom: calc(24 / 393 * 100vw);
    padding: calc(6 / 393 * 100vw) 0 calc(6 / 393 * 100vw)
  }

  .about_page .about_block_main_head__subtitle {
    font-size: calc(13 / 393 * 100vw);
    margin: 0 0 calc(12 / 393 * 100vw) calc(25 / 393 * 100vw);
    letter-spacing: .06em
  }

  .about_page .about_block_main_head__title {
    margin-inline: calc(10 / 393 * 100vw);
    font-size: calc(30 / 393 * 100vw)
  }

  .about_page .about_block_main__text {
    width: 100%;
    padding: 0 calc(20 / 393 * 100vw) 0;
    font-size: calc(15 / 393 * 100vw);
    line-height: 1.73
  }

  .about_page .about_block_sub {
    position: relative;
    width: 100%;
    padding: calc(20 / 393 * 100vw) 0 calc(109 / 393 * 100vw);
    border-radius: 0 0 calc(20 / 393 * 100vw) calc(20 / 393 * 100vw)
  }

  .about_page .about_block_sub__problems {
    display: grid;
    place-items: center;
    width: 94%;
    margin-bottom: 0;
    transform: translate(0, calc(2 / 393 * 100vw))
  }

  .about_page .about_block_sub_wrapper_answer {
    position: absolute;
    width: 100%
  }

  .about_page .about_block_sub_answer {
    width: 80%;
    margin-top: calc(17 / 393 * 100vw);
    padding: calc(14 / 393 * 100vw) calc(8 / 393 * 100vw) calc(14 / 393 * 100vw) calc(14 / 393 * 100vw);
    transform: translateX(calc(-8 / 393 * 100vw));
    border-radius: calc(4 / 393 * 100vw)
  }

  .about_page .about_block_sub_answer__icon {
    width: calc(44 / 393 * 100vw);
    margin-right: calc(8 / 393 * 100vw)
  }

  .about_page .about_block_sub_answer__01 {
    margin: calc(3 / 393 * 100vw) 0 calc(4 / 393 * 100vw);
    font-size: calc(11 / 393 * 100vw)
  }

  .about_page .about_block_sub_answer__02 {
    padding-inline: calc(1 / 393 * 100vw);
    font-size: calc(16 / 393 * 100vw)
  }

  .about_page .about_block_sub_answer::after {
    right: calc(44 / 393 * 100vw);
    bottom: calc(-7 / 393 * 100vw);
    width: calc(14 / 393 * 100vw);
    height: calc(7 / 393 * 100vw)
  }

  .about_page .about_block_sub_answer__character {
    right: calc(-41 / 393 * 100vw);
    bottom: calc(-31 / 393 * 100vw);
    width: calc(70 / 393 * 100vw)
  }

  .about_page .about_block::before {
    top: calc(-67 / 393 * 100vw);
    left: calc(22 / 393 * 100vw);
    width: calc(97 / 393 * 100vw)
  }

  .about_page .feature_block {
    padding: calc(77 / 393 * 100vw) 0 0
  }

  .about_page .feature_block_head {
    margin-bottom: calc(75 / 393 * 100vw)
  }

  .about_page .feature_block_head__subtitle {
    margin-bottom: calc(10 / 393 * 100vw);
    font-size: calc(13 / 393 * 100vw)
  }

  .about_page .feature_block_head_title__01 {
    display: block;
    font-size: calc(28 / 393 * 100vw);
    line-height: 1.3
  }

  .about_page .feature_block_head_title__02 {
    font-size: calc(49 / 393 * 100vw)
  }

  .about_page .feature_block_head_title__02::after {
    top: calc(-8 / 393 * 100vw);
    left: calc(-14 / 393 * 100vw);
    width: calc(34 / 393 * 100vw);
    background: url(../img/about/ico_feature_title_sp.svg) left top/contain no-repeat
  }

  .about_page .feature_block_head_title__03,
  .about_page .feature_block_head_title__04 {
    font-size: calc(32 / 393 * 100vw)
  }

  .about_page .feature_block_list {
    display: block
  }

  .about_page .feature_block_list_item+section {
    margin-top: calc(74 / 393 * 100vw)
  }

  .about_page .feature_block_list_item_number {
    top: calc(-26 / 393 * 100vw);
    left: calc(19 / 393 * 100vw);
    width: calc(51 / 393 * 100vw);
    aspect-ratio: 51/53;
    padding: calc(18 / 393 * 100vw) 0 0
  }

  .about_page .feature_block_list_item_number__01 {
    font-size: calc(7 / 393 * 100vw)
  }

  .about_page .feature_block_list_item_number__02 {
    font-size: calc(20 / 393 * 100vw)
  }

  .about_page .feature_block_list_item__title {
    margin-bottom: calc(15 / 393 * 100vw);
    padding: calc(24 / 393 * 100vw) 0 calc(15 / 393 * 100vw);
    font-size: calc(18 / 393 * 100vw);
    line-height: 1.4;
    letter-spacing: .04em
  }

  .about_page .feature_block_list_item__title::before {
    width: calc(24 / 393 * 100vw);
    height: calc(24 / 393 * 100vw);
    margin-right: calc(10 / 393 * 100vw)
  }

  .about_page .feature_block_list_item__text {
    font-size: calc(15 / 393 * 100vw);
    line-height: 1.75;
    letter-spacing: .06em
  }

  .about_page .merit_block {
    padding: calc(128 / 393 * 100vw) 0 0
  }

  .about_page .merit_block_wrapper {
    width: 100%;
    padding: calc(58 / 393 * 100vw) 7.5% calc(80 / 393 * 100vw);
    border-radius: 0
  }

  .about_page .merit_block__top_bg {
    top: calc(-49 / 393 * 100vw);
    width: calc(90 / 393 * 100vw)
  }

  .about_page .merit_block_head__subtitle {
    margin-bottom: calc(16 / 393 * 100vw);
    font-size: calc(13 / 393 * 100vw)
  }

  .about_page .merit_block_head {
    padding-bottom: calc(63 / 393 * 100vw)
  }

  .about_page .merit_block_head_title__01 {
    display: block;
    margin-bottom: calc(10 / 393 * 100vw);
    font-size: calc(28 / 393 * 100vw)
  }

  .about_page .merit_block_head_title__02 {
    font-size: calc(49 / 393 * 100vw)
  }

  .about_page .merit_block_head_title__02::after {
    top: calc(-1 / 393 * 100vw);
    right: calc(-20 / 393 * 100vw);
    width: calc(16 / 393 * 100vw)
  }

  .about_page .merit_block_head_title__03,
  .about_page .merit_block_head_title__04 {
    font-size: calc(32 / 393 * 100vw)
  }

  .about_page .merit_block_head::after {
    width: calc(95 / 393 * 100vw)
  }

  .about_page .merit_block_cards_card {
    display: block;
    padding: calc(32 / 393 * 100vw) 7% calc(30 / 393 * 100vw);
    border-radius: calc(12 / 393 * 100vw)
  }

  .about_page .merit_block_cards_card+section {
    margin-top: calc(70 / 393 * 100vw)
  }

  .about_page .merit_block_cards_card_number {
    top: calc(-41 / 393 * 100vw);
    left: calc(-18 / 393 * 100vw);
    width: calc(83 / 393 * 100vw);
    height: calc(83 / 393 * 100vw);
    border: calc(3 / 393 * 100vw) solid #1cac85;
    padding-top: 4px
  }

  .about_page .merit_block_cards_card_number__01 {
    margin-bottom: calc(2 / 393 * 100vw);
    font-size: calc(9 / 393 * 100vw)
  }

  .about_page .merit_block_cards_card_number__02 {
    font-size: calc(32 / 393 * 100vw)
  }

  .about_page .merit_block_cards_card_head {
    margin-bottom: calc(30 / 393 * 100vw);
    text-align: center
  }

  .about_page .merit_block_cards_card_head_first {
    width: 100%
  }

  .about_page .merit_block_cards_card_head_second {
    width: 100%;
    margin: 0 calc(0 / 393 * 100vw) calc(30 / 393 * 100vw)
  }

  .about_page .merit_block_cards_card_head_third {
    width: 100%;
    padding-top: 0;
    margin-left: 0
  }

  .about_page .merit_block_cards_card_head__subtitle {
    font-size: calc(13 / 393 * 100vw)
  }

  .about_page .merit_block_cards_card_head__title {
    padding: 0;
    font-size: calc(30 / 393 * 100vw)
  }

  .about_page .merit_block_cards_card_list {
    width: 100%;
    margin-left: 0
  }

  .about_page .merit_block_cards_card_list li {
    font-size: calc(15 / 393 * 100vw);
    line-height: 1.5
  }

  .about_page .merit_block_cards_card_list li+li {
    margin-top: calc(16 / 393 * 100vw)
  }

  .about_page .merit_block_cards_card_list_first li+li {
    margin-top: calc(14 / 393 * 100vw)
  }

  .about_page .merit_block_cards_card_list li::before {
    margin: calc(0 / 393 * 100vw) calc(3 / 393 * 100vw) 0 0
  }

  .about_page .flow_block {
    padding: calc(80 / 393 * 100vw) 0 calc(80 / 393 * 100vw);
    background: 0 0
  }

  .about_page .flow_block_head {
    margin-bottom: calc(67 / 393 * 100vw)
  }

  .about_page .flow_block_head__subtitle {
    margin-bottom: calc(10 / 393 * 100vw);
    font-size: calc(13 / 393 * 100vw)
  }

  .about_page .flow_block_head__title {
    font-size: calc(30 / 393 * 100vw);
    line-height: 1.3
  }

  .about_page .flow_block_list {
    display: block;
    width: 83.2%;
    margin: 0 auto calc(60 / 393 * 100vw);
    transform: translateX(0);
    background: 0 0
  }

  .about_page .flow_block_list_item {
    margin-left: 6.12%;
    padding: calc(12 / 393 * 100vw) 0 calc(30 / 393 * 100vw);
    border-radius: calc(16 / 393 * 100vw)
  }

  .about_page .flow_block_list_item+li {
    margin-top: calc(47 / 393 * 100vw)
  }

  .about_page .flow_block_list_item+li::before {
    content: "";
    position: absolute;
    top: calc(-47 / 393 * 100vw);
    left: 0;
    right: 0;
    display: block;
    width: calc(4 / 393 * 100vw);
    height: calc(47 / 393 * 100vw);
    margin-inline: auto;
    transform: translateX(calc(-8 / 393 * 100vw));
    background: url(../img/about/bg_flow_sp.svg) left top/100% auto repeat-y
  }

  .about_page .flow_block_list_item_number {
    top: calc(-15 / 393 * 100vw);
    left: calc(-19 / 393 * 100vw);
    width: calc(80 / 393 * 100vw);
    height: calc(80 / 393 * 100vw)
  }

  .about_page .flow_block_list_item_number__01 {
    font-size: calc(14 / 393 * 100vw)
  }

  .about_page .flow_block_list_item_number__02 {
    font-size: calc(30 / 393 * 100vw)
  }

  .about_page .flow_block_list_item__image {
    margin-bottom: calc(2 / 393 * 100vw)
  }

  .about_page .flow_block_list_item__text {
    font-size: calc(14 / 393 * 100vw)
  }

  .about_page .voice_block {
    display: block
  }

  .about_page .voice_block_head {
    width: 100%;
    background: url(../img/about/bg_voice_sp.webp) right top/cover no-repeat
  }

  .about_page .voice_block_head_inner {
    width: 85%;
    margin-inline: auto;
    padding: calc(87 / 393 * 100vw) 0 calc(128 / 393 * 100vw)
  }

  .about_page .voice_block_head_inner .c-btn {
    display: none
  }

  .about_page .voice_block_head__subtitle {
    margin-bottom: calc(20 / 393 * 100vw);
    font-size: calc(13 / 393 * 100vw)
  }

  .about_page .voice_block_head__title {
    margin-bottom: calc(33 / 393 * 100vw);
    font-size: calc(30 / 393 * 100vw)
  }

  .about_page .voice_block_head__text {
    margin: 0;
    font-size: calc(15 / 393 * 100vw)
  }

  .about_page .voice_block_head .button_style_01 {
    display: none
  }

  .about_page .voice_block_body {
    width: 100%;
    padding: calc(1 / 393 * 100vw) 7.5% calc(80 / 393 * 100vw)
  }

  .about_page .voice_block_body_list {
    width: 100%;
    margin-top: calc(-80 / 393 * 100vw)
  }

  .about_page .voice_block_body_list_item {
    width: 88.88%;
    padding: calc(20 / 393 * 100vw) 6% calc(20 / 393 * 100vw)
  }

  .about_page .voice_block_body_list_item:nth-of-type(odd) {
    margin-left: auto
  }

  .about_page .voice_block_body_list_item:nth-of-type(2) {
    margin-top: calc(54 / 393 * 100vw)
  }

  .about_page .voice_block_body_list_item:nth-of-type(3) {
    margin-top: calc(56 / 393 * 100vw)
  }

  .about_page .voice_block_body_list_item:nth-of-type(4) {
    margin-top: calc(56 / 393 * 100vw)
  }

  .about_page .voice_block_body_list_item__text {
    margin-bottom: calc(14 / 393 * 100vw);
    font-size: calc(18 / 393 * 100vw);
    font-weight: 600;
    line-height: 1.4
  }

  .about_page .voice_block_body_list_item__status {
    font-size: calc(12 / 393 * 100vw)
  }

  .about_page .voice_block_body_list_item__status span {
    display: block
  }

  .about_page .voice_block_body_list_item__status span+span {
    margin-left: 0
  }

  .about_page .voice_block_body_list_item:nth-of-type(odd) .voice_block_body_list_item__status {
    margin-left: 15%
  }

  .about_page .voice_block_body_list_item::before {
    bottom: calc(-10 / 393 * 100vw);
    width: calc(19 / 393 * 100vw);
    height: calc(11 / 393 * 100vw)
  }

  .about_page .voice_block_body_list_item:nth-of-type(odd)::before {
    left: calc(56 / 393 * 100vw)
  }

  .about_page .voice_block_body_list_item:nth-of-type(even)::before {
    right: calc(56 / 393 * 100vw)
  }

  .about_page .voice_block_body_list_item::after {
    width: calc(84 / 393 * 100vw)
  }

  .about_page .voice_block_body_list_item:nth-of-type(1)::after {
    left: calc(-36 / 393 * 100vw);
    bottom: calc(-35 / 393 * 100vw)
  }

  .about_page .voice_block_body_list_item:nth-of-type(2)::after {
    right: calc(-36 / 393 * 100vw);
    bottom: calc(-35 / 393 * 100vw)
  }

  .about_page .voice_block_body_list_item:nth-of-type(3)::after {
    left: calc(-36 / 393 * 100vw);
    bottom: calc(-35 / 393 * 100vw)
  }

  .about_page .voice_block_body_list_item:nth-of-type(4)::after {
    right: calc(-36 / 393 * 100vw);
    bottom: calc(-34 / 393 * 100vw)
  }

  .about_page .voice_block_body_link {
    display: inline-block;
    left: 50%;
    transform: translateX(-50%);
    margin-top: calc(96 / 393 * 100vw)
  }

  .about_page .recommend_wrapper {
    padding: 1px 0 80px
  }

  .about_page .recommend_block__iframe {
    padding: 0
  }

  .about_page .recommend_block_link {
    padding-top: 40px
  }

  .about_page .recommend_block_link a {
    background: #fff
  }

  .blog_detail_page {
    padding: calc(100 / 393 * 100vw) 0;
    margin-top: 0
  }

  .blog_detail_page__inner {
    max-width: initial;
    overflow: hidden;
    padding-bottom: calc(140 / 393 * 100vw);
    margin-top: 0
  }

  .blog_detail_page .blog_block {
    width: calc(350 / 393 * 100vw);
    padding: calc(20 / 393 * 100vw);
    margin: calc(60 / 393 * 100vw) auto
  }

  .blog_detail_page .blog_block h1 {
    font-size: 1.25rem;
    font-weight: 600;
    line-height: 160%
  }

  .blog_detail_page .blog_block__contents h1 {
    font-size: 1.25rem;
    font-weight: 600;
    line-height: 160%
  }

  .blog_detail_page .blog_block__contents h2 {
    font-size: 1rem;
    padding: calc(5 / 393 * 100vw) 0 calc(6 / 393 * 100vw) calc(12 / 393 * 100vw);
    margin-top: calc(40 / 393 * 100vw)
  }

  .blog_detail_page .blog_block__contents h3 {
    margin-top: calc(50 / 393 * 100vw);
    font-size: 1.125rem
  }

  .blog_detail_page .blog_block__contents h4 {
    margin-top: calc(50 / 393 * 100vw);
    font-size: 1.0625rem
  }

  .blog_detail_page .blog_block__contents h5 {
    margin-top: calc(50 / 393 * 100vw);
    font-size: .9375rem
  }

  .blog_detail_page .blog_block__contents p {
    margin-top: calc(20 / 393 * 100vw);
    font-size: .9375rem;
    line-height: 190%
  }

  .blog_detail_page .blog_block__contents a {
    text-align: justify;
    font-size: .9375rem;
    line-height: 220%;
    letter-spacing: .0375rem
  }

  .blog_detail_page .blog_block__contents>ul {
    margin-top: calc(25 / 393 * 100vw)
  }

  .blog_detail_page .blog_block__contents>ul li {
    margin-top: calc(16 / 393 * 100vw)
  }

  .blog_detail_page .blog_block__contents table.table-1 th {
    padding: calc(14 / 393 * 100vw) calc(23 / 393 * 100vw) 0 calc(20 / 393 * 100vw);
    font-size: .875rem;
    letter-spacing: .035rem
  }

  .blog_detail_page .blog_block__contents table.table-1 td {
    padding: calc(15 / 393 * 100vw);
    font-size: .875rem;
    letter-spacing: .035rem
  }

  .blog_detail_page .blog_block__contents .wp-block-table {
    overflow-x: scroll
  }

  .blog_detail_page .blog_block__contents .has-fixed-layout {
    table-layout: auto;
    width: 100%;
    border-collapse: collapse;
    white-space: nowrap
  }

  .blog_detail_page .blog_block__contents .has-fixed-layout th {
    padding: calc(26 / 393 * 100vw) calc(47 / 393 * 100vw);
    font-size: .875rem;
    letter-spacing: .035rem
  }

  .blog_detail_page .blog_block__contents .wp-block-image {
    margin-top: calc(24 / 393 * 100vw)
  }

  .blog_detail_page .blog_block__info time {
    color: #143d32;
    font-size: .625rem;
    line-height: 160%
  }

  .blog_detail_page .blog_block__info_sub {
    flex-direction: column;
    align-items: start
  }

  .blog_detail_page .blog_block__label {
    color: #7a967d;
    text-align: justify;
    font-size: .625rem;
    font-weight: 500;
    line-height: 100%
  }

  .blog_detail_page .blog_block__author_pic {
    width: calc(21 / 393 * 100vw);
    height: calc(21 / 393 * 100vw)
  }

  .blog_detail_page .blog_block__sns_link {
    display: none
  }

  .blog_detail_page .blog_block__eyecatch {
    margin-top: calc(20 / 393 * 100vw)
  }

  .blog_detail_page .blog_block .article_summary {
    border: calc(4 / 393 * 100vw) solid #1cac85;
    padding: calc(20 / 393 * 100vw) calc(15 / 393 * 100vw)
  }

  .blog_detail_page .blog_block .article_summary::before {
    width: calc(91 / 393 * 100vw);
    height: calc(82 / 393 * 100vw);
    right: calc(-7 / 393 * 100vw);
    top: calc(-16 / 393 * 100vw)
  }

  .blog_detail_page .blog_block .article_summary__item {
    margin-top: calc(16 / 393 * 100vw)
  }

  .blog_detail_page .blog_block .article_summary__item h4 {
    font-size: 1rem;
    line-height: 170%;
    letter-spacing: .02rem;
    gap: calc(8 / 393 * 100vw)
  }

  .blog_detail_page .blog_block .article_summary__item h4::before {
    width: calc(6 / 393 * 100vw);
    height: calc(6 / 393 * 100vw)
  }

  .blog_detail_page .blog_block .article_summary__item p {
    text-align: justify;
    font-size: .875rem
  }

  .blog_detail_page .blog_block .article_summary h3 {
    font-size: 1rem
  }

  .blog_detail_page .blog_block .information_block {
    margin-top: calc(50 / 393 * 100vw);
    padding: calc(20 / 393 * 100vw)
  }

  .blog_detail_page .blog_block .information_block p {
    margin-top: calc(14 / 393 * 100vw);
    font-size: .625rem;
    line-height: 220%
  }

  .blog_detail_page .blog_block .information_block p a {
    font-size: .625rem;
    line-height: 220%
  }

  .blog_detail_page .blog_block .download_block {
    padding: calc(20 / 393 * 100vw);
    margin-top: calc(50 / 393 * 100vw)
  }

  .blog_detail_page .blog_block .download_block::before {
    width: calc(75 / 393 * 100vw);
    height: calc(99 / 393 * 100vw);
    right: calc(10 / 393 * 100vw);
    top: calc(-35 / 393 * 100vw)
  }

  .blog_detail_page .blog_block .download_block h5 {
    color: #143d32;
    font-size: .9375rem;
    font-weight: 600;
    line-height: 160%
  }

  .blog_detail_page .blog_block .download_block__body {
    flex-direction: column-reverse
  }

  .blog_detail_page .blog_block .download_block .secondary_btn {
    text-align: center;
    font-size: .875rem;
    font-weight: 600;
    line-height: 140%;
    letter-spacing: .035rem
  }

  .blog_detail_page .primary_btn a {
    font-size: calc(16 / 393 * 100vw);
    line-height: 100%;
    letter-spacing: .02rem;
    padding: calc(20 / 393 * 100vw) calc(26 / 393 * 100vw);
    text-align: center
  }

  .blog_detail_page .secondary_btn a {
    font-size: calc(16 / 393 * 100vw);
    line-height: 100%;
    letter-spacing: .02rem;
    padding: calc(20 / 393 * 100vw) calc(26 / 393 * 100vw)
  }

  .blog_detail_page .author_profile {
    margin-top: calc(50 / 393 * 100vw)
  }

  .blog_detail_page .author_profile h5 {
    margin: 0
  }

  .blog_detail_page .author_profile__body {
    padding: calc(20 / 393 * 100vw);
    flex-direction: column
  }

  .blog_detail_page .author_profile__contents h6 {
    font-size: 1.0625rem;
    text-align: center
  }

  .blog_detail_page .author_profile__contents span {
    font-size: .6875rem
  }

  .blog_detail_page .author_profile__contents p {
    margin-top: calc(16 / 393 * 100vw);
    font-size: .8125rem
  }

  .blog_detail_page .author_profile__link {
    margin-top: calc(12 / 393 * 100vw)
  }

  .blog_detail_page .author_profile__link a {
    font-size: .8125rem
  }

  .blog_detail_page .related_article_block__body a {
    flex-direction: column
  }

  .blog_detail_page .related_article_block__img {
    width: calc(254 / 393 * 100vw)
  }

  .blog_detail_page .related_article_block__contents h6 {
    font-size: 1rem
  }

  .blog_detail_page .related_article_block__contents p {
    font-size: .75rem
  }

  .blog_detail_page .share_block__wrapper {
    gap: calc(8 / 393 * 100vw)
  }

  .blog_detail_page .share_block__item {
    padding: calc(20 / 393 * 100vw) calc(35 / 393 * 100vw)
  }

  .blog_detail_page .contact_us_block {
    width: calc(350 / 393 * 100vw);
    flex-direction: column;
    padding: calc(20 / 393 * 100vw);
    margin: calc(50 / 393 * 100vw) auto
  }

  .blog_detail_page .contact_us_block__body h6 {
    color: #1cac85;
    font-family: Inter;
    font-size: 1.5rem;
    font-weight: 600;
    line-height: 130%
  }

  .blog_detail_page .contact_us_block__body p {
    color: #222;
    text-align: justify;
    font-size: .8125rem;
    line-height: 160%;
    letter-spacing: .0325rem
  }

  .blog_detail_page .related_articles_block {
    width: 100%
  }

  .blog_detail_page .related_articles_block__inner {
    width: calc(350 / 393 * 100vw);
    margin-inline: auto
  }

  .blog_detail_page .related_articles_block__list {
    flex-direction: column
  }

  .blog_detail_page .related_articles_block__navigation {
    margin-top: calc(80 / 393 * 100vw);
    padding-inline: calc(2 / 393 * 100vw)
  }

  .blog_detail_page .related_articles_block__nav_button {
    gap: calc(5 / 393 * 100vw)
  }

  .blog_detail_page .related_articles_block__nav_button a {
    font-size: 1.125rem
  }

  .blog_detail_page .related_articles_block__nav_button--prev::before {
    width: calc(10 / 393 * 100vw);
    height: calc(10 / 393 * 100vw);
    border-left: calc(3 / 393 * 100vw) solid #1cac85;
    border-bottom: calc(3 / 393 * 100vw) solid #1cac85
  }

  .blog_detail_page .related_articles_block__nav_button--next::after {
    width: calc(10 / 393 * 100vw);
    height: calc(10 / 393 * 100vw);
    border-left: calc(3 / 393 * 100vw) solid #1cac85;
    border-bottom: calc(3 / 393 * 100vw) solid #1cac85
  }

  .blog_detail_page .related_articles_block__blog_link {
    width: 100%
  }

  .blog_detail_page .related_articles_block__blog_link a {
    width: 294px;
    height: 60px;
    line-height: 56px;
    background: #fff
  }

  .blog_detail_page .related_articles_block .article_block__img {
    width: calc(350 / 393 * 100vw)
  }

  .blog_detail_page .related_articles_block .article_block h4 {
    color: #222;
    text-align: justify;
    font-size: 1rem;
    font-weight: 600;
    line-height: 180%
  }

  .blog_detail_page .related_articles_block .article_block__date_wrapper .published_date,
  .blog_detail_page .related_articles_block .article_block__date_wrapper .updated_date {
    letter-spacing: .05em
  }

  .blog_detail_page .related_articles_block .article_block__date_wrapper {
    justify-content: unset
  }

  .blog_detail_page .related_articles_block .post_navigation_block {
    margin-top: calc(10 / 393 * 100vw)
  }

  .blog_detail_page .related_articles_block .post_navigation_block a {
    flex-direction: column;
    gap: calc(10 / 393 * 100vw)
  }

  .blog_detail_page .related_articles_block .post_navigation_block span {
    height: calc(203 / 393 * 100vw)
  }

  .blog_detail_page .related_articles_block .post_navigation_block__item {
    width: calc(170 / 393 * 100vw)
  }

  .blog_detail_page .related_articles_block .post_navigation_block__item--prev {
    padding: 0 15px 0 0
  }

  .blog_detail_page .related_articles_block .post_navigation_block__item--next {
    padding: 0 0 0 15px
  }

  .blog_detail_page .related_articles_block .post_navigation_block__img {
    width: 100%;
    height: calc(96 / 393 * 100vw)
  }

  .blog_detail_page .related_articles_block .post_navigation_block__info h4 {
    font-size: .75rem;
    line-height: 170%
  }

  .blog_detail_page .related_articles_block .post_navigation_block__info time {
    font-size: .7935rem;
    font-weight: 500
  }

  .blog_detail_page div#toc_container {
    padding: calc(20 / 393 * 100vw);
    margin-top: calc(40 / 393 * 100vw)
  }

  .blog_detail_page div#toc_container .toc_list {
    font-size: .8125rem;
    letter-spacing: .0325rem;
    padding-top: calc(18 / 393 * 100vw);
    margin-top: calc(18 / 393 * 100vw)
  }

  .blog_detail_page div#toc_container .toc_list li a {
    font-size: .75rem;
    letter-spacing: .03rem
  }

  .blog_detail_page div#toc_container .toc_list li a::before {
    width: 2px;
    height: 2px
  }

  .blog_detail_page div#toc_container .toc_list li ul li a {
    font-size: .6875rem;
    letter-spacing: .0275rem
  }

  .blog_page .mv_block {
    padding-top: calc(75 / 393 * 100vw)
  }

  .blog_page .mv_block__wrap {
    display: unset;
    position: relative
  }

  .blog_page .mv_block__head {
    max-width: initial;
    position: absolute;
    top: calc(160 / 393 * 100vw);
    transform: translateY(-50%);
    left: -8px;
    z-index: 1
  }

  .blog_page .mv_block__sub_title {
    font-size: calc(14 / 393 * 100vw)
  }

  .blog_page .mv_block__img {
    margin-left: 0;
    width: initial
  }

  .blog_page .mv_block__img img {
    aspect-ratio: 363/260
  }

  .blog_page .index_block {
    padding-top: calc(50 / 393 * 100vw)
  }

  .blog_page .index_block_top {
    display: block;
    margin-top: 0;
    margin-bottom: calc(60 / 393 * 100vw)
  }

  .blog_page .index_block_top__img {
    width: 100%
  }

  .blog_page .index_block_top__img img {
    width: 100%;
    max-height: calc(204 / 393 * 100vw);
    object-fit: cover
  }

  .blog_page .index_block_top_body {
    width: 100%
  }

  .blog_page .index_block_top_body_main {
    display: flex;
    flex-direction: column
  }

  .blog_page .index_block_top time {
    order: 2;
    margin-top: calc(16 / 393 * 100vw);
    font-size: .75rem;
    letter-spacing: .015rem
  }

  .blog_page .index_block_top__title {
    order: 1;
    margin-top: calc(12 / 393 * 100vw);
    font-size: 1.125rem;
    line-height: 140%;
    letter-spacing: .045rem
  }

  .blog_page .index_block_top__text {
    order: 3;
    font-size: .75rem;
    line-height: 140%;
    letter-spacing: .0163rem
  }

  .blog_page .index_block_top__label {
    margin-top: calc(16 / 393 * 100vw)
  }

  .blog_page .index_block_top__label a {
    padding: calc(10 / 393 * 100vw);
    font-size: .6875rem;
    font-weight: 500;
    line-height: 100%;
    letter-spacing: .0275rem
  }

  .blog_page .index_block_top__date_wrapper {
    margin-top: calc(16 / 393 * 100vw)
  }

  .blog_page .index_block_top__date_wrapper p {
    font-size: .6875rem
  }

  .blog_page .index_block_top__date_wrapper span {
    height: calc(14 / 393 * 100vw)
  }

  .blog_page .index_block_top__author {
    margin-top: calc(8 / 393 * 100vw);
    gap: calc(10 / 393 * 100vw)
  }

  .blog_page .index_block_top__author p {
    font-size: .7125rem;
    margin: 0
  }

  .blog_page .pager_block {
    padding-top: calc(60 / 393 * 100vw);
    padding-bottom: calc(80 / 393 * 100vw)
  }

  .company_page .mv_block {
    padding-top: calc(75 / 393 * 100vw)
  }

  .company_page .mv_block__wrap {
    display: unset;
    position: relative
  }

  .company_page .mv_block__head {
    max-width: initial;
    position: absolute;
    top: calc(160 / 393 * 100vw);
    transform: translateY(-50%);
    left: -8px;
    z-index: 1
  }

  .company_page .mv_block__sub_title {
    font-size: calc(14 / 393 * 100vw)
  }

  .company_page .mv_block__img {
    margin-left: 0;
    width: initial
  }

  .company_page .mv_block__img img {
    aspect-ratio: 363/260
  }

  .company_page .greeting_block::before {
    width: calc(283 / 393 * 100vw);
    height: calc(195 / 393 * 100vw);
    top: calc(-38 / 393 * 100vw);
    right: -14%
  }

  .company_page .greeting_block__inner {
    margin: calc(86 / 393 * 100vw) auto 0;
    padding-inline: 30px
  }

  .company_page .greeting_block__label {
    font-size: .75rem;
    letter-spacing: .12em
  }

  .company_page .greeting_block__title {
    font-size: 1.875rem;
    margin-top: calc(18 / 393 * 100vw);
    letter-spacing: .05em
  }

  .company_page .greeting_block__img {
    max-width: calc(363 / 393 * 100vw);
    margin-right: auto
  }

  .company_page .greeting_block__head {
    flex-direction: column;
    margin: calc(32 / 393 * 100vw) calc(50% - 50vw) 0
  }

  .company_page .greeting_block__head_texts {
    margin: calc(-56 / 393 * 100vw) 0 0
  }

  .company_page .greeting_block__subtitle {
    font-size: 1.125rem;
    line-height: 2;
    padding: calc(2 / 393 * 100vw) calc(10 / 393 * 100vw) calc(3 / 393 * 100vw) calc(2 / 393 * 100vw)
  }

  .company_page .greeting_block__position {
    font-size: .8125rem;
    margin-top: calc(15 / 393 * 100vw)
  }

  .company_page .greeting_block__position span {
    font-size: 1.25rem;
    margin-top: calc(20 / 393 * 100vw)
  }

  .company_page .greeting_block__contents::before {
    width: calc(253 / 393 * 100vw);
    height: calc(87 / 393 * 100vw);
    top: calc(-47 / 393 * 100vw);
    left: -6.5%
  }

  .company_page .greeting_block__text {
    font-size: .9375rem;
    line-height: 1.85;
    letter-spacing: .07em
  }

  .company_page .greeting_block__text+.greeting_block__text {
    margin-top: calc(30 / 393 * 100vw)
  }

  .company_page .information_block {
    margin: calc(80 / 393 * 100vw) auto 0;
    padding-inline: calc(30 / 393 * 100vw)
  }

  .company_page .information_block__label {
    font-size: .75rem;
    line-height: 2.2;
    letter-spacing: .12em
  }

  .company_page .information_block__title {
    font-size: 1.875rem;
    margin-top: calc(15 / 393 * 100vw)
  }

  .company_page .information_block__contents {
    margin-top: calc(30 / 393 * 100vw)
  }

  .company_page .information_block__list {
    max-width: none;
    padding: calc(50 / 393 * 100vw) calc(20 / 393 * 100vw) calc(60 / 393 * 100vw)
  }

  .company_page .information_item_block {
    gap: calc(8 / 393 * 100vw);
    padding: 0 0 calc(16 / 393 * 100vw) 0
  }

  .company_page .information_item_block+.information_item_block {
    padding: calc(20 / 393 * 100vw) 0 calc(17 / 393 * 100vw)
  }

  .company_page .information_item_block:nth-last-of-type(1) {
    padding: calc(16 / 393 * 100vw) 0 0 0
  }

  .company_page .information_item_block__head {
    font-size: .875rem;
    flex-basis: calc(64 / 393 * 100vw)
  }

  .company_page .information_item_block__text {
    font-size: .875rem;
    line-height: 1.7
  }

  .company_page .information_item_block__text+.information_item_block__text {
    margin-top: calc(-2 / 393 * 100vw)
  }

  .company_page .information_banner_block {
    gap: calc(20 / 393 * 100vw);
    margin-top: calc(40 / 393 * 100vw);
    flex-direction: column
  }

  .company_page .information_banner_block__item {
    width: 100%;
    background: url(/assets/img/company/pic_about_holdings_sp.webp) center center no-repeat;
    background-size: cover
  }

  .company_page .information_banner_block__item a {
    padding: calc(15 / 393 * 100vw) calc(16 / 393 * 100vw)
  }

  .company_page .information_banner_block__label {
    font-size: .625rem
  }

  .company_page .information_banner_block__title {
    font-size: 1rem;
    margin-top: calc(6 / 393 * 100vw)
  }

  .company_page .information_banner_block__title img {
    width: calc(12 / 393 * 100vw);
    margin-left: calc(6 / 393 * 100vw)
  }

  .company_page .information_banner_block__text {
    font-size: .75rem;
    margin-top: calc(10 / 393 * 100vw)
  }

  .company_page .access_block {
    margin: calc(80 / 393 * 100vw) auto 0;
    padding-inline: calc(30 / 393 * 100vw)
  }

  .company_page .access_block__label {
    font-size: .75rem;
    letter-spacing: .12em;
    line-height: 2
  }

  .company_page .access_block__title {
    font-size: 1.875rem;
    margin-top: calc(16 / 393 * 100vw);
    letter-spacing: .05em
  }

  .company_page .access_block__contents {
    margin-top: calc(34 / 393 * 100vw);
    padding: calc(50 / 393 * 100vw) calc(20 / 393 * 100vw) calc(60 / 393 * 100vw)
  }

  .company_page .access_block__wrapper {
    gap: calc(50 / 393 * 100vw);
    max-width: none;
    flex-direction: column
  }

  .company_page .access_block__list {
    max-width: none
  }

  .company_page .access_block__item {
    gap: calc(8 / 393 * 100vw)
  }

  .company_page .access_block__head {
    font-size: .875rem;
    flex-basis: calc(64 / 393 * 100vw)
  }

  .company_page .access_block__text {
    font-size: .875rem
  }

  .company_page .access_block__map {
    max-width: none
  }

  .company_page .access_block__link {
    margin-top: calc(10 / 393 * 100vw);
    font-size: .75rem;
    gap: calc(8 / 393 * 100vw)
  }

  .company_page .access_block__link::before {
    width: calc(13 / 393 * 100vw);
    height: calc(18 / 393 * 100vw)
  }

  .company_page .location_block {
    margin: calc(80 / 393 * 100vw) auto;
    padding-inline: calc(30 / 393 * 100vw)
  }

  .company_page .location_block__label {
    font-size: .75rem;
    line-height: 2.2;
    letter-spacing: .12em
  }

  .company_page .location_block__head {
    flex-direction: column;
    gap: calc(35 / 393 * 100vw);
    margin-top: calc(15 / 393 * 100vw)
  }

  .company_page .location_block__title {
    font-size: 1.875rem
  }

  .company_page .location_block__text {
    font-size: .9375rem
  }

  .company_page .location_banner_block {
    margin-top: calc(40 / 393 * 100vw);
    background: url(/assets/img/company/pic_office_locations_sp.webp) center center no-repeat;
    background-size: cover
  }

  .company_page .location_banner_block__inner {
    padding: calc(68 / 393 * 100vw) calc(22 / 393 * 100vw) calc(20 / 393 * 100vw)
  }

  .company_page .location_banner_block__label {
    font-size: .8125rem
  }

  .company_page .location_banner_block__title {
    font-size: 1.25rem;
    gap: calc(6 / 393 * 100vw);
    margin-top: calc(2 / 393 * 100vw)
  }

  .company_page .location_banner_block__title img {
    width: calc(24 / 393 * 100vw);
    margin-top: calc(3 / 393 * 100vw)
  }

  .company_page .location_banner_block__text {
    font-size: .8125rem;
    margin-top: calc(12 / 393 * 100vw);
    line-height: 1.5
  }

  .contact_complete_page .mv_block {
    padding-top: calc(75 / 393 * 100vw)
  }

  .contact_complete_page .mv_block__wrap {
    display: unset;
    position: relative
  }

  .contact_complete_page .mv_block__head {
    max-width: initial;
    position: absolute;
    top: calc(137 / 393 * 100vw);
    transform: translateY(-50%);
    left: -8px;
    z-index: 1
  }

  .contact_complete_page .mv_block__sub_title {
    font-size: calc(14 / 393 * 100vw)
  }

  .contact_complete_page .mv_block__img {
    margin-left: 0;
    width: initial
  }

  .contact_complete_page .mv_block__img img {
    aspect-ratio: 363/260
  }

  .contact_complete_page .contact_complete_block__title {
    font-size: calc(23 / 393 * 100vw)
  }

  .contact_complete_page .contact_complete_block__title::before {
    height: 100%
  }

  .contact_complete_page .contact_complete_block__text {
    margin-top: calc(30 / 393 * 100vw);
    font-size: calc(15 / 393 * 100vw)
  }

  .contact_page .mv_block {
    padding-top: calc(75 / 393 * 100vw)
  }

  .contact_page .mv_block__wrap {
    display: unset;
    position: relative
  }

  .contact_page .mv_block__head {
    max-width: initial;
    position: absolute;
    top: calc(137 / 393 * 100vw);
    transform: translateY(-50%);
    left: -8px;
    z-index: 1
  }

  .contact_page .mv_block__sub_title {
    font-size: calc(14 / 393 * 100vw)
  }

  .contact_page .mv_block__img {
    margin-left: 0;
    width: initial
  }

  .contact_page .mv_block__img img {
    aspect-ratio: 363/260
  }

  .contact_page .contact_form_block {
    font-size: 15px
  }

  .contact_page .contact_form_block__info {
    max-width: initial
  }

  .contact_page .contact_form_block__note span.required {
    font-size: calc(11 / 393 * 100vw)
  }

  .contact_page .contact_form_block__enterprise {
    margin-top: calc(30 / 393 * 100vw);
    font-size: 1.125rem;
    letter-spacing: .045rem
  }

  .contact_page .contact_form_block__enterprise span {
    font-size: .8125rem
  }

  .contact_page .contact_form_block__enterprise a {
    padding: calc(22 / 393 * 100vw) calc(20 / 393 * 100vw);
    gap: calc(25 / 393 * 100vw)
  }

  .contact_page .contact_form_block__guide {
    padding-top: calc(30 / 393 * 100vw);
    margin-top: calc(30 / 393 * 100vw)
  }

  .contact_page .contact_form_block__img {
    display: none
  }

  .contact_page .contact_form_block__tel {
    display: none
  }

  .contact_page .contact_form_block__business-days,
  .contact_page .contact_form_block__business-hours {
    font-size: calc(12 / 393 * 100vw)
  }

  .contact_page .contact_form_block__form_input input {
    padding: calc(9 / 393 * 100vw) calc(16 / 393 * 100vw)
  }

  .contact_page .contact_form_block__form_input input[type=number] {
    padding: calc(8 / 393 * 100vw)
  }

  .contact_page .contact_form_block__form_textarea textarea {
    padding: calc(13 / 393 * 100vw) calc(16 / 393 * 100vw)
  }

  .contact_page .contact_form_block__form_description {
    font-size: calc(13 / 393 * 100vw)
  }

  .contact_page .form_select::after {
    right: calc(30 / 393 * 100vw);
    top: calc(30 / 393 * 100vw);
    width: calc(14 / 393 * 100vw);
    height: calc(14 / 393 * 100vw)
  }

  .contact_page .form_select select {
    padding: calc(9 / 393 * 100vw) calc(16 / 393 * 100vw)
  }

  .contact_page .form_select--date {
    gap: calc(8 / 393 * 100vw)
  }

  .contact_page .form_select--date .date_select::after {
    right: calc(10 / 393 * 100vw);
    top: calc(30 / 393 * 100vw);
    width: calc(12 / 393 * 100vw);
    height: calc(12 / 393 * 100vw)
  }

  .contact_page .form_select--date .date_select select {
    width: 100%;
    padding: calc(9 / 393 * 100vw) calc(10 / 393 * 100vw);
    font-size: small
  }

  .contact_page .form_radio label {
    margin-top: 12px
  }

  .contact_page .form_radio label:not(:first-of-type) {
    margin-left: calc(24 / 393 * 100vw)
  }

  .contact_page .form_radio input+span {
    padding-left: calc(34 / 393 * 100vw)
  }

  .contact_page .form_submit {
    max-width: 292px
  }

  .contact_page .address_search_wrapper .p-postal-code {
    min-height: initial
  }

  .contact_page .address_search_wrapper .contact_form_block__form_input {
    width: calc(150 / 393 * 100vw)
  }

  .contact_page .address_search_btn {
    font-size: .9375rem;
    letter-spacing: .0187rem;
    padding: calc(9 / 393 * 100vw) calc(16 / 393 * 100vw)
  }

  .contact_page .wpcf7-radio {
    gap: calc(36 / 393 * 100vw)
  }

  .contact_business_page .contact-business_block {
    font-size: 15px
  }

  .contact_business_page .contact-business_block__info {
    max-width: initial
  }

  .contact_business_page .contact-business_block__note span.required {
    font-size: calc(11 / 393 * 100vw)
  }

  .contact_business_page .contact-business_block__enterprise {
    margin-top: calc(30 / 393 * 100vw);
    font-size: 1.125rem;
    letter-spacing: .045rem
  }

  .contact_business_page .contact-business_block__enterprise span {
    font-size: .8125rem
  }

  .contact_business_page .contact-business_block__enterprise a {
    padding: calc(22 / 393 * 100vw) calc(20 / 393 * 100vw);
    gap: calc(25 / 393 * 100vw)
  }

  .contact_business_page .contact-business_block__guide {
    padding-top: calc(30 / 393 * 100vw);
    margin-top: calc(30 / 393 * 100vw)
  }

  .contact_business_page .contact-business_block__img {
    display: none
  }

  .contact_business_page .contact-business_block__tel {
    display: none
  }

  .contact_business_page .contact-business_block__business-days,
  .contact_business_page .contact-business_block__business-hours {
    font-size: calc(12 / 393 * 100vw)
  }

  .contact_business_page .contact-business_block__form_input input {
    padding: calc(9 / 393 * 100vw) calc(16 / 393 * 100vw)
  }

  .contact_business_page .contact-business_block__form_input input[type=number] {
    padding: calc(8 / 393 * 100vw)
  }

  .contact_business_page .contact-business_block__form_textarea textarea {
    padding: calc(13 / 393 * 100vw) calc(16 / 393 * 100vw)
  }

  .contact_business_page .contact-business_block__form_description {
    font-size: calc(13 / 393 * 100vw)
  }

  .contact_business_page .form_select::after {
    right: calc(30 / 393 * 100vw);
    top: calc(30 / 393 * 100vw);
    width: calc(14 / 393 * 100vw);
    height: calc(14 / 393 * 100vw)
  }

  .contact_business_page .form_select select {
    padding: calc(9 / 393 * 100vw) calc(16 / 393 * 100vw)
  }

  .contact_business_page .form_radio label {
    margin-top: 12px
  }

  .contact_business_page .form_radio label:not(:first-of-type) {
    margin-left: calc(24 / 393 * 100vw)
  }

  .contact_business_page .form_radio input+span {
    padding-left: calc(34 / 393 * 100vw)
  }

  .contact_business_page .form_submit {
    max-width: 292px
  }

  .contact_business_page .address_search_wrapper .p-postal-code {
    min-height: initial
  }

  .contact_business_page .address_search_wrapper .contact_form_block__form_input {
    width: calc(150 / 393 * 100vw)
  }

  .contact_business_page .address_search_btn {
    font-size: .9375rem;
    letter-spacing: .0187rem;
    padding: calc(9 / 393 * 100vw) calc(16 / 393 * 100vw)
  }

  .faq_page .mv_block {
    padding-top: calc(75 / 393 * 100vw)
  }

  .faq_page .mv_block__wrap {
    display: unset;
    position: relative
  }

  .faq_page .mv_block__head {
    max-width: initial;
    position: absolute;
    top: calc(118 / 393 * 100vw);
    transform: translateY(-50%);
    left: -8px;
    z-index: 1
  }

  .faq_page .mv_block__sub_title {
    font-size: calc(14 / 393 * 100vw)
  }

  .faq_page .mv_block__img {
    margin-left: 0;
    width: initial
  }

  .faq_page .mv_block__img img {
    aspect-ratio: 363/260
  }

  .faq_page .faq_block {
    padding: calc(63 / 393 * 100vw) 0 calc(80 / 393 * 100vw)
  }

  .faq_page .faq_block__title {
    margin-bottom: calc(46 / 393 * 100vw);
    padding: calc(3 / 393 * 100vw) 0 calc(0 / 393 * 100vw) calc(22 / 393 * 100vw);
    border-left: calc(8/ 393 * 100vw) solid #1cac85;
    font-size: calc(23 / 393 * 100vw);
    letter-spacing: .02em
  }

  .faq_page .faq_block_details {
    border: calc(3 / 393 * 100vw) solid #a7d1c6;
    border-radius: calc(12 / 393 * 100vw)
  }

  .faq_page .faq_block_details+details {
    margin-top: calc(30 / 393 * 100vw)
  }

  .faq_page .faq_block_summary {
    position: relative;
    align-items: flex-start;
    padding: calc(18 / 393 * 100vw) 2.5% calc(18 / 393 * 100vw) 6%;
    font-size: calc(16 / 393 * 100vw)
  }

  .faq_page .faq_block_summary span {
    max-width: 84%;
    line-height: 1.3
  }

  .faq_page .faq_block_summary::before {
    margin-right: 0
  }

  .faq_page .faq_block_summary::after {
    position: absolute;
    top: calc(50% - (2 / 393 * 100vw));
    right: calc(19 / 393 * 100vw);
    width: calc(12 / 393 * 100vw);
    height: calc(8 / 393 * 100vw);
    margin: 0
  }

  .faq_page .faq_block_answer {
    padding: calc(3 / 393 * 100vw) 5% calc(15 / 393 * 100vw);
    font-size: calc(15 / 393 * 100vw);
    font-weight: 400;
    line-height: 1.9;
    letter-spacing: -.02em
  }

  .flow_page .mv_block {
    padding-top: calc(75 / 393 * 100vw)
  }

  .flow_page .mv_block__wrap {
    display: unset;
    position: relative
  }

  .flow_page .mv_block__head {
    max-width: initial;
    position: absolute;
    top: calc(137 / 393 * 100vw);
    transform: translateY(-50%);
    left: -8px;
    z-index: 1
  }

  .flow_page .mv_block__sub_title {
    font-size: calc(14 / 393 * 100vw)
  }

  .flow_page .mv_block__img {
    margin-left: 0;
    width: initial
  }

  .flow_page .mv_block__img img {
    aspect-ratio: 363/260
  }

  .flow_page .flow_block__head {
    font-size: calc(18 / 393 * 100vw);
    padding-left: calc(22 / 393 * 100vw)
  }

  .flow_page .flow_block__head .font_large {
    font-size: calc(33 / 393 * 100vw)
  }

  .flow_page .flow_block__head::before {
    top: 50%;
    height: 100%
  }

  .flow_page .flow_list {
    margin-top: calc(128 / 393 * 100vw);
    padding-bottom: calc(80 / 393 * 100vw)
  }

  .flow_page .flow_list__item:not(:first-child) {
    margin-top: calc(64 / 393 * 100vw)
  }

  .flow_page .flow_list__item:not(:first-child)::before {
    height: calc(64 / 393 * 100vw);
    top: calc(-64 / 393 * 100vw);
    left: 50%;
    transform: translateX(-50%)
  }

  .flow_page .flow_list__number {
    width: calc(60/ 393 * 100vw);
    height: calc(60/ 393 * 100vw);
    top: 6px;
    left: -20px;
    border: solid 2.25px var(--green-850, #1cac85)
  }

  .flow_page .flow_list__number img {
    width: 50%
  }

  .flow_page .flow_list__title {
    font-size: calc(18 / 393 * 100vw);
    padding: calc(24 / 393 * 100vw) calc(36 / 393 * 100vw);
    justify-content: center
  }

  .flow_page .flow_list__body {
    padding: calc(16 / 393 * 100vw) calc(22 / 393 * 100vw) 0;
    border-left: solid 3px #a7d1c6;
    border-bottom: solid 3px #a7d1c6;
    border-right: solid 3px #a7d1c6;
    border-radius: 0 0 12px 12px
  }

  .flow_page .flow_list__sub_title {
    font-size: calc(16 / 393 * 100vw)
  }

  .flow_page .flow_list__wrap {
    flex-direction: column;
    align-items: center;
    gap: 20px
  }

  .flow_page .flow_list__text {
    font-size: calc(15 / 393 * 100vw);
    padding-bottom: 0;
    max-width: initial
  }

  .index_page .mainvisual_block__title {
    padding-top: calc(66 / 393 * 100vw);
    padding-left: calc(20 / 393 * 100vw)
  }

  .index_page .mainvisual_block__title h2 {
    font-size: 1.975rem
  }

  .index_page .mainvisual_block__title span.sub {
    font-size: .8125rem
  }

  .index_page .mainvisual_block__title span.small {
    font-size: 2rem;
    letter-spacing: -.3rem
  }

  .index_page .mainvisual_block__title span.middle {
    font-size: 2.5rem;
    letter-spacing: 0
  }

  .index_page .mainvisual_block__title span.big {
    font-size: 3.8125rem
  }

  .index_page .mainvisual_block__title_wrapper {
    flex-direction: column;
    margin-top: calc(12 / 393 * 100vw)
  }

  .index_page .mainvisual_block__title_img {
    width: calc(138 / 393 * 100vw)
  }

  .index_page .mainvisual_block__img {
    width: calc(363 / 393 * 100vw);
    margin-top: calc(-57 / 393 * 100vw)
  }

  .index_page .mainvisual_block .splide__pagination {
    justify-content: end;
    margin: calc(3 / 393 * 100vw) calc(32 / 393 * 100vw) 0 0
  }

  .index_page .mainvisual_block .splide__pagination__page {
    height: calc(6 / 393 * 100vw);
    width: calc(30 / 393 * 100vw)
  }

  .index_page .lead_block {
    margin-top: calc(-100 / 393 * 100vw);
    background-color: #eff2ea
  }

  .index_page .lead_block__inner {
    padding: calc(120 / 393 * 100vw) 0 calc(20 / 393 * 100vw);
    margin-right: auto;
    flex-direction: column;
    max-width: calc(333 / 393 * 100vw)
  }

  .index_page .lead_block__title_wrapper span {
    font-size: .8125rem
  }

  .index_page .lead_block__title_wrapper h3 {
    font-size: 2rem;
    margin-top: calc(8 / 393 * 100vw)
  }

  .index_page .lead_block__title_wrapper h3 span {
    font-size: 2rem
  }

  .index_page .lead_block__title_wrapper p {
    font-size: .9375rem;
    line-height: 210%;
    letter-spacing: .0187rem
  }

  .index_page .feature_block {
    padding: 0 calc(20 / 393 * 100vw) calc(85 / 393 * 100vw);
    margin-top: calc(80 / 393 * 100vw)
  }

  .index_page .feature_block__inner {
    max-width: calc(333 / 393 * 100vw)
  }

  .index_page .feature_block__head span {
    font-size: .8125rem;
    letter-spacing: .0488rem
  }

  .index_page .feature_block__head h3 {
    font-size: 1.75rem;
    line-height: 140%
  }

  .index_page .feature_block__head h3 span.big {
    font-size: 3.0625rem;
    letter-spacing: .1837rem
  }

  .index_page .feature_block__head h3 span.deco::before {
    top: calc(60 / 393 * 100vw);
    right: calc(230 / 393 * 100vw)
  }

  .index_page .feature_block__head p {
    font-size: .9375rem;
    letter-spacing: .0187rem
  }

  .index_page .feature_block__contents {
    margin-top: calc(50 / 393 * 100vw)
  }

  .index_page .feature_block__item {
    gap: 0;
    flex-direction: column
  }

  .index_page .feature_block__item:not(:first-child) {
    margin-top: calc(80 / 393 * 100vw)
  }

  .index_page .feature_block__description h4 {
    margin-top: calc(9 / 393 * 100vw);
    font-size: 1.5rem
  }

  .index_page .feature_block__description h4 span.big {
    font-size: 2.375rem
  }

  .index_page .feature_block__description p {
    color: var(--green-900, #143d32);
    text-align: justify;
    font-size: .9375rem;
    letter-spacing: .0187rem;
    margin-top: calc(15 / 393 * 100vw)
  }

  .index_page .feature_block__num {
    width: calc(60 / 393 * 100vw)
  }

  .index_page .feature_block__img {
    width: calc(333 / 393 * 100vw);
    margin-top: calc(28 / 393 * 100vw)
  }

  .index_page .feature_block__btn {
    margin-top: calc(60 / 393 * 100vw)
  }

  .index_page .search_block {
    padding: calc(80 / 393 * 100vw) 0
  }

  .index_page .search_block__inner {
    max-width: calc(333 / 393 * 100vw)
  }

  .index_page .search_block__title_wrapper {
    gap: 0;
    flex-direction: column;
    margin-top: calc(10 / 393 * 100vw)
  }

  .index_page .search_block__title_wrapper h3 {
    font-size: 1.875rem
  }

  .index_page .search_block__title_wrapper p {
    text-align: justify;
    font-size: .9375rem;
    letter-spacing: .0187rem;
    margin-top: calc(30 / 393 * 100vw)
  }

  .index_page .search_block .recommend_block {
    margin-top: calc(80 / 393 * 100vw)
  }

  .index_page .search_block .recommend_block__head h4::before {
    width: calc(25 / 393 * 100vw);
    height: calc(25 / 393 * 100vw)
  }

  .index_page .search_block .recommend_block__iframe::after {
    top: calc(-50 / 393 * 100vw)
  }

  .index_page .map_block {
    flex-direction: column;
    margin-top: calc(60 / 393 * 100vw)
  }

  .index_page .map_block::before {
    width: calc(111 / 393 * 100vw);
    height: calc(60 / 393 * 100vw);
    top: calc(-50 / 393 * 100vw)
  }

  .index_page .map_block__contents {
    padding: calc(25 / 393 * 100vw) calc(20 / 393 * 100vw) calc(40 / 393 * 100vw);
    border-radius: 20px 20px 0 0
  }

  .index_page .map_block__contents h4 {
    gap: calc(10 / 393 * 100vw);
    font-size: 1.375rem;
    line-height: 100%;
    letter-spacing: -.0275rem
  }

  .index_page .map_block__contents h4::before {
    width: calc(30 / 393 * 100vw);
    height: calc(30 / 393 * 100vw)
  }

  .index_page .map_block__counter {
    margin-top: calc(24 / 393 * 100vw);
    display: block;
    padding: calc(16 / 393 * 100vw)
  }

  .index_page .map_block__counter p {
    font-size: .8125rem;
    letter-spacing: .0163rem
  }

  .index_page .map_block__description {
    margin-top: calc(25 / 393 * 100vw);
    font-size: .8125rem;
    letter-spacing: .0163rem
  }

  .index_page .map_block__note {
    font-size: .75rem;
    margin-top: calc(17 / 393 * 100vw)
  }

  .index_page .map_block__map {
    border-radius: 0 0 20px 20px;
    padding: calc(20 / 393 * 100vw) calc(8 / 393 * 100vw)
  }

  .index_page .blog_block {
    padding: calc(80 / 393 * 100vw) 0
  }

  .index_page .blog_block__inner {
    max-width: calc(333 / 393 * 100vw)
  }

  .index_page .blog_block__head span {
    font-size: .8125rem;
    letter-spacing: .0488rem
  }

  .index_page .blog_block__title_wrapper {
    flex-direction: column;
    gap: 0;
    margin-top: calc(10 / 393 * 100vw)
  }

  .index_page .blog_block__title_wrapper h3 {
    font-size: 1.875rem;
    font-weight: 800;
    line-height: 130%
  }

  .index_page .blog_block__title_wrapper p {
    text-align: justify;
    font-size: .9375rem;
    font-weight: 600;
    line-height: 170%;
    letter-spacing: .0187rem;
    margin-top: calc(30 / 393 * 100vw)
  }

  .index_page .blog_block__btn {
    margin-top: calc(60 / 393 * 100vw)
  }

  .index_page .member_block__inner {
    max-width: none;
    padding: calc(80 / 393 * 100vw) calc(30 / 393 * 100vw) 0
  }

  .index_page .member_block__head span {
    font-size: .8125rem;
    letter-spacing: .0488rem
  }

  .index_page .member_block__title_wrapper {
    flex-direction: column;
    gap: 0;
    margin-top: calc(10 / 393 * 100vw)
  }

  .index_page .member_block__title_wrapper h3 {
    font-size: 1.875rem
  }

  .index_page .member_block__title_wrapper p {
    text-align: justify;
    font-size: .9375rem;
    letter-spacing: .0187rem;
    margin-top: calc(30 / 393 * 100vw)
  }

  .index_page .member_block__title_wrapper p span {
    font-size: 1.4375rem;
    font-weight: 700;
    line-height: 150%;
    letter-spacing: -.0288rem
  }

  .index_page .member_block__title_wrapper p br {
    margin-top: calc(8 / 393 * 100vw)
  }

  .index_page .member_block__splide .splide__track {
    padding-top: calc(110 / 393 * 100vw)
  }

  .index_page .member_block__bg {
    height: calc(145 / 393 * 100vw)
  }

  .index_page .member_block__bg::before {
    width: calc(25 / 393 * 100vw);
    height: calc(29 / 393 * 100vw);
    top: calc(-15 / 393 * 100vw);
    left: calc(10 / 393 * 100vw)
  }

  .index_page .member_block__img {
    width: calc(136 / 393 * 100vw)
  }

  .index_page .member_block__text_wrapper {
    margin-top: calc(25 / 393 * 100vw)
  }

  .index_page .member_block__role {
    color: #1cac85;
    font-size: .75rem;
    font-weight: 600;
    line-height: 170%;
    letter-spacing: .015rem
  }

  .index_page .member_block__name {
    font-size: 1rem;
    font-weight: 500;
    line-height: 170%;
    letter-spacing: .02rem;
    padding: 0 calc(5 / 393 * 100vw)
  }

  .index_page .recruit_block {
    margin-top: calc(90 / 393 * 100vw)
  }

  .index_page .recruit_block::before {
    width: calc(84 / 393 * 100vw);
    height: calc(84 / 393 * 100vw);
    top: calc(-32 / 393 * 100vw);
    left: calc(230 / 393 * 100vw)
  }

  .index_page .news_block {
    margin-top: calc(80 / 393 * 100vw)
  }

  .index_page .news_block__inner {
    max-width: calc(333 / 393 * 100vw)
  }

  .index_page .news_block__head span {
    font-size: .8125rem;
    letter-spacing: .0488rem
  }

  .index_page .news_block__title_wrapper h3 {
    font-size: 1.875rem;
    font-weight: 800;
    line-height: 130%
  }

  .index_page .news_block__body {
    flex-direction: column;
    gap: 0;
    margin-top: calc(8 / 393 * 100vw)
  }

  .index_page .news_block__contents {
    margin-top: calc(37 / 393 * 100vw)
  }

  .index_page .news_block__item {
    flex-direction: column;
    gap: calc(6 / 393 * 100vw)
  }

  .index_page .news_block__item:not(:first-child) {
    margin-top: calc(23 / 393 * 100vw)
  }

  .index_page .news_block__item time {
    font-size: .8125rem
  }

  .index_page .news_block__btn {
    display: none;
    margin-top: calc(60 / 393 * 100vw);
    width: calc(200 / 393 * 100vw)
  }

  .index_page .news_block__btn--sp {
    display: inline-block;
    margin-top: calc(35 / 393 * 100vw)
  }

  .index_page .link_block {
    margin-top: calc(80 / 393 * 100vw)
  }

  .index_page .link_block__inner {
    max-width: none;
    padding: 0 calc(30 / 393 * 100vw) calc(80 / 393 * 100vw)
  }

  .index_page .link_block__top {
    flex-direction: column;
    gap: calc(20 / 393 * 100vw)
  }

  .index_page .link_block__company a {
    height: calc(200 / 393 * 100vw);
    background: url(/assets/img/top/pic_banner_link_01_sp.webp) center center no-repeat;
    background-size: cover
  }

  .index_page .link_block__text_wrapper {
    padding-left: calc(20 / 393 * 100vw)
  }

  .index_page .link_block__text_wrapper span {
    margin-top: calc(22 / 393 * 100vw);
    font-size: .8125rem;
    letter-spacing: .0488rem
  }

  .index_page .link_block__text_wrapper h4 {
    font-size: 1.25rem
  }

  .index_page .link_block__qna_text {
    padding: calc(25 / 393 * 100vw) calc(20 / 393 * 100vw) calc(30 / 393 * 100vw) calc(20 / 393 * 100vw);
    background: url(/assets/img/top/bg_qna_sp.svg) no-repeat center/cover
  }

  .index_page .link_block__qna_text span {
    font-size: .8125rem;
    letter-spacing: .0488rem
  }

  .index_page .link_block__qna_text h4 {
    font-size: 1.25rem;
    font-weight: 800;
    line-height: 140%;
    margin-top: calc(3 / 393 * 100vw)
  }

  .index_page .link_block__qna_text ul {
    margin-top: calc(20 / 393 * 100vw);
    gap: calc(18 / 393 * 100vw)
  }

  .index_page .link_block__qna_text ul li {
    font-size: .6875rem;
    gap: calc(12 / 393 * 100vw)
  }

  .index_page .link_block__qna_text ul+ul {
    margin-top: calc(5 / 393 * 100vw);
    flex-direction: column;
    gap: 0
  }

  .index_page .link_block__qna_text ul+ul li+li {
    margin-top: calc(8 / 393 * 100vw)
  }

  .index_page .link_block__bottom {
    margin-top: calc(20 / 393 * 100vw)
  }

  .index_page .link_block .recruit_banner_block a {
    background: url(/assets/img/top/pic_img_link_recruit_sp.webp) center left no-repeat;
    background-size: cover;
    padding: calc(65 / 393 * 100vw) calc(16 / 393 * 100vw) calc(20 / 393 * 100vw) calc(20 / 393 * 100vw)
  }

  .index_page .link_block .recruit_banner_block__text_wrapper {
    max-width: calc(172 / 393 * 100vw);
    margin-left: auto
  }

  .index_page .link_block .recruit_banner_block__text_wrapper span {
    font-size: .8125rem;
    letter-spacing: .0488rem
  }

  .index_page .link_block .recruit_banner_block__text_wrapper h4 {
    margin-top: calc(2 / 393 * 100vw);
    font-size: 1.25rem;
    line-height: 140%
  }

  .index_page .link_block .recruit_banner_block__text_wrapper p {
    margin-top: calc(10 / 393 * 100vw);
    line-height: 1.5;
    font-size: .8125rem;
    font-weight: 700;
    letter-spacing: .01rem
  }

  .message_page .mv_block {
    padding-top: calc(75 / 393 * 100vw)
  }

  .message_page .mv_block__wrap {
    display: unset;
    position: relative
  }

  .message_page .mv_block__head {
    max-width: initial;
    position: absolute;
    top: calc(118 / 393 * 100vw);
    transform: translateY(-50%);
    left: -8px;
    z-index: 1
  }

  .message_page .mv_block__sub_title {
    font-size: calc(14 / 393 * 100vw)
  }

  .message_page .mv_block__img {
    margin-left: 0;
    width: initial
  }

  .message_page .mv_block__img img {
    aspect-ratio: 363/260
  }

  .message_page .message_block__head {
    font-size: calc(23 / 393 * 100vw);
    padding-left: calc(28 / 393 * 100vw)
  }

  .message_page .message_block__head::before {
    width: calc(8 / 393 * 100vw);
    height: calc(70 / 393 * 100vw)
  }

  .message_page .message_block__list {
    margin-top: calc(43 / 393 * 100vw);
    gap: calc(60 / 393 * 100vw)
  }

  .message_page .message_block__item {
    display: block
  }

  .message_page .message_block__item:nth-child(2n) .message_block__body {
    padding-left: calc(30 / 393 * 100vw)
  }

  .message_page .message_block__item:nth-child(2n) .message_block__item_wrap {
    margin-right: calc(30 / 393 * 100vw)
  }

  .message_page .message_block__item:nth-child(2n) .message_block__item_img {
    margin-left: calc(-10 / 393 * 100vw)
  }

  .message_page .message_block__item:nth-child(2n+1) .message_block__item_wrap {
    margin-left: 0
  }

  .message_page .message_block__body {
    width: 100%;
    padding: calc(28 / 393 * 100vw) calc(30 / 393 * 100vw) calc(112 / 393 * 100vw);
    gap: calc(12 / 393 * 100vw)
  }

  .message_page .message_block__body_title {
    font-size: calc(20 / 393 * 100vw);
    letter-spacing: .04em
  }

  .message_page .message_block__body_name {
    font-size: calc(14 / 393 * 100vw)
  }

  .message_page .message_block__body_text {
    margin-top: 3px;
    line-height: 1.7
  }

  .message_page .message_block__item_wrap {
    margin-top: -78px;
    margin-top: calc(-78 / 393 * 100vw)
  }

  .message_page .message_block__item_number {
    width: calc(60.54 / 393 * 100vw);
    aspect-ratio: 60.54/64.33;
    padding-top: calc(22 / 393 * 100vw);
    top: calc(-42 / 393 * 100vw);
    right: calc(16 / 393 * 100vw)
  }

  .message_page .message_block__item_number_01 {
    font-size: calc(7.73 / 393 * 100vw)
  }

  .message_page .message_block__item_number_02 {
    font-size: calc(24 / 393 * 100vw)
  }

  .message_page .message_block__item_img {
    aspect-ratio: 313/207.58;
    max-width: initial;
    width: calc(313 / 393 * 100vw);
    margin-left: calc(30 / 393 * 100vw)
  }

  .message_page .message_block__other_voices {
    margin-top: calc(60 / 393 * 100vw)
  }

  .message_page .other_voice_block {
    gap: calc(20 / 393 * 100vw);
    grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
    justify-content: center
  }

  .message_page .other_voice_block__item {
    max-width: 333px;
    width: 100%;
    padding: calc(24 / 393 * 100vw) calc(29 / 393 * 100vw)
  }

  .message_page .other_voice_block__wrap {
    margin-top: 20px
  }

  .message_page .other_voice_block__img {
    width: 34px
  }

  .message_page .other_voice_block__name {
    font-size: 14px
  }

  .news_detail_page .breadcrumb_block {
    padding-top: calc(120 / 393 * 100vw);
    padding-bottom: calc(50 / 393 * 100vw)
  }

  .news_detail_page_wrapper {
    margin-bottom: calc(80 / 393 * 100vw)
  }

  .news_detail_page .news_article_block {
    padding: calc(15 / 393 * 100vw) 5.909%;
    border-radius: calc(12 / 393 * 100vw)
  }

  .news_detail_page .news_article_block__date {
    margin-bottom: calc(11 / 393 * 100vw);
    font-size: calc(13 / 393 * 100vw)
  }

  .news_detail_page .news_article_block__title {
    margin-bottom: calc(0 / 393 * 100vw);
    font-size: calc(24 / 393 * 100vw);
    line-height: 1.4
  }

  .news_detail_page .news_article_block_labels {
    margin-top: calc(-3 / 393 * 100vw);
    margin-bottom: calc(32 / 393 * 100vw)
  }

  .news_detail_page .news_article_block__label+div {
    margin-left: calc(2 / 393 * 100vw)
  }

  .news_detail_page .news_article_block__label {
    margin-top: calc(16 / 393 * 100vw)
  }

  .news_detail_page .news_article_block__label a {
    padding: calc(5 / 393 * 100vw) calc(12 / 393 * 100vw);
    font-size: calc(11 / 393 * 100vw)
  }

  .news_detail_page .news_article_block__img {
    margin-bottom: calc(30 / 393 * 100vw);
    border-radius: calc(6 / 393 * 100vw)
  }

  .news_detail_page .news_article_block__text {
    font-size: calc(15 / 393 * 100vw);
    line-height: 1.9
  }

  .news_detail_page .news_article_block>p+p {
    margin-top: calc(25 / 393 * 100vw)
  }

  .news_detail_page_back {
    padding: calc(40 / 393 * 100vw) 0 0
  }

  .news_detail_page_back a {
    font-size: calc(16 / 393 * 100vw)
  }

  .news_detail_page_back a::before {
    margin-right: calc(22 / 393 * 100vw);
    width: calc(12 / 393 * 100vw);
    height: calc(18 / 393 * 100vw)
  }

  .news_page .mv_block {
    padding-top: calc(75 / 393 * 100vw)
  }

  .news_page .mv_block__wrap {
    display: unset;
    position: relative
  }

  .news_page .mv_block__head {
    max-width: initial;
    position: absolute;
    top: calc(137 / 393 * 100vw);
    transform: translateY(-50%);
    left: -8px;
    z-index: 1
  }

  .news_page .mv_block__sub_title {
    font-size: calc(14 / 393 * 100vw)
  }

  .news_page .mv_block__img {
    margin-left: 0;
    width: initial
  }

  .news_page .mv_block__img img {
    aspect-ratio: 363/260
  }

  .news_page .news_list {
    padding: calc(20 / 393 * 100vw) 0 calc(60 / 393 * 100vw)
  }

  .news_page .news_list_item {
    display: block;
    padding: calc(31 / 393 * 100vw) 0 calc(27 / 393 * 100vw)
  }

  .news_page .news_list_item__date {
    margin: 0 0 calc(7 / 393 * 100vw);
    font-size: calc(13 / 393 * 100vw)
  }

  .news_page .news_list_item__title {
    margin-bottom: calc(9 / 393 * 100vw);
    font-size: calc(18 / 393 * 100vw);
    line-height: 1.3
  }

  .news_page .news_list_item__text {
    overflow: hidden;
    display: -webkit-box;
    text-overflow: ellipsis;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    font-size: calc(15 / 393 * 100vw);
    line-height: 1.6
  }

  .news_page .pager_block {
    padding-bottom: calc(80 / 393 * 100vw)
  }

  .page_404_block {
    padding-top: calc(100 / 393 * 100vw)
  }

  .page_404_block__inner.inner {
    padding-top: calc(80 / 393 * 100vw)
  }

  .page_404_block__head {
    font-size: calc(32 / 393 * 100vw)
  }

  .page_404_block__title {
    margin-top: calc(70 / 393 * 100vw);
    padding-left: calc(28 / 393 * 100vw);
    font-size: calc(23 / 393 * 100vw);
    line-height: 1.5
  }

  .page_404_block__title::before {
    width: calc(8 / 393 * 100vw);
    height: calc(70 / 393 * 100vw)
  }

  .page_404_block__text {
    margin-top: calc(20 / 393 * 100vw);
    font-size: calc(15 / 393 * 100vw);
    line-height: 1.9;
    letter-spacing: .02em
  }

  .privacy_page .mv_block {
    padding-top: calc(75 / 393 * 100vw)
  }

  .privacy_page .mv_block__wrap {
    display: unset;
    position: relative
  }

  .privacy_page .mv_block__head {
    max-width: initial;
    position: absolute;
    top: calc(137 / 393 * 100vw);
    transform: translateY(-50%);
    left: -8px;
    z-index: 1
  }

  .privacy_page .mv_block__sub_title {
    font-size: calc(14 / 393 * 100vw)
  }

  .privacy_page .mv_block__img {
    margin-left: 0;
    width: initial
  }

  .privacy_page .mv_block__img img {
    aspect-ratio: 363/260
  }

  .privacy_page .privacy_block__list {
    margin-top: calc(50 / 393 * 100vw);
    gap: calc(40 / 393 * 100vw)
  }

  .privacy_page .privacy_block__item_head {
    font-size: calc(15 / 393 * 100vw)
  }

  .privacy_page .privacy_block__item_text {
    font-size: calc(14 / 393 * 100vw)
  }

  .property-qualite_detail_page .detail_block {
    margin-top: calc(52 / 393 * 100vw);
    padding: calc(25 / 393 * 100vw) calc(20 / 393 * 100vw) calc(40 / 393 * 100vw);
    width: calc(333 / 393 * 100vw)
  }

  .property-qualite_detail_page .detail_block__adress {
    font-size: .8125rem
  }

  .property-qualite_detail_page .detail_block__title {
    font-size: 1.5rem;
    line-height: 140%;
    letter-spacing: .03rem
  }

  .property-qualite_detail_page .intro_block {
    margin-top: calc(50 / 393 * 100vw)
  }

  .property-qualite_detail_page .intro_block h3 {
    font-size: 1.125rem;
    letter-spacing: .0225rem
  }

  .property-qualite_detail_page .intro_block p {
    font-size: .875rem;
    line-height: 190%
  }

  .property-qualite_detail_page .intro_block ul li {
    font-size: .875rem;
    line-height: 190%
  }

  .property-qualite_detail_page .info_block__top {
    display: block
  }

  .property-qualite_detail_page .info_block__bottom {
    margin-top: calc(20 / 393 * 100vw)
  }

  .property-qualite_detail_page .data_block {
    padding: calc(30 / 393 * 100vw) calc(20 / 393 * 100vw) calc(30 / 393 * 100vw)
  }

  .property-qualite_detail_page .data_block::before {
    width: calc(8 / 393 * 100vw);
    height: calc(24 / 393 * 100vw)
  }

  .property-qualite_detail_page .data_block h4 {
    font-size: 1rem;
    line-height: 120%;
    letter-spacing: .08rem
  }

  .property-qualite_detail_page .data_block table th {
    font-size: .875rem;
    letter-spacing: .0175rem;
    padding: calc(16 / 393 * 100vw) calc(20 / 393 * 100vw) 0 0
  }

  .property-qualite_detail_page .data_block table td {
    font-size: .875rem;
    letter-spacing: .0175rem
  }

  .property-qualite_detail_page .feature_block {
    padding: calc(30 / 393 * 100vw) calc(20 / 393 * 100vw) calc(30 / 393 * 100vw);
    margin-top: cs
  }

  .property-qualite_detail_page .feature_block::before {
    width: calc(8 / 393 * 100vw);
    height: calc(24 / 393 * 100vw)
  }

  .property-qualite_detail_page .feature_block h4 {
    font-size: 1rem;
    line-height: 120%;
    letter-spacing: .08rem
  }

  .property-qualite_detail_page .service_block {
    padding: calc(30 / 393 * 100vw) calc(20 / 393 * 100vw) calc(30 / 393 * 100vw)
  }

  .property-qualite_detail_page .service_block::before {
    width: calc(8 / 393 * 100vw);
    height: calc(24 / 393 * 100vw)
  }

  .property-qualite_detail_page .service_block h4 {
    font-size: 1rem;
    line-height: 120%;
    letter-spacing: .08rem
  }

  .property-qualite_detail_page .service_block__tag_wrapper {
    margin-top: calc(20 / 393 * 100vw)
  }

  .property-qualite_detail_page .service_block__tag_wrapper li {
    margin: calc(12 / 393 * 100vw) calc(12 / 1512 * 100vw) 0;
    padding: calc(10 / 393 * 100vw) calc(16 / 393 * 100vw);
    font-size: .8125rem
  }

  .property-qualite_detail_page .back_link_btn {
    margin-top: calc(40 / 393 * 100vw);
    padding-bottom: calc(80 / 393 * 100vw)
  }

  .property-qualite_detail_page .back_link_btn a {
    font-size: 1rem;
    letter-spacing: .025rem
  }

  .property-qualite_detail_page .back_link_btn a:before {
    width: calc(12 / 393 * 100vw);
    height: calc(12 / 393 * 100vw)
  }

  .property-qualite_detail_page .thumbnails {
    gap: 0 calc(8 / 393 * 100vw);
    margin: calc(12/ 393 * 100vw) auto 0;
    overflow: scroll;
    justify-content: start
  }

  .property-qualite_detail_page .thumbnail {
    width: calc(97 / 393 * 100vw)
  }

  .property-qualite_detail_page .splide__arrow--next,
  .property-qualite_detail_page .splide__arrow--prev {
    width: calc(28 / 393 * 100vw);
    height: calc(28 / 393 * 100vw)
  }

  .property-qualite_page .mv_block {
    padding-top: calc(75 / 393 * 100vw)
  }

  .property-qualite_page .mv_block__wrap {
    display: unset;
    position: relative
  }

  .property-qualite_page .mv_block__head {
    max-width: initial;
    position: absolute;
    top: calc(118 / 393 * 100vw);
    transform: translateY(-50%);
    left: -8px;
    z-index: 1
  }

  .property-qualite_page .mv_block__img {
    margin-left: 0;
    width: initial
  }

  .property-qualite_page .mv_block__img img {
    aspect-ratio: 363/260
  }

  .property-qualite_page .lead_block {
    flex-direction: column;
    margin-top: calc(64 / 393 * 100vw);
    gap: calc(30 / 393 * 100vw)
  }

  .property-qualite_page .lead_block__img {
    width: 100%
  }

  .property-qualite_page .intro_block h3 {
    font-size: 1.4375rem;
    font-weight: 700;
    line-height: 150%;
    letter-spacing: .0288rem
  }

  .property-qualite_page .intro_block h3::before {
    width: calc(8 / 393 * 100vw);
    height: calc(70 / 393 * 100vw)
  }

  .property-qualite_page .intro_block p {
    color: var(--green-900, #143d32);
    font-size: .9375rem;
    line-height: 190%;
    letter-spacing: .0187rem
  }

  .property-qualite_page .intro_block__list {
    grid-template-columns: repeat(3, 1fr);
    gap: calc(6 / 393 * 100vw);
    margin-top: calc(30 / 393 * 100vw)
  }

  .property-qualite_page .intro_block__list li {
    padding: calc(10 / 393 * 100vw)
  }

  .property-qualite_page .intro_block__list li p {
    margin-top: calc(6 / 393 * 100vw);
    font-size: .75rem;
    letter-spacing: .015rem
  }

  .property-qualite_page .intro_block__icon {
    width: calc(51 / 393 * 100vw)
  }

  .property-qualite_page .property_block {
    margin-top: calc(100 / 393 * 100vw);
    padding-bottom: calc(80 / 393 * 100vw)
  }

  .property-qualite_page .property_block h3 {
    font-size: 1.75rem;
    line-height: 160%;
    letter-spacing: .035rem
  }

  .property-qualite_page .property_block__area h4 {
    font-size: 1.4375rem;
    font-weight: 700;
    line-height: 150%;
    letter-spacing: .0288rem
  }

  .property-qualite_page .property_block__area h4::before {
    width: calc(8 / 393 * 100vw);
    height: calc(35 / 393 * 100vw)
  }

  .property-qualite_page .qualite_block {
    padding: calc(68 / 393 * 100vw) 0 calc(80 / 393 * 100vw)
  }

  .property-qualite_page .qualite_block_head {
    display: block
  }

  .property-qualite_page .qualite_block_head_main {
    width: 100%
  }

  .property-qualite_page .qualite_block_head_title {
    margin-bottom: calc(30 / 393 * 100vw)
  }

  .property-qualite_page .qualite_block_head_title__01 {
    margin-bottom: calc(24 / 393 * 100vw);
    font-size: calc(18 / 393 * 100vw)
  }

  .property-qualite_page .qualite_block_head_title__02 {
    font-size: calc(28 / 393 * 100vw)
  }

  .property-qualite_page .qualite_block_head_title__02::before {
    width: calc(42 / 393 * 100vw);
    height: calc(42 / 393 * 100vw);
    margin-top: calc(-6 / 393 * 100vw);
    margin-right: calc(14 / 393 * 100vw)
  }

  .property-qualite_page .qualite_block_head__subtitle {
    margin-bottom: calc(25 / 393 * 100vw);
    font-size: calc(15 / 393 * 100vw);
    line-height: 1.9;
    letter-spacing: .02em
  }

  .property-qualite_page .qualite_block_head_link_wrapper {
    display: flex;
    justify-content: center
  }

  .property-qualite_page .qualite_block_head_link {
    width: calc(292 / 393 * 100vw)
  }

  .property-qualite_page .qualite_block_head_link a {
    padding: calc(18 / 393 * 100vw) calc(20 / 393 * 100vw);
    text-align: center;
    line-height: 1.2
  }

  .property-qualite_page .qualite_block_head_img {
    position: relative;
    width: calc(363 / 393 * 100vw);
    margin-left: calc(-30 / 393 * 100vw);
    margin-bottom: calc(42 / 393 * 100vw)
  }

  .property-qualite_page .qualite_block_head_img::after {
    content: "";
    position: absolute;
    display: block;
    right: calc(-13 / 393 * 100vw);
    bottom: calc(-23 / 393 * 100vw);
    width: calc(110 / 393 * 100vw);
    aspect-ratio: 109/87;
    background: url(../images/badge.png) left top/cover no-repeat
  }

  .property-qualite_page .qualite_block_head::after {
    display: none
  }

  .property-qualite_page .qualite_block_list_item {
    display: block;
    border-radius: calc(16 / 393 * 100vw)
  }

  .property-qualite_page .qualite_block_list_item+a {
    margin-top: calc(50 / 393 * 100vw)
  }

  .property-qualite_page .qualite_block_list_item_body {
    padding: calc(16 / 393 * 100vw) 10% calc(16 / 393 * 100vw)
  }

  .property-qualite_page .qualite_block_list_item__area {
    margin-bottom: calc(9 / 393 * 100vw);
    font-size: calc(12 / 393 * 100vw)
  }

  .property-qualite_page .qualite_block_list_item__name {
    margin-bottom: calc(9 / 393 * 100vw);
    font-size: calc(20 / 393 * 100vw)
  }

  .property-qualite_page .qualite_block_list_item__outline {
    margin-bottom: calc(11 / 393 * 100vw);
    font-size: calc(12 / 393 * 100vw)
  }

  .property-qualite_page .qualite_block_list_item_feature {
    margin-bottom: calc(18 / 393 * 100vw)
  }

  .property-qualite_page .qualite_block_list_item_feature li {
    margin: 0 calc(4 / 393 * 100vw) calc(5 / 1512 * 100vw) 0;
    padding: calc(6 / 393 * 100vw) calc(6 / 393 * 100vw) calc(7 / 393 * 100vw)
  }

  .property-qualite_page .qualite_block_list_item__cta {
    width: calc(114 / 393 * 100vw);
    height: calc(30 / 393 * 100vw);
    padding-inline: calc(13 / 393 * 100vw) calc(11 / 393 * 100vw);
    font-size: calc(12 / 393 * 100vw);
    letter-spacing: .02rem
  }

  .property-qualite_page .qualite_block_list_item__cta::after {
    position: relative;
    right: 0
  }

  .property_page .mv_block {
    padding-top: calc(75 / 393 * 100vw)
  }

  .property_page .mv_block__wrap {
    display: unset;
    position: relative
  }

  .property_page .mv_block__head {
    max-width: initial;
    position: absolute;
    top: calc(160 / 393 * 100vw);
    transform: translateY(-50%);
    left: -8px;
    z-index: 1
  }

  .property_page .mv_block__sub_title {
    font-size: calc(14 / 393 * 100vw)
  }

  .property_page .mv_block__img {
    margin-left: 0;
    width: initial
  }

  .property_page .mv_block__img img {
    aspect-ratio: 363/260
  }

  .property_page .lead_block {
    margin-top: calc(65 / 393 * 100vw);
    margin-bottom: calc(20 / 393 * 100vw)
  }

  .property_page .lead_block__title {
    font-size: calc(23 / 393 * 100vw);
    font-weight: 700;
    line-height: 1.5;
    letter-spacing: .02em
  }

  .property_page .lead_block__title::before {
    width: calc(8 / 393 * 100vw);
    height: calc(70 / 393 * 100vw);
    margin-right: calc(22 / 393 * 100vw)
  }

  .property_page .lead_block__text {
    margin-bottom: calc(38 / 393 * 100vw);
    font-size: calc(15 / 393 * 100vw);
    line-height: 1.86;
    letter-spacing: .06em
  }

  .property_page .lead_block_nav {
    display: block
  }

  .property_page .lead_block_nav_item {
    border-radius: calc(6 / 393 * 100vw)
  }

  .property_page .lead_block_nav_item+a {
    margin-top: calc(30 / 393 * 100vw)
  }

  .property_page .lead_block_nav_item__img {
    width: 48.94%
  }

  .property_page .lead_block_nav_item__img img {
    max-inline-size: 100%
  }

  .property_page .lead_block_nav_item_main {
    width: 51.06%;
    padding: calc(16 / 393 * 100vw)
  }

  .property_page .lead_block_nav_item_main__title {
    margin-bottom: calc(6 / 393 * 100vw);
    font-size: calc(14 / 393 * 100vw);
    line-height: 1.3;
    letter-spacing: .02em
  }

  .property_page .lead_block_nav_item_main__title--small {
    font-size: calc(15 / 393 * 100vw);
    line-height: 1.3;
    letter-spacing: .02em
  }

  .property_page .lead_block_nav_item_main__title--safari {
    font-size: calc(15 / 393 * 100vw);
    line-height: 1.3;
    letter-spacing: .02em
  }

  .property_page .lead_block_nav_item_main__text {
    font-size: calc(12 / 393 * 100vw);
    line-height: 1.5
  }

  .property_page .lead_block_nav_item_main__cta {
    width: calc(105 / 393 * 100vw);
    height: calc(27 / 393 * 100vw);
    font-size: calc(11 / 393 * 100vw);
    letter-spacing: .02rem;
    padding-inline: calc(15 / 393 * 100vw) calc(6 / 393 * 100vw);
    margin-top: calc(24 / 393 * 100vw)
  }

  .property_page .lead_block_nav_item_main__cta::after {
    position: relative;
    right: 0
  }

  .property_page .search_block {
    padding-top: calc(60 / 393 * 100vw)
  }

  .property_page .search_block_bg {
    padding: calc(28 / 393 * 100vw) 5% calc(36 / 393 * 100vw);
    border-radius: calc(10 / 393 * 100vw)
  }

  .property_page .search_block_head {
    align-items: flex-start;
    flex-wrap: wrap;
    margin-bottom: calc(30 / 393 * 100vw)
  }

  .property_page .search_block_head::before {
    width: calc(42 / 393 * 100vw);
    margin-right: calc(14 / 393 * 100vw)
  }

  .property_page .search_block_head span {
    margin-top: calc(4 / 393 * 100vw);
    margin-bottom: 0
  }

  .property_page .search_block_head__title_02 {
    margin-top: calc(15 / 393 * 100vw) !important
  }

  .property_page .search_block_head__title_02--wrap {
    margin-top: calc(49 / 393 * 100vw) !important
  }

  .property_page .search_block_head__title_03 {
    width: calc(100% - (56 / 393 * 100vw));
    margin-left: auto
  }

  .property_page .search_block_head__text {
    margin-bottom: calc(37 / 393 * 100vw);
    font-size: calc(15 / 393 * 100vw);
    line-height: 1.9;
    letter-spacing: .02em
  }

  .property_page .search_block_body {
    padding: calc(29 / 393 * 100vw) 0;
    border-radius: calc(8 / 393 * 100vw)
  }

  .property_page .search_block_body__wrapper {
    padding: 7.3791348601vw 7%
  }

  .property_page .search_block_body__title {
    font-size: calc(20 / 393 * 100vw);
    line-height: 1
  }

  .property_page .search_block_body__title::before {
    width: calc(24 / 393 * 100vw);
    margin-right: calc(10 / 393 * 100vw)
  }

  .property_page .search_block_body_nav {
    margin: calc(36 / 393 * 100vw) 0 calc(29 / 393 * 100vw) calc(4 / 393 * 100vw);
    padding-bottom: calc(6 / 393 * 100vw)
  }

  .property_page .search_block_body_nav a {
    margin: 0 calc(30 / 393 * 100vw) calc(30 / 393 * 100vw) 0;
    font-size: calc(18 / 393 * 100vw)
  }

  .property_page .search_block_body_nav a::before {
    width: calc(20 / 393 * 100vw);
    height: calc(20 / 393 * 100vw);
    margin-right: calc(10 / 393 * 100vw)
  }

  .property_page .search_block_body_nav a+a {
    margin-left: 0
  }

  .property_page .search_block_body_list {
    height: calc(700 / 393 * 100vw)
  }

  .property_page .qualite_block {
    padding: calc(68 / 393 * 100vw) 0 calc(80 / 393 * 100vw)
  }

  .property_page .qualite_block_head {
    display: block
  }

  .property_page .qualite_block_head_main {
    width: 100%
  }

  .property_page .qualite_block_head_title {
    margin-bottom: calc(30 / 393 * 100vw)
  }

  .property_page .qualite_block_head_title__01 {
    margin-bottom: calc(24 / 393 * 100vw);
    font-size: calc(18 / 393 * 100vw)
  }

  .property_page .qualite_block_head_title__02 {
    font-size: calc(28 / 393 * 100vw)
  }

  .property_page .qualite_block_head_title__02::before {
    width: calc(42 / 393 * 100vw);
    height: calc(42 / 393 * 100vw);
    margin-top: calc(-6 / 393 * 100vw);
    margin-right: calc(14 / 393 * 100vw)
  }

  .property_page .qualite_block_head__subtitle {
    margin-bottom: calc(25 / 393 * 100vw);
    font-size: calc(15 / 393 * 100vw);
    line-height: 1.9;
    letter-spacing: .02em
  }

  .property_page .qualite_block_head_link_wrapper {
    display: flex;
    justify-content: center
  }

  .property_page .qualite_block_head_link {
    width: calc(292 / 393 * 100vw)
  }

  .property_page .qualite_block_head_link a {
    padding: calc(18 / 393 * 100vw) calc(20 / 393 * 100vw);
    text-align: center;
    line-height: 1.2
  }

  .property_page .qualite_block_head_img {
    position: relative;
    width: calc(363 / 393 * 100vw);
    margin-left: calc(-30 / 393 * 100vw);
    margin-bottom: calc(42 / 393 * 100vw)
  }

  .property_page .qualite_block_head_img::after {
    content: "";
    position: absolute;
    display: block;
    right: calc(-13 / 393 * 100vw);
    bottom: calc(-23 / 393 * 100vw);
    width: calc(110 / 393 * 100vw);
    aspect-ratio: 109/87;
    background: url(../images/badge.png) left top/cover no-repeat
  }

  .property_page .qualite_block_head::after {
    display: none
  }

  .property_page .qualite_block_list {
    display: block;
    gap: 0
  }

  .property_page .qualite_block_list_item {
    display: block;
    border-radius: calc(16 / 393 * 100vw)
  }

  .property_page .qualite_block_list_item+a {
    margin-top: calc(50 / 393 * 100vw)
  }

  .property_page .qualite_block_list_item_body {
    padding: calc(16 / 393 * 100vw) 10% calc(16 / 393 * 100vw)
  }

  .property_page .qualite_block_list_item__area {
    margin-bottom: calc(9 / 393 * 100vw);
    font-size: calc(12 / 393 * 100vw)
  }

  .property_page .qualite_block_list_item__name {
    margin-bottom: calc(9 / 393 * 100vw);
    font-size: calc(20 / 393 * 100vw)
  }

  .property_page .qualite_block_list_item__outline {
    margin-bottom: calc(11 / 393 * 100vw);
    font-size: calc(12 / 393 * 100vw)
  }

  .property_page .qualite_block_list_item_feature {
    margin-bottom: calc(18 / 393 * 100vw)
  }

  .property_page .qualite_block_list_item_feature li {
    margin: 0 calc(4 / 393 * 100vw) calc(5 / 1512 * 100vw) 0;
    padding: calc(6 / 393 * 100vw) calc(6 / 393 * 100vw) calc(7 / 393 * 100vw)
  }

  .property_page .qualite_block_list_item__cta {
    width: calc(114 / 393 * 100vw);
    height: calc(30 / 393 * 100vw);
    padding-inline: calc(13 / 393 * 100vw) calc(11 / 393 * 100vw);
    font-size: calc(12 / 393 * 100vw);
    letter-spacing: .02rem
  }

  .property_page .qualite_block_list_item__cta::after {
    position: relative;
    right: 0
  }

  .shop_detail_page .mv_block {
    padding-top: calc(75 / 393 * 100vw)
  }

  .shop_detail_page .mv_block__wrap {
    display: unset;
    position: relative
  }

  .shop_detail_page .mv_block__head {
    max-width: initial;
    position: absolute;
    top: calc(160 / 393 * 100vw);
    transform: translateY(-50%);
    left: -8px;
    z-index: 1
  }

  .shop_detail_page .mv_block__sub_title {
    font-size: calc(14 / 393 * 100vw)
  }

  .shop_detail_page .mv_block__img {
    margin-left: 0;
    width: initial
  }

  .shop_detail_page .mv_block__img img {
    aspect-ratio: 363/260
  }

  .shop_detail_page .title_style {
    font-size: calc(23 / 393 * 100vw)
  }

  .shop_detail_page .title_style::before {
    width: calc(8 / 393 * 100vw);
    height: calc(34 / 393 * 100vw);
    margin-right: calc(21 / 393 * 100vw)
  }

  .shop_detail_page .lead_block {
    margin-top: calc(60 / 393 * 100vw);
    margin-bottom: calc(99 / 393 * 100vw)
  }

  .shop_detail_page .lead_block {
    display: block
  }

  .shop_detail_page .lead_block_main {
    width: 100%
  }

  .shop_detail_page .lead_block__title {
    margin-bottom: calc(33 / 393 * 100vw)
  }

  .shop_detail_page .lead_block__title span {
    padding: 0 0 calc(0 / 393 * 100vw) calc(4 / 393 * 100vw);
    font-size: calc(20 / 393 * 100vw);
    line-height: 1.7;
    letter-spacing: .01em
  }

  .shop_detail_page .lead_block__title span+span {
    margin-top: calc(8 / 393 * 100vw)
  }

  .shop_detail_page .lead_block__title span:nth-of-type(1)::after {
    display: none
  }

  .shop_detail_page .lead_block__title span:nth-of-type(3) {
    padding-left: calc(4 / 393 * 100vw)
  }

  .shop_detail_page .lead_block__text {
    font-size: calc(15 / 393 * 100vw);
    line-height: 1.87
  }

  .shop_detail_page .lead_block_sub {
    width: 100%;
    margin-top: calc(39 / 393 * 100vw)
  }

  .shop_detail_page .lead_block__img {
    margin-bottom: calc(20 / 393 * 100vw)
  }

  .shop_detail_page .lead_block_area {
    padding: calc(30 / 393 * 100vw)
  }

  .shop_detail_page .lead_block_area__title {
    margin-bottom: calc(16 / 393 * 100vw);
    font-size: calc(16 / 393 * 100vw)
  }

  .shop_detail_page .lead_block_area_list li {
    font-size: calc(15 / 393 * 100vw)
  }

  .shop_detail_page .outline_block {
    margin-bottom: calc(76 / 393 * 100vw)
  }

  .shop_detail_page .outline_block__title {
    margin-bottom: calc(35 / 393 * 100vw)
  }

  .shop_detail_page .outline_block_wrapper {
    display: block
  }

  .shop_detail_page .outline_block_head {
    width: 100%
  }

  .shop_detail_page .outline_block__map {
    justify-content: flex-end
  }

  .shop_detail_page .outline_block_body {
    width: 100%
  }

  .shop_detail_page .outline_block_list {
    margin: calc(39 / 393 * 100vw) 0 calc(33 / 393 * 100vw);
    font-size: calc(15 / 393 * 100vw)
  }

  .shop_detail_page .outline_block_list {
    display: block
  }

  .shop_detail_page .outline_block_list dd+dt,
  .shop_detail_page .outline_block_list dd:nth-of-type(n+2) {
    margin-top: calc(19 / 393 * 100vw)
  }

  .shop_detail_page .outline_block_list dd {
    width: 100%;
    margin-top: calc(8 / 393 * 100vw)
  }

  .shop_detail_page .outline_block_list dd:nth-of-type(n+2) {
    margin-top: calc(8 / 393 * 100vw)
  }

  .shop_detail_page .outline_block_link {
    width: 87.68%;
    margin-inline: auto
  }

  .shop_detail_page .outline_block_link a {
    font-size: calc(16 / 393 * 100vw);
    line-height: 100%;
    letter-spacing: .02rem;
    padding: calc(20 / 393 * 100vw) calc(26 / 393 * 100vw) calc(18 / 393 * 100vw)
  }

  .shop_detail_page .outline_block_link a::after {
    position: relative;
    right: 0
  }

  .shop_detail_page .staff_block {
    margin-bottom: calc(78 / 393 * 100vw)
  }

  .shop_detail_page .staff_block_head {
    display: block;
    margin-bottom: calc(39 / 393 * 100vw)
  }

  .shop_detail_page .staff_block_head__title {
    margin-bottom: calc(49 / 393 * 100vw)
  }

  .shop_detail_page .staff_block_head__subtitle {
    margin-left: 0;
    font-size: calc(15 / 393 * 100vw);
    line-height: 1.7
  }

  .shop_detail_page .staff_block_list {
    grid-template-columns: repeat(2, 1fr);
    gap: calc(39 / 393 * 100vw) calc(12 / 393 * 100vw)
  }

  .shop_detail_page .staff_block_list__img {
    margin-bottom: calc(9 / 393 * 100vw)
  }

  .shop_detail_page .staff_block_list__text {
    margin-bottom: calc(1 / 393 * 100vw);
    font-size: calc(13 / 393 * 100vw)
  }

  .shop_detail_page .staff_block_list__text br {
    display: none
  }

  .shop_detail_page .staff_block_list__status {
    font-size: calc(12 / 393 * 100vw)
  }

  .shop_detail_page .staff_block_list__status span+span {
    margin-left: calc(4 / 393 * 100vw)
  }

  .shop-list_page .mv_block {
    padding-top: calc(75 / 393 * 100vw)
  }

  .shop-list_page .mv_block__wrap {
    display: unset;
    position: relative
  }

  .shop-list_page .mv_block__head {
    max-width: initial;
    position: absolute;
    top: calc(160 / 393 * 100vw);
    transform: translateY(-50%);
    left: -8px;
    z-index: 1
  }

  .shop-list_page .mv_block__sub_title {
    font-size: calc(14 / 393 * 100vw)
  }

  .shop-list_page .mv_block__img {
    margin-left: 0;
    width: initial
  }

  .shop-list_page .mv_block__img img {
    aspect-ratio: 363/260
  }

  .shop-list_page .shop_block__shop_item {
    width: 100%
  }

  .shop-list_page .shop_block__shop_item a {
    width: 100%;
    border-radius: calc(12 / 393 * 100vw)
  }

  .shop-list_page .shop_block__shop_item p {
    width: 100%;
    font-size: calc(18 / 393 * 100vw)
  }

  .shop-list_page .shop_block__shop_img {
    width: 27.781%
  }

  .shop-list_page .shop-list__head {
    font-size: calc(23 / 393 * 100vw);
    padding-left: calc(26 / 393 * 100vw)
  }

  .shop-list_page .shop-list__head::before {
    width: calc(8 / 393 * 100vw);
    height: calc(35 / 393 * 100vw)
  }

  .shop-list_page .shop-list__item_img {
    aspect-ratio: 333/176
  }

  .shop-list_page .shop-list__item_title {
    font-size: 18px
  }

  .shop-list_page .shop-list__item_content a {
    margin-top: 0
  }

  .shop-list_page .shop-list__item_adress {
    font-size: 15px
  }

  .shop-list_page .shop-list__item_wrap {
    justify-content: space-between;
    gap: calc(14 / 393 * 100vw)
  }

  .shop-list_page .shop-list__item_tel {
    font-size: 14px
  }

  .shop-list_page .shop-list__item_btn {
    font-size: 12px
  }

  .shop-list_page .shop-list__item_btn::before {
    right: 17px
  }

  .shop_page .mv_block {
    padding-top: calc(75 / 393 * 100vw)
  }

  .shop_page .mv_block__wrap {
    display: unset;
    position: relative
  }

  .shop_page .mv_block__head {
    max-width: initial;
    position: absolute;
    top: calc(160 / 393 * 100vw);
    transform: translateY(-50%);
    left: -8px;
    z-index: 1
  }

  .shop_page .mv_block__sub_title {
    font-size: calc(14 / 393 * 100vw)
  }

  .shop_page .mv_block__img {
    margin-left: 0;
    width: initial
  }

  .shop_page .mv_block__img img {
    aspect-ratio: 363/260
  }

  .shop_page .shop_block__top {
    flex-direction: column;
    gap: calc(25 / 393 * 100vw);
    padding: calc(24 / 393 * 100vw) calc(24 / 393 * 100vw) calc(29 / 393 * 100vw) calc(20 / 393 * 100vw);
    align-items: start
  }

  .shop_page .shop_block__title {
    gap: 10px
  }

  .shop_page .shop_block__title_img {
    width: calc(24 / 393 * 100vw)
  }

  .shop_page .shop_block__title_text {
    font-size: calc(22 / 393 * 100vw)
  }

  .shop_page .shop_block__text {
    font-size: calc(13 / 393 * 100vw)
  }

  .sitepolicy_page .mv_block {
    padding-top: calc(75 / 393 * 100vw)
  }

  .sitepolicy_page .mv_block__wrap {
    display: unset;
    position: relative
  }

  .sitepolicy_page .mv_block__head {
    max-width: initial;
    position: absolute;
    top: calc(137 / 393 * 100vw);
    transform: translateY(-50%);
    left: -8px;
    z-index: 1
  }

  .sitepolicy_page .mv_block__sub_title {
    font-size: calc(14 / 393 * 100vw)
  }

  .sitepolicy_page .mv_block__img {
    margin-left: 0;
    width: initial
  }

  .sitepolicy_page .mv_block__img img {
    aspect-ratio: 363/260
  }

  .sitepolicy_page .sitepolicy_block__list {
    margin-top: calc(50 / 393 * 100vw);
    gap: calc(40 / 393 * 100vw)
  }

  .sitepolicy_page .sitepolicy_block__item_head {
    font-size: calc(15 / 393 * 100vw)
  }

  .sitepolicy_page .sitepolicy_block__item_text {
    font-size: calc(14 / 393 * 100vw)
  }
}

@media screen and (max-width:768px) and (max-width:768px) {
  .contact_block__btn--tel a:before {
    width: calc(30 / 393 * 100vw);
    height: calc(30 / 393 * 100vw)
  }
}

@media screen and (max-width:999px) {
  .index_page .lead_block__contents {
    flex-direction: column
  }

  .index_page .lead_block__img {
    align-self: flex-end;
    width: 45.7vw
  }
}

@media screen and (max-width:999px) and (max-width:768px) {
  .index_page .lead_block__contents {
    gap: calc(18 / 393 * 100vw)
  }

  .index_page .lead_block__img {
    align-self: flex-start;
    width: calc(364 / 393 * 100vw)
  }
}

@media screen and (max-width:1244px) {
  .inner {
    padding-inline: calc(40 / 1245 * 100vw)
  }

  .contact_block__inner {
    padding: calc(80 / 1245 * 100vw) calc(40 / 1245 * 100vw) calc(98 / 1245 * 100vw)
  }

  .contact_block__head {
    margin-top: calc(30 / 1245 * 100vw)
  }

  .contact_block__head h4 {
    font-size: calc(50 / 1245 * 100vw)
  }

  .contact_block__head p {
    font-size: calc(15 / 1245 * 100vw)
  }

  .contact_block__contents {
    margin-top: calc(60 / 1245 * 100vw);
    gap: calc(40 / 1245 * 100vw)
  }

  .contact_block__btn_wrapper {
    gap: calc(30 / 1245 * 100vw)
  }

  .contact_block__btn a {
    font-size: calc(22 / 1245 * 100vw)
  }

  .contact_block__btn--mail a {
    gap: calc(8 / 1245 * 100vw)
  }

  .contact_block__tel p {
    font-size: calc(18 / 1245 * 100vw)
  }

  .contact_block__tel p.num {
    font-size: calc(48 / 1245 * 100vw);
    gap: calc(14 / 1245 * 100vw)
  }

  .footer_block__inner {
    padding-top: calc(80 / 1245 * 100vw);
    padding-inline: calc(40 / 1245 * 100vw)
  }

  .footer_block__main {
    gap: calc(40 / 1245 * 100vw)
  }

  .footer_block__logo a p {
    font-size: calc(22 / 1245 * 100vw)
  }

  .footer_block__logo_img {
    width: calc(100 / 1245 * 100vw)
  }

  .footer_block__info {
    margin-top: calc(40 / 1245 * 100vw)
  }

  .footer_menu__list {
    gap: calc(60 / 1245 * 100vw) calc(80 / 1245 * 100vw)
  }

  .footer_menu__item a {
    font-size: calc(18 / 1245 * 100vw)
  }

  .footer_menu__item ul {
    margin-top: calc(24 / 1245 * 100vw)
  }

  .footer_menu__item ul li a {
    font-size: calc(14 / 1245 * 100vw)
  }

  .footer_menu__item ul li:not(:first-child) {
    margin-top: calc(16 / 1245 * 100vw)
  }

  .header_block {
    padding-inline: calc(40 / 1245 * 100vw)
  }

  .header_block__logo {
    padding: calc(35 / 1245 * 100vw) 0
  }

  .header_block__logo a p {
    font-size: calc(20 / 1245 * 100vw)
  }

  .header_block__logo a p span {
    font-size: calc(16 / 1245 * 100vw)
  }

  .header_block__logo_img {
    width: calc(106 / 1245 * 100vw)
  }

  .header_block__list {
    gap: calc(30 / 1245 * 100vw)
  }

  .header_block__list--bottom {
    margin-top: calc(15 / 1245 * 100vw)
  }

  .header_block__link {
    gap: calc(17 / 1245 * 100vw)
  }

  .header_block__link_item a {
    font-size: calc(15 / 1245 * 100vw)
  }

  .header_block__contact_btn--tel {
    padding: calc(10 / 1245 * 100vw) calc(10 / 1245 * 100vw) calc(5 / 1245 * 100vw)
  }

  .header_block__contact_btn--tel a p {
    font-size: calc(12 / 1245 * 100vw)
  }

  .header_block__contact_btn--tel a p.tel {
    font-size: calc(20 / 1245 * 100vw)
  }

  .header_block__contact_btn--mail {
    padding: calc(17 / 1245 * 100vw)
  }

  .header_block__item p {
    font-size: calc(16 / 1245 * 100vw)
  }

  .header_block__item--deco {
    gap: calc(11 / 1245 * 100vw)
  }

  .header_block__item--deco::after {
    width: calc(15 / 1245 * 100vw);
    height: calc(15 / 1245 * 100vw)
  }

  .header_block__item--deco .dropdown {
    padding: 40px 40px
  }

  .mv_block__inner {
    padding-inline: calc(40 / 1245 * 100vw)
  }

  .mv_block__main_title {
    font-size: calc(54 / 1245 * 100vw);
    margin-top: calc(24 / 1245 * 100vw)
  }

  .recommend_sub_block__inner {
    padding-inline: calc(40 / 1245 * 100vw)
  }

  .recommend_block__inner {
    padding-inline: calc(40 / 1245 * 100vw)
  }

  .recommend_block__head {
    flex-direction: column;
    align-items: flex-start;
    gap: calc(33 / 393 * 100vw)
  }

  .about_page .mv_block__inner {
    padding-inline: calc(40 / 1245 * 100vw)
  }

  .about_page .mv_block__main_title {
    font-size: calc(54 / 1245 * 100vw);
    margin-top: calc(24 / 1245 * 100vw)
  }

  .blog_page .mv_block__inner {
    padding-inline: calc(40 / 1245 * 100vw)
  }

  .blog_page .mv_block__main_title {
    font-size: calc(54 / 1245 * 100vw);
    margin-top: calc(24 / 1245 * 100vw)
  }

  .blog_page .index_block_list {
    grid-template-columns: repeat(2, 1fr);
    gap: calc(40 / 1245 * 100vw);
    margin-top: calc(80 / 393 * 100vw)
  }

  .company_page .mv_block__inner {
    padding-inline: calc(40 / 1245 * 100vw)
  }

  .company_page .mv_block__main_title {
    font-size: calc(54 / 1245 * 100vw);
    margin-top: calc(24 / 1245 * 100vw)
  }

  .company_page .greeting_block__contents {
    margin-top: calc(40 / 1245 * 100vw)
  }

  .contact_complete_page .mv_block__inner {
    padding-inline: calc(40 / 1245 * 100vw)
  }

  .contact_complete_page .mv_block__main_title {
    font-size: calc(54 / 1245 * 100vw);
    margin-top: calc(24 / 1245 * 100vw)
  }

  .contact_page .mv_block__inner {
    padding-inline: calc(40 / 1245 * 100vw)
  }

  .contact_page .mv_block__main_title {
    font-size: calc(54 / 1245 * 100vw);
    margin-top: calc(24 / 1245 * 100vw)
  }

  .contact_page .contact_form_block__inner {
    padding-inline: calc(40 / 1245 * 100vw)
  }

  .contact_page .contact_form_block__text_area {
    flex-direction: column;
    align-items: center
  }

  .contact_page .contact_form_block__form {
    max-width: 800px
  }

  .contact_business_page .contact-business_block__inner {
    padding-inline: calc(40 / 1245 * 100vw)
  }

  .contact_business_page .contact-business_block__text_area {
    flex-direction: column;
    align-items: center
  }

  .contact_business_page .contact-business_block__form {
    max-width: 800px
  }

  .faq_page .mv_block__inner {
    padding-inline: calc(40 / 1245 * 100vw)
  }

  .faq_page .mv_block__main_title {
    font-size: calc(54 / 1245 * 100vw);
    margin-top: calc(24 / 1245 * 100vw)
  }

  .flow_page .mv_block__inner {
    padding-inline: calc(40 / 1245 * 100vw)
  }

  .flow_page .mv_block__main_title {
    font-size: calc(54 / 1245 * 100vw);
    margin-top: calc(24 / 1245 * 100vw)
  }

  .flow_page .flow_list::before {
    width: 250px;
    top: -104px
  }

  .index_page .feature_block__sub_img--03 {
    width: calc(450 / 1245 * 100vw);
    bottom: calc(0 / 1245 * 100vw);
    left: calc(-280 / 1245 * 100vw)
  }

  .index_page .blog_block__contents {
    grid-template-columns: repeat(2, 1fr)
  }

  .message_page .mv_block__inner {
    padding-inline: calc(40 / 1245 * 100vw)
  }

  .message_page .mv_block__main_title {
    font-size: calc(54 / 1245 * 100vw);
    margin-top: calc(24 / 1245 * 100vw)
  }

  .news_page .mv_block__inner {
    padding-inline: calc(40 / 1245 * 100vw)
  }

  .news_page .mv_block__main_title {
    font-size: calc(54 / 1245 * 100vw);
    margin-top: calc(24 / 1245 * 100vw)
  }

  .privacy_page .mv_block__inner {
    padding-inline: calc(40 / 1245 * 100vw)
  }

  .privacy_page .mv_block__main_title {
    font-size: calc(54 / 1245 * 100vw);
    margin-top: calc(24 / 1245 * 100vw)
  }

  .property-qualite_detail_page .breadcrumb_block {
    padding-top: calc(170 / 1245 * 100vw)
  }

  _::-webkit-full-page-media,
  _:future,
  :root .property_page .lead_block_nav_item_main__title {
    margin-bottom: 10px;
    font-size: 16px
  }

  .property-qualite_page .mv_block__inner {
    padding-inline: calc(40 / 1245 * 100vw)
  }

  .property-qualite_page .mv_block__main_title {
    font-size: calc(54 / 1245 * 100vw);
    margin-top: calc(24 / 1245 * 100vw)
  }

  _::-webkit-full-page-media,
  _:future,
  :root .property_page .lead_block_nav_item_main__title {
    margin-bottom: 10px;
    font-size: 16px
  }

  .property_page .mv_block__inner {
    padding-inline: calc(40 / 1245 * 100vw)
  }

  .property_page .mv_block__main_title {
    font-size: calc(54 / 1245 * 100vw);
    margin-top: calc(24 / 1245 * 100vw)
  }

  .property_page .lead_block_nav_item_main__text br {
    display: none
  }

  .property_page .search_block_head__title_01 {
    font-size: 34px
  }

  .property_page .search_block_head__title_02,
  .property_page .search_block_head__title_03 {
    font-size: 22px
  }

  .property_page .qualite_block_list {
    margin-top: 20px
  }

  _::-webkit-full-page-media,
  _:future,
  :root .property_page .lead_block_nav_item_main__title {
    margin-bottom: 10px;
    font-size: 16px
  }

  .shop_detail_page .mv_block__inner {
    padding-inline: calc(40 / 1245 * 100vw)
  }

  .shop_detail_page .mv_block__main_title {
    font-size: calc(54 / 1245 * 100vw);
    margin-top: calc(24 / 1245 * 100vw)
  }

  .shop-list_page .mv_block__inner {
    padding-inline: calc(40 / 1245 * 100vw)
  }

  .shop-list_page .mv_block__main_title {
    font-size: calc(54 / 1245 * 100vw);
    margin-top: calc(24 / 1245 * 100vw)
  }

  .shop_page .mv_block__inner {
    padding-inline: calc(40 / 1245 * 100vw)
  }

  .shop_page .mv_block__main_title {
    font-size: calc(54 / 1245 * 100vw);
    margin-top: calc(24 / 1245 * 100vw)
  }

  .shop_page .shop_block__map_img::before {
    width: 160px;
    bottom: -24px
  }

  .sitepolicy_page .mv_block__inner {
    padding-inline: calc(40 / 1245 * 100vw)
  }

  .sitepolicy_page .mv_block__main_title {
    font-size: calc(54 / 1245 * 100vw);
    margin-top: calc(24 / 1245 * 100vw)
  }
}

@media screen and (max-width:1244px) and (max-width:768px) {
  .inner {
    padding: calc(63 / 393 * 100vw) calc(30 / 393 * 100vw) calc(80 / 393 * 100vw)
  }

  .contact_block__inner {
    padding: calc(40 / 393 * 100vw) calc(30 / 393 * 100vw)
  }

  .contact_block__head {
    flex-direction: column;
    margin-top: calc(10 / 393 * 100vw)
  }

  .contact_block__head h4 {
    font-size: 2.2rem
  }

  .contact_block__head p {
    color: #fff;
    text-align: justify;
    font-size: .9375rem;
    font-weight: 600;
    line-height: 170%;
    letter-spacing: .0187rem;
    margin-top: calc(30 / 393 * 100vw)
  }

  .contact_block__contents {
    flex-direction: column;
    margin-top: calc(43 / 393 * 100vw);
    text-align: center
  }

  .contact_block__btn_wrapper {
    flex-direction: column;
    gap: calc(17 / 393 * 100vw)
  }

  .contact_block__btn a {
    width: 100%;
    font-size: 1rem;
    justify-content: center;
    padding: calc(13 / 393 * 100vw) calc(50 / 393 * 100vw);
    gap: calc(12 / 393 * 100vw)
  }

  .footer_block__inner {
    padding: calc(50 / 393 * 100vw) calc(30 / 393 * 100vw) 0
  }

  .footer_block__logo a p {
    font-size: 1.25rem
  }

  .footer_block__logo_img {
    width: 80%
  }

  .footer_block__info {
    margin-top: calc(12 / 393 * 100vw)
  }

  .footer_menu__list {
    grid-template-columns: repeat(2, 1fr);
    gap: 30px;
  }

  .footer_menu__item a {
    font-size: 1rem;
    letter-spacing: .04rem
  }

  .footer_menu__item ul li a {
    font-size: .875rem
  }

  .header_block {
    padding-inline: calc(20 / 393 * 100vw);
    align-items: center
  }

  .header_block__logo {
    padding: 0
  }

  .header_block__logo a p {
    font-size: calc(11 / 393 * 100vw);
    letter-spacing: -.48px
  }

  .header_block__logo a p span {
    font-size: calc(7 / 393 * 100vw);
    letter-spacing: .04rem
  }

  .header_block__logo_img {
    width: calc(48 / 393 * 100vw)
  }

  .mv_block__inner {
    padding: 0 calc(30 / 393 * 100vw)
  }

  .mv_block__main_title {
    font-size: calc(32 / 393 * 100vw);
    margin-top: calc(20 / 393 * 100vw)
  }

  .recommend_sub_block__inner {
    padding: calc(50 / 393 * 100vw) calc(30 / 393 * 100vw) calc(80 / 393 * 100vw)
  }

  .recommend_block__inner {
    padding: calc(50 / 393 * 100vw) calc(30 / 393 * 100vw) 0
  }

  .about_page .mv_block__inner {
    padding: 0 calc(30 / 393 * 100vw)
  }

  .about_page .mv_block__main_title {
    font-size: calc(32 / 393 * 100vw);
    margin-top: calc(20 / 393 * 100vw)
  }

  .blog_page .mv_block__inner {
    padding: 0 calc(30 / 393 * 100vw)
  }

  .blog_page .mv_block__main_title {
    font-size: calc(32 / 393 * 100vw);
    margin-top: calc(20 / 393 * 100vw)
  }

  .blog_page .index_block_list {
    grid-template-columns: repeat(1, 1fr);
    margin-top: 0;
    gap: calc(60 / 393 * 100vw)
  }

  .company_page .mv_block__inner {
    padding: 0 calc(30 / 393 * 100vw)
  }

  .company_page .mv_block__main_title {
    font-size: calc(32 / 393 * 100vw);
    margin-top: calc(20 / 393 * 100vw)
  }

  .company_page .greeting_block__contents {
    margin: calc(50 / 393 * 100vw) calc(50% + (30 / 393 * 100vw) - 50vw) 0;
    width: calc(363 / 393 * 100vw);
    padding: calc(48 / 393 * 100vw) calc(30 / 393 * 100vw) calc(50 / 393 * 100vw);
    border-radius: 10px
  }

  .contact_complete_page .mv_block__inner {
    padding: 0 calc(30 / 393 * 100vw)
  }

  .contact_complete_page .mv_block__main_title {
    font-size: calc(32 / 393 * 100vw);
    margin-top: calc(20 / 393 * 100vw)
  }

  .contact_complete_page .contact_complete_block__btn {
    max-width: initial;
    margin: 40px auto 0
  }

  .contact_page .mv_block__inner {
    padding: 0 calc(30 / 393 * 100vw)
  }

  .contact_page .mv_block__main_title {
    font-size: calc(32 / 393 * 100vw);
    margin-top: calc(20 / 393 * 100vw)
  }

  .contact_page .contact_form_block__inner {
    padding: calc(50 / 393 * 100vw) calc(30 / 393 * 100vw) calc(80 / 393 * 100vw)
  }

  .contact_page .contact_form_block__form {
    padding: calc(30 / 393 * 100vw) calc(20 / 393 * 100vw) calc(60 / 393 * 100vw);
    gap: 24px
  }

  .contact_business_page .contact-business_block__inner {
    padding: calc(50 / 393 * 100vw) calc(30 / 393 * 100vw) calc(80 / 393 * 100vw)
  }

  .contact_business_page .contact-business_block__form {
    padding: calc(30 / 393 * 100vw) calc(20 / 393 * 100vw) calc(60 / 393 * 100vw);
    gap: 24px
  }

  .faq_page .mv_block__inner {
    padding: 0 calc(30 / 393 * 100vw)
  }

  .faq_page .mv_block__main_title {
    font-size: calc(32 / 393 * 100vw);
    margin-top: calc(20 / 393 * 100vw)
  }

  .flow_page .mv_block__inner {
    padding: 0 calc(30 / 393 * 100vw)
  }

  .flow_page .mv_block__main_title {
    font-size: calc(32 / 393 * 100vw);
    margin-top: calc(20 / 393 * 100vw)
  }

  .flow_page .flow_list::before {
    max-width: initial;
    width: calc(236 / 393 * 100vw);
    top: calc(-100 / 393 * 100vw);
    right: 0
  }

  .index_page .blog_block__contents {
    grid-template-columns: repeat(1, 1fr);
    margin-top: calc(47 / 393 * 100vw);
    gap: calc(57 / 393 * 100vw)
  }

  .message_page .mv_block__inner {
    padding: 0 calc(30 / 393 * 100vw)
  }

  .message_page .mv_block__main_title {
    font-size: calc(32 / 393 * 100vw);
    margin-top: calc(20 / 393 * 100vw)
  }

  .news_page .mv_block__inner {
    padding: 0 calc(30 / 393 * 100vw)
  }

  .news_page .mv_block__main_title {
    font-size: calc(32 / 393 * 100vw);
    margin-top: calc(20 / 393 * 100vw)
  }

  .page_404_block__btn {
    margin-top: calc(40 / 393 * 100vw);
    max-width: 292px;
    margin: 40px auto 0
  }

  .privacy_page .mv_block__inner {
    padding: 0 calc(30 / 393 * 100vw)
  }

  .privacy_page .mv_block__main_title {
    font-size: calc(32 / 393 * 100vw);
    margin-top: calc(20 / 393 * 100vw)
  }

  .property-qualite_page .mv_block__inner {
    padding: 0 calc(30 / 393 * 100vw)
  }

  .property-qualite_page .mv_block__main_title {
    font-size: calc(32 / 393 * 100vw);
    margin-top: calc(20 / 393 * 100vw)
  }

  .property-qualite_page .qualite_block_list {
    margin-top: calc(60 / 393 * 100vw);
    grid-template-columns: repeat(1, 1fr);
    gap: calc(50 / 393 * 100vw);
    margin-top: calc(40 / 393 * 100vw)
  }

  .property_page .mv_block__inner {
    padding: 0 calc(30 / 393 * 100vw)
  }

  .property_page .mv_block__main_title {
    font-size: calc(32 / 393 * 100vw);
    margin-top: calc(20 / 393 * 100vw)
  }

  .property_page .search_block_head__title_01 {
    margin-right: calc(2 / 393 * 100vw);
    font-size: calc(28 / 393 * 100vw)
  }

  .property_page .search_block_head__title_02,
  .property_page .search_block_head__title_03 {
    font-size: calc(18 / 393 * 100vw)
  }

  .property_page .qualite_block_list {
    margin-top: calc(60 / 393 * 100vw)
  }

  .shop_detail_page .mv_block__inner {
    padding: 0 calc(30 / 393 * 100vw)
  }

  .shop_detail_page .mv_block__main_title {
    font-size: calc(32 / 393 * 100vw);
    margin-top: calc(20 / 393 * 100vw)
  }

  .shop-list_page .mv_block__inner {
    padding: 0 calc(30 / 393 * 100vw)
  }

  .shop-list_page .mv_block__main_title {
    font-size: calc(32 / 393 * 100vw);
    margin-top: calc(20 / 393 * 100vw)
  }

  .shop_page .mv_block__inner {
    padding: 0 calc(30 / 393 * 100vw)
  }

  .shop_page .mv_block__main_title {
    font-size: calc(32 / 393 * 100vw);
    margin-top: calc(20 / 393 * 100vw)
  }

  .shop_page .shop_block__map_img::before {
    max-width: initial;
    width: calc(86 / 393 * 100vw);
    bottom: calc(-26 / 393 * 100vw);
    right: calc(30 / 393 * 100vw)
  }

  .sitepolicy_page .mv_block__inner {
    padding: 0 calc(30 / 393 * 100vw)
  }

  .sitepolicy_page .mv_block__main_title {
    font-size: calc(32 / 393 * 100vw);
    margin-top: calc(20 / 393 * 100vw)
  }
}

@media (hover:hover) and (pointer:fine) {
  .company_page .information_banner_block__item:hover {
    opacity: .6
  }

  .company_page .access_block__link:hover {
    opacity: .6
  }

  .company_page .location_banner_block:hover {
    opacity: .6
  }
}

@media (prefers-reduced-motion:no-preference) {
  html:focus-within {
    scroll-behavior: smooth
  }

  :focus-visible {
    transition: outline-offset 145ms cubic-bezier(.25, 0, .4, 1)
  }

  :where(:not(:active)):focus-visible {
    transition-duration: .25s
  }
}
