/*===========================================================================*/
/*  function  */
/*===========================================================================*/
/*===========================================================================*/
/*  mixin  */
/*===========================================================================*/
.top {
  background-color: #ffead1;
}

/*===========================================================================*/
/*  mv  */
/*===========================================================================*/
.top-mv__title {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}
.top-mv__inner {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
}
.top-mv__scroll {
  margin-right: 5%;
  padding-left: 5%;
}
.top-mv__scroll p {
  display: flex;
  align-items: center;
  gap: clamp(24px, 9.8527968597px + 1.5701668302vw, 40px);
  font-size: clamp(14px, 8.6947988224px + 0.5888125613vw, 20px);
  font-weight: 500;
  text-transform: uppercase;
  writing-mode: vertical-lr;
}
.top-mv__scroll p .line {
  content: "";
  width: 2px;
  height: clamp(120px, 49.2639842983px + 7.8508341511vw, 200px);
  background-color: #511f20;
}
.top-mv__pagination.swiper-pagination.swiper-pagination-bullets {
  left: 13%;
  bottom: -40px;
  width: auto;
}
.top-mv__pagination.swiper-pagination.swiper-pagination-bullets
  .swiper-pagination-bullet {
  background: #a87a69;
  opacity: 1;
  width: clamp(18px, 11.8105986261px + 0.6869479882vw, 25px);
  height: clamp(18px, 11.8105986261px + 0.6869479882vw, 25px);
  margin-left: clamp(12px, 6.6947988224px + 0.5888125613vw, 18px);
  margin-right: clamp(12px, 6.6947988224px + 0.5888125613vw, 18px);
}
.top-mv__pagination.swiper-pagination.swiper-pagination-bullets
  .swiper-pagination-bullet-active {
  background: #511f20;
}

