@charset 'UTF-8';

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

reset

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

*
{
    font-size: 100%;
    line-height: 1;

    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    margin: 0;
    padding: 0;
}

h1,
h2,
h3,
h4,
h5,
h6
{
    font-weight: inherit;
}

li
{
    list-style-type: none;
}

img
{
    vertical-align: bottom;

    border: 0;
}

table
{
    border-collapse: collapse;
}

address,
em
{
    font-style: normal;
}

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

base

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

html
{
    font-size: 500%;
}

body
{
    font-family: sans-serif;
    font-size: .16rem;

    position: relative;

    color: #000;
    background: #f4eee7;
}

p
{
    line-height: 1.7;
}

a
{
    color: inherit;
}

a:hover
{
    text-decoration: none;
}

img
{
    max-width: 100%;
    height: auto;
}

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

btn

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

.btn-navi
{
    font-size: .2rem;

    position: relative;
    z-index: 1;

    display: inline-block;
    overflow: hidden;

    padding: .4em .7em;

    text-decoration: none;

    color: #fff;
    border-radius: 6px;
}

.btn-navi span
{
    font-size: .7em;
}

.btn-navi.-kariage
{
    background: #f4a452;
}

.btn-navi.-shataku
{
    background: #aace3f;
}

.btn-navi.-jutaku
{
    background: #60b4e2;
}

.btn-navi.-chiho
{
    background: #cd88b8;
}

.btn-navi.-shogakukin
{
    background: #f9bd48;
}

.btn-navi.-shikaku
{
    background: #f1989e;
}

.btn-navi.-fukuri
{
    background: #90d0ce;
}

.btn-navi.-shisetsu
{
    background: #f09288;
}

.btn-navi.-kodomo
{
    background: #f4ae6e;
}

.btn-navi.-group
{
    background: #90b1dd;
}

.btn-navi.-kyuka
{
    background: #b3d675;
}

.btn-recruit
{
    font-size: .24rem;
    font-weight: bold;

    display: inline-block;

    padding: .8em 1em;

    text-decoration: none;

    color: #fff;
    border-radius: 6px;
    background: #ed7a9b;
}

.btn-arrow
{
    font-weight: bold;

    text-decoration: none;

    color: #ed7a9b;
}

.btn-arrow::before
{
    font-family: 'font awesome 5 free';
    font-weight: 600;

    margin: 0 .2em 0 0;

    content: '\f138';

    color: #ed7a9b;
}

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

container

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

.container
{
    max-width: 1292px;
    margin: .5rem auto 0 auto;
    padding: 6px;
}

.flow
{
    padding: .2rem 0 0 0;
}

.flow__heading
{
    font-family: fot-tsukuardgothic-std, sans-serif;
    font-size: .24rem;
    font-weight: 700;
    font-style: normal;

    margin: .2rem 0 0 0;

    -webkit-font-feature-settings: 'palt';
            font-feature-settings: 'palt';
}

.flow__sub-heading
{
    font-family: fot-tsukuardgothic-std, sans-serif;
    font-size: .18rem;
    font-weight: 700;
    font-style: normal;

    margin: .14rem 0 0 0;

    -webkit-font-feature-settings: 'palt';
            font-feature-settings: 'palt';
}

.flow__list
{
    max-width: 450px;
    margin: .1rem auto 0 auto;
}

.flow__item
{
    position: relative;

    padding: .6em;

    counter-increment: x;
    text-align: center;

    border: 1px solid #ccc;
    border-radius: 4px;
}

.flow__item + .flow__item
{
    margin: .1rem 0 0 0;
}

.flow__item::after
{
    position: absolute;
    right: 0;
    bottom: -18px;
    left: 0;

    display: block;

    width: 0;
    height: 0;
    margin: 0 auto;

    content: '';

    border: 9px solid #ccc;
    border-right-color: transparent;
    border-bottom-color: transparent;
    border-left-color: transparent;
}

.flow__item:last-of-type::after
{
    border: none;
}

.flow__column
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
        flex-direction: column;

    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    gap: .16rem;
}

.flow__column-item
{
    -webkit-box-flex: 1;
    -ms-flex: 1;
        flex: 1;
}

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

footer

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

.footer
{
    margin-top: .5rem;
    padding: 0 6px .5rem 6px;

    text-align: center;
}

.footer__address
{
    font-size: .14rem;

    margin-top: .15rem;
}

.footer__copyright
{
    font-size: .14rem;

    display: block;

    margin-top: .3rem;
}

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

