@charset "utf-8";

html {
    font-size: 62.5%;
    /* 16px * 62.5% = 10px */
    width: 100%;
    box-sizing: border-box;
}

body {
    background-color: #fff;
    color: #333;
    font-family: "ヒラギノ角ゴ ProN W3", "Noto Sans JP", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", sans-serif;
    font-weight: 400;
    line-height: 2.4em;
    text-align: left;
    max-width: 700px;
    margin: 0 auto;
}

main {
    padding: 0 15px;
    letter-spacing: 0.1em;

}

div {
    padding-bottom: 10px;
    padding-top: 10px;
}

h1 {
    letter-spacing: 1;
    text-align: center;
}

h2 {
    font-size: 3.0em;
    background-color: #b5d3e2;
    margin: 0 0 30px;
    padding: 10px 20px;
    line-height: 1.2em;
}

h2 {
    @media(max-width:500px) {
        font-size: 2.6em;
    }
}

h3 {
    font-size: 2.4em;
    font-weight: 800;
    margin: 0 0 20px;
    padding: 8px 0;

}

@media(max-width:580px) {
    h3 {
        line-height: 1.3em;
    }
}

h4 {
    font-size: 2.2em;
    font-weight: 700;
    margin-bottom: 15px;
    margin-top: 0;
    padding: 10px;
    display: flex;
    border-top: solid 2px #11b2ed;
    border-bottom: solid 2px #11b2ed;
}

@media(max-width:530px) {
    h4 {
        line-height: 1.3em;
    }
}

h5 {
    font-size: 2.2em;
    font-weight: 600;
    line-height: 1.2em;
    margin: 0 0 10px;
    display: flex;
    gap: 5px;
}

p {
    font-size: 2.0em;
    font-weight: 400;
    margin: 0 0 35px 0;
    line-height: 1.5em;
    padding: 0 15px;
}

p {
    @media(max-width:500px) {
        font-size: 1.7em;
    }
}

ul {
    margin: 0 20px 30px;
}

ul {
    @media(max-width:500px) {
        padding-left: 20px;
    }
}

ul li {
    font-size: 2.0em;
    font-weight: 400;
    letter-spacing: 0.07em;
    line-height: 1.5em;
    list-style-type: none;
}

ul li {
    @media(max-width:500px) {
        font-size: 1.7em;
    }
}

img {
    padding: 0;
    margin: 0;
}


a:hover {
    opacity: 0.5;
}

*,
*:before,
*:after {
    /*html全てを選択している*/
    box-sizing: border-box;
}