/* html{
    overflow: auto;
} */
body{
    font-size: 16px;
    letter-spacing: 0.05em;
    /* background-color: #C5B78E; */
    .noto-serif-jp-medium {
        font-family: "Noto Serif JP", serif;
        font-weight: 500;
        font-style: normal;
    }
    
    .noto-serif-jp-bold {
        font-family: "Noto Serif JP", serif;
        font-weight: 700;
        font-style: normal;
    }      
}
a{
    transition: .2s;
}
.sp{
    display: none;
  }
  .pc{
    display: block;
    min-width: 768px;
  }
/*--header - 共通--*/
header{
    width: 100%;
    position: fixed;
    background-color: #7EBEA5;
    z-index: 100;
    /* font-weight: bold; */
}
header>.white-line{
    border: solid #fff 5px;
}
.h-block{
    height: 80px;
    position: relative;
    display: flex;
    align-items: center;
    margin: 15px 40px;
    font-size: 30px;
}
.h-logo{
    display: flex;
    align-items: center;
    text-align: center;
    gap: 0 30px;
}
/* .h-logo>img{
    width: 85px;
    height: 86px;
} */
.logo{
    color: #000000;
    font-weight: bold;
}
.logo>p{
    font-size: 16px;
}
.h-btn{
    position: absolute;
    right: 0;
    font-size: 18px;
    font-weight: bold;
    cursor: pointer;
    width: 50%;
}
.btn-list{
    /* position: relative; */ /* コレ必要？ */
    display: flex;
    color: #fff;   
    gap: 0 25px;
    padding-bottom: 10px;
    width: 100%;
    white-space: nowrap;
}
.btn-list>li{
    width: 20%;
}
/* 擬似要素(下線)　::after */
.btn-list a:hover{
    color: #e6b422;
}

/* .btn-list a::after{ */
    /* content: ''; */
    /* position: absolute; */
    /* bottom: 0; */
    /* left: 0; */
    /* width: 15%; */
    /* height: 2px; */
    /* background-color: #C5B78E; */
    /* transform: scale(1,1); */
    /* visibility: hidden;  アンダーラインが位置する各リストの下端からの高さ headerの下幅に合わせてる？ */
    /* bottom: -1px;        hover前にアンダーラインを可視化しない */
    /* opacity: 0; */
/* } */
/* .btn-list a:hover::after{ */
    /* visibility: visible;hover前にアンダーラインを可視化する */
    /* opacity: 1; */
    /* transition: .2s; */
/* } */


/* kv-HOME */
.kv{
    top: 120px;
    width: 100%;
    /* height: 530px; */
    height: 78vh;
    background-image: url(../image/HOME-KV.jpeg);
    background-repeat: no-repeat;
    background-size: cover;
    position: relative;
}
.kv-content{
    position: absolute;
    text-align: center;
    color: #fff;
    width: 95%;
    font-size: 60px;
    font-weight: bold;
    line-height: 200%;
    top:50%;
    left:50%;
    transform: translate(-50%,-50%);
}

/* ABOUT - HOME */
.about-container{
    background-color: #E0DADA;
    padding-top: 165px;
    /* 謎の現象 */
    /* これ書かないと上の要素に95px分埋もれてしまう */
    /* 本当はこのsectionのTOPから80pxあけたかったので計算して200px */
    /* margin-topだと、background-colorの色が反映されてしまうので、padding-topにしたけど、何故？ */
    /* headerのfixed分？ or kvの position:relative と position:absoluteの影響？ */
    
    padding-left:40px;
    padding-right: 40px;
    /* or */
    /* padding-left: 3%;
    padding-right: 3%; */ 
    /* どっちが良い？ */
    
    /* justify-content: center; */
    /* 要素確認した時に掛かってないけど要らない？ */

    /* letter-spacing: 5%; */ /* →これ掛からない */
}
.about-ttl{
    /* padding: 0 45%; */
    text-align: center;
    display: grid;
    place-items: center;
}
.about-ttl>h1{
    font-size: 40px;
    font-weight: bold;
    line-height: 200%;
}
.about-ttl>small{
    /* width: 160px; */
    font-size: 16px;
    width: 180px;
    line-height: 200%;
    padding-bottom: 20px;
    border-bottom: solid 2px;
}

