@charset "utf-8";

.sub_main h1 {
    padding: 3em 0 0em;
    margin: 0;
}

.recruit_page .btn_more01 {
    margin: 3rem 0 0;
}

.recruit_page .f_small {
    font-size: 80%;
}

#recruit_part .lead {
    text-align: center;
    margin-bottom: 2em;
}

#recruit_part .lead span {
    font-size: 150%;
    font-weight: bold;
    color: #ff517e;
}

@media (max-width: 599px) {
    .lead {
        text-align: left;
    }

    .lead br {
        display: none;
    }

    .lead .dib {
        display: inline-block;
    }

}




/***********************************/
.recruit_nav {
    display: flex;
    flex-wrap: wrap;
    gap: 1rem;
    padding: 2rem 10px;
    margin: 3rem auto;
    width: fit-content;
    border-top: solid 1px #989898;
}

.link_list {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: stretch;
    width: 100%;
    border-radius: 5px;
    gap: 3px;
}

.recruit_facility {
    justify-content: flex-end;
    width: 100%;
    flex-direction: unset;
    align-items: end;
    display: flex;
}

.link_list li {
    width: 100%;
}

.link_list li i {}

.link_list>li>a {
    padding: 0.5em 1em;
    background-color: #989898;
    color: #fff;
    display: flex;
    justify-content: center;
    align-items: center;
    border: double 3px #fff;
}

.recruit_facility a {
    background-color: #f9a801;
    padding: 0.3em 1em;
    border-radius: 2rem;
    display: flex;
    gap: 7px;
    flex-direction: unset;
    border: double 3px #fff;
    color: #fff;
    width: fit-content;
    justify-content: center;
    align-items: center;
}

.link_list>li>a:before {
    font-family: "Font Awesome 5 Brands";
}

.rnavi__list {
    position: relative;
    transition: all .3s;
}

.link_list li.rnavi__list .dropdown__lists {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: .8em;
    ;
    position: static;
    transform: scaleY(1);
    padding: .5em;
}

.link_list li.rnavi__list .dropdown__list {
    background: rgba(153, 153, 153, .8);
}

.link_list li.rnavi__list .dropdown__lists {
    top: 100%;
    left: 2px;
    right: 2px;
    width: auto;
}

.link_list li.rnavi__list:hover .dropdown__lists {
    transform: scaleY(1);
}


.link_list li.rnavi__list .dropdown__list {
    width: auto;
    border-radius: 1em;
}

.link_list li.rnavi__list .dropdown__lists a {
    padding: .5em 1em;
}

h1 .entry_en_name {
    display: block;
    font-size: 80%;
    color: #ef8bb6;
    font-weight: bold;
}

.entry_img {
    margin: 0 auto 2rem;
    width: 100%;
    max-width: 600px;
}

h1 .gaiyo {
    display: block;
    font-size: 60%;
    font-weight: bold;
    color: #ef8bb6;
}



.entry_img img {}

/*400px以上*/
@media (min-width: 400px) {}

/*600px以上*/
@media (min-width: 600px) {}

/*900px以上*/
@media (min-width: 900px) {
    .link_list li {
        width: auto;
    }

    .link_list li a {}

    .link_list li.rnavi__list .dropdown__lists {
        position: absolute;
        transform: scaleY(0);
        transition: all .3s;
        padding: 0;
    }

    .link_list li.rnavi__list:hover .dropdown__lists {
        display: block;
        transform: scaleY(1);
        gap: 0;
    }

    .link_list li.rnavi__list .dropdown__list {
        border-radius: 0;
        width: 100%;
    }
}

/*1100px以上*/
@media (min-width: 1100px) {}

/****index_page**bosyu*****************************/

h3.tit_03 {
    position: relative;
    width: fit-content;
    padding: 4px 16px;
    border-bottom: 2px solid #ff688d;
    font-size: clamp(1.063rem, 0.785rem + 1.39vw, 2.5rem)
        /*17-40*/
    ;
    font-weight: bold;
    margin: 0 auto 2rem;
    color: #ff688d;
}

h3.tit_03:before {
    content: "";
    position: absolute;
    bottom: -5px;
    left: 50%;
    width: 15px;
    height: 15px;
    box-sizing: border-box;
    background-color: #feefce;
    rotate: 135deg;
    translate: -50%;
}

h3.tit_03:after {
    content: "";
    position: absolute;
    bottom: -8px;
    left: 50%;
    z-index: -1;
    width: 15px;
    height: 15px;
    box-sizing: border-box;
    border: 2px solid;
    border-color: #ff688d #ff688d transparent transparent;
    background-color: #ffffff;
    rotate: 135deg;
    translate: -50%;
}

/***index**sec02*********/
.koumoku_list {
    display: flex;
    gap: 1rem 3rem;
    flex-wrap: wrap;
    justify-content: center;
}

.koumoku_list li {
    width: 100%;
    max-width: 360px;
}

.koumoku_list li a {
    background-color: #2a8ee7;
    display: block;
    color: #fff;
    border-radius: 10px;
    border: double #fff 4px;
}

.koumoku_list li.new_graduate a {
    background-color: #ff7d00;
}

.koumoku_list li.part a {
    background-color: #f6bd40;
}

.koumoku_list li.r_nurse a {
    background-color: #d72380;
}

.koumoku_list li.r_nurse_part a {
    background-color: #ff69b8;
}

.koumoku_list li.r_rigaku a {
    background-color: #196250;
}

.koumoku_list li.r_rigaku_part a {
    background-color: #398c86;
}

.koumoku_list li.r_sagyo a {
    background-color: #2c7aba;
}

.koumoku_list li.r_sagyo_part a {
    background-color: #629bc9;
}

.koumoku_list li.r_gengo a {
    background-color: #a23e3e;
}

.koumoku_list li.r_gengo_part a {
    background-color: #d13f3f;
}

.koumoku_list dl {
    text-align: center;
    padding: 10px 28px 10px 10px;
    font-size: clamp(1.188rem, 1.097rem + 0.45vw, 1.438rem)
        /*19-23*/
    ;
    position: relative;
}

.koumoku_list dl:after {
    content: "▶";
    position: absolute;
    top: 50%;
    right: 5px;
    transform: translateY(-50%);
    font-size: 14px;
}

.koumoku_list dt {
    font-weight: bold;
    border-bottom: solid 1px;
    padding: 0 0 5px;
    margin: 0 0 5px;
}

.koumoku_list dd {}

/*比率固定*/
.youtube {
    width: 100%;
    aspect-ratio: 16 / 9;
    max-width: 600px;
    margin: 0 auto;
}

.youtube iframe {
    width: 100%;
    height: 100%;
}

