/*-------------
vars
-------------*/
:root{
    --clip-right-arrow: polygon(0 0, 100% 50%, 0 100%);
    --clip-left-arrow: polygon(100% 0, 0 50%, 100% 100%);
    --clip-bottom-arrow: polygon(0% 0%, 100% 0%, 50% 100%);
    --inner-width: 1200px;
    --inner-width_sp: 90.625vw;
    --inner-sides_sp: 4.6875vw;
    --outer-sides: calc((100% - var(--inner-width)) / 2);
    --outer-sides-vw: calc((100vw - var(--inner-width)) / 2);
    --over-side-width: calc(100% - var(--outer-sides));
    --top-sec-sp-height: calc(100vw / 2);
    --container-corner: 40px;
    --container-shadow: 0 10px 20px rgba(63, 28, 0, .1);
    --main-blue: #2D2175;
    --main-green: #33A02C;
    --main-orenge: #ff931e;
    --base-black: #333;
    --vivid-black: #1A1A1A;
    --base-gray: #CCC;
    --border-gray: #E6E6E6;
    --bg-gray: #F2F2F2;
    --text-gray: #666;
    --text-gray2: #999;
    --text-red: #ED1C24;
    --patte-blue1:#2d2175;
    --patte-blue2:#243586;
    --patte-blue3:#1062ad;
    --patte-blue4:#0088cc;
    --patte-blue5:#1062ad;
    --patte-blue6:#1b4a98;
    --patte-bg1:url(../images/interview_icon1.svg) no-repeat center / contain;
    --patte-bg2:url(../images/interview_icon2.svg) no-repeat center / contain;
    --patte-bg3:url(../images/interview_icon3.svg) no-repeat center / contain;
    --patte-bg4:url(../images/interview_icon4.svg) no-repeat center / contain;
    --patte-bg5:url(../images/interview_icon5.svg) no-repeat center / contain;
    --patte-bg6:url(../images/interview_icon6.svg) no-repeat center / contain;
    --font-sans: "Noto Sans JP", "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "MS Pゴシック", "MS PGothic", sans-serif;
    --font-en: "Poppins", var(--font-sans);
    --fontsize_base: 1.6rem;
    --linear: .3s linear;
    --ease: .3s ease;
}
@media screen and (max-width:768px){
    :root{
        --inner-width: var(--inner-width_sp);
        --over-side-width: calc(var(--inner-width_sp) + var(--inner-sides_sp));
        --container-corner: 15px;
        --container-shadow: 0 5px 16px rgba(63, 28, 0, .1);
        --fontsize_base: 1.4rem;
    }
}

/*-------------
base
-------------*/
html{
    font-size: 62.5%;
}
body{
    width: 100%;
    min-width: var(--inner-width);
    background: var(--bg-gray) url(../images/bg_dots.svg) repeat top -30px left 6px / auto;
    /*horiuchi20241023*/
     /*background-blend-mode: lighten;*/
    color: var(--base-black);
    font-family: var(--font-sans);
    font-optical-sizing: auto;
    font-size: var(--fontsize_base);
    font-weight: normal;
    line-height: normal;
    text-align: left;
    word-wrap: break-word;
}
@media screen and (max-width:768px){
    body{
        min-width: inherit;
    }
    img{
        width: 100%;
        height: auto;
    }
}
h1, h2, h3, h4, h5, h6{
    color: var(--vivid-black);
}
::selection{
    background: #6FACC1;
    color: #fff;
}
*{
    letter-spacing: .05em;
}

/* admin-bar */
.admin-bar {
    --admin-bar-hit: 32px;
}
@media screen and (max-width:768px){
    /*--- sp ---*/
    .admin-bar {
        --admin-bar-hit: 46px;
    }
}

/* common */
@media screen and (min-width:769px){
    .sp{
        display: none;
    }   
}
@media screen and (max-width:768px){
    .pc{
        display: none;
    }
}
.clearfix::after,
.cf::after{
    content: "";
    display: block;
    clear: both;
}
.preload *,
.preload *::before,
.preload *::after{
    transition: none!important;
}
.floatL, .l{
    float: left;
}
.floatR, .r{
    float: right;
}
.clearBoth, .c_b{
	clear:both;
}
.dispIB{
    display: inline-block;
}
img.dispIB{
    width: revert-layer;
    height: revert-layer;
}

/* margin */
.mRkern{
    margin-right: -.4em;
}
.mLkern{
    margin-left: -.4em;
}
.mLRkern{
    margin-right: -.4em;
    margin-left: -.4em;
}
.mB5, .m_b5{
	margin-bottom: 5px!important;
}
.mB10, .m_b10{
	margin-bottom: 10px!important;
}
.mB15, .m_b15{
	margin-bottom: 15px!important;
}
.mB20, .m_b20{
	margin-bottom: 20px!important;
}
.mB30, .m_b30{
	margin-bottom: 30px!important;
}
.mR10, .m_r10{
	margin-right: 10px!important;
}
.m_b20sp5{
    margin-bottom: 20px!important;
}
/*sp*/
@media screen and (max-width:768px){
    .m_b20sp5{
        margin-bottom: 5px!important;
    }
}
/* text */
.textInd, .txt_ind {
    text-indent: -1.02em;
    padding-left: 1.02em;
}
.ffsPalt{
	font-feature-settings: "palt" 1;
}
.ffSans{
    font-family: var(--font-sans)!important;
}
.txtRed{
    color: var(--text-red)!important;
}
.txtBig{
    font-size: 1.2em;
}
.txtSmall{
    font-size: .7em;
}
.txtCenter, .txt_c{
    text-align: center;
}
.txtRight, .txt_r{
    text-align: right;
}
.wsNowrap{
    white-space: nowrap;
}
*:has(> wbr){
    word-break: keep-all;
    overflow-wrap: break-word;
}

/* a */
a:hover{
    text-decoration: none;
}
.textLink{
    color: var(--main-blue);
}
.textLink:not(:hover){
    text-decoration: underline;
}
@media screen and (min-width:769px){
    a[href^="tel:"]{
        pointer-events: none;
    }   
}
.fadeHover{
    transition: opacity var(--ease);
}
.viewing_pc .fadeHover:hover{
    opacity: .7;
}
a:has(> img:only-child),
a:has(> picture:only-child){
    transition: opacity var(--ease);
}
.viewing_pc a:has(> img:only-child):hover,
.viewing_pc a:has(> picture:only-child):hover{
    opacity: .7;
}

/*-------------
accordion
-------------*/
.accordion-btn:not(.is--ready){
    pointer-events: none;
}
.accordion-btn.is--ready{
    cursor: pointer;
}
@media screen and (max-width:767px){
    .accordion-btn_sp:not(.is--ready){
        pointer-events: none;
    }
    .accordion-btn_sp.is--ready{
        cursor: pointer;
    }
}
.accordion-btn:not(.is--active):not([data-target-class]) + *:not(.accordion-container),
.accordion-content{
    position: absolute;
    opacity: 0;
    pointer-events: none;
}
@media screen and (max-width:767px){
    .accordion-btn_sp:not(.is--active):not([data-target-class]) + *:not(.accordion-container),
    .accordion-content_sp{
        position: absolute;
        opacity: 0;
        pointer-events: none;
    }
}
.accordion-container{
    overflow: hidden;
    transition: height .3s ease;
}
.accordion-container.is--hit_low{
    transition: height .2s ease;
}
.accordion-container:not(.is--open){
    height: 0!important;
}
@media screen and (min-width:768px){
    .accordion-container.is--limit_sp{
        height: auto!important;
    }
}

/*-------------
container
-------------*/
.container{
    container-type: inline-size;
}
.container *{
    --container-sides: calc(50cqw - (var(--inner-width) / 2));
}

/* parts */
.viewMoreBtn{
    display: flex;
    align-items: center;
    gap: 10px;
    min-height: 44px;
    padding: 5px 15px;
    border-radius: 5px;
    background: var(--main-blue);
    color: #fff;
    font-family: var(--font-en);
    font-weight: bold;
    transition: all var(--ease);
}
.viewMoreBtn:hover{
    opacity: 0.8;
    transition: all var(--ease);
}
.viewMoreBtn::after{
    flex: 0 0 auto;
    clip-path: var(--clip-right-arrow);
    width: 8px;
    height: 10px;
    margin-left: auto;
    background: #fff;
    content: "";
}

/*-------------
header
-------------*/
.header{
    position: relative;
    z-index: 1;
    padding: 20px 20px 0;
    background: #fff;
}
.header-logo{
    position: absolute;
    top: 20px;
    left: 20px;
    line-height: 1;
}
.header-logo a{
    display: block;
}
.header-menu{
    display: none;
}
.header-nav-wrap{
    display: contents;
}
.header-nav{
    display: flex;
    flex-direction: column-reverse;
    align-items: flex-end;
}
.header-nav-list{
    display: flex;
    gap: 0 5px;
}
.header-nav-list-item a{
    display: flex;
    align-items: center;
    height: 100%;
    position: relative;
    padding: 17px 10px 19px;
    font-size: 1.5rem;
    font-weight: bold;
    line-height: calc(1em + 4px);
    transition: color var(--ease);
}
.viewing_pc .header-nav-list-item a:hover{
    color: var(--main-blue);
}
.header-nav-list-item a::after{
    opacity: 0;
    position: absolute;
    bottom: 14px;
    left: 9px;
    transform: translateY(4px);
    width: calc(100% - 18px);
    height: 1px;
    background: var(--main-blue);
    content: "";
    transition: all var(--ease);
}
.viewing_pc .header-nav-list-item a:hover::after{
    opacity: 1;
    transform: none;
}
@media screen and (max-width:768px){
    /*--- sp ---*/
    .wrapper{
        --header-hit: 47px;
        padding-top: var(--header-hit);
    }
    .header{
        display: flex;
        position: fixed;
        top: 0;
        left: 0;
        z-index: 99;
        width: 100%;
        height: var(--header-hit);
        padding: 0;
        transition: box-shadow var(--ease);
    }
    /* .admin-bar .header{
        top: var(--admin-bar-hit);
    } */
    .header.header.is--on-content{
        box-shadow: 0 5px 16px -8px rgba(63, 28, 0, .1);
    }
    .header-logo{
        position: static;
    }
    .header-logo a{
        display: flex;
        align-items: center;
        height: var(--header-hit);
        padding-left: var(--inner-sides_sp);
    }
    .header-logo img{
        width: 216px;
    }
    .header-menu{
        display: block;
        position: absolute;
        top: 0;
        right: 0;
        z-index: 1;
        width: calc((20px + var(--inner-sides_sp)) * 2);
        height: 100%;
        cursor: pointer;
    }
    .header-menu::before,
    .header-menu::after,
    .header-menu-inner{
        position: absolute;
        top: 23px;
        right: var(--inner-sides_sp);
        width: 40px;
        height: 1px;
        background: var(--base-black);
        content: "";
        user-select: none;
        transition: width var(--ease);
    }
    .header-menu::before{
        top: 15px;
    }
    .header-menu.is--open::before{
        width: 35px;
    }
    .header-menu::after{
        top: 31px;
    }
    .header-menu.is--open::after{
        width: 15px;
    }
    .header-menu.is--open .header-menu-inner{
        width: 25px;
    }
    .header-nav-wrap{
        display: block;
        position: fixed;
        top: 0;
        left: 0;
        width: 100%;
        height: 100svh;
        overflow: hidden;
        background: rgba(51, 51, 51, .9);
        cursor: pointer;
        transition: opacity var(--ease);
    }
    /* .admin-bar .header-nav-wrap{
        top: var(--admin-bar-hit);
        height: calc(100svh - var(--admin-bar-hit));
    } */
    .header-nav-wrap:not(.is--active){
        display: none;
    }
    .header-nav-wrap:not(.is--show){
        opacity: 0;
    }
    .header-nav{
        display: block;
        transform: translateX(50%);
        max-height: calc(100% - var(--inner-sides_sp));
        margin-left: var(--inner-sides_sp);
        padding: var(--header-hit) var(--inner-sides_sp) var(--inner-sides_sp);
        overflow: auto;
        border-bottom-left-radius: 15px;
        box-shadow: var(--container-shadow);
        background: #fff;
        transition: transform var(--ease);
        cursor: auto;
    }
    .header-nav-wrap.is--show .header-nav{
        transform: none;
    }
    .header-nav-list{
        display: block;
    }
    .header-nav-list-item:not(:last-child){
        border-bottom: solid 1px var(--base-gray);
    }
    .header-nav-list-item a{
        padding: 13px 0;
        font-size: 1.5rem;
    }
}

/* header-nav-entry */
.header-nav-entry{
    display: flex;
    gap: 20px;
}
.header-nav-entry-item{
    flex: 0 0 auto;
    min-width: 200px;
}
.header-nav-entry-item a{
    display: flex;
    justify-content: center;
    align-items: center;
    position: relative;
    height: 41px;
    padding: 0 34px 2px;
    border-radius: 10px;
    background: var(--main-blue);
    color: #fff;
    font-size: 1.5rem;
    font-weight: bold;
    transition: all var(--ease);
}
.header-nav-entry-item a:hover{
    opacity: 0.8;
    transition: all var(--ease);
}
.header-nav-entry-item.is-career a{
    background: var(--main-green);
}
.header-nav-entry-item a::after{
    clip-path: var(--clip-right-arrow);
    position: absolute;
    top: calc(50% - 5.5px);
    right: 20px;
    width: 9px;
    height: 11px;
    background: #fff;
    content: "";
}
@media screen and (max-width:768px){
    /*--- sp ---*/
    .header-nav-entry{
        flex-direction: column;
        gap: 10px;
        margin-top: 30px;
    }
    .header-nav-entry-item{
        width: 100%;
    }
    .header-nav-entry-item a{
        padding-bottom: 0;
    }
}

/*-------------
footer
-------------*/
.footer{
    position: relative;
    margin-top: 80px;
}
.footer-pagetop{
    position: absolute;
    right: 30px;
    bottom: 30px;
}
.pagetop-btn{
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 6px;
    right: 30px;
    bottom: 30px;
    width: 60px;
    height: 60px;
    padding-top: 8px;
    border-radius: 5px;
    background: var(--main-blue);
    box-shadow: var(--container-shadow);
    color: #fff;
    font-family: var(--font-en);
    font-size: 14px;
    font-weight: bold;
    line-height: calc(1em + 1px);
    text-align: center;
    transition: opacity var(--ease);
}
.pagetop-btn.is--follow{
    position: fixed;
    z-index: 98;
    bottom: 20px;
}
.pagetop-btn:not(.is--show){
    opacity: 0;
    pointer-events: none;
}
.pagetop-btn::before{
    display: block;
    flex: 0 0 auto;
    width: 16px;
    height: 8px;
    background: url(../images/pagetop-arrow.svg) no-repeat center / contain;
    content: "";
}
@media screen and (max-width:768px){
    /*--- sp ---*/
    .footer{
        margin-top: 100px;
        container-type: normal!important;
    }
    .footer-pagetop{
        top: -70px;
        right: var(--inner-sides_sp);
        bottom: auto;
        width: 50px;
        height: 50px;
    }
    .pagetop-btn{
        gap: 4px;
        right: var(--inner-sides_sp);
        bottom: 20px;
        width: 50px;
        height: 50px;
        padding-top: 7px;
        font-size: 11px;
    }
    .pagetop-btn.is--follow{
        position: fixed;
        display: flex!important;
        bottom: 20px;
    }
}

/* footer-inner */
.footer-inner{
    width: var(--over-side-width);
    border-top-right-radius: var(--container-corner); 
    background: #fff;
}
.footer-cont{
    display: grid;
    grid-template-columns: 50% 50px 1fr;
    padding: 50px 0 40px var(--container-sides);
}
.footer-cont::before{
    display: block;
    grid-column: 2;
    grid-row: 1 / 3;
    border-left: solid 1px var(--base-gray);
    content: "";
}
@media screen and (max-width:768px){
    /*--- sp ---*/
    .footer-cont{
        display: block;
        padding: 35px var(--inner-sides_sp) 30px;
    }
    .footer-cont::before{
        content: none;
    }
}
.footer-logo{
    grid-column: 1;
    grid-row: 1;
    margin-bottom: 40px;
}
@media screen and (max-width:768px){
    /*--- sp ---*/
    .footer-logo{
        max-width: 405px;
        margin-bottom: 20px;
    }
}

/* footer-entry */
.footer-entry{
    display: flex;
    gap: 20px;
    grid-column: 3;
    grid-row: 1;
}
.footer-entry-item{
    flex: 0 0 auto;
    min-width: 200px;
}
.footer-entry-item a{
    display: flex;
    justify-content: center;
    align-items: center;
    position: relative;
    height: 41px;
    padding: 0 34px 2px;
    border-radius: 10px;
    background: var(--main-blue);
    color: #fff;
    font-size: 1.5rem;
    font-weight: bold;
    transition: all var(--ease);
}
.footer-entry-item.is-career a{
    background: var(--main-green);
}
.footer-entry-item a::after{
    clip-path: var(--clip-right-arrow);
    position: absolute;
    top: calc(50% - 5.5px);
    right: 20px;
    width: 9px;
    height: 11px;
    background: #fff;
    content: "";
}
.footer-entry-item a:hover{
    opacity: 0.8;
    transition: all var(--ease);
}
@media screen and (max-width:768px){
    /*--- sp ---*/
    .footer-entry{
        flex-direction: column;
        gap: 10px;
        margin-bottom: 25px;
    }
    .footer-entry-item{
        width: 100%;
    }
    .footer-entry-item a{
        padding-bottom: 0;
    }
}

/* footer-nav */
.footer-nav{
    grid-column: 3;
    grid-row: 2;
    padding-top: 11px;
}
.footer-nav-list{
    display: flex;
    flex-wrap: wrap;
    gap: 20px 40px;
}
.footer-nav-list-item{
    flex: 0 0 auto;
    position: relative;
    width: 210px;
}
.footer-nav-list-item:nth-child(2n)::before{
    position: absolute;
    top: 0;
    left: -19px;
    width: 1px;
    height: 100%;
    background: var(--border-gray);
    content: "";
}
.footer-nav-list-item a{
    display: flex;
    align-items: center;
    height: 100%;
    padding-bottom: 1px;
    font-size: 1.8rem;
    font-weight: bold;
    line-height: calc(1em + 5px);
}
.footer-nav-corp{
    width: 380px;
    /*margin-top: 51px;*/
}
.footer-nav-corp a{
    display: flex;
    justify-content: center;
    align-items: center;
    position: relative;
    height: 42px;
    padding-bottom: 2px;
    border: solid 1px var(--base-gray);
    border-radius: 99px;
    background: url(../images/icon_blank.svg) no-repeat center right 14px / auto;
    font-size: 1.4rem;
    margin-bottom:5px;
}
@media screen and (max-width:768px){
    /*--- sp ---*/
    .footer-nav{
        padding-top: 0;
    }
    .footer-nav-list{
        gap: 20px 30px;
    }
    .footer-nav-list-item{
        width: calc(50% - 15px);
    }
    .footer-nav-list-item:nth-child(2n)::before{
        left: -15px;
    }
    .footer-nav-list-item a{
        font-size: 1.5rem;
    }
    .footer-nav-corp{
        width: 100%;
        margin-top: 35px;
    }
    .footer-nav-corp a{
        padding: 2px 15px;
    }
}

/* footer-address */
.footer-address{
    grid-column: 1;
    grid-row: 2;
}
.footer-address-list{
    font-size: 1.8rem;
}
.footer-address-list:not(:last-child){
    margin-bottom: 30px;
}
.footer-address-list-head{
    display: flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 4px;
    color: var(--vivid-black);
    font-weight: bold;
    line-height: 1;
}
.footer-address-list-head a{
    display: inline-block;
    min-width: 36px;
    padding: 3px;
    border-radius: 3px;
    background: var(--base-black);
    color: #fff;
    font-size: 1.2rem;
    font-weight: normal;
    text-align: center;
}
.footer-address-list-body{
    margin-bottom: -2px;
    line-height: calc(1.4em + 6px);
}
@media screen and (max-width:768px){
    /*--- sp ---*/
    .footer-address{
        margin-top: 20px;
        padding-top: 30px;
        border-top: solid 1px var(--border-gray);
    }
    .footer-address-list{
        font-size: 1.8rem;
    }
    .footer-address-list:not(:last-child){
        margin-bottom: 25px;
    }
    .footer-address-list-body{
        margin-bottom: -3px;
    }
}

/* footer-copy */
.footer-copy{
    display: block;
    padding: 18px 0 18px var(--container-sides);
    background: var(--main-blue);
    color: #fff;
    font-family: var(--font-en);
    font-size: 1.3rem;
    line-height: calc(1em + 4px);
}
@media screen and (max-width:768px){
    /*--- sp ---*/
    .footer-copy{
        padding: 13px var(--inner-sides_sp);
    }
}

/*-------------
top
-------------*/
#main{
    padding-bottom: 40px;
}
.recruit-top .header{
    transition: background var(--ease);
}
.recruit-top .header:not(.is--on-content){
    background: none;
}
.top-lead{
    margin-top: -136px;
    padding-top: 136px;
    background: #F0F8FF;
}
.top-lead-catch{
    margin: 20px auto;
    text-align: center;
    user-select: none;
}
@media screen and (max-width:768px){
    /*--- sp ---*/
    #main{
        padding-bottom: 0;
    }
    .top-lead{
        margin-top: -54px;
        padding-top: 54px;
    }
    .top-lead-catch{
        max-width: 560px;
        margin-bottom: 15px;
    }
}

/* top-lead-nav */
.top-lead-nav{
    display: flex;
    justify-content: center;
    transform: translateY(60px);
    margin-top: -60px;
}
.top-lead-nav-item{
    position: relative;
    z-index: 1;
}
.top-lead-nav-item__link{
    position: absolute;
    bottom: 33px;
    left: 50%;
    transform: translateX(-50%);
    min-width: 186px;
}
.top-lead-nav-item__link a{
    display: block;
    position: relative;
    padding: 7px 26px 8px 8px;
    border-radius: 10px;
    background: #0A50A1;
    color: #fff;
    transition: all var(--ease);
}
.top-lead-nav-item__link a:hover{
    opacity: 0.9;
    transition: all var(--ease);
}
.top-lead-nav-item__link._tokyo a{
    background: #33A02C;
}
.top-lead-nav-item__link._osaka a{
    background: #FF7F00;
}
.top-lead-nav-item__link._kanazawa a{
    background: #E60012;
}
.top-lead-nav-item__link a::after{
    clip-path: var(--clip-right-arrow);
    position: absolute;
    top: calc(50% - 7.5px);
    right: 8px;
    width: 12px;
    height: 15px;
    background: #fff;
    content: "";
}
.top-lead-nav-item__link-sub{
    display: block;
    margin-bottom: 3px;
    font-size: 1.2rem;
    line-height: calc(1em + 3px);
}
.top-lead-nav-item__link-main{
    display: block;
    font-size: 2.1rem;
    font-weight: bold;
    line-height: calc(1em + 5px);
}
.top-lead-nav-item__link-main .txtSmall{
    font-size: 1.4rem;
    line-height: 1;
}
/* 1240px以下 */
@media screen and (max-width:1240px){
    .top-lead-nav-item{
        width: 25%;
    }
    .top-lead-nav-item img{
        width: 100%;
    }
}
@media screen and (max-width:768px){
    /*--- sp ---*/
    .top-lead-nav{
        flex-wrap: wrap;
        transform: translateY(20px);
        margin-top: -20px;
    }
    .top-lead-nav-item{
        flex: 0 0 auto;
        width: 50%;
        overflow: hidden;
    }
    .top-lead-nav-item:nth-child(odd) .top-lead-nav-item__pic{
        margin-left: -10px;
    }
    .top-lead-nav-item:nth-child(2n) .top-lead-nav-item__pic{
        margin-right: -10px;
    }
    .top-lead-nav-item__link{
        bottom: 0;
        left: 10px;
        transform: none;
        width: calc(100% - 15px);
        min-width: 0;
    }
    .top-lead-nav-item:nth-child(2n) .top-lead-nav-item__link{
        left: 5px;
    }
    .top-lead-nav-item__link a{
        padding: 6px 19px 6px 7px;
        border-radius: 5px;
    }
    .top-lead-nav-item__link a::after{
        top: calc(50% - 3.5px);
        right: 7px;
        width: 5px;
        height: 7px;
    }
    .top-lead-nav-item__link-sub{
        margin-bottom: 1px;
        font-size: min(1.3rem, 3.125vw);
    }
    .top-lead-nav-item__link-main{
        font-size: min(1.7rem, 4.375vw);
    }
    .top-lead-nav-item__link-main .txtSmall{
        font-size: min(1.3rem, 3.125vw);
    }
}

