.sec_wrap {
    max-width: 1054px;
    width: 90%;
    margin: 80px auto 0;
    display: flex;
    flex-direction: column;
    gap: 120px 0;
}

.sec_ttl_wrap {
    border-left: 1.5px solid #938059;
    padding-left: 20px;
}

.sec_ttl_deco img {
    max-width: none;
    width: auto;
    height: 5vw;
    max-height: 15px;
}

.sec_ttl {
    color: #938059;
    margin-top: 10px;
    font-size: clamp(16px,1.8vw,20px);
    letter-spacing: 0.05em;
}

.sec_txt {
    font-size: clamp(13px,1.4vw,15px);
    line-height: 1.8;
    letter-spacing: 0.08em;
}

/* SP調整 */
@media screen and (max-width:730px) {
    .sec_wrap {
        margin-top: 40px;
        gap: 80px 0;
    }
    .sec_ttl_wrap {
        padding-left: 15px;
    }
}



.sec01 .container01 .sec_txt {
    margin: 20px 0 30px;
}

.sec01 .container01 .img02 {
    max-width: 500px;
    margin: 50px auto 0;
}

.sec01 .container02 {
    display: grid;
    grid-template-columns: 1fr 30%;
    gap: 20px;
    margin: 60px 0;
}

.sec01 .container02 .sec_ttl_deco img {
    height: 6vw;
    max-height: 20px;
}

.sec01 .container02 .image {
    grid-column: 2;
    grid-row: 1/3;
}

.sec01 .container03 {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 20px 30px;
}

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

.sec01 .container03 .box01 .image {
    width: 48%;
}

.sec01 .container03 .box01 .txt_wrap {
    width: 48%;
}

.sec01 .container03 .box01 .deco img {
    max-width: none;
    width: auto;
    height: 6vw;
    max-height: 20px;
}

.sec01 .container03 .box01 .post {
    font-size: clamp(12px,1.3vw,13px);
    margin-top: 10px;
}

.sec01 .container03 .box01 .company {
    font-size: clamp(11px,1.3vw,13px);
    margin: 20px 0 5px;
}

.sec01 .container03 .box01 .name {
    font-size: clamp(18px,2vw,25px);
}

.sec01 .container03 .box03 {
    grid-column: 2;
    grid-row: 1/3;
    align-self: flex-end;
    display: flex;
    justify-content: space-between;
}

.sec01 .container03 .box03 .image {
    width: 48%;
}

.sec01 .container03 .box03 .image .note {
    text-align: right;
    margin-top: 5px;
}



/* SP調整 */
@media screen and (max-width:730px) {
    .sec01 .container01 .img01 {
        margin: 0 -5.5%;
    }

    .sec01 .container01 .img02 {
        width: 70%;
    }

    .sec01 .container02 {
        display: flex;
        flex-direction: column;
    }

    .sec01 .container02 .image {
        width: 70%;
        margin: 0 auto;
    }

    .sec01 .container03 {
        display: flex;
        flex-direction: column;
    }

    .sec01 .container03 .box01 .company {
        margin: 10px 0 5px;
    }
}




.sec02 .container01 .sec_ttl_deco img {
    max-width: none;
    width: auto;
    height: 6vw;
    max-height: 20px;
}

.sec02 .container01 .sec_txt {
    margin: 20px 0 30px;
}

.sec02 .container02 {
    display: flex;
    justify-content: space-between;
    margin: 50px 0;
}

.sec02 .container02 .box01 {
    width: 28%;
}

.sec02 .container02 .box01 .image {
    filter: drop-shadow(3px 3px 3px hsla(0, 0%, 0%, 0.3));
}

.sec02 .container02 .box01 .note {
    margin-top: 8px;
    text-align: right;
}

.sec02 .container02 .box02 {
    width: 45%;
}

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

.sec02 .container02 .box02 .flex .image {
    width: 48%;
}

.sec02 .container02 .box02 .flex .txt_wrap {
    width: 49%;
}

.sec02 .container02 .box02 .deco img {
    max-width: none;
    width: auto;
    height: 6vw;
    max-height: 20px;
}