.box01.common {
    border: solid 2px #2584d6;
    padding: 2rem 5%;
    border-radius: 1em;
    margin: 0 0 2rem;
    background-color: #fff;
}

/*450px以上*/
@media (min-width: 450px) {}

/*600px以上*/
@media (min-width: 600px) {
    .bosyu_list {
        width: 50%;
    }

    .nursery_details {
        width: 45%;
    }
}

/*900px以上*/
@media (min-width: 900px) {
    .nursery_details {
        width: 33%;
    }

    .bosyu_list {
        width: 65%;
    }

    .bosyu_list li {
        width: calc(100% / 4 - 10px);
    }
}



/**mssage*********************************/
.mssage {}

.mssage h3 {
    font-weight: bold;
    font-size: clamp(1.25rem, 0.709rem + 2.7vw, 2.5rem)
        /*20-40px*/
    ;
    color: #418ed7;
}

.mssage .img_area img {
    border-radius: 50%;
    width: 200px;
}

.mssage .img_area {
    margin: 0 auto 1rem;
    text-align: center;
}

/*600px以上*/
@media (min-width: 600px) {
    .mssage .box01.common {
        border: solid 2px #2584d6;
        padding: 2rem 5%;
        border-radius: 1em;
        margin: 0 0 2rem;
        display: flex;
        flex-direction: row-reverse;
        justify-content: space-between;
        align-items: center;
        background-color: #fff;
    }
}

/*900px以上*/
@media (min-width: 900px) {
    .mssage .flex_area {
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
        align-items: center;
        flex-direction: row-reverse;
        gap: 2rem;
        margin: 0 0 2rem;
    }

    .mssage h3 {
        text-align: left;
        margin: 0;
    }

    .mssage .img_area {
        margin: 0;
    }
}

/****先輩たちの声*******************************/
.voice_nav {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    width: 100%;
}

.voice_nav li {
    width: 31%;
    padding: 0.3rem 1%;
    max-width: 170px;
}

.voice_nav li:nth-child(2n) {
    margin: 2rem 0 0;
}

.voice_nav li a {}

.voice_nav li a img {
    border-radius: 50%;
    background-color: #ffda2a;
}

.voice_nav li:nth-child(2n) a img {
    background-color: #ffb2c5;
}

.voice_nav li a p {
    margin: 0;
    font-size: 13px;
    text-align: center;
    font-weight: bold;
    color: #ff688d;
}

/*****************/
.message_list {
    width: 100%;
}

.message_list li {
    margin: 0 0 2rem;
}

.message_list .prof_photo {
    width: 80%;
    margin: 0 auto;
    text-align: center;
}

.message_list .prof_photo img {
    width: 150px;
}

.message_list .name {
    background: #ff688d;
    color: #fff;
    text-align: center;
    line-height: 1.4;
    font-size: 87.5%;
    padding: 15px 2em;
    position: relative;
    width: fit-content;
    margin: 01rem 0;
}

.message_list .name:after {
    content: "";
    display: block;
    border: dashed 2px #fff;
    position: absolute;
    top: 2px;
    right: 2px;
    bottom: 2px;
    left: 2px;
}

.message_list .name .dept {}

.message_list .name .staffname {
    font-size: clamp(1.063rem, 1.002rem + 0.3vw, 1.375rem)
        /*17-22*/
    ;
    padding: 0 6px;
    font-weight: 600;
}

.message_list .bg_text {
    background-color: #fff;
    padding: 2rem 5%;
    border-radius: 1em;
    margin: -1rem 0 0;
    border: solid 3px #ff688d;
}

.message_list .flex_voice {
    margin: 0 0 1rem;
}

.message_list .img_area2 {
    text-align: center;
}

.message_list .img_area2 img {
    max-width: 400px;
    width: 100%;
}

.message_list .flex_voice h3 {
    font-size: clamp(1.125rem, 0.932rem + 0.96vw, 2.125rem)
        /*18-34px*/
    ;
    font-weight: bold;
    color: #ff688d;
}

.message_list .flex_voice p {}

/*600px以上*/
@media (min-width: 600px) {


    .message_list .flex_voice {
        display: flex;
        align-items: center;
        justify-content: space-between;
    }

    .message_list .flex_voice h3 {
        text-align: left;
        margin: 0;
    }

    .message_list .img_area2 {
        width: 45%;
    }

    .message_list .text_area {
        width: 50%;
    }

}

/*900px以上*/
@media (min-width: 900px) {
    .voice_nav li {
        width: calc(100% / 6);
        padding: 1rem 1%;
    }

    .message_list .prof_photo {
        width: 50%;
        margin: 0;
        text-align: center;
        padding: 0 2rem;
    }

    .message_list li:nth-child(2n) .prof_photo {
        margin: 0 0 0 50%;
    }

    .message_list .bg_text {}

    .message_list li:nth-child(2n) .flex_voice {
        flex-direction: row-reverse;
    }

    .message_list .img_area2 {
        width: 50%;
    }

    .message_list .prof_photo img {
        width: 190px;
    }

    .message_list .name {}
}


img {
    width: 100%;
}

/******requirements_page*****************************/
.tab-1 {
    display: flex;
    flex-wrap: wrap;
    align-items: stretch;
    margin: 0 auto;
}

.tab-1>label {
    flex: 1 1;
    order: -1;
    min-width: 70px;
    padding: 1em 3% 0.5em;
    border-bottom: 1px solid #f0f0f0;
    border-radius: 0;
    background-color: #e9f0f6;
    text-align: center;
    cursor: pointer;
    font-weight: bold;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
    border-color: #2589d0 #2589d0 #fff;
    border-radius: 10px 10px 0 0;
    border: solid 1px #2589d0;
    font-size: clamp(0.875rem, 0.803rem + 0.36vw, 1.25rem)
        /*14-20*/
    ;
}

.tab-1>label:hover {
    opacity: .8;
}

.tab-1 input {
    display: none;
}

.tab-1>div {
    display: none;
    width: 100%;
    padding: 1.5em 6%;
    min-height: 32vw;
    background-color: #fff;
    z-index: 1;
    margin: -2px 0 0;
}

.tab-1 label:has(:checked) {
    background-color: #fff;
    border-color: #2589d0 #2589d0 #fff;
    border-style: solid;
    border-width: 2px 2px 0px;
    border-radius: 10px 10px 0 0;
    color: #2589d0;
    z-index: 2;
}

.tab-1 label:has(:checked)+div {
    display: block;
    border: solid 2px #2589d0;
    border-radius: 0px 0px 10px 10px;
}

