/*!
global > color
------------------------------
*/
/*!
global > content-width
------------------------------
*/
/*!
global > font
------------------------------
*/
/*!
global > mixin
------------------------------
*/
/* ================================
UTILITIES
================================ */
.p-top .news-item, .p-top .contact-line__note, .p-top .contact-line__note2, .p-top .contact-line__link .note, .p-top .contact-tel__note, .p-top .contact-tel__note2 {
  font-size: 0.875rem;
}
@media screen and (min-width: 768px) {
  .p-top .news-item, .p-top .contact-line__note, .p-top .contact-line__note2, .p-top .contact-line__link .note, .p-top .contact-tel__note, .p-top .contact-tel__note2 {
    font-size: clamp(0.875rem, 0.4237vw + 0.6716rem, 1rem);
  }
}

.p-top .section-ttl__ja, .p-top .section-btn, .p-top .contact-title {
  font-size: 0.875rem;
}
@media screen and (min-width: 768px) {
  .p-top .section-ttl__ja, .p-top .section-btn, .p-top .contact-title {
    font-size: clamp(0.875rem, 0.8475vw + 0.4682rem, 1.125rem);
  }
}

.p-top .contact-tel__target {
  font-size: 1.25rem;
}
@media screen and (min-width: 768px) {
  .p-top .contact-tel__target {
    font-size: clamp(1.25rem, 2.1186vw + 0.2331rem, 1.875rem);
  }
}

.p-top .section-ttl__en span {
  font-size: 1.625rem;
}
@media screen and (min-width: 768px) {
  .p-top .section-ttl__en span {
    font-size: clamp(1.625rem, 1.9068vw + 0.7097rem, 2.1875rem);
  }
}

.p-top .section-ttl__en, .p-top .contact-line__tel, .p-top .contact-line__link .id, .p-top .contact-tel__target .numb {
  font-size: 2rem;
}
@media screen and (min-width: 768px) {
  .p-top .section-ttl__en, .p-top .contact-line__tel, .p-top .contact-line__link .id, .p-top .contact-tel__target .numb {
    font-size: clamp(2rem, 2.7542vw + 0.678rem, 2.8125rem);
  }
}

