@charset "utf-8";
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;500;700&family=Noto+Serif+JP:wght@700&display=swap');

html {
    font-size: 16px;
}

body {
    position: relative;
    line-height: 1.75;
    font-family: 'Noto Sans JP', sans-serif;
    color: #333333;
    word-break: break-all;
    text-size-adjust: 100%;
    -webkit-text-size-adjust: 100%;
    -moz-text-size-adjust: 100%;
    -ms-text-size-adjust: 100%;
    -o-text-size-adjust: 100%;
    font-weight: 500;
    overflow-x: hidden;
}

main {
    max-width: 1920px;
    margin: 0 auto;
}

.fw5 {
    font-weight: 500;
}

.ff2 {
    font-family: 'Noto Serif JP', serif;
    font-weight: bold;
}

p {
    display: block;
    margin-block-start: 0em;
    margin-block-end: 0em;
    margin-inline-start: 0px;
    margin-inline-end: 0px;
}

.bold {
    font-weight: 700;
}


* {
    box-sizing: border-box;
    margin: 0;
    padding: 0;
}

*::after,
*::before {
    box-sizing: border-box;
}

img {
    max-width: 100%;
    height: auto;
}

main {
    display: block;
}


a {
    text-decoration: none;
    color: inherit
}

.clear {
    clear: both;
}

a[href^="tel:"] {
    cursor: default;
}

a[href^="tel:"]:hover {
    text-decoration: none;
}

br {
    font-size: 0;
}

.break_all {
    word-break: break-word;
}

.hv-o:hover {
    opacity: .7;
    cursor: pointer;
}

.auto_fixtop {
    display: block;
    position: relative;
    top: -80px;
    width: 100%;
    visibility: hidden;
}


.flex {
    display: flex;
}

.wrap {
    flex-wrap: wrap;
}

.al_center {
    align-items: center;
}

.center {
    justify-content: center;
}

.txt_center {
    text-align: center;
}

.txt_left {
    text-align: left;
}

.txt_right {
    text-align: right;
}

.fs10 {
    font-size: 0.625rem;
}

.fs12 {
    font-size: 0.75rem;
}

.fs13 {
    font-size: 0.813rem;
}

.fs14 {
    font-size: 0.875rem;
}

.fs15 {
    font-size: 0.938rem;
}

.fs17 {
    font-size: 1.063rem;
}

.fs18 {
    font-size: 1.125rem;
}

.fs19 {
    font-size: 1.188rem;
}

.fs20 {
    font-size: 1.25rem;
}

.fs21 {
    font-size: 1.313rem;
}

.fs22 {
    font-size: 1.375rem;
}

.fs24 {
    font-size: 1.5rem;
}

.fs25 {
    font-size: 1.563rem;
}

.fs27 {
    font-size: 1.688rem;
}

.fs28 {
    font-size: 1.75rem;
}

.fs29 {
    font-size: 1.813rem;
}

.fs30 {
    font-size: 1.875rem;
}

.fs35 {
    font-size: 2.188rem;
}

.fs40 {
    font-size: 2.5rem;
}

.fs50 {
    font-size: 3.125rem;
}

.fs73 {
    font-size: 4.563rem;
}

#pagetop {
    background-color: #7dcb38;
    position: fixed;
    bottom: 20px;
    right: 20px;
    border: none;
    outline: none;
    z-index: 10;
}

#pagetop img {
    width: 58px;
    height: 58px;
}

.row {
    display: flex;
    flex-wrap: wrap;
}

/* menu button */
#nav-icon1 {
    width: 51px;
    height: 51px;
    position: relative;
    -webkit-transform: rotate(0deg);
    -moz-transform: rotate(0deg);
    -o-transform: rotate(0deg);
    transform: rotate(0deg);
    -webkit-transition: .5s ease-in-out;
    -moz-transition: .5s ease-in-out;
    -o-transition: .5s ease-in-out;
    transition: .5s ease-in-out;

    background-color: #8dde3c;
}

#nav-icon1 span {
    display: block;
    position: absolute;
    height: 2.24px;
    width: 26px;
    background: #fff;
    opacity: 1;
    left: 50%;
    -webkit-transform: rotate(0deg) translateX(-50%);
    -moz-transform: rotate(0deg) translateX(-50%);
    -o-transform: rotate(0deg) translateX(-50%);
    transform: rotate(0deg) translateX(-50%);
    -webkit-transition: .25s ease-in-out;
    -moz-transition: .25s ease-in-out;
    -o-transition: .25s ease-in-out;
    transition: .25s ease-in-out;
}

#nav-icon1 span:nth-child(1) {
    top: 15px;
}

#nav-icon1 span:nth-child(2) {
    top: 24px;
}

#nav-icon1 span:nth-child(3) {
    top: 34px;
}

#nav-icon1.open span:nth-child(1) {
    top: 24px;
    left: 12px;
    -webkit-transform: rotate(135deg);
    -moz-transform: rotate(135deg);
    -o-transform: rotate(135deg);
    transform: rotate(135deg);
}

#nav-icon1.open span:nth-child(2) {
    opacity: 0;
    left: -60px;
}

#nav-icon1.open span:nth-child(3) {
    top: 24px;
    left: 12px;
    -webkit-transform: rotate(-135deg);
    -moz-transform: rotate(-135deg);
    -o-transform: rotate(-135deg);
    transform: rotate(-135deg);
}

/* end menu button */
/* head */
.u-mobile {
    display: none;
}

.logo img {
    width: 391px;
    height: 150px;
    position: relative;
    margin-top: -5px;
}

.link_f img {
    width: 138px;
    height: 112px;

}

.header_all {
    position: relative;
    z-index: 2;
}

.mg_lg {
    position: relative;
    margin-top: -50px;
    z-index: 1;
}

.header_menu {
    justify-content: space-between;
    margin-left: 20px;
}

.menu_list .link_f {
    margin-top: 0 !important;
    margin-right: 0 !important;
}

.menu_list li {
    margin-top: 43px;
    margin-right: 62px;
}

/* banner */
.item_cl {
    position: relative;
}

.item_cl .content_banner {
    position: absolute;
    top: 330px;
    right: 240px;
}

.item_cl h2 img {
    width: 668px !important;
    height: 80px;
}

.item_cl .fs29 {
    margin-top: 5px;
    margin-bottom: 10px;
}

.banner_top {
    overflow: hidden;
    position: relative;
}
.banner_top .img {
    width: 100%;
    height: 916px;
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
}
.banner_top .img01 {
    background-image: url(../img/top/banner_1.jpg);
}
.banner_top .img02 {
    background-image: url(../img/top/banner_2.jpg);
}
.banner_top .img03 {
    background-image: url(../img/top/banner_3.jpg);
}

.banner_top .owl-dots {
    position: absolute;
    right: -105px;
    bottom: 52px;
    transform: rotate(90deg);
}

.banner_top .owl-dots button {
    position: relative;
    z-index: 3;
}

.banner_top .owl-theme .owl-dots .owl-dot span {
    background-color: #e2e2e2 !important;
    color: #e2e2e2 !important;
}

.banner_top .owl-theme .owl-dots .owl-dot.active span,
.banner_top .owl-theme .owl-dots .owl-dot:hover span {
    background: #7dcb38 !important;
}


.banner_top .owl-theme .owl-dots {
    max-width: 140px;
}

.banner_top .owl-theme .owl-dots .owl-dot span {
    width: 28px !important;
    height: 6px !important;
    border-radius: 0;
}
.banner_top .txt .sp {
    display: none;
}

/*  */
.content_1345 {
    max-width: 1375px;
    margin: 0 auto;
    padding: 8.333vw 15px 23.958vw;
    position: relative;
}
.content_1600 {
    max-width: 1600px;
    margin: 0 auto;
}

.col_title {
    width: 380px;
    border-right: 1px solid #333333;
    padding-top: 15px;
    padding-bottom: 34px;
}

.content_text {
    width: calc(100% - 381px);
    padding-left: 4.010vw;
    padding-top: 20px;
    padding-bottom: 30px;
    position: relative;
    z-index: 5;
}

.title_row_h2 {
    font-family: 'Noto Serif JP', serif;
    font-size: 3rem;
    font-weight: bold;
    line-height: 1.3;
}

.content_img {
    position: absolute;
    top: 8.333vw;
    right: 0;
}

.content_img img {
    width: 279px;
    height: 273px;
}

.content_top {
    position: relative;
    margin-top: -15.260vw;
    padding-top: 15.260vw;
    background-image: url(../img/top/bg_1.jpg);
    background-repeat: no-repeat;
    background-size: 100.313vw 56.406vw;
    background-position-y: bottom;
    background-position-x: center;
}
.content_top .content_1600 {
    width: calc(100% - 30px);
    background-color: #ffffff;
    border: 1px solid #54bf4c;
    margin: 60px auto 0;
    padding: 40px 15px;
}
.content_top .box {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
}
.content_top .box .img {
    width: 218px;
    margin-right: 42px;
}
.content_top .box .cont {
    width: calc(100% - 260px);
    max-width: 850px;
}
.content_top .box .cont .ttl {
    font-family: 'Noto Serif JP', serif;
    color: #54bf4c;
    font-size: 48px;
    font-weight: 700;
    line-height: 1.2;
    margin-bottom: 20px;
}
.content_top .box .cont .ttl br {
    display: none;
}

.top-our {
    position: relative;
    margin-top: -19.792vw;
    z-index: 2;
}

.container_left_title {
    width: 80%;
    max-width: 523px;
    height: 836px;
    position: absolute;
    top: -100px;
    background: rgb(84, 191, 76);
    background: linear-gradient(0deg, rgba(84, 191, 76, 1) 0%, rgba(130, 205, 55, 1) 50%);
    z-index: -1;
    padding-left: 180px;
    padding-top: 120px;
    line-height: 1;
}

.left_h3 {
    position: relative;
}

.title_ja {
    color: #fff;
    writing-mode: vertical-lr;
    -ms-writing-mode: tb-lr;
    vertical-align: top;
    position: relative;
    z-index: 3;
    font-weight: bold;
}


.title_en {
    color: #8dde3c;
    transform: rotate(90deg);
    display: block;
    position: absolute;
    top: 325px;
    left: -223px;
}

.container_row_content {
    margin-top: 100px;
    max-width: 1600px;
    margin-left: 320px;
    background-image: url(../img/top/bg_3.jpg);
    background-size: cover;
}

.container_row_content .row {
    padding-left: 30px;
    padding-right: 15px;
    padding-top: 60px;
    padding-bottom: 100px;
}

.col_item_3 {
    width: 33.333333%;
    max-width: 467px;
    padding: 50px 15px;
}

.item_our .item_our_img {
    overflow: hidden;
}
.item_our .item_our_img img {
    transition: 0.5s;
}
.item_our .item_our_img:hover img {
    transform: scale(1.2, 1.2);
    transition: 0.5s;
}

.item_our_line {
    margin-left: 1.302vw;
    padding-top: 3px;
    padding-left: 2.083vw;
    border-left: 1px solid #54bf4c;
}

.item_our h4 {
    font-size: 1.688rem;
    font-weight: bold;
    margin-top: 21px;
    margin-bottom: 15px;
}

.item_our p {
    max-width: 330px;
}

.item_our .max_t2 {
    max-width: 300px;
}

.btn_link_white {
    text-align: center;
}

