@charset "UTF-8";
:root {
    --elBlack: #11171A;
    --elDarkGray: #6E797D;
    --elLightGray: #DCDFE0;
    --elWhite: #FFFFFF;
    --elAccentColour: #8F8469;
    --elAssortColour: #F7F5F2;
    --elFuneral: #9B88BD;
    --elGrave: #83C7C5;
    --elColumn: #C3DB60;
    --elELifeClean: #73A5F0;
    --elTextFuneral: #7A62A3;
    --elTextGrave: #5FB8B5;
    --elELifeCleanLogo: #5590EB;
    --elELifeCleanList: #8FBCFF;
    --elELifeCleanSpBorder: #E5F0FF;
    --elELifeCleanBk: #F5F9FF;
    --elELifeCleanOreng: #FFEED1;
    --elDarkBlue: #3B6CB8;
    --elLineGreen: #06C755;
    --elAccentOrange: #EB8613;
    --elLightBlue: #F5F9FF;
    --kiwiMaru: 'Kiwi Maru', serif;
    --ubuntu: 'Ubuntu', sans-serif;
    --contentsWidth: 335rem;
    --panelListMb: 15rem;
}
html {
    font-family: "游ゴシック", "Yu Gothic", -apple-system, BlinkMacSystemFont, Roboto, "Segoe UI", "Helvetica Neue", HelveticaNeue, YuGothic, "Yu Gothic Medium", "Yu Gothic", Verdana, Meiryo, sans-serif;
    font-size: calc(100vw / 375);
    color: var(--elBlack);
}
.pc-br{
    display: none;
}
body{
    padding-top: 60rem;
    -webkit-text-size-adjust: 100%;
}
@media screen and (min-width: 600px) {
    :root {
    --contentsWidth: 960rem;
    --pcMinWidth: 1080rem;
    --pcMaxWidth: 1440rem;
    --panelListMb: 16rem;
    }    
    html {
        font-size: 1px;
    }
    body {
        min-width: 1080px;
    }
    .sp-br{
        display: none;
    }
    .pc-br{
        display: inline-block;
    }
    body{
        padding-top: 106rem;
    }    
}


/* ---------- 汎用・ユーティリティクラス ---------- */
.block-1{
    margin-bottom: 50rem;
}
.block-2{
    margin-bottom: 24rem;
}
.block-1:last-of-type{
    margin-bottom: 0;
}
.block-2:last-of-type{
    margin-bottom: 0;
}
@media screen and (min-width: 600px) {
    .block-1{
        margin-bottom: 60rem;
    }
    .block-2{
        margin-bottom: 40rem;
    }
}

.cancel-scroll {
    overflow-y: hidden;
    min-height: 100vh;
    position: fixed;
    width: 100%; /* 横幅を固定してレイアウトの変更を防ぐ */
}
.remove-contents{
    opacity: 0;
    transition: all 0.4s ease;
}

.contents-wrap{
    width: 335rem;
    flex-grow: 1;
    margin: 0 auto;
}
/* 1カラムの場合のコンテンツ幅を決定させるラッパー */
.single-column-wrap{
    width: var(--contentsWidth);
    margin: 0 auto;
}
.single-column-wrap--wide{
    max-width: 1140px;
    min-width: var(--contentsWidth);
    margin: 0 auto;
}
@media screen and (min-width: 600px) {
    .contents-wrap{
        width: fit-content;
    }
}


.common-link{
    color: var(--elBlack);
}
.text-link{
    display: block;
    color: var(--elAccentColour);
    font-size: 16rem;
    line-height: 1.5em;
    text-decoration: underline;
}
.top-text-link{
    display: block;
    width: fit-content;
    margin-left: auto;
}
.top-text-link:hover{
    opacity: 0.5;
}
.top-text-link__text{
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--elAccentColour);
    font-size: 16rem;
    line-height: 1.2em;
    letter-spacing: 0.02em;
    font-weight: bold;
}
.top-text-link__text::after{
    display: block;
    width: 7rem;
    height: 12rem;
    background-image: url(../image/icons/right-arrow.svg);
    content: '';
    background-size: contain;
    background-repeat: no-repeat;
    flex-shrink: 0;
    margin-left: 10rem;
}

/* 共通パーツ */
/* 共通パーツ: 見出し */
/* h1 */
.section-title-h1-area{
    font-size: 32rem;
    font-weight: bold;
    line-height: 130%;
    letter-spacing: 0.2em;
    width: fit-content;
}
/* h2 */
.section-title-h2-area{
    font-size: 32rem;
    font-weight: bold;
    line-height: 130%;
    letter-spacing: 0.2em;
    width: fit-content;
}
/* h3 */
.section-title-h3-area{
    font-size: 32rem;
    font-weight: bold;
    line-height: 120%;
    letter-spacing: 0.05em;
    width: fit-content;
}
/* h4 */
.section-title-h4-area{
    display: flex;
    align-items: flex-start;
    font-size: 22rem;
    font-weight: bold;
    letter-spacing: 0.05em;
    width: 100%;
    margin-bottom: 16rem;
}
.section-title-h4-area::before{
    position: relative;
    display: inline-block;
    top: -3rem;
    content: '';
    background-color: var(--elAccentColour);
    flex-shrink: 0;
    width: 5rem;
    height: 28rem;
    margin-right: 16rem;
}
@media screen and (min-width: 600px) {
    /* h1 */
    .section-title-h1-area{
        font-size: 36rem;
        line-height: 150%;
    }
    /* h2 */
    .section-title-h2-area{
        font-size: 48rem;
        line-height: 100%;
    }
    /* h4 */
    .section-title-h4-area{
        margin-bottom: 20rem;
    }
}


/* テキスト */
.text-std{
    font-size: 16rem;
    line-height: 180%;
}
/* 注釈 */
.text-annotation{
    color: var(--elDarkGray);
    font-size: 16rem;
    line-height: 180%;
}
/* ナンバー */
.number{
    font-family: var(--ubuntu);
    font-size: 40rem;
    letter-spacing: 0.02em;
}


/* ボタン */
.common-btn__area{
    display: flex;
    justify-content: center;
}
.common-btn{
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--elWhite);
    background-color: var(--elAccentColour);
    padding: 0 20rem;
    width: fit-content;
}
.common-btn:hover{
    color: var(--elAccentColour);
    background-color: transparent;
    border: 2rem solid var(--elAccentColour);
    padding: 0 18rem;
}
.common-btn-text{
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: bold;
    line-height: 120%;
    letter-spacing: 0.02em;
}
.common-btn::after{
    display: block;
    content: '';
    background-image: url(../image/icons/button-arrow.svg);
    background-size:  contain;
    background-repeat: no-repeat;
    width: 8rem;
    height: 8rem;
    transform: rotate(45deg);
}
.common-btn__left::before{
    display: block;
    content: '';
    background-image: url(../image/icons/button-arrow.svg);
    background-size:  contain;
    background-repeat: no-repeat;
    width: 8rem;
    height: 8rem;
    transform: rotate(-135deg);
}
.common-btn__left::after{
    display: none;
}
.common-btn:hover::after{
    background-image: url(../image/icons/button-arrow-hover.svg);
}
.common-btn__left:hover::before{
    background-image: url(../image/icons/button-arrow-hover.svg);
}
.common-btn__arrow-display-none::after{
    display: none;
}
/* Sサイズ */
.common-btn__s{
    height: 32rem;
    border-radius: 16rem;
}
.common-btn__s-text{
    font-size: 14rem;
    width: fit-content;
    width: 149rem;
}
/* Mサイズ */
.common-btn__m{
    height: 52rem;
    border-radius: 26rem;
}
.common-btn__m-text{
    font-size: 16rem;
    width: fit-content;
    width: 189rem;
}
/* Lサイズ */
.common-btn__l{
    height: 60rem;
    border-radius: 30rem;
}
.common-btn__l-text{
    font-size: 25rem;
    width: fit-content;
    min-width: 260rem;
    height: 56rem;
}
/* 戻る */
.common-btn__back{
    height: 52rem;
    border-radius: 26rem;
}
.common-btn__back-text{
    font-size: 16rem;
    width: fit-content;
    min-width: 189rem;
}
/* map */
.common-btn__map{
    height: 24rem;
    border-radius: 12rem;
    padding: 0 12rem 2rem;
}
.common-btn__map:hover{
    padding: 0 10rem;
}
.common-btn__map::after{
    display: none;
}
.common-btn__map-text{
    font-size: 16rem;
    font-weight: normal;
    width: fit-content;
}
/* お問い合わせ */
.common-btn__contact{
    position: relative;
    padding: 0 12rem 0 0;
    width: 240rem;
    height: 60rem;
    border-radius: 5rem
}
.common-btn__contact::after{
    position: absolute;
    right: 12rem;
}
.common-btn__contact:hover{
    padding: 0 10rem 0 0;
    background-color: var(--elWhite);
}
.common-btn__contact:hover::after{
    background-image: url(../image/icons/button-arrow-hover.svg);
    right: 10rem;
}
.common-btn__contact:hover .common-btn__contact-text::before{
    background-image: url(../image/icons/mail-icon.svg);
}
.common-btn__contact-text{
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 18rem;
    font-weight: bold;
    width: fit-content;
}
.common-btn__contact-text::before{
    display: block;
    content: '';
    background-image: url(../image/icons/mail-icon-white.svg);
    background-size:  contain;
    background-repeat: no-repeat;
    width: 24rem;
    height: 24rem;
    flex-shrink: 0;
    flex-grow: 1;
    margin-right: 6rem;
}

@media screen and (min-width: 600px) {
    /* Sサイズ */
    .common-btn__s-text{
        width: 109rem;
    }
    /* お問い合わせ */
    .common-btn__contact{
        width: 196rem;
    }
    .common-btn__map{
        padding: 0 12rem 3rem;
    }
}
/* ボタン SP中央、PC右寄せの定義 */
.common-btn__position{
    margin: 0 auto;
}
@media screen and (min-width: 600px) {
    .common-btn__position{
        margin: 0 0 0 auto;
    }
}


/* 共通パーツ: ページタイトル */
.page-title-block{
    background-size: cover;
    width: 100%;
}
/* ページタイトル(M) */
.page-title-m__wrap{
    display: flex;
    align-items: center;
    justify-content: center;
    height: 160rem;
} 
.page-title-m__text{
    width: fit-content;
    padding: 0 20rem;
    font-size: 32rem;
    font-weight: bold;
    color: var(--elWhite);
    line-height: 130%;
    letter-spacing: 0.2em;
}
/* ページタイトル(S) */
.page-title-s__wrap{
    display: flex;
    align-items: center;
    justify-content: center;
    height: 160rem;
} 
.page-title-s__text{
    width: fit-content;
    padding: 0 20rem;
    font-size: 32rem;
    font-weight: bold;
    color: var(--elWhite);
    line-height: 120%;
    letter-spacing: 0.2em;
}
@media screen and (min-width: 600px) {
    .page-title-block{
        max-width: 1440rem;
        min-width: 1080rem;
        margin: 0 auto;
        background-position: center;
    }
    /* ページタイトル(M) */
    .page-title-m__wrap{
        max-width: 1440rem;
        min-width: 1080rem;
        justify-content: flex-start;
        height: 300rem;
    }    
    .page-title-m__text{
        padding: 0 150rem;
        font-size: 48rem;
        line-height: 100%;
    }
    /* ページタイトル(S) */
    .page-title-s__wrap{
        justify-content: flex-start;
        height: 200rem;
    }  
    .page-title-s__text{
        padding: 0 150rem;
        font-size: 48rem;
        line-height: 100%;
    }    
}


/* 絞り込みメニュー */
/* 表示しない標準UI */
.input-ui{
    display: none;
}
.search-menu{
    display: flex;
    flex-direction: column;
    align-items: center;
    font-size: 16rem;
    background-color: var(--elAssortColour);
    padding:  0 0 24rem;
    width: 100vw;
    margin-right: calc(50% - 50vw);
    margin-left: calc(50% - 50vw);
    margin-bottom: 30rem;
}
.search-mane__from{
    width: 100%;
}
.search-menu__block{
    width: 100%;
    border-bottom: 1px dashed var(--elLightGray);
    padding: 15rem 20rem 20rem;
}
.search-menu__block--first-padding{
    padding: 15rem 20rem 20rem;
}
.search-menu__block--border{
    border-bottom: 1px solid var(--elAccentColour);
}
.search-menu__block--sp-display-none{
    display: none;
}
.search-menu__block--pc-display-none{
    display: inline-block;
    border-bottom: 1px solid var(--elAccentColour);
    margin-bottom: 24rem;
}
.search-menu__title{
    font-weight: bold;
    margin-bottom: 10rem;
}
.search-menu__area-text-item{
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}
.search-menu__btn{
    margin: 0 auto;
}
.search-menu__list{
    display: flex;
    flex-wrap: wrap;
    width: 100%;
}
.search-menu__item{
    display: none;
}
.search-menu__item:last-of-type{
    margin-right: 0;
}
.search-menu__parts{
    position:relative;
    display: flex;
    align-items: center;
    line-height: 120%;
}
.search-menu__parts::before{
    display: block;
    content: '';
    flex-shrink: 0;
    width: 20rem;
    height: 20rem;
    border-radius: 5rem;
    border: 1px solid var(--elAccentColour);
    margin-right: 8rem;
}
.search-menu__input:checked + .search-menu__parts::after{
    content: "";
    display: block;
    background-image: url(../image/icons/checkbox-checked-icon.svg);
    background-size: contain;
    background-repeat: no-repeat;
    position: absolute;
    left: 0;
    width: 20rem;
    height: 20rem;
}
@media screen and (min-width: 600px) {
    .search-menu{
        border-radius: 20rem;
        padding:  34rem 60rem 34rem;
        min-width: var(--contentsWidth);
        max-width: 1000rem;
        margin: 0 auto 40rem;
    }
    .search-menu__block{
        display: flex;
        align-items: center;
        padding: 27rem 0;
    }
    .search-menu__block--first-padding{
        padding: 0 0 27rem;
    }    
    .search-menu__block--sp-display-none{
        display: flex;
    }
    .search-menu__block--pc-display-none{
        display: none;
    }
    .search-menu__block--pc-last{
        border-bottom: 1px solid var(--elAccentColour);
        margin-bottom: 16rem;
    }
    .search-menu__area-block{
        justify-content: space-between;
    }
    .search-menu__area-block-wrap{
        display: flex;
        align-items: center;
        width: calc(100% - (50rem + 157rem));
    }
    .search-menu__title{
        font-size: 18rem;
        width: 150rem;
        flex-shrink: 0;
        margin: 0 30rem 0 0;
    }
    .search-menu__btn{
        margin: 0;
    }
    .search-menu__item{
        display: block;
        margin-right: 30rem;
        margin-bottom: 16rem;
    }
    .search-menu__btn-none{
        display: none;
    }
}

