/*=== 共通設定 ===*/
/*== タイトル・サブタイトル ==*/
.top_title{
    font-size: clamp(3.2rem, 3.125vw, 6rem);
    text-align: center;
    color: #fff;
    /* -webkit-text-stroke: 1.6rem var(--bright-brown);
    paint-order: stroke; */
    -webkit-text-stroke: 1rem var(--bright-brown);
    paint-order: stroke fill;
    filter:
    drop-shadow(1px 0 0 var(--bright-brown))
    drop-shadow(-1px 0 0 var(--bright-brown))
    drop-shadow(0 1px 0 var(--bright-brown))
    drop-shadow(0 -1px 0 var(--bright-brown));
    stroke-linejoin: round;
}
.top_subtitle{
    font-size: clamp(2rem, 1.5625vw, 3rem);
    text-align: center;
}
/* 見出し全体のスタイル */
.top_title_animation {
    margin: 4.8rem auto 0;
    padding: .4rem .8rem;
    display: flex;
    flex-wrap: wrap;
    width: fit-content;
    overflow: hidden; /* 下から出る時に枠外を隠す */
}

/* 1文字ずつの初期状態 */
.top_title_animation span {
    display: inline-block;
    opacity: 0;
    transform: translateY(100%); /* 完全に下に隠す */
    transition: none;
}

/* アニメーション実行 */
.top_title_animation.is-active span {
    animation: hyokoAni 0.5s cubic-bezier(0.175, 0.885, 0.32, 1.275) forwards;
}

@keyframes hyokoAni {
    0% {
        opacity: 0;
        transform: translateY(100%);
    }
    100% {
        opacity: 1;
        transform: translateY(0);
    }
}




/*== width ==*/
.top_section_inner{
    margin: 0 auto;
    width: 90%;
}
.inner_wide{ max-width: 156rem; }
.inner_middle1{ max-width: 137.5rem; }
.inner_middle2{ max-width: 128rem; }
/*== 改行 ==*/
.br_sp,
.br_sp500{
    display: none;
}
/*== アニメーション ==*/
.fadeUpTrigger,
.fadeInRightTrigger{
    opacity: 0;
}
.fadeUp{
	animation-name: fadeUpAnime;
	animation-duration: .5s;
	animation-fill-mode: forwards;
	animation-delay: .5s;
}
@keyframes fadeUpAnime{
	from {
		opacity: 0;
		transform: translateY(25px);
	}
	to {
		opacity: 1;
		transform: translateY(0);
	}
}
.fadeInRight{
	animation-name: fadeInRightAnime;
	animation-duration: .5s;
	animation-fill-mode: forwards;
	animation-delay: .5s;
}
@keyframes fadeInRightAnime{
	from {
		opacity: 0;
		transform: translateX(25px);
	}

	to {
		opacity: 1;
		transform: translateX(0);
	}
}
/* .ZoomTrigger::after{
    opacity: 0;
    transform: scale(0.5);
    transition: opacity 0.3s;
}
.ZoomAnimation::after{
    animation-name: zoomAnime;
    animation-duration: 0.8s;
    animation-fill-mode: forwards;
    animation-timing-function: cubic-bezier(0.34, 1.56, 0.64, 1);
}
@keyframes zoomAnime{
    0% {
        opacity: 0;
        transform: scale(0.5);
    }
    70% {
        transform: scale(1.1);
    }
    100% {
        opacity: 1;
        transform: scale(1);
    }
} */


/*=== MV ===*/
.mv{
    position: relative;
    margin-top: var(--top-bar-height);
    z-index: 3;
    overflow: hidden;
}
.mv::before,
.mv::after{
    content: "";
    position: absolute;
}
.mv::before{
    /* top: clamp(8rem, 19.010416666666664vw, 36.5rem);
    left: clamp(.8rem, 1.875vw, 3.6rem); */
    top: clamp(15rem, 15.104166666666666vw, 29rem);
    left: clamp(.8rem, 2.604166666666667vw, 5rem);
    background-image: url('../img/mv_text1.png');
    width: clamp(15.38rem, 22.239583333333332vw, 42.7rem);
    height: clamp(9.675rem, 14.010416666666666vw, 26.9rem);




    animation: wave-smooth-left 1.0s ease-out forwards;
    animation-delay: 1.4s;
    opacity: 0;
}
@keyframes wave-smooth-left {
    0%   { transform: translate(calc(-50vw - 120px),   0.00px); opacity: 0; }
    4%   { transform: translate(calc(-47vw - 113px),  -5.00px); opacity: 1; }
    8%   { transform: translate(calc(-44vw - 106px), -10.50px); }
    12%  { transform: translate(calc(-41vw -  98px), -15.00px); }
    16%  { transform: translate(calc(-38vw -  90px), -18.00px); }
    20%  { transform: translate(calc(-35vw -  82px), -19.50px); }
    24%  { transform: translate(calc(-32vw -  74px), -19.50px); }
    28%  { transform: translate(calc(-29vw -  66px), -18.00px); }
    32%  { transform: translate(calc(-26vw -  58px), -15.00px); }
    36%  { transform: translate(calc(-23vw -  50px), -10.50px); }
    40%  { transform: translate(calc(-20vw -  42px),  -5.00px); }
    44%  { transform: translate(calc(-17vw -  34px),   0.00px); }
    48%  { transform: translate(calc(-14vw -  26px),   5.00px); }
    52%  { transform: translate(calc(-11vw -  18px),   9.50px); }
    56%  { transform: translate(calc( -8vw -  12px),  13.00px); }
    60%  { transform: translate(calc( -6vw -   8px),  15.50px); }
    64%  { transform: translate(calc( -4vw -   6px),  16.50px); }
    68%  { transform: translate(calc( -3vw -   4px),  15.50px); }
    72%  { transform: translate(calc( -2vw -   3px),  13.00px); }
    76%  { transform: translate(calc( -1vw -   2px),   9.00px); }
    80%  { transform: translate(calc(-0.6vw -   1px),   5.00px); }
    84%  { transform: translate(calc(-0.4vw - 0.8px),   2.00px); }
    88%  { transform: translate(calc(-0.2vw - 0.5px),   0.50px); }
    92%  { transform: translate(calc(-0.1vw - 0.2px),  -0.50px); }
    96%  { transform: translate(calc( 0.0vw - 0.1px),   0.20px); }
    100% { transform: translate(0px, 0px);                      opacity: 1; }
}
.mv::after{
    /* top: clamp(8rem, 11.458333333333332vw, 22rem);
    right: clamp(2.4rem, 3.125vw, 6rem); */
    top: clamp(9rem, 8.854166666666668vw, 17rem);
    right: clamp(2.4rem, 7.03125vw, 13.5rem);
    background-image: url('../img/mv_text2.png');
    width: clamp(15.38rem, 22.291666666666668vw, 42.8rem);
    height: clamp(10rem, 14.374999999999998vw, 27.6rem);



    animation: wave-smooth-right 1.0s ease-out forwards;
    animation-delay: 1.4s;
    opacity: 0;
}
/* @keyframes wave-smooth-right {
    0%   { transform: translate(calc( 50vw + 120px),   0.00px); opacity: 0; }
    4%   { transform: translate(calc( 47vw + 113px),  -5.00px); opacity: 1; }
    8%   { transform: translate(calc( 44vw + 106px), -10.50px); }
    12%  { transform: translate(calc( 41vw +  98px), -15.00px); }
    16%  { transform: translate(calc( 38vw +  90px), -18.00px); }
    20%  { transform: translate(calc( 35vw +  82px), -19.50px); }
    24%  { transform: translate(calc( 32vw +  74px), -19.50px); }
    28%  { transform: translate(calc( 29vw +  66px), -18.00px); }
    32%  { transform: translate(calc( 26vw +  58px), -15.00px); }
    36%  { transform: translate(calc( 23vw +  50px), -10.50px); }
    40%  { transform: translate(calc( 20vw +  42px),  -5.00px); }
    44%  { transform: translate(calc( 17vw +  34px),   0.00px); }
    48%  { transform: translate(calc( 14vw +  26px),   5.00px); }
    52%  { transform: translate(calc( 11vw +  18px),   9.50px); }
    56%  { transform: translate(calc(  8vw +  12px),  13.00px); }
    60%  { transform: translate(calc(  6vw +   8px),  15.50px); }
    64%  { transform: translate(calc(  4vw +   6px),  16.50px); }
    68%  { transform: translate(calc(  3vw +   4px),  15.50px); }
    72%  { transform: translate(calc(  2vw +   3px),  13.00px); }
    76%  { transform: translate(calc(  1vw +   2px),   9.00px); }
    80%  { transform: translate(calc(0.6vw +   1px),   5.00px); }
    84%  { transform: translate(calc(0.4vw + 0.8px),   2.00px); }
    88%  { transform: translate(calc(0.2vw + 0.5px),   0.50px); }
    92%  { transform: translate(calc(0.1vw + 0.2px),  -0.50px); }
    96%  { transform: translate(calc(0.0vw + 0.1px),   0.20px); }
    100% { transform: translate(0px, 0px);                      opacity: 1; }
} */
@keyframes wave-smooth-right {
    0%   { transform: translate(calc( 50vw + 120px),   0.00px); opacity: 0; }
    4%   { transform: translate(calc( 47vw + 113px),  5.00px); opacity: 1; }
    8%   { transform: translate(calc( 44vw + 106px), 10.50px); }
    12%  { transform: translate(calc( 41vw +  98px), 15.00px); }
    16%  { transform: translate(calc( 38vw +  90px), 18.00px); }
    20%  { transform: translate(calc( 35vw +  82px), 19.50px); }
    24%  { transform: translate(calc( 32vw +  74px), 19.50px); }
    28%  { transform: translate(calc( 29vw +  66px), 18.00px); }
    32%  { transform: translate(calc( 26vw +  58px), 15.00px); }
    36%  { transform: translate(calc( 23vw +  50px), 10.50px); }
    40%  { transform: translate(calc( 20vw +  42px),  5.00px); }
    44%  { transform: translate(calc( 17vw +  34px),   0.00px); }
    48%  { transform: translate(calc( 14vw +  26px),   -5.00px); }
    52%  { transform: translate(calc( 11vw +  18px),   -9.50px); }
    56%  { transform: translate(calc(  8vw +  12px),  -13.00px); }
    60%  { transform: translate(calc(  6vw +   8px),  -15.50px); }
    64%  { transform: translate(calc(  4vw +   6px),  -16.50px); }
    68%  { transform: translate(calc(  3vw +   4px),  -15.50px); }
    72%  { transform: translate(calc(  2vw +   3px),  -13.00px); }
    76%  { transform: translate(calc(  1vw +   2px),   -9.00px); }
    80%  { transform: translate(calc(0.6vw +   1px),   -5.00px); }
    84%  { transform: translate(calc(0.4vw + 0.8px),   -2.00px); }
    88%  { transform: translate(calc(0.2vw + 0.5px),   -0.50px); }
    92%  { transform: translate(calc(0.1vw + 0.2px),  0.50px); }
    96%  { transform: translate(calc(0.0vw + 0.1px),   -0.20px); }
    100% { transform: translate(0px, 0px);                      opacity: 1; }
}





