@charset "UTF-8";
/* リキッドレイアウト対応のための設定 */
@import url("https://fonts.googleapis.com/css2?family=Shippori+Mincho+B1:wght@400;500;600;700;800&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Cinzel:wght@400&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;500;600;700&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Shippori+Mincho:wght@400;700&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Junge&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Inter:wght@700&display=swap");
body {
  color: #333333;
}

/* -------------------------------------------- */
/* ------------- Shippori Mincho B1 ----------- */
/* -------------------------------------------- */
/* -------------------------------------------- */
/* ------------------ Cinzel ----------------- */
/* -------------------------------------------- */
/* -------------------------------------------- */
/* --------------- Noto Sans JP --------------- */
/* -------------------------------------------- */
/* -------------------------------------------- */
/* ------------- Shippori Mincho -------------- */
/* -------------------------------------------- */
/* -------------------------------------------- */
/* ------------------ Junge ------------------- */
/* -------------------------------------------- */
/* -------------------------------------------- */
/* ------------------ Inter ------------------- */
/* -------------------------------------------- */
body {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 400;
}

/*  PCとSPの表示非表示の切り替え */
/*(md)px以上で表示*/
.pc-only {
  display: none;
}
@media screen and (min-width: 768px) {
  .pc-only {
    display: block;
  }
}

/*モバイルのみ表示*/
@media screen and (min-width: 768px) {
  .sp-only {
    display: none;
  }
}

/*画像の縦横比設定*/
img {
  width: 100%;
  height: auto;
  display: block;
}

/* aタグのスタイルリセット*/
a {
  text-decoration: none;
}

/* マウスホバーがあるデバイスでのアニメーション */
@media (any-hover: hover) {
  a {
    transition: opacity 0.3s;
  }
  a:hover {
    opacity: 0.8;
  }
}
/* pc幅での電話発信しない */
@media (any-hover: hover) {
  a[href^="tel:"] {
    pointer-events: none;
  }
}
.anchor {
  padding-top: 5rem;
  margin-top: -5rem;
}

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

/* スマホ専用の改行タグ */
.sp-only {
  display: block;
}
@media screen and (min-width: 768px) {
  .sp-only {
    display: none;
  }
}

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

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

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

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

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

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

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

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

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

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

/* Blur images when they have no alt attribute */
img:not([alt]) {
  filter: blur(10px);
}

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

textarea {
  resize: vertical;
}

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

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

.inner {
  width: 100%;
  padding-right: 15px;
  padding-left: 15px;
  margin-inline: auto;
  max-width: 37.5rem;
}
@media screen and (min-width: 768px) {
  .inner {
    max-width: 1250px;
    padding-right: 25px;
    padding-left: 25px;
  }
}

.footer {
  background-color: #000000;
  padding-block: 3.125rem;
}
@media screen and (min-width: 768px) {
  .footer {
    padding-block: 6.625rem;
  }
}

@media screen and (min-width: 768px) {
  .footer__inner {
    max-width: 83.5rem;
  }
}

.footer__container {
  display: flex;
  flex-direction: column;
  gap: 2.5rem;
}
@media screen and (min-width: 768px) {
  .footer__container {
    flex-direction: row-reverse;
    justify-content: flex-end;
    gap: 1.6875rem;
  }
}

.footer__nav {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  row-gap: 1.875rem;
  -moz-column-gap: 2.3125rem;
       column-gap: 2.3125rem;
}
@media screen and (min-width: 768px) {
  .footer__nav {
    display: flex;
    gap: 1.6875rem;
  }
}

.footer__nav-title {
  font-family: "Inter", sans-serif;
  font-weight: 700;
  font-size: 1rem;
  line-height: 1.6;
}

.footer__nav-title a {
  color: #FFFFFF;
}

.footer__nav-item {
  font-size: 0.875rem;
  line-height: 1.6;
  margin-top: 0.25rem;
  margin-left: 0.4375rem;
}
@media screen and (min-width: 768px) {
  .footer__nav-item {
    font-size: 0.8125rem;
  }
}

.footer__nav-item a {
  color: #FFFFFF;
}

@media screen and (min-width: 768px) {
  .footer__company {
    width: 21.5rem;
  }
}

.footer__company-name {
  text-align: center;
  color: #FFFFFF;
  font-weight: 700;
  font-size: 1.25rem;
  line-height: 1.6;
}
@media screen and (min-width: 768px) {
  .footer__company-name {
    text-align: left;
  }
}

.footer__company-info {
  margin-top: 0.8125rem;
  text-align: center;
  font-size: 0.8125rem;
  line-height: 1.6;
  color: #FFFFFF;
}
@media screen and (min-width: 768px) {
  .footer__company-info {
    text-align: left;
  }
}

.footer__address {
  margin-top: 0.8125rem;
  text-align: center;
  font-size: 0.875rem;
  line-height: 1.6;
  color: #FFFFFF;
}
@media screen and (min-width: 768px) {
  .footer__address {
    text-align: left;
  }
}

.footer__sns {
  margin-top: 0.625rem;
  display: flex;
  justify-content: center;
  align-items: center;
}
@media screen and (min-width: 768px) {
  .footer__sns {
    justify-content: flex-start;
  }
}

.footer__copyright {
  margin-top: 1.625rem;
  margin-bottom: 3.125rem;
  text-align: center;
  color: #FFFFFF;
  font-family: "Inter", sans-serif;
  font-size: 0.6875rem;
  line-height: 1.6;
}
@media screen and (min-width: 768px) {
  .footer__copyright {
    margin-top: 2.625rem;
    font-size: 0.875rem;
    margin-bottom: initial;
  }
}

.header {
  height: 5rem;
  background: linear-gradient(360deg, rgba(0, 0, 0, 0) 0%, #000000 160.62%);
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 9999;
  transition: background 0.3s;
}
@media screen and (min-width: 768px) {
  .header {
    background: linear-gradient(180deg, #000000 -102.45%, rgba(0, 0, 0, 0) 65.03%);
  }
}

.header.change-color {
  background: rgba(255, 255, 255, 0.9);
  backdrop-filter: blur(10px);
}

.header__inner {
  padding-inline: 0.9375rem;
  display: flex;
  align-items: center;
  justify-content: space-between;
  height: inherit;
}
@media screen and (min-width: 768px) {
  .header__inner {
    padding-inline: 2.0625rem 0;
    margin-inline: auto 0;
  }
}

.header__logo {
  font-family: "Cinzel", serif;
  font-size: 1.875rem;
  line-height: 1.4;
  width: 200px;
}

.header__logo-link {
  color: #FFFFFF;
  transition: color 0.3s;
}

.header__logo-link.change-color {
  color: #333333;
}

.header__logo-link .logo_default {
  opacity: 1;
  transition: 0.3s;
}

.header__logo-link.change-color .logo_default {
  display: none;
  opacity: 0;
}

.header__logo-link .logo_scrolled {
  display: none;
  opacity: 0;
  transition: 0.3s;
}

.header__logo-link.change-color .logo_scrolled {
  display: block;
  opacity: 1;
}

.header__container {
  display: flex;
  gap: 1.4375rem;
  align-items: center;
  height: inherit;
}
@media screen and (min-width: 768px) {
  .header__container {
    gap: 2.5625rem;
  }
}

.header__nav {
  height: inherit;
}

.header__list {
  display: flex;
  gap: 2.25rem;
  align-items: center;
  height: inherit;
}

.header__item {
  height: inherit;
  position: relative;
}

.header__item--has-dropdown:hover .header__dropdown {
  opacity: 1;
  visibility: visible;
  transform: translateY(0);
}

.header__dropdown {
  position: absolute;
  top: 100%;
  left: 0;
  background: rgba(255, 255, 255, 0.95);
  backdrop-filter: blur(10px);
  border-radius: 0.5rem;
  padding: 1rem 0;
  min-width: 12.5rem;
  box-shadow: 0 0.25rem 1.25rem rgba(51, 51, 51, 0.1);
  opacity: 0;
  visibility: hidden;
  transform: translateY(-10px);
  transition: all 0.3s ease;
  z-index: 1000;
}

.header__dropdown-item {
  list-style: none;
}

.header__dropdown-link {
  display: block;
  padding: 0.75rem 1.25rem;
  color: #333333;
  font-family: "Shippori Mincho B1", serif;
  font-size: 0.875rem;
  line-height: 1.6;
  text-decoration: none;
  transition: background-color 0.3s ease;
}

.header__dropdown-link:hover {
  background-color: rgba(51, 51, 51, 0.05);
}

.header__dropdown-item--has-submenu {
  position: relative;
}

.header__dropdown-item--has-submenu:hover .header__submenu {
  opacity: 1;
  visibility: visible;
  transform: translateX(0);
}

.header__submenu {
  position: absolute;
  top: 0;
  left: 100%;
  background: rgba(255, 255, 255, 0.95);
  backdrop-filter: blur(10px);
  border-radius: 0.5rem;
  padding: 1rem 0;
  min-width: 13.75rem;
  box-shadow: 0 0.25rem 1.25rem rgba(51, 51, 51, 0.1);
  opacity: 0;
  visibility: hidden;
  transform: translateX(-10px);
  transition: all 0.3s ease;
  z-index: 1001;
}

.header__submenu-item {
  list-style: none;
}

.header__submenu-link {
  display: block;
  padding: 0.75rem 1.25rem;
  color: #333333;
  font-family: "Shippori Mincho B1", serif;
  font-size: 0.875rem;
  line-height: 1.6;
  text-decoration: none;
  transition: background-color 0.3s ease;
}

.header__submenu-link:hover {
  background-color: rgba(51, 51, 51, 0.05);
}

.header__link {
  height: inherit;
  display: flex;
  flex-direction: column;
  justify-content: center;
  color: #FFFFFF;
  font-family: "Noto Sans JP";
  font-size: 1rem;
  line-height: 1.6;
  transition: color 0.3s;
}

.header__link.change-color {
  color: #333333;
}

.header__contact {
  height: inherit;
}

.header__contact-link {
  display: block;
  background-color: #333333;
  height: inherit;
  padding: 0.875rem 0.6875rem 0.9375rem;
}

.header__contact-link img {
  width: 1.75rem;
  height: 1.75rem;
  margin-inline: auto;
}

.header__contact-text {
  color: #FFFFFF;
  font-family: "Not sans jp";
  font-size: 1rem;
  line-height: 1.6;
}

.open-btn {
  width: 1.875rem;
  padding: 0;
  z-index: 9999;
}

.open-btn span {
  display: block;
  background: #FFFFFF;
  width: 1.875rem;
  height: 0.125rem;
  border-radius: 0.625rem;
  transition: transform 0.3s ease;
  position: relative;
  z-index: 11;
}

.open-btn.change-color span {
  background-color: #333333;
}

.open-btn span:nth-of-type(2) {
  margin-block: 0.5625rem;
}

.open-btn.is-openSP span:nth-of-type(1) {
  transform: rotate(45deg);
  top: 0.8125rem;
  background-color: #333333;
}

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

.open-btn.is-openSP span:nth-of-type(3) {
  transform: rotate(-45deg);
  top: -0.5625rem;
  background-color: #333333;
}

.sp-menu {
  position: fixed;
  z-index: 1000;
  top: 0;
  left: 0;
  width: 100%;
  height: 100svh;
  transition: transform 0.3s;
  transform: translateX(100%);
  overflow-y: scroll;
  max-width: 100vi;
  background-color: #FFFFFF;
}

.sp-menu.is-openSP {
  transform: translateX(0);
}

.sp-menu__logo {
  font-family: "Cinzel", serif;
  font-size: 1.875rem;
  line-height: 1.4;
}

.sp-menu__logo-link {
  color: #FFFFFF;
}

.sp-menu__list {
  margin-top: 6.25rem;
  display: grid;
  gap: 1.5rem;
  text-align: center;
}

.sp-menu__item {
  position: relative;
}

.sp-menu__item--has-dropdown .sp-menu__dropdown {
  max-height: 0;
  overflow: hidden;
  transition: max-height 0.3s ease;
}

.sp-menu__item--has-dropdown.is-open .sp-menu__dropdown {
  max-height: 25rem;
}

.sp-menu__dropdown-link {
  color: #333333;
  font-size: 0.875rem;
  opacity: 0.8;
  text-decoration: none;
  display: block;
  padding: 0.5rem 0;
}

.sp-menu__dropdown-link:hover {
  opacity: 1;
}

.sp-menu__dropdown-item--has-submenu .sp-menu__submenu {
  max-height: 0;
  overflow: hidden;
  transition: max-height 0.3s ease;
}

.sp-menu__dropdown-item--has-submenu.is-open .sp-menu__submenu {
  max-height: 12.5rem;
}

.sp-menu__submenu-item {
  margin-bottom: 0.5rem;
}

.sp-menu__submenu-link {
  color: #333333;
  font-size: 0.75rem;
  opacity: 0.7;
  text-decoration: none;
  display: block;
  padding: 0.375rem 0;
}

.sp-menu__submenu-link:hover {
  opacity: 1;
}

.sp-menu__item-link {
  color: #333333;
  font-size: 1rem;
}

.sp-menu__sns {
  width: 2.5rem;
  height: 2.5rem;
  margin-inline: auto;
  margin-top: 1.5rem;
}

.sp-menu__contact {
  margin-top: 1.5rem;
}

.button {
  display: block;
  background-color: #1E1701;
  text-align: center;
  color: #FFFFFF;
  padding-block: 0.9375rem 0.875rem;
  font-size: 0.875rem;
  line-height: 1.6;
  width: 20rem;
  max-width: 100%;
  margin-inline: auto;
}

.fv {
  position: relative;
}

.fv__image {
  aspect-ratio: 375/667;
  width: 100%;
  height: 100svh;
}
@media screen and (min-width: 768px) {
  .fv__image {
    aspect-ratio: 1440/900;
  }
}

.fv__image img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  display: block;
}
@media screen and (min-width: 768px) {
  .fv__image img {
    -o-object-fit: cover;
       object-fit: cover;
  }
}

.fv__catch {
  position: absolute;
  bottom: 50%;
  left: 0.9375rem;
}
@media screen and (min-width: 768px) {
  .fv__catch {
    bottom: 12.5rem;
    left: 7.625rem;
  }
}

.fv__catch-primary {
  display: inline;
  color: #FFFFFF;
  font-family: "Shippori Mincho B1", serif;
  font-size: 1.5rem;
  line-height: 1.5;
  letter-spacing: 0.05em;
  background-color: rgba(90, 68, 6, 0.4);
  -webkit-box-decoration-break: clone;
          box-decoration-break: clone;
  padding-inline: 0.25rem;
  font-weight: 400;
}
@media screen and (min-width: 768px) {
  .fv__catch-primary {
    font-size: 2.5rem;
  }
}

.fv__catch-text {
  font-family: "Cinzel", serif;
  font-size: 0.75rem;
  line-height: 1.5;
  letter-spacing: 0.05em;
  color: #FFFFFF;
  text-transform: uppercase;
}
@media screen and (min-width: 768px) {
  .fv__catch-text {
    font-size: 1.125rem;
  }
}

.fv__arrows {
  display: none;
}
@media screen and (min-width: 768px) {
  .fv__arrows {
    display: flex;
    align-items: center;
    justify-content: space-between;
    position: absolute;
    width: 100%;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    z-index: 1;
    max-width: 81rem;
  }
}

.fv__arrow-prev {
  width: 1.375rem;
  height: 1.375rem;
  border-top: 2px solid #FFFFFF;
  border-left: 2px solid #FFFFFF;
  transform: rotate(-45deg);
}

.fv__arrow-next {
  width: 1.375rem;
  height: 1.375rem;
  border-top: 2px solid #FFFFFF;
  border-right: 2px solid #FFFFFF;
  transform: rotate(45deg);
}

.fv__pagination {
  gap: 0.6875rem;
  z-index: 1;
  margin-top: -8.125rem;
  position: relative;
}
@media screen and (min-width: 768px) {
  .fv__pagination {
    gap: 1.0625rem;
    margin-top: -4.75rem;
  }
}

.fv__pagination li:nth-child(n+6) {
  display: none;
}

.fv__page {
  background-color: rgba(255, 255, 255, 0.15);
  width: 1rem;
  height: 1rem;
  transition: 0.5s background-color;
  border-radius: 50%;
}

.fv__page.is-active {
  background-color: rgba(255, 255, 255, 0.9);
  opacity: 1;
}

.fv__news {
  position: absolute;
  bottom: 3.4375rem;
  right: 1rem;
  color: #FFFFFF;
  max-width: 12.375rem;
}
@media screen and (min-width: 768px) {
  .fv__news {
    bottom: 3.6875rem;
    right: 7.5rem;
    max-width: 22.0625rem;
  }
}

.fv__news-heading {
  font-family: "Cinzel", serif;
  font-size: 1.5625rem;
  line-height: 1.6;
  letter-spacing: 0.03em;
  text-transform: uppercase;
}
@media screen and (min-width: 768px) {
  .fv__news-heading {
    font-size: 1.25rem;
  }
}

.fv__news-date {
  margin-top: 0.75rem;
  font-size: 0.8125rem;
  line-height: 1.6;
  padding-right: 0.5rem;
  border-right: 1px solid #FFFFFF;
}

.fv__news-category {
  display: inline;
  font-size: 0.8125rem;
  line-height: 1.6;
}

.fv__news-title {
  font-size: 0.75rem;
  line-height: 1.6;
}
@media screen and (min-width: 768px) {
  .fv__news-title {
    font-size: 0.875rem;
    margin-top: 0.4375rem;
  }
}

.fv__news-arrows {
  display: flex;
  align-items: center;
  justify-content: space-between;
  position: absolute;
  width: 100%;
  bottom: -0.875rem;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: 1;
}
@media screen and (min-width: 768px) {
  .fv__news-arrows {
    bottom: -1.25rem;
  }
}

.fv__news-arrow-prev {
  width: 0.875rem;
  height: 0.875rem;
  border-top: 2px solid #FFFFFF;
  border-left: 2px solid #FFFFFF;
  transform: rotate(-45deg);
}
@media screen and (min-width: 768px) {
  .fv__news-arrow-prev {
    width: 0.875rem;
    height: 0.875rem;
  }
}

.fv__news-arrow-next {
  width: 0.875rem;
  height: 0.875rem;
  border-top: 2px solid #FFFFFF;
  border-right: 2px solid #FFFFFF;
  transform: rotate(45deg);
}
@media screen and (min-width: 768px) {
  .fv__news-arrow-next {
    width: 0.875rem;
    height: 0.875rem;
  }
}

.fv__news-progress {
  background-color: rgba(255, 255, 255, 0.2);
  margin-top: 1.25rem;
  width: 90%;
  margin-inline: auto;
}

.fv__news-progress-bar {
  background-color: #FFFFFF;
  height: 0.0625rem;
  transition: width 1000ms ease;
  width: 0;
}

.comment {
  text-align: center;
  background-color: #333333;
  padding-block: 1.25rem;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 0.875rem;
  line-height: 1.5;
  letter-spacing: 0.03em;
  color: #FFFFFF;
  padding-inline: 0.5rem;
  margin-top: 7rem;
}
@media screen and (min-width: 768px) {
  .comment {
    font-size: 1.125rem;
    padding-block: 1.75rem;
    line-height: 2;
    margin-top: 3.625rem;
  }
}

.feature {
  position: relative;
  overflow-x: clip;
  padding-block: 4.375rem 6.1875rem;
}
@media screen and (min-width: 768px) {
  .feature {
    padding-block: 4.9375rem 11.5rem;
  }
}

.feature::before {
  content: "";
  position: absolute;
  background-image: url(../image/bg/feature-bg.jpg);
  background-size: 100% 100%;
  background-position: center;
  background-repeat: no-repeat;
  width: 27.0625rem;
  height: 23.625rem;
  top: 8.5rem;
  left: -9.125rem;
  z-index: -1;
}
@media screen and (min-width: 768px) {
  .feature::before {
    width: 41.625rem;
    height: 36.3125rem;
    top: 7.9375rem;
    left: -6.25rem;
  }
}

.feature::after {
  content: "";
  position: absolute;
  background-image: url(../image/bg/rectangle-bgSP.jpg);
  background-size: 100% 100%;
  background-position: center;
  background-repeat: no-repeat;
  width: 100%;
  height: 98.5rem;
  top: -0.625rem;
  left: 0;
  z-index: -2;
}
@media screen and (min-width: 768px) {
  .feature::after {
    background-image: url(../image/bg/rectangle-bg.jpg);
    height: 99.25rem;
    top: -1.25rem;
    left: -1.875rem;
  }
}

@media screen and (min-width: 768px) {
  .feature__inner {
    max-width: 88.75rem;
  }
}

.feature__list {
  margin-top: 1.875rem;
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
  justify-content: flex-start;
  margin-inline: auto;
  max-width: 21.4375rem;
  gap: 0.8125rem;
}
@media screen and (min-width: 768px) {
  .feature__list {
    margin-top: 6.5625rem;
    gap: 1.25rem;
    justify-content: space-between;
    max-width: initial;
  }
}

.feature__item {
  width: 100%;
  max-width: 10.3125rem;
  background-color: #FFFFFF;
  padding: 0.8125rem 0.8125rem 1.375rem;
  min-height: 12.25rem;
}
@media screen and (min-width: 768px) {
  .feature__item {
    max-width: 16.125rem;
    padding: 0.8125rem 1.375rem 2.0625rem;
    min-height: 19rem;
  }
}

.feature__number {
  display: block;
  font-family: "Shippori Mincho", serif;
  font-size: 1.25rem;
  line-height: 1.35;
  color: #C0A351;
  text-align: center;
}
@media screen and (min-width: 768px) {
  .feature__number {
    font-size: 1.625rem;
  }
}

.feature__image-box {
  margin-top: 0.1875rem;
  aspect-ratio: 139/82;
}
@media screen and (min-width: 768px) {
  .feature__image-box {
    aspect-ratio: 212/141;
  }
}

.feature__image-box img {
  -o-object-fit: cover;
     object-fit: cover;
  height: 100%;
}

.feature__text {
  margin-top: 0.8125rem;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 0.8125rem;
  line-height: 1.5;
  text-align: center;
}
@media screen and (min-width: 768px) {
  .feature__text {
    margin-top: 0.5rem;
    font-size: 1.0625rem;
  }
}

.feature__button {
  margin-top: 3.125rem;
}
@media screen and (min-width: 768px) {
  .feature__button {
    margin-top: 8.4375rem;
  }
}

.section__title {
  text-align: center;
}

.section__title-en {
  display: block;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 0.8125rem;
  line-height: 1.6;
  letter-spacing: 0.1em;
  background: #322e21;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  font-weight: 400;
}
@media screen and (min-width: 768px) {
  .section__title-en {
    font-size: 1rem;
  }
}

.section__title-ja {
  display: block;
  color: #322e21;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 1.9375rem;
  line-height: 1;
  letter-spacing: 0.1em;
  font-weight: 400;
  font-weight: 400;
}
@media screen and (min-width: 768px) {
  .section__title-ja {
    font-family: "Noto Sans JP", sans-serif;
    font-size: 2.5rem;
    line-height: 1.6;
    letter-spacing: 0.05em;
  }
}

.section__title-ja span {
  font-size: 1.375rem;
}
@media screen and (min-width: 768px) {
  .section__title-ja span {
    font-size: 1.875rem;
  }
}

@media screen and (min-width: 768px) {
  .section__title.section__title--flow {
    text-align: left;
    margin-left: 6.25rem;
  }
}

.section__title.section__title--contact .section__title-ja {
  color: #FFFFFF;
}

.section__title.section__title--contact .section__title-en {
  background: initial;
  color: #FFFFFF;
  -webkit-text-fill-color: initial;
}

.section__title-page-ja {
  font-size: 2rem;
  line-height: 2;
  border-bottom: 1px solid #D9D9D9;
  padding-bottom: 0.25rem;
}

.section__title.section__title--event .section__title-en {
  background: initial;
  color: #C0A351;
  -webkit-text-fill-color: initial;
}

.section__title-ja-sub {
  font-size: 1.375rem;
  line-height: 1.35;
  font-weight: 400;
  color: #C0A351;
  font-family: "Shippori Mincho B1", serif;
}
@media screen and (min-width: 768px) {
  .section__title-ja-sub {
    font-size: 1.5rem;
  }
}

.section__title-ja-sub span {
  font-size: 1.125rem;
}
@media screen and (min-width: 768px) {
  .section__title-ja-sub span {
    font-size: 1.25rem;
  }
}

.event {
  position: relative;
  padding-top: 3.75rem;
}
@media screen and (min-width: 768px) {
  .event {
    padding-top: 6.25rem;
  }
}

.event::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  background-image: url(../image/bg/event-bg.jpg);
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  width: 100%;
  height: 20.375rem;
  z-index: -1;
}

