@charset "utf-8";

.section_ttl_en {
    position: absolute;
}
.section_ttl_en::before {
    content: '';
    display: block;
    position: absolute;
}
.section_ttl {
    text-align: center;
    position: relative;
}
.section_ttl_ureshii {
    position: relative;
    display: inline-block;
}
.section_ttl_ureshii_1 {
    position: absolute;
    color: transparent;
}
.section_ttl_ureshii_2 {
    position: absolute;
    color: transparent;
}
.section_ttl_ureshii_3 {
    position: absolute;
}
.animation_ready .section_ttl_en_inner {
    display: inline-block;
    opacity: 0;
    transform: translateX(-20rem);
}
.animation_ready .section_ttl_en::before {
    clip-path: polygon(100% 0%, 100% 100%, 100% 100%, 100% 0%);
}
.animation_loaded .is_animated .section_ttl_en_inner {
    opacity: 1;
    transform: translateX(0rem);
    transition: opacity 0.4s 0.4s, transform 0.4s 0.4s;
}
.animation_loaded .is_animated .section_ttl_en::before {
    clip-path: polygon(100% 0%, 100% 100%, 0% 100%, 0% 0%);
    transition: clip-path 0.4s 0.8s;
}
@media (min-width: 751px) {
    .section_ttl_en {
        z-index: 1;
        top: 295rem;
        left: 24rem;
        font-size: 24rem;
        font-weight: 900;
        rotate: -90deg;
        translate: -50% -50%;
        padding-bottom: 26rem;
    }
    .section_ttl_en::before {
        bottom: -1rem;
        right: 0;
        width: 62rem;
        border-bottom: 2rem solid;
    }
    .section_ttl {
        font-weight: 900;
        font-size: 48rem;
    }
    .section_ttl_ureshii {
        width: 330rem;
        height: 115rem;
    }
    .section_ttl_ureshii_1 {
        top: 10rem;
        left: 0rem;
        width: 260rem;
        height: 105rem;
    }
    .section_ttl_ureshii_2 {
        top: 0rem;
        left: 286rem;
        width: 17rem;
        height: 75rem;
    }
    .section_ttl_ureshii_3 {
        top: 90rem;
        left: 66rem;
        width: 267rem;
    }
}
@media (max-width: 750px) {
    .section_ttl_en {
        z-index: 1;
        top: 133rem;
        left: 87rem;
        font-size: 28rem;
        font-weight: 900;
        rotate: -90deg;
        translate: -50% -50%;
        padding-bottom: 24rem;
    }
    .section_ttl_en::before {
        bottom: -1rem;
        right: 0;
        width: 80rem;
        border-bottom: 2rem solid;
    }
    .section_ttl {
        font-weight: 900;
        font-size: 60rem;
    }
    .section_ttl_ureshii {
        width: 440rem;
        height: 155rem;
    }
    .section_ttl_ureshii_1 {
        top: 24rem;
        left: 4rem;
        width: 344rem;
        height: 128rem;
    }
    .section_ttl_ureshii_2 {
        top: 14rem;
        left: 380rem;
        width: 22rem;
        height: 75rem;
    }
    .section_ttl_ureshii_3 {
        top: 120rem;
        left: 90rem;
        width: 350rem;
    }
}

/* section_more_btn_wrap */
.section_more_btn_wrap {
    display: flex;
    justify-content: flex-end;
    position: relative;
    z-index: 1;
}
.section_more_btn {
    position: relative;
    display: block;
}
.section_more_btn_circle_wrap {
    position: absolute;
    overflow: hidden;
}
.section_more_btn_circle {
    position: absolute;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
}
.section_more_btn_circle::before {
    content: '';
    display: block;
    position: absolute;
}
.section_more_btn_circle_jp {
    display: block;
}
.section_more_btn_circle_en {
    display: block;
}
@media (min-width: 751px) {
    .section_more_btn_wrap {
        margin-top: 103rem;
    }
    .section_more_btn {
        width: 280rem;
        height: 163rem;
    }
    .section_more_btn_circle_wrap {
        top: 78rem;
        right: 117rem;
        width: 283rem;
        height: 163rem;
    }
    .section_more_btn_circle {
        top: 0rem;
        right: 0rem;
        width: 163rem;
        height: 163rem;
        border-radius: 50%;
        border: 2rem solid #008a67;
    }
    .section_more_btn_circle::before {
        top: 50%;
        left: -121rem;
        width: 96%;
        border-top: 2rem solid #008a67;
        margin-top: -1rem;
    }
    .section_more_btn_circle_jp {
        font-size: 14rem;
        margin-top: 0rem;
    }
    .section_more_btn_circle_en {
        font-size: 14rem;
        font-weight: 900;
        margin-top: 7rem;
    }
    @media (hover: hover) {
        .section_more_btn:hover .section_more_btn_circle::before {
            animation: section_more_btn 0.4s 0s forwards;
        }
        .section_more_btn .section_more_btn_circle {
            transition: color 0.4s 0s, background 0.4s 0s;
        }
        .section_more_btn:hover .section_more_btn_circle {
            transition: color 0.4s 0.2s, background 0.4s 0.2s;
            color: #fff;
            background: #008a67;
        }
    }
}
@media (max-width: 750px) {
    .section_more_btn_wrap {
        margin-top: 250rem;
        margin-right: 65rem;
    }
    .section_more_btn {
        width: 376rem;
        height: 223rem;
    }
    .section_more_btn_circle_wrap {
        top: 78rem;
        right: 117rem;
        width: 283rem;
        height: 163rem;
    }
    .section_more_btn_circle {
        top: 0rem;
        right: 0rem;
        width: 218rem;
        height: 218rem;
        border-radius: 50%;
        border: 2rem solid #008a67;
    }
    .section_more_btn_circle::before {
        top: 50%;
        left: -158rem;
        width: 90%;
        border-top: 2rem solid #008a67;
        margin-top: -1rem;
    }
    .section_more_btn_circle_jp {
        font-size: 22rem;
        margin-top: 0rem;
    }
    .section_more_btn_circle_en {
        font-size: 20rem;
        font-weight: 900;
        margin-top: 7rem;
    }
}