/* top-news */
.top-news{
    padding: 120px 0 100px;
    background: linear-gradient(to bottom, #fff 0 calc(50% + 20px), rgba(255,255,255,0) calc(50% + 20px));
}
.top-news-inner{
    display: grid;
    grid-template-columns: 1fr auto;
    grid-template-rows: auto 1fr;
    width: var(--inner-width);
    margin: 0 auto;
    padding: 60px;
    border-radius: var(--container-corner);
    background: #fff;
    box-shadow: var(--container-shadow);
}
.top-news-title{
    margin: 34px 0 49px;
    font-size: 42px;
    font-weight: 900;
    line-height: calc(1em + 3px);
}
.top-news-list{
    grid-column: 2 / 3;
    grid-row: span 2;
    width: 760px;
    border-top: solid 1px var(--border-gray);
}
.top-news-list-item a{
    display: block;
    padding: 30px 0 27px;
    border-bottom: solid 1px var(--border-gray);
}
.top-news-list-item__date{
    display: block;
    margin-bottom: 11px;
    color: var(--base-gray);
    font-family: var(--font-en);
    font-size: 1.2rem;
    font-weight: bold;
    line-height: 1;
}
.top-news-list-item__title{
    display: block;
    line-height: calc(1em + 7px);
}
.top-news-btn{
    width: 180px;
}
@media screen and (max-width:768px){
    /*--- sp ---*/
    .top-news{
        padding: 60px 0;
        background: linear-gradient(to bottom, #fff 0 50%, rgba(255,255,255,0) 50%);
    }
    .top-news-inner{
        display: block;
        padding: 18px 15px 25px;
    }
    .top-news-title{
        margin: 0 0 19px;
        font-size: 2.4rem;
    }
    .top-news-list{
        width: 100%;
    }
    .top-news-list-item a{
        padding: 20px 0 22px;
    }
    .top-news-list-item__date{
        margin-bottom: 6px;
    }
    .top-news-list-bottom{
        margin-top: 25px;
    }
    .top-news-btn{
        width: 170px;
    }
}

/* top-message */
.top-message-inner{
    width: var(--over-side-width);
    border-top-right-radius: var(--container-corner);
    border-bottom-right-radius: var(--container-corner);
    background: #fff;
    box-shadow: var(--container-shadow);
    padding: 50px 0 40px var(--container-sides);
}
.top-message-main__info{
    --inner-pic-area: 600px;
    --pic-size: calc(var(--inner-pic-area) + var(--container-sides));
    min-height: min(720px, calc(((var(--pic-size) / 24) * 17) + 40px));
    padding-right: 650px;
    position: relative;
    padding-bottom: 40px;
    margin-bottom: 50px;
    border-bottom: solid 1px var(--border-gray);
}
.top-message-title{
    color: var(--main-blue);
    font-weight: 900;
    font-size: 2.7rem;
    margin-top: -80px;
    margin-bottom: 40px;
}
.top-message-title::before {
    display: block;
    color: var(--main-blue);
    font-family: var(--font-en);
    font-size: 7.2rem;
    line-height: 1;
    content: attr(data-title-en);
}
.top-message-main__info-text{
    font-size: 1.6rem;
    line-height: calc(1em + 14px);
    margin-bottom: 25px;
}
.top-message-main__info-text span{
    display: block;
}
.top-message-main__info-list:not(:last-child){
    margin-bottom: 40px;
}
.top-message-main__info-list dt{
    font-size: 2.7rem;
    font-weight: 900;
}
.top-message-main__info-list dt span{
    color: var(--main-blue);
    letter-spacing: -0.1rem;
}
.top-message-main__info-list dt strong{
    font-size: 6.0rem;
    font-weight: bold;
    font-family: var(--font-en);
}
.top-message-main__info-list dd{
    line-height: calc(1em + 16px);
}
.top-message-main__info-pho{
    position: absolute;
    top: 0;
    left: var(--inner-pic-area);
    width: min(1120px, var(--pic-size));
    max-height: 680px;
    aspect-ratio: 24 / 17;
}
.top-message-main__info-pho img{
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: 40px 0 0 40px;
}
@media screen and (min-width:2241px){
    .top-message-main__info-pho img{
        border-radius: 40px;
    }
}
.top-message-btn{
    display: flex;
}
.top-message-btn-item{
    width: 360px;
    height: 90px;
}
.top-message-btn-item.pt2{
    margin-left: 30px;
}
.top-message-btn-item a{
    color: #fff;
    font-size: 2.4rem;
    font-weight: bold;
    width: 100%;
    height: 100%;
    display: flex;
    justify-content: center;
    flex-flow: column;
    padding: 0 20px;
    box-sizing: border-box;
    background: var(--main-blue);
    border-radius: 10px;
    position: relative;
    transition: all var(--ease);
}
.top-message-btn-item a:hover{
    opacity: 0.8;
    transition: all var(--ease);
}
.top-message-btn-item a::after {
    clip-path: var(--clip-right-arrow);
    position: absolute;
    top: calc(50% - 10px);
    right: 20px;
    width: 16px;
    height: 20px;
    background: #fff;
    content: "";
}
.top-message-btn-item.pt2 a{
    background: var(--main-green);
}
.top-message-btn-item a span{
    font-family: var(--font-en);
    font-size: 1.6rem;
    font-weight: 500;
}
/* 1240px以下 */
@media screen and (max-width:1240px){
    .top-message-main__info-pho{
        left: auto;
        right: -60px;
        width: 640px;
    }
}
@media screen and (max-width:768px){
    /*--- sp ---*/
    .top-message-inner {
        padding: 40px 15px 40px var(--container-sides);
    }
    .top-message-title {
        font-size: 1.8rem;
        margin-top: -55px;
        margin-bottom: 25px;
    }
    .top-message-title::before {
        font-size: 3.6rem;
    }
    .top-message-main__info {
        min-height: 0;
        padding-right: 0;
        padding-bottom: 0;
        margin-bottom: 0;
        border-bottom: none;
    }
    .top-message-main__info-text span{
        margin-top: 12px;
    }
    .top-message-main__info-pho {
        position: static;
        width: calc(100% + 15px + var(--inner-sides_sp));
        max-height: none;
        aspect-ratio: unset;
        margin-bottom: 25px;
    }
    .top-message-main__info-pho img {
        height: auto;
        object-fit: unset;
        border-radius: 15px 0 0 15px;
    }
    .top-message-main__info-list:not(:last-child){
        margin-bottom: 30px;
    }
    .top-message-main__info-list dt {
        font-size: 2.4rem;
        line-height: calc(1em + 12px);
        margin-bottom: 12px;
    }
    .top-message-main__info-list dt strong {
        font-size: 4.0rem;
    }
    .top-message-main__info-list dd{
        line-height: calc(1em + 12px);
    }
    .top-message-btn{
        display: none;
    }
}
/* top-company */
.top-company{
    padding: 70px 0;
    box-sizing: border-box;
}
.top-company-inner{
    width: var(--inner-width);
    margin: 0 auto;
}
.top-company-title{
    color: var(--main-blue);
    font-weight: 900;
    font-size: 2.7rem;
    margin-bottom: 40px;
    text-align: center;
}
.top-company-title::before {
    display: block;
    color: var(--main-blue);
    font-family: var(--font-en);
    font-size: 7.2rem;
    line-height: 1;
    content: attr(data-title-en);
}
.top-company-list{
    display: flex;
    justify-content:space-between;
}
.top-company-list-item{
    width: 582px;
    background: #fff;
    border-radius: 40px;
    box-shadow: var(--container-shadow);
    transition: all var(--ease);
}
.top-company-list-item:hover{
    box-shadow: rgba(63, 28, 0, .1) 0px 1px 4px;
    transition: all var(--ease);
}
.top-company-list-item a{
    display: block;
    width: 100%;
}
.top-company-list-item img{
    border-radius: 40px 40px 0 0;
    border-bottom: solid 1px var(--border-gray);
    box-sizing: border-box;
    padding:20px;
}
.top-company-list-item__title{
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 80px;
    font-size: 2.2rem;
    font-weight: bold;
}
.top-company-list-item__title::before {
    clip-path: var(--clip-right-arrow);
    width: 16px;
    height: 20px;
    background: var(--main-blue);
    margin-right: 5px;
    content: "";
}
@media screen and (max-width:768px){
    /*--- sp ---*/
    .top-company {
        padding: 30px 0;
        box-sizing: border-box;
    }
    .top-company-title {
        font-size: 1.8rem;
        margin-bottom: 25px;
    }
    .top-company-title::before {
        font-size: 3.6rem;
    }
    .top-company-list{
        display: block;
    }
    .top-company-list-item{
        width: 100%;
        border-radius: 15px;
    }
    .top-company-list-item:not(:last-child){
        margin-bottom: 15px;
    }
    .top-company-list-item img{
        border-radius: 15px 15px 0 0;
            padding:20px;
    }
    .top-company-list-item.pt2 img{
        padding: 50px 20px;
    }
    .top-company-list-item__title {
        width: 100%;
        height: 50px;
        font-size: 1.5rem;
        font-weight: bold;
    }
    .top-company-list-item__title::before {
        width: 12px;
        height: 15px;
    }
}
/* top-business */
.top-business-inner{
    width: var(--over-side-width);
    border-top-left-radius: var(--container-corner);
    border-bottom-left-radius: var(--container-corner);
    background: #fff;
    box-shadow: var(--container-shadow);
    padding: 60px var(--container-sides) 80px 60px;
    margin-left: var(--container-sides);
}
.top-business-title{
    color: var(--vivid-black);
    font-weight: 900;
    font-size: 2.7rem;
    margin-bottom: 40px;
}
.top-business-title::before {
    width: calc(100% + var(--container-sides));
    display: block;
    color: var(--main-blue);
    font-family: var(--font-en);
    font-size: 7.2rem;
    line-height: 1;
    content: attr(data-title-en);
    border-bottom: solid 1px var(--main-blue);
    padding-bottom: 15px;
    margin-bottom: 10px;
}
.top-business-title__link {
    transition: opacity var(--ease);
    opacity: 1.0;
}
.top-business-title__link:hover {
    opacity: .70;
    transition: opacity var(--ease);
}
.top-business-title__link::before {
    display: inline-block;
    clip-path: var(--clip-right-arrow);
    width: 16px;
    height: 20px;
    background: var(--main-blue);
    margin-right: 5px;
    content: "";
}
.top-business-list{
    display: flex;
    justify-content: space-between;
    flex-flow: row wrap;
}
.top-business-list-item{
    width: 560px;
}
.top-business-list-item:not(:nth-of-type(-n + 2)){
    margin-top: 60px;
}
.top-business-list-item img{
    border-radius: 20px;
    margin-bottom: 15px;
}
.top-business-list-item__title{
    display: flex;
    align-items: center;
    justify-content: flex-start;
    font-size: 2.2rem;
    font-weight: bold;
}
.top-business-list-item__title::before {
    clip-path: var(--clip-right-arrow);
    width: 16px;
    height: 20px;
    background: var(--main-blue);
    margin-right: 5px;
    content: "";
}
@media screen and (max-width:768px){
    /*--- sp ---*/
    .top-business-inner {
        padding: 30px var(--inner-sides_sp) 40px var(--container-sides);
    }
    .top-business-title {
        font-size: 1.8rem;
        margin-bottom: 25px;
    }
    .top-business-title::before {
        font-size: 3.6rem;
        padding-bottom: 8px;
        margin-bottom: 10px;
    }
    .top-business-list-item:not(:nth-of-type(-n + 2)){
        margin-top: 0;
    }
    .top-business-list-item:not(:last-of-type){
        margin-bottom: 21px;
    }
    .top-business-list-item img{
        border-radius: 10px;
        margin-bottom: 12px;
    }
    .top-business-list-item__title {
        font-size: 1.5rem;
        font-weight: bold;
    }
    .top-business-list-item__title::before {
        width: 12px;
        height: 15px;
    }
}
/* top-interview */
.top-interview{
    margin-top: 40px;
}
.top-interview-inner{
    width: calc(var(--over-side-width) + 60px);
    border-top-right-radius: var(--container-corner);
    border-bottom-right-radius: var(--container-corner);
    background: #fff;
    box-shadow: var(--container-shadow);
    padding: 50px 60px 90px calc(var(--container-sides) + 60px);
}
/* 1240px以下 */
@media screen and (max-width:1240px){
    .top-interview-inner{
        width: calc(var(--over-side-width));
        padding: 50px 60px 90px calc(var(--container-sides));
    }
}
.top-interview-title{
    color: var(--vivid-black);
    font-weight: 900;
    font-size: 2.7rem;
    margin-bottom: 40px;
}
.top-interview-title::before {
    width: calc(100% + 60px);
    display: block;
    color: var(--main-blue);
    font-family: var(--font-en);
    font-size: 7.2rem;
    line-height: 1;
    content: attr(data-title-en);
    border-bottom: solid 1px var(--main-blue);
    padding-bottom: 15px;
    margin-bottom: 10px;
}
.top-interview-list{
    display: flex;
    flex-flow: row wrap;
}
.top-interview-list-item{
    width: 270px;
}
.top-interview-list-item_img{
    position: relative;
    margin-bottom: 20px;
}
.top-interview-list-item img{
    width: 100%;
    height: auto;
    border-radius: 10px;
}
.top-interview-list-item:not(:nth-of-type(4n)){
    margin-right: 20px;
}
.top-interview-list-item a{
    width: 100%;
    height: 100%;
    background: var(--main-blue);
    display: block;
    padding: 15px 15px 30px;
    box-sizing: border-box;
    color: #fff;
    position: relative;
}
@media screen and (min-width:767px){
    /*PCのみ*/
    .top-interview-list-item:not(:nth-child(-n + 4)){
        margin-top: 20px;
    }
    /*色16パターン*/
    .top-interview-list-item:nth-child(16n+1) a ,
    .top-interview-list-item:nth-child(16n+1) .top-interview-list-item_text-icon {
        background: var(--patte-blue1);
    }
    .top-interview-list-item:nth-child(16n+2) a,
    .top-interview-list-item:nth-child(16n+2) .top-interview-list-item_text-icon {
        background: var(--patte-blue2);
    }
    .top-interview-list-item:nth-child(16n+3) a,
    .top-interview-list-item:nth-child(16n+3) .top-interview-list-item_text-icon {
        background: var(--patte-blue3);
    }
    .top-interview-list-item:nth-child(16n+4) a,
    .top-interview-list-item:nth-child(16n+4) .top-interview-list-item_text-icon {
        background: var(--patte-blue4);
    }
    .top-interview-list-item:nth-child(16n+5) a,
    .top-interview-list-item:nth-child(16n+5) .top-interview-list-item_text-icon {
        background: var(--patte-blue5);
    }
    .top-interview-list-item:nth-child(16n+6) a,
    .top-interview-list-item:nth-child(16n+6) .top-interview-list-item_text-icon {
        background: var(--patte-blue4);
    }
    .top-interview-list-item:nth-child(16n+7) a,
    .top-interview-list-item:nth-child(16n+7) .top-interview-list-item_text-icon {
        background: var(--patte-blue6);
    }
    .top-interview-list-item:nth-child(16n+8) a,
    .top-interview-list-item:nth-child(16n+8) .top-interview-list-item_text-icon {
        background: var(--patte-blue1);
    }
    .top-interview-list-item:nth-child(16n+9) a,
    .top-interview-list-item:nth-child(16n+9) .top-interview-list-item_text-icon {
        background: var(--patte-blue6);
    }
    .top-interview-list-item:nth-child(16n+10) a,
    .top-interview-list-item:nth-child(16n+10) .top-interview-list-item_text-icon {
        background: var(--patte-blue1);
    }
    .top-interview-list-item:nth-child(16n+11) a,
    .top-interview-list-item:nth-child(16n+11) .top-interview-list-item_text-icon {
        background: var(--patte-blue2);
    }
    .top-interview-list-item:nth-child(16n+12) a,
    .top-interview-list-item:nth-child(16n+12) .top-interview-list-item_text-icon {
        background: var(--patte-blue5);
    }
    .top-interview-list-item:nth-child(16n+13) a,
    .top-interview-list-item:nth-child(16n+13) .top-interview-list-item_text-icon {
        background: var(--patte-blue2);
    }
    .top-interview-list-item:nth-child(16n+14) a,
    .top-interview-list-item:nth-child(16n+14) .top-interview-list-item_text-icon {
        background: var(--patte-blue3);
    }
    .top-interview-list-item:nth-child(16n+15) a,
    .top-interview-list-item:nth-child(16n+15) .top-interview-list-item_text-icon {
        background: var(--patte-blue4);
    }
    .top-interview-list-item:nth-child(16n+16) a,
    .top-interview-list-item:nth-child(16n+16) .top-interview-list-item_text-icon {
        background: var(--patte-blue6);
    }
    /*文字16パターン*/
    .top-interview-list-item:nth-child(16n+1) .top-interview-list-item_text-place {
        color: var(--patte-blue1);
    }
    .top-interview-list-item:nth-child(16n+2) .top-interview-list-item_text-place{
        color: var(--patte-blue2);
    }
    .top-interview-list-item:nth-child(16n+3) .top-interview-list-item_text-place {
        color: var(--patte-blue3);
    }
    .top-interview-list-item:nth-child(16n+4) .top-interview-list-item_text-place {
        color: var(--patte-blue4);
    }
    .top-interview-list-item:nth-child(16n+5) .top-interview-list-item_text-place{
        color: var(--patte-blue5);
    }
    .top-interview-list-item:nth-child(16n+6) .top-interview-list-item_text-place {
        color: var(--patte-blue4);
    }
    .top-interview-list-item:nth-child(16n+7) .top-interview-list-item_text-place {
        color: var(--patte-blue6);
    }
    .top-interview-list-item:nth-child(16n+8) .top-interview-list-item_text-place {
        color: var(--patte-blue1);
    }
    .top-interview-list-item:nth-child(16n+9) .top-interview-list-item_text-place {
        color: var(--patte-blue6);
    }
    .top-interview-list-item:nth-child(16n+10) .top-interview-list-item_text-place {
        color: var(--patte-blue1);
    }
    .top-interview-list-item:nth-child(16n+11) .top-interview-list-item_text-place {
        color: var(--patte-blue2);
    }
    .top-interview-list-item:nth-child(16n+12) .top-interview-list-item_text-place {
        color: var(--patte-blue5);
    }
    .top-interview-list-item:nth-child(16n+13) .top-interview-list-item_text-place{
        color: var(--patte-blue2);
    }
    .top-interview-list-item:nth-child(16n+14) .top-interview-list-item_text-place {
        color: var(--patte-blue3);
    }
    .top-interview-list-item:nth-child(16n+15) .top-interview-list-item_text-place {
        color: var(--patte-blue4);
    }
    .top-interview-list-item:nth-child(16n+16) .top-interview-list-item_text-place {
        color: var(--patte-blue6);
    }
    /*色16曲線背景パターン*/
    .top-interview-list-item:nth-child(16n+1) .top-interview-list-item_text-icon:before,
    .top-interview-list-item:nth-child(16n+1) .top-interview-list-item_text-icon:after {
        background: var(--patte-bg1);
    }
    .top-interview-list-item:nth-child(16n+2) .top-interview-list-item_text-icon:before,
    .top-interview-list-item:nth-child(16n+2) .top-interview-list-item_text-icon:after {
        background: var(--patte-bg2);
    }
    .top-interview-list-item:nth-child(16n+3) .top-interview-list-item_text-icon:before,
    .top-interview-list-item:nth-child(16n+3) .top-interview-list-item_text-icon:after {
        background: var(--patte-bg3);
    }
    .top-interview-list-item:nth-child(16n+4) .top-interview-list-item_text-icon:before,
    .top-interview-list-item:nth-child(16n+4) .top-interview-list-item_text-icon:after {
        background: var(--patte-bg4);
    }
    .top-interview-list-item:nth-child(16n+5) .top-interview-list-item_text-icon:before,
    .top-interview-list-item:nth-child(16n+5) .top-interview-list-item_text-icon:after {
        background: var(--patte-bg5);
    }
    .top-interview-list-item:nth-child(16n+6) .top-interview-list-item_text-icon:before,
    .top-interview-list-item:nth-child(16n+6) .top-interview-list-item_text-icon:after {
        background: var(--patte-bg4);
    }
    .top-interview-list-item:nth-child(16n+7) .top-interview-list-item_text-icon:before,
    .top-interview-list-item:nth-child(16n+7) .top-interview-list-item_text-icon:after {
        background: var(--patte-bg6);
    }
    .top-interview-list-item:nth-child(16n+8) .top-interview-list-item_text-icon:before,
    .top-interview-list-item:nth-child(16n+8) .top-interview-list-item_text-icon:after {
        background: var(--patte-bg1);
    }
    .top-interview-list-item:nth-child(16n+9) .top-interview-list-item_text-icon:before,
    .top-interview-list-item:nth-child(16n+9) .top-interview-list-item_text-icon:after {
        background: var(--patte-bg6);
    }
    .top-interview-list-item:nth-child(16n+10) .top-interview-list-item_text-icon:before,
    .top-interview-list-item:nth-child(16n+10) .top-interview-list-item_text-icon:after {
        background: var(--patte-bg1);
    }
    .top-interview-list-item:nth-child(16n+11) .top-interview-list-item_text-icon:before,
    .top-interview-list-item:nth-child(16n+11) .top-interview-list-item_text-icon:after {
        background: var(--patte-bg2);
    }
    .top-interview-list-item:nth-child(16n+12) .top-interview-list-item_text-icon:before,
    .top-interview-list-item:nth-child(16n+12) .top-interview-list-item_text-icon:after {
        background: var(--patte-bg5);
    }
    .top-interview-list-item:nth-child(16n+13) .top-interview-list-item_text-icon:before,
    .top-interview-list-item:nth-child(16n+13) .top-interview-list-item_text-icon:after {
        background: var(--patte-bg2);
    }
    .top-interview-list-item:nth-child(16n+14) .top-interview-list-item_text-icon:before,
    .top-interview-list-item:nth-child(16n+14) .top-interview-list-item_text-icon:after {
        background: var(--patte-bg3);
    }
    .top-interview-list-item:nth-child(16n+15) .top-interview-list-item_text-icon:before,
    .top-interview-list-item:nth-child(16n+15) .top-interview-list-item_text-icon:after {
        background: var(--patte-bg4);
    }
    .top-interview-list-item:nth-child(16n+16) .top-interview-list-item_text-icon:before,
    .top-interview-list-item:nth-child(16n+16) .top-interview-list-item_text-icon:after {
        background: var(--patte-bg6);
    }
}
.top-interview-list-item_text{
    position: relative;
    padding-right: 21px;
    box-sizing: border-box;
}
.top-interview-list-item_text:before{
    position: absolute;
    content: "";
    width: 5px;
    height: 5px;
    border-radius: 50%;
    background: #ffffff;
    top: -10px;
    right: 5px;
    display: block;
}
.top-interview-list-item_text:after{
    content: "";
    width: 1px;
    height: calc(100% + 10px);
    background: #ffffff;
    position: absolute;
    top: -5px;
    right: 7px;
}
.top-interview-list-item_text-sub{
    font-size: 1.4rem;
    font-weight: bold;
    margin-bottom: 10px;
}
.top-interview-list-item_text-main{
    color: #fff;
    font-size: 2.0rem;
    font-weight: bold;
    padding: 0 0 0 15px;
    box-sizing: border-box;
    border-left: solid 3px var(--main-orenge);
    line-height: calc(1em + 8px);
    display: block;
    /* align-items: center;
    flex-flow: row wrap; */
    line-height: calc(1em + 15px);
}
.top-interview-list-item_text-main strong{
    margin-right: 10px;
    line-height: calc(1em + 10px);
}
.top-interview-list-item_text-main span{
    font-size: 1.4rem;
    font-weight: 500;
    min-height: 24px;
    border: solid 1px #fff;
    box-sizing: border-box;
    display: table;
    align-items: center;
    padding: 2px 4px 4px;
    line-height:  calc(1em + 2px);
    margin-top: 4px;
}
.top-interview-list-item_text-place{
    background: #fff;
    font-size: 1.2rem;
    font-weight: 500;
    border-radius: 10px;
    display: table;
    padding: 0 8px;
    box-sizing: border-box;
    line-height: calc(1em + 10px);
    margin-top: 12px;
}
.top-interview-list-item_text-icon{
    font-family: var(--font-en);
    writing-mode: vertical-rl;
    position: absolute;
    right: 0;
    bottom: 0;
    border-radius: 10px 0 0 0;
    padding: 8px 0 0 5px;
    box-sizing: border-box;
    line-height: 1em;
}
.top-interview-list-item_text-icon:before{
    content: '';
    width: 10px;
    height: 10px;
    display: block;
    position: absolute;
    top: -10px;
    right: 0;
}
.top-interview-list-item_text-icon:after{
    content: '';
    width: 10px;
    height: 10px;
    display: block;
    position: absolute;
    bottom: 0;
    left: -10px;
}
@media screen and (max-width:768px){
    /*--- sp ---*/
    .top-interview{
        margin-top: 30px;
    }
    .top-interview-inner {
        width: var(--over-side-width);
        padding: 40px 0 40px var(--container-sides);
    }
    .top-interview-title {
        font-size: 1.8rem;
        margin-bottom: 25px;
    }
    .top-interview-title::before {
        width: 100%;
        font-size: 3.6rem;
        padding-bottom: 8px;
        margin-bottom: 10px;
    }
    /*色16パターン*/
    .top-interview-list-item:nth-child(10n+1) a ,
    .top-interview-list-item:nth-child(10n+1) .top-interview-list-item_text-icon {
        background: var(--patte-blue1);
    }
    .top-interview-list-item:nth-child(10n+2) a,
    .top-interview-list-item:nth-child(10n+2) .top-interview-list-item_text-icon {
        background: var(--patte-blue2);
    }
    .top-interview-list-item:nth-child(10n+3) a,
    .top-interview-list-item:nth-child(10n+3) .top-interview-list-item_text-icon {
        background: var(--patte-blue3);
    }
    .top-interview-list-item:nth-child(10n+4) a,
    .top-interview-list-item:nth-child(10n+4) .top-interview-list-item_text-icon {
        background: var(--patte-blue4);
    }
    .top-interview-list-item:nth-child(10n+5) a,
    .top-interview-list-item:nth-child(10n+5) .top-interview-list-item_text-icon {
        background: var(--patte-blue5);
    }
    .top-interview-list-item:nth-child(10n+6) a,
    .top-interview-list-item:nth-child(10n+6) .top-interview-list-item_text-icon {
        background: var(--patte-blue1);
    }
    .top-interview-list-item:nth-child(10n+7) a,
    .top-interview-list-item:nth-child(10n+7) .top-interview-list-item_text-icon {
        background: var(--patte-blue2);
    }
    .top-interview-list-item:nth-child(10n+8) a,
    .top-interview-list-item:nth-child(10n+8) .top-interview-list-item_text-icon {
        background: var(--patte-blue5);
    }
    .top-interview-list-item:nth-child(10n+9) a,
    .top-interview-list-item:nth-child(10n+9) .top-interview-list-item_text-icon {
        background: var(--patte-blue4);
    }
    .top-interview-list-item:nth-child(10n+10) a,
    .top-interview-list-item:nth-child(10n+10) .top-interview-list-item_text-icon {
        background: var(--patte-blue6);
    }
    /*文字16パターン*/
    .top-interview-list-item:nth-child(10n+1) .top-interview-list-item_text-place {
        color: var(--patte-blue1);
    }
    .top-interview-list-item:nth-child(10n+2) .top-interview-list-item_text-place{
        color: var(--patte-blue2);
    }
    .top-interview-list-item:nth-child(10n+3) .top-interview-list-item_text-place {
        color: var(--patte-blue3);
    }
    .top-interview-list-item:nth-child(10n+4) .top-interview-list-item_text-place {
        color: var(--patte-blue4);
    }
    .top-interview-list-item:nth-child(10n+5) .top-interview-list-item_text-place{
        color: var(--patte-blue5);
    }
    .top-interview-list-item:nth-child(10n+6) .top-interview-list-item_text-place {
        color: var(--patte-blue1);
    }
    .top-interview-list-item:nth-child(10n+7) .top-interview-list-item_text-place {
        color: var(--patte-blue2);
    }
    .top-interview-list-item:nth-child(10n+8) .top-interview-list-item_text-place {
        color: var(--patte-blue5);
    }
    .top-interview-list-item:nth-child(10n+9) .top-interview-list-item_text-place {
        color: var(--patte-blue4);
    }
    .top-interview-list-item:nth-child(10n+10) .top-interview-list-item_text-place {
        color: var(--patte-blue6);
    }
    /*色16曲線背景パターン*/
    .top-interview-list-item:nth-child(10n+1) .top-interview-list-item_text-icon:before ,
    .top-interview-list-item:nth-child(10n+1) .top-interview-list-item_text-icon:after {
        background: var(--patte-bg1);
    }
    .top-interview-list-item:nth-child(10n+2) .top-interview-list-item_text-icon:before,
    .top-interview-list-item:nth-child(10n+2) .top-interview-list-item_text-icon:after {
        background: var(--patte-bg2);
    }
    .top-interview-list-item:nth-child(10n+3) .top-interview-list-item_text-icon:before,
    .top-interview-list-item:nth-child(10n+3) .top-interview-list-item_text-icon:after {
        background: var(--patte-bg3);
    }
    .top-interview-list-item:nth-child(10n+4) .top-interview-list-item_text-icon:before,
    .top-interview-list-item:nth-child(10n+4) .top-interview-list-item_text-icon:after {
        background: var(--patte-bg4);
    }
    .top-interview-list-item:nth-child(10n+5) .top-interview-list-item_text-icon:before,
    .top-interview-list-item:nth-child(10n+5) .top-interview-list-item_text-icon:after {
        background: var(--patte-bg5);
    }
    .top-interview-list-item:nth-child(10n+6) .top-interview-list-item_text-icon:before,
    .top-interview-list-item:nth-child(10n+6) .top-interview-list-item_text-icon:after {
        background: var(--patte-bg1);
    }
    .top-interview-list-item:nth-child(10n+7) .top-interview-list-item_text-icon:before,
    .top-interview-list-item:nth-child(10n+7) .top-interview-list-item_text-icon:after {
        background: var(--patte-bg2);
    }
    .top-interview-list-item:nth-child(10n+8) .top-interview-list-item_text-icon:before,
    .top-interview-list-item:nth-child(10n+8) .top-interview-list-item_text-icon:after {
        background: var(--patte-bg5);
    }
    .top-interview-list-item:nth-child(10n+9) .top-interview-list-item_text-icon:before,
    .top-interview-list-item:nth-child(10n+9) .top-interview-list-item_text-icon:after {
        background: var(--patte-bg4);
    }
    .top-interview-list-item:nth-child(10n+10) .top-interview-list-item_text-icon:before,
    .top-interview-list-item:nth-child(10n+10) .top-interview-list-item_text-icon:after {
        background: var(--patte-bg6);
    }
    .top-interview-list {
        width: calc(100% + var(--inner-sides_sp));
        display: flex;
        justify-content: space-between;
        flex-flow: row wrap;
    }
    .top-interview-list-item {
        width: 49.18%;
    }
    .top-interview-list-item a {
        padding: 10px 10px 20px;
    }
    .top-interview-list-item:not(:nth-of-type(4n)) {
        margin-right: 0;
    }
    .top-interview-list-item:not(:nth-child(-n + 2)){
        margin-top: 5px;
    }
    .top-interview-list-item_text-icon:before{
        content: '';
        width: 7px;
        height: 7px;
        display: block;
        position: absolute;
        top: -7px;
        right: 0;
    }
    .top-interview-list-item_text-icon:after{
        content: '';
        width: 7px;
        height: 7px;
        display: block;
        position: absolute;
        bottom: 0;
        left: -7px;
    }
    .top-interview-list-item_text-main {
        color: #fff;
        font-size: 1.6rem;
        font-weight: bold;
        padding: 2px 0 2px 8px;
        line-height: calc(1em + 15px);
    }
    .top-interview-list-item_text-main strong{
        line-height: calc(1em + 8px);
        margin-right: 0;
    }
    .top-interview-list-item_text-main span {
        font-size: 1rem;
        font-weight: 500;
        min-height: 18px;
        margin-top: 8px;
        padding: 2px 3px;
    }
    .top-interview-list-item_text-place {
        background: #fff;
        font-size: 1.0rem;
        font-weight: 500;
        border-radius: 10px;
        display: table;
        padding: 0 8px;
        box-sizing: border-box;
        line-height: calc(1em + 10px);
        margin-top: 12px;
    }
}
/* top-sec1 */
.top-sec1 {
    margin-top: 120px;
}
.top-sec1-inner{
    width: calc(var(--over-side-width) - 60px);
    border-top-left-radius: var(--container-corner);
    border-bottom-left-radius: var(--container-corner);
    background: #fff;
    box-shadow: var(--container-shadow);
    padding: 0 var(--container-sides) 0 0;
    margin-left: var(--container-sides);
    display: flex;
    transform: translateX(60px);
}
.top-sec-title{
    color: var(--vivid-black);
    font-weight: 900;
    font-size: 2.0rem;
    margin-bottom: 30px;
}
.top-sec-title::before {
    width: calc(100% + var(--container-sides) + 160px);
    display: block;
    color: var(--main-blue);
    font-family: var(--font-en);
    font-size: 6.0rem;
    line-height: 1;
    content: attr(data-title-en);
    border-bottom: solid 1px var(--main-blue);
    padding-bottom: 15px;
    margin-bottom: 10px;
}
.top-sec__pho{
    position: relative;
    margin-right: 50px;
    margin-top: 10px;
    transform: translateY(-30px);
    margin-left: -60px;
}
.top-sec__pho:before{
    content: "";
    background: var(--main-blue);
    width: 600px;
    height: 300px;
    border-radius: 30px;
    position: absolute;
    top: -10px;
    right: -10px;
    z-index: 0;
}
.top-sec__pho img{
    border-radius: 30px;
    z-index: 2;
    position: relative;
}
.top-sec__text{
    padding: 60px 0 70px;
    box-sizing: border-box;
}
.top-sec-btn{
    width: 180px;
}
@media screen and (max-width:768px){
    /*--- sp ---*/
    .top-sec1{
        margin-top: 40px;
    }
    .top-sec1-inner {
        width: var(--over-side-width);
        padding: 40px var(--inner-sides_sp) 20px var(--container-sides);
        display: block;
        margin-top: calc(var(--top-sec-sp-height) - 45px);
        transform: none;
        position: relative;
    }
    .top-sec-title {
        font-size: 1.8rem;
        margin-bottom: 25px;
    }
    .top-sec-title::before {
        width: 100%;
        font-size: 3.6rem;
        padding-bottom: 8px;
        margin-bottom: 10px;
    }
    .top-sec__pho{
        width: calc(100% - 10px);
        position: absolute;
        left: -3.6875vw;
        bottom: 82%;
        margin-bottom: 0;
        transform: none;
        margin: 0;
    }
    .top-sec__pho:before {
        content: "";
        background: var(--main-blue);
        width: 100%;
        height: 100%;
        border-radius: 10px;
        position: absolute;
        top: -10px;
        right: -10px;
        z-index: 0;
    }
    .top-sec__pho img{
        border-radius: 10px;
    }
    .top-sec__text {
        width: 100%;
        box-sizing: border-box;
        padding: 20px 0 0 0;
    }
}
/* top-sec2 */
.top-sec2 {
    margin-top: 50px;
}
.top-sec2-inner{
    width: var(--over-side-width);
    border-top-right-radius: var(--container-corner);
    border-bottom-right-radius: var(--container-corner);
    background: #fff;
    box-shadow: var(--container-shadow);
    padding: 0 0 0 var(--container-sides);
    margin-right: var(--container-sides);
    display: flex;
    flex-flow: row-reverse;
}

.top-sec2 .top-sec__pho{
    position: relative;
    margin-right: -60px;
    margin-top: 0;
    margin-bottom: 10px;
    transform: translateY(40px);
    margin-left: 0;
}
/* 1336px以下 */
@media screen and (max-width:1336px){
    .top-sec2 .top-sec__pho{
        margin-right: 0;
    }
}
.top-sec2 .top-sec__text{
    width: 100%;
    box-sizing: border-box;
    padding: 40px 0 80px 90px;
}
.top-sec2 .top-sec__pho:before {
    content: "";
    background: var(--main-blue);
    width: 600px;
    height: 300px;
    border-radius: 30px;
    position: absolute;
    top: auto;
    bottom: -10px;
    right: auto;
    left: -10px;
    z-index: 0;
}
@media screen and (max-width:768px){
    /*--- sp ---*/
    .top-sec2 {
        margin-top: 30px;
    }
    .top-sec2-inner {
        padding: 40px var(--inner-sides_sp) 20px var(--container-sides);
        display: block;
        position: relative;
        margin-top: calc(var(--top-sec-sp-height) - 45px);
    }
    .top-sec2 .top-sec__pho{
        width: calc(100% - 10px);
        position: absolute;
        right: -2.6875vw;
        left: auto;
        bottom: 98%;
        margin-bottom: 0;
    }
    .top-sec__pho img{
        border-radius: 10px;
    }
    .top-sec2 .top-sec__pho:before {
        content: "";
        background: var(--main-blue);
        width: 100%;
        height: 100%;
        border-radius: 10px;
        position: absolute;
        top: auto;
        bottom: 10px;
        right: auto;
        left: -10px;
        z-index: 0;
    }
    .top-sec2 .top-sec__text {
        width: 100%;
        box-sizing: border-box;
        padding: 20px 0 0 0;
    }
}
/*--------------------
recruit-breadcrumbs
---------------------*/
#recruit-breadcrumbs{
    width: var(--inner-width);
    margin: 20px auto;
}
.recruit-breadcrumbs__inner{
    display: table;
    background: #fff;
    border-radius: 20px;
    padding: 8px 20px;
    box-sizing: border-box;
}
/* .breadcrumbs-list{
    display: flex;
    align-items: center;
} */
.breadcrumbs-list li{
    font-size: 1.5rem;
    color: var(--text-gray);
    display: inline-block;
}
.breadcrumbs-list li:first-child a:before{
    content: "";
    background: url(../images/icon_home.svg) no-repeat center / contain;
    width: 13px;
    height: 13px;
    margin-right: 10px;
    display: inline-block;
}
.breadcrumbs-list li:not(:first-child){
    margin-left: 10px;
}
.breadcrumbs-list li:not(:first-child):before{
    content: "";
    clip-path: var(--clip-right-arrow);
    width: 7px;
    height: 9px;
    background: var(--base-gray);
    display: inline-block;
    margin-right: 10px;
    content: "";
}
@media screen and (max-width:768px){
    /*--- sp ---*/
    #recruit-breadcrumbs {
        width: var(--inner-width);
        margin: 15px auto;
    }
    .breadcrumbs-list li{
        font-size: 1.1rem;
    }
}
/*----------------------
interview
----------------------*/
.interview-inner{
    width: var(--over-side-width);
    border-top-left-radius: var(--container-corner);
    border-bottom-left-radius: var(--container-corner);
    background: #fff;
    box-shadow: var(--container-shadow);
    padding: 60px var(--container-sides) 80px 60px;
    margin-left: var(--container-sides);
    overflow-x: hidden;
}
.interview-detail-content{
    width: 1200px;
    margin-left: -60px;
}
.interview-title{
    background: #fff;
    border-radius: 0 0 40px 0;
    margin-left: -60px;
    padding: 0 30px 20px 60px;
    display: table;
    position: absolute;
    z-index: 1;
    max-width: 1100px;
}
.interview-title::after{
    content: "";
    background: url(../images/interview_icon.svg) no-repeat center / contain;
    width: 40px;
    height: 40px;
    position: absolute;
    top: 0;
    right: -40px;
    transform: rotate(-180deg);
}
.interview-detail-title__sub{
    font-size: 2.0rem;
    font-weight: bold;
    color: var(--main-blue);
    margin-bottom: 10px;
}
.interview-detail-title__main {
    color: var(--main-blue);
    font-size: 3.6rem;
    font-weight: bold;
    box-sizing: border-box;
    padding: 0 0 0 20px;
    border-left: solid 6px var(--main-orenge);
    line-height: calc(1em + 8px);
    display: flex;
    align-items: center;
    flex-flow: row wrap;
}
.interview-detail-title__main strong {
    margin-right: 20px;
}
.interview-detail-title__main span {
    font-size: 2.0rem;
    font-weight: 500;
    min-height: 36px;
    border: solid 1px var(--main-blue);
    box-sizing: border-box;
    display: inline-flex;
    align-items: center;
    padding: 2px 4px 4px;
    line-height: calc(1em + 3px);
}
.interview-detail-title__place {
    background: var(--main-blue);
    font-size: 1.8rem;
    font-weight: 500;
    color: #fff;
    border-radius: 15px;
    display: table;
    padding: 2px 10px;
    box-sizing: border-box;
    line-height: 1.2;
    margin-top: 20px;
}
.interview-main{
    position: relative;
    /* margin-top: -149px; */
    margin-left: -60px;
}
.interview-main__img img{
    width: 100%;
    border-radius: 0 40px 40px 0;
}
/* 1460px以上 */
@media screen and (min-width:1460px){
    .interview-main__img img{
        width: 1260px;
    }
}
.interview-main__text{
    width: 100%;
    position: absolute;
    left: 60px;
    bottom: 60px;
    padding-right: 60px;
    box-sizing: border-box;
}
.interview-main__text:before{
    content: "INTERVIEW";
    font-family: var(--font-en);
    font-size: 6.0rem;
    font-weight: bold;
    color: #fff;
    margin-bottom: 15px;
}
.interview-main__text p{
    color: #fff;
    font-feature-settings: "palt" 1;
    font-size: 3.0rem;
    font-weight: bold;
    margin-left: 30px;
    background: var(--main-blue);
    padding: 4px 10px 6px;
    box-sizing: border-box;
    display: table;
    position: relative;
}
.interview-main__text p:before{
    display: inline-block;
    margin-right: 10px;
    content: "――";
}
/*----------------------
interview
----------------------*/
@media screen and (max-width:768px){
    /*--- sp ---*/
    .interview-inner{
        padding: 30px var(--inner-sides_sp) 40px 15px;
        overflow: visible;
    }
    .interview-detail-content {
        width: 100%;
        margin-left: 0;
    }
    .interview-title {
        background: #fff;
        border-radius: 0 0 0 0;
        padding: 0;
        display: block;
        position: relative;
        z-index: 1;
        margin: 0 0 20px;
    }
    .interview-detail-title__main {
        color: var(--main-blue);
        font-size: 2.4rem;
        font-weight: bold;
        box-sizing: border-box;
        padding: 0 0 0 15px;
        border-left: solid 3px var(--main-orenge);
        display: block;
    }
    .interview-detail-title__main strong {
        margin-right: 0;
        display: block;
    }
    .interview-detail-title__main span {
        font-size: 1.4rem;
        font-weight: 500;
        min-height: 30px;
        display: table;
        padding: 1px 4px;
        margin-top: 8px;
    }
    .interview-detail-title__sub {
        font-size: 1.6rem;
    }
    .interview-detail-title__place {
        background: var(--main-blue);
        font-size: 1.4rem;
        font-weight: 500;
        color: #fff;
        border-radius: 15px;
        display: table;
        padding: 1px 10px;
        margin-top: 10px;
    }
    .interview-title::after{
        content: none;
    }
    .interview-main {
        position: relative;
        margin: 0;
    }
    .interview-main__img {
        width: calc(100% + 15px + var(--inner-sides_sp));
        margin-bottom: 10px;
        margin-left: calc(-4.6875vw - 15px);
    }
    .interview-main__img img{
        width: 100%;
        border-radius: 0 15px 15px 0;
    }
    .interview-main__text{
        width: 100%;
        position: static;
        padding-right: 0;
        box-sizing: border-box;
    }
    .interview-main__text:before {
        content: "INTERVIEW";
        font-family: var(--font-en);
        font-size: 3.6rem;
        font-weight: bold;
        color: var(--main-blue);
        margin-bottom: 10px;
    }
    .interview-main__text p {
        color: #fff;
        font-size: 1.8rem;
        font-weight: bold;
        margin-left: 15px;
        background: var(--main-blue);
        padding: 5px 10px 6px;
    }
    .interview-main__text p:before {
        margin-right: 5px;
    }
}
/*interview-question-title*/
.interview-question-title{
    font-size: 2.7rem;
    font-weight: bold;
    color: var(--main-blue);
    margin-bottom: 30px;
    line-height: calc(1em + 12px);
}
.interview-question-title span{
    font-family: var(--font-en);
    font-weight: bold;
    font-size: 2.0rem;
    display: table;
    border-bottom: solid 1px var(--main-blue);
    margin-bottom: 10px;
}
.interview-question-title span b{
    font-size: 4.0rem;
}
.interview-question-title strong{
    padding-left: 30px;
    box-sizing: border-box;
}
@media screen and (max-width:768px){
    /*--- sp ---*/
    .interview-question-title{
        font-size: 1.7rem;
        margin-bottom: 20px;
    }
    .interview-question-title span{
        font-family: var(--font-en);
        font-weight: bold;
        font-size: 1.4rem;
        display: table;
        border-bottom: solid 1px var(--main-blue);
        margin-bottom: 8px;
    }
    .interview-question-title span b{
        font-size: 2.4rem;
    }
    .interview-question-title strong {
        padding-left: 0;
        box-sizing: border-box;
    }
}
/*interview-question1*/
.interview-question1{
    position: relative;
    display: flex;
    align-items: flex-start;
    margin-top: 60px;
}
.interview-question1__img{
    flex: 1;
    min-width: 680px;
    position: relative;
    margin-bottom: 20px;
}
.interview-question1__img::after{
    content: "";
    background: var(--main-blue);
    width: calc(100% + 20px);
    height: calc(100% + 20px);
    position: absolute;
    top: 0;
    left: 0;
    border-radius: 0 50px 50px 0;
    z-index: 0;
}
.interview-question1__img img{
    width: 100%;
    border-radius: 0 40px 40px 0;
    position: relative;
    z-index: 1;
}
.interview-question1__text{
    flex: 1;
    background: #fff;
    padding: 0 0 50px 50px;
    box-sizing: border-box;
    min-width: 620px;
    margin: 0 0 0 auto;
    position: relative;
    z-index: 1;
    transform: translateX(-100px);
    border-radius: 0 0 0 40px;
}
.interview-question1__text::after {
    content: "";
    background: url(../images/interview_icon.svg) no-repeat center / contain;
    width: 40px;
    height: 40px;
    position: absolute;
    top: 0;
    left: -40px;
    transform: rotate(-90deg);
}
.interview-question1__text-main p{
    font-size: 1.6rem;
    line-height: calc(1em + 16px);
}
.interview-question1__text-main p:not(:last-child){
    margin-bottom: 15px;
}
@media screen and (max-width:768px){
    /*--- sp ---*/
    .interview-question1{
        position: relative;
        display: block;
        margin-top: 40px;
    }
    .interview-question1__img {
        width: calc(100% + 5px + var(--inner-sides_sp));
        margin-left: calc(-4.6875vw - 15px);
        flex: 1;
        min-width: inherit;
        position: relative;
        margin-bottom: 20px;
    }
    .interview-question1__img::after {
        content: "";
        background: var(--patte-blue2);
        width: calc(100% + 10px);
        height: calc(100% + 10px);
        position: absolute;
        top: 0;
        left: 0;
        border-radius: 0 20px 20px 0;
        z-index: 0;
    }
    .interview-question1__img img {
        width: 100%;
        border-radius: 0 15px 15px 0;
        position: relative;
        z-index: 1;
    }
    .interview-question1__text {
        flex: 1;
        background: #fff;
        padding: 0;
        box-sizing: border-box;
        min-width: inherit;
        margin: 0 0 0 auto;
        position: relative;
        z-index: 1;
        transform: none;
        border-radius: 0 0 0 40px;
    }
    .interview-question1__text::after{
        content: none;
    }
    .interview-question1__text-main p{
        font-size: 1.4rem;
        line-height: calc(1em + 14px);
    }
    .interview-question1__text-main p:not(:last-child){
        margin-bottom: 10px;
    }
}
/*interview-question2*/
.interview-question2{
    margin-top: 40px;
}
.interview-question2__img{
    width: 1080px;
    margin: 0 0 0 auto;
    position: relative;
}
.interview-question2__img::after{
    content: "";
    background: var(--main-blue);
    width: calc(100% + 15px);
    height: calc(100% - 15px);
    position: absolute;
    right: -15px;
    bottom: 0;
    border-radius: 40px 40px 0 0;
    z-index: 0;
}
.interview-question2__img img{
    width: 100%;
    height: auto;
    border-radius: 40px 40px 0 0;
    position: relative;
    z-index: 1;
}
.interview-question2__text {
    margin-left: 60px;
    width: calc(100% - 60px);
    margin-top: -100px;
    position: relative;
    z-index: 1;
}
.interview-question2__text .interview-question-title{
    padding: 20px 20px 0 0;
    background: #fff;
    display: table;
    border-radius: 0 40px 0 0;
    position: relative;
}
.interview-question2__text .interview-question-title::after {
    content: "";
    background: url(../images/interview_icon.svg) no-repeat center / contain;
    width: 40px;
    height: 40px;
    position: absolute;
    top: 60px;
    right: -40px;
    transform: rotate(90deg);
}
.interview-question2__text-main{
    line-height: calc(1em + 16px);
}
.interview-question2__text-main p{
    font-size: 1.6rem;
    line-height: calc(1em + 16px);
}
@media screen and (max-width:768px){
    /*--- sp ---*/
    .interview-question2__img{
        width: 100%;
        margin: 0 auto;
        position: relative;
    }
    .interview-question2__img::after{
        content: "";
        background: var(--patte-blue6);
        width: calc(100% + 10px);
        height: calc(100% - 10px);
        position: absolute;
        right: -10px;
        bottom: 0;
        border-radius: 15px 15px 0 0;
        z-index: 0;
    }
    .interview-question2__img img{
        width: 100%;
        height: auto;
        border-radius: 15px 15px 0 0;
        position: relative;
        z-index: 1;
    }
    .interview-question2__text {
        margin-left: 0;
        width: 100%;
        margin-top: -15px;
        position: relative;
        z-index: 1;
    }
    .interview-question2__text .interview-question-title{
        padding: 5px 0 0;
        background: #fff;
        display: table;
        border-radius: 0 15px 0 0;
        position: relative;
    }
    .interview-question2__text .interview-question-title::after {
        content: "";
        background: url(../images/interview_icon.svg) no-repeat center / contain;
        width: 15px;
        height: 15px;
        position: absolute;
        top: -15px;
        right: auto;
        left: 0;
        transform: rotate(90deg);
    }
    .interview-question2__text-main{
        column-count: 1;
        column-gap: 0;
        line-height: calc(1em + 14px);
    }
    .interview-question2__text-main p{
        font-size: 1.4rem;
        line-height: calc(1em + 14px);
    }
    .interview-question2__text-main p:not(:last-child){
        margin-bottom: 10px;
    }
}
/*interview-question3 6*/
.interview-question3,
.interview-question7{
    margin-top: 60px;
    display: flex;
    align-items: flex-start;
    padding-left: 60px;
    box-sizing: border-box;
}
.interview-question3__img,
.interview-question7__img{
    min-width: 760px;
    max-width: 760px;
    position: relative;
}
.interview-question3__img::after,
.interview-question7__img::after{
    content: "";
    background: var(--patte-blue3);
    width: calc(100%);
    height: calc(100%);
    position: absolute;
    right: -20px;
    bottom: -20px;
    border-radius: 40px;
    z-index: 0;
}
.interview-question3__img img,
.interview-question7__img img{
    width: 100%;
    height: auto;
    border-radius: 40px;
    position: relative;
    z-index: 1;
}
.interview-question3__text,
.interview-question7__text{
    flex: 1;
    background: #fff;
    padding:20px 0 20px 50px;
    box-sizing: border-box;
    min-width: 620px;
    margin: 215px 0 0 auto;
    position: relative;
    z-index: 1;
    transform: translateX(-240px);
    border-radius: 40px 0 0 0;
}
.interview-question3__text-main p,
.interview-question7__text-main p{
    font-size: 1.6rem;
    line-height: calc(1em + 16px);
}
.interview-question3__text-main p:not(:last-child),
.interview-question7__text-main p:not(:last-child){
    margin-bottom: 15px;
}
@media screen and (max-width:768px){
    /*--- sp ---*/
    .interview-question3,
    .interview-question7{
        margin-top: 40px;
        display: block;
        padding-left: 0;
    }
    .interview-question3__img,
    .interview-question7__img{
        min-width: inherit;
        max-width: inherit;
        position: relative;
    }
    .interview-question3__img::after,
    .interview-question7__img::after{
        content: "";
        background: var(--patte-blue3);
        width: calc(100%);
        height: calc(100%);
        position: absolute;
        right: 10px;
        bottom: 10px;
        border-radius: 15px;
        z-index: 0;
    }
    .interview-question3__img img,
    .interview-question7__img img{
        width: 100%;
        height: auto;
        border-radius: 15px;
        position: relative;
        z-index: 1;
    }
    .interview-question3__text,
    .interview-question7__text{
        flex: 1;
        background: #fff;
        padding:5px var(--inner-sides_sp) 0 0;
        box-sizing: border-box;
        width: calc(100% + var(--inner-sides_sp));
        min-width: inherit;
        margin: -15px 0 0 auto;
        position: relative;
        z-index: 1;
        transform: none;
        border-radius: 15px 0 0 0;
    }
    .interview-question3__text::after,
    .interview-question7__text::after{
        content: "";
        background: url(../images/interview_icon.svg) no-repeat center / contain;
        width: 15px;
        height: 15px;
        position: absolute;
        top: -15px;
        right: var(--inner-sides_sp);
    }
    .interview-question3__text-main p,
    .interview-question7__text-main p{
        font-size: 1.4rem;
        line-height: calc(1em + 14px);
    }
    .interview-question3__text-main p:not(:last-child),
    .interview-question7__text-main p:not(:last-child){
        margin-bottom: 10px;
    }
}
/*interview-message*/
.interview-message{
    --pic-area: 600px;
    --pic-size: calc(var(--pic-area) + var(--container-sides));
    position: relative;
    margin-top: 80px;
    padding-left: 60px;
    box-sizing: border-box;
}
.interview-message__img{
    position: absolute;
    top: 0;
    left: var(--pic-area);
    width: min(1120px, var(--pic-size));
    max-height: 640px;
    aspect-ratio: 3 / 2;
    z-index: 1;
}
.interview-message__img::before {
    content: "";
    background: url(../images/interview_icon.svg) no-repeat center / contain;
    width: 40px;
    height: 40px;
    position: absolute;
    bottom: 0;
    left: 80px;
    transform: rotate(90deg);
    z-index: 1;
}
.interview-message__img::after{
    content: "";
    background: var(--patte-blue4);
    width: calc(100% + 20px);
    height: calc(100%);
    position: absolute;
    right: 0;
    bottom: 20px;
    border-radius: 50px 0 0 50px;
    z-index: -1;
}
.interview-message__img img{
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: 40px 0 0 0;
    position: relative;
}
@media screen and (min-width:2241px){
    .interview-message__img::after{
        width: 100%;
        right: 20px;
        border-radius: 50px;
    }
    .interview-message__img img{
        border-radius: 40px;
    }
}
.interview-message__text{
    display: flex;
    flex-direction: column;
    position: relative;
    z-index: 2;
    width: 620px;
    min-height: min(640px, calc((var(--pic-size) / 3) * 2));
}
.interview-message-title{
    color: var(--vivid-black);
    font-weight: 900;
    font-size: 2.0rem;
    position: relative;
    z-index: 2;
}
.interview-message-title::before {
    width: calc(100% - 100px);
    display: block;
    color: var(--main-blue);
    font-family: var(--font-en);
    font-size: 6.0rem;
    line-height: 1;
    content: "MESSAGE";
    border-bottom: solid 1px var(--main-blue);
    padding-bottom: 15px;
    margin-bottom: 10px;
}
.interview-message__text-main{
    flex: 1 1 auto;
    position: relative;
    z-index: 1;
    background: #fff;
    border-radius:0 40px 0 0;
    padding: 50px 50px 0 0;
    margin-top: -10px;
}
.interview-message__text-main p{
    font-size: 1.6rem;
    line-height: calc(1em + 16px);
}
.interview-message__text-main p:not(:last-child){
    margin-bottom: 15px;
}
@media screen and (max-width:768px){
    /*--- sp ---*/
    .interview-message{
        margin-top: 50px;
        display: block;
        padding-left: 0;
    }
    .interview-message__img {
        position: static;
        min-width: inherit;
        width: calc((100% - 10px) + var(--inner-sides_sp));
        max-height: none;
        aspect-ratio: unset;
        transform: translateX(10px);
        margin-bottom: 25px;
    }
    .interview-message__img img {
        width: 100%;
        height: auto;
        object-fit: unset;
        border-radius: 15px 0 0 15px;
        position: relative;
    }
    .interview-message__img::after {
        content: "";
        background: var(--patte-blue4);
        width: calc(100% + 10px);
        height: calc(100%);
        position: absolute;
        right: 0;
        bottom: 10px;
        border-radius: 20px 0 0 20px;
        z-index: -1;
    }
    .interview-message__img::before{
        content: none;
    }
    .interview-message__text {
        width: 100%;
        min-height: 0;
        transform: none;
    }
    .interview-message-title {
        font-size: 1.8rem;
        margin-bottom: 25px;
    }
    .interview-message-title::before {
        width: calc(100% + var(--inner-sides_sp));
        font-size: 3.6rem;
        padding-bottom: 8px;
        margin-bottom: 10px;
    }
    .interview-message__text-main {
        position: relative;
        z-index: 1;
        background: #fff;
        border-radius: 0;
        padding: 00;
        margin-top: 0;
        height: auto;
    }
    .interview-message__text-main p{
        font-size: 1.4rem;
        line-height: calc(1em + 14px);
    }
    .interview-message__text-main p:not(:last-child){
        margin-bottom: 10px;
    }
}
/*interview-recommend*/
.interview-recommend{
    margin-top: 60px;
    padding-left: 60px;
}
.interview-recommend-inner{
    background: var(--bg-gray);
    border-radius: 40px;
    padding: 50px;
    box-sizing: border-box;
    width: 100%;
    margin: 0 auto;
    display: flex;
    justify-content: space-between;
}
.interview-recommend__img{
    width: 330px;
    min-width: 330px;
}
.interview-recommend__img img{
    width: 100%;
    height: auto;
}
.interview-recommend__text{
    width: 670px;
    padding-top: 15px;
    box-sizing: border-box;
}
.interview-recommend-title{
    margin-bottom: 30px;
}
.interview-recommend-title span{
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 160px;
    height: 28px;
    font-size: 1.6rem;
    font-weight: 500;
    background: #fff;
    border: solid 1px var(--main-blue);
    border-radius: 14px;
    color: var(--main-blue);
    margin-right: 15px;
}
.interview-recommend-title small{
    font-family: var(--font-en);
    font-size: 1.6rem;
    font-weight: 700;
    color: var(--main-blue);
}
.interview-recommend-title strong{
    font-size: 3.0rem;
    font-weight: bold;
    display: block;
    margin-top: 10px;
}
.interview-recommend__text-main{
    font-size: 1.6rem;
    line-height: calc(1em + 16px);
}
@media screen and (max-width:768px){
    /*--- sp ---*/
    .interview-recommend{
        margin-top: 40px;
        display: block;
        padding-left: 0;
    }
    .interview-recommend-inner {
        background: var(--bg-gray);
        border-radius: 15px;
        padding: 15px;
        box-sizing: border-box;
        width: 100%;
        margin: 0 auto;
        display: block;
    }
    .interview-recommend__img {
        width: 100%;
        min-width: inherit;
        margin-bottom: 15px;
    }
    .interview-recommend__text {
        width: 100%;
        padding-top: 0;
    }
    .interview-recommend-title {
        margin-bottom: 20px;
    }
    .interview-recommend-title span {
        display: inline-flex;
        align-items: center;
        justify-content: center;
        width: 140px;
        height: 28px;
        font-size: 1.4rem;
    }
    .interview-recommend-title small {
        font-size: 1.4rem;
    }
    .interview-recommend-title strong{
        font-size: 2.4rem;
        margin-top: 8px;
    }
    .interview-recommend__text-main{
        font-size: 1.4rem;
        line-height: calc(1em + 14px);
    }
}
/*interview-next*/
.interview-next{
    margin-top: 60px;
    padding-left: 60px;
}
.interview-next-title{
    color: var(--vivid-black);
    font-weight: 900;
    font-size: 2.0rem;
    position: relative;
    z-index: 2;
    margin-bottom: 40px;
}
.interview-next-title::before {
    width: calc(100% + var(--container-sides));
    display: block;
    color: var(--main-blue);
    font-family: var(--font-en);
    font-size: 6.0rem;
    line-height: 1;
    content: "NEXT";
    border-bottom: solid 1px var(--main-blue);
    padding-bottom: 15px;
    margin-bottom: 10px;
}
.interview-next .top-interview-list {
    flex-flow: row nowrap;
}
.interview-next .top-interview-list-item:not(:nth-of-type(4n)) {
    margin-right: 0;
}
.interview-next .top-interview-list-item:not(:nth-child(-n + 4)) {
    margin-top: 0;
}
.interviewSlider__wrapper {
    position: relative;
}
.interviewSlider__inner {
    position: relative;
    width: 1720px;
}
.interview-next .interviewSlider__wrapper .slider-prev-button{
    position: absolute;
    top: -60px;
    left: 1020px;
    background: url(../images/icon_prev.svg) no-repeat;
    background-size: contain;
    overflow: hidden;
    text-indent: 100%;
    white-space: nowrap;
    width: 50px;
    height: 50px;
}
.interview-next .interviewSlider__wrapper .slider-next-button{
    position: absolute;
    top: -60px;
    left: 1080px;
    background: url(../images/icon_next.svg) no-repeat;
    background-size: contain;
    overflow: hidden;
    text-indent: 100%;
    white-space: nowrap;
    width: 50px;
    height: 50px;
}
@media screen and (max-width:768px) {
    /*--- sp ---*/
    .interview-next{
        margin-top: 40px;
        padding-left: 0;
    }
    .interview-next-title {
        font-size: 1.8rem;
        margin-bottom: 25px;
    }
    .interview-next-title::before {
        width: calc(100% + var(--inner-sides_sp));
        font-size: 3.6rem;
        padding-bottom: 8px;
        margin-bottom: 10px;
    }
    .interviewSlider__wrapper { 
        overflow: hidden;
        width: calc(100% + var(--inner-sides_sp));
        padding-top: 50px;
        margin-top: -50px;
    }
    .interviewSlider__inner {
        width: calc(140% + 20px);
    }
    .interview-next .top-interview-list-item {
        margin: 0!important;
    }
    .interview-next .interviewSlider__wrapper .slider-prev-button{
        position: absolute;
        top: -50px;
        left: calc(58% - 50px);
        width: 40px;
        height: 40px;
        z-index: 10;
    }
    .interview-next .interviewSlider__wrapper .slider-next-button{
        position: absolute;
        top: -50px;
        left: 58%;
        width: 40px;
        height: 40px;
        z-index: 10;
    }
}

