@charset "UTF-8";

/* SP
----------------------------------------------------------*/
@media only screen and (max-width: 768px) {
    :root {
        /* ヘッダーの高さ */
        --header-height: 50px;
    }
	/* page */
    .wrapper {
        min-width: 0;
        overflow: visible;
    }
    /*** 横スクロール ***/
    .scroll {
        overflow: auto;
        white-space: nowrap;
    }
    /* inner　デバイスのモニター幅に納めるコンテナ */
    .inner,
    .inner-sp,
    .inner-m,
    .inner-l,
    .inner-s,
    .inner-xs,
    .inner-xxs,
    .inner-1600 {
        /* padding: 0 3%;  デバイスのモニター幅に納めるコンテナ */
        width: 100%;
        max-width: unset;
        padding: 0 3.907vw;
        box-sizing: border-box;
    }
    .inner-sp{
        padding: 0;
    }
    .spDisplayNone { display:none; }
    
    /*===パンくず===*/
    .breadcrumb {
        padding: 1.823vw 0 14.063vw;
    }
    .breadcrumb .inner{
        padding: 0 3.907vw;
    }
    .breadcrumb li {
        font-size: 3.907vw;
        line-height: 1.44;
        margin-right: 1.53vw;
    }
    .breadcrumb li::before {
        margin: 0 1.53vw 0 0;
    }

    /*** main ***/
    .main {
        margin-top: 0;
        margin-bottom: 45px;
    }
    .main.inner {
        padding: 0 0 0 0;
    }
    .main-cont-01,
    .main-cont-02 {
        float: none;
        width: auto;
    }
    .main-cont-01 {
        margin: 0 0 50px 0;
    }

    /*================
    タイトル・テキスト系
    ================*/
    /*===タイトル===*/

    /*===テキスト===*/
    
    /*================
    リンク・ボタン
    ================*/
    /*リンク*/
    .link-01 a .link-ex{
        width: 3.125vw;
        height: 3.125vw;
        margin-right: 1.302vw;
    }
    .link-01 a .arrow2{
        color: #105CED;
        width: 3.125vw;
        height: 1.563vw;
        display: inline-block;
        margin-right: 1.302vw;
    }

    /* ボタン */
    .btn-01 a {
        font-size: 3.125vw;
        border-radius: 1.302vw;
        padding: 2.604vw 10.417vw 2.604vw 7.813vw;
        min-width: 58.073vw;
    }
    .btn-01 .arrow2,
    .btn-01 .link-ex {
        width: 5.208vw;
        height: 5.208vw;
        right: 2.604vw;
    }
    .btn-01 .arrow2 > svg {
        width: 2.604vw;
        height: 1.172vw;
    }

    /*================
    リスト
    ================*/

    /*================
    横並び
    ================*/
    .flex-wrap-01 {
        /* display: flex; */
        /* flex-wrap: wrap; */
        flex-direction: column;
        gap: 7.813vw;
    }

    .flex-wrap-01 .flex-cnt-01 {
        /* box-sizing: border-box; */
        width: 100%;
    }
    /*================
    テーブル
    ================*/

    /*================
    ヘッダー
    ================*/
    /*===外枠===*/
    .header_01.header-group{
        padding: 0;
    }
    .header_01 .header-group-inner {
        padding: 0;
        width: 100%;
    }
    .header-width {
        justify-content: start;
        align-items: center;
        padding: 2.604vw 2.604vw 1.953vw;
        box-sizing: border-box;
        gap: 0 5.469vw;
    }
    /*ロゴ*/
    .header-logo{
        padding: 0;
    }
    .header-logo a {
        width: 35.938vw;
        max-width: inherit;
        min-width: inherit;
        /* padding-left: 5.208vw; */
    }
    /*ハンバーガー・エントリー*/
    .core-parts.header_01 .sp-nav-btn {
        display: flex;
        /* margin-left: auto; */
    }
    /*ハンバーガー*/
    .core-parts.header_01 .hglb-sp-btn {
        z-index: 101;
    }
    .core-parts.header_01 .hglb-sp-btn a {
        color: #fff;
        background-color: #0072BC;
        overflow: hidden;
        display: inline-flex;
        border-radius: 50%;
    }
    .core-parts.header_01 .hglb-sp-btn a .sp-btn-svg {
        /* width: var(--header-height);
        height: var(--header-height); */
        width: 13.021vw;
        height: 13.021vw;
        display: flex;
        justify-content: center;
        align-items: center;
        flex-direction: column;
        gap: 0.652vw 0;
    }
    .core-parts.header_01 .hglb-sp-btn a .close {
        display: none;
    }
    .core-parts.header_01 .hglb-sp-btn a .sp-btn-svg svg {
        width: 5.208vw;
        height: 4.167vw;
    }
    .core-parts.header_01 .hglb-sp-btn a .CLOSE svg {
        width: 5.729vw;
        height: 5.729vw;
    }
    .core-parts.header_01 .sp-btn-txt{
        font-size: 1.823vw;
        /* font-weight: bold; */
        line-height: 1;
    }
    /*お問い合わせ*/
    .header-ex-btn-sp{
        display: block;
        margin-left: auto;
    }
    .header-ex-btn-sp a{
        color: #0072BC;
        font-size: 2.604vw;
        font-weight: bold;
        display: flex;
        flex-direction: column;
        align-items: center;
    }
    .header-ex-btn-sp a span{
        width: 6.51vw;
        height: 5.339vw;
    }
    /*マイナビ*/
    .header-ex-btn{
        display: none;
        /* order: inherit; */
        padding: 0 2.604vw 17.839vw;
        margin-left: 0;
        gap: 5.208vw 0;
        flex-direction: column;
    }
    .header-ex-btn a{
        color: #fff;
        font-size: 3.125vw;
        line-height: 1;
        padding: 2.474vw 4.167vw 2.344vw 5.208vw;
        width: 100%;
        justify-content: space-between;
        /* width: var(--header-height); */
        /* height: var(--header-height); */
    }
    .header-ex-btn .arrow,
    .header-ex-btn .link-ex{
        color: #182D3A;
        width: 7.552vw;
        height: 7.552vw;
        background-color: #fff;
        border-radius: 50%;
        display: flex;
        align-items: center;
        justify-content: center;
        /* right: 4.297vw;
        bottom: 2.214vw;
        transform: translateX(50%); */
    }
    .header-ex-btn .arrow svg{
        width: 3.611vw;
        height: 1.517vw;
    }
    .header-ex-btn .link-ex svg{
        width: 3.125vw;
        height: 3.125vw;
    }
    /*===メニュー===*/
    .core-parts.header_01 #sidr.right {
        right: -100%;
        background-color: rgba(255, 255, 255, 1);
    }
    .core-parts.header_01 #sidr,
    .core-parts.header_01.header-group .sidr {
        display: block;
        position: fixed;
        height: calc(100vh - var(--header-height));
        width: 100%;
        box-sizing: border-box;
        top: var(--header-height);
        border: none;
        z-index: 100;
        margin: 0;
        overflow: auto;
    }
    /*PC共通*/
    /*リンクとエントリー外枠*/
    .header-nav-wrap {
        padding: 7.813vw 2.604vw 10.417vw;
        box-sizing: border-box;
    }
    /*===リンク===*/
    .header-nav {
        display: block;
    }
    .hglb02-nav{
        flex-direction: column;
        gap: 7.813vw 0;
    }
    /*親子リンク共通*/
    .hglb02nv-item{
        padding-top: 10.417vw;
    }
    .hglb02nv-item a {
        font-size: 4.167vw;
        padding: 0;
    }
    .hglb02-nav .hglb02nv-item {
        display: flex;
        box-sizing: border-box;
        width: 100%;
        padding-top: 0;
    }
    .hglb02-nav a:hover,
    .hglb02nv-item.is-active>a {
        /* color: #0A1C2B; */
        /* font-weight: inherit; */
        /* opacity: 1; */
        /* width: 50%; */
    }
    /*親メニュー*/
    /* .hglb02nv-item {
        position: relative;
    } */
    .hglb02nv-item>a {
        display: flex;
        justify-content: space-between;
        pointer-events: none;
        cursor: default;
    }
    /* .hglb02nv-item>a .arrow,
    .hglb02nv-item>a .plus {
        color: #fff;
        background-color: #004077;
        display: flex;
        justify-content: center;
        align-items: center;
        width: 6.25vw;
        height: 6.25vw;
        border-radius: 50%;
    } */
    /* .hglb02nv-item>a span svg {
        color: #fff;
        width: 2.344vw;
        height: 2.344vw;
    } */
    /* .hglb02nv-item.item-02>a {
        pointer-events: none;
        padding-left: 0;
    } */
    /*小メニュー*/
    .hglb02nv-item .hglb02nv-child {
        /* ドロワー式
        display: none;
         */
    }
    .hglb02nv-item.is-active .hglb02nv-child {
        display: block;
    }
    .hglb02nv-item .hglb02nv-child-wrap {
        /*ドロワー式
        position: static;
        opacity: 0;
        visibility: hidden;
        transition: .5s;
        background-color: inherit;
        width: 100%;
        padding: 0;
        transform: none;
        height: 0;
        */
        /* SP常時表示 */
        position: static;
        z-index: inherit;
        opacity: 1;
        visibility: visible;
        box-shadow: none;
        margin-top: 2.604vw;
        width: 100%;
        transform: none;
        padding: 5.208vw 0 0;
    }
    .hglb02-nav .hglb02nv-item:last-of-type .hglb02nv-child-wrap {
        padding-bottom: 0;
    }
    .hglb02nv-item.is-active .hglb02nv-child-wrap {
        /* ドロワー式
        margin-top: 3.906vw;
        opacity: 1;
        visibility: visible;
        height: inherit;
         */
    }
    .hglb02nv-item .hglb02nv-child-wrap .hglb02nv-child-link {
        font-size: 3.125vw;
        font-weight: normal;
        width: 100%;
        display: flex;
        /* align-items: center; */
        gap: 0 4.427vw;
    }
    .hglb02nv-item .hglb02nv-child-wrap .tag-pick{
        margin-right: 1vw;
        padding: 0 1.302vw;
        white-space: nowrap;
    }
    .hglb02nv-child-item:not(:last-child) {
        margin-bottom: 3.906vw;
    }
    .hglb02nv-item .hglb02nv-child-wrap .link-ex{
        width: 3.906vw;
        height: 3.906vw;
        margin-left: 0;
    }
    .hglb02nv-item .hglb02nv-child-wrap .arrow {
        color: #fff;
        width: 5.208vw;
        height: 5.208vw;
        margin-top: 0.2vw;
        background-color: #0072BC;
        border-radius: 50%;
        display: flex;
        align-items: center;
        justify-content: center;
    }
    .hglb02nv-item .hglb02nv-child-wrap .arrow svg {
        width: 2.474vw;
        height: 1.042vw;
    }
    .hglb-comp-btn-list{
        margin-top: 10.417vw;
        display: flex;
        flex-wrap: wrap;
        gap: 4.417vw 8.417vw;
        align-items: center;
    }
    .hglb-comp-btn-list .comp-btn{
        width: 21.531vw;
    }
    .hglb-comp-btn-list .lang-btn{
        width: 100%;
    }
    .hglb-comp-btn-list .lang-btn a{
        color: #717F88;
        font-size: 3.125vw;
        font-weight: bold;
        display: flex;
        align-items: center;
        gap: 0 1.563vw;
        width: max-content;
    }
    .hglb-comp-btn-list .lang-btn a span{
        color: #0072BC;
        width: 4.167vw;
        height: 3.646vw;
    }