/* ABOUT 事業内容 */
.service{
    display: flex;
    margin-bottom: 80px;
    margin-top: 80px;
}
.service>.service-sec{
    /* position: relative; */
    width: 55%;
    padding: 40px 8% 40px 5%;
    background-color: #fff;
    text-align: left;
}
.s-ttl{
    width: 180px;
    text-align: center;
    margin-bottom: 30px;
}
.s-ttl>strong{
    font-size: 36px;
    font-weight: bold;
    line-height: 120%;
}
.s-ttl>small{
    line-height: 120%;
    font-size: 20px;
}
.service-sec>h3{
    font-size: 28px;
    font-weight: bold;
    color: #7EBEA5;
    padding-top: 30px;
    padding-bottom: 25px;
}
.service>p img{
    width: 50vw;
    height: 80%;
    /* position: absolute; */
    /* top: 50%; */
    /* left: 50%; */
    transform: translate(-10%,15%);
}
.service-sec>button{
    color: #fff;
    background-color: #7EBEA5;
    margin-top: 30px;
    padding: 20px;
    /* or */
    /* padding: 3%;の方が良い？ */
    
    margin-left: 30%;
    /* 真ん中にする為だけに無理やり書いただけ */
    /* text-align: center; */ /* →これ掛からない */
    /* ここだけ真ん中にする為だけにわざわざposition:relative と position:absolut使わないとダメ？ */
}
/* 擬似要素(下線)　::after */
.service-sec>button:hover{
    color: #333;
}

.company-home{
    display: flex;
    padding-bottom: 80px;
    flex-direction: row-reverse;
    /* position: relative; */  /* コレ要らない？ */
}
.company-home>p{
    z-index: 5;
    /* width: 55vw; */
    /* height: 100%; */
    width: 55%;
    /* padding: 40px 8% 40px 5%; */
    /* background-color: #fff; */
    /* text-align: left; */
    /* left: 40px; */
}
.company-home>p img{
    width: 55vw;
    height: 60vh;
}
.company-home>.o-content{
    width: 50%;
    height: 100%;
    text-align: left;
    z-index: 1;
}
.c-content{
    background-color: #fff;
    /* width: 50vw;
    height: 100%; */
    /* margin-top: 40px; */
    padding-bottom: 30px;
    padding-top: 40px;
    padding-left: 15%;
    /* or */
    /* padding-left: 40px; */
    /* どっちが良い？ */
    width: 55%;
    height: 50vh;
    transform: translateY(10%);
    /* position: absolute; */  /* コレ要らない？ */
}
.c-content>h2{
    font-size: 36px;
    font-weight: bold;
    line-height: 120%;
}
.c-content>small{
    line-height: 120%;
    font-size: 18px;
    width: 142px;
    justify-content: center;
}
.c-content>p{
    padding-top: 16px;
    line-height: 150%;
}
.c-content>button{
    color: #fff;
    background-color: #7EBEA5;
    margin-top: 30px;
    padding: 20px;
    /* or */
    /* padding: 3%;の方が良い？ */
    
    margin-left: 30%;
    /* 真ん中にする為だけに無理やり書いただけ */
    /* text-align: center; */ /* →これ掛からない */
    /* ここだけ真ん中にする為だけにわざわざposition:relative と position:absolut使わないとダメ？ */
}
/* 擬似要素(下線)　::after */
.c-content>button:hover{
    color: #333;
}


/* お問合せ　section -HOME*/
.contact-container{
    background-color: #fff;
    padding-top: 80px;
}
.contact-ttl{
    /* padding: 0 40%; */
    /* text-align: center; */
    /* width: 600px; */
    display: grid;
    place-items: center;
}
.contact-container>h1>strong{
    font-size: 40px;
    font-weight: bold;
    line-height: 200%;
}
.contact-ttl>small{
    /* width: 160px; */
    font-size: 20px;
    line-height: 200%;
    padding-bottom: 20px;
    border-bottom: solid 2px;
}
.form{
    display: grid;
    place-items: center;
    text-align: center;
    margin-left: auto;
    margin-right: auto;
    margin-top: 80px;
    margin-bottom: 80px;
    color: #fff;
    line-height: 200%;
}
.b1{
    margin-bottom: 40px;
    /* margin-left: 10%; */
    /* margin-right: 20%; */
    padding: 20px;
    background-color: #7EBEA5;
    width: 40%;
}
.b2{
    /* margin-left: 10%; */
    /* margin-right: 10%; */
    padding: 20px;
    background-color: #7EBEA5;
    width: 40%;
}

