@charset "UTF-8";
/* Sass Document */
.p-thisis {
  background: url(../img/company/bg_thisis.jpg) #00b315 no-repeat top center/cover;
  padding-block: 9rem 12.1rem;
  text-align: center;
  color: #fff;
}
@media screen and (max-width: 767.98px) {
  .p-thisis {
    padding-block: 4rem 5rem;
    background-size: 100% auto;
    background-position: top center;
  }
}
.p-thisis .c-ttl {
  color: #fff;
  font-weight: 800;
  font-size: 13rem;
  line-height: 0.83;
}
.p-thisis .c-ttl.u-en {
  text-transform: uppercase;
}
@media screen and (max-width: 767.98px) {
  .p-thisis .c-ttl {
    line-height: 1;
    font-size: 5rem;
  }
}
.p-thisis .c-ttl .u-txtsize--small {
  font-size: 9rem;
}
@media screen and (max-width: 767.98px) {
  .p-thisis .c-ttl .u-txtsize--small {
    font-size: 4rem;
  }
}
.p-thisis .c-catch {
  font-size: 3.6rem;
  line-height: 1.3333333333;
  color: #fff;
  font-weight: 900;
  margin-top: 2.1rem;
}
@media screen and (max-width: 767.98px) {
  .p-thisis .c-catch {
    font-size: 1.9rem;
  }
}
.p-thisis .p-txt-wrapper {
  margin-top: 34.1rem;
}
@media screen and (max-width: 767.98px) {
  .p-thisis .p-txt-wrapper {
    margin-top: 5rem;
  }
}
.p-thisis .p-txt-wrapper p {
  font-size: 2rem;
  font-weight: 700;
  line-height: 1.8;
}
.p-thisis .p-txt-wrapper p .u-shadow {
  text-shadow: 0px 0px 3px rgb(0, 179, 21);
}
@media screen and (max-width: 767.98px) {
  .p-thisis .p-txt-wrapper p {
    font-size: 1.5rem;
  }
}
.p-thisis .p-txt-wrapper p .u-txtbgcolor--black {
  background: linear-gradient(180deg, rgb(29, 29, 29) 0%, rgb(29, 29, 29) 100%);
  padding-inline: 0.3em;
  padding-bottom: 0.2em;
}
.p-thisis .p-txt-wrapper p + p {
  margin-top: 1.8em;
}

.p-case {
  padding-block: 9.4rem;
  background-color: #eaf7da;
}
@media screen and (max-width: 767.98px) {
  .p-case {
    padding-block: 4rem;
  }
}

.p-case__ttl {
  text-align: center;
  font-weight: 900;
  font-size: 6.4rem;
  letter-spacing: 0.02em;
  font-feature-settings: "palt";
}
@media screen and (max-width: 767.98px) {
  .p-case__ttl {
    font-size: 3.4rem;
    line-height: 1.6;
  }
}
.p-case__ttl span {
  position: relative;
  color: #00b315;
}
.p-case__ttl span::before {
  content: "";
  position: absolute;
  width: 1.3rem;
  height: 1.3rem;
  border-radius: 100%;
  background-color: #00b315;
  left: 50%;
  transform: translateX(-50%);
  bottom: calc(100% - 0.4rem);
}
@media screen and (max-width: 767.98px) {
  .p-case__ttl span::before {
    width: 0.7rem;
    height: 0.7rem;
    bottom: calc(100% - 0.7rem);
  }
}

.p-case__item-ttl {
  font-weight: 800;
  font-size: 3.6rem;
  display: flex;
  align-items: center;
  margin-bottom: 4.5rem;
}
@media screen and (max-width: 767.98px) {
  .p-case__item-ttl {
    font-size: 2.2rem;
    margin-bottom: 1.5rem;
  }
}
.p-case__item-ttl::after {
  content: "";
  flex-grow: 1;
  border-top: 0.8em solid #00b315;
  margin-left: 0.5em;
}

.p-case__list {
  background-color: #fff;
  padding: 7rem;
  margin-top: 5.6rem;
}
@media screen and (max-width: 767.98px) {
  .p-case__list {
    margin-top: 2rem;
    padding: 2rem;
  }
}

.p-case__body {
  display: flex;
}
@media screen and (max-width: 767.98px) {
  .p-case__body {
    display: block;
  }
}

.p-case__body-ttl {
  font-size: 4.4rem;
  line-height: 1.3636363636;
  font-weight: 900;
  margin-bottom: 4.1rem;
}
@media screen and (max-width: 767.98px) {
  .p-case__body-ttl {
    font-size: 2.4rem;
    margin-bottom: 1rem;
  }
}

.p-case__item:nth-of-type(odd) .p-case__body {
  -moz-column-gap: 5.1rem;
       column-gap: 5.1rem;
  flex-direction: row-reverse;
}
.p-case__item:nth-of-type(even) .p-case__body-ttl {
  margin-right: -3rem;
}
.p-case__item:nth-of-type(even) .p-case__body {
  -moz-column-gap: 2.9rem;
       column-gap: 2.9rem;
}
.p-case__item + .p-case__item {
  margin-top: 7rem;
}
@media screen and (max-width: 767.98px) {
  .p-case__item + .p-case__item {
    margin-top: 4rem;
  }
}

.p-case__img-wrapper {
  width: 44rem;
  flex-shrink: 0;
}
@media screen and (max-width: 767.98px) {
  .p-case__img-wrapper {
    width: 100%;
    margin-top: 2rem;
  }
  .p-case__img-wrapper img {
    width: 100%;
  }
}

.p-case__txt-wrapper {
  flex-grow: 1;
  padding-top: 2rem;
}
@media screen and (max-width: 767.98px) {
  .p-case__txt-wrapper {
    padding-top: 0;
  }
}

.l-leaders {
  padding-top: 2.3rem;
}
.l-leaders .l-lens {
  position: relative;
  z-index: 2;
  margin-bottom: 6rem;
}
@media screen and (max-width: 767.98px) {
  .l-leaders .l-lens {
    margin-bottom: 2rem;
  }
}
.l-leaders .l-lens__ttl {
  max-width: 116rem;
}
@media screen and (max-width: 767.98px) {
  .l-leaders .l-lens__ttl {
    font-size: 1.9rem;
  }
}
.l-leaders .l-lens__ttl .u-lens__catch {
  left: 6rem;
}
@media screen and (max-width: 767.98px) {
  .l-leaders .l-lens__ttl .u-lens__catch {
    left: 0;
  }
}

.-kono .l-leaders__body .p-photo .c-mark.u-tl {
  left: -4rem;
}
.-kono .l-leaders__img-wrapper .c-tags {
  bottom: -6rem;
}
@media screen and (max-width: 767.98px) {
  .-kono .l-leaders__img-wrapper .c-tags {
    bottom: -1rem;
  }
}

.-tasaku .l-leaders__img-wrapper .c-tags {
  width: 40.5rem;
  bottom: -6rem;
}
@media screen and (max-width: 767.98px) {
  .-tasaku .l-leaders__img-wrapper .c-tags {
    width: 32rem;
    bottom: -1rem;
  }
}
.-tasaku .l-leaders__body .p-photo {
  padding-bottom: 3rem;
}
@media screen and (max-width: 767.98px) {
  .-tasaku .l-leaders__body .p-photo {
    padding-bottom: 0;
  }
}

.-kojima .l-leaders__img-wrapper .c-tags {
  width: 31.5rem;
}
@media screen and (max-width: 767.98px) {
  .-kojima .l-leaders__img-wrapper .c-tags {
    width: 28rem;
    bottom: -1rem;
  }
}
.-kojima .l-leaders__wrapper {
  padding-bottom: 0;
}
@media screen and (max-width: 767.98px) {
  .-kojima .l-leaders__wrapper {
    padding-bottom: 4rem;
  }
}
.-kojima .l-leaders__body .p-photo {
  height: 90%;
}

