/**
 * For fixing event plugin.
 *
 * Fix original typography and layout.
 */

:root {
    --glwem-fs-base: 13px;
    --glwem-fs-xs: 11px;
    --glwem-fs-sm: 12px;
    --glwem-fs-md: 15px;
}

/**
 *  Top view
 */

.glwem-topview {
    margin-top: 0;
    padding: 0!important;
}

.glwem-topview::before {
    content: none;
}

.glwem-topview__title,
.glwem-topview__title:first-child,
.glwem-topview__subtitle {
    color: #40607b;
}

.glwem-topview__title,
.glwem-topview__title:first-child {
    text-align: center;
    font-size: 24px;
    font-family: "Crimson Pro", serif;
    font-weight: 300;
    padding: 0;
    letter-spacing: .1em;
    margin-bottom: 0;
}

.glwem-topview__title::after,
.glwem-topview__title:first-child::after {
    content: none;
}

.glwem-topview__subtitle {
    font-size: 12px;
    margin-bottom: 70px;
    line-height: 1;
    padding: 10px 0 0;
    font-family: "Noto Serif JP", "Hiragino Mincho ProN W3", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
}

.glwem-topview__list {
    max-width: 1200px;
    margin-bottom: 80px;
    padding: 0 20px;
}

.glwem-topview__list .glwem-event-card {
    width: calc(100% / 3 - 2%);
}

.glwem-event-card__header {
    height: 243px;
}

.glwem-event-card__content {
    padding: 28px 24px 20px;
}

.glwem-event-card__wrap {
    margin-bottom: 15px;
}

.glwem-accent-date__date:first-of-type,
.glwem-accent-date__date {
    font-size: 21px;
    font-style: normal;
    color: #40607b;
    font-weight: 400;
    margin-left: 0;
}

.glwem-accent-date__day-of-week {
    font-size: var(--glwem-fs-base);
    margin-left: 0;
    color: #40607b!important;
}

.glwem-event-card__title {
    line-height: 1.6;
    font-size: 1rem;
    font-weight: 300;
    color: #555555;
}

.glwem-topview__more-btn .glwem-btn {
    width: 260px;
    height: 36px;
    display: flex;
    font-size: 1rem;
    font-weight: 300;
    justify-content: center;
    align-items: center;
    border: 1px solid #a9976d;
    background-color: #ffffff;
    color: #847443;
    padding: 0;
    position: relative;
}

.glwem-topview__more-btn .glwem-btn:hover {
    background-color: #a9976d;
    color: #fff;
}

.glwem-topview__more-btn .glwem-btn::before,
.glwem-topview__more-btn .glwem-btn::after {
    content: "";
    display: block;
    position: absolute;
}

.glwem-topview__more-btn .glwem-btn::before {
    right: -18px;
    top: 0;
    bottom: 0;
    margin: auto;
    width: 38px;
    height: 1px;
    background-color: #847443;
}

.glwem-topview__more-btn .glwem-btn::after {
    right: -20px;
    bottom: calc(50% - .5px);
    margin: auto;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 4px 0 0 6px;
    border-color: transparent transparent transparent #847443;
}

@media screen and (max-width: 425px) {
    .glwem-topview__title,
    .glwem-topview__title:first-child {
        font-size: 21px;
    }

    .glwem-topview__subtitle {
        font-size: 14px;
        padding: 5px 0 0;
        margin-bottom: 28px;
    }

    .glwem-topview__list {
        margin-bottom: 50px;
    }

    .glwem-topview__list .glwem-event-card {
        width: 100%;
        margin: 20px 0 0;
        display: flex;
    }

    .glwem-event-card__header {
        height: 103px;
    }

    .glwem-event-card__content {
        padding: 20px 20px 0 20px;
    }

    .glwem-event-card__wrap {
        margin-bottom: 10px;
    }

    .glwem-accent-date__date:first-of-type,
    .glwem-accent-date__date {
        font-size: 17px;
    }
}

/**
 *  Index and details
 */

.glwem-content {
    padding-top: 80px;
    line-height: 1.6;
}

.glwem-event-search__squeeze-btn {
    font-size: var(--glwem-fs-md);
}

.glwem-content,
.glwem-md,
.glwem-event-item__label,
.glwem-event-item__ticket-list li,
.glwem-event-item__content-list li,
.glwem-event__ticket-list li,
.glwem-event__duration,
.glwem-event__tags li,
.glwem-event__body,
.glwem-event-gift dt, 
.glwem-event-gift dd,
.glwem-event-adviser__name,
.glwem-event-adviser__comment,
.glwem-event-contents__sub-title,
.glwem-event-contents__item-body {
    font-size: var(--glwem-fs-base);
    word-break: break-all;
}

.glwem-event-gift dd::after {
    width: 100%;
}

.glwem-event-adviser__name {
    margin-bottom: 10px;
}

@media screen and (max-width: 960px) {
    .glwem-content {
        padding-top: 12px;
    }

    .glwem-event-item__label {
        font-size: var(--glwem-fs-sm);
    }

    .glwem-event-item__button {
        margin-top: 24px;
    }
}

/**
 *  Reservation form
 */

 .glwem-booking-container {
     line-height: 1.6;
 }

.glwem-booking-container,
.glwem-booking-container__description,
.glwem-form__footer,
.glwem-form label, 
.glwem-form__no-input,
.glwem-form input, 
.glwem-form input[type="email"], 
.glwem-form input[type="tel"], 
.glwem-form textarea, 
.glwem-form select,
.glwem-booking-container .glwem-btn {
    font-size: var(--glwem-fs-base);
}

.glwem-form label, 
.glwem-form__no-input,
.glwem-form input, 
.glwem-form input[type="email"], 
.glwem-form input[type="tel"], 
.glwem-form textarea, 
.glwem-form select,
.glwem-booking-container .glwem-btn {
    line-height: 1.4;
}

.glwem-form__comment {
    font-size: var(--glwem-fs-sm);
}

.glwem-form__invalid-feedback li {
    font-size: var(--glwem-fs-xs);
}

.glwem-form__privacy-policy-message {
    margin-bottom: 12px;
}

@media screen and (max-width: 960px) {
    .glwem-secondary-btn--block {
        margin-bottom: 12px;
    }
}