/* ==========================================================
   Pochitto! — 結合サイト用スタイル
   tools/build-site.py が自動生成。直接編集せず、各ページの
   styles.css / concept.css / ... を直してから再生成すること。
   ========================================================== */

/* ===== #hero (styles.css) ===== */
#hero{
  --black:#111111;
  --white:#ffffff;
  --paper:#ffffff;
  --lime:#e9f22a;              
  --display:'Archivo','Haettenschweiler','Arial Narrow',Impact,sans-serif;
  --jp:'Zen Kaku Gothic New','Hiragino Kaku Gothic ProN','Yu Gothic',sans-serif;
  --hand:'Zen Kurenaido','Zen Kaku Gothic New',sans-serif;

  
  --title-size:468px;
  --title-squeeze:.5585;
  --title-rot:-4.6deg;
}#hero img{height:auto}#hero .hero{position:fixed;inset:0;overflow:hidden;background:var(--paper)}#hero .layer{position:absolute;inset:0;
  transform:translate3d(var(--px,0px),var(--py,0px),0);
  transition:none;
  will-change:transform;
}#hero .asset{position:absolute;display:block;pointer-events:none;user-select:none}#hero .band-layer{z-index:1}#hero .hband{
  position:absolute;inset:0;
  background:var(--lime);
  clip-path:polygon(56% 0, 94% 0, 40% 100%, 2% 100%);
}#hero .title-layer{
  z-index:2;
  perspective:900px;
  perspective-origin:0% 50%;
}#hero .title{
  position:absolute;left:132px;top:50%;
  transform-origin:0 50%;
  transform:translateY(-37.5%) rotateY(16deg) rotateZ(-3.2deg);
}#hero .title__word{
  display:block;white-space:nowrap;
  font-family:Impact,'Haettenschweiler','Archivo','Arial Narrow',sans-serif;
  font-weight:400;
  font-size:var(--title-size);
  line-height:.86;
  letter-spacing:-.012em;
  color:transparent;
  background-image:url(assets/prod/hero-type-fill.webp);
  background-repeat:repeat-x;
  background-size:auto 100%;
  background-position:0 50%;
  -webkit-background-clip:text;
          background-clip:text;
  animation:typeFlow 34s linear infinite;
}@keyframes typeFlow{from{background-position:0 50%}to{background-position:-2474px 50%}
}#hero .ripple{
  position:absolute;right:236px;bottom:96px;
  width:22px;height:22px;z-index:1;pointer-events:none;
}#hero .ripple::after{
  content:"";position:absolute;inset:0;border-radius:50%;background:var(--lime);
}#hero .ripple i{
  position:absolute;left:50%;top:50%;width:22px;height:22px;
  margin:-11px 0 0 -11px;border-radius:50%;
  border:1px solid rgba(20,20,20,.22);
  animation:rip 7s cubic-bezier(.16,.7,.3,1) infinite;
}#hero .ripple i:nth-child(2){animation-delay:2.33s}#hero .ripple i:nth-child(3){animation-delay:4.66s}@keyframes rip{from{transform:scale(1);opacity:.5}to{transform:scale(26);opacity:0}
}#hero .vcopy{
  position:absolute;
  left:24px;top:172px;
  z-index:6;
  writing-mode:vertical-rl;
  font-family:var(--jp);
  font-weight:700;
  font-size:15px;
  letter-spacing:.42em;
  line-height:1.9;
  color:var(--black);
}#hero .scroll{position:absolute;right:32px;top:47.4%;z-index:10;width:16px}#hero .scroll__txt{
  display:block;
  writing-mode:vertical-rl;
  font-family:var(--display);
  font-variation-settings:'wdth' 100,'wght' 700;
  font-weight:700;font-size:11px;letter-spacing:.22em;
}#hero .scroll__line{
  position:absolute;left:7px;top:82px;
  width:1.5px;height:280px;background:var(--black);
}#hero .hband{
  clip-path:polygon(56% 0, 56% 0, 2% 100%, 2% 100%);
  animation:bandIn 1.05s cubic-bezier(.72,0,.18,1) .15s forwards;
}@keyframes bandIn{to{clip-path:polygon(56% 0, 94% 0, 40% 100%, 2% 100%)}
}@keyframes titleIn{to{clip-path:inset(-12% -3% -18% -3%)}}#hero .vcopy, #hero .ripple{opacity:0;animation:fadeIn .8s ease 1.1s forwards}@keyframes fadeIn{to{opacity:1}}#hero .scroll{opacity:0;animation:fadeIn .8s ease 1.25s forwards}@media (prefers-reduced-motion:reduce){
}#hero .tag{
  position:absolute;left:26px;top:50px;z-index:6;
}#hero .tag__now{
  display:flex;align-items:center;gap:9px;
  font-family:var(--display);
  font-variation-settings:'wdth' 100,'wght' 800;
  font-weight:800;font-size:11.5px;letter-spacing:.2em;color:var(--black);
}#hero .tag__now i{
  width:8px;height:8px;border-radius:50%;background:var(--lime);
  flex:none;position:relative;
}#hero .tag__now i::after{
  content:"";position:absolute;inset:0;border-radius:50%;
  border:1.5px solid var(--lime);
  animation:tagPulse 2.6s ease-out infinite;
}@keyframes tagPulse{from{transform:scale(1);opacity:.9}to{transform:scale(3.2);opacity:0}
}#hero .tag__sub{
  margin-top:13px;
  font-family:var(--display);
  font-variation-settings:'wdth' 100,'wght' 700;
  font-weight:700;font-size:10px;letter-spacing:.24em;line-height:2;
  color:#a6a69f;
}#hero .tag__jp{
  margin-top:11px;
  font-family:var(--jp);
  font-size:11.5px;font-weight:500;letter-spacing:.06em;color:#6f6f68;
}#hero .hmarq{
  position:absolute;left:0;right:0;bottom:0;height:52px;z-index:6;
  display:flex;align-items:center;overflow:hidden;
  background:transparent;
}#hero .hmarq__row{display:flex;white-space:nowrap;animation:hmarq 42s linear infinite}#hero .hmarq__row span{display:flex;align-items:center}#hero .hmarq__row b{
  font-family:var(--display);
  font-variation-settings:'wdth' 100,'wght' 700;
  font-weight:700;font-size:11px;letter-spacing:.24em;color:#6d6d66;
}#hero .hmarq__row i{
  width:6px;height:6px;border-radius:50%;background:var(--lime);
  margin:0 30px;flex:none;
}@keyframes hmarq{from{transform:translateX(-50%)}to{transform:translateX(0)}}#hero .scroll{top:50%;bottom:auto;transform:translateY(-50%);right:30px}#hero .scroll__line{top:80px;height:96px;background:rgba(20,20,20,.22)}#hero .scroll__line::after{
  content:"";position:absolute;left:-2.5px;top:0;
  width:6.5px;height:6.5px;border:0;border-radius:50%;
  background:var(--black);
  transform:none;
  animation:scrollDot 2.6s cubic-bezier(.4,0,.3,1) infinite;
}@keyframes scrollDot{0%{transform:translateY(0);opacity:0}18%{opacity:1}82%{opacity:1}100%{transform:translateY(90px);opacity:0}
}#hero .orbit{
  position:absolute;left:196px;top:-58px;
  width:392px;height:221px;z-index:1;pointer-events:none;
}#hero .orbit svg{display:block;width:100%;height:100%;overflow:visible}#hero .orbit__ring{
  fill:none;stroke:rgba(20,20,20,.16);stroke-width:.5;
}#hero .orbit__core{fill:rgba(20,20,20,.3)}#hero .orbit__dot{offset-rotate:0deg}#hero .orbit__dot--a{
  fill:var(--lime);
  offset-path:path("M 106 0 A 106 57 0 1 1 -106 0 A 106 57 0 1 1 106 0");
  animation:orb 26s linear infinite;
}#hero .orbit__dot--b{
  fill:#141414;
  offset-path:path("M 72 0 A 72 38 0 1 1 -72 0 A 72 38 0 1 1 72 0");
  animation:orb 17s linear infinite reverse;
}#hero .orbit__dot--c{
  fill:rgba(20,20,20,.45);
  offset-path:path("M 38 0 A 38 19 0 1 1 -38 0 A 38 19 0 1 1 38 0");
  animation:orb 11s linear infinite;
}@keyframes orb{from{offset-distance:0%}to{offset-distance:100%}}@media (prefers-reduced-motion:reduce){#hero .orbit__dot{animation:none}
}#hero .hdot{
  position:absolute;right:236px;bottom:96px;z-index:7;
  width:22px;height:22px;
  border-radius:50%;background:var(--lime);
  opacity:0;pointer-events:none;
  transform:scale(var(--ds,1));transform-origin:50% 50%;
}@media (max-width:767px){#hero .hband{clip-path:polygon(62% 0, 108% 0, 46% 100%, 0% 100%)}#hero .is-ready .hband{
    clip-path:polygon(62% 0, 108% 0, 46% 100%, 0% 100%);
    animation:none;
  }#hero .title{
    left:0;right:0;top:50%;
    text-align:center;
    transform:translateY(-52%) rotateZ(-2.4deg) !important;
    transform-origin:50% 50%;
  }#hero .title__word{
    white-space:nowrap;
    font-size:clamp(52px, 19vw, 92px);
    line-height:.86;letter-spacing:-.022em;
  }#hero .tag{left:22px;top:78px}#hero .tag__sub{font-size:9.5px;line-height:1.6}#hero .vcopy{
    writing-mode:horizontal-tb;
    left:22px;right:auto;top:auto;bottom:118px;
    font-size:14px;letter-spacing:.06em;line-height:2;
  }#hero .orbit{
    left:-62px;right:auto;top:146px;
    width:250px;height:141px;
    opacity:.9;
  }#hero .ripple{right:36px;bottom:158px}#hero .hdot{right:40px;bottom:162px}#hero .ripple i{animation-name:ripM}@keyframes ripM{from{transform:scale(1);opacity:.45}to{transform:scale(11);opacity:0}
  }#hero .hmarq{height:40px}#hero .hmarq__row{font-size:9px;letter-spacing:.16em}#hero .scroll{display:none}
}
/* ===== #concept (concept.css) ===== */
#concept{
  --black:#141414;
  --white:#ffffff;
  --lime:#e9f22a;
  --gray:#8b8b84;
  --display:'Archivo','Haettenschweiler','Arial Narrow',Impact,sans-serif;
  --jp:'Zen Kaku Gothic New','Hiragino Kaku Gothic ProN','Yu Gothic',sans-serif;
  --ease:cubic-bezier(.16,.84,.24,1);
}#concept img{height:auto}#concept .cghost{
  position:absolute;left:0;top:50%;
  display:flex;gap:.18em;white-space:nowrap;
  font-family:var(--display);
  font-variation-settings:'wdth' 62,'wght' 900;
  font-weight:900;font-size:470px;line-height:1;letter-spacing:-.015em;
  color:transparent;
  transform:translate(calc(-14% + var(--gx,0px)), -50%);
  pointer-events:none;user-select:none;z-index:0;
}#concept .cghost b{display:inline-block}#concept .cghost i{
  display:inline-block;font-style:normal;
  color:transparent;
  -webkit-text-stroke:2.4px rgba(233,242,42,.42);
  animation:ghostWave 2.1s linear infinite;
  animation-delay:calc(var(--n,0) * -0.075s);
}@keyframes ghostWave{0%,   0.9%{color:transparent; -webkit-text-stroke-color:rgba(233,242,42,.42)}1%,  14.9%{color:#efeee6;     -webkit-text-stroke-color:transparent}15%, 100%{color:transparent; -webkit-text-stroke-color:rgba(233,242,42,.42)}
}#concept .clabel{
  position:absolute;left:104px;top:58px;z-index:4;
  display:flex;align-items:center;gap:12px;
  font-family:var(--display);
  font-variation-settings:'wdth' 100,'wght' 700;
  font-weight:700;font-size:13px;letter-spacing:.2em;
}#concept .clabel b{font-variation-settings:'wdth' 100,'wght' 900;font-weight:900}#concept .clabel i{display:block;width:34px;height:1.5px;background:var(--lime)}#concept .ln{
  display:block;overflow:hidden;
  padding-bottom:.16em;margin-bottom:-.16em;
}#concept .ln > i{
  display:block;font-style:normal;
  transform:translateY(112%);
  transition:transform .92s var(--ease) var(--d,0s);
}#concept .cw.is-on .ln > i{transform:translateY(0)}#concept .ch{
  display:inline-block;
  transform:translateY(112%);
  transition:transform .95s var(--ease) var(--d,0s);
}#concept .cw.is-on .ch{transform:translateY(0)}#concept .ln--split > i{transform:none;transition:none}#concept .mk{position:relative;display:inline-block;z-index:0}#concept .mk::after{
  content:"";position:absolute;left:-.03em;right:-.03em;bottom:.10em;
  height:.19em;background:var(--lime);z-index:-1;
  transform:scaleX(0);transform-origin:0 50%;
  transition:transform .78s var(--ease) var(--md,.5s);
}#concept .cw.is-on .mk::after{transform:scaleX(1)}#concept .cwords{
  position:absolute;left:104px;top:50%;z-index:3;
  width:610px;height:360px;margin-top:-180px;
}#concept .cw{
  position:absolute;left:0;top:50%;width:100%;
  transform:translateY(-50%);
  opacity:0;visibility:hidden;
  transition:opacity .34s ease, visibility 0s linear .55s;
}#concept .cw.is-on{opacity:1;visibility:visible;transition:opacity .3s ease, visibility 0s}#concept .cw.is-past .ln > i, #concept .cw.is-past .ch{transform:translateY(-112%);transition:transform .5s var(--ease) 0s}#concept .cw.is-past .mk::after{transform:scaleX(0);transition:transform .3s var(--ease) 0s}#concept .cw__q{
  font-size:27px;font-weight:500;line-height:1.8;letter-spacing:.02em;
  color:var(--gray);
}#concept .cw__a{
  margin-top:18px;
  font-size:76px;font-weight:900;line-height:1.3;letter-spacing:.005em;
}#concept .cw[data-i="0"] .cw__a, #concept .cw[data-i="5"] .cw__a{font-size:62px}#concept .cw__m{
  margin-top:34px;
  font-family:var(--display);
  font-variation-settings:'wdth' 100,'wght' 700;
  font-weight:700;font-size:12px;letter-spacing:.18em;
  color:var(--gray);
}#concept .cw__m .bar{
  display:inline-block;width:22px;height:1px;background:#cfcfc8;
  vertical-align:middle;margin:0 14px 3px;
}#concept .cshow{
  position:absolute;left:0;right:0;top:0;bottom:0;z-index:2;
  perspective:1250px;perspective-origin:34% 50%;
}#concept .cshot{
  position:absolute;inset:0;
  opacity:0;visibility:hidden;
  transition:opacity .3s ease, visibility 0s linear .3s;
}#concept .cshot.is-on{opacity:1;visibility:visible;transition:opacity .25s ease, visibility 0s}#concept .cwk{
  position:absolute;left:var(--x);top:var(--y);width:var(--w);
  display:block;
  transform:translateY(var(--pk,0px)) rotateY(var(--ry,-12deg)) rotateZ(var(--rz,0deg));
  transform-origin:50% 50%;
  will-change:transform;
}#concept .cwk img{
  display:block;width:100%;height:auto;
  box-shadow:0 26px 60px rgba(20,20,20,.16), 0 3px 10px rgba(20,20,20,.05);
}#concept .cwk--a{z-index:3}#concept .cwk--b{z-index:2}#concept .cwk--c{z-index:1}#concept .cshot .cwk{opacity:0}#concept .cshot.is-on .cwk{animation:wkIn .95s var(--ease) forwards}#concept .cshot.is-on .cwk--b{animation-delay:.10s}#concept .cshot.is-on .cwk--c{animation-delay:.20s}@keyframes wkIn{from{opacity:0;
       transform:translateY(calc(var(--pk,0px) + 38px)) rotateY(var(--ry,-12deg)) rotateZ(var(--rz,0deg))}to{opacity:1;
       transform:translateY(var(--pk,0px)) rotateY(var(--ry,-12deg)) rotateZ(var(--rz,0deg))}
}#concept .cwk .cvid{display:none}#concept .cwk.is-video img{display:none}#concept .cwk.is-video .cvid{
  display:block;width:100%;aspect-ratio:1/1;object-fit:cover;
  box-shadow:0 26px 60px rgba(20,20,20,.16), 0 3px 10px rgba(20,20,20,.05);
}#concept .cshot--fig .cwk{transform:translateY(var(--pk,0px))}#concept .cshot--fig .cwk img{
  box-shadow:none;width:auto;margin:0 auto;
  max-height:calc(var(--stageh,810px) * .88);
}#concept .cshot--fig.is-on .cwk{animation:figIn 1s var(--ease) forwards}@keyframes figIn{from{opacity:0;transform:translateY(calc(var(--pk,0px) + 38px))}to{opacity:1;transform:translateY(var(--pk,0px))}
}#concept .cbar{
  position:absolute;left:104px;bottom:52px;z-index:4;
  list-style:none;display:flex;align-items:center;gap:18px;
  opacity:0;transition:opacity .45s ease;
}#concept .cbar.is-on{opacity:1}#concept .ctick{display:flex;align-items:center;gap:10px}#concept .ctick b{
  font-family:var(--display);
  font-variation-settings:'wdth' 100,'wght' 700;
  font-weight:700;font-size:11.5px;letter-spacing:.14em;
  color:#c6c6c0;transition:color .4s ease;
}#concept .ctick i{
  display:block;width:30px;height:2px;background:#e4e4de;
  position:relative;overflow:hidden;
}#concept .ctick i::after{
  content:"";position:absolute;inset:0;background:var(--lime);
  transform:scaleX(0);transform-origin:0 50%;
  transition:transform .5s var(--ease);
}#concept .ctick.is-on b{color:var(--black)}#concept .ctick.is-on i::after{transform:scaleX(1)}#concept .ctick.is-done i::after{transform:scaleX(1);background:#c9c9c2}#concept .cprog{
  position:absolute;left:0;right:0;bottom:0;height:2px;z-index:5;
  background:#eeeee8;
}#concept .cprog span{
  display:block;height:100%;background:var(--black);
  transform:scaleX(var(--p,0));transform-origin:0 50%;
}#concept .cnext{
  position:absolute;right:78px;bottom:48px;z-index:4;
  display:flex;align-items:center;gap:12px;
  text-decoration:none;color:var(--black);
  opacity:0;pointer-events:none;transform:translateY(14px);
  transition:opacity .5s ease, transform .6s var(--ease);
}#concept .cnext.is-on{opacity:1;pointer-events:auto;transform:none}#concept .cnext__lbl{
  font-family:var(--display);
  font-variation-settings:'wdth' 100,'wght' 700;
  font-weight:700;font-size:12px;letter-spacing:.14em;
}#concept .cnext__ttl{
  font-family:var(--display);
  font-variation-settings:'wdth' 62,'wght' 900;
  font-weight:900;font-size:32px;letter-spacing:.01em;
  background-image:linear-gradient(transparent 82%, var(--lime) 82%, var(--lime) 100%, transparent 100%);
}#concept .cnext__arrow{position:relative;width:64px;height:2px;background:var(--black)}#concept .cnext__arrow::after{
  content:"";position:absolute;right:0;top:-4px;width:10px;height:10px;
  border-right:2px solid var(--black);border-top:2px solid var(--black);
  transform:rotate(45deg);
}#concept .cnext:focus-visible{outline:2px solid var(--black);outline-offset:6px}@media (prefers-reduced-motion:reduce){#concept .ln > i, #concept .ch{transform:none}#concept .mk::after{transform:scaleX(1)}#concept .cshot img{clip-path:none}
}@media (max-width:767px){#concept .clabel{position:relative;left:auto;top:auto;margin:0 0 22px;font-size:12px}#concept .cghost{
    position:absolute;left:-7%;top:33%;
    font-size:132px;line-height:1;opacity:.6;gap:.06em;
    z-index:0;pointer-events:none;white-space:nowrap;
  }#concept .cghost b{display:none}#concept .cghost b:first-child{display:flex}#concept .cwords{
    position:relative;left:auto;top:auto;
    width:100%;height:auto;margin:0;
  }#concept .cw{
    position:relative;left:auto;top:auto;width:100%;
    transform:none;opacity:1;visibility:visible;
    padding:0 0 54px;
  }#concept .cw + .cw{border-top:1px solid #ececec;padding-top:52px}#concept .cw__q{font-size:14px;line-height:1.85}#concept .cw__a{font-size:27px;line-height:1.46;margin-top:8px;letter-spacing:.01em}#concept .cw[data-i="0"] .cw__a, #concept .cw[data-i="5"] .cw__a{font-size:33px;line-height:1.4}#concept .cw__m{margin-top:16px;font-size:10px;letter-spacing:.14em}#concept .cshow{position:relative;inset:auto;perspective:none;z-index:1}#concept .cshot{
    position:relative;inset:auto;
    display:flex;flex-wrap:wrap;gap:8px;align-items:flex-start;
    margin-top:18px;opacity:1;visibility:visible;
  }#concept .cwk{
    position:relative;left:auto;top:auto;
    width:auto !important;min-width:0;
    flex:1 1 calc(50% - 4px);
    transform:none !important;
  }#concept .cshot .cwk:first-child{flex:1 1 100%}#concept .cwk img, #concept .cwk .cvid{width:100%;height:auto;display:block}#concept .cwk .cvid{display:none !important}#concept .cshot--fig{
    position:relative;
    justify-content:flex-start;
    margin:6px -22px 0;
  }#concept .cshot--fig .cwk, #concept .cshot--fig .cwk:first-child{flex:0 0 92%;position:relative;z-index:1}#concept .cw[data-i="0"]{padding-bottom:20px}#concept .cw[data-i="5"]{padding-bottom:0}#concept .cw[data-i="5"] .cshot--fig{margin-bottom:-6px}#concept .ctick, #concept .cbar, #concept .cprog{display:none}#concept .cnext{
    position:relative;left:auto;right:auto;top:auto;bottom:auto;
    
    z-index:3;margin-top:74px;padding:11px 0;min-height:46px;
    justify-content:flex-start;align-items:center;
  }
}
/* ===== #service (service.css) ===== */
#service{
  --ink:#0D0D0D;
  --paper:#ffffff;
  --lime:#e9f22a;
  --line:#3a3a3a;
  --display:'Archivo','Haettenschweiler','Arial Narrow',Impact,sans-serif;
  --jp:'Zen Kaku Gothic New','Hiragino Kaku Gothic ProN','Yu Gothic',sans-serif;
  --hand:'Zen Kurenaido','Zen Kaku Gothic New',sans-serif;
}#service img{height:auto}#service .ul{background-image:linear-gradient(transparent 82%, var(--lime) 82%, var(--lime) 93%, transparent 93%)}#service .glow{
  
  position:absolute;left:50%;top:65px;height:620px;
  width:1240px;margin-left:-620px;
  pointer-events:none;z-index:0;
}#service .glow i{
  position:absolute;inset:0;
  
  
  background:radial-gradient(34% 44% at 50% 50%, var(--c) 0%, rgba(0,0,0,0) 100%);
  opacity:0;
  transition:opacity 1.05s cubic-bezier(.3,0,.2,1);
}#service .glow i.is-on{opacity:.52}#service .flow{
  position:absolute;left:0;right:0;top:225px;height:300px;
  perspective:950px;
  perspective-origin:50% 50%;
}#service .card:focus-visible{outline:3px solid var(--lime);outline-offset:4px}#service .card{
  position:absolute;left:50%;top:50%;
  width:510px;height:376px;margin-left:-255px;margin-top:-188px;
  transform-style:preserve-3d;
  transition:transform .62s cubic-bezier(.22,.85,.25,1), opacity .5s ease;
  backface-visibility:hidden;cursor:pointer;overflow:hidden;
  box-shadow:0 20px 44px rgba(0,0,0,.5);
}#service .card::before{
  content:"";position:absolute;inset:0;z-index:2;pointer-events:none;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.3);
}#service .card__art{display:block;width:100%;height:100%;object-fit:cover}#service .card::after{
  content:"";position:absolute;inset:0;z-index:1;
  background:#0D0D0D;opacity:var(--dim,0);
  transition:opacity .5s ease;pointer-events:none;
}#service .card.is-hidden{opacity:0;pointer-events:none}#service .arw{
  position:absolute;top:352px;
  width:46px;height:46px;border:0;border-radius:50%;
  background:var(--paper);cursor:pointer;z-index:12;   
}#service .arw::before{
  content:"";position:absolute;left:50%;top:50%;
  width:11px;height:11px;margin:-6px 0 0 -3px;
  border-top:2.4px solid var(--ink);border-right:2.4px solid var(--ink);
}#service .arw--prev{left:66px}#service .arw--prev::before{transform:rotate(-135deg);margin-left:-6px}#service .arw--next{right:66px}#service .arw--next::before{transform:rotate(45deg);margin-left:-8px}#service .arw:focus-visible{outline:2px solid var(--lime);outline-offset:4px}#service .slabel{
  position:absolute;left:104px;top:46px;z-index:5;
  display:flex;align-items:center;gap:12px;
  font-family:var(--display);
  font-variation-settings:'wdth' 100,'wght' 700;
  font-weight:700;font-size:13px;letter-spacing:.2em;color:var(--paper);
}#service .slabel b{font-variation-settings:'wdth' 100,'wght' 900;font-weight:900}#service .slabel i{display:block;width:34px;height:1.5px;background:var(--lime)}#service .shead{
  position:absolute;left:104px;top:78px;z-index:5;
  font-size:40px;font-weight:900;line-height:1.3;letter-spacing:.008em;
  color:var(--paper);
}#service .smk{
  background-image:linear-gradient(transparent 74%, var(--lime) 74%, var(--lime) 95%, transparent 95%);
}#service .ssub{
  position:absolute;left:104px;top:230px;z-index:5;
  display:flex;align-items:center;
  font-family:var(--display);
  font-variation-settings:'wdth' 100,'wght' 700;
  font-weight:700;font-size:12px;letter-spacing:.18em;color:#8e8e88;
}#service .ssub i{display:block;width:26px;height:1px;background:#4a4a46;margin:0 16px}#service .scale{
  
  position:absolute;left:104px;top:615px;width:1232px;z-index:5;
  display:flex;flex-direction:row;justify-content:space-between;align-items:flex-start;gap:0;
}#service .scale::before{
  content:"";position:absolute;left:0;right:0;top:0;height:8px;pointer-events:none;
  background:
    linear-gradient(#3f3f38,#3f3f38) 0 0/100% 1px no-repeat,
    repeating-linear-gradient(90deg,#4c4c44 0 1px,transparent 1px 22px) 0 0/100% 5px no-repeat;
}#service .scale__item{
  position:relative;display:flex;align-items:baseline;gap:11px;
  width:auto;flex:0 0 auto;padding:22px 0 0;border:0;background:none;cursor:pointer;
  text-align:left;color:#6b6b6b;
  transition:color .35s ease;
}#service .scale__item::before{
  content:"";position:absolute;left:0;top:-4px;width:2px;height:14px;
  background:var(--accent);opacity:0;transition:opacity .3s ease;
}#service .scale__item.is-on::before{opacity:1}#service .scale__item.is-on{color:var(--accent)}#service .scale__no{
  display:block;
  font-family:var(--display);
  font-variation-settings:'wdth' 100,'wght' 900;
  font-weight:900;font-size:21px;line-height:1;letter-spacing:.02em;
}#service .scale__lb{
  display:block;margin-top:0;margin-left:0;
  font-family:var(--display);
  font-variation-settings:'wdth' 100,'wght' 900;
  font-weight:900;font-size:15px;letter-spacing:.11em;
  color:var(--paper);transition:color .35s ease;
}#service .scale__gap{display:none;
  flex:1;height:1px;margin-top:14px;position:relative;
  background:
    repeating-linear-gradient(90deg,#4a4a4a 0 1px,transparent 1px 14px);
  background-position:0 0;
  background-size:100% 1px;
}#service .scale__gap::before{
  content:"";position:absolute;left:0;right:0;top:0;height:1px;background:#3d3d3d;
}#service .scale__gap::after{
  content:"";position:absolute;right:0;top:-4px;
  width:8px;height:8px;
  border-right:1.5px solid #6e6e6e;border-top:1.5px solid #6e6e6e;
  transform:rotate(45deg);
}#service .scale__gap i{
  position:absolute;left:0;right:8px;top:-5px;height:11px;
  background:repeating-linear-gradient(90deg,#4a4a4a 0 1px,transparent 1px 15px);
}#service .worksnote{
  position:absolute;left:1034px;bottom:112px;
  font-family:var(--hand);font-size:17px;font-weight:700;letter-spacing:.05em;
}#service .worksarrow{
  position:absolute;left:1042px;bottom:84px;width:156px;height:2px;background:var(--paper);
  transform:rotate(-4deg);
}#service .worksarrow::after{
  content:"";position:absolute;right:0;top:-4px;
  width:9px;height:9px;
  border-right:2px solid var(--paper);border-top:2px solid var(--paper);
  transform:rotate(45deg);
}#service .worksbtn{
  position:absolute;left:1230px;top:1035px;
  width:98px;height:98px;border-radius:50%;
  background:var(--lime);color:var(--ink);text-decoration:none;
  display:flex;flex-direction:column;align-items:center;justify-content:center;gap:7px;
  font-family:var(--display);
  font-variation-settings:'wdth' 100,'wght' 900;
  font-weight:900;font-size:16px;letter-spacing:.07em;
}#service .worksbtn__ar{position:relative;width:34px;height:2px;background:var(--ink)}#service .worksbtn__ar::after{
  content:"";position:absolute;right:0;top:-3.5px;
  width:8px;height:8px;
  border-right:2px solid var(--ink);border-top:2px solid var(--ink);
  transform:rotate(45deg);
}#service .worksbtn:focus-visible{outline:2px solid var(--paper);outline-offset:4px}#service .scale__ln{
  display:none;flex:none;height:2px;margin-right:18px;
  width:calc(46px + var(--sw,0px));
  background:#5a5a5a;
  transition:background .35s ease;
}#service .scale__item.is-on{color:var(--accent)}#service .scale__item.is-on .scale__ln{background:var(--accent);height:3px}#service .scale__item.is-on .scale__lb{color:var(--accent)}#service .scale__item:focus-visible{outline:2px solid var(--paper);outline-offset:8px}#service .sdet{
  position:absolute;left:104px;top:720px;width:1100px;z-index:4;
}#service .sdet__p{display:none}#service .sdet__p.is-on{display:block}#service .sdet__lead{
  font-size:22px;font-weight:500;line-height:1.75;letter-spacing:.02em;
  color:#c9c9c4;
}#service .sdet__ttl{
  margin-top:34px;
  font-family:var(--display);
  font-variation-settings:'wdth' 100,'wght' 700;
  font-weight:700;font-size:12px;letter-spacing:.18em;color:#8b8b86;
}#service .sdet ul{list-style:none;margin-top:18px;
  display:grid;grid-template-columns:repeat(3,1fr);column-gap:48px}#service .sdet li{
  padding:16px 2px;border-bottom:1px solid #333330;
  font-size:18px;font-weight:700;letter-spacing:.02em;color:var(--paper);
}#service .sask{
  position:absolute;left:104px;top:1050px;z-index:5;
  display:inline-flex;align-items:center;gap:14px;
  padding:17px 30px;background:var(--lime);color:var(--ink);
  text-decoration:none;font-size:17px;font-weight:900;letter-spacing:.04em;
}#service .sask span{
  position:relative;width:34px;height:2px;background:var(--ink);
}#service .sask span::after{
  content:"";position:absolute;right:0;top:-4px;width:9px;height:9px;
  border-right:2px solid var(--ink);border-top:2px solid var(--ink);
  transform:rotate(45deg);
}@media (prefers-reduced-motion:reduce){#service .card{transition:none}
}#service .srot{
  position:absolute;right:104px;top:46px;z-index:5;
  width:640px;text-align:right;
  pointer-events:none;user-select:none;
}#service .srot__lb{
  display:flex;align-items:center;justify-content:flex-end;gap:12px;
  font-family:var(--display);
  font-variation-settings:'wdth' 100,'wght' 700;
  font-weight:700;font-size:12px;letter-spacing:.18em;color:#8e8e88;
}#service .srot__lb i{
  display:block;width:34px;height:1.5px;
  background:var(--rc,#C8F000);
  transition:background .8s cubic-bezier(.3,0,.2,1);
}#service .srot__box{
  position:relative;height:52px;margin-top:10px;overflow:hidden;
}#service .srot__box span{
  position:absolute;right:0;bottom:0;display:block;white-space:nowrap;
  font-size:34px;font-weight:900;line-height:1.3;letter-spacing:.008em;
  color:var(--paper);
  transform:translateY(110%);
  transition:transform .66s cubic-bezier(.16,.84,.24,1);
  will-change:transform;
}#service .srot__sub{
  margin-top:8px;
  font-size:15px;font-weight:500;letter-spacing:.03em;color:#8e8e88;
}@media (max-width:767px){#service .slabel{position:relative;left:auto;top:auto;margin-bottom:20px;font-size:12.5px;letter-spacing:.2em}#service .slabel i{width:28px}#service .scale__lb{font-size:15px}#service .scale__item{padding:11px 0;min-height:46px}#service .sdet__lead{font-size:15px;line-height:1.85}#service .sdet__ttl{font-size:11px}#service .sdet li{font-size:14.5px;padding:13px 2px}#service .shead{
    position:relative;left:auto;top:auto;
    font-size:30px;line-height:1.3;letter-spacing:0;
    white-space:nowrap;
  }#service .srot{
    position:relative;right:auto;top:auto;width:100%;
    text-align:left;margin-top:20px;
  }#service .srot__lb{justify-content:flex-start}#service .srot__box{height:44px;margin-top:8px}#service .srot__box span{left:0;right:auto;font-size:30px}#service .srot__sub{margin-top:6px;font-size:14px}#service .glow{left:0;right:0;top:auto;width:auto;margin:0}#service .glow i{
    background:radial-gradient(56% 44% at 50% 50%, var(--c) 0%, rgba(0,0,0,0) 100%);
  }#service .glow i.is-on{opacity:.74}#service .flow{
    position:relative;left:auto;right:auto;top:auto;
    height:auto;perspective:none;
    display:flex;gap:14px;
    margin:26px -22px 0;padding:0 22px;
    overflow-x:auto;overflow-y:visible;
    scroll-snap-type:x mandatory;
    -webkit-overflow-scrolling:touch;
    scrollbar-width:none;
  }#service .flow::-webkit-scrollbar{display:none}#service .card{
    position:relative;left:auto;top:auto;margin:0;
    flex:0 0 84%;width:auto;height:auto;
    transform:none !important;opacity:1 !important;
    scroll-snap-align:center;
    box-shadow:0 12px 26px rgba(0,0,0,.45);
  }#service .card.is-hidden{opacity:1 !important;pointer-events:auto}#service .card__art{height:auto;aspect-ratio:510/376}#service .card::after{opacity:0 !important}#service .arw{display:none}#service .scale{
    position:relative;left:auto;top:auto;width:100%;
    margin-top:30px;
    flex-direction:column;align-items:flex-start;gap:0;
  }#service .scale::before{display:none}#service .scale__item{width:100%;flex:1 1 auto;align-items:center;gap:0;padding:11px 0}#service .scale__item::before{display:none}#service .scale__ln{display:block}#service .scale__no{font-size:24px}#service .scale__lb{margin-left:16px;letter-spacing:.02em}#service .sdet{
    position:relative;left:auto;top:auto;width:100%;
    margin-top:26px;
  }#service .sask{
    position:relative;left:auto;top:auto;
    margin-top:26px;display:inline-flex;
  }#service .worksbtn{
    position:relative;left:auto;top:auto;
    margin:-52px 0 0 auto;
  }#service .sdet{margin-top:22px}#service .sdet ul{display:block}#service .sdet__lead{font-size:15px}#service .sdet li{border-bottom:1px solid #333330;font-weight:700;color:var(--paper)}#service .sdet li::after{content:""}#service .sdet li:last-child{border-bottom:0}
}
/* ===== #works (works.css) ===== */
#works{
  --ink:#141414;
  --paper:#ffffff;
  --lime:#e9f22a;
  --display:'Archivo','Haettenschweiler','Arial Narrow',Impact,sans-serif;
  --jp:'Zen Kaku Gothic New','Hiragino Kaku Gothic ProN','Yu Gothic',sans-serif;
  --hand:'Zen Kurenaido','Zen Kaku Gothic New',sans-serif;
  --script:'Caveat','Zen Kurenaido',cursive;
}#works img{height:auto}#works .asset{position:absolute;display:block;pointer-events:none;user-select:none}#works .ul{background-image:linear-gradient(transparent 74%, var(--lime) 74%, var(--lime) 95%, transparent 95%)}#works .hall{
  position:absolute;left:0;right:0;top:0;bottom:0;
  perspective:950px;
  perspective-origin:50% 50%;
  overflow:hidden;
  -webkit-mask-image:linear-gradient(90deg,transparent 0px,transparent 270px,#000 530px);
  mask-image:linear-gradient(90deg,transparent 0px,transparent 270px,#000 530px);
  background:
    
    radial-gradient(120% 90% at 52% 46%, #ffffff 0%, #ffffff 54%, #F3F1EB 100%);
}#works .hall__cam{
  position:absolute;inset:0;
  transform-style:preserve-3d;
  transition:transform .18s linear;
}#works .hall__floor{
  position:absolute;left:0;right:0;bottom:0;height:34%;
  
  background:linear-gradient(rgba(243,241,235,0) 0%, rgba(243,241,235,.26) 66%, rgba(238,236,230,.46) 100%);
  pointer-events:none;z-index:3;
}#works .panel{
  position:absolute;left:50%;top:50%;
  transform-style:preserve-3d;
  margin:0;
}#works .panel img{
  display:block;height:580px;width:auto;
  
  box-shadow:
    0 1px 1px rgba(20,20,20,.30),
    0 8px 16px rgba(0,0,0,.18),
    0 26px 44px rgba(0,0,0,.20);
  -webkit-box-reflect:below 4px linear-gradient(transparent 52%, rgba(255,255,255,.40));
  transition:transform .34s cubic-bezier(.2,.9,.25,1), box-shadow .34s ease;
}#works .panel:hover img, #works .panel:focus-visible img{
  transform:scale(1.07);
  box-shadow:
    0 2px 3px rgba(20,20,20,.34),
    0 14px 26px rgba(0,0,0,.24),
    0 34px 56px rgba(0,0,0,.26);
}#works .panel::after{
  content:"VIEW";position:absolute;left:50%;top:44%;
  transform:translate(-50%,-50%) scale(.86);
  font-family:var(--display);
  font-variation-settings:'wdth' 100,'wght' 900;
  font-size:13px;letter-spacing:.16em;color:#141414;
  background:var(--lime);padding:9px 16px;border-radius:20px;
  opacity:0;transition:opacity .3s ease,transform .3s ease;
  pointer-events:none;
}#works .panel:hover::after, #works .panel:focus-visible::after{opacity:1;transform:translate(-50%,-50%) scale(1)}#works .panel figcaption{
  display:block;margin-top:12px;
  font-family:var(--jp);color:var(--ink);
  white-space:nowrap;
}#works .panel figcaption b{
  display:block;
  font-family:var(--display);
  font-variation-settings:'wdth' 100,'wght' 900;
  font-weight:900;font-size:15px;letter-spacing:.02em;
  text-shadow:0 0 6px #fff,0 0 3px #fff,0 1px 0 #fff;
}#works .panel figcaption span{
  display:block;margin-top:3px;font-size:10.5px;font-weight:500;color:#5c5c56;
  text-shadow:0 0 6px #fff,0 0 3px #fff;
}#works .panel{will-change:transform,opacity;backface-visibility:hidden}#works .wno{
  z-index:6;
  position:absolute;left:38px;top:44px;
  font-family:var(--display);
  font-variation-settings:'wdth' 62,'wght' 900;
  font-weight:900;font-size:124px;line-height:.78;letter-spacing:-.01em;
  transform:scaleX(.82);transform-origin:0 50%;
}#works .wttl{
  z-index:6;
  position:absolute;left:34px;top:160px;
  font-family:var(--display);
  font-variation-settings:'wdth' 62,'wght' 900;
  font-weight:900;font-size:128px;line-height:.78;letter-spacing:-.012em;
  transform:scaleX(.9);transform-origin:0 50%;
}#works .script{
  z-index:6;
  position:absolute;left:76px;top:270px;
  font-family:var(--script);font-weight:700;font-size:46px;line-height:1;
}#works .wlead{
  z-index:6;
  position:absolute;left:38px;top:344px;
  font-size:23px;font-weight:900;letter-spacing:.02em;
}#works .wbody{
  z-index:6;
  position:absolute;left:38px;top:392px;
  font-size:14px;font-weight:500;line-height:2.2;letter-spacing:.02em;
}#works .wnote{
  z-index:6;
  position:absolute;left:38px;top:474px;
  font-size:10px;font-weight:500;letter-spacing:.04em;color:#77766f;
}#works .wnow{
  position:absolute;left:38px;top:516px;z-index:6;width:268px;
}#works .wnow__lb{
  font-family:var(--display);
  font-variation-settings:'wdth' 100,'wght' 800;
  font-weight:800;font-size:10.5px;letter-spacing:.2em;color:#8d8d85;
  padding-bottom:9px;border-bottom:1px solid #d8d7d0;
}#works .wnow__t{
  margin-top:16px;
  font-family:var(--display);
  font-variation-settings:'wdth' 62,'wght' 900;
  font-weight:900;font-size:44px;line-height:1.02;letter-spacing:-.01em;
  transform:scaleX(.92);transform-origin:0 50%;
}#works .wnow__s{margin-top:9px;font-size:13.5px;font-weight:700;color:#3d3d38;letter-spacing:.03em}#works .wnow__k{
  display:inline-block;margin-top:12px;padding:4px 9px;
  border:1.5px solid #141414;
  font-family:var(--display);
  font-variation-settings:'wdth' 100,'wght' 800;
  font-weight:800;font-size:10px;letter-spacing:.16em;color:#141414;
}#works .wnow__k i{font-style:normal;font-family:var(--jp);font-size:10.5px;letter-spacing:.04em;margin-left:8px}#works .wnow__t, #works .wnow__s{transition:opacity .25s ease}#works .wnow.is-swap .wnow__t, #works .wnow.is-swap .wnow__s{opacity:0}#works .scrollword{
  position:absolute;left:824px;bottom:70px;z-index:4;
  font-family:var(--display);
  font-variation-settings:'wdth' 100,'wght' 900;
  font-weight:900;font-style:italic;font-size:34px;letter-spacing:.06em;
}#works .viewall{
  position:absolute;right:38px;bottom:56px;z-index:4;
  display:flex;align-items:center;gap:14px;
  color:var(--ink);text-decoration:none;
  font-family:var(--display);
  font-variation-settings:'wdth' 100,'wght' 900;
  font-weight:900;font-size:19px;letter-spacing:.06em;
  background-image:linear-gradient(transparent 82%, var(--lime) 82%, var(--lime) 100%, transparent 100%);
}#works .viewall__ar{position:relative;width:52px;height:2px;background:var(--ink)}#works .viewall__ar::after{
  content:"";position:absolute;right:0;top:-4px;
  width:9px;height:9px;
  border-right:2px solid var(--ink);border-top:2px solid var(--ink);
  transform:rotate(45deg);
}#works .viewall:focus-visible{outline:2px solid var(--ink);outline-offset:6px}#works .wcount{
  position:absolute;left:826px;bottom:36px;z-index:4;
  display:flex;align-items:baseline;gap:8px;
  font-family:var(--display);
  font-variation-settings:'wdth' 100,'wght' 700;
}#works .wcount b{
  font-variation-settings:'wdth' 100,'wght' 900;
  font-size:20px;letter-spacing:.04em;
}#works .wcount span{font-size:12px;letter-spacing:.12em;color:#7d7d76}#works .panel{cursor:pointer}@media (prefers-reduced-motion:reduce){#works .hall__cam{transition:none}}#works .wcount i{font-style:normal}@media (max-width:767px){#works .wno{position:relative;left:auto;top:auto;order:1;width:100%;
           font-size:34px;line-height:1;white-space:nowrap}#works .wttl{position:relative;left:auto;top:auto;order:2;width:100%;
           font-size:52px;line-height:1;margin-top:2px;white-space:nowrap}#works .script{position:relative;left:auto;top:auto;order:3;width:100%;margin-top:10px;font-size:24px}#works .wlead{position:relative;left:auto;top:auto;order:4;width:100%;margin-top:20px;font-size:18px;line-height:1.6}#works .wbody{position:relative;left:auto;top:auto;order:5;width:100%;margin-top:12px;font-size:14px;line-height:2}#works .wbody br{display:none}#works .hall{order:6}#works .viewall{order:7}#works .wnow, #works .wcount, #works .wscroll, #works .scrollword{display:none}#works .hall{
    position:relative;left:auto;right:auto;top:auto;bottom:auto;
    height:auto;perspective:none;overflow:visible;
    background:none;
    -webkit-mask-image:none;mask-image:none;
    margin-top:26px;
  }#works .hall__cam{position:relative;inset:auto;transform:none !important;transform-style:flat}#works .hall__floor{display:none}#works .panel[data-hall="off"]{display:none}#works .panel{
    position:relative;left:auto;top:auto;
    transform:none !important;
    
    perspective:760px;perspective-origin:50% 50%;
    opacity:1 !important;visibility:visible !important;
    display:block;margin:0 0 46px;
  }#works .panel img{
    width:100%;height:auto;
    
    -webkit-box-reflect:below 0 linear-gradient(rgba(0,0,0,0),rgba(0,0,0,0)) !important;
    box-shadow:0 10px 26px rgba(0,0,0,var(--sh,.16));
    
    transform:translate3d(var(--tx,0px),0,var(--tz,0px)) rotateY(var(--ry,0deg));
    transform-origin:50% 50%;
    opacity:var(--op,1);
    backface-visibility:hidden;
    transition:none;
  }#works .panel::after{display:none}#works .panel figcaption{
    display:block;margin-top:12px;
    font-family:var(--jp);
  }#works .panel figcaption b{
    display:block;
    font-family:var(--display);
    font-variation-settings:'wdth' 62,'wght' 900;
    font-weight:900;font-size:26px;line-height:1.1;letter-spacing:-.01em;
    color:var(--ink);
  }#works .panel figcaption span{
    display:block;margin-top:5px;
    font-size:13.5px;font-weight:700;color:#3d3d38;letter-spacing:.03em;
  }#works .panel figcaption::after{
    content:"CONCEPT WORK ／ 制作サンプル";
    display:inline-block;margin-top:9px;padding:3px 8px;
    border:1.5px solid var(--ink);
    font-family:var(--display);
    font-variation-settings:'wdth' 100,'wght' 800;
    font-weight:800;font-size:9.5px;letter-spacing:.12em;color:var(--ink);
  }#works .viewall{
    position:relative;left:auto;right:auto;top:auto;bottom:auto;
    display:inline-flex;align-items:center;margin-top:6px;
    padding:13px 0;min-height:46px;   
  }
}
/* ===== #profile (profile.css) ===== */
#profile{
  --black:#141414;
  --white:#ffffff;
  --lime:#e9f22a;
  --gray:#8b8b84;
  --paper:#FBFAF7;
  --display:'Archivo','Haettenschweiler','Arial Narrow',Impact,sans-serif;
  --jp:'Zen Kaku Gothic New','Hiragino Kaku Gothic ProN','Yu Gothic',sans-serif;
  --hand:'Zen Kurenaido','Zen Kaku Gothic New',sans-serif;
  --script:'Caveat','Zen Kurenaido',cursive;
  --ease:cubic-bezier(.16,.84,.24,1);
}#profile img{height:auto}#profile .mk{
  background-image:linear-gradient(transparent 74%, var(--lime) 74%, var(--lime) 96%, transparent 96%);
  background-repeat:no-repeat;background-size:0 100%;
  transition:background-size .85s var(--ease) .55s;
}#profile .head.is-up .mk{background-size:100% 100%}#profile .plabel{
  position:absolute;left:104px;top:58px;z-index:4;
  display:flex;align-items:center;gap:12px;
  font-family:var(--display);
  font-variation-settings:'wdth' 100,'wght' 700;
  font-weight:700;font-size:13px;letter-spacing:.2em;
}#profile .plabel b{font-variation-settings:'wdth' 100,'wght' 900;font-weight:900}#profile .plabel i{display:block;width:34px;height:1.5px;background:var(--lime)}#profile .bigname{
  position:absolute;left:628px;top:430px;z-index:0;
  font-family:var(--display);
  font-variation-settings:'wdth' 62,'wght' 900;
  font-weight:900;font-size:430px;line-height:.78;letter-spacing:-.02em;
  color:#eae9e1;white-space:nowrap;
  pointer-events:none;user-select:none;
}#profile .head{
  position:absolute;left:104px;top:132px;z-index:3;
  font-size:78px;font-weight:900;line-height:1.3;letter-spacing:.005em;
}#profile .sub{
  position:absolute;left:104px;top:468px;z-index:3;
  font-size:22px;font-weight:500;letter-spacing:.02em;color:var(--gray);
}#profile .sub b{font-weight:900;color:var(--black)}#profile .portrait{
  position:absolute;right:-30px;top:64px;z-index:2;
  height:1030px;width:auto;
  pointer-events:none;user-select:none;
  
  -webkit-mask-image:linear-gradient(to bottom, #000 68%, rgba(0,0,0,.55) 88%, transparent 100%);
          mask-image:linear-gradient(to bottom, #000 68%, rgba(0,0,0,.55) 88%, transparent 100%);
}#profile .script{
  position:absolute;right:640px;top:70px;z-index:3;
  font-family:var(--script);font-weight:700;
  font-size:38px;line-height:1;text-align:right;color:var(--black);
}#profile .script__i{font-size:24px;letter-spacing:.04em}#profile .qa{
  position:absolute;left:104px;top:640px;z-index:3;
  width:700px;
}#profile .qa section + section{margin-top:74px}#profile .qa h3{
  font-size:30px;font-weight:900;line-height:1.5;letter-spacing:.01em;
}#profile .qa p{
  margin-top:18px;
  font-size:18px;font-weight:500;line-height:2.1;letter-spacing:.02em;
  color:#5a5a56;
}#profile .memo{
  position:absolute;left:104px;top:1160px;z-index:3;
  width:250px;padding:30px 22px 20px;
  background:var(--white);
  border:1.5px solid #dedbd4;
  box-shadow:2px 3px 0 rgba(20,20,20,.04), 6px 10px 20px rgba(20,20,20,.06);
}#profile .memo__tape{
  position:absolute;left:50%;top:-12px;margin-left:-42px;
  width:84px;height:24px;background:var(--lime);
  transform:rotate(-2.5deg);
}#profile .memo__ttl{
  font-family:var(--display);
  font-variation-settings:'wdth' 100,'wght' 900;
  font-weight:900;font-size:24px;letter-spacing:.02em;
}#profile .memo ul{list-style:none;margin-top:16px}#profile .memo li{
  font-size:15px;font-weight:500;line-height:2.2;letter-spacing:.02em;
  color:#4e4e4a;
}#profile .memo__more{
  margin-top:10px;text-align:right;
  font-family:var(--hand);font-size:14px;color:var(--gray);
}#profile .done{
  position:absolute;left:412px;top:1176px;z-index:3;
  width:330px;
}#profile .done__ttl{
  font-family:var(--display);
  font-variation-settings:'wdth' 100,'wght' 900;
  font-weight:900;font-size:24px;letter-spacing:.02em;
}#profile .done ul{list-style:none;margin-top:16px}#profile .done li{
  display:flex;align-items:baseline;justify-content:space-between;gap:10px;
  
  padding:9px 2px;border-bottom:1px solid #e2e0d9;
  font-size:14.5px;font-weight:700;letter-spacing:.03em;
}#profile .done li em{
  flex:none;font-style:normal;
  font-size:10.5px;font-weight:500;letter-spacing:.06em;color:var(--gray);
}#profile .love{
  position:absolute;left:104px;top:1600px;z-index:3;
  display:flex;align-items:center;gap:18px;
  font-family:var(--hand);
  font-size:19px;font-weight:700;letter-spacing:.04em;color:#4e4e4a;
}#profile .love b{
  font-family:var(--display);
  font-variation-settings:'wdth' 100,'wght' 900;
  font-weight:900;font-size:12px;letter-spacing:.18em;
  color:var(--black);
  padding:5px 10px;background:var(--lime);
}#profile .flow3{
  position:absolute;left:104px;top:1686px;width:716px;z-index:3;
}#profile .flow3__ttl{
  font-size:17px;font-weight:900;letter-spacing:.03em;color:var(--black);
}#profile .flow3 ol{list-style:none;display:flex;gap:0;margin-top:22px}#profile .flow3 li{
  position:relative;flex:1;padding-right:22px;
}#profile .flow3 li + li{padding-left:26px;border-left:1px solid #e2e0d9}#profile .flow3 b{
  display:block;
  font-family:var(--display);
  font-variation-settings:'wdth' 100,'wght' 900;
  font-weight:900;font-size:22px;letter-spacing:.04em;color:#c9c7bf;
}#profile .flow3 li:first-child b{color:var(--black)}#profile .flow3 span{display:block;margin-top:8px;font-size:17px;font-weight:900}#profile .flow3 i{
  display:block;margin-top:7px;font-style:normal;
  font-size:13px;font-weight:500;line-height:1.7;color:#7d7d78;
}#profile .desk{
  position:absolute;right:-110px;top:1200px;z-index:3;
  width:760px;
}#profile .desk__lb{
  font-family:var(--display);
  font-variation-settings:'wdth' 100,'wght' 700;
  font-weight:700;font-size:12px;letter-spacing:.18em;
  color:var(--gray);margin-bottom:12px;
}#profile .desk img{
  display:block;width:100%;height:auto;
  box-shadow:0 22px 54px rgba(20,20,20,.14), 0 3px 10px rgba(20,20,20,.05);
}#profile .desk figcaption{
  margin-top:16px;
  font-family:var(--hand);
  font-size:17px;font-weight:700;letter-spacing:.04em;color:#4e4e4a;
}#profile [data-rise]{
  opacity:0;transform:translateY(58px);
  transition:opacity .8s ease var(--d,0s), transform 1.05s var(--ease) var(--d,0s);
}#profile [data-rise].is-up{opacity:1;transform:none}#profile .head{opacity:1;transform:none}#profile .head .ln{
  display:block;overflow:hidden;
  padding-bottom:.16em;margin-bottom:-.16em;
}#profile .head .ln > i{
  display:block;font-style:normal;
  transform:translateY(112%);
  transition:transform .95s var(--ease) var(--ld,0s);
}#profile .head.is-up .ln > i{transform:translateY(0)}#profile .head .ln:nth-child(2) > i{--ld:.10s}#profile .head .ln:nth-child(3) > i{--ld:.20s}@media (prefers-reduced-motion:reduce){}@media (max-width:767px){#profile .plabel{position:relative;left:auto;top:auto;margin-bottom:16px;font-size:11px}#profile .bigname{display:none}#profile .head{position:relative;left:auto;top:auto;font-size:32px;line-height:1.36}#profile .sub{position:relative;left:auto;top:auto;margin-top:14px;font-size:15px}#profile .script{
    position:relative;right:auto;left:auto;top:auto;
    text-align:left;margin-top:26px;font-size:28px;
  }#profile .portrait{
    position:relative;right:auto;top:auto;
    display:block;width:calc(100% + 44px);max-width:none;height:auto;
    margin:14px -22px 0;
    -webkit-mask-image:linear-gradient(to bottom,#000 78%,rgba(0,0,0,.5) 93%,transparent 100%);
            mask-image:linear-gradient(to bottom,#000 78%,rgba(0,0,0,.5) 93%,transparent 100%);
  }#profile .qa{position:relative;left:auto;top:auto;width:100%;margin-top:26px}#profile .qa section + section{margin-top:34px}#profile .qa h3{font-size:19px;line-height:1.55}#profile .qa p{margin-top:12px;font-size:14.5px;line-height:2.05}#profile .memo li{font-size:15px}#profile .done li{font-size:15px;padding:13px 2px}#profile .flow3 span{font-size:17px}#profile .flow3 i{font-size:14px}#profile .qa p br{display:none}#profile .memo{position:relative;left:auto;top:auto;width:100%;margin-top:40px}#profile .done{position:relative;left:auto;top:auto;width:100%;margin-top:34px}#profile .love{position:relative;left:auto;top:auto;margin-top:30px;font-size:15px;flex-wrap:wrap}#profile .flow3{position:relative;left:auto;top:auto;width:100%;margin-top:34px}#profile .flow3 ol{flex-direction:column;gap:0}#profile .flow3 li{padding:14px 0}#profile .flow3 li + li{padding-left:0;border-left:0;border-top:1px solid #e2e0d9}#profile .desk{
    position:relative;right:auto;top:auto;
    width:calc(100% + 44px);margin:36px -22px 0;
  }#profile .desk__lb, #profile .desk figcaption{padding:0 22px}
}
/* ===== #contact (contact.css) ===== */
#contact{
  --ink:#141414;
  --paper:#FBFAF7;
  --lime:#e9f22a;
  --gray:#8b8b84;
  --line:#d9d7cf;
  --display:'Archivo','Haettenschweiler','Arial Narrow',Impact,sans-serif;
  --jp:'Zen Kaku Gothic New','Hiragino Kaku Gothic ProN','Yu Gothic',sans-serif;
  --hand:'Zen Kurenaido','Zen Kaku Gothic New',sans-serif;
  --ease:cubic-bezier(.16,.84,.24,1);
}#contact img{height:auto}#contact .klabel{
  position:absolute;left:104px;top:38px;z-index:4;
  font-size:22px;font-weight:900;letter-spacing:.02em;
}#contact .kmk{
  background-image:linear-gradient(transparent 76%, var(--lime) 76%, var(--lime) 96%, transparent 96%);
  background-repeat:no-repeat;background-size:0 100%;
  transition:background-size .8s var(--ease) .7s;
}#contact .is-lit .kmk{background-size:100% 100%}#contact .khead{
  position:absolute;left:96px;top:56px;z-index:3;
  font-family:var(--display);
  font-variation-settings:'wdth' 62,'wght' 900;
  font-weight:900;font-size:130px;line-height:.98;letter-spacing:-.012em;
  color:var(--ink);
}#contact .khead .kln{
  display:block;overflow:hidden;
  padding-bottom:.06em;margin-bottom:-.06em;
}#contact .khead .kln > i{display:block;font-style:normal}#contact .khead .kch{
  display:inline-block;
  transform:translateY(112%);
  transition:transform 1.05s var(--ease) var(--d,0s);
}#contact .is-lit .khead .kch{transform:translateY(0)}#contact .kfeel{
  position:absolute;left:726px;top:188px;z-index:4;
  font-family:var(--display);
  font-variation-settings:'wdth' 100,'wght' 700;
  font-weight:700;font-size:13px;letter-spacing:.22em;color:var(--ink);
  opacity:0;transition:opacity .7s ease .8s;
}#contact .is-lit .kfeel{opacity:1}#contact .kbrand{
  position:absolute;right:104px;top:38px;z-index:4;
  text-align:right;
  font-family:var(--display);
  font-variation-settings:'wdth' 100,'wght' 900;
  font-weight:900;font-size:19px;letter-spacing:-.01em;line-height:1.5;
}#contact .kbrand b{display:block;font-size:15px;letter-spacing:.14em}#contact .kcol{position:absolute;z-index:4}#contact .kcol--1{left:104px;top:388px;width:392px}#contact .kcol--2{left:544px;top:388px;width:344px}#contact .kcol--3{left:936px;top:388px;width:400px}#contact .kh{
  display:flex;align-items:flex-start;gap:14px;
  font-size:17px;font-weight:900;letter-spacing:.01em;line-height:1.25;
}#contact .kh b{
  flex:none;display:flex;align-items:center;justify-content:center;
  width:32px;height:32px;margin-top:-5px;border-radius:50%;
  background:var(--lime);
  font-family:var(--display);
  font-variation-settings:'wdth' 100,'wght' 900;
  font-weight:900;font-size:14px;letter-spacing:.02em;
}#contact .kh i{
  display:block;margin-top:5px;font-style:normal;
  font-family:var(--display);
  font-variation-settings:'wdth' 100,'wght' 700;
  font-weight:700;font-size:10.5px;letter-spacing:.16em;color:var(--gray);
}#contact .kbar{
  display:block;margin-top:16px;height:2px;background:#e8e6df;overflow:hidden;
}#contact .kbar u{
  display:block;height:100%;width:0;background:var(--lime);
  transition:width .7s var(--ease);
}#contact .kpick{position:relative;margin-top:26px}#contact .kpick__i{
  display:block;position:relative;
  border:0;background:none;padding:0;margin:0;
  font-family:var(--display);
  font-variation-settings:'wdth' var(--w,62),'wght' 900;
  font-weight:900;font-size:56px;line-height:1.18;letter-spacing:-.008em;
  color:var(--ink);cursor:pointer;text-align:left;
  transition:color .3s ease;
}#contact .kpick__i.is-on{color:var(--lime);-webkit-text-stroke:1.2px var(--ink)}#contact .kfield{display:block;margin-top:30px}#contact .kfield__l{
  display:block;
  font-size:13.5px;font-weight:700;letter-spacing:.02em;
}#contact .kfield__l i{
  display:block;margin-top:3px;font-style:normal;
  font-family:var(--display);
  font-variation-settings:'wdth' 100,'wght' 700;
  font-weight:700;font-size:10.5px;letter-spacing:.16em;color:var(--gray);
}#contact .kfield select{
  display:block;width:100%;margin-top:12px;
  padding:6px 34px 12px 2px;
  border:0;border-bottom:1.5px solid var(--ink);border-radius:0;
  background:transparent;
  -webkit-appearance:none;appearance:none;
  font-family:var(--jp);font-size:22px;font-weight:500;letter-spacing:.01em;
  color:var(--ink);cursor:pointer;
  background-image:
    linear-gradient(45deg,transparent 50%,var(--ink) 50%),
    linear-gradient(135deg,var(--ink) 50%,transparent 50%);
  background-position:calc(100% - 13px) calc(50% + 2px), calc(100% - 6px) calc(50% + 2px);
  background-size:7px 7px,7px 7px;
  background-repeat:no-repeat;
}#contact .kfield select:focus{outline:none;border-bottom-color:var(--lime)}#contact .krow{display:flex;align-items:flex-end;gap:16px;margin-top:22px}#contact .krow__l{
  flex:none;width:106px;padding-bottom:9px;
  font-size:12.5px;font-weight:700;letter-spacing:.02em;line-height:1.35;
}#contact .krow__l i{
  display:block;margin-top:2px;font-style:normal;
  font-family:var(--display);
  font-variation-settings:'wdth' 100,'wght' 700;
  font-weight:700;font-size:9.5px;letter-spacing:.16em;color:var(--gray);
}#contact .krow__l em{
  display:inline-block;margin-top:5px;padding:2px 6px;
  font-style:normal;font-size:9.5px;font-weight:900;letter-spacing:.08em;
  background:var(--lime);color:var(--ink);
}#contact .krow input, #contact .krow textarea{
  flex:1;min-width:0;
  border:0;border-bottom:1.5px solid var(--ink);border-radius:0;
  background:transparent;padding:6px 2px 9px;
  font-family:var(--jp);font-size:15px;font-weight:500;letter-spacing:.02em;
  color:var(--ink);resize:none;
}#contact .krow input::placeholder, #contact .krow textarea::placeholder{color:#b6b4ac}#contact .krow input:focus, #contact .krow textarea:focus{outline:none;border-bottom-color:var(--lime)}#contact .krow--msg{align-items:flex-start}#contact .krow--msg .krow__l{padding-top:4px;padding-bottom:0}#contact .krow.is-bad input, #contact .krow.is-bad textarea{border-bottom-color:#e0483c}#contact .kagree{
  display:flex;align-items:flex-start;gap:10px;margin-top:24px;cursor:pointer;
}#contact .kagree input{position:absolute;opacity:0;width:0;height:0}#contact .kagree__b{
  flex:none;width:17px;height:17px;margin-top:1px;
  border:1.5px solid var(--ink);background:transparent;
  transition:background .2s ease;
}#contact .kagree__b::after{
  content:"";position:absolute;width:9px;height:5px;margin:4px 0 0 3px;
  border-left:2px solid var(--ink);border-bottom:2px solid var(--ink);
  transform:rotate(-45deg) scale(0);transform-origin:50% 50%;
  transition:transform .22s var(--ease);
}#contact .kagree input:checked + .kagree__b{background:var(--lime)}#contact .kagree input:checked + .kagree__b::after{transform:rotate(-45deg) scale(1)}#contact .kagree input:focus-visible + .kagree__b{outline:2px solid var(--lime);outline-offset:2px}#contact .kagree__t{font-size:11.5px;font-weight:500;line-height:1.65;letter-spacing:.02em;color:#5f5f59}#contact .kagree.is-bad .kagree__b{border-color:#d8402f}#contact .kmsg{
  min-height:18px;margin-top:14px;
  font-size:12.5px;font-weight:700;letter-spacing:.02em;
  opacity:0;transform:translateY(-4px);
  transition:opacity .28s ease,transform .28s ease;
}#contact .kmsg.is-on{opacity:1;transform:none}#contact .kmsg.is-err{color:#d8402f}#contact .kmsg.is-wait{color:#5f5f59}#contact .kmsg.is-ok{color:#2a7d4f}#contact .ksend{
  position:relative;display:block;
  width:100%;height:80px;margin-top:6px;padding:0;
  border:0;border-radius:0;background:var(--ink);
  cursor:pointer;overflow:hidden;
  -webkit-tap-highlight-color:transparent;
}#contact .ksend__fill{
  position:absolute;inset:0;z-index:1;
  background:var(--lime);
  transform:scaleX(0);transform-origin:0 50%;
  transition:transform .6s cubic-bezier(.16,.84,.24,1);
}#contact .ksend:hover .ksend__fill, #contact .ksend:focus-visible .ksend__fill{transform:scaleX(1)}#contact .ksend__in{
  position:relative;z-index:3;
  display:flex;align-items:center;justify-content:center;gap:26px;
  height:100%;
}#contact .ksend__t{
  position:relative;display:block;overflow:hidden;
  height:26px;
}#contact .ksend__t i{
  display:block;font-style:normal;
  font-size:18px;font-weight:900;letter-spacing:.06em;line-height:26px;
  transition:transform .5s cubic-bezier(.16,.84,.24,1);
}#contact .ksend__t i:first-child{color:var(--lime)}#contact .ksend__t i:last-child{
  position:absolute;left:0;top:0;
  color:var(--ink);transform:translateY(100%);
}#contact .ksend:hover .ksend__t i:first-child, #contact .ksend:focus-visible .ksend__t i:first-child{transform:translateY(-100%)}#contact .ksend:hover .ksend__t i:last-child, #contact .ksend:focus-visible .ksend__t i:last-child{transform:translateY(0)}#contact .ksend__dot{
  position:relative;display:block;flex:none;
  width:30px;height:30px;
}#contact .ksend__dot b{
  position:absolute;left:50%;top:50%;
  width:10px;height:10px;margin:-5px 0 0 -5px;border-radius:50%;
  
  background:transparent;box-shadow:inset 0 0 0 2px var(--lime);
  transition:background .3s ease,box-shadow .3s ease,transform .4s var(--ease);
}#contact .ksend.is-ready .ksend__dot b{background:var(--lime);box-shadow:none}#contact .ksend__dot i{
  position:absolute;inset:0;border-radius:50%;
  border:2px solid var(--lime);
  transform:scale(.34);opacity:0;
  animation:kPulse 2.6s cubic-bezier(.2,.7,.3,1) infinite;
  animation-play-state:paused;
  transition:border-color .3s ease;
}#contact .ksend.is-ready .ksend__dot i{animation-play-state:running}#contact .ksend__dot i:last-of-type{animation-delay:1.3s}@keyframes kPulse{0%{transform:scale(.34);opacity:.95}70%{opacity:0}100%{transform:scale(1);opacity:0}
}#contact .ksend:hover .ksend__dot i, #contact .ksend:focus-visible .ksend__dot i{border-color:var(--ink);animation-duration:1.1s}#contact .ksend:hover .ksend__dot i:last-of-type, #contact .ksend:focus-visible .ksend__dot i:last-of-type{animation-delay:.55s}#contact .ksend:hover .ksend__dot b, #contact .ksend:focus-visible .ksend__dot b{background:var(--ink);box-shadow:none;transform:scale(1.25)}#contact .ksend__rp{
  position:absolute;z-index:2;
  width:26px;height:26px;margin:-13px 0 0 -13px;border-radius:50%;
  background:var(--lime);
  transform:scale(0);opacity:.55;
  pointer-events:none;
}#contact .ksend__rp.is-go{
  transform:scale(26);opacity:0;
  transition:transform .72s cubic-bezier(.2,.7,.3,1), opacity .72s ease;
}#contact .ksend:hover .ksend__rp{background:var(--ink);opacity:.30}#contact .ksend:focus-visible{outline:3px solid var(--lime);outline-offset:3px}#contact .kreply{
  margin-top:14px;text-align:center;
  font-size:12.5px;font-weight:500;letter-spacing:.03em;color:var(--gray);
}#contact .knote{
  position:absolute;left:104px;top:788px;z-index:4;
  display:flex;align-items:center;gap:26px;
}#contact .knote p{
  font-family:var(--hand);
  font-size:14.5px;font-weight:700;line-height:1.75;letter-spacing:.03em;color:#4e4e4a;
}#contact .knote__sl{
  display:block;width:1px;height:38px;background:var(--line);
  transform:rotate(20deg);
}#contact .knote__mail{
  font-family:var(--display);
  font-variation-settings:'wdth' 100,'wght' 700;
  font-weight:700;font-size:17px;letter-spacing:.02em;
  color:var(--ink);text-decoration:none;
  border-bottom:1.5px solid var(--ink);padding-bottom:2px;
}#contact [data-rise]{
  opacity:0;transform:translateY(46px);
  transition:opacity .8s ease var(--d,0s), transform 1s var(--ease) var(--d,0s);
}#contact [data-rise].is-up{opacity:1;transform:none}@media (prefers-reduced-motion:reduce){}#contact .kfoot{
  position:absolute;left:104px;right:104px;top:906px;z-index:4;
  display:flex;align-items:center;justify-content:space-between;
  padding-top:22px;
}#contact .kfoot__ln{
  position:absolute;left:0;right:0;top:0;height:1px;background:var(--line);
}#contact .kfoot__c{
  display:flex;align-items:baseline;gap:16px;
  font-family:var(--display);
  font-variation-settings:'wdth' 100,'wght' 700;
  font-weight:700;font-size:12px;letter-spacing:.14em;color:var(--ink);
}#contact .kfoot__c i{
  font-family:var(--jp);font-style:normal;
  font-size:11.5px;font-weight:500;letter-spacing:.04em;color:var(--gray);
}#contact .kfoot__n{display:flex;gap:28px}#contact .kfoot__n a{
  font-family:var(--display);
  font-variation-settings:'wdth' 100,'wght' 700;
  font-weight:700;font-size:11.5px;letter-spacing:.14em;
  color:var(--gray);text-decoration:none;
  transition:color .25s ease;
}#contact .kfoot__n a:hover{color:var(--ink)}#contact .ksend.is-sending{pointer-events:none;opacity:.72}@media (max-width:767px){#contact .klabel{position:relative;left:auto;top:auto;font-size:15px}#contact .khead{
    position:relative;left:auto;top:auto;
    margin-top:10px;font-size:clamp(40px,13vw,60px);line-height:1.02;
  }#contact .kfeel{position:relative;left:auto;top:auto;margin-top:12px}#contact .kbrand{position:absolute;right:22px;top:52px;font-size:13px;line-height:1.45}#contact .kbrand b{font-size:11px}#contact .kcol{position:relative;left:auto;top:auto;width:100%}#contact .kcol--1{margin-top:34px}#contact .kcol--2, #contact .kcol--3{margin-top:38px}#contact .kh{font-size:15px}#contact .kh i{font-size:9.5px}#contact .kagree__t{font-size:12.5px;line-height:1.75}#contact .kreply{font-size:13px}#contact .knote p{font-size:15px;line-height:1.8}#contact .kh b{width:28px;height:28px;font-size:12px}#contact .kpick{display:flex;flex-wrap:wrap;gap:8px;margin-top:18px}#contact .kpick__i{
    font-size:19px;line-height:1;
    padding:12px 16px;border:1.5px solid var(--ink);
    font-variation-settings:'wdth' 100,'wght' 900;
  }#contact .kpick__i.is-on{
    background:var(--lime);color:var(--ink);-webkit-text-stroke:0;
  }#contact .kfield select{font-size:18px}#contact .krow{flex-direction:column;align-items:stretch;gap:6px;margin-top:20px}#contact .krow__l{width:auto;padding-bottom:0;display:flex;align-items:center;gap:9px}#contact .krow__l i{margin-top:0}#contact .krow__l em{margin-top:0}#contact .krow input, #contact .krow textarea{font-size:16px;padding:8px 2px 10px}#contact .krow--msg .krow__l{padding-top:0}#contact .ksend{height:66px}#contact .ksend__t i{font-size:16px}#contact .knote{
    position:relative;left:auto;top:auto;
    flex-direction:column;align-items:flex-start;gap:14px;margin-top:40px;
  }#contact .knote__sl{display:none}#contact .kfoot{
    position:relative;left:auto;right:auto;top:auto;
    flex-direction:column;align-items:flex-start;gap:16px;
    margin-top:44px;padding-top:24px;
  }#contact .kfoot__n{flex-wrap:wrap;gap:6px 20px}#contact .kfoot__n a{padding:14px 8px;margin:0 -8px;font-size:12.5px}#contact .knote__mail{display:inline-block;padding:9px 0;font-size:18px}
}#contact .khoney{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}