@charset "UTF-8";
/*
    Template: swell
    Theme Name: SWELL CHILD
    Theme URI: https://swell-theme.com/
    Description: SWELLの子テーマ
    Version: 1.0.0
    Author: LOOS WEB STUDIO
    Author URI: https://loos-web-studio.com/

    License: GNU General Public License
    License URI: http://www.gnu.org/licenses/gpl.html
*/


/* 共通 ---------------------------------------- */
/* カテゴリーアイコンを非表示 */
.wp-block-categories-list>li>a:before,
.icon-folder:before,
.c-categoryList:before {
    content: none;
}

/* ボタン */
.is-style-more_btn a:hover {
    background-color: rgba(3, 2, 2, 0.05);
    box-shadow: 0 0 0 1px #dcdcdc;
    color: inherit;
}

/* ボタン動き */
.updown {
    -webkit-animation-name: updown1;
    animation-name: updown1;
    -webkit-animation-delay: 0s;
    animation-delay: 0s;
    -webkit-animation-duration: 3s;
    animation-duration: 3s;
    -webkit-animation-timing-function: ease-in-out;
    animation-timing-function: ease-in-out;
    -webkit-animation-iteration-count: infinite;
    animation-iteration-count: infinite
}

@-webkit-keyframes updown1 {
    0% {
        -webkit-transform: translateY(0);
        transform: translateY(0)
    }

    50% {
        -webkit-transform: translateY(-20px);
        transform: translateY(-20px)
    }

    100% {
        -webkit-transform: translateY(0);
        transform: translateY(0)
    }
}

@keyframes updown1 {
    0% {
        -webkit-transform: translateY(0);
        transform: translateY(0)
    }

    50% {
        -webkit-transform: translateY(-20px);
        transform: translateY(-20px)
    }

    100% {
        -webkit-transform: translateY(0);
        transform: translateY(0)
    }
}

/* ヘッダー ---------------------------------------- */
.l-fixHeader__logo {
    padding: 0;
}

.l-fixHeader .c-headLogo {
    height: 80px;
}

.w-header__inner {
    display: flex;
}

.w-header__inner .w-header__item a {
    transition: all 0.25s;
}

.w-header__inner .w-header__item a:hover {
    opacity: 0.7;
}

.w-header__inner .w-header__item a img {
    width: 103px;
    vertical-align: bottom;
}

@media (min-width: 960px) {
    .-series .l-header__logo {
        padding: 0;
    }
}

@media not all and (min-width: 960px) {
    .-img .c-headLogo__link {
        padding: 4px 0;
    }
}

/* スマホ開閉メニュー ---------------------------------------- */
.c-widget__title.-spmenu {
    display: none;
}

.c-gnav .sub-menu a:before,
.c-listMenu a:before {
    content: none;
}

.p-spMenu__bottom #media_image-7.c-widget {
    margin-top: 1em;
}

/* サイドバー ---------------------------------------- */
.l-sidebar .wp-block-heading {
    background-color: #B5A071;
    color: #fff;
    font-weight: 500;
    font-size: 1.125rem;
    text-align: center;
    padding: 1em;
}

.wp-block-latest-posts:not(.is-grid) {
    border-top: none;
}

.wp-block-latest-posts:not(.is-grid) li {
    padding: 0;
}

.wp-block-latest-posts a {
    color: #333;
    display: block;
    padding: 1em 0.5em;
    transition: all 0.25s;
}

.wp-block-categories-list>li>a {
    padding: 1em 0.5em;
}

.wp-block-latest-posts a:hover,
.wp-block-categories-list>li>a:hover {
    padding-left: 1em;
    padding-right: 0;
    background-color: unset;
}

.l-sidebar #media_image-3.c-widget {
    margin-top: 1em;
}

.l-sidebar #media_image-4.c-widget {
    margin-top: 3.5em;
    text-align: center;
}

.l-sidebar #text-2.c-widget {
    font-weight: 500;
    font-size: 1.5rem;
    text-align: center;
    margin-top: 0.5em;
}

