/*====トップページ====*/
/*ファーストビュー*/
.r-fv {
    position: relative;
    width: 100%;
    height: 48.5vw;
    max-height: 630px;
    background: linear-gradient(to bottom, transparent 0%, transparent 80%, #fff 100%), url(../images/recruit/top/rtop_main.jpg);
    background-position: center center;
    background-repeat: no-repeat;
    background-size: contain;
    text-align: center;
    display: flex;
    justify-content: center;
}
.r-fv_catch {
    position: absolute;
    top: 6%;
    /* left: 50%;
    transform: translateX(-50%); */
    display: flex;
    align-items: flex-end;
}
.r-fv h1 {
    display: inline;
    background: white;
    writing-mode: vertical-rl;
    -ms-writing-mode: tb-rl;
    -webkit-writing-mode: vertical-rl;
    margin: 0 0.3vw;
    padding: 1.6vw 10px;
    font-size: 2.7vw;
    white-space: nowrap;
}
.r-fv h1.catch2 {
    margin-bottom: -4vw;
}
.r-fv h1.catch2 span {
    color: #bc272d;
}
.r-top_wrap {
    display: flex;
    padding: 0 20px 30px;
    justify-content: space-around;
    overflow: hidden;
}
.r-top_wrap .btn_wrap {
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    text-align: center;
    width: 50%;
}
.r-top_wrap .btn_wrap .btn {
    margin-top: 15px;
    width: 100%;
}
.r-top_wrap .btn_wrap .btn.top {
    margin-left: -10%;
}
.r-top_wrap .btn_wrap .btn a {
    color: white;
    background: #006837;
    padding: 20px 30px;
    padding-left: 60px;
    font-size: 1.5vw;
    position: relative;
}
.r-top_wrap .btn_wrap .btn a::before {
    content: "";
    position: absolute;
    z-index: 30;
    top: 50%;
    left: 4%;
    transform: translateY(-50%);
    width: 5%;
    height: 1px;
    background: rgba(255,255,255, .7);
    transition: .3s;
}
.r-top_wrap .title-wrap {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
}
.r-top_wrap .title-wrap h1 {
    font-size: 5.6vw;
    line-height: 1.2;
    margin: 0;
    margin-bottom: 15px;
    text-align: right;
    white-space: nowrap;
}
.r-top_entitle {
    width: 71%;
    flex-shrink: 0;
}
.r-item_bg-wrap {
    padding: 24px 0;
    position: relative;
    overflow: hidden;
}
.r-item_bg {
    width: 80%;
}
.r-item_bg-wrap .title-wrap {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: center;
    position: absolute;
    top: 0;
    bottom: 0;
    padding: 24px 0;
}
.r-item_bg-wrap .title-wrap .en-title {
    height: 2.1vw;
    max-height: 27px;
    /* padding-left: 0.7vw; */
}
.r-item_bg-wrap .title-wrap h1 {
    font-size: 6.6vw;
    margin: 0;
    margin-bottom: 1vw;
}
.r-item_bg-wrap .title-wrap .btn a {
    color: white;
    font-size: 17px;
    padding: 1vw 5vw;
    transition: 0.3s;
}
/*トップメッセージ*/
.r-topmess {
    text-align: right;
}
.r-topmess .title-wrap {
    left: 15%
}
.r-topmess .title-wrap h1 {
    color: #004c72;
    margin-left: -1.7vw;
}
.r-topmess .title-wrap .btn a {
    background: #004c72;
    border: solid 2px #004c72;
}
.r-topmess .title-wrap .btn a:hover {
    color: #004c72;
    background: white;
}
/*仕事を知る*/
.r-work {
    text-align: left;
}
.r-work .title-wrap {
    right: 3%
}
.r-work .title-wrap h1 {
    color: #7c1313;
}
.r-work .title-wrap .btn a {
    background: #7c1313;
    border: solid 2px #7c1313;
}
.r-work .title-wrap .btn a:hover {
    color: #7c1313;
    background: white;
}
/*人を知る（社員紹介）*/
.r-people {
    /* text-align: center; */
    text-align: right;
}
.r-people .title-wrap {
    left: 15%;
    /* right: 13%; */
    /* justify-content: end;
    align-items: flex-end;
    margin-bottom: 3%; */
}
.r-people .title-wrap h1 {
    color: #f28e1e;
}
.r-people .title-wrap .btn a {
    background: #f28e1e;
    border: solid 2px #f28e1e;
}
.r-people .title-wrap .btn a:hover {
    color: #f28e1e;
    background: white;
}
/*会社を知る～研修について*/
.r-item_three-wrap {
    display: flex;
    padding: 15px 3vw ;
    justify-content: center;
}
.r-item_three-wrap a {
    flex: 1;
    margin: 10px;
}
.square_item {
    position: relative;
}
.square_item.type1 img {
    width: 100%;
}
.square_item.type1 .onText {
    position: absolute;
    top: 0;
    bottom: 0;
    right: 0;
    left: 0;
    width: 90%;
    height: 90%;
    margin: auto;
    background: rgba(34, 176, 115, 0.4);
    color: white;
    font-weight: bold;
    text-align: center;
    vertical-align: middle;
    transition: 0.2s;
}
.square_item.type1 .onText span {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    font-size: 2vw;
    white-space: nowrap;
}
.square_item.type1:hover img {
    filter:alpha(opacity=70);
    -moz-opacity: 0.7;
    opacity: 0.7; 
}
/* .square_item.type1:hover .onText {
    width: 100%;
    height: 100%;
} */
.square_item.type2 {
    display: flex;
    flex-direction: column;
    align-items: center;
    padding: 25px 20px 20px;
    border: solid 2px #666666;
}
.square_item.type2 img {
    width: 35%;
    flex-shrink: 0;
}
.square_item.type2 .text {
    font-size: 2vw;
    font-weight: bold;
    margin-top: 10px;
    position: relative;
}
.square_item.type2 .text p {
    margin: 0;
}
.square_item.type2 .arrow {
    position: absolute;
    top: 50%;
    transform: translateY(-46%);
    right: -3vw;
    width: 1.7vw;
}
/*採用トップエントリー*/
.r-entry {
    width: 100%;
    height: 60vw;
    max-height: 780px;
    margin-top: 8vw;
    margin-bottom: 6vw;
    text-align: center;
    position: relative;
}
.r-entry::after {
    content: "";
    position: absolute;
    z-index: -10;
    top: 0;
    right: 0;
    height: 100%;
    width: 82%;
    margin-left: auto;
    background-color: #006837;
}
.r-entry_bg {
    position: relative;
    width: 80%;
    margin: 0 auto;
    padding-top: 5vw;
    text-align: center;
}
.r-entry_bg .bg_img {
    width: 100%;    
}
.r-entry_bg .title-wrap {
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    padding-top: 5vw;
    box-sizing: border-box;
}
.r-entry_bg .title-wrap .en-title {
    width: 18vw;
    padding: 5vw;
    padding-bottom: 3vw;
}
.r-entry_bg .title-wrap h1 {
    color: white;
    font-size: 5vw;
    margin: 0;
    line-height: 1.3;
}
.r-entry .welcome_text {
    color: white;
    padding: 35px 0;
    margin: 0;
}
.r-entry .welcome_text br {
    display: none;
}
.r-entry .btn_wrap {
    display: flex;
    justify-content: center;
    padding-top: 80px;
}
.r-entry .btn_wrap .btn {
    margin: 0 10px;
}
.r-entry .btn_wrap .btn a {
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 1.2vw 14vw;
    position: relative;
}
/* .r-entry .btn span.jp {
    font-size: 13px;
    font-weight: normal;
} */
.r-entry .btn span.en {
    font-size: 30px;
}
.r-entry .btn_wrap .btn.orange a {
    /* font-size: 1.7vw;
    letter-spacing: 0.1em; */
    color: white;
    background: #EDA400;
}
.r-entry .btn_wrap .btn.white a {
    color: #EDA400;
    background-color: white;
}
.btn.white a::after {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 95%;
    height: 80%;
    border: solid 1px #EDA400;
    transition: .3s;
}
.btn.white a::before {
    content: "";
    position: absolute;
    z-index: 30;
    top: 50%;
    left: 0;
    transform: translateY(-50%);
    width: 15%;
    height: 1px;
    background: #EDA400;
    transition: .3s;
}

@media screen and (min-width: 1300px) {
    .r-fv h1 {
        font-size: 40px;
        padding: 20px 10px;
    }
    .r-top_wrap .title-wrap h1 {
        font-size: 85px;
    }
    .r-fv h1.catch2 {
        margin-bottom: -60px;
    }
    .r-top_wrap .btn_wrap .btn a {
        font-size: 22px;
    }
    .r-item_bg-wrap .title-wrap h1 {
        font-size: 87px;
    }
    .r-item_bg-wrap .title-wrap .en-title {
        height: 40px;
    }
    .r-item_bg-wrap .title-wrap .btn a {
        padding: 14px 67px;
    }
    .square_item.type1 .onText span, .square_item.type2 .text {
        font-size: 25px;
    }
    .square_item.type2 .arrow {
        width: 30px;
        right: -50px;
    }
    .r-entry_bg .title-wrap .en-title {
        width: 260px;
        padding: 52px;
    }
    
    .r-entry_bg .title-wrap h1 {
        font-size: 67px;
    }
    .r-entry .btn_wrap .btn a {
        padding: 15px 180px;
    }
}
@media screen and (max-width: 980px) {
    .r-top_wrap .btn_wrap .btn a {
        font-size: 1.8vw;
    }
    .r-entry {
        height: 64vw;
    }
    .r-entry .btn_wrap .btn a {
        padding: 1.2vw 12vw;
    }
    .r-entry .btn span.en {
        font-size: 3vw;
    }
}
@media screen and (max-width: 780px) {
    .r-fv {
        height: 90vw;
        background: linear-gradient(to bottom, transparent 0%, transparent 55%, #fff 100%), url(../images/recruit/top/rtop_main2.jpg);
        background-position: center center;
        background-repeat: no-repeat;
        background-size: 100%;
        z-index: -1;
    }
    .r-fv h1 {
        font-size: 4.5vw;
    }
    .r-top_wrap {
        flex-direction: column;
        align-items: center;
        margin-top: -10%;
        padding-bottom: 60px;
    }
    .r-top_wrap .btn_wrap {
        order: 1;
    }
    .r-top_wrap .btn_wrap .btn a {
        font-size: 14px;
    }
    .r-top_wrap .title-wrap {
        width: 60%;
        margin-left: auto;
    }
    .r-top_wrap .title-wrap h1 {
        font-size: 7.6vw;
    }
    .r-top_wrap .btn_wrap {
        flex-direction: initial;
        flex-direction: row;
        width: 100%;
        margin-top: 25px;
    }
    .r-top_wrap .btn_wrap .btn.top {
        margin-left: initial;
    }
    .r-item_bg {
        width: 100%;
    }
    .r-item_bg-wrap {
        padding: 0;
    }
    .r-topmess .title-wrap {
        left: 7%;
    }
    .r-people .title-wrap {
        left: 5%;
    }
    .r-item_bg-wrap .title-wrap h1 {
        font-size: 7.6vw;
    }
    .r-item_three-wrap {
        padding: 15px 0 0;
    }
    .square_item.type2 img {
        width: 50%;
    }
    .square_item.type1 .onText span, .square_item.type2 .text {
        font-size: 2.5vw;
    }
    .square_item.type2 .arrow {
        width: 2.7vw;
    }
    .r-entry {
        height: 68vw;
    }
    .r-entry::after {
        width: 85%;
    }
    .r-entry_bg {
        width: 85%;
    }
    .r-entry_bg .title-wrap .en-title {
        padding-top: 5vw;
    }
    .r-entry .welcome_text {
        font-size: 14px;
    }
    .r-entry .btn_wrap {
        padding-top: 60px;
    }
    .r-entry .btn_wrap .btn a {
        padding-bottom: 1.5vw;
    }
    .r-entry .btn span.en {
        line-height: 1;
    }
}
@media screen and (max-width: 650px) {
    .r-top_wrap .btn_wrap {
        justify-content: center;
    }
    .r-top_wrap .btn_wrap .btn {
        width: initial;
        width: auto;
        margin: 15px 15px 0;
    }
    .r-top_wrap .btn_wrap .btn.top {
        margin-left: 15px;
    }
    .r-top_wrap .btn_wrap .btn a {
        padding-left: 30px;
    }
    .r-top_wrap .btn_wrap .btn a span {
        display: block;
    }
    .r-top_wrap .btn_wrap .btn a::before {
        display: none;
    }
    .r-item_bg-wrap .title-wrap .btn a {
        font-size: 15px;
    }
    .r-item_three-wrap a {
        margin: 0;
    }
    .square_item.type2 {
        border-width: 1px;
    }
    .r-entry::after {
        width: 100%;
    }
    .r-entry .welcome_text {
        padding: 20px 0;
    }
    /* .r-entry .btn_wrap {
        padding-top: 90px;
    } */
}
@media screen and (max-width: 480px) {
    .r-top_wrap .title-wrap {
        margin-right: 5%;
    }
    .r-top_wrap .title-wrap h1 {
        margin-bottom: 7px;
    }
    .r-top_wrap .btn_wrap {
        justify-content: space-evenly;
    }
    .r-top_wrap .btn_wrap .btn, .r-top_wrap .btn_wrap .btn.top {
        margin: 15px 0 0;
    }
    .r-top_wrap .btn_wrap .btn a {
        padding: 20px 6vw;
    }
    .r-item_bg-wrap .title-wrap .btn a {
        font-size: 13px;
    }
    .r-item_three-wrap {
        flex-direction: column;
        padding-top: 0;
    }
    .r-item_three-wrap.type2 {
        flex-direction: initial;
        flex-wrap: wrap;
    }
    .r-item_three-wrap.type2 a {
        flex: none;
        width: 50%;
    }
    .r-item_three-wrap.type2 a.wide {
        width: 100%;
    }
    .square_item {
        height: 38vw;
    }
    .square_item.type1 img {
        height: 100%;
        object-fit: cover;
    }
    /* .square_item.type1 .onText {
        width: 100%;
        height: 100%;
    } */
    .square_item.type1 .onText span {
        font-size: 4vw;
    }
    .square_item.type2 {
        justify-content: center;
        height: initial;
        padding: 15px;
    }
    .square_item.type2 .text {
        font-size: 3.5vw;
    }
    .square_item.type2 .text p {
        line-height: 1;
    }
    .square_item.type2.wide img {
        width: 25%;
    }
    .square_item.type2 .arrow, .square_item.type2.wide .arrow {
        width: 4vw;
        right: -5vw;
    }
    .r-entry {
        height: 70vw;
        min-height: 280px;
        margin: 0;
        padding: 8vw 0 6vw;
    }
    .r-entry .welcome_text {
        font-size: 2.7vw;
    }
    .r-entry .welcome_text br {
        display: block;
    }
}
@media screen and (max-width: 400px) {
    .r-fv h1 {
        margin: 0 0.6vw;
        padding: 1.6vw 5px;
    }
    .r-top_wrap {
        padding: 0 0 30px;
    }
    .r-top_wrap .btn_wrap .btn a {
        font-size: 13px;
    }
    .r-item_bg-wrap .title-wrap .btn a {
        font-size: 3vw;
        padding: 1vw 4vw;
    }
    .square_item.type1 .onText span {
        font-size: 14px;
    }
    /* .square_item.type2 {
        height: 115px;
    } */
    .square_item.type2 img {
        width: 60%;
    }
    .square_item.type2 .text {
        font-size: 3.5vw;
    }
    .r-entry .btn_wrap {
        padding-top: 40px;
    }
    .r-entry .btn_wrap .btn {
        margin: 0 5px;
    }
}
/*エントリーボタン*/
.btn.orange a::after {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 95%;
    height: 80%;
    border: solid 1px rgba(255,255,255, .7);
    transition: .3s;
}
.btn.orange a::before {
    content: "";
    position: absolute;
    z-index: 30;
    top: 50%;
    left: 0;
    transform: translateY(-50%);
    width: 15%;
    height: 1px;
    background: rgba(255,255,255, .7);
    transition: .3s;
}
/* .btn.orange a:hover::after {
    width: 100%;
    height: 100%;
} */
.g-container .btn.orange a:hover {
    background: #f0b52c;
}
.btn.orange a:hover::before,
.btn.white a:hover::before {
    width: 0;
}


/*==== 下位階層のページトップ ====*/
.r-page_top {
    position: relative;
    width: 100%;
    height: 20vw;
    min-height: 150px;
    max-height: 300px;
    background-position: center center;
    background-size: cover;
    background-repeat: no-repeat;
    z-index: 10;
}
.r-page_top.topmessage {
    background-image: url(../images/recruit/r-bg_topmessage.jpg);
}
.r-page_top.work {
    background-image: url(../images/recruit/work/r-bg_work.jpg);
}
.r-page_top.people {
    background-image: url(../images/recruit/people/r-bg_people.jpg);
}
.r-page_top.message {
    background-image: url(../images/recruit/message/r-bg_message.jpg);
}
.r-page_top.requirements {
    background-image: url(../images/business/biz_header_bg.jpg);
}
.r-page_top.careerstep {
    background-image: url(../images/recruit/careerstep/r-bg_career.jpg);
}
.r-page_top.education {
    background-image: url(../images/recruit/education/r-bg_education.jpg);
}
.r-page_top.number {
    background-image: url(../images/recruit/number/r-bg_number.jpg);
}
.r-page_top.faq {
    background-image: url(../images/business/biz_header_bg.jpg);
}
.r-page_top.entryform {
    background-image: url(../images/recruit/staff.jpg);
}
.r-titlebox {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translateX(-50%);
    width: 50%;
    padding: 35px 20px;
    /* padding-bottom: 35px; */
    text-align: center;
    /* background: black; */
    background: #095133;
    color: white;
    font-size: 18px;
    font-weight: bold;
}
.r-titlebox::before {
    content: "";
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    width: 95%;
    height: 90%;
    margin: auto;
    border: solid 2px white;
}
.r-titlebox p {
    margin-top: 0;
    /* font-size: 22px; */
    /* font-size: 60px; */
    font-size: 4.5vw;
    margin: 0;
    line-height: 1.7;
}
.r-titlebox img {
    /* height: 7vw; */
    height: 2vw;
    min-height: 22px;
    max-height: 95px;
}
@media screen and (min-width: 1300px) {
    .r-titlebox p {
        font-size: 60px;
    }
}
@media screen and (max-width: 780px) {
    .r-titlebox {
        width: 60%;
        /* padding: 13px; */
        padding: 25px;
        padding-bottom: 20px;
    }
    .r-titlebox p {
        font-size: 5.5vw;
    }
}
@media screen and (max-width: 600px) {
    .r-titlebox {
        top: 60%;
    }
    /* .r-titlebox p {
        font-size: 15px;
    } */
}
@media screen and (max-width: 480px) {
    .r-titlebox {
        width: 65%;
        padding: 20px;
        padding-bottom: 15px;
    }
    .r-titlebox p {
        font-size: 6.5vw;
        margin-bottom: 12px;
        line-height: 1;
    }
    .r-titlebox img {
        height: 4.2vw;
        min-height: 13px;
    }
}
@media screen and (max-width: 400px) {
    .r-titlebox {
        width: 70%;
    }
}

/*==== トップメッセージ ====*/
.topmess_container {
    height: 380px;
    padding: 100px 100px 0;
    background: #F6F6F6;
    display: flex;
    justify-content: center;
    align-items: flex-end;
}
.topmess_catch {
    padding-bottom: 200px;
    color: #40220f;
}
.topmess_catch h1 {
    font-size: 34px;
    margin: 0;
    white-space: nowrap;
}
.topname {
    padding-bottom: 70px;
    font-size: 16px;
    font-weight: bold;
    white-space: nowrap;
}
.topname p {
    line-height: 1.7;
}
.topmess_img {
    width: 340px;
}
.topmess_img img {
    width: 100%;
}
.topmess_sub-box {
    position: relative;
    width: 80%;
    max-width: 890px;
    margin: 0 auto;
    margin-top: -60px;
    padding: 50px 10%;
    box-sizing: border-box;
    background: white;
    /* box-shadow: 0 0 8px rgba(0,0,0,.2); */
    /* text-align: center; */
}
.topmess_sub-box div {
    padding: 30px 0;
}
.topmess_sub-box p {
    margin: 0;
}
.topmess_sub-box .bigger {
    font-size: 20px;
    font-weight: bold;
}
.text-center {
    text-align: center;
}
.text-right {
    text-align: right;
}

@media screen and (max-width:1024px) {
    .topmess_container {
        padding: 100px 10% 0;
    }
    .topmess_catch h1 {
        font-size: 3vw;
    }
    .topmess_catch {
        margin-right: -70px;
    }
    .topname {
        margin-right: -15px;
    }
}
@media screen and (max-width:780px) {
    .topmess_container {
        padding: 100px 0 0 5%;
    }
    .topmess_catch {
        padding-bottom: 230px;
        margin-right: -150px;
    }
    .topmess_catch h1 {
        font-size: 25px;
    }
    .topmess_sub-box {
        padding: 30px 6%;
    }
    .topmess_sub-box p {
        font-size: 14px;
    }
}
@media screen and (max-width:600px) {
    .topmess_container {
        padding: 100px 0 0 8%;
        height: 60vw;
    }
    .topmess_catch h1 {
        font-size: 3.7vw;
    }
    .topmess_sub-box .bigger {
        font-size: 16px;
    }
}
@media screen and (max-width:480px) {
    .topmess_sub-box {
        width: 90%;
    }
    .topmess_catch {
        padding-bottom: 42vw;
    }
    .topname p {
        font-size: 15px;
    }
    .topmess_sub-box p {
        font-size: 13px;
    }
    .topmess_sub-box .text-right {
        text-align: left;
    }
}
@media screen and (max-width:400px) {
    .topmess_container {
        height: 300px;
    }
    .topmess_catch {
        padding-bottom: 72vw;
        margin-right: -200px;
    }
    .topmess_catch h1 {
        font-size: 19px;
    }
    .topmess_sub-box .bigger {
        font-size: 15px;
    }
    .topname p {
        font-size: 4vw;
    }
    .topmess_sub-box p {
        font-size: 12px;
    }

}

/*==== 募集要項ページ ====*/
#r-guide {
    text-align: center;
    /* background: rgba(0, 153, 68, .3); */
    background-image: url(../images/common/vege_filter_unit.png);
    background-color:rgba(255,255,255,0.5);
    background-blend-mode:lighten;
    background-repeat: repeat;
    background-size: 550px;
    padding-bottom:  60px;
}
#r-guide .top_link {
    padding: 30px;
    padding-top: 130px;
}
#r-guide .top_link a {
    display: inline-block;
    padding: 10px 80px;
    background: rgba(255,255,255,.7);
    border: solid 2px #e9e9e9;
    border-radius: 3px;
    margin: 7px;
    position: relative;
}
#r-guide .top_link a:hover {
    background: #f6f6f6;
}
#r-guide .top_link a h3 {
    margin: 0;
}
#r-guide .top_link a::before {
    content: "";
    width: 8px;
    height: 8px;
    border: 0px;
    border-bottom: solid 3px #095133;
    border-right: solid 3px #095133;
    -ms-transform: rotate(45deg);
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    position: absolute;
    top: 50%;
    right: 15%;
    margin-top: -8px;
    transition: .3s;
}
#r-guide .top_link a:hover::before {
    margin-top: -5px;
}
.g-container {
    width: 75%;
    margin: 60px auto;
    margin-bottom: 0;
    padding: 50px 0;
    background-color: rgba(255,255,255,.5);
    border: solid 2px #e9e9e9;
}
.g-container h2 {
    margin: 0;
}
table {
    width: 90%;
    margin: 0 auto;
    padding: 60px 0;
    text-align: left;
}
table th {
    width: 25%;
    padding: 15px 0;
    color: #009944;
    border-bottom: solid 1px #e9e9e9;
}
table td {
    padding: 15px 0;
    border-bottom: solid 1px #e9e9e9;
}

