@charset "UTF-8";
.top-fv {
  position: relative;
}
.top-fv__list {
  display: flex;
  flex-direction: column;
}
@media screen and (min-width: 1100px) {
  .top-fv__list {
    flex-direction: row;
  }
}
.top-fv__item {
  position: relative;
  overflow: hidden;
  opacity: 1;
}
@media screen and (min-width: 1100px) {
  .top-fv__item {
    width: 33.3333%;
  }
}
.top-fv__item:hover {
  opacity: 1;
}
.top-fv__item:hover .color-mask {
  opacity: 0;
}
.top-fv__item .color-mask {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 2;
  transition: all 0.5s ease;
  pointer-events: none;
}
.top-fv__item .color-mask.--blue {
  background: rgba(94, 68, 76, 0.65);
}
.top-fv__item .color-mask.--orange {
  background: rgba(107, 54, 24, 0.65);
}
.top-fv__item .color-mask.--yellow {
  background: rgba(92, 68, 34, 0.65);
}
.top-fv__item-media {
  position: relative;
  z-index: 1;
}
.top-fv__item-media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.top-fv__item-media.--01 {
  height: min((100svh - 60px) / 3, 400px);
}
@media screen and (min-width: 768px) {
  .top-fv__item-media.--01 {
    height: min(33.3333333333svh, 400px);
  }
}
@media screen and (min-width: 1100px) {
  .top-fv__item-media.--01 {
    display: none;
  }
}
.top-fv__item-media.--02 {
  display: none;
  height: min(100svh, 1000px);
}
@media screen and (min-width: 1100px) {
  .top-fv__item-media.--02 {
    display: block;
  }
}
.top-fv__item-catch {
  display: grid;
  grid-template-columns: auto 1fr;
  grid-template-areas: "ttl icon" "txt txt";
  gap: 10px;
  max-width: 680px;
  width: calc(100% - 30px);
  position: absolute;
  top: auto;
  left: 50%;
  bottom: 25px;
  transform: translate(-50%, 0);
  z-index: 3;
}
@media screen and (min-width: 1100px) {
  .top-fv__item-catch {
    grid-template-columns: 100%;
    grid-template-areas: "ttl" "txt" "icon";
    justify-content: center;
    gap: 25px;
    max-width: none;
    top: 50%;
    bottom: auto;
    transform: translate(-50%, -50%);
    text-align: center;
  }
}
.top-fv__item-ttl {
  grid-area: ttl;
  display: flex;
  flex-wrap: wrap;
  flex-direction: row;
  align-items: baseline;
  gap: clamp(1rem, 0rem + 2.54vw, 2rem);
}
@media screen and (min-width: 1100px) {
  .top-fv__item-ttl {
    width: 100%;
    flex-direction: column;
    justify-content: center;
    align-items: center;
  }
}
.top-fv__item-ttl-en {
  font-family: "EB Garamond", serif;
  font-size: clamp(4rem, 1.1rem + 7.63vw, 7rem);
  letter-spacing: 0.075em;
  line-height: 1;
  color: #fff;
}
.top-fv__item-ttl-jp {
  font-size: clamp(2.4rem, 1.8rem + 1.53vw, 3rem);
  letter-spacing: 0.075em;
  line-height: 1;
  color: #fff;
}
.top-fv__item-ttl-txt {
  grid-area: txt;
  font-size: clamp(1.6rem, 1.1rem + 1.27vw, 2.1rem);
  letter-spacing: 0.025em;
  line-height: 1.523;
  color: #fff;
}
.top-fv__item-ttl-txt br {
  display: none;
}
@media screen and (min-width: 1100px) {
  .top-fv__item-ttl-txt br {
    display: block;
  }
}
.top-fv__item-icon {
  grid-area: icon;
  width: clamp(9rem, -12.7rem + 57.78vw, 22rem);
  justify-self: end;
  align-self: end;
  line-height: 0;
}
@media screen and (min-width: 1100px) {
  .top-fv__item-icon {
    max-width: 220px;
    width: 100%;
    margin: 0 auto;
    justify-self: auto;
    align-self: auto;
  }
}
.top-fv__item-icon img {
  width: 100%;
  height: auto;
  display: block;
}

.gjs-dashed .top-fv__splide.splide {
  visibility: visible;
}
.gjs-dashed .top-fv__splide .splide__list {
  display: block;
  height: auto;
}