.sec02 .container02 .box02 .post {
    font-size: clamp(11px,1.3vw,13px);
    margin-top: 5px;
}

.sec02 .container02 .box02 .company {
    max-width: 100px;
    width: 50%;
    margin-top: 13px;
}

.sec02 .container02 .box02 .name {
    font-size: clamp(20px,2vw,25px);
}

.sec02 .container02 .box02 .sec_txt {
    margin-top: 15px;
}


.sec02 .container02 .box03 {
    width: 20%;
    display: flex;
    flex-direction: column;
    gap: 20px 0;
}

.sec02 .container02 .box03 .note {
    text-align: right;
    margin-top: 5px;
}


.sec02 .container03 {
    background-color: #eae4d0;
    padding: 40px;
}

.sec02 .container03 .box {
    display: flex;
    justify-content: space-evenly;
}

.sec02 .container03 .box .txt_wrap {
    width: 55%;
}

.sec02 .container03 .box_lead {
    text-align: center;
    color: #927b4c;
    font-size: clamp(13px,1.4vw,15px);
}

.sec02 .container03 .box_ttl {
    text-align: center;
    color: #927b4c;
    font-size: clamp(18px,2vw,25px);
}

.sec02 .container03 .sec_txt {
    margin-top: 10px;
}


.sec02 .container03 .image_wrap {
    width: 34%;
}

.sec02 .container03 .box01 .deco img {
    display: block;
    margin: 10px auto 0;
    max-width: none;
    width: auto;
    height: 6vw;
    max-height: 20px;
}

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

.sec02 .container03 .box01 .image_wrap .image {
    width: 48%;
}

.sec02 .container03 .box01 .image_wrap .txt_wrap {
    width: 48%;
    border-top: 1px dashed #595757;
    border-bottom: 1px dashed #595757;
    padding: 10px 0;
}

.sec02 .container03 .box01 .image_wrap .txt_wrap .txt {
    font-size: clamp(13px,1.4vw,14px);
}

.sec02 .container03 .box01 .image_wrap .txt_wrap .image {
    width: 90%;
    margin: 20px 0 0;
}


.sec02 .container03 .box02 .deco img {
    display: block;
    margin: 10px auto 0;
    max-width: none;
    width: auto;
    height: 4vw;
    max-height: 15px;
}

.sec02 .container03 .box02 {
    margin-top: 50px;
}

/* SP調整 */
@media screen and (max-width:730px) {

    .sec02 .container01 .img01 {
        margin: 0 -5.5%;
    }

    .sec02 .container02 {
        flex-direction: column;
        gap: 30px 0;
        margin: 40px 0;
    }

    .sec02 .container02 .box01 {
        width: 75%;
        margin: 0 auto;
    }

    .sec02 .container02 .box02 {
        width: 100%;
    }

    .sec02 .container02 .box02 .company {
        margin-bottom: 8px;
    }

    .sec02 .container02 .box02 .name {
        margin-top: 5px;
    }

    .sec02 .container02 .box03 {
        width: 100%;
        flex-direction: row;
        justify-content: space-between;
        margin-top: -10px;
    }
    
    .sec02 .container02 .box03 .image {
        width: 48%;
    }

    .sec02 .container03 {
        padding: 30px 20px;
        margin: 0 -5.5%;
    }

    .sec02 .container03 .box {
        flex-direction: column;
        gap: 20px 0;
    }

    .sec02 .container03 .box .txt_wrap {
        width: 100%;
    }
    
    .sec02 .container03 .box .image_wrap {
        width: 80%;
        margin: 0 auto;
    }
}



.sec03 .container01 .sec_ttl_deco img {
    display: block;
    margin: 0 auto;
    max-width: none;
    width: auto;
    height: 6vw;
    max-height: 20px;
}

.sec03 .container01 .sec_ttl {
    text-align: center;
}

.sec03 .container01 .list_wrap {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 40px 60px;
}

.sec03 .list_ttl {
    color: #927b4c;
    font-size: clamp(16px, 1.8vw, 18px);
    letter-spacing: 0.01em;
}

.sec03 .list_txt {
    margin-top: 10px;
    line-height: 1.8;
    font-size: clamp(12px, 1.3vw, 14px);
}


