/* 共通ブロック・テキストスタイル */
.block {
    /* padding: 上 右 下 左 */
    padding: 40px 40px 40px 40px;
    background-color: white;
}

/* ブロック背景色オプション */
.block-color-on {
    background-color: #f8f9fe;
}

h2 {
    font-size: 2rem;
    margin-bottom: 20px;
    color: #333;
    text-align: center;
}

h3 {
    font-size: 1.6rem;
    margin: 30px 0 15px 0;
    color: #555;
}

/* h3センター版 */
.h3-center {
    font-size: 1.6rem;
    margin: 30px 0 15px 0;
    color: #555;
    text-align: center;
}

p {
    font-size: 1rem;
    line-height: 1.8;
    margin-bottom: 20px;
    color: #666;
}

/* pセンター版 */
.p-center {
    font-size: 1rem;
    line-height: 1.8;
    margin-bottom: 20px;
    color: #666;
    text-align: center;
}

/* セクション内画像 */
.section-image {
    max-width: 100%;
    height: auto;
    display: block;
    /* margin: 上下 左右 */
    margin: 20px 0;
}

/* タブレット：768px〜1023px */
@media (max-width: 1023px) and (min-width: 768px) {
    .block {
        /* padding: 上 右 下 左 */
        padding: 30px 30px 30px 30px;
    }
    
    h2 {
        font-size: 1.8rem;
    }
    
    h3 {
        font-size: 1.3rem;
    }
    
    .h3-center {
        font-size: 1.3rem;
    }
}

/* スマホ：767px以下 */
@media (max-width: 767px) {
    .block {
        /* padding: 上 右 下 左 */
        padding: 20px 20px 20px 20px;
    }
    
    h2 {
        font-size: 1.6rem;
    }
    
    h3 {
        font-size: 1.2rem;
    }
    
    .h3-center {
        font-size: 1.2rem;
    }
}

/* テキストの色を変える */
/*
h2, h3, p {
    color: var(--color-spare);
}*/