@charset "UTF-8";
/* ress.css v1.1.1 (embedded) */
html{box-sizing:border-box;-webkit-text-size-adjust:100%;word-break:normal;-moz-tab-size:4;tab-size:4}*,::before,::after{background-repeat:no-repeat;box-sizing:inherit}::before,::after{text-decoration:inherit;vertical-align:inherit}*{padding:0;margin:0}hr{overflow:visible;height:0;color:inherit}details,main{display:block}summary{display:list-item}small{font-size:80%}[hidden]{display:none}abbr[title]{border-bottom:none;text-decoration:underline dotted}a{background-color:transparent}b,strong{font-weight:bolder}code,kbd,pre,samp{font-family:monospace;font-size:1em}pre{font-size:1em}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{border-color:inherit;text-indent:0}input{border-radius:0}[disabled]{cursor:default}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}[type=search]::-webkit-search-decoration{-webkit-appearance:none}textarea{overflow:auto;resize:vertical}button,input,optgroup,select,textarea{font:inherit}optgroup{font-weight:bold}button{overflow:visible}button,select{text-transform:none}button,[type=button],[type=reset],[type=submit]{cursor:pointer;-webkit-appearance:button}button::-moz-focus-inner,[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner{border-style:none;padding:0}button:-moz-focusring,[type=button]:-moz-focusring,[type=reset]:-moz-focusring,[type=submit]:-moz-focusring{outline:1px dotted ButtonText}button,html [type=button],[type=reset],[type=submit]{-webkit-appearance:button}button,input,select,textarea{background-color:transparent;border-style:none}select{-moz-appearance:none;-webkit-appearance:none}select::-ms-expand{display:none}select::-ms-value{color:currentColor}legend{border:0;color:inherit;display:table;max-width:100%;white-space:normal}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}img{border-style:none}progress{vertical-align:baseline}@media screen{[hidden~=screen]{display:inherit}[hidden~=screen]:not(:active):not(:focus):not(:target){clip:rect(0 0 0 0)!important;position:absolute!important}}

/* ============================================================
   GG.LEAGUE2026 LP
   デザインカンプ: 260901_GGL_01.xd / GGL_PC (W1366)
   PC は 1366px を基準に container query で等比縮小。
   SP(-768px) は 375px を基準に --u を再定義して組み直し。
   ============================================================ */

/* ---------- tokens ---------- */
:root{
  --gold:#5a5028;      /* アクセント・罫線・見出し英字 */
  --green:#051e0f;     /* 帯セクション背景 */
  --light:#dcdcdc;     /* KV テキスト */
  --gray:#969696;      /* 本文 */
  --line:#707070;      /* カード罫線 */
  --f-en:"Be Vietnam Pro",sans-serif;
  --f-nav:"Zalando Sans","Be Vietnam Pro",sans-serif;
  --f-min:YakuHanMP,"Zen Old Mincho",serif;
  --f-go:YakuHanJP,"Noto Sans JP",sans-serif;
}