.btn_link_white a {
    position: relative;
    display: inline-block;
    background-color: #333333;
    border: 2px solid #333333;
    color: #fff;
    max-width: 406px;
    width: 100%;
    padding-left: 145px;
    top: -40px;
    text-align: left;
    padding-top: 24px;
    padding-bottom: 23px;
    transition: .3s ease;
}
.btn_link_white a:hover{
    background-color: #fff;
    border: 2px solid #333333;
    color: #333333;
    opacity: 1;
    transition: .3s ease;
}
.btn_link_white a:hover::before{
    background-image: url(../img/top/i_links_black_1.svg) !important;
}.btn_link_black a{
    transition: .3s ease;
}
.btn_link_black a:hover{
    opacity: 1;
    background-color: #333333;
    color: #fff;
    transition: .3s ease;
}
.btn_link_black a:hover::before{
    background-image: url(../img/top/i_links_white.svg) !important;
}
.btn_link_white a::before {
    content: '';
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    right: 130px;
    width: 42px;
    height: 8px;
    background-image: url(../img/top/i_links_white.svg);
    background-size: contain;
    background-repeat: no-repeat;
}

.voice .btn_link_black {
    margin-top: 70px;
}
.voice .btn_link_black a {
    padding-left: 110px;
    top: 0;
}
.voice .btn_link_black a::before {
    right: 100px;
}

/*  */
.top-works {
    padding-top: 7.813vw;
    background-image: url(../img/top/bg_2.jpg);
    background-repeat: no-repeat;
    background-size: 84.219vw 42.917vw;
    background-position-y: 20px;
    background-position-x: -22.656vw;
}
.top-works .btn_link_black {
    margin-top: 100px;
}

.item_bk img {
    width: 100%;
}

.btn_link_black {
    text-align: center;
}

.btn_link_black a {
    position: relative;
    display: inline-block;
    background-color: #fff;
    border: 2px solid #333333;
    max-width: 406px;
    width: 100%;
    padding-left: 145px;
    top: -40px;
    text-align: left;
    padding-top: 26px;
    padding-bottom: 25px;
    z-index: 10;
}

.btn_link_black a::before {
    content: '';
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    right: 130px;
    width: 42px;
    height: 8px;
    background-image: url(../img/top/i_links_black_1.svg);
    background-size: contain;
    background-repeat: no-repeat;
}

.top-works .title_right {
    margin-left: auto;
    position: relative;
    max-width: 885px;
    width: 100%;
}

.content_title_line {
    position: absolute;
    left: 145px;
    top: 130px;
    border-left: 1px solid #54bf4c;
    padding-left: 4.688vw;
    max-width: 520px;
    padding-top: 35px;
    padding-bottom: 47px;
}

.slider_right_h3 .title_en {
    color: #eeeeee;
    transform: rotate(0deg);
    position: static;
}

.slider_right_h3 .title_ja {
    color: #333333;
    margin-left: 17px;
    padding-top: 10px;
}

.slider_2{
    margin-top: 120px;
    transform: translateX(-400px);
}

.swiper-wrapper {
    display: flex;
    align-items: flex-end;
}

.swiper-slide {
    transition: transform .7s;
    transform: scale(0.9);
    text-align: center;
    padding-bottom: 40px;
    transform-origin: bottom center;
}
.swiper-slide .img {
    position: relative;
}
.swiper-slide .img:before {
    content: '';
    display: block;
    width: 100%;
    height: 100%;
    background-image: url(../img/top/works_item.png);
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    position: absolute;
    z-index: 1;
}
.swiper-slide .img .ttl {
    color: #ffffff;
    text-align: left;
    padding: 10px 15px;
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 1;
}
.swiper-slide img {
    width: 100%;
    height: auto;
}
.swiper-slide-active {
    margin: 0 60px 0 70px !important;
    padding-bottom: 0;
    -webkit-transform: scale(1.4);
    transform: scale(1.4);
}

/* s */
.top-company {
    margin-top: 145px;
    background-image: url(../img/top/bg_4.jpg);
    padding-bottom: 140px;
}

.max_1260 {
    max-width: 1290px;
    padding-left: 15px;
    padding-right: 15px;
    margin: 0 auto;

}

.content_mg60 {
    position: relative;
    margin-left: -50px;
    width: 100%;
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-end;
}

.col_12s .title_en {
    color: #8dde3c;
    transform: rotate(90deg);
    display: block;
    position: absolute;
    top: 408px;
    left: -125px;
}
.col_12s .title_ja{
    margin-left: 15px;
}

.col_12s {
    width: 100%;
    position: absolute;
}

.col_6sst {
    max-width: 506px;
    padding-right: 4.688vw;
    padding-top: 140px;
}

.col_6ss {
    width: 50%;
}

.col_6ssi {
    max-width: 612px;
    position: relative;
    margin-top: -45px;
}


.text_right_bt {
    position: absolute;
    right: 0;
    bottom: 0;
    z-index: 3;
}

.item_up_top {
    position: relative;
    margin-bottom: 20px;
}
.item_up_top_img {
    overflow: hidden;
}
.item_up_top_img img {
    transition: 0.5s;
}
.text_right_bt:hover + .item_up_top_img img {
    transform: scale(1.2, 1.2);
    transition: 0.5s;
}


.col_12s .tile_left_h3 .left_h3 {
    padding-top: 180px;
}

.no_line a {
    top: 0 !important;
    border-color: transparent !important;
}

.item_5s_img {
    width: 295px;
    height: 285px;
    margin-left: 30px;
}

.fs55 {
    font-size: 3.438rem;
}

.text_right_bt a {
    position: relative;
    font-size: 1.125rem;
    color: #fff;
    width: 231px;
    display: inline-block;
    background-color: #333333;
    padding: 10px 22px 5px;
}

.text_right_bt a::before {
    content: '';
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    right: 25px;
    width: 30px;
    height: 7px;
    background-image: url(../img/top/i_links_white.svg);
    background-size: contain;
    background-repeat: no-repeat;
}

.color_fff {
    margin-top: 55px;
    color: #fff;
}

.col_6ss .btn_link_black {
    text-align: left;
    margin-top: 50px;
}

/*  */
.top-recruit {
    position: relative;
    margin-top: 5.469vw;
    background-image: url(../img/top/bk_5.jpg);
    background-repeat: no-repeat;
    background-size: 1655px 745px;
    background-position-y: bottom;
    background-position-x: 13.802vw;
    padding-bottom: 19.792vw;
}

.top-recruit::before {
    content: '';
    position: absolute;
    background-image: url(../img/top/recruit.jpg);
    top: 0;
    left: 0;
    width: 45.833vw;
    height: 44.219vw;
    background-size: cover;
}

.top-recruit .content_right {
    position: relative;
    z-index: 2;
    max-width: 1286px;
    padding: 140px 15px 0;
    margin-left: auto;
}

.title_rgba .img_2wc.pc {
    display: inline-block;
}
.title_rgba .img_2wc.sp {
    display: none;
}

.img_2ws {
    margin-left: 110px;
    margin-top: 50px;
}

.top-recruit .content_right .slider_right_h3 .title_ja {
    color: #333333;
    margin-left: 47px;
}

.top-recruit .content_right .title_rgba br {
    display: none;
}
.top-recruit .content_right .title_right {
    position: relative;
    margin-left: 19.792vw;
}

.col_link_right {
    margin-top: 50px;
}

.top-recruit .btn_link_black a {
    margin-left: 15px;
}

/*  */
.top-map {
    position: relative;
    margin-top: -75px;
    padding-bottom: 7.552vw;
}

.container_1680 {
    max-width: 1680px;
    margin: 0 auto;
}

.col_12sm {
    width: 19%;
    padding-left: 3.125vw;

}

.col_12sm .tile_left_h3 {
    padding-top: 30px;
}

.col_12sm .title_ja {
    color: #333333;
}

.col_12sm .title_en {
    color: #eeeeee;
}

.col_6m {
    width: 40.5%;
    padding: 0 37px;
}

.col_6m iframe {
    width: 100%;
    height: 458px;
}

.item_boder_top {
    border-top: 1px solid #54bf4c;
}

.item_boder_top h4 {
    margin-top: 32px;
    margin-bottom: 4px;
}

.item_boder_top p {
    margin-bottom: 30px;
}

.top-map .title_en {
    color: #eeeeee;
    transform: rotate(90deg);
    display: block;
    position: absolute;
    top: 307px;
    left: -200px;
    min-width: 465px;
}

/*
@media screen and (max-width:1820px) {
    .slider_2 .owl-item.center+.active+.active .item_bk {
        margin-left: -2.989vw;
    }
}

@media screen and (max-width:1770px) {
    .slider_2 .owl-item.center+.active+.active .item_bk {
        margin-left: -2.7vw;
    }
}

@media screen and (max-width:1750px) {
    .slider_2 .owl-item.center+.active+.active .item_bk {
        margin-left: -2.5vw;
    }
}
*/

@media screen and (max-width:1750px) {
    .top-recruit .content_right .title_rgba {
        width: 60%;
        text-align: center;
        margin-left: auto;
    }
    .top-recruit .content_right .title_rgba br {
        display: inline-block;
    }

    .top-recruit .content_right .title_right {
        position: relative;
        margin-left: 390px;
    }
}

/*
@media screen and (max-width:1730px) {
    .slider_2 .owl-item.center+.active+.active .item_bk {
        margin-left: -2.3vw;
    }
}

@media screen and (max-width:1710px) {
    .slider_2 .owl-item.center+.active+.active .item_bk {
        margin-left: -2.1vw;
    }
}

@media screen and (max-width:1690px) {
    .slider_2 .owl-item.center+.active+.active .item_bk {
        margin-left: -1.9vw;
    }
}

@media screen and (max-width:1670px) {
    .slider_2 .owl-item.center+.active+.active .item_bk {
        margin-left: -1.7vw;
    }
}

@media screen and (max-width:1650px) {
    .slider_2 .owl-item.center+.active+.active .item_bk {
        margin-left: -1.4vw;
    }
}

@media screen and (max-width:1630px) {
    .slider_2 .owl-item.center+.active+.active .item_bk {
        margin-left: -1.2vw;
    }
}

@media screen and (max-width:1610px) {
    .slider_2 .owl-item.center+.active+.active .item_bk {
        margin-left: -1vw;
    }
}

@media screen and (max-width:1590px) {
    .slider_2 .owl-item.center+.active+.active .item_bk {
        margin-left: -.6vw;
    }
}

@media screen and (max-width:1570px) {
    .slider_2 .owl-item.center+.active+.active .item_bk {
        margin-left: -.4vw;
    }
}

@media screen and (max-width:1550px) {
    .slider_2 .owl-item.center+.active+.active .item_bk {
        margin-left: -.2vw;
    }
}

@media screen and (max-width:1530px) {
    .slider_2 .owl-item.center+.active+.active .item_bk {
        margin-left: 0.327vw;
    }
}

@media screen and (max-width:1510px) {
    .slider_2 .owl-item.center+.active+.active .item_bk {
        margin-left: 0.654vw;
    }
}

@media screen and (max-width:1490px) {
    .slider_2 .owl-item.center+.active+.active .item_bk {
        margin-left: 0.980vw;
    }
}

@media screen and (max-width:1470px) {
    .slider_2 .owl-item.center+.active+.active .item_bk {
        margin-left: 1.307vw;
    }
}

@media screen and (max-width:1450px) {
    .slider_2 .owl-item.center+.active+.active .item_bk {
        margin-left: 1.330vw;
    }
}
*/

@media screen and (max-width:1600px) {
    .item_cl h2 img {
        width: 501px !important;
        height: 60px;
    }

    .item_our_line {
        padding-left: 1.5vw;
    }

    .item_our h4 {
        font-size: 1.4rem;
    }

    .slider_2 .owl-item.active:has(+ .center) .item_bk {
        transform: scale(1.5) !important;
    }

    .top-recruit .content_right .title_right {
        margin-left: 490px;
    }

    .top-recruit .btn_link_black a {
        margin-left: 95px;
    }
}