.btn_pdf a {
    background-color: #2589d0;
    color: #fff;
    padding: 9px 2em;
    border-radius: 2em;
    display: inline-block;
}

.btn_pdf {
    text-align: center;
    margin: 1rem 0 0;
}

/*600px以上*/
@media (min-width: 600px) {}

/*900px以上*/
@media (min-width: 900px) {}

.recruit_list {}

.recruit_list {}

.recruit_list li {
    border: solid 1px #2584d6;
    margin: 0 0 1em;
}

.recruit_list dl {
    display: flex;
    flex-direction: column;
    flex-wrap: wrap;
}

.recruit_list li>dl>dt {
    text-align: center;
    font-size: 16px;
    font-weight: bold;
    background-color: #2584d6;
    color: #fff;
}

.recruit_list dd {
    padding: 1em;
    background-color: #fff;
}


.recruit_list .dd_inner dl {
    display: flex;
    flex-wrap: wrap;
    flex-direction: unset;
    border-bottom: dotted 2px #ccc;
    padding: 0.7em 0;
}

.recruit_list .dd_inner dt {
    width: 100%;
    font-weight: bold;
}

.recruit_list .dd_inner dd {
    width: 100%;
    padding: unset;
}



/*600px以上*/
@media (min-width: 600px) {
    .recruit_list li>dl {
        flex-direction: unset;
        align-items: stretch;
        height: 100%;
    }

    .recruit_list li>dl>dt {
        width: 30%;
        display: flex;
        justify-content: center;
        align-items: center;
    }

    .recruit_list li>dl>dd {
        width: 70%;
    }

    .recruit_list .dd_inner dt {
        width: unset;
        padding: 0 1em 0 0;
        min-width: 20%;
    }

    .recruit_list .dd_inner dd {}
}

/*900px以上*/
@media (min-width: 900px) {
    .recruit_list {
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        align-items: stretch;
        margin: 0 0 2rem;
    }

    .jisshi_list {
        gap: 2rem;
    }

    .jisshi_list li {
        width: calc(100% / 2 - 2rem);
    }

    .recruit_list li {
        width: calc(100% / 1 - 1rem);
    }

    .recruit_list .dd_inner dd {
        width: 70%;
    }

    .recruit_list .dd_inner dt {
        width: 30%;
    }
}

/**care*********************************/
.care .recruit_list {
    margin: 0 0 3rem;
}

.care .img_list {
    display: flex;
    flex-wrap: wrap;

    justify-content: center;
    margin: 0 auto 1rem;

}

.care .img_list li {
    width: calc(100% / 2 - 1rem);
    margin: 0.5rem;
}

.care .img_list li img {}

.jisshi_list {
    margin: 1rem auto;
    display: flex;
    flex-direction: column;
    gap: 1rem;
}

.jisshi_list li {
    box-shadow: 0px 5px 15px 0px rgb(0 0 0 / 16%);
    padding: 1rem;
    background-color: #fff;
    width: 100%;
}

.jisshi_list li {
    position: relative;
}

.jisshi_list li .img_area {
    text-align: center;
}

.jisshi_list li img {
    max-width: 240px;
}

.jisshi_list li:after {}


.jisshi_list dl {
    padding: 0.3em 0;
    display: flex;
    flex-wrap: wrap;
    border-bottom: dotted 1px #ccc;
    font-size: clamp(0.938rem, 0.925rem + 0.06vw, 1rem)
        /*15-16*/
    ;
}

.jisshi_list li .school_name {
    font-weight: bold;
    color: #2584d6;
    font-size: 1rem;
    border-bottom: dotted 2px;
    padding: 0 0 4px 0;
    padding: 0.7rem 0 0;
    font-size: clamp(1rem, 0.976rem + 0.12vw, 1.125rem)
        /*16-18*/
    ;
}

.jisshi_list dt {
    width: 100%;
    color: #2584d6;
}

.jisshi_list dd {
    width: 100%;
}

.care h3 {
    color: #2584d6;
    font-size: clamp(1.188rem, 1.091rem + 0.48vw, 1.688rem)
        /*19-27px*/
    ;
    border-bottom: double 6px;
    text-align: left;
}

.care h3:before {
    content: "●";
}

.care .box_02 {
    padding: 2rem 0;
}

.kenshu_annual {}

.kenshu_annual>dl {
    border: solid 1px #2584d6;
    padding: 10px;
    margin-bottom: 1.5em;
}

.kenshu_annual>dl dt {
    color: #2584d6;
    border-bottom: solid 1px;
    margin: 0 0 0.7rem;
    font-weight: bold;
}

.kenshu_annual>dl li {
    padding-left: 1em;
    line-height: 1.4;
    margin-bottom: .8em;
    position: relative;
    break-inside: avoid;
}

.kenshu_annual>dl li::before {
    content: "\02022";
    position: absolute;
    left: 0;
    top: 0;
    font-weight: bold;
}

/************/
.read-more-3 {
    position: relative;
}

.read-more-3 .more_03 {
    position: relative;
    max-height: 13rem;
    margin-bottom: 2rem;
    overflow: hidden;
    transition: max-height 1s;
    padding: 0;
}

.read-more-3:has(:checked) .more_03 {
    max-height: unset;
}

