.foreignerContent {
    font-family: 'Kozuka Gothic Pr6N B';
    font-weight: 700;
}

.foreignerInner {
    width: 95%;
    margin: 0 auto;
    max-width: 780px;
}

.foreignerMainTitle {
    padding: 38px 0;
}

.sp {
    display: none;
}

.pc {
    display: block;
}

/** nursing */

.nursingArea {
    position: relative;
    margin: 0 auto 60px;
    padding: 33px 0 100px;
    background-color: #f8f3f9;
    max-width: 1119px;
    width: 96%;
}

.foreignerSubTitle {
    position: relative;
    padding-bottom: 23px;
    color: #bc83bd;
    font-family: 'Kozuka Gothic Pr6N H';
    font-size: 29px;
    text-align: center;
}

.foreignerSubTitle::after {
    position: absolute;
    bottom: 0;
    left: 50%;
    width: 108px;
    border-bottom: 2px solid #bc83bd;
    content: '';
    transform: translateX(-50%);
}

#nursingImg01 {
    position: absolute;
    top: 15px;
    right: 9.5vw;
    max-width: 66px;
    z-index: 1;
}

.nursingList {
    display: flex;
    justify-content: center;
    align-items: center;
    margin: 35px auto 0;
    padding: 94px 0;
    background-color: #fff;
}

.nursingListRow {
    display: flex;
    position: relative;
    align-items: center;
    margin-bottom: 60px;
    padding-left: 42px;
}

.nursingListRow:last-child {
    margin-bottom: 0;
}

.nursingListRow::before {
    position: absolute;
    top: 50%;
    left: 0;
    transform: translateY(-50%);
    width: 30px;
    height: 30px;
    background: url('../img/icon_tick.png') no-repeat center/cover;
    content: '';
}

.nursingTextGp {
    height: 100%;
    line-height: 1.4;
}

.nursingListText {
    color: #595757;
    font-family: 'Kozuka Gothic Pr6N M';
    font-size: 18px;
    font-weight: 500;
}

/**Training */

.trainingArea {
    margin: 125px 0 150px;
    font-family: 'Kozuka Gothic Pr6N M';
}

.step1,
.step2,
.step3 {
    display: flex;
    justify-content: space-between;
    height: 189px;
    max-width: 780px;
}

.lftSide {
    display: flex;
    justify-content: space-between;
    align-items: center;
    width: 238px;
}

.rgtSide {
    display: flex;
    justify-content: space-between;
    align-items: center;
    width: 533px;
}

.rgtSide .whiteBox {
    width: 68px;
    height: 189px;
    display: flex;
    justify-content: flex-end;
}

.whiteBox p {
    width: 32px;
    height: 189px;
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 22px;
    font-family: 'Kozuka Gothic Pr6N M';
    line-height: 1.2;
    color: #595757;
    padding: 3px;
    border: 2px solid #595757;
}

.box {
    padding: 10px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
}

.smallBox {
    width: 85px;
    height: 189px;
    font-size: 22px;
    color: #fff;
    font-family: 'Kozuka Gothic Pr6N B';
    line-height: 1.2;
}

.largeBox {
    width: 456px;
    height: 189px;
}

.step1 {
    margin-top: 35px;
}

.step1 .smallBox {
    display: flex;
    flex-direction: column;
    gap: 19px;
}

.step1 .smallBox .box {
    width: 85px;
    height: 85px;
    font-size: 22px;
}

.step1 .smallBox .box.box1 {
    background-color: #8DBBD9;
    color: #fff;
}

.step1 .smallBox .box.box2 {
    background-color: #EECB88;
    color: #595757;
    line-height: 1.2;
}

