  @charset "utf-8";

/* ────────────────────── *
 *                                              *
 * ページ共通                                   *
 *                                              *
 * ────────────────────── */

/* 見出し */
#title {
    color: #fff;
    width: 100%;
    height: 55.0rem;
    padding-bottom: 2.0rem;
    box-sizing: border-box;
}
.recruit-index #title {
    background: url("/saiyou/image/recruit/index/mainvisual.jpg") no-repeat center center / cover;
}
.recruit-qa #title {
    background: url("/saiyou/image/recruit/qa/mainvisual.jpg") no-repeat center center / cover;
}
.recruit-seminar #title {
    background: url("/saiyou/image/recruit/seminar/mainvisual.jpg") no-repeat center center / cover;
}
.recruit-message #title {
    background: url("/saiyou/image/recruit/message/mainvisual.jpg") no-repeat center center / cover;
    height: 67.5rem;
}
#title .inner {
    text-align: center;
    width: 100%;
    height: 100%;
    box-sizing: border-box;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}
#title .inner h1 {
    font-size: 4.5rem;
    font-weight: 300;
    letter-spacing: 0.1em;
    margin-bottom: 2.0rem;
}
#title .inner p.en {
    font-family: "Manrope", sans-serif;
    font-size: 1.5rem;
    font-weight: 600;
    letter-spacing: 0.15em;
}

/* コンテンツ枠 */
.contents {
    width: 100%;
}
.contents .inner {
    width: 108.0rem;
    margin: 0 auto;
}

/* ────────────────────── *
 *                                              *
 * 次のコンテンツ                               *
 *                                              *
 * ────────────────────── */

.contents #next-contents {
    background: rgb(91,52,66);
    background: -moz-linear-gradient(-225deg, rgba(91,52,66,1) 0%, rgba(43,66,101,1) 100%);
    background: -webkit-linear-gradient(-225deg, rgba(91,52,66,1) 0%, rgba(43,66,101,1) 100%);
    background: linear-gradient(-225deg, rgba(91,52,66,1) 0%, rgba(43,66,101,1) 100%);
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#5b3442",endColorstr="#2b4265",GradientType=1);
    padding: 11.0rem 0;
}
.contents #next-contents .inner {
    width: 95.96412556053812%;
    max-width: 107.0rem;
    margin: 0 auto;
}
.contents #next-contents.three .inner {
    width: 96.8609865470852%;
    max-width: 108.0rem;
}
.contents #next-contents .inner h2 {
    font-family: "Manrope", sans-serif;
    font-size: 5.6rem;
    font-weight: 200;
    color: rgba(255, 255, 255, 0.1);
    letter-spacing: 0.05em;
    text-align: center;
    margin: 0 auto 5.0rem;
}
.contents #next-contents .inner #next-list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
}
.contents #next-contents .inner #next-list .list {
    background: #fff;
    width: 48.5981308411215%;
}
.contents #next-contents.three .inner #next-list .list {
    width: 31.77570093457944%;
}
.contents #next-contents .inner #next-list .list a {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
}
.contents #next-contents .inner #next-list .list p.image {
    width: 50%;
    overflow: hidden;
}
.contents #next-contents.three .inner #next-list .list p.image {
    width: 44.11764705882353%;
}
.contents #next-contents .inner #next-list .list p.image img {
    transform: scale(1);
    opacity: 1;
    transition: opacity .5s, transform .5s;
}
.contents #next-contents .inner #next-list .list a:hover p.image img {
    transform: scale(1.1);
    opacity: 0.8;
}
.contents #next-contents .inner #next-list .list p.cname {
    font-size: 2.0rem;
    line-height: 1.272727272727273;
    width: 50%;
    padding-right: 2.0rem;
    box-sizing: border-box;
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    transition: opacity .5s;
}
.contents #next-contents.three .inner #next-list .list p.cname {
    width: 55.88235294117647%;
}
.contents #next-contents .inner #next-list .list p.cname span.small {
    font-size: 1.6rem;
}
.contents #next-contents .inner #next-list .list a:hover p.cname {
    opacity: 0.8;
}
.contents #next-contents .inner #next-list .list p.cname::after {
    content: "";
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 5px 0 5px 10px;
    border-color: transparent transparent transparent #006de1;
    position: absolute;
    right: 2.0rem;
    top: 50%;
    transform: translateY(-50%);
}

