img{
    height: auto;
}

.page_ttl{
    margin-bottom: 0;
}

.equ_nav{
    padding: 40px 0;
}

.equ_nav ul{
    max-width: 1054px;
    width: 90%;
    margin: 0 auto;
    display: grid;
    grid-template-columns: repeat(9,1fr);
    gap: 10px;
}

.equ_nav ul li{
    max-height: 40px;
    position: relative;
}


.equ_nav ul li::after{
    background: #6c3c35;
    position: absolute;
    top: 0;
    left: 0;
    content: '';
    width: 100%;
    height: 100%;
    transform: scale(0,1);
    transform-origin: left top;
    transition: .2s cubic-bezier(0.45, 0, 0.55, 1);
    z-index: 0;
}

.equ_nav ul li:hover::after{
    transform: scale(1,1);
}

.equ_nav ul li a{
    height: 100%;
    display: block;
    padding: 5px;
    outline: 1px solid #6c3c35;
    border: 1px solid #6c3c35;
    outline-offset: 2px;
    position: relative;
    z-index: 1;
}

.equ_nav ul li a img{
    display: block;
    margin: 0 auto;
    max-width: none;
    width: auto;
    height: 100%;
}

.equ_nav ul li:hover a {
    opacity: 1;
}

.equ_nav ul li:hover a img {
    filter: brightness(0) invert(1);
}

.equ_nav ul li.active{
    pointer-events: none;
    background-color: #6c3c35;
}

.equ_nav ul li.active a img{
    filter: brightness(0) invert(1);
}






@media screen and (max-width: 730px) {

    .equ_nav{
        padding: 30px 0;
    }

    .equ_nav ul{
        grid-template-columns: repeat(4,1fr);
    }

    .equ_nav ul li {
        max-height: 45px;
    }

    .equ_nav ul li a {
        padding: 10px 5px;
    }

    .equ_nav ul li a img {
        height: 18px;
    }

    .equ_nav ul li:nth-child(1) {
        grid-column: 1/5;
    }

    .equ_nav ul li:nth-child(1) a img {
        height: 13px;
    }
}


.sec_ttl{
    margin: 0 auto 30px auto;
}

.sec_ttl img {
    display: block;
    margin: 0 auto;
    max-width: none;
    width: auto;
    max-height: 45px;
    height: 10vw;
}

.grid_wrap {
    max-width: 1054px;
    width: 90%;
    margin: 0 auto;
    display: grid;
    grid-template-columns: repeat(4,1fr);
    gap: 30px 3%;
}

.box_ttl{
    font-size: clamp(13px, 1.4vw, 15px);
    color: #6c3c35;
    font-weight: 500;
    margin: 10px 0;
}

.box_txt{
    font-size: clamp(11px, 1.4vw, 13px);
}

.raku_icon {
    position: absolute;
    max-width: 64px;
    width: 30%;
    top: -8%;
    right: 3%;
}


/* ------------キッチン------------ */

.sec_kit{
    margin-top: 20px;
}

.sec_kit .main_img{
    background-image: url(../images/equipment/kit_main.png);
}

.main_img{
    position: relative;
    grid-column: 1/3;
    grid-row: 1/3;
    background-size: cover;
    background-position: center;
}

.sec_kit .box01{
    grid-column: 3/5;
    display: grid;
    grid-template-columns: 55% 1fr;
    gap: 0 20px;
}

.sec_kit .box01 .image_wrap{
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    grid-row: 1/4;
}

.sec_kit .box01 .image_wrap .image{
    width: 48%;
}

.sec_kit .box01 .box_ttl{
    margin-top: 0;
}

.sec_kit .box02{
    grid-column: 3/5;
}

.sec_kit .box03, .sec_kit .box04{
    grid-row: 3/5;
}




