@charset "UTF-8";

.p-fv {
  margin-top: 80px;
  padding-top: clamp(60px, 10.6149341142vw, 145px);
  position: relative;
}

.p-fv__head {
  margin-left: 20px;
  position: relative;
  z-index: 3;
}
@media screen and (min-width:768px) {
  .p-fv__head {
    margin-left: clamp(20px, 18.3748169839vw, 251px);
    -webkit-writing-mode: vertical-rl;
        -ms-writing-mode: tb-rl;
            writing-mode: vertical-rl;
  }
}

.p-fv__title {
  font-family: "Noto Serif JP", serif;
  font-size: clamp(32px, 5.1244509517vw, 70px);
  line-height: 1.0714285714;
  letter-spacing: 5.6px;
  font-weight: 500;
}
@media screen and (min-width:768px) {
  .p-fv__title {
    letter-spacing: 9.35px;
  }
}
.p-fv__title + .p-fv__title {
  margin-top: 8px;
}
@media screen and (min-width:768px) {
  .p-fv__title + .p-fv__title {
    margin-top: 0;
    margin-right: clamp(24px, 2.9282576867vw, 40px);
  }
}

.p-fv__desc-wrap {
  margin-right: clamp(20px, 3.2210834553vw, 44px);
}

.p-fv__desc {
  margin-top: 16px;
  font-size: 14px;
  line-height: 1.4285714286;
  letter-spacing: 1.12px;
  font-weight: 500;
}
@media screen and (min-width:768px) {
  .p-fv__desc {
    margin-top: 8px;
    letter-spacing: 5.2px;
  }
}
.p-fv__desc + .p-fv__desc {
  margin-top: 8px;
}
@media screen and (min-width:768px) {
  .p-fv__desc + .p-fv__desc {
    margin-right: 12px;
  }
}

.p-fv__swiper {
  margin-top: 20px;
  width: 100vw;
  height: auto;
  max-height: 640px;
  aspect-ratio: 1366/593;
  z-index: 1;
}
@media screen and (min-width:768px) {
  .p-fv__swiper {
    margin-top: clamp(-371px, -27.1595900439vw, -200px);
  }
}

.p-fv__swiper-slide {
  position: relative;
  z-index: 2;
}

.p-fv__bg-l {
  position: absolute;
  top: -60.0292825769vw;
  left: -17.3499267936vw;
  width: clamp(20px, 74.5241581259vw, 1018px);
  aspect-ratio: 2037/2669;
  background: url(../images/logo-top-l.png) center/cover no-repeat;
  pointer-events: none;
}

.p-fv__bg-r {
  position: absolute;
  top: -30.6002928258vw;
  left: 32.0644216691vw;
  width: clamp(20px, 70.4245973646vw, 962px);
  aspect-ratio: 679/662;
  background: url(../images/logo-top-r.png) center/cover no-repeat;
  pointer-events: none;
}

.p-fv__bg-b {
  position: absolute;
  bottom: -31.9180087848vw;
  left: 41.8008784773vw;
  width: clamp(20px, 70.4245973646vw, 962px);
  aspect-ratio: 679/662;
  background: url(../images/logo-top-b.png) center/cover no-repeat;
  pointer-events: none;
}

.p-works {
  position: relative;
  padding-block: 70px 120px;
}
@media screen and (min-width:768px) {
  .p-works {
    padding-block: 140px 264px;
  }
}

.p-works__head {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 40px;
  margin-left: clamp(20px, 6.0029282577vw, 82px);
}
@media screen and (min-width:1024px) {
  .p-works__head {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    gap: clamp(20px, 6.2225475842vw, 85px);
  }
}

.p-works__desc-wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 32px;
}
@media screen and (min-width:768px) {
  .p-works__desc-wrap {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    margin-top: 51px;
    -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1;
    margin-right: clamp(20px, 6.0029282577vw, 82px);
  }
}

.p-works__desc {
  font-size: 14px;
  line-height: 1.5714285714;
  letter-spacing: 1.12px;
  font-weight: 500;
  max-width: 401px;
}

.p-works__swiper-container {
  margin-top: 66px;
  margin-left: clamp(20px, 14.7877013177vw, 202px);
  position: relative;
}

