  @-webkit-keyframes blink_animation {
0% {
    opacity: 0;
}
10% {
    opacity: 0;
}
100% {
    opacity: 1;
}
}

@keyframes blink_animation {
0% {
    opacity: 0;
}
10% {
    opacity: 0;
}
100% {
    opacity: 1;
}
}

.kv{
    margin-bottom: 5.4em;
}

.kv-title__main{
    line-height: 1.41;
}

.contents-bg{
    height: 85.1em;
    background-size: auto 85.1em;
}

.box-text {
margin-bottom: 4.5em;
-webkit-transition: opacity 1s ease-out, -webkit-transform 1s cubic-bezier(0.13, 0.38, 0.12, 1);
transition: opacity 1s ease-out, -webkit-transform 1s cubic-bezier(0.13, 0.38, 0.12, 1);
-o-transition: transform 1s cubic-bezier(0.13, 0.38, 0.12, 1), opacity 1s ease-out;
transition: transform 1s cubic-bezier(0.13, 0.38, 0.12, 1), opacity 1s ease-out;
transition: transform 1s cubic-bezier(0.13, 0.38, 0.12, 1), opacity 1s ease-out, -webkit-transform 1s cubic-bezier(0.13, 0.38, 0.12, 1);
-webkit-transform: translateY(2.5em);
    -ms-transform: translateY(2.5em);
        transform: translateY(2.5em);
opacity: 0;
}

.box-text.show {
-webkit-transform: translateY(0);
    -ms-transform: translateY(0);
        transform: translateY(0);
opacity: 1;
}

.box-text::before {
content: " ";
display: inline-block;
position: relative;
background-color: #61a2fb;
width: 0.77em;
height: 0.77em;
border-radius: 50%;
top: -.3em;
margin-right: .9em;
}

.box-text__title {
display: inline-block;
font-size: 1.87em;
font-weight: bold;
margin-bottom: 1.15em;
line-height: 1.5;
letter-spacing: -.02em;
}

.box-textarea {
margin-bottom: 8.75em;
-webkit-transition: opacity 1s ease-out, -webkit-transform 1s cubic-bezier(0.13, 0.38, 0.12, 1);
transition: opacity 1s ease-out, -webkit-transform 1s cubic-bezier(0.13, 0.38, 0.12, 1);
-o-transition: transform 1s cubic-bezier(0.13, 0.38, 0.12, 1), opacity 1s ease-out;
transition: transform 1s cubic-bezier(0.13, 0.38, 0.12, 1), opacity 1s ease-out;
transition: transform 1s cubic-bezier(0.13, 0.38, 0.12, 1), opacity 1s ease-out, -webkit-transform 1s cubic-bezier(0.13, 0.38, 0.12, 1);
-webkit-transform: translateY(2.5em);
    -ms-transform: translateY(2.5em);
        transform: translateY(2.5em);
opacity: 0;
}

.box-textarea.show {
-webkit-transform: translateY(0);
    -ms-transform: translateY(0);
        transform: translateY(0);
opacity: 1;
}

.box-textarea p {
text-align: justify;
color: #000;
letter-spacing: 0.06em;
line-height: 1.87;
}

.box1-inner{
    width: 100%;
    padding: 5em 7.2%;
    border-radius: 1.25em;
    border: 1px solid #dbdfe1;
    background-color: #f3f7fa;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: center;
}

.box1-inner__title{
    font-size: 1.87em;
    text-align: center;
    font-weight: bold;
    color: #479bf6;
}

.box1-inner-list{
    width: 79.83%;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}