.top-concept__head {
  padding-block: clamp(10rem, 9rem + 2.59vw, 14rem) clamp(20rem, 18.8rem + 3.24vw, 25rem);
  position: relative;
}
.top-concept__head::before {
  content: "";
  width: 100%;
  height: 100%;
  background: url(/system_panel/uploads/images/bg_top-catch01.jpg) no-repeat center center/cover;
  position: absolute;
  top: 0;
  left: 0;
  z-index: -3;
}
.top-concept__catch {
  display: flex;
  flex-wrap: wrap;
  flex-direction: column;
  align-items: center;
  gap: 40px;
  position: relative;
}
@media screen and (min-width: 1024px) {
  .top-concept__catch {
    flex-direction: row;
    justify-content: space-between;
    align-items: stretch;
  }
}
.top-concept__catch-info {
  max-width: 600px;
  flex: 1;
}
.top-concept__catch-info-ttl {
  font-size: clamp(2.8rem, 0.7rem + 5.6vw, 5rem);
  letter-spacing: 0.05em;
  color: #000;
  margin-bottom: clamp(4rem, 3rem + 2.54vw, 5rem);
}
@media screen and (min-width: 1024px) {
  .top-concept__catch-info-ttl {
    font-size: min(4.4vw, 5rem);
  }
}
.top-concept__catch-info-txt {
  font-size: clamp(1.8rem, 1.5rem + 0.76vw, 2.1rem);
  letter-spacing: 0.025em;
  line-height: 2.381;
  color: #000;
}
@media screen and (min-width: 768px) {
  .top-concept__catch-info-txt {
    padding-left: clamp(0rem, -12rem + 15.63vw, 8rem);
  }
}
@media screen and (min-width: 1024px) {
  .top-concept__catch-info-txt {
    font-size: min(1.9vw, 2.1rem);
  }
}
.top-concept__catch-media {
  max-width: 380px;
  width: 70%;
}
@media screen and (min-width: 1024px) {
  .top-concept__catch-media {
    width: 32%;
  }
}
.top-concept__catch-icon {
  max-width: max-content;
  width: 30%;
  position: absolute;
  bottom: 0;
  left: -15px;
  z-index: -1;
}
@media screen and (min-width: 768px) {
  .top-concept__catch-icon {
    left: -40px;
  }
}
@media screen and (min-width: 1280px) {
  .top-concept__catch-icon {
    left: max((1200px - 100vw) / 2, -290px);
  }
}
.top-concept__bottom {
  padding-bottom: clamp(6rem, 5rem + 2.59vw, 10rem);
}
.top-concept__cnt {
  padding-top: clamp(5rem, 2.1rem + 7.63vw, 8rem);
  margin-top: calc(clamp(10rem, 8.8rem + 3.24vw, 15rem) * -1);
  position: relative;
}
.top-concept__cnt::before {
  content: "";
  width: 100%;
  height: 100%;
  background-color: #fff;
  position: absolute;
  top: 0;
  left: 0;
  z-index: -2;
}
.top-concept__cnt-inr {
  display: grid;
  grid-template-columns: auto;
  grid-template-areas: "top-concept__cnt-ttl" "top-concept__cnt-txt" "top-concept__cnt-media";
  gap: clamp(4rem, -4rem + 7.81vw, 6rem) 50px;
  position: relative;
}
@media screen and (min-width: 1024px) {
  .top-concept__cnt-inr {
    grid-template-columns: auto 1fr;
    grid-template-rows: auto 1fr;
    grid-template-areas: "top-concept__cnt-ttl top-concept__cnt-media" "top-concept__cnt-txt top-concept__cnt-txt";
  }
}
@media screen and (min-width: 1280px) {
  .top-concept__cnt-inr {
    grid-template-areas: "top-concept__cnt-ttl top-concept__cnt-txt" "top-concept__cnt-media top-concept__cnt-txt";
  }
}
.top-concept__cnt-ttl {
  grid-area: top-concept__cnt-ttl;
  font-size: clamp(2.4rem, 0.9rem + 4.07vw, 4rem);
  letter-spacing: 0.05em;
  color: #000;
}
@media screen and (min-width: 768px) {
  .top-concept__cnt-ttl {
    font-size: min(4.2vw, 4rem);
  }
}
.top-concept__cnt-txt {
  grid-area: top-concept__cnt-txt;
  font-size: clamp(1.6rem, 1.4rem + 0.51vw, 1.8rem);
  letter-spacing: 0.025em;
}
.top-concept__cnt-media {
  grid-area: top-concept__cnt-media;
}
@media screen and (min-width: 1024px) {
  .top-concept__cnt-media {
    text-align: right;
  }
}
@media screen and (min-width: 1280px) {
  .top-concept__cnt-media {
    text-align: left;
  }
}
.top-concept__cnt-icon {
  max-width: max-content;
  width: 30%;
  position: absolute;
  bottom: 0;
  right: -15px;
  z-index: -1;
}
@media screen and (min-width: 768px) {
  .top-concept__cnt-icon {
    right: -40px;
  }
}
@media screen and (min-width: 1280px) {
  .top-concept__cnt-icon {
    right: max((1200px - 100vw) / 2, -290px);
  }
}

