.mv_heading .en, .mv_scroll, .mission_grid_item_tag {
  font-family: "Raleway", sans-serif;
}

.recruitment .title .en {
  font-family: "Outfit", sans-serif;
}

.mv_scroll {
  font-size: 1.2rem;
}
@media only screen and (min-width: 768px) {
  .mv_scroll {
    font-size: 1.4rem;
  }
}

.mission_grid_item_txt {
  font-size: 1.5rem;
}
@media only screen and (min-width: 768px) {
  .mission_grid_item_txt {
    font-size: 1.8rem;
  }
}

.recruitment_more .btn, .mission_grid_item_subt, .intro_txt, .cdl_txt {
  font-size: 1.6rem;
}
@media only screen and (min-width: 768px) {
  .recruitment_more .btn, .mission_grid_item_subt, .intro_txt, .cdl_txt {
    font-size: clamp(
        1.6rem,
        calc(1.6rem + 0.0048076923 * (100vw - 768px)),
        2rem
    );
  }
}

.mission_grid_item_tag {
  font-size: 1.8rem;
}
@media only screen and (min-width: 768px) {
  .mission_grid_item_tag {
    font-size: clamp(
        1.8rem,
        calc(1.8rem + 0.0048076923 * (100vw - 768px)),
        2.2rem
    );
  }
}

.mv_heading .en, .mission_grid_item_title, .mission_grid_item_leading {
  font-size: 1.8rem;
}
@media only screen and (min-width: 768px) {
  .mv_heading .en, .mission_grid_item_title, .mission_grid_item_leading {
    font-size: clamp(
        2rem,
        calc(2rem + 0.0048076923 * (100vw - 768px)),
        2.4rem
    );
  }
}

.business {
  background-color: #f3f8d6;
  padding-top: 60px;
  padding-bottom: 60px;
}
@media only screen and (min-width: 768px) {
  .business {
    padding-top: 141px;
    padding-bottom: 130px;
  }
}
.business_gallery {
  display: flex;
  margin-top: 40px;
}
@media only screen and (min-width: 768px) {
  .business_gallery {
    margin-top: 59px;
  }
}
.business_gallery_photo {
  width: 100%;
}
.business_gallery_photo img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.business_content {
  max-width: 760px;
  margin-top: 24px;
  margin-left: auto;
  margin-right: auto;
}
@media only screen and (min-width: 768px) {
  .business_content {
    margin-top: 51px;
    padding-left: 2px;
  }
}
.business_txt {
  font-size: 1.6rem;
  font-weight: 700;
  line-height: 2.25;
  letter-spacing: 0.01em;
}
@media only screen and (min-width: 768px) {
  .business_txt {
    font-size: clamp(
        1.6rem,
        calc(1.6rem + 0.0048076923 * (100vw - 768px)),
        2rem
    );
  }
}
.business_more {
  display: flex;
  justify-content: center;
  margin-top: 24px;
}
@media only screen and (min-width: 768px) {
  .business_more {
    margin-top: 54px;
  }
}

