


.gh{--hb-bg:var(--green);--hb-fg:var(--cream);--hb-sm:var(--cream);--hb-btn:var(--cream);--hb-on-fg:var(--green);--gh-big:var(--cream);color:var(--hb-fg);padding-bottom:0;min-height:min(100svh, 1100px);display:flex;flex-direction:column}
html[data-gfield="cream"] .gh{--hb-bg:var(--cream);--hb-fg:var(--ink);--hb-sm:var(--ink);--hb-btn:var(--ink);--hb-on-fg:var(--cream);--gh-big:var(--green)}
html[data-gfield="orange"] .gh{--hb-bg:var(--type-orange);--hb-fg:var(--cream);--hb-sm:var(--cream);--hb-btn:var(--cream);--hb-on-fg:var(--btn-orange);--gh-big:var(--cream)}
.gh-stage{flex:1;display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);grid-template-rows:auto 1fr auto auto;column-gap:clamp(24px,3.4vw,64px);align-items:center;
  padding:max(1.2rem, calc(30 * var(--hb-u))) var(--hb-margin) max(2rem, calc(64 * var(--hb-u)))}
.gh-k{grid-column:1 / -1;grid-row:1;justify-self:center;margin:0;font-size:12px;text-align:center}
.gh-h{grid-column:2;grid-row:2;margin:0;color:var(--gh-big);text-align:center;line-height:.8}
.gh-num{display:block;font-family:var(--f-narrow);font-stretch:62%;font-weight:900;letter-spacing:-.01em;font-size:min(46vh, 34vw, 560px);padding-top:.04em}
html[data-gface="hanken"] .gh-num{font-family:var(--f-head);font-stretch:100%;font-weight:800;letter-spacing:-.06em;font-size:min(40vh, 26vw, 470px)}
.gh-side{grid-row:2;margin:0;font:700 clamp(24px,2.3vw,42px)/1.02 var(--f-head);letter-spacing:-.03em;text-transform:uppercase}
.gh-side--l{grid-column:1;justify-self:end;text-align:right}
.gh-side--r{grid-column:3;justify-self:start;text-align:left}
.gh-btns{grid-column:1 / -1;grid-row:3;justify-self:center;display:flex;flex-wrap:wrap;justify-content:center;gap:12px;margin-top:clamp(18px,3vh,34px)}
.gh-btn{display:inline-flex;align-items:center;justify-content:center;min-width:200px;padding:20px 34px;border-radius:999px;box-shadow:inset 0 0 0 2px var(--hb-fg);color:var(--hb-fg);
  text-decoration:none;font:700 21px/1 var(--f-head);letter-spacing:-.01em}
.gh-btn--fill{background:var(--hb-fg);color:var(--hb-on-fg)}
.gh-btn:focus-visible{outline:2px solid var(--hb-fg);outline-offset:4px}
.gh-911{grid-column:1 / -1;grid-row:4;justify-self:center;margin:clamp(18px,2.6vh,28px) 0 0;font:600 clamp(18px,1.4vw,22px)/1.3 var(--f-head);letter-spacing:-.01em;text-align:center}
.gh-911 b{font-weight:800;white-space:nowrap}   
.gh-dot{opacity:.8}
.gh .sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}


.gw{padding-bottom:clamp(80px,11vh,130px)}
.gw-rows{list-style:none;margin:clamp(30px,5vh,54px) 0 0;padding:0;border-top:1.5px dashed color-mix(in srgb,currentColor 35%,transparent)}
.gw-rows li{border-bottom:1.5px dashed color-mix(in srgb,currentColor 35%,transparent)}
.gw-rows a,.gw-plain{display:flex;align-items:baseline;gap:18px;padding:clamp(16px,2.4vh,24px) 0;color:inherit;text-decoration:none}
.gw-plain{padding-right:calc(clamp(20px,1.6vw,28px) + 18px)}   
.gw-rows b{font:700 clamp(26px,2.6vw,46px)/1.04 var(--f-head);letter-spacing:-.035em}
.gw-rows i{flex:1;min-width:20px}
.gw-rows .hr-mono{text-align:right;opacity:.8}
.gw-arr{font:700 clamp(20px,1.6vw,28px)/1 var(--f-head);color:var(--type-orange);transition:transform .6s var(--ease-out)}
@media (hover:hover) and (pointer:fine){ .gw-rows a:hover .gw-arr{transform:translateX(5px)} }
.gw-rows a:focus-visible{outline:2px solid currentColor;outline-offset:4px}