.top-concerns {
  background: url(/system_panel/uploads/images/bg_top-concern01.jpg) no-repeat center center/cover;
  padding-block: clamp(6rem, 5rem + 2.59vw, 10rem);
}
.top-concerns__ttl {
  margin-bottom: clamp(4rem, 3rem + 2.54vw, 5rem);
}
.top-concerns__ttl .cmn-ttl__main {
  font-size: clamp(2.4rem, 1.7rem + 1.77vw, 4rem);
}
@media screen and (min-width: 920px) {
  .top-concerns__ttl .cmn-ttl__main br {
    display: none;
  }
}
.top-concerns__txt {
  font-size: clamp(1.8rem, 1.5rem + 0.76vw, 2.1rem);
  letter-spacing: 0.025em;
  color: #000;
  margin-bottom: clamp(4rem, 3rem + 2.54vw, 5rem);
}
@media screen and (min-width: 768px) {
  .top-concerns__txt {
    text-align: center;
  }
}
@media screen and (min-width: 1024px) {
  .top-concerns__txt span br {
    display: none;
  }
}
.top-concerns__item {
  display: flex;
  flex-wrap: wrap;
  flex-direction: column;
  align-items: center;
  gap: 20px clamp(4rem, -8rem + 11.72vw, 7rem);
}
@media screen and (min-width: 1210px) {
  .top-concerns__item {
    flex-direction: row;
    justify-content: space-between;
    align-items: stretch;
  }
}
.top-concerns__item + .top-concerns__item {
  margin-top: 50px;
}
@media screen and (min-width: 1210px) {
  .top-concerns__item + .top-concerns__item {
    margin-top: 30px;
  }
}
.top-concerns__problems {
  display: flex;
  align-items: center;
  max-width: 500px;
  width: 100%;
  background-color: #fff;
  padding: clamp(2.5rem, 1.9rem + 1.66vw, 4rem) clamp(1.5rem, 0.9rem + 1.66vw, 3rem);
}
@media screen and (min-width: 1210px) {
  .top-concerns__problems {
    width: calc((100% - clamp(4rem, -8rem + 11.72vw, 7rem) * 2 - 46px) / 2);
  }
}
.top-concerns__problems-txt {
  font-size: clamp(1.6rem, 1.4rem + 0.51vw, 1.8rem);
  padding-left: 30px;
  position: relative;
}
@media screen and (min-width: 768px) {
  .top-concerns__problems-txt {
    padding-left: 35px;
  }
}
.top-concerns__problems-txt + .top-concerns__problems-txt {
  margin-top: 5px;
}
.top-concerns__problems-txt::before {
  content: "";
  width: 20px;
  aspect-ratio: 1;
  background: url(/system_panel/uploads/images/icon_check01.png) no-repeat center center/contain;
  position: absolute;
  top: 5px;
  left: 0;
}
@media screen and (min-width: 768px) {
  .top-concerns__problems-txt::before {
    width: 24px;
  }
}
.top-concerns__arrow {
  width: 30px;
  aspect-ratio: 46/35;
  transform: rotate(90deg);
}
@media screen and (min-width: 1210px) {
  .top-concerns__arrow {
    align-self: center;
    width: 46px;
    transform: rotate(0);
  }
}
.top-concerns__commit {
  max-width: 500px;
  width: 100%;
  background-color: #fff;
}
@media screen and (min-width: 1210px) {
  .top-concerns__commit {
    width: calc((100% - clamp(4rem, -8rem + 11.72vw, 7rem) * 2 - 46px) / 2);
  }
}
.top-concerns__commit-link {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  width: 100%;
  height: 100%;
}
.top-concerns__commit-media {
  width: 40%;
  height: 100%;
}
.top-concerns__commit-media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.top-concerns__commit-info {
  flex: 1;
  padding-inline: clamp(1.5rem, 0.1rem + 3.82vw, 3rem);
}
.top-concerns__commit-info-ttl {
  position: relative;
}
.top-concerns__commit-info-ttl::before {
  content: "";
  width: 20px;
  aspect-ratio: 30/14;
  background: url(/system_panel/uploads/images/icon_arrow03.png) no-repeat center center/contain;
  position: absolute;
  top: 50%;
  right: 0;
  transform: translateY(-50%);
}
@media screen and (min-width: 768px) {
  .top-concerns__commit-info-ttl::before {
    width: 30px;
  }
}
.top-concerns__commit-info-ttl-main {
  font-size: clamp(2rem, 1.6rem + 1.02vw, 2.4rem);
  letter-spacing: 0.025em;
  color: #000;
}
@media screen and (min-width: 1210px) {
  .top-concerns__commit-info-ttl-main.--small {
    font-size: clamp(2rem, 0.4rem + 1.56vw, 2.4rem);
  }
}
.top-concerns__commit-info-ttl-sub {
  letter-spacing: 0.075em;
  color: #42382f;
}

