    body {
        margin: 0;
        font-family: Inter, "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN", "Noto Sans JP", sans-serif;
        color: #222;
        background: #f8f7f5;
        line-height: 1.9;
    }

    main {
        max-width: 1100px;
        margin: 0 auto;
        padding: 0px 24px 120px;
        min-height:60vh;
    }

    img {
        max-width: 100%;
        height: auto;
        display: block;
    }

    /* ヘッダー */
    header {
        text-align: center;
        margin: 2em;
    }

    header img {
        max-width: 180px;
        margin: 0 auto;
    }

    /* セクション共通 */
    .section {
        display: grid;
        grid-template-columns: 1fr 1fr;
        gap: 96px;
        align-items: center;
        margin-bottom: 200px;
    }

    .section h2 {
        font-size: 12px;
        letter-spacing: 0.2em;
        color: #999;
        text-transform: uppercase;
    }

    .tagline {
        font-size: 14px;
        color: #666;
        margin-top: 24px;
    }

    .text {
        max-width: 460px;
    }

    .text p {
        line-height: 2.25;
        margin-bottom: 36px;
    }

    .section.reverse .image img {
        transform: translateY(-40px);
    }

div#copyrights {
    background: #f1f1ef;
}

div#copyrights .inner {max-width: 769px;margin: auto;padding: 1em;}

div#copyrights .inner .regal {
list-style: none;
    display: flex;
    gap: 2em;
    font-size: 90%;
    justify-content: center;
    margin: 0;
    padding:0;
}

a{
    text-decoration:none;
    color:#2196F3
}

a:hover{
    color:#80c7ff
}
.policy p, .policy li {
    font-size: 90%;
}

h1, h2 {
    font-size: 110%;
}
    /* PC：左右反転 */
    @media (min-width: 1025px) {
        .section.reverse .image {
            order: 2;
        }

        .section.reverse .text {
            order: 1;
        }
    }

    /* タブレット */
    @media (min-width: 769px) and (max-width: 1024px) {
        .section {
            grid-template-columns: 1fr;
            gap: 32px;
            margin-bottom: 100px;
        }
        .text {
            max-width: 90%;
        }
        .text p {
            line-height: 2.05;
            margin-bottom: 28px;
            font-size: 120%;
        }
        .policy p, .policy li {
            font-size: 120%;
        }
    }

    /* スマホ */
    @media (max-width: 768px) {
    main {
        padding-left: 15px;
        padding-right: 15px;
    }
        .section {
            grid-template-columns: 1fr;
            gap: 32px;
            margin-bottom: 100px;
        }

        .text p {
            line-height: 2.05;
            margin-bottom: 28px;
            font-size: 80%;
        }
        ul.regal li:first-child {
            flex: 1;
            min-width: 100%;
            text-align: center;
            margin: -.5em 0 .5em;
        }

        div#copyrights .inner .regal {
            flex-wrap: wrap;
            gap: 0 4em;
        }
    }

    /* フッター */
    footer {
        text-align: center;
        margin-top: 160px;
    }

    footer img {
        max-width: 180px;
        margin: 0 auto 40px;
    }

    footer p {
        font-size: 15px;
        color: #333;
    }




/* ロゴ meaning */
.logo-meaning img {
    max-width: 300px;
    margin: 4em auto;
}

.logo-meaning section {
    max-width: 480px;
    margin: auto;
    margin-bottom: 12em;
    border-top: 1px solid #ddd;
    padding-top: 6em;
}

.logo-meaning h2 {
    font-size: 150%;
    text-align: center;
    letter-spacing: 8px;
}

section.intro {
    margin-bottom: 6em;
}
    /* PC */
    @media (min-width: 1025px) {

    }
    /* タブレット */
    @media (min-width: 769px) and (max-width: 1024px) {
        .logo-meaning section {
    max-width: unset;
        }

        .logo-meaning section p {
            font-size: 130%;
        }
.logo-meaning section p br {
    display: none;
}
    }
    /* スマホ */
    @media (max-width: 768px) {
.logo-meaning section {
    margin-bottom: 6em;
    padding-top: 3em;
}

.logo-meaning h2 {letter-spacing: unset;}

.logo-meaning section {
    margin-bottom: 3em;
}

.logo-meaning section p br {
    display: none;
}
    }



.policy section{
    margin-bottom:4em;
}

.policy dl {
  display: grid;
  grid-template-columns: 200px 1fr;
  row-gap: 12px;
  column-gap: 24px;
}

.policy dt {
  font-weight: 600;
}

.policy dd {
  margin: 0;
}