/* mv */
.mv {
    position: relative;
    height: 100vh;
    height: 100dvh;
    width: 100vw;
    width: 100dvw;
}
.mv_bg {
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
}
.mv_bg_swiper,
.mv_bg_swiper > li {
    position: relative;
    overflow: hidden;
    width: 100%;
    height: 100%;
}
.mv_bg_x {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}
.mv_bg_1 {
    scale: 1;
}
.mv_bg_2 {
    scale: 1.1;
}
.mv_bg_3 {
    scale: 1;
}
.mv_bg_4 {
    scale: 1.1;
}
.swipmv_bg_swiper_wrapper > li {
    overflow: hidden;
}
.swiper-slide-duplicate-active .mv_bg_1,
.swiper-slide-active .mv_bg_1,
.swiper-slide-prev .mv_bg_1 {
    scale: 1.1;
    transition: scale 10s;
}
.swiper-slide-active .mv_bg_2,
.swiper-slide-prev .mv_bg_2 {
    scale: 1;
    transition: scale 10s;
}
.swiper-slide-active .mv_bg_3,
.swiper-slide-prev .mv_bg_3 {
    scale: 1.1;
    transition: scale 10s;
}
.swiper-slide-duplicate-active .mv_bg_4,
.swiper-slide-duplicate-prev .mv_bg_4,
.swiper-slide-active .mv_bg_4,
.swiper-slide-prev .mv_bg_4 {
    scale: 1;
    transition: scale 10s;
}
.mv_inner {
    position: absolute;
    z-index: 5;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    display: flex;
    justify-content: center;
    align-items: center;
    background: rgba(25, 49, 33, 0.4);
}
.mv_box {
    position: relative;
}
.mv_ttl {
    position: absolute;
}
.mv_logo_wrap {
    position: absolute;
}
.mv_logo_wrap > img {
    height: auto;
}
.ureshii {
    position: absolute;
    height: auto;
}
.ureshii_deco {
    position: absolute;
}
.ureshii_deco_line {
    position: absolute;
}
.ureshii_1 {
    position: absolute;
    color: #fff;
}
.ureshii_2 {
    position: absolute;
    color: #fff;
}
.mv_scroll {
    position: absolute;
    background: #fff;
}
.mv_scroll_circle {
    position: absolute;
    background: #008a67;
    z-index: 1;
    left: 50%;
    top: 100%;
    border-radius: 50%;
    translate: -50% -50%;
}

.animation_ready .ureshii {
    opacity: 0;
    transform: translateY(20rem);
}
.animation_ready .ureshii_deco_line .mv_svg_path {
    stroke-dasharray: 2000;
    stroke-dashoffset: 2000;
}
.animation_ready .ureshii_deco {
    transform-origin: 0% 100%;
    transform: rotate(-30deg);
    opacity: 0;
}
.animation_ready .ureshii_1_txt {
    display: inline-block;
    opacity: 0;
    transform: translateY(20rem);
}
.animation_ready .ureshii_2_txt_set {
    display: inline-block;
    opacity: 0;
    transform: translateY(20rem);
}

.animation_loaded .ureshii {
    opacity: 1;
    transform: translateY(0rem);
    transition: opacity 0.4s 0s, transform 0.4s 0s;
}
.animation_loaded .ureshii_deco_line .mv_svg_path {
    stroke-dashoffset: 0;
    transition: stroke-dashoffset 0.8s 0s;
}
.animation_loaded .ureshii_deco {
    transform: rotate(0deg);
    opacity: 1;
    transition: opacity 0.4s 0.4s, transform 0.4s 0.4s;
}
.animation_loaded .ureshii_1_txt {
    opacity: 1;
    transform: translateY(0rem);
    transition: opacity 0.4s 0.8s, transform 0.4s 0.8s;
}
.animation_loaded .ureshii_2_txt_set {
    opacity: 1;
    transform: translateY(0rem);
    transition: opacity 0.4s 1.2s, transform 0.4s 1.2s;
}
.animation_loaded .ureshii_2_txt > .ureshii_2_txt_set:nth-child(1) {
    transition-delay: 1.4s;
}
.animation_loaded .ureshii_2_txt > .ureshii_2_txt_set:nth-child(2) {
    transition-delay: 1.6s;
}
.animation_loaded .ureshii_2_txt > .ureshii_2_txt_set:nth-child(3) {
    transition-delay: 1.8s;
}
.animation_loaded .mv_scroll_circle {
    animation: 5s ease-in-out mv_scroll_circle infinite;
}
@keyframes mv_scroll_circle {
    0% {
        transform: translateY(-1170%);
        opacity: 0;
    }
    40% {
        transform: translateY(-1170%);
        opacity: 0;
    }
    50% {
        opacity: 1;
    }
    90% {
        opacity: 1;
    }
    100% {
        transform: translateY(0%);
        opacity: 0;
    }
}
@media (min-width: 751px) {
    /* 
        design-> 1440px:960px
        horizon-> 1440:100vw=1px:Xvw -> x = 0.069444444444444vw
        vertical-> 960:100vh=1px:Yvh -> x = 0.104166666666667vh
    */
    @media (min-aspect-ratio: 1440/960) {
        .mv {
            font-size: calc(100 / 960 * 1vh);
            font-size: calc(100 / 960 * 1dvh);
        }
    }
    @media (max-aspect-ratio: 1440/960) {
        .mv {
            font-size: calc(100 / 1440 * 1vw);
            font-size: calc(100 / 1440 * 1dvw);
        }
    }
    .mv_bg_1 {
        background: url(../img/home/bg_1.jpg) no-repeat 50% 50% / cover;
    }
    .mv_bg_2 {
        background: url(../img/home/bg_2.jpg) no-repeat 50% 50% / cover;
    }
    .mv_bg_3 {
        background: url(../img/home/bg_3.jpg) no-repeat 50% 50% / cover;
    }
    .mv_bg_4 {
        background: url(../img/home/bg_4.jpg) no-repeat 50% 50% / cover;
    }
    .mv_box {
        width: 960em;
        height: 960em;
    }
    .mv_ttl {
        top: 90em;
        left: 120em;
        width: 430em;
        height: 210em;
    }
    .mv_logo_wrap {
        top: 684em;
        left: 348em;
        width: 265em;
    }
    .mv_logo_wrap > img {
        width: 100%;
    }
    .ureshii {
        top: 9em;
        left: 9em;
        width: 279em;
    }
    .ureshii_deco {
        top: -1em;
        left: 315.4em;
        width: 18em;
    }
    .ureshii_deco_line {
        top: 88em;
        left: 80em;
        width: 285em;
    }
    .ureshii_1 {
        top: 12em;
        left: 344em;
    }
    .ureshii_1_txt {
        font-size: 38em;
        font-weight: 900;
    }
    .ureshii_2 {
        top: 130em;
        left: 39em;
    }
    .ureshii_2_txt {
        font-size: 58em;
        font-weight: 900;
    }
    .mv_scroll {
        z-index: 1;
        right: 47rem;
        bottom: 30rem;
        width: 2rem;
        height: 190rem;
    }
    .mv_scroll_circle {
        width: 16rem;
        height: 16rem;
        opacity: 0;
    }
}
@media (max-width: 750px) {
    /* 
        design-> 375px:600px
        horizon-> 375:100vw=1px:Xvw -> x = 0.266666666666667vw
        vertical-> 600:100vh=1px:Yvh -> x = 0.166666666666667vh
    */
    @media (min-aspect-ratio: 375/600) {
        .mv {
            font-size: calc(100 / 600 * 1vh);
            font-size: calc(100 / 600 * 1dvh);
        }
    }
    @media (max-aspect-ratio: 375/600) {
        .mv {
            font-size: calc(100 / 375 * 1vw);
            font-size: calc(100 / 375 * 1dvw);
        }
    }
    .mv_bg_1 {
        background: url(../img/home/bg_1_sp.jpg) no-repeat 50% 50% / cover;
    }
    .mv_bg_2 {
        background: url(../img/home/bg_2_sp.jpg) no-repeat 50% 50% / cover;
    }
    .mv_bg_3 {
        background: url(../img/home/bg_3_sp.jpg) no-repeat 50% 50% / cover;
    }
    .mv_bg_4 {
        background: url(../img/home/bg_4_sp.jpg) no-repeat 50% 50% / cover;
    }
    .mv_box {
        width: 375em;
        height: 600em;
    }
    .mv_ttl {
        top: 62em;
        left: 30em;
        width: 200em;
        height: 102em;
    }
    .mv_logo_wrap {
        top: 426em;
        left: 106.4em;
        width: 162em;
    }
    .mv_logo_wrap > img {
        width: 100%;
    }
    .ureshii {
        top: 6em;
        left: -1em;
        width: 139em;
    }
    .ureshii_deco {
        top: 0em;
        left: 152.2em;
        width: 9.2em;
    }
    .ureshii_deco_line {
        top: 45em;
        left: 35em;
        width: 142em;
    }
    .ureshii_1 {
        top: 7em;
        left: 166em;
    }
    .ureshii_1_txt {
        font-size: 19em;
        font-weight: 900;
    }
    .ureshii_2 {
        top: 67em;
        left: 13em;
    }
    .ureshii_2_txt {
        font-size: 27em;
        font-weight: 900;
        letter-spacing: 0.14em;
    }
    .mv_scroll {
        z-index: 1;
        right: 39rem;
        bottom: 30rem;
        width: 2rem;
        height: 190rem;
    }
    .mv_scroll_circle {
        width: 16rem;
        height: 16rem;
    }
}

