@charset "UTF-8";
.p-hero {
  background: linear-gradient(transparent 34.4rem, var(--green) 34.4rem) no-repeat, url("../img/bg_foam_1.webp") no-repeat center 14.5rem/100% 51.2rem;
  display: flex;
  gap: 4.9rem;
  padding: 0 4rem 0 7.4rem;
}
@media screen and (max-width: 767px) {
  .p-hero {
    background: linear-gradient(transparent 38rem, var(--green) 38rem) no-repeat, url("../img/bg_foam_1.webp") no-repeat center 9rem/auto 42rem;
    flex-direction: column;
    gap: 0;
    padding: 0 2.4rem;
  }
}
.p-hero-body {
  padding-top: 9.2rem;
  width: 38.4rem;
}
@media screen and (max-width: 767px) {
  .p-hero-body {
    display: contents;
  }
}
.p-hero-body .catch {
  font-size: 3.6rem;
  font-weight: 700;
  line-height: 1.4444;
}
@media screen and (max-width: 767px) {
  .p-hero-body .catch {
    font-size: 2.4rem;
    line-height: 1.5833;
    margin-top: 3.6rem;
    order: 1;
  }
}
.p-hero-body .btns {
  display: flex;
  flex-direction: column;
  gap: 4rem;
  margin-top: 16.3rem;
}
@media screen and (max-width: 767px) {
  .p-hero-body .btns {
    gap: 1.6rem;
    margin-top: 2.6rem;
    order: 4;
  }
}
.p-hero-body .btns a {
  pointer-events: none;
}
.p-hero .img {
  border-radius: 0.6rem;
  flex: 1;
  height: 64.8rem;
  overflow: hidden;
}
@media screen and (max-width: 767px) {
  .p-hero .img {
    flex: none;
    height: 27rem;
    margin-top: 6rem;
    order: 3;
  }
}
@media screen and (max-width: 767px) {
  .p-hero img {
    height: 100%;
    object-fit: cover;
  }
}

.p-about {
  background: url("../img/bg_foam_2.webp") no-repeat center bottom/100% 51.2rem, var(--green);
  background-blend-mode: multiply;
  color: white;
  padding: 10.4rem 0 11rem;
}
@media screen and (max-width: 767px) {
  .p-about {
    background: url("../img/bg_foam_1.webp") no-repeat left -36.5rem bottom -11.2rem/auto 42rem, var(--green);
    padding: 7.4rem 0 8rem;
  }
}
.p-about:before {
  aspect-ratio: 1/1;
  background: url("../img/home_about_logo.webp") no-repeat center/contain;
  content: "";
  left: 50%;
  mix-blend-mode: screen;
  opacity: 0.36;
  position: absolute;
  top: 3.9rem;
  translate: -50% 0;
  width: 59.2rem;
}
@media screen and (max-width: 767px) {
  .p-about:before {
    top: 14.4rem;
    width: 30rem;
  }
}
.p-about-inner {
  align-items: start;
  display: flex;
  justify-content: space-between;
}
@media screen and (max-width: 767px) {
  .p-about-inner {
    align-items: stretch;
    flex-direction: column;
  }
}
.p-about-body {
  font-weight: 500;
  width: 71.4rem;
}
@media screen and (max-width: 767px) {
  .p-about-body {
    display: contents;
  }
}
.p-about-body .lead {
  margin-top: 7.9rem;
}
@media screen and (max-width: 767px) {
  .p-about-body .lead {
    line-height: 1.5714;
    margin-top: 2.6rem;
  }
}
.p-about-body .activity {
  margin-top: 4.1rem;
  text-box: trim-both cap alphabetic;
}
@media screen and (max-width: 767px) {
  .p-about-body .activity {
    line-height: 1.5714;
    margin-top: 2.2rem;
  }
}
.p-about-body .activity p {
  margin-bottom: 0.8rem;
}
.p-about-body .activity li:before {
  content: "・";
}
.p-about-body .c-btn-2 {
  margin-top: 4rem;
  width: 29rem;
}
@media screen and (max-width: 767px) {
  .p-about-body .c-btn-2 {
    align-self: center;
    margin-top: 3.2rem;
    order: 1;
    width: 28rem;
  }
}
.p-about-imgs {
  display: flex;
  gap: 1rem;
}
@media screen and (max-width: 767px) {
  .p-about-imgs {
    justify-content: space-between;
    margin-top: 3.2rem;
  }
}
.p-about-imgs .img {
  border-radius: 0.6rem;
  overflow: hidden;
  width: 21.1rem;
}
@media screen and (max-width: 767px) {
  .p-about-imgs .img {
    width: 16rem;
  }
}
.p-about-imgs .img:nth-child(1) {
  margin-top: 18.7rem;
}
@media screen and (max-width: 767px) {
  .p-about-imgs .img:nth-child(1) {
    margin-top: 4rem;
  }
}
.p-about-imgs .img:nth-child(2) {
  margin-top: 3.2rem;
}
@media screen and (max-width: 767px) {
  .p-about-imgs .img:nth-child(2) {
    margin-top: 0;
  }
}

