/* RaiFam PC HOME Visual R7 — full PC hero and empty-notice row span. Mobile/PWA <= 1199px is frozen. */
.pc-home-ad-slot{display:none;height:0;min-height:0;margin:0;padding:0;border:0;overflow:hidden}
.pc-home-sidebar{display:contents}
.pc-home-safety-note{display:none}

@media (min-width:1200px){
  body[data-module="home"] .page{max-width:1360px;padding:14px 16px 48px}
  body[data-module="home"] .home-layout-v7{
    display:grid;
    grid-template-columns:minmax(0,1fr) clamp(316px,24vw,350px);
    grid-template-rows:repeat(8,auto);
    grid-template-areas:none;
    gap:12px 14px;
    align-items:stretch;
  }
  body[data-module="home"] .home-layout-v7>.home-hero-v7{grid-area:auto;grid-column:1;grid-row:1}
  body[data-module="home"] .home-layout-v7>.pc-home-ad-slot-1{grid-area:auto;grid-column:1;grid-row:2}
  body[data-module="home"] .home-layout-v7>.go-panel-v3{grid-area:auto;grid-column:1;grid-row:3}
  body[data-module="home"] .home-layout-v7>.event-panel-v3{grid-area:auto;grid-column:1;grid-row:4}
  body[data-module="home"] .home-layout-v7>.pc-home-ad-slot-2{grid-area:auto;grid-column:1;grid-row:5}
  body[data-module="home"] .home-layout-v7>.ranking-panel-v3{grid-area:auto;grid-column:1;grid-row:6}
  body[data-module="home"] .home-layout-v7>.shop-panel-v3{grid-area:auto;grid-column:1;grid-row:7}
  body[data-module="home"] .home-layout-v7>.pc-home-safety-note{grid-column:1;grid-row:8;display:block;margin:0}
  body[data-module="home"] .home-layout-v7>.pc-home-sidebar{
    display:contents;
  }
  body[data-module="home"] .pc-home-sidebar>.weather-panel-v3{grid-column:2;grid-row:1;min-width:0}
  body[data-module="home"] .pc-home-sidebar>.column-pick-panel-v7{grid-column:2;grid-row:2 / 5;min-width:0}
  body[data-module="home"] .pc-home-sidebar>.pc-home-ad-slot-3{grid-column:2;grid-row:5;min-width:0}
  body[data-module="home"] .pc-home-sidebar>.home-notices-v7{grid-column:2;grid-row:6;min-width:0;align-self:start}

  body[data-module="home"] .visual-v1-home-search,
  body[data-module="home"] .visual-v1-home-links,
  body[data-module="home"] .visual-v1-recommendations,
  body[data-module="home"] .visual-v1-home-ad,
  body[data-module="home"] .visual-v1-home-top6,
  body[data-module="home"] .mobile-home-genres{display:none!important}
  body[data-module="home"] .visual-v1-pwa-guide{display:none}
  body[data-module="home"] .mobile-home-safety-note{display:none}

  body[data-module="home"] .pc-home-ad-slot[data-ad-state="empty"]{
    display:flex;
    align-items:center;
    justify-content:center;
    min-height:108px;
    height:auto;
    padding:8px 12px;
    border:1px solid #e1e5df;
    border-radius:12px;
    background:#f7f8f6;
    color:#8a918b;
  }
  body[data-module="home"] .pc-home-ad-slot[data-ad-state="empty"]:before{content:"広告";font-size:.58rem;letter-spacing:.1em}

  body[data-module="home"] .pc-home-ad-slot[data-ad-state="loading"],
  body[data-module="home"] .pc-home-ad-slot[data-ad-state="filled"],
  body[data-module="home"] .pc-home-ad-slot:has(.adsbygoogle[data-ad-status="filled"]),
  body[data-module="home"] .pc-home-ad-slot:has(iframe){
    display:flex;
    align-items:flex-start;
    justify-content:center;
    min-height:108px;
    padding:8px 12px;
    border:1px solid #dce5dc;
    border-radius:12px;
    background:#fbfcfa;
    color:#89938b;
  }
  body[data-module="home"] .pc-home-sidebar>.pc-home-ad-slot[data-ad-state="empty"],
  body[data-module="home"] .pc-home-sidebar>.pc-home-ad-slot[data-ad-state="loading"],
  body[data-module="home"] .pc-home-sidebar>.pc-home-ad-slot[data-ad-state="filled"],
  body[data-module="home"] .pc-home-sidebar>.pc-home-ad-slot:has(.adsbygoogle[data-ad-status="filled"]),
  body[data-module="home"] .pc-home-sidebar>.pc-home-ad-slot:has(iframe){min-height:108px}

  body[data-module="home"] .home-hero-v7{
    width:100%;
    height:auto!important;
    min-height:0!important;
    aspect-ratio:16 / 9;
    padding:0!important;
    border-radius:15px;
    background:#f5f1e5!important;
  }
  body[data-module="home"] .home-hero-v7 .visual-v1-home-image{
    width:100%;
    height:100%;
    object-fit:contain;
    object-position:center;
  }
  body[data-module="home"] .home-hero-v7:after{
    background:linear-gradient(90deg,rgba(255,255,255,.62) 0,rgba(255,255,255,.2) 48%,rgba(255,255,255,0) 68%)!important;
  }
  body[data-module="home"] .home-hero-v7 .hero-copy.visual-v1-home-caption{
    display:block!important;
    position:absolute!important;
    left:clamp(28px,3vw,46px)!important;
    right:46%!important;
    top:clamp(24px,2.5vw,42px)!important;
    bottom:auto!important;
    width:auto!important;
    min-width:0!important;
  }
  body[data-module="home"] .home-hero-v7 .home-hero-copy-group{display:block!important;width:auto!important;max-width:100%!important}
  body[data-module="home"] .home-hero-v7 .home-hero-copy{
    display:block!important;
    width:auto!important;
    max-width:100%!important;
    margin:0!important;
    position:relative!important;
    color:#223644;
    font-family:"Yu Maru","Hiragino Maru Gothic ProN","BIZ UDPGothic","Yu Gothic",sans-serif;
    font-size:clamp(1.8rem,2.35vw,2.65rem)!important;
    font-weight:800!important;
    line-height:1.3!important;
    letter-spacing:.06em!important;
    text-shadow:0 1px 3px rgba(255,255,255,.92)!important;
    transform:rotate(-.7deg)!important;
  }
  body[data-module="home"] .home-hero-v7 .home-hero-copy-line{display:block!important;width:max-content!important;max-width:100%!important;white-space:nowrap!important}
  body[data-module="home"] .home-hero-v7 .home-hero-copy-line.line-2{margin-left:12px!important;transform:rotate(.45deg)!important}
  body[data-module="home"] .home-hero-v7 .home-hero-copy-accent{position:relative;display:inline-block!important;font-size:1.12em!important;line-height:1;letter-spacing:.02em}
  body[data-module="home"] .home-hero-v7 .home-hero-copy:before{content:""!important;display:block!important;position:absolute;left:38px;bottom:-7px;width:74px;height:3px;border-radius:999px;background:#63ad73;transform:rotate(-3deg);opacity:.82}
  body[data-module="home"] .home-hero-v7 .accent-family{color:#cf6265!important;transform:rotate(-2deg) scale(1.03)!important;transform-origin:center bottom}
  body[data-module="home"] .home-hero-v7 .accent-family:before{content:""!important;display:block!important;position:absolute;left:-10px;top:-7px;width:15px;height:11px;background:radial-gradient(ellipse at 30% 70%,#63ad73 0 43%,transparent 47%),radial-gradient(ellipse at 73% 30%,#8bc47d 0 38%,transparent 43%);transform:rotate(-24deg)}
  body[data-module="home"] .home-hero-v7 .accent-discovery{margin:0 2px;color:#2b9564!important;transform:rotate(1deg) scale(1.04)!important;transform-origin:center bottom}
  body[data-module="home"] .home-hero-v7 .accent-discovery:after{content:""!important;display:block!important;position:absolute;right:-16px;top:-10px;width:18px;height:14px;background:linear-gradient(72deg,transparent 45%,#e4ad35 47% 55%,transparent 57%) 0 0/6px 13px no-repeat,linear-gradient(102deg,transparent 45%,#e4ad35 47% 55%,transparent 57%) 6px -1px/6px 12px no-repeat,linear-gradient(132deg,transparent 45%,#e4ad35 47% 55%,transparent 57%) 12px 2px/6px 10px no-repeat;transform:rotate(5deg)}
  body[data-module="home"] .home-hero-v7 .home-hero-subcopy{
    display:block!important;
    width:auto!important;
    max-width:100%!important;
    margin:15px 0 0 3px!important;
    padding:4px 10px 4px 11px!important;
    border:0!important;
    border-left:2px solid rgba(69,153,94,.48)!important;
    border-radius:5px;
    background:linear-gradient(90deg,rgba(255,255,255,.56),rgba(255,255,255,.18) 82%,transparent)!important;
    color:#2e433b!important;
    font-family:"Yu Gothic","Hiragino Kaku Gothic ProN",sans-serif!important;
    font-size:clamp(.7rem,.85vw,.9rem)!important;
    font-weight:650!important;
    line-height:1.65!important;
    text-shadow:0 1px 3px rgba(255,255,255,.96)!important;
  }
  body[data-module="home"] .home-hero-v7 .home-hero-subcopy span{display:block!important;white-space:nowrap!important}
  body[data-module="home"] .home-hero-v7 .hero-location-actions,
  body[data-module="home"] .home-hero-v7 .fine{display:none!important}

  body[data-module="home"] .home-layout-v7 .dashboard-panel,
  body[data-module="home"] .home-layout-v7 .home-notices{height:auto!important;min-height:0!important;padding:15px;border-radius:15px}
  body[data-module="home"] .go-panel-v3 .place-visual-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
  body[data-module="home"] .go-panel-v3 .home-entity-tile-v20{height:128px}
  body[data-module="home"] .event-panel-v3 .event-visual-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;overflow:visible}
  body[data-module="home"] .event-panel-v3 .event-visual-card{min-width:0}
  body[data-module="home"] .event-panel-v3 .event-visual-card>a{display:grid;grid-template-columns:72px minmax(0,1fr);grid-template-rows:auto auto;gap:4px 10px;align-items:center;color:inherit;text-decoration:none}
  body[data-module="home"] .event-panel-v3 .event-image-v3{grid-column:1;grid-row:1 / span 2;width:72px;height:72px}
  body[data-module="home"] .event-panel-v3 .event-date{position:static;grid-column:2;grid-row:1;justify-self:start}
  body[data-module="home"] .event-panel-v3 .event-visual-card strong{grid-column:2;grid-row:2;margin:0;font-size:.69rem;line-height:1.45;overflow-wrap:normal;word-break:normal}
  body[data-module="home"] .event-panel-v3 .event-visual-card small:last-child{grid-column:2;font-size:.51rem}

  body[data-module="home"] .ranking-panel-v3 .ranking-visual-grid{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    grid-template-rows:repeat(2,minmax(112px,1fr));
    grid-auto-rows:minmax(112px,1fr);
    gap:8px;
    align-items:stretch;
    overflow:visible;
  }
  body[data-module="home"] .ranking-panel-v3 .ranking-text-card-v0{box-sizing:border-box;width:100%;min-width:0;height:100%;min-height:112px;margin:0;padding:0;overflow:hidden;border:1px solid #e8ece5;border-radius:12px;background:#fff}
  body[data-module="home"] .ranking-panel-v3 .ranking-card-link-v2{position:relative;box-sizing:border-box;display:grid;grid-template-columns:minmax(0,1fr);gap:10px;align-items:center;width:100%;height:100%;min-height:110px;padding:13px 14px 13px 56px;color:inherit;text-decoration:none}
  body[data-module="home"] .ranking-panel-v3 .ranking-card-link-v2:has(.ranking-card-image-v2){grid-template-columns:64px minmax(0,1fr)}
  body[data-module="home"] .ranking-panel-v3 .rank-badge{position:absolute;top:13px;left:14px;display:grid;place-items:center;box-sizing:border-box;width:32px;height:32px;margin:0;border:1px solid rgba(255,255,255,.7);border-radius:50%;background:#4f8a61;box-shadow:0 2px 6px rgba(51,74,57,.16);color:#fff;font-size:.72rem;font-weight:800;line-height:1;font-variant-numeric:tabular-nums}
  body[data-module="home"] .ranking-panel-v3 .ranking-card-copy-v2{display:grid;grid-template-rows:2.9em 1.35em;align-content:center;gap:4px;min-width:0;height:100%}
  body[data-module="home"] .ranking-panel-v3 .ranking-card-copy-v2 strong{display:-webkit-box;min-width:0;height:2.9em;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow-wrap:anywhere;word-break:normal;font-size:.72rem;line-height:1.45}
  body[data-module="home"] .ranking-panel-v3 .ranking-card-copy-v2 small{align-self:end;overflow:hidden;color:#68736a;font-size:.55rem;line-height:1.35;text-overflow:ellipsis;white-space:nowrap}
  body[data-module="home"] .ranking-panel-v3 .ranking-card-image-v2{display:block;width:64px;height:64px;border-radius:9px;object-fit:cover}
  body[data-module="home"] .ranking-panel-v3 .ranking-text-card-v0:nth-child(1){border-color:#d7ad3d;background:linear-gradient(135deg,#fffdf5,#fff8df)}
  body[data-module="home"] .ranking-panel-v3 .ranking-text-card-v0:nth-child(2){border-color:#aeb7bc;background:linear-gradient(135deg,#fff,#f4f6f7)}
  body[data-module="home"] .ranking-panel-v3 .ranking-text-card-v0:nth-child(3){border-color:#bd8458;background:linear-gradient(135deg,#fffaf6,#f8eee7)}
  body[data-module="home"] .ranking-panel-v3 .ranking-text-card-v0:nth-child(1) .rank-badge{background:linear-gradient(145deg,#edc75a,#b98008)}
  body[data-module="home"] .ranking-panel-v3 .ranking-text-card-v0:nth-child(2) .rank-badge{background:linear-gradient(145deg,#cbd1d4,#7d898f)}
  body[data-module="home"] .ranking-panel-v3 .ranking-text-card-v0:nth-child(3) .rank-badge{background:linear-gradient(145deg,#d59a6a,#995b31)}
  body[data-module="home"] .ranking-panel-v3 .ranking-text-card-v0:nth-child(n+4){border-color:#dce7de;background:#fff}
  body[data-module="home"] .ranking-panel-v3 .ranking-text-card-v0:nth-child(n+4) .rank-badge{background:#4f8a61}

  body[data-module="home"] .shop-panel-v3 .home-carousel-track{display:grid!important;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px!important;overflow:visible;padding:2px}
  body[data-module="home"] .shop-panel-v3 .home-carousel-track>article{width:auto;min-width:0;padding:9px}
  body[data-module="home"] .shop-panel-v3 .shop-visual-item img{display:block;width:100%;height:124px;object-fit:contain}
  body[data-module="home"] .shop-panel-v3 .home-carousel-controls{display:none!important}

  body[data-module="home"] .pc-home-sidebar>.dashboard-panel,
  body[data-module="home"] .pc-home-sidebar>.home-notices{width:100%;min-width:0}
  body[data-module="home"] .pc-home-sidebar .weather-main-v3>span:last-child{font-size:.76rem}
  body[data-module="home"] .pc-home-sidebar .forecast-row-v3{margin-inline:-15px}
  body[data-module="home"] .pc-home-sidebar .forecast-row-v3>div{padding:6px 3px}
  body[data-module="home"] .pc-home-sidebar .weather-disclaimer-v14,
  body[data-module="home"] .pc-home-sidebar .weather-safety-v3{font-size:.52rem;white-space:normal}
  body[data-module="home"] .pc-home-sidebar .column-pick-panel-v7 .home-carousel-track{display:grid!important;grid-template-columns:1fr;gap:0!important;overflow:visible;padding:0}
  body[data-module="home"] .pc-home-sidebar .column-pick-panel-v7 .home-carousel-track>article{display:grid;grid-template-columns:92px minmax(0,1fr);gap:9px;width:100%;padding:8px 0;border:0;border-bottom:1px solid #ece8df;border-radius:0}
  body[data-module="home"] .pc-home-sidebar .column-pick-panel-v7 .home-column-image-v04{margin:0}
  body[data-module="home"] .pc-home-sidebar .column-pick-panel-v7 .home-column-image-v04 img{height:68px;border-radius:8px;object-fit:cover}
  body[data-module="home"] .pc-home-sidebar .column-pick-panel-v7 .home-column-item-v7 h3{margin:2px 0;font-size:.68rem}
  body[data-module="home"] .pc-home-sidebar .column-pick-panel-v7 .home-column-item-v7 p,
  body[data-module="home"] .pc-home-sidebar .column-pick-panel-v7 .home-column-author-v04{display:none}
  body[data-module="home"] .pc-home-sidebar .column-pick-panel-v7 .home-carousel-controls{display:none!important}
  body[data-module="home"] .pc-home-sidebar .home-notices-v7 .notice-row{grid-template-columns:66px minmax(0,1fr);padding:9px 2px}
  body[data-module="home"] .pc-home-sidebar .home-notices-v7 .notice-row p{display:none}
  body[data-module="home"] .pc-home-sidebar .home-notices-v7 .notice-row strong{font-size:.64rem}
  body[data-module="home"] .pc-home-sidebar .home-notices-v7.is-empty{grid-row:6 / 9;display:flex;min-height:148px!important;flex-direction:column;align-self:stretch}
  body[data-module="home"] .pc-home-sidebar .home-notices-v7.is-empty .notice-empty{display:flex;flex:1;align-items:center}
  body[data-module="home"] .pc-home-sidebar .home-notices-v7.is-empty .notice-row{width:100%}
  body[data-module="home"] .home-module-empty-v20{min-height:104px!important;padding:20px!important}
  body[data-module="home"] .shop-panel-v3{margin-bottom:0}
  body[data-module="home"] .home-layout-v7{margin-bottom:12px}
}

@media (min-width:1200px) and (max-width:1320px){
  body[data-module="home"] .home-layout-v7{grid-template-columns:minmax(0,1fr) 310px;gap:10px}
  body[data-module="home"] .home-hero-v7 .home-hero-copy{font-size:clamp(1.5rem,2.1vw,1.9rem)!important}
  body[data-module="home"] .shop-panel-v3 .home-carousel-track{grid-template-columns:repeat(4,minmax(0,1fr))}
  body[data-module="home"] .event-panel-v3 .event-visual-card>a{grid-template-columns:62px minmax(0,1fr)}
  body[data-module="home"] .event-panel-v3 .event-image-v3{width:62px;height:62px}
}

@media (max-width:1199px){
  body[data-module="home"] .pc-home-sidebar{display:contents}
  body[data-module="home"] .pc-home-ad-slot{display:none!important}
  body[data-module="home"] .pc-home-safety-note{display:none!important}
}