/* エリア一覧 */
.search-menu__area-selection{
    position: relative;
    font-size: 16rem;
    background-color: var(--elWhite);
    width: 335rem;
    border-radius: 20rem;
    padding: 0 0 30rem;
    margin: 0 auto;
}
.search-menu__area-selection--details{
    background-color: var(--elAssortColour);
}
.search-menu__area-selection-title{
    display: flex;
    align-items: center;
    font-size: 18rem;
    font-weight: bold;
    color: var(--elAccentColour);
    height: 60rem;
    padding: 0 20rem;
    border-bottom: 1px solid var(--elAccentColour);
}
.search-menu__area-title{
    display: flex;
    align-items: center;
    font-weight: bold;
    color: var(--elAccentColour);
    background-color: rgba(220, 223, 224, .2);
    height: 40rem;
    padding: 0 20rem;
}
.search-menu__area-title--details{
    color: var(--elBlack);
    background-color: rgba(143, 132, 105, .1);
}
.search-menu__area-list{
    display: flex;
    flex-wrap: wrap;
    padding: 0 20rem;
}
.search-menu__area-item{
    display: flex;
    flex-direction: column;
    justify-content: center;
    width: calc(100% / 2);
    border-bottom: 1px dashed var(--elLightGray);
    padding: 16rem 8rem 16rem 0;
}
.search-menu__area-btn{
    border-top: 1px solid var(--elAccentColour);
    padding-top: 20rem;
}
.search-menu__area-btn-link{
    width: fit-content;
    margin: 0 auto;
}
.search-menu__area-btn-arrow-display-none::after{
    display: none;
}
@media screen and (min-width: 600px) {
    .search-menu__area-selection{
        width: 720rem;
    }
    .search-menu__area-selection--details-pc{
        display: none;
    }
    .search-menu__area-selection-title{
        display: flex;
        align-items: center;
        font-size: 18rem;
        font-weight: bold;
        color: var(--elAccentColour);
        height: 60rem;
        padding: 0 20rem;
    }
    .search-menu__area-list{
        display: flex;
        flex-wrap: wrap;
        padding: 24rem 20rem 30rem;
    }
    .search-menu__area-item{
        width: calc(100% / 4);
        border-bottom: none;
        padding: 0;
        margin-bottom: 16rem;
    }
    .search-menu__area-btn-arrow-display-none::after{
        display: block;
    }
}

/* その他の条件指定 */
.other__text{
    display: none;
}
@media screen and (min-width: 600px) {
    .other__content{
        height: fit-content;
        transition: 0.4s all ease;
    }
    .other__text{
        font-size: 15rem;
        color: var(--elAccentColour);
        font-weight: bold;
        display: flex;
        align-items: center;
        justify-content: center;
        padding: 19rem 0;
    }
    .other__text::before{
        content: '';
        display: block;
        background-image: url(../image/icons/button-arrow-hover.svg);
        background-size:  contain;
        background-repeat: no-repeat;
        width: 8rem;
        height: 8rem;
        margin-right: 8rem;
        margin-bottom: 4rem;
        transform: rotate(0.38turn);
    }
    .other__text:hover{
        cursor: pointer;
    }
}

/* モーダル */
.cancel-scroll{
    overflow-y: hidden;
    min-height: 100vh;
}
.area-modal{
    display: none;
    position: fixed;
    top: 80rem;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 2;
    padding-bottom: 100rem;
}
.modal-scroll{
    height: 100%;
    overflow-x: hidden;
    overflow-y: scroll;
}
.modal-not-scroll{
    height: fit-content;
}
.detail-modal{
    display: none;
    position: fixed;
    top: 80rem;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 1;
    padding-bottom: 100rem;
}
.detail-modal-not-scroll{
    position: relative;
    top: 0;
    padding: 0;
}
.modal-close{
    display: block;
    position: absolute;
    top: -20rem;
    right: 10rem;
    background-image: url(../image/icons/close-btn-icon.svg);
    background-size: contain;
    background-repeat: no-repeat;
    width: 48rem;
    height: 48rem;
    z-index: 2;
}
@media screen and (min-width: 600px) {
    .area-modal{
        position: relative;
        width: fit-content;
        height: fit-content;
        top: 0;
        padding: 0;
    }
    .modal-scroll{
        overflow: visible;
    }
    .modal-close{
        top: -30rem;
        right: -30rem;
        width: 60rem;
        height: 60rem;
    }
}
.screen-black{
    position: fixed;
    top: 0;
    left: 0;
    background-color: rgba(0, 0, 0, .4);
    z-index: 1;
    min-height: 100vh;
    min-width: 100vw;
    display: none;
}
.screen-black--visible{
    display: flex;
    align-items: center;
    justify-content: center;
}
@media screen and (min-width: 600px) {
    .screen-black--visible{
        display: flex;
        align-items: center;
        justify-content: center;
    }
}

/* 表示件数周り */
.number-area{
    width: var(--contentsWidth);
    padding: 0 0 10rem 0;
    margin: 0 auto 30rem;
    font-size: 16rem;
    border-bottom: 1px solid var(--elAccentColour);
}
.number-area--margin{
    margin: 0 auto 150rem;
}
.number-text{
    color: var(--elAccentColour);
    font-family: var(--ubuntu);
    font-weight: 300;
    font-size: 40rem;
    margin-right: 5rem;
}
@media screen and (min-width: 600px) {
    .number-area{
        margin: 0 auto 40rem;
    }
}


/* パンクズメニュー */
.breadcrumbs-area{
    width: 335rem;
    margin: 20rem auto 0;
}
.breadcrumbs-list{
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    width: 335rem;
    margin: 0 auto;
}
.breadcrumbslist--page-topics{
    margin-bottom: 30rem;
}
.breadcrumbslist--single-topics{
    margin-bottom: 33rem;
}
.breadcrumbslist--page-funeral-grave{
    margin-bottom: 41rem;
}
.breadcrumbslist--single-funeral-grave{
    margin-bottom: 43rem;
}
.breadcrumbslist--page-privacypolicy{
    margin-bottom: 46rem;
}
.breadcrumbslist--elife-clean{
    margin-bottom: 41rem;
}
.breadcrumbslist--contact{
    margin-bottom: 51rem;
}
.breadcrumbs-list__item{
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 12rem;
    padding: 5rem 0;
    margin-right: 8rem;
}
.breadcrumbs__link{
    color: var(--elBlack);
}
.breadcrumbs-list__item:last-of-type{
    color: var(--elAccentColour);
    font-weight: bold;
    line-height: 1.2em;
}
.breadcrumbs-list__item--elife-clean:last-of-type{
    color: var(--elELifeCleanLogo);
}
.breadcrumbs-list__item::after{
    display: block;
    content: '';
    background-image: url(../image/icons/button-arrow-hover.svg);
    background-size: cover;
    background-repeat: no-repeat;
    width: 8rem;
    height: 8rem;
    margin-left: 8rem;
    transform: rotate(45deg);
    z-index: -1;
}
.breadcrumbs-list__item--elife-clean::after{
    background-image: url(../image/icons/blue-button-arrow.svg);
}
.breadcrumbs-list__item:last-of-type::after{
    display: none;
}
@media screen and (min-width: 600px) {
    .breadcrumbs-area{
        max-width: 1080rem;
        min-width: var(--contentsWidth);
    }
    .breadcrumbs-list{
        width: 100%;
        margin: 0;
    }
    .breadcrumbslist--page-topics{
        margin-bottom: 50rem;
    }
    .breadcrumbslist--single-topics{
        margin-bottom: 71rem;
    }
    .breadcrumbslist--page-funeral-grave{
        margin-bottom: 21rem;
    }
    .breadcrumbslist--single-funeral-grave{
        margin-bottom: 50rem;
    }
    .breadcrumbslist--page-privacypolicy{
        margin-bottom: 76rem;
    }
    .breadcrumbslist--elife-clean{
        margin-bottom: 86rem;
    }
    .breadcrumbslist--contact{
        margin-bottom: 66rem;
    }
}


/* カテゴリー */
.category__list{
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    width: 100%;
}
.category__item{
    display: flex;
    align-items: center;
    font-size: 16rem;
    letter-spacing: 0.02em;
    height: 24rem;
    margin-bottom: 5rem;
}
.category__text{
    display: flex;
    align-items: center;
    height: 24rem;
    padding: 0 12rem;
}
.category__text:hover{
    cursor: pointer;
    opacity: 0.5;
}
.category__item::after{
    display: block;
    content: '';
    background-color: var(--elLightGray);
    width: 1rem;
    height: 24rem;
    margin: 0 4rem;
}
.category__item:last-of-type::after{
    display: none;
}
.category__text--current{
    color: var(--elWhite);
    background-color: var(--elAccentColour);
    border-radius: 5rem;
}
@media screen and (min-width: 600px) {
    .category__item{
        font-size: 18rem;
        height: 32rem;
    }
    .category__text{
        height: 32rem;
        padding: 0 12rem;
    }
    .category__item::after{
        height: 32rem;
        margin: 0 12rem;
    }
}


/* 検索フォーム */
.searchform{
    width: 335rem;
}
.searchform__group{
    position: relative;
    display: flex;
    align-items: center;
}
.searchform__input{
    color: var(--elDarkGray);
    font-size: 16rem;
    width: 335rem;
    height: 40rem;
    border: none;
    border: 1rem var(--elAccentColour) solid;
    border-radius: 5rem;
    padding: 0 12rem 0 32rem;
}
.searchform__btn{
    display: flex;
    align-items: center;
    justify-content: center;
}
.searchform__submit{
    position: absolute;
    left: 0;
    border: none;
    background-image: url(../image/icons/search-icon.svg);
    background-position: center;
    background-repeat: no-repeat;
    background-color: transparent;
    width: 10rem;
    height: 14.3rem;
    cursor: pointer;
    -webkit-appearance: none;

    padding: 0;
    width: 32rem;
    height: 40rem;
}
.searchform__submit:hover{
    background-color: #6E96DF;
}
@media screen and (min-width: 600px), print{
    .searchform{
        width: 480rem;
    }
    .searchform__input{
        width: 480rem;
        padding: 0 18rem 0 32rem;
    }
}


/* ページネーション */
.pagination-list{
    display: flex;
    align-items: center;
    justify-content: center;
}
.pagination-list__item{
    margin-right: 10rem;
}
.pagination-list__item:last-of-type{
    margin-right: 0;
}
.next::after{
    content: '';
    display: block;
    background-image: url(../image/icons/button-arrow-hover.svg);
    background-size: contain;
    background-repeat: no-repeat;
    width: 8rem;
    height: 8rem;
    transform: rotate(0.125turn);
}
.prev::after{
    content: '';
    display: block;
    background-image: url(../image/icons/button-arrow-hover.svg);
    background-size: contain;
    background-repeat: no-repeat;
    width: 8rem;
    height: 8rem;
    transform: rotate(0.625turn);
}
.page-numbers:hover{
    border: 1rem solid var(--elAccentColour);
}
.page-numbers{
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--elAccentColour);
    font-size: 16rem;
    font-weight: 300;
    width: 40rem;
    height: 40rem;
    border-radius: 5rem;
}
.current{
    font-weight: bold;
    background-color: var(--elAssortColour);
}
.pagination-list__link.next{
    margin-right: 0;
}
.pagination{
    margin-bottom: 30rem;
}
.pagination:last-of-type{
    margin-bottom: 0rem;
    margin-top: 40rem;
}

/* カードリスト */
/* 1-1 */
.card-1-1-search__img{
    width: 305rem;
}
/* 1-3 */
.card-1-3-column__item{
    width: 335rem;
    border-radius: 20rem;
    box-shadow: 5rem 10rem 15rem rgba(0, 0, 0, .15);
    margin-bottom: 20rem;
}
.card-1-3-column__item:hover{
    opacity: 0.5;
    transition: .2s;
    box-shadow: 8rem 13rem 15rem rgba(0, 0, 0, .3);
}
.card-1-3-column__img{
    display: block;
    width: 335rem;
    height: 188rem;
    border-radius: 20rem 20rem 0 0;
    object-fit: cover;
}   
.card-1-3-column__data-area{
    position: relative;
}
.card-1-3-column__tag{
    position: absolute;
    right: 0;
    color: var(--elWhite);
    font-family: var(--kiwiMaru);
    font-weight: 300;
    font-size: 14rem;
    background-color: var(--elFuneral);
    border-bottom-left-radius: 8rem;
    width: fit-content;
    padding: 8rem 10rem;
}
.card-1-3-column__text-area{
    padding: 20rem;
    color: var(--elBlack);
}
.card-1-3-column__date{
    color: var(--elDarkGray);
    font-size: 14rem;
    margin-bottom: 8rem;
}
.card-1-3-column__text{
    font-size: 17rem;
    font-weight: bold;
    line-height: 140%;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 6;
    overflow: hidden;
}
@media screen and (min-width: 600px) {
    .card-1-3-column__list{
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
    }
    .card-1-3-column__item{
        width: calc((100% - 21rem) / 2);
        max-width: 365rem;
        border-radius: 20rem;
        box-shadow: 5rem 10rem 15rem rgba(0, 0, 0, .15);
    }
    .card-1-3-column__img{
        width: 100%;
        height: 205rem;
    }   
    .card-1-3-column__text-area{
        padding: 25rem 20rem;
    }
}


