@charset "utf-8";
    .clearfix {
        content: "";
        display: block;
        clear: both;
    }

    .sp {
        display: none;
    }

    p {
        font-size: 16px;
        line-height: 28px;
        color: #1c1c1c;
        font-family: 游ゴシック体, Yu Gothic, YuGothic, ヒラギノ角ゴシック Pro, Hiragino Kaku Gothic Pro, メイリオ, Meiryo, Osaka, ＭＳＰゴシック, MS PGothic, sans-serif;
    }

    a {
        text-decoration: none;
        color: #fff;
        -webkit-transition: all 0.3s ease;
        -moz-transition: all 0.3s ease;
        -o-transition: all 0.3s ease;
        transition: all 0.3s ease;
    }

    a:hover {
        opacity: 0.8;
    }

    figure,
    .qa {
        display: block;
        width: 100%;
    }

    figure img {
        display: block;
        margin: 0 auto;
    }

    .century-gothic {
        font-family: century-gothic, sans-serif;
        font-weight: 700;
        font-style: normal;
    }
    .container {
        max-width: 1080px;
        margin: 0 auto;
    }
    img{
        max-width: 100%;
    }
    /*===============
header
=================*/
    header {
        display: block;
        width: 100%;
        background: #fff;
        box-shadow: 0px 9px 3px -3px rgba(0, 0, 0, 0.2);
        -webkit-box-shadow: 0px 9px 3px -3px rgba(0, 0, 0, 0.2);
        -moz-box-shadow: 0px 9px 3px -3px rgba(0, 0, 0, 0.2);
    }
    .header-wrap{
        display: flex;
        justify-content: space-between;
        align-items: center;
    }
    header div {
        width: 1080px;
        margin: 0 auto;
        padding: 10px 0;
        box-sizing: border-box;
    }
    .header-wrap h1 {
        width: 45%;
    }
    .header-wrap ul {
        width: 53%;
        display: flex;
        align-items: center;
        justify-content: space-evenly;
    }
    .header-wrap ul li:first-child{
        width: 60%;
        position: relative;
    }
    .header-wrap ul li:first-child {
        width: 60%;
        position: relative;
    }
    .header-wrap ul li:first-child p{
        position: absolute;
        top: 50%;
        left: 50%;
        width: max-content;
        transform: translate(-50%, -50%);
        -webkit-transform: translate(-50%, -50%);
        -ms-transform: translate(-50%, -50%);
        color:#fff;
    }
    .header-wrap ul li:first-child p span{
        display: block;
        font-size: 28px;
        font-weight: 700;
        text-align: center;
    }
    .header-wrap ul li:nth-child(2){
        width: 35%;
        margin: 0 0 0 3%;
    }

@media screen and (min-width:768px) and ( max-width:1024px) {
    .header-wrap {
        width: 90%;
    }

}
@media screen and (max-width: 767px) {
    .header-wrap {
        width: 100%;
        padding: 10px 0 5px;
    }
    .header-wrap ul {
        display: none;
    }
    .header-wrap h1 {
        width: 85%;
    }
}




    /*===============
#topImg
=================*/

    #topImg {
        background: url(../images/bg_topImg.jpg) no-repeat;
        background-position: top center;
        background-size: cover;
        padding: 2vw 0;
    }
@media screen and (min-width:768px) and ( max-width:1024px) {

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

}
/*===============
footer
=================*/

    footer {
        background: #679652;
        padding: 10px 0 0;
        box-sizing: border-box;
    }

    footer p {
        font-size: 15px;
        font-weight: 900;
        line-height: 1;
        text-align: center;
        color: #fff;
        padding: 10px 0 20px;
        box-sizing: border-box;
    }

    /*===============
.form01 .form02
=================*/

    .form01 {
        background: url(../images/bg_form01.png) no-repeat;
        background-position: top center;
        padding: 30px 0 60px;
        background-size: cover;
    }

    .form02 {
        background: url(../images/bg_form02.png) no-repeat;
        background-position: bottom center;
        background-size: cover;
        padding: 20px 0 65px;
    }

    .form01 div,
    .form02 div {
        display: block;
        width: 1080px;
        margin: 0 auto;
        position: relative;
    }


    .form01 .tel {
        position: absolute;
        bottom: 80px;
        left: 90px;
    }

    .form01 .mail {
        position: absolute;
        bottom: 80px;
        right: 90px;
    }

    .form02 .tel {
        position: absolute;
        bottom: 90px;
        left: 90px;
    }

    .form02 .mail {
        position: absolute;
        bottom: 90px;
        right: 90px;
    }