.read-more-3 .more_03::after {
    display: block;
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
    height: 60px;
    background: linear-gradient(180deg, hsla(0, 0%, 100%, 0) 0, hsla(0, 0%, 100%, .9) 50%, hsla(0, 0%, 100%, .9) 0, #fff);
    content: '';
}

.read-more-3:has(:checked) .more_03::after {
    content: none;
}

.read-more-3 label {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 0 4px;
    position: absolute;
    bottom: 0;
    left: 50%;
    transform: translateX(-50%);
    padding: .4em 1.2em;
    border-radius: 3px;
    background-color: #2584d6;
    color: #fff;
    z-index: 99;
    width: 60%;
    text-align: center;

}

.read-more-3 label:hover {
    border: 1px solid #2589d0;
    background-color: #fff;
    color: #2589d0;
    cursor: pointer;
}

.read-more-3:has(:checked) label {
    display: none;
}

.read-more-3 label::after {
    display: inline-block;
    width: 10px;
    height: 5px;
    background-color: #fff;
    clip-path: polygon(0 0, 100% 0, 50% 100%);
    content: '';
}

.read-more-3 label:hover::after {
    background-color: #2589d0;
}

.read-more-3 input {
    display: none;
}

/*600px以上*/
@media (min-width: 600px) {
    .care .img_list li {
        width: calc(100% / 4 - 1rem);
        margin: 0.5rem;
    }

    .kenshu_annual>dl ul {
        column-count: 2;
    }


    .jisshi_list {
        margin: 1rem auto;
        display: flex;
        flex-direction: unset;
        gap: 1rem;
        flex-wrap: wrap;
        justify-content: center;
    }

    .jisshi_list li .flex_area {
        width: 100%;
        display: flex;
        justify-content: space-between;
        align-items: baseline;
        gap: 1rem;
    }

    .jisshi_list dt {
        width: 30%;
        color: #2584d6;
    }

    .jisshi_list dd {
        width: 70%;
    }

    .jisshi_list li .img_area {
        width: 30%;
    }

    .jisshi_list li .text_area {
        width: 70%;
    }
}


.nurse_box_wrap {}

.accordion-004 {
    margin-bottom: 7px;

    padding: 10px;
}

.accordion-004 summary {
    display: flex;
    justify-content: space-between;
    align-items: center;
    position: relative;
    padding: 0em 0em;
    color: #2584d6;
    font-weight: 600;
    cursor: pointer;
    border-bottom: solid 2px #2584d6;
    font-size: clamp(1rem, 0.928rem + 0.36vw, 1.375rem);
}

.accordion-004 summary::-webkit-details-marker {
    display: none;
}

.accordion-004 summary::after {
    transform: translateY(-25%) rotate(45deg);
    width: 7px;
    height: 7px;
    margin-left: 10px;
    border-bottom: 3px solid #2584d6;
    border-right: 3px solid #2584d6;
    content: '';
    transition: transform .3s;
}

.accordion-004[open] summary::after {
    transform: rotate(225deg);
}

.accordion-004 .open_box {
    transform: translateY(-10px);
    opacity: 0;
    margin: 0;
    padding: 0;
    color: #333333;
    transition: transform .5s, opacity .5s;
}

.accordion-004[open] .open_box {
    transform: none;
    opacity: 1;
}



.hoikushi {}

.kangoshi {}

.syain {}

.part {}

/******/
.kinmu {
    display: flex;
    flex-wrap: wrap;
    gap: 0 2em;
    border-bottom: dotted 2px #ccc;
    padding: 1em 0;
}

.kinmu label {}

.kinmu label .area {
    font-weight: bold;
}

#form .accordion-004 {}

#form .accordion-004 summary {
    border-bottom: solid 1px #2584d6;
    font-size: initial;
}

/*600px以上*/
@media (min-width: 600px) {}

/*900px以上*/
@media (min-width: 900px) {}

/**work*********************************/

.workbox_01 {
    width: 100%;
    margin: 0 0 2rem;
    background-color: #fff;
}

.flex_area {}

.workbox_01:nth-of-type(odd) .flex_area {}

h3.work_tit_01 {
    background-color: #f9a801;
    color: #fff;
    font-size: clamp(1.063rem, 0.928rem + 0.67vw, 1.5rem)
        /*17-24px*/
    ;
    padding: 0.5em 1em;
    margin: 5em 0 0 0;
    width: 100%;
    font-weight: bold;
    position: relative;
}

h3.work_tit_01 .point {
    position: absolute;
    top: -3em;
    background-color: #f9a801;
    left: 50%;
    transform: translateX(-50%);
    padding: 1.3em 1em 0.4em 1em;
    border-radius: 4em 4em 0 0;
    font-family: "Fascinate", system-ui;
}

.fukuri h3.work_tit_01,
.fukuri h3.work_tit_01 .point {
    background-color: #ef8bb6;

}

.workbox_01 .text_area p {
    padding: 1em;
    margin: 0;
}

.flex_area .img {}

.flex_area .img img {
    aspect-ratio: 16 / 9;
    object-fit: cover;
}

/*600px以上*/
@media (min-width: 600px) {
    .flex_area .img img {
        border-radius: 10px;
    }

    .flex_area .img {
        width: 47%;
        display: flex;
        justify-content: center;
        align-items: center;
        padding: 1em;
    }

    .flex_area {
        width: 100%;
        display: flex;
        margin: 0 0 2rem;
        flex-wrap: wrap;
        justify-content: space-between;
        align-items: center;
    }

    .flex_area .text_area {
        width: 47%;
        display: flex;
        justify-content: center;
        align-items: center;
        padding: 1em;
    }

    .workbox_01:nth-of-type(odd) .flex_area {
        flex-direction: row-reverse;
    }

    .workbox_01 .text_area {}

    h3.work_tit_01 {
        border-radius: 5px;
    }
}

/*900px以上*/
@media (min-width: 900px) {
    .flex_area .img img {}

    .workbox_01 {
        align-items: center;
    }


}

/*********************************/
.page_link {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    gap: 9px;
    margin: 0 0 1em;
}

.page_link a {
    background-color: #0099cc;
    padding: 3px 9px;
    color: #fff;
    border-radius: 3px;
}

/****part_list_page*****************************/
.part_list_page .page_link {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    gap: 9px;
    margin: 0 0 1em;
}

.part_list_page .page_link li {}

.part_list_page .page_link li a {
    background-color: #0099cc;
    padding: 3px 9px;
    color: #fff;
    border-radius: 3px;
}

.part_list_page h3.tit_03 {
    position: relative;
    width: fit-content;
    padding: 4px 16px;
    border-bottom: 2px solid #ff688d;
    font-size: clamp(1.063rem, 0.785rem + 1.39vw, 2.5rem)
        /*17-40*/
    ;
    font-weight: bold;
    margin: 0 auto 2rem;
    color: #ff688d;
}

.part_list_page h3.tit_03:before {
    content: "";
    position: absolute;
    bottom: -5px;
    left: 50%;
    width: 15px;
    height: 15px;
    box-sizing: border-box;
    background-color: #feefce;
    rotate: 135deg;
    translate: -50%;
}

.part_list_page h3.tit_03:after {
    content: "";
    position: absolute;
    bottom: -8px;
    left: 50%;
    z-index: -1;
    width: 15px;
    height: 15px;
    box-sizing: border-box;
    border: 2px solid;
    border-color: #ff688d #ff688d transparent transparent;
    background-color: #ffffff;
    rotate: 135deg;
    translate: -50%;
}

.part_list_page .box_list {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
    gap: 2rem;
    margin: 3rem auto;
}

.part_list_page .en_box_02 {
    background-color: #fff;
    width: 100%;
    position: relative;
    box-shadow: 0px 5px 15px 0px rgba(0, 0, 0, 0.35);
    padding: 10px;
    max-width: 800px;
}

.part_list_page .en_main {
    width: 100%;
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
    justify-content: center;
}

.part_list_page .en_main .text_area {
    display: flex;
    flex-wrap: wrap;
    gap: 9px 0;
}

.part_list_page .en_box_02 a {}

.en_box .flex_area {}