/*--------------------------
page-title
-------------------------*/
.page-title{
    background: #fff;
    min-width: 720px;
    border-radius: 0 0 40px 0;
    position: relative;
    display: table;
    margin-bottom: 50px;
    padding: 0 25px 25px var(--outer-sides);
    margin-right: 40px;
}
@media screen and (max-width:1200px){
    .page-title{
        padding: 0 25px 25px 60px;
    }
}
.page-title::after{
    content: "";
    background: url(../images/interview_icon.svg) no-repeat center / contain;
    width: 40px;
    height: 40px;
    position: absolute;
    top: 0;
    right: -40px;
    transform: rotate(-180deg);
}
.page-title #recruit-breadcrumbs {
    width: auto;
    margin: 0;
}
.page-title .recruit-breadcrumbs__inner{
    padding: 0;
}
.page-title-main{
    padding-top: 30px;
    font-size: 2.7rem;
    font-weight: 900;
    color: var(--main-blue);
    margin-bottom: 30px;
    position: relative;
}
.page-title-main::before {
    display: block;
    color: var(--main-blue);
    font-family: var(--font-en);
    font-size: 7.2rem;
    line-height: 1;
    content: attr(data-title-en);
}
.page-title-main::after{
    content: "";
    background: var(--main-green);
    width: 60px;
    height: 6px;
    position: absolute;
    top: 0;
    left: 0;
}
@media screen and (max-width:768px){
    /*--- sp ---*/
    .page-title{
        background: #fff;
        min-width: 73.4375%;
        border-radius: 0 0 15px 0;
        position: relative;
        display: table;
        margin-bottom: 20px;
        padding: 0 20px 15px var(--outer-sides);
        margin-right: 15px;
    }
    .page-title::after{
        content: "";
        background: url(../images/interview_icon.svg) no-repeat center / contain;
        width: 15px;
        height: 15px;
        position: absolute;
        top: 0;
        right: -15px;
        transform: rotate(-180deg);
    }
    .page-title-main {
        padding-top: 20px;
        font-size: 1.8rem;
        margin-bottom: 25px;
        position: relative;
    }
    .page-title-main::before {
        font-size: 3.6rem;
    }
    .page-title-main::after{
        width: 40px;
        height: 4px;
    }
}
/*-----------------------
news-list-pager
-------------------------*/
.news-list-pager{
    display: flex;
    justify-content: center;
}
.news-list-pager .page-numbers {
    flex: 0 0 50px;
    height: 50px;
    position: relative;
    margin: 0 5px;
}
.news-list-pager .page-numbers{
    display: flex;
    justify-content: center;
    align-items: center;
    width: 50px;
    height: 50px;
    color: var(--main-blue);
    font-family: var(--font-en);
    font-size: 2.1rem;
    font-weight: 700;
    border: solid 1px var(--main-blue);
    transition: all var(--ease);
}
.news-list-pager .page-numbers.current {
    background: var(--main-blue);
    color: #fff;
}
.news-list-pager .page-numbers.dots{
    border: none;
    max-width: 25px;
}
.news-list-pager .page-numbers:not(span):hover{
    transition: all var(--ease);
    background: var(--main-blue);
    color: #fff;
}
@media screen and (max-width:768px){
    /*--- sp ---*/
    .news-list-pager .page-numbers {
        flex: 0 0 36px;
        height: 36px;
        position: relative;
        margin: 0 5px;
    }
    .news-list-pager .page-numbers{
        width: 36px;
        height: 36px;
        font-size: 1.6rem;
    }
    .news-list-pager .page-numbers.dots{
        border: none;
        max-width: 15px;
    }
    .news-list-pager .page-numbers:not(span):hover{
        transition: all var(--ease);
        background: none;
        color: var(--main-blue);
    }
}
/*-------------------
news-list
-------------------*/
.news-list{
    width: var(--inner-width);
    margin: 0 auto;
    background: #fff;
    border-radius: 40px;
    padding: 60px;
    box-sizing: border-box;
    box-shadow: var(--container-shadow);
}
.news-list-item{
    border-bottom: solid 1px #e6e6e6;
    padding-bottom: 40px;
    margin-bottom: 40px;
    display: flex;
    align-items: center;
    justify-content: space-between;
}
.news-list-item.in_info{
    align-items: end;
}
.news-list-item__text{
    width: 860px;
}
.news-list-item__text time{
    font-size: 1.6rem;
    font-weight: 700;
    color: var(--text-gray2);
    margin-bottom: 3px;
    display: block;
}
.news-list-item__title{
    font-size: 2.1rem;
    font-weight: bold;
    color: var(--main-blue);
    margin-bottom: 15px;
}
.news-list-item__btn{
    width: 180px;
}
@media screen and (max-width:768px){
    /*--- sp ---*/
    .news-list {
        width: var(--inner-width);
        border-radius: 15px;
        padding: 20px 15px;
    }
    .news-list-item{
        border-bottom: solid 1px #e6e6e6;
        padding-bottom: 25px;
        margin-bottom: 25px;
        display: block;
    }
    .news-list-item__text {
        width: 100%;
    }
    .news-list-item__text time {
        font-size: 1.5rem;
    }
    .news-list-item__title {
        font-size: 1.8rem;
        margin-bottom: 15px;
    }
    .news-list-item__info{
        margin-bottom: 15px;
    }
    .news-list-item__btn{
        width: 170px;
    }
}
/*-------------------
news-detail
-------------------*/
.news-detail{
    width: var(--inner-width);
    margin: 0 auto;
    background: #fff;
    border-radius: 40px;
    padding: 60px;
    box-sizing: border-box;
    box-shadow: var(--container-shadow);
}
.news-detail time{
    color: var(--text-gray2);
    font-size: 2.0rem;
    font-family: var(--font-en);
    font-weight: 700;
    margin-bottom: 10px;
    display: block;
}
.news-detail-title{
    color: var(--main-blue);
    font-size: 3.0rem;
    font-weight: bold;
    padding-bottom: 20px;
    border-bottom: solid 1px var(--border-gray);
    margin-bottom: 20px;
}
.news-detail-content{
    padding-bottom: 50px;
    border-bottom: solid 1px var(--border-gray);
}
.news-detail .wp_social_bookmarking_light{
    padding: 20px 0 0 0 !important;
    display: flex;
    align-items: center;
}
.news-detail .wp_social_bookmarking_light div {
    float: none !important;
    border: 0 !important;
    padding: 0 !important;
    margin:0 !important;
    min-height: inherit !important;
    line-height: 1 !important;
    text-indent: 0 !important;
}
.news-detail .wp_social_bookmarking_light div:not(:last-of-type){
    margin-right: 10px!important;
}
.news-detail .wsbl_line{
    width: 40px;
    height: 40px;
}
.news-detail .wsbl_line img{
    width: 100%;
    height: 100%;
}
.news-detail .wsbl_facebook_like{
    width: 90px;
    height: 20px;
}
.news-detail .wsbl_facebook_like iframe{
    width: 100%!important;
    height: 20px!important;
    transform: translateX(-20px);
}
.news-detail .fb_iframe_widget span{
    height: 20px!important;
}
.news-detail-content p+p {
    margin:10px 0 0;
}
@media screen and (max-width:768px){
    /*--- sp ---*/
    .news-detail {
        width: var(--inner-width);
        border-radius: 15px;
        padding: 20px 15px;
    }
    .news-detail time {
        font-size: 1.5rem;
        margin-bottom: 0;
    }
    .news-detail-title {
        color: var(--main-blue);
        font-size: 1.8rem;
        font-weight: bold;
        padding-bottom: 15px;
        border-bottom: solid 1px var(--border-gray);
        margin-bottom: 20px;
    }
    .news-detail-content{
        padding-bottom: 30px;
    }
    .news-detail .wp_social_bookmarking_light {
        padding: 15px 0 0 0 !important;
        display: flex;
        align-items: center;
    }
}
/*---------------------
recruit-page-title
-----------------------*/
.recruit-page-title{
    margin-bottom: 60px;
}
.recruit-page-title-main{
    font-size: 2.4rem;
    font-weight: bold;
}
.recruit-page-title-main::before {
    width: calc(100% + var(--container-sides));
    display: block;
    color: var(--main-blue);
    font-family: var(--font-en);
    font-size: 6.0rem;
    line-height: 1;
    content: attr(data-title-en);
    border-bottom: solid 1px var(--main-blue);
    padding-bottom: 15px;
    margin-bottom: 10px;
}
.recruit-page-title-text{
    font-size: 1.6rem;
    line-height: calc(1em + 16px);
    margin-top: 30px;
}
@media screen and (max-width:768px){
    /*--- sp ---*/
    .recruit-page-title{
        margin-bottom: 40px;
    }
    .recruit-page-title-main{
        font-size: 1.7rem;
        font-weight: bold;
    }
    .recruit-page-title-main::before {
        font-size: 3.4rem;
        padding-bottom: 8px;
        margin-bottom: 10px;
    }
    .recruit-page-title-text{
        font-size: 1.4rem;
        line-height: calc(1em + 14px);
        margin-top: 20px;
    }
}
/*----------------------
page
----------------------*/
.page-inner{
    width: var(--over-side-width);
    border-top-left-radius: var(--container-corner);
    border-bottom-left-radius: var(--container-corner);
    background: #fff;
    /*horiuchi20241023 box-shadow: var(--container-shadow);*/
    padding: 60px var(--container-sides) 80px 60px;
    margin-left: var(--container-sides);
    overflow-x: hidden;
}
.page-inner--recruitInfo{
    .main-recruit-pho {
        width: 100%;
        margin-left: 0;
    }
}
.page-sec-title{
    width: 330px;
    min-width: 330px;
}
.page-sec-title-main{
    font-size: 3.6rem;
    font-weight: bold;
    color: var(--main-blue);
}
.page-sec-title-main span{
    font-family: var(--font-en);
    font-size: 2.0rem;
    font-weight: bold;
    display: table;
    border-bottom: solid 1px var(--main-blue);
    padding-bottom: 10px;
    margin-bottom: 2px;
    line-height: 1;
}
.page-sec-title-main span b{
    font-size: 4.0rem;
}
.page-sec-title-main strong{
    display: block;
    padding-left: 30px;
    box-sizing: border-box;
}
.page-sec-title-text{
    font-size: 1.6rem;
    line-height: calc(1em + 16px);
    margin-top: 30px;
}
@media screen and (max-width:768px){
    /*--- sp ---*/
    .page-inner{
        padding: 30px var(--inner-sides_sp) 40px 15px;
        overflow: visible;
    }
    .page-sec-title {
        width: 100%;
        min-width: inherit;
        margin-bottom: 20px;
    }
    .page-sec-title-main {
        font-size: 2.4rem;
    }
    .page-sec-title-main span {
        font-family: var(--font-en);
        font-size: 1.5rem;
    }
    .page-sec-title-main span b {
        font-size: 3.0rem;
    }
    .page-sec-title-main strong {
        padding-left: 15px;
    }
}
/*----------------------
education
----------------------*/
.education-inner{
    width: var(--over-side-width);
    border-top-left-radius: var(--container-corner);
    border-bottom-left-radius: var(--container-corner);
    background: #fff;
    box-shadow: var(--container-shadow);
    padding: 60px var(--container-sides) 80px 60px;
    margin-left: var(--container-sides);
    overflow-x: hidden;
}
.education-sec{
    display: flex;
    justify-content: space-between;
}
.education-sec:not(:last-of-type){
    margin-bottom: 40px;
}
.education-sec-title{
    width: 330px;
    min-width: 330px;
}
.education-sec-title-main{
    font-size: 3.6rem;
    font-weight: bold;
    color: var(--main-blue);
}
.education-sec-title-main span{
    font-family: var(--font-en);
    font-size: 2.0rem;
    font-weight: bold;
    display: table;
    border-bottom: solid 1px var(--main-blue);
    padding-bottom: 10px;
    margin-bottom: 2px;
    line-height: 1;
}
.education-sec-title-main span b{
    font-size: 4.0rem;
}
.education-sec-title-main strong{
    display: block;
    padding-left: 30px;
    box-sizing: border-box;
}
.education-sec__textbox{
    width: 760px;
    padding-top: 50px;
    box-sizing: border-box;
}
.line-with-dots {
    position: relative;
    width: 100%;
    height: 1px;
    background-color: var(--base-gray);
    border: none;
}
.line-with-dots::before,
.line-with-dots::after {
    content: '';
    position: absolute;
    width: 7px; 
    height: 7px;
    background-color: var(--base-gray); 
    border-radius: 50%; 
}
.line-with-dots::before {
    top: -3px;
    left: -3px;
}
.line-with-dots::after {
    top: -3px;
    right: -3px;
}
.education-sec__list--item{
    display: flex;
    padding: 25px 0;
    box-sizing: border-box;
}
.education-sec__list--item-icon{
    display: block;
    margin-right: 25px;
}
.education-sec__list--item-text__list{
    counter-reset: list-counter;
}
.education-sec__list--item-text__list li{
    padding-left: 40px;
    position: relative;
    line-height: calc(1em + 10px);
}
.education-sec__list--item-text__list li:before{
    content: counter(list-counter) ;
    counter-increment: list-counter;
    font-family: var(--font-en);
    color: #fff;
    font-size: 18px;
    font-weight: 600;
    width: 30px;
    height: 30px;
    display: flex;
    justify-content: center;
    align-items: center;
    border-radius: 50%;
    background: var(--main-blue);
    position: absolute;
    left: 0;
    top: 0;
}
.education-sec__list--item-text__list li:not(:last-child){
    padding-bottom: 15px;
    border-bottom: dotted 1px var(--border-gray);
    margin-bottom: 15px;
}
.education-sec__list--item-text__list.last-line li:last-child{
    padding-bottom: 15px;
    border-bottom: dotted 1px var(--border-gray);
    margin-bottom: 15px;
}
.education-sec__list--item-icon__sp{
    display: none;
}
.education-sec__list--item-text-info__title{
    font-size: 2.7rem;
    font-weight: bold;
    margin-bottom: 10px;
}
.education-sec__list--item-text-info__text{
    font-size: 1.6rem;
    line-height: calc(1em + 10px);
}
.education-sec-title-text{
    font-size: 1.6rem;
    line-height: calc(1em + 16px);
    margin-top: 30px;
}
.education-sec__textbox-img{
    margin-bottom: 30px;
    display: block;
}
.education-sec__textbox-img img{
    border-radius: 40px;
}
.education-sec__list--item-text__list-title{
    font-size: 2.0rem;
    font-weight: bold;
    margin-bottom: 10px;
}
.education-sec + .recruit-page-title{
    margin-top: 90px;
}
@media screen and (max-width:768px){
    /*--- sp ---*/
    .education-inner{
        padding: 30px var(--inner-sides_sp) 40px 15px;
        overflow: visible;
    }
    .education-sec {
        display: block;
    }
    .education-sec-title {
        width: 100%;
        min-width: inherit;
        margin-bottom: 20px;
    }
    .education-sec-title-main {
        font-size: 2.4rem;
    }
    .education-sec-title-main span {
        font-family: var(--font-en);
        font-size: 1.5rem;
    }
    .education-sec-title-main span b {
        font-size: 3.0rem;
    }
    .education-sec-title-main strong {
        padding-left: 15px;
    }
    .line-with-dots{
        width: calc(100% + var(--container-sides));
    }
    .line-with-dots::after{
        content: none;
    }
    .education-sec__textbox {
        width: calc(100% + var(--container-sides));
        padding-top: 0;
        box-sizing: border-box;
        padding-right: var(--container-sides);
        box-sizing: border-box;
    }
    .education-sec__list--item{
        position: relative;
    }
    .education-sec__list--item-icon {
        /* display: block; */
        margin-right: 0;
        position: absolute;
        top: 10%;
        right: 0;
        width: 60px;
        height: 60px;
        box-sizing: border-box;
        display: none;
    }
    .education-sec__list--item-icon__sp{
        display: block;
        width: 60px;
        height: 60px;
        float: right; 
        margin-left: 10px;
    }
    .education-sec__list--item-text__list li{
        overflow: hidden;
    }
    .education-sec__list--item-text-info__title {
        font-size: 1.8rem;
    }
    .education-sec__list--item-text-info__text{
        font-size: 1.4rem;
    }
}
/*------------------
welfare
--------------------*/
@media screen and (min-width:769px){
    .page-content1.welfare{
        width: 100%;
        overflow: hidden;
    }
    .page-content1.welfare .page-content1-inner{
        width: var(--inner-width);
        margin: 0 auto;
    }
    .page-content1.welfare .recruit-page-title-main{
        overflow: hidden;
    }
}
.welfare .page-inner{
    overflow: inherit;
}
.welfare-sec:not(:last-of-type){
    margin-bottom: 80px;
}
.welfare-sec-main{
    display: flex;
    align-items: stretch;
    box-sizing: border-box;
    flex-flow: row-reverse;
}
.welfare-sec-textbox{
    max-width: 630px;
    min-width: 630px;
    transform: translateX(calc(var(--outer-sides-vw) + 90px));
    position: relative;
    z-index: 2;
}
.welfare-sec-title{
    height: 100%;
}
.welfare-sec-text{
    padding-right: 60px;
    background: #fff;
    border-radius: 0 40px 0 0;
    min-width: 630px;
    position: relative;
    z-index: 1;
    padding-top: 30px;
    height: calc(100% - 104px);
    font-size: 1.6rem;
    line-height: calc(1em + 16px);
}
.welfare-sec-text::before {
    content: "";
    background: url(../images/interview_icon.svg) no-repeat center / contain;
    width: 42px;
    height: 42px;
    position: absolute;
    top: -40px;
    right: 60px;
    transform: rotate(90deg);
    z-index: 1;
}
.welfare-sec-text::after {
    content: "";
    background: url(../images/interview_icon.svg) no-repeat center / contain;
    width: 42px;
    height: 42px;
    position: absolute;
    bottom: -1px;
    right: -40px;
    transform: rotate(90deg);
    z-index: 1;
}
.welfare-sec__img {
    margin-top: -125px;
    min-width: calc(600px + var(--outer-sides-vw));
    position: relative;
    transform: translateX(calc(var(--outer-sides-vw) - 9px));
}
.welfare-sec__img img {
    width: min(1120px, 100%);
    height: auto;
    border-radius: 40px 0 0 40px;
    position: relative;
}
@media screen and (min-width:2241px){
    .welfare-sec__img img{
        border-radius: 40px!important;
    }
}
.welfare-list{
    width: 1140px;
    position: absolute;
    left: 0;
    bottom: 0;
    display: flex;
    align-items: stretch;
    z-index: 2;
}
.welfare-list--item{
    width: 216px;
    position: relative;
    background: var(--bg-gray);
    border-radius: 20px;
    padding: 50px 20px 30px;
    font-size: 1.6rem;
    display: flex;
    justify-content: center;
    align-items: center;
    box-shadow: var(--main-blue) 5px 5px 0 0;
}
.welfare-list--item:not(:last-child){
    margin-right: 15px;
}
.welfare-list--item-icon{
    width: 80px;
    position: absolute;
    top: -40px;
    left: 0;
    right: 0;
    margin: auto;
}
.welfare-list{
    top: 263px;
    bottom: auto;
}
.welfare-list--item .sp-small1{
    font-size: 1.5rem;
}
.welfare-list--item .sp-small2{
    font-size: 1.5rem;
}
/*.number02*/
.number02 .welfare-sec-main {
    flex-flow: row;
}
.number02 .welfare-sec__img {
    margin-top: 0;
    position: relative;
    transform: translateX(calc((var(--outer-sides-vw) + 60px) * -1));
    text-align: right;
}
.number02 .welfare-sec-textbox {
    max-width: 600px;
    min-width: 600px;
    padding-left: 50px;
    box-sizing: border-box;
    transform: translateX(calc((var(--outer-sides-vw) + 70px)* -1));
    position: relative;
    z-index: 2;
}
.number02 .welfare-sec-text{
    padding-right: 0;
    min-width: inherit;
}
.number02 .welfare-list{
    justify-content: flex-end;
    left: auto;
    right: 0;
    top: 350px;
}
.number02 .welfare-sec-title{
    width: 100%;
}
.number02 .welfare-sec__img img {
    border-radius: 0 40px 40px 0;
}
.number02 .welfare-sec-text::before,
.number02 .welfare-sec-text::after{
    content: none;
}
/*.number03*/
.welfare-sec.number03{
    margin-top: 205px;
}
.number03 .page-sec-title{
    width: 490px;
}
.number03 .welfare-sec-text{
    height: calc(100% - 104px);
}
.number03 .welfare-sec-text span{
    display: block;
    color: var(--text-gray);
}
@media screen and (max-width: 1643px) {
    .welfare-sec-text{
        padding-bottom: 240px;
    }
    .number02 .welfare-sec-text {
        padding-bottom: 180px;
    }
    .number03 .welfare-sec-text{
        padding-bottom: 0;
    }
}
@media screen and (max-width: 1216px) {
    .welfare-sec__img {
        min-width: 600px;
        position: relative;
        transform: none;
    }
    .welfare-sec-textbox{
        transform: translateX(90px);
    }
    .welfare-sec-text::after {
        top: 88px;
    }
    .number02 .welfare-sec-main:after{
        content: none;
    }
    .number02 .welfare-sec__img{
        min-width: 590px;
        margin-left: -60px;
        transform: none;
    }
    .number02 .welfare-sec-textbox {
        max-width: 550px;
        min-width: 550px;
        padding-left: 50px;
        box-sizing: border-box;
        /* transform: translateX(calc((var(--outer-sides-vw) + 80px)* -1)); */
        transform: none;
        position: relative;
        z-index: 2;
    }
    .number03 .welfare-sec-text{
        height: calc(100% - 104px);
    }
}
@media screen and (max-width:768px){
    /*--- sp ---*/
    .welfare-sec:not(:last-of-type){
        margin-bottom: 45px;
    }
    .welfare-sec-main{
        display: block;
    }
    .welfare-sec__img {
        width: calc(100% + var(--inner-sides_sp));
        min-width: inherit;
        position: relative;
        transform: none;
        margin-top: 0;
    }
    .welfare-sec__img img {
        width: 100%;
        height: auto;
        border-radius: 15px 0 0 15px;
        position: relative;
    }
    .welfare-sec-textbox {
        max-width: inherit;
        min-width: inherit;
        transform: none;
        position: relative;
        z-index: 2;
        margin-top: -20px;
    }
    .welfare-sec-main .page-sec-title-main span{
        position: relative;
    }
    .welfare-sec-main .page-sec-title-main span:before{
        content: "";
        background: #fff;
        width: calc(100% + 15px);
        height: calc(100% + 10px);
        position: absolute;
        top: -10px;
        left: 0;
        z-index: -1;
        border-radius: 0 15px 0 0;
    }
    .welfare-sec-main .page-sec-title-main span::after {
        content: "";
        background: url(../images/interview_icon.svg) no-repeat center / contain;
        width: 15px;
        height: 15px;
        position: absolute;
        top: -25px;
        left: 0;
        transform: rotate(90deg);
        z-index: 1;
    }
    .welfare-sec-text {
        padding-right: 0;
        border-radius: 0;
        min-width: inherit;
        position: relative;
        z-index: 1;
        padding-top: 0;
        height: auto;
        padding-bottom: 0;
        font-size: 1.4rem;
        line-height: calc(1em + 10px);
        margin-top: 20px;
    }
    .welfare-sec-text::before,
    .welfare-sec-text::after{
        content: none;
    }
    .welfare-list {
        width: 100%;
        position: static;
        display: flex;
        align-items: stretch;
        flex-flow: row wrap;
        justify-content: space-between;
        z-index: 2;
        margin-top: 60px;
    }
    .welfare-list--item-icon {
        width: 60px;
        position: absolute;
        top: -30px;
        left: 0;
        right: 0;
        margin: auto;
    }
    .welfare-list--item {
        width: 48%;
        position: relative;
        background: var(--bg-gray);
        border-radius: 20px;
        padding: 40px 10px 20px;
        font-size: 1.4rem;
        display: flex;
        justify-content: center;
        align-items: center;
        min-height: 100px;
        box-shadow: var(--main-blue) 3px 3px 0 0;
        border-radius: 15px;
    }
    .welfare-list--item:not(:nth-of-type(-n + 2)){
        margin-top: 40px;
    }
    .welfare-list--item:not(:last-child) {
        margin-right: 0;
    }
    .welfare-list--item .sp-small1{
        font-size: 1.1rem;
    }
    .welfare-list--item .sp-small2{
        font-size: 1.1rem;
    }
    .welfare-list--item .sp-small3{
        font-size: 1.3rem;
    }
    .number02 .welfare-sec__img {
        transform: translateX(-15px);
        width: calc(100% + var(--inner-sides_sp));
        min-width: inherit;
        position: relative;
        margin-top: 0;
        margin-left: 0;
    }
    .number02 .welfare-sec__img img{
        border-radius: 0 15px 15px 0;
    }
    .number02 .welfare-sec-textbox {
        max-width: inherit;
        min-width: inherit;
        padding-left: 0;
        box-sizing: border-box;
        transform: none;
        position: relative;
        z-index: 2;
    }
    .number02 .welfare-sec-main .page-sec-title-main span:before {
        content: "";
        background: #fff;
        width: calc(100% + 30px);
        height: calc(100% + 10px);
        position: absolute;
        top: -10px;
        left: -15px;
        z-index: -1;
        border-radius: 0 15px 0 0;
    }
    .number02 .welfare-sec-main .page-sec-title-main span::after {
        left: calc(100% + 14px);
        top: 5px;
    }
    .number02 .welfare-sec-text {
        padding-bottom: 0;
    }
    .number02 .welfare-list{
        justify-content: space-between;
    }
    .welfare-sec.number03{
        margin-top: 0;
    }
    .number03 .page-sec-title {
        width: 100%;
    }
    .number03 .welfare-sec-text {
        width: 100%;
        height: auto;
    }
}
/*-------------------
page-content1
-------------------*/
.page-content1{
    width: var(--inner-width);
    margin: 0 auto;
}
.page-content1-inner{
    background: #fff;
    border-radius: 40px;
    padding: 60px;
    box-sizing: border-box;
    /*horiuchi20241023 box-shadow: var(--container-shadow);*/
}
@media screen and (max-width:768px){
    /*--- sp ---*/
    .page-content1-inner{
        border-radius: 15px;
        padding: 20px 15px;
    }
}
/*---------------------
faq
-----------------------*/
.faq-link {
    display: flex;
    flex-wrap: wrap; 
    gap: 15px; 
    justify-content: flex-start;
    margin-bottom: 30px;
}
.faq-link__btn {
    background-color: #ffffff;
    border-radius: 5px;
    flex: 0 1 auto; 
    min-width: 228px;
    max-width: 100%;
    height: 50px;
    box-sizing: border-box;
    box-shadow: var(--container-shadow);
    white-space: nowrap;
    transition: all var(--ease);
}
.faq-link__btn:hover {
    box-shadow: rgba(63, 28, 0, .1) 0px 1px 4px;
    transition: all var(--ease);
}
.faq-link__btn a {
    font-size: 1.8rem;
    font-weight: bold;
    text-decoration: none;
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    padding: 10px 15px 10px 45px;
    position: relative;
}
.faq-link__btn a:before {
    position: absolute;
    top: calc(50% - 8px);
    left: 15px;
    width: 20px;
    height: 20px;
    border-radius: 50%;
    background: var(--main-blue);
    content: "";
}
.faq-link__btn a:after {
    position: absolute;
    top: calc(50% - 2px);
    left: 22px;
    transform: rotate(135deg);
    width: 6px;
    height: 6px;
    border-top: solid 2px #fff;
    border-right: solid 2px #fff;
    content: "";
}
.faq-sec:not(:last-child){
    margin-bottom: 80px;
}
.faq-sec-title{
    font-size: 3.0rem;
    font-weight: bold;
    margin-bottom: 20px;
    position: relative;
}
.faq-sec-title:before{
    content: "";
    background: var(--main-green);
    width: 48px;
    height: 2px;
    position: absolute;
    left: -60px;
    top: 0;
    bottom: 0;
    margin: auto;
}
.faq-sec-list{
    border-top: solid 1px var(--border-gray);
    counter-reset: q-counter;
}
.faq-sec-list--item{
    border-bottom: solid 1px var(--border-gray);
}
.faq-sec-list--item dt {
    position: relative; 
    min-height: 78px;
    padding: 15px 50px 15px 95px;
    box-sizing: border-box;
    font-size: 1.8rem;
    font-weight: bold;
    line-height: calc(1em + 10px);
    display: flex;
    align-items: center;
    cursor: pointer;
}