/* FOOTER */
footer{
    width: 100%;
    background-color: #7EBEA5;
}
.f-block{
    /* height: 80px; */
    position: relative;
    display: flex;
    align-items: center;
    padding-top: 80px;
    margin-left: 40px;
    margin-right: 40px;
    padding-bottom: 80px;
    gap: 0 2%;
    font-size: 18px
}
.f-logo{
    transform: translateY(-50px);
    text-align: center;
    color: #000000;
    /* line-height: 150%; */
    font-weight: bold;
    font-size: 30px;
}
.f-logo2>p{
    font-size: 16px;
}
.f-info{
    transform: translateY(-10px);
    line-height: 300%;
    padding: 0 3% 0 3%;
    width: 30%;
}
.f-info>h1{
    color: #000000;
}
.f-info>h2{
    color: #000000;
}
.f-info>p{
    color: #000000;
    font-size: 12px;
    line-height: 200%;
}
.f-nav{
    position: absolute;
    /* color: #00000000; */
    right: 0;
    cursor: pointer;
    top: 80px;
    width: 50%;
}
.f-btn-list{
    display: flex;
    gap: 0 30px;
    padding-bottom: 10px;
    font-style: 18px;
    font-weight: bold;
    white-space: nowrap;
}
iframe{
    padding-top: 45px;
    width: 100%;
    height: 250px;
    padding-bottom: 80px;
}

/* 擬似要素 */
.f-btn-list a:hover{
    color: #fff;
}
/* .f-btn-list a::after{ */
    /* content: ''; */
    /* position: absolute; */
    /* left: 0; */
    /* width: 15%; */
    /* height: 2px; */
    /* background-color: #C5B78E; */
    /* visibility: hidden;  アンダーラインが位置する各リストの下端からの高さ headerの下幅に合わせてる？ */
    /* bottom: -1px;        hover前にアンダーラインを可視化しない */
    /* opacity: 0; */
/* } */
/* .f-btn-list a:hover::after{ */
    /* visibility: visible;  hover前にアンダーラインを可視化する */
    /* opacity: 1; */
    /* transition: .2s; */
/* } */
.f-gold-line{
    border: solid #fff 5px;
    background-color:  #fff;
}
.f-gold-line>p{
    font-size: 8px;
    text-align: center;
}


/* 会社概要.html */
/* 会社概要kv-ページ- company.html */
.c-kv{
    top: 120px;
    width: 100%;
    height: 78vh;
    background-image: url(../image/company.jpeg);
    background-repeat: no-repeat;
    background-size: cover;
    position: relative;
}
.c-kv-content{
    position: absolute;
    text-align: left;
    color: #fff;
    background-color: rgba(0, 0, 0, .57);
    padding: 20px;
    /* opacity: 0.5; */
    /* width: 1160px; */
    font-size: 60px; 
    font-weight: bold;
    line-height: 200%;
    top:50%;
    left:50%;
    transform: translate(-50%,20%);
}

/* 会社概要 -代表ページ- company.html */
.c-t{
    background-color: #fff;
    padding-top: 175px;
    padding-left: 114px;
    padding-right: 114px;
    padding-bottom: 200px;
}
.c-t-ttl{
    line-height: 200%;
}
.c-t-ttl>h1{
    font-size: 48px;
    font-weight: bold;
    position: relative;
}
.c-t-ttl>h1::after{
    content: '';
    position: absolute;
    bottom: -40px;
    left: 0;
    width: 14%;
    height: 1px;
    background-color: #333;
}
.c-t-contents1{
    padding-top: 80px;
    line-height: 200%;
    font-size: 20px;
    width: auto;
}
.c-t-contents1>h2{
    position: absolute;
    font-size: 40px;
    font-weight: bold;
    padding-top: 80px;
    right: 114px;
}