/*===========================================================================*/
/*  about  */
/*===========================================================================*/
.top-about {
  position: relative;
  padding-top: clamp(120px, 61.6427870461px + 6.4769381747vw, 186px);
  padding-bottom: clamp(40px, 11.7055937193px + 3.1403336605vw, 72px);
}
@media (max-width: 900px) {
  .top-about {
    padding-top: clamp(14px, 11.1428571429px + 0.7619047619vw, 18px);
    padding-bottom: clamp(14px, 11.1428571429px + 0.7619047619vw, 18px);
  }
}
.top-about__sphere01,
.top-about__sphere02,
.top-about__sphere03 {
  content: "";
  position: absolute;
  background-color: #ffd6b3;
  border-radius: 50%;
  transform: translateX(-50%);
  z-index: 0;
}
.top-about__sphere01 {
  top: -123px;
  left: 11%;
  width: 963px;
  height: 963px;
}
@media (max-width: 900px) {
  .top-about__sphere01 {
    top: -102px;
    width: 188px;
    height: 188px;
  }
}
.top-about__sphere02 {
  top: 503px;
  left: 93%;
  width: 510px;
  height: 510px;
}
@media (max-width: 900px) {
  .top-about__sphere02 {
    top: 13px;
    width: 212px;
    height: 212px;
  }
}
.top-about__sphere03 {
  bottom: 92px;
  left: 11%;
  width: 200px;
  height: 200px;
}
.top-about__inner {
  position: relative;
  z-index: 2;
}
.top-about__head {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: clamp(120px, 13.8959764475px + 11.7762512267vw, 240px);
  margin-bottom: clamp(52px, 37.8527968597px + 1.5701668302vw, 68px);
}
@media (min-width: 901px) {
  .top-about__head {
    padding-left: clamp(120px, 13.8959764475px + 11.7762512267vw, 240px);
    padding-right: clamp(120px, 13.8959764475px + 11.7762512267vw, 240px);
  }
}
@media (max-width: 900px) {
  .top-about__head {
    flex-direction: column;
    gap: clamp(20px, 11.4285714286px + 2.2857142857vw, 32px);
    margin-bottom: clamp(22px, 13.4285714286px + 2.2857142857vw, 34px);
  }
}
.top-about__title {
  display: flex;
  align-items: center;
  flex-direction: column;
  flex-shrink: 0;
}
@media (max-width: 900px) {
  .top-about__title {
    display: block;
    text-align: center;
  }
}
.top-about__title .en {
  color: #ffaf76;
  font-size: clamp(32px, 16.0843964671px + 1.766437684vw, 50px);
  font-weight: bold;
  margin-bottom: clamp(40px, 25.8527968597px + 1.5701668302vw, 56px);
  text-transform: uppercase;
}
@media (max-width: 900px) {
  .top-about__title .en {
    display: block;
    font-size: clamp(14px, 12.5714285714px + 0.380952381vw, 16px);
    margin-bottom: clamp(10px, -2.3788027478px + 1.3738959764vw, 24px);
  }
}
.top-about__title .line {
  display: flex;
  align-items: center;
  flex-direction: column;
}
@media (max-width: 900px) {
  .top-about__title .line {
    align-items: flex-end;
    flex-direction: row;
    border-bottom: 1px solid #fff;
  }
}
.top-about__title .first-line {
  position: relative;
  font-size: clamp(24px, 9.8527968597px + 1.5701668302vw, 40px);
  font-weight: bold;
  margin-bottom: clamp(22px, 9.6211972522px + 1.3738959764vw, 36px);
}
@media (max-width: 900px) {
  .top-about__title .first-line {
    font-size: clamp(16px, 10.2857142857px + 1.5238095238vw, 24px);
    margin-bottom: 0;
  }
}
@media (min-width: 901px) {
  .top-about__title .first-line::after {
    content: "";
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
    height: 3px;
    background-color: #fff;
  }
}
.top-about__title .second-line {
  position: relative;
  font-size: clamp(32px, 16.0843964671px + 1.766437684vw, 50px);
  font-weight: bold;
  background-image: radial-gradient(
    circle at center,
    #ff883a 20%,
    transparent 20%
  );
  background-position: top right;
  background-repeat: repeat-x;
  background-size: 1em 0.3em;
  padding-top: 0.4em;
}
@media (max-width: 900px) {
  .top-about__title .second-line {
    font-size: clamp(18px, 8px + 2.6666666667vw, 32px);
  }
}
@media (min-width: 901px) {
  .top-about__title .second-line::after {
    content: "";
    position: absolute;
    left: 0;
    bottom: -5px;
    width: 100%;
    height: 3px;
    background-color: #fff;
  }
}
.top-about__description {
  /* font-size: clamp(14px, 12.2315996075px + 0.1962708538vw, 16px); */
  font-size: clamp(20px, 12.2315996075px + 0.1962708538vw, 22px);
  line-height: 1.3;
}

/* 20251010　追加 */
@media (max-width: 600px) {
  .top-about__description {
    font-size: clamp(14px, 12.2315996075px + 0.1962708538vw, 16px);
  }
}
/* 20251010　追加　ここまで */