/* message */
.message {
    position: relative;
}
.message_x_wrap {
    position: absolute;
    overflow: hidden;
}
.message_x {
    height: auto;
    width: 100%;
}
.message_txt {
    color: #008a67;
}
.message_txt_ureshii {
    position: relative;
    display: inline-block;
}
.message_txt_ureshii_1 {
    display: block;
    position: absolute;
    overflow: hidden;
    color: transparent;
    background: url(../img/default/ureshii_g.svg) no-repeat 50% 50% / contain;
}
.message_txt_ureshii_2 {
    display: block;
    position: absolute;
    overflow: hidden;
    color: transparent;
    background: url(../img/default/ureshii_deco_g.svg) no-repeat 50% 50% / contain;
}
.message_txt_ureshii_3 {
    display: block;
    position: absolute;
    height: auto;
}
.animation_ready .message_txt_set {
    display: inline-block;
    opacity: 0;
    transform: translateY(20rem);
}
.animation_ready .message_txt_ureshii_1 {
    opacity: 0;
    transform: translateY(20rem);
}
.animation_ready .message_txt_ureshii_3 .message_svg_path {
    stroke-dasharray: 2000;
    stroke-dashoffset: 2000;
}
.animation_ready .message_txt_ureshii_2 {
    transform-origin: 0% 100%;
    transform: rotate(-30deg);
    opacity: 0;
}
.animation_ready .message_txt_ureshii_4 {
    display: inline-block;
    opacity: 0;
    transform: translateY(20rem);
}
.animation_loaded .message_txt.is_animated .message_txt_set {
    opacity: 1;
    transform: translateY(0rem);
    transition: opacity 0.4s, transform 0.4s;
}
.animation_loaded .message_txt.is_animated .message_txt_set:nth-of-type(1) {
    transition-delay: 0s;
}
.animation_loaded .message_txt.is_animated .message_txt_set:nth-of-type(2) {
    transition-delay: 0.2s;
}
.animation_loaded .message_txt.is_animated .message_txt_set:nth-of-type(3) {
    transition-delay: 0.4s;
}
.animation_loaded .message_txt.is_animated .message_txt_set:nth-of-type(4) {
    transition-delay: 0.6s;
}
.animation_loaded .message_txt.is_animated .message_txt_set:nth-of-type(5) {
    transition-delay: 0.8s;
}
.animation_loaded .message_txt.is_animated .message_txt_ureshii_1 {
    opacity: 1;
    transform: translateY(0rem);
    transition: opacity 0.4s 1s, transform 0.4s 1s;
}
.animation_loaded .message_txt.is_animated .message_txt_ureshii_3 .message_svg_path {
    stroke-dashoffset: 0;
    transition: stroke-dashoffset 0.8s 1s;
}
.animation_loaded .message_txt.is_animated .message_txt_ureshii_2 {
    opacity: 1;
    transform: translateY(0rem);
    transition: opacity 0.4s 1.2s, transform 0.4s 1.2s;
}
.animation_loaded .message_txt.is_animated .message_txt_ureshii_4 {
    opacity: 1;
    transform: translateY(0rem);
    transition: opacity 0.4s 1.4s, transform 0.4s 1.4s;
}
.animation_loaded .message_txt.is_animated .message_txt_set:nth-of-type(8) {
    transition-delay: 1.6s;
}
.animation_ready .message_x_wrap {
    opacity: 0;
    transform: translateY(200%);
}
.animation_loaded .message_x_wrap.is_animated {
    animation: wobbling_x 1s 0s 2 ease-in-out alternate forwards, wobbling_y 1s 0s 2 ease-in-out alternate forwards,
        fly_high 2s 0s 1 ease-in-out forwards;
}
@keyframes wobbling_x {
    0% {
        translate: 0% 0;
    }
    100% {
        translate: 3% 0;
    }
}
@keyframes wobbling_y {
    0% {
        margin-top: 0%;
    }
    100% {
        margin-top: 5%;
    }
}
@keyframes fly_high {
    0% {
        transform: translateY(100%);
        opacity: 0;
    }
    100% {
        transform: translateY(0%);
        opacity: 1;
    }
}
@media (min-width: 751px) {
    .message {
        height: 1980rem;
    }
    .message_x_wrap {
        border-radius: 50%;
        box-shadow: 0 30rem 60rem 0rem rgba(0, 0, 0, 0.2);
    }
    .message_1_wrap {
        width: 691rem;
        height: 691rem;
        top: 160rem;
        right: -172rem;
    }
    .message_2_wrap {
        width: 433rem;
        height: 433rem;
        top: 1023rem;
        right: 39rem;
    }
    .message_3_wrap {
        width: 569rem;
        height: 569rem;
        top: 1217rem;
        left: 35rem;
    }
    .message_4_wrap {
        width: 301rem;
        height: 301rem;
        top: 1600rem;
        right: 202rem;
    }
    .message_txt {
        margin-top: 208rem;
        margin-left: 24rem;
        font-size: 64rem;
        font-weight: 900;
        line-height: calc(112 / 64);
    }
    .message_txt_ureshii {
        width: 476rem;
        height: 170rem;
        vertical-align: -110rem;
        margin-bottom: 42rem;
    }
    .message_txt_ureshii_1 {
        top: 34rem;
        left: 12rem;
        width: 370rem;
        height: 132rem;
    }
    .message_txt_ureshii_2 {
        top: 20rem;
        left: 417rem;
        width: 26rem;
        height: 86rem;
    }
    .message_txt_ureshii_3 {
        top: 139rem;
        left: 106rem;
        width: 376rem;
    }
}
@media (max-width: 750px) {
    .message {
        height: 2860rem;
    }
    .message_x_wrap {
        border-radius: 50%;
        box-shadow: 0 30rem 60rem 0rem rgba(0, 0, 0, 0.2);
    }
    .message_1_wrap {
        width: 626rem;
        height: 626rem;
        top: 160rem;
        left: 146rem;
    }
    .message_2_wrap {
        width: 433rem;
        height: 433rem;
        top: 1868rem;
        right: 353rem;
    }
    .message_3_wrap {
        width: 390rem;
        height: 390rem;
        top: 2157rem;
        left: 389rem;
    }
    .message_4_wrap {
        width: 301rem;
        height: 301rem;
        top: 2470rem;
        right: 342rem;
    }
    .message_txt {
        margin-top: 912rem;
        margin-left: 63rem;
        font-size: 68rem;
        font-weight: 900;
        line-height: calc(110 / 70);
    }
    .message_txt_ureshii {
        width: 476rem;
        height: 170rem;
        vertical-align: -110rem;
        margin-bottom: 42rem;
    }
    .message_txt_ureshii_1 {
        top: 34rem;
        left: 12rem;
        width: 370rem;
        height: 132rem;
    }
    .message_txt_ureshii_2 {
        top: 20rem;
        left: 417rem;
        width: 26rem;
        height: 86rem;
    }
    .message_txt_ureshii_3 {
        top: 139rem;
        left: 106rem;
        width: 376rem;
    }
}

