/* リセット
----------------------------------------- */



table {
    border-collapse: collapse;
    border-spacing: 0;
}

caption {
    text-align: left;
}

.recruit dt {
    margin: 0;
}

.recruit ul, .recruit ol, .recruit dd {
    margin: 0;
    padding: 0;
    list-style: none;
}

td,
th {
    vertical-align: top;
    padding: 0;
}

th {
    text-align: left;
    font-weight: bold;
}

img {
    vertical-align: bottom;
}

.gl-h-logo img {
    vertical-align: baseline;
}

.p-sec.f .p-sec-body {
    background: #FAFAFA;
}

.p-sec.f .sub-ttl {
    margin: 0;
    color: #000;
}

.page-id-953 {
    background: #fafafa;
}

.page-id-2374 {
    background: #fafafa;
}

.recruit-bg01 {
    background: #fafafa;
}

.recruit-bg02 {
    background: #fff;
}

.recruit-bg03 {
    background: #FFD54F;
}

/* 
----------------------------------------- */

.wrap {
    width: 90%;
    max-width: 1080px;
    margin: auto;
}


.mont {
    font-family: "montserrat", sans-serif;
    font-weight: 800;
    font-style: italic;
}


.page-id-2374 .fixedbar-bottom {
    display: none;
}


/* 
----------------------------------------- */

.recruit-info-flex {
    display: flex;
    justify-content: space-between;
    align-items: center;
    background: #EAEAEA;
    padding: 40px;
    border-radius: 20px;
    position: relative;
}

@media (max-width:767px) {
    .recruit-info-flex {
        flex-direction: column;
        padding: 24px 40px;
    }
}

.recruit-info-text {
    width: 70%;
}

@media (max-width:767px) {
    .recruit-info-text {
        width: 100%;
    }

    .recruit-info-text h2 {
        font-size: 20px;
        text-align: center;
    }
}

.recruit-info-img {
    width: 30%;
    position: absolute;
    bottom: 0;
    right: 0;
    padding-right: 40px;
}

@media (max-width:767px) {
    .recruit-info-img {
        position: unset;
        width: 50%;
        margin: auto;
        padding-right: 0;
        margin-bottom: -24px;
    }
}

.recruit-info-txtlist {
    display: flex;
    flex-wrap: wrap;
}

@media (max-width:767px) {

    .recruit-info-txtlist {
        width: 100%;
        flex-wrap: wrap;
    }

}

.recruit-info-txtlist li {
    width: 50%;
    padding-left: 1.7em;
    line-height: 2;
    margin-bottom: 1em;
    background: left 7px no-repeat;
    background-size: 20px auto;
    list-style: none;
    font-size: 16px;
    font-weight: bold;
    position: relative;
    background-image: url(../images/recruit/icon-check.svg);
}

@media (max-width:767px) {

    .recruit-info-txtlist li {
        width: 100%;
    }
}

/* 
----------------------------------------- */

.recruit-message p {
    margin: 0;
}

.recruit-message {
    font-size: 32px;
    font-weight: bold;
    text-align: center;
}

@media (max-width:767px) {
    .recruit-message {
        font-size: min(3.7vw, 20px);
    }
}

