@charset "UTF-8";
@import url(destyle.min.css);

/*=== 独自設定 ===*/
html{
    font-size: 62.5%;
    scroll-behavior: smooth;
}
body{
    font-family: "Noto Sans JP", -apple-system, BlinkMacSystemFont, "Hiragino Kaku Gothic ProN", "Hiragino Sans", "Meiryo", sans-serif;
    font-weight: 400;
    font-style: normal;
    font-size: var(--fontSize-20);
    color: #000;
}
h1, h2, h3, h4, h5, h6{
    font-weight: 700;
}
img{
    width: 100%;
    height: auto;
    object-fit: cover;
    vertical-align: baseline;
}
::before,
::after{
    background-repeat: no-repeat;
    background-size: cover;
}
textarea{ resize: none; }

/*=== カラー設定・余白指定・フォントサイズ ===*/
:root{
    --dark-brown: #411100;
    --bright-brown: #602600;
    --vivid-orange: #e15510;
    --dull-orange: #ce632f;
    --vivid-yellow: #f8b500;
    --dull-yellow: #e3ae3b;
    --vivid-red: #d22e20;
    --fontSize-22: clamp(1.6rem, 1.1458333333333333vw, 2.2rem);
    --fontSize-20: clamp(1.6rem, 1.0416666666666665vw, 2rem);
    --fontSize-18: clamp(1.6rem, 0.9375vw, 1.8rem);
}

/*=== フォント ===*/
.TA_engeifude{/*TA演芸筆*/
    font-family: "ta-engeifude", sans-serif;
    font-weight: 400;
    font-style: normal;
}
.Brothers_OT{/*Brothers OT...Regular：400、SuperSlant：400、Bold：700*/
    font-family: "brothers", sans-serif;
    font-weight: 400;
    font-style: normal;
}
.Brothers_OTWordLogos{
    font-family: "brothers-word-logos", sans-serif;
    font-weight: 400;
    font-style: normal;
}
.AB_Tombo_Bold{
    font-family: "ab-tombo-bold", sans-serif;
    font-weight: 400;
    font-style: normal;
}
.rocknroll_one_regular{/*RocknRoll One*/
    font-family: "RocknRoll One", sans-serif;
    font-weight: 400;
    font-style: normal;
}
.Niveau_Grotesk_Bold{/*Niveau Grotesk Bold Small Caps*/
    font-family: "niveau-grotesk-small-caps", sans-serif;
    font-weight: 700;
    font-style: normal;
}
.Toppan_BunkyuMidashiMinStdN{/*凸版文久見出し明朝 StdN*/
    font-family: "toppan-bunkyu-midashi-min-st", serif;
    font-weight: 900;
    font-style: normal;
}
.SicSelifGothicE_Regular{/*SicセリフゴシックE*/
    font-family: "sicselifgothice", sans-serif;
    font-weight: 400;
    font-style: normal;
}


/*=== パーツ設定 ===*/
/*== ボタン ==*/
.link_bigBtn_box{
    margin: 9rem auto 0;
    width: clamp(32rem, 25.46875vw, 48.9rem);
    height: clamp(5.431rem, 4.322916666666667vw, 8.3rem);
    transition: transform .3s ease;
}
.link_smallBtn_box{
    width: clamp(25rem, 17.1875vw, 33rem);
    height: clamp(4.243rem, 2.9166666666666665vw, 5.6rem);
}
.link_btn_box{
    background-repeat: no-repeat;
    background-size: cover;
    transition: transform .3s ease;
}
.link_btn_yellow_box{ background-image: url(../img/btn_yellow.png); }
.link_btn_box:hover{ transform: scale(0.97); }
.link_btn{
    position: relative;
    display: flex;
    width: 100%;
    height: 100%;
    color: #fff;
    align-items: center;
    justify-content: center;
}
.link_bigBtn{
    font-size: clamp(1.6rem, 1.25vw, 2.4rem);
}
.link_smallBtn{
    font-size: clamp(1.4rem, 0.8333333333333334vw, 1.6rem);
}
.link_btn::before{
    content: "";
    position: absolute;
    background-repeat: no-repeat;
    background-size: cover;
}
.link_btn_yellow_box .link_btn::before{
    background-image: url(../img/arrowR_yellow.png);
}
.link_bigBtn_box .link_btn::before{
    right: 22.5%;
    margin-top: .3rem;
    width: clamp(1.76833rem, 2.265625vw, 2.9rem);
    height: clamp(1.09667rem, 1.40625vw, 1.8rem);
}
.link_smallBtn_box .link_btn::before{
    right: 22%;
    margin-top: .3rem;
    width: clamp(1.5rem, 1.0416666666666665vw, 2rem);
    height: clamp(.931rem, 0.625vw, 1.2rem);
}

