/* Footer */
@import url('https://fonts.googleapis.com/css2?family=Noto+Serif+JP:wght@200..900&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Zen+Kaku+Gothic+Antique:wght@700&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100..900&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400&display=swap');

.main-header{
    background: rgba(255, 255, 255, 0.7);
}
#footer{
    background-color: #FFFFFF;
}
.sidebar-wrapper{
    border: 0;
}
.sidebar-wrapper > div{
    padding: 1rem;
}
.side-contents{
    min-width: 17.5rem;
}
#single-post .container{
    background-color: #FFFFFF;
}
.first_footer{
    background-repeat: no-repeat;
    background-size: cover;
    background-position: top center;
    position: relative;
}
.first_ttt{
    text-align: center;
    color: #ffffff;
}
.ftts{
    text-align: center;
    color: #222222;
    border-bottom: 1px solid #222222;
}
.fcts{
    text-align: center;
    color: #222222;
    font-weight: 500;
}
.wrap-first-footer .first_ttt{
    border-bottom: 0!important;
    padding: 0!important;
}
.f_list_f li a{
    text-align: center;
    letter-spacing: 0.1em;
    color: #ffffff;
    display: block;
    border-radius: 0.375rem;
    background: #D48154;
}
.ft_itema, .ft_itemb{
    background: #ffffff;
}
.f_list_f{
    display: flex;
    justify-content: space-between;
}
.containers{
    max-width: 68.75rem;
    margin: 0 auto;
}
.first_phone{
    text-align: center;
}
.text_ft{
    display: flex;
    gap: 2.005rem;
}
.text_ft span{
    font-family: 'Noto Serif Japanese', serif, sans-serif;
    font-style: normal;
    font-weight: 400;
    color: #000000;
}
.text_ft .ft_text_left{
    padding-left: 0.813rem;
}
.text_ft .ft_text_right{
    padding-left: 1.188rem;
}
.footer-title, .sub_b_r p, .choice_grv_sub, .grv_top{
    letter-spacing: 0.06em;
    color: #222222;
}
.address p{
    font-weight: 400;
    letter-spacing: 0.06em;
    color: #222222;
}
/* Hero */
.main_text_hero{
    font-family: 'Noto Serif Japanese', serif, sans-serif;
    font-style: normal;
    font-weight: 500;
    color: #FFFFFF;
    text-shadow: 0px 0px 16px rgba(0, 0, 0, 0.3);
}
.sub_text_hero{
    font-family: 'Noto Serif Japanese', serif, sans-serif;
    font-style: normal;
    font-weight: 400;
    color: #FFFFFF;
    text-shadow: 0px 0px 16px rgba(0, 0, 0, 0.7);
}
.hero_button{
    color: #000000;
}
.text_hero{
    display: flex;
    align-items: center;
    max-width: 68.75rem;
    margin: 0 auto;
    position: absolute;
    z-index: 2;
    width: 100%;
}
/* End Hero */
/* Space */
.space_content{
    position: relative;
}
.space_content p img{
    width: 100%;
}
/* News */
.hei-news-title{
    font-family: 'Noto Serif Japanese', serif, sans-serif;
    letter-spacing: 0.1em;
    color: #FFFFFF;
    font-weight: 400;
    background: #514D63;
    position: absolute;
}
.new_note{
    color: #222222;
    padding-bottom: 1rem;
    border-bottom: 1px solid #F7F7F7;
}
.news-link{
    display: flex;
    padding: 1rem 0;
    justify-content: space-between;
    align-items: center;
}
/* Content Top */
.content_top{
    background: #F7F7F7;
}
.info, .review-box{
    background-color: #ffffff;
    position: relative;
}
.review-info .news-date, .review-info .user-name{
    font-weight: 400;
    color: #222222;
    font-size: 1rem;
    line-height: 1.438rem;
}
/* Slider */
.slider_banner{
    background-color: #F1EEEA;
    text-align: center;
}
.title_slider{
    font-family: 'Noto Serif Japanese', serif, sans-serif;
    font-weight: 400;
    letter-spacing: 0.1em;
    color: #222222;
}
.subtitle_slider{
    letter-spacing: 0.06em;
    color: #222222;
}
.slider_home .slick-list {    
    padding-bottom: 2.313rem!important;
}
.slick-slide:nth-child(2n) {
    margin-top: 5rem;
}
.sld_item-link{
    position: relative;
    display: block;
}
.wrap-slider{
    max-width: 90rem;
    margin: 0 auto;
}
.sld_item-link .btn_play{
    border: 2px solid #ffffff;
    border-radius: 50%;
    text-align: center;
    display: inline-block;
}
.img_zz{
    border: 0.5rem solid #ffffff;
}
.banner-caption{
    color: #222222;
    margin-top: 0.375rem;
    text-align: left;
    padding-left: 0.5rem;
}
.space_sld img{
    width: 100%;
}
.txt_center{
    text-align: center;
}
/* Scroll top */
.hei_scroll_top{
    position: fixed;
    z-index: 999;
    display: none;
}
.hei_scroll_top .scroll-top{
    position: relative;
    background: rgba(209, 135, 96, 0.8);
    border-radius: 50%;
    display: inline-block;
    cursor: pointer;
    text-align: center;
    letter-spacing: 0.1em;
    color: #ffffff;
    text-decoration: none;
    font-weight: bold;
}
.hei_scroll_top .scroll-top::before{
    content: "";
    display: inline-block;
    border-right: 0.125rem solid #ffffff;
    border-top: 0.125rem solid #ffffff;
    position: absolute;
    left: 50%;
    -webkit-transform: translateX(-50%) rotate(135deg);
    -moz-transform: translateX(-50%) rotate(135deg);
    -ms-transform: translateX(-50%) rotate(135deg);
    -o-transform: translateX(-50%) rotate(135deg);
    transform: translateX(-50%) rotate(135deg);
}
/* Heisei mau */
.mau_btn, .bb_btn a{
    background: #D48154;
    border-radius: 0.375rem;
    display: inline-block;
    text-align: center;
    letter-spacing: 0.1em;
    color: #FFFFFF;
    font-weight: bold;
    text-decoration: none;
}
.mau_title{
    font-family: 'Noto Serif Japanese', serif, sans-serif;
    font-style: normal;
    font-weight: 400;
    letter-spacing: 0.1em;
    color: #222222;
}
.mau_content, .mau_big_ttk{
    letter-spacing: 0.06em;
    color: #222222;
}
.pc-560, .mau_small_img{
    position: relative;
}
.pc-560 img, .mau_small_img img{
    position: relative;
    z-index: 2;
}
.pc-560::after, .mau_small_img::after{
    content: "";
    position: absolute;
}
.maus_a::after{
    background: #F1EEEA;
}
.mau_c_note{
    letter-spacing: 0.1em;
    color: #514D63;
    text-align: center;
}
.maus_c::after{
    background: #F7F7F7;
}
.Heisei_mau{
    background-color: #FFFFFF;
    margin-top: -0.5rem;
    position: relative;
    z-index: 1;
}
.mau_box{
    background: #F1EEEA;
    border-radius: 0.625rem;
}
.mau_box_tt{
    letter-spacing: 0.06em;
    color: #D48154;
}
.mau_box_ct li p, .mau_o_content, .mau_o_list li a, .m_o_text, .m_o_bb ul li, .fix-temotokuyou{
    letter-spacing: 0.06em;
    color: #222222;
}
.mau_box_btn{
    background: #D48154;
    border-radius: 0px 0px 0.625rem 0.625rem;
    display: block;
    text-align: center;
}
.mau_box_btn span{
    text-align: center;
    letter-spacing: 0.1em;
    color: #FFFFFF;
    font-weight: bold;
}
.mau_box_btn img{
    float: right;
}
/* hei mau one*/
.hei_mau_one{
    background-color: #F1EEEA;
    margin-top: -0.125rem;
}
.mau_one_tt, .m_o_tt, .grv_bt{
    font-family: 'Noto Serif Japanese', serif, sans-serif;
    font-style: normal;
    font-weight: 400;
    color: #222222;
    letter-spacing: 0.1em;
}
.mau_o_list li a{
    text-decoration: underline;
}
.mau_o_list li{
    position: relative;
    padding-left: 1.688rem;
}
.mau_o_list li::before{
    content: "";
    background-image: url(../images/icon_arrow_down.png);
    width: 1rem;
    height: 1rem;
    background-repeat: no-repeat;
    background-size: contain;
    position: absolute;
    top:50%;
    left: 0;
    -webkit-transform: translateY(-50%);
    -moz-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    -o-transform: translateY(-50%);
    transform: translateY(-50%);
}
.m_o_bt{
    letter-spacing: 0.06em;
    color: #FFFFFF;
    background: #514D63;
}
.m_o_bb{
    background: #F5F5F5;
    position: relative;
    padding-top: 2.5rem;
    padding-left: 1.5rem;
    padding-right: 1rem;
    padding-bottom: 0.75rem;
}
.m_o_bb .m_o_bt{
    position: absolute;
    top: -1.063rem;
    padding: 0.188rem 1rem;
    left: 1.5rem;
}
.m_o_bts a{
    background: #D48154;
    border-radius: 0.375rem;
    text-align: center;
    letter-spacing: 0.1em;
    color: #FFFFFF;
    font-weight: bold;
}
.m_o_box{
    background-color: #FFFFFF;
}
.m_o_img{
    position: relative;
    z-index: 2;
}
.hei_mau_one .mau_box{
    background-color: #FFFFFF;
}
.mau_o_tb img{
    width: 100%;
}
.space_bt_mau img{
    width: 100%;
}
/* sub_box_x */
.sub_b_r h5{
    font-size: 1.125rem;
    font-weight: bold;
    line-height: 2.125rem;
    letter-spacing: 0.06em;
    color: #D48154;
}
.out_grave{
    font-size: 1.75rem;
    line-height: 2.125rem;
    letter-spacing: 0.06em;
    color: #D48154;
    font-weight: bold;
}
.mau_big_box .sub_b_r p{
    font-size: 1rem;
    line-height: 2.125rem;
}
.grave_box .sub_b_r p{
    font-size: 1.25rem;
    line-height: 2rem;
    letter-spacing: 0;
}
.mau_big_ttk{
    max-width: 46.25rem;
    margin-left: auto;
    margin-right: auto;
}
.sub_mmn{
    letter-spacing: 0.1em;
    color: #222222;
    font-size: 1.25rem;
    line-height: 1.875rem;
}
.sub_mmn span{
    font-size: 1rem;
}
.wrap_bnn{
    background: #F1EEEA;
}
.mau_img_x{
    background-color: #FFFFFF;
}
.axnb_bottom{
    background-color: #FFFFFF;
}
.choice_grave{
    background: #F7F7F7;
    margin-top: -0.188rem;
}
.grave_content{
    position: relative;
}
.grave_content::after{
    content: "";
    width: 2.188rem;
    height: 2.188rem;
    background-image: url(../images/grave_arrow.png);
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    position: absolute;
    top: 50%;
    -webkit-transform: translateY(-50%);
    -moz-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    -o-transform: translateY(-50%);
    transform: translateY(-50%);
    right: 1rem;
}
.choice_grave_wrap{
    max-width: 90rem;
    margin-left: auto;
    margin-right: auto;
}
.grave_item{
    background-color: #FFFFFF;
}
.grave_box{
    position: relative;
}
.grv_sub_title{
    font-family: 'Noto Serif Japanese', serif, sans-serif;
    font-style: normal;
    font-weight: 400;
    color: #222222;
    letter-spacing: 0.1em;
}
.graves_sub{
    padding-left: 1rem;
    padding-right: 1rem;
}
.bl_list_title{
    padding-bottom: 0.813rem;
    border-bottom: 1px solid #222222;
}
.bl_list_ct li a{
    letter-spacing: 0.06em;
    color: #222222;
    font-weight: 400;
}
.hei_excerpt{
    color: #222222;
}
/* Single */
.single-content #breadcrumb ul li a span{
    font-size: 0.875rem;
    line-height: 1.25rem;
    color: #777777;
    font-weight: 700;
}
.single-content .news-date time{
    font-weight: 700;
    font-size: 0.875rem;
    line-height: 1.25rem;
    font-family: 'Noto Sans JP', sans-serif;
}
.single-content .hei-time-update{
    display: flex;
    align-items: center;
    gap: 0.375rem;
}
.single-content .hei-time-update .hei-img-time{
    width: 1.5rem;
    height: 1.5rem;
    object-fit: cover;
    display: block;
}
.single-content .section .news-date, .single-content #single-post .news-date{
    display: flex;
    align-items: center;
    gap: 1.875rem;
    justify-content: flex-end;
    padding-bottom: 0.5rem;
}
.single-content .main-contents p{
    font-size: 1rem;
    line-height: 1.438rem;
    font-weight: 400;
    font-family: 'Noto Serif JP', sans-serif;
}
.single-content .section .main-contents h2{
    background-color: #F1EEEA;
    font-size: 1.375rem;
    line-height: 2rem;
    color: #333333!important;
    font-family: 'Noto Serif JP', sans-serif;
    font-weight: 900;
    padding: 0.25rem 0.5rem;
    margin-bottom: 1.25rem;
}
.single-content .section .main-contents h3{
    font-family: 'Noto Serif JP', sans-serif;
    font-weight: 900;
    font-size: 1.375rem;
    line-height: 2rem;
    color: #333333!important;
    padding: 0.25rem 0.5rem;
    border-left: 0.188rem solid #D48155;
    margin-bottom: 1.25rem;
}
.single-content .section .main-contents h4{
    font-family: 'Noto Serif JP', sans-serif;
    font-weight: 900;
    font-size: 1.125rem;
    line-height: 1.625rem;
    color: #333333!important;
    padding: 0.25rem 0.5rem;
    margin-bottom: 1.25rem;
}
.single-content .section .main-contents h5{
    font-family: 'Noto Serif JP', sans-serif;
    font-weight: 900;
    font-size: 1rem;
    line-height: 1.375rem;
    color: #333333!important;
    padding: 0.25rem 0.5rem;
    margin-bottom: 1.25rem;
}
.single-content .section .main-contents .elementor-widget-heading{
    margin: 0;
    margin-block-end: 0;
    --widgets-spacing: 0;
}
.single-content .section .main-contents .elementor-widget-heading > .elementor-widget-container{
    padding: 0;
    border: 0;
}
.single-content .main-contents .page-contents ul:not(.toc_list){
    list-style-type: none;
    margin-left: 1.25rem;
    margin-bottom: 1.25rem;
    margin-top: .625rem;
}
#toc_container .toc_list li,
.elementor-toc__list-wrapper li{
    font-family: 'Noto Serif JP', sans-serif;
    font-weight: 400;
    font-size: 1rem;
    line-height: 1.875rem;
    color: #000000;
}
.single-content .main-contents .page-contents ul li ul{
    margin-top: 0.5rem;
    margin-bottom: 0;
}
.single-content .main-contents .page-contents ul li{
    font-family: 'Noto Serif JP', sans-serif;
    font-weight: 400;
    font-size: 1rem;
    line-height: 1.5rem;
    color: #333333;
    margin-bottom: 0.5rem;
    list-style-type: none;
    position: relative;
}
.single-content .main-contents .page-contents ul li::before{
    content: "";
    width: 0.438rem;
    height: 0.438rem;
    background-color:#D48155;
    border-radius: 50%;
    position: absolute;
    left: -1.25rem;
    top: 0.5rem;
}
#toc_container .toc_list li::before,
.elementor-toc__list-wrapper li::before{
    content: none!important;
}
.single-content .main-contents table{
    margin-bottom: 1.25rem;
    margin-top: 1rem;
    border-collapse: collapse;
    width: 100%;
    font-family:'Noto Sans JP', sans-serif;
}
.single-content .main-contents table thead{
    border-bottom: 0;
}
.single-content .main-contents table tr{
    margin: 0;
    padding: 0;
    border: 0;
    outline: 0;
    vertical-align: baseline;
    background: transparent;
}
.single-content .main-contents table th{
    padding: 1rem;
    border: 1px solid #889AAE;
    text-align: center;
    font-size: 1rem;
    line-height: 1.5rem;
    background-color:#E9FAF9;
    font-weight: 700;
    color: #333333;
}
.single-content .section .main-contents h3.cnv-gdn-tt{
    border-left-width: 0.375rem;
    padding-left: 0.625rem;
    padding-top: 0;
    padding-right: 0;
    padding-bottom: 0;
}
.single-content .main-contents table td{
    padding: 1rem;
    border: 1px solid #889AAE;
    text-align: left;
    font-size: 1rem;
    line-height: 1.5rem;
    color: #333333;
}
.single-content .section .main-contents h4.cnv-gdn-att{
    font-family: "Zen Kaku Gothic Antique", sans-serif;
    font-weight: 700;
    color: #727272!important;
    padding: 0;
}
.single-content .main-contents p.cnv-gdn-cts{
    line-height: 1.5rem;
    font-family: 'Noto Sans JP', sans-serif;
    color: #222222;
}
.cnv-gdnen .cnvo-gdn-imgl img{
    width: 10rem;
    height: 10rem;
    display: block;
    object-fit: cover;
}
.single-content .section .main-contents .elementor-toc__header{
    border-bottom-color: #36542E;
}
.single-content .section .main-contents .elementor-toc__header .elementor-toc__header-title,
.single-content .section .main-contents #toc_container .toc_title{
    font-size: 1.375rem;
    line-height: 2rem;
    color: #36542E !important;
    border-bottom-color: #36542E;
}
.single-content .elementor-widget-table-of-contents .elementor-widget-container,
.single-content .section .main-contents #toc_container{
    border-color: #36542E;
}
.single-content .section .main-contents .elementor-toc__toggle-button i{
    color: #36542E;
}
.hs-seo-title{
    font-family: 'inter, sans-serif';
    color: #000000;
    font-weight: 400;
}
@media(min-width:1441px){
    .space_content{
        margin-top: -6.5rem!important;
    }
    .Heisei_mau_wrap{
        max-width: 90rem;
        margin-left: auto;
        margin-right: auto;
    }
}
@media(min-width:767px) and (max-width: 1199px){
    #footer{
        padding-left: 1rem!important;
        padding-right: 1rem!important;
    }
}
@media(min-width:781px){
    .hei_scroll_top{
        right: 2.5rem;
        bottom: 1.5rem;
    }
    .hei_scroll_top .scroll-top{
        width: 9.5rem;
        height: 9.5rem;
        box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15);
        font-size: 1.125rem;
        line-height: 1.5rem;
        padding-top: 2.063rem;
    }
    .hei_scroll_top .scroll-top::before{
        width: 0.938rem;
        height: 0.938rem;
        top:6.938rem;
    }
    .page-template-page-fullWidth .page-main{
        display: block;
    }
    body > .section:not(#home-contents) {
        margin-top: 5rem;
        margin-bottom: 5rem;
    }
    .side-contents{
        width: 17.5rem;
        margin-left: 1.5rem;
    }
    .sidebar-title{
        padding: 0.875rem 1rem;
        background: #F1EEEA;
        font-size: 1.375rem;
        line-height: 2rem;
    }
    .sidebar-wrapper:not(:first-child){
        margin-top: 1.5rem;
    }
    #single-post .page-main{
        background-color: #F7F7F7;
        margin-top: 5rem;
        margin-bottom: 5rem;
    }
    .hei_list_contact li:first-child .bg_ionner img{
        width: 1.875rem;
    }
    .hei_list_contact li:nth-child(2) .bg_ionner img{
        width: 2.688rem;
    }
    .hei_list_contact li:nth-child(3) .bg_ionner{
        padding-top: 0.5rem;
    }
    .hei_list_contact li:nth-child(3) .bg_ionner img{
        width: 2.5rem;
        height: 2.625rem;
    }
    .page-main .main-contents{
        padding: 2.5rem;
    }
    .page-title{
        background: transparent;
        color: #333333;
        font-size: 1.625rem;
        padding: 0;
        line-height: 2.375rem;
        border-bottom: 1px solid #C7C7C7;
        padding-bottom: 1rem;
        font-family: 'Noto Sans JP', sans-serif;
        font-weight: 700;
    }
    .text_ft span{
        font-size: 0.875rem;
        line-height: 1.25rem;
    }
    .first_footer{
        background-image: url(../images/bg_ft_pc.jpeg);
        padding-top: 4.438rem;
        padding-bottom: 4.938rem;
    }
    .content_top{
        padding-bottom: 4.875rem;
    }
    .wrap-first-footer{
        max-width: 68.75rem;
        margin: 0 auto;
    }
    .wrap-first-footer .first_ttt{
        font-size: 2.375rem;
        line-height: 3.438rem;
        margin-top: 0!important;
        margin-bottom: 0!important;
    }
    .wrap-first-footer .ftts{
        font-size: 1.625rem;
        line-height: 1.625rem;
        padding-bottom: 1.438rem!important;
        margin-bottom: 1.5rem;
        border-left: 0;
    }
    .bb_btn{
        position: absolute;
        left: 50%;
        -webkit-transform: translateX(-50%);
        -moz-transform: translateX(-50%);
        -ms-transform: translateX(-50%);
        -o-transform: translateX(-50%);
        transform: translateX(-50%);
        bottom: -2.25rem;
    }
    .fcts{
        font-size: 1.125rem;
        line-height: 1.625rem;
    }
    .first_phone a{
        font-size: 3.5rem;
        line-height: 3.5rem;
        letter-spacing: 0.04em;
        color: #D48154;
        font-weight: 900;
        text-decoration: none;
    }
    .first_note{
        font-size: 1.125rem;
        line-height: 1.625rem;
        color: #222222;
        letter-spacing: 0.1em;
        text-align: center;
        padding-bottom: 0.625rem;
    }
    .f_list_f li a{
        font-size: 1.375rem;
        line-height: 2rem;
        width: 14.563rem;
        padding: 1.188rem 0;
    }
    .ft_itema, .ft_itemb{
        max-width: 33.125rem;
        width: 100%;
        padding: 2.25rem 1.5rem 1.5rem 1.5rem;
    }
    .first_phone{
        margin-top: 1.563rem;
        margin-bottom: 1rem;
    }
    .first_ft_content{
        display: flex;
        justify-content: space-between;
        margin-top: 2.5rem;
    }
    .f_list_f{
        margin-top: 2.125rem;
    }
    .footer-title{
        font-size: 1.125rem;
        line-height: 1.125rem;
        margin-bottom: 1.25rem;
    }
    .footer-nav-area .widget_nav_menu{
        flex-grow: 0;
        flex-shrink: 0;
        flex-basis: 33.3%;
    }
    .copyright{
        font-size: 1rem;
        line-height: 1.125rem;
    }
    .footer-box {
        display: flex;
    }
    .footer-nav-area {
        display: flex;
        flex-basis: 67%;
        padding-left: 6.25rem;
        padding-top: 0.813rem;
    }
    .lg_ft{
        margin-top: 0.25rem;
        margin-bottom: 1.5rem;
    }
    .address p{
        font-size: 1rem;
        line-height: 1.875rem;
    }
    #footer{
        padding-bottom: 3.75rem!important;
    }
    /* Hero */
    .main_text_hero{
        font-size: 3.75rem;
        line-height: 5rem;
    }
    .sub_text_hero{
        font-size: 1.25rem;
        line-height: 2.5rem;
        margin-top: 1.438rem;
    }
    .hero_button{
        font-size: 2.375rem;
        line-height: 3.438rem;
        width: 16.688rem;
        background-color: #FFFFFF;
        opacity: 0.7;
        display: block;
        text-align: center;
        padding: 1.625rem 0;
    }
    .text_hero{
        left: 7.5rem;
        top: 5.313rem;
    }
    .hero_left{
        max-width: 38.438rem;
    }
    .hero_right{
        padding-left: 9.375rem;
        margin-top: -0.938rem;
    }
    /* Space */
    .space_content{
        margin-top: -5.5rem;
        padding-bottom: 0.25rem;
    }
    /* New */
    .review-box {
        width: 24.375rem;
        padding: 1rem 1.2rem;
        margin-left: 1.5rem;
    }
    .hei-news-title{
        font-size: 1.75rem;
        line-height: 1.75rem;
        display: inline-block;
        padding: 0.875rem 1.438rem 0.5rem 1.438rem;
        left: 1.5rem;
        top:-1.563rem;
    }
    .new_note{
        line-height: 1.438rem;
        margin-top: 1.5rem;
        font-size: 1rem;
    }
    .info .news-date, .info .news-title{
        font-size: 1.125rem;
        line-height: 1.625rem;
    }
    .news-more-link{
        line-height: 1.438rem;
        margin-top: 5.625rem;
        font-size: 1rem;
    }
    .two-col {
        display: flex;
    }
    .info {
        flex: 1;
        max-width: 42.875rem;
        padding: 1rem 1.5rem;
    }
    .review-box .news-more-link{
        margin-top: 1rem;
    }
    .user-img{
        width: 3.875rem;
        border: 1px solid #222222;
        border-radius: 50%;
    }
    .user-img img{
        border-radius: 50%;
    }
    #home-contents{
        margin-top: 4.75rem;
    }
    /* Slider */
    .title_slider{
        font-size: 2.5rem;
        line-height: 2.5rem;
        margin-bottom: 2rem;
    }
    .subtitle_slider, .choice_grv_sub{
        font-size: 1.125rem;
        line-height: 2.125rem;
    }
    .sld_item-link .btn_play{
        width: 6.188rem;
        height: 6.188rem;
        padding-top: 2.125rem;
        position: absolute;
        top: 45%;
        left: 50%;
        -webkit-transform: translate(-50%, -50%);
        -moz-transform: translate(-50%, -50%);
        -ms-transform: translate(-50%, -50%);
        -o-transform: translate(-50%, -50%);
        transform: translate(-50%, -50%);
    }
    .sld_item-link.no_title .btn_play{
        top:50%;
    }
    .btn_play img{
        width: 2.125rem;
        margin: 0 auto;
    }
    .slider_headeing{
        margin-bottom: 3.438rem;
    }
    .slider_headeing .title_slider{
        margin-bottom: 1.25rem;
    }
    .slider_banner{
        padding-top: 6.25rem;
    }
    .slider_home .slick-slide{
        margin-left: 0.625rem;
        margin-right: 0.625rem;
    }
    /* Heisei mau */
    .pc-560 img{
        width: 35rem;
    }
    .mau_btn, .bb_btn a{
        font-size: 1.25rem;
        line-height: 1.813rem;
        padding: 1.281rem 0.625rem;
        min-width: 26.313rem;
    }
    .mau_title{
        font-size: 2rem;
        line-height: 3rem;
        margin-top: 1.875rem;
        position: relative;
    }
    .mau_content{
        font-size: 1.125rem;
        line-height: 2.125rem;
        margin-top: 0.625rem;
        margin-bottom: 1rem;
    }
    .maus_a{
        padding-left: 5rem;
    }
    .maus_a::after{
        width: 28.313rem;
        height: 30.563rem;
        top: -2.5rem;
        left: 0;
    }
    .mau_small_img{
        display: inline-block;
    }
    .mau_small_img::after{
        width: 14.438rem;
        height: 15.375rem;
        background-color: #F1EEEA;
        top: -2.875rem;
        right: -3.813rem;
    }
    .mau_small_a img{
        width: 3.75rem;
    }
    .mau_small_b img{
        width: 4.938rem;
    }
    .mau_small_ab img{
        width: 4.813rem;
    }
    .mau_small_bb img{
        width: 5.625rem;
    }
    .mau_small_ca img{
        width: 9.938rem;
    }
    .mau_small_cb img{
        width: 5.5rem;
    }
    .mau_small_cs img{
        width: 5.683rem;
    }
    .mau_small_cy img{
        width: 7.313rem;
    }
    .mau_c_note{
        font-size: 1.125rem;
        line-height: 1.5rem;
        position: relative;
        z-index: 2;
        top: -1.125rem;
        left: 0.313rem;
    }
    .caax img{
        width: 22.375rem;
    }
    .ccxx img{
        width: 24.063rem;
    }
    .list_mauh li:first-child{
        display: flex;
        justify-content: start;
        max-width: 90rem;
        position: relative;
    }
    .list_mauh li:first-child .mau_texts{
        flex-basis: 50%;
    }
    .list_mauh li:first-child .mau_title, .list_mauh li:first-child .mau_content, .list_mauh li:first-child .mau_button{
        position: relative;
        z-index: 1;
        padding-left: 6rem;
    }
    .mau_a_sub{
        position: relative;
        margin-top: 2.938rem;
    }
    .mau_small_a{
        position: absolute;
        top: 13.75rem;
        right: -11.438rem;
        z-index: 1;
    }
    .mau_small_b{
        position: absolute;
        top: 6.875rem;
        right: -19.75rem;
    }
    .list_mauh li:nth-child(2){
        display: flex;
        position: relative;
        top: -15.75rem;
        left: 50rem;
        max-width: 35rem;
        z-index: 1;
    }
    .mau_small_ab{
        position: absolute;
        top: 10.75rem;
        left: -8.25rem;
    }
    .mau_small_bb{
        position: absolute;
        top: 17.875rem;
        left: -14.688rem;
    }
    .list_mauh li:nth-child(2) .mau_title, .list_mauh li:nth-child(2) .mau_content, .list_mauh li:nth-child(2) .mau_button{
        padding-left: 1rem;
    }
    .list_mauh li:nth-child(3){
        padding-left: 6.25rem;
        position: relative;
        display: flex;
        align-items: end;
        margin-top: -29rem;
    }
    .mau_small_ca{
        position: absolute;
        top: -5.063rem;
        left: 0.063rem;
    }
    .mau_small_cb{
        position: absolute;
        left: 0.5rem;
        top: 18.75rem;
    }
    .maus_c{
        display: inline-block;
    }
    .maus_c::after{
        width: 31.938rem;
        height: 24.125rem;
        top: 4rem;
        right: -3.75rem;
    }
    .list_mauh li:nth-child(3) .mau_title, .list_mauh li:nth-child(3) .mau_content, .list_mauh li:nth-child(3) .mau_button{
        padding-left: 1rem;
        position: relative;
        z-index: 1;
    }
    .list_mauh li:nth-child(3) .mau_title{
        margin-top: 1.5rem;
    }
    .list_mauh li:nth-child(3) .mau_content{
        max-width: 33.75rem;
    }
    .list_mauh li:nth-child(3) .mau_button{
        margin-top: 1.375rem;
    }
    .mau_c_sub{
        position: relative;
        top: -7.438rem;
        left: 5.438rem;
    }
    .mau_small_img.ccxx::after{
        width: 35.625rem;
        height: 19.313rem;
        top: -8.813rem;
        right: initial;
        left: 4.563rem;
    }
    .mau_small_cs{
        position: absolute;
        top: -12.5rem;
        left: 6.563rem;
        z-index: 1;
    }
    .mau_small_cy{
        position: absolute;
        top: -2.313rem;
        right: -16.625rem;
        z-index: 1;
    }
    .mau_c_sub::after{
        content: "";
        width: 16.125rem;
        height: 16.188rem;
        background: #F7F7F7;
        position: absolute;
        top: -12.375rem;
        right: -19.25rem;
    }
    .maus_b::after{
        width: 28.313rem;
        height: 25.5rem;
        background: #F7F7F7;
        top: -5rem;
        right: -5rem;
    }
    .Heisei_mau_wrap .title_slider{
        margin-bottom: 5.938rem;
    }
    /*
    .list_mauh{
        max-height: 110rem;
    }
    */
    /* Mau */
    .mau_box{
        max-width: 43.75rem;
        margin-left: auto;
        margin-right: auto;
        padding-top: 1.25rem;
        margin-top: 1.125rem;
    }
    .Heisei_mau_wrap .mau_box{
        margin-top: 5rem;
    }
    .mau_box_ct li:first-child{
        flex-basis: 12rem;
        flex-grow: 0;
        flex-shrink: 0;
        margin-top: -3.125rem;
    }
    .mau_box_ct li:first-child .box_img{
        top: 2.125rem;
        z-index: 9;
        position: relative;
        display: block;
    }
    .box_img img{
        width: 11.875rem;
        height: 9.875rem;
        display: block;
        object-fit: cover;
    }
    .mau_box_tt{
        font-size: 1.625rem;
        line-height: 2.125rem;
    }
    .mau_box_ct{
        display: flex;
        justify-content: space-between;
        margin-top: 1.25rem;
        padding-left: 1rem;
        padding-right: 1rem;
        margin-bottom: 2rem;
    }
    .mau_box_ct li p{
        font-size: 1.125rem;
        line-height: 1.875rem;
        position: relative;
        z-index: 1;
    }
    .mau_box_ct li:last-child{
        padding-left: 0.75rem;
        padding-top: 0.25rem;
    }
    .mau_box_btn span{
        font-size: 1.25rem;
        line-height: 1.25rem;
    }
    .mau_box_btn{
        padding: 0.813rem 0.625rem;
        margin-top: -1.563rem;
        z-index: 8;
        position: relative;
    }
    .mau_box_btn img{
        width: 1.563rem;
        position: relative;
        right: 0.813rem;
    }
    .list_mauh li:nth-child(4){
        display: flex;
        position: relative;
        justify-content: start;
        margin-top: 2rem;
        max-width: 90rem;
        margin-left: auto;
        margin-right: auto;
    }
    .mau_d_sub{
        flex-basis: 50%;
        position: relative;
        flex-grow: 0;
        flex-shrink: 0;
    }
    .mau_small_imgs.caaxd img{
        width: 16.875rem;
        position: relative;
        z-index: 3;
    }
    .maus_a_d::after{
        content: "";
        width: 28.313rem;
        height: 25.5rem;
        background: #F1EEEA;
        position: absolute;
        top: 3.938rem;
        right: -5rem;
        z-index: 1;
    }
    .maus_a_d{
        padding-left: 5rem;
    }
    .mau_title.dxa, .mau_content.dxb, .mau_button.dxc{
        z-index: 2;
        padding-left: 6rem;
    }
    .mau_content.dxb{
        max-width: 39.688rem;
    }
    .mau_small_imgs.caaxd{
        position: absolute;
        top: 18.563rem;
        left: 16.688rem;
    }
    .mau_small_imgs.caaxd::after{
        content: "";
        width: 35.625rem;
        height: 19.313rem;
        background: #F7F7F7;
        position: absolute;
        top: -5.5rem;
        left: -6.5rem;
        z-index: 1;
    }
    .mau_button.dxc{
        margin-top: 1.688rem;
    }
    .mau_small_d{
        position: absolute;
        top: 4rem;
        right: 0.313rem;
        z-index: 2;
    }
    .mau_small_d img{
        width: 5.438rem;
    }
    .mau_small_db{
        position: absolute;
        top: 9.438rem;
        right: 4.875rem;
        z-index: 2;
    }
    .mau_small_db img{
        width: 6.25rem;
    }
    .mau_small_dc{
        position: absolute;
        bottom: 7.625rem;
        left: 6.125rem;
        z-index: 2;
    }
    .mau_small_dc img{
        width: 7.813rem;
    }
    .mau_d_sub::before{
        content: "";
        background-color: #F1EEEA;
        width: 16.125rem;
        height: 16.125rem;
        position: absolute;
        top: 8rem;
        left: 6.438rem;
        z-index: 2;
    }
    .Heisei_mau_wrap{
        margin-bottom: 6.563rem;
    }
    /* Mau one */
    .mau_one_tt, .m_o_tt{
        font-size: 2rem;
        line-height: 3rem;
    }
    .mau_o_content{
        margin-top: 1.25rem;
        margin-bottom: 1.875rem;
    }
    .mau_o_content, .mau_o_list li a, .m_o_text{
        font-size: 1.125rem;
        line-height: 2.125rem;
        margin-top: 0.313rem;
        margin-bottom: 2.813rem;
    }
    .mau_one_left img{
        width: 26.25rem;
        background-color: #ffffff;
        padding-left: 0.75rem;
        padding-right: 0.75rem;
    }
    .mau_one_top{
        display: flex;
        justify-content: space-between;
        padding-top: 2.25rem;
    }
    .mau_one_left{
        flex-basis: 26.25rem;
        flex-shrink: 0;
        flex-grow: 0;
    }
    .mau_one_righ{
        padding-left: 2.5rem;
        padding-top: 1rem;
    }
    .hei_mau_one{
        margin-top: -3.625rem;
        padding-bottom: 8.125rem;
        position: relative;
        z-index: 2;
    }
    .m_o_img img{
        width: 42.5rem;
    }
    .m_o_box{
        width: 45rem;
    }
    .m_o_bb ul li, .mau_big_ttk{
        font-size: 1.125rem;
        line-height: 2.5rem;
    }
    .fix-temotokuyou{
        font-size: 1.125rem;
        line-height: 2rem;
    }
    .m_o_bts a{
        font-size: 1.125rem;
        line-height: 1.813rem;
        width: 26.25rem;
        display: inline-block;
        padding: 1.281rem 1rem;
    }
    .flxa{
        display: flex;
        align-items: center;
        margin-bottom: 3.5rem;
    }
    .m_o_list{
        padding-left: 2.5rem;
        padding-right: 2.5rem;
        margin-top: 5.875rem;
        max-width: 90rem;
        margin-left: auto;
        margin-right: auto;
    }
    .m_o_itema .m_o_img, .m_o_itemc .m_o_img{
        flex-basis: 54%;
    }
    .m_o_itemb .m_o_img, .m_o_itemd .m_o_img{
        flex-basis: 50%;
    }
    .m_o_itema .m_o_box, .m_o_itemc .m_o_box{
        padding-left: 6rem;
        padding-top: 4.5rem;
        padding-right: 3.5rem;
        padding-bottom: 4.5rem;
        margin-left: -5.938rem;
    }
    .m_o_itemc .m_o_box{
        padding-top: 1.438rem;
        padding-bottom: 3.313rem;
    }
    .hei_mau_one #m_o_itemfs .m_o_box{
        padding-top: 4.125rem;
        padding-bottom: 4.125rem;
    }
    .m_o_itemc .m_o_tt{
        margin-top: 2.375rem;
    }
    .m_o_bb .m_o_bt{
        font-size: 1.125rem;
        line-height: 2.125rem;
    }
    .m_o_bts{
        margin-top: 2.5rem;
    }
    .m_o_itemb .m_o_box, .m_o_itemd .m_o_box{
        padding-right: 6rem;
        padding-top: 3.688rem;
        padding-left: 3.5rem;
        padding-bottom: 3.188rem;
        margin-right: -2.5rem;
    }
    .m_o_itemd .m_o_box{
        padding-top: 4rem;
        padding-bottom: 5.063rem;
    }
    .hei_mau_one .mau_box{
        margin-top: 4.875rem;
    }
    .bb_btn a{
        min-width: 17.5rem;
    }
    .sub_b_l img{
        width: 6.125rem;
    }
    .sub_box_x{
        max-width: 31.25rem;
        background-color: #FFFFFF;
        border-radius: 0.375rem;
        padding: 0.813rem 1.35rem 2.5rem 1.188rem;
        position: relative;
        margin-left: auto;
        margin-right: auto;
        margin-top: 2rem;
    }
    .in_sub_box{
        display: flex;
        justify-content: space-between;
        align-items: center;
    }
    .wrap_bnn{
        padding: 4rem 5.375rem 3.75rem 5.375rem;
        margin-top: -8.688rem;
        position: relative;
        z-index: 1;
    }
    .mau_big_box .title_slider{
        margin-bottom: 1.188rem;
    }
    .mau_big_ttk{
        line-height: 2.125rem;
    }
    .sub_mmn{
        margin-top: 6.063rem;
    }
    .mau_img_x{
        padding-bottom: 3.5rem;
    }
    .axnb_bottom .space_bt_mau img{
        width: 100%;
    }
    .grv_top{
        font-size: 1.125rem;
        line-height: 1.125rem;
    }
    .grv_bt{
        margin-top: 1.125rem;
        font-size: 2rem;
        line-height: 2rem;
    }
    .grave_content{
        margin-top: 1.5rem;
        padding-left: 1rem;
    }
    .grave_item{
        padding-bottom: 1.5rem;
    }
    .choice_grave_wrap{
        padding-left: 2.5rem;
        padding-right: 2.5rem;
    }
    .grave_img img{
        width: 27.5rem;
    }
    .list_grave{
        display: flex;
        justify-content: space-between;
    }
    .choice_grave{
        padding-top: 2.5rem;
        padding-bottom: 7.5rem;
    }
    .choice_grave .title_slider{
        margin-bottom: 1.188rem;
    }
    .choice_grv_sub{
        margin-bottom: 2rem;
    }
    .grave_box{
        max-width: 55rem;
        padding-top: 2.5rem;
        padding-left: 1rem;
        padding-right: 1rem;
        padding-bottom: 0;
        margin-top: 5rem;
        margin-bottom: 5rem;
    }
    .grave_box .sub_b_l{
        flex-basis: 9.688rem;
        flex-grow: 0;
        flex-shrink: 0;
    }
    .grave_box .sub_b_l img{
        width: 8.625rem;
        height: 10.813rem;
        display: block;
        object-fit: cover;
    }
    .grv_sub_title{
        font-size: 2rem;
        line-height: 2rem;
        margin-bottom: 1.688rem;
    }
    .bl_list_title{
        font-size: 1.25rem;
        line-height: 1.25rem;
        letter-spacing: 0.06em;
        margin-bottom: 1rem;
    }
    .bl_list_ct li a{
        font-size: 1.125rem;
        line-height: 2.75rem;
    }
    .list_post{
        max-width: 68.75rem;
        margin-left: auto;
        margin-right: auto;
        margin-top: 2.5rem;
        display: flex;
        justify-content: space-between;
    }
    .list_itembl{
        flex-basis: 15.313rem;
    }
    /* Add new section */
    .heyab .img_mauss img{
        width: 4.938rem;
    }
    .heyab .bb_btn a{
        padding-top: 0.5rem;
        padding-bottom: 0.5rem;
    }
    .heyupdatenew{
        background-color: #ffffff;
    }
    .heymauwrap{
        max-width: 68.75rem;
        margin-left: auto;
        margin-right: auto;
        background: #F1EEEA;
        padding-top: 4rem;
        padding-bottom: 5.938rem;
        margin-top: -10.625rem;
        position: relative;
        z-index: 1;
    }
    .space_mau_btts{
        display: block;
        width: 100%;
        height: auto;
        margin-top: 6.25rem;
    }
    .heytopnew .in_sub_box{
        gap: 1.313rem;
    }
    .heytopnew .in_sub_box .img_mauss{
        flex-grow: 0;
        flex-basis: 4.938rem;
        flex-shrink: 0;
    }
    .heytopnew .in_sub_box .sub_b_r p{
        font-size: 1rem;
        line-height: 1.875rem;
    }
    .single .main-contents table{
        font-size: 1rem;
        line-height: 1.438rem;
    }
    /* Testi */
    .cnv-gdnen{
        margin-left: -2.5rem;
        margin-right: -2.5rem;
        background-color: #F7F7F7;
        padding-top: 3.125rem;
    }
    .cnv-gdnen .cnv-gdnen-wrap{
        background-color: #ffffff;
        padding: 2.5rem;
    }
    .cnv-gdnen .cnvo-gdn-imgl{
        flex-basis: 10rem;
        flex-grow: 0;
        flex-shrink: 0;
    }
    .cnv-gdnen .cnv-gdn-w{
        max-width: 40rem;
        width: 100%;
        margin-left: 2.5rem;
        display: flex;
        justify-content: center;
        align-items: center;
        gap: 5.375rem;
    }
    /* Title home */
    .hs-seo-title{
        max-width: 1440px;
        margin: 0 auto;
        position: absolute;
        left: 50%;
        -webkit-transform: translateX(-50%);
        transform: translateX(-50%);
        width: 100%;
        z-index: 2;
        text-align: right;
        padding-left: 2.5rem;
        padding-right: 2.5rem;
        font-size: 0.875rem;
    }
    .logged-in .hs-seo-title{
        top: 9.75rem;
    }
    body:not(.logged-in) .hs-seo-title{
        top: 7.938rem;
    }
    .hsl-frontpage .menu-navigation{
        margin-top: 1rem;
    }
    .hsl-hei-notice{
        display: none;
    }
}
@media(min-width:781px) and (max-width:1435px){
    html{
        font-size: 1.1vw;
    }
}
@media(min-width:992px) and (max-width: 1199px){
    .logged-in .hs-seo-title{
        top: 10.5rem;
    }
}
@media(min-width:781px) and (max-width: 991px){
    .logged-in .hs-seo-title{
        top: 11.25rem;
        font-size: 1rem;
    }
    body:not(.logged-in) .hs-seo-title{
        font-size: 1rem;
    }
}
@media(max-width:780px){
    .only_pc{display: none!important;}
    .page-main{
        background-color: #f7f7f7;
    }
    .page-main .main-contents{
        padding: 1rem;
    }
    .hd_info{
        margin-top: 2rem;
    }
    .page-title{
        background: transparent;
        color: #333333;
        font-size: 1.625rem;
        padding: 0;
        line-height: 2.375rem;
        border-bottom: 1px solid #C7C7C7;
        padding-bottom: 0.875rem;
        font-family: 'Noto Sans JP', sans-serif;
        font-weight: 700;
    }
    .sidebar-title{
        font-size: 1rem;
        padding: 0.5rem 0.625rem;
        background: #F1EEEA;
        margin-left: 1rem;
        margin-right: 1rem;
    }
    .list_sp_info{
        display: flex;
        gap: 0.5rem;
    }
    .side-contents{
        background-color: #FFFFFF;
    }
    .widget_recent_entries ul li a{
        font-size: 1rem;
    }
    .first_footer{
        background-image: url(../images/bg_ft_top_sp.jpeg);
        padding-top: 2.5rem;
        padding-bottom: 2rem;
    }
    .lh_item img{
        width: 0.85rem;
        margin: 0 auto;
    }
    .lh_ita img{
        width: 1.318rem;
        margin: 0 auto;
    }
    .lh_itac img{
        width: 1.25rem;
        margin: 0 auto;
    }
    .list_sp_info a strong{
        letter-spacing: 0.08em;
        color: #222222;
        font-size: 0.75rem;
        line-height: 0.75rem;
    }
    .list_sp_info a{
        display: flex;
        align-items: center;
        gap: 0.25rem;
        background: #F1EEEA;
        border-radius: 0.375rem;
        width: 7.1rem;
        justify-content: center;
        padding: 0.375rem 0.25rem;
    }
    .list_sp_info a p{
        width: 2rem;
        height: 2rem;
        line-height: 2rem;
        background: #ffffff;
        text-align: center;
        border-radius: 50%;
        padding-top: 0.425rem;
    }
    .list_sp_info .lh_itac a p{
        padding-top: 0.25rem;
    }
    .page-contents{
        padding-left: 0;
        padding-right: 0;
    }
    .wrap-first-footer{
        padding-left: 1rem;
        padding-right: 1rem;
    }
    .wrap-first-footer .first_ttt{
        font-size: 1.375rem;
        line-height: 2rem;
        margin-top: 0!important;
        margin-bottom: 0!important;
    }
    .ft_itema{
        padding: 1.5rem 1rem;
        margin-bottom: 1rem;
    }
    .first_ft_content{
        margin-top: 2rem;
    }
    .wrap-first-footer .ftts{
        font-size: 1.125rem;
        line-height: 1.125rem;
        letter-spacing: 0.1em;
        padding-bottom: 1.5rem!important;
        margin-bottom: 1.5rem;
        border-left: 0;
        padding-top: 0!important;
        padding-left: 0!important;
        padding-right: 0!important;
    }
    .fcts{
        font-size: 1rem;
        line-height: 1.625rem;
    }
    .f_list_f{
        flex-wrap: wrap;
        margin-top: 1.5rem;
    }
    .f_list_f li a{
        font-size: 1.125rem;
        line-height: 1.625rem;
        display: block;
        width: 20.375rem;
        padding: 1.063rem 0;
    }
    .f_list_f li:first-child{
        margin-bottom: 1rem;
    }
    .first_phone{
        margin-top: 1rem;
        margin-bottom: 1rem;
    }
    .first_phone a{
        font-size: 2.5rem;
        line-height: 2.5rem;
        text-align: center;
        letter-spacing: 0.04em;
        color: #D48154;
        font-weight: 700;
    }
    .first_note{
        font-weight: 400;
        font-size: 0.875rem;
        line-height: 1.25rem;
        text-align: center;
        letter-spacing: 0.1em;
    }
    .ft_itemb{
        padding: 1.5rem 1rem 1rem 1rem;
    }
    .footer-title{
        font-size: 1rem;
        line-height: 1.125rem;
        margin-bottom: 0.625rem;
    }
    .widget_nav_menu ul li a{
        font-size: 0.875rem;
        line-height: 1.688rem;
    }
    .copyright{
        font-size: 0.75rem;
        line-height: 1.125rem;
    }
    .text_ft span{
        font-size: 0.75rem;
        line-height: 0.75rem;
    }
    .lg_ft{
        margin-top: 0.313rem;
    }
    .lg_ft img{
        width: 14rem;
    }
    .text_ft .ft_text_left, .text_ft .ft_text_right{
        padding-left: 0;
    }
    .footer-logo{
        max-width: 100%;
        margin-bottom: 1rem;
    }
    .address p{
        line-height: 1.875rem;
    }
    .footer-nav-area {
        padding-left: 0.938rem;
        padding-right: 0.938rem;
        margin-top: 1.5rem;
        display: flex;
        justify-content: space-between;
        flex-wrap: wrap;
    }
    .footer-nav-area .widget_nav_menu{
        flex-basis: 50%;
        flex-grow: 0;
        flex-shrink: 0;
    }
    #footer{
        padding-top: 1.5rem!important;
        padding-bottom: 1.5rem!important;
    }
    /* Hero */
    .main_text_hero{
        font-size: 2rem;
        line-height: 2.875rem;
    }
    .sub_text_hero{
        font-size: 1rem;
        line-height: 1.75rem;
    }
    .hero_right{
        display: none;
    }
    .text_hero{
        top: 2.5rem;
        padding-left: 1rem;
        padding-right: 1rem;
    }
    .sub_text_hero{
        margin-top: 1rem;
    }
    #videoWrap video{
        width: initial;
        height: 23rem;
    }
    /* Space */
    .space_content{
        margin-top: -1.875rem;
    }
    /* News */
    .hei-news-title{
        font-size: 1.375rem;
        line-height: 1.75rem;
        padding: 0.25rem 1rem;
        position:absolute;
        top:-1.125rem;
        left: 0.5rem;
    }
    .info, .review-box{
        padding: 1rem;
    }
    .new_note{
        font-size: 0.875rem;
        line-height: 1.25rem;
        margin-top: 1rem;
    }
    .news-link{
        display: block;
    }
    .info .news-date{
        font-size: 0.75rem;
        line-height: 1.063rem;
    }
    .news-more-link{
        font-size: 1rem;
        line-height: 1.438rem;
        margin-top: 1rem;
    }
    .review-box{
        margin-top: 2.688rem;
    }
    .user-img{
        width: 3.875rem;
        border: 1px solid #222222;
        border-radius: 50%;
    }
    .content_top, .slider_headeing{
        padding-left: 1rem;
        padding-right: 1rem;
    }
    .content_top{
        padding-bottom: 2.688rem;
    }
    .slider_banner .slider_headeing{
        margin-bottom: 0;
        padding-bottom: 1.125rem
    }
    .Heisei_mau{
        padding-top: 1.5rem;
    }
    .list_mauh{
        margin-top: 3.188rem;
    }
    #home-contents{
        padding-top:0.875rem;
    }
    .user-img img{
        border-radius: 50%;
    }
    .review-info .news-date, .review-info .user-name{
        font-size: 0.875rem;
        line-height: 1.375rem;
    }
    .title_slider{
        font-size: 1.875rem;
        line-height: 2.625rem;
    }
    .slider_banner{
        padding-top: 2.5rem;
    }
    .subtitle_slider{
        font-size: 1rem;
        line-height: 2rem;
        margin-top: 1rem;
    }
    .slider_headeing{
        margin-bottom: 1.438rem;
    }
    .slider_home .slick-slide{
        margin-left: 0.5rem;
        margin-right: 0.5rem;
    }
    /* Scroll */
    .hei_scroll_top{
        right: 1rem;
        bottom: 1rem;
    }
    .hei_scroll_top .scroll-top{
        width: 5.125rem;
        height: 5.125rem;
        font-size: 0.625rem;
        line-height: 0.938rem;
        padding-top: 0.875rem;
        box-shadow: 2px 2px 2px rgba(0, 0, 0, 0.15);
    }
    .hei_scroll_top .scroll-top::before{
        width: 0.469rem;
        height: 0.469rem;
        top: 3.688rem;
    }
    /* Slider */
    .sld_item-link .btn_play{
        width: 4.75rem;
        height: 4.75rem;
        padding-top: 1.5rem;
        position: absolute;
        top: 45%;
        left: 50%;
        -webkit-transform: translate(-50%, -50%);
        -moz-transform: translate(-50%, -50%);
        -ms-transform: translate(-50%, -50%);
        -o-transform: translate(-50%, -50%);
        transform: translate(-50%, -50%);
    }
    .sld_item-link.no_title .btn_play{
        top:50%;
    }
    .banner-caption{
        font-size: 0.875rem;
        line-height: 1.25rem;
    }
    .btn_play img{
        width: 1.563rem;
        margin: 0 auto;
    }
    .pc-560 img{
        width: 16.875rem;
    }
    .list_mauh li:first-child{
        position: relative;
    }
    .caax img{
        width: 7.438rem;
    }
    .Heisei_mau_wrap{
        overflow: hidden;
        padding-bottom: 2.938rem;
    }
    .mau_small_img::after{
        width: 5.125rem;
        height: 5.5rem;
    }
    .maus_a{padding-left: 1rem;}
    .mau_small_img::after{
        width: 5.125rem;
        height: 3.5rem;
        background-color: #F1EEEA;
        top: -1rem;
        right: -1.875rem;
    }
    .maus_a::after{
        width: 15.625rem;
        height: 15.875rem;
        top:-1rem;
        left: -1rem;
    }
    .mau_a_sub{
        position: absolute;
        right: 0;
        top: 9.188rem;
    }
    .mau_small_b{
        position: absolute;
        top: -3.813rem;
        right: 0.688rem;
        z-index: 2;
    }
    .mau_small_a img{
        width: 1.5rem;
    }
    .mau_small_a{
        position: absolute;
        top: -4.625rem;
        left: 1.75rem;
    }
    .mau_small_b img{
        width: 2.566rem;
    }
    .mau_title{
        font-size: 1.5rem;
        line-height: 2.375rem;
        position: relative;
        margin-top: 1.5rem;
        padding-left: 1rem;
        padding-right: 1rem;
    }
    .mau_content{
        font-size: 1rem;
        line-height: 2rem;
        padding-top: 1rem;
        padding-left: 1rem;
        padding-right: 1rem;
    }
    .mau_button{
        text-align: center;
        padding: 0 1rem;
        margin-top: 1.5rem;
    }
    .mau_btn{
        font-size: 1.125rem;
        line-height: 1.625rem;
        padding: 1.063rem 1rem;
        width: 22.375rem;
    }
    .list_mauh li:first-child .mau_texts{
        position: relative;
        z-index: 5;
    }
    .list_mauh li:nth-child(2){
        position: relative;
        top:0.875rem;
    }
    .maus_b::after{
        width: 15.188rem;
        height: 10.563rem;
        background: #F7F7F7;
        right: 0;
        top: -1rem;
    }
    .mau_small_ab img{
        width: 2.006rem;
    }
    .mau_small_bb img{
        width: 2.769rem;
    }
    .maus_b{
        padding-right: 1rem;
    }
    .maus_b img{
        margin-right: 0;
        margin-left: auto;
    }
    .mau_small_ab{
        position: absolute;
        top: 2rem;
        left: 3.125rem;
    }
    .mau_small_bb{
        position: absolute;
        top: 7.625rem;
        left: 1rem;
    }
    .list_mauh li:nth-child(3){
        position: relative;
        margin-top: 6.625rem;
    }
    .maus_c::after{
        width: 16.875rem;
        height: 12.063rem;
        background: #F6F6F6;
        top: 1rem;
        left: 2rem;
    }
    .list_mauh li{
        margin-bottom: 2.5rem;
    }
    .mau_small_ca img{
        width: 3.216rem;
    }
    .mau_small_ca{
        position: absolute;
        top: -3.125rem;
        left: 0.313rem;
    }
    .ccxx img{
        width: 6rem;
        margin: 0.25rem auto;
    }
    .mau_c_note{
        font-size: 0.625rem;
        line-height: 0.875rem;
        position: relative;
        z-index: 2;
        padding-right: 0.375rem;
        padding-top: 0.188rem;
    }
    .mau_small_img.ccxx::after{
        width: 5rem;
        height: 5rem;
        right:0;
        top: -1.875rem;
    }
    .mau_small_cb{
        display: none;
    }
    .maus_c{
        position: relative;
        display: inline-block;
        padding-left: 1rem;
    }
    .mau_small_cs img{
        width: 2.625rem;
    }
    .mau_small_cy img{
        width: 4rem;
    }
    .mau_c_sub{
        position: absolute;
        top: -2.625rem;
        right: 0;
    }
    .mau_small_cs{
        position: absolute;
        top: 8.438rem;
        right: 2.125rem;
    }
    .mau_small_cy{
        position: absolute;
        top: 13.25rem;
        right: 0.375rem;
    }
    .Heisei_mau_wrap .mau_box{
        margin-left: 1rem;
        margin-right: 1rem;
    }
    .mau_box_tt{
        font-size: 1.125rem;
        line-height: 1.75rem;
        text-align: left;
        padding-left: 0.563rem;
    }
    .mau_box_ct li .box_img{
        max-width: 8.25rem;
    }
    .mau_box_ct li p{
        font-size: 1rem;
        line-height: 1.625rem;
    }
    .mau_box_ct li{
        padding-left: 1rem;
        padding-right: 1rem;
    }
    .mau_box_ct li:first-child{
        display: flex;
        align-items: center;
        padding-top: 0.563rem;
    }
    .mau_box_ct li:last-child{
        margin-top: 0.313rem;
    }
    .mau_box_btn{
        margin-top: 0.938rem;
    }
    .mau_box_btn span{
        font-size: 1rem;
        line-height: 1.25rem;
        padding: 0.625rem;
        display: inline-block;
    }
    .mau_box_btn img{
        width: 1.25rem;
        position: relative;
        top: 0.563rem;
        right: 0.938rem;
    }
    .box_img img{
        width: 16.875rem;
    }
    .mau_small_imgs.caaxd img{
        width: 5rem;
        position: relative;
        z-index: 2;
    }
    .list_mauh li:nth-child(4){
        display: flex;
        margin-top: 3.5rem;
    }
    .mau_small_d{
        position: absolute;
        left: 3.438rem;
        top: -5.5rem;
        z-index: 2;
    }
    .mau_d_sub{
        flex-basis: 6.5rem;
        flex-shrink: 0;
        flex-grow: 0;
        margin-top: 2.5rem;
    }
    .dxa, .dxb, .dxc{
        margin-left: -6.5rem;
    }
    .mau_small_d img{
        width: 2.563rem;
    }
    .mau_small_dc{
        position: absolute;
        top: 5.563rem;
        z-index: 1;
        left: -0.125rem;
    }
    .mau_small_dc img{
        width: 3.438rem;
    }
    .mau_small_db{
        display: none;
    }
    .mau_small_imgs.caaxd, .mau_d_sub{
        position: relative;
    }
    .maus_a_d::after{
        width: 15.188rem;
        height: 10.563rem;
        background: #F1EEEA;
        top: 2.375rem;
        right: 0;
        z-index: 1;
    }
    .mau_small_imgs.caaxd::after{
        content: "";
        width: 5.5rem;
        height: 5.5rem;
        background: #F1EEEA;
        position: absolute;
        top: -1rem;
        left: 0;
        z-index: 1;
    }
    .hei_mau_one{
        padding-left: 1rem;
        padding-right: 1rem;
        padding-top: 1.375rem;
        padding-bottom: 3.75rem;
        position: relative;
        z-index: 2;
    }
    .mau_one_wrap .title_slider{
        margin-bottom: 1.188rem;
    }
    .mau_one_righ{
        margin-top: 1.188rem;
    }
    .m_o_itemb .m_o_tt, .m_o_itemd .m_o_tt{
        margin-top: 0.5rem;
    }
    .m_o_itemc .m_o_tt{
        margin-top: 0.438rem;
    }
    .m_o_itemb .m_o_text, .m_o_itemd .m_o_text{
        margin-top: 0.313rem;
    }
    .m_o_itemc .m_o_text{
        margin-top: 0.438rem;
    }
    .m_o_itemb .m_o_bb{
        margin-top: 2.063rem;
    }
    .mau_one_left img{
        width: 22.375rem;
    }
    .mau_one_tt, .m_o_tt{
        font-size: 1.5rem;
        line-height: 2.375rem;
    }
    .m_o_box{
        padding: 1rem;
    }
    .mau_o_list li a{
        font-size: 1rem;
        line-height: 2rem;
    }
    .mau_o_content{
        font-size: 1rem;
        line-height: 2rem;
        margin-top: 1rem;
        margin-bottom: 1rem;
    }
    .mau_o_list li::before{
        width: 0.708rem;
        height: 0.708rem;
    }
    .hei_mau_one .mau_box{
        margin-top: 2.625rem;
    }
    .mau_o_list li{
        padding-left: 1.25rem;
    }
    .mau_one_wrap{
        margin-bottom: 3rem;
    }
    .m_o_img img{
        width: 22.375rem;
    }
    .m_o_text, .m_o_bt{
        font-size: 1rem;
        line-height: 1.5rem;
    }
    .m_o_bb{
        padding-top: 1.5rem;
        padding-left: 0.5rem;
        padding-right: 0.5rem;
        padding-bottom: 0.5rem;
        margin-top: 1.875rem;
    }
    .m_o_bts{
        text-align: center;
        margin-top: 1rem;
    }
    .m_o_bts a{
        font-size: 1.125rem;
        line-height: 1.625rem;
        padding: 1.063rem 1rem;
        width: 20.375rem;
        display: block;
    }
    .m_o_bb ul li{
        font-size: 0.875rem;
        line-height: 1.875rem;
    }
    .fix-temotokuyou{
        font-size: 0.875rem;
        line-height: 1.625rem;
    }
    .m_o_bb .m_o_bt{
        padding: 0.25rem 0.5rem;
        left: 0.5rem;
        top: -1rem;
    }
    .flxa{
        margin-bottom: 1.5rem;
    }
    .m_o_itemb, .m_o_itemd{
        display: flex;
        flex-wrap: wrap-reverse;
    }
    .m_o_itemb .m_o_box, .m_o_itemb .m_o_img,  .m_o_itemd .m_o_box, .m_o_itemd .m_o_img{
        flex-basis: 100%;
    }
    .mau_big_ttk{
        font-size: 1rem;
        line-height: 2rem;
    }
    .wrap_bnn{
        padding-left: 1rem;
        padding-right: 1rem;
        padding-top: 2.375rem;
    }
    .mau_big_ttk{
        margin-top: 0.688rem;
        margin-bottom: 2.063rem;
    }
    .sub_b_l img{
        width: 2.763rem;
    }
    .tthv{
        font-weight: 700;
        font-size: 1rem;
        line-height: 2.125rem;
        letter-spacing: 0.06em;
        color: #D48154;
        padding-left: 0.563rem;
    }
    .mau_big_box .sub_b_r p{
        font-size: 0.875rem;
        line-height: 1.625rem;
    }
    .sub_box_x{
        max-width: 22.375rem;
        margin: 0 auto;
        background: #ffffff;
        width: 100%;
        position: relative;
        border-radius: 0.375rem;
    }
    .in_sub_box{
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        align-items: center;
        padding-top: 0.813rem;
    }
    .sub_b_r{
        flex-basis: 100%;
        flex-shrink: 0;
        flex-grow: 0;
        padding-left: 1rem;
        padding-right: 1rem;
        margin-bottom: 0.625rem;
        padding-top: 0.313rem;
    }
    .bb_btn a{
        font-size: 1rem;
        line-height: 1.25rem;
        padding: 0.625rem;
        display: block;
        width: 100%;
        border-top-left-radius: 0;
        border-top-right-radius: 0;
    }
    .sub_mmn{
        font-size: 1rem;
        line-height: 1.625rem;
        margin-top: 2rem;
    }
    .sub_mmn span{
        font-size: 0.7rem;
    }
    .mau_img_x{
        padding-bottom: 2rem;
    }
    .axnb_bottom, .mau_img_x{
        background-color: #F1EEEA;
    }
    .choice_grave_wrap{
        padding-left: 1rem;
        padding-right: 1rem;
    }
    .choice_grv_sub{
        font-size: 1rem;
        line-height: 2rem;
        margin-top: 0.625rem;
    }
    .list_grave{
        margin-top: 1.5rem;
    }
    .grave_img img{
        width: 22.375rem;
    }
    .grv_top{
        font-size: 1rem;
        line-height: 1.125rem;
        margin-bottom: 0.5rem;
    }
    .grave_content{
        padding: 1rem;
    }
    .grv_bt{
        font-size: 1.5rem;
        line-height: 1.875rem;
    }
    .grave_item{
        margin-bottom: 1rem;
    }
    .grave_content::after{
        width: 1.25rem;
        height: 1.25rem;
    }
    .grave_box .sub_b_l img{
        width: 5rem;
    }
    .grave_box .tthv{
        flex-basis: 76%;
        line-height: 1.625rem;
        padding-left: 0;
        padding-right: 0.5rem;
    }
    .grave_box{
        margin-top: 1.5rem;
        padding-top: 0.563rem;
    }
    .bb_btn.grv_btn{
        margin-top: 0.313rem;
    }
    .grave_box .sub_b_r p{
        font-size: 0.875rem;
        line-height: 1.625rem;
        letter-spacing: 0.06em;
    }
    .choice_grave{
        padding-bottom: 2.5rem;
        padding-top: 0.625rem;
    }
    .news-title{
        font-size: 1rem;
    }
    .grv_sub_title{
        font-size: 1.5rem;
        line-height: 2.375rem;
    }
    .bl_list_title{
        font-size: 1.125rem;
        line-height: 1.125rem;
    }
    .graves_sub, .list_post{
        margin-top: 2.5rem;
    }
    .graves_sub .choice_grv_sub{
        padding-top: 0.25rem;
    }
    .bl_list_ct li a{
        font-size: 1rem;
        line-height: 2.25rem;
    }
    .bl_list_title{
        padding-bottom: 0.938rem;
    }
    .bl_list_ct{
        margin-top: 1rem;
    }
    .list_itembl{
        margin-bottom: 2.25rem;
    }
    /* Fix new section */
    .heymauwrap .img_mauss img{
        width: 3.125rem;
        height: 5rem;
        display: block;
    }
    .heyupdatenew{
        background-color: #ffffff;
    }
    .heymauwrap{
        padding-top: 2rem;
        margin-left: 0.75rem;
        margin-right: 0.75rem;
        background: #F1EEEA;
        padding-left: 0.75rem;
        padding-right: 0.75rem;
        margin-top: -2rem;
        margin-bottom: 2rem;
        padding-bottom: 2rem;
        position: relative;
        z-index: 1;
    }
    .heymauwrap .heyab{
        margin-top: 1rem;
    }
    .heymauwrap .title_slider{
        font-size: 1.675rem;
        line-height: 2.425rem;
    }
    .hei_mau_one .m_o_itema .m_o_bb{
        margin-top: 2.5rem;
    }
    .hei_mau_one .m_o_itema .m_o_bb .m_o_bt{
        top: -1.875rem;
    }
    /* Testi */
    .cnv-gdnen{
        margin-left: -1rem;
        margin-right: -1rem;
        background-color: #F7F7F7;
        padding-top: 1.875rem;
        padding-left: 1rem;
        padding-right: 1rem;
        padding-bottom: 1.875rem;
    }
    .cnv-gdnen .cnv-gdnen-wrap{
        background-color: #ffffff;
        padding: 1.875rem 1rem;
    }
    .cnv-gdnen .cnvo-gdn-imgl img{
        margin: 0 auto;
    }
    .cnv-gdnen .cnv-gdct{
        margin-top: 1.875rem;
    }
    .hs-seo-title{
        font-size: 0.75rem;
        padding-left: 0.5rem;
        padding-right: 0.5rem;
        padding-top: 0.5rem;
        padding-bottom: 0.5rem;
        background-color: #FFFFFF;
    }
}