/* 関連リンク */
.relation{
    background-color: var(--elAssortColour);
    padding: 50rem 0 50rem 0;
}
.relation__wrapper{
    width: 335rem;
    margin: 0 auto;
}
.relation-list{
    display: flex;
    flex-direction: column;
}
.relation-item{
    width: 100%;
    border-radius: 20rem;
    box-shadow: 2rem 5rem 15rem rgba(0, 0, 0, 0.15);
    margin-bottom: 20rem;
    background-color: #FFFFFF;
}
.relation-item:hover{
    opacity: 0.5;
    transition: .2s;
    box-shadow: 5rem 8rem 15rem rgba(0, 0, 0, .3);
}
.relation-item:last-of-type{
    margin-bottom: 0rem;
}
.relation-link{
    color: var(--elBlack);
}
.relation-img{
    width: 100%;
    height: 172rem;
    object-fit: cover;
    display: block;
    border-radius: 20rem 20rem 0 0;
}
.relation-date{
    padding: 20rem 20rem 30rem 20rem;
    display: flex;
    flex-direction: column;
    flex-grow: 1;
}
.relation-date__title{
    font-size: 20rem;
    font-weight: bold;
    margin-bottom: 8rem;
}
.relation-date__acsess{
    font-size: 14rem;
    line-height: 16.8rem;
    width: 100%;
    display: flex;
    position: relative;
    margin-bottom: 4rem;
}
.relation-date__acsess::before{
    content: '';
    display: block;
    background-image: url(../image/icons/address-icon.svg);
    background-position: center;
    background-size: cover;
    width: 10.83rem;
    height: 15rem;
    margin-right: 10rem;
    margin-left: 4.17rem;
    top: 2.5rem;
    flex-shrink: 0;
}
.relation-date__adress{
    margin-bottom: 0rem;
}
.relation-date__adress::before{
    background-image: url(../image/icons/access-icon.svg);
    width: 16.67rem;
    height: 16.09rem;
    margin-right: 6.67rem;
    margin-left: 1.67rem;
    top: 1.64rem;
}
@media screen and (min-width: 600px) {
    .relation{
        padding: 80rem 60rem 80rem 60rem;
    }
    .relation__wrapper{
        width: 960rem;
    }
    .relation-list{
        flex-direction: row;
    }
    .relation-item{
        width: 306rem;
        margin-right: 21rem;
        margin-bottom: 0;
    }
    .relation-item:last-of-type{
        margin-right: 0;
    }
}

/* タグ */
.common-tag-list{
    display: flex;
    flex-wrap: wrap;
    width: 100%;
}
/* お葬式・お墓 シングルページタグ */
.sgl-common-tag{
    display: flex;
    align-items: center;
    justify-content: center;
    width: fit-content;
    height: 37rem;
    padding: 0 20rem;
    border-radius: 5rem;
    font-size: 18rem;
    font-weight: bold;
    line-height: 1.5em;
    letter-spacing: 0.02em;
    margin-right: 10rem;
    margin-bottom: 12rem;
}
.sgl-common-tag:last-of-type{
    margin-right: 0;
}
.sgl-common-tag--funeral_religion{
    background-color: var(--elAssortColour);
}
.sgl-common-tag--funeral_type{
    background-color: rgba(220, 223, 224, 0.7);
}
/* お葬式・お墓 アーカイブページ カードリストタグ */
.arch-card-tag{
    display: flex;
    align-items: center;
    justify-content: center;
    width: fit-content;
    height: 24rem;
    padding: 0 10rem;
    border-radius: 5rem;
    font-size: 14rem;
    background-color: var(--elAssortColour);
    margin-right: 12rem;
    margin-bottom: 12rem;
}
.arch-card-tag:last-of-type{
    margin-right: 0;
}

/* トピックスアーカイブページ */
.topics-arch__list{
    margin-bottom: 20rem;
}
.topics-arch__item{
    max-width: 468rem;
}
.topics-arch__img{
    height: 188rem;
}
.topics-search{
    width: 335rem;
    margin: 0 auto 40rem;
}
.topics-arch{
    width: var(--contentsWidth);
    margin: 0 auto 30rem;
}
@media screen and (min-width: 600px) {
    .topics-arch__list{
        margin-bottom: 30rem;
    }
    .topics-arch__img{
        height: 263rem;
    }    
    .topics-search{
        width: fit-content;
        margin: 0 auto 80rem;
    }
    .topics-arch{
        width: var(--contentsWidth);
        margin: 0 auto 50rem;
    }         
}
/* トピックス シングルページタグ */
.topics-tag{
    display: flex;
    align-items: center;
    justify-content: center;
    width: fit-content;
    height: 24rem;
    padding: 0 10rem 2rem;
    border-radius: 5rem;
    font-size: 16rem;
    font-family: var(--kiwiMaru);
    font-weight: 300;
    letter-spacing: 0.05em;
    color: var(--elWhite);
    background-color: var(--elAccentColour);
    margin-right: 12rem;
    margin-bottom: 12rem;
}
.topics-tag:last-of-type{
    margin-right: 0;
}

/* タームリスト('/'区切り) */
.term__list{
    display: flex;
    flex-wrap: wrap;
}
.term__item{
    font-size: 16rem;
    line-height: 1.5em;
}
.term__item::after{
    content: ' / ';
    white-space: pre;
}
.term__item:last-of-type::after{
    display: none;
}


/* 電話 */
@media screen and (min-width: 600px){
    a[href*="tel:"] {
        pointer-events: none;
        cursor: default;
        text-decoration: none;
    }
}


/* お葬式・お墓 アーカイブページ カードリスト */
.arch-card__item{
    padding: 24rem 14rem 30rem 14rem;
    box-shadow: 4rem 8rem 10rem rgb(0 0 0 / .15);
    border: 1rem solid var(--elLightGray);
    border-radius: 20rem;
    margin-bottom: 20rem;
}
.arch-card__item:last-of-type{
    margin-bottom: 0;
}
.arch-card__name{
    font-size: 24rem;
    font-weight: bold;
    line-height: 1.2em;
    letter-spacing: 4%;
    margin-bottom: 15rem;
    padding-bottom: 10rem;
    border-bottom: 1rem solid var(--elLightGray);
}
.arch-card__read-text{
    font-size: 18rem;
    font-weight: bold;
    line-height: 1.5em;
    margin-bottom: 15rem;
}
.arch-card__read-text--funeral{
    color: var(--elTextFuneral);
}
.arch-card__read-text--grave{
    color: var(--elTextGrave);
}
.arch-card__address{
    display: flex;
    justify-content: space-between;
    margin-bottom: 12rem;
}
.arch-card__text{
    display: flex;
    font-size: 16rem;
    line-height: 1.5em;
    width: 232rem;
}
.arch-card__text::before{
    display: block;
    content: '';
    background-size: contain;
    background-repeat: no-repeat;
    flex-shrink: 0;
    position: relative;
    z-index: -1;
}
.arch-card__text--address::before{
    background-image: url(../image/icons/address-icon.svg);
    width: 13rem;
    height: 18rem;
    margin-right: 14rem;
    margin-left: 5rem;
    top: 3rem;
}
.arch-card__text--access{
    width: 100%;
    font-weight: bold;
    margin-bottom: 12rem;
}
.arch-card__text--access::before{
    background-image: url(../image/icons/access-icon.svg);
    width: 20rem;
    height: 19.3rem;
    margin-right: 10rem;
    margin-left: 2rem;
    top: 2rem;
    z-index: -1;
}
.arch-card__link{
    width: 100%;
    display: none;
    word-break: break-all;
    padding-left: 32rem;
	text-indent: -32rem;
}
.arch-card__link::before{
    display: inline-block;
    content: '';
    background-size: contain;
    background-repeat: no-repeat;
    flex-shrink: 0;
    position: relative;
    z-index: -1;
    background-image: url(../image/icons/link-icon.svg);
    width: 20.14rem;
    height: 18rem;
    margin-right: 9.86rem;
    margin-left: 2rem;
    top: 3rem;
    z-index: -1;
}
.arch-card-categories{
    display: none;
}
.arch-card__price-text{
    font-size: 16rem;
    font-weight: bold;
    margin-bottom: 20rem;
}
.arch-card__img{
    display: none;
    width: 100%;
    height: 171.91rem;
    object-fit: cover;
    margin-bottom: 16rem;
}
.arch-card__img--sp{
    display: block;
}
.arch-card__inquiry-block{
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    background-color: var(--elAssortColour);
    border-radius: 5rem;
    padding: 15rem 10rem;
    margin-bottom: 24rem;
}
.arch-card__inquiry{
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: flex-start;
    width: 100%;
    padding-bottom: 10rem;
    margin-bottom: 10rem;
    border-bottom: 1rem solid var(--elWhite);
}
.arch-card__inquiry:last-of-type{
    padding-bottom: 0;
    margin-bottom: 0;
    border-bottom: none;
}
.arch-card__inquiry-label{
    font-size: 14rem;
    line-height: 1.3em;
    margin-bottom: 9rem;
    flex-shrink: 0;
}
.arch-card__inquiry-data{
    display: flex;
    flex-direction: column;
    align-items: center;
    width: 275rem;
}
.arch-card__tel-num{
    font-size: 36rem;
    font-family: var(--ubuntu);
    color: var(--elAccentColour);
    letter-spacing: 0.02rem;
    margin-bottom: 9rem;
}
.arch-card__supplementary-text{
    font-size: 14rem;
    line-height: 1.5em;
    color: var(--elAccentColour);
    letter-spacing: 0.02rem;
    text-align: center;
}
/* 価格のspanタグ スタイル定義 */
.arch-card__price-text > p{
    word-wrap: break-word;
    line-height: 180%;
    margin-bottom: 10rem;
}
.arch-card__price-text > p > span{
    color: var(--elAccentColour);
    font-family: var(--ubuntu);
}
.arch-card__price-text > p > span:first-of-type{
    padding-left: 6rem;
}
.arch-card__price-text > p > span:last-of-type{
    padding-right: 6rem;
}
.arch-card__price-text > p > .text-l{
    font-size: 40rem;
}
.arch-card__price-text > p > .text-m{
    font-size: 30rem;
}
@media screen and (min-width: 600px){
    .arch-card__item{
        display: flex;
        justify-content: space-between;
        padding: 30rem 50rem 30rem 50rem;
        box-shadow: 5rem 15rem 20rem rgb(0 0 0 / 15%);
        margin-bottom: 40rem;
    }
    .arch-card__name{
        font-size: 28rem;
        padding-bottom: 8rem;
    }
    .arch-card__data-area{
        width: 380rem;
    }
    .arch-card__read-text{
        margin-bottom: 24rem;
    }
    .arch-card__address{
        margin-bottom: 14rem;
    }
    .arch-card__text{
        width: 100%;
    }
    .arch-card__text--address::before{
        margin-right: 18rem;
    }
    .arch-card__text--access{
        font-weight: bold;
        margin-bottom: 14rem;
    }
    .arch-card__link{
        display: block;
        margin-bottom: 14rem;
    }
    .arch-card-categories{
        display: block;
        margin-bottom: 14rem;
        width: 100%;
    }
    /* タームリスト(カードリスト固有のスタイル定義) */
    .arch-card-category__list{
        margin-bottom: 8rem;
    }
    .arch-card-category__list:nth-last-of-type(2){
        margin-bottom: 14rem;
    }
    .arch-card-category__list:last-of-type{
        margin-bottom: 0;
    }
    /* 終了 */
    .arch-card__price-text{
        font-size: 16rem;
        line-height: 1.5em;
        font-weight: bold;
        margin-bottom: 0;
    }
    .arch-card__img-area{
        display: flex;
        flex-direction: column;
        justify-content: space-between;
        width: 440rem;
    }
    .arch-card__img{
        display: block;
        height: 200rem;
        margin-bottom: 29rem;
    }
    .arch-card__img--sp{
        display: none;
    }
    .arch-card__inquiry-block{
        background-color: transparent;
        padding: 0;
    }
    .arch-card__inquiry{
        flex-direction: row;
        height: auto;
        width: 100%;
        border-radius: 0;
        margin-bottom: 18rem;
        padding-bottom: 0;
        border-bottom: none;
    }
    .arch-card__inquiry-label{
        width: 100rem;
        margin-bottom: 0;
        margin-right: 10rem;
    }
    .arch-card__inquiry-data{
        flex-direction: row;
        width: auto;
    }
    .arch-card__tel-num{
        margin-bottom: 0;
    }
    .arch-card__supplementary-text{
        text-align: left;
    }    
}


/* -----シングルページ 表テーブル----- */
/* アピールテキストspan */
.single__price > p{
    margin-bottom: 10rem;
    width: 295rem;
    word-wrap: break-word;
    line-height: 130%;
}
.single__price > p:last-of-type{
    margin-bottom: 0;
}
.single__price > p > span{
    position: relative;
    top: 3rem;
    color: var(--elAccentColour);
    font-family: var(--ubuntu);
    line-height: 100%;
}
.single__price > p > span:first-of-type{
    margin-left: 9.3rem;
}
.single__price > p >  span:last-of-type{
    margin-right: 9.3rem;
}
.single__price > p > .text-l{
    font-size: 52rem;
}
.single__price > p > .text-m{
    font-size: 44rem;
}
@media screen and (min-width: 600px){
    .single__price > p{
        margin-bottom: 10rem;
        width: 340rem;
        word-wrap: break-word;
        line-height: 130%;
    }
}


/* -----シングルページ共通----- */
/* メインコンテンツのマージントップ */
.single{
    margin-top: 43rem;
}
@media screen and (min-width: 600px) {
    .single{
        margin-top: 73rem;
    }    
}

/* アイキャッチ */
.single__eye-catch{
    position: relative;
    max-width: 375rem;
    margin: 0 auto;
}
.single__eye-catch-img{
    display: block;
    min-width: 100%;
    width: 100%;
    object-fit: cover;
    object-position: 0 100%
}
.single__eye-catch-text-area{
    position: absolute;
    bottom: 0;;
    display: flex;
    align-items: center;
    background-color: rgba(255,255,255,0.8);
    width: 100%;
    min-height: 80rem;
    padding: 21rem 20rem;
}
.single__eye-catch-text{
    font-size: 32rem;
    font-weight: bold;
    line-height: 120%;
    letter-spacing: 0.05em;
}
@media screen and (min-width: 600px) {
    .single__eye-catch{
        min-width: 1080rem;
        max-width: 1440rem;
    }
    .single__eye-catch-img{
        height: 420rem;
        object-fit: cover;
    }
    .single__eye-catch-text{
        font-size: 48rem;
        width: 1140rem;
        margin: 0 auto;
    }
}


