/* サバゲーいこうぜ App UX v3. Scope only to independent sabage screens. */
.sbg-page{--app-bg:#f3f6f0;--app-panel:#fff;--app-green:#244631;--app-accent:#c65019;background:var(--app-bg)!important}
.sbg{color:#23392b}
.sbg .hd{position:sticky;top:0;z-index:79;background:#192f23;box-shadow:0 4px 15px rgba(20,39,25,.09)}
.sbg .hd__in{max-width:1240px}
.sbg .brand__m{filter:drop-shadow(0 1px 3px rgba(221,184,131,.12))}
.sbg .app-nav-save-badge[hidden],.sbg [data-app-recent][hidden],.sbg [data-app-install][hidden]{display:none!important}
.sbg .app-date-rail,.sbg .filter__sheet-head,.sbg .filter__sheet-actions{display:none}
.sbg .app-filter-backdrop[hidden]{display:none!important}
.sbg #list .row,.sbg .home-overview__card,.sbg .home-shortcuts__card,.sbg .home-articles a,
.sbg .home-area__grid a,.sbg .circ .crow,.sbg .sbgs-post{transition:box-shadow .18s ease,border-color .18s ease,background-color .18s ease}
.sbg #list .row:focus-within,.sbg .home-overview__card:focus-visible,.sbg .home-shortcuts__card:focus-visible{box-shadow:0 0 0 3px rgba(163,116,63,.20)}
.sbg .app-reader-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:50px;border-bottom:1px solid #d7e1d5;color:#5c715d;font-size:13px;font-weight:750;margin:12px 0 0}
.sbg .app-reader-toolbar a{color:#315e3c;text-decoration:none}
.sbg .app-reader-toolbar a:hover{text-decoration:underline}
.sbg .app-reader-toc[hidden]{display:none!important}
.sbg .app-reader-toc{max-width:72ch;margin:18px 0 22px}
.sbg .app-reader-toc details{border:1px solid #c7d8c4;border-radius:11px;background:#f9fbf7;overflow:hidden}
.sbg .app-reader-toc summary{display:flex;align-items:center;justify-content:space-between;padding:15px 18px;cursor:pointer;font-size:14px;font-weight:850;color:#285233;list-style:none;min-height:49px}
.sbg .app-reader-toc summary::-webkit-details-marker{display:none}
.sbg .app-reader-toc summary:after{content:'＋';font-size:18px}
.sbg .app-reader-toc details[open] summary:after{content:'−'}
.sbg .app-reader-toc ol{list-style:decimal;margin:0;padding:0 17px 15px 40px}
.sbg .app-reader-toc li{padding:7px 3px;font-size:13px;line-height:1.65;border-top:1px solid #e8eee5}
.sbg .app-reader-toc li a{color:#315440;text-decoration:none}
.sbg .app-reader-toc li a:hover{text-decoration:underline}
.sbg .app-readable h2{scroll-margin-top:92px}
.sbg .app-readable p,.sbg .app-readable li{line-height:1.95}
.sbg .app-readable h2{border-top:0!important;padding-top:0!important;margin:32px 0 13px!important;font-size:clamp(20px,2.7vw,26px)!important}
.sbg .app-readable h2:before{display:none}
.sbg .app-readable h3{margin:24px 0 8px!important;font-size:17px!important}
.sbg .app-readable table{display:block;max-width:100%;overflow-x:auto;border-collapse:collapse;-webkit-overflow-scrolling:touch}
.sbg .app-readable table td,.sbg .app-readable table th{min-width:96px;padding:10px 12px}
.sbg .app-read-progress{position:fixed;z-index:91;top:0;left:0;width:100%;height:3px;pointer-events:none}
.sbg .app-read-progress span{display:block;width:100%;height:100%;background:#d76831;transform-origin:left;transform:scaleX(0);will-change:transform}
.sbg .home-recent{padding-top:22px}
.sbg .home-recent__notice{font-size:11px;color:#677c6a}
.sbg .home-recent__links{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}
.sbg .home-recent__links a{min-height:57px;display:flex;align-items:center;gap:10px;border:1px solid #d5e2d3;border-radius:10px;background:#fff;padding:12px 14px;text-decoration:none;color:#274734;min-width:0}
.sbg .home-recent__links a:hover{background:#f4faf2;border-color:#aac3a7}
.sbg .home-recent__icon{width:30px;height:30px;background:#e7efe2;color:#487547;border-radius:7px;display:flex;align-items:center;justify-content:center;flex:none;font-size:21px}
.sbg .home-recent__name{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:800}
.sbg .home-recent__arrow{font-size:15px;color:#779777}
.sbg .home-install-btn{display:flex;flex-direction:column;gap:6px;min-height:66px;background:#e9f1e7;border:1px solid #bdd2b6;border-radius:9px;padding:16px 18px;align-items:stretch;text-align:left;color:#254f31}
.sbg .home-install-btn:hover{background:#ddebd9}
.sbg .home-install-btn strong{display:flex;justify-content:space-between;gap:9px;font-size:14px}
.sbg .home-install-btn small{font-size:12px}
.sbg .clist{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;border-top:0;margin-top:12px}
.sbg .crow2{display:flex;align-items:start;flex-wrap:wrap;gap:8px 13px;min-width:0;background:#fff;border:1px solid #d8e3d6;padding:17px;border-radius:11px;min-height:142px;text-decoration:none;color:#26422c}
.sbg .crow2:hover{background:#f9fcf7;border-color:#a9c19f;box-shadow:0 4px 13px rgba(25,43,26,.07)}
.sbg .crow2 .i{font-size:11px;font-weight:800;letter-spacing:.06em;padding-top:3px;color:#67816b}
.sbg .crow2 .t{flex:1;min-width:0}
.sbg .crow2 .t b{font-size:16px;color:#243e2b;font-weight:850;line-height:1.52}
.sbg .crow2 .t .d{font-size:12.5px;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;overflow:hidden;color:#697a6b}
.sbg .crow2 .m{margin-left:auto;font-size:12px;color:#667669}
.sbg .crow2.hub{background:#eef5eb;border-color:#a9c6a4}
.sbg .app-filter-backdrop{display:none}
@media(max-width:900px){
 .sbg .clist{grid-template-columns:1fr}
 .sbg .home-recent__links{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:760px){
 .sbg-page{padding-bottom:calc(95px + env(safe-area-inset-bottom))!important}
 .sbg .hd{min-height:58px;box-shadow:0 5px 16px rgba(18,39,23,.12)}
 .sbg .hd__in{padding:0 15px}
 .sbg .brand__t{font-size:16px}
 .sbg .app-header-find{border-radius:12px;min-width:73px;min-height:40px}
 .sbg .app-bottom-nav{left:9px;right:9px;bottom:calc(8px + env(safe-area-inset-bottom));width:auto;height:68px;min-height:68px;padding:5px 6px;border:1px solid rgba(188,207,188,.8);border-radius:19px;background:rgba(255,255,255,.975);box-shadow:0 5px 26px rgba(21,42,29,.20),0 1px 3px rgba(21,42,29,.05);gap:1px;overflow:visible}
 .sbg .app-bottom-nav__item{min-height:54px;border-radius:14px;color:#728073;gap:3px;font-size:10px}
 .sbg .app-bottom-nav__item svg{width:22px;height:22px;stroke-width:1.9}
 .sbg .app-bottom-nav__item.is-active{background:#e5f1e5;color:#285d35}
 .sbg .app-bottom-nav__item.is-active:before{content:'';position:absolute;top:-6px;width:18px;height:3px;border-radius:3px;background:#d36b2d}
 .sbg .app-bottom-nav__item:active{transform:scale(.94)}
 .sbg .app-nav-save-badge{position:absolute;top:-2px;right:4px;display:flex;align-items:center;justify-content:center;padding:0 3px;min-width:16px;height:16px;border-radius:20px;background:#b84a19;color:#fff;font-size:10px;font-weight:800;border:2px solid #fff}
 .sbg .app-toast{bottom:calc(93px + env(safe-area-inset-bottom))}
 .sbg .field-v2 .field-bottom-cta{bottom:calc(86px + env(safe-area-inset-bottom));padding:9px 12px;z-index:60}
 .sbg .field-v2 .field-content{padding-bottom:182px}
 .sbg .band:not(.field-hero) .band__in{display:flex;flex-direction:column;align-items:stretch;gap:3px;padding:17px 15px 16px}
 .sbg .band:not(.field-hero) .band__in>div:first-child{padding-bottom:0;min-width:0}
 .sbg .band:not(.field-hero) .crumb{display:none}
 .sbg .band:not(.field-hero) .tagline{font-size:10px;margin:0 0 5px;letter-spacing:.2em}
 .sbg .band:not(.field-hero) h1{font-size:clamp(23px,6.3vw,29px);line-height:1.28;margin:0}
 .sbg .band:not(.field-hero) .band__in>div:first-child>p:not(.tagline):not(.crumb){font-size:11.5px;line-height:1.6;max-width:55ch;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;margin-top:8px;padding:0;border:0}
 .sbg .band:not(.field-hero) .bignum{padding:0;margin:5px 0 0;display:flex;align-items:center;gap:9px;max-width:100%;border-top:1px solid rgba(205,220,191,.19);padding-top:8px}
 .sbg .band:not(.field-hero) .bignum b{font-size:26px;line-height:1.2;white-space:nowrap}
 .sbg .band:not(.field-hero) .bignum b i{font-size:12px;margin-left:2px}
 .sbg .band:not(.field-hero) .bignum span{font-size:11px;line-height:1.35;margin:0;white-space:normal}
 .sbg .ruler:has(+ #app-filter){display:none}
 .sbg #app-filter{top:58px;z-index:69;background:#f7faf5;border-bottom:1px solid #dce7d9;box-shadow:0 5px 15px rgba(35,55,33,.07)}
 .sbg #app-filter.is-sheet-open{z-index:140}
 .sbg .app-date-rail{display:block;border-bottom:1px solid #e1eae0;padding:9px 0 9px}
 .sbg .app-date-rail__title{display:flex;align-items:center;justify-content:space-between;padding:0 13px 7px;gap:12px}
 .sbg .app-date-rail__title strong{font-size:12px;color:#294e34;font-weight:850}
 .sbg .app-date-rail__title span{font-size:10.5px;color:#718574}
 .sbg .app-date-rail__scroll{display:flex;align-items:stretch;gap:7px;overflow-x:auto;overscroll-behavior-x:contain;scrollbar-width:none;-webkit-overflow-scrolling:touch;padding:0 12px 2px;scroll-snap-type:x proximity}
 .sbg .app-date-rail__scroll::-webkit-scrollbar{display:none}
 .sbg .app-date-chip{display:flex;flex-direction:column;align-items:center;justify-content:center;flex:0 0 63px;min-height:66px;scroll-snap-align:start;padding:6px 5px;border:1px solid #d9e5d7;border-radius:12px;background:#fff;color:#315238;line-height:1.25}
 .sbg .app-date-chip span{font-size:10.5px;font-weight:750;color:#6d7e6b}
 .sbg .app-date-chip strong{font-size:14px;font-weight:850;color:#254532;margin:3px 0 2px}
 .sbg .app-date-chip small{font-size:10px;color:#718073;min-height:11px}
 .sbg .app-date-chip.is-weekend{background:#fff8f2;border-color:#e6d5c1}
 .sbg .app-date-chip.is-active{border-color:#244b30;background:#2a5136;box-shadow:0 4px 10px rgba(36,75,48,.16)}
 .sbg .app-date-chip.is-active span,.sbg .app-date-chip.is-active strong,.sbg .app-date-chip.is-active small{color:#fff}
 .sbg .filter__quick{padding:8px 12px 6px}
 .sbg .filter__quick-controls{gap:7px}
 .sbg .filter__search-mark{left:15px}
 .sbg #quick-q{min-height:44px;height:44px;border-radius:12px;border:1px solid #c7d9c7;padding-left:41px;font-size:16px;box-shadow:0 2px 8px rgba(34,54,37,.035)}
 .sbg #quick-filter-toggle{min-width:96px;border-radius:12px;min-height:44px;height:44px;padding:0 11px;background:#2a5035;border-color:#2a5035}
 .sbg .filter__bar{min-height:28px;gap:5px;padding:0 12px 6px;border:0}
 .sbg .filter__bar .count{font-size:11px;font-weight:800}
 .sbg .filter__bar .fsum{font-size:10.5px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
 .sbg .filter__in.open{position:fixed;display:grid;grid-template-columns:minmax(0,1fr)!important;align-items:stretch;gap:12px!important;inset:auto 0 0;top:auto;bottom:0;max-width:none;width:100%;max-height:min(86dvh,800px);overflow-y:auto;border-radius:22px 22px 0 0;border:0;padding:0 18px calc(15px + env(safe-area-inset-bottom));background:#fff;box-shadow:0 -15px 60px rgba(11,28,16,.25);z-index:143;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}
 .sbg .filter__in .filter__sheet-head{position:sticky;top:0;z-index:3;display:flex;align-items:center;justify-content:space-between;min-height:78px;padding:13px 0 12px;background:#fff;border-bottom:1px solid #e5ebe3}
 .sbg .filter__sheet-head>div{display:flex;flex-direction:column;gap:2px}
 .sbg .filter__sheet-head strong{font-size:19px;color:#264631;font-weight:850}
 .sbg .filter__sheet-head span{font-size:12px;color:#66786a}
 .sbg .filter__sheet-close{display:flex;align-items:center;justify-content:center;min-width:44px;min-height:44px;border-radius:50%;background:#eff4ee;color:#32563a;font-size:24px;border:1px solid #dce7db}
 .sbg .filter__in .fseg,.sbg .filter__in .seg,.sbg .filter__in .chips{max-width:100%}
 .sbg .filter__in .seg{border-radius:8px;display:flex;flex-wrap:wrap}
 .sbg .filter__in .fseg__l,.sbg .filter__in label{font-size:13px}
 .sbg .filter__in .reset{min-height:43px}
 .sbg .filter__in .filter__sheet-actions{position:sticky;bottom:-1px;display:block;background:#fff;padding:12px 0 0;border-top:1px solid #e4ece0;margin-top:5px;z-index:2}
 .sbg .filter__sheet-actions button{display:flex;width:100%;min-height:49px;align-items:center;justify-content:center;gap:8px;border-radius:12px;background:#be4d17;border:1px solid #be4d17;color:#fff;font-size:14px;font-weight:850}
 .sbg .filter__sheet-actions button:hover{background:#a43d10}
 .sbg #app-filter .app-filter-backdrop:not([hidden]){display:block;position:fixed;inset:0;z-index:142;background:rgba(12,30,17,.57);backdrop-filter:blur(2px)}
 html.sbg-sheet-open,body.sbg-sheet-open{overflow:hidden!important}
 .sbg main.w .sec{margin-top:16px}
 .sbg #list{gap:10px}
 .sbg #list .row{border-radius:16px;border-color:#d8e4d5;padding:15px 15px 14px;min-height:183px;box-shadow:0 3px 15px rgba(31,49,31,.035)}
 .sbg #list .row__n{font-size:16px;font-weight:850}
 .sbg #list .row__i{font-size:10px}
 .sbg #list .row__m{font-size:12px}
 .sbg #list .row__go,.sbg #list .row .golink{min-height:45px;border-radius:10px}
 .sbg #list .row__save{border-radius:12px;width:44px;height:44px}
 .sbg .clist{grid-template-columns:1fr;gap:9px;border:0}
 .sbg .crow2{min-height:0;border-radius:13px;padding:14px 13px;gap:6px 10px}
 .sbg .crow2 .i{font-size:10.5px}
 .sbg .crow2 .t b{font-size:15px}
 .sbg .crow2 .t .d{font-size:12px;-webkit-line-clamp:2}
 .sbg .crow2 .m{font-size:11px}
 .sbg .home-hero__inner{gap:10px;padding:19px 15px 15px}
 .sbg .home-hero__eyebrow{font-size:9.5px;margin-bottom:9px}
 .sbg .home-hero h1{font-size:clamp(31px,8.4vw,38px);line-height:1.16;margin-bottom:10px}
 .sbg .home-hero__lead{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;font-size:12px;line-height:1.6}
 .sbg .home-hero__buttons{margin-top:13px}
 .sbg .home-hero__buttons a{min-height:43px;border-radius:12px}
 .sbg .home-hero__trust{display:none}
 .sbg .home-weekend{display:grid;grid-template-columns:1fr auto;grid-template-areas:"k date" "count cta" "line cta";gap:3px 9px;padding:11px 13px;border-radius:13px;min-height:90px}
 .sbg .home-weekend__eyebrow{grid-area:k;font-size:9px}
 .sbg .home-weekend__label{grid-area:date;font-size:10.5px}
 .sbg .home-weekend__count{grid-area:count;gap:6px}
 .sbg .home-weekend__count strong{font-size:34px;line-height:1}
 .sbg .home-weekend__count span{font-size:10px}
 .sbg .home-weekend p{grid-area:line;font-size:10px;line-height:1.5}
 .sbg .home-weekend a{grid-area:cta;min-height:41px;align-self:center;font-size:10.5px;padding:8px 10px;margin:0;border-radius:9px}
 .sbg .home-weekend small{display:none}
 .sbg .home-dashboard__inner{padding-top:12px}
 .sbg .home-overview__card{min-height:97px;border-radius:13px;padding:10px 9px}
 .sbg .home-overview__eyebrow{font-size:10px}
 .sbg .home-overview__card>strong{font-size:27px}
 .sbg .home-overview__foot{font-size:9px}
 .sbg .home-start{margin-top:18px}
 .sbg .home-shortcuts__card{min-height:94px;border-radius:12px}
 .sbg .home-explore{margin-top:18px;padding-top:15px}
 .sbg .home-recent{padding:18px 0 3px}
 .sbg .home-recent__notice{font-size:10px}
 .sbg .home-recent__links{display:flex;gap:8px;overflow-x:auto;scrollbar-width:none;overscroll-behavior-x:contain;scroll-snap-type:x mandatory;padding-bottom:4px}
 .sbg .home-recent__links a{min-width:175px;max-width:240px;flex:0 0 auto;scroll-snap-align:start;border-radius:12px;padding:10px 11px}
 .sbg .home-recent__name{max-width:130px}
 .sbg .app-reader-toolbar{margin:8px 0 0}
 .sbg .app-reader-toc{margin-top:13px}
 .sbg .app-readable{font-size:15px;line-height:1.9}
 .sbg .app-readable h2{font-size:20px!important;scroll-margin-top:76px}
 .sbg .app-readable h3{font-size:16px!important}
 .sbg .home-install-btn{border-radius:13px}
}
@media(max-width:359px){
 .sbg .app-bottom-nav{left:5px;right:5px;gap:0;padding:5px 3px}
 .sbg .app-bottom-nav__item{font-size:9px}
 .sbg .home-weekend a{max-width:140px}
 .sbg .home-hero__buttons a{font-size:10px}
}
@media(prefers-reduced-motion:reduce){
 .sbg #list .row,.sbg .home-overview__card,.sbg .home-shortcuts__card,.sbg .crow2{transition:none}
 .sbg .app-bottom-nav__item:active{transform:none}
}

/* 既存のフィールド検索・サークル一覧からチーム貸切検索へ誘導するカード。 */
.sbg .private-crosslink{max-width:1240px;margin:15px auto 4px;padding:0 28px;box-sizing:border-box}
.sbg .private-crosslink>a{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:5px 14px;padding:18px 20px;border:1px solid #a9c5a8;border-radius:12px;background:#e8f1e6;color:#2c5235;text-decoration:none}
.sbg .private-crosslink>a:hover{background:#dcebd9;border-color:#8bb78d}
.sbg .private-crosslink strong{font-size:15px;font-weight:850;grid-column:1}
.sbg .private-crosslink span{color:#5e7461;font-size:12.5px;grid-column:1}
.sbg .private-crosslink b{grid-column:2;grid-row:1/3;align-self:center;font-size:19px;color:#a04d1f}
@media(max-width:760px){
 .sbg .private-crosslink{margin:12px auto 3px;padding:0 12px}
 .sbg .private-crosslink>a{padding:15px 13px;border-radius:12px}
 .sbg .private-crosslink strong{font-size:14px}
 .sbg .private-crosslink span{font-size:11.5px;line-height:1.55}
}