.faq-sec-list--item dt::before {
    width: 48px;
    height: 48px;
    color: #fff;
    background: var(--main-blue);
    border-radius: 7px;
    display: flex;
    justify-content: center;
    align-items: center;
    font-family: var(--font-en);
    font-size: 1.6rem;
    font-weight: bold;
    content: "Q"counter(q-counter); 
    counter-increment: q-counter; 
    position: absolute; 
    left: 15px;
    font-weight: bold; 
}
.faq-sec-list--item dt::after {
    clip-path: var(--clip-right-arrow);
    position: absolute;
    top: calc(50% - 6px);
    left: 63px;
    width: 15px;
    height: 14px;
    background: var(--main-blue);
    content: "";
}
.faq-sec-list--item dt span:before,
.faq-sec-list--item dt span:after {
    content: "";
    display: block;
    width: 18px;
    height: 2px;
    background-color: var(--main-green);
    position: absolute;
    top: 0;
    bottom: 0;
    right: 15px;
    margin: auto;
    z-index: 1;
    transition: all var(--ease);
}
.faq-sec-list--item dt span:after {
    transform: rotate(90deg);
}
.faq-sec-list--item dt.is--active span:after {
    transform: rotate(0);
    transition: all var(--ease);
}

.faq-sec-list--item dd {
    position: relative; 
    min-height: 78px;
    padding: 15px 15px 15px 95px;
    box-sizing: border-box;
    font-size: 1.6rem;
    font-weight: normal;
    line-height: calc(1em + 10px);
    display: flex;
    align-items: center;
    /* cursor: pointer; */
    background: var(--bg-gray);
    font-weight: normal;
}
.faq-sec-list--item dd::before {
    width: 48px;
    height: 48px;
    color: var(--main-green);
    background: #fff;
    border-radius: 7px;
    display: flex;
    justify-content: center;
    align-items: center;
    font-family: var(--font-en);
    font-size: 1.6rem;
    font-weight: bold;
    content: "A";
    position: absolute; 
    left: 30px;
    font-weight: bold; 
}
.faq-sec-list--item dd::after {
    clip-path:var(--clip-left-arrow);
    position: absolute;
    top: calc(50% - 6px);
    left: 15px;
    width: 15px;
    height: 14px;
    background: #fff;
    content: "";
}
.faq-sec-list--item dd a{
    text-decoration: underline;
    color: var(--main-blue);
}
@media screen and (max-width:768px){
    /*--- sp ---*/
    .faq-link {
        display: flex;
        flex-wrap: wrap; 
        gap: 10px; 
        justify-content: flex-start;
        margin-bottom: 20px;
    }
    .faq-link__btn {
        background-color: #ffffff;
        border-radius: 5px;
        flex: 0 1 auto; 
        min-width: 48%;
        height: 40px;
        box-sizing: border-box;
        box-shadow: var(--container-shadow);
        white-space: nowrap;
        transition: all var(--ease);
    }
    .faq-link__btn a {
        font-size: 1.4rem;
        text-decoration: none;
        width: 100%;
        height: 100%;
        display: flex;
        align-items: center;
        padding: 10px 10px 10px 30px;
        position: relative;
    }
    .faq-link__btn a:before {
        position: absolute;
        top: calc(50% - 7px);
        left: 10px;
        width: 14px;
        height: 14px;
        border-radius: 50%;
        background: var(--main-blue);
        content: "";
    }
    .faq-link__btn a:after {
        position: absolute;
        top: calc(50% - 3px);
        left: 14px;
        transform: rotate(135deg);
        width: 5px;
        height: 5px;
        border-top: solid 2px #fff;
        border-right: solid 2px #fff;
        content: "";
    }
    .faq .page-content1-inner{
        padding: 30px 0 40px 0;
        width: var(--over-side-width);
        border-radius: var(--container-corner) 0 0 var(--container-corner);
        margin-left: var(--container-sides);
    }
    .faq-sec-title {
        font-size: 1.8rem;
        font-weight: bold;
        margin-bottom: 15px;
        position: relative;
        padding-left: 15px;
        border-left: solid 2px var(--main-green);
    }
    .faq-sec-title:before{
        content: none;
    }
    .faq-sec-list--item dt {
        position: relative;
        min-height: 66px;
        padding: 15px 30px 15px 60px;
        box-sizing: border-box;
        font-size: 1.4rem;
        font-weight: bold;
        line-height: calc(1em + 6px);
        display: flex;
        align-items: center;
        cursor: pointer;
    }
    .faq-sec-list--item dt::before {
        width: 36px;
        height: 36px;
        font-size: 1.2rem;
        left: 10px;
    }
    .faq-sec-list--item dt::after {
        top: calc(50% - 4px);
        left: 46px;
        width: 7px;
        height: 8px;
    }
    .faq-sec-list--item dt span:before, .faq-sec-list--item dt span:after {
        width: 12px;
        height: 2px;
        right: 10px;
    }
    .faq-sec-list--item dd {
        position: relative;
        min-height: 66px;
        padding: 15px 10px 15px 60px;
        box-sizing: border-box;
        font-size: 1.3rem;
        line-height: calc(1em + 6px);
        display: flex;
        align-items: center;
        cursor: pointer;
    }
    .faq-sec-list--item dd::before {
        width: 36px;
        height: 36px;
        font-size: 1.2rem;
        left: 17px;
    }
    .faq-sec-list--item dd::after {
        top: calc(50% - 4px);
        left: 10px;
        width: 7px;
        height: 8px;
    }
}
.default-sec:not(:last-of-type){
    margin-bottom: 60px;
}
.default-sec-title{
    margin-bottom: 30px;
}
.default-sec-title-main{
    font-size: 3.0rem;
    font-weight: bold;
    padding-left: 40px;
    box-sizing: border-box;
    position: relative;
}
.default-sec-title-main small{
    font-size: 1.8rem;
    font-weight: 500;
}
.default-sec-title-main:before{
    content: "";
    background: url(../images/company/icon_company.svg) no-repeat center / contain;
    width: 30px;
    height: 30px;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    margin: auto;
}
.default-sec-text{
    font-size: 1.6rem;
    line-height: calc(1em + 16px);
    margin-bottom: 30px;
}
.default-sec-btn{
    width: 450px;
    height: 63px;
    margin-bottom: 30px;
}
.default-sec-btn a{
    display: flex;
    align-items: center;
    width: 100%;
    height: 100%;
    font-size: 1.9rem;
    color: var(--main-blue);
    border: solid 1px var(--main-blue);
    border-radius: 10px;
    position: relative;
    padding: 0 40px 0 20px;
}
.default-sec-btn a::after {
    position: absolute;
    right: 20px;
    top: 9px;
    bottom: 0;
    margin: auto;
    transform: rotate(45deg) translateY(-50%);
    width: 9px;
    height: 9px;
    border-top: solid 2px var(--main-blue);
    border-right: solid 2px var(--main-blue);
    content: "";
}
@media screen and (max-width:768px){
    /*--- sp ---*/
    .default-sec:not(:last-of-type){
        margin-bottom: 40px;
    }
    .default-sec-title{
        margin-bottom: 20px;
    }
    .default-sec-title-main{
        font-size: 2.0rem;
        font-weight: bold;
        padding-left: 30px;
        box-sizing: border-box;
        position: relative;
    }
    .default-sec-title-main small{
        font-size: 1.2rem;
        font-weight: 500;
    }
    .default-sec-title-main:before{
        content: "";
        background: url(../images/company/icon_company.svg) no-repeat center / contain;
        width: 20px;
        height: 20px;
        position: absolute;
        top: 0;
        bottom: 0;
        left: 0;
        margin: auto;
    }
    .default-sec-text{
        font-size: 1.4rem;
        line-height: calc(1em + 14px);
        margin-bottom: 20px;
    }
    .default-sec-btn{
        width: 100%;
        height: 50px;
    }
    .default-sec-btn a {
        font-size: 1.4rem;
        padding: 0 30px 0 15px;
    }
}
/*---------------------
company
---------------------*/
.company .recruit-page-title{
    margin-bottom: 40px;
}
.company-sec:not(:last-of-type){
    margin-bottom: 60px;
}
.company .recruit-page-title-main::before{
    width: calc(100% + 60px);
}
.company-sec-title{
    margin-bottom: 30px;
}
.company-sec-title-main{
    font-size: 3.0rem;
    font-weight: bold;
    padding-left: 40px;
    box-sizing: border-box;
    position: relative;
}
.company-sec-title-main small{
    font-size: 1.8rem;
    font-weight: 500;
}
.company-sec-title-main:before{
    content: "";
    background: url(../images/company/icon_company.svg) no-repeat center / contain;
    width: 30px;
    height: 30px;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    margin: auto;
}
.company-sec-inner1{
    display: flex;
    align-items: stretch;
    justify-content: space-between;
}
.company-sec-inner1:not(:last-of-type){
    margin-bottom: 20px;
}
.company-sec-inner1-left{
    width: 348px;
    min-width: 348px;
    display: flex;
    flex-flow: column;
    justify-content: space-between;
}
.company-sec-box{
    padding: 20px 30px;
    box-sizing: border-box;
    border-radius: 20px;
    background: var(--bg-gray);
}
.company-sec-box dt{
    text-align: center;
    font-size: 2.0rem;
    color: var(--main-blue);
    font-weight: bold;
    margin-bottom: 20px;
}
.company-sec-box dt span{
    font-size: 2.0rem;
    color: var(--main-blue);
    font-weight: bold;
    display: table;
    margin: 0 auto;
    position: relative;
    padding: 0 30px;
    box-sizing: border-box;
}
.company-sec-box dt span:before,
.company-sec-box dt span:after{
    content: "";
    background: var(--main-green);
    width: 20px;
    height: 2px;
    position: absolute;
    top: 0;
    bottom: 0;
    margin: auto;
}
.company-sec-box dt span:before{
    left: 0;
}
.company-sec-box dt span:after{
    right: 0;
}
.company-sec-box-pt1{
    color: var(--main-blue);
    display: flex;
    justify-content: center;
    align-items: center;
}
.company-sec-box-pt1--item1{
    font-size: 3.0rem;
    font-weight: bold;
    margin-right: 20px;
    line-height: calc(1em + 12px);
}
.company-sec-box-pt1--item1 strong{
    font-family: var(--font-en);
    font-size: 7.2rem;
    font-weight: bold;
    line-height: calc(1em + 12px);
}
.company-sec-box-pt1--item2{
    font-family: var(--font-en);
    font-size: 3.0rem;
    font-weight: bold;
    border-top: solid 1px var(--base-gray);
    border-bottom: solid 1px var(--base-gray);
    padding: 10px 0;
    box-sizing: border-box;
    display: flex;
    align-items: center;
    position: relative;
}
.company-sec-box-pt1--item2 span{
    font-size: 1.6rem;
    margin-right: 3px;
}
.company-sec-box-pt1--item2::before,
.company-sec-box-pt1--item2::after {
    content: '';
    position: absolute;
    width: 7px;
    height: 7px;
    background-color: var(--base-gray);
    border-radius: 50%;
}
.company-sec-box-pt1--item2::before{
    top: -4px;
    left: -3px;
}
.company-sec-box-pt1--item2::after{
    bottom: -4px;
    right: -3px;
}
.company-sec-box-pt2--item1{
    font-family: var(--font-en);
    font-size: 6.0rem;
    font-weight: bold;
    color: var(--main-blue);
    text-align: center;
    line-height: 1;
}
.company-sec-box-pt2--item1 img{
    margin-right: 15px;
    transform: translateY(-6px);
}
.company-sec-box-pt2--item1 small{
    font-size: 1.8rem;
}
.company-sec-box-pt2--item2{
    color: var(--main-blue);
    font-size: 1.6rem;
    font-weight: 500;
    margin-top: 3px;
    text-align: center;
}
.company-sec-box-pt2--item3{
    font-family: var(--font-en);
    font-size: 6.0rem;
    font-weight: bold;
    color: var(--main-blue);
    text-align: center;
    line-height: 1;
}
.company-sec-box-pt2--item3 small{
    font-size: 2.4rem;
}
.company-sec-inner1-right{
    min-width: 714px;
    display: flex;
    flex-flow: column;
    justify-content: space-between;
}
.company-sec-inner1-right .company-sec-box:not(:last-child){
    margin-bottom: 20px;
}
.company-sec-box-pt3{
    display: flex;
    align-items: center;
    justify-content: center;
}
.company-sec-box-pt3 .graph{
    width: 300px;
    height: auto;
    aspect-ratio: 1 / 1;
}
.company-sec-box-pt3--text{
    color: var(--main-blue);
    margin-left: 30px;
    font-size: 2.4rem;
    font-weight: bold;
    line-height: calc(1em + 12px);
}
.company-sec-box-pt3--text strong{
    font-family: var(--font-en);
    font-size: 6.0rem;
    font-weight: bold;
}
.company-sec-box-pt3--text span{
    font-family: var(--font-en);
    font-size: 4.0rem;
    font-weight: bold;
}
.company-sec-box-pt3--text small{
    display: block;
    font-size: 1.6rem;
    font-weight: 500;
}
.company-sec-box-pt4__list{
    display: flex;
    justify-content: space-between;
    margin-bottom: 20px;
}
.company-sec-box-pt4__text{
    display: flex;
    justify-content: space-between;
}
.company-sec-box-pt4__text--item{
    width: 25%;
    text-align: center;
    color: var(--main-blue);
}
.company-sec-box-pt4__text--item:not(:last-child){
    border-right: solid 1px var(--base-gray);
    position: relative;
}
.company-sec-box-pt4__text--item:not(:last-child)::before,
.company-sec-box-pt4__text--item:not(:last-child)::after {
    content: '';
    position: absolute;
    width: 7px;
    height: 7px;
    background-color: var(--base-gray);
    border-radius: 50%;
}
.company-sec-box-pt4__text--item:not(:last-child):before{
    top: -4px;
    right: -4px;
}
.company-sec-box-pt4__text--item:not(:last-child):after{
    bottom: -4px;
    right: -4px;
}
.company-sec-box-pt4__text-title{
    font-size: 1.4rem;
    font-weight: bold;
    margin-bottom: 5px;
}
.company-sec-box-pt4__text-info{
    font-family: var(--font-en);
    font-size: 3.6rem;
    font-weight: bold;
    line-height: 1em;
}
.company-sec-box-pt4__text-info small,
.company-sec-box-pt4__text-info span{
    font-size: 1.8rem;
    font-weight: bold;
}
.company-sec-box-pt4__text-sub{
    font-size: 1.4rem;
    font-weight: 500;
}
.company-sec-inner2-left{
    width: 531px;
    min-width: 531px;
    display: flex;
    flex-flow: column;
    justify-content: space-between;
}
.company-sec-inner2-right{
    width: 531px;
    min-width: 531px;
    display: flex;
    flex-flow: column;
    justify-content: space-between;
}
.company-sec-box-pt2 .graph2 {
    width: 240px;
    height: auto;
    aspect-ratio: 1 / 1;
    margin: 0 auto;
    position: relative;
    margin-bottom: 10px;
}
.company-sec-box-pt2 .graph2:before{
    content: "";
    background: url(../images/company/illust_company007.svg) no-repeat center / contain;
    width: 51px;
    height: 130px;
    position: absolute;
    left: -70px;
    top: 0;
    bottom: 0;
    margin: auto;
}
.company-sec-box-pt2 .graph2:after{
    content: "";
    background: url(../images/company/illust_company008.svg) no-repeat center / contain;
    width: 54px;
    height: 120px;
    position: absolute;
    right: -70px;
    top: 0;
    bottom: 0;
    margin: auto;
}
.company-sec-inner2-left .company-sec-box:not(:last-of-type){
    margin-bottom: 20px;
}
.company-sec-inner2-right .company-sec-box:not(:last-of-type){
    margin-bottom: 20px;
}
.company-sec-box-pt5{
    color: var(--main-blue);
    display: flex;
    align-items: center;
    box-sizing: border-box;
    position: relative;
    padding: 10px 70px 10px 0;
}
.company-sec-box-pt5:after{
    content: "";
    background: url(../images/company/illust_company010.svg) no-repeat center / contain;
    width: 60px;
    height: 60px;
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    margin: auto;
}
.company-sec-box-pt5--item1{
    font-size: 2.0rem;
    font-weight: bold;
    margin-right: 20px;
}
.company-sec-box-pt5--item2{
    border-left: solid 2px var(--main-green);
    padding-left: 20px;
    font-size: 2.4rem;
    font-weight: bold;
}
.company-sec-box-pt5--item2 strong{
    font-family: var(--font-en);
    font-size: 6.0rem;
    font-weight: bold;
    line-height: 1em;
}
.company-sec-box-pt6{
    color: var(--main-blue);
    display: flex;
    justify-content: space-between;
    align-items: center;
    position: relative;
}
.company-sec-box-pt6:after{
    content: "";
    background: url(../images/company/illust_company009.svg) no-repeat center / contain;
    width: 79px;
    height: 81px;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    margin: auto;
}
.company-sec-box-pt6--item1{
    min-width: 180px;
    font-size: 2.4rem;
    font-weight: bold;
    text-align: center;
}
.company-sec-box-pt6--item1 strong{
    font-family: var(--font-en);
    font-size: 6.0rem;
    font-weight: bold;
    line-height: 1em;
}
.company-sec-box-pt6--item1 span{
    font-size: 1.6rem;
    font-weight: bold;
    display: block;
}
.company-sec-box-pt7{
    display: flex;
    align-items: center;
}
.company-sec-box-pt8--item1{
    color: var(--main-blue);
    font-family: var(--font-en);
    font-size: 1.8rem;
    font-weight: bold;
}
.company-sec-box-pt8--item1 span{
    display: block;
    font-size: 1.6rem;
    font-weight: bold;
}
.company-sec-box-pt8--item1 strong{
    font-size: 4.0rem;
    font-weight: bold;
    line-height: 1em;
}
.company-sec-inner3-left{
    width: 276px;
    min-width: 276px;
}
.company-sec-inner3-center{
    width: 492px;
    min-width: 492px;
}
.company-sec-inner3-right{
    width: 276px;
    min-width: 276px;
}
.company-sec-inner3-left .company-sec-box,
.company-sec-inner3-center .company-sec-box,
.company-sec-inner3-right .company-sec-box{
    height: 100%;
}
.company-sec-box-pt9--item1{
    color: var(--main-blue);
    font-family: var(--font-en);
    font-size: 2.4rem;
    font-weight: bold;
    text-align: center;
}
.company-sec-box-pt9--item1 strong{
    font-family: var(--font-en);
    font-size: 6.0rem;
    font-weight: bold;
    line-height: 1em;
}
.company-sec-box-pt9--item1 span{
    display: block;
    font-size: 1.6rem;
    font-weight: bold;
    margin-top: -20px;
}
.company-sec-box-pt9--item1 img{
    margin-right: 20px;
}
.company-sec-box-pt10{
    display: flex;
    justify-content: space-between;
}
.company-sec-box-pt10--item1{
    color: var(--main-blue);
    font-family: var(--font-en);
    font-size: 1.8rem;
    font-weight: bold;
}
.company-sec-box-pt10--item1 strong{
    font-size: 4.0rem;
    font-weight: bold;
    line-height: 1em;
}
.company-sec-box-pt10--item1 span{
    display: block;
    font-size: 1.6rem;
    font-weight: bold;
}
.company-sec-inner4-left{
    width: 714px;
}
.company-sec-inner4-right{
    width: 348px;
}
.company-sec-inner4-left .company-sec-box,
.company-sec-inner4-right .company-sec-box{
    height: 100%;
}
.company-sec-box-pt11{
    color: var(--main-blue);
    display: flex;
    flex-flow: row wrap;
    justify-content: space-between;
}
.company-sec-box-pt11--item1{
    width: 312px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 15px 0;
    box-sizing: border-box;
}
.company-sec-box-pt11--item1__title{
    display: block;
    font-size: 1.6rem;
    font-weight: bold;
}
.company-sec-box-pt11--item1__text{
    font-family: var(--font-en);
    font-size: 1.8rem;
    font-weight: bold;
}
.company-sec-box-pt11--item1__text strong{
    font-size: 4.0rem;
    font-weight: bold;
    line-height: 1em;
}
.company-sec-box-pt12{
    color: var(--main-blue);
}
.company-sec-box-pt12--item1{
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 15px 0;
    box-sizing: border-box;
}
.company-sec-box-pt12--item1__title{
    display: block;
    font-size: 2.0rem;
    font-weight: bold;
}
.company-sec-box-pt11--item1__text{
    display: flex;
    align-items: flex-end;
    justify-content: flex-end;
}
.company-sec-box-pt11--item1__text .company-sec-box-pt11--item1__text-text{
    /*margin-left: 20px;*/
    width: 97px;
    text-align: right;
}
.company-sec-box-pt12-items2 .company-sec-box-pt12--item1{
    text-align: right;
}
.company-sec-box-pt11--item1__text-text span{
    display: block;
    font-size: 1.4rem;
    font-weight: 500;
}
.company-sec-box-pt11--item1__text-text-span{
	width:90px;
	text-align:right;
}
.company-sec-inner5-left,
.company-sec-inner5-center,
.company-sec-inner5-right{
    width: 348px;
}
.company-sec-inner5-left .company-sec-box:not(:last-of-type),
.company-sec-inner5-center .company-sec-box:not(:last-of-type),
.company-sec-inner5-right .company-sec-box:not(:last-of-type){
    margin-bottom: 20px;
}
.company-sec-inner5-left .company-sec-box dt,
.company-sec-inner5-center .company-sec-box dt,
.company-sec-inner5-right .company-sec-box dt{
    margin-bottom: 10px;
}
.company-sec-box-pt13{
    color: var(--main-blue);
}
.company-sec-box-pt13--item1{
    display: flex;
    position: relative;
    padding-right: 100px;
    box-sizing: border-box;
}
.company-sec-box-pt13--item1 img{
    margin-right: 20px;
}
.company-sec-box-pt13--item1-text{
    font-family: var(--font-en);
    font-size: 4.8rem;
    font-weight: bold;
    line-height: 1em;
}
.company-sec-box-pt13--item1-text span{
    display: block;
    font-size: 1.6rem;
    font-weight: bold;
    line-height: calc(1em + 10px);
}
.company-sec-box-pt13--item1-text small{
    font-size: 2.4rem;
    font-weight: bold;
}
.company-sec-box-pt13--item1-img2{
    position: absolute;
    top: 0;
    right: 0;
    margin-right: 0!important;
}
.company-sec-box-pt13 .line-with-dots{
    margin-bottom: 20px;
    margin-top: 10px;
}
.company-sec-box-pt13--item2{
    display: flex;
    justify-content: space-between;
}
.company-sec-box-pt14{
    display: flex;
    justify-content: center;
    align-items: center;
    color: var(--main-blue);
}
.company-sec-box-pt14 img{
    margin-right: 20px;
}
.company-sec-box-pt14--item1{
    font-family: var(--font-en);
    font-size: 6.0rem;
    font-weight: bold;
    line-height: 1em;
}
.company-sec-box-pt14--item1 small{
    font-size: 2.0rem;
    font-weight: bold;
}
.company-sec-box-pt14--item2 {
    color: var(--main-blue);
    font-size: 1.6rem;
    font-weight: 500;
    margin-top: -10px;
    text-align: center;
}
.company-sec-box-pt15{
    display: flex;
    justify-content: center;
    align-items: center;
    color: var(--main-blue);
}
.company-sec-box-pt15 img{
    margin-right: 20px;
}
.company-sec-box-pt15--item1{
    font-family: var(--font-en);
    font-size: 4.0rem;
    font-weight: bold;
    line-height: 1em;
}
.company-sec-box-pt15--item1 small{
    font-size: 1.8rem;
    font-weight: bold;
}
.company-sec-box-pt15--item1 span{
    display: block;
    font-size: 1.6rem;
    font-weight: bold;
    line-height: calc(1em + 10px);
}
@media screen and (max-width:768px){
    /*--- sp ---*/
    .company-sec:not(:last-of-type) {
        margin-bottom: 40px;
    }
    .company .page-content1-inner {
        padding: 30px var(--inner-sides_sp) 40px 15px;
        width: var(--over-side-width);
        border-radius: var(--container-corner) 0 0 var(--container-corner);
        margin-left: var(--container-sides);
    }
    .company .recruit-page-title-main::before{
        width: calc(100% + var(--inner-sides_sp));
    }
    .company .recruit-page-title{
        margin-bottom: 25px;
    }
    .company-sec-title{
        margin-bottom: 20px;
    }
    .company-sec-title-main{
        font-size: 2.0rem;
        font-weight: bold;
        padding-left: 30px;
        box-sizing: border-box;
        position: relative;
    }
    .company-sec-title-main small{
        font-size: 1.2rem;
        font-weight: 500;
    }
    .company-sec-title-main:before{
        content: "";
        background: url(../images/company/icon_company.svg) no-repeat center / contain;
        width: 20px;
        height: 20px;
        position: absolute;
        top: 0;
        bottom: 0;
        left: 0;
        margin: auto;
    }
    .company-sec-inner1 {
        display: block;
    }
    .company-sec-inner1:not(:last-of-type){
        margin-bottom: 5px;
    }
    .company-sec-inner1-left {
        width: 100%;
        min-width: inherit;
        display: block;
        margin-bottom: 5px;
    }
    .company-sec-box {
        padding: 10px 15px;
        box-sizing: border-box;
        border-radius: 15px;
    }
    .company-sec-inner1-left .company-sec-box:not(:last-of-type){
        margin-bottom: 5px;
    }
    .company-sec-box dt {
        font-size: 1.6rem;
        margin-bottom: 10px;
    }
    .company-sec-box dt span {
        font-size: 1.6rem;
    }
    .company-sec-box-pt1--item1 {
        font-size: 2.3rem;
        font-weight: bold;
        margin-right: 8px;
        line-height: calc(1em + 12px);
    }
    .company-sec-box-pt1--item1 strong {
        font-size: 5.6rem;
        line-height: calc(1em + 12px);
    }
    .company-sec-box-pt1--item2 {
        font-size: 2.6rem;
        padding: 5px 0;
    }
    .company-sec-box-pt1--item2 span {
        font-size: 1.4rem;
        margin-right: 3px;
    }
    .company-sec-box-pt2--item1 {
        font-size: 5.0rem;
    }
    .company-sec-box-pt2--item1 small {
        font-size: 2.0rem;
    }
    .company-sec-box-pt2--item1 img {
        width: 46px;
        margin-right: 15px;
        transform: translateY(-6px);
    }
    .company-sec-box-pt2--item2 {
        font-size: 1.4rem;
    }
    .company-sec-box-pt2--item3 {
        font-size: 5.0rem;
    }
    .company-sec-box-pt2--item3 small {
        font-size: 2.0rem;
    }
    .company-sec-inner1-right {
        min-width: inherit;
        display: block;
    }
    .company-sec-box-pt3 .graph {
        width: 100%;
        max-width: 290px;
        min-width: 290px;
        margin: 0 auto 15px;
    }
    .company-sec-box-pt3 {
        display: block;
    }
    .company-sec-box-pt3--text {
        margin-left: 0;
        font-size: 2.0rem;
        text-align: center;
    }
    .company-sec-box-pt3--text strong {
        font-size: 5.0rem;
    }
    .company-sec-box-pt3--text span {
        font-size: 3.3rem;
    }
    .company-sec-box-pt3--text small {
        font-size: 1.4rem;
    }
    .company-sec-inner1-right .company-sec-box:not(:last-child) {
        margin-bottom: 5px;
    }
    .company-sec-box-pt4__list {
        display: flex;
        justify-content: flex-start;
        margin-bottom: 10px;
        flex-flow: row wrap;
    }
    .company-sec-box-pt4__list div{
        width: calc((100% - 18px) / 3);
        margin-bottom: 9px;
    }
    .company-sec-box-pt4__list div:not(:nth-of-type(3n)){
        margin-right: 9px;
    }
    .company-sec-box-pt4__text {
        display: flex;
        justify-content: space-between;
        margin-bottom: 0;
        flex-flow: row wrap;
    }
    .company-sec-box-pt4__text--item {
        width: 50%;
    }
    .company-sec-box-pt4__text--item:nth-of-type(2n) {
        border-right: none;
    }
    .company-sec-box-pt4__text--item:nth-of-type(2n):before,
    .company-sec-box-pt4__text--item:nth-of-type(2n):after{
        content: none;
    }
    .company-sec-box-pt4__text--item:not(:nth-of-type(-n + 2)){
        margin-top: 20px;
    }
    .company-sec-inner2-left,
    .company-sec-inner2-right{
        width: 100%;
        min-width: inherit;
        display: block;
        margin-bottom: 5px;
    }
    .company-sec-box-pt2 .graph2 {
        width: 200px;
    }
    .company-sec-box-pt2 .graph2:before {
        content: "";
        background: url(../images/company/illust_company007.svg) no-repeat center / contain;
        width: 26px;
        height: 65px;
        position: absolute;
        left: -46px;
        top: 0;
        bottom: 0;
        margin: auto;
    }
    .company-sec-box-pt2 .graph2:after {
        content: "";
        background: url(../images/company/illust_company008.svg) no-repeat center / contain;
        width: 27px;
        height: 60px;
        position: absolute;
        right: -47px;
        top: 0;
        bottom: 0;
        margin: auto;
    }
    .company-sec-inner2-left .company-sec-box:not(:last-of-type) {
        margin-bottom: 5px;
    }
    .company-sec-box-pt5 {
        padding: 10px 60px 10px 0;
        max-width: 290px;
        margin: 0 auto;
    }
    .company-sec-box-pt5--item2 {
        border-left: none;
        padding-left: 0;
        font-size: 2.0rem;
    }
    .company-sec-box-pt5--item2 strong {
        font-size: 5.0rem;
    }
    .company-sec-box-pt5:after {
        width: 50px;
        height: 50px;
    }
    .company-sec-box-pt6 {
        width: 270px;
        margin: 0 auto;
    }
    .company-sec-box-pt6--item1 {
        min-width: inherit;
        font-size: 1.6rem;
    }
    .company-sec-box-pt6--item1 strong {
        font-size: 3.6rem;
    }
    .company-sec-box-pt6--item1 span {
        font-size: 1.4rem;
    }
    .company-sec-box-pt6:after {
        width: 52px;
        height: 54px;
    }
    .company-sec-box-pt7 {
        display: block;
    }
    .company-sec-box-pt8--item1{
        display: flex;
        justify-content: center;
        align-items: flex-end;
    }
    .company-sec-box-pt8--item1 span {
        display: inline-block;
        font-size: 1.4rem;
        font-weight: bold;
        margin-right: 10px;
        align-self: center;
    }
    .company-sec-inner2-right .company-sec-box:not(:last-of-type) {
        margin-bottom: 5px;
    }
    .company-sec-inner3-left .company-sec-box, 
    .company-sec-inner3-center .company-sec-box, 
    .company-sec-inner3-right .company-sec-box {
        height: auto;
    }
    .company-sec-inner3-left,
    .company-sec-inner3-center,
    .company-sec-inner3-right{
        width: 100%;
        min-width: inherit;
        margin-bottom: 5px;
    }
    .company-sec-inner3-left .company-sec-box:not(:last-of-type) , 
    .company-sec-inner3-center .company-sec-box:not(:last-of-type) , 
    .company-sec-inner3-right .company-sec-box:not(:last-of-type) {
        margin-bottom: 5px;
    }
    .company-sec-box-pt9--item1 span {
        font-size: 1.4rem;
        margin-top: 0;
    }
    .company-sec-box-pt9--item1 {
        font-size: 2.0rem;
    }
    .company-sec-box-pt9--item1 strong {
        font-size: 5.0rem;
    }
    .company-sec-box-pt10 {
        display: flex;
        justify-content: center;
        flex-flow: row wrap;
        max-width: 290px;
        margin: 0 auto;
        row-gap: 15px;
        column-gap:20px;
    }
    .company-sec-box-pt10--item1{
        text-align: center;
        width: calc((80% - 20px) / 2);
    }
    .company-sec-box-pt9--item1 img {
        width: 27px;
    }
    .company-sec-inner4-left,
    .company-sec-inner4-right {
        width: 100%;
    }
    .company-sec-inner4-left{
        margin-bottom: 5px;
    }
    .company-sec-box-pt11 {
        column-gap:15px;
    }
    .company-sec-box-pt11-items{
        width: calc((100% - 15px) / 2);
    }
    .company-sec-box-pt11--item1 {
        width: 100%;
        display: flex;
        align-items: flex-start;
        flex-flow: column;
        padding: 10px 0;
        height: 100%;
    }
    .company-sec-box-pt11--item1__text {
        display: flex;
        justify-content: flex-start;
    }
    .company-sec-inner4-left .line-with-dots,
    .company-sec-inner4-right .line-with-dots{
        width: 100%!important;
    }
    .company-sec-box-pt12--item1__title {
        font-size: 1.6rem;
    }
    .company-sec-box-pt11--item1__text strong {
        font-size: 3.2rem;
    }
    .company-sec-box-pt11--item1__text{
        font-size: 1.6rem;
    }
    .company-sec-box-pt11--item1__text-text{
        min-width: 65px;
        text-align: right;
    }
    .company-sec-box-pt12--item1 img{
        width: 70px;
    }
    .company-sec-inner5-left,
    .company-sec-inner5-center,
    .company-sec-inner5-right{
        width: 100%;
    }
    .company-sec-inner5-left,
    .company-sec-inner5-center{
        margin-bottom: 5px;
    }
    .company-sec-inner5-left .company-sec-box:not(:last-of-type), 
    .company-sec-inner5-center .company-sec-box:not(:last-of-type), 
    .company-sec-inner5-right .company-sec-box:not(:last-of-type){
        margin-bottom: 5px;
    }
    .company-sec-box-pt13--item1 img {
        margin-right: 20px;
        width: auto;
        height: 56px;
    }
    .company-sec-box-pt13--item1-text span {
        font-size: 1.4rem;
    }
    .company-sec-box-pt13--item1-text {
        font-size: 3.6rem;
    }
    .company-sec-box-pt13--item1-text small {
        font-size: 1.8rem;
    }
    .company-sec-box-pt13--item1 {
        padding-right: 80px;
        max-width: 200px;
        margin: 0 auto;
    }
    .company-sec-box-pt13--item2{
        justify-content: center;
        gap: 15px;
    }
    .company-sec-box-pt14 img {
        width: 52px;
        margin-right: 15px;
    }
    .company-sec-box-pt14__img2{
        width: 76px!important;
    }
    .company-sec-box-pt15 img{
        width: 21px;
    }
    .company-sec-box-pt14--item1 small {
        font-size: 1.8rem;
    }
    .company-sec-box-pt14--item1 {
        font-size: 5.0rem;
    }
    .company-sec-box-pt15--item1 span {
        font-size: 1.4rem;
    }
    .company-sec-box-pt15--item1 {
        font-size: 3.6rem;
    }
    .company-sec-box-pt15--item1 small {
        font-size: 1.6rem;
    }
    .company-sec-box-pt11--item1__text-text-span{
	width:75px;
	text-align:right;
    }
}
 /* 円グラフ用*/
 :root {
    --r: 100px;
}
.graph {
    position: relative;
    width: calc(var(--r) * 4);
    height: calc(var(--r) * 4);
    border-radius: 50%;
    background-image: conic-gradient(
      #6facc1 0% 52.1%,
      #fac03d 52.1% 69.8%,
      #e83819 69.8% 88.1%,
      #7ac943 88.1% 100%
    );
}
.graph .label,
.graph2 .label {
    position: absolute;
    top: 50%;
    left: 50%;
    font-size: calc(var(--r) * 0.3);
    color:#fff;
}
.graph .label-1 {
    --start: 0;
    --end: 0.581;
    --percentage: calc((var(--start) + var(--end)) / 2);
    --angle: calc(var(--percentage) * 360deg);
    --deg: calc(-90deg + var(--angle));
    translate: calc(cos(var(--deg))* var(--r) - 76%) calc(sin(var(--deg))* var(--r) - 91%);
}
.graph .label-2 {
    --start: 0.48;
    --end: 0.772;
    --percentage: calc((var(--start) + var(--end)) / 2);
    --angle: calc(var(--percentage) * 360deg);
    --deg: calc(-90deg + var(--angle));
    translate: calc(cos(var(--deg)) * var(--r) - 39%) calc(sin(var(--deg)) * var(--r) - 50%);
}
.graph .label-3 {
    --start: 0.69;
    --end: 0.918;
    --percentage: calc((var(--start) + var(--end)) / 2);
    --angle: calc(var(--percentage) * 360deg);
    --deg: calc(-90deg + var(--angle));
    translate: calc(cos(var(--deg)) * var(--r) - 50%) calc(sin(var(--deg)) * var(--r) - 50%);
    color: white;
}
.graph .label-4 {
    --start: 0.88;
    --end: 1;
    --percentage: calc((var(--start) + var(--end)) / 2);
    --angle: calc(var(--percentage) * 360deg);
    --deg: calc(-90deg + var(--angle));
    translate: calc(cos(var(--deg)) * var(--r) - 50%) calc(sin(var(--deg)) * var(--r) - 50%);
    color: white;
}
.graph .label-1,
.graph .label-2,
.graph .label-3,
.graph .label-4{
    font-family: var(--font-en);
    font-weight: bold;
    line-height: calc(1em + 7px);
    text-align: center;
}
.graph .label-1 span,
.graph .label-2 span,
.graph .label-3 span,
.graph .label-4 span{
    text-align: center;
    display: block;
    font-weight: 500;
}
.graph .label-1 strong,
.graph .label-2 strong,
.graph .label-3 strong,
.graph .label-4 strong{
    font-weight: bold;
}
/*グラフ文字サイズ*/
/*.graph .label-1*/
.graph .label-1{
    font-size: 2.2rem;
}
.graph .label-1 span{
    font-size: 1.6rem;
}
.graph .label-1 strong{
    font-size: 4.4rem;
}
/*.graph .label-2*/
.graph .label-2{
    font-size: 1.8rem;
}
.graph .label-2 span{
    font-size: 1.4rem;
}
.graph .label-2 strong{
    font-size: 3.6rem;
}
/*.graph .label-3*/
.graph .label-3{
    font-size: 1.6rem;
}
.graph .label-3 span{
    font-size: 1.4rem;
}
.graph .label-3 strong{
    font-size: 3.2rem;
}
/*.graph .label-4*/
.graph .label-4{
    font-size: 1.4rem;
}
.graph .label-4 span{
    font-size: 1.3rem;
}
.graph .label-4 strong{
    font-size: 2.8rem;
}
/*男女比グラフ*/
.graph2 {
    position: relative;
    width: calc(var(--r) * 4);
    height: calc(var(--r) * 4);
    border-radius: 50%;
    background-image: conic-gradient(
      #2D2175 0% 15%,
      #ff931e 15% 35%,
      #2D2175 35% 100%
    );
}
.graph2 .label-1 {
    --start:0.15;
    --end: 0.35;
    --percentage: calc((var(--start) + var(--end)) / 2);
    --angle: calc(var(--percentage) * 360deg);
    --deg: calc(-90deg + var(--angle));
    translate: calc(cos(var(--deg)) * var(--r) - 100%) calc(sin(var(--deg)) * var(--r) - 60%);
    color: white;
}
.graph2 .label-2 {
    --start: 0.5;
    --end: 1;
    --percentage: calc((var(--start) + var(--end)) / 2);
    --angle: calc(var(--percentage) * 360deg);
    --deg: calc(-90deg + var(--angle));
    translate: calc(cos(var(--deg)) * var(--r) - 0%) calc(sin(var(--deg)) * var(--r) - 60%);
    color: white;
}
.graph2 .label-1,
.graph2 .label-2{
    font-family: var(--font-en);
    font-weight: bold;
    line-height: calc(1em + 12px);
    text-align: center;
    font-size: 2.2rem;
}
.graph2 .label-1 span,
.graph2 .label-2 span{
    text-align: center;
    display: block;
    font-weight: 500;
    font-size: 1.6rem;
}
.graph2 .label-1 strong,
.graph2 .label-2 strong{
    font-weight: bold;
    font-size: 4.4rem;
}
/*棒グラフ*/
.bar-chart {
    width: 360px;
    text-align: center;
}
.bars {
    display: flex;
    justify-content: space-around;
    align-items: flex-end;
    height: 200px;
    padding: 0 20px;
    box-sizing: border-box;
    border-bottom: solid 2px var(--main-blue);
}
.bar {
    position: relative;
    width: 40px;
    background-color: #2D2175;
    display: flex;
    justify-content: center;
    align-items: flex-end;
    flex-grow: 1;
    transition: height 0.3s;
    margin: 0 20px;
}
.bar p {
    color: var(--main-blue);
    font-family: var(--font-en);
    font-size: 2.0rem;
    font-weight: bold;
    margin: 0;
    position: absolute;
    top: -30px;
}
.bar1 {
    height: 49.8%;
}
.bar2 {
    height: 79.3%;
}
.bar3 {
    height: 66.6%;
}
.bar4 {
    height: 74.3%;
}
.x-axis {
    display: flex;
    justify-content: space-between;
    margin-top: 5px;
    padding: 0 20px;
    box-sizing: border-box;
}
.x-axis p {
    width: 25%;
    font-size: 1.8rem;
    font-weight: 500;
    text-align: center;
    color: var(--main-blue);
}
@media screen and (max-width:768px){
    /*--- sp ---*/
    .bar-chart {
        width: 290px;
        text-align: center;
        margin: 0 auto 10px;
    }
    .bar {
        position: relative;
        width: 40px;
        background-color: #2D2175;
        display: flex;
        justify-content: center;
        align-items: flex-end;
        flex-grow: 1;
        transition: height 0.3s;
        margin: 0 15px;
    }
    .x-axis p small{
        font-size: 1.2rem;
    }
}
/*philosophy*/
.philosophy-sec1{
    display: flex;
    justify-content: space-between;
    gap: 50px;
    margin-bottom: 50px;
}
.philosophy-sec1-text{
    font-size: 1.6rem;
    line-height: calc(1em + 16px);
    font-weight: 500;
}
.philosophy-sec1-text p:not(:last-child){
    margin-bottom: 10px;
}
.philosophy-sec1-text__figure{
    display: block;
}
.philosophy-sec1-img{
    width: 540px;
    min-width: 540px;
}
.philosophy-sec1-img-text{
    padding: 30px;
    box-sizing: border-box;
    border-radius: 20px;
    background: var(--bg-gray);
}
.philosophy-sec1-img-text dt{
    margin-top: 40px;
    position: relative;
    background: var(--main-blue);
    color: #fff;
    font-size: 2.4rem;
    font-weight: bold;
    width: 100%;
    height: 60px;
    display: flex;
    justify-content: center;
    align-items: center;
    margin-bottom: 25px;
}
.philosophy-sec1-img-text dt::before{
    content: "";
    background: url(../images/company/illust_company001.svg) no-repeat center / contain;
    width: 54px;
    height: 54px;
    position: absolute;
    right: 30px;
    top: -50px;
}
.philosophy-sec1-img-text-info{
    color: var(--main-blue);
    font-size: 2.0rem;
    font-weight: bold;
    background: #fff;
    padding: 20px 10px;
    box-sizing: border-box;
    text-align: center;
    border-radius: 12px;
}
.philosophy-sec1-img-text-info strong{
    font-size: 2.4rem;
    display: block;
}
.philosophy-sec1-img-text-info:not(:last-child){
    margin-bottom: 5px;
}
.philosophy-sec2 {
    position: relative;
}
.philosophy-sec2-text{
    display: flex;
    gap: 80px;
}
.philosophy-sec2-text img{
    border-radius: 40px;
}
.philosophy-sec2-text-title{
    position: relative;
    padding-top: 30px;
    margin-bottom: 1rem;
    font-size: 2.4rem;
    font-weight: 600;
}
.philosophy-sec2-text-title:before{
    content: "";
    background: var(--main-green);
    width: 60px;
    height: 4px;
    position: absolute;
    top: 0;
    left: 0;
}
.philosophy-sec2-text-title strong{
    display: block;
    position: relative;
    font-weight: 600;
}
.philosophy-sec2-text-title strong span{
    font-weight: normal;
}
.philosophy-sec2-img {
    padding: 30px 90px;
    box-sizing: border-box;
    border-radius: 20px;
    background: var(--bg-gray);
    display: table;
    position: relative;
    z-index: 1;
    margin: -80px auto 0;
}
.philosophy-sec2-text p{
    font-size: 1.6rem;
    line-height: calc(1em + 16px);
    font-weight: 500;
}
.philosophy-sec2-text p:not(:last-child){
    margin-bottom: 10px;
}
.philosophy-sec3{
    display: flex;
    gap: 50px;
}
.philosophy-sec3-text p{
    font-size: 1.6rem;
    line-height: calc(1em + 16px);
    font-weight: 500;
}
.philosophy-sec3-text p:not(:last-child){
    margin-bottom: 15px;
}
.philosophy-sec3-img{
    padding: 20px 0;
    box-sizing: border-box;
    border-radius: 20px;
    background: var(--bg-gray);
    display: table;
    position: relative;
    z-index: 1;
}
.philosophy-sec3-img.pt2{
    padding: 20px;
    box-sizing: border-box;
}
@media screen and (max-width:768px){
    /*--- sp ---*/
    .philosophy-sec1 {
        display: block;
        margin-bottom: 40px;
    }
    .philosophy-sec1-text {
        font-size: 1.4rem;
        line-height: calc(1em + 13px);
        margin-bottom: 20px;
    }
    .philosophy-sec1-text__figure {
        width: min(350px, 100%);
        margin: 0 auto;
    }
    .philosophy-sec1-text__figure.pc{
        display: none;
    }
    .philosophy-sec1-img {
        width: 100%;
        min-width: inherit;
    }
    .philosophy-sec1-img-text {
        padding: 15px;
        border-radius: 15px;
        margin-bottom: 15px;
    }
    .philosophy-sec1-img-text dt {
        margin-top: 30px;
        font-size: 1.8rem;
        font-weight: bold;
        width: 100%;
        height: 40px;
        margin-bottom: 15px;
    }
    .philosophy-sec1-img-text dt::before {
        width: 36px;
        height: 36px;
        position: absolute;
        right: 15px;
        top: -30px;
    }
    .philosophy-sec1-img-text-info {
        font-size: 1.4rem;
        padding: 15px 10px;
        border-radius: 8px;
    }
    .philosophy-sec1-img-text-info strong {
        font-size: 1.7rem;
        display: block;
    }
    .philosophy-sec2-text {
        display: block;
    }
    .philosophy-sec2-text__group {
        margin-bottom: 20px;
    }
    .philosophy-sec2-text-title {
        position: relative;
        padding-top: 0;
        font-size: 1.7rem;
        font-weight: 600;
        margin-bottom: 20px;
    }
    .philosophy-sec2-text-title::before{
        content: none;
    }
    .philosophy-sec2-text img {
        width: calc(90% + var(--inner-sides_sp));
        margin-left: 10%;
        border-radius: 15px 0 0 15px;
    }
    .philosophy-sec2-img {
        padding: 15px;
        border-radius: 15px;
        margin-top: -40px;
    }
    .philosophy-sec3 {
        display: block;
    }
    .philosophy-sec3-text{
        margin-bottom: 20px;
    }
    .philosophy-sec3-text p {
        font-size: 1.4rem;
        line-height: calc(1em + 13px);
    }
    .philosophy-sec3-img{
        padding: 15px 0;
        border-radius: 15px;
    }
    .philosophy-sec3-img.pt2{
        padding: 15px;
    }
}
/*-----------------------
business
------------------------*/
.business-sec:not(:last-of-type){
    margin-bottom: 100px;
}
.business-sec-title{
    position: relative;
    margin-bottom: 40px;
}
.business-sec-title-sub{
    color: var(--main-blue);
    width: calc(100% + var(--container-sides));
    font-size: 2.4rem;
    font-weight: bold;
    padding-bottom: 10px;
    margin-bottom: 10px;
    border-bottom: solid 1px var(--main-blue);
}
.business-sec-title-sub strong{
    font-family: var(--font-en);
    font-size: 4.0rem;
    font-weight: bold;
    line-height: 1em;
}
.business-sec-title-main{
    color: var(--main-blue);
    /*padding-left: 30px;*/
    font-size: 3.6rem;
    font-weight: bold;
    margin-bottom: 30px;
}
.business-sec-title-text{
    font-size: 1.6rem;
    line-height: calc(1em + 16px);
}
.business-sec-title-main img{
    float: right;
    margin-top: -70px;
}
.business-sec-pho{
    display: flex;
    justify-content: space-between;
    margin-bottom: 30px;
}
.business-sec-pho img{
    border-radius: 20px;
}
.business-sec-pho._grid{
    display: grid;
    grid-template-columns: 640px 200px 200px;
    gap: 20px;
}
.business-sec-pho._grid .business-sec-pho-item{
    width: unset;
}
.business-sec-chart{
    margin-top: 30px;
    padding-top: 30px;
    border-top: solid 1px var(--border-gray);
}
.business-sec-chart-list{
    margin-top: 30px;
    background:
    linear-gradient(45deg,  transparent 20px, var(--bg-gray) 20px),
    linear-gradient(225deg, transparent 20px, var(--bg-gray) 20px);
    background-position: bottom left, top right;
    background-size: 50%;
    background-repeat: no-repeat;
    position: relative;
    padding: 40px;
    box-sizing: border-box;
}
.business-sec-chart-list-inner{
    display: flex;
    gap: 35px;
}
.business-sec-chart-list-inner:not(:last-child){
    padding-bottom: 20px;
    margin-bottom: 20px;
    border-bottom: solid 1px var(--base-gray);
    position: relative;
}
.business-sec-chart-list-inner:not(:last-child):after{
    content: '';
    position: absolute;
    width: 7px;
    height: 7px;
    background-color: var(--base-gray);
    border-radius: 50%;
    bottom: -4px;
    left: -3px;
}
.business-sec-chart-list-inner:nth-child(even):after{
    bottom: -4px;
    left: auto;
    right: -3px;
}

