  @charset "utf-8";
  /* ===== Base ===== */
    :root{
        --c-primary:#e75a5a;
        --c-accent:#1e73be;   /* 見出しの青帯 */
        --c-muted:#6b7280;
        --c-border:#e5e7eb;
        --c-badge:#17a66d;
        --c-bg:#ffffff;
        --ichigeki-blue: #1146a8;
        --ichigeki-blue-dark: #023894;
        --ichigeki-red: #ff0000;
        --ichigeki-white: #ffffff;
    }

    /* ===== 共通見出し ===== */
    /* h2.section-title{
        font-size:1.1rem;
        color:#fff;
        background:var(--c-accent);
    } */

    /* ===== 検索条件 ===== */
    .ev_s form{
        margin: 16px 8px;
    }
    .grid{
        display:grid;
        gap:16px;
    }
    label{
        font-size: 16px;
    }

    .inline p{
        font-size: 20px;
        display: block;
        width: 20%;
    }
    .inline{
        display:flex;
        flex-wrap:wrap;
        gap:1.16px;
        align-items:center;
    }
    .inline > *{margin:2px}

    /* KAERUボタン、検索ボタンに影響が出るため、絞り込む必要あり */
    input, select,.ev_s button[type="button"]{
        appearance: auto;
        color: #555;
        border: #555 solid 1px;
        height: 40px;
        width: fit-content;
        padding: 8px;
        font-size: 14px;
        border-radius: 4px;
    }
    .ev_s button[type="button"]{
        background-color: #eee;
        width: 100px;
    }
    .ev_s button[type="button"].on{
        background-color: #0073e6;
        color: white;
    }
    .ev_s button[type="button"]::before{
        content: "\f601";
        font-family: 'Font Awesome 6 Free';
        font-weight: 900;
        margin-right: 4px;
    }
    select{
        color: #0073e6;
    }
    input[type='date']{
        width: fit-content;
        color: #0073e6;
        height: auto;

    }
    .checklist{
        display:flex;
        flex-wrap:wrap;
        gap:5px;
        padding-bottom: 12px;
    }
    .checklist label{
        display:flex;
        align-items:center;
        gap:6px;
        /* border: solid 1px; */
    }
    input[type='checkbox']{
        width: 20px;
        height: 20px;
        border-radius: 4px;
        border: #666 solid 1px;
        font-family: inherit;
        color: inherit;
    }
    .ev_s button[type="submit"]{
        margin:8px auto;
        display:block;
        width: 60%;
        padding:10px 22px;
        font-size: 24px;
        background:var(--c-primary);
        color:#fff;
        border:none;
        border-radius:8px;
        cursor:pointer;
        text-align: center;
        letter-spacing: 12px;
    }
    /* 元チェックボックスは隠す */
    .prom-tag__input {
        display: none;
    }
    /* タグボタン */
    .prom-tag__label {
        display: inline-flex;
        align-items: center;
        justify-content: center;
        padding: 8px 24px;
        border-radius: 16px;
        border: 1px solid var(--ichigeki-blue);
        background-color: var(--ichigeki-white);
        color: var(--ichigeki-blue);
        font-size: 16px;
        line-height: 1;
        cursor: pointer;
        user-select: none;
        min-width: 80px;
        text-align: center;
        box-sizing: border-box;
        transition: background-color 0.15s ease, color 0.15s ease, transform 0.05s ease;
    }

    /* 押したときの軽い縮小感 */
    .prom-tag__label:active {
        transform: scale(0.97);
    }

    /* チェックされているときの見た目 */
    .prom-tag__input:checked + .prom-tag__label {
        background-color: var(--ichigeki-blue);
        color: var(--ichigeki-white);
        border-color: var(--ichigeki-blue);
    }
    /* ヒット件数表示 */
    .prom-filter__hits {
        margin-top: -10px;
        text-align: center;
        font-size: 16px;
    }

    .prom-filter__hits-count {
        color: var(--ichigeki-blue-dark);
        font-size: 18px;
        font-weight: 700;
    }

    .prom-filter__search-btn:active {
        transform: scale(0.98);
        opacity: 0.9;
    }
  /* ===== 検索結果 ===== */
    .ev_r{display:block}
    .ev_r_day{margin-bottom:22px}
    ol.ev_r_list{
        list-style:none;
        padding:0;
        margin:0;
    }   
    .ev_r_item{
        display: grid;
        gap: 12px;
        border-bottom:5px solid #023894;
        padding: 20px 0;
    }
    .ev_r_item:first-child{
        border-top:5px solid #023894;
    }
    .ev_r_item a{
        display: flex;
        justify-content: start;
    }
    .ev_r_item a .left{
        width: 26%;
    }
    .left img{
        object-fit:contain
    }
    .event_type{
        display:flex;
        flex-wrap:wrap;
        gap:4px;
    }
    .event_type p{
    margin:0;
    text-align:center;
    padding:4px;
    line-height:revert;
    font-size:16px;
    width:140px;/* 1個 */
    color: white;
    }
    .event_type p:first-child:nth-last-child(2),
    .event_type p:first-child:nth-last-child(2) ~ p{ width:48%; }   /* 2個 45.5%*/
    .event_type p:first-child:nth-last-child(3),
    .event_type p:first-child:nth-last-child(3) ~ p{ width:31.48%; }    /* 3個 30.5%*/
    .event_type p:first-child:nth-last-child(n+4),
    .event_type p:first-child:nth-last-child(n+4) ~ p{ width:23%; }  /* 4個以上 22.1%*/


.visit{background-color: #000FFF;}
.serv{background-color: #00CC31;}
p.rec{background-color:#FDE500; color: #0D0D0D;}
.dif{background-color: #FF00F9;}
.go{background-color: #FF0000;}
.cart{background-color: #0090FF;}
.sales{background-color: #00CCA0;}
p.prize{background-color: #FFD400;color: #424242;}
.p-ex{background-color: #bb00ff;}
.fan{background-color: #FF0093;}
p.other{background-color: #E7E7E7;color: #000000;}

.ev_r_item a .right{
        width: 74%;
        padding: 0 8px;
    }
    .ev_r_item a .right h3{
        background-color: white;
        border-left: none;
        color: #555;
        padding: 0;
        margin: 0 0 12px;
        font-weight: bold;
        font-size: 20px;
    }
    .ev_r_item a .right h3::before{
        content: none;
    }
    .hours, .hours time, .addr, .addr span, .distance,.pr{
        font-size: 16px;
        color:#374151;
        margin:8px 0;
    }
    .position-pr{
        display: flex;
        justify-content: space-between;
        margin: 8px 0 0;
        align-items: end;
    }
    .pr{
        border: solid 1px var(--c-muted);
        color: var(--c-muted);
        padding: 3px 6px 1px;
        margin: 0;
    }
    .bottom{
        margin: 0;
        padding: 8px;
        background:#f3f4f6;
        border-radius:8px;
        border:1px solid var(--c-border);
    }
    .comment{
        margin:0;
        font-size:18px; /* 最大20文字が1行に入る文字サイズ */
        color:#444; 
        line-height: 24px;
    }
    .hours{
        padding: 0;
        margin-bottom: 0;
    }
    p.promo_check{
        width: 100%;
        margin-top:12px;
    }
/* ★baseに追加 */
    .bg-orange{
        background-color: orange;
        color: white;
    }
