@charset 'UTF-8';
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@300;400;500;700&family=Noto+Sans:wght@400;500;700&family=Roboto:ital,wght@0,100;0,300;0,400;0,500;0,700;0,900;1,100;1,300;1,400;1,500;1,700;1,900&display=swap');
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
main,
nav,
section,
summary
{
    display: block;
}

html
{
    font-family: sans-serif;

        -ms-text-size-adjust: 100%;
    -webkit-text-size-adjust: 100%;
}

body
{
    margin: 0;
}

a
{
    background: transparent;
}

a:focus
{
    outline: 0;
}

a:active,
a:hover
{
    outline: 0;
}

abbr[title]
{
    border-bottom: 1px dotted;
}

b,
strong,
.strong
{
    font-weight: bold;
}

dfn,
em,
.em
{
    font-style: italic;
}

hr
{
    -webkit-box-sizing: content-box;
            box-sizing: content-box;
    height: 0;
}

p
{
        hyphens: auto; 

    -epub-hyphens: auto;
    -ms-hyphens: auto;
}

pre
{
    margin: 0;

    white-space: pre-wrap;
}

dl,
menu,
ol,
ul
{
    margin: 1em 0;
}

dd
{
    margin: 0;
}

ol,
ul
{
    padding: 0;

    list-style-type: none;
}

img
{
    border: 0;
}

svg:not(:root)
{
    overflow: hidden;
}

figure
{
    margin: 0;
}

button,
input,
select,
textarea
{
    font-family: inherit;
    font-size: 100%;

    margin: 0;
}

button,
input
{
    line-height: normal;
}

button,
select
{
    text-transform: none;
}

button,
html input[type='button'],
input[type='reset'],
input[type='submit']
{
    cursor: pointer; 

    -webkit-appearance: button;
}

input[type='submit']
{
    border: none;
}

button[disabled],
html input[disabled]
{
    cursor: default;
}

input[type='checkbox'],
input[type='radio']
{
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    padding: 0;
}

input[type='search']
{
    -webkit-box-sizing: content-box;
            box-sizing: content-box; 

    -webkit-appearance: textfield;
}

input[type='search']::-webkit-search-cancel-button,
input[type='search']::-webkit-search-decoration
{
    -webkit-appearance: none;
}

button::-moz-focus-inner,
input::-moz-focus-inner
{
    padding: 0; 

    border: 0;
}

textarea
{
    overflow: auto;

    vertical-align: top;
}

table
{
    border-spacing: 0; 
    border-collapse: collapse;
}

*
{
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
}

html
{
    position: relative;

    overflow: auto; 

    height: 100%;
}

body
{
    font-size: 100%;
    line-height: 1.0;

    position: static;

    color: #000;
    background-color: #fff;

    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

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

    vertical-align: bottom;
}

a
{
    -webkit-transition: background-color .3s ease, opacity .3s ease;
            transition: background-color .3s ease, opacity .3s ease; 
    text-decoration: none;
}

a:hover
{
    opacity: .7;
}

p
{
    font-size: 100%;
    line-height: 170%;
}

div,
p,
h1,
h2,
h3,
h4,
h5,
h6,
ul,
ol,
li,
a,
form,
input,
object,
dt,
dd,
dl,
iframe,
label
{
    margin: 0;
    padding: 0;
}

ol,
ul,
li,
dl,
dt,
dd
{
    list-style-position: outside;
    list-style-type: none; 
    list-style-image: none;
}

figure
{
    margin: 0;
}

body
{
    font-family: 'Noto Sans', 'Noto Sans JP', sans-serif;

    color: #333;
}
@media only screen and (min-width: 768px)
{
    body
    {
        background: #fbf7f7 url(../img/common/bg_pc.png) no-repeat left calc(50% + 98px) top -300px;
    }
}
@media only screen and (max-width: 767px)
{
    body
    {
        background: #fbf7f7 url(../img/common/bg_sp.png) no-repeat left 0 top -6.41026vw/100% auto;
    }
}
body.fixed
{
    position: fixed;

    width: 100%;
}

a
{
    display: block;

    color: #333;
}

svg
{
    display: block;

    aspect-ratio: 1 / 1;
}
svg path
{
    fill: currentColor;
}

@media only screen and (min-width: 768px)
{
    .pcBlock
    {
        display: block;
    }
}

@media only screen and (max-width: 767px)
{
    .pcBlock
    {
        display: none;
    }
}

@media only screen and (min-width: 768px)
{
    .pcFlex
    {
        display: Flex;
    }
}

@media only screen and (max-width: 767px)
{
    .pcFlex
    {
        display: none;
    }
}

@media only screen and (min-width: 768px)
{
    .pcInline
    {
        display: inline;
    }
}

@media only screen and (max-width: 767px)
{
    .pcInline
    {
        display: none;
    }
}

@media only screen and (min-width: 768px)
{
    .spBlock
    {
        display: none;
    }
}

@media only screen and (max-width: 767px)
{
    .spBlock
    {
        display: block;
    }
}

@media only screen and (min-width: 768px)
{
    .spFlex
    {
        display: none;
    }
}

@media only screen and (max-width: 767px)
{
    .spFlex
    {
        display: Flex;
    }
}

@media only screen and (min-width: 768px)
{
    .spInline
    {
        display: none;
    }
}

@media only screen and (max-width: 767px)
{
    .spInline
    {
        display: inline;
    }
}

.el_newTab
{
    display: inline-block;
}
@media only screen and (max-width: 767px)
{
    .el_newTab
    {
        width: 16px;
    }
}

.el_arrow
{
    display: inline-block;

    width: 24px;
}

.el_navBtn
{
    position: relative;

    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    width: 64px;
    height: 100%;
    padding: 0;

    border: none; 
    background: none;

    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}
.el_navBtn::before,
.el_navBtn::after
{
    position: absolute;

    display: block;

    width: 26px;
    height: 2px;

    content: '';
    -webkit-transition: top .3s, -webkit-transform .3s;
            transition: top .3s, -webkit-transform .3s;
            transition: top .3s, transform .3s;
            transition: top .3s, transform .3s, -webkit-transform .3s; 

    border-radius: 2px;
    background: #333;
}
.el_navBtn::before
{
    top: calc(50% - 9px);
}
.el_navBtn::after
{
    top: calc(50% + 7px);
}
.el_navBtn_text
{
    display: block;
    overflow: hidden;

    width: 26px;
    height: 2px;

    -webkit-transition: opacity .3s;
            transition: opacity .3s; 
    white-space: nowrap;
    text-indent: 100%;

    border-radius: 2px;
    background: #333;
}
.el_navBtn.is_open::before,
.el_navBtn.is_open::after
{
    top: 50%;
}
.el_navBtn.is_open::before
{
    -webkit-transform: rotate(45deg);
            transform: rotate(45deg);
}
.el_navBtn.is_open::after
{
    -webkit-transform: rotate(-45deg);
            transform: rotate(-45deg);
}
.el_navBtn.is_open .el_navBtn_text
{
    opacity: 0;
}
@media only screen and (min-width: 1024px)
{
    .el_navBtn
    {
        display: none;
    }
}

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

    -webkit-transition: color .3s, font-size .3s;
            transition: color .3s, font-size .3s; 
    letter-spacing: .03em;
}
@media only screen and (min-width: 1240px)
{
    .el_navLink
    {
        font-size: 18px;
    }
}
@media only screen and (max-width: 1023px)
{
    .el_navLink
    {
        font-size: 16px;

        padding: 14px 16px 14px 8px;
    }
}
.el_navLink:hover
{
    opacity: 1;
    color: #ef5769;
}
@media only screen and (max-width: 767px)
{
    .el_navLinkText
    {
        -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1;
    }
}

.el_navChildIcon
{
    width: 24px;

    aspect-ratio: 1 / 1;
}
@media only screen and (min-width: 1024px)
{
    .el_navChildIcon
    {
        -webkit-transform: rotate(90deg);
                transform: rotate(90deg); 

        color: inherit;
    }
    span.el_navChildIcon
    {
        display: none;
    }
}
@media only screen and (max-width: 1023px)
{
    .el_navChildIcon
    {
        position: relative;

        color: #b54a4a;
    }
    svg.el_navChildIcon
    {
        display: none;
    }
}
@media only screen and (max-width: 1023px)
{
    .el_navChildIcon_text
    {
        display: block;
        overflow: hidden;

        white-space: nowrap;
        text-indent: 100%; 

        color: #b54a4a;
    }
}
@media only screen and (max-width: 1023px)
{
    .el_navChildIcon::before,
    .el_navChildIcon::after
    {
        position: absolute;
        top: 50%;
        left: 50%;

        display: block;

        content: '';
        -webkit-transform: translate(-50%, -50%);
                transform: translate(-50%, -50%); 

        border-radius: 2px;
        background: #b54a4a;
    }
}
.el_navChildIcon::before
{
    width: 14px;
    height: 2px;
}
.el_navChildIcon::after
{
    width: 2px;
    height: 14px;

    -webkit-transition: opacity .3s;
            transition: opacity .3s;
}
.el_navChildIcon.is_open::after
{
    opacity: 0;
}

@media only screen and (min-width: 1024px)
{
    .el_navLinkIcon
    {
        display: none;
    }
}

@media only screen and (max-width: 1023px)
{
    .el_navLinkIcon
    {
        position: relative;

        width: 24px;

        color: #b54a4a; 

        aspect-ratio: 1 / 1;
    }
}

@media only screen and (min-width: 1024px)
{
    .el_navNewTabIcon
    {
        width: 16px; 

        color: inherit;
    }
}

@media only screen and (max-width: 1023px)
{
    .el_navNewTabIcon
    {
        width: 24px; 

        color: #b54a4a;
    }
}