.event__list {
  overflow-x: scroll;
  margin-top: 1.875rem;
  display: grid;
  grid-template-columns: repeat(4, 14.0625rem);
  gap: 1.25rem;
}
@media screen and (min-width: 768px) {
  .event__list {
    grid-template-columns: repeat(4, 17.5rem);
    gap: 1.5625rem;
    margin-top: 3.4375rem;
  }
}

.event__list::-webkit-scrollbar {
  height: 1px;
  background: transparent;
}

.event__list::-webkit-scrollbar-thumb {
  background: #C0A351;
}

.event__list::-webkit-scrollbar-track {
  background: transparent;
}

.event__content {
  display: flex;
  flex-direction: column;
  background-color: #FFFFFF;
  box-shadow: 0px 0px 50.27px 0px rgba(0, 0, 0, 0.04);
  padding-inline: 0.8125rem 0.375rem;
  padding-bottom: 0.625rem;
}
@media screen and (min-width: 768px) {
  .event__content {
    padding-bottom: 2rem;
  }
}

.event__labels {
  display: flex;
  gap: 0.375rem;
}

.event__label {
  font-size: 0.75rem;
  line-height: 1.3;
  background-color: #C0A351;
  color: #FFFFFF;
  padding-block: 0.1875rem;
  margin-top: 0.625rem;
  padding-inline: 0.625rem;
}
@media screen and (min-width: 768px) {
  .event__label {
    padding-inline: 0.75rem 0.6875rem;
    font-size: 0.9375rem;
    margin-top: 0.875rem;
  }
}

.event__date {
  font-weight: 600;
  font-size: 0.9375rem;
  line-height: 1.3;
  color: #333333;
  margin-top: 0.625rem;
}
@media screen and (min-width: 768px) {
  .event__date {
    font-size: 0.75rem;
    line-height: 1.4;
    order: 1;
  }
}

.event__text {
  font-weight: 400;
  font-size: 0.875rem;
  line-height: 1.3;
  margin-top: 0.625rem;
  color: #333333;
}
@media screen and (min-width: 768px) {
  .event__text {
    font-weight: 500;
    line-height: 1.6;
    order: 2;
  }
}

.event__button {
  margin-top: 3.125rem;
}
@media screen and (min-width: 768px) {
  .event__button {
    margin-top: 2.9375rem;
    order: 3;
  }
}

.lineup {
  margin-top: 4.375rem;
}
@media screen and (min-width: 768px) {
  .lineup {
    margin-top: 115;
  }
}

.lineup__list {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  margin-top: 1.875rem;
  text-align: center;
}
@media screen and (min-width: 768px) {
  .lineup__list {
    grid-template-columns: repeat(6, 1fr);
    margin-top: 3.125rem;
  }
}

.lineup__item {
  position: relative;
}

@media screen and (min-width: 768px) {
  .lineup__item:nth-child(1) {
    grid-column: 1/4;
  }
}

@media screen and (min-width: 768px) {
  .lineup__item:nth-child(2) {
    grid-column: 4/7;
  }
}

@media screen and (min-width: 768px) {
  .lineup__item:nth-child(3) {
    grid-column: 1/3;
  }
}

@media screen and (min-width: 768px) {
  .lineup__item:nth-child(4) {
    grid-column: 3/5;
  }
}

.lineup__item:nth-child(5) {
  grid-column: 1/3;
  height: 50%;
}
@media screen and (min-width: 768px) {
  .lineup__item:nth-child(5) {
    grid-column: 5/7;
    height: initial;
  }
}

.lineup__item:nth-child(5) .lineup__image-box {
  height: 100%;
  width: 100%;
}

.lineup__item::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.8);
  opacity: 0;
  transition: opacity 0.3s ease;
  z-index: 1;
  pointer-events: none;
}

.lineup__item:hover::before {
  opacity: 1;
}

.lineup__item::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
  width: 100%;
  height: 90%;
  background-color: rgba(0, 0, 0, 0.5);
  z-index: 0;
}
@media screen and (min-width: 768px) {
  .lineup__item::after {
    height: 50%;
  }
}

.lineup__image-box {
  aspect-ratio: 1/1;
}
@media screen and (min-width: 768px) {
  .lineup__image-box {
    aspect-ratio: 480/333;
  }
}

.lineup__image-box img {
  -o-object-fit: cover;
     object-fit: cover;
  height: 100%;
}

.lineup__content {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 100%;
  z-index: 1;
}

.lineup__title {
  color: #FFFFFF;
  font-weight: 400;
}

.lineup__title-ja {
  font-family: "Shippori Mincho B1", serif;
  font-size: 1.3125rem;
  line-height: 1.35;
  text-align: center;
}
.lineup__title-en {
  font-family: "Shippori Mincho B1", serif;
  font-weight: 600;
  font-size: 1.3125rem;
  line-height: 1.35;
  text-align: center;
}

.lineup__subtitle {
  font-family: "Shippori Mincho B1", serif;
  font-weight: 600;
  font-size: 0.875rem;
  line-height: 1.35;
  text-align: center;
  color: #FFFFFF;
}

.lineup__price {
  font-size: 1.25rem;
  line-height: 1.35;
  text-align: center;
  margin-top: 0.5625rem;
  color: #FFFFFF;
}
@media screen and (min-width: 768px) {
  .lineup__price {
    font-size: 1.5rem;
    margin-top: 0.9375rem;
  }
}

.lineup__price-unit {
  font-size: 0.9375rem;
}
@media screen and (min-width: 768px) {
  .lineup__price-unit {
    font-size: 1.125rem;
  }
}

.lineup__link {
  margin-top: 0.9375rem;
  font-family: "Shippori Mincho B1", serif;
  font-size: 0.875rem;
  line-height: 1.6;
  color: #FFFFFF;
  border-bottom: 1px solid #FFFFFF;
  padding-left: 1.25rem;
  padding-bottom: 0.25rem;
  position: relative;
}
@media screen and (min-width: 768px) {
  .lineup__link {
    margin-top: 1.25rem;
    font-size: 1rem;
    padding-left: 2rem;
  }
}

.lineup__link::before {
  content: "";
  position: absolute;
  background-image: url(../image/icon/lineup-arrow.svg);
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
  width: 0.5625rem;
  height: 0.75rem;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
}

.lineup__button {
  margin-top: -9.0625rem;
}
@media screen and (min-width: 768px) {
  .lineup__button {
    margin-top: 5rem;
  }
}

.lineup__works-list::after {
  content: "";
  position: absolute;
  background-image: url(../image/bg/page-bottom-left-bg.jpg);
  background-size: 100% 100%;
  background-position: center;
  background-repeat: no-repeat;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 31.875rem;
  z-index: -1;
  margin-inline: calc(50% - 50vi);
}

.area {
  margin-top: 4.5rem;
  margin-bottom: 1.25rem;
}
@media screen and (min-width: 768px) {
  .area {
    margin-top: 7.5rem;
    margin-bottom: initial;
  }
}

.area__list {
  margin-top: 1.6875rem;
  display: flex;
  flex-direction: column;
  gap: 1.25rem;
}
@media screen and (min-width: 768px) {
  .area__list {
    margin-top: 3.125rem;
    margin-inline: calc(50% - 50vi);
    flex-direction: row;
    gap: initial;
  }
}

@media screen and (min-width: 768px) {
  .area__item {
    width: 33.3333333333vw;
  }
}

.area__image-box {
  aspect-ratio: 346/127;
}
@media screen and (min-width: 768px) {
  .area__image-box {
    aspect-ratio: 480/313;
  }
}

.area__image-box img {
  -o-object-fit: cover;
     object-fit: cover;
  height: 100%;
}

.area__content {
  background-color: #C0A351;
  padding-block: 0.5625rem;
}
@media screen and (min-width: 768px) {
  .area__content {
    padding-block: 1.3125rem;
  }
}

.area__name {
  color: #FFFFFF;
  text-align: center;
  font-family: "Shippori Mincho B1", serif;
  font-weight: 500;
  font-size: 1rem;
  line-height: 1.6;
  letter-spacing: 0.05em;
}
@media screen and (min-width: 768px) {
  .area__name {
    font-size: 1.5rem;
  }
}

@media screen and (min-width: 768px) {
  .area__item:nth-child(2) .area__content {
    border-inline: 1px solid #D9D9D9;
  }
}

.area__text {
  margin-top: 0.625rem;
  font-size: 0.875rem;
  line-height: 1.6;
  color: #FFFFFF;
  padding-inline: 0.9375rem;
}
@media screen and (min-width: 768px) {
  .area__text {
    margin-top: 1.25rem;
    font-size: 1rem;
    padding-inline: 1.875rem;
  }
}

.estate {
  background-image: url(../image/bg/event-bg.jpg);
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  padding-block: 4.5rem 3.75rem;
}
@media screen and (min-width: 768px) {
  .estate {
    padding-block: 6.25rem;
  }
}

.estate__list {
  overflow-x: scroll;
  margin-top: 1.875rem;
  display: grid;
  grid-template-columns: repeat(3, 21.5625rem);
  gap: 0.625rem;
}
@media screen and (min-width: 768px) {
  .estate__list {
    margin-top: 3.125rem;
    grid-template-columns: repeat(3, 23.75rem);
    gap: 1.875rem;
  }
}

.estate__list::-webkit-scrollbar {
  height: 1px;
  background: transparent;
}

.estate__item {
  display: grid;
  grid-template-rows: subgrid;
  grid-row: span 2;
}

.estate__box {
  background-size: 100% 100%;
  background-position: center;
  background-repeat: no-repeat;
  padding: 0.625rem;
  display: flex;
}

.estate__overlay {
  background-color: rgba(0, 0, 0, 0.3);
  flex-grow: 1;
}

.estate__text {
  padding-block: 8.5625rem 0.9375rem;
  padding-inline: 0.9375rem;
  color: #FFFFFF;
  font-size: 0.875rem;
  line-height: 1.35;
}

.estate__button {
  margin-top: 3.125rem;
}

.real-estate__map {
  margin: 2rem 0;
}

.voice {
  position: relative;
  padding-top: 3.8125rem;
}
@media screen and (min-width: 768px) {
  .voice {
    padding-top: 6.25rem;
  }
}

.voice::before {
  content: "";
  position: absolute;
  background-image: url(../image/bg/voice-bg.jpg);
  background-size: 100% 100%;
  background-position: center;
  background-repeat: no-repeat;
  width: 12.5625rem;
  height: 36.75rem;
  top: 0;
  left: 0;
  z-index: -1;
}
@media screen and (min-width: 768px) {
  .voice::before {
    width: 20.25rem;
    height: 59.0625rem;
  }
}

.voice::after {
  content: "";
  position: absolute;
  background-image: url(../image/bg/voice-color-bg.png);
  background-size: 100% 100%;
  background-position: center;
  background-repeat: no-repeat;
  width: 100%;
  height: 100%;
  z-index: -1;
  top: 0;
  left: 0;
}

.voice__inner {
  padding-inline: initial;
}
@media screen and (min-width: 768px) {
  .voice__inner {
    max-width: 88.75rem;
    padding-inline: 1.5625rem;
  }
}

.voice__slider {
  margin-top: 1.875rem;
  position: relative;
}
@media screen and (min-width: 768px) {
  .voice__slider {
    margin-top: 3.125rem;
  }
}

.voice__arrows {
  display: flex;
  align-items: center;
  justify-content: space-between;
  position: absolute;
  width: 100%;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
}

.voice__arrows img {
  width: 1.875rem;
  height: 1.875rem;
}
@media screen and (min-width: 768px) {
  .voice__arrows img {
    width: 3.4375rem;
    height: 3.4375rem;
  }
}

.voice__track {
  max-width: 18.75rem;
  margin-inline: auto;
}
@media screen and (min-width: 768px) {
  .voice__track {
    max-width: 75rem;
  }
}

.voice__image-box {
  aspect-ratio: 380/250;
}

.voice__image-box img {
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center top;
     object-position: center top;
  height: 100%;
}

.voice__content {
  background-color: #FFFFFF;
  box-shadow: 0px 0px 50.27px 0px rgba(0, 0, 0, 0.04);
  padding: 1.25rem 1.25rem 1rem;
}
@media screen and (min-width: 768px) {
  .voice__content {
    padding: 1.375rem;
  }
}

.voice__text {
  font-family: "Shippori Mincho B1", serif;
  font-weight: 500;
  font-size: 1rem;
  line-height: 1.35;
  color: #333333;
}
@media screen and (min-width: 768px) {
  .voice__text {
    font-size: 1.125rem;
  }
}

.voice__customer {
  margin-top: 0.625rem;
  font-size: 0.875rem;
  line-height: 1.35;
  text-align: right;
  color: #333333;
}
@media screen and (min-width: 768px) {
  .voice__customer {
    font-size: 1rem;
  }
}

.voice__button {
  margin-top: 3.125rem;
}
@media screen and (min-width: 768px) {
  .voice__button {
    margin-top: 5rem;
  }
}

.flow {
  padding-top: 4.5rem;
  position: relative;
  overflow-x: clip;
}
@media screen and (min-width: 768px) {
  .flow {
    padding-top: 17.75rem;
  }
}

.flow::before {
  content: "";
  position: absolute;
  background-image: url(../image/bg/flow-rectangle-bg.jpg);
  background-size: 100% 100%;
  background-position: center;
  background-repeat: no-repeat;
  width: 37.9375rem;
  height: 41.5rem;
  top: -2.75rem;
  right: -2.9375rem;
  z-index: -1;
}
@media screen and (min-width: 768px) {
  .flow::before {
    width: 100%;
    height: 98.375rem;
    top: -10.5625rem;
    right: 0;
  }
}

.flow::after {
  content: "";
  position: absolute;
  background-image: url(../image/bg/flow-bgSP.png);
  background-size: 100% 100%;
  background-position: center;
  background-repeat: no-repeat;
  width: 15.0625rem;
  height: 20.875rem;
  top: 6.3125rem;
  right: 0;
  z-index: -1;
}
@media screen and (min-width: 768px) {
  .flow::after {
    background-image: url(../image/bg/flow-bg.png);
    width: 56.75rem;
    height: 49.5625rem;
    top: 6.25rem;
  }
}

.flow__slider {
  margin-top: 1.875rem;
  width: 100%;
}
@media screen and (min-width: 768px) {
  .flow__slider {
    margin-top: 3.125rem;
    max-width: 33.8125rem;
  }
}

.flow__arrows {
  display: flex;
  align-items: center;
  justify-content: space-between;
  position: absolute;
  width: 105%;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: 1;
}
@media screen and (min-width: 768px) {
  .flow__arrows {
    width: 109%;
  }
}

.flow__arrow-prev {
  transform: rotate(180deg);
  width: 1.875rem;
  height: 1.875rem;
  padding: initial;
}
@media screen and (min-width: 768px) {
  .flow__arrow-prev {
    width: 3.4375rem;
    height: 3.4375rem;
  }
}

.flow__arrow-next {
  width: 1.875rem;
  height: 1.875rem;
  padding: initial;
}
@media screen and (min-width: 768px) {
  .flow__arrow-next {
    width: 3.4375rem;
    height: 3.4375rem;
  }
}

.flow__pagination {
  gap: 1.3125rem;
  z-index: 1;
  margin-top: -2.4375rem;
  z-index: 1;
  position: relative;
}
@media screen and (min-width: 768px) {
  .flow__pagination {
    gap: 1.0625rem;
  }
}

.flow__pagination li:nth-child(n+6) {
  display: none;
}

.flow__page {
  background-color: #F5F1E5;
  width: 0.625rem;
  height: 0.625rem;
  transition: 0.5s background-color;
  border-radius: 50%;
}
@media screen and (min-width: 768px) {
  .flow__page {
    width: 0.875rem;
    height: 0.875rem;
  }
}

.flow__page.is-active {
  background-color: #C0A351;
  opacity: 1;
}

.flow__item {
  background-color: #FFFFFF;
  padding-block: 0.9375rem 3.0625rem;
  padding-inline: 1.5625rem 0.9375rem;
  width: 100%;
}
@media screen and (min-width: 768px) {
  .flow__item {
    padding-block: 2.375rem 5.1875rem;
    padding-inline: 5rem 4.8125rem;
  }
}

.flow__title {
  font-family: "Shippori Mincho B1", serif;
  font-weight: 700;
  font-size: 1.125rem;
  line-height: 1.35;
  color: #C0A351;
}
@media screen and (min-width: 768px) {
  .flow__title {
    font-size: 1.5rem;
    font-weight: 500;
  }
}