/* 会社概要 -会社概要ページ- company.html*/
.company{
    background-color: #E0DADA;
    padding: 80px 160px;
}
.c-ttl{
    display: grid;
    align-items: center;
    text-align: center;
    line-height: 150%;
    padding-bottom: 20px;
    font-size: 48px;
    font-weight: bold;
    position: relative;
    /* border-bottom: solid 2px; */
}
.c-ttl>small{
    font-size: 24px;
}
.c-ttl::after{
    content: '';
    position: absolute;
    bottom: 0;
    left: 43%;
    margin: 0 auto;
    width: 14%;
    height: 1px;
    background-color: #333;
}
.c--contents1{
    /* font-weight: bold; */
    margin-top: 40px;
}
/* .recruiting--contents1,.recruiting--contents2,.recruiting--contents3{
    position: relative;
} */
.c-text1{
    padding-top: 80px;
    padding-bottom: 80px;
    /* gap: 30px 0; */
}
.c-text1>div{
    display: flex;
    line-height: 300%;
    text-align: left;
    font-size: 20px;
    width: 100%;
    padding-top: 30px;
    border-bottom: 1px solid #333;
}
/* .c-text1>div::after{
    content: '';
    position: absolute;
    bottom: 0;
    margin: 0 auto;
    width: 100%;
    height: 1px;
    background-color: #333;
} */
.c-text1>div>p{
    width: 156px;
    height: 43px;
    padding-top: 5px;
}
.c-text1>div>span{
    /* position: absolute; */
    transform: translateX(180px);
    height: 100%;
    width: 800px;
}


/* service.html */
/* 事業内容 */
.service-kv{
    top: 120px;
    width: 100%;
    height: 78vh;
    background-image: url(../image/HOME-service.jpeg);
    background-repeat: no-repeat;
    background-size: cover;
    position: relative;
}
.service-kv-content{
    position: absolute;
    text-align: left;
    color: #fff;
    background-color: rgba(0, 0, 0, .57);
    padding: 20px;
    /* opacity: 0.5; */
    /* width: 1160px; */
    font-size: 60px; 
    font-weight: bold;
    line-height: 200%;
    top:50%;
    left:50%;
    transform: translate(-50%,-50%);
}
.service-container{
    background-color: #fff;
    padding-top: 80px;
}
.service-ttl{
    /* padding: 0 40%; */
    /* text-align: center; */
    /* width: 600px; */
    display: grid;
    place-items: center;
}
.service-t>h1>strong{
    font-size: 40px;
    font-weight: bold;
    line-height: 200%;
}
.service-ttl>small{
    /* width: 160px; */
    font-size: 20px;
    /* line-height: 200%; */
    padding-bottom: 20px;
    border-bottom: solid 2px;
}
.service-t{
    background-color: #fff;
    padding-top: 175px;
    padding-left: 114px;
    padding-right: 114px;
    /* padding-bottom: 200px; */
}
.service-t-ttl{
    line-height: 200%;
}
.service-t-ttl>h1{
    /* font-size: 48px; */
    font-weight: bold;
    position: relative;
}
.service-t-ttl>h1::after{
    content: '';
    position: absolute;
    bottom: -40px;
    left: 0;
    width: 14%;
    height: 1px;
    background-color: #333;
}
.service-t-contents1{
    padding-top: 80px;
    padding-bottom: 80px;
    line-height: 200%;
    font-size: 20px;
    width: auto;
}
.service-t-contents1>h2{
    font-size: 40px;
    font-weight: bold;
    padding-bottom: 80px;
    right: 114px;
}
/* 事業内容 - <主な役割>　以下の内容 */
.service-t2{
    background-color: #E0DADA;
    padding-top: 80px;
    padding-bottom: 80px;
}
.service-ttl2{
    line-height: 200%;
    display: grid;
    place-items: center;
    padding-bottom: 80px;
}
.service-ttl2>strong{
    font-size: 48px;
    font-weight: bold;
    position: relative;
}
.service-ttl2>strong::after{
    content: '';
    position: absolute;
    bottom: -40px;
    left: 10%;
    width: 80%;
    height: 1px;
    background-color: #333;
}
.service-t-contents2>p>img{
    width: 100%;
    height: 100%;
}
.service-t-contents3{
    padding-top: 40px;
    padding-left: 114px;
    padding-right: 114px;
}
.service-t-contents3>h3{
    padding-bottom: 40px;
    font-size: 40px;
}






