@charset "UTF-8";
/* ==========================================================
Name:
    module.css

Description:
    サイトで共通使用する汎用モジュール及びページ固有のスタイルを記述する
    汎用モジュールは、アルファベット降順(A->Z)に記述する
    ページ固有のスタイルは、ディレクトリ名のアルファベット降順(A->Z)、
    ファイル名のアルファベット降順(A->Z)にそれぞれ記述する

Contents:
    module
    page
    utility
========================================================== */
/* ==========================================================
*
*   module
*
========================================================== */



@media screen and (min-width: 768px) {
    .pc-hide {
        display: none !important;
    }
}

@media screen and (max-width: 767px) {
    .sp-hide {
        display: none !important;
    }
}


/* ---------------------------------------------
*   mod-ttl
--------------------------------------------- */
.mod-ttl {
    position: relative;
    text-align: center;
    font-size: 3.28571rem;
    font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", sans-serif;
}

@media screen and (max-width: 767px) {
    .mod-ttl {
        padding: 0 9.375%;
        font-size: 10vw;
    }
}

.mod-ttl:before {
    position: absolute;
    right: 0;
    bottom: -35px;
    left: 0;
    margin: auto;
    width: 1px;
    height: 30px;
    background-color: #FF862B;
    content: "";
}

@media screen and (max-width: 1000px) {
    .mod-ttl:before {
        bottom: -3.5vw;
        height: 3vw;
    }
}

@media screen and (max-width: 767px) {
    .mod-ttl:before {
        bottom: -10.9375vw;
        width: 0.3125vw;
        height: 7.5vw;
    }
}

.mod-ttl__sub {
    display: block;
    font-size: 1.42857rem;
    line-height: 2;
}

@media screen and (max-width: 767px) {
    .mod-ttl__sub {
        display: inline-block;
        vertical-align: text-bottom;
        font-size: 4.375vw;
    }
    .ie .mod-ttl__sub {
        vertical-align: middle;
    }
}

/* ---------------------------------------------
*   mod-recruit-ttl
--------------------------------------------- */
.mod-recruit-ttl {
    position: relative;
    text-align: center;
    font-size: 3.28571rem;
    font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", sans-serif;
}

@media screen and (max-width: 767px) {
    .mod-recruit-ttl {
        font-size: 10vw;
    }
}

.mod-recruit-ttl:before {
    position: absolute;
    right: 0;
    bottom: -45px;
    left: 0;
    margin: auto;
    width: 1px;
    height: 30px;
    background-color: #4D413C;
    content: "";
}

@media screen and (max-width: 1000px) {
    .mod-recruit-ttl:before {
        bottom: -4.5vw;
        height: 3vw;
    }
}

@media screen and (max-width: 767px) {
    .mod-recruit-ttl:before {
        bottom: -10.9375vw;
        width: 0.3125vw;
        height: 7.5vw;
    }
}

