@charset "UTF-8";
/* CSS Document */
/*--------------------
01.top
02.business
02-01.transport
02-02.warehouse
02-03.planning
02-04.moving
02-05.designtruck
02-05-01.designtruck-works
03.recruit
03-01.recruit_form
03-02.staff_detail
04.about_us
04-01.access
04-02.iso
04-03.privacy
04-04.actionplan
04-05.local contribution
05.blog
06.contact
07.sdgs
08.sitemap
09.error404
--------------------*/

/*----------
01.top
----------*/
#top .mv_area {
    position: relative;
    height: 100svh;
    min-height: calc(720px + 45px);
    padding-bottom: 45px;
}

#top .mv_area .mv_block {
    position: relative;
    height: 100%;
}

#top .mv_area .mv_block .contents_in {
    position: relative;
    max-width: none;
    width: 76.56%;
    height: 100%;
}

@keyframes mvAnim {
    0% {
        opacity: 1;
    }
    40% {
        opacity: 1;
    }
    50% {
        opacity: 0;
    }
    90% {
        opacity: 0;
    }
    100% {
        opacity: 1;
    }
}

#top .mv_area .mv_block .mv_item {
    position: absolute;
    top: 0;
    left: 0;
    opacity: 0;
    width: 100%;
    height: 100%;
    padding-top: 160px;
    background-color: #1D2F50;
    overflow: hidden;
    transition: opacity 1s ease-in-out;
    z-index: 1;
}

@keyframes mvItemAnim {
    0% {
        transform: translate(-50%, -50%) scale(1);
    }
    100% {
        transform: translate(-50%, -50%) scale(1.38);
    }
}

#top .mv_area .mv_block .mv_item::before {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    width: 100%;
    height: 100%;
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
    transform: translate(-50%, -50%) scale(1.1);
    transition: transform 10s linear;
}

/* 通常のループ中のズームは active クラスで発火 */
#top .mv_area .mv_block .mv_item.active::before {
    transform: translate(-50%, -50%) scale(1.38);
}

#top .mv_area .mv_block .mv_item.item01 .txt_img .txt {
    overflow: hidden;
}

#top .mv_area .mv_block .mv_item.item01 .txt_img .txt:first-of-type {
    width: 0;
}

#top .mv_area .mv_block .mv_item.item01 .txt_img .txt:first-of-type .wrap {
    width: 200%;
}

#top .mv_area .mv_block .mv_item.item01 .catch_txt {
    font-size: max(52px, 5.7815vw);
    font-weight: 500;
    font-family: 'Objektiv Mk1';
    letter-spacing: .03em;
    line-height: 1.34;
}

#top .mv_area .mv_block .mv_item.item01 .catch_txt .wrap {
    display: flex;
    overflow: hidden;
}

#top .mv_area .mv_block .mv_item.item01 .catch_txt span {
    display: block;
    transform: translateY(105%);
    transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.5s;
}

#top .mv_area .mv_block .mv_item.item01 .catch_txt.pc .wrap:nth-child(1) span:nth-child(2) {
    transition-delay: 0.06s;
}

#top .mv_area .mv_block .mv_item.item01 .catch_txt.pc .wrap:nth-child(1) span:nth-child(3) {
    transition-delay: 0.12s;
}

#top .mv_area .mv_block .mv_item.item01 .catch_txt.pc .wrap:nth-child(1) span:nth-child(4) {
    transition-delay: 0.18s;
}

#top .mv_area .mv_block .mv_item.item01 .catch_txt.pc .wrap:nth-child(1) span:nth-child(5) {
    transition-delay: 0.24s;
}

#top .mv_area .mv_block .mv_item.item01 .catch_txt.pc .wrap:nth-child(1) span:nth-child(6) {
    transition-delay: 0.30s;
}

#top .mv_area .mv_block .mv_item.item01 .catch_txt.pc .wrap:nth-child(1) span:nth-child(7) {
    transition-delay: 0.36s;
}

#top .mv_area .mv_block .mv_item.item01 .catch_txt.pc .wrap:nth-child(1) span:nth-child(8) {
    transition-delay: 0.42s;
}

#top .mv_area .mv_block .mv_item.item01 .catch_txt.pc .wrap:nth-child(1) span:nth-child(9) {
    transition-delay: 0.48s;
}

#top .mv_area .mv_block .mv_item.item01 .catch_txt.pc .wrap:nth-child(1) span:nth-child(10) {
    transition-delay: 0.54s;
}

#top .mv_area .mv_block .mv_item.item01 .catch_txt.pc .wrap:nth-child(1) span:nth-child(11) {
    transition-delay: 0.60s;
}

#top .mv_area .mv_block .mv_item.item01 .catch_txt.pc .wrap:nth-child(1) span:nth-child(12) {
    transition-delay: 0.66s;
}

#top .mv_area .mv_block .mv_item.item01 .catch_txt.pc .wrap:nth-child(1) span:nth-child(13) {
    transition-delay: 0.72s;
}

#top .mv_area .mv_block .mv_item.item01 .catch_txt.pc .wrap:nth-child(1) span:nth-child(14) {
    transition-delay: 0.78s;
}

#top .mv_area .mv_block .mv_item.item01 .catch_txt.pc .wrap:nth-child(1) span:nth-child(15) {
    transition-delay: 0.84s;
}

#top .mv_area .mv_block .mv_item.item01 .catch_txt.pc .wrap:nth-child(1) span:nth-child(16) {
    transition-delay: 0.90s;
}

#top .mv_area .mv_block .mv_item.item01 .catch_txt.pc .wrap:nth-child(1) span:nth-child(17) {
    transition-delay: 0.96s;
}

#top .mv_area .mv_block .mv_item.item01 .catch_txt.pc .wrap:nth-child(1) span:nth-child(18) {
    transition-delay: 1.02s;
}

#top .mv_area .mv_block .mv_item.item01 .catch_txt.pc .wrap:nth-child(1) span:nth-child(19) {
    transition-delay: 1.08s;
}

#top .mv_area .mv_block .mv_item.item01 .catch_txt.pc .wrap:nth-child(1) span:nth-child(20) {
    transition-delay: 1.14s;
}

#top .mv_area .mv_block .mv_item.item01 .catch_txt.pc .wrap:nth-child(1) span:nth-child(21) {
    transition-delay: 1.20s;
}

#top .mv_area .mv_block .mv_item.item01 .catch_txt.pc .wrap:nth-child(1) span:nth-child(22) {
    transition-delay: 1.26s;
}

#top .mv_area .mv_block .mv_item.item01 .catch_txt.pc .wrap:nth-child(1) span:nth-child(23) {
    transition-delay: 1.32s;
}

#top .mv_area .mv_block .mv_item.item01 .catch_txt.pc .wrap:nth-child(2) span:nth-child(1) {
    transition-delay: 0.66s;
}

#top .mv_area .mv_block .mv_item.item01 .catch_txt.pc .wrap:nth-child(2) span:nth-child(2) {
    transition-delay: 0.72s;
}

#top .mv_area .mv_block .mv_item.item01 .catch_txt.pc .wrap:nth-child(2) span:nth-child(3) {
    transition-delay: 0.78s;
}

#top .mv_area .mv_block .mv_item.item01 .catch_txt.pc .wrap:nth-child(2) span:nth-child(4) {
    transition-delay: 0.84s;
}

#top .mv_area .mv_block .mv_item.item01 .catch_txt.pc .wrap:nth-child(2) span:nth-child(5) {
    transition-delay: 0.90s;
}

#top .mv_area .mv_block .mv_item.item01 .catch_txt.pc .wrap:nth-child(2) span:nth-child(6) {
    transition-delay: 0.96s;
}

#top .mv_area .mv_block .mv_item.item01 .catch_txt.pc .wrap:nth-child(2) span:nth-child(7) {
    transition-delay: 1.02s;
}

#top .mv_area .mv_block .mv_item.item01 .catch_txt.pc .wrap:nth-child(2) span:nth-child(8) {
    transition-delay: 1.08s;
}

#top .mv_area .mv_block .mv_item.item01 .catch_txt.pc .wrap:nth-child(2) span:nth-child(9) {
    transition-delay: 1.14s;
}

#top .mv_area .mv_block .mv_item.item01 .catch_txt.pc .wrap:nth-child(2) span:nth-child(10) {
    transition-delay: 1.20s;
}

#top .mv_area .mv_block .mv_item.item01 .catch_txt.pc .wrap:nth-child(2) span:nth-child(11) {
    transition-delay: 1.26s;
}

#top .mv_area .mv_block .mv_item.item01 .catch_txt.pc .wrap:nth-child(2) span:nth-child(12) {
    transition-delay: 1.32s;
}

#top .mv_area .mv_block .mv_item.item01 .catch_txt.pc .wrap:nth-child(2) span:nth-child(13) {
    transition-delay: 1.38s;
}

#top .mv_area .mv_block .mv_item.item01 .catch_txt.pc .wrap:nth-child(2) span:nth-child(14) {
    transition-delay: 1.44s;
}

#top .mv_area .mv_block .mv_item.item01 .catch_txt.pc .wrap:nth-child(2) span:nth-child(15) {
    transition-delay: 1.50s;
}

#top .mv_area .mv_block .mv_item.item01 .catch_txt.pc .wrap:nth-child(2) span:nth-child(16) {
    transition-delay: 1.56s;
}

#top .mv_area .mv_block .mv_item.item01 .catch_txt.pc .wrap:nth-child(2) span:nth-child(17) {
    transition-delay: 1.62s;
}

#top .mv_area .mv_block .mv_item.item01 .catch_txt.pc .wrap:nth-child(3) span:nth-child(1) {
    transition-delay: 1.32s;
}

#top .mv_area .mv_block .mv_item.item01 .catch_txt.pc .wrap:nth-child(3) span:nth-child(2) {
    transition-delay: 1.38s;
}

#top .mv_area .mv_block .mv_item.item01 .catch_txt.pc .wrap:nth-child(3) span:nth-child(3) {
    transition-delay: 1.44s;
}

#top .mv_area .mv_block .mv_item.item01 .catch_txt.pc .wrap:nth-child(3) span:nth-child(4) {
    transition-delay: 1.50s;
}

#top .mv_area .mv_block .mv_item.item01 .catch_txt.pc .wrap:nth-child(3) span:nth-child(5) {
    transition-delay: 1.56s;
}

#top .mv_area .mv_block .mv_item.item01 .catch_txt.pc .wrap:nth-child(3) span:nth-child(6) {
    transition-delay: 1.62s;
}

#top .mv_area .mv_block .mv_item.item01 .catch_txt.pc .wrap:nth-child(3) span:nth-child(7) {
    transition-delay: 1.68s;
}

#top .mv_area .mv_block .mv_item.item01 .catch_txt.pc .wrap:nth-child(3) span:nth-child(8) {
    transition-delay: 1.74s;
}

#top .mv_area .mv_block .mv_item.item01 .catch_txt .w1_14 {
    letter-spacing: -.08em;
}

#top .mv_area .mv_block .mv_item.item01 .catch_txt.is_on span {
    transform: translateY(0);
}

#top .mv_area .mv_block .mv_item.item01.first-view::before {
    animation: mvItemAnim 10s linear forwards;
}

#top .mv_area .mv_block .mv_item.item01::before {
    background-image: url(../img/top/mv_img01.jpg);
}

#top .mv_area .mv_block .mv_item.item02::before {
    background-image: url(../img/top/mv_img02.jpg);
}

#top .mv_area .mv_block .mv_item.item03::before {
    background-image: url(../img/top/mv_img03.jpg);
}

#top .mv_area .mv_block .mv_item.item04::before {
    background-image: url(../img/top/mv_img04.jpg);
}

#top .mv_area .mv_block .deco_text {
    position: absolute;
    top: calc(160px + 12%);
    right: -2.5%;
    width: 59.4%;
    opacity: 0;
    -webkit-transform: rotate(-6deg) scale(1.1);
    transform: rotate(-6deg) scale(1.1);
    -webkit-animation-duration: 1.6s;
    animation-duration: 1.6s;
    -webkit-animation-fill-mode: both;
    animation-fill-mode: both;
    animation-delay: 1.8s;
    z-index: 10;
}

@keyframes imageBlur {
    0% {
        opacity: 0;
        -webkit-filter: blur(30px);
        -moz-filter: blur(30px);
        -ms-filter: blur(30px);
        -o-filter: blur(30px);
        filter: blur(30px);
        -webkit-transform: rotate(-6deg) scale(1.2);
        transform: rotate(-6deg) scale(1.2);
    }
    100% {
        opacity: 1;
        -webkit-filter: blur(0px);
        -moz-filter: blur(0px);
        -ms-filter: blur(0px);
        -o-filter: blur(0px);
        filter: blur(0px);
        -webkit-transform: rotate(-6deg);
        transform: rotate(-6deg);
    }
}

#top .mv_area .mv_block .deco_text.is_on {
    -webkit-animation-name: imageBlur;
    animation-name: imageBlur;
    opacity: 1;
    -webkit-transform: rotate(-6deg);
    transform: rotate(-6deg);
}

#top .mv_area .news_block {
    position: absolute;
    z-index: 90;
    left: 0;
    bottom: 45px;
    width: 53.1%;
    max-width: 680px;
}

#top .mv_area .news_block .news_box {
    position: relative;
    padding: 12px 8.8% 20px;
    background-color: rgba(255, 255, 255, .2);
    backdrop-filter: blur(20px);
    -webkit-backdrop-filter: blur(20px);
    opacity: 0;
    transform: translateX(-10%);
    transition: 1s ease-in-out 3.8s;
}

#top .mv_area .news_block .news_box .st {
    position: absolute;
    top: 50%;
    left: 4.5%;
    font-size: 12px;
    font-family: "Objektiv Mk1";
    letter-spacing: .1em;
    -webkit-transform: translate(-50%, -50%) rotate(-90deg);
    transform: translate(-50%, -50%) rotate(-90deg);
}

#top .mv_area .news_block .news_box .news_list li {
    border-bottom: 1px solid rgba(255, 255, 255, .26);
}

#top .mv_area .news_block .news_box .news_list li a .wrap {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    padding: 7px 0;
    transition: .3s;
}

#top .mv_area .news_block .news_box .news_list li a:hover .wrap {
    transform: translateX(10px);
}

#top .mv_area .news_block .news_box .news_list li a .date {
    width: 85px;
    font-size: 11px;
    font-family: "Objektiv Mk1";
    letter-spacing: .04em;
}

#top .mv_area .news_block .news_box .news_list li a .ttl {
    width: calc(100% - 85px);
    letter-spacing: .03em;
    overflow: hidden;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 1;
    max-height: 1.5em;
    line-height: 1.5;
}

#top .mv_area .news_block .more_btn {
    position: absolute;
    top: 50%;
    right: -40px;
    -webkit-transform: translate(62.5%, -50%);
    transform: translate(62.5%, -50%);
    width: 80px;
    height: 80px;
    opacity: 0;
    transition: 1s ease-in-out 3.8s;
}

#top .mv_area .news_block .more_btn a {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    position: relative;
    width: 100%;
    height: 100%;
    border: 1px solid #fff;
    font-size: 13px;
    font-family: "Objektiv Mk1";
    letter-spacing: .1em;
}

#top .mv_area .news_block .more_btn a::before {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 100%;
    height: 100%;
    border: 1px solid #fff;
    opacity: 0;
    transition: .3s;
}

#top .mv_area .news_block .more_btn a:hover::before {
    width: calc(100% - 10px);
    height: calc(100% - 10px);
    opacity: .6;
}

#top .mv_area .news_block.is_on .news_box {
    opacity: 1;
    transform: translateX(0);
}

#top .mv_area .news_block.is_on .more_btn {
    right: 0;
    opacity: 1;
}

#top .mv_area .road_wrapper {
    position: absolute;
    right: 0;
    bottom: 0;
    left: 0;
    margin: auto;
    height: 75px;
}

#top .link_area {
    position: relative;
    z-index: 90;
}

#top .link_area .flex_box {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
}

#top .link_area .flex_box::before {
    z-index: 2;
    opacity: .6;
}

#top .link_area .link_box {
    position: relative;
    width: calc(100% / 3);
    height: 240px;
    overflow: hidden;
}

#top .link_area .link_box::before {
    content: "";
    position: absolute;
    z-index: 1;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 100%;
    height: 100%;
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
    transition: .3s;
}

#top .link_area .link_box:hover::before {
    transform: translate(-50%, -50%) scale(1.1);
}