/* ===== Phase 2-A ヒーロー改修（2026-04-22） ===== */
.main-visual{
    position:relative;
    overflow:hidden;
}
.hero_strip{
    position:relative;
    z-index:3;
    padding:40px 20px 48px;
    background:linear-gradient(180deg, #F1EEEA 0%, #FFFFFF 100%);
}
.hero_strip .containers{
    max-width:1200px;
    margin:0 auto;
}
.hero_facts{
    list-style:none;
    margin:0;
    padding:0;
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:12px;
}
.hero_facts .fact{
    background:rgba(255,255,255,.92);
    border-left:4px solid #D48154;
    padding:12px 14px;
    border-radius:6px;
    display:flex;
    flex-direction:column;
    gap:4px;
}
.hero_facts .fact_head{
    font-size:12px;
    color:#666;
    letter-spacing:.05em;
}
.hero_facts .fact_body{
    font-size:14px;
    line-height:1.4;
    color:#222;
}
.hero_facts .fact_body strong{
    font-size:22px;
    font-weight:700;
    color:#D48154;
    margin:0 2px;
}
.hero_facts .fact_body small{
    display:block;
    font-size:11px;
    color:#666;
    margin-top:2px;
}

.hero_cta{
    margin-top:20px;
    display:flex;
    gap:12px;
    flex-wrap:wrap;
}
.btn_cta{
    flex:1 1 220px;
    min-width:220px;
    padding:14px 20px;
    border-radius:8px;
    text-align:center;
    text-decoration:none;
    display:flex;
    flex-direction:column;
    gap:3px;
    transition:transform .15s ease, box-shadow .15s ease;
}
.btn_cta:hover{
    transform:translateY(-2px);
    box-shadow:0 6px 16px rgba(0,0,0,.12);
}
.btn_cta .btn_label{
    font-size:17px;
    font-weight:700;
}
.btn_cta .btn_sub{
    font-size:12px;
    opacity:.85;
}
.btn_primary{
    background:#D48154;
    color:#fff;
}
.btn_secondary{
    background:#fff;
    color:#D48154;
    border:2px solid #D48154;
}

.hero_bonus{
    margin-top:14px;
    font-size:14px;
    color:#222;
    display:flex;
    align-items:center;
    gap:10px;
    flex-wrap:wrap;
}
.hero_bonus .bonus_tag{
    background:#F1EEEA;
    color:#D48154;
    font-weight:700;
    padding:4px 10px;
    border-radius:4px;
    font-size:12px;
}
.hero_bonus strong{
    color:#D48154;
}

@media (max-width:780px){
    .hero_facts{
        grid-template-columns:repeat(2,1fr);
        gap:8px;
    }
    .hero_facts .fact{
        padding:10px;
    }
    .hero_facts .fact_body strong{
        font-size:18px;
    }
    .btn_cta{
        flex:1 1 100%;
    }
}

/* 21区 完売表示 */
.sold-out-badge{
    display:inline-block;
    margin-left:10px;
    padding:2px 12px;
    background:#C6613F;
    color:#FAF9F5;
    font-size:13px;
    font-weight:500;
    border-radius:2px;
    vertical-align:middle;
    letter-spacing:0.1em;
}
.sold-out-img-wrap{
    position:relative;
}
.sold-out-overlay{
    position:absolute;
    top:0;
    left:0;
    width:100%;
    height:100%;
    display:flex;
    align-items:center;
    justify-content:center;
    background:rgba(20,20,19,0.45);
    color:#FAF9F5;
    font-size:28px;
    font-weight:500;
    letter-spacing:0.2em;
    z-index:2;
}
.sold-out-section .m_o_bts{
    display:none;
}
@media(max-width:780px){
    .sold-out-badge{
        font-size:11px;
        padding:2px 8px;
        margin-left:6px;
    }
    .sold-out-overlay{
        font-size:20px;
    }
}

/* =====================================================
   平成御廟 デザインリフレッシュ 2026-06
   既存 style.css / style-custom.css の後に読み込む上書き専用シート
   （本番では style.css 末尾 or 子テーマとして追記）
   ===================================================== */

:root{
  --hg-ink: #21251f;
  --hg-paper: #FAF9F5;
  --hg-beige: #F1EEEA;
  --hg-green: #3A5A40;
  --hg-green-dark: #2E4632;
  --hg-gold: #B08D57;
  --hg-serif: 'Shippori Mincho', 'Noto Serif Japanese', 'Noto Serif JP', serif;
  --hg-sans: 'Noto Sans JP', sans-serif;
}

/* ---------- 0. ベース ---------- */
body{ color: var(--hg-ink); }

/* ---------- 1. ヒーロー（全画面動画＋オーバーレイ＋CTA） ---------- */
.main-visual{
  position: relative;
  height: min(88svh, 860px);
  min-height: 540px;
  background: #18201a;
  overflow: hidden;
}
#videoWrap{
  position: absolute;
  inset: 0;
  overflow: hidden;
  max-height: none;
  height: 100%;
}
#videoWrap video{
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  margin: 0;
}
/* 文字可読化のための薄いグラデーション */
.main-visual::after{
  content: "";
  position: absolute;
  inset: 0;
  z-index: 1;
  pointer-events: none;
  background: linear-gradient(180deg,
    rgba(10,14,10,.25) 0%,
    rgba(10,14,10,.05) 38%,
    rgba(10,14,10,.38) 100%);
}
.text_hero{
  position: absolute;
  inset: 0;
  z-index: 2;
  display: flex;
  align-items: center;
  max-width: 68.75rem;
  margin: 0 auto;
  padding: 0 24px;
  height: 100%;
}
.main_text_hero{
  font-family: var(--hg-serif);
  font-weight: 500;
  font-size: clamp(34px, 4.6vw, 58px);
  line-height: 1.55;
  letter-spacing: .16em;
  color: #fff;
  text-shadow: 0 1px 24px rgba(0,0,0,.45);
}
.sub_text_hero{
  font-family: var(--hg-serif);
  font-size: clamp(14px, 1.35vw, 18px);
  letter-spacing: .12em;
  line-height: 2.3;
  margin-top: 20px;
  color: #fff;
  text-shadow: 0 1px 16px rgba(0,0,0,.55);
}
/* ヒーロー内CTA（refresh.jsで挿入） */
.hero_cta_inline{
  display: flex;
  gap: 14px;
  margin-top: 36px;
  flex-wrap: wrap;
}
.hero_cta_inline .hcta{
  font-family: var(--hg-sans);
  font-size: 15px;
  letter-spacing: .1em;
  padding: 15px 34px;
  border-radius: 2px;
  text-decoration: none;
  transition: background .2s ease, color .2s ease, transform .15s ease;
}
.hero_cta_inline .hcta:hover{ transform: translateY(-2px); }
.hcta_fill{
  background: var(--hg-green);
  color: #fff;
  border: 1px solid var(--hg-green);
}
.hcta_fill:hover{ background: var(--hg-green-dark); }
.hcta_line{
  background: rgba(255,255,255,.08);
  color: #fff;
  border: 1px solid rgba(255,255,255,.85);
  backdrop-filter: blur(2px);
}
.hcta_line:hover{ background: rgba(255,255,255,.22); }
/* スクロールキュー */
.hero_scrollcue{
  position: absolute;
  bottom: 22px;
  left: 50%;
  transform: translateX(-50%);
  z-index: 2;
  color: #fff;
  font-size: 11px;
  letter-spacing: .3em;
  text-align: center;
  opacity: .85;
}
.hero_scrollcue::after{
  content: "";
  display: block;
  width: 1px;
  height: 34px;
  margin: 8px auto 0;
  background: linear-gradient(180deg, #fff, transparent);
  animation: hg-drip 2.2s ease-in-out infinite;
}
@keyframes hg-drip{
  0%{ transform: scaleY(0); transform-origin: top; }
  45%{ transform: scaleY(1); transform-origin: top; }
  55%{ transform: scaleY(1); transform-origin: bottom; }
  100%{ transform: scaleY(0); transform-origin: bottom; }
}

/* ---------- 1.5 グローバルナビの刷新（PC） ---------- */
@media (min-width: 781px){
  .mainnav .menu{
    display: flex;
    align-items: flex-end;
    gap: 6px;
  }
  .mainnav .menu > li{ margin: 0; }
  .mainnav .menu > li > a{
    position: relative;
    display: block;
    font-family: var(--hg-sans);
    font-size: 15px;
    font-weight: 500;
    letter-spacing: .08em;
    color: var(--hg-ink);
    line-height: 1;
    padding: 14px 14px 12px;
    text-decoration: none;
    transition: color .2s ease;
  }
  /* ホバー時の下線（深緑） */
  .mainnav .menu > li > a::after{
    content: "";
    position: absolute;
    left: 14px;
    right: 14px;
    bottom: 4px;
    height: 2px;
    background: var(--hg-green);
    transform: scaleX(0);
    transform-origin: left;
    transition: transform .25s ease;
  }
  .mainnav .menu > li > a:hover{ color: var(--hg-green); }
  .mainnav .menu > li > a:hover::after{ transform: scaleX(1); }
}
/* 「水音の郷」サブテキストはPC/SPとも表示しない（2026-06-10 ユーザー指示・樹木葬のみ） */
.menu .sub-text{
  display: none !important;
}
@media (min-width: 781px){
}

/* ---------- 2. 実績ストリップを表示（既存 .hero_strip を再着色） ---------- */
.hero_strip{ display: block; }

.hero_facts .fact{ border-left-color: var(--hg-gold); }
.hero_facts .fact_body strong{ color: var(--hg-green); }
.hero_bonus .bonus_tag{ color: var(--hg-green); }
.hero_bonus strong{ color: var(--hg-green); }
.btn_primary{ background: var(--hg-green); }
.btn_primary:hover{ background: var(--hg-green-dark); }
.btn_secondary{ color: var(--hg-green); border-color: var(--hg-green); }

/* ---------- 3. 動画ギャラリー3本グリッド（独自マークアップ .hg_video_gallery） ---------- */
.hg_video_gallery{
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 28px;
  max-width: 1100px;
  margin: 0 auto;
  padding: 8px 24px 56px;
}
.hg_card{
  display: block;
  text-decoration: none;
}
.hg_thumb{
  position: relative;
  display: block;
  border-radius: 4px;
  overflow: hidden;
  box-shadow: 0 10px 28px rgba(33,37,31,.16);
  transition: transform .3s ease, box-shadow .3s ease;
}
.hg_card:hover .hg_thumb{
  transform: translateY(-4px);
  box-shadow: 0 16px 36px rgba(33,37,31,.22);
}
.hg_thumb img{
  display: block;
  width: 100%;
  aspect-ratio: 16 / 9;
  object-fit: cover;
}
.hg_play{
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 56px;
  height: 56px;
  border: 2px solid rgba(255,255,255,.9);
  border-radius: 50%;
  background: rgba(0,0,0,.18);
}
.hg_play::after{
  content: "";
  position: absolute;
  top: 50%;
  left: 53%;
  transform: translate(-50%, -50%);
  border-style: solid;
  border-width: 9px 0 9px 15px;
  border-color: transparent transparent transparent #fff;
}
.hg_caption{
  display: block;
  font-family: var(--hg-serif);
  font-size: 15px;
  letter-spacing: .08em;
  margin-top: 14px;
  color: var(--hg-ink);
  text-align: center;
}
@media (max-width: 780px){
  .hg_video_gallery{ grid-template-columns: 1fr; gap: 32px; }
}

/* ---------- 4. 見出し・ラベル・ボタンのトークン統一 ---------- */
.title_slider, .mau_title, .m_o_tt, .mau_one_tt,
.grv_bt, .grv_sub_title, .mau_box_tt, .hei-news-title,
.main_text_hero, .mau_big_ttk{
  font-family: var(--hg-serif);
}
.title_slider{ letter-spacing: .18em; }

/* 紺・紫ラベルの廃止 → 深緑 */
.hei-news-title{ background: var(--hg-green-dark); }
.m_o_bt{ background: var(--hg-green-dark) !important; color: #fff; }

/* ボタン統一（テラコッタ → 深緑） */
.mau_btn, .m_o_bts a, .mau_box_btn, .bb_btn a{
  background: var(--hg-green) !important;
  border-radius: 2px;
  letter-spacing: .1em;
  transition: background .2s ease, transform .15s ease;
}
.mau_btn:hover, .m_o_bts a:hover, .mau_box_btn:hover, .bb_btn a:hover{
  background: var(--hg-green-dark) !important;
  transform: translateY(-2px);
}
.mau_box_tt{ color: var(--hg-green-dark); }

/* 水音の郷 合成バナーは廃止（実写セクションへ役割移管） */
.ctt_img_bn{ display: none; }

/* 残存するオレンジ系見出しも深緑に統一 */
.sub_b_r h5, .tthv, .out_grave, .mau_c_note{ color: var(--hg-green-dark) !important; }
.grv_sub_title{ font-family: var(--hg-serif); }

/* 右下フロートの円形「見学予約」も深緑に統一 */
.hei_scroll_top .scroll-top{
  background: var(--hg-green) !important;
  color: #fff !important;
}
.hei_scroll_top .scroll-top:hover{
  background: var(--hg-green-dark) !important;
}

/* ---------- 5. スクロール・リビール ---------- */
.hg-reveal{
  opacity: 0;
  transform: translateY(26px);
  transition: opacity .9s cubic-bezier(.22,.61,.36,1), transform .9s cubic-bezier(.22,.61,.36,1);
}
.hg-reveal.is-visible{
  opacity: 1;
  transform: none;
}
@media (prefers-reduced-motion: reduce){
  .hg-reveal{ opacity: 1; transform: none; transition: none; }
  .hero_scrollcue::after{ animation: none; }
}


/* 旧ドロップダウンのサブメニューは表示しない（stg互換。本番はフラットナビのため影響なし） */
.mainnav .menu li ul{ display: none !important; }

/* ============================================================
   フッター視認性修正 2026-06-12（モバイルUX監査 重大#1）
   - 旧テーマ全ページ: 本ファイル冒頭の #footer{background:#FFFFFF} が
     新共通フッターの暗背景(#141413・style.css Phase1)を上書きし、
     生成りリンク(#E8E6DC)が白背景で不可視 → 末尾追記で暗背景へ統一
   - トップ含む全ページ: .address p{color:#222222} が暗背景に沈む → 明色化
   ============================================================ */
#footer{ background-color: #141413; }
#footer .address p{ color: #C8C5BB; }

/* ===== v2共通フッター（f2）旧テーマ展開 + ナビ見学予約ボタン化（2026-06-12） ===== */
footer{border-top:1px solid #E5E0D8;background:#FAF9F5;padding:72px 24px 0;font-family:'Noto Sans JP',sans-serif}
.f2-in{max-width:960px;margin:0 auto}
.f2-cols{display:grid;grid-template-columns:1.05fr 1.15fr 1fr;gap:48px}
.f2-h{font-family:'Shippori Mincho',serif;font-size:15px;font-weight:500;letter-spacing:.18em;color:#313131;margin:0 0 14px;padding-bottom:12px;border-bottom:1px solid #E5E0D8}
.f2-col ul{list-style:none;margin:0;padding:0}
.f2-col li{margin:0;padding:0;list-style:none}
.f2-col li a{display:inline-block;font-size:13px;letter-spacing:.06em;color:#6B6B6B;padding:5px 0;line-height:1.8;transition:color .3s;text-decoration:none}
.f2-col li a:hover{color:#3A5A40}
.f2-tel{display:inline-block;font-family:'Shippori Mincho',serif;font-size:23px;letter-spacing:.05em;color:#2E4632;margin-top:16px;line-height:1.4;text-decoration:none}
.f2-time{font-size:11.5px;color:#6B6B6B;letter-spacing:.04em;line-height:1.8;margin:0}
.f2-btm{margin-top:64px;padding:26px 0 34px;border-top:1px solid #E5E0D8;text-align:center;line-height:2}
.f2-name{font-family:'Shippori Mincho',serif;font-size:14.5px;letter-spacing:.16em;color:#313131;margin:0}
.f2-name span{font-size:11px;color:#6B6B6B;letter-spacing:.1em;margin-left:12px}
.f2-addr{font-size:12px;color:#6B6B6B;letter-spacing:.06em;margin:0}
.f2-addr a{color:inherit}
.f2-c{font-size:10.5px;color:#6B6B6B;letter-spacing:.12em;margin:10px 0 0;opacity:.85}
@media (max-width:880px){
  footer{padding:56px 24px 0}
  .f2-cols{grid-template-columns:1fr;gap:38px}
  .f2-btm{margin-top:46px;padding-bottom:40px}
}

/* ===== v2共通ヘッダー（h-top/h-nav）旧テーマ展開（2026-06-12）===== */
.h-top{background:#fff;border-bottom:1px solid #E5E0D8}
.h-top-in{max-width:1200px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 28px}
.h-top .logo{display:flex;align-items:center}
.h-top .logo img{height:58px;width:auto;display:block}
.h-contact{display:flex;align-items:stretch;gap:8px}
.qa{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:7px;background:#F3F1EA;padding:12px 20px;min-width:104px;transition:background .3s}
.qa:hover{background:#EBE7DC}
.qa img{height:36px;width:auto}
.qa span{font-size:13px;letter-spacing:.04em;color:#313131;font-weight:500;line-height:1.3}
.h-phone{display:flex;flex-direction:column;justify-content:center;padding-left:20px;line-height:1.6}
.h-phone .cap{font-size:12.5px;font-weight:600;letter-spacing:.04em;color:#313131}
.h-phone .num{display:flex;align-items:center;gap:8px;font-family:'Shippori Mincho',serif;font-size:26px;font-weight:600;color:#2E4632;letter-spacing:.04em;line-height:1.3}
.h-phone .num img{height:18px;width:auto}
.h-phone .time{font-size:11px;color:#6B6B6B;letter-spacing:.03em}
.sp-cta{display:none}
.h-nav{position:sticky;top:0;z-index:100;background:rgba(250,249,245,.95);backdrop-filter:blur(8px);border-bottom:1px solid #E5E0D8}
.h-nav-in{max-width:1200px;margin:0 auto;display:flex;align-items:center;justify-content:center;gap:32px;padding:0 28px}
.h-nav-in a{font-size:13px;letter-spacing:.12em;color:#313131;padding:15px 0;display:block}
.btn-cta{background:#3A5A40;color:#fff;padding:11px 26px;font-size:13px;letter-spacing:.18em;transition:background .3s}
.h-nav-in a.btn-cta{padding:11px 26px;color:#fff;margin-left:6px}
.btn-cta:hover{background:#2E4632;color:#fff}
/* 旧テーマのグローバル a:hover{opacity:.8} を v2 同様に無効化（ヘッダー・フッター内） */
.h-top a:hover,.h-nav-in a:hover,footer a:hover{opacity:1}
/* トップのSEO用h1はv2の見た目に合わせ視覚非表示（SEOテキストは維持） */
.hs-seo-title{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
@media (max-width:880px){
  .h-top{position:sticky;top:0;z-index:100}
  .h-top-in{padding:10px 16px}
  .h-contact{display:none}
  .sp-cta{display:block}
  .h-nav{display:none}
  .h-top .logo img{height:38px}
}

/* === QA中レベル修正 2026-06-12: PCでは右下浮遊円ボタン「霊園の見学予約はこちらから」を非表示 ===
   v2共通ヘッダー（sticky）に見学予約ボタンが常設され冗長＋本文を隠すため。SPでは従来どおり表示 */
@media (min-width: 881px) {
  .hei_scroll_top { display: none !important; }
}

/* ===== SPハンバーガーメニュー 2026-06-12 ===== */
.spd-chk,.sp-menu-btn,.sp-drawer{display:none}
@media (max-width:880px){
  .h-top-in{gap:10px}
  .sp-cta{margin-left:auto}
  .sp-menu-btn{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;width:48px;height:44px;cursor:pointer;flex:none;-webkit-tap-highlight-color:transparent}
  .sp-menu-btn span{display:block;width:20px;height:1.5px;background:#313131;transition:transform .25s,opacity .25s}
  .sp-menu-btn i{font-style:normal;font-size:9px;letter-spacing:.06em;color:#313131;line-height:1;margin-top:2px}
  .spd-chk:checked~.h-top .sp-menu-btn span:nth-of-type(1){transform:translateY(5.5px) rotate(45deg)}
  .spd-chk:checked~.h-top .sp-menu-btn span:nth-of-type(2){opacity:0}
  .spd-chk:checked~.h-top .sp-menu-btn span:nth-of-type(3){transform:translateY(-5.5px) rotate(-45deg)}
  .sp-drawer{display:block;position:fixed;inset:0;z-index:99;background:#FAF9F5;padding:80px 24px 40px;overflow-y:auto;-webkit-overflow-scrolling:touch;opacity:0;visibility:hidden;transform:translateY(-8px);transition:opacity .3s ease,transform .3s ease,visibility .3s}
  .spd-chk:checked~.sp-drawer{opacity:1;visibility:visible;transform:none}
  html:has(.spd-chk:checked){overflow:hidden}
  .spd-nav{border-top:1px solid #E5E0D8}
  .spd-nav a{display:flex;align-items:center;justify-content:space-between;padding:15px 4px;border-bottom:1px solid #E5E0D8;font-size:15px;letter-spacing:.1em;color:#313131;line-height:1.6;text-decoration:none}
  .spd-nav a::after{content:"";width:7px;height:7px;border-top:1px solid #B08D57;border-right:1px solid #B08D57;transform:rotate(45deg);flex:none}
  .spd-cta{display:block;margin-top:24px;background:#3A5A40;color:#fff;text-align:center;padding:15px;font-size:14px;letter-spacing:.18em;text-decoration:none}
  .spd-quick{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:10px}
  .spd-quick a{display:flex;align-items:center;justify-content:center;gap:8px;background:#F3F1EA;padding:13px 8px;font-size:13px;letter-spacing:.04em;color:#313131;text-decoration:none}
  .spd-quick img{height:20px;width:auto}
  .spd-tel{margin-top:28px;text-align:center;line-height:1.7}
  .spd-tel .cap{display:block;font-size:12px;font-weight:600;color:#313131}
  .spd-tel .num{display:block;font-family:'Shippori Mincho',serif;font-size:28px;font-weight:600;color:#2E4632;letter-spacing:.04em;text-decoration:none}
  .spd-tel .time{display:block;font-size:11px;color:#6B6B6B}
  .sp-drawer a:hover{opacity:1}
}