.step1 .trainingImg {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.step1 .trainingImg img {
    width: 44px;
    height: 158px;
    margin-right: 10px;
}

.step1 .noExp {
    position: relative;
    width: 21px;
    height: 74px;
    font-size: 16px;
    line-height: 1;
    color: #fff;
    background-color: #30A0D2;
    border-radius: 5px;
    padding: 2px;
    margin-right: 25px;
}

.step1 .noExp::after {
    content: '';
    position: absolute;
    top: 50%;
    left: 28px;
    transform: translateY(-50%);
    background: url('../img/icon_blue_arrow.png') no-repeat center/contain;
    width: 25px;
    height: 50px;
}

.step1 .boxUp {
    width: 400px;
    height: 85px;
    font-size: 22px;
    letter-spacing: 0.7px;
    color: white;
    background-color: #8DBBD9;
}

.step1 .boxDown {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 8px;
    padding-top: 19px;
    font-size: 22px;
}

.step1 .boxDown .trainingBox {
    width: 140px;
    height: 85px;
    color: #595757;
    background-color: #EECB88;
    text-align: center;
    font-family: 'Kozuka Gothic Pr6N M';
    line-height: 1.2;
}

.step1 .boxDown .homeBox {
    width: 30px;
    height: 85px;
    color: #fff;
    background-color: #30A0D2;
}

.step1 .boxDown .homeBox span {
    padding-top: 4px;
    border-top: 2px solid #fff;
    font-size: 17px;
}

.rgtSide .whiteBox p {
    position: relative;
}

.rgtSide .whiteBox p::before {
    content: '';
    position: absolute;
    top: 50%;
    right: 40px;
    transform: translateY(-50%);
    background: url('../img/icon_white_arrow_sp.png') no-repeat center/contain;
    width: 25px;
    height: 50px;
}

.flow {
    margin: 20px 0;
}

.flow .textBox {
    display: flex;
    justify-content: center;
    align-items: center;
    position: relative;
    padding-right: 12%;
}

.textBox::after,
.textBox::before {
    content: '';
    background-color: #bc83bd;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
}

.textBox::after {
    width: 10%;
    height: 3px;
    right: 0;
}

.textBox::before {
    width: 44%;
    height: 3px;
    left: 0;
}

.textBox .purpleArr {
    width: 50px;
    height: 25px;
    margin-right: 20px;
}

.textBox p {
    position: relative;
    font-size: 17px;
    font-family: 'Kozuka Gothic Pr6N M';
    color: #595757;
    background: #fff;
    padding: 8px;
    border-radius: 10px;
    border: 2px solid #595757;
    width: 260px;
    height: 54px;
    line-height: 1.2;
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
}

.textBox p::after {
    content: "";
    display: block;
    position: absolute;
    width: 11px;
    height: 11px;
    top: 50%;
    transform: translate(50%, -50%) rotate(135deg);
    left: -15px;
    border: inherit;
    border-width: 0 2px 2px 0;
    background: #fff;
}

.step2 .smallBox,
.step2 .largeBox {
    background-color: #B37FB4;
}

.largeBox p {
    font-size: 32px;
    font-family: 'Kozuka Gothic Pr6N B';
    color: #fff;
    text-align: center;
    line-height: 1.4;
}

.step2 .largeBox p span {
    font-size: 15px;
    font-family: 'Kozuka Gothic Pr6N M';
    line-height: 1.4;
    color: #fff;
    text-align: left;
    margin-top: 15px;
    padding-left: 8px;
    border-left: 2px solid #fff;
    display: block;
}

.step2 .trainingImg {
    width: 105px;
    margin: 0 5px;
}

.step3 .smallBox,
.step3 .largeBox {
    background-color: #8BB980;
}

.step3 .trainingImg {
    width: 95px;
    margin: 0 10px 0 5px;
}

.step3 .rgtSide .whiteBox p {
    background-color: #595757;
    color: #fff;
    font-weight: 400;
}

/** Proud Partners */

.partnerBnr {
    position: relative;
}

.partnerBnr .proudPartner {
    position: absolute;
    right: 10%;
    top: 50%;
    transform: translateY(-50%);
    font-size: 30px;
    font-family: 'Kozuka Gothic Pr6N M';
    font-weight: 500;
    color: #fff;
}

.partnerStart {
    font-size: 19px;
    font-family: 'Kozuka Gothic Pr6N M';
    color: #595757;
    letter-spacing: 1.5px;
    text-align: center;
    margin-top: 10px;
}

#partner .foreignerSubTitle {
    margin: 62px 0;
    color: #2F6689;
}

#partner .foreignerSubTitle::after {
    border-bottom: 3px solid #2F6689;
}

.partnerTitle {
    font-size: 27px;
    font-weight: 900;
    font-family: 'Kozuka Gothic Pr6N B';
    color: #2F6689;
    text-align: center;
}

.partnerCom {
    width: 430px;
    height: 82px;
    border: 3px solid #2F6689;
    position: relative;
    display: flex;
    justify-content: space-around;
    align-items: center;
    color: #2F6689;
    margin: 20px auto;
}

.partnerCom .line {
    height: 65px;
    width: 2px;
    display: block;
    background-color: #2F6689;
}

.partnerCom .contractCom {
    font-size: 20px;
    font-family: 'Kozuka Gothic Pr6N B';
    width: 49.5%;
    text-align: center;
    line-height: 1.2;
}