.top-service {
  padding-block: clamp(6rem, 5rem + 2.59vw, 10rem);
}
.top-service__ttl {
  margin-bottom: clamp(4rem, 2.1rem + 5.09vw, 6rem);
}
.top-service__cont {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  gap: 0 30px;
  position: relative;
}
.top-service__cont-nav-list {
  position: sticky;
  top: 80px;
}
@media screen and (min-width: 768px) {
  .top-service__cont-nav-list {
    top: 120px;
  }
}
@media screen and (min-width: 1280px) {
  .top-service__cont-nav-list {
    top: 140px;
  }
}
.top-service__cont-nav-item {
  margin-bottom: 15px;
}
@media screen and (min-width: 768px) {
  .top-service__cont-nav-item {
    margin-bottom: 20px;
  }
}
.top-service__cont-nav-item-link {
  display: block;
  border-left: solid 5px #e7d7c1;
  height: 70px;
  padding-left: 15px;
}
@media screen and (min-width: 768px) {
  .top-service__cont-nav-item-link {
    height: 90px;
  }
}
.top-service__cont-nav-item-st {
  font-family: "EB Garamond", serif;
  font-size: clamp(1.8rem, 1.5rem + 0.76vw, 2.1rem);
  letter-spacing: 0.05em;
  line-height: 1;
  color: #e7d7c1;
}
.top-service__cont-nav-item.current .top-service__cont-nav-item-link {
  border-left: solid 5px #c69a50;
}
.top-service__cont-nav-item.current .top-service__cont-nav-item-st {
  color: #c69a50;
}
.top-service__cont-list {
  flex: 1;
  max-width: 1100px;
  width: 100%;
}
.top-service__cont-item {
  position: relative;
}
.top-service__cont-item + .top-service__cont-item {
  padding-top: clamp(6rem, 5rem + 2.59vw, 10rem);
}
.top-service__cont-item-head {
  display: flex;
  flex-wrap: wrap;
  flex-direction: column;
  align-items: center;
  gap: 40px;
  margin-bottom: clamp(3rem, 2rem + 2.54vw, 4rem);
}
@media screen and (min-width: 1200px) {
  .top-service__cont-item-head {
    flex-direction: row;
    align-items: stretch;
    justify-content: space-between;
  }
}
.top-service__cont-item-info {
  width: 100%;
  position: relative;
}
@media screen and (min-width: 1200px) {
  .top-service__cont-item-info {
    flex: 1;
    max-width: 460px;
    width: auto;
    padding-top: clamp(0rem, -16rem + 15.63vw, 4rem);
  }
}
.top-service__cont-item-ttl {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: clamp(2rem, 1rem + 2.54vw, 3rem);
  margin-bottom: clamp(3rem, 2rem + 2.54vw, 4rem);
}
.top-service__cont-item-ttl.--02 {
  margin-bottom: clamp(4rem, 3rem + 2.54vw, 5rem);
}
.top-service__cont-item-ttl-num {
  font-family: "EB Garamond", serif;
  font-size: clamp(5rem, 2.1rem + 7.63vw, 8rem);
  letter-spacing: 0.05em;
  line-height: 1;
  color: #42382f;
}
.top-service__cont-item-ttl-wrap {
  flex: 1;
  position: relative;
}
.top-service__cont-item-ttl-main {
  font-size: clamp(3.6rem, 2.3rem + 3.56vw, 5rem);
  letter-spacing: 0.025em;
  color: #42382f;
}
.top-service__cont-item-ttl-sub {
  width: 100%;
  font-size: clamp(1.6rem, 1.4rem + 0.51vw, 1.8rem);
  letter-spacing: 0.025em;
  color: #42382f;
  position: absolute;
  bottom: 0;
  left: -0.5em;
  transform: translateY(70%);
}
.top-service__cont-item-catch {
  font-size: clamp(1.8rem, 0.7rem + 3.05vw, 3rem);
  letter-spacing: 0.025em;
  color: #000;
}
.top-service__cont-item-icon {
  max-width: max-content;
  width: 80%;
  position: absolute;
  bottom: 0;
  right: 0;
  z-index: -1;
  transform: translateY(60%);
}
@media screen and (min-width: 1200px) {
  .top-service__cont-item-icon {
    transform: translateY(0);
  }
}
.top-service__cont-item-media {
  max-width: 550px;
  width: 80%;
}
@media screen and (min-width: 1200px) {
  .top-service__cont-item-media {
    width: 50%;
  }
}
.top-service__cont-item-txt {
  font-size: clamp(1.6rem, 1.4rem + 0.51vw, 1.8rem);
  letter-spacing: 0.025em;
  margin-bottom: clamp(3rem, 2rem + 2.54vw, 4rem);
}
.top-service__cont-item-box {
  display: flex;
  flex-wrap: wrap;
  flex-direction: column;
  gap: 10px 0;
  background-color: #f5eee5;
  padding-block: clamp(2rem, 1rem + 2.54vw, 3rem);
  padding-inline: clamp(1.5rem, 0.5rem + 2.54vw, 2.5rem);
}
@media screen and (min-width: 1024px) {
  .top-service__cont-item-box {
    flex-direction: row;
    align-items: center;
    padding-inline: clamp(1.5rem, -2.5rem + 3.91vw, 2.5rem);
  }
}
.top-service__cont-item-box-ttl {
  font-size: clamp(1.8rem, 1.5rem + 0.76vw, 2.1rem);
  letter-spacing: 0.025em;
  color: #000;
  text-align: center;
}
@media screen and (min-width: 1200px) {
  .top-service__cont-item-box-ttl {
    width: clamp(18rem, 0rem + 17.58vw, 22.5rem);
    padding-block: 10px;
  }
}
.top-service__cont-item-box-info {
  display: flex;
  flex-wrap: wrap;
  flex-direction: column;
  gap: 0 15px;
}
@media screen and (min-width: 768px) {
  .top-service__cont-item-box-info {
    flex-direction: row;
  }
}
@media screen and (min-width: 1200px) {
  .top-service__cont-item-box-info {
    flex: 1;
    border-left: solid 1px #cbb99a;
    padding-block: 10px;
    padding-left: clamp(2rem, -6rem + 7.81vw, 4rem);
  }
}
.top-service__cont-item-box-info-desc {
  width: 100%;
}
@media screen and (min-width: 768px) {
  .top-service__cont-item-box-info-desc {
    width: calc((100% - 15px) / 2);
  }
}
.top-service__cont-item-box-info-desc-st {
  font-size: clamp(1.6rem, 1.4rem + 0.51vw, 1.8rem);
  padding-left: 1.5em;
  position: relative;
}
.top-service__cont-item-box-info-desc-st::before {
  content: "●";
  font-size: 1rem;
  color: #c69a50;
  position: absolute;
  top: clamp(0.5rem, 0.3rem + 0.51vw, 0.7rem);
  left: 0;
}
.top-service__cont-item-btn {
  margin-top: clamp(4rem, 3rem + 2.54vw, 5rem);
}
.top-service__cont-item-btn .cmn-btn__link {
  margin-left: 0;
}
.top-service__cont-item-icon02 {
  max-width: max-content;
  width: 40%;
  position: absolute;
  top: 50%;
  left: -15px;
  transform: translateY(-50%);
  z-index: -1;
}
@media screen and (min-width: 768px) {
  .top-service__cont-item-icon02 {
    left: -40px;
  }
}
@media screen and (min-width: 1280px) {
  .top-service__cont-item-icon02 {
    left: max((1200px - 100vw) / 2, -290px);
  }
}
.top-service__cont-item:nth-of-type(2n) .top-service__cont-item-icon02 {
  left: auto;
  right: -15px;
}
@media screen and (min-width: 768px) {
  .top-service__cont-item:nth-of-type(2n) .top-service__cont-item-icon02 {
    right: -40px;
  }
}
@media screen and (min-width: 1280px) {
  .top-service__cont-item:nth-of-type(2n) .top-service__cont-item-icon02 {
    right: max((1200px - 100vw) / 2, -290px);
  }
}