/* feature */
.feature {
    position: relative;
}
.feature_bg {
    position: absolute;
    height: auto;
}
.feature .section_ttl_en {
    color: #008a67;
}
.feature .section_ttl_en::before {
    border-color: #008a67;
}
.feature_list.swiper-wrapper {
    transition-timing-function: linear;
}
.feature_list_item {
    overflow: hidden;
    background: #fff;
    text-align: center;
    border-radius: 50%;
    box-shadow: 0rem 30rem 60rem 0rem rgba(0, 0, 0, 0.2);
}
.feature_x {
    width: 100%;
    height: auto;
}
.feature_list_item > dl {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    width: 100%;
    height: 100%;
}
.feature_list_item > dl > dt {
    color: #008a67;
}
.feature .section_ttl {
    color: #fff;
}
.feature .section_ttl_ureshii_1 {
    background: url(../img/default/ureshii.svg) no-repeat 50% 50% / contain;
}
.feature .section_ttl_ureshii_2 {
    background: url(../img/default/ureshii_deco.svg) no-repeat 50% 50% / contain;
}
.feature_txt {
    position: relative;
    text-align: center;
    color: #fff;
}
.feature .section_more_btn {
    color: #008a67;
}

.animation_ready .feature_bg_path {
    stroke-width: 4px;
    stroke-dasharray: 4000;
    stroke-dashoffset: 4000;
    stroke: #008a67;
    fill: transparent;
}
.animation_ready .feature_ttl_0 {
    display: inline-block;
    opacity: 0;
    transform: translateY(20rem);
}
.animation_ready .feature_ttl_1 {
    opacity: 0;
    transform: translateY(20rem);
}
.animation_ready .feature_ttl_path {
    stroke-dasharray: 2000;
    stroke-dashoffset: 2000;
}
.animation_ready .feature_ttl_2 {
    opacity: 0;
    transform-origin: 0% 100%;
    transform: rotate(-30deg);
}
.animation_ready .feature_txt {
    opacity: 0;
    transform: translateY(20rem);
}
.animation_ready .feature_list_wrap {
    opacity: 0;
    transform: translateY(100rem);
}

.animation_loaded .is_animated .feature_bg_path {
    stroke-dashoffset: 0;
    fill: #008a67;
    transition: stroke-dashoffset 1s 0s, fill 1s 1s;
}
.animation_loaded .is_animated .feature_ttl_0 {
    opacity: 1;
    transform: translateY(0rem);
    transition: opacity 0.4s 2s, transform 0.4s 2s;
}
.animation_loaded .is_animated .feature_ttl_1 {
    opacity: 1;
    transform: translateY(0rem);
    transition: opacity 0.4s 2.2s, transform 0.4s 2.2s;
}
.animation_loaded .is_animated .feature_ttl_path {
    stroke-dashoffset: 0;
    transition: stroke-dashoffset 0.8s 2.2s;
}
.animation_loaded .is_animated .feature_ttl_2 {
    opacity: 1;
    transform: rotate(0deg);
    transition: opacity 0.4s 2.6s, transform 0.4s 2.6s;
}
.animation_loaded .is_animated .feature_txt {
    opacity: 1;
    transform: translateY(0rem);
    transition: opacity 0.4s 3s, transform 0.4s 3s;
}
.animation_loaded .feature_list_wrap.is_animated {
    opacity: 1;
    transform: translateY(0rem);
    transition: 0.8s opacity, 0.8s transform;
}
@media (min-width: 751px) {
    .feature {
        height: 1340rem;
    }
    .feature_bg {
        top: 80rem;
        left: 50%;
        width: 1100rem;
        margin-left: -550rem;
    }
    .feature_list > li {
        width: 420rem;
        height: 380rem;
        padding-inline: 20rem;
    }
    .feature_list_item {
        width: 380rem;
        height: 380rem;
    }
    .feature_list_item > dl > dt {
        margin-top: 30rem;
        font-weight: 900;
        font-size: 24rem;
        line-height: 2;
    }
    .feature_list_item > dl > dd {
        margin-top: 15rem;
        font-size: 18rem;
        line-height: 2;
    }
    .feature .section_ttl {
        margin-top: 241rem;
    }
    .feature_txt {
        margin-top: 54rem;
        font-size: 18rem;
        line-height: 2;
    }
    .feature_list_wrap {
        margin-top: 50rem;
    }
}
@media (max-width: 750px) {
    .feature {
        height: 1820rem;
    }
    .feature_bg {
        top: 200rem;
        left: 50%;
        width: 1260rem;
        margin-left: -620rem;
    }
    .feature_list > li {
        width: 485rem;
        height: 425rem;
        padding-inline: 20rem;
    }
    .feature_list_item {
        width: 425rem;
        height: 425rem;
    }
    .feature_list_item > dl > dt {
        margin-top: 30rem;
        font-weight: 900;
        font-size: 32rem;
        line-height: 2;
    }
    .feature_list_item > dl > dd {
        margin-top: 15rem;
        font-size: 24rem;
        line-height: 2;
    }
    .feature .section_ttl {
        margin-top: 384rem;
    }
    .feature_txt {
        margin-top: 53rem;
        font-size: 26rem;
        line-height: 2;
    }
    .feature_list_wrap {
        margin-top: 50rem;
    }
}