logo list

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

.logo-list
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}

.logo-list__item
{
    margin: 0 1em;
}

.logo-list__item.-kaigo img
{
    max-width: 129px;
}

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

main

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

.main
{
    padding: 52px 0 2rem 0;

    text-align: center;

    background-image: url(../images/main_bg-head.svg), url(../images/main_bg-town.svg);
    background-repeat: repeat-x, repeat-x;
    background-position: center top .05rem, center bottom;
}

.main__container
{
    padding: .28rem 10px;

    background: #fff;
}

.main__logo
{
    max-width: 200px;
    margin: 0 auto;
}

.main__title
{
    font-family: fot-tsukuardgothic-std, sans-serif;
    font-size: .34rem;
    font-weight: 700;
    font-style: normal;
    line-height: 1.2;

    margin-top: .15rem;

    color: #ed7a9b;

    -webkit-font-feature-settings: 'palt';
            font-feature-settings: 'palt';
}

.main__summary
{
    line-height: 1.4;

    margin-top: .18rem;
}

.main__navigation
{
    margin-top: .3rem;
}

.main__recruit
{
    margin-top: .3rem;
}

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

navigation

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

.navigation
{
    padding: 0 4px;
}

.navigatoin__category
{
    font-family: fot-tsukuardgothic-std, sans-serif;
    font-weight: 700;
    font-style: normal;

    margin-top: .18rem;
    margin-bottom: .08rem;

    color: #603d11;

    -webkit-font-feature-settings: 'palt';
            font-feature-settings: 'palt';
}

.navigation__list
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}

.navigation__item
{
    margin: 0 .025rem .05rem .025rem;
}

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

recruit

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

.recruit
{
    margin-top: .5rem;

    text-align: center;
}

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

to top

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

.to-top
{
    font-size: .6rem;

    position: fixed;
    z-index: 30;
    right: -.7rem;
    bottom: 5%;

    display: block;

    -webkit-transition: .4s ease all;
            transition: .4s ease all;

    color: #ed7a9b;
}

.to-top::after
{
    position: absolute;
    z-index: -1;
    top: 10%;
    left: 10%;

    display: block;

    width: 80%;
    height: 80%;

    content: '';

    border-radius: 50%;
    background: #fff;
}

.to-top.is-show
{
    right: 10px;
}

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

welfare

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

.welfare
{
    margin-top: .5rem;
}

.welfare__comment
{
    text-align: center;
}

.welfare__title
{
    font-family: fot-tsukuardgothic-std, sans-serif;
    font-size: .3rem;
    font-weight: 700;
    font-style: normal;

    position: relative;
    z-index: 1;

    overflow: hidden;

    padding: .5em 12% .5em 3%;

    color: #fff;
    background: #ed7a9b;

    -webkit-font-feature-settings: 'palt';
            font-feature-settings: 'palt';
}

.welfare__title span
{
    font-size: .7em;
}

.welfare__title span.shinsotsu
{
    line-height: 1;

    display: inline-block;

    margin: 0 0 0 .3em;
    padding: .2em .4em .2em .3em;

    -webkit-transform: translate(0, -.1em);
            transform: translate(0, -.1em);

    color: #000;
    border-radius: 4px;
    background: #fff;
}

.welfare__title span.shinsotsu::before
{
    display: inline-block;

    margin: 0 .06em 0 0;

    content: '●';
    -webkit-transform: scale(.75);
            transform: scale(.75);

    color: #ed7a9b;
}

.welfare__title::after
{
    position: absolute;
    z-index: -1;
    right: 0;
    bottom: 0;

    display: block;

    content: '';
    -webkit-transform: scale(.85, 1);
            transform: scale(.85, 1);
    -webkit-transform-origin: center right;
            transform-origin: center right;

    border-right: 100px solid #f4eee7;
    border-bottom: 100px solid transparent;
}

.-kariage .welfare__title
{
    background: #f4a452;
}

.-shataku .welfare__title
{
    background: #aace3f;
}

.-jutaku .welfare__title
{
    background: #60b4e2;
}

.-chiho .welfare__title
{
    background: #cd88b8;
}

.-shogakukin .welfare__title
{
    background: #f9bd48;
}

.-shikaku .welfare__title
{
    background: #f1989e;
}

.-fukuri .welfare__title
{
    background: #90d0ce;
}

.-shisetsu .welfare__title
{
    background: #f09288;
}

.-kodomo .welfare__title
{
    background: #f4ae6e;
}

