section
{
    display : flow-root;
}
li
{
    list-style: none;
}
h2
{
    color : var(--color-green);
    text-align : center;
}
h2 span
{
    font-size : 14px;
    color : var(--color-gray);
    display : block;
}
h3
{
    color : var(--color-green);
}
#TOPPAGE header
{
    background-image : url(../img/eyecatch_image.jpg);
    background-size : cover;
    background-position : 100% 90%;
    position : relative;
    height : 600px;
}
#TOPPAGE #PAGE_TITLE img
{
    width : 155px;
    position : absolute;
    right: 0px;
    bottom: 15px;
}
#PAGE_TITLE h1 span
{
    font-size : 24px;
    color : #090b16;
}
#PAGE_TITLE h1
{
    font-size : 36px;
    font-weight: bold;
    color : #090b16;
    display : inline-block;
    margin : 50px auto 20px;
    text-align: left;
    position : relative;
    padding-right: 170px;
}
#PAGE_TITLE h1::before
{
    display : none;
}
/* メリット */
#TOP_MERIT
{
    background-color : var(--color-beige);
}
#TOP_MERIT ul
{
    display : grid;
    grid-template-columns: 1fr 1fr 1fr;
    gap : 20px;
    padding : 20px;
    align-items: center;
    margin-top : 0px;
}
#TOP_MERIT ul li
{
    border : 1px solid var(--color-white);
    padding : 30px;
    text-align : center;
    line-height: 1.1em;
    font-size : 24px;
}
#TOP_MERIT ul li:nth-of-type(2)
{
    padding: 25px 0px 10px;
}
#TOP_MERIT ul li span:nth-of-type(1)
{
    font-size : 36px;
    color : var(--color-green);
    margin : 5px;
}
#TOP_MERIT ul li span:nth-of-type(2)
{
    font-size : 13px;
    display : block;
}

/* モデルハウスのバナー */
#MODEL_HOUSE_BANNER
{
    width : 750px;
    height : 200px;
    background-image : url(../img/model_house_image.jpg);
    position : relative;
    background-position: 0% 60%;
    margin : 50px auto;
}
#MODEL_HOUSE_BANNER > div
{
    width : 280px;
    height : 100%;
    background-color : var(--color-black);
    position : absolute;
    top : 0;
    right : 0;
}
#MODEL_HOUSE_BANNER > div > p
{
    font-size : 24px;
    text-align : center;
    color : var(--color-white);
    margin: 20px 0px 15px;
    line-height: 1.5em;
}
#MODEL_HOUSE_BANNER > div > p > span
{
    font-size : 16px;
    color : var(--color-gray);
    display : block;
}
/* プラン一覧 */ 
#PLAN_LIST ul
{
    border : 1px solid var(--color-beige);
    padding : 10px;
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap : 10px 0px;
}
#PLAN_LIST ul li
{
    list-style: none;
    position : relative;
    padding-top : 10px;
}
#PLAN_LIST ul li:nth-of-type(n+3)
{
    border-top : 1px solid var(--color-beige);
}
#PLAN_LIST ul li:nth-of-type(odd):after
{
    content : "";
    display : block;
    position : absolute;
    right : -10px;
    top : 10px;
    height : 90%;
    width : 1px;
    background-color : var(--color-beige);
}
#PLAN_LIST ul li p
{
    font-size : 18px;
    color : var(--color-black);
    margin : 0px;
    display : grid;
    grid-template-columns: auto auto auto;
    place-items: center;
    justify-content: center;
}
#PLAN_LIST ul li p span:nth-of-type(1)
{
    background-color : var(--color-beige);
    padding : 5px;
    font-size : 14px;
}
#PLAN_LIST ul li p span:nth-of-type(2)
{
    font-size : 36px;
    color : #b0974b;
    font-weight : bold;
    margin : 0px 10px;
}
#PLAN_TEXT
{
    font-size : 24px;
}
#PLAN_TEXT span
{
    font-size : 36px;
    color : var(--color-green);
}