.g-container .btn.orange a {
    font-size: 1.7vw;
    letter-spacing: 0.1em;
    color: white;
    background: #EDA400;
    padding: 2vw 6.5vw;
    position: relative;
}
.g-container .btn_wrap {
    display: flex;
    justify-content: center;
}
.g-container .btn_wrap div {
    margin: 0 1vw;
}
.navi_btn {
    display: inline-block;
}
.navi_btn a {
    padding: 0.6vw 2vw;
    background: white;
    border: solid 2px #e9e9e9;
}
.navi_btn a img {
    width: 24vw;
}
.mynavi a {
    /* padding: 0 10px; */
    padding: 0;
}
.g-container #new-gra.btn.orange {
    display: inline-block;
    margin: 16px;
}
@media screen and (min-width: 1300px) {
    .navi_btn a {
        padding: 8px 27px;
    }
    .mynavi a {
        /* padding: 0px 10px */
        padding: 0;
    }
    .navi_btn a img {
        width: 320px;
    }
    .g-container .btn.orange a {
        font-size: 22px;
        padding: 26px 85px;
    }
}
@media screen and (max-width: 1024px) {
    .g-container {
        width: 80%;
    }
}
@media screen and (max-width: 780px) {
    .g-container {
        width: 85%;
    }
    table {
        padding: 50px 0;
        font-size: 14px;
    }
    .g-container .btn_wrap {
        flex-direction: column;
    }
    .g-container .btn_wrap div {
        margin: 7px 1vw;
    }
    .navi_btn a {
        padding: 0.6vw 20px;
    }
    .mynavi a {
        /* padding: 0 20px */
        padding: 0;
    }
    .navi_btn a img {
        width: 190px;
    }
    /* .g-container .btn.orange a {
        font-size: 15px;
    } */
    .g-container .btn.orange,
    .g-container #new-gra.btn.orange  {
        margin:7px
    }
    .g-container .btn.orange a {
        width: 230px;
        height: 50px;
        box-sizing: border-box;
        padding: 13px 6.5vw;
        font-size: 15px;
    }
}
@media screen and (max-width: 600px) {
    #r-guide .top_link a {
        padding: 10px 50px;
        margin: 3px;
    }
    /* table {
        font-size: 13px;
    } */
    table th, table td {
        display: block;
        width: 100%;
        box-sizing: border-box;
    }
    table th {
        padding: 5px 15px;
        border: none;
        color: black;
        background: #afd263;
    }
    table td {
        padding: 15px;
    }
}
@media screen and (max-width: 480px) {
    #r-guide .top_link {
        padding: 0;
        padding-top: 100px;
    }
    #r-guide .top_link a h3 {
        font-size: 15px;
    }
    table td {
        font-size: 13px;
    }
    .g-container h2 {
        font-size: 20px;
    }
    /* .g-container .btn_wrap {
        flex-direction: column;
    } */
    /* .g-container .btn_wrap div {
        margin: 7px 1vw;
    } */
    .navi_btn a {
        padding: 1.6vw 10px;
    }
    .mynavi a {
        /* padding: 0.3vw 10px */
        padding: 0;
    }
    .g-container .btn.btn.orange a {
        width: 210px;
        font-size: 15px;
    }
}