.p-works__swiper-container:has(.swiper-button-prev.swiper-button-disabled):has(.swiper-button-next.swiper-button-disabled) .swiper-bar {
  opacity: 0;
  visibility: hidden;
  -webkit-transition: opacity 0.3s, visibility 0.3s;
  transition: opacity 0.3s, visibility 0.3s;
}

.p-works__swiper-slide {
  width: min(370px, 100%);
}
@media screen and (min-width:768px) {
  .p-works__swiper-slide {
    width: 370px;
  }
}
@media (any-hover: hover) {
  .p-works__swiper-slide:hover .p-works__item-head img {
    scale: 1.1;
    -webkit-transition: all 0.3s ease;
    transition: all 0.3s ease;
  }
}

.p-works__item-head {
  aspect-ratio: 370/366;
  max-width: 370px;
  overflow: hidden;
  border-radius: 10px;
}
.p-works__item-head img {
  border-radius: 10px;
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
}

.p-works__item-body {
  margin-left: 40px;
  margin-top: -48px;
  padding: 20px 21px 23px;
  background: #ffffff;
  position: relative;
}

.p-works__title {
  font-family: "Noto Serif JP", serif;
  color: #24354c;
  font-size: 16px;
  line-height: 1.625;
  letter-spacing: 1.28px;
  font-weight: 600;
  overflow: hidden;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}

.p-works__meta {
  margin-top: 18px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 20px;
}

.p-works__date {
  padding-top: 3px;
  font-size: 14px;
  line-height: 1.4285714286;
  letter-spacing: 0.28px;
}

.p-works__tag span {
  display: inline-block;
  padding: 2px 7px;
  color: #ffffff;
  font-size: 12px;
  line-height: 1.5;
  letter-spacing: 0.96px;
  font-weight: 500;
  text-align: center;
  background: #9dc879;
}

.swiper-button-prev,
.swiper-button-next {
  position: absolute;
  bottom: -113px;
  width: 50px;
  height: 50px;
}

.swiper-button-prev {
  left: 0;
  background: url("../images/swiper-prev.png") center/contain no-repeat;
}
@media screen and (min-width:768px) {
  .swiper-button-prev {
    left: max(60px, 17.7159590044vw);
  }
}

.swiper-button-next {
  right: min(100px, 16vw);
  background: url("../images/swiper-next.png") center/contain no-repeat;
}
@media screen and (min-width:768px) {
  .swiper-button-next {
    right: max(60px, 32.5768667643vw);
  }
}

.swiper-bar {
  position: absolute;
  bottom: -86px;
 left: max(60px, 24.3960468521vw);
  width: min(21.5409956076vw, 294.25px);
  height: 1px;
  background: #A7A7A7;
}

.p-works-bg {
  position: absolute;
  top: max(300px, 34.4070278184vw);
  left: -41.4348462665vw;
  width: clamp(20px, 70.4245973646vw, 962px);
  aspect-ratio: 679/662;
  background: url(../images/logo-top-r.png) center/cover no-repeat;
  pointer-events: none;
      z-index: -1;
}


.p-about__content {
  background: #f9f8f7;
  padding-block: 42px;
  width: 300px;
  margin-left: 20px;
  position: relative;
  z-index: 3;
  overflow: hidden;
}
@media screen and (min-width:768px) {
  .p-about__content {
    width: 453px;
    padding-block: 37px 42px;
    margin-left: clamp(40px, 54.9048316252vw, 320px);
  }
}
@media screen and (min-width:1200px) {
  .p-about__content {
    margin-left: clamp(40px, 54.9048316252vw, 600px);
  }
}
@media screen and (min-width:1367px) {
  .p-about__content {
    margin-left: calc(750px + (100vw - 1366px) / 2);
  }
}

.p-about__title-wrap {
  margin-left: clamp(20px, 8.5vw, 102px);
}

.p-about__body {
  margin-top: 40px;
}
@media screen and (min-width:768px) {
  .p-about__body {
    margin-top: 68px;
  }
}