#top .link_area .link_box.business::before {
    background-image: url(../img/top/link_img01.jpg);
}

#top .link_area .link_box.recruit::before {
    background-image: url(../img/top/link_img02.jpg);
    background-position: center 25%;
}

#top .link_area .link_box.company::before {
    background-image: url(../img/top/link_img03.jpg);
    background-position: center 25%;
}

#top .link_area .link_box a {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    position: absolute;
    z-index: 3;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    font-size: 24px;
    font-weight: 700;
}

#top .movie_area .road_wrapper {
    padding: 110px 0 60px;
}

#top .movie_area .road_wrapper .movie {
    max-width: 850px;
    margin: 0 auto;
}

#top .movie_area .road_wrapper .movie iframe {
    width: 100%;
    height: auto;
    aspect-ratio: 16/9;
}

#top #introduce {
    scroll-margin-top: 155px;
}

#top .cnt_area01 .ttl_ptn02 {
    margin-bottom: 50px;
}

#top .cnt_area01 .road_wrapper {
    padding: 33px 0;
}

#top .cnt_area01 .cnt_box {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
    justify-content: space-between;
    padding: 65px 0;
}

#top .cnt_area01 .cnt_box.row_reverse {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
    -webkit-flex-direction: row-reverse;
    -ms-flex-direction: row-reverse;
    flex-direction: row-reverse;
}

#top .cnt_area01 .cnt_box .img_wrp {
    width: 54%;
}

#top .cnt_area01 .cnt_box .txt_wrp {
    width: 44.2%;
}

#top .cnt_area01 .cnt_box .txt_wrp .ttl_g {
    margin-bottom: 12px;
}

#top .cnt_area01 .cnt_box .txt_wrp .ttl_g h3 {
    margin-top: -8px;
    font-size: 36px;
    font-weight: 700;
    line-height: 1.33;
}

#top .cnt_area01 .cnt_box .txt_wrp .ttl_g .en {
    margin-top: 5px;
    font-size: 18px;
}

#top .cnt_area01 .cnt_box .txt_wrp .em_txt {
    font-size: 24px;
    font-weight: 500;
    letter-spacing: .12em;
    line-height: 1.33;
}

#top .cnt_area01 .cnt_box .txt_wrp p {
    margin-top: 5px;
    line-height: 1.71;
}

#top .cnt_area01 .cnt_box .txt_wrp .btn_ptn01 {
    margin-top: 20px;
}

#top .cnt_area01 .cnt_box.moving_box .img_wrp {
    width: 42.2%;
}

#top .cnt_area01 .cnt_box.moving_box .txt_wrp {
    width: 54.6%;
}

#top .cnt_area01 .cnt_box.moving_box .txt_wrp .sub_txt {
    margin-bottom: 20px;
    font-size: 18px;
    letter-spacing: .12em;
    line-height: 1.33;
}

#top .cnt_area01 .cnt_box.moving_box .txt_wrp h3 {
    margin-bottom: 27px;
}

#top .cnt_area01 .cnt_box.moving_box .txt_wrp .btn_ptn01 {
    max-width: 433px;
    margin-right: auto;
    margin-left: auto;
}

#top .cnt_area01 .first_wrapper {
    padding-top: 45px;
}

#top .cnt_area01 .first_wrapper .cnt_box {
    padding-top: 0;
}

#top .cnt_area01 .last_wrapper {
    padding-bottom: 45px;
}

#top .cnt_area01 .road_wrapper:last-of-type {
    padding: 43px 0 0;
}

#top .cnt_area02 {
    background: url(../img/top/recruit_bg01.jpg) no-repeat center/cover;
}

#top .cnt_area02 .road_wrapper {
    padding: 88px 0 105px;
}

#top .cnt_area02 .txt_box {
    width: 51%;
}

#top .cnt_area02 .txt_box .ttl_ptn02 {
    margin-bottom: 63px;
    text-align: left;
}

#top .cnt_area02 .txt_box .em_txt {
    margin-bottom: 25px;
    font-size: 24px;
    font-weight: 500;
    letter-spacing: .12em;
    line-height: 1.33;
}

#top .cnt_area02 .txt_box p {
    font-size: 18px;
    line-height: 1.77;
}

#top .cnt_area02 .txt_box .em_item {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    margin-top: 65px;
    padding: 13.8% 0;
}

#top .cnt_area02 .txt_box .em_item + .em_item {
    margin-top: 20px;
}

#top .cnt_area02 .txt_box .em_item.application {
    background-color: #0094D0;
}

#top .cnt_area02 .txt_box .em_item.special {
    background-color: #3B1E86;
}

#top .cnt_area02 .txt_box .em_item .txt_g {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    width: 53%;
    max-width: 231px;
    padding-top: 5px;
}

#top .cnt_area02 .txt_box .em_item .txt_g h3 {
    font-size: 24px;
    font-weight: 500;
    letter-spacing: .1em;
    line-height: 1.2;
}

#top .cnt_area02 .txt_box .em_item .txt_g .en {
    margin-top: 12px;
    font-size: 12px;
    font-family: "Objektiv Mk1";
    letter-spacing: .1em;
    line-height: 1.2;
}

#top .cnt_area02 .txt_box .em_item .btn_ptn01 {
    width: 38%;
}

#top .cnt_area02 .img_box {
    position: absolute;
    z-index: 100;
    top: 134px;
    right: 0;
    width: 45.3%;
}

#top .cnt_area03 .road_wrapper {
    padding: 65px 0 125px;
}

#top .cnt_area03 .ttl_ptn02 {
    margin-bottom: 65px;
}

#top .cnt_area03 .blog_list {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}

#top .cnt_area03 .blog_list li {
    width: 30.6%;
    margin-left: 4.1%;
}

#top .cnt_area03 .blog_list li:nth-child(3n+1) {
    margin-left: 0;
}

#top .cnt_area03 .blog_list li a {
    display: block;
    transition: .3s;
}

#top .cnt_area03 .blog_list li .img_box {
    position: relative;
    height: 0;
    padding-bottom: 75%;
    overflow: hidden;
}

#top .cnt_area03 .blog_list li .img_box img {
    position: absolute;
    height: 100%;
    object-fit: cover;
    transition: .3s;
}

#top .cnt_area03 .blog_list li a:hover .img_box img {
    transform: scale(1.1);
}

#top .cnt_area03 .blog_list li .txt_box {
    margin-top: 15px;
}

#top .cnt_area03 .blog_list li .txt_box h3 {
    font-size: 18px;
    font-weight: 700;
    line-height: 1.4;
}

#top .cnt_area03 .blog_list li .txt_box p {
    margin-top: 10px;
    line-height: 1.71;
}

#top .cnt_area03 .blog_list li a:hover {
    opacity: .8;
}

#top .cnt_area03 .blog_list li a:hover .img_box img {
    transform: scale(1.1);
}

#top .road_wrapper .cloud[data-i="1"] {
    right: calc(100% + 5px);
    bottom: 405px;
}

#top .road_wrapper .cloud[data-i="2"] {
    right: 20px;
    bottom: calc(100% + 50px);
}

#top .road_wrapper .cloud[data-i="3"] {
    top: 21px;
    right: calc(100% + 12px);
}

#top .road_wrapper.service {
    position: relative;
}

#top .road_wrapper.service .cloud[data-i="4"] {
    top: -140px;
    left: 3%;
    position: absolute;
}

#top .road_wrapper .cloud[data-i="5"] {
    top: 17px;
    right: 49px;
}

#top .road_wrapper .cloud[data-i="6"] {
    top: min(calc((818 / 580) * 45.3vw + 134px + 10px), calc(818px + 134px + 10px));
    right: -27px;
}

#top .road_wrapper .tree[data-i="1"] {
    top: auto;
    bottom: 0;
    transform: translateY(0);
}

#top .road_wrapper .tree[data-i="2"] {
    top: 0;
    transform: translateY(0);
}

#top .road_wrapper.service .contents_in {
    position: relative;
}

#top .road_wrapper.service .contents_in .building[data-i="1"] {
    position: absolute;
    top: -70px;
    left: 0;
}

#top .road_wrapper .building[data-i="2"] {
    right: 15px;
    bottom: calc(100% + 24px);
}

#top .road_wrapper .building[data-i="3"] {
    top: min(calc((818 / 580) * 45.3vw + 134px + 98px), calc(818px + 134px + 98px));
    left: -64px;
}

#top .road_wrapper .building[data-i="4"] {
    top: min(calc((818 / 580) * 45.3vw + 134px + 259px), calc(818px + 134px + 259px));
    left: -64px;
}

#top .road_wrapper .tunnel[data-i="3"] {
    top: calc(134px - 75px + 1px);
}

#top .road_wrapper .tunnel[data-i="4"] {
    top: min(calc((818 / 580) * 45.3vw + 134px - 1px), calc(818px + 134px - 1px));
}

/*----------
02-01.transport
----------*/
#transport .cnt_area01 .road_wrapper {
    padding: 60px 0 80px;
}

#transport .cnt_area01 .ttl_ptn01 .main_ttl {
    font-size: 32px;
}

#transport .cnt_area01 p {
    margin-top: 22px;
    letter-spacing: 0.08em;
    line-height: 2.28;
    text-align: center;
}

#transport .cnt_area02 {
    background: url(../img/business/transport/vehicle_bg01.jpg) no-repeat center/cover;
}

#transport .cnt_area02 .road_wrapper {
    padding: 63px 0 100px;
}

#transport .cnt_area02 .under_tree {
    height: 1151px;
}

#transport .cnt_area02 .ttl_ptn01 {
    margin-bottom: 30px;
}

#transport .cnt_area02 .cnt_box .txt_wrp {
    margin-top: 16px;
}

#transport .cnt_area02 .cnt_box .txt_wrp h3 {
    font-size: 28px;
    font-weight: 700;
    line-height: 1.4;
}

#transport .cnt_area02 .cnt_box .txt_wrp p {
    margin-top: 12px;
    font-size: 14px;
    line-height: 1.71;
}

#transport .cnt_area02 .flex_box {
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
    justify-content: space-between;

}

#transport .cnt_area02 .cnt_box + .cnt_box {
    margin-top: 50px;
}

#transport .cnt_area02 .img_wrp.flex {
    display: flex;
    justify-content: space-between;
}

#transport .cnt_area02 .img_wrp.flex img {
    width: 48%;
}

#transport .cnt_area03 .road_wrapper {
    padding: 152px 0 105px;
}

#transport .cnt_area03 .under_tree {
    height: 831px;
}

#transport .cnt_area03 .ttl_ptn01 {
    margin-bottom: 60px;
}

#transport .cnt_area03 .ttl_ptn01::before {
    top: -55px;
}

#transport .cnt_area03 .cnt_box {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
    justify-content: space-between;
}

#transport .cnt_area03 .cnt_box:nth-of-type(even) {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
    -webkit-flex-direction: row-reverse;
    -ms-flex-direction: row-reverse;
    flex-direction: row-reverse;
}

#transport .cnt_area03 .cnt_box + .cnt_box {
    margin-top: 60px;
}

#transport .cnt_area03 .cnt_box .img_wrp {
    width: 46.9%;
}

#transport .cnt_area03 .cnt_box .txt_wrp {
    width: 50%;
    max-width: 450px;
}

#transport .cnt_area03 .cnt_box .txt_wrp h3 {
    font-size: 28px;
    font-weight: 500;
    line-height: 1.4;
}

#transport .cnt_area03 .cnt_box .txt_wrp p {
    margin-top: 17px;
    letter-spacing: 0.08em;
    line-height: 2.28;
}

#transport .cnt_area04::before {
    z-index: 2;
    top: 70px;
    height: calc(100% - 70px);
}

#transport .cnt_area04::after {
    content: "";
    position: absolute;
    z-index: 1;
    top: 70px;
    left: 0;
    width: 100%;
    height: calc(100% - 70px);
    background: url(../img/business/transport/education_bg01.jpg) no-repeat center/cover;
}

#transport .cnt_area04 .road_wrapper {
    padding: 125px 0 92px;
    z-index: 2;
}

#transport .cnt_area04 .under_tree {
    height: 1728px;
}

#transport .cnt_area04 .contents_in {
    position: relative;
    z-index: 3;
}

#transport .cnt_area04 .ttl_ptn01 {
    margin-bottom: 67px;
}

#transport .cnt_area04 .ttl_ptn01::before {
    top: -75px;
}

#transport .cnt_area04 .cnt_block h3 {
    margin-bottom: 27px;
    font-size: 28px;
    font-weight: 700;
    line-height: 1.4;
    text-align: center;
}

#transport .cnt_area04 .cnt_block .flex_box {
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
    justify-content: space-between;
}

#transport .cnt_area04 .cnt_block .cnt_box {
    width: 30.6%;
}

#transport .cnt_area04 .cnt_block .cnt_box .txt_wrp {
    margin-top: 9px;
}

#transport .cnt_area04 .cnt_block .cnt_box .txt_wrp h4 {
    font-size: 24px;
    font-weight: 500;
    line-height: 1.4;
}

#transport .cnt_area04 .cnt_block .cnt_box .txt_wrp p {
    margin-top: 5px;
    line-height: 1.71;
}

#transport .cnt_area04 .sub_block {
    margin-top: 80px;
}

#transport .cnt_area04 .sub_block .sub_box {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
    justify-content: space-between;
}

#transport .cnt_area04 .sub_block .sub_box:nth-of-type(odd) {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
    -webkit-flex-direction: row-reverse;
    -ms-flex-direction: row-reverse;
    flex-direction: row-reverse;
}

#transport .cnt_area04 .sub_block .sub_box + .sub_box {
    margin-top: 65px;
}

#transport .cnt_area04 .sub_block .sub_box .img_wrp {
    width: 45.9%;
}

#transport .cnt_area04 .sub_block .sub_box .txt_wrp {
    width: 50%;
    max-width: 450px;
}

#transport .cnt_area04 .sub_block .sub_box .txt_wrp h3 {
    font-size: 28px;
    font-weight: 500;
    line-height: 1.4;
}

#transport .cnt_area04 .sub_block .sub_box .txt_wrp p {
    margin-top: 30px;
    letter-spacing: 0.08em;
    line-height: 2.28;
}

#transport .cnt_area04 .sub_block .sub_box.box02 {
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
}

#transport .cnt_area04 .sub_block .sub_box.box02 .img_wrp {
    width: 30.6%;
}

#transport .cnt_area04 .sub_block .sub_box.box02 .txt_wrp {
    width: 64%;
    max-width: 602px;
    padding-bottom: 30px;
}

#transport .cnt_area05 .road_wrapper {
    padding: 135px 0 115px;
}

#transport .cnt_area05 .under_tree {
    height: 831px;
}

#transport .cnt_area05 .ttl_ptn01 {
    margin-bottom: 25px;
}

#transport .cnt_area05 .map {
    padding-bottom: 450px;
}

#transport .cnt_area05 .map::before {
    z-index: 1;
    top: -25px;
    pointer-events: none;
}

#transport .cnt_area05 .map iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

#transport .cnt_area05 .flex_box {
    flex-direction: row-reverse;
    margin-top: 60px;
}

#transport .cnt_area05 .img_wrp {
    width: 23%;
    max-width: 217px;
}

#transport .cnt_area05 .txt_wrp {
    margin-right: auto;
    margin-left: 38px;
}

#transport .cnt_area05 .txt_wrp .em_txt {
    font-size: 32px;
    letter-spacing: 0.1em;
    line-height: 1.5;
}

#transport .cnt_area05 .txt_wrp p {
    margin-top: 14px;
    letter-spacing: 0.08em;
    line-height: 2.28;
}

/*----------
02-02.warehouse
----------*/
#warehouse {
    position: relative;
}

#warehouse .title_area_ptn01 {
    background: url(../img/business/warehouse/title_bg.jpg) no-repeat center/cover;
}

#warehouse .cnt_area01 .road_wrapper {
    padding: 62px 0 79.7px;
}

#warehouse .cnt_area02 {
    background: url(../img/business/warehouse/area02_bg.jpg) no-repeat center/cover;
}

#warehouse .cnt_area02 .road_wrapper {
    padding: 62px 0 0;
}

#warehouse .cnt_area02 .under_tree {
    height: 962px;
}

#warehouse .cnt_area02 .road_wrapper .ttl_ptn01 {
    padding: 0 0 79.7px;
}

#warehouse .cnt_area02 .cnt_box {
    max-width: 809px;
    margin: 0 auto 64px;
    display: flex;
    justify-content: space-between;
}