.-okamoto .l-leaders__wrapper {
  padding-bottom: 1rem;
}
@media screen and (max-width: 767.98px) {
  .-okamoto .l-leaders__wrapper {
    padding-bottom: 4rem;
  }
}
.-okamoto .l-leaders__img-wrapper .c-tags {
  width: 39.4rem;
  bottom: -14.6rem;
}
@media screen and (max-width: 767.98px) {
  .-okamoto .l-leaders__img-wrapper .c-tags {
    width: 32rem;
    bottom: -1rem;
  }
}
.-okamoto .l-leaders__body .p-photo {
  width: 27rem;
  margin-left: 4rem;
  height: 94.6%;
}
@media screen and (max-width: 767.98px) {
  .-okamoto .l-leaders__body .p-photo {
    margin-inline: auto;
    width: 90%;
  }
}

.p-friends,
.p-club {
  background-color: #eaf7da;
}
.p-friends .l-lens,
.p-club .l-lens {
  margin-top: 0;
}
.p-friends .l-lens .l-lens__ttl .u-lens__catch,
.p-club .l-lens .l-lens__ttl .u-lens__catch {
  left: 2rem;
}
@media screen and (max-width: 767.98px) {
  .p-friends .l-lens .l-lens__ttl .u-lens__catch,
.p-club .l-lens .l-lens__ttl .u-lens__catch {
    left: 0;
  }
}
.p-friends .p-img-wrapper,
.p-club .p-img-wrapper {
  margin-bottom: 4rem;
}
@media screen and (max-width: 767.98px) {
  .p-friends .p-img-wrapper,
.p-club .p-img-wrapper {
    margin-bottom: 2rem;
  }
}
.p-friends p,
.p-club p {
  text-align: center;
}
@media screen and (max-width: 767.98px) {
  .p-friends p,
.p-club p {
    text-align: left;
  }
}

.p-friends {
  padding-bottom: 9rem;
}
@media screen and (max-width: 767.98px) {
  .p-friends {
    padding-top: 6rem;
    padding-bottom: 4rem;
  }
}
.p-friends .l-lens__body {
  padding-bottom: 3rem;
}

.p-club {
  padding-top: 8rem;
}
@media screen and (max-width: 767.98px) {
  .p-club {
    padding-top: 5rem;
  }
}

.p-workplace {
  padding-top: 9.7rem;
}
@media screen and (max-width: 767.98px) {
  .p-workplace {
    padding-top: 4rem;
  }
}

.p-workplace__content {
  padding-bottom: 8rem;
}
@media screen and (max-width: 767.98px) {
  .p-workplace__content {
    padding-bottom: 4rem;
  }
}

.p-workplace__ttl {
  background-color: #00b315;
  font-size: 4rem;
  color: #fff;
  font-weight: 900;
  display: flex;
  align-items: center;
  padding: 1.8rem 3rem 2.2rem;
}
@media screen and (max-width: 767.98px) {
  .p-workplace__ttl {
    padding: 0.8rem 1rem 1rem;
    font-size: 2.1rem;
  }
}
.p-workplace__ttl .u-en {
  font-size: 2rem;
  font-weight: 800;
  color: #ffdd00;
  text-transform: uppercase;
  margin-top: 0.4rem;
  margin-left: 2rem;
}
@media screen and (max-width: 767.98px) {
  .p-workplace__ttl .u-en {
    font-size: 1.1rem;
    margin-left: 1rem;
  }
}

.p-workplace__block {
  margin-top: 6.4rem;
}
@media screen and (max-width: 767.98px) {
  .p-workplace__block {
    margin-top: 3rem;
  }
}
.p-workplace__block + .p-workplace__block {
  margin-top: 9rem;
}
@media screen and (max-width: 767.98px) {
  .p-workplace__block + .p-workplace__block {
    margin-top: 4rem;
  }
}

.p-workplace__body {
  margin-top: 4rem;
}
@media screen and (max-width: 767.98px) {
  .p-workplace__body {
    margin-top: 1rem;
  }
}

.p-workplace__list {
  display: grid;
  grid-auto-columns: 1fr;
  grid-auto-rows: 1fr;
  grid-template-columns: repeat(3, 38rem);
  grid-template-rows: auto auto;
  gap: 1.4rem;
}
@media screen and (max-width: 767.98px) {
  .p-workplace__list {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    gap: 1rem 0;
  }
}
@media screen and (max-width: 767.98px) {
  .p-workplace__list li {
    width: calc(50% - 0.5rem);
  }
}
.p-workplace__list li:first-of-type {
  grid-column: 1/3;
  grid-row: 1/3;
}
@media screen and (max-width: 767.98px) {
  .p-workplace__list li:first-of-type {
    width: 100%;
  }
}
.p-workplace__list li:first-of-type .c-img {
  aspect-ratio: 775/565;
}
.p-workplace__list li .c-img {
  aspect-ratio: 380/275;
  overflow: clip;
}
.p-workplace__list li .c-img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.p-about-taketoyo {
  background-color: #eaf7da;
  padding-block: 0.3rem 7rem;
}
@media screen and (max-width: 767.98px) {
  .p-about-taketoyo {
    padding-bottom: 4rem;
  }
}
.p-about-taketoyo .p-media {
  display: flex;
  -moz-column-gap: 6rem;
       column-gap: 6rem;
  max-width: 103rem;
  margin-inline: auto;
  align-items: center;
  margin-top: 1.2rem;
}
@media screen and (max-width: 767.98px) {
  .p-about-taketoyo .p-media {
    display: block;
  }
}
.p-about-taketoyo .p-media:nth-of-type(odd) {
  flex-direction: row-reverse;
}
.p-about-taketoyo .p-media .p-img-wrapper {
  max-width: 48rem;
  flex-shrink: 0;
}
@media screen and (max-width: 767.98px) {
  .p-about-taketoyo .p-media .p-img-wrapper {
    margin-top: 2rem;
  }
}
.p-about-taketoyo .p-media .p-txt-wrapper {
  flex-grow: 1;
}
.p-about-taketoyo .p-media .c-ttl {
  font-weight: 900;
  margin-bottom: 3.9rem;
}
@media screen and (max-width: 767.98px) {
  .p-about-taketoyo .p-media .c-ttl {
    margin-bottom: 2rem;
  }
}
.p-about-taketoyo .p-media .c-ttl span {
  display: block;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
}
.p-about-taketoyo .p-media .c-ttl .u-sub-ttl {
  font-size: 2.8rem;
  margin-bottom: 1.7rem;
}
@media screen and (max-width: 767.98px) {
  .p-about-taketoyo .p-media .c-ttl .u-sub-ttl {
    font-size: 1.5rem;
    margin-bottom: 1rem;
  }
}
.p-about-taketoyo .p-media .c-ttl .u-main-ttl {
  font-size: 5.2rem;
  border-bottom: 6px solid #00b315;
  padding-bottom: 1.3rem;
}
@media screen and (max-width: 767.98px) {
  .p-about-taketoyo .p-media .c-ttl .u-main-ttl {
    font-size: 2.6rem;
    border-width: 4px;
    padding-bottom: 1rem;
  }
}
.p-about-taketoyo .p-media + .p-media {
  margin-top: 5.9rem;
}
@media screen and (max-width: 767.98px) {
  .p-about-taketoyo .p-media + .p-media {
    margin-top: 4rem;
  }
}

