body{
    box-sizing: border-box;
    margin: 0;
    font-family: sans-serif;
}

body ul{
    list-style-type: none;
}

header{
    width:100%;
    height: 100%;
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding:10px;
    padding-left: 50px;
    padding-right: 50px;
    background-color: #DF8543;
    box-sizing: border-box;
    color: white;
}

header p{
    font-size: 25px;
    font-weight: bold;
}

header div ul{
    display: flex;
    gap: 30px;
}

.header_button{
    color: white;
    text-decoration: none;
}

#top_image{
    width: 100%;
    height: auto;
    display: flex;
    justify-content: center;
    padding: 50px;
    padding-bottom: 0px;
    box-sizing: border-box;
    background-color: rgb(237, 226, 212);
}

#top_image img{
    width: 100%;
    max-width: 100%;
}

#top_main {
    width: 100%;
    height: auto;
    display: flex;
    flex-direction: column;
    align-items: center;
    padding: 50px;
    box-sizing: border-box;
    gap: 50px;
    background-color: rgb(237, 226, 212);
}

#top_title{
    width: 50%;
    display: flex;
    flex-direction: column;
    align-items: center;
}

#top_title h1{
    line-height: 40px;
    font-size: 32px;
}

.key_M {
    width: 100%;
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 50px;
}

.key_M_img{
    width: 35%;
    height: 300px;
}

.q_text{
    height: 100%;
    line-height: 0px;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: flex-start;
    gap: 10px;
    padding: 3px;
    padding-left:20px;
    padding-right: 20px;
}

.q_text li{
    font-size: 14px;
    line-height: 20px;
    font-weight: normal;
}

.circle{
    width: 100%;
    border-radius: 50%;
    background-color: burlywood;
}

#circle_01{
    background-color: rgb(217, 188, 99);
}

#circle_02{
    background-color: rgb(115, 160, 145);
}

.circle_height{
    padding-top: 100%;
    position: relative;
}

#p_img_1{
    position: absolute;
    left:20px;
    top: -30px;
    height: 120%;
}

#p_img_2{
    position: absolute;
    left:0px;
    top: -30px;
    height: 120%;
}

.key_M_text {
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    justify-content: space-between;
}

.key_M_text_01 h2{
    text-shadow: 1px 1px 3px rgb(104, 103, 103);
}

.key_M_text_02{
    width: 100%;
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.text_box{
    display: flex;
    flex-direction: column;
    height: 100%;
    border: solid 1px black;
    border-radius: 30px;
    background-color: white;
    padding: 20px;
}

.text_box p{
    padding: 30px;
    padding-top: 5px;
    padding-bottom: 5px;
}

footer {
    width:100%;
    height: 100%;
    display: flex;
    justify-content: flex-start;
    align-items: center;
    padding:10px;
    padding-left: 50px;
    padding-right: 50px;
    background-color: #DF8543;
    box-sizing: border-box;
    color: white;
}

footer ul {
    height: 120px;
    display: flex;
    flex-direction: column;
    flex-wrap: wrap;
    gap: 15px;
}

.button{
    background-color: #DF8543;
    border: solid 10px #DF8543;
    border-radius: 5px;
}

.button a{
    color: white;
    text-decoration: none;
}

@media screen and (max-width: 500px){
    header{
        width:100%;
        height:100%;
        display: flex;
        flex-direction: column;
        justify-content: space-between;
        align-items: center;
        padding:50px;
        padding-top: 0px;
        margin-top: 0px;
        background-color: #DF8543;
        box-sizing: border-box;
        color: white;
    }

    header div ul{
        display: flex;
        flex-wrap: wrap;
        align-items: center;
        justify-content: center;
        gap: 30px;
        padding: 10px;
        box-sizing: border-box;
    }

    .key_M {
        width: 100%;
        display: flex;
        flex-direction: column;
        justify-content: space-between;
        align-items: center;
        gap: 50px;
    }

    .circle{
        width: 100%;
        border-radius: 50%;
        background-color: burlywood;
    }

    .key_M_img{
        width: 70%;
        height: 300px;
    }

    #p_img_1{
        position: absolute;
        left:-30px;
        top: -60px;
        height: 390px;
    }
    
    #p_img_2{
        position: absolute;
        left:0px;
        top: -60px;
        height: 390px;
    }

    .key_M_text {
        width: 100%;
        height: 100%;
        display: flex;
        flex-direction: column;
        align-items: flex-end;
        justify-content: space-between;
        gap: 20px;
    }

    #key_M_SP{
        width: 100%;
        display: flex;
        flex-direction: column-reverse;
        justify-content: space-between;
        align-items: center;
        gap: 50px;
    }

    #top_title{
        width: 100%;
        display: flex;
        flex-direction: column;
        align-items: center;
    }

    footer {
        width:100%;
        height: 100%;
        display: flex;
        flex-direction: column;
        justify-content: flex-start;
        align-items: center;
        gap: 10px;
        padding:50px;
        padding-top: 0px;
        margin-top: 0px;
        background-color: #DF8543;
        box-sizing: border-box;
        color: white;
    }

    footer ul {
        height: 120px;
        display: flex;
        flex-direction: column;
        justify-content: center;
        align-items: center;
        flex-wrap: wrap;
        gap: 15px;
        box-sizing: border-box;
        padding: 0px;
    }
    
}