@media screen and (max-width:1400px) {
    .item_cl .content_banner {
        top: 18.571vw;
        right: 140px;
    }

    .content_img img {
        width: 255px;
        height: 250px;
    }

    .item_our h4 {
        font-size: 1.25rem;
    }

    .item_our_line {
        margin-left: 0.5vw;
    }

    .content_mg60 {
        margin-left: 1px;
    }

    .top-recruit .content_right .title_right {
        margin-left: 560px;
    }

    .top-recruit .btn_link_black a {
        margin-left: 140px;
    }

    .banner_top .img {
        height: 720px;
    }
}

@media screen and (max-width:1259px) {
    .container_row_content {
        margin-left: 180px;
    }

    .container_left_title {
        padding-left: 60px;
    }

    .top-recruit .content_right .title_right {
        max-width: 810px;
        margin: 60px auto 0;
    }

    .top-recruit .btn_link_black a {
        margin-left: 0px;
    }
}

@media screen and (max-width:1200px) {
    .content_img {
        position: absolute;
        top: 225px;
        right: 20px;
        z-index: 4;
    }

    .menu_list li {
        margin-top: 40px;
        margin-right: 30px;
    }

    .logo img {
        width: 350px;
        height: 135px;
    }

    .item_cl h2 img {
        width: 418px !important;
        height: 50px;
    }

    .container_row_content .row {
        padding-left: 0px;
        padding-right: 0px;
    }

    .slider_2 .owl-item.active:has(+ .center) .item_bk {
        transform: scale(1.7) !important;
    }

    .col_6ssi {
        width: 45%;
    }

    .col_6sst {
        width: 55%;
        padding-left: 5%;
    }

    .top-recruit {
        background-position-x: center;
    }

    .title_rgba .img_2wc {
        width: 450px;
        height: auto;
    }

    .title_rgba .img_2ws {
        width: 300px;
    }

    .col_12sm {
        width: 13%;
    }

    .col_6m {
        width: 43.5%;
        padding: 0 20px;
    }
}

@media screen and (max-width:1199px) {
    .slider_2 .owl-item.center+.active .item_bk {
        margin-left: 0;
    }
}

@media screen and (max-width:1100px) {
    .link_f img {
        width: 99px;
        height: auto;
    }

    .item_cl .content_banner {
        right: 30px;
    }

    .item_our_line {
        padding-left: 0.8vw;
        letter-spacing: -1px;
    }
}

@media screen and (max-width:999px) {
    .item_5s_img{
        margin-left: 0;
    }
    .top-recruit .btn_link_black a {
        margin-top: 30px;
    }

    .col_6ss {
        max-width: none;
        width: 100% !important;
        margin: 30px 0 !important;
    }

    .list_item_up_top {
        display: flex;
        flex-wrap: wrap;
    }

    .item_up_top {
        width: calc(50% - 18px);
        margin: 0 9px;
    }

    .top-company {
        padding-bottom: 50px;
    }

    .col_title {
        width: 285px;
    }

    .content_text {
        width: calc(100% - 285px);
        padding-left: 3vw;
    }

    .content_img img {
        width: 200px;
        height: auto;
    }

    .title_row_h2 {
        font-size: 2.5rem;
    }
    .banner_top .owl-dots {
        right: -75px;
    }

    .menu_list li {
        margin-top: 20px;
        margin-right: 20px;
    }

    .logo img {
        width: 250px;
        height: auto;
    }

    .banner_top .item_cl {
        height: 500px;
    }
    
    .mg_lg {
        position: relative;
        margin-top: -35px;
    }

    .content_1345 {
        padding-bottom: 230px;
    }

    .content_top {
        background-size: cover;
        background-position-y: center;
    }
    .content_top .box .cont .ttl {
        font-size: 2.5rem;
    }

    .container_row_content {
        margin-left: 0;
    }

    .item_our_line {
        letter-spacing: 0;
    }

    .container_left_title {
        padding-top: 40px;
        height: 300px;
    }

    .container_left_title .title_ja {
        color: #fff;
        writing-mode: initial;
        -ms-writing-mode: initial;
        vertical-align: initial;
    }

    .title_en {
        transform: rotate(0deg);
        top: 2px;
        left: 120px;
        font-size: 3rem;
    }

    .container_row_content .row {
        padding-bottom: 50px;
    }

    .col_item_3 {
        padding: 30px 7.5px 50px;
    }

    .container_row_content .row {
        padding-left: 7.5px;
        padding-right: 7.5px;
    }

    .top-works {
        padding-top: 5.813vw;
        background-position-x: center;
        background-size: cover;
    }

    .top-works .title_right {
        padding-left: 15px;
    }

    .col_6sst {
        padding-left: 9px;
        padding-right: 9px;
    }

    .col_6ss .btn_link_black {
        text-align: center;
    }

    .item_5s {
        text-align: center;
    }

    .item_5s .color_fff {
        text-align: left;
        max-width: 390px;
        margin: 20px auto 0;
    }

    .col_12s .tile_left_h3 .left_h3 {
        padding-top: 40px;
        max-width: 360px;
        padding-left: 6px;
        margin: 0 auto;
    }

    .top-company .title_ja {
        color: #fff;
        writing-mode: initial;
        -ms-writing-mode: initial;
        vertical-align: initial;
    }

    .top-company .col_12s .title_en {
        transform: rotate(0deg);
        top: 38px;
        left: 120px;
        font-size: 3rem;
    }

    .img_2ws {
        margin-left: 60px;
        margin-top: 50px;
    }

    .col_12sm {
        width: 100%;
        position: relative;
        margin-top: -90px;
        margin-bottom: 50px;
    }

    .col_6m {
        width: 50%;
    }

    .col_12sm .title_ja {
        writing-mode: initial;
        -ms-writing-mode: initial;
        vertical-align: initial;
    }

    .top-map {
        padding-top: 40px;
    }
    .top-map .col_12sm .title_en {
        transform: rotate(0deg);
        top: -10px;
        left: 120px;
        font-size: 3rem;
    }

    .top-map:before {
        content: '';
        width: 94%;
        height: 1px;
        background-color: #54bf4c;
        position: absolute;
        left: 0;
        right: 0;
        top: -60px;
        margin: auto;
    }
    .item_boder_top {
        border-top: none;
    }
}

@media screen and (max-width:850px) {
    .menu_list li {
        margin-right: 10px;
    }

    .item_cl .content_banner {
        text-align: center;
        left: 0;
        right: 0;
    }

    .item_cl h2 img {
        width: 370px !important;
        height: auto;
        margin: auto;
    }

    .item_cl .fs29 {
        font-size: 1.5rem;
    }

    .item_cl p {
        font-size: 0.938;
    }

    .item_our h4 {
        font-size: 1.125rem;
    }

    .content_title_line {
        left: 125px;
    }

    .content_title_line {
        top: 100px;
    }

    .title_rgba {
        position: relative;
    }

    .title_rgba .img_2ws {
        position: absolute;
        top: -200px;
        right: 0;
    }

    .col_6m {
        width: 100%;
    }

    .col_6m iframe {
        width: 100%;
        height: 358px;
    }
}

@media screen and (max-width:767px) {
    html {
        font-size: 14px;
    }

    .header_menu {
        position: relative;
        margin-left: 0;
    }

    .header_menu .logo {
        margin-left: 15px;
        position: relative;
        z-index: 2;
    }

    .header_right {
        position: absolute;
        width: 100%;
        z-index: 0;
        justify-content: flex-end;
        background-color: #fff;
    }

    .menu_list li {
        margin: 0 20px !important;
    }

    .menu_list li a {
        display: block;
        padding: 12px 0px 10px;

        color: #333333;
    }

    .menu_list li.active {
        border-bottom: 2px solid #54bf4c;
    }

    .menu_list {
        display: none;
        position: absolute;
        width: 100%;
        top: 51px;
        background-color: #fff;
        padding-top: 30px;
        padding-bottom: 60px;
        text-align: center;
        z-index: 100;
    }

    .u-mobile {
        display: block;
    }

    .u-desktop {
        display: none;
    }

    .banner_top .txt .sp {
        display: inline-block;
    }

    .mg_lg {
        margin-top: -40px;
    }

    .col_title {
        width: 100%;
        border-right: transparent !important
    }

    .content_text {
        width: 100%;
        padding-left: 0;
    }

    .content_img {
        top: 50px;
    }

    .content_top {
        background-size: cover;
    }
    .content_top .content_1600 {
        margin-top: 25px;
        margin-bottom: 40px;
    }
    .content_top .box .img {
        width: 160px;
        margin: 0 auto;
    }
    .content_top .box .cont {
        width: 100%;
        margin-top: 20px;
    }

    .content_top .box .cont .ttl {
        text-align: center;
    }
    .content_top .box .cont .ttl br {
        display: inline-block;
    }

    .banner_top .img {
        height: 500px;
        opacity: 0.8;
    }
    .banner_top .img01 {
        background-image: url(../img/top/banner_1_sp.jpg);
        background-position: center;
    }
    .banner_top .img02 {
        background-image: url(../img/top/banner_2_sp.jpg);
        background-position: left center;
    }
    .banner_top .img03 {
        background-image: url(../img/top/banner_3_sp.jpg);
        background-position: right center;
    }
    .title_rgba .img_2wc.pc {
        display: none;
    }
    .title_rgba .img_2wc.sp {
        display: inline-block;
    }

    .top-our {
        position: relative;
        margin-top: -32vw;
    }

    .container_left_title {
        padding-top: 30px;
    }

    .container_left_title .title_en {
        left: 110px;
    }

    .container_row_content .row {
        padding-top: 10px;
    }

    #pagetop img {
        width: 45px;
        height: 45px;
    }
}

@media screen and (max-width:699px) {
    .slider_2 .owl-item.active:has(+ .center) .item_bk {
        transform: scale(1) !important;
        max-width: none;
        position: relative;
        margin-left: 0;
        top: 0;
    }

    .slider_2 .owl-item.active.center {
        justify-content: flex-end;
        margin-left: 0px;
    }

    .btn_link_black a {
        top: 40px;
    }

    .max_1260 {
        padding-left: 6px;
        padding-right: 6px;
    }

    .top-map {
        position: relative;
        margin-top: 0;
        padding-top: 70px;
    }
    .top-map::before {
        top: 0;
    }
}

@media screen and (max-width:655px) {
    .container_row_content .row {
        justify-content: center;
    }

    .col_item_3 {
        width: 100%;
    }
    .col_item_3:not(:last-child) {
        padding-bottom: 0;
    }

    .item_our_line {
        margin-left: 3.580vw;
        padding-left: 4.107vw;
    }

    .item_our h4 {
        font-size: 1.5rem;
    }

    .item_our p {
        max-width: none;
    }

    .item_our .max_t2 {
        max-width: none;
    }

    .col_12sm {
        margin-top: -30px;
    }

    .top-map .col_12sm .title_en {
        top: 15px;
        left: 110px;
        font-size: 2rem !important;
        min-width: auto;
    }

    .top-recruit::before {
        content: '';
        display: block;
        position: relative;
        background-image: url(../img/top/recruit.jpg);
        width: calc(100% - 30px);
        height: 98vw;
        background-position: right center;
        background-size: cover;
        margin: 0 auto;
    }
    .top-recruit .content_right .title_rgba {
        position: absolute;
        top: -180px;
        right: 15px;
    }
    .top-recruit .content_right .title_rgba img:last-child {
        display: none;
    }
    .top-recruit .content_right {
        padding-top: 40px;
    }
}

@media screen and (max-width:641px) {
    .text_right_bt a {
        width: 160px;
        padding: 4px 15px 0px;
    }
}

@media screen and (max-width:600px) {
    .title_rgba .img_2wc {
        width: 350px;
        height: auto;
    }

    .title_rgba .img_2ws {
        width: 250px;
    }

    .content_1345 {
        padding-bottom: 45vw;
    }

    .slider .item_cl img {
        min-height: 400px;
        object-fit: cover;
        object-position: right;
    }

    .item_cl .content_banner {
        top: 28vw;
        margin-left: 10px;
        top: 0;
        bottom: 0;
        margin: auto;
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        align-content: center;
    }

    .slider .item_cl h2 img {
        width: 300px !important;
        min-height: auto;
        object-fit: none;
    }

    .content_img {
        top: 10px;
        right: 10px;
    }

    .container_left_title {
        padding-left: 20px;
    }

    .top-our {
        margin-top: -39vw;
    }

}