.top-values {
  padding-block: clamp(6rem, 5rem + 2.59vw, 10rem);
  position: relative;
}
.top-values::before {
  content: "";
  width: 100%;
  height: 100%;
  background: url(/system_panel/uploads/images/bg_top-values01.jpg) no-repeat center center/cover;
  position: absolute;
  top: 0;
  left: 0;
  z-index: -3;
}
.top-values__ttl {
  margin-bottom: clamp(3rem, 1.1rem + 5.09vw, 5rem);
}
@media screen and (min-width: 768px) {
  .top-values__ttl .cmn-ttl__main {
    font-size: min(3.7vw, 4rem);
  }
}
.top-values__ttl .cmn-ttl__main strong {
  font-weight: 400;
}
@media screen and (min-width: 768px) {
  .top-values__ttl .cmn-ttl__main strong br {
    display: none;
  }
}
.top-values__head {
  display: flex;
  flex-wrap: wrap;
  flex-direction: column;
  gap: 30px;
  margin-bottom: clamp(4rem, 1.1rem + 7.63vw, 7rem);
  position: relative;
}
@media screen and (min-width: 1024px) {
  .top-values__head {
    flex-direction: row-reverse;
    justify-content: space-between;
  }
}
.top-values__head-txt {
  font-size: clamp(1.8rem, 1.5rem + 0.76vw, 2.1rem);
  letter-spacing: 0.025em;
}
@media screen and (min-width: 1024px) {
  .top-values__head-txt {
    flex: 1;
    max-width: 650px;
  }
}
@media screen and (min-width: 1024px) {
  .top-values__head-media {
    max-width: 450px;
    width: 37.5%;
  }
}
.top-values__head-icon {
  max-width: max-content;
  width: 30%;
  position: absolute;
  bottom: 0;
  right: -15px;
  z-index: -2;
}
@media screen and (min-width: 768px) {
  .top-values__head-icon {
    right: -40px;
  }
}
@media screen and (min-width: 1280px) {
  .top-values__head-icon {
    right: max((1200px - 100vw) / 2, -290px);
  }
}
.top-values__item {
  background-color: #fff;
  padding-block: clamp(3rem, 2rem + 2.54vw, 4rem);
  padding-inline: clamp(1.5rem, 0.5rem + 2.76vw, 4rem);
}
.top-values__item + .top-values__item {
  margin-top: 30px;
}
.top-values__item-head {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 20px;
  margin-bottom: 20px;
}
.top-values__item-num {
  font-family: "EB Garamond", serif;
  font-size: clamp(3rem, 1.1rem + 5.09vw, 5rem);
  letter-spacing: 0.05em;
  line-height: 1;
  color: #42382f;
}
.top-values__item-ttl {
  flex: 1;
  font-size: clamp(2rem, 1.6rem + 1.02vw, 2.4rem);
  letter-spacing: 0.025em;
  color: #42382f;
  padding-left: clamp(5rem, 3.1rem + 5.09vw, 7rem);
  position: relative;
}
@media screen and (min-width: 768px) {
  .top-values__item-ttl br {
    display: none;
  }
}
.top-values__item-ttl::before {
  content: "";
  width: clamp(3rem, 2rem + 2.54vw, 4rem);
  height: 1px;
  background-color: #ccb39c;
  position: absolute;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
}
.top-values__item-txt {
  font-size: clamp(1.6rem, 1.4rem + 0.51vw, 1.8rem);
  letter-spacing: 0.025em;
}