section.rv-wrap {
    background: #679652;
    padding: 2vw 0;
}
.rv-container{
    max-width: 85%;
    margin: 0 auto;
}
.rv-inner {
    display: flex;
    align-items: center;
    justify-content: space-between;
}
.rv-txt {
    width: 25%;
}
.rv-txt p {
    position: relative;
    font-size: 1.45vw;
    font-weight: bold;
    line-height: 1.5;
    color: #fff;
    text-align: center;
    text-shadow: 1px 1px 3px rgb(0 0 0 / 10%);
}
.rv-txt p span{
    font-size: 2vw;
    color: #ffe500;
}
.rv-txt p:before{
    border-top: 3px solid white;
    content: "";
    position: absolute;
    top: 50%;
    left: -60px;
    width: 90px;
    transform: rotate(65deg);
}
.rv-txt p:after {
    border-top: 3px solid white;
    content: "";
    position: absolute;
    top: 50%;
    right: -60px;
    width: 90px;
    transform: rotate(115deg);
}
.rv-img {
    width: 70%;
    display: flex;
    justify-content: space-between;
}
.rv-img img{
    max-width: 100%;
    width: 24%;
}
.form01 div.creca {
    display: flex;
    flex-wrap: wrap;
    max-width: 940px;
    background: #fff;
    padding: 20px;
    justify-content: space-between;
    align-items: center;
    border: 5px solid #ff8d01;
    border-radius: 15px;
}
.form01 div.creca-img01 {
    width: 20%;
}
.form01 div.creca-txt {
    width: 55%;
}
.form01 div.creca-txt h2{
    font-size: 30px;
    margin: 0 auto 10px;
    color: #679652;
}
.form01 div.creca-txt p {
    font-size: 16px;
    font-weight: bold;
}
.form01 div.creca-img02 {
    width: 20%;
}
.jisya{
    position: relative;
    padding: 0px 0;
    background: #f9f9f9;
}
.container.jisya-container {
    background: #fff;
    padding: 60px;
    width: 75%;
}
.jisya h2{
    display: block;
    position: relative;
    text-align: center;
    font-size: 32px;
    line-height: 1.4;
    color: #222;
    font-weight: bold;
}
.jisya h2 span{
    font-size: 1.4em;
    color: #ff7300;
}
.jisya h2:before{
    border-top: 5px solid #679652;
    content: "";
    position: absolute;
    top: 50%;
    left: 50px;
    width: 100px;
    transform: rotate(65deg);
}
.jisya h2:after {
    border-top: 5px solid #679652;
    content: "";
    position: absolute;
    top: 50%;
    right: 50px;
    width: 100px;
    transform: rotate(115deg);
}
.jisya img.direct01{
    display: block;
    margin: 40px auto;
}
.jisya-p01{

}
.jisya-p01 p{
    font-size: 17px;
    margin: 20px auto;
    line-height: 1.9;
}
.jisya-p01 p span{
    background: linear-gradient(transparent 65%, #fff000 65%);
    font-weight: 600;
}
.jisya-p02 {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}

.jisya-txt {
    width: 55%;
}
.jisya-txt p{
    font-size: 17px;
    line-height: 1.9;
    margin: 0 auto 20px;
}
.jisya-txt p span{
    background: linear-gradient(transparent 65%, #fff000 65%);
    font-weight: 600;
}
.jisya-p02 img {
    width: 43%;
    height: 100%;
}
.h3-wrap {
    display: flex;
    align-items: center;
    justify-content: center;
}
.h3-wrap img{

}
.h3-wrap h3 {
    font-size: 24px;
    color: #222;
    line-height: 1.6;
    font-weight: 900;
}
.h3-wrap h3 span{
    font-size: 1.4em;
    color: #ff7300;
}
br.pc-none{
    display: none;
}
@media screen and (min-width:768px) and ( max-width:1024px) {

}
@media screen and (max-width: 767px) {
    section.rv-wrap {
        padding: 30px 0;
    }
    .rv-inner {
        flex-wrap: wrap;
        justify-content: center;
    }
    .rv-container {
        max-width: 95%;
        margin: 0 auto;
    }
    .rv-txt p {
        font-size: 15px;
    }
    .rv-txt p span{
        font-size: 18px;
    }
    .rv-img {
        width: 100%;
    }
    .rv-txt {
        width: 70%;
        margin: 0 auto 10px;
    }
    .rv-txt p:before {
        border-top: 2px solid white;
        left: -30px;
        width: 60px;
    }
    .rv-txt p:after {
        border-top: 2px solid white;
        right: -30px;
        width: 60px;
    }
    .jisya {
        background: #fff;
    }
    .container.jisya-container {
        background: none;
        padding: 40px 0px 35px;
        width: 100%;
    }
    .jisya-p01 {
        display: block;
        width: 90%;
        margin: 0 auto;
    }
    .jisya-p01 p,.jisya-txt p {
        font-size: 15px;
        margin: 15px auto;
        line-height: 1.9;
    }
    .jisya-txt {
        width: 100%;
    }
    .jisya-p02 img {
        width: 70%;
        height: 100%;
        margin: 0 auto;
    }
    .jisya-p02 {
        flex-direction: column-reverse;
        width: 90%;
        margin: 0 auto;
    }
    .jisya img.direct01 {
        margin: 30px auto 20px;
        width: 90%;
    }
    br.pc-none {
        display: block;
    }
    .jisya h2 span {
        font-size: 1.3em;
        color: #ff7300;
    }
    .jisya h2 {
        font-size: 20px;
    }
    .h3-wrap {
        display: flex;
        flex-wrap: wrap;
        width: 90%;
        margin: 0 auto;
    }
    .h3-wrap h3 {
        font-size: 18px;
    }
    .h3-wrap h3 span {
        font-size: 1.3em;
        color: #ff7300;
    }
    .jisya h2:before {
        border-top: 3px solid #679652;
        left: 0px;
        width: 70px;
        transform: rotate(70deg);
    }
    .jisya h2:after {
        border-top: 3px solid #679652;
        top: 50%;
        right: 0px;
        width: 70px;
        transform: rotate(110deg);
    }
    .h3-wrap img {
        margin: 0px auto 15px;
    }
}
@media screen and (min-width:768px) and ( max-width:1024px) {

}
@media screen and (max-width: 767px) {
    .form01 {
        background: url(../images/bg_form01.png) no-repeat;
        background-position: top left;
        padding: 30px 0 45px;
    }
    .form01 div.creca {
        width: 87%;
        max-width: 100%;
        padding: 15px;
        justify-content: space-between;
        align-items: center;
        border: 2px solid #ff8d01;
        border-radius: 8px;
        margin: -20px auto 0px;
    }
    .form01 div.creca div.creca-img01{
        width: 40%;
        order: 1;
    }
    .form01 div.creca div.creca-img02{
        width: 40%;
    }
    .form01 div.creca div.creca-txt {
        width: 100%;
        margin: 0 auto 10px;
    }
    .form01 div.creca-txt h2 {
        font-size: 20px;
        margin: 0 auto 5px;
        color: #679652;
        text-align: center;
    }
    .form01 div.creca-txt p {
        font-size: 14px;
        line-height: 1.5;
        font-weight: bold;
    }
}
    /*===============
選ばれる3つの理由【2/3 btn配置】
=================*/

    main figure:nth-of-type(6) div,
    main figure:nth-of-type(7) div {
        display: block;
        width: 1080px;
        margin: 0 auto;
        position: relative;
    }

    main figure:nth-of-type(6) div p {
        position: absolute;
        top: 200px;
        left: 660px;
    }

    main figure:nth-of-type(7) div p {
        position: absolute;
        bottom: 50px;
        left: 470px;
    }

    /*===============
リフォームの流れ【1 btn配置】
=================*/

    main figure:nth-of-type(9) div {
        display: block;
        width: 1080px;
        margin: 0 auto;
        position: relative;
    }


    main figure:nth-of-type(9) .tel {
        position: absolute;
        top: 355px;
        left: 540px;
    }

    main figure:nth-of-type(9) .mail {
        position: absolute;
        top: 355px;
        left: 785px;
    }
    .modal_wrap{
        display: none;
    }
    /*===============
対応エリア[#aria]
=================*/

    #aria {
        display: block;
        width: 1080px;
        margin: 0 auto;
        padding: 60px 0 40px;
        box-sizing: border-box;
    }

    #aria h3 {
        text-align: center;
        margin: 0 0 50px;
    }

     #aria .toggleBtn {
        position: relative;
        display: flex;
        align-items: center;
        width: 780px;
        height: 75px;
        background: #E29696;
        border-radius: 35px;
        margin: 0 auto 30px;
        padding: 10px 0;
        box-sizing: border-box;
        cursor: pointer;
    }

    #aria .toggleBtn:nth-of-type(3) {
        background: #FFBA5F;
    }

    #aria .toggleBtn:nth-of-type(5) {
        background: #E9EC85;
    }

    #aria .toggleBtn:nth-of-type(7) {
        background: #99CD86;
    }

	#aria .toggleBtn:nth-of-type(9) {
        background: #82A9DA;
    }
	
	#aria .toggleBtn:nth-of-type(11) {
        background: #628DB7;
    }

    #aria .toggleBtn:nth-of-type(13) {
        background: #998BAF;
    }

    #aria .toggleBtn:nth-of-type(15) {
        background: #EF8EB2;
    }

    #aria .toggleBtn:last-of-type {
        margin: 0 auto 0;
    }

    #aria .toggleBtn h4 {
        text-align: center;
        font-weight: bold;
        font-size: 30px;
        line-height: 1em;
        color: #fff;
        padding: 0 0 0 2em;
        text-shadow: 1px 1px 1px rgb(0 0 0 / 15%);
    }

    .toggleAria {
        display: none;
        /*display: block;*/
        width: 780px;
        margin: 0 auto 40px;
    }

    #aria .toggleAria p {
        font-weight: bold;
    }

    #aria .toggleAria p .green {
        color: #679652;
        font-size: 24px;
        line-height: 28px;
        display: block;
        border-bottom: 1px solid #ccc;
        padding: 0 0 10px;
        margin: 0 auto 10px;
    }

    #aria .toggleAria p .maru {
        color: #ff8d00;
        padding: 0 3px 0 10px;
        font-size: 12px;
    }

    #aria .toggleAria p label {
        display: flex;
        float: left;
    }
    figure.flow01 {
        position: relative;
        padding: 20px 0 0;
    }
    figure.flow02 {
        position: relative;
        padding: 0 0 25px;
    }
    figure.cando {
        position: relative;
        background: #fff;
        padding: 10px 0 25px;
    }
    /* +-デザイン */

    .accordion_icon,
    .accordion_icon span {
        display: inline-block;
        transition: all .4s;
        box-sizing: border-box;
    }

    .accordion_icon {
        position: absolute;
        top: 30px;
        right: 30px;
        width: 30px;
        height: 30px;
        /* float: right; */
        margin: 25px 20px 0 0;
    }

    .area_accordion_icon {
        top: 11px;
    }
    
    .accordion_icon span {
        position: absolute;
        left: 6px;
        width: 30px;
        height: 3px;
        background-color: #fff;
    }

    .accordion_icon span:nth-of-type(1) {
        top: 0px;
        transform: rotate(0deg);
        -webkit-transform: rotate(0deg);
        -moz-transform: rotate(0deg);
        -ms-transform: rotate(0deg);
        -o-transform: rotate(0deg);
    }

    .accordion_icon span:nth-of-type(2) {
        top: 0px;
        transform: rotate(90deg);
        -webkit-transform: rotate(90deg);
        -moz-transform: rotate(90deg);
        -ms-transform: rotate(90deg);
        -o-transform: rotate(90deg);
    }

    /*＋、－切り替え*/

    .accordion_icon.active span:nth-of-type(1) {
        display: none;
    }

    .accordion_icon.active span:nth-of-type(2) {
        top: 0px;
        transform: rotate(180deg);
        -webkit-transform: rotate(180deg);
        -moz-transform: rotate(180deg);
        -ms-transform: rotate(180deg);
        -o-transform: rotate(180deg);
    }

    /*===============
よくある質問[#qa]
=================*/

    #qa div {
        display: block;
        width: 1080px;
        margin: 0 auto;
        padding: 70px 0 50px;
        box-sizing: border-box;
    }

    #qa h3 {
        text-align: center;
        margin: 0 0 50px;
    }

    #qa section {
        display: block;
        width: 980px;
        height: auto;
        background: #fff;
        border-radius: 10px;
        margin: 0 auto 20px;
        padding: 25px 15px 14px;
        box-sizing: border-box;
    }

    #qa .toggleBtn {
        width: 100%;
        cursor: pointer;
        padding: 0;
        margin-top: -8px;
        position: relative;
    }

    #qa .toggleBtn:last-of-type {
        margin: 0 auto 0;
    }

    #qa .toggleBtn h4 {
        font-weight: bold;
        font-size: 20px;
        line-height: 1.5;
        color: #222;
    }

    #qa .toggleBtn h4 .century-gothic {
        font-size: 28px;
        line-height: 1;
        padding-right: 0.5em;
        box-sizing: border-box;
        color: #679652;
    }

    #qa .toggleAria {
        display: none;
        width: 100%;
        margin: 0;
        padding: 5px 0 0px;
        border-top: 1px solid #679652;
    }

    #qa .toggleAria div {
        width: 95%;
        padding: 5px 0 0;
        float: right;
    }

    #qa .toggleAria div p {
        font-weight: bold;
        line-height: 1.9;
    }

    #qa .toggleAria .century-gothic {
        display: inline-block;
        color: #d21709;
        font-size: 27px;
        line-height: 36px;
        padding-right: 0.5em;
        box-sizing: border-box;
        float: left;
    }

    #qa .toggleAria div ul {
        width: 510px;
        margin: 15px auto 0;
    }

    #qa .toggleAria div ul li {
        float: left;
    }

    #qa .toggleAria div ul li.mail {
        margin-left: 50px;
    }


    /* +-デザイン */

    #qa .accordion_icon {
        margin: -20px 0 -3px 0;
    }

    #qa .accordion_icon span {
        position: absolute;
        left: 0px;
        top: 3px;
        width: 24px;
        height: 3px;
        background-color: #679652;
    }

    /*===============
お問合せ[#form]
=================*/

    #form {
        display: block;
        width: 980px;
        margin: 0 auto;
        padding: 50px 0;
        box-sizing: border-box;
    }

    #form h3 {
        text-align: center;
        margin: 0 0 40px;
    }

    #form p {
        font-weight: bold;
        margin: 0 0 30px;
    }

    #form form {
        display: block;
        width: 100%;
    }

    #form form tr {
        display: block;
        width: 980px;
        border-bottom: 1px dashed #6bc632;
        border-left: none;
        border-right: none;
        box-sizing: border-box;
    }

    #form form tr:first-of-type {
        border: 1px dashed #6bc632;
        border-left: none;
        border-right: none;
        box-sizing: border-box;
    }

    #form form tr th {
        width: 300px;
        height: 60px;
        background: #c9db4c;
        font-size: 20px;
        line-height: 30px;
        color: #fff;
        font-weight: bold;
        padding: 15px 20px;
        box-sizing: border-box;
        vertical-align: top;
    }

    #form form th.hisshu:after {
        content: "必須";
        background: #d21709;
        border-radius: 5px;
        color: #fff;
        font-weight: bold;
        font-size: 14px;
        line-height: 1em;
        padding: 4px;
        box-sizing: border-box;
        float: right;
        vertical-align: middle;
        margin: 4px 0 0 0;
    }

    #form form tr td {
        width: 680px;
        padding: 10px 20px;
        box-sizing: border-box;
    }

    #form form tr td input {
        width: 100%;
        height: 40px;
        border-radius: 10px;
        border: 1px solid #e0e0e0;
        padding: 5px;
        box-sizing: border-box;
    }

    #form form tr td textarea {
        width: 100%;
        height: 280px;
        border-radius: 10px;
        border: 1px solid #e0e0e0;
    }


    ::placeholder {
        color: #b5b5b5;
        font-size: 16px;
        font-weight: bold;
        font-family: 游ゴシック体, Yu Gothic, YuGothic, ヒラギノ角ゴシック Pro, Hiragino Kaku Gothic Pro, メイリオ, Meiryo, Osaka, ＭＳＰゴシック, MS PGothic, sans-serif;
    }

    #form form p {
        text-align: center;
        margin: 30px auto;
        line-height: 1em;
    }


    /*===============
background
=================*/

    main figure:nth-of-type(1) {
        background: url(../images/bg_01.png) no-repeat;
        background-position: bottom center;
    }

    figure:nth-of-type(2) {
        background: url(../images/bg_02.png) no-repeat;
        background-position: bottom center;
    }

    /* 薄緑 */
    figure:nth-of-type(6),
    #qa {
        background: #f9f9f3;
    }

    figure#work {
        background: #e7f2fd;
        padding: 40px 0 30px;
    }
    figure:nth-of-type(15) {
        background: url(../images/bg_14.png) no-repeat;
        background-position: bottom center;
        padding: 10px 0 20px;
    }

    figure:nth-of-type(16) {
        background: url(../images/bg_14.png) no-repeat;
        background-position: bottom center;
        
    }