#warehouse .cnt_area02 .cnt_box:nth-child(odd) {
    flex-direction: row-reverse;
}

#warehouse .cnt_area02 .cnt_box .cnt_img {
    width: 46.7%;
}

#warehouse .cnt_area02 .cnt_box .text_g {
    max-width: 390px;
    width: 48.94%;
}

#warehouse .cnt_area02 .cnt_box .text_g01 {
    display: flex;
}

#warehouse .cnt_area02 .cnt_box:nth-child(odd) .text_g .text_box {
    max-width: 390px;
    margin-left: auto;
}

#warehouse .cnt_area02 .cnt_box .text_g .img_box {
    max-width: 170px;
    margin-left: 20px;
}

#warehouse .cnt_area02 .cnt_box h3 {
    font-size: 28px;
    line-height: 40px;
    font-weight: 700;
    margin: 0 0 15px;
}

#warehouse .cnt_area02 .cnt_box .border_white {
    display: inline-block;
    border: 1px solid;
    font-size: 14px;
    line-height: 20px;
    margin-bottom: 15px;
}

#warehouse .cnt_area02 .cnt_box .border_white a {
    padding: 10.5px 14.5px;
    display: block;
}

#warehouse .cnt_area02 .cnt_box .sub_txt {
    font-size: 14px;
    line-height: 20px;
    margin-bottom: 8px;
}

#warehouse .cnt_area02 .road_wrapper .contents_in {
    padding: 0 0 86.9px;
}

#warehouse .cnt_area03 .road_wrapper {
    padding: 136.2px 0 221.9px;
}

#warehouse .cnt_area03 .under_tree {
    height: 639px;
}

#warehouse .cnt_area03 .flex_box {
    justify-content: space-between;
}

#warehouse .cnt_area03 .ttl_ptn01 .main_ttl {
    margin-bottom: 44px;
}

#warehouse .cnt_area03 .cnt_box {
    text-align: left;
    width: 30.6%;
}

#warehouse .cnt_area03 .cnt_img {
    margin-bottom: 14.5px;
}

#warehouse .cnt_area03 h3 {
    font-size: 24px;
    line-height: 35px;
    font-weight: 500;
    margin: 0 0 15px;
}

#warehouse .cnt_area03 p {
    font-size: 14px;
    line-height: 24px;
}

/*----------
02-03.planning
----------*/
#planning .title_area_ptn01 {
    background: url(../img/business/planning/title_bg.jpg) no-repeat center/cover;
}

#planning .cnt_area01 .contents_in {
    padding: 84.5px 0 65.2px;
}

#planning .cnt_area01 .ttl_ptn01 .sub_txt {
    margin: 0 auto 0;
    font-size: 32px;
    line-height: 57px;
    font-weight: 700;
}

#planning .cnt_area02 {
    background-image: url(../img/business/planning/area02_bg.jpg);
}

#planning .cnt_area02 .road_wrapper {
    padding: 82px 0 79px;
}

#planning .cnt_area02 .under_tree {
    height: 1023px;
}

#planning .cnt_area02 .fukidashi {
    padding: 43px 49px;
    max-width: 777px;
    background-color: #408DE9;
    position: relative;
    margin: 0 auto 47px;
}

#planning .cnt_area02 .fukidashi .txt {
    font-size: 28px;
    line-height: 40px;
    font-weight: 700;
    text-align: center;
    margin-bottom: 27px;
}

#planning .cnt_area02 .fukidashi span {
    display: block;
    font-size: 18px;
    font-weight: 700;
    letter-spacing: 0.16em;
    line-height: 26px;
    text-align: center;
    background-color: #1EA994;
    border-radius: 5px;
    padding: 16px 10px;
}

#planning .cnt_area02 .fukidashi span:not(:last-of-type) {
    margin-bottom: 11px;
}

#planning .cnt_area02 .fukidashi::after {
    content: "";
    display: inline-block;
    width: 78px;
    height: 27px;
    clip-path: polygon(50% 0, 100% 100%, 0 100%);
    background-color: #408DE9;
    position: absolute;
    bottom: -27px;
    left: 50%;
    transform: scale(1, -1) translateX(-50%);
}

#planning .cnt_area02 .cnt_box .flex_box {
    max-width: 641px;
    justify-content: space-between;
    margin: 0 auto;
}

#planning .cnt_area02 .cnt_box .flex_box .cnt_img {
    width: 48.6%;
}

#planning .cnt_area02 .cnt_box {
    max-width: 775px;
    margin: 0 auto;
    background-color: rgba(33, 70, 187, 0.6);
    padding: 41px 10px 44px;

}

#planning .cnt_area02 .cnt_box .txt {
    font-size: 28px;
    line-height: 44px;
    font-weight: 700;
    margin-bottom: 6px;
    text-align: center;
}

#planning .cnt_area02 .cnt_box p {
    font-size: 14px;
    line-height: 24px;
    margin-bottom: 25px;
    text-align: center;
}

#planning .cnt_area03 .under_tree {
    height: 1727px;
    top: inherit;
    transform: translateY(0);
    bottom: 0;
}

.flow_g .road_wrapper {
    padding: 73.2px 0 125px;
}

.flow_g h2 {
    margin-bottom: 35px;
}

.flow_g .flex_box {
    border: 1px solid;
    padding: 33px 34px 37px;
    text-align: left;
    justify-content: space-between;
    position: relative;
    margin-bottom: 69px;
}

.flow_g .flex_box::after {
    content: "";
    display: inline-block;
    width: 78px;
    height: 16px;
    clip-path: polygon(50% 0, 100% 100%, 0 100%);
    background-color: rgba(217, 217, 217, 0.79);
    position: absolute;
    bottom: -40px;
    left: 50%;
    transform: scale(1, -1) translateX(-50%);
}

.flow_g .flex_box .txt {
    font-size: 28px;
    line-height: 40px;
    margin-bottom: 13px;
    font-weight: 700;

    display: flex;
    align-items: center;
}

.flow_g .flex_box .txt::before {
    content: "";
    display: inline-block;
    width: 45px;
    height: 45px;
    background: center/contain no-repeat;
    margin-right: 7px;
}

.flow_g .flex_box01 .txt::before {
    background-image: url(../common/img/num01.png);
}

.flow_g .flex_box02 .txt::before {
    background-image: url(../common/img/num02.png);
}

.flow_g .flex_box03 .txt::before {
    background-image: url(../common/img/num03.png);
}

.flow_g .flex_box04 .txt::before {
    background-image: url(../common/img/num04.png);
}

.flow_g .flex_box05 .txt::before {
    background-image: url(../common/img/num05.png);
}

.flow_g .flex_box06 .txt::before {
    background-image: url(../common/img/num06.png);
}

.flow_g .flex_box:last-of-type:after {
    content: none;
}


.flow_g .flex_box .txt + span {
    display: block;
    font-size: 14px;
    font-weight: 500;
    line-height: 24px;
}

.flow_g .flex_box .left {
    width: 58.55%;
}

.flow_g .flex_box .opacity_box {
    padding: 17px 37px 16px;
    background-color: rgba(255, 255, 255, 0.15);
    margin-top: 25px;
}

.flow_g .flex_box .opacity_box .green {
    display: inline-block;
    font-size: 14px;
    line-height: 20px;
    font-weight: 700;
    padding: 5px 13px;
    background-color: #1EA994;
    margin-bottom: 9px;
}

.flow_g .flex_box .opacity_box .flex_box_in {
    display: flex;
    max-width: 409px;
    justify-content: space-between;
    flex-wrap: wrap;
}

.flow_g .flex_box .opacity_box .flex_box_in ul {
    line-height: 22px;
    font-size: 14px;
    width: 198px;
}

.flow_g .flex_box .right {
    width: 38.8%;
}

.flow_g .flex_box.left_none {
    flex-direction: column;
}

.flow_g .flex_box.left_none .left {
    width: 100%;
}

#planning .cnt_area04 {
    position: relative;
}

#planning .cnt_area04::before {
    content: "";
    display: inline-block;
    width: 100%;
    height: 1159px;
    background-image: url(../img/business/planning/area04_bg.jpg);
    position: relative;
    background-size: cover;
    top: 0;
    position: absolute;
    left: 0;
}

#planning .cnt_area04 .road_wrapper {
    padding: 49px 0 249.8px;
}

#planning .cnt_area04 .under_tree {
    height: 1089px;
    top: 0;
    transform: translateY(0);
}

#planning .cnt_area04 .ttl_ptn01 .main_ttl {
    font-size: 40px;
    line-height: 58px;
    margin-bottom: 51px;
}

#planning .cnt_area04 .txt {
    font-size: 28px;
    line-height: 40px;
    text-align: center;
    letter-spacing: 0.06em;
    font-weight: 700;
    margin-bottom: 23px;
}

#planning .cnt_area04 .flex_box {
    justify-content: space-between;
    max-width: 877px;
    margin: 0 auto 75px;
}

#planning .cnt_area03 .contents_in .flex_box05:last-of-type {
    margin-bottom: 0;
}

#planning .cnt_area04 .cnt_box {
    width: 46%;
}

#planning .cnt_area04 .cnt_box .cnt_img {
    margin-bottom: 15px;
}

#planning .cnt_area04 ul {
    font-size: 15px;
    letter-spacing: 0.08em;
    font-weight: 500;
    line-height: 23px;
    text-align: left;
}

#planning .cnt_area04 ul li {
    text-indent: -1em;
    padding-left: 1em;
}

#planning .road_wrapper .tree[data-i="2"] {
    top: auto;
    bottom: 0;
    transform: translateY(0);
}

#planning .road_wrapper .tree[data-i="3"] {
    top: 0;
    bottom: auto;
}

/*----------
02-04.moving
----------*/
#moving .title_area_ptn01 {
    background-image: url(../img/business/moving/title_bg.jpg);
}

#moving .cnt_area01 .road_wrapper {
    padding: 92px 0 117px;
    font-size: 32px;
    line-height: 57px;
    font-weight: 700;
}

#moving .cnt_area02 {
    background: 6px 99.3px /contain no-repeat url(../img/business/moving/area02_bg.png);
    position: relative;
}

#moving .cnt_area02 .road_wrapper {
    padding: 92px 0 76.9px;
    font-size: 32px;
    line-height: 57px;
    font-weight: 700;
}

#moving .cnt_area02 .under_tree {
    height: 959px;
}

#moving .cnt_area02 .text {
    font-size: 40px;
    font-weight: 700;
    text-align: center;
    position: relative;
    line-height: 53px;
    margin-bottom: 28px;
    z-index: 1;
}

#moving .cnt_area02 .text::after {
    content: "";
    display: inline-block;
    width: 567px;
    height: 24px;
    position: absolute;
    bottom: -7px;
    left: 50%;
    transform: translateX(-50%);
    background: linear-gradient(#4993EF, #1EA994);
    z-index: -1;
    opacity: 0.8;
}

#moving .cnt_area02 .text02 {
    font-weight: 700;
    letter-spacing: -0.01em;
    font-size: 57px;
    line-height: 76px;
    text-align: center;
    margin-bottom: 41px;
}

#moving .cnt_area02 .flex_box {
    max-width: 551px;
    margin: 0 auto 78px;
    justify-content: space-between;
}

#moving .cnt_area02 .flex_box .cnt_img {
    width: 21.44%;
}

#moving .cnt_area02 .flex_box p {
    width: 74.8%;
    font-size: 18px;
    letter-spacing: 0.04em;
    line-height: 32px;
}

#moving .cnt_area02 .text02 span {
    display: inline-block;
    font-size: 39px;
    margin-right: 14px;
}

#moving .cnt_area02 .movie_wrap {
    max-width: 787px;
    margin: 0 auto;
}

#moving .cnt_area03 .road_wrapper {
    padding: 138.4px 0 126.3px;
    position: relative;
}

#moving .cnt_area03 .under_tree {
    height: 4096px;
}

#moving .cnt_area03 .first_box {
    display: flex;
    justify-content: center;
    gap: 10%;
    margin-bottom: 123.8px;
}

#moving .cnt_area03 .first_box .cnt_box {
    width: 30.6%;
}

#moving .cnt_area03 .first_box .cnt_img {
    margin-bottom: 9.5px;
}

#moving .cnt_area03 .first_box .title {
    font-size: 24px;
    line-height: 30px;
    margin-bottom: 15px;
    font-weight: 500;
}

#moving .cnt_area03 .first_box p {
    line-height: 24px;
    margin-bottom: 12px;
}

#moving .cnt_area03 .first_box .opacity {
    line-height: 22px;
    padding: 12px 15px 17px;
    background-color: rgba(255, 255, 255, 0.15);
}

#moving .cnt_area03 .campaing {
    border: 2px solid;
    text-align: center;
    padding: 40px 0 49px;
    background-color: #384FA4;
    position: relative;
    font-weight: 700;
    margin-bottom: 124px;
}

#moving .cnt_area03 .campaing img {
    width: 16.6%;
    transform: rotate(-15deg);
    position: absolute;
    top: 21.4px;
    left: 91.2px;
}

#moving .cnt_area03 .campaing .title {
    max-width: 420.35px;
    font-size: 40px;
    margin: 0 auto 9px;
    position: relative;
    display: flex;
    justify-content: space-between;
}

#moving .cnt_area03 .campaing .title::before, #moving .cnt_area03 .campaing .title::after {
    content: "";
    display: inline-block;
    width: 29.35px;
    height: 42.29px;
    background: center/contain no-repeat url(../img/business/moving/fukidashi.png);
}

#moving .cnt_area03 .campaing .title::before {
    margin-right: 21.7px;
}

#moving .cnt_area03 .campaing .title::after {
    margin-left: 21.7px;
    transform: scale(1, -1);
}

#moving .cnt_area03 .campaing .yellow {
    color: #FFF01C;
    font-size: 29px;
    line-height: 42px;
    margin-bottom: 9px;
}

#moving .cnt_area03 .campaing .text {
    font-size: 29px;
    line-height: 42px;
    margin-bottom: 0.3px;
}

#moving .cnt_area03 .campaing .green {
    font-size: 29px;
    line-height: 42px;
    color: #9FFFF1;
    margin-bottom: 9px;
}

#moving .cnt_area03 .campaing .sub {
    font-size: 16px;
    line-height: 24px;
}

#moving .cnt_area03 .campaing::before, #moving .cnt_area03 .campaing::after {
    content: "";
    display: inline-block;
    width: 90px;
    height: 45px;
    clip-path: polygon(50% 0, 100% 100%, 0 100%);
    background-color: #fff;
    position: absolute;
}

#moving .cnt_area03 .campaing::before {
    left: -30px;
    top: -7px;
    transform: rotate(-45deg);
}

#moving .cnt_area03 .campaing::after {
    bottom: -7px;
    right: -30px;
    transform: rotate(135deg);
}

#moving .cnt_area03 .cnt_g01 .title {
    font-size: 40px;
    line-height: 58px;
    text-align: center;
    font-weight: 700;
    margin-bottom: 37px;
}

#moving .cnt_area03 .cnt_g01 .sub_text {
    text-align: center;
    font-size: 30px;
    line-height: 44px;
    font-weight: 700;
    margin-bottom: 38px;
}

#moving .cnt_area03 .cnt_g01 .sub_text span {
    position: relative;
    display: inline-block;
    z-index: 1;
}

#moving .cnt_area03 .cnt_g01 .sub_text span::after {
    content: "";
    display: inline-block;
    width: 100%;
    height: 20px;
    background: linear-gradient(90deg, #4993EF, #1EA994);
    opacity: 0.8;
    position: absolute;
    bottom: 2px;
    left: 0;
    right: 0;
    z-index: -1;
}

#moving .cnt_area03 .cnt_g01 .flex_box {
    max-width: 814px;
    margin: 0 auto 124px;
    justify-content: space-between;
}

#moving .cnt_area03 .cnt_g01 .flex_box .cnt_img {
    width: 55.5%;
}

#moving .cnt_area03 .cnt_g01 .flex_box .text_g {
    width: 41.5%;
}

#moving .cnt_area03 .cnt_g01 .blue {
    font-size: 24px;
    line-height: 35px;
    font-weight: 700;
}

#moving .cnt_area03 .cnt_g01 .blue span {
    display: inline-block;
    color: #9FFFF1;
    font-size: 30px;
    line-height: 40px;
    margin-right: 7px;
}

#moving .cnt_area03 .cnt_g01 .sub {
    font-size: 16px;
    line-height: 24px;
    font-weight: 700;
    margin-top: 19px;
}