.p-benefits {
  background-color: #00b315;
  padding-top: 8.9rem;
  padding-bottom: 9rem;
}
@media screen and (max-width: 767.98px) {
  .p-benefits {
    padding-block: 4rem;
  }
}
.p-benefits .c-heading__txt {
  text-align: center;
  color: #fff;
  font-size: 2rem;
  line-height: 1.6;
  font-weight: 700;
}
@media screen and (max-width: 767.98px) {
  .p-benefits .c-heading__txt {
    font-size: 1.5rem;
  }
}
.p-benefits .l-lens {
  margin-top: 3.8rem;
}
.p-benefits .l-lens .l-lens__ttl .u-lens__catch {
  left: 5rem;
}
@media screen and (max-width: 767.98px) {
  .p-benefits .l-lens .l-lens__ttl .u-lens__catch {
    left: 0;
  }
}

.p-benefits__heading {
  max-width: 136.6rem;
  margin-inline: auto;
  grid-template-rows: auto 14.8rem;
  margin-top: 6rem;
  display: grid;
}
@media screen and (max-width: 767.98px) {
  .p-benefits__heading {
    margin-top: 2rem;
    grid-template-rows: auto auto;
  }
}
.p-benefits__heading .p-img-wrapper {
  max-width: 93.9rem;
  grid-row: 1;
  grid-column: 1;
}
.p-benefits__heading .p-txt-wrapper {
  grid-row: 1/3;
  grid-column: 1;
  position: relative;
  z-index: 1;
  max-width: 83.4rem;
  margin-left: auto;
  color: #fff;
  margin-top: auto;
  margin-right: 4.6rem;
}
@media screen and (max-width: 767.98px) {
  .p-benefits__heading .p-txt-wrapper {
    padding: 18rem 2rem 0;
    margin: 0;
  }
}
.p-benefits__heading .p-txt-wrapper .c-ttl {
  font-size: 9rem;
  font-weight: 900;
  margin-bottom: 5.7rem;
  line-height: 1.1;
}
@media screen and (max-width: 767.98px) {
  .p-benefits__heading .p-txt-wrapper .c-ttl {
    font-size: 4.9rem;
    margin-bottom: 2.3rem;
  }
}
.p-benefits__heading .p-txt-wrapper .c-ttl .u-txtsize--small {
  font-size: 5.6rem;
  font-feature-settings: "palt";
}
@media screen and (max-width: 767.98px) {
  .p-benefits__heading .p-txt-wrapper .c-ttl .u-txtsize--small {
    font-size: 2.7rem;
  }
}
.p-benefits__heading .p-txt-wrapper .c-ttl .u-txtsize--small .u-tin {
  font-weight: 100;
}
.p-benefits__heading .p-txt-wrapper p {
  font-size: 2rem;
  line-height: 2.1;
  font-weight: 700;
}
@media screen and (max-width: 767.98px) {
  .p-benefits__heading .p-txt-wrapper p {
    font-size: 1.6rem;
  }
}

.p-anchor__list {
  max-width: 117rem;
  background-color: #fff;
  margin: 8rem auto 0;
  border-radius: 1rem;
  padding: 4.8rem 6.5rem;
  display: flex;
  flex-wrap: wrap;
  gap: 2.5rem 3.9rem;
}
@media screen and (max-width: 767.98px) {
  .p-anchor__list {
    margin: 2rem;
    justify-content: space-between;
    padding: 1.5rem;
    gap: 1rem 0;
  }
}

.p-anchor__item {
  width: 32rem;
}
@media screen and (max-width: 767.98px) {
  .p-anchor__item {
    width: calc(50% - 0.5rem);
  }
}
.p-anchor__item a {
  background-color: #1d1d1d;
  border-radius: 100vw;
  min-height: 8rem;
  color: #fff;
  font-size: 2rem;
  font-weight: 700;
  display: grid;
  place-content: center;
  width: 100%;
  text-decoration: none;
  transition: 0.3s background-color;
  position: relative;
  padding-inline: 6rem;
}
@media screen and (max-width: 767.98px) {
  .p-anchor__item a {
    min-height: 4.6rem;
    font-size: 1.4rem;
    padding-inline: 3rem;
    text-align: center;
    line-height: 1.2;
  }
}
.p-anchor__item a::before, .p-anchor__item a::after {
  content: "";
  position: absolute;
}
.p-anchor__item a::before {
  width: 2.6rem;
  height: 2.6rem;
  background-color: #fff;
  border-radius: 100%;
  top: 50%;
  right: 2.5rem;
  transform: translateY(-50%);
}
@media screen and (max-width: 767.98px) {
  .p-anchor__item a::before {
    width: 2rem;
    height: 2rem;
    right: 1rem;
  }
}
.p-anchor__item a::after {
  position: absolute;
  width: 1.2rem;
  height: 1.6rem;
  content: "";
  top: 50%;
  transform: translateY(-50%);
  right: 3.2rem;
  background-color: #1d1d1d;
  -webkit-mask-image: url('data:image/svg+xml;utf-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 11.41 14.41"><title>arrow</title><polygon class="cls-1" points="10 7.29 6.71 10.59 6.71 0 4.71 0 4.71 10.59 1.41 7.29 0 8.71 5.71 14.41 11.41 8.71 10 7.29"/></svg>');
          mask-image: url('data:image/svg+xml;utf-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 11.41 14.41"><title>arrow</title><polygon class="cls-1" points="10 7.29 6.71 10.59 6.71 0 4.71 0 4.71 10.59 1.41 7.29 0 8.71 5.71 14.41 11.41 8.71 10 7.29"/></svg>');
  display: block;
  -webkit-mask-size: 100% 100%;
          mask-size: 100% 100%;
}
@media screen and (max-width: 767.98px) {
  .p-anchor__item a::after {
    width: 1rem;
    height: 1.1rem;
    right: 1.5rem;
  }
}
@media (any-hover: hover) {
  .p-anchor__item a:hover {
    background-color: #707070;
  }
}

.p-benefits__block {
  margin-top: 8rem;
}
@media screen and (max-width: 767.98px) {
  .p-benefits__block {
    margin-top: 4rem;
  }
}
.p-benefits__block + .p-benefits__block {
  margin-top: 8.4rem;
}
@media screen and (max-width: 767.98px) {
  .p-benefits__block + .p-benefits__block {
    margin-top: 4rem;
  }
}

.p-benefits__block-ttl {
  text-align: center;
  color: #fff;
  position: relative;
  padding-bottom: 4.1rem;
  margin-bottom: 3rem;
}
@media screen and (max-width: 767.98px) {
  .p-benefits__block-ttl {
    padding-bottom: 2rem;
    margin-bottom: 2rem;
  }
}
.p-benefits__block-ttl::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  width: 6rem;
  height: 0.5rem;
  background-color: #fff;
  margin-inline: auto;
}
@media screen and (max-width: 767.98px) {
  .p-benefits__block-ttl::after {
    height: 3px;
  }
}
.p-benefits__block-ttl span {
  text-align: center;
  display: block;
}
.p-benefits__block-ttl .u-en {
  font-size: 12.8rem;
  font-weight: 800;
  line-height: 0.9;
  text-transform: uppercase;
  letter-spacing: -0.01em;
}
@media screen and (max-width: 767.98px) {
  .p-benefits__block-ttl .u-en {
    font-size: 3.8rem;
  }
}
.p-benefits__block-ttl .u-en.u-small {
  font-size: 10rem;
  margin-bottom: 1.3rem;
}
@media screen and (max-width: 767.98px) {
  .p-benefits__block-ttl .u-en.u-small {
    font-size: 3.8rem;
  }
}
.p-benefits__block-ttl .u-en.u-middle {
  font-size: 12rem;
  margin-bottom: 1.3rem;
}
@media screen and (max-width: 767.98px) {
  .p-benefits__block-ttl .u-en.u-middle {
    font-size: 3.8rem;
  }
}
.p-benefits__block-ttl .u-jp {
  font-size: 3.6rem;
  font-weight: 900;
  margin-top: -0.2rem;
}
@media screen and (max-width: 767.98px) {
  .p-benefits__block-ttl .u-jp {
    font-size: 2rem;
    margin-top: 1rem;
  }
}