.gp{padding-bottom:clamp(90px,13vh,150px)}
.gp-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:24px;row-gap:56px;margin-top:clamp(30px,5vh,54px);align-items:start}
.gp-col--friend{grid-column:1 / span 6}
.gp-col--you{grid-column:8 / span 5}
html[data-gorder="you"] .gp-col--you{grid-column:1 / span 5;grid-row:1}
html[data-gorder="you"] .gp-col--friend{grid-column:7 / span 6;grid-row:1}
.gp-h{margin:0;font:700 clamp(36px,3.6vw,64px)/1 var(--f-head);letter-spacing:-.045em}
.gp-steps{list-style:none;margin:clamp(22px,3.4vh,34px) 0 0;padding:0;border-top:1.5px dashed color-mix(in srgb,currentColor 35%,transparent)}
.gp-steps li{position:relative;padding:14px 0 14px 2.4em;font:500 clamp(17px,1.3vw,21px)/1.45 var(--f-body);border-bottom:1.5px dashed color-mix(in srgb,currentColor 35%,transparent)}
.gp-steps .hr-mono{position:absolute;left:0;top:14px;line-height:1.9;opacity:.7}
.gp-steps b{font-weight:700}
.gp-q{margin:clamp(24px,3.6vh,36px) 0 0}
.gp-q p{margin:0;font:600 clamp(20px,1.7vw,28px)/1.25 var(--f-head);letter-spacing:-.02em;text-wrap:pretty}
.gp-q .hr-mono{display:block;margin-top:10px;opacity:.75}


.gc{padding-top:clamp(60px,9vh,110px);padding-bottom:clamp(140px,15vw,260px)}   
html[data-foot="floor"] .gc{padding-bottom:clamp(90px,13vh,150px)}
.gc-grid{max-width:980px}
.gc-k{margin:0;opacity:.8}
.gc-h{margin:16px 0 0;font:700 clamp(40px,4.4vw,78px)/.98 var(--f-head);letter-spacing:-.045em;text-wrap:balance}
.gc-ways{list-style:none;margin:clamp(24px,3.6vh,36px) 0 0;padding:0;display:flex;flex-wrap:wrap;gap:12px 30px}
.gc-ways a{color:inherit;text-decoration:none;font:700 18px/1.2 var(--f-head);letter-spacing:-.01em;border-bottom:2px solid currentColor;padding-bottom:4px}


@media (max-width:991px){
  .gp-col--friend,.gp-col--you,html[data-gorder="you"] .gp-col--you,html[data-gorder="you"] .gp-col--friend{grid-column:1 / -1;grid-row:auto}
  html[data-gorder="you"] .gp-col--you{order:-1}
  .gp-grid{display:flex;flex-direction:column;align-items:stretch}
}


@media (max-width:760px){
  .gh{min-height:min(100svh, 860px)}
  .gh-stage{grid-template-columns:minmax(0,1fr) minmax(0,1fr);grid-template-rows:auto 1fr auto auto auto;column-gap:14px;padding:1.2rem var(--hb-margin) 6.4rem}      
  .gh-k{font-size:11px}
  .gh-h{grid-column:1 / -1;grid-row:2}
  .gh-num{font-size:min(40vh, 62vw)}
  html[data-gface="hanken"] .gh-num{font-size:min(34vh, 44vw)}
  .gh-side{grid-row:3;font-size:22px;margin-top:6px}
  .gh-side--l{grid-column:1;justify-self:start;text-align:left}
  .gh-side--r{grid-column:2;justify-self:end;text-align:right}
  .gh-btns{grid-row:4;justify-self:stretch;flex-direction:column;align-items:stretch;margin-top:22px}
  .gh-btn{min-width:0;padding:18px 24px;font-size:19px}
  .gh-911{grid-row:5;font-size:17px}

  .gw-rows a,.gw-plain{flex-wrap:wrap;gap:4px 12px;padding:16px 0}
  .gw-plain{padding-right:calc(20px + 12px)}
  .gw-rows b{flex:1 1 100%;font-size:24px}
  .gw-rows i{display:none}
  .gw-rows .hr-mono{flex:1;text-align:left;font-size:11px}

  .gp-grid{margin-top:24px;gap:48px}
  .gp-h{font-size:clamp(34px,10vw,40px)}
  .gp-steps li{font-size:16px;padding-left:2.2em}
  .gp-q p{font-size:20px}

  .gc{padding-top:56px;padding-bottom:140px}
  html[data-foot="floor"] .gc{padding-bottom:80px}
  .gc-h{font-size:clamp(34px,10vw,42px)}
  .gc-ways a{font-size:16px}
}