.mod-recruit-ttl__txt {
    padding-bottom: 10px;
    background: -webkit-gradient(linear, left top, left bottom, color-stop(45%, transparent), color-stop(45%, #F1F0EF));
    background: linear-gradient(transparent 45%, #F1F0EF 45%);
}

@media screen and (max-width: 767px) {
    .mod-recruit-ttl__txt {
        padding-bottom: 1.5625vw;
        letter-spacing: -0.05em;
    }
}

.windows .mod-recruit-ttl__txt {
    padding-bottom: 0 !important;
    background: -webkit-gradient(linear, left top, left bottom, color-stop(55%, transparent), color-stop(55%, #F1F0EF));
    background: linear-gradient(transparent 55%, #F1F0EF 55%);
}

.mod-recruit-ttl__txt--darken {
    background: -webkit-gradient(linear, left top, left bottom, color-stop(45%, transparent), color-stop(45%, #E4E3E2));
    background: linear-gradient(transparent 45%, #E4E3E2 45%);
}

.windows .mod-recruit-ttl__txt--darken {
    background: -webkit-gradient(linear, left top, left bottom, color-stop(55%, transparent), color-stop(55%, #E4E3E2));
    background: linear-gradient(transparent 55%, #E4E3E2 55%);
}

/* ---------------------------------------------
*   mod-link
--------------------------------------------- */
.mod-link__btn {
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: center;
    -ms-flex-align: center;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    margin: 0 auto;
    width: 250px;
    height: 76px;
    border: 1px solid #5E544F;
    background-color: #fff;
    text-align: center;
    font-size: 1rem;
    -webkit-transition-duration: .3s;
    transition-duration: .3s;
    -webkit-transition-property: background-color, color;
    transition-property: background-color, color;

    -webkit-box-align: center;
    align-items: center;
    -webkit-box-pack: center;
    justify-content: center;
}

@media screen and (max-width: 767px) {
    .mod-link__btn {
        width: 65.625vw;
        height: 21.875vw;
        text-align: center;
        font-size: 4.375vw;
    }
}

.mod-link__btn:before {
    position: absolute;
    top: 50%;
    right: 20px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    width: 10px;
    height: 10px;
    border-top: 1px solid #5E544F;
    border-right: 1px solid #5E544F;
    content: "";
    -webkit-transition-duration: .3s;
    transition-duration: .3s;
    -webkit-transition-property: border-color;
    transition-property: border-color;
    -webkit-transform: rotate(45deg) translateY(-50%);
    transform: rotate(45deg) translateY(-50%);
    -webkit-transform-origin: 50% 0;
    transform-origin: 50% 0;
}

@media screen and (max-width: 767px) {
    .mod-link__btn:before {
        right: 6.5625vw;
        width: 3.125vw;
        height: 3.125vw;
        border-width: 0.3125vw;
    }
}

.mod-link__btn:hover {
    background-color: #5E544F;
    color: #fff;
}

.mod-link__btn:hover:before {
    border-color: #fff;
}

/* ---------------------------------------------
*   link-block
--------------------------------------------- */
.link-block {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: center;
    -ms-flex-align: center;

    -webkit-box-align: center;
    align-items: center;
    -webkit-box-pack: center;
    justify-content: center;
}

@media screen and (max-width: 767px) {
    .link-block {
        display: block;
        padding: 0 6.25vw;
    }
}

.link-block__box {
    margin-left: 20px;
}

@media screen and (max-width: 1000px) {
    .link-block__box {
        margin-left: 2vw;
    }
}

@media screen and (max-width: 767px) {
    .link-block__box {
        margin-top: 6.25vw;
        margin-left: 0;
    }
}

.link-block__box:first-of-type {
    margin-left: 0;
}

@media screen and (max-width: 767px) {
    .link-block__box:first-of-type {
        margin-top: 0;
    }
}

.link-block__btn {
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: center;
    -ms-flex-align: center;
    width: 470px;
    height: 120px;
    border: 1px solid #5E544F;
    font-size: 1.28571rem;
    -webkit-transition-duration: .3s;
    transition-duration: .3s;
    -webkit-transition-property: background-color, color;
    transition-property: background-color, color;

    -webkit-box-align: center;
    align-items: center;
    -webkit-box-pack: center;
    justify-content: center;
}

@media screen and (max-width: 1000px) {
    .link-block__btn {
        width: 47vw;
        height: 12vw;
    }
}

@media screen and (max-width: 767px) {
    .link-block__btn {
        width: 100%;
        height: 21.875vw;
        border-width: 0.3125vw;
        font-size: 4.375vw;
    }
}

.link-block__btn:before {
    position: absolute;
    top: 50%;
    right: 25px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    width: 10px;
    height: 10px;
    border-top: 1px solid #5E544F;
    border-right: 1px solid #5E544F;
    content: "";
    -webkit-transition-duration: .3s;
    transition-duration: .3s;
    -webkit-transition-property: border-color;
    transition-property: border-color;
    -webkit-transform: rotate(45deg) translateY(-50%);
    transform: rotate(45deg) translateY(-50%);
}

@media screen and (max-width: 1000px) {
    .link-block__btn:before {
        right: 2.5vw;
        width: 1vw;
        height: 1vw;
    }
}

@media screen and (max-width: 767px) {
    .link-block__btn:before {
        right: 6.25vw;
        width: 3.125vw;
        height: 3.125vw;
        border-width: 0.3125vw;
    }
}

.link-block__btn:hover {
    background-color: #5E544F;
    color: #fff;
}

.link-block__btn:hover:before {
    border-color: #fff;
}

/* ---------------------------------------------
*   breadcrumbs
--------------------------------------------- */
.breadcrumbs {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    margin: 0 auto;
    margin-top: 35px;
    max-width: 960px;
}

@media screen and (max-width: 1000px) {
    .breadcrumbs {
        max-width: 96vw;
    }
}

.breadcrumbs > span {
    position: relative;
    padding: 0 20px;
    font-size: 0.85714rem;
}

.breadcrumbs a {
    display: inline-block;
}

.breadcrumbs a:hover {
    text-decoration: underline;
}

/* ---------------------------------------------
*   wp-pagenavi
--------------------------------------------- */
.wp-pagenavi {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: center;
    -ms-flex-align: center;
    margin-top: 55px;
    text-align: center;

    -webkit-box-align: center;
    align-items: center;
    -webkit-box-pack: center;
    justify-content: center;
}

@media screen and (max-width: 767px) {
    .wp-pagenavi {
        margin-top: 7.8125vw;
    }
}

.wp-pagenavi a,
.wp-pagenavi span {
    display: block;
    margin: 0 10px;
    font-size: 1rem;
}

@media screen and (max-width: 767px) {
    .wp-pagenavi a,
    .wp-pagenavi span {
        margin: 0 3.125vw;
        font-size: 4.375vw;
    }
}

.wp-pagenavi a:hover {
    text-decoration: underline;
}

.wp-pagenavi .current {
    text-decoration: underline;
}

/* ---------------------------------------------
*   mod-info
--------------------------------------------- */
.mod-info {
    margin: 0 auto 75px;
    padding: 35px 0 40px;
    max-width: 960px;
    border-top: 1px solid #C9C6C4;
    border-bottom: 1px solid #C9C6C4;
}

@media screen and (max-width: 1280px) {
    .mod-info {
        -webkit-box-sizing: border-box;
        box-sizing: border-box;
        margin: 0 auto 5.85938vw;
        padding: 2.73438vw 0 3.125vw;
    }
}

@media screen and (max-width: 1000px) {
    .mod-info {
        max-width: 96%;
    }
}

@media screen and (max-width: 767px) {
    .mod-info {
        -webkit-box-sizing: border-box;
        box-sizing: border-box;
        margin-bottom: 12.5vw;
        padding: 15.625vw 6.25vw 0;
        max-width: none;
        width: 100%;
        border: none;
    }
}

.mod-info__upper {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
}

@media screen and (max-width: 1000px) {
    .mod-info__upper {
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    }
}

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

.mod-info__area {
    margin-right: 12px;
    font-weight: bold;
    font-size: 0.85714rem;
}

@media screen and (max-width: 1280px) {
    .mod-info__area {
        margin-right: 0.9375vw;
    }
}

@media screen and (max-width: 1000px) {
    .mod-info__area {
        width: 100%;
        line-height: 2;
    }
}

.mod-info__desc {
    margin-right: 24px;
    font-size: 0.85714rem;
}

@media screen and (max-width: 767px) {
    .mod-info__desc {
        margin-right: 0;
        font-size: 3.75vw;
        line-height: 2;
    }
}

.mod-info__desc:last-of-type {
    margin-right: 0;
}

.mod-info__lower {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: start;
    margin-top: 27px;

    -webkit-box-align: start;
    align-items: flex-start;
}

@media screen and (max-width: 1280px) {
    .mod-info__lower {
        margin-top: 2.10938vw;
    }
}

@media screen and (max-width: 767px) {
    .mod-info__lower {
        display: block;
        margin-top: 7.8125vw;
    }
}

.mod-info__map {
    width: 270px;
}

@media screen and (max-width: 767px) {
    .mod-info__map {
        margin-bottom: 7.8125vw;
        width: 100%;
    }
}

.mod-info__map img {
    width: 100%;
}

.mod-info__detail {
    margin-left: 52px;
}

@media screen and (max-width: 1000px) {
    .mod-info__detail {
        margin-left: 4.0625%;
    }
}

@media screen and (max-width: 767px) {
    .mod-info__detail {
        margin-left: 0;
    }
}

.mod-info__unit {
    position: relative;
    margin-bottom: 5px;
    padding-left: 20px;
    line-height: 2;
}

@media screen and (max-width: 1000px) {
    .mod-info__unit {
        padding-left: 5.8309%;
    }
}

@media screen and (max-width: 767px) {
    .mod-info__unit {
        margin-bottom: 1.5625vw;
        padding-left: 6.25vw;
    }
}

.mod-info__unit:before {
    position: absolute;
    top: 50%;
    left: 0;
    width: 1px;
    height: 85%;
    background-color: #FF862B;
    content: "";
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
}

@media screen and (max-width: 1000px) {
    .mod-info__unit:before {
        height: 90%;
    }
}

.mod-info__unit:last-of-type {
    margin-bottom: 0;
}

.mod-info__txt {
    font-size: 0.85714rem;
}

@media screen and (max-width: 767px) {
    .mod-info__txt {
        font-size: 3.75vw;
    }
}

.mod-info__link {
    margin-left: 45px;
    letter-spacing: 0.05em;
}

@media screen and (max-width: 1000px) {
    .mod-info__link {
        margin-left: 3.51562%;
        width: 26.04167%;
    }
}

@media screen and (max-width: 767px) {
    .mod-info__link {
        margin-top: 10.9375vw;
        margin-left: 0;
        width: 100%;
    }
}

.mod-info__box {
    margin-top: 20px;
}

@media screen and (max-width: 767px) {
    .mod-info__box {
        margin-top: 6.25vw;
    }
}

.mod-info__box:first-of-type {
    margin-top: 0;
}

.mod-info__btn {
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: center;
    -ms-flex-align: center;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    margin: 0 auto;
    width: 250px;
    height: 76px;
    border: 1px solid #5E544F;
    background-color: #fff;
    font-size: 1rem;
    -webkit-transition-duration: .3s;
    transition-duration: .3s;
    -webkit-transition-property: background-color, color;
    transition-property: background-color, color;

    -webkit-box-align: center;
    align-items: center;
    -webkit-box-pack: center;
    justify-content: center;
}

@media screen and (max-width: 1000px) {
    .mod-info__btn {
        width: 100%;
    }
}

@media screen and (max-width: 767px) {
    .mod-info__btn {
        width: 100%;
        height: 21.875vw;
        border-width: 0.3125vw;
        font-size: 4.375vw;
    }
}

.mod-info__btn:before {
    position: absolute;
    top: 50%;
    right: 25px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    width: 10px;
    height: 10px;
    border-top: 1px solid #5E544F;
    border-right: 1px solid #5E544F;
    content: "";
    -webkit-transition-duration: .3s;
    transition-duration: .3s;
    -webkit-transition-property: border-color;
    transition-property: border-color;
    -webkit-transform: rotate(45deg) translateY(-50%);
    transform: rotate(45deg) translateY(-50%);
}

@media screen and (max-width: 767px) {
    .mod-info__btn:before {
        right: 6.25vw;
        width: 3.125vw;
        height: 3.125vw;
        border-width: 0.3125vw;
    }
}

.mod-info__btn:hover {
    background-color: #5E544F;
    color: #fff;
}

.mod-info__btn:hover:before {
    border-color: #fff;
}

/* ---------------------------------------------
*   mainvisual
--------------------------------------------- */
.mainvisual {
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-direction: column;
    flex-direction: column;
    -ms-flex-pack: center;
    -ms-flex-align: center;
    width: 100%;
    height: 420px;
    background-position: top center;
    background-size: cover;
    background-repeat: no-repeat;

    -webkit-box-align: center;
    align-items: center;
    -webkit-box-pack: center;
    justify-content: center;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
}

@media screen and (max-width: 1280px) {
    .mainvisual {
        height: 32.8125vw;
    }
}

@media screen and (max-width: 767px) {
    .mainvisual {
        height: 75vw;
    }
}

.mainvisual:before {
    position: absolute;
    top: 0;
    right: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(77, 65, 60, 0.4);
    content: "";
}

.mainvisual--reha {
    background-image: url(/img/reha/img_mv.jpg);
}

@media screen and (max-width: 767px) {
    .mainvisual--reha {
        background-image: url(/img/reha/sp/img_mv.jpg);
    }
}

.mainvisual--zaitaku {
    background-image: url(/img/zaitaku/img_mv.jpg);
}

@media screen and (max-width: 767px) {
    .mainvisual--zaitaku {
        background-image: url(/img/zaitaku/sp/img_mv.jpg);
    }
}

.mainvisual--kids {
    background-image: url(/img/kids/img_mv.jpg);
}

@media screen and (max-width: 767px) {
    .mainvisual--kids {
        background-image: url(/img/kids/sp/img_mv.jpg);
    }
}

.mainvisual--area {
    background-image: url(/img/area/img_mv.jpg);
}

@media screen and (max-width: 767px) {
    .mainvisual--area {
        background-image: url(/img/area/sp/img_mv.jpg);
    }
}

.mainvisual--philosophy {
    background-image: url(/img/philosophy/img_mv.jpg);
}

@media screen and (max-width: 767px) {
    .mainvisual--philosophy {
        background-image: url(/img/philosophy/sp/img_mv.jpg);
    }
}

.mainvisual--recruit {
    background-image: url(/img/recruit/common/img_mv.jpg);
}

@media screen and (max-width: 767px) {
    .mainvisual--recruit {
        height: 100vw;
        background-image: url(/img/recruit/common/sp/img_mv.jpg);
    }
}

.mainvisual--message {
    background-image: url(/img/message/img_mv.jpg);
}

@media screen and (max-width: 767px) {
    .mainvisual--message {
        height: 100vw;
        background-image: url(/img/message/sp/img_mv.jpg);
    }
}

.mainvisual__ttl {
    position: relative;
    color: #fff;
    font-size: 3.57143rem;
    font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", sans-serif;
}

@media screen and (max-width: 767px) {
    .mainvisual__ttl {
        width: 90.625vw;
        text-align: center;
        letter-spacing: -0.05em;
        font-size: 11.25vw;
    }
}

.mainvisual__sub-ttl {
    position: relative;
    color: #fff;
    font-size: 1.42857rem;
    font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", sans-serif;
}

@media screen and (max-width: 767px) {
    .mainvisual__sub-ttl {
        font-size: 6.25vw;
    }
}

/* ---------------------------------------------
*   mod-faq
--------------------------------------------- */
.mod-faq {
    padding-top: 90px;
    padding-bottom: 120px;
    background-color: #F3F2F1;
}

@media screen and (max-width: 1000px) {
    .mod-faq {
        padding-top: 9vw;
        padding-bottom: 12vw;
    }
}

@media screen and (max-width: 767px) {
    .mod-faq {
        padding-top: 12.5vw;
        padding-bottom: 15.625vw;
    }
}

.mod-faq__body {
    margin-top: 80px;
}

@media screen and (max-width: 1000px) {
    .mod-faq__body {
        margin-top: 8vw;
    }
}

@media screen and (max-width: 767px) {
    .mod-faq__body {
        margin-top: 18.75vw;
    }
}

.mod-faq__list {
    margin: 0 auto;
    width: 640px;
}

@media screen and (max-width: 767px) {
    .mod-faq__list {
        -webkit-box-sizing: border-box;
        box-sizing: border-box;
        padding: 0 6.25vw;
        width: 100%;
    }
}

.mod-faq__item {
    margin-top: 10px;
    border: 1px solid #C9C6C4;
}

@media screen and (max-width: 767px) {
    .mod-faq__item {
        margin-top: 3.125vw;
        border-width: 0.3125vw;
    }
}

.mod-faq__item:first-of-type {
    margin-top: 0;
}

.mod-faq__question {
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    cursor: pointer;
    -webkit-transition: opacity 300ms;
    transition: opacity 300ms;
}

.mod-faq__question:hover {
    opacity: 0.8;
}

.mod-faq__question:before, .mod-faq__question:after {
    position: absolute;
    top: 50%;
    right: 22px;
    width: 14px;
    height: 2px;
    background-color: #C9C6C4;
    content: "";
    -webkit-transition: -webkit-transform .3s;
    transition: -webkit-transform .3s;
    transition: transform .3s;
    transition: transform .3s, -webkit-transform .3s;
    -webkit-transform-origin: 50% 0;
    transform-origin: 50% 0;
}

@media screen and (max-width: 767px) {
    .mod-faq__question:before, .mod-faq__question:after {
        right: 3.75vw;
        width: 3.75vw;
        height: 0.625vw;
    }
}

.mod-faq__question:before {
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
}

.mod-faq__question:after {
    -webkit-transform: rotate(90deg) translateY(-50%);
    transform: rotate(90deg) translateY(-50%);
}

.open .mod-faq__question:after {
    -webkit-transform: rotate(180deg) translateY(-50%);
    transform: rotate(180deg) translateY(-50%);
}

.mod-faq__question .question-mark {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: center;
    -ms-flex-align: center;
    width: 58px;
    border-right: 1px solid #C9C6C4;
    background-color: #EAE8E8;
    font-size: 1.71429rem;
    font-family: "M PLUS 1p", sans-serif;

    -webkit-box-align: center;
    align-items: center;
    -webkit-box-pack: center;
    justify-content: center;
}

@media screen and (max-width: 767px) {
    .mod-faq__question .question-mark {
        width: 14.0625vw;
        border-width: 0.3125vw;
        font-size: 7.5vw;
    }
}

.mod-faq__question .question-txt {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    padding: 15px 75px 15px 30px;
    width: calc(100% - 60px);
    background-color: #fff;
    font-size: 1.28571rem;
    font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", sans-serif;
}

@media screen and (max-width: 767px) {
    .mod-faq__question .question-txt {
        padding: 4.6875vw 10.9375vw 4.6875vw 4.6875vw;
        width: 73.4375vw;
    }
}

.ie .mod-faq__question .question-txt {
    padding: 19px 75px 11px 30px;
}

@media screen and (max-width: 767px) {
    .ie .mod-faq__question .question-txt {
        padding: 6.25vw 10.9375vw 3.125vw 4.6875vw;
    }
}

.mod-faq__answer {
    display: none;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    padding: 22px 35px;
    border-top: 1px solid #C9C6C4;
    background-color: #E1DFDE;
    font-size: 1rem;
    line-height: 2;
}

@media screen and (max-width: 767px) {
    .mod-faq__answer {
        padding: 4.0625vw 5.625vw;
        border-width: 0.3125vw;
        font-size: 4.375vw;
    }
}

/* ---------------------------------------------
*   mod-txt-link
--------------------------------------------- */
.mod-txt-link {
    text-decoration: underline;
}

.mod-txt-link:hover {
    text-decoration: none;
}

/* ---------------------------------------------
*   wysiwyg (Wordpress案件以外は削除すること)
--------------------------------------------- */
.wysiwyg {
    overflow: hidden;
}

.wysiwyg:after {
    display: block;
    clear: both;
    content: "";
}

/* wysiwyg default
--------------------------------------------- */
.wysiwyg sup {
    vertical-align: super;
    font-size: smaller;
}

.wysiwyg sub {
    vertical-align: sub;
    font-size: smaller;
}

.wysiwyg h1 {
    font-size: 1em;
    line-height: 2;
}

.wysiwyg h2 {
    font-size: 1em;
    line-height: 2;
}

.wysiwyg h3 {
    font-size: 1em;
    line-height: 2;
}

.wysiwyg h4 {
    font-size: 100%;
}

.wysiwyg h5 {
    font-size: 0.83em;
}

.wysiwyg h6 {
    font-size: 0.67em;
}

.wysiwyg h1,
.wysiwyg h2,
.wysiwyg h3,
.wysiwyg h4,
.wysiwyg h5,
.wysiwyg h6 {
    font-weight: 600;
}

.wysiwyg i,
.wysiwyg strong {
    font-weight: 600;
}

.wysiwyg p {
    margin-top: 1em;
    margin-bottom: 1em;
    font-size: 1em;
    line-height: 2;
}

.wysiwyg em {
    font-style: italic;
}

.wysiwyg a {
    color: #43a0c0;
    text-decoration: underline;
}

.wysiwyg a:hover {
    text-decoration: none;
}

.wysiwyg ul {
    margin-top: 1em;
    margin-bottom: 1em;
    padding-left: 40px;
    list-style-type: disc;
}

.wysiwyg ol {
    margin-top: 1em;
    margin-bottom: 1em;
    padding-left: 40px;
    list-style-type: decimal;
}

.wysiwyg li {
    display: list-item;
    text-align: -webkit-match-parent;
}

.wysiwyg blockquote {
    margin: 1.12em 0;
}

.wysiwyg .aligncenter {
    display: block;
    margin: 0 auto;
}

.wysiwyg .alignright {
    float: right;
}

.wysiwyg .alignleft {
    float: left;
}

.wysiwyg img[class*="wp-image-"],
.wysiwyg img[class*="attachment-"] {
    margin-bottom: 20px;
    max-width: 100%;
    height: auto;
}

@media screen and (max-width: 767px) {
    .wysiwyg img[class*="wp-image-"],
    .wysiwyg img[class*="attachment-"] {
        width: 100%;
    }
}

/* ==========================================================
*
*   page
*
========================================================== */
/* ---------------------------------------------
*   Index Page
--------------------------------------------- */
/*  keyvisual
--------------------------------------------- */
.keyvisual {
    overflow: hidden;
    margin: 0 auto;
    padding-top: 50px;
    padding-bottom: 90px;
    max-width: 1400px;
}

@media screen and (max-width: 1000px) {
    .keyvisual {
        padding-top: 5vw;
        padding-bottom: 9vw;
    }
}

@media screen and (max-width: 767px) {
    .keyvisual {
        padding-top: 16.25vw;
        padding-bottom: 8.75vw;
    }
}

.keyvisual__ttl {
    overflow: hidden;
    margin-left: auto;
    padding-top: 800px;
    width: 1400px;
    height: 0;
    background: url(/img/top/img_kv.png) 0 0 no-repeat;
    background-size: 100% auto;
}

@media screen and (max-width: 1280px) {
    .keyvisual__ttl {
        padding-top: 62.5vw;
        width: 109.375vw;
    }
}

@media screen and (max-width: 767px) {
    .keyvisual__ttl {
        padding-top: 135vw;
        width: 100%;
        background-image: url(/img/top/sp/img_kv.png);
    }
}

/*  index-about
--------------------------------------------- */
.index-about {
    padding-top: 90px;
    padding-bottom: 70px;
    background-color: #F3F2F1;
}

@media screen and (max-width: 1000px) {
    .index-about {
        padding-top: 9vw;
        padding-bottom: 7vw;
    }
}

@media screen and (max-width: 767px) {
    .index-about {
        padding-top: 13.125vw;
        padding-bottom: 14.0625vw;
    }
}

.index-about__txt {
    margin: 75px auto 40px;
    width: 540px;
    font-size: 1rem;
    line-height: 2;
}

@media screen and (max-width: 1000px) {
    .index-about__txt {
        margin: 7.5vw auto 4vw;
    }
}

@media screen and (max-width: 767px) {
    .index-about__txt {
        -webkit-box-sizing: border-box;
        box-sizing: border-box;
        margin: 17.1875vw auto 10.3125vw;
        padding: 0 6.25vw;
        width: 100%;
        font-size: 4.375vw;
    }
}

/*  index-use
--------------------------------------------- */
.index-use {
    padding-top: 110px;
}

@media screen and (max-width: 1000px) {
    .index-use {
        padding-top: 11vw;
    }
}

@media screen and (max-width: 767px) {
    .index-use {
        padding-top: 12.5vw;
    }
}

.index-use__list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: center;
    -ms-flex-align: center;
    margin: 75px auto 0;
    max-width: 1280px;
    width: 100%;

    -webkit-box-align: center;
    align-items: center;
    -webkit-box-pack: center;
    justify-content: center;
}

@media screen and (max-width: 1000px) {
    .index-use__list {
        margin-top: 7.5vw;
    }
}

@media screen and (max-width: 767px) {
    .index-use__list {
        display: block;
        margin-top: 19.6875vw;
    }
}

.index-use__item {
    width: calc(100% / 3);
}

@media screen and (max-width: 767px) {
    .index-use__item {
        margin-top: 12.5vw;
        width: 100%;
    }
    .index-use__item:first-of-type {
        margin-top: 0;
    }
}

.index-use__img img {
    width: 100%;
}

.index-use .mod-link {
    margin-top: -37px;
}

@media screen and (max-width: 1000px) {
    .index-use .mod-link {
        margin-top: -3.7vw;
    }
}

@media screen and (max-width: 767px) {
    .index-use .mod-link {
        margin-top: -10.9375vw;
    }
}

/*  index-feature
--------------------------------------------- */
.index-feature {
    position: relative;
    padding-top: 110px;
    padding-bottom: 410px;
}

@media screen and (max-width: 1000px) {
    .index-feature {
        padding-top: 11vw;
        padding-bottom: 41vw;
    }
}

@media screen and (max-width: 767px) {
    .index-feature {
        padding-top: 12.5vw;
        padding-bottom: 63.125vw;
    }
}

.index-feature:before {
    position: absolute;
    right: 0;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 320px;
    background: url(/img/top/img_landscape.jpg) top center no-repeat;
    background-size: cover;
    content: "";
}

@media screen and (max-width: 1000px) {
    .index-feature:before {
        height: 32vw;
    }
}

@media screen and (max-width: 767px) {
    .index-feature:before {
        height: 50vw;
    }
}

.index-feature__body {
    margin-top: 160px;
}

@media screen and (max-width: 1000px) {
    .index-feature__body {
        margin-top: 16vw;
    }
}

@media screen and (max-width: 767px) {
    .index-feature__body {
        margin-top: 20vw;
    }
}

.index-feature__block {
    position: relative;
    margin: 150px auto 0;
    width: 960px;
}

@media screen and (max-width: 1000px) {
    .index-feature__block {
        margin-top: 15vw;
        width: 96vw;
    }
}

@media screen and (max-width: 767px) {
    .index-feature__block {
        margin-top: 14.0625vw;
        width: 100%;
    }
}

.index-feature__block:first-of-type {
    margin-top: 0;
}

.index-feature__img {
    position: absolute;
    top: -80px;
    width: 720px;
}

@media screen and (max-width: 1000px) {
    .index-feature__img {
        top: -8vw;
        width: 72vw;
    }
}

@media screen and (max-width: 767px) {
    .index-feature__img {
        position: static;
        width: 100%;
    }
}

.index-feature__block:nth-of-type(2n+1) .index-feature__img {
    left: 0;
}

.index-feature__block:nth-of-type(2n) .index-feature__img {
    right: 0;
}

.index-feature__img img {
    width: 100%;
}

.index-feature__box {
    position: relative;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    padding-top: 35px;
    padding-bottom: 35px;
    width: 410px;
    background-color: #fff;
}

@media screen and (max-width: 1000px) {
    .index-feature__box {
        padding-top: 3.5vw;
        padding-bottom: 3.5vw;
        width: 41vw;
    }
}

@media screen and (max-width: 767px) {
    .index-feature__box {
        padding-top: 10.9375vw;
        padding-bottom: 0;
        width: 100%;
    }
}

.index-feature__block:nth-of-type(2n+1) .index-feature__box {
    margin-left: auto;
    padding-left: 50px;
}

@media screen and (max-width: 1000px) {
    .index-feature__block:nth-of-type(2n+1) .index-feature__box {
        padding-left: 5vw;
    }
}

@media screen and (max-width: 767px) {
    .index-feature__block:nth-of-type(2n+1) .index-feature__box {
        padding-right: 6.25vw;
        padding-left: 6.25vw;
    }
}

.index-feature__block:nth-of-type(2n) .index-feature__box {
    margin-right: auto;
    padding-right: 50px;
}

@media screen and (max-width: 1000px) {
    .index-feature__block:nth-of-type(2n) .index-feature__box {
        padding-right: 5vw;
    }
}

@media screen and (max-width: 767px) {
    .index-feature__block:nth-of-type(2n) .index-feature__box {
        padding-right: 6.25vw;
        padding-left: 6.25vw;
    }
}

.index-feature__head {
    font-size: 1.42857rem;
    font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", sans-serif;
}

@media screen and (max-width: 767px) {
    .index-feature__head {
        font-size: 6.25vw;
    }
}

.index-feature__txt {
    margin-top: 15px;
    font-size: 1rem;
    line-height: 2;
}

@media screen and (max-width: 1000px) {
    .index-feature__txt {
        margin-top: 1.5vw;
    }
}

@media screen and (max-width: 767px) {
    .index-feature__txt {
        margin-top: 5.3125vw;
        font-size: 4.375vw;
    }
}

/*  index-news
--------------------------------------------- */
.index-news {
    padding-top: 110px;
    padding-bottom: 120px;
}

@media screen and (max-width: 1000px) {
    .index-news {
        padding-top: 11vw;
        padding-bottom: 12vw;
    }
}

@media screen and (max-width: 767px) {
    .index-news {
        padding-top: 12.5vw;
        padding-bottom: 15.625vw;
    }
}

.index-news__tab {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin: 75px auto 0;
    width: 960px;
}

@media screen and (max-width: 1000px) {
    .index-news__tab {
        margin-top: 7.5vw;
        width: 96vw;
    }
}

@media screen and (max-width: 767px) {
    .index-news__tab {
        display: block;
        -webkit-box-sizing: border-box;
        box-sizing: border-box;
        margin-top: 20.3125vw;
        padding: 0 6.25vw;
        width: 100%;
    }
}

.index-news__select {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: justify;
    -ms-flex-align: center;
    -ms-writing-mode: tb-rl;

    -webkit-box-align: center;
    align-items: center;
    -webkit-box-pack: justify;
    justify-content: space-between;
    -webkit-writing-mode: tb-rl;
    writing-mode: tb-rl;
}

@media screen and (max-width: 767px) {
    .index-news__select {
        -ms-writing-mode: lr-tb;

        -webkit-writing-mode: horizontal-tb;
        writing-mode: horizontal-tb;
    }
}

.index-news__select-item {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: center;
    -ms-flex-align: center;
    min-height: 100px;
    width: 50px;
    height: calc(100% / 3);
    background-color: #E4E3E2;
    color: #000;
    font-size: 1rem;
    cursor: pointer;
    -webkit-transition-duration: .3s;
    transition-duration: .3s;
    -webkit-transition-property: background-color, color;
    transition-property: background-color, color;

    -webkit-box-align: center;
    align-items: center;
    -webkit-box-pack: center;
    justify-content: center;
}

@media screen and (max-width: 1000px) {
    .index-news__select-item {
        min-height: 10vw;
    }
}

@media screen and (max-width: 767px) {
    .index-news__select-item {
        min-height: auto;
        width: calc(100% / 3);
        height: 15.625vw;
        font-size: 4.375vw;
    }
}

.index-news__select-item.current {
    position: relative;
    background-color: #5E544F;
    color: #fff;
}

.index-news__select-item.current:before {
    position: absolute;
    top: 50%;
    right: -6px;
    z-index: 1;
    width: 0;
    height: 0;
    border-width: 6px 0 6px 6px;
    border-style: solid;
    border-color: transparent transparent transparent #5E544F;
    content: "";
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
}

@media screen and (max-width: 767px) {
    .index-news__select-item.current:before {
        top: auto;
        right: 0;
        bottom: -1.5625vw;
        left: 0;
        margin: auto;
        border-width: 2.1875vw 2.1875vw 0 2.1875vw;
        border-color: #5E544F transparent transparent transparent;
        -webkit-transform: none;
        transform: none;
    }
}

.index-news__select-item:hover {
    position: relative;
    background-color: #5E544F;
    color: #fff;
}

.index-news__select-item:hover:before {
    position: absolute;
    top: 50%;
    right: -6px;
    width: 0;
    height: 0;
    border-width: 6px 0 6px 6px;
    border-style: solid;
    border-color: transparent transparent transparent #5E544F;
    content: "";
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
}

@media screen and (max-width: 767px) {
    .index-news__select-item:hover:before {
        top: auto;
        right: 0;
        bottom: -1.5625vw;
        left: 0;
        margin: auto;
        border-width: 2.1875vw 2.1875vw 0 2.1875vw;
        border-color: #5E544F transparent transparent transparent;
        -webkit-transform: none;
        transform: none;
    }
}

.index-news__wrapper {
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    padding: 50px 60px;
    width: 910px;
    background-color: #F3F2F1;

    -webkit-box-align: center;
    align-items: center;
}

@media screen and (max-width: 1000px) {
    .index-news__wrapper {
        padding: 5vw 6vw;
        width: 91vw;
    }
}

@media screen and (max-width: 767px) {
    .index-news__wrapper {
        padding: 6.25vw 6.25vw 5vw;
        width: 100%;
    }
}

.index-news__box {
    display: none;
    width: 100%;
}

.index-news__box.current {
    display: block;
}

.index-news__item {
    border-bottom: 1px solid #fff;
}

.index-news__item:last-of-type {
    border-bottom: none;
}

.index-news__link {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
    padding: 22px 0;
    width: 100%;

    -webkit-box-align: center;
    align-items: center;
}

@media screen and (max-width: 1000px) {
    .index-news__link {
        padding: 2.2vw 0;
    }
}

@media screen and (max-width: 767px) {
    .index-news__link {
        padding: 5.3125vw 0;

        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    }
}

.index-news__date {
    font-size: 1rem;
}

@media screen and (max-width: 767px) {
    .index-news__date {
        font-size: 4.375vw;
    }
}

.index-news__cat {
    margin-left: 15px;
    width: 100px;
    background-color: #FF862B;
    color: #fff;
    text-align: center;
    font-size: 1rem;

    -webkit-box-flex: 0;
    -ms-flex: none;
    flex: none;
}

@media screen and (max-width: 1000px) {
    .index-news__cat {
        margin-left: 1.5vw;
    }
}

@media screen and (max-width: 767px) {
    .index-news__cat {
        margin-left: auto;
        padding: 0.3125vw 0;
        width: 30.75vw;
        font-size: 3.75vw;
    }
}

.index-news__cat--notice {
    background-color: #FF862B;
}

.index-news__cat--study {
    background-color: #4D413C;
}

.windows .index-news__cat {
    padding-top: 2px;
}

.index-news__txt {
    margin-left: 16px;
    font-size: 1rem;
}

@media screen and (max-width: 1000px) {
    .index-news__txt {
        margin-left: 1.6vw;
    }
}

@media screen and (max-width: 767px) {
    .index-news__txt {
        margin-top: 3.125vw;
        margin-left: 0;
        width: 100%;
        line-height: 2;
    }
}

.index-news__link:hover .index-news__txt {
    text-decoration: underline;
}

.index-news__more {
    position: absolute;
    right: 30px;
    bottom: 23px;
}

@media screen and (max-width: 1000px) {
    .index-news__more {
        right: 3vw;
        bottom: 2.3vw;
    }
}

@media screen and (max-width: 767px) {
    .index-news__more {
        position: static;
        margin-top: 4.0625vw;
        text-align: right;
    }
}

.index-news__more-link {
    position: relative;
    display: block;
    padding-right: 1.5em;
    font-size: 0.85714rem;
}

@media screen and (max-width: 767px) {
    .index-news__more-link {
        padding-right: 3.75vw;
        font-size: 3.75vw;
    }
}

.index-news__more-link:before {
    position: absolute;
    top: 0;
    right: 0;
    width: 1em;
    height: 1em;
    content: ">";
}

.index-news__more-link:hover {
    text-decoration: underline;
}

/*  index-recruit
--------------------------------------------- */
.index-recruit {
    padding-top: 100px;
    padding-bottom: 120px;
    background-color: #F3F2F1;
}

@media screen and (max-width: 1000px) {
    .index-recruit {
        padding-top: 10vw;
        padding-bottom: 12vw;
    }
}

@media screen and (max-width: 767px) {
    .index-recruit {
        padding-top: 15.625vw;
        padding-bottom: 15.625vw;
    }
}

.index-recruit__inner {
    position: relative;
    margin: 0 auto;
    max-width: 960px;
}

@media screen and (max-width: 1000px) {
    .index-recruit__inner {
        max-width: 96vw;
    }
}

@media screen and (max-width: 767px) {
    .index-recruit__inner {
        -webkit-box-sizing: border-box;
        box-sizing: border-box;
        padding: 0 6.25vw;
        max-width: none;
    }
}

.index-recruit__box {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    padding: 40px 80px 50px;
    width: 560px;
    background-color: #fff;
}

@media screen and (max-width: 1000px) {
    .index-recruit__box {
        padding: 4vw 8vw 5vw;
        width: 56vw;
    }
}

@media screen and (max-width: 767px) {
    .index-recruit__box {
        padding: 13.125vw 6.25vw;
        width: 100%;
    }
}

.index-recruit__body {
    margin-top: 65px;
}

@media screen and (max-width: 1000px) {
    .index-recruit__body {
        margin-top: 6.5vw;
    }
}

@media screen and (max-width: 767px) {
    .index-recruit__body {
        margin-top: 17.8125vw;
    }
}

.index-recruit__lead {
    padding-bottom: 15px;
    border-bottom: 1px solid #C9C6C4;
    text-align: center;
    font-size: 1.42857rem;
    font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", sans-serif;
}

@media screen and (max-width: 1000px) {
    .index-recruit__lead {
        padding-bottom: 1.5vw;
    }
}

@media screen and (max-width: 767px) {
    .index-recruit__lead {
        padding-bottom: 4.6875vw;
        text-align: center;
        font-size: 6.25vw;
    }
}

.index-recruit__txt {
    margin-bottom: 35px;
    padding-top: 25px;
    font-size: 1rem;
    line-height: 2;
}

@media screen and (max-width: 1000px) {
    .index-recruit__txt {
        margin-bottom: 2.5vw;
        padding-top: 2.5vw;
    }
}

@media screen and (max-width: 767px) {
    .index-recruit__txt {
        margin-bottom: 10.9375vw;
        padding-top: 7.1875vw;
        font-size: 4.375vw;
    }
}

.index-recruit__img {
    position: absolute;
    top: 50%;
    right: 0;
    width: 440px;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
}

@media screen and (max-width: 1000px) {
    .index-recruit__img {
        width: 44vw;
    }
}

@media screen and (max-width: 767px) {
    .index-recruit__img {
        position: static;
        width: 100%;
        -webkit-transform: none;
        transform: none;
    }
}

.index-recruit__img img {
    width: 100%;
}

/*  index-area
--------------------------------------------- */
.index-area {
    padding-top: 110px;
    padding-bottom: 120px;
}

@media screen and (max-width: 1000px) {
    .index-area {
        padding-top: 11vw;
        padding-bottom: 12vw;
    }
}

@media screen and (max-width: 767px) {
    .index-area {
        padding-top: 12.5vw;
        padding-bottom: 12.5vw;
    }
}

.index-area__body {
    margin: 70px auto 20px;
    width: 960px;
}

@media screen and (max-width: 1000px) {
    .index-area__body {
        margin: 7vw auto 2vw;
        width: 96vw;
    }
}

@media screen and (max-width: 767px) {
    .index-area__body {
        -webkit-box-sizing: border-box;
        box-sizing: border-box;
        margin: 17.8125vw auto 10vw;
        width: 100%;
    }
}

.index-area__lead {
    margin: 0 auto;
    width: 480px;
    font-size: 1rem;
    line-height: 2;
}

@media screen and (max-width: 767px) {
    .index-area__lead {
        -webkit-box-sizing: border-box;
        box-sizing: border-box;
        padding: 0 6.25vw;
        width: 100%;
        font-size: 4.375vw;
    }
}

.index-area__info {
    position: relative;
    margin-top: 90px;
}

@media screen and (max-width: 1000px) {
    .index-area__info {
        margin-top: 9vw;
    }
}

@media screen and (max-width: 767px) {
    .index-area__info {
        margin-top: 6.875vw;
    }
}

.index-area__map {
    position: absolute;
    top: -60px;
    left: 0;
    width: 540px;
}

@media screen and (max-width: 1000px) {
    .index-area__map {
        top: -6vw;
        width: 54vw;
    }
}

@media screen and (max-width: 767px) {
    .index-area__map {
        position: static;
        width: 100%;
    }
}

.index-area__map img {
    width: 100%;
}

.index-area__box {
    position: relative;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    margin-left: auto;
    padding: 35px 50px;
    width: 470px;
    background-color: #fff;
    font-size: 0.85714rem;
    line-height: 2;
}

@media screen and (max-width: 1000px) {
    .index-area__box {
        padding: 3.5vw 5vw;
        width: 47vw;
    }
}

@media screen and (max-width: 767px) {
    .index-area__box {
        -webkit-box-sizing: border-box;
        box-sizing: border-box;
        padding: 7.8125vw 6.25vw 0;
        width: 100%;
    }
}

.index-area__head {
    font-weight: bold;
}

.index-area__area {
    margin-bottom: 15px;
}

@media screen and (max-width: 1000px) {
    .index-area__area {
        margin-bottom: 1.5vw;
    }
}

@media screen and (max-width: 767px) {
    .index-area__area {
        margin-bottom: 5.3125vw;
    }
}

.index-area__unit {
    position: relative;
    margin-bottom: 10px;
    padding-left: 20px;
}

@media screen and (max-width: 1000px) {
    .index-area__unit {
        margin-bottom: 1vw;
        padding-left: 2vw;
    }
}

@media screen and (max-width: 767px) {
    .index-area__unit {
        margin-bottom: 2.8125vw;
        padding-left: 6.25vw;
    }
}

.index-area__unit:before {
    position: absolute;
    top: 50%;
    left: 0;
    width: 1px;
    height: 90%;
    background-color: #FF862B;
    content: "";
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
}

@media screen and (max-width: 767px) {
    .index-area__unit:before {
        width: 0.3125vw;
        height: 90%;
    }
}

/* ---------------------------------------------
*   news
--------------------------------------------- */
/*  news
--------------------------------------------- */
.news {
    padding-top: 35px;
    padding-bottom: 55px;
}

@media screen and (max-width: 1000px) {
    .news {
        padding-top: 3.5vw;
        padding-bottom: 5.5vw;
    }
}

@media screen and (max-width: 767px) {
    .news {
        padding-top: 12.5vw;
        padding-bottom: 0;
    }
}

.news__body {
    margin-top: 60px;
}

@media screen and (max-width: 1000px) {
    .news__body {
        margin-top: 6vw;
    }
}

@media screen and (max-width: 767px) {
    .news__body {
        margin-top: 10.625vw;
    }
}

/*  news-tab
--------------------------------------------- */
.news-tab__list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
    margin: 0 auto;
    width: 480px;

    -webkit-box-align: center;
    align-items: center;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}

@media screen and (max-width: 767px) {
    .news-tab__list {
        -ms-flex-pack: center;
        width: 100%;

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

.news-tab__item {
    margin-top: 20px;
    margin-left: 15px;
}

@media screen and (max-width: 767px) {
    .news-tab__item {
        margin-top: 6.25vw;
        margin-left: 3.125vw;
    }
}

.news-tab__item:nth-of-type(3n+1) {
    margin-left: 0;
}

.news-tab__link {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: center;
    -ms-flex-align: center;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    width: 150px;
    height: 24px;
    border: 1px solid #706763;
    background-color: #fff;
    font-size: 0.85714rem;
    -webkit-transition-duration: .3s;
    transition-duration: .3s;
    -webkit-transition-property: background-color, color;
    transition-property: background-color, color;

    -webkit-box-align: center;
    align-items: center;
    -webkit-box-pack: center;
    justify-content: center;
}

@media screen and (max-width: 767px) {
    .news-tab__link {
        width: 27.1875vw;
        height: 11.25vw;
        border-width: 0.3125vw;
    }
}

.news-tab__link.current {
    background-color: #F3F2F1;
}

.news-tab__link:hover {
    background-color: #5E544F;
    color: #fff;
}

/*  news-content
--------------------------------------------- */
.news-content {
    margin: 60px auto 0;
    width: 640px;
}

@media screen and (max-width: 767px) {
    .news-content {
        -webkit-box-sizing: border-box;
        box-sizing: border-box;
        margin-top: 9.375vw;
        padding: 0 6.25vw;
        width: 100%;
    }
}

.news-content__item {
    border-top: 1px solid #C9C6C4;
}

@media screen and (max-width: 767px) {
    .news-content__item {
        border-width: 0.3125vw;
    }
}

.news-content__item:last-of-type {
    border-bottom: 1px solid #C9C6C4;
}

@media screen and (max-width: 767px) {
    .news-content__item:last-of-type {
        border-width: 0.3125vw;
    }
}

.news-content__link {
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
    padding: 30px 83px 30px 20px;

    -webkit-box-align: center;
    align-items: center;
}

@media screen and (max-width: 767px) {
    .news-content__link {
        display: block;
        padding: 9.375vw 15.625vw 9.375vw 0;
    }
}

.news-content__link:before {
    position: absolute;
    top: 50%;
    right: 20px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    width: 10px;
    height: 10px;
    border-top: 2px solid #5E544F;
    border-right: 2px solid #5E544F;
    content: "";
    -webkit-transform: rotate(45deg) translateY(-50%);
    transform: rotate(45deg) translateY(-50%);
}

@media screen and (max-width: 767px) {
    .news-content__link:before {
        right: 3.125vw;
        width: 3.125vw;
        height: 3.125vw;
        border-width: 0.3125vw;
    }
}

.news-content__info {
    position: relative;
    padding-right: 30px;
}

@media screen and (max-width: 767px) {
    .news-content__info {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -ms-flex-align: center;
        padding-right: 0;

        -webkit-box-align: center;
        align-items: center;
    }
}

.news-content__info:before {
    position: absolute;
    top: 50%;
    right: 0;
    width: 1px;
    height: 40px;
    background-color: #C9C6C4;
    content: "";
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
}

@media screen and (max-width: 767px) {
    .news-content__info:before {
        content: none;
    }
}

.news-content__cat {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: center;
    -ms-flex-align: center;
    height: 20px;
    background-color: #FF862B;
    color: #fff;
    font-size: 0.85714rem;

    -webkit-box-align: center;
    align-items: center;
    -webkit-box-pack: center;
    justify-content: center;
}

@media screen and (max-width: 767px) {
    .news-content__cat {
        height: 6.25vw;
        font-size: 3.75vw;
    }
}

.news-content__cat--notice {
    background-color: #FF862B;
}

.news-content__cat--study {
    background-color: #4D413C;
}

.windows .news-content__cat {
    padding-top: 2px;
}

.news-content__date {
    text-align: center;
    font-size: 0.85714rem;
    line-height: 2.2;
}

@media screen and (max-width: 767px) {
    .news-content__date {
        margin-left: 3.125vw;
        font-size: 3.75vw;
        line-height: 1.5;
    }
}

.news-content__txt {
    padding-left: 30px;
    font-weight: 600;
    font-size: 1rem;
    line-height: 2;
}

@media screen and (max-width: 767px) {
    .news-content__txt {
        margin-top: 4.6875vw;
        padding-left: 0;
        font-size: 4.375vw;
    }
}

.news-content__link:hover .news-content__txt {
    text-decoration: underline;
}

/* ---------------------------------------------
*   news-detail
--------------------------------------------- */
/*  news-detail
--------------------------------------------- */
.news-detail {
    margin: 0 auto;
    padding-top: 85px;
    padding-bottom: 100px;
    max-width: 640px;
}

@media screen and (max-width: 1000px) {
    .news-detail {
        padding-top: 8.5vw;
        padding-bottom: 10vw;
    }
}

@media screen and (max-width: 767px) {
    .news-detail {
        -webkit-box-sizing: border-box;
        box-sizing: border-box;
        padding: 15.625vw 6.25% 0;
        max-width: none;
        width: 100%;
    }
}

.news-detail__head {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;

    -webkit-box-align: center;
    align-items: center;
}

.news-detail__cat {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: center;
    -ms-flex-align: center;
    width: 100px;
    height: 20px;
    background-color: #FF862B;
    color: #fff;
    font-size: 0.85714rem;

    -webkit-box-align: center;
    align-items: center;
    -webkit-box-pack: center;
    justify-content: center;
}

@media screen and (max-width: 767px) {
    .news-detail__cat {
        width: 30.75vw;
        height: 6.25vw;
        font-size: 3.75vw;
    }
}

.news-detail__cat--notice {
    background-color: #FF862B;
}

.news-detail__cat--study {
    background-color: #4D413C;
}

.windows .news-detail__cat {
    padding-top: 2px;
}

.news-detail__date {
    margin-left: 12px;
    font-size: 1rem;
}

@media screen and (max-width: 767px) {
    .news-detail__date {
        margin-left: 3.75vw;
        font-size: 4.0625vw;
    }
}

.news-detail__ttl {
    margin-top: 20px;
    padding-bottom: 23px;
    border-bottom: 1px solid #C9C6C4;
    font-weight: 600;
    font-size: 1.14286rem;
    line-height: 2;
}

@media screen and (max-width: 767px) {
    .news-detail__ttl {
        margin-top: 7.8125vw;
        padding-bottom: 6.25vw;
        border-width: 0.3125vw;
        font-size: 5vw;
    }
}

.news-detail__body {
    padding-top: 30px;
}

@media screen and (max-width: 767px) {
    .news-detail__body {
        padding-top: 9.375vw;
    }
}

/*  news-detail-tab
--------------------------------------------- */
.news-detail-tab {
    margin-top: 60px;
    text-align: center;
}

@media screen and (max-width: 767px) {
    .news-detail-tab {
        margin-top: 9.375vw;
    }
}

.news-detail-tab__txt {
    position: relative;
    display: inline-block;
    font-size: 1rem;
}

@media screen and (max-width: 767px) {
    .news-detail-tab__txt {
        font-size: 4.375vw;
    }
}

.news-detail-tab__txt:before, .news-detail-tab__txt:after {
    position: absolute;
    top: 45%;
    width: 190px;
    height: 1px;
    background-color: #C9C6C4;
    content: "";
}

@media screen and (max-width: 767px) {
    .news-detail-tab__txt:before, .news-detail-tab__txt:after {
        width: 28.125vw;
        height: 0.3125vw;
    }
}

.news-detail-tab__txt:before {
    left: -205px;
}

@media screen and (max-width: 767px) {
    .news-detail-tab__txt:before {
        left: -32.8125vw;
    }
}

.news-detail-tab__txt:after {
    right: -205px;
}

@media screen and (max-width: 767px) {
    .news-detail-tab__txt:after {
        right: -32.8125vw;
    }
}

.news-detail-tab__list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
    margin: 0 auto;
    width: 480px;

    -webkit-box-align: center;
    align-items: center;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}

@media screen and (max-width: 767px) {
    .news-detail-tab__list {
        margin-top: 2.1875vw;
        width: 100%;
    }
}

.news-detail-tab__item {
    margin-top: 18px;
    margin-left: 15px;
    width: 150px;
    height: 24px;
}

@media screen and (max-width: 767px) {
    .news-detail-tab__item {
        margin-top: 3.125vw;
        margin-left: 3.21429%;
        width: 31.07143%;
        height: 11.25vw;
    }
}

.news-detail-tab__item:nth-of-type(3n+1) {
    margin-left: 0;
}

.news-detail-tab__link {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: center;
    -ms-flex-align: center;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    width: 100%;
    height: 100%;
    border: 1px solid #706763;
    background-color: #fff;
    font-size: 0.85714rem;
    -webkit-transition-duration: .3s;
    transition-duration: .3s;
    -webkit-transition-property: background-color, color;
    transition-property: background-color, color;

    -webkit-box-align: center;
    align-items: center;
    -webkit-box-pack: center;
    justify-content: center;
}

@media screen and (max-width: 767px) {
    .news-detail-tab__link {
        border-width: 0.3125vw;
        font-size: 3.75vw;
    }
}

.news-detail-tab__link:hover {
    background-color: #5E544F;
    color: #fff;
}

/* ---------------------------------------------
*   reha
--------------------------------------------- */
/*  reha
--------------------------------------------- */
.reha {
    padding-top: 120px;
    padding-bottom: 120px;
}

@media screen and (max-width: 1000px) {
    .reha {
        padding-top: 12vw;
        padding-bottom: 12vw;
    }
}

@media screen and (max-width: 767px) {
    .reha {
        padding-top: 12.5vw;
        padding-bottom: 0;
    }
}

.reha__top {
    position: relative;
    margin: 0 auto;
    padding-bottom: 115px;
    width: 960px;
}

@media screen and (max-width: 1000px) {
    .reha__top {
        padding-bottom: 11.5vw;
        width: 96vw;
    }
}

@media screen and (max-width: 767px) {
    .reha__top {
        padding-bottom: 0;
        width: 100%;
    }
}

.reha__img {
    position: absolute;
    top: -30px;
    left: 0;
    width: 560px;
}

@media screen and (max-width: 1000px) {
    .reha__img {
        top: -3vw;
        width: 56vw;
    }
}

@media screen and (max-width: 767px) {
    .reha__img {
        position: static;
        margin-top: 12.5vw;
        width: 100%;
    }
}

.reha__img img {
    width: 100%;
}

.reha__lead {
    position: relative;
    z-index: 10;
    margin-left: 510px;
    font-size: 1.71429rem;
    font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", sans-serif;
    line-height: 2;
}

@media screen and (max-width: 1000px) {
    .reha__lead {
        margin-left: 49vw;
    }
}

@media screen and (max-width: 767px) {
    .reha__lead {
        -webkit-box-sizing: border-box;
        box-sizing: border-box;
        margin-left: 0;
        padding-left: 6.25%;
        width: 100%;
        letter-spacing: -0.05em;
        font-size: 6.25vw;
    }
}

.windows .reha__lead {
    letter-spacing: -0.05em;
}

.reha__lead:before {
    position: absolute;
    bottom: -1em;
    left: 0;
    width: 100px;
    height: 1px;
    background-color: #FF862B;
    content: "";
}

@media screen and (max-width: 767px) {
    .reha__lead:before {
        left: 6.25vw;
        width: 21.875vw;
        height: 0.3125vw;
    }
}

.reha__txt {
    position: relative;
    z-index: 10;
    margin-top: 55px;
    margin-left: auto;
    width: 320px;
    font-size: 1rem;
    line-height: 2;
}

@media screen and (max-width: 1000px) {
    .reha__txt {
        margin-top: 5.5vw;
        width: 32vw;
    }
}

@media screen and (max-width: 767px) {
    .reha__txt {
        -webkit-box-sizing: border-box;
        box-sizing: border-box;
        margin-top: 14.0625vw;
        padding: 0 6.25%;
        width: 100%;
    }
}

/*  reha-policy
--------------------------------------------- */
.reha-policy {
    padding-top: 87px;
    padding-bottom: 92px;
    background-color: #F3F2F1;
}

@media screen and (max-width: 1000px) {
    .reha-policy {
        padding-top: 8.7vw;
        padding-bottom: 9.2vw;
    }
}

@media screen and (max-width: 767px) {
    .reha-policy {
        padding-top: 12.5vw;
        padding-bottom: 12.5vw;
    }
}

.reha-policy__body {
    margin-top: 60px;
}

@media screen and (max-width: 1000px) {
    .reha-policy__body {
        margin-top: 6vw;
    }
}

@media screen and (max-width: 767px) {
    .reha-policy__body {
        margin-top: 18.75vw;
    }
}

.reha-policy__txt {
    text-align: center;
    font-size: 1.71429rem;
    font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", sans-serif;
    line-height: 2.5;
}

@media screen and (max-width: 767px) {
    .reha-policy__txt {
        font-size: 5.625vw;
        line-height: 1.5;
    }
}

/*  reha-content
--------------------------------------------- */
.reha-content {
    padding-top: 110px;
    padding-bottom: 120px;
}

@media screen and (max-width: 1000px) {
    .reha-content {
        padding-top: 11vw;
        padding-bottom: 12vw;
    }
}

@media screen and (max-width: 767px) {
    .reha-content {
        padding-top: 7.8125vw;
        padding-bottom: 15.625vw;
    }
}

.reha-content__body {
    margin-top: 70px;
}

@media screen and (max-width: 1000px) {
    .reha-content__body {
        margin-top: 7vw;
    }
}

@media screen and (max-width: 767px) {
    .reha-content__body {
        -webkit-box-sizing: border-box;
        box-sizing: border-box;
        margin-top: 18.75vw;
        padding: 0 6.25%;
        width: 100%;
    }
}

.reha-content__txt {
    margin: 0 auto;
    width: 640px;
    font-size: 1rem;
    line-height: 2;
}

@media screen and (max-width: 767px) {
    .reha-content__txt {
        width: 100%;
        font-size: 4.375vw;
    }
}

.reha-content__support {
    margin: 40px auto 0;
    width: 640px;
    text-align: center;
}

@media screen and (max-width: 1000px) {
    .reha-content__support {
        margin-top: 4vw;
    }
}

@media screen and (max-width: 767px) {
    .reha-content__support {
        margin-top: 6.25vw;
        width: 100%;
    }
}

.reha-content__support-head {
    display: inline-block;
    font-size: 1.71429rem;
    font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", sans-serif;
    line-height: 2;
}

@media screen and (max-width: 767px) {
    .reha-content__support-head {
        font-size: 6.25vw;
    }
}

.reha-content__support-head span {
    padding-bottom: 15px;
    border-bottom: 1px solid #C9C6C4;
}

@media screen and (max-width: 767px) {
    .reha-content__support-head span {
        padding-bottom: 3.125vw;
        border-width: 0.3125vw;
    }
}

.ie .reha-content__support-head span {
    padding-bottom: 0;
}

.reha-content__support-list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin-top: 23px;

    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}

@media screen and (max-width: 1000px) {
    .reha-content__support-list {
        margin-top: 2.3vw;
    }
}

@media screen and (max-width: 767px) {
    .reha-content__support-list {
        margin-top: 5.625vw;
    }
}

.reha-content__support-item {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: center;
    -ms-flex-align: center;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    box-sizing: border-box;
    margin-top: 20px;
    margin-right: 20px;
    width: 200px;
    height: 200px;
    border: 1px solid #C9C6C4;
    background-color: #F6F6F5;
    font-size: 1.14286rem;
    font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", sans-serif;

    -webkit-box-align: center;
    align-items: center;
    -webkit-box-pack: center;
    justify-content: center;
}

@media screen and (max-width: 767px) {
    .reha-content__support-item {
        -webkit-box-sizing: border-box;
        box-sizing: border-box;
        margin-top: 3.75vw;
        margin-right: 4.28571%;
        padding: 0 6.07143%;
        width: 47.85714%;
        height: 41.875vw;
        font-size: 4.375vw;
    }
}

.windows .reha-content__support-item {
    letter-spacing: -0.05em;
}

@media screen and (min-width: 768px) {
    .reha-content__support-item:nth-of-type(3n) {
        margin-right: 0;
    }
}

@media screen and (max-width: 767px) {
    .reha-content__support-item:nth-of-type(2n) {
        margin-right: 0;
    }
}

.reha-content__content {
    margin: 45px auto 0;
    width: 640px;
    text-align: center;
}

@media screen and (max-width: 1000px) {
    .reha-content__content {
        margin-top: 4.5vw;
    }
}

@media screen and (max-width: 767px) {
    .reha-content__content {
        margin-top: 9.375vw;
        width: 100%;
    }
}

.reha-content__content-head {
    display: inline-block;
    padding-bottom: 2px;
    border-bottom: 1px solid #C9C6C4;
    font-size: 1.71429rem;
    font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", sans-serif;
    line-height: 2;
}

@media screen and (max-width: 767px) {
    .reha-content__content-head {
        padding-bottom: 0;
        border-width: 0.3125vw;
        font-size: 6.25vw;
    }
}

.reha-content__content-box {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: start;
    margin-top: 40px;
    padding: 22px 25px;
    border: 1px solid #C9C6C4;
    background-color: #F6F6F5;
    text-align: left;

    -webkit-box-align: start;
    align-items: flex-start;
}

@media screen and (max-width: 1000px) {
    .reha-content__content-box {
        margin-top: 4.5vw;
    }
}

@media screen and (max-width: 767px) {
    .reha-content__content-box {
        display: block;
        margin-top: 9.375vw;
        padding: 6.875vw 4.6875vw;
        border-width: 0.3125vw;
    }
}

.reha-content__content-list {
    width: 50%;
}

@media screen and (max-width: 767px) {
    .reha-content__content-list {
        width: 100%;
    }
}

.reha-content__content-item {
    padding-left: 1em;
    text-indent: -1em;
    font-size: 1rem;
    line-height: 2;
}

@media screen and (max-width: 767px) {
    .reha-content__content-item {
        font-size: 4.375vw;
    }
}

/*  reha-how
--------------------------------------------- */
.reha-how {
    padding-top: 90px;
    padding-bottom: 120px;
    background-color: #F3F2F1;
}

@media screen and (max-width: 1000px) {
    .reha-how {
        padding-top: 9vw;
        padding-bottom: 12vw;
    }
}

@media screen and (max-width: 767px) {
    .reha-how {
        padding-top: 12.5vw;
        padding-bottom: 15.625vw;
    }
}

.reha-how__body {
    margin-top: 75px;
}

@media screen and (max-width: 1000px) {
    .reha-how__body {
        margin-top: 7.5vw;
    }
}

@media screen and (max-width: 767px) {
    .reha-how__body {
        -webkit-box-sizing: border-box;
        box-sizing: border-box;
        margin-top: 17.5vw;
        padding: 0 6.25%;
        width: 100%;
    }
}

.reha-how__lead {
    margin: 0 auto;
    width: 640px;
    font-size: 1rem;
}

@media screen and (max-width: 767px) {
    .reha-how__lead {
        width: 100%;
        font-size: 4.375vw;
        line-height: 2;
    }
}

.reha-how__list {
    position: relative;
    margin: 55px auto 0;
    width: 640px;
}

@media screen and (max-width: 1000px) {
    .reha-how__list {
        margin-top: 5.5vw;
    }
}

@media screen and (max-width: 767px) {
    .reha-how__list {
        margin-top: 7.1875vw;
        width: 100%;
    }
}

.reha-how__list:before {
    position: absolute;
    top: 0;
    right: 0;
    left: 0;
    margin: auto;
    width: 1px;
    height: 100%;
    background-color: #C9C6C4;
    content: "";
}

@media screen and (max-width: 767px) {
    .reha-how__list:before {
        width: 0.3125vw;
    }
}

.reha-how__item {
    position: relative;
    z-index: 10;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
    margin-top: 28px;
    border: 1px solid #C9C6C4;
    background-color: #fff;

    -webkit-box-align: center;
    align-items: center;
}

@media screen and (max-width: 1000px) {
    .reha-how__item {
        margin-top: 2.8vw;
    }
}

@media screen and (max-width: 767px) {
    .reha-how__item {
        display: block;
        margin-top: 9.375vw;
    }
}

.reha-how__item:first-of-type {
    margin-top: 0;
}

.reha-how__img {
    width: 210px;
}

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

.reha-how__img img {
    width: 100%;
}

.reha-how__box {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    padding: 0 30px;
    width: 430px;
}

@media screen and (max-width: 767px) {
    .reha-how__box {
        padding: 7.5vw 6.25vw;
        width: 100%;
    }
}

.reha-how__head {
    font-size: 1.28571rem;
    font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", sans-serif;
}

@media screen and (max-width: 767px) {
    .reha-how__head {
        font-size: 5.625vw;
    }
}

.reha-how__txt {
    margin-top: 10px;
    font-size: 1rem;
}

@media screen and (max-width: 767px) {
    .reha-how__txt {
        margin-top: 4.375vw;
        font-size: 4.375vw;
    }
}

/*  reha-cost
--------------------------------------------- */
.reha-cost {
    padding-top: 110px;
    padding-bottom: 120px;
}

@media screen and (max-width: 1000px) {
    .reha-cost {
        padding-top: 11vw;
        padding-bottom: 12vw;
    }
}

@media screen and (max-width: 767px) {
    .reha-cost {
        padding-top: 12.5vw;
        padding-bottom: 15.625vw;
    }
}

.reha-cost__body {
    margin-top: 85px;
}

@media screen and (max-width: 1000px) {
    .reha-cost__body {
        margin-top: 8.5vw;
    }
}

@media screen and (max-width: 767px) {
    .reha-cost__body {
        -webkit-box-sizing: border-box;
        box-sizing: border-box;
        margin-top: 20vw;
        padding: 0 6.25%;
        width: 100%;
    }
}

.reha-cost__lead {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    margin: 0 auto;
    padding: 13px 0;
    width: 840px;
    border: 1px solid #B8B3B1;
    text-align: center;
    font-size: 1rem;
    line-height: 2;
}

@media screen and (max-width: 1000px) {
    .reha-cost__lead {
        width: 84vw;
    }
}

@media screen and (max-width: 767px) {
    .reha-cost__lead {
        -webkit-box-sizing: border-box;
        box-sizing: border-box;
        padding: 3.4375vw 6.25vw;
        width: 100%;
        border-width: 0.3125vw;
    }
}

/*  reha-cost-base
--------------------------------------------- */
.reha-cost-base {
    margin: 50px auto 0;
    width: 840px;
}

@media screen and (max-width: 1000px) {
    .reha-cost-base {
        margin-top: 5vw;
        width: 84vw;
    }
}

@media screen and (max-width: 767px) {
    .reha-cost-base {
        margin-top: 9.375vw;
        width: 100%;
    }
}

@media screen and (max-width: 767px) {
    .reha-cost-base__table {
        width: 100%;
    }
}

@media screen and (max-width: 767px) {
    .reha-cost-base__table:last-of-type {
        border-bottom: 0.3125vw solid #C9C6C4;
    }
}

.reha-cost-base__table thead th {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    padding: 8px 0;
    width: 150px;
    border-collapse: separate;
    border-left: 2px solid #fff;
    background-color: #EDECEB;
    text-align: center;
    font-weight: 600;
    font-size: 1rem;
}

@media screen and (max-width: 1000px) {
    .reha-cost-base__table thead th {
        padding: 0.8vw 0;
        width: 15vw;
        border-width: 0.2vw;
    }
}

@media screen and (max-width: 767px) {
    .reha-cost-base__table thead th {
        padding: 3.4375vw 0;
        width: 100%;
        border: none;
        font-size: 3.125vw;
    }
}

.reha-cost-base__table thead th:first-of-type {
    width: 540px;
    border-left: none;
}

@media screen and (max-width: 1000px) {
    .reha-cost-base__table thead th:first-of-type {
        width: 54vw;
    }
}

@media screen and (max-width: 767px) {
    .reha-cost-base__table thead th:first-of-type {
        width: 50%;
    }
}

@media screen and (max-width: 767px) {
    .reha-cost-base__table thead th.border {
        border-left: 0.3125vw solid #fff;
    }
}

.reha-cost-base__table tbody tr {
    border-bottom: 1px solid #C9C6C4;
}

@media screen and (max-width: 767px) {
    .reha-cost-base__table tbody tr {
        border-width: 0.3125vw;
    }
}

@media screen and (max-width: 767px) {
    .reha-cost-base__table tbody tr:last-of-type {
        border-bottom: none;
    }
}

.reha-cost-base__table tbody td {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    padding: 31px 23px;
    text-align: center;
    font-size: 1rem;
}

@media screen and (max-width: 1000px) {
    .reha-cost-base__table tbody td {
        padding: 3.1vw 2.3vw;
    }
}

@media screen and (max-width: 767px) {
    .reha-cost-base__table tbody td {
        padding: 5.3125vw 6.25vw;
        font-size: 3.125vw;
    }
}

.reha-cost-base__table tbody td.col2 {
    position: relative;
    width: 270px;
    text-align: left;
}

@media screen and (max-width: 1000px) {
    .reha-cost-base__table tbody td.col2 {
        width: 27vw;
    }
}

@media screen and (max-width: 767px) {
    .reha-cost-base__table tbody td.col2 {
        width: 50%;
        vertical-align: baseline;
    }
}

.reha-cost-base__table tbody td.col2:before {
    position: absolute;
    top: 50%;
    left: 0;
    width: 1px;
    height: 36px;
    background-color: #C9C6C4;
    content: "";
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
}

@media screen and (max-width: 1000px) {
    .reha-cost-base__table tbody td.col2:before {
        height: 3.6vw;
    }
}

@media screen and (max-width: 767px) {
    .reha-cost-base__table tbody td.col2:before {
        width: 0.3125vw;
        height: 17.1875vw;
    }
}

.reha-cost-base__table tbody td.col2:first-of-type:before {
    content: none;
}

.reha-cost-base__table tbody td.large {
    font-weight: 600;
    font-size: 1.14286rem;
}

@media screen and (max-width: 767px) {
    .reha-cost-base__table tbody td.large {
        font-size: 3.125vw;
    }
}

.reha-cost-base__table tbody td .strong {
    font-weight: 600;
}

/*  reha-cost-other
--------------------------------------------- */
.reha-cost-other {
    margin: 55px auto 0;
    width: 840px;
}

@media screen and (max-width: 1000px) {
    .reha-cost-other {
        margin-top: 5.5vw;
        width: 84vw;
    }
}

@media screen and (max-width: 767px) {
    .reha-cost-other {
        margin-top: 10.9375vw;
        width: 100%;
    }
}

.reha-cost-other__head {
    text-align: center;
    font-weight: 600;
    font-size: 1.28571rem;
}

@media screen and (max-width: 767px) {
    .reha-cost-other__head {
        font-size: 4.375vw;
    }
}

.reha-cost-other__table {
    margin-top: 25px;
    width: 100%;
    table-layout: fixed;
}

@media screen and (max-width: 1000px) {
    .reha-cost-other__table {
        margin-top: 2.5vw;
    }
}

@media screen and (max-width: 767px) {
    .reha-cost-other__table {
        margin-top: 8.75vw;
    }
}

.reha-cost-other__table thead th {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    padding: 8px 0;
    width: 130px;
    border-collapse: separate;
    border-left: 2px solid #fff;
    background-color: #EDECEB;
    text-align: center;
    font-weight: 600;
    font-size: 1rem;
}

@media screen and (max-width: 1000px) {
    .reha-cost-other__table thead th {
        padding: 0.8vw 0;
        width: 13vw;
        border-width: 0.2vw;
    }
}

@media screen and (max-width: 767px) {
    .reha-cost-other__table thead th {
        padding: 1.25vw 0;
        width: 15.625vw;
        border-width: 0.3125vw;
        font-size: 3.125vw;
    }
}

.reha-cost-other__table thead th:first-of-type {
    width: 320px;
    border-left: none;
}

@media screen and (max-width: 1000px) {
    .reha-cost-other__table thead th:first-of-type {
        width: 32vw;
    }
}

@media screen and (max-width: 767px) {
    .reha-cost-other__table thead th:first-of-type {
        width: 24.0625vw;
    }
}

.reha-cost-other__table tbody tr {
    border-bottom: 1px solid #C9C6C4;
}

@media screen and (max-width: 767px) {
    .reha-cost-other__table tbody tr {
        border-width: 0.3125vw;
    }
}

.reha-cost-other__table tbody td {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    padding: 30px 0;
    text-align: center;
    font-size: 1rem;
}

@media screen and (max-width: 1000px) {
    .reha-cost-other__table tbody td {
        padding: 3vw 0;
    }
}

@media screen and (max-width: 767px) {
    .reha-cost-other__table tbody td {
        padding: 4.6875vw 0;
        font-size: 3.125vw;
    }
}

.reha-cost-other__table tbody td:first-of-type {
    padding-left: 12px;
    text-align: left;
}

@media screen and (max-width: 1000px) {
    .reha-cost-other__table tbody td:first-of-type {
        padding-left: 1.2vw;
    }
}

@media screen and (max-width: 767px) {
    .reha-cost-other__table tbody td:first-of-type {
        padding: 4.6875vw 2.5vw 4.6875vw 2.8125vw;
    }
}

.reha-cost-other__table tbody td.strong {
    font-weight: 600;
}

/*  reha-support
--------------------------------------------- */
.reha-support {
    padding-top: 90px;
    padding-bottom: 115px;
    background-color: #F3F2F1;
}

@media screen and (max-width: 1000px) {
    .reha-support {
        padding-top: 9vw;
        padding-bottom: 11.5vw;
    }
}

@media screen and (max-width: 767px) {
    .reha-support {
        padding-top: 12.5vw;
        padding-bottom: 12.5vw;
    }
}

.reha-support__body {
    margin-top: 70px;
}

@media screen and (max-width: 1000px) {
    .reha-support__body {
        margin-top: 7vw;
    }
}

@media screen and (max-width: 767px) {
    .reha-support__body {
        -webkit-box-sizing: border-box;
        box-sizing: border-box;
        margin-top: 17.1875vw;
        padding: 0 6.25%;
        width: 100%;
    }
}

.reha-support__lead {
    margin: 0 auto;
    width: 640px;
    font-size: 1rem;
    line-height: 2;
}

@media screen and (max-width: 767px) {
    .reha-support__lead {
        width: 100%;
        font-size: 4.375vw;
    }
}

.reha-support__figure {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: justify;
    -ms-flex-align: start;
    margin: 55px auto 0;
    width: 640px;

    -webkit-box-align: start;
    align-items: flex-start;
    -webkit-box-pack: justify;
    justify-content: space-between;
}

@media screen and (max-width: 1000px) {
    .reha-support__figure {
        margin-top: 5.5vw;
    }
}

@media screen and (max-width: 767px) {
    .reha-support__figure {
        display: block;
        margin-top: 4.6875vw;
        width: 100%;
    }
}

@media screen and (max-width: 767px) {
    .reha-support__figure figure {
        margin-top: 7.8125vw;
    }
    .reha-support__figure figure:first-of-type {
        margin-top: 0;
    }
}

.reha-support__figure img {
    width: 300px;
}

@media screen and (max-width: 767px) {
    .reha-support__figure img {
        width: 100%;
    }
}

.reha-support__figure figcaption {
    margin-top: 25px;
    text-align: center;
    font-size: 1rem;
}

@media screen and (max-width: 1000px) {
    .reha-support__figure figcaption {
        margin-top: 2.5vw;
    }
}

@media screen and (max-width: 767px) {
    .reha-support__figure figcaption {
        margin-top: 6.875vw;
        font-size: 4.375vw;
    }
}

/*  reha-staff
--------------------------------------------- */
.reha-staff {
    padding-top: 110px;
    padding-bottom: 160px;
}

@media screen and (max-width: 1000px) {
    .reha-staff {
        padding-top: 11vw;
        padding-bottom: 16vw;
    }
}

@media screen and (max-width: 767px) {
    .reha-staff {
        padding-top: 12.5vw;
        padding-bottom: 15.625vw;
    }
}

.reha-staff__body {
    margin-top: 130px;
}

@media screen and (max-width: 1000px) {
    .reha-staff__body {
        margin-top: 13vw;
    }
}

@media screen and (max-width: 767px) {
    .reha-staff__body {
        margin-top: 19.375vw;
    }
}

.reha-staff__block {
    position: relative;
    margin: 145px auto 0;
    width: 960px;
}

@media screen and (max-width: 1000px) {
    .reha-staff__block {
        margin-top: 14.5vw;
        width: 96vw;
    }
}

@media screen and (max-width: 767px) {
    .reha-staff__block {
        margin-top: 12.5vw;
        width: 100%;
    }
}

.reha-staff__block:first-of-type {
    margin-top: 0;
}

.reha-staff__img {
    position: absolute;
    top: 50%;
    width: 640px;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
}

@media screen and (max-width: 1000px) {
    .reha-staff__img {
        width: 64vw;
    }
}

@media screen and (max-width: 767px) {
    .reha-staff__img {
        position: static;
        width: 100%;
        -webkit-transform: none;
        transform: none;
    }
}

.reha-staff__block:nth-of-type(2n+1) .reha-staff__img {
    left: 0;
}

.reha-staff__block:nth-of-type(2n) .reha-staff__img {
    right: 0;
}

.reha-staff__img img {
    width: 100%;
}

.reha-staff__box {
    position: relative;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    padding-top: 25px;
    padding-bottom: 25px;
    width: 460px;
    background-color: #fff;
}

@media screen and (max-width: 1000px) {
    .reha-staff__box {
        padding-top: 2.5vw;
        padding-bottom: 2.5vw;
        width: 46vw;
    }
}

@media screen and (max-width: 767px) {
    .reha-staff__box {
        -webkit-box-sizing: border-box;
        box-sizing: border-box;
        margin: -6.25vw auto;
        padding: 5.3125vw 6.25vw 3.75vw;
        width: 87.5vw;
    }
}

.reha-staff__block:nth-of-type(2n+1) .reha-staff__box {
    margin-left: auto;
    padding-left: 40px;
}

@media screen and (max-width: 1000px) {
    .reha-staff__block:nth-of-type(2n+1) .reha-staff__box {
        padding-left: 4vw;
    }
}

@media screen and (max-width: 767px) {
    .reha-staff__block:nth-of-type(2n+1) .reha-staff__box {
        padding-right: 6.25vw;
        padding-left: 6.25vw;
    }
}

.reha-staff__block:nth-of-type(2n) .reha-staff__box {
    margin-right: auto;
    padding-right: 40px;
}

@media screen and (max-width: 1000px) {
    .reha-staff__block:nth-of-type(2n) .reha-staff__box {
        padding-right: 4vw;
    }
}

@media screen and (max-width: 767px) {
    .reha-staff__block:nth-of-type(2n) .reha-staff__box {
        padding-right: 6.25vw;
        padding-left: 6.25vw;
    }
}

.reha-staff__name {
    padding-bottom: 6px;
    border-bottom: 1px solid #C9C6C4;
    font-size: 1.14286rem;
    font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", sans-serif;
}

@media screen and (max-width: 1000px) {
    .reha-staff__name {
        padding-bottom: 0.6vw;
    }
}

@media screen and (max-width: 767px) {
    .reha-staff__name {
        padding-bottom: 1.875vw;
        border-width: 0.3125vw;
        font-size: 5vw;
    }
}

.reha-staff__txt {
    padding-top: 15px;
    font-size: 1rem;
    line-height: 2;
}

@media screen and (max-width: 1000px) {
    .reha-staff__txt {
        padding-top: 1.5vw;
    }
}

@media screen and (max-width: 767px) {
    .reha-staff__txt {
        padding-top: 4.6875vw;
        font-size: 4.375vw;
    }
}



/* ---------------------------------------------
*   zaitaku
--------------------------------------------- */
/*  zaitaku
--------------------------------------------- */
.zaitaku {
    padding-top: 120px;
    padding-bottom: 120px;
}

@media screen and (max-width: 1000px) {
    .zaitaku {
        padding-top: 12vw;
        padding-bottom: 12vw;
    }
}

@media screen and (max-width: 767px) {
    .zaitaku {
        padding-top: 12.5vw;
        padding-bottom: 0;
    }
}

.zaitaku__top {
    position: relative;
    margin: 0 auto;
    padding-bottom: 115px;
    width: 960px;
}

@media screen and (max-width: 1000px) {
    .zaitaku__top {
        padding-bottom: 11.5vw;
        width: 96vw;
    }
}

@media screen and (max-width: 767px) {
    .zaitaku__top {
        padding-bottom: 0;
        width: 100%;
    }
}

.zaitaku__img {
    position: absolute;
    top: -30px;
    left: 0;
    width: 560px;
}

@media screen and (max-width: 1000px) {
    .zaitaku__img {
        top: -3vw;
        width: 56vw;
    }
}

@media screen and (max-width: 767px) {
    .zaitaku__img {
        position: static;
        margin-top: 12.5vw;
        width: 100%;
    }
}

.zaitaku__img img {
    width: 100%;
}

.zaitaku__lead {
    position: relative;
    z-index: 10;
    margin-left: 510px;
    font-size: 1.71429rem;
    font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", sans-serif;
    line-height: 2;
}

@media screen and (max-width: 1000px) {
    .zaitaku__lead {
        margin-left: 49vw;
    }
}

@media screen and (max-width: 767px) {
    .zaitaku__lead {
        -webkit-box-sizing: border-box;
        box-sizing: border-box;
        margin-left: 0;
        padding: 0 6.25%;
        width: 100%;
        letter-spacing: -0.05em;
        font-size: 6.25vw;
    }
}

.windows .zaitaku__lead {
    letter-spacing: -0.05em;
}

.zaitaku__lead:before {
    position: absolute;
    bottom: -1em;
    left: 0;
    width: 100px;
    height: 1px;
    background-color: #FF862B;
    content: "";
}

@media screen and (max-width: 767px) {
    .zaitaku__lead:before {
        left: 6.25vw;
        width: 21.875vw;
        height: 0.3125vw;
    }
}

.zaitaku__txt {
    position: relative;
    z-index: 10;
    margin-top: 55px;
    margin-left: auto;
    width: 320px;
    font-size: 1rem;
    line-height: 2;
}

@media screen and (max-width: 1000px) {
    .zaitaku__txt {
        margin-top: 5.5vw;
        width: 32vw;
    }
}

@media screen and (max-width: 767px) {
    .zaitaku__txt {
        -webkit-box-sizing: border-box;
        box-sizing: border-box;
        margin-top: 14.0625vw;
        padding: 0 6.25%;
        width: 100%;
    }
}

/*  zaitaku-system
--------------------------------------------- */
.zaitaku-system {
    padding-top: 87px;
    padding-bottom: 92px;
    background-color: #F3F2F1;
}

@media screen and (max-width: 1000px) {
    .zaitaku-system {
        padding-top: 8.7vw;
        padding-bottom: 9.2vw;
    }
}

@media screen and (max-width: 767px) {
    .zaitaku-system {
        padding-top: 12.5vw;
        padding-bottom: 12.5vw;
    }
}


.zaitaku-system__body {
    width: 840px;
    margin: 70px auto 0;
    display:-webkit-box;
  	display:-ms-flexbox;
  	display:flex;
}

@media screen and (max-width: 1000px) {
    .zaitaku-system__body {
        margin-top: 7vw;
        width: 640px;
    }
}

@media screen and (max-width: 767px) {
    .zaitaku-system__body {
        -webkit-box-sizing: border-box;
        box-sizing: border-box;
        margin-top: 18.75vw;
        padding: 0 6.25%;
        width: 100%;
        -webkit-box-orient: vertical;
      	-webkit-box-direction: normal;
      	-ms-flex-direction: column;
      	flex-direction: column;
        -webkit-box-align: center;
      	-ms-flex-align: center;
      	align-items: center;
    }
}

.zaitaku-system__txt {
    margin: 0 auto;
    width: 100%;
    font-size: 1rem;
    line-height: 2;
}

@media screen and (max-width: 767px) {
    .zaitaku-system__txt {
        width: 100%;
        font-size: 4.375vw;
        -ms-flex-order:2;
      	order:2;
    }
}

.zaitaku-system__img {
    margin-left: 20px;
    width: 320px;
    flex-shrink: 0;
}

@media screen and (max-width: 767px) {
    .zaitaku-system__img {
        margin-bottom: 10px;
        margin-left: 0;
        width: 100%;
        max-width: 320px;
      	-ms-flex-order:1;
      	order:1;
    }
}




/*  zaitaku-content
--------------------------------------------- */
.zaitaku-content {
    padding-top: 110px;
    padding-bottom: 120px;
}

@media screen and (max-width: 1000px) {
    .zaitaku-content {
        padding-top: 11vw;
        padding-bottom: 12vw;
    }
}

@media screen and (max-width: 767px) {
    .zaitaku-content {
        padding-top: 7.8125vw;
        padding-bottom: 15.625vw;
    }
}

.zaitaku-content__body {
    margin-top: 70px;
}

@media screen and (max-width: 1000px) {
    .zaitaku-content__body {
        margin-top: 7vw;
    }
}

@media screen and (max-width: 767px) {
    .zaitaku-content__body {
        -webkit-box-sizing: border-box;
        box-sizing: border-box;
        margin-top: 18.75vw;
        padding: 0 6.25%;
        width: 100%;
    }
}

.zaitaku-content__subjects {
    display: flex;
    justify-content: center;
    margin: 0 auto 30px;
    width: 640px;
    font-size: 1rem;
    line-height: 2;
    font-weight: bold;
}

@media screen and (max-width: 767px) {
    .zaitaku-content__subjects {
        width: 100%;
        align-items: center;
    }
}

.zaitaku-content__subjects-head {
    margin-right: 50px;
    white-space: nowrap;
}

@media screen and (max-width: 767px) {
    .zaitaku-content__subjects-head {
        margin-right: 30px;
    }
}

.zaitaku-content__subjects-list {
    display: flex;
    flex-wrap: wrap;
}

.zaitaku-content__subjects-item:not(:last-child) {
    margin-right: 10px;
}

.zaitaku-content__txt {
    margin: 0 auto;
    width: 640px;
    font-size: 1rem;
    line-height: 2;
}

@media screen and (max-width: 767px) {
    .zaitaku-content__txt {
        width: 100%;
        font-size: 4.375vw;
    }
}

.zaitaku-content__support {
    margin: 40px auto 0;
    width: 640px;
    text-align: center;
}

@media screen and (max-width: 1000px) {
    .zaitaku-content__support {
        margin-top: 4vw;
    }
}

@media screen and (max-width: 767px) {
    .zaitaku-content__support {
        margin-top: 6.25vw;
        width: 100%;
    }
}

.zaitaku-content__support-head {
    display: inline-block;
    font-size: 1.71429rem;
    font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", sans-serif;
    line-height: 2;
}

@media screen and (max-width: 767px) {
    .zaitaku-content__support-head {
        font-size: 6.25vw;
    }
}

.zaitaku-content__support-head span {
    padding-bottom: 15px;
    border-bottom: 1px solid #C9C6C4;
}

@media screen and (max-width: 767px) {
    .zaitaku-content__support-head span {
        padding-bottom: 3.125vw;
        border-width: 0.3125vw;
    }
}

.ie .zaitaku-content__support-head span {
    padding-bottom: 0;
}

.zaitaku-content__support-list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin-top: 23px;

    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}

@media screen and (max-width: 1000px) {
    .zaitaku-content__support-list {
        margin-top: 2.3vw;
    }
}

@media screen and (max-width: 767px) {
    .zaitaku-content__support-list {
        margin-top: 5.625vw;
    }
}

.zaitaku-content__support-item {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: center;
    -ms-flex-align: center;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    box-sizing: border-box;
    margin-top: 20px;
    margin-right: 20px;
    width: 200px;
    height: 200px;
    border: 1px solid #C9C6C4;
    background-color: #F6F6F5;
    font-size: 1.14286rem;
    font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", sans-serif;

    -webkit-box-align: center;
    align-items: center;
    -webkit-box-pack: center;
    justify-content: center;
}

@media screen and (max-width: 767px) {
    .zaitaku-content__support-item {
        -webkit-box-sizing: border-box;
        box-sizing: border-box;
        margin-top: 3.75vw;
        margin-right: 4.28571%;
        padding: 0 6.07143%;
        width: 47.85714%;
        height: 41.875vw;
        font-size: 4.375vw;
    }
}

.windows .zaitaku-content__support-item {
    letter-spacing: -0.05em;
}

@media screen and (min-width: 768px) {
    .zaitaku-content__support-item:nth-of-type(3n) {
        margin-right: 0;
    }
}

@media screen and (max-width: 767px) {
    .zaitaku-content__support-item:nth-of-type(2n) {
        margin-right: 0;
    }
}

.zaitaku-content__content {
    margin: 45px auto 0;
    width: 640px;
    text-align: center;
}

@media screen and (max-width: 1000px) {
    .zaitaku-content__content {
        margin-top: 4.5vw;
    }
}

@media screen and (max-width: 767px) {
    .zaitaku-content__content {
        margin-top: 9.375vw;
        width: 100%;
    }
}

.zaitaku-content__content-head {
    display: inline-block;
    padding-bottom: 2px;
    border-bottom: 1px solid #C9C6C4;
    font-size: 1.71429rem;
    font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", sans-serif;
    line-height: 2;
}

@media screen and (max-width: 767px) {
    .zaitaku-content__content-head {
        padding-bottom: 0;
        border-width: 0.3125vw;
        font-size: 6.25vw;
    }
}

.zaitaku-content__content-box {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: start;
    margin-top: 40px;
    padding: 22px 25px;
    border: 1px solid #C9C6C4;
    background-color: #F6F6F5;
    text-align: left;

    -webkit-box-align: start;
    align-items: flex-start;
}

@media screen and (max-width: 1000px) {
    .zaitaku-content__content-box {
        margin-top: 4.5vw;
    }
}

@media screen and (max-width: 767px) {
    .zaitaku-content__content-box {
        display: block;
        margin-top: 9.375vw;
        padding: 6.875vw 4.6875vw;
        border-width: 0.3125vw;
    }
}

.zaitaku-content__content-list {
    width: 50%;
}

@media screen and (max-width: 767px) {
    .zaitaku-content__content-list {
        width: 100%;
    }
}

.zaitaku-content__content-item {
    padding-left: 1em;
    text-indent: -1em;
    font-size: 1rem;
    line-height: 2;
}

@media screen and (max-width: 767px) {
    .zaitaku-content__content-item {
        font-size: 4.375vw;
    }
}




/*  zaitaku-coordinate
--------------------------------------------- */
.zaitaku-coordinate {
    padding-top: 110px;
    padding-bottom: 120px;
    background-color: #F3F2F1;
}

@media screen and (max-width: 1000px) {
    .zaitaku-coordinate {
        padding-top: 11vw;
        padding-bottom: 12vw;
    }
}

@media screen and (max-width: 767px) {
    .zaitaku-coordinate {
        padding-top: 7.8125vw;
        padding-bottom: 15.625vw;
    }
}

.zaitaku-coordinate__body {
    margin-top: 70px;
}

@media screen and (max-width: 1000px) {
    .zaitaku-coordinate__body {
        margin-top: 7vw;
    }
}

@media screen and (max-width: 767px) {
    .zaitaku-coordinate__body {
        -webkit-box-sizing: border-box;
        box-sizing: border-box;
        margin-top: 18.75vw;
        padding: 0 6.25%;
        width: 100%;
    }
}

.zaitaku-coordinate__list {
    margin: 45px auto 0;
    width: 640px;
}

@media screen and (max-width: 1000px) {
    .zaitaku-coordinate__list {
        margin-top: 4.5vw;
    }
}

@media screen and (max-width: 767px) {
    .zaitaku-coordinate__list {
        margin-top: 9.375vw;
        width: 100%;
    }
}

.zaitaku-coordinate__item {
    text-align: center;
}

.zaitaku-coordinate__item:nth-child(n+2) {
    margin-top: 30px;
}

.zaitaku-coordinate__item-head {
    display: inline-block;
    padding-bottom: 2px;
    border-bottom: 1px solid #C9C6C4;
    font-size: 1.71429rem;
    font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", sans-serif;
    line-height: 2;
}

@media screen and (max-width: 767px) {
    .zaitaku-coordinate__item-head {
        padding-bottom: 0;
        border-width: 0.3125vw;
        font-size: 6.25vw;
    }
}

.zaitaku-coordinate__item-txt {
    margin: 20px auto 0;
    width: 640px;
    font-size: 1rem;
    line-height: 2;
    text-align: left;
}

@media screen and (max-width: 767px) {
    .zaitaku-coordinate__item-txt {
        width: 100%;
        font-size: 4.375vw;
    }
}



/*  zaitaku-how
--------------------------------------------- */
.zaitaku-how {
    padding-top: 90px;
    padding-bottom: 120px;
}

@media screen and (max-width: 1000px) {
    .zaitaku-how {
        padding-top: 9vw;
        padding-bottom: 12vw;
    }
}

@media screen and (max-width: 767px) {
    .zaitaku-how {
        padding-top: 12.5vw;
        padding-bottom: 15.625vw;
    }
}

.zaitaku-how__body {
    margin-top: 75px;
}

@media screen and (max-width: 1000px) {
    .zaitaku-how__body {
        margin-top: 7.5vw;
    }
}

@media screen and (max-width: 767px) {
    .zaitaku-how__body {
        -webkit-box-sizing: border-box;
        box-sizing: border-box;
        margin-top: 17.5vw;
        padding: 0 6.25%;
        width: 100%;
    }
}

.zaitaku-how__lead {
    margin: 0 auto;
    width: 640px;
    font-size: 1rem;
}

@media screen and (max-width: 767px) {
    .zaitaku-how__lead {
        width: 100%;
        font-size: 4.375vw;
        line-height: 2;
    }
}

.zaitaku-how__list {
    position: relative;
    margin: 55px auto 0;
    width: 640px;
}

@media screen and (max-width: 1000px) {
    .zaitaku-how__list {
        margin-top: 5.5vw;
    }
}

@media screen and (max-width: 767px) {
    .zaitaku-how__list {
        margin-top: 7.1875vw;
        width: 100%;
    }
}

.zaitaku-how__list:before {
    position: absolute;
    top: 0;
    right: 0;
    left: 0;
    margin: auto;
    width: 1px;
    height: 100%;
    background-color: #C9C6C4;
    content: "";
}

@media screen and (max-width: 767px) {
    .zaitaku-how__list:before {
        width: 0.3125vw;
    }
}

.zaitaku-how__item {
    position: relative;
    z-index: 10;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
    margin-top: 28px;
    border: 1px solid #C9C6C4;
    background-color: #fff;

    -webkit-box-align: center;
    align-items: center;
}

@media screen and (max-width: 1000px) {
    .zaitaku-how__item {
        margin-top: 2.8vw;
    }
}

@media screen and (max-width: 767px) {
    .zaitaku-how__item {
        display: block;
        margin-top: 9.375vw;
    }
}

.zaitaku-how__item:first-of-type {
    margin-top: 0;
}

.zaitaku-how__img {
    width: 210px;
}

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

.zaitaku-how__img img {
    width: 100%;
}

.zaitaku-how__box {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    padding: 20px 30px;
    width: 430px;
}

@media screen and (max-width: 767px) {
    .zaitaku-how__box {
        padding: 7.5vw 6.25vw;
        width: 100%;
    }
}

.zaitaku-how__head {
    font-size: 1.28571rem;
    font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", sans-serif;
}

@media screen and (max-width: 767px) {
    .zaitaku-how__head {
        font-size: 5.625vw;
    }
}

.zaitaku-how__txt {
    margin-top: 10px;
    font-size: 1rem;
}

@media screen and (max-width: 767px) {
    .zaitaku-how__txt {
        margin-top: 4.375vw;
        font-size: 4.375vw;
    }
}



/*  zaitaku-counseling_office
--------------------------------------------- */
.zaitaku-counseling_office {
    padding-top: 110px;
    padding-bottom: 60px;
    background-color: #F3F2F1;
}

@media screen and (max-width: 1000px) {
    .zaitaku-counseling_office {
        padding-top: 11vw;
        padding-bottom: 6vw;
    }
}

@media screen and (max-width: 767px) {
    .zaitaku-counseling_office {
        padding-top: 12.5vw;
        padding-bottom: 15.625vw;
    }
}

.zaitaku-counseling_office__body {
    margin-top: 75px;
}

@media screen and (max-width: 1000px) {
    .zaitaku-counseling_office__body {
        margin-top: 7.5vw;
    }
}

@media screen and (max-width: 767px) {
    .zaitaku-counseling_office__body {
        -webkit-box-sizing: border-box;
        box-sizing: border-box;
        margin-top: 17.5vw;
        padding: 0 6.25%;
        width: 100%;
    }
}

.zaitaku-counseling_office__txt {
    margin: 0 auto;
    width: 640px;
    font-size: 1rem;
}

@media screen and (max-width: 767px) {
    .zaitaku-counseling_office__txt {
        width: 100%;
        font-size: 4.375vw;
        line-height: 2;
    }
}


/*  zaitaku-cost
--------------------------------------------- */
.zaitaku-cost {
    padding-top: 50px;
    padding-bottom: 120px;
    background-color: #F3F2F1;
}

@media screen and (max-width: 1000px) {
    .zaitaku-cost {
        padding-top: 5vw;
        padding-bottom: 12vw;
    }
}

@media screen and (max-width: 767px) {
    .zaitaku-cost {
        padding-top: 12.5vw;
        padding-bottom: 15.625vw;
    }
}

.zaitaku-cost__body {
    margin-top: 75px;
}

@media screen and (max-width: 1000px) {
    .zaitaku-cost__body {
        margin-top: 7.5vw;
    }
}

@media screen and (max-width: 767px) {
    .zaitaku-cost__body {
        -webkit-box-sizing: border-box;
        box-sizing: border-box;
        margin-top: 17.5vw;
        padding: 0 6.25%;
        width: 100%;
    }
}

.zaitaku-cost__txt {
    margin: 0 auto;
    width: 640px;
    font-size: 1rem;
}

@media screen and (max-width: 767px) {
    .zaitaku-cost__txt {
        width: 100%;
        font-size: 4.375vw;
        line-height: 2;
    }
}





/*  zaitaku-staff
--------------------------------------------- */
.zaitaku-staff {
    padding-top: 110px;
    padding-bottom: 160px;
}

@media screen and (max-width: 1000px) {
    .zaitaku-staff {
        padding-top: 11vw;
        padding-bottom: 16vw;
    }
}

@media screen and (max-width: 767px) {
    .zaitaku-staff {
        padding-top: 12.5vw;
        padding-bottom: 15.625vw;
    }
}

.zaitaku-staff__body {
    margin-top: 130px;
}

@media screen and (max-width: 1000px) {
    .zaitaku-staff__body {
        margin-top: 13vw;
    }
}

@media screen and (max-width: 767px) {
    .zaitaku-staff__body {
        margin-top: 19.375vw;
    }
}

.zaitaku-staff__block {
    position: relative;
    margin: 145px auto 0;
    width: 960px;
}

@media screen and (max-width: 1000px) {
    .zaitaku-staff__block {
        margin-top: 14.5vw;
        width: 96vw;
    }
}

@media screen and (max-width: 767px) {
    .zaitaku-staff__block {
        margin-top: 12.5vw;
        width: 100%;
    }
}

.zaitaku-staff__block:first-of-type {
    margin-top: 0;
}

.zaitaku-staff__img {
    position: absolute;
    top: 50%;
    width: 640px;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
}

@media screen and (max-width: 1000px) {
    .zaitaku-staff__img {
        width: 64vw;
    }
}

@media screen and (max-width: 767px) {
    .zaitaku-staff__img {
        position: static;
        width: 100%;
        -webkit-transform: none;
        transform: none;
    }
}

.zaitaku-staff__block:nth-of-type(2n+1) .zaitaku-staff__img {
    left: 0;
}

.zaitaku-staff__block:nth-of-type(2n) .zaitaku-staff__img {
    right: 0;
}

.zaitaku-staff__img img {
    width: 100%;
}

.zaitaku-staff__box {
    position: relative;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    padding-top: 25px;
    padding-bottom: 25px;
    width: 460px;
    background-color: #fff;
}

@media screen and (max-width: 1000px) {
    .zaitaku-staff__box {
        padding-top: 2.5vw;
        padding-bottom: 2.5vw;
        width: 46vw;
    }
}

@media screen and (max-width: 767px) {
    .zaitaku-staff__box {
        -webkit-box-sizing: border-box;
        box-sizing: border-box;
        margin: -6.25vw auto;
        padding: 5.3125vw 6.25vw 3.75vw;
        width: 87.5vw;
    }
}

.zaitaku-staff__block:nth-of-type(2n+1) .zaitaku-staff__box {
    margin-left: auto;
    padding-left: 40px;
}

@media screen and (max-width: 1000px) {
    .zaitaku-staff__block:nth-of-type(2n+1) .zaitaku-staff__box {
        padding-left: 4vw;
    }
}

@media screen and (max-width: 767px) {
    .zaitaku-staff__block:nth-of-type(2n+1) .zaitaku-staff__box {
        padding-right: 6.25vw;
        padding-left: 6.25vw;
    }
}

.zaitaku-staff__block:nth-of-type(2n) .zaitaku-staff__box {
    margin-right: auto;
    padding-right: 40px;
}

@media screen and (max-width: 1000px) {
    .zaitaku-staff__block:nth-of-type(2n) .zaitaku-staff__box {
        padding-right: 4vw;
    }
}

@media screen and (max-width: 767px) {
    .zaitaku-staff__block:nth-of-type(2n) .zaitaku-staff__box {
        padding-right: 6.25vw;
        padding-left: 6.25vw;
    }
}

.zaitaku-staff__name {
    padding-bottom: 6px;
    border-bottom: 1px solid #C9C6C4;
    font-size: 1.14286rem;
    font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", sans-serif;
}

@media screen and (max-width: 1000px) {
    .zaitaku-staff__name {
        padding-bottom: 0.6vw;
    }
}

@media screen and (max-width: 767px) {
    .zaitaku-staff__name {
        padding-bottom: 1.875vw;
        border-width: 0.3125vw;
        font-size: 5vw;
    }
}

.zaitaku-staff__txt {
    padding-top: 15px;
    font-size: 1rem;
    line-height: 2;
}

@media screen and (max-width: 1000px) {
    .zaitaku-staff__txt {
        padding-top: 1.5vw;
    }
}

@media screen and (max-width: 767px) {
    .zaitaku-staff__txt {
        padding-top: 4.6875vw;
        font-size: 4.375vw;
    }
}






/* ---------------------------------------------
*   kids
--------------------------------------------- */
/*  kids
--------------------------------------------- */
.kids {
    padding-top: 120px;
    padding-bottom: 120px;
}

@media screen and (max-width: 1000px) {
    .kids {
        padding-top: 12vw;
        padding-bottom: 12vw;
    }
}

@media screen and (max-width: 767px) {
    .kids {
        padding-top: 12.5vw;
        padding-bottom: 0;
    }
}

.kids__top {
    position: relative;
    margin: 0 auto;
    padding-bottom: 115px;
    width: 960px;
}

@media screen and (max-width: 1000px) {
    .kids__top {
        padding-bottom: 11.5vw;
        width: 96vw;
    }
}

@media screen and (max-width: 767px) {
    .kids__top {
        padding-bottom: 0;
        width: 100%;
    }
}

.kids__img {
    position: absolute;
    top: -30px;
    left: 0;
    width: 560px;
}

@media screen and (max-width: 1000px) {
    .kids__img {
        top: -3vw;
        width: 56vw;
    }
}

@media screen and (max-width: 767px) {
    .kids__img {
        position: static;
        margin-top: 12.5vw;
        width: 100%;
    }
}

.kids__img img {
    width: 100%;
}

.kids__lead {
    position: relative;
    z-index: 10;
    margin-left: 510px;
    font-size: 1.71429rem;
    font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", sans-serif;
    line-height: 2;
}

@media screen and (max-width: 1000px) {
    .kids__lead {
        margin-left: 49vw;
    }
}

@media screen and (max-width: 767px) {
    .kids__lead {
        -webkit-box-sizing: border-box;
        box-sizing: border-box;
        margin-left: 0;
        padding: 0 6.25%;
        width: 100%;
        letter-spacing: -0.05em;
        font-size: 6.25vw;
    }
}

.windows .kids__lead {
    letter-spacing: -0.05em;
}

.kids__lead:before {
    position: absolute;
    bottom: -1em;
    left: 0;
    width: 100px;
    height: 1px;
    background-color: #FF862B;
    content: "";
}

@media screen and (max-width: 767px) {
    .kids__lead:before {
        left: 6.25vw;
        width: 21.875vw;
        height: 0.3125vw;
    }
}

.kids__txt {
    position: relative;
    z-index: 10;
    margin-top: 55px;
    margin-left: auto;
    width: 320px;
    font-size: 1rem;
    line-height: 2;
}

@media screen and (max-width: 1000px) {
    .kids__txt {
        margin-top: 5.5vw;
        width: 32vw;
    }
}

@media screen and (max-width: 767px) {
    .kids__txt {
        -webkit-box-sizing: border-box;
        box-sizing: border-box;
        margin-top: 14.0625vw;
        padding: 0 6.25%;
        width: 100%;
    }
}




/*  kids-content
--------------------------------------------- */
.kids-content {
    padding-top: 110px;
    padding-bottom: 120px;
    background-color: #F3F2F1;
}

@media screen and (max-width: 1000px) {
    .kids-content {
        padding-top: 11vw;
        padding-bottom: 12vw;
    }
}

@media screen and (max-width: 767px) {
    .kids-content {
        padding-top: 7.8125vw;
        padding-bottom: 15.625vw;
    }
}

.kids-content__body {
    margin-top: 70px;
}

@media screen and (max-width: 1000px) {
    .kids-content__body {
        margin-top: 7vw;
    }
}

@media screen and (max-width: 767px) {
    .kids-content__body {
        -webkit-box-sizing: border-box;
        box-sizing: border-box;
        margin-top: 18.75vw;
        padding: 0 6.25%;
        width: 100%;
    }
}

.kids-content__subjects {
    display: flex;
    justify-content: center;
    margin: 0 auto 30px;
    width: 640px;
    font-size: 1rem;
    line-height: 2;
    font-weight: bold;
}

@media screen and (max-width: 767px) {
    .kids-content__subjects {
        width: 100%;
        align-items: center;
    }
}

.kids-content__subjects-head {
    margin-right: 50px;
    white-space: nowrap;
}

@media screen and (max-width: 767px) {
    .kids-content__subjects-head {
        margin-right: 30px;
    }
}

.kids-content__subjects-list {
    display: flex;
    flex-wrap: wrap;
}

.kids-content__subjects-item:not(:last-child) {
    margin-right: 10px;
}

.kids-content__txt {
    margin: 0 auto;
    width: 640px;
    font-size: 1rem;
    line-height: 2;
}

@media screen and (max-width: 767px) {
    .kids-content__txt {
        width: 100%;
        font-size: 4.375vw;
    }
}

.kids-content__support {
    margin: 40px auto 0;
    width: 640px;
    text-align: center;
}

@media screen and (max-width: 1000px) {
    .kids-content__support {
        margin-top: 4vw;
    }
}

@media screen and (max-width: 767px) {
    .kids-content__support {
        margin-top: 6.25vw;
        width: 100%;
    }
}

.kids-content__support-head {
    display: inline-block;
    font-size: 1.71429rem;
    font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", sans-serif;
    line-height: 2;
}

@media screen and (max-width: 767px) {
    .kids-content__support-head {
        font-size: 6.25vw;
    }
}

.kids-content__support-head span {
    padding-bottom: 15px;
    border-bottom: 1px solid #C9C6C4;
}

@media screen and (max-width: 767px) {
    .kids-content__support-head span {
        padding-bottom: 3.125vw;
        border-width: 0.3125vw;
    }
}

.ie .kids-content__support-head span {
    padding-bottom: 0;
}

.kids-content__support-list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin-top: 23px;

    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}

@media screen and (max-width: 1000px) {
    .kids-content__support-list {
        margin-top: 2.3vw;
    }
}

@media screen and (max-width: 767px) {
    .kids-content__support-list {
        margin-top: 5.625vw;
    }
}

.kids-content__support-item {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: center;
    -ms-flex-align: center;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    box-sizing: border-box;
    margin-top: 20px;
    margin-right: 20px;
    width: 200px;
    height: 200px;
    border: 1px solid #C9C6C4;
    background-color: #F6F6F5;
    font-size: 1.14286rem;
    font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", sans-serif;

    -webkit-box-align: center;
    align-items: center;
    -webkit-box-pack: center;
    justify-content: center;
}

@media screen and (max-width: 767px) {
    .kids-content__support-item {
        -webkit-box-sizing: border-box;
        box-sizing: border-box;
        margin-top: 3.75vw;
        margin-right: 4.28571%;
        padding: 0 6.07143%;
        width: 47.85714%;
        height: 41.875vw;
        font-size: 4.375vw;
    }
}

.windows .kids-content__support-item {
    letter-spacing: -0.05em;
}

@media screen and (min-width: 768px) {
    .kids-content__support-item:nth-of-type(3n) {
        margin-right: 0;
    }
}

@media screen and (max-width: 767px) {
    .kids-content__support-item:nth-of-type(2n) {
        margin-right: 0;
    }
}

.kids-content__content {
    margin: 45px auto 0;
    width: 640px;
    text-align: center;
}

@media screen and (max-width: 1000px) {
    .kids-content__content {
        margin-top: 4.5vw;
    }
}

@media screen and (max-width: 767px) {
    .kids-content__content {
        margin-top: 9.375vw;
        width: 100%;
    }
}

.kids-content__content-head {
    display: inline-block;
    padding-bottom: 2px;
    border-bottom: 1px solid #C9C6C4;
    font-size: 1.71429rem;
    font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", sans-serif;
    line-height: 2;
}

@media screen and (max-width: 767px) {
    .kids-content__content-head {
        padding-bottom: 0;
        border-width: 0.3125vw;
        font-size: 6.25vw;
    }
}

.kids-content__content-box {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: start;
    margin-top: 40px;
    padding: 22px 25px;
    border: 1px solid #C9C6C4;
    background-color: #F6F6F5;
    text-align: left;

    -webkit-box-align: start;
    align-items: flex-start;
}

@media screen and (max-width: 1000px) {
    .kids-content__content-box {
        margin-top: 4.5vw;
    }
}

@media screen and (max-width: 767px) {
    .kids-content__content-box {
        display: block;
        margin-top: 9.375vw;
        padding: 6.875vw 4.6875vw;
        border-width: 0.3125vw;
    }
}

.kids-content__content-list {
    width: 50%;
}

@media screen and (max-width: 767px) {
    .kids-content__content-list {
        width: 100%;
    }
}

.kids-content__content-item {
    padding-left: 1em;
    text-indent: -1em;
    font-size: 1rem;
    line-height: 2;
}

@media screen and (max-width: 767px) {
    .kids-content__content-item {
        font-size: 4.375vw;
    }
}



/*  kids-how
--------------------------------------------- */
.kids-how {
    padding-top: 90px;
    padding-bottom: 120px;
}

@media screen and (max-width: 1000px) {
    .kids-how {
        padding-top: 9vw;
        padding-bottom: 12vw;
    }
}

@media screen and (max-width: 767px) {
    .kids-how {
        padding-top: 12.5vw;
        padding-bottom: 15.625vw;
    }
}

.kids-how__body {
    margin-top: 75px;
}

@media screen and (max-width: 1000px) {
    .kids-how__body {
        margin-top: 7.5vw;
    }
}

@media screen and (max-width: 767px) {
    .kids-how__body {
        -webkit-box-sizing: border-box;
        box-sizing: border-box;
        margin-top: 17.5vw;
        padding: 0 6.25%;
        width: 100%;
    }
}

.kids-how__lead {
    margin: 0 auto;
    width: 640px;
    font-size: 1rem;
}

@media screen and (max-width: 767px) {
    .kids-how__lead {
        width: 100%;
        font-size: 4.375vw;
        line-height: 2;
    }
}

.kids-how__list {
    position: relative;
    margin: 55px auto 0;
    width: 640px;
}

@media screen and (max-width: 1000px) {
    .kids-how__list {
        margin-top: 5.5vw;
    }
}

@media screen and (max-width: 767px) {
    .kids-how__list {
        margin-top: 7.1875vw;
        width: 100%;
    }
}

.kids-how__list:before {
    position: absolute;
    top: 0;
    right: 0;
    left: 0;
    margin: auto;
    width: 1px;
    height: 100%;
    background-color: #C9C6C4;
    content: "";
}

@media screen and (max-width: 767px) {
    .kids-how__list:before {
        width: 0.3125vw;
    }
}

.kids-how__item {
    position: relative;
    z-index: 10;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
    margin-top: 28px;
    border: 1px solid #C9C6C4;
    background-color: #fff;

    -webkit-box-align: center;
    align-items: center;
}

@media screen and (max-width: 1000px) {
    .kids-how__item {
        margin-top: 2.8vw;
    }
}

@media screen and (max-width: 767px) {
    .kids-how__item {
        display: block;
        margin-top: 9.375vw;
    }
}

.kids-how__item:first-of-type {
    margin-top: 0;
}

.kids-how__img {
    width: 210px;
}

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

.kids-how__img img {
    width: 100%;
}

.kids-how__box {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    padding: 20px 30px;
    width: 430px;
}

@media screen and (max-width: 767px) {
    .kids-how__box {
        padding: 7.5vw 6.25vw;
        width: 100%;
    }
}

.kids-how__head {
    font-size: 1.28571rem;
    font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", sans-serif;
}

@media screen and (max-width: 767px) {
    .kids-how__head {
        font-size: 5.625vw;
    }
}

.kids-how__txt {
    margin-top: 10px;
    font-size: 1rem;
}

@media screen and (max-width: 767px) {
    .kids-how__txt {
        margin-top: 4.375vw;
        font-size: 4.375vw;
    }
}



/*  kids-cost
--------------------------------------------- */
.kids-cost {
    padding-top: 50px;
    padding-bottom: 120px;
    background-color: #F3F2F1;
}

@media screen and (max-width: 1000px) {
    .kids-cost {
        padding-top: 5vw;
        padding-bottom: 12vw;
    }
}

@media screen and (max-width: 767px) {
    .kids-cost {
        padding-top: 12.5vw;
        padding-bottom: 15.625vw;
    }
}

.kids-cost__body {
    margin-top: 75px;
}

@media screen and (max-width: 1000px) {
    .kids-cost__body {
        margin-top: 7.5vw;
    }
}

@media screen and (max-width: 767px) {
    .kids-cost__body {
        -webkit-box-sizing: border-box;
        box-sizing: border-box;
        margin-top: 17.5vw;
        padding: 0 6.25%;
        width: 100%;
    }
}

.kids-cost__txt {
    margin: 0 auto;
    width: 640px;
    font-size: 1rem;
}

@media screen and (max-width: 767px) {
    .kids-cost__txt {
        width: 100%;
        font-size: 4.375vw;
        line-height: 2;
    }
}





/*  kids-staff
--------------------------------------------- */
.kids-staff {
    padding-top: 110px;
    padding-bottom: 160px;
}

@media screen and (max-width: 1000px) {
    .kids-staff {
        padding-top: 11vw;
        padding-bottom: 16vw;
    }
}

@media screen and (max-width: 767px) {
    .kids-staff {
        padding-top: 12.5vw;
        padding-bottom: 15.625vw;
    }
}

.kids-staff__body {
    margin-top: 130px;
}

@media screen and (max-width: 1000px) {
    .kids-staff__body {
        margin-top: 13vw;
    }
}

@media screen and (max-width: 767px) {
    .kids-staff__body {
        margin-top: 19.375vw;
    }
}

.kids-staff__block {
    position: relative;
    margin: 145px auto 0;
    width: 960px;
}

@media screen and (max-width: 1000px) {
    .kids-staff__block {
        margin-top: 14.5vw;
        width: 96vw;
    }
}

@media screen and (max-width: 767px) {
    .kids-staff__block {
        margin-top: 12.5vw;
        width: 100%;
    }
}

.kids-staff__block:first-of-type {
    margin-top: 0;
}

.kids-staff__img {
    position: absolute;
    top: 50%;
    width: 640px;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
}

@media screen and (max-width: 1000px) {
    .kids-staff__img {
        width: 64vw;
    }
}

@media screen and (max-width: 767px) {
    .kids-staff__img {
        position: static;
        width: 100%;
        -webkit-transform: none;
        transform: none;
    }
}

.kids-staff__block:nth-of-type(2n+1) .kids-staff__img {
    left: 0;
}

.kids-staff__block:nth-of-type(2n) .kids-staff__img {
    right: 0;
}

.kids-staff__img img {
    width: 100%;
}

.kids-staff__box {
    position: relative;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    padding-top: 25px;
    padding-bottom: 25px;
    width: 460px;
    background-color: #fff;
}

@media screen and (max-width: 1000px) {
    .kids-staff__box {
        padding-top: 2.5vw;
        padding-bottom: 2.5vw;
        width: 46vw;
    }
}

@media screen and (max-width: 767px) {
    .kids-staff__box {
        -webkit-box-sizing: border-box;
        box-sizing: border-box;
        margin: -6.25vw auto;
        padding: 5.3125vw 6.25vw 3.75vw;
        width: 87.5vw;
    }
}

.kids-staff__block:nth-of-type(2n+1) .kids-staff__box {
    margin-left: auto;
    padding-left: 40px;
}

@media screen and (max-width: 1000px) {
    .kids-staff__block:nth-of-type(2n+1) .kids-staff__box {
        padding-left: 4vw;
    }
}

@media screen and (max-width: 767px) {
    .kids-staff__block:nth-of-type(2n+1) .kids-staff__box {
        padding-right: 6.25vw;
        padding-left: 6.25vw;
    }
}

.kids-staff__block:nth-of-type(2n) .kids-staff__box {
    margin-right: auto;
    padding-right: 40px;
}

@media screen and (max-width: 1000px) {
    .kids-staff__block:nth-of-type(2n) .kids-staff__box {
        padding-right: 4vw;
    }
}

@media screen and (max-width: 767px) {
    .kids-staff__block:nth-of-type(2n) .kids-staff__box {
        padding-right: 6.25vw;
        padding-left: 6.25vw;
    }
}

.kids-staff__name {
    padding-bottom: 6px;
    border-bottom: 1px solid #C9C6C4;
    font-size: 1.14286rem;
    font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", sans-serif;
}

@media screen and (max-width: 1000px) {
    .kids-staff__name {
        padding-bottom: 0.6vw;
    }
}

@media screen and (max-width: 767px) {
    .kids-staff__name {
        padding-bottom: 1.875vw;
        border-width: 0.3125vw;
        font-size: 5vw;
    }
}

.kids-staff__txt {
    padding-top: 15px;
    font-size: 1rem;
    line-height: 2;
}

@media screen and (max-width: 1000px) {
    .kids-staff__txt {
        padding-top: 1.5vw;
    }
}

@media screen and (max-width: 767px) {
    .kids-staff__txt {
        padding-top: 4.6875vw;
        font-size: 4.375vw;
    }
}





/* ---------------------------------------------
*   area
--------------------------------------------- */
/*  area
--------------------------------------------- */
.area {
    padding-top: 75px;
    padding-bottom: 100px;
}

@media screen and (max-width: 1000px) {
    .area {
        padding-top: 7.5vw;
        padding-bottom: 10vw;
    }
}

@media screen and (max-width: 767px) {
    .area {
        padding-top: 12.5vw;
        padding-bottom: 15.625vw;
        border-bottom: 0.3125vw solid #EDECEB;
    }
}

.area__body {
    overflow: hidden;
    margin-top: 80px;
}

@media screen and (max-width: 1000px) {
    .area__body {
        margin-top: 8vw;
    }
}

@media screen and (max-width: 767px) {
    .area__body {
        margin-top: 16.875vw;
    }
}

.area__block {
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: justify;
    -ms-flex-align: start;
    margin: 160px auto 0;
    width: 960px;

    -webkit-box-align: start;
    align-items: flex-start;
    -webkit-box-pack: justify;
    justify-content: space-between;
}

@media screen and (max-width: 1000px) {
    .area__block {
        margin-top: 16vw;
        width: 96vw;
    }
}

@media screen and (max-width: 767px) {
    .area__block {
        display: block;
        margin-top: 14.0625vw;
        width: 100%;
    }
}

.area__block:first-of-type {
    margin-top: 0;
}

.area__block:nth-of-type(2n) {
    -ms-flex-direction: row-reverse;
    flex-direction: row-reverse;

    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
}

.area__img {
    position: relative;
    width: 540px;
}

@media screen and (max-width: 1000px) {
    .area__img {
        width: 54vw;
    }
}

@media screen and (max-width: 767px) {
    .area__img {
        -webkit-box-sizing: border-box;
        box-sizing: border-box;
        padding: 0 6.25%;
        width: 100%;
    }
}

.area__img:before {
    position: absolute;
    bottom: -60px;
    z-index: -1;
    width: 760px;
    height: 300px;
    background-color: #F3F2F1;
    content: "";
}

@media screen and (max-width: 1000px) {
    .area__img:before {
        bottom: -6vw;
        width: 76vw;
        height: 30vw;
    }
}

@media screen and (max-width: 767px) {
    .area__img:before {
        top: 14.0625vw;
        right: 0 !important;
        bottom: auto;
        left: 0 !important;
        margin: auto;
        width: 100%;
        height: 50vw;
    }
}

.area__block:nth-of-type(2n+1) .area__img {
    margin-right: auto;
}

.area__block:nth-of-type(2n+1) .area__img:before {
    right: -60px;
}

@media screen and (max-width: 1000px) {
    .area__block:nth-of-type(2n+1) .area__img:before {
        right: -6vw;
    }
}

.area__block:nth-of-type(2n) .area__img {
    margin-left: auto;
}

.area__block:nth-of-type(2n) .area__img:before {
    left: -60px;
}

@media screen and (max-width: 1000px) {
    .area__block:nth-of-type(2n) .area__img:before {
        left: -6vw;
    }
}

.area__block:last-of-type .area__img {
    margin-bottom: 60px;
}

@media screen and (max-width: 1000px) {
    .area__block:last-of-type .area__img {
        margin-bottom: 6vw;
    }
}

@media screen and (max-width: 767px) {
    .area__block:last-of-type .area__img {
        margin-bottom: 0;
    }
}

.area__img img {
    width: 100%;
}

.area__box {
    margin-top: 10px;
    width: 300px;
}

@media screen and (max-width: 1000px) {
    .area__box {
        margin-top: 1vw;
        width: 30vw;
    }
}

@media screen and (max-width: 767px) {
    .area__box {
        -webkit-box-sizing: border-box;
        box-sizing: border-box;
        margin-top: 12.5vw;
        padding: 0 6.25%;
        width: 100%;
    }
}

.area__ttl {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
    font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", sans-serif;

    -webkit-box-align: center;
    align-items: center;
}

.area__ttl-num {
    display: block;
    font-size: 2.85714rem;
}

@media screen and (max-width: 767px) {
    .area__ttl-num {
        font-size: 12.5vw;
    }
}

.area__ttl-txt {
    display: block;
    margin-left: 20px;
    font-size: 1.42857rem;
}

@media screen and (max-width: 1000px) {
    .area__ttl-txt {
        margin-left: 2vw;
    }
}

@media screen and (max-width: 767px) {
    .area__ttl-txt {
        margin-left: 3.57143%;
        font-size: 6.25vw;
    }
}

.windows .area__ttl-txt {
    letter-spacing: -0.05em;
}

.area__txt {
    font-size: 1rem;
    line-height: 2;
}

@media screen and (max-width: 767px) {
    .area__txt {
        margin-top: 1.5625vw;
        font-size: 4.375vw;
    }
}

.area__ex {
    margin-top: 20px;
}

@media screen and (max-width: 1000px) {
    .area__ex {
        margin-top: 2vw;
    }
}

@media screen and (max-width: 767px) {
    .area__ex {
        margin-top: 6.25vw;
    }
}

.area__ex-head {
    position: relative;
    display: inline-block;
    padding-right: 10px;
    background-color: #fff;
    font-weight: 600;
    font-size: 0.85714rem;
}

@media screen and (max-width: 767px) {
    .area__ex-head {
        padding-right: 3.125vw;
        font-size: 3.75vw;
    }
}

.area__ex-head:before {
    position: absolute;
    top: 50%;
    left: 70px;
    width: 230px;
    height: 1px;
    background-color: #C9C6C4;
    content: "";
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
}

@media screen and (max-width: 1000px) {
    .area__ex-head:before {
        right: 7vw;
        width: 23vw;
    }
}

@media screen and (max-width: 767px) {
    .area__ex-head:before {
        right: auto;
        left: 21.875vw;
        width: 65.625vw;
        height: 0.3125vw;
    }
}

.area__ex-list {
    margin-top: 10px;
}

@media screen and (max-width: 1000px) {
    .area__ex-list {
        margin-top: 1vw;
    }
}

@media screen and (max-width: 767px) {
    .area__ex-list {
        margin-top: 2.1875vw;
    }
}

.area__ex-item {
    padding-left: 1em;
    text-indent: -1em;
    font-size: 0.85714rem;
    line-height: 2;
}

@media screen and (max-width: 767px) {
    .area__ex-item {
        font-size: 3.75vw;
    }
}

/* ---------------------------------------------
*   philosophy
--------------------------------------------- */
/*  philosophy
--------------------------------------------- */
.philosophy {
    padding-top: 265px;
    padding-bottom: 90px;
}

@media screen and (max-width: 1000px) {
    .philosophy {
        padding-top: 26.5vw;
        padding-bottom: 9vw;
    }
}

@media screen and (max-width: 767px) {
    .philosophy {
        padding-top: 45.3125vw;
        padding-bottom: 14.0625vw;
        border-bottom: 0.3125vw solid #EDECEB;
    }
}

.philosophy__ttl {
    text-align: center;
    font-weight: 600;
    font-size: 1rem;
    line-height: 2;
}

@media screen and (max-width: 767px) {
    .philosophy__ttl {
        font-size: 4.375vw;
    }
}

.philosophy__content {
    margin-top: 23px;
}

@media screen and (max-width: 1000px) {
    .philosophy__content {
        margin-top: 2.3vw;
    }
}

@media screen and (max-width: 767px) {
    .philosophy__content {
        margin-top: 4.6875vw;
    }
}

.philosophy__lead {
    text-align: center;
    font-size: 2.85714rem;
    font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", sans-serif;
}

@media screen and (max-width: 767px) {
    .philosophy__lead {
        font-size: 8.75vw;
    }
}

/*  philosophy-message
--------------------------------------------- */
.philosophy-message {
    position: relative;
    padding-top: 295px;
    padding-bottom: 100px;
    background-color: #F3F2F1;
}

@media screen and (max-width: 1000px) {
    .philosophy-message {
        padding-top: 29.5vw;
        padding-bottom: 10vw;
    }
}

@media screen and (max-width: 767px) {
    .philosophy-message {
        -webkit-box-sizing: border-box;
        box-sizing: border-box;
        padding: 39.0625vw 6.25vw 14.0625vw;
        width: 100%;
    }
}

.philosophy-message__img {
    position: absolute;
    top: -180px;
    right: 0;
    left: 0;
    margin: auto;
    width: 960px;
}

@media screen and (max-width: 1000px) {
    .philosophy-message__img {
        top: -18vw;
        width: 96vw;
    }
}

@media screen and (max-width: 767px) {
    .philosophy-message__img {
        top: -29.6875vw;
        -webkit-box-sizing: border-box;
        box-sizing: border-box;
        padding: 0 6.25vw;
        width: 100%;
    }
}

.philosophy-message__img img {
    width: 100%;
}

.philosophy-message__txt {
    margin: 25px auto 0;
    width: 640px;
    font-size: 1rem;
    line-height: 2;
}

@media screen and (max-width: 1000px) {
    .philosophy-message__txt {
        margin-top: 2.5vw;
    }
}

@media screen and (max-width: 767px) {
    .philosophy-message__txt {
        margin-top: 7.8125vw;
        width: 100%;
    }
}

/*  philosophy-mission
--------------------------------------------- */
.philosophy-mission {
    padding-top: 115px;
}

@media screen and (max-width: 1000px) {
    .philosophy-mission {
        padding-top: 11.5vw;
    }
}

@media screen and (max-width: 767px) {
    .philosophy-mission {
        padding-top: 12.5vw;
    }
}

.philosophy-mission__txt {
    margin-top: 20px;
    text-align: center;
    font-size: 1rem;
    line-height: 2;
}

@media screen and (max-width: 1000px) {
    .philosophy-mission__txt {
        margin-top: 2vw;
    }
}

@media screen and (max-width: 767px) {
    .philosophy-mission__txt {
        -webkit-box-sizing: border-box;
        box-sizing: border-box;
        margin-top: 7.8125vw;
        padding: 0 6.25vw;
        width: 100%;
        text-align: left;
        font-size: 4.375vw;
    }
}

.philosophy-mission__list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: center;
    -ms-flex-align: start;
    margin-top: 55px;
    padding-bottom: 115px;

    -webkit-box-align: start;
    align-items: flex-start;
    -webkit-box-pack: center;
    justify-content: center;
}

@media screen and (max-width: 1000px) {
    .philosophy-mission__list {
        margin-top: 5.5vw;
        padding-bottom: 11.5vw;
    }
}

@media screen and (max-width: 767px) {
    .philosophy-mission__list {
        display: block;
        -webkit-box-sizing: border-box;
        box-sizing: border-box;
        margin-top: 4.6875vw;
        padding: 0 6.25vw 12.5vw;
        width: 100%;
    }
}

.philosophy-mission__item {
    margin-left: 60px;
    width: 280px;
}

@media screen and (max-width: 1000px) {
    .philosophy-mission__item {
        margin-left: 6vw;
        width: 28vw;
    }
}

@media screen and (max-width: 767px) {
    .philosophy-mission__item {
        margin-top: 10.9375vw;
        margin-left: 0;
        width: 100%;
    }
}

.philosophy-mission__item:first-of-type {
    margin-left: 0;
}

@media screen and (max-width: 767px) {
    .philosophy-mission__item:first-of-type {
        margin-top: 0;
    }
}

.philosophy-mission__num {
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: center;
    -ms-flex-align: center;
    margin: 0 auto;
    width: 42px;
    height: 44px;
    background: url(/img/philosophy/ico_circle.png) 0 0 no-repeat;
    background-size: 100% auto;
    font-size: 1.14286rem;
    font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", sans-serif;

    -webkit-box-align: center;
    align-items: center;
    -webkit-box-pack: center;
    justify-content: center;
}

@media screen and (max-width: 767px) {
    .philosophy-mission__num {
        width: 13.125vw;
        height: 13.75vw;
        font-size: 5vw;
    }
}

.philosophy-mission__num:before, .philosophy-mission__num:after {
    position: absolute;
    top: 50%;
    width: 100px;
    height: 1px;
    background-color: #C9C6C4;
    content: "";
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
}

@media screen and (max-width: 1000px) {
    .philosophy-mission__num:before, .philosophy-mission__num:after {
        width: 10vw;
    }
}

@media screen and (max-width: 767px) {
    .philosophy-mission__num:before, .philosophy-mission__num:after {
        width: 31.25vw;
        height: 0.3125vw;
    }
}

.philosophy-mission__num:before {
    left: -120px;
}

@media screen and (max-width: 1000px) {
    .philosophy-mission__num:before {
        left: -12vw;
    }
}

@media screen and (max-width: 767px) {
    .philosophy-mission__num:before {
        left: -37.5vw;
    }
}

.philosophy-mission__num:after {
    right: -120px;
}

@media screen and (max-width: 1000px) {
    .philosophy-mission__num:after {
        right: -12vw;
    }
}

@media screen and (max-width: 767px) {
    .philosophy-mission__num:after {
        right: -37.5vw;
    }
}

.philosophy-mission__head {
    margin-top: 7px;
    text-align: center;
    font-size: 2.85714rem;
    font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", sans-serif;
}

@media screen and (max-width: 1000px) {
    .philosophy-mission__head {
        margin-top: 0.7vw;
    }
}

@media screen and (max-width: 767px) {
    .philosophy-mission__head {
        margin-top: 3.75vw;
        font-size: 8.75vw;
    }
}

.philosophy-mission__desc {
    margin-top: 13px;
    font-size: 1rem;
    line-height: 2;
}

@media screen and (max-width: 1000px) {
    .philosophy-mission__desc {
        margin-top: 1.3vw;
    }
}

@media screen and (max-width: 767px) {
    .philosophy-mission__desc {
        margin-top: 5vw;
        font-size: 4.375vw;
    }
}

.philosophy-mission__content {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: center;
    -ms-flex-align: start;
    padding-top: 120px;
    padding-bottom: 120px;
    background-color: #F3F2F1;

    -webkit-box-pack: center;
    justify-content: center;
    -webkit-box-align: start;
    align-items: flex-start;
}

@media screen and (max-width: 1000px) {
    .philosophy-mission__content {
        padding-top: 12vw;
        padding-bottom: 12vw;
    }
}

@media screen and (max-width: 767px) {
    .philosophy-mission__content {
        display: block;
        padding-top: 14.0625vw;
        padding-bottom: 0;
    }
}

.philosophy-mission__box {
    margin-right: 55px;
    width: 420px;
}

@media screen and (max-width: 1000px) {
    .philosophy-mission__box {
        margin-right: 5.5vw;
        width: 42vw;
    }
}

@media screen and (max-width: 767px) {
    .philosophy-mission__box {
        -webkit-box-sizing: border-box;
        box-sizing: border-box;
        margin-right: 0;
        padding: 0 6.25vw;
        width: 100%;
    }
}

.philosophy-mission__content-head {
    font-size: 1.42857rem;
    font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", sans-serif;
}

@media screen and (max-width: 767px) {
    .philosophy-mission__content-head {
        text-align: center;
        font-size: 6.25vw;
    }
}

.philosophy-mission__content-txt {
    margin-top: 30px;
    font-size: 1rem;
    line-height: 2;
}

@media screen and (max-width: 1000px) {
    .philosophy-mission__content-txt {
        margin-top: 3vw;
    }
}

@media screen and (max-width: 767px) {
    .philosophy-mission__content-txt {
        margin-top: 6.25vw;
        font-size: 4.375vw;
    }
}

.philosophy-mission__img {
    width: 480px;
}

@media screen and (max-width: 1000px) {
    .philosophy-mission__img {
        width: 48vw;
    }
}

@media screen and (max-width: 767px) {
    .philosophy-mission__img {
        margin-top: 6.5625vw;
        width: 100%;
    }
}

.philosophy-mission__img img {
    width: 100%;
}

/*  philosophy-vision
--------------------------------------------- */
.philosophy-vision {
    padding-top: 115px;
}

@media screen and (max-width: 1000px) {
    .philosophy-vision {
        padding-top: 11.5vw;
    }
}

@media screen and (max-width: 767px) {
    .philosophy-vision {
        padding-top: 12.5vw;
    }
}

.philosophy-vision__txt {
    margin: 27px auto 0;
    width: 640px;
    font-size: 1rem;
    line-height: 2;
}

@media screen and (max-width: 1000px) {
    .philosophy-vision__txt {
        margin-top: 2.7vw;
    }
}

@media screen and (max-width: 767px) {
    .philosophy-vision__txt {
        -webkit-box-sizing: border-box;
        box-sizing: border-box;
        margin-top: 9.375vw;
        padding: 0 6.25vw;
        width: 100%;
        font-size: 4.375vw;
    }
}

.philosophy-vision__txt--top {
    margin-top: 20px;
}

@media screen and (max-width: 1000px) {
    .philosophy-vision__txt--top {
        margin-top: 2vw;
    }
}

@media screen and (max-width: 767px) {
    .philosophy-vision__txt--top {
        margin-top: 9.375vw;
    }
}

.philosophy-vision__img {
    margin: 32px auto 35px;
    width: 960px;
    text-align: center;
}

@media screen and (max-width: 1000px) {
    .philosophy-vision__img {
        margin-top: 3.2vw;
        margin-bottom: 3.5vw;
        width: 96vw;
    }
}

@media screen and (max-width: 767px) {
    .philosophy-vision__img {
        margin-top: 6.875vw;
        margin-bottom: 0;
        width: 100%;
    }
}

.philosophy-vision__img img {
    width: 100%;
}

.philosophy-vision__img-txt {
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: center;
    -ms-flex-align: center;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    margin: -30px auto 0;
    width: 300px;
    height: 60px;
    background-color: #5E544F;
    color: #fff;
    font-size: 1.28571rem;
    font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", sans-serif;

    -webkit-box-align: center;
    align-items: center;
    -webkit-box-pack: center;
    justify-content: center;
}

@media screen and (max-width: 767px) {
    .philosophy-vision__img-txt {
        margin-top: -8.75vw;
        width: 75vw;
        height: 17.5vw;
        font-size: 5vw;
    }
}

.ie .philosophy-vision__img-txt {
    padding-top: 6px;
}

@media screen and (max-width: 1000px) {
    .ie .philosophy-vision__img-txt {
        padding-top: 0.6vw;
    }
}

@media screen and (max-width: 767px) {
    .ie .philosophy-vision__img-txt {
        padding-top: 1.875vw;
    }
}

/* ---------------------------------------------
*   contact
--------------------------------------------- */
/*  contact
--------------------------------------------- */
.contact {
    padding-top: 35px;
    padding-bottom: 100px;
}

@media screen and (max-width: 1000px) {
    .contact {
        padding-top: 3.5vw;
        padding-bottom: 10vw;
    }
}

@media screen and (max-width: 767px) {
    .contact {
        padding-top: 12.5vw;
        padding-bottom: 0;
    }
}

.contact__body {
    margin-top: 80px;
}

@media screen and (max-width: 1000px) {
    .contact__body {
        margin-top: 8vw;
    }
}

@media screen and (max-width: 767px) {
    .contact__body {
        margin-top: 20.3125vw;
    }
}

.contact__complete {
    text-align: center;
    font-size: 1rem;
}

@media screen and (max-width: 767px) {
    .contact__complete {
        font-size: 4.375vw;
    }
}

/*  contact-block
--------------------------------------------- */
.contact-block {
    margin: 50px auto 0;
    width: 640px;
    border: 1px solid #C9C6C4;
}

@media screen and (max-width: 1000px) {
    .contact-block {
        margin-top: 5vw;
    }
}

@media screen and (max-width: 767px) {
    .contact-block {
        margin-top: 12.5vw;
        width: 87.5vw;
        border-width: 0.3125vw;
    }
}

.contact-block:first-of-type {
    margin-top: 0;
}

.contact-block__ttl {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    padding: 15px 0;
    border-bottom: 1px solid #C9C6C4;
    background-color: #F3F2F1;
    text-align: center;
    font-size: 1.71429rem;
    font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", sans-serif;
    line-height: 2;
}

@media screen and (max-width: 767px) {
    .contact-block__ttl {
        padding: 3.125vw 0;
        border-width: 0.3125vw;
        font-size: 6.875vw;
    }
}

.contact-block__body {
    padding-top: 40px;
    padding-bottom: 50px;
    border-bottom: 1px solid #C9C6C4;
}

@media screen and (max-width: 767px) {
    .contact-block__body {
        padding-top: 6.25vw;
        padding-bottom: 9.375vw;
        border-width: 0.3125vw;
    }
}

.contact-block__lead {
    text-align: center;
    font-size: 1rem;
    line-height: 2;
}

@media screen and (max-width: 767px) {
    .contact-block__lead {
        padding: 0 6.25vw;
        text-align: left;
        font-size: 4.375vw;
    }
}

.contact-block__dl {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
    margin: 0 auto;
    width: 525px;

    -webkit-box-align: center;
    align-items: center;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}

@media screen and (max-width: 767px) {
    .contact-block__dl {
        display: block;
        width: 75vw;
    }
}

.contact-block__dl-box {
    margin-top: 24px;
    margin-left: 20px;
    text-align: center;
}

@media screen and (max-width: 767px) {
    .contact-block__dl-box {
        margin-top: 6.25vw;
        margin-left: 0;
    }
}

.contact-block__dl-box:nth-of-type(2n+1) {
    margin-left: 0;
}

.contact-block__dl-btn {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: center;
    -ms-flex-align: center;
    width: 250px;
    height: 76px;
    border: 1px solid #706763;
    font-size: 1rem;
    -webkit-transition-duration: .3s;
    transition-duration: .3s;
    -webkit-transition-property: background-color, color;
    transition-property: background-color, color;

    -webkit-box-align: center;
    align-items: center;
    -webkit-box-pack: center;
    justify-content: center;
}

@media screen and (max-width: 767px) {
    .contact-block__dl-btn {
        margin: 0 auto;
        width: 75vw;
        height: 21.875vw;
    }
}

.contact-block__dl-btn:hover {
    background-color: #5E544F;
    color: #fff;
}

.contact-block__num {
    padding: 23px 0;
    text-align: center;
    font-size: 2.57143rem;
    font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", sans-serif;
}

@media screen and (max-width: 767px) {
    .contact-block__num {
        padding: 6.25vw 0;
        font-size: 8.125vw;
    }
}

.contact-block__policy {
    margin: 20px auto 0;
    width: 360px;
}

@media screen and (max-width: 767px) {
    .contact-block__policy {
        -webkit-box-sizing: border-box;
        box-sizing: border-box;
        margin-top: 5.625vw;
        padding: 0 10.9375vw;
        width: 100%;
    }
}

.contact-block__policy-head {
    text-align: center;
    font-size: 0.85714rem;
}

@media screen and (max-width: 767px) {
    .contact-block__policy-head {
        font-size: 3.75vw;
    }
}

.contact-block__policy-txt {
    position: relative;
    margin-top: 20px;
    margin-bottom: 6px;
    font-size: 0.85714rem;
}

@media screen and (max-width: 767px) {
    .contact-block__policy-txt {
        margin-top: 6.5625vw;
        margin-bottom: 1.5625vw;
        font-size: 3.75vw;
    }
}

.contact-block__policy-txt:before, .contact-block__policy-txt:after {
    position: absolute;
    top: 50%;
    width: 1px;
    height: 102px;
    background-color: #C9C6C4;
    content: "";
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
}

@media screen and (max-width: 767px) {
    .contact-block__policy-txt:before, .contact-block__policy-txt:after {
        width: 0.3125vw;
        height: 100%;
    }
}

.contact-block__policy-txt:before {
    left: -30px;
}

@media screen and (max-width: 767px) {
    .contact-block__policy-txt:before {
        left: -4.6875vw;
    }
}

.contact-block__policy-txt:after {
    right: -30px;
}

@media screen and (max-width: 767px) {
    .contact-block__policy-txt:after {
        right: -4.6875vw;
    }
}

/*  contact-form
--------------------------------------------- */
.contact-form {
    padding: 60px 60px 50px;
    background-color: #F3F2F1;
}

@media screen and (max-width: 767px) {
    .contact-form {
        padding: 7.8125vw 6.25vw 9.375vw;
    }
}

.contact-form__list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin-top: 20px;
    border: 1px solid #C9C6C4;
    background-color: #fff;
}

@media screen and (max-width: 767px) {
    .contact-form__list {
        display: block;
        margin-top: 2.8125vw;
        border: none;
        border-width: 0.3125vw;
        background-color: transparent;
    }
}

.contact-form__list:first-of-type {
    margin-top: 0;
}

.contact-form__term {
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    padding: 10px 20px;
    width: 140px;
    font-size: 1rem;
    line-height: 2;

    -webkit-box-align: center;
    align-items: center;
}

@media screen and (max-width: 767px) {
    .contact-form__term {
        padding: 0;
        width: 100%;
        font-size: 4.375vw;
    }
}

.contact-form__term:before {
    position: absolute;
    top: 50%;
    right: 0;
    width: 1px;
    height: calc(100% - 30px);
    background-color: #C9C6C4;
    content: "";
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
}

@media screen and (max-width: 767px) {
    .contact-form__term:before {
        content: none;
    }
}

.contact-form__desc {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    padding: 10px 27px;
    width: 380px;
    font-size: 1rem;
    line-height: 2;

    -webkit-box-align: center;
    align-items: center;
}

@media screen and (max-width: 767px) {
    .contact-form__desc {
        margin-top: 1.25vw;
        padding: 2.5vw 3.75vw;
        width: 100%;
        border: 1px solid #C9C6C4;
        background-color: #fff;
        font-size: 4.375vw;

        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    }
}

.contact-form input[type="text"],
.contact-form input[type="tel"],
.contact-form input[type="email"] {
    padding: 0;
    height: 100%;
    outline: none;
    border: none;
    border-radius: 0;
    background: none;
}

.contact-form input[type="submit"] {
    margin-top: 40px;
    padding: 24px 0;
    outline: none;
    border: none;
    border-radius: 0;
    background-color: #5E544F;
    color: #fff;
    font-size: 1rem;
    cursor: pointer;
    -webkit-transition: opacity 300ms;
    transition: opacity 300ms;

    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
}

.contact-form input[type="submit"]:hover {
    opacity: 0.8;
}

@media screen and (max-width: 767px) {
    .contact-form input[type="submit"] {
        margin-top: 9.375vw;
        padding: 5.625vw 0;
        font-size: 4.375vw;
    }
}

.contact-form textarea {
    padding: 0;
    height: 180px;
    outline: none;
    resize: none;

    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
}

@media screen and (max-width: 767px) {
    .contact-form textarea {
        height: 50vw;
    }
}

.contact-form__select {
    padding: 0 20px;
    background-color: #F3F2F1;
}

@media screen and (max-width: 767px) {
    .contact-form__select {
        -webkit-box-sizing: border-box;
        box-sizing: border-box;
        padding: 0 12.5vw;
        width: 100%;
    }
}

.windows.ie .contact-form__select, .windows.chrome .contact-form__select, .windows.edge .contact-form__select {
    padding: 2px 20px 0;
}

@media screen and (max-width: 767px) {
    .windows.ie .contact-form__select, .windows.chrome .contact-form__select, .windows.edge .contact-form__select {
        padding: 0.625vw 12.5vw 0;
    }
}

.windows.firefox .contact-form__select {
    padding: 0 20px 3px;
}

@media screen and (max-width: 767px) {
    .windows.firefox .contact-form__select {
        padding: 0 12.5vw 0.9375vw;
    }
}

.contact-form select {
    display: block;
    outline: none;
    border: none;
    border-radius: 0;
    background: transparent;
    text-align: center;
    font-size: 1rem;
    cursor: pointer;

    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
}

@media screen and (max-width: 767px) {
    .contact-form select {
        font-size: 4.375vw;
    }
}

.windows.edge .contact-form select {
    padding-top: 1px;
}

.contact-form select::-ms-expand {
    display: none;
}

.contact-form input,
.contact-form textarea {
    width: 100%;
    border: none;
    background: none;
    font-size: 1rem;
    line-height: 2;
}

@media screen and (max-width: 767px) {
    .contact-form input,
    .contact-form textarea {
        font-size: 4.375vw;
    }
}

.contact-form__radio {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}

.contact-form__radio label {
    cursor: pointer;
}

.contact-form__radio > span {
    margin-right: 30px;
}

@media screen and (max-width: 767px) {
    .contact-form__radio > span {
        margin-right: 5.625vw;
    }
}

.contact-form__radio > span:last-of-type {
    margin-right: 0;
}

.contact-form input[type="radio"] {
    display: none;
}

.contact-form input[type="radio"] + span {
    position: relative;
    padding-left: 25px;
}

@media screen and (max-width: 767px) {
    .contact-form input[type="radio"] + span {
        padding-left: 7.1875vw;
    }
}

.contact-form input[type="radio"] + span:before {
    position: absolute;
    top: 50%;
    left: 0;
    width: 1em;
    height: 1em;
    border: 1px solid #C9C6C4;
    border-radius: 50%;
    background-color: #fff;
    content: "";
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
}

@media screen and (max-width: 767px) {
    .contact-form input[type="radio"] + span:before {
        border-width: 0.3125vw;
    }
}

.contact-form input[type="radio"]:checked + span:after {
    position: absolute;
    top: 50%;
    left: 5px;
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background-color: #000;
    content: "";
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
}

@media screen and (max-width: 767px) {
    .contact-form input[type="radio"]:checked + span:after {
        left: 11%;
        width: 1.5625vw;
        height: 1.5625vw;
    }
}

.contact-form input::-webkit-input-placeholder,
.contact-form textarea::-webkit-input-placeholder {
    color: #C9C6C4;
}

.contact-form input:-ms-input-placeholder,
.contact-form textarea:-ms-input-placeholder {
    color: #C9C6C4;
}

.contact-form input::-ms-input-placeholder,
.contact-form textarea::-ms-input-placeholder {
    color: #C9C6C4;
}

.contact-form input::placeholder,
.contact-form textarea::placeholder {
    color: #C9C6C4;
}

.contact-form input:-ms-input-placeholder,
.contact-form textarea:-ms-input-placeholder {
    color: #C9C6C4;
}

.contact-form input::-ms-input-placeholder,
.contact-form textarea::-ms-input-placeholder {
    color: #C9C6C4;
}

@-webkit-keyframes onAutoFillStart {
    from {
    }
    to {
    }
}

@keyframes onAutoFillStart {
    from {
    }
    to {
    }
}

.contact-form input:-webkit-autofill {
    -webkit-transition: background-color 50000s ease-in-out 0s;
    transition: background-color 50000s ease-in-out 0s;
    -webkit-animation-name: onAutoFillStart;
    animation-name: onAutoFillStart;
}

.contact-form .mw_wp_form .horizontal-item + .horizontal-item {
    margin-left: 0;
}

/* ---------------------------------------------
*   recruit
--------------------------------------------- */
/*  recruit-keyvisual
--------------------------------------------- */
.recruit-keyvisual {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    margin: 0 auto;
    padding-top: 70px;
    padding-bottom: 100px;
    max-width: 1280px;
}

@media screen and (max-width: 1280px) {
    .recruit-keyvisual {
        padding-top: 5.46875vw;
        padding-bottom: 7.8125vw;
    }
}

@media screen and (max-width: 767px) {
    .recruit-keyvisual {
        padding-top: 0;
        padding-bottom: 15.625vw;
        width: 100%;
    }
}

.recruit-keyvisual__ttl {
    overflow: hidden;
    padding-top: 680px;
    width: 1280px;
    height: 0;
    background: url(/img/recruit/top/img_kv.png) 0 0 no-repeat;
    background-size: 100% auto;
}

@media screen and (max-width: 1280px) {
    .recruit-keyvisual__ttl {
        padding-top: 53.125vw;
        width: 100%;
    }
}

@media screen and (max-width: 767px) {
    .recruit-keyvisual__ttl {
        padding-top: 160vw;
        width: 100%;
        background-image: url(/img/recruit/top/sp/img_kv.png);
    }
}

.recruit-keyvisual__message {
    margin: 60px auto 0;
    width: 576px;
}

@media screen and (max-width: 1000px) {
    .recruit-keyvisual__message {
        margin-top: 6vw;
    }
}

@media screen and (max-width: 767px) {
    .recruit-keyvisual__message {
        margin-top: 14.0625vw;
        width: 100%;
    }
}

.recruit-keyvisual__message-inner {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-direction: row-reverse;
    flex-direction: row-reverse;

    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
}

@media screen and (max-width: 767px) {
    .recruit-keyvisual__message-inner {
        -ms-flex-direction: column;
        flex-direction: column;
        -ms-flex-align: center;

        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -webkit-box-align: center;
        align-items: center;
    }
}

.recruit-keyvisual__message-txt {
    -ms-writing-mode: tb-rl;
    font-size: 1.14286rem;
    font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", sans-serif;
    line-height: 3;

    -webkit-writing-mode: tb-rl;
    writing-mode: tb-rl;
}

@media screen and (max-width: 767px) {
    .recruit-keyvisual__message-txt {
        margin: 0 auto;
        margin-top: 7.8125vw;
        letter-spacing: 0.02em;
        font-size: 5vw;
        line-height: 2.5;
    }
    .recruit-keyvisual__message-txt:first-of-type {
        margin-top: 0;
    }
}

.recruit-keyvisual__btn {
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: center;
    -ms-flex-align: center;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    margin: 45px auto 0;
    width: 280px;
    height: 76px;
    border: 1px solid #5E544F;
    background-color: #fff;
    font-size: 1rem;
    -webkit-transition-duration: .3s;
    transition-duration: .3s;
    -webkit-transition-property: background-color, color;
    transition-property: background-color, color;

    -webkit-box-align: center;
    align-items: center;
    -webkit-box-pack: center;
    justify-content: center;
}

@media screen and (max-width: 1000px) {
    .recruit-keyvisual__btn {
        margin-top: 4.5vw;
    }
}

@media screen and (max-width: 767px) {
    .recruit-keyvisual__btn {
        margin-top: 12.5vw;
        width: 65.625vw;
        height: 21.875vw;
        border-width: 0.3125vw;
        text-align: center;
        font-size: 4.375vw;
    }
}

.recruit-keyvisual__btn:before {
    position: absolute;
    top: 50%;
    right: 20px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    width: 10px;
    height: 10px;
    border-top: 1px solid #5E544F;
    border-right: 1px solid #5E544F;
    content: "";
    -webkit-transition-duration: .3s;
    transition-duration: .3s;
    -webkit-transition-property: border-color;
    transition-property: border-color;
    -webkit-transform: rotate(45deg) translateY(-50%);
    transform: rotate(45deg) translateY(-50%);
    -webkit-transform-origin: 50% 0;
    transform-origin: 50% 0;
}

@media screen and (max-width: 767px) {
    .recruit-keyvisual__btn:before {
        right: 6.25vw;
        width: 3.125vw;
        height: 3.125vw;
        border-width: 0.3125vw;
    }
}

.recruit-keyvisual__btn:hover {
    background-color: #5E544F;
    color: #fff;
}

.recruit-keyvisual__btn:hover:before {
    border-color: #fff;
}

/*  recruit-work
--------------------------------------------- */
.recruit-work {
    overflow: hidden;
    padding-top: 100px;
    padding-bottom: 140px;
    background-color: #F3F2F1;
}

@media screen and (max-width: 1000px) {
    .recruit-work {
        padding-top: 10vw;
        padding-bottom: 14vw;
    }
}

@media screen and (max-width: 767px) {
    .recruit-work {
        padding-top: 15.625vw;
        padding-bottom: 15.625vw;
    }
}

.recruit-work__inner {
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-direction: row-reverse;
    flex-direction: row-reverse;
    margin: 0 auto;
    width: 960px;

    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
}

@media screen and (max-width: 1000px) {
    .recruit-work__inner {
        width: 96vw;
    }
}

@media screen and (max-width: 767px) {
    .recruit-work__inner {
        -ms-flex-direction: column;
        flex-direction: column;
        width: 100%;

        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
    }
}

.recruit-work__ttl {
    margin-left: 50px;
    -ms-writing-mode: tb-rl;
    font-size: 3.57143rem;
    font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", sans-serif;
    line-height: 1;

    -webkit-writing-mode: tb-rl;
    writing-mode: tb-rl;
}

@media screen and (max-width: 1000px) {
    .recruit-work__ttl {
        margin-left: 5vw;
    }
}

@media screen and (max-width: 767px) {
    .recruit-work__ttl {
        margin-right: 12.5vw;
        margin-left: auto;
        height: -webkit-max-content;
        height: -moz-max-content;
        height: max-content;
        font-size: 12.5vw;
    }
}

.recruit-work__body {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-direction: row-reverse;
    flex-direction: row-reverse;

    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
}

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

.recruit-work__txt {
    margin-top: 68px;
    margin-left: 60px;
    -ms-writing-mode: tb-rl;
    font-size: 1.14286rem;
    font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", sans-serif;
    line-height: 2;

    -webkit-writing-mode: tb-rl;
    writing-mode: tb-rl;
}

@media screen and (max-width: 1000px) {
    .recruit-work__txt {
        margin-top: 6.8vw;
        margin-left: 6vw;
    }
}

@media screen and (max-width: 767px) {
    .recruit-work__txt {
        position: absolute;
        top: 0;
        right: 34.375vw;
        margin-top: 12.5vw;
        margin-left: 0;
        font-size: 5vw;
    }
}

.recruit-work__img {
    width: 640px;
}

@media screen and (max-width: 1000px) {
    .recruit-work__img {
        width: 64vw;
    }
}

@media screen and (max-width: 767px) {
    .recruit-work__img {
        margin-top: 18.75vw;
        width: 100%;
    }
}

.recruit-work__img img {
    width: 100%;
}

.recruit-work__link {
    position: absolute;
    right: 0;
    bottom: -40px;
}

@media screen and (max-width: 1000px) {
    .recruit-work__link {
        bottom: -4vw;
    }
    .ie .recruit-work__link {
        bottom: -6vw;
    }
}

@media screen and (max-width: 767px) {
    .recruit-work__link {
        position: relative;
        bottom: 0;
        margin: -10.9375vw auto 0;
        width: 81.25vw !important;
    }
}

.recruit-work__list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
}

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

.recruit-work__item {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    width: 100px;
    height: 80px;
    border-left: 1px solid #F3F2F1;
}

@media screen and (max-width: 1000px) {
    .recruit-work__item {
        width: 10vw;
        height: 8vw;
    }
}

@media screen and (max-width: 767px) {
    .recruit-work__item {
        width: 100% !important;
        height: 21.875vw;
        border-top: 0.3125vw solid #F3F2F1;
        border-left: none;
    }
}

.recruit-work__item:first-of-type {
    border-left: none;
}

@media screen and (max-width: 767px) {
    .recruit-work__item:first-of-type {
        border-top: none;
    }
}

.recruit-work__item:nth-of-type(4) {
    width: 160px;
}

.recruit-work__item:nth-of-type(5) {
    width: 180px;
}

.recruit-work__btn {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: center;
    -ms-flex-align: center;
    width: 100%;
    height: 100%;
    background-color: #fff;
    text-align: center;
    font-size: 1rem;
    -webkit-transition-duration: .3s;
    transition-duration: .3s;
    -webkit-transition-property: background-color, color;
    transition-property: background-color, color;

    -webkit-box-align: center;
    align-items: center;
    -webkit-box-pack: center;
    justify-content: center;
}

@media screen and (max-width: 767px) {
    .recruit-work__btn {
        font-size: 4.375vw;
    }
}

.recruit-work__btn:hover {
    background-color: #5E544F;
    color: #fff;
}

/*  recruit-interview
--------------------------------------------- */
.recruit-interview {
    padding-top: 90px;
    padding-bottom: 40px;
}

@media screen and (max-width: 1000px) {
    .recruit-interview {
        padding-top: 9vw;
        padding-bottom: 4vw;
    }
}

@media screen and (max-width: 767px) {
    .recruit-interview {
        padding-top: 14.0625vw;
        padding-bottom: 14.0625vw;
    }
}

.recruit-interview__body {
    margin-top: 160px;
}

@media screen and (max-width: 1000px) {
    .recruit-interview__body {
        margin-top: 16vw;
    }
}

@media screen and (max-width: 767px) {
    .recruit-interview__body {
        margin-top: 16.875vw;
    }
}

.recruit-interview__block {
    position: relative;
    margin: 75px auto 0;
    width: 960px;
}

@media screen and (max-width: 1000px) {
    .recruit-interview__block {
        margin-top: 7.5vw;
        width: 96%;
    }
}

@media screen and (max-width: 767px) {
    .recruit-interview__block {
        margin-top: 15.625vw;
        width: 100%;
    }
}

.recruit-interview__block:first-of-type {
    margin-top: 0;
}

.recruit-interview__img {
    position: absolute;
    top: -75px;
    width: 640px;
}

@media screen and (max-width: 1000px) {
    .recruit-interview__img {
        top: -7.5vw;
        width: 64vw;
    }
}

@media screen and (max-width: 767px) {
    .recruit-interview__img {
        position: static;
        width: 100%;
    }
}

.recruit-interview__block:nth-of-type(2n+1) .recruit-interview__img {
    right: 0;
}

.recruit-interview__block:nth-of-type(2n) .recruit-interview__img {
    left: 0;
}

.recruit-interview__img img {
    width: 100%;
}

.recruit-interview__box {
    position: relative;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    padding-top: 50px;
    padding-bottom: 50px;
    width: 460px;
    background-color: #fff;
}

@media screen and (max-width: 1000px) {
    .recruit-interview__box {
        width: 46vw;
    }
}

@media screen and (max-width: 767px) {
    .recruit-interview__box {
        -webkit-box-sizing: border-box;
        box-sizing: border-box;
        padding: 14.0625vw 6.25vw 0 !important;
        width: 100%;
    }
}

.recruit-interview__block:nth-of-type(2n+1) .recruit-interview__box {
    margin-right: auto;
    padding-right: 40px;
}

@media screen and (max-width: 1000px) {
    .recruit-interview__block:nth-of-type(2n+1) .recruit-interview__box {
        padding-right: 4vw;
    }
}

.recruit-interview__block:nth-of-type(2n) .recruit-interview__box {
    margin-left: auto;
    padding-left: 40px;
}

@media screen and (max-width: 1000px) {
    .recruit-interview__block:nth-of-type(2n) .recruit-interview__box {
        padding-left: 4vw;
    }
}

.recruit-interview__num {
    position: absolute;
    top: -20%;
    color: #4D413C;
    font-size: 5.71429rem;
    font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", sans-serif;
}

@media screen and (max-width: 767px) {
    .recruit-interview__num {
        left: 6.25vw !important;
        font-size: 23.75vw;
    }
}

.recruit-interview__block:nth-of-type(2n+1) .recruit-interview__num {
    left: 0;
}

.recruit-interview__block:nth-of-type(2n) .recruit-interview__num {
    left: 40px;
}

@media screen and (max-width: 1000px) {
    .recruit-interview__block:nth-of-type(2n) .recruit-interview__num {
        left: 4vw;
    }
}

.recruit-interview__txt {
    font-size: 1rem;
    line-height: 2;
}

@media screen and (max-width: 767px) {
    .recruit-interview__txt {
        font-size: 4.375vw;
    }
}

.recruit-interview__name {
    margin-top: 15px;
    font-size: 1.14286rem;
    font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", sans-serif;
}

@media screen and (max-width: 1000px) {
    .recruit-interview__name {
        margin-top: 1.5vw;
    }
}

@media screen and (max-width: 767px) {
    .recruit-interview__name {
        margin-top: 3.125vw;
        font-size: 5vw;
    }
}

.recruit-interview__link {
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: center;
    -ms-flex-align: center;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    margin-top: 32px;
    width: 140px;
    height: 40px;
    border: 1px solid #5E544F;
    background-color: #fff;
    font-size: 1rem;
    -webkit-transition-duration: .3s;
    transition-duration: .3s;
    -webkit-transition-property: background-color, color;
    transition-property: background-color, color;

    -webkit-box-align: center;
    align-items: center;
    -webkit-box-pack: center;
    justify-content: center;
}

@media screen and (max-width: 1000px) {
    .recruit-interview__link {
        margin-top: 3.2vw;
    }
}

@media screen and (max-width: 767px) {
    .recruit-interview__link {
        margin: 7.8125vw auto 0;
        width: 50vw;
        height: 15.625vw;
        border-width: 0.3125vw;
        font-size: 4.375vw;
    }
}

.recruit-interview__link:before {
    position: absolute;
    top: 50%;
    right: 10px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    width: 8px;
    height: 8px;
    border-top: 1px solid #5E544F;
    border-right: 1px solid #5E544F;
    content: "";
    -webkit-transition-duration: .3s;
    transition-duration: .3s;
    -webkit-transition-property: border-color;
    transition-property: border-color;
    -webkit-transform: rotate(45deg) translateY(-50%);
    transform: rotate(45deg) translateY(-50%);
    -webkit-transform-origin: 50% 0;
    transform-origin: 50% 0;
}

@media screen and (max-width: 767px) {
    .recruit-interview__link:before {
        right: 3.125vw;
        width: 2.5vw;
        height: 2.5vw;
        border-width: 0.3125vw;
    }
}

.recruit-interview__link:hover {
    background-color: #5E544F;
    color: #fff;
}

.recruit-interview__link:hover:before {
    border-color: #fff;
}

/*  recruit-feature
--------------------------------------------- */
.recruit-feature {
    padding-bottom: 130px;
}

@media screen and (max-width: 1000px) {
    .recruit-feature {
        padding-bottom: 13vw;
    }
}

@media screen and (max-width: 767px) {
    .recruit-feature {
        padding-bottom: 18.75vw;
    }
}

.recruit-feature__body {
    margin-top: 85px;
}

@media screen and (max-width: 1000px) {
    .recruit-feature__body {
        margin-top: 8.5vw;
    }
}

@media screen and (max-width: 767px) {
    .recruit-feature__body {
        margin-top: 15.625vw;
    }
}

.recruit-feature__block {
    position: relative;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    margin: 20px auto 0;
    padding: 20px 0;
    width: 940px;
    background-color: #EFEEED;
}

@media screen and (max-width: 1000px) {
    .recruit-feature__block {
        margin-top: 2vw;
        padding: 2vw 0;
        width: 94vw;
    }
}

@media screen and (max-width: 767px) {
    .recruit-feature__block {
        margin-top: 6.25vw;
        padding: 6.25vw 6.25vw 9.375vw !important;
        width: 87.5vw;
    }
}

.recruit-feature__block:before, .recruit-feature__block:after {
    position: absolute;
    top: -10px;
    width: 20px;
    height: 20px;
    background: url(/img/recruit/top/ico_brackets.png) 0 0 no-repeat;
    background-size: 100% auto;
    content: "";
}

@media screen and (max-width: 1000px) {
    .recruit-feature__block:before, .recruit-feature__block:after {
        top: -1vw;
        width: 2vw;
        height: 2vw;
    }
}

@media screen and (max-width: 767px) {
    .recruit-feature__block:before, .recruit-feature__block:after {
        top: -3.125vw;
        width: 6.25vw;
        height: 6.25vw;
    }
}

.recruit-feature__block:before {
    left: -10px;
}

@media screen and (max-width: 1000px) {
    .recruit-feature__block:before {
        left: -1vw;
    }
}

@media screen and (max-width: 767px) {
    .recruit-feature__block:before {
        left: -3.125vw;
    }
}

.recruit-feature__block:after {
    right: -10px;
    -webkit-transform: rotate(90deg);
    transform: rotate(90deg);
}

@media screen and (max-width: 1000px) {
    .recruit-feature__block:after {
        right: -1vw;
    }
}

@media screen and (max-width: 767px) {
    .recruit-feature__block:after {
        right: -3.125vw;
    }
}

.recruit-feature__block:first-of-type {
    margin-top: 0;
}

.recruit-feature__block:nth-of-type(2n+1) {
    padding-right: 20px;
    padding-left: 40px;
}

@media screen and (max-width: 1000px) {
    .recruit-feature__block:nth-of-type(2n+1) {
        padding-right: 2vw;
        padding-left: 4vw;
    }
}

.recruit-feature__block:nth-of-type(2n) {
    padding-right: 40px;
    padding-left: 20px;
}

@media screen and (max-width: 1000px) {
    .recruit-feature__block:nth-of-type(2n) {
        padding-right: 4vw;
        padding-left: 2vw;
    }
}

.recruit-feature__inner {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: justify;
    -ms-flex-align: center;

    -webkit-box-align: center;
    align-items: center;
    -webkit-box-pack: justify;
    justify-content: space-between;
}

@media screen and (max-width: 767px) {
    .recruit-feature__inner {
        -ms-flex-direction: column-reverse;
        flex-direction: column-reverse;

        -webkit-box-orient: vertical;
        -webkit-box-direction: reverse;
    }
}

.recruit-feature__block:nth-of-type(2n) .recruit-feature__inner {
    -ms-flex-direction: row-reverse;
    flex-direction: row-reverse;

    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
}

@media screen and (max-width: 767px) {
    .recruit-feature__block:nth-of-type(2n) .recruit-feature__inner {
        -ms-flex-direction: column-reverse;
        flex-direction: column-reverse;

        -webkit-box-orient: vertical;
        -webkit-box-direction: reverse;
    }
}

.recruit-feature__inner:before, .recruit-feature__inner:after {
    position: absolute;
    bottom: -11px;
    width: 20px;
    height: 20px;
    background: url(/img/recruit/top/ico_brackets.png) 0 0 no-repeat;
    background-size: 100% auto;
    content: "";
}

@media screen and (max-width: 1000px) {
    .recruit-feature__inner:before, .recruit-feature__inner:after {
        bottom: -1.1vw;
        width: 2vw;
        height: 2vw;
    }
}

@media screen and (max-width: 767px) {
    .recruit-feature__inner:before, .recruit-feature__inner:after {
        bottom: -3.4375vw;
        width: 6.25vw;
        height: 6.25vw;
    }
}

.recruit-feature__inner:before {
    left: -10px;
    -webkit-transform: rotate(-90deg);
    transform: rotate(-90deg);
}

@media screen and (max-width: 1000px) {
    .recruit-feature__inner:before {
        left: -1vw;
    }
}

@media screen and (max-width: 767px) {
    .recruit-feature__inner:before {
        left: -3.125vw;
    }
}

.recruit-feature__inner:after {
    right: -10px;
    -webkit-transform: rotate(180deg);
    transform: rotate(180deg);
}

@media screen and (max-width: 1000px) {
    .recruit-feature__inner:after {
        right: -1vw;
    }
}

@media screen and (max-width: 767px) {
    .recruit-feature__inner:after {
        right: -3.125vw;
    }
}

.recruit-feature__box {
    width: 380px;
}

@media screen and (max-width: 1000px) {
    .recruit-feature__box {
        width: 38vw;
    }
}

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

.recruit-feature__head {
    text-align: center;
    font-size: 1.42857rem;
    font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", sans-serif;
}

@media screen and (max-width: 767px) {
    .recruit-feature__head {
        margin-top: 7.8125vw;
        font-size: 6.25vw;
    }
}

.recruit-feature__txt {
    margin-top: 20px;
    font-size: 1rem;
    line-height: 2;
}

@media screen and (max-width: 1000px) {
    .recruit-feature__txt {
        margin-top: 2vw;
    }
}

@media screen and (max-width: 767px) {
    .recruit-feature__txt {
        margin-top: 4.6875vw;
        font-size: 4.375vw;
    }
}

.recruit-feature__img {
    width: 460px;
}

@media screen and (max-width: 1000px) {
    .recruit-feature__img {
        width: 46vw;
    }
}

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

.recruit-feature__img img {
    width: 100%;
}

/*  recruit-entry
--------------------------------------------- */
.recruit-entry {
    position: relative;
    padding-top: 145px;
    padding-bottom: 105px;
    background: url(/img/recruit/top/bg_entry.jpg) top center no-repeat;
    background-size: cover;
}

@media screen and (max-width: 1000px) {
    .recruit-entry {
        padding-top: 14.5vw;
        padding-bottom: 10.5vw;
    }
}

@media screen and (max-width: 767px) {
    .recruit-entry {
        padding-top: 12.5vw;
        padding-bottom: 15.625vw;
        background-image: url(/img/recruit/top/sp/bg_entry.jpg);
    }
}

.recruit-entry:before {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(77, 65, 60, 0.6);
    content: "";
}

.recruit-entry__lead {
    position: relative;
    color: #fff;
    text-align: center;
    font-size: 1.85714rem;
    font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", sans-serif;
    line-height: 2;
}

@media screen and (max-width: 767px) {
    .recruit-entry__lead {
        font-size: 6.25vw;
    }
}

.recruit-entry__btn {
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: center;
    -ms-flex-align: center;
    margin: 48px auto 0;
    width: 240px;
    height: 76px;
    border: 1px solid #fff;
    color: #fff;
    font-size: 1rem;
    -webkit-transition-duration: .3s;
    transition-duration: .3s;
    -webkit-transition-property: background-color, color;
    transition-property: background-color, color;

    -webkit-box-align: center;
    align-items: center;
    -webkit-box-pack: center;
    justify-content: center;
}

@media screen and (max-width: 767px) {
    .recruit-entry__btn {
        margin-top: 7.8125vw;
        width: 65.625vw;
        height: 20vw;
        border-width: 0.3125vw;
        font-size: 4.375vw;
    }
}

.recruit-entry__btn:before {
    position: absolute;
    top: 50%;
    right: 20px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    width: 8px;
    height: 8px;
    border-top: 1px solid #fff;
    border-right: 1px solid #fff;
    content: "";
    -webkit-transition-duration: .3s;
    transition-duration: .3s;
    -webkit-transition-property: border-color;
    transition-property: border-color;
    -webkit-transform: rotate(45deg) translateY(-50%);
    transform: rotate(45deg) translateY(-50%);
    -webkit-transform-origin: 50% 0;
    transform-origin: 50% 0;
}

@media screen and (max-width: 767px) {
    .recruit-entry__btn:before {
        right: 6.25vw;
        width: 2.5vw;
        height: 2.5vw;
        border-width: 0.3125vw;
    }
}

.recruit-entry__btn:hover {
    background-color: #fff;
    color: #5E544F;
}

.recruit-entry__btn:hover:before {
    border-color: #5E544F;
}

/* ---------------------------------------------
*   about
--------------------------------------------- */
/*  about-message
--------------------------------------------- */
.about-message {
    padding-top: 75px;
    padding-bottom: 120px;
}

@media screen and (max-width: 1000px) {
    .about-message {
        padding-top: 7.5vw;
        padding-bottom: 12vw;
    }
}

@media screen and (max-width: 767px) {
    .about-message {
        padding-top: 12.5vw;
        padding-bottom: 15.625vw;
    }
}

.about-message__body {
    margin-top: 260px;
}

@media screen and (max-width: 1000px) {
    .about-message__body {
        margin-top: 26vw;
    }
}

@media screen and (max-width: 767px) {
    .about-message__body {
        margin-top: 49.0625vw;
    }
}

.about-message__block {
    position: relative;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    margin: 0 auto;
    padding: 235px 160px 90px;
    width: 960px;
    background-color: #F3F2F1;
}

@media screen and (max-width: 1000px) {
    .about-message__block {
        padding: 23.5vw 16vw 9vw;
        width: 96vw;
    }
}

@media screen and (max-width: 767px) {
    .about-message__block {
        padding: 50vw 6.25vw 14.0625vw;
        width: 87.5vw;
    }
}

.about-message__img {
    position: absolute;
    top: -170px;
    right: 0;
    left: 0;
    margin: auto;
    width: 640px;
    text-align: center;
}

@media screen and (max-width: 1000px) {
    .about-message__img {
        top: -17vw;
        width: 64vw;
    }
}

@media screen and (max-width: 767px) {
    .about-message__img {
        top: -31.25vw;
        width: 75vw;
    }
}

.about-message__name {
    position: absolute;
    right: 0;
    bottom: -30px;
    left: 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: center;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    margin: auto;
    padding: 17px;
    width: 280px;
    background-color: #fff;
    font-size: 1.28571rem;
    font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", sans-serif;

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

@media screen and (max-width: 1000px) {
    .about-message__name {
        bottom: -3vw;
    }
}

@media screen and (max-width: 767px) {
    .about-message__name {
        bottom: -8.75vw;
        padding: 4.375vw 0;
        width: 62.5vw;
    }
}

.about-message__txt {
    font-size: 1rem;
    line-height: 2;
}

@media screen and (max-width: 767px) {
    .about-message__txt {
        font-size: 4.375vw;
    }
}

/*  about-statue
--------------------------------------------- */
.about-statue {
    padding-top: 90px;
    padding-bottom: 95px;
    background-color: #F3F2F1;
}

@media screen and (max-width: 1000px) {
    .about-statue {
        padding-top: 9vw;
        padding-bottom: 9.5vw;
    }
}

@media screen and (max-width: 767px) {
    .about-statue {
        padding-top: 12.5vw;
        padding-bottom: 3.125vw;
    }
}

.about-statue__body {
    margin-top: 85px;
}

@media screen and (max-width: 1000px) {
    .about-statue__body {
        margin-top: 8.5vw;
    }
}

@media screen and (max-width: 767px) {
    .about-statue__body {
        margin-top: 11.875vw;
    }
}

.about-statue__list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: center;

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

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

.about-statue__item {
    position: relative;
    padding: 0 45px;
    width: 266px;
    text-align: center;
}

@media screen and (max-width: 1000px) {
    .about-statue__item {
        padding: 0 4.5vw;
        width: 26.6vw;
    }
}

@media screen and (max-width: 767px) {
    .about-statue__item {
        -webkit-box-sizing: border-box;
        box-sizing: border-box;
        padding: 9.375vw 6.25vw;
        width: 100%;
    }
}

.about-statue__item:before {
    position: absolute;
    top: 0;
    left: 0;
    width: 1px;
    height: 100%;
    background-color: #CAC6C4;
    content: "";
}

@media screen and (max-width: 767px) {
    .about-statue__item:before {
        right: 0;
        margin: auto;
        width: 87.5vw;
        height: 0.3125vw;
    }
}

.about-statue__item:first-of-type {
    margin-left: 0;
}

.about-statue__item:first-of-type:before {
    content: none;
}

.about-statue__img {
    margin: 0 auto;
    width: 122px;
}

@media screen and (max-width: 1000px) {
    .about-statue__img {
        width: 12.2vw;
    }
}

@media screen and (max-width: 767px) {
    .about-statue__img {
        width: 37.5vw;
    }
}

.about-statue__img img {
    width: 100%;
}

.about-statue__num {
    display: inline-block;
    margin-top: 15px;
    font-size: 1.14286rem;
    font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", sans-serif;
}

@media screen and (max-width: 1000px) {
    .about-statue__num {
        margin-top: 1.5vw;
    }
}

@media screen and (max-width: 767px) {
    .about-statue__num {
        margin-top: 4.6875vw;
        font-size: 5vw;
    }
}

.about-statue__head {
    font-size: 1.42857rem;
    font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", sans-serif;
}

@media screen and (max-width: 767px) {
    .about-statue__head {
        font-size: 6.25vw;
    }
}

.about-statue__detail {
    margin-top: 20px;
}

@media screen and (max-width: 1000px) {
    .about-statue__detail {
        margin-top: 2vw;
    }
}

@media screen and (max-width: 767px) {
    .about-statue__detail {
        margin-top: 6.5625vw;
    }
}

.about-statue__detail-item {
    padding-left: 1em;
    text-align: left;
    text-indent: -1em;
    font-size: 1rem;
    line-height: 2;
}

@media screen and (max-width: 767px) {
    .about-statue__detail-item {
        font-size: 4.375vw;
    }
}

/*  about-philosophy
--------------------------------------------- */
.about-philosophy {
    padding-top: 90px;
    padding-bottom: 155px;
}

@media screen and (max-width: 1000px) {
    .about-philosophy {
        padding-top: 9vw;
        padding-bottom: 15.5vw;
    }
}

@media screen and (max-width: 767px) {
    .about-philosophy {
        padding-top: 12.5vw;
        padding-bottom: 12.5vw;
    }
}

.about-philosophy__body {
    margin-top: 85px;
}

@media screen and (max-width: 1000px) {
    .about-philosophy__body {
        margin-top: 8.5vw;
    }
}

@media screen and (max-width: 767px) {
    .about-philosophy__body {
        margin-top: 20.3125vw;
    }
}

.about-philosophy__block {
    position: relative;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    margin: 0 auto;
    width: 1280px;
}

@media screen and (max-width: 1280px) {
    .about-philosophy__block {
        width: 100vw;
    }
}

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

.about-philosophy__img {
    position: relative;
    margin-left: auto;
    width: 960px;
}

@media screen and (max-width: 1000px) {
    .about-philosophy__img {
        width: 96vw;
    }
}

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

.about-philosophy__img:before {
    position: absolute;
    top: 50%;
    right: 320px;
    z-index: -1;
    width: 100%;
    height: 100%;
    background-color: #F3F2F1;
    content: "";
}

@media screen and (max-width: 1000px) {
    .about-philosophy__img:before {
        right: 32vw;
    }
}

@media screen and (max-width: 767px) {
    .about-philosophy__img:before {
        top: auto;
        right: 18.75vw;
        bottom: -28.125vw;
    }
}

.about-philosophy__img img {
    width: 100%;
}

.about-philosophy__box {
    position: relative;
    margin-top: -60px;
    margin-left: 160px;
    width: 720px;
}

@media screen and (max-width: 1000px) {
    .about-philosophy__box {
        margin-top: -6vw;
        margin-right: auto;
        margin-left: auto;
    }
}

@media screen and (max-width: 767px) {
    .about-philosophy__box {
        -webkit-box-sizing: border-box;
        box-sizing: border-box;
        margin-top: -18.75vw;
        padding: 0 6.25vw;
        width: 100%;
    }
}

.about-philosophy__lead {
    padding: 20px 0;
    background-color: #fff;
    text-align: center;
    font-size: 2.85714rem;
    font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", sans-serif;
}

@media screen and (max-width: 1000px) {
    .about-philosophy__lead {
        padding: 2vw 0;
    }
}

@media screen and (max-width: 767px) {
    .about-philosophy__lead {
        padding: 5.625vw 0;
        font-size: 8.75vw;
    }
}

.about-philosophy__txt {
    margin-top: 35px;
    font-size: 1rem;
    line-height: 2;
}

@media screen and (max-width: 1000px) {
    .about-philosophy__txt {
        margin-top: 3.5vw;
    }
}

@media screen and (max-width: 767px) {
    .about-philosophy__txt {
        margin-top: 20.3125vw;
        font-size: 4.375vw;
    }
}

/* ---------------------------------------------
*   staff
--------------------------------------------- */
/*  staff-intro
--------------------------------------------- */
.staff-intro {
    padding-top: 75px;
    padding-bottom: 160px;
}

@media screen and (max-width: 1000px) {
    .staff-intro {
        padding-top: 7.5vw;
        padding-bottom: 16vw;
    }
}

@media screen and (max-width: 767px) {
    .staff-intro {
        padding-top: 12.5vw;
        padding-bottom: 12.5vw;
    }
}

.staff-intro__body {
    margin-top: 115px;
}

@media screen and (max-width: 1000px) {
    .staff-intro__body {
        margin-top: 11.5vw;
    }
}

@media screen and (max-width: 767px) {
    .staff-intro__body {
        margin-top: 18.125vw;
    }
}

.staff-intro__block {
    position: relative;
    margin: 120px auto 0;
    width: 960px;
}

@media screen and (max-width: 1000px) {
    .staff-intro__block {
        margin-top: 12vw;
        width: 96vw;
    }
}

@media screen and (max-width: 767px) {
    .staff-intro__block {
        margin-top: 10.3125vw;
        width: 100%;
    }
}

.staff-intro__block:first-of-type {
    margin-top: 0;
}

.staff-intro__img {
    position: absolute;
    top: 50%;
    width: 640px;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
}

@media screen and (max-width: 1000px) {
    .staff-intro__img {
        width: 64vw;
    }
}

@media screen and (max-width: 767px) {
    .staff-intro__img {
        position: static;
        width: 100%;
        -webkit-transform: none;
        transform: none;
    }
}

.staff-intro__block:nth-of-type(2n+1) .staff-intro__img {
    left: 0;
}

.staff-intro__block:nth-of-type(2n) .staff-intro__img {
    right: 0;
}

.staff-intro__img img {
    width: 100%;
}

.staff-intro__box {
    position: relative;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    padding-top: 30px;
    padding-bottom: 25px;
    width: 460px;
    background-color: #fff;
}

@media screen and (max-width: 1000px) {
    .staff-intro__box {
        padding-top: 3vw;
        padding-bottom: 2.5vw;
        width: 46vw;
    }
}

@media screen and (max-width: 767px) {
    .staff-intro__box {
        margin: -6.25vw auto 0;
        padding: 4.6875vw 6.25vw 0 !important;
        width: 87.5vw;
    }
}

.staff-intro__block:nth-of-type(2n+1) .staff-intro__box {
    margin-left: auto;
    padding-left: 40px;
}

@media screen and (max-width: 1000px) {
    .staff-intro__block:nth-of-type(2n+1) .staff-intro__box {
        padding-left: 4vw;
    }
}

.staff-intro__block:nth-of-type(2n) .staff-intro__box {
    margin-right: auto;
    padding-right: 40px;
}

@media screen and (max-width: 1000px) {
    .staff-intro__block:nth-of-type(2n) .staff-intro__box {
        padding-right: 4vw;
    }
}

.staff-intro__name {
    padding-bottom: 6px;
    border-bottom: 1px solid #C9C6C4;
    font-size: 1.14286rem;
    font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", sans-serif;
}

@media screen and (max-width: 1000px) {
    .staff-intro__name {
        padding-bottom: 0.6vw;
    }
}

@media screen and (max-width: 767px) {
    .staff-intro__name {
        padding-bottom: 2.1875vw;
        font-size: 5vw;
    }
}

.staff-intro__belong {
    margin-top: 12px;
    font-size: 1rem;
    line-height: 2;
}

@media screen and (max-width: 1000px) {
    .staff-intro__belong {
        margin-top: 1.2vw;
    }
}

@media screen and (max-width: 767px) {
    .staff-intro__belong {
        margin-top: 4.375vw;
        font-size: 4.375vw;
    }
}

.staff-intro__time {
    font-size: 1rem;
    line-height: 2;
}

@media screen and (max-width: 767px) {
    .staff-intro__time {
        font-size: 4.375vw;
    }
}

.staff-intro__txt {
    margin-top: 5px;
    font-size: 1rem;
    line-height: 2;
}

@media screen and (max-width: 738px) {
    .staff-intro__txt {
        margin-top: 0.5vw;
    }
}

@media screen and (max-width: 767px) {
    .staff-intro__txt {
        margin-top: 1.5625vw;
        font-size: 4.375vw;
    }
}

/*  staff-interview
--------------------------------------------- */
.staff-interview {
    padding-top: 90px;
    padding-bottom: 110px;
    background-color: #F3F2F1;
}

@media screen and (max-width: 1000px) {
    .staff-interview {
        padding-top: 8.5vw;
        padding-bottom: 11.5vw;
    }
}

@media screen and (max-width: 767px) {
    .staff-interview {
        padding-top: 12.5vw;
        padding-bottom: 12.5vw;
    }
}

.staff-interview__body {
    margin-top: 115px;
}

@media screen and (max-width: 1000px) {
    .staff-interview__body {
        margin-top: 11.5vw;
    }
}

@media screen and (max-width: 767px) {
    .staff-interview__body {
        margin-top: 27.1875vw;
    }
}

.staff-interview__block {
    margin: 130px auto 0;
    width: 880px;
}

@media screen and (max-width: 1000px) {
    .staff-interview__block {
        margin-top: 13vw;
        width: 88vw;
    }
}

@media screen and (max-width: 767px) {
    .staff-interview__block {
        -webkit-box-sizing: border-box;
        box-sizing: border-box;
        margin-top: 31.25vw;
        padding: 0 6.25vw;
        width: 100%;
    }
}

.staff-interview__block:first-of-type {
    margin-top: 0;
}

.staff-interview__line {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: justify;
    -ms-flex-align: end;

    -webkit-box-align: end;
    align-items: flex-end;
    -webkit-box-pack: justify;
    justify-content: space-between;
}

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

.staff-interview__line--middle {
    -ms-flex-align: center;

    -webkit-box-align: center;
    align-items: center;
}

.staff-interview__img {
    width: 320px;
}

@media screen and (max-width: 1000px) {
    .staff-interview__img {
        width: 32vw;
    }
}

@media screen and (max-width: 767px) {
    .staff-interview__img {
        margin-bottom: 14.0625vw;
        margin-left: auto;
        width: 78.125vw;
    }
}

.staff-interview__line--top .staff-interview__img {
    position: relative;
    top: -7px;
    z-index: 1;
}

@media screen and (max-width: 1000px) {
    .staff-interview__line--top .staff-interview__img {
        top: -0.7vw;
    }
}

@media screen and (max-width: 767px) {
    .staff-interview__line--top .staff-interview__img {
        top: 0;
    }
}

.staff-interview__line--top .staff-interview__img:before {
    position: absolute;
    top: -40px;
    left: -40px;
    z-index: -1;
    width: 240px;
    height: 240px;
    background-color: #fff;
    content: "";
}

@media screen and (max-width: 1000px) {
    .staff-interview__line--top .staff-interview__img:before {
        top: -4vw;
        left: -4vw;
        width: 24vw;
        height: 24vw;
    }
}

@media screen and (max-width: 767px) {
    .staff-interview__line--top .staff-interview__img:before {
        top: -9.375vw;
        left: -9.375vw;
        width: 56.25vw;
        height: 56.25vw;
    }
}

.staff-interview__line--middle .staff-interview__img {
    margin-top: 40px;
}

@media screen and (max-width: 1000px) {
    .staff-interview__line--middle .staff-interview__img {
        margin-top: 4vw;
    }
}

@media screen and (max-width: 767px) {
    .staff-interview__line--middle .staff-interview__img {
        margin-top: 12.5vw;
        width: 100%;
    }
}

.staff-interview__img img {
    width: 100%;
}

.staff-interview__box {
    margin-top: 50px;
    width: 100%;
}

@media screen and (max-width: 1000px) {
    .staff-interview__box {
        margin-top: 5vw;
    }
}

@media screen and (max-width: 767px) {
    .staff-interview__box {
        margin-top: 10.9375vw;
    }
}

.staff-interview__line .staff-interview__box {
    width: 480px;
}

@media screen and (max-width: 1000px) {
    .staff-interview__line .staff-interview__box {
        width: 48vw;
    }
}

@media screen and (max-width: 767px) {
    .staff-interview__line .staff-interview__box {
        width: 100%;
    }
}

.staff-interview__line--top .staff-interview__box {
    margin-top: 0;
}

.staff-interview__head {
    font-weight: 600;
    font-size: 0.85714rem;
}

@media screen and (max-width: 767px) {
    .staff-interview__head {
        font-size: 3.75vw;
    }
}

.staff-interview__lead {
    margin-top: 22px;
    padding-bottom: 22px;
    border-bottom: 1px solid #CAC6C4;
    font-size: 1.71429rem;
    font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", sans-serif;
}

@media screen and (max-width: 1000px) {
    .staff-interview__lead {
        margin-top: 2.2vw;
        padding-bottom: 2.2vw;
    }
}

@media screen and (max-width: 767px) {
    .staff-interview__lead {
        margin-top: 6.875vw;
        padding-bottom: 7.8125vw;
        font-size: 7.5vw;
    }
}

.staff-interview__txt {
    padding-top: 22px;
    font-size: 1rem;
    line-height: 2;
}

@media screen and (max-width: 1000px) {
    .staff-interview__txt {
        padding-top: 2.2vw;
    }
}

@media screen and (max-width: 767px) {
    .staff-interview__txt {
        padding-top: 6.25vw;
        font-size: 4.375vw;
    }
}

/*  staff-flow
--------------------------------------------- */
.staff-flow {
    padding-top: 110px;
    padding-bottom: 95px;
}

@media screen and (max-width: 1000px) {
    .staff-flow {
        padding-top: 11vw;
        padding-bottom: 9.5vw;
    }
}

@media screen and (max-width: 767px) {
    .staff-flow {
        padding-top: 12.5vw;
        padding-bottom: 12.5vw;
    }
}

.staff-flow__body {
    margin-top: 70px;
}

@media screen and (max-width: 1000px) {
    .staff-flow__body {
        margin-top: 7vw;
    }
}

@media screen and (max-width: 767px) {
    .staff-flow__body {
        -webkit-box-sizing: border-box;
        box-sizing: border-box;
        margin-top: 15.625vw;
        padding: 0 6.25vw;
        width: 100%;
    }
}

.staff-flow__lead {
    margin: 0 auto;
    width: 640px;
    font-size: 1rem;
    line-height: 2;
}

@media screen and (max-width: 767px) {
    .staff-flow__lead {
        width: 100%;
        font-size: 4.375vw;
    }
}

.staff-flow__block {
    position: relative;
    margin: 50px auto 0;
    width: 640px;
}

@media screen and (max-width: 1000px) {
    .staff-flow__block {
        margin-top: 5vw;
    }
}

@media screen and (max-width: 767px) {
    .staff-flow__block {
        margin-top: 12.5vw;
        width: 100%;
    }
}

.staff-flow__block:before {
    position: absolute;
    top: 30px;
    left: 50%;
    width: 1px;
    height: 89%;
    background-color: #CAC6C4;
    content: "";
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
}

@media screen and (max-width: 767px) {
    .staff-flow__block:before {
        top: 7.8125vw;
        width: 0.3125vw;
        height: 86%;
    }
}

.staff-flow__list {
    position: relative;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    margin-top: 1px;
    width: 100%;
}

@media screen and (max-width: 767px) {
    .staff-flow__list {
        margin-top: -10vw;
        width: 100%;
    }
}

.staff-flow__list:after {
    position: absolute;
    top: 27px;
    left: 50%;
    width: 5px;
    height: 5px;
    border-radius: 50%;
    background-color: #FF862B;
    content: "";
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
}

@media screen and (max-width: 767px) {
    .staff-flow__list:after {
        top: 7.1875vw;
        width: 1.5625vw;
        height: 1.5625vw;
    }
}

.staff-flow__list:nth-of-type(2n+1) {
    margin-right: auto;
    padding-right: 400px;
    text-align: right;
}

@media screen and (max-width: 767px) {
    .staff-flow__list:nth-of-type(2n+1) {
        padding-right: 54.6875vw;
    }
}

.staff-flow__list:nth-of-type(2n) {
    margin-left: auto;
    padding-left: 400px;
    text-align: left;
}

@media screen and (max-width: 767px) {
    .staff-flow__list:nth-of-type(2n) {
        padding-left: 54.6875vw;
    }
}

@media screen and (max-width: 767px) {
    .staff-flow__list:first-of-type {
        margin-top: 0;
    }
}

.staff-flow__term {
    position: relative;
    letter-spacing: 0.05em;
    font-size: 3rem;
    font-family: "Cormorant Upright", serif;
    line-height: 1.2;
}

@media screen and (max-width: 767px) {
    .staff-flow__term {
        font-size: 11.25vw;
    }
}

.staff-flow__term:before {
    position: absolute;
    top: 57%;
    width: 50px;
    height: 1px;
    background-color: #CAC6C4;
    content: "";
}

@media screen and (max-width: 767px) {
    .staff-flow__term:before {
        top: 59%;
        width: 4.375vw;
        height: 0.3125vw;
    }
}

.staff-flow__list:nth-of-type(2n+1) .staff-flow__term:before {
    right: -65px;
}

@media screen and (max-width: 767px) {
    .staff-flow__list:nth-of-type(2n+1) .staff-flow__term:before {
        right: -8.75vw;
    }
}

.staff-flow__list:nth-of-type(2n) .staff-flow__term:before {
    left: -65px;
}

@media screen and (max-width: 767px) {
    .staff-flow__list:nth-of-type(2n) .staff-flow__term:before {
        left: -8.75vw;
    }
}

.staff-flow__desc {
    font-size: 1rem;
}

@media screen and (max-width: 767px) {
    .staff-flow__desc {
        font-size: 3.75vw;
        line-height: 2.2;
    }
}

/*  staff-requirement
--------------------------------------------- */
.staff-requirement {
    padding-top: 90px;
    padding-bottom: 90px;
}

@media screen and (max-width: 1000px) {
    .staff-requirement {
        padding-top: 9vw;
        padding-bottom: 9vw;
    }
}

@media screen and (max-width: 767px) {
    .staff-requirement {
        padding-top: 12.5vw;
        padding-bottom: 12.5vw;
    }
}

.staff-requirement__body {
    margin-top: 78px;
}

@media screen and (max-width: 1000px) {
    .staff-requirement__body {
        margin-top: 7.8vw;
    }
}

@media screen and (max-width: 767px) {
    .staff-requirement__body {
        margin-top: 17.1875vw;
    }
}

.staff-requirement__block {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    margin: 0 auto;
    width: 640px;
    border: 1px solid #CAC6C4;
}

@media screen and (max-width: 767px) {
    .staff-requirement__block {
        width: 87.5vw;
        border-width: 0.3125vw;
    }
}

.staff-requirement__list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    border-bottom: 1px solid #CAC6C4;
}

@media screen and (max-width: 767px) {
    .staff-requirement__list {
        border-width: 0.3125vw;
    }
}

.staff-requirement__list:last-of-type {
    border-bottom: none;
}

.staff-requirement__term {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: center;
    -ms-flex-align: center;
    width: 120px;
    border-right: 1px solid #CAC6C4;
    background-color: #F3F2F1;
    font-size: 1rem;

    -webkit-box-align: center;
    align-items: center;
    -webkit-box-pack: center;
    justify-content: center;
}

@media screen and (max-width: 767px) {
    .staff-requirement__term {
        -webkit-box-sizing: border-box;
        box-sizing: border-box;
        padding: 0 3.125vw;
        width: 15.625vw;
        border-width: 0.3125vw;
        font-size: 4.375vw;
    }
}

.staff-requirement__desc {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    padding: 15px 25px 15px 30px;
    width: 520px;
    font-size: 1rem;
    line-height: 2;
}

@media screen and (max-width: 767px) {
    .staff-requirement__desc {
        padding: 4.0625vw 6.25vw;
        width: 71.875vw;
        font-size: 4.375vw;
    }
}

/*  staff-result
--------------------------------------------- */
.staff-result {
    padding-bottom: 100px;
}

@media screen and (max-width: 1000px) {
    .staff-result {
        padding-bottom: 10vw;
    }
}

@media screen and (max-width: 767px) {
    .staff-result {
        padding-bottom: 15.625vw;
    }
}

.staff-result__body {
    margin-top: 45px;
}

@media screen and (max-width: 1000px) {
    .staff-result__body {
        margin-top: 4.5vw;
    }
}

@media screen and (max-width: 767px) {
    .staff-result__body {
        margin-top: 17.1875vw;
    }
}

.staff-result__block {
    margin: 0 auto;
    width: 640px;
}

@media screen and (max-width: 767px) {
    .staff-result__block {
        -webkit-box-sizing: border-box;
        box-sizing: border-box;
        padding: 0 6.25vw;
        width: 100%;
    }
}

.staff-result__tab {
    margin-left: auto;
    width: 112px;
    height: 22px;
}

@media screen and (max-width: 767px) {
    .staff-result__tab {
        width: 100%;
        height: 11.25vw;
    }
}

.staff-result .js-select-box__selected {
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
    padding-left: 5px;
    height: 100%;
    background-color: #F3F2F1;
    font-size: 1rem;
    cursor: pointer;
    -webkit-transition: opacity 300ms;
    transition: opacity 300ms;

    -webkit-box-align: center;
    align-items: center;
}

.staff-result .js-select-box__selected:hover {
    opacity: 0.8;
}

@media screen and (max-width: 767px) {
    .staff-result .js-select-box__selected {
        padding-left: 6.25vw;
        font-size: 4.375vw;
    }
}

.staff-result .js-select-box__selected:before {
    position: absolute;
    top: 0;
    right: 0;
    width: 22px;
    height: 100%;
    background-color: #DBD9D8;
    content: "";
}

@media screen and (max-width: 767px) {
    .staff-result .js-select-box__selected:before {
        width: 10.9375vw;
    }
}

.staff-result .js-select-box__selected:after {
    position: absolute;
    top: 50%;
    right: 7px;
    width: 0;
    height: 0;
    border-width: 4px 4px 0 4px;
    border-style: solid;
    border-color: #4D413C transparent transparent transparent;
    content: "";
    -webkit-transition: -webkit-transform 0.3s;
    transition: -webkit-transform 0.3s;
    transition: transform 0.3s;
    transition: transform 0.3s, -webkit-transform 0.3s;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    -webkit-transform-origin: 50% 0;
    transform-origin: 50% 0;
}

@media screen and (max-width: 767px) {
    .staff-result .js-select-box__selected:after {
        right: 3.4375vw;
        border-width: 2.1875vw 2.1875vw 0 2.1875vw;
    }
}

.staff-result .js-select-box__selected.down:after {
    -webkit-transform: rotate(180deg) translateY(-50%);
    transform: rotate(180deg) translateY(-50%);
}

.staff-result__tab-list {
    display: none;
}

.staff-result__tab-link {
    position: relative;
    display: block;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    padding: 0;
    padding-left: 5px;
    width: 100%;
    height: 100%;
    outline: none;
    border: none;
    background-color: #F3F2F1;
    text-align: left;
    font-size: 1rem;
    font-family: inherit;
    cursor: pointer;

    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
}

@media screen and (max-width: 767px) {
    .staff-result__tab-link {
        padding-top: 2.1875vw;
        padding-bottom: 2.1875vw;
        padding-left: 6.25vw;
        font-size: 4.375vw;
    }
}

.staff-result__tab-wrapper {
    margin-top: 12px;
}

@media screen and (max-width: 767px) {
    .staff-result__tab-wrapper {
        margin-top: 6.25vw;
    }
}

.staff-result__content {
    display: none;
    background-color: #F3F2F1;
}

.staff-result__content.current {
    display: block;
}

.staff-result__list {
    padding: 20px 55px;
}

@media screen and (max-width: 767px) {
    .staff-result__list {
        padding: 3.125vw 6.25vw;
    }
}

.staff-result__item {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    padding: 22px 0;
    border-top: 1px solid #fff;

    -webkit-box-align: center;
    align-items: center;
}

@media screen and (max-width: 767px) {
    .staff-result__item {
        padding: 6.25vw 0;
        border-width: 0.3125vw;
    }
}

.staff-result__item:first-of-type {
    border-top: none;
}

.staff-result__date {
    margin-right: 18px;
    font-size: 1rem;
}

@media screen and (max-width: 767px) {
    .staff-result__date {
        margin-right: 5.625vw;
        font-size: 4.375vw;
    }
}

.staff-result__txt {
    font-weight: 600;
    font-size: 1rem;
}

@media screen and (max-width: 767px) {
    .staff-result__txt {
        font-size: 4.375vw;
    }
}

.staff-result__more {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: center;
    -ms-flex-align: center;
    padding: 0;
    width: 100%;
    height: 40px;
    outline: none;
    border: none;
    background-color: #DBD9D8;
    cursor: pointer;
    -webkit-transition: opacity 300ms;
    transition: opacity 300ms;

    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    -webkit-box-align: center;
    align-items: center;
    -webkit-box-pack: center;
    justify-content: center;
}

.staff-result__more:hover {
    opacity: 0.8;
}

@media screen and (max-width: 767px) {
    .staff-result__more {
        height: 12.5vw;
    }
}

.staff-result__more img {
    width: 24px;
}

@media screen and (max-width: 767px) {
    .staff-result__more img {
        width: 7.5vw;
    }
}


/* ---------------------------------------------
*   message
--------------------------------------------- */

/*  message-interview
--------------------------------------------- */
.message-interview {
    padding-top: 90px;
    padding-bottom: 110px;
}

@media screen and (max-width: 1000px) {
    .message-interview {
        padding-top: 8.5vw;
        padding-bottom: 11.5vw;
    }
}

@media screen and (max-width: 767px) {
    .message-interview {
        padding-top: 12.5vw;
        padding-bottom: 12.5vw;
    }
}

.message-interview__block {
    margin: 130px auto 0;
    width: 880px;
}

@media screen and (max-width: 1000px) {
    .message-interview__block {
        margin-top: 13vw;
        width: 88vw;
    }
}

@media screen and (max-width: 767px) {
    .message-interview__block {
        -webkit-box-sizing: border-box;
        box-sizing: border-box;
        margin-top: 31.25vw;
        padding: 0 6.25vw;
        width: 100%;
    }
}

.message-interview__block:first-of-type {
    margin-top: 0;
}

.message-interview__line {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: justify;
    -ms-flex-align: end;

    -webkit-box-align: start;
    align-items: flex-start;
    -webkit-box-pack: justify;
    justify-content: space-between;
}

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

.message-interview__line--middle {
    -ms-flex-align: center;

    -webkit-box-align: center;
    align-items: center;
}

.message-interview__img {
    width: 320px;
}

@media screen and (max-width: 1000px) {
    .message-interview__img {
        width: 32vw;
    }
}

@media screen and (max-width: 767px) {
    .message-interview__img {
        margin-bottom: 14.0625vw;
        margin-left: auto;
        width: 78.125vw;
    }
}

.message-interview__line--top .message-interview__img {
    position: relative;
    top: 40px;
    z-index: 1;
}

@media screen and (max-width: 1000px) {
    .message-interview__line--top .message-interview__img {
        top: -0.7vw;
    }
}

@media screen and (max-width: 767px) {
    .message-interview__line--top .message-interview__img {
        top: 0;
    }
}

.message-interview__line--top .message-interview__img:before {
    position: absolute;
    top: -40px;
    left: -40px;
    z-index: -1;
    width: 240px;
    height: 240px;
    background-color: #F3F2F1;
    content: "";
}

@media screen and (max-width: 1000px) {
    .message-interview__line--top .message-interview__img:before {
        top: -4vw;
        left: -4vw;
        width: 24vw;
        height: 24vw;
    }
}

@media screen and (max-width: 767px) {
    .message-interview__line--top .message-interview__img:before {
        top: -9.375vw;
        left: -9.375vw;
        width: 56.25vw;
        height: 56.25vw;
    }
}

.message-interview__line--middle .message-interview__img {
    margin-top: 40px;
}

@media screen and (max-width: 1000px) {
    .message-interview__line--middle .message-interview__img {
        margin-top: 4vw;
    }
}

@media screen and (max-width: 767px) {
    .message-interview__line--middle .message-interview__img {
        margin-top: 12.5vw;
        width: 100%;
    }
}

.message-interview__img img {
    width: 100%;
}

.message-interview__img-president_name {
    display: block;
    text-align: center;
    margin-top: 10px;
    font-size: 1.5rem;
}

.message-interview__box {
    margin-top: 50px;
    width: 100%;
}

@media screen and (max-width: 1000px) {
    .message-interview__box {
        margin-top: 5vw;
    }
}

@media screen and (max-width: 767px) {
    .message-interview__box {
        margin-top: 10.9375vw;
    }
}

.message-interview__line .message-interview__box {
    width: 480px;
}

@media screen and (max-width: 1000px) {
    .message-interview__line .message-interview__box {
        width: 48vw;
    }
}

@media screen and (max-width: 767px) {
    .message-interview__line .message-interview__box {
        width: 100%;
    }
}

.message-interview__line--top .message-interview__box {
    margin-top: 0;
}

.message-interview__lead {
    margin-top: 22px;
    padding-bottom: 22px;
    border-bottom: 1px solid #CAC6C4;
    font-size: 1.71429rem;
    font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", sans-serif;
}

@media screen and (max-width: 1000px) {
    .message-interview__lead {
        margin-top: 2.2vw;
        padding-bottom: 2.2vw;
    }
}

@media screen and (max-width: 767px) {
    .message-interview__lead {
        margin-top: 6.875vw;
        padding-bottom: 7.8125vw;
        font-size: 7.5vw;
    }
}

.message-interview__txt {
    padding-top: 22px;
    font-size: 1rem;
    line-height: 2;
}

@media screen and (max-width: 1000px) {
    .message-interview__txt {
        padding-top: 2.2vw;
    }
}

@media screen and (max-width: 767px) {
    .message-interview__txt {
        padding-top: 6.25vw;
        font-size: 4.375vw;
    }
}







/* ---------------------------------------------
*   clinic
--------------------------------------------- */
/*  clinic-overview
--------------------------------------------- */
.clinic-overview {
    padding-top: 90px;
    padding-bottom: 90px;
}

@media screen and (max-width: 1000px) {
    .clinic-overview {
        padding-top: 9vw;
        padding-bottom: 9vw;
    }
}

@media screen and (max-width: 767px) {
    .clinic-overview {
        padding-top: 12.5vw;
        padding-bottom: 12.5vw;
    }
}

.clinic-overview__body {
    margin-top: 78px;
    text-align: center;
}

@media screen and (max-width: 1000px) {
    .clinic-overview__body {
        margin-top: 7.8vw;
    }
}

@media screen and (max-width: 767px) {
    .clinic-overview__body {
        margin-top: 17.1875vw;
    }
}

.clinic-overview-head {
    display: inline-block;
    padding-bottom: 2px;
    border-bottom: 1px solid #C9C6C4;
    font-size: 1.71429rem;
    font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", sans-serif;
    line-height: 2;
}

@media screen and (max-width: 767px) {
    .clinic-overview-head {
        padding-bottom: 0;
        border-width: 0.3125vw;
        font-size: 6.25vw;
    }
}

.clinic-overview__block {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    margin: 40px auto 0;
    width: 640px;
    border: 1px solid #CAC6C4;
    text-align: left;
}

@media screen and (max-width: 1000px) {
    .clinic-overview__block {
        margin-top: 4.5vw;
    }
}

@media screen and (max-width: 767px) {
    .clinic-overview__block {
        width: 87.5vw;
        margin-top: 9.375vw;
        border-width: 0.3125vw;
    }
}

.clinic-overview__list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    border-bottom: 1px solid #CAC6C4;
}

@media screen and (max-width: 767px) {
    .clinic-overview__list {
        border-width: 0.3125vw;
    }
}

.clinic-overview__list:last-of-type {
    border-bottom: none;
}

.clinic-overview__term {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: center;
    -ms-flex-align: center;
    width: 120px;
    border-right: 1px solid #CAC6C4;
    background-color: #F3F2F1;
    font-size: 1rem;

    -webkit-box-align: center;
    align-items: center;
    -webkit-box-pack: center;
    justify-content: center;
}

@media screen and (max-width: 767px) {
    .clinic-overview__term {
        -webkit-box-sizing: border-box;
        box-sizing: border-box;
        padding: 0 3.125vw;
        width: 15.625vw;
        border-width: 0.3125vw;
        font-size: 4.375vw;
    }
}

.clinic-overview__desc {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    padding: 15px 25px 15px 30px;
    width: 520px;
    font-size: 1rem;
    line-height: 2;
}

@media screen and (max-width: 767px) {
    .clinic-overview__desc {
        padding: 4.0625vw 6.25vw;
        width: 71.875vw;
        font-size: 4.375vw;
    }
}


.clinic-overview__block + .clinic-overview-head {
    margin-top: 45px;
}

@media screen and (max-width: 1000px) {
    .clinic-overview__block + .clinic-overview-head {
        margin-top: 4.5vw;
    }
}

@media screen and (max-width: 767px) {
    .clinic-overview__block + .clinic-overview-head {
        margin-top: 9.375vw;
    }
}



.clinic-coordinate__block {
    margin: 50px auto 0;
    width: 840px;
}

@media screen and (max-width: 1000px) {
    .clinic-coordinate__block {
        margin-top: 5vw;
        width: 84vw;
    }
}

@media screen and (max-width: 767px) {
    .clinic-coordinate__block {
        margin-top: 9.375vw;
        width: 100%;
        padding: 0 6.25%;
        -webkit-box-sizing: border-box;
        box-sizing: border-box;
    }
}

@media screen and (max-width: 767px) {
    .clinic-coordinate__block__table {
        width: 100%;
        table-layout: fixed;
    }
}

@media screen and (max-width: 767px) {
    .clinic-coordinate__block__table:last-of-type {
        border-bottom: 0.3125vw solid #C9C6C4;
    }
}

.clinic-coordinate__block__table thead th {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    padding: 8px 0;
    width: 150px;
    border-collapse: separate;
    border-left: 2px solid #fff;
    background-color: #EDECEB;
    text-align: center;
    font-weight: 600;
    font-size: 1rem;
}

@media screen and (max-width: 1000px) {
    .clinic-coordinate__block__table thead th {
        padding: 0.8vw 0;
        width: 15vw;
        border-width: 0.2vw;
    }
}

@media screen and (max-width: 767px) {
    .clinic-coordinate__block__table thead th {
        padding: 3.4375vw 0;
        width: 100%;
        border: none;
        font-size: 3.125vw;
    }
}

.clinic-coordinate__block__table thead th:first-of-type {
    width: 20%;
    border-left: none;
}

.clinic-coordinate__block__table thead th:nth-child(n+2) {
    width: 40%;
}

@media screen and (max-width: 767px) {
    .clinic-coordinate__block__table thead th:first-of-type,
    .clinic-coordinate__block__table thead th:nth-child(n+2) {
        width: auto;
    }
}

@media screen and (max-width: 767px) {
    .clinic-coordinate__block__table thead th.border {
        border-left: 0.3125vw solid #fff;
    }
}

.clinic-coordinate__block__table tbody tr {
    border-bottom: 1px solid #C9C6C4;
}

@media screen and (max-width: 767px) {
    .clinic-coordinate__block__table tbody tr {
        border-width: 0.3125vw;
    }
}

@media screen and (max-width: 767px) {
    .clinic-coordinate__block__table tbody tr:last-of-type {
        border-bottom: none;
    }
}

.clinic-coordinate__block__table tbody td {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    padding: 31px 23px;
    text-align: left;
    font-size: 1rem;
}

@media screen and (max-width: 1000px) {
    .clinic-coordinate__block__table tbody td {
        padding: 3.1vw 2.3vw;
    }
}

@media screen and (max-width: 767px) {
    .clinic-coordinate__block__table tbody td {
        padding: 5.3125vw 6.25vw;
        font-size: 3.125vw;
        word-break: break-all;
    }
}

.clinic-coordinate__block__table tbody td.col2 {
    position: relative;
    width: 270px;
    text-align: left;
}

@media screen and (max-width: 1000px) {
    .clinic-coordinate__block__table tbody td.col2 {
        width: 27vw;
    }
}

@media screen and (max-width: 767px) {
    .clinic-coordinate__block__table tbody td.col2 {
        width: 50%;
        vertical-align: baseline;
    }
}

.clinic-coordinate__block__table tbody td.col2:before {
    position: absolute;
    top: 50%;
    left: 0;
    width: 1px;
    height: 36px;
    background-color: #C9C6C4;
    content: "";
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
}

@media screen and (max-width: 1000px) {
    .clinic-coordinate__block__table tbody td.col2:before {
        height: 3.6vw;
    }
}

@media screen and (max-width: 767px) {
    .clinic-coordinate__block__table tbody td.col2:before {
        width: 0.3125vw;
        height: 17.1875vw;
    }
}

.clinic-coordinate__block__table tbody td.col2:first-of-type:before {
    content: none;
}

.clinic-coordinate__block__table tbody td.large {
    font-weight: 600;
    font-size: 1.14286rem;
}

@media screen and (max-width: 767px) {
    .clinic-coordinate__block__table tbody td.large {
        font-size: 3.125vw;
    }
}

.clinic-coordinate__block__table tbody td .strong {
    font-weight: 600;
}






/* ---------------------------------------------
*   privacy
--------------------------------------------- */
/*  privacy
--------------------------------------------- */
.privacy {
    padding-top: 90px;
    padding-bottom: 90px;
}

@media screen and (max-width: 1000px) {
    .privacy {
        padding-top: 9vw;
        padding-bottom: 9vw;
    }
}

@media screen and (max-width: 767px) {
    .privacy {
        padding-top: 12.5vw;
        padding-bottom: 12.5vw;
    }
}

.privacy__body {
    margin-top: 78px;
    text-align: center;
}

@media screen and (max-width: 1000px) {
    .privacy__body {
        margin-top: 7.8vw;
    }
}

@media screen and (max-width: 767px) {
    .privacy__body {
        margin-top: 17.1875vw;
        padding: 0 6.25%;
    }
}

.privacy-head {
    display: inline-block;
    padding-bottom: 2px;
    border-bottom: 1px solid #C9C6C4;
    font-size: 1.71429rem;
    font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", sans-serif;
    line-height: 2;
}

@media screen and (max-width: 767px) {
    .privacy-head {
        padding-bottom: 0;
        border-width: 0.3125vw;
        font-size: 6.25vw;
    }
}

.privacy-txt + .privacy-head {
    margin-top: 45px;
}

@media screen and (max-width: 1000px) {
    .privacy-txt + .privacy-head {
        margin-top: 4.5vw;
    }
}

@media screen and (max-width: 767px) {
    .privacy-txt + .privacy-head {
        margin-top: 9.375vw;
    }
}

.privacy-txt {
    margin: 20px auto 0;
    width: 640px;
    font-size: 1rem;
    line-height: 2;
    text-align: left;
}

@media screen and (max-width: 767px) {
    .privacy-txt {
        width: 100%;
        font-size: 4.375vw;
    }
}



/* ==========================================================
*
*   utility
*
========================================================== */
/* ---------------------------------------------
*   margin-top
--------------------------------------------- */
.mgt-pc--0 {
    margin-top: 0 !important;
}

.mgt-pc--5 {
    margin-top: 5px !important;
}

.mgt-pc--10 {
    margin-top: 10px !important;
}

.mgt-pc--15 {
    margin-top: 15px !important;
}

.mgt-pc--20 {
    margin-top: 20px !important;
}

.mgt-pc--25 {
    margin-top: 25px !important;
}

.mgt-pc--30 {
    margin-top: 30px !important;
}

.mgt-pc--35 {
    margin-top: 35px !important;
}

.mgt-pc--40 {
    margin-top: 40px !important;
}

.mgt-pc--45 {
    margin-top: 45px !important;
}

.mgt-pc--50 {
    margin-top: 50px !important;
}

.mgt-pc--55 {
    margin-top: 55px !important;
}

.mgt-pc--60 {
    margin-top: 60px !important;
}

.mgt-pc--65 {
    margin-top: 65px !important;
}

.mgt-pc--70 {
    margin-top: 70px !important;
}

.mgt-pc--75 {
    margin-top: 75px !important;
}

.mgt-pc--80 {
    margin-top: 80px !important;
}

.mgt-pc--85 {
    margin-top: 85px !important;
}

.mgt-pc--90 {
    margin-top: 90px !important;
}

.mgt-pc--95 {
    margin-top: 95px !important;
}

.mgt-pc--100 {
    margin-top: 100px !important;
}

.mgt-pc--105 {
    margin-top: 105px !important;
}

.mgt-pc--110 {
    margin-top: 110px !important;
}

.mgt-pc--115 {
    margin-top: 115px !important;
}

.mgt-pc--120 {
    margin-top: 120px !important;
}

.mgt-pc--125 {
    margin-top: 125px !important;
}

.mgt-pc--130 {
    margin-top: 130px !important;
}

.mgt-pc--135 {
    margin-top: 135px !important;
}

.mgt-pc--140 {
    margin-top: 140px !important;
}

.mgt-pc--145 {
    margin-top: 145px !important;
}

.mgt-pc--150 {
    margin-top: 150px !important;
}

.mgt-pc--155 {
    margin-top: 155px !important;
}

.mgt-pc--160 {
    margin-top: 160px !important;
}

.mgt-pc--165 {
    margin-top: 165px !important;
}

.mgt-pc--170 {
    margin-top: 170px !important;
}

.mgt-pc--175 {
    margin-top: 175px !important;
}

.mgt-pc--180 {
    margin-top: 180px !important;
}

.mgt-pc--185 {
    margin-top: 185px !important;
}

.mgt-pc--190 {
    margin-top: 190px !important;
}

.mgt-pc--195 {
    margin-top: 195px !important;
}

.mgt-pc--200 {
    margin-top: 200px !important;
}

.mgt-pc--205 {
    margin-top: 205px !important;
}

.mgt-pc--210 {
    margin-top: 210px !important;
}

.mgt-pc--215 {
    margin-top: 215px !important;
}

.mgt-pc--220 {
    margin-top: 220px !important;
}

.mgt-pc--225 {
    margin-top: 225px !important;
}

.mgt-pc--230 {
    margin-top: 230px !important;
}

.mgt-pc--235 {
    margin-top: 235px !important;
}

.mgt-pc--240 {
    margin-top: 240px !important;
}

.mgt-pc--245 {
    margin-top: 245px !important;
}

.mgt-pc--250 {
    margin-top: 250px !important;
}

@media screen and (max-width: 767px) {
    .mgt-sp--0 {
        margin-top: 0 !important;
    }
    .mgt-sp--5 {
        margin-top: 1.5625vw !important;
    }
    .mgt-sp--10 {
        margin-top: 3.125vw !important;
    }
    .mgt-sp--15 {
        margin-top: 4.6875vw !important;
    }
    .mgt-sp--20 {
        margin-top: 6.25vw !important;
    }
    .mgt-sp--25 {
        margin-top: 7.8125vw !important;
    }
    .mgt-sp--30 {
        margin-top: 9.375vw !important;
    }
    .mgt-sp--35 {
        margin-top: 10.9375vw !important;
    }
    .mgt-sp--40 {
        margin-top: 12.5vw !important;
    }
    .mgt-sp--45 {
        margin-top: 14.0625vw !important;
    }
    .mgt-sp--50 {
        margin-top: 15.625vw !important;
    }
    .mgt-sp--55 {
        margin-top: 17.1875vw !important;
    }
    .mgt-sp--60 {
        margin-top: 18.75vw !important;
    }
    .mgt-sp--65 {
        margin-top: 20.3125vw !important;
    }
    .mgt-sp--70 {
        margin-top: 21.875vw !important;
    }
    .mgt-sp--75 {
        margin-top: 23.4375vw !important;
    }
    .mgt-sp--80 {
        margin-top: 25vw !important;
    }
    .mgt-sp--85 {
        margin-top: 26.5625vw !important;
    }
    .mgt-sp--90 {
        margin-top: 28.125vw !important;
    }
    .mgt-sp--95 {
        margin-top: 29.6875vw !important;
    }
    .mgt-sp--100 {
        margin-top: 31.25vw !important;
    }
    .mgt-sp--105 {
        margin-top: 32.8125vw !important;
    }
    .mgt-sp--110 {
        margin-top: 34.375vw !important;
    }
    .mgt-sp--115 {
        margin-top: 35.9375vw !important;
    }
    .mgt-sp--120 {
        margin-top: 37.5vw !important;
    }
    .mgt-sp--125 {
        margin-top: 39.0625vw !important;
    }
    .mgt-sp--130 {
        margin-top: 40.625vw !important;
    }
    .mgt-sp--135 {
        margin-top: 42.1875vw !important;
    }
    .mgt-sp--140 {
        margin-top: 43.75vw !important;
    }
    .mgt-sp--145 {
        margin-top: 45.3125vw !important;
    }
    .mgt-sp--150 {
        margin-top: 46.875vw !important;
    }
    .mgt-sp--155 {
        margin-top: 48.4375vw !important;
    }
    .mgt-sp--160 {
        margin-top: 50vw !important;
    }
    .mgt-sp--165 {
        margin-top: 51.5625vw !important;
    }
    .mgt-sp--170 {
        margin-top: 53.125vw !important;
    }
    .mgt-sp--175 {
        margin-top: 54.6875vw !important;
    }
    .mgt-sp--180 {
        margin-top: 56.25vw !important;
    }
    .mgt-sp--185 {
        margin-top: 57.8125vw !important;
    }
    .mgt-sp--190 {
        margin-top: 59.375vw !important;
    }
    .mgt-sp--195 {
        margin-top: 60.9375vw !important;
    }
    .mgt-sp--200 {
        margin-top: 62.5vw !important;
    }
    .mgt-sp--205 {
        margin-top: 64.0625vw !important;
    }
    .mgt-sp--210 {
        margin-top: 65.625vw !important;
    }
    .mgt-sp--215 {
        margin-top: 67.1875vw !important;
    }
    .mgt-sp--220 {
        margin-top: 68.75vw !important;
    }
    .mgt-sp--225 {
        margin-top: 70.3125vw !important;
    }
    .mgt-sp--230 {
        margin-top: 71.875vw !important;
    }
    .mgt-sp--235 {
        margin-top: 73.4375vw !important;
    }
    .mgt-sp--240 {
        margin-top: 75vw !important;
    }
    .mgt-sp--245 {
        margin-top: 76.5625vw !important;
    }
    .mgt-sp--250 {
        margin-top: 78.125vw !important;
    }
}

/* ---------------------------------------------
*   margin-bottom
--------------------------------------------- */
.mgb-pc--0 {
    margin-bottom: 0 !important;
}

.mgb-pc--5 {
    margin-bottom: 5px !important;
}

.mgb-pc--10 {
    margin-bottom: 10px !important;
}

.mgb-pc--15 {
    margin-bottom: 15px !important;
}

.mgb-pc--20 {
    margin-bottom: 20px !important;
}

.mgb-pc--25 {
    margin-bottom: 25px !important;
}

.mgb-pc--30 {
    margin-bottom: 30px !important;
}

.mgb-pc--35 {
    margin-bottom: 35px !important;
}

.mgb-pc--40 {
    margin-bottom: 40px !important;
}

.mgb-pc--45 {
    margin-bottom: 45px !important;
}

.mgb-pc--50 {
    margin-bottom: 50px !important;
}

.mgb-pc--55 {
    margin-bottom: 55px !important;
}

.mgb-pc--60 {
    margin-bottom: 60px !important;
}

.mgb-pc--65 {
    margin-bottom: 65px !important;
}

.mgb-pc--70 {
    margin-bottom: 70px !important;
}

.mgb-pc--75 {
    margin-bottom: 75px !important;
}

.mgb-pc--80 {
    margin-bottom: 80px !important;
}

.mgb-pc--85 {
    margin-bottom: 85px !important;
}

.mgb-pc--90 {
    margin-bottom: 90px !important;
}

.mgb-pc--95 {
    margin-bottom: 95px !important;
}

.mgb-pc--100 {
    margin-bottom: 100px !important;
}

.mgb-pc--105 {
    margin-bottom: 105px !important;
}

.mgb-pc--110 {
    margin-bottom: 110px !important;
}

.mgb-pc--115 {
    margin-bottom: 115px !important;
}

.mgb-pc--120 {
    margin-bottom: 120px !important;
}

.mgb-pc--125 {
    margin-bottom: 125px !important;
}

.mgb-pc--130 {
    margin-bottom: 130px !important;
}

.mgb-pc--135 {
    margin-bottom: 135px !important;
}

.mgb-pc--140 {
    margin-bottom: 140px !important;
}

.mgb-pc--145 {
    margin-bottom: 145px !important;
}

.mgb-pc--150 {
    margin-bottom: 150px !important;
}

.mgb-pc--155 {
    margin-bottom: 155px !important;
}

.mgb-pc--160 {
    margin-bottom: 160px !important;
}

.mgb-pc--165 {
    margin-bottom: 165px !important;
}

.mgb-pc--170 {
    margin-bottom: 170px !important;
}

.mgb-pc--175 {
    margin-bottom: 175px !important;
}

.mgb-pc--180 {
    margin-bottom: 180px !important;
}

.mgb-pc--185 {
    margin-bottom: 185px !important;
}

.mgb-pc--190 {
    margin-bottom: 190px !important;
}

.mgb-pc--195 {
    margin-bottom: 195px !important;
}

.mgb-pc--200 {
    margin-bottom: 200px !important;
}

.mgb-pc--205 {
    margin-bottom: 205px !important;
}

.mgb-pc--210 {
    margin-bottom: 210px !important;
}

.mgb-pc--215 {
    margin-bottom: 215px !important;
}

.mgb-pc--220 {
    margin-bottom: 220px !important;
}

.mgb-pc--225 {
    margin-bottom: 225px !important;
}

.mgb-pc--230 {
    margin-bottom: 230px !important;
}

.mgb-pc--235 {
    margin-bottom: 235px !important;
}

.mgb-pc--240 {
    margin-bottom: 240px !important;
}

.mgb-pc--245 {
    margin-bottom: 245px !important;
}

.mgb-pc--250 {
    margin-bottom: 250px !important;
}

@media screen and (max-width: 767px) {
    .mgb-sp--0 {
        margin-bottom: 0 !important;
    }
    .mgb-sp--5 {
        margin-bottom: 1.5625vw !important;
    }
    .mgb-sp--10 {
        margin-bottom: 3.125vw !important;
    }
    .mgb-sp--15 {
        margin-bottom: 4.6875vw !important;
    }
    .mgb-sp--20 {
        margin-bottom: 6.25vw !important;
    }
    .mgb-sp--25 {
        margin-bottom: 7.8125vw !important;
    }
    .mgb-sp--30 {
        margin-bottom: 9.375vw !important;
    }
    .mgb-sp--35 {
        margin-bottom: 10.9375vw !important;
    }
    .mgb-sp--40 {
        margin-bottom: 12.5vw !important;
    }
    .mgb-sp--45 {
        margin-bottom: 14.0625vw !important;
    }
    .mgb-sp--50 {
        margin-bottom: 15.625vw !important;
    }
    .mgb-sp--55 {
        margin-bottom: 17.1875vw !important;
    }
    .mgb-sp--60 {
        margin-bottom: 18.75vw !important;
    }
    .mgb-sp--65 {
        margin-bottom: 20.3125vw !important;
    }
    .mgb-sp--70 {
        margin-bottom: 21.875vw !important;
    }
    .mgb-sp--75 {
        margin-bottom: 23.4375vw !important;
    }
    .mgb-sp--80 {
        margin-bottom: 25vw !important;
    }
    .mgb-sp--85 {
        margin-bottom: 26.5625vw !important;
    }
    .mgb-sp--90 {
        margin-bottom: 28.125vw !important;
    }
    .mgb-sp--95 {
        margin-bottom: 29.6875vw !important;
    }
    .mgb-sp--100 {
        margin-bottom: 31.25vw !important;
    }
    .mgb-sp--105 {
        margin-bottom: 32.8125vw !important;
    }
    .mgb-sp--110 {
        margin-bottom: 34.375vw !important;
    }
    .mgb-sp--115 {
        margin-bottom: 35.9375vw !important;
    }
    .mgb-sp--120 {
        margin-bottom: 37.5vw !important;
    }
    .mgb-sp--125 {
        margin-bottom: 39.0625vw !important;
    }
    .mgb-sp--130 {
        margin-bottom: 40.625vw !important;
    }
    .mgb-sp--135 {
        margin-bottom: 42.1875vw !important;
    }
    .mgb-sp--140 {
        margin-bottom: 43.75vw !important;
    }
    .mgb-sp--145 {
        margin-bottom: 45.3125vw !important;
    }
    .mgb-sp--150 {
        margin-bottom: 46.875vw !important;
    }
    .mgb-sp--155 {
        margin-bottom: 48.4375vw !important;
    }
    .mgb-sp--160 {
        margin-bottom: 50vw !important;
    }
    .mgb-sp--165 {
        margin-bottom: 51.5625vw !important;
    }
    .mgb-sp--170 {
        margin-bottom: 53.125vw !important;
    }
    .mgb-sp--175 {
        margin-bottom: 54.6875vw !important;
    }
    .mgb-sp--180 {
        margin-bottom: 56.25vw !important;
    }
    .mgb-sp--185 {
        margin-bottom: 57.8125vw !important;
    }
    .mgb-sp--190 {
        margin-bottom: 59.375vw !important;
    }
    .mgb-sp--195 {
        margin-bottom: 60.9375vw !important;
    }
    .mgb-sp--200 {
        margin-bottom: 62.5vw !important;
    }
    .mgb-sp--205 {
        margin-bottom: 64.0625vw !important;
    }
    .mgb-sp--210 {
        margin-bottom: 65.625vw !important;
    }
    .mgb-sp--215 {
        margin-bottom: 67.1875vw !important;
    }
    .mgb-sp--220 {
        margin-bottom: 68.75vw !important;
    }
    .mgb-sp--225 {
        margin-bottom: 70.3125vw !important;
    }
    .mgb-sp--230 {
        margin-bottom: 71.875vw !important;
    }
    .mgb-sp--235 {
        margin-bottom: 73.4375vw !important;
    }
    .mgb-sp--240 {
        margin-bottom: 75vw !important;
    }
    .mgb-sp--245 {
        margin-bottom: 76.5625vw !important;
    }
    .mgb-sp--250 {
        margin-bottom: 78.125vw !important;
    }
}