.top-about__list {
  display: flex;
  align-items: center;
  gap: clamp(24px, 9.8527968597px + 1.5701668302vw, 40px);
  margin-bottom: clamp(24px, 2.7791952895px + 2.3552502453vw, 48px);
}
@media (max-width: 900px) {
  .top-about__list {
    flex-direction: column;
    gap: clamp(10px, -2.3788027478px + 1.3738959764vw, 24px);
  }
}
.top-about__item {
  background-color: #fff;
  padding-top: clamp(16px, -1.6840039254px + 1.9627085378vw, 36px);
  padding-bottom: clamp(40px, 22.3159960746px + 1.9627085378vw, 60px);
  padding-left: clamp(32px, 10.7791952895px + 2.3552502453vw, 56px);
  padding-right: clamp(32px, 10.7791952895px + 2.3552502453vw, 56px);
  border-radius: 55px;
  text-align: center;
  width: 33.333%;
}
@media (max-width: 900px) {
  .top-about__item {
    display: flex;
    align-items: center;
    gap: 4.5%;
    padding: clamp(24px, 9.8527968597px + 1.5701668302vw, 40px);
    border-radius: 20px;
    width: 100%;
  }
}
.top-about__item.first h3 span,
.top-about__item.third h3 span {
  margin-bottom: clamp(8px, 0.9263984298px + 0.7850834151vw, 16px);
}
.top-about__item.second h3 span {
  margin-top: clamp(4px, 0.4631992149px + 0.3925417076vw, 8px);
}
@media (min-width: 901px) {
  .top-about__item.third {
    padding-left: clamp(8px, 4.4631992149px + 0.3925417076vw, 12px);
    padding-right: clamp(8px, 4.4631992149px + 0.3925417076vw, 12px);
  }
}
.top-about__item .num {
  font-size: clamp(64px, 41.010794897px + 2.5515210991vw, 90px);
  font-weight: bold;
  line-height: 1;
  border-radius: 50%;
  margin-bottom: clamp(24px, 18.6947988224px + 0.5888125613vw, 30px);
}
@media (max-width: 900px) {
  .top-about__item .num {
    font-size: clamp(30px, 21.1579980373px + 0.9813542689vw, 40px);
  }
}
.top-about__item h3 {
  font-size: clamp(12px, 1.3895976447px + 1.1776251227vw, 24px);
  font-weight: bold;
}
@media (max-width: 900px) {
  .top-about__item h3 {
    font-size: clamp(16px, 12.4631992149px + 0.3925417076vw, 20px);
    text-align: left;
  }
}
.top-about__item h3 span {
  font-size: clamp(16px, -5.2208047105px + 2.3552502453vw, 40px);
  background-image: linear-gradient(to top, #ff883a 50%, transparent 50%);
  background-repeat: no-repeat;
  background-size: 100% 0.55em;
  background-position: 0px 100%;
}
.top-about__buttons {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: clamp(60px, 10.4847890088px + 5.4955839058vw, 116px);
}
@media (max-width: 900px) {
  .top-about__buttons {
    flex-direction: column;
    gap: clamp(16px, 8.9263984298px + 0.7850834151vw, 24px);
  }
}

/*===========================================================================*/
/*  works  */
/*===========================================================================*/
.top-works {
  padding-bottom: clamp(80px, 42.8635917566px + 4.1216879293vw, 122px);
}
@media (max-width: 900px) {
  .top-works {
    padding-bottom: clamp(56px, 41.8527968597px + 1.5701668302vw, 72px);
  }
}
.top-works__graphic {
  position: relative;
  z-index: 2;
}
.top-works__graphic::after {
  content: "";
  position: relative;
  display: block;
  width: 100%;
  height: clamp(12px, -2.1472031403px + 1.5701668302vw, 28px);
  background-color: #cde08a;
  z-index: 1;
}
.top-works__head {
  position: relative;
  background-color: #cde08a;
  padding-top: clamp(90px, 51.0951913641px + 4.3179587831vw, 134px);
  margin-bottom: clamp(40px, 29.3895976447px + 1.1776251227vw, 52px);
  text-align: center;
  width: 100%;
}
@media (max-width: 900px) {
  .top-works__head {
    padding-top: clamp(56px, 38.8571428571px + 4.5714285714vw, 80px);
    margin-bottom: clamp(32px, 24.9263984298px + 0.7850834151vw, 40px);
    padding-left: 25px;
    padding-right: 25px;
  }
}
.top-works__head::after {
  content: "";
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  display: block;
  background-image: url(../../images/top/top_works_bg.png);
  width: 100%;
  height: 100%;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}
.top-works__title {
  position: relative;
  display: flex;
  align-items: center;
  margin-bottom: clamp(28px, 13.8527968597px + 1.5701668302vw, 44px);
  flex-direction: column;
  z-index: 10;
}
@media (max-width: 900px) {
  .top-works__title {
    margin-bottom: clamp(20px, 12.9263984298px + 0.7850834151vw, 28px);
  }
}
.top-works__title .en {
  color: #ffaf76;
  font-size: clamp(32px, 16.0843964671px + 1.766437684vw, 50px);
  font-weight: bold;
  margin-bottom: clamp(48px, 35.6211972522px + 1.3738959764vw, 62px);
  text-transform: uppercase;
}
@media (max-width: 900px) {
  .top-works__title .en {
    font-size: clamp(14px, 12.5714285714px + 0.380952381vw, 16px);
    margin-bottom: clamp(12px, 3.4285714286px + 2.2857142857vw, 24px);
  }
}
.top-works__title .main-title {
  font-size: clamp(32px, 16.0843964671px + 1.766437684vw, 50px);
  font-weight: bold;
}
@media (max-width: 900px) {
  .top-works__title .main-title {
    font-size: clamp(18px, 8px + 2.6666666667vw, 32px);
  }
}
.top-works__title .main-title .dots {
  background-image: radial-gradient(
    circle at center,
    #ff883a 20%,
    transparent 20%
  );
  background-position: top right;
  background-repeat: repeat-x;
  background-size: 1em 0.3em;
  padding-top: 0.4em;
}
.top-works__description {
  position: relative;
  font-size: clamp(14px, 8.6947988224px + 0.5888125613vw, 20px);
  font-weight: bold;
  line-height: 2.5;
  z-index: 10;
}
@media (max-width: 900px) {
  .top-works__description {
    font-size: clamp(11px, 6.5789990186px + 0.4906771344vw, 16px);
  }
}
.top-works__container {
  position: relative;
  padding: clamp(60px, 22.8635917566px + 4.1216879293vw, 102px);
  border-radius: 100px;
}
@media (max-width: 900px) {
  .top-works__container {
    padding-top: clamp(16px, 10.2857142857px + 1.5238095238vw, 24px);
    padding-left: clamp(16px, 10.2857142857px + 1.5238095238vw, 24px);
    padding-right: clamp(16px, 10.2857142857px + 1.5238095238vw, 24px);
    padding-bottom: 40px;
    border-radius: 27px;
  }
}
.top-works__container:not(:last-child) {
  margin-bottom: clamp(60px, 24.6319921492px + 3.9254170756vw, 100px);
}
.top-works__container.naisou {
  background-color: #cde08a;
}
.top-works__container.mizumawari {
  background-color: #addef8;
}
.top-works__container.sotomawari {
  background-color: #fbeb82;
}
.top-works__container--head {
  margin-bottom: clamp(30px, 19.3895976447px + 1.1776251227vw, 42px);
}
@media (max-width: 900px) {
  .top-works__container--head {
    margin-bottom: clamp(16px, 10.2857142857px + 1.5238095238vw, 24px);
  }
}
.top-works__container--head .contents {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: clamp(24px, -64.4200196271px + 9.8135426889vw, 124px);
}
.top-works__container--head .contents h3 {
  display: flex;
  align-items: flex-start;
  gap: clamp(24px, 8.0843964671px + 1.766437684vw, 42px);
  color: #7f3e3c;
  font-size: clamp(20px, 2.3159960746px + 1.9627085378vw, 40px);
  font-weight: bold;
  margin-bottom: clamp(12px, -1.2630029441px + 1.4720314033vw, 27px);
}
@media (max-width: 900px) {
  .top-works__container--head .contents h3 {
    display: flex;
    align-items: center;
    flex-direction: column;
    gap: clamp(8px, 5.1428571429px + 0.7619047619vw, 12px);
    font-size: clamp(16px, 14.2315996075px + 0.1962708538vw, 18px);
    margin-bottom: 0;
    text-align: center;
  }
}
.top-works__container--head .contents h3 .main {
  flex-shrink: 0;
}
.top-works__container--head .contents h3 .sub {
  font-size: clamp(14px, 6.4842983317px + 0.8341511286vw, 22.5px);
  line-height: 2;
}
@media (max-width: 900px) {
  .top-works__container--head .contents h3 .sub {
    font-size: clamp(12px, 10.2315996075px + 0.1962708538vw, 14px);
    line-height: 1.5;
  }
}
.top-works__container--head .contents p {
  font-size: clamp(12px, 8.4631992149px + 0.3925417076vw, 16px);
  font-weight: bold;
  line-height: 1.85;
  margin-bottom: clamp(15px, 1.7369970559px + 1.4720314033vw, 30px);
}
@media (max-width: 900px) {
  .top-works__container--head .contents .img {
    display: none;
  }
}
.top-works__container--list {
  display: flex;
  padding-bottom: clamp(20px, 4.0843964671px + 1.766437684vw, 38px);
  border-radius: 30px;
}
@media (min-width: 901px) {
  .top-works__container--list {
    padding-top: clamp(20px, 4.0843964671px + 1.766437684vw, 38px);
    background-color: #ffead1;
  }
}
@media (max-width: 900px) {
  .top-works__container--list {
    flex-direction: column;
    gap: clamp(6px, 0.6947988224px + 0.5888125613vw, 12px);
  }
}
.top-works__container--item {
  color: #7f3e3c;
  text-align: center;
}
@media (min-width: 901px) {
  .top-works__container--item {
    padding-left: clamp(40px, -14.8204121688px + 6.0843964671vw, 102px);
    padding-right: clamp(40px, -14.8204121688px + 6.0843964671vw, 102px);
  }
}
@media (max-width: 900px) {
  .top-works__container--item {
    background-color: #ffead1;
    border-radius: 10px;
    padding: 10px 0;
  }
}
@media (min-width: 901px) {
  .top-works__container--item:not(:last-child) {
    border-right: 3px solid #511f20;
  }
}
.top-works__container--item h4 {
  font-size: clamp(14px, 4.273797841px + 1.0794896958vw, 25px);
  font-weight: bold;
  line-height: 2;
}
@media (min-width: 901px) {
  .top-works__container--item h4 {
    margin-bottom: clamp(12px, 1.3895976447px + 1.1776251227vw, 24px);
  }
}
@media (max-width: 900px) {
  .top-works__container--item h4 {
    font-size: clamp(12px, 10.2315996075px + 0.1962708538vw, 14px);
  }
}
.top-works__container--item p {
  font-size: clamp(12px, 8.4631992149px + 0.3925417076vw, 16px);
  font-weight: 500;
  line-height: 1.85;
}
@media (max-width: 900px) {
  .top-works__img {
    margin: 0 auto;
    width: 57%;
  }
}
.top-works__button {
  position: absolute;
  bottom: -6%;
  left: 50%;
  transform: translateX(-50%);
}

/*===========================================================================*/
/*  case  */
/*===========================================================================*/
.top-case__head {
  position: relative;
}
.top-case__title {
  display: flex;
  align-items: center;
  flex-direction: column;
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
  width: 100%;
}
@media (max-width: 900px) {
  .top-case__title {
    bottom: clamp(-24px, -41.1428571429px + 4.5714285714vw, 0px);
  }
}
.top-case__title .main-title {
  font-size: clamp(32px, 16.0843964671px + 1.766437684vw, 50px);
  font-weight: bold;
  line-height: 1.2;
}
@media (max-width: 900px) {
  .top-case__title .main-title {
    font-size: clamp(16px, 14.5714285714px + 0.380952381vw, 18px);
  }
}
.top-case__title .main-title .dots {
  background-image: radial-gradient(
    circle at center,
    #ff883a 20%,
    transparent 20%
  );
  background-position: top right;
  background-repeat: repeat-x;
  background-size: 1em 0.3em;
  padding-top: 0.4em;
}
.top-case__contaier {
  background-color: #d8e480;
  padding-top: clamp(32px, 12.547595682px + 2.1589793916vw, 54px);
  padding-bottom: clamp(48px, 14.4003925417px + 3.7291462218vw, 86px);
}
@media (max-width: 900px) {
  .top-case__contaier {
    padding-top: clamp(32px, 26.2857142857px + 1.5238095238vw, 40px);
  }
}
@media (max-width: 900px) {
  .top-case__contents {
    padding-left: 0;
    padding-right: 0;
  }
}
@media (max-width: 900px) {
  .top-case__inner {
    max-width: 100%;
  }
}
.top-case__list {
  display: flex;
  gap: clamp(40px, 2.8635917566px + 4.1216879293vw, 82px);
  margin-bottom: clamp(40px, -2.441609421px + 4.7105004907vw, 88px);
}
@media (max-width: 900px) {
  .top-case__list {
    gap: clamp(20px, 2.3159960746px + 1.9627085378vw, 40px);
    padding: 0 25px 0;
    overflow-x: scroll;
  }
}
.top-case__item figure {
  margin-bottom: clamp(22px, 9.6211972522px + 1.3738959764vw, 36px);
}
@media (max-width: 900px) {
  .top-case__item figure {
    margin-bottom: clamp(14px, 8.2857142857px + 1.5238095238vw, 22px);
    min-width: 228px;
  }
}
.top-case__item time,
.top-case__item h3 {
  font-size: clamp(14px, 5.1579980373px + 0.9813542689vw, 24px);
  font-weight: bold;
}
@media (max-width: 900px) {
  .top-case__item time,
  .top-case__item h3 {
    font-size: clamp(12px, 10.5714285714px + 0.380952381vw, 14px);
  }
}
.top-case__item time {
  display: block;
  margin-bottom: clamp(8px, 0.9263984298px + 0.7850834151vw, 16px);
}
@media (max-width: 900px) {
  .top-case__item time {
    margin-bottom: 8px;
  }
}
.top-case__item h3 {
  margin-bottom: clamp(10px, -0.6104023553px + 1.1776251227vw, 22px);
}
@media (max-width: 900px) {
  .top-case__item h3 {
    margin-bottom: 10px;
  }
}
.top-case__item .tags {
  display: flex;
  align-items: center;
  gap: clamp(6px, -1.9578017664px + 0.883218842vw, 15px);
  font-size: clamp(12px, 10.2315996075px + 0.1962708538vw, 14px);
  font-weight: bold;
}
@media (max-width: 900px) {
  .top-case__item .tags {
    gap: clamp(6px, 4.2315996075px + 0.1962708538vw, 8px);
    font-size: 12px;
  }
}
.top-case__item .tags .tag {
  padding: 8px 0;
  background-color: #fff;
  border: 3px solid #511f20;
  border-radius: 24px;
  text-align: center;
  width: clamp(120px, 49.2639842983px + 7.8508341511vw, 200px);
}
@media (max-width: 900px) {
  .top-case__item .tags .tag {
    padding: 2px 0;
  }
}
.top-case__item .tags .tag.sotomawari {
  color: #c1a804;
}
.top-case__item .tags .tag.mizumawari {
  color: #007dbf;
}
.top-case__item .tags .tag.naisou {
  color: #7ea103;
}
.top-case__item .tags .hash {
  display: flex;
  align-items: center;
  gap: clamp(6px, -1.9578017664px + 0.883218842vw, 15px);
}
.top-case__button {
  display: flex;
  justify-content: center;
}

/*===========================================================================*/
/*  news  */
/*===========================================================================*/
.top-news {
  background-color: #d8e480;
}
@media (max-width: 900px) {
  .top-news {
    padding-left: 0;
    padding-right: 0;
  }
}
.top-news__inner {
  position: relative;
  background-color: #fbf7ee;
  padding-top: clamp(56px, 31.2423945044px + 2.7477919529vw, 84px);
  padding-bottom: clamp(32px, 5.4739941119px + 2.9440628067vw, 62px);
  padding-left: clamp(24px, -4.2944062807px + 3.1403336605vw, 56px);
  padding-right: clamp(24px, -4.2944062807px + 3.1403336605vw, 56px);
}
@media (max-width: 900px) {
  .top-news__inner {
    padding-top: clamp(24px, 16.9263984298px + 0.7850834151vw, 32px);
    padding-left: 0;
    padding-right: 0;
    max-width: 100%;
  }
}
.top-news__title {
  position: relative;
  font-size: clamp(40px, 22.3159960746px + 1.9627085378vw, 60px);
  font-weight: bold;
  text-align: center;
  margin: 0 auto;
  width: fit-content;
}
@media (max-width: 900px) {
  .top-news__title {
    font-size: clamp(16px, 14.5714285714px + 0.380952381vw, 18px);
  }
}
.top-news__title::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: -8px;
  width: 100%;
  height: 5px;
  background-color: #ff883a;
}
.top-news__slide {
  margin-top: clamp(52px, 27.2423945044px + 2.7477919529vw, 80px);
  margin-bottom: clamp(40px, 18.7791952895px + 2.3552502453vw, 64px);
}
@media (max-width: 900px) {
  .top-news__slide {
    margin-top: clamp(32px, 26.2857142857px + 1.5238095238vw, 40px);
    margin-bottom: clamp(40px, 22.8571428571px + 4.5714285714vw, 64px);
  }
}
.top-news__slide .swiper-slide {
  position: relative;
}
.top-news__slide .swiper-slide h3 {
  margin-top: clamp(10px, -0.6104023553px + 1.1776251227vw, 22px);
  font-size: clamp(14px, 4.273797841px + 1.0794896958vw, 25px);
  font-weight: bold;
  line-height: 2;
}
@media (max-width: 900px) {
  .top-news__slide .swiper-slide h3 {
    font-size: clamp(12px, 8.4631992149px + 0.3925417076vw, 16px);
  }
}
.top-news__slide .swiper-slide time {
  position: absolute;
  top: 0;
  left: 3%;
  color: #fff;
  background-color: #511f20;
  font-size: clamp(14px, 4.273797841px + 1.0794896958vw, 25px);
  font-weight: bold;
  padding-top: clamp(12px, -9.2208047105px + 2.3552502453vw, 36px);
  padding-bottom: clamp(12px, -9.2208047105px + 2.3552502453vw, 36px);
  padding-left: clamp(8px, -6.1472031403px + 1.5701668302vw, 24px);
  padding-right: clamp(8px, -6.1472031403px + 1.5701668302vw, 24px);
}
.top-news__slide .swiper-slide img {
  border-radius: 20px;
  width: 100%;
}
.top-news .swiper-button-prev,
.top-news .swiper-button-next {
  height: clamp(30px, 12.3159960746px + 1.9627085378vw, 50px);
  width: clamp(30px, 12.3159960746px + 1.9627085378vw, 50px);
}
.top-news .swiper-button-prev {
  left: 1px;
}
@media (max-width: 900px) {
  .top-news .swiper-button-prev {
    top: 70%;
    left: 10px;
  }
}
.top-news .swiper-button-next {
  right: 1px;
}
@media (max-width: 900px) {
  .top-news .swiper-button-next {
    top: 70%;
    right: 10px;
  }
}
.top-news .swiper-button-prev::after,
.top-news .swiper-button-next::after {
  background-repeat: no-repeat;
  background-size: contain;
  content: "";
  height: clamp(30px, 12.3159960746px + 1.9627085378vw, 50px);
  width: clamp(30px, 12.3159960746px + 1.9627085378vw, 50px);
}
.top-news .swiper-button-prev::after {
  background-image: url(../../images/top/arrow_left.png);
}
.top-news .swiper-button-next::after {
  background-image: url(../../images/top/arrow_right.png);
}
.top-news__button {
  display: flex;
  justify-content: center;
}

.top-contact {
  background-color: #d8e480;
}

/* ------------------------------------ */
/* 追加対応 */
/* ------------------------------------ */

/* topお知らせように追加 */
.top-news__date-year {
  display: block;
}
/* サムネイル枠：520x390（4:3）でトリミング表示 */
.top-news .top-news__thumb {
  aspect-ratio: 520 / 390;
  width: 100%;
  overflow: hidden;
  border-radius: 20px;
}
@media (max-width: 900px) {
  .top-news .top-news__thumb {
    aspect-ratio: 230 / 175;
  }
}
.top-news .top-news__thumb img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: 50% 50%;
  display: block;
}
/* 年だけ改行 */
.top-news .top-news__date-year {
  display: block;
  line-height: 1;
}

/* top施工実績用 */
.top-case .top-case__thumb {
  aspect-ratio: 520 / 390;
  width: 100%;
  overflow: hidden;
  border-radius: 8px;
}
@media (max-width: 900px) {
  .top-case .top-case__thumb {
    aspect-ratio: 230 / 175;
  }
}
.top-case .top-case__thumb img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: 50% 50%;
  display: block;
}
.top-case__item .tags {
  flex-wrap: wrap;
}
