@charset "UTF-8";
@media screen and (min-width: 767px) {

    /* columns */
    .columns_fullscreen-fmt2023 > .h1_01-fmt2023{
        padding: 4% 0 5%;
    }

    .columns_colorfullscreen-fmt2023{
        background-color: #F7F6F4;
        padding: 4% 0 1%;
    }

    .columns_colorfullscreen-fmt2023 > .formarea-fmt2023{
        background-color: #fff;
    }

    .columns_white-fmt2023{
        /*max-width: 900px;*/
        max-width: 1120px;
        margin: 0% auto 3%;
        background-color: #fff;
        padding: 4% 0;
    }

    .columns_white-fmt2023 > .h3_01-fmt2023{
        position: relative;
    }
    .columns_white-fmt2023 > .h3_01-fmt2023::before{
        position: absolute;
        content: "";
        bottom: -8px;
        /*left: 39%;*/
        left: 37%;
        height: 35px;
        width: 35px;
        background: url(../img/column_left-fmt2023.png) no-repeat;
        background-size: contain;
    }
    .columns_white-fmt2023 > .h3_01-fmt2023::after{
        position: absolute;
        content: "";
        bottom: -8px;
        /*right: 39%;*/
        right: 37%;
        height: 35px;
        width: 35px;
        background: url(../img/column_right-fmt2023.png) no-repeat;
        background-size: contain;
    }
    .columns_area-fmt2023{
        /*max-width: 650px;
        margin: 3% auto;*/
        max-width: 820px;
        margin: 5% auto 0;
    }
    .columns_area-fmt2023 > .h3_04-fmt2023{
        color: #EF6D00;
        font-size: 18px;
        border-bottom: 1px solid #EF6D00;
        padding: 1% 0px;
        margin: 1% auto 2%;
        font-weight: bold; 
    }
    .columns_item-fmt2023{
        display: flex;
        justify-content: space-between;
    }
    .columns_item-fmt2023 > .row{
        width: 46%;
        margin: 1% 0;
        display: flex;
        font-size: 16px;
    }
    .columns_item-fmt2023 > .row > a{
        line-height: 1.4;
    }
    .columns_item-fmt2023 > .row > picture {
        display: inline;
        margin-bottom: 2%;
        margin-right: 3%;
    }
    .columns_item-fmt2023 > .row > picture > img {
        margin-bottom: 10%;
    }
    .columns_item-fmt2023 > .row > .row {
        display: flex;
        align-items: flex-start;
        margin: 3% 0 0;
        width: 110%;
        cursor: pointer;
    }
    .columns_item-fmt2023 > .row > .flex_item > .row > picture{
        margin-right: 2%;
        margin-top: -0.5%;
    }
    .columns_item-fmt2023 > .row > .flex_item > a{
        line-height: 1.4;
    }
    .columns_item-fmt2023 > .row > .flex_item > picture {
        display: inline;
        margin-bottom: 2%;
        margin-right: 3%;
    }
    .columns_item-fmt2023 > .row > .flex_item > picture > img {
        margin-bottom: 10%;
    }

    .columns_item-fmt2023 > .row > .flex_item > .row {
        display: flex;
        align-items: flex-start;
        margin: 3% 0 0;
        width: 110%;
        cursor: pointer;
    }
    .columns_item-fmt2023 > .row > .flex_item > .row > picture{
        margin-right: 2%;
        margin-top: -0.5%;
    }

    .vertical_item-fmt2023{
        width:45%;
    }
    .vertical_item-fmt2023 > .row{
        width: 100%;
        margin: 3% 0;
        display: flex;
        font-size: 16px;
    }
    .vertical_item-fmt2023 > .row > picture {
        display: inline;
        margin-bottom: 2%;
        margin-right: 3%;
    }
    .vertical_item-fmt2023 > .row > picture > img {
        margin-bottom: 10%;
    }

    .about_beige-fmt2023{
        max-width: 1120px;
        margin: 0% auto 4%;
        background-color: #F7F6F4;
        padding: 3% 0;
    }
    .about_beige-fmt2023 > .h3_01-fmt2023{
        position: relative;
    }
    .about_beige-fmt2023 > .h3_01-fmt2023::before {
        position: absolute;
        content: "";
        bottom: -8px;
        left: 39%;
        height: 35px;
        width: 35px;
        background: url(../img/column_left-fmt2023.png) no-repeat;
        background-size: contain;
    }
    .about_beige-fmt2023 > .h3_01-fmt2023::after {
        position: absolute;
        content: "";
        bottom: -8px;
        right: 39%;
        height: 35px;
        width: 35px;
        background: url(../img/column_right-fmt2023.png) no-repeat;
        background-size: contain;
    }
    
    /* HPより */
    .consultSec {
        background: #F7F6F4;
        min-width: 1366px;
        padding: 70px 0 80px;
    }

    .consultSec .consultList {
        margin-left: auto;
        margin-right: auto;
        margin-bottom: 20px;
        width: 1120px;
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
    }
    .consultSec .consultList li {
        margin-bottom: 20px;
        width: 170px;
    }
    .consultSec .btn {
        display: block;
        width: 320px;
        box-shadow: 0px 2px 0px #00000033;
        background: #FFFFFF;
        border: 2px solid #D9D4CB;
        font-size: 16px;
        line-height: 28px;
        color: #EF6D00;
        border-radius: 6px;
        margin: auto;
        padding-top: 24px;
        padding-bottom: 24px;
        padding-left: 16px;
    }
    /* column/index */
    .columnSec {
        padding: 70px 0 0;
        min-width: 1366px;
    }
    .columnSec > .h1_01-fmt2023{
        padding: 0% 0 3%;
    }
    .columnSec .column-content-list {
        display: flex;
        justify-content: space-around;
        width: 1120px;
        margin: auto;
        margin-bottom: 1%;
    }
    .columnSec .column-content {
        display: flex;
        width: 360px;
        background: #FFF;
        padding-top: 24px;
        padding-bottom: 24px;
        box-shadow: 0px 2px 0px #00000033;
        border: 1px solid #D4CEC4;
        border-radius: 6px;
    }
    .columnSec .column-content .column-content-left {
        margin-left: 26px;
        width: 48px;
    }
    .columnSec .column-content .column-content-right {
        margin-left: 12px;
        margin-right: 20px;
    }
    .columnSec .column-content .column-content-right .title {
        font-size: 20px;
        line-height: 30px;
        color: #EF6D00;
        height: 60px;
        font-weight: bold;
    }
    .columnSec .column-content .column-content-right .text {
        font-size: 16px;
        line-height: 28px;
        letter-spacing: 0px;
        color: #666666;
        height: 72px;
    }
    .columnSec .column-content .column-content-right .link {
        text-align: right;
        text-decoration: underline;
        font-size: 14px;
        line-height: 20px;
        letter-spacing: 0px;
        color: #707070;
        margin-top: 18px;
    }
    .caseWrap {
        background: #F7F6F4;
        padding-bottom: 60px;
        margin-bottom: 0;
    }
    .caseWrap > .h1_01-fmt2023{
        padding: 1% 0 3%;
    }
    .caseWrap .caseList {
        display: flex;
        width: 1120px;
        flex-wrap: wrap;
        justify-content: space-between;
        margin: auto;
    }
    .caseWrap .caseList._sub {
        justify-content: space-between;
    }
    .caseWrap .caseList._sub li {
        margin-bottom: 22px;
        width: 31%;
        max-height: 470px;
        background: #FFF;
        box-shadow: 0px 2px 0px #00000033;
        border: 1px solid #D4CEC4;
        border-radius: 6px;
    }
    .caseWrap .caseList li a {
        display: block;
        position: relative;
    }
    .caseWrap .caseList._sub li figure {
        overflow: hidden;
        height: 210px;
        border-radius: 5px 5px 0 0;
    }
    .caseWrap .caseList._sub li figure img {
        height: 210px;
        width: 100%;
        object-fit: cover;
        font-family: "object-fit:cover;";
    }
    .caseWrap .caseList li dl {
        margin-top: 6px;
        margin-bottom: 30px;
        padding-left: 20px;
        padding-right: 20px;
        word-wrap: break-word;
    }
    .caseWrap .caseList li dt {
        font-weight: bold;
        font-size: 18px;
        line-height: 30px;
        letter-spacing: 0px;
        color: #EF6D00;
        overflow: hidden;
        display: -webkit-box;
        -webkit-box-orient: vertical;
        -webkit-line-clamp: 2;
    }

    .caseWrap .caseList li .continue {
        text-align: right;
        text-decoration: underline;
        font-size: 14px;
        line-height: 20px;
        letter-spacing: 0px;
        color: #707070;
    }

}