/* コンセプト */
#CONCEPT
{
    padding-top : 75px;
    padding-bottom : 75px;
    text-align : center;
}
#CONCEPT ul
{
    margin : 20px auto 50px;
    padding : 0px;
}
#CONCEPT h2
{
    font-size : 36px;
}
#CONCEPT h3
{
    font-size : 36px;
    color : var(--color-black);
}
#CONCEPT h3 img
{
    width : 155px;
}
#CONCEPT ul li
{
    display : grid;
    grid-template-columns: auto 1fr;
    align-items: center;
}
#CONCEPT ul li span
{
    font-size : 36px;
    color : var(--color-green);
    margin-right : 20px;
}
#CONCEPT h3 span,
#CONCEPT ul li
{
    font-size : 24px;
}
#CONCEPT > div:nth-of-type(1)
{
    background-image : url(../img/top_concept_image.jpg);
    background-repeat : no-repeat;
    padding-top : 75px;
    background-size : 100%;
    background-position: 0% 60%;
    width : 100%;
    position : relative;
    z-index : 1;
}
#CONCEPT > div:nth-of-type(2)
{
    width : 460px;
    margin : 30px auto 50px;
    text-align : left;
    padding-left : 20px;
}
#CONCEPT a
{
    margin: 0px auto 50px;
    display: inline-block;
}

/* コンテンツ一覧 */
.content_two_column h2
{
    font-size : 36px;
    text-align : left;
}

.content_two_column h3
{
    font-size : 24px;
    color : var(--color-black);
}
.content_two_column .image img
{
    width : 100%;
}


/* モバイル用スタイル */
@media (max-width: 1200px) 
{
    #TOP_MERIT ul li {
        font-size: 18px;
        padding : 30px 10px;
    }
    #TOP_MERIT ul li span:nth-of-type(1)
    {
        font-size: 24px;
    }
}
@media (max-width: 900px) 
{
    .content_two_column
    {
        padding : 0px 10px;
        gap : 30px;
    }
}

@media (max-width: 850px) 
{
    #TOP_MERIT ul li:nth-of-type(1),
    #TOP_MERIT ul li:nth-of-type(3)
    {
        line-height: 1.5em;
    }
    #TOP_MERIT ul {
        gap: 10px;
        padding: 10px;
    }
}
@media (max-width: 768px) 
{
    #PAGE_TITLE h1
    {
        width: 410px;
        padding-right: 0px;
        font-size: 28px;
        margin-top: 20px;
    }
    #TOPPAGE #PAGE_TITLE img {
        width: 150px;
        position: unset;
        margin: auto;
        display: block;
    }
    #PAGE_TITLE h1 span
    {
        font-size: 18px;
    }
    #TOP_MERIT ul {
        gap: 10px;
        grid-template-columns: 1fr;
    }
    #TOP_MERIT ul li {
        padding: 20px 10px;
    }
    #TOPPAGE header
    {
        height : 450px;
    }
    #MODEL_HOUSE_BANNER
    {
        width : 95%;
        margin : 50px auto 30px;
    }
    #MODEL_HOUSE_BANNER > div
    {
        width : 40%;
    }
    #CONCEPT
    {
        padding-top: 50px;
    }
    #CONCEPT > div:nth-of-type(1)
    {
        padding-top: 10px;
        background-size: auto 100%;
        background-position: 50% 0%;  
    }
    h3
    {
        margin : 20px;
    }

}
@media (max-width: 550px) {
    #PAGE_TITLE h1 {
        width: 100%;
        font-size: 22px;
        text-align: center;
    }
    #CONCEPT > div:nth-of-type(2)
    {
        width : 80%;
        margin : 10px auto;
        padding-left: 0px;
    }
    #CONCEPT ul{
        margin: 50px auto 50px;
    }
    #CONCEPT ul li
    {
        align-items: baseline;
        margin-bottom : 10px;
    }
    #CONCEPT a
    {
        margin: 20px auto 10px;
    }
    #MODEL_HOUSE_BANNER > div
    {
        width : 60%;
        background-color : rgba(70,70,70, 0.9);
    }
    #MODEL_HOUSE_BANNER
    {
        background-size: 100%;
    }
    #PLAN_LIST ul
    {
        margin : 10px auto;
        width : 90%;
        grid-template-columns: 1fr;
        border: 3px solid var(--color-beige);
    }
    #PLAN_LIST ul li:nth-of-type(n+2)
    {
        border-top: 2px solid var(--color-beige);
    }
    #TOP_MERIT ul li {
        font-size: 24px;
    }
    #TOP_MERIT ul li span:nth-of-type(1)
    {
        font-size: 36px;
    }
    .content_two_column h3
    {
        margin : 0px;
    }
    .content_two_column h3,
    #PAGE_TITLE h1
    {
        font-weight: 500;
    }
    #CONCEPT h2,
    #CONCEPT h3
    {
        font-weight: normal;
    }
    #CONCEPT h3 {
    font-size: 28px;
  }
}