.part_list_page .en_box_02 .name a {
    font-weight: bold;
    border-radius: 6px 6px 0 0;
    color: #333;
}

.part_list_page .en_box_02 .f_img {
    width: 100%;
    text-align: center;
}

.part_list_page .en_box_02 .f_img img {
    object-fit: cover;
    height: auto;
    aspect-ratio: 16 / 9;
    max-height: 170px;
}

.part_list_page .en_box_02 .add {
    text-align: left;
}

.part_list_page .bosyu .box {
    background-color: #fff;
    padding: 2rem 1rem;
    width: 100%;
    margin: 0 0 1rem;
    border-radius: 1rem;
}

.part_list_page .bosyu .box h3 {
    font-size: 20px;
    color: #2584d6;
    border-bottom: dotted 2px;
}


.part_list_page .btn_entry li {}



.part_list_page .nursery_details {
    width: 100%;
}

.part_list_page .btn_entry {
    width: 100%;
    text-align: center;
}

.part_list_page .btn_entry a {
    display: block;
    border: double;
    color: #ff7d00;
    padding: 0.5em 0;
    position: relative;
    font-size: 15px;
}

.part_list_page .btn_entry a:after {
    content: "▶";
    position: absolute;
    top: 50%;
    right: 5px;
    transform: translateY(-50%);
    font-size: 14px;
}

.part_list_page .btn_entry li a:after {}

.work_box_02 {
    width: 90%;
    margin: 0 auto;
    padding: 0 0 2rem 0;
}

.title_h4 {
    position: relative;
    padding: 0 65px;
    text-align: center;
    margin: 2em 0 1em;
    display: flex;
    justify-content: center;
    align-items: center;
}

.title_h4:before {
    position: absolute;
    top: calc(50% - 1px);
    left: 0;
    width: 100%;
    height: 2px;
    content: '';
    background: #2584d6;
}

.title_h4 span {
    position: relative;
    padding: 0 1em;
    background: #feefce;
    font-size: clamp(1.125rem, 1.029rem + 0.48vw, 1.625rem)
        /*18-26px*/
    ;
    color: #2584d6;
    font-weight: bold;
}

.title_h4 span.wh {
    background: #fff;
}

/*500px以上*/
@media (min-width: 500px) {
    .part_list_page .en_box_02 {}

    .part_list_page .en_box_02 a {}

    .part_list_page .en_main {
        gap: 10px 15px;
    }

    .part_list_page .en_box_02 .f_img {
        width: 220px;
    }

    .part_list_page .en_box_02 .text_area {}

    .part_list_page .btn_entry {
        width: 100%;
        padding: 0.5em 0em;
    }

    .part_list_page .nursery_details {
        width: calc(100% - 240px);
        display: flex;
        flex-direction: column;
        align-items: baseline;
        justify-content: center;
    }

}

/*600px以上*/
@media (min-width: 600px) {
    .part_list_page .en_main {
        justify-content: space-evenly;
        align-items: center;
    }

}

/*700px以上*/
@media (min-width: 700px) {
    .part_list_page .en_box_02 {
        width: 48%;
    }

    .part_list_page .en_main {
        flex-direction: column;
        justify-content: space-between;
        height: 100%;

    }

    .part_list_page .en_box_02 .f_img {
        width: 100%;
    }

    .part_list_page .en_box_02 {
        width: calc(100% / 2 - 10px);
    }

    .part_list_page .nursery_details {
        width: 100%;
    }

    .part_list_page .box_list {
        gap: 20px;
    }
}

/*900px以上*/
@media (min-width: 900px) {

    .part_list_page .en_box_02 .f_img {
        width: 40%;
    }

    .part_list_page .nursery_details {
        width: 55%;
        display: flex;
        flex-direction: column;
        align-items: baseline;
        justify-content: center;
    }

    .part_list_page .btn_entry a:after {
        top: 50%;
        right: 5px;
        transform: translateY(-50%);
        font-size: 14px;
        left: unset;
        bottom: unset;
    }

    .part_list_page .btn_entry a {
        writing-mode: unset;
        text-orientation: upright;
        padding: 0 20px 0 0;
        width: 100%;
        height: 100%;
        display: flex;
        justify-content: center;
        align-items: center;
    }

    .part_list_page .btn_entry a:hover {
        background-color: #ff7d00;
        color: #fff;
    }

    .part_list_page .en_main {
        justify-content: flex-start;
        align-items: stretch;
        flex-direction: unset;
    }

    .part_list_page .en_box_02 {
        width: 48%;
    }
}

/****r_nurse_page*****************************/
.r_nurse_page {}

/****page_info*****************************/
.page_info {
    display: flex;
    flex-wrap: wrap;
    gap: 1rem 50px;
    justify-content: center;
}

.page_info li {
    width: 100%;
    max-width: 350px;
}

.page_info li a {
    display: inline-block;

    border-radius: 10px;
    overflow: hidden;
    border: solid 1px #c6c6c6;
}

.page_info li .text {
    padding: 0.4em 1em;
    position: relative;
}

.page_info li .text :after {
    content: "▶";
    position: absolute;
    top: 50%;
    right: 5px;
    transform: translateY(-50%);
    font-size: 14px;
}

.page_info li h4 {
    color: #f380b8;
    font-size: 130%;
}

.page_info li p {}


.page_info li .img_area {}

.page_info li .img_area img {
    aspect-ratio: 16 / 8;
    object-fit: cover;

}

.page_info li.voice .img_area img {
    object-position: top center;
}

/**************************/
#zm {
    position: relative;
    overflow: hidden;
}

#zm .closebtn {
    display: none;
    position: absolute;
    bottom: .3em;
    right: .3em;
    font-size: 70%;
    font-size: 70%;
    line-height: 1.3;
    color: #fff;
    background: #66758c;
    padding: .3em 1em;
    border: #fff 1px solid;
    border-radius: 5px;
    cursor: pointer;
}

#zm .area {
    position: absolute;
    font-size: 70%;
    line-height: 1.3;
    color: #fff;
    width: 15em;
}

#zm .area h3 {
    display: table;
    margin: 0 0 1em;
    padding: .3em 1em;
    cursor: pointer;
}

#zm .area a {
    display: inline-block;
    color: #fff;
    margin: .2em 0 .2em .5em;
    padding: .3em .3em;
}

#zm .area a::after {
    content: attr(data-c);
    margin-left: .3em;
    display: inline-block;
    width: 1.5em;
    font-size: 80%;
    color: #000;
    text-align: center;
    line-height: 1.5;
    background: #fff;
    border-radius: 50%;
}

#zm .area>* {
    position: relative;
    z-index: 1;
    border: #fff 1px solid;
    border-radius: 5px;
}