@media screen and (max-width:520px) {
    .container_left_title .title_en {
        top: 20px;
        left: 20px;
    }

    .top-recruit .content_right .slider_right_h3 .title_ja {
        margin-left: 10px;
    }

    .content_title_line {
        left: 90px;
    }
}

@media screen and (max-width:480px) {    
    .item_up_top {
        width: 100%;
        margin: 9px 9px;
    }

    .top-recruit .btn_link_black a {
        margin-top: 50px;
    }

    .title_rgba .img_2ws {
        top: -150px;
    }

    .title_rgba .img_2wc {
        width: 280px;
        height: auto;
    }

    .title_rgba .img_2ws {
        width: 200px;
    }

    .content_title_line {
        left: 15px;
    }

    .banner_top .img02 {
        background-image: url(../img/top/banner_2_spsp.jpg);
        background-position: center;
    }

    .top-recruit .content_title_line {
        left: 0px;
    }

    .top-works .slider_right_h3 .title_ja {
        writing-mode: initial;
        -ms-writing-mode: initial;
        vertical-align: initial;
        margin-left: 0;
    }

    .top-recruit .content_right .slider_right_h3 .title_ja {
        writing-mode: initial;
        -ms-writing-mode: initial;
        vertical-align: initial;
        margin-left: 0;
    }

    .top-recruit .content_right .slider_right_h3 .title_en {
        color: #eeeeee;
        transform: rotate(0deg);
        position: absolute;
        top: -5px;
        margin-left: -15px;
    }

    .slider_right_h3 {
        position: relative;

    }

    .slider_right_h3 .title_en {
        color: #eeeeee;
        transform: rotate(0deg);
        position: absolute;
        top: -5px;
        margin-left: -15px;
    }

    .content_title_line {
        border-left: 0px solid #54bf4c;
        padding-left: 0;
        top: 50px;
    }
    .top-map {
        padding-top: 40px;
    }
    .col_12sm {
        margin-bottom: 0;
    }
}

@media screen and (max-width:440px) {

    .content_img img {
        width: 150px;
    }

    .title_row_h2 {
        font-size: 2rem;
    }

    .btn_link_white a {
        max-width: 280px;
        padding-left: 80px;
        padding-top: 16px;
        padding-bottom: 15px;
    }

    .btn_link_white a::before {
        right: 60px;
    }

    .btn_link_black a {
        max-width: 280px;
        padding-left: 80px;
        padding-top: 16px;
        padding-bottom: 15px;
    }
    .voice .btn_link_black a {
        padding-left: 60px;
    }

    .btn_link_black a::before {
        right: 60px;
    }
    .voice .btn_link_black a::before {
        right: 50px;
    }

    .container_left_title {
        width: 90%;
    }

    .fs35.title_ja {
        font-size: 2rem;
    }

    .title_en {
        font-size: 2.5rem !important;
    }

    .content_1345 {
        padding-bottom: 50vw;
    }

    .top-our {
        margin-top: -45vw;
    }

    .content_top .box .cont .ttl {
        font-size: 2rem;
    }
    
}

@media screen and (max-width:380px) {
    .top-recruit .content_title_line {
        letter-spacing: -1px;
    }

    .col_12sm {
        margin-top: -20px;
    }

    .top-map .col_12sm .title_en {
        top: 25px;
        left: 60px;
    }
}

@media screen and (max-width:340px) {
    .top-recruit .content_title_line {
        letter-spacing: -1px;
        font-size: 13.1px;
    }

    .title_row_h2 {
        font-size: 1.8rem;
    }

    .logo img {
        width: 230px;
    }
}


/* page 05 */
.banner__title-text-recruit {
    width: 17.125rem;
    height: 4rem;
}

.content_banner_job {
    color: #fff;
    line-height: 1.5;
}

.content_banner_job p {
    line-height: 2.5;
}

.content_banner_mg_left {
    position: relative;
    margin-left: -2.2rem;
}

.banner_page {
    position: relative;
}

.content_banner_job {
    position: relative;
    margin-top: 85px;
    padding-left: 94px;
    margin-left: 75px;

}

.content_banner_job::before {
    content: '';
    position: absolute;
    top: 1.12rem;
    left: 0;
    background-image: url(../img/job/border_line.svg);
    background-size: cover;
    width: 2px;
    height: calc(100% - 25px);
}

.content_banner_job h2 {
    margin-bottom: 55px;

}

.banner_page .banner__ap {
    position: absolute;
    top: 150px;
    left: 170px;
    align-items: flex-start;
    z-index: 2;
}

.img_hana {
    position: absolute;
    z-index: 2;
    top: 13.281vw;
    right: 8.333vw;
}

.img_hana img {
    width: 32.604vw;
    height: 36.615vw;
}

.job_content_title-sub {
    font-size: 1.5rem;
    font-weight: bold;
    display: inline-block;
    border-bottom: 1px solid #e2e2e2;
    padding-bottom: 5px;
    margin-top: 12px;
    margin-bottom: 10px;
}

.br_show_4 {
    display: none;
}

.container_1394 {
    max-width: 1394px;
    padding-left: 15px;
    padding-right: 15px;
    margin: 0 auto;
}

.container_1394 .row {
    border: 1px solid #e2e2e2;
}

.col_2x {
    width: 50%;
}

.job_img_text_content {
    margin-top: 135px;
    margin-bottom: 135px;
}

.job_content {
    padding-left: 75px;
    margin-top: 75px;
    padding-right: 15px;
}

.tag_content span {
    display: inline-block;
    width: 102px;
    padding-top: 6px;
    padding-bottom: 6px;
    background-image: url(../img/job/bg_r.svg);
    background-size: cover;
    text-align: center;
    color: #fff;
    font-size: 1.25rem;
}

.job_section_title .job_section_text {
    text-align: center;
    padding-bottom: 95px;
    background-image: url(../img/job/title_line.svg);
    background-size: 256px 54px;
    background-position: center 60px;
    background-repeat: no-repeat;
    font-weight: bold;
    font-family: 'Noto Serif JP', serif;
    color: #003449;
}

.job_features {
    background-image: url(../img/job/bk_s2.jpg);
    background-size: cover;
    padding-top: 110px;
    padding-bottom: 3.646vw;
}

.job_features .job_content_title_text {
    line-height: 1.5;
    font-size: 1.875rem;
    font-weight: bold;
    font-family: 'Noto Serif JP', serif;
    margin-bottom: 25px;
}


.job_features .job_content_text {
    position: relative;
    margin-top: 55px;
    margin-left: 65px;
    margin-right: 65px;
    border-top: 1px solid #54bf4c;
    border-left: 1px solid #54bf4c;
    z-index: 3;
    min-height: 378px;
}

.job_features .job_content_text::after {
    content: '';
    position: absolute;
    top: -2px;
    left: 0;
    width: 200px;
    height: 3px;
    background-color: #54bf4c;
    z-index: 1;
}

.job_features .job_content_text::before {
    content: '';
    position: absolute;
    left: -1.5px;
    top: 0;
    width: 3px;
    height: 210px;
    background-color: #54bf4c;
}

.job_features .job_content_tag {
    position: absolute;
    top: -55px;
    left: -65px;
    width: 132px;
    height: 136px;
    background-image: url(../img/job/hana_line.svg);
    background-size: contain;
    background-repeat: no-repeat;
    z-index: 2;
}

.job_features .job_content_text_title {
    position: relative;
    margin-right: -65px;
    width: calc(100% + 38px);
    background-color: #fff;
    padding: 65px 35px 20px 65px;
    margin-top: 35px;
    margin-left: 27px;
    min-height: 322px;
}

.job_features .job_content_tag {
    color: #54bf4c;
    line-height: 1;
}

.job_features .feature_number {
    color: #54bf4c;
    opacity: 0.5;
}

.container_full .row {
    padding-top: 10px;
    margin-bottom: 80px;
}

.job_content_text_img {
    justify-content: right;
    overflow: hidden;
}

.job_content_text_tag {
    max-width: 729px;
}

.job_content_tag_postion {
    position: absolute;
    top: 52%;
    left: 52%;
    transform: translate(-50%, -50%);
}

.job_content_tag_postion span {
    display: block;
    text-align: center;
}

.max_450 {
    max-width: 450px;
}

.job_content_text_tag--left {
    justify-content: flex-start;
}

.job_features .job_content_text_tag--left .job_content_text_title {
    margin-left: -65px !important;
    margin-right: 27px !important;
    padding-left: 95px;
}

.job_features .job_content_text_tag--left .job_content_text {
    margin-top: 55px;
    margin-left: 65px;
    margin-right: 65px;
    border-left: 0px solid #54bf4c;
    border-right: 1px solid #54bf4c;

}

.job_features .job_content_text_tag--left .job_content_text::before {

    left: auto;
    right: -2.5px;
}

.job_features .job_content_text_tag--left .job_content_text::after {
    left: auto;
    right: 0;
}

.job_features .job_content_text_tag--left .job_content_tag {
    left: auto;
    right: -65px;
    background-image: url(../img/job/hana_line_1.svg);
    background-size: contain;
    background-repeat: no-repeat;
    z-index: 2;
}


.job_features .job_content_text_tag--left .job_content_tag_postion {
    position: absolute;
    top: 52%;
    left: 44%;
    transform: translate(-50%, -50%);
}

.text_color{
    color: #003449;
}
.voices.text_color,
.voice.text_color {
    color: #333333;
}

/*  */
.job_img_text_content_col {
    background-color: #f0f8fa;
    padding-top: 75px;
    padding-bottom: 7.813vw;
}

.container_1532 {
    max-width: 1532px;
    margin: 0 auto;
    padding-top: 15px;
}
.container_1500 {
    width: calc(100% - 30px);
    max-width: 1500px;
    margin: 80px auto 0;
}

.col_3hana {
    width: calc(33.333333% - 32px);
    margin-top: 25px;
    margin-left: 16px;
    margin-right: 16px;
    border: 1px solid #003449;
    background-image: url(../img/job/hana_1.jpg);
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    color: #003449;
    text-align: center;
    max-height: 352px;
    font-weight: bold;
}

.col_3hana h4 {
    border-bottom: 1px solid #003449;
    margin-top: 45px;
    margin-bottom: 20px;
    display: inline-block;
}

.hana_bouble {
    background-image: url(../img/job/hana_2.jpg) !important;
}

.col_3hana .number_hana {
    color: #00a0e2;
}

.hana_bouble .number_hana {
    color: #43b087 !important;
}

.number_hana {
    font-size: 5.625rem;
    padding-left: 5px;
    padding-right: 5px;
}

.text_number_hana {
    line-height: 1;
    margin-top: 5px;
    margin-bottom: 40px;
    display: flex;
    justify-content: center;
    align-items: center;
    position: relative;
}
.text_number_hana .year {
    position: absolute;
    left: 10%;
    top: -5px;
}

.col_3hana .row_center {
    position: relative;
    margin-top: -35px;
    display: flex;
}

.col_3hana .row_center .col_right {
    width: 60%;
    padding-left: 20px;
}

.col_3hana .row_center .col_left {
    padding-left: 50px;
    width: 40%;
}

.col_3hana .fs16 {
    font-size: 1rem !important;
    line-height: 1.75;
}

.col_3hana .col_left .number_hana {
    font-size: 3.938rem;
}

.col_3hana .col_right .number_hana {
    font-size: 3.938rem;
}