@media screen and (min-width: 768px) {
  .p-top {
    background-image: url("../images/top/bg_mv.webp");
    background-repeat: no-repeat;
    background-size: 1641px;
  }
}
.p-top .mv {
  height: calc(100vh - 65px);
  padding-top: 60px;
}
@media screen and (min-width: 768px) {
  .p-top .mv {
    height: 100vh;
    min-height: 880px;
  }
}
@media screen and (min-width: 1024px) {
  .p-top .mv {
    padding-top: clamp(120px, (100vw - 1200px) * 1000, 200px);
  }
}
.p-top .mv-inner, .p-top .mv-slide, .p-top .mv-item, .p-top .mv-img,
.p-top .mv .slick-list,
.p-top .mv .slick-track {
  height: 100%;
}
.p-top .mv-item {
  position: relative;
}
@media screen and (min-width: 768px) {
  .p-top .mv-item {
    padding-left: 60px;
  }
}
@media screen and (min-width: 1024px) {
  .p-top .mv-item {
    padding-left: clamp(10.9375rem, 31.25vw + -12.5rem, 25rem);
  }
}
.p-top .mv-item--02 .mv-item__content {
  display: none;
}
@media screen and (min-width: 768px) {
  .p-top .mv-item--02 .mv-item__content {
    top: 17.8409090909%;
    right: clamp(1.875rem, 13.0208vw + -4.375rem, 11.25rem);
    display: block;
  }
}
.p-top .mv-item--02 .mv-item__ttl {
  width: min(552px, 28.75vw);
  min-width: 400px;
}
.p-top .mv-item--02 .mv-item__text {
  width: min(591px, 30.78125vw);
  min-width: 400px;
  font-size: clamp(1.875rem, 2.1701vw + 0.8333rem, 3.4375rem);
  font-weight: 400;
  transform: translateX(-18px);
  padding-top: 13.3671742809%;
}
.p-top .mv-item--03 .mv-item__content {
  display: none;
  gap: 20px;
  inset: 0;
}
@media screen and (min-width: 768px) {
  .p-top .mv-item--03 .mv-item__content {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-items: center;
    padding: clamp(1.875rem, 6.0764vw + -1.0417rem, 6.25rem) clamp(1.875rem, 10.2431vw + -3.0417rem, 9.25rem) 100px clamp(6.25rem, 36.4583vw + -11.25rem, 32.5rem);
  }
}
.p-top .mv-item--03 .mv-item__ttl {
  width: clamp(15.625rem, 15.3646vw + 8.25rem, 26.6875rem);
  padding-bottom: clamp(3.125rem, 10.1563vw + -1.75rem, 10.4375rem);
  translate: 0 0;
}
.p-top .mv-item--03 .mv-item__text {
  width: clamp(15.625rem, 12.6736vw + 9.5417rem, 24.75rem);
  padding-bottom: 20px;
  translate: 0 0;
}
.p-top .mv-item__content {
  position: absolute;
}
.p-top .mv-ttl {
  font-size: 1.4063rem;
  position: absolute;
  top: 26.7%;
  display: grid;
  gap: 15px;
  font-weight: 400;
  letter-spacing: 0.1em;
  place-items: start;
}
@media screen and (min-width: 768px) {
  .p-top .mv-ttl {
    top: initial;
    left: 5.2083333333%;
    bottom: min(8.59375vw, 18.75%);
    font-size: clamp(2.5rem, 0.434vw + 2.2917rem, 2.8125rem);
    gap: 0.6666666667em;
  }
}
.p-top .mv-ttl__line {
  background-color: #fff;
  padding-inline: 0.7111111111em;
}
.p-top .mv-img {
  display: block;
  overflow: hidden;
  border-radius: 0 0 0 48px;
}
@media screen and (min-width: 768px) {
  .p-top .mv-img {
    border-radius: 0 0 0 80px;
  }
}
.p-top .mv-img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
}
.p-top .section {
  margin-top: 80px;
}
@media screen and (min-width: 768px) {
  .p-top .section {
    margin-top: 107px;
  }
}
.p-top .section-ttl {
  display: flex;
  gap: 4px;
  flex-wrap: wrap;
  align-items: baseline;
  flex-direction: column;
  font-weight: 700;
  color: #49a75a;
}
@media screen and (min-width: 768px) {
  .p-top .section-ttl {
    gap: 10px 15px;
    flex-direction: row;
  }
}
.p-top .section-ttl__en {
  line-height: 1.2;
}
.p-top .section-ttl__ja {
  line-height: 1.2;
}
.p-top .section-btn {
  width: 250px;
  height: 53px;
  border: 3px solid #49a75a;
  border-radius: 4px;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-left: auto;
  margin-right: auto;
  font-weight: 700;
  color: #49a75a;
  margin-top: 26px;
  gap: 1em;
}
.p-top .section-btn::after {
  content: "";
  width: 1.1666666667em;
  height: 1.1666666667em;
  background-image: url("../images/common/icon_arrow2.svg");
  background-repeat: no-repeat;
  background-size: contain;
}
.p-top .news {
  padding-block: 80px;
  position: relative;
  margin-top: 0;
}
@media screen and (min-width: 768px) {
  .p-top .news {
    padding-block: 85px 107px;
    margin-top: 18px;
  }
}
.p-top .news::before {
  content: "";
  position: absolute;
  bottom: 0;
  right: 0;
  width: 275px;
  height: 155px;
  background-image: url("../images/top/img_about_leaf.webp");
  background-size: contain;
  background-repeat: no-repeat;
  transform: translateY(64.5161290323%);
  opacity: 0.5;
}
@media screen and (min-width: 768px) {
  .p-top .news::before {
    width: min(1100px, 57.2916666667vw);
    height: min(600px, 31.25vw);
    transform: translateY(47.6666666667%);
  }
}
.p-top .news-inner {
  width: calc(100% - 40px);
  max-width: 1120px;
  margin-left: auto;
  margin-right: auto;
  position: relative;
}
.p-top .news-content {
  display: flex;
  flex-direction: column;
  align-items: center;
  row-gap: 40px;
  width: 100%;
  margin-top: 10px;
}
@media screen and (min-width: 768px) {
  .p-top .news-content {
    flex-direction: row;
    justify-content: space-between;
    align-items: center;
    width: calc(100% - 20px);
    max-width: 1070px;
    margin-top: 16px;
    margin-left: auto;
  }
}
.p-top .news-list {
  width: 100%;
}
@media screen and (min-width: 768px) {
  .p-top .news-list {
    width: 88.785046729%;
  }
}
.p-top .news-item {
  display: flex;
  gap: 5px 25px;
  padding: 14px 16px;
  color: #333;
}
@media screen and (min-width: 768px) {
  .p-top .news-item {
    gap: 5px 35px;
  }
}
.p-top .news-item:not(:last-child) {
  border-bottom: 1px solid #4d4d4d;
}
.p-top .news-item__time {
  flex-shrink: 0;
}
.p-top .news-item__ttl {
  display: -webkit-box;
  -webkit-line-clamp: 1;
  -webkit-box-orient: vertical;
  overflow: hidden;
  text-overflow: ellipsis;
  word-break: break-word;
}
.p-top .news-more {
  flex-shrink: 0;
  width: 40px;
  height: 40px;
  font-size: 0rem;
  border-radius: 50%;
  background-image: url("../images/common/icon_arrowc.svg");
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  background-color: #fff;
}
@media screen and (min-width: 768px) {
  .p-top .news-more {
    width: 62px;
    height: 62px;
  }
}
.p-top .main-content {
  padding-bottom: 100px;
}
@media screen and (min-width: 768px) {
  .p-top .main-content {
    padding-bottom: 170px;
  }
}
.p-top .about {
  --photo-top: 0;
  --photo-left: 0;
  --photo-o-position: left;
  margin-top: 0;
}
@media screen and (min-width: 768px) {
  .p-top .about {
    --photo-width: 738.5178px;
  }
}
@media screen and (min-width: 768px) {
  .p-top .about-photo {
    max-width: 100%;
  }
}
.p-top .about-blueleaf {
  flex-shrink: 0;
  align-self: center;
  width: 200px;
}
@media screen and (min-width: 768px) {
  .p-top .about-blueleaf {
    width: min(200px, 16.8776371308%);
  }
}
.p-top .about-blueleaf img {
  position: relative;
}
@media screen and (min-width: 768px) {
  .p-top .about-blueleaf img {
    bottom: 3px;
  }
}
@media screen and (min-width: 768px) {
  .p-top .about-mainboard {
    padding-bottom: 68px;
  }
}
.p-top .about-body {
  display: flex;
  flex-direction: column;
  align-items: center;
  row-gap: 40px;
}
@media screen and (min-width: 768px) {
  .p-top .about-body {
    left: clamp(0px, (100vw - 1200px) * 1000, 40px);
    flex-direction: row;
    align-items: initial;
    justify-content: end;
    -moz-column-gap: 6.1475409836%;
    column-gap: 6.1475409836%;
    max-width: 100%;
    padding-right: 2.868852459%;
  }
}
@media screen and (min-width: 768px) {
  .p-top .about-group {
    max-width: 600px;
  }
}
.p-top .estate {
  --photo-top: -96px;
  --photo-right: -51px;
  --photo-o-position: left;
}
@media screen and (min-width: 768px) {
  .p-top .estate {
    --photo-width: 1202.0519px;
    --photo-height: 542.7254px;
  }
}
@media screen and (min-width: 768px) {
  .p-top .estate-photo {
    max-width: 100%;
  }
}
@media screen and (min-width: 768px) {
  .p-top .estate-mainboard {
    padding-bottom: 60px;
  }
}
@media screen and (min-width: 768px) {
  .p-top .estate-btn {
    margin-top: 35px;
  }
}
.p-top .paint {
  --photo-top: 0;
  --photo-left: 0;
  --photo-o-position: left;
  --photo-opacity: 0.6;
}
@media screen and (min-width: 768px) {
  .p-top .paint {
    --photo-width: 1070px;
  }
}
.p-top .paint::before {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  z-index: 1;
  width: 210px;
  height: 60px;
  background-image: url("../images/top/img_leaf.webp");
  background-repeat: no-repeat;
  background-size: contain;
  translate: 0 56%;
  opacity: 0.5;
}
@media screen and (min-width: 768px) {
  .p-top .paint::before {
    width: min(920px, 47.9166666667vw);
    height: min(215px, 11.1979166667vw);
  }
}
@media screen and (min-width: 768px) {
  .p-top .paint-photo {
    max-width: 100%;
  }
}
@media screen and (min-width: 768px) {
  .p-top .paint-mainboard {
    padding-bottom: 60px;
  }
}
@media screen and (min-width: 768px) {
  .p-top .paint-btn {
    margin-top: 35px;
  }
}
.p-top .contact::before {
  content: "";
  position: absolute;
  bottom: 0;
  right: 0;
  z-index: 1;
  width: 210px;
  height: 60px;
  background-image: url("../images/top/img_leaf.webp");
  background-repeat: no-repeat;
  background-size: contain;
  scale: -1 1;
  translate: 0 80%;
  opacity: 0.5;
}
@media screen and (min-width: 768px) {
  .p-top .contact::before {
    width: min(920px, 47.9166666667vw);
    height: min(215px, 11.1979166667vw);
  }
}
@media screen and (min-width: 768px) {
  .p-top .contact-mainboard {
    padding-inline: clamp(60px, (100vw - 1200px) * 1000, 100px);
    padding-bottom: 88px;
  }
}
.p-top .contact-body {
  position: relative;
  display: flex;
  flex-direction: column;
}
@media screen and (min-width: 768px) {
  .p-top .contact-body {
    flex-direction: row;
    max-width: 100%;
  }
}
.p-top .contact-title {
  display: flex;
  align-items: center;
  gap: 9px;
  font-weight: 700;
  color: #49a75a;
}
.p-top .contact-title::before {
  content: "";
  width: 20px;
  height: 26px;
  background-image: url("../images/common/icon_blueleaf.svg");
  background-size: contain;
  background-repeat: no-repeat;
}
.p-top .contact-box__content {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 30px;
  margin-top: 15px;
}
@media screen and (min-width: 768px) {
  .p-top .contact-box__content {
    flex-wrap: wrap;
    flex-direction: row;
    align-items: flex-end;
    justify-content: space-between;
    gap: 42px;
    padding-left: clamp(1.25rem, 1.2019vw + 0.6731rem, 1.875rem);
  }
}
@media screen and (min-width: 768px) {
  .p-top .contact-box__text {
    flex: 1;
  }
}
.p-top .contact-line {
  padding-bottom: 40px;
  border-bottom: 1px solid #000;
}
@media screen and (min-width: 768px) {
  .p-top .contact-line {
    width: 53.7878787879%;
    padding-right: clamp(1.25rem, 11.5385vw + -8.8462rem, 5rem);
    border-right: 1px solid #000;
    border-bottom: 0;
    padding-bottom: 0;
  }
}
.p-top .contact-line__tel {
  display: flex;
  align-items: baseline;
  gap: 0.2666666667em;
  font-weight: 500;
  line-height: 1;
}
.p-top .contact-line__tel::before {
  content: "";
  width: 1.2888888889em;
  height: 0.7333333333em;
  background-image: url("../images/common/icon_freedial.svg");
  background-repeat: no-repeat;
  background-size: contain;
}
.p-top .contact-line__note, .p-top .contact-line__note2 {
  line-height: 1.5;
  font-weight: 400;
}
.p-top .contact-line__note {
  position: relative;
  margin-top: 8px;
  padding-bottom: 25px;
}
@media screen and (min-width: 768px) {
  .p-top .contact-line__note {
    padding-bottom: 25px;
  }
}
.p-top .contact-line__note::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 1px;
  background-image: url("../images/top/img_dash.svg");
  background-repeat: repeat-x;
}
@media screen and (min-width: 768px) {
  .p-top .contact-line__note2 {
    margin-top: 5px;
  }
}
.p-top .contact-line__link {
  display: inline-block;
  padding-top: 20px;
}
@media screen and (min-width: 768px) {
  .p-top .contact-line__link {
    padding-top: 18px;
  }
}
.p-top .contact-line__link span {
  display: block;
  line-height: 1;
}
.p-top .contact-line__link .note {
  font-weight: 500;
}
.p-top .contact-line__link .id {
  font-weight: 500;
}
.p-top .contact-line__qr {
  width: 100%;
  text-align: center;
}
@media screen and (min-width: 768px) {
  .p-top .contact-line__qr {
    width: clamp(min(200px, 100% - 42px - 359px), (1400px - 100vw) * 1000, 100%);
  }
}
.p-top .contact-line__qr img {
  max-width: 200px;
}
.p-top .contact-tel {
  padding-top: 40px;
}
@media screen and (min-width: 768px) {
  .p-top .contact-tel {
    flex: 1;
    padding-top: 0;
    padding-left: clamp(1.25rem, 11.5385vw + -8.8462rem, 5rem);
  }
}
.p-top .contact-tel__target {
  display: flex;
  align-items: flex-end;
  gap: 0.5em;
}
.p-top .contact-tel__target .label {
  font-weight: 700;
  line-height: 1;
}
.p-top .contact-tel__target .numb {
  font-weight: 500;
  line-height: 1;
}
.p-top .contact-tel__note, .p-top .contact-tel__note2 {
  line-height: 1.5;
  font-weight: 400;
}
.p-top .contact-tel__note {
  margin-top: 10px;
}
.p-top .contact-tel__note2 {
  margin-top: 10px;
}
@media screen and (min-width: 768px) {
  .p-top .contact-tel__note2 {
    margin-top: 12px;
  }
}
.p-top .contact-tel__btn {
  margin-top: 30px;
}
@media screen and (min-width: 768px) {
  .p-top .contact-tel__btn {
    width: 100%;
    max-width: 350px;
    margin-left: 0;
    margin-top: 40px;
  }
}
/*# sourceMappingURL=top.css.map */