/* ────────────────────── *
 *                                              *
 * 募集要項                                     *
 *                                              *
 * ────────────────────── */

.recruit-index .contents {
    background: #ebedf0;
    padding-top: 10.0rem;
}
.recruit-index .contents .inner {
    margin-bottom: 19.0rem;
}
.recruit-index .contents .inner dl.outline {
    font-size: 1.6rem;
    line-height: 1.875;
    width: 84.0rem;
    margin: 0 auto 11.0rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
}
.recruit-index .contents .inner dl.outline dt {
    font-weight: 700;
    text-align: center;
    width: 11.0rem;
    padding: 2.0rem 1.0rem;
    box-sizing: border-box;
    border-bottom: 2px solid #006ee1;
}
.recruit-index .contents .inner dl.outline dd {
    width: calc(100% - 11.0rem - 2.0rem);
    padding: 2.0rem 1.0rem;
    box-sizing: border-box;
    border-bottom: 1px solid #afafb5;
}
.recruit-index .contents .inner dl.outline dd ul li {
    list-style: disc;
    margin-left: 2.0rem;
}
.recruit-index .contents .inner dl.outline dd table.course {
    line-height: 1.5625;
    width: 100%;
    border-spacing: 0;
    border-collapse: collapse;
}
.recruit-index .contents .inner dl.outline dd table.course + table {
    border-top: 2px solid #ebedf0;
}
.recruit-index .contents .inner dl.outline dd table.course th {
    font-weight: 500;
    background: #f5f5f6;
    text-align: left;
    width: 16.5rem;
    padding: 1.0rem 1.5rem;
    box-sizing: border-box;
}
.recruit-index .contents .inner dl.outline dd table.course th.course-office {
    font-size: 1.6rem;
    font-weight: 700;
    background: #fabec1;
}
.recruit-index .contents .inner dl.outline dd table.course th.course-office span {
    font-size: 1.3rem;
    display: block;
}
.recruit-index .contents .inner dl.outline dd table.course th.course-tech {
    font-size: 1.6rem;
    font-weight: 700;
    background: #b2d3f6;
}
.recruit-index .contents .inner dl.outline dd table.course th.course-tech span {
    font-size: 1.3rem;
    display: block;
}
.recruit-index .contents .inner dl.outline dd table.course td {
    font-feature-settings: "palt";
    background: #fff;
    padding: 1.0rem 1.5rem;
    position: relative;
}
.recruit-index .contents .inner dl.outline dd table.course td.course-office {
    font-weight: 700;
    background: #fcd4d6;
}
.recruit-index .contents .inner dl.outline dd table.course td.course-tech {
    font-weight: 700;
    background: #cce2f9;
}

.recruit-index .contents .inner dl.outline dd table.course.hide {
    display: none;
    border-top: none;
    opacity: 0;
    transition: opacity 0.5s ease-in-out;
}
.recruit-index .contents .inner dl.outline dd table.course.hide th {
    border-top: 1px solid #d7d7da;
}
.recruit-index .contents .inner dl.outline dd table.course.hide td {
    border-top: 1px solid #d7d7da;
}
.recruit-index .contents .inner dl.outline dd .more {
    font-size: 1.4rem;
    text-decoration: underline;
    text-underline-offset: 0.3rem;
    text-align: right;
    position: absolute;
    top: 50%;
    right: 1.5rem;
    transform: translateY(-50%);
    white-space: nowrap;
    cursor: pointer;
}
.recruit-index .contents .inner dl.outline dd .more span {
    position: relative;
}
.recruit-index .contents .inner dl.outline dd .more span::before {
    content: "";
    width: 0.8rem;
    height: 0.6rem;
    clip-path: polygon(100% 0, 0 0, 50% 100%);
    position: absolute;
    top: 50%;
    left: -1.5rem;
    transform: translateY(-50%);
}
.recruit-index .contents .inner dl.outline dd .more.is-open span::before {
    clip-path: polygon(50% 0%, 0% 100%, 100% 100%);
}
.recruit-index .contents .inner dl.outline dd .more.cource-office {
    color: #f02832;
}
.recruit-index .contents .inner dl.outline dd .more.cource-office span::before {
    background: #f02832;
}
.recruit-index .contents .inner dl.outline dd .more.cource-tech {
    color: #006ee1;
}
.recruit-index .contents .inner dl.outline dd .more.cource-tech span::before {
    background: #006ee1;
}

