header {
    height: auto;
    background: 0 0
}

header .logo {
    flex-direction: column;
    background: rgba(154, 214, 217, .8);
    padding: 2rem
}

header .logo .recruit-h-ttl {
    margin-left: 0;
    color: #fff;
    font-size: 22px
}

header .logo .recruit-h-ttl span {
    display: inline-block;
    margin-top: 20px;
    font-size: 19px
}

#new {
    background-image: url(../../../img/pc/recruit/new/recruit_top_bg.jpg);
    background-position: top center;
    padding-bottom: 130px;
    overflow: hidden
}

#new .mainv {
    background-image: url(../../../img/pc/recruit/new/mainv.jpg);
    background-repeat: no-repeat;
    background-size: cover;
    background-position: top center;
    text-align: center;
    height: 730px;
    position: relative
}

#new .mainv:before {
    content: "";
    width: 2px;
    height: 125px;
    background: #fff;
    position: absolute;
    right: 0;
    left: 0;
    bottom: 0;
    margin: 0 auto;
    transform: translateY(50%);
    z-index: 10
}

#new .mainv .mainv-ttl {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%)
}

#new .mainv .mainv-ttl p {
    font-size: 36px;
    margin-top: 60px;
    color: #fff;
    letter-spacing: 5px
}

#new .mainv .entry-bnr {
    font-size: 26px;
    color: #fff;
    letter-spacing: 5px;
    border: 3px solid currentcolor;
    border-right: none;
    position: absolute;
    top: 80%;
    right: 0;
    z-index: 10
}

#new .mainv .event-bnr {
    top: 95%
}

#new .mainv .entry-bnr a {
    display: block;
    padding: 30px 100px 30px 45px;
    color: #fff;
    width: 390px;
    text-align: left;
    background: #30617280;
}

#new .btn-area {
    text-align: center
}

#new .btn-area .more-btn {
    display: inline-block;
    padding: 25px 80px;
    background-image: url(../../../img/pc/recruit/new/recruit_top_btn1.jpg);
    background-repeat: no-repeat;
    background-size: cover;
    background-position: top center;
    color: #fff;
    letter-spacing: 1px;
    box-shadow: 5px 5px 8px rgba(0, 0, 0, .2)
}

#new .topmessage {
    margin-bottom: 80px;
    background-image: url(../../../img/pc/recruit/new/recruit_top_mess.jpg);
    background-repeat: no-repeat;
    background-size: cover;
    background-position: top left;
    height: 730px;
    position: relative
}

#new .topmessage .cont-txt {
    font-size: 20px;
    letter-spacing: 10px;
    color: #ffff;
    line-height: 1.2;
    position: absolute;
    top: 58%;
    right: 4%
}

#new .topmessage .name {
    color: #fff;
    line-height: 1.5;
    position: absolute;
    right: 5%;
    bottom: 20%
}

#new .topmessage .name span {
    font-size: 24px;
    line-height: 2
}

#new .topmessage .btn-area {
    position: absolute;
    right: 0;
    left: 0;
    bottom: 10%
}

#new .careers {
    margin-bottom: 80px;
    padding: 110px 0 75px;
    overflow: hidden;
    position: relative
}

#new .careers:before {
    content: "";
    width: 82%;
    height: 100%;
    margin: 0 auto;
    background: #fff;
    position: absolute;
    right: 0;
    left: 0;
    top: 0
}

#new .careers .cont-txt {
    text-align: center;
    font-size: 19px;
    position: relative
}

#new .careers .cont-txt>p {
    line-height: 2
}

#new .careers .cont-txt .cont-ttl {
    margin-bottom: 30px;
    font-size: 50px;
    color: #77bed8
}

#new .careers .cont-txt .cont-ttl p {
    margin-top: -.5em;
    letter-spacing: 7px
}

#new .careers .interview {
    width: 100%;
    margin-top: 75px;
    margin-bottom: 45px;
    padding: 35px 0 50px;
    background-image: url(../../../img/pc/recruit/new/recruit_top_career.jpg);
    background-repeat: no-repeat;
    background-size: cover;
    background-position: top center;
    display: flex;
    position: relative
}

#new .careers .interview .interview-cont {
    position: relative;
    color: #222
}

#new .careers .interview .interview-cont .prof {
    width: 50%;
    padding: 50px 0;
    background: rgba(255, 255, 255, .8);
    text-align: center;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    position: absolute;
    top: 47%;
    right: 70%
}

