main h1 + figure {
    margin-top:60px;
}
main h1 + figure div {
    margin-top:var(--gap);
}

main .cherry {
    display:flex;
    align-items: center;
    justify-content: center;
    container-type: inline-size;
    gap:30px;
    max-width: 800px;
    margin-inline:auto;
}
main .cherry li {
    flex:1;
    display:flex;
    align-items: center;
    justify-content: center;
    font-size:3.4cqw;
    line-height:1.2;
    color:var(--color-white);
    font-weight:bold;
    text-align: center;
    background:url(../_img/villa/cherry_bg.svg) center / contain no-repeat;
    aspect-ratio: 1;
    padding-top:1em;
}

main .feature article {
    background:var(--color-lightpink);
    border-radius:var(--radius);
    padding:calc(var(--padding) * 2);
    box-shadow:var(--shadow3);
    margin-top:100px;
}
main .feature article + article {
    margin-top:80px;
}
main .feature h2 {
    display:flex;
    align-items: center;
    justify-content: center;
    flex-wrap: nowrap;
    padding:10px 40px;
    line-height:1;
    border-radius:100px;
    font-size:1.2em;
    color:var(--color-pink);
    border:solid 2px var(--color-pink);
    background:var(--color-white);
    width:fit-content;
    white-space: nowrap;
    position:absolute;
    top:-20px;
    left:0;
}
main .feature h2 + div {
    margin-top:0;
}
main .feature h3 {
    color:var(--color-pink);
}


@media (max-width : 920px) {

}
@media (max-width : 720px) {
    main .feature article .g1 {
		flex:none !important;
		width:100%;
	}
}
@media (max-width : 520px) {
    main .feature h2 {
        left:50%;
        translate:-50% 0;
    }
    main .feature article {
        padding:var(--padding);
        padding-top:calc(var(--padding) * 2);
    }

    main .cherry {
        gap:10px;
    }
    main .cherry li {
        font-size:4cqw;
    }
}