.p-cert {
  background: linear-gradient(rgba(46, 46, 46, 0.9), rgba(46, 46, 46, 0.9)), url("../img/home_cert_bg.webp") no-repeat center/cover;
  padding: 13rem 0;
}
@media screen and (max-width: 767px) {
  .p-cert {
    padding: 6rem 0 6.4rem;
  }
}
.p-cert-head {
  align-items: start;
  display: flex;
  justify-content: space-between;
}
@media screen and (max-width: 767px) {
  .p-cert-head {
    display: block;
  }
}
.p-cert-head .lead {
  color: white;
  font-weight: 500;
  margin-top: 3.2rem;
  width: 71.8rem;
}
@media screen and (max-width: 767px) {
  .p-cert-head .lead {
    line-height: 1.5714;
    margin-top: 2.4rem;
    width: auto;
  }
}
.p-cert-items {
  display: grid;
  gap: 4rem;
  grid-template-columns: repeat(2, 1fr);
  margin-top: 9.6rem;
}
@media screen and (max-width: 767px) {
  .p-cert-items {
    gap: 2.4rem;
    grid-template-columns: 1fr;
    margin-top: 3.2rem;
  }
}
.p-cert-item {
  background: white;
  border-radius: 0.6rem;
  padding: 5rem;
}
@media screen and (max-width: 767px) {
  .p-cert-item {
    padding: 3.2rem 2.4rem;
  }
}
.p-cert-item .ttl {
  color: var(--green);
  font-size: 2.4rem;
  font-weight: 700;
  line-height: 1.33;
}
@media screen and (max-width: 767px) {
  .p-cert-item .ttl {
    font-size: 2rem;
    line-height: 1.6;
  }
}
.p-cert-item .txt {
  line-height: 1.5;
  margin-top: 3rem;
}
@media screen and (max-width: 767px) {
  .p-cert-item .txt {
    line-height: 1.5714;
    margin-top: 2rem;
  }
}
.p-cert-item .list {
  background: var(--beige);
  border-radius: 0.6rem;
  display: flex;
  flex-direction: column;
  font-size: 2rem;
  font-weight: 700;
  gap: 2.4rem;
  margin-top: 3rem;
  padding: 4rem;
}
@media screen and (max-width: 767px) {
  .p-cert-item .list {
    font-size: 1.5rem;
    gap: 1.8rem;
    margin-top: 2rem;
    padding: 2.2rem 1.6rem;
  }
}
.p-cert-item .list li {
  align-items: center;
  display: flex;
  gap: 1.5rem;
  line-height: 1.8rem;
}
.p-cert-item .list li:before {
  background-color: black;
  content: " ";
  display: inline-block;
  height: auto;
  line-height: 0;
  mask-repeat: no-repeat;
  mask-size: 100% auto;
  flex-shrink: 0;
  aspect-ratio: 1/1;
  background: var(--green);
  mask-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 18 18"><path d="M7.6 10.4L5.45 8.25C5.26667 8.06667 5.03333 7.975 4.75 7.975C4.46667 7.975 4.23333 8.06667 4.05 8.25C3.86667 8.43333 3.775 8.66667 3.775 8.95C3.775 9.23333 3.86667 9.46667 4.05 9.65L6.9 12.5C7.1 12.7 7.33333 12.8 7.6 12.8C7.86667 12.8 8.1 12.7 8.3 12.5L13.95 6.85C14.1333 6.66667 14.225 6.43333 14.225 6.15C14.225 5.86667 14.1333 5.63333 13.95 5.45C13.7667 5.26667 13.5333 5.175 13.25 5.175C12.9667 5.175 12.7333 5.26667 12.55 5.45L7.6 10.4ZM2 18C1.45 18 0.979333 17.8043 0.588 17.413C0.196667 17.0217 0.000666667 16.5507 0 16V2C0 1.45 0.196 0.979333 0.588 0.588C0.98 0.196667 1.45067 0.000666667 2 0H16C16.55 0 17.021 0.196 17.413 0.588C17.805 0.98 18.0007 1.45067 18 2V16C18 16.55 17.8043 17.021 17.413 17.413C17.0217 17.805 16.5507 18.0007 16 18H2Z"/></svg>');
  width: 1.8rem;
}
.p-cert-item .c-btn-2 {
  display: flex;
  margin-top: 3rem;
  width: 100%;
}
@media screen and (max-width: 767px) {
  .p-cert-item .c-btn-2 {
    margin-top: 2.4rem;
  }
}