.row_cont {
    width: 100%;
    background-color: #ffffff;
    margin-top: 20px;
    display: flex;
    flex-wrap: wrap;
}
.row_cont .cont {
    width: 50%;
    padding: 120px 150px;
    position: relative;
}
.row_cont .cont .icon {
    position: absolute;
    left: 0;
    top: 0;
}
.row_cont .cont .icon img {
    width: 115px;
}
.row_cont .cont .ttl {
    font-family: 'Noto Serif JP', serif;
    border-bottom: 1px solid #333333;
    color: #00a0e2;
    font-size: 29px;
    font-weight: 700;
    line-height: 1.4;
    margin-bottom: 15px;
    padding-bottom: 10px;
}

.row_cont .img {
    width: 50%;
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
}
.row_cont:first-child .img {
    background-image: url(../img/job/item_4.jpg);
}
.row_cont:last-child .img {
    background-image: url(../img/job/item_5.jpg);
}

.job_contact {
    margin-bottom: 5.990vw;
}

.job_contact_inner {
    position: relative;
    max-width: 787px;
    margin: 0 auto;
}

.job_contact_inner::after {
    content: '';
    position: absolute;
    width: 787px;
    height: 787px;
    top: 50%;
    left: 50%;
    border-radius: 999px;
    border: 1px solid #333333;
    transform: translate(-50%, -50%);
}

.job_contact {
    max-height: 602px;
    /*
    background-image: url(../img/job/bg_rs.svg);
    background-size: cover;
    */
    background-color: #e9f2f5;
    overflow: hidden;
}

.job_contact_hana {
    position: relative;
}

.job_contact_hana::after {
    position: absolute;
    z-index: 3;
    content: '';
    width: 1206px;
    height: 424px;
    left: 20.62%;
    top: 50%;
    transform: translateY(-50%);
    background-image: url(../img/job/hana_fn.svg);
    background-size: cover;
}

.job_contact_inner {
    color: #333333;
    text-align: center;
    padding-top: 170px;
    padding-bottom: 165px;
}

.job_contact_text {
    margin-bottom: 40px;
    line-height: 1.35;
}

.job_contact_inner__tool {
    position: relative;
    z-index: 5;
}

.job_contact_tel {
    margin-bottom: 2px;
}

.voices {
    background-image: url(../img/job/bg_pdf.jpg);
    background-size: cover;
    padding-top: 8.8vw;
    padding-bottom: 7.292vw;
    margin-bottom: 6.771vw;
}

.containe_1530 {
    max-width: 1530px;
    padding: 10px 7.5px 0;
    margin: 0 auto;
}

.containe_1530 .row {
    justify-content: space-between;
}

.col_voice {
    width: 50%;
    max-width: 663px;
    padding: 0 7.5px;
}

.col_voice .item_voice_content {
    position: relative;
    margin-top: 30px;
    border-top: 1px solid #333333;
    border-left: 1px solid #333333;
    padding: 45px 0 0 50px;
}
.voice .item_voice_content {
    text-align: center;
}
.voice .item_voice_content p {
    margin-bottom: 60px;
}

.col_voice .item_voice_content::before {
    content: '';
    position: absolute;
    left: -2px;
    top: 0;
    width: 3px;
    height: 62px;
    background-color: #333333;
}

.col_voice .item_voice_content::after {
    content: '';
    position: absolute;
    top: -2px;
    left: 0;
    width: 140px;
    height: 3px;
    background-color: #333333;
    z-index: 1;
}

.col_voice .item_voice_content p {
    margin-bottom: 17px;
}

.item_voice_content_tag {
    display: inline-block;
    border: 1px solid #333333;
    padding: 10px 13px;
    margin-right: 20px;
}
.max_510 {
    max-width: 510px;
}

.item_voice_link_icon {
    text-align: right;
}

.item_voice_link {
    position: relative;
    background-image: url(../img/job/bg_link.svg);
    background-size: cover;
    display: inline-block;
    width: 70px;
    height: 70px;
    margin-top: -30px;
}

.item_voice_link img {
    position: absolute;
    width: 32px;
    height: 8px;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}

.max_430{
    max-width: 430px;
}

.voice_cont {
    width: calc(100% - 30px);
    max-width: 1490px;
    margin: 100px auto 0;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}
.voice_cont.cont02 {
    flex-flow: row-reverse;
}
.voice_cont .img {
    width: calc(100% - 482px);
}
.voice_cont .cont {
    width: 405px;
}
.voice_cont dl:not(:first-child) {
    margin-top: 30px;
}
.voice_cont dl dt {
    font-family: 'Noto Serif JP', serif;
    color: #54bf4c;
    font-size: 20px;
    font-weight: 700;
    margin-bottom: 5px;
}

@media screen and (max-width:1600px) {
    .job_contact_hana::after {
        left: 10.62%;
    }

}

@media screen and (max-width:1500px) {
    .banner_page .banner__ap {
        position: absolute;
        top: 60px;
    }

    .content_banner_job {
        margin-top: 50px;
    }

    .row_cont .cont {
        padding: 150px 40px 60px;
    }
}

@media screen and (max-width:1400px) {
    .job_contact_hana::after {
        width: 90vw;
        left: 50%;
        transform: translate(-50%, -50%);
        background-size: contain;
        background-repeat: no-repeat;
    }

    .number_hana {
        font-size: 3.625rem;
    }

    .col_3hana .col_left .number_hana {
        font-size: 1.938rem;
    }

    .col_3hana .col_right .number_hana {
        font-size: 1.938rem;
    }

    .col_3hana .row_center .col_left {
        padding-left: 30px;
    }
}

@media screen and (max-width:1300px) {
    .content_banner_job h2 {
        font-size: 2.5rem;
        margin-bottom: 25px;
    }

    .job_content {
        padding-left: 45px;
    }

    .job_features .job_content_text_title {
        padding: 35px 35px 20px 35px !important;
    }

    .content_banner_mg_left {
        position: relative;
        margin-left: -1.6rem;
    }

    .content_banner_job::before {
        top: 0.8rem;
    }

    .content_banner_job p {
        line-height: 1.8;
    }
}

@media screen and (max-width:1210px) {
    .br_show_4 {
        display: block;
    }

    .job_content {
        margin-top: 35px;
        padding-bottom: 15px;
    }

    .job_features .job_content_title_text {
        font-size: 1.4rem;
    }

    .col_3hana .row_center .col_left {
        padding-left: 0px;
    }

    .text_number_hana {
        font-size: 1.4rem;
    }

    .item_voice .fs22 {
        font-size: 1.25rem;
    }

    .max_510 {
        max-width: 470px;
    }

    .banner_page .banner__ap {
        left: 50px;
    }

    .content_banner_job {
        margin-top: 10px;
    }

    .voice_cont .img,
    .voice_cont .cont {
        width: 48%;
    }
}

@media screen and (max-width:999px) {
    .container_1532 .row {
        justify-content: center;
    }

    .col_3hana {
        width: calc(50% - 32px);
    }

    .col_2x {
        width: 100%;
    }

    .col_2x:first-child img {
        width: 100%;
    }

    .br_show_4 {
        display: none;
    }

    .slider_2 {
        transform: translateX(0px);
    }
    .swiper-slide {
        margin-right: 0 !important;
        padding-bottom: 0;
    }
    .swiper-slide-active {
        margin: 0 !important;
        -webkit-transform: scale(0.9);
        transform: scale(0.9);
    }


    .job_section_title .job_section_text {
        background-size: 200px auto;
        background-position: center 50px;
        padding-bottom: 65px;
    }

    .container_full .row {
        margin-bottom: 40px;
    }

    .job_img_text_content {
        margin-top: 65px;
        margin-bottom: 65px;
    }

    .job_features {
        padding-top: 65px;
    }

    .col_2x {
        width: 100%;
    }

    .job_content_img img {
        width: 100%;
    }

    .job_content_text_tag {
        max-width: none;
    }

    .job_features .job_content_title_text {
        font-size: 1.875rem;
    }

    .job_content_text_tag--left .job_content_img {
        order: 2;
    }

    .job_content_text_tag--left .job_content_text_tag {
        order: 1;
    }

    .job_section_title .fs35 {
        font-size: 1.8rem;
    }

    .job_img_text_content_col {
        padding-top: 35px;
    }

    .item_voice_link {
        width: 60px;
        height: 60px;
    }

    .col_voice .item_voice_content {
        padding: 15px 0 0 25px;
    }

    .content_banner_job {
        padding-left: 40px;
        margin-left: 30px;
    }

    .banner_page .min_hight_ip {
        min-height: 600px;
        object-fit: cover;
    }

    .banner_page .banner__ap {
        left: 00px;
    }

    .item_voice_content_text {
        display: inline-block;
        width: 100%;
        padding: 10px 13px;
    }
}

@media screen and (max-width:850px) {
    .containe_1530 .row {
        justify-content: center;
    }

    .col_voice {
        width: 100%;
        margin-bottom: 30px;
    }

    .col_voice .item_voice_content {
        padding: 15px 15px 0 25px;
    }

    .item_voice_link {
        margin-top: -10px;
    }

    .col_voice .item_voice_content {
        padding: 15px 15px 0 10px;
    }
}

@media screen and (max-width:817px) {
    .job_contact_inner {
        padding-left: 15px;
        padding-right: 15px;
    }

}

@media screen and (max-width:767px) {
    .content_banner_job {
        margin-top: 35px;
        margin-left: 13px;
        margin-right: 13px;
    }

    .content_banner_job {
        padding-left: 0;
    }
    .content_banner_job::before {
        content: none;
    }

    .content_banner_job p{
        font-size: 16px;
    }
    .content_banner_job p br {
        display: none;
    }

    .row_cont .cont {
        width: 100%;
        padding: 100px 15px 30px;
    }
    .row_cont .cont .icon img {
        width: 80px;
    }
    .row_cont .cont .ttl {
        font-size: 24px;
    }
    .row_cont .img {
        width: 100%;
        height: 300px;
    }

    .voice .item_voice_content {
        padding: 0 15px;
        text-align: left;
    }
    .voice .item_voice_content p {
        margin-bottom: 20px;
    }
    .voice .item_voice_content p br {
        display: none;
    }
    .voice .item_voice_content_tag {
        margin-right: 0;
    }
    .voice .item_voice_content_text {
        display: inline-block;
        width: 100%;
        margin-top: 10px;
    }
    .voice_cont {
        margin-top: 40px;
    }
    .voice_cont.cont02 {
        margin-top: 40px;
        flex-flow: wrap;
    }
    .voice_cont .img,
    .voice_cont .cont {
        width: 100%;
    }
    .voice_cont .cont {
        margin-top: 30px;
    }
    .voice_cont dl dt {
        font-size: 18px;
    }

    .container_full .row {
        margin-bottom: 20px;
    }

    .job_features .job_content_text {
        min-height: 1px;
    }
    .job_features .job_content_text_title {
        min-height: 1px;
        padding-bottom: 40px !important;
    }

}
@media screen and (max-width: 640px) {
    .content_banner_job h2 {
        font-size: 6vw;
        text-align: center;
    }
    .content_banner_mg_left{
        margin-left: -3.6vw;
    }
    .tag_content span {
        padding-top: 2px;
        padding-bottom: 2px;
    }
    .job_content {
        margin-top: 25px;
    }    
    .top-recruit .content_right .title_right {
        margin: 0 auto 0;
    }

    .swiper-slide {
        width: 100% !important;
    }
    .top-works .btn_link_black {
        margin-top: 40px;
    }

}
@media screen and (max-width:600px) {
    .col_3hana {
        width: calc(100% - 32px);
    }
}