.p-about__text {
  margin-left: 20px;
  max-width: 260px;
  font-size: 14px;
  line-height: 1.8571428571;
  letter-spacing: 0.7px;
  font-weight: 500;
}
.p-about__text + .p-about__text {
  margin-top: 30px;
}
@media screen and (min-width:768px) {
  .p-about__text {
    margin-left: 102px;
    max-width: 270px;
  }
}


.p-about__btn {
  margin-left: 20px;
  margin-top: 42px;
}
@media screen and (min-width:768px) {
  .p-about__btn {
    margin-left: 102px;
  }
}


.p-about__swiper {
  margin-top: -442px;
}
@media screen and (min-width:768px) {
  .p-about__swiper {
    margin-top: -545px;
  }
}


.p-about__swiper-wrapper {
  -webkit-transition-timing-function: linear;
          transition-timing-function: linear;
}

.p-about__swiper-slide {
  width: 320px;
  aspect-ratio: 400/525;
    position: relative;
  z-index: 2;
}
@media screen and (min-width:768px) {
  .p-about__swiper-slide {
    width: 400px;
  }
}
.p-about__swiper-slide img {
  border-radius: 10px;
}


.p-service {
  position: relative;
  padding-block: 80px 72px;
  padding-inline: 20px 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 40px;
  overflow: hidden;
}
@media screen and (min-width:768px) {
  .p-service {
    padding-block: 180px 150px;
  }
}
@media screen and (min-width:1200px) {
  .p-service {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    gap: clamp(20px, 5.5636896047vw, 76px);
  }
}
@media screen and (min-width: 1367px) {
  .p-service {
    padding-left: calc(20px + (100vw - 1366px) / 2);
    padding-right: calc((100vw - 1366px) / 2);
  }
}

.p-service__head {
  margin-left: clamp(20px, 10vw, 120px);
    position: relative;
  z-index: 2;
}
@media screen and (min-width:768px) {
  .p-service__head {
    margin-right: 20px;
  }
}
@media screen and (min-width:1200px) {
  .p-service__head {
    margin-right: 0;
    margin-left: clamp(20px, 9.0775988287vw, 124px);
  }
}