.mv img{ display: block; }
.mv_catchcopy{
    position: absolute;
    bottom: 1.0416666666666665vw;/*2rem*/
    width: 100%;
    transform: scale(0.3);
    animation: superBallDropAnimation 1.1s cubic-bezier(0.175, 0.885, 0.32, 1.275) forwards;
    animation-delay: 0.3s;
    opacity: 0;
}
@keyframes superBallDropAnimation{
    0%{
        opacity: 0;
        transform: scale(0.3);
    }
    38%{
        /* 1回目：最初の大バウンド（ポーーン！）1.15倍まで大きく膨らませます */
        opacity: 1;
        transform: scale(1.15); 
    }
    52%{
        opacity: 1;
        transform: scale(0.92); /* 1回目の沈み込み */
    }
    64%{
        /* 2回目：ポン（中バウンド） */
        opacity: 1;
        transform: scale(1.08); 
    }
    74%{
        opacity: 1;
        transform: scale(0.96); /* 2回目の沈み込み */
    }
    82%{
        /* 3回目：ポン（ここからテンポが速くなります） */
        opacity: 1;
        transform: scale(1.04); 
    }
    88%{
        opacity: 1;
        transform: scale(0.98); /* 3回目の沈み込み */
    }
    93%{
        /* 4回目：ポッ（高速プルプル開始） */
        opacity: 1;
        transform: scale(1.015); 
    }
    96%{
        opacity: 1;
        transform: scale(0.99); /* 4回目の沈み込み */
    }
    98.5%{
        /* 5回目：ポッ（最後の微細な震え） */
        opacity: 1;
        transform: scale(1.004); 
    }
    100%{
        opacity: 1;
        /* 最終的に余計なブレを残さずピタッと綺麗に1倍に着地 */
        transform: scale(1);
    }
}
.mv_catchcopy picture{
    font-size: 0;
    display: flex;
    width: 100%;
    justify-content: center;
}
.mv_catchcopy img{
    max-width: 165.2rem;
    width: 87%;
}