@media screen and (max-width:560px) {
    .br_show_4 {
        display: block;
    }

    .job_content {
        padding-left: 15px;
    }

    .job_features .job_content_tag {
        width: 100px;
        height: 103px;
        background-size: contain;
    }

    .job_content_tag_postion .fs17 {
        font-size: 1rem;
    }

    .job_features .job_content_text_tag--left .job_content_tag {
        right: -15px;
    }

    .job_features .job_content_tag {
        left: -15px;
    }

    .job_features .job_content_text {
        margin-left: 15px;
    }

    .job_features .job_content_text_tag--left .job_content_text {
        margin-right: 15px;
    }

    .job_features .job_content_text_title {
        padding: 25px 15px 35px 15px !important;
        margin-left: 10px;
    }

    .job_features .job_content_text_tag--left .job_content_text_title {
        margin-right: 10px !important;
    }

    .job_features .job_content_text_tag--left .job_content_text_title {
        margin-left: -55px !important;
    }
}

@media screen and (max-width:440px) {
    .job_features .job_content_title_text {
        font-size: 1.4rem;
    }
    .banner_page .min_hight_ip {
        min-height: 560px;
    }

    .container_full .row {
        margin-bottom: 10px;
    }
}

@media screen and (max-width:374px) {
    .job_contact_tel img {
        width: 290px;
    }

    .job_contact_text {
        font-size: 1.8rem;
    }
    .job_features .job_content_title_text{
        font-size: 1.27rem;
    }
    .item_voice .fs22 {
        font-size: 1.125rem;
    }
}

@media screen and (max-width:340px) {
    .job_features .job_content_title_text{
        font-size: 1.23rem;
    }
    .job_content_text {
        letter-spacing: -0.8px;
    }

    .job_content {
        padding-left: 10px;
    }
}

/* css double */