#card {
    text-align: center;
    padding: 3%;
	}

.fixbtn{
    display: none;
}
    /*スマホ
------------------------------*/

    @media screen and (max-width: 767px) {
        body {
            overflow-x: hidden;
        }
        .pc {
            display: none;
        }
        .sp {
            display: block;
        }


        p {
            font-size: 14px;
            line-height: 24px;
            color: #1c1c1c;
            font-family: 游ゴシック体, Yu Gothic, YuGothic, ヒラギノ角ゴシック Pro, Hiragino Kaku Gothic Pro, メイリオ, Meiryo, Osaka, ＭＳＰゴシック, MS PGothic, sans-serif;
        }

        a:hover {
            opacity: 1;
        }

        /*===============
header
=================*/
        header {
            display: block;
            width: 100%;
            background: #fff;
            height: auto;
            box-shadow: none;
            -webkit-box-shadow: none;
        }

        header div {
            width: 100%;
            margin: 0 auto;
            padding: 10px 15px;
            box-sizing: border-box;
        }

        header div h1 {
            width: 40%;
            float: none;
            margin: 0 auto;
        }
        .fixbtn {
            /* 最初は非表示 */
            opacity: 0;
            visibility: hidden;
            transform: translateY(30px);
            transition: opacity 1s, visibility 1s, transform 1s;
          }
          .fixbtn {
            width: 100%;
            position: fixed;
            bottom: 0;
            left: 0;
            background: #fff;
            z-index: 9999;
        }
          /* フェードイン時に入るクラス */
          .is-fadein {
            display: block;
            opacity: 1;
            visibility: visible;
            transform: translateX(0);
          }
          label.open_button {
            position: relative;
        }
        img.circle {
            position: absolute;
            bottom: -60px;
            left: 0;
            width: 110px;
            z-index: 9999;
        }
        img.fixed_tel {
            box-shadow: -1px -3px 5px rgb(0 0 0 / 10%);
        }
/*--------------------------------------
  モーダル表示上から_002
--------------------------------------*/

.modal_wrap input {
    display: none;
  }
  .modal_wrap{
    display: block;
  }
  .modal_overlay {
    display: flex;
    justify-content: center;
    overflow: auto;
    position: fixed;
    top: 0;
    left: 0;
    z-index: 9999;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.7);
    opacity: 0;
    transition: opacity 0.5s, transform 0s 0.5s;
    transform: scale(0);
  }
  
  .modal_trigger {
    position: absolute;
    width: 100%;
    height: 100%;
  }
  
  .modal_content {
    align-self: center;
    width: 88%;
    padding: 35px 30px 35px;
    box-sizing: border-box;
    border-radius: 20px;
    background: #fff;
    line-height: 1.5em;
    transition: 0.5s;
  }
  
  .modal_content p {
    padding-top: 0;
    text-align: center;
    font-size: 15px;
    line-height: 1.6;
    font-weight: 900;
  }
  .modal-cta-tel {
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 15px;
    margin: 15px auto;
    border-radius: 10px;
    background: #258400;
    background: linear-gradient(172deg, #49862e 0%, #49862e 50%, #258400 50%, #258400 100%);
}
.modal-cta-tel img{
    width: 32px;
    padding: 0 10px 0 0;
}
.modal-cta-tel p {
    font-size: 20px;
    color: #fff;
    text-shadow: 1px 1px 1px rgb(0 0 0 / 15%);
}
  .close_button {
    position: absolute;
    top: 14px;
    right: 16px;
    font-size: 24px;
    cursor: pointer;
  }
  
  .modal_wrap input:checked ~ .modal_overlay {
    opacity: 1;
    transform: scale(1);
    transition: opacity 0.5s;
  }
  
  .modal_wrap input:checked ~ .modal_overlay .modal_content {
    transform: translateY(20px);
  }

  .modal_title2 {
    font-size: 1.5em;
      position: relative;
      overflow: hidden;
    padding-bottom: 10px;
    margin-top:0;
    margin-bottom: 0;
  }
  
  .modal_title2::before,
  .modal_title2::after{
      content: "";
      position: absolute;
      bottom: 0;
  }
  
  /* h2 プライマリカラー*/
  .modal_title2:before{
      border-bottom: 4px solid #6bb6ff;
      width: 100%;
  }
  /* h2 セカンダリカラー*/
  .modal_title2:after{
      border-bottom: 4px solid #c8e4ff;
      width: 100%;
  }
        /*===============
#topImg
=================*/
        #topImg {
            background: none;
            padding: 0;
        }

        /*===============
footer
=================*/
        footer {
            padding-bottom: 75px;
        }

        footer p {
            font-size: 12px;
            line-height: 24px;
            text-align: center;
            color: #fff;
            font-weight: normal;
            padding: 0 0 1em;
            box-sizing: border-box;
        }

        /*===============
.form01 .form02
=================*/
        .form01 div,
        .form02 div {
            width: 100%;
        }


        .form01 .tel {
            position: absolute;
            bottom: 32%;
            right: 6%;
            left: 6%;
        }

        .form01 .mail {
            position: absolute;
            bottom: 15%;
            right: 6%;
            left: 6%;
        }

        .form02 .tel {
            position: absolute;
            bottom: 41%;
            right: 6%;
            left: 6%;
        }

        .form02 .mail {
            position: absolute;
            bottom: 16%;
            right: 6%;
            left: 6%;
        }

        /*===============
選ばれる3つの理由【2/3 btn配置】
=================*/
        main figure:nth-of-type(6) div,
        main figure:nth-of-type(7) div {
            display: block;
            width: 100%;
            margin: 0 auto;
            position: relative;
        }

        main figure:nth-of-type(6) div p {
            position: absolute;
            top: 37%;
            left: 48.5%;
            right: 3.5%;
        }

        main figure:nth-of-type(7) div p {
            position: absolute;
            bottom: 4.5%;
            left: 28.5%;
            right: 23.5%;
        }

        /*===============
リフォームの流れ【1 btn配置】
=================*/
        main figure:nth-of-type(9) div {
            display: block;
            width: 100%;
            margin: 0 auto;
            position: relative;
        }


        main figure:nth-of-type(9) .tel {
            width: 41%;
            position: absolute;
            top: 26.8%;
            left: 7%;
        }

        main figure:nth-of-type(9) .mail {
            width: 41%;
            position: absolute;
            top: 26.8%;
            left: 51%;
        }

        /*===============
対応エリア[#aria]
=================*/
        #aria {
            display: block;
            width: 100%;
            padding: 40px 15px 30px;
            box-sizing: border-box;
        }

        #aria h3 {
            margin: 0 0 25px;
        }

        #aria h3 img {
            width: 40%;
            margin: 0 auto;
        }

        #aria .toggleBtn {
            display: block;
            width: 100%;
            height: 50px;
            border-radius: 25px;
            margin: 0 auto 20px;
            padding: 7px 0;
            box-sizing: border-box;
            cursor: pointer;
        }

        #aria .toggleBtn:last-of-type {
            margin: 0 auto 0;
        }

        #aria .toggleBtn h4 {
            text-align: center;
            font-weight: bold;
            font-size: 20px;
            line-height: 1.8em;
            color: #fff;
            padding: 0 0 0 0.2em;
        }

        .toggleAria {
            display: none;
            /*display: block;*/
            width: 100%;
            margin: 0 auto 30px;
        }

        #aria .toggleAria p {
            width: 100%;
            font-weight: bold;
            line-height: 24px;
        }

        #aria .toggleAria p .green {
            text-align: center;
            font-size: 16px;
            line-height: 24px;
        }

        #aria .toggleAria p .maru {
            color: #ff8d00;
        }
        /* +-デザイン */
        .accordion_icon,
        .accordion_icon span {
            display: inline-block;
            transition: all .4s;
            box-sizing: border-box;
        }

        .accordion_icon {
            position: relative;
            width: 15px;
            height: 15px;
            float: right;
            margin: -29px 1% 0 0;
        }

        .accordion_icon span {
            position: absolute;
            left: 6px;
            width: 15px;
            height: 2px;
            background-color: #fff;
        }
        figure.flow02 {
            position: relative;
            padding: 0 0 35px;
        }
        figure.cando {
            position: relative;
            background: #fff;
            padding: 5px 0 25px;
        }
        /*===============
よくある質問[#qa]
=================*/
        #qa div {
            display: block;
            width: 100%;
            padding: 40px 15px 30px;
            box-sizing: border-box;
        }

        #qa h3 {
            margin: 0 0 25px;
        }

        #qa h3 img {
            width: 47%;
            margin: 0 auto;
        }


        #qa section {
            display: block;
            width: 100%;
            height: auto;
            background: #fff;
            border-radius: 5px;
            margin: 0 auto 15px;
            padding: 20px 10px 10px;
            box-sizing: border-box;
        }

        #qa .toggleBtn {
            width: 100%;
            cursor: pointer;
            padding: 0;
            margin-top: -3%;
            position: relative;
            /* +-ボタン用 */
        }

        #qa .toggleBtn:last-of-type {
            margin: 0 auto 0;
        }

        #qa .toggleBtn h4 {
            display: flex;
            font-weight: bold;
            font-size: 15px;
            line-height: 1.6;
            color: #222;
        }

        #qa .toggleBtn h4 .century-gothic {
            font-size: 18px;
            line-height: 1.2;
            padding-right: 0.3em;
            box-sizing: border-box;
        }

        #qa .toggleAria {
            display: none;
            width: 100%;
            margin: 10px 0 0;
            padding: 10px 0 10px;
            border-top: 1px solid #6bc632;
        }

        #qa .toggleAria div {
            width: 92%;
            padding: 0px 0 0;
            float: right;
        }

        #qa .toggleAria div p {
            font-weight: bold;
        }

        #qa .toggleAria .century-gothic {
            display: inline-block;
            color: #d21709;
            font-size: 18px;
            line-height: 28px;
            padding-right: 0.1em;
            box-sizing: border-box;
            float: left;
        }

        #qa .toggleAria div ul {
            width: 100%;
            margin: 3.5% auto 0;
        }

        #qa .toggleAria div ul li {
            width: 45%;
            float: left;
        }

        #qa .toggleAria div ul li.mail {
            margin-left: 9.8%;
        }

        /* +-デザイン */
        #qa .accordion_icon {
            /*margin: -3% 4% 0 0;*/
            margin: 0;
            position: absolute;
            top: 50%;
            right: 3%;
        }

        #qa .accordion_icon span {
            position: absolute;
            left: 7px;
            top: 0;
            width: 15px;
            height: 2px;
            background-color: #679652;
        }
        figure:nth-of-type(15) {
            padding: 20px 0 25px;
        }
        figure#work {
            margin: 0 auto;
            padding: 25px 15px;
            box-sizing: border-box;
        }

        #form h3 {
            text-align: center;
            margin: 0 0 25px;
        }

        #form h3 img {
            width: 40%;
            margin: 0 auto;
        }

        #form p {
            font-weight: bold;
            margin: 0 0 25px;
        }

        #form form {
            display: block;
            width: 100%;
        }

        #form form table {
            width: 100%;
        }

        #form form tr {
            display: block;
            width: 100%;
            border: none;
        }

        #form form tr:first-of-type {
            border: none;
        }

        #form form tr th {
            display: inline-block;
            width: 100%;
            height: auto;
            font-size: 14px;
            line-height: 24px;
            padding: 13.5px;
            box-sizing: border-box;
            vertical-align: middle;
            text-align: center;
        }

        #form form th.hisshu:after {
            content: "必須";
            background: #d21709;
            border-radius: 2.5px;
            color: #fff;
            font-weight: bold;
            font-size: 9px;
            line-height: 1em;
            padding: 4px;
            box-sizing: border-box;
            float: none;
            vertical-align: middle;
            margin: 1% 0 0 6%;
        }

        #form form tr td {
            display: inline-block;
            width: 100%;
            padding: 15px 7.5px;
            box-sizing: border-box;
        }

        #form form tr td input {
            width: 100%;
            height: 45px;
            border-radius: 5px;
        }

        #form form tr td textarea {
            width: 100%;
            height: 280px;
            border-radius: 5px;
            border: 1px solid #e0e0e0;
        }


        ::placeholder {
            font-size: 14px;
        }

        #form form p {
            width: 100%;
            text-align: center;
            margin: 0 auto;
            line-height: 1em;
        }

        #form form p input {
            width: 60%;
            margin: 0 auto;
        }



        /*===============
background
=================*/
        main figure:nth-of-type(1),
        figure:nth-of-type(2),
        figure:nth-of-type(6),
        figure:nth-of-type(7),
        figure:nth-of-type(15),
        figure:nth-of-type(16) {
            background: none;
        }


        /* //END @media screen and (max-width: 750px) */
    }