/* company */
.company {
    position: relative;
}
.company_bg_mount {
    left: 50%;
    position: absolute;
    z-index: -1;
}
.company_bg_miyakonojyo {
    position: absolute;
    z-index: -1;
}
.company .section_ttl_en {
    color: #008a67;
}
.company .section_ttl_en::before {
    border-color: #008a67;
}
.company .section_ttl {
    color: #008a67;
}
.company .section_ttl_ureshii_1 {
    background: url(../img/default/ureshii_g.svg) no-repeat 50% 50% / contain;
}
.company .section_ttl_ureshii_2 {
    background: url(../img/default/ureshii_deco_g.svg) no-repeat 50% 50% / contain;
}
.company_img_wrap {
    overflow: hidden;
    margin-inline: auto;
    box-shadow: 0rem 30rem 60rem 0rem rgba(0, 0, 0, 0.2);
}
.company_img {
    height: auto;
    display: block;
}
.company_txt {
    display: block;
    margin-inline: auto;
}
.company .section_more_btn {
    color: #008a67;
}

.animation_ready .company_ttl_0 {
    display: inline-block;
    opacity: 0;
    transform: translateY(20rem);
}
.animation_ready .company_ttl_1 {
    opacity: 0;
    transform: translateY(20rem);
}
.animation_ready .company_ttl_path {
    stroke-dasharray: 2000;
    stroke-dashoffset: 2000;
}
.animation_ready .company_ttl_2 {
    opacity: 0;
    transform-origin: 0% 100%;
    transform: rotate(-30deg);
}
.animation_ready .company_img_wrap {
    opacity: 0;
    transform: translateY(60rem);
}
.animation_ready .company_txt {
    opacity: 0;
    transform: translateY(20rem);
}
.animation_loaded .is_animated .company_ttl_0 {
    opacity: 1;
    transform: translateY(0rem);
    transition: opacity 0.4s, transform 0.4s;
}
.animation_loaded .is_animated .company_ttl_1 {
    opacity: 1;
    transform: translateY(0rem);
    transition: opacity 0.4s 0.4s, transform 0.4s 0.4s;
}
.animation_loaded .is_animated .company_ttl_path {
    stroke-dashoffset: 0;
    transition: stroke-dashoffset 0.8s 0.4s;
}
.animation_loaded .is_animated .company_ttl_2 {
    opacity: 1;
    transform: rotate(0deg);
    transition: opacity 0.4s 0.8s, transform 0.4s 0.8s;
}
.animation_loaded .is_animated.company_img_wrap {
    opacity: 1;
    transform: translateY(0rem);
    transition: opacity 0.4s 0s, transform 0.4s 0s;
}
.animation_loaded .is_animated.company_txt {
    opacity: 1;
    transform: translateY(0rem);
    transition: opacity 0.4s 0s, transform 0.4s 0s;
}
@media (min-width: 751px) {
    .company {
        height: 1250rem;
    }
    .company_bg_mount {
        top: 526rem;
        width: 1361rem;
        height: 225rem;
        margin-left: -1603rem;
    }
    .company_bg_miyakonojyo {
        top: 68rem;
        left: 50%;
        width: 559rem;
        height: 836rem;
        margin-left: 278rem;
    }
    .company .section_ttl_en {
        top: 151rem;
    }
    .company .section_ttl {
        margin-top: 76rem;
    }
    .company_img_wrap {
        width: 884rem;
        border-radius: 56rem;
        margin-top: 65rem;
    }
    .company_img {
        width: 884rem;
    }
    .company_txt {
        width: 884rem;
        margin-top: 54rem;
        font-size: 18rem;
    }
    .company .section_more_btn_wrap {
        margin-top: -20rem;
    }
}
@media (max-width: 750px) {
    .company {
        height: 1448rem;
    }
    .company_bg_mount {
        top: 1082rem;
        width: 1230rem;
        height: 202rem;
        margin-left: -1282rem;
    }
    .company_bg_miyakonojyo {
        top: 356rem;
        left: 50%;
        width: 609rem;
        height: 686rem;
        margin-left: -82rem;
    }
    .company .section_ttl_en {
        top: 151rem;
    }
    .company .section_ttl {
        margin-top: 170rem;
    }
    .company_img_wrap {
        width: 625rem;
        border-radius: 46rem;
        margin-top: 67rem;
    }
    .company_img {
        width: 625rem;
    }
    .company_txt {
        margin-top: 50rem;
        font-size: 26rem;
        line-height: 2;
        margin-inline: 64rem;
    }
    .company .section_more_btn_wrap {
        margin-top: 50rem;
    }
}

/* works */
.works {
    position: relative;
}
.works::before {
    content: '';
    position: absolute;
    background: #008a67;
    z-index: -1;
    top: 0;
    left: 0;
    width: 100%;
}
.works .section_ttl {
    color: #fff;
}
.works .section_ttl_en {
    color: #fff;
}
.works .section_ttl_ureshii_1 {
    background: url(../img/default/ureshii.svg) no-repeat 50% 50% / contain;
}
.works .section_ttl_ureshii_2 {
    background: url(../img/default/ureshii_deco.svg) no-repeat 50% 50% / contain;
}
.works .section_ttl_en::before {
    border-color: #fff;
}
.works .section_more_btn_wrap {
    position: relative;
    z-index: 1;
}
.works .section_more_btn {
    color: #008a67;
}
.works_swiper {
    overflow: visible;
    position: relative;
    margin: 0 auto;
}
.works_swiper .swiper-slide {
    position: relative;
    text-align: center;
}
.works_swiper_slide_over {
    opacity: 0;
}
.works_swiper .swiper-slide-active + .swiper-slide .works_swiper_slide_over,
.works_swiper .swiper-slide-duplicate-active + .swiper-slide .works_swiper_slide_over {
    opacity: 1;
    z-index: 1;
}
.works_swiper .swiper-slide-next + .swiper-slide .works_swiper_slide_over,
.works_swiper .swiper-slide-duplicate-next + .swiper-slide .works_swiper_slide_over {
    opacity: 1;
}
.works_swiper .swiper-slide.swiper-slide-active .works_swiper_slide_over,
.works_swiper .swiper-slide.swiper-slide-duplicate-active .works_swiper_slide_over {
    opacity: 1;
    z-index: 2;
    transform: translateY(0);
}
.works_swiper .swiper-slide-prev .works_swiper_slide_over,
.works_swiper .swiper-slide-duplicate-prev .works_swiper_slide_over {
    transform: translateY(0);
}
body .swiper-container-horizontal > .swiper-pagination-bullets {
    position: absolute;
    z-index: 2;
    bottom: auto;
    display: flex;
    justify-content: space-between;
}
body .swiper-container-horizontal > .swiper-pagination-bullets .swiper-pagination-bullet {
    margin: 0;
    border-radius: 50%;
    border: 1px solid #008a67;
}