.flow__number {
  font-size: 1.5625rem;
  font-weight: 400;
}
@media screen and (min-width: 768px) {
  .flow__number {
    font-size: 2.5rem;
  }
}

.flow__time {
  border: 1px solid #C0A351;
  padding-inline: 0.9375rem 0.875rem;
  font-family: "Shippori Mincho B1", serif;
  font-weight: 700;
  font-size: 0.75rem;
  line-height: 1.6;
  color: #C0A351;
  margin-inline: auto;
  width: -moz-fit-content;
  width: fit-content;
}
@media screen and (min-width: 768px) {
  .flow__time {
    margin-top: 0.6875rem;
    margin-inline: auto 0;
    font-size: 1.125rem;
  }
}

.flow__image-box {
  margin-top: 0.6875rem;
  aspect-ratio: 305/191;
}
@media screen and (min-width: 768px) {
  .flow__image-box {
    margin-top: 1rem;
    aspect-ratio: 384/277;
  }
}

.flow__image-box img {
  -o-object-fit: cover;
     object-fit: cover;
  height: 100%;
}

.flow__description {
  margin-top: 0.625rem;
  font-size: 0.875rem;
  line-height: 1.45;
}
@media screen and (min-width: 768px) {
  .flow__description {
    margin-top: 1.0625rem;
    font-size: 0.9375rem;
  }
}

.flow__button {
  margin-top: 2.5rem;
}
@media screen and (min-width: 768px) {
  .flow__button {
    margin-top: initial;
    margin-inline: 50%;
  }
}

.column-blog {
  margin-top: 4.5rem;
}
@media screen and (min-width: 768px) {
  .column-blog {
    margin-top: 7.5rem;
  }
}

@media screen and (min-width: 768px) {
  .column-blog__inner {
    max-width: 65.625rem;
  }
}

.column-blog__container {
  display: flex;
  flex-direction: column;
  gap: 1.25rem;
}
@media screen and (min-width: 768px) {
  .column-blog__container {
    flex-direction: row;
  }
}

@media screen and (min-width: 768px) {
  .column-blog__wrapper {
    width: 50%;
  }
}

.column-blog__list {
  overflow-x: scroll;
  margin-top: 1.875rem;
  display: grid;
  grid-template-columns: repeat(2, 20.9375rem);
  gap: 0.625rem;
}
@media screen and (min-width: 768px) {
  .column-blog__list {
    margin-top: 3.125rem;
    grid-template-columns: repeat(2, 1fr);
    gap: 1.25rem;
    min-height: 16.25rem;
  }
}

.column-blog__list::-webkit-scrollbar {
  height: 1px;
  background: transparent;
}

.column-blog__list::-webkit-scrollbar-thumb {
  background: #C0A351;
}

.column-blog__list::-webkit-scrollbar-track {
  background: transparent;
}

.column-blog__image-box {
  aspect-ratio: 335/220;
}
@media screen and (min-width: 768px) {
  .column-blog__image-box {
    aspect-ratio: 320/230;
  }
}

.column-blog__image-box img {
  -o-object-fit: cover;
     object-fit: cover;
  height: 100%;
}

.column-blog__content {
  margin-top: 0.625rem;
}

.column-blog__date {
  font-size: 0.8125rem;
  line-height: 1.6;
  color: #888888;
}

.column-blog__title {
  font-size: 0.9375rem;
  line-height: 1.6;
  color: #333333;
}
@media screen and (min-width: 768px) {
  .column-blog__title {
    font-size: 1rem;
  }
}

.column-blog__button {
  margin-top: 3.125rem;
}
@media screen and (min-width: 768px) {
  .column-blog__button {
    margin-top: 5rem;
  }
}

.contact {
  margin-top: 4.5rem;
  background-image: url(../image/bg/contact-bgSP.jpg);
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  position: relative;
  padding-block: 4.875rem 4.375rem;
}
@media screen and (min-width: 768px) {
  .contact {
    margin-top: 8.3125rem;
    background-image: url(../image/bg/contact-bg.jpg);
    padding-block: 7.5rem;
  }
}

.contact::before {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  background-color: rgba(0, 0, 0, 0.7);
}

.contact__inner {
  max-width: 62.375rem;
  position: relative;
  z-index: 0;
}

.contact__tel {
  display: block;
  text-align: center;
  font-family: "Junge", serif;
  font-size: 2.375rem;
  line-height: 1.6;
  letter-spacing: 0.05em;
  color: #FFFFFF;
  position: relative;
  width: -moz-fit-content;
  width: fit-content;
  margin-inline: auto;
  padding-left: 2.1875rem;
}
@media screen and (min-width: 768px) {
  .contact__tel {
    font-size: 2.875rem;
    padding-left: 2.6875rem;
  }
}

.contact__tel::before {
  content: "";
  position: absolute;
  background-image: url(../image/icon/tel.svg);
  background-size: 100% 100%;
  background-position: center;
  background-repeat: no-repeat;
  width: 2.0625rem;
  height: 2.0625rem;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
}
@media screen and (min-width: 768px) {
  .contact__tel::before {
    width: 2.4375rem;
    height: 2.4375rem;
  }
}

.contact__hours {
  color: #FFFFFF;
  text-align: center;
  font-size: 0.875rem;
  line-height: 1.6;
}

.contact__buttons {
  margin-top: 2.1875rem;
  display: flex;
  flex-direction: column;
  gap: 1.25rem;
  align-items: center;
  justify-content: center;
}
@media screen and (min-width: 768px) {
  .contact__buttons {
    margin-top: 3.125rem;
    flex-direction: row;
    gap: 3rem;
  }
}

.contact__button {
  width: 100%;
  max-width: 20rem;
  display: flex;
  justify-content: center;
  align-items: center;
  padding-block: 1.1875rem;
}
@media screen and (min-width: 768px) {
  .contact__button {
    max-width: 28.125rem;
    flex-direction: column;
    padding-block: 2.75rem 1.875rem;
  }
}

.contact__button--request {
  background-color: #C0A351;
  gap: 0.625rem;
}
@media screen and (min-width: 768px) {
  .contact__button--request {
    gap: 0.25rem;
  }
}

.contact__button--consultation {
  background-color: #958c70;
  gap: 0.625rem;
}
@media screen and (min-width: 768px) {
  .contact__button--consultation {
    gap: 0.25rem;
  }
}

.contact__icon {
  display: block;
  width: 2rem;
  max-width: 100%;
}
@media screen and (min-width: 768px) {
  .contact__icon {
    width: 3rem;
  }
}

.contact__text {
  color: #FFFFFF;
  font-family: "Not sans jp";
  line-height: 1.6;
  font-weight: 500;
  font-size: 1.125rem;
}
@media screen and (min-width: 768px) {
  .contact__text {
    font-weight: 700;
    font-size: 1.25rem;
  }
}

.contact__button--inquiry {
  background-color: #AAA69A;
  gap: 1.1875rem;
}
@media screen and (min-width: 768px) {
  .contact__button--inquiry {
    gap: 0.25rem;
  }
}

.contact__seminar {
  margin-top: 2.8125rem;
}

.contact__seminar-title {
  color: #FFFFFF;
  text-align: center;
  font-family: "Shippori Mincho B1", serif;
  line-height: 1.6;
  font-weight: 500;
  font-size: 1.125rem;
}
@media screen and (min-width: 768px) {
  .contact__seminar-title {
    font-weight: 700;
    font-size: 1.25rem;
  }
}

.contact__seminar-figure {
  width: 20rem;
  max-width: 100%;
  aspect-ratio: 320/174;
  margin-inline: auto;
}
@media screen and (min-width: 768px) {
  .contact__seminar-figure {
    width: 61.25rem;
    aspect-ratio: 980/532;
  }
}

.contact__seminar-figure img {
  -o-object-fit: cover;
     object-fit: cover;
  height: 100%;
}

.floating {
  position: fixed;
  bottom: 0;
  left: 0;
  right: 0;
  z-index: 5;
  display: flex;
}
@media screen and (min-width: 768px) {
  .floating {
    display: block;
    bottom: 6.25rem;
    right: 0;
    left: initial;
    width: 3.75rem;
  }
}

.floating__item {
  width: 33.3333333333%;
  display: flex;
  flex-direction: column;
  align-items: center;
  padding-block: 2.5rem 0.75rem;
  border: 1px solid #322e21;
  background: rgba(0, 0, 0, 0.7);
  backdrop-filter: blur(10px);
}
@media screen and (min-width: 768px) {
  .floating__item {
    width: initial;
    padding-block: 2.8125rem 0.9375rem;
  }
}

.floating__text {
  color: #fff;
  display: inline;
  position: relative;
  font-family: "Not sans jp";
  font-size: 1rem;
  line-height: 1.3;
}
@media screen and (min-width: 768px) {
  .floating__text {
    font-weight: 500;
    writing-mode: vertical-rl;
    font-size: 1.125rem;
  }
}

.floating__text::before {
  content: "";
  position: absolute;
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
  top: -1.875rem;
  left: 50%;
  transform: translateX(-50%);
}

.floating__item--request {
  border-inline: 1px solid #D9D9D9;
}
@media screen and (min-width: 768px) {
  .floating__item--request {
    margin-block: 1.25rem;
    border-inline: 1px solid #333333;
  }
}

.floating__item--faq {
  display: none;
}
@media screen and (min-width: 768px) {
  .floating__item--faq {
    display: flex;
  }
}

.floating__item--tel {
  display: flex;
}
@media screen and (min-width: 768px) {
  .floating__item--tel {
    display: none;
  }
}

.floating__item--event .floating__text::before {
  background-image: url("data:image/svg+xml,%3Csvg width='22' height='22' viewBox='0 0 22 22' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M20.625 2.05815L15.1202 2.05817V0.687661C15.1202 0.307728 14.8125 0 14.4327 0C14.0528 0 13.7452 0.307728 13.7452 0.687661V2.05783H8.24519V0.687661C8.24519 0.307728 7.93753 0 7.55769 0C7.17784 0 6.87019 0.307728 6.87019 0.687661V2.05783H1.375C0.615656 2.05783 0 2.67363 0 3.43315V20.6247C0 21.3842 0.615656 22 1.375 22H20.625C21.3843 22 22 21.3842 22 20.6247V3.43315C22 2.67395 21.3843 2.05815 20.625 2.05815ZM20.625 20.6247H1.375V3.43315H6.87019V4.12597C6.87019 4.50588 7.17784 4.81363 7.55769 4.81363C7.93753 4.81363 8.24519 4.50588 8.24519 4.12597V3.43349H13.7452V4.12631C13.7452 4.50624 14.0528 4.81397 14.4327 4.81397C14.8125 4.81397 15.1202 4.50624 15.1202 4.12631V3.43349H20.625V20.6247ZM15.8125 10.9977H17.1875C17.567 10.9977 17.875 10.6897 17.875 10.3101V8.93476C17.875 8.55517 17.567 8.2471 17.1875 8.2471H15.8125C15.433 8.2471 15.125 8.55517 15.125 8.93476V10.3101C15.125 10.6897 15.433 10.9977 15.8125 10.9977ZM15.8125 16.4987H17.1875C17.567 16.4987 17.875 16.191 17.875 15.811V14.4357C17.875 14.0561 17.567 13.748 17.1875 13.748H15.8125C15.433 13.748 15.125 14.0561 15.125 14.4357V15.811C15.125 16.1913 15.433 16.4987 15.8125 16.4987ZM11.6875 13.748H10.3125C9.933 13.748 9.625 14.0561 9.625 14.4357V15.811C9.625 16.191 9.933 16.4987 10.3125 16.4987H11.6875C12.067 16.4987 12.375 16.191 12.375 15.811V14.4357C12.375 14.0565 12.067 13.748 11.6875 13.748ZM11.6875 8.2471H10.3125C9.933 8.2471 9.625 8.55517 9.625 8.93476V10.3101C9.625 10.6897 9.933 10.9977 10.3125 10.9977H11.6875C12.067 10.9977 12.375 10.6897 12.375 10.3101V8.93476C12.375 8.55483 12.067 8.2471 11.6875 8.2471ZM6.1875 8.2471H4.8125C4.433 8.2471 4.125 8.55517 4.125 8.93476V10.3101C4.125 10.6897 4.433 10.9977 4.8125 10.9977H6.1875C6.567 10.9977 6.875 10.6897 6.875 10.3101V8.93476C6.875 8.55483 6.567 8.2471 6.1875 8.2471ZM6.1875 13.748H4.8125C4.433 13.748 4.125 14.0561 4.125 14.4357V15.811C4.125 16.191 4.433 16.4987 4.8125 16.4987H6.1875C6.567 16.4987 6.875 16.191 6.875 15.811V14.4357C6.875 14.0565 6.567 13.748 6.1875 13.748Z' fill='%23C0A351'/%3E%3C/svg%3E");
  width: 1.125rem;
  height: 1.125rem;
}
@media screen and (min-width: 768px) {
  .floating__item--event .floating__text::before {
    width: 1.375rem;
    height: 1.375rem;
  }
}

.floating__item--request .floating__text::before {
  background-image: url("data:image/svg+xml,%3Csvg width='30' height='30' viewBox='0 0 30 30' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M21.9818 4.4427V22.1143C21.9818 22.3809 21.8759 22.6365 21.6874 22.825C21.4988 23.0136 21.2432 23.1195 20.9766 23.1195H6.90365C6.63705 23.1195 6.38137 23.0136 6.19286 22.825C6.00434 22.6365 5.89844 22.3809 5.89844 22.1143V2.01009C5.89844 1.74349 6.00434 1.48781 6.19286 1.2993C6.38137 1.11079 6.63705 1.00488 6.90365 1.00488H20.9766' stroke='%23C0A351' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M10.9258 6.03125H16.957' stroke='%23C0A351' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M10.9258 10.0518H16.957' stroke='%23C0A351' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M10.9258 14.0723H13.9414' stroke='%23C0A351' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
  width: 1.625rem;
  height: 1.625rem;
}
@media screen and (min-width: 768px) {
  .floating__item--request .floating__text::before {
    width: 1.875rem;
    height: 1.875rem;
  }
}

.floating__item--faq .floating__text::before {
  background-image: url("data:image/svg+xml,%3Csvg width='26' height='26' viewBox='0 0 26 26' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cg clip-path='url(%23clip0_1408_51)'%3E%3Cpath d='M15.5427 7.92856C15.2093 7.6355 14.8214 7.4113 14.3792 7.25602C13.9367 7.10108 13.4743 7.02344 12.9916 7.02344C12.4857 7.02344 12.0147 7.10418 11.5781 7.26475C11.1412 7.42578 10.7592 7.65262 10.4317 7.94573C10.1042 8.23884 9.84573 8.6008 9.65616 9.03163C9.46644 9.46256 9.37158 9.9425 9.37158 10.4708H11.6126C11.6126 10.0688 11.7273 9.72972 11.9572 9.45373C12.1869 9.17819 12.5317 9.04047 12.9915 9.04047C13.4281 9.04047 13.7699 9.1756 14.0172 9.4454C14.2642 9.71566 14.3877 10.0518 14.3877 10.4537C14.3877 10.6494 14.3387 10.8446 14.2411 11.0399C14.1435 11.2356 14.0257 11.4251 13.8877 11.6085L12.8081 12.9914C12.5782 13.2901 11.9571 14.1546 11.9571 15.0386V15.556H14.198V15.194C14.198 15.0448 14.2266 14.8895 14.2843 14.7284C14.3415 14.5679 14.612 14.1747 14.7042 14.0597L15.784 12.6255C16.0253 12.3039 16.226 11.9735 16.3873 11.6344C16.5481 11.2957 16.6286 10.9078 16.6286 10.4708C16.6286 9.91934 16.5308 9.43093 16.3355 9.00579C16.1401 8.58059 15.8758 8.22122 15.5427 7.92856Z' fill='%23C0A351'/%3E%3Cpath d='M14.2669 16.6846H11.8882V18.977H14.2669V16.6846Z' fill='%23C0A351'/%3E%3Cpath d='M13 0C5.82019 0 0 5.82029 0 13C0 20.1797 5.82019 26 13 26C20.1796 26 26 20.1797 26 13C26 5.82029 20.1796 0 13 0ZM13 22.75C7.62374 22.75 3.25 18.3762 3.25 13C3.25 7.62384 7.62374 3.25 13 3.25C18.3761 3.25 22.75 7.62384 22.75 13C22.75 18.3762 18.3761 22.75 13 22.75Z' fill='%23C0A351'/%3E%3C/g%3E%3Cdefs%3E%3CclipPath id='clip0_1408_51'%3E%3Crect width='26' height='26' fill='white'/%3E%3C/clipPath%3E%3C/defs%3E%3C/svg%3E");
  width: 1.375rem;
  height: 1.375rem;
}
@media screen and (min-width: 768px) {
  .floating__item--faq .floating__text::before {
    width: 1.625rem;
    height: 1.625rem;
  }
}

.floating__item--tel .floating__text::before {
  content: "";
  display: inline-block;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23C0A351'%3E%3Cpath d='M6.62 10.79a15.053 15.053 0 006.59 6.59l2.2-2.2a1 1 0 011.01-.24c1.11.37 2.3.57 3.52.57a1 1 0 011 1V20a1 1 0 01-1 1C10.3 21 3 13.7 3 4a1 1 0 011-1h3.5a1 1 0 011 1c0 1.22.2 2.41.57 3.52a1 1 0 01-.24 1.01l-2.21 2.26z'/%3E%3C/svg%3E");
  width: 1.375rem;
  height: 1.375rem;
  background-size: contain;
  background-repeat: no-repeat;
}

.news {
  margin-top: 4.5rem;
}
@media screen and (min-width: 768px) {
  .news {
    margin-top: 7.5rem;
  }
}
@media (max-width: 767px) {
  .news {
    background-color: #f1efe9;
    padding-block: 4.5rem 3.75rem;
  }
}

.news__wrapper {
  display: flex;
  flex-direction: column;
  gap: 2.5rem;
}
@media screen and (min-width: 768px) {
  .news__wrapper {
    flex-direction: row;
    align-items: flex-start;
    gap: 7.5rem;
  }
}

.news__list {
  flex-grow: 1;
}

.news__button {
  margin-top: 3.125rem;
}
@media screen and (min-width: 768px) {
  .news__button {
    margin-top: 5rem;
  }
}

.popup {
  position: fixed;
  z-index: 100;
  bottom: 5rem;
  right: 1.25rem;
}
@media screen and (min-width: 768px) {
  .popup {
    bottom: 2.5rem;
    right: 4.75rem;
  }
}

.popup__close {
  position: relative;
  display: block;
}

.popup__close-icon {
  cursor: pointer;
  position: absolute;
  right: -0.9375rem;
  top: -1.25rem;
  height: 2.5rem;
  width: 2.5rem;
  background-color: #FFFFFF;
  border: 1px solid #333333;
  border-radius: 2.5rem;
}

.popup__close-icon::before,
.popup__close-icon::after {
  position: absolute;
  left: 50%;
  top: 50%;
  content: "";
  height: 1.375rem;
  width: 0.1875rem;
  background-color: #333333;
}

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

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

.popup__picture {
  display: block;
  width: 11.25rem;
}
@media screen and (min-width: 768px) {
  .popup__picture {
    width: 17.5rem;
  }
}

.strength-section {
  display: grid;
  gap: 4rem;
}

.strength-section__item {
  display: flex;
  flex-direction: column;
}
@media screen and (min-width: 768px) {
  .strength-section__item {
    flex-direction: row;
    gap: 5rem;
  }
}

@media screen and (min-width: 768px) {
  .strength-section__item:nth-child(even) {
    flex-direction: row-reverse;
  }
}

@media screen and (min-width: 768px) {
  .strength-section__item:nth-child(2) .strength-section__image {
    margin-top: 3.3125rem;
  }
}

@media screen and (min-width: 768px) {
  .strength-section__item:nth-child(3) {
    margin-top: 1.1875rem;
  }
}

@media screen and (min-width: 768px) {
  .strength-section__item:nth-child(5) {
    margin-top: 2.4375rem;
  }
}

.strength-section__image {
  aspect-ratio: 520/340;
  max-width: 32.5rem;
}

.strength-section__image img {
  -o-object-fit: cover;
     object-fit: cover;
  height: 100%;
}

.strength-section__title-wrapper {
  display: flex;
  align-items: center;
  gap: 0.625rem;
}

.strength-section__content {
  margin-top: 1rem;
}
@media screen and (min-width: 768px) {
  .strength-section__content {
    margin-top: 1.375rem;
  }
}

.strength-section__number {
  font-family: "Shippori Mincho B1", serif;
  font-size: 3.75rem;
  line-height: 1.6;
  color: #C0A351;
  display: inline;
}
@media screen and (min-width: 768px) {
  .strength-section__number {
    font-size: 5.625rem;
  }
}

.strength-section__title {
  font-family: "Shippori Mincho B1", serif;
  font-size: 1.5rem;
  line-height: 1.3;
  font-weight: 400;
}
@media screen and (min-width: 768px) {
  .strength-section__title {
    font-size: 2rem;
  }
}

.strength-section__text {
  font-size: 1rem;
  line-height: 1.6;
}

.strength-section__text span {
  font-weight: 700;
  font-size: 0.9375rem;
}

@media screen and (min-width: 768px) {
  .strength-section__button {
    margin-inline: 37.5rem 18.75rem;
  }
}

.page__heading {
  padding-top: 5rem;
}

.page__heading-inner {
  width: 100%;
  height: 9.0625rem;
  text-align: center;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  position: relative;
  overflow-x: clip;
}
@media screen and (min-width: 768px) {
  .page__heading-inner {
    height: 20rem;
  }
}

.page__heading-inner::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.3);
}

