﻿.as3__as3 {
    border-top: 1px solid var(--gray3);
    margin-bottom: 32px
}

.as3 {
    margin: 0 auto;
    padding: 32px 0 0;
    width: 100%
}

.as3c__as-flex {
    display: flex;
    width: 100%
}

.as-flex__pc {
    height: 366px;
    max-width: 50%;
    width: 50%
}

.as-flex__dc {
    display: flex;
    align-items: center;
    background-color: var(--gray4);
    border-radius: 0 8px 8px 0;
    flex-direction: column;
    justify-content: center;
    padding: 24px;
    width: 50%
}

.pc__pm {
    display: block;
    position: relative;
    height: 366px;
    min-height: 0;
    padding-bottom: 55.75868372943328%;
    overflow: hidden
}

.pm__image {
    display: block;
    position: absolute;
    border-radius: 8px 0 0 8px;
    height: 100%;
    left: 0;
    max-width: 100%;
    object-fit: cover;
    object-position: center center;
    top: 0;
    width: 100%
}

.dc__info,
.info__description,
.info__title {
    max-width: 340px;
    text-align: center
}

.dc__info {
    display: flex;
    align-items: center;
    flex-direction: column;
    gap: 24px
}

.info__title {
    color: var(--bblack);
    font-family: "sf-pro-text-semibold";
    font-size: 32px;
    color: var(--bblack);
    line-height: 38px;
    max-height: 38px;
    margin: 0;
    overflow: hidden;
    letter-spacing: -.02em
}

.description__text {
    color: var(--bblack);
    font-family: "sf-pro-text-regular";
    font-size: 14px;
    line-height: 22px;
    margin: 0;
    text-align: center
}

.info__button {
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: center
}

.as3c__as-flex--reverse {
    flex-direction: row-reverse
}

.pm__image--reverse {
    border-radius: 0 8px 8px 0
}

.as-flex__dc--reverse {
    border-radius: 8px 0 0 8px
}

@media screen and (min-width:1024px) {
    .as3__as3c {
        max-width: 1220px;
        margin: 0 auto
    }

    .decription__text {
        max-height: 66px;
        overflow: hidden
    }
}

@media screen and (max-width:767px) {
    .as3 {
        padding: 32px 0 0
    }

    .as3c__as-flex {
        flex-direction: column
    }

    .pm__image {
        border-radius: 8px 8px 0 0
    }

    .as-flex__dc {
        border-radius: 0 0 8px 8px;
        padding: 8px;
        width: 100%
    }

    .as-flex__pc {
        max-width: unset;
        height: auto;
        width: 100%
    }

    .pc__pm {
        height: 100%
    }

    .info__title {
        font-size: 28px
    }
}

@media screen and (min-width:750px) and (max-width:1220px) {
    .as3 {
        padding: 32px 12px 0
    }
}

@media screen and (max-width:749px) {
    .as3 {
        padding: 32px 12px 0
    }
}