body .swiper-pagination-bullet {
    background: #fff;
    opacity: 1;
}
body .swiper-pagination-bullet-active {
    background: #008a67;
}
.swiper-slide-active {
    z-index: 2;
}
.swiper-slide-next {
    z-index: 1;
}
.works_swiper_slide_inner {
    position: relative;
    box-shadow: 0rem 30rem 60rem 0rem rgba(0, 0, 0, 0.2);
}
.works_swiper_slide_img {
    display: block;
    width: 100%;
    height: auto;
}
.works_swiper_data {
    position: absolute;
    text-align: left;
    left: 0rem;
    width: 100%;
    height: 100%;
    opacity: 0;
    transition: opacity 0.4s;
}
.swiper-slide-active .works_swiper_data {
    opacity: 1;
}
.works_swiper_data_tag {
    display: inline-block;
    color: #008a67;
    background: #fff;
    border-radius: 9999px;
}
.works_swiper_data dd {
    color: #fff;
}
.works_swiper_data_deco {
    position: absolute;
    overflow: hidden;
}
.works_swiper_data_deco_circle {
    background: #fff;
    position: relative;
    border-radius: 50%;
    opacity: 0;
    transform: translateY(100rem);
}
.is_animated .swiper-slide-active .works_swiper_data_deco_circle {
    opacity: 1;
    transform: translateY(0rem);
    transition: opacity 0.4s 0.6s, transform 0.4s 0.6s;
}
.works_swiper_data_deco_line {
    position: absolute;
    left: 50%;
    border-right: 1px solid #fff;
    margin-left: -0.5px;
    height: 100%;
    clip-path: polygon(0% 100%, 100% 100%, 100% 100%, 0% 100%);
}
.is_animated .swiper-slide-active .works_swiper_data_deco_line {
    clip-path: polygon(0% 100%, 100% 100%, 100% 0%, 0% 0%);
    transition: clip-path 0.4s 1s;
}
.works_swiper_data dl {
    opacity: 0;
    transform: translateX(-40rem);
    transition: opacity 0.4s 1.4s, transform 0.4s 1.4s;
}
.is_animated .swiper-slide-active .works_swiper_data dl {
    opacity: 1;
    transform: translateX(0rem);
}
.works_swiper_button_prev {
    position: absolute;
    overflow: hidden;
    background: #008a67;
    z-index: 11;
    border: 1px solid #008a67;
    border-radius: 50%;
}
.works_swiper_button_prev_inner {
    display: flex;
    justify-content: center;
    align-items: center;
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
}
.works_swiper_button_prev_inner::before {
    content: '';
    border-top: 1px solid #fff;
    border-left: 1px solid #fff;
}
.swiper-button-disabled .works_swiper_button_prev_inner::before {
    border-color: #008a67;
}
.works_swiper_button_next {
    position: absolute;
    overflow: hidden;
    background: #008a67;
    z-index: 11;
    border: 1px solid #008a67;
    border-radius: 50%;
}
.works_swiper_button_next_inner {
    display: flex;
    justify-content: center;
    align-items: center;
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
}
.works_swiper_button_next_inner::before {
    content: '';
    border-top: 1px solid #fff;
    border-left: 1px solid #fff;
}
.swiper-button-disabled .works_swiper_button_next_inner::before {
    border-color: #008a67;
}
.swiper-button-disabled {
    background: #fff;
}

.animation_ready .works_ttl_0 {
    display: inline-block;
    opacity: 0;
    transform: translateY(20rem);
}
.animation_ready .works_ttl_1 {
    opacity: 0;
    transform: translateY(20rem);
}
.animation_ready .works_ttl_path {
    stroke-dasharray: 2000;
    stroke-dashoffset: 2000;
}
.animation_ready .works_ttl_2 {
    opacity: 0;
    transform-origin: 0% 100%;
    transform: rotate(-30deg);
}
.animation_ready .works_img_wrap {
    opacity: 0;
    transform: translateY(20rem);
}
.animation_ready .works_txt {
    opacity: 0;
    transform: translateY(20rem);
}
.animation_loaded .is_animated .works_ttl_0 {
    opacity: 1;
    transform: translateY(0rem);
    transition: opacity 0.4s, transform 0.4s;
}
.animation_loaded .is_animated .works_ttl_1 {
    opacity: 1;
    transform: translateY(0rem);
    transition: opacity 0.4s 0.4s, transform 0.4s 0.4s;
}
.animation_loaded .is_animated .works_ttl_path {
    stroke-dashoffset: 0;
    transition: stroke-dashoffset 0.8s 0.4s;
}
.animation_loaded .is_animated .works_ttl_2 {
    opacity: 1;
    transform: rotate(0deg);
    transition: opacity 0.4s 0.8s, transform 0.4s 0.8s;
}
.animation_loaded .is_animated .works_img_wrap {
    opacity: 1;
    transform: translateY(0rem);
    transition: opacity 0.4s 1.2s, transform 0.4s 1.2s;
}
.animation_loaded .is_animated .works_txt {
    opacity: 1;
    transform: translateY(0rem);
    transition: opacity 0.4s 1.6s, transform 0.4s 1.6s;
}
.is_swiper_ready.is_animated .works_swiper_slide_over {
    transition: transform 0.6s, opacity 0.6s;
}