.page__heading-inner img {
  -o-object-fit: cover;
     object-fit: cover;
  height: 100%;
}

.page__heading-wrapper {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  color: #FFFFFF;
  width: 100vw;
}

.page__heading-label {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 1rem;
  line-height: 1.6;
  text-transform: uppercase;
}

.page-id-353 .page__heading-label {
  text-transform: none;
}

.page__heading-title {
  font-family: "Noto Sans JP";
  font-size: 1.2rem;
  line-height: 1.6;
  font-weight: 400;
}
@media screen and (min-width: 768px) {
  .page__heading-title {
    font-size: 2.5rem;
  }
}

.page__main {
  position: relative;
  padding-top: 3.125rem;
  overflow-x: clip;
}
@media screen and (min-width: 768px) {
  .page__main {
    padding-top: 6.25rem;
  }
}

.page__main::before {
  content: "";
  position: absolute;
  background-image: url(../image/bg/page-top-bg.jpg);
  background-size: 100% 100%;
  background-position: center;
  background-repeat: no-repeat;
  top: -4.9375rem;
  left: 0;
  width: 100%;
  height: 18.75rem;
  z-index: -1;
}
@media screen and (min-width: 768px) {
  .page__main::before {
    height: 31.875rem;
    top: -3.375rem;
  }
}

.page__main::after {
  content: "";
  position: absolute;
  background-image: url(../image/bg/page-bottom-right-bg.jpg);
  background-size: 100% 100%;
  background-position: center;
  background-repeat: no-repeat;
  bottom: -8.3125rem;
  right: 0;
  width: 100%;
  height: 31.875rem;
  z-index: -1;
}

.page__main.page__main--entry::after,
.page__main.page__main--home::after {
  background-image: url(../image/bg/recruit-bg.jpg);
}

.page__main.page__main--contact::after {
  background-image: url(../image/bg/form-bg.jpg);
  width: 38.4375rem;
  height: 24.25rem;
}

.page-id-99 .page__main::after,
.page-id-606 .page__main::after,
.page-id-610 .page__main::after {
  content: none;
}

.page-id-606 .contact {
  margin-top: initial;
}

.page__strength-event,
.page__voice {
  margin-inline: calc(50% - 50vi);
}

.page__voice {
  margin-bottom: 5.625rem;
}

.page__flow .works-list {
  padding-bottom: initial;
}

.page-id-18 {
  overflow-x: clip;
}

.bread-crumb {
  margin-top: 1.875rem;
}

.bread-crumb span {
  font-size: 0.75rem;
  line-height: 1.6;
  color: #333333;
}

.bread-crumb .home {
  position: relative;
  padding-left: 1.3125rem;
}

.bread-crumb .home:before {
  content: "";
  position: absolute;
  background-image: url(../image/icon/home.svg);
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  width: 1rem;
  height: 0.875rem;
  top: 0;
  left: 0;
}

.one-stop-service {
  margin-block: 3.75rem;
  border: 1px solid rgba(192, 163, 81, 0.6);
  padding-block: 0.6875rem 1.3125rem;
  padding-inline: 1.375rem 1.5rem;
}

.one-stop-service__title {
  font-size: 0.9375rem;
  line-height: 1.6;
}

.one-stop-service__list {
  display: flex;
  gap: 0.875rem;
  margin-top: 0.75rem;
  flex-wrap: wrap;
  justify-content: center;
}
@media screen and (min-width: 768px) {
  .one-stop-service__list {
    justify-content: space-between;
  }
}

.one-stop-service__item {
  background-color: #C0A351;
  text-align: center;
  padding-inline: 1.3125rem;
  padding-block: 0.5rem;
  min-width: 8.125rem;
}

@media screen and (min-width: 768px) {
  .one-stop-service__item:nth-child(5),
  .one-stop-service__item:nth-child(6) {
    flex-grow: 2;
  }
}

@media screen and (min-width: 768px) {
  .one-stop-service__item:nth-child(7) {
    flex-grow: 3;
  }
}

.one-stop-service__item img {
  max-height: 2.375rem;
}

.one-stop-service__label {
  font-size: 0.9375rem;
  line-height: 1.6;
  color: #FFFFFF;
}

.performance {
  background-image: url(../image/bg/performance-bg.jpg);
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  padding-block: 7.875rem 7.5rem;
  margin-inline: calc(50% - 50vi);
}

.performance__blocks {
  display: grid;
  gap: 3.125rem;
}

.performance__block {
  display: flex;
  flex-direction: column;
  align-items: center;
}
@media screen and (min-width: 768px) {
  .performance__block {
    flex-direction: row;
    align-items: flex-start;
  }
}

@media screen and (min-width: 768px) {
  .performance__block:nth-child(even) {
    flex-direction: row-reverse;
  }
}

.performance__image {
  aspect-ratio: 600/405;
  max-width: 37.5rem;
}

.performance__text {
  background: rgba(255, 255, 255, 0.9);
  padding: 1.25rem;
  margin-top: 3.125rem;
}
@media screen and (min-width: 768px) {
  .performance__text {
    margin-left: -2.5rem;
    padding: 2.5rem;
  }
}

.performance__block:nth-child(even) .performance__text {
  margin-left: initial;
  position: relative;
  z-index: 1;
}
@media screen and (min-width: 768px) {
  .performance__block:nth-child(even) .performance__text {
    margin-right: -2.5rem;
  }
}

.performance__title {
  font-family: "Shippori Mincho B1", serif;
  font-size: 1.5rem;
  line-height: 1.6;
  font-weight: 400;
}
@media screen and (min-width: 768px) {
  .performance__title {
    font-size: 2rem;
  }
}

.performance__description {
  margin-top: 1.25rem;
  font-size: 1rem;
  line-height: 1.6;
}
@media screen and (min-width: 768px) {
  .performance__description {
    margin-top: 1.875rem;
  }
}

.performance__description span {
  font-size: 0.875rem;
}

.performance__items {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 0.75rem;
  margin-top: 1.875rem;
}

.performance__item {
  background-color: #C0A351;
  padding: 0.625rem;
  position: relative;
  display: grid;
  place-items: center;
}
@media screen and (min-width: 768px) {
  .performance__item {
    padding: 1.0625rem;
    text-align: center;
  }
}