/*==== キャリアステップ ====*/
.career_container1 {
    padding: 150px 0;
    padding-bottom: 100px;
}
.career_container1 img {
    display: block;
    width: 80%;
    margin: 0 auto;
}
.career_container1 .contents {
    width: 75%;
    margin: 0 auto;
    padding: 50px; 
    box-sizing: border-box;
    background: #f8f9f9;
}
.career_container2 {
    padding-left: 12.5%;
    padding-bottom: 80px;
}
.career_container2 h3 {
    /* font-size: 23px; */
    font-size: 3.7vw;
    margin-top: 0;
}
.career_container2 .box_title {
    height: 2.3vw;
    min-height: 19px;
}
.example_box {
    display: flex;
    padding-top: 80px;
}
.example_box .staff_icon {
    width: 30vw;
    height: 30vw;
    max-width: 390px;
    max-height: 390px;
    position: relative;
    margin: auto 0;
    margin-right: 8%;
}
/* .example_box.ex1 .staff_icon {
    background: #629b52;
}
.example_box.ex2 .staff_icon {
    background: #a38622;
}
.example_box.ex3 .staff_icon {
    background: #cf6d1f;
} */
.example_box .staff_icon img {
    position: absolute;
    width: 60%;
    min-width: 180px;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}
.example_box .contents p {
    margin: 0;
}
.example_box .contents .title1 {
    /* font-size: 18px; */
    font-size: 23px;
    font-weight: bold;
}
.example_box .contents .title2 {
    /* font-size: 23px; */
    font-size: 20px;
    font-weight: bold;
}
.flow_line {
    margin-top: 20px;
    font-weight: bold;
}
.flow_item {
    display: inline-block;
    /* padding: 10px 35px; */
    padding: 0.5vw 2.7vw;
    padding-right: 3.3vw;
    color: white;
    font-size: 1.4vw;
    position: relative;
    box-sizing: border-box;
    background-repeat: no-repeat;
    background-size: 100%
}
#long-yrs.flow_item {
    /* padding-left: 30px; */
    padding-left: 2.3vw;
    padding-right: 2.8vw;
}
.example_box.ex1 .flow_item {
    /* background: #629b52; */
    background-image: url(../images/recruit/careerstep/arrow_box1.svg);
}
.example_box.ex2 .flow_item {
    /* background: #a38622; */
    background-image: url(../images/recruit/careerstep/arrow_box2.svg);
}
.example_box.ex3 .flow_item {
    /* background: #cf6d1f; */
    background-image: url(../images/recruit/careerstep/arrow_box3.svg);
}
/* .flow_item::before {
    content: "";
    width: 0;
    height: 0;
    border: solid 2.1vw;
    border-left-width: 14px;
    position: absolute;
    top: 0;
    right: -3.2vw;
} */
/* .example_box.ex1 .flow_item::before {
    border-color: transparent transparent transparent #629b52;
}
.example_box.ex2 .flow_item::before {
    border-color: transparent transparent transparent #a38622;
}
.example_box.ex3 .flow_item::before {
    border-color: transparent transparent transparent #cf6d1f;
} */
.title3 {
    display: inline;
    padding: 13px;
    font-size: 1.4vw;
    padding-left: 2vw;
    letter-spacing: 0;
}
@media screen and (min-width: 1300px) {
    .flow_item, .title3 {
        font-size: 18px;
    }
}
@media screen and (max-width: 1024px) {
    .career_container1 img {
        width: 90%;
    }
    .career_container1 .contents {
        width: 85%;
    }
    .career_container2 {
        padding-left: 8.5%;
    }
    .flow_line {
        margin-top: 10px;
    }
    .flow_item, .title3 {
        font-size: 15px;
    }
}
@media screen and (max-width: 900px) {
    .example_box .staff_icon {
        width: 28vw;
        height: 28vw;
        margin-right: 8%;
    }
    .flow_item {
        padding-top: 0.3vw;
        padding-bottom: 0.3vw;
    }
}
@media screen and (max-width: 780px) {
    .career_container1 {
        padding-bottom: 80px;
    }
    .career_container1 .contents {
        font-size: 14px;
    }
    .career_container2 h3 {
        font-size: 25px;
    }
    /* .career_container2 .box_title {
        height: 7vw;
    } */
    .example_box .staff_icon {
        margin-top: 13px;
    }
    .example_box .contents .title1 {
        font-size: 20px;
    }
    .example_box .contents .title2 {
        font-size: 18px;
    }

    
}
@media screen and (max-width: 700px) {
    .career_container2 {
        padding-left: 0;
    }
    .career_container2 .title-wrap {
        padding-left: 10%;
    }
    .example_box {
        flex-direction: column;
        padding-top: 60px;
        align-items: center;
    }
    .example_box .staff_icon {
        width: 280px;
        height: 280px;
        margin-right: 0;
        margin-bottom: 15px;
    }
    .flow_item {
        padding-top: 0;
        padding-bottom: 0;
    }
    .flow_item, .title3 {
        font-size: 18px;
    }
    .flow_item::before {
        border: solid 3.1vw;
        border-left-width: 14px;
        right: -5vw;
    }
}
@media screen and (max-width: 600px) {
    .career_container1 img {
        width: 100%;
    }
    .career_container1 .contents {
        width: 100%;
        padding: 6.5vw;
    }
    .career_container1 .contents p {
        line-height: 1.7;
    }
    .flow_item, .title3 {
        font-size: 15px;
    }
    .title3 {
        padding: 10px 20px;
    }
}
@media screen and (max-width: 480px) {
    .career_container1 {
        padding-top: 100px;
    }
    .career_container1 .contents {
        font-size: 13px;
    }
    .career_container2 {
        width: 85%;
        margin: 0 auto;
        padding-left: 0;
    }
    .career_container2 .title-wrap {
        padding-left: 0;
    }
    .career_container2 h3 {
        font-size: 23px;
    }
    /* .career_container2 .box_title {
        min-height: 50px;
    } */
    .example_box .staff_icon {
        width: 100%;
        height: 45vw;
        margin-right: 0;
        margin: 0 auto 25px;
    }
    .example_box .staff_icon img {
        width: 40%;
        min-width: 135px;
    }
    .example_box {
        align-items: flex-start;
    }
    .example_box .contents .title1 {
        line-height: 1.3;
    }
    .flow_item {
        font-size: 13px;
    }
    .title3 {
        display: inline;
        padding: 10px;
        font-size: 14px;
    }
}

/*==== 数字で見る九州屋 ====*/
.number_container {
    display: flex;
    flex-direction: column;
    justify-content: space-evenly;
    padding: 8vw;
    padding-top: 150px;
    background: -moz-linear-gradient(to bottom #d5e48d, #afd263 40%, #81c8a6);
    background: -webkit-linear-gradient(to bottom, #d5e48d, #afd263 40%, #81c8a6);
    background: linear-gradient(to bottom, #d5e48d, #afd263 40%, #81c8a6);
}
.number_container img {
    width: 100%;
    margin: 1.5vw 0;
    object-fit: contain;
    font-family: 'object-fit: contain';
}
.number_container .images-wrap {
    display: flex;
    justify-content: space-between;
}
/* .number_container img.third-size {
    width: 31%;
} */
.number_container img.second-size {
    width: 49%;
}
@media screen and (max-width: 780px) {
    .number_container {
        padding: 120px 3vw 4vw;
    }
}
@media screen and (max-width: 600px) {
    .number_container {
        padding: 100px 2vw 5vw;
    }
}
@media screen and (max-width: 480px) {
    .r-page_top.number {
        min-height: 120px;
    }
    .number_container {
        padding-top: 80px;
    }
}