/* ---------- base ---------- */
html{font-size:10px;scroll-behavior:smooth}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
a:focus-visible{outline:2px solid var(--light);outline-offset:2px}
body{min-width:320px;background:#000;color:var(--gray);font-family:var(--f-min);-webkit-font-smoothing:antialiased}
img{width:100%;height:auto;vertical-align:bottom;-webkit-user-drag:none}
a{color:inherit;text-decoration:none;transition:opacity .3s ease-out}
a:hover{opacity:.65}
li{list-style:none}
.is-sp{display:none!important}

#wrapper{position:relative;overflow:hidden;background:#000}
.container{--u:calc(100cqw / 1366);position:relative;width:100%;max-width:1366px;margin:0 auto;container-type:inline-size}
/* 全面のノイズテクスチャ（XD: img_01 を screen 70% で 720px ごとに反復） */
.container::before{content:"";position:absolute;inset:0;z-index:0;background:url("../../img/bg_texture.webp") repeat-y center top;background-size:100% auto;mix-blend-mode:screen;opacity:.7;pointer-events:none}
.l-header,main,.l-footer{position:relative;z-index:1}

/* ---------- 汎用パーツ ---------- */
.sec{position:relative;z-index:1;text-align:center}
/* 緑帯セクション（等高線パターンを multiply で重ねる） */
.sec--band{background:var(--green)}
.sec--band::before{content:"";position:absolute;inset:0;z-index:-1;background:url("../../img/bg_contour.webp") no-repeat center/100% 100%;mix-blend-mode:multiply;pointer-events:none}

.eyebrow{font-family:var(--f-en);font-weight:300;font-style:italic;color:var(--gold);font-size:calc(var(--u)*14);line-height:calc(var(--u)*20);text-transform:uppercase}
.sec-ttl{font-family:var(--f-min);font-weight:500;color:var(--gray);font-size:calc(var(--u)*42);line-height:calc(var(--u)*48);letter-spacing:.1em;text-indent:.1em}
.dot{display:block;width:calc(var(--u)*4);height:calc(var(--u)*4);margin-inline:auto;border-radius:50%;background:var(--gold)}

/* 枠線ボタン（放送・配信 / SNS） */
.btn-list{display:flex;justify-content:center;gap:calc(var(--u)*13.3)}
.btn-box{display:flex;align-items:center;justify-content:center;width:calc(var(--u)*260);height:calc(var(--u)*90);border:1px solid var(--gold);color:var(--gold);font-family:var(--f-go);font-size:calc(var(--u)*20);line-height:calc(var(--u)*28);text-align:center}

/* ============================================================ header */
.l-header{position:absolute;top:0;left:0;z-index:10;width:100%}
.l-header__logo{position:absolute;top:calc(var(--u)*20);left:calc(var(--u)*20);width:calc(var(--u)*140)}
.g-nav{position:absolute;top:calc(var(--u)*34);right:calc(var(--u)*41)}
.g-nav__list{display:flex;align-items:center;gap:calc(var(--u)*21)}
.g-nav__list a{font-family:var(--f-nav);color:var(--light);font-size:calc(var(--u)*14);line-height:calc(var(--u)*20);letter-spacing:.05em;text-shadow:0 1px 6px rgba(0,0,0,.7)}
.g-nav__sep{width:calc(var(--u)*4);height:calc(var(--u)*4);border-radius:50%;background:var(--light)}

/* ============================================================ KV  (0-768) */
.sec-kv{position:relative;z-index:1;height:calc(var(--u)*768)}
.sec-kv__photos{position:absolute;inset:0;display:grid;grid-template-columns:repeat(4,1fr);overflow:hidden}
.sec-kv__photo{height:100%}
.sec-kv__photo img{height:100%;object-fit:cover}
.sec-kv__noise{position:absolute;inset:0;background:url("../../img/bg_texture.webp") repeat-y center top;background-size:100% auto;mix-blend-mode:screen;opacity:.7;pointer-events:none}
.sec-kv__name{position:absolute;top:calc(var(--u)*394);font-family:var(--f-en);font-weight:300;font-style:italic;color:var(--light);font-size:calc(var(--u)*28);line-height:calc(var(--u)*61);text-shadow:0 1px 8px rgba(0,0,0,.75)}
.sec-kv__name--01{right:calc(var(--u)*1198)}
.sec-kv__name--02{right:calc(var(--u)*828)}
.sec-kv__name--03{right:calc(var(--u)*574)}
.sec-kv__name--04{right:calc(var(--u)*157)}
.sec-kv__presented{position:absolute;top:calc(var(--u)*601);right:calc(var(--u)*22);font-family:var(--f-en);font-weight:300;font-style:italic;color:var(--light);font-size:calc(var(--u)*22);line-height:calc(var(--u)*30)}
.sec-kv__ttl{position:absolute;top:calc(var(--u)*642);left:0;width:100%;font-family:var(--f-en);font-weight:500;font-style:italic;color:var(--light);font-size:calc(var(--u)*159);line-height:calc(var(--u)*128);text-align:center}

/* ============================================================ CONCEPT  (768-1520) */
.sec-concept{padding:calc(var(--u)*94.8) 0 calc(var(--u)*110)}
.sec-concept__catch{margin-top:calc(var(--u)*46.4);font-family:"Zen Old Mincho",serif;font-weight:600;color:var(--gold);font-size:calc(var(--u)*50);line-height:calc(var(--u)*50)}
.sec-concept__catch .q:first-child{margin-right:calc(var(--u)*44)}
.sec-concept__catch .q:last-child{margin-left:calc(var(--u)*22)}
.sec-concept__sub{margin-top:calc(var(--u)*40.6);font-weight:500;font-size:calc(var(--u)*30);line-height:calc(var(--u)*48);letter-spacing:.1em;text-indent:.1em}
.sec-concept__lead{margin-top:calc(var(--u)*18);font-size:calc(var(--u)*18);line-height:calc(var(--u)*31)}
.date-rule{width:calc(var(--u)*402);margin-inline:auto;padding:calc(var(--u)*7.5) 0 calc(var(--u)*5.5);border-top:1px solid var(--gray);border-bottom:1px solid var(--gray);font-family:var(--f-en);font-weight:200;font-style:italic;color:var(--gray);font-size:calc(var(--u)*40);line-height:calc(var(--u)*61);white-space:nowrap}
.sec-concept__date{margin-top:calc(var(--u)*46.2)}
.sec-concept__note{margin-top:calc(var(--u)*8.75);font-size:calc(var(--u)*18);line-height:calc(var(--u)*35)}
.btn-pill{display:flex;align-items:center;justify-content:space-between;width:calc(var(--u)*280);height:calc(var(--u)*50);margin:calc(var(--u)*46.2) auto 0;padding:0 calc(var(--u)*23) 0 calc(var(--u)*90);border:1px solid var(--gold);border-radius:calc(var(--u)*30);color:var(--gold);font-family:var(--f-go);font-size:calc(var(--u)*16);letter-spacing:.05em}
.btn-pill__dot{width:calc(var(--u)*4);height:calc(var(--u)*4);border-radius:50%;background:var(--gold)}

/* ============================================================ NEXT MATCH  (1520-1766) */
.sec-next{padding:calc(var(--u)*42.8) 0 calc(var(--u)*46.2)}
.sec-next__date{margin-top:calc(var(--u)*17.2)}
.sec-next__note{margin-top:calc(var(--u)*8.75);font-size:calc(var(--u)*18);line-height:calc(var(--u)*35)}

/* ============================================================ STREAM  (1766-2544) */
.sec-stream{padding:calc(var(--u)*94.8) 0 calc(var(--u)*110)}
.sec-stream__ttl{margin-top:calc(var(--u)*39);font-weight:500;font-size:calc(var(--u)*30);line-height:calc(var(--u)*48);letter-spacing:.1em;text-indent:.1em}
.sec-stream .dot{margin-top:calc(var(--u)*12.2)}
.sec-stream .btn-list--2{margin-top:calc(var(--u)*30)}
.sec-stream__lead{margin-top:calc(var(--u)*54.8);font-weight:500;font-size:calc(var(--u)*30);line-height:calc(var(--u)*46);letter-spacing:.1em;text-indent:.1em}
.sec-stream__lead+.dot{margin-top:calc(var(--u)*13.2)}
.sec-stream .btn-list--4{margin-top:calc(var(--u)*30)}

/* ============================================================ 番組概要・ルール  (2544-3729) */
.sec-about{padding:calc(var(--u)*94.8) 0 calc(var(--u)*110)}
.sec-about .sec-ttl{margin-top:calc(var(--u)*45.4)}
.sec-about .sec-ttl+.dot{margin-top:calc(var(--u)*33.8)}
.sec-about__catch{margin-top:calc(var(--u)*36.8);font-weight:500;font-size:calc(var(--u)*30);line-height:calc(var(--u)*48);letter-spacing:.1em;text-indent:.1em}
.sec-about__lead{margin-top:calc(var(--u)*15);font-size:calc(var(--u)*18);line-height:calc(var(--u)*31)}
.sec-about__catch+.sec-about__lead{margin-top:calc(var(--u)*18)}

.stats{display:flex;width:calc(var(--u)*1110);margin:calc(var(--u)*80.2) auto 0}
.stats__item{position:relative;width:calc(100% / 3);padding:calc(var(--u)*24) 0 calc(var(--u)*25.2)}
.stats__item::before,.stats__item::after{content:"";position:absolute;left:50%;width:calc(var(--u)*341);height:1px;background:var(--gold);transform:translateX(-50%)}
.stats__item::before{top:0}.stats__item::after{bottom:0}
.stats__item dt{font-family:var(--f-en);font-weight:300;font-style:italic;color:var(--gold);font-size:calc(var(--u)*16);line-height:calc(var(--u)*20)}
.stats__item dd{margin-top:calc(var(--u)*10.8);font-weight:500;font-size:calc(var(--u)*30);line-height:calc(var(--u)*48);letter-spacing:.1em;text-indent:.1em}

.flow{display:flex;justify-content:center;gap:calc(var(--u)*26.5);margin-top:calc(var(--u)*51)}
.flow__item{position:relative;display:flex;flex-direction:column;align-items:center;width:calc(var(--u)*220);height:calc(var(--u)*220);padding-top:calc(var(--u)*26);border:1px solid var(--gold);border-radius:50%}
.flow__num{font-family:var(--f-en);font-weight:300;font-style:italic;color:var(--gold);font-size:calc(var(--u)*20);line-height:calc(var(--u)*20)}
.flow__item .dot{margin-top:calc(var(--u)*8);background:var(--gray)}
.flow__txt{margin-top:calc(var(--u)*18);font-size:calc(var(--u)*18);line-height:calc(var(--u)*30);letter-spacing:.08em;text-indent:.08em}
.flow__item:not(:last-child)::after{content:"";position:absolute;top:calc(var(--u)*106);left:calc(100% + var(--u)*9);width:0;height:0;border-style:solid;border-width:calc(var(--u)*6) 0 calc(var(--u)*6) calc(var(--u)*8);border-color:transparent transparent transparent var(--gray)}

/* ============================================================ 参加チーム  (3729-5965) */
.sec-teams{padding:calc(var(--u)*95.8) 0 calc(var(--u)*148)}
.sec-teams .sec-ttl{margin-top:calc(var(--u)*45.4)}
.sec-teams .sec-ttl+.dot{margin-top:calc(var(--u)*33.8)}
.team{width:calc(var(--u)*1080);margin:calc(var(--u)*40) auto 0;border:1px solid var(--line)}
.dot+.team{margin-top:calc(var(--u)*37)}
.team__name{display:flex;align-items:center;justify-content:center;height:calc(var(--u)*60);margin:-1px -1px 0;background:var(--gold);color:#000;font-family:var(--f-min);font-weight:600;font-size:calc(var(--u)*24);line-height:calc(var(--u)*48);letter-spacing:.05em;text-indent:.05em}
.team__members{display:flex;justify-content:center;gap:calc(var(--u)*25);padding:calc(var(--u)*34) calc(var(--u)*39) calc(var(--u)*40)}
.member{width:calc(var(--u)*180)}
.member__name{min-height:calc(var(--u)*44);font-family:var(--f-go);font-size:calc(var(--u)*16);line-height:calc(var(--u)*22);text-align:left}

/* ============================================================ 順位表  (5965-6685) */
.sec-standings{padding:calc(var(--u)*95.8) 0 calc(var(--u)*107.2)}
.sec-standings .sec-ttl{margin-top:calc(var(--u)*45.4)}
.sec-standings .sec-ttl+.dot{margin-top:calc(var(--u)*33.8)}
.rank__scroll{width:calc(var(--u)*900);max-width:100%;margin:calc(var(--u)*37) auto 0;overflow-x:auto}
.rank{width:100%;min-width:calc(var(--u)*900);border-collapse:collapse;table-layout:fixed}
.rank th,.rank td{font-family:var(--f-min);font-size:calc(var(--u)*18);letter-spacing:.05em}
.rank thead tr{background:var(--gold)}
.rank th{height:calc(var(--u)*50);color:#000;font-weight:400}
.rank td{height:calc(var(--u)*53);border-bottom:1px solid var(--gray);color:var(--gray);font-weight:600}
.rank__no{width:calc(var(--u)*90);text-align:center}
.rank__team{text-align:left}
.rank__num{width:calc(var(--u)*84);text-align:center}
.rank__no,.rank__team{position:sticky}
.rank__no{left:0}
.rank__team{left:calc(var(--u)*90)}
.rank thead .rank__no,.rank thead .rank__team{background:var(--gold)}
.rank tbody .rank__no,.rank tbody .rank__team{background:var(--green)}
.rank__date{margin-top:calc(var(--u)*35.8);font-size:calc(var(--u)*18);line-height:calc(var(--u)*31)}
.rank__hint{margin-top:calc(var(--u)*12);color:var(--gold);font-size:calc(var(--u)*13);text-align:right}

/* ============================================================ SNS  (6685-7225) */
.sec-sns{padding:calc(var(--u)*94.8) 0 calc(var(--u)*110)}
.sec-sns__lead{margin-top:calc(var(--u)*40);font-weight:500;font-size:calc(var(--u)*30);line-height:calc(var(--u)*46);letter-spacing:.1em;text-indent:.1em}
.sec-sns .dot{margin-top:calc(var(--u)*13.2)}
.sec-sns .btn-list{margin-top:calc(var(--u)*30)}

/* ============================================================ SPONSOR  (7225-8015) */
.sec-sponsor{padding:calc(var(--u)*94.8) 0 calc(var(--u)*111)}
.sec-sponsor__ttl{margin-top:calc(var(--u)*40);font-weight:500;font-size:calc(var(--u)*30);line-height:calc(var(--u)*46);letter-spacing:.1em;text-indent:.1em}
.logo-list+.sec-sponsor__ttl{margin-top:calc(var(--u)*54.8)}
.sec-sponsor .dot{margin-top:calc(var(--u)*13.2)}
.logo-list{display:flex;flex-wrap:wrap;justify-content:center;gap:calc(var(--u)*13) calc(var(--u)*13.3);width:calc(var(--u)*1080);margin:calc(var(--u)*30) auto 0}
.logo-box{display:flex;align-items:center;justify-content:center;width:calc(var(--u)*260);height:calc(var(--u)*90);font-family:var(--f-go);font-size:calc(var(--u)*20);line-height:calc(var(--u)*28)}
.logo-box img{width:auto;height:auto;max-width:calc(var(--u)*220);max-height:calc(var(--u)*66);object-fit:contain}
.logo-list--3{flex-direction:column;width:calc(var(--u)*260)}
.logo-list--3 li{width:100%}

/* ============================================================ footer  (8015-8457) */
.l-footer{padding:calc(var(--u)*50) 0 calc(var(--u)*17.5);text-align:center}
.l-footer__logo{display:block;width:calc(var(--u)*140);margin:0 auto}
.f-nav{padding:calc(var(--u)*32) 0 calc(var(--u)*30);border-top:1px solid var(--gray);border-bottom:1px solid var(--gray);margin-top:calc(var(--u)*50)}
.f-nav__list{display:flex;align-items:center;justify-content:center;gap:calc(var(--u)*18)}
.f-nav__list a{font-family:var(--f-go);font-size:calc(var(--u)*16);line-height:calc(var(--u)*22);letter-spacing:.05em}
.f-nav__sep{width:calc(var(--u)*6);height:calc(var(--u)*6);border-radius:50%;background:var(--gray)}
.l-footer__note{padding:calc(var(--u)*29.8) 0 calc(var(--u)*28.2);border-bottom:1px solid var(--gray);font-weight:500;font-size:calc(var(--u)*14);line-height:calc(var(--u)*22);letter-spacing:.1em;text-indent:.1em}
.l-footer__bottom{display:flex;align-items:baseline;justify-content:space-between;margin-top:calc(var(--u)*15.5);padding:0 calc(var(--u)*12) 0 calc(var(--u)*20);font-family:var(--f-go);font-size:calc(var(--u)*12);line-height:calc(var(--u)*18)}

/* ============================================================================
   SP  (-768px) : --u を 375px 基準に振り直して組み直す
   ============================================================================ */
@media screen and (max-width:768px){
.is-pc{display:none!important}
.is-sp{display:block!important}
br.is-sp{display:inline!important}
.container{--u:calc(100cqw / 375)}

/* header */
/* 2026-09-12フィードバック：SPでg-navが芸人写真(蛍原さん)に被るため、写真に重ねる絶対配置をやめ、写真の上に独立した帯として配置する構成に変更 */
.l-header{position:relative;top:auto;left:auto;display:flex;align-items:center;justify-content:space-between;padding:calc(var(--u)*12);background:#000}
.l-header__logo{position:static;width:calc(var(--u)*48)}
.g-nav{position:static}
.g-nav__list{gap:calc(var(--u)*7)}
.g-nav__list a{font-size:calc(var(--u)*11);line-height:1.4;text-shadow:none}
.g-nav__sep{width:calc(var(--u)*3);height:calc(var(--u)*3)}

/* KV : 2×2 グリッド ＋ タイトルは写真の下 */
.sec-kv{height:auto;padding-bottom:calc(var(--u)*28)}
.sec-kv__photos{position:relative;grid-template-columns:repeat(2,1fr)}
.sec-kv__photo{aspect-ratio:187.5 / 230;height:auto}
.sec-kv__noise{bottom:auto;height:calc(var(--u)*460)}
.sec-kv__name{font-size:calc(var(--u)*14);line-height:1}
.sec-kv__name--01{top:calc(var(--u)*206);right:52%}
.sec-kv__name--02{top:calc(var(--u)*206);right:calc(var(--u)*12)}
.sec-kv__name--03{top:calc(var(--u)*436);right:52%}
.sec-kv__name--04{top:calc(var(--u)*436);right:calc(var(--u)*12)}
.sec-kv__presented{position:static;margin-top:calc(var(--u)*16);padding-right:calc(var(--u)*12);font-size:calc(var(--u)*12);line-height:1;text-align:right}
.sec-kv__ttl{position:static;margin-top:calc(var(--u)*10);font-size:calc(var(--u)*40);line-height:1.1}

/* CONCEPT */
.sec-concept{padding:calc(var(--u)*56) calc(var(--u)*16) calc(var(--u)*64)}
.eyebrow{font-size:calc(var(--u)*11);line-height:1.4}
.sec-concept__catch{margin-top:calc(var(--u)*24);font-size:calc(var(--u)*30);line-height:1.3}
.sec-concept__catch .q:first-child{margin-right:calc(var(--u)*14)}
.sec-concept__catch .q:last-child{margin-left:calc(var(--u)*8)}
.sec-concept__sub{margin-top:calc(var(--u)*20);font-size:calc(var(--u)*17);line-height:1.6}
.sec-concept__lead{margin-top:calc(var(--u)*16);font-size:calc(var(--u)*13);line-height:1.9}
.date-rule{width:calc(var(--u)*250);padding:calc(var(--u)*6) 0 calc(var(--u)*4);font-size:calc(var(--u)*24);line-height:1.4}
.sec-concept__date{margin-top:calc(var(--u)*28)}
.sec-concept__note{margin-top:calc(var(--u)*8);font-size:calc(var(--u)*13);line-height:1.8}
.btn-pill{width:calc(var(--u)*240);height:calc(var(--u)*46);margin-top:calc(var(--u)*28);padding:0 calc(var(--u)*18) 0 calc(var(--u)*70);border-radius:calc(var(--u)*23);font-size:calc(var(--u)*14)}
.btn-pill__dot{width:calc(var(--u)*4);height:calc(var(--u)*4)}

/* NEXT MATCH */
.sec-next{padding:calc(var(--u)*36) calc(var(--u)*16)}
.sec-next__date{margin-top:calc(var(--u)*12)}
.sec-next__note{margin-top:calc(var(--u)*6);font-size:calc(var(--u)*13);line-height:1.8}

/* STREAM */
.sec-stream{padding:calc(var(--u)*56) calc(var(--u)*16) calc(var(--u)*64)}
.sec-stream__ttl{margin-top:calc(var(--u)*18);font-size:calc(var(--u)*18);line-height:1.6}
.sec-stream .dot{margin-top:calc(var(--u)*14)}
.sec-stream__lead{margin-top:calc(var(--u)*36);font-size:calc(var(--u)*16);line-height:1.9}
.btn-list{flex-wrap:wrap;gap:calc(var(--u)*11)}
.btn-list li{width:calc(50% - var(--u)*5.5)}
.btn-box{width:100%;height:calc(var(--u)*68);font-size:calc(var(--u)*13);line-height:1.5}
.sec-stream .btn-list--2,.sec-stream .btn-list--4,.sec-sns .btn-list{margin-top:calc(var(--u)*20)}

/* 番組概要・ルール */
.sec-about{padding:calc(var(--u)*56) calc(var(--u)*16) calc(var(--u)*64)}
.sec-ttl{font-size:calc(var(--u)*26);line-height:1.4}
.sec-about .sec-ttl{margin-top:calc(var(--u)*18)}
.sec-about .sec-ttl+.dot{margin-top:calc(var(--u)*16)}
.sec-about__catch{margin-top:calc(var(--u)*22);font-size:calc(var(--u)*17);line-height:1.6}
.sec-about__lead,.sec-about__catch+.sec-about__lead{margin-top:calc(var(--u)*16);font-size:calc(var(--u)*13);line-height:1.9}
.stats{flex-direction:column;gap:calc(var(--u)*16);width:auto;margin-top:calc(var(--u)*40)}
.stats__item{width:100%;padding:calc(var(--u)*12) 0}
.stats__item::before,.stats__item::after{width:100%}
.stats__item dt{font-size:calc(var(--u)*12);line-height:1.4}
.stats__item dd{margin-top:calc(var(--u)*4);font-size:calc(var(--u)*20);line-height:1.4}
.flow{flex-wrap:wrap;gap:calc(var(--u)*16);margin-top:calc(var(--u)*40)}
.flow__item{width:calc(50% - var(--u)*8);height:auto;aspect-ratio:1;justify-content:center;padding-top:0}
.flow__num{font-size:calc(var(--u)*14);line-height:1}
.flow__item .dot{margin-top:calc(var(--u)*6)}
.flow__txt{margin-top:calc(var(--u)*10);font-size:calc(var(--u)*12);line-height:1.7}
.flow__item:not(:last-child)::after{content:none}

/* 参加チーム */
.sec-teams{padding:calc(var(--u)*56) calc(var(--u)*16) calc(var(--u)*64)}
.sec-teams .sec-ttl{margin-top:calc(var(--u)*18)}
.sec-teams .sec-ttl+.dot{margin-top:calc(var(--u)*16)}
.team,.dot+.team{width:100%;margin-top:calc(var(--u)*24)}
.team__name{height:calc(var(--u)*44);font-size:calc(var(--u)*16);line-height:1.4}
.team__members{flex-wrap:wrap;justify-content:flex-start;gap:calc(var(--u)*14);padding:calc(var(--u)*18) calc(var(--u)*16) calc(var(--u)*20)}
.member{width:calc(50% - var(--u)*7)}
.member__name{min-height:0;font-size:calc(var(--u)*12);line-height:1.5}

/* 順位表 */
.sec-standings{padding:calc(var(--u)*56) calc(var(--u)*16) calc(var(--u)*64)}
.sec-standings .sec-ttl{margin-top:calc(var(--u)*18)}
.sec-standings .sec-ttl+.dot{margin-top:calc(var(--u)*16)}
.rank__scroll{width:100%;margin-top:calc(var(--u)*24)}
.rank{min-width:calc(var(--u)*560);width:100%}
.rank th,.rank td{font-size:calc(var(--u)*13)}
.rank th{height:calc(var(--u)*38)}
.rank td{height:calc(var(--u)*40)}
.rank__no{width:calc(var(--u)*40)}
.rank__team{left:calc(var(--u)*40)}
.rank__num{width:calc(var(--u)*44)}
.rank__date{margin-top:calc(var(--u)*20);font-size:calc(var(--u)*12);line-height:1.6}
.rank__hint{margin-top:calc(var(--u)*8);font-size:calc(var(--u)*11)}

/* SNS */
.sec-sns{padding:calc(var(--u)*56) calc(var(--u)*16) calc(var(--u)*64)}
.sec-sns__lead{margin-top:calc(var(--u)*20);font-size:calc(var(--u)*16);line-height:1.9}
.sec-sns .dot{margin-top:calc(var(--u)*14)}

/* SPONSOR */
.sec-sponsor{padding:calc(var(--u)*56) calc(var(--u)*16) calc(var(--u)*64)}
.sec-sponsor__ttl,.logo-list+.sec-sponsor__ttl{margin-top:calc(var(--u)*20);font-size:calc(var(--u)*17);line-height:1.6}
.sec-sponsor .dot{margin-top:calc(var(--u)*14)}
.logo-list{gap:calc(var(--u)*11);width:100%;margin-top:calc(var(--u)*20)}
.logo-list li{width:calc(50% - var(--u)*5.5)}
.logo-list--1 li{width:calc(var(--u)*200)}
.logo-box{width:100%;height:calc(var(--u)*66);font-size:calc(var(--u)*14);line-height:1.5}
.logo-box img{max-width:calc(var(--u)*160);max-height:calc(var(--u)*48)}
.logo-list--3{flex-direction:column;width:calc(var(--u)*200)}
.logo-list--3 li{width:100%}

/* footer */
.l-footer{padding:calc(var(--u)*40) calc(var(--u)*16) calc(var(--u)*24)}
.l-footer__logo{width:calc(var(--u)*80)}
.f-nav{margin-top:calc(var(--u)*32);padding:calc(var(--u)*18) 0}
.f-nav__list{flex-wrap:wrap;gap:calc(var(--u)*10)}
.f-nav__list a{font-size:calc(var(--u)*12);line-height:1.6}
.f-nav__sep{width:calc(var(--u)*4);height:calc(var(--u)*4)}
.l-footer__note{padding:calc(var(--u)*18) 0;font-size:calc(var(--u)*11);line-height:1.7}
.l-footer__bottom{flex-direction:column;align-items:center;gap:calc(var(--u)*6);margin-top:calc(var(--u)*16);padding:0;font-size:calc(var(--u)*10);line-height:1.7}
}

/* ---------- 375px 未満のはみ出し防止 ---------- */
@media screen and (max-width:374px){
.g-nav__list{gap:calc(var(--u)*5)}
.g-nav__list a{font-size:calc(var(--u)*10)}
}