.p-bf-cards {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  margin-top: 5rem;
  gap: 1.5rem;
}
@media screen and (max-width: 767.98px) {
  .p-bf-cards {
    margin-top: 2rem;
    gap: 1rem 0;
  }
  .p-bf-cards:not(.l-col--1) {
    justify-content: space-between;
  }
}
.p-bf-cards.l-col--3 {
  -moz-column-gap: 5rem;
       column-gap: 5rem;
}
@media screen and (max-width: 767.98px) {
  .p-bf-cards.l-col--3 {
    -moz-column-gap: 0;
         column-gap: 0;
  }
}

.p-bf-card {
  background-color: #fff;
  width: 28rem;
  min-height: 36rem;
  border: 3px solid #1d1d1d;
  padding: 3rem 2.3rem 2.6rem;
}
@media screen and (max-width: 767.98px) {
  .p-bf-card {
    width: calc(50% - 0.5rem);
    padding: 1rem;
    min-height: inherit;
  }
}
.p-bf-card .c-icn {
  width: 15rem;
  height: 15rem;
  display: block;
  margin: 0 auto 2.4rem;
}
@media screen and (max-width: 767.98px) {
  .p-bf-card .c-icn {
    width: 8rem;
    height: 8rem;
    margin-bottom: 1rem;
  }
}
.p-bf-card .c-ttl {
  font-size: 2.4rem;
  font-weight: 900;
  text-align: center;
  margin-bottom: 2.4rem;
  margin-inline: -1rem;
}
@media screen and (max-width: 767.98px) {
  .p-bf-card .c-ttl {
    font-size: 1.6rem;
    margin-bottom: 1rem;
  }
}
.p-bf-card .c-ttl .u-txtsize--small {
  font-size: 1.6rem;
}
@media screen and (max-width: 767.98px) {
  .p-bf-card .c-ttl .u-txtsize--small {
    font-size: 1rem;
  }
}
.p-bf-card p {
  font-size: 1.6rem;
  line-height: 1.5;
}
@media screen and (max-width: 767.98px) {
  .p-bf-card p {
    font-size: 1.3rem;
  }
}

.p-lifesupport-media {
  display: flex;
  flex-direction: row-reverse;
  align-items: center;
  -moz-column-gap: 5.8rem;
       column-gap: 5.8rem;
}
@media screen and (max-width: 767.98px) {
  .p-lifesupport-media {
    display: block;
  }
}
.p-lifesupport-media.media02 {
  -moz-column-gap: 3.7rem;
       column-gap: 3.7rem;
}
.p-lifesupport-media.media02 .p-img-wrapper {
  max-width: 30.3rem;
}
@media screen and (max-width: 767.98px) {
  .p-lifesupport-media.media02 .p-img-wrapper {
    max-width: inherit;
  }
}
.p-lifesupport-media .p-img-wrapper {
  max-width: 49rem;
  flex-shrink: 0;
}
@media screen and (max-width: 767.98px) {
  .p-lifesupport-media .p-img-wrapper {
    max-width: inherit;
    margin-top: 2rem;
  }
}
.p-lifesupport-media .p-txt-wrapper {
  flex-grow: 1;
}
.p-lifesupport-media .p-txt-wrapper p + p {
  margin-top: 2em;
}

.u-bg--line {
  background: linear-gradient(180deg, rgba(255, 221, 0, 0) 50%, rgb(255, 221, 0) 50%, rgb(255, 221, 0) 100%);
}

.p-event {
  background-color: #eaf7da;
  padding-block: 8.7rem;
}
@media screen and (max-width: 767.98px) {
  .p-event {
    padding-block: 4rem;
  }
}

.p-event__heading {
  display: flex;
  flex-direction: row-reverse;
  max-width: 136.6rem;
  margin: 6.8rem auto 0;
  -moz-column-gap: 7rem;
       column-gap: 7rem;
}
@media screen and (max-width: 767.98px) {
  .p-event__heading {
    display: block;
    padding-inline: 2rem;
    margin-top: 3rem;
  }
}
.p-event__heading .p-img-wrapper {
  width: 62rem;
  flex-shrink: 0;
}
@media screen and (max-width: 767.98px) {
  .p-event__heading .p-img-wrapper {
    width: 100%;
    margin-top: 2rem;
  }
  .p-event__heading .p-img-wrapper img {
    width: 100%;
  }
}
.p-event__heading .p-txt-wrapper {
  padding-top: 6.7rem;
  flex-grow: 1;
}
@media screen and (max-width: 767.98px) {
  .p-event__heading .p-txt-wrapper {
    padding-top: 0;
  }
}
.p-event__heading .p-txt-wrapper .c-ttl {
  font-size: 5.4rem;
  line-height: 1.4814814815;
  font-weight: 900;
  margin-bottom: 4.9rem;
}
@media screen and (max-width: 767.98px) {
  .p-event__heading .p-txt-wrapper .c-ttl {
    font-size: 2.7rem;
    margin-bottom: 2rem;
  }
}
.p-event__heading .p-txt-wrapper p {
  font-size: 2rem;
  line-height: 2.1;
}
@media screen and (max-width: 767.98px) {
  .p-event__heading .p-txt-wrapper p {
    font-size: 1.5rem;
  }
}
.p-event__heading .p-txt-wrapper p + p {
  margin-top: 2.1em;
}

.p-event__block {
  padding: 4.6rem 5rem;
  position: relative;
  min-height: 60rem;
  display: flex;
  flex-direction: column;
  margin-top: 11rem;
  background: linear-gradient(90deg, rgb(0, 179, 21) 0%, rgb(0, 179, 21) 15rem, rgb(255, 255, 255) 15rem, rgb(255, 255, 255) 100%);
}
@media screen and (max-width: 767.98px) {
  .p-event__block {
    margin-top: 3rem;
    background-color: #fff;
    background-image: none;
    padding: 0 0 2rem;
  }
}
.p-event__block + .p-event__block {
  margin-top: 5rem;
}
@media screen and (max-width: 767.98px) {
  .p-event__block + .p-event__block {
    margin-top: 3rem;
  }
}

.p-event__block-content {
  height: 100%;
  display: flex;
  flex-direction: column;
  flex-grow: 1;
}

.p-event__block-ttl {
  position: absolute;
  display: flex;
  align-items: flex-start;
  left: 2.4rem;
  top: 4rem;
}
@media screen and (max-width: 767.98px) {
  .p-event__block-ttl {
    position: static;
    align-items: center;
    background-color: #00b315;
    padding: 0.5rem 1rem;
  }
}
.p-event__block-ttl .u-en {
  text-transform: uppercase;
  writing-mode: vertical-rl;
  font-size: 9.6rem;
  font-weight: 700;
  letter-spacing: 0.02em;
  color: #fff;
}
@media screen and (max-width: 767.98px) {
  .p-event__block-ttl .u-en {
    writing-mode: horizontal-tb;
    font-size: 3.9rem;
  }
}
.p-event__block-ttl .u-jp {
  writing-mode: vertical-rl;
  font-size: 3rem;
  background-color: #1d1d1d;
  font-weight: 900;
  color: #fff;
  padding: 1rem 0.9rem;
  letter-spacing: 0.02em;
  margin-top: 1rem;
  margin-left: 0.7rem;
}
@media screen and (max-width: 767.98px) {
  .p-event__block-ttl .u-jp {
    writing-mode: horizontal-tb;
    display: inline-block;
    font-size: 1.5rem;
    margin: 0;
    margin-left: 1rem;
    padding: 0.5rem 1rem;
  }
}