.single__description{
    font-size: 25rem;
    font-weight: bold;
    line-height: 130%;
    letter-spacing: 0.05em;
    margin-bottom: 24rem;
}
.single__description--funeral{
    color: var(--elTextFuneral);
}
.single__description--grave{
    color: var(--elTextGrave);
}
.single__pickup-tag-area{
    margin-bottom: 50rem;
}
.single__access{
    display: flex;
    font-size: 14rem;
    line-height: 150%;
    margin-bottom: 14rem
}
.single__access::before{
    display: block;
    flex-shrink: 0;
    content: '';
    background-image: url(../image/icons/access-icon.svg);
    background-size: cover;
    background-repeat: no-repeat;
    width: 30rem;
    height: 30rem;
    margin-right: 8rem;
}
.single__price{
    font-size: 24rem;
    font-weight: bold;
}
.single__money{
    display: flex;
    align-items: center;
    border: 1px solid var(--elLightGray);
    border-radius: 5rem;
    min-height: 92rem;
    padding: 20rem;
    margin-bottom: 30rem;
}
.single__reference-price > span{
    font-size: 16rem;
}
@media screen and (min-width: 600px) {
    .single__description{
        line-height: 150%;
        margin-bottom: 36rem;
    }
    .single__pickup-area{
        display: flex;
        justify-content: space-between;
    }
    .single__pickup-area{
        margin-bottom: 50rem;
    }
    .single__pickup-tag-area{
        width: calc(100% - 390rem);
        margin: 0 20rem 0 0;
    }
    .single__access{
        font-size: 16rem;
        margin-bottom: 24rem;
    }
    .single__money{
        width: 380rem;
        min-height: 136rem;
        margin-bottom: 0;
    }
}

/* ギャラリー画像 */
.single__gallery{
    margin-bottom: 50rem;
}
.single__gallery-main-img{
    display: block;
    width: 100%;
    height: 188rem;
    object-fit: cover;
    margin-bottom: 20rem;
}
.single__gallery-list{
    display: flex;
    justify-content: center;
    width: 100%;
}
.single__gallery-item{
    width: 63rem;
    height: 63rem;
    margin-right: 5rem;
}
.single__gallery-item:last-of-type{
    margin-right: 0;
}
.single__gallery-img{
    display: block;
    width: 100%;
    height: 100%;
    object-fit: contain;
    object-fit: cover;
}
.single__gallery-img:hover{
    opacity: 50%;
}
/* アクティブ */
.single__gallery-img--current{
    outline: 2px solid var(--elAccentColour);
    opacity: 50%;
}
.single__gallery-source{
    display: flex;
    justify-content: flex-end;
    margin-top: 20rem;
}
.single__gallery-source-text{
    display: flex;
    align-items: flex-start;
    flex-shrink: 0;
}
.single__gallery-source-link{
    margin-left: 5rem;
}
@media screen and (min-width: 600px) {
    .single__gallery-main-img{
        height: 540rem;
    }
    .single__gallery-item{
        width: 176rem;
        height: 99rem;
        margin-right: 20rem;
    }
    .single__gallery-source-text{
        display: flex;
        align-items: center;
    }
}

/* シングルページボタン */
.single__btn{
    width: fit-content;
    margin: 0 auto 60rem;
}
@media screen and (min-width: 600px) {
    .single__btn{
        margin: 0 auto 80rem;
    }
}

/* 表テーブル */
.table-std{
    position: relative;
    left: -20rem;
    width: 100vw;
    margin-bottom: 40rem;
    table-layout: fixed;
}
.table-std__row{
    display: flex;
    flex-direction: column;
    border-top: 1px solid var(--elLightGray);
}
.table-std__row:last-of-type{
    border-bottom: 1px solid var(--elLightGray);
}
.table-std__head-cell{
    display: flex;
    color: var(--elAccentColour);
    font-size: 18rem;
    line-height: 150%;
    font-weight: bold;
    padding: 12rem 20rem 0;
    margin-bottom: 4rem;
}
.table-std__data-cell{
    font-size: 16rem;
    line-height: 150%;
    padding: 0 20rem;
    margin-bottom: 13rem;
}
.table-std__link{
    word-wrap: break-word;
}
.address-text{
    margin-bottom: 10rem;
}
.address-map{
    width: 100%;
    height: 223rem;
    margin: 0 0 10rem 0;
}
@media screen and (min-width: 600px) {
    .table-std{
        left: 0;
        width: 100%;
        margin-bottom: 60rem;
    }
    .table-std__row{
        flex-direction: row;
        align-items: center;
        border-left: 1px solid var(--elLightGray);
        border-right: 1px solid var(--elLightGray);
    }
    .table-std__head-cell{
        align-items: center;
        color: var(--elBlack);
        width: 240rem;
        min-height: 60rem;
        padding: 16rem 20rem;
        margin-bottom: 0;
    }
    .table-std__data-cell{
        width: calc(100% - 240rem);
        min-height: 60rem;
        border-left: 1px solid var(--elLightGray);
        padding: 18rem 20rem;
        margin-bottom: 0;
    }
    .address-text{
        margin-bottom: 20rem;
    } 
    .address-map{
        width: 585rem;
        height: 390rem;
        margin: 0 0 20rem 20rem;
    }
}


/* -----ヘッダー----- */
/* イーライフプラン */
.header-wrap{
    background-color: #FFFFFF;
    position: fixed;
    top: 0;
    width: 100%;
    z-index: 1;
}
.header-bar{
    display: flex;
    justify-content: space-between;
    align-items: center;
    box-shadow: 0 4rem 2rem rgb(0 0 0 / 10%);
    position: relative;
    z-index: 2;
    padding: 8.5rem 10rem 8.5rem 20rem;
}
.header-bar__logo-link{
    width: 196rem;
}
.header-bar__logo-image{
    display: block;
    width: 100%;
}
.menu-btn{
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    align-items: center;
    padding: 10rem;
    height: 43rem;
    width: fit-content;
    transition: 0.4s all ease;
}
.menu-btn__line{
    display: block;
    height: 3rem;
    width: 30rem;
    background-color: var(--elAccentColour);
    transition: all 0.4s;
}
.menu-btn__line--active:nth-of-type(1){
    -webkit-transform: translateY(10rem) rotate(-45deg);
    transform: translateY(10rem) rotate(-45deg);
    width: 33rem;
}
.menu-btn__line--active:nth-of-type(2){
    opacity: 0;
}
.menu-btn__line--active:nth-of-type(3){
    -webkit-transform: translateY(-10rem) rotate(45deg);
    transform: translateY(-10rem) rotate(45deg);
    width: 33rem;
}
.header-nav__list{
    display: flex;
    flex-wrap: wrap;
    overflow: hidden;
    z-index: 1;
}
.header-nav__item{
    display: flex;
    align-items: center;
    width: calc(375rem / 2);
    border-bottom: 1rem solid var(--elLightGray);
    box-sizing: border-box;
}
.header-nav__item:nth-of-type(2n-1){
    border-right: 1rem solid var(--elLightGray);
}
.header-nav__link{
    display: flex;
    align-items: center;
    width: 100%;
    height: 60rem;
    padding-left: 10rem;
}
.header-nav__link:hover{
    background-color: var(--elAssortColour);
}
.header-nav__menu-link:hover{
    background-color: var(--elAssortColour);
}
.header-nav__link::before{
    display: block;
    content: '';
    background-size: contain;
    background-repeat: no-repeat;
    flex-shrink: 0;
}
.header-nav__link--funeral::before{
    width: 26rem;
    height: 18rem;
    background-image: url(../image/icons/categories/funeral-icon.svg);
    margin: 0 13rem 0 5rem;
}
.header-nav__link--grave::before{
    width: 19.8rem;
    height: 18rem;
    background-image: url(../image/icons/categories/grave-icon.svg);
    margin: 0 13.16rem 0 5rem;
}
.header-nav__link--topics::before{
    width: 17.6rem;
    height: 18rem;
    background-image: url(../image/icons/categories/column-icon.svg);
    margin: 0 16.3rem 0 6rem;
}
.header-nav__link--e-clean::before{
    width: 18.92rem;
    height: 22rem;
    background-image: url(../image/icons/elife-clean-normal-logo.svg);
    margin: 0 14rem 0 5rem;
}
.header-nav__link-text{
    width: fit-content;
    max-width: 85rem;
    height: fit-content;
    font-size: 17rem;
    letter-spacing: 125%;
    color: var(--elBlack);
}
.header-nav__menu-list{
    width: 100%;
    height: fit-content;
    overflow: hidden;
    box-shadow: 0px 4px 2px rgba(0, 0, 0, 0.1);
    transition: 0.4s all ease;
}
.header-nav__menu-item{
    border-bottom: 1rem solid var(--elLightGray);
}
.header-nav__menu-item:last-of-type{
    border-bottom: 0;
}
.header-nav__menu-link-text{
    width: 100%;
    font-size: 17rem;
    font-weight: 500rem;
    margin-right: 8rem;
    display: flex;
    align-items: center;
}
.header-nav__menu-link{
    color: var(--elBlack);
    display: flex;
    align-items: center;
    padding: 20rem 12rem 20rem 10rem;
}
.header-nav__menu-link::before{
    display: block;
    content: '';
    background-size: contain;
    background-repeat: no-repeat;
    flex-shrink: 0;
}
.header-nav__menu-link::after{
    display: block;
    content: '';
    background-size: contain;
    background-repeat: no-repeat;
    background-image: url(../image/icons/button-arrow-hover.svg);
    flex-shrink: 0;
    width: 8rem;
    height: 8rem;
    transform: rotate(0.13turn);
}
.header-nav__menu-link--funeral::before{
    width: 30rem;
    height: 20rem;
    margin: 0 8rem 0 2rem;
    background-image: url(../image/icons/categories/funeral-icon.svg);
}
.header-nav__menu-link--grave::before{
    width: 30rem;
    height: 20rem;
    margin: 0 5rem 0 5rem;
    background-image: url(../image/icons/categories/grave-icon.svg);
}
.header-nav__menu-link--topics::before{
    width: 30rem;
    height: 20rem;
    margin: 0 4rem 0 5rem;
    background-image: url(../image/icons/categories/column-icon.svg);
}
.header-nav__menu-link--e-clean::before{
    width: 18.92rem;
    height: 22rem;
    margin-right: 8rem;
    background-image: url(../image/icons/elife-clean-normal-logo.svg);
    margin: 0 14rem 0 6rem;
}
@media screen and (min-width: 600px){
    .header{
        width: 100%;
        position: fixed;
        top: 0;
        z-index: 1;
        background-color: #FFFFFF;
        box-shadow: 0 4rem 2rem rgb(0 0 0 / 10%);
    }
    .header-wrap{
        position: static;
        display: flex;
        justify-content: space-between;
        padding: 0 40rem 0 20rem;
        max-width: 1360rem;
        min-width: 1080rem;
        margin: 0 auto;
    }
    .header-bar{
        box-shadow: none;
        position: static;
        z-index: auto;
        padding: 0;
    }
    .header-bar__logo-link{
        width: 367rem;
        padding: 20rem;
    }
    .menu-btn{
        display: none;
    }
    .header-nav__list{
        display: none;
    }
    .header-nav__menu-list{
        width: calc((100% + 80rem) * 0.525);
        display: flex;
        height: auto;
        box-shadow: none;
        justify-content: flex-end;
    }
    .header-nav__menu-item{
        width: calc(100% / 4);
        padding: 0;
        border-bottom: 0;
        display: flex;
        justify-content: center;
        align-items: center;
    }
    .header-nav__menu-item::after{
        content: '';
        display: block;
        border-right: 1rem solid var(--elLightGray);
        height: 80rem;
    }
    .header-nav__menu-item:first-of-type::before{
        content: '';
        display: block;
        border-left: 1rem solid var(--elLightGray);
        height: 80rem;
    }
    .header-nav__menu-link{
        flex-direction: column;
        justify-content: center;
        width: 100%;
        height: 106rem;
    }
    .header-nav__menu-link::after{
        display: none;
    }
    .header-nav__menu-link-text{
        width: 100%;
        margin-right: 0;
        font-size: 20rem;
        display: inline-block;
        text-align: center;
    }
    .header-nav__menu-link--funeral::before{
        width: 32.1rem;
        height: 21.6rem;
        margin-right: 0;
        margin-bottom: 14.4rem;
    }
    .header-nav__menu-link--grave::before{
        width: 23.8rem;
        height: 21.6rem;
        margin-right: 0;
        margin-bottom: 14.4rem;
    }
    .header-nav__menu-link--topics::before{
        width: 21.2rem;
        height: 21.6rem;
        margin-right: 0;
        margin-bottom: 14.4rem;
    }
    .header-nav__menu-link--e-clean::before{
        width: 22.36rem;
        height: 26rem;
        margin-right: 0;
        margin-bottom: 15.46rem;
    }
}