/* contact.html */
/* お問合せ　kv-ページ- contact.html  */
.contact-kv{
    top: 120px;
    width: 100%;
    height: 78vh;
    background-image: url(../image/contact.jpeg);
    background-repeat: no-repeat;
    background-size: cover;
    position: relative;
}
.contact-kv-content{
    position: absolute;
    text-align: left;
    color: #fff;
    background-color: rgba(0, 0, 0, .57);
    padding: 20px;
    /* opacity: 0.5; */
    /* width: 1160px; */
    font-size: 60px; 
    font-weight: bold;
    line-height: 200%;
    top:50%;
    left:50%;
    transform: translate(-50%,-50%);
}
.contact-container{
    background-color: #fff;
    padding-top: 80px;
}
.contact-ttl{
    /* padding: 0 40%; */
    /* text-align: center; */
    /* width: 600px; */
    display: grid;
    place-items: center;
}
.contact-t>h1>strong{
    font-size: 40px;
    font-weight: bold;
    line-height: 200%;
}
.contact-ttl>small{
    /* width: 160px; */
    font-size: 20px;
    line-height: 200%;
    padding-bottom: 20px;
    border-bottom: solid 2px;
}
.contact-t{
    background-color: #fff;
    padding-top: 175px;
    padding-left: 114px;
    padding-right: 114px;
    /* padding-bottom: 200px; */
}
.contact-t-ttl{
    line-height: 200%;
}
.contact-t-ttl>h1{
    /* font-size: 48px; */
    font-weight: bold;
    position: relative;
}
.conact-t-ttl>h1::after{
    content: '';
    position: absolute;
    bottom: -40px;
    left: 0;
    width: 14%;
    height: 1px;
    background-color: #333;
}
.contact-t-contents1{
    padding-top: 80px;
    line-height: 200%;
    font-size: 20px;
    width: auto;
}
.contact-t-contents1>h2{
    position: absolute;
    font-size: 40px;
    font-weight: bold;
    padding-top: 80px;
    right: 114px;
}

/* お問合わせ内容項目 -お問合せページ- contact.html*/
.c--contents1{
    /* font-weight: bold; */
    margin-top: 40px;
}
/* .recruiting--contents1,.recruiting--contents2,.recruiting--contents3{
    position: relative;
} */
.c-text1{
    padding-top: 80px;
    padding-bottom: 80px;
    /* gap: 30px 0; */
}
.c-text1>div{
    display: flex;
    line-height: 300%;
    text-align: left;
    font-size: 20px;
    width: 100%;
    padding-top: 30px;
    border-bottom: 1px solid #333;
}
/* .c-text1>div::after{
    content: '';
    position: absolute;
    bottom: 0;
    margin: 0 auto;
    width: 100%;
    height: 1px;
    background-color: #333;
} */
.c-text1>div>p{
    width: 156px;
    height: 43px;
    padding-top: 5px;
}
.c-text1>div>span{
    /* position: absolute; */
    transform: translateX(180px);
    height: 100%;
    width: 800px;
}