.sec03 .list02 {
    grid-column: 1;
    grid-row: 2/4;
}

.sec03 .list02 .flex {
    display: flex;
    justify-content: space-between;
}

.sec03 .list02 .flex .list_txt {
    width: 48%;
}

.sec03 .list02 .flex .image {
    width: 48%;
    margin-top: 20px;
}


.sec03 .list03 {
    grid-column: 2;
    grid-row: 1/3;
}

.sec03 .list03 {
    display: grid;
    grid-template-columns: 35% 1fr;
    gap: 0 20px;
}

.sec03 .list03 .image {
    grid-column: 1;
    grid-row: 1/4;
}


.sec03 .list04 {
    grid-column: 2;
    grid-row: 3/5;
}

.sec03 .list04 {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 0 20px;
}

.sec03 .list04 .image {
    grid-column: 2;
    grid-row: 1/4;
}

.sec03 .list05 {
    grid-column: 1;
    grid-row: 4/6;
}

.sec03 .list05 .flex {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.sec03 .list05 .flex .list_txt {
    width: 50%;
}

.sec03 .list05 .flex .image {
    width: 40%;
    margin: 10px auto 0;
}

.sec03 .list05 .img06 {
    max-width: 400px;
    margin: 30px auto 0;
}


.sec03 .list06 .image {
    max-width: 450px;
    margin: 30px auto 0;
}


.sec03 .list07 {
    grid-column: 1;
    grid-row: 6/8;
}

.sec03 .list07 .image {
    max-width: 350px;
    margin: 30px auto 0;
}


.sec03 .list08 {
    grid-column: 1;
}

.sec03 .list08 .flex {
    display: flex;
    justify-content: space-between;
}

.sec03 .list08 .flex .txt_wrap {
    width: 47%;
}


.sec03 .list08 .flex .image {
    width: 50%;
}



.sec03 .list09 {
    grid-column: 2;
    grid-row: 6/7;
}

.sec03 .list09 .flex {
    display: flex;
    justify-content: space-between;
}

.sec03 .list09 .txt_wrap {
    width: 67%;
}

.sec03 .list09 .list_ttl {
    display: flex;
    align-items: center;
    margin-bottom: -5%;
}

.sec03 .list09 .list_ttl .icon {
    width: 25%;
    margin-bottom: 5%;
}

.sec03 .list09 .image {
    width: 20%;
    margin: 0 auto;
    align-self: center;
}


.sec03 .list10 {
    grid-column: 2;
    grid-row: 7/8;
}

.sec03 .list10 .flex {
    display: flex;
    justify-content: space-between;
}

.sec03 .list10 .flex .txt_wrap {
    width: 66%;
}

.sec03 .list10 .flex .image {
    width: 30%;
}


.sec03 .list11 .box01 {
    max-width: 450px;
    margin: 20px auto 0;
}

.sec03 .list11 .box01 .lead {
    color: #927b4c;
    font-size: clamp(16px, 1.8vw, 18px);
    margin-bottom: 10px;
    text-align: center;
}

.sec03 .list11 .box01 .point_wrap {
    display: flex;
    flex-direction: column;
    gap: 10px 0;
}

.sec03 .list11 .box01 .point_wrap li {
    display: flex;
    align-items: center;
    gap: 0 20px;
    border: 2px solid #717071;
    padding: 10px;
    min-height: 64px;
    font-size: clamp(12px, 1.3vw, 14px);
}

.sec03 .list11 .box01 .point_wrap li .icon {
    max-width: 40px;
}

.sec03 .list11 .box01 .note {
    text-align: right;
    margin-top: 5px;
}

.sec03 .list11 .box02 {
    max-width: 450px;
    margin: 10px auto 0;
}

.sec03 .list11 .box02 .image {
    max-width: 230px;
    width: 45%;
}

.sec03 .list11 .box02 .lead {
    color: #a38a77;
    font-size: clamp(13px, 1.4vw, 15px);
    margin: 10px 0;
}

.sec03 .list11 .box02 .txt {
    font-size: clamp(10px, 1.1vw, 12px);
}


.sec03 .container02 {
    background-color: #eae4d0;
    padding: 40px 30px;
    margin-top: 50px;
}

.sec03 .container02 .con_ttl {
    color: #927b4c;
    text-align: center;
    font-size: clamp(17px,2vw,22px);
    margin-bottom: 10px;
}

.sec03 .container02 .con_ttl_small {
    color: #927b4c;
    text-align: center;
    font-size: clamp(13px,1.5vw,16px);
}

.sec03 .container02 .con_lead {
    color: #927b4c;
    font-size: clamp(14px,1.5vw,17px);
}

.sec03 .container02 .con_txt {
    margin-top: 10px;
    line-height: 1.8;
    font-size: clamp(12px, 1.3vw, 14px);
}

.sec03 .container02 .box {
    max-width: 850px;
    margin: 0 auto;
    display: flex;
    justify-content: space-between;
}

.sec03 .container02 .box .txt_wrap {
    width: 43%;
}

.sec03 .container02 .box .image {
    width: 50%;
}

.sec03 .container02 .box01 {
    margin: 30px auto 50px;
}

.sec03 .container02 .box01 .point_wrap {
    margin-top: 20px;
}

.sec03 .container02 .box01 .point_wrap li {
    color: #53a995;
    text-align: center;
    border-top: 2px dashed #53a995;
    padding: 8px 0;
    font-size: clamp(13px, 1.3vw, 15px);
}

.sec03 .container02 .box01 .point_wrap li:last-child {
    border-bottom: 2px dashed #53a995;
}



.sec03 .container03 {
    margin-top: 50px;
}

.sec03 .container03 .sec_ttl {
    margin-bottom: 15px;
}

.sec03 .container03 .box_wrap {
    max-width: 850px;
    margin: 40px auto 0;
    display: grid;
    grid-template-columns: 1fr 49%;
    gap: 20px 30px;
}

.sec03 .container03 .box_wrap .note {
    text-align: right;
    margin-top: 20px;
}

.sec03 .container03 .box03 {
    grid-column: 1/3;
    max-width: 400px;
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.sec03 .container03 .box03 .image {
    width: 30%;
}

.sec03 .container03 .box03 .txt_wrap {
    width: 65%;
}

.sec03 .container03 .box03 .lead {
    font-size: clamp(13px,1.4vw,15px);
    border-bottom: 1px solid #717071;
    padding-bottom: 10px;
    margin-bottom: 10px;
}

.sec03 .container03 .box03 .txt {
    font-size: clamp(13px,1.4vw,15px);
}


/* SP調整 */
@media screen and (max-width:730px) {

    .sec03 .container01 .img01 {
        margin: 0 -5.5%;
    }

    .sec03 .container01 .list_wrap {
        display: flex;
        flex-direction: column;
    }

    .sec03 .list03 {
        grid-template-columns: 1fr 35%;
    }

    .sec03 .list03 .list_ttl {
        grid-column: 1/3;
    }

    .sec03 .list03 .image {
        grid-column: 2;
        grid-row: 2/4;
        margin-top: 15px;
    }

    .sec03 .list04 .list_ttl {
        grid-column: 1/3;
    }

    .sec03 .list04 .image {
        grid-row: 2/4;
        margin-top: 10px;
    }

    .sec03 .list05 .flex .image {
        width: 45%;
        margin: 15px 0 0;
    }

    .sec03 .list07 .image {
        margin-top: 20px;
    }

    .sec03 .list08 .flex .image {
        align-self: flex-end;
    }


    .sec03 .container02 {
        margin: 30px -5.5% 0;
        padding: 30px 20px;
    }

    .sec03 .container02 .con_ttl {
        margin: 0 -20px 15px;
    }

    .sec03 .container02 .con_ttl_small {
        margin: 0 -20px;
    }

    .sec03 .container02 .box {
        flex-direction: column;
        gap: 30px 0;
    }

    .sec03 .container02 .box .txt_wrap {
        width: 100%;
    }

    .sec03 .container02 .box .image {
        width: 100%;
    }

    .sec03 .container02 .box01 {
        margin-top: 40px;
    }

    .sec03 .container03 .box_wrap {
        margin-top: 20px;
        display: flex;
        flex-direction: column;
    }
}