:root {
  
  --color-ink: #0a1a33;          
  --color-main: #0a1a33;         
  --color-main-2: #1f4f86;       
  --color-blue: #39a2ff;         
  --color-blue-deep: #1d7fe0;    
  --color-accent: #f8c988;       
  --color-accent-2: #f3b25e;     
  --color-base: #ffffff;         
  --color-pale: #e9f4ff;         
  --color-line: #b9c6d8;         
  --color-on-dark: #ffffff;      
  --color-on-dark-line: rgb(255 255 255 / 0.72);
  --color-error: #d23a2f;        
  --color-shadow: rgb(10 26 51 / 0.2);

  
  --bg-dark: var(--color-ink);
  --bg-accent: var(--color-ink);       

  
  --font-body: "Noto Sans JP", "Hiragino Sans", "Hiragino Kaku Gothic ProN", system-ui, sans-serif;
  --font-head: "Dela Gothic One", "Hiragino Sans", sans-serif;   
  --font-en: "Montserrat", "Noto Sans JP", sans-serif;   
  --font-spray: "Permanent Marker", "M PLUS Rounded 1c", cursive;
  
  --fs-min: 13px;
  
  --fs-base: clamp(var(--fs-min), min(2.56dvh, 4.2vw), 17px);   
  --fs-ui: max(var(--fs-min), 13px);   
  --fs-input: 16px;                     
  --fs-head: min(13.2cqi, 3.1em);   
  --fs-sub: max(var(--fs-min), 0.88em);              
  --fw-body: 700;                
  --fw-head: 900;
  --ls-body: 0;
  --ls-head: -0.02em;                  
  --lh-body: 1.6;                
  --lh-head: 1.12;               

  
  --col: 480px;                  
  --header-h: 56px;
  --gutter: 20px;                
  --sp-1: 0.4em;                 
  --sp-p: max(0.7em, 1.6dvh);   
  --sp-g: max(1em, 3.4dvh);      
  --pad-y: 1.1em;                
  --next-h: 0px;                 
  --line: 2px;                   
  --radius-pill: var(--radius-s);   
  --radius-s: 4px;               
  --radius-m: 12px;              
  --shadow-tag: 4px 4px 0 0 var(--color-ink);   
  --shadow-soft: 4px 4px 0 0 var(--color-accent);   
  --shadow-column: 0 0 24px 0 var(--color-shadow);

  
  --ease-out: cubic-bezier(0.22, 1, 0.36, 1);
  --ease-line: cubic-bezier(0.19, 1, 0.22, 1);   
  --ease-pop: cubic-bezier(0.34, 1.56, 0.64, 1);
  --rise: 26px;                  
  --dur-in: 560ms;
  --dur-hover: 300ms;
  --dur-paint: 1200ms;           
  --delay-paint: 400ms;          
  --dur-float: 3.6s;             
  --dur-swing: 3.2s;             
  --pxs-band: 60;                
  --pxs-thin: 40;                
}

@media (max-height: 600px) { :root { --pad-y: 0.7em; } }