#moving .cnt_area03 .banner {
    margin-bottom: 124px;
}

#moving .cnt_area03 .banner a {
    display: flex;
    padding: 20px 21px 18px 38.7px;
    background: linear-gradient(#3B1E86, #0094D0);
    position: relative;
}

#moving .cnt_area03 .banner .left {
    width: 40.4%;

}

#moving .cnt_area03 .banner .left .text {
    font-size: 74px;
    font-weight: 700;
    letter-spacing: 1px;
    line-height: 89px;
    text-shadow: 3px 5px 1px rgba(0, 0, 0, 0.42);
    margin-top: 62.7px;
}

#moving .cnt_area03 .banner .right {
    width: 61.8%;
}

#moving .cnt_area03 .banner .text01 {
    width: 29.7%;
    position: absolute;
}

#moving .cnt_area03 .banner .btn_text {
    font-size: 17px;
    font-weight: 700;
    line-height: 25px;
    width: 197px;
    background: linear-gradient(#F8CB75, #DDF085);
    padding: 6.5px 0;
    text-align: center;
    border-radius: 5px;
    color: #12215B;
    position: absolute;
    bottom: 27px;
    right: 31px;
}

#moving .cnt_area03 .linkBtn {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    max-width: 590px;
    margin: 20px auto 0;
    color: #1D2F50;
    font-size: 25px;
    line-height: 36px;
    font-weight: 700;
    padding: 25px 0;
    background: linear-gradient(#F8CB75, #DDF085);
    border-radius: 5px;
    font-family: 'Noto Sans JP', sans-serif;
    position: relative;
}

#moving .cnt_area03 .linkBtn::after {
    content: "";
    display: inline-block;
    width: 10.15px;
    height: 17.62px;
    position: absolute;
    right: 38.9px;
    top: 50%;
    transform: translateY(-50%);
    background: center / contain no-repeat url(../common/img/arrow_blue.png);
}

.contact_area .contact__moving {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    gap: 15px 15px;
    max-width: inherit;
    height: auto;
}

.contact_area .contact__moving a {
    max-width: 409px;
    height: 62px;
}

/****** サービス ******/
.movingServiceArea {
    margin-top: 50px;
    width: 100%;
    max-width: 800px;
    margin-inline: auto;
}

.movingService__ttl {
    text-align: center;
    font-weight: bold;
    font-size: 40px;
    margin-bottom: 20px;
}

.movingServiceList__item + .movingServiceList__item {
    margin-top: 15px;
}

.movingServiceList__txt {
    padding-left: 1em;
    text-indent: -1em;
    font-size: 18px;
    line-height: 1.8;
}

/*----------
02-05.designtruck
----------*/
#designtruck {
    position: relative;
    z-index: 1;
}

#designtruck .cmn_flex {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: justify;
    -webkit-justify-content: center;
    -ms-flex-pack: justify;
    justify-content: center;
    gap: 5%;
}

#designtruck .cmn_flex .cnt_box {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
    justify-content: space-between;
    width: 46.9%;
}

#designtruck .cmn_flex .cnt_box.reverse {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
    -webkit-flex-direction: row-reverse;
    -ms-flex-direction: row-reverse;
    flex-direction: row-reverse;
}

#designtruck .cmn_flex .cnt_box:nth-of-type(n + 3) {
    margin-top: 50px;
}

#designtruck .cmn_flex .cnt_box .img_wrp {
    position: relative;
    width: 39.1%;
    height: 0;
    padding-bottom: 39.1%;
    border-radius: 50%;
    overflow: hidden;
}

#designtruck .cmn_flex .cnt_box .img_wrp img {
    position: absolute;
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
}

#designtruck .cmn_flex .cnt_box .txt_wrp {
    width: 56.5%;
}

#designtruck .cmn_flex .cnt_box .txt_wrp h3 {
    font-size: 20px;
    font-weight: 700;
    line-height: 1.4;
}

#designtruck .cmn_flex .cnt_box .txt_wrp p {
    margin-top: 5px;
    line-height: 1.71;
}

#designtruck .mv_area {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: end;
    -webkit-align-items: flex-end;
    -ms-flex-align: end;
    align-items: flex-end;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    height: calc(100svh - 80px);
    max-height: 800px;
    min-height: calc(720px - 80px);
}

#designtruck .mv_area .mv_block {
    padding-bottom: 7%;
}

#designtruck .mv_area .mv_block .txt_box {
    position: relative;
    text-align: center;
}

#designtruck .mv_area .mv_block .txt_box .small {
    margin-bottom: 2px;
    line-height: 1.4;
}

#designtruck .mv_area .mv_block .txt_box h1 {
    font-size: 48px;
    font-weight: 700;
    line-height: 1.4;
}

#designtruck .mv_area .mv_block .txt_box .sub {
    margin-top: 10px;
    padding-left: 1.5em;
    font-size: 28px;
    font-weight: 700;
}

#designtruck .mv_area .mv_block .txt_box .handwriting {
    position: absolute;
    right: 0;
    bottom: 0;
    -webkit-transform: translate(25%, 50%) rotate(-15deg);
    transform: translate(25%, 50%) rotate(-15deg);
}

#designtruck .mv_area .mv_block .truck {
    width: 62.9%;
    margin: 30px auto -25px;
    transform: scale(1.178);
}

#designtruck .cnt_area01 .flex_box {
    -webkit-box-align: stretch;
    -webkit-align-items: stretch;
    -ms-flex-align: stretch;
    align-items: stretch;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
    justify-content: space-between;
}

#designtruck .cnt_area01 .cnt_box {
    border-radius: 5px;
}

#designtruck .cnt_area01 .cnt_box.box01 {
    position: relative;
    width: calc((100% - 32px) * .443);
    padding: 40px 15px;
    background-color: rgba(48, 125, 217, 0.79);
    text-align: center;
}

#designtruck .cnt_area01 .cnt_box.box01::after {
    content: "";
    position: absolute;
    top: calc(50% - 19px);
    left: 100%;
    border: 19px solid rgba(0, 0, 0, 0);
    border-right: 0;
    border-left: 27px solid rgba(48, 125, 217, 0.79);
}

#designtruck .cnt_area01 .cnt_box.box02 {
    width: calc((100% - 32px) * .557);
    padding: 50px 3.9% 40px;
    background-color: rgba(33, 70, 187, 0.6);
}

#designtruck .cnt_area01 .cnt_box .em_txt {
    font-size: 28px;
    font-weight: 700;
    line-height: 1.35;
}

#designtruck .cnt_area01 .cnt_box .txt01 {
    margin-top: 40px;
    font-size: 18px;
    font-weight: 700;
    line-height: 1.55;
}

#designtruck .cnt_area01 .cnt_box .txt02 {
    margin-top: 24px;
    font-weight: 500;
    line-height: 1.71;
}

#designtruck .cnt_area01 .btn_ptn02 {
    margin: 40px auto 0;
}

#designtruck .cnt_area01 .btn_ptn02 a {
    padding: 0 35px 0 25px;
}

#designtruck .cnt_area01 .em_btn {
    max-width: 570px;
    width: 100%;
    height: 80px;
    margin: 0 auto 80px;
}

#designtruck .cnt_area01 .em_btn a {
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
    width: 100%;
    height: 100%;
    border-radius: 100px;
    padding-right: 35px;
    background: -webkit-linear-gradient(top, #9FFFF1, #9FCAFF);
    background: linear-gradient(to bottom, #9FFFF1, #9FCAFF);
    color: #0E498F;
    font-size: 25px;
    font-weight: 700;
    line-height: 1.3;
}

#designtruck .cnt_area01 .em_btn a::after {
    content: "";
    position: absolute;
    top: 50%;
    right: 55px;
    transform: translateY(-50%);
    border: 8px solid rgba(0, 0, 0, 0);
    border-right: 0;
    border-left: 14px solid #0E498F;
    transition: .3s;
}

#designtruck .cnt_area01 .em_btn a:hover::after {
    right: 50px;
}

#designtruck .cnt_area02 {
    padding-top: 80px;
}

#designtruck .cnt_area02 .movie {
    max-width: 850px;
    margin: 0 auto;
}

#designtruck .cnt_area02 .movie video {
    width: 100%;
}

#designtruck .cnt_area03 {
    padding: 120px 0 100px;
}

#designtruck .cnt_area03 .ttl_ptn01 {
    margin-bottom: 55px;
}

#designtruck .cnt_area03 .ttl_ptn01::before {
    top: -40px;
    background-color: #2C78DB;
}

#designtruck .cnt_area03 .strong {
    font-weight: 700;
}

#designtruck .cnt_area04 {
    background: url(../img/business/designtruck/features_bg01.jpg) no-repeat center/cover;
}

#designtruck .cnt_area04::before {
    z-index: 1;
    top: -20px;
    background-color: #2C78DB;
}

#designtruck .cnt_area04 .gradient_bg {
    padding: 60px 0 100px;
}

#designtruck .cnt_area04 .contents_in {
    position: relative;
}

#designtruck .cnt_area04 .ttl_ptn01 {
    margin-bottom: 60px;
}

#designtruck .cnt_area04 .strong {
    font-weight: 700;
}

#designtruck .cnt_area05 {
    padding: 80px 0 100px;
    background-color: #1D2F50;
}

#designtruck .cnt_area05::before {
    top: -20px;
}

#designtruck .cnt_area05 .ttl_ptn01 {
    margin-bottom: 50px;
}

#designtruck .cnt_area05 .cnt_block .cnt_box {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    position: relative;
    width: 50%;
}

#designtruck .cnt_area05 .cnt_block .cnt_box::before {
    content: "";
    position: absolute;
    top: 0;
    right: -.5px;
    width: 1px;
    height: 100%;
    background-color: #2680EB;
}

#designtruck .cnt_area05 .cnt_block .cnt_box .ico {
    width: 100px;
}

#designtruck .cnt_area05 .cnt_block .cnt_box .txt_g {
    width: calc(100% - 100px);
}

#designtruck .cnt_area05 .cnt_block .cnt_box .txt_g .st {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: end;
    -webkit-align-items: flex-end;
    -ms-flex-align: end;
    align-items: flex-end;
    position: relative;
    height: 50px;
    padding: 0 30px 5px 13px;
    border-bottom: 1px solid #2680EB;
    font-size: 28px;
    font-weight: 700;
    line-height: 1.33;
}

#designtruck .cnt_area05 .cnt_block .cnt_box .txt_g .st::before {
    content: "";
    position: absolute;
    z-index: 1;
    right: -10px;
    bottom: -10px;
    width: 20px;
    height: 20px;
    border-radius: 50%;
    background-color: #2A76D6;
}

#designtruck .cnt_area05 .cnt_block .cnt_box .txt_g .st .step {
    margin-right: 12px;
    font-family: "Objektiv Mk1";
    font-weight: 500;
}

#designtruck .cnt_area05 .cnt_block .cnt_box .txt_g p {
    padding: 8px 30px 0 13px;
    line-height: 1.71;
}

#designtruck .cnt_area05 .cnt_block .cnt_box:nth-of-type(even) {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
    -webkit-flex-direction: row-reverse;
    -ms-flex-direction: row-reverse;
    flex-direction: row-reverse;
    margin-left: auto;
}

#designtruck .cnt_area05 .cnt_block .cnt_box:nth-of-type(even)::before {
    right: auto;
    left: -.5px;
}

#designtruck .cnt_area05 .cnt_block .cnt_box:nth-of-type(even) .txt_g .st {
    padding: 0 13px 5px 30px;
}

#designtruck .cnt_area05 .cnt_block .cnt_box:nth-of-type(even) .txt_g .st::before {
    right: auto;
    left: -10px;
}

#designtruck .cnt_area05 .cnt_block .cnt_box:nth-of-type(even) .txt_g p {
    padding: 8px 13px 0 30px;
}

#designtruck .cnt_area05 .cnt_block .cnt_box:first-of-type::before {
    top: auto;
    bottom: 0;
    height: calc(100% - 50px);
}

#designtruck .cnt_area05 .cnt_block .cnt_box:first-of-type .txt_g .st {
    border-right: 0;
}

#designtruck .cnt_area05 .cnt_block .cnt_box:last-of-type::before {
    height: 50px;
}

#designtruck .cnt_area05 .cnt_block .cnt_box:last-of-type .txt_g p {
    border-right: 0;
    border-left: 0;
}

#designtruck .cnt_area06 {
    background: url(../img/business/designtruck/features_bg01.jpg) no-repeat center/cover;
}

#designtruck .cnt_area06::before {
    z-index: 1;
    top: -20px;
}

#designtruck .cnt_area06 .gradient_bg {
    padding: 60px 0 100px;
}

#designtruck .cnt_area06 .contents_in {
    position: relative;
}

#designtruck .cnt_area06 .ttl_ptn01 {
    margin-bottom: 50px;
}

#designtruck .cnt_area06 .cnt_block {
    max-width: 980px;
    margin: 0 auto;
    padding: 35px 52px 40px;
    border-radius: 10px;
    background-color: #fff;
    color: #000;
}

#designtruck .cnt_area06 .cnt_block .st {
    margin-bottom: 35px;
    color: #2A76D6;
    font-size: 28px;
    font-weight: 700;
    line-height: 1.4;
    text-align: center;
}

#designtruck .cnt_area06 .cnt_block table {
    border: solid #0E498F 1px;
    width: 100%;
}

#designtruck .cnt_area06 .cnt_block table tr {
    border-top: solid #0E498F 1px;
}

#designtruck .cnt_area06 .cnt_block table tr:first-child {
    border-top: none;
}

#designtruck .cnt_area06 .cnt_block table tr th {
    padding: 15px 5px;
    background-color: #0E498F;
    border-right: solid #FFFFFF 1px;
    color: #fff;
    font-weight: 500;
    font-size: 18px;
    line-height: 1.4;
    vertical-align: middle;
}

#designtruck .cnt_area06 .cnt_block table tr th:last-child {
    border-right: none;
}

#designtruck .cnt_area06 .cnt_block table tr th .min {
    font-size: 14px;
    line-height: 1;
}

#designtruck .cnt_area06 .cnt_block table tr td {
    padding: 15px 5px;
    font-size: 18px;
    line-height: 1.4;
    border-right: solid #0E498F 1px;
    text-align: center;
}

#designtruck .cnt_area06 .cnt_block table tr td:last-child {
    border-right: none;
}

#designtruck .cnt_area06 .cnt_block table tr td .cost {
    font-size: 22px;
    font-weight: 500;
}

#designtruck .cnt_area06 .cnt_block table tr td .koki {
    font-size: 16px;
}

#designtruck .cnt_area06 .cnt_block .tableNote {
    margin-top: 15px;
    line-height: 1.6;
}

#designtruck .cnt_area06 .cnt_block dl .wrap {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
}

#designtruck .cnt_area06 .cnt_block dl .wrap + .wrap {
    margin-top: 37px;
}

#designtruck .cnt_area06 .cnt_block dl dt {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: end;
    -webkit-justify-content: flex-end;
    -ms-flex-pack: end;
    justify-content: flex-end;
    width: 170px;
    height: 58px;
    padding-right: 26px;
    font-size: 24px;
    font-weight: 500;
}

#designtruck .cnt_area06 .cnt_block dl dd {
    width: calc(100% - 170px);
}

#designtruck .cnt_area06 .cnt_block dl dd .select {
    position: relative;
    height: 58px;
}

#designtruck .cnt_area06 .cnt_block dl dd .select.model {
    max-width: 240px;
}

#designtruck .cnt_area06 .cnt_block dl dd .select.place {
    max-width: 383px;
}

#designtruck .cnt_area06 .cnt_block dl dd .select::before {
    content: "";
    position: absolute;
    top: calc(50% - 5px);
    right: 18px;
    border: 5.5px solid rgba(255, 255, 255, 0);
    border-top: 10px solid #000;
    border-bottom: 0;
    pointer-events: none;
}

#designtruck .cnt_area06 .cnt_block dl dd select {
    width: 100%;
    height: 100%;
    padding: 0 40px 0 25px;
    border-radius: 10px;
    border: 1px solid #707070;
    font-size: 18px;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    cursor: pointer;
}

#designtruck .cnt_area06 .cnt_block dl dd select::-ms-expand {
    display: none;
}

#designtruck .cnt_area06 .cnt_block dl dd .small {
    margin-top: 11px;
    font-weight: 500;
    line-height: 1.4;
}

