@charset "UTF-8";

h2 {
    margin-bottom:20px;
}
h2::before {
    content:url(../common/img/bridal.png);
}

h3 {
    font-size:28px;
    margin-bottom:20px;
}
h4 {
    font-size:24px;
    margin-bottom:10px;
}
p {
    position:relative;
    z-index:1;
}
main p { font-size:20px; }
section:first-of-type {
    margin-top:20px;
}
.flexBox {
    margin-top:20px;
}
section .flexBox p {
    width:23%;
    object-fit:cover;
}
section .flexBox p:nth-of-type(n+5) {
    margin-top:20px;
}
.flexBox img {
    width:100%;
}
.price {
    margin-top:20px;
}
.price dl {
    display:flex;
    flex-wrap:wrap;
    font-size:20px;
}
.price dt, .price dd {
    border-bottom:1px solid #eb9535;
    padding:20px 0;
}
.price dt {
    width:30%;
    font-weight:bold;
}
.price dd {
    width:70%;
    text-align:right;
}
.notes {
    margin:20px 0 40px;
}
.notes ul {
    list-style-type:disc;
    list-style-position:inside;
    margin-top:10px;
}
.notes li {
    text-indent:-1em;
    padding-left:1em;
}

.notes strong {
    color:red;
}

@media (max-width: 768px){
    section:nth-of-type(2n) {
        padding:100px 0 80px;
    }
	section:nth-of-type(2n) div::before {
		right:-90%;
	}

    #ceremony .flexBox p {
        width:100%;
        margin-top:40px;
    }

    ol .flexBox p {
        width:100%;
    }
    ol li:not(:last-of-type){
        margin-bottom:120px;

    }
    .flow li:not(:last-of-type)::after {
        bottom:-12%; left:44%;
    }
    ol .flexBox p {
        margin-top:10px;
    }

    .price dt, .price dd { width:100%; }
    .price dt { border:none; padding:20px 0 0; }
    .price dd { text-align:left; padding:0 0 20px; }
}