@media screen and (max-width: 730px) {

    .sec_kit, .sec_bat, .sec_lav, .sec_idea, .sec_sto, .sec_com, .sec_secu, .sec_eco{
        margin-top: 5px;
    }

    .sec_ttl{
        margin-bottom: 30px;
    }

    .grid_wrap{
        grid-template-columns: repeat(2,1fr);
        gap: 30px 20px;
    }

    .main_img{
        grid-column: 1/3;
        grid-row: 1;
        height: 130vw;
        margin: 0 -5.5%;
    }

    .sec_kit .box01, .sec_kit .box02{
        grid-column: 1/3;
    }

    .sec_kit .box01{
        grid-template-columns: 80% 1fr;
    }

    .sec_kit .box01 .image_wrap{
        grid-row: 1;
    }

    .sec_kit .box01 .box_ttl{
        grid-column: 1/3;
        align-self: flex-end;
        margin-top: 10px;
    }

    .sec_kit .box01 .box_txt{
        grid-column: 1/3;
    }

    .sec_kit .box03, .sec_kit .box04{
        grid-row: 4;
    }

    .bottom_note{
        margin-top: 60px;
    }

    #common_footer{
        margin-top: 20px;
    }

}


/* ------------バスルーム------------ */



.sec_bat .main_img{
    background-image: url(../images/equipment/bat_main.png);
}


/* ------------洗面室・トイレ------------ */


.sec_lav .main_img{
    background-image: url(../images/equipment/lav_main.png);
}

.sec_lav .box04 .flex{
    display: flex;
    justify-content: space-between;
}

.sec_lav .box04 .flex .box_txt{
    width: 60%;
}

.sec_lav .box04 .flex .icon{
    width: 35%;
}

.sec_lav .box05{
    grid-column: 1/3;
}

.sec_lav .box05 .image_wrap{
    display: flex;
    justify-content: space-between;
}

.sec_lav .box05 .image_wrap .img01{
    width: 79%;
}

.sec_lav .box05 .image_wrap .img02{
    width: 18%;
}

.sec_lav .box05 .image_wrap .img02 .cap {
    bottom: -13%;
}

.sec_lav .box06{
    grid-column: 3/5;
}

.sec_lav .box06 .image_wrap{
    display: flex;
    justify-content: space-between;
}

.sec_lav .box06 .image_wrap .img01,
.sec_lav .box06 .image_wrap .img02{
    width: 48%;
}


.sec_lav .box09 .flex {
    display: flex;
    justify-content: space-between;
}

.sec_lav .box09 .flex .box_txt {
    width: 65%;
}

.sec_lav .box09 .flex .icon {
    width: 30%;
}


.sec_toi{
    margin-top: 80px;
}

.sec_toi .box01 {
    grid-column: 1/3;
    grid-row: 1/3;
}

.sec_toi .box02 .flex {
    display: flex;
    justify-content: space-between;
}

.sec_toi .box02 .flex .box_txt {
    width: 63%;
}

.sec_toi .box02 .flex .icon {
    width: 35%;
}

@media screen and (max-width: 730px){

    .sec_lav .main_img{
        height: 150vw;
    }

    .sec_lav .box09 .flex .box_txt{
        width: 60%;
    }

    .sec_lav .box09 .flex .icon{
        width: 35%;
    }

    .sec_lav .box05 .image_wrap .img02 .cap{
        width: 65px;
        bottom: -10px;
        right: 0;
    }

    .sec_lav .box06{
        grid-column: 1/3;
    }

    .sec_lav .box06 .image_wrap .img02 .cap{
        bottom: -3px;
    }

    

    .sec_lav .box09 .flex .box_txt{
        width: 60%;
    }

    .sec_lav .box09 .flex .icon{
        width: 35%;
    }

    .sec_toi{
        margin-top: 60px;
    }
}


/* ------------アイデア------------ */


.sec_idea .box01{
    grid-column: 1/3;
}

.sec_idea .box01 .image_wrap{
    display: flex;
    justify-content: space-between;
}

.sec_idea .box01 .image_wrap .img01{
    width: 48%;
}

.sec_idea .box01 .image_wrap .img02{
    width: 47%;
}

.sec_idea .box01 .flex{
    display: flex;
    justify-content: space-between;
}

.sec_idea .box01 .flex .txt_wrap{
    width: 78%;
}