#designtruck .cnt_area06 .cnt_block .label {
    position: relative;
    margin-top: 45px;
    padding: 32px 0;
    border-radius: 10px;
    background-color: #F7F7F7;
    text-align: center;
}

#designtruck .cnt_area06 .cnt_block .label .result {
    padding-left: 31px;
}

#designtruck .cnt_area06 .cnt_block .label .result .num {
    font-size: 46px;
    font-weight: 500;
}

#designtruck .cnt_area06 .cnt_block .label .result .yen {
    margin-left: 11px;
    font-size: 20px;
    font-weight: 500;
}

#designtruck .cnt_area06 .cnt_block .label .text {
    position: absolute;
    right: 9.4%;
    bottom: 32px;
    font-size: 20px;
    font-weight: 500;
}

#designtruck .cnt_area06 .cnt_g {
    position: relative;
    max-width: 760px;
    margin: 35px auto 0;
    padding: 20px 0;
    border: 1px solid #fff;
    text-align: center;
}

#designtruck .cnt_area06 .cnt_g .txt {
    font-size: 18px;
    font-weight: 500;
}

#designtruck .cnt_area06 .cnt_g .btn_ptn02 {
    position: absolute;
    top: 50%;
    right: 28px;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
}

#designtruck .cnt_area06 .cnt_g .btn_ptn02 a {
    padding: 0 37px;
    cursor: pointer;
}

#designtruck .cnt_area06 .cnt_g .btn_ptn02 a::before {
    transition: .3s;
}

#designtruck .cnt_area06 .cnt_g .btn_ptn02 a:hover::before {
    right: 13px;
}

#designtruck .cnt_area07 {
    padding: 60px 0 80px;
    background-color: #0E3C72;
}

#designtruck .cnt_area07::before {
    top: -20px;
}

#designtruck .cnt_area07 .ttl_ptn01 {
    margin-bottom: 70px;
}

#designtruck .cnt_area07 .cnt_block .cnt_box + .cnt_box {
    margin-top: 10px;
}

#designtruck .cnt_area07 .cnt_block .cnt_box .q_wrp {
    position: relative;
    padding: 10px 50px 10px 57px;
    border: 1px solid #D9D9D9;
    font-size: 20px;
    font-weight: 500;
    line-height: 1.4;
}

#designtruck .cnt_area07 .cnt_block .cnt_box .q_wrp::before,
#designtruck .cnt_area07 .cnt_block .cnt_box .q_wrp::after {
    content: "";
    position: absolute;
    top: 50%;
    right: 13px;
    width: 10px;
    height: 2px;
    background-color: #fff;
    -webkit-transform: translate(50%, -50%);
    transform: translate(50%, -50%);
}

#designtruck .cnt_area07 .cnt_block .cnt_box .q_wrp::after {
    -webkit-transform: translate(50%, -50%) rotate(90deg);
    transform: translate(50%, -50%) rotate(90deg);
    -webkit-transition: 0.3s;
    transition: 0.3s;
}

#designtruck .cnt_area07 .cnt_block .cnt_box .q_wrp .q {
    position: absolute;
    left: 10px;
    line-height: 1;
}

#designtruck .cnt_area07 .cnt_block .cnt_box .a_wrp {
    display: none;
    position: relative;
    padding: 20px 50px 20px 58px;
    line-height: 1.71;
}

#designtruck .cnt_area07 .cnt_block .cnt_box .a_wrp .a {
    position: absolute;
    left: 10px;
    font-size: 20px;
    font-weight: 500;
    line-height: 1;
}

#designtruck .cnt_area07 .cnt_block .cnt_box.open .q_wrp::after {
    -webkit-transform: translate(50%, -50%) rotate(0);
    transform: translate(50%, -50%) rotate(0);
}

#designtruck .cnt_area08 {
    padding: 30px 0 120px;
    background-color: #1D2F50;
}

#designtruck .cnt_area08::before {
    top: -20px;
}

#designtruck .cnt_area08 .ttl_ptn01 {
    margin-bottom: 50px;
}

#designtruck .cnt_area08 .cnt_block {
    padding-bottom: 75%;
    background-color: #fff;
}

#designtruck_modal {
    display: none;
    position: fixed;
    z-index: 201;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

#designtruck_modal .close_bg {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, .3);
}

#designtruck_modal .cnt_block {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 92%;
    max-width: 1080px;
    height: 90svh;
    border-radius: 10px;
    background-color: #fff;
    color: #000;
    overflow: hidden;
}

#designtruck_modal .cnt_block .inner {
    height: 100%;
    padding: 80px 2.8%;
    overflow: scroll;
}

#designtruck_modal .cnt_block .cnt_box + .cnt_box {
    margin-top: 60px;
}

#designtruck_modal .cnt_block .cnt_box .head {
    margin-bottom: 30px;
    font-size: 24px;
    font-weight: 700;
    color: #0E498F;
    line-height: 1.4;
    text-align: center;
}

#designtruck_modal .cnt_block .cnt_box .img {
    width: 80%;
    max-width: 720px;
    margin: 30px auto;
}

#designtruck_modal .cnt_block .cnt_box table {
    width: 100%;
    border: 1px solid #0E498F;
}

#designtruck_modal .cnt_block .cnt_box .table + .table {
    margin-top: 30px;
}

#designtruck_modal .cnt_block .cnt_box table th {
    padding: 15px 5px;
    background-color: #0E498F;
    color: #fff;
    font-size: 18px;
    line-height: 1.4;
}

#designtruck_modal .cnt_block .cnt_box table th + th {
    border-left: 1px solid #fff;
}

#designtruck_modal .cnt_block .cnt_box table td {
    height: 58px;
    padding: 10px 5px;
    border: 1px solid #0E498F;
    background-color: #fff;
    font-size: 16px;
    line-height: 1.4;
    text-align: center;
    vertical-align: middle;
}

#designtruck_modal .cnt_block .cnt_box table tr:nth-child(odd) td {
    background-color: #F7F7F7;
}

#designtruck_modal .cnt_block .cnt_box table td.no {
    position: relative;
    color: rgba(255, 255, 255, 0);
    overflow: hidden;
    text-indent: -1000px;
}

#designtruck_modal .cnt_block .cnt_box table td.no::before {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 20px;
    height: 1px;
    background-color: #000;
}

#designtruck_modal .cnt_block .cnt_box .tbl_ptn01 th:first-child {
    width: 22%;
}

#designtruck_modal .cnt_block .cnt_box .tbl_ptn01 th:not(:first-child) {
    width: 13%;
}

#designtruck_modal .cnt_block .cnt_box .tbl_ptn02 th:first-child {
    width: 25%;
}

#designtruck_modal .cnt_block .cnt_box .tbl_ptn02 th:not(:first-child) {
    width: 15%;
}

#designtruck_modal .cnt_block .cnt_box .tbl_ptn03 th {
    width: 25%;
}

#designtruck_modal .cnt_block .close_btn {
    position: absolute;
    top: 0;
    right: 0;
    width: 60px;
    height: 60px;
    background-color: #fff;
    cursor: pointer;
}

#designtruck_modal .cnt_block .close_btn::before,
#designtruck_modal .cnt_block .close_btn::after {
    content: "";
    position: absolute;
    top: calc(50% + 5px);
    left: calc(50% - 5px);
    transform: translate(-50%, -50%) rotate(45deg);
    width: 50%;
    height: 2px;
    background-color: #0E498F;
}

#designtruck_modal .cnt_block .close_btn::after {
    transform: translate(-50%, -50%) rotate(-45deg);
}

/*----------
02-05-01.designtruck-works
----------*/
#dtworks .cnt_area01 {
    padding: 20px 0 100px;
}

#dtworks .cnt_area01 .breadcrumb {
    margin-bottom: 60px;
}

#dtworks .cnt_area01 .first_block {
    margin-bottom: 60px;
    text-align: center;
}

#dtworks .cnt_area01 .first_block .main_txt {
    font-size: 22px;
    letter-spacing: .05em;
    line-height: 1.4;
}

#dtworks .cnt_area01 .first_block .sub_txt {
    max-width: 450px;
    margin: 12px auto 0;
    letter-spacing: .05em;
    line-height: 1.7;
}

#dtworks .cnt_area01 .cnt_block .works_list {
    display: flex;
    flex-wrap: wrap;
}

#dtworks .cnt_area01 .cnt_block .works_list li {
    width: 30.6%;
    margin-left: 4.1%;
    cursor: pointer;
}

#dtworks .cnt_area01 .cnt_block .works_list li:nth-child(3n +1) {
    margin-left: 0;
}

#dtworks .cnt_area01 .cnt_block .works_list li:nth-child(n + 4) {
    margin-top: 50px;
}

#dtworks .cnt_area01 .cnt_block .works_list li .img {
    position: relative;
    padding-bottom: 74.3%;
    overflow: hidden;
}

#dtworks .cnt_area01 .cnt_block .works_list li .img img {
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    object-fit: cover;
    transition: .3s;
}

#dtworks .cnt_area01 .cnt_block .works_list li:hover .img img {
    transform: scale(1.07);
}

#dtworks .cnt_area01 .cnt_block .works_list li .ttl {
    margin-top: 10px;
    font-size: 18px;
    letter-spacing: .05em;
    line-height: 1.4;
}

#dtworks .cnt_area01 .cnt_block .works_list li .sub_txt {
    margin-top: 4px;
    letter-spacing: .05em;
    line-height: 1.4;
}

#dtworks .cnt_area01 .cnt_block .page_nav {
    margin-top: 80px;
}

#dtworks .cnt_area01 .bnr_block {
    display: flex;
    justify-content: space-between;
    max-width: 839px;
    margin: 80px auto 0;
}

#dtworks .cnt_area01 .bnr_block .bnr_box {
    width: 47.1%;
    padding: 22px 0 25px;
    color: #0E498F;
    text-align: center;
}

#dtworks .cnt_area01 .bnr_block .bnr_box .st {
    font-size: 25px;
    font-weight: 700;
    letter-spacing: .05em;
    line-height: 1.4;
}

#dtworks .cnt_area01 .bnr_block .bnr_box .sub_txt {
    margin-top: 20px;
    font-size: 16px;
    font-weight: 500;
    letter-spacing: .05em;
    line-height: 1.5;
}

#dtworks .cnt_area01 .bnr_block .bnr_box .btn {
    margin: 16px auto 0;
}

#dtworks .cnt_area01 .bnr_block .bnr_box .btn a {
    display: inline-block;
    padding: 6.3px 19.3px;
    border-radius: 100px;
    background-color: #0E498F;
    color: #fff;
    font-size: 16px;
    font-weight: 500;
    letter-spacing: .05em;
    line-height: 1.4;
}

#dtworks .cnt_area01 .bnr_block .bnr_box.designtruck {
    background: -webkit-linear-gradient(top, #9FFFF1, #9FCAFF);
    background: linear-gradient(to bottom, #9FFFF1, #9FCAFF);
}

#dtworks .cnt_area01 .bnr_block .bnr_box.instagram {
    background: -webkit-linear-gradient(top, #F8CB75, #DDF085);
    background: linear-gradient(to bottom, #F8CB75, #DDF085);
}

#dtworks .cnt_area01 .bnr_block .bnr_box.instagram .st {
    display: inline-block;
    position: relative;
    padding-left: 63px;
}

#dtworks .cnt_area01 .bnr_block .bnr_box.instagram .st::before {
    content: "";
    position: absolute;
    top: 55%;
    left: 0;
    transform: translateY(-50%);
    width: 47px;
    height: 47px;
    background: url(../common/img/ico_instagram.png) no-repeat center / contain;
}

#dtworks_modal {
    position: fixed;
    z-index: 201;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    opacity: 0;
    pointer-events: none;
    transition: .3s;
}

#dtworks_modal.active {
    opacity: 1;
    pointer-events: auto;
}

#dtworks_modal .close_bg {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, .3);
}

#dtworks_modal .cnt_block {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 92%;
    max-width: 980px;
    max-height: calc(100% - 40px);
    border-radius: 5px;
    background-color: #fff;
    color: #000;
    overflow: scroll;
}

#dtworks_modal .cnt_block .inner {
    padding: 30px 6.1% 60px;
}

#dtworks_modal .cnt_block .head {
    padding-left: 17px;
    border-left: 8px solid #2A76D6;
    font-size: 22px;
    font-weight: 700;
    letter-spacing: .05em;
    line-height: 1.4;
}

#dtworks_modal .cnt_block .sub_txt {
    margin-top: 7px;
    letter-spacing: .02em;
    line-height: 1.7;
}

#dtworks_modal .cnt_block .img_box {
    margin: 20px auto 0;
    padding: 0 50px;
}

#dtworks_modal .cnt_block .img_box .img .wrap {
    position: relative;
    padding-bottom: 56.25%;
    background-color: #f2f2f2;
}

#dtworks_modal .cnt_block .img_box .img img {
    position: absolute;
    height: 100%;
    object-fit: contain;
}

#dtworks_modal .cnt_block .img_box .slick-arrow {
    position: absolute;
    z-index: 1;
    top: 0;
    right: 0;
    width: 50px;
    height: calc(100% - 85px - 20px);
    cursor: pointer;
}

#dtworks_modal .cnt_block .img_box .slick-arrow::before {
    content: "";
    position: absolute;
    top: 50%;
    right: 5px;
    width: 15px;
    height: 15px;
    transform: translateY(-50%) rotate(45deg);
    border-top: 4px solid #2A76D6;
    border-right: 4px solid #2A76D6;
    transition: .3s;
    pointer-events: none;
}

#dtworks_modal .cnt_block .img_box .slick-arrow:hover::before {
    right: 0;
}

#dtworks_modal .cnt_block .img_box .slick-arrow.prev {
    right: auto;
    left: 0;
    transform: scale(-1, 1);
}

#dtworks_modal .cnt_block .img_box .slick-dots {
    display: flex;
    margin: 20px 0 -30px;
    overflow: scroll;
}

#dtworks_modal .cnt_block .img_box .slick-dots li {
    position: relative;
    cursor: pointer;
}

#dtworks_modal .cnt_block .img_box .slick-dots li + li {
    margin-left: 12px;
}

#dtworks_modal .cnt_block .img_box .slick-dots li::before {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border-radius: 5px;
    border: 4px solid #2A76D6;
    box-sizing: border-box;
}

#dtworks_modal .cnt_block .img_box .slick-dots li.slick-active::before {
    content: "";
}

#dtworks_modal .cnt_block .img_box .slick-dots li span {
    display: block;
    border-radius: 5px;
    width: 124px;
    height: 85px;
    overflow: hidden;
}

#dtworks_modal .cnt_block .img_box .slick-dots li img {
    height: 100%;
    object-fit: cover;
}

#dtworks_modal .cnt_block .close_btn {
    position: absolute;
    top: 0;
    right: 0;
    width: 70px;
    height: 70px;
    background-color: #fff;
    cursor: pointer;
}

#dtworks_modal .cnt_block .close_btn::before,
#dtworks_modal .cnt_block .close_btn::after {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%) rotate(45deg);
    width: 40%;
    height: 3px;
    background-color: #2A76D6;
}

#dtworks_modal .cnt_block .close_btn::after {
    transform: translate(-50%, -50%) rotate(-45deg);
}


/*----------
03.recruit
----------*/
#recruit .title_area_ptn01 {
    background: url(../img/recruit/title_bg.jpg) no-repeat center/cover;
}

#recruit .cnt_area01 {
    padding-top: 20px;
}

#recruit .cnt_area01 .breadcrumb {
    margin-bottom: 41px;
}

#recruit .cnt_area01 .link_box .txt {
    font-size: 26px;
    line-height: 27px;
    font-weight: 700;
    color: #fff;
    text-align: center;
    margin-bottom: 28px;
}

#recruit .cnt_area01 .link_box ul {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
}

#recruit .cnt_area01 .link_box li {
    width: 23.8%;
    position: relative;
}

#recruit .cnt_area01 .link_box li + li {
    margin-left: 1.6%;
}

#recruit .cnt_area01 .link_box li::after {
    content: "";
    display: inline-block;
    display: inline-block;
    width: 7.15px;
    height: 7.15px;
    border-bottom: 2px solid #fff;
    border-right: 2px solid #fff;
    top: 50%;
    transform: translateY(-50%) rotate(45deg);
    position: absolute;
    right: 27.1px;
}

#recruit .cnt_area01 .link_box li a {
    display: block;
    width: 100%;
    font-size: 19px;
    line-height: 27px;
    font-weight: 700;
    padding: 12px 19px;
    background-color: #0E498F;
}