#new .careers .interview .interview-cont .prof p {
    margin: .2em 0;
    line-height: 1.6
}

#new .careers .interview .interview-cont .prof .position {
    font-size: 14px
}

#new .careers .interview .interview-cont .prof .kana {
    font-size: 22px
}

#new .careers .interview .interview-cont:nth-child(odd) .prof {
    top: 20%
}

#new .careers .btn-area {
    position: relative
}

#new .welfare {
    margin-bottom: 80px;
    padding: 75px 0;
    background-image: url(../../../img/pc/recruit/new/recruit_top_welfare.jpg);
    background-repeat: no-repeat;
    background-size: cover;
    background-position: top center
}

#new .welfare .inner {
    width: 1100px
}

#new .welfare .inner>.cont-txt {
    text-align: center;
    font-size: 19px;
    color: #fff;
    position: relative
}

#new .welfare .inner>.cont-txt>p {
    line-height: 2
}

#new .welfare .inner>.cont-txt .cont-ttl {
    margin-bottom: 30px;
    font-size: 50px;
    color: #fff
}

#new .welfare .inner>.cont-txt .cont-ttl p {
    margin-top: -.5em;
    letter-spacing: 7px
}

#new .welfare .welfare-cont-wrap {
    margin: 80px 0;
    display: flex;
    justify-content: space-between
}

#new .welfare .welfare-cont-wrap .welfare-cont {
    width: 47.7%;
    background: #fff;
    position: relative
}

#new .welfare .welfare-cont-wrap .welfare-cont .cont-img img {
    width: 100%
}

#new .welfare .welfare-cont-wrap .welfare-cont .cont-txt {
    padding: 25px 35px 40px
}

#new .welfare .welfare-cont-wrap .welfare-cont .cont-txt p {
    font-size: 14px;
    line-height: 2
}

#new .welfare .welfare-cont-wrap .welfare-cont .cont-txt .cont-ttl {
    margin-bottom: 30px;
    font-size: 16px;
    text-align: center
}

#new .welfare .welfare-cont-wrap .welfare-cont .pngtxt {
    position: absolute;
    top: 41%;
    left: 4%
}

#new .company {
    margin-bottom: 80px;
    padding: 110px 0 75px;
    overflow: hidden;
    position: relative
}

#new .company:before {
    content: "";
    width: 82%;
    height: 100%;
    margin: 0 auto;
    background: #f4f3ec;
    position: absolute;
    right: 0;
    left: 0;
    top: 0
}

#new .company .inner>.cont-txt {
    text-align: center;
    font-size: 19px;
    position: relative
}

#new .company .inner>.cont-txt>p {
    line-height: 2
}

#new .company .inner>.cont-txt .cont-ttl {
    margin-bottom: 30px;
    font-size: 50px;
    color: #77bed8
}

#new .company .inner>.cont-txt .cont-ttl p {
    margin-top: -.5em;
    letter-spacing: 7px
}

#new .company .company-cont-wrap {
    margin-top: 75px;
    margin-bottom: 45px;
    display: flex;
    justify-content: space-between;
    position: relative
}

#new .company .company-cont-wrap .company-cont {
    width: 30.4%;
    background: #fff;
    text-align: center;
    color: #000
}

#new .company .company-cont-wrap .company-cont .cont-img img {
    width: 100%
}

#new .company .company-cont-wrap .company-cont .cont-txt {
    padding: 30px 10px 40px
}

#new .company .company-cont-wrap .company-cont .cont-txt p {
    line-height: 2
}

#new .company .company-cont-wrap .company-cont .more {
    margin-top: 20px;
    margin-right: 20px;
    padding-right: 45px;
    font-size: 14px;
    color: #77bed8;
    letter-spacing: 2px;
    text-align: right;
    position: relative
}

#new .company .company-cont-wrap .company-cont .more:after {
    position: absolute;
    content: "";
    width: 2.3em;
    height: 10px;
    transform: skewX(45deg);
    border-right: 2px solid currentcolor;
    border-bottom: 1px solid currentcolor;
    bottom: 0;
    right: 0;
    transition: .2s
}

#new .company .company-cont-wrap .company-cont:hover .more:after {
    width: calc(2.3em + 3px);
    right: -3px
}

#new .company .btn-area {
    position: relative
}