.business-sec-chart-list--item{
    width: 330px;
    display: flex;
    justify-content: space-between;
    gap: 20px;
}
.business-sec-chart-list--item a {
    display: block;
    position: relative;
}
.business-sec-chart-list--item a::after {
    content: '';
    display: block;
    position: absolute;
    background: url(../images/business/btn_interview.svg) no-repeat center / contain;
    width: 40px;
    height: 40px;
    bottom: 5px;
    right: 5px;
    border-radius: 40px;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.5);
}
@media screen and (max-width:768px) {
    .business-sec-chart-list--item a::after {
        width: 24px;
        height: 24px;
    }
}

.business-sec-chart-list-inner:nth-child(even) .business-sec-chart-list--item{
    flex-flow: row-reverse;
}
.business-sec-chart-list--item__text dt{
    color: var(--main-blue);
    font-size: 1.8rem;
    font-weight: bold;
    margin-bottom: 10px;
    position: relative;
    z-index: 1;
}
.business-sec-chart-list--item__text dt::before {
    color: #fff;
    font-family: var(--font-en);
    font-size: 6.0rem;
    line-height: 0.8;
    content: attr(data-number);
    position: absolute;
    top: 0;
    right: 0;
    z-index: -1;
}
.business-sec-chart-list--item__text dd{
    position: relative;
    z-index: 1;
    font-size: 1.4rem;
    line-height: calc(1em + 8px);
}
.manage-list{
    display: flex;
    justify-content: space-between;
    gap: 20px;
}
.manage-list-item a {
    display: block;
    position: relative;
}
.manage-list-item a::after {
    content: '';
    display: block;
    position: absolute;
    background: url(../images/business/btn_interview.svg) no-repeat center / contain;
    width: 40px;
    height: 40px;
    bottom: 5px;
    right: 5px;
    border-radius: 40px;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.5);
}
.manage-list-item picture{
    display: block;
    margin-bottom: 10px;
}
.manage-list-item__text dt{
    color: var(--main-blue);
    font-size: 2.0rem;
    font-weight: bold;
    margin-bottom: 10px;
}
.manage-list-item__text dd{
    font-size: 1.4rem;
    line-height: calc(1em + 14px);
}
@media screen and (max-width:768px){
    /*--- sp ---*/
    .business-sec:not(:last-of-type){
        margin-bottom: 50px;
    }
    .business-sec-title{
        position: relative;
        margin-bottom: 20px;
    }
    .business-sec-title-sub{
        font-size: 2.0rem;
    }
    .business-sec-title-sub strong{
        font-size: 3.0rem;
    }
    .business-sec-title-main{
        padding-left: 20px;
        font-size: 2.4rem;
        margin-bottom: 20px;
    }
    .business-sec-title-text{
        font-size: 1.4rem;
        line-height: calc(1em + 12px);
    }
    .business-sec-title-main img{
        float: right;
        width: 70px;
        margin-top: -50px;
    }
    .business-sec-pho {
        display: flex;
        justify-content: space-between;
        margin-bottom: 20px;
        gap: 5px;
    }
    .business-sec-pho img{
        border-radius: 15px;
    }
    .business-sec-pho._grid{
        grid-template-columns: repeat(2, 1fr);
        gap: 5px;
    }
    .business-sec-pho._grid .business-sec-pho-item:first-child{
        grid-column: span 2;
    }
    .business-sec-chart{
        margin-top: 15px;
        padding-top: 15px;
    }
    .business-sec-chart-list-inner{
        display: block;
    }
    .business-sec-chart-list--item {
        width: 100%;
        gap: 0;
    }
    .business-sec-chart-list--item:nth-child(even) {
        flex-flow: row-reverse;
    }
    .business-sec-chart-list-inner:nth-child(even) .business-sec-chart-list--item:nth-child(even){
        flex-flow: row;
    }
    .business-sec-chart-list--item img{
        width: 80px;
    }
    .business-sec-chart-list--item:nth-child(odd) .business-sec-chart-list--item__pho{
        float: left;
        margin: 0 15px 8px 0;
    }
    .business-sec-chart-list--item:nth-child(even) .business-sec-chart-list--item__pho{
        float: right;
        margin: 0 0 8px 15px;
    }
    .business-sec-chart-list-inner:nth-child(even) .business-sec-chart-list--item:nth-child(odd) .business-sec-chart-list--item__text dt {
        width: 100%;
    }
    .business-sec-chart-list-inner:nth-child(odd) .business-sec-chart-list--item:nth-child(even) .business-sec-chart-list--item__text dt {
        width: 100%;
    }

    .business-sec-chart-list-inner:nth-child(even) .business-sec-chart-list--item:nth-child(odd) .business-sec-chart-list--item__pho{
        float: right;
        margin: 0 0 0 15px;
    }
    .business-sec-chart-list-inner:nth-child(even) .business-sec-chart-list--item:nth-child(even) .business-sec-chart-list--item__pho{
        float: left;
        margin: 0 15px 0 0;
    }
    .business-sec-chart-list-inner:nth-child(even) .business-sec-chart-list--item:nth-child(odd) .business-sec-chart-list--item__text dt {
        width: 100%;
    }
    .business-sec-chart-list {
        width: calc(100% + var(--container-sides));
        margin-top: 30px;
        background: 
        linear-gradient(45deg, transparent 20px, var(--bg-gray) 20px);
        background-position: bottom left;
        background-size: 100%;
        background-repeat: no-repeat;
        position: relative;
        padding: 10px 0 20px;
        box-sizing: border-box;
    }
    .business-sec-chart-list--item{
        padding: 15px;
        border-bottom: solid 1px var(--base-gray);
        position: relative;
    }
    .business-sec-chart-list-inner:not(:last-child) {
        padding-bottom: 0;
        margin-bottom: 0;
        border-bottom: none;
    }
    .business-sec-chart-list-inner:last-of-type .business-sec-chart-list--item:last-child {
        border-bottom: none;
    }
    .business-sec-chart-list-inner:not(:last-child):after {
        content: none;
    }
    .business-sec-chart-list-inner:first-child .business-sec-chart-list--item:first-child:before{
        content: "";
        position: absolute;
        width:15px;
        height: 1px;
        background-color: var(--bg-gray);
        bottom: -1px;
        left: 0;
    }
    .business-sec-chart-list-inner:first-child .business-sec-chart-list--item:first-child:after {
        content: "";
        position: absolute;
        width: 7px;
        height: 7px;
        background-color: var(--base-gray);
        border-radius: 50%;
        bottom: -4px;
        left: 15px;
    }
    .business-sec-chart-list-inner:last-child .business-sec-chart-list--item:nth-last-child(2):before{
        content: "";
        position: absolute;
        width:15px;
        height: 1px;
        background-color: var(--bg-gray);
        bottom: -1px;
        right: 0;
    }
    .business-sec-chart-list-inner:last-child .business-sec-chart-list--item:nth-last-child(2):after {
        content: "";
        position: absolute;
        width: 7px;
        height: 7px;
        background-color: var(--base-gray);
        border-radius: 50%;
        bottom: -4px;
        right: 15px;
    }
    .business-sec-chart-list--item__text dt {
        margin-bottom: 8px;
    }
    #business03 .business-sec-pho2 img{
        width: 63.88%;
    }
    .manage-list{
        display: block;
    }
    .manage-list-item:not(:last-child){
        margin-bottom: 20px;
    }
    .manage-list-item picture{
        display: block;
        margin-bottom: 10px;
    }
    .manage-list-item__text{
        padding: 0 15px;
        box-sizing: border-box;
    }
    .manage-list-item__text dt{
        font-size: 1.8rem;
        font-weight: 500;
    }
    .manage-list-item__text dd{
        line-height: calc(1em + 8px);
    }
}
/*business-main*/
.business-contents .recruit-page-title{
    margin-bottom: 40px;
}
.business-main{
    margin-bottom: 40px;
}
.business-main-title{
    margin-bottom: 40px;
    padding-left: 20px;
    font-size: 3.6rem;
    font-weight: bold;
    line-height: calc(1em + 11px);
    border-left: solid 6px var(--main-green);
}
.business-main-link1{
    background: var(--bg-gray);
    padding: 20px;
    box-sizing: border-box;
    margin-top: 20px;
    margin-bottom: 20px;
}
.business-main-link1 dt{
    color: #fff;
    font-size: 1.8rem;
    font-weight: bold;
    background: var(--main-blue);
    width: 768px;
    height: 38px;
    display: flex;
    justify-content: center;
    align-items: center;
    margin: -40px auto 20px;
    border-radius: 19px;
}
.business-main-link-list{
    width: 790px;
    display: flex;
    justify-content: space-between;
    flex-flow: row wrap;
    gap: 30px;
    row-gap: 20px;
    margin: 0 auto;
    transform: translateX(30px);
}
.business-main-link-list li{
    width: calc((100% - 30px) / 2);
}
.business-main-link-list li a{
    padding-left: 30px;
    color: var(--main-blue);
    font-size: 1.8rem;
    font-weight: 500;
    line-height: calc(1em + 7px);
    position: relative;
    display: block;
}
.business-main-link-list li a:before {
    position: absolute;
    top: 4px;
    left: 0;
    width: 20px;
    height: 20px;
    border-radius: 50%;
    background: var(--main-blue);
    content: "";
}
.business-main-link-list li a:after {
    position: absolute;
    top: 10px;
    left: 7px;
    transform: rotate(135deg);
    width: 6px;
    height: 6px;
    border-top: solid 2px #fff;
    border-right: solid 2px #fff;
    content: "";
}
.business-main-link2{
    background: var(--bg-gray);
    padding: 20px;
    box-sizing: border-box;
}
.business-main-link2 dt{
    font-size: 2.0rem;
    font-weight: bold;
    width: 720px;
    margin: 0 auto 18px;
    padding-left: 15px;
    border-left: solid 5px var(--main-green);
    position: relative;
    line-height: calc(1em);
}
.business-main-link2 dt:after{
    content: "";
    background: var(--base-gray);
    width: calc(100% + 5px);
    height: 1px;
    position: absolute;
    left: -5px;
    bottom: -8px;
}
@media screen and (max-width:768px){
    /*--- sp ---*/
    .business-contents .recruit-page-title{
        margin-bottom: 30px;
    }
    .business-main{
        margin-bottom: 50px;
    }
    .business-main-title{
        margin-bottom: 15px;
        padding-left: 15px;
        font-size: 2.0rem;
        border-left: solid 4px var(--main-green);
    }
    .business-main-link1 {
        padding: 15px;
        box-sizing: border-box;
        margin-top: 20px;
        margin-bottom: 20px;
    }
    .business-main-link1 dt {
        color: #fff;
        font-size: 1.4rem;
        width: 86.19%;
        height: 30px;
        display: flex;
        justify-content: center;
        align-items: center;
        margin: -30px auto 15px;
        border-radius: 15px;
    }
    .business-main-link-list {
        width: 100%;
        display: block;
        margin: 0 auto;
        transform: none;
    }
    .business-main-link-list li {
        width: 100%;
    }
    .business-main-link-list li:not(:last-child){
        margin-bottom: 10px;
    } 
    .business-main-link-list li a {
        padding-left: 20px;
        color: var(--main-blue);
        font-size: 1.4rem;
        font-weight: 500;
        line-height: calc(1em + 4px);
    }
    .business-main-link-list li a:before {
        position: absolute;
        top: 3px;
        left: 0;
        width: 14px;
        height: 14px;
        border-radius: 50%;
        background: var(--main-blue);
        content: "";
    }
    .business-main-link-list li a:after {
        position: absolute;
        top: 7px;
        left: 4px;
        transform: rotate(135deg);
        width: 5px;
        height: 5px;
        border-top: solid 2px #fff;
        border-right: solid 2px #fff;
        content: "";
    }
    .business-main-link2 dt {
        font-size: 1.8rem;
        font-weight: bold;
        width: 100%;
        margin: 0 auto 23px;
        padding-left: 10px;
        border-left: solid 5px var(--main-green);
        position: relative;
        line-height: calc(1em + 3px);
    }
}
.business-contents .page-inner{
    overflow: visible;
}
.business-slid{
    width: calc(100% + var(--container-sides) + 60px + var(--container-sides));
    margin-left: calc((var(--container-sides) + 60px)* -1);
    margin-bottom: 40px;
    overflow-x: hidden;
}
.business-slid-prod-list:not(.keen-slider){
    display: flex;
    justify-content: center;
}
.business-slid-prod-list.keen-slider{
    position: relative;
    left: 50%;
    transform: translateX(-50%);
    width: 3112px !important;
}
.business-slid-prod-list:not(.is--ready){
    opacity: 0;
}
.business-slid-prod-list-item{
    width: 368px;
    padding: 0 20px;
}
.business-slid-prod-list-item img{
    border-radius: 20px;
}
.business-slid-prod-list-item__pic{
    display: flex;
    justify-content: center;
    align-items: center;
    position: relative;
    aspect-ratio: 1;
    background: #fff;
}
.business-slid-prod-list-item__pic::after{
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border: solid 1px #e6e6e6;
    content: "";
    pointer-events: none;
}
.business-slid-prod-list-item__pic img{
    width: auto;
    max-width: 100%;
    height: auto;
    max-height: 100%;
}
.business-slid-prod-list-item__info{
    margin-top: 16px;
}
.business-slid-prod-list-item__info__name{
    font-size: 1.6rem;
    font-weight: bold;
    line-height: calc(1em + 7px);
}
.business-slid-prod-list-item__info__desc{
    margin-top: 5px;
    font-size: 1.4rem;
    line-height: calc(1em + 8px);
}
.business-prod-slider-arrows{
    display: none;
}
.business-prod-slider-counter{
    display: none;
}
@media screen and (max-width:768px){
    /*--- sp ---*/
    .business-slid-prod-list.keen-slider{
        width: calc((62.5vw + 15px) * 3) !important;
    }
    .business-slid-prod-list-item{
        width: 62.5vw;
        padding: 0 7.5px;
    }
    .business-slid-prod-list-item__info{
        margin-top: 16px;
    }
    .business-slid-prod-list-item{
        padding: 0 5px;
    }
    .business-slid-prod-list-item img{
        border-radius: 15px;
    }
}
/*------------------
workplace
-----------------*/
.company-sec-inner6-left{
    width: 348px;
}
.company-sec-inner6-right{
    width: 714px;
}
.company-sec-inner6-right .company-sec-box:not(:last-child),
.company-sec-inner6-left .company-sec-box:not(:last-child){
    margin-bottom: 20px;
}
.company-sec-inner6-right .company-sec-box:last-child{
    width: 530px;
}
.company-sec-inner6-left .company-sec-box-pt14 img {
    margin-right: 0;
    margin-left: 20px;
}
.company-sec-inner6-right .company-sec-box dt,
.company-sec-inner6-left .company-sec-box dt{
    margin-bottom: 8px;
}
.company-sec-inner6-left .company-sec-box-pt6--item1 {
    min-width: inherit;
    font-size: 1.8rem;
    font-weight: bold;
    text-align: center;
}
.company-sec-inner6-left .company-sec-box-pt6--item1 strong {
    font-family: var(--font-en);
    font-size: 4.0rem;
    font-weight: bold;
    line-height: 1em;
}
.company-sec-inner6-left .company-sec-box-pt6:after {
    content: "";
    background: url(../images/workplace/illust_workplace001.svg) no-repeat center / contain;
    width: 52px;
    height: 60px;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    margin: auto;
}
.workplace .recruit-page-title {
    margin-bottom: 20px;
}
.workplace-access-map_text{
    font-size: 1.6rem;
    line-height: calc(1em + 16px);
    margin-bottom: 10px;
}
.workplace-pho--item:not(:last-child){
    margin-bottom: 20px;
}
@media screen and (max-width:768px){
    /*--- sp ---*/
    .workplace .page-content1-inner {
        padding: 30px var(--inner-sides_sp) 40px 15px;
        width: var(--over-side-width);
        border-radius: var(--container-corner) 0 0 var(--container-corner);
        margin-left: var(--container-sides);
    }
    .workplace .recruit-page-title-main::before {
        width: calc(100% + var(--inner-sides_sp));
    }
    .company-sec-inner6-left{
        width: 100%;
        margin-bottom: 5px;
    }
    .company-sec-inner6-right{
        width: 100%;
    }
    .company-sec-inner6-right .company-sec-box:last-child {
        width: 100%;
    }
    .company-sec-inner6-right .company-sec-box:not(:last-child), 
    .company-sec-inner6-left .company-sec-box:not(:last-child) {
        margin-bottom: 5px;
    }
    .workplace-access-map_text{
        font-size: 1.4rem;
        line-height: calc(1em + 10px);
    }
    .workplace-access-map iframe{
        width: 100%;
        height: 400px;
    }
    .workplace-pho--item:not(:last-child){
        margin-bottom: 15px;
    }
}
/* workplace-pic */
.workplace-pic{
    display: grid;
}
.workplace-pic:not(:last-child){
    margin-bottom: 20px;
}
.workplace-pic._type1{
    grid-template-columns: 50% 50%;
}
.workplace-pic__grid{
    overflow: hidden;
}
.workplace-pic__grid img{
    width: 100%;
    height: 100%;
    object-fit: cover;
}
@media screen and (max-width:768px){
    /*--- sp ---*/
    .workplace-pic:not(:last-child){
        margin-bottom: 15px;
    }
    .workplace-pic._type1 .workplace-pic__grid._idx1,
    .workplace-pic._type1 .workplace-pic__grid._idx2{
        grid-column: span 2;
    }
    .workplace-pic._type1 .workplace-pic__grid._idx2{
        aspect-ratio: 15 / 8;
    }
}