/*contact-are*/
#contact-are{
    background-color: #F4F9E7;
    padding: 70px 0;
}
#contact-are .container {
    background-color: #fff;
    padding: 60px 60px 0;
    max-width: 960px;
}
#contact-are h2.section-title{
    color: #679652;
    font-size: 48px;
    text-align: center;
    border-top: 4px solid #679652;
    border-bottom: 4px solid #679652;
    padding: 10px;
    margin: 0 auto 29px;
}
#contact-are .text{
    background-color: #F4F9E7;
    padding: 2vw;
    text-align: center;
    margin-bottom: 50px;
    border-radius: 15px;
}

#contact-are .text img{
	display: block;
	width: 50%;
	margin: 0 auto;
}
#contact-are form {
    padding: 0 3vw 5vw;
}
.form-inner p{
	font-weight: bold;
}
label.form-inner {
    display: flex;
    align-items: center;
}
label.form-inner p {
    width: 35%;
    display: flex;
    align-items: center;
    font-size: 18px;
}
span.required{
    background: #f00;
    color: #fff;
    padding: 0px 7px 1px;
    font-size: 13px;
    margin: 0 0 0 10px;
}
.form-inner input,.form-inner textarea{
    padding: 15px 10px 15px;
    width: 100%;
    font-size: 15px;
}
.column_1.form-inner p {
    text-align: center;
    font-size: 18px;
    margin: 20px auto 15px;
}
.form-wrap{
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	    -ms-flex-direction: column;
	        flex-direction: column;
	gap:30px;
}
#contact-are .contact-tel-wrap{
    display: flex;
    align-items: center;
    justify-content: center;
}
#contact-are .contact-tel-wrap .for-sp{
    display: none;
}
#contact-are .contact-tel-wrap img{
    width: 70px;
    display: inline-block;
    margin: 0 10px 0 0;
}
#contact-are .contact-tel-wrap a{
    background-color: #679652;
    color: #fff;
    border-radius:10px;
    font-size:50px;
    font-weight: 900;
    letter-spacing: 1px;
    padding: 20px;
}