.top-staff {
  padding-block: clamp(6rem, 5rem + 2.59vw, 10rem);
}
.top-staff__cnt {
  position: relative;
}
.top-staff__ttl {
  margin-bottom: clamp(3rem, 1.1rem + 5.09vw, 5rem);
}
.top-staff__ttl .cmn-ttl__main strong {
  font-weight: 400;
}
@media screen and (min-width: 768px) {
  .top-staff__ttl .cmn-ttl__main strong br {
    display: none;
  }
}
.top-staff__txt {
  text-align: center;
  margin-bottom: clamp(4rem, 1.1rem + 7.63vw, 7rem);
}
.top-staff__txt-st01 {
  font-size: clamp(1.8rem, 1.5rem + 0.76vw, 2.1rem);
  letter-spacing: 0.025em;
  color: #000;
  margin-bottom: 10px;
}
@media screen and (min-width: 1024px) {
  .top-staff__txt-st01 {
    font-size: clamp(2rem, 0.2rem + 1.79vw, 2.1rem);
  }
}
@media screen and (min-width: 1135px) {
  .top-staff__txt-st01 br {
    display: none;
  }
}
.top-staff__txt-st01 strong {
  font-weight: 400;
}
@media screen and (min-width: 768px) {
  .top-staff__txt-st01 strong br {
    display: none;
  }
}
.top-staff__txt-st02 {
  font-size: clamp(1.6rem, 1.4rem + 0.51vw, 1.8rem);
  letter-spacing: 0.025em;
}
@media screen and (min-width: 1135px) {
  .top-staff__txt-st02 br {
    display: none;
  }
}
.top-staff__txt-st02 strong {
  font-weight: 400;
}
@media screen and (min-width: 768px) {
  .top-staff__txt-st02 strong br {
    display: none;
  }
}
.top-staff__list {
  display: flex;
  flex-wrap: wrap;
  flex-direction: column;
  align-items: center;
  gap: 40px;
}
@media screen and (min-width: 1024px) {
  .top-staff__list {
    flex-direction: row;
    justify-content: space-between;
    align-items: stretch;
  }
}
.top-staff__box {
  max-width: 580px;
  width: 100%;
  background-color: #fff;
  border: solid 1px #ccb39c;
  padding: clamp(3rem, 2rem + 2.54vw, 4rem) 15px;
  margin: 0 auto;
}
.top-staff__item {
  max-width: 580px;
  width: 100%;
  background-color: #fff;
  border: solid 1px #ccb39c;
  padding: clamp(3rem, 2rem + 2.54vw, 4rem) 15px;
}
@media screen and (min-width: 1024px) {
  .top-staff__item {
    width: calc((100% - 40px) / 2);
  }
}
.top-staff__item-inr {
  max-width: 500px;
  width: 100%;
  margin-inline: auto;
}
.top-staff__item-head {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: clamp(1.5rem, 0.1rem + 3.82vw, 3rem);
  margin-bottom: clamp(3rem, 2rem + 2.54vw, 4rem);
}
.top-staff__item-media {
  width: clamp(9rem, 2.3rem + 17.81vw, 16rem);
  border-radius: 50%;
}
@media screen and (min-width: 1024px) {
  .top-staff__item-media {
    width: clamp(12rem, -4rem + 15.63vw, 16rem);
  }
}
.top-staff__item-ttl {
  flex: 1;
}
.top-staff__item-ttl-main {
  font-size: clamp(2rem, 1.6rem + 1.02vw, 2.4rem);
  letter-spacing: 0.025em;
  color: #000;
}
@media screen and (min-width: 1024px) {
  .top-staff__item-ttl-main {
    font-size: min(2vw, 2.4rem);
  }
}
.top-staff__item-ttl-sub {
  font-family: "EB Garamond", serif;
  letter-spacing: 0.075em;
  color: #42382f;
  margin-bottom: 10px;
}
.top-staff__item-txt {
  font-size: clamp(1.6rem, 1.4rem + 0.51vw, 1.8rem);
  letter-spacing: 0.025em;
}
.top-staff__icon {
  max-width: max-content;
  width: 30%;
  position: absolute;
  bottom: 0;
  left: -15px;
  z-index: -1;
}
@media screen and (min-width: 768px) {
  .top-staff__icon {
    left: -40px;
  }
}
@media screen and (min-width: 1280px) {
  .top-staff__icon {
    left: max((1200px - 100vw) / 2, -290px);
  }
}