.-group .welfare__title
{
    background: #90b1dd;
}

.-kyuka .welfare__title
{
    background: #b3d675;
}

.welfare__column
{
    padding: 3%;

    border-top: 1px solid #ccc;
    background: #fff;
}

.welfare__column:first-of-type
{
    border: none;
}

.welfare__special
{
    font-family: fot-tsukuardgothic-std, sans-serif;
    font-size: .32rem;
    font-weight: 700;
    font-style: normal;
    line-height: 1.2;

    margin-bottom: .2em;

    -webkit-font-feature-settings: 'palt';
            font-feature-settings: 'palt';
}

.welfare__special span
{
    font-size: .6em;
}

.welfare__special:not(:first-of-type)
{
    margin-top: .6em;
}

.-kariage .welfare__special i
{
    color: #f4a452;
}

.-shataku .welfare__special i
{
    color: #aace3f;
}

.-jutaku .welfare__special i
{
    color: #60b4e2;
}

.-chiho .welfare__special i
{
    color: #cd88b8;
}

.-shogakukin .welfare__special i
{
    color: #f9bd48;
}

.-shikaku .welfare__special i
{
    color: #f1989e;
}

.-fukuri .welfare__special i
{
    color: #90d0ce;
}

.-shisetsu .welfare__special i
{
    color: #f09288;
}

.-kodomo .welfare__special i
{
    color: #f4ae6e;
}

.-group .welfare__special i
{
    color: #90b1dd;
}

.-kyuka .welfare__special i
{
    color: #b3d675;
}

.welfare__summary
{
    line-height: 1.68;
}

.welfare__sub-heading
{
    font-size: .14rem;

    margin-bottom: .9em;

    color: #898989;
}

.welfare__heading
{
    font-size: .2rem;
    font-weight: bold;

    margin-bottom: .3em;
}

.welfare__heading span
{
    font-size: .7em;
}

.welfare__description
{
    font-size: .14rem;
    line-height: 1.4;
}

.welfare__description.-list
{
    padding-left: 1em;

    text-indent: -1em;
}

.welfare__btn
{
    margin: .8em 0 0 0;
}

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

Display switch

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

.pc-block
{
    display: none;
}

.pc-inline
{
    display: none;
}

.sp-block
{
    display: block;
}

.sp-inline
{
    display: inline;
}

@media screen and (min-width: 769px)
{
    html
    {
        font-size: 625%;
    }

    .btn-navi::after
    {
        position: absolute;
        z-index: -1;
        top: 0;
        right: 0;
        bottom: 0;
        left: 0;

        display: block;

        width: 100px;
        height: 100px;
        margin: auto;

        content: '';
        -webkit-transition: .2s all ease 0s;
                transition: .2s all ease 0s;
        -webkit-transform: scale(0);
                transform: scale(0);
        -webkit-transform-origin: center center;
                transform-origin: center center;

        border-radius: 50%;
        background: rgba(243, 37, 37, .4);
    }

    .btn-navi:hover::after
    {
        -webkit-transition: .2s all ease 0s;
                transition: .2s all ease 0s;
        -webkit-transform: scale(4);
                transform: scale(4);
    }

    .btn-recruit:hover
    {
        background: #ff3490;
    }

    .container__2column
    {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;

        -webkit-box-pack: justify;
        -ms-flex-pack: justify;
        justify-content: space-between;
    }

    .container__column
    {
        -ms-flex-preferred-size: 47.875%;
        flex-basis: 47.875%;
    }

    .flow__column
    {
            flex-direction: row;

        -webkit-box-orient: horizontal;
        -webkit-box-direction: normal;
        -ms-flex-direction: row;
    }

    .main__container
    {
        padding: .42rem 10px;
    }

    .main__logo
    {
        max-width: none;
    }

    .main__title
    {
        margin-top: .25rem;
    }

    .main__navigation
    {
        margin-top: .5rem;
    }

    .main__recruit
    {
        margin-top: .5rem;
    }

    .welfare:not(.-short)
    {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
    }

    .welfare__info
    {
        margin-left: 4%;

        -ms-flex-preferred-size: 70%;
        flex-basis: 70%;
    }

    .-short .welfare__info
    {
        margin-top: .1rem;
        margin-left: 0;
    }

    .pc-block
    {
        display: block;
    }

    .pc-inline
    {
        display: inline;
    }

    .sp-block
    {
        display: none;
    }

    .sp-inline
    {
        display: none;
    }
}
