@media(max-width:767px) {

    .home-news-left {

        padding-top: 0;

        z-index: 2;

    }



    .home-news-left::after {

        width: calc(50vw - 28px);

        right: auto;

        left: -25px;

        height: 88px;

        top: 50%;

        transform: translateY(-50%);

    }



    .main-title h2 {

        font-size: 2.6rem;

    }



    .main-title p {

        font-size: 1.5rem;

        margin-top: 0px;

    }



    .news-item.item-list {

        flex-wrap: wrap;

        padding: 13px 9px;

        flex-wrap: wrap;

        margin-bottom: 0;

    }



    .home-news-right {

        padding-right: 0;

    }



    .news-item .date {

        width: 80px;

        font-size: 1.3rem;

    }



    a.cat {

        width: 84px;

        min-height: 19px;

        font-size: 1.2rem;

        padding-bottom: 1px;

    }



    .news-item.item-list .title {

        flex: auto;

        width: 100%;

        padding-left: 0;

        padding-top: 5px;

    }



    .news-item.item-list .title a {

        -webkit-line-clamp: 2;

        font-size: 1.4rem;

        line-height: 1.59;

    }



    a.btn.btn-more {

        max-width: 50%;

        font-size: 1.4rem;

        min-height: 48px;

    }



    .home-news::after {

        height: 100%;

        bottom: 0;

        top: auto;

        width: 100%;

    }



    .home-news,

    .home-about {

        padding-left: 10px;

        padding-right: 10px;

    }



    a.btn.btn-more::after {

        width: 24px;

        height: 24px;

        right: 8px;

    }



    .home-about-left {

        margin-left: -25px;

    }



    .home-about-left>img {

        width: 225px;

    }



    .img-about-left {

        width: 256px;

        left: auto;

        right: -18px;

        bottom: -60px;

    }



    .img-about-left img {

        max-width: 100%;

    }



    .home-about-right {

        padding: 90px 0 0;

    }



    a.btn.btn-main {

        max-width: 193px;

        min-height: 50px;

        font-size: 1.5rem;

        padding-left: 30px;

    }



    a.btn.btn-main::after {

        width: 22px;

        height: 22px;

        right: 15px;

    }



    .btn-home-about a.btn.btn-main {

        margin-right: auto;

    }



    #home-about::after {

        width: 270px;

        height: 131px;

        right: 15px;

        bottom: -60px;

    }



    #home-about::before {

        height: calc(100% - 80px);

    }



    .home-business {

        padding-left: 10px;

        padding-right: 10px;

    }



    .home-business-right {

        padding-right: 0;

    }



    .link-busi-home {

        flex-direction: column;

        margin-bottom: 35px;

    }



    .img-link-busi-home {

        width: 100%;

    }



    .text-link-busi-home {

        padding: 15px 20px;

        flex: auto;

        width: 100%;

    }



    .main-title.st-2 h2 {

        font-size: 3rem;

    }



    .text-link-busi-home a {

        font-size: 2rem;

        padding-right: 35px;

    }



    .home-recruit .main-title.st-1 h2 {

        font-size: 3rem;

    }



    .text-link-busi-home a::after {

        width: 22px;

        height: 22px;

    }



    .text-link-busi-home p {

        padding-left: 0;

        padding-top: 10px;

        line-height: 1.67;

    }



    .link-busi-home:last-child {

        margin: 0;

    }



    .img-link-busi-home span {

        width: 62px;

        left: 10px;

        top: -12px;

    }



    .home-business::before {

        height: 557px;

    }



    .home-business::after {

        width: 100%;

        height: 430px;

    }



    .img-link-busi-home .img img {

        height: 120px;

        object-fit: cover;

        width: 100%;

    }



    .main-title.st-2 {

        flex-direction: column;



    }



    .main-title.st-2 p {

        margin-top: 10px;

        margin-left: 0;

    }



    .home-work {

        padding-left: 10px;

        padding-right: 10px;

    }



    .box-slide-work {

        max-width: 210px;

        margin: 0 auto;

    }



    #slide-work .slick-list {

        overflow: visible;

        margin: 0 -13px;

    }



    #slide-work .slick-slide {

        padding: 0 13px;

    }



    .box-img-work {

        max-width: 178px;

    }



    .box-text-work {

        padding: 7px 22px 15px;

    }



    .box-text-work>a {

        font-size: 1.4rem;

        line-height: 1.27;

    }



    .box-text-work .date {

        font-size: 1.3rem;

        margin: 10px 0;

    }



    a.work-cat {

        max-width: 145px;

        min-height: 22px;

        font-size: 1.3rem;

    }



    .home-work::after {

        height: 368px;

    }



    .home-work::before {

        height: 445px;

        bottom: auto;

        top: 0;

    }



    .box-home-recruit h2 {

        font-size: 2rem;

        width: max-content;

        text-align: center;

        top: -20px;

    }



    .box-home-recruit h2::after {

        width: 100%;

        height: 18px;

        top: 12px;

    }



    .box-btn-reform {

        position: static;

        margin-top: 33px;

        transform: none;

        width: 100%;

    }



    .home-recruit::after {

        height: 348px;

        width: 100vw;

        left: -15px;

    }



    .box-home-recruit {

        margin-top: 55px;

    }



    .box-footer {

        flex-direction: column;

    }



    .footer-left {

        width: 100%;

    }



    .footer-right {

        width: 100%;

        flex: auto;

    }



    .footer-right .box-map-footer {

        position: static;

        width: auto;

        height: 187px;

        margin: 0 -15px;

    }



    .footer-logo h3 {

        font-size: 1.2rem;

    }



    .footer-logo h3 span {

        font-size: 1.6rem;

    }



    .page-header {

        margin-top: 50px;

        height: 155px;

        margin: 50px -15px 0;

        padding-left: 25px;

        padding-bottom: 15px;

        background-position: left;

    }



    .title-en {

        font-size: 3rem;

    }



    .title-jp {

        font-size: 1.7rem;

    }



    .page-header::after {

        width: 230px;

        height: 110px;

        bottom: -5px;

        right: -105px;

    }



    .sidebar .container {

        padding: 0;

    }



    .news-list .container {

        padding: 0;

    }



    .list-news-archive .news-item.item-list {

        padding: 20px 33px;

    }



    .list-news-archive .news-item .date {

        width: 90px;

    }



    .list-news-archive .news-item.item-list .title {

        padding-top: 5px;

    }



    .list-news-archive .news-item.item-list .title a {

        line-height: 1.67;

    }



    .box-post-title {

        padding: 30px 25px 35px;

    }



    .single-content .container-1100 {

        padding: 0;

    }



    .post-content {

        padding-top: 35px;

    }
    
    .post-content a{
        text-decoration: underline;
    }


    a.btn.btn-download {

        min-height: 45px;

        font-size: 1.5rem;

        padding-left: 20px;

    }



    a.btn.btn-download::after {

        width: 24px;

        height: 19px;

        right: 13px;

    }



    a.btn.btn-main.btn-single {

        width: 155px;

        font-size: 1.4rem;

        padding-left: 25px;

    }



    a.btn.btn-main.btn-single::after {

        width: 20px;

        height: 16px;

        left: 20px;

    }



    ul.list-anchor li:nth-child(7) a,

    ul.list-anchor li:nth-child(8) a {

        height: 63px;

    }



    .sub-title {

        font-size: 2.3rem;

        padding-left: 35px;

    }



    .sub-title:after {

        width: 22px;

        height: 4px;

        left: 0;

    }



    .about-01 {

        padding-left: 10px;

        padding-right: 10px;

    }



    .text-about-02 {

        padding: 0 20px 30px;

    }



    .text-about-02 h2 {

        padding-top: 25px;

        font-size: 1.5rem;

        margin-bottom: 7px;

        line-height: 1.67;

    }



    .about-02 .container::after {

        width: 340px;

        height: 163px;

        right: -190px;

        bottom: -45px;

    }



    .about-02,

    .about-03 {

        padding-left: 10px;

        padding-right: 10px;

    }



    .img-about-03 {

        margin-left: -25px;

        margin-right: -25px;

    }



    .table-about-left {

        width: 113px;

        padding: 8px 10px;

        font-size: 1.4rem;

    }



    .table-about-right {

        margin-left: 7px;

        padding: 7px 10px;

        font-size: 1.2rem;

        line-height: 1.56;

    }



    .table-about {

        margin-bottom: 7px;

    }



    .about-04 .container {

        padding-left: 25px;

        padding-right: 25px;

    }



    .map-about iframe {

        height: 200px;

    }



    .box-flex-truck {

        padding: 12px 14px;

    }



    .img-truck {

        width: 38px;

        margin-right: 15px;

    }



    .text-truck h2 {

        font-size: 1.5rem;

    }



    .text-truck {

        font-size: 1.3rem;

        line-height: 1.46;

    }



    .about-05,

    .about-06,

    .about-07,

    .about-08,

    .about-09 {

        padding-left: 10px;

        padding-right: 10px;

    }



    .year {

        width: 73px;

        font-size: 2.3rem;

    }



    .box-date-action {

        flex-direction: column;

        margin-bottom: 15px;

    }



    .date-time {

        width: 100%;

        font-size: 1.3rem;

    }



    .text-history {

        line-height: 1.28;

    }



    .text-history span {

        font-size: 1.4rem;

    }



    .box-history::after {

        width: 112px;

    }



    .box-history {

        padding-top: 20px;

    }



    .about-07 .sub-title {

        line-height: 1.33;

    }



    .about-07 .sub-title:after {

        top: 15px;

        transform: none;

    }



    .img-about-07 img {

        width: 237px;

    }



    .title-border {

        font-size: 1.7rem;

        padding-bottom: 3px;

    }



    ul.list-num li::after {

        left: -50px;

    }



    ul.list-num li {

        line-height: 1.85;

        font-weight: 400;

    }



    .about-07::after {

        height: calc(100% - 210px);

    }



    .box-bgcl {

        padding: 35px 29px;

    }



    a.btn.btn-main.btn-pdf::before {

        width: 24px;

        height: 29px;

        left: 25px;

    }



    .box-text-about-7 p {

        font-weight: 400;

        line-height: 1.85;

    }



    .page-business ul.list-anchor li,

    .page-recruit ul.list-anchor li {

        width: calc(50% - 5px);

        margin-right: 10px;

    }



    .box-busi-left {

        padding-right: 18px;

        height: 196px;

    }



    .business-01 {

        padding-left: 10px;

        padding-right: 10px;

    }



    .box-img-busi {

        width: calc(100vw - 45px);

        right: 20px;

    }



    .box-busi-cs {

        padding: 30px 0;

    }



    .box-busi-left::after {

        width: calc(100vw - 80px);

        height: calc(100% + 60px);

        right: 55px;

    }



    .box-busi-left span {

        width: 70px;

        right: -6px;

        top: auto;

        bottom: 7px;

    }



    .box-busi-right h2 {

        font-size: 2.6rem;

        margin-bottom: 15px;

    }



    .box-busi-right {

        padding-top: 55px;

    }



    .box-busi-right h3 {

        font-size: 2.3rem;

        padding-left: 35px;

        margin-bottom: 10px;

    }



    .box-busi-right h3::after {

        width: 22px;

    }



    .title-cs {

        font-size: 2.2rem;

        padding-left: 20px;

        padding-bottom: 1px;

    }



    .title-cs:after {

        width: 5px;

        left: 2px;

    }



    .box-active-left {

        padding-right: 0;

    }



    .box-active-left h2 {

        font-size: 1.5rem;

        min-height: 38px;

        padding: 0 22px;

        padding-right: 45px;

        top: -15px;

    }



    .box-active-right h3 {

        font-size: 1.8rem;

        margin-top: 0;

        margin-bottom: 18px;

    }



    .box-active-right p {

        line-height: 1.85;

    }



    .business-02,

    .business-03,

    .business-04 {

        padding-left: 10px;

        padding-right: 10px;

    }



    .box-active-left {

        margin-bottom: 20px;

    }



    .sub-title span {

        font-size: 1.3rem;

        padding-left: 25px;

    }



    .name-engine {

        height: 32px;

        padding: 0 15px;

    }



    .name-engine p {

        width: unset;

    }



    .name-engine h2 {

        font-size: 1.3rem;

    }



    .box-flex-img {

        justify-content: space-between;

        margin: 0 -10px;

    }



    .box-flex-img img {

        width: calc(50% - 3px);

        margin-bottom: 5px;

    }



    .business-04 .box-bgcl {

        padding: 25px 14px;

    }



    .table-cs td:nth-child(1) {

        width: 96px;

        font-size: 1.4rem;

        padding: 0 10px;

        line-height: 1.185;

    }



    .table-cs td {

        padding: 0 10px;

    }



    .box-work {

        flex-direction: column-reverse;

        padding: 23px 25px;

        border-width: 3px;

    }



    .box-img-work-cs {

        max-width: 220px;

        margin: 0 auto 20px;

    }



    .box-work-left h3 {

        max-width: 143px;

        font-size: 1.3rem;

        height: 24px;

    }



    .box-work-left h2 {

        font-size: 1.5rem;

        line-height: 1.26;

        margin: 10px 0 20px;

    }



    .box-info-work h4 {

        width: 68px;

        border-width: 1px;

        font-size: 1.4rem;

    }



    .box-info-work p {

        padding-left: 14px;

    }



    .box-info-work {

        margin-bottom: 12px;

    }



    .page-work .title-border span {

        font-size: 2.9rem;

        margin-right: 15px;

    }



    .page-work .title-border {

        margin-top: 65px;

        border-width: 1px;

    }



    .work-01 {

        padding-left: 10px;

        padding-right: 10px;

    }



    .box-text-recruit-01 {

        margin-top: 35px;

        padding-left: 10px;

        padding-right: 10px;

    }



    .box-text-recruit-01 h2 {

        font-size: 2.2rem;

    }



    .box-text-recruit-01 h2:after {

        width: 276px;

        height: 20px;

        bottom: -2px;

    }



    .img-recruit-01 {

        margin-left: -15px;

        margin-right: -15px;

    }



    .recruit-01::after {

        height: 630px;

    }



    .box-talent {

        flex-wrap: wrap;

        justify-content: flex-start;

        flex-direction: column-reverse;

        position: relative;

        align-items: center;

    }



    .talent-info {

        width: 190px;

        height: 190px;

        font-size: 1.4rem;

        border-width: 10px;

        margin: 30px 0;

        padding: 0 20px;

        line-height: 1.6;

        margin-right: 120px;

    }



    .talent-info:last-child {

        position: absolute;

        right: 10px;

        top: 50%;

        transform: translateY(-50%);

        margin: 0;

    }



    .talent-info:nth-child(2) {

        margin-top: 30px;

    }



    .recruit-02 {

        padding-left: 10px;

        padding-right: 10px;

        padding-bottom: 185px;

    }



    .recruit-02::after {

        height: 130px;

        width: 100%;

        bottom: 62px;

    }



    .talent-info br {

        display: none;

    }



    .talent-info:after {

        width: calc(100% - 10px);

        height: calc(100% - 10px);

    }



    .text-recruit-03 {

        line-height: 1.85;

        padding-top: 0;

    }



    .recruit-03 {

        padding-left: 10px;

        padding-right: 10px;

    }



    .box-welfare {

        width: 100%;

        height: calc(50vw - 35px);

        margin-bottom: 20px;

        margin-left: auto;

        margin-right: auto;

    }



    .recruit-06::after {

        height: calc(100% - 130px);

    }



    .box-btn a.btn.btn-main {

        max-width: 210px;

    }



    .img-welfare {

        width: 65px;

    }



    .box-welfare p {

        color: #022222;

        font-size: 1.3rem;

        line-height: 1.35;

        margin-top: 10px;

        min-height: 35px;

    }



    .recruit-04 {

        padding-left: 10px;

        padding-right: 10px;

    }



    .toggle-recruit .toggle-hd {

        height: 55px;

        font-size: 1.4rem;

        padding: 0 13px;

    }



    .toggle-recruit .toggle-hd::after {

        width: 20px;

        height: 20px;

        right: 18px;

    }



    .recruit-05 {

        padding-left: 10px;

        padding-right: 10px;

    }



    .box-toggle-cont {

        padding: 10px 12px 30px;

        margin-top: 15px;

    }



    .box-flex-recruit:nth-child(1) {

        flex-direction: column;

    }



    .box-flex-recruit:nth-child(1) .flex-recruit-left {

        width: 100%;

        text-align: center;

        line-height: 0.7;

    }



    .page-recruit .page-header {

        background-position: center right -60px;

    }



    .recruit-01 .sub-title {

        margin-left: 10px;

        margin-right: 10px;

    }



    .box-flex-recruit:nth-child(1) .flex-recruit-right {

        margin-left: 0;

        flex: auto;

        width: 100%;

        margin-top: 5px;

    }



    .require-left {

        width: 75px;

        padding: 10px 8px;

        margin-right: 5px;

    }



    .require-right {

        padding: 10px 8px;

        line-height: 1.3;

    }



    .box-require {

        margin-bottom: 5px;

    }



    .flex-recruit-left {

        width: 73px;

        padding: 10px 8px;

        font-size: 1.3rem;

    }



    .box-flex-recruit {

        margin-bottom: 5px;

    }



    .flex-recruit-right {

        margin-left: 5px;

        flex: 1;

        /* padding: 10px 8px; */

    }



    .flex-recruit-cont {

        padding: 10px 8px;

    }



    .box-flex-recruit-center .flex-recruit-left {

        align-items: flex-start;

    }



    .box-btn {

        margin-top: 30px;

    }



    .recruit-06 {

        padding-left: 10px;

        padding-right: 10px;

    }



    .box-white {

        padding: 25px 28px 38px;

    }



    .box-white img {

        width: 178px;

    }



    .box-btn-recruit-5 {

        margin: 30px 0 0;

    }



    .box-btn-recruit-5 a.btn.btn-main {

        margin-right: auto;

        max-width: 210px;

    }



    .business-02 .box-busi-left span {

        width: 83px;

        right: 4px;

    }



    section#contact-02 {

        padding-left: 10px;

        padding-right: 10px;

    }



    ul.tabs-nav li {

        font-size: 1.4rem;

        height: 50px;

    }



    .tab-panels {

        padding-top: 0;

    }



    .title-border.mt-sm-30 {

        margin-top: 30px;

    }



    .home-recruit .main-title.st-1 p,

    .main-title.st-2 p {

        font-size: 1.7rem;

    }



    .main-title.st-1 h2 {

        font-size: 3rem;

    }



    .main-title.st-1 p,

    .home-business .main-title p {

        font-size: 1.7rem;

    }



    .home-business .main-title h2 {

        font-size: 3rem;

    }



    .page-news .page-header {

        background-position: center right -130px;

    }

}