.recruit-index .contents .inner dl.outline dd table.fee th {
    font-weight: 400;
    text-align: right;
    vertical-align: top;
}

.contents .inner .entry {
    text-align: center;
    width: 84.0rem;
    margin: 0 auto;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
}
.contents .inner .entry.disabled {
    opacity: 0.1;
    pointer-events: none;
}
.contents .inner .entry dl {
    width: 39.5rem;
}
.contents .inner .entry dl dt {
    font-size: 1.8rem;
    font-weight: 700;
    margin-bottom: 1.5rem;
}
.contents .inner .entry dl dd {
    font-family: "Manrope", sans-serif;
    font-size: 3.0rem;
    font-weight: 600;
    color: #fff;
    letter-spacing: 0.1em;
}
.contents .inner .entry dl dd a {
    display: block;
    padding: 2.5rem;
    transition: background .5s;
}
.contents .inner .entry dl.entry-01 dt {
    color: #f02832;
}
.contents .inner .entry dl.entry-01 dd a {
    background: #f02832;
}
.contents .inner .entry dl.entry-01 dd a:hover {
    background: #006ee1;
}
.contents .inner .entry dl.entry-02 dt {
    color: #363746;
}
.contents .inner .entry dl.entry-02 dd a {
    background: #363746;
}
.contents .inner .entry dl.entry-02 dd a:hover {
    background: #006ee1;
}

/* ────────────────────── *
 *                                              *
 * Q&A                                          *
 *                                              *
 * ────────────────────── */

.recruit-qa .contents {
    padding-top: 11.0rem;
}
.recruit-qa .contents .odd {
    background: #ebedf0;
    padding: 10.0rem 0;
}
.recruit-qa .contents .even {
    background: #fff;
    padding: 10.0rem 0;
}
.recruit-qa .contents .inner {
    width: 84.0rem;
}
.recruit-qa .contents .inner ul.pagination {
    font-size: 1.5rem;
    font-weight: 500;
    text-align: center;
    margin: 0 auto 9.5rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}
.recruit-qa .contents .inner ul.pagination li {
    width: 27.0rem;
    margin-left: 1.5rem;
    margin-bottom: 1.5rem;
}
.recruit-qa .contents .inner ul.pagination li:nth-child(3n+1) {
    margin-left: 0;
}
.recruit-qa .contents .inner ul.pagination li a {
    color: #fff;
    background: #006ee1;
    display: block;
    padding: 2.0rem;
    transition: opacity .5s;
}
.recruit-qa .contents .inner ul.pagination li a:hover {
    opacity: 0.6;
}
.recruit-qa .contents .inner h2 {
    font-size: 3.2rem;
    font-weight: 500;
    text-align: center;
    margin-bottom: 1.5rem;
}
.recruit-qa .contents .inner p.en {
    font-family: "Manrope", sans-serif;
    font-size: 1.4rem;
    font-weight: 600;
    color: #006ee1;
    letter-spacing: 0.05em;
    text-align: center;
    margin-bottom: 9.0rem;
}
.recruit-qa .contents .inner dl.faq dt {
    font-size: 2.2rem;
    font-weight: 500;
    padding-top: 0.5rem;
    padding-left: 5.5rem;
    padding-bottom: 3.0rem;
    margin-bottom: 3.0rem;
    position: relative;
    border-bottom: 1px solid;
    border-image: linear-gradient(90deg, rgba(0, 110, 225, 1) 0.04%, rgba(240, 40, 50, 1) 100%);
    border-image-slice: 1;
}
.recruit-qa .contents .inner dl.faq dt::before {
    content: "Q";
    font-family: "Manrope", sans-serif;
    font-size: 3.5rem;
    line-height: 1;
    color: #006ee1;
    position: absolute;
    left: 0;
    top: 0;
}
.recruit-qa .contents .inner dl.faq dd {
    font-size: 1.5rem;
    line-height: 2;
    text-align: justify;
    padding-left: 5.5rem;
    margin-bottom: 8.0rem;
    position: relative;
}
.recruit-qa .contents .inner dl.faq dd::before {
    content: "A";
    font-family: "Manrope", sans-serif;
    font-size: 3.5rem;
    line-height: 1;
    color: #f02832;
    position: absolute;
    left: 0;
    top: 0;
}
.recruit-qa .contents .inner dl.faq dd a {
    color: #006ee1;
    text-decoration: underline;
    transition: opacity .5s;
}
.recruit-qa .contents .inner dl.faq dd a:hover {
    opacity: 0.6;
}