#recruit .recruit_area {
    padding: 120px 0;
}

#recruit .recruit_area:nth-of-type(even) {
    background-color: #152034;
}

#recruit .cnt_area01 + .recruit_area {
    padding-top: 90px;
}

#recruit .recruit_area .cnt_box h2 {
    font-size: 40px;
    line-height: 58px;
    padding: 26px 0;
    background: linear-gradient(90deg, #3B1E86, #0094D0);
    font-weight: 700;
    text-align: center;
    margin-bottom: 33.5px;
}

#recruit .recruit_area .cnt_box p {
    font-size: 29px;
    line-height: 47px;
    font-weight: 700;
    margin-bottom: 28px;
    text-align: center;
}

#recruit .recruit_area .cnt_box p span {
    display: inline-block;
    color: #9FFFF1;
}

#recruit .recruit_area .cnt_box .cnt_img {
    max-width: 900px;
    margin: 0 auto 36px;
}

#recruit .recruit_area .cnt_box .cnt_img + .more_appeal {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    max-width: 900px;
    margin: 0 auto 56px;
}

#recruit .recruit_area .cnt_box .cnt_img + .more_appeal li {
    width: 23.3%;
    font-size: 18px;
    line-height: 26px;
    font-weight: 700;
    color: #1D2F50;
    text-align: center;
    padding: 26px 0 27px;
    background: linear-gradient(#C8ACFD, #A9E0FD);
}

#recruit .recruit_area .cnt_box .small {
    display: block;
    text-align: center;
    font-size: 20px;
    line-height: 29px;
    font-weight: 700;
    margin-bottom: 10px;
}

#recruit .recruit_area .cnt_box .big_text {
    font-size: 29px;
    line-height: 42px;
    font-weight: 700;
    text-align: center;
    margin-bottom: 65px;
}

#recruit .recruit_area .cnt_box .big_text span {
    position: relative;
    z-index: 1;
}

#recruit .recruit_area .cnt_box .big_text span::after {
    content: "";
    display: inline-block;
    width: 100%;
    height: 20px;
    position: absolute;
    background: linear-gradient(90deg, #4993EF, #1EA994);
    left: 0;
    bottom: 0;
    z-index: -1;
    opacity: 0.8;
}

#recruit .recruit_area .point_area {
    padding: 47px 40px 53px;
    background-color: rgba(33, 70, 187, 0.6);
    margin-bottom: 61px;
}

#recruit .recruit_area .point_area span {
    font-size: 20px;
    text-align: center;
    font-weight: 700;
    display: block;
    margin-bottom: 4px;
}

#recruit .recruit_area .point_area h2 {
    font-size: 35px;
    line-height: 51px;
    text-align: center;
    margin-bottom: 18px;
    font-weight: 700;
}

#recruit .recruit_area .point_area h2 + p {
    font-size: 17px;
    line-height: 31px;
    text-align: center;
    margin-bottom: 31px;
}

#recruit .recruit_area .point_area .flex_box {
    justify-content: space-between;
    flex-wrap: wrap;
}

#recruit .recruit_area .point_area .cnt_box {
    width: 48.6%;
    padding: 15px 21px 21px;
    background-color: #DDF6FF;
    border-radius: 10px;
    margin-bottom: 24px;
}

#recruit .recruit_area .point_area .cnt_box .title {
    font-size: 21px;
    line-height: 30px;
    font-weight: 700;
    text-align: center;
    color: #1D2F50;
    margin-bottom: 15px;
    position: relative;
}

#recruit .recruit_area .point_area .cnt_box .title::after {
    content: "";
    display: inline-block;
    width: 76px;
    height: 3px;
    position: absolute;
    background: linear-gradient(90deg, #4993EF, #1EA994);
    bottom: 3px;
    left: 50%;
    transform: translateX(-50%);
}

#recruit .recruit_area .point_area .cnt_box .desc {
    font-size: 13px;
    line-height: 20px;
    font-weight: 500;
    color: #1D2F50;
    margin-bottom: 15px;
    display: flex;
    align-items: center;
}

#recruit .recruit_area .point_area .cnt_box .desc img {
    width: 61.15px;
    margin-right: 8px;
}

#recruit .recruit_area .point_area .caution {
    text-align: center;
    margin-top: 6px;
    line-height: 24px;
}

#recruit .reason {
    border-radius: 10px;
    overflow: hidden;
}

#recruit .reason .title {
    font-size: 30px;
    font-weight: 700;
    text-align: center;
    padding: 16px 0;
    background-color: #1EA994;
}

#recruit .reason .bottom {
    background-color: #fff;
    padding: 18px 28px 28px;
    display: flex;
    font-size: 18px;
    line-height: 33px;
    color: #1D2F50;
    justify-content: space-between;
    margin: 0 0 46px;
    border-radius: 0 0 10px 10px;
}

#recruit .reason .bottom ol {
    font-size: 18px;
    line-height: 33px;
    font-weight: 500;
    width: 66.6%;
}

#recruit .reason .bottom ol li {
    text-indent: -1em;
    padding-left: 1em;
}

#recruit .reason .bottom ol span {
    color: #1EA994;
}

#recruit .reason .bottom .cnt_img {
    width: 32.68%;
}

#recruit .purple_banner {
    padding: 17.5px 10px;
    background: linear-gradient(90deg, #C8ACFD, #A9E0FD);
    text-align: center;
    color: #1D2F50;
    max-width: 898px;
    margin: 0 auto 87px;
}

#recruit .purple_banner .txt {
    font-size: 30px;
    line-height: 44px;
    font-weight: 700;
    margin-bottom: 7px;
}

#recruit .purple_banner .txt + span {
    font-size: 16px;
    line-height: 24px;

}

#recruit .pick_up_area .title img {
    max-width: 269px;
    margin: 0 auto;
}

#recruit .pick_up_area .cnt_box {
    max-width: 900px;
    margin-left: auto;
    margin-right: auto;
}

#recruit .pick_up_area .title {
    position: relative;
    max-width: 900px;
    margin: 0 auto 34px;
}

#recruit .pick_up_area .title::before,
#recruit .pick_up_area .title::after {
    content: "";
    display: inline-block;
    width: 32.6%;
    height: 5px;
    background: center/contain repeat-x url(../img/recruit/dots.png);
    position: absolute;
    top: 46.5px;
}

#recruit .pick_up_area .title::before {
    left: 0;
}

#recruit .pick_up_area .title::after {
    right: 0;
}

#recruit .pick_up_area .title span {
    display: block;
    text-align: center;
    font-size: 18px;
    line-height: 26px;
    margin-top: -5px;
}

#recruit .pick_up_area .cnt_box a {
    display: flex;
    position: relative;
    margin-bottom: 31px;
}

#recruit .pick_up_area .cnt_box a::after {
    content: "";
    display: inline-block;
    width: 61px;
    height: 61px;
    background: center/contain no-repeat url(../img/recruit/arrow_blue.png);
    position: absolute;
    bottom: 37px;
    right: 30px;
    transition: 0.4s;
}

#recruit .pick_up_area .cnt_box a:hover::after {
    transition: 0.4s;
    right: 25px;
}

#recruit .pick_up_area .cnt_box .cnt_img {
    width: 56.23%;
    margin-bottom: 0;
    transition: 0.4s;
    overflow: hidden;
}

#recruit .pick_up_area .cnt_box a img {
    transition: 0.4s;
}

#recruit .pick_up_area .cnt_box a:hover img {
    transform: scale(1.1);
    transition: 0.4s;
}

#recruit .pick_up_area .cnt_box .right {
    width: 43.77%;
    padding: 31px 30px 31px 33.8px;
    background-color: #DDF6FF;
    color: #0E498F;
}

#recruit .pick_up_area .cnt_box .right .text_box {
    font-size: 28px;
    line-height: 42px;
    font-weight: 700;
    margin-bottom: 15px;
}

#recruit .pick_up_area .cnt_box .right .text_box + span {
    display: block;
    font-size: 16px;
    line-height: 24px;
}

#recruit .pick_up_area .staff_blog_link {
    margin: 39px auto 62px;
    max-width: 590px;
    position: relative;
}

#recruit .pick_up_area .staff_blog_link::after {
    content: "";
    display: inline-block;
    width: 10.15px;
    height: 17.62px;
    background: center/contain no-repeat url(../common/img/arrow_blue.png);
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    right: 27.9px;
    transition: 0.4s;
}

#recruit .pick_up_area .staff_blog_link:hover::after {
    right: 22.9px;
    transition: 0.4s;
}

#recruit .pick_up_area .staff_blog_link a {
    display: block;
    width: 100%;
    padding: 25px 47px;
    background: linear-gradient(90deg, #5DB6D5, #72E296);
    font-weight: 700;
    color: #1D2F50;
    font-size: 25px;
    line-height: 36px;
    border-radius: 10px;
}

#recruit .pick_up_area .staff_blog_link span {
    display: inline-block;
    margin-right: 13px;
    font-size: 16px;
    line-height: 24px;
}

#recruit .requirements h3 {
    margin-bottom: 37px;
}

#recruit .requirements .first_text {
    font-size: 16px;
    line-height: 24px;
    margin-bottom: 33.5px;
}

#recruit .requirements .first_text .em {
    color: #FF7B7B;
    font-size: 20px;
    line-height: 29px;
    text-align: left;
}

#recruit .requirements dl {
    display: flex;
    border-top: 0.5px solid;
}

#recruit .requirements dl:last-of-type {
    margin-bottom: 38.5px;
    border-bottom: 0.5px solid;
}

#recruit .requirements dt {
    width: 24.6%;
    padding: 20.5px 25px;
    font-size: 20px;
    line-height: 29px;
    font-weight: 700;
}

#recruit .requirements dd {
    width: 75.4%;
    font-size: 16px;
    line-height: 24px;
    padding: 20.5px 0;
    padding-right: 20px;
}

#recruit .requirements dd p + p {
    margin-top: 24px;
}

#recruit .requirements dd strong,
#recruit .requirements dd b {
    font-weight: 700;
}

#recruit .requirements dd a {
    color: #9FFFF1;
    text-decoration: underline;
}

#recruit .requirements dd a:hover {
    text-decoration: none;
}

#recruit .requirements dd .em {
    color: #FF7B7B;
    font-size: 1.25em;
}

#recruit #jimu .cnt_box .cnt_img {
    margin-bottom: 26px;
}

#recruit #jimu .pick_up_area .cnt_box .cnt_img {
    margin-bottom: 0;
}

/*----------
03-01.recruit_form
----------*/
#recruit_form .title_area_ptn01 {
    background: url(../img/recruit/form/title_bg.jpg) no-repeat center/cover;
}

#recruit_form .cnt_area01 {
    padding: 20px 0 132.3px;
}

#recruit_form .breadcrumb {
    margin-bottom: 52px;
}

#recruit_form .tel_area {
    border-radius: 10px;
    display: flex;
    margin-bottom: 39px;
    overflow: hidden;
}

#recruit_form .tel_area .left {
    font-size: 21px;
    line-height: 32px;
    font-weight: 700;
    padding: 21px 43px;
    background-color: #0E498F;
    width: 28.5%;
}

#recruit_form .tel_area .right {
    display: flex;
    width: 72.5%;
    background-color: #DDF6FF;
    padding: 19px 63px;
    color: #0E498F;
    align-items: center;
}

#recruit_form .tel_area .num {
    font-size: 46px;
    line-height: 66px;
    font-weight: 700;

    display: flex;
    align-items: center;
    margin-right: 27px;
}

#recruit_form .cnt_area01 .tel_area .num::before {
    content: "";
    display: inline-block;
    width: 36.48px;
    height: 47.57px;
    margin-right: 9.1px;
    background: center/contain no-repeat url(../img/recruit/form/tel.png);
}

#recruit_form .cnt_area01 .tel_area ul {
    line-height: 23px;
    font-weight: 500;
}

.contact_page .title_area_ptn01 {
    background: url(../img/contact/title_bg.jpg) no-repeat center/cover;
}

.flow_area {
    padding: 28px 31px;
    background: linear-gradient(30deg, #3B1E86, #0094D0);
    border-radius: 10px;
    margin-bottom: 17px;
}

.flow_area h2 {
    font-size: 40px;
    line-height: 58px;
    text-align: center;
    font-weight: 700;
    margin-bottom: 16px;
}

.flow_area .flex_box {
    justify-content: space-between;
    align-items: center;
}

.flow_area .cnt_box {
    width: 23.1%;
    background-color: #DDF6FF;
    padding: 39px 20px;
    border-radius: 10px;
    color: #1D2F50;
    height: 284px;
}

.flow_area .cnt_box > span {
    font-size: 19px;
    font-weight: 700;
    line-height: 27px;
    padding-bottom: 31.5px;
    display: block;
    border-bottom: 1px solid #1D2F50;
    margin-bottom: 11.5px;
    text-align: center;
}

.flow_area .cnt_box p {
    font-weight: 500;
    font-size: 15px;
    line-height: 22px;
    padding: 0 10px;
}

.flow_area + ul {
    line-height: 25px;
    margin-left: 33px;
    margin-bottom: 96px;
}

.flow_area .sankaku {
    display: block;
    position: relative;
    margin: 0 3px;
    width: 15px;
    height: 284px;
}

.flow_area .sankaku::before {
    content: "";
    display: inline-block;
    width: 65px;
    height: 15px;
    clip-path: polygon(50% 0, 100% 100%, 0 100%);
    background-color: #25C497;
    transform: rotate(90deg);
    position: absolute;
    left: 50%;
    right: 0;
    top: 50%;
    transform: translate(-50%, -50%) rotate(90deg);
}

.contact_wrap .blue_title_big {
    font-size: 40px;
    line-height: 58px;
    font-weight: 700;
    text-align: center;
    padding: 26px 0;
    background: linear-gradient(90deg, #3B1E86, #0094D0);
    margin-bottom: 38px;
}

.contact_wrap .blue_title_big + span {
    font-size: 19px;
    line-height: 27px;
    text-align: center;
    color: #FF7B7B;
    margin-bottom: 13px;
    display: block;
    text-align: left;
}

.contact_wrap .blue_title_big + span + .txt {
    line-height: 25px;
    font-size: 16px;
    margin-bottom: 58px;
    text-align: left;
}

.form_wrap {
    max-width: 918px;
    margin: 0 auto;
}

.form_wrap dl {
    display: flex;
    margin-bottom: 51px;
}

.form_wrap dt span {
    display: inline-block;
    line-height: 20px;
    padding: 2px 9px;
    margin-right: 14px;
}

.form_wrap dt .require {
    background-color: #FF7B7B;
}

.form_wrap dt .nini {
    border: 1px solid;
}

.form_wrap dt {
    width: 32.5%;
    display: flex;
    line-height: 25px;
    align-items: flex-start;
    font-size: 19px;
}

.form_wrap dd {
    width: 67.5%;
}

.form_wrap input, .form_wrap textarea {
    appearance: none;
    border: none;
    border-radius: 5px;
    background-color: #fff;
    padding: 8px 17px;
    font-family: 'Noto Sans JP', sans-serif;
    font-size: 19px;
    line-height: 27px;
}

.form_wrap textarea {
    width: 100%;
}

.form_wrap .privacy_policy {
    margin-top: 37px;
    margin-bottom: 72px;
    font-size: 16px;
    text-align: center;
}

.form_wrap input[type="text"], .form_wrap input[type="tel"] {
    width: 57.4%;
}

.form_wrap input::placeholder, .form_wrap .text_area::placeholder {
    color: rgba(29, 47, 80, 0.4);
}

.form_wrap .old dd {
    display: flex;
    align-items: center;
    font-size: 19px;
    line-height: 27px;
}

.form_wrap .old .sai {
    margin-left: 7px;
}

.form_wrap .old input {
    width: 71px;
}

.form_wrap .caution {
    font-size: 15px;
    line-height: 25px;
}

.form_wrap .tel .caution {
    margin-top: 9px;
}

.form_wrap .zip .caution:first-of-type {
    margin-bottom: 7px;
}

.form_wrap .zip .caution:last-of-type {
    margin-top: 7px;
}

.form_wrap .address input {
    width: 100%;
}

.form_wrap .address .caution {
    margin-bottom: 7px;
}

.form_wrap .address .caution:last-of-type {
    margin-top: 18px;
}

.form_wrap .checkboxarea dd .wpcf7-checkbox {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
}

.form_wrap .checkboxarea .wpcf7-list-item-label {
    cursor: pointer;
    font-size: 19px;
    line-height: 27px;
}

.form_wrap input[type="checkbox"], .form_wrap input[type="radio"] {
    opacity: 0; /* デフォルトのチェックボックスを見えなくする */
    position: absolute;
}

.form_wrap .radio_btn .wpcf7-form-control {
    display: flex;
    align-items: center;
}

.form_wrap .checkboxarea .wpcf7-list-item {
    display: flex;
    align-items: center;
    position: relative;
    padding-left: 28px;
    margin-right: 31px;
}

.form_wrap .radio_btn .wpcf7-list-item {
    margin-right: 30px;
}

.form_wrap .radio_btn .wpcf7-list-item-label {
    display: flex;
    align-items: center;
    padding-left: 29px;
    position: relative;
    cursor: pointer;
}

/* ラジオボタン */

/* チェック前のボタン */
.form_wrap .radio_btn .wpcf7-list-item-label::before {
    content: "";
    display: inline-block;
    width: 20px;
    height: 20px;
    border-radius: 50%;
    background-color: rgba(204, 204, 204, 0.8);
    position: absolute;
    left: 0;
}

/* チェック後のボタン */
.form_wrap input[type="radio"]:checked + .wpcf7-list-item-label::after {
    content: "";
    display: inline-block;
    width: 12px;
    height: 12px;
    border-radius: 50%;
    background-color: #107AE7;
    position: absolute;
    left: 4px;
}

/* チェックボックス */
.form_wrap .wpcf7-list-item-label::before {
    content: "";
    display: inline-block;
    width: 22px;
    height: 22px;
    border-radius: 5px;
    background-color: rgba(204, 204, 204, 0.8);
    position: absolute;
    left: 0;
    top: 50%;
    transform: translateY(-50%);
}

.form_wrap input[type="checkbox"]:checked + .wpcf7-list-item-label::after {
    content: "";
    position: absolute;
    display: inline-block;
    width: 12.48px;
    height: 9.25px;
    background: center/contain no-repeat url(../common/img/check.png);
    left: 5px;
    top: 50%;
    transform: translateY(-50%);
}

.form_wrap input[type="checkbox"]:checked + .wpcf7-list-item-label::before {
    background-color: #107AE7;
}

.form_wrap .submit_btn {
    max-width: 590px;
    margin: 0 auto;
    position: relative;
}

.form_wrap .submit_btn::after {
    content: "";
    display: inline-block;
    width: 10.15px;
    height: 17.62px;
    position: absolute;
    right: 38.9px;
    top: 50%;
    transform: translateY(-50%);
    background: center/contain no-repeat url(../common/img/arrow_blue.png);
}

.form_wrap input[type="submit"] {
    width: 100%;
    color: #1D2F50;
    font-size: 25px;
    line-height: 36px;
    font-weight: 700;
    padding: 25px 0;
    background: linear-gradient(#F8CB75, #DDF085);
    cursor: pointer;
}

.form_wrap .submit_btn .wpcf7-spinner {
    position: absolute;
    bottom: 0;
    background-color: #fbfbfc;
}

.form_wrap .submit_btn .wpcf7-spinner::before {
    background-color: #23282d;
}


/*----------
03-02.staff_detail
----------*/
.staff_detail .title_area_ptn01 {
    background: url("../img/recruit/staff/title_bg.jpg") no-repeat center/cover;
}

.staff_detail #cnt_area01 {
    padding: 20px 0 105px;
}

.staff_detail #cnt_area01 .top_g {
    padding: 0 0 80px;
}

.staff_detail #cnt_area01 .top_g .top_text {
    font-size: 40px;
    line-height: 61px;
    font-weight: 700;
    background: linear-gradient(90deg, rgba(0, 148, 208, 1) 0%, rgba(59, 30, 134, 1) 100%);
    padding: 40px;
    margin: 55px 0 50px;
}