/* タブメニュー */
.tab__menu {
    background: #fff;
    border-radius: 30px;
    display: flex;
    justify-content: space-between;
    box-shadow: var(--container-shadow);
    margin-bottom: 30px;
    height: 60px;
}
.tab__menu-item {
    color: var(--main-blue);
    width: 200px;
    height: 60px;
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 1.8rem;
    font-weight: bold;
    cursor: pointer;
    border-radius: 30px;
    transition: all var(--ease);
    position: relative;
}
.tab__menu-item:after{
    clip-path:var(--clip-bottom-arrow);
    position: absolute;
    left: 0;
    right: 0;
    bottom: -18px;
    width: 24px;
    height: 18px;
    background: var(--main-blue);
    margin: auto;
    content: "";
    opacity: 0;
}
/* is-activeがついている時のスタイル */
.tab__menu-item.is-active {
    background-color: var(--main-blue);
    color: #ffffff;
    transition: all var(--ease);
}
.tab__menu-item.is-active:after{
    opacity: 1;
    transition: all var(--ease);
}
.tab__panel-box {
    display: none;
}
.tab__panel-box.is-show {
    display: block;
}
@media screen and (max-width:768px){
    /*--- sp ---*/
    .tab__menu {
        background: #fff;
        border-radius: 15px;
        margin-bottom: 30px;
        height: auto;
        flex-flow: row wrap;
    }
    .tab__menu-item {
        color: var(--main-blue);
        width: 50%;
        height: 40px;
        display: flex;
        justify-content: center;
        align-items: center;
        font-size: 1.5rem;
        border-radius: 0;
        border-bottom: solid 1px var(--border-gray);
    }
    .tab__menu-item:first-child{
        border-radius: 15px 0 0 0;
    }
    .tab__menu-item:nth-of-type(2){
        border-radius: 0 15px 0 0;
    }
    .tab__menu-item:nth-of-type(5){
        border-radius: 0 0 0 15px;
    }
    .tab__menu-item:nth-of-type(6){
        border-radius: 0 0 15px 0;
    }
    .tab__menu-item:nth-of-type(n){
        border-right: solid 1px var(--border-gray);
    }
    .tab__menu-item:after{
        content: none;
    }
}
/*-----------------------------
internship
------------------------------*/
/* .internship{
    font-weight: 500;
} */
.internship-top{
    margin-bottom: 60px;
}
.internship-top img{
    border-radius: 20px;
}
.internship .recruit-page-title{
    margin-bottom: 40px;
}
.internship-apply{
    display: flex;
    justify-content: space-between;
    gap: 20px;
    flex-flow: row wrap;
}
.internship-apply--item{
    width: calc((100% - 20px) / 2);
    border: solid 1px var(--base-gray);
    padding: 30px;
    box-sizing: border-box;
    border-radius: 20px;
}
.internship-apply--item dt {
    font-size: 3.0rem;
    font-weight: bold;
    padding-left: 40px;
    box-sizing: border-box;
    position: relative;
    margin-bottom: 20px;
}
.internship-apply--item dt:before {
    content: "";
    background: url(../images/company/icon_company.svg) no-repeat center / contain;
    width: 30px;
    height: 30px;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    margin: auto;
}
.internship-apply--item dd{
    font-size: 1.6rem;
    line-height: calc(1em + 16px);
}
.internship-apply--item dd .text-ind{
    text-indent: -1.02em;
    padding-left: 2.02em;
}
.internship-sec:not(:last-of-type){
    margin-bottom: 60px;
}
.internship-sec-layout{
    border: solid 1px var(--base-gray);
    padding: 30px 30px 40px;
    box-sizing: border-box;
    border-radius: 20px;
}
.internship-sec-main{
    display: flex;
    justify-content: space-between;
    border: solid 1px var(--base-gray);
    padding: 30px 30px 40px;
    box-sizing: border-box;
    border-radius: 20px;
    gap: 60px;
    position: relative;
}
.internship-sec-main:before{
    content: "";
    background: var(--bg-gray);
    width: 2px;
    height: calc(100% - 60px);
    position: absolute;
    left: 0;
    right: 0;
    top: 30px;
    margin: auto;
}
.internship-sec-main + .internship-sec-course{
    width: 50%;
}
.internship-sec-course-pho{
    margin-bottom: 30px;
}
.internship-sec-course-pho img{
    border-radius: 15px;
}
.internship-sec-title{
    color: var(--main-blue);
    font-size: 2.4rem;
    font-weight: bold;
    margin-bottom: 15px;
    line-height: calc(1em + 5px);
}
.internship-sec-text{
    font-size: 1.6rem;
    line-height: calc(1em + 16px);
    margin-bottom: 30px;
}
.internship-sec-tb dl{
    display: flex;
    justify-content: space-between;
    gap: 15px;
}
.internship-sec-tb dl dt{
    font-size: 1.6rem;
    font-weight: bold;
    padding: 27px 0;
    border-bottom: solid 1px var(--main-blue);
    position: relative;
    min-height: 80px;
    width: 192px;
    line-height: calc(1em + 10px);
}
.internship-sec-tb dl dt::before, 
.internship-sec-tb dl dt::after,
.internship-sec-tb dl:first-child dt span::before,
.internship-sec-tb dl:first-child dt span::after{
    content: '';
    position: absolute;
    width: 7px;
    height: 7px;
    background-color: var(--main-blue);
    border-radius: 50%;
}
.internship-sec-tb dl dt::before {
    bottom: -4px;
    left: 0;
}
.internship-sec-tb dl dt::after {
    bottom: -4px;
    right: 0;
}
.internship-sec-tb dl:first-child dt span::before {
    top: -4px;
    left: 0;
}
.internship-sec-tb dl:first-child dt span::after {
    top: -4px;
    right: 0;
}
.internship-sec-tb dl dd{
    font-size: 1.6rem;
    padding: 27px 0;
    border-bottom: solid 1px var(--base-gray);
    position: relative;
    min-height: 80px;
    width: 813px;
    line-height: calc(1em + 10px);
}
.internship-sec-tb dl:first-child dt{
    border-top: solid 1px var(--main-blue);
}
.internship-sec-tb dl:first-child dd{
    border-top: solid 1px var(--base-gray);
}
.internship-sec-main .internship-sec-tb dl dt{
    width: 120px;
}
.internship-sec-main .internship-sec-tb dl dd{
    width: 345px;
}
.entry-text{
    font-size: 1.6rem;
    line-height: calc(1em + 16px);
    margin-bottom: 20px;
}
.entry-btn{
    width: 450px;
    height: 72px;
}
.entry-btn:not(:last-of-type){
    margin-bottom: 30px;
}
.entry-btn a{
    color: #fff;
    font-size: 2.2rem;
    font-weight: bold;
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    height: 100%;
    background: var(--main-orenge);
    border-radius: 36px;
    position: relative;
}
.entry-btn a:before{
    content: "";
    background: #fff;
    clip-path: var(--clip-right-arrow);
    width: 16px;
    height: 20px;
    position: absolute;
    top: 0;
    bottom: 0;
    right: 30px;
    margin: auto;
}
.entry-btn a:after{
    content: "";
    background: url(../images/icon_mail.svg) no-repeat center,#fff;
    background-size: 28px 22px;
    width: 52px;
    height: 52px;
    border-radius: 50%;
    position: absolute;
    top: 0;
    left: 10px;
    bottom: 0;
    margin: auto;
}
@media screen and (max-width:768px){
    /*--- sp ---*/
    .internship .page-content1-inner {
        padding: 30px var(--inner-sides_sp) 40px 15px;
        width: var(--over-side-width);
        border-radius: var(--container-corner) 0 0 var(--container-corner);
        margin-left: var(--container-sides);
    }
    .internship-top{
        margin-bottom: 30px;
    }
    .internship-top img{
        border-radius: 15px 0 0 15px;
    }
    .internship .recruit-page-title{
        margin-bottom: 30px;
    }
    .internship-apply{
        display: block;
    }
    .internship-apply--item{
        width: 100%;
        border: solid 1px var(--base-gray);
        padding: 15px;
        box-sizing: border-box;
        border-radius: 15px;
    }
    .internship-apply--item:not(:last-of-type){
        margin-bottom: 15px;
    }
    .internship-apply--item dt {
        font-size: 2.0rem;
        font-weight: bold;
        padding-left: 30px;
        box-sizing: border-box;
        position: relative;
        margin-bottom: 15px;
    }
    .internship-apply--item dt:before {
        content: "";
        background: url(../images/company/icon_company.svg) no-repeat center / contain;
        width: 20px;
        height: 20px;
        position: absolute;
        top: 0;
        bottom: 0;
        left: 0;
        margin: auto;
    }
    .internship-apply--item dd{
        font-size: 1.4rem;
        line-height: calc(1em + 12px);
    }
    .internship-sec:not(:last-of-type){
        margin-bottom: 40px;
    }
    .internship-sec-main {
        display: block;
        padding: 15px;
        border-radius: 15px;
    }
    .internship-sec-main:before {
        content: none;
    }
    .internship-sec-course-pho {
        margin-bottom: 20px;
    }
    .internship-sec-title {
        font-size: 2.1rem;
        margin-bottom: 15px;
    }
    .internship-sec-text {
        font-size: 1.4rem;
        line-height: calc(1em + 12px);
        margin-bottom: 25px;
        height: auto!important;
    }
    .internship-sec-tb dl {
        display: block;
    }
    .internship-sec-main .internship-sec-tb dl dt {
        width: 100%;
    }
    .internship-sec-main .internship-sec-tb dl dd {
        width: 100%;
    }
    .internship-sec-tb dl dt {
        font-size: 1.4rem;
        padding: 15px 0;
        border-bottom: solid 1px var(--base-gray);
        min-height: inherit;
        width: 100%;
    }
    .internship-sec-tb dl dt::before,
    .internship-sec-tb dl dt::after{
        content: none;
    }
    .internship-sec-tb dl dd {
        font-size: 1.4rem;
        padding: 15px 0;
        border-bottom: solid 1px var(--main-blue);
        position: relative;
        min-height: inherit;
        width: 100%;
        line-height: calc(1em + 12px);
    }
    .internship-sec-tb dl:first-child dd{
        border-top: none;
    }
    .internship-sec-tb dl dd::before, 
    .internship-sec-tb dl dd::after{
        content: '';
        position: absolute;
        width: 7px;
        height: 7px;
        background-color: var(--main-blue);
        border-radius: 50%;
    }
    .internship-sec-tb dl dd::before {
        bottom: -4px;
        left: 0;
    }
    .internship-sec-tb dl dd::after {
        bottom: -4px;
        right: 0;
    }
    .internship-sec-course:not(:last-of-type){
        margin-bottom: 40px;
    }
    .entry-text{
        font-size: 1.4rem;
        line-height: calc(1em + 12px);
        margin-bottom: 15px;
    }
    .entry-btn{
        width: 100%;
        height: 50px;
    }
    .entry-btn a{
        color: #fff;
        font-size: 1.8rem;
        border-radius: 30px;
    }
    .entry-btn a:before {
        content: "";
        background: #fff;
        clip-path: var(--clip-right-arrow);
        width: 12px;
        height: 16px;
        position: absolute;
        top: 0;
        bottom: 0;
        right: 15px;
        margin: auto;
    }
    .entry-btn a:after {
        content: "";
        background: url(../images/icon_mail.svg) no-repeat center, #fff;
        background-size: 22px 17px;
        width: 40px;
        height: 40px;
        border-radius: 50%;
        position: absolute;
        top: 0;
        left: 10px;
        bottom: 0;
        margin: auto;
    }
}
/*-------------------------
form
--------------------------*/
.form-text{
    font-size: 1.6rem;
    line-height: calc(1em + 16px);
    margin-bottom: 40px;
}
.form-text-list{
    font-size: 1.6rem;
    line-height: calc(1em + 16px);
    margin-bottom: 50px;
}
.form-text-list li span{
    color: var(--main-blue);
}
.form-text-list li a{
    text-decoration: underline;
    color: var(--patte-blue4);
}
.form-sec-tb{
    margin-bottom: 50px;
}
.form-sec-tb dl{
    display: flex;
    justify-content: space-between;
    gap: 15px;
}
.form-sec-tb dl dt{
    font-size: 1.6rem;
    font-weight: bold;
    padding: 20px 0;
    border-bottom: solid 1px var(--main-blue);
    position: relative;
    min-height: 91px;
    width: 216px;
    line-height: calc(1em + 30px);
}
.form-sec-tb dl:first-child{
    position: relative;
}
.form-sec-tb dl dt::before, 
.form-sec-tb dl dt::after,
.form-sec-tb dl:first-child::before,
.form-sec-tb dl:first-child::after{
    content: '';
    position: absolute;
    width: 7px;
    height: 7px;
    background-color: var(--main-blue);
    border-radius: 50%;
}
.form-sec-tb dl dt::before {
    bottom: -4px;
    left: 0;
}
.form-sec-tb dl dt::after {
    bottom: -4px;
    right: 0;
}
.form-sec-tb dl:first-child::before {
    top: -3px;
    left: 0;
}
.form-sec-tb dl:first-child::after {
    top: -3px;
    left: 209px;
}
.form-sec-tb dl dd{
    font-size: 1.6rem;
    padding: 20px 0;
    border-bottom: solid 1px var(--base-gray);
    position: relative;
    min-height: 91px;
    width: 849px;
    line-height: calc(1em + 10px);
}
.form-sec-tb dl:first-child dt{
    border-top: solid 1px var(--main-blue);
}
.form-sec-tb dl:first-child dd{
    border-top: solid 1px var(--base-gray);
}
.form-sec-tb dl dt .required{
    color: #fff;
    background: var(--main-green);
    font-size: 1.4rem;
    font-weight: 500;
    width: 36px;
    height: 18px;
    display: flex;
    justify-content: center;
    align-items: center;
    position: absolute;
    right: 0;
    top: 35px;
}
.form-sec-tb dl dd input[type="text"],
.form-sec-tb dl dd input[type="tel"],
.form-sec-tb dl dd input[type="email"]{
    background: var(--bg-gray);
    border-radius: 5px;
    height: 50px;
    padding: 0 15px;
    box-sizing: border-box;
}
textarea {
    background: var(--bg-gray);
    border-radius: 5px;
    width: 100%;
    height: 150px;
    padding: 15px;
    box-sizing: border-box;
}
.form-sec-tb dl dd input.name{
    width: 200px;
}
.form-sec-tb dl dd input[id="age"]{
    width: 140px;
}
.form-sec-tb dl dd input.zip{
    width: 120px;
}
.form-sec-tb dl dd input[id="address1"]{
    width: 200px;
}
.form-sec-tb dl dd input[id="address2"],
.form-sec-tb dl dd input[type="email"]{
    width: 100%;
}
.form-sec-tb dl dd input.hasDatepicker{
    width: 200px;
    position: relative;
    padding-right: 40px;
}
.form-sec-tb dl dd span.data{
    position: relative;
}
.form-sec-tb dl dd span.data:after{
    content: "";
    background: url(../images/icon_calender.svg) no-repeat center / contain;
    width: 21px;
    height: 20px;
    position: absolute;
    top: 4px;
    left: 165px;
}
.form-sec-tb dl dd p:not(:last-of-type){
    margin-bottom: 10px;
}
.form-sec-tb dl dd input.name:first-child{
    margin-right: 15px;
}
.form-sec-tb dl dd span.sup{
    display: block;
    font-size: 1.4rem;
    color: var(--text-gray2);
    margin-top: 5px;
}
.form-sec-tb dl dd .mwform-radio-field {
    display: inline-block;
}
.form-sec-tb dl dd .mwform-radio-field label {
    display: flex;
    align-items: center;
    padding: 10px 20px;
    border: 1px solid #ccc; /* ボーダーの色 */
    border-radius: 5px; /* 角を丸くする */
    cursor: pointer;
    transition: border-color 0.3s;
}
.form-sec-tb dl dd .mwform-radio-field input[type="radio"] {
    margin-right: 10px;
    accent-color: var(--main-blue);
}
.form-sec-tb dl dd .vertical-item + .vertical-item{
    margin-top: 0;
    margin-left: 10px;
}
#privacy{
    margin-bottom: 50px;
}
#privacy h4{
    font-size: 2.4rem;
    font-weight: bold;
    padding-left: 25px;
    line-height: calc(1em + 5px);
    margin-bottom: 20px;
    position: relative;
}
#privacy h4:before{
    content: "";
    background: var(--main-orenge);
    width: 16px;
    height: 16px;
    position: absolute;
    top: 8px;
    left: 0;
    border-radius: 50%;
}
#privacy .sup{
    font-size: 1.6rem;
    line-height: calc(1em + 16px);
    margin-bottom: 20px;
}
#privacy .frame{
    font-size: 1.6rem;
    font-weight: 500;
    line-height: calc(1em + 16px);
    padding: 25px 30px;
    box-sizing: border-box;
    border: solid 1px var(--base-gray);
}
.btn_submit{
    width: 450px;
    height: 72px;
    position: relative;
    margin: 0 auto;
}
.btn_submit::after {
    clip-path: var(--clip-right-arrow);
    position: absolute;
    top: 0;
    bottom: 0;
    right: 20px;
    margin: auto;
    width: 16px;
    height: 20px;
    background: #fff;
    content: "";
}
.btn_submit input{
    color: #fff;
    display: flex;
    font-size: 2.2rem;
    font-weight: bold;
    justify-content: center;
    align-items: center;
    width: 100%;
    height: 100%;
    background: var(--main-blue);
    text-align: center;
    border-radius: 10px;
}
#submitback{
    width: 450px;
    height: 72px;
    position: relative;
    margin: 10px auto 0;
}
#submitback::after {
    clip-path: var(--clip-left-arrow);
    position: absolute;
    top: 0;
    bottom: 0;
    left: 20px;
    margin: auto;
    width: 16px;
    height: 20px;
    background: #fff;
    content: "";
}
#submitback input{
    color: var(--base-black);
    display: flex;
    font-size: 2.2rem;
    font-weight: bold;
    justify-content: center;
    align-items: center;
    width: 100%;
    height: 100%;
    background: var(--base-gray);
    text-align: center;
    border-radius: 10px;
}
.mail_form-sec{
    border-bottom: solid 1px var(--base-gray);
}
.contact-tel{
    width: 100%;
    background: var(--bg-gray);
    padding: 30px;
    border-radius: 20px;
}
.contact-tel-main{
    width: 100%;
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 20px;
}
.contact-tel-main dt{
    font-size: 1.6rem;
    font-weight: 500;
    color: #fff;
    border-radius: 18px;
    background: var(--main-blue);
    width: 130px;
    height: 36px;
    display: flex;
    justify-content: center;
    align-items: center;
}
.contact-tel-main dd{
    display: flex;
    width: 867px;
    align-items: center;
}
.contact-tel-main-number{
    border-right: solid 1px var(--base-gray);
    margin-right: 20px;
    padding-right: 20px;
    line-height: 1em;
}
.contact-tel-main-number a{
    font-family: var(--font-en);
    font-weight: 700;
    color: var(--main-green);
    display: flex;
    align-items: center;
    font-size: 5.4rem;
}
.contact-tel-main-number a img{
    margin-right: 10px;
}
.form-text a[href^="tel:"]{
    color: var(--patte-blue4);
}
.form-confirm-btn{
    width: 300px;
}
.mw_wp_form_confirm .form-sec-tb dl dt{
    min-height: inherit;
    line-height: calc(1em + 10px);
}
.mw_wp_form_confirm .form-sec-tb dl dd{
    min-height: inherit;
}
.mw_wp_form_confirm .form-sec-tb dl dt .required {
    top: 25px;
}
.mw_wp_form_confirm .form-sec-tb dl dd span.data:after{
    content: none;
}
.mw_wp_form_confirm .form-sec-tb dl dd span.sup{
    display: none;
}

