@charset "utf-8";

@media screen and (min-width: 1201px){
  .spBtn {display:none;}
}

@media screen and (max-width: 1200px){
  .spBtn {display: block;position: absolute;right: 0;top: 15vw;z-index: 99;}
  .spBtn a {display:block; width: 15vw; height: 15vw; margin:auto; text-align:center;}  
  .spBtn a img {display:block; width: 45%; height: auto; margin: 0 auto .4vw; text-align:center;}  
  .spBtn a p {font-size: 2vw; color:#fff;}
  .spBtn a:first-child { display:block; background:#060e62;}  
  .spBtn a:last-child { display:block; background:#000;}  
}
/*	ヘッダーa
---------------------------------*/
.hd-h1 {
    display: none;
}

.header {
    width: 100%;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 100;
}

.hd-inr {
    background: -moz-linear-gradient(top, rgba(129, 144, 159, 1) 0%, rgba(129, 144, 159, 0) 100%);
    background: -webkit-linear-gradient(top, rgba(129, 144, 159, 1) 0%, rgba(129, 144, 159, 0) 100%);
    background: linear-gradient(to bottom, rgba(129, 144, 159, 1) 0%, rgba(129, 144, 159, 0) 100%);
    padding: 0 0 50px;
    position: relative;
}

.hd-logo {
    width: 400px;
    max-width: 330px;
    padding-left: 15px;
    position: relative;
}

.hd-nav .li {
    padding-left: 15px;
}

.hd-nav .li:first-of-type {
    padding-left: 0;
}

.hd-nav .li a {
    display: block;
    text-align: center;
    cursor: pointer;
    transition: all 0.3s ease 0s;
}

.hd-nav .li a:hover > p{ 
    Color:#060e62;
}

.hd-nav .li a p {
    font-weight: 500;
    letter-spacing: 0.05em;
    color: #fff;
    font-size: 15px;
}

.hd-nav-p02 {
    font-size: 1.4rem;
    font-weight: 400;
    letter-spacing: 0.1em;
}

.hd-sns-list {
    margin: 0 16px;
}

.hd-sns {
    padding-left: 20px;
}

.hd-sns:first-of-type {
    padding-left: 0;
}

.hd-btn {
    background-color: #060e62;
    width: 120px;
    height: 120px;
}

.hd-btn.hd-btn02 {
    background-color: #000;
}

.hd-btn a {
    display: block;
    width: 100%;
    height: 100%;
}

.hd-btn-inr {
    height: 100%;
    text-align: center;
}

.hd-btn-p {
    font-weight: 500;
    color: #fff;
}

@media screen and (max-width: 1400px) {
    .hd-logo {
        width: 238px;
    }

    .hd-nav .li a p {
        font-size: 12px;
    }
}

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

    .hd-nav .li {
        padding-left: 13px;
    }

    .hd-sns-list {
        margin: 0 20px;
    }
}

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

/*SPmenuお問い合わせ*/
@media screen and (max-width: 1200px) {
    .hd-inr {
        height: 90px;
        padding: 15px 0;
    }

    .hd-inr01 {
        height: 100%;
    }

    .hd-right {
        display: none;
    }

    .hd-logo {
        z-index: 1000;
        max-width: 180px;
    }

    .hd-sns-list {
        margin: 0 0 10px;
    }
}

/*	グローバナビ（スマホ用）
---------------------------------*/
@media screen and (max-width: 1200px) {
    .hd-nav-bg {
        background-color: transparent;
        padding: 0;
    }

    .hd-nav .ul {
        height: auto;
    }

    .hd-nav {
        display: none;
    }

    .hd-nav a * {
        transition: 0s;
    }

    .hd-nav .ul.flex-cnt {
        display: block;
    }

    .hd-nav {
        color: #333;
    }

    .hd-nav .ul {
        margin-bottom: 35px;
    }

    .hd-nav .li {
        width: 100%;
        border-bottom: 1px solid #333333;
        padding: 0;
    }

    .hd-nav .li a {
        display: block;
        height: auto;
        padding: 0 20px;
    }

    .hd-nav .li a p {
        font-size: 1.6rem;
        font-weight: 400;
        letter-spacing: 0;
        color: #333333;
        line-height: 50px;
    }

    /* ナビゲーション アニメーション */
    .gjs-dashed .hd-nav,
    .open .sp-nav {
        visibility: visible;
        opacity: 1;
        -webkit-transform: scale(1);
        transform: scale(1);
        -webkit-transition: -webkit-transform 0.4s, opacity 0.4s;
        transition: transform 0.4s, opacity 0.4s;
    }

    /*ハンバーガーボタン*/
    .navToggle {
        display: block;
        position: absolute;
        right: 0px;
        top: 0px;
        margin: auto;
        width: 50px;
        height: 50px;
        cursor: pointer;
        z-index: 9999;
    }

    .navToggle div {
        display: block;
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
        -webkit-transform: translate(-50%, -50%);
        width: 25px;
        height: 16px;
    }

    .navToggle span {
        display: block;
        position: absolute;
        height: 2px;
        width: 100%;
        background: #ffffff;
        left: 0;
        -webkit-transition: .35s ease-in-out;
        -moz-transition: .35s ease-in-out;
        transition: .35s ease-in-out;
    }

    .navToggle span:nth-child(1) {
        top: 0;
    }

    .navToggle span:nth-child(2) {
        top: 7px;
    }

    .navToggle span:nth-child(3) {
        top: 14px;
    }

    /* ハンバーガーボタン 切り替えアニメーション */
    .open .navToggle {
        position: fixed;
        z-index: 10002;
    }

    .open .navToggle span {
        background: #333333;
    }

    .open .navToggle span:nth-child(1) {
        top: 7px;
        -webkit-transform: rotate(315deg);
        -moz-transform: rotate(315deg);
        transform: rotate(315deg);
    }

    .open .navToggle span:nth-child(2) {
        width: 0;
        left: 50%;
    }

    .open .navToggle span:nth-child(3) {
        top: 7px;
        -webkit-transform: rotate(-315deg);
        -moz-transform: rotate(-315deg);
        transform: rotate(-315deg);
    }

    /*---------- ハンバーガーメニュー ----------*/
    .bg-hum-blue {
        background-color: #1f716c;
        position: absolute;
        top: 0;
        right: 0;
        width: 90px;
        height: 90px;
    }

    .gjs-dashed .navbar {
        background-color: #fff;
    }

    .navbar {
        background: transparent;
        max-width: 500px;
        width: 100%;
        padding: 30px 15px 0;
        margin-left: auto;
        position: absolute;
        top: 0;
        right: 0;
        z-index: 100;
    }

    .navbar-dark .navbar-toggler {
        color: rgba(0, 0, 0, 0.5);
        border: none;
        padding: 0px;
        width: 40px;
        height: 30px;
        margin: auto;
        margin-right: 10px;
        box-sizing: border-box;
        position: relative;
    }

    .navbar-dark .navbar-toggler-icon {
        background-image: none;
        background-color: #fff;
        width: 100%;
        height: 3px;
        display: block;
        position: absolute;
        transition: ease .5s;
    }

    .navbar-toggler-icon:nth-of-type(1) {
        top: 0px;
    }

    .navbar-toggler-icon:nth-of-type(2) {
        top: 50%;
        transform: translateY(-50%);
    }

    .navbar-toggler-icon:nth-of-type(3) {
        bottom: 0;
    }

    .navbar-toggler[aria-expanded="true"] .navbar-toggler-icon {
        background-color: #060e62;
    }

    .navbar-toggler[aria-expanded="true"] .navbar-toggler-icon:nth-of-type(1) {
        top: 13px;
        transform: rotate(45deg);
    }

    .navbar-toggler[aria-expanded="true"] .navbar-toggler-icon:nth-of-type(2) {
        opacity: 0;
    }

    .navbar-toggler[aria-expanded="true"] .navbar-toggler-icon:nth-of-type(3) {
        top: 13px;
        transform: rotate(-45deg);
    }

    button:focus {
        outline: none;
    }

    .navbar-collapse {
        padding-top: 30px;
    }

    .navbar-collapse.show {}

    .navbar-nav {
        margin-bottom: 30px;
    }

    .nav-item {
        padding: 0 15px;
        border-bottom: solid 1px #999;
    }

    .nav-item:first-of-type {
        border-top: solid 1px #999;
    }

    .nav-item p {
        letter-spacing: 0.025em;
        line-height: 50px;
        color: #000;
    }

    .hd-btn-sp-list {
        padding: 30px 0;
        position: relative;
    }

    .bg-hd-btn-sp-list {
        width: calc(100% + 30px);
        height: 100%;
        background-color: rgba(242, 243, 247, .95);
        position: absolute;
        top: 0;
        left: -15px;
    }

    .hd-btn-sp {
        max-width: 320px;
        width: 100%;
        background-color: #060e62;
        margin: 0 auto 20px;
        position: relative;
    }

    .hd-btn-sp:last-of-type {
        margin-bottom: 0;
    }

    .hd-btn-sp a {
        display: block;
        text-align: center;
    }

    .hd-btn-sp p {
        display: inline;
        font-weight: 500;
        letter-spacing: 0.05em;
        color: #fff;
        line-height: 60px;
        padding-left: 25px;
        position: relative;
    }

    .hd-btn-sp p:before {
        content: '';
        background: no-repeat center center / contain;
        background-image: url(/system_panel/uploads/images/icon_hd_human.png);
        width: 16px;
        height: 100%;
        position: absolute;
        top: 0;
        left: 0;
    }

    .hd-btn-sp.hd-btn-sp02 {
        background-color: #000;
    }

    .hd-btn-sp.hd-btn-sp02 p:before {
        background-image: url(/system_panel/uploads/images/icon_mail.png);
    }
}

@media screen and (max-width: 767px) {
    .hd-inr {
        height: 50px;
        padding: 10px 0;
    }

    .hd-logo {
        width: 200px;
        max-width: 138px;
        padding: 5px 0 0 10px;
    }

    .navToggle {
        height: 50px;
    }

    .hd-nav {
        height: 100vh;
    }

    .navbar {
        padding: 17.5px 10px 0;
    }

    .navbar-dark .navbar-toggler {
        width: 20px;
        height: 15px;
        margin-right: 5px;
    }

    .navbar-dark .navbar-toggler-icon {
        height: 2px;
    }

    .bg-hum-blue {
        width: 50px;
        height: 50px;
    }

    .navbar-toggler[aria-expanded="true"] .navbar-toggler-icon:nth-of-type(1) {
        top: 8px;
    }

    .navbar-toggler[aria-expanded="true"] .navbar-toggler-icon:nth-of-type(3) {
        top: 8px;
    }

    .bg-hd-btn-sp-list {
        width: calc(100% + 20px);
        left: -10px;
    }
}

/*	フッター共通コンテンツ
---------------------------------*/
.ft-contact {
    background: no-repeat center center / cover;
    background-image: url(/system_panel/uploads/images/bg_ft.jpg);
}

.ft-contact-cmn {
    max-width: 800px;
    width: 100%;
    background-color: rgba(255, 255, 255, .9);
    box-shadow: 0px 0px 20px 0px rgba(0, 0, 0, 0.03);
    text-align: center;
    padding: 70px 10px;
    margin: 0 auto;
}

.ft-contact-cmn .online-blck {
    margin: 0 auto 30px;
}

.ft-contact-cmn .ttl-cmn02 {
    margin-bottom: 30px;
}

.ft-contact-cmn-btn {
    max-width: 600px;
    width: 100%;
    color: #fff;
    background-color: #060e62;
    margin: 0 auto;
    position: relative;
}

.ft-contact-cmn-btn:before {
    content: '';
    background: no-repeat center center / contain;
    background-image: url(/system_panel/uploads/images/icon_arrow02.png);
    width: 30px;
    height: 100%;
    position: absolute;
    top: 0;
    right: 50px;
}

.ft-contact-cmn-btn a {
    display: block;
    text-align: center;
}

.ftContactCmnBtnP {
    display: inline;
    font-size: 2.1rem;
    font-weight: 500;
    letter-spacing: 0.05em;
    /* color: #fff; */
    line-height: 100px;
    padding-left: 40px;
    position: relative;
}

.ftContactCmnBtnP:before {
    content: '';
    background: no-repeat center center / contain;
    background-image: url(/system_panel/uploads/images/icon_ft_contact.png);
    width: 25px;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
}

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

@media screen and (max-width: 767px) {
    .ft-contact {
        padding: 30px 0;
        background-position: 70% center;
    }

    .ft-contact-cmn {
        padding: 30px 15px;
        background-color: rgba(255, 255, 255, .6);
    }

    .ft-contact-cmn .online-blck {
        margin-bottom: 20px;
    }

    .ft-contact-cmn .ttl-cmn02 {
        margin-bottom: 20px;
    }

    .ft-contact-cmn-btn:before {
        width: 25px;
        right: 30px;
    }

    .ft-contact-cmn-btn p {
        font-size: 1.8rem;
        line-height: 80px;
        padding-left: 30px;
    }

    .ft-contact-cmn-btn p:before {
        width: 20px;
    }
}

/*	フッター
---------------------------------*/
.ft-border {
    border-bottom: solid 1px #fff;
}

.ft-left-top {
    margin-bottom: 20px;
}

.ft-left-top-item {
    padding-right: 15px;
}

.ft-left-top-item:last-of-type {
    padding-right: 0;
}

.ft-nav {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    flex-wrap: wrap;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}

.ft-nav-txt {
    margin-right: 40px;
}

.ft-nav .li {
    margin-bottom: 5px;
}

.ft-nav .li:last-of-type {
    margin-bottom: 0;
}

.ft-nav .li p {
    color: #fff;
}

.ft-nav .li > a:hover{
    opacity: 0.5;
}

.ft-add {
    color: #fff;
}

@media screen and (max-width:1023px) {
    .ft-nav {
        display: none;
    }

    .ft-left {
        width: 100%;
    }

    .ft-left-top.flex-nml {
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
    }

    .ft-left-top-item:first-of-type {
        width: 100%;
        text-align: center;
        padding-right: 0;
        margin-bottom: 20px;
    }

    .ft-add {
        text-align: center;
    }
}

@media screen and (max-width:767px) {
    .ft-left-top-item:first-of-type {
        margin-bottom: 15px;
    }

    .ft-logo {
        width: 180px;
        margin: 0 auto;
    }
}

/*ページトップへ戻るボタン*/
.btn-pagetop {
    width: 50px;
    cursor: pointer;
}

.pagetop-sp {
    display: none;
}

/*コピーライト（ｐタグ）*/
.copyright {
    font-size: 1.2rem;
    font-weight: 500;
    letter-spacing: 0.1em;
    text-align: center;
    color: #fff;
}

@media screen and (max-width:1023px) {
    .btn-pagetop {
        display: none !important;
    }

    .pagetop-sp {
        display: block;
    }

    .pagetop-sp a {
        display: block;
        height: 67.5px;
        background-color: #000;
        text-align: center;
        position: relative;
    }

    .pagetop-sp a div {
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
        width: 25px;
        height: 25px;
    }

    .pagetop-sp a div:before {
        content: '';
        border-top: solid 1px #fff;
        border-left: solid 1px #fff;
        width: 25px;
        height: 25px;
        transform: rotate(45deg);
        position: absolute;
        top: 10px;
        left: 0;
    }
}

@media screen and (max-width:767px) {
    .copyright {
        font-size: 1rem;
    }
}

/*	メイン画像
---------------------------------*/
.main-img-otr {
    position: relative;
}

.main-img-item {
    position: relative;
}

.main-img {
    height: 1000px;
}

.main-img.ojf:before {
    content: none;
}

.main-catch {
    position: absolute;
    top: 66%;
    left: calc((100vw - 1200px) / 2);
    transform: translateY(-50%);
}

.main-catch02 {
    left: 50%;
    transform: translate(-50%, -50%);
}

.top-scroll {
    position: absolute;
    bottom: -80px;
    left: 50%;
    transform: translateX(-50%);
}

@media screen and (max-width:1400px) {
    .main-img {
        height: 70vw;
    }
}

@media screen and (max-width:1230px) {
    .main-catch {
        width: 60%;
        left: 20px;
    }

    .main-catch02 {
        width: 80%;
        left: 50%;
    }
}

@media screen and (max-width:1079px) {
    .main-img {
        height: 700px;
    }

    .main-catch {
        width: 55%;
    }

    .main-catch02 {
        width: 70%;
    }
}

@media screen and (max-width:1023px) {
    .main-img {
        height: 70vw;
    }

    .top-scroll {
        width: 30px;
        bottom: -50px;
    }
}

@media screen and (max-width:767px) {
    .main-img {
        height: 90vw;
    }

    .main-catch {
        width: 70%;
        left: 10px;
    }

    .main-catch02 {
        width: 90%;
        left: 50%;
    }

    .top-scroll {
        width: 23px;
    }
}

/*	トップページ
---------------------------------*/
.por {
    position: relative;
}

.bg-white {
    background-color: #fff;
}

.bg-blue {
    background-color: #060e62;
}

.bg-net {
    background: no-repeat center center / cover;
    background-image: url(/system_panel/uploads/images/bg_recruit_question01.jpg);
}

.top-ttl {
    text-align: center;
    margin-bottom: 40px;
    position: relative;
}

.top-ttl.top-ttl-left {
    text-align: left;
}

.top-ttl.top-ttl-white .ttl-cmn05,
.top-ttl.top-ttl-white .ttl-cmn06 {
    color: #fff;
}

.top-ttl .ttl-cmn05 {
    line-height: 1.2;
}

.online-blck {
    max-width: 500px;
    width: 100%;
    background-color: #000;
    border-radius: 25px;
    text-align: center;
    margin-bottom: 30px;
}

.online-blck .ttl-cmn01 {
    color: #fff;
    line-height: 50px;
}

.bg-top-catch {
    width: 100%;
    height: 74%;
    background-color: #060e62;
    position: absolute;
    top: 0;
    left: 0;
    z-index: -1;
}

.top-catch-txt {
    width: 800px;
    margin-left: auto;
    margin-bottom: 80px;
}

.top-catch-txt .ttl-cmn03 {
    margin-bottom: 20px;
    position: relative;
}

.top-catch-txt .ttl-cmn03 span {
    font-size: 6rem;
    padding: 10px 25px;
    margin-right: 8px;
}

.top-catch-txt .ttl-cmn03 strong br {
    display: none;
}

.top-catch-txt .ttl-cmn04 {
    position: relative;
}

.top-catch-ttl {
    font-family: "Century Gothic", sans-serif;
    font-size: 7.5vw;
    font-weight: 700;
    font-style: italic;
    color: rgba(255, 255, 255, .08);
    line-height: 1;
    position: absolute;
    top: 200px;
    left: 7.5%;
    z-index: -1;
}

.top-catch-ttl01 {
    width: 68.2%;
    position: absolute;
    top: 200px;
    left: 7.5%;
    z-index: -1;
}

.top-catch-slider-item {
    margin: 0 0.35%;
}

.gjs-dashed .top-catch-slider-item {
    max-width: 300px;
}

.top-catch-slider-item:nth-of-type(2n) {
    padding-top: 50px;
}

.top-catch-slider-item:nth-of-type(2n) img {
    padding-top: 50px;
}

.bg-top-about01 {
    width: 74%;
    height: calc(100% - 40px);
    background: no-repeat center center / cover;
    background-image: url(/system_panel/uploads/images/bg_top_about01.jpg);
    position: absolute;
    top: 0;
    left: 0;
    z-index: -2;
}

.bg-top-about02 {
    width: calc(50% + 260px);
    height: 70%;
    background-color: #fff;
    position: absolute;
    bottom: 0;
    right: 0;
    z-index: -1;
}

.top-about-left {
    width: 340px;
    padding-top: 60px;
}

.top-about-right {
    max-width: calc(100% - 360px);
    width: 60%;
}

.top-about-right-item {
    width: 100%;
    margin-bottom: 40px;
}

.top-about-3column-item {
    width: 32%;
}

.top-about-right-item-img {
    margin-bottom: 20px;
}

.top-about-right-item-img.ojf:before {
    padding-top: 60%;
}

.top-about-right-item-ttl {
    margin-bottom: 20px;
    position: relative;
}

.top-about-right-item-ttl:before {
    content: '';
    background: no-repeat center center / contain;
    background-image: url(/system_panel/uploads/images/icon_arrow01.png);
    width: 30px;
    height: 100%;
    position: absolute;
    top: 0;
    right: 0;
}

.top-about-right-item-ttl-eng {
    letter-spacing: 0.05em;
    color: #060e62;
}

.top-about-right-item-txt-p {
    letter-spacing: 0.05em;
}

.top-service-item-otr {
    margin: 18px 25px;
}

.top-service-item {
    max-width: 900px;
    width: 100%;
    background-color: #fff;
    box-shadow: 0px 0px 19px 1px rgba(119, 119, 119, 0.25);
    padding: 60px 30px 70px;
}

.top-service-item .ttl-cmn08 {
    text-align: center;
    margin-bottom: 30px;
}

.top-service-item-inr {
    max-width: 760px;
    width: 100%;
    margin: 0 auto;
    -webkit-flex-direction: row-reverse;
    flex-direction: row-reverse;
}

.top-service-item-left {
    width: 39.5%;
    padding-top: 40px;
}

.top-service-item-left-p {
    letter-spacing: 0.05em;
    margin-bottom: 40px;
}

.top-service-item-left .btn-cmn01 {
    margin-left: 0;
}

.top-service-item-left .btn-cmn01 p {
    line-height: 70px;
}

.top-service-item-right {
    width: 52.6%;
}

.top-service .top-catch-ttl {
    text-align: right;
    color: rgba(169, 161, 255, 0.15);
    top: auto;
    left: auto;
    bottom: 80px;
    right: 6%;
}

.top-service .top-catch-ttl01 {
    width: 54%;
    top: auto;
    left: auto;
    bottom: 80px;
    right: 6%;
}

.bg-top-recruit {
    width: 74%;
    height: 82%;
    background-color: #060e62;
    position: absolute;
    top: 0;
    left: 0;
    z-index: -2;
}

.top-recruit-item01 {
    margin-bottom: 60px;
    position: relative;
}

.top-recruit-item01-txt {
    width: 450px;
    min-height: calc(24vw + 50px);
    padding-top: 70px;
}

.top-recruit-item01-txt .ttl-cmn08 {
    color: #fff;
  	line-height:2;
}

.top-recruit-item01-txt .ttl-cmn08 span {
    padding: 10px 15px;
    margin-right: 20px;
}

.top-recruit-item01-img {
    width: 50%;
    position: absolute;
    top: 0;
    right: 0;
}

.top-recruit-item01-img-inr {
    padding-bottom: 50px;
    position: relative;
}

.top-recruit-item01-img01 {
    width: 61%;
}

.top-recruit-item01-img02 {
    width: 36%;
    position: absolute;
    bottom: 0;
    right: 0;
}

.top-recruit-item01 .top-catch-ttl {
    top: auto;
    bottom: -45px;
}

.top-recruit-item01 .top-catch-ttl01 {
    width: 39.1%;
    top: auto;
    bottom: -15px;
}

.top-recruit-item02 {
    margin-bottom: 50px;
    position: relative;
}

.top-recruit-item02-img {
    width: 50%;
    position: absolute;
    top: 0;
    left: 0;
}

.top-recruit-item02-txt {
    width: 65%;
    min-height: 29vw;
    padding: 70px 16px 60px;
    margin-left: auto;
}

.top-recruit-item02-txt-box {
    padding: 25px;
    margin-bottom: 20px;
    position: relative;
    z-index: 1;
}

.top-recruit-item02-txt-box:before {
    content: "";
    width: 100%;
    height: 100%;
    background-color: #fff;
    border: solid 1px #0b0085;
    transform: skewX(-20deg);
    position: absolute;
    top: 0;
    left: 0;
    z-index: -1;
}

.top-recruit-item02-txt-box:last-of-type {
    margin-bottom: 0;
}

.top-recruit-point-ttl01 {
    font-family: "Noto Serif JP";
    font-size: 2.1rem;
    font-weight: 500;
    letter-spacing: 0.025em;
    color: #060e62;
    line-height: 1;
    transform: skewX(-10deg);
}

.top-recruit-point-ttl02 {
    font-size: 3.6rem;
    padding-left: 10px;
}

.top-recruit-point-txt {
    flex: 1;
    padding-left: 20px;
}

.top-recruit-point-txt-p {
    display: inline;
    font-size: 1.8rem;
    font-weight: 700;
    color: #060e62;
    border-bottom: solid 1px #060e62;
    padding-bottom: 3px;
}

.top-recruit-item02 .top-catch-ttl {
    text-align: right;
    color: rgba(169, 161, 255, 0.15);
    top: auto;
    left: auto;
    bottom: 0;
    right: 6%;
}

.top-recruit-item02 .top-catch-ttl01 {
    width: 44%;
    top: auto;
    left: auto;
    bottom: 0;
    right: 6%;
}

.top-briefing {
    max-width: 1680px;
    width: 90%;
    background-color: #fff;
    box-shadow: 0px 0px 20px 0px rgba(0, 0, 0, 0.05);
    padding: 70px calc((100vw - 1200px) / 2) 70px 80px;
    margin-left: auto;
}

.top-briefing-inr {
    max-width: 1110px;
    width: 100%;
    padding: 0;
    margin: 0 auto;
}

.top-briefing-item01 {
    margin-bottom: 30px;
}

.top-briefing-item01-txt {
    width: 540px;
}

.top-briefing-item01-txt-ttl {
    font-size: 7.6rem;
    font-weight: 700;
    line-height: 1.3;
    color: #000;
}

.top-briefing-item01-img {
    width: calc(100% - 570px);
}

.top-briefing-item02 {
    margin-bottom: 70px;
}

.top-briefing-item02-left {
    width: 430px;
}

.top-briefing-item02-right {
    width: calc(100% - 470px);
}

.top-briefing-item02-circle {
    width: 130px;
    height: 130px;
    border-radius: 50%;
    background-color: #060e62;
    text-align: center;
    margin-right: 20px;
    position: relative;
}

.top-briefing-item02-circle:last-of-type {
    margin-right: 0;
}

.top-briefing-item02-circle .ttl-cmn09 {
    width: 100%;
    line-height: 1.3;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}

.top-blog-ttl {
    margin-bottom: 50px;
}

.top-blog-ttl01 .ttl-cmn10 {
    line-height: 1;
}

.top-blog-ttl01 .ttl-cmn06 {
    font-weight: 500;
    padding-left: 15px;
}

.top-blog-ttl .btn-cmn02 {
    margin-right: 0;
}

.top-news .webgene-blog {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    flex-wrap: wrap;
}

.top-news .webgene-item {
    width: calc((100% - 60px) / 3);
    margin-right: 30px;
}

.top-news .webgene-item:nth-of-type(3n) {
    margin-right: 0;
}

.top-news .webgene-item .news-img {
    border: solid 1px #ccc;
    margin-bottom: 20px;
    position: relative;
}

.top-news .webgene-item .news-img .cate {
    background-color: #000;
    width: 150px;
    color: #fff;
    line-height: 40px;
    text-align: center;
    position: absolute;
    bottom: 0;
    left: 0;
    z-index: 1;
}

.top-news .webgene-item .news-img figure.ojf:before {
    padding-top: 73.7%;
    background: no-repeat center center / cover;
    background-image: url(/system_panel/uploads/images/img_no.jpg);
}

.top-news .webgene-item .blogdate {
    font-weight: 700;
    color: #666;
    margin-bottom: 10px;
}

.bg-top-sns {
    background: no-repeat center center / cover;
    background-image: url(/system_panel/uploads/images/bg_ft_sns.jpg);
}

.top-sns-ttl {
    text-align: center;
    margin-bottom: 30px;
}

.top-sns-btn01 {
    max-width: 330px;
    width: 100%;
    background-color: #fff;
    border: solid 1px #666;
    text-align: center;
    margin-right: 30px;
}

.top-sns-btn01:last-of-type {
    margin-right: 0;
}

.top-sns-btn01 a {
    display: block;
}

.top-sns-btn01 .ttl-cmn01 {
    display: inline;
    color: #000;
    line-height: 80px;
    padding-left: 50px;
    position: relative;
}

.top-sns-btn01 .ttl-cmn01:before {
    content: '';
    background: no-repeat center center / contain;
    background-image: url(/system_panel/uploads/images/icon_twitter03.png);
    width: 40px;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
}

.top-sns-btn02 a {
    height: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    flex-wrap: wrap;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-align-items: center;
    align-items: center;
}

@media screen and (max-width:1800px) {
    .top-briefing {
        padding-left: 50px;
    }
}

@media screen and (max-width:1300px) {
    .top-briefing {
        padding-right: 50px;
    }
}

@media screen and (max-width:1079px) {
    .top-catch-ttl {
        left: 0;
    }

    .top-catch-ttl01 {
        left: 0;
    }

    .top-about-right-item .ttl-cmn07 {
        font-size: 2.2rem;
    }

    .top-about-right-item-ttl-eng {
        padding-left: 10px;
    }

    .top-service .top-catch-ttl {
        right: 0;
    }

    .top-service .top-catch-ttl01 {
        width: 60%;
        right: 0;
    }

    .top-recruit-item01 .top-catch-ttl {
        left: 0;
    }

    .top-recruit-item01 .top-catch-ttl01 {
        width: 42%;
        left: 0;
    }

    .top-recruit-item02 .top-catch-ttl {
        right: 0;
    }

    .top-recruit-item02 .top-catch-ttl01 {
        width: 50%;
        right: 0;
    }

    .top-briefing {
        width: 95%;
        padding: 70px 30px;
    }
}

@media screen and (max-width:1023px) {
    .top-catch-ttl {
        font-size: 7rem;
    }

    .top-catch-ttl01 {
        width: 95%;
    }

    .top-catch-txt {
        width: 100%;
    }

    .top-catch-txt .ttl-cmn03 span {
        padding: 10px;
    }

    .top-about.flex-btw {
        display: block;
    }

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

    .top-about-right {
        max-width: 680px;
        width: 100%;
        margin: 0 auto;
    }

    .bg-top-about02 {
        width: 97%;
        height: 55%;
    }

    .top-service-item-inr.flex-btw {
        display: block;
    }

    .top-service-item-left {
        width: 100%;
        padding-top: 0;
    }

    .top-service-item-right {
        max-width: 400px;
        width: 100%;
        margin: 0 auto 30px;
    }

    .top-service-item-left .btn-cmn01 {
        margin: 0 auto;
    }

    .top-recruit-item01-txt {
        width: 100%;
        padding-top: 0;
        margin-bottom: 80px;
    }

    .top-recruit-item01-img {
        max-width: 1000px;
        width: 100%;
        margin: 0 auto;
        position: relative;
    }

    .top-recruit-item01 .top-catch-ttl {
        top: 220px;
        bottom: auto;
    }

    .top-recruit-item01 .top-catch-ttl01 {
        width: 50%;
        top: 220px;
        bottom: auto;
    }

    .top-recruit-item02-img {
        max-width: 1000px;
        width: 100%;
        margin: 0 auto;
        position: relative;
    }

    .top-recruit-item02-txt {
        max-width: 650px;
        width: 100%;
        min-height: auto;
        padding: 40px 0;
        margin: 0 auto;
    }

    .top-recruit-item02 .top-catch-ttl01 {
        width: 60%;
    }

    .top-briefing-item01.flex-btw {
        display: block;
    }

    .top-briefing-item01-txt {
        width: 100%;
        margin-bottom: 30px;
    }

    .top-briefing-item01-txt .online-blck {
        margin: 0 auto 30px;
    }

    .top-briefing-item01-txt-ttl {
        text-align: center;
    }

    .top-briefing-item01-img {
        width: 100%;
        text-align: center;
    }

    .top-briefing-item02.flex-btw {
        display: block;
    }

    .top-briefing-item02-left {
        width: 100%;
        margin-bottom: 30px;
    }

    .top-briefing-item02-right {
        width: 100%;
    }

    .bg-top-recruit {
        width: 95%;
    }

    .top-news {
        margin-bottom: 50px;
    }
}

@media screen and (max-width:767px) {
    .top-ttl {
        margin-bottom: 20px;
    }

    .top-ttl.top-ttl-mb70 {
        margin-bottom: 40px;
    }

    .online-blck {
        max-width: 280px;
    }

    .online-blck .ttl-cmn01 {
        line-height: 40px;
    }

    .top-catch-ttl {
        font-size: 4rem;
    }

    .top-catch-txt {
        margin-bottom: 40px;
    }

    .top-catch-txt .ttl-cmn03 span {
        font-size: 3rem;
    }

    .top-catch-txt .ttl-cmn03 strong br {
        display: block;
    }

    .bg-top-about01 {
        width: 90%;
    }

    .bg-top-about02 {
        height: 80%;
    }

    .top-about-right.flex-btw {
        display: block;
    }

    .top-about-right-item,
    .top-about-3column-item {
        max-width: 300px;
        width: 100%;
        margin: 0 auto 20px;
    }

    .top-about-3column-item:last-of-type {
        margin-bottom: 0;
    }

    .top-about-right-item-img {
        margin-bottom: 10px;
    }

    .top-about-right-item-ttl {
        margin-bottom: 5px;
    }

    .top-about-right-item .ttl-cmn07 {
        font-size: 2rem;
    }

    .top-about-right-item-ttl:before {
        width: 20px;
    }

    .top-about-right-item-ttl-eng {
        padding: 0 0 4px 8px;
    }

    .top-service-item-otr {
        margin: 18px 10px;
    }

    .top-service-item {
        padding: 40px 15px;
    }

    .top-service-item .ttl-cmn08 {
        margin-bottom: 20px;
    }

    .top-service-item-right {
        margin-bottom: 15px;
    }

    .top-service-item-left-p {
        margin-bottom: 20px;
    }

    .top-service-item-left .btn-cmn01 p {
        line-height: 50px;
    }

    .top-service .top-catch-ttl {
        bottom: 50px;
    }

    .top-service .top-catch-ttl01 {
        width: 85%;
        bottom: 50px;
    }

    .top-recruit-item01 {
        margin-bottom: 40px;
    }

    .top-recruit-item01-txt {
        margin-bottom: 50px;
    }
	.top-recruit-item01-txt .ttl-cmn08 {
    	line-height: 2.3;
	}
    .top-recruit-item01-txt .ttl-cmn08 span {
        padding: 10px;
        margin-right: 10px;
    }

    .top-recruit-item01 .top-catch-ttl {
        top: 140px;
    }

    .top-recruit-item01 .top-catch-ttl01 {
        width: 60%;
        top: 140px;
    }

    .top-recruit-item01-img-inr {
        padding-bottom: 30px;
    }

    .top-recruit-item02 {
        margin-bottom: 30px;
    }

    .top-recruit-item02-txt {
        width: 95%;
    }

    .top-recruit-item02-txt-box {
        padding: 20px;
    }

    .top-recruit-item02-txt-box.flex-nml {
        display: block;
    }

    .top-recruit-item02-txt-box:before {
        transform: skewX(-10deg);
    }

    .top-recruit-point-txt {
        padding: 0;
        margin-top: 10px;
    }

    .top-recruit-point-ttl01 {
        font-size: 1.8rem;
    }

    .top-recruit-point-ttl02 {
        font-size: 2.8rem;
    }

    .top-recruit-point-txt-p {
        font-size: 1.6rem;
    }

    .top-recruit-item02 .top-catch-ttl01 {
        width: 70%;
    }

    .top-briefing {
        padding: 40px 15px 30px;
    }

    .top-briefing-item01-txt .online-blck {
        margin-bottom: 20px;
    }

    .top-briefing-item01-txt-ttl {
        font-size: 3.5rem;
    }

    .top-briefing-item02 {
        margin-bottom: 30px;
    }

    .top-briefing-item02-left {
        margin-bottom: 20px;
    }

    .top-briefing-item02-circle {
        width: 100px;
        height: 100px;
        margin-right: 10px;
    }

    .top-briefing-item02-circle .ttl-cmn09 {
        font-size: 1.6rem;
    }

    .top-blog-ttl.flex-btw {
        display: block;
    }

    .top-blog-ttl {
        margin-bottom: 30px;
    }

    .top-blog-ttl01.flex-nml {
        display: block;
    }

    .top-blog-ttl01 .ttl-cmn06 {
        padding: 0;
    }

    .top-news .webgene-blog {
        display: block;
    }

    .top-news .webgene-item {
        max-width: 380px;
        width: 100%;
        margin: 0 auto 30px;
    }

    .top-news .webgene-item:last-of-type {
        margin-right: auto;
    }

    .top-news .webgene-item .news-img .cate {
        width: 100px;
    }

    .top-news .webgene-item .news-img {
        margin-bottom: 10px;
    }

    .top-news .webgene-item .blogdate {
        margin-bottom: 0;
    }

    .top-sns-ttl {
        margin-bottom: 10px;
    }

    .top-sns-btn-list.flex-cnt {
        display: block;
    }

    .top-sns-btn01 {
        margin: 0 auto 15px;
    }

    .top-sns-btn01:last-of-type {
        margin: 0 auto;
    }

    .top-sns-btn01 .ttl-cmn01 {
        line-height: 60px;
        padding-left: 40px;
    }

    .top-sns-btn01 .ttl-cmn01:before {
        width: 30px;
    }

    .top-sns-btn01.top-sns-btn02 {
        height: 60px;
    }

    .top-sns-btn01.top-sns-btn02 img {
        width: 140px;
    }
}

/*	下層ヘッダー
---------------------------------*/
.bg-subhd {
    height: 600px;
    background: no-repeat center center / cover;
    background-image: url(/system_panel/uploads/images/img_sub01.jpg);
    position: relative;
}

.sub-ttl-otr {
    height: 600px;
    position: relative;
}

.subhd-ttl {
    width: 100%;
    text-align: center;
    position: absolute;
    top: 60%;
    left: 50%;
    transform: translate(-50%, -50%);
}

.subttl {
    font-family: 'BIZ UDPMincho', serif;
    font-size: 5rem;
    letter-spacing: 0.075em;
    color: #fff;
    position: relative;
}

.subttl02 {
    font-family: 'Marcellus', serif;
    font-size: 4rem;
    letter-spacing: 0.075em;
    color: #fff;
}

@media screen and (max-width:1200px) {
    .bg-subhd {
        height: 400px;
    }

    .sub-ttl-otr {
        height: 400px;
    }
}

@media screen and (max-width:767px) {
    .bg-subhd {
        height: 200px;
    }

    .sub-ttl-otr {
        height: 200px;
    }

    .subhd-ttl {}

    .subttl {
        font-size: 3.2rem;
    }

    .subttl02 {
        font-size: 2rem;
    }
}

/*	私たちについて
---------------------------------*/
.top-ttl02 {
    text-align: center;
    margin-bottom: 50px;
}

.top-ttl02 .ttl-cmn06 {
    font-weight: 400;
}

.top-ttl02.white .ttl-cmn10,
.top-ttl02.white .ttl-cmn06 {
    color: #fff;
}

.bg-vision {
    background-color: #060e62;
    width: 74%;
    height: 850px;
    max-height: calc(100% - 50px);
    position: absolute;
    top: 0;
    left: 0;
    z-index: -1;
}

.vision-txt {
    width: 54.17%;
    min-height: 40vw;
    padding: 0 0 90px 50px;
}

.vision-txt-img {
    margin-bottom: 40px;
}

.vision-txt-p {
    letter-spacing: 0.05em;
    color: #fff;
}

.vision-img {
    width: 45%;
    position: absolute;
    top: 0;
    right: 0;
}

.vision-img-inr {
    padding-bottom: 14vw;
    position: relative;
}

.vision-img01 {
    width: 85.6%;
}

.vision-img02 {
    width: 53.3%;
    position: absolute;
    bottom: 0;
    right: 0;
}

.bg-feature {
    background: no-repeat center center / cover;
    background-image: url(/system_panel/uploads/images/bg_features01.jpg);
    width: 100%;
    height: 68%;
    position: absolute;
    bottom: 0;
    left: 0;
    z-index: -1;
}

.feature-item {
    margin-bottom: 70px;
    position: relative;
}

.feature-item-img {
    width: 50%;
    position: absolute;
    top: 0;
    left: 0;
}

.feature-item-inr {
    min-height: 30vw;
    padding-top: 6vw;
}

.feature-item-box {
    width: 56.7%;
    background-color: #fff;
    box-shadow: 0px 0px 12.75px 2.25px rgba(0, 0, 0, 0.03);
    padding: 50px 7% 50px 50px;
    margin-left: auto;
    position: relative;
}

.feature-item-box-ttl01 {
    padding: 5px 0 15px;
    margin-bottom: 30px;
    position: relative;
}

.feature-item-box-ttl01:before {
    content: '';
    background: no-repeat center center / contain;
    background-image: url(/system_panel/uploads/images/img_ribbon.png);
    width: 250px;
    height: 70px;
    position: absolute;
    top: 0;
    left: -70px;
}

.feature-item-box-point {
    font-family: "Noto Serif JP";
    font-size: 2.4rem;
    font-weight: 500;
    font-style: italic;
    letter-spacing: 0.025em;
    color: #fff;
    line-height: 1;
    position: relative;
}

.feature-item-box-eng {
    padding: 0 10px 5px 0;
}

.feature-item-box-eng:before {
    content: "";
    background-color: #fff;
    width: 65px;
    height: 1px;
    position: absolute;
    bottom: 0;
    right: 0;
}

.feature-item-box-num {
    font-size: 4rem;
}

.feature-item-box-ttl02.ttl-cmn08 {
    font-family: "Noto Serif JP";
    font-weight: 500;
    font-style: italic;
    letter-spacing: 0.025em;
    margin-bottom: 20px;
}

.feature-item-box-p {
    letter-spacing: 0.05em;
    padding-left: 50px;
}

.feature-item:nth-of-type(2n) .feature-item-img {
    left: auto;
    right: 0;
}

.feature-item:nth-of-type(2n) .feature-item-box {
    margin-left: 20px;
}

.feature-btn.btn-cmn01 {
    width: calc((100% - 50px) / 2);
    margin: 0 50px 0 0;
}

.feature-btn.btn-cmn01:last-of-type {
    margin-right: 0;
}

.company-table-th {
    width: 22%;
    border-top: solid 1px #060e62;
    font-weight: 700;
    letter-spacing: 0.05em;
    color: #060e62;
    padding: 20px 10px 20px 30px;
}

.company-table-tr:last-of-type .company-table-th {
    border-bottom: solid 1px #060e62;
}

.company-table-td {
    width: 78%;
    border-top: solid 1px #ccc;
    padding: 20px 10px 20px 60px;
}

.company-table-tr:last-of-type .company-table-td {
    border-bottom: solid 1px #ccc;
}

.history-inr {
    padding: 0 15px;
}

.access-map {
    width: 100%;
    height: 500px;
    margin-bottom: 50px;
}

.access-map iframe {
    width: 100%;
    height: 500px;
}

.access-map-p {
    font-weight: 700;
    letter-spacing: 0.05em;
}

@media screen and (max-width:1079px) {
    .vision-txt {
        padding: 0 0 90px 0;
    }

    .feature-item-box {
        padding: 50px 30px;
    }

    .feature-item-box-ttl01:before {
        left: -50px;
    }

    .feature-item-box-p {
        padding-left: 30px;
    }
}

@media screen and (max-width:1023px) {
    .bg-vision {
        width: 95%;
    }

    .vision-txt {
        width: 95%;
        padding-bottom: 60px;
    }

    .vision-img {
        max-width: 900px;
        width: 100%;
        margin: 0 auto;
        position: relative;
    }

    .feature-item-img {
        width: 80%;
    }

    .feature-item-inr {
        min-height: auto;
        padding-top: 48vw;
    }

    .feature-item-box {
        width: 80%;
    }

    .feature-item-box {
        padding: 30px;
    }

    .company-table-th {
        width: 24%;
        padding: 20px 10px;
    }

    .company-table-td {
        width: 76%;
        padding: 20px 10px 20px 30px;
    }

    .access-map {
        height: 300px;
    }

    .access-map iframe {
        height: 300px;
    }
}

@media screen and (max-width:767px) {
    .top-ttl02 {
        margin-bottom: 30px;
    }

    .bg-vision {
        height: 660px;
    }

    .vision-img-inr {
        padding-bottom: 30vw;
    }

    .vision-txt {
        padding-bottom: 40px;
    }

    .vision-txt-img {
        margin-bottom: 20px;
    }

    .feature-item {
        margin-bottom: 50px;
    }

    .feature-item-box {
        width: 95%;
        padding: 30px 20px;
    }

    .feature-item-box-ttl01 {
        padding: 6px 0 12px;
        margin-bottom: 20px;
    }

    .feature-item-box-ttl01:before {
        width: 200px;
        height: 56px;
        left: -36px;
    }

    .feature-item-box-point {
        font-size: 1.8rem;
    }

    .feature-item-box-num {
        font-size: 3rem;
    }

    .feature-item-box-eng:before {
        width: 50px;
    }

    .feature-item-box .ttl-cmn08 {
        margin-bottom: 10px;
    }

    .feature-item-box-p {
        padding-left: 20px;
    }

    .feature-item:nth-of-type(2n) .feature-item-box {
        margin-left: 16px;
    }

    .feature-btn-list.flex-cnt {
        display: block;
    }

    .feature-btn.btn-cmn01 {
        width: 100%;
        margin: 0 auto 20px;
    }

    .feature-btn.btn-cmn01:last-of-type {
        margin: 0 auto;
    }

    .company-table-tr.flex-nml {
        display: block;
    }

    .company-table-th {
        width: 100%;
        padding: 10px 0 0;
    }

    .company-table-tr:last-of-type .company-table-th {
        border-bottom: none;
    }

    .company-table-td {
        width: 100%;
        border-top: none;
        padding: 0 0 10px;
    }

    .company-table-tr:last-of-type .company-table-td {
        border-bottom: solid 1px #060e62;
    }

    .access-map {
        height: 200px;
        margin-bottom: 30px;
    }

    .access-map iframe {
        height: 200px;
    }
}

/*	正社員希望の方
---------------------------------*/
.attraction-item {
    padding-bottom: 70px;
    margin-bottom: 60px;
    position: relative;
}

.attraction-item:last-of-type {
    margin-bottom: 0;
}

.bg-attraction {
    background: no-repeat center center / cover;
    background-image: url(/system_panel/uploads/images/bg_features01.jpg);
    width: 74%;
    height: 75%;
    position: absolute;
    bottom: 0;
    left: 0;
    z-index: -1;
}

.attraction-item-box {
    background-color: #fff;
    box-shadow: 0px 0px 12.75px 2.25px rgba(0, 0, 0, 0.03);
    padding: 50px 15px 70px;
}

.attraction-item-box-inr {
    max-width: 1060px;
    width: 100%;
    margin: 0 auto;
}

.attraction-item-box-circle {
    width: 140px;
    height: 140px;
    border-radius: 50%;
    background-color: #060e62;
    text-align: center;
    position: relative;
}

.attraction-item-box-circle .ttl-cmn11 {
    font-style: italic;
    line-height: 1;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}

.attraction-item-box-ttl {
    margin-bottom: 50px;
}

.attraction-item-box-ttl .feature-item-box-ttl02.ttl-cmn08 {
    width: calc(100% - 140px);
    padding-left: 50px;
    margin: 0;
}

.attraction-item-box-content-txt {
    width: 42.5%;
    padding-top: 50px;
}

.attraction-item-box-content-txt p {
    letter-spacing: 0.05em;
}

.attraction-item-box-content-img {
    width: 51.9%;
    text-align: center;
}

.attraction-item:nth-of-type(2n) .bg-attraction {
    left: auto;
    right: 0;
}

.attraction-item:nth-of-type(2n-1) .attraction-item-box-content {
    -webkit-flex-direction: row-reverse;
    flex-direction: row-reverse;
}

.online-blck-fulltime {
    margin: 0 auto 50px;
}

.outline-table {
    margin-bottom: 70px;
}

@media screen and (max-width:1023px) {
    .attraction-item-box-circle {
        width: 120px;
        height: 120px;
    }

    .attraction-item-box-ttl .feature-item-box-ttl02.ttl-cmn08 {
        width: calc(100% - 120px);
        padding-left: 30px;
    }
}

@media screen and (max-width:767px) {
    .attraction-item {
        padding-bottom: 40px;
        margin-bottom: 40px;
    }

    .attraction-item-box {
        padding: 30px 10px 40px;
    }

    .attraction-item-box-ttl.flex-nml {
        display: block;
    }

    .attraction-item-box-ttl {
        margin-bottom: 30px;
    }

    .attraction-item-box-circle {
        width: 80px;
        height: 80px;
        margin-bottom: 20px;
    }

    .attraction-item-box-ttl .feature-item-box-ttl02.ttl-cmn08 {
        width: 100%;
        padding: 0;
    }

    .attraction-item-box-content.flex-btw {
        display: block;
    }

    .attraction-item-box-content-img {
        width: 100%;
    }

    .attraction-item-box-content-txt {
        width: 100%;
        padding-top: 20px;
    }

    .online-blck-fulltime {
        margin: 0 auto 30px;
    }
}

/*	働き方紹介
---------------------------------*/
.flow-annotation {
    letter-spacing: 0.05em;
    text-align: center;
    margin-bottom: 40px;
}

.flow-item {
    border-top: solid 2px #ccc;
    padding: 50px 0;
}

.flow-item:last-of-type {
    border-bottom: solid 2px #ccc;
}

.flow-item-left {
    width: 58%;
}

.flow-item-left-ttl {
    margin-bottom: 30px;
}

.flow-item-left-time {
    width: 150px;
    background-color: #000;
    color: #fff;
    line-height: 40px;
    text-align: center;
}

.flow-item-left-ttl .ttl-cmn07 {
    width: calc(100% - 150px);
    color: #060e62;
    line-height: 1.67;
    padding-left: 40px;
}

.flow-item-left-p {
    letter-spacing: 0.05em;
}

.flow-item-right {
    width: 38%;
}

.movie-list {
    margin-bottom: 50px;
}

.movie-item {
    width: calc((100% - 90px) / 3);
    height: 300px;
    margin-right: 45px;
}

.movie-item:last-of-type {
    margin-right: 0;
}

.movie-item iframe {
    width: 100%;
    height: 100%;
}

@media screen and (max-width:1023px) {
    .movie-item {
        width: calc((100% - 40px) / 3);
        height: 200px;
        margin-right: 20px;
    }
}

@media screen and (max-width:767px) {
    .flow-annotation {
        margin-bottom: 20px;
    }

    .flow-item.flex-btw {
        display: block;
    }

    .flow-item {
        padding: 30px 0;
    }

    .flow-item-left {
        width: 100%;
        margin-bottom: 20px;
    }

    .flow-item-left-ttl {
        margin-bottom: 15px;
    }

    .flow-item-left-time {
        width: 100px;
        line-height: 35px;
    }

    .flow-item-left-ttl .ttl-cmn07 {
        width: calc(100% - 100px);
        padding-left: 20px;
    }

    .flow-item-right {
        width: 100%;
        text-align: center;
    }

    .movie-list.flex-nml {
        display: block;
    }

    .movie-list {
        margin-bottom: 30px;
    }

    .movie-item {
        width: 100%;
        height: 53.3vw;
        margin: 0 auto 20px;
    }

    .movie-item:last-of-type {
        margin: 0 auto;
    }
}

/*	採用情報
---------------------------------*/
.bg-recruit {
    background-color: #060e62;
    width: 74%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    z-index: -1;
}

.recruit-item {
    position: relative;
}

.recruit-item-txt {
    width: 41.7%;
}

.recruit-item-txt .ttl-cmn08 {
    color: #fff;
    margin-bottom: 50px;
}

.recruit-item-txt .ttl-cmn08 span {
    padding: 10px;
    margin-right: 5px;
}

.recruit-item-txt .ttl-cmn04 {
    margin-bottom: 50px;
}

.recruit-item-txt .btn-cmn01 {
    margin-left: 0;
}

.recruit-item .top-catch-ttl01 {
    width: 39.1%;
    top: 270px;
}

.recruit-attraction-item {
    width: calc((100% - 1px) / 2);
    background: no-repeat center center / cover;
    background-image: url(/system_panel/uploads/images/bg_recruit01.jpg);
    padding: 5.5vw 15px 6vw 20vw;
}

.recruit-attraction-item:nth-of-type(2) {
    background-image: url(/system_panel/uploads/images/bg_recruit02.jpg);
}

.recruit-attraction-item-inr {
    max-width: 430px;
    width: 100%;
}

.recruit-attraction-item .ttl-cmn08 {
    letter-spacing: 0.075em;
    color: #fff;
    margin-bottom: 40px;
}

.recruit-attraction-item .ttl-cmn04 {
    margin-bottom: 40px;
}

.recruit-attraction-item .btn-cmn01 {
    margin-left: 0;
}

.recruit-briefing .top-briefing-item02 {
    margin: 0;
}

.bg-recruit-question {
    background: no-repeat center center / cover;
    background-image: url(/system_panel/uploads/images/bg_recruit_question01.jpg);
    width: 100%;
    height: 88%;
    position: absolute;
    top: 0;
    left: 0;
    z-index: -1;
}

.recruit-question-ttl.ttl-cmn07 {
    text-align: center;
    margin-bottom: 60px;
}

.recruit-question-ttl.ttl-cmn07 span {
    font-size: 3rem;
}

.recruit-question-item-img {
    width: 50%;
    text-align: center;
    padding-top: 20px;
}

.recruit-question-item-right {
    width: 44%;
    padding: 0 10px;
}

.recruit-question-item-txt {
    padding: 25px 20px 25px 50px;
    margin-bottom: 20px;
    position: relative;
    z-index: 1;
}

.recruit-question-item-txt:last-of-type {
    margin-bottom: 0;
}

.recruit-question-item-txt:before {
    content: "";
    width: 100%;
    height: 100%;
    background-color: #fff;
    border: solid 1px #0b0085;
    transform: skewX(-10deg);
    position: absolute;
    top: 0;
    left: 0;
    z-index: -1;
}

.recruit-question-item-txt-p {
    padding-left: 60px;
    position: relative;
}

.recruit-question-item-txt-p:before {
    content: "";
    background: no-repeat center center / contain;
    background-image: url(/system_panel/uploads/images/icon_check.png);
    width: 30px;
    height: 30px;
    position: absolute;
    top: 5px;
    left: 0;
}

.recruit-question-item-txt .ttl-cmn04 {
    display: inline;
    border-bottom: solid 1px #060e62;
    letter-spacing: 0;
    color: #060e62;
    padding-bottom: 5px;
}

.recruit-question-box.feature-item-box {
    width: calc(100% - 20px);
    margin: 0 0 50px 20px;
}

.recruit-question-box.feature-item-box:last-of-type {
    margin-bottom: 0;
}

.faq {
    margin-bottom: 50px;
}

.faq:last-of-type {
    margin-bottom: 0;
}

.faq-q {
    padding-left: 100px;
    margin-bottom: 20px;
    position: relative;
}

.faq-q p {
    font-size: 1.8rem;
    display: flex;
    align-items: center;
    min-height: 70px;
}

.faq-q:before {
    content: '';
    background: no-repeat center center / contain;
    background-image: url(/system_panel/uploads/images/icon_Q.png);
    width: 70px;
    height: 70px;
    position: absolute;
    top: 0;
    left: 0;
}

.faq-a {
    max-width: 1100px;
    width: 92%;
    margin-left: auto;
    background-color: #f5f5f5;
    padding: 30px 40px 30px 150px;
    position: relative;
}

.faq-a p {
    min-height: 70px;
}

.faq-a:before {
    content: '';
    background: no-repeat center center / contain;
    background-image: url(/system_panel/uploads/images/icon_A.png);
    width: 70px;
    height: 70px;
    position: absolute;
    top: 30px;
    left: 50px;
}

.faq-btn.btn-cmn01 {
    max-width: 600px;
}

.faq-btn.btn-cmn01 p {
    font-size: 1.8rem;
    line-height: 1.875;
    padding: 35px 0;
}

.recruitNavLinkP::after {
    content: "▼";
    position: absolute;
    top: 0;
    left: -20px;
}

@media screen and (max-width:1079px) {
    .recruit-item-txt {
        width: 45%;
    }

    .recruit-item .top-catch-ttl01 {
        width: 42%;
    }

    .recruit-attraction-item {
        padding: 5.5vw 15px 6vw 13vw;
    }
}

@media screen and (max-width:1023px) {
    .bg-recruit {
        width: 95%;
    }

    .recruit-item-txt {
        width: 93%;
        margin-bottom: 50px;
    }

    .recruit-item-txt .btn-cmn01 {
        margin: 0 auto;
    }

    .recruit-item .top-catch-ttl01 {
        width: 55%;
    }

    .recruit-attraction.flex-btw {
        display: block;
    }

    .recruit-attraction-item {
        width: 100%;
        padding: 10vw 15px 6vw 40vw;
    }

    .recruit-question-item.flex-btw {
        display: block;
    }

    .recruit-question-item-img {
        width: 100%;
        padding: 0;
        margin-bottom: 40px;
    }

    .recruit-question-item-img img {
        width: 200px;
    }

    .recruit-question-item-right {
        max-width: 420px;
        width: 100%;
        margin: 0 auto;
    }
}

@media screen and (max-width:767px) {
    .recruit-item-txt .ttl-cmn08 {
        line-height: 2.3;
        margin-bottom: 30px;
    }

    .recruit-item-txt .ttl-cmn04 {
        margin-bottom: 30px;
    }

    .recruit-item .top-catch-ttl01 {
        width: 65%;
    }

    .recruit-attraction-item {
        padding: 10vw 15px 6vw 28vw;
    }

    .recruit-attraction-item .ttl-cmn08 {
        margin-bottom: 20px;
    }

    .recruit-attraction-item .ttl-cmn04 {
        font-size: 1.4rem;
        margin-bottom: 20px;
    }

    .recruit-briefing .online-blck {
        max-width: 320px;
    }

    .recruit-question-ttl.ttl-cmn07 {
        margin-bottom: 30px;
    }

    .recruit-question-ttl.ttl-cmn07 span {
        font-size: 2.2rem;
    }

    .recruit-question-item-img {
        margin-bottom: 20px;
    }

    .recruit-question-item-img img {
        width: 150px;
    }

    .recruit-question-item-txt {
        padding: 15px 15px 20px;
        margin-bottom: 15px;
    }

    .recruit-question-item-txt-p {
        padding-left: 40px;
    }

    .recruit-question-item-txt-p:before {
        width: 25px;
        height: 25px;
        top: 8px;
    }

    .recruit-question-box.feature-item-box {
        width: calc(100% - 16px);
        margin: 0 0 30px 16px;
    }

    .faq {
        margin-bottom: 30px;
    }

    .faq-q {
        padding-left: 50px;
    }

    .faq-q p {
        font-size: 1.4rem;
        min-height: 35px;
    }

    .faq-q:before {
        width: 35px;
        height: 35px;
    }

    .faq-a {
        width: 100%;
        padding: 15px 10px 10px 60px;
    }

    .faq-a p {
        min-height: 35px;
    }

    .faq-a:before {
        width: 35px;
        height: 35px;
        top: 15px;
        left: 10px;
    }

    .faq-btn.btn-cmn01 p {
        padding: 15px 0;
    }
}

/*	サービス案内
---------------------------------*/
.service-catch-h {
    text-align: center;
    margin-bottom: 30px;
}

.service-catch-h .ttl-cmn08 {
    display: inline;
    border-bottom: solid 1px #060e62;
}

.service-item {
    background-color: #fff;
    padding: 70px 15px;
    margin-bottom: 70px;
}

.service-item:last-of-type {
    margin-bottom: 0;
}

.service-item .online-blck {
    margin: 0 auto 50px;
}

.service-item-img {
    width: 50%;
}

.service-item-txt {
    width: 43%;
    padding-top: 20px;
}

.service-item-txt-p {
    letter-spacing: 0.05em;
    padding-left: 15px;
    position: relative;
}

/* .service-item-txt-p:before {
    content: "・";
    position: absolute;
    top: 0;
    left: 0;
} */

.service-catch-p02.ttl-cmn04 {
    font-weight: 700;
    letter-spacing: 0.025em;
    color: #000;
    text-align: center;
    margin-bottom: 40px;
}

.service-item:nth-of-type(2n) .service-item-inr {
    -webkit-flex-direction: row-reverse;
    flex-direction: row-reverse;
}

@media screen and (max-width:1079px) {
    .service-catch-h .ttl-cmn08 {
        font-size: 2.8rem;
    }
}

@media screen and (max-width:767px) {
    .service-catch-h {
        margin-bottom: 20px;
    }

    .service-catch-h .ttl-cmn08 {
        font-size: 2rem;
    }

    .service-item {
        padding: 40px 15px;
    }

    .service-item .online-blck {
        margin: 0 auto 30px;
    }

    .service-item-inr.flex-btw {
        display: block;
    }

    .service-item-img {
        width: 100%;
        text-align: center;
    }

    .service-item-txt {
        width: 100%;
    }

    .service-catch-p02.ttl-cmn04 {
        text-align: left;
        margin-bottom: 20px;
    }
}

/*	スタッフ紹介
---------------------------------*/
.staff-list {
    margin-bottom: 100px;
}

.staff-list:last-of-type {
    margin-bottom: 0;
}

.staff-department {
    width: 320px;
    text-align: center;
    padding: 25px 0;
    margin: 0 0 50px 20px;
    position: relative;
}

.staff-department:before {
    content: "";
    width: 100%;
    height: 100%;
    background-color: #060e62;
    transform: skewX(-20deg);
    position: absolute;
    top: 0;
    left: 0;
    z-index: -1;
}

.staff-department .ttl-cmn11 {
    font-size: 3rem;
    font-style: italic;
}

.staff-item {
    margin-bottom: 60px;
}

.staff-item:last-of-type {
    margin-bottom: 0;
}

.staff-item-ttl {
    border-bottom: solid 2px #ccc;
    padding-bottom: 20px;
    margin-bottom: 40px;
}

.staff-item-ttl01.ttl-cmn07 {
    color: #060e62;
}

.staff-item-ttl02.ttl-cmn07 {
    padding-left: 20px;
}

.staff-item-ttl-twitter {
    padding-left: 20px;
}

.staff-item-left {
    width: 29.17%;
}

.staff-item-img {
    width: 100%;
    height: 350px;
}

.staff-item-img img {
    border-radius: 50%;
}

.staff-item-txt {
    width: 62%;
}

.staff-item-txt p {
    letter-spacing: 0.05em;
}

@media screen and (max-width:1230px) {
    .staff-item-img {
        height: calc((100vw - 30px) * 0.2917);
    }
}

@media screen and (max-width:1023px) {
    .staff-item-txt {
        width: 66%;
    }
}

@media screen and (max-width:767px) {
    .staff-list {
        margin-bottom: 60px;
    }

    .staff-department {
        width: 180px;
        padding: 10px 0;
        margin: 0 0 20px 10px;
    }

    .staff-department .ttl-cmn11 {
        font-size: 2rem;
    }

    .staff-item {
        margin-bottom: 40px;
    }

    .staff-item-ttl {
        padding-bottom: 15px;
        margin-bottom: 30px;
    }

    .staff-item-ttl01.ttl-cmn07 {
        width: 100%;
    }

    .staff-item-ttl02.ttl-cmn07 {
        padding: 0;
    }

    .staff-item-inr.flex-btw {
        display: block;
    }

    .staff-item-left {
        width: 200px;
        margin: 0 auto 20px;
    }

    .staff-item-img {
        height: 200px;
    }

    .staff-item-txt {
        width: 100%;
    }
}

/*	お問い合わせ
---------------------------------*/
.contact-p {
    letter-spacing: 0.05em;
    text-align: center;
    margin-bottom: 40px;
}

.line-img {
    margin-right: 50px;
}

.line-img:last-of-type {
    margin-right: 0;
}

.contact-phone-box {
    box-shadow: 0px 0px 20px 0px rgba(0, 0, 0, 0.05);
    text-align: center;
    padding: 70px 15px 60px;
}

.contact-phone-box .online-blck {
    max-width: 825px;
    margin: 0 auto 40px;
}

.contact-phone-box-num {
    font-size: 4rem;
    font-weight: 700;
    color: #060e62;
}

@media screen and (max-width:767px) {
    .contact-p {
        text-align: left;
        margin-bottom: 20px;
    }

    .line-img {
        margin-right: 30px;
    }

    .line-img img {
        width: 80px;
    }

    .contact-phone-box {
        padding: 30px 15px;
    }

    .contact-phone-box .online-blck {
        margin: 0 auto 10px;
    }

    .contact-phone-box-num {
        font-size: 3rem;
    }
}

@media screen and (min-width: 1200px) {
  
	.hd-btn {
        padding: 20px 0 0;
        position: fixed;
        right: 120px;
   }

    .hd-right {
      padding: 15px 240px 15px 0;
    }

    .hd-btn.hd-btn02 {
      right: 0;
    }
  
}

/* 修正 */
.btn-cmn01.blackHover:hover {
    background:#000;
    color:#fff;
}

.btn-cmn01.blackHover:hover::before {
     background-image: url(/system_panel/uploads/images/icon_arrow02.png);
}


.btn-cmn01.white:hover {
    background:#fff;
}

.btn-cmn01.white p:hover {
    color:#060e62;
}

.btn-cmn01.white:hover::before {
    background-image: url(/system_panel/uploads/images/icon_arrow03.png);
}


.btn-cmn01.buleHover:hover {
    background:#2980b9;
    color:#fff;
}

.btn-cmn01.buleHover::before {
    background-image: url(/system_panel/uploads/images/icon_arrow04.png);
}

.btn-cmn01.buleHover:hover::before {
    background-image: url(/system_panel/uploads/images/icon_arrow02.png);
}

.ft-contact-cmn-btn:hover {
    background:#fff;
    color:#060e62;
    border: solid 2px #060e62;
}

.ft-contact-cmn-btn:hover::before {
    background-image: url(/system_panel/uploads/images/icon_arrow03.png);
}

.ft-contact-cmn-btn:hover .ftContactCmnBtnP::before {
    background-image: url(/system_panel/uploads/images/icon_ft_contact02.png);
}

.btn-cmn01.white.btn-recruit {
	border-radius: 10px;
}
.btn-cmn01.white.btn-recruit:hover::before {
    background-image: url(/system_panel/uploads/images/icon_arrow02.png);
}
.btn-cmn01.white.btn-recruit p:hover {
    color: #ffffff;
}

.h-logo-icon {
    max-width: 72px;
}
@media screen and (max-width: 767px) {
    .h-logo-icon {
        max-width: 30px;
    }
}