.performance__item::before {
  content: "";
  position: absolute;
  background-image: url(../image/icon/laurel.svg);
  background-size: 100% 100%;
  background-position: center;
  background-repeat: no-repeat;
  width: 6.875rem;
  height: 6.1875rem;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
@media screen and (min-width: 768px) {
  .performance__item::before {
    top: 0;
    transform: translate(-50%, 0);
  }
}

.performance__item-title {
  font-weight: 700;
  font-size: 1rem;
  line-height: 1.35;
  color: #FFFFFF;
  text-align: center;
}

.performance__item-desc {
  margin-top: 0.5rem;
  font-size: 0.875rem;
  line-height: 1.6;
  color: #FFFFFF;
}

.performance__note {
  margin-top: 3.125rem;
  font-size: 0.875rem;
  line-height: 1.5;
}

.dream-living {
  margin-block: 3.125rem;
}
@media screen and (min-width: 768px) {
  .dream-living {
    margin-block: 6.25rem 6.8125rem;
  }
}

.dream-living__list {
  margin-top: 3.75rem;
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 1.25rem;
}
@media screen and (min-width: 768px) {
  .dream-living__list {
    grid-template-columns: repeat(4, 1fr);
  }
}

.dream-living__icon {
  aspect-ratio: 1/1;
}

.dream-living__icon img {
  -o-object-fit: cover;
     object-fit: cover;
  height: 100%;
}

.dream-living__text {
  margin-top: 0.625rem;
  font-weight: 500;
  font-size: 0.875rem;
  line-height: 1.6;
}

.lineup-concept__container {
  display: flex;
  gap: 1.875rem;
  align-items: flex-start;
  margin-top: 3.125rem;
  flex-direction: column;
}
@media screen and (min-width: 768px) {
  .lineup-concept__container {
    flex-direction: row;
    gap: 3.75rem;
  }
}

.lineup-concept__image {
  max-width: 37.5rem;
}

.lineup-concept__image img {
  -o-object-fit: cover;
     object-fit: cover;
  height: 100%;
}

.lineup-concept__image-item {
  width: 100%;
  aspect-ratio: 600/610;
}

.lineup-concept__content {
  margin-top: 1.1875rem;
  display: grid;
  gap: 1.875rem;
  max-width: 33.75rem;
}

.lineup-concept__heading {
  font-family: "Shippori Mincho B1", serif;
  font-weight: 400;
  font-size: 1.25rem;
  line-height: 1.6;
  padding-left: 1.125rem;
  position: relative;
}
@media screen and (min-width: 768px) {
  .lineup-concept__heading {
    font-size: 1.5rem;
  }
}

.lineup-concept__heading::before {
  content: "";
  position: absolute;
  width: 2px;
  height: 1.8125rem;
  background-color: #C0A351;
  top: 0;
  left: 0;
}

.lineup-concept__text {
  margin-top: 1rem;
  font-size: 1rem;
  line-height: 1.6;
}

.lineup-recommend {
  margin-top: 2.8125rem;
}
@media screen and (min-width: 768px) {
  .lineup-recommend {
    margin-top: 5.625rem;
  }
}

.lineup-recommend__list {
  margin-top: 1.875rem;
  border: 1px solid #C0A351;
  max-width: 62.125rem;
  margin-inline: auto;
  padding: 1.25rem;
  display: grid;
  gap: 1rem;
}
@media screen and (min-width: 768px) {
  .lineup-recommend__list {
    padding: 2.3125rem;
  }
}

.lineup-recommend__item {
  font-size: 1rem;
  line-height: 1.35;
  position: relative;
  padding-left: 2.5rem;
}

.lineup-recommend__item::before {
  content: "";
  position: absolute;
  background-image: url(../image/icon/check.svg);
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  width: 1.875rem;
  height: 1.875rem;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
}
@media screen and (min-width: 768px) {
  .lineup-recommend__item::before {
    width: 2.25rem;
    height: 2.25rem;
  }
}

.company__shaze {
  aspect-ratio: 798/673;
  max-width: 49.875rem;
  margin-inline: auto;
  margin-bottom: 3.125rem;
}
@media screen and (min-width: 768px) {
  .company__shaze {
    margin-bottom: 6.25rem;
  }
}

.company__shaze img {
  -o-object-fit: cover;
     object-fit: cover;
  height: 100%;
}

.company__history {
  background-color: #F7F4EB;
  padding-block: 2.8125rem 5rem;
  margin-inline: calc(50% - 50vi);
}
@media screen and (min-width: 768px) {
  .company__history {
    padding-block: 6.25rem;
  }
}

.company__history-list {
  max-width: 62.5rem;
  border-left: 1px solid #C0A351;
  display: grid;
  gap: 1.875rem;
  margin-top: 3.125rem;
  margin-inline: 0.9375rem;
}
@media screen and (min-width: 768px) {
  .company__history-list {
    margin-inline: auto;
  }
}

.company__history-item {
  display: flex;
  font-size: 1rem;
  line-height: 1.6;
  padding-left: 1.25rem;
  position: relative;
}
@media screen and (min-width: 768px) {
  .company__history-item {
    gap: 4.375rem;
  }
}

.company__history-item::before {
  content: "";
  position: absolute;
  left: -0.5rem;
  top: 0.3125rem;
  width: 0.9375rem;
  height: 0.9375rem;
  background: #C0A351;
  border-radius: 50%;
}

.company__history-item:first-child {
  margin-top: -0.375rem;
}

.company__history-item:last-child {
  margin-bottom: -2.1875rem;
}
@media screen and (min-width: 768px) {
  .company__history-item:last-child {
    margin-bottom: -0.375rem;
  }
}

.company__history-year {
  width: 20%;
}
@media screen and (min-width: 768px) {
  .company__history-year {
    width: 13%;
  }
}

.company__history-event {
  width: 80%;
}

.company__message {
  margin-block: 3.4375rem 3.75rem;
}
@media screen and (min-width: 768px) {
  .company__message {
    margin-block: 6.25rem 7.5rem;
  }
}

.company__message-inner {
  max-width: 62.5rem;
  margin-inline: auto;
}

.company__message-body {
  margin-top: 1.875rem;
  display: flex;
  flex-direction: column;
  gap: 1.875rem;
  align-items: flex-start;
}
@media screen and (min-width: 768px) {
  .company__message-body {
    flex-direction: row;
    gap: 3.8125rem;
  }
}

.company__message-image {
  margin-top: 0.5625rem;
  max-width: 100%;
  aspect-ratio: 300/350;
}
@media screen and (min-width: 768px) {
  .company__message-image {
    width: 18.75rem;
  }
}

.company__message-image img {
  -o-object-fit: cover;
     object-fit: cover;
  height: 100%;
}

.company__message-content {
  max-width: 39.8125rem;
}

.company__message-text {
  font-size: 1rem;
  line-height: 1.6;
}

.company__message-signature {
  font-size: 1.125rem;
  line-height: 1.6;
  text-align: right;
  margin-top: 1.875rem;
}

.company__message-signature span {
  padding-right: 1rem;
}

.company__info-table {
  margin-top: 3.125rem;
  max-width: 50rem;
  margin-inline: auto;
}

.company__info-table td {
  border: 1px solid #D9D9D9;
  padding: 1.0625rem 1.5rem;
}

.company__info-table td iframe {
  margin-top: 0.625rem;
  aspect-ratio: 16/9;
  width: 100%;
  height: auto;
}

.company__info-table tr td:nth-child(1) {
  background-color: #F4F0E4;
}

.company__info-button {
  margin-top: 5rem;
  position: relative;
}

.company__info-button::before {
  content: "";
  position: absolute;
  width: 0.5625rem;
  height: 0.625rem;
  border-top: 2px solid #FFFFFF;
  border-right: 2px solid #FFFFFF;
  top: 50%;
  right: 1.25rem;
  transform: translateY(-50%) rotate(45deg);
}

.company__affiliation {
  background-color: #F4F0E4;
  padding-block: 2.5rem;
  text-align: center;
  max-width: 62.5rem;
  margin-inline: auto;
}
@media screen and (min-width: 768px) {
  .company__affiliation {
    padding-block: 5rem;
  }
}

.company__affiliation-inner {
  padding-inline: 0.9375rem;
}

.company__affiliation-lead {
  margin-top: 1.5625rem;
  font-size: 1rem;
  line-height: 1.6;
}
@media screen and (min-width: 768px) {
  .company__affiliation-lead {
    margin-top: 3.125rem;
  }
}

.company__affiliation-list {
  margin-top: 1.1875rem;
}

.company__affiliation-item {
  font-size: 1rem;
  font-weight: 600;
  line-height: 1.6;
}

.company__work-life {
  margin-block: 3.125rem 3.5625rem;
}
@media screen and (min-width: 768px) {
  .company__work-life {
    margin-block: 6.25rem 7.125rem;
  }
}

.award-history {
  margin-block: 3.125rem;
}
@media screen and (min-width: 768px) {
  .award-history {
    margin-block: 6.25rem;
  }
}

.award-history__inner {
  max-width: 62.5rem;
  margin-inline: auto;
}

.award-history__list {
  margin-top: 3.125rem;
}

.award-history__item {
  border-bottom: 1px solid #E3E3E3;
  padding-block: 0.875rem;
  display: flex;
  font-size: 1rem;
  line-height: 1.6;
}

.award-history__date {
  width: 20%;
}

.award-history__text-box {
  width: 80%;
}

.award-history__text {
  width: 80%;
}

.award-history__text-box .award-history__text {
  width: 100%;
}

.award-history__text.award-history__text--mt {
  margin-top: 1.25rem;
}

.award-history__button {
  margin-top: 0.5625rem;
  position: relative;
}

.award-history__button::before {
  content: "";
  position: absolute;
  width: 0.5625rem;
  height: 0.625rem;
  border-top: 1px solid #FFFFFF;
  border-right: 1px solid #FFFFFF;
  top: 50%;
  right: 1.25rem;
  transform: translateY(-50%) rotate(45deg);
}

.work-life__inner {
  margin-inline: auto;
  max-width: 62.5rem;
}

.work-life__content {
  display: flex;
  flex-direction: column;
  gap: 2.5625rem;
  align-items: flex-start;
  align-items: center;
  margin-top: 3.6875rem;
}
@media screen and (min-width: 768px) {
  .work-life__content {
    flex-direction: row;
  }
}

@media screen and (min-width: 768px) {
  .work-life__logo {
    width: 10.0625rem;
    aspect-ratio: 161/228;
  }
}

.work-life__logo img {
  -o-object-fit: cover;
     object-fit: cover;
  height: 100%;
}

.work-life__text {
  font-size: 1rem;
  line-height: 1.6;
}

.work-life__button {
  margin-top: 2.5rem;
}
@media screen and (min-width: 768px) {
  .work-life__button {
    margin-top: 5rem;
    margin-left: 8.4375rem;
  }
}

.area-info {
  margin-block: 3.125rem 3.75rem;
}
@media screen and (min-width: 768px) {
  .area-info {
    margin-block: 6.5625rem 7.5rem;
  }
}

.area-info__inner {
  max-width: 62.5rem;
  margin-inline: auto;
}

.aria-info__title {
  font-size: 1.75rem;
  line-height: 1.2;
  border-bottom: 1px solid #D9D9D9;
  padding-bottom: 0.25rem;
}
@media screen and (min-width: 768px) {
  .aria-info__title {
    line-height: 2;
    font-size: 2rem;
  }
}

.area-info__content {
  display: flex;
  flex-direction: column;
  gap: 2.6875rem;
  align-items: flex-start;
  margin-top: 1.875rem;
}
@media screen and (min-width: 768px) {
  .area-info__content {
    flex-direction: row;
  }
}

.area-info__text {
  font-size: 1rem;
  line-height: 1.6;
  max-width: 31.25rem;
}

.area-info__map {
  max-width: 28.5625rem;
  aspect-ratio: 457/302;
}

.area-info__map img {
  -o-object-fit: cover;
     object-fit: cover;
  height: 100%;
}

.contribution__lead {
  font-family: "Shippori Mincho B1", serif;
  font-size: 1rem;
  line-height: 2;
}
@media screen and (min-width: 768px) {
  .contribution__lead {
    text-align: center;
    font-size: 1.125rem;
  }
}

.sdgs__lead {
  font-family: "Shippori Mincho B1", serif;
  font-size: 1.125rem;
  line-height: 2;
}
@media screen and (min-width: 768px) {
  .sdgs__lead {
    text-align: center;
    font-size: 1.5rem;
  }
}

.sdgs__image {
  margin-top: 0.75rem;
}
@media screen and (min-width: 768px) {
  .sdgs__image {
    margin-top: initial;
  }
}

.sdgs__policy-inner {
  max-width: 62.5rem;
  margin-inline: auto;
}

.sdgs__policy-text {
  margin-top: 0.8125rem;
  font-size: 1rem;
  line-height: 2;
}

.sdgs__about {
  margin-top: 2.5rem;
}
@media screen and (min-width: 768px) {
  .sdgs__about {
    margin-top: 5rem;
  }
}

.sdgs__about-inner {
  max-width: 62.5rem;
  margin-inline: auto;
}

.sdgs__about-intro {
  margin-top: 0.8125rem;
  font-size: 1rem;
  line-height: 1.6;
}

.sdgs__about-block {
  margin-top: 3.125rem;
}

.sdgs__about-heading {
  background-color: #C0A351;
  text-align: center;
  color: #FFFFFF;
  padding-block: 0.375rem;
  font-size: 1.125rem;
  line-height: 1.6;
  font-weight: 500;
}

.sdgs__about-row {
  margin-top: 1.25rem;
  display: grid;
  gap: 1.25rem;
}

.sdgs__about-icons {
  display: flex;
  align-items: flex-start;
  justify-content: center;
  flex-wrap: wrap;
  gap: 0.75rem;
}

.sdgs__about-icons img {
  width: 7.9375rem;
  height: 7.9375rem;
  aspect-ratio: 1/1;
}

.sdgs__about-item {
  font-size: 1rem;
  line-height: 1.6;
}

.sdgs__about-note {
  margin-top: -0.375rem;
}

.sdgs__about-note-text {
  font-size: 0.875rem;
  line-height: 1.6;
}

.staff {
  display: grid;
  gap: 2.5rem;
}
@media screen and (min-width: 768px) {
  .staff {
    gap: 5rem;
  }
}

.staff__container {
  display: flex;
  flex-direction: column;
  gap: 3.125rem;
  align-items: flex-start;
}
@media screen and (min-width: 768px) {
  .staff__container {
    flex-direction: row;
  }
}

.staff__image {
  max-width: 23.625rem;
  aspect-ratio: 1/1;
}

.staff__image img {
  -o-object-fit: cover;
     object-fit: cover;
  height: 100%;
}

.staff__content {
  max-width: 48.25rem;
  display: grid;
  gap: 1.875rem;
}

.staff__label {
  background-color: #C0A351;
  color: #FFFFFF;
  padding-block: 0.125rem;
  padding-inline: 0.625rem;
  font-size: 1rem;
  line-height: 1.6;
  font-weight: 400;
  width: -moz-fit-content;
  width: fit-content;
}

.staff__name {
  font-family: "Shippori Mincho B1", serif;
  font-size: 2rem;
  line-height: 1.6;
  font-weight: 400;
}

.staff__name-en {
  font-size: 0.875rem;
  margin-left: 0.9375rem;
}

.staff__license {
  margin-top: 0.625rem;
  font-size: 1rem;
  line-height: 1.6;
}

.staff__license span {
  background-color: #F4F0E4;
  padding-block: 0.1875rem;
  padding-inline: 1.25rem;
  margin-right: 0.75rem;
}

.staff__description {
  margin-top: 0.375rem;
  font-size: 1rem;
  line-height: 1.6;
}

.staff__text {
  margin-top: 0.625rem;
  font-size: 1rem;
  line-height: 1.6;
}

.staff__message {
  margin-top: 1.875rem;
  background-color: #F4F0E4;
  padding-block: 1.875rem;
  padding-inline: 1.875rem 2.5rem;
}

.staff__message-text {
  margin-top: 0.625rem;
  font-size: 0.9375rem;
  line-height: 1.6;
}

.staff__work-life {
  margin-top: 7.5rem;
}

.staff__button {
  margin-top: 1.25rem;
}

.recruit {
  position: relative;
  padding-bottom: 4.25rem;
  margin-inline: calc(50% - 50vi);
}
@media screen and (min-width: 768px) {
  .recruit {
    padding-bottom: 11rem;
  }
}

.recruit::after {
  content: "";
  position: absolute;
  background-image: url(../image/bg/recruit-bg.jpg);
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  width: 100%;
  height: 37.1875rem;
  bottom: 0;
  right: 0;
  z-index: -1;
}

.recruit__inner {
  max-width: 62.5rem;
  margin-inline: auto;
  position: relative;
  padding-inline: 0.9375rem;
}
@media screen and (min-width: 768px) {
  .recruit__inner {
    padding-inline: initial;
  }
}

.recruit__catch {
  font-family: "Shippori Mincho B1", serif;
  font-size: 1.125rem;
  line-height: 1.6;
  font-weight: 400;
}
@media screen and (min-width: 768px) {
  .recruit__catch {
    font-size: 1.5rem;
  }
}

.recruit__text-block {
  margin-top: 1.25rem;
}

@media screen and (min-width: 768px) {
  .recruit__text-block:nth-of-type(1) {
    max-width: 31.25rem;
  }
}

.recruit__text {
  font-family: "Shippori Mincho B1", serif;
  font-size: 1rem;
  line-height: 2;
  margin-top: 1.25rem;
}
@media screen and (min-width: 768px) {
  .recruit__text {
    font-size: 1.125rem;
  }
}

.recruit__text span {
  font-weight: 700;
  display: block;
}

@media screen and (min-width: 768px) {
  .recruit__image {
    position: absolute;
    top: 0;
    right: 0;
    width: 29.125rem;
    aspect-ratio: 466/325;
  }
}

.recruit__image img {
  -o-object-fit: cover;
     object-fit: cover;
  height: 100%;
}

.recruit__button {
  margin-inline: auto;
  margin-top: 2.5rem;
  position: relative;
}
@media screen and (min-width: 768px) {
  .recruit__button {
    margin-inline: 0 auto;
  }
}

.recruit__button::before {
  content: "";
  position: absolute;
  width: 0.5625rem;
  height: 0.625rem;
  border-top: 2px solid #FFFFFF;
  border-right: 2px solid #FFFFFF;
  top: 50%;
  right: 1.25rem;
  transform: translateY(-50%) rotate(45deg);
}

.recruit-strength {
  margin-block: 3.125rem;
}
@media screen and (min-width: 768px) {
  .recruit-strength {
    margin-block: 6.25rem;
  }
}

.recruit-strength__items {
  margin-top: 3.125rem;
  display: grid;
  gap: 3.125rem;
}

.recruit-strength__item {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 1.25rem;
}
@media screen and (min-width: 768px) {
  .recruit-strength__item {
    flex-direction: row;
    gap: 2.5rem;
  }
}

@media screen and (min-width: 768px) {
  .recruit-strength__item:nth-child(odd) {
    margin-inline: calc(50% - 50vi) auto;
  }
}

@media screen and (min-width: 768px) {
  .recruit-strength__item:nth-child(even) {
    flex-direction: row-reverse;
    margin-inline: auto calc(50% - 50vi);
  }
}

.recruit-strength__image {
  aspect-ratio: 597/332;
}
@media screen and (min-width: 768px) {
  .recruit-strength__image {
    max-width: 60%;
  }
}

.recruit-strength__image img {
  -o-object-fit: cover;
     object-fit: cover;
  height: 100%;
}

.recruit-strength__content {
  max-width: 42.6875rem;
  margin-top: 1.5625rem;
}
@media screen and (min-width: 768px) {
  .recruit-strength__content {
    max-width: 40%;
  }
}

.recruit-strength__title {
  font-family: "Shippori Mincho B1", serif;
  font-weight: 400;
  font-size: 1.5rem;
  line-height: 1.6;
  border-left: 4px solid #C0A351;
  padding-left: 0.9375rem;
}

.recruit-strength__text {
  margin-top: 1.125rem;
  font-size: 1rem;
  line-height: 1.6;
}

.event-info {
  margin-bottom: 4.375rem;
  margin-inline: calc(50% - 50vi);
  position: relative;
  z-index: 1;
}
@media screen and (min-width: 768px) {
  .event-info {
    margin-bottom: 6.25rem;
  }
}

.event-info__inner {
  max-width: 62.5rem;
  margin-inline: auto;
}

.event-info__list {
  margin-top: 3.125rem;
  margin-inline: 0.9375rem;
  background-color: #FFFFFF;
  padding: 1.25rem;
  box-shadow: 0 4px 16px rgba(244, 240, 228, 0.8);
}
@media screen and (min-width: 768px) {
  .event-info__list {
    padding: 4.0625rem;
    padding-bottom: 3.375rem;
    margin-inline: initial;
  }
}

.flow-process {
  background-color: #F4F0E4;
  margin-inline: calc(50% - 50vi);
  padding-block: 3.125rem 25.3125rem;
}
@media screen and (min-width: 768px) {
  .flow-process {
    padding-block: 6.25rem 12.5rem;
  }
}

.flow-process__inner {
  max-width: 62.5rem;
  margin-inline: auto;
}

.flow-process__steps {
  display: grid;
  gap: 3.125rem;
  margin-top: 1.875rem;
  border-left: 1px solid #C0A351;
  margin-inline: 1.5rem 0.9375rem;
}
@media screen and (min-width: 768px) {
  .flow-process__steps {
    margin-inline: initial;
    margin-top: 3.125rem;
    gap: 4.375rem;
  }
}

.flow-process__step {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  gap: 1.5625rem;
  position: relative;
  align-items: center;
}
@media screen and (min-width: 768px) {
  .flow-process__step {
    flex-direction: row;
    align-items: flex-start;
    gap: 2.8125rem;
  }
}

.flow-process__step::before {
  content: "";
  position: absolute;
  left: -1.25rem;
  top: 0;
  width: 2.5rem;
  height: 2.5rem;
  background: #C0A351;
  border-radius: 50%;
  font-family: "Shippori Mincho B1", serif;
  font-size: 1.3125rem;
  line-height: 1.35;
  color: #FFFFFF;
  display: flex;
  justify-content: center;
  align-items: center;
}
@media screen and (min-width: 768px) {
  .flow-process__step::before {
    width: 5.3125rem;
    height: 5.3125rem;
    font-size: 1.9375rem;
    left: -2.75rem;
  }
}

.flow-process__step:last-child {
  margin-bottom: -22.1875rem;
}
@media screen and (min-width: 768px) {
  .flow-process__step:last-child {
    margin-bottom: -6.25rem;
  }
}

.flow-process__step:nth-child(1)::before {
  content: "01";
}

.flow-process__step:nth-child(2)::before {
  content: "02";
}

.flow-process__step:nth-child(3)::before {
  content: "03";
}

.flow-process__step:nth-child(4)::before {
  content: "04";
}

.flow-process__step:nth-child(5)::before {
  content: "05";
}

.flow-process__step:nth-child(6)::before {
  content: "06";
}

.flow-process__step:nth-child(7)::before {
  content: "07";
}

.flow-process__content {
  padding-left: 1.75rem;
}
@media screen and (min-width: 768px) {
  .flow-process__content {
    width: 44.375rem;
    padding-left: 7.8125rem;
  }
}

.flow-process__title {
  font-family: "Shippori Mincho B1", serif;
  font-weight: 400;
  font-size: 1.25rem;
  line-height: 1.35;
}
@media screen and (min-width: 768px) {
  .flow-process__title {
    font-size: 1.5rem;
  }
}

.flow-process__text {
  margin-top: 1rem;
  font-family: "Inter", sans-serif;
  font-size: 0.875rem;
  line-height: 1.6;
}
@media screen and (min-width: 768px) {
  .flow-process__text {
    margin-top: 1.25rem;
    font-size: 0.9375rem;
  }
}

.flow-process__image {
  max-width: 15.625rem;
  aspect-ratio: 250/172;
}

.flow-process__image img {
  -o-object-fit: cover;
     object-fit: cover;
  height: 100%;
}

.flow-process__sub-points {
  margin-top: 0.625rem;
  max-width: 34.5625rem;
}

.flow-process__sub-points-label {
  background-color: #C0A351;
  color: #FFFFFF;
  padding: 0.3125rem 1.125rem;
  font-size: 1rem;
  line-height: 1.5;
  font-weight: 400;
}

.flow-process__sub-points-text {
  margin-top: 0.625rem;
  margin-inline: 1.125rem 1.25rem;
  font-size: 0.875rem;
  line-height: 1.35;
}

.benefit {
  background-color: #F4F0E4;
  margin-inline: calc(50% - 50vi);
  padding-block: 3.125rem 1rem;
}
@media screen and (min-width: 768px) {
  .benefit {
    padding-block: 6.25rem 1rem;
  }
}

.benefit__list {
  overflow-x: scroll;
}
@media screen and (min-width: 768px) {
  .benefit__list {
    overflow-x: initial;
  }
}

.benefit__list {
  margin-top: 3.125rem;
  display: grid;
  grid-template-columns: repeat(4, 80%);
  gap: 0.9375rem;
}
@media screen and (min-width: 768px) {
  .benefit__list {
    grid-template-columns: repeat(4, 1fr);
  }
}

.benefit__image {
  aspect-ratio: 289/255;
}

.benefit__image img {
  -o-object-fit: cover;
     object-fit: cover;
  height: 100%;
}

.benefit__content {
  background-color: #FFFFFF;
  padding-block: 0.625rem 1.375rem;
  padding-inline: 1.0625rem;
  min-height: 18.3125rem;
}

.benefit__content-title {
  text-align: center;
  font-size: 1.125rem;
  line-height: 1.6;
}

.benefit__content-list {
  margin-top: 0.625rem;
}

.benefit__content-item {
  font-size: 0.875rem;
  line-height: 1.6;
  position: relative;
  padding-left: 0.875rem;
}

.benefit__content-item::before {
  content: "・";
  position: absolute;
  top: 0;
  left: 0;
}

.benefit__content-note {
  margin-top: 1.25rem;
  font-size: 0.875rem;
  line-height: 1.6;
}

.personnel {
  margin-block: 3.125rem;
  margin-inline: calc(50% - 50vi);
}
@media screen and (min-width: 768px) {
  .personnel {
    position: relative;
    margin-block: 6.25rem;
  }
}

@media screen and (min-width: 768px) {
  .personnel::before,
  .personnel::after {
    content: "";
    position: absolute;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    border-radius: 50%;
    width: 22rem;
    height: 22rem;
  }
}

@media screen and (min-width: 768px) {
  .personnel::before {
    background-image: url(../image/img/personnel02.jpg);
    top: 4.9375rem;
    left: 0;
  }
}

@media screen and (min-width: 768px) {
  .personnel::after {
    background-image: url(../image/img/personnel05.jpg);
    right: 0;
    bottom: -0.9375rem;
  }
}

.personnel__image {
  margin-top: 1.875rem;
  margin-inline: auto;
}
@media screen and (min-width: 768px) {
  .personnel__image {
    margin-top: 3.3125rem;
    position: relative;
    max-width: 54.4375rem;
  }
}

@media screen and (min-width: 768px) {
  .personnel__image::before,
  .personnel__image::after {
    content: "";
    position: absolute;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    border-radius: 50%;
    width: 15.4375rem;
    height: 15.4375rem;
  }
}

@media screen and (min-width: 768px) {
  .personnel__image::before {
    background-image: url(../image/img/personnel03.jpg);
    top: 18.6875rem;
    right: -17.9375rem;
  }
}

@media screen and (min-width: 768px) {
  .personnel__image::after {
    background-image: url(../image/img/personnel04.jpg);
    bottom: 2.25rem;
    left: -14.5rem;
  }
}

.personnel__buttons {
  margin-top: 3.9375rem;
  display: flex;
  gap: 2.5rem;
  max-width: 42.5rem;
  margin-inline: auto;
  padding-inline: 0.9375rem;
}
@media screen and (min-width: 768px) {
  .personnel__buttons {
    margin-top: 7.8125rem;
  }
}

.job-description {
  margin-top: 2.1875rem;
}
@media screen and (min-width: 768px) {
  .job-description {
    margin-top: 4.375rem;
  }
}

.job-description__container {
  margin-top: 3.125rem;
  display: grid;
  gap: 1.25rem;
}

.job-description__section {
  display: flex;
  flex-direction: column;
  gap: 1.25rem;
}
@media screen and (min-width: 768px) {
  .job-description__section {
    flex-direction: row;
    gap: 1.875rem;
  }
}

.job-description__section-title {
  background-color: #F4F0E4;
  font-size: 1.5rem;
  line-height: 1.6;
  display: flex;
  justify-content: center;
  align-items: center;
  font-weight: 400;
}
@media screen and (min-width: 768px) {
  .job-description__section-title {
    width: 12.25rem;
  }
}

.job-description__block {
  max-width: 58.375rem;
}

.job-description__block:not(:first-of-type) {
  margin-top: 1.5625rem;
}
@media screen and (min-width: 768px) {
  .job-description__block:not(:first-of-type) {
    margin-top: 3.125rem;
  }
}

.job-description__label {
  background-color: #C0A351;
  color: #FFFFFF;
  font-weight: 500;
  font-size: 1.125rem;
  line-height: 1.6;
  padding-inline: 1.25rem;
  width: -moz-fit-content;
  width: fit-content;
  display: inline-block;
}
@media screen and (min-width: 768px) {
  .job-description__label {
    font-size: 1.25rem;
  }
}

.job-description__description {
  margin-top: 1.25rem;
  font-size: 1rem;
  line-height: 1.6;
}

.job-description__requirement {
  margin-top: 1.25rem;
  font-size: 1rem;
  line-height: 1.6;
}

.job-description__image {
  margin-top: 0.625rem;
  max-width: 31.25rem;
  width: 100%;
  aspect-ratio: 500/288;
}

.job-description__image img {
  -o-object-fit: cover;
     object-fit: cover;
  height: 100%;
}

.job-description__note {
  margin-top: 1.25rem;
  font-size: 1rem;
  line-height: 1.6;
}

.job-description__apply-method {
  max-width: 58.375rem;
  font-size: 1rem;
  line-height: 1.6;
}
@media screen and (min-width: 768px) {
  .job-description__apply-method {
    padding-block: 1.5rem;
  }
}

.job-description__address {
  max-width: 58.375rem;
  font-size: 1rem;
  line-height: 1.6;
}
@media screen and (min-width: 768px) {
  .job-description__address {
    padding-block: 1.4375rem;
  }
}

.flow-step {
  display: grid;
  gap: 2.5rem;
  max-width: 62.5rem;
  margin-inline: auto;
  margin-bottom: 3.75rem;
}
@media screen and (min-width: 768px) {
  .flow-step {
    gap: 5rem;
    margin-bottom: 7.5rem;
  }
}

.flow-step__block {
  border: 1px solid #D7CEB6;
  padding: 0.9375rem;
  background-color: #FFFFFF;
}
@media screen and (min-width: 768px) {
  .flow-step__block {
    padding: 2.5rem;
  }
}

.flow-step__block:nth-child(4) {
  position: relative;
}
@media screen and (min-width: 768px) {
  .flow-step__block:nth-child(4) {
    padding-right: initial;
  }
}

.flow-step__block:nth-child(5) {
  margin-top: 2.1875rem;
  padding-bottom: 25rem;
}
@media screen and (min-width: 768px) {
  .flow-step__block:nth-child(5) {
    padding-bottom: 10.25rem;
  }
}

.flow-step__heading {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0.625rem;
}
@media screen and (min-width: 768px) {
  .flow-step__heading {
    flex-direction: row;
  }
}

.flow-step__block:nth-child(1) .flow-step__heading {
  justify-content: space-between;
}

.flow-step__block:nth-child(2) .flow-step__heading,
.flow-step__block:nth-child(5) .flow-step__heading {
  flex-direction: row;
}

.flow-step__heading-wrapper {
  display: flex;
  max-width: 34.875rem;
  align-items: center;
  gap: 0.625rem;
}

.flow-step__step-number {
  font-family: "Shippori Mincho B1", serif;
  font-size: 1rem;
  line-height: 1.35;
  color: #CDB574;
  display: flex;
  align-items: center;
}

.flow-step__step-number span {
  font-size: 1.875rem;
  margin-top: -0.3125rem;
}
@media screen and (min-width: 768px) {
  .flow-step__step-number span {
    margin-top: -0.625rem;
    font-size: 2.5rem;
  }
}

.flow-step__title {
  font-family: "Shippori Mincho B1", serif;
  font-weight: 400;
  font-size: 1.125rem;
  line-height: 1.35;
}
@media screen and (min-width: 768px) {
  .flow-step__title {
    font-size: 1.5rem;
  }
}

.flow-step__label {
  border: 1px solid #C0A351;
  padding-inline: 0.9375rem 0.875rem;
  font-family: "Shippori Mincho B1", serif;
  font-weight: 700;
  font-size: 0.75rem;
  line-height: 1.6;
  color: #C0A351;
  width: -moz-fit-content;
  width: fit-content;
}
@media screen and (min-width: 768px) {
  .flow-step__label {
    font-size: 1.125rem;
  }
}

@media screen and (min-width: 768px) {
  .flow-step__block:nth-child(3) .flow-step__label {
    margin-left: 1.5625rem;
  }
}

@media screen and (min-width: 768px) {
  .flow-step__block:nth-child(4) .flow-step__label {
    margin-left: 1.3125rem;
  }
}

.flow-step__body {
  display: flex;
  flex-direction: column;
  gap: 1.25rem;
  align-items: flex-start;
  margin-top: 1.25rem;
}
@media screen and (min-width: 768px) {
  .flow-step__body {
    flex-direction: row;
    gap: 2.5rem;
  }
}

.flow-step__block:nth-child(4) .flow-step__body {
  align-items: center;
}

.flow-step__img {
  width: 100%;
  aspect-ratio: 420/300;
}
@media screen and (min-width: 768px) {
  .flow-step__img {
    max-width: 26.25rem;
  }
}

.flow-step__img img {
  -o-object-fit: cover;
     object-fit: cover;
  height: 100%;
}

.flow-step__content {
  max-width: 28.75rem;
}

.flow-step__block:nth-child(4) .flow-step__content {
  max-width: 29.0625rem;
}

.flow-step__text {
  font-size: 0.9375rem;
  line-height: 1.45;
}

.flow-step__text-list {
  padding-left: 1rem;
  position: relative;
  display: block;
}

.flow-step__text-list::before {
  content: "・";
  position: absolute;
  top: 0;
  left: 0;
}

.flow-step__content-title {
  margin-block: 1.25rem 0.625rem;
  font-weight: 700;
  font-size: 1.125rem;
  line-height: 1.35;
}

.flow-step__button {
  margin-top: 1.25rem;
  margin-inline: initial;
  position: relative;
}
@media screen and (min-width: 768px) {
  .flow-step__button {
    width: 20.9375rem;
  }
}

.flow-step__button::before {
  content: "";
  position: absolute;
  width: 0.5625rem;
  height: 0.625rem;
  border-top: 2px solid #FFFFFF;
  border-right: 2px solid #FFFFFF;
  top: 50%;
  right: 0.625rem;
  transform: translateY(-50%) rotate(45deg);
}

.flow-step__notice {
  position: absolute;
  left: 50%;
  bottom: -3.5rem;
  transform: translateX(-50%);
  text-align: center;
  font-family: "Shippori Mincho B1", serif;
  font-size: 0.75rem;
  line-height: 1.6;
  min-width: 11.25rem;
}
@media screen and (min-width: 768px) {
  .flow-step__notice {
    font-size: 1.125rem;
    bottom: -5.3125rem;
  }
}

.flow-step__steps {
  margin-left: 1.875rem;
}

.flow-step__step::before {
  width: 3.4375rem;
  height: 3.4375rem;
  font-size: 1.25rem;
  left: -1.8125rem;
}

.flow-step__item {
  padding-left: 2.5rem;
}

.flow-step__step:last-child {
  margin-bottom: -22.8125rem;
}
@media screen and (min-width: 768px) {
  .flow-step__step:last-child {
    margin-bottom: -7.6875rem;
  }
}

.flow-step__item .flow-process__title {
  color: #C0A351;
}

.flow-step__sub-points-label {
  background-color: #F4F0E4;
  color: #333333;
  font-weight: 400;
}

.flow-step__works-list::after {
  content: "";
  position: absolute;
  background-image: url(../image/bg/page-bottom-right-bg.jpg);
  background-size: 100% 100%;
  background-position: center;
  background-repeat: no-repeat;
  bottom: -2.5rem;
  right: 0;
  width: 100%;
  height: 31.875rem;
  z-index: -1;
  margin-inline: calc(50% - 50vi);
}
@media screen and (min-width: 768px) {
  .flow-step__works-list::after {
    bottom: -7.5rem;
  }
}

.after-service__support-inner {
  display: flex;
  flex-direction: column;
  gap: 2rem;
  align-items: center;
  margin-inline: auto;
}
@media screen and (min-width: 768px) {
  .after-service__support-inner {
    flex-direction: row;
    gap: 4rem;
    align-items: flex-start;
    max-width: 61.6875rem;
  }
}

.after-service__support-text {
  max-width: 34.3125rem;
  font-size: 1rem;
  line-height: 1.6;
}

.after-service__support-visual {
  max-width: 18.5625rem;
  aspect-ratio: 297/284;
}

.after-service__support-visual img {
  -o-object-fit: cover;
     object-fit: cover;
  height: 100%;
}

.after-service__support-bottom {
  margin-top: 3.3125rem;
  font-size: 1rem;
  line-height: 1.6;
  max-width: 61.6875rem;
  margin-inline: auto;
}

.after-service__contact {
  margin-top: 3.125rem;
}

.after-service__contact-description {
  margin-top: 1.875rem;
  text-align: center;
  font-size: 1rem;
  line-height: 2;
}
@media screen and (min-width: 768px) {
  .after-service__contact-description {
    margin-top: 3.125rem;
  }
}

.inspection__support {
  margin-top: 3.125rem;
  position: relative;
  margin-inline: calc(50% - 50vi);
}
@media screen and (min-width: 768px) {
  .inspection__support {
    margin-top: 6.9375rem;
  }
}

.inspection__support::before {
  content: "";
  position: absolute;
  background-image: url(../image/bg/inspection-rectangle-bg.jpg);
  background-size: 100% 100%;
  background-position: center;
  background-repeat: no-repeat;
  width: 100%;
  height: 98.375rem;
  top: -23.5rem;
  left: 0;
  z-index: -1;
}

.inspection__support-inner {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 3.375rem;
}
@media screen and (min-width: 768px) {
  .inspection__support-inner {
    flex-direction: row;
  }
}

.inspection__support-list {
  background-image: url(../image/bg/inspection-support-bg.png);
  background-size: 100% 100%;
  background-position: center;
  background-repeat: no-repeat;
  padding-block: 1.25rem;
  padding-inline: 1.25rem;
  display: grid;
  gap: 1.875rem;
}
@media screen and (min-width: 768px) {
  .inspection__support-list {
    padding-block: 12.625rem 4.375rem;
    padding-inline: 12rem 10.1875rem;
  }
}

.inspection__support-item {
  background-color: rgba(255, 255, 255, 0.9);
  padding-block: 1.125rem 1.25rem;
  padding-inline: 5.0625rem 5.625rem;
  font-size: 1.3125rem;
  line-height: 1.6;
}
@media screen and (min-width: 768px) {
  .inspection__support-item {
    font-size: 1.75rem;
  }
}

.inspection__support-description {
  display: grid;
  gap: 1.875rem;
  margin-inline: 0.9375rem;
}
@media screen and (min-width: 768px) {
  .inspection__support-description {
    margin-inline: initial;
  }
}

.inspection__support-box {
  border: 1px solid #C0A351;
  padding: 1.25rem 1.75rem;
  max-width: 30.4375rem;
  min-height: 8.5625rem;
}

.inspection__support-title {
  font-size: 1.25rem;
  line-height: 1.6;
}

.inspection__support-text {
  margin-top: 0.8125rem;
  font-size: 1rem;
  line-height: 1.6;
}

.inspection__schedule {
  margin-top: 3.75rem;
}
@media screen and (min-width: 768px) {
  .inspection__schedule {
    margin-top: 7.5rem;
  }
}

.inspection__schedule-inner {
  max-width: 61.6875rem;
  margin-inline: auto;
}

.inspection__schedule-lead {
  margin-top: 1.75rem;
  font-size: 1rem;
  line-height: 1.6;
}
@media screen and (min-width: 768px) {
  .inspection__schedule-lead {
    margin-top: 3.5rem;
  }
}

.inspection__schedule-image {
  margin-top: 1.5625rem;
}
@media screen and (min-width: 768px) {
  .inspection__schedule-image {
    margin-top: 3.125rem;
  }
}

.inspection__schedule-note {
  margin-top: 1.3125rem;
  font-size: 1.125rem;
  line-height: 1.6;
}

.inspection__schedule-boxes {
  margin-top: 1.875rem;
  display: grid;
  gap: 1.25rem;
}
@media screen and (min-width: 768px) {
  .inspection__schedule-boxes {
    margin-top: 3.75rem;
  }
}

.inspection__schedule-box {
  display: flex;
  flex-direction: column;
  box-shadow: 0 4px 4px rgba(0, 0, 0, 0.25);
}
@media screen and (min-width: 768px) {
  .inspection__schedule-box {
    flex-direction: row;
    height: 7.375rem;
  }
}

.inspection__schedule-box:nth-child(1) .inspection__schedule-box-title,
.inspection__schedule-box:nth-child(1) .inspection__schedule-box-text {
  padding-block: 1.125rem;
}
@media screen and (min-width: 768px) {
  .inspection__schedule-box:nth-child(1) .inspection__schedule-box-title,
  .inspection__schedule-box:nth-child(1) .inspection__schedule-box-text {
    padding-block: 1.75rem;
  }
}

.inspection__schedule-box:nth-child(2) .inspection__schedule-box-title,
.inspection__schedule-box:nth-child(2) .inspection__schedule-box-text {
  padding-block: 1rem;
}

.inspection__schedule-box-title {
  background-color: #C0A351;
  color: #FFFFFF;
  font-size: 1.375rem;
  line-height: 1.6;
  font-weight: 400;
  text-align: center;
}
@media screen and (min-width: 768px) {
  .inspection__schedule-box-title {
    width: 16rem;
  }
}

.inspection__schedule-box-title span {
  font-size: 1.125rem;
  display: block;
}

.inspection__schedule-box-text {
  padding-inline: 2.25rem 2.5rem;
  border: 1px solid #C0A351;
  flex-grow: 1;
}
@media screen and (min-width: 768px) {
  .inspection__schedule-box-text {
    width: 45.625rem;
  }
}

.inspection__schedule-conditions {
  margin-top: 1.875rem;
  font-size: 1rem;
  line-height: 1.6;
}

.inspection__space {
  display: none;
}
@media screen and (min-width: 768px) {
  .inspection__space {
    display: inline-block;
  }
}

.inspection__flow {
  margin-top: 3.125rem;
}
@media screen and (min-width: 768px) {
  .inspection__flow {
    margin-top: 6.25rem;
  }
}

.inspection__flow-inner {
  max-width: 63.9375rem;
  margin-inline: auto;
}

.inspection__flow-steps {
  margin-top: 1.5625rem;
  display: flex;
  gap: 2.5rem;
  align-items: flex-start;
}
@media screen and (min-width: 768px) {
  .inspection__flow-steps {
    margin-top: 3.125rem;
  }
}

.inspection__flow-timeline {
  width: 4.3125rem;
}

.inspection__flow-timeline-step {
  width: 100%;
  padding-inline: 2rem;
  padding-block: 1.25rem 1.1875rem;
  display: flex;
  align-items: center;
  font-size: 1.5rem;
  font-weight: 500;
  line-height: 1.2;
  letter-spacing: 0.3em;
  writing-mode: vertical-rl;
}
@media screen and (min-width: 768px) {
  .inspection__flow-timeline-step {
    font-size: 1.875rem;
  }
}

.inspection__flow-timeline-step span {
  text-combine-upright: all;
}

.inspection__flow-timeline-step.inspection__flow-timeline-step--light {
  background-color: #F4F0E4;
  clip-path: polygon(0 0, 100% 0, 100% 90%, 50% 100%, 0 90%);
}

.inspection__flow-timeline-step.inspection__flow-timeline-step--middle {
  background-color: #CBBD90;
  clip-path: polygon(100% 90%, 53% 100%, 0 90%, 0 0, 50% 10%, 100% 0);
}

.inspection__flow-timeline-step.inspection__flow-timeline-step--dark {
  background-color: #C0A351;
  color: #FFFFFF;
  clip-path: polygon(100% 90%, 53% 100%, 0 90%, 0 0, 50% 10%, 100% 0);
  padding-inline: 2.5rem 2.25rem;
}

.inspection__flow-content {
  width: 54.875rem;
  display: grid;
  gap: 4.4375rem;
}

.inspection__flow-first {
  display: grid;
  gap: 1.25rem;
}

.inspection__flow-item {
  padding: 1.25rem;
  border: 1px solid #C0A351;
  box-shadow: 0 4px 4px rgba(0, 0, 0, 0.25);
}
@media screen and (min-width: 768px) {
  .inspection__flow-item {
    padding: 1.8125rem 2.75rem;
  }
}

.inspection__flow-item-title {
  font-size: 1rem;
  line-height: 1.6;
  font-weight: 700;
  color: #C0A351;
}
@media screen and (min-width: 768px) {
  .inspection__flow-item-title {
    font-size: 1.25rem;
  }
}

.inspection__flow-item-text {
  font-size: 0.875rem;
  line-height: 1.6;
}
@media screen and (min-width: 768px) {
  .inspection__flow-item-text {
    font-size: 1.125rem;
  }
}

.inspection-flow-second {
  display: grid;
  gap: 1.25rem;
}

.inspection__flow-bottom {
  margin-top: 2.6875rem;
  display: flex;
  flex-direction: column;
  gap: 1.875rem;
}
@media screen and (min-width: 768px) {
  .inspection__flow-bottom {
    margin-top: 5.375rem;
    flex-direction: row;
    gap: 5.375rem;
  }
}

.inspection__flow-image {
  max-width: 21.4375rem;
  aspect-ratio: 343/281;
}

.inspection__flow-image img {
  -o-object-fit: cover;
     object-fit: cover;
  height: 100%;
}

.inspection__flow-note {
  max-width: 37.125rem;
  display: grid;
  gap: 1.25rem;
}

.inspection__flow-note-text {
  font-weight: 700;
  font-size: 1.125rem;
  line-height: 1.6;
}

.inspection__flow-note-text span {
  font-weight: 400;
  font-size: 1rem;
}

.inspection__quality {
  margin-top: 6.25rem;
  position: relative;
  margin-inline: calc(50% - 50vi);
}
@media screen and (min-width: 768px) {
  .inspection__quality {
    margin-top: 9.75rem;
  }
}

.inspection__quality::before {
  content: "";
  position: absolute;
  top: -3.125rem;
  left: 0;
  background-image: url(../image/bg/event-bg.jpg);
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  width: 100%;
  height: 20.375rem;
  z-index: -1;
}

.inspection__quality-inner {
  padding-inline: 0.9375rem;
  max-width: 62.125rem;
  margin-inline: auto;
}
@media screen and (min-width: 768px) {
  .inspection__quality-inner {
    padding-inline: initial;
  }
}

.inspection__quality-lead {
  margin-top: 1.8125rem;
  text-align: center;
  font-size: 1rem;
  line-height: 1.6;
}

.inspection__quality-list {
  margin-top: 2.625rem;
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  row-gap: 1.1875rem;
  -moz-column-gap: 1.1875rem;
       column-gap: 1.1875rem;
}
@media screen and (min-width: 768px) {
  .inspection__quality-list {
    grid-template-columns: repeat(3, 1fr);
    row-gap: 3.5625rem;
  }
}

.inspection__quality-caption {
  margin-top: 0.75rem;
  text-align: center;
  font-weight: 500;
  font-size: 1rem;
  line-height: 1.6;
}

.inspection__quality-report {
  margin-top: 6.25rem;
}

.inspection__quality-report-image {
  aspect-ratio: 994/331;
}

.inspection__quality-report-image img {
  -o-object-fit: cover;
     object-fit: cover;
  height: 100%;
}

.inspection__quality-report-text {
  margin-top: 1.25rem;
  font-size: 1rem;
  line-height: 1.6;
}

.inspection__summary {
  margin-top: 3.25rem;
}

.inspection__summary-inner {
  max-width: 61.9375rem;
  margin-inline: auto;
}

.inspection__summary-wrapper {
  padding: 1.25rem;
  border: 1px solid #C0A351;
}
@media screen and (min-width: 768px) {
  .inspection__summary-wrapper {
    padding: 2.5rem;
  }
}

.inspection__summary-list {
  margin-top: 1.875rem;
  display: grid;
  gap: 1.25rem;
}
@media screen and (min-width: 768px) {
  .inspection__summary-list {
    padding-left: 7.5rem;
    margin-top: 3.75rem;
    gap: 2.5rem;
  }
}

.inspection__summary-item {
  display: flex;
  gap: 1.125rem;
  align-items: center;
}

.inspection__summary-number {
  font-family: "Shippori Mincho B1", serif;
  line-height: 1.35;
  color: #FFFFFF;
  background-color: #C0A351;
  border-radius: 50%;
  padding: 0.875rem 1.0625rem;
}
@media screen and (min-width: 768px) {
  .inspection__summary-number {
    font-size: 1.25rem;
  }
}

.inspection__summary-highlight {
  font-family: "Shippori Mincho B1", serif;
  font-size: 1.25rem;
  line-height: 1.35;
  color: #C0A351;
}
@media screen and (min-width: 768px) {
  .inspection__summary-highlight {
    font-size: 1.5rem;
  }
}

.inspection__summary-desc {
  margin-top: 0.625rem;
  font-size: 0.875rem;
  line-height: 1.35;
  max-width: 29.3125rem;
}
@media screen and (min-width: 768px) {
  .inspection__summary-desc {
    font-size: 1rem;
  }
}

.inspection__summary-conclusion {
  margin-top: 3.125rem;
  border: 1px solid #C0A351;
  padding-block: 1.5625rem 2.1875rem;
  text-align: center;
}
@media screen and (min-width: 768px) {
  .inspection__summary-conclusion {
    padding-block: 2.8125rem 4.0625rem;
  }
}

.inspection__summary-conclusion-text {
  font-size: 1.3125rem;
  line-height: 1.6;
  color: #C0A351;
}
@media screen and (min-width: 768px) {
  .inspection__summary-conclusion-text {
    font-size: 1.5625rem;
  }
}

.inspection__summary-subtext {
  margin-top: 1.875rem;
  font-size: 1rem;
  line-height: 1.6;
}

.longterm-support {
  margin-top: 3.75rem;
}
@media screen and (min-width: 768px) {
  .longterm-support {
    margin-top: 8.5625rem;
  }
}

.longterm-support__inner {
  max-width: 61.6875rem;
  margin-inline: auto;
}

.longterm-support__header {
  display: flex;
  flex-direction: column;
  gap: 2.5rem;
  align-items: center;
}
@media screen and (min-width: 768px) {
  .longterm-support__header {
    flex-direction: row;
    gap: 5.0625rem;
  }
}

.longterm-support__text {
  max-width: 35.1875rem;
}

.longterm-support__label {
  border: 1px solid #C0A351;
  padding-inline: 1.875rem;
  font-family: "Shippori Mincho B1", serif;
  font-weight: 700;
  font-size: 0.75rem;
  line-height: 1.6;
  color: #C0A351;
  width: -moz-fit-content;
  width: fit-content;
  margin-top: 1rem;
}
@media screen and (min-width: 768px) {
  .longterm-support__label {
    font-size: 1.125rem;
    margin-top: 1.875rem;
  }
}

.longterm-support__desc {
  margin-top: 0.5625rem;
  font-size: 1rem;
  line-height: 1.6;
}

.longterm-support__image {
  max-width: 21.4375rem;
  aspect-ratio: 343/281;
}

.longterm-support__image img {
  -o-object-fit: cover;
     object-fit: cover;
  height: 100%;
}

.longterm-support__structure {
  margin-top: 4.375rem;
  max-width: 39.125rem;
  margin-inline: auto;
  aspect-ratio: 626/418;
}

.longterm-support__structure img {
  -o-object-fit: contain;
     object-fit: contain;
  height: 100%;
}

@media screen and (min-width: 768px) {
  .contact-form__info {
    text-align: center;
  }
}

.contact-form__tel-caption {
  font-family: "Shippori Mincho B1", serif;
  font-size: 1.125rem;
  line-height: 1.6;
}

.contact-form__tel-number {
  display: block;
  text-align: center;
  font-family: "Junge", serif;
  font-size: 2.375rem;
  line-height: 1.6;
  letter-spacing: 0.05em;
  color: #C0A351;
  position: relative;
  width: -moz-fit-content;
  width: fit-content;
  margin-inline: auto;
  padding-left: 2.1875rem;
}
@media screen and (min-width: 768px) {
  .contact-form__tel-number {
    font-size: 3.375rem;
    padding-left: 2.6875rem;
  }
}

.contact-form__tel-number::before {
  content: "";
  position: absolute;
  background-image: url(../image/icon/tel-gold.svg);
  background-size: 100% 100%;
  background-position: center;
  background-repeat: no-repeat;
  width: 2.0625rem;
  height: 2.0625rem;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
}
@media screen and (min-width: 768px) {
  .contact-form__tel-number::before {
    width: 3rem;
    height: 3rem;
  }
}

.form {
  margin-top: 5rem;
  max-width: 57.5rem;
  margin-inline: auto;
  display: grid;
  gap: 2.5rem;
}

.form__block {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 1.25rem;
}
@media screen and (min-width: 768px) {
  .form__block {
    flex-direction: row;
    gap: 3.4375rem;
  }
}

.form__label-area {
  min-width: 14.125rem;
  font-weight: 500;
  font-size: 1.125rem;
  line-height: 1.35;
}

.form__required {
  margin-left: 1.25rem;
  background-color: #C0A351;
  color: #FFFFFF;
  font-size: 0.75rem;
  line-height: 1.35;
  padding: 0.1875rem 0.625rem;
}

.form__required--ok {
  background-color: #4CAF50;
  transition: background-color 0.3s ease;
}

.form__note {
  display: block;
  font-size: 0.875rem;
}

.form__input-area {
  max-width: 39.9375rem;
  flex-grow: 1;
  font-size: 1rem;
  line-height: 1.35;
}

.form__input-area .wpcf7-checkbox {
  display: grid;
  gap: 0.75rem;
}

.form__alert {
  margin-top: 1.5625rem;
  font-size: 1rem;
  line-height: 1.35;
  color: #FF0000;
}

.form__input-area input {
  font-size: 1rem;
  line-height: 1.35;
  background-color: #FFFFFF;
  border-radius: 0.3125rem;
  border: 1px solid #cccccc;
  padding-block: 1.0625rem 1rem;
  padding-inline: 1.5rem;
}

.form__input-area input[type=text],
.form__input-area input[type=tel],
.form__input-area input[type=email] {
  width: 100%;
}

.form__alert + .wpcf7-form-control-wrap input[type=text] {
  margin-top: 0.625rem;
}

.form__action-button {
  margin-top: 1.875rem;
  font-size: 0.875rem;
  line-height: 1.6;
  position: relative;
}

.form__action-button::before {
  content: "";
  position: absolute;
  width: 0.5625rem;
  height: 0.625rem;
  border-top: 2px solid #FFFFFF;
  border-right: 2px solid #FFFFFF;
  top: 50%;
  right: 1.3125rem;
  transform: translateY(-50%) rotate(45deg);
}

.form__action-button input {
  color: #FFFFFF;
}

.wpcf7-spinner {
  width: 0;
  height: 0;
  margin: 0;
}

.wpcf7-list-item {
  display: block;
  margin: initial;
}

.form__contact-info:nth-child(2) {
  margin-top: 0.8125rem;
}

.form__contact-info-label {
  font-weight: 500;
  font-size: 1.125rem;
  line-height: 1.35;
  margin-bottom: 0.3125rem;
}

.form__contact-info-note {
  margin-top: 0.875rem;
  font-size: 0.75rem;
  line-height: 1.6;
}

.form__input-area select {
  font-size: 1rem;
  line-height: 1.35;
  background-color: #FFFFFF;
  border-radius: 0.3125rem;
  border: 1px solid #cccccc;
  padding-block: 1.0625rem 1rem;
  padding-inline: 1.5rem;
  width: 100%;
  margin-block: 0.625rem 0.75rem;
}
@media screen and (min-width: 768px) {
  .form__input-area select {
    width: 50%;
  }
}

.form__privacy {
  margin-top: 3.125rem;
  text-align: center;
  font-family: "Inter", sans-serif;
  font-size: 1rem;
  line-height: 1.35;
}
@media screen and (min-width: 768px) {
  .form__privacy {
    margin-top: 6.25rem;
  }
}

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

.form--material input.form-after__address-number {
  font-size: 1rem;
  line-height: 1.35;
  background-color: #FFFFFF;
  border-radius: 0.3125rem;
  border: 1px solid #cccccc;
  padding-block: 1.0625rem 1rem;
  padding-inline: 1.5rem;
  width: 100%;
}

.form--material input.form-after__address-number {
  margin-bottom: 1.25rem;
}
@media screen and (min-width: 768px) {
  .form--material input.form-after__address-number {
    width: 50%;
  }
}

.form--material input.form-after__address-area {
  font-size: 1rem;
  line-height: 1.35;
  background-color: #FFFFFF;
  border-radius: 0.3125rem;
  border: 1px solid #cccccc;
  padding-block: 1.0625rem 1rem;
  padding-inline: 1.5rem;
  width: 100%;
}

.form-after {
  margin-top: 2.5rem;
  display: grid;
  gap: 2.8125rem;
  max-width: 57.5rem;
  margin-inline: auto;
}
@media screen and (min-width: 768px) {
  .form-after {
    margin-top: 5rem;
  }
}

.form-after__block {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 1.25rem;
}
@media screen and (min-width: 768px) {
  .form-after__block {
    flex-direction: row;
    gap: 8.5625rem;
  }
}

.form-after__label-area {
  min-width: 9rem;
  font-weight: 500;
  font-size: 1.125rem;
  line-height: 1.35;
}

.form-after__input-area {
  max-width: 39.9375rem;
  flex-grow: 1;
  font-size: 1rem;
  line-height: 1.35;
  position: relative;
}

.form-after__required {
  position: absolute;
  right: 1.25rem;
  top: 50%;
  transform: translateY(-50%);
  background-color: #C0A351;
  color: #FFFFFF;
  font-size: 0.75rem;
  line-height: 1.35;
  padding: 0.1875rem 0.625rem;
  pointer-events: none;
}

.form-after__required--ok {
  background-color: #4CAF50;
  transition: background-color 0.3s ease;
}

.form-after__contact-info {
  position: relative;
}

.form-after__contact-info:nth-child(1) .form-after__required {
  transform: translateY(0);
}

.form-after__contact-info:nth-child(2) .form-after__required {
  top: 30%;
}
@media screen and (min-width: 768px) {
  .form-after__contact-info:nth-child(2) .form-after__required {
    top: 37%;
  }
}

.form-after__contact-info:nth-child(2) {
  margin-top: 0.8125rem;
}

.form-after__contact-info-label {
  font-weight: 500;
  font-size: 1.125rem;
  line-height: 1.35;
  margin-bottom: 0.3125rem;
}

.form__contact-info-note {
  margin-top: 0.875rem;
  font-size: 0.75rem;
  line-height: 1.6;
}

.form-after__date-info:nth-child(2) {
  margin-top: 1.25rem;
}

.form-after__date-info {
  display: flex;
  flex-direction: column;
  gap: 1rem;
}
@media screen and (min-width: 768px) {
  .form-after__date-info {
    flex-direction: row;
    gap: 4.5625rem;
  }
}

.form-after__datetime {
  position: relative;
  width: 50%;
}

.form-after input,
.form-after textarea {
  font-size: 1rem;
  line-height: 1.35;
  background-color: #FFFFFF;
  border-radius: 0.3125rem;
  border: 1px solid #cccccc;
  padding-block: 1.0625rem 1rem;
  padding-inline: 1.5rem;
  width: 100%;
}

.form-after input.form-after__address-number {
  margin-bottom: 1.25rem;
}
@media screen and (min-width: 768px) {
  .form-after input.form-after__address-number {
    width: 50%;
  }
}

.recruit-flow__lead {
  font-size: 0.875rem;
  line-height: 1.6;
  margin-top: 1.75rem;
}
@media screen and (min-width: 768px) {
  .recruit-flow__lead {
    margin-top: 3.5rem;
    font-size: 1rem;
  }
}

.recruit-flow__lead-type {
  background-color: #F4F0E4;
  padding-inline: 1.25rem;
  padding-block: 0.25rem;
  margin-right: 1rem;
}

.recruit-flow__container {
  position: relative;
  display: grid;
  grid-template-columns: 1fr;
  gap: 1.25rem;
  margin-top: 1.8125rem;
}
@media screen and (min-width: 768px) {
  .recruit-flow__container {
    grid-template-columns: 1fr 1fr 1fr;
  }
}

.recruit-flow__step {
  background-color: #F7F4EB;
  padding-block: 1.5625rem 1.875rem;
  padding-inline: 1rem;
}
@media screen and (min-width: 768px) {
  .recruit-flow__step {
    padding-inline: initial;
    min-height: 34.9375rem;
    padding-block: 1.875rem initial;
  }
}

.recruit-flow__title {
  text-align: center;
  font-family: "Shippori Mincho B1", serif;
  font-size: 1.625rem;
  line-height: 1.6;
  font-weight: 400;
  color: #5A4406;
}

.recruit-flow__box {
  border: 5px solid #D0C6A5;
  border-radius: 0.3125rem;
  background-color: #FFFFFF;
  padding-block: 0.625rem;
  text-align: center;
  font-family: "Shippori Mincho B1", serif;
  font-size: 1rem;
  line-height: 1.6;
  font-weight: 400;
}
@media screen and (min-width: 768px) {
  .recruit-flow__box {
    position: absolute;
    font-size: 1.25rem;
    padding-block: 0.75rem;
  }
}

@media screen and (min-width: 768px) {
  .recruit-flow__box--1 {
    top: 6.125rem;
    left: 1.625rem;
    width: calc(33.3333333333% - 3.25rem);
  }
}

.recruit-flow__box--2 {
  margin-top: 1.25rem;
}
@media screen and (min-width: 768px) {
  .recruit-flow__box--2 {
    top: 12.25rem;
    left: 1.625rem;
    width: calc(100% - 3.25rem);
    margin-top: initial;
  }
}

.recruit-flow__box--3 {
  margin-top: 1.25rem;
}
@media screen and (min-width: 768px) {
  .recruit-flow__box--3 {
    top: 6.125rem;
    left: calc(33.3333333333% + 1.625rem + 1.25rem);
    width: calc(33.3333333333% - 3.25rem - 1.25rem);
    margin-top: initial;
  }
}

.recruit-flow__list {
  border: 5px solid #D0C6A5;
  border-radius: 0.3125rem;
  background-color: #FFFFFF;
  padding-block: 0.5625rem 0.75rem;
  display: grid;
  gap: 1rem;
}
@media screen and (min-width: 768px) {
  .recruit-flow__list {
    position: absolute;
  }
}

.recruit-flow__list--1 {
  margin-top: 1.25rem;
  padding-inline: 0.9375rem 0.8125rem;
}
@media screen and (min-width: 768px) {
  .recruit-flow__list--1 {
    top: 18.25rem;
    left: 1.625rem;
    width: calc(33.3333333333% - 3.25rem);
    margin-top: initial;
  }
}

.recruit-flow__list--2 {
  margin-top: 1.25rem;
  padding-inline: 0.9375rem 0.8125rem;
}
@media screen and (min-width: 768px) {
  .recruit-flow__list--2 {
    top: 18.25rem;
    left: calc(33.3333333333% + 1.625rem + 1.25rem);
    width: calc(66.6666666667% - 3.25rem - 1.25rem);
    padding-inline: 2.125rem 1.8125rem;
    margin-top: initial;
  }
}

.recruit-flow__list-item {
  font-family: "Shippori Mincho B1", serif;
  font-size: 0.875rem;
  line-height: 1.6;
  font-weight: 400;
}

.archive-works__lead {
  font-family: "Shippori Mincho B1", serif;
  font-size: 1rem;
  line-height: 2;
}
@media screen and (min-width: 768px) {
  .archive-works__lead {
    text-align: center;
    font-size: 1.125rem;
  }
}

.archive-works__form {
  margin-top: 2.1875rem;
  padding: 1.25rem;
  border: 1px solid #D9D9D9;
}
@media screen and (min-width: 768px) {
  .archive-works__form {
    max-width: 62.5rem;
    margin-inline: auto;
    margin-top: 4.375rem;
    padding: 2.0625rem 2.5rem 2.5rem;
  }
}

.archive-works__category {
  padding-bottom: 1.4375rem;
  border-bottom: 1px solid #D9D9D9;
  display: flex;
  flex-wrap: wrap;
  gap: 1.25rem;
  align-items: flex-start;
}
@media screen and (min-width: 768px) {
  .archive-works__category {
    margin-right: 2.5rem;
    gap: 2.5rem;
  }
}

.archive-works__label {
  font-size: 1.125rem;
  line-height: 1.35;
  min-width: 5.875rem;
  padding-block: 0.4375rem;
}

.archive-works__label.archive-works__label--category {
  color: #FFFFFF;
  background-color: #C0A351;
  padding-inline: 0.6875rem;
}

.archive-works__label.archive-works__label--tag {
  background-color: #F4F0E4;
  padding-inline: 1.8125rem;
}

.archive-works__tag {
  padding-top: 1.4375rem;
  display: flex;
  flex-direction: column;
  gap: 1.25rem;
  align-items: flex-start;
}
@media screen and (min-width: 768px) {
  .archive-works__tag {
    flex-direction: row;
    gap: 2.5rem;
  }
}

.archive-works__check {
  display: flex;
  -moz-column-gap: 2.5rem;
       column-gap: 2.5rem;
  row-gap: 1.25rem;
  flex-wrap: wrap;
}

.archive-works__tag .archive-works__check {
  max-width: 53.5625rem;
}

.archive-works__check input {
  font-size: 1rem;
  line-height: 1.35;
}

.archive-works__button {
  margin-top: 0.75rem;
}

.archive-works__list-items {
  margin-top: 6.25rem;
  max-width: 62.5rem;
  margin-inline: auto;
}

.archive-voice__lead {
  font-family: "Shippori Mincho B1", serif;
  font-size: 1rem;
  line-height: 2;
}
@media screen and (min-width: 768px) {
  .archive-voice__lead {
    text-align: center;
    font-size: 1.125rem;
  }
}

.archive-voice__form {
  margin-top: 2.1875rem;
  padding: 1.25rem;
  border: 1px solid #D9D9D9;
}
@media screen and (min-width: 768px) {
  .archive-voice__form {
    max-width: 62.5rem;
    margin-inline: auto;
    margin-top: 4.375rem;
    padding: 2.0625rem 2.5rem;
  }
}

.archive-voice__category {
  padding-bottom: 1.4375rem;
  border-bottom: 1px solid #D9D9D9;
  display: flex;
  flex-wrap: wrap;
  gap: 1.25rem;
  align-items: flex-start;
}
@media screen and (min-width: 768px) {
  .archive-voice__category {
    margin-right: 2.5rem;
    gap: 2.5rem;
  }
}

.archive-voice__label {
  font-size: 1.125rem;
  line-height: 1.35;
  min-width: 5.875rem;
  padding-block: 0.4375rem;
  text-align: center;
  width: 5.875rem;
}

.archive-voice__label.archive-voice__label--category {
  color: #FFFFFF;
  background-color: #C0A351;
  padding-inline: 0.6875rem;
}

.archive-voice__label.archive-voice__label--tag {
  background-color: #F4F0E4;
  padding-inline: 0.6875rem;
}

.archive-voice__tag {
  padding-top: 1.4375rem;
  display: flex;
  flex-direction: column;
  gap: 1.25rem;
  align-items: flex-start;
}
@media screen and (min-width: 768px) {
  .archive-voice__tag {
    flex-direction: row;
    gap: 2.5rem;
  }
}

.archive-voice__check {
  display: flex;
  -moz-column-gap: 2.5rem;
       column-gap: 2.5rem;
  row-gap: 1.25rem;
  flex-wrap: wrap;
}

.archive-voice__tag .archive-voice__check {
  max-width: 53.5625rem;
}

.archive-voice__check input {
  font-size: 1rem;
  line-height: 1.35;
}

.information__container {
  display: flex;
  flex-direction: column;
  gap: 2.5rem;
  align-items: flex-start;
  justify-content: space-between;
}
@media screen and (min-width: 768px) {
  .information__container {
    flex-direction: row;
    gap: 7.1875rem;
  }
}

.information__container h3 {
  padding: 0.5rem 0;
  margin: 1rem 0;
}

.information__container form {
  margin-bottom: 4rem;
}

.information__container iframe {
  width: 100%;
}

@media screen and (min-width: 768px) {
  .information__main {
    width: 53.75rem;
  }
}

.information__title {
  font-family: "Shippori Mincho B1", serif;
  font-weight: 400;
  font-size: 1.5rem;
  line-height: 2;
  padding-bottom: 0.3125rem;
  border-bottom: 1px solid #D9D9D9;
}

.information__date {
  font-size: 1.125rem;
  line-height: 2;
  color: #9C9C9C;
}

.information__body {
  margin-top: 1.875rem;
}

.information__body p {
  font-size: 1rem;
  line-height: 1.6;
}
.information__list {
  border-top: 1px solid #a09575;
}
@media screen and (min-width: 768px) {
  .information__list {
    border-top: 1px solid #C9C9C9;
  }
}

.information__list-item {
  border-bottom: 1px solid #a09575;
  padding-block: 0.75rem 0.9375rem;
}
@media screen and (min-width: 768px) {
  .information__list-item {
    border-bottom: 1px solid #C9C9C9;
    padding-block: 1.5rem 1.875rem;
  }
}

.information__list-date {
  font-size: 1rem;
  line-height: 1.6;
  color: #9C9C9C;
}
@media screen and (min-width: 768px) {
  .information__list-date {
    font-size: 1.125rem;
  }
}

.information__list-cat {
  font-size: 0.75rem;
  line-height: 1.6;
  color: #FFFFFF;
  background-color: #C0A351;
  padding-inline: 0.75rem;
  margin-left: 1.25rem;
}

.information__list-title {
  display: block;
  margin-top: 0.3125rem;
  font-size: 1rem;
  line-height: 1.6;
  color: #333333;
}
@media screen and (min-width: 768px) {
  .information__list-title {
    font-size: 1.125rem;
  }
}

.pagination {
  text-align: center;
  margin: 40px 0 0 0;
}

.pagination ul {
  display: inline-flex;
  list-style: none;
  padding: 0;
}

.pagination li {
  margin: 0 8px;
}

.pagination .current {
  color: #bfa76a;
  font-weight: bold;
}

.pagination a {
  color: #555555;
  text-decoration: none;
}

.pagination .dots {
  color: #888;
}

.page-numbers li:first-child a,
.page-numbers li:last-child a {
  color: #bfa76a;
}

.sidebar {
  display: grid;
  gap: 3.75rem;
  width: 100%;
}
@media screen and (min-width: 768px) {
  .sidebar {
    width: 14.0625rem;
    gap: 7.5rem;
  }
}

.sidebar__title {
  font-size: 1.125rem;
  line-height: 1.6;
  color: #FFFFFF;
  background-color: #C0A351;
  padding-block: 0.375rem;
  text-align: center;
  font-weight: 400;
}

.sidebar__list {
  display: grid;
}

.sidebar__list.sidebar__list--news .sidebar__item a {
  font-size: 0.9375rem;
  line-height: 1.35;
  color: #333333;
}

.sidebar__list.sidebar__list--category .sidebar__item a {
  font-size: 1rem;
  line-height: 1.6;
  text-align: center;
  color: #333333;
  display: block;
}

.sidebar__item {
  border-bottom: 1px solid #C9C9C9;
  padding: 0.625rem;
}

.sidebar__list time {
  font-size: 0.8125rem;
  line-height: 1.35;
  color: #A3A3A3;
  display: block;
}

.sidebar__btn {
  display: block;
  margin-top: 1.875rem;
  border: 1px solid #C0A351;
  color: #C0A351;
  font-size: 0.875rem;
  line-height: 1.6;
  padding-block: 0.5625rem;
  text-align: center;
  position: relative;
}

.sidebar__btn::before {
  content: "";
  position: absolute;
  width: 0.5625rem;
  height: 0.625rem;
  border-top: 1px solid #C0A351;
  border-right: 1px solid #C0A351;
  top: 50%;
  right: 0.9375rem;
  transform: translateY(-50%) rotate(45deg);
}

.post__pagination {
  margin-top: 1.875rem;
  border-top: 1px solid #D9D9D9;
  position: relative;
}

.post__prev {
  position: absolute;
  left: 1.875rem;
  top: 0.875rem;
}
@media screen and (min-width: 768px) {
  .post__prev {
    top: 1.3125rem;
  }
}

.post__prev::before {
  content: "";
  position: absolute;
  width: 0.5625rem;
  height: 0.625rem;
  border-top: 2px solid #C0A351;
  border-left: 2px solid #C0A351;
  top: 50%;
  left: -0.875rem;
  transform: translateY(-50%) rotate(-45deg);
}
@media screen and (min-width: 768px) {
  .post__prev::before {
    left: -1.875rem;
  }
}

.post__link {
  font-size: 0.875rem;
  line-height: 1.125;
  color: #C0A351;
}
@media screen and (min-width: 768px) {
  .post__link {
    font-size: 1.125rem;
  }
}

.post__next {
  position: absolute;
  right: 1.875rem;
  top: 0.875rem;
}
@media screen and (min-width: 768px) {
  .post__next {
    top: 1.3125rem;
    right: 2.875rem;
  }
}

.post__next::before {
  content: "";
  position: absolute;
  width: 0.5625rem;
  height: 0.625rem;
  border-top: 2px solid #C0A351;
  border-right: 2px solid #C0A351;
  top: 50%;
  right: -1.25rem;
  transform: translateY(-50%) rotate(45deg);
}
@media screen and (min-width: 768px) {
  .post__next::before {
    right: -2.625rem;
  }
}

.post__list-back {
  font-size: 0.875rem;
  line-height: 1.125;
  color: #555555;
  display: block;
  width: -moz-fit-content;
  width: fit-content;
  margin-top: 1.3125rem;
  margin-inline: auto;
}
@media screen and (min-width: 768px) {
  .post__list-back {
    font-size: 1.125rem;
  }
}

.real-estate__title {
  font-family: "Shippori Mincho B1", serif;
  font-weight: 400;
  font-size: 1.5rem;
  line-height: 2;
  text-align: center;
  margin-bottom: 0.3125rem;
  border-bottom: 1px solid #D9D9D9;
}

.real-estate__list-tags {
  margin-top: 1rem;
  display: flex;
  justify-content: center;
  gap: 0.375rem;
}

.real-estate__list-tag {
  background-color: #F4F0E4;
  padding-inline: 0.625rem;
  font-size: 0.875rem;
  line-height: 1.3;
}

.real-estate__wrapper {
  margin-inline: auto;
  max-width: 78.125rem;
  width: 100%;
}

.real-estate__arrows {
  display: flex;
  align-items: center;
  justify-content: space-between;
  position: absolute;
  width: 100%;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
}

.real-estate__arrows img {
  width: 1.875rem;
  height: 1.875rem;
}
@media screen and (min-width: 768px) {
  .real-estate__arrows img {
    width: 3.4375rem;
    height: 3.4375rem;
  }
}

.real-estate__track {
  max-width: 17.5rem;
  margin-inline: auto;
  margin-top: 1.25rem;
}
@media screen and (min-width: 768px) {
  .real-estate__track {
    max-width: 62.5rem;
  }
}

.real-estate__slide {
  opacity: 0.6;
}

.real-estate__slide.is-active {
  opacity: 1;
}

.real-estate__slide {
  aspect-ratio: 1000/626;
}

.real-estate__slide img {
  -o-object-fit: cover;
     object-fit: cover;
  height: 100%;
  width: 100%;
}

.real-estate__block {
  margin-top: 3.1875rem;
  max-width: 62.5rem;
  margin-inline: auto;
}

.real-estate__heading {
  display: flex;
  flex-direction: column;
  gap: 1.25rem;
  align-items: flex-start;
}
@media screen and (min-width: 768px) {
  .real-estate__heading {
    flex-direction: row;
    gap: 1.875rem;
  }
}

.real-estate__label {
  background-color: #C0A351;
  color: #FFFFFF;
  padding-inline: 1.75rem 1.1875rem;
  padding-block: 0.375rem;
  width: 13.9375rem;
  display: block;
}

.real-estate__desc {
  max-width: 46.5rem;
}

.real-estate__table {
  margin-top: 1.25rem;
}
@media screen and (min-width: 768px) {
  .real-estate__table {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    row-gap: 1.25rem;
    -moz-column-gap: 1.5625rem;
         column-gap: 1.5625rem;
  }
}

@media screen and (min-width: 768px) {
  .real-estate__table > :nth-child(1) {
    grid-column: 1/span 1;
    grid-row: 1;
  }
}

@media screen and (min-width: 768px) {
  .real-estate__table > :nth-child(2) {
    grid-column: 2/span 1;
    grid-row: 1;
  }
}

@media screen and (min-width: 768px) {
  .real-estate__table > :nth-child(3) {
    grid-column: 3/span 2;
    grid-row: 1;
  }
}

@media screen and (min-width: 768px) {
  .real-estate__table > :nth-child(4) {
    grid-column: 1;
    grid-row: 2;
  }
}

@media screen and (min-width: 768px) {
  .real-estate__table > :nth-child(5) {
    grid-column: 2;
    grid-row: 2;
  }
}

@media screen and (min-width: 768px) {
  .real-estate__table > :nth-child(6) {
    grid-column: 3;
    grid-row: 2;
  }
}

@media screen and (min-width: 768px) {
  .real-estate__table > :nth-child(7) {
    grid-column: 4;
    grid-row: 2;
  }
}

@media screen and (min-width: 768px) {
  .real-estate__table > :nth-child(8) {
    grid-column: 1;
    grid-row: 3;
  }
}

@media screen and (min-width: 768px) {
  .real-estate__table > :nth-child(9) {
    grid-column: 2;
    grid-row: 3;
  }
}

@media screen and (min-width: 768px) {
  .real-estate__table > :nth-child(10) {
    grid-column: 3;
    grid-row: 3;
  }
}

.real-estate__table > :nth-child(11) {
  grid-column: 1/span 2;
  grid-row: 4;
}

.real-estate__row {
  display: flex;
  flex-direction: column;
  gap: 1rem;
  align-items: center;
  margin-top: 1rem;
}
@media screen and (min-width: 768px) {
  .real-estate__row {
    flex-direction: row;
    gap: 1.5625rem;
    margin-top: initial;
  }
}

.real-estate__cell {
  font-size: 1rem;
  line-height: 1.6;
}

.real-estate__cell.real-estate__cell--label {
  background-color: #F4F0E4;
  text-align: center;
  padding-block: 0.375rem;
  width: 100%;
}
@media screen and (min-width: 768px) {
  .real-estate__cell.real-estate__cell--label {
    width: 8.375rem;
  }
}

.real-estate__note {
  display: flex;
  flex-direction: column;
  gap: 1rem;
  align-items: center;
  margin-top: 1rem;
}
@media screen and (min-width: 768px) {
  .real-estate__note {
    flex-direction: row;
    gap: 1.5625rem;
    margin-top: 1.25rem;
  }
}

.real-estate__note-label {
  background-color: #F4F0E4;
  width: 100%;
  text-align: center;
  padding-block: 0.375rem;
}
@media screen and (min-width: 768px) {
  .real-estate__note-label {
    width: 8.375rem;
    padding-block: 5.0625rem;
  }
}

.real-estate__note-value {
  font-size: 1rem;
  line-height: 1.6;
}

.real-estate__content-title {
  margin-top: 5rem;
  background-color: #C0A351;
  color: #FFFFFF;
  text-align: center;
  padding-block: 0.75rem;
  font-weight: 500;
  font-size: 1rem;
  line-height: 1.6;
}

.real-estate__content-text {
  margin-top: 1.25rem;
  font-size: 1rem;
  line-height: 1.6;
}

.real-estate__content-image {
  aspect-ratio: 1000/595;
  margin-top: 1.25rem;
}

.real-estate__content-image img {
  -o-object-fit: cover;
     object-fit: cover;
  height: 100%;
}

.real-estate__button {
  margin-top: 5rem;
}

.real-estate__form-title {
  margin-top: 2.5rem;
  font-family: "Shippori Mincho B1", serif;
  font-weight: 400;
  font-size: 1.5rem;
  line-height: 2;
  text-align: center;
}

.voice-block {
  margin-top: 4.3125rem;
}

.voice-block__container {
  display: flex;
  align-items: center;
  position: relative;
  margin-top: 3.125rem;
}
@media screen and (min-width: 768px) {
  .voice-block__container {
    gap: 3.0625rem;
  }
}

.voice-block__container::before {
  content: "";
  position: absolute;
  background-image: url(../image/bg/works-voice-bg.png);
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  z-index: 1;
}

.voice-block__content {
  color: #FFFFFF;
  position: relative;
  z-index: 2;
  max-width: 36.875rem;
  padding-left: 0.3125rem;
}
@media screen and (min-width: 768px) {
  .voice-block__content {
    padding-left: 6.3125rem;
  }
}

.voice-block__name {
  font-size: 0.75rem;
  line-height: 1.35;
}
@media screen and (min-width: 768px) {
  .voice-block__name {
    font-size: 1rem;
  }
}

.voice-block__text {
  font-family: "Shippori Mincho B1", serif;
  font-weight: 400;
  font-size: 0.875rem;
  margin-top: 0.3125rem;
  line-height: 1.6;
}
@media screen and (min-width: 768px) {
  .voice-block__text {
    font-size: 1.25rem;
    margin-top: 1.25rem;
  }
}

.voice-block__image {
  width: 12.5rem;
  aspect-ratio: 610/295;
  position: relative;
  z-index: 0;
}
@media screen and (min-width: 768px) {
  .voice-block__image {
    max-width: 38.125rem;
    width: 100%;
  }
}

.voice-block__image img {
  -o-object-fit: cover;
     object-fit: cover;
  height: 100%;
}

.voice-list {
  margin-top: 5.8125rem;
  position: relative;
  padding-bottom: 5.0625rem;
}

.voice-list::after {
  content: "";
  position: absolute;
  background-image: url(../image/bg/page-bottom-left-bg.jpg);
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 31.875rem;
  z-index: -1;
  margin-inline: calc(50% - 50vi);
}

.voice-list__items {
  display: grid;
  grid-template-columns: 1fr;
  gap: 1.75rem;
  margin-top: 3.125rem;
}
@media screen and (min-width: 768px) {
  .voice-list__items {
    grid-template-columns: repeat(3, 1fr);
    gap: 5.1875rem;
  }
}

.voice-list__item {
  position: relative;
}

.voice-list__image {
  aspect-ratio: 345/280;
}

.voice-list__image img {
  -o-object-fit: cover;
     object-fit: cover;
  height: 100%;
}

.voice-list__category {
  position: absolute;
  top: 0;
  left: 0;
  background-color: #C0A351;
  color: #FFFFFF;
  font-size: 0.75rem;
  padding-block: 0.375rem;
  padding-inline: 0.75rem;
}
@media screen and (min-width: 768px) {
  .voice-list__category {
    font-size: 1rem;
    padding-block: 0.5rem;
    padding-inline: 0.9375rem;
  }
}

.voice-list__title {
  font-size: 1rem;
  line-height: 1.3;
  color: #333333;
  margin-top: 0.625rem;
  font-weight: 700;
}

.voice-list__tags {
  margin-top: 0.5rem;
  display: flex;
  flex-wrap: wrap;
  gap: 0.25rem;
}

.voice-list__tag {
  color: #555555;
  background-color: #F4F0E4;
  padding-inline: 0.625rem;
  font-size: 0.875rem;
  line-height: 1.3;
}

.voice-list__excerpt {
  margin-top: 0.625rem;
  color: #333333;
  font-size: 0.875rem;
  line-height: 1.6;
}

.voice-single__body {
  gap: 3.125rem;
  display: flex;
}

.voice-single__grid {
  margin-top: 1.25rem;
}

.voice-single__title {
  font-size: 1.5rem;
  text-align: left;
  line-height: 2;
  font-weight: 400;
  border-bottom: 1px solid #B3B3B3;
}

.voice-single__text {
  margin-top: 1.9375rem;
  margin-bottom: 2rem;
  font-size: 1rem;
  line-height: 1.6;
}
@media screen and (min-width: 768px) {
  .voice-single__text {
    margin-bottom: 4rem;
  }
}

.voice-single__link {
  position: relative;
}

.voice-single__link::before {
  content: "";
  position: absolute;
  width: 0.5625rem;
  height: 0.625rem;
  border-top: 2px solid #FFFFFF;
  border-right: 2px solid #FFFFFF;
  top: 50%;
  right: 1.25rem;
  transform: translateY(-50%) rotate(45deg);
}

.voice-single__event {
  margin-top: 8.875rem;
}

.voice-page .voice-handwritten-block {
  width: 100%;
  margin: 2rem auto;
}
@media screen and (min-width: 768px) {
  .voice-page .voice-handwritten-block {
    width: 80%;
  }
}

.voice-page .voice-handwritten-image {
  border: 1px solid #ddd;
  padding: 0;
}
@media screen and (min-width: 768px) {
  .voice-page .voice-handwritten-image {
    padding: 2rem;
  }
}

.voice-page .voice-single__block {
  display: flex;
  justify-content: space-between;
  margin-bottom: 1.3rem;
}
@media screen and (min-width: 768px) {
  .voice-page .voice-single__block {
    margin-bottom: 3rem;
  }
}

.voice-page .voice-single__block .wp-block-column {
  width: 30%;
}

.voice-single__button {
  margin: 2rem auto;
}
@media screen and (min-width: 768px) {
  .voice-single__button {
    margin-bottom: 4rem;
  }
}

.works-gallery {
  margin-top: 3.75rem;
  position: relative;
  margin-inline: calc(50% - 50vi);
  overflow-x: clip;
}
@media screen and (min-width: 768px) {
  .works-gallery {
    margin-top: 7.5rem;
  }
}

.works-gallery::before {
  content: "";
  position: absolute;
  background-image: url(../image/bg/inspection-rectangle-bg.jpg);
  background-size: 100% 100%;
  background-position: center;
  background-repeat: no-repeat;
  width: 100%;
  height: 98.375rem;
  top: -18.75rem;
  left: 0;
  z-index: -1;
}

.works-gallery__grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  row-gap: 1.125rem;
  -moz-column-gap: 1.25rem;
       column-gap: 1.25rem;
  margin-top: 3.125rem;
  max-width: 65.625rem;
}
@media screen and (min-width: 768px) {
  .works-gallery__grid {
    grid-template-columns: repeat(4, 1fr);
  }
}