.p-month__block {
  margin-left: 18rem;
  display: flex;
  margin-bottom: 4rem;
  -moz-column-gap: 1.51rem;
       column-gap: 1.51rem;
  justify-content: space-between;
}
@media screen and (max-width: 767.98px) {
  .p-month__block {
    display: block;
    margin: 0;
    padding: 2rem;
  }
}
.p-month__block > div {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
}
@media screen and (max-width: 767.98px) {
  .p-month__block > div {
    width: 100%;
  }
  .p-month__block > div + div {
    margin-top: 2rem;
  }
}

.-summer .p-month__block {
  justify-content: flex-start;
}

.-autumn .p-month__block {
  margin-right: -1rem;
  -moz-column-gap: 0;
       column-gap: 0;
}
@media screen and (max-width: 767.98px) {
  .-autumn .p-month__block {
    margin-right: 0;
  }
}

.c-month__ttl {
  color: #00b315;
  font-size: 2.4rem;
  font-weight: 900;
  display: flex;
  align-items: center;
}
@media screen and (max-width: 767.98px) {
  .c-month__ttl {
    font-size: 1.9rem;
  }
}
.c-month__ttl::after {
  content: "";
  flex-grow: 1;
  border-top: 1px solid #1d1d1d;
  margin-left: 0.5rem;
  margin-top: 1.2rem;
  max-width: 19rem;
}
@media screen and (max-width: 767.98px) {
  .c-month__ttl::after {
    max-width: inherit;
  }
}
.c-month__ttl .u-en {
  font-size: 4.4rem;
  font-weight: 700;
  position: relative;
  top: 0.05em;
}
@media screen and (max-width: 767.98px) {
  .c-month__ttl .u-en {
    font-size: 2.9rem;
  }
}

.p-envet__list {
  margin: 1.6rem 0 0 0.9rem;
}
@media screen and (max-width: 767.98px) {
  .p-envet__list {
    margin-top: 0.8rem;
  }
}
.p-envet__list li {
  font-weight: 700;
  position: relative;
  font-size: 2rem;
  line-height: 1.6;
  padding-left: 2rem;
}
@media screen and (max-width: 767.98px) {
  .p-envet__list li {
    font-size: 1.5rem;
  }
}
.p-envet__list li::before {
  content: "";
  position: absolute;
  left: 0;
  width: 0.8rem;
  height: 0.8rem;
  background-color: #00b315;
  border-radius: 100%;
  top: 0.6em;
}

.p-event__img-content {
  display: flex;
  -moz-column-gap: 2.5rem;
       column-gap: 2.5rem;
  margin-top: auto;
}
@media screen and (max-width: 767.98px) {
  .p-event__img-content {
    display: block;
    padding-inline: 2rem;
    margin-top: 1rem;
  }
}
@media screen and (max-width: 767.98px) {
  .p-event__img-content li + li {
    margin-top: 1rem;
  }
}
.p-event__img-content li .c-img {
  width: 34rem;
  aspect-ratio: 34/27;
  overflow: clip;
}
@media screen and (max-width: 767.98px) {
  .p-event__img-content li .c-img {
    width: 100%;
  }
}
.p-event__img-content li .c-img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

/* ----------------------------------------------------------------------------------------------------
*	会社概要と事業紹介
* --------------------------------------------------------------------------------------------------*/
.p-wearyuratec {
  padding-top: 13.3rem;
  padding-bottom: 10.8rem;
  max-width: 136.6rem;
  margin-inline: auto;
  position: relative;
}
@media screen and (max-width: 767.98px) {
  .p-wearyuratec {
    padding-block: 4rem;
  }
}
.p-wearyuratec .p-heading__ttl-wrapper {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  margin-inline: auto;
  margin-bottom: 9.5rem;
  position: relative;
  z-index: 3;
  padding-left: 3rem;
}
@media screen and (max-width: 767.98px) {
  .p-wearyuratec .p-heading__ttl-wrapper {
    padding-left: 0;
    width: auto;
    padding-inline: 2rem;
    margin-bottom: 2.5rem;
  }
}
.p-wearyuratec .p-heading__ttl-wrapper .c-catch {
  font-size: 6.4rem;
  font-weight: 900;
  text-align: center;
  line-height: 1.36;
  margin-top: 2.3rem;
}
@media screen and (max-width: 767.98px) {
  .p-wearyuratec .p-heading__ttl-wrapper .c-catch {
    margin-top: 1.7rem;
    font-size: 2.1rem;
  }
}
.p-wearyuratec p {
  text-align: center;
  font-size: 2rem;
  line-height: 2.1;
  font-weight: 700;
  position: relative;
  z-index: 3;
}
@media screen and (max-width: 767.98px) {
  .p-wearyuratec p {
    padding-inline: 1rem;
    font-size: 1.6rem;
    line-height: 2;
    text-shadow: 0px 0px 5px rgb(255, 255, 255), 0px 0px 5px rgb(255, 255, 255), 0px 0px 5px rgb(255, 255, 255), 0px 0px 5px rgb(255, 255, 255), 0px 0px 5px rgb(255, 255, 255);
  }
}
.p-wearyuratec p + p {
  margin-top: 2.2em;
}
@media screen and (max-width: 767.98px) {
  .p-wearyuratec p + p {
    margin-top: 2em;
  }
}
.p-wearyuratec .p-img {
  position: absolute;
}
.p-wearyuratec .img01 {
  width: 41rem;
  top: 6rem;
  right: 0;
}
@media screen and (max-width: 767.98px) {
  .p-wearyuratec .img01 {
    width: 12rem;
    top: 1rem;
  }
}
.p-wearyuratec .img02 {
  width: 34.1rem;
  left: 0;
  top: 46.5rem;
}
@media screen and (max-width: 767.98px) {
  .p-wearyuratec .img02 {
    width: 9.1rem;
    left: 0;
    top: 18.5rem;
  }
}
.p-wearyuratec .img03 {
  width: 28rem;
  right: 0;
  top: 79.5rem;
}
@media screen and (max-width: 767.98px) {
  .p-wearyuratec .img03 {
    width: 12rem;
    right: 0;
    top: 43.5rem;
  }
}
.p-wearyuratec .img04 {
  width: 21rem;
  right: 13.2rem;
  top: 110.5rem;
}
@media screen and (max-width: 767.98px) {
  .p-wearyuratec .img04 {
    right: auto;
    width: 10rem;
    left: 0;
    top: 42.8rem;
  }
}
.p-wearyuratec .img05 {
  width: 31rem;
  left: 0;
  bottom: 0;
}
@media screen and (max-width: 767.98px) {
  .p-wearyuratec .img05 {
    width: 10.4rem;
    left: 0;
    top: 74.6rem;
  }
}

.p-wearyuratec__ttl {
  font-size: 14.4rem;
  font-weight: 800;
  line-height: 0.8;
}
@media screen and (max-width: 767.98px) {
  .p-wearyuratec__ttl {
    font-size: 5.4rem;
  }
}
.p-wearyuratec__ttl .u-en {
  text-transform: uppercase;
}
.p-wearyuratec__ttl .u-txtsize--small {
  font-size: 8rem;
}
@media screen and (max-width: 767.98px) {
  .p-wearyuratec__ttl .u-txtsize--small {
    font-size: 3.8rem;
  }
}

.p-ourbusiness {
  background-color: #00b315;
  padding-block: 8rem 10rem;
}
@media screen and (max-width: 767.98px) {
  .p-ourbusiness {
    padding-block: 4rem;
  }
}