.partnerCom .numberCom {
    font-size: 65px;
    width: 49.5%;
    text-align: center;
}

.partnerCom .numberCom span {
    font-size: 38px;
}

.partnerQuote {
    font-size: 20px;
    font-family: 'Kozuka Gothic Pr6N B';
    color: #2F6689;
    line-height: 1.5;
    text-align: center;
}

.partnerQuote span {
    display: inline-block;
    border-bottom: 4px solid #2F6689;
}

.partnerCircle {
    position: relative;
    font-size: 17px;
    font-family: 'Kozuka Gothic Pr6N M';
    line-height: 1.2;
    color: #595757;
    margin-top: 35px;
}

.partnerCircle span {
    font-size: 12px;
    display: block;
}

.partnerCircle img {
    width: 325px;
    margin: 0 auto;
}

.partnerCircle .circleText1 {
    position: absolute;
    top: 20px;
    left: 12%;
}

.partnerCircle .circleText2 {
    position: absolute;
    top: 20px;
    right: 14%;
    display: flex;
    align-items: flex-start;
    gap: 5px;
}

.partnerCircle .circleText2 img {
    width: 37px;
    height: 130px;
}

.partnerCircle .circleText3 {
    position: absolute;
    top: 50%;
    left: 11%;
    transform: translateY(-25%);
}

.partnerCircle .circleText4 {
    position: absolute;
    bottom: 0;
    right: 22%;
}

.partnerCountry {
    font-family: 'Kozuka Gothic Pr6N B';
    color: #2F6689;
    text-align: center;
    display: table;
    margin: 55px auto;
}

.partnerCountry span {
    font-size: 20px;
    width: 352px;
    height: 30px;
    border: 2px solid #2F6689;
}

.partnerCountry p {
    font-size: 27px;
    font-weight: 900;
    margin-top: 20px;
}

.mainCountry {
    display: flex;
    justify-content: space-between;
    align-items: center;
    width: 352px;
    margin-top: 15px;
}

.mainCountry img {
    width: 100px;
    height: 68px;
    margin-top: 8px;
}

.mainCountry span {
    font-size: 16px;
    border: none;
}

.partnerInfo {
    display: flex;
    justify-content: flex-start;
    align-items: center;
    margin-bottom: 100px;
}

.partnerInfo img {
    width: 100px;
    height: 100px;
    margin-right: 20px;
}

.partnerInfo .infoList {
    display: flex;
    flex-direction: column;
    flex-wrap: wrap;
    padding-left: 10px;
    border-left: 2px solid #2F6689;
    height: 125px;
}

.partnerInfo .infoList li {
    display: inline-block;
    font-size: 16px;
    font-family: 'Kozuka Gothic Pr6N R';
    line-height: 1.4;
    color: #2F6689;
    margin: 0 12px 5px 0;
}

.partnerInfo .infoList li:nth-child(4) {
    margin: 0;
    line-height: 1;
}

/** お問い合わせ */

.foreignerContact {
    padding: 18px 0 30px;
    background-color: #f8f3f9;
}

.inquiryText {
    line-height: 1.5;
    color: #595757;
    font-family: 'Kozuka Gothic Pr6N R';
    font-size: 15px;
    font-weight: 400;
    text-align: center;
}

.foreignerContact .contactBtnList {
    display: flex;
    flex-direction: column;
    align-items: center;
}

.foreignerContact .contactText {
    padding: 8px 0 10px;
    color: #bc83bd;
    font-family: 'Kozuka Gothic Pr6N H';
    font-size: 15px;
}

.foreignerContact .btnTel {
    width: 57%;
    box-shadow: 6px 6px 0 #fff;
}

.foreignerContact .btnTel span {
    padding-left: 37px;
    font-size: 39px;
}

.foreignerContact .btnTel span::before {
    top: 56%;
    left: 0;
    width: 25.5px;
    height: 26.5px;
    background: url('../img/icon_tel.png') no-repeat center/cover;
}

.foreignerContact .mailContact {
    padding-top: 30px;
    width: 57%;
    border-bottom: 2px solid #bc83bd;
}

.foreignerContact .mailText {
    position: relative;
    max-width: max-content;
    margin: 0 auto;
    padding: 5px 0 10px 35px;
    font-size: 23px;
    color: #bc83bd;
    font-family: 'Kozuka Gothic Pr6N R';
}