.p-service__desc-wrap {
  margin-top: clamp(32px, 5.270863836vw, 72px);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 24px;
}
@media screen and (min-width:768px) {
  .p-service__desc-wrap {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
}
@media screen and (min-width:1200px) {
  .p-service__desc-wrap {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: start;
    gap: 60px;
  }
}

.p-servce__desc {
  max-width: 218px;
  font-size: 14px;
  line-height: 1.6428571429;
  letter-spacing: 1.12px;
  font-weight: 500;
}
@media screen and (min-width:768px) {
  .p-servce__desc {
    max-width: 428px;
  }
}
@media screen and (min-width:1200px) {
  .p-servce__desc {
    max-width: 218px;
  }
}

.p-service__body {
  padding-block: 15px;
  padding-inline: 20px;
  background: #ffffff;
  border-radius: 10px 0px 0px 10px;
    position: relative;
  z-index: 2;
}
@media screen and (min-width:768px) {
  .p-service__body {
    padding-inline: 40px;
    -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1;
    max-width: 922px;
    margin-left: auto;
  }
}
@media screen and (min-width:1367px) {
  .p-service__body {
    margin-left: 0;
    border-radius: 10px;
  }
}
@media screen and (min-width:1367px) {
  .p-service__body {
    border-radius: 10px;
  }
}

@media (any-hover: hover) {
  .p-service__body .c-link:hover img {
    scale: 1.1;
    -webkit-transition: all 0.3s ease;
    transition: all 0.3s ease;
  }
}

.p-service__body .c-link:nth-of-type(3n + 2) .p-service__content-num {
  color: #73b690;
}
.p-service__body .c-link:nth-of-type(3n + 2) .p-service__content-title::after {
  background: url(../images/btn-arrow-green.png) center/cover no-repeat;
}
.p-service__body .c-link:nth-of-type(3n) .p-service__content-num {
  color: #abce72;
}
.p-service__body .c-link:nth-of-type(3n) .p-service__content-title::after {
  background: url(../images/btn-arrow-l-green.png) center/cover no-repeat;
}


.p-service__content {
  padding-block: 30px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 20px;
}
@media screen and (min-width:768px) {
  .p-service__content {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    gap: clamp(20px, 3.2210834553vw, 44px);
  }
}
.p-service__content + .p-service__content {
  border-top: 1px solid #a7a7a7;
}

.p-service__text-content {
  max-width: 524px;
}
@media screen and (min-width:1200px) {
  .p-service__text-content {
    max-width: clamp(400px, 38.3601756955vw, 524px);
  }
}

.p-service__content-num {
  margin-top: 17px;
  font-family: "Lato", serif;
  color: #0C8AC7;
  font-size: 14px;
  line-height: 1.2142857143;
  font-weight: 500;
}

.p-service__content-title {
  margin-top: 9px;
    display: inline-block;
  padding-right: 44px;
  font-family: "Noto Serif JP", serif;
  font-size: 22px;
  line-height: 1.4090909091;
  letter-spacing: 1.76px;
  font-weight: 600;
  position: relative;
}
.p-service__content-title::after {
  content: "";
  position: absolute;
  top: 8px;
  right: 0;
  width: 28px;
  height: 18px;
  background: url(../images/btn-arrow-blue.png) center/cover no-repeat;
}

.p-service__content-text {
  margin-top: 22px;
  font-size: 14px;
  line-height: 1.7142857143;
  letter-spacing: 0.7px;
  font-weight: 500;
}

.p-service__img-content {
  width: 280px;
  aspect-ratio: 280/190;
    border-radius: 5px;
  margin-inline: auto;
  overflow: hidden;
}
@media screen and (min-width:768px) {
  .p-service__img-content {
    -webkit-box-flex: 0;
        -ms-flex: none;
            flex: none;
    margin-inline: 0;
  }
}
.p-service__img-content img {
  border-radius: 5px;
    -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
}

.p-service__bg {
  position: absolute;
  top: clamp(180px, 35.4319180088vw, 484px);
  left: max(-41.4348462665vw, -566px);
  width: clamp(20px, 70.4245973646vw, 962px);
  aspect-ratio: 679/662;
  background: url(../images/logo-top-r.png) center/cover no-repeat;
  pointer-events: none;
}

@media screen and (min-width:1367px) {
  .p-service__bg {
    left: calc(-556px + (100vw - 1366px) / 2);
  }
}

.p-wrap {
  background: #454545;
  padding-block: 4px 5px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 4px;
}
@media screen and (min-width:1024px) {
  .p-wrap {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
  }
}

.p-wrap__content {
  padding-block: 60px 80px;
  background: #F9F8F7;
  border-radius: 0px 30px 30px 0px;
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
}
@media screen and (min-width:1367px) {
  .p-wrap__content {
    padding-left: calc((100vw - 1366px) / 4);
  }
}
.p-wrap__content:nth-of-type(1) {
  margin-right: 10px;
}
@media screen and (min-width:1024px) {
  .p-wrap__content:nth-of-type(1) {
    margin-right: 0;
  }
}
.p-wrap__content:nth-of-type(2) {
  border-radius: 30px 0px 0px 30px;
  margin-left: 10px;
}
@media screen and (min-width:1024px) {
  .p-wrap__content:nth-of-type(2) {
    margin-left: 0;
  }
}

.p-recruit {
  overflow-x: hidden;
}
.p-wrap__content-head {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  margin-inline: clamp(60px, 8.1259150805vw, 111px) clamp(10px, 5.0512445095vw, 69px);
}
@media screen and (min-width:768px) {
  .p-wrap__content-head {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    max-width: 500px;
    margin-inline: auto;
  }
}
@media screen and (min-width:1024px) {
  .p-wrap__content-head {
    margin-inline: clamp(60px, 8.1259150805vw, 111px) clamp(10px, 5.0512445095vw, 69px);
  }
}

.p-wrap__content-title {
  margin-top: clamp(32px, 11.23046875vw, 115px);
  font-family: "Noto Serif JP", serif;
  font-size: clamp(18px, 2.1484375vw, 22px);
  line-height: 1.6818181818;
  letter-spacing: 2.2px;
  font-weight: 600;
}
@media screen and (min-width:768px) {
  .p-wrap__content-title {
    font-size: 22px;
  }
}
@media screen and (min-width:1024px) {
  .p-wrap__content-title {
    font-size: clamp(18px, 1.6105417277vw, 22px);
  }
}

.p-wrap__img-content {
  width: 236px;
    height: 100%;
  margin-top: clamp(32px, 4.39238653vw, 60px);
  aspect-ratio: 236/242;
}
@media screen and (min-width:1024px) {
  .p-wrap__img-content {
    width: clamp(100px, 17.2767203514vw, 236px);
  }
}
.p-wrap__img-content img {
  border-radius: 5px;
}

.p-wrap__content-body {
   margin-top: clamp(32px, 5.270863836vw, 72px);
  margin-left: clamp(40px, 8.1259150805vw, 111px);
}
@media screen and (min-width:768px) {
  .p-wrap__content-body {
    max-width: 500px;
    margin-inline: auto;
  }
}
@media screen and (min-width:1024px) {
  .p-wrap__content-body {
    margin-left: clamp(60px, 8.1259150805vw, 111px);
  }
}

.p-wrap__content-text {
  max-width: min(500px, 100vw - 20px);
  margin-right: 20px;
  font-size: 14px;
  line-height: 1.8571428571;
  letter-spacing: 0.7px;
  font-weight: 500;
}
@media screen and (min-width:768px) {
  .p-wrap__content-text {
    max-width: 308px;
    margin-right: 0;
  }
}

.p-wrap__btn {
  margin-top: 32px;
}



.p-news {
  position: relative;
  padding-block: 70px 90px;
  padding-inline: 20px;
  max-width: 1366px;
}
@media screen and (min-width:768px) {
  .p-news {
    padding-block: 140px 180px;
  }
}
@media screen and (min-width:1367px) {
  .p-news {
    margin-inline: auto;
  }
}

.p-news__head {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 40px;
}
@media screen and (min-width:768px) {
  .p-news__head {
    margin-left: clamp(20px, 6.0029282577vw, 82px);
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    gap: clamp(20px, 6.2225475842vw, 85px);
  }
}

.p-news__desc-wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 32px;
}
@media screen and (min-width:768px) {
  .p-news__desc-wrap {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    margin-top: 29px;
    -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1;
  }
}
@media screen and (min-width:1024px) {
  .p-news__desc-wrap {
    margin-right: clamp(20px, 4.5387994143vw, 62px);
  }
}