.cdl {
  margin-top: 24px;
  padding-bottom: 73px;
}
@media only screen and (min-width: 768px) {
  .cdl {
    margin-top: 72px;
    padding-bottom: 150px;
  }
}
.cdl_header {
  position: relative;
}
.cdl_header_line {
  width: 161.5384615385vw;
  position: absolute;
  z-index: -1;
  right: 0;
  top: 17%;
  translate: 0 -50%;
}
@media only screen and (min-width: 768px) {
  .cdl_header_line {
    width: 100%;
    top: 17%;
  }
}
.cdl_header_line svg {
  width: 100%;
}
.cdl_header_flex {
  display: flex;
  justify-content: center;
}
.cdl_header_title {
  display: inline-flex;
  gap: 15px;
  align-items: center;
  flex-direction: column;
  position: relative;
}
@media only screen and (min-width: 768px) {
  .cdl_header_title {
    gap: 31px;
  }
}
.cdl_header_title::after {
  content: "";
  width: calc(100% + 30px);
  height: 100%;
  background-color: #fefff8;
  position: absolute;
  z-index: -1;
  top: 50%;
  left: 48%;
  translate: -50% -80%;
  transform: skew(36deg);
}
@media only screen and (min-width: 768px) {
  .cdl_header_title::after {
    width: calc(100% + 158px);
    max-width: 80vw;
  }
}
.cdl_header_title .jp {
  width: 209.8px;
}
@media only screen and (min-width: 768px) {
  .cdl_header_title .jp {
    width: 534.99px;
  }
}
.cdl_header_title .en {
  width: 177.44px;
}
@media only screen and (min-width: 768px) {
  .cdl_header_title .en {
    width: 260.11px;
  }
}
.cdl_txt {
  font-weight: 700;
  line-height: 2.25;
  letter-spacing: 0.01em;
  text-align: center;
  margin-top: 32px;
}
@media only screen and (min-width: 768px) {
  .cdl_txt {
    margin-top: 62px;
  }
}
.cdl_more {
  display: flex;
  justify-content: center;
  margin-top: 33px;
}
@media only screen and (min-width: 768px) {
  .cdl_more {
    margin-top: 80px;
  }
}
.cdl .shape_01 {
  stroke-dasharray: 1560;
  stroke-dashoffset: 1560;
}
.cdl .shape_02 {
  stroke-dasharray: 1560;
  stroke-dashoffset: 1560;
}
.cdl .is_show .shape_01 {
  stroke-dashoffset: 0;
  transition: 0.6s ease-in-out;
}
.cdl .is_show .shape_02 {
  stroke-dashoffset: 0;
  transition: 0.6s ease-in-out 0.6s;
}

@keyframes kf_cdl_shape {
  from {
    stroke-dashoffset: 1560;
  }
  to {
    stroke-dashoffset: 0;
  }
}
.intro {
  padding-top: 30px;
  padding-bottom: 30px;
}
@media only screen and (min-width: 768px) {
  .intro {
    padding-top: 160px;
    padding-bottom: 160px;
  }
}
.intro_grid {
  display: flex;
  gap: 33px;
  flex-direction: column;
}
@media only screen and (min-width: 768px) {
  .intro_grid {
    gap: 40px;
    flex-direction: row;
  }
}
@media only screen and (min-width: 768px) {
  .intro_grid_header {
    width: calc(50% - 40px);
  }
}
@media only screen and (min-width: 768px) {
  .intro_grid_header .title_block {
    width: 460px;
    max-width: 100%;
  }
}
@media only screen and (min-width: 768px) {
  .intro_grid_body {
    width: 525px;
    max-width: 50%;
  }
}
.intro_txt {
  font-weight: 700;
  line-height: 2.25;
  letter-spacing: 0.01em;
}
@media only screen and (min-width: 768px) {
  .intro_txt {
    max-width: 530px;
  }
}
.intro_txt:not(:first-child) {
  margin-top: 36px;
}
@media only screen and (min-width: 768px) {
  .intro_txt:not(:first-child) {
    margin-top: 45px;
  }
}

