/* Co-EDO Marche reusable style v1.0 */
.coedo-marche{ --brown:#402103;
--cream:#faf6ef;
--line:#e5d8c9;
--muted:#69594b;color:#332820;font-family:inherit;
line-height:1.8;max-width:1100px;margin:auto}
.coedo-marche *{box-sizing:border-box}
.coedo-marche a{color:var(--brown)}
.coedo-marche .cm-hero{background:var(--brown);
color:#fff;text-align:center;
padding:clamp(32px,6vw,70px) 18px;border-radius:12px}
.coedo-marche .cm-hero p{margin:0;color:#f1e4d3}
.coedo-marche .cm-hero h2{color:#fff;font-size:clamp(26px,4vw,42px);margin:8px 0}
.coedo-marche .cm-vol{letter-spacing:.14em;font-weight:700}
.coedo-marche .cm-date{font-size:clamp(19px,3vw,27px);font-weight:700;margin-top:12px!important}
.coedo-marche .cm-lead{text-align:center;padding:34px 12px}
.coedo-marche .cm-lead h3,.coedo-marche .cm-section-title{color:var(--brown);font-size:clamp(21px,2.8vw,28px);margin:0 0 12px}
.coedo-marche .cm-section-title{text-align:center;margin:35px 0 22px}
.coedo-marche .cm-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.coedo-marche .cm-card{background:#fff;border:1px solid var(--line);border-radius:12px;overflow:hidden;box-shadow:0 3px 14px rgba(64,33,3,.06)}
.coedo-marche .cm-photo{display:block;width:100%;aspect-ratio:4/3;object-fit:cover;background:#efe8df}
.coedo-marche .cm-card-body{padding:18px}
.coedo-marche .cm-card h4{font-size:20px;color:var(--brown);margin:0 0 5px}
.coedo-marche .cm-category{font-size:12px;font-weight:700;letter-spacing:.06em;color:#806c57;margin:0 0 12px}
.coedo-marche .cm-card p{margin:0 0 12px}.coedo-marche .cm-details{border-top:1px solid var(--line);padding-top:12px;font-size:14px}
.coedo-marche .cm-button{display:inline-block;background:var(--brown);color:#fff!important;text-decoration:none;padding:9px 17px;border-radius:40px;font-weight:700;font-size:14px}
.coedo-marche .cm-button:hover{opacity:.85}.coedo-marche .cm-info{background:var(--cream);border-radius:12px;padding:24px;margin-top:38px}
.coedo-marche .cm-info dl{display:grid;grid-template-columns:90px 1fr;gap:9px 14px;margin:0}
.coedo-marche .cm-info dt{font-weight:700;color:var(--brown)}
.coedo-marche .cm-info dd{margin:0}
.coedo-marche .cm-note{font-size:13px;color:var(--muted)}
.coedo-marche .cm-footer{text-align:center;padding:32px 12px}
.coedo-marche .cm-footer a{font-weight:700}
@media(max-width:850px){.coedo-marche .cm-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.coedo-marche .cm-grid{grid-template-columns:1fr}.coedo-marche .cm-info dl{grid-template-columns:75px 1fr}
.coedo-marche .cm-card-body{padding:16px}}

/* 出店者カードの配置を整える */
.coedo-marche .cm-grid {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 20px !important;
    align-items: stretch;
}

.coedo-marche .cm-grid > .cm-card {
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    float: none !important;
}

/* タブレット */
@media (max-width: 850px) {
    .coedo-marche .cm-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }
}

/* スマートフォン */
@media (max-width: 600px) {
    .coedo-marche .cm-grid {
        grid-template-columns: 1fr !important;
    }
}

/* WordPressが自動挿入する空のpタグを除外 */
.coedo-marche .cm-grid > p:empty {
    display: none !important;
}

/* 出店者カード内部の空のpタグも非表示 */
.coedo-marche .cm-card > p:empty {
    display: none !important;
}


/* 出店者名のグレー背景を解除 */
.coedo-marche .cm-card h4 {
    background: transparent !important;
    background-color: transparent !important;
    border: none !important;
    border-left: none !important;
    box-shadow: none !important;
    padding: 0 !important;
    margin: 0 0 10px !important;

    color: #402103 !important;
    font-size: 20px;
    font-weight: 700;
    line-height: 1.5;
}

/* Instagramリンク */
.coedo-marche .cm-instagram {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    margin-top: 12px;
    padding: 6px 0;
    color: #402103 !important;
    background: transparent !important;
    border: none !important;
    border-bottom: 1px solid #d9c7b4 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    text-decoration: none !important;
    font-size: 13px;
    font-weight: 600;
    line-height: 1.5;
    transition: opacity .2s, border-color .2s;
}

.coedo-marche .cm-instagram:hover {
    opacity: .7;
    border-bottom-color: #402103 !important;
}

.coedo-marche .cm-instagram svg {
    flex-shrink: 0;
}