.animation_loaded .is_animated.is_swiper_ready .works_swiper_slide_inner {
    opacity: 1;
    transform: translateY(0rem);
    transition: opacity 0.8s 0s, transform 0.8s 0s;
}
.animation_loaded .is_animated.is_swiper_ready .anim_swiper_slide_timing_1 {
    transition-delay: 0.4s;
}
.animation_loaded .is_animated.is_swiper_ready .anim_swiper_slide_timing_2 {
    transition-delay: 0.6s;
}
.animation_loaded .is_animated.is_swiper_ready .anim_swiper_slide_timing_3 {
    transition-delay: 0.8s;
}
.animation_loaded .is_animated.is_swiper_ready .anim_swiper_slide_timing_4 {
    transition-delay: 1s;
}
.animation_ready .works_swiper_slide_inner {
    opacity: 0;
    transform: translateY(20rem);
}
.animation_ready .works::before {
    opacity: 0;
    transform: translateX(30%);
}
.animation_loaded .works.is_animated::before {
    opacity: 1;
    transform: translateX(0%);
    transition: opacity 0.4s 0s, transform 0.4s 0s;
}
@media (min-width: 751px) {
    .works {
        height: 1080rem;
    }
    .works::before {
        height: 578rem;
    }
    .works .section_ttl {
        margin-top: 121rem;
    }
    .works .section_ttl_en {
        top: 180rem;
    }
    .works_slider_wrap {
        height: 640rem;
        margin-top: -23rem;
        width: 1600rem;
        margin-left: -120rem;
    }
    .works .section_more_btn_wrap {
        margin-top: -104rem;
    }
    .works_swiper {
        width: 481rem;
        height: 338rem;
        padding-top: 192rem;
        left: -350rem;
    }
    .works_swiper .swiper-slide {
        width: 481rem;
        height: 338rem;
        margin-right: -65rem;
    }
    .works_swiper_slide_over {
        transform: translateY(-192rem);
    }
    .works_swiper .swiper-slide-active + .swiper-slide .works_swiper_slide_over,
    .works_swiper .swiper-slide-duplicate-active + .swiper-slide .works_swiper_slide_over {
        transform: translateY(-96rem);
    }
    .works_swiper .swiper-slide-next + .swiper-slide .works_swiper_slide_over,
    .works_swiper .swiper-slide-duplicate-next + .swiper-slide .works_swiper_slide_over {
        transform: translateY(-192rem);
    }
    body .swiper-container-horizontal > .swiper-pagination-bullets {
        top: 609rem;
        width: 222rem;
        left: 15rem;
    }
    body .swiper-container-horizontal > .swiper-pagination-bullets .swiper-pagination-bullet {
        width: 13rem;
        height: 13rem;
    }
    .works_swiper_data {
        top: -210rem;
        padding: 80rem 104rem;
    }
    .works_swiper_data_tag {
        font-size: 14rem;
        line-height: 2.2;
        padding-inline: 17rem;
    }
    .works_swiper_data dd {
        margin-top: 8rem;
        font-size: 15rem;
        line-height: 1.9;
    }
    .works_swiper_data_deco {
        top: 51rem;
        left: 58rem;
        width: 13rem;
        height: 238rem;
    }
    .works_swiper_data_deco_circle {
        width: 13rem;
        height: 13rem;
    }
    .works_swiper_data_deco_line {
        top: 7rem;
    }
    .works_swiper_button_prev {
        top: 596rem;
        left: -89rem;
        width: 40rem;
        height: 40rem;
    }
    .works_swiper_button_prev_inner::before {
        width: 16rem;
        height: 16rem;
        transform: translateX(4rem) scaleY(0.6) rotate(-45deg);
    }
    .works_swiper_button_next {
        top: 596rem;
        left: 300rem;
        width: 40rem;
        height: 40rem;
    }
    .works_swiper_button_next_inner::before {
        width: 16rem;
        height: 16rem;
        transform: translateX(-4rem) scaleY(0.6) rotate(135deg);
    }
    @media (hover: hover) {
        .works_swiper_button_next:not(.swiper-button-disabled),
        .works_swiper_button_prev:not(.swiper-button-disabled) {
            cursor: pointer;
        }
        .works_swiper_button_next:not(.swiper-button-disabled):hover .works_swiper_button_next_inner {
            animation: works_swiper_button_next forwards 0.4s 0s;
        }
        @keyframes works_swiper_button_next {
            0% {
                transform: translateX(0);
            }
            50% {
                transform: translateX(100%);
            }
            50.1% {
                transform: translateX(-100%);
            }
            100% {
                transform: translateX(0%);
            }
        }
        .works_swiper_button_prev:not(.swiper-button-disabled):hover .works_swiper_button_prev_inner {
            animation: works_swiper_button_prev forwards 0.4s 0s;
        }
        @keyframes works_swiper_button_prev {
            0% {
                transform: translateX(0);
            }
            50% {
                transform: translateX(-100%);
            }
            50.1% {
                transform: translateX(100%);
            }
            100% {
                transform: translateX(0%);
            }
        }
    }
}
@media (max-width: 750px) {
    .works {
        height: 1600rem;
    }
    .works::before {
        height: 908rem;
    }
    .works .section_ttl {
        margin-top: 188rem;
    }
    .works .section_ttl_en {
        top: 172rem;
    }
    .works_slider_wrap {
        height: 786rem;
        margin-top: 65rem;
        width: 750rem;
        margin-left: 0;
    }
    .works .section_more_btn_wrap {
        margin-top: 51rem;
    }
    .works_swiper {
        width: 580rem;
        height: 648rem;
        padding-top: 240rem;
        left: -30rem;
    }
    .works_swiper .swiper-slide {
        width: 580rem;
        height: 648rem;
        margin-right: -68rem;
    }
    .works_swiper_slide_over {
        transform: translateY(-192rem);
    }
    .works_swiper .swiper-slide-active + .swiper-slide .works_swiper_slide_over,
    .works_swiper .swiper-slide-duplicate-active + .swiper-slide .works_swiper_slide_over {
        transform: translateY(-120rem);
    }
    .works_swiper .swiper-slide-next + .swiper-slide .works_swiper_slide_over,
    .works_swiper .swiper-slide-duplicate-next + .swiper-slide .works_swiper_slide_over {
        transform: translateY(-192rem);
    }
    body .swiper-container-horizontal > .swiper-pagination-bullets {
        top: 734rem;
        width: 232rem;
        left: 136rem;
    }
    body .swiper-container-horizontal > .swiper-pagination-bullets .swiper-pagination-bullet {
        width: 16rem;
        height: 16rem;
    }
    .works_swiper_data {
        display: flex;
        align-items: self-end;
        bottom: 320rem;
        padding: 110rem 85rem;
    }
    .works_swiper_data_tag {
        font-size: 22rem;
        line-height: 1.8;
        padding-inline: 22rem;
    }
    .works_swiper_data dd {
        margin-top: 20rem;
        font-size: 24rem;
        line-height: 1.8;
        letter-spacing: 0;
    }
    .works_swiper_data_deco {
        bottom: 20rem;
        left: 58rem;
        width: 13rem;
        height: 70%;
    }
    .works_swiper_data_deco_circle {
        width: 13rem;
        height: 13rem;
    }
    .works_swiper_data_deco_line {
        top: 7rem;
    }
    .works_swiper_button_prev {
        top: 710rem;
        left: 10rem;
        width: 63rem;
        height: 63rem;
    }
    .works_swiper_button_prev_inner::before {
        width: 28rem;
        height: 28rem;
        transform: translateX(7rem) scaleY(0.4) rotate(-45deg);
    }
    .works_swiper_button_next {
        top: 710rem;
        left: 430rem;
        width: 63rem;
        height: 63rem;
    }
    .works_swiper_button_next_inner::before {
        width: 28rem;
        height: 28rem;
        transform: translateX(-7rem) scaleY(0.4) rotate(135deg);
    }
}