.scroll_box{
    background-color: rgba(247,247,247,1.00);
    width: 96%;
    height: 300px;
    padding: 20px;
    overflow: scroll;
    margin-bottom: 50px;
    font-size: 16px;
    line-height: 1.9;
    color: #222;
}

.submit{
	width:100%;
}
.submit-wrap {
    width: 40%;
    display: block;
    margin: 0 auto;
}
.submit input{
    width: 100%;
    padding: 25px 30px;
    font-size: 20px;
    text-shadow: 1px 1px 1px rgb(0 0 0 / 20%);
    background: rgb(255,141,1);
    background: linear-gradient(172deg, rgba(255,141,1,1) 0%, rgba(255,141,1,1) 50%, rgba(236,132,12,1) 50%, rgba(236,132,12,1) 100%);
    color: #fff;
    border-radius: 10px;
    font-weight: bold;
    border: none;
}
.submit input:hover{
    transition: 0.3s;
    opacity: 0.8;
}
section.company {
    padding: 70px 0 80px;
    position: relative;
}

.company-title{
    display: flex;
    margin: 0 auto 30px;
    text-align: center;
    justify-content: center;
    align-items: center;
}
.company-title img{
    position: relative;
    display: inline-block;
    width: 80px;
}
.company-title h2{
    position: relative;
    display: inline-block;
    font-size: 32px;
    color: #222;
    letter-spacing: 2px;
    text-shadow: 1px 1px 1px rgb(0 0 0 / 15%);
}