.p-ourbusiness__ttl {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  margin-left: auto;
  margin-bottom: 4rem;
}
.p-ourbusiness__ttl .u-en {
  display: inline-block;
  background-color: #1d1d1d;
  color: #fff;
  font-weight: 800;
  padding: 1rem 1.2rem 0;
}
@media screen and (max-width: 767.98px) {
  .p-ourbusiness__ttl .u-en {
    padding-top: 0.2rem;
    display: inline-flex;
    align-items: center;
  }
}
.p-ourbusiness__ttl .u-vt {
  font-size: 5.4rem;
  writing-mode: vertical-rl;
}
@media screen and (max-width: 767.98px) {
  .p-ourbusiness__ttl .u-vt {
    font-size: 1.9rem;
  }
}
.p-ourbusiness__ttl .u-large {
  font-size: 16rem;
}
@media screen and (max-width: 767.98px) {
  .p-ourbusiness__ttl .u-large {
    font-size: 5.7rem;
  }
}
.p-ourbusiness__ttl .u-jp {
  font-size: 3rem;
  font-weight: 900;
  background-color: #1d1d1d;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  display: block;
  color: #fff;
  margin-left: auto;
  padding: 0.7rem 2rem 1.4rem;
}
@media screen and (max-width: 767.98px) {
  .p-ourbusiness__ttl .u-jp {
    font-size: 1.7rem;
    padding: 0.5rem 1rem;
  }
}

.p-ourbusiness__item-ttl {
  position: relative;
}
.p-ourbusiness__item-ttl .u-jp {
  font-size: 7rem;
  font-weight: 900;
  color: #fff;
  display: block;
  line-height: 1.2;
}
@media screen and (max-width: 767.98px) {
  .p-ourbusiness__item-ttl .u-jp {
    font-size: 3rem;
  }
}
.p-ourbusiness__item-ttl .u-en {
  font-size: 2.4rem;
  font-weight: 800;
  color: #fff;
  display: block;
  text-transform: uppercase;
  margin-top: 0.5rem;
  margin-left: 0.5rem;
}
@media screen and (max-width: 767.98px) {
  .p-ourbusiness__item-ttl .u-en {
    margin-top: 0.6rem;
    font-size: 1.4rem;
  }
}
.p-ourbusiness__item-ttl::after {
  position: absolute;
  top: 37%;
  left: -9.8rem;
  font-size: 40rem;
  font-family: "Poppins", "Noto Sans JP", sans-serif;
  color: rgba(255, 255, 255, 0.2);
  font-weight: 700;
  transform: translateY(-50%);
  line-height: 1;
}
@media screen and (max-width: 767.98px) {
  .p-ourbusiness__item-ttl::after {
    font-size: 17rem;
    left: 0;
  }
}

.p-ourbusiness__item:first-of-type .p-ourbusiness__item-ttl::after {
  content: "01";
}
.p-ourbusiness__item:nth-of-type(2) {
  margin-top: 18rem;
}
@media screen and (max-width: 767.98px) {
  .p-ourbusiness__item:nth-of-type(2) {
    margin-top: 6rem;
  }
}
.p-ourbusiness__item:nth-of-type(2) .p-ourbusiness__item-ttl::after {
  content: "02";
}
.p-ourbusiness__item:nth-of-type(3) {
  margin-top: 11rem;
}
@media screen and (max-width: 767.98px) {
  .p-ourbusiness__item:nth-of-type(3) {
    margin-top: 6rem;
  }
}
.p-ourbusiness__item:nth-of-type(3) .p-ourbusiness__item-ttl::after {
  content: "03";
  top: 20%;
}

.p-ourbusiness__list {
  max-width: 136.6rem;
  margin-inline: auto;
  padding-bottom: 8rem;
}
@media screen and (max-width: 767.98px) {
  .p-ourbusiness__list {
    padding-bottom: 4rem;
  }
}

.p-ourbusiness__block {
  position: relative;
  z-index: 2;
  display: flex;
  -moz-column-gap: 6.5rem;
       column-gap: 6.5rem;
}
@media screen and (max-width: 767.98px) {
  .p-ourbusiness__block {
    padding-inline: 2rem;
  }
}
.p-ourbusiness__block.-rev {
  flex-direction: row-reverse;
}
.p-ourbusiness__block.-rev .p-txt-wrapper {
  margin-right: 9rem;
  margin-left: 0;
}
@media screen and (max-width: 767.98px) {
  .p-ourbusiness__block.-rev .p-txt-wrapper {
    margin-right: 0;
  }
}
@media screen and (max-width: 767.98px) {
  .p-ourbusiness__block {
    display: block;
  }
}
.p-ourbusiness__block .p-img-wrapper {
  width: 66rem;
  flex-shrink: 0;
}
@media screen and (max-width: 767.98px) {
  .p-ourbusiness__block .p-img-wrapper {
    width: auto;
    margin-top: 2rem;
  }
}
.p-ourbusiness__block .p-txt-wrapper {
  color: #fff;
  margin-left: 9rem;
}
@media screen and (max-width: 767.98px) {
  .p-ourbusiness__block .p-txt-wrapper {
    margin-left: 0;
  }
}
.p-ourbusiness__block .p-txt-wrapper p {
  font-size: 1.8rem;
  font-weight: 700;
  line-height: 1.7777777778;
}
@media screen and (max-width: 767.98px) {
  .p-ourbusiness__block .p-txt-wrapper p {
    font-size: 1.6rem;
  }
}
.p-ourbusiness__block .p-txt-wrapper p + p {
  margin-top: 1.8em;
}
.p-ourbusiness__block .c-ttl {
  font-size: 4.8rem;
  line-height: 1.25;
  font-weight: 900;
  margin-bottom: 5.8rem;
}
@media screen and (max-width: 767.98px) {
  .p-ourbusiness__block .c-ttl {
    font-size: 2.5rem;
    margin-bottom: 2rem;
  }
}
.p-ourbusiness__block.block01 {
  margin-top: 5.8rem;
}
@media screen and (max-width: 767.98px) {
  .p-ourbusiness__block.block01 {
    margin-top: 2rem;
  }
}
.p-ourbusiness__block.block01 .p-txt-wrapper {
  padding-top: 6.8rem;
}
@media screen and (max-width: 767.98px) {
  .p-ourbusiness__block.block01 .p-txt-wrapper {
    padding-top: 0;
  }
}
.p-ourbusiness__block.block02 {
  margin-top: 9.8rem;
}
@media screen and (max-width: 767.98px) {
  .p-ourbusiness__block.block02 {
    margin-top: 4rem;
  }
}
.p-ourbusiness__block.block02 .p-txt-wrapper {
  padding-top: 6.1rem;
}
@media screen and (max-width: 767.98px) {
  .p-ourbusiness__block.block02 .p-txt-wrapper {
    padding-top: 0;
  }
}
.p-ourbusiness__block.block03 {
  margin-top: 9.2rem;
  -moz-column-gap: 7.1rem;
       column-gap: 7.1rem;
}
@media screen and (max-width: 767.98px) {
  .p-ourbusiness__block.block03 {
    margin-top: 4rem;
  }
}
.p-ourbusiness__block.block03 .p-img-wrapper {
  width: 57.4rem;
}
@media screen and (max-width: 767.98px) {
  .p-ourbusiness__block.block03 .p-img-wrapper {
    width: auto;
  }
}
.p-ourbusiness__block.block03 .p-txt-wrapper {
  padding-top: 6.9rem;
}
@media screen and (max-width: 767.98px) {
  .p-ourbusiness__block.block03 .p-txt-wrapper {
    padding-top: 0;
  }
}
.p-ourbusiness__block.block04 {
  align-items: center;
}
@media screen and (max-width: 767.98px) {
  .p-ourbusiness__block.block04 {
    margin-top: 3rem;
  }
}
.p-ourbusiness__block.block05 {
  margin-top: 3rem;
  align-items: center;
}