.top-symptoms {
  padding-block: clamp(6rem, 5rem + 2.59vw, 10rem);
  background: url(/system_panel/uploads/images/bg_top-symptoms01.jpg) no-repeat center center/cover;
}
.top-symptoms__ttl {
  margin-bottom: clamp(3rem, 1.1rem + 5.09vw, 5rem);
}
@media screen and (min-width: 890px) {
  .top-symptoms__ttl .cmn-ttl__main br {
    display: none;
  }
}
.top-symptoms__list {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: clamp(2rem, 0.8rem + 3.08vw, 4rem);
  max-width: calc(360px + clamp(2rem, 0.8rem + 3.08vw, 4rem));
  width: 90%;
  margin-bottom: clamp(3rem, 2rem + 2.54vw, 4rem);
  margin-inline: auto;
}
@media screen and (min-width: 768px) {
  .top-symptoms__list {
    max-width: none;
    width: 100%;
  }
}
.top-symptoms__item {
  max-width: 180px;
  width: calc((100% - clamp(2rem, 0.8rem + 3.08vw, 4rem)) / 2);
}
@media screen and (min-width: 768px) {
  .top-symptoms__item {
    width: calc((100% - clamp(2rem, 0.8rem + 3.08vw, 4rem) * 3) / 4);
  }
}
.top-symptoms__txt {
  font-size: clamp(1.6rem, 1.4rem + 0.51vw, 1.8rem);
  letter-spacing: 0.025em;
  margin-bottom: clamp(3rem, 2rem + 2.54vw, 4rem);
}
.top-symptoms__btn .cmn-btn__link::before {
  width: 16px;
  aspect-ratio: 1;
  background: url(/system_panel/uploads/images/icon_arrow05.png) no-repeat center center/contain;
}

.top-voice {
  padding-top: clamp(6rem, 5rem + 2.59vw, 10rem);
}
.top-voice__cnt {
  position: relative;
}
.top-voice__ttl {
  margin-bottom: clamp(3rem, 1.1rem + 5.09vw, 5rem);
}
.top-voice__ttl .cmn-ttl__main {
  font-size: clamp(2.3rem, 0.7rem + 4.33vw, 4rem);
}
@media screen and (min-width: 768px) {
  .top-voice__ttl .cmn-ttl__main {
    font-size: clamp(3.4rem, 1.6rem + 2.34vw, 4rem);
  }
}
@media screen and (min-width: 890px) {
  .top-voice__ttl .cmn-ttl__main br {
    display: none;
  }
}
.top-voice__txt {
  font-size: clamp(1.6rem, 1.4rem + 0.51vw, 1.8rem);
  letter-spacing: 0.025em;
  text-align: center;
  margin-bottom: clamp(4rem, 1.1rem + 7.63vw, 7rem);
}
@media screen and (min-width: 768px) {
  .top-voice__txt {
    font-size: clamp(1.5rem, 0.6rem + 1.17vw, 1.8rem);
  }
}
.top-voice__txt strong {
  font-weight: 400;
}
@media screen and (min-width: 890px) {
  .top-voice__txt strong br {
    display: none;
  }
}
.top-voice__list {
  display: flex;
  flex-wrap: wrap;
  flex-direction: column;
  align-items: center;
  gap: 30px;
}
@media screen and (min-width: 768px) {
  .top-voice__list {
    flex-direction: row;
    justify-content: center;
    align-items: stretch;
  }
}
.top-voice__item {
  max-width: 380px;
  width: 100%;
  background-color: #f5eee5;
  border-radius: 20px;
  padding: clamp(3rem, 2rem + 2.54vw, 4rem) clamp(1.5rem, 0.1rem + 3.82vw, 3rem);
}
@media screen and (min-width: 840px) {
  .top-voice__item {
    width: calc((100% - 30px) / 2);
  }
}
@media screen and (min-width: 1024px) {
  .top-voice__item {
    width: calc((100% - 60px) / 3);
  }
}
.top-voice__item-media {
  text-align: center;
  margin-bottom: 20px;
}
.top-voice__item-txt {
  letter-spacing: 0.05em;
  margin-bottom: clamp(1.5rem, 1rem + 1.27vw, 2rem);
}
.top-voice__item-name {
  letter-spacing: 0.05em;
  text-align: center;
}
.top-voice__btn {
  margin-top: clamp(4rem, 3rem + 2.54vw, 5rem);
}
.top-voice__icon {
  max-width: max-content;
  width: 40%;
  position: absolute;
  bottom: 0;
  right: -15px;
  z-index: -1;
}
@media screen and (min-width: 768px) {
  .top-voice__icon {
    right: -40px;
  }
}
@media screen and (min-width: 1280px) {
  .top-voice__icon {
    right: max((1200px - 100vw) / 2, -290px);
  }
}