.p-news {
  padding-top: 13rem;
}
@media screen and (max-width: 767px) {
  .p-news {
    padding-top: 6.4rem;
  }
}
.p-news:last-child {
  padding-bottom: 13rem;
}
@media screen and (max-width: 767px) {
  .p-news:last-child {
    padding-bottom: 6.4rem;
  }
}
.p-news-inner {
  display: flex;
  justify-content: space-between;
}
@media screen and (max-width: 767px) {
  .p-news-inner {
    flex-direction: column;
  }
}
.p-news-head {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}
@media screen and (max-width: 767px) {
  .p-news-head {
    display: contents;
  }
}
.p-news-head .c-btn-2 {
  width: 24.3rem;
}
@media screen and (max-width: 767px) {
  .p-news-head .c-btn-2 {
    align-self: center;
    margin-top: 3.2rem;
    order: 1;
    width: 28rem;
  }
}
.p-news .c-news {
  width: 84.9rem;
}
@media screen and (max-width: 767px) {
  .p-news .c-news {
    margin-top: 3.2rem;
    width: auto;
  }
}

.p-instagram {
  background: url("../img/bg_foam_1.webp") no-repeat center bottom -25.6rem/100% 51.2rem;
  padding: 13rem 0;
}
@media screen and (max-width: 767px) {
  .p-instagram {
    background: url("../img/bg_foam_1.webp") no-repeat center bottom -6rem/auto 42rem;
    padding: 8rem 0 14rem;
  }
}
.p-instagram-list {
  animation: instagram-scroll 60s linear infinite;
  display: flex;
  margin-top: 7.9rem;
  margin-left: -14.4rem;
  width: max-content;
}
@media screen and (max-width: 767px) {
  .p-instagram-list {
    margin-left: -21.7rem;
    margin-top: 3.2rem;
  }
}
.p-instagram-list:hover {
  animation-play-state: paused;
}
@media (prefers-reduced-motion: reduce) {
  .p-instagram-list {
    animation: none;
  }
}
.p-instagram-list ul {
  display: flex;
}
.p-instagram-list li {
  flex-shrink: 0;
  height: 43.4rem;
  margin-right: 0.6rem;
  width: 32.6rem;
}
@media screen and (max-width: 767px) {
  .p-instagram-list li {
    height: 21.3rem;
    width: 16rem;
  }
}
.p-instagram-list a {
  height: 100%;
}
.p-instagram-list img {
  height: 100%;
  object-fit: cover;
}
.p-instagram .c-btn-2 {
  display: flex;
  margin: 8rem auto 0;
  width: 27.4rem;
}
@media screen and (max-width: 767px) {
  .p-instagram .c-btn-2 {
    margin-top: 3.2rem;
    width: 28rem;
  }
}

@keyframes instagram-scroll {
  to {
    transform: translateX(-33.3333333333%);
  }
}

/*# sourceMappingURL=home.css.map */