.foreignerContact .mailContact p::before {
    position: absolute;
    content: '';
    top: 50%;
    left: 1%;
    transform: translateY(-50%);
    width: 22px;
    height: 22px;
    background: url('../img/icon_mail.png') no-repeat center/contain;
}

.foreignerRecruitment {
    text-align: center;
}

.recruitmentTitleGp {
    display: flex;
    justify-content: center;
    padding-top: 20px;
}

.recruitmentTitleGp a {
    position: relative;
    padding-bottom: 14px;
    color: #bc83bd;
    font-size: 23px;
    font-family: 'Kozuka Gothic Pr6N B';
}

.recruitmentTitleGp a+a {
    margin-left: 5%;
}

.recruitmentTitleGp a::after {
    position: absolute;
    bottom: 0;
    left: 50%;
    width: 110%;
    border-bottom: 2px solid #bc83bd;
    content: '';
    transform: translateX(-50%);
}

.externalSiteText {
    display: block;
    padding-top: 12px;
    color: #595757;
    font-family: 'Kozuka Gothic Pr6N R';
    font-size: 16px;
    text-align: center;
}

.externalSiteBtn {
    margin: 40px 0 105px;
}

.externalSiteBtn .inquiriesBtn {
    position: relative;
    margin-bottom: 32px;
    border: 2px solid #fff;
    background-color: #cca3cb;
    color: #fff;
}

.externalSiteBtn .cmnBtn.inquiriesBtn::after {
    right: 19px;
    left: unset;
    content: "";
    border-top: 2px solid;
    border-right: 2px solid;
    border-bottom: none;
    border-left: none;
    border-color: #fff;
}

.externalSiteBtn .cmnBtn.backButton::after {
    right: unset;
    left: 19px;
    transform: translateY(-50%) rotate(-135deg);
}

