@charset "UTF-8";

.topBanner {
    position: relative;
    height: 362px;
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
    z-index: 1;
}
.webp .topBanner {
    background-image: url("../img/top/topBanner.webp");
}
.no-webp .topBanner {
    background-image: url("../img/top/topBanner.png");
}
.topBannerMask {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    background-color: rgba(0, 0, 0, 0.3);
    z-index: 2;
}
.topBannerInner02 {
    position: relative;
    height: 100%;
    z-index: 3;
}
.topBannerTitle {
    position: absolute;
    /* top: 60px; */
    top: 30px;
    left: 0;
}
.topBannerTitleText {
    font-size: 36px;
    font-weight: 700;
    line-height: 1.38;
    letter-spacing: 0.05em;
    color: #fff;
}
.topBannerTitleLogo {
    width: 780px;
    display: block;
    /* margin-top: -15px; */
}
.topBannerTitleLogoImg {
    width: 100%;
    height: 100%;
}
.topBannerTitleText2 {
    margin-top: 20px;
    display: block;
    /* font-size: 24px; */
    font-size: 20px;
    font-weight: 700;
    line-height: 1.5em;
    letter-spacing: 0.05em;
    color: #fff;
    text-shadow: 0px 0px 10px rgba(0, 0, 0, 1);
}
.topBannerTitleText2Icon {
    display: block;
    position: relative;
    padding-left: 1em;
}
.topBannerTitleText2Icon::before {
    position: absolute;
    left: 0;
    content: "✔";
}
.topSubBanner {
    width: 600px;
    height: 150px;
    position: absolute;
    top: 180px;
    right: 0;
    z-index: 2;
}
.topSubBannerLink {
    display: block;
    height: 100%;
    background-image: url("../img/campaign/banner-600.png");
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
}


.formJobSearchBox1 {
    position: absolute;
    top: 325px;
    left: 50%;
    margin-left: -550px;
    width: 1100px;

    box-shadow: 0px 0px 15px 0 rgba(0,0,0,0.29);
    border-radius: 15px;
    background-color: #fff;
}
.formJobSearchBox1List {
    display:-webkit-box;
    display:-ms-flexbox;
    display:flex;
	-webkit-box-pack: start;
	-ms-flex-pack: start;
	justify-content: flex-start;
	-webkit-box-align: stretch;
	-ms-flex-align: stretch;
	align-items: stretch;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}
.formJobSearchBox1Item {

}
.formJobSearchBox1SelectWrap {
    position: relative;
    display: block;
    width: 295px;
    z-index: 1;

    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -webkit-box-align: stretch;
    -ms-flex-align: stretch;
    align-items: stretch;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}
.formJobSearchBox1SelectWrap:nth-child(n+2) {
    border-left: 1px solid #E5E5E5;
}
.formJobSearchBox1SelectWrap::before {
    position: absolute;
    top: 50%;
    left: 15px;
    content: "";
    display: block;
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
    z-index: 2;
    pointer-events: none;
}
.formJobSearchBox1SelectWrap:nth-child(1)::before {
    margin-top: -8px;
    width: 19px;
    height: 16px;
    background-image: url("../img/icon_jobType_blue.svg");
}
.formJobSearchBox1SelectWrap:nth-child(2)::before {
    margin-top: -9.25px;
    width: 18.5px;
    height: 18.5px;
    background-image: url("../img/icon_facility_blue.svg");
}
.formJobSearchBox1SelectWrap:nth-child(3)::before {
    margin-top: -9.5px;
    width: 13px;
    height: 19px;
    background-image: url("../img/icon_marker_blue.svg");
}
.formJobSearchBox1SelectWrap::after {
    position: absolute;
    top: 50%;
    right: 15px;
    margin-top: -4.5px;
    content: "";
    display: block;
    width: 13px;
    height: 9px;
    background-image: url("../img/triangle_down_blue.svg");
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
    z-index: 2;
    pointer-events: none;
}
.formJobSearchBox1InputTitle {
    font-size: 18px;
    font-weight: 700;
    line-height: 1;
    letter-spacing: 0;
    position: absolute;
    top: 50%;
    margin-top: -9px;
    left: 40px;
    color: #0076AA;
}
.formJobSearchBox1InputSelect {
    width: 100%;
    font-size: 16px;
    font-weight: 700;
    line-height: 1.5;
    letter-spacing: 0;
    cursor: pointer;
    padding: 20px 30px 20px 110px;
}
.formJobSearchBox1InputSelect[name=ctype] {
    padding-left: 85px;
}
.formJobSearchBox1InputSelect[name=pref] {
    padding-left: 110px;
}
.formJobSearchBox1InputSelect[name=etype] {
    padding-left: 125px;
}
.formJobSearchBox1Submit {
    width: 215px;
}
.formJobSearchBox1ButtonSubmit {
    display: block;
    width: 100%;
    height: 100%;
    border-top-right-radius: 15px;
    border-bottom-right-radius: 15px;
    font-size: 19px;
    font-weight: 700;
    line-height: 1.36;
    letter-spacing: 0.04em;
    color: #fff;
    cursor: pointer;

    background-color: #0076AA;
}