.marker {
    background: linear-gradient(transparent 60%, #FFA8A8 60%);
    padding: 0 1em;
    display: inline-block;
    line-height: 1.6;
}

@media (max-width:767px) {
    .marker {
        padding: 0;
    }
}

/* 
----------------------------------------- */
.ttl-box p {
    margin: 0;
}

.ttl-flex {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    margin-bottom: 40px;
}

.ttl-num {
    font-size: 64px;
    color: #FFD54F;
    width: 40%;
    margin: 0;
}

.ttl-box {
    width: 60%;
}

.ttl-box.-intv {
    text-align: center;
    width: 100%;
}

.ttl-box.-req {
    text-align: center;
    width: 100%;
}

.ttl-box.-contact {
    text-align: center;
    width: 100%;
    margin-bottom: 40px;
}

@media (max-width:767px) {
    .ttl-num {
        width: 100%;
        font-size: 32px;
    }

    .ttl-box {
        width: 100%;
    }
}


.ttl-box .ttl {
    font-size: 40px;
    margin: 0;
    line-height: 1.7;
}

.ttl-box .sub-ttl {
    font-size: 18px;
}

.ttl-box .ttl.-intv {
    font-size: 64px;
    color: #fff;
    line-height: 1.4;
    margin-bottom: 40px;
}

.ttl-box .ttl.-req {
    font-size: 64px;
    color: #FFD54F;
    line-height: 1.4;
    margin-bottom: 40px;
}

.ttl-box .ttl.-contact {
    font-size: 64px;
    color: #FFD54F;
    line-height: 1.4;
}

@media (max-width:767px) {
    .ttl-box .ttl {
        font-size: 32px;
    }

    .ttl-box .sub-ttl {
        font-size: 14px;
    }

    .ttl-box .ttl.-intv {
        font-size: 32px;
    }

    .ttl-box .ttl.-req {
        font-size: 32px;
        margin-bottom: 0.5em;
    }

    .ttl-box .ttl.-contact {
        font-size: 32px;
    }
}

/* 
----------------------------------------- */
.recruit-point01 .recruit-point01-ttl {
    font-size: 32px;
    font-weight: bold;
    text-align: center;
    background: #FFD54F;
    padding: .7em 0;
    margin-bottom: 75px;
    position: relative;
}

@media (max-width:767px) {
    .recruit-point01 .recruit-point01-ttl {
        margin-bottom: 20px;
        font-size: 24px;
    }
}

.recruit-point01 .recruit-point01-ttl:after {
    border: solid transparent;
    content: '';
    height: 0;
    width: 0;
    pointer-events: none;
    position: absolute;
    border-color: rgba(106, 90, 205, 0);
    border-top-width: 25px;
    border-bottom-width: 32px;
    border-left-width: 32px;
    border-right-width: 32px;
    margin-left: -32px;
    border-top-color: #FFD54F;
    top: 100%;
    left: 50%;
}


.recruit-point01-ttl .num {
    font-size: 48px;
}



.recruit-point01-list {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
}

.recruit-point01-listitem {
    width: calc((100% - 40px)/ 2);
    margin-top: 40px;
    border: solid 3px #FFD54F;
    border-radius: 10px;
    padding: 40px;
}

@media (max-width:767px) {
    .recruit-point01-listitem {
        padding: 24px;
        width: 100%;
    }
}


.recruit-point01-listitem-ttl {
    display: flex;
    align-items: center;
    margin-bottom: 24px;
}

.recruit-point01-listitem-ttl h3 {
    margin: 0;
    line-height: 1.7;
    font-size: 20px;
}

@media (max-width:767px) {
    .recruit-point01-listitem-ttl h3 {
        font-size: 18px;
    }
}

.recruit-point01-listitem p {
    margin: 0;
}

.icon-point {
    width: 60px;
    margin-right: 1em;
}

/* 
----------------------------------------- */

.recruit-point02-bg {
    background: #fff;
}

.recruit-point02-desc {
    margin-top: 40px;
    line-height: 1.7;
    font-weight: 500;
    text-align: left;
}

@media (max-width:767px) {
    .recruit-point02-desc {
        font-size: 14px;
        text-align: left;
        margin-top: 30px;
    }
}

.recruit-point02 {
    text-align: center;
    font-weight: bold;
}

.recruit-point02 h3 {
    font-size: 20px;
    text-align: center;
}

.recruit-point02 ul {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
}

.recruit-point02 li {
    width: calc((100% - 90px)/ 3);
}

@media (max-width:767px) {
    .recruit-point02 li {
        width: 100%;
        margin: auto;
        margin-bottom: 40px;
    }

    .recruit-point02 li:last-child {
        margin-bottom: 0;
    }
}

.recruit-point02 li img {
    width: 180px;
    margin: auto;
    margin-bottom: 24px;
}

.recruit-point02 li p {
    margin: 0;
}

.recruit-point02-ttl {
    font-size: 20px;
}


.lesson-plan {
    display: flex;
    justify-content: space-between;
    gap: 2px;
}

.lesson-item {
    width: 50%;
    font-size: 14px;
}

.lesson-item dt,
.lesson-item dd {
    margin: 0;
    padding: 5px;
}

.lesson-item dt {
    font-weight: bold;
    color: #fff;
}

.lesson-item dt.group {
    background: #02B0BB;
}

.lesson-item dt.one-to-one {
    background: #FFB74D;
}

.lesson-item dd {
    background: #FAFAFA;
}


/* 
----------------------------------------- */

/* 
----------------------------------------- */

.recruit-point03-desc {
    background: #FFD54F;
    padding: 1em;
    border-radius: 10px;
    display: inline-block;
    font-size: 26px;
    font-weight: bold;
    text-align: center;
    margin-bottom: -56px;
    margin-top: 56px;
    position: relative;
}

@media (max-width:767px) {
    .recruit-point03-desc {
        font-size: 16px;
        width: 100%;
    }
}

.recruit-point03-desc:before {
    position: absolute;
    top: 100%;
    left: calc(50% - 10px);
    height: 0;
    width: 0;
    border: solid transparent;
    content: "";
}

.recruit-point03-desc:before {
    margin-left: -10px;
    border-color: transparent;
    border-top-color: #FFD54F;
    border-right-color: #FFD54F;
    border-width: 10px;
}

.recruit-point03-desc span {
    font-size: 16px;
    font-weight: normal;
}

@media (max-width:767px) {
    .recruit-point03-desc span {
        font-size: 14px;
    }
}

.recruit-point03-box {
    background: #fff;
    padding: 50px;
    padding-left: 70px;
    padding-top: 120px;
    border-radius: 10px;
    margin: 0 20px;
}

@media (max-width:767px) {
    .recruit-point03-box {
        padding: 1em;
        padding-top: 100px;
        margin: 0;
    }
}

.recruit-point03 dl {
    border-bottom: #eee dotted 6px;
    margin-bottom: 1em;
}

.recruit-point03 dt {
    position: relative;
    font-size: 20px;
    font-weight: bold;
    display: flex;
    align-items: center;
    padding-left: 1em;
    margin-bottom: .5em;
}

@media (max-width:767px) {
    .recruit-point03 dt {
        font-size: 18px;
    }
}

.recruit-point03 dt::before {
    content: "";
    background: url(../images/recruit/icon-arrow.svg);
    background-size: cover;
    width: 10px;
    height: 16px;
    position: absolute;
    left: 0;
    display: inline-block;
}

.recruit-point03 dd {
    margin-bottom: 1em;
}


/* .recruit-point03-desc {
    background: #FFD54F;
    padding: 1em;
    border-radius: 10px;
    display: inline-block;
    font-size: 26px;
    font-weight: bold;
    text-align: center;
    margin-bottom: -56px;
    margin-top: 56px;
    position: relative;
}

@media (max-width:767px) {
    .recruit-point03-desc {
        font-size: 16px;
        width: 100%;
    }
}

.recruit-point03-desc:before {
    position: absolute;
    top: 100%;
    left: calc(50% - 10px);
    height: 0;
    width: 0;
    border: solid transparent;
    content: "";
}

.recruit-point03-desc:before {
    margin-left: -10px;
    border-color: transparent;
    border-top-color: #FFD54F;
    border-right-color: #FFD54F;
    border-width: 10px;
}

.recruit-point03-desc span {
    font-size: 16px;
    font-weight: normal;
}

@media (max-width:767px) {
    .recruit-point03-desc span {
        font-size: 14px;
    }
}

.recruit-point03-box {
    background: #fff;
    padding: 50px;
    padding-left: 70px;
    padding-top: 120px;
    border-radius: 10px;
    margin: 0 20px;
}

@media (max-width:767px) {
    .recruit-point03-box {
        padding: 1em;
        padding-left: 40px;
        padding-top: 100px;
        margin: 0;
    }
}

.recruit-point03 dl {
    border-bottom: #eee dotted 6px;
    margin-bottom: 1em;
}

.recruit-point03 dt {
    position: relative;
    font-size: 20px;
    font-weight: bold;
    display: flex;
    align-items: center;
    padding-left: 1em;
    margin-bottom: .5em;
}

@media (max-width:767px) {
    .recruit-point03 dt {
        font-size: 18px;
    }
}

.recruit-point03 dt::before {
    content: "";
    background: url(../images/icon-arrow.svg);
    background-size: cover;
    width: 10px;
    height: 16px;
    position: absolute;
    left: 0;
    display: inline-block;
}

.recruit-point03 dd {
    margin-bottom: 1em;
} */


/* recruit-intv
--------------------------------------- */

.recruit-intv-bg {
    background: #FFD54F;
}

.recruit-intv-area.-mt {
    margin-top: 80px;
}

@media only screen and (max-width: 767px) {
    .recruit-intv-area.-mt {
        margin-top: 40px;
    }
}


.recruit-intv table {
    width: 100%;
    margin-top: 24px;
    font-size: 14px;
}

.recruit-intv tr {
    font-weight: normal;
    margin-bottom: 1em;
}


.recruit-intv th {
    height: 100%;
    font-size: 18px;
    padding: 10px 0;
    padding-left: 1em;

}

.recruit-intv td {
    padding-left: 20px;
}

.recruit-intv .fa-solid {
    font-size: 30px;

}

.recruit-intv .text {
    padding: .5em;
}

.recruit-intv .q-area-text {
    color: #fff;
    background: #333;
    vertical-align: middle;
    position: relative;
}

.recruit-intv .a-area-text {
    background: #fff;
    padding-bottom: 1em;
    line-height: 1.8;
}


.recruit-intv .q-area {
    background: #333;
    color: #fff;
    height: 100%;
}

.recruit-intv .a-area {
    background: #fff;
    color: #FFD54F;
    height: 100%;
}







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

/* 
----------------------------------------- */

.recruit-req-bg {
    background: #fff;
}

.recruit-req-ttl {
    background: #F0F0F0;
    font-size: 16px;
    font-weight: bold;
    text-align: center;
    padding: 1em;
    margin: 0;
}

.recruit-req dl {
    border-bottom: 1px #F0F0F0 solid;
    display: flex;
}

.recruit-req dt {
    width: 20%;
    background: #FAFAFA;
    padding: 1em;
}

.recruit-req dd {
    width: 80%;
    background: #fff;
    padding: 1em;
    border-right: 1px #F0F0F0 solid;
}

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

    .recruit-req dt {
        width: 35%;
    }

    .recruit-req dd {
        width: 65%;

    }
}


/* 
----------------------------------------- */

.recruit-contact-bg {
    background: #fafafa;
}


/* 
----------------------------------------- */

.btn-recruit-wrap {
    text-align: center;
    margin-bottom: 60px;
}

.btn-recruit {
    display: inline-block;
    font-size: 24px;
    font-weight: bold;
    width: 100%;
    max-width: 600px;
    background: #FFD54F;
    color: #000;
    padding: .7em;
    transition: all .7s;
    margin: auto 0;
    border-radius: 35px;
    text-align: center;
    text-decoration: none;
}