@media only screen and (min-width: 768px) and (max-width: 1280px) {

    .sp {
        display: none;
    }

    .foreignerInner {
        max-width: 60.94vw;
    }

    .foreignerMainTitle {
        padding: 2.97vw 0;
    }

    /** nursing */

    .nursingArea {
        margin: 0 auto 4.69vw;
        padding: 2.58vw 0 7.81vw;
        max-width: 87.42vw;
    }

    .foreignerSubTitle {
        padding-bottom: 1.8vw;
        font-size: 2.27vw;
    }

    .foreignerSubTitle::after {
        width: 8.44vw;
        border-bottom: 0.16vw solid #bc83bd;
    }

    #nursingImg01 {
        top: 1.17vw;
        right: 7.5vw;
        max-width: 5.16vw;
    }

    .nursingList {
        margin: 2.73vw auto 0;
        padding: 7.34vw 0;
    }

    .nursingListRow {
        margin-bottom: 4.69vw;
        padding-left: 3.28vw;
    }

    .nursingListRow::before {
        width: 2.34vw;
        height: 2.34vw;
    }

    .nursingListText {
        font-size: 1.41vw;
    }

    /**Training */

    .trainingArea {
        margin: 9.77vw 0 11.72vw;
    }

    .step1,
    .step2,
    .step3 {
        gap: 0.63vw;
        height: 14.77vw;
        max-width: 60.94vw;
    }

    .lftSide {
        gap: 0.39vw;
        width: 18.59vw;
    }

    .rgtSide {
        gap: 0.63vw;
        width: 41.64vw;
    }
    
    .rgtSide .whiteBox {
        width: 5.31vw;
        height: 14.77vw;
    }

    .whiteBox p {
        width: 2.5vw;
        height: 14.77vw;
        font-size: 1.72vw;
        padding: 0.23vw;
        border: 0.2vw solid #595757;
    }

    .box {
        padding: 0.78vw;
    }

    .smallBox {
        width: 6.64vw;
        height: 14.77vw;
        font-size: 1.72vw;
    }

    .largeBox {
        width: 35.94vw;
        height: 14.77vw;
    }

    .step1 {
        margin-top: 2.73vw;
    }

    .step1 .smallBox {
        gap: 1.48vw;
    }

    .step1 .smallBox .box {
        width: 6.64vw;
        height: 6.64vw;
        font-size: 1.72vw;
    }

    .step1 .trainingImg {
        gap: 0.78vw;
    }

    .step1 .trainingImg img {
        width: 3.44vw;
        height: 12.34vw;
        margin-right: 0.78vw;
    }

    .step1 .noExp {
        width: 1.64vw;
        height: 5.78vw;
        font-size: 1.25vw;
        border-radius: 0.39vw;
        padding: 0.16vw;
        margin-right: 1.95vw;
    }

    .step1 .noExp::after {
        left: 2.19vw;
        width: 1.95vw;
        height: 3.91vw;
    }

    .step1 .boxUp {
        width: 31.25vw;
        height: 6.64vw;
        font-size: 1.72vw;
        letter-spacing: 0.05vw;
    }

    .step1 .boxDown {
        gap: 0.63vw;
        padding-top: 1.48vw;
        font-size: 1.72vw;
    }

    .step1 .boxDown .trainingBox {
        width: 10.39vw;
        height: 6.64vw;
    }

    .step1 .boxDown .homeBox {
        width: 2.34vw;
        height: 6.64vw;
    }

    .step1 .boxDown .homeBox span {
        padding-top: 0.31vw;
        border-top: 0.23vw solid #fff;
        font-size: 1.33vw;
    }

    .rgtSide .whiteBox p::before {
        right: 3.13vw;
        width: 1.95vw;
        height: 3.91vw;
    }

    .flow {
        margin: 1.56vw 0;
    }

    .textBox::after {
        height: 0.23vw;
    }

    .textBox::before {
        height: 0.23vw;
    }

    .textBox .purpleArr {
        width: 3.91vw;
        height: 1.95vw;
        margin-right: 1.56vw;
    }

    .textBox p {
        font-size: 1.33vw;
        padding: 0.63vw;
        border-radius: 0.78vw;
        border: 0.2vw solid #595757;
        width: 20.31vw;
        height: 4.22vw;
    }

    .textBox p::after {
        width: 0.86vw;
        height: 0.86vw;
        left: -1.07vw;
        border-width: 0 0.2vw 0.2vw 0;
    }

    .largeBox p {
        font-size: 2.81vw;
    }

    .step2 .largeBox p span {
        font-size: 1.17vw;
        margin-top: 1.17vw;
        padding-left: 0.63vw;
        border-left: 0.16vw solid #fff;
    }

    .step2 .trainingImg {
        width: 8.2vw;
        margin: 0 0.39vw;
    }

    .step3 .trainingImg {
        width: 7.42vw;
        margin: 0 0.78vw 0 0.39vw;
    }

    /** Proud Partners */

    .partnerBnr .proudPartner {
        font-size: 2.34vw;
    }

    .partnerStart {
        font-size: 1.48vw;
        letter-spacing: 0.12vw;
        margin-top: 0.78vw;
    }

    #partner .foreignerSubTitle {
        margin: 4.84vw 0;
    }

    #partner .foreignerSubTitle::after {
        border-bottom: 0.23vw solid #2F6689;
    }

    .partnerTitle {
        font-size: 2.11vw;
    }

    .partnerCom {
        width: 33.59vw;
        height: 6.41vw;
        border: 0.23vw solid #2F6689;
        margin: 1.56vw auto;
    }

    .partnerCom .line {
        height: 5.08vw;
        width: 0.16vw;
    }

    .partnerCom .contractCom {
        font-size: 1.56vw;
    }

    .partnerCom .numberCom {
        font-size: 5.08vw;
    }

    .partnerCom .numberCom span {
        font-size: 2.97vw;
    }

    .partnerQuote {
        font-size: 1.56vw;
    }

    .partnerQuote span {
        border-bottom: 0.31vw solid #2F6689;
    }

    .partnerCircle {
        font-size: 1.33vw;
        margin-top: 2.73vw;
    }

    .partnerCircle span {
        font-size: 0.94vw;
    }

    .partnerCircle img {
        width: 25.39vw;
    }

    .partnerCircle .circleText1 {
        top: 1.56vw;
    }

    .partnerCircle .circleText2 {
        top: 1.56vw;
        gap: 0.39vw;
    }

    .partnerCircle .circleText2 img {
        width: 2.89vw;
        height: 10.16vw;
    }

    .partnerCircle .circleText4 {
        right: 22%;
    }

    .partnerCountry {
        margin: 4.3vw auto;
    }

    .partnerCountry span {
        font-size: 1.56vw;
        width: 27.5vw;
        height: 2.34vw;
        border: 0.16vw solid #2F6689;
    }

    .partnerCountry p {
        font-size: 2.11vw;
        margin-top: 1.56vw;
    }

    .mainCountry {
        width: 27.5vw;
        margin-top: 1.17vw;
    }

    .mainCountry img {
        width: 7.81vw;
        height: 5.31vw;
        margin-top: 0.63vw;
    }

    .mainCountry span {
        font-size: 1.25vw;
        border: none;
    }

    .partnerInfo {
        margin-bottom: 7.81vw;
    }

    .partnerInfo img {
        width: 7.81vw;
        height: 7.81vw;
        margin-right: 1.56vw;
    }

    .partnerInfo .infoList {
        padding-left: 0.78vw;
        border-left: 0.16vw solid #2F6689;
        height: 9.77vw;
    }

    .partnerInfo .infoList li {
        font-size: 1.25vw;
        margin: 0 0.94vw 0.39vw 0;
    }

    /** お問い合わせ */

    .foreignerContact {
        padding: 1.41vw 0 2.34vw;
    }

    .inquiryText {
        font-size: 1.17vw;
    }

    .foreignerContact .contactText {
        padding: 0.63vw 0 0.78vw;
        font-size: 1.17vw;
    }

    .foreignerContact .btnTel {
        box-shadow: 0.47vw 0.47vw 0 #fff;
    }

    .foreignerContact .btnTel span {
        padding-left: 2.89vw;
        font-size: 3.05vw;
    }

    .foreignerContact .btnTel span::before {
        width: 1.99vw;
        height: 2.07vw;
    }

    .foreignerContact .mailContact {
        padding-top: 2.34vw;
        border-bottom: 0.16vw solid #bc83bd;
    }

    .foreignerContact .mailText {
        padding: 0.39vw 0 0.78vw 2.73vw;
        font-size: 1.8vw;
    }

    .foreignerContact .mailContact p::before {
        width: 1.72vw;
        height: 1.72vw;
    }

    .recruitmentTitleGp {
        padding-top: 1.56vw;
    }

    .recruitmentTitleGp a {
        padding-bottom: 1.09vw;
        font-size: 1.8vw;
    }

    .recruitmentTitleGp a::after {
        border-bottom: 0.16vw solid #bc83bd;
    }

    .externalSiteText {
        padding-top: 0.94vw;
        font-size: 1.25vw;
    }

    .externalSiteBtn {
        margin: 3.13vw 0 8.2vw;
    }

    .externalSiteBtn .inquiriesBtn {
        margin-bottom: 2.5vw;
        border: 0.16vw solid #fff;
    }

    .externalSiteBtn .cmnBtn.inquiriesBtn::after {
        right: 1.48vw;
        border-top: 0.16vw solid;
        border-right: 0.16vw solid;
    }

    .externalSiteBtn .cmnBtn.backButton::after {
        left: 1.48vw;
    }
}

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

    .sp {
        display: block;
    }

    .pc {
        display: none;
    }

    .foreignerInner {
        width: 100%;
        padding: 0 4vw;
        max-width: 100%;
    }

    .foreignerMainTitle {
        padding: 2.833vw 0 4.667vw;
    }

    /** nursing */

    .nursingArea {
        margin: 0 auto;
        padding: 7.667vw 0 4.867vw;
        max-width: 100%;
        width: 100%;
    }

    .foreignerSubTitle {
        padding-bottom: 2.7vw;
        font-size: 3.733vw;
    }

    .foreignerSubTitle::after {
        width: 15.2vw;
        border-bottom: 0.267vw solid #bc83bd;
    }

    #nursingImg01 {
        top: 14vw;
        right: 5%;
        max-width: 10.67vw;
    }

    .nursingList {
        margin: 4.1vw auto 0;
        padding: 9.133vw 0;
    }

    .nursingListRow {
        margin-bottom: 9.33vw;
        padding-left: 8.53vw;
    }

    .nursingListRow::before {
        width: 6.67vw;
        height: 6.4vw;
    }

    .nursingListText {
        font-size: 3.2vw;
    }

    /**Training */

    .trainingArea {
        margin: 5.33vw 0 14.67vw;
    }

    .step1,
    .step2,
    .step3 {
        height: 24vw;
        max-width: 92vw;
    }

    .lftSide {
        width: 24vw;
    }

    .rgtSide {
        width: 66vw;
        margin-left: 1vw;
    }
    
    .rgtSide .whiteBox {
        width: 8.53vw;
        height: 24vw;
        display: flex;
        justify-content: flex-end;
    }

    .whiteBox p {
        width: 4vw;
        height: 24vw;
        font-size: 2.93vw;
        padding: 0.53vw;
        border: 0.3vw solid #595757;
        line-height: 1;
    }

    .box {
        padding: 1.33vw;
    }

    .smallBox {
        width: 4.8vw;
        height: 24vw;
        font-size: 2.93vw;
        font-weight: 500;
        line-height: 1.2;
    }

    .largeBox {
        max-width: 100%;
        width: 57vw;
        height: 24vw;
    }

    .step1 {
        margin-top: 6.67vw;
    }

    .step1 .smallBox {
        gap: 0.9vw;
    }

    .step1 .smallBox .box {
        width: 4.8vw;
        height: 11.73vw;
        font-size: 2.67vw;
        line-break: anywhere;
    }

    .step1 .smallBox .box.box2 {
        font-weight: 500;
        line-height: 1;
    }

    .step1 .trainingImg {
        width: 13vw;
        margin: 0 0.5vw;
    }

    .step1 .trainingImg img {
        width: 5.6vw;
        height: 19.73vw;
        margin-right: 1vw;
    }

    .step1 .noExp {
        width: 3.73vw;
        height: 12.53vw;
        font-size: 2.67vw;
        border-radius: 1.33vw;
        padding: 0.55vw;
        margin-right: 2.4vw;
    }

    .step1 .noExp::after {
        left: 4.47vw;
        width: 2.2vw;
        height: 6.13vw;
    }

    .step1 .boxUp {
        width: 50.13vw;
        height: 11vw;
        font-size: 2.93vw;
        letter-spacing: 0.13vw;
    }

    .step1 .boxDown {
        gap: 1.07vw;
        padding-top: 1.6vw;
        font-size: 2.93vw;
    }

    .step1 .boxDown .trainingBox {
        width: 16.8vw;
        height: 11.5vw;
    }

    .step1 .boxDown .homeBox {
        width: 3.73vw;
        height: 10.67vw;
    }

    .step1 .boxDown .homeBox span {
        padding-top: 0.8vw;
        border-top: 0.53vw solid #fff;
        font-size: 2.13vw;
    }

    .rgtSide .whiteBox p::before {
        right: 4.57vw;
        width: 3vw;
        height: 6.13vw;
        background: url('../img/icon_white_arrow_sp.png') no-repeat center/contain;
    }

    .flow {
        margin: 4vw 0;
    }

    .flow .textBox {
        padding-right: 0;
    }

    .textBox::after,
    .textBox::before {
        display: none;
    }

    .textBox .purpleArr {
        width: 5.87vw;
        height: 2.93vw;
        margin-right: 1.33vw;
    }

    .textBox p {
        font-size: 2.67vw;
        padding: 1.07vw;
        border-radius: 1.33vw;
        border: 0.3vw solid #595757;
        width: 41.33vw;
        height: 8.53vw;
    }

    .textBox p::after {
        width: 1.6vw;
        height: 1.6vw;
        left: -2vw;
        border-width: 0 0.3vw 0.3vw 0;
    }

    .largeBox p {
        font-size: 4.27vw;
        font-weight: 500;
        line-height: 1.2;
    }

    .step2 .largeBox p span {
        font-size: 2.67vw;
        line-height: 1.2;
        margin-top: 1vw;
        padding-left: 1.07vw;
        border-left: 0.4vw solid #fff;
        text-align: left;
    }

    .step2 .trainingImg {
        width: 12.9vw;
        margin: 0 0.5vw;
    }

    .step3 .trainingImg {
        width: 12vw;
        margin: 0 1.33vw 0 0;
    }

    /** Proud Partners */

    .partnerBnr .proudPartner {
        right: 10%;
        top: 75%;
        font-size: 6.67vw;
        font-family: 'Kozuka Gothic Pr6N R';
    }

    .partnerStart {
        font-size: 3.2vw;
        letter-spacing: 0;
        margin-top: 2.67vw;
    }

    #partner .foreignerSubTitle {
        margin: 8.53vw 0;
    }

    #partner .foreignerSubTitle::after {
        border-bottom: 0.8vw solid #2F6689;
    }

    .partnerTitle {
        font-size: 3.73vw;
        font-family: 'Kozuka Gothic Pr6N H';
    }

    .partnerCom {
        width: 81.07vw;
        height: 16.53vw;
        border: 0.8vw solid #2F6689;
        margin: 4vw auto;
    }

    .partnerCom .line {
        height: 13.33vw;
        width: 0.53vw;
    }

    .partnerCom .contractCom {
        font-size: 3.73vw;
        width: 49.5%;
        line-height: 1.2;
    }

    .partnerCom .numberCom {
        font-size: 12.53vw;
        width: 49.5%;
    }

    .partnerCom .numberCom span {
        font-size: 7.47vw;
    }

    .partnerQuote {
        font-size: 3.73vw;
        letter-spacing: 0.3vw;
    }

    .partnerQuote span {
        border-bottom: 0.8vw solid #2F6689;
    }

    .partnerCircle {
        font-size: 3.2vw;
        line-height: 1.2;
        margin-top: 12vw;
    }

    .partnerCircle span {
        font-size: 2.67vw;
        text-align: end;
    }

    .partnerCircle img {
        width: 73.6vw;
    }

    .partnerCircle .circleText1 {
        top: 1.07vw;
        left: 4%;
    }

    .partnerCircle .circleText2 {
        top: 1.33vw;
        right: 0%;
        gap: 1vw;
    }

    .partnerCircle .circleText2 img {
        width: 6.93vw;
        height: 24.27vw;
    }

    .partnerCircle .circleText3 {
        bottom: 0;
        left: 0;
        transform: translateY(62%);
    }

    .partnerCircle .circleText4 {
        bottom: 8%;
        right: 0;
    }

    .partnerCountry {
        margin: 14.67vw auto;
    }

    .partnerCountry span {
        font-size: 3.73vw;
        width: 66.13vw;
        height: 5.87vw;
        border: 0.53vw solid #2F6689;
    }

    .partnerCountry p {
        font-size: 4vw;
        margin-top: 5.33vw;
    }

    .mainCountry {
        width: 66.13vw;
        margin-top: 2.2vw;
    }

    .mainCountry img {
        width: 18.67vw;
        height: 12.8vw;
        margin-top: 2.2vw;
    }

    .mainCountry span {
        font-size: 2.93vw;
        border: none;
    }

    .partnerInfo {
        margin-bottom: 13.33vw;
    }

    .partnerInfo img {
        width: 20.8vw;
        height: 20.8vw;
        margin-right: 3.2vw;
    }

    .partnerInfo .infoList {
        flex-wrap: nowrap;
        padding-left: 3.2vw;
        border-left: 0.53vw solid #2F6689;
        height: auto;
    }

    .partnerInfo .infoList li {
        font-size: 2.93vw;
        margin: 0 0 2.4vw 0;
    }

    .partnerInfo .infoList li:nth-child(4) {
        margin: 0 0 2vw 0;
        line-height: 1.4;
    }

    /** お問い合わせ */

    .foreignerContact {
        padding: 4.267vw 0;
    }

    .inquiryText {
        font-size: 3.467vw;
    }

    .foreignerContact .contactBtnList {
        padding: 3.1vw 6.5vw 0;
    }

    .foreignerContact .contactText {
        padding: 0 0 0.667vw;
        font-size: 2.933vw;
    }

    .foreignerContact .btnTel {
        width: 100%;
        margin-bottom: 2.633vw;
        padding: 0.3vw 0;
        box-shadow: 0.8vw 1.067vw 0 #fff;
    }

    .foreignerContact .btnTel span {
        padding-left: 6.133vw;
        font-size: 6.933vw;
    }

    .foreignerContact .btnTel span::before {
        width: 4.667vw;
        height: 4.933vw;
    }

    .foreignerContact .mailContact {
        padding-top: 5.33vw;
        width: 100%;
        border-bottom: 0.53vw solid #bc83bd;
    }

    .foreignerContact .mailText {
        padding: 1.4vw 0 1.4vw 9vw;
        font-size: 4.8vw;
    }

    .foreignerContact .mailContact p::before {
        left: 4%;
        width: 4.8vw;
        height: 4.8vw;
    }

    .recruitmentTitleGp {
        flex-direction: column;
        align-items: center;
        padding-top: 6.333vw;
    }

    .recruitmentTitleGp a {
        padding-bottom: 1.6vw;
        font-size: 3.2vw;
    }

    .recruitmentTitleGp a+a {
        margin: 9vw 0 0;
    }

    .recruitmentTitleGp a::after {
        width: 100%;
        border-bottom: 0.267vw solid #bc83bd;
    }

    .externalSiteText {
        display: none;
    }

    .externalSiteBtn {
        margin: 6.133vw 0 8.8vw;
    }

    .externalSiteBtn .inquiriesBtn {
        margin-bottom: 5.333vw;
        border: 0.267vw solid #fff;
    }

    .externalSiteBtn .cmnBtn.inquiriesBtn::after {
        right: 1.6vw;
        border-top: 0.533vw solid;
        border-right: 0.533vw solid;
    }

    .externalSiteBtn .cmnBtn.backButton::after {
        left: 2.4vw;
    }
}