/* イーライフクリーン */
.clean-header{
    position: fixed;
    top: 0;
    width: 100%;
    z-index: 10;
    background-color: #FFFFFF;
}
.clean-header-wrap{
    background-color: #FFFFFF;
    width: 100%;
}
.clean-header-bar{
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 0 10rem 0 20rem;
    height: 60rem;
    box-shadow: 0 4rem 2rem rgb(0 0 0 / 10%);
    z-index: 2;
    box-sizing: content-box;
    position: relative;
}
.clean-header-bar__logo-link{
    width: 224rem;
}
.menu-btn__line--clean{
    background-color: var(--elELifeClean);
}
.clean-header-info-area{
    /* position: absolute; */
    top: 60rem;
    padding: 0rem;
    width: 100%;
    max-height: 0;
    overflow: hidden;
    /* -webkit-overflow-scrolling: touch; */
    z-index: 1;
    transition: all 0.4s ease;
    background-color: var(--elWhite);
}
.clean-header-info-area--open{
    min-height: calc(100vh - 60rem);
    overflow: scroll;
}
.clean-header-info{
    padding: 16rem 0 30rem;
    margin: 0 auto;
}
.clean-header-info__list{
    display: flex;
    width: fit-content;
    margin: 0 auto 20rem;
}
.clean-header-info__item{
    display: flex;
    align-items: center;
    justify-content: center;
    font-family: var(--kiwiMaru);
    font-size: 18rem;
    color: var(--elELifeCleanLogo);
    letter-spacing: 0.02em;
    width: 52rem;
    height: 52rem;
    border: 1rem solid var(--elELifeClean);
    border-radius: 5rem;
    margin-right: 8rem;
}
.clean-header-info__item:last-of-type{
    margin-right: 0;
}
.clean-header-info__direct-area{
    margin-bottom: 8rem;
    display: flex;
    justify-content: center;
    align-items: center;
}
.clean-header-info__direct-text{
    font-size: 10rem;
    font-weight: 700;
    color: var(--elDarkBlue);
    line-height: 110%;
    display: flex;
    margin-right: 9rem;
}
.clean-header-info__direct-text::before{
    content: '';
    display: block;
    background-image: url(../image/elife-clean/icons/e-life-clean-mobile.svg);
    background-size: cover;
    width: 14rem;
    height: 22rem;
    margin-right: 2.29rem;
}
.clean-header-info__direct-mobile-link{
    color: var(--elBlack);
    font-size: 37rem;
    font-weight: 500;
    font-family: var(--ubuntu);
}
.clean-header-info__tel{
    display: flex;
    align-items: center;
    width: fit-content;
    margin: 0 auto 15rem;
}
.clean-header-info__tel-text{
    font-size: 16rem;
    font-family: var(--ubuntu);
    font-weight: 500;
    color: var(--elELifeCleanLogo);
    margin-right: 12rem;
    white-space: nowrap;
}
.clean-header-info__tel-link{
    color: var(--elBlack);
    font-family: var(--ubuntu);
    font-weight: 400;
    font-size: 30rem;
}
.clean-header-info__time{
    display: flex;
    color: var(--elWhite);
    font-size: 14rem;
    width: fit-content;
    margin: 0 auto 30rem;
}
.clean-header-info__reception{
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: var(--elELifeCleanLogo);
    width: 205rem;
    height: 24rem;
}
.clean-header-info__reception-text{
    display: flex;
    margin-right: 10rem;
}
.clean-header-info__reception-text::after{
    display: block;
    content: '';
    background-color: var(--elWhite);
    width: 1rem;
    height: 14rem;
    margin-left: 10rem;
}
.clean-header-info__reception-text-orange{
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: var(--elAccentOrange);
    width: 95rem;
    height: 24rem;
}
.clean-header-info__sp-text{
    font-size: 14rem;
    line-height: 130%;
    text-align: center;
    background-color: var(--elLightBlue);
    padding: 13rem 0;
}
.clean-header-info__text--pc{
    display: none;
}
.clean-header-menu__sp-list{
    font-size: 17rem;
    line-height: 125%;
    padding-bottom: 300px;
}
.clean-header-menu__pc-list{
    display: none;
}
.clean-header-menu__item{
    display: flex;
    justify-content: space-between;
    border-top: 1rem solid var(--elLightGray);
}
.clean-footer__menu-item-text{
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 100%;
    height: 100%;
}
.clean-footer__menu-item-text::after{
    display: block;
    content: '';
    background-image: url(../image/icons/blue-button-arrow.svg);
    background-size: contain;
    background-repeat: no-repeat;
    width: 8rem;
    height: 8rem;
    flex-shrink: 0;
    transform: rotate(45deg);
    position: relative;
}
.clean-header-menu__item:last-of-type{
    border-bottom: 1rem solid var(--elLightGray);
}
.clean-header-menu__link{
    color: var(--elBlack);
    width: 100%;
    min-height: 60rem;
    padding: 20rem 12rem 20rem 10rem;
}
.clean-header-menu__link:hover{
    background-color: var(--elAssortColour);
}
@media screen and (min-width: 600px) {
    .clean-header__body-padding{
        padding-top: 174rem;
    }
    .clean-header{
        box-shadow: 0rem 4rem 2rem rgba(0, 0, 0, .1);
        padding-top: 16rem;
    }
    .clean-header-wrap{
        display: flex;
        justify-content: space-between;
        max-width: 1360rem;
        min-width: 1080rem;
        padding: 0 40rem;
        margin: 0 auto;
    }
    .clean-header-bar{
        display: flex;
        height: fit-content;
        padding: 0 40rem;
        box-shadow: none;
        padding: 0;
        margin-right: 40rem;
    }
    .clean-header-info-area{
        position: static;
        max-height: none;
        overflow: visible;
        width: fit-content;
    }
    .clean-header-info{
        display: flex;
        align-items: flex-start;
        padding: 0;
        margin: 0;
    }
    .clean-header-info__direct-text::before{
        width: 14rem;
    }
    .clean-header-bar__logo{
        display: block;
        width: fit-content;
    }
    .clean-header-bar__logo-wrap{
        margin-bottom: 18rem;
        max-width: 373.2rem;
        min-width: 287rem;
    }
    .clean-header-bar__logo-link{
        max-width: 373.2rem;
        min-width: 287rem;
    }
    .clean-header-info__list{
        justify-content: space-between;
        flex-wrap: wrap;
        width: 92rem;
        margin-right: 20rem;
    }
    .clean-header-info__item{
        font-size: 14rem;
        width: 44rem;
        height: 44rem;
        margin: 0 0 8rem 0;
    }
    .clean-header-info__tel-area{
        height: fit-content;
        margin-right: 30rem;
    }
    .clean-header-info__tel{
        margin-bottom: 6rem;
        margin-top: 12rem;
    }
    .clean-header-info__tel-link{
        font-size: 32rem;
    }
    .clean-header-info__time{
        margin-bottom: 0;
    }
    .clean-header-info__reception{
        min-width: 205rem;
    }
    .clean-header-menu__sp-list{
        display: none;
    }
    .clean-header-menu__pc-list{
        display: flex;
        max-width: 1360rem;
        min-width: 1080rem;
        padding: 0 40rem;
        margin: 0 auto;
    }
    .clean-header-menu__item{
        display: flex;
        align-items: center;
        width: calc(100% / 4);
        min-height: 42rem;
        border: none;
    }
    .clean-header-menu__item:last-of-type{
        border: none;
    }
    .clean-header-menu__item::before{
        display: block;
        content: '';
        background-color: var(--elLightGray);
        background-size: contain;
        background-repeat: no-repeat;
        width: 1rem;
        height: 30rem;
    }
    .clean-header-menu__item:last-of-type::after{
        display: block;
        content: '';
        background-color: var(--elLightGray);
        background-size: contain;
        background-repeat: no-repeat;
        width: 1rem;
        height: 30rem;
    }
    .clean-header-info__sp-text{
        display: none;
    }
    .clean-header-info__text--pc{
        display: block;
        font-size: 14rem;
        line-height: 120%;
        width: 100%;
    }
    .clean-header-menu__link{
        display: flex;
        align-items: center;
        justify-content: center;
        min-height: fit-content;
        height: 100%;
        padding: 0;
    }
    .clean-footer__menu-item-text{
        justify-content: center;
        font-size: 20rem;
        letter-spacing: 0.1em;
        width: 100%;
        height: fit-content;
    }
    .clean-footer__menu-item-text::after{
        display: none;
    }
}

/* イーライフクリーンボタン */
.clean-inquiry__btn{
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--elWhite);
    font-weight: bold;
    width: 300rem;
    height: 56rem;
    margin: 0 auto 15rem;
    border-radius: 5rem;
}
.clean-inquiry__btn:hover{
    color: var(--elELifeCleanLogo);
    background-color: var(--elLightBlue);
}
.clean-inquiry__btn:last-of-type{
    margin-bottom: 0;
}
.clean-inquiry__btn-link{
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--elWhite);
    background-color: var(--elELifeClean);
    border: 2rem solid var(--elELifeCleanLogo);
    border-radius: 5rem;
    box-shadow: 0 5rem 0 #587EB8;
    width: 100%;
    height: 100%;
    padding: 0 34rem 0 20rem;
}
.clean-inquiry__btn-link:hover{
    color: var(--elELifeCleanLogo);
    background-color: var(--elLightBlue);
}
.clean-inquiry__btn-link::before{
    display: block;
    content: '';
    background-image: url(../image/icons/mail-icon-white.svg);
    background-size: contain;
    background-repeat: no-repeat;
    width: 30rem;
    height: 30rem;
    margin-right: 10rem;
}
.clean-inquiry__btn-link:hover::before{
    background-image: url(../image/icons/mail-icon-blue.svg);
}
.clean-inquiry__btn-link::after{
    position: absolute;
    top: calc((100% / 2) - 9rem);
    right: 16rem;
    display: block;
    content: '';
    background-image: url(../image/icons/clean-btn-arrow.svg);
    background-size: contain;
    background-repeat: no-repeat;
    width: 8rem;
    height: 18rem;
    flex-shrink: 0;
}
.clean-inquiry__btn-link:hover::after{
    background-image: url(../image/icons/clean-btn-arrow-blue.svg);
}
.clean-inquiry__btn-text{
    font-size: 18rem;
    line-height: 110%;
}
.clean-inquiry__btn-small-text{
    font-size: 12rem;
    line-height: 110%;
}
/* LINE */
.clean-inquiry__btn-link--line{
    background-color: var(--elLineGreen);
    border: 2rem solid var(--elLineGreen);
    box-shadow: 0 5rem 0 #009900;
}
.clean-inquiry__btn-link--line:hover{
    color: var(--elLineGreen);
    background-color: var(--elWhite);
}
.clean-inquiry__btn-link--line::before{
    background-image: url(../image/icons/line-icon.svg);
}
.clean-inquiry__btn-link--line:hover::before{
    background-image: url(../image/icons/line-icon-green.png);
}
.clean-inquiry__btn-link--line:hover::after{
    background-image: url(../image/icons/clean-btn-arrow-green.svg);
}
@media screen and (min-width: 600px) {
    .clean-inquiry__btn{
        width: 200rem;
        height: 42rem;
        margin-bottom: 8rem;
    }
    .clean-inquiry__btn-text-block{
        position: relative;
        top: 2rem;
    }
    .clean-inquiry__btn-link{
        justify-content: flex-start;
        box-shadow: 0 4rem 0 #587EB8;
        padding: 0 36rem 0 12rem;
    }
    .clean-inquiry__btn-link::before{
        width: 24rem;
        height: 24rem;
    }
    .clean-inquiry__btn-link::after{
        right: 18rem;
    }
    .clean-inquiry__btn-text{
        font-size: 14rem;
    }
    /* LINE */
    .clean-inquiry__btn-link--line{
        box-shadow: 0 4rem 0 #009900;
    }
}
/* whiteボタン */
.clean-inquiry__btn-link--white{
    color: var(--elELifeCleanLogo);
    background-color: var(--elWhite);
    padding: 0 28rem 0 20rem;
}
.clean-inquiry__btn-link--white:hover{
    color: var(--elWhite);
    background-color: var(--elELifeClean);
    border: 2rem solid var(--elWhite);
}
.clean-inquiry__btn-link--white::before{
    background-image: url(../image/icons/mail-icon-blue.svg);
    width: 30rem;
    height: 30rem;
}
.clean-inquiry__btn-link--white:hover:before{
    background-image: url(../image/icons/mail-icon-white.svg);
}
.clean-inquiry__btn-link--white::after{
    background-image: url(../image/icons/clean-btn-arrow-blue.svg);
}
.clean-inquiry__btn-link--white:hover::after{
    background-image: url(../image/icons/clean-btn-arrow.svg);
}
.clean-inquiry__btn-text--white{
    font-size: 18rem;
}
/* LINE whiteボタン */
.clean-inquiry__btn-link--line-white{
    color: var(--elLineGreen);
    background-color: var(--elWhite);
    border: 2rem solid #05A346;
    padding: 0 28rem 0 20rem;
}
.clean-inquiry__btn-link--line-white:hover{
    color: var(--elWhite);
    background-color: var(--elLineGreen);
    border: 2rem solid var(--elWhite);
}
.clean-inquiry__btn-link--line-white::before{
    background-image: url(../image/icons/line-icon-green.png);
    width: 30rem;
    height: 30rem;
}
.clean-inquiry__btn-link--line-white:hover::before{
    background-image: url(../image/icons/line-icon.svg);
}
.clean-inquiry__btn-link--line-white::after{
    background-image: url(../image/icons/clean-btn-arrow-green.svg);
}
.clean-inquiry__btn-link--line-white:hover::after{
    background-image: url(../image/icons/clean-btn-arrow.svg);
}
@media screen and (min-width: 600px){
    .clean-inquiry__btn--white{
        width: 240rem;
        height: 56rem;
    }
}


/* -----フッター----- */
/* イーライフプランフッター */
.footer{
    border-top: 1rem solid var(--elLightGray);
    padding-top: 16rem;
    margin-top: 50rem;
    margin-bottom: 16rem;
}
.footer-logo{
    margin-bottom: 10rem;
}
.footer-logo__link{
    display: block;
    width: fit-content;
    margin: 0 auto;
    padding: 14rem;
}
.footer-logo__image{
    display: block;
    width: 234rem;
}
.footer-nav{
    width: 335rem;
    margin: 0 auto 14rem;
}
.footer-nav__list{
    display: flex;
    flex-wrap: wrap;
}
.footer-nav__link{
    display: block;
    width: calc(335rem / 2);
    height: 40rem;
    font-size: 13rem;
    letter-spacing: 120%;
    color: var(--elBlack);
    padding: 0 10rem 0 1em;
	text-indent: -1em;
}
.footer-nav__link:hover{
    opacity: 0.5;
}
.footer-nav__link::before{
    display: inline-block;
    content: '';
    background-image: url(../image/icons/right-arrow.svg);
    width: 7rem;
    height: 12rem;
    background-size: cover;
    background-repeat: no-repeat;
    flex-shrink: 0;
    margin-right: 6rem;
}
.copyright{
    width: fit-content;
    font-size: 10rem;
    color: var(--elDarkGray);
    margin: 0 auto;
}

@media screen and (min-width: 600px){
    .footer{
        position: relative;
        max-width: 1360rem;
        min-width: 1080rem;
        padding-top: 18rem;
        margin: 60rem auto 14rem;
    }
    .footer-logo{
        margin-bottom: 0;
    }
    .footer-nav{
        width: fit-content;
        margin-bottom: 19rem;
    }
    .footer-nav__list{
        display: flex;
        flex-wrap: nowrap;
    }
    .footer-nav__link{
        font-size: 15rem;
        width: fit-content;
        height: auto;
        padding: 10rem 50rem 10rem 0;
    }
    .footer-nav__item:last-of-type .footer-nav__link{
        padding-right: 0;
    }
    .footer-nav__link::before{
        margin-right: 10rem;
    }    
    .copyright{
        margin: 0 40rem 0 auto;
    }
}

