@media print, only screen and (min-width: 1025px) {
  #header .header-wrap::before {
    opacity: 1;
  }
  .content-bg {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100vh;
    background: url(../img/home/home_bg.jpg) no-repeat center/cover;
    z-index: 1;
  }
  .contents {
    position: relative;
    z-index: 2;
  }
  .main-visual {
    position: relative;
    padding-top: 96px;
  }
  .main-visual .title-lead {
    position: absolute;
    top: calc(50% - 68px);
    left: 0;
    width: 100%;
    text-align: center;
    z-index: 2;
  }
  .main-visual .title-lead .ja {
    display: block;
    font-size: 88px;
    font-weight: 700;
    color: #fff;
    letter-spacing: 0.12em;
    text-indent: 0.12em;
    line-height: 1;
  }
  .main-visual .title-lead .en {
    display: block;
    margin-top: 28px;
    font-family: "Michroma", sans-serif;
    font-weight: 400;
    font-size: 20px;
    color: #fff;
    letter-spacing: 0.02em;
    text-indent: 0.02em;
    line-height: 1;
  }
  .main-visual .main-visual-video {
    position: relative;
    display: block;
    width: 100%;
    height: 0;
    padding-top: 46.428%;
    z-index: 1;
  }
  .main-visual .main-visual-video .video {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 1;
  }
  .main-visual .main-visual-video .main-visual-img {
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    width: 100%;
    line-height: 1;
    opacity: 0;
    transition: all 0.3s ease-out;
    z-index: 2;
  }
  .main-visual .main-visual-video .main-visual-img.show {
    opacity: 1;
  }
  .title-section_home .en {
    position: relative;
    display: block;
    width: -moz-fit-content;
    width: fit-content;
    font-family: "Big Shoulders", sans-serif;
    font-size: 88px;
    font-weight: 700;
    color: transparent;
    letter-spacing: 0.02em;
    line-height: 1;
  }
  .title-section_home .en::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    width: 0;
    height: 100%;
    background-color: #fff;
  }
  .title-section_home .ja {
    position: relative;
    display: block;
    width: -moz-fit-content;
    width: fit-content;
    margin-top: 13px;
    font-size: 18px;
    font-weight: 700;
    color: transparent;
    line-height: 1;
  }
  .title-section_home .ja::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    width: 0;
    height: 100%;
    background-color: #fff;
  }
  .title-section_home.text-c {
    text-align: center;
  }
  .title-section_home.text-c .en {
    margin: 0 auto;
    text-indent: 0.02em;
  }
  .title-section_home.text-c .ja {
    margin: 13px auto 0;
    text-indent: 0.04em;
  }
  .title-section_home.color-blue .en::before {
    background-color: #1c4198;
  }
  .title-section_home.color-blue .ja::before {
    background-color: #1c4198;
  }
  .title-section_home.show {
    opacity: 1;
  }
  .title-section_home.show .en {
    animation: title_font 0.1s forwards linear 0.3s;
  }
  .title-section_home.show .en::before {
    animation: title_bg 0.6s forwards linear;
  }
  .title-section_home.show .ja {
    animation: title_font 0.1s forwards linear 0.3s;
  }
  .title-section_home.show .ja::before {
    animation: title_bg 0.6s forwards linear;
  }
  .title-section_home.show.color-blue .en {
    animation: title_font_blue 0.1s forwards linear 0.3s;
  }
  .title-section_home.show.color-blue .ja {
    animation: title_font_blue 0.1s forwards linear 0.3s;
  }
  .title-section_lead_home {
    position: relative;
    padding-top: 40px;
    text-align: center;
  }
  .title-section_lead_home::before {
    content: "";
    position: absolute;
    top: 0;
    left: calc(50% - 20px);
    display: block;
    width: 40px;
    height: 8px;
    background: linear-gradient(90deg, #2eb8da 0%, #3681c4 100%);
  }
  .title-section_lead_home .ja {
    position: relative;
    display: block;
    font-size: 36px;
    font-weight: 700;
    color: #fff;
    line-height: 1;
    text-indent: 0.04em;
    opacity: 0;
    z-index: 2;
  }
  .title-section_lead_home .en {
    position: absolute;
    top: 0;
    left: 50%;
    display: block;
    min-width: 100%;
    font-family: "Michroma", sans-serif;
    font-size: 136px;
    color: transparent;
    white-space: nowrap;
    line-height: 1;
    letter-spacing: 0;
    text-align: center;
    line-height: 85px;
    -webkit-text-stroke-width: 1px;
    -webkit-text-stroke-color: #fff;
    transform: translateX(-50%);
    opacity: 0;
    z-index: 2;
  }
  .title-section_lead_home.show {
    opacity: 1;
  }
  .title-section_lead_home.show .en {
    animation: title_lead_en 0.3s forwards linear 0.2s;
  }
  .title-section_lead_home.show .ja {
    animation: title_lead_ja 0.3s forwards linear;
  }
  .btn-green {
    position: relative;
    display: inline-flex;
    align-items: center;
    width: 280px;
    height: 56px;
    padding-left: 32px;
    font-family: "Michroma", sans-serif;
    font-size: 16px;
    color: #fff;
    background-color: #7fbe26;
  }
  .btn-green::before {
    content: "";
    position: absolute;
    top: calc(50% - 7px);
    right: 32px;
    width: 18px;
    height: 14px;
    background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 18 12"><path fill="%23fff" d="M10.6,10.6l3.6-3.6H0v-2h14.2s-3.6-3.6-3.6-3.6l1.4-1.4,6,6-6,6-1.4-1.4Z"/></svg>');
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
  }
  .btn-green:hover {
    background-color: #1c4198;
  }
  .section-message {
    padding: 120px 40px;
  }
  .section-message .message-wrap {
    position: relative;
    max-width: 1060px;
    margin: 50px auto 0;
    padding: 46px 380px 64px 78px;
    box-sizing: border-box;
  }
  .section-message .message-wrap::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    width: 100%;
    height: 100%;
    border: solid 2px #1c4198;
    box-sizing: border-box;
    transition: all 0.3s ease-out;
    z-index: 1;
  }
  .section-message .message-wrap::after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    width: 0;
    height: 100%;
    background-color: #1c4198;
    z-index: 3;
  }
  .section-message .message-wrap .message-img {
    position: absolute;
    top: calc(50% - 180px);
    right: -30px;
    width: 360px;
    opacity: 0;
    z-index: 4;
  }
  .section-message .message-wrap .message-title {
    position: relative;
    padding-top: 30px;
    font-size: 32px;
    font-weight: 700;
    color: #fff;
    line-height: 52px;
    opacity: 0;
    z-index: 2;
  }
  .section-message .message-wrap .message-title::before {
    content: "";
    position: absolute;
    top: 0;
    left: -20px;
    display: block;
    width: 40px;
    height: 8px;
    background: linear-gradient(90deg, #2eb8da 0%, #3681c4 100%);
  }
  .section-message .message-wrap .message-officer {
    position: relative;
    margin-top: 24px;
    opacity: 0;
    z-index: 2;
  }
  .section-message .message-wrap .message-officer dt span {
    display: inline-block;
    padding: 5px 10px;
    font-size: 14px;
    background-color: #fff;
  }
  .section-message .message-wrap .message-officer dd {
    margin-top: 8px;
  }
  .section-message .message-wrap .message-officer dd span {
    display: inline-block;
    padding: 5px 10px;
    font-size: 14px;
    background-color: #fff;
  }
  .section-message .message-wrap .link {
    position: relative;
    margin-top: 40px;
    line-height: 1;
    opacity: 0;
    z-index: 2;
  }
  .section-message .message-wrap.show {
    opacity: 1;
  }
  .section-message .message-wrap.show::before {
    border: solid 2px #fff;
  }
  .section-message .message-wrap.show::after {
    animation: content_bg 0.6s forwards linear;
  }
  .section-message .message-wrap.show .message-img {
    animation: img_view 0.3s forwards linear 0.5s;
  }
  .section-message .message-wrap.show .message-title {
    animation: content_view 0.1s forwards linear 0.3s;
  }
  .section-message .message-wrap.show .message-officer {
    animation: content_view 0.1s forwards linear 0.3s;
  }
  .section-message .message-wrap.show .link {
    animation: content_view 0.1s forwards linear 0.3s;
  }
  .about-wrap {
    position: relative;
    margin: 50px auto 0;
    padding: 120px 0 0;
    background: url(../img/home/about_bg1.jpg) no-repeat top center/contain #1c4198;
    box-sizing: border-box;
  }
  .about-wrap .about-bg {
    position: absolute;
    top: 0;
    right: 0;
    display: block;
    width: 473px;
    height: 473px;
    z-index: 1;
  }
  .about-wrap .about-bg i {
    position: relative;
    display: block;
    width: 473px;
    height: 0;
    overflow: hidden;
    transition: all 0.5s ease-out;
  }
  .about-wrap .about-bg i::before {
    content: "";
    position: absolute;
    top: 0;
    right: 0;
    display: block;
    width: 473px;
    height: 473px;
    background: url(../img/home/about_bg2.png) no-repeat center/cover;
  }
  .about-wrap .about-bg.show {
    opacity: 1;
  }
  .about-wrap .about-bg.show i {
    height: 473px;
  }
  .about-wrap .section-movie {
    position: relative;
    margin: 110px 0 0 auto;
    width: 50%;
    padding: 120px 40px 120px 105px;
    box-sizing: border-box;
    z-index: 2;
  }
  .about-wrap .section-movie::before {
    content: "";
    position: absolute;
    top: 0;
    left: -100%;
    display: block;
    width: 0;
    height: 100%;
    background: linear-gradient(135deg, #071d51 0%, #000d2c 100%);
    opacity: 0.9;
    z-index: 1;
  }
  .about-wrap .section-movie .movie-wrap {
    position: relative;
    z-index: 2;
  }
  .about-wrap .section-movie .movie-wrap .video-wrap {
    position: absolute;
    top: 10px;
    left: -720px;
    display: block;
    width: 640px;
    opacity: 0;
  }
  .about-wrap .section-movie .movie-wrap .video-wrap .video {
    position: relative;
    width: 100%;
    height: 0;
    padding-bottom: 56.25%;
  }
  .about-wrap .section-movie .movie-wrap .video-wrap .video iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
  }
  .about-wrap .section-movie .movie-wrap .title-movie-lead {
    margin-top: 45px;
    opacity: 0;
  }
  .about-wrap .section-movie .movie-wrap .title-movie-lead span {
    display: inline-block;
    padding: 8px 12px;
    font-size: 24px;
    font-weight: 700;
    line-height: 1;
    text-indent: 0.04em;
    background-color: #fff;
  }
  .about-wrap .section-movie .movie-wrap .text {
    max-width: 480px;
    margin-top: 22px;
    font-size: 14px;
    color: #fff;
    line-height: 32px;
    opacity: 0;
  }
  /* -- animation home -- */
}
@media only screen and (min-width: 1025px) and (max-width: 1280px) {
  .about-wrap .section-movie .movie-wrap .video-wrap {
    left: calc(-50vw - 80px);
    width: 50vw;
  }
}
@media print, only screen and (min-width: 1025px) {
  .about-wrap .section-movie.show {
    opacity: 1;
  }
  .about-wrap .section-movie.show::before {
    animation: movie_bg 1s forwards linear;
  }
  .about-wrap .section-movie.show .video-wrap {
    animation: slide_right 0.3s forwards linear 0.3s;
  }
  .about-wrap .section-movie.show .title-section_home .en {
    animation: title_font 0.1s forwards linear 0.9s;
  }
  .about-wrap .section-movie.show .title-section_home .en::before {
    animation: title_bg 0.6s forwards linear 0.6s;
  }
  .about-wrap .section-movie.show .title-section_home .ja {
    animation: title_font 0.1s forwards linear 0.9s;
  }
  .about-wrap .section-movie.show .title-section_home .ja::before {
    animation: title_bg 0.6s forwards linear 0.6s;
  }
  .about-wrap .section-movie.show .title-movie-lead {
    animation: slide_right 0.2s forwards linear 0.9s;
  }
  .about-wrap .section-movie.show .text {
    animation: slide_right 0.2s forwards linear 1.1s;
  }
  .about-wrap .section-works {
    position: relative;
    padding: 160px 40px;
  }
  .about-wrap .section-works .works-bg {
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    width: 683px;
    height: 683px;
    padding-top: 683px;
    box-sizing: border-box;
    transition: all 0.5s ease-out;
    z-index: 1;
  }
  .about-wrap .section-works .works-bg i {
    position: relative;
    display: block;
    width: 683px;
    height: 0;
    overflow: hidden;
    transition: all 0.5s ease-out;
  }
  .about-wrap .section-works .works-bg i::before {
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    display: block;
    width: 683px;
    height: 683px;
    background: url(../img/home/about_bg3.png) no-repeat center/cover;
  }
  .about-wrap .section-works .works-bg.show {
    opacity: 1;
    padding-top: 0;
  }
  .about-wrap .section-works .works-bg.show i {
    height: 683px;
  }
  .about-wrap .section-works .works-wrap {
    position: relative;
    max-width: 1100px;
    margin: 0px auto;
    padding: 103px 0;
    background-color: #fff;
    box-sizing: border-box;
    z-index: 2;
  }
  .about-wrap .section-works .works-wrap .works-list {
    position: relative;
    display: block;
    width: 85.454%;
    height: 0;
    margin: 20px auto 0;
    padding-top: 40%;
    background: url(../img/home/works_list_bg.png) no-repeat center 57%/59.574%;
  }
  .about-wrap .section-works .works-wrap .works-list li {
    position: absolute;
    display: block;
    width: 29.787%;
    opacity: 0;
    z-index: 10;
  }
  .about-wrap .section-works .works-wrap .works-list li .works-link {
    position: relative;
    display: block;
    width: 100%;
    height: 0;
    padding-top: 100%;
  }
  .about-wrap .section-works .works-wrap .works-list li .works-link .link-wrap {
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    width: 100%;
    height: 100%;
    padding-top: 16.071%;
    border-radius: 100%;
    background: radial-gradient(#e9f1fd 0%, #e9f1fd 54%, #dfebfd 54%, #dfebfd 62%, #ccdffb 62%, #ccdffb 70%);
    box-sizing: border-box;
    transition: all 0.3s;
    line-height: 1;
  }
  .about-wrap .section-works .works-wrap .works-list li .works-link .link-wrap .works-name {
    display: block;
    width: 100%;
    text-align: center;
    color: #1c4198;
  }
  .about-wrap .section-works .works-wrap .works-list li .works-link .link-wrap .works-name .en {
    display: block;
    font-family: "Big Shoulders", sans-serif;
    font-size: clamp(1px, 1.186vw, 14px);
    font-weight: 400;
    letter-spacing: 0.02em;
    text-indent: 0.02em;
    line-height: 1;
  }
  .about-wrap .section-works .works-wrap .works-list li .works-link .link-wrap .works-name .ja {
    display: block;
    margin-top: 3%;
    font-size: clamp(1px, 2.372vw, 28px);
    font-weight: 700;
    text-indent: 0.04em;
    line-height: 1;
  }
  .about-wrap .section-works .works-wrap .works-list li .works-link .link-wrap .works-illust {
    display: block;
    line-height: 1;
  }
  .about-wrap .section-works .works-wrap .works-list li .works-link .btn-more {
    position: absolute;
    right: 0;
    bottom: 0;
    display: block;
    width: 22.857%;
    height: 22.857%;
    text-indent: -9999px;
    border-radius: 100%;
    background: url(../img/home/icon_plus.svg) no-repeat center/37.5% #7fbe26;
    transform: scale(0);
    transition: all 0.3s;
    overflow: hidden;
  }
  .about-wrap .section-works .works-wrap .works-list li .works-link:hover .link-wrap {
    transform: scale(1.05);
  }
  .about-wrap .section-works .works-wrap .works-list li .works-link:hover .btn-more {
    background-color: #1c4198;
  }
  .about-wrap .section-works .works-wrap .works-list li:nth-child(1) {
    top: 0;
    left: 0;
  }
  .about-wrap .section-works .works-wrap .works-list li:nth-child(1) .works-illust {
    width: 48.928%;
    margin: 2.5% auto 0;
  }
  .about-wrap .section-works .works-wrap .works-list li:nth-child(2) {
    top: 0;
    right: 0;
  }
  .about-wrap .section-works .works-wrap .works-list li:nth-child(2) .works-illust {
    width: 52.857%;
    margin: 3.214% auto 0;
  }
  .about-wrap .section-works .works-wrap .works-list li:nth-child(3) {
    left: 35.1065%;
    bottom: 0;
  }
  .about-wrap .section-works .works-wrap .works-list li:nth-child(3) .works-illust {
    width: 46.785%;
    margin: 4.642% auto 0;
  }
  .about-wrap .section-works .works-wrap .works-list.show {
    opacity: 1;
  }
  .about-wrap .section-works .works-wrap .works-list.show::before {
    animation: works_fead 0.3s forwards linear 0.9s;
  }
  .about-wrap .section-works .works-wrap .works-list.show::after {
    animation: works_fead 0.3s forwards linear 0.9s;
  }
  .about-wrap .section-works .works-wrap .works-list.show li:nth-child(1) {
    animation: works_pop 0.3s forwards linear;
  }
  .about-wrap .section-works .works-wrap .works-list.show li:nth-child(1) .btn-more {
    animation: more_zoom 0.3s forwards linear 0.3s;
  }
  .about-wrap .section-works .works-wrap .works-list.show li:nth-child(2) {
    animation: works_pop 0.3s forwards linear 0.3s;
  }
  .about-wrap .section-works .works-wrap .works-list.show li:nth-child(2) .btn-more {
    animation: more_zoom 0.3s forwards linear 0.6s;
  }
  .about-wrap .section-works .works-wrap .works-list.show li:nth-child(3) {
    animation: works_pop 0.3s forwards linear 0.6s;
  }
  .about-wrap .section-works .works-wrap .works-list.show li:nth-child(3) .btn-more {
    animation: more_zoom 0.3s forwards linear 0.9s;
  }
  .about-wrap .section-works .modal-contents {
    display: none;
  }
  .about-wrap .section-data {
    padding-bottom: 160px;
    background: url(../img/home/data_bg.jpg) no-repeat center bottom/contain;
  }
  .about-wrap .section-data .data-head {
    position: relative;
    display: block;
    line-height: 1;
    overflow: hidden;
    z-index: 1;
  }
  .about-wrap .section-data .data-head::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    width: 100%;
    height: 100%;
    background-color: #1c4198;
    z-index: 2;
  }
  .about-wrap .section-data .data-head.show {
    opacity: 1;
  }
  .about-wrap .section-data .data-head.show::before {
    animation: data_head 0.3s forwards linear;
  }
  .about-wrap .section-data .data-wrap {
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
    max-width: 1100px;
    margin: -65px auto 0;
    padding: 120px 40px;
    background: url(../img/home/data_bg_body.png);
    background-size: 16px;
    box-sizing: border-box;
    z-index: 2;
  }
  .about-wrap .section-data .data-wrap .data-body {
    width: 320px;
    margin-right: 120px;
  }
  .about-wrap .section-data .data-wrap .data-body .text {
    margin-top: 38px;
    font-size: 14px;
    color: #fff;
    line-height: 32px;
  }
  .about-wrap .section-data .data-wrap .data-body .link {
    margin-top: 42px;
    line-height: 1;
  }
  .about-wrap .section-data .data-wrap .employees-num {
    flex: 1;
    min-width: 390px;
    max-width: 480px;
    padding: 45px 0;
    background-color: #fff;
  }
  .about-wrap .section-data .data-wrap .employees-num dt {
    font-size: 24px;
    font-weight: 700;
    text-align: center;
    text-indent: 0.04em;
    line-height: 1;
    opacity: 0;
  }
  .about-wrap .section-data .data-wrap .employees-num dd {
    margin-top: 24px;
    padding-bottom: 106px;
    font-size: 32px;
    font-weight: 700;
    color: #1c4198;
    text-align: center;
    text-indent: 0.04em;
    line-height: 1;
    background: url(../img/home/data_illust.png) no-repeat center bottom/304px;
    opacity: 0;
  }
  .about-wrap .section-data .data-wrap .employees-num dd .num {
    display: inline-block;
    font-family: "BIZ UDPGothic", sans-serif;
    font-size: 88px;
    font-weight: 700;
    letter-spacing: -0.04em;
    text-indent: -0.04em;
    transform: translateY(-3px);
  }
  .about-wrap .section-data .data-wrap .employees-num.show {
    opacity: 1;
  }
  .about-wrap .section-data .data-wrap .employees-num.show dt {
    animation: employees_fead 0.3s forwards linear;
  }
  .about-wrap .section-data .data-wrap .employees-num.show dd {
    animation: employees_fead 0.3s forwards linear 0.2s;
  }
  .modal-box {
    position: fixed;
    top: 0;
    left: 0;
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    height: 100%;
    padding: 40px;
    background-color: rgba(28, 65, 152, 0.8);
    opacity: 0;
    box-sizing: border-box;
    transition: opacity 0.3s;
    z-index: 9999;
  }
  .modal-box.open {
    opacity: 1;
  }
  .modal-box .modal-close_area {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 1;
  }
  .modal-box .modal-body {
    flex: 1;
    position: relative;
    width: 100%;
    max-width: 1100px;
    max-height: 100%;
    box-sizing: border-box;
    z-index: 10;
  }
  .modal-box .modal-btn {
    position: absolute;
    top: 0;
    right: 0;
    display: flex;
    justify-content: center;
    align-items: center;
    width: 80px;
    height: 80px;
    margin: 0;
    padding: 0;
    cursor: pointer;
    border: none;
    outline: 0px;
    overflow: hidden;
    transition: all 0.3s;
  }
  .modal-box .modal-btn span {
    position: relative;
    display: block;
    width: 32px;
    height: 32px;
    transform: rotate(45deg);
    z-index: 2;
  }
  .modal-box .modal-btn span::before {
    content: "";
    position: absolute;
    top: calc(50% - 1px);
    left: 0;
    display: block;
    width: 100%;
    height: 2px;
    background-color: #fff;
  }
  .modal-box .modal-btn span::after {
    content: "";
    position: absolute;
    top: 0;
    left: calc(50% - 1px);
    display: block;
    width: 2px;
    height: 100%;
    background-color: #fff;
  }
  .modal-box .modal-btn::before {
    content: "";
    position: absolute;
    top: 0;
    right: -100%;
    width: 200%;
    height: 100%;
    background: linear-gradient(90deg, #2eb8da 0%, #3681c4 50%, #1c4198 100%);
    transition: all 0.3s ease-out;
    z-index: 1;
  }
  .modal-box .modal-btn:hover::before {
    right: 0;
  }
  .modal-box .modal-work-wrap {
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 40px 64px;
    background-color: #fff;
  }
  .modal-box .modal-work-wrap .work-img {
    position: relative;
    flex: 1;
    max-width: 320px;
    height: 320px;
    margin: 40px 40px 40px 0;
    box-sizing: border-box;
  }
  .modal-box .modal-work-wrap .work-img::before {
    content: "";
    position: absolute;
    top: 50%;
    left: 0;
    display: block;
    width: 100%;
    height: 0;
    padding-top: 100%;
    border-radius: 100%;
    background: radial-gradient(#e9f1fd 0%, #e9f1fd 54%, #dfebfd 54%, #dfebfd 62%, #ccdffb 62%, #ccdffb 70%);
    transform: translateY(-50%);
    box-sizing: border-box;
    z-index: 1;
  }
  .modal-box .modal-work-wrap .work-img [class^=illust-] {
    position: absolute;
    top: 50%;
    left: 50%;
    display: block;
    transform: translate(-50%, -50%);
    z-index: 2;
  }
  .modal-box .modal-work-wrap .work-img .illust-skilled {
    width: 60%;
  }
  .modal-box .modal-work-wrap .work-img .illust-technical {
    width: 63.125%;
  }
  .modal-box .modal-work-wrap .work-img .illust-indirect {
    width: 57.1875%;
  }
  .modal-box .modal-work-wrap .work-body {
    width: 615px;
    margin: 40px 0;
  }
  .modal-box .modal-work-wrap .work-body .works-name {
    display: block;
    width: 100%;
    color: #1c4198;
  }
  .modal-box .modal-work-wrap .work-body .works-name .en {
    display: block;
    font-family: "Big Shoulders", sans-serif;
    font-size: 16px;
    line-height: 1;
  }
  .modal-box .modal-work-wrap .work-body .works-name .ja {
    display: block;
    margin-top: 13px;
    font-size: 36px;
    font-weight: 700;
    line-height: 1;
  }
  .modal-box .modal-work-wrap .work-body .text {
    margin-top: 25px;
    font-size: 14px;
    line-height: 28px;
  }
  .modal-box .modal-work-wrap .work-body .work-link {
    display: flex;
    flex-wrap: wrap;
    margin-top: 23px;
    margin-left: -32px;
  }
  .modal-box .modal-work-wrap .work-body .work-link li {
    width: calc(33.333% - 32px);
    margin-top: 20px;
    margin-left: 32px;
    padding-bottom: 14px;
    border-bottom: solid 1px #000d2c;
  }
  .modal-box .modal-work-wrap .work-body .work-link li.half {
    width: calc(50% - 32px);
  }
  .modal-box .modal-work-wrap .work-body .work-link li .btn-more {
    position: relative;
    display: block;
    padding-right: 40px;
    font-size: 14px;
    line-height: 18px;
  }
  .modal-box .modal-work-wrap .work-body .work-link li .btn-more::before {
    content: "";
    position: absolute;
    top: calc(50% - 10px);
    right: 0;
    display: block;
    width: 20px;
    height: 20px;
    background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24.14 24.14"><path fill="%231c4198" fill-rule="evenodd" d="M24.14,12.05c0-3.28-.02-3.69-.08-4.97-.02-1-.21-1.99-.57-2.93-.63-1.62-1.91-2.9-3.54-3.52-.94-.35-1.93-.54-2.93-.55C15.73,0,15.32,0,12.05,0c-3.28,0-3.69.02-4.98.08h0c-1,.02-1.99.21-2.93.57-1.62.63-2.9,1.91-3.52,3.54-.35.94-.54,1.93-.55,2.93C0,8.4,0,8.82,0,12.09s.02,3.69.08,4.97c.02,1,.21,1.99.57,2.93.63,1.62,1.91,2.9,3.54,3.52.94.35,1.93.54,2.93.55,1.29.06,1.7.07,4.97.06,3.28,0,3.69-.02,4.98-.08,1-.02,1.99-.21,2.93-.57,1.62-.63,2.9-1.91,3.52-3.54.35-.94.54-1.93.55-2.93.06-1.29.07-1.7.06-4.98ZM21.91,16.93c0,.77-.15,1.52-.41,2.24-.4,1.05-1.23,1.89-2.29,2.3-.72.27-1.47.41-2.24.42-1.27.06-1.65.07-4.88.08-3.22,0-3.6,0-4.88-.06h0c-.77,0-1.52-.15-2.24-.41-1.05-.4-1.89-1.23-2.3-2.28-.27-.72-.41-1.48-.42-2.24-.06-1.27-.07-1.65-.08-4.88,0-3.22,0-3.6.06-4.88,0-.77.15-1.52.41-2.24.4-1.05,1.23-1.89,2.29-2.29.72-.27,1.47-.41,2.24-.42,1.27-.06,1.65-.07,4.88-.08,3.22,0,3.6,0,4.88.06.77,0,1.52.15,2.24.41,1.06.4,1.89,1.23,2.3,2.29.27.72.41,1.47.42,2.24.06,1.27.07,1.65.08,4.87,0,3.22,0,3.61-.06,4.88Z"/><path fill="%231c4198" fill-rule="evenodd" d="M17.05,5.62c0,.8.65,1.45,1.45,1.45.8,0,1.45-.65,1.45-1.45,0-.8-.65-1.45-1.45-1.45h0c-.8,0-1.45.65-1.45,1.45h0"/><path fill="%231c4198" fill-rule="evenodd" d="M12.07,5.87h0c-3.42,0-6.19,2.79-6.18,6.21,0,3.42,2.79,6.2,6.21,6.19,3.42,0,6.2-2.79,6.19-6.21,0-3.42-2.79-6.2-6.21-6.19ZM12.08,16.1c-2.22,0-4.03-1.79-4.03-4.02,0-2.22,1.79-4.03,4.02-4.03,2.22,0,4.03,1.79,4.03,4.02,0,2.22-1.79,4.03-4.02,4.03Z"/></svg>');
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
  }
  .modal-box .modal-work-wrap .work-body .work-link li .btn-more:hover {
    color: #1c4198;
  }
  .recruit-wrap {
    position: relative;
    padding: 120px 40px 160px;
    overflow: hidden;
  }
  .recruit-wrap .recruit-bg_top {
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    width: 473px;
    height: 473px;
    padding-top: 473px;
    box-sizing: border-box;
    transition: all 0.5s ease-out;
    z-index: 1;
  }
  .recruit-wrap .recruit-bg_top i {
    position: relative;
    display: block;
    width: 473px;
    height: 0;
    overflow: hidden;
    transition: all 0.5s ease-out;
  }
  .recruit-wrap .recruit-bg_top i::before {
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    display: block;
    width: 473px;
    height: 473px;
    background: url(../img/home/recruit_bg1.png) no-repeat center/cover;
  }
  .recruit-wrap .recruit-bg_top.show {
    opacity: 1;
    padding-top: 0;
  }
  .recruit-wrap .recruit-bg_top.show i {
    height: 473px;
  }
  .recruit-wrap .recruit-bg_bottom {
    position: absolute;
    bottom: 0;
    right: 0;
    display: block;
    width: 640px;
    height: 640px;
    overflow: hidden;
    z-index: 1;
  }
  .recruit-wrap .recruit-bg_bottom i {
    position: relative;
    display: block;
    width: 640px;
    height: 0;
    overflow: hidden;
    transition: all 0.5s ease-out;
  }
  .recruit-wrap .recruit-bg_bottom i::before {
    content: "";
    position: absolute;
    top: 0;
    right: 0;
    display: block;
    width: 640px;
    height: 640px;
    background: url(../img/home/recruit_bg2.png) no-repeat center/cover;
  }
  .recruit-wrap .recruit-bg_bottom.show {
    opacity: 1;
  }
  .recruit-wrap .recruit-bg_bottom.show i {
    height: 640px;
  }
  .recruit-wrap .info-list {
    position: relative;
    display: flex;
    justify-content: center;
    margin: 124px auto 0;
    z-index: 2;
  }
  .recruit-wrap .info-list li {
    width: calc(50% - 40px);
    max-width: 510px;
  }
  .recruit-wrap .info-list li:first-child {
    margin-right: 80px;
  }
  .recruit-wrap .info-list li .info-link a {
    position: relative;
    display: block;
    line-height: 0;
  }
  .recruit-wrap .info-list li .info-link a .info-img {
    display: block;
    width: 100%;
    line-height: 0;
  }
  .recruit-wrap .info-list li .info-link a .en {
    position: absolute;
    top: 20px;
    right: 20px;
    display: block;
    font-family: "Big Shoulders", sans-serif;
    font-size: 24px;
    font-weight: 700;
    color: #fff;
    line-height: 1;
    transform: rotate(90deg) translatex(100%);
    transform-origin: top right;
  }
  .recruit-wrap .info-list li .info-link a .btn-arrow {
    position: absolute;
    bottom: 0;
    right: 0;
    display: block;
    width: 56px;
    height: 56px;
    line-height: 0;
    background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 18 12"><path fill="%23fff" d="M10.6,10.6l3.6-3.6H0v-2h14.2s-3.6-3.6-3.6-3.6l1.4-1.4,6,6-6,6-1.4-1.4Z"/></svg>');
    background-size: 18px;
    background-repeat: no-repeat;
    background-position: center;
    background-color: #7fbe26;
  }
  .recruit-wrap .info-list li .info-link a:hover .btn-arrow {
    background-color: #1c4198;
  }
  .recruit-wrap .info-list li .title-info {
    margin-top: 24px;
    line-height: 1;
  }
  .recruit-wrap .info-list li .title-info span {
    display: inline-block;
    font-size: 24px;
    font-weight: 700;
    padding: 8px 10px;
    background-color: #fff;
  }
  .recruit-wrap .info-list li .text {
    margin-top: 10px;
    font-size: 14px;
    color: #fff;
    line-height: 32px;
  }
  .recruit-wrap .section-news {
    position: relative;
    width: 100%;
    max-width: 1100px;
    height: 400px;
    margin: 150px auto 0;
    padding: 90px 120px 0;
    box-sizing: border-box;
    z-index: 1;
  }
  .recruit-wrap .section-news::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    width: 100%;
    height: 100%;
    background: url(../img/home/social_links_bg.jpg) no-repeat center/cover;
    opacity: 0;
    z-index: 1;
  }
  .recruit-wrap .section-news .title-section_home {
    position: relative;
    z-index: 2;
  }
  .recruit-wrap .section-news .news-wrap {
    position: relative;
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-top: 30px;
    opacity: 0;
    z-index: 2;
  }
  .recruit-wrap .section-news .news-wrap .lead {
    font-size: 14px;
    color: #fff;
    line-height: 32px;
  }
  .recruit-wrap .section-news .news-wrap .links-wrap {
    position: relative;
    display: flex;
    align-items: center;
    z-index: 2;
  }
  .recruit-wrap .section-news .news-wrap .links-wrap li {
    margin-left: 16px;
  }
  .recruit-wrap .section-news .news-wrap .links-wrap li a {
    background-color: transparent;
  }
  .recruit-wrap .section-news .news-wrap .links-wrap li a.hd-ig {
    position: relative;
    display: block;
    width: 80px;
    height: 80px;
    text-indent: -9999px;
    border: solid 1px #fff;
    border-radius: 100%;
    background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24.14 24.14"><path fill="%23fff" fill-rule="evenodd" d="M24.14,12.05c0-3.28-.02-3.69-.08-4.97-.02-1-.21-1.99-.57-2.93-.63-1.62-1.91-2.9-3.54-3.52-.94-.35-1.93-.54-2.93-.55C15.73,0,15.32,0,12.05,0c-3.28,0-3.69.02-4.98.08h0c-1,.02-1.99.21-2.93.57-1.62.63-2.9,1.91-3.52,3.54-.35.94-.54,1.93-.55,2.93C0,8.4,0,8.82,0,12.09s.02,3.69.08,4.97c.02,1,.21,1.99.57,2.93.63,1.62,1.91,2.9,3.54,3.52.94.35,1.93.54,2.93.55,1.29.06,1.7.07,4.97.06,3.28,0,3.69-.02,4.98-.08,1-.02,1.99-.21,2.93-.57,1.62-.63,2.9-1.91,3.52-3.54.35-.94.54-1.93.55-2.93.06-1.29.07-1.7.06-4.98ZM21.91,16.93c0,.77-.15,1.52-.41,2.24-.4,1.05-1.23,1.89-2.29,2.3-.72.27-1.47.41-2.24.42-1.27.06-1.65.07-4.88.08-3.22,0-3.6,0-4.88-.06h0c-.77,0-1.52-.15-2.24-.41-1.05-.4-1.89-1.23-2.3-2.28-.27-.72-.41-1.48-.42-2.24-.06-1.27-.07-1.65-.08-4.88,0-3.22,0-3.6.06-4.88,0-.77.15-1.52.41-2.24.4-1.05,1.23-1.89,2.29-2.29.72-.27,1.47-.41,2.24-.42,1.27-.06,1.65-.07,4.88-.08,3.22,0,3.6,0,4.88.06.77,0,1.52.15,2.24.41,1.06.4,1.89,1.23,2.3,2.29.27.72.41,1.47.42,2.24.06,1.27.07,1.65.08,4.87,0,3.22,0,3.61-.06,4.88Z"/><path fill="%23fff" fill-rule="evenodd" d="M17.05,5.62c0,.8.65,1.45,1.45,1.45.8,0,1.45-.65,1.45-1.45,0-.8-.65-1.45-1.45-1.45h0c-.8,0-1.45.65-1.45,1.45h0"/><path fill="%23fff" fill-rule="evenodd" d="M12.07,5.87h0c-3.42,0-6.19,2.79-6.18,6.21,0,3.42,2.79,6.2,6.21,6.19,3.42,0,6.2-2.79,6.19-6.21,0-3.42-2.79-6.2-6.21-6.19ZM12.08,16.1c-2.22,0-4.03-1.79-4.03-4.02,0-2.22,1.79-4.03,4.02-4.03,2.22,0,4.03,1.79,4.03,4.02,0,2.22-1.79,4.03-4.02,4.03Z"/></svg>');
    background-size: 25px;
    background-position: center;
    background-repeat: no-repeat;
    box-sizing: border-box;
    overflow: hidden;
  }
  .recruit-wrap .section-news .news-wrap .links-wrap li a.hd-ig::before {
    content: "";
    position: absolute;
    top: -1px;
    left: -1px;
    display: block;
    width: 80px;
    height: 80px;
    border: solid 1px #fff;
    border-radius: 100%;
    background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24.14 24.14"><path fill="%231c4198" fill-rule="evenodd" d="M24.14,12.05c0-3.28-.02-3.69-.08-4.97-.02-1-.21-1.99-.57-2.93-.63-1.62-1.91-2.9-3.54-3.52-.94-.35-1.93-.54-2.93-.55C15.73,0,15.32,0,12.05,0c-3.28,0-3.69.02-4.98.08h0c-1,.02-1.99.21-2.93.57-1.62.63-2.9,1.91-3.52,3.54-.35.94-.54,1.93-.55,2.93C0,8.4,0,8.82,0,12.09s.02,3.69.08,4.97c.02,1,.21,1.99.57,2.93.63,1.62,1.91,2.9,3.54,3.52.94.35,1.93.54,2.93.55,1.29.06,1.7.07,4.97.06,3.28,0,3.69-.02,4.98-.08,1-.02,1.99-.21,2.93-.57,1.62-.63,2.9-1.91,3.52-3.54.35-.94.54-1.93.55-2.93.06-1.29.07-1.7.06-4.98ZM21.91,16.93c0,.77-.15,1.52-.41,2.24-.4,1.05-1.23,1.89-2.29,2.3-.72.27-1.47.41-2.24.42-1.27.06-1.65.07-4.88.08-3.22,0-3.6,0-4.88-.06h0c-.77,0-1.52-.15-2.24-.41-1.05-.4-1.89-1.23-2.3-2.28-.27-.72-.41-1.48-.42-2.24-.06-1.27-.07-1.65-.08-4.88,0-3.22,0-3.6.06-4.88,0-.77.15-1.52.41-2.24.4-1.05,1.23-1.89,2.29-2.29.72-.27,1.47-.41,2.24-.42,1.27-.06,1.65-.07,4.88-.08,3.22,0,3.6,0,4.88.06.77,0,1.52.15,2.24.41,1.06.4,1.89,1.23,2.3,2.29.27.72.41,1.47.42,2.24.06,1.27.07,1.65.08,4.87,0,3.22,0,3.61-.06,4.88Z"/><path fill="%231c4198" fill-rule="evenodd" d="M17.05,5.62c0,.8.65,1.45,1.45,1.45.8,0,1.45-.65,1.45-1.45,0-.8-.65-1.45-1.45-1.45h0c-.8,0-1.45.65-1.45,1.45h0"/><path fill="%231c4198" fill-rule="evenodd" d="M12.07,5.87h0c-3.42,0-6.19,2.79-6.18,6.21,0,3.42,2.79,6.2,6.21,6.19,3.42,0,6.2-2.79,6.19-6.21,0-3.42-2.79-6.2-6.21-6.19ZM12.08,16.1c-2.22,0-4.03-1.79-4.03-4.02,0-2.22,1.79-4.03,4.02-4.03,2.22,0,4.03,1.79,4.03,4.02,0,2.22-1.79,4.03-4.02,4.03Z"/></svg>');
    background-color: #fff;
    background-size: 25px;
    background-position: center;
    background-repeat: no-repeat;
    box-sizing: border-box;
    opacity: 0;
    transition: all 0.3s ease-out;
  }
  .recruit-wrap .section-news .news-wrap .links-wrap li a.hd-yt {
    position: relative;
    display: block;
    width: 80px;
    height: 80px;
    text-indent: -9999px;
    border: solid 1px #fff;
    border-radius: 100%;
    background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 34.48 24.14"><path fill="%23fff" d="M33.76,3.77c-.4-1.48-1.56-2.65-3.05-3.05-2.69-.72-13.47-.72-13.47-.72,0,0-10.78,0-13.47.72-1.48.4-2.65,1.57-3.05,3.05-.72,2.69-.72,8.3-.72,8.3,0,0,0,5.61.72,8.3.4,1.48,1.57,2.65,3.05,3.05,2.69.72,13.47.72,13.47.72,0,0,10.78,0,13.47-.72,1.48-.4,2.65-1.56,3.05-3.05.72-2.69.72-8.3.72-8.3,0,0,0-5.61-.72-8.3ZM13.79,17.24V6.9l8.96,5.17-8.96,5.17Z"/></svg>');
    background-size: 30px;
    background-position: center;
    background-repeat: no-repeat;
    box-sizing: border-box;
    overflow: hidden;
  }
  .recruit-wrap .section-news .news-wrap .links-wrap li a.hd-yt::before {
    content: "";
    position: absolute;
    top: -1px;
    left: -1px;
    display: block;
    width: 80px;
    height: 80px;
    border: solid 1px #fff;
    border-radius: 100%;
    background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 34.48 24.14"><path fill="%231c4198" d="M33.76,3.77c-.4-1.48-1.56-2.65-3.05-3.05-2.69-.72-13.47-.72-13.47-.72,0,0-10.78,0-13.47.72-1.48.4-2.65,1.57-3.05,3.05-.72,2.69-.72,8.3-.72,8.3,0,0,0,5.61.72,8.3.4,1.48,1.57,2.65,3.05,3.05,2.69.72,13.47.72,13.47.72,0,0,10.78,0,13.47-.72,1.48-.4,2.65-1.56,3.05-3.05.72-2.69.72-8.3.72-8.3,0,0,0-5.61-.72-8.3ZM13.79,17.24V6.9l8.96,5.17-8.96,5.17Z"/></svg>');
    background-color: #fff;
    background-size: 30px;
    background-position: center;
    background-repeat: no-repeat;
    box-sizing: border-box;
    opacity: 0;
    transition: all 0.3s ease-out;
  }
  .recruit-wrap .section-news .news-wrap .links-wrap li a:hover.hd-ig::before {
    opacity: 1;
  }
  .recruit-wrap .section-news .news-wrap .links-wrap li a:hover.hd-yt::before {
    opacity: 1;
  }
  .recruit-wrap .section-news.show {
    opacity: 1;
  }
  .recruit-wrap .section-news.show::before {
    animation: news_view 0.6s forwards linear;
  }
  .recruit-wrap .section-news.show .news-wrap {
    animation: news_view 0.3s forwards linear 0.3s;
  }
  .recruit-wrap .section-entry {
    position: relative;
    display: flex;
    justify-content: space-between;
    width: 100%;
    max-width: 1100px;
    margin: 160px auto 0;
    padding: 120px;
    background-color: #fff;
    box-sizing: border-box;
    z-index: 2;
  }
  .recruit-wrap .section-entry .entry-links {
    width: 520px;
  }
  .recruit-wrap .section-entry .entry-links li {
    opacity: 0;
    border-bottom: solid 1px #1c4198;
  }
  .recruit-wrap .section-entry .entry-links li:first-child {
    border-top: solid 1px #1c4198;
  }
  .recruit-wrap .section-entry .entry-links li a {
    position: relative;
    display: block;
    padding: 35px 104px 35px 0;
    font-size: 18px;
    font-weight: 700;
    color: #1c4198;
  }
  .recruit-wrap .section-entry .entry-links li a .num {
    display: inline-block;
    margin-right: 50px;
    font-family: "Big Shoulders", sans-serif;
    font-size: 20px;
    font-weight: 700;
  }
  .recruit-wrap .section-entry .entry-links li a::before {
    content: "";
    position: absolute;
    top: calc(50% - 28px);
    right: 0;
    display: block;
    width: 56px;
    height: 56px;
    background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 18 12"><path fill="%23fff" d="M10.6,10.6l3.6-3.6H0v-2h14.2s-3.6-3.6-3.6-3.6l1.4-1.4,6,6-6,6-1.4-1.4Z"/></svg>');
    background-size: 18px;
    background-repeat: no-repeat;
    background-position: center;
    background-color: #7fbe26;
    transition: all 0.3s ease-out;
  }
  .recruit-wrap .section-entry .entry-links li a:hover::before {
    background-color: #1c4198;
  }
  .recruit-wrap .section-entry .entry-links.show {
    opacity: 1;
  }
  .recruit-wrap .section-entry .entry-links.show li:nth-child(1) {
    animation: slide_entry 0.2s forwards linear;
  }
  .recruit-wrap .section-entry .entry-links.show li:nth-child(2) {
    animation: slide_entry 0.2s forwards linear 0.1s;
  }
  .recruit-wrap .section-entry .entry-links.show li:nth-child(3) {
    animation: slide_entry 0.2s forwards linear 0.2s;
  }
  .recruit-wrap .section-entry .entry-links.show li:nth-child(4) {
    animation: slide_entry 0.2s forwards linear 0.3s;
  }
  @keyframes slide_up {
    0% {
      transform: translateY(30px);
      opacity: 0;
    }
    to {
      transform: translateY(0);
      opacity: 1;
    }
  }
  @keyframes slide_down {
    0% {
      transform: translateY(-30px);
      opacity: 0;
    }
    to {
      transform: translateY(0);
      opacity: 1;
    }
  }
  @keyframes slide_left {
    0% {
      transform: translateX(30px);
      opacity: 0;
    }
    to {
      transform: translateX(0);
      opacity: 1;
    }
  }
  @keyframes slide_right {
    0% {
      transform: translateX(-30px);
      opacity: 0;
    }
    to {
      transform: translateX(0);
      opacity: 1;
    }
  }
  @keyframes fade_in {
    0% {
      opacity: 0;
    }
    to {
      opacity: 1;
    }
  }
  @keyframes title_bg {
    0% {
      left: 0;
      width: 0;
    }
    33% {
      left: 0;
      width: 100%;
    }
    66% {
      left: 0;
      width: 100%;
    }
    to {
      left: 100%;
      width: 0;
    }
  }
  @keyframes title_font {
    0% {
      color: transparent;
    }
    to {
      color: #fff;
    }
  }
  @keyframes title_font_blue {
    0% {
      color: transparent;
    }
    to {
      color: #1c4198;
    }
  }
  @keyframes title_lead_ja {
    0% {
      transform: translateY(-30px);
      opacity: 0;
    }
    to {
      transform: translateY(0);
      opacity: 1;
    }
  }
  @keyframes title_lead_en {
    0% {
      opacity: 0;
    }
    to {
      opacity: 0.15;
    }
  }
  @keyframes content_bg {
    0% {
      left: 0;
      width: 0;
    }
    33% {
      left: 0;
      width: 100%;
    }
    66% {
      left: 0;
      width: 100%;
    }
    to {
      left: 100%;
      width: 0;
    }
  }
  @keyframes content_view {
    0% {
      opacity: 0;
    }
    to {
      opacity: 1;
    }
  }
  @keyframes img_view {
    0% {
      transform: translateX(30px);
      opacity: 0;
    }
    to {
      transform: translateX(0);
      opacity: 1;
    }
  }
  @keyframes movie_bg {
    0% {
      left: -100%;
      width: 0;
    }
    33% {
      left: -100%;
      width: 200%;
    }
    66% {
      left: -100%;
      width: 200%;
    }
    to {
      left: -117px;
      width: calc(100% + 117px);
    }
  }
  @keyframes movie_bg_sp {
    0% {
      top: 0;
      height: 0;
    }
    to {
      top: 0;
      height: 100%;
    }
  }
  @keyframes data_head {
    0% {
      top: 0;
      height: 100%;
    }
    to {
      top: 100%;
      height: 0;
    }
  }
  @keyframes works_pop {
    0% {
      transform: scale(1.2);
      opacity: 0;
    }
    to {
      transform: scale(1);
      opacity: 1;
    }
  }
  @keyframes works_fead {
    0% {
      opacity: 0;
    }
    to {
      opacity: 0.5;
    }
  }
  @keyframes employees_fead {
    0% {
      opacity: 0;
    }
    to {
      opacity: 1;
    }
  }
  @keyframes more_zoom {
    0% {
      transform: scale(0);
    }
    to {
      transform: scale(1);
    }
  }
  @keyframes news_view {
    0% {
      opacity: 0;
    }
    to {
      opacity: 1;
    }
  }
  @keyframes slide_entry {
    0% {
      transform: translateX(30px);
      opacity: 0;
    }
    to {
      transform: translateX(0);
      opacity: 1;
    }
  }
  .scroll-flag {
    opacity: 0;
  }
  .slide-up.show {
    animation: slide_up 0.3s forwards linear;
  }
  .slide-down.show {
    animation: slide_down 0.3s forwards linear;
  }
  .fade-in.show {
    animation: fade_in 0.3s forwards linear;
  }
}
@media only screen and (max-width: 1024px) and (min-width: 600px) {
  #header .header-wrap::before {
    opacity: 1;
  }
  .content-bg {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100vh;
    background: url(../img/home/home_bg.jpg) no-repeat center/cover;
    z-index: 1;
  }
  .contents {
    position: relative;
    z-index: 2;
  }
  .main-visual {
    position: relative;
    padding-top: 76.8px;
  }
  .main-visual .title-lead {
    position: absolute;
    top: calc(50% - 54.4px);
    left: 0;
    width: 100%;
    text-align: center;
    z-index: 2;
  }
  .main-visual .title-lead .ja {
    display: block;
    font-size: 70.4px;
    font-weight: 700;
    color: #fff;
    letter-spacing: 0.12em;
    text-indent: 0.12em;
    line-height: 1;
  }
  .main-visual .title-lead .en {
    display: block;
    margin-top: 22.4px;
    font-family: "Michroma", sans-serif;
    font-weight: 400;
    font-size: 16px;
    color: #fff;
    letter-spacing: 0.02em;
    text-indent: 0.02em;
    line-height: 1;
  }
  .main-visual .main-visual-video {
    position: relative;
    display: block;
    width: 100%;
    height: 0;
    padding-top: 46.428%;
    z-index: 1;
  }
  .main-visual .main-visual-video .video {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 1;
  }
  .main-visual .main-visual-video .main-visual-img {
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    width: 100%;
    line-height: 1;
    opacity: 0;
    transition: all 0.3s ease-out;
    z-index: 2;
  }
  .main-visual .main-visual-video .main-visual-img.show {
    opacity: 1;
  }
  .title-section_home .en {
    position: relative;
    display: block;
    width: -moz-fit-content;
    width: fit-content;
    font-family: "Big Shoulders", sans-serif;
    font-size: 70.4px;
    font-weight: 700;
    color: transparent;
    letter-spacing: 0.02em;
    line-height: 1;
  }
  .title-section_home .en::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    width: 0;
    height: 100%;
    background-color: #fff;
  }
  .title-section_home .ja {
    position: relative;
    display: block;
    width: -moz-fit-content;
    width: fit-content;
    margin-top: 10.4px;
    font-size: 14.4px;
    font-weight: 700;
    color: transparent;
    line-height: 1;
  }
  .title-section_home .ja::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    width: 0;
    height: 100%;
    background-color: #fff;
  }
  .title-section_home.text-c {
    text-align: center;
  }
  .title-section_home.text-c .en {
    margin: 0 auto;
    text-indent: 0.02em;
  }
  .title-section_home.text-c .ja {
    margin: 10.4px auto 0;
    text-indent: 0.04em;
  }
  .title-section_home.color-blue .en::before {
    background-color: #1c4198;
  }
  .title-section_home.color-blue .ja::before {
    background-color: #1c4198;
  }
  .title-section_home.show {
    opacity: 1;
  }
  .title-section_home.show .en {
    animation: title_font 0.1s forwards linear 0.3s;
  }
  .title-section_home.show .en::before {
    animation: title_bg 0.6s forwards linear;
  }
  .title-section_home.show .ja {
    animation: title_font 0.1s forwards linear 0.3s;
  }
  .title-section_home.show .ja::before {
    animation: title_bg 0.6s forwards linear;
  }
  .title-section_home.show.color-blue .en {
    animation: title_font_blue 0.1s forwards linear 0.3s;
  }
  .title-section_home.show.color-blue .ja {
    animation: title_font_blue 0.1s forwards linear 0.3s;
  }
  .title-section_lead_home {
    position: relative;
    padding-top: 32px;
    text-align: center;
  }
  .title-section_lead_home::before {
    content: "";
    position: absolute;
    top: 0;
    left: calc(50% - 16px);
    display: block;
    width: 32px;
    height: 6.4px;
    background: linear-gradient(90deg, #2eb8da 0%, #3681c4 100%);
  }
  .title-section_lead_home .ja {
    position: relative;
    display: block;
    font-size: 28.8px;
    font-weight: 700;
    color: #fff;
    line-height: 1;
    text-indent: 0.04em;
    opacity: 0;
    z-index: 2;
  }
  .title-section_lead_home .en {
    position: absolute;
    top: 0;
    left: 50%;
    display: block;
    min-width: 100%;
    font-family: "Michroma", sans-serif;
    font-size: 108.8px;
    color: transparent;
    white-space: nowrap;
    line-height: 1;
    letter-spacing: 0;
    text-align: center;
    line-height: 68px;
    -webkit-text-stroke-width: 1px;
    -webkit-text-stroke-color: #fff;
    transform: translateX(-50%);
    opacity: 0;
    z-index: 2;
  }
  .title-section_lead_home.show {
    opacity: 1;
  }
  .title-section_lead_home.show .en {
    animation: title_lead_en 0.3s forwards linear 0.2s;
  }
  .title-section_lead_home.show .ja {
    animation: title_lead_ja 0.3s forwards linear;
  }
  .btn-green {
    position: relative;
    display: inline-flex;
    align-items: center;
    width: 224px;
    height: 44.8px;
    padding-left: 25.6px;
    font-family: "Michroma", sans-serif;
    font-size: 12.8px;
    color: #fff;
    background-color: #7fbe26;
  }
  .btn-green::before {
    content: "";
    position: absolute;
    top: calc(50% - 5.6px);
    right: 25.6px;
    width: 14.4px;
    height: 11.2px;
    background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 18 12"><path fill="%23fff" d="M10.6,10.6l3.6-3.6H0v-2h14.2s-3.6-3.6-3.6-3.6l1.4-1.4,6,6-6,6-1.4-1.4Z"/></svg>');
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
  }
  .btn-green:hover {
    background-color: #1c4198;
  }
  .section-message {
    padding: 96px 32px;
  }
  .section-message .message-wrap {
    position: relative;
    max-width: 848px;
    margin: 40px auto 0;
    padding: 36.8px 208px 51.2px 62.4px;
    box-sizing: border-box;
  }
  .section-message .message-wrap::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    width: 100%;
    height: 100%;
    border: solid 1.6px #fff;
    box-sizing: border-box;
    z-index: 1;
  }
  .section-message .message-wrap::after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    width: 0;
    height: 100%;
    background-color: #fff;
    z-index: 3;
  }
  .section-message .message-wrap .message-img {
    position: absolute;
    top: calc(50% - 104px);
    right: -24px;
    width: 208px;
    opacity: 0;
    z-index: 4;
  }
  .section-message .message-wrap .message-title {
    position: relative;
    padding-top: 24px;
    font-size: 25.6px;
    font-weight: 700;
    color: #fff;
    line-height: 41.6px;
    opacity: 0;
    z-index: 2;
  }
  .section-message .message-wrap .message-title::before {
    content: "";
    position: absolute;
    top: 0;
    left: -16px;
    display: block;
    width: 32px;
    height: 6.4px;
    background: linear-gradient(90deg, #2eb8da 0%, #3681c4 100%);
  }
  .section-message .message-wrap .message-officer {
    position: relative;
    margin-top: 19.2px;
    opacity: 0;
    z-index: 2;
  }
  .section-message .message-wrap .message-officer dt span {
    display: inline-block;
    padding: 4px 8px;
    font-size: 11.2px;
    background-color: #fff;
  }
  .section-message .message-wrap .message-officer dd {
    margin-top: 6.4px;
  }
  .section-message .message-wrap .message-officer dd span {
    display: inline-block;
    padding: 4px 8px;
    font-size: 11.2px;
    background-color: #fff;
  }
  .section-message .message-wrap .link {
    position: relative;
    margin-top: 32px;
    line-height: 1;
    opacity: 0;
    z-index: 2;
  }
  .section-message .message-wrap.show {
    opacity: 1;
  }
  .section-message .message-wrap.show::after {
    animation: content_bg 0.6s forwards linear;
  }
  .section-message .message-wrap.show .message-img {
    animation: img_view 0.3s forwards linear 0.5s;
  }
  .section-message .message-wrap.show .message-title {
    animation: content_view 0.1s forwards linear 0.3s;
  }
  .section-message .message-wrap.show .message-officer {
    animation: content_view 0.1s forwards linear 0.3s;
  }
  .section-message .message-wrap.show .link {
    animation: content_view 0.1s forwards linear 0.3s;
  }
  .about-wrap {
    position: relative;
    margin: 40px auto 0;
    padding: 96px 0 0;
    background: url(../img/home/about_bg1.jpg) no-repeat top center/contain #1c4198;
    box-sizing: border-box;
  }
  .about-wrap .about-bg {
    position: absolute;
    top: 0;
    right: 0;
    display: block;
    width: 378.4px;
    height: 378.4px;
    z-index: 1;
  }
  .about-wrap .about-bg i {
    position: relative;
    display: block;
    width: 378.4px;
    height: 0;
    overflow: hidden;
    transition: all 0.5s ease-out;
  }
  .about-wrap .about-bg i::before {
    content: "";
    position: absolute;
    top: 0;
    right: 0;
    display: block;
    width: 378.4px;
    height: 378.4px;
    background: url(../img/home/about_bg2.png) no-repeat center/cover;
  }
  .about-wrap .about-bg.show {
    opacity: 1;
  }
  .about-wrap .about-bg.show i {
    height: 378.4px;
  }
  .about-wrap .section-movie {
    position: relative;
    margin: 88px 0 0 auto;
    width: 50%;
    padding: 96px 32px 96px 84px;
    box-sizing: border-box;
    z-index: 2;
  }
  .about-wrap .section-movie::before {
    content: "";
    position: absolute;
    top: 0;
    left: -100%;
    display: block;
    width: 0;
    height: 100%;
    background: linear-gradient(135deg, #071d51 0%, #000d2c 100%);
    opacity: 0.9;
    z-index: 1;
  }
  .about-wrap .section-movie .movie-wrap {
    position: relative;
    z-index: 2;
  }
  .about-wrap .section-movie .movie-wrap .video-wrap {
    position: absolute;
    top: 8px;
    left: calc(-50vw - 64px);
    display: block;
    width: 50vw;
    opacity: 0;
  }
  .about-wrap .section-movie .movie-wrap .video-wrap .video {
    position: relative;
    width: 100%;
    height: 0;
    padding-bottom: 56.25%;
  }
  .about-wrap .section-movie .movie-wrap .video-wrap .video iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
  }
  .about-wrap .section-movie .movie-wrap .title-movie-lead {
    margin-top: 36px;
    opacity: 0;
  }
  .about-wrap .section-movie .movie-wrap .title-movie-lead span {
    display: inline-block;
    padding: 6.4px 9.6px;
    font-size: 19.2px;
    font-weight: 700;
    line-height: 1;
    text-indent: 0.04em;
    background-color: #fff;
  }
  .about-wrap .section-movie .movie-wrap .text {
    max-width: 384px;
    margin-top: 17.6px;
    font-size: 11.2px;
    color: #fff;
    line-height: 25.6px;
    opacity: 0;
  }
  .about-wrap .section-movie.show {
    opacity: 1;
  }
  .about-wrap .section-movie.show::before {
    animation: movie_bg 1s forwards linear;
  }
  .about-wrap .section-movie.show .video-wrap {
    animation: slide_right 0.3s forwards linear 0.3s;
  }
  .about-wrap .section-movie.show .title-section_home .en {
    animation: title_font 0.1s forwards linear 0.9s;
  }
  .about-wrap .section-movie.show .title-section_home .en::before {
    animation: title_bg 0.6s forwards linear 0.6s;
  }
  .about-wrap .section-movie.show .title-section_home .ja {
    animation: title_font 0.1s forwards linear 0.9s;
  }
  .about-wrap .section-movie.show .title-section_home .ja::before {
    animation: title_bg 0.6s forwards linear 0.6s;
  }
  .about-wrap .section-movie.show .title-movie-lead {
    animation: slide_right 0.2s forwards linear 0.9s;
  }
  .about-wrap .section-movie.show .text {
    animation: slide_right 0.2s forwards linear 1.1s;
  }
  /* -- animation home -- */
}
@media only screen and (max-width: 1024px) and (min-width: 600px) and (max-width: 799px) {
  .about-wrap .section-movie {
    position: relative;
    width: 100%;
    margin: 88px 0 0 auto;
    padding: 96px 32px;
  }
  .about-wrap .section-movie::before {
    left: 0;
    width: 100%;
  }
  .about-wrap .section-movie .title-section_home {
    text-align: center;
  }
  .about-wrap .section-movie .title-section_home .en {
    margin: 0 auto;
    text-indent: 0.02em;
  }
  .about-wrap .section-movie .title-section_home .ja {
    margin: 10.4px auto 0;
    text-indent: 0.04em;
  }
  .about-wrap .section-movie .movie-wrap {
    max-width: 640px;
    margin: 0 auto;
  }
  .about-wrap .section-movie .movie-wrap .title-section_home {
    text-align: center;
  }
  .about-wrap .section-movie .movie-wrap .title-section_home .en {
    text-indent: 0.02em;
  }
  .about-wrap .section-movie .movie-wrap .title-section_home .ja {
    text-indent: 0.04em;
  }
  .about-wrap .section-movie .movie-wrap .video-wrap {
    position: static;
    width: 480px;
    margin: 36px auto 0;
  }
  .about-wrap .section-movie .movie-wrap .text {
    max-width: 100%;
  }
  .about-wrap .section-movie.show::before {
    animation: movie_bg_sp 0.5s forwards linear;
  }
  .about-wrap .section-movie.show .video-wrap {
    animation: slide_down 0.3s forwards linear 0.8s;
  }
  .about-wrap .section-movie.show .title-section_home .en {
    animation: title_font 0.1s forwards linear 0.6s;
  }
  .about-wrap .section-movie.show .title-section_home .en::before {
    animation: title_bg 0.6s forwards linear 0.3s;
  }
  .about-wrap .section-movie.show .title-section_home .ja {
    animation: title_font 0.1s forwards linear 0.6s;
  }
  .about-wrap .section-movie.show .title-section_home .ja::before {
    animation: title_bg 0.6s forwards linear 0.3s;
  }
  .about-wrap .section-movie.show .title-movie-lead {
    animation: slide_down 0.2s forwards linear 1s;
  }
  .about-wrap .section-movie.show .text {
    animation: slide_down 0.2s forwards linear 1.2s;
  }
}
@media only screen and (max-width: 1024px) and (min-width: 600px) {
  .about-wrap .section-works {
    position: relative;
    padding: 128px 32px;
  }
  .about-wrap .section-works .works-bg {
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    width: 546.4px;
    height: 546.4px;
    padding-top: 546.4px;
    box-sizing: border-box;
    transition: all 0.5s ease-out;
    z-index: 1;
  }
  .about-wrap .section-works .works-bg i {
    position: relative;
    display: block;
    width: 546.4px;
    height: 0;
    overflow: hidden;
    transition: all 0.5s ease-out;
  }
  .about-wrap .section-works .works-bg i::before {
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    display: block;
    width: 546.4px;
    height: 546.4px;
    background: url(../img/home/about_bg3.png) no-repeat center/cover;
  }
  .about-wrap .section-works .works-bg.show {
    opacity: 1;
    padding-top: 0;
  }
  .about-wrap .section-works .works-bg.show i {
    height: 546.4px;
  }
  .about-wrap .section-works .works-wrap {
    position: relative;
    max-width: 880px;
    margin: 0px auto;
    padding: 82.4px 0;
    background-color: #fff;
    box-sizing: border-box;
    z-index: 2;
  }
  .about-wrap .section-works .works-wrap .works-list {
    position: relative;
    display: block;
    width: 85.454%;
    height: 0;
    margin: 16px auto 0;
    padding-top: 40%;
    background: url(../img/home/works_list_bg.png) no-repeat center 57%/59.574%;
  }
  .about-wrap .section-works .works-wrap .works-list li {
    position: absolute;
    display: block;
    width: 29.787%;
    opacity: 0;
    z-index: 10;
  }
  .about-wrap .section-works .works-wrap .works-list li .works-link {
    position: relative;
    display: block;
    width: 100%;
    height: 0;
    padding-top: 100%;
  }
  .about-wrap .section-works .works-wrap .works-list li .works-link .link-wrap {
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    width: 100%;
    height: 100%;
    padding-top: 16.071%;
    border-radius: 100%;
    background: radial-gradient(#e9f1fd 0%, #e9f1fd 54%, #dfebfd 54%, #dfebfd 62%, #ccdffb 62%, #ccdffb 70%);
    box-sizing: border-box;
    transition: all 0.3s;
    line-height: 1;
  }
  .about-wrap .section-works .works-wrap .works-list li .works-link .link-wrap .works-name {
    display: block;
    width: 100%;
    text-align: center;
    color: #1c4198;
  }
  .about-wrap .section-works .works-wrap .works-list li .works-link .link-wrap .works-name .en {
    display: block;
    font-family: "Big Shoulders", sans-serif;
    font-size: clamp(1px, 1.186vw, 11.2px);
    font-weight: 400;
    letter-spacing: 0.04em;
    text-indent: 0.04em;
    line-height: 1;
  }
  .about-wrap .section-works .works-wrap .works-list li .works-link .link-wrap .works-name .ja {
    display: block;
    margin-top: 3%;
    font-size: clamp(1px, 2.372vw, 22.4px);
    font-weight: 700;
    text-indent: 0.04em;
    line-height: 1;
  }
  .about-wrap .section-works .works-wrap .works-list li .works-link .link-wrap .works-illust {
    display: block;
    line-height: 1;
  }
  .about-wrap .section-works .works-wrap .works-list li .works-link .btn-more {
    position: absolute;
    right: 0;
    bottom: 0;
    display: block;
    width: 22.857%;
    height: 22.857%;
    text-indent: -9999px;
    border-radius: 100%;
    background: url(../img/home/icon_plus.svg) no-repeat center/37.5% #7fbe26;
    transform: scale(0);
    transition: all 0.3s;
    overflow: hidden;
  }
  .about-wrap .section-works .works-wrap .works-list li .works-link:hover .link-wrap {
    transform: scale(1.05);
  }
  .about-wrap .section-works .works-wrap .works-list li .works-link:hover .btn-more {
    background-color: #1c4198;
  }
  .about-wrap .section-works .works-wrap .works-list li:nth-child(1) {
    top: 0;
    left: 0;
  }
  .about-wrap .section-works .works-wrap .works-list li:nth-child(1) .works-illust {
    width: 48.928%;
    margin: 2.5% auto 0;
  }
  .about-wrap .section-works .works-wrap .works-list li:nth-child(2) {
    top: 0;
    right: 0;
  }
  .about-wrap .section-works .works-wrap .works-list li:nth-child(2) .works-illust {
    width: 52.857%;
    margin: 3.214% auto 0;
  }
  .about-wrap .section-works .works-wrap .works-list li:nth-child(3) {
    left: 35.1065%;
    bottom: 0;
  }
  .about-wrap .section-works .works-wrap .works-list li:nth-child(3) .works-illust {
    width: 46.785%;
    margin: 4.642% auto 0;
  }
}
@media only screen and (max-width: 1024px) and (min-width: 600px) and (max-width: 660px) {
  .about-wrap .section-works .works-wrap .works-list {
    padding-top: 91.743%;
    background: url(../img/home/works_list_bg_sp.png) no-repeat center 43%/79.51%;
  }
  .about-wrap .section-works .works-wrap .works-list li {
    position: absolute;
    display: block;
    width: 46.666%;
    opacity: 0;
    z-index: 10;
  }
  .about-wrap .section-works .works-wrap .works-list li .works-link .link-wrap {
    padding-top: 15.357%;
  }
  .about-wrap .section-works .works-wrap .works-list li .works-link .link-wrap .works-name .en {
    font-size: clamp(1px, 7.142vw, 16px);
  }
  .about-wrap .section-works .works-wrap .works-list li .works-link .link-wrap .works-name .ja {
    margin-top: 4%;
    font-size: clamp(1px, 11.428vw, 25.6px);
  }
  .about-wrap .section-works .works-wrap .works-list li .works-link .btn-more {
    width: 27%;
    height: 27%;
    background: url(../img/home/icon_plus.svg) no-repeat center/30% #7fbe26;
  }
  .about-wrap .section-works .works-wrap .works-list li .works-link:hover .link-wrap {
    transform: scale(1.05);
  }
  .about-wrap .section-works .works-wrap .works-list li .works-link:hover .btn-more {
    background-color: #1c4198;
  }
  .about-wrap .section-works .works-wrap .works-list li:nth-child(1) .works-illust {
    width: 48.928%;
    margin: 2.5% auto 0;
  }
  .about-wrap .section-works .works-wrap .works-list li:nth-child(2) .works-illust {
    width: 52.857%;
    margin: 3.214% auto 0;
  }
  .about-wrap .section-works .works-wrap .works-list li:nth-child(3) {
    left: 26.667%;
  }
  .about-wrap .section-works .works-wrap .works-list li:nth-child(3) .works-illust {
    width: 46.785%;
    margin: 4.642% auto 0;
  }
}
@media only screen and (max-width: 1024px) and (min-width: 600px) {
  .about-wrap .section-works .works-wrap .works-list.show {
    opacity: 1;
  }
  .about-wrap .section-works .works-wrap .works-list.show::before {
    animation: works_fead 0.3s forwards linear 0.9s;
  }
  .about-wrap .section-works .works-wrap .works-list.show::after {
    animation: works_fead 0.3s forwards linear 0.9s;
  }
  .about-wrap .section-works .works-wrap .works-list.show li:nth-child(1) {
    animation: works_pop 0.3s forwards linear;
  }
  .about-wrap .section-works .works-wrap .works-list.show li:nth-child(1) .btn-more {
    animation: more_zoom 0.3s forwards linear 0.3s;
  }
  .about-wrap .section-works .works-wrap .works-list.show li:nth-child(2) {
    animation: works_pop 0.3s forwards linear 0.3s;
  }
  .about-wrap .section-works .works-wrap .works-list.show li:nth-child(2) .btn-more {
    animation: more_zoom 0.3s forwards linear 0.6s;
  }
  .about-wrap .section-works .works-wrap .works-list.show li:nth-child(3) {
    animation: works_pop 0.3s forwards linear 0.6s;
  }
  .about-wrap .section-works .works-wrap .works-list.show li:nth-child(3) .btn-more {
    animation: more_zoom 0.3s forwards linear 0.9s;
  }
  .about-wrap .section-works .modal-contents {
    display: none;
  }
  .about-wrap .section-data {
    padding-bottom: 128px;
    background: url(../img/home/data_bg.jpg) no-repeat center bottom/contain;
  }
  .about-wrap .section-data .data-head {
    position: relative;
    display: block;
    line-height: 1;
    overflow: hidden;
    z-index: 1;
  }
  .about-wrap .section-data .data-head::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    width: 100%;
    height: 100%;
    background-color: #1c4198;
    z-index: 2;
  }
  .about-wrap .section-data .data-head.show {
    opacity: 1;
  }
  .about-wrap .section-data .data-head.show::before {
    animation: data_head 0.3s forwards linear;
  }
  .about-wrap .section-data .data-wrap {
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
    max-width: 880px;
    margin: -32px auto 0;
    padding: 96px 32px;
    background: url(../img/home/data_bg_body.png);
    background-size: 12.8px;
    box-sizing: border-box;
    z-index: 2;
  }
  .about-wrap .section-data .data-wrap .data-body {
    max-width: 256px;
    margin-right: 112px;
  }
  .about-wrap .section-data .data-wrap .data-body .text {
    margin-top: 30.4px;
    font-size: 11.2px;
    color: #fff;
    line-height: 25.6px;
  }
  .about-wrap .section-data .data-wrap .data-body .link {
    margin-top: 33.6px;
    line-height: 1;
  }
  .about-wrap .section-data .data-wrap .employees-num {
    flex: 1;
    min-width: 312px;
    max-width: 384px;
    padding: 36px 0;
    background-color: #fff;
  }
  .about-wrap .section-data .data-wrap .employees-num dt {
    font-size: 19.2px;
    font-weight: 700;
    text-align: center;
    text-indent: 0.04em;
    line-height: 1;
    opacity: 0;
  }
  .about-wrap .section-data .data-wrap .employees-num dd {
    margin-top: 19.2px;
    padding-bottom: 84.8px;
    font-size: 25.6px;
    font-weight: 700;
    color: #1c4198;
    text-align: center;
    text-indent: 0.04em;
    line-height: 1;
    background: url(../img/home/data_illust.png) no-repeat center bottom/243.2px;
    opacity: 0;
  }
  .about-wrap .section-data .data-wrap .employees-num dd .num {
    display: inline-block;
    font-family: "BIZ UDPGothic", sans-serif;
    font-size: 70.4px;
    font-weight: 700;
    letter-spacing: -0.04em;
    text-indent: -0.04em;
    transform: translateY(-2.4px);
  }
  .about-wrap .section-data .data-wrap .employees-num.show {
    opacity: 1;
  }
  .about-wrap .section-data .data-wrap .employees-num.show dt {
    animation: employees_fead 0.3s forwards linear;
  }
  .about-wrap .section-data .data-wrap .employees-num.show dd {
    animation: employees_fead 0.3s forwards linear 0.2s;
  }
}
@media only screen and (max-width: 1024px) and (min-width: 600px) and (max-width: 810px) {
  .about-wrap .section-data .data-wrap {
    justify-content: space-between;
  }
  .about-wrap .section-data .data-wrap .data-body {
    margin-right: 32px;
  }
}
@media only screen and (max-width: 1024px) and (min-width: 600px) and (max-width: 730px) {
  .about-wrap .section-data .data-wrap .employees-num {
    width: clamp(240px, 52.602vw, 384px);
    min-width: auto;
    padding: clamp(28px, 4.931vw, 36px) 0;
  }
  .about-wrap .section-data .data-wrap .employees-num dt {
    font-size: clamp(11.2px, 2.63vw, 19.2px);
  }
  .about-wrap .section-data .data-wrap .employees-num dd {
    margin-top: clamp(11.2px, 2.63vw, 19.2px);
    padding-bottom: clamp(11.2px, 11.616vw, 84.8px);
    font-size: clamp(14.4px, 3.506vw, 25.6px);
    background: url(../img/home/data_illust.png) no-repeat center bottom/clamp(160px, 33.315vw, 243.2px);
  }
  .about-wrap .section-data .data-wrap .employees-num dd .num {
    font-size: clamp(16px, 9.643vw, 70.4px);
  }
}
@media only screen and (max-width: 1024px) and (min-width: 600px) {
  .modal-box {
    position: fixed;
    top: 0;
    left: 0;
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    height: 100%;
    padding: 32px;
    background-color: rgba(28, 65, 152, 0.8);
    opacity: 0;
    box-sizing: border-box;
    transition: opacity 0.3s;
    z-index: 9999;
  }
  .modal-box.open {
    opacity: 1;
  }
  .modal-box .modal-close_area {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 1;
  }
  .modal-box .modal-body {
    flex: 1;
    position: relative;
    width: 100%;
    max-width: 880px;
    max-height: 100%;
    box-sizing: border-box;
    z-index: 10;
  }
  .modal-box .modal-btn {
    position: absolute;
    top: 0;
    right: 0;
    display: flex;
    justify-content: center;
    align-items: center;
    width: 64px;
    height: 64px;
    margin: 0;
    padding: 0;
    cursor: pointer;
    border: none;
    outline: 0px;
    overflow: hidden;
    transition: all 0.3s;
  }
  .modal-box .modal-btn span {
    position: relative;
    display: block;
    width: 25.6px;
    height: 25.6px;
    transform: rotate(45deg);
    z-index: 2;
  }
  .modal-box .modal-btn span::before {
    content: "";
    position: absolute;
    top: calc(50% - 0.8px);
    left: 0;
    display: block;
    width: 100%;
    height: 1.6px;
    background-color: #fff;
  }
  .modal-box .modal-btn span::after {
    content: "";
    position: absolute;
    top: 0;
    left: calc(50% - 0.8px);
    display: block;
    width: 1.6px;
    height: 100%;
    background-color: #fff;
  }
  .modal-box .modal-btn::before {
    content: "";
    position: absolute;
    top: 0;
    right: -100%;
    width: 200%;
    height: 100%;
    background: linear-gradient(90deg, #2eb8da 0%, #3681c4 50%, #1c4198 100%);
    transition: all 0.3s ease-out;
    z-index: 1;
  }
  .modal-box .modal-btn:hover::before {
    right: 0;
  }
  .modal-box .modal-work-wrap {
    display: flex;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;
    padding: 16px;
    background-color: #fff;
  }
  .modal-box .modal-work-wrap .work-img {
    position: relative;
    flex: 1;
    max-width: 200px;
    min-width: 200px;
    min-height: 200px;
    margin: 16px;
    box-sizing: border-box;
  }
  .modal-box .modal-work-wrap .work-img::before {
    content: "";
    position: absolute;
    top: 50%;
    left: 0;
    display: block;
    width: 100%;
    height: 0;
    padding-top: 100%;
    border-radius: 100%;
    background: radial-gradient(#e9f1fd 0%, #e9f1fd 54%, #dfebfd 54%, #dfebfd 62%, #ccdffb 62%, #ccdffb 70%);
    transform: translateY(-50%);
    box-sizing: border-box;
    z-index: 1;
  }
  .modal-box .modal-work-wrap .work-img [class^=illust-] {
    position: absolute;
    top: 50%;
    left: 50%;
    display: block;
    transform: translate(-50%, -50%);
    z-index: 2;
  }
  .modal-box .modal-work-wrap .work-img .illust-skilled {
    width: 60%;
  }
  .modal-box .modal-work-wrap .work-img .illust-technical {
    width: 63.125%;
  }
  .modal-box .modal-work-wrap .work-img .illust-indirect {
    width: 57.1875%;
  }
  .modal-box .modal-work-wrap .work-body {
    width: 492px;
    min-width: 368px;
    margin: 16px;
  }
  .modal-box .modal-work-wrap .work-body .works-name {
    display: block;
    width: 100%;
    color: #1c4198;
  }
  .modal-box .modal-work-wrap .work-body .works-name .en {
    display: block;
    font-family: "Big Shoulders", sans-serif;
    font-size: 12.8px;
    line-height: 1;
  }
  .modal-box .modal-work-wrap .work-body .works-name .ja {
    display: block;
    margin-top: 10.4px;
    font-size: 28.8px;
    font-weight: 700;
    line-height: 1;
  }
  .modal-box .modal-work-wrap .work-body .text {
    margin-top: 20px;
    font-size: 11.2px;
    line-height: 22.4px;
  }
  .modal-box .modal-work-wrap .work-body .work-link {
    display: flex;
    flex-wrap: wrap;
    margin-top: 18.4px;
    margin-left: -25.6px;
  }
  .modal-box .modal-work-wrap .work-body .work-link li {
    width: calc(33.333% - 25.6px);
    margin-top: 16px;
    margin-left: 25.6px;
    padding-bottom: 11.2px;
    border-bottom: solid 1px #000d2c;
  }
  .modal-box .modal-work-wrap .work-body .work-link li.half {
    width: calc(50% - 25.6px);
  }
  .modal-box .modal-work-wrap .work-body .work-link li .btn-more {
    position: relative;
    display: block;
    padding-right: 32px;
    font-size: 11.2px;
    line-height: 14.4px;
  }
  .modal-box .modal-work-wrap .work-body .work-link li .btn-more::before {
    content: "";
    position: absolute;
    top: calc(50% - 8px);
    right: 0;
    display: block;
    width: 16px;
    height: 16px;
    background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24.14 24.14"><path fill="%231c4198" fill-rule="evenodd" d="M24.14,12.05c0-3.28-.02-3.69-.08-4.97-.02-1-.21-1.99-.57-2.93-.63-1.62-1.91-2.9-3.54-3.52-.94-.35-1.93-.54-2.93-.55C15.73,0,15.32,0,12.05,0c-3.28,0-3.69.02-4.98.08h0c-1,.02-1.99.21-2.93.57-1.62.63-2.9,1.91-3.52,3.54-.35.94-.54,1.93-.55,2.93C0,8.4,0,8.82,0,12.09s.02,3.69.08,4.97c.02,1,.21,1.99.57,2.93.63,1.62,1.91,2.9,3.54,3.52.94.35,1.93.54,2.93.55,1.29.06,1.7.07,4.97.06,3.28,0,3.69-.02,4.98-.08,1-.02,1.99-.21,2.93-.57,1.62-.63,2.9-1.91,3.52-3.54.35-.94.54-1.93.55-2.93.06-1.29.07-1.7.06-4.98ZM21.91,16.93c0,.77-.15,1.52-.41,2.24-.4,1.05-1.23,1.89-2.29,2.3-.72.27-1.47.41-2.24.42-1.27.06-1.65.07-4.88.08-3.22,0-3.6,0-4.88-.06h0c-.77,0-1.52-.15-2.24-.41-1.05-.4-1.89-1.23-2.3-2.28-.27-.72-.41-1.48-.42-2.24-.06-1.27-.07-1.65-.08-4.88,0-3.22,0-3.6.06-4.88,0-.77.15-1.52.41-2.24.4-1.05,1.23-1.89,2.29-2.29.72-.27,1.47-.41,2.24-.42,1.27-.06,1.65-.07,4.88-.08,3.22,0,3.6,0,4.88.06.77,0,1.52.15,2.24.41,1.06.4,1.89,1.23,2.3,2.29.27.72.41,1.47.42,2.24.06,1.27.07,1.65.08,4.87,0,3.22,0,3.61-.06,4.88Z"/><path fill="%231c4198" fill-rule="evenodd" d="M17.05,5.62c0,.8.65,1.45,1.45,1.45.8,0,1.45-.65,1.45-1.45,0-.8-.65-1.45-1.45-1.45h0c-.8,0-1.45.65-1.45,1.45h0"/><path fill="%231c4198" fill-rule="evenodd" d="M12.07,5.87h0c-3.42,0-6.19,2.79-6.18,6.21,0,3.42,2.79,6.2,6.21,6.19,3.42,0,6.2-2.79,6.19-6.21,0-3.42-2.79-6.2-6.21-6.19ZM12.08,16.1c-2.22,0-4.03-1.79-4.03-4.02,0-2.22,1.79-4.03,4.02-4.03,2.22,0,4.03,1.79,4.03,4.02,0,2.22-1.79,4.03-4.02,4.03Z"/></svg>');
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
  }
  .modal-box .modal-work-wrap .work-body .work-link li .btn-more:hover {
    color: #1c4198;
  }
  .recruit-wrap {
    position: relative;
    padding: 96px 32px 128px;
    overflow: hidden;
  }
  .recruit-wrap .recruit-bg_top {
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    width: 378.4px;
    height: 378.4px;
    padding-top: 378.4px;
    box-sizing: border-box;
    transition: all 0.5s ease-out;
    z-index: 1;
  }
  .recruit-wrap .recruit-bg_top i {
    position: relative;
    display: block;
    width: 378.4px;
    height: 0;
    overflow: hidden;
    transition: all 0.5s ease-out;
  }
  .recruit-wrap .recruit-bg_top i::before {
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    display: block;
    width: 378.4px;
    height: 378.4px;
    background: url(../img/home/recruit_bg1.png) no-repeat center/cover;
  }
  .recruit-wrap .recruit-bg_top.show {
    opacity: 1;
    padding-top: 0;
  }
  .recruit-wrap .recruit-bg_top.show i {
    height: 378.4px;
  }
  .recruit-wrap .recruit-bg_bottom {
    position: absolute;
    bottom: 0;
    right: 0;
    display: block;
    width: 512px;
    height: 512px;
    overflow: hidden;
    z-index: 1;
  }
  .recruit-wrap .recruit-bg_bottom i {
    position: relative;
    display: block;
    width: 512px;
    height: 0;
    overflow: hidden;
    transition: all 0.5s ease-out;
  }
  .recruit-wrap .recruit-bg_bottom i::before {
    content: "";
    position: absolute;
    top: 0;
    right: 0;
    display: block;
    width: 512px;
    height: 512px;
    background: url(../img/home/recruit_bg2.png) no-repeat center/cover;
  }
  .recruit-wrap .recruit-bg_bottom.show {
    opacity: 1;
  }
  .recruit-wrap .recruit-bg_bottom.show i {
    height: 512px;
  }
  .recruit-wrap .info-list {
    position: relative;
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    width: calc(100% + 64px);
    margin: 67.2px 0 0 -32px;
    padding: 0;
    z-index: 2;
  }
  .recruit-wrap .info-list li {
    width: calc(50% - 64px);
    max-width: 408px;
    min-width: 336px;
    margin: 32px 32px 0;
  }
  .recruit-wrap .info-list li .info-link a {
    position: relative;
    display: block;
    line-height: 0;
  }
  .recruit-wrap .info-list li .info-link a .info-img {
    display: block;
    width: 100%;
    line-height: 0;
  }
  .recruit-wrap .info-list li .info-link a .en {
    position: absolute;
    top: 16px;
    right: 16px;
    display: block;
    font-family: "Big Shoulders", sans-serif;
    font-size: 19.2px;
    font-weight: 700;
    color: #fff;
    line-height: 1;
    transform: rotate(90deg) translatex(100%);
    transform-origin: top right;
  }
  .recruit-wrap .info-list li .info-link a .btn-arrow {
    position: absolute;
    bottom: 0;
    right: 0;
    display: block;
    width: 44.8px;
    height: 44.8px;
    line-height: 0;
    background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 18 12"><path fill="%23fff" d="M10.6,10.6l3.6-3.6H0v-2h14.2s-3.6-3.6-3.6-3.6l1.4-1.4,6,6-6,6-1.4-1.4Z"/></svg>');
    background-size: 14.4px;
    background-repeat: no-repeat;
    background-position: center;
    background-color: #7fbe26;
  }
  .recruit-wrap .info-list li .info-link a:hover .btn-arrow {
    background-color: #1c4198;
  }
  .recruit-wrap .info-list li .title-info {
    margin-top: 19.2px;
    line-height: 1;
  }
  .recruit-wrap .info-list li .title-info span {
    display: inline-block;
    font-size: 19.2px;
    font-weight: 700;
    padding: 6.4px 8px;
    background-color: #fff;
  }
  .recruit-wrap .info-list li .text {
    margin-top: 8px;
    font-size: 11.2px;
    color: #fff;
    line-height: 25.6px;
  }
  .recruit-wrap .section-news {
    position: relative;
    width: 100%;
    max-width: 880px;
    margin: 120px auto 0;
    padding: 48px 48px;
    box-sizing: border-box;
    z-index: 1;
  }
  .recruit-wrap .section-news::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    width: 100%;
    height: 100%;
    background: url(../img/home/social_links_bg.jpg) no-repeat center/cover;
    opacity: 0;
    z-index: 1;
  }
  .recruit-wrap .section-news .title-section_home {
    position: relative;
    z-index: 2;
  }
  .recruit-wrap .section-news .news-wrap {
    position: relative;
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-top: 24px;
    opacity: 0;
    z-index: 2;
  }
  .recruit-wrap .section-news .news-wrap .lead {
    font-size: 11.2px;
    color: #fff;
    line-height: 25.6px;
  }
  .recruit-wrap .section-news .news-wrap .links-wrap {
    display: flex;
    align-items: center;
  }
  .recruit-wrap .section-news .news-wrap .links-wrap li {
    margin-left: 12.8px;
  }
  .recruit-wrap .section-news .news-wrap .links-wrap li a {
    background-color: transparent;
  }
  .recruit-wrap .section-news .news-wrap .links-wrap li a.hd-ig {
    position: relative;
    display: block;
    width: 64px;
    height: 64px;
    text-indent: -9999px;
    border: solid 1px #fff;
    border-radius: 100%;
    background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24.14 24.14"><path fill="%23fff" fill-rule="evenodd" d="M24.14,12.05c0-3.28-.02-3.69-.08-4.97-.02-1-.21-1.99-.57-2.93-.63-1.62-1.91-2.9-3.54-3.52-.94-.35-1.93-.54-2.93-.55C15.73,0,15.32,0,12.05,0c-3.28,0-3.69.02-4.98.08h0c-1,.02-1.99.21-2.93.57-1.62.63-2.9,1.91-3.52,3.54-.35.94-.54,1.93-.55,2.93C0,8.4,0,8.82,0,12.09s.02,3.69.08,4.97c.02,1,.21,1.99.57,2.93.63,1.62,1.91,2.9,3.54,3.52.94.35,1.93.54,2.93.55,1.29.06,1.7.07,4.97.06,3.28,0,3.69-.02,4.98-.08,1-.02,1.99-.21,2.93-.57,1.62-.63,2.9-1.91,3.52-3.54.35-.94.54-1.93.55-2.93.06-1.29.07-1.7.06-4.98ZM21.91,16.93c0,.77-.15,1.52-.41,2.24-.4,1.05-1.23,1.89-2.29,2.3-.72.27-1.47.41-2.24.42-1.27.06-1.65.07-4.88.08-3.22,0-3.6,0-4.88-.06h0c-.77,0-1.52-.15-2.24-.41-1.05-.4-1.89-1.23-2.3-2.28-.27-.72-.41-1.48-.42-2.24-.06-1.27-.07-1.65-.08-4.88,0-3.22,0-3.6.06-4.88,0-.77.15-1.52.41-2.24.4-1.05,1.23-1.89,2.29-2.29.72-.27,1.47-.41,2.24-.42,1.27-.06,1.65-.07,4.88-.08,3.22,0,3.6,0,4.88.06.77,0,1.52.15,2.24.41,1.06.4,1.89,1.23,2.3,2.29.27.72.41,1.47.42,2.24.06,1.27.07,1.65.08,4.87,0,3.22,0,3.61-.06,4.88Z"/><path fill="%23fff" fill-rule="evenodd" d="M17.05,5.62c0,.8.65,1.45,1.45,1.45.8,0,1.45-.65,1.45-1.45,0-.8-.65-1.45-1.45-1.45h0c-.8,0-1.45.65-1.45,1.45h0"/><path fill="%23fff" fill-rule="evenodd" d="M12.07,5.87h0c-3.42,0-6.19,2.79-6.18,6.21,0,3.42,2.79,6.2,6.21,6.19,3.42,0,6.2-2.79,6.19-6.21,0-3.42-2.79-6.2-6.21-6.19ZM12.08,16.1c-2.22,0-4.03-1.79-4.03-4.02,0-2.22,1.79-4.03,4.02-4.03,2.22,0,4.03,1.79,4.03,4.02,0,2.22-1.79,4.03-4.02,4.03Z"/></svg>');
    background-size: 20px;
    background-position: center;
    background-repeat: no-repeat;
    box-sizing: border-box;
    overflow: hidden;
  }
  .recruit-wrap .section-news .news-wrap .links-wrap li a.hd-ig::before {
    content: "";
    position: absolute;
    top: -1px;
    left: -1px;
    display: block;
    width: 64px;
    height: 64px;
    border: solid 1px #fff;
    border-radius: 100%;
    background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24.14 24.14"><path fill="%231c4198" fill-rule="evenodd" d="M24.14,12.05c0-3.28-.02-3.69-.08-4.97-.02-1-.21-1.99-.57-2.93-.63-1.62-1.91-2.9-3.54-3.52-.94-.35-1.93-.54-2.93-.55C15.73,0,15.32,0,12.05,0c-3.28,0-3.69.02-4.98.08h0c-1,.02-1.99.21-2.93.57-1.62.63-2.9,1.91-3.52,3.54-.35.94-.54,1.93-.55,2.93C0,8.4,0,8.82,0,12.09s.02,3.69.08,4.97c.02,1,.21,1.99.57,2.93.63,1.62,1.91,2.9,3.54,3.52.94.35,1.93.54,2.93.55,1.29.06,1.7.07,4.97.06,3.28,0,3.69-.02,4.98-.08,1-.02,1.99-.21,2.93-.57,1.62-.63,2.9-1.91,3.52-3.54.35-.94.54-1.93.55-2.93.06-1.29.07-1.7.06-4.98ZM21.91,16.93c0,.77-.15,1.52-.41,2.24-.4,1.05-1.23,1.89-2.29,2.3-.72.27-1.47.41-2.24.42-1.27.06-1.65.07-4.88.08-3.22,0-3.6,0-4.88-.06h0c-.77,0-1.52-.15-2.24-.41-1.05-.4-1.89-1.23-2.3-2.28-.27-.72-.41-1.48-.42-2.24-.06-1.27-.07-1.65-.08-4.88,0-3.22,0-3.6.06-4.88,0-.77.15-1.52.41-2.24.4-1.05,1.23-1.89,2.29-2.29.72-.27,1.47-.41,2.24-.42,1.27-.06,1.65-.07,4.88-.08,3.22,0,3.6,0,4.88.06.77,0,1.52.15,2.24.41,1.06.4,1.89,1.23,2.3,2.29.27.72.41,1.47.42,2.24.06,1.27.07,1.65.08,4.87,0,3.22,0,3.61-.06,4.88Z"/><path fill="%231c4198" fill-rule="evenodd" d="M17.05,5.62c0,.8.65,1.45,1.45,1.45.8,0,1.45-.65,1.45-1.45,0-.8-.65-1.45-1.45-1.45h0c-.8,0-1.45.65-1.45,1.45h0"/><path fill="%231c4198" fill-rule="evenodd" d="M12.07,5.87h0c-3.42,0-6.19,2.79-6.18,6.21,0,3.42,2.79,6.2,6.21,6.19,3.42,0,6.2-2.79,6.19-6.21,0-3.42-2.79-6.2-6.21-6.19ZM12.08,16.1c-2.22,0-4.03-1.79-4.03-4.02,0-2.22,1.79-4.03,4.02-4.03,2.22,0,4.03,1.79,4.03,4.02,0,2.22-1.79,4.03-4.02,4.03Z"/></svg>');
    background-color: #fff;
    background-size: 20px;
    background-position: center;
    background-repeat: no-repeat;
    box-sizing: border-box;
    opacity: 0;
    transition: all 0.3s ease-out;
  }
  .recruit-wrap .section-news .news-wrap .links-wrap li a.hd-yt {
    position: relative;
    display: block;
    width: 64px;
    height: 64px;
    text-indent: -9999px;
    border: solid 1px #fff;
    border-radius: 100%;
    background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 34.48 24.14"><path fill="%23fff" d="M33.76,3.77c-.4-1.48-1.56-2.65-3.05-3.05-2.69-.72-13.47-.72-13.47-.72,0,0-10.78,0-13.47.72-1.48.4-2.65,1.57-3.05,3.05-.72,2.69-.72,8.3-.72,8.3,0,0,0,5.61.72,8.3.4,1.48,1.57,2.65,3.05,3.05,2.69.72,13.47.72,13.47.72,0,0,10.78,0,13.47-.72,1.48-.4,2.65-1.56,3.05-3.05.72-2.69.72-8.3.72-8.3,0,0,0-5.61-.72-8.3ZM13.79,17.24V6.9l8.96,5.17-8.96,5.17Z"/></svg>');
    background-size: 24px;
    background-position: center;
    background-repeat: no-repeat;
    box-sizing: border-box;
    overflow: hidden;
  }
  .recruit-wrap .section-news .news-wrap .links-wrap li a.hd-yt::before {
    content: "";
    position: absolute;
    top: -1px;
    left: -1px;
    display: block;
    width: 64px;
    height: 64px;
    border: solid 1px #fff;
    border-radius: 100%;
    background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 34.48 24.14"><path fill="%231c4198" d="M33.76,3.77c-.4-1.48-1.56-2.65-3.05-3.05-2.69-.72-13.47-.72-13.47-.72,0,0-10.78,0-13.47.72-1.48.4-2.65,1.57-3.05,3.05-.72,2.69-.72,8.3-.72,8.3,0,0,0,5.61.72,8.3.4,1.48,1.57,2.65,3.05,3.05,2.69.72,13.47.72,13.47.72,0,0,10.78,0,13.47-.72,1.48-.4,2.65-1.56,3.05-3.05.72-2.69.72-8.3.72-8.3,0,0,0-5.61-.72-8.3ZM13.79,17.24V6.9l8.96,5.17-8.96,5.17Z"/></svg>');
    background-color: #fff;
    background-size: 24px;
    background-position: center;
    background-repeat: no-repeat;
    box-sizing: border-box;
    opacity: 0;
    transition: all 0.3s ease-out;
  }
  .recruit-wrap .section-news .news-wrap .links-wrap li a:hover.hd-ig::before {
    opacity: 1;
  }
  .recruit-wrap .section-news .news-wrap .links-wrap li a:hover.hd-yt::before {
    opacity: 1;
  }
  .recruit-wrap .section-news.show {
    opacity: 1;
  }
  .recruit-wrap .section-news.show::before {
    animation: news_view 0.6s forwards linear;
  }
  .recruit-wrap .section-news.show .news-wrap {
    animation: news_view 0.3s forwards linear 0.3s;
  }
  .recruit-wrap .section-entry {
    position: relative;
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    width: 100%;
    max-width: 880px;
    margin: 128px auto 0;
    padding: 96px 32px;
    background-color: #fff;
    box-sizing: border-box;
    z-index: 2;
  }
  .recruit-wrap .section-entry .title-section_home {
    margin-right: 32px;
    margin-bottom: 38.4px;
  }
  .recruit-wrap .section-entry .entry-links {
    width: calc(100% - 192px);
    max-width: 416px;
  }
  .recruit-wrap .section-entry .entry-links li {
    opacity: 0;
    border-bottom: solid 1px #1c4198;
  }
  .recruit-wrap .section-entry .entry-links li:first-child {
    border-top: solid 1px #1c4198;
  }
  .recruit-wrap .section-entry .entry-links li a {
    position: relative;
    display: block;
    padding: 28px 83.2px 28px 0;
    font-size: 14.4px;
    font-weight: 700;
    color: #1c4198;
  }
  .recruit-wrap .section-entry .entry-links li a .num {
    display: inline-block;
    margin-right: 40px;
    font-family: "Big Shoulders", sans-serif;
    font-size: 16px;
    font-weight: 700;
  }
  .recruit-wrap .section-entry .entry-links li a::before {
    content: "";
    position: absolute;
    top: calc(50% - 22.4px);
    right: 0;
    display: block;
    width: 44.8px;
    height: 44.8px;
    background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 18 12"><path fill="%23fff" d="M10.6,10.6l3.6-3.6H0v-2h14.2s-3.6-3.6-3.6-3.6l1.4-1.4,6,6-6,6-1.4-1.4Z"/></svg>');
    background-size: 14.4px;
    background-repeat: no-repeat;
    background-position: center;
    background-color: #7fbe26;
    transition: all 0.3s ease-out;
  }
  .recruit-wrap .section-entry .entry-links li a:hover::before {
    background-color: #1c4198;
  }
  .recruit-wrap .section-entry .entry-links.show {
    opacity: 1;
  }
  .recruit-wrap .section-entry .entry-links.show li:nth-child(1) {
    animation: slide_entry 0.2s forwards linear;
  }
  .recruit-wrap .section-entry .entry-links.show li:nth-child(2) {
    animation: slide_entry 0.2s forwards linear 0.1s;
  }
  .recruit-wrap .section-entry .entry-links.show li:nth-child(3) {
    animation: slide_entry 0.2s forwards linear 0.2s;
  }
  .recruit-wrap .section-entry .entry-links.show li:nth-child(4) {
    animation: slide_entry 0.2s forwards linear 0.3s;
  }
  @keyframes slide_up {
    0% {
      transform: translateY(24px);
      opacity: 0;
    }
    to {
      transform: translateY(0);
      opacity: 1;
    }
  }
  @keyframes slide_down {
    0% {
      transform: translateY(-24px);
      opacity: 0;
    }
    to {
      transform: translateY(0);
      opacity: 1;
    }
  }
  @keyframes slide_left {
    0% {
      transform: translateX(24px);
      opacity: 0;
    }
    to {
      transform: translateX(0);
      opacity: 1;
    }
  }
  @keyframes slide_right {
    0% {
      transform: translateX(-24px);
      opacity: 0;
    }
    to {
      transform: translateX(0);
      opacity: 1;
    }
  }
  @keyframes fade_in {
    0% {
      opacity: 0;
    }
    to {
      opacity: 1;
    }
  }
  @keyframes title_bg {
    0% {
      left: 0;
      width: 0;
    }
    33% {
      left: 0;
      width: 100%;
    }
    66% {
      left: 0;
      width: 100%;
    }
    to {
      left: 100%;
      width: 0;
    }
  }
  @keyframes title_font {
    0% {
      color: transparent;
    }
    to {
      color: #fff;
    }
  }
  @keyframes title_font_blue {
    0% {
      color: transparent;
    }
    to {
      color: #1c4198;
    }
  }
  @keyframes title_lead_ja {
    0% {
      transform: translateY(-24px);
      opacity: 0;
    }
    to {
      transform: translateY(0);
      opacity: 1;
    }
  }
  @keyframes title_lead_en {
    0% {
      opacity: 0;
    }
    to {
      opacity: 0.15;
    }
  }
  @keyframes content_bg {
    0% {
      left: 0;
      width: 0;
    }
    33% {
      left: 0;
      width: 100%;
    }
    66% {
      left: 0;
      width: 100%;
    }
    to {
      left: 100%;
      width: 0;
    }
  }
  @keyframes content_view {
    0% {
      opacity: 0;
    }
    to {
      opacity: 1;
    }
  }
  @keyframes img_view {
    0% {
      transform: translateX(24px);
      opacity: 0;
    }
    to {
      transform: translateX(0);
      opacity: 1;
    }
  }
  @keyframes movie_bg {
    0% {
      left: -100%;
      width: 0;
    }
    33% {
      left: -100%;
      width: 200%;
    }
    66% {
      left: -100%;
      width: 200%;
    }
    to {
      left: -93.6px;
      width: calc(100% + 93.6px);
    }
  }
  @keyframes movie_bg_sp {
    0% {
      top: 0;
      height: 0;
    }
    to {
      top: 0;
      height: 100%;
    }
  }
  @keyframes data_head {
    0% {
      top: 0;
      height: 100%;
    }
    to {
      top: 100%;
      height: 0;
    }
  }
  @keyframes works_pop {
    0% {
      transform: scale(1.2);
      opacity: 0;
    }
    to {
      transform: scale(1);
      opacity: 1;
    }
  }
  @keyframes works_fead {
    0% {
      opacity: 0;
    }
    to {
      opacity: 0.5;
    }
  }
  @keyframes employees_fead {
    0% {
      opacity: 0;
    }
    to {
      opacity: 1;
    }
  }
  @keyframes more_zoom {
    0% {
      transform: scale(0);
    }
    to {
      transform: scale(1);
    }
  }
  @keyframes news_view {
    0% {
      opacity: 0;
    }
    to {
      opacity: 1;
    }
  }
  @keyframes slide_entry {
    0% {
      transform: translateX(24px);
      opacity: 0;
    }
    to {
      transform: translateX(0);
      opacity: 1;
    }
  }
  .scroll-flag {
    opacity: 0;
  }
  .slide-up.show {
    animation: slide_up 0.3s forwards linear;
  }
  .slide-down.show {
    animation: slide_down 0.3s forwards linear;
  }
  .fade-in.show {
    animation: fade_in 0.3s forwards linear;
  }
}
@media only screen and (max-width: 599px) {
  #header .header-wrap::before {
    opacity: 1;
  }
  .content-bg {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100vh;
    background: url(../img/home/home_bg_sp.jpg) no-repeat center/cover;
    z-index: 1;
  }
  .contents {
    position: relative;
    z-index: 2;
  }
  .main-visual {
    position: relative;
    padding-top: 60.74px;
  }
  .main-visual .title-lead {
    position: absolute;
    top: calc(50% - 34px);
    left: 0;
    width: 100%;
    text-align: center;
    z-index: 2;
  }
  .main-visual .title-lead .ja {
    display: block;
    font-size: 44px;
    font-weight: 700;
    color: #fff;
    letter-spacing: 0.12em;
    text-indent: 0.12em;
    line-height: 1;
  }
  .main-visual .title-lead .en {
    display: block;
    margin-top: 16px;
    font-family: "Michroma", sans-serif;
    font-weight: 400;
    font-size: 12px;
    color: #fff;
    letter-spacing: 0.02em;
    text-indent: 0.02em;
    line-height: 1;
  }
  .main-visual .main-visual-video {
    position: relative;
    display: block;
    width: 100%;
    height: 0;
    padding-top: 78.75%;
    z-index: 1;
  }
  .main-visual .main-visual-video .video {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 1;
  }
  .main-visual .main-visual-video .main-visual-img {
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    width: 100%;
    line-height: 1;
    opacity: 0;
    transition: all 0.3s ease-out;
    z-index: 2;
  }
  .main-visual .main-visual-video .main-visual-img.show {
    opacity: 1;
  }
  .title-section_home {
    text-align: center;
  }
  .title-section_home .en {
    position: relative;
    display: block;
    width: -moz-fit-content;
    width: fit-content;
    margin: 0 auto;
    font-family: "Big Shoulders", sans-serif;
    font-size: 44px;
    font-weight: 700;
    color: transparent;
    letter-spacing: 0.02em;
    text-indent: 0.02em;
    line-height: 1;
  }
  .title-section_home .en::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    width: 0;
    height: 100%;
    background-color: #fff;
  }
  .title-section_home .ja {
    position: relative;
    display: block;
    width: -moz-fit-content;
    width: fit-content;
    margin: 12px auto 0;
    font-size: 13px;
    font-weight: 700;
    color: transparent;
    text-indent: 0.04em;
    line-height: 1;
  }
  .title-section_home .ja::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    width: 0;
    height: 100%;
    background-color: #fff;
  }
  .title-section_home.color-blue .en::before {
    background-color: #1c4198;
  }
  .title-section_home.color-blue .ja::before {
    background-color: #1c4198;
  }
  .title-section_home.show {
    opacity: 1;
  }
  .title-section_home.show .en {
    animation: title_font 0.1s forwards linear 0.3s;
  }
  .title-section_home.show .en::before {
    animation: title_bg 0.6s forwards linear;
  }
  .title-section_home.show .ja {
    animation: title_font 0.1s forwards linear 0.3s;
  }
  .title-section_home.show .ja::before {
    animation: title_bg 0.6s forwards linear;
  }
  .title-section_home.show.color-blue .en {
    animation: title_font_blue 0.1s forwards linear 0.3s;
  }
  .title-section_home.show.color-blue .ja {
    animation: title_font_blue 0.1s forwards linear 0.3s;
  }
  .title-section_lead_home {
    position: relative;
    padding-top: 20px;
    text-align: center;
  }
  .title-section_lead_home::before {
    content: "";
    position: absolute;
    top: 0;
    left: calc(50% - 10px);
    display: block;
    width: 20px;
    height: 4px;
    background: linear-gradient(90deg, #2eb8da 0%, #3681c4 100%);
  }
  .title-section_lead_home .ja {
    position: relative;
    display: block;
    font-size: 20px;
    font-weight: 700;
    color: #fff;
    line-height: 1;
    text-indent: 0.04em;
    opacity: 0;
    z-index: 2;
  }
  .title-section_lead_home .en {
    position: absolute;
    top: 0;
    left: 50%;
    display: block;
    min-width: 100%;
    font-family: "Michroma", sans-serif;
    font-size: 37px;
    color: transparent;
    white-space: nowrap;
    line-height: 1;
    letter-spacing: 0;
    text-align: center;
    line-height: 25px;
    -webkit-text-stroke-width: 1px;
    -webkit-text-stroke-color: #fff;
    transform: translateX(-50%);
    opacity: 0;
    z-index: 2;
  }
  .title-section_lead_home.show {
    opacity: 1;
  }
  .title-section_lead_home.show .en {
    animation: title_lead_en 0.3s forwards linear 0.2s;
  }
  .title-section_lead_home.show .ja {
    animation: title_lead_ja 0.3s forwards linear;
  }
  .btn-green {
    position: relative;
    display: inline-flex;
    align-items: center;
    width: 100%;
    max-width: 263px;
    height: 48px;
    padding-left: 20px;
    font-family: "Michroma", sans-serif;
    font-size: 13px;
    color: #fff;
    background-color: #7fbe26;
    box-sizing: border-box;
  }
  .btn-green::before {
    content: "";
    position: absolute;
    top: calc(50% - 5.5px);
    right: 21.5px;
    width: 15px;
    height: 11px;
    background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 18 12"><path fill="%23fff" d="M10.6,10.6l3.6-3.6H0v-2h14.2s-3.6-3.6-3.6-3.6l1.4-1.4,6,6-6,6-1.4-1.4Z"/></svg>');
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
  }
  .section-message {
    padding: 60px 20px;
  }
  .section-message .message-wrap {
    position: relative;
    max-width: 328px;
    margin: 32px auto 0;
    padding: 200px 30px 30px 30px;
    box-sizing: border-box;
  }
  .section-message .message-wrap::before {
    content: "";
    position: absolute;
    top: 20px;
    left: 0;
    display: block;
    width: 100%;
    height: calc(100% - 20px);
    border: solid 1px #fff;
    box-sizing: border-box;
    z-index: 1;
  }
  .section-message .message-wrap::after {
    content: "";
    position: absolute;
    top: 20px;
    left: 0;
    display: block;
    width: 100%;
    height: 0;
    background-color: #fff;
    z-index: 3;
  }
  .section-message .message-wrap .message-img {
    position: absolute;
    top: 0;
    right: calc(50% - 90px);
    display: block;
    width: 180px;
    opacity: 0;
    z-index: 4;
  }
  .section-message .message-wrap .message-title {
    position: relative;
    padding-top: 15px;
    font-size: 18px;
    font-weight: 700;
    color: #fff;
    line-height: 28px;
    opacity: 0;
    z-index: 2;
  }
  .section-message .message-wrap .message-title::before {
    content: "";
    position: absolute;
    top: 0;
    left: -10px;
    display: block;
    width: 20px;
    height: 4px;
    background: linear-gradient(90deg, #2eb8da 0%, #3681c4 100%);
  }
  .section-message .message-wrap .message-officer {
    position: relative;
    margin-top: 14px;
    opacity: 0;
    z-index: 2;
  }
  .section-message .message-wrap .message-officer dt span {
    display: inline-block;
    padding: 2.5px 6.5px;
    font-size: 12px;
    background-color: #fff;
  }
  .section-message .message-wrap .message-officer dd {
    margin-top: 6px;
  }
  .section-message .message-wrap .message-officer dd span {
    display: inline-block;
    padding: 2.5px 6.5px;
    font-size: 12px;
    background-color: #fff;
  }
  .section-message .message-wrap .link {
    position: relative;
    margin-top: 20px;
    line-height: 1;
    opacity: 0;
    z-index: 2;
  }
  .section-message .message-wrap.show {
    opacity: 1;
  }
  .section-message .message-wrap.show::after {
    animation: content_bg 0.6s forwards linear 0.2s;
  }
  .section-message .message-wrap.show .message-img {
    animation: img_view 0.3s forwards linear;
  }
  .section-message .message-wrap.show .message-title {
    animation: content_view 0.1s forwards linear 0.5s;
  }
  .section-message .message-wrap.show .message-officer {
    animation: content_view 0.1s forwards linear 0.5s;
  }
  .section-message .message-wrap.show .link {
    animation: content_view 0.1s forwards linear 0.5s;
  }
  .about-wrap {
    position: relative;
    margin: 25px auto 0;
    padding: 60px 0 0;
    background: url(../img/home/about_bg1_sp.jpg) no-repeat top center/contain #1c4198;
    box-sizing: border-box;
  }
  .about-wrap .about-bg {
    position: absolute;
    top: 0;
    right: 0;
    display: block;
    width: 187.5px;
    height: 187.5px;
    z-index: 1;
  }
  .about-wrap .about-bg i {
    position: relative;
    display: block;
    width: 187.5px;
    height: 0;
    overflow: hidden;
    transition: all 0.5s ease-out;
  }
  .about-wrap .about-bg i::before {
    content: "";
    position: absolute;
    top: 0;
    right: 0;
    display: block;
    width: 187.5px;
    height: 187.5px;
    background: url(../img/home/about_bg2_sp.png) no-repeat center/cover;
  }
  .about-wrap .about-bg.show {
    opacity: 1;
  }
  .about-wrap .about-bg.show i {
    height: 187.5px;
  }
  .about-wrap .section-movie {
    position: relative;
    margin: 32px auto 0;
    width: 100%;
    padding: 40px 0 35px;
    box-sizing: border-box;
    z-index: 2;
  }
  .about-wrap .section-movie::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    width: 100%;
    height: 0;
    background: linear-gradient(135deg, #071d51 0%, #000d2c 100%);
    opacity: 0.9;
    z-index: 1;
  }
  .about-wrap .section-movie .movie-wrap {
    position: relative;
    width: 100%;
    max-width: 500px;
    margin: 0 auto;
    z-index: 2;
  }
  .about-wrap .section-movie .movie-wrap .video-wrap {
    display: block;
    width: 100%;
    margin-top: 24px;
    opacity: 0;
  }
  .about-wrap .section-movie .movie-wrap .video-wrap .video {
    position: relative;
    width: 100%;
    height: 0;
    padding-bottom: 56.25%;
  }
  .about-wrap .section-movie .movie-wrap .video-wrap .video iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
  }
  .about-wrap .section-movie .movie-wrap .title-movie-lead {
    margin-top: 24px;
    padding: 0 24px;
    opacity: 0;
  }
  .about-wrap .section-movie .movie-wrap .title-movie-lead span {
    display: inline-block;
    padding: 4px 7px;
    font-size: 16px;
    font-weight: 700;
    line-height: 1;
    background-color: #fff;
  }
  .about-wrap .section-movie .movie-wrap .text {
    margin-top: 14px;
    padding: 0 24px;
    font-size: 13px;
    color: #fff;
    line-height: 24px;
    opacity: 0;
  }
  .about-wrap .section-movie.show {
    opacity: 1;
  }
  .about-wrap .section-movie.show::before {
    animation: movie_bg_sp 0.5s forwards linear;
  }
  .about-wrap .section-movie.show .video-wrap {
    animation: slide_down 0.3s forwards linear 0.8s;
  }
  .about-wrap .section-movie.show .title-section_home .en {
    animation: title_font 0.1s forwards linear 0.6s;
  }
  .about-wrap .section-movie.show .title-section_home .en::before {
    animation: title_bg 0.6s forwards linear 0.3s;
  }
  .about-wrap .section-movie.show .title-section_home .ja {
    animation: title_font 0.1s forwards linear 0.6s;
  }
  .about-wrap .section-movie.show .title-section_home .ja::before {
    animation: title_bg 0.6s forwards linear 0.3s;
  }
  .about-wrap .section-movie.show .title-movie-lead {
    animation: slide_down 0.2s forwards linear 1s;
  }
  .about-wrap .section-movie.show .text {
    animation: slide_down 0.2s forwards linear 1.2s;
  }
  .about-wrap .section-works {
    position: relative;
    padding: 60px 24px;
  }
  .about-wrap .section-works .works-bg {
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    width: 187.5px;
    height: 187.5px;
    padding-top: 187.5px;
    box-sizing: border-box;
    transition: all 0.5s ease-out;
    z-index: 1;
  }
  .about-wrap .section-works .works-bg i {
    position: relative;
    display: block;
    width: 187.5px;
    height: 0;
    overflow: hidden;
    transition: all 0.5s ease-out;
  }
  .about-wrap .section-works .works-bg i::before {
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    display: block;
    width: 187.5px;
    height: 187.5px;
    background: url(../img/home/about_bg3_sp.png) no-repeat center/cover;
  }
  .about-wrap .section-works .works-bg.show {
    opacity: 1;
    padding-top: 0;
  }
  .about-wrap .section-works .works-bg.show i {
    height: 187.5px;
  }
  .about-wrap .section-works .works-wrap {
    position: relative;
    max-width: 480px;
    margin: 0px auto;
    padding: 40px 0;
    box-sizing: border-box;
    z-index: 2;
  }
  .about-wrap .section-works .works-wrap::before {
    content: "";
    position: absolute;
    top: 0;
    left: 50%;
    display: block;
    width: calc(100vw - 48px);
    max-width: 500px;
    height: 100%;
    background-color: #fff;
    transform: translateX(-50%);
    z-index: 1;
  }
  .about-wrap .section-works .works-wrap .title-section_home {
    position: relative;
    z-index: 2;
  }
  .about-wrap .section-works .works-wrap .works-list {
    position: relative;
    display: block;
    width: 91.743%;
    height: 0;
    margin: 24px auto 0;
    padding-top: 91.743%;
    background: url(../img/home/works_list_bg_sp.png) no-repeat center 43%/79.51%;
    z-index: 2;
  }
  .about-wrap .section-works .works-wrap .works-list li {
    position: absolute;
    display: block;
    width: 46.666%;
    opacity: 0;
    z-index: 10;
  }
  .about-wrap .section-works .works-wrap .works-list li .works-link {
    position: relative;
    display: block;
    width: 100%;
    height: 0;
    padding-top: 100%;
  }
  .about-wrap .section-works .works-wrap .works-list li .works-link .link-wrap {
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    width: 100%;
    height: 100%;
    padding-top: 15.357%;
    border-radius: 100%;
    background: radial-gradient(#e9f1fd 0%, #e9f1fd 54%, #dfebfd 54%, #dfebfd 62%, #ccdffb 62%, #ccdffb 70%);
    box-sizing: border-box;
    transition: all 0.3s;
    line-height: 1;
  }
  .about-wrap .section-works .works-wrap .works-list li .works-link .link-wrap .works-name {
    display: block;
    width: 100%;
    text-align: center;
    color: #1c4198;
  }
  .about-wrap .section-works .works-wrap .works-list li .works-link .link-wrap .works-name .en {
    display: block;
    font-family: "Big Shoulders", sans-serif;
    font-size: clamp(1px, 2.666vw, 15px);
    font-weight: 400;
    letter-spacing: 0.02em;
    text-indent: 0.02em;
    line-height: 1;
  }
  .about-wrap .section-works .works-wrap .works-list li .works-link .link-wrap .works-name .ja {
    display: block;
    margin-top: 4%;
    font-size: clamp(1px, 4.266vw, 24px);
    font-weight: 700;
    text-indent: 0.04em;
    line-height: 1;
  }
  .about-wrap .section-works .works-wrap .works-list li .works-link .link-wrap .works-illust {
    display: block;
    line-height: 1;
  }
  .about-wrap .section-works .works-wrap .works-list li .works-link .btn-more {
    position: absolute;
    right: 0;
    bottom: 0;
    display: block;
    width: 27%;
    height: 27%;
    text-indent: -9999px;
    border-radius: 100%;
    background: url(../img/home/icon_plus.svg) no-repeat center/30% #7fbe26;
    transform: scale(0);
    transition: all 0.3s;
    overflow: hidden;
  }
  .about-wrap .section-works .works-wrap .works-list li:nth-child(1) {
    top: 0;
    left: 0;
  }
  .about-wrap .section-works .works-wrap .works-list li:nth-child(1) .works-illust {
    width: 48.928%;
    margin: 2.5% auto 0;
  }
  .about-wrap .section-works .works-wrap .works-list li:nth-child(2) {
    top: 0;
    right: 0;
  }
  .about-wrap .section-works .works-wrap .works-list li:nth-child(2) .works-illust {
    width: 52.857%;
    margin: 3.214% auto 0;
  }
  .about-wrap .section-works .works-wrap .works-list li:nth-child(3) {
    left: 26.667%;
    bottom: 0;
  }
  .about-wrap .section-works .works-wrap .works-list li:nth-child(3) .works-illust {
    width: 46.785%;
    margin: 4.642% auto 0;
  }
  .about-wrap .section-works .works-wrap .works-list.show {
    opacity: 1;
  }
  .about-wrap .section-works .works-wrap .works-list.show::before {
    animation: works_fead 0.3s forwards linear 0.9s;
  }
  .about-wrap .section-works .works-wrap .works-list.show::after {
    animation: works_fead 0.3s forwards linear 0.9s;
  }
  .about-wrap .section-works .works-wrap .works-list.show li:nth-child(1) {
    animation: works_pop 0.3s forwards linear;
  }
  .about-wrap .section-works .works-wrap .works-list.show li:nth-child(1) .btn-more {
    animation: more_zoom 0.3s forwards linear 0.3s;
  }
  .about-wrap .section-works .works-wrap .works-list.show li:nth-child(2) {
    animation: works_pop 0.3s forwards linear 0.3s;
  }
  .about-wrap .section-works .works-wrap .works-list.show li:nth-child(2) .btn-more {
    animation: more_zoom 0.3s forwards linear 0.6s;
  }
  .about-wrap .section-works .works-wrap .works-list.show li:nth-child(3) {
    animation: works_pop 0.3s forwards linear 0.6s;
  }
  .about-wrap .section-works .works-wrap .works-list.show li:nth-child(3) .btn-more {
    animation: more_zoom 0.3s forwards linear 0.9s;
  }
  .about-wrap .section-works .modal-contents {
    display: none;
  }
  .about-wrap .section-data {
    padding: 0 24px 60px;
    background: url(../img/home/data_bg_sp.jpg) no-repeat center bottom/contain;
  }
  .about-wrap .section-data .data-head {
    position: relative;
    display: block;
    width: 100vw;
    margin-left: -24px;
    line-height: 1;
    overflow: hidden;
    z-index: 1;
  }
  .about-wrap .section-data .data-head::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    width: 100%;
    height: 100%;
    background-color: #1c4198;
    z-index: 2;
  }
  .about-wrap .section-data .data-head.show {
    opacity: 1;
  }
  .about-wrap .section-data .data-head.show::before {
    animation: data_head 0.3s forwards linear;
  }
  .about-wrap .section-data .data-wrap {
    position: relative;
    max-width: 500px;
    margin: -30px auto 0;
    padding: 40px 32px;
    background: url(../img/home/data_bg_body.png);
    background-size: 8px;
    box-sizing: border-box;
    z-index: 2;
  }
  .about-wrap .section-data .data-wrap .data-body .text {
    margin-top: 24px;
    font-size: 13px;
    color: #fff;
    text-align: center;
    line-height: 24px;
  }
  .about-wrap .section-data .data-wrap .data-body .text .text-wrap {
    display: inline-block;
    text-align: left;
  }
  .about-wrap .section-data .data-wrap .data-body .link {
    margin-top: 24px;
    text-align: center;
    line-height: 1;
  }
  .about-wrap .section-data .data-wrap .employees-num {
    margin-top: 32px;
    padding: 22.5px 0;
    background-color: #fff;
  }
  .about-wrap .section-data .data-wrap .employees-num dt {
    font-size: 13px;
    font-weight: 700;
    text-align: center;
    text-indent: 0.04em;
    line-height: 1;
    opacity: 0;
  }
  .about-wrap .section-data .data-wrap .employees-num dd {
    margin-top: 12px;
    padding-bottom: 64px;
    font-size: 24px;
    font-weight: 700;
    color: #1c4198;
    text-align: center;
    text-indent: 0.04em;
    line-height: 1;
    background: url(../img/home/data_illust.png) no-repeat center bottom/197.5px;
    opacity: 0;
  }
  .about-wrap .section-data .data-wrap .employees-num dd .num {
    display: inline-block;
    font-family: "BIZ UDPGothic", sans-serif;
    font-size: 48px;
    font-weight: 700;
    letter-spacing: -0.04em;
    text-indent: -0.04em;
    transform: translateY(-1px);
  }
  .about-wrap .section-data .data-wrap .employees-num.show {
    opacity: 1;
  }
  .about-wrap .section-data .data-wrap .employees-num.show dt {
    animation: employees_fead 0.3s forwards linear;
  }
  .about-wrap .section-data .data-wrap .employees-num.show dd {
    animation: employees_fead 0.3s forwards linear 0.2s;
  }
  .modal-box {
    position: fixed;
    top: 0;
    left: 0;
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    height: 100%;
    padding: 0 24px;
    background-color: rgba(28, 65, 152, 0.8);
    opacity: 0;
    box-sizing: border-box;
    transition: opacity 0.3s;
    z-index: 9999;
  }
  .modal-box.open {
    opacity: 1;
  }
  .modal-box .modal-close_area {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 1;
  }
  .modal-box .modal-body {
    flex: 1;
    position: relative;
    width: 100%;
    max-width: 500px;
    max-height: 100%;
    box-sizing: border-box;
    z-index: 10;
  }
  .modal-box .modal-btn {
    position: absolute;
    top: 0;
    right: 0;
    display: flex;
    justify-content: center;
    align-items: center;
    width: 40px;
    height: 40px;
    margin: 0;
    padding: 0;
    cursor: pointer;
    border: none;
    outline: 0px;
    overflow: hidden;
    transition: all 0.3s;
  }
  .modal-box .modal-btn span {
    position: relative;
    display: block;
    width: 16px;
    height: 16px;
    transform: rotate(45deg);
    z-index: 2;
  }
  .modal-box .modal-btn span::before {
    content: "";
    position: absolute;
    top: calc(50% - 0.5px);
    left: 0;
    display: block;
    width: 100%;
    height: 1px;
    background-color: #fff;
  }
  .modal-box .modal-btn span::after {
    content: "";
    position: absolute;
    top: 0;
    left: calc(50% - 0.5px);
    display: block;
    width: 1px;
    height: 100%;
    background-color: #fff;
  }
  .modal-box .modal-btn::before {
    content: "";
    position: absolute;
    top: 0;
    right: -100%;
    width: 200%;
    height: 100%;
    background: linear-gradient(90deg, #2eb8da 0%, #3681c4 50%, #1c4198 100%);
    transition: all 0.3s ease-out;
    z-index: 1;
  }
  .modal-box .modal-btn:hover::before {
    right: 0;
  }
  .modal-box .modal-work-wrap {
    padding: 40px 24px;
    background-color: #fff;
  }
  .modal-box .modal-work-wrap .work-img {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 160px;
    height: 160px;
    margin: 0 auto;
    border-radius: 100%;
    background: radial-gradient(#e9f1fd 0%, #e9f1fd 54%, #dfebfd 54%, #dfebfd 62%, #ccdffb 62%, #ccdffb 70%);
    box-sizing: border-box;
  }
  .modal-box .modal-work-wrap .work-img .illust-skilled {
    width: 98.5px;
  }
  .modal-box .modal-work-wrap .work-img .illust-technical {
    width: 104.5px;
  }
  .modal-box .modal-work-wrap .work-img .illust-indirect {
    width: 94.5px;
  }
  .modal-box .modal-work-wrap .work-body {
    margin-top: 24px;
  }
  .modal-box .modal-work-wrap .work-body .works-name {
    display: block;
    width: 100%;
    color: #1c4198;
    text-align: center;
  }
  .modal-box .modal-work-wrap .work-body .works-name .en {
    display: block;
    font-family: "Big Shoulders", sans-serif;
    font-size: 12px;
    text-indent: 0.04em;
    line-height: 1;
  }
  .modal-box .modal-work-wrap .work-body .works-name .ja {
    display: block;
    margin-top: 12px;
    font-size: 20px;
    font-weight: 700;
    text-indent: 0.04em;
    line-height: 1;
  }
  .modal-box .modal-work-wrap .work-body .text {
    margin-top: 18px;
    font-size: 13px;
    line-height: 24px;
  }
  .modal-box .modal-work-wrap .work-body .work-link {
    display: flex;
    flex-wrap: wrap;
    margin-top: 15px;
    margin-left: -15px;
  }
  .modal-box .modal-work-wrap .work-body .work-link li {
    width: calc(50% - 15px);
    margin-top: 15px;
    margin-left: 15px;
    padding-bottom: 10px;
    border-bottom: solid 1px #000d2c;
  }
  .modal-box .modal-work-wrap .work-body .work-link li .btn-more {
    position: relative;
    display: block;
    padding-right: 20px;
    font-size: 12px;
    line-height: 16px;
  }
  .modal-box .modal-work-wrap .work-body .work-link li .btn-more::before {
    content: "";
    position: absolute;
    top: calc(50% - 8px);
    right: 0;
    display: block;
    width: 16px;
    height: 16px;
    background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24.14 24.14"><path fill="%231c4198" fill-rule="evenodd" d="M24.14,12.05c0-3.28-.02-3.69-.08-4.97-.02-1-.21-1.99-.57-2.93-.63-1.62-1.91-2.9-3.54-3.52-.94-.35-1.93-.54-2.93-.55C15.73,0,15.32,0,12.05,0c-3.28,0-3.69.02-4.98.08h0c-1,.02-1.99.21-2.93.57-1.62.63-2.9,1.91-3.52,3.54-.35.94-.54,1.93-.55,2.93C0,8.4,0,8.82,0,12.09s.02,3.69.08,4.97c.02,1,.21,1.99.57,2.93.63,1.62,1.91,2.9,3.54,3.52.94.35,1.93.54,2.93.55,1.29.06,1.7.07,4.97.06,3.28,0,3.69-.02,4.98-.08,1-.02,1.99-.21,2.93-.57,1.62-.63,2.9-1.91,3.52-3.54.35-.94.54-1.93.55-2.93.06-1.29.07-1.7.06-4.98ZM21.91,16.93c0,.77-.15,1.52-.41,2.24-.4,1.05-1.23,1.89-2.29,2.3-.72.27-1.47.41-2.24.42-1.27.06-1.65.07-4.88.08-3.22,0-3.6,0-4.88-.06h0c-.77,0-1.52-.15-2.24-.41-1.05-.4-1.89-1.23-2.3-2.28-.27-.72-.41-1.48-.42-2.24-.06-1.27-.07-1.65-.08-4.88,0-3.22,0-3.6.06-4.88,0-.77.15-1.52.41-2.24.4-1.05,1.23-1.89,2.29-2.29.72-.27,1.47-.41,2.24-.42,1.27-.06,1.65-.07,4.88-.08,3.22,0,3.6,0,4.88.06.77,0,1.52.15,2.24.41,1.06.4,1.89,1.23,2.3,2.29.27.72.41,1.47.42,2.24.06,1.27.07,1.65.08,4.87,0,3.22,0,3.61-.06,4.88Z"/><path fill="%231c4198" fill-rule="evenodd" d="M17.05,5.62c0,.8.65,1.45,1.45,1.45.8,0,1.45-.65,1.45-1.45,0-.8-.65-1.45-1.45-1.45h0c-.8,0-1.45.65-1.45,1.45h0"/><path fill="%231c4198" fill-rule="evenodd" d="M12.07,5.87h0c-3.42,0-6.19,2.79-6.18,6.21,0,3.42,2.79,6.2,6.21,6.19,3.42,0,6.2-2.79,6.19-6.21,0-3.42-2.79-6.2-6.21-6.19ZM12.08,16.1c-2.22,0-4.03-1.79-4.03-4.02,0-2.22,1.79-4.03,4.02-4.03,2.22,0,4.03,1.79,4.03,4.02,0,2.22-1.79,4.03-4.02,4.03Z"/></svg>');
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
  }
  .modal-box .modal-work-wrap .work-body .work-link li .btn-more:hover {
    color: #1c4198;
  }
  .recruit-wrap {
    position: relative;
    padding: 60px 24px;
    overflow: hidden;
  }
  .recruit-wrap .recruit-bg_top {
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    width: 155px;
    height: 155px;
    padding-top: 155px;
    box-sizing: border-box;
    transition: all 0.5s ease-out;
    z-index: 1;
  }
  .recruit-wrap .recruit-bg_top i {
    position: relative;
    display: block;
    width: 155px;
    height: 0;
    overflow: hidden;
    transition: all 0.5s ease-out;
  }
  .recruit-wrap .recruit-bg_top i::before {
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    display: block;
    width: 155px;
    height: 155px;
    background: url(../img/home/recruit_bg1_sp.png) no-repeat center/cover;
  }
  .recruit-wrap .recruit-bg_top.show {
    opacity: 1;
    padding-top: 0;
  }
  .recruit-wrap .recruit-bg_top.show i {
    height: 155px;
  }
  .recruit-wrap .recruit-bg_bottom {
    position: absolute;
    bottom: 0;
    right: 0;
    display: block;
    width: 255px;
    height: 255px;
    overflow: hidden;
    z-index: 1;
  }
  .recruit-wrap .recruit-bg_bottom i {
    position: relative;
    display: block;
    width: 255px;
    height: 0;
    overflow: hidden;
    transition: all 0.5s ease-out;
  }
  .recruit-wrap .recruit-bg_bottom i::before {
    content: "";
    position: absolute;
    top: 0;
    right: 0;
    display: block;
    width: 255px;
    height: 255px;
    background: url(../img/home/recruit_bg2_sp.png) no-repeat center/cover;
  }
  .recruit-wrap .recruit-bg_bottom.show {
    opacity: 1;
  }
  .recruit-wrap .recruit-bg_bottom.show i {
    height: 255px;
  }
  .recruit-wrap .info-list {
    position: relative;
    max-width: 327px;
    margin: 43px auto 0;
    z-index: 2;
  }
  .recruit-wrap .info-list li:first-child {
    margin-bottom: 40px;
  }
  .recruit-wrap .info-list li .info-link a {
    position: relative;
    display: block;
    line-height: 0;
  }
  .recruit-wrap .info-list li .info-link a .info-img {
    display: block;
    width: 100%;
    line-height: 0;
  }
  .recruit-wrap .info-list li .info-link a .en {
    position: absolute;
    top: 10px;
    right: 10px;
    display: block;
    font-family: "Big Shoulders", sans-serif;
    font-size: 12px;
    font-weight: 700;
    color: #fff;
    line-height: 1;
    transform: rotate(90deg) translatex(100%);
    transform-origin: top right;
  }
  .recruit-wrap .info-list li .info-link a .btn-arrow {
    position: absolute;
    bottom: 0;
    right: 0;
    display: block;
    width: 40px;
    height: 40px;
    line-height: 0;
    background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 18 12"><path fill="%23fff" d="M10.6,10.6l3.6-3.6H0v-2h14.2s-3.6-3.6-3.6-3.6l1.4-1.4,6,6-6,6-1.4-1.4Z"/></svg>');
    background-size: 15px;
    background-repeat: no-repeat;
    background-position: center;
    background-color: #7fbe26;
  }
  .recruit-wrap .info-list li .title-info {
    margin-top: 20px;
    line-height: 1;
  }
  .recruit-wrap .info-list li .title-info span {
    display: inline-block;
    font-size: 16px;
    font-weight: 700;
    padding: 4px 6.5px;
    background-color: #fff;
  }
  .recruit-wrap .info-list li .text {
    margin-top: 12px;
    font-size: 13px;
    color: #fff;
    line-height: 16px;
  }
  .recruit-wrap .section-news {
    position: relative;
    width: 100%;
    max-width: 327px;
    margin: 60px auto 0;
    padding: 40px 20px;
    background: url(../img/home/social_links_bg_sp.jpg) no-repeat center/cover;
    box-sizing: border-box;
    z-index: 1;
  }
  .recruit-wrap .section-news::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    width: 100%;
    height: 100%;
    background: url(../img/home/social_links_bg_sp.jpg) no-repeat center/cover;
    opacity: 0;
    z-index: 1;
  }
  .recruit-wrap .section-news .title-section_home {
    position: relative;
    z-index: 2;
  }
  .recruit-wrap .section-news .news-wrap {
    position: relative;
    margin-top: 24px;
    opacity: 0;
    z-index: 2;
  }
  .recruit-wrap .section-news .news-wrap .lead {
    font-size: 12px;
    color: #fff;
    line-height: 22px;
  }
  .recruit-wrap .section-news .news-wrap .links-wrap {
    display: flex;
    justify-content: center;
    align-items: center;
    margin-top: 18px;
  }
  .recruit-wrap .section-news .news-wrap .links-wrap li {
    margin: 0 16px;
  }
  .recruit-wrap .section-news .news-wrap .links-wrap li a {
    background-color: transparent;
  }
  .recruit-wrap .section-news .news-wrap .links-wrap li a.hd-ig {
    position: relative;
    display: block;
    width: 48px;
    height: 48px;
    text-indent: -9999px;
    border: solid 1px #fff;
    border-radius: 100%;
    background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24.14 24.14"><path fill="%23fff" fill-rule="evenodd" d="M24.14,12.05c0-3.28-.02-3.69-.08-4.97-.02-1-.21-1.99-.57-2.93-.63-1.62-1.91-2.9-3.54-3.52-.94-.35-1.93-.54-2.93-.55C15.73,0,15.32,0,12.05,0c-3.28,0-3.69.02-4.98.08h0c-1,.02-1.99.21-2.93.57-1.62.63-2.9,1.91-3.52,3.54-.35.94-.54,1.93-.55,2.93C0,8.4,0,8.82,0,12.09s.02,3.69.08,4.97c.02,1,.21,1.99.57,2.93.63,1.62,1.91,2.9,3.54,3.52.94.35,1.93.54,2.93.55,1.29.06,1.7.07,4.97.06,3.28,0,3.69-.02,4.98-.08,1-.02,1.99-.21,2.93-.57,1.62-.63,2.9-1.91,3.52-3.54.35-.94.54-1.93.55-2.93.06-1.29.07-1.7.06-4.98ZM21.91,16.93c0,.77-.15,1.52-.41,2.24-.4,1.05-1.23,1.89-2.29,2.3-.72.27-1.47.41-2.24.42-1.27.06-1.65.07-4.88.08-3.22,0-3.6,0-4.88-.06h0c-.77,0-1.52-.15-2.24-.41-1.05-.4-1.89-1.23-2.3-2.28-.27-.72-.41-1.48-.42-2.24-.06-1.27-.07-1.65-.08-4.88,0-3.22,0-3.6.06-4.88,0-.77.15-1.52.41-2.24.4-1.05,1.23-1.89,2.29-2.29.72-.27,1.47-.41,2.24-.42,1.27-.06,1.65-.07,4.88-.08,3.22,0,3.6,0,4.88.06.77,0,1.52.15,2.24.41,1.06.4,1.89,1.23,2.3,2.29.27.72.41,1.47.42,2.24.06,1.27.07,1.65.08,4.87,0,3.22,0,3.61-.06,4.88Z"/><path fill="%23fff" fill-rule="evenodd" d="M17.05,5.62c0,.8.65,1.45,1.45,1.45.8,0,1.45-.65,1.45-1.45,0-.8-.65-1.45-1.45-1.45h0c-.8,0-1.45.65-1.45,1.45h0"/><path fill="%23fff" fill-rule="evenodd" d="M12.07,5.87h0c-3.42,0-6.19,2.79-6.18,6.21,0,3.42,2.79,6.2,6.21,6.19,3.42,0,6.2-2.79,6.19-6.21,0-3.42-2.79-6.2-6.21-6.19ZM12.08,16.1c-2.22,0-4.03-1.79-4.03-4.02,0-2.22,1.79-4.03,4.02-4.03,2.22,0,4.03,1.79,4.03,4.02,0,2.22-1.79,4.03-4.02,4.03Z"/></svg>');
    background-size: 18px;
    background-position: center;
    background-repeat: no-repeat;
    box-sizing: border-box;
    overflow: hidden;
  }
  .recruit-wrap .section-news .news-wrap .links-wrap li a.hd-yt {
    position: relative;
    display: block;
    width: 48px;
    height: 48px;
    text-indent: -9999px;
    border: solid 1px #fff;
    border-radius: 100%;
    background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 34.48 24.14"><path fill="%23fff" d="M33.76,3.77c-.4-1.48-1.56-2.65-3.05-3.05-2.69-.72-13.47-.72-13.47-.72,0,0-10.78,0-13.47.72-1.48.4-2.65,1.57-3.05,3.05-.72,2.69-.72,8.3-.72,8.3,0,0,0,5.61.72,8.3.4,1.48,1.57,2.65,3.05,3.05,2.69.72,13.47.72,13.47.72,0,0,10.78,0,13.47-.72,1.48-.4,2.65-1.56,3.05-3.05.72-2.69.72-8.3.72-8.3,0,0,0-5.61-.72-8.3ZM13.79,17.24V6.9l8.96,5.17-8.96,5.17Z"/></svg>');
    background-size: 24px;
    background-position: center;
    background-repeat: no-repeat;
    box-sizing: border-box;
    overflow: hidden;
  }
  .recruit-wrap .section-news.show {
    opacity: 1;
  }
  .recruit-wrap .section-news.show::before {
    animation: news_view 0.6s forwards linear;
  }
  .recruit-wrap .section-news.show .news-wrap {
    animation: news_view 0.3s forwards linear 0.3s;
  }
  .recruit-wrap .section-entry {
    position: relative;
    width: 100%;
    max-width: 500px;
    margin: 60px auto 0;
    padding: 40px 24px;
    background-color: #fff;
    box-sizing: border-box;
    z-index: 2;
  }
  .recruit-wrap .section-entry .entry-links {
    margin-top: 20px;
  }
  .recruit-wrap .section-entry .entry-links li {
    opacity: 0;
    border-bottom: solid 1px #1c4198;
  }
  .recruit-wrap .section-entry .entry-links li:first-child {
    border-top: solid 1px #1c4198;
  }
  .recruit-wrap .section-entry .entry-links li a {
    position: relative;
    display: block;
    padding: 21.5px 60px 21.5px 0;
    font-size: 13px;
    font-weight: 700;
    color: #1c4198;
  }
  .recruit-wrap .section-entry .entry-links li a .num {
    display: inline-block;
    margin-right: 20px;
    font-family: "Big Shoulders", sans-serif;
    font-size: 14px;
    font-weight: 700;
  }
  .recruit-wrap .section-entry .entry-links li a::before {
    content: "";
    position: absolute;
    top: calc(50% - 20px);
    right: 0;
    display: block;
    width: 40px;
    height: 40px;
    background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 18 12"><path fill="%23fff" d="M10.6,10.6l3.6-3.6H0v-2h14.2s-3.6-3.6-3.6-3.6l1.4-1.4,6,6-6,6-1.4-1.4Z"/></svg>');
    background-size: 15px;
    background-repeat: no-repeat;
    background-position: center;
    background-color: #7fbe26;
  }
  .recruit-wrap .section-entry .entry-links.show {
    opacity: 1;
  }
  .recruit-wrap .section-entry .entry-links.show li:nth-child(1) {
    animation: slide_entry 0.2s forwards linear;
  }
  .recruit-wrap .section-entry .entry-links.show li:nth-child(2) {
    animation: slide_entry 0.2s forwards linear 0.1s;
  }
  .recruit-wrap .section-entry .entry-links.show li:nth-child(3) {
    animation: slide_entry 0.2s forwards linear 0.2s;
  }
  .recruit-wrap .section-entry .entry-links.show li:nth-child(4) {
    animation: slide_entry 0.2s forwards linear 0.3s;
  }
  @keyframes slide_up {
    0% {
      transform: translateY(15px);
      opacity: 0;
    }
    to {
      transform: translateY(0);
      opacity: 1;
    }
  }
  @keyframes slide_down {
    0% {
      transform: translateY(-15px);
      opacity: 0;
    }
    to {
      transform: translateY(0);
      opacity: 1;
    }
  }
  @keyframes slide_left {
    0% {
      transform: translateX(15px);
      opacity: 0;
    }
    to {
      transform: translateX(0);
      opacity: 1;
    }
  }
  @keyframes slide_right {
    0% {
      transform: translateX(-15px);
      opacity: 0;
    }
    to {
      transform: translateX(0);
      opacity: 1;
    }
  }
  @keyframes fade_in {
    0% {
      opacity: 0;
    }
    to {
      opacity: 1;
    }
  }
  /* -- animation home -- */
  @keyframes title_bg {
    0% {
      left: 0;
      width: 0;
    }
    33% {
      left: 0;
      width: 100%;
    }
    66% {
      left: 0;
      width: 100%;
    }
    to {
      left: 100%;
      width: 0;
    }
  }
  @keyframes title_font {
    0% {
      color: transparent;
    }
    to {
      color: #fff;
    }
  }
  @keyframes title_font_blue {
    0% {
      color: transparent;
    }
    to {
      color: #1c4198;
    }
  }
  @keyframes title_lead_ja {
    0% {
      transform: translateY(-15px);
      opacity: 0;
    }
    to {
      transform: translateY(0);
      opacity: 1;
    }
  }
  @keyframes title_lead_en {
    0% {
      opacity: 0;
    }
    to {
      opacity: 0.15;
    }
  }
  @keyframes content_bg {
    0% {
      left: 0;
      width: 0;
    }
    33% {
      left: 0;
      width: 100%;
    }
    66% {
      left: 0;
      width: 100%;
    }
    to {
      left: 100%;
      width: 0;
    }
  }
  @keyframes content_view {
    0% {
      opacity: 0;
    }
    to {
      opacity: 1;
    }
  }
  @keyframes img_view {
    0% {
      transform: translateX(15px);
      opacity: 0;
    }
    to {
      transform: translateX(0);
      opacity: 1;
    }
  }
  @keyframes movie_bg {
    0% {
      left: -100%;
      width: 0;
    }
    33% {
      left: -100%;
      width: 200%;
    }
    66% {
      left: -100%;
      width: 200%;
    }
    to {
      left: -58.5px;
      width: calc(100% + 58.5px);
    }
  }
  @keyframes movie_bg_sp {
    0% {
      top: 0;
      height: 0;
    }
    to {
      top: 0;
      height: 100%;
    }
  }
  @keyframes data_head {
    0% {
      top: 0;
      height: 100%;
    }
    to {
      top: 100%;
      height: 0;
    }
  }
  @keyframes works_pop {
    0% {
      transform: scale(1.2);
      opacity: 0;
    }
    to {
      transform: scale(1);
      opacity: 1;
    }
  }
  @keyframes works_fead {
    0% {
      opacity: 0;
    }
    to {
      opacity: 0.5;
    }
  }
  @keyframes employees_fead {
    0% {
      opacity: 0;
    }
    to {
      opacity: 1;
    }
  }
  @keyframes more_zoom {
    0% {
      transform: scale(0);
    }
    to {
      transform: scale(1);
    }
  }
  @keyframes news_view {
    0% {
      opacity: 0;
    }
    to {
      opacity: 1;
    }
  }
  @keyframes slide_entry {
    0% {
      transform: translateX(15px);
      opacity: 0;
    }
    to {
      transform: translateX(0);
      opacity: 1;
    }
  }
  .scroll-flag {
    opacity: 0;
  }
  .slide-up.show {
    animation: slide_up 0.3s forwards linear;
  }
  .slide-down.show {
    animation: slide_down 0.3s forwards linear;
  }
  .fade-in.show {
    animation: fade_in 0.3s forwards linear;
  }
}