.sec_idea .box01 .flex .icon{
    width: 20%;
    margin-top: 10px;
}

.sec_idea .box02{
    grid-column: 3/5;
}

.sec_idea .box03{
    grid-column: 1/3;
}

.sec_idea .box03 .image_wrap{
    display: flex;
    justify-content: space-between;
}

.sec_idea .box03 .image_wrap .img01{
    width: 70%;
}

.sec_idea .box03 .image_wrap .img02{
    width: 21%;
}

.sec_idea .box03 .image_wrap .img02 .cap{
    bottom: -20px;
}

.sec_idea .box06{
    grid-column: 1/3;
    grid-row: 3/5;
}

.sec_idea .box06-02{
    grid-column: 3/5;
}

.sec_idea .box06-02 .flex{
    display: flex;
    justify-content: space-between;
}

.sec_idea .box06-02 .flex .box_txt{
    width: 80%;
}

.sec_idea .box06-02 .flex .icon{
    width: 14%;
}

.sec_idea .box07{
    display: flex;
    grid-column: 1/5;
    justify-content: space-between;
}

.sec_idea .box07 .con01{
    width: 25%;
}

.sec_idea .box07 .con02{
    width: 73%;
}

.sec_idea .box08{
    grid-column: 1/3;
    grid-row: 6/8;
}

.sec_idea .box08-02 {
    grid-row: 6/8;
}

.sec_idea .box08-03 {
    grid-row: 6/8;
    margin-top: 8%;
}

.sec_idea .box08_icon {
    margin-top: 20px;
}


@media screen and (max-width: 730px){
    .sec_idea .box02,
    .sec_idea .box06-02,
    .sec_idea .box07{
        grid-column: 1/3;
    }

    .sec_idea .box06,
    .sec_idea .box08 {
        grid-row: auto;
    }

    .sec_idea .box07{
        flex-direction: column;
        gap: 5px 0;
    }

    .sec_idea .box07 .con01,
    .sec_idea .box07 .con02{
        width: 100%;
    }

    .sec_idea .box08-02{
        width: 40%;
        grid-column: 1/3;
        grid-row: 10/12;
    }

    .sec_idea .box08-03 {
        width: 55%;
        margin: 3% 0 0 auto;
        grid-column: 1/3;
        grid-row: 10/12;
    }
}


/* ------------収納------------ */


.sec_sto .box01 {
    grid-column: 1/3;
}

.sec_sto .box01 .raku_icon {
    top: -3%;
}

.sec_sto .box02 {
    grid-column: 3/5;
}

.sec_sto .box01 .image_wrap,
.sec_sto .box02 .image_wrap {
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
}

.sec_sto .box01 .image_wrap .img01,
.sec_sto .box02 .image_wrap .img01 {
    width: 38%;
}

.sec_sto .box01 .image_wrap .img02,
.sec_sto .box02 .image_wrap .img02 {
    width: 58%;
}

.sec_sto .box01 .flex {
    display: flex;
    justify-content: space-between;
}

.sec_sto .box01 .txt_wrap {
    width: 80%;
}

.sec_sto .box01 .icon {
    width: 17%;
    margin-top: 12px;
}

.sec_sto .box02 .flex {
    display: flex;
    justify-content: space-between;
}

.sec_sto .box02 .flex .txt_wrap {
    width: 72%;
}

.sec_sto .box02 .flex .image {
    width: 25%;
    margin-top: 8px;
}

.sec_sto .box_lead {
    background-color: #6c3c35;
    color: #fff;
    text-align: center;
    padding: 8px;
    font-size: clamp(16px, 2vw, 18px);
    margin-bottom: 20px;
}


@media screen and (max-width: 730px){


    .sec_sto .box01 .icon{
        width: 20%;
    }

    .sec_sto .box01 .txt_wrap{
        width: 78%;
    }

    .sec_sto .box02 {
        grid-column: 1/3;
    }

    .sec_sto .box02 .flex .txt_wrap {
        width: 67%;
    }

    .sec_sto .box02 .flex .image {
        width: 30%;
        margin-top: 10px;
    }
}


/* ------------快適------------ */


