.wrap{max-width: 1000px; margin: 0 auto; padding: 0 20px;}
.cat_name{ text-align: center; margin: 50px 0;}
.cat_name h2{ font-size: 6rem; font-style: normal; font-weight: bold; display: table; margin: 0 auto; background: linear-gradient(transparent 75%, #EB868C 0%); padding: 0 20px;}
.cat_name + p{font-size: 2rem; text-align: center; line-height: 1.8}

.main_visual{margin: 80px calc(50% - 50vw); width: 100vw; }
.main_visual img{width: 100%; }
.heading01 {color: #fff; font-size: 3rem; display: flex; align-items: center; font-weight: 500; margin-bottom: 40px;}
.heading01:before, .heading01:after {content: ""; flex-grow: 1; height: 1px; background: #fff; display: block;}
.heading01:before { margin-right: .4em;}
.heading01:after {margin-left: .4em;}
.heading01 + p{line-height: 1.8}
.img{text-align: center; margin: 60px 0;}
.img img{max-width: 100%;}
.img p{margin-top: 20px}
.img p a{ text-decoration: underline; font-weight: bold; }
p{ line-height: 1.6;}
/* .table > div.table_wrap{width: 960px;display: flex; padding: 175px 0 0 0; align-items: flex-end; justify-content: space-between; background: url(../img/career_image.png) center top no-repeat;} */
.table > div.table_wrap{width: 960px;display: flex; padding: 0; align-items: flex-end; justify-content: space-between;}
.table div table {border-top: solid 5px #fff; width: 320px; margin: 0 1px 0 0}
.table div table tr th{ background: #E4555E; line-height: 1; font-size: 1.4rem; color: #fff; padding: 10px; text-align: center; font-weight: 500; border: solid 1px #fff;}
.table div table tr.position th{ background: #D80C18; }
.table div table:nth-child(2) tr.position th{width: 33.333%}
.table div table:last-child tr.position th{text-align: left; line-height: 1.8; width: 25%;}
.table div table tr td{ background: #fff; padding: 20px; color: #000; height: 320px;}
.table div table tr td 
{
    h4{ color: #D80C18; font-size: 2rem; font-weight: 500;padding: 0; 
        @media screen and (max-width: 650px) {
            font-size: 16px;
        }
    }
    ul{
        margin: 20px 0 0 !important;
        li{
            list-style: none !important;
            margin:10px 0 !important;
            border-radius: 40px;
            background: #f1f1f1;
            padding: 10px;
            font-size: 14px;
            line-height: 1;
            letter-spacing: -0.1em;
        }
    }
    P{
        font-weight: 100 !important;
        height: 250px;
        @media screen and (max-width: 650px) {
            font-size: 14px;
        }
    }
}


.careerimage{margin: 60px 0;
    h5{
        font-size: 20px;
        font-weight: bold;
        border-bottom: solid 1px #fff;
        padding: 0 0 10px 0;
        margin: 0 0 30px;
        @media screen and (max-width: 650px) {
            font-size: 16px;
        }
    }
}

.training h4{font-size: 2rem; font-weight: 500; margin: 60px 0 40px 0;}
.training .unit_01_inner{margin-bottom: 20px;}
.training .unit_01_inner h4{ font-size: 1.6rem; display: inline-block; padding: 10px; background: #fff; color: #D80C18; box-shadow: 2px 2px 5px #D31414; margin: 0;}
.training h4 + p{ margin-bottom: 20px; }
.training .unit_01_inner p{ color: #fff; background: #E4555E; margin-top: -20px; padding: 35px 20px 20px 20px; line-height: 1.5;}
.bgarrow{ padding-bottom: 20px; background: url('../img/arrow.png') 10px bottom no-repeat; }

.entry_area { padding-top: 50px; background: url(/recruit/mnb/img/wave_footer2.gif) center 0 no-repeat !important;}

.scroll-hint-icon-wrap.is-active .scroll-hint-icon{display: none}

.jobrotation h4{ margin: 0 0 20px; font-weight: bold; font-size: 25px; background: rgba(255, 255, 255, 0.3); padding: 15px 20px;
    @media screen and (max-width: 650px) {
        font-size: 18px;
    }

}
.jobrotation .course{ display: flex; justify-content: center; gap: 40px; margin-top: 40px;
    @media screen and (max-width: 650px) {
        gap: 10px;
    }
}
.jobrotation .course{
    li{
        max-width: 400px;
        @media screen and (max-width: 650px) {
            width: 45%;
        }
        a{
            display: block;
            background: #fff;
            color: #333;
            border-radius: 100px;
            padding: 20px 40px;
            text-align: center;
            transition: .3s;
            line-height: 1.6;
            border: solid 1px #fff;
            height: 100%;
            @media screen and (max-width: 650px) {
                font-size: 16px;
                border-radius: 10px;
                padding:20px 10px;
            }
            b{
                color: #D80C18;
                font-weight: bold;
                font-size: 20px;
                display: block;
                margin-bottom: 15px;
                @media screen and (max-width: 650px) {
                    font-size: 16px;
                }
            }
            &::after{
                content: '';
                display: block;
                width: 12px;
                height: 12px;
                border-right: 2px solid #D80C18;
                border-bottom: 2px solid #D80C18;
                transform: rotate(45deg);
                margin: 15px auto 0;
            }
            &:hover{
                background: rgba(255, 255, 255, 0.5);
            }
        }
    }
}
.jobrotation .inner{
    margin-top: 160px;
    ul{
        margin-left: 20px;
        margin-bottom: 20px;
        li{
            list-style: circle;
            margin:0 0 5px;
        }
    }
}

@media screen and (max-width: 980px) {
.table{ overflow: auto; white-space: nowrap; padding: 0;}
}

@media screen and (max-width: 650px) {
.scroll-hint-icon-wrap.is-active .scroll-hint-icon{display: block}
.cat_name{margin: 30px 0}
.cat_name h2{font-size: 3rem;}
.cat_name + p{font-size: 1.4rem; margin-bottom: 20px; line-height: 1.5;}
.cat_name + p br{display: none;}
.main_visual{margin: 40px calc(50% - 50vw); }
.heading01{font-size: 2.3rem; margin-bottom: 20px;}
.unit_01{margin-top: 40px;}
.img{ margin: 20px 0;}
.training h4{margin: 20px 0; font-size: 1.6rem;}
.jobrotation .inner{
    margin-top: 60px;

}
}