.l-sidebar #text-3.c-widget {
    display: flex;
    justify-content: center;
    margin-top: 1em;
}

/* 固定フッター（SP） ---------------------------------------- */
#fix_bottom_menu {
    bottom: calc(-29vw - 20px);
    box-shadow: unset;
}

#fix_bottom_menu:before {
    content: none;
}

#fix_bottom_menu .menu_list {
    height: fit-content;
}

#fix_bottom_menu span {
    margin-top: unset;
}

#fix_bottom_menu .menu-item i {
    display: none;
}

/* フッター ---------------------------------------- */
.footer-logo {
    display: flex;
    align-items: center;
}

.footer-logo img {
    width: 86px;
}

.footer-logo p {
    font-weight: 500;
    font-size: 1.5rem;
    margin-left: 1em;
}

@media (min-width: 1080px) {
    .w-footer__box:first-child {
        flex: unset;
        flex-basis: fit-content;
    }

    .w-footer__box:last-child {
        display: flex;
        justify-content: end;
        padding-top: 2em;
    }

    .w-footer__box .menu {
        display: flex;
        flex-wrap: wrap;
    }

    .w-footer__box .menu-item a {
        border-right: 1px solid;
        border-bottom: none;
        padding: 0.25em 1em;
    }

    .w-footer__box .menu-item:first-child a {
        border-left: 1px solid;
    }

    .w-footer__box .menu-item a:hover {
        background-color: unset;
        text-decoration: underline;
    }
}

@media not all and (min-width: 960px) {
    .w-footer__box {
        padding-left: 1.5em;
        padding-right: 1.5em;
    }

    .w-footer__box .menu-item a {
        padding: 0.75em 0;
    }
}

/* トップページ ---------------------------------------- */
/* メインビジュアル */
.p-mainVisual__inner {
    height: unset;
    display: flex;
    justify-content: center;
}

@media (min-width: 1920px) {
    .p-mainVisual__inner img {
        max-width: 100%;
    }
}

@media (max-width: 1919px) and (min-width: 1200px) {
    .p-mainVisual__inner img {
        width: 1920px;
        max-width: unset;
    }
}

@media (max-width: 1199px) and (min-width: 640px) {
    .p-mainVisual__inner img {
        width: 160vw;
        max-width: unset;
    }
}

@media (max-width: 639px) {
    .p-mainVisual__inner img {
        vertical-align: bottom;
    }
}

/* コンテンツ */
.h2-sub p {
    font-family: "Bodoni Moda", serif;
    font-weight: 700;
}

.h2-sub .decoration {
    width: 45px;
}

.h2-sub .decoration img {
    vertical-align: middle;
}

.reason-ttl .wp-block-image.sp_only {
    width: 106%;
    margin-left: -3%;
}

.before-after-item {
    padding-top: 0;
}

.before-after-item-head {
    position: relative;
    top: -1rem;
    width: 116%;
    margin-left: -8%;
}

.flow-item-head .u-fz-xl {
    font-family: "fot-tsukuardgothic-std", sans-serif;
    font-weight: 700;
}

.access-table.wp-block-table td,
.access-table.wp-block-table th {
    font-weight: 400;
    border: none;
    border-bottom: 1px solid #B6A071;
}

.access-map {
    position: relative;
    width: 100%;
    height: 0;
    padding-top: 56.25%;
}

.access-map iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

@media (min-width: 960px) {

    .reason-img,
    .reason-text,
    .why-img,
    .why-text {
        width: 76%;
        margin-inline: auto;
    }

    .before-after-ttl {
        width: 84%;
        margin-inline: auto;
    }

    .before-after-img {
        width: 85%;
        margin-inline: auto;
    }

    .worry-text {
        width: 90%;
        margin-inline: auto;
    }

    .access-map {
        position: relative;
        width: 100%;
        height: 0;
        padding-top: 41.8%;
    }
}

@media not all and (min-width: 960px) {
    .top #content {
        padding-top: 3em;
    }

    .profile-img {
        width: 76%;
        margin-inline: auto;
    }
}