.works-gallery__item {
  aspect-ratio: 1/1;
}

.works-gallery__item img {
  -o-object-fit: cover;
     object-fit: cover;
  height: 100%;
}

.works-list {
  margin-top: 2.5rem;
  position: relative;
  padding-bottom: 2.5rem;
}
@media screen and (min-width: 768px) {
  .works-list {
    margin-top: 5.8125rem;
    padding-bottom: 5.0625rem;
  }
}

.works-list__items {
  display: grid;
  grid-template-columns: 1fr;
  gap: 1.75rem;
  margin-top: 3.125rem;
}
@media screen and (min-width: 768px) {
  .works-list__items {
    grid-template-columns: repeat(3, 1fr);
  }
}

.works-list__item {
  position: relative;
}

.works-list__image {
  aspect-ratio: 315/220;
}

.works-list__image img {
  -o-object-fit: cover;
     object-fit: cover;
  height: 100%;
}

.works-list__category {
  position: absolute;
  top: 0;
  left: 0;
  background-color: #C0A351;
  color: #FFFFFF;
  font-size: 0.75rem;
  padding-block: 0.375rem;
  padding-inline: 0.75rem;
}
@media screen and (min-width: 768px) {
  .works-list__category {
    font-size: 1rem;
    padding-block: 0.5rem;
    padding-inline: 0.9375rem;
  }
}

