
body.wedding_plan header li.nav-wedding_plan::after {
    display: block;
}

/* ==============================
  ページタイトル
============================== */
.page-title-wrap  {
    padding:  5.27% 0 4.77%;
}
.page-title-wrap h1 {
    width: 39.17%;
    margin: 0 auto;
}
.page-title-wrap h1 span.jp {
    display: block;
    width: 9.35%;
    margin: 0.7em auto 0;
}
@media print, screen and (max-width: 768px) {
    .page-title-wrap  {
        padding: 34.74vw 0 15.62vw;
    }
    .page-title-wrap h1 {
        width: 62.133vw;
    }
    .page-title-wrap h1 span.jp {
        width: 11.733vw;
    }
}

/* ==============================
  共通
============================== */
.wedding_plan-wrap {
    border-top: 1px solid #ccc;
    border-bottom: 1px solid #ccc;
    padding: 5.71% 0 8.06%;
}
@media print, screen and (max-width: 768px) {
    .wedding_plan-wrap {
        padding: 11.2vw 0 13.333vw;
    }
}
/* ==============================
  一覧ページ
============================== */

#archive .wedding_plan-wrap .wedding_plan-list {
    display: flex;
    flex-wrap: wrap;
    align-items: flex-start;
    width: 67.42%;
    max-width: 921px;
    margin: 5.9% auto 0px;
    grid-row-gap: 75px;
    grid-column-gap: 7.3%;
}
#archive .wedding_plan-wrap li {
    position: relative;

    width: 28.43%;
}
#archive .wedding_plan-wrap li a {
    text-decoration: none;
}
#archive .wedding_plan-wrap li a:hover .price-wrap {
    background-color: #fff;
    z-index: 1;
}
#archive .wedding_plan-wrap li .price-wrap {
    position: absolute;
    top: -13.1%;
    left: -10.8%;

    display: flex;
    overflow: hidden;
    align-items: center;
    flex-direction: column;
    justify-content: center;

    width: 4.63em;
    height: 4.63em;

    text-align: center;

    border: 1px solid #32ADC6;
    background-color: #FFFFFF;

    font-size: min(1.68vw, 2.3rem);
    color: #231815;
}
#archive .wedding_plan-wrap li .price-wrap p.member {
    font-size: min(1.68vw, 2.3rem);
    line-height: 1.5;
}
#archive .wedding_plan-wrap li .price-wrap p.member span {
    font-size: min(1.09vw, 1.5rem);
}
#archive .wedding_plan-wrap li .price-wrap p.price {
    font-size: min(1.39vw, 1.9rem);
}
#archive .wedding_plan-wrap li .price-wrap p.price span {
    font-size: min(0.95vw, 1.3rem);
}

#archive .wedding_plan-wrap li img {
    width: 100%;
    height: auto;
}

#archive .wedding_plan-wrap li img + p {
    margin-top: 7.58%;

    font-size: min(1.02vw, 1.4rem);
    color: #231815;
}

#archive .wedding_plan-wrap .btn-wrap {
    width: 14.8%;
    max-width: 203px;
    margin: 4.6% auto 0;
}
#archive .wedding_plan-wrap .btn-wrap a img {
    width: 3.8em;
}
#archive .more-button-wrap {
    text-align: center;
    margin-top: 78px;
}
#archive .more-button-wrap button {
    border: 0;
    border-bottom: 1px solid #000;
    padding-bottom: 10px;
    background: initial;
    cursor: pointer;
}
#archive .more-button-wrap button span img {
    width: 3.953vw;
}
@media print, screen and (max-width: 768px) {
    #archive .wedding_plan-wrap .wedding_plan-list {
        flex-direction: column;
        width: 62.4vw;
        max-width: none;
        grid-row-gap: 14.133vw;
/*        width: 100vw;
        max-width: 100vw;*/
        margin: 18.11vw auto 0;
    }

    #archive .wedding_plan-wrap li {
        position: relative;

        width: 62.43vw;
    }
    #archive .wedding_plan-wrap li .price-wrap {
        top: -6.4vw;
        left: -4.5vw;

        width: 22.92vw;
        height: 22.92vw;

        font-size: 5.06vw;
    }
    #archive .wedding_plan-wrap li .price-wrap p.member {
        font-size: 5.06vw;
    }
    #archive .wedding_plan-wrap li .price-wrap p.member span {
        font-size: 3.2vw;
    }
    #archive .wedding_plan-wrap li .price-wrap p.price {
        font-size: 4vw;
    }
    #archive .wedding_plan-wrap li .price-wrap p.price span {
        font-size: 2.9vw;
    }

    #archive .wedding_plan-wrap li img {
        width: 100%;
        height: auto;
    }

    #archive .wedding_plan-wrap li img + p {
        margin-top: 3.4vw;

        font-size: 3.2vw;
    }
    #archive .more-button-wrap {
        margin-top: 13.333vw;
    }
    #archive .more-button-wrap button {
        padding-bottom: 2.667vw;
    }
    #archive .more-button-wrap button span img {
        width: 12vw;
    }
}