/* イーライフクリーンフッター */
.clean-footer{
    padding: 0;
    margin: 40rem 0 0;
    border-top: none;
}
.clean-footer-info{
    background-color: var(--elELifeClean);
    padding: 0 0 32rem;
    margin-bottom: 40rem;
}
.clean-footer-info__list{
    position: relative;
    top: 0rem;
    display: flex;
    width: fit-content;
    margin: 0 auto 20rem;
}
.clean-footer-info__item{
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--elDarkBlue);
    font-family: var(--kiwiMaru);
    font-size: 16rem;
    background-color: var(--elLightBlue);
    width: 48rem;
    height: 48rem;
    border-bottom-left-radius: 5rem;
    border-bottom-right-radius: 5rem;
    margin-right: 8rem;
    box-shadow: 0 4rem 0 #6895D9;
}
.clean-footer-info__item:last-of-type{
    margin-right: 0;
}
.clean-footer-info__direct-text{
    color: #FFFFFF;
    font-size: 12rem;
}
.clean-footer-info__direct-text::before{
    background-image: url(../image/elife-clean/icons/e-life-clean-mobile-white.svg);
    width: 14.12rem;
    height: 24.44rem;
}
.clean-footer-info__direct-link{
    color: #FFFFFF;
    font-size: 36rem;
}
.clean-footer-info__tel{
    margin-bottom: 12rem;
}
.clean-footer-info__tel-text{
    color: var(--elWhite);
    font-size: 16rem;
}
.clean-footer-info__tel-link{
    color: var(--elWhite);
    font-family: var(--ubuntu);
    font-size: 35rem;
    letter-spacing: 0.02em;
}
.clean-footer-info__time{
    display: flex;
    align-items: center;
    justify-content: space-between;
    font-size: 18rem;
    font-weight: bold;
    background-color: var(--elWhite);
    width: 331rem;
    height: 34rem;
    border: 2rem solid var(--elWhite);
    margin: 0 auto 30rem;
}
.clean-footer-info__reception{
    display: flex;
    align-items: center;
    justify-content: center;
    letter-spacing: 0.03em;
    width: 239rem;
}
.clean-footer-info__reception-text{
    display: flex;
    align-items: center;
    margin-right: 10rem;
}
.clean-footer-info__reception-text::after{
    display: block;
    content: '';
    background-color: var(--elLightGray);
    width: 1rem;
    height: 20rem;
    margin-left: 10rem;
}
.clean-footer-info__reception-text-orange{
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--elWhite);
    background-color: var(--elAccentOrange);
    width: 92rem;
    height: 30rem;
}
.clean-footer-info-answer-img{
    display: block;
    width: 132rem;
    margin: 0 auto 18rem;
}
.clean-footer-info-text{
    font-size: 20rem;
    line-height: 140%;
    text-align: center;
    margin-bottom: 35rem;
}
.clean-footer-info-text--blue{
    font-weight: bold;
    color: var(--elELifeCleanLogo);
}
.clean-footer-info__24h{
    width: 220rem;
    margin: 0 auto 12rem;
}
.clean-footer-info__24h-img{
    display: block;
    width: 100%;
}
.clean-footer-logo{
    width: 298rem;
    margin: 0 auto 16rem;
}
.clean-footer-logo__link{
    display: block;
    width: 100%;
}
.clean-footer-logo__image{
    display: block;
    width: 100%;
}
.clean-footer__address-block{
    font-size: 14rem;
    line-height: 150%;
    padding: 0 20rem;
    margin-bottom: 20rem;
}
.clean-footer__address-text{
    margin-bottom: 12rem;
}
.clean-footer__operation-area{
    display: flex;
    align-items: center;
    padding-bottom: 20rem;
    border-bottom: 1rem dashed var(--elLightGray);
}
.clean-footer__operation-text{
    margin-right: 10rem;
}
.clean-footer__operation-img{
    position: relative;
    top: -1rem;
    display: block;
    width: 156rem
}
.clean-footer__menu-list-block{
    padding: 0 20rem;
}
.clean-footer__title{
    font-size: 14rem;
    font-weight: bold;
    line-height: 120%;
    letter-spacing: 0.2em;
    margin-bottom: 20rem;
}
.clean-footer__menu-list{
    display: flex;
    flex-wrap: wrap;
    font-size: 15rem;
    line-height: 125%;
    width: 100%;
    margin-bottom: 31rem;
}
.clean-footer__menu-item{
    font-size: 13rem;
    display: flex;
    width: calc(100% / 2);
    margin-bottom: 21rem;
    padding-right: 10rem;
}
.clean-footer__menu-item::before{
    display: block;
    content: '';
    background-image: url(../image/icons/blue-button-arrow.svg);
    background-size: contain;
    background-repeat: no-repeat;
    width: 8rem;
    height: 8rem;
    margin-right: 6rem;
    flex-shrink: 0;
    transform: rotate(45deg);
    position: relative;
    top: 5rem;
}
.clean-footer__menu-link{
    color: var(--elBlack);
    width: 100%;
}
.clean-footer__menu-link:hover{
    opacity: 0.5;
}
.clean-footer__qualification{
    font-size: 13rem;
    background-color: var(--elLightBlue);
    padding: 20rem;
}
.clean-footer__qualification-title{
    margin-bottom: 12rem;
}
.clean-footer__qualification-item{
    padding: 0 10rem;
    margin-bottom: 10rem;
    line-height: 130%;
}
.clean-footer__qualification-item:last-of-type{
    margin-bottom: 0;
}
.clean-copyright{
    display: flex;
    align-items: center;
    justify-content: flex-end;
    width: 100%;
    height: 32rem;
    padding: 0 20rem;
}
@media screen and (min-width: 600px){
    .clean-footer{
        max-width: 1360rem;
        min-width: 1080rem;
        margin: 80rem auto 0;
    }
    .clean-footer-info{
        width: 960rem;
        height: 208rem;
        border-radius: 10rem;
        padding: 0;
        margin: 0 auto 80rem;
    }
    .clean-footer-info-answer-img{
        width: 162rem;
        margin-bottom: 8rem;
    }
    .clean-footer-info-text{
        font-size: 24rem;
        line-height: 180%;
        margin-bottom: 40rem;
    }
    .clean-footer-info__list{
        margin: 0;
        padding-left: 20rem;
    }
    .clean-footer-info__item{
        width: 90rem;
        height: 44rem;
    }
    .clean-footer-info__area{
        position: relative;
        top: -60rem;
        display: flex;
        align-items: flex-end;
        justify-content: center;
    }
    .clean-footer-info__direct-area{
        margin-bottom: 0;
    }
    .clean-footer-info__direct-link{
        font-size: 52rem;
    }
    .clean-footer-info__tel{
        margin-bottom: 8rem;
    }
    .clean-footer-info__tel::before{
        width: 32rem;
        height: 32rem;
    }
    .clean-footer-info__tel-text{
        font-size: 22rem;
    }
    .clean-footer-info__tel-link{
        font-size: 45rem;
    }
    .clean-footer-info__time{
        width: 440rem;
        margin-bottom: 0;
    }
    .clean-footer-info__reception{
        width: 320rem;
        letter-spacing: 0.1em;
    }
    .clean-footer-info__reception-text{
        margin-right: 15rem;
    }
    .clean-footer-info__reception-text::after{
        margin-left: 15rem;
    }
    .clean-footer-info__reception-text-orange{
        width: 120rem;
        letter-spacing: 0.1em;
    }
    .clean-footer-info__24h{
        width: 180rem;
        margin-bottom: 8rem;
    }
    .clean-footer__menu-area{
        border-top: 1rem solid var(--elLightGray);
        display: flex;
        justify-content: space-between;
        max-width: 1360rem;
        min-width: 1080rem;
        padding: 30rem 40rem 0;
        margin: 0 auto 30rem;
    }
    .clean-footer__nav-area{
        display: flex;
        justify-content: space-between;
        max-width: 670rem;
    }
    .clean-footer__menu-block{
        margin-right: 60rem;
        max-width: 360rem;
    }
    .clean-footer-logo{
        width: 248.8rem;
        margin-bottom: 20rem;
    }
    .clean-footer__address-block{
        padding: 0;
    }
    .clean-footer__operation-area{
        border: none;
        padding: 0;
    }
    .clean-footer__operation-text{
        padding: 0;
    }
    .clean-footer__nav-menu{
        display: flex;
        max-width: 538rem;
    }
    .clean-footer__menu-list-block{
        padding: 0;
        margin-right: 10rem;
    }
    .clean-footer__menu-list-block:last-of-type{
        margin-right: 60rem;
    }
    .clean-footer__title{
        width: fit-content;
    }
    .clean-footer__menu-list{
        display: block;
        margin: 0;
    }
    .clean-footer__menu-item{
        font-size: 15rem;
        width: 120rem;
    }
    .clean-footer__menu-item--w180{
        width: 180rem;
    }
    .clean-footer__menu-item::before{
        margin-right: 8rem;
    }    
    .clean-footer__qualification{
        max-width: 462rem;
        width: fit-content;
        height: fit-content;
        padding: 12rem 20rem;
    }
    .clean-footer__qualification-list{
        display: flex;
        justify-content: space-between;
        flex-wrap: wrap;
        margin-left: 10rem;
    }
    .clean-footer__qualification-item{
        font-size: 10rem;
        line-height: 130%;
        width: 200rem;
        padding: 0;
        margin-bottom: 6rem;
    }
    .clean-copyright{
        height: fit-content;
        padding: 0 40rem;
        margin-bottom: 20rem;
    }
}


/* フッターバナー */
.footer-banner__list{
    width: 335rem;
    display: flex;
    flex-direction: column;
    margin: 60rem auto 0;
}
.footer-banner__list--front{
    padding-top: 30rem;
    border-top: 1rem solid var(--elLightGray);
    margin: 0 auto 60rem auto;
}
.footer-banner__item{
    width: 100%;
    margin-bottom: 21rem;
}
.footer-banner__item--front{
    width: 100%;
    margin-bottom: 15rem;
}
.footer-banner__item--front:last-of-type{
    margin-bottom: 0;
}
.footer-banner__link{
    display: block;
}
.footer-banner__link:hover{
    opacity: 0.5;
}
.footer-banner__img{
    display: block;
    width: 100%;
}
@media screen and (min-width: 600px){
    .footer-banner__list{
        width: 960rem;
        flex-direction: row;
        flex-wrap: wrap;
        margin: 80rem auto 0
    }
    .footer-banner__list--front{
        width: 100%;
        flex-direction: column;
        margin: 30rem auto 0 auto;
    }    
    .footer-banner__item{
        width: 306rem;
        margin-right: 21rem;
    }
}

/* -----トップページ----- */
.top-block{
    margin: 44rem auto 50rem;
}
.top-block:first-of-type{
    margin-top: 0;
}
.top-block-2{
    margin-bottom: 40rem;
}
.top-block-2:last-of-type{
    margin-bottom: 0;
}
.top-image-area{
    margin-bottom: 46rem;
}
.top-image-area__image{
    display: block;
    width: 100%;
}
.top-section-title{
    text-align: center;
    margin: 0 auto;
    margin-bottom: 20rem;
    color: var(--elAccentColour);
}
.top-section-text{
    line-height: 1.5em;
    margin-bottom: 25rem;
}
@media screen and (min-width: 600px){
    .top-pc-contents-wrap{
        display: flex;
        justify-content: space-between;
        width: 1010px;
        margin: 0 auto;
    }
    .top-block{
        margin: 0 auto 100rem;
    }
    .top-block-2{
        margin-bottom: 40rem;
    }
    .top-image-area{
        max-width: 1440rem;
        min-width: 1080rem;
        margin: 0 auto 91rem;
    }
    .top-section-title{
        text-align: start;
        margin: 0;
        width: 100%;
        padding-bottom: 10rem;
        border-bottom: 1rem solid var(--elLightGray);
        margin-bottom: 25rem;
    }
    .top-section-text{
        font-size: 16rem;
        line-height: 2em;
        margin-bottom: 30rem;
    }
}

/* サービス一覧 */
.top-service__item{
    display: block;
    border-radius: 20rem;
    box-shadow: 5rem 15rem 20rem rgba(0, 0, 0, .15);
    margin-bottom: 20rem;
}
.top-service__item:hover{
    opacity: 0.5;
    transition: .2s;
    box-shadow: 8rem 18rem 20rem rgba(0, 0, 0, .3);
}
.top-service__link{
    display: block;
}
.top-service__item:last-of-type{
    margin-bottom: 0;
}
.top-service__img-area{
    position: relative;
    border-radius: 20rem 20rem 0 0;
}
.top-service__img-area--e-clean{
    position: relative;
}
.top-service__title{
    display: flex;
    flex-direction: column;
    align-items: center;
    position: absolute;
    top: 20rem;
    line-height: 120%;
    font-weight: bold;
    color: var(--elWhite);
    text-align: center;
}
.top-service__title::before{
    display: block;
    content: '';
    width: 60rem;
    height: 30rem;
    background-size: contain;
    background-repeat: no-repeat;
    flex-shrink: 0;
}
.top-service__title--funeral::before{
    margin-bottom: 24rem;
    background-image: url(../image/icons/categories/funerals-icon-white.svg);
}
.top-service__title--grave::before{
    margin-bottom: 16rem;
    background-image: url(../image/icons/categories/grave-icon-white.svg);
}
.top-service__title--funeral{
    line-height: 100%;
    letter-spacing: 0.2em;
    font-size: 38rem;
    left: calc((335rem - 137rem) / 2);
}
.top-service__title--grave{
    font-size: 30rem;
    left: calc((335rem - 210rem) / 2);
}
.top-service__title-img--e-clean{
    display: block;
    width: 275rem;
    height: 100rem;
    position: absolute;
    top: 30rem;
    left: 30rem;
}
.top-service__img{
    display: block;
    width: 100%;
    border-radius: 20rem 20rem 0 0;
}
.top-service__data-area{
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
    border-radius: 0 0 20rem 20rem;
}
.top-service__data-area--funeral{
    background-color: #A493C2;
}
.top-service__data-area--grave{
    background-color: #8ACAC8;
}
.top-service__data-area--e-clean{
    background-color: #85B6FF;
}
.top-service__btn{
    display: flex;
    align-items: center;
    justify-content: center;
    position: absolute;
    top: -20rem;
    width: 150rem;
    height: 40rem;
    font-size: 16rem;
    font-weight: bold;
    letter-spacing: 0.05;
    border-radius: 20rem;
    background-color: var(--elWhite);
    color: var(--elBlack);
}
.top-service__text{
    font-size: 20rem;
    line-height: 125%;
    text-align: center;
    color: var(--elWhite);
    padding: 30rem 0;
}
.top-service__text--e-clean{
    line-height: 150%;
}
@media screen and (min-width: 600px){
    .top-service__list{
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
    }
    .top-service__item{
        width: calc((100% - 20rem) / 2);
        max-width: 365rem;
    }
    .top-service__title{
        width: fit-content;
        height: fit-content;
    }
    .top-service__title--funeral::before{
        margin-bottom: 30rem;
    }
    .top-service__title--grave::before{
        margin-bottom: 12rem;
    }
    .top-service__title-img--e-clean{
        width: 336rem;
        height: 112rem;    
        top: 40rem;
        left: 35rem;
    }
    .top-service__title--funeral{
        top: 0;
        bottom: 0;
        left: 0;
        right: 0;
        margin: auto;
    }
    .top-service__title--grave{
        font-size: 38rem;
        top: 0;
        bottom: 0;
        left: 0;
        right: 0;
        margin: auto;
    }
    .top-service__text{
        line-height: 150%;
        padding: 34rem 0 30rem;
    }
    /* 遺品整理パネル */
    .top-service__item--e-clean{
        width: 100%;
        max-width: none;
    }
    .top-service__link--e-clean{
        display: flex;
        align-items: center;
        justify-content: center;
    }
    .top-service__img-area--e-clean{
        width: 407rem;
        border-radius: 20rem 0 0 20rem;
    }
    .top-service__title--e-clean{
        font-size: 38rem;
        top: 0;
        bottom: 0;
        left: 0;
        right: 0;
        margin: auto;
    }
    .top-service__img--e-clean{
        border-radius: 20rem 0 0 20rem;
    }
    .top-service__data-area--e-clean{
        width: 343rem;
        height: 220rem;
        border-radius: 0 20rem 20rem 0;
    }
    .top-service__text--e-clean{
        text-align: start;
        font-size: 20rem;
        padding: 45rem 30rem;
    }
}