.el_bottomBorder
{
    border-bottom: solid 1px #d6a3a3;
}
.el_bottomBorder.el_bottomBorder__circle
{
    position: relative;
}
.el_bottomBorder.el_bottomBorder__circle::after
{
    position: absolute;
    bottom: 0;
    left: 50%;

    display: block;

    content: '';
    -webkit-transform: translate(-50%, 50%);
            transform: translate(-50%, 50%); 

    border-radius: 50%;

    aspect-ratio: 1 / 1;
}
@media only screen and (min-width: 768px)
{
    .el_bottomBorder.el_bottomBorder__circle::after
    {
        width: 32px;

        background: radial-gradient(closest-side, #d6a3a3, #d6a3a3 10px, rgba(214, 163, 163, .5) 10px, rgba(214, 163, 163, .5) 100%);
    }
}
@media only screen and (max-width: 767px)
{
    .el_bottomBorder.el_bottomBorder__circle::after
    {
        width: 16px;

        background: radial-gradient(closest-side, #d6a3a3, #d6a3a3 5px, rgba(214, 163, 163, .5) 5px, rgba(214, 163, 163, .5) 100%);
    }
}
.el_bottomBorder.el_bottomBorder__blue
{
    border-bottom-color: #a4c1e0;
}
@media only screen and (min-width: 768px)
{
    .el_bottomBorder.el_bottomBorder__blue.el_bottomBorder__circle::after
    {
        width: 32px;

        background: radial-gradient(closest-side, #7fa1d7, #7fa1d7 10px, rgba(127, 161, 215, .5) 10px, rgba(127, 161, 215, .5) 100%);
    }
}
@media only screen and (max-width: 767px)
{
    .el_bottomBorder.el_bottomBorder__blue.el_bottomBorder__circle::after
    {
        width: 16px;

        background: radial-gradient(closest-side, #7fa1d7, #7fa1d7 5px, rgba(127, 161, 215, .5) 5px, rgba(127, 161, 215, .5) 100%);
    }
}
.el_bottomBorder.el_bottomBorder__purple
{
    border-bottom-color: #bdacca;
}
@media only screen and (min-width: 768px)
{
    .el_bottomBorder.el_bottomBorder__purple.el_bottomBorder__circle::after
    {
        width: 32px;

        background: radial-gradient(closest-side, #bd9cd6, #bd9cd6 10px, rgba(189, 156, 214, .5) 10px, rgba(189, 156, 214, .5) 100%);
    }
}
@media only screen and (max-width: 767px)
{
    .el_bottomBorder.el_bottomBorder__purple.el_bottomBorder__circle::after
    {
        width: 16px;

        background: radial-gradient(closest-side, #bd9cd6, #bd9cd6 5px, rgba(189, 156, 214, .5) 5px, rgba(189, 156, 214, .5) 100%);
    }
}

.el_sectionChildTitle
{
    font-weight: 400; 

    color: #b54a4a;
}
@media only screen and (min-width: 768px)
{
    .el_sectionChildTitle
    {
        font-size: 28px;
        line-height: 1.4;

        margin-bottom: 16px; 

        letter-spacing: .04em;
    }
}
@media only screen and (max-width: 767px)
{
    .el_sectionChildTitle
    {
        font-size: 22px;
        line-height: 1.3;

        margin-bottom: 8px; 

        letter-spacing: .02em;
    }
}

.el_sectionChildText
{
    line-height: 1.8;

    letter-spacing: .02em;
}
@media only screen and (min-width: 768px)
{
    .el_sectionChildText
    {
        font-size: 18px;
    }
}
@media only screen and (max-width: 767px)
{
    .el_sectionChildText
    {
        font-size: 16px;
    }
}

.el_newsDate
{
    font-family: 'Roboto', sans-serif;
    line-height: 1.4;

    display: block;

    letter-spacing: .1em; 

    color: #b54a4a;
}
@media only screen and (min-width: 768px)
{
    .el_newsDate
    {
        font-size: 18px;
    }
}
@media only screen and (max-width: 767px)
{
    .el_newsDate
    {
        font-size: 18px;
    }
}

.el_newsCategory
{
    font-size: 12px;
    line-height: 1.4;

    display: block;

    padding: 2px 10px;

    text-align: center;
    letter-spacing: .04em;

    color: #b54a4a;
    border: solid 1px #b54a4a;
    border-radius: 100px;
}

.el_newsTitle
{
    line-height: 1.4;

    display: block;

    letter-spacing: .04em;
}
@media only screen and (min-width: 768px)
{
    .el_newsTitle
    {
        font-size: 18px; 

        -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1;
    }
}
@media only screen and (max-width: 767px)
{
    .el_newsTitle
    {
        font-size: 18px; 

        width: 100%;
    }
}
.el_newsTitle.is_new::after
{
    font-family: 'Roboto', sans-serif;
    line-height: 1.6;

    display: inline-block;

    content: 'NEW';
    letter-spacing: .04em; 

    color: #b54a4a;
}
@media only screen and (min-width: 768px)
{
    .el_newsTitle.is_new::after
    {
        font-size: 14px;

        margin-left: 8px;

        -webkit-transform: translateY(-1px);
                transform: translateY(-1px);
    }
}
@media only screen and (max-width: 767px)
{
    .el_newsTitle.is_new::after
    {
        font-size: 15px;
    }
}

.el_newsArrow
{
    color: #b54a4a;
}
@media only screen and (min-width: 768px)
{
    .el_newsArrow
    {
        width: 16px;
    }
}
@media only screen and (max-width: 767px)
{
    .el_newsArrow
    {
        position: absolute;
        top: 50%;
        right: 8px;

        width: 24px;

        -webkit-transform: translateY(-50%);
                transform: translateY(-50%);
    }
}

.el_linkBtn
{
    line-height: 1.4;

    position: relative;

    width: 100%;
    padding-right: 40px;
    padding-left: 20px;

    text-align: center;
    letter-spacing: .04em;

    border: solid 1px #d9d9d9;
    border-radius: 100px;
}
.el_linkBtn_arrow
{
    position: absolute;
    top: 50%;
    right: 16px;

    -webkit-transform: translateY(-50%);
            transform: translateY(-50%); 

    color: currentColor;
}
.el_linkBtn.el_linkBtn__black
{
    color: #fff; 
    border-color: #5d5d5d;
    background: #5d5d5d;
}
.el_linkBtn.el_linkBtn__transparent
{
    border-color: currentColor; 
    background: transparent;
}

.el_note
{
    display: inline-block;

    word-break: break-all; 

    color: #777;
}
@media only screen and (min-width: 768px)
{
    .el_note
    {
        font-size: 14px;
        line-height: 1.8;
    }
}
@media only screen and (max-width: 767px)
{
    .el_note
    {
        font-size: 12px;
        line-height: 1.4;
    }
}
.el_note a
{
    display: inline;

    color: inherit;
}

.el_tabTextSize_s
{
    font-size: 14px;
}

.el_tabTextSize_xs
{
    font-size: 10px;
}

.el_arrow
{
    width: 24px;

    aspect-ratio: 1 / 1;
}

.el_changeMedicalCareTimeText
{
    line-height: 1.5;

    margin-top: 32px; 

    text-align: center;
}
@media only screen and (min-width: 768px)
{
    .el_changeMedicalCareTimeText
    {
        font-size: 18px;
    }
}
@media only screen and (max-width: 767px)
{
    .el_changeMedicalCareTimeText
    {
        font-size: 16px;
    }
}
.el_changeMedicalCareTimeText a
{
    display: inline-block;

    text-decoration: underline;
}

.bl_newsWrap
{
    -webkit-filter: drop-shadow(0 8px 18px rgba(0, 0, 0, .03));
            filter: drop-shadow(0 8px 18px rgba(0, 0, 0, .03));
}
@media only screen and (min-width: 768px)
{
    .bl_newsWrap
    {
        padding: 56px 7.8125%;
    }
}
@media only screen and (max-width: 767px)
{
    .bl_newsWrap
    {
        padding: 40px 24px;
    }
}

.bl_news
{
    margin-bottom: 40px; 

    border-top: solid 1px #d9d9d9;
}
.bl_news_item
{
    border-bottom: solid 1px #d9d9d9;
}
@media only screen and (min-width: 768px)
{
    .bl_news_item_link
    {
        padding: 25px 1.53889% 24px;
    }
}
@media only screen and (max-width: 767px)
{
    .bl_news_item_link
    {
        padding: 16px 40px 16px 16px;
    }
}

@media only screen and (min-width: 768px)
{
    .bl_newsLink
    {
        display: grid;

        grid-template-columns: auto 72px 1fr 16px;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        -webkit-column-gap: 16px;
           -moz-column-gap: 16px;
                column-gap: 16px;
    }
}

@media only screen and (max-width: 767px)
{
    .bl_newsLink
    {
        position: relative;

        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;

        padding-right: 40px; 

        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
        gap: 4px 8px;
    }
}

@media only screen and (max-width: 1023px)
{
    .bl_navMain
    {
        border-top: solid 1px #e5e5e5;
    }
}

.bl_navMain_item:hover
{
    color: #b54a4a;
}

@media only screen and (min-width: 1024px)
{
    .bl_navMain_item
    {
        -webkit-transition: color .3s;
                transition: color .3s;
    }
}

@media only screen and (max-width: 1023px)
{
    .bl_navMain_item
    {
        border-bottom: solid 1px #e5e5e5;
    }
}

.bl_navMain_item_link
{
    line-height: 1.5;

    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    cursor: pointer;
    letter-spacing: .03em; 

    color: inherit;

    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}
.bl_navMain_item_link:hover
{
    opacity: 1;
}
@media only screen and (min-width: 1024px)
{
    .bl_navMain_item_link
    {
        -webkit-column-gap: 3px;
           -moz-column-gap: 3px;
                column-gap: 3px;
    }
}
@media only screen and (min-width: 1240px)
{
    .bl_navMain_item_link
    {
        font-size: 18px;
    }
}
@media only screen and (max-width: 1023px)
{
    .bl_navMain_item_link
    {
        padding: 12px 0 12px 8px; 

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

.bl_navMain_childListWrap
{
    display: grid;

    -webkit-transition: grid-template-rows .3s;
            transition: grid-template-rows .3s;
            transition: grid-template-rows .3s, -ms-grid-rows .3s; 

    grid-template-rows: 0fr;
}
@media only screen and (min-width: 1024px)
{
    .bl_navMain_childListWrap
    {
        position: absolute;
        top: 100%;
        left: 0;

        width: 100%;
        padding: 0 30px;

        background: #fdf0f1;
    }
}
@media only screen and (min-width: 1024px)
{
    .bl_navMain_item:hover .bl_navMain_childListWrap
    {
        grid-template-rows: 1fr;
    }
}
@media only screen and (max-width: 1023px)
{
    .bl_navMain_item.is_open .bl_navMain_childListWrap
    {
        grid-template-rows: 1fr;
    }
}

.bl_navMain_childListContainer
{
    overflow: hidden;
}

@media only screen and (min-width: 1024px)
{
    .bl_navMain_childList
    {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;

        max-width: 1040px;
        margin: 0 auto; 
        padding: 30px 0;

        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
        gap: 16px 3.84615%;
    }
}

@media only screen and (max-width: 1023px)
{
    .bl_navMain_childList
    {
        border-top: solid 1px #e5e5e5;
    }
}

.bl_navMain_childList.bl_navMain_childList__information
{
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}

@media only screen and (min-width: 1024px)
{
    .bl_navMain_childList_item
    {
        width: 22.11538%;
    }
}

@media only screen and (max-width: 1023px)
{
    .bl_navMain_childList_item:not(:last-of-type)
    {
        border-bottom: solid 1px #e5e5e5;
    }
}

.bl_navMain_childList.bl_navMain_childList__information .bl_navMain_childList_item
{
    width: auto;
}

.bl_navMain_childList_item_link
{
    font-family: 'Roboto', sans-serif;
    line-height: 1.4;

    letter-spacing: .1em;
}
@media only screen and (min-width: 1024px)
{
    .bl_navMain_childList_item_link
    {
        font-size: 14px;
    }
}
@media only screen and (min-width: 1240px)
{
    .bl_navMain_childList_item_link
    {
        font-size: 16px;
    }
}
@media only screen and (max-width: 1023px)
{
    .bl_navMain_childList_item_link
    {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;

        padding: 12px 0 12px 8px; 

        -webkit-box-pack: justify;
        -ms-flex-pack: justify;
        justify-content: space-between;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        -webkit-column-gap: 4px;
           -moz-column-gap: 4px;
                column-gap: 4px;
    }
    .bl_navMain_childList_item_link::before
    {
        display: block;

        width: 7px;
        height: 1px;
        margin: 0 3px; 

        content: '';

        border-radius: 1px;
        background: #5c5c5c;
    }
}
@media only screen and (max-width: 1023px)
{
    .bl_navMain_childList_item_link_text
    {
        -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1;
    }
}

@media only screen and (max-width: 1023px)
{
    .bl_navSub_item
    {
        border-bottom: solid 1px #e5e5e5;
    }
}

.bl_navSub_item_link
{
    line-height: 1.5;

    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    letter-spacing: .03em; 

    -webkit-column-gap: 4px;
       -moz-column-gap: 4px;
            column-gap: 4px;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}
@media only screen and (min-width: 1024px)
{
    .bl_navSub_item_link
    {
        font-size: 12px; 

        color: #777;
    }
}
@media only screen and (min-width: 1240px)
{
    .bl_navSub_item_link
    {
        font-size: 14px;
    }
}
@media only screen and (max-width: 1023px)
{
    .bl_navSub_item_link
    {
        padding: 12px 0 12px 8px; 

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

@media only screen and (min-width: 1024px)
{
    .bl_navOther_item
    {
        padding: 4px 12px;

        border-left: solid 1px #d9d9d9;
    }
}

@media only screen and (max-width: 1023px)
{
    .bl_navOther_item
    {
        width: 50%;
        padding: 4px 0;
    }
}

@media only screen and (max-width: 1023px)
{
    .bl_navOther_item:nth-of-type(n + 2)
    {
        border-left: solid 1px #d9d9d9;
    }
}

.bl_navOther_item_link
{
    font-size: 12px; 

    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
        flex-direction: column;

    width: 72px;

    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    aspect-ratio: 1 / 1;
}
@media only screen and (min-width: 1024px)
{
    .bl_navOther_item_link
    {
        padding-top: 4px;
    }
}
@media only screen and (max-width: 1023px)
{
    .bl_navOther_item_link
    {
        margin: 0 auto; 
        padding-top: 5px;
    }
}

.bl_tabs
{
    position: relative;

    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    width: 100%;
}
.bl_tabs button
{
    border: none; 
    background: none;
}
.bl_tabs_leftScroll,
.bl_tabs_rightScroll
{
    position: absolute;
    z-index: 2;
    top: 0;
    bottom: 0;

    display: none;

    padding: 0;
}
@media only screen and (max-width: 767px)
{
    .bl_tabs_leftScroll,
    .bl_tabs_rightScroll
    {
        width: 52px;
    }
}
.bl_tabs_leftScroll.is_show,
.bl_tabs_rightScroll.is_show
{
    display: block;
}
.bl_tabs_leftScroll img,
.bl_tabs_rightScroll img
{
    height: 100%;
}
.bl_tabs_leftScroll
{
    left: 0;
}
.bl_tabs_leftScroll img
{
    -webkit-transform: rotate(180deg);
            transform: rotate(180deg);
}
.bl_tabs_rightScroll
{
    right: 0;
}
.bl_tabs_listWrap
{
    overflow: scroll;

    width: 100%;

    -ms-overflow-style: none;
    scrollbar-width: none;
}
.bl_tabs_listWrap::-webkit-scrollbar
{
    display: none;
}
@media only screen and (max-width: 767px)
{
    .bl_tabs_listWrap
    {
        padding: 0 8px; 

        -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1;
    }
}
.bl_tabs_list
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    min-width: -webkit-max-content;
    min-width:    -moz-max-content;
    min-width:         max-content;
    height: 100%; 

    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-column-gap: 2px;
       -moz-column-gap: 2px;
            column-gap: 2px;
}
@media only screen and (max-width: 767px)
{
    .bl_tabs_list
    {
        width: 100%;
    }
}
.bl_tabs_list_item
{
    height: 100%; 

    cursor: pointer;
}
@media only screen and (min-width: 768px)
{
    .bl_tabs_list_item
    {
        width: 19.84375%;
    }
}
@media only screen and (max-width: 767px)
{
    .bl_tabs_list_item
    {
        width: max(20%, 130px); 
        min-width: 130px;
    }
}
.bl_tabs_list_item button,
.bl_tabs_list_item a
{
    font-size: 16px;
    line-height: 1.5;

    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
        flex-direction: column;

    width: 100%;
    height: 100%;

    -webkit-transition: color .3s, background .3s;
            transition: color .3s, background .3s;
    letter-spacing: .04em;

    color: #5c5c5c;
    border-radius: 16px 16px 0 0;
    background: #fdf0f1;

    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-filter: drop-shadow(2px 0 2px rgba(0, 0, 0, .1));
            filter: drop-shadow(2px 0 2px rgba(0, 0, 0, .1));
}
@media only screen and (min-width: 768px)
{
    .bl_tabs_list_item button,
    .bl_tabs_list_item a
    {
        padding: 29px 16px 24px;
    }
}
@media only screen and (max-width: 767px)
{
    .bl_tabs_list_item button,
    .bl_tabs_list_item a
    {
        padding: 24px 16px;
    }
}
.bl_tabs_list_item button:hover,
.bl_tabs_list_item a:hover
{
    opacity: 1; 
    background: #fff;
}
.bl_tabs_list_item button.is_current,
.bl_tabs_list_item a.is_current
{
    position: relative;
    z-index: 1;

    background: #fff;
}

.bl_categoryContents
{
    position: relative;
}
.bl_categoryContents_title
{
    display: grid;

    place-items: center;
}
@media only screen and (min-width: 768px)
{
    .bl_categoryContents_title
    {
        min-height: 190px;
    }
}
@media only screen and (max-width: 767px)
{
    .bl_categoryContents_title
    {
        min-height: 125px;
    }
}
.bl_categoryContents_title_text
{
    font-weight: 400;
    line-height: 1.6;

    text-align: center; 
    letter-spacing: .05em;

    color: #b54a4a;
}
@media only screen and (min-width: 768px)
{
    .bl_categoryContents_title_text
    {
        font-size: 48px;
    }
}
@media only screen and (max-width: 767px)
{
    .bl_categoryContents_title_text
    {
        padding: 40px 0;
    }
}
@media only screen and (min-width: 768px)
{
    .bl_categoryContents_section:first-of-type
    {
        padding-top: 56px;
    }
}
@media only screen and (max-width: 767px)
{
    .bl_categoryContents_section:first-of-type
    {
        padding-top: 40px;
    }
}
@media only screen and (min-width: 768px)
{
    .bl_categoryContents_section:not(:first-of-type)
    {
        padding-top: 96px;
    }
}
@media only screen and (max-width: 767px)
{
    .bl_categoryContents_section:not(:first-of-type)
    {
        padding-top: 80px;
    }
}
@media only screen and (min-width: 768px)
{
    .bl_categoryContents_section:last-of-type
    {
        padding-bottom: 96px;
    }
}
@media only screen and (max-width: 767px)
{
    .bl_categoryContents_section:last-of-type
    {
        padding-bottom: 40px;
    }
}
@media only screen and (min-width: 768px)
{
    .bl_categoryContents_section_inner
    {
        width: 84.375%;
        margin: 0 auto;
    }
}
@media only screen and (max-width: 767px)
{
    .bl_categoryContents_section_inner
    {
        padding: 0 24px;
    }
}
.bl_categoryContents_section_title
{
    font-weight: 400;

    text-align: center;
    letter-spacing: .04em;
}
@media only screen and (min-width: 768px)
{
    .bl_categoryContents_section_title
    {
        font-size: 36px;
        line-height: 1.1;

        margin-bottom: 72px; 
        padding-bottom: 36px;
    }
}
@media only screen and (max-width: 767px)
{
    .bl_categoryContents_section_title
    {
        font-size: 28px;
        line-height: 1.2;

        margin-bottom: 56px; 
        padding-bottom: 24px;
    }
}
.bl_categoryContents_section_text
{
    line-height: 1.8;

    letter-spacing: .04em;
}
@media only screen and (min-width: 768px)
{
    .bl_categoryContents_section_text
    {
        font-size: 22px;
    }
}
@media only screen and (max-width: 767px)
{
    .bl_categoryContents_section_text
    {
        font-size: 18px;
    }
}

@media only screen and (min-width: 768px)
{
    .bl_breadCrumb
    {
        padding: 16px 24px 0;
    }
    .bl_breadCrumb_list
    {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;

        -webkit-box-pack: end;
        -ms-flex-pack: end;
        justify-content: flex-end;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        -webkit-column-gap: 4px;
           -moz-column-gap: 4px;
                column-gap: 4px;
    }
    .bl_breadCrumb_list_item
    {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;

        color: #d9d9d9; 

        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        -webkit-column-gap: 4px;
           -moz-column-gap: 4px;
                column-gap: 4px;
    }
    .bl_breadCrumb_list_item_link
    {
        color: #5d5d5d;
    }
    .bl_breadCrumb_list_item_arrow
    {
        width: 16px;
    }
}

@media only screen and (min-width: 768px)
{
    .bl_descriptionList_block:nth-of-type(n + 2)
    {
        margin-top: 24px;
    }
}

@media only screen and (max-width: 767px)
{
    .bl_descriptionList_block:nth-of-type(n + 2)
    {
        margin-top: 16px;
    }
}

.bl_descriptionList_title
{
    letter-spacing: .02em; 

    color: #b54a4a;
}
@media only screen and (min-width: 768px)
{
    .bl_descriptionList_title
    {
        font-size: 28px;
        line-height: 1;

        margin-bottom: 16px;
    }
}
@media only screen and (max-width: 767px)
{
    .bl_descriptionList_title
    {
        font-size: 22px;
        line-height: 1.3;

        margin-bottom: 8px;
    }
}

.bl_descriptionList_data
{
    line-height: 1.8;

    letter-spacing: .02em;
}
@media only screen and (min-width: 768px)
{
    .bl_descriptionList_data
    {
        font-size: 18px;
    }
}
@media only screen and (max-width: 767px)
{
    .bl_descriptionList_data
    {
        font-size: 16px;
    }
}

.bl_list_item
{
    letter-spacing: .02em;
}
@media only screen and (min-width: 768px)
{
    .bl_list_item
    {
        font-size: 18px;
        line-height: 1.5;
    }
}
@media only screen and (max-width: 767px)
{
    .bl_list_item
    {
        font-size: 16px;
        line-height: 1.8;
    }
}
@media only screen and (min-width: 768px)
{
    .bl_list_item:nth-of-type(n + 2)
    {
        margin-top: .88889em;
    }
}
@media only screen and (max-width: 767px)
{
    .bl_list_item:nth-of-type(n + 2)
    {
        margin-top: .625em;
    }
}
.bl_list_item.bl_list_item__mt0
{
    margin-top: 0;
}
.bl_list.bl_list__disc .bl_list_item
{
    list-style: disc inside;
}
@media only screen and (min-width: 768px)
{
    .bl_list.bl_list__disc .bl_list_item
    {
        margin-left: 1.25em; 

        text-indent: -1.25em;
    }
}
@media only screen and (max-width: 767px)
{
    .bl_list.bl_list__disc .bl_list_item
    {
        margin-left: 1.4em; 

        text-indent: -1.4em;
    }
}
.bl_list.bl_list__num
{
    counter-reset: count;
}
.bl_list.bl_list__num .bl_list_item
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    list-style: decimal inside; 

    counter-increment: count 1;
}
.bl_list.bl_list__num .bl_list_item::before
{
    display: block;

    width: 1em;
    padding-right: .5em; 

    content: counter(count) '.';
    text-align: right;

    -ms-flex-negative: 0;
    flex-shrink: 0;
}
.bl_list.bl_list__num:has(:nth-of-type(10)) .bl_list_item::before
{
    width: 1.3em;
    margin-left: -.3em;
}

.bl_table
{
    border-top: solid 1px #d9d9d9;
}
.bl_table tr
{
    border-bottom: solid 1px #d9d9d9;
}

@media only screen and (min-width: 768px)
{
    .bl_inpageLinkWrap
    {
        width: 84.375%;
        margin: 0 auto;
    }
}

@media only screen and (max-width: 767px)
{
    .bl_inpageLinkWrap
    {
        padding: 0 24px;
    }
}

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

    border-radius: 16px; 
    background: #faf9fb;

    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
}
@media only screen and (min-width: 768px)
{
    .bl_inpageLink
    {
        padding: 24px; 

        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        gap: 24px;
    }
}
@media only screen and (max-width: 767px)
{
    .bl_inpageLink
    {
        padding: 16px; 

        -webkit-box-pack: justify;
        -ms-flex-pack: justify;
        justify-content: space-between;
        gap: 16px;
    }
}
@media only screen and (max-width: 767px)
{
    .bl_inpageLink_item
    {
        width: calc(50% - (16px / 2));
    }
}
.bl_inpageLink_item_link
{
    font-size: 14px; 
    line-height: 1.4;

    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    letter-spacing: .02em;

    -webkit-column-gap: 4px;
       -moz-column-gap: 4px;
            column-gap: 4px;
}
@media only screen and (min-width: 768px)
{
    .bl_inpageLink_item_link
    {
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
    }
}
@media only screen and (max-width: 767px)
{
    .bl_inpageLink_item_link
    {
        -webkit-box-align: start;
        -ms-flex-align: start;
        align-items: flex-start;
    }
}
.bl_inpageLink_item_link_icon
{
    width: 16px;

    color: #b54a4a;
}
@media only screen and (max-width: 767px)
{
    .bl_inpageLink_item_link_icon
    {
        margin-top: 2px;
    }
}
.bl_inpageLink_item_link_icon.bl_inpageLink_item_link_icon__blue
{
    color: #5273a7;
}
.bl_inpageLink_item_link_icon.bl_inpageLink_item_link_icon__purpleRehabili
{
    color: #6b6bb3;
}
.bl_inpageLink_item_link_icon.bl_inpageLink_item_link_icon__purpleDaycare
{
    color: #816b91;
}
.bl_inpageLink_item_link_text
{
    -webkit-box-flex: 1;
    -ms-flex: 1;
        flex: 1;
}

.bl_todayScheduleDateWrap
{
    text-align: center;
}

.bl_todayScheduleDate
{
    font-family: 'Roboto', sans-serif;
    font-size: 20px;
    font-weight: 600;
    line-height: 1;
}
.bl_todayScheduleDate span
{
    display: inline-block;

    margin: 0 4px;
}
.bl_todayScheduleDate_fontLarge
{
    font-size: 32px;
    line-height: .82;
}

.bl_todayScheduleListWrap
{
    position: relative; 

    overflow: hidden;
}
@media only screen and (min-width: 768px)
{
    .bl_todayScheduleListWrap
    {
        padding-top: 12px;
    }
}

@media only screen and (max-width: 767px)
{
    .bl_todayScheduleList
    {
        margin-top: 32px;
    }
}

.bl_todayScheduleTableWrap
{
    overflow: hidden;

    border-radius: 10px 10px 0 0;
}

.bl_todayScheduleTable
{
    width: 100%;
    height: 100%;
}
.bl_todayScheduleTable_head
{
    height: 100%;
}
.bl_todayScheduleTable_head_title
{
    height: 100%;
}
@media only screen and (min-width: 768px)
{
    .bl_todayScheduleTable_head_title
    {
        width: 32.77778%;
    }
}
@media only screen and (max-width: 767px)
{
    .bl_todayScheduleTable_head_title
    {
        width: 32.55263%;
    }
}
.bl_todayScheduleTable_head_title_text
{
    font-weight: normal;
    line-height: 1.4;

    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    height: 100%;
    margin: 0 2px; 

    text-align: center;
    letter-spacing: .02em;

    color: #fff;
    background: #d6a3a3;

    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -ms-flex-line-pack: center;
    align-content: center;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
}
@media only screen and (min-width: 768px)
{
    .bl_todayScheduleTable_head_title_text
    {
        font-size: 20px;

        padding: 22px 24px;
    }
}
@media only screen and (max-width: 767px)
{
    .bl_todayScheduleTable_head_title_text
    {
        font-size: 16px;

            flex-direction: column;

        padding: 19px 4px; 

        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
    }
}
@media only screen and (min-width: 768px)
{
    .bl_todayScheduleTable_head_title:first-of-type .bl_todayScheduleTable_head_title_text
    {
        margin: 0 3px 0 0;
    }
}
@media only screen and (max-width: 767px)
{
    .bl_todayScheduleTable_head_title:first-of-type .bl_todayScheduleTable_head_title_text
    {
        margin: 0 2px 0 0;
    }
}
@media only screen and (min-width: 768px)
{
    .bl_todayScheduleTable_head_title:last-of-type .bl_todayScheduleTable_head_title_text
    {
        margin: 0 0 0 3px;
    }
}
@media only screen and (max-width: 767px)
{
    .bl_todayScheduleTable_head_title:last-of-type .bl_todayScheduleTable_head_title_text
    {
        margin: 0 0 0 2px;
    }
}
@media only screen and (max-width: 767px)
{
    .bl_todayScheduleTable_head_title_text span
    {
        font-size: 11px;

        display: block;

        text-align: center;
    }
}
.bl_todayScheduleTable_body
{
    position: relative;

    height: 100%;
}
.bl_todayScheduleTable_body.is_noSupported::after
{
    font-weight: 700;

    position: absolute;

    display: grid;

    content: '本日は休診日です';
    letter-spacing: .04em;

    color: #fff;
    background: rgba(0, 0, 0, .7); 

    place-items: center;
}
@media only screen and (min-width: 768px)
{
    .bl_todayScheduleTable_body.is_noSupported::after
    {
        font-size: 20px; 

        inset: 0 0 0 calc(100% - (32.77778% * 2) - 10px);
    }
}
@media only screen and (max-width: 767px)
{
    .bl_todayScheduleTable_body.is_noSupported::after
    {
        font-size: 16px; 

        inset: 0 0 0 calc(100% - (32.55263% * 2) - 8px);
    }
}
.bl_todayScheduleTable_body_data
{
    height: 100%;
}
.bl_todayScheduleTable_body_data_text
{
    font-weight: normal;
    line-height: 1.4;

    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    height: 100%;
    margin: 0 2px 0; 

    letter-spacing: .04em;

    border-bottom: solid 1px #d9d9d9;

    -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;
}
@media only screen and (min-width: 768px)
{
    .bl_todayScheduleTable_body_data_text
    {
        font-size: 18px;

        padding: 17.5px 42px; 

        -webkit-column-gap: 8px;
           -moz-column-gap: 8px;
                column-gap: 8px;
    }
}
@media only screen and (max-width: 767px)
{
    .bl_todayScheduleTable_body_data_text
    {
        font-size: 14px;

            flex-direction: column;

        padding: 24px 8px; 

        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        row-gap: 4px;
    }
}
@media only screen and (min-width: 768px)
{
    .bl_todayScheduleTable_body_data:first-of-type .bl_todayScheduleTable_body_data_text
    {
        margin: 0 3px 0 0;
    }
}
@media only screen and (max-width: 767px)
{
    .bl_todayScheduleTable_body_data:first-of-type .bl_todayScheduleTable_body_data_text
    {
        margin: 0 2px 0 0;
    }
}
@media only screen and (min-width: 768px)
{
    .bl_todayScheduleTable_body_data:last-of-type .bl_todayScheduleTable_body_data_text
    {
        margin: 0 0 0 3px;
    }
}
@media only screen and (max-width: 767px)
{
    .bl_todayScheduleTable_body_data:last-of-type .bl_todayScheduleTable_body_data_text
    {
        margin: 0 0 0 2px;
    }
}
.bl_todayScheduleTable_body_data.bl_todayScheduleTable_body_data__subject .bl_todayScheduleTable_body_data_text
{
    background: #fdf0f1;
}
@media only screen and (min-width: 768px)
{
    .bl_todayScheduleTable_body_data.bl_todayScheduleTable_body_data__subject .bl_todayScheduleTable_body_data_text
    {
        -webkit-box-pack: start;
        -ms-flex-pack: start;
        justify-content: flex-start;
    }
}
.bl_todayScheduleTable_body_data_text span
{
    line-height: 1.8;

    letter-spacing: .02em;
}

@media only screen and (max-width: 767px)
{
    .bl_todaySchedule_buttonWrap
    {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;

        margin-top: 16px; 

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

.bl_todaySchedule_button
{
    top: 0;

    width: auto;
    height: auto;
    margin-top: 0;

    -webkit-transition: opacity .3s;
            transition: opacity .3s;
}
@media only screen and (max-width: 767px)
{
    .bl_todaySchedule_button
    {
        position: static;
    }
}
.bl_todaySchedule_button:hover
{
    opacity: .7;
}
.bl_todaySchedule_button::after
{
    content: none;
}

.bl_todaySchedule_button_text
{
    line-height: 1.4; 

    color: #333;
}
@media only screen and (min-width: 768px)
{
    .bl_todaySchedule_button_text
    {
        font-size: 18px;

        padding-top: 12px;
        padding-bottom: 12px;
    }
}
@media only screen and (max-width: 767px)
{
    .bl_todaySchedule_button_text
    {
        font-size: 14px;

        padding-top: 10px;
        padding-bottom: 10px;
    }
}

@media only screen and (min-width: 768px)
{
    .bl_todaySchedule_button svg.bl_todaySchedule_button_arrow
    {
        width: 24px;
    }
}

@media only screen and (max-width: 767px)
{
    .bl_todaySchedule_button svg.bl_todaySchedule_button_arrow
    {
        width: 16px;
    }
}

.bl_todaySchedule_button.swiper-button-prev
{
    right: calc(50% + 146px);
    left: auto;
}
.bl_todaySchedule_button.swiper-button-prev .bl_todaySchedule_button_text
{
    padding-right: 20px;
    padding-left: 40px;
}
.bl_todaySchedule_button.swiper-button-prev .bl_todaySchedule_button_arrow
{
    right: auto;
    left: 16px;

    -webkit-transform: translateY(-50%) rotate(180deg);
            transform: translateY(-50%) rotate(180deg);
}

.bl_todaySchedule_button.swiper-button-next
{
    right: auto;
    left: calc(50% + 146px);
}

.bl_varietyItem:nth-of-type(n + 2)
{
    margin-top: 32px;
}

.bl_varietyItem_title
{
    font-weight: 400;

    padding: 8px 24px;

    color: #fff;
    background: #d6a3a3;
}
@media only screen and (min-width: 768px)
{
    .bl_varietyItem_title
    {
        font-size: 28px;
        line-height: 1.6;

        letter-spacing: .04em;

        border-radius: 16px 16px 0 0;
    }
}
@media only screen and (max-width: 767px)
{
    .bl_varietyItem_title
    {
        font-size: 18px;
        line-height: 1.8;

        letter-spacing: .02em;

        border-radius: 8px 8px 0 0;
    }
}
.bl_varietyItem_title.js_accTrigger
{
    position: relative; 

    cursor: pointer;
}
.bl_varietyItem_title.js_accTrigger .bl_varietyItem_title_arrow
{
    position: absolute;
    top: 50%;

    translate: 0 -50%;
    rotate: 90deg;
}
@media only screen and (min-width: 768px)
{
    .bl_varietyItem_title.js_accTrigger .bl_varietyItem_title_arrow
    {
        right: 24px;

        width: 40px;
    }
}
@media only screen and (max-width: 767px)
{
    .bl_varietyItem_title.js_accTrigger .bl_varietyItem_title_arrow
    {
        right: 16px;

        width: 24px;
    }
}
.bl_varietyItem_title.js_accTrigger.is_open .bl_varietyItem_title_arrow
{
    rotate: -90deg;
}

.bl_varietyItem_contentsWrap.js_accEffect
{
    display: grid;

    -webkit-transition: grid-template-rows .3s;
            transition: grid-template-rows .3s;
            transition: grid-template-rows .3s, -ms-grid-rows .3s; 

    grid-template-rows: 0fr;
}
.bl_varietyItem_contentsWrap.js_accEffect.is_open
{
    grid-template-rows: 1fr;
}

.bl_varietyItem_contents
{
    font-weight: 400;
    line-height: 1.8;

    letter-spacing: .02em;

    border: solid 1px #d6a3a3;
}
@media only screen and (min-width: 768px)
{
    .bl_varietyItem_contents
    {
        font-size: 18px;

        padding: 24px 4.25926% 46px;

        border-radius: 0 0 16px 16px;
    }
}
@media only screen and (max-width: 767px)
{
    .bl_varietyItem_contents
    {
        font-size: 16px;

        padding: 24px 24px 46px;

        border-radius: 0 0 8px 8px;
    }
}
.bl_varietyItem_contentsWrap.js_accEffect .bl_varietyItem_contentsContainer
{
    overflow: hidden;
}

.bl_varietyItem_contents_imgs
{
    margin-bottom: 24px;
}
.bl_varietyItem_contents_imgs_list
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
}
@media only screen and (min-width: 768px)
{
    .bl_varietyItem_contents_imgs_list
    {
        -webkit-box-pack: justify;
        -ms-flex-pack: justify;
        justify-content: space-between;
        -webkit-column-gap: 4.04858%;
           -moz-column-gap: 4.04858%;
                column-gap: 4.04858%;
    }
}
@media only screen and (max-width: 767px)
{
    .bl_varietyItem_contents_imgs_list
    {
            flex-direction: column;

        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        row-gap: 16px;
    }
}
.bl_varietyItem_contents_imgs_list_item img
{
    width: 100%;
}
.bl_varietyItem_contents_imgs_caption
{
    line-height: 1.4;

    text-align: center;
}
@media only screen and (min-width: 768px)
{
    .bl_varietyItem_contents_imgs_caption
    {
        font-size: 16px;

        margin-top: 24px; 

        letter-spacing: .04em;
    }
}
@media only screen and (max-width: 767px)
{
    .bl_varietyItem_contents_imgs_caption
    {
        font-size: 12px;

        margin-top: 16px;
    }
}

@media only screen and (min-width: 768px)
{
    .bl_varietyItem_contents_imgText
    {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;

        -webkit-box-pack: justify;
        -ms-flex-pack: justify;
        justify-content: space-between;
        -webkit-column-gap: 2.42915%;
           -moz-column-gap: 2.42915%;
                column-gap: 2.42915%;
    }
}

@media only screen and (min-width: 768px)
{
    .bl_varietyItem_contents_imgText.bl_varietyItem_contents_imgText__reverse
    {
            flex-direction: row-reverse; 

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

@media only screen and (min-width: 768px)
{
    .bl_varietyItem_contents_imgText:not(:first-child)
    {
        margin-top: 40px;
    }
}

@media only screen and (max-width: 767px)
{
    .bl_varietyItem_contents_imgText:not(:first-child)
    {
        margin-top: 24px;
    }
}

@media only screen and (min-width: 768px)
{
    .bl_varietyItem_contents_imgText_img
    {
        width: 42.20648%;
    }
}

@media only screen and (max-width: 767px)
{
    .bl_varietyItem_contents_imgText_img
    {
        width: 100%;
    }
}

.bl_varietyItem_contents_imgText_img img
{
    width: 100%;
}

.bl_varietyItem_contents_imgText_text
{
    -webkit-box-flex: 1;
    -ms-flex: 1;
        flex: 1;
}
@media only screen and (max-width: 767px)
{
    .bl_varietyItem_contents_imgText_text
    {
        margin-top: 24px;
    }
}

.bl_varietyItem_contents_imgCaption
{
    margin-bottom: 24px;
}
.bl_varietyItem_contents_imgCaption_caption
{
    line-height: 1.4;

    text-align: center;
}
@media only screen and (min-width: 768px)
{
    .bl_varietyItem_contents_imgCaption_caption
    {
        font-size: 1.4;

        margin-top: 24px; 

        letter-spacing: .04em;
    }
}
@media only screen and (max-width: 767px)
{
    .bl_varietyItem_contents_imgCaption_caption
    {
        font-size: 12px;

        margin-top: 16px;
    }
}

.bl_varietyItem_contents_img
{
    width: 100%;
}
.bl_varietyItem_contents_img:not(:first-child)
{
    margin-top: 24px;
}
.bl_varietyItem_contents_img img
{
    width: 100%;
}

.bl_varietyItem_contents_btnWrap
{
    margin: 24px auto 0;
}
@media only screen and (min-width: 768px)
{
    .bl_varietyItem_contents_btnWrap
    {
        width: -webkit-fit-content;
        width:    -moz-fit-content;
        width:         fit-content;
    }
}
@media only screen and (max-width: 767px)
{
    .bl_varietyItem_contents_btnWrap
    {
        width: min(100%, 305px);
    }
}

@media only screen and (min-width: 768px)
{
    .bl_varietyItem_contents_btn
    {
        padding: 23px 60px;
    }
}

@media only screen and (max-width: 767px)
{
    .bl_varietyItem_contents_btn
    {
        padding: 6px 36px;
    }
}

.bl_mainImgSlider
{
    position: relative; 

    overflow: hidden;
}
@media only screen and (min-width: 768px)
{
    .bl_mainImgSlider
    {
        width: 84.375%;
        margin: 56px auto 0; 
        padding-bottom: 26px;
    }
}
@media only screen and (max-width: 767px)
{
    .bl_mainImgSlider
    {
        margin-top: 24px; 
        padding-bottom: 16px;
    }
}
@media only screen and (min-width: 768px)
{
    .bl_mainImgSlider_list_item
    {
        overflow: hidden;

        border-radius: 16px;
    }
}
.bl_mainImgSlider_list_item img
{
    width: 100%;
}
.bl_mainImgSlider_pagination
{
    top: unset !important;
    bottom: 0 !important;
    left: unset !important;

    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-column-gap: 10px;
       -moz-column-gap: 10px;
            column-gap: 10px;
}
.bl_mainImgSlider_pagination .swiper-pagination-bullet
{
    height: auto !important;
    margin: 0 !important; 

    opacity: 1;
    background: #d9d9d9;

    aspect-ratio: 1 / 1;
}
@media only screen and (min-width: 768px)
{
    .bl_mainImgSlider_pagination .swiper-pagination-bullet
    {
        width: 10px;
    }
}
@media only screen and (max-width: 767px)
{
    .bl_mainImgSlider_pagination .swiper-pagination-bullet
    {
        width: 8px;
    }
}
.bl_mainImgSlider_pagination .swiper-pagination-bullet.swiper-pagination-bullet-active
{
    background: #d6a3a3;
}

.bl_modal
{
    position: fixed;
    z-index: 10010; 

    display: none;

    inset: 0;
}
.bl_modal.is_show
{
    display: block;
}
@media only screen and (min-width: 768px)
{
    .bl_modal
    {
        padding: min(20.1vh, 201px) 0 min(15.633vh, 156.33px);
    }
}
@media only screen and (max-width: 767px)
{
    .bl_modal
    {
        padding: 36px 24px;
    }
}
.bl_modal_overlay
{
    position: absolute;

    background: rgba(0, 0, 0, .2); 

    inset: 0;
}
.bl_modal_inner
{
    position: relative;
    z-index: 10010;
    top: 50%;

    overflow: auto;

    max-height: 100%;
    margin: 0 auto;

    background: #fff;

    -ms-overflow-style: none;
    scrollbar-width: none;
    translate: 0 -50%;
}
@media only screen and (min-width: 768px)
{
    .bl_modal_inner
    {
        width: min(75%, 1080px);

        border-radius: 16px;
    }
}
@media only screen and (max-width: 767px)
{
    .bl_modal_inner
    {
        border-radius: 8px;
    }
}
.bl_modal_inner::-webkit-scrollbar
{
    display: none;
}
.bl_modal_contents_closeBtnWrap
{
    width: 164px;
}
@media only screen and (min-width: 768px)
{
    .bl_modal_contents_closeBtnWrap
    {
        margin: 56px auto 0;
    }
}
@media only screen and (max-width: 767px)
{
    .bl_modal_contents_closeBtnWrap
    {
        margin: 40px auto 0;
    }
}
.bl_modal_contents_closeBtn
{
    -webkit-transition: opacity .3s;
            transition: opacity .3s;
}
@media only screen and (min-width: 768px)
{
    .bl_modal_contents_closeBtn
    {
        padding: 12px 40px;
    }
}
@media only screen and (max-width: 767px)
{
    .bl_modal_contents_closeBtn
    {
        padding: 7px 28px;
    }
}
.bl_modal_contents_closeBtn:hover
{
    opacity: .7;
}
@media only screen and (max-width: 767px)
{
    .bl_modal_contents_closeBtn_arrow
    {
        width: 16px;
    }
}

.bl_pageNation
{
    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;
}
@media only screen and (min-width: 768px)
{
    .bl_pageNation
    {
        -webkit-column-gap: 16px;
           -moz-column-gap: 16px;
                column-gap: 16px;
    }
}
@media only screen and (max-width: 767px)
{
    .bl_pageNation
    {
        -webkit-column-gap: min(2.05128vw, 8px);
           -moz-column-gap: min(2.05128vw, 8px);
                column-gap: min(2.05128vw, 8px);
    }
}
.bl_pageNation_item
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    width: 40px;

    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    aspect-ratio: 1 / 1;
}
.bl_pageNation_item_link
{
    font-family: 'Roboto', sans-serif;
    font-size: 16px;
    font-weight: 500;

    position: relative;

    display: grid;

    width: 100%;
    height: 100%;

    -webkit-transition: color .3s, background .3s;
            transition: color .3s, background .3s; 
    letter-spacing: .3px;

    border-radius: 50%;

    place-items: center;
}
.bl_pageNation_item_link.bl_pageNation_item_link__prev
{
    -webkit-transform: rotate(180deg);
            transform: rotate(180deg);
}
.bl_pageNation_item_link:hover,
.bl_pageNation_item_link.is_current
{
    opacity: 1; 
    color: #fff;
    background: #d6a3a3;
}
.bl_pageNation_item_link:hover svg,
.bl_pageNation_item_link.is_current svg
{
    color: currentColor;
}
.bl_pageNation_item_span
{
    position: relative;

    display: block;

    width: 4px;

    border-radius: 50%;
    background: #000; 

    aspect-ratio: 1 / 1;
}
.bl_pageNation_item_span::before,
.bl_pageNation_item_span::after
{
    position: absolute;
    top: 0;

    display: block;

    width: 4px;

    content: '';

    border-radius: 50%;
    background: #000; 

    aspect-ratio: 1 / 1;
}
.bl_pageNation_item_span::before
{
    left: 8px;
}
.bl_pageNation_item_span::after
{
    right: 8px;
}

.ly_header
{
    position: sticky;
    z-index: 10000;
    top: 0;

    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    background: #fff;
    -webkit-box-shadow: 0 8px 18px 0 rgba(0, 0, 0, .03);
            box-shadow: 0 8px 18px 0 rgba(0, 0, 0, .03); 

    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}
@media only screen and (min-width: 1024px)
{
    .ly_header
    {
        height: 100px;

        -webkit-transition: height .3s;
                transition: height .3s;
    }
}
@media only screen and (max-width: 1023px)
{
    .ly_header
    {
        height: 64px;
    }
}
@media only screen and (min-width: 1024px)
{
    .ly_header_logo
    {
        padding: 0 20px;
    }
}
@media only screen and (max-width: 1023px)
{
    .ly_header_logo
    {
        padding: 0 16px;
    }
}
@media only screen and (min-width: 1024px)
{
    .ly_header_logo_img
    {
        width: 180px;

        -webkit-transition: width .3s;
                transition: width .3s;
    }
}
@media only screen and (max-width: 1023px)
{
    .ly_header_logo_img
    {
        width: 162px;
    }
}

@media only screen and (min-width: 1024px)
{
    .ly_nav
    {
        height: 100%;
    }
}

@media only screen and (min-width: 1240px)
{
    .ly_nav
    {
        width: 839px;
    }
}

@media only screen and (max-width: 1023px)
{
    .ly_nav
    {
        position: fixed;
        top: 64px;
        right: 0;
        bottom: 0;
        left: 100%;

        overflow: auto;

        width: 100%;
        height: calc(100% - 64px);
        padding: 16px 24px 24px;

        -webkit-transition: left .3s;
                transition: left .3s; 

        background: #fff;
    }
}

@media only screen and (max-width: 1023px)
{
    .ly_nav.is_open
    {
        left: 0;
    }
}

@media only screen and (min-width: 1024px)
{
    .ly_nav_inner
    {
        display: grid;

        height: 100%; 

        grid-template: 'sub other' auto 'main other' auto / 1fr 194px;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        gap: 10px 40px;
    }
}

@media only screen and (min-width: 1240px)
{
    .ly_nav_inner
    {
        -webkit-column-gap: 30px;
           -moz-column-gap: 30px;
                column-gap: 30px;
    }
}

@media only screen and (max-width: 1023px)
{
    .ly_nav_inner
    {
        min-height: 100%;
    }
}

@media only screen and (min-width: 1024px)
{
    .ly_nav_main
    {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;

        height: 100%; 

        grid-area: main;
        -webkit-box-pack: end;
        -ms-flex-pack: end;
        justify-content: flex-end;
        -webkit-column-gap: 30px;
           -moz-column-gap: 30px;
                column-gap: 30px;
    }
}

@media only screen and (min-width: 1240px)
{
    .ly_nav_main
    {
        -webkit-column-gap: 40px;
           -moz-column-gap: 40px;
                column-gap: 40px;
    }
}

@media only screen and (min-width: 1024px)
{
    .ly_nav_sub
    {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;

        margin-top: auto; 

        grid-area: sub;
        -webkit-box-pack: end;
        -ms-flex-pack: end;
        justify-content: flex-end;
        -webkit-column-gap: 24px;
           -moz-column-gap: 24px;
                column-gap: 24px;
    }
}

.ly_nav_other
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
}
@media only screen and (min-width: 1024px)
{
    .ly_nav_other
    {
        grid-area: other;
    }
}
@media only screen and (max-width: 1023px)
{
    .ly_nav_other
    {
        margin-top: 24px;
    }
}

.ly_pageTitle
{
    position: relative;
}
.ly_pageTitle::after
{
    position: absolute;
    left: 50%;

    display: block;

    content: '';
    -webkit-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%); 

    border-radius: 50%;

    aspect-ratio: 1 / 1;
}
@media only screen and (min-width: 768px)
{
    .ly_pageTitle::after
    {
        top: 50%;

        width: 480px;
    }
}
@media only screen and (max-width: 767px)
{
    .ly_pageTitle::after
    {
        top: calc(50% - (67.2px - 45.8px));

        width: 288px;
    }
}
@media only screen and (min-width: 768px)
{
    .ly_pageTitle.ly_pageTitle__pink::after
    {
        background-image: radial-gradient(closest-side, #d6a3a3, #d6a3a3 190px, rgba(214, 163, 163, .5) 190px, rgba(214, 163, 163, .5) 100%);
    }
}
@media only screen and (max-width: 767px)
{
    .ly_pageTitle.ly_pageTitle__pink::after
    {
        background-image: radial-gradient(closest-side, #d6a3a3, #d6a3a3 114px, rgba(214, 163, 163, .5) 114px, rgba(214, 163, 163, .5) 100%);
    }
}
@media only screen and (min-width: 768px)
{
    .ly_pageTitle.ly_pageTitle__blue::after
    {
        background-image: radial-gradient(closest-side, #7fa1d7, #7fa1d7 190px, rgba(127, 161, 215, .5) 190px, rgba(127, 161, 215, .5) 100%);
    }
}
@media only screen and (max-width: 767px)
{
    .ly_pageTitle.ly_pageTitle__blue::after
    {
        background-image: radial-gradient(closest-side, #7fa1d7, #7fa1d7 114px, rgba(127, 161, 215, .5) 114px, rgba(127, 161, 215, .5) 100%);
    }
}
@media only screen and (min-width: 768px)
{
    .ly_pageTitle.ly_pageTitle__purpleRehabili::after
    {
        background-image: radial-gradient(closest-side, #a3a3da, #a3a3da 190px, rgba(163, 163, 218, .5) 190px, rgba(163, 163, 218, .5) 100%);
    }
}
@media only screen and (max-width: 767px)
{
    .ly_pageTitle.ly_pageTitle__purpleRehabili::after
    {
        background-image: radial-gradient(closest-side, #a3a3da, #a3a3da 114px, rgba(163, 163, 218, .5) 114px, rgba(163, 163, 218, .5) 100%);
    }
}
@media only screen and (min-width: 768px)
{
    .ly_pageTitle.ly_pageTitle__purpleDaycare::after
    {
        background-image: radial-gradient(closest-side, #ab95bc, #ab95bc 190px, rgba(171, 149, 188, .5) 190px, rgba(171, 149, 188, .5) 100%);
    }
}
@media only screen and (max-width: 767px)
{
    .ly_pageTitle.ly_pageTitle__purpleDaycare::after
    {
        background-image: radial-gradient(closest-side, #ab95bc, #ab95bc 114px, rgba(171, 149, 188, .5) 114px, rgba(171, 149, 188, .5) 100%);
    }
}
.ly_pageTitle_bgWrap
{
    position: absolute;
    top: 0;
    left: 0;

    overflow: hidden;

    width: 100%;
}
@media only screen and (min-width: 768px)
{
    .ly_pageTitle_bgWrap
    {
        height: 566px;
    }
}
@media only screen and (max-width: 767px)
{
    .ly_pageTitle_bgWrap
    {
        height: 208px;
    }
}
.ly_pageTitle_bgWrap::after
{
    position: absolute;
    top: 0;
    left: 0;

    display: block;

    width: 100%;
    height: 100%;

    content: '';

    background: -webkit-gradient(linear, left top, left bottom, from(rgba(251, 247, 247, 0)), to(#fbf7f7));
    background: linear-gradient(to bottom, rgba(251, 247, 247, 0), #fbf7f7);
}
.ly_pageTitle_bg
{
    width: 100%;
    height: 100%; 

    -o-object-fit: cover;
       object-fit: cover;
}
.ly_pageTitle_inner
{
    font-weight: 300;
    line-height: 1.32;

    position: relative;
    z-index: 1;

    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
        flex-direction: column;

    text-align: center; 

    color: #fff;

    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    row-gap: 6px;
}
@media only screen and (min-width: 768px)
{
    .ly_pageTitle_inner
    {
        font-size: 56px;

        height: 160px;

        letter-spacing: .1em;
    }
}
@media only screen and (max-width: 767px)
{
    .ly_pageTitle_inner
    {
        font-size: 32px;

        height: 100px;

        letter-spacing: .02em;
    }
}
@media only screen and (min-width: 768px)
{
    .ly_pageTitle_inner.ly_pageTitle_inner__withIcon
    {
        height: 310px;
    }
}
@media only screen and (max-width: 767px)
{
    .ly_pageTitle_inner.ly_pageTitle_inner__withIcon
    {
        height: 173.4px;
    }
}
.ly_pageTitle_inner .ly_pageTitle_icon
{
    aspect-ratio: 1 / 1;
}
@media only screen and (min-width: 768px)
{
    .ly_pageTitle_inner .ly_pageTitle_icon
    {
        width: 80px;
    }
}
@media only screen and (max-width: 767px)
{
    .ly_pageTitle_inner .ly_pageTitle_icon
    {
        width: 48px;
    }
}
.ly_pageTitle_inner .ly_pageTitle_en
{
    font-family: 'Roboto', sans-serif;
    font-weight: 400;

    letter-spacing: .04em;
}
@media only screen and (min-width: 768px)
{
    .ly_pageTitle_inner .ly_pageTitle_en
    {
        font-size: 22px;
        line-height: 1.18182;
    }
}
@media only screen and (max-width: 767px)
{
    .ly_pageTitle_inner .ly_pageTitle_en
    {
        font-size: 14px;
        line-height: 1.14286;
    }
}

.ly_contents
{
    margin: 0 auto;
}
@media only screen and (min-width: 768px)
{
    .ly_contents
    {
        max-width: 1320px;
        padding: 0 20px;
    }
}
.ly_contents_inner
{
    background: #fff;
}
@media only screen and (min-width: 768px)
{
    .ly_contents_inner
    {
        border-radius: 0 0 16px 16px;
        -webkit-box-shadow: 0 8px 18px 0 rgba(0, 0, 0, .03);
                box-shadow: 0 8px 18px 0 rgba(0, 0, 0, .03);
    }
}

.ly_departmentList
{
    display: grid;
}
@media only screen and (min-width: 768px)
{
    .ly_departmentList
    {
        grid-template-columns: repeat(5, 1fr);
        gap: 24px 2.22222%;
    }
}
@media only screen and (max-width: 767px)
{
    .ly_departmentList
    {
        grid-template-columns: repeat(2, 1fr);
        gap: 16px 4.67836%;
    }
}
@media only screen and (min-width: 768px)
{
    .ly_departmentList.ly_departmentList__withText
    {
        grid-template-columns: repeat(3, 1fr);
    }
}
@media only screen and (max-width: 767px)
{
    .ly_departmentList.ly_departmentList__withText
    {
        display: block;
    }
}
.ly_departmentList_item
{
    display: grid;

    width: 100%; 

    grid-template-rows: subgrid;
    grid-row: span 2;
    gap: 0;
}
@media only screen and (min-width: 768px)
{
    .ly_departmentList_item.ly_departmentList_item__withText
    {
        grid-row: span 4;
    }
}
@media only screen and (max-width: 767px)
{
    .ly_departmentList_item.ly_departmentList_item__withText
    {
        display: block;
    }
}
@media only screen and (max-width: 767px)
{
    .ly_departmentList_item.ly_departmentList_item__withText:not(:last-of-type)
    {
        margin-top: 24px;
    }
}
.ly_departmentList_item_link
{
    display: grid;

    width: 100%;
    height: 100%;

    background: #fff;
    -webkit-box-shadow: 0 10px 34px 0 rgba(210, 210, 210, .3);
            box-shadow: 0 10px 34px 0 rgba(210, 210, 210, .3); 

    grid-template-rows: subgrid;
    grid-row: span 3;
}
@media only screen and (min-width: 768px)
{
    .ly_departmentList_item_link
    {
        padding: 16px 5.08475% 26px;

        border-radius: 16px;
    }
}
@media only screen and (max-width: 767px)
{
    .ly_departmentList_item_link
    {
        padding: 16px 12px 9px;

        border-radius: 8px;
    }
}
@media only screen and (min-width: 768px)
{
    .ly_departmentList_item_link.ly_departmentList_item_link__withText
    {
        padding: 24px 6.97674%; 

        grid-row: span 4;
    }
}
@media only screen and (max-width: 767px)
{
    .ly_departmentList_item_link.ly_departmentList_item_link__withText
    {
        padding: 24px; 

        aspect-ratio: auto;
    }
}
.ly_departmentList_item_icon
{
    aspect-ratio: 1 / 1;
}
@media only screen and (min-width: 768px)
{
    .ly_departmentList_item_icon
    {
        width: 120px; 
        margin: 0 auto 24px;
    }
}
@media only screen and (max-width: 767px)
{
    .ly_departmentList_item_icon
    {
        width: 80px; 
        margin: 0 auto 13px;
    }
}
.ly_departmentList_item_icon.ly_departmentList_item_icon__withText
{
    margin-bottom: 8px;
}
.ly_departmentList_item_name
{
    line-height: 1.4;

    position: relative;

    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    text-align: center;

    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-font-feature-settings: 'palt';
            font-feature-settings: 'palt';
}
@media only screen and (min-width: 768px)
{
    .ly_departmentList_item_name
    {
        font-size: 18px;

        padding: 0 12px 0 11px; 

        letter-spacing: .04em;
    }
}
@media only screen and (max-width: 767px)
{
    .ly_departmentList_item_name
    {
        font-size: 14px;

        min-height: 2lh;
        padding: 0 16px; 

        letter-spacing: .02em;
    }
}
.ly_departmentList_item_name.ly_departmentList_item_name__withText
{
    color: #b54a4a;
}
@media only screen and (min-width: 768px)
{
    .ly_departmentList_item_name.ly_departmentList_item_name__withText
    {
        font-size: 24px;
    }
}
@media only screen and (max-width: 767px)
{
    .ly_departmentList_item_name.ly_departmentList_item_name__withText
    {
        font-size: 18px;
    }
}
.ly_departmentList_item_name_arrow
{
    right: 0;
}
@media only screen and (max-width: 767px)
{
    .ly_departmentList_item_name_arrow
    {
        width: 16px;
    }
}
.ly_departmentList_item_text
{
    margin-top: 16px;
}

.ly_footer
{
    border-top: solid 1px #d9d9d9; 
    background: #fff;
}
@media only screen and (min-width: 768px)
{
    .ly_footer
    {
        margin-top: 60px;
    }
}
@media only screen and (max-width: 767px)
{
    .ly_footer
    {
        margin-top: 40px;
    }
}
.ly_footer_upper
{
    border-bottom: solid 1px #d9d9d9;
}
@media only screen and (min-width: 768px)
{
    .ly_footer_upper
    {
        padding: 27.5px 0 33.5px;
    }
}
@media only screen and (max-width: 767px)
{
    .ly_footer_upper
    {
        padding: 40px 32px;
    }
}
.ly_footer_upper_inner
{
    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;
}
@media only screen and (min-width: 768px)
{
    .ly_footer_upper_inner
    {
        width: min(77.77778vw, 1120px);
        margin: 0 auto;
    }
}
@media only screen and (max-width: 767px)
{
    .ly_footer_upper_inner
    {
            flex-direction: column; 

        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
    }
}
@media only screen and (min-width: 768px)
{
    .ly_footer_upper_item
    {
        width: 50%;
    }
}
@media only screen and (max-width: 767px)
{
    .ly_footer_upper_item
    {
        width: 100%;
    }
}
@media only screen and (min-width: 768px)
{
    .ly_footer_upper_item.ly_footer_upper_item__sns
    {
        padding-right: 7.14286%;

        border-right: solid 1px #d9d9d9;
    }
}
@media only screen and (max-width: 767px)
{
    .ly_footer_upper_item.ly_footer_upper_item__sns
    {
        padding-bottom: 40px;

        border-bottom: solid 1px #d9d9d9;
    }
}
@media only screen and (min-width: 768px)
{
    .ly_footer_upper_item.ly_footer_upper_item__contact
    {
        padding-left: 7.14286%;
    }
}
@media only screen and (max-width: 767px)
{
    .ly_footer_upper_item.ly_footer_upper_item__contact
    {
        padding-top: 24px;
    }
}
.ly_footer_upper_title
{
    text-align: center;
    letter-spacing: .04em;
}
@media only screen and (min-width: 768px)
{
    .ly_footer_upper_title
    {
        font-size: 28px;
        line-height: 1.46429;
    }
}
@media only screen and (max-width: 767px)
{
    .ly_footer_upper_title
    {
        font-size: 24px;
        line-height: 1.5;
    }
}
@media only screen and (min-width: 768px)
{
    .ly_footer_upper_sns
    {
        margin-top: 24px;
    }
}
@media only screen and (max-width: 767px)
{
    .ly_footer_upper_sns
    {
        margin-top: 40px;
    }
}
.ly_footer_upper_sns_list
{
    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;
}
@media only screen and (min-width: 768px)
{
    .ly_footer_upper_sns_list
    {
        -webkit-column-gap: 6.66667%;
           -moz-column-gap: 6.66667%;
                column-gap: 6.66667%;
    }
}
@media only screen and (max-width: 767px)
{
    .ly_footer_upper_sns_list
    {
        -webkit-column-gap: 32px;
           -moz-column-gap: 32px;
                column-gap: 32px;
    }
}
.ly_footer_upper_contact
{
    line-height: 1.4;

    margin-top: 16px; 

    text-align: center;
}
.ly_footer_upper_contact_tel
{
    font-family: 'Roboto', sans-serif;
    font-size: 38px;
    font-weight: bold;
    line-height: 1.4;

    display: block;

    margin-bottom: 5px; 

    letter-spacing: .01em;

    color: #b54a4a;
}
@media only screen and (min-width: 768px)
{
    .ly_footer_upper_contact_time
    {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;

        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
        -webkit-column-gap: 2.5em;
           -moz-column-gap: 2.5em;
                column-gap: 2.5em;
    }
}
@media only screen and (max-width: 767px)
{
    .ly_footer_upper_contact_time
    {
        display: -webkit-inline-box;
        display: -ms-inline-flexbox;
        display: inline-flex;
            flex-direction: column;

        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        -webkit-box-align: end;
        -ms-flex-align: end;
        align-items: flex-end;
    }
}
.ly_footer_upper_contact_time_data
{
    display: inline-block;
}
.ly_footer_nav
{
    margin-top: 48px;
}
.ly_footer_nav_inner
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
}
@media only screen and (min-width: 768px)
{
    .ly_footer_nav_inner
    {
        width: min(77.08333vw, 1110px);
        margin: 0 auto; 

        -webkit-column-gap: 3.6036%;
           -moz-column-gap: 3.6036%;
                column-gap: 3.6036%;
    }
}
@media only screen and (max-width: 767px)
{
    .ly_footer_nav_inner
    {
        padding: 0 24px; 

        -webkit-box-pack: justify;
        -ms-flex-pack: justify;
        justify-content: space-between;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
        row-gap: 24px;
    }
}
@media only screen and (min-width: 768px)
{
    .ly_footer_nav_col
    {
        width: 17.11712%;
    }
}
@media only screen and (max-width: 767px)
{
    .ly_footer_nav_col
    {
        width: 46.49123%;
    }
}
.ly_footer_nav_firstList
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
        flex-direction: column; 

    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
}
@media only screen and (min-width: 768px)
{
    .ly_footer_nav_firstList
    {
        row-gap: 32px;
    }
}
@media only screen and (max-width: 767px)
{
    .ly_footer_nav_firstList
    {
        row-gap: 24px;
    }
}
.ly_footer_nav_firstList_item_name
{
    font-family: 'Roboto', sans-serif;

    display: block;

    color: #b54a4a;
}
.ly_footer_nav_secondList
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
        flex-direction: column; 

    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
}
@media only screen and (min-width: 768px)
{
    .ly_footer_nav_secondList
    {
        margin-top: 12px; 

        row-gap: 8px;
    }
}
@media only screen and (max-width: 767px)
{
    .ly_footer_nav_secondList
    {
        margin-top: 8px; 

        row-gap: 6px;
    }
}
.ly_footer_nav_secondList_item_name
{
    font-size: 14px;
    line-height: 1.57143; 

    color: #666;
}
.ly_footer_nav_thirdList
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
        flex-direction: column; 

    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
}
@media only screen and (min-width: 768px)
{
    .ly_footer_nav_thirdList
    {
        margin-top: 6px; 

        row-gap: 6px;
    }
}
@media only screen and (max-width: 767px)
{
    .ly_footer_nav_thirdList
    {
        margin-top: 4px; 

        row-gap: 4px;
    }
}
.ly_footer_nav_thirdList_item_name
{
    font-size: 12px;
    line-height: 1.5; 

    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    color: #666;

    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-column-gap: 7px;
       -moz-column-gap: 7px;
            column-gap: 7px;
}
.ly_footer_nav_thirdList_item_name::before
{
    display: block;

    width: 9px;
    height: 1px;

    content: '';

    background: currentColor;
}
.ly_footer_lower
{
    margin-top: 48px; 
    padding-bottom: 48px;
}
@media only screen and (max-width: 767px)
{
    .ly_footer_lower
    {
        padding-right: 24px;
        padding-left: 24px;
    }
}
@media only screen and (min-width: 768px)
{
    .ly_footer_lower_address
    {
        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;
        -webkit-column-gap: 58.37px;
           -moz-column-gap: 58.37px;
                column-gap: 58.37px;
    }
}
@media only screen and (max-width: 767px)
{
    .ly_footer_lower_address
    {
        text-align: center;
    }
}
.ly_footer_lower_address_logo
{
    width: 198.33px;
}
@media only screen and (max-width: 767px)
{
    .ly_footer_lower_address_logo
    {
        margin: 0 auto 24px;
    }
}
.ly_footer_lower_address_text
{
    font-family: 'Roboto', sans-serif;
    font-size: 14px;
    line-height: 1.4;

    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
        flex-direction: column;

    letter-spacing: .04em; 

    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    row-gap: 3px;
}
@media only screen and (max-width: 767px)
{
    .ly_footer_lower_address_text
    {
        display: -webkit-inline-box;
        display: -ms-inline-flexbox;
        display: inline-flex;

        text-align: left;
    }
}
.ly_footer_lower_copy
{
    font-family: 'Roboto', sans-serif;
    line-height: 1.4;

    display: block;

    margin-top: 24px; 

    text-align: center;
    letter-spacing: .1em;

    color: #ababab;
}
@media only screen and (min-width: 768px)
{
    .ly_footer_lower_copy
    {
        font-size: 14px;
    }
}
@media only screen and (max-width: 767px)
{
    .ly_footer_lower_copy
    {
        font-size: 11px;
    }
}
