.three__point {
    margin-top: 137px;
    position: relative;
}

.three__point-title {
    position: relative;
}

.three__point-title::after {
    content: "";
    display: block;
    background-image: url(./image/three_point-border.png);
    background-position: left;
    background-repeat: no-repeat;
    background-size: contain;
    position: absolute;
    width: 371px;
    bottom: -12px;
    left: 0;
    aspect-ratio: 371 / 12;
}

.section__title-box {
    position: relative;
}

.three__main-text {
    font-size: 32px;
    font-weight: 900;
}

.three__text-box {
    text-align: center;
    margin-top: 48px;

    display: flex;
    flex-direction: column;
    row-gap: 10px;
}

.span01 {
    color: #CB2A2D;
}

.span02 {
    color: #D56B3F;
}

.span03 {
    color: #4D9C69;
}

.three_sub-text {
    font-size: 25px;
}

.three__point-container {
    margin-top: 137px;
    display: flex;
    flex-direction: column;
    row-gap: 173px;
    padding-bottom: 21.4%;
}

.three__point-box {
    display: flex;
    justify-content: center;
    column-gap: 46px;
    align-items: center;
}

.three__img01 {
    width: 41.4%;
    height: 100%;
    z-index: 20;
}

.three__text-group {
    width: 36.7%;

    display: flex;
    flex-direction: column;
    row-gap: 30px;
    z-index: 10;
}

.num__icon01 {
    width: 76px;
}

.three__num-group {
    display: flex;
    column-gap: 30px;
    align-items: center;

    border-bottom: dashed 1px #4D4D4D;
    padding-bottom: 14px;
}

.three_title01 {
    font-size: 30px;
    font-weight: 900;
    color: #CB2A2D;
}

.three_title02 {
    font-size: 30px;
    font-weight: 900;
    color: #D56B3F;
}

.three_title03 {
    font-size: 30px;
    font-weight: 900;
    color: #4D9C69;
}

.three__point-box02 .three__img02 {
    order: 2;
}

.three__point-box02 .three__text-group {
    order: 1;
}

.three__img02 {
    width: 49.8%;
    z-index: 20;
}

.num__icon02 {
    width: 96px;
}

.three__img03 {
    width: 37.5%;
    z-index: 20;
}

.num__icon03 {
    width: 70px;
}

.three__point-box02 {
    justify-content: end;
}

.three__point-box01 {
    position: relative;
}


.three__point-box01::before {
    content: "";
    display: block;
    background-image: url(./image/three_01-bg.png);
    background-position: center;
    background-repeat: no-repeat;
    background-size: contain;
    top: -30px;
    left: 0;
    position: absolute;
    width: 100%;
    height: 115%;

    animation: fuwafuwa 6s ease-in-out infinite;
}

@keyframes fuwafuwa {
    0% {
        transform: translate(0, 0) scale(1);
    }

    25% {
        transform: translate(3px, -6px) scale(1.02);
    }

    50% {
        transform: translate(-3px, -10px) scale(0.98);
    }

    75% {
        transform: translate(2px, -6px) scale(1.01);
    }

    100% {
        transform: translate(0, 0) scale(1);
    }
}




.three__point-box02 {
    position: relative;
}

.three__point-box02::before {
    content: "";
    display: block;
    background-image: url(./image/three_02-bg.png);
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    top: 0;
    left: 0;
    position: absolute;
    width: 100%;
    height: 100%;

    animation: fuwafuwa 6s ease-in-out infinite;
}

@keyframes fuwafuwa {
    0% {
        transform: translate(0, 0) scale(1);
    }

    25% {
        transform: translate(3px, -6px) scale(1.02);
    }

    50% {
        transform: translate(-3px, -10px) scale(0.98);
    }

    75% {
        transform: translate(2px, -6px) scale(1.01);
    }

    100% {
        transform: translate(0, 0) scale(1);
    }
}



.three__point-box03 {
    position: relative;
}

.three__point-box03::before {
    content: "";
    display: block;
    background-image: url(./image/three_03-bg.png);
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    top: -10px;
    left: 0;
    position: absolute;
    width: 100%;
    height: 115%;

    animation: fuwafuwa 6s ease-in-out infinite;
}

@keyframes fuwafuwa {
    0% {
        transform: translate(0, 0) scale(1);
    }

    25% {
        transform: translate(3px, -6px) scale(1.02);
    }

    50% {
        transform: translate(-3px, -10px) scale(0.98);
    }

    75% {
        transform: translate(2px, -6px) scale(1.01);
    }

    100% {
        transform: translate(0, 0) scale(1);
    }
}

.three__point::after {
    content: "";
    display: block;
    background-image: url(./image/three_point-bg.png);
    background-position: bottom;
    background-repeat: no-repeat;
    background-size: cover;
    bottom: 0;
    left: 0;
    width: 100%;
    aspect-ratio: 1440 / 162;
    position: absolute;
}

/* message */
.message {
    padding-top: 70px;
    position: relative;
    padding-bottom: 252px;
    background-color: #FFE6C2;
}