.p-news__desc {
  font-size: 14px;
  line-height: 1.75;
  letter-spacing: 1.28px;
  font-weight: 500;
}
@media screen and (min-width:768px) {
  .p-news__desc {
    font-size: 16px;
  }
}

.p-news__body {
  margin-top: 60px;
  background: #ffffff;
  padding-inline: 20px;
  border-radius: 10px;
  max-width: 1078px;
  margin-inline: auto;
}
@media screen and (min-width:768px) {
  .p-news__body {
    padding-inline: 43px 44px;
    margin-top: 92px;
  }
}

.p-news__item {
  padding-block: 48px;
  position: relative;
}
.p-news__item::after {
  content: "";
  position: absolute;
  top: 50%;
  translate: 0 -50%;
  right: 0;
  width: 28px;
  height: 18px;
  background: url(../images/btn-arrow-blue.png) center/cover no-repeat;
}
.p-news__item:nth-of-type(n + 2) {
  border-top: 1px solid #a7a7a7;
}

.p-news__meta {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 20px;
}

.p-news__date {
  padding-top: 2px;
  font-size: 14px;
  line-height: 1.4285714286;
  letter-spacing: 0.28px;
}

.p-news__tag span {
  display: inline-block;
  padding: 2px 7px;
  color: #ffffff;
  font-size: 12px;
  line-height: 1.5;
  letter-spacing: 0.96px;
  font-weight: 500;
  text-align: center;
  background: #9DC879;
}

.p-news__title {
  margin-top: 27px;
  margin-right: 38px;
  font-family: "Noto Serif JP", serif;
  color: #555555;
  font-size: 16px;
  line-height: 1.4375;
  letter-spacing: 1.28px;
  font-weight: 600;
  overflow: hidden;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}