@media screen and (max-width: 767px) {
    /* columns */
    .columns_fullscreen-fmt2023 > .h1_01-fmt2023{
        padding: 6% 0;
    }

    .columns_colorfullscreen-fmt2023{
        background-color: #F7F6F4;
        /*padding: 14% 0 1%;*/
        padding: 5% 0 1%;
    }

    .columns_colorfullscreen-fmt2023 > .formarea-fmt2023{
        background-color: #fff;
        margin: 22% auto 0;
    }

    .columns_white-fmt2023{
        max-width: 90%;
        margin: 0% auto 14%;
        background-color: #fff;
        /*padding: 4% 0% 1%;*/
        padding: 7% 0% 2%;
    }

    .columns_white-fmt2023 > .h3_01-fmt2023{
        position: relative;
    }
    .columns_white-fmt2023 > .h3_01-fmt2023::before {
        position: absolute;
        content: "";
        bottom: -9px;
        left: 21%;
        height: 35px;
        width: 35px;
        background: url(../img/column_left-fmt2023.png) no-repeat;
        background-size: contain;
    }
    .columns_white-fmt2023 > .h3_01-fmt2023::after {
        position: absolute;
        content: "";
        bottom: -9px;
        right: 21%;
        height: 35px;
        width: 35px;
        background: url(../img/column_right-fmt2023.png) no-repeat;
        background-size: contain;
    }
    .columns_area-fmt2023{
        max-width: 88% ;
        margin: 10% auto 5%;
    }
    .columns_area-fmt2023 > .h3_04-fmt2023{
        padding: 3% 0 3%;
        border-bottom: 1px solid #EF6D00;
        font-size: 18px;
        margin: 1% auto 2%;    
    }
    .columns_item-fmt2023{
        display: block;
    }
    .columns_item-fmt2023 > .row{
        width: 100%;
        margin: 6% 0;
        display: flex;
        font-size: 18px;
        align-items: flex-start;
    }
    .columns_item-fmt2023 > .row > picture {
        display: inline;
        margin-right: 3%;
        margin-top: 1%;
    }
    .columns_item-fmt2023 > .row > .flex_item > a {
        line-height: 1.4;
    }
    .columns_item-fmt2023 > .row > .flex_item > picture > img {
        margin-bottom: 10%;
    }
    .columns_item-fmt2023 > .row > a {
        line-height: 1.4;
    }
    .columns_item-fmt2023 > .row > picture > img {
        margin-bottom: 10%;
    }

    .vertical_item-fmt2023{
        width:100%;
    }
    .vertical_item-fmt2023 > .row{
        width: 100%;
        margin: 6% 0;
        display: flex;
        font-size: 18px;
        align-items: flex-start;
    }
    .vertical_item-fmt2023 > .row > picture {
        display: inline;
        margin-right: 3%;
        margin-top: 1%;
    }
    .vertical_item-fmt2023 > .row > a {
        line-height: 1.4;
    }
    .vertical_item-fmt2023 > .row > picture > img {
        margin-bottom: 10%;
    }
    .h3_01-fmt2023.sp{
        line-height: 1.4;
    }
    .columns_item-fmt2023 > .row > .flex_item > .row {
        display: flex;
        align-items: flex-start;
        margin: 3% 0 0;
    }
    .columns_item-fmt2023 > .row > .flex_item > .row > picture{
        margin-right: 2%;
        margin-top: -0.5%;
    }

    /* HPより */
    .consultSec {
        padding: 10.75vw 2.5vw 12.8vw;
    }
    .consultSec .consultList {
        width: 72.5333vw;
        margin: auto;
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
    }
    .consultSec .consultList li {
        margin-bottom: 2.5vw;
        width: 34.1333vw;
    }

    .consultSec .btn {
        display: block;
        background: #fff;
        border: 0.5333vw solid #D9D4CB;
        box-shadow: 0px 0.5333vw 0px #00000033;
        padding-top: 4.4vw;
        padding-bottom: 4.4vw;
        padding-left: 4.2666vw;
        border-radius: 1.6vw;
        font-size: 4.2666vw;
        line-height: 7.4666vw;
        color: #EF6D00;
        width: 86.6666vw;
        margin: auto;
    }

    .consultSec .consultList li img {
        width: 100%;
    }

    /* column/index */

    .caseWrap {
        padding-top: 4.8vw;
        padding-bottom: 12.8vw;
        background: #F7F6F4;
    }
    .caseWrap > .h1_01-fmt2023{
        font-size: 20px;
        margin-bottom: 6%;
    }
    .caseWrap .caseList._sub {
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
    }
    .caseWrap .caseList._sub li {
        width: 91.466666vw;
        background: #FFF;
        box-shadow: 0px 0.533333vw 0px #00000033;
        border: 0.26666666vw solid #D4CEC4;
        border-radius: 1.6vw;
        margin-bottom: 6%;
    }
    .caseWrap .caseList li a {
        display: block;
        position: relative;
    }
    .caseWrap .caseList._sub li figure {
        overflow: hidden;
        /*height: 72.8vw;*/
        border-radius: 1.3333vw 1.3333vw 0 0;
    }
    .caseWrap .caseList._sub li figure img {
        /*height: 72.8vw;*/
        width: 100%;
        object-fit: cover;
        font-family: "object-fit:cover;";
    }
    .caseWrap .caseList li dl {
        padding-left: 5.333333vw;
        padding-right: 5.333333vw;
        font-size: 3.73333333vw;
        line-height: 5.33333333vw;
        word-wrap: break-word;
    }
    .caseWrap .caseList li dt {
        font-size: 4.8vw;
        line-height: 6.9333333vw;
        letter-spacing: 0px;
        color: #EF6D00;
        font-weight: bold;
        overflow: hidden;
        display: -webkit-box;
        -webkit-box-orient: vertical;
        -webkit-line-clamp: 2;
        margin: 4.266666vw 0;
    }
    .caseWrap .caseList li .continue {
        text-decoration: underline;
        font-size: 3.73333333vw;
        line-height: 5.3333333vw;
        letter-spacing: 0px;
        color: #707070;
        text-align: right;
        margin-bottom: 6.4vw;
    }
    .columnSec {
        padding: 10.75vw 2.5vw 12.8vw;
    }
    .columnSec .column-content-list {
        display: flex;
        margin: auto;
        flex-direction: column;
        align-items: center;
    }
    .columnSec .column-content {
        display: flex;
        width: 91.4666vw;
        background: #FFF;
        padding-top: 2.6666vw;
        padding-bottom: 4.2666vw;
        box-shadow: 0px 0.5333vw 0px #00000033;
        border: 0.2666vw solid #D4CEC4;
        border-radius: 1.6vw;
        margin-bottom: 2.6666vw;
    }
    .columnSec .column-content .column-content-left {
        margin-left: 5.0666vw;
        width: 12.2666vw;
        padding-top: 2vw;
    }
    .columnSec .column-content .column-content-right {
        margin-left: 3.4666vw;
        margin-right: 4.2666vw;
    }
    .columnSec .column-content .column-content-right .title {
        font-size: 4.8vw;
        line-height: 7.46666vw;
        color: #EF6D00;
        font-weight: 600;
    }
    .columnSec .column-content .column-content-right .text {
        font-size: 16px;
        line-height: 7.4666vw;
        letter-spacing: 0px;
        color: #666666;
    }
    .columnSec .column-content .column-content-right .link {
        text-align: right;
        text-decoration: underline;
        font-size: 3.7333vw;
        line-height: 5.3333vw;
        letter-spacing: 0px;
        color: #707070;
        margin-top: 4.8vw;
    }

}