/* PC用の位置と背景色 */
#zm [data-a="hk"] {
    left: 65%;
    top: 15%;
}

#zm [data-a="hk"]>* {
    background: #63aad0;
}

#zm [data-a="th"] {
    left: 65%;
    top: 35%;
}

#zm [data-a="th"]>* {
    background: #628cca;
}

#zm [data-a="kt"] {
    left: 65%;
    top: 60%;
}

#zm [data-a="kt"]>* {
    background: #e68d7c;
}

#zm [data-a="cb"] {
    left: 44%;
    top: 51%;
}

#zm [data-a="cb"]>* {
    background: #97c559;
}

#zm [data-a="kk"] {
    left: 40%;
    top: 72%;
}

#zm [data-a="kk"]>* {
    background: #dba53d;
}

#zm [data-a="cg"] {
    left: 24%;
    top: 64%;
}

#zm [data-a="cg"]>* {
    background: #a496da;
}

#zm [data-a="sk"] {
    left: 28%;
    top: 80%;
}

#zm [data-a="sk"]>* {
    background: #50c3af;
}

#zm [data-a="ky"] {
    left: 9%;
    top: 80%;
}

#zm [data-a="ky"]>* {
    background: #d586a8;
}

#zm [data-a="ot"] {
    left: 28%;
    top: 35%;
}

#zm [data-a="ot"]>* {
    background: #3f94c3;
}

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

    /* SP用の位置 */
    #zm [data-a="hk"] {
        left: 63%;
        top: 15%;
    }

    #zm [data-a="th"] {
        left: 63%;
        top: 40%;
    }

    #zm [data-a="kt"] {
        left: 67%;
        top: 60%;
    }

    #zm [data-a="cb"] {
        left: 42%;
        top: 60%;
    }

    #zm [data-a="kk"] {
        left: 38%;
        top: 71%;
    }

    #zm [data-a="cg"] {
        left: 18%;
        top: 62%;
    }

    #zm [data-a="sk"] {
        left: 28%;
        top: 79%;
    }

    #zm [data-a="ky"] {
        left: 9%;
        top: 88%;
    }

    #zm [data-a="ot"] {
        left: 28%;
        top: 35%;
    }

    #zm .area a {
        display: none;
    }

    /* 都道府県は非表示 */
    #zm.zoom h3 {
        display: none;
    }

    /* エリア名も非表示 */
    #zm.zoom .area {
        left: 30%;
        top: 30%;
    }

    /* 拡大した際には中央っぽい場所に表示 */
    /* エリアごとのアニメーションの指定 */
    #zm[data-p="hk"] .map {
        animation: zo-hk 2s linear forwards;
    }

    #zm[data-p="th"] .map {
        animation: zo-th 2s linear forwards;
    }

    #zm[data-p="kt"] .map {
        animation: zo-kt 2s linear forwards;
    }

    #zm[data-p="cb"] .map {
        animation: zo-cb 2s linear forwards;
    }

    #zm[data-p="kk"] .map {
        animation: zo-kk 2s linear forwards;
    }

    #zm[data-p="cg"] .map {
        animation: zo-cg 2s linear forwards;
    }

    #zm[data-p="sk"] .map {
        animation: zo-sk 2s linear forwards;
    }

    #zm[data-p="ky"] .map {
        animation: zo-ky 2s linear forwards;
    }

    #zm[data-p="ot"] .map {
        animation: zo-ot 2s linear forwards;
    }

    /* ズーム完了後に 都道府県名が揺れるアニメーション */
    #zm[data-p="hk"] [data-a="hk"] a {
        opacity: 0;
        display: inline-block;
        animation: disp 1s 2s forwards;
    }

    #zm[data-p="th"] [data-a="th"] a {
        opacity: 0;
        display: inline-block;
        animation: disp 1s 2s forwards;
    }

    #zm[data-p="kt"] [data-a="kt"] a {
        opacity: 0;
        display: inline-block;
        animation: disp 1s 2s forwards;
    }

    #zm[data-p="cb"] [data-a="cb"] a {
        opacity: 0;
        display: inline-block;
        animation: disp 1s 2s forwards;
    }

    #zm[data-p="kk"] [data-a="kk"] a {
        opacity: 0;
        display: inline-block;
        animation: disp 1s 2s forwards;
    }

    #zm[data-p="cg"] [data-a="cg"] a {
        opacity: 0;
        display: inline-block;
        animation: disp 1s 2s forwards;
    }

    #zm[data-p="sk"] [data-a="sk"] a {
        opacity: 0;
        display: inline-block;
        animation: disp 1s 2s forwards;
    }

    #zm[data-p="ky"] [data-a="ky"] a {
        opacity: 0;
        display: inline-block;
        animation: disp 1s 2s forwards;
    }

    #zm[data-p="ot"] [data-a="ot"] a {
        opacity: 0;
        display: inline-block;
        animation: disp 1s 2s forwards;
    }

    #zm.zoom .closebtn {
        display: block;
    }

    /* ズーム時には閉じるボタンを表示 */
}

#zm .area a[data-c="0"] {
    display: none;
}

/* 件数0の都道府県は非表示 */

/* ズームする場所と倍率の指定 */
@keyframes zo-hk {
    to {
        transform-origin: 63% 15%;
        transform: scale(3);
    }
}

@keyframes zo-th {
    to {
        transform-origin: 63% 40%;
        transform: scale(3);
    }
}

@keyframes zo-kt {
    to {
        transform-origin: 67% 60%;
        transform: scale(3);
    }
}

@keyframes zo-cb {
    to {
        transform-origin: 42% 60%;
        transform: scale(3);
    }
}

@keyframes zo-kk {
    to {
        transform-origin: 38% 71%;
        transform: scale(3);
    }
}

@keyframes zo-cg {
    to {
        transform-origin: 18% 62%;
        transform: scale(3);
    }
}

@keyframes zo-sk {
    to {
        transform-origin: 28% 79%;
        transform: scale(3);
    }
}

@keyframes zo-ky {
    to {
        transform-origin: 9% 88%;
        transform: scale(3);
    }
}

@keyframes zo-ot {
    to {
        transform-origin: 28% 35%;
        transform: scale(3);
    }
}

/* 都道府県が揺れるアニメーション */
@keyframes disp {
    0% {}

    50% {
        opacity: 1;
        transform: rotate(0deg);
    }

    70% {
        opacity: 1;
        transform: rotate(20deg);
    }

    90% {
        opacity: 1;
        transform: rotate(-20deg);
    }

    100% {
        opacity: 1;
        transform: rotate(0deg);
    }
}

