@charset "UTF-8";
/* 説明を消すためのもの */
@media screen and (max-width: 1250px) {
    #hdr_description {
        display: none;
    }

    .nayami img {
        display: none;
    }
    .nayami_flex{
        padding: 0;
    } 
    .nayami_flex li{
        font-size: 20px;
    }

    .item02 {
        width: 100%;
        margin: 0 auto;
        padding-bottom: 30px;
   
    }


    .job_image {
        gap: 20px;
    }
}

@media screen and (max-width: 880px) {
.bold{
    font-size: 18px;
}
}


/* スマホ */
@media screen and (max-width: 800px) {
    body{
        font-size: clamp(14px,1.0rem,16px);
    }

    #hdr_tel {
        display: none;
    }
    .bnr{
        width: 96%;
    }

    /* 全体の設定 */
    img {
        max-width: 100%;
    }

    main {
        width: 98vw;
        margin: 0 auto;
    }

    .contact_form a {
        height: 100%;
        max-width: 40%;
    }

    #hdr_entry {
        max-width: 120px;
        height: 45px;
        padding: 0 10px;
        text-align: center;
    }

    #hdr_entry p {
        font-size: clamp(13px, 0.8rem, 16px);
        text-align: center;
    }

    #hdr_entry img {
        vertical-align: middle;
        width: 25px;
        height: auto;
        margin-right: 3px;
    }
    h1{
        font-size: 22px;
        padding: 23px 2px;
    }
    h2{
        margin: 20px 0;
        font-size: 22px;
    }
    
    h3{
        margin-bottom: 20px;
    }


    .txt{
        width: 100%;
    }
    .item01 {
        display: none;
    }


    .item02{
    display: block;
    }

    .item02 img{
        width: 100%;
        margin-bottom: 10px;
    }



    /* 中身の幅 */
    .inner {
        width: 90%;
        margin: 30px auto 50px;
        padding: 30px;

    }

    .inner2 {
        width: 90%;
        margin: 30px auto 50px;
        padding: 30px;
    }

    .inner3{
        width: 90%;
        margin: 30px auto 50px;
        padding: 30px;
    }


/* 会社案内のページ */
.company_concept{
    display: flex;
    flex-direction: column; /* 縦方向はそのまま */
}

.company_concept img{
 order: 1;
 width: 100%;
}
.company_concept p{
    order: 2;
}



/*選ばれる理由のページ*/
.choice{
    display: block;
}
.choice li{
    width: 100%;
    margin-bottom: 20px;
}
.choice li p{
    margin-top: 0;
}


/* 工事のページ */
.service_flex{
    display: block;
}
.service_flex li{
    width: 100%;
    margin-bottom: 30px;
}
.service_flex li h4{
    margin-bottom: 10px;
}


/* テーブルの表示設定 */
.ta1.ta1 td,
.ta1 th {
    display: block;
}

.ta1 th {
    width: 100%;
}

.ta1 td {
    width: 100%;
}

.ta2.ta2 td,
.ta2 th {
    display: block;
}

.ta2 th {
    width: 100%;
}

/* フォームの設定 */
th,
td {
    display: block;
}

.apply th {
    width: 100%;
}

.apply input {
    margin-bottom: 30px;
}

/*======================================
            フッター上部の設定
 ======================================= */
.footer_grid {
    display: inline-block;
    width: 100%;
    margin: 0 auto;
    text-align: center;
}

.contact_contents {
    padding: 20px;
}

.contact_contents:first-child {
    float: none;
    border-bottom: 3px solid #eee;
    border-right: none;
}

.contact_contents h2 {
    display: block;
}

footer img {
    max-width: 200px;
    margin: 0 auto;
}




/* ====================================================
                swiperの設定
======================================================= */
.swiper {
    position: relative;
    padding-bottom: 10px;
    /* ページネーション分のスペースを確保 */
    margin: 60px 0;
}

/* ページネーションの余白を調整 */
.swiper-horizontal>.swiper-pagination-bullets .swiper-pagination-bullet,
.swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet {
    margin: 0 4px;
}



/* confirmのページ編集 */
@media (max-width: 600px) {
    .center {
        flex-direction: column;  /* スマホでは縦並びにする */
        gap: 20px;               /* スマホでは間隔を少し狭くする */
        margin: 30px;
    }
}
}


@media screen and (max-width:1140px) {
    .person {
        display: none;
    }
}


/* PC表示（801px以上） */
@media screen and (min-width: 801px) {
    .sp {
        display: none;
    }

    .pc {
        display: inline;
        /* PCで改行するならblockでもOK */
    }
}

/* スマホ表示（800px以下） */
@media screen and (max-width: 800px) {
    .pc {
        display: none;
    }

    .sp {
        display: inline;
        /* 改行したいのでblockにする */
    }

    br.sp {
        display: block;
    }
}

@media screen and (max-width: 800px) {
    #hdr_logo img {
        width: 180px;
        height: auto;
    }
}