.p-ourbusiness__item .l-lens__ttl .u-jp {
  font-size: 4rem;
}
@media screen and (max-width: 767.98px) {
  .p-ourbusiness__item .l-lens__ttl .u-jp {
    font-size: 2.2rem;
  }
}
.p-ourbusiness__item .l-lens__body {
  padding-top: 9rem;
}
.p-ourbusiness__item .l-lens__body:has(p) {
  padding-bottom: 4rem;
}
@media screen and (max-width: 767.98px) {
  .p-ourbusiness__item .l-lens__body:has(p) {
    padding-bottom: 2rem;
  }
}
@media screen and (max-width: 767.98px) {
  .p-ourbusiness__item .l-lens__body {
    padding-top: 2rem;
  }
}
.p-ourbusiness__item .u-lens__catch {
  left: 5rem;
}
@media screen and (max-width: 767.98px) {
  .p-ourbusiness__item .u-lens__catch {
    left: 0;
  }
}

.p-use__list {
  display: flex;
  flex-wrap: wrap;
  gap: 4rem 3rem;
}
@media screen and (max-width: 767.98px) {
  .p-use__list {
    justify-content: space-between;
    gap: 1rem 0;
  }
}

.p-use__item {
  width: 33rem;
}
@media screen and (max-width: 767.98px) {
  .p-use__item {
    width: calc(50% - 0.5rem);
  }
}
.p-use__item p {
  text-align: center;
  font-weight: 900;
  font-size: 2rem;
  line-height: 1.4;
}
@media screen and (max-width: 767.98px) {
  .p-use__item p {
    font-size: 1.2rem;
  }
}
.p-use__item .p-img-wrapper {
  aspect-ratio: 330/230;
  overflow: clip;
  margin-bottom: 1rem;
}
@media screen and (max-width: 767.98px) {
  .p-use__item .p-img-wrapper {
    margin-bottom: 0.5rem;
  }
}
.p-use__item .p-img-wrapper img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.p-viewmore {
  background-color: #ffdd00;
  position: relative;
  padding-block: 9rem 6rem;
}
@media screen and (max-width: 767.98px) {
  .p-viewmore {
    padding-block: 3rem;
  }
}
.p-viewmore .p-viewmore__ttl {
  position: absolute;
  font-size: 14rem;
  font-family: "Poppins", "Noto Sans JP", sans-serif;
  color: rgba(255, 255, 255, 0.6);
  left: 0;
  right: 0;
  margin-inline: auto;
  top: 4rem;
  font-weight: 800;
  text-align: center;
}
@media screen and (max-width: 767.98px) {
  .p-viewmore .p-viewmore__ttl {
    font-size: 5rem;
    position: static;
  }
}
.p-viewmore .c-heading__txt {
  font-size: 2.8rem;
  font-weight: 700;
  text-align: center;
  position: relative;
  z-index: 2;
}
@media screen and (max-width: 767.98px) {
  .p-viewmore .c-heading__txt {
    font-size: 1.5rem;
  }
}
.p-viewmore .l-category__list {
  margin-top: 4.7rem;
}
@media screen and (max-width: 767.98px) {
  .p-viewmore .l-category__list {
    margin-top: 2rem;
  }
}
.p-viewmore .l-category__item {
  aspect-ratio: inherit;
}
@media screen and (max-width: 767.98px) {
  .p-viewmore .l-link-info {
    bottom: 0;
    left: 0;
  }
}
.p-viewmore .l-link-info .c-txt {
  font-size: 2rem;
}
@media screen and (max-width: 767.98px) {
  .p-viewmore .l-link-info .c-txt {
    font-size: 1.6rem;
  }
}
.p-viewmore .l-link-info .c-ttl {
  padding-block: 0;
  font-size: 5.6rem;
}
@media screen and (max-width: 767.98px) {
  .p-viewmore .l-link-info .c-ttl {
    padding-block: 0.6rem;
    font-size: 2.4rem;
  }
}
.p-viewmore .-jobdesc .l-category__body .c-sub {
  min-width: inherit;
}
.p-viewmore .-jobdesc .l-link-info {
  left: 0;
}

.p-philosophy {
  background-color: #eaf7da;
  padding-top: 12rem;
  padding-bottom: 10.3rem;
}
@media screen and (max-width: 767.98px) {
  .p-philosophy {
    padding-block: 4rem;
  }
}

.p-philosophy__list {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  row-gap: 4.7rem;
  margin-top: 6.7rem;
}
@media screen and (max-width: 767.98px) {
  .p-philosophy__list {
    display: block;
    margin-top: 2rem;
  }
}

.p-philosophy__item {
  position: relative;
  background-color: #fff;
  width: 56rem;
  height: 56rem;
  padding: 6.9rem 2rem 2rem 6.2rem;
  overflow: clip;
}
@media screen and (max-width: 767.98px) {
  .p-philosophy__item {
    width: 100%;
    padding: 2rem;
    height: auto;
  }
  .p-philosophy__item + .p-philosophy__item {
    margin-top: 2rem;
  }
}
.p-philosophy__item p {
  font-size: 4.4rem;
  line-height: 1.3636363636;
  color: #00b315;
  font-weight: 900;
  position: relative;
  z-index: 2;
}
@media screen and (max-width: 767.98px) {
  .p-philosophy__item p {
    font-size: 2rem;
    line-height: 1.5;
  }
}
.p-philosophy__item p.u-txtsize--small {
  font-size: 4rem;
  line-height: 1.5;
}
@media screen and (max-width: 767.98px) {
  .p-philosophy__item p.u-txtsize--small {
    font-size: 2rem;
  }
}
.p-philosophy__item p.u-txtsize--large {
  font-size: 4.8rem;
  line-height: 1.25;
}
@media screen and (max-width: 767.98px) {
  .p-philosophy__item p.u-txtsize--large {
    font-size: 2rem;
    line-height: 1.5;
  }
}
.p-philosophy__item p .u-tin {
  font-weight: 100;
}
.p-philosophy__item:first-of-type::before {
  content: "01";
  right: -1.8rem;
}
@media screen and (max-width: 767.98px) {
  .p-philosophy__item:first-of-type::before {
    right: -1rem;
  }
}
.p-philosophy__item:nth-child(2)::before {
  content: "02";
}
.p-philosophy__item:nth-child(3) {
  padding-left: 4.5rem;
}
.p-philosophy__item:nth-child(3) p {
  font-feature-settings: "palt";
}
@media screen and (max-width: 767.98px) {
  .p-philosophy__item:nth-child(3) {
    padding-left: 2rem;
  }
}
.p-philosophy__item:nth-child(3)::before {
  content: "03";
}
.p-philosophy__item:nth-child(4)::before {
  content: "04";
  right: -3.7rem;
}
@media screen and (max-width: 767.98px) {
  .p-philosophy__item:nth-child(4)::before {
    right: -1rem;
  }
}
.p-philosophy__item::after {
  content: "";
  position: absolute;
  width: 12.1rem;
  height: 2.1rem;
  background: url(../img/company/txt_philosophy.svg) no-repeat center center/100% 100%;
  left: 5.8rem;
  bottom: 5rem;
}
@media screen and (max-width: 767.98px) {
  .p-philosophy__item::after {
    width: 7.3rem;
    height: 1.3rem;
    right: 0;
    left: auto;
    bottom: 11rem;
  }
}
.p-philosophy__item::before {
  position: absolute;
  font-size: 30rem;
  font-weight: 800;
  color: #eaf7da;
  bottom: 0;
  right: -2.5rem;
  font-family: "Poppins", "Noto Sans JP", sans-serif;
  line-height: 0.55;
}
@media screen and (max-width: 767.98px) {
  .p-philosophy__item::before {
    font-size: 10rem;
    right: -1rem;
    line-height: 1;
  }
}