.banner{
	background-position: center center;
	background-repeat: no-repeat;
	background-size: cover;
	width: 100%;
	height: 444px;
}
.banner__title-text--ja{
	font-weight: 700;
	font-size: 35px;
	line-height: 0.7;
	color: #fff;
}
.banner__title-text--en{
	font-size: 16px;
	padding-left: 70px;
}
.banner__title-text-company{
	width: 21.9375em;
	height: 4.6875em;
}
.banner__title-text-works{
	width: 15.0625em;
	height: 3.8125em;
}
.banner__title-text-business{
	width: 30.125em;
	height: 3.75em;
}
.banner__title{
	display: flex;
	align-items: center;
	flex-wrap: wrap;
}
.banner__inner{
	max-width: 1606px;
	width: 100%;
	margin-left: auto;
	margin-right: auto;
	padding-left: 15px;
	padding-right: 15px;
	height: 100%;
	display: flex;
	align-items: center;
}
.title-text--ja{
	font-size: 30px;
	line-height: 1;
	font-weight: 700;
	display: flex;
	align-items: center;
}
.title-text--ja:after{
	content: '';
	width: 163px;
	height: 1px;
	background-color:#54BF4C;
	display: block;
	margin-left: 34px;
	margin-right: 30px;
}
.title-text--en{
	color: #54BF4C;
	font-weight: 700;
	font-size: 24px;
	line-height: 1;
}
.title-lv1{
	display: flex;
	align-items: center;
}
.text-block-big{
	font-size: 28px;
	font-weight: 700;
	line-height: 1;
}
.text-block__text{
	font-size: 16px;
	font-weight: 500;
	line-height: 1.5;
	text-align: justify;
}
.content-with-img__inner{
	max-width: 1530px;
	width: 100%;
	margin-left: auto;
	margin-right: auto;
	padding-left: 15px;
	padding-right: 15px;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
.content-with-title__inner{
	max-width: 1530px;
	width: 100%;
	margin-left: auto;
	margin-right: auto;
	padding-left: 15px;
	padding-right: 15px;
	display: flex;
	align-items: center;
	gap: 13.13%;
}
.text-signature{
	font-size: 20px;
	font-weight: 500;
	line-height: 1;
	text-align: right;
	padding-top: 48px;
}
.content-with-img__right{
	width: 531px;
}
.content-with-img__left{
    width: 100%;
	max-width: 867px;
    max-width: 1500px;
	padding-top: 20px;
}
.content-with-img-greeting .content-with-img__left{
	width: calc(100% - 640px);
}
.content-with-img__left.commendation_cont {
    width: calc(100% - 30px);
    max-width: 1500px;
    margin: 0 auto;
}
.gr-paragraph-with-img {
    padding: 0 15px;
}
.text-block-big--greeting{
	padding-top: 40px;
	padding-bottom: 30px;
}
.content-with-img-greeting{
	padding-top: 176px;
}
.content-with-title{
	width: 100%;
	height: 736px;
	background-repeat: no-repeat;
	background-size: cover;
	background-position: right bottom;
	display: flex;
	align-items: center;
	margin-top: 135px;
}
.title-lv1--white .title-text--ja{
	color: #fff;
}
.title-lv1--white .title-text--en{
	color: #fff;
}
.title-lv1--white .title-text--ja:after{
	background-color: #fff;
}
.text-block__text--white{
	color: #fff;
}
.content-with-title__left{
	width: calc(100% - 611px);
	max-width: 515px;
}
.content-with-title__right{
	width: 611px;
	position: relative;
}
.content-with-title__left-title{
	padding-bottom: 39px;
}
.text-cover{
	margin-left: -8px;
}
.text-block__creed{
	font-size: 43px;
	font-weight: 700;
	line-height: 1.3;
	color: #fff;
	width: 175px;
	position: absolute;
	left: 50%;
	top: 50%;
	transform: translate(-50%,-36%);
    font-family: 'Noto Serif JP', serif;
}
.content-table__inner{
	max-width: 1530px;
	width: 100%;
	margin-left: auto;
	margin-right: auto;
	padding-left: 15px;
	padding-right: 15px;
}
.table-global tr td{
	vertical-align: middle;
	padding-top: 19px;
	padding-bottom: 17px;
}
.table-global tr td:first-child{
	font-size: 16px;
	font-weight: 700;
	line-height: 1;
	width: 237px;
	padding-left: 3px;
	border-bottom: 1px solid #54BF4C;
}
.table-global tr td:last-child{
	font-size: 16px;
	font-weight: 500;
	line-height: 1.5;
	width: calc(100% - 237px);
	padding-left: 30px;
	border-bottom: 1px solid #E2E2E2;
	padding-right: 15px;
}
.content-table__table{
	max-width: 1045px;
	width: 100%;
	margin-left: auto;
	margin-right: auto;
	padding-top: 76px;
	margin-bottom: 117px;
}
.commendation_cont .content-table__table {
    max-width: 100%;
}

.table-global table{
	width: 100%;
}
.content-with-table{
	padding-top: 170px;
}

.commendation_cont ul {
    width: 100%;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}
.commendation_cont ul li {
    width: 24%;
    max-width: 340px;
}
.commendation_cont ul li .txt {
    text-align: center;
    line-height: 1.2;
    margin-top: 10px;
}

.list-content{
	display: flex;
	flex-wrap: wrap;
	max-width: 596px;
	column-gap: 17px;
}
.title-lv2{
	font-size: 24px;
	font-weight: 700;
	line-height: 1.4;
	position: relative;
	padding-left: 22px;
}
.title-lv2:before{
	content: '';
	width: 4px;
	height: 25px;
	display: block;
	background-color: #54BF4C;
	position: absolute;
	top: 5px;
	left: 0;
}
.paragraph-with-img__box-title-logo{
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	padding-bottom: 69px;
}
.paragraph-with-img__box-logo{
	display: flex;
	flex-wrap: wrap;
	column-gap: 45px;
	align-items: center;
    margin-left: 6vw;
}
.paragraph-with-img__box{
	border: 1px solid #E2E2E2;
	display: flex;
	flex-wrap: wrap;
}
.paragraph-with-img__box-left,.paragraph-with-img__box-right{
	width: 50%;
}
.paragraph-with-img__box-left{
	padding-right: 52px;
	padding-left: 76px;
}
.paragraph-with-img__box-left--logo{
	padding-top: 66px;
}
.text-block__text--paragraph-with-img{
	padding-right: 26px;
}
.paragraph-with-img__box-title{
	padding-bottom: 28px;
}
.paragraph-with-img__box--center{
	align-items: center;
}
.paragraph-with-img__box+.paragraph-with-img__box{
	margin-top: 34px;
}
.list--images{
	display: flex;
	flex-wrap: wrap;
}
.list--images__item{
	width: 50%;
}
.gr-images__overview{
	display: flex;
	flex-wrap: wrap;
	align-items: flex-start;
}
.image__item{
	width: 50%;
}
.gr-images{
	padding-top: 188px;
}
.footer__inner{
	max-width: 817px;
	width: 100%;
	margin-left: auto;
	margin-right: auto;
}
.footer{
	background-size: cover;
	background-repeat: no-repeat;
	background-position: center center;
	height: 757px;
	padding-top: 120px;
}
.footer--company{
	margin-top: 120px;
}
.footer__name-company{
	font-size: 24px;
	font-weight: 700;
	line-height: 1;
	color: #fff;
	padding-top: 23px;
}
.footer__logo{
	display: inline-block;
	text-align: center;
}
.gr-footer__logo{
	text-align: center;
}
.btn-phone{
	font-size: 35px;
	font-weight: 700;
	line-height: 1;
}
.btn__i-contact{
	font-size: 16px;
	font-weight: 700;
	line-height: 1;
	color: #fff;
    padding-top: 5px;
}
.btn-link{
	display: flex;
	justify-content: center;
	align-items: center;
	height: 121px;
	width: 50%;
	background-color: #fff;
	flex-wrap: wrap;
}
.btn-contact{
	background-color: #333333;
}
.btn__i-phone:before{
	content: url(../img/common/icon-phone.png);
	position: relative;
	transform: translateY(1px);
	display: block;
	padding-right: 6px;
}
.btn__i-contact:before{
	content: url(../img/common/icon-contact.png);
	display: block;
	position: relative;
	transform: translateY(-1px);
	padding-right: 17px;
}
.btn__i{
	display: flex;
	width: 100%;
	justify-content: center;
}
.tel_txt {
    font-size: 12px;
    line-height: 1.6;
    margin-top: 5px;
}
.tel_txt br {
    display: none;
}
.footer__btn-link{
	display: flex;
	flex-wrap: wrap;
	padding-top: 67px;
}
.text-block__footer{
	font-size: 16px;
	font-weight: 500;
	line-height: 1.6;
	color: #fff;
}
.gr-address{
	display: flex;
	flex-wrap: wrap;
	padding-left: 23px;
	padding-right: 23px;
	justify-content: space-between;
	padding-top: 46px;
}
.text-block__copyright{
	font-size: 12px;
	font-weight: 500;
	letter-spacing: 0.4px;
	line-height: 2.2;
	color: #fff;
	text-align: center;
	padding-top: 72px;
}
.sec-sp{
	display: none;
}
.works__inner{
	max-width: 1530px;
	width: 100%;
	margin-left: auto;
	margin-right: auto;
	padding-left: 15px;
	padding-right: 15px;
}
.img-works-list{
	display: flex;
	flex-wrap: wrap;
	gap: 40px;
    justify-content: space-between;
}
.img-works-item{
    width: 32%;
    max-width: 420px;
}
.img-works-item .box_ttl{
    height: 56px;
    line-height: 1.25;
    display: flex;
    align-items: center;
}
.img-works-item .period{
    width: 200px;
    height: 32px;
    border: 1px solid #333333;
    line-height: 18px;
    padding: 5px 15px;
}
.img-works-item dl{
    margin-top: 10px;
    display: flex;
    flex-wrap: wrap;
}
.img-works-item dl dt{
    width: 48px;
    height: 32px;
}
.img-works-item dl dt .ttl{
    width: 100%;
    height: 100%;
    background-color: #333333;
    color: #ffffff;
    font-size: 12px;
    text-align: center;
    line-height: 2.4;
}
.img-works-item dl dd{
    width: calc(100% - 48px);
    line-height: 1.25;
    padding-left: 10px;
    display: flex;
    align-items: center;
}
.gr-img-works{
	padding-top: 130px;
	padding-bottom: 270px;
}
.title__lv3{
	font-size: 30px;
	font-weight: 700;
	color: #fff;
	line-height: 1;
	display: flex;
	justify-content: center;
	align-items: center;
	max-width: 556px;
	width: 100%;
	margin-left: auto;
	margin-right: auto;
	height: 172px;
	position: relative;
}
.title__lv3--primary{
	background-color: #54BF4C;
}
.title__lv3--blue{
	background-color: #3F9DDB;
}
.title__lv3--red{
	background-color: #FF6565;
}
.title__lv3:before{
	content: url(../img/business/pic3.png);
	position: absolute;
	top: 0;
	left: 0;
}
.businees__inner{
	max-width: 1530px;
	width: 100%;
	margin-left: auto;
	margin-right: auto;
	padding-left: 15px;
	padding-right: 15px;
}
.flow-with-img{
	display: flex;
	flex-wrap: wrap;
	align-items: flex-start;
	justify-content: space-between;
}
.title__lv4{
	font-size: 30px;
	font-weight: 700;
	line-height: 1;
	position: relative;
	padding-bottom: 19px;
}
.title__lv4:before{
	content: '';
	position: absolute;
	bottom: 0;
	left: 0;
	width: 27px;
	height: 1px;
	background-color: #54BF4C;
	z-index: 2;
}
.title__lv4--blue:before{
	background-color: #3F9DDB;
}
.title__lv4--red:before{
	background-color: #FF6161;
}
.title__lv4:after{
	content: '';
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 1px;
	background-color: #E2E2E2;
}
.flow-with-img__primary{
	padding-top: 27px;
	padding-bottom: 44px;
}
.flow-box{
	height: 301px;
	width: 100%;
	border: 3px solid #A8E8A3;
	max-width: 546px;
}
.flow-box--blue{
	border-color: #abe7ff;
}
.flow-box--red{
	border-color: #FFC7C7;
}
.flow-box__title{
	font-size: 18px;
	font-weight: 700;
	line-height: 1;
	display: flex;
	justify-content: center;
	align-items: center;
	max-width: 258px;
	width: 100%;
	height: 58px;
	margin-left: auto;
	margin-right: auto;
}
.flow-box__title--primary{
	background-color: #A8E8A3;
}
.flow-box__title--blue{
	background-color: #ABE7FF;
}
.flow-box__title--red{
	background-color: #FFC7C7;
}
.list-flow{
	display: flex;
	flex-wrap: wrap;
	padding-top: 18px;
	padding-left: 19px;
	padding-right: 11px;
	justify-content: space-between;
}
.flow-with-img-4 .list-flow {
    justify-content: center;
}

.list-flow__item{
	position: relative;
	height: 211px;
}
.list-flow__item img{
	height: 100%;
	width: auto;
}
.list-flow-text{
	font-size: 18px;
	font-weight: 700;
	line-height: 1.2;
	writing-mode: vertical-lr;
	position: absolute;
	top: 0;
	height: 100%;
	display: flex;
	justify-content: center;
	left: 20px;
}
.list-flow__item--in{
	margin-left: -5px;
}
.flow-with-img__right{
	width: calc(100% - 547px);
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	position: relative;
	max-width: 889px;
}
.flow-with-img__right:before{
	content: url(../img/business/pic13.png);
	position: absolute;
	bottom: -3px;
	left: 50%;
	transform: translateX(-50%);
}
.flow-with-img__left{
	width: 547px;
}
.flow-with-img__right-item{
	width: calc(50% - 10px);
}
.flow-with-img__right-item img{
	border: 1px solid #E2E2E2;
}
.flow-with-img__right-text{
	font-size: 23px;
	font-weight: 700;
	line-height: 1;
	text-align: center;
	padding-top: 22px;
}
.text-block__text--f{
	max-width: 507px;
}
.title__lv3--businees{
	margin-bottom: 90px;
}
.gr-business{
	padding-top: 174px;
	padding-bottom: 245px;
}
.flow-with-img+.flow-with-img{
	padding-top: 111px;
}
.flow-with-img-5 .list-flow__item{
	height: 210px;
}
.flow-with-img-5 .list-flow-text{
	left: 30px;
}
.list-flow-text--col2{
	transform: translateX(-13px);
}
.flow-box--blue-mgt{
	margin-top: 33px;
}
.businees__item--ntn2{
	padding-top: 216px;
}
.flow-with-img-7 .list-flow-text{
	left: 10px;
}
.text-block__text--ther{
	max-width: 529px;
}
.text-block__text--fir{
	max-width: 526px;
}
.businees__item--ntn3{
	padding-top: 242px;
}
.flow-with-img__right-no-arrow:before{
	content: none;
}
.flow-with-img__right.vertical {
    display: block;
}
.flow-with-img__right.vertical .flow-with-img__right-item {
    width: auto;
    text-align: center;
    margin: 5px 0;
}

@media screen and (min-width:768px){
	.banner__title-text--ja{
		writing-mode: tb-rl;
	}
}
@media screen and (min-width:571px){
	.list-flow__item-f--sp{
		display: none;
	}
}
@media screen and (max-width:1500px){
	.banner{
		height: 29.600vw;
		min-height: 220px;
	}
	.banner__title-text--en{
		padding-left: 4.667vw;
	}
	.content-with-title{
		height: 49.067vw;
		min-height: 690px;
	}
	.paragraph-with-img__box-left {
		padding-right: 3.467vw;
		padding-left: 5.067vw;
	}
	.paragraph-with-img__box-logo .paragraph-with-img__box-logo-item:first-child{
		width: 10.733vw;
	}
	.paragraph-with-img__box-logo .paragraph-with-img__box-logo-item:last-child{
		width: 10vw;
	}
	.paragraph-with-img__box-logo{
		column-gap: 1.667vw;
	}
	.paragraph-with-img__box-title-logo{
		padding-bottom: 4.600vw;
	}
	.paragraph-with-img__box-left--logo{
		padding-top: 4.400vw;
	}
	.text-block__text--paragraph-with-img{
		padding-right: 1.733vw;
	}
	.footer {
		height: 50.467vw;
		padding-top: 5vw;
	}
	.footer__btn-link{
		padding-top: 4.467vw;
	}
	.gr-address{
		padding-top: 3.067vw;
	}
	.text-block__copyright{
		padding-top: 4.800vw;
	}
	.flow-with-img__left{
		width: 38.2%;
	}
	.flow-with-img__right{
		width: 60.4%;
		max-width: 100%;
	}
	.list-flow__item{
		height: 14.067vw;
	}
	.flow-with-img-5  .list-flow__item{
		height: 13.867vw;
	}
	.list-flow-text{
		font-size: 1.200vw;
		left: 1.533vw;
	}
	.flow-with-img-5 .list-flow-text{
		left: 2vw;
	}
	.flow-with-img__primary {
		padding-top: 1.800vw;
		padding-bottom: 2.933vw;
	}
	.flow-box--blue-mgt{
		margin-top: 2.200vw;
	}
	.flow-box{
		height: auto;
		padding-bottom: 20px;
	}
	.flow-box__title{
		height: 3.867vw;
	}
	.title__lv3{
		height: 11.467vw;
		min-height: 130px;
	}
	.flow-with-img__right-text{
		font-size: 1.533vw;
	}
	.flow-with-img-7 .list-flow-text{
		left: 0.667vw;
	}
}
@media screen and (max-width:1400px){
	.img-works-list{
		gap: 0;
		row-gap: 30px;
	}
    .content-with-img-greeting .content-with-img__left{
		width: 55%;
	}
    .content-with-img__right {
        width: 40%;
    }
}
@media screen and (max-width:1300px){
	.text-block-big{
		font-size: 2vw;
	}
	.text-block-big--greeting {
		padding-top: 3.077vw;
		padding-bottom: 2.308vw;
	}
	.text-signature{
		padding-top: 3.692vw;
	}
	.content-with-title__inner{
		gap: 0;
		justify-content: space-between;
	}
	.flow-with-img__left {
		width: 42.2%;
	}
	.flow-with-img__right {
		width: 56.4%;
		padding-top: 49px;
	}
	.list-flow__item {
		height: 15.567vw;
	}
	.list-flow-text {
		font-size: 1.400vw;
	}
	.flow-with-img-5 .list-flow__item {
		height: 15.567vw;
	}
}
@media screen and (max-width:1200px){
	.banner__title-text--en{
		font-size: 15px;
	}
	.content-with-img__right{
		width: 45%;
	}
	.content-with-img__left{
		width: 55%;
		padding-top: 1.667vw;
		padding-right: 3%;
	}
	.content-with-img-greeting{
		padding-top: 120px;
	}
	.content-with-title{
		margin-top: 120px;
	}
	.content-with-title__left{
		width: 55%;
		padding-right: 3%;
		max-width: 100%;
	}
	.content-with-title__right{
		width: 45%;
	}
	.text-block__creed{
		font-size: 3.583vw;
		width: 14.583vw;
	}
	.title-text--ja:after{
		width: 13.583vw;
	}
	.content-with-title{
		height: 50vw;
		min-height: auto;
	}
	.paragraph-with-img__box-logo .paragraph-with-img__box-logo-item:first-child{
		width: 9.733vw;
	}
	.paragraph-with-img__box-logo .paragraph-with-img__box-logo-item:last-child{
		width: 9vw;
	}
	.paragraph-with-img__box-title-logo {
		padding-bottom: 2.6vw;
	}
	.paragraph-with-img__box-left {
		padding-right: 2.467vw;
		padding-left: 4.067vw;
	}
	.gr-images{
		padding-top: 120px;
	}
	.footer {
		padding-top: 4vw;
		height: 52vw;
		min-height: 550px;
	}
	.footer__btn-link{
		padding-top: 3vw;
	}
	.gr-address{
		padding-top: 2.5vw;
	}
	.text-block__copyright{
		padding-top: 3vw;
	}
	.gr-img-works{
		padding-top: 120px;
		padding-bottom: 120px;
	}
	.gr-business{
		padding-top: 120px;
		padding-bottom: 120px;
	}
	.flow-with-img__right:before{
		content: url(../img/business/pic14.png);
	}
    .flow-with-img__right-no-arrow:before{
        content: '';
    }
	.businees__item+.businees__item{
		padding-top: 100px;
	}
}

@media screen and (max-width:992px){
	.banner__title-text--ja{
		font-size: 28px;
	}
	.banner__title-text--en{
		font-size: 14px;
		padding-left: 3.667vw;
	}
	.text-block__text{
		font-size: 15px;
	}
	.text-signature{
		font-size: 18px;
	}
	.title-text--ja{
		font-size: 22px;
	}
	.title-text--en{
		font-size: 20px;
	}
	.title-text--ja:after{
		width: 10.081vw;
		margin: 0 15px;
	}
	.text-block-big{
		font-size: 22px;
		line-height: 1.6;
	}
	.text-block-big--greeting {
		padding-top: 15px;
		padding-bottom: 15px;
	}
	.content-with-img-greeting{
		padding-top: 80px;
	}
	.content-with-title{
		margin-top: 80px;
	}
	.table-global tr td:first-child{
		width: 190px;
	}
	.table-global tr td:last-child{
		width: calc(100% - 190px);
		padding-left: 15px;
	}
	.content-with-table{
		padding-top: 80px;
	}
	.title-lv2{
		font-size: 19px;
	}
	.paragraph-with-img__box-left {
		padding-right: 2.467vw;
		padding-left: 2.467vw;
	}
	.content-table__table{
		margin-bottom: 80px;
	}
	.gr-images{
		padding-top: 80px;
	}
	.footer__inner{
		padding-left: 15px;
		padding-right: 15px;
	}
	.gr-address{
		padding-left: 0;
		padding-right: 0;
	}
	.footer--company{
		margin-top: 80px;
	}
	.img-works-list{
		row-gap: 15px;
	}
	.img-works-item{
		width: calc(96% / 3);
	}
	.gr-img-works{
		padding-top: 80px;
		padding-bottom: 80px;
	}
	.flow-with-img__left{
		width: 100%;
	}
	.flow-with-img__right{
		width: 100%;
		max-width: 889px;
		margin-left: auto;
		margin-right: auto;
	}
	.list-flow__item {
		height: 211px;
	}
	.flow-with-img-5 .list-flow__item {
		height: 211px;
	}
	.list-flow-text{
		font-size: 16px;
		left: 20px;
	}
	.flow-with-img-5 .list-flow-text{
		left: 30px;
	}
	.flow-box{
		margin-left: auto;
		margin-right: auto;
	}
	.flow-box__title{
		height: 50px;
	}
	.text-block__text-item-business{
		padding-top: 30px;
		padding-bottom: 30px;
	}
	.list-flow{
		padding-left: 10px;
		padding-right: 10px;
	}
	.title__lv3{
		font-size: 25px;
		max-width: 450px;
		height: 110px;
		min-height: auto;
		overflow: hidden;
	}
	.title__lv4{
		font-size: 22px;
	}
	.title__lv3:before{
		top: -5px;
		left: -5px;
	}
	.gr-business{
		padding-top: 80px;
		padding-bottom: 80px;
	}
	.title__lv3--businees{
		margin-bottom: 80px;
	}
	.flow-with-img__right-text {
		font-size: 20px;
		padding-top: 15px;
	}
	.flow-with-img+.flow-with-img{
		padding-top: 80px;
	}
	.flow-box--blue-mgt{
		margin-top: 0;
	}
	.flow-with-img-7 .list-flow-text{
		left: 10px;
	}
	.text-block__text--f{
		max-width: 100%;
	}
	.text-block__text--ther{
		max-width: 100%;
	}
	.text-block__text--fir{
		max-width: 100%;
	}
	.businees__item+.businees__item{
		padding-top: 80px;
	}
}
@media screen and (max-width:768px){
	.content-with-img__right,.content-with-img__left,
    .content-with-img-greeting .content-with-img__left{
		width: 100%;
	}
	.content-with-img__right{
		text-align: center;
	}
	.content-with-img__left{
		max-width: 100%;
		padding-right: 0;
		padding-bottom: 30px;
	}
	.content-with-img-greeting{
		padding-top: 50px;
	}
	.content-with-title__left{
		width: 100%;
		padding-right: 0;
	}
	.content-with-title__right{
		width: 100%;
		text-align: center;
		padding-top: 30px;
		max-width: 500px;
		margin-left: auto;
		margin-right: auto;
	}
	.text-block__creed{
		font-size: 35px;
		width: 150px;
		transform: translate(-50%,-22%);
	}
	.content-with-title__inner{
		flex-wrap: wrap;
	}
	.content-with-title{
		margin-top: 50px;
	}
	.content-with-title{
		height: auto;
		padding-top: 50px;
		padding-bottom: 50px;
	}
	.content-with-title__left-title{
		padding-bottom: 25px;
	}
	.content-with-table{
		padding-top: 50px;
	}
	.content-table__table{
		padding-top: 35px;
	}

    .commendation_cont ul li {
        width: 49%;
        margin-top: 20px;
    }

	.paragraph-with-img__box-left, .paragraph-with-img__box-right{
		width: 100%;
	}
	.paragraph-with-img__box-left{
		padding-bottom: 30px;
		padding-left: 0;
		padding-right: 0;
		padding-top: 0;
	}
	.paragraph-with-img__box{
		border: 0;
	}
	.paragraph-with-img__box-title-logo{
		justify-content: flex-start;
		gap: 30px;
	}
	.paragraph-with-img__box-logo .paragraph-with-img__box-logo-item:first-child{
		width: 100%;
		max-width: 100px;
	}
	.paragraph-with-img__box-logo .paragraph-with-img__box-logo-item:last-child{
		width: 100%;
		max-width: 90px;
	}
	.paragraph-with-img__box-logo{
		gap: 20px;
	}
	.paragraph-with-img__box-title-logo{
		padding-bottom: 20px;
	}
	.paragraph-with-img__box-title{
		padding-bottom: 20px;
	}
	.title-lv2{
		font-size: 18px;
		padding-left: 15px;
	}
	.title-lv2:before{
		top: 0;
	}
	.text-block__text--paragraph-with-img{
		padding-right: 0;
	}
	.content-table__table{
		margin-bottom: 50px;
	}
	.gr-images{
		padding-top: 50px;
	}
	.footer{
		padding-top: 50px;
		height: auto;
		padding-bottom: 30px;
	}
	.footer__name-company{
		font-size: 20px;
		padding-top: 15px;
	}
	.text-block__footer{
		font-size: 15px;
	}
	.btn-phone{
		font-size: 30px;
	}
	.btn__i-phone:before{
		transform: scale(0.9);
	}
	.btn__i-contact{
		font-size: 15px;
	}
	.btn__i-contact:before{
		transform: scale(0.9);
	}
	.btn-link{
		height: 110px;
	}
	.btn-phone.btn-link{
        height: auto;
        padding: 10px 0;
	}
    .tel_txt {
        margin-top: 0;
    }
    .tel_txt br {
        display: inline-block;
    }
	.text-block__copyright{
		padding-top: 25px;
	}
	.footer__btn-link{
		padding-top: 30px;
	}
	.gr-address{
		padding-top: 25px;
	}
	.footer--company{
		margin-top: 50px;
	}
	.gr-img-works{
		padding-top: 50px;
		padding-bottom: 50px;
	}
	.list-flow-text {
		left: 18px;
	}
	.flow-box__title{
		font-size: 17px;
	}
	.title__lv3{
		font-size: 22px;
		height: 90px;
		max-width: 400px;
	}
	.title__lv4{
		font-size: 20px;
		padding-bottom: 10px;
	}
	.gr-business{
		padding-top: 50px;
		padding-bottom: 50px;
	}
	.title__lv3--businees{
		margin-bottom: 50px;
	}
	.text-block__text-item-business{
		padding-top: 15px;
	}
	.flow-with-img+.flow-with-img{
		padding-top: 50px;
	}
	.flow-with-img__right-text{
		font-size: 18px;
	}
	.businees__item+.businees__item{
		padding-top: 50px;
	}
}
@media screen and (max-width:767px){
	.banner__title-text--ja{
		font-size: 24px;
	}
	.banner__title-text--en{
		font-size: 12px;
		padding-left: 0;
		padding-top: 15px;
	}
	.banner__title{
		flex-direction: column;
	}
	.banner__inner{
		justify-content: center;
	}
	.table-global tr td{
		width: 100% !important;
		float: left;
		padding-left: 15px !important;
		padding-right: 15px !important;
	}
	.table-global tr td:first-child{
		border-bottom: 0;
		padding-bottom: 0;
		padding-top: 15px;
	}
	.table-global tr td:last-child{
		padding-top: 10px;
		border-bottom: 1px solid #54BF4C;
		font-size: 15px;
		padding-bottom: 15px;
	}
	.list-content{
		max-width: 100%;
	}
	.image__item{
		width: 100%;
	}
	.gr-images__overview--bottom{
		flex-direction: column-reverse;
	}
	.img-works-item{
		width: calc(98% / 2);
	}
}
@media screen and (max-width:700px){
	.gr-address__item{
		width: 100%;
		text-align: center;
	}
	.gr-address__item+.gr-address__item{
		padding-top: 25px;
	}
	.gr-address{
		padding-top: 30px;
	}
}
@media screen and (max-width:640px){
	.banner__title-text--en{
		font-size: 10px;
	}
	.text-block-big{
		font-size: 20px;
	}
	.text-signature{
		font-size: 17px;
	}
	.table-global tr td{
		padding-left: 10px !important;
		padding-right: 10px !important;
	}
	.btn-link{
		width: 100%;
		max-width: 400px;
		margin-left: auto;
		margin-right: auto;
		height: 90px;
	}
	.title__lv3{
		font-size: 20px;
	}
	.title__lv4{
		font-size: 18px;
	}
}
@media screen and (max-width:570px){
	.list-flow__item-f--pc{
		display: none;
	}
	.list-flow__item{
		height: 37.018vw;
	}
	.list-flow-text{
		left: 0;
        font-size: 14px;
	}
	.list-flow__item{
		width: calc(100% / 7);
		height: 178px;
	}
	.flow-with-img-7 .list-flow__item{
		height: 197px;
	}
    .flow-with-img-6 .list-flow__item {
        width: calc(100% / 6);
        height: 197px;
    }
    .flow-with-img-5 .list-flow__item {
        width: calc(100% / 5);
        height: 197px;
    }
    .flow-with-img-4 .list-flow__item{
        width: calc((100% / 4));
		height: 197px;
        left: 3vw;
	}
	.list-flow{
		justify-content: center;
		max-width: 100%;
		margin-left: auto;
		margin-right: auto;
		row-gap: 30px;
	}
	.flow-with-img-7 .list-flow{
		max-width: 100%;
	}
	.flow-with-img-5 .list-flow{
		max-width: 100%;
	}
	.list-flow__item--in{
		margin-left: 0;
	}
	.flow-box{
		max-width: 100%;
	}
	.flow-with-img__right-item{
		width: 100%;
		text-align: center;
		max-width: 430px;
		margin-left: auto;
		margin-right: auto;
	}
	.flow-with-img__right:before{
		content: none;
	}
	.flow-with-img__right{
		row-gap: 30px;
	}
	.list-flow__item-img-l{
		object-fit: cover;
		width: 84px !important;
		object-position: right;
	}
	.list-flow-text--col2 {
		transform: translateX(-9px);
	}
	.flow-with-img-7 .list-flow-text{
		left: 0;
	}
	.flow-with-img-6 .list-flow-text{
		left: 2vw;
	}
	.flow-with-img-5 .list-flow-text{
		left: 3vw;
	}
	.flow-with-img-4 .list-flow-text{
		left: 4vw;
	}
}
@media screen and (max-width:500px){
	.text-block__creed{
		font-size: 7vw;
		width: 30vw;
	}
    .img-works-list {
        justify-content: center;
    }
    .img-works-item {
        width: 100%;
    }

    .commendation_cont ul {
        justify-content: center;
    }
    .commendation_cont ul li {
        width: 100%;
    }
}
@media screen and (max-width:400px){
	.paragraph-with-img__box-title-logo .title-lv2{
		width: 100%;
	}
	.paragraph-with-img__box-logo{
		width: 100%;
		justify-content: center;
        margin-left: 0;
	}
	.text-block__footer{
		font-size: 14px;
	}
	.sec-sp{
		display: block;
	}
}
@media screen and (max-width:390px){
	.flow-with-img-5 .list-flow__item{
		height: 52.403vw;
	}
	.list-flow__item-img-l{
		width: 21.026vw !important;
	}
	.list-flow-text--col2 {
		transform: translateX(-2.308vw);
	}
}
@media screen and (max-width:375px){
	.title-text--ja:after{
		margin: 0 8px;
		width: 8.081vw;
	}
	.title-text--ja{
		font-size: 20px;
	}
	.title-text--en{
		font-size: 18px;
	}
	.title-lv2{
		font-size: 17px;
	}
	.table-global tr td:last-child{
		font-size: 14px;
	}
	.list-flow-text{
		font-size: 15px;
	}
}
@media screen and (max-width:360px) {
    .text-block__footer {
        font-size: 13px !important;
        letter-spacing: -0.5px !important;
    }
}
@media screen and (max-width:340px){
	.list-flow__item{
		height: 62.059vw;
	}
	.flow-with-img-7 .list-flow__item{
		height: 56.875vw;
	}
}
.text-serif{
	font-family: 'Noto Serif JP', serif;
}