/* スマホ */
/* スマホ　HOME */
@media screen and (max-width: 768px) {
    .sp{
        display: block;
        /* box-sizing: border-box; */
        overflow: auto;
      }
    .pc{
        display: none;
      }
    /* header>.gold-line{
        border: solid #C5B78E 8px;
        }
    .h-logo{
        gap: 0 15px;
    }
    .h-logo>img{
            width: 50px;
            height: 50px;
        } */
    .h-block{
            height: 40px;
            margin: 15px 40px;
        }
    .logo>h1{
            font-size: 28px;
        }
        .logo>p{
            font-size: 14px;
        }
    .s-h-btn {
            width: 50px;
            height: 50px;
            position: fixed;
            top: 35px;
            right: 0;
            margin-right: 20px;
            z-index: 10000;
     }
    .s-h-btn div{
            width: calc(100% - 20px);
            height: 100%;
            margin: 0 auto;
            position: relative;
     }
    .s-h-btn div span{
            position: absolute;
            width: 100%;
            height: 1px;
            right: 0;
            background-color: #fff;
            transition: .5s;
    }
    .s-h-btn div span:first-of-type{
            top: 0;
    }
    .s-h-btn div span:nth-of-type(2){
            top: 20%;
    }
    .s-h-btn div span:last-of-type{
            top: 40%;
    }
    .s-h-btn.active div span{
            top: 50%;
            background-color: #fff;
     }
    /* .s-h-btn.active div span:first-of-type{
            transform: translateY(-50%) rotate(45deg);
    }
    .s-h-btn.active div span:last-of-type{
            transform: translateY(-50%) rotate(-45deg);
            width: 100%;
    } */
      .active .s-h-btn div span:first-of-type, .active .s-h-btn div span:last-of-type{
        top: 20%;
      }
      .active .s-h-btn div span:first-of-type{
        transform: translate(-50%, -50%) rotate(135deg);
      }
      .active .s-h-btn div span:nth-of-type(2){
        opacity: 0;
      }
      .active .s-h-btn div span:last-of-type{
        transform: translate(-50%, -50%) rotate(-135deg);
      }

      .h-btn ul{
        flex-wrap: wrap;
      }
      .h-btn li{
        padding: 0;
        width: 100%;
        text-align: center;
      }
      .h-btn{
        font-size: 20px;
        position: fixed;
        top: 60px;
        right: 0;
        width: 210px;
        padding: 40px;
        background-color: rgba(0,0,0,0.5);
        height: 100vh;
        z-index: 250;
        color: #fff;
        transform: translateX(100vw);
        transition: .5s
      }
      .active .h-btn{
        transform: translateX(0);
      }
      .h-btn li{
        text-align: center;
      }
      .h-btn li:first-of-type{
        padding-bottom: 20px;
      }
      .h-btn li + li{
        padding: 20px 0;
      }
      /* スマホ　HOME KV */
    .kv {
        transform: translateY(-48px);
        background-position: center;
        width: 100%;
        height: 60vh;
    }
    .kv-content{
        width: 95%;
        font-size: 18px;
        font-weight: bold;
    }
     /* スマホ　HOME ABOUT */
     .about-container{
        padding: 135px 20px 40px 20px;
     }
     .about-ttl>h1{
        font-size: 24px;
    }
    .about-ttl>small{
        /* width: 160px; */
        font-size: 10px;
        width: 90px;
    }
    /* スマホ　HOME ABOUT - 事業内容 */
    .service{
        flex-wrap: wrap;
        margin-bottom: 0;
    }
    .service .service-sec{
        width: 100%;
    }
    .service>.service-sec{
        padding: 20px 15% 20px 15%;
    }
    .s-ttl{
        width: 150px;
        margin: 0 auto;
    }
    .s-ttl>strong{
        font-size: 28px;
    }
    .s-ttl>small{
        font-size: 16px;
    }
    .service-sec{
        gap: 15%;
    }
    .service-sec>h3{
        font-size: 18px;
        padding: 20px 0;
    }
    .service-sec>p{
        font-size: 9px;
        line-height: 200%;
        margin-bottom: 20px;
    }
    .service-sec>button{
        width: 100%;
        margin: 0 auto;
        text-align: center;
        padding: 20px;
    }
    .service>p img{
        width: 100%;
        transform: none;
    }
    /* スマホ　HOME ABOUT　事務所 */
    .company-home {
        flex-wrap: wrap;
        margin-bottom: 0;
        padding-bottom: 0;
        width: 100%;
    }
    .c-content{
        width: 100%;
        transform: none;
        padding: 20px 15% 20px 15%;
        height: 100%;
    }
    .c-content>h2{
        width: 150px;
        margin: 0 auto;
        text-align: center;
        line-height: 80%;
    }
    .c-content-ttl>strong{
        font-size: 28px;
    }
    .c-content-ttl>small{
        font-size: 16px;
        /* width: 150px;
        margin: 0 auto; */
    }
    .c-content>p{
        font-size: 8px;
        line-height: 200%;
    }
    .company-home>p{
        width: 100%;
    }
    .company-home>p img{
        width: 100%;
        height: 80%;
        transform: none;
    }
    .c-content>button {
        width: 100%;
        text-align: center;
        margin-left: 0;
    }
    /* スマホ　お問合せ */
    .contact-container{
        padding-top: 40px;
        margin-bottom: 40px;
    }
    .contact-container>h1>strong{
        font-size: 28px;
    }
    .contact-ttl>small{
        font-size: 12px;
        padding-bottom: 10px;
    }
    .contact{
        margin-top: 20px;
        font-size: 10px;
    }
    .form{
        margin-top: 40px;
        margin-bottom: 40px;
        margin: 0 auto;
        text-align: center;
    }
    .b1{
        padding: 5px;
        margin-bottom: 20px;
    }
    .b2{
        padding: 5px;
    }

    /* スマホ　FOOTER */
    .f-block{
        flex-wrap: wrap;
        position: relative;
        padding-top: 40px;
        margin-left: 20px;
        margin-right: 20px;
        padding-bottom: 40px;
        gap: 0 2%;
        font-size: 12px;
    }
    .f-logo{
        transform: none;
        text-align: center;
        margin: 0 auto;
        font-size: 28px;
        height: 490px;
    }
    .f-logo2>p{
        font-size: 16px;
    }
    .f-info{
        width: 100%;
        /* transform: translateY(-200px); */
        /* font-size: 14px; */
    }
    .f-nav{
        top: 150px;
        width: 100%;
        font-size: 13px;
    }
    .f-h-btn{
        width: 100%;
    }
    .f-btn-list{
        /* flex-direction: column; */
        gap: 0 20px;
        padding-bottom: 10px;
    }
    .f-btn-list>li{
        width: 20%;
    }
    iframe{
        padding-top: 40px;
        height: 400px;
    }
    .f-info>h1,h2{
        font-size: 20px;
    }
    .f-info>p{
        font-size: 18px;
    }

    /* スマホ　事業内容ページ　kv */
    .service-kv{
        transform: translateY(-40px);
        background-position: center;
        width: 100%;
        height: 60vh;
    }
    .service-kv-content{
            width: 180px;
            font-size: 32px;
            font-weight: bold;
            transform: translate(-50%,-40%);
    }
    .service-t {
        padding-top: 87px;
        padding-left: 30px;
        padding-right: 30px;
    }
    .service-t>h1>strong {
        font-size: 28px;
    }
    .service-ttl>small {
        font-size: 12px;
        padding-bottom: 10px;
        border-bottom: solid 1px;
    }
    .service-t-contents1>h2 {
        font-size: 24px;
        padding-bottom: 40px;
        right: 57px;
    }
    .service-t-contents1 {
        padding-top: 40px;
        padding-bottom: 40px;
        font-size: 12px;
        width: auto;
    }
    .service-t2 {
        padding-top: 40px;
        padding-bottom: 40px;
    }
    .service-ttl2 {
        padding-bottom: 40px;
    }
    .service-ttl2>strong {
        font-size: 28px;
    }
    .service-t-contents2{
        margin-top: 20px;
    }
    .service-t-contents3 {
        padding-top: 20px;
        padding-left: 30px;
        padding-right: 30px;
    }
    .service-t-contents3>h3 {
        padding-bottom: 20px;
        font-size: 20px;
    }
    .service-t-contents3>p{
        font-size: 12px;
    } 

    /* スマホ　会社概要ページ　kv */
    .c-kv{
            transform: translateY(-40px);
            background-position: center;
            width: 100%;
            height: 60vh;
    }
    .c-kv-content{
            width: 180px;
            font-size: 32px;
            font-weight: bold;
            transform: translate(-50%,-40%);
    }
    .c-t{
        padding: 135px 10px;
    }
    .c-t-ttl>h1{
        font-size: 28px;
    }
    .c-t-contents1{
        font-size: 10px;
    }
    .c-t-contents1>h2{
        font-size: 24px;
        padding: 40px 0 30px 0;
        right: 10px;
    } 
    .company{
        padding: 40px 10px;
    }
    .c-ttl{
        padding-bottom: 10px;
        font-size: 28px;
    } 
    .c-ttl>small{
        font-size: 12px;
    }
    .c--contents1{
        margin-top: 20px;
    }
    .c-text1>div{
        line-height: 200%;
        font-size: 10px;
        width: 100%;
        padding-top: 15px;
    }
    .c-text1>div>p{
        width: 170px;
        height: 43px;
        padding-top: 5px;
    }
    .c-text1>div>span{
        transform: translateX(0px);
        height: 100%;
        width: 100%;
    } 
    /* スマホ　お問合せページ　kv */
    .contact-kv{
        transform: translateY(-40px);
        background-position: center;
        width: 100%;
        height: 60vh;
     }
    .contact-kv-content{
                width: 180px;
                font-size: 32px;
                font-weight: bold;
                transform: translate(-50%,-40%);
    }
    .contact-t {
        padding-top: 87px;
        padding-left: 57px;
        padding-right: 57px;
        /* padding-bottom: 200px; */
    }
    .contact-t>h1>strong {
        font-size: 28px;
        line-height: 200%;
    }
    .contact-t-contents1 {
        padding-top: 40px;
        font-size: 12px;
        width: auto;
        }
}