.staff_detail #cnt_area01 .faq_g dl div {
    margin-bottom: 60px;
}

.staff_detail #cnt_area01 .faq_g dl div:last-child {
    margin-bottom: 0;
}

.staff_detail #cnt_area01 .faq_g dl dt {
    font-size: 32px;
    line-height: 45px;
    font-weight: 700;
    padding-left: 75px;
    margin-bottom: 40px;
    position: relative;
}

.staff_detail #cnt_area01 .faq_g dl dt::after {
    position: absolute;
    content: "";
    background: url("../img/recruit/staff/icon_q.png") no-repeat center/contain;
    width: 64px;
    height: 57px;
    top: -6px;
    left: 0;
}

.staff_detail #cnt_area01 .faq_g dl dd {
    font-size: 19px;
    line-height: 32px;
    padding-left: 75px;
    position: relative;
}


.staff_detail #cnt_area01 .faq_g dl dd::after {
    position: absolute;
    content: "";
    background: url("../img/recruit/staff/icon_a.png") no-repeat center/contain;
    width: 64px;
    height: 57px;
    top: -12px;
    left: 0;
}

.staff_detail #cnt_area01 .faq_g .intro_img {
    margin: 75px 0;
}

.staff_detail #cnt_area01 .schedule_g {
    background: linear-gradient(90deg, rgba(159, 255, 241, 1) 0%, rgba(159, 202, 255, 1) 100%);
    padding: 30px 22px;
    max-width: 890px;
    margin: 90px auto 70px;
}

.staff_detail #cnt_area01 .schedule_g .cnt_wrap {
    background: #FFFFFF;
    padding: 30px 40px 53px;
}

.staff_detail #cnt_area01 .schedule_g .title_box {
    color: #0E498F;
    margin-bottom: 40px;
}

.staff_detail #cnt_area01 .schedule_g .title_box .en_title {
    font-size: 19px;
    line-height: 1;
    font-weight: 600;
    text-align: center;
}

.staff_detail #cnt_area01 .schedule_g .title_box .jp_title {
    font-size: 33px;
    line-height: 56px;
    font-weight: 700;
    text-align: center;
}

.staff_detail #cnt_area01 .schedule_g .title_box .jp_title span {
    font-size: 22px;
    margin-right: 6px;
}

.staff_detail #cnt_area01 .schedule_g dl {
    color: #0E498F;
}

.staff_detail #cnt_area01 .schedule_g dl div {
    padding: 31px 0;
    position: relative;
}

.staff_detail #cnt_area01 .schedule_g dl div::after {
    position: absolute;
    content: "";
    background: url("../img/recruit/staff/border_img.png") repeat-x center/contain;
    width: 100%;
    height: 3px;
    bottom: -1.5px;
    left: 0;
}

.staff_detail #cnt_area01 .schedule_g dl div:first-child {
    padding-top: 0;
}

.staff_detail #cnt_area01 .schedule_g dl div:last-child {
    padding-bottom: 0;
}

.staff_detail #cnt_area01 .schedule_g dl div:last-child::after {
    display: none;
}

.staff_detail #cnt_area01 .schedule_g dl dt {
    font-size: 24px;
    line-height: 32px;
    font-weight: 700;
    margin-bottom: 9px;
}

.staff_detail #cnt_area01 .schedule_g dl dt .time {
    font-size: 17px;
    line-height: 1;
    font-weight: 700;
    text-align: center;
    padding: 11px 0 11px 24px;
    background: #25C497;
    color: #FFFFFF;
    position: relative;
    min-width: 156px;
    display: inline-block;
    margin-right: 12px;
}

.staff_detail #cnt_area01 .schedule_g dl dt .time::before {
    position: absolute;
    content: "";
    background: url("../img/recruit/staff/icon_clock.png") no-repeat center/contain;
    width: 26.2px;
    height: 26.2px;
    top: 6px;
    left: 11px;
}

.staff_detail #cnt_area01 .schedule_g dl dd {
    font-size: 17px;
    line-height: 32px;
}


/*----------
04.about_us
----------*/
#company .title_area_ptn01 {
    background: url(../img/company/company/title_bg.jpg) no-repeat center/cover;
}

#company .sub_title_area .contents_in {
    padding: 18px 0 167.3px;
}

#company .sub_title_area .breadcrumb {
    margin-bottom: 98px;
}

#company .sub_title_area h2 {
    margin: 0 0 30.5px;
}

#company .sub_title_area .sub_txt {
    font-size: 36px;
    line-height: 52px;
    font-weight: 700;
    letter-spacing: 0.163em;
    text-align: center;
    margin: 0 0 23px;
}

#company .sub_title_area .sub_txt span {
    display: inline-block;
    font-size: 31px;
}

#company .sub_title_area p {
    font-size: 22px;
    letter-spacing: 0.05em;
    line-height: 32px;
    text-align: center;
}

#company .cnt_area02 {
    background: rgba(42, 118, 214, 0.3);
}

#company .cnt_area02 .contents_in {
    padding: 100px 0 113px;
}

#company .cnt_area02 h2 {
    margin-bottom: 31px;
}

#company .cnt_area02 p {
    font-size: 22px;
    line-height: 49px;
    text-align: center;
    margin-bottom: 44.5px;
}

#company .cnt_area03 {
    padding: 91px 0 100.5px;
}

#company .cnt_area03 h2 {
    margin-bottom: 43px;
}

#company .cnt_area03 dl {
    display: flex;
    flex-wrap: wrap;
    border-top: 0.5px solid #F8F8F8;
}

#company .cnt_area03 dt {
    width: 22.4%;
    font-size: 20px;
    line-height: 29px;
    padding: 19.5px 25px;
    border-bottom: 0.5px solid #F8F8F8;
    font-weight: 700;
}

#company .cnt_area03 dd {
    width: 77.6%;
    padding: 22.5px 0;
    line-height: 22px;
    border-bottom: 0.5px solid #F8F8F8;
    font-size: 16px;
}

#company .cnt_area03 dd p {
    margin-bottom: 24px;
}

#company .cnt_area03 ul li {
    display: flex;
}

#company .cnt_area04 {
    padding: 100px 0;
    background: rgba(42, 118, 214, 0.3);
}

#company .cnt_area04 h2 {
    margin-bottom: 44.5px;
}

#company .cnt_area04 dl {
    display: flex;
    flex-wrap: wrap;
    position: relative;
}

#company .cnt_area04 dl::before {
    content: "";
    display: inline-block;
    width: 2px;
    height: 1608px;
    background-color: #fff;
    position: absolute;
    top: 29px;
    left: 17.14%;
}

#company .cnt_area04 dt {
    width: 20.4%;
    font-size: 20px;
    line-height: 29px;
    padding: 19px 25px;
    font-weight: 700;
    position: relative;
}

#company .cnt_area04 dt::after {
    content: "";
    display: inline-block;
    width: 11px;
    height: 11px;
    border-radius: 50%;
    background-color: #fff;
    position: absolute;
    top: 28px;
    right: 25px;
}

#company .cnt_area04 dd {
    width: 79.6%;
    padding: 19px 0;
    line-height: 22px;
    font-size: 16px;
}

#company .cnt_area05 {
    padding: 100px 0 121.5px;
}

#company .cnt_area05 h2 {
    margin-bottom: 43.5px;
}

#company .cnt_area05 .cnt_box {
    border: 0.5px solid #FFFFFF;
    padding: 25px 71px;
    display: flex;
    justify-content: space-between;
    margin-bottom: 20px;
}

#company .cnt_area05 .left {
    width: 47%;
}

#company .cnt_area05 .right {
    width: 36.9%;
}

#company .cnt_area05 .company {
    font-size: 20px;
    line-height: 29px;
    font-weight: 500;
    margin-bottom: 5px;
}

#company .cnt_area05 .txt {
    line-height: 24px;
    font-size: 16px;
}

#company .cnt_area05 a {
    display: block;
    color: #77B3FF;
    margin: 12px 0 0;
}


/*----------
04-01.access
----------*/
#access .title_area_ptn01 {
    background: url(../img/company/access/title_bg.jpg) no-repeat center/cover;
}

#access .cnt_area01 {
    padding: 18px 0 149.3px;
}

#access .cnt_area01 .breadcrumb {
    margin-bottom: 98px;
}

#access .cnt_area01 h2 {
    margin-bottom: 46.5px;
}

#access .cnt_area01 .map_wrap {
    max-width: 980px;
    margin: 0 auto 48px;
}

#access .cnt_area01 .map_wrap .map {
    width: 100%;
    padding-top: 53.16%;
    position: relative;
}

#access .cnt_area01 .map_wrap iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

#access .cnt_area01 dl {
    display: flex;
    width: 100%;
    border: 0.5px solid #fff;
}

#access .cnt_area01 dl:first-of-type {
    margin-bottom: 34px;
}

#access .cnt_area01 dt {
    width: 17.34%;
    font-size: 20px;
    line-height: 29px;
    font-weight: 700;
    padding: 27px 10px;
    text-align: center;
    background-color: rgba(255, 255, 255, 0.1);
}

#access .cnt_area01 dd {
    width: 82.66%;
    padding: 27px 39px;
}

#access .cnt_area01 dd .block {
    line-height: 22px;
    font-size: 16px;
}

#access .cnt_area01 dd .caution {
    padding: 17px 23px;
    background-color: rgba(42, 118, 214, 0.3);
    max-width: 500px;
    margin: 23px 0;
}

#access .cnt_area01 dd .caution .txt {
    font-size: 20px;
    line-height: 29px;
    font-weight: 700;
    margin: 0 0 9px;
}

#access .cnt_area01 dd .caution p {
    line-height: 22px;
    margin-bottom: 17px;
    font-size: 16px;
}

#access .cnt_area01 dl:last-of-type .txt {
    font-size: 20px;
    line-height: 29px;
    font-weight: 700;
    margin-bottom: 10px;
    display: flex;
    align-items: center;
}

#access .cnt_area01 dl:last-of-type .block:first-of-type {
    margin-bottom: 56px;
}

#access .cnt_area01 dl:last-of-type .block span {
    display: block;
    line-height: 22px;
}

#access .cnt_area01 dl:last-of-type .block:first-of-type .txt::before {
    content: "";
    display: inline-block;
    width: 47.27px;
    height: 23.56px;
    background: center/contain no-repeat url(../img/company/access/car.png);
    margin-right: 9.7px;
}

#access .cnt_area01 dl:last-of-type .block:last-of-type .txt::before {
    content: "";
    display: inline-block;
    width: 75.73px;
    height: 41.24px;
    background: center/contain no-repeat url(../img/company/access/taxi.png);
    margin-right: 9.3px;
}


/*----------
04-02.iso
----------*/
#iso .title_area_ptn01 {
    background: url(../img/company/iso/title_bg.jpg) no-repeat center/cover;
}

#iso .cnt_area01 .breadcrumb {
    margin-bottom: 98px;
}

#iso .cnt_area01 {
    padding: 18px 0 166.8px;
}

#iso .cnt_area01 h2 {
    margin-bottom: 26px;
}

#iso .cnt_area01 h2 + p {
    line-height: 24px;
    letter-spacing: 0.05em;
    margin-bottom: 87px;
    font-size: 16px;
}

#iso .cnt_area01 h2:last-of-type + p {
    margin-bottom: 11px;
}

#iso .cnt_area01 .last_txt {
    line-height: 24px;
    letter-spacing: 0.05em;
    text-align: right;
    font-size: 16px;
}

#iso .cnt_area01 p + ul {
    line-height: 24px;
    letter-spacing: 0.05em;
    font-size: 16px;
}

#iso .cnt_area01 p + ul li {
    text-indent: -1em;
    padding-left: 1em;
}


/*----------
04-03.privacy
----------*/
#privacy .title_area_ptn01 {
    background: url(../img/company/privacy/title_bg.jpg) no-repeat center/cover;
}

#privacy .cnt_area01 {
    padding: 18px 0 181.8px;
}

#privacy .cnt_area01 .breadcrumb {
    margin-bottom: 98px;
}

#privacy .cnt_area01 h2 {
    margin-bottom: 26px;
}

#privacy .cnt_area01 h2:not(:first-of-type) {
    margin-top: 70px;
}

#privacy .cnt_area01 h2 + p, #privacy .cnt_area01 p + ul {
    letter-spacing: 0.05em;
    line-height: 24px;
    font-size: 16px;
}

#privacy .cnt_area01 h2 + p span {
    color: #77B3FF;
    display: block;
}

#privacy .cnt_area01 p + ul li {
    text-indent: -1em;
    padding-left: 1em;
}


/*----------
04-04.actionplan
----------*/
#actionplan .title_area_ptn01 {
    background: url(../img/company/actionplan/title_bg.jpg) no-repeat center/cover;
}

#actionplan .cnt_area01 {
    padding: 18px 0 203.9px;
}