.box1-inner-list__item{
    flex:0 0 100%;
    padding: 2.3em 4% 3.3em;
    border-radius: 0.62em;
    background-image: linear-gradient(-45deg, #95ebde, #ffffff 38%);

}

.box1-inner-list__title{
    display: inline-block;
    font-size: 1.25em;
    font-weight: bold;
    margin-bottom: 1.02em;
    line-height: 1.5;
    letter-spacing: -.02em;
}

.box1-inner-list__title:before{
    content: " ";
    display: inline-block;
    position: relative;
    background-color: #61a2fb;
    width: 0.6em;
    height: 0.6em;
    border-radius: 50%;
    top: -0.1em;
    margin-right: 0.5em;
}

.box1-inner-list__subtitle{
    font-weight: bold;
    letter-spacing: 0.06em;
    margin-bottom: 1em;
}

.box1-inner-list__data dl{
    width: 100%;
    display: flex;
    flex-wrap: wrap;
    color: #000;
}

.box1-inner-list__data dt,
.box1-inner-list__data dd{
    line-height: 1.87;
    letter-spacing: 0.06em;
}

.box1-inner-list__data dt{
    width: 5.2em;
}

.box1-inner-list__data dt:after{
    content: ":";
    display: block;
    position: absolute;
    right: 0;
    top: 50%;
    transform: translateY(-50%);
}

.box1-inner-list__data dd{
    padding-left: 0.8em;
    color: #000;

}

.box1-inner-list__data dd a{
    color: #000;
}

.bottom-bg{
    background-color: transparent !important;
}

.contents-bottom{
    padding-top: 18.6em;
}

.contents-bottom .box-title{
    font-size: 3.75em;
    font-weight: bold;
    text-align: center;
    letter-spacing: 0.075em;
    margin-bottom: 0.63em;
    transition: transform 1s cubic-bezier(0.13, 0.38, 0.12, 1), opacity 1s ease-out;
}

.contents-bottom .box-title__text{
    font-size: 1.75em;
    text-align: center;
    letter-spacing: 0.06em;
    margin-bottom: 3.3em;
    transition: transform 1s cubic-bezier(0.13, 0.38, 0.12, 1) 0.3s, opacity 1s ease-out 0.3s;
}

.contents-bottom .box1__btn {
    width: 54.54%;
    margin: 0 auto;
    text-align: center;
    font-size: 1.37em;
    height: 4.11em;
    border-radius: 4.11em;
    background-color: #fff;
    overflow: hidden;
    margin-bottom: 1.6em;
    font-family: "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}

.contents-bottom .box1__btn:first-child{
    height: 5.48em;
    border-radius: 5.48em;
}

.contents-bottom .box1__btn:nth-child(2) {
    margin-bottom: 3.2em;
    -webkit-transition: opacity 1s ease-out 0.9s, -webkit-transform 1s cubic-bezier(0.13, 0.38, 0.12, 1) 0.9s;
    transition: opacity 1s ease-out 0.9s, -webkit-transform 1s cubic-bezier(0.13, 0.38, 0.12, 1) 0.9s;
    -o-transition: transform 1s cubic-bezier(0.13, 0.38, 0.12, 1) 0.9s, opacity 1s ease-out 0.9s;
    transition: transform 1s cubic-bezier(0.13, 0.38, 0.12, 1) 0.9s, opacity 1s ease-out 0.9s;
    transition: transform 1s cubic-bezier(0.13, 0.38, 0.12, 1) 0.9s, opacity 1s ease-out 0.9s, -webkit-transform 1s cubic-bezier(0.13, 0.38, 0.12, 1) 0.9s;
}

.contents-bottom .line-area {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
}

.contents-bottom .line{
    position: absolute;
}

.contents-bottom .line:nth-child(1){
    width: 50%;
    height: 10px;
    left: 50%;
    top: 0;
    background: linear-gradient(to right, #466dfd, #4760ff);
    transition: transform 0.08s cubic-bezier(0.16, 1, 0.3, 1);
    transform-origin: left center;
    transform: scaleX(0.00001);
}

.contents-bottom .line:nth-child(2){
    width: 12%;
    height: 100%;
    top: 0;
    right: 0;
    background-color: #4760ff;
    transition: transform 0.16s cubic-bezier(0.16, 1, 0.3, 1) 0.2s;
    transform-origin: right top;
    transform: scaleY(0.00001);
}

.contents-bottom .line:nth-child(3){
    width: 100%;
    height: 10px;
    left: 0;
    bottom: 0;
    background: linear-gradient(to left, #4760ff, #489bf6);
    transition: transform 0.16s cubic-bezier(0.16, 1, 0.3, 1) 0.1s;
    transform-origin: right center;
    transform: scaleX(0.00001);
}

.contents-bottom .line:nth-child(4){
    width: 12%;
    height: 100%;
    top: 0;
    left: 0;
    background-color: #489bf6;
    transition: transform 0.16s cubic-bezier(0.16, 1, 0.3, 1) 0.05s;
    transform-origin: left bottom;
    transform: scaleY(0.00001);
}

.contents-bottom .line:nth-child(5){
    width: 50%;
    height: 10px;
    left: 0;
    top: 0;
    background: linear-gradient(to right, #489bf6, #466dfd);
    transition: transform 0.16s cubic-bezier(0.16, 1, 0.3, 1);
    transform-origin: left center;
    transform: scaleX(0.00001);
}

.contents-bottom .box1-btn__inner {
    line-height: 4.11em;
    border-radius: 4.11em;
    width: calc(100% - 6px);
    height: calc(100% - 6px);
    left: 3px;
    top: 3px;
    z-index: 1;
    background-color: #fff;
}

.contents-bottom .box1__btn:first-child .box1-btn__inner {
    line-height: 5.25em;
    border-radius: 5.47em;
    
}

.contents-bottom .box1-btn__inner a,
.contents-bottom .box1-btn__inner a:link,
.contents-bottom .box1-btn__inner a:visited {
    -webkit-transition: color 0.5s ease-out;
    -o-transition: color 0.5s ease-out;
    transition: color 0.5s ease-out;
    display: block;
}

@media screen and (min-width: 769px) {
    .contents-bottom .box1__btn:nth-child(2) a,
    .contents-bottom .box1__btn:nth-child(2) a:link,
    .contents-bottom .box1__btn:nth-child(2) a:visited,
    .contents-bottom .box1__btn:nth-child(3) a,
    .contents-bottom .box1__btn:nth-child(3) a:link,
    .contents-bottom .box1__btn:nth-child(3) a:visited {
        font-size: 0.93em;
    }

    .contents-bottom .box1__btn:hover .line-area .line:nth-child(1),
    .contents-bottom .box1__btn:hover .line-area .line:nth-child(3),
    .contents-bottom .box1__btn:hover .line-area .line:nth-child(5) {
        -webkit-transform: scaleX(1);
        -ms-transform: scaleX(1);
        transform: scaleX(1);
    }

    .contents-bottom .box1__btn:hover .line-area .line:nth-child(2),
    .contents-bottom .box1__btn:hover .line-area .line:nth-child(4) {
        -webkit-transform: scaleY(1);
        -ms-transform: scaleY(1);
        transform: scaleY(1);
    }

    .contents-bottom .box1__btn:hover .line-area .line:nth-child(1) {
        -webkit-transition: -webkit-transform 0.08s cubic-bezier(0.16, 1, 0.3, 1);
        transition: -webkit-transform 0.08s cubic-bezier(0.16, 1, 0.3, 1);
        -o-transition: transform 0.08s cubic-bezier(0.16, 1, 0.3, 1);
        transition: transform 0.08s cubic-bezier(0.16, 1, 0.3, 1);
        transition: transform 0.08s cubic-bezier(0.16, 1, 0.3, 1), -webkit-transform 0.08s cubic-bezier(0.16, 1, 0.3, 1);
    }

    .contents-bottom .box1__btn:hover .line-area .line:nth-child(2) {
        -webkit-transition: -webkit-transform 0.12s cubic-bezier(0.16, 1, 0.3, 1) 0.05s;
        transition: -webkit-transform 0.12s cubic-bezier(0.16, 1, 0.3, 1) 0.05s;
        -o-transition: transform 0.12s cubic-bezier(0.16, 1, 0.3, 1) 0.05s;
        transition: transform 0.12s cubic-bezier(0.16, 1, 0.3, 1) 0.05s;
        transition: transform 0.12s cubic-bezier(0.16, 1, 0.3, 1) 0.05s, -webkit-transform 0.12s cubic-bezier(0.16, 1, 0.3, 1) 0.05s;
    }

    .contents-bottom .box1__btn:hover .line-area .line:nth-child(3) {
        -webkit-transition: -webkit-transform 0.18s cubic-bezier(0.16, 1, 0.3, 1) 0.1s;
        transition: -webkit-transform 0.18s cubic-bezier(0.16, 1, 0.3, 1) 0.1s;
        -o-transition: transform 0.18s cubic-bezier(0.16, 1, 0.3, 1) 0.1s;
        transition: transform 0.18s cubic-bezier(0.16, 1, 0.3, 1) 0.1s;
        transition: transform 0.18s cubic-bezier(0.16, 1, 0.3, 1) 0.1s, -webkit-transform 0.18s cubic-bezier(0.16, 1, 0.3, 1) 0.1s;
    }

    .contents-bottom .box1__btn:hover .line-area .line:nth-child(4) {
        -webkit-transition: -webkit-transform 0.22s cubic-bezier(0.16, 1, 0.3, 1) 0.15s;
        transition: -webkit-transform 0.22s cubic-bezier(0.16, 1, 0.3, 1) 0.15s;
        -o-transition: transform 0.22s cubic-bezier(0.16, 1, 0.3, 1) 0.15s;
        transition: transform 0.22s cubic-bezier(0.16, 1, 0.3, 1) 0.15s;
        transition: transform 0.22s cubic-bezier(0.16, 1, 0.3, 1) 0.15s, -webkit-transform 0.22s cubic-bezier(0.16, 1, 0.3, 1) 0.15s;
    }

    .contents-bottom .box1__btn:hover .line-area .line:nth-child(5) {
        -webkit-transition: -webkit-transform 0.25s cubic-bezier(0.16, 1, 0.3, 1) 0.2s;
        transition: -webkit-transform 0.25s cubic-bezier(0.16, 1, 0.3, 1) 0.2s;
        -o-transition: transform 0.25s cubic-bezier(0.16, 1, 0.3, 1) 0.2s;
        transition: transform 0.25s cubic-bezier(0.16, 1, 0.3, 1) 0.2s;
        transition: transform 0.25s cubic-bezier(0.16, 1, 0.3, 1) 0.2s, -webkit-transform 0.25s cubic-bezier(0.16, 1, 0.3, 1) 0.2s;
    }
}

.contents-bottom .box1__btn-bottom {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 4.3em;
    transition: transform 1s cubic-bezier(0.13, 0.38, 0.12, 1) 1.2s, opacity 1s ease-out 1.2s, -webkit-transform 1s cubic-bezier(0.13, 0.38, 0.12, 1) 1.2s;
}

.contents-bottom .box1-bottom__link {
    font-size: 1em;
    font-weight: bold;
}

.contents-bottom .box1-bottom__link.nolink{
    pointer-events: none;
    opacity: 0.4;
}

@media screen and (min-width: 769px) {
    .contents-bottom .box1-bottom__link a:hover{
      -webkit-animation: blink_animation 0.6s ease-out;
      animation: blink_animation 0.6s ease-out;
    }
  }
  
@keyframes blink_animation {
0% {
    opacity: 0;
}
10% {
    opacity: 0;
}
100% {
    opacity: 1;
}
}

.contents-bottom .box1-bottom__link:nth-child(2){
    left: -1.7em;
}

.contents-bottom .box1-bottom__link a,
.contents-bottom .box1-bottom__link a:link,
.contents-bottom .box1-bottom__link a:visited {
    padding-left: 1.8em;
    color: #000;
    text-decoration: none;
}

.contents-bottom .box1-bottom__link a:before {
    content: " ";
    display: block;
    width: 1.25em;
    height: 1.25em;
    position: absolute;
    left: 0;
    top: 50%;
    transform: translateY(-50%);
    background-image: url(/f_recruit/img/f_link_arrow.svg);
    background-repeat: no-repeat;
    background-size: 100% auto;
}

.contents-bottom .box1-btnarea{
    margin-bottom: 7.55em;
}

.copyright{
    display: flex;
    flex-wrap: wrap;
    align-items:end;
    justify-content: center;
    gap: 3.12em;
    padding-bottom: 4em;
}

.copyright-logo{
    width: 8em;
}

.contents-bottom .box-copyright {
    font-size: 0.75em;
    font-weight: 500;
    bottom: 0.4em;
    color: #585858;
    text-align: center;
    -webkit-transition: opacity 1s ease-out 1.5s, -webkit-transform 1s cubic-bezier(0.13, 0.38, 0.12, 1) 1.5s;
    transition: opacity 1s ease-out 1.5s, -webkit-transform 1s cubic-bezier(0.13, 0.38, 0.12, 1) 1.5s;
    -o-transition: transform 1s cubic-bezier(0.13, 0.38, 0.12, 1) 1.5s, opacity 1s ease-out 1.5s;
    transition: transform 1s cubic-bezier(0.13, 0.38, 0.12, 1) 1.5s, opacity 1s ease-out 1.5s;
    transition: transform 1s cubic-bezier(0.13, 0.38, 0.12, 1) 1.5s, opacity 1s ease-out 1.5s, -webkit-transform 1s cubic-bezier(0.13, 0.38, 0.12, 1) 1.5s;
}

@media screen and (max-width: 768px) {
    .kv{
        margin-bottom: 20.5vw;
    }

    .kv-title__main{
        font-size: 8vw;
    }

    .box-textarea{
        margin-bottom: 14.7vw;
    }

    .box-text {
        margin-bottom: 9.8vw;
    }

    .box-text::before {
        width: 2.666vw;
        height: 2.666vw;
        top: -10.4vw;
        margin-right: 2.5vw;
    }

    .box-text__title {
        width: calc(100% - 1em);
        font-size: 6.4vw;
        margin-bottom: 4.25vw;
        letter-spacing: -.05em;
    }

    .box-textarea p{
        line-height: 1.53;
    }

    .contents-bg {
        height: 239vw;
        background-size: auto 239vw;
    }

    .box1-inner{
        padding: 10.4vw 6.15% 5.6vw;
        border-radius: 2.66vw;
    }

    .box1-inner__title{
        font-size: 5.33vw;
        margin: 0 auto 9.3vw;
    }

    .box1-inner-list{
        width: 100%;
    }
    
    .box1-inner-list__item{
        flex: 0 0 100%;
        border-radius: 1.33vw;
        margin-bottom: 4vw;
        padding: 5.3vw 6.5% 5.2vw;
        background-image: linear-gradient(-45deg, #95ebde, #ffffff 50%);
    }

    .box1-inner-list__item:last-child{
        margin-bottom: 0;
    }

    .box1-inner-list__title{
        font-size: 4.53vw;
        margin-bottom: 4.2vw;
    }

    .box1-inner-list__title:before{
        width: 2.66vw;
        height: 2.66vw;
        margin-right: 2vw;
    }

    .box1-inner-list__subtitle{
        font-size: 3.2vw;
    }

    .box1-inner-list__data{
        font-size: 3.2vw;
    }

    .box1-inner-list__data dt{
        width: 16.7vw;
    }

    .box1-inner-list__data dt:after{
        top: 0vw;
        transform: none;
    }

    .box1-inner-list__data dd{
        padding-left: 2.3vw;
        padding-left: 1vw;
        width: calc(100% - 17.2vw);
    }

    .contents-bottom {
        padding-top: 33.2vw;
    }

    .contents-bottom .box-inner{
        width: 86.66%;
    }

    .contents-bottom .box-title{
        font-size: 6.13vw;
        margin-bottom: 1vw;
    }

    .contents-bottom .box-title__main {
        font-size: 6.13vw;
        margin-bottom: 3.8vw;
    }

    .contents-bottom .box-title__text {
        font-size: 3.4vw;
        margin-bottom: 15.7vw;
    }

    .contents-bottom .box1__btn {
        width: 100%;
        font-size: 4vw;
        height: 16vw;
        margin-bottom: 4vw;
    }

    .contents-bottom .box1__btn:first-child {
        height: 19.34vw;
        border-radius: 19.34vw;
    }

    .contents-bottom .box1__btn:nth-child(2) {
        margin-bottom: 13.3vw;
    }

    .contents-bottom .box1__btn-bottom {
        width: 100%;
    }

    .contents-bottom .box1-btn__inner {
        left: auto;
        top: auto;
        width: 100%;
        height: 100%;
        line-height: 16vw;
    }

    .contents-bottom .box1__btn:first-child .box1-btn__inner {
        line-height: 19.34vw;
        height: 19.34vw;
        border-radius: 19.34vw;
    }

    .contents-bottom .box1__btn:first-child a{
        font-size: 4.8vw;
    }

    .contents-bottom .box1__btn-bottom {
        width: 100%;
        gap: 4.5vw;
    }

    .contents-bottom .box1-btnarea{
        margin-bottom: 18.4vw;
    }

    .contents-bottom .box1-bottom__link {
        font-size: 3.46vw;
    }

    .contents-bottom .box1-bottom__link a {
        padding-left: 5.7vw;
    }

    .contents-bottom .box1-bottom__link:nth-child(2) {
        left: 0.5vw;
    }

    .contents-bottom .box1-bottom__link a:before {
        width: 4.6vw;
        height: 4.6vw;
        background-image: url(/f_recruit/img/f_link_arrow-sp.svg);
    }

    .copyright{
        gap: 5vw;
        padding-bottom: 12.26vw;
    }

    .copyright-logo{
        width: 22.13vw;
    }

    .contents-bottom .box-copyright{
        font-size: 2.66vw;
        bottom: 1.4vw;
    }
}