.message::before {
    content: "";
    display: block;
    background-image: url(./image/message__bg.png);
    background-position: bottom;
    background-repeat: no-repeat;
    background-size: contain;

    width: 100%;
    position: absolute;
    aspect-ratio: 1153 / 1041;
    right: -206px;
    bottom: 13%;
    width: 1153px;
}

.message__title::after {
    content: "";
    display: block;
    background-image: url(../about/image/message_border.png);
    background-position: left;
    background-repeat: no-repeat;
    background-size: contain;
    position: absolute;
    width: 214px;
    bottom: -12px;
    left: 0;
    aspect-ratio: 214 / 12;
}

.message__inner {
    z-index: 10;
    position: relative;

}

.message__title-border {
    width: 19.1%;
}

.message__container {
    display: flex;
    justify-content: space-between;
    margin-top: 111px;
    margin-bottom: 160px;
}

.message__left {
    width: 51%;
}

.message__right {
    width: 42.8%;
}

.message__sign02 {
    display: flex;
    align-items: center;
    justify-content: end;

}

.sign__sub {
    width: 25.8%;
}

.sign__name {
    width: 32.8%;
}

.message__main {
    font-size: 25px;
    font-weight: 900;
    margin-bottom: 50px;
    margin-left: 8.5%;
}

.message__box-text02 {
    margin-left: 8.5%;
}

.message__box {
    display: flex;
    flex-direction: column;
    row-gap: 41px;

    margin-bottom: 50px;
}

.message__box-text {
    display: flex;
    column-gap: 12px;
    position: relative;
}

.message__box-text::before {
    content: "";
    display: block;
    min-width: 35px;
    width: 35px;
    min-height: 35px;
    height: 35px;
    background-color: #fff;
    border-radius: 50%;
}

.message__box-text0::after {
    content: "";
    display: block;
    background-image: url(./image/message_arrow02.png);
    background-position: left;
    background-repeat: no-repeat;
    background-size: contain;
    width: 35px;
    height: 150%;
    position: absolute;
    top: 30px;
    left: 17px;
}


.message__box-text00::after {
    content: "";
    display: block;
    background-image: url(./image/message_arrow02.png);
    background-position: left;
    background-repeat: no-repeat;
    background-size: contain;
    width: 35px;
    height: 150%;
    position: absolute;
    top: 30px;
    left: 17px;
}

.message__box-text01::after {
    content: "";
    display: block;
    background-image: url(./image/message_arrow02.png);
    background-position: left;
    background-repeat: no-repeat;
    background-size: contain;
    width: 100%;
    height: 120%;
    position: absolute;
    top: 32px;
    left: 17px;
}

.about__button-container {
    display: flex;
    justify-content: center;
    column-gap: 56px;
}

.lower__button02 {
    background-color: #E3A145;
    color: #fff;
    padding: 12px 30px;
}



@media (max-width:960px) {
    .three__point {
        margin-top: 40px;
    }

    .three__point-title::after {
        aspect-ratio: 263 / 12;
        width: 263px;
    }

    .three__main-text {
        font-size: 22px;
    }

    .three_sub-text {
        font-size: 18px;
    }

    .three__point-container {
        margin-top: 88px;
        padding-bottom: 198px;
    }

    .three__point-box {
        justify-content: space-between;
    }

    .three__img01 {
        width: 43.3%;
    }

    .three__text-group {
        width: 50%;
        row-gap: 25px;
    }

    .three_title01 {
        font-size: 26px;
    }

    .three__text {
        font-size: 17px;
    }

    .num__icon01 {
        width: 44px;
    }

    .three__num-group {
        padding-bottom: 21px;
        column-gap: 15px;
    }

    .three__point-box01::before {
        background-image: url(./image/three_01-bgtb.png);
    }

    .three__point-box02::before {
        background-image: url(./image/three_02-bgtb.png);
        top: -35px;
        height: 120%;
        background-size: contain;
    }

    .three__point-box03::before {
        background-image: url(./image/three_03-bgtb.png);
        background-size: contain;
        top: -75px;
        height: 155%;
    }

    .message {
        padding-top: 50px;
        padding-bottom: 154px;
    }

    .message__title::after {
        width: 151px;
        aspect-ratio: 151 / 12;
    }

    .message__main {
        font-size: 20px;
    }

    .message__box-text {
        font-size: 16px;
        column-gap: 10px;
    }

    .message__box {
        row-gap: 25px;
        margin-bottom: 20px;
    }

    .message__box-text02 {
        margin-top: 5px;
        font-size: 16px;
    }

    .message__box-text::before {
        width: 20px;
        height: 20px;
    }

    .message__box-text0::after {
        top: 24px;
        left: 17px;
    }

    .message__box-text00::after {
        height: 90%;
        position: absolute;
        top: 35px;
        left: 17px;
    }

    .message__box-text01::after {
        width: 35px;
        height: 110%;
        position: absolute;
        top: 25px;
        left: 17px;
    }

    .message__right {
        width: 51.2%;
        width: 39.5vw;
        margin-right: calc(54% - 50vw);
        display: flex;
        align-items: flex-end;
    }

    .message__container {
        margin-bottom: 70px;
        margin-top: 72px;
    }

    .message::before {
        width: 86%;
        aspect-ratio: 783 / 700;
        bottom: 13%;
    }

    .three_title02 {
        font-size: 26px;
    }

    .three_title03 {
        font-size: 26px;
    }

    .num__icon02 {
        width: 70px;
    }

    .three__num02-group {
        column-gap: 3px;
    }

    .three__img02 {
        width: 45vw;
        margin-right: calc(52% - 50vw);
    }

    .three__img03 {
        width: 42%;
    }

    .num__icon03 {
        width: 46px;
    }

}