/*--------------------------------------
	GDPR
-------------------------------------*/
#GDPR{
	font-size: 87.5%;
	line-height: 1.5;
}
#GDPR .gdpr-clm-01{
	width: auto;
	float: none;
	margin-bottom: 2em;
}
#GDPR .gdpr-clm-02{
	width: auto;
	float: none;
}
#GDPR .gdpr-ttl{
	margin-bottom: 0.5em;
}
#GDPR .gdpr-txt{
	margin-bottom: 1em;
}
#GDPR .gdpr-agree{
	width: auto;
	margin: 0 auto;
	max-width: 80%;
}
#GDPR .gdpr-btn{
	width: auto;
	margin: 0 auto 20px;
	max-width: 80%;
}
    /*================
    フッター
    ================*/
    /*===フッターリクルート部分===*/
    .footer-recruit{
        background: url('/recruit/common/imgs/foot_rec_bg_sp.jpg')no-repeat center/cover;
        padding: 11.068vw 0 14.52vw;
    }
    .footer-recruit .inner{
        flex-direction: column;
    }
    .footer-recruit h2{
        font-size: 7.813vw;
        margin-bottom: 10.417vw;
    }
    .footer-recruit .btn-01:not(:first-child){
        margin-top: 5.208vw;
    }
    .footer-recruit .btn-01 a{
        width: inherit;
        min-width: 65.104vw;
        padding: 3.906vw 10.417vw 3.906vw 5.859vw;
    }
    .footer-recruit .btn-01 .arrow2,
    .footer-recruit .btn-01 .link-ex{
        width: 6.51vw;
        height: 6.51vw;
    }
    .footer-recruit .btn-01 .arrow2 > svg{
        width: 3.154vw;
        height: 1.345vw;
    }
    .footer-recruit .btn-01 .link-ex > svg{
        width: 2.865vw;
        height: 2.865vw;
    }
    .footer-recruit .btn-01 .tel{
        width: 8.333vw;
        height: 8.333vw;
        margin-right: 3.255vw;
    }
    .footer-recruit .btn-01 .tel svg{
        width: 4.036vw;
        height: 4.036vw;
    }
    .footer-recruit .btn-01:last-child a .txt-wrap > span:first-child{
        font-size: 4.688vw;
    }
    .footer-recruit .btn-01:last-child a .txt-wrap > span:last-child{
        font-size: 2.604vw;
    }
    /*===フッターコンタクト部分===*/
    .footer-contact{
        /* background-color: #0072BC; */
        padding: 13.021vw 0 24.219vw;
        background-size: 200% auto;
    }
    .footer-contact .inner-1000{
        /* display: flex; */
        /* justify-content: space-between; */
        /* align-items: center; */
        flex-direction: column;
    }
    .footer-contact .ttl-cnt{
        width: 100%;
        margin-bottom: 7.813vw;
    }
    .footer-contact .subttl-01{
        /* color: #fff; */
    }
    .footer-contact .subttl-01 + p{
        /* color: #fff; */
    }
    .footer-contact .subttl-01::after{
        /* background-color: #fff; */
    }
    .footer-contact .btn-01:not(:first-child) {
        margin-top: 3.906vw;
    }
    .footer-contact .btn-01 a{
        width: 77.604vw;
        text-align: left;
    }

    /*===フッターメイン部分===*/
    .footer-global-1 {
        background: #182D3A;
        padding: 12.5vw 0 7.813vw;
    }
    .footer-global-1 .fglb01-inner {
        display: flex;
        flex-direction: column;
        justify-content: center;
        align-items: center;
        gap: 0;
        flex-direction: column-reverse;
    }
    /*===左カラム===*/
    .footer-global-1 .footer-logo{
        width: 71.615vw;
        margin: 0 auto;
    }
    .footer-global-1 .fglb01-01-inner {
        /* display: block;
        width: 80.729vw; */
    }
    .footer-global-1 .fglb01-01-inner img {
        width: 100%;
    }
    .footer-global-1 .fglb01-01-inner .footer-info{
        margin-top: 6.38vw;
        display: flex;
        font-size: 2.083vw;
        gap: 0 6.51vw;
    }
    .footer-global-1 .fglb01-01-inner .footer-info .txt-08 + .txt-08{
        margin-top: 0;
    }
    /*===右カラム===*/
    .footer-global-1 .fglb01-02-inner{
        width: 100%;
        margin-bottom: 14.193vw;
    }
    .fglb01-02-outer{
        gap: 3.906vw 0;
        flex-wrap: wrap;
    }
    .fglb01-wrap{
        width: 50%;
    }
    .fglb01-wrap-03{
        width: 100%;
        margin: 0;
        display: flex;
    }
    .fglb01w-ttl,
    .fglb01-wrap-03 .fglb01w-ttl{
        text-align: center;
        padding-bottom: 3.906vw;
        font-size: 3.646vw;
        border-bottom: 1px solid #fff;
        line-height: 1.5;
    }
    .fglb01-wrap-03 .fglb01w-ttl{
        width: 50%;
        margin-bottom: 0;
    }
    .fglb01w-ttl a{
        display: block;
    }
    .fglb01w-ttl .link-ex{
        width: 3.844vw;
        height: 3.844vw;
        margin-left: 2.344vw;
    }
    .footer-global-1 .fglb01-02-inner .fglb01w-nav{
        display: none;
    }
    /*ボタン*/
    .fglb01-02-btn{
        /* margin-top: 73px; */
        /* display: flex; */
        gap: 0;
        position: absolute;
        right: 2.604vw;
        bottom: inherit;
        top: -12.5vw;
        border-radius: 0 0 1.302vw 1.302vw;
        border: 1px solid #000000;
    }
    .fglb01-02-btn .btn-01.bg-01 a{
        /* color: #006EFE; */
        padding: 1.953vw 4.948vw 2.995vw;
        border-radius: 0 0 1.302vw 1.302vw;
        display: flex;
        min-width: inherit;
    }
    .fglb01-02-btn .btn-01.bg-01 a span{
        width: 5.599vw;
        height: 3.646vw;
        /* display: inline-block; */
        /* transform: rotate(180deg); */
    }


    /*===最下部===*/
    .footer_01 .footer-global-03 {
        font-size: 3.125vw;
        padding: 0;
    }
    .footer_01 .footer-global-03 .fglb03-inner {
        /* padding: 10px 0 14px; */
        /* display: flex;
        justify-content: space-between;
        align-items: center; */
        padding: 0 5vw;
        gap: 0 1.302vw;
        /* flex-direction: column; */
    }
    .footer_01 .footer-global-03 .fglb03-inner .ft-list-01 {
        padding: 1.953vw 0;
        /* flex-direction: column; */
        align-items: center;
        gap: 6.208vw 0;
    }
    .footer_01 .footer-global-03 .fglb03-inner .ft-list-01 li,
    .footer_01 .footer-global-03 .fglb03-inner .ft-list-01 li:first-child {
        /* border: none; */
        padding: 0 1.302vw;
        font-size: 1.563vw;
    }
    .footer_01 .footer-global-03 .fglb03-inner .ft-list-01 li:first-child{
        padding-left: 0;
    }
    /* .footer_01 .footer-global-03 .fglb03-inner .ft-list-01 li:last-child{
        margin-top: 2.604vw;
    } */
    /* .footer_01 .footer-global-03 .fglb03-inner .ft-list-01 li:last-child a{
        width: 16.927vw;
    } */
    .footer_01 .footer-global-03 .fglb03-inner .ft-list-01 li a{
        gap: 0 0.651vw;
    }
    .footer_01 .footer-global-03 .fglb03-inner .ft-list-01 li a > span{
        width: 2.604vw;
        height: 2.604vw;
    }
    .footer_01 .footer-global-03 .fglb03-inner .footer-copy {
        color: #fff;
        font-size: 1.563vw;
        line-height: 1.5;
        padding: 1.953vw 0;
        box-sizing: border-box;
        /* border-top: 1px solid #fff; */
        /* width: 100%; */
    }

}