.company-title h2:before {
    border-top: 2px solid #222;
    content: "";
    position: absolute;
    top: 50%;
    left: -160px;
    width: 50px;
    transform: rotate(0deg);
}
.company-title h2:after {
    border-top: 2px solid #222;
    content: "";
    position: absolute;
    top: 50%;
    right: -80px;
    width: 50px;
    transform: rotate(0deg);
}
.company-wrap {
    display: block;
    margin: 0 auto;
    width: 80%;
}
.company-wrap table{

}
.company-wrap table tr{
    border-bottom: 1px solid #ccc;
}
.company-wrap table tr th{
    width: 25%;
    font-size: 16px;

}
.company-wrap table tr th span{
    background: #FF6D17;
    font-weight: 700;
    color: #fff;
    padding: 10px;
    letter-spacing: 2px;
    width: 100px;
    display: block;
    text-align: center;
}
.company-wrap table tr td{
    font-size: 16px;
    padding: 20px 15px;
    color: #222;
    line-height: 1.8;
}
.form01 .telmail{
    width: 85%;
    display: flex;
    margin: 0 auto;
    position: absolute;
    bottom: 68px;
    left: 80px;
}
.form01 .cta-tel{
    width: 48%;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 10px;
    background: rgb(73,134,46);
    background: linear-gradient(172deg, rgba(73,134,46) 0%, rgba(73,134,46) 50%, rgba(37,132,0,1) 50%, rgba(37,132,0,1) 100%);
    display: flex;
}
.form01 .cta-tel.for-sp{
    display: none;
}
.form01 .cta-tel label{
    display: flex;
    align-items: center;
    justify-content: center;
}
.form01 .cta-tel img {
    width: 50px;
    display: inline-block;
    margin: 0 10px 0 0;
}
.form01 .cta-tel p {
    color: #fff;
    font-size: 25px;
    font-weight: 900;
    letter-spacing: 1px;
}
.form01 .cta-mail {
    width: 48%;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 10px;
    background: rgb(255,141,1);
    background: linear-gradient(172deg, rgba(255,141,1,1) 0%, rgba(255,141,1,1) 50%, rgba(236,132,12,1) 50%, rgba(236,132,12,1) 100%);
}
.form01 .cta-mail img {
    margin: 2px 10px 0 0;
}
.form01 .cta-mail p{
    line-height: 1;
    font-size: 20px;
    font-weight: 800;
    color: #fff;
    text-shadow: 1px 1px 1px rgb(0 0 0 / 15%);
}
.form01 .cta-mail:hover {
    transition: 0.3s;
    opacity: 0.8;
}