.sec_com .beige_bg{
    background-color: #faf8f2;
    padding: 65px 0;
    margin-top: 65px;
}

.sec_com .beige_bg .lead{
    max-width: 1054px;
    width: 90%;
    font-size: clamp(16px, 2vw, 24px);
    margin: 0 auto 30px;
    color: #6c3c35;
}


@media screen and (max-width: 730px){

    .sec_com .beige_bg{
        padding: 40px 0;
        margin-top: 40px;
    }

    .sec_com .beige_bg .lead{
        text-align: center;
        width: 100%;
        margin-bottom: 30px;
    }
}


/* ------------セキュリティ------------ */


.sec_secu .box01{
    grid-column: 1/3;
    grid-row: 1/4;
}

.sec_secu .box02{
    grid-column: 3/5;
}

.sec_secu .box03{
    grid-column: 3/5;
    display: flex;
    justify-content: space-between;
}

.sec_secu .box03 .image,
.sec_secu .box03 .txt_wrap{
    width: 48%;
}

.sec_secu .lead{
    font-size: clamp(18px, 2vw, 23px);
    color: #6c3c35;
    max-width: 1054px;
    width: 90%;
    margin: 80px auto 30px;
}

.sec_secu .box04{
    grid-column: 1/3;
    grid-row: 1/3;
}

.sec_secu .box_lead{
    background-color: #6c3c35;
    color: #fff;
    text-align: center;
    padding: 10px;
    margin-bottom: 10px;
    font-size: clamp(14px, 2vw, 18px);
}

.sec_secu .box05{
    grid-column: 3/5;
}

.sec_secu .box05 .image_wrap{
    display: flex;
    justify-content: space-between;
    margin-bottom: 5px;
}

.sec_secu .box05 .image_wrap .img01{
    width: 50%;
}

.sec_secu .box05 .image_wrap .img02{
    width: 45%;
}

.sec_secu .box05 .box_ttl{
    margin: 8px 0 0;
}

.sec_secu .box05 .note{
    margin-top: 0;
}

.sec_secu .box06{
    grid-column: 3/5;
}

.sec_secu .box06 .image_wrap{
    display: flex;
    justify-content: space-between;
}

.sec_secu .box06 .image_wrap .image{
    width: 40%;
}

.sec_secu .box06 .image_wrap .txt_wrap {
    width: 55%;
}

.sec_secu .box06 .image_wrap .txt_wrap .box_ttl {
    margin-top: 0;
}

.sec_secu .box06 .image_wrap .txt_wrap .icon {
    width: 30%;
    margin-top: 10px;
}


@media screen and (max-width: 730px){

    .sec_secu .box02,
    .sec_secu .box03,
    .sec_secu .box05,
    .sec_secu .box06{
        grid-column: 1/3;
    }
    
    .sec_secu .lead{
        text-align: center;
        margin: 50px auto 20px;
    }

}


/* ------------エコ------------ */

.sec_eco .sec_ttl {
    max-width: 70px;
    width: 15%;
}

.sec_eco .grid_wrap {
    grid-template-columns: repeat(3,1fr);
}

.sec_eco .box_lead {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    min-height: calc(2.7em + 16px);
    background-color: #807071;
    color: #fff;
    margin-top: 10px;
    font-size: clamp(16px,2vw,20px);
}

.sec_eco .box_lead .small {
    font-size: clamp(12px,1.3vw,15px);
}

.sec_eco .box_lead .kome {
    vertical-align: super;
    font-size: clamp(11px,1.2vw,13px);
}

.sec_eco .bottom_txt {
    max-width: 1054px;
    margin: 80px auto 0;
    background-color: #6c3c35;
    color: #fff;
    text-align: center;
    font-size: clamp(25px,3vw,30px);
    padding: 5px 0;
}

.sec_eco .bottom_note {
    margin-top: 25px;
}


@media screen and (max-width: 730px) {
    .sec_eco .grid_wrap {
        grid-template-columns: repeat(1,1fr);
    }

    .sec_eco .box_lead {
        min-height: calc(2.5em + 12px);
    }
}