@charset "utf-8";

/*税務サービス・経営支援サービス*/
.imgR{display:flex; justify-content: space-between;align-items: flex-start; gap:clamp(30px,calc(60/1500*100vw),60px); width:95%;max-width:1280px; margin:auto;}
.imgR img{order:2;width:clamp(150px,calc(300/1280*100vw),300px);height: auto; }
#bgbarrow{
    position: relative;
    overflow: hidden; /* はみ出し防止 */
    padding-bottom:70px;
}
#bgbarrow::before{
    content:"";
    position: absolute;
    left:0;
    bottom:59px;
    width:100%;
    height:50%; /* ← 下半分だけ */
    background:#004da1;
}
#bgbarrow::after{
    content:"";
    position:absolute;
    left:0;
    bottom:0px;
    width:100%;
    height: 60px;
    background:#004da1;
    clip-path: polygon(0 0, 100% 0, 50% 100%);

}
#bgbarrow a{display: block; overflow: hidden;}
#bgbarrow a img{transition: transform .5s ease; /* ふわっと */}
#bgbarrow a:hover img{transform: scale(1.05); /* 拡大率はお好みで */}
.w1350{width:100%;max-width: 1350px;}
.w1350 > div{max-width:620px; background:#FFF;z-index: 1;}
.wrap{position:relative;display: flex;flex-direction: column;align-items: center;padding:30px;}
.wrap h3{font-size:clamp(20px,calc(30/1500*100vw),30px);width:75%;margin:0 auto;padding:30px 0 0;background:#FFF;position:absolute;top:-80px;left:50%;transform: translateX(-50%); }
.wrap h3::after{content:"";display: block; width:100px;height:1px;background:#004da1;margin:10px auto 30px;}
.wrap p{padding-top:clamp(5px,calc(20/1350*100vw),20px);background:#FFF;height:150px;}
.wrap::after{content:"";display: block;margin-top:20px; background:url("../images/arrow.webp") center/contain; width:clamp(30px,calc(60/1350*100vw),60px);height:clamp(30px,calc(60/1350*100vw),60px);}

/*サービス一覧*/
.bgg{background:linear-gradient(transparent 50%,#f4f4f6 50%);background-attachment: fixed;}
.service-wrapper{display:flex;gap:clamp(30px,calc(120/1500*100vw),120px);}
.service-left{
    max-width:600px;
    flex:1;
    position:sticky;
    top:200px;
    height:40vh;
}
.service-left img{
    width:100%;
    height:100%;
    object-fit:cover;
    border-radius:10px;
    transition:opacity .4s ease;
}
.service-right{flex:1;}
.service-right img{display:none;}
.service-right .item{ margin-bottom:clamp(80px,calc(200/1500*100vw),200px);}
.item a{position:relative;display:block;padding:clamp(20px,calc(60/1500*100vw),60px) clamp(15px,calc(30/1500*100vw),30px); border-radius:15px;}
.item a:hover{box-shadow: 0 0 10px rgba(0,0,0,0.3);border-radius: 10px;background:#FFF;}
.item a::after{
    pointer-events: none;
    position: absolute;
    right: 10px;   /* ← これが決定打 */
    bottom: 10px;
    content:"";
    display:block;
    margin-top:20px;
    width:clamp(20px,calc(40/1350*100vw),40px);
    height:clamp(20px,calc(40/1350*100vw),40px);
    background: url("../images/arrow.webp") no-repeat;
    background-size: contain;
}
.item h2{font-size:clamp(20px,calc(42/1500*100vw),42px);margin-bottom:clamp(15px,calc(30/1500*100vw),30px);}

/*お客様からの評価*/
.slider-wrapper { position: relative; width: 100%; max-width: 900px; margin: 0 auto;padding:0 30px;}
.slider {display: flex;overflow: hidden; scroll-behavior: smooth;}
.slider > div {min-width: 100%; padding: 40px 20px;}
.slider-btn {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    background: #3078b7;
    color: #fff;
    border: none;
    width: 45px;
    height: 45px;
    border-radius: 50%;
    cursor: pointer;
    font-size: 20px;
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 10;
}
.slider-btn.prev {left: -20px;}
.slider-btn.next {right: -20px;}

.slider h3{position:relative;border:1px solid #338dc9;padding:clamp(10px,calc(20/1000*100vw),20px);border-radius: 10px;margin-bottom: 20px;display:inline-block;margin-left:clamp(80px,calc(150/1000*100vw),150px);}
.bgb{background:#004da1;color:#FFF;padding:20px;}
.bcb{border:1px solid #004da1;padding:20px;}
.slider h3::before{position:absolute;bottom:0;left:clamp(-140px,calc(-140/1000*100vw),-70px);content:"";display:block;width:clamp(50px,calc(120/1000*100vw),120px);height:clamp(50px,calc(120/1000*100vw),120px);}
.voice1 h3::before{background:url("../images/home/voice1.webp") no-repeat center/contain;}
.voice2 h3::before{background:url("../images/home/voice2.webp") no-repeat center/contain;}
.voice3 h3::before{background:url("../images/home/voice3.webp") no-repeat center/contain;}
.voice4 h3::before{background:url("../images/home/voice4.webp") no-repeat center/contain;}

/*お知らせ・トピックス*/
.news h2,.topics h2{border-bottom:1px solid #FFF; font-size:clamp(16px,calc(18/1280*100vw),18px);margin-bottom: 20px;}
.news h2::before,.topics h2::before{content:"News";font-size:clamp(20px,calc(40/1280*100vw),40px);color:#004da1;margin-right:20px;}
.news > div{position:relative;}
.news > div a{position:absolute;right:0;top:40%;}
.news > div a::after{content:"→"; background:#004da1;color:#FFF;border-radius: 50%;font-size:14px;width:20px;height:20px;display:inline-block;text-align: center;margin-left:10px;}
.entrylist {background:#FFF;}
.entrylist li:not(:last-child){border-bottom:1px dotted #338dc9;}
.entrylist a{position:relative;display:flex;gap:1em;padding:20px 40px 20px 20px;color: #312c24;background:linear-gradient(to right, #338dc9 0%, #338dc9 100%),#ffffff;background-size: 0% 100%, 100% 100%;background-repeat: no-repeat;transition: background-size 0.4s ease, color 0.4s ease;}
.entrylist a::after{position:absolute;right:10px; top:50%;transform: translateY(-50%);content:"→"; background:#004da1;color:#FFF;border-radius: 50%;font-size:14px;width:20px;height:20px;display:inline-block;text-align: center;margin-left:10px;}
.entrylist time{font-family:century,serif;}
.entrylist a:hover{background-size: 100% 100%, 100% 100%; color: #fff;}
/* レスポンシブ
------------------------------------------------------------*/

/* 1025px以下から
------------------------------------------------------------*/
@media only screen and (max-width:1025px){
    .flexbox.c3 h3{text-align: center;}
    .flexbox.c3 div{width:100%;}
}
/* 768px以下から
------------------------------------------------------------*/
@media only screen and (max-width:768px){
    .imgR {display:block;}
    .imgR img{float:right;margin:0 0 20px 20px; }
    /*税務サービス・経営支援サービス*/
    .w1350 > div{width:100%;margin:auto;}
    #bgbarrow::before{display:none;}
    .w1350 > div{width:100%;max-width: 100%;position: relative;overflow: hidden;}
    .w1350 > div::after{content:"";position: absolute;left:0;bottom:0;width:100%;height:58%;background:#004da1;pointer-events: none;}
    .wrap{z-index:999;background:#FFF;margin:0 3px 3px}
    /*お客様からの評価*/
    .slider-wrapper {margin: 0 auto;padding:0;}
    .slider > div {padding: 40px 0;}
    .slidenav{text-alien:center;display:flex;justify-content: center;gap:30px;}
    .slider-btn {position:inherit;}
    .slider-btn.prev {left:inherit;top:inherit;}
    .slider-btn.next { right: inherit;top:inherit;}
    .slider h3 br{display:none;}
    /*お知らせ・トピックス*/
    .inner-box2.flexbox.c2 > div{width:100%;}
}
/* 450px以下から
------------------------------------------------------------*/
@media only screen and (max-width:450px){
    .imgR {display:block;}
    .imgR img{float:none;display:block;margin:0 auto 20px; }

    /*サービス一覧*/
    .service-left{display:none;}
    .service-right{flex: 1 1 100%;}
    .service-right img{display:block;width:100%;margin-bottom: 15px;border-radius: 4px;}

    /*お知らせ・トピックス*/
    .entrylist a{display:block;}
}