@media (max-width:699px) {
    #zm.zoom .area {
        width: 80%;
        left: 10%;
        top: 50%;
        transform: translateY(-50%);
    }

    #zm .area h3 {
        font-size: 2.2vw;
        margin: 0;
    }

    #zm.zoom .area a {
        font-size: 3vw;
    }

    #zm .closebtn {
        font-size: 3vw;
    }

    #zm[data-p="hk"] [data-a="hk"] a::after {
        color: #63aad0;
    }

    #zm[data-p="th"] [data-a="th"] a::after {
        color: #628cca;
    }

    #zm[data-p="kt"] [data-a="kt"] a::after {
        color: #e68d7c;
    }

    #zm[data-p="cb"] [data-a="cb"] a::after {
        color: #97c559;
    }

    #zm[data-p="kk"] [data-a="kk"] a::after {
        color: #dba53d;
    }

    #zm[data-p="cg"] [data-a="cg"] a::after {
        color: #a496da;
    }

    #zm[data-p="sk"] [data-a="sk"] a::after {
        color: #50c3af;
    }

    #zm[data-p="ky"] [data-a="ky"] a::after {
        color: #d586a8;
    }

    #zm[data-p="ot"] [data-a="ot"] a::after {
        color: #3f94c3;
    }
}

@media (max-width:399px) {
    #zm .area h3 {
        font-size: 3vw;
    }

    #zm.zoom .area a {
        font-size: 4vw;
    }

    #zm .closebtn {
        font-size: 4vw;
    }
}

/**************************/


/* 出身校一覧テストページ（recruit07_2.html・recruit07_3.html共通） */

.univ_list h3.sh2 {
    background: #2fa6ff;
    color: #fff;
    margin-top: 3em;
}

.univ_list .pref_wrap {
    margin-bottom: 2em;
    background: #fff;
    padding: 2em 3em;
    border-radius: 2em;
}

.univ_list .pref_name {
    font-size: 150%;
    width: 100%;
    text-align: center;
    border-bottom: dashed 2px #999;
    padding-bottom: 0.8em;
    margin-bottom: 1em;
}

.univ_list .univ_name {
    margin: 0.5em 0;
}

.univ_list .univ_name:first-letter {
    color: #2584D6;
    font-size: 130%;
}

.univ_list .univ_name:not(:last-of-type):after {
    content: "/";
    margin: 0 0.8em;
}

.area_local_nav {
    display: none;
}

@media (max-width:1199px) {
    #map-container {
        display: none;
    }

    .area_local_nav {
        display: flex;
    }

    .area_local_nav li {
        margin: 0.5em;
    }

    .area_local_nav li a {
        background: #2fa6ff;
        color: #fff;
        padding: 0.2em 1em;
    }
}

@media (max-width:599px) {
    .univ_list h3.sh2 {
        text-align: left;
        padding-left: 1em;
    }

    .univ_list .pref_wrap {
        padding: 1em 1.5em;
        border-radius: 1em;
    }

    .univ_list .pref_name {
        text-align: left;
        font-size: 1.125rem;
        margin-bottom: 0.8em;
        padding-bottom: 0.5em;
    }

    .univ_list .univ_name {
        width: 100%;
        margin: 0.4em 0;
        letter-spacing: 0;
        text-align: left;
        padding-left: 1.3em;
        position: relative;
    }

    .univ_list .univ_name:before {
        content: "\025a0";
        color: #2584D6;
        position: absolute;
        left: 0;
        top: 0;
    }

    .univ_list .univ_name:first-letter {
        font-size: inherit;
        color: inherit;
    }

    .univ_list .univ_name:not(:last-of-type):after {
        display: none;
    }
}



/* 出身校一覧テストページ（recruit07_3.html） */

.rec_map {
    padding: 2em;
    border-radius: 2em;
}

#jp_map {
    max-height: 45vw;
    position: relative;
    margin: 0 auto;
    overflow: hidden;
}

#jp_map::before {
    content: '';
    display: block;
    padding: 80% 0 0;
}

#jp_map ul,
#jp_map li {
    margin: 0;
    padding: 0;
}

#jp_map a {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
    color: #333;
    border: solid 2px #fff;
    line-height: 1;
    border-radius: 5px;
}

#jp_map a:hover {
    opacity: 0.8;
}

#jp_map li a {
    height: 12%;
    width: 7%;
    position: absolute;
}

#jp_map .hokkaido a {
    background: #d5c0ff;
    border-radius: 5px 5px 5px 0;
}

#jp_map .tohoku a {
    background: #759ef4;
}

#jp_map .kanto a {
    background: #7ecfea;
}

#jp_map .chubu a {
    background: #7cdc92;
}

#jp_map .kansai a {
    background: #ffe966;
}

#jp_map .chugoku a {
    background: #ffcc66;
}

#jp_map .shikoku a {
    background: #ffbb9c;
}

#jp_map .okinawa a,
#jp_map .kyushu a {
    background: #ffbdbd;
}

#jp_map li.hokkaido a {
    top: 0;
    left: 81%;
    height: 20%;
    width: 19%;
}

#jp_map li.hokkaido a::before {
    content: '';
    display: block;
    background-color: inherit;
    width: 10%;
    height: 40%;
    right: 100%;
    bottom: 0;
    position: absolute;
    z-index: 1;
    border-radius: 5px 0 0 5px;
}

#jp_map li.aomori a {
    top: 21%;
    left: 79%;
    height: 8%;
    width: 19%;
}

#jp_map li.iwate a {
    top: 29%;
    left: 89.5%;
    height: 8%;
    width: 10.5%;
}

#jp_map li.akita a {
    top: 29%;
    left: 79%;
    height: 8%;
    width: 10.5%;
}

#jp_map li.miyagi a {
    top: 37%;
    left: 89.5%;
    height: 8%;
    width: 10.5%;
}

#jp_map li.yamagata a {
    top: 37%;
    left: 79%;
    height: 8%;
    width: 10.5%;
}

#jp_map li.fukushima a {
    top: 45%;
    left: 93%;
    height: 18%;
}

#jp_map li.ibaraki a {
    top: 63%;
    left: 93%;
    height: 18%;
}

#jp_map li.tochigi a {
    top: 57%;
    left: 86%;
}

#jp_map li.gunma a {
    top: 57%;
    left: 79%;
}

#jp_map li.saitama a {
    top: 69%;
    left: 86%;
}

#jp_map li.chiba a {
    top: 81%;
    left: 93%;
    height: 17%;
}

#jp_map li.tokyo a {
    top: 81%;
    left: 86%;
}

#jp_map li.kanagawa a {
    top: 81%;
    left: 79%;
}

