@import url("https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,500;0,600;1,500&family=Zen+Maru+Gothic:wght@400;500;700&family=Zen+Kaku+Gothic+New:wght@400;500;700&family=Noto+Serif+JP:wght@500;700&display=swap");


:root{
  --site-paper:#fffdf9;
  --site-ink:#3e3540;
  --site-muted:#776d75;
  --site-line:#eadfe5;
  --site-pink:#ef7fa2;
  --site-green:#bdebd2;
  --site-font-round:"Zen Maru Gothic","Hiragino Maru Gothic ProN","Yu Gothic",sans-serif;
  --site-font-body:"Zen Kaku Gothic New","Zen Maru Gothic","Hiragino Sans","Yu Gothic",Meiryo,sans-serif;
  --site-font-mincho:"Noto Serif JP","Hiragino Mincho ProN","Yu Mincho",serif;
  --site-font-en:"Cormorant Garamond",Georgia,"Times New Roman",serif;
  --site-font:var(--site-font-body);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:var(--site-font-body);background:var(--site-paper);color:var(--site-ink);-webkit-font-smoothing:antialiased;letter-spacing:.01em}
a{color:inherit;text-decoration:none}
button{font:inherit;color:inherit}
.official-header{
  position:sticky;top:0;z-index:300;
  background:rgba(255,253,249,.97);
  border-bottom:1px solid rgba(234,223,229,.82);
  backdrop-filter:blur(12px);
}
.official-header__inner{
  max-width:1440px;margin:auto;min-height:74px;padding:0 34px;
  display:flex;align-items:center;justify-content:space-between;gap:24px;
}
.official-brand{display:flex;align-items:baseline;gap:14px;white-space:nowrap}
.official-brand__jp{font-family:var(--site-font-round);font-size:24px;font-weight:500;letter-spacing:.12em;color:#ef6f97}
.official-brand__en{font-family:var(--site-font-en);font-size:11px;letter-spacing:.22em;color:#917b86}
.official-nav{display:flex;align-items:center;gap:2px;overflow:auto;scrollbar-width:none}
.official-nav::-webkit-scrollbar{display:none}
.official-nav a{
  position:relative;white-space:nowrap;
  padding:26px 11px 22px;font-size:14px;color:#5e5259;
}
.official-nav a.is-current{color:#ed6f96}
.official-nav a.is-current:after{
  content:"";position:absolute;left:11px;right:11px;bottom:12px;height:3px;
  border-radius:999px;background:#ef7fa2;
}
.official-nav a.business{
  margin-left:8px;padding:14px 21px;border-radius:999px;
  background:#bdebd2;border:2px solid #78c69b;color:#3e6d55;
}
.official-nav a.business:after{display:none}
.official-footer{border-top:1px solid var(--site-line);background:#fff;padding:46px 24px 28px}
.official-footer__inner{max-width:1100px;margin:auto;display:grid;grid-template-columns:1.05fr 2fr;gap:44px}
.official-footer__brand b{display:block;font-size:22px;color:#ef6f97;letter-spacing:.08em}
.official-footer__brand small{font-family:Georgia,"Times New Roman",serif;letter-spacing:.22em;color:#9b8791}
.official-footer__brand p{font-size:15px;line-height:1.9;color:var(--site-muted);margin:14px 0 0}
.official-footer__links{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.official-footer__links strong{display:block;font-size:14px;margin-bottom:10px}
.official-footer__links a{display:block;font-size:14px;color:#665a61;padding:5px 0}
.official-footer__copy{max-width:1100px;margin:30px auto 0;padding-top:20px;border-top:1px solid #f0e8ec;font-size:12px;color:#9b8e95}
@media(max-width:1000px){
  .official-header__inner{padding:0 16px;min-height:64px;gap:14px}
  .official-brand__jp{font-size:20px}.official-brand__en{display:none}
  .official-nav{max-width:74%}.official-nav a{font-size:13px;padding:22px 9px 19px}
}
@media(max-width:720px){
  .official-nav{max-width:65%}.official-nav a{font-size:12px}
  .official-nav a.business{display:none}
  .official-footer__inner{grid-template-columns:1fr}
  .official-footer__links{grid-template-columns:1fr 1fr}
}


/* story.html inspired typography */
.official-nav a{font-family:var(--site-font-body)}
.official-footer__brand b{font-family:var(--site-font-round)}
.official-footer__brand small{font-family:var(--site-font-en)}