.works-list__title {
  font-size: 0.875rem;
  line-height: 1.3;
  color: #333333;
  margin-top: 0.625rem;
}
@media screen and (min-width: 768px) {
  .works-list__title {
    font-size: 1rem;
  }
}

.works-list__tags {
  margin-top: 0.5rem;
  display: flex;
  flex-wrap: wrap;
  gap: 0.25rem;
}

.works-list__tag {
  color: #555555;
  background-color: #F4F0E4;
  padding-inline: 0.625rem;
  font-size: 0.875rem;
  line-height: 1.3;
}

.works-list__button {
  margin-top: 2.5rem;
}
@media screen and (min-width: 768px) {
  .works-list__button {
    margin-top: 5.8125rem;
  }
}

.works-single__title {
  font-family: "Shippori Mincho B1", serif;
  font-weight: 400;
  font-size: 1.5rem;
  line-height: 2;
  padding-bottom: 0.3125rem;
  border-bottom: 1px solid #D9D9D9;
}

.works-single__body {
  margin-top: 2.5rem;
  display: grid;
  gap: 2.5rem;
}
@media screen and (min-width: 768px) {
  .works-single__body {
    gap: 5rem;
  }
}

.works-single__body .wp-block-columns:nth-child(even) {
  flex-wrap: wrap-reverse !important;
}