.form-sec-tb.default-tb dl dt{
    min-height: inherit;
    line-height: calc(1em + 10px);
}
.form-sec-tb.default-tb dl dd{
    min-height: inherit;
    width: ;
}
.form-sec-tb.default-tb dl dd span.data:after{
    content: none;
}
@media screen and (max-width:768px){
    /*--- sp ---*/
    .form-sec-tb dl {
        display: block;
    }
    .form-sec-tb dl dt {
        font-size: 1.4rem;
        padding: 15px 0;
        border-bottom: solid 1px var(--base-gray);
        min-height: inherit;
        width: 100%;
    }
    .form-sec-tb dl dt::before,
    .form-sec-tb dl dt::after{
        content: none;
    }
    .form-sec-tb dl dd {
        font-size: 1.4rem;
        padding: 15px 0;
        border-bottom: solid 1px var(--main-blue);
        position: relative;
        min-height: inherit;
        width: 100%;
        line-height: calc(1em + 12px);
    }
    .form-sec-tb dl:first-child dd{
        border-top: none;
    }
    .form-sec-tb dl dd::before, 
    .form-sec-tb dl dd::after{
        content: '';
        position: absolute;
        width: 7px;
        height: 7px;
        background-color: var(--main-blue);
        border-radius: 50%;
    }
    .form-sec-tb dl dd::before {
        bottom: -4px;
        left: 0;
    }
    .form-sec-tb dl dd::after {
        bottom: -4px;
        right: 0;
    }
    .form-sec-tb dl:first-child::after {
        top: -3px;
        left: auto;
        right: 0;
    }
    .form-sec-tb dl dt .required {
        color: #fff;
        background: var(--main-green);
        font-size: 1.3rem;
        font-weight: 500;
        width: 36px;
        height: 16px;
        position: static;
        display: inline-flex;
        margin-left: 5px;
    }
    .form-sec-tb dl dd input[type="text"], 
    .form-sec-tb dl dd input[type="tel"], 
    .form-sec-tb dl dd input[type="email"] {
        width: 100%;
        background: var(--bg-gray);
        border-radius: 5px;
    }
    .form-sec-tb dl dd input.name{
        width: 100%;
    }
    .form-sec-tb dl dd input.name:not(:nth-of-type(-n + 1)){
        margin-top: 8px;
    }
    .form-sec-tb dl dd input[id="age"]{
        width: 140px;
    }
    .form-sec-tb dl dd input.zip{
        width: 120px;
    }
    .form-sec-tb dl dd input[id="address1"]{
        width: 200px;
    }
    .form-sec-tb dl dd .mwform-radio-field {
        display: block;
    }
    .form-sec-tb dl dd .vertical-item + .vertical-item {
        margin-top: 8px;
        margin-left: 0;
    }
    .form-sec-tb dl dd .horizontal-item + .horizontal-item {
        margin-left: 0;
        margin-top: 8px;
    }
    .form-sec-tb dl dd .mwform-radio-field label {
        padding: 10px;
    }
    .form-sec-tb dl dd span.data:after {
        top: 37px;
        right: 15px;
        left: auto;
    }
    .mail_form-sec{
        margin-bottom: 20px!important;
    }
    #privacy {
        margin-bottom: 30px;
    }
    #privacy .frame {
        font-size: 1.4rem;
        font-weight: 500;
        line-height: calc(1em + 12px);
        padding: 15px;
    }
    .btn_submit{
        width: 100%;
        height: 50px;
    }
    .btn_submit input {
        color: #fff;
        display: flex;
        font-size: 1.8rem;
    }
    .btn_submit::after {
        clip-path: var(--clip-right-arrow);
        position: absolute;
        top: 0;
        bottom: 0;
        right: 15px;
        margin: auto;
        width: 12px;
        height: 16px;
        background: #fff;
        content: "";
    }
    #submitback{
        width: 100%;
        height: 50px;
    }
    #submitback input {
        display: flex;
        font-size: 1.8rem;
    }
    #submitback::after {
        clip-path: var(--clip-left-arrow);
        position: absolute;
        top: 0;
        bottom: 0;
        left: 15px;
        margin: auto;
        width: 12px;
        height: 16px;
        background: #fff;
        content: "";
    }
    .contact-tel{
        padding: 15px;
        border-radius: 15px;
    }
    .contact-tel-main {
        width: 100%;
        display: block;
    }
    .contact-tel-main dt {
        width: 100%;
        font-size: 1.6rem;
        font-weight: 500;
        color: #fff;
        border-radius: 8px;
        background: var(--main-blue);
        width: 100%;
        margin-bottom: 15px;
    }
    .contact-tel-main dd {
        display: block;
        width: 100%;
    }
    .contact-tel-main-number {
        border-right: none;
        margin-right: 0;
        padding-right: 0;
        line-height: 1em;
        margin-bottom: 10px;
    }
    .contact-tel-main-number a {
        font-size: 3.0rem;
        justify-content: center;
    }
    .contact-tel-main-number a img {
        width: 30px;
        margin-right: 8px;
    }
    .contact-tel-main-text{
        text-align: center;
    }
    .form-text a[href^="tel:"]{
        color: var(--patte-blue4);
        text-decoration: underline;
    }
    .form-confirm-btn{
        width: 100%;
    }
}
/*--------------------------
採用情報
---------------------------*/
.new-recruit{
    margin-top: -70px;
    position: relative;
    z-index: 1;
}
.new-recruit-contents{
    position: relative;
}
.new-recruit .page-inner{
    overflow-x: visible;
}
.recruit-page-title.pt2 {
    margin-bottom: 40px;
}
.pt2 .recruit-page-title-main {
    color: var(--main-blue);
    font-size: 2.7rem;
    font-weight: bold;
    position: relative;
    padding-bottom: 20px;
}
.pt2 .recruit-page-title-main::before {
    width: calc(100% + var(--container-sides));
    display: block;
    color: var(--main-blue);
    font-family: var(--font-en);
    font-size: 7.2rem;
    line-height: 1;
    content: attr(data-title-en);
    border-bottom: none;
    padding-bottom: 0;
    margin-bottom: 10px;
}
.pt2 .recruit-page-title-main::after{
    content: "";
    background: var(--main-green);
    width: 60px;
    height: 6px;
    position: absolute;
    left: 0;
    bottom: 0;
}
.main-recruit{
    padding-bottom: 60px;
    margin-bottom: 60px;
    border-bottom: solid 1px var(--border-gray);
}
.main-recruit-catch{
    font-size: 2.7rem;
    font-weight: bold;
    margin-bottom: 40px;
    line-height: calc(1em + 20px);
}
.main-recruit-text{
    line-height: calc(1em + 16px);
}
.main-recruit-text.none-colum{
    column-count: 1;
    column-gap: 0;
}
.main-recruit-pho{
    width: calc(100% + 60px + var(--outer-sides-vw));
    margin-left: calc((var(--outer-sides-vw) + 60px) * -1);
    margin-top: 60px;
}
.main-recruit-pho img{
    width: 100%;
    height: auto;
}
.new-recruit-contents #recruit-breadcrumbs{
    position: absolute;
    top: 20px;
    left: 0;
    right: 0;
    margin: auto;
}
.new-recruit__mainimg{
    display: block;
    width: 100%;
    height: auto;
}
.new-recruit__mainimg img{
    width: 100%;
    height: auto;
}
@media screen and (min-width:769px){
    .new-recruit__mainimg._pc-dual{
        display: flex;
        justify-content: center;
    }
    .new-recruit__mainimg._pc-dual img{
        width: 50%;
    }   
}
@media screen and (max-width:1200px){
    .main-recruit-pho{
        width: calc(100% + 60px);
        margin-left: -60px;
    }
}
@media screen and (max-width:768px){
    /*--- sp ---*/
    .new-recruit {
        margin-top: -25px;
    }
    .new-recruit-contents #recruit-breadcrumbs {
        top: 15px;
    }
    .recruit-page-title.pt2 {
        margin-bottom: 20px;
    }
    .pt2 .recruit-page-title-main {
        color: var(--main-blue);
        font-size: 1.8rem;
        font-weight: bold;
        position: relative;
        padding-bottom: 20px;
    }
    .pt2 .recruit-page-title-main::before {
        font-size: 3.5rem;
        margin-bottom: 10px;
    }
    .pt2 .recruit-page-title-main::after{
        width: 40px;
        height: 4px;
    }
    .main-recruit-catch {
        font-size: 1.7rem;
        font-weight: bold;
        margin-bottom: 25px;
        line-height: calc(1em + 7px);
    }
    .main-recruit {
        padding-bottom: 30px;
        margin-bottom: 30px;
    }
    .main-recruit-text {
        column-count: 1;
        column-gap: 0;
        font-size: 1.4rem;
        line-height: calc(1em + 12px);
    }
    .main-recruit-text p:not(:last-child){
        margin-bottom: 20px!important;
    }
    .main-recruit-pho {
        margin-top: 25px;
        width: calc(100% + var(--inner-sides_sp) + var(--inner-sides_sp) + var(--inner-sides_sp));
        margin-left: calc(var(--inner-sides_sp)* -2);
    }
}
/*movieList*/
.movieList{
    width: 1080px;
}
.movieList ul{
    display: flex;
    justify-content: space-between;
    gap: 26px;
    row-gap: 20px;
    flex-flow: row wrap;
}
.movieList ul li{
    width: calc(50% - 13px);
    position: relative;
}
.movieList ul li img{
    width: 100%;
    height: auto;
    border-radius: 20px 20px 0 20px;
}
.movieList ul li a p{
    position: absolute;
    right: 0;
    bottom: 0;
    font-size: 2.4rem;
    font-weight: bold;
    color: var(--main-blue);
    padding: 20px;
    box-sizing: border-box;
    line-height: 1em;
    background: #fff;
    border-radius: 20px 0 0 0;
}
.movieList ul li a p::before{
    content: "";
    background: url(../images/interview_icon.svg) no-repeat center / contain;
    width: 20px;
    height: 20px;
    position: absolute;
    bottom: 0;
    left: -20px;
}
.movieList ul li a p::after{
    content: "";
    background: url(../images/interview_icon.svg) no-repeat center / contain;
    width: 20px;
    height: 20px;
    position: absolute;
    top: -20px;
    right: 0;
}
/* .main-recruit-list {
    display: grid;
    grid-template-columns: 1fr 1fr; 
    grid-auto-rows: auto; 
    gap: 50px;
    row-gap: 30px;
}
.main-recruit-list-inner {
    background: var(--bg-gray);
    border-radius: 20px;
    padding: 30px;
    width: 100%;
    position: relative;
}
/* 各セクションの位置 */
/* .main-recruit-list-inner.m-fukui,
.main-recruit-list-inner.n-fukui {
    grid-column: 1;
    grid-row: 1;
}
.main-recruit-list-inner.m-dactory,
.main-recruit-list-inner.n-dactory {
    grid-column: 1;
    grid-row: 2;
}
.main-recruit-list-inner.m-harue,
.main-recruit-list-inner.n-harue {
    grid-column: 1;
    grid-row: 3;
}
.main-recruit-list-inner.m-tokyo,
.main-recruit-list-inner.n-tokyo {
    grid-column: 2;
}
.main-recruit-list-inner.m-osaka,
.main-recruit-list-inner.n-osaka {
    grid-column: 2;
}
.main-recruit-list-inner.m-kanazawa,
.main-recruit-list-inner.n-kanazawa {
    grid-column: 2;
} */