.topSection02 {
    padding: 50px 0 90px;
}
.jobTypeSearchList {
    width: 1000px;
    margin: 40px auto 0;
    display:-webkit-box;
    display:-ms-flexbox;
    display:flex;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
	-webkit-box-align: stretch;
	-ms-flex-align: stretch;
	align-items: stretch;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}
.jobTypeSearchListItem {
    width: 300px;
}
.jobTypeSearchListLink {
    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;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;

    height: 100%;
    border-radius: 10px;
    padding: 160px 20px 50px;

    font-size: 19px;
    font-weight: 700;
    line-height: 1.36;
    color: #000;
    text-align: center;
    text-decoration: none;
    background-color: #FFF;
    box-shadow: 0 0 10px 0 rgba(66, 128, 147, 0.5);

    background-repeat: no-repeat;
    background-position: center 40px;
}
.jobTypeSearchListLink__consultation {
    background-image: url("../img/icon_consultation_blue.svg");
}
.jobTypeSearchListLink__ctscan {
    background-image: url("../img/icon_ctscan_blue.svg");
    background-position: center 32px;
}
.jobTypeSearchListLink__medical {
    background-image: url("../img/icon_medical_blue.svg");
}
.jobTypeSearchListLink__stethoscope {
    padding-top: 134px;
    background-image: url("../img/icon_stethoscope_blue.svg");
}

.jobTypeSearchListText {

}

.topSection03 {
    padding: 20px 0 60px;
    background-color: #ECF5F8;
}

.jobListDetailTable01 {

}

.topSection04 {
    padding: 90px 0 130px;
}
.topSection04TwoColumn {
    margin-top: 30px;
}
.topSection04Text {
    width: 510px;
    letter-spacing: -0.1em;
}
.topSection04Img {
    width: 523px;
    height: 310px;
}
.topSection04Img img {
    width: 100%;
    height: 100%;
}

.topSection05 {
    position: relative;
    background-color: #0076AA;
    padding: 0 0 70px;
}
.topSection05Inner02 {
    position: relative;
}
.balloonWrap {
    position: absolute;
    top: -40px;
    left: 50%;
    margin-left: -250px;
}
.balloonTitle01 {
    position: relative;
    width: 500px;
    border-radius: 20px;
    padding: 20px;
    text-align: center;
    background-color: #fff;
    box-shadow: 0 0 10px 0 rgba(66, 128, 147, 0.16);
}
.balloonTitle01::after {
    content: "";
    position: absolute;
    bottom: -23px;
    left: 50%;
    width: 0;
    height: 0;
    margin-left: -12.5px;
    border-style: solid;
    border-width: 23px 12.5px 0 12.5px;
    border-color: #ffffff transparent transparent transparent;
}
.balloonTitle01Main {
    font-size: 30px;
    font-weight: 700;
    line-height: 1.3;
    letter-spacing: -0.03em;
    color: #0076AA;
}
.balloonTitle01MainSub {
    font-size: 20px;
    line-height: 1.35;
    color: #000;
}
.balloonTitle01Sub {
    display: block;
    font-size: 20px;
    font-weight: 700;
    line-height: 1.35;
    letter-spacing: -0.03em;
    color: #000;
}
.topSection05Text01Wrap {
    padding-top: 110px;
    text-align: center;
}
.topSection05Text01 {
    display: inline-block;
    padding: 0 30px;
    font-size: 24px;
    font-weight: 700;
    line-height: 1.3;
    letter-spacing: 0.05em;
    color: #fff;
    text-align: center;
    background-image: url("../img/top/line_slash_left_white.svg"),url("../img/top/line_slash_right_white.svg");
    background-repeat: no-repeat,no-repeat;
    background-position: left center,right center;
    background-size: auto 28px,auto 28px;
}
.topSection05Btn {
    margin: 15px auto 0;
    display: block;
    width: 592px;
    border-radius: 10px;
    padding: 33px 54px;
    font-size: 35px;
    font-weight: 700;
    line-height: 1.2;
    letter-spacing: 0;
    color: #fff;
    /* background-color: #E6905A; */
    background-color: #ED7D31;

    background-image: url("../img/circle_right_darkOrange_white.svg");
    background-repeat: no-repeat;
    background-position: 526px center;
    background-size: 45px 45px;

    box-shadow: 0 0 16px 0 rgba(0, 0, 0, 0.16);
}
.topSection05Btn__login {
    background-image: url("../img/circle_up_darkOrange_white.svg");
}
.topSection05BtnText {

}