.form02 .telmail{
    width: 85%;
    display: flex;
    margin: 0 auto;
    position: absolute;
    bottom: 75px;
    left: 80px;
}
.form02 .cta-tel{
    width: 48%;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 10px;
    background: rgb(73,134,46);
    background: linear-gradient(172deg, rgba(73,134,46) 0%, rgba(73,134,46) 50%, rgba(37,132,0,1) 50%, rgba(37,132,0,1) 100%);
    display: flex;
}
.form02 .cta-tel.for-sp{
    display: none;
}
.form02 .cta-tel label{
    display: flex;
    align-items: center;
    justify-content: center;
}
.form02 .cta-tel img {
    width: 50px;
    display: inline-block;
    margin: 0 10px 0 0;
}
.form02 .cta-tel p {
    color: #fff;
    font-size: 25px;
    font-weight: 900;
    letter-spacing: 1px;
}
.form02 .cta-mail {
    width: 48%;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 10px;
    background: rgb(255,141,1);
    background: linear-gradient(172deg, rgba(255,141,1,1) 0%, rgba(255,141,1,1) 50%, rgba(236,132,12,1) 50%, rgba(236,132,12,1) 100%);
}
.form02 .cta-mail img {
    margin: 2px 10px 0 0;
}
.form02 .cta-mail p{
    line-height: 1;
    font-size: 20px;
    font-weight: 800;
    color: #fff;
    text-shadow: 1px 1px 1px rgb(0 0 0 / 15%);
}
.form02 .cta-mail:hover {
    transition: 0.3s;
    opacity: 0.8;
}



.form02 div.creca {
    display: flex;
    flex-wrap: wrap;
    max-width: 940px;
    background: #fff;
    padding: 20px;
    justify-content: space-between;
    align-items: center;
    border: 5px solid #ff8d01;
    border-radius: 15px;
}
.form02 div.creca-img01 {
    width: 20%;
}
.form02 div.creca-txt {
    width: 55%;
}
.form02 div.creca-txt h2{
    font-size: 30px;
    margin: 0 auto 10px;
    color: #679652;
}
.form02 div.creca-txt p {
    font-size: 16px;
    font-weight: bold;
}
.form02 div.creca-img02 {
    width: 20%;
}
section.reason {
    background: #f9f9f3;
    position: relative;
    padding: 50px 0 15px;
}
img.reason-head {
    display: block;
    margin: 0 auto;
}
img.reason-head-sp {
    display: none;
}
.reason-wrap{
    display: flex;
    flex-wrap: wrap;
    max-width: 1080px;
    margin: 30px auto 20px;
    justify-content: space-between;
}
.reason-inner {
    width: 48%;
    margin: 0 0 4%;
}
.reason-inner img {
    display: block;
    margin: 0 auto 15px;
    max-width: 100%;
}
.reason-inner p {
    position: relative;
    font-size: 16px;
    font-weight: bold;
    background: #fff;
    padding: 25px;
    line-height: 1.9;
    border-radius: 15px;
    box-shadow: 0px 2px 4px rgb(0 0 0 / 5%);
}
.reason-inner p:before {
    content: "";
    position: absolute;
    top: -30px;
    left: 11%;
    margin-left: -15px;
    border: 15px solid transparent;
    border-bottom: 15px solid #fff;
}




@media (max-width:1099px){
#contact-are .text {
padding: 10vw 30px;
}

#contact-are .container {
padding: 5vw 25px;
}

.submit input{
padding: 30px 10px;
}
}
@media (max-width:767px){
    #contact-are {
        background-color: #F4F9E7;
        padding: 50px 10px;
    }
    #contact-are .container {
        padding: 35px 15px 25px;
    }
    #contact-are h2.section-title {
        font-size: 26px;
        padding: 7px;
        margin: 0 auto 30px;
    }
    #contact-are .text {
        padding: 20px 15px;
    }
    #contact-are .text p {
        text-align: left;
        font-size: 15px;
        line-height: 1.8;
    }
    #contact-are .contact-tel-wrap .for-sp{
        display:block;
        font-size: 15px;
    }
    #contact-are .contact-tel-wrap .for-pc{
        display:none;
    }
    #contact-are .contact-tel-wrap img {
        width: 50px;
        margin: 0 5px 0 0;
 
            width: 48%;
            display: flex;
            align-items: center;
            justify-content: center;
            border-radius: 10px;
            background: rgb(73,134,46);
            background: linear-gradient(172deg, rgba(73,134,46) 0%, rgba(73,134,46) 50%, rgba(37,132,0,1) 50%, rgba(37,132,0,1) 100%);
            display: flex;
    }
    #contact-are .contact-tel-wrap a p {
        font-size: 18px;
        margin-top: 20px;
        letter-spacing: 0;
    }
    label.form-inner {
        display: flex;
        flex-wrap: wrap;
    }
    label.form-inner p {
        width: 100%;
        font-size: 16px;
        margin: 0 auto 10px;
    }
    #contact-are form {
        padding: 0;
    }
    .scroll_box {
        width: 90%;
        height: 250px;
        padding: 20px 15px 0;
        overflow: scroll;
        margin-bottom: 40px;
        font-size: 14px;
        line-height: 1.8;
    }
    .submit-wrap {
        width: 100%;
        display: block;
        margin: 0 auto;
    }
    .submit input {
        padding: 25px 10px;
    }
    span.required {
        font-size: 12px;
    }
    .company-title h2 {
        font-size: 24px;
    }
    .company-title img {
        width: 60px;
    }
    .company-title h2:before {
        left: -105px;
        width: 30px;
    }

    .company-title h2:after {
        right: -40px;
        width: 30px;
    }
    .company-wrap {
        width: 90%;
    }
    .company-wrap table tr th {
        font-size: 14px;
    }
    .company-wrap table tr th span {
        padding: 10px;
        letter-spacing: 1px;
        width: 70px;
    }
    .company-wrap table tr td {
        font-size: 13px;
    }
    section.company {
        padding: 35px 0 50px;
        position: relative;
    }
    img.reason-head {
        display: none;
        margin: 0 auto;
    }
    img.reason-head-sp {
        display: block;
        width: 90%;
        margin: 0 auto;
    }
    .reason-inner {
        width: 95%;
        margin: 0 2.5% 30px;
    }
    .reason-inner p {
        position: relative;
        font-size: 15px;
        line-height: 1.8;
        padding: 25px 20px;
    }
    section.reason {
        padding: 40px 0 1px;
    }
    .form01 .telmail {
        width: 90%;
        display: flex;
        flex-wrap: wrap;
        bottom: 40px;
        left: 18px;
        gap:5px;
    }
    .form01 .cta-tel {
        width: 100%;
        padding: 6px 5px 7px;
    }
    .form01 .cta-tel.for-sp{
        display: flex;
    }
    .form01 .cta-tel.for-pc{
        display: none;
    }
    .form01 .cta-tel img {
        width: 50px;
        display: inline-block;
        margin: 0 5px 0 0;
    }
    .form01 .cta-mail {
        width: 100%;
        padding: 6px 5px 7px;
    }
    .form01 .cta-mail img {
        margin: 2px 8px 0 0;
        width: 40px;
    }
    .form01 .cta-mail p {
        font-size: 18px;
    }
    .form01 .cta-tel p {
        font-size: 18px;
        letter-spacing: 1px;
    }
    .form02 {
        background-position: top left;
        padding: 15px 0 50px;
    }
    .form02 .telmail {
        width: 90%;
        display: flex;
        flex-wrap: wrap;
        bottom: 30px;
        left: 18px;
        gap:5px;
    }
    .form02 .cta-tel {
        width: 100%;
        padding: 6px 5px 7px;
    }
    .form02 .cta-tel.for-sp{
        display: flex;
    }    
    .form02 .cta-tel.for-pc{
        display: none;
    }
    .form02 .cta-tel img {
        width: 50px;
        display: inline-block;
        margin: 0 5px 0 0;
    }
    .form02 .cta-mail {
        width: 100%;
        padding: 6px 5px 7px;
    }
    .form02 .cta-mail img {
        margin: 2px 8px 0 0;
        width: 40px;
    }
    .form02 .cta-mail p {
        font-size: 18px;
    }
    .form02 .cta-tel p {
        font-size: 18px;
    }
    .form02 div.creca {
        width: 87%;
        max-width: 100%;
        padding: 15px;
        justify-content: space-between;
        align-items: center;
        border: 2px solid #ff8d01;
        border-radius: 8px;
        margin: -5px auto 0px;
    }
    .form02 div.creca div.creca-img01{
        width: 40%;
        order: 1;
    }
    .form02 div.creca div.creca-img02{
        width: 40%;
    }
    .form02 div.creca div.creca-txt {
        width: 100%;
        margin: 0 auto 10px;
    }
    .form02 div.creca-txt h2 {
        font-size: 20px;
        margin: 0 auto 5px;
        color: #679652;
        text-align: center;
    }
    .form02 div.creca-txt p {
        font-size: 14px;
        line-height: 1.5;
        font-weight: bold;
    }
    .form01 .cta-tel label {
        margin: 0 auto 3px;
    }

}

        /*===============
10年保証
=================*/
.guarantee-section{
    padding-bottom: 2rem;
}
  .guarantee-head{
    text-align: center;
  }
