.referral-sec{position:relative;margin-top:30px;padding-block:25px 140px;background:url(../../img/info/bg_text_referral.png) no-repeat top center/100% auto}.referral-flow-box{margin-top:60px;padding-block:70px;padding-inline:clamp(30px,7.5vw,75px);background-color:#fff;border:5px solid #96012d;border-radius:8px}.referral-flow-box .m-title2{margin-bottom:35px}.referral-flow-box .m-title2__en{margin-bottom:15px}.referral-flow-box .m-title2__ja{font-size:25px;font-size:1.5625rem}.referral-system-box{display:-webkit-box;display:-ms-flexbox;display:flex;gap:15px 20px;margin-top:60px;padding-block:45px;padding-inline:40px 20px;background-color:#e2e0e0;border-radius:8px}.referral-system-box .m-box-header{-ms-flex-negative:0;flex-shrink:0;margin-top:0}.referral-system-box .m-box-header-title{margin-bottom:0;color:#16202c}.referral-join-banner{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-align:start;-ms-flex-align:start;align-items:flex-start;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;width:100%;min-height:436px;margin-top:60px;padding-block:70px;padding-inline:110px;background:url(../../img/info/referral_join_bg.jpg) no-repeat center center/cover;border-radius:8px;overflow:hidden;text-align:left}.referral-join-banner .referral-join-title{margin-bottom:18px;font-size:52px;font-size:3.25rem;line-height:1;letter-spacing:-.01em;color:#96012d;font-family:Montserrat,sans-serif;font-weight:700}.referral-join-banner .referral-join-text{font-size:25px;font-size:1.5625rem;line-height:1.48;font-weight:900;color:#fff}.referral-join-banner .m-btn1--wrap{margin-top:25px}.job-description-sec{padding-bottom:120px;background:url(../../img/info/bg_text_job.png) no-repeat top center/100% auto}.job-description-sec .job-entry-box{margin-top:50px}.job-description-sec .job-entry-box .m-btn-entry--max{-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;width:100%;height:102px;font-size:26px;font-size:1.625rem;letter-spacing:-.01em;text-align:center}.faq-sec{margin-top:50px;padding-bottom:120px}.faq-sec .faq-sec-title{margin-bottom:30px;font-size:50px;font-size:3.125rem;line-height:1.4;letter-spacing:.02em;font-weight:700;font-family:Montserrat,sans-serif}.m-faq-title{position:relative;display:block;padding-left:34px;margin-bottom:25px;color:#16202c;font-size:26px;font-size:1.625rem;letter-spacing:0;font-weight:900}.m-faq-title~.m-faq-title{margin-top:75px}.m-faq-title::before{content:"";position:absolute;left:0;top:14px;display:block;aspect-ratio:1;width:22px;background:url(../../img/ico_title.svg) no-repeat center center/100%}.m-faq .m-faq-box{position:relative;overflow:hidden;padding-right:123px;border-radius:8px;background-color:#fff}.m-faq .m-faq-box~.m-faq-box{margin-top:10px}.m-faq .m-faq-box .ico-plus{position:absolute;right:0;inset-block:0;display:block;width:123px;margin-block:13px;border-left:1px solid #dbdbdb;cursor:pointer}.m-faq .m-faq-box .ico-plus::before{content:"";position:absolute;left:50%;top:50%;display:block;aspect-ratio:1;width:21px;margin-top:-11px;margin-left:-11px;background:url(../../img/ico_plus.png) no-repeat center center/100% auto;-webkit-transition:.2s;transition:.2s}.m-faq .m-faq-box.is-active .ico-plus::before{-webkit-transform:rotate(45deg);transform:rotate(45deg)}.m-faq .m-faq-box.is-active .m-faq-q .title{padding-bottom:12px}.m-faq .m-faq-q{position:relative}.m-faq .m-faq-q .title{position:relative;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:end;-ms-flex-align:end;align-items:flex-end;width:100%;padding-block:45px;padding-inline:105px 45px;font-size:19px;font-size:1.1875rem;font-weight:900;-webkit-transition:padding .3s;transition:padding .3s}.m-faq .m-faq-q .title::before{content:"Q";position:absolute;top:45px;margin-block:auto;left:48px;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;width:36px;height:36px;color:#fff;font-size:17px;font-size:1.0625rem;border-radius:50%;line-height:1;text-align:center;font-family:Montserrat,sans-serif;font-weight:700;background-color:#16202c}.m-faq .m-faq-q button.title:focus{outline:0}.m-faq .m-faq-q button.title:focus-visible{outline:-webkit-focus-ring-color auto 1px}.m-faq .m-faq-a{position:relative;padding-inline:105px 45px;padding-block:5px 45px;font-size:15px;font-size:.9375rem;line-height:1.65;letter-spacing:.02em}.m-faq .m-faq-a::before{content:"A";position:absolute;left:48px;top:.5%;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;width:36px;height:36px;color:#fff;font-size:17px;font-size:1.0625rem;border-radius:50%;line-height:1;text-align:center;font-family:Montserrat,sans-serif;font-weight:700;background-color:#96012d}@media screen and (max-width:640px){.referral-sec{margin-bottom:80px}.referral-flow-box{margin-top:35px;padding-inline:25px;padding-block:45px;border-width:3px}.referral-flow-box .m-title2__ja{font-size:20px;font-size:1.25rem}.referral-flow-box .flow-img.is-scrollable{padding-inline:30px;margin-inline:-30px}.referral-system-box{-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;margin-top:40px;padding-inline:25px}.referral-join-banner{min-height:auto;margin-top:40px;padding-inline:30px}.referral-join-banner .referral-join-title{font-size:42px;font-size:2.625rem}.referral-join-banner .referral-join-text{font-size:20px;font-size:1.25rem}.job-description-sec{padding-block:15px 80px}.job-description-sec .job-entry-box{margin-top:30px}.job-description-sec .job-entry-box .m-btn-entry--max{height:70px;font-size:18px;font-size:1.125rem}.faq-sec{margin-top:0;padding-bottom:80px}.faq-sec .faq-sec-title{margin-bottom:15px;font-size:38px;font-size:2.375rem}.m-faq-title{padding-left:28px;margin-bottom:15px;font-size:20px;font-size:1.25rem}.m-faq-title~.m-faq-title{margin-top:50px}.m-faq-title::before{top:11px;width:18px}.m-faq .m-faq-box{padding-right:50px}.m-faq .m-faq-box .ico-plus{width:50px}.m-faq .m-faq-box .ico-plus::before{width:16px;margin-top:-8px;margin-left:-8px}.m-faq .m-faq-q .title{padding-block:30px;padding-inline:55px 15px;font-size:16px;font-size:1rem}.m-faq .m-faq-q .title::before{top:30px;left:15px;width:30px;height:30px;font-size:13px;font-size:.8125rem}.m-faq .m-faq-a{padding-inline:55px 15px;padding-bottom:35px;font-size:13px;font-size:.8125rem}.m-faq .m-faq-a::before{left:15px;width:30px;height:30px;font-size:13px;font-size:.8125rem}}