/*=== 追従関連 ===*/
.follow_animation{
    opacity: 0;
    transition: all .3s ease;
}
.follow_animation.follow-is-show{
    opacity: 1;
}
/*== 追従ボタン(バナー) ==*/
.follow_banner_wrapper{
    position: fixed;
    top: 27%;
    right: 0;
    width: clamp(4rem, 4.166666666666666vw, 8rem);
    z-index: 10;
}
.follow_banner_box{
    width: 100%;
    filter: drop-shadow(0 0 1.6rem rgba(65, 17, 0, .33));
    transition: all .3s ease;
}
.follow_banner_box:hover img { transform: scale(1.08); }
.follow_banner_box:first-of-type{ margin-bottom: 1.2rem; }
.follow_banner{ display: block; }
.follow_banner img{
    display: block;
    width: 100%;
    height: auto;
    transition: transform .3s ease;
    transform-origin: right center;
}
/*== ページトップリンク ==*/
#pagetop{
    position: fixed;
    right: clamp(1rem, 1.0416666666666665vw, 2rem);
    bottom: clamp(1.6rem, 1.25vw, 2.4rem);
    width: clamp(5rem, 5.572916666666667vw, 10.7rem);
    height: clamp(6.822rem, 7.604166666666666vw, 14.6rem);
    z-index: 10;
    transition: all .3s ease;
}
#pagetop:hover{ bottom: clamp(2.4rem, 1.6666666666666667vw, 3.2rem); }
#pagetop img{
    width: 100%;
    height: 100%;
    object-fit: cover;
}
body.active #pagetop{ display: none; }

/*=== header ===*/
header{
    position: relative;
    width: 100%;
    z-index: 10;
}
header::before{
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 1.4rem;
    background-image: url(../img/header_decoration.png);
    background-size: cover;
    background-repeat: no-repeat;
    z-index: 5;
}
/*=== is-stickyのとき ================================================= */
.is-sticky{
    background: url(../img/top_header_bg.png);
    background-repeat: no-repeat;
    background-size: cover;
    transition: .3s all;
}
.is-sticky .header{ padding: 1.6rem 2.604166666666667vw .8rem 2.604166666666667vw; }
.is-sticky .header_logo{
    margin-bottom: 0;
    max-width: 24rem;
}
.is-sticky .header_logo_bottom{ font-size: clamp(1.2rem, 0.78125vw, 1.5rem); }
.is-sticky .header_tel_num{ font-size: clamp(2.6rem, 1.9791666666666665vw, 3.8rem); }
.is-sticky .header_tel_text{ font-size: clamp(1.1rem, 0.8333333333333334vw, 1.6rem); }
/*====================================================================== */
/*=== .is-sticky-navのとき ================================================= */
.is-sticky-nav{ padding: .8rem 0 !important; }
.is-sticky-nav .menu_pc_a{ padding: .8rem 3.3333333333333335vw; }
/*====================================================================== */
.header{
    padding: 2.4rem 2.604166666666667vw .8rem 2.604166666666667vw;
    display: flex;
    width: 100%;
    justify-content: space-between;
    transition: all .3s ease;
}
.header_logo_box{
    margin-top: 0.4166666666666667vw;/*.8rem*/
}
.header_logo{
    margin-bottom: 0.20833333333333334vw;/*.4rem*/
    max-width: 36.8rem;
    width: 88%;
}
.header_logo_link{ display: block; }
.header_logo_bottom{
    font-size: clamp(1.2rem, 1.0416666666666665vw, 2rem);
    color: #fff;
    /* -webkit-text-stroke: clamp(.6rem, 0.4166666666666667vw, .8rem) #020202; */
    -webkit-text-stroke: .6rem #020202;
    paint-order: stroke fill;
}
.header_tel_num{
    position: relative;
    padding-left: clamp(6rem, 4.166666666666666vw, 8rem);
    font-size: clamp(3.2rem, 2.604166666666667vw, 5rem);
    color: #fff;
    -webkit-text-stroke: 1rem var(--dark-brown);
    paint-order: stroke;
}
.header_tel_num::before{
    content: "";
    position: absolute;
    top: 50%;
    left: 0;
    margin-top: .3rem;
    background-image: url(../img/header_tel_decoration.png);
    width: clamp(5rem, 3.854166666666667vw, 7.4rem);
    height: clamp(2.838rem, 2.1875vw, 4.2rem);
    line-height: 1;
    -webkit-transform: translateY(-50%) translateX(0%);
    transform: translateY(-50%) translateX(0%);
}
.header_tel_text_bg{
    margin-top: .4rem;
    margin-left: auto;
    border-radius: 2rem;
    max-width: 34rem;
    width: 82%;
    background-color: var(--dark-brown);
}
.header_tel_text{
    padding: .4rem .4rem;
    font-size: clamp(1.2rem, 0.9375vw, 1.8rem);
    font-weight: 700;
    color: #fff;
    text-align: center;
}

