/* Responsibility: shared Yukanau site header / footer / menu chrome for guide pages.
   Visual grammar mirrors the current top-page v98 chrome; page content styling does not live here. */
.yk-ui-site-chrome,
.yk-ui-site-chrome *,
.yk-ui-site-chrome *::before,
.yk-ui-site-chrome *::after{box-sizing:border-box}
.yk-ui-site-chrome{color:#29384c;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
.yk-ui-site-chrome a{color:inherit}
.yk-ui-site-chrome button{font:inherit}

.yk-ui-site-header{
  position:relative;
  z-index:20;
  width:100%;
  height:86px;
  padding:0 clamp(28px,4.2vw,66px);
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:32px;
  background:rgba(255,255,255,.94);
  border-bottom:1px solid rgba(45,61,78,.08);
  backdrop-filter:blur(10px);
  -webkit-backdrop-filter:blur(10px);
}
.yk-ui-site-brand{display:flex;align-items:flex-start;gap:13px;text-decoration:none;padding:0}
.yk-ui-site-mark{position:relative;width:28px;height:28px;margin-top:3px;flex:0 0 auto}
.yk-ui-site-mark i{position:absolute;width:5px;height:5px;border-radius:50%;opacity:.82}
.yk-ui-site-mark i:nth-child(1){left:12px;top:0;background:#e29a8f}
.yk-ui-site-mark i:nth-child(2){left:4px;top:7px;background:#e4bf6c}
.yk-ui-site-mark i:nth-child(3){left:20px;top:7px;background:#8eb4c7}
.yk-ui-site-mark i:nth-child(4){left:0;top:16px;background:#a7c4ad}
.yk-ui-site-mark i:nth-child(5){left:12px;top:13px;background:#c6a0c8}
.yk-ui-site-mark i:nth-child(6){left:23px;top:17px;background:#e59d6f}
.yk-ui-site-mark i:nth-child(7){left:6px;top:23px;background:#87b9c9}
.yk-ui-site-mark i:nth-child(8){left:17px;top:23px;background:#d7b8a6}
.yk-ui-site-brand-name{
  display:block;
  font-size:clamp(18px,1.35vw,21px);
  letter-spacing:.15em;
  line-height:1.22;
  font-weight:500;
  white-space:nowrap;
  font-family:"Zen Old Mincho","Hiragino Mincho ProN","Yu Mincho","YuMincho","Noto Serif JP",serif;
}
.yk-ui-site-brand-tagline{
  display:block;
  margin-top:7px;
  font-size:clamp(10px,.72vw,11.5px);
  letter-spacing:.085em;
  line-height:1.58;
  color:#425269;
  white-space:nowrap;
  font-family:"Zen Old Mincho","Hiragino Mincho ProN","Yu Mincho","YuMincho","Noto Serif JP",serif;
  font-weight:400;
}
.yk-ui-site-tools{display:flex;align-items:flex-start;gap:clamp(17px,2.3vw,34px);padding:0;font-family:-apple-system,BlinkMacSystemFont,"Hiragino Kaku Gothic ProN","Yu Gothic",sans-serif}
.yk-ui-site-tool{
  width:42px;
  min-height:50px;
  padding:0;
  border:0;
  background:transparent;
  color:#26364b;
  text-decoration:none;
  display:grid;
  justify-items:center;
  align-content:start;
  gap:5px;
  cursor:pointer;
}
.yk-ui-site-tool svg{width:24px;height:24px;stroke:currentColor;fill:none;stroke-width:1.45;stroke-linecap:round;stroke-linejoin:round}
.yk-ui-site-tool span{font-size:8.5px;font-weight:600;letter-spacing:.07em;white-space:nowrap}

.yk-ui-site-footer{
  position:relative;
  z-index:10;
  width:100%;
  min-height:96px;
  padding:20px clamp(28px,5vw,78px) 16px;
  border-top:1px solid rgba(45,61,78,.10);
  background:rgba(255,255,255,.94);
  backdrop-filter:blur(10px);
  -webkit-backdrop-filter:blur(10px);
  font-family:-apple-system,BlinkMacSystemFont,"Hiragino Kaku Gothic ProN","Yu Gothic",sans-serif;
  color:#536173;
}
.yk-ui-site-footer-links{display:flex;justify-content:center;flex-wrap:wrap;gap:10px clamp(20px,3vw,46px)}
.yk-ui-site-footer a{font-size:11px;letter-spacing:.05em;text-decoration:none}
.yk-ui-site-footer a:hover{text-decoration:underline;text-underline-offset:4px}
.yk-ui-site-copyright{margin:14px 0 0;text-align:center;font-size:9.5px;letter-spacing:.07em;color:#7d8794}
.yk-ui-site-tool:focus-visible,
.yk-ui-site-footer a:focus-visible{outline:2px solid rgba(70,101,132,.65);outline-offset:5px;border-radius:6px}

.yk-ui-site-menu{
  position:fixed;
  inset:0;
  z-index:100000;
  display:none;
  background:rgba(247,249,250,.94);
  backdrop-filter:blur(18px);
  -webkit-backdrop-filter:blur(18px);
}
.yk-ui-site-menu[aria-hidden="false"]{display:block}
.yk-ui-site-menu-inner{
  width:min(720px,calc(100% - 48px));
  margin:14svh auto 0;
  padding:34px;
  font-family:"Zen Old Mincho","Hiragino Mincho ProN","Yu Mincho","YuMincho","Noto Serif JP",serif;
}
.yk-ui-site-menu-close{
  margin-left:auto;
  display:grid;
  place-items:center;
  width:42px;
  height:42px;
  border:1px solid rgba(48,65,84,.18);
  border-radius:50%;
  background:#fff;
  cursor:pointer;
}
.yk-ui-site-menu-close svg{width:20px;height:20px;stroke:#26364b;fill:none;stroke-width:1.5}
.yk-ui-site-menu nav{margin-top:38px;display:grid;gap:0;border-top:1px solid rgba(48,65,84,.14)}
.yk-ui-site-menu nav a{padding:21px 3px;border-bottom:1px solid rgba(48,65,84,.14);text-decoration:none;font-size:18px;letter-spacing:.08em}
.yk-ui-site-menu-note{margin:30px 0 0;color:#68778b;font-size:12px;line-height:1.9;letter-spacing:.04em}
.yk-ui-site-menu-close:focus-visible,
.yk-ui-site-menu nav a:focus-visible{outline:2px solid rgba(70,101,132,.65);outline-offset:5px;border-radius:6px}

@media(max-width:900px){
  .yk-ui-site-header{height:78px;padding:0 22px}
  .yk-ui-site-tools{gap:9px}
  .yk-ui-site-tool{width:36px}
  .yk-ui-site-tool span{display:none}
  .yk-ui-site-tool svg{width:22px;height:22px}
  .yk-ui-site-brand{gap:9px}
  .yk-ui-site-brand-name{font-size:17px}
  .yk-ui-site-brand-tagline{font-size:9.5px}
  .yk-ui-site-menu-inner{width:min(680px,calc(100% - 40px));margin-top:10svh}
}
@media(max-width:540px){
  .yk-ui-site-header{padding:0 16px}
  .yk-ui-site-tools{gap:7px}
  .yk-ui-site-tool{width:34px}
  .yk-ui-site-brand{gap:8px}
  .yk-ui-site-footer{min-height:0;padding:12px 14px 4px}
  .yk-ui-site-footer-links{display:grid;grid-template-columns:repeat(6,1fr);gap:8px 0;width:min(380px,100%);margin:0 auto;align-items:center}
  .yk-ui-site-footer-links a{max-width:none;text-align:center;font-size:10px;letter-spacing:.025em;white-space:nowrap}
  .yk-ui-site-footer-links a:nth-child(1){grid-column:1 / 4;grid-row:1}
  .yk-ui-site-footer-links a:nth-child(5){grid-column:4 / 7;grid-row:1}
  .yk-ui-site-footer-links a:nth-child(2){grid-column:1 / 3;grid-row:2}
  .yk-ui-site-footer-links a:nth-child(3){grid-column:3 / 5;grid-row:2}
  .yk-ui-site-footer-links a:nth-child(4){grid-column:5 / 7;grid-row:2}
  .yk-ui-site-copyright{margin:7px 0 0;font-size:8.8px;line-height:1.15}
  .yk-ui-site-menu-inner{width:calc(100% - 28px);margin-top:8svh;padding:24px}
  .yk-ui-site-menu nav{margin-top:28px}
  .yk-ui-site-menu nav a{padding:18px 2px;font-size:16px}
  .yk-ui-site-menu-note{font-size:11.5px}
}