/* ==============================
  詳細ページ
============================== */
#article {
    border-bottom: 1px solid #CCCCCC;
}
#article .wedding_plan-wrap {
    border-bottom: 0;
    display: flex;
    flex-direction: row;
    border-bottom: 1px solid #CCCCCC;
}
#article .side_menu-wrap ul {
    display: flex;
    flex-direction: column;
    margin-left: 19.7%;
}
#article .side_menu-wrap ul li {
    width: 100%;
    font-size: min(1.46vw, 2rem);
    line-height: 1;
    padding-left: 1em;
    box-sizing: border-box;
    opacity: 0.6;
    border-left: 3px solid #FFF;
}
#article .side_menu-wrap ul li.active {
    border-color: #32adc6;
    opacity: 1;
}
#article .side_menu-wrap ul li + li {
    margin-top: 1.5em;
}
#article .side_menu-wrap ul li img,
#article .side_menu-wrap ul li a img {
    width: auto;
    height: 1em;
}

#article .wedding_plan-wrap .wedding_plan-inner {
    display: flex;
    width: 61.57%;
    max-width: 841px;
    margin: 0 auto;
    grid-column-gap: 7.49%;
}

#article .wedding_plan-wrap .wedding_plan-inner .price-wrap {
    display: flex;
    overflow: hidden;
    align-items: center;
    flex-direction: column;
    justify-content: center;
    width: 12.006vw;
    max-width: 162px;
    height: 12.006vw;
    max-height: 162px;
    text-align: center;
    border: 1.93px solid #32ADC6;
    background-color: #FFFFFF;
    /*font-size: min(1.68vw, 2.3rem);*/
}
#article .wedding_plan-wrap .wedding_plan-inner .price-wrap .member {
    font-size: min(2.64vw, 3.6rem);
}
#article .wedding_plan-wrap .wedding_plan-inner .price-wrap .member span {
    font-size: min(1.76vw, 2.4rem);
}
#article .wedding_plan-wrap .wedding_plan-inner .price-wrap .price {
    font-size: min(2.12vw, 2.9rem);
}
#article .wedding_plan-wrap .wedding_plan-inner .price-wrap .price span {
    font-size: min(1.54vw, 2.1rem);
}
#article .wedding_plan-wrap .wedding_plan-inner .wedding_plan-detail-wrap {
    width: 72.77%;
    max-width: 612px;
}
#article .wedding_plan-wrap .wedding_plan-inner .wedding_plan-detail-wrap h2 {
    font-size: min(1.76vw, 2.4rem);
    font-weight: 500;
    line-height: 1.65;
    letter-spacing: 0.12em;
    color: #2B99B0;
}
#article .wedding_plan-wrap .wedding_plan-inner .wedding_plan-detail-wrap h2::after {
    content: none;
}
#article .wedding_plan-wrap .wedding_plan-inner .wedding_plan-detail-wrap .detail-price-wrap {
    font-size: min(1.32vw, 1.8rem);
    line-height: 1.72;
    letter-spacing: 0.1em;
    margin-top: 15px;
    color: #3E3A39;
}
#article .wedding_plan-wrap .wedding_plan-inner .wedding_plan-detail-wrap .tag-wrap {
    display: flex;
    flex-wrap: wrap;
    margin-top: 15px;
    grid-column-gap: 5px;
    grid-row-gap: 5px;
}
#article .wedding_plan-wrap .wedding_plan-inner .wedding_plan-detail-wrap .tag-wrap li {
    font-size: min(1.02vw, 1.4rem);
    letter-spacing: 0.1em;
    line-height: 1.7;
    color: #040000;
    border: 1px solid #32ADC6;
    background-color: #FFFFFF;

    width: 17.32%;
    text-align: center;
}
#article .wedding_plan-wrap .wedding_plan-detail-wrap .img {
    margin-top: 50px;
    width: 100%;
    max-width: 612px;
}
#article .wedding_plan-wrap .wedding_plan-detail-wrap .catch-text {
    font-size: min(1.24vw, 1.7rem);
    line-height: 1.88;
    letter-spacing: 0.14em;
    color: #3E3A39;

    margin-top: 35px;;
}
#article .wedding_plan-wrap .wedding_plan-detail-wrap .plan-list {
    margin-top: 6.54%;
}
#article .wedding_plan-wrap .wedding_plan-detail-wrap dl {
    display: flex;
    align-items: center;
}
#article .wedding_plan-wrap .wedding_plan-detail-wrap dl dt {
    font-size: min(1.02vw, 1.4rem);
    line-height: 1.42;
    letter-spacing: 0.1em;
    color: #2B99B0;
    width: 26.14%;
    max-width: 160px;

    padding: 10px 0;
}
#article .wedding_plan-wrap .wedding_plan-detail-wrap dl dd {
    font-size: min(1.02vw, 1.4rem);
    line-height: 2;
    letter-spacing: 0.14em;
    color: #3E3A39;
    flex: 1;
    border-left: 1px solid #3E3A39;
    padding-left: 4.08%;
}
#article .wedding_plan-wrap .wedding_plan-detail-wrap dl + dl {
    margin-top: 35px;
}
#article .wedding_plan-wrap .wedding_plan-detail-wrap .plan-item + .plan-item {
    margin-top: 11.44%;
    padding-top: 12.25%;
    border-top: 1px solid #3E3A39;
}
#article .wedding_plan-wrap .wedding_plan-detail-wrap h4 {
    font-size: min(1.76vw, 2.4rem);
    font-weight: 500;
    line-height: 1.7;
    letter-spacing: 0.12em;
    color: #2B99B0;
}
#article .wedding_plan-wrap .wedding_plan-detail-wrap #service h4:not(:first-child) {
    margin-top: 5.44%;
}
#article .wedding_plan-wrap .wedding_plan-detail-wrap #service h5 {
    font-size: min(1.46vw, 2rem);
    font-weight: 500;
    line-height: 1.7;
    letter-spacing: 0.12em;
    color: #2B99B0;
    margin-top: 5.44%;
}
#article .wedding_plan-wrap .wedding_plan-detail-wrap #service .text {
    font-size: min(1.02vw, 1.4rem);
    line-height: 2;
    letter-spacing: 0.14em;
    color: #3E3A39;
    margin-top: 3.44%;
}
#article .wedding_plan-wrap .wedding_plan-detail-wrap #fair p {
    font-size: min(1.61vw, 2.2rem);
    font-weight: 500;
    line-height: 1.72;
    letter-spacing: 0.18em;
    text-align: center;
    color: #3E3A39;
}
#article .wedding_plan-wrap .wedding_plan-detail-wrap #fair .btn-wrap {
    width: 45.42%;
    max-width: 278px;
    margin: 5.72% auto 0;
}
#article .wedding_plan-wrap .wedding_plan-detail-wrap #fair .btn-wrap img {
    width: 46.76%;
    max-width: 130px;
}
@media print, screen and (max-width: 768px) {
    #article .wedding_plan-wrap .side_menu-wrap {
        display: none;
    }
    #article .wedding_plan-wrap .wedding_plan-inner {
        flex-direction: column;
        width: 85.07%;
        max-width: none;
        grid-column-gap: 0;
    }
    #article .wedding_plan-wrap .wedding_plan-inner .price-wrap {
        width: 22.667vw;
        max-width: none;
        height: 22.667vw;
        max-height: none;
    }
    #article .wedding_plan-wrap .wedding_plan-inner .price-wrap .member {
        font-size: 5.067vw;
    }
    #article .wedding_plan-wrap .wedding_plan-inner .price-wrap .member span {
        font-size: 3.2vw;
    }
    #article .wedding_plan-wrap .wedding_plan-inner .price-wrap .price {
        font-size: 4vw;
    }
    #article .wedding_plan-wrap .wedding_plan-inner .price-wrap .price span {
        font-size: 2.933vw;
    }
    #article .wedding_plan-wrap .wedding_plan-inner .wedding_plan-detail-wrap {
        width: 100%;
        max-width: none;

        margin-top: 6.667vw;
    }
    #article .wedding_plan-wrap .wedding_plan-inner .wedding_plan-detail-wrap h2 {
        font-size: 5.333vw;
    }
    #article .wedding_plan-wrap .wedding_plan-inner .wedding_plan-detail-wrap .detail-price-wrap {
        font-size: 3.2vw;
        margin-top: 5.867vw;
    }
    #article .wedding_plan-wrap .wedding_plan-inner .wedding_plan-detail-wrap .tag-wrap {
        display: flex;
        margin-top: 4vw;
        grid-column-gap: 1.333vw;
        grid-row-gap: 1.333vw;
    }
    #article .wedding_plan-wrap .wedding_plan-inner .wedding_plan-detail-wrap .tag-wrap li {
        font-size: 3.04vw;

        width: 22.667vw;
    }
    #article .wedding_plan-wrap .wedding_plan-detail-wrap .img {
        margin-top: 8vw;
        width: 100%;
        max-width: none;
    }
    #article .wedding_plan-wrap .wedding_plan-detail-wrap .catch-text {
        font-size: 3.2vw;

        margin-top: 6.667vw;;
    }
    #article .wedding_plan-wrap .wedding_plan-detail-wrap .plan-list {
        margin-top: 9.333vw;
    }
    #article .wedding_plan-wrap .wedding_plan-detail-wrap dl dt {
        font-size: 3.733vw;
        width: 24vw;
        max-width: none;

        padding: 1.867vw 0;
    }
    #article .wedding_plan-wrap .wedding_plan-detail-wrap dl dd {
        font-size: 3.2vw;
        padding-left: 4.8vw;
    }
    #article .wedding_plan-wrap .wedding_plan-detail-wrap dl + dl {
        margin-top: 6.667vw;
    }
    #article .wedding_plan-wrap .wedding_plan-detail-wrap .plan-item + .plan-item {
        margin-top: 13.333vw;
        padding-top: 13.333vw;
    }
    #article .wedding_plan-wrap .wedding_plan-detail-wrap h4 {
        font-size: 6.4vw;
    }
    #article .wedding_plan-wrap .wedding_plan-detail-wrap #service h4:not(:first-child) {
        margin-top: 7.333vw;
    }
    #article .wedding_plan-wrap .wedding_plan-detail-wrap #service h5 {
        font-size: 4.333vw;
        margin-top: 7.333vw;
    }
    #article .wedding_plan-wrap .wedding_plan-detail-wrap #service .text {
        font-size: 3.2vw;
        margin-top: 3.333vw;
    }
    #article .wedding_plan-wrap .wedding_plan-detail-wrap #fair p {
        font-size: 5.867vw;
        letter-spacing: 0.1em;
    }
    #article .wedding_plan-wrap .wedding_plan-detail-wrap #fair .btn-wrap {
        width: 53.6vw;
        max-width: none;
        margin: 24px auto 0;
    }
    #article .wedding_plan-wrap .wedding_plan-detail-wrap #fair .btn-wrap img {
        width: 29.333vw;
        max-width: none;
    }
}