.main-recruit-list {
    display: flex;
    flex-flow: row wrap;
    align-items: flex-start;
    gap: 50px;
}
.main-recruit-list .left-column,
.main-recruit-list .right-column{
    width: calc((100% - 50px) / 2);
    display: flex;
    flex-flow: column;
    gap: 30px;
}
.main-recruit-list-inner {
    background: var(--bg-gray);
    border-radius: 20px;
    padding: 30px;
    width: 100%;
    position: relative;
}


.main-recruit-list-title {
    font-size: 2.0rem;
    font-weight: bold;
    position: absolute;
    top: -15px;
    display: flex;
    align-items: baseline;
}
.main-recruit-list-title::before{
    content: "lOCATION";
    font-family: var(--font-en);
    font-weight: bold;
    color: var(--main-blue);
    padding-right: 15px;
    margin-right: 15px;
    border-right: solid 2px var(--main-green);
    line-height: 1em;
}
.main-recruit-list--item:not(:last-child){
    padding-bottom: 20px;
    margin-bottom: 20px;
    border-bottom: solid 1px #b3b3b3;
}
.main-recruit-list-text {
    display: flex;
    justify-content: space-between;
    align-items: center;
}
.main-recruit-list-text-main {
    font-size: 1.8rem;
    font-weight: bold;
}
.main-recruit-list-text-main .cate{
    margin-left: 15px;
    background: var(--main-blue);
    color: #fff;
    font-size: 1.4rem;
    font-weight: 500;
    line-height: 1em;
    padding: 0 3px;
}
.main-recruit-list-text-btn a {
    font-family: var(--font-en);
    font-size: 1.6rem;
    font-weight: bold;
    background-color: #fff;
    color: var(--main-blue);
    width: 148px;
    height: 44px;
    display: flex;
    align-items: center;
    position: relative;
    border-radius: 5px;
    padding: 0 15px;
    box-sizing: border-box;
}
.main-recruit-list-text-btn a::after{
    clip-path: var(--clip-right-arrow);
    position: absolute;
    top: 0;
    bottom: 0;
    right: 15px;
    margin: auto;
    width: 8px;
    height: 10px;
    background: var(--main-blue);
    content: "";
}
@media screen and (max-width:768px){
    /*--- sp ---*/
    .movieList{
        width: 100%;
    }
    .movieList ul{
        display: block;
    }
    .movieList ul li{
        width: 100%;
        position: relative;
    }
    .movieList ul li:not(:last-child){
        margin-bottom: 15px;
    }
    .movieList ul li img{
        border-radius: 15px 15px 0 15px;
    }
    .movieList ul li a p{
        position: absolute;
        right: 0;
        bottom: 0;
        font-size: 1.6rem;
        font-weight: bold;
        color: var(--main-blue);
        padding: 10px;
        box-sizing: border-box;
        line-height: 1em;
        background: #fff;
        border-radius: 15px 0 0 0;
    }
    .movieList ul li a p::before{
        content: "";
        background: url(../images/interview_icon.svg) no-repeat center / contain;
        width: 15px;
        height: 15px;
        position: absolute;
        bottom: 0;
        left: -15px;
    }
    .movieList ul li a p::after{
        content: "";
        background: url(../images/interview_icon.svg) no-repeat center / contain;
        width: 15px;
        height: 15px;
        position: absolute;
        top: -15px;
        right: 0;
    }
    .main-recruit-list {
        display: block;
    }
    .main-recruit-list .left-column, 
    .main-recruit-list .right-column{
        width: 100%;
        display: block;
    }
    .main-recruit-list .left-column{
        margin-bottom: 35px;
    }
    .main-recruit-list-title {
        font-size: 1.8rem;
        font-weight: bold;
        position: absolute;
        top: -15px;
        display: flex;
        align-items: baseline;
    }
    .main-recruit-list-inner {
        border-radius: 15px;
        padding: 20px 15px 15px;
        width: 100%;
    }
    .main-recruit-list-inner:not(:last-child){
        margin-bottom: 35px;
    }
    .main-recruit-list-text{
        display: block;
    }
    .main-recruit-list-text-main{
        font-size: 1.6rem;
        margin-bottom: 15px;
    }
    .main-recruit-list-text-btn a{
        width: 100%;
    }
}
.new-slid{
    width: calc(100% + 51px + var(--outer-sides-vw) + var(--outer-sides-vw));
    margin-left: calc((var(--outer-sides-vw) + 60px) * -1);
    position: relative;
}
.new-slid-prod-list-item img{
    width: 100%;
    height: auto;
    border-radius: 10px;
}
.new-slid-prod-list-item{
    padding: 0 2px;
    box-sizing: border-box;
    position: relative;
}
.new-slid-prod-list-item a::after{
    content: "";
    background: url(../images/icon_saisei.svg) no-repeat center / contain;
    width: 80px;
    height: 80px;
    position: absolute;
    top: 0;
    right: 0;
    left: 0;
    bottom: 0;
    margin: auto;
}
.new-slid-prod-list-item a:hover{
    opacity: 1!important;
}
.new-slid-prod-list-item p{
    padding: 10px;
    box-sizing: border-box;
    background: var(--main-blue);
}
.new-slid-prod-list-item .move_title{
    position: absolute;
    right: 2px;
    bottom: 0;
    font-size: 2.4rem;
    font-weight: bold;
    color: #fff;
    padding: 20px;
    box-sizing: border-box;
    line-height: 1em;
    background: var(--main-blue);
    border-radius: 20px 0 0 0;
}
.new-prod-slider-arrows{
    display: flex;
    justify-content: space-between;
    width: 264px;
    margin: 40px auto 0 calc(var(--outer-sides-vw) + 60px);
}
.new-prod-slider-arrow {
    display: flex;
    justify-content: center;
    align-items: center;
    position: relative;
    width: 58px;
    height: 58px;
    background: var(--main-blue);
    font-size: 0;
    cursor: pointer;
    border-radius: 50%;
}
.new-prod-slider-arrow::after {
    display: block;
    background: url(../images/icon_arow.svg) no-repeat center / contain;
    width: 19px;
    height: 19px;
    content: "";
}
.new-prod-slider-arrow--left {
    transform: rotate(180deg);
}
.new-prod-slider-counter {
    display: flex;
    justify-content: space-between;
    align-items: center;
    position: absolute;
    bottom: 10px;
    left: calc(var(--outer-sides-vw) + 137px);
    transform: translateY(-50%);
    width: 110px;
}
.new-prod-slider-counter::before {
    flex: 1 1 auto;
    height: 1px;
    margin: 0 10px;
    background: var(--base-gray);
    content: "";
}
.new-prod-slider-counter__num {
    min-width: 30px;
    font-family: var(--font-en);
    font-size: 2rem;
    font-weight: 500;
    line-height: 1;
    text-align: center;
}
.new-prod-slider-counter__num--current {
    order: -1;
}
.recruit-page-title.mb-pt2{
    margin-bottom: 40px;
}

@media screen and (max-width:1200px){
    .new-slid{
        width: calc(100% + 60px);
        margin-left: -60px;
    }
    .new-prod-slider-arrows {
        width: 264px;
        margin: 40px auto 0 60px;
    }
}
@media screen and (max-width:768px){
    /*--- sp ---*/
    .new-slid{
        width: calc(100% + var(--container-sides) + 15px + var(--container-sides));
        margin-left: calc((var(--container-sides) + 15px)* -1);
        overflow: hidden;
    }
    .new-slid-prod-list-item{
        padding: 0 5px;
    }
    .new-slid-prod-list-item img{
        border-radius: 15px;
    }
    .new-prod-slider-arrow {
        width: 38px;
        height: 38px;
    }
    .new-prod-slider-arrow::after {
        display: block;
        background: url(../images/icon_arow.svg) no-repeat center / contain;
        width: 10px;
        height: 10px;
        content: "";
    }
    .new-prod-slider-arrows {
        width: var(--over-side-width);
        padding: 20px var(--inner-sides_sp) 0 15px;
        margin: 0 auto 0 var(--outer-sides-vw);
    }
    .new-prod-slider-counter {
        display: flex;
        justify-content: space-between;
        align-items: center;
        position: absolute;
        bottom: 0;
        right: 0;
        left: var(--outer-sides-vw);
        margin: auto;
        transform: translateY(-50%);
        width: 110px;
    }
    .recruit-page-title.mb-pt2{
        margin-bottom: 25px;
    }
}
/*---------------------------
採用情報詳細single-recruit.php
--------------------------*/
.single-recruit-contents{
    overflow-x: hidden;
}
.single-recruit-title{
    margin-bottom: 30px;
}
.single-recruit-title__sub{
    display: flex;
    align-items: center;
    margin-bottom: 10px;
}
.single-recruit-title__sub strong{
    color: var(--main-blue);
    font-size: 1.6rem;
    width: 92px;
    height: 28px;
    display: flex;
    align-items: center;
    justify-content: center;
    border: solid 1px var(--main-blue);
    border-radius: 14px;
}
.single-recruit-title__sub span{
    margin-left: 8px;
    color: var(--main-blue);
    font-family: var(--font-en);
    font-size: 1.6rem;
    font-weight: 700;
}
.single-recruit-title__main{
    font-size: 3.0rem;
    font-weight: bold;
    line-height: calc(1em + 10px);
}
.single-recruit-contents .entry-btn{
    margin: 0 auto;
}
@media screen and (max-width:768px){
    /*--- sp ---*/
    .single-recruit-title__sub strong{
        color: var(--main-blue);
        font-size: 1.4rem;
        width: 80px;
        height: 25px;
    }
    .single-recruit-title__sub span {
        font-size: 1.4rem;
    }
    .single-recruit-title__main {
        font-size: 2.4rem;
    }
}


/*--------------------------------
20241023 調整追記
戻す場合はここから下をコメントアウト
--------------------------------*/
/*フッター*/
.footer-inner{
    width: 100%;
    border-radius: 0;
}
.footer-cont{
    padding: 50px var(--container-sides) 40px var(--container-sides);
}
/*事業と仕事を知る*/
.business-slid {
    width: calc(100% + var(--container-sides) + 110px + var(--container-sides) + var(--outer-sides-vw) + var(--outer-sides-vw));
    margin-left: calc((var(--container-sides) + 60px + var(--outer-sides-vw))* -1);
    margin-bottom: 40px;
    overflow-x: hidden;
}
#business01 .business-sec-chart-img img,
#business03 .business-sec-chart-img img{
    width: 100%;
    height: auto;
}
.business-sec-pho-item{
    width: calc((100% - 20px) / 2);
}
.business-sec-pho-item img{
    width: 100%;
    height: auto;
}
.business-sec-pho-item._dual{
    display: flex;
    gap: 0 21px;
}
.business-sec-pho-item._dual .business-sec-pho-item__pic{
    display: block;
    width: calc(50% - 10.5px);
}
.manage-list-item{
    width: calc((100% - 60px) / 4);
}
.manage-list-item img{
    width: 100%;
    height: auto;
}
@media screen and (max-width:1200px){
    .business-slid {
        width: calc(100% + var(--container-sides) + 120px + var(--container-sides));
        margin-left: calc((var(--container-sides) + 60px)* -1);
    }
}
@media screen and (max-width:768px){
    /*--- sp ---*/
    .business-slid{
        width: calc(100% + var(--container-sides) + 60px + var(--container-sides));
        margin-left: calc((var(--container-sides) + 60px)* -1);
    }
    .business.page-content1{
        width: 100%;
    }
    .business .page-content1-inner {
        padding: 30px var(--inner-sides_sp) 40px 15px;
        width: var(--over-side-width);
        border-radius: var(--container-corner) 0 0 var(--container-corner);
        margin-left: var(--container-sides);
    }
    .business-sec-pho-item{
        width: calc(50% - 2.5px);
    }
    .business-sec-pho-item._dual{
        gap: 0 5px;
    }
    .business-sec-pho-item._dual .business-sec-pho-item__pic{
        width: calc(50% - 2.5px);
        height: 100%;
    }
    .business-sec-pho-item._dual .business-sec-pho-item__pic img{
        width: 100%;
        height: 100%;
        object-fit: cover;
    }
    .manage-list-item{
        width: 100%;
    }
}
/*福利厚生*/
.number01 .welfare-sec-textbox,
.number03 .welfare-sec-textbox{
    padding-left: 60px;
}
.number01 .welfare-sec__img,
.number03 .welfare-sec__img {
    transform: translateX(calc(var(--outer-sides-vw) + 50px));
}
@media screen and (max-width:1200px){
    .number01 .welfare-sec__img,
    .number03 .welfare-sec__img {
        transform: translateX(60px);
    }
    .number01 .welfare-sec-text::before,
    .number03 .welfare-sec-text::before{
        right: 50px;
    }
}
@media screen and (max-width:768px){
    /*--- sp ---*/
    .welfare.page-content1{
        width: 100%;
    }
    .welfare .page-content1-inner {
        padding: 30px var(--inner-sides_sp) 40px 15px;
        width: var(--over-side-width);
        border-radius: var(--container-corner) 0 0 var(--container-corner);
        margin-left: var(--container-sides);
    }
    .number01 .welfare-sec-textbox,
    .number03 .welfare-sec-textbox{
        padding-left: 0;
    }
    .number01 .welfare-sec__img,
    .number03 .welfare-sec__img {
        transform: none;
    }
}
/*教育制度・評価制度*/
@media screen and (max-width:768px){
    /*--- sp ---*/
    .education.page-content1{
        width: 100%;
    }
    .education .page-content1-inner {
        padding: 30px var(--inner-sides_sp) 40px 15px;
        width: var(--over-side-width);
        border-radius: var(--container-corner) 0 0 var(--container-corner);
        margin-left: var(--container-sides);
    }
}

/**
 * 2025.01.09 追記
 * 採用情報「応募について」スタイル調整
 */
.aboutEntryContact {
    width: 100%;
    background: var(--bg-gray);
    padding: 20px 30px;
    border-radius: 20px;
}
.aboutEntryContact__wrapper {
    display: flex;
    align-items: center;
}
.aboutEntryContact__title {
    font-size: 1.6rem;
    font-weight: 500;
    line-height: 1.0;
    color: #fff;
    text-align: center;
    border-radius: 50px;
    background: var(--main-blue);
    width: 130px;
    padding: 12px 0;
    margin-right: 20px;
}
.aboutEntryContact__telNumber {
    border-right: solid 1px var(--base-gray);
    margin-right: 40px;
    padding-right: 30px;
    line-height: 1em;
}
.aboutEntryContact__telNumber-group {
    display: flex;
    align-items: center;
    gap: 15px;
}
.aboutEntryContact__telNumber-icon {
    width: 70px;
    height: auto;
    margin: 0!important;
}
.aboutEntryContact__telNumber-img {
    width: 303px;
    height: auto;
    flex-shrink: 0;
    margin-bottom: 8px;
}
.aboutEntryContact__telNumber-text {
    letter-spacing: 0.04rem;
    line-height: 1.0;
}
.aboutEntryContact__entryBtn {
    width: 400px;
}
.aboutEntryContact__entryBtn-link {
    font-size: 2.0rem!important;
    line-height: 1.0;
}

@media screen and (max-width:768px) {
    .aboutEntryContact {
        padding: 15px;
    }
    .aboutEntryContact__wrapper {
        flex-direction: column;
    }
    .aboutEntryContact__title {
        width: 100%;
        font-size: 1.6rem;
        font-weight: 500;
        color: #fff;
        border-radius: 8px;
        background: var(--main-blue);
        width: 100%;
        margin: 0 0 15px;
    }
    .aboutEntryContact__telNumber {
        border-right: none;
        margin-right: 0;
        padding-right: 0;
        border-bottom: solid 1px var(--base-gray);
        padding-bottom: 20px;
        margin-bottom: 20px;
    }
    .aboutEntryContact__telNumber-group {
        gap: 10px;
    }
    .aboutEntryContact__telNumber-icon {
        width: 50px!important;
        height: auto;
        margin: 0!important;
    }
    .aboutEntryContact__telNumber-img {
        width: auto!important;
        height: 24px!important;
    }
    .aboutEntryContact__telNumber-text {
        font-size: 1.25rem;
        line-height: 1.0;
    }
    .aboutEntryContact__form {
        width: 100%;
    }
    .aboutEntryContact__entryBtn {
        width: 100%;
    }
    .aboutEntryContact__entryBtn-link {
        font-size: 1.6rem!important;
    }
}