.p-topmessage {
  background-color: #eaf7da;
  padding-top: 12rem;
  padding-bottom: 6rem;
  position: relative;
}
@media screen and (max-width: 767.98px) {
  .p-topmessage {
    padding-block: 4rem 2rem;
  }
}
.p-topmessage::before {
  content: "";
  position: absolute;
  z-index: 1;
  top: 3rem;
  left: calc(50% + 49rem);
  width: 15.5rem;
  height: 98.7rem;
  background: url(../img/company/txt_message.svg) no-repeat top center/100% 100%;
}
@media screen and (max-width: 767.98px) {
  .p-topmessage::before {
    width: 24%;
    aspect-ratio: 15.5/98.7;
    height: auto;
    left: auto;
    right: 0;
    top: 0;
  }
}

.p-topmesage__content {
  margin: 6.7rem auto 0;
  display: flex;
  justify-content: space-between;
}
@media screen and (max-width: 767.98px) {
  .p-topmesage__content {
    margin-top: 2rem;
    display: block;
    position: relative;
    z-index: 2;
  }
}
.p-topmesage__content .p-txt-wrapper {
  padding-top: 3rem;
}
@media screen and (max-width: 767.98px) {
  .p-topmesage__content .p-txt-wrapper {
    padding-top: 0;
  }
}
.p-topmesage__content p {
  font-size: 2rem;
  line-height: 2.1;
  font-weight: 700;
}
@media screen and (max-width: 767.98px) {
  .p-topmesage__content p {
    font-size: 1.6rem;
  }
}
.p-topmesage__content p + p {
  margin-top: 1.2em;
}
.p-topmesage__content .p-img-wrapper {
  width: 46.5rem;
  flex-shrink: 0;
  margin-left: 6rem;
}
@media screen and (max-width: 767.98px) {
  .p-topmesage__content .p-img-wrapper {
    width: 80%;
    margin: 2rem auto 0;
  }
}

.p-vision {
  position: relative;
  display: grid;
}
.p-vision::before {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  height: 30%;
  width: 100%;
  background: linear-gradient(0deg, rgba(234, 247, 218, 0) 0%, rgb(234, 247, 218) 69%);
}
.p-vision .p-img-wrapper,
.p-vision .l-content__inner {
  grid-row: 1;
  grid-column: 1;
}
.p-vision .l-content__inner {
  width: 100%;
  position: relative;
  z-index: 1;
  display: flex;
  flex-direction: column;
  padding-bottom: 2rem;
}
@media screen and (max-width: 767.98px) {
  .p-vision .l-content__inner {
    padding-bottom: 1rem;
  }
}
.p-vision .l-content__inner p {
  width: 78rem;
  margin-top: auto;
}
@media screen and (max-width: 767.98px) {
  .p-vision .l-content__inner p {
    width: 83%;
  }
}
.p-vision .p-vision__ttl {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  margin-left: auto;
}
.p-vision .p-vision__ttl .u-en {
  font-size: 25rem;
  font-weight: 800;
  color: #00b315;
  display: block;
  margin-right: -1rem;
}
@media screen and (max-width: 767.98px) {
  .p-vision .p-vision__ttl .u-en {
    font-size: 7rem;
    margin-right: 0;
  }
}
.p-vision .p-vision__ttl .u-jp {
  display: block;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  font-size: 3rem;
  font-weight: 900;
  position: relative;
  margin-left: auto;
  color: #00b315;
  padding-left: 6rem;
}
@media screen and (max-width: 767.98px) {
  .p-vision .p-vision__ttl .u-jp {
    font-size: 1.6rem;
    padding-left: 2.4rem;
  }
}
.p-vision .p-vision__ttl .u-jp::before {
  width: 5rem;
  height: 5rem;
  left: 0;
  top: 58%;
  transform: translateY(-50%);
  content: "";
  position: absolute;
  background: url(../img/company/mark.svg) no-repeat center center/100% 100%;
}
@media screen and (max-width: 767.98px) {
  .p-vision .p-vision__ttl .u-jp::before {
    width: 2rem;
    height: 2rem;
  }
}

.p-access {
  padding-top: 9.7rem;
  padding-bottom: 8rem;
}
@media screen and (max-width: 767.98px) {
  .p-access {
    padding-block: 4rem;
  }
}

.p-access__content {
  display: flex;
  margin-top: 5.8rem;
}
@media screen and (max-width: 767.98px) {
  .p-access__content {
    margin-top: 2rem;
    display: block;
  }
}

.p-access__map {
  width: 80rem;
  height: 60rem;
  flex-shrink: 0;
}
@media screen and (max-width: 767.98px) {
  .p-access__map {
    width: 100%;
    height: auto;
    aspect-ratio: 8/5;
  }
}
.p-access__map iframe {
  width: 100%;
  height: 100%;
}

.p-access__info {
  padding: 5.6rem 0 2rem 8rem;
  flex-grow: 1;
  display: flex;
  flex-direction: column;
}
@media screen and (max-width: 767.98px) {
  .p-access__info {
    display: block;
    padding: 0;
  }
}
.p-access__info .c-logo {
  display: block;
  width: 22.1rem;
  margin-left: 1.3rem;
}
@media screen and (max-width: 767.98px) {
  .p-access__info .c-logo {
    width: 6.3rem;
    margin-left: 0;
    margin-right: 1.8rem;
  }
}

@media screen and (max-width: 767.98px) {
  .p-access_company {
    margin-top: 1rem;
    display: flex;
    align-items: center;
  }
}

.p-access__add {
  margin-top: 10.1rem;
}
@media screen and (max-width: 767.98px) {
  .p-access__add {
    margin-top: 0;
  }
}

.p-access__list {
  font-size: 1.8rem;
  font-weight: 700;
  margin-top: auto;
}
@media screen and (max-width: 767.98px) {
  .p-access__list {
    font-size: 1.6rem;
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    margin: 2rem auto 0;
  }
}
.p-access__list li {
  position: relative;
  padding-left: 2rem;
}
@media screen and (max-width: 767.98px) {
  .p-access__list li {
    padding-left: 1.5rem;
  }
}
.p-access__list li + li {
  margin-top: 3rem;
}
@media screen and (max-width: 767.98px) {
  .p-access__list li + li {
    margin-top: 1rem;
  }
}
.p-access__list li::before {
  content: "";
  position: absolute;
  left: 0;
  width: 1.2rem;
  height: 1.2rem;
  border-radius: 100%;
  background-color: #00b315;
  top: 0.3em;
}
@media screen and (max-width: 767.98px) {
  .p-access__list li::before {
    width: 0.8rem;
    height: 0.8rem;
    top: 0.35em;
  }
}

.p-overview {
  padding-top: 8.1rem;
  padding-bottom: 9.2rem;
}
@media screen and (max-width: 767.98px) {
  .p-overview {
    padding-block: 4rem;
  }
}

.p-overview__content {
  max-width: 86rem;
  margin: 6.8rem auto 0;
}
@media screen and (max-width: 767.98px) {
  .p-overview__content {
    margin-top: 2rem;
  }
}

.p-overview__list {
  margin-top: 7rem;
}
@media screen and (max-width: 767.98px) {
  .p-overview__list {
    margin-top: 2rem;
  }
}
.p-overview__list > div {
  display: table;
  border-top: 1px solid #d2d2d2;
  width: 100%;
}
.p-overview__list > div:last-of-type {
  border-bottom: 1px solid #d2d2d2;
}
.p-overview__list dt,
.p-overview__list dd {
  padding-block: 2.3rem;
  display: table-cell;
  vertical-align: middle;
}
.p-overview__list dt {
  width: 24.5rem;
  padding-right: 1em;
}
@media screen and (max-width: 767.98px) {
  .p-overview__list dt {
    width: 13rem;
  }
}
.p-overview__list a {
  color: currentColor;
  text-decoration: none;
}
/*# sourceMappingURL=company.css.map */