/* ******************************
 *
 * RESPONSIVE MIXIN
 *
 * ****************************** */
/* ******************************
 *
 * FONT SETTINGS
 *
 * ****************************** */
@font-face {
  font-family: "tsukuhou";
  src: url("../font/Tsukuhou-35Point-Gothic.ttf") format("truetype");
}
/* ******************************
 *
 * FONT SETTINGS
 *
 * ****************************** */
/* ******************************
 *
 * KEYFRAMES
 *
 * ****************************** */
@-webkit-keyframes loopCl {
  from {
    -webkit-transform: translateX(0);
            transform: translateX(0);
  }
  to {
    -webkit-transform: translateX(-100%);
            transform: translateX(-100%);
  }
}
@keyframes loopCl {
  from {
    -webkit-transform: translateX(0);
            transform: translateX(0);
  }
  to {
    -webkit-transform: translateX(-100%);
            transform: translateX(-100%);
  }
}
.labAbout {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}
@media screen and (min-width: 320px) {
  .labAbout {
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    margin-top: 0;
    padding: 7rem 2.5vw 10rem;
  }
}
@media screen and (min-width: 1025px) {
  .labAbout {
    -webkit-box-align: end;
        -ms-flex-align: end;
            align-items: flex-end;
    margin-top: -10rem;
    padding: 5rem 2.5vw 23.5rem;
  }
}
.labAbout .sectionTitle {
  width: 100%;
  text-align: center;
}