/* 地図 */
.top-map-wrap{
    width: 100vw;
    height: 440rem;
    position: relative;
    left: -20rem;
}
.top-map-wrap iframe {
    width: 100%;
    height: 100%;
}
@media screen and (min-width: 600px){
    .top-map-wrap{
        width: 100%;
        height: 375rem;
        position: static;
        margin-bottom: 98rem;
    }
}

/* 注目のキーワードで探す */
.top-h3-title-area{
    width: 100%;
    margin: 0 auto 20rem;
    border-bottom: 1rem solid var(--elLightGray);
}
.top-h3-title{
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
    width: fit-content;
    font-size: 24rem;
    font-weight: bold;
    line-height: 120%;
    letter-spacing: 0.05em;
    padding-bottom: 6rem;
}
.top-h3-title::after{
    content: '';
    display: block;
    position: absolute;
    bottom: -1rem;
    left: 0;
    width: 100%;
}
.top-h3-title--funeral::after{
    border-bottom: 4rem solid var(--elFuneral);
}
.top-h3-title--grave::after{
    border-bottom: 4rem solid var(--elGrave);
}
.top-h3-title::before{
    display: block;
    content: '';
    background-size: contain;
    background-repeat: no-repeat;
    flex-shrink: 0;
    margin-right: 8rem;
}
.top-h3-title--funeral::before{
    width: 32rem;
    height: 21.6rem;
    background-image: url(../image/icons/categories/funeral-icon.svg);
}
.top-h3-title--grave::before{
    width: 28rem;
    height: 25.2rem;
    background-image: url(../image/icons/categories/grave-icon.svg);
}
.top-topics-list{
    margin-bottom: 30rem;
}
/* 注目のキーワードで探す: パネルリスト */
.hotkeyword__list{
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    margin-bottom: 30rem;
}
.hotkeyword__item{
    width: calc((100% - 10rem) / 2);
    border-radius: 10rem;
    box-shadow: 2rem 10rem 15rem rgba(0, 0, 0, .15);
}
.hotkeyword__item:hover{
    opacity: 0.5;
    transition: .2s;
    box-shadow: 5rem 13rem 15rem rgba(0, 0, 0, .3);
}
.hotkeyword__img{
    display: block;
    width: 100%;
    height: 104rem;
    border-radius: 10rem 10rem 0 0;
    object-fit: cover;
}
.hotkeyword__data-area{
    display: flex;
    align-items: center;
    justify-content: center;
    height: 52rem;
    padding: 0 12rem;
    border-radius: 0 0 10rem 10rem;
    background-color: var(--elWhite);
}
.hotkeyword__text{
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 100%;
    font-size: 14rem;
    line-height: 110%;
    font-weight: bold;
    color: var(--elBlack);
}
.hotkeyword__text::after{
    display: block;
    width: 7rem;
    height: 12rem;
    background-image: url(../image/icons/right-arrow.svg);
    content: '';
    background-size: contain;
    background-repeat: no-repeat;
    flex-shrink: 0;
    margin-left: 5rem;
}
@media screen and (min-width: 600px){
    .top-h3-title-area{
        width: 100%;
        margin: 0 auto 29rem;
        border-bottom: none;
    }
    .top-h3-title{
        position: static;
        padding-bottom: 0;
    }
    .top-h3-title::after{
        display: none;
    }
    .top-topics-list{
        margin-bottom: 36rem;
    }
    /* 注目のキーワードで探す: パネルリスト */
    .hotkeyword__list{
        margin-bottom: 36rem;
    }
    .hotkeyword__item{
        width: calc((100% - 20rem) / 3);
        box-shadow: 5rem 10rem 15rem rgba(0, 0, 0, .15);
    }
    .hotkeyword__img{
        height: 132rem;
    }
    .hotkeyword__data-area{
        height: auto;
        padding: 17rem 18.3rem;
    }
}

/* バナーエリア */
.bnr-area-contact{
    margin-bottom: 30rem;
}
.bnr-area-contact-wrap{
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    width: 100%;
    padding: 20rem 0;
    background-color: var(--elAssortColour);
}
.bnr-area-contact__title{
    font-size: 18rem;
    letter-spacing: 0.02em;
    font-weight: bold;
    margin-bottom: 16rem;
}
.bnr-area-contact__text{
    font-size: 14rem;
    line-height: 150%;
    text-align: center;
    margin-bottom: 20rem;
}
@media screen and (min-width: 600px){
    .bnr-area{
        display: block;
        width: 226rem;
        flex-grow: 1;
        flex-shrink: 0;
        margin-left: 34rem;
    }
    .bnr-area-contact-wrap{
        padding: 20rem 10rem;
    }
    .bnr-area-contact__text{
        text-align: left;
    }    
}


/* -----トピックス詳細ページ----- */
.sgl-topics{
    margin-bottom: 50rem;
}
.sgl-topics-wrap{
    margin-bottom: 36rem;
}
.sgl-topics__title{
    font-size: 32rem;
    font-weight: bold;
    line-height: 130%;
    letter-spacing: 0.05em;
    margin-bottom: 24rem;
}
.sgl-topics__main-img{
    max-width: 100vw;
    margin-right: calc(50% - 50vw);
    margin-left: calc(50% - 50vw);
    height: auto;
    margin-bottom: 40rem;
}
.sgl-topics__data-area{
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    margin-bottom: 20rem;
}
.sgl-topics__date{
    font-size: 16rem;
    line-height: 150%;
    font-family: var(--ubuntu);
    font-weight: 300;
    color: var(--elDarkGray);
    margin-right: 20rem;
    margin: 0 20rem 10rem 0;
}
.sgl-topics-back-btn{
    margin: 0 auto 50rem;
}
@media screen and (min-width: 600px){
    .sgl-topics{
        margin-bottom: 80rem;
    }
    .sgl-topics-wrap{
        margin-bottom: 60rem;
    }
    .sgl-topics__title{
        font-size: 36rem;
        line-height: 150%;
        margin-bottom: 28rem;
    }
    .sgl-topics__main-img{
        max-width: none;
        width: 100%;
        height: auto;
        margin: 0 0 100rem 0;
    }
    .sgl-topics__data-area{
        margin-bottom: 30rem;
    }
    .sgl-topics-back-btn{
        margin: 0 auto 80rem;
    }
}

/* トピックス詳細ページ: 管理画面からのWysiWygスタイル定義 */
.sgl-topics__text-area{
    font-size: 16rem;
    line-height: 160%;
    text-align: justify;
}
@media screen and (min-width: 600px){
    .sgl-topics__text-area{
        line-height: 150%;
    }
}

/* テキスト・リンク */
.sgl-topics__text-area p{
    font-size: 16rem;
    line-height: 160%;
    text-align: justify;
    margin-bottom: 24rem;
}
.sgl-topics__text-area a{
    display: block;
    color: var(--elAccentColour);
    font-size: 16rem;
    line-height: 150%;
    text-decoration: underline;
}
@media screen and (min-width: 600px){
    .sgl-topics__text-area p{
        line-height: 150%;
        margin-bottom: 28rem;
    }
}

/* 見出し */
/* h1 */
.sgl-topics__text-area h1{
    font-size: 28rem;
    line-height: 140%;
    letter-spacing: 0.05em;
    font-weight: bold;
    margin-bottom: 32rem;
}
/* h2 */
.sgl-topics__text-area h2{
    display: flex;
    align-items: flex-start;
    font-size: 24rem;
    font-weight: bold;
    letter-spacing: 0.05em;
    line-height: 140%;
    width: 100%;
    margin-bottom: 32rem;
}
.sgl-topics__text-area h2::before{
    position: relative;
    display: inline-block;
    top: -0.5rem;
    content: '';
    background-color: var(--elAccentColour);
    flex-shrink: 0;
    width: 5rem;
    height: 34rem;
    margin-right: 12rem;
}
/* h3 */
.sgl-topics__text-area h3{
    font-size: 20rem;
    line-height: 140%;
    letter-spacing: 0.02em;
    font-weight: bold;
    color: var(--elAccentColour);
    margin-bottom: 26rem;
}
@media screen and (min-width: 600px){
    /* h1 */
    .sgl-topics__text-area h1{
        line-height: 150%;
        margin-bottom: 40rem;
    }
    /* h2 */
    .sgl-topics__text-area h2{
        margin-bottom: 30rem;
    }
    /* h3 */
    .sgl-topics__text-area h3{
        line-height: 150%;
    }
}

/* リスト */
.sgl-topics__text-area ul{
    font-size: 16rem;
    line-height: 150%;
    margin-bottom: 27rem;
    padding-left: .5em;
}
.sgl-topics__text-area ul > li{
    margin-bottom: 16rem;
    padding-left: 1em;
	text-indent: -1em;
}
.sgl-topics__text-area ul > li:last-of-type{
    margin-bottom: 0;
}
.sgl-topics__text-area ul > li::before{
    content: '';
    display: inline-block;
    position: relative;
    top: -0.2em;
    width: 6rem;
    height: 6rem;
    background: var(--elAccentColour);
    border-radius: 50%;
    margin-right: 10rem;
}
.sgl-topics__text-area ol{
    font-size: 16rem;
    line-height: 150%;
    margin-bottom: 27rem;
    padding-left: .5em;
    padding-right: 1.5em;
    counter-reset: item;
}
.sgl-topics__text-area ol > li{
    margin-bottom: 16rem;
    padding-left: 2em;
	text-indent: -1em;
    text-align: justify;
}
.sgl-topics__text-area ol > li:last-of-type{
    margin-bottom: 0;
}
.sgl-topics__text-area ol > li::before{
    counter-increment: item;
    content: counter(item)'.';
    display: inline-block;
    position: relative;
    margin-right: 5rem;
    font-family: var(--ubuntu);
}

/* 画像 */
.sgl-topics__text-area img{
    display: inline-block;
}
.sgl-topics__text-area .alignnone{
	max-width: 100%;
    height: auto;
}
.sgl-topics__text-area .size-large{
    max-width: 100%;
    height: auto;
}
.sgl-topics__text-area .size-medium{
    max-width: calc((100% - 10rem) / 2);
    height: auto;
    margin-right: 10rem;
}
.sgl-topics__text-area .size-medium:nth-of-type(2n){
    margin-right: 0;
}
.sgl-topics__text-area .size-thumbnail{
    max-width: 100%;
    height: auto;
}
.sgl-topics__text-area .size-full{
    max-width: 100vw;
    margin-right: calc(50% - 50vw);
    margin-left: calc(50% - 50vw);
    height: auto;
}
.sgl-topics__text-area .wp-caption{
    width: fit-content;
}
.sgl-topics__text-area .wp-caption > img{
    margin-bottom: 10rem;
}
.sgl-topics__text-area .wp-caption-text{
    font-size: 12rem;
    line-height: 150%;
    color: var(--elDarkGray);
}
.wp-caption, .alignnone{
	max-width: 100%;
    height: auto;
}
@media screen and (min-width: 600px){
    .sgl-topics__text-area .size-large{
        max-width: none;
        width: 640rem;
    }
    .sgl-topics__text-area .size-medium{
        max-width: none;
        width: 300rem;
        margin-right: 10rem;
    }
    .sgl-topics__text-area .size-medium:nth-of-type(2n){
        margin-right: 10rem;
    }    
    .sgl-topics__text-area .size-full{
        max-width: none;
        width: 100%;
        height: auto;
        margin: 0;
    }
}

/* 画像の位置関連 */
.sgl-topics__text-area .aligncenter{
    display: block;
    margin: 0 auto;
}
.sgl-topics__text-area .alignright{
    display: block;
    margin-left: auto;
    margin-right: 0;
}
.sgl-topics__text-area .alignleft{
    display: block;
    margin-right: auto;
    margin-left: 0;
}

/* 引用 */
.sgl-topics__text-area blockquote{
    margin-bottom: 34rem;
    border: 2rem solid var(--elLightGray);
    border-radius: 5rem;
    padding: 20rem;
}
.sgl-topics__text-area blockquote > p{
    font-size: 16rem;
    line-height: 160%;
    margin-bottom: 1em;
    text-align: justify;
}
.sgl-topics__text-area blockquote > p:last-of-type{
    margin-bottom: 0;
}
@media screen and (min-width: 600px){
    .modal-open:hover{
        cursor: pointer;
    }
}