/* ────────────────────── *
 *                                              *
 * セミナー情報                                 *
 *                                              *
 * ────────────────────── */

.recruit-seminar .contents {
    padding-top: 11.0rem;
}
.recruit-seminar .contents .odd {
    background: #ebedf0;
    padding: 10.0rem 0 16.0rem;
}
.recruit-seminar .contents .even {
    background: #fff;
    padding: 10.0rem 0 16.0rem;
}
.recruit-seminar .contents .end {
    color: #fff;
    background: #006ee1;
    padding: 13.0rem 0;
}
.recruit-seminar .contents .inner {
    width: 108.0rem;
}
.recruit-seminar .contents .odd .inner,
.recruit-seminar .contents .even .inner {
    width: 84.0rem;
}
.recruit-seminar .contents .inner p.txt {
    font-size: 1.6rem;
    line-height: 2.08;
    text-align: center;
    margin: 0 auto 8.0rem;
}
.recruit-seminar .contents .end .inner p.txt {
    font-size: 3.0rem;
    line-height: 2;
    font-weight: 700;
    margin: 0 auto;
}
.recruit-seminar .contents .inner ul.pagination {
    font-size: 1.5rem;
    font-weight: 500;
    text-align: center;
    margin: 0 auto 9.5rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    justify-content: center;
}
.recruit-seminar .contents .inner ul.pagination li {
    width: 35.0rem;
    margin-left: 1.5rem;
    position: relative;
    overflow: hidden;
}
.recruit-seminar .contents .inner ul.pagination li:first-child {
    margin-left: 0;
}
.recruit-seminar .contents .inner ul.pagination li::before {
    font-family: "Manrope", sans-serif;
    font-size: 7.4rem;
    color: rgba(255, 255, 255, 0.6);
    letter-spacing: -0.05em;
    position: absolute;
    left: -2.0rem;
    top: 50%;
    z-index: 2;
    transform: translateY(-50%);
}
.recruit-seminar .contents .inner ul.pagination li:nth-child(1)::before {
    content: "01";
}
.recruit-seminar .contents .inner ul.pagination li:nth-child(2)::before {
    content: "02";
}
.recruit-seminar .contents .inner ul.pagination li:nth-child(3)::before {
    content: "03";
}
.recruit-seminar .contents .inner ul.pagination li a {
    color: #fff;
    background: #006ee1;
    height: 9.5rem;
    padding-left: 4.0rem;
    box-sizing: border-box;
    transition: opacity .5s;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}