/* ---------------------------------
		followBanner
------------------------------------*/
.followBanner {
	display: none;
	position: fixed;
	bottom: 120px;
	right: 0;
	z-index: 50;
}

.followBannerWrap {
	position: relative;
}

/* .followBannerBtn {
	display: block;
	position: absolute;
	top: -17px;
	right: -17px;
	width: 34px;
	height: 34px;
    background-color: #FFF;
	border-radius: 50%;
    background-image: url("../img/btn_menu_close.svg");
	background-repeat: no-repeat;
	background-position: center;
	background-size: auto;
	cursor: pointer;
	z-index: 55;
} */

.followBannerLink {
	display: block;
	width: 298px;
	text-decoration: none;
}

.followBannerLink img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    font-size: 0;
}

/*----------------------------------------
 _画面の横幅が750pxまで
----------------------------------------*/
@media screen and (max-width:750px) {
    .topBanner {
        height: 92.26vw;
    }
    .webp .topBanner {
        background-image: url("../img/top/topBannerSp.webp");
    }
    .no-webp .topBanner {
        background-image: url("../img/top/topBannerSp.png");
    }
    .topBannerMask {

    }
    .topBannerInner02 {

    }
    .topBannerTitle {
        position: absolute;
        /* top: 13.66vw; */
        top: 1.66vw;
        width: 100%;
    }
    .topBannerTitleText {
        /* font-size: 7.73vw; */
        font-size: 6.53vw;
    }
    .topBannerTitleLogo {
        /* margin-top: 2.66vw;
        width: auto; */
        margin-top: 0;
        width: auto;
    }
    .topBannerTitleLogoImg {

    }
    .topBannerTitleText2 {
        /* margin-top: 4vw;
        font-size: 4.2vw;
        letter-spacing: -0.01em; */
        margin-top: 0;
        font-size: 4vw;
        letter-spacing: -0.05em;
        line-height: 1.5;
    }
    .topBannerTitleText2Icon {
        padding-top: 0.5em;
    }
    .topSubBanner {
        width: 100%;
        height: 36vw;
        bottom: 1.33vw;
        right: auto;
        top: auto;
    }
    .topSubBannerLink {
        background-image: url("../img/campaign/banner-670.png");
    }

    .formJobSearchBox1 {
        top: 46.66vw;
        margin-left: -44.66vw;
        width: 89.33vw;
        border-radius: 4vw;
        padding: 2.66vw;
        box-shadow: 0px 0.8vw 4vw rgba(0,0,0,0.29);
    }
    .formJobSearchBox1Title {
        width: 100%;
        font-size: 5.33vw;
        font-weight: 700;
        line-height: 1.35;
        letter-spacing: 0;
        color: #0076AA;
        text-align: center;
    }
    .formJobSearchBox1List {
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
    }
    .formJobSearchBox1Item {
        margin-top: 2.66vw;
    }
    .formJobSearchBox1SelectWrap {
        width: 100%;
    }
    .formJobSearchBox1SelectWrap:nth-child(n+2) {
        border-left: none;
    }
    .formJobSearchBox1SelectWrap::before {
        left: 4vw;
    }
    .formJobSearchBox1SelectWrap:nth-child(1)::before {
        margin-top: -2.13vw;
        width: 5.06vw;
        height: 4.26vw;
        background-image: url("../img/icon_jobType_white.svg");
    }
    .formJobSearchBox1SelectWrap:nth-child(2)::before {
        margin-top: -2.46vw;
        width: 4.93vw;
        height: 4.93vw;
        background-image: url("../img/icon_facility_white.svg");
    }
    .formJobSearchBox1SelectWrap:nth-child(3)::before {
        margin-top: -2.53vw;
        width: 3.46vw;
        height: 5.06vw;
        background-image: url("../img/icon_marker_white.svg");
    }
    .formJobSearchBox1SelectWrap::after {
        right: 4vw;
        margin-top: -1.2vw;
        width: 3.46vw;
        height: 2.4vw;
        background-image: url("../img/triangle_down_white.svg");
    }
    .formJobSearchBox1InputTitle {
        font-size: 4vw;
        margin-top: -2vw;
        left: 10.66vw;
        color: #FFF;
    }
    .formJobSearchBox1InputSelect {
        border-radius: 2.66vw;
        padding: 2.66vw 2.66vw 2.66vw 30vw;
        font-size: 4vw;
        letter-spacing: 0.05em;
        color: #fff;
        background-color: #0076AA;
    }
    .formJobSearchBox1InputSelect[name=ctype] {
        padding-left: 30vw;
    }
    .formJobSearchBox1InputSelect[name=pref] {
        padding-left: 30vw;
    }
    .formJobSearchBox1InputSelect[name=etype] {
        padding-left: 30vw;
    }
    .formJobSearchBox1Submit {
        width: 100%;
    }
    .formJobSearchBox1ButtonSubmit {
        width: 50.66vw;
        margin: 0 auto;
        height: auto;
        border-radius: 4vw;
        padding: 2.66vw;
        font-size: 4.8vw;
    }
        
    .topSection02 {
        padding: 5vw 0 23.66vw;
    }
    .jobTypeSearchList {
        margin: 5.33vw auto 0;
        width: 100%;
    }
    .jobTypeSearchListItem {
        width: 100%;
    }
    .jobTypeSearchListItem:nth-child(n+2) {
        margin-top: 5.33vw;
    }
    .jobTypeSearchListItem:nth-child(n+3) {
        margin-top: 5.33vw;
    }
    .jobTypeSearchListLink {
        border-radius: 4vw;
        padding: 30.66vw 2.66vw 6.66vw;
        font-size: 3.73vw;
        box-shadow: 0 0 2.13vw 0 rgba(66, 128, 147, 0.5);
        background-position: center 9.33vw;
    }
    .jobTypeSearchListLink__consultation {
        background-size: 17.6vw 17.06vw;
    }
    .jobTypeSearchListLink__ctscan {
        background-position: center 8vw;
        background-size: 14.93vw 19.46vw;
    }
    .jobTypeSearchListLink__medical {
        background-position: center 10.13vw;
        background-size: 11.46vw 16.26vw;
    }
    .jobTypeSearchListLink__stethoscope {
        padding-top: 25.6vw;
        background-position: center 7.73vw;
        background-size: 16.8vw 16vw;
    }

    .topSection03 {
        padding: 25vw 0 2.66vw;
    }
    .jobFeature {
        padding: 7.2vw 0 8vw;
    }
    .jobFeature:nth-child(n+2) {
        border-top: 0.26vw solid rgba(0, 118, 170, 0.21);
    }
    .jobFeatureTitle {
        padding-left: 9.6vw;
    }
    .jobFeatureTitle::before {
        width: 8vw;
        height: 8vw;
    }
    .jobFeatureTitle__consultation::before {
        background-size: 7.73vw 7.46vw;
    }
    .jobFeatureTitle__ctscan::before {
        background-size: 5.86vw 7.73vw;
    }
    .jobFeatureTitle__medical::before {
        background-size: 6.93vw 6.93vw;
    }
    .jobFeatureTitle__stethoscope::before {
        background-size: 7.46vw 7.2vw;
    }

    .jobFeatureListLink {
        padding-right: 2.3vw;
        background-size: 1.33vw 2.93vw;
    }
    .jobFeatureList {
        margin-top: 4vw;
    }

    .topSection04 {
        padding: 10.66vw 0 29.33vw;
    }
    .topSection04TwoColumn {
        margin-top: 5.33vw;
    }
    .topSection04Text {
        margin-top: 5.33vw;
        width: 100%;
        letter-spacing: -0.1em;
        line-height: 1.9;
    }
    .topSection04Img {
        width: 100%;
        height: 52.8vw;
    }
    .topSection04Img img {

    }

    .topSection05 {
        padding: 0 0 10.66vw;
    }
    .topSection05Inner02 {

    }
    .balloonWrap {
        position: absolute;
        top: -10.66vw;
        left: 0;
        margin-left: 0;
    }
    .balloonTitle01 {
        width: 89.33vw;
        border-radius: 4vw;
        padding: 4vw;
        box-shadow: 0 0 2.66vw 0 rgba(66, 128, 147, 0.16);
    }
    .balloonTitle01::after {
        bottom: -4.53vw;
        margin-left: -2vw;
        border-width: 4.53vw 2vw 0 2vw;
        border-color: #ffffff transparent transparent transparent;
    }
    .balloonTitle01Main {
        font-size: 5.86vw;
        line-height: 1.36;
        letter-spacing: -0.1em;
    }
    .balloonTitle01MainSub {
        font-size: 4vw;
    }
    .balloonTitle01Sub {
        font-size: 4vw;
        letter-spacing: -0.1em;
    }
    .topSection05Text01Wrap {
        padding-top: 17.33vw;
    }
    .topSection05Text01 {
        padding: 0 5.33vw;
        font-size: 4.8vw;
        background-size: auto 6.4vw,auto 6.4vw;
    }
    .topSection05Btn {
        margin: 2.66vw auto 0;
        width: 100%;
        border-radius: 2.66vw;
        padding: 6.4vw 4.8vw;
        font-size: 5.33vw;
        line-height: 1.15;

        background-position: 76vw center;
        background-size: 9.33vw 9.33vw;

        box-shadow: 0 0 4.26vw 0 rgba(0, 0, 0, 0.16);
    }
    .topSection05BtnText {

    }
}