/* イーライフクリーン */
/* トップ */
.clean-top-img-area{
    margin-bottom: 50rem;
    width: 100vw;
    margin-right: calc(50% - 50vw);
    margin-left: calc(50% - 50vw);
}
.foreword{
    width: var(--contentsWidth);
    margin: 0 auto 50rem;
}
.foreword__image{
    display: block;
    width: 41.28rem;
    margin: 0 auto 12rem;
}
.foreword__title{
    font-size: 28rem;
    font-weight: 700;
    line-height: 1.5;
    width: 100%;
    text-align: center;
    margin-bottom: 25rem;
}
.foreword__text{
    line-height: 180%;
    font-size: 20rem;
    text-align: start;
}
.foreword__text--bold{
    font-weight: bold;
}
.service{
    width: var(--contentsWidth);
    margin: 0 auto 100rem;
}
.service__title{
    font-size: 28rem;
    font-weight: 700;
    text-align: center;
    margin-bottom: 26rem;
    line-height: 150%;
}
.clean-service__title{
    font-size: 32rem;
    font-weight: 700;
    color: #FFFFFF;
    width: 100%;
    text-align: center;
    position: absolute;
    top: 84rem;
}
.clean-service__data-area--organize-relics{
    background-color: var(--elELifeCleanList);
}
.clean-service__data-area--special-cleaning{
    background-color: #72B876;
}
.clean-service__data-area--demolition{
    background-color: #EBC342;
}
.clean-service__text{
    padding: 36rem 20rem 24rem;
    font-size: 18rem;
    text-align: left;
    min-height: 141rem;
}
.feature{
    background-color: var(--elELifeCleanBk);
    padding: 50rem 20rem;
    width: 100vw;
    margin-right: calc(50% - 50vw);
    margin-left: calc(50% - 50vw);
}
.feature__title{
    font-size: 28rem;
    font-weight: 700;
    text-align: center;
    line-height: 170%;
    margin-bottom: 25rem;
}
.feature__title--num{
    font-size: 60rem;
    color: var(--elAccentColour);
    font-family: var(--ubuntu);
    padding: 0 5rem;
}
.feature__title--accent{
    font-size: 34rem;
    color: var(--elAccentColour);
    padding: 0 0 0 5rem;
}
.feature__title--accent::after{
    content: '';
    display: inline-block;
    background-image: url(../image/exclamation_mark.svg);
    background-position: center;
    background-size: contain;
    background-repeat: no-repeat;
    width: 30rem;
    height: 30rem;
    margin-left: 16rem;
    position: relative;
    top: -5rem;
}
.feature__list{
    display: flex;
    flex-direction: column;
    width: var(--contentsWidth);
    margin: 0 auto 50rem;
}
.feature__list::after{
    content: '';
    display: block;
    background-image: url(../image/clean-arrow.svg);
    background-position: center;
    background-size: contain;
    background-repeat: no-repeat;
    width: 22rem;
    height: 13rem;
    margin: 40rem auto 0;
}
.feature__item{
    margin-bottom: 30rem;
}
.feature__item:last-of-type{
    margin-bottom: 0;
}
.feature__text-num{
    color: var(--elAccentColour);
    font-size: 32rem;
    font-family: var(--ubuntu);
    font-weight: 500;
    margin-bottom: 5rem;
    text-align: center;
}
.feature__text{
    font-size: 20rem;
    font-weight: 700;
    margin-bottom: 12rem;
    text-align: center;
}
.feature-imag-area{
    width: 160rem;
    height: 160rem;
    background-color: #FFFFFF;
    display: flex;
    justify-content: center;
    align-items: center;
    border-radius: 50%;
    margin: 0 auto;
}
.feature__img{
    width: 77.73rem;
    height: 71.91rem;
    display: block;
}
.feature-detail__list{
    width: var(--contentsWidth);
}
.feature-detail__item{
    margin-bottom: 50rem;
}
.feature-detail__item:last-of-type{
    margin-bottom: 0;
}
.title-area{
    display: flex;
    flex-direction: column;
    align-items: center;
    margin-bottom: 20rem;
}
.title-area__img{
    width: 60rem;
    height: 48rem;
    display: block;
    margin-bottom: 5rem;
}
.title-area__text{
    font-size: 24rem;
    font-weight: 700;
    text-align: center;
    line-height: 150%;
    letter-spacing: 0.1em;
}
.category-tag_list{
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    margin-bottom: 20rem;
}
.category-tag_item{
    border: 1rem solid var(--elLightGray);
    background-color: #FFFFFF;
    border-radius: 5rem;
    font-size: 14rem;
    font-family: var(--kiwiMaru);
    font-weight: 300;
    text-align: center;
    width: 109rem;
    padding: 5rem 0 7rem;
}
.text-area{
    margin-bottom: 20rem;
}
.text-area__text--margin{
    margin-bottom: 12rem;
}
.information-area{
    background-color: #FFFFFF;
    width: 100%;
    height: fit-content;
    padding: 30rem 15rem;
    border-radius: 10px;
}
.information-area__img{
    width: 273.48rem;
    height: 44rem;
    display: flex;
    margin: 0 auto 16rem;
}
.information-content-area{
    width: 305rem;
    height: 273rem;
    padding: 0 10rem;
    background-color: var(--elELifeCleanBk);
    margin-bottom: 10rem;
}
.information-area__capabilities-list{
    padding: 20rem 0 0;
    margin-bottom: 10.25rem;
    display: flex;
    justify-content: space-between;
}
.capabilities__img{
    display: flex;
    width: 140rem;
}
.information-area__permission-list{
    margin-bottom: 12rem;
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
}
.information-area__permission-item{
    width: 140rem;
    display: flex;
    justify-content: center;
    align-items: center;
    line-height: 120%;
    color: var(--elWhite);
    background-color: #3C8F41;
    padding: 4rem 6rem;
    font-size: 12rem;
    min-height: 36rem;
    border: 1rem solid var(--elLightGray);
    border-radius: 2rem;
}
.information-area__sub-text{
    font-size: 12rem;
    line-height: 180%;
    color: var(--elDarkGray);
}
.information-area__border-text{
    font-size: 14rem;
    line-height: 150%;
    padding: 16rem 10rem;
    border: 2rem solid var(--elELifeCleanSpBorder);
}
.feature-detail__text--margin{
    margin-bottom: 24rem;
}
.information-area__credit-area{
    background-color: #FFFFFF;
    display: flex;
    align-items: center;
    padding: 10rem 16rem;
    width: fit-content;
    border: 1rem solid var(--elLightGray);
}
.information-area__credit-area-img{
    display: block;
    width: 50rem;
    height: 24rem;
    margin-right: 10rem;
}
.information-area__credit-area-text{
    font-size: 12rem;
    font-weight: 500;
}
.information-area__list{
    width: 261rem;
    margin: 0 auto ;
}
.information-area__item{
    background-color: var(--elELifeCleanOreng);
    color: var(--elAccentOrange);
    padding: 10rem 0;
    margin-bottom: 5rem;
    text-align: center;
    font-size: 16rem;
}
.information-area__item:last-of-type{
    margin-bottom: 0;
}
.relief-area__img{
    width: 305rem;
    height: 204.18rem;
    display: block;
}
.employee__img{
    width: 100%;
    display: block;
}
.information-area__text{
    font-size: 14rem;
    line-height: 150%;
    margin-bottom: 8rem;
}
@media screen and (min-width: 600px){
    .clean-top-img-area{
        margin-bottom: 96rem;
        width: 100%;
        margin-right:  auto;
        margin-left:  auto;
    }
    .foreword{
        width: var(--contentsWidth);
        margin: 0 auto 100rem;
    }
    .foreword__title{
        display: flex;
        justify-content: center;
        margin-bottom: 50rem;
    }
    .foreword__text{
        line-height: 200%;
        text-align: center;
    }  
    .service{
        width: var(--contentsWidth);
        margin-right: auto;
        margin-left: auto;
    }
    .service__title{
        margin-bottom: 35rem;
    }
    .service__item{
        width: 306rem;
        margin-bottom: 0;
    }
    .feature{
        background-color: var(--elELifeCleanBk);
        padding: 100rem 0;
        margin-right: 0;
        margin-left: 0;
        width: 100%;
    }
    .feature-wrap{
        max-width: 1440rem;
        margin: 0 auto;
    }
    .feature__title{
        width: var(--contentsWidth);
        margin: 0 auto 35rem;
    }
    .feature__title--num{
        font-size: 72rem;
    }
    .feature__title--accent{
        font-size: 36rem;
    }
    .feature__title--accent::after{
        top: -10rem;
    }
    .feature__list{
        flex-direction: row;
        flex-wrap: wrap;
        margin: 0 auto 120rem;
    }
    .feature__item{
        width: 307rem;
        padding: 0 30rem 12rem;
        margin-right: 19.5rem;
        margin-bottom: 0;
        display: flex;
        flex-direction: column;
    }
    .feature__item:last-of-type{
        margin-right: 0;
    }
    .feature__text-num{
        margin-bottom: 8rem;
    }
    .feature__text{
        margin-bottom: 0;
    }
    .feature-imag-area{
        width: 200rem;
        height: 200rem;    
        order: -1;
        margin-bottom: 16rem;
    }
    .feature__img{
        width: 120rem;
        height: 111rem;
        display: block;
    }    
    .feature-detail__list{
        margin: 0 auto;
    }
    .feature-detail__item{
        display: flex;
        justify-content: space-between;
        margin-bottom: 120rem;
    }
    .feature-detail__item--flex{
        flex-direction: row-reverse;
    }
    .feature-detail__text-area{
        width: 480rem;
    }
    .title-area{
        align-items: flex-start;
        flex-direction: row;
        margin-bottom: 40rem;
    }
    .title-area__img{
        margin-bottom: 0;
        margin-right: 20rem;
    }
    .title-area__text{
        text-align: start;
    }
    .text-area{
        margin-bottom: 0;
    }
    .text-area__text--margin{
        margin-bottom: 20rem;
    }
    .feature-detail--text-height{
        line-height: 200%;
    }    
    .information-area{
        width: 420rem;
        padding: 30rem 30rem 40rem;
    }
    .information-area__img{
        width: 310.77rem;
        height: 50rem;
        /* margin: 0 auto 20rem; */
    }    
    .information-content-area{
        width: 360rem;
        height: 278rem;
        padding: 0 16rem;
    }
    .information-area__capabilities-list{
        /* padding: 40rem 0 0; */
        margin-bottom: 12rem;
    }.capabilities__img{
        width: 160rem;
    }
    .information-area__permission-list{
        margin-bottom: 17rem;
    }
    .information-area__permission-item{
        width: 160rem;
    }
    .information-area__border-text{
        padding: 16rem 16rem;
    } 
    .information-area__list{
        width: 320rem;
    }
    .relief-area__img{
        width: 100%;
        height: 198rem;
        object-position: center;
    }
}


/* プライバシーポリシー・私たちについて */
.page-wrap{
    margin-bottom: 86rem;
}
.block-2--about:last-of-type{
    margin-bottom: 50rem;
}
/* 見出し */
.page__h1{
    margin: 0 auto 40rem;
    text-align: center;
}
.page__h2{
    font-size: 28rem;
    font-weight: bold;
    line-height: 140%;
    letter-spacing: 0.05em;
    margin-bottom: 26rem;
    text-align: center;
}
.page__h3{
    font-size: 20rem;
    line-height: 140%;
    margin-bottom: 26rem;
    letter-spacing: 0.02em;
    color: var(--elAccentColour);
    font-weight: bold;
}
/* テキスト */
.page__top-text{
    font-size: 18rem;
    line-height: 1.6em;
    margin-bottom: 24rem;
}
.page__text{
    font-size: 16rem;
    line-height: 1.6em;
    text-align: justify;
    margin-bottom: 24rem;
}
.page__link{
    display: block;
    color: var(--elAccentColour);
    font-size: 16rem;
    line-height: 1.6em;
    text-decoration: underline;
    margin-bottom: 24rem;
}
.page__annotation{
    color: var(--elDarkGray);
    font-size: 12rem;
    line-height: 1.5em;
    letter-spacing: 0.05em;
}
/* リスト */
.page__list{
    font-size: 16rem;
    line-height: 1.5em;
    margin-bottom: 24rem;
}
.page__item{
    margin-bottom: 12rem;
    padding-left: 1em;
	text-indent: -1em;
}
.page__item:last-of-type{
    margin-bottom: 0;
}
.page__item::before{
    content: '';
    display: inline-block;
    position: relative;
    top: -0.25em;
    width: 6rem;
    height: 6rem;
    background: var(--elAccentColour);
    border-radius: 50%;
    margin-right: 10rem;
}
.page__order-list{
    font-size: 16rem;
    line-height: 1.5em;
    margin-bottom: 24rem;
    counter-reset: pageitem;
}
.page__order-item{
    margin-bottom: 12rem;
    padding-left: 2em;
	text-indent: -1em;
}
.page__order-item:last-of-type{
    margin-bottom: 0;
}
.page__order-item::before{
    counter-increment: pageitem;
    content: counter(pageitem)'）';
    display: inline-block;
    position: relative;
    margin-right: 5rem;
}

@media screen and (min-width: 600px) {
    .page-wrap{
        margin-bottom: 180rem;
    }
    .block-2--about:last-of-type{
        margin-bottom: 60rem;
    }    
    /* 見出し */
    .page__h1{
        margin: 0 auto 80rem;
    }
    .page__h2{
        line-height: 150%;
        margin-bottom: 20rem;
        text-align-last: left;
    }
    .page__h3{
        margin-bottom: 10rem;
    }
    /* テキスト */
    .page__top-text{
        font-size: 22rem;
        line-height: 1.8em;
    }    
    .page__text{
        line-height: 180%;
    }
    .page__link{
        line-height: 1.8em;
    }
    .page__list{
        line-height: 180%;
        margin-bottom: 28rem;
    }
}

@media screen and (min-width: 600px){
    .page__text-link-area{
        display: flex;
    }
    .page__link--flex{
        margin-left: 10rem;
    }
}

/* プライバシーポリシー・私たちについて: 共通margin */
.page-mb--50{
    margin-bottom: 50rem;
}
.page-mb--40{
    margin-bottom: 40rem;
}
.page-mb--0{
    margin-bottom: 0;
}