/*=== about ===*/
.top_about{
    position: relative;
    padding: 0 0 16.145833333333336vw;
    background-image: url(../img/about_bg.png);
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
    z-index: 2;
}
.top_about::before,
.top_about::after{
    content: "";
    position: absolute;
    opacity: 0;
}
.top_about::before{
    top: 7.291666666666667vw;
    left: 7.8125vw;
    background-image: url('../img/about_img.png');
    width: clamp(36rem, 40.78125vw, 78.3rem);
    height: clamp(29.977rem, 33.958333333333336vw, 65.2rem);
}
.top_about::after{
    bottom: 2.2rem;
    left: 8rem;
    background-image: url('../img/about_decoration2.png');
    width: clamp(20rem, 18.28125vw, 35.1rem);
    height: clamp(12.897rem, 21.666666666666668vw, 41.6rem);
}
.topAboutImgAnimation::before,
.topAboutImgAnimation::after{
	animation-name: topAboutFadeInRightAnime;
	animation-duration: .5s;
	animation-fill-mode: forwards;
	animation-delay: .5s;
}
@keyframes topAboutFadeInRightAnime{
	from {
		opacity: 0;
		transform: translateX(-25px);
	}
	to {
		opacity: 1;
		transform: translateX(0);
	}
}
.top_about_inner{ padding-top: 9.375vw; }
.top_about_content{
    position: relative;
    margin: 0 1rem 0 auto;
    width: 47%;
}
.top_about_content p{ color: #fff; }
.top_about_emphasis{
    line-height: 1.5;
    font-size: clamp(2.2rem, 2.083333333333333vw, 4rem);
}
.top_about_sentence{
    margin-top: 10%;
    line-height: 2.5;
    font-size: var(--fontSize-20);
    font-weight: 500;
    letter-spacing: -.04em;
}

/*=== 支店・サービス・アートギャラリー ===*/
.topBranch_to_topArtGallery_wrapper{
    position: relative;
    margin-top: -18.75vw;
    background-image: url(../img/branchTOartGallery_bg.png);
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
    z-index: 1;
}
.topBranch_to_topArtGallery_wrapper::before,
.topBranch_to_topArtGallery_wrapper::after{
    content: "";
    position: absolute;
    background-repeat: no-repeat;
    background-size: cover;
}
.topBranch_to_topArtGallery_wrapper::before{
    background-image: url(../img/branchTOartGallery_decoration1.png);
    top: clamp(8.8rem, 7.291666666666667vw, 14rem);
    right: 0;
    width: clamp(6rem, 44.322916666666664vw, 85.1rem);
    height: clamp(1rem, 14.374999999999998vw, 27.6rem);
}
/*ちょうちんアニメーション*/
.topBounceTrigger::before{
    opacity: 0;
    transform: translateY(-500px);
}
.topBounceDown::before{
    animation-name: topBounceAnimation;
    animation-duration: 1s;
    animation-fill-mode: forwards;
    animation-delay: 0.6s;
}
@keyframes topBounceAnimation {
    0% {
        opacity: 0;
        transform: translateY(-800px); /* より高い位置から落として勢いを出す */
    }
    50% {
        opacity: 1;
        transform: translateY(0); /* 1回目：着地 */
    }
    65% {
        transform: translateY(-60px); /* 2回目：大きく跳ねる */
    }
    75% {
        transform: translateY(0); /* 3回目：着地 */
    }
    85% {
        transform: translateY(-25px); /* 4回目：小さく跳ねる */
    }
    92% {
        transform: translateY(0); /* 5回目：着地 */
    }
    97% {
        transform: translateY(-8px); /* 6回目：微かに跳ねる */
    }
    100% {
        opacity: 1;
        transform: translateY(0); /* 7回目：静止 */
    }
}
/*=========================*/
























.topBranch_to_topArtGallery_wrapper::after{
    background-image: url(../img/branchTOartGallery_decoration2.png);
    right: 2.604166666666667vw;
    bottom: clamp(1rem, 1.5625vw, 3rem);
    width: clamp(30rem, 21.041666666666668vw, 40.4rem);
    height: clamp(27.921rem, 19.583333333333332vw, 37.6rem);
}

/*== 支店 ==*/
.top_branch{
    position: relative;
    padding-top: 18.75vw;
}
.top_branch_title{ margin-top: 4.8rem; }
.top_branch_subtitle_bg{
    padding: 1.8rem 0;
    background-image: url(../img/branch_subtitle_bg.png);
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
}
.top_branch_subtitle{ color: var(--bright-brown); }
.top_branch_list{
    margin-top: 6.4rem;
    display: flex;
    gap: 4rem 2.5%;
}
.top_branch_box{
    position: relative;
    filter: drop-shadow(0 0 1.6rem rgba(75, 57, 37, .31));
    overflow: hidden;
}
.top_branch_box:hover .top_branch_img>img{
    transform: scale(1.08);
}
.top_branch_frame{
    position: relative;
    z-index: 2;
}
.top_branch_img{
    position: absolute;
    top: 3.8%;
    left: 50%;
    width: calc(100% - 10%);
    aspect-ratio: 1 / 1.0432098765432098;
    -webkit-transform: translateY(0%) translateX(-50%);
    transform: translateY(0%) translateX(-50%);
}
.top_branch_mskImg img{
    width: 100%;
    height: 100%;
    -webkit-mask-image: url(../img/branch_mask.png);
    -webkit-mask-size: cover;
    -webkit-mask-repeat: no-repeat;
    -webkit-mask-position: center;
    mask-image: url(../img/branch_mask.png);
    mask-size: cover;
    mask-repeat: no-repeat;
    mask-position: center;
    transition: transform .3s ease;
}
.top_branch_name{
    position: absolute;
    bottom: 4.7%;
    display: flex;
    width: calc(100% - 10%);
    height: 20%;
    left: 50%;
    background-color: #fff;
    -webkit-transform: translateY(0%) translateX(-50%);
    transform: translateY(0%) translateX(-50%);
    align-items: center;
    justify-content: center;
}
.top_branch_name::after{
    content: "";
    position: absolute;
    right: 11.5%;
    background-image: url(../img/arrowR_red.png);
    margin-top: .6rem;
    width: 9%;
    height: 19.4%;
}
.top_branch_name_text{
    font-size: clamp(1.8rem, 1.8229166666666667vw, 3.5rem);
    font-weight: 700;
    color: var(--bright-brown);
}
.top_branch_box:first-of-type .top_branch_name_text{ padding-right: 1rem; }

/*== サービス ==*/
.top_service{
    position: relative;
    margin: 10rem 0 9rem;
    padding: clamp(8rem, 6.25vw, 12rem) 0 clamp(8rem, 7.812vw, 15rem);
    background-image: url(../img/service_bg.png);
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
}
.top_service::after{
    content: "";
    position: absolute;
    bottom: clamp(-6rem, -3.125vw, -1rem);
    left: clamp(1rem, 1vw, 1rem);
    background-image: url(../img/service_decoration2.png);
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
    width: clamp(10rem, 18.958333333333332vw, 36.4rem);
    height: clamp(5.879rem, 11.145833333333334vw, 21.4rem);
    animation: top-service-move 2s steps(1) infinite;
}
@keyframes top-service-move{/*紙風船アニメーション*/
    0%   { transform: rotate(0deg); }
    25%  { transform: rotate(-8deg); }
    50%  { transform: rotate(0deg); }
    75%  { transform: rotate(8deg); }
    100% { transform: rotate(0deg); }
}
.top_service .top_title_box{
    position: relative;
    z-index: 2;
}
.top_service_title{ margin-top: 4.8rem; }
.top_service_subtitle_bg{
    padding: 1.6rem 0;
    background-image: url(../img/service_subtitle_bg.png);
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
}
.top_service_subtitle{
    color: #fff;
    -webkit-text-stroke: 1rem #257c40;
    paint-order: stroke;
    stroke-linejoin: round;
}
.top_service_list{
    position: relative;
    margin-top: 6.4rem;
    display: flex;
    flex-wrap: wrap;
    gap: 4rem 5.5%;
    justify-content: center;
}
.top_service_list::before{
    content: "";
    position: absolute;
    top: -13.541666666666666vw;
    right: .8rem;
    background-image: url(../img/service_decoration1.png);
    width: clamp(20rem, 20.364583333333332vw, 39.1rem);
    height: clamp(12.897rem, 16.510416666666668vw, 31.7rem);
}
.top_service_box{
    position: relative;
    width: calc(100% / 3 - 3.8%);
    filter: drop-shadow(0 0 1.6rem rgba(75, 57, 37, .31));
    overflow: hidden;
}
.top_service_box:hover .top_service_img>img{
    transform: scale(1.08);
}
.top_service_frame{
    position: relative;
    z-index: 2;
}
.top_service_img{
    position: absolute;
    top: 3.7%;
    left: 50%;
    width: calc(100% - 8.8%);
    aspect-ratio: 1 / 0.888095238095238;
    -webkit-transform: translateY(0%) translateX(-50%);
    transform: translateY(0%) translateX(-50%);
}
.top_service_mskImg img{
    width: 100%;
    height: 100%;
    -webkit-mask-image: url(../img/service_mask.png);
    -webkit-mask-size: cover;
    -webkit-mask-repeat: no-repeat;
    -webkit-mask-position: center;
    mask-image: url(../img/service_mask.png);
    mask-size: cover;
    mask-repeat: no-repeat;
    mask-position: center;
    transition: transform .3s ease;
}
.top_service_name{
    position: absolute;
    /* bottom: 4.5%; */
    bottom: 4.3%;
    display: flex;
    /* width: calc(100% - 8.8%); */
    width: calc(100% - 8.6%);
    height: 23.4%;
    left: 50%;
    background-image: url(../img/service_text_bg.png);
    background-repeat: no-repeat;
    background-size: cover;
    -webkit-transform: translateY(0%) translateX(-50%);
    transform: translateY(0%) translateX(-50%);
    align-items: center;
    justify-content: center;
}
.top_service_name::after{
    content: "";
    position: absolute;
    right: 11.5%;
    background-image: url(../img/arrowR_yellow.png);
    margin-top: .6rem;
    width: 6.9%;
    height: 19%;
}
.top_service_name_text{
    font-size: clamp(1.4rem, 1.3020833333333335vw, 2.5rem);
    font-weight: 700;
    color: #fff;
}
.top_service_name_text_SP{ display: none; }
.top_service_box:last-of-type .top_service_name::after{
    right: 2%;
}
/*サービスリストアニメーション*/
.mask__animation--img{
	position: relative;
	z-index: -1;
	opacity: 0;
}
.is-animated{
	position: relative;
	z-index: 1;
	display: block;
	mask-image: linear-gradient(135deg, rgba(0, 0, 0, 1) 30%, rgba(0, 0, 0, 0.4) 45%, rgba(0, 0, 0, 0) 55%, rgba(0, 0, 0, 0) 100%);
	-webkit-mask-image: linear-gradient(135deg, rgba(0, 0, 0, 1) 30%, rgba(0, 0, 0, 0.4) 45%, rgba(0, 0, 0, 0) 55%, rgba(0, 0, 0, 0) 100%);
	mask-size: 250% 250%;
	-webkit-mask-size: 250% 250%;
	mask-repeat: no-repeat;
	-webkit-mask-repeat: no-repeat;
	mask-position: 130% 130%;
	-webkit-mask-position: 130% 130%;
	animation: mask-animation 1.3s linear forwards;
	opacity: 1;
}
@keyframes mask-animation {
	0% {
		mask-position: 130% 130%;
		-webkit-mask-position: 130% 130%;
	}
	100% {
		mask-position: 0 0;
		-webkit-mask-position: 0 0;
	}
}
/*=================================*/






/*== アートギャラリー ==*/
.top_artGallery{ padding-bottom: clamp(18rem, 14.583333333333334vw, 28rem); }
.top_artGallery_inner{ width: 100%; }
.top_artGallery_subtitle_bg{
    margin-top: 3rem;
    padding: 1.6rem 0;
    background-image: url(../img/artGallery_subtitle_bg.png);
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
}
.top_artGallery_subtitle{ color: #fff; }
.top_artGallery_list{ margin-top: 6.4rem; }
.top_artGallery_list .splide__slide{
    border: 1rem solid #fff4d6;
    filter: drop-shadow(0 0 1.6rem rgba(75, 57, 37, .31));
    background-color: #fff;
}
.top_artGallery_img{
    position: relative;
    aspect-ratio: 1 / 0.8088235294117647;
}
.top_artGallery_img img{
    width: 100%;
    height: 100%;
}
.top_artGallery_img::before{
    content: "Read More";
    position: absolute;
    display: flex;
    width: 100%;
    height: 100%;
    font-family: "brothers", sans-serif;
    font-weight: 400;
    font-style: normal;
    font-size: clamp(1.6rem, 1.5625vw, 3rem);
    color: #fff;
    background-color: rgba(225, 85, 16, .8);
    align-items: center;
    justify-content: center;
    opacity: 0;
    transition: all .3s ease;
}
.top_artGallery_list .splide__slide:hover .top_artGallery_img::before{ opacity: 1; }
.top_artGallery_info_box{
    padding: 1.5rem .8rem 2rem;
    background-color: #fff;
}
.top_artGallery_cat_box{
    display: flex;
    flex-wrap: wrap;
    gap: .2rem .6rem;
}
.top_artGallery_cat{
    border-radius: 1.6rem;
    padding: clamp(.2rem, 0.26041666666666663vw, .5rem) clamp(.6rem, 0.5208333333333333vw, 1rem);
    font-size: 1.4rem;
    color: #fff;
}
.top_artGallery_cat1{ background-color: var(--dull-orange); }
.top_artGallery_cat2{ background-color: var(--dull-yellow); }
.top_artGallery_text{
    margin-top: 1.6rem;
    line-height: 1.364;
    font-size: var(--fontSize-22);
    font-weight: 700;
    color: var(--bright-brown);
    overflow: hidden;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
}

/*=== 満足度No.1 ===*/
.top_best{
    position: relative;
    margin-top: clamp(-32rem, -16.666666666666664vw, -18rem);/*32rem*/
    padding: clamp(20rem, 12.5vw, 24rem) 0 clamp(25rem, 15.625vw, 30rem);
    background-image: url(../img/best_bg.png);
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
    z-index: 2;
}
.top_best::before,
.top_best::after{
    content: "";
    position: absolute;
    background-repeat: no-repeat;
    background-size: cover;
}
.top_best::before{
    background-image: url(../img/best_decoration2.png);
    top: clamp(40rem, 26.5625vw, 51rem);
    left: clamp(1rem, 7.03125vw, 13.5rem);
    width: clamp(16rem, 15.572916666666666vw, 29.9rem);
    height: clamp(18.355rem, 17.864583333333332vw, 34.3rem);
}
.top_best::after{
    background-image: url(../img/best_decoration3.png);
    top: clamp(40rem, 26.5625vw, 51rem);
    right: clamp(12.5rem, 10.416666666666668vw, 20rem);
    width: clamp(15rem, 13.125vw, 25.2rem);
    height: clamp(25.238rem, 22.083333333333332vw, 42.4rem);
}
.top_best_inner{
    position: relative;
    /* max-width: 133rem; */
    max-width: 128.5rem;
    min-width: 70.29rem;
    /* width: 72%; */
    z-index: 2;
}
.top_best_title_img{
    margin: 0 auto;
    max-width: 77.9rem;
    width: 70%;
}
.top_best_title{
    position: relative;
    line-height: 1.286;
    font-size: clamp(4rem, 3.6458333333333335vw, 7rem);
}
.top_best_title_span{
    display: block;
    width: 100%;
    text-align: center;
}
.top_best_title_gradation{
    position: relative;
    background: linear-gradient(to bottom, 
        #d12521 0%, 
        #e4a316 50%, 
        #d12521 100%
    );
    -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-fill-color: transparent;
    color: transparent;
    z-index: 2;
}
.top_best_title_span_frame{
    position: absolute;
    top: 0;
    color: #fff;
    -webkit-text-stroke: clamp(.6rem, 0.5208333333333333vw, 1rem) #fff;
    paint-order: stroke fill;
    stroke-linejoin: round;
    filter:
        drop-shadow(0 0 4px #fff)
        drop-shadow(0 0 10px rgba(255, 255, 255, 0.7))
        drop-shadow(0 0 20px rgba(255, 255, 255, 0.3))
    ;
    z-index: 1;
}
.top_best_list{
    margin-top: clamp(5rem, 5.208333333333334vw, 10rem);
    display: flex;
    justify-content: space-between;
}
.top_best_box{
    display: flex;
    background-image: url(../img/best_content_bg.png);
    background-repeat: no-repeat;
    background-size: cover;
    /* width: clamp(24rem, 22.604166666666668vw, 43.4rem);
    height: clamp(23.336rem, 21.979166666666668vw, 42.2rem); */
    /* width: clamp(23rem, 20.3125vw, 39rem); */
    width: clamp(23rem, 26vw, 39rem);
    aspect-ratio: 1 / 1;
    align-items: center;
    justify-content: center;
}
.top_best_box_inner{ margin-top: clamp(3.2rem, 2.604166666666667vw, 5rem); }
.top_best_text_bold{ font-weight: 700; }
.top_best_text_red{
    line-height: 1.3;
    color: var(--vivid-red);
}
.top_best_text{
    display: block;
    text-align: center;
}
.top_best_text_small{ font-size: clamp(1.6rem, 1.8229166666666667vw, 3.5rem); }
.top_best_text_middle{ font-size: clamp(2.6rem, 3.125vw, 6rem); }
.top_best_text_large{
    line-height: 1.2;
    font-size: clamp(3.2rem, 3.6458333333333335vw, 7rem);
}
/* .top_best_text_no{ letter-spacing: -.3em; } */
.top_best_text_no{ letter-spacing: -.15em; }
.top_best_sentence{
    margin-top: clamp(.5rem, 0.7291666666666666vw, 1.4rem);
    line-height: 1.5;
    /* font-size: clamp(1.5rem, 0.8333333333333334vw, 1.6rem); */
    font-size: clamp(1.5rem, 1.0416666666666665vw, 2rem);
    font-weight: 500;
    color: var(--dark-brown);
    text-align: center;
}
/*==!!! 満足度No.1用アニメーション !!!==*/
.top_best_badge{
    position: relative;
    border-radius: 50%;
    opacity: 0;
    transform: translateY(30px) scale(0.8);
    overflow: hidden;
}
.topBestBadgeAnimetion{
    animation: top_best_popUp 0.6s cubic-bezier(0.34, 1.56, 0.64, 1) forwards;
}
.topBestBadgeAnimetion:nth-child(1){ animation-delay: 0.1s; }
.topBestBadgeAnimetion:nth-child(2){ animation-delay: 0.3s; }
.topBestBadgeAnimetion:nth-child(3){ animation-delay: 0.5s; }
@keyframes top_best_popUp{
    to {
        opacity: 1;
        transform: translateY(0) scale(1);
    }
}
.top_best_badge::after{
    content: '';
    position: absolute;
    top: -50%;
    left: -75%;
    width: 50%;
    height: 200%;
    background: linear-gradient(
        120deg,
        transparent 0%,
        rgba(255,255,255,0.6) 50%,
        transparent 100%
    );
    animation: top_best_shine 2.5s ease-in-out infinite;
    animation-delay: 1s;
    transform: rotate(35deg);
}
@keyframes top_best_shine{
    0%   { left: -75%; }
    30%  { left: 125%; }
    100% { left: 125%; }
}

/*=== 代表挨拶 ===*/
.top_greeting{
    position: relative;
    margin-top: clamp(-35rem, -18.229166666666664vw, -26rem);
    padding: clamp(20rem, 16.333333333333332vw, 24.5rem) 0 clamp(20rem, 20vw, 30rem);
    background-image: url(../img/greeting_bg.png);
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
    z-index: 2;
}
/*=== 装飾関連一括記述 ===============================*/
.top_greeting::before,
.top_greeting::after,
.top_greeting_content_bg::before,
.top_greeting_content_bg::after,
.top_greeting_inner::before,
.top_greeting_inner::after,
.top_greeting_content_inner::after{
    content: "";
    position: absolute;
    display: inline-block;
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
    z-index: 1;
}
.top_greeting::after,
.top_greeting_content_bg::before,
.top_greeting_inner::after{/*アニメーション左_ちくわ・おでん鍋・おでん串*/
    animation: top-greeting-move-left 2s steps(1) infinite;
}
.top_greeting::before,
.top_greeting_inner::before,
.top_greeting_content_inner::after{/*アニメーション右_たまご・もち巾着・こんにゃく*/
    animation: top-greeting-move-right 2s steps(1) infinite;
}
.top_greeting::before{/*たまご*/
    bottom: 34.375vw;/*66rem*/
    left: 4.895833333333333vw;/*9.4rem*/
    background-image: url(../img/greeting_decoration3.png);
    width: clamp(7rem, 6.666666666666667vw, 12.8rem);
    height: clamp(6.617rem, 6.302083333333333vw, 12.1rem);
}
.top_greeting::after{/*ちくわ*/
    bottom: 21.354166666666664vw;/*41rem*/
    left: 11.458333333333332vw;/*22rem*/
    background-image: url(../img/greeting_decoration4.png);
    width: clamp(7rem, 5.364583333333333vw, 10.3rem);
    height: clamp(5.845rem, 4.479166666666667vw, 8.6rem);
}
.top_greeting_content_bg::before{/*おでん鍋*/
    top: -3.6458333333333335vw;
    left: -6.770833333333333vw;
    background-image: url(../img/greeting_decoration1.png);
    width: clamp(13rem, 13.90625vw, 26.7rem);
    height: clamp(9.446rem, 10.104166666666666vw, 19.4rem);
}
.top_greeting_content_bg::after{/*代表イラスト*/
    right: -4.208vw;
    bottom: 2.604166666666667vw;
    background-image: url(../img/greeting_decoration2.png);
    width: clamp(22.5rem, 28.489583333333336vw, 54.7rem);
    height: clamp(23.528rem, 29.791666666666668vw, 57.2rem);
}
.top_greeting_inner::before{/*もち巾着*/
    top: .4rem;/*.4rem*/
    right: -.4rem;/*-.4rem*/
    background-image: url(../img/greeting_decoration5.png);
    width: clamp(7rem, 4.84375vw, 9.3rem);
    height: clamp(7.602rem, 5.260416666666667vw, 10.1rem);
}
.top_greeting_inner::after{/*おでん串*/
    top: clamp(9rem, 6.25vw, 12rem);/*12rem*/
    right: -11.458333333333332vw;/*-22rem*/
    background-image: url(../img/greeting_decoration6.png);
    width: clamp(7rem, 5.885416666666667vw, 11.3rem);
    height: clamp(9.416rem, 7.916666666666666vw, 15.2rem);
}
.top_greeting_content_inner::after{/*こんにゃく*/
    right: -16.145833333333336vw;/*-31rem*/
    bottom: 13.802083333333334vw;/*26.5rem*/
    background-image: url(../img/greeting_decoration7.png);
    width: clamp(7rem, 4.895833333333333vw, 9.4rem);
    height: clamp(6.926rem, 4.84375vw, 9.3rem);
}
@keyframes top-greeting-move-right{
    0%   { transform: rotate(0deg); }
    25%  { transform: rotate(15deg); }
    50%  { transform: rotate(0deg); }
    75%  { transform: rotate(-15deg); }
    100% { transform: rotate(0deg); }
}
@keyframes top-greeting-move-left{
    0%   { transform: rotate(0deg); }
    25%  { transform: rotate(-15deg); }
    50%  { transform: rotate(0deg); }
    75%  { transform: rotate(15deg); }
    100% { transform: rotate(0deg); }
}
/*===================================================*/
.top_greeting_inner{
    position: relative;
    max-width: 116rem;
}
.top_greeting_title{
    font-size: clamp(3.2rem, 3.6458333333333335vw, 7rem);
    color: var(--vivid-orange);
    /* -webkit-text-stroke: 1rem #fff; */
    -webkit-text-stroke: clamp(.5rem, 1.282051282051282vw, 1rem) #fff;
    paint-order: stroke fill;
    stroke-linejoin: round;
    text-align: center;
}
.top_greeting_content_bg{
    position: relative;
    margin-top: 8rem;
    background-image: url(../img/greeting_content_bg.png);
    background-repeat: no-repeat;
    background-size: contain;
    width: 100%;
    aspect-ratio: 1 / 0.6230636833046471;
}
.top_greeting_content_inner{
    position: relative;
    padding: clamp(5rem, 7.6923076923076925vw, 10rem) clamp(5rem, 8.461538461538462vw, 11rem) clamp(4rem, 6.923076923076923vw, 9rem);
}
.top_greeting_sentence,
.top_greeting_name{
    line-height: 1.5;
    font-size: clamp(2rem, 2.307692307692308vw, 3rem);
    color: var(--dark-brown);
    letter-spacing: -.05em;
}
.top_greeting_sentence{ width: 71%; }
.top_greeting_name{
    margin-top: clamp(1.6rem, 1.6666666666666667vw, 3.2rem);
    width: 62%;
    text-align: end;
}
.top_greeting_sentence_span{ display: block; }

/*=== 選ばれる理由 ===*/
.top_choose{
    position: relative;
    margin-top: clamp(-33rem, -17.1875vw, -24rem);
    padding: 28rem 0 21rem;
    background-image: url(../img/ivory_bg.png);
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
    z-index: 1;
}
.top_choose_subtitle_bg{
    margin-top: 3rem;
    padding: 1.6rem 0;
    background-image: url(../img/choose_subtitle_bg.png);
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
}
.top_choose_subtitle{ color: #fff; }

.top_choose_list{ margin-top: 5.5rem; }
.top_choose_box{
    position: relative;
    margin-bottom: 4rem;
    display: flex;
}
.top_choose_box:nth-child(2){ margin-bottom: 9.5rem; }
.top_choose_box:last-of-type{ margin-bottom: 0; }
.top_choose_box:nth-child(odd) .top_choose_info{
    margin-top: 5.5rem;
    margin-left: auto;
}
.top_choose_box:nth-child(even) .top_choose_img{
    margin-top: 5.5rem;
    right: 0;
}
.top_choose_img{
    position: absolute;
    width: 52.3%;
    z-index: 1;
    filter: drop-shadow(0 0 1.6rem rgba(75, 57, 37, .17));
}
.top_choose_info{
    display: flex;
    background-image: url(../img/choose_content_bg.png);
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
    width: clamp(1rem, 47.85714285714286vw, 67rem);
    height: clamp(1rem, 34.85714285714286vw, 48.8rem);
    align-items: center;
    justify-content: center;
}
.top_choose_info_inner{
    margin: 0 auto;
    display: flex;
    flex-direction: column;
    width: 73%;
    gap: clamp(1.6rem, 2.571428571428571vw, 3.6rem) 0;
}
.top_choose_point{
    display: block;
    font-size: clamp(2rem, 1.5625vw, 3rem);
    color: #e15510;
    text-align: center;
}
.top_choose_point_title,
.top_choose_point_sentence{
    color: var(--dark-brown);
}
.top_choose_point_title{
    font-size: clamp(1.8rem, 2.142857142857143vw, 3rem);
    text-align: center;
}
.top_choose_point_sentence{
    line-height: 1.7;
    font-size: clamp(1.6rem, 1.4285714285714286vw, 2rem);
    font-weight: 500;
}

/*=== 実績 ===*/
.top_achievement{
    position: relative;
    margin-top: -7rem;
    padding: 7.8125vw 0 8.333333333333332vw;
    background-image: url(../img/achievement_bg.png);
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
    z-index: 2;
}
.top_achievement::before,
.top_achievement::after{
    content: "";
    position: absolute;
    background-repeat: no-repeat;
    background-size: cover;
}
.top_achievement::before{
    background-image: url(../img/achievement_decoration1.png);
    top: 10rem;
    left: clamp(1rem, 10.9375vw, 21rem);
    width: clamp(13rem, 14.010416666666666vw, 26.9rem);
    height: clamp(23.004rem, 24.791666666666668vw, 47.6rem);
}
.top_achievement::after{
    background-image: url(../img/achievement_decoration2.png);
    top: 10rem;
    right: clamp(1rem, 12.5vw, 24rem);
    width: clamp(14rem, 16.614583333333332vw, 31.9rem);
    height: clamp(17.116rem, 20.3125vw, 39rem);
}
/*ビフォーアフターアニメーション*/
/* 1. 最初（動く前）の状態 */
.fadeInBottomTrigger::before,
.fadeInBottomTrigger::after{
    opacity: 0;
    transform: translateY(150px); /* 150px下に下げておく */
    transition: opacity 0.3s;
}

/* 2. クラスがついた時の動き */
.fadeInBottom::before,
.fadeInBottom::after{
    animation-name: personUp;
    animation-duration: 0.7s;
    animation-fill-mode: forwards;
    /* 飛び出しを軽く、戻りを少し粘るような動きに */
    animation-timing-function: cubic-bezier(0.34, 1.56, 0.64, 1);
    animation-delay: 0.4s; 
}

@keyframes personUp {
    0% {
        opacity: 0;
        transform: translateY(150px);
    }
    100% {
        opacity: 1;
        transform: translateY(0); /* 定位置へ */
    }
}


/*=====================================*/


















.top_ach_inner{ width: 100%; }
.top_ach_inner .top_title_box{
    position: relative;
    z-index: 2;
}
.top_ach_title{ margin-top: 4.8rem; }
.top_ach_subtitle_bg{
    padding: 1.6rem 0;
    background-image: url(../img/achievement_subtitle_bg.png);
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
}
.top_ach_subtitle{ color: var(--dark-brown); }

.top_ach_list{
    margin-top: 5.2rem;
    z-index: 2;
}
.top_ach_list .splide__list{
    align-items: center !important;
}
.top_ach_list .splide__slide{
    position: relative;
    width: 100%;
    transition: all .3s ease;
    flex-shrink: 0;
}
.top_ach_list .splide__slide::before{
    content: "";
    position: absolute;
    background-image: url(../img/achievement_content_bg.png);
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
    width: 100%;
    height: 100%;
    filter: drop-shadow(0 0 1.6rem rgba(98, 23, 9, .29));
}
.top_ach_img{
    position: absolute;
    top: 1.4%;
    left: 50%;
    width: calc(100% - 2.8%);
    aspect-ratio: 1 / 0.6061588330632091;
    -webkit-transform: translateY(0%) translateX(-50%);
    transform: translateY(0%) translateX(-50%);
}
.top_ach_img::before{
    content: "Read More";
    position: absolute;
    display: flex;
    padding-top: 10%;
    width: 100%;
    height: 100%;
    font-family: "brothers", sans-serif;
    font-weight: 400;
    font-style: normal;
    font-size: clamp(1.6rem, 1.5625vw, 3rem);
    color: #fff;
    background-color: rgba(225, 85, 16, .8);
    align-items: center;
    justify-content: center;
    opacity: 0;
    z-index: 2;
    transition: all .3s ease;
    -webkit-mask-image: url(../img/achievement_mask.png);
    -webkit-mask-size: cover;
    -webkit-mask-repeat: no-repeat;
    -webkit-mask-position: center;
    mask-image: url(../img/achievement_mask.png);
    mask-size: cover;
    mask-repeat: no-repeat;
    mask-position: center;
}
.top_ach_list .splide__slide:hover .top_ach_img::before{ opacity: 1; }
.top_ach_mskImg img{
    width: 100%;
    height: 100%;
    -webkit-mask-image: url(../img/achievement_mask.png);
    -webkit-mask-size: cover;
    -webkit-mask-repeat: no-repeat;
    -webkit-mask-position: center;
    mask-image: url(../img/achievement_mask.png);
    mask-size: cover;
    mask-repeat: no-repeat;
    mask-position: center;
}
.top_ach_info_box{
    position: absolute;
    bottom: 1.5%;
    left: 50%;
    padding-top: 3.5%;
    width: calc(100% - 2.8%);
    background-color: #fff4d6;
    -webkit-transform: translateY(0%) translateX(-50%);
    transform: translateY(0%) translateX(-50%);
}
.top_ach_cat_box{
    display: flex;
    flex-wrap: wrap;
    gap: .2rem .6rem;
}
.top_ach_cat_areaName_box{
    padding: 0 3.2%;
    display: flex;
    flex-wrap: wrap;
    gap: .8rem 1.6rem;
}
.top_ach_cat{
    border-radius: 1.6rem;
    padding: clamp(.2rem, 0.26041666666666663vw, .5rem) clamp(.6rem, 0.5208333333333333vw, 1rem);
    font-size: 1.4rem;
    color: #fff;
}
.top_ach_cat1{ background-color: var(--dull-orange); }
.top_ach_cat2{ background-color: var(--dull-yellow); }
.top_ach_area_name,
.top_ach_text{
    font-weight: 700;
    color: var(--dark-brown);
}
.top_ach_area_name{ font-size: var(--fontSize-20); }
.top_ach_text{
    margin: 2.6% 0;
    padding: 0 3.2%;
    font-size: clamp(1.6rem, 1.3020833333333335vw, 2.5rem);
    overflow: hidden;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 1;
}
.top_ach_more{
    position: relative;
    margin-left: auto;
    border-radius: 1.3rem;
    padding: .2rem .8rem .5rem 2rem;
    width: clamp(16rem, 9.375vw, 18rem);
    background-color: var(--dark-brown);
}
.top_ach_more::after{
    content: "";
    position: absolute;
    background-image: url(../img/arrowR_yellow.png);
    top: 50%;
    right: .8rem;
    width: clamp(1.69rem, 1.5104166666666667vw, 2.9rem);
    height: clamp(1.04833rem, 0.9375vw, 1.8rem);
    -webkit-transform: translateY(-50%) translateX(0%);
    transform: translateY(-50%) translateX(0%);
}
.top_ach_more_span{
    font-size: clamp(1.4rem, 0.8333333333333334vw, 1.6rem);
    font-weight: 700;
    color: #fff;
}
.splide__arrow{
    width: clamp(4.8rem, 4.166666666666666vw, 8rem);
    height: clamp(4.8rem, 4.166666666666666vw, 8rem);
    opacity: 1;
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
    transform: initial;
    transition: all .3s ease;
}
.splide__arrow:hover:not(:disabled){ opacity: .75; }
.splide__arrow--prev{
    left: 28%;
    background-image: url(../img/slide_arrowL.png);
}
.splide__arrow--next{
    right: 28%;
    background-image: url(../img/slide_arrowR.png);
}
.splide__arrow svg{ display: none; }

/*=== お知らせ・コラム ===*/
.top_NB_wrapper{
    margin-top: -9rem;
    padding: 17.5rem 0 13.5rem;
    background-image: url(../img/ivory_bg_short.png);
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
}
.top_NB_inner{
    display: flex;
    gap: 0 6.25vw;
}
.top_NB{
    position: relative;
    padding: clamp(8rem, 10.9375vw, 14rem) 0 0;
    max-width: 62.6rem;
    width: 48%;
    background-image: url(../img/NB_bg.png);
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
    aspect-ratio: 1 / 1.2983792828685259;
}
.top_NB article{ position: relative; }
.top_NB article:hover .top_NB_text{
    color: var(--dull-orange);
}
.top_NB article::after{
    content: "";
    position: absolute;
    bottom: 0;
    background-image: url(../img/NB_article_dot.png);
    width: 100%;
    height: .7rem;
}
.top_NB_link{
    padding: clamp(1.4rem, 2.03125vw, 2.6rem) 0;
    display: block;
}
.top_NB_title{
    margin-bottom: clamp(1.4rem, 1.875vw, 2.4rem);
    font-size: clamp(2rem, 2.083333333333333vw, 4rem);
    /* -webkit-text-stroke: clamp(.8rem, 0.8333333333333334vw, 1.6rem) var(--bright-brown); */
    -webkit-text-stroke: 8px var(--bright-brown);
    stroke-linejoin: round;
}
.top_NB_content_inner{
    margin: 0 auto;
    width: 77%;
}
.top_NB_time{
    margin-bottom: clamp(.4rem, 0.625vw, .8rem);
    display: block;
    font-size: var(--fontSize-20);
    color: var(--dull-orange);
}
.top_NB_text{
    line-height: 1.8;
    font-size: var(--fontSize-20);
    font-weight: 500;
    color: var(--dark-brown);
    overflow: hidden;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    transition: all .3s ease;
}
.top_NB_allLink{
    position: absolute;
    bottom: 3%;
    left: 50%;
    display: block;
    font-size: clamp(1.4rem, 1.40625vw, 1.8rem);
    font-weight: 500;
    color: var(--dark-brown);
    text-align: center;
    -webkit-transform: translateY(0%) translateX(-50%);
    transform: translateY(0%) translateX(-50%);
    transition: all .3s ease;
}
.top_NB_allLink:hover{ opacity: .6; }
.top_NB_allLink:hover::after{ right: -35%; }
.top_NB_allLink::after{
    content: "";
    position: absolute;
    background-image: url(../img/arrowR_brown.png);
    top: .3rem;
    right: -32%;
    width: clamp(1.76833rem, 2.265625vw, 2.9rem);
    height: clamp(1.09667rem, 1.40625vw, 1.8rem);
    transition: all .3s ease;
}
@media screen and ( max-width: 1750px ){
    /*=== 代表挨拶 ===*/
    /*=== 装飾関連一括記述 ===============================*/
    .top_greeting_inner::after{/*おでん串*/
        right: -2.857142857142857vw;/*-5rem*/
    }
    .top_greeting_content_inner::after{/*こんにゃく*/
        right: -3.870967741935484vw;/*-6rem*/
        bottom: 19.428571428571427vw;/*10rem*/
    }
    /*===================================================*/
}
@media screen and ( max-width: 1280px ){
    /*=== about ===*/
    .top_about::after{
        bottom: 6.4rem;
        background-image: url(../img/about_decoration2_from1280.png);
        width: clamp(22rem, 19.53125vw, 25rem);
        height: clamp(24.319rem, 21.58984375vw, 27.635rem);
    }
    /*=== 支店・サービス・アートギャラリー ===*/
    .topBranch_to_topArtGallery_wrapper{ margin-top: clamp(-23rem, -17.97vw, -18.5rem); }
    .topBranch_to_topArtGallery_wrapper::before{ top: clamp(4.8rem, 6.25vw, 8rem); }
    /*=== 満足度No.1 ===*/
    .top_best::before{
        top: clamp(37rem, 31.25vw, 40rem);
        left: 6.25vw;/*8rem*/
    }
    .top_best::after{
        top: clamp(33rem, 31.25vw, 40rem);
        right: 9.765625vw;/*12.5rem*/
    }
    /*=== 実績 ===*/
    .top_achievement::before{ left: clamp(4rem, 5.46875vw, 7rem); }
    .top_achievement::after{
        top: 11rem;
        right: clamp(4rem, 5.46875vw, 7rem);
    }
    .splide__arrow--prev{ left: 23%; }
    .splide__arrow--next{ right: 23%; }
    /*=== お知らせ・コラム ===*/
    .top_NB_text{ -webkit-line-clamp: 1; }
}
@media screen and ( max-width: 960px ){
    /*=== about ===*/
    .top_about::before{ left: 2rem; }
    .top_about::after{
        bottom: 7.4rem;
        left: 4rem;
    }
    /*=== 満足度No.1 ===*/
    .top_best::before{
        top: 34rem;
        left: 5.208333333333334vw;/*5rem*/
    }
    .top_best::after{
        top: 32rem;
        right: 6.25vw;/*6rem*/
    }
    /*=== 実績 ===*/
    .splide__arrow--prev{ left: 19.6%; }
    .splide__arrow--next{ right: 19.6%; }
}
@media screen and ( max-width: 780px ){
    /*=== 共通 ===*/
    /*== タイトル・サブタイトル ==*/
    .top_title{
        /* font-size: clamp(2rem, 7.6923076923076925vw, 6rem); */
        font-size: clamp(2.4rem, 7.6923076923076925vw, 6rem);
        /* -webkit-text-stroke: clamp(.8rem, 2.051282051282051vw, 1.6rem) var(--bright-brown); */
        -webkit-text-stroke: clamp(.5rem, 1.282051282051282vw, 1rem) var(--bright-brown);
    }
    .top_subtitle{ font-size: clamp(1.2rem, 3.5897435897435894vw, 2.8rem); }
    /*== width ==*/
    .top_section_inner{ width: 97.5%; }
    /*== アニメーション ==*/
    @keyframes fadeInRightAnime{
        from {
            opacity: 0;
            transform: translateY(25px);
        }
        to {
            opacity: 1;
            transform: translateY(0);
        }
    }
    /*== 改行 ==*/
    .br_sp{ display: block; }
    /*=== MV ===*/
    .mv::before{
        top: clamp(8rem, 55.769230769230774vw, 43.5rem);
        left: clamp(.4rem, 1.282051282051282vw, 1rem);
        width: clamp(2rem, 39.743589743589745vw, 31rem);
        height: clamp(1rem, 25vw, 19.5rem);
    }
    .mv::after{
        top: clamp(8rem, 37.17948717948718vw, 29rem);
        right: .4rem;
        width: clamp(2rem, 36.28205128205128vw, 28.3rem);
        height: clamp(1rem, 23.589743589743588vw, 18.4rem);
    }
    .mv_catchcopy{
        bottom: 11.538461538461538vw;/*9rem*/
    }
    .mv_catchcopy img{ width: 98%; }

    /*=== about ===*/
    .top_about{
        margin-top: clamp(-16rem, -20.51282051282051vw, -12rem);
        padding: 14rem 0 clamp(60rem, 105.12820512820514vw, 82rem);
        background-image: url(../img/SP/about_bg_SP.png);
    }
    .top_about::before{
        top: auto;
        right: 0;
        bottom: 20rem;
        left: 0;
        margin: 0 auto;
        width: clamp(28rem, 88.71794871794872vw, 69.2rem);
        height: clamp(23.315rem, 73.84615384615385vw, 57.6rem);
    }
    .top_about::after{
        bottom: clamp(1rem, 2.307692307692308vw, 1.8rem);
        left: -2rem;
        width: clamp(22rem, 34.72307692307692vw, 27.084rem);
        height: clamp(26.074rem, 41.15384615384615vw, 32.1rem);
        background-image: url(../img/about_decoration2.png);
    }
    .topAboutImgAnimation::before,
    .topAboutImgAnimation::after{
        animation-delay: 1.3s;
    }
    @keyframes topAboutFadeInRightAnime{
        from {
            opacity: 0;
            transform: translateY(25px);
        }
        to {
            opacity: 1;
            transform: translateY(0);
        }
    }
    .top_about_inner{ padding-top: 0; }
    .top_about_content{
        margin: 0 auto;
        width: 100%;
    }
    .top_about_emphasis{
        padding: 0 .8rem;
        font-size: clamp(2.2rem, 5.128205128205128vw, 4rem);
    }
    .top_about_sentence{
        margin-top: 7%;
        line-height: 1.875;
        font-size: clamp(1.6rem, 2.564102564102564vw, 2rem);
        text-shadow: #4b3925 .1rem 0 1rem;
    }

    /*=== 支店・サービス・アートギャラリー ===*/
    .topBranch_to_topArtGallery_wrapper{
        margin-top: -17.94871794871795vw;
        overflow-x: clip;
        background-image: url(../img/SP/branchTOartGallery_bg_SP.png);
    }
    .topBranch_to_topArtGallery_wrapper::before{
        /* top: clamp(3.2rem, 6.153846153846154vw, 4.8rem); */
        top: clamp(2rem, 3.8461538461538463vw, 3rem);
        width: clamp(25rem, 63.2474358974359vw, 49.333rem);
        height: clamp(8.108rem, 20.51282051282051vw, 16rem);
    }

    /*== 支店 ==*/
    .top_branch_subtitle_bg{ padding: clamp(1.2rem, 2.307692307692308vw, 1.8rem); }
    .top_branch_title{ margin-top: clamp(2.4rem, 6.153846153846154vw, 4.8rem); }
    .top_branch_list{
        margin-top: 3.2rem;
        flex-wrap: wrap;
        gap: 3.6rem 1rem;
        justify-content: space-between;
    }
    .top_branch_box{ width: 47.3%; }
    .top_branch_name_text{ font-size: clamp(1.4rem, 4.487179487179487vw, 3.5rem); }

    /*== サービス ==*/
    .top_service{
        margin: clamp(6.4rem, 15.384615384615385vw, 12rem) auto clamp(5.6rem, 11.538461538461538vw, 9rem);
        padding: clamp(6.4rem, 15.384615384615385vw, 12rem) 0 clamp(7.2rem, 19.230769230769234vw, 15rem);
    }
    .top_service_title{ margin-top: clamp(2.4rem, 6.153846153846154vw, 4.8rem); }
    .top_service_list{
        margin-top: clamp(3.2rem, 8.205128205128204vw, 6.4rem);
        gap: 3rem 2.6%;
        z-index: 1;
    }
    .top_service_list::before{
        top: -23.076923076923077vw;/*-18rem*/
        right: -2rem;
        width: clamp(2rem, 35.264102564102565vw, 27.506rem);
        height: clamp(1rem, 28.589743589743588vw, 22.3rem);
    }
    .top_service_box{ width: calc(100% / 2 - 2.6%); }
    .top_service_name_text{ font-size: clamp(1.4rem, 3.3333333333333335vw, 2.6rem); }
    .top_service_name_text_PC{ display: none; }
    .top_service_name_text_SP{
        display: block;
        text-align: center;
    }

    /*== アートギャラリー ==*/
    .topBranch_to_topArtGallery_wrapper::after{
        right: -3rem;
        bottom: -1rem;
        width: clamp(20rem, 35.64102564102564vw, 27.8rem);
        height: clamp(18.614rem, 33.17051282051282vw, 25.873rem);
    }
    .top_artGallery_subtitle_bg{ margin-top: clamp(1.6rem, 3.8461538461538463vw, 3rem); }
    .top_artGallery_list{ margin-top: clamp(3.2rem, 8.205128205128204vw, 6.4rem); }
    .top_artGallery_list .splide__list{
        display: flex !important;
        flex-wrap: wrap;
        gap: 3rem 1rem;
        justify-content: space-between;
    }
    .top_artGallery_list .splide__slide{ width: 47.4%; }
    .top_artGallery_img::before{
        font-size: clamp(1.6rem, 3.076923076923077vw, 2.4rem);
    }
    .top_artGallery_cat{
        padding: clamp(.2rem, 0.641025641025641vw, .5rem) clamp(.4rem, 1.282051282051282vw, 1rem) clamp(.4rem, 0.641025641025641vw, .5rem);
        font-size: clamp(1.2rem, 1.7948717948717947vw, 1.4rem);
    }
    .top_artGallery_text{
        margin-top: clamp(.8rem, 3.076923076923077vw, 2.4rem);
        font-size: clamp(1.2rem, 2.8205128205128207vw, 2.2rem);
    }

    /*=== 満足度No.1 ===*/
    .top_best{
        margin-top: clamp(-15rem, -19.230769230769234vw, -10rem);
        padding: clamp(1rem, 23.076923076923077vw, 18rem) 0 clamp(1rem, 23.076923076923077vw, 18rem);
        background-image: url(../img/SP/best_bg_SP.png);
    }
    .top_best::before{
        top: clamp(38rem, 74.35897435897436vw, 58rem);
        left: -6rem;
        width: clamp(16rem, 29.871794871794872vw, 23.3rem);
        height: clamp(18.355rem, 34.26794871794872vw, 26.729rem);
    }
    .top_best::after{
        top: clamp(37rem, 75.64102564102564vw, 59rem);
        right: 0;
        width: clamp(15rem, 25.128205128205128vw, 196rem);
        height: clamp(25.238rem, 42.27948717948718vw, 32.978rem);
    }
    .top_best_inner{ min-width: initial; }
    .top_best_title_img{
        max-width: 76rem;
        width: 98%;
    }
    .top_best_title{ font-size: clamp(3.2rem, 8.974358974358974vw, 7rem); }
    .top_best_title_span_frame{
        -webkit-text-stroke: clamp(.6rem, 1.282051282051282vw, 1rem) #fff;
        filter: drop-shadow(0 0 4px #fff) drop-shadow(0 0 15px rgba(255, 255, 255, 0.7)) drop-shadow(0 0 20px rgba(255, 255, 255, 0.3));
    }
    .top_best_list{
        margin-top: clamp(4rem, 15.384615384615385vw, 12rem);
        flex-wrap: wrap;
        justify-content: space-between;
        gap: 1.6rem 0;
    }
    .top_best_box{
        /* width: clamp(24rem, 48.717948717948715vw, 38rem);
        height: clamp(23.336rem, 47.37051282051282vw, 36.949rem); */
        margin: 0 auto;
        width: clamp(24rem, 45.51282051282051vw, 35.5rem);
    }
    .top_best_text_small{ font-size: clamp(1.6rem, 4.102564102564102vw, 3.2rem); }
    .top_best_text_middle{ font-size: clamp(2.6rem, 6.923076923076923vw, 5.4rem); }
    .top_best_text_large{ font-size: clamp(3.2rem, 8.205128205128204vw, 6.4rem); }
    .top_best_text_middle,
    .top_best_text_large{
        margin: 0 0 clamp(.8rem, 2.051282051282051vw, 1.6rem);
        line-height: 1;
    }
    
    /* .top_best_box:is(:nth-child(1), :nth-child(2)) .top_best_box_inner{ margin-top: clamp(3.2rem, 7.6923076923076925vw, 6rem); } */
    .top_best_box:is(:nth-child(1), :nth-child(2)) .top_best_box_inner{ margin-top: clamp(2.4rem, 6.41025641025641vw, 5rem); }
    /* .top_best_box:last-of-type .top_best_box_inner{ margin-top: clamp(3.2rem, 6.41025641025641vw, 5rem); } */
    .top_best_box:last-of-type .top_best_box_inner{ margin-top: clamp(2.4rem, 5.128205128205128vw, 4rem); }
    .top_best_sentence{
        margin-top: 0;
        font-size: clamp(1.4rem, 2.307692307692308vw, 1.8rem);
    }

    /*=== 代表挨拶 ===*/
    .top_greeting{
        margin-top: clamp(-17rem, -21.794871794871796vw, -8rem);
        padding: clamp(12rem, 24.358974358974358vw, 19rem) 0 clamp(12rem, 37.17948717948718vw, 29rem);
        background-image: url(../img/SP/greeting_bg_SP.png);
    }
    .top_greeting_inner{ position: relative; }
    .top_greeting_content_bg{
        margin-top: clamp(4rem, 10.256410256410255vw, 8rem);
        width: clamp(24rem, 96.66666666666667vw, 75.4rem);
        height: clamp(23.336rem, 127.82051282051282vw, 99.7rem);
        background-image: url(../img/SP/greeting_content_bg_SP.png);
    }
    /*=== 装飾関連一括記述 ===============================*/
    .top_greeting::before{/*たまご*/
        top: clamp(16rem, 32.05128205128205vw, 25rem);/*25rem*/
        right: 7.6923076923076925vw;/*6rem*/
        bottom: auto;
        left: auto;
        width: clamp(5rem, 16.666666666666664vw, 13rem);
        height: clamp(4.727rem, 15.755128205128205vw, 12.289rem);
    }
    .top_greeting::after{/*ちくわ*/
        bottom: 39.1025641025641vw;/*30.5rem*/
        left: 3.076923076923077vw;/*2.4rem*/
        width: clamp(5rem, 13.205128205128206vw, 10.3rem);
        height: clamp(4.175rem, 11.025641025641026vw, 8.6rem);
    }
    .top_greeting_content_bg::before{/*おでん鍋*/
        top: -11.538461538461538vw;/*-9rem*/
        left: -1rem;
        width: clamp(1.5rem, 29.615384615384617vw, 23.1rem);
        height: clamp(1.3rem, 21.517948717948716vw, 16.784rem);
    }
    .top_greeting_content_bg::after{/*代表イラスト*/
        right: 0;
        bottom: 2.604166666666667vw;
        width: clamp(17.5rem, 54.871794871794876vw, 42.8rem);
        height: clamp(18.3rem, 57.37948717948718vw, 44.756rem);
    }
    .top_greeting_inner::before{/*もち巾着*/
        top: -10.256410256410255vw;/*-8rem*/
        right: 1.282051282051282vw;/*1rem*/
        width: clamp(5rem, 11.923076923076923vw, 9.3rem);
        height: clamp(5.43rem, 12.94871794871795vw, 10.1rem);
    }
    .top_greeting_inner::after{/*おでん串*/
        top: auto;
        right: auto;
        bottom: -10.76923076923077vw;/*-8.4rem*/
        left: 21.153846153846153vw;/*16.5rem*/
        width: clamp(5rem, 14.487179487179489vw, 11.3rem);
        height: clamp(6.726rem, 19.48717948717949vw, 15.2rem);
    }
    .top_greeting_content_inner::after{/*こんにゃく*/
        right: .5rem;/*.5rem*/
        bottom: 5.6rem;/*5.6rem*/
        width: clamp(5rem, 12.051282051282051vw, 9.4rem);
        height: clamp(4.947rem, 11.923076923076923vw, 9.3rem);
    }
    /*===================================================*/
    .top_greeting_content_inner{
        padding: clamp(5rem, 12.82051282051282vw, 10rem) clamp(1rem, 8.974358974358974vw, 7rem) 0 clamp(1rem, 11.538461538461538vw, 9rem);
    }
    .top_greeting_title{
        font-size: clamp(3.2rem, 8.974358974358974vw, 7rem);
        -webkit-text-stroke: clamp(.8rem, 1.282051282051282vw, 1rem) #fff;
    }
    .top_greeting_sentence,
    .top_greeting_name{
        position: relative;
        width: 100%;
        line-height: 1.6;
        font-size: clamp(1.3rem, 3.8461538461538463vw, 3rem);
        text-shadow: #fff .1rem 0 1rem;
        letter-spacing: -.06em;
        z-index: 2;
    }
    .top_greeting_name{
        margin-top: clamp(3.2rem, 9.230769230769232vw, 7.2rem);
        text-align: start;
    }

    /*=== 選ばれる理由 ===*/
    .top_choose{ padding: 28rem 0 clamp(38rem, 64.1025641025641vw, 50rem); }
    .top_choose_info{
        background-image: url(../img/SP/choose_content_bg_SP.png);
        width: clamp(30rem, 70.51282051282051vw, 55rem);
        height: clamp(26.618rem, 62.56410256410256vw, 48.8rem);
    }
    .top_choose_info_inner{
        position: relative;
        width: 82%;
        z-index: 2;
    }
    .top_choose_list{ margin-top: clamp(3.2rem, 7.051282051282051vw, 5.5rem); }
    .top_choose_box{ margin-bottom: 3.2rem; }
    .top_choose_box:nth-child(2){ margin-bottom: 46.794871794871796vw; }
    .top_choose_img{ width: 72.4%; }
    .top_choose_point,
    .top_choose_point_title{
        font-size: clamp(2rem, 3.8461538461538463vw, 3rem);
        -webkit-text-stroke: .5rem #fff;
        paint-order: stroke;
    }
    .top_choose_point_sentence{ font-size: clamp(1.6rem, 2.8205128205128207vw, 2.2rem); }
    .top_choose_box:nth-child(2n+1) .top_choose_info{ margin-top: 42.30769230769231vw; }
    .top_choose_box:nth-child(2n) .top_choose_img{ margin-top: 42.30769230769231vw; }

    /*=== 実績 ===*/
    .top_achievement{
        overflow-x: hidden;
        padding: clamp(1rem, 19.230769230769234vw, 15rem) 0 clamp(1rem, 16.666666666666664vw, 13rem);
    }
    .top_achievement::before{
        top: 37.17948717948718vw;
        left: -4rem;
        width: clamp(13rem, 27.893589743589743vw, 21.757rem);
        height: clamp(23.004rem, 49.358974358974365vw, 38.5rem);
    }
    .top_achievement::after{
        top: 41.02564102564102vw;
        right: -5rem;
        width: clamp(14rem, 33.03205128205128vw, 25.765rem);
        height: clamp(17.116rem, 40.38461538461539vw, 31.5rem);
    }
    .top_ach_inner{ width: 100%; }
    .top_ach_subtitle_bg{
        margin: 0 auto;
        width: 94%;
    }
    .top_ach_list{ margin-top: clamp(3.2rem, 8.205128205128204vw, 6.4rem); }
    .top_ach_img::before{
        padding-top: 10%;
        font-size: clamp(1.6rem, 4.102564102564102vw, 3.2rem);
    }
    .top_title{ margin-top: clamp(2.4rem, 6.153846153846154vw, 4.8rem); }
    .top_ach_cat{ font-size: clamp(1.2rem, 1.7948717948717947vw, 1.4rem); }
    .top_ach_area_name{ font-size: clamp(1.2rem, 2.564102564102564vw, 2rem); }
    .top_ach_text{ font-size: clamp(1.3rem, 3.205128205128205vw, 2.5rem); }
    .top_ach_more_span{ font-size: clamp(1.2rem, 2.051282051282051vw, 1.6rem); }
    .splide__arrow{
        width: clamp(4rem, 10.256410256410255vw, 8rem);
        height: clamp(4rem, 10.256410256410255vw, 8rem);
    }
    .splide__arrow--prev{ left: 2%; }
    .splide__arrow--next{ right: 2%; }

    /*=== お知らせ・コラム ===*/
    .top_NB_wrapper{ padding: 14rem 0 clamp(8rem, 16.666666666666664vw, 13rem); }
    .top_NB{
        padding: clamp(7rem, 15.384615384615385vw, 12rem) 0 0;
        max-width: initial;
        width: 100%;
        background-image: url(../img/SP/NB_bg_SP.png);
        aspect-ratio: 1 / 1.3059602649006623;
    }
    .top_NB_inner{
        flex-wrap: wrap;
        gap: clamp(3.2rem, 8.974358974358974vw, 7rem) 0;
    }
    .top_NB article::after{ height: .9rem; }
    .top_NB_link{ padding: clamp(1.4rem, 5.128205128205128vw, 4rem) 0; }
    .top_NB_time{ font-size: clamp(1.6rem, 3.076923076923077vw, 2.4rem); }
    .top_NB_text{
        font-size: clamp(1.6rem, 3.076923076923077vw, 2.4rem);
        -webkit-line-clamp: 2;
    }
    .top_NB_allLink{ font-size: clamp(1.4rem, 2.6923076923076925vw, 2.1rem); }
    .top_NB_allLink::after{
        width: clamp(1.76833rem, 4.487179487179487vw, 3.5rem);
        height: clamp(1.09667rem, 2.8205128205128207vw, 2.2rem);
    }
}
@media screen and ( max-width: 500px ){
    /*=== 共通 ===*/
    /*== 改行 ==*/
    .br_sp500{ display: block; }
    /*=== 支店・サービス・アートギャラリー ===*/
    .topBranch_to_topArtGallery_wrapper{
        /* margin-top: -22vw; */
        /*-11rem*/
        /* padding-top: clamp(5rem, 14.000000000000002vw, 7rem); */
        margin-top: -28.000000000000004vw;/*-14rem*/
        padding-top: clamp(5rem, 20vw, 10rem);
    }
    .topBranch_to_topArtGallery_wrapper::before{
        /* top: clamp(1rem, 8vw, 4rem);
        width: clamp(20rem, 50vw, 25rem);
        height: clamp(6.486rem, 16.216vw, 8.108rem); */
        /* top: clamp(2rem, 8vw, 4rem); */
        top: clamp(4rem, 14.000000000000002vw, 7rem);
        width: clamp(20rem, 68vw, 34rem);
        height: clamp(6.486rem, 22.054vw, 11.027rem);
    }
    /*== アートギャラリー ==*/
    .top_artGallery_list .splide__slide{
        margin: 0 auto;
        width: 90%;
    }
    /*=== about ===*/
    .top_about{ padding: 14rem 0 clamp(52rem, 120vw, 60rem); }
    .top_about::after{
        bottom: clamp(1rem, 18vw, 9rem);
        left: 0;
        width: clamp(18rem, 44vw, 22rem);
        height: clamp(19.897rem, 48.638vw, 24.319rem);
        background-image: url(../img/about_decoration2_from1280.png);
    }
    /*== サービス ==*/
    .top_service_name{ height: 30%; }
    .top_service_name::after{
        width: 7.9%;
        height: 16.8%;
    }
    /*=== 満足度No.1 ===*/
    .top_best::before,
    .top_best::after{
        display: none;
    }
    .top_best_list{ margin-top: 3.2rem; }
    /*=== 選ばれる理由 ===*/
    .top_choose{ padding: 28rem 0 clamp(28rem, 80vw, 40rem); }
    .top_choose_box:nth-child(2n+1) .top_choose_info{ margin-top: clamp(1rem, 54vw, 27rem); }
    .top_choose_box:nth-child(2n) .top_choose_img{ margin-top: clamp(22rem, 54vw, 27rem); }
    .top_choose_point_sentence{ text-shadow: #fff .1rem 0 1rem; }
    .top_choose_box:nth-child(2){
        margin-bottom: 60vw;/*30rem*/
    }

    /*=== 実績 ===*/
    .top_ach_list .splide__slide::before{
        background-image: url(../img/SP/achievement_content_bg_SP.png);
    }
    .top_ach_img::before,
    .top_ach_mskImg img{
        -webkit-mask-image: url(../img/SP/achievement_mask_SP.png);
        mask-image: url(../img/SP/achievement_mask_SP.png);
    }
    .top_ach_img::before{
        padding-top: 0;
    }
    .top_ach_img{
        top: .8%;
        width: calc(100% - 1.9%);
        aspect-ratio: 1 / 0.95;
    }
    .top_ach_info_box{
        bottom: .9%;
        padding: 6% 0 1rem;
        width: calc(100% - 1.9%);
    }
    .top_ach_more{
        margin-right: 3.2%;
    }




    /*=== お知らせ・コラム ===*/
    .top_NB{ padding: clamp(1.6rem, 14.000000000000002vw, 7rem) 0 0; }
    .top_NB article::after{ height: .6rem; }
    .top_NB_link{ padding: clamp(1.4rem, 4.8vw, 2.4rem) 0; }
    .top_NB_text{ -webkit-line-clamp: 1; }
}