#actionplan .cnt_area01 .breadcrumb {
    margin-bottom: 98px;
}

#actionplan .cnt_area01 h2 {
    margin-bottom: 26px;
}

#actionplan .cnt_area01 h2:not(:first-of-type) {
    margin-top: 80px;
}

#actionplan .cnt_area01 h2 + .txt, #actionplan .cnt_area01 .first_text {
    letter-spacing: 0.05em;
    line-height: 24px;
}

#actionplan .cnt_area01 .first_text {
    margin-bottom: 40px;
    font-size: 16px;
}

#actionplan .cnt_area01 h2 + .txt, #actionplan .cnt_area01 p {
    font-size: 16px;
}

#actionplan .cnt_area01 h2 + .txt span {
    color: #77B3FF;
    display: inline-block;
}

#actionplan .action_plan_img {
    width: 88%;
    max-width: 900px;
    padding: 40px;
    margin: 0 auto;
}

#actionplan .cnt_area01 .txt li {
    text-indent: -1em;
    padding-left: 1em;
}

/*----------
04-05.local contribution
----------*/
#local-contribution .title_area_ptn01 {
    background: url(../img/company/actionplan/title_bg.jpg) no-repeat center/cover;
}

#local-contribution .cnt_area01 {
    padding: 18px 0 108px;
}

#local-contribution .cnt_area01 .breadcrumb {
    margin-bottom: 98px;
}

#local-contribution .entry-content p {
    font-size: 16px;
    margin-bottom: 40px;
}

/*----------
05.blog
----------*/
.article_page .title_area_ptn01 {
    background: url(../img/blog/title_bg.jpg) no-repeat center/cover;
}

.news_wrap {
    padding: 71px 0 168px;
}

.news_wrap .contents_in {
    justify-content: space-between;
}

.news_wrap .main {
    width: 71%;
}

.news_wrap .side {
    width: 25.6%;
}

.news_wrap .cnt_box {
    border-radius: 10px;
    overflow: hidden;
    margin-bottom: 55px;
}

.news_wrap .cnt_box .top {
    padding: 24px 25px 19.5px;
    background: linear-gradient(90deg, #3B1E86, #0094D0);
}

.news_wrap .main .cnt_box .date_category {
    justify-content: space-between;
    padding-bottom: 16px;
    position: relative;
}

.news_wrap .main .cnt_box .date_category::before {
    content: "";
    width: 100%;
    height: 0.5px;
    display: inline-block;
    background-image: linear-gradient(to right, #fff, #fff 2px, transparent 2px, transparent 5px);
    background-size: 7px 1.5px;
    background-repeat: repeat-x;
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
}

.news_wrap .main .cnt_box .date_category span {
    display: block;
    width: 150px;
    font-size: 19px;
    line-height: 27px;
}

.news_wrap .main .cnt_box .date_category .category_g {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: flex-end;
    width: calc(100% - 150px);
    margin: 0 0 -7px -7px;
}

.news_wrap .main .cnt_box .date_category .category {
    font-size: 16px;
    text-align: center;
    line-height: 29px;
    margin: 0 0 7px 7px;
    padding: 0 22px;
    background-color: #307DD9;
}

.news_wrap .main .cnt_box .top h2 {
    font-size: 35px;
    font-weight: 700;
    line-height: 48px;
    margin-top: 5.5px;
}

.news_wrap .main .cnt_box .bottom {
    font-size: 16px;
    line-height: 29px;
    font-weight: 500;
    padding: 48.5px 38.5px;
    background-color: #DDF6FF;
    color: #1D2F50;
}

.news_wrap .main figure {
    margin-top: 26px;
}

.news_wrap .page_nav {
    margin-top: 69px;
}

.news_wrap .side_box {
    border-radius: 10px;
    overflow: hidden;
    margin-bottom: 45px;
}

.news_wrap .side_box .title {
    font-size: 23px;
    letter-spacing: 0.1em;
    line-height: 34px;
    text-align: center;
    padding: 11.5px 0;
    font-weight: 700;
}

.news_wrap .side .category .title {
    background-color: #1EA994;
}

.news_wrap .side .new .title {
    background-color: #F5BE51;
}

.news_wrap .side .month .title {
    background-color: #B89DEC;
}

.news_wrap .side .bottom {
    padding: 20px 30px;
    background-color: #DDF6FF;
    font-size: 16px;
    line-height: 24px;
}

.news_wrap .side ul li {
    margin-bottom: 20px;
    padding-left: 17px;
    position: relative;
}

.news_wrap .side ul li:hover::before {
    left: -3px;
    transition: 0.4s;
}

.news_wrap .side ul li::before {
    content: "";
    display: inline-block;
    width: 9px;
    height: 8px;
    clip-path: polygon(50% 0, 100% 100%, 0 100%);
    background-color: #8E9CB7;
    transform: rotate(90deg);
    position: absolute;
    left: 0;
    top: 8px;
    transition: 0.4s;
}

.news_wrap .side ul li:last-of-type {
    margin-bottom: 0;
}

.news_wrap .side ul li a {
    color: #1D2F50;
}

.news_wrap .side .sub_ul {
    display: none;
    padding-left: 20px;
}

.news_wrap .side .month span {
    display: block;
    font-size: 16px;
    line-height: 24px;
    margin-bottom: 13px;
    color: #1D2F50;
    position: relative;
    padding-left: 24.46px;
    cursor: pointer;
}

.news_wrap .side .month span::before {
    content: "";
    display: block;
    width: 1.88px;
    height: 14.07px;
    background-color: #8E9CB7;
    position: absolute;
    left: 5.9px;
    top: 5px;
}

.news_wrap .side .month span::after {
    content: "";
    display: block;
    width: 14.07px;
    height: 1.88px;
    background-color: #8E9CB7;
    position: absolute;
    left: 0;
    top: 12px;
}

.news_wrap .side .month span.on::before {
    opacity: 0;
}

.news_wrap .side .month span.on + .sub_ul {
    display: block;
    margin-bottom: 10px;
}

.news_wrap .side .month .sub_ul li {
    color: #1D2F50;
}


/*----------
06.contact
----------*/
#contact .cnt_area01 {
    padding: 66px 0 228.8px;
}

#contact .cnt_area01 .tel_wrap {
    margin-bottom: 51px;
    display: flex;
    justify-content: space-between;

}

#contact .cnt_area01 .tel_wrap .tel_area {
    display: flex;
    border-radius: 10px;
    overflow: hidden;
    width: 60%;
}

#contact .cnt_area01 .tel_area .left {
    font-size: 16px;
    font-weight: 700;
    line-height: 25px;
    padding: 27px 20px 27px 25px;
    background-color: #0E498F;
    width: 38.3%;
}

#contact .cnt_area01 .tel_area .right .num {
    font-size: 40px;
    line-height: 58px;
    margin-bottom: 1px;
    font-weight: 700;
    display: flex;
    align-items: center;
}

#contact .cnt_area01 .tel_area .right .num::before {
    content: "";
    display: inline-block;
    width: 32.32px;
    height: 42.15px;
    background: center/contain no-repeat url(../common/img/tel.png);
    margin-right: 8px;
}

#contact .cnt_area01 .tel_area .right {
    padding: 7px 17px 17px;
    background-color: #DDF6FF;
    color: #0E498F;
    width: 61.7%;
}

#contact .cnt_area01 .tel_area .right ul {
    font-weight: 500;
    line-height: 20px;
    display: flex;
}

#contact .cnt_area01 .apply {
    position: relative;
    width: 38.12%;
}

#contact .cnt_area01 .apply::after {
    content: "";
    display: inline-block;
    width: 10.15px;
    height: 17.62px;
    background: center/contain no-repeat url(../common/img/arrow_blue.png);
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    right: 38.9px;
}

#contact .cnt_area01 .apply a {
    display: block;
    padding: 33px 0;
    background: linear-gradient(#9FFFF1, #9FCAFF);
    font-size: 26px;
    line-height: 37px;
    font-weight: 700;
    text-align: center;
    color: #0E498F;
    border-radius: 10px;
}

#contact .cnt_area01 .flow_area .cnt_box span {
    padding-bottom: 18.5px;
}

#contact .cnt_area01 .flow_area .cnt_box {
    padding: 27px 20px;
}

#contact .cnt_area01 .flow_area + ul {
    margin-bottom: 68px;
}

#contact .cnt_area01 .contact_wrap .blue_title_big + span {
    margin-bottom: 38px;
}

#contact .cnt_area01 .form_wrap .textarea textarea {
    margin-bottom: 11px;
}

#contact .cnt_area01 .form_wrap .name .caution {
    margin-bottom: 7px;
}

#contact .cnt_area01 .form_wrap .checkboxarea .wpcf7-list-item {
    margin-right: 0;
    min-width: 292px;
    margin-bottom: 11px;
}

#contact .cnt_area01 .form_wrap .checkboxarea dd .wpcf7-checkbox {
    justify-content: space-between;
}

#contact .cnt_area01 .form_wrap .checkboxarea .form_wrap dl {
    margin-bottom: 40px;
}


/*----------
07.sdgs
----------*/
#sdgs .title_area_ptn01 {
    background: url(../img/company/company/title_bg.jpg) no-repeat center/cover;
}

#sdgs .cnt_area01 {
    padding: 0 0 120px;
    background: #EAF3FF;
    position: relative;
}

#sdgs .cnt_area01 .contents_in {
    position: relative;
}

#sdgs .cnt_area01 .breadcrumb {
    margin-bottom: 60px;
    padding-top: 20px;
    color: #1D2F50;
}

#sdgs .cnt_area01 .breadcrumb a {
    color: #1D2F50;
}

#sdgs .cnt_area01 .first_text {
    margin-bottom: 60px;
    font-size: 22px;
    letter-spacing: .05em;
    line-height: 1.4;
    text-align: center;
    color: #1D2F50;
}

#sdgs .cnt_area01 .cnt_block .cnt_box + .cnt_box {
    margin-top: 55px;
}

#sdgs .cnt_area01 .cnt_block .cnt_box .head {
    padding: 9px 30px;
    background-color: #2A76D6;
    border-left: 4px solid #1D2F50;
    color: #fff;
    font-size: 32px;
    font-weight: 700;
    line-height: 1.4;
}

#sdgs .cnt_area01 .cnt_block .cnt_box .cnt_wrp {
    display: flex;
    justify-content: space-between;
    padding: 28px 0 58px;
    background-color: #fff;
    color: #152034;
}

#sdgs .cnt_area01 .cnt_block .cnt_box .txt_wrp {
    width: 48.8%;
    padding: 0 20px 0 3.3%;
}

#sdgs .cnt_area01 .cnt_block .cnt_box .txt_wrp ul li {
    position: relative;
    padding-left: 1.3em;
    font-size: 16px;
    letter-spacing: .05em;
    line-height: 1.6875;
}

#sdgs .cnt_area01 .cnt_block .cnt_box .txt_wrp ul li::before {
    content: "◆";
    position: absolute;
    left: 0;
}

#sdgs .cnt_area01 .cnt_block .cnt_box .ico_wrp {
    display: flex;
    flex-wrap: wrap;
    width: 51.2%;
    margin-bottom: -20px;
}

#sdgs .cnt_area01 .cnt_block .cnt_box .ico_wrp .ico {
    width: 28.3%;
    margin: 0 4.8% 20px 0;
}

/*----------
08.sitemap
----------*/
#sitemap .cnt_area01 {
    padding: 20px 0 120px;
}

#sitemap .cnt_area01 .breadcrumb {
    margin-bottom: 60px;
}

#sitemap .cnt_area01 .nav_block {
    display: flex;
    flex-wrap: wrap;
}

#sitemap .cnt_area01 .nav_block .nav_box {
    width: 30%;
    margin-left: 5%;
}

#sitemap .cnt_area01 .nav_block .nav_box:nth-child(3n + 1) {
    margin-left: 0;
}

#sitemap .cnt_area01 .nav_block .nav_box .nav_wrp + .nav_wrp {
    margin-top: 30px;
}

#sitemap .cnt_area01 .nav_block .nav_box .nav_wrp .em_link {
    position: relative;
}

#sitemap .cnt_area01 .nav_block .nav_box .nav_wrp .em_link::before {
    content: "";
    position: absolute;
    z-index: 1;
    top: 0;
    left: 0;
    width: 5px;
    height: 100%;
    background: -webkit-linear-gradient(315deg, #3B1E86, #0094D0);
    background: linear-gradient(135deg, #3B1E86, #0094D0);
}

#sitemap .cnt_area01 .nav_block .nav_box .nav_wrp .em_link a {
    display: block;
    position: relative;
    padding: 10px 20px;
    border: 1px solid #ccc;
    font-size: 16px;
    line-height: 1.4;
}

#sitemap .cnt_area01 .nav_block .nav_box .nav_wrp .em_link a[href]::before {
    content: "";
    position: absolute;
    top: 50%;
    right: 15px;
    transform: translateY(-50%);
    width: 20px;
    height: 20px;
    border-radius: 50%;
    background-color: #fff;
    background: -webkit-linear-gradient(315deg, #3B1E86, #0094D0);
    background: linear-gradient(135deg, #3B1E86, #0094D0);
    transition: .3s;
}

#sitemap .cnt_area01 .nav_block .nav_box .nav_wrp .em_link a[href]::after {
    content: "";
    position: absolute;
    top: 50%;
    right: 25px;
    transform: translate(45%, -50%) rotate(45deg);
    width: 5px;
    height: 5px;
    border-top: 1px solid #fff;
    border-right: 1px solid #fff;
    transition: .3s;
}

#sitemap .cnt_area01 .nav_block .nav_box .nav_wrp .em_link a[href]:hover::before {
    right: 10px;
}

#sitemap .cnt_area01 .nav_block .nav_box .nav_wrp .em_link a[href]:hover::after {
    right: 20px;
}

#sitemap .cnt_area01 .nav_block .nav_box .nav_wrp .sub_links {
    margin-top: 14px;
    padding-left: 1em;
}

#sitemap .cnt_area01 .nav_block .nav_box .nav_wrp .sub_links .sub_links {
    margin-top: 10px;
    padding-left: 0;
}

#sitemap .cnt_area01 .nav_block .nav_box .nav_wrp .sub_links li {
    position: relative;
    padding-left: 1.2em;
    line-height: 1.4;
}

#sitemap .cnt_area01 .nav_block .nav_box .nav_wrp .sub_links li + li {
    margin-top: 10px;
}

#sitemap .cnt_area01 .nav_block .nav_box .nav_wrp .sub_links li a[href]::before {
    content: "";
    position: absolute;
    top: .7em;
    left: 0;
    transform: translateY(-50%) rotate(45deg);
    width: 5px;
    height: 5px;
    border-top: 1px solid #fff;
    border-right: 1px solid #fff;
}

#sitemap .cnt_area01 .nav_block .nav_box .nav_wrp .sub_links li a[href]:hover {
    text-decoration: underline;
}

/*----------
09.error404
----------*/
#error404 .cnt_area01 {
    padding: 100px 0;
}

#error404 .cnt_area01 p {
    width: fit-content;
    margin: 0 auto;
    line-height: 2;
}

#error404 .cnt_area01 .btn_ptn01 {
    max-width: 409px;
    margin: 80px auto 0;
}

/*----------
10.moving-form
----------*/
#moving-form .ttl__lead {
    margin-top: 10px;
    line-height: 1.6;
}

#moving-form .cnt_area01 {
    padding-top: 66px;
    padding-bottom: 228px;
}

#moving-form .flow_area h2 {
    font-size: 24px;
}

#moving-form .flow_area .free {
    font-size: 13px;
    color: #de1616;
    border: none;
}

#moving-form .movingForm__attention {
    text-align: center;
}

#moving-form .form_wrap + .form_wrap {
    margin-top: 100px;
}

#moving-form .name .caution {
    margin-bottom: 7px;
}

#moving-form .address .caution {
    margin-top: 7px;
}

.movingForm__note {
    text-align: center;
    line-height: 1.6;
    margin-bottom: 50px;
}

.movingFormCont__ttl {
    font-size: 32px;
    border-left: solid 4px #fff;
    color: #fff;
    background-color: #2b4578;
    padding: 17px 15px;
    margin-top: 50px;
    margin-bottom: 50px;
    font-weight: bold;
}

.movingChoise__item {

}

.movingChoise__item + .movingChoise__item {
    margin-top: 17px;
}

.movingChoise__txt {
    font-weight: bold;
    font-size: 17px;
    margin-bottom: 10px;
}