.aboutWrapper {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
@media screen and (min-width: 320px) {
  .aboutWrapper {
    margin-top: 3rem;
    gap: 5rem 0;
  }
}
@media screen and (min-width: 1025px) {
  .aboutWrapper {
    margin-top: 5rem;
    gap: 8rem 0;
  }
}
.aboutWrapper .twoColumn {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: stretch;
      -ms-flex-align: stretch;
          align-items: stretch;
}
@media screen and (min-width: 320px) {
  .aboutWrapper .twoColumn {
    gap: 0 2rem;
  }
}
@media screen and (min-width: 1025px) {
  .aboutWrapper .twoColumn {
    gap: 0 2.5rem;
  }
}

.aboutItem {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  font-weight: 900;
  text-align: center;
}
@media screen and (min-width: 320px) {
  .aboutItem {
    font-size: 2rem;
    letter-spacing: 0.2rem;
  }
}
@media screen and (min-width: 1025px) {
  .aboutItem {
    width: 39.5rem;
    font-size: 4.2rem;
    letter-spacing: 0.3rem;
  }
}
.aboutItem .tiny {
  font-size: 50%;
}
.aboutItem .small {
  font-size: 70%;
}
.aboutItem .middle {
  font-size: 80%;
}
.aboutItem::before {
  position: absolute;
  content: "";
  background: #fde7d5;
  border-radius: 50%;
  z-index: -1;
}
@media screen and (min-width: 1025px) {
  .aboutItem::before {
    top: -1.8rem;
    left: 3rem;
    width: 7rem;
    height: 7rem;
  }
}

.aboutImgMain {
  position: absolute;
  border-radius: 50%;
  overflow: hidden;
}
@media screen and (min-width: 320px) {
  .aboutImgMain {
    top: auto;
    right: 5vw;
    bottom: -12rem;
    left: auto;
    width: 16rem;
    height: 16rem;
  }
}
@media screen and (min-width: 1025px) {
  .aboutImgMain {
    top: 25rem;
    right: auto;
    bottom: auto;
    left: 26rem;
    width: 64rem;
    height: 64rem;
  }
}
.aboutImgMain img {
  display: block;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.aboutImgSub {
  position: absolute;
  height: auto;
}
@media screen and (min-width: 320px) {
  .aboutImgSub {
    bottom: 0;
    left: 0;
    width: 10rem;
  }
}
@media screen and (min-width: 1025px) {
  .aboutImgSub {
    bottom: 0;
    left: 0;
    width: 28rem;
  }
}

.aboutBg {
  position: absolute;
  height: auto;
  z-index: -2;
}
@media screen and (min-width: 320px) {
  .aboutBg {
    bottom: 3rem;
    left: 0;
  }
}
@media screen and (min-width: 1025px) {
  .aboutBg {
    bottom: 6rem;
    left: 0;
  }
}

.labRecipe {
  position: relative;
  z-index: 1;
}
@media screen and (min-width: 320px) {
  .labRecipe {
    padding: 15rem 5vw 0;
  }
}
@media screen and (min-width: 1025px) {
  .labRecipe {
    padding: 64px 10vw 0;
  }
}

.recipeList {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
@media screen and (min-width: 320px) {
  .recipeList {
    margin-top: 5rem;
    gap: 7rem 0;
  }
}
@media screen and (min-width: 1025px) {
  .recipeList {
    margin-top: 11.5rem;
    gap: 8rem 0;
  }
}

.recipeItem {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
@media screen and (min-width: 320px) {
  .recipeItem {
    width: 100%;
  }
}
@media screen and (min-width: 1025px) {
  .recipeItem {
    width: 41%;
  }
}
.recipeItem .itemNum {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  color: #FFFFFF;
  height: -webkit-fit-content;
  height: -moz-fit-content;
  height: fit-content;
  aspect-ratio: 1/1;
  border-radius: 50%;
  background: linear-gradient(110deg, #85afd8 30%, #6bd8c2 70%);
}
@media screen and (min-width: 320px) {
  .recipeItem .itemNum {
    width: 20.5%;
    font-size: 1.2rem;
    letter-spacing: 0.2rem;
  }
}
@media screen and (min-width: 1025px) {
  .recipeItem .itemNum {
    width: 20.5%;
    font-size: 2rem;
    letter-spacing: 0.4rem;
  }
}
.recipeItem .itemContent {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
@media screen and (min-width: 320px) {
  .recipeItem .itemContent {
    width: 68%;
    padding-top: 2rem;
    gap: 1.5rem 0;
  }
}
@media screen and (min-width: 1025px) {
  .recipeItem .itemContent {
    width: 68%;
    padding-top: 4rem;
    gap: 1.5rem 0;
  }
}
.recipeItem .itemThumb {
  overflow: hidden;
  aspect-ratio: 3/2;
}
@media screen and (min-width: 320px) {
  .recipeItem .itemThumb {
    border-radius: 0.4rem 2rem 0.4rem 2rem;
    margin-bottom: 2rem;
  }
}
@media screen and (min-width: 1025px) {
  .recipeItem .itemThumb {
    border-radius: 0.8rem 4rem 0.8rem 4rem;
    margin-bottom: 2rem;
  }
}
.recipeItem .itemLink {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  width: 81%;
  border-radius: 3rem;
  background: white;
  -webkit-box-shadow: 0px 2px 30px 0px rgba(0, 0, 0, 0.08);
          box-shadow: 0px 2px 30px 0px rgba(0, 0, 0, 0.08);
}
@media screen and (min-width: 320px) {
  .recipeItem .itemLink {
    font-size: 1.4rem;
    padding: 0.8rem 2rem;
  }
}
@media screen and (min-width: 1025px) {
  .recipeItem .itemLink {
    font-size: 1.8rem;
    padding: 1.1rem 2rem;
  }
}
.recipeItem .itemIcon {
  height: auto;
}
@media screen and (min-width: 320px) {
  .recipeItem .itemIcon {
    width: 3rem;
  }
}
@media screen and (min-width: 1025px) {
  .recipeItem .itemIcon {
    width: 4rem;
  }
}
@media screen and (min-width: 320px) {
  .recipeItem .itemArrow {
    width: 2rem;
  }
}
@media screen and (min-width: 1025px) {
  .recipeItem .itemArrow {
    width: 2.3rem;
  }
}

.labTopics {
  position: relative;
  overflow: hidden;
}
@media screen and (min-width: 320px) {
  .labTopics {
    margin-top: -18rem;
    padding: 24rem 5vw 10rem;
  }
}
@media screen and (min-width: 1025px) {
  .labTopics {
    margin-top: -32rem;
    padding: 42rem 10vw 128px;
  }
}
.labTopics::before {
  content: "";
  position: absolute;
  top: 0;
  border-radius: 50%;
  background: var(--tertiary-color);
}
@media screen and (min-width: 320px) {
  .labTopics::before {
    width: 300vw;
    height: 300vw;
    left: -100vw;
  }
}
@media screen and (min-width: 1025px) {
  .labTopics::before {
    width: 200vw;
    height: 200vw;
    left: -50vw;
  }
}
.labTopics .sectionInner {
  position: relative;
  z-index: 1;
}/*# sourceMappingURL=lab.css.map */