#guarantee-content1 .guarantee-text,
#guarantee-content2 .guarantee-text{
    margin-bottom: 25px;
    font-weight: bold;
    font-size: 16px;
  }
  #guarantee-content1{
    max-width: 1080px;
    margin: 0 auto;
    padding: 5rem 0 35px 0;
  }
 
  #guarantee-content2,
  #guarantee-content3,
  #guarantee-content4{
    max-width: 1080px;
    margin: 0 auto;
    padding: 35px 0;
  }

  #guarantee-content1 h2,
  #guarantee-content2 h2,
  #guarantee-content3 h2,
  #guarantee-content4 h2{
    text-align: center;
    background-color: #3e9738;
    color: #fff;
    font-size: 1.8rem;
    padding: 5px;
    margin-bottom: 2vw;
  }
  #guarantee-content1 .anshin-wrap{
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
  }
  #guarantee-content1 .anshin-wrap img{
    width: 20%;
  }
  #guarantee-content2 tbody{
    margin-top: 2vw;
    display: block;
  }
  #guarantee-content2 .redtext{
    color: #e40000;
    font-size: 14px;
  }
  #guarantee-content2 th{
    width: 20%;
    border: 1px solid #fff;
    background-color: #3e9738;
    color:#fff;
    text-align: center;
    font-weight: bold;
    font-size: 16px;
  }
  #guarantee-content2 td{
    width: 80%;
    padding: 1vw;
    border: 1px solid #fff;
    background-color: #f0f0f0;
    text-align: left;
    font-weight: bold;
    color: #1a1a1a;
    font-size: 16px;
  }
  .kitei-wrap{
    font-weight: bold;
    color: #1a1a1a;
  }
  .kitei-txt01{
    font-weight: bold;
    margin:25px 0;
  }
  #guarantee-content3 .target-equipment-wrap{
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 20px;
  }
  #guarantee-content3 .target-equipment-wrap img{
    width: 31.5%;
  }
  #guarantee-content3 .target-equipment-description{
    width: 100%;
    text-align: left;
    margin-top: 25px;
    font-size: 16px;
    color: #1a1a1a;
    font-weight: bold;
  }
  #guarantee-content3 .target-equipment-description span{
    color: #cd1d1c;
    font-size: 20px;
    background: linear-gradient(transparent 65%, #fff000 65%);
    font-weight: 900;
  }
  @media screen and (max-width: 1080px){
    #guarantee-content1,
    #guarantee-content2,
    #guarantee-content3,
    #guarantee-content4{
     width: 90%;
    }
    .guarantee-pc{
        max-width: 100%;
    }
}
@media screen and (max-width: 768px){
   .guarantee-section p{
    line-height: 1.8;
   } 
   .guarantee-section {
    padding-bottom: 0;
   }
  #guarantee-content1{
    padding: 35px 0 22.5px 0;
  }
  #guarantee-content2,
  #guarantee-content3,
  #guarantee-content4{
    margin: 0 auto;
    padding: 22.5px 0;
  }
  #guarantee-content1 h2{
    text-align: left;
  }
  #guarantee-content1 h2,#guarantee-content h2,#guarantee-content3 h2,#guarantee-content4 h2{
    font-size: 1.5rem;
    padding: 5px;
    margin-bottom: 5vw;
    line-height: 1.5;
    }
  #guarantee-content1 .anshin-wrap img{
    width: 48%;
  }
  
  #guarantee-content2 .pc{
    display: none;
  }

  #guarantee-content2 .sp{
    display: block;
  }

  #guarantee-content2 tbody tr{
    display: flex;
    flex-direction: column;
  }
  
  #guarantee-content2 .redtext{
    font-size: 3vw;
  }
  
  #guarantee-content2 th{
    padding: 1vw;
    width: 100%;
  }
  
  #guarantee-content2 td{
    padding: 1vw;
    width: 100%;
  }
  #guarantee-content3 .target-equipment-wrap img{
    width: 47%;
  }
  #guarantee-content3 .target-equipment-description {
    width: 100%;
    text-align: left;
  }
  .guarantee-pc{
    display: none;
}
  }