/* recruit */
.recruit {
    position: relative;
}
.recruit .section_ttl {
    color: #008a67;
}
.recruit .section_ttl_ureshii_1 {
    background: url(../img/default/ureshii_g.svg) no-repeat 50% 50% / contain;
}
.recruit .section_ttl_ureshii_2 {
    background: url(../img/default/ureshii_deco_g.svg) no-repeat 50% 50% / contain;
}
.recruit .section_more_btn_wrap {
    display: block;
}
.recruit .section_more_btn {
    margin-inline: auto;
    color: #008a67;
}
.recruit_txt {
    text-align: center;
}
.recruit .section_ttl_en {
    color: #008a67;
}
.recruit .section_ttl_en::before {
    border-color: #008a67;
}
.recruit_list > li {
    position: absolute;
    background: #008a67;
    left: 50%;
    translate: -50%;
    border-radius: 50%;
}
.recruit_item_fukidashi_wrap {
    position: absolute;
    left: 50%;
    translate: -50%;
}
.recruit_item_fukidashi {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    text-align: center;
}
.recruit_item_fukidashi_txt {
    position: relative;
    color: #008a67;
}
.recruit_item_fukidashi_txt b {
    font-weight: 900;
}
.recruit_item_fukidashi::before,
.recruit_item_fukidashi::after {
    content: '';
    position: absolute;
    bottom: 0;
    border-left: 1px solid #008a67;
    transform-origin: 50% 100%;
}
.recruit_item_fukidashi::before {
    rotate: -33deg;
}
.recruit_item_fukidashi::after {
    rotate: 33deg;
}

.recruit_item_cover {
    position: absolute;
    overflow: hidden;
    z-index: 1;
    pointer-events: none;
    left: 0;
    bottom: 0;
    width: 100%;
    height: 200%;
    border-radius: 9999px;
}
.recruit_item_x {
    position: absolute;
    height: auto;
    left: 0;
    bottom: 0;
    width: 100%;
}

/*  */
.animation_ready .recruit_ttl_0 {
    display: inline-block;
    opacity: 0;
    transform: translateY(20rem);
}
.animation_ready .recruit_ttl_1 {
    opacity: 0;
    transform: translateY(20rem);
}
.animation_ready .recruit_ttl_path {
    stroke-dasharray: 2000;
    stroke-dashoffset: 2000;
}
.animation_ready .recruit_ttl_2 {
    opacity: 0;
    transform-origin: 0% 100%;
    transform: rotate(-30deg);
}
.animation_ready .recruit_txt {
    opacity: 0;
    transform: translateY(20rem);
}
.animation_loaded .is_animated .recruit_ttl_0 {
    opacity: 1;
    transform: translateY(0rem);
    transition: opacity 0.4s, transform 0.4s;
}
.animation_loaded .is_animated .recruit_ttl_1 {
    opacity: 1;
    transform: translateY(0rem);
    transition: opacity 0.4s 0.4s, transform 0.4s 0.4s;
}
.animation_loaded .is_animated .recruit_ttl_path {
    stroke-dashoffset: 0;
    transition: stroke-dashoffset 0.8s 0.4s;
}
.animation_loaded .is_animated .recruit_ttl_2 {
    opacity: 1;
    transform: rotate(0deg);
    transition: opacity 0.4s 0.8s, transform 0.4s 0.8s;
}
.animation_loaded .is_animated .recruit_txt {
    opacity: 1;
    transform: translateY(0rem);
    transition: opacity 0.4s 1.2s, transform 0.4s 1.2s;
}

.animation_ready .recruit_list > li {
    transform: scale(0);
}
.animation_ready .recruit_list > li .recruit_item_x {
    transform: translateY(20rem);
    opacity: 0;
}
.animation_loaded .recruit_list > li.is_animated {
    transform: scale(1);
    transition: transform 0.8s 0s;
}
.animation_loaded .recruit_list > li.is_animated .recruit_item_x {
    transform: translateY(0rem);
    opacity: 1;
    transition: transform 0.8s 0.8s, opacity 0.8s 0.8s;
}
.animation_ready .recruit_item_fukidashi {
    opacity: 0;
    transform: translateY(20rem);
}
.animation_loaded .recruit_list > li.is_animated .recruit_item_fukidashi {
    transform: translateY(0rem);
    opacity: 1;
    transition: transform 0.4s 1.6s, opacity 0.4s 1.6s;
}

/*  */
@media (min-width: 751px) {
    .recruit {
        height: 823rem;
    }
    .recruit .section_ttl {
        margin-top: 86rem;
    }
    .recruit .section_more_btn_wrap {
        margin-top: 56rem;
    }
    .recruit_txt {
        margin-top: 55rem;
        font-size: 18rem;
        line-height: 2;
    }
    .recruit .section_ttl_en {
        top: 156rem;
        left: 0rem;
    }
    .recruit_list > li {
        top: 355rem;
        width: 314rem;
        height: 314rem;
    }
    .recruit_list > li:nth-child(1) {
        margin-left: -808rem;
    }
    .recruit_list > li:nth-child(2) {
        margin-left: -431rem;
    }
    .recruit_list > li:nth-child(3) {
        margin-left: 427rem;
    }
    .recruit_list > li:nth-child(4) {
        margin-left: 805rem;
    }
    .recruit_item_fukidashi_wrap {
        top: -130rem;
        width: 225rem;
        height: 53rem;
        margin-left: -8rem;
    }
    .recruit_item_fukidashi_txt {
        font-size: 20rem;
        line-height: 1.5;
        margin-top: -5rem;
    }
    .recruit_item_fukidashi::before,
    .recruit_item_fukidashi::after {
        height: 75%;
    }
    .recruit_item_fukidashi::before {
        left: 22rem;
    }
    .recruit_item_fukidashi::after {
        right: 22rem;
    }
}
@media (max-width: 750px) {
    .recruit {
        height: 1630rem;
    }
    .recruit .section_ttl {
        margin-top: 106rem;
    }
    .recruit .section_more_btn_wrap {
        margin-top: 600rem;
        margin-left: 65rem;
    }
    .recruit_txt {
        margin-top: 51rem;
        font-size: 26rem;
        line-height: 2;
    }
    .recruit .section_ttl_en {
        top: 79rem;
        left: 87rem;
    }
    .recruit_list > li {
        top: 918rem;
        width: 362rem;
        height: 362rem;
    }
    .recruit_list > li:nth-child(1) {
        display: none;
    }
    .recruit_list > li:nth-child(2) {
        margin-left: -213rem;
    }
    .recruit_list > li:nth-child(3) {
        margin-left: 214rem;
    }
    .recruit_list > li:nth-child(4) {
        display: none;
    }
    .recruit_item_fukidashi_wrap {
        top: -146rem;
        width: 360rem;
        height: 83rem;
        margin-left: -218rem;
    }
    .recruit_item_fukidashi_txt {
        font-size: 30rem;
        line-height: 1.7;
        margin-top: -8rem;
    }
    .recruit_item_fukidashi::before,
    .recruit_item_fukidashi::after {
        height: 95%;
    }
    .recruit_item_fukidashi::before {
        left: 45rem;
    }
    .recruit_item_fukidashi::after {
        right: 45rem;
    }
}