@media (max-width:768px) {
    .three__point {
        margin-top: 20px;
    }

    .three__point-title::after {
        background-image: url(./image/three_point-bordersp.png);
        width: 213px;
        bottom: -8px;
        aspect-ratio: 213 / 8;
    }

    .three__main-text {
        font-size: 16px;
    }

    .three_sub-text {
        font-size: 15px;
    }

    .three__text-box {
        margin-top: 30px;
        row-gap: 20px;
    }

    .three__point-box {
        flex-direction: column;
    }

    .three__img01 {
        order: 2;
    }

    .three__img03 {
        order: 2;
    }

    .three__text-group {
        order: 1;
    }

    .three__text-group {
        width: 100%;
    }


    .three_title01,
    .three_title02,
    .three_title03 {
        font-size: 21px;
    }

    .three__img01 {
        width: 100%;
        margin-top: 50px;
    }

    .three__img03 {
        width: 93.6%;
        margin-top: 80px;
    }

    .three__img02 {
        margin-top: 30px;
        width: 111%;
    }

    .three__point-box01::before {
        content: "";
        display: block;
        background-image: url(./image/three_01-bgsp.png);
        top: 140px;
    }

    .three__point-box02::before {
        content: "";
        display: block;
        background-image: url(./image/three_02-bgsp.png);
        background-size: contain;
        top: 100px;
    }

    .three__text {
        font-size: 17px;
    }

    .three__point-box03::before {
        content: "";
        display: block;
        background-image: url(./image/three_03-bgsp.png);
        background-size: contain;
        top: 15px;
    }

    .three__point-container {
        row-gap: 120px;
        margin-top: 70px;
        padding-bottom: 192px;
    }

    .three__num-group {
        justify-content: center;
        column-gap: 15px;
        margin-right: 10px;
        padding-bottom: 25px;
    }

    .num__icon01 {
        width: 38px;
    }

    .num__icon02 {
        width: 61px;
    }

    .three__num02-group {
        column-gap: 5px;
    }

    .num__icon03 {
        width: 40px;
    }

    .message__title::after {
        background-image: url(../about/image/message__border-sp.png);
        width: 125px;
        bottom: -8px;
        left: 0;
        aspect-ratio: 125 / 12;
    }


    .message__container {
        flex-direction: column;
        margin-bottom: 80px;
        margin-top: 37px;
    }

    .message__left {
        order: 2;
        width: 91.8%;
        margin-top: 30px;
    }

    .message__right {
        order: 1;
        width: 100%;
        display: flex;
        justify-content: space-between;
    }

    .message__inner {
        width: 88.8%;
    }

    .message__sign {
        display: flex;
        flex-direction: column;
        width: 40%;
        align-items: normal;
        justify-content: center;
        margin-top: 9px;
        row-gap: 11px;
        margin-left: 21px;
    }

    .message__img-box {
        width: 59.8%;
    }

    .sign__sub {
        width: 72.3%;
    }

    .sign__name {
        margin-left: 22px;
        width: 80.6%;
    }

    .message__main {
        font-size: 18px;
        text-align: center;
        margin-bottom: 30px;
        margin-left: 0;
    }

    .message__box {
        font-size: 15px;
        row-gap: 20px;
        margin-bottom: 0;
    }

    .message {
        padding-bottom: 93px;
        padding-top: 29px;
    }

    .message::before {
        background-image: url(./image/message__bg-sp.png);
        background-position: top;
        aspect-ratio: 420 / 389;
        right: -85px;
        top: 3%;
        width: 420px;
    }

    .message__box-text0::after {
        background-image: url(./image/message_arrow03.png);
        height: 105%;
        top: 17px;
        left: 7px;
    }

    .message__box-text00::after {
        background-image: url(./image/message_arrow02.png);

        height: 160%;
        top: 10px;
        left: 7px;
    }

    .message__box-text01::after {
        height: 145%;
        top: 10px;
        left: 7px;
    }

    .message__box-text::before {
        width: 17px;
        height: 17px;
        min-width: 17px;
        min-height: 17px;
    }

    .message__box-text {
        font-size: 15px;
    }

    .message__box-text02 {
        font-size: 15px;
        margin-left: 8.1%;
    }





}