@charset "UTF-8";
/****************************************************************************
サブ共通
****************************************************************************/
main .head .line_anime {
  position: absolute;
  top: 50%;
  left: 0;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}
main .head .head_inner h2 {
  border-radius: 0 50px 0 0;
}
main .head .head_inner h2 span.large {
  font-size: clamp(40px, 3.125vw, 50px);
}
main .head .head_inner .img {
  height: 25vw;
}
main .head .head_inner .img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
  -o-object-position: center;
  object-position: center;
}
main .f_stroke_main {
  -webkit-text-fill-color: transparent;
  -webkit-text-stroke-width: 0.5px;
  -webkit-text-stroke-color: #208466;
}
main .f_stroke_main02 {
  -webkit-text-fill-color: transparent;
  -webkit-text-stroke-width: 1px;
  -webkit-text-stroke-color: #208466;
}
main .f_stroke {
  -webkit-text-fill-color: transparent;
  -webkit-text-stroke-width: 1px;
  -webkit-text-stroke-color: #BEBEBE;
}
main .section_title span.pl40 {
  border-left: 10px solid #208466;
}
@-webkit-keyframes text_anime {
  0% {
    -webkit-transform-origin: left;
            transform-origin: left;
    -webkit-transform: scaleX(0);
            transform: scaleX(0);
  }
  50% {
    -webkit-transform-origin: left;
            transform-origin: left;
    -webkit-transform: scaleX(1);
            transform: scaleX(1);
  }
  50.001% {
    -webkit-transform-origin: right;
            transform-origin: right;
  }
  100% {
    -webkit-transform-origin: right;
            transform-origin: right;
    -webkit-transform: scaleX(0);
            transform: scaleX(0);
  }
}
@keyframes text_anime {
  0% {
    -webkit-transform-origin: left;
            transform-origin: left;
    -webkit-transform: scaleX(0);
            transform: scaleX(0);
  }
  50% {
    -webkit-transform-origin: left;
            transform-origin: left;
    -webkit-transform: scaleX(1);
            transform: scaleX(1);
  }
  50.001% {
    -webkit-transform-origin: right;
            transform-origin: right;
  }
  100% {
    -webkit-transform-origin: right;
            transform-origin: right;
    -webkit-transform: scaleX(0);
            transform: scaleX(0);
  }
}
@-webkit-keyframes text_anime02 {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@keyframes text_anime02 {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
main .text_anime {
  position: relative;
  overflow: hidden;
}
main .text_anime::after {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  background-color: #208466;
  position: absolute;
  top: 0;
  left: 0;
  -webkit-transform-origin: left;
          transform-origin: left;
  -webkit-transform: scaleX(0);
          transform: scaleX(0);
}
main .text_anime span.bg_main {
  opacity: 0;
}
main .text_anime.scrollin span.bg_main {
  -webkit-animation: text_anime02 0.5s 0.4s forwards;
          animation: text_anime02 0.5s 0.4s forwards;
}
main .text_anime.scrollin::after {
  -webkit-animation: text_anime 1s forwards;
          animation: text_anime 1s forwards;
}

/****************************************************************************
仕事を知る
****************************************************************************/
main .work01 {
  background-color: rgba(121, 192, 110, 0.1);
}
main .work01 p.position-absolute.f_92 {
  -webkit-writing-mode: vertical-lr;
      -ms-writing-mode: tb-lr;
          writing-mode: vertical-lr;
  top: 50px;
  left: 50px;
  -webkit-transform: rotate(180deg);
          transform: rotate(180deg);
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
main .work01 p.position-absolute.f_92.is_fixed {
  position: fixed !important;
  top: 120px;
}
main .work01 p.position-absolute.f_92.active {
  position: absolute !important;
  top: unset;
  bottom: 50px;
}
main .work01 .symbol {
  opacity: 0.5;
  margin-top: -170px;
}
main .work01 .symbol img {
  width: 110px;
}
main .work01 .work01_inner .work01_row .work01_row_item {
  width: 48%;
  margin-bottom: 80px;
}
main .work01 .work01_inner .work01_row .work01_row_item .img {
  overflow: hidden;
  width: 100%;
  z-index: 1;
  height: 50%;
}
main .work01 .work01_inner .work01_row .work01_row_item .img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
  -o-object-position: center;
  object-position: center;
}
main .work01 .work01_inner .work01_row .work01_row_item .text_wrap {
  width: 100%;
  height: 50%;
}
main .work01 .work01_inner .work01_row .work01_row_item .text_wrap p.position-absolute {
  left: 80px;
  z-index: 1;
  top: -65px;
}
main .work01 .work01_inner .work01_row .work01_row_item .text_wrap h4 {
  border-left: 6px solid #208466;
}
main .work01 .work01_inner .work01_row .work01_row_item .text_wrap h4 .material-symbols-outlined {
  width: 3.64vw;
  height: 3.64vw;
  max-width: 70px;
  max-height: 70px;
  border-radius: 100%;
  border: 2px solid #208466;
  font-size: clamp(20px, 2vw, 40px);
  -ms-flex-negative: 0;
      flex-shrink: 0;
}
main .work01 .work01_inner .work01_row .work01_row_item:hover .img img {
  -webkit-transform: scale(1.1);
          transform: scale(1.1);
}
main .work01 .work01_inner .work01_row .work01_row_item:hover .text_wrap h4 .material-symbols-outlined {
  background-color: #208466;
  color: #FFFFFF;
}

/****************************************************************************
不動産営業
****************************************************************************/
main .sales01::after {
  content: "";
  display: block;
  width: 100%;
  height: 85%;
  background-color: #FFFFFF;
  position: absolute;
  top: 50%;
  left: 0;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  z-index: -1;
}
main .sales01_inner .title_wrap .img {
  border-radius: 10px 0 0 10px;
  overflow: hidden;
  width: 70%;
}
main .sales01_inner .sales01_row .sales01_row_item.sales01_row_left {
  width: 50%;
}
main .sales01_inner .sales01_row .sales01_row_item.sales01_row_right {
  width: 40%;
}
main .sales01_inner .sales01_item h3 span:first-of-type {
  border-right: 1px solid #FFFFFF;
}
/****************************************************************************
各種サービス
***************************************************************************/
main .service01::after {
  content: "";
  display: block;
  width: 83.3333333333%;
  background-color: #FFFFFF;
  height: 100%;
  position: absolute;
  left: 0;
  top: 0;
  z-index: -1;
  border-radius: 0 50px 50px 0;
}
main .service01.reverse:after {
  left: auto;
  right: 0;
  border-radius: 50px 0 0 50px;
}
main .service01 .service01_inner .service01_row .service01_row_item.service01_row_left {
  width: 50%;
}
main .service01 .service01_inner .service01_row .service01_row_item.service01_row_left h3 {
  border-left: 10px solid #208466;
}
main .service01 .service01_inner .service01_row .service01_row_item.service01_row_left ul li {
  margin-right: 30px;
}
main .service01 .service01_inner .service01_row .service01_row_item.service01_row_left ul li::before {
  content: "";
  background-color: #208466;
  width: 20px;
  height: 20px;
  border-radius: 100%;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  margin-right: 10px;
}
main .service01 .service01_inner .service01_row .service01_row_item.service01_row_left ul li:last-child {
  margin-right: 0;
}
main .service01 .service01_inner .service01_row .service01_row_item.service01_row_right {
  width: 40%;
}

/****************************************************************************
組織と風土
***************************************************************************/
@-webkit-keyframes bounce {
  0%, 100% {
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
  20% {
    -webkit-transform: translateY(-25px);
            transform: translateY(-25px);
  }
  40% {
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
  60% {
    -webkit-transform: translateY(-10px);
            transform: translateY(-10px);
  }
  80% {
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
}
@keyframes bounce {
  0%, 100% {
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
  20% {
    -webkit-transform: translateY(-25px);
            transform: translateY(-25px);
  }
  40% {
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
  60% {
    -webkit-transform: translateY(-10px);
            transform: translateY(-10px);
  }
  80% {
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
}
main .culture01 {
  background-color: rgba(197, 229, 200, 0.11);
}
main .culture01 .culture01_inner h3 {
  -webkit-transform: translateY(-60px);
          transform: translateY(-60px);
  position: relative;
}
main .culture01 .culture01_inner h3 span.img {
  width: 100px;
}
main .culture01 .culture01_inner h3 span.img.scrollin {
  -webkit-animation: bounce 1s forwards;
          animation: bounce 1s forwards;
}
main .culture01 .culture01_inner h3::after {
  content: "";
  display: block;
  width: 100%;
  height: 30px;
  background-image: url(../img/culture/line.svg);
  background-size: auto;
  background-position: center center;
  background-repeat: no-repeat;
  position: absolute;
  top: 84%;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  z-index: -1;
}
main .culture01 .culture01_inner .culture01_row {
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: start;
}
main .culture01 .culture01_inner .culture01_row .culture01_row_item {
  position: relative;
  width: 48%;
  z-index: 2;
}
main .culture01 .culture01_inner .culture01_row .culture01_row_item:nth-child(even) {
  margin-top: 150px;
}
main .culture01 .culture01_inner .culture01_row .culture01_row_item::before, main .culture01 .culture01_inner .culture01_row .culture01_row_item::after {
  content: "";
  display: block;
  position: absolute;
  z-index: -1;
  width: 13vw;
  max-width: 260px;
  min-width: 180px;
  height: 13vw;
  max-height: 260px;
  min-height: 180px;
  background-size: contain;
  background-position: center center;
  background-repeat: no-repeat;
}
main .culture01 .culture01_inner .culture01_row .culture01_row_item:first-child::after {
  background-image: url(../img/culture/deco01.png);
  top: -2vw;
  left: -6vw;
}
main .culture01 .culture01_inner .culture01_row .culture01_row_item:nth-child(2)::before {
  background-image: url(../img/culture/deco02.png);
  top: 0;
  right: -6vw;
}
main .culture01 .culture01_inner .culture01_row .culture01_row_item:nth-child(3)::before, main .culture01 .culture01_inner .culture01_row .culture01_row_item:nth-child(3)::after {
  background-image: url(../img/culture/deco01.png);
}
main .culture01 .culture01_inner .culture01_row .culture01_row_item:nth-child(3)::before {
  top: 0;
  right: -6vw;
}
main .culture01 .culture01_inner .culture01_row .culture01_row_item:nth-child(3)::after {
  top: 90%;
  left: -6vw;
}
main .culture01 .culture01_inner .culture01_row .culture01_row_item:nth-child(4)::after {
  background-image: url(../img/culture/deco02.png);
  top: 80%;
  right: -6vw;
}
main .culture01 .culture01_inner .culture01_row .culture01_row_item:nth-child(5)::before {
  background-image: url(../img/culture/deco01.png);
  top: 90%;
  right: -4vw;
}
main .culture01 .culture01_inner .culture01_row .culture01_row_item:nth-child(7)::before {
  background-image: url(../img/culture/deco01.png);
  top: 80%;
  left: -6vw;
}
main .culture01 .culture01_inner .culture01_row .culture01_row_item:nth-child(8)::before {
  background-image: url(../img/culture/deco02.png);
  top: 80%;
  right: -4vw;
}
main .culture01 .culture01_inner .culture01_row .culture01_row_item:nth-child(9)::before {
  background-image: url(../img/culture/deco01.png);
  top: 80%;
  right: -4vw;
}
main .culture01 .culture01_inner .culture01_row .culture01_row_item p.f_stroke_main02 span {
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-weight: 900;
  font-style: normal;
}
main .culture01 .culture01_inner .culture01_row .culture01_row_item p.f_stroke_main02.scrollin {
  -webkit-animation: bounce 1s forwards;
          animation: bounce 1s forwards;
}
main .culture01 .culture01_inner .culture01_row .culture01_row_item h4 {
  position: relative;
  border-radius: 100px !important;
  z-index: 10;
}
main .culture01 .culture01_inner .culture01_row .culture01_row_item h4::after {
  content: "";
  width: 35px;
  height: 35px;
  border-radius: 100%;
  background-color: #208466;
  position: absolute;
  left: 50%;
  bottom: -10.5px;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  z-index: -1;
}
main .culture01 .culture01_inner .culture01_row .culture01_row_item .bg_white {
  border: 2px solid #208466;
  margin-top: -45px;
}

/****************************************************************************
アイシーな人
***************************************************************************/
main .person01 .person01_inner .person01_row a {
  border-radius: 20px !important;
  padding: 20px 55px 20px 15px;
  width: 40%;
}
main .person01 .person01_inner .person01_row a span.material-symbols-outlined {
  right: 10px;
}
main .person01 .person01_inner .person01_row a .img {
  width: 100px;
}
@-webkit-keyframes circle {
  0% {
    -webkit-transform: rotate(0deg);
            transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(360deg);
            transform: rotate(360deg);
  }
}
@keyframes circle {
  0% {
    -webkit-transform: rotate(0deg);
            transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(360deg);
            transform: rotate(360deg);
  }
}
main .person02 .person02_inner .person02_content_wrap .number {
  width: 230px;
  height: 230px;
  top: -5px;
  left: calc(100% - 150px);
  background-color: rgba(255, 255, 255, 0.4);
  -webkit-backdrop-filter: blur(15px);
          backdrop-filter: blur(15px);
  z-index: 1;
  border-radius: 100%;
  padding: 3px;
}
main .person02 .person02_inner .person02_content_wrap .number img {
  top: 3px;
  left: 3px;
  -webkit-animation: circle 60s infinite linear;
          animation: circle 60s infinite linear;
}
main .person02 .person02_inner .person02_content_wrap .number .text_wrap p .f_34 {
  position: relative;
}
main .person02 .person02_inner .person02_content_wrap .number .text_wrap p .f_34::after {
  content: "";
  display: block;
  width: 1px;
  height: 70px;
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
  position: absolute;
  background-color: #208466;
  top: 30%;
  right: -55%;
  z-index: 1;
}
main .person02 .person02_inner .person02_content_wrap .person02_content_wrap_inner {
  border: 2px solid #C5E5C8;
  position: relative;
}
main .person02 .person02_inner .person02_content_wrap .person02_content_wrap_inner::before {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  background-color: rgba(255, 255, 255, 0.4);
  -webkit-backdrop-filter: blur(15px);
          backdrop-filter: blur(15px);
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
}
main .person02 .person02_inner .person02_content_wrap .person02_content_wrap_inner .person02_row .person02_row_item.person02_row_left {
  width: 40%;
}
main .person02 .person02_inner .person02_content_wrap .person02_content_wrap_inner .person02_row .person02_row_item.person02_row_left p.pl30 {
  border-left: 1px solid #208466;
}
main .person02 .person02_inner .person02_content_wrap .person02_content_wrap_inner .person02_row .person02_row_item.person02_row_right {
  width: 58%;
}
main .person02 .person02_inner .person02_content_wrap .person02_content_wrap_inner .person02_row .person02_row_item.person02_row_right img {
  border-radius: 30px 0 0 30px;
}
main .person02 .person02_inner .person02_content_wrap .person02_content_wrap_inner .person02_row02 .person02_row02_item.person02_row02_left {
  width: 60%;
}
main .person02 .person02_inner .person02_content_wrap .person02_content_wrap_inner .person02_row02 .person02_row02_item.person02_row02_left .box .img {
  width: 130px;
  -ms-flex-negative: 0;
      flex-shrink: 0;
}
main .person02 .person02_inner .person02_content_wrap .person02_content_wrap_inner .person02_row02 .person02_row02_item.person02_row02_left .box .text_wrap::before {
  content: "";
  position: absolute;
  top: 20px;
  margin-top: -10px;
  border: 15px solid transparent;
}
main .person02 .person02_inner .person02_content_wrap .person02_content_wrap_inner .person02_row02 .person02_row02_item.person02_row02_left .box.box01 .text_wrap::before {
  left: -28px;
  border-right: 15px solid #ffffff;
}
main .person02 .person02_inner .person02_content_wrap .person02_content_wrap_inner .person02_row02 .person02_row02_item.person02_row02_left .box.box02 .text_wrap::before {
  right: -28px;
  border-left: 15px solid #ffffff;
}
main .person02 .person02_inner .person02_content_wrap .person02_content_wrap_inner .person02_row02 .person02_row02_item.person02_row02_right {
  width: 21vw;
  position: absolute;
  right: 0%;
  top: 0;
}
main .person02 .person02_inner .person02_content_wrap .person02_content_wrap_inner .person02_row02 .person02_row02_item.person02_row02_right.is_fixed {
  position: fixed;
  top: 110px;
  right: 15.3%;
}
main .person02 .person02_inner .person02_content_wrap .person02_content_wrap_inner .person02_row02 .person02_row02_item.person02_row02_right.active {
  position: unset !important;
}

/****************************************************************************
募集要項
***************************************************************************/
main .requirement01 {
  background-color: rgba(197, 229, 200, 0.11);
}
main .requirement01 .requirement01_inner .requirement01_item {
  border: 2px solid #C5E5C8;
}
main .requirement01 .requirement01_inner .requirement01_item table {
  width: 100%;
}
main .requirement01 .requirement01_inner .requirement01_item table tr th, main .requirement01 .requirement01_inner .requirement01_item table tr td {
  padding-top: 20px;
  padding-bottom: 20px;
  border-bottom: 1px solid #C5E5C8;
}
main .requirement01 .requirement01_inner .requirement01_item table tr th {
  width: 160px;
  padding-left: 10px;
}
main .requirement01 .requirement01_inner .requirement01_item table tr td {
  width: calc(100% - 160px);
  padding-left: 20px;
}