.recruit-seminar .contents .inner ul.pagination li a:hover {
    opacity: 0.6;
}
.recruit-seminar .contents .inner ul.pagination li span.subject {
    font-size: 1.4rem;
    font-weight: 500;
}
.recruit-seminar .contents .inner ul.pagination li em {
    font-size: 2.2rem;
    font-weight: 700;
    font-style: normal;
}
.recruit-seminar .contents .inner h2 {
    font-size: 3.8rem;
    color: #006ee1;
    letter-spacing: 0.1em;
    text-align: center;
    margin-bottom: 8.0rem;
}
.recruit-seminar .contents .inner p.num {
    font-family: "Manrope", sans-serif;
    font-size: 3.5rem;
    font-weight: 500;
    color: #006ee1;
    letter-spacing: 0.05em;
    text-align: center;
    margin-bottom: 3.0rem;
}
.recruit-seminar .contents .inner dl.detail dt {
    font-size: 2.6rem;
    font-weight: 500;
    padding-top: 0.5rem;
    padding-bottom: 3.0rem;
    margin-bottom: 3.0rem;
    border-bottom: 1px solid;
    border-image: linear-gradient(90deg, rgba(240, 40, 50, 1) 0%, rgba(0, 110, 225, 1) 99.96%);
    border-image-slice: 1;
}
.recruit-seminar .contents .inner dl.detail dd {
    font-size: 1.5rem;
    line-height: 2;
    text-align: justify;
    margin-bottom: 8.0rem;
}
.recruit-seminar .contents .inner dl.detail dd p.image {
    width: 78.0rem;
    margin: 7.0rem auto;
}
.recruit-seminar .contents .inner dl.detail dd .block {
    background: #fff;
    text-align: center;
    padding: 5.0rem;
    margin: 7.0rem 0;
    border: 1px solid #363746;
}
.recruit-seminar .contents .inner dl.detail dd .block h3 {
    font-size: 1.7rem;
    line-height: 1;
    font-weight: 700;
    color: #363746;
    letter-spacing: 0.08em;
    display: inline-block;
    padding: 0 1.0rem 1.0rem;
    margin-bottom: 2.0rem;
    border-bottom: 2px solid #006ee1;
}
.recruit-seminar .contents .inner dl.detail dd .block p {
    font-size: 1.6rem;
    line-height: 1.875;
}
.recruit-seminar .contents .inner dl.detail dd .block p a {
    color: #006ee1;
    text-decoration: underline;
    transition: opacity .5s;
}
.recruit-seminar .contents .inner dl.detail dd .block p a:hover {
    opacity: 0.6;
}
.recruit-seminar .contents .inner dl.detail dd .block p em {
    font-size: 2.6rem;
    line-height: 1.73;
    font-weight: 500;
    font-style: normal;
    color: #006ee1;
}

/* ────────────────────── *
 *                                              *
 * 人事部メッセージ                             *
 *                                              *
 * ────────────────────── */

.recruit-message .contents {
    background: #eceef1;
}
.recruit-message .contents .inner .message {
    background: #fff;
    padding: 12.0rem;
    margin-bottom: 9.0rem;
    position: relative;
    top: -5.5rem
}
.recruit-message .contents .inner .message p.en {
    font-family: "Manrope", sans-serif;
    font-size: 1.5rem;
    font-weight: 700;
    color: #868790;
    letter-spacing: 0.05em;
    margin-bottom: 3.0rem;
}
.recruit-message .contents .inner .message h1 {
    font-size: 4.4rem;
    font-weight: 300;
    padding-bottom: 5.0rem;
    margin-bottom: 5.0rem;
    position: relative;
}
.recruit-message .contents .inner .message h1::after {
    content: "";
    background : -moz-linear-gradient(0% 50% 0deg,rgba(240, 40, 50, 1) 0%,rgba(0, 110, 225, 1) 99.96%);
    background : -webkit-linear-gradient(0deg, rgba(240, 40, 50, 1) 0%, rgba(0, 110, 225, 1) 99.96%);
    background : -webkit-gradient(linear,0% 50% ,100% 50% ,color-stop(0,rgba(240, 40, 50, 1) ),color-stop(0.9996,rgba(0, 110, 225, 1) ));
    background : -o-linear-gradient(0deg, rgba(240, 40, 50, 1) 0%, rgba(0, 110, 225, 1) 99.96%);
    background : -ms-linear-gradient(0deg, rgba(240, 40, 50, 1) 0%, rgba(0, 110, 225, 1) 99.96%);
    -ms-filter: "progid:DXImageTransform.Microsoft.gradient(startColorstr='#F02832', endColorstr='#006EE1' ,GradientType=0)";
    background : linear-gradient(90deg, rgba(240, 40, 50, 1) 0%, rgba(0, 110, 225, 1) 99.96%);
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#F02832',endColorstr='#006EE1' , GradientType=1);
    width: 100%;
    height: 1px;
    position: absolute;
    left: 0;
    bottom: 0;
}
.recruit-message .contents .inner .message p {
    font-size: 1.6rem;
    line-height: 1.875;
    font-feature-settings: "palt" 1;
    text-align: justify;
    margin-bottom: 3.0rem;
}
.recruit-message .contents .inner .message p:last-of-type {
    margin-bottom: 0;
}