.top-shop {
  padding-block: clamp(6rem, 5rem + 2.59vw, 10rem);
}
.top-shop__cnt {
  margin-bottom: clamp(4rem, 1.1rem + 7.63vw, 7rem);
  position: relative;
}
.top-shop__cnt-head {
  display: flex;
  flex-wrap: wrap;
  flex-direction: column;
  align-items: center;
  gap: 40px;
  margin-bottom: clamp(3rem, 2rem + 2.54vw, 4rem);
}
@media screen and (min-width: 1024px) {
  .top-shop__cnt-head {
    flex-direction: row;
    justify-content: space-between;
    align-items: stretch;
  }
}
.top-shop__info {
  width: 100%;
}
@media screen and (min-width: 1024px) {
  .top-shop__info {
    flex: 1;
    max-width: 600px;
    width: auto;
    padding-top: clamp(0rem, -24rem + 23.44vw, 6rem);
  }
}
.top-shop__info-ttl {
  margin-bottom: clamp(3rem, 1.1rem + 5.09vw, 5rem);
}
.top-shop__info-txt {
  font-size: clamp(1.6rem, 1.4rem + 0.51vw, 1.8rem);
  letter-spacing: 0.025em;
}
.top-shop__media {
  max-width: 500px;
  width: 70%;
}
@media screen and (min-width: 1024px) {
  .top-shop__media {
    width: 42%;
  }
}
.top-shop__txt {
  font-size: clamp(1.6rem, 1.4rem + 0.51vw, 1.8rem);
  letter-spacing: 0.025em;
}
.top-shop__list {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: clamp(1.5rem, 0.1rem + 3.82vw, 3rem);
}
.top-shop__item {
  max-width: 380px;
  width: calc((100% - clamp(1.5rem, 0.1rem + 3.82vw, 3rem) * 2) / 3);
}
.top-shop__btn {
  margin-top: clamp(4rem, 1.1rem + 7.63vw, 7rem);
}
.top-shop__icon {
  max-width: max-content;
  width: 40%;
  position: absolute;
  bottom: 0;
  left: -15px;
}
@media screen and (min-width: 768px) {
  .top-shop__icon {
    left: -40px;
  }
}
@media screen and (min-width: 1280px) {
  .top-shop__icon {
    left: max((1200px - 100vw) / 2, -290px);
  }
}

.top-recruit {
  background: url(/system_panel/uploads/images/bg_top-recruit.jpg) no-repeat center center/cover;
  background-position: 60% center;
  padding-block: clamp(6rem, 5rem + 2.59vw, 10rem);
}
@media screen and (min-width: 1024px) {
  .top-recruit__info {
    width: 500px;
  }
}
.top-recruit__info-ttl {
  margin-bottom: clamp(3rem, 1.1rem + 5.09vw, 5rem);
}
.top-recruit__info-txt {
  font-size: clamp(1.6rem, 1.4rem + 0.51vw, 1.8rem);
  letter-spacing: 0.025em;
}
.top-recruit__info-btn {
  margin-top: clamp(3rem, 2rem + 2.54vw, 4rem);
}
.top-recruit__info-btn .cmn-btn__link {
  background-color: rgba(255, 255, 255, 0.5);
  margin-left: 0;
}
@media screen and (min-width: 768px) {
  .top-recruit__info-btn .cmn-btn__link {
    background-color: initial;
  }
}

.top-news {
  padding-block: clamp(6rem, 5rem + 2.59vw, 10rem);
}
.top-news__cnt {
  display: grid;
  grid-template-columns: auto;
  grid-template-areas: "top-news__cnt-ttl" "top-news__cnt-txt" "top-news__cnt-list" "top-news__cnt-btn";
  gap: clamp(3rem, 2rem + 2.54vw, 4rem) clamp(3rem, -5rem + 7.81vw, 5rem);
}
@media screen and (min-width: 1024px) {
  .top-news__cnt {
    grid-template-columns: auto 1fr 160px;
    grid-template-rows: auto 1fr;
    grid-template-areas: "top-news__cnt-ttl top-news__cnt-txt top-news__cnt-btn" "top-news__cnt-list top-news__cnt-list top-news__cnt-list";
    align-items: end;
  }
}
.top-news__cnt-ttl {
  grid-area: top-news__cnt-ttl;
}
.top-news__cnt-ttl .cmn-ttl__main {
  line-height: 1;
}
.top-news__cnt-txt {
  grid-area: top-news__cnt-txt;
}
.top-news__cnt-list {
  grid-area: top-news__cnt-list;
}
.top-news__cnt-list .webgene-item {
  border-top: dashed 1px #8e7b59;
  padding: 10px 0;
}
@media screen and (min-width: 768px) {
  .top-news__cnt-list .webgene-item {
    padding: 15px;
  }
}
.top-news__cnt-list .webgene-item:last-of-type {
  border-bottom: dashed 1px #8e7b59;
}
.top-news__cnt-list-item {
  display: flex;
  flex-wrap: wrap;
}
.top-news__cnt-list-item-date {
  font-family: "EB Garamond", serif;
  font-size: clamp(1.6rem, 1.4rem + 0.51vw, 1.8rem);
}
.top-news__cnt-list-item-cate {
  margin-left: 20px;
}
.top-news__cnt-list-item-cate-str {
  display: inline-block;
  min-width: 140px;
  background-color: #f5eee5;
  line-height: 25px;
  color: #42382f;
  text-align: center;
  padding: 0 10px;
}
@media screen and (min-width: 768px) {
  .top-news__cnt-list-item-cate-str {
    line-height: 30px;
  }
}
.top-news__cnt-list-item-ttl {
  width: 100%;
  font-size: clamp(1.6rem, 1.4rem + 0.51vw, 1.8rem);
  letter-spacing: 0.025em;
}
@media screen and (min-width: 1024px) {
  .top-news__cnt-list-item-ttl {
    flex: 1;
    width: auto;
    margin-left: 40px;
  }
}
.top-news__cnt-btn {
  grid-area: top-news__cnt-btn;
}