.works-single__image {
  max-width: 32.5rem;
  aspect-ratio: 520/340;
}

.works-single__image img {
  -o-object-fit: cover;
     object-fit: cover;
  height: 100%;
}

.works-single__heading {
  font-family: "Shippori Mincho B1", serif;
  font-weight: 400;
  font-size: 1.25rem;
  line-height: 1.5;
}
@media screen and (min-width: 768px) {
  .works-single__heading {
    font-size: 1.5rem;
  }
}

.works-single__desc {
  margin-top: 1.25rem;
  font-size: 1rem;
  line-height: 1.6;
}
@media screen and (min-width: 768px) {
  .works-single__desc {
    margin-top: 1.875rem;
  }
}

.works-single__category {
  margin-top: 6.25rem;
}

.works-single__category-title {
  font-size: 1.5rem;
  line-height: 1.6;
  font-weight: 400;
  color: #FFFFFF;
  background-color: #C0A351;
  text-align: center;
  padding-block: 0.75rem;
}

.archive-estate__lead {
  margin-top: 1.5625rem;
  font-family: "Shippori Mincho B1", serif;
  font-size: 1rem;
  line-height: 2;
}
@media screen and (min-width: 768px) {
  .archive-estate__lead {
    font-size: 1.125rem;
    text-align: center;
  }
}

.archive-estate__list {
  margin-top: 3.125rem;
}
@media screen and (min-width: 768px) {
  .archive-estate__list {
    margin-top: 6.25rem;
  }
}

.archive-estate__list-tabs {
  display: flex;
  justify-content: center;
}

.archive-estate__list-tab {
  padding-block: 0.75rem;
  padding-inline: 0.75rem;
  font-size: 0.875rem;
  line-height: 1.6;
  border: 1px solid #D9D9D9;
  color: #333333;
}
@media screen and (min-width: 768px) {
  .archive-estate__list-tab {
    padding-inline: 3.125rem;
    font-size: 1.125rem;
  }
}

.archive-estate__list-tab.active {
  background-color: #C0A351;
  color: #FFFFFF;
}

.archive-estate__list-items {
  margin-top: 2.5rem;
}
@media screen and (min-width: 768px) {
  .archive-estate__list-items {
    margin-top: 5rem;
  }
}

.archive-estate__list-item {
  border-bottom: 1px solid #EDEDED;
  display: flex;
  flex-direction: column;
  gap: 1.25rem;
  justify-content: space-between;
  align-items: center;
  color: #333333;
  padding-block: 1rem;
}
@media screen and (min-width: 768px) {
  .archive-estate__list-item {
    flex-direction: row;
    padding-block: 1.875rem;
    gap: 2.5rem;
  }
}

.archive-estate__list-image-box {
  aspect-ratio: 370/260;
  position: relative;
  width: 100%;
}
@media screen and (min-width: 768px) {
  .archive-estate__list-image-box {
    max-width: 23.125rem;
  }
}

.archive-estate__list-image-box img {
  -o-object-fit: cover;
     object-fit: cover;
  height: 100%;
}

.archive-estate__list-label {
  position: absolute;
  top: 0;
  left: 0;
  background-color: #C0A351;
  color: #FFFFFF;
  font-size: 0.75rem;
  padding-block: 0.375rem;
  padding-inline: 0.75rem;
}
@media screen and (min-width: 768px) {
  .archive-estate__list-label {
    font-size: 1rem;
    padding-block: 0.5rem;
    padding-inline: 0.9375rem;
  }
}

.archive-estate__list-body {
  max-width: 43.4375rem;
}

.archive-estate__list-tags {
  justify-content: flex-start;
}

.archive-estate__list-title {
  margin-top: 0.3125rem;
  font-size: 1.25rem;
  line-height: 1.6;
  font-weight: 700;
}
@media screen and (min-width: 768px) {
  .archive-estate__list-title {
    font-size: 1.375rem;
  }
}

.archive-estate__list-description {
  margin-top: 0.1875rem;
  font-size: 1rem;
  line-height: 1.6;
  font-weight: 700;
}

.archive-estate__list-info-container {
  margin-top: 1.125rem;
  display: flex;
  flex-direction: column;
  gap: 1.25rem;
}
@media screen and (min-width: 768px) {
  .archive-estate__list-info-container {
    flex-direction: row;
  }
}

.archive-estate__list-info-box {
  border: 1px solid #EDEDED;
  padding: 0.875rem 1.25rem 1.75rem 2.1875rem;
}

.archive-estate__list-price {
  font-size: 1rem;
  line-height: 1.6;
  font-weight: 500;
}

.archive-estate__list-price span {
  font-size: 2.125rem;
}

.archive-estate__list-area {
  font-size: 1rem;
  line-height: 1.6;
}

.archive-estate__list-access {
  border: 1px solid #EDEDED;
  padding: 0.5625rem 0.8125rem;
  font-size: 1rem;
  line-height: 1.6;
}

.archive-estate__list-arrow {
  width: 3.4375rem;
}/*# sourceMappingURL=styles.css.map */