/*=== メニューPC ===*/
.menu_pc{
    position: -webkit-sticky;
    position: sticky;
    top: 0;
    padding: 1.4rem 0;
    background: url(../img/top_header_bg.png);
    background-repeat: no-repeat;
    background-size: cover;
    z-index: 10;
}
.menu_pc.is-stuck {
    box-shadow: 0 4px 16px rgba(0,0,0,0.12);
    transition: none;
}
.menu_bar{
    margin: 0 auto;
    width: fit-content;
    transition: box-shadow 0.3s ease;
    z-index: 100;
}
.menu_pc_ul{ display: flex; }
.menu_pc_li:last-of-type .menu_pc_a{ border-right: none; }
.menu_pc_a{
    border-right: .1rem dotted #f3e1b4;
    padding: 1.25vw 3.3333333333333335vw;
    display: block;
    font-size: clamp(.9rem, 1.0416666666666665vw, 2rem);
    font-weight: 700;
    color: #fff;
    transition: all .3s ease;
}
.menu_pc_a:hover{ color: #e4a116; }
.sticky-trigger{
    width: 100%;
    height: 0;
    visibility: hidden;
}
.headerBtn_bg,
.headerSP_bg{
    display: none;
}

/*=== ページ下部_お問い合わせ ===*/
.common_contact{
    position: relative;
    margin-top: 0;
    padding: 6rem 0 8.5rem;
    background-image: url(../img/common_contact_bg.png);
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
    z-index: 3;
}
.common_contact::before,
.common_contact::after{
    content: "";
    position: absolute;
    background-repeat: no-repeat;
    background-size: cover;
    z-index: 3;
}
.common_contact::before{
    background-image: url(../img/common_contact_decoration1.png);
    bottom: 0;
    left: 11.197916666666668vw;/*21.5rem*/
    width: clamp(21rem, 16.354166666666668vw, 31.4rem);
    height: clamp(31.232rem, 24.322916666666668vw, 46.7rem);
}
.common_contact::after{
    right: 19.270833333333336vw;/*37rem*/
    bottom: 0;
    background-image: url(../img/common_contact_decoration4.png);
    width: clamp(11.05rem, 6.458333333333334vw, 12.4rem);
    height: clamp(27rem, 15.78125vw, 30.3rem);
}
.common_contact_inner{
    position: relative;
    margin: 0 auto;
    max-width: 100rem;
    min-width: 70.29rem;
    width: 72%;
    z-index: 2;
}
.common_contact_inner::before,
.common_contact_inner::after{
    position: absolute;
    background-repeat: no-repeat;
    background-size: cover;
    z-index: 1;
}
.common_contact_inner::before{
    content: "";
    background-image: url(../img/common_contact_decoration3.png);
    top: -8rem;
    right: -1.5625vw;
    width: clamp(18rem, 11.666666666666666vw, 22.4rem);
    height: clamp(26.598rem, 17.239583333333332vw, 33.1rem);
}
.common_contact_inner::after{
    content: "不安や悩みを\000aプロに直接\000aご相談ください!";
    background-image: url(../img/common_contact_decoration.png);
    top: -7rem;
    right: -10.416666666666668vw;
    padding-top: clamp(3.6rem, 2.34375vw, 4.5rem);
    width: clamp(13rem, 8.489583333333334vw, 16.3rem);
    height: clamp(13.479rem, 8.802083333333334vw, 16.9rem);
    line-height: 1.5;
    font-size: clamp(1.4rem, 0.8333333333333334vw, 1.6rem);
    font-weight: 500;
    color: var(--dark-brown);
    text-align: center;
    white-space: pre-wrap;
}
.common_contact_content{
    position: relative;
    padding: clamp(6rem, 5.208333333333334vw, 10rem) 0 clamp(4rem, 4.427083333333334vw, 8.5rem);
    background-image: url(../img/common_contact_content_bg.png);
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
    aspect-ratio: 1 / 0.5995995995995996;
    z-index: 2;
}
.common_contact_content::after{
    content: "";
    position: absolute;
    top: 5rem;
    left: -5.208333333333334vw;/*-10rem*/
    background-image: url(../img/common_contact_decoration2.png);
    background-repeat: no-repeat;
    background-size: cover;
    width: clamp(9rem, 6.041666666666667vw, 11.6rem);
    height: clamp(10.552rem, 7.083333333333333vw, 13.6rem);
}
.common_contact_title{
    font-size: clamp(3.2rem, 2.604166666666667vw, 5rem);
    color: var(--dark-brown);
    text-align: center;
}
.common_contact_tel{
    position: relative;
    margin: 9rem auto clamp(3rem, 4.133333333333333vw, 6.2rem);
    text-align: center;
}
.common_contact_tel::before{
    content: "";
    position: absolute;
    top: -3.5rem;
    left: 50%;
    background-image: url(../img/common_contact_dot.png);
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
    width: clamp(48.7rem, 25.364583333333336vw, 48.7rem);
    height: clamp(1rem, 0.5208333333333333vw, 1rem);
    -webkit-transform: translateY(0%) translateX(-50%);
    transform: translateY(0%) translateX(-50%);
}
.common_contact_tel_num{
    position: relative;
    padding-left: clamp(9rem, 8.333333333333332vw, 16rem);
    display: inline-block;
    font-size: clamp(5.6rem, 6.666666666666667vw, 10rem);
    color: transparent;
    background: linear-gradient(
        to bottom,
        #d12521 0%,
        #e4a316 53%,
        #d12521 100%
    );
    -webkit-background-clip: text;
    background-clip: text;
}
.common_contact_tel_num::before{
    content: "";
    position: absolute;
    top: 50%;
    left: 0;
    margin-top: .3rem;
    background-image: url(../img/contact_decoration.png);
    width: clamp(7.718rem, 7.135416666666666vw, 13.7rem);
    height: clamp(4rem, 3.6979166666666665vw, 7.1rem);
    line-height: 1;
    -webkit-transform: translateY(-50%) translateX(0%);
    transform: translateY(-50%) translateX(0%);
}
.common_contact_link_wrapper{
    position: relative;
    margin: 0 auto;
    display: flex;
    max-width: 85.5rem;
    width: 88%;
    gap: 1.6rem 5%;
    justify-content: center;
    z-index: 4;
}
.common_contact_link_box{
    width: clamp(29rem, 27.133333333333333vw, 40.7rem);
    height: clamp(4.916rem, 4.6vw, 6.9rem);
    background-repeat: no-repeat;
    background-size: cover;
    transition: transform .3s ease;
}
.common_contact_link_box:hover{ transform: scale(0.97); }
.common_contact_link_box_yellow{ background-image: url(../img/btn_yellow.png); }
.common_contact_link_box_orange{ background-image: url(../img/btn_orange.png); }
.common_contact_link{
    position: relative;
    display: flex;
    width: 100%;
    height: 100%;
    font-size: var(--fontSize-20);
    color: #fff;
    align-items: center;
    justify-content: center;
}
.common_contact_link::after{
    content: "";
    position: absolute;
    right: clamp(2rem, 2vw, 3rem);
    margin-top: .3rem;
    width: clamp(1.6rem, 1.6vw, 2.4rem);
    height: clamp(1rem, 1vw, 1.5rem);
    background-repeat: no-repeat;
}
.common_contact_link_yellow::after{ background-image: url(../img/arrowR_brown.png); }
.common_contact_link_orange::after{ background-image: url(../img/arrowR_black.png); }

/*=== footer ===*/
footer{
    padding: 7.2rem 0 clamp(7.2rem, 6.25vw, 12rem);
    background-image: url(../img/ivory_bg_short.png);
    background-repeat: no-repeat;
    background-size: cover;
}
.footer_inner{
    margin: 0 auto;
    max-width: 156rem;
    width: 90%;
}
.footer_logo_box{
    margin: 0 auto clamp(1.6rem, 2.1333333333333333vw, 3.2rem);
    max-width: 45.2rem;
    width: 55%;
}
.footer_logo_link{ display: block; }
.footer_logo_bottom{
    font-size: clamp(1.6rem, 1.2vw, 1.8rem);
    letter-spacing: -.03em;
    color: var(--vivid-yellow);
    -webkit-text-stroke: .5rem #000;
    paint-order: stroke;
    text-align: center;
}
.footer_branch_nav_wrapper{
    margin-top: 6.4rem;
    display: flex;
    gap: 4rem 1.6rem;
    justify-content: space-between;
}
.footer_branch_wrap{
    max-width: 43.1rem;
    width: 68%;
}
.footer_branch_box{ margin-bottom: 4rem; }
.footer_branch_box:last-of-type{ margin-bottom: 0; }
.footer_branch_name_box{
    padding-left: clamp(3.2rem, 2.864583333333333vw, 5.5rem);
    display: flex;
    background-image: url(../img/footer_branch_bg.png);
    background-repeat: no-repeat;
    background-size: cover;
    aspect-ratio: 1 / 0.12761020881670534;
    align-items: center;
}
.footer_branch_name{
    font-size: var(--fontSize-18);
    font-weight: 700;
    color: var(--dark-brown);
}
.footer_branch_text,
.copyright{
    display: block;
    line-height: 1.875;
    font-size: 1.6rem;
    font-weight: 500;
    color: var(--dark-brown);
    letter-spacing: -.04em;
}
.footer_branch_text{ padding: clamp(.8rem, 1.0416666666666665vw, 2rem) 1.6rem 0 clamp(1.6rem, 2.604166666666667vw, 5rem); }
.footer_branch_text_span{ display: block; }
.footer_nav_wrap{
    display: flex;
    max-width: 99.5rem;
    width: 90%;
}
.footer_nav_inner{
    display: flex;
    width: 100%;
    gap: 4rem 1.6rem;
    justify-content: space-between;
}
.footer_nav_content{
    max-width: 43.3rem;
    width: 70%;
}
.footer_nav_box{ margin-bottom: 4rem; }
.footer_nav_content:first-of-type .footer_nav_box:is(:nth-child(2), :nth-child(3), :nth-child(5)){ margin-bottom: 2.4rem; }
.footer_nav_content:is(:first-of-type, :last-of-type) .footer_nav_box:last-of-type{ margin-bottom: 0; }
.footer_nav_a_bg{ background-color: #f5f9ea; }
.footer_nav_a,
.footer_submenu_a{
    font-weight: 500;
    color: var(--dark-brown);
}
.footer_nav_a{
    padding: 1.5rem clamp(1.6rem, 1.25vw, 2.4rem);
    display: block;
    font-size: var(--fontSize-18);
    color: var(--dark-brown);
    transition: all .3s ease;
}
.footer_nav_a:hover,
.footer_submenu_a:hover{
    color: var(--dull-orange);
}
.footer_submenu_nolink:hover{
    color: var(--dark-brown);
}
.footer_submenu_ul{
    padding: clamp(1.6rem, 1.25vw, 2.4rem) clamp(1.6rem, 1.25vw, 2.4rem) 0 clamp(1.6rem, 1.25vw, 2.4rem);
    display: flex;
    flex-wrap: wrap;
}
.footer_submenu_li{ width: 50%; }
.footer_submenu_a{
    position: relative;
    display: block;
    padding-left: clamp(1.4rem, 0.8333333333333334vw, 1.6rem);
    line-height: 1.875;
    font-size: clamp(1.4rem, 0.8333333333333334vw, 1.6rem);
    letter-spacing: -.04em;
    transition: all .3s ease;
}
.footer_submenu_a::before{
    content: "・";
    position: absolute;
    top: 50%;
    left: 0;
    color: var(--dark-brown);
    -webkit-transform: translateY(-50%) translateX(0%);
    transform: translateY(-50%) translateX(0%);
}
.copyright{
    margin-top: 9.6rem;
    text-align: center;
}
@media screen and ( max-width: 1280px ){
    /*=== ページ下部_お問い合わせ ===*/
    .common_contact::before{ left: 2rem; }
    .common_contact::after{ right: 10rem; }
    /*=== footer ===*/
    .footer_submenu_li{ width: 100%; }
}
@media screen and ( max-width: 960px ){
    /*=== header ===*/
    .header_logo{ width: 70%; }
    /*=== ページ下部_お問い合わせ ===*/
    .common_contact::before,
    .common_contact::after{
        display: none;
    }
    .common_contact::after{ left: 12.5vw; }
    .common_contact_inner::before{ right: 4rem; }
    .common_contact_inner::after{
        right: -4.166666666666666vw;
        padding-top: 2.5rem;
        width: 10rem;
        height: 10.368rem;
        font-size: 1.2rem;
    }
    /*=== footer ===*/
    .footer_branch_nav_wrapper{ flex-wrap: wrap; }
    .footer_branch_wrap{
        display: flex;
        flex-wrap: wrap;
        max-width: initial;
        width: 100%;
        gap: 0 3.2rem;
        justify-content: space-between;
    }
    .footer_branch_box{ width: 47%; }
    .footer_nav_wrap{ width: 100%; }
    .footer_nav_inner{ gap: 4rem 3.2rem; }
    .footer_submenu_li{ width: 50%; }
}
@media screen and ( max-width: 780px ){
    /*=== 独自設定 ===*/
    body{ font-size: clamp(1.6rem, 2.564102564102564vw, 2rem); }

    /*=== パーツ設定 ===*/
    /*== ボタン ==*/
    .link_bigBtn_box{
        margin: clamp(6.4rem, 11.538461538461538vw, 9rem) auto 0;
        width: clamp(26rem, 62.69230769230769vw, 48.9rem);
        height: clamp(4.413rem, 10.64102564102564vw, 8.3rem);
    }
    .link_bigBtn { font-size: clamp(1.6rem, 3.076923076923077vw, 2.4rem); }
    .link_bigBtn_box .link_btn::before{
        width: clamp(1.4rem, 3.717948717948718vw, 2.9rem);
        height: clamp(.869rem, 2.307692307692308vw, 1.8rem);
    }
    .link_smallBtn_box{
        width: clamp(20rem, 41.02564102564102vw, 32rem);
        height: clamp(3.395rem, 6.962820512820513vw, 5.431rem);
    }
    .link_smallBtn { font-size: clamp(1.4rem, 2.564102564102564vw, 2rem); }
    .link_smallBtn_box .link_btn::before{
        right: 19%;
        width: clamp(1.4rem, 2.8205128205128207vw, 2.2rem);
        height: clamp(.869rem, 1.7512820512820513vw, 1.366rem);
    }

    /*=== 追従ボタン ===*/
    .follow_banner_wrapper{
        top: auto;
        bottom: 0;
        display: flex;
        width: 100%;
    }
    .follow_banner_box{ width: 50%; }
    .follow_banner_box:hover img { transform: scale(1); }
    .follow_banner_box:first-of-type{
        margin-bottom: 0;
        background-color: #ED591D;
    }
    .follow_banner_box:last-of-type{ background-color: #EFC01F; }
    .follow_banner{ padding: .3rem 0; }

    /*=== ページトップリンク ===*/
    #pagetop{
        right: 0;
        bottom: clamp(3.2rem, 11.538461538461538vw, 9rem);
        width: clamp(4.5rem, 13.717948717948719vw, 10.7rem);
        height: clamp(6.14rem, 18.71794871794872vw, 14.6rem);
    }
    #pagetop:hover{ bottom: clamp(4rem, 12.564102564102564vw, 9.8rem); }

    /*=== header ===*/
    .header{ padding: 0 0; }
    .header_logo_box{
        position: relative;
        margin-top: 0;
        padding-top: clamp(.8rem, 3.205128205128205vw, 2.5rem);/*2.5rem*/
        padding-left: 1.9230769230769231vw;/*1.5rem*/
        z-index: 13;
    }
    .header_logo{
        max-width: initial;
        width: clamp(17rem, 47.43589743589743vw, 37rem);
    }
    .header_logo_bottom{
        font-size: clamp(.8rem, 2.564102564102564vw, 2rem);
        /* -webkit-text-stroke: clamp(.4rem, 1.0256410256410255vw, .8rem) #020202; */
        -webkit-text-stroke: clamp(.4rem, 0.7692307692307693vw, .6rem) #020202;
    }
    .header_tel_wrapper_pc{ display: none; }
    .headerBtn_bg{
        position: relative;
        top: 0;
        right: 0;
        display: block;
        background-image: url(../img/hamburger_bg.png);
        background-repeat: no-repeat;
        background-size: cover;
        width: clamp(5.5rem, 19.743589743589745vw, 15.4rem);
        height: clamp(5.143rem, 18.461538461538463vw, 14.4rem);
        cursor: pointer;
        z-index: 13;
    }
    .headerBtn_bg::before{
        content: "MENU";
        position: absolute;
        font-weight: 700;
        right: 1.9230769230769231vw;/*1.5rem*/
        bottom: 38%;
        font-size: clamp(1rem, 2.8205128205128207vw, 2.2rem);
        font-family: "brothers", sans-serif;
        font-weight: 400;
        font-style: normal;
        color: var(--dark-brown);
    }
    .menu_active::before{ content: "CLOSE"; }
    .headerBtn_span{
        position: absolute;
        display: block;
        right: 11%;
        width: clamp(2rem, 7.179487179487179vw, 5.6rem);
        height: clamp(.18rem, 0.41025641025641024vw, .32rem);
        background: var(--dark-brown);
        position: absolute;
        transition: all 0.3s;
    }
    .headerBtn_span:nth-child(1){ top: clamp(1rem, 2.8205128205128207vw, 2.2rem); }
    .headerBtn_span:nth-child(2){ top: clamp(1.5rem, 4.871794871794872vw, 3.8rem); }
    .headerBtn_span:nth-child(3){ top: clamp(2rem, 6.923076923076923vw, 5.4rem); }
    .menu_active .headerBtn_span:nth-child(1){
        transform: rotate(45deg);
        top: clamp(1rem, 5.128205128205128vw, 4rem);
    }
    .menu_active .headerBtn_span:nth-child(2){ opacity: 0; }
    .menu_active .headerBtn_span:nth-child(3){
        transform: rotate(-45deg);
        top: clamp(1rem, 5.128205128205128vw, 4rem);
    }
    .headerSP_bg{/*メニュー背景*/
        position: fixed;
        top: 0;
        right: -100%;
        padding: clamp(8rem, 19.230769230769234vw, 15rem) 0 6.4rem;
        display: block;
        background-image: url(../img/header_SP_bg.png);
        background-repeat: no-repeat;
        background-size: cover;
        width: 100%;
        height: 100%;
        transition: .5s all;
        z-index: 12;
        overflow: auto;
    }
    #headerBtn.menu_active+.headerSP_bg{ right: 0; }
    body.active{
        height: 100%;
        overflow: hidden;
    }
    .headerSP_inn{
        margin: 0 auto;
        max-width: 76rem;
        width: 98%;
    }
    .hNav_a,
    .hNav_submenu_a{
        display: block;
        font-size: clamp(1.6rem, 2.564102564102564vw, 2rem);
        font-weight: 700;
        color: #fff;
    }
    .hNav_a{
        border-bottom: .1rem dotted #fff;
        padding: clamp(1.6rem, 2.9487179487179485vw, 2.3rem) 0 clamp(1.6rem, 2.9487179487179485vw, 2.3rem) clamp(1.6rem, 3.8461538461538463vw, 3rem);
    }
    .hNav_a_submenu{
        position: relative;
        display: flex;
        align-items: center;
    }
    .hNav_a_submenu::after{
        content: "";
        position: absolute;
        right: .8rem;
        background-image: url(../img/header_SP_arrowB.png);
        background-repeat: no-repeat;
        background-size: cover;
        width: clamp(1.6rem, 2.564102564102564vw, 2rem);
        height: clamp(1.2rem, 1.9230769230769231vw, 1.5rem);
        transition: all .3s ease;
    }
    .hNav_submenu_ul{
        background-color: #2d1608;
        mix-blend-mode: screen;
    }
    .hNav_submenu_a{ padding: 1.6rem 0 1.6rem clamp(1.6rem, 3.8461538461538463vw, 3rem); }
    .hNav_submenu_ul{
        height: 0;
        overflow: hidden;
        transition: height 0.35s ease;
    }
    .is-open::after{ rotate: -180deg; }
    .menu_bottom_link_a{
        color: #e4a116;
        font-size: clamp(1.6rem, 2.6923076923076925vw, 2.1rem);
        font-weight: 700;
    }
    .menu_bottom_link_wrapper,
    .header_tel_wrapper_sp{
        max-width: 67.5rem;
        width: 90%;
    }
    .menu_bottom_link_wrapper{
        margin: 0 auto;
        display: flex;
        flex-wrap: wrap;
    }
    .menu_bottom_link{ width: 50%; }
    .menu_bottom_link_a{
        position: relative;
        display: block;
        padding: 2.3rem 0 2.3rem 2.4rem;
    }
    .menu_bottom_link_a::before{
        content: "";
        position: absolute;
        top: 50%;
        left: 0;
        background-image: url(../img/header_SP_arrowR.png);
        background-repeat: no-repeat;
        background-size: cover;
        width: 1.2rem;
        height: 1.6rem;
        width: clamp(1rem, 1.5384615384615385vw, 1.2rem);
        height: clamp(1.333rem, 2.051282051282051vw, 1.6rem);
        -webkit-transform: translateY(-50%) translateX(0%);
        transform: translateY(-50%) translateX(0%);
    }
    .header_tel_wrapper_sp{
        margin: 1.6rem auto 0;
        display: block;
    }
    .header_tel_num{
        padding-left: 0;
        display: block;
        width: 100%;
        font-size: clamp(5.4rem, 10.512820512820513vw, 8.2rem);
        text-align: end;
    }
    .header_tel_num::before{
        width: clamp(9rem, 13.58974358974359vw, 10.6rem);
        height: clamp(5.108rem, 7.712820512820512vw, 6.016rem);
    }
    .header_tel_text_bg{
        max-width: 56rem;
        background-color: #bc511c;
    }
    .header_tel_text{ font-size: clamp(1.2rem, 3.8461538461538463vw, 3rem); }

    /*=== メニューPC ===*/
    .header_tel_wrapper_pc,
    .menu_pc{
        display: none;
    }

    /*=== ページ下部_お問い合わせ ===*/
    .common_contact{ padding: 11rem 0 clamp(9rem, 17.94871794871795vw, 14rem); }
    .common_contact_content{
        padding: clamp(1rem, 12.82051282051282vw, 10rem) 0 clamp(1rem, 11.538461538461538vw, 9rem);
        background-image: url(../img/SP/common_contact_content_bg_SP.png);
        width: clamp(9rem, 96.92307692307692vw, 75.6rem);
        height: clamp(10.552rem, 88.58974358974359vw, 69.1rem);
    }
    .common_contact::before{
        display: block;
        bottom: 0;
        left: -1rem;
        background-image: url(../img/SP/common_contact_decoration1_SP.png);
        width: clamp(10.043rem, 26.923076923076923vw, 21rem);
        height: clamp(11rem, 29.48717948717949vw, 23rem);
    }
    .common_contact::after{
        display: block;
        right: 0;
        bottom: 0;
        left: auto;
        width: clamp(6rem, 15.897435897435896vw, 12.4rem);
        height: clamp(14.661rem, 38.84615384615385vw, 30.3rem);
    }
    .common_contact_content::after{
        top: 3rem;
        left: 0;
        width: clamp(6rem, 14.871794871794872vw, 11.6rem);
        height: clamp(7.034rem, 17.435897435897434vw, 13.6rem);
    }
    .common_contact_inner{
        max-width: 76rem;
        min-width: initial;
        width: 98%;
    }
    .common_contact_inner::before{
        top: -11rem;
        right: 0;
        width: clamp(12rem, 25.769230769230766vw, 20.1rem);
        height: clamp(17.732rem, 38.07820512820513vw, 29.701rem);
    }
    .common_contact_inner::after{
        top: -16rem;
        right: clamp(9rem, 19.230769230769234vw, 15rem);
        padding-top: clamp(3.8rem, 6.41025641025641vw, 5rem);
        background-image: url(../img/SP/common_contact_decoration_SP.png);
        width: clamp(12rem, 20.897435897435898vw, 16.3rem);
        height: clamp(12.442rem, 21.666666666666668vw, 16.9rem);
        font-size: clamp(1.2rem, 2.051282051282051vw, 1.6rem);
    }
    .common_contact_title{ font-size: clamp(2rem, 6.41025641025641vw, 5rem); }
    .common_contact_tel{ margin: clamp(1rem, 7.6923076923076925vw, 6rem) auto clamp(1rem, 4.102564102564102vw, 3.2rem); }
    .common_contact_tel::before{
        top: clamp(-3rem, -3.8461538461538463vw, -1rem);
        width: clamp(22rem, 62.43589743589744vw, 48.7rem);
        height: clamp(.452rem, 1.282051282051282vw, 1rem);
    }
    .common_contact_tel_num{
        padding-left: clamp(1rem, 16.666666666666664vw, 13rem);
        font-size: clamp(3rem, 11.153846153846155vw, 8.7rem);
    }
    .common_contact_tel_num::before{
        width: clamp(4.5rem, 15.384615384615385vw, 12rem);
        height: clamp(2.332rem, 7.973076923076923vw, 6.219rem);
    }
    .common_contact_link_wrapper{ flex-wrap: wrap; }
    .common_contact_link_box{
        width: clamp(26rem, 66.28205128205128vw, 51.7rem);
        height: clamp(4.413rem, 11.282051282051283vw, 8.8rem);
    }
    .common_contact_link{ font-size: clamp(1.6rem, 3.205128205128205vw, 2.5rem); }
    .common_contact_link::after{
        right: clamp(1rem, 5.128205128205128vw, 4rem);
        width: clamp(1.6rem, 3.8461538461538463vw, 3rem);
        height: clamp(1rem, 2.435897435897436vw, 1.9rem);
    }

    /*=== footer ===*/
    footer{ padding: 7.2rem 0 clamp(6.4rem, 15.384615384615385vw, 12rem); }
    .footer_inner{
        max-width: 71rem;
        width: 92%;
    }
    .footer_nav_wrap{ display: none; }
    .footer_logo_box{
        max-width: 61rem;
        width: 88%;
    }
    .footer_logo_bottom{
        font-size: clamp(1.3rem, 3.8461538461538463vw, 3rem);
        -webkit-text-stroke: clamp(.3rem, 0.641025641025641vw, .5rem) #000;
    }
    .footer_branch_box{
        margin-bottom: 2.8rem;
        width: 100%;
    }
    .footer_branch_name_box{
        padding-left: clamp(3.2rem, 11.538461538461538vw, 9rem);
        aspect-ratio: 1 / 0.1267605633802817;
    }
    .footer_branch_name{ font-size: clamp(1.6rem, 3.8461538461538463vw, 3rem); }
    .footer_branch_text{
        padding: clamp(.8rem, 2.564102564102564vw, 2rem) 1.6rem 0 clamp(3.2rem, 11.538461538461538vw, 9rem);
        font-size: clamp(1.6rem, 3.3333333333333335vw, 2.6rem);
    }
    .footer_branch_text_postcode{ display: flex; }
    .footer_branch_text_address{ margin-left: 1.6rem; }
    .copyright{
        margin-top: clamp(4rem, 12.307692307692308vw, 9.6rem);
        font-size: clamp(1.2rem, 2.564102564102564vw, 2rem);
    }
}
@media screen and ( max-width: 500px ){
    /*=== header ===*/
    .headerSP_inn{ width: 92%; }
    .menu_bottom_link{ width: 100%; }
    .menu_bottom_link_a{ padding: 1.6rem 0 1.6rem 2rem; }
    .header_tel_num{ font-size: clamp(3.2rem, 10vw, 5rem); }
    .header_tel_num::before{
        width: clamp(5.6rem, 16vw, 8rem);
        height: clamp(3.178rem, 9.081999999999999vw, 4.541rem);
    }
    .common_contact_link_wrapper{ gap: .8rem 0; }
    .common_contact::before,
    .common_contact::after{
        display: none;
    }
    /*=== footer ===*/
    .footer_branch_name_box{ padding-left: clamp(2rem, 10vw, 5rem); }
    .footer_branch_text{ padding: .8rem 1.6rem 0 clamp(2rem, 10vw, 5rem); }
    .footer_branch_text_postcode{ display: block; }
    .footer_branch_text_address{ margin-left: 0; }
}