#jp_map li.niigata a {
    top: 45%;
    left: 79%;
    width: 14%;
}

#jp_map li.toyama a {
    top: 45%;
    left: 72%;
}

#jp_map li.ishikawa a {
    top: 45%;
    left: 65%;
    height: 17%;
}

#jp_map li.fukui a {
    top: 50%;
    left: 58%;
}

#jp_map li.yamanashi a {
    top: 69%;
    left: 79%;
}

#jp_map li.nagano a {
    top: 57%;
    left: 72%;
    height: 24%;
}

#jp_map li.gifu a {
    top: 62%;
    left: 65%;
    height: 19%;
}

#jp_map li.shizuoka a {
    top: 81%;
    left: 72%;
}

#jp_map li.aichi a {
    top: 81%;
    left: 65%;
}

#jp_map li.mie a {
    top: 86%;
    left: 58%;
}

#jp_map li.shiga a {
    top: 62%;
    left: 58%;
}

#jp_map li.kyoto a {
    top: 56%;
    left: 51%;
    height: 18%;
}

#jp_map li.osaka a {
    top: 74%;
    left: 51%;
}

#jp_map li.hyogo a {
    top: 53%;
    left: 44%;
    height: 24%;
}

#jp_map li.nara a {
    top: 74%;
    left: 58%;
}

#jp_map li.wakayama a {
    top: 86%;
    left: 51%;
}

#jp_map li.tottori a {
    top: 53%;
    left: 37%;
}

#jp_map li.shimane a {
    top: 53%;
    left: 30%;
}

#jp_map li.okayama a {
    top: 65%;
    left: 37%;
}

#jp_map li.hiroshima a {
    top: 65%;
    left: 30%;
}

#jp_map li.yamaguchi a {
    top: 59%;
    left: 23%;
}

#jp_map li.tokushima a {
    top: 89.5%;
    left: 36.5%;
    height: 8%;
    width: 10.5%;
}

#jp_map li.kagawa a {
    top: 81.5%;
    left: 36.5%;
    height: 8%;
    width: 10.5%;
}

#jp_map li.ehime a {
    top: 81.5%;
    left: 26%;
    height: 8%;
    width: 10.5%;
}

#jp_map li.kochi a {
    top: 89.5%;
    left: 26%;
    height: 8%;
    width: 10.5%;
}

#jp_map li.fukuoka a {
    top: 55%;
    left: 15%;
}

#jp_map li.saga a {
    top: 55%;
    left: 8%;
}

#jp_map li.nagasaki a {
    top: 55%;
    left: 1%;
    height: 16%;
}

#jp_map li.kumamoto a {
    top: 67%;
    left: 8%;
}

#jp_map li.oita a {
    top: 67%;
    left: 15%;
}

#jp_map li.miyazaki a {
    top: 79%;
    left: 15%;
}

#jp_map li.kagoshima a {
    top: 79%;
    left: 8%;
}

#jp_map li.okinawa a {
    top: 88%;
    left: 0;
}

@media screen and (max-width:799px) {
    #jp_map {
        max-height: 60vw;
    }

    #jp_map::before {
        padding: 100% 0 0;
    }

    #jp_map li a {
        font-size: 12px;
        letter-spacing: 0;
        border-width: 1px;
        border-radius: 0;
    }

    #jp_map li.hokkaido a,
    #jp_map li.hokkaido a::before {
        border-radius: 0;
    }

    #jp_map li.tokushima a,
    #jp_map li.kochi a {
        top: 88%;
    }

    #jp_map li.kagawa a,
    #jp_map li.ehime a {
        top: 80%;
    }
}

@media screen and (max-width:699px) {
    #jp_map a span {
        width: 1em;
    }

    #jp_map li.hokkaido a span,
    #jp_map li.aomori a span,
    #jp_map li.akita a span,
    #jp_map li.iwate a span,
    #jp_map li.yamagata a span,
    #jp_map li.miyagi a span,
    #jp_map li.nigata a span,
    #jp_map li.ehime a span,
    #jp_map li.kagawa a span,
    #jp_map li.kochi a span,
    #jp_map li.tokushima a span {
        width: auto;
    }
}

@media screen and (max-width:499px) {
    .rec_map {
        padding: 1em;
        border-radius: 0.5em;
    }

    #jp_map {
        max-height: 70vw;
    }

    #jp_map li a {
        font-size: 10px;
    }
}

@media screen and (max-width:399px) {
    #jp_map {
        max-height: 80vw;
    }
}

.form_btn {
    position: fixed;
    bottom: 8px;
    right: 0;
    width: 100%;
    z-index: 10;
}

.form_btn a {
    background-color: #07436d;
    width: 90%;
    margin: 0 auto;
    display: block;
    color: #fff;
    text-align: center;
    padding: 0.6em 0;
    border-radius: 5px;
    border: double 4px;
}

.entry_sec {
    z-index: 20;
}

.form_btn a:hover {
    opacity: 1;
}

/*500px以上*/
@media (min-width: 500px) {
    .form_btn {
        max-width: 300px;
    }
}

/*600px以上*/
@media (min-width: 600px) {
    .form_btn {
        width: 3em;
        bottom: unset;
        top: 50%;
    }

    .form_btn a {
        writing-mode: vertical-rl;
        text-orientation: mixed;
        display: flex;
        justify-content: center;
        align-items: center;
    }
}

/*900px以上*/
@media (min-width: 900px) {
    .form_btn {}
}


/*table横スクロール*/
.title_01 {
    font-size: 1.2em;
    border: solid 1px #ccc;
    border-bottom: unset;
    text-align: left;
    padding: 0 0.7em;
    background-color: #ffcd0aa3;
}

.table_wrap {
    overflow-x: scroll;
}

.table {
    width: 100%;
    border-collapse: collapse;
    white-space: nowrap;
}

.salary {
    padding: 1rem 0;
    margin: 1rem 0;
}

.salary th,
.salary td {
    border: #ccc 1px solid;
    padding: 0.5em;
    font-size: 14px;
    background-color: #ffffffa3;
}

.salary tbody {
    border: #ccc 1px solid;
}

.salary tbody th {
    background-color: #fe915c;
}

.rigaku_page .salary tbody th {
    background-color: #296e9f;
}

.salary tbody th.t_02 {
    background-color: #fc3780;
}

.salary td.title {
    background-color: #ffe3ec;
    text-align: center;
}

.salary td.title.t_02 {
    background-color: #e3fbff;
}

.salary td.title.t_03 {
    background-color: #e4e3ff;
}

.tab_content_description tr {
    border-bottom: #ccc 1px solid;
}

.tab_content_description dt {
    font-weight: bold;
}