.mission_inner {
  position: relative;
}
@media only screen and (min-width: 1200px) {
  .mission_inner.is_fixed .mission_fixed {
    position: fixed;
    top: 0;
  }
}
@media only screen and (min-width: 1200px) {
  .mission_inner.is_bottom .mission_fixed {
    top: unset;
    bottom: 0;
  }
}
.mission_fixed {
  background-image: linear-gradient(30deg, #0b8b49 30%, #78bc3c 70%, #aed536 100%);
  color: #fff;
  padding-top: 71px;
  padding-bottom: 70px;
}
@media only screen and (min-width: 1200px) {
  .mission_fixed {
    width: 100%;
    min-height: 100vh;
    position: absolute;
    left: 0;
    padding-top: 150px;
    padding-bottom: 150px;
  }
}
.mission_grid {
  display: flex;
  flex-direction: column;
}
@media only screen and (min-width: 1200px) {
  .mission_grid {
    width: calc(100vw - (100vw - 1160px) * 0.5);
    max-width: 100%;
    align-items: center;
    flex-direction: row;
  }
}
.mission_grid_fake {
  display: none;
}
@media only screen and (min-width: 1200px) {
  .mission_grid_fake {
    display: block;
    padding-top: 50vh;
  }
}
.mission_grid_fake_block {
  height: 75vh;
}
.mission_grid_photo {
  width: 304px;
  aspect-ratio: 0.9838132476;
  pointer-events: none;
  position: relative;
  top: -1px;
  left: -23px;
  margin-left: auto;
  margin-right: auto;
}
@media only screen and (min-width: 1200px) {
  .mission_grid_photo {
    width: 593px;
    width: 42.9710144928%;
    top: 33px;
    left: 52px;
    margin-left: 0;
    margin-right: 0;
  }
}
.mission_grid_tag {
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 14px;
  margin-top: 73px;
}
@media only screen and (min-width: 768px) {
  .mission_grid_tag {
    margin-top: 50px;
  }
}
@media only screen and (min-width: 1200px) {
  .mission_grid_tag {
    width: 210px;
    gap: 7px;
    flex-direction: column;
    flex-shrink: 0;
    position: relative;
    top: 32px;
    left: 5px;
    margin-top: 0;
  }
}
.mission_grid_content {
  padding-left: 20px;
  padding-right: 20px;
}
@media only screen and (min-width: 1200px) {
  .mission_grid_content {
    width: 581px;
    width: 42.1014492754%;
    padding-top: 70px;
    padding-left: 0;
    padding-right: 0;
  }
}
.mission_grid_more {
  max-width: 100%;
  display: flex;
  justify-content: center;
}
@media only screen and (min-width: 1200px) {
  .mission_grid_more {
    width: 578px;
    width: 41.884057971%;
    display: block;
    margin-left: auto;
  }
}
.mission_grid_more_wrap {
  margin-top: 16px;
  padding-top: 20px;
}
@media only screen and (min-width: 768px) {
  .mission_grid_more_wrap {
    margin-top: 82px;
  }
}
@media only screen and (min-width: 1200px) {
  .mission_grid_more_wrap {
    width: calc(100vw - (100vw - 1160px) * 0.5);
  }
}
.mission_grid_more .btn {
  max-width: calc(100% - 40px);
}
@media only screen and (min-width: 768px) {
  .mission_grid_more .btn {
    --btn-w: 442px;
  }
}
.mission_grid_item_photo_area {
  inset: 0;
  position: absolute;
}
.mission_grid_item_photo {
  width: 100%;
  position: absolute;
  inset: 0;
  opacity: 0;
  transition: 500ms linear;
}
.mission_grid_item_photo.is_active {
  opacity: 1;
}
.mission_grid_item_photo_mask {
  width: 316.7796610169%;
  aspect-ratio: 2.6213183731;
  position: absolute;
  right: 0;
  bottom: 0;
  translate: 6.6% 13.1%;
}
.mission_grid_item_photo_mask.is_active .shape_01 {
  animation-name: kf_misson_shape_01;
}
.mission_grid_item_photo_mask.is_active .shape_02 {
  animation-name: kf_misson_shape_02;
}
.mission_grid_item_photo_mask .shape_02,
.mission_grid_item_photo_mask .shape_01 {
  animation-timing-function: ease-in-out;
  animation-iteration-count: 1;
  animation-fill-mode: both;
}
.mission_grid_item_photo_mask .shape_01 {
  stroke-dasharray: 3950;
  stroke-dashoffset: 3950;
  animation-duration: 1.35s;
}
.mission_grid_item_photo_mask .shape_02 {
  stroke-dasharray: 220;
  stroke-dashoffset: 220;
  animation-duration: 300ms;
  animation-delay: 1.35s;
}
.mission_grid_item_tag_li.is_active {
  pointer-events: none;
}
.mission_grid_item_tag_li.is_active .mission_grid_item_tag {
  background-color: #fff;
  color: #00780e;
}
.mission_grid_item_tag {
  font-weight: 600;
  line-height: 1.2;
  letter-spacing: 0.04em;
  min-width: 100px;
  display: flex;
  gap: 9px;
  align-items: center;
  position: relative;
  padding: 2px 14px;
}
@media only screen and (min-width: 768px) {
  .mission_grid_item_tag {
    min-width: 120px;
    padding: 1px 10px 1px 14px;
    cursor: pointer;
  }
}
@media only screen and (min-width: 1200px) {
  .mission_grid_item_tag {
    transition: 150ms linear;
    padding: 1px 10px;
  }
}
.mission_grid_item_tag::before {
  content: "";
  width: 8px;
  height: 8px;
  border-radius: 99px;
  background-color: currentColor;
}
.mission_grid_item_area {
  position: relative;
  margin-top: 51px;
}
@media only screen and (min-width: 1200px) {
  .mission_grid_item_area {
    margin-top: 0;
  }
}
.mission_grid_item_wrap {
  --prev: -2;
  --next: -1;
  pointer-events: none;
}
@media only screen and (min-width: 1200px) {
  .mission_grid_item_wrap {
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    position: absolute;
    opacity: 0;
    top: 0;
    left: 0;
    translate: 0 calc(var(--prev) * 40px);
    transition: 300ms ease;
  }
}
.mission_grid_item_wrap.is_active {
  opacity: 1;
  translate: none !important;
  pointer-events: all;
}
.mission_grid_item_wrap.is_active ~ .mission_grid_item_wrap {
  translate: 0 calc(var(--next) * -40px);
}
.mission_grid_item_title {
  font-weight: 700;
  letter-spacing: 0.02em;
  padding-bottom: 16px;
  border-bottom: 1px solid currentColor;
}
@media only screen and (min-width: 1200px) {
  .mission_grid_item_title {
    padding-bottom: 31px;
  }
}
.mission_grid_item_subt {
  font-weight: 700;
  letter-spacing: 0.01em;
  line-height: 1.8;
  margin-top: 15px;
}
@media only screen and (min-width: 768px) {
  .mission_grid_item_subt:first-of-type {
    margin-top: 26px;
  }
}
@media only screen and (min-width: 768px) {
  .mission_grid_item_subt + .mission_grid_item_txt {
    margin-top: -1px;
  }
}
.mission_grid_item_leading {
  font-weight: 700;
  line-height: 1.875;
  letter-spacing: 0.03em;
  margin-top: 19px;
}
@media only screen and (min-width: 1200px) {
  .mission_grid_item_leading {
    margin-top: 24px;
    margin-right: -5px;
  }
}
.mission_grid_item_txt {
  font-weight: 400;
  line-height: 1.6;
  letter-spacing: 0.01em;
  margin-top: 7px;
}
@media only screen and (min-width: 1200px) {
  .mission_grid_item_txt {
    margin-top: 17px;
    margin-right: -5px;
  }
}

@keyframes kf_misson_shape_01 {
  0% {
    stroke-dashoffset: 3950;
  }
  100% {
    stroke-dashoffset: 0;
  }
}
@keyframes kf_misson_shape_02 {
  0% {
    stroke-dashoffset: 220;
  }
  100% {
    stroke-dashoffset: 0;
  }
}
.mv {
  position: relative;
  z-index: 10;
}
.mv_slider {
  pointer-events: none;
}
.mv_slider .slick-track,
.mv_slider .slick-list {
  transform: none !important;
}
.mv_slider_area {
  position: relative;
  z-index: 0;
}
.mv_slider_area .slick-current .shape_01 {
  animation-name: kf_mv_shape_01;
}
.mv_slider_area .slick-current .shape_02 {
  animation-name: kf_mv_shape_02;
}
.mv_slider_area::before, .mv_slider_area::after {
  content: "";
  width: 100%;
  height: 12%;
  position: absolute;
  z-index: 1000;
  left: 0;
  pointer-events: none;
}
@media only screen and (min-width: 768px) {
  .mv_slider_area::before, .mv_slider_area::after {
    display: none;
  }
}
.mv_slider_area::before {
  top: -1px;
  background-image: linear-gradient(to bottom, #fefff8 12%, rgba(255, 255, 255, 0) 100%);
}
.mv_slider_area::after {
  bottom: -1px;
  background-image: linear-gradient(to top, #fefff8 12%, rgba(255, 255, 255, 0) 100%);
}
.mv_slider_item {
  position: relative;
}
.mv_slider_item_rel {
  width: 100%;
  aspect-ratio: 1.051212938;
  position: relative;
}
@media only screen and (min-width: 768px) {
  .mv_slider_item_rel {
    aspect-ratio: unset;
  }
}
.mv_slider_item_cover {
  aspect-ratio: 1.6161616162;
  height: 100%;
  position: absolute;
  top: 0;
  right: 0;
}
@media only screen and (min-width: 768px) {
  .mv_slider_item_cover {
    width: 100%;
    height: auto;
    position: relative;
  }
}
.mv_slider_item_cover img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.mv_slider_item_shape {
  width: 194.8717948718vw;
  position: absolute;
  right: 0;
  bottom: 5.3846153846vw;
}
@media only screen and (min-width: 768px) {
  .mv_slider_item_shape {
    width: calc(100% + 25vw);
    aspect-ratio: unset;
    left: -25vw;
    right: unset;
    bottom: 4.1875vw;
  }
}
.mv_slider_item_shape svg {
  width: 100%;
}
.mv_slider_dots {
  position: absolute;
  z-index: 1000;
  top: calc(50% - 121px);
  left: 10px;
}
@media only screen and (min-width: 768px) {
  .mv_slider_dots {
    top: calc(50% - 56px);
    left: 15px;
  }
}
.mv_slider_dots ul {
  display: flex;
  gap: 3px;
  flex-direction: column;
}
.mv_slider_dots li {
  width: 21px;
  height: 21px;
  font-size: 0;
  position: relative;
}
@media only screen and (min-width: 768px) {
  .mv_slider_dots li {
    cursor: pointer;
  }
  .mv_slider_dots li:hover::after {
    scale: 1 1;
  }
}
.mv_slider_dots li.slick-active {
  pointer-events: none;
}
.mv_slider_dots li.slick-active::after {
  scale: 1 1;
}
.mv_slider_dots li::before, .mv_slider_dots li::after {
  content: "";
  border-radius: 99px;
  position: absolute;
  top: 50%;
  left: 50%;
  translate: -50% -50%;
}
.mv_slider_dots li::before {
  width: 5px;
  height: 5px;
  background-color: #adcb00;
}
.mv_slider_dots li::after {
  width: 100%;
  height: 100%;
  border: 1px solid #00780e;
  scale: 0 0;
  transition: scale 500ms ease;
}
.mv_slider_dots button {
  display: none;
}
.mv_heading {
  width: 100%;
  display: flex;
  gap: 12px;
  flex-direction: column;
  padding: 108px 20px 20px;
}
@media only screen and (min-width: 768px) {
  .mv_heading {
    width: 43.5vw;
    max-width: 696px;
    position: absolute;
    z-index: 1;
    top: 50%;
    left: 99px;
    translate: 0 -50%;
    padding: 0;
  }
}
.mv_heading .jp {
  width: 345px;
  max-width: 100%;
}
@media only screen and (min-width: 768px) {
  .mv_heading .jp {
    width: 100%;
  }
}
.mv_heading .en {
  font-weight: 500;
  line-height: 1.45;
  letter-spacing: 0.04em;
  color: #adcb00;
  margin-top: 10px;
  padding-left: 4px;
}
@media only screen and (min-width: 768px) {
  .mv_heading .en {
    font-size: clamp(
        1.8rem,
        calc(1.8rem + 0.0072115385 * (100vw - 768px)),
        2.4rem
    );
    margin-top: 16px;
  }
}
.mv_scroll {
  font-weight: 400;
  line-height: 1;
  letter-spacing: 0.05em;
  color: #848484;
  position: absolute;
  left: 0;
  bottom: 0;
  translate: -100% 0;
  rotate: 90deg;
  transform-origin: bottom right;
  display: none;
}
@media only screen and (min-width: 768px) {
  .mv_scroll {
    left: 21px;
    display: block;
  }
}
.mv_scroll_link {
  display: flex;
  gap: 10px;
  align-items: center;
}
.mv_scroll_line {
  width: 155px;
  height: 1px;
  position: relative;
  overflow: hidden;
}
@media only screen and (min-width: 768px) {
  .mv_scroll_line {
    width: 155px;
  }
  .mv_scroll_line::before, .mv_scroll_line::after {
    content: "";
    background-color: #b1b1b1;
    position: absolute;
    inset: 0;
  }
  .mv_scroll_line::before {
    animation: kf_mv_scroll_line 3s linear 0s infinite both;
  }
  .mv_scroll_line::after {
    animation: kf_mv_scroll_line 3s linear 1.5s infinite both;
  }
}
.mv .shape_02,
.mv .shape_01 {
  animation-timing-function: ease-in-out;
  animation-iteration-count: 1;
  animation-fill-mode: both;
}
.mv .shape_01 {
  stroke-dasharray: 4150;
  stroke-dashoffset: 4150;
  animation-duration: 2.67s;
}
.mv .shape_02 {
  stroke-dasharray: 280;
  stroke-dashoffset: 280;
  animation-duration: 0.3s;
  animation-delay: 2.67s;
}

@keyframes kf_mv_shape_01 {
  0% {
    stroke-dashoffset: 4150;
  }
  100% {
    stroke-dashoffset: 0;
  }
}
@keyframes kf_mv_shape_01_out {
  0% {
    stroke-dashoffset: 8300;
  }
  100% {
    stroke-dashoffset: 4150;
  }
}
@keyframes kf_mv_shape_02 {
  0% {
    stroke-dashoffset: 280;
  }
  100% {
    stroke-dashoffset: 0;
  }
}
@keyframes kf_mv_shape_02_out {
  0% {
    stroke-dashoffset: 4880;
  }
  100% {
    stroke-dashoffset: 2440;
  }
}
@keyframes kf_mv_scroll_line {
  0% {
    translate: -100% 0;
  }
  70%, 100% {
    translate: 100% 0;
  }
}
.news {
  padding-top: 60px;
}
@media only screen and (min-width: 768px) {
  .news {
    padding-top: 178px;
  }
}
.news .lr_news {
  margin-top: 24px;
}
@media only screen and (min-width: 768px) {
  .news .lr_news {
    margin-top: 43px;
  }
}
.news_more {
  width: 100%;
  margin-top: 60px;
}
@media only screen and (min-width: 768px) {
  .news_more {
    width: 360px;
    margin-top: 60px;
  }
}

.recruitment {
  margin-top: 60px;
}
@media only screen and (min-width: 768px) {
  .recruitment {
    margin-top: 165px;
  }
}
@media only screen and (min-width: 768px) {
  .recruitment .title {
    gap: 14px;
  }
}
.recruitment .title .en {
  letter-spacing: 0.05em;
}
.recruitment_inner {
  position: relative;
  z-index: 0;
  background-color: #f6f7f9;
  overflow: hidden;
  padding: 40px 20px;
}
@media only screen and (min-width: 768px) {
  .recruitment_inner {
    padding: 93px 47px 49px;
  }
}
.recruitment_bg {
  position: absolute;
  z-index: -1;
  inset: 0;
  pointer-events: none;
}
.recruitment_bg .shape {
  width: 200px;
  aspect-ratio: 1;
  position: absolute;
}
@media only screen and (min-width: 768px) {
  .recruitment_bg .shape {
    width: 382px;
  }
}
.recruitment_bg .shape:nth-child(1) {
  top: -5px;
  left: -16%;
}
@media only screen and (min-width: 768px) {
  .recruitment_bg .shape:nth-child(1) {
    top: -5px;
    left: -16%;
  }
}
.recruitment_bg .shape:nth-child(2) {
  left: 60%;
  bottom: -10%;
  rotate: -60deg;
}
@media only screen and (min-width: 768px) {
  .recruitment_bg .shape:nth-child(2) {
    left: calc(29% + 3px);
    bottom: calc(-46% - 1px);
  }
}
.recruitment_photo {
  width: 100%;
}
@media only screen and (min-width: 768px) {
  .recruitment_photo {
    width: 50%;
    height: 100%;
    position: absolute;
    z-index: -1;
    top: 0;
    right: 0;
  }
}
.recruitment_photo::after {
  content: "";
  background-image: linear-gradient(90deg, #f6f7f9 4%, rgba(255, 255, 255, 0) 30%);
  position: absolute;
  inset: 0;
  display: none;
}
@media only screen and (min-width: 768px) {
  .recruitment_photo::after {
    display: block;
  }
}
.recruitment_photo img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.recruitment_content {
  width: 100%;
}
@media only screen and (min-width: 768px) {
  .recruitment_content {
    width: 60%;
  }
}
.recruitment_txt {
  font-weight: 400;
  line-height: 2.25;
  letter-spacing: 0.01em;
  margin-top: 20px;
  margin-bottom: 20px;
}
@media only screen and (min-width: 768px) {
  .recruitment_txt {
    max-width: 480px;
    margin-bottom: 0;
  }
}
.recruitment_more {
  margin-top: 24px;
}
@media only screen and (min-width: 768px) {
  .recruitment_more {
    width: 473.72px;
    margin-top: 32px;
  }
}
.recruitment_more .btn {
  --btn-w: 100%;
  letter-spacing: 0.02em;
  padding-left: 10px;
}
.recruitment_more .icon {
  --icon-w: 34.39px;
  --icon-h: 34.39px;
  border: 1px solid #adcb00;
}
@media only screen and (min-width: 768px) {
  .recruitment_more .icon {
    right: 24px;
  }
}
.recruitment_more .icon[data-type=_blank] {
  --sc: #00780e;
}

@keyframes kf_rotate {
  from {
    rotate: 360deg;
  }
  to {
    rotate: 0deg;
  }
}
.story {
  position: relative;
}
.story_cover {
  position: absolute;
  z-index: -1;
  inset: 0;
}
.story_cover img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.story_inner {
  padding-top: 40px;
  padding-bottom: 40px;
}
@media only screen and (min-width: 768px) {
  .story_inner {
    max-width: 580px;
    padding-top: 132px;
    padding-bottom: 133px;
  }
}
.story_txt {
  font-weight: 700;
  line-height: 2.25;
  letter-spacing: 0.01em;
  color: #fff;
  margin-top: 30px;
}
@media only screen and (min-width: 768px) {
  .story_txt {
    margin-top: 41px;
    padding-left: 4px;
  }
}
.story_more {
  margin-top: 30px;
}
@media only screen and (min-width: 768px) {
  .story_more {
    max-width: 442px;
    margin-top: 47px;
  }
}
@media only screen and (min-width: 768px) {
  .story_more .btn {
    --btn-w: 100%;
    opacity: 1;
    transition: 150ms linear;
  }
  .story_more .btn:hover {
    filter: brightness(0.9);
  }
}
.story_more .icon {
  border: 1px solid #adcb00;
}

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