.hero-top{position:relative;overflow:hidden;min-height:100vh;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;padding:0 var(--sp-24);}
.hero-top__inner{position:relative;z-index:2;}
.hero-top h1{font-weight:600;font-size:clamp(var(--fs-30),7.4vw,var(--fs-66));line-height:1.85;letter-spacing:0.14em;max-width:100%;}
.hero-top h1 .lead{display:block;font-size:0.62em;font-weight:400;color:var(--sub);letter-spacing:0.1em;margin-bottom:var(--sp-2);}
.hero-top__inner{position:relative;z-index:1;}
.hero-top .gap{font-family:var(--sans);font-size:var(--fs-14);letter-spacing:0.08em;color:var(--sub);margin-top:var(--sp-34);}
.hero-top .gap b{font-family:var(--serif);font-weight:500;font-size:var(--fs-15);letter-spacing:0.1em;color:var(--ink);}
.hero-top .acts{margin-top:var(--sp-54);display:flex;flex-direction:column;gap:var(--sp-24);justify-content:center;align-items:center;}
.hero-top__scr{position:absolute;bottom:var(--sp-36);left:0;right:0;display:flex;justify-content:center;font-family:var(--sans);font-size:var(--fs-11_5);letter-spacing:0.16em;color:var(--faint);}
.hero-top__scr .scr{display:flex;flex-direction:column;align-items:center;gap:var(--sp-10);}
.hero-top__scr .scr i{width:var(--sp-1);height:var(--sp-30);background:var(--faint);position:relative;overflow:hidden;}
.hero-top__scr .scr i::after{content:"";position:absolute;left:0;top:0;width:100%;height:40%;background:var(--ink);animation:scrdrop 1.8s var(--ease) infinite;}
@keyframes scrdrop{0%{transform:translateY(-120%);}60%,100%{transform:translateY(260%);}}
.home .svc3{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--sp-32);}
.svc3__c{display:block;padding:var(--sp-40) var(--sp-32);background:var(--panel);border:var(--sp-1) solid var(--line);border-radius:var(--sp-3);transition:0.3s var(--ease);}
.svc3__c:hover{transform:translateY(var(--sp-n6));box-shadow:0 var(--sp-30) var(--sp-50) var(--sp-n30) rgba(var(--s2-rgb),0.6);border-color:var(--line-d);}
.svc3__c .no{font-family:var(--sans);font-size:var(--fs-12);letter-spacing:0.14em;color:var(--s2);margin-bottom:var(--sp-12);}
.svc3__c h3{font-size:var(--fs-20);font-weight:600;letter-spacing:0.06em;margin-bottom:var(--sp-14);}
.svc3__c p{font-size:var(--fs-13_5);color:var(--sub);line-height:1.95;letter-spacing:0.02em;margin-bottom:var(--sp-22);}
.home .svc-cta{display:flex;flex-direction:column;justify-content:center;align-items:center;gap:var(--sp-16);margin-top:var(--sp-50);}
.home .svc-cta .sep{display:none;}
.svc-cta a{font-family:var(--sans);font-size:var(--fs-13);letter-spacing:0.04em;color:var(--ink);padding-bottom:var(--sp-4);}
.svc-cta a::before{content:none;}
.svc-cta a:hover{color:var(--green);border-color:var(--green);}
.home .svc-cta .sep{display:none;}
.home .svc4{grid-template-columns:repeat(4,1fr);gap:var(--sp-22);}
.home .svc4 .svc3__c{padding:var(--sp-34) var(--sp-24);}
.home .svc4 .svc3__c h3{font-size:var(--fs-18);letter-spacing:0.04em;}
@media(max-width: 1024px){.home .svc4{grid-template-columns:repeat(2,1fr);gap:var(--sp-24);}}
.home .saas3{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--sp-28);}
.home .saas3__c{padding:var(--sp-40) var(--sp-34);background:var(--panel);border:var(--sp-1) solid var(--line);border-radius:var(--sp-3);display:flex;flex-direction:column;transition:0.3s var(--ease);}
.saas3__c:hover{transform:translateY(var(--sp-n6));box-shadow:0 var(--sp-30) var(--sp-50) var(--sp-n30) rgba(var(--s2-rgb),0.6);border-color:var(--line-d);}
.saas3__c h3{font-size:var(--fs-18);font-weight:600;letter-spacing:0.04em;margin-bottom:var(--sp-14);line-height:1.5;}
.saas3__c p{font-size:var(--fs-13);color:var(--sub);line-height:1.95;letter-spacing:0.02em;margin-bottom:var(--sp-20);flex:1;}
.koto-band .wrap{text-align:center;max-width:var(--sp-768);}
.koto-more{text-align:center;margin-top:var(--sp-44);}
.koto-band .e{font-family:var(--sans);font-size:var(--fs-12);letter-spacing:0.16em;color:var(--green);display:block;margin-bottom:var(--sp-18);}
.koto-band h2{font-weight:600;font-size:var(--fs-30);line-height:1.6;letter-spacing:0.08em;margin-bottom:var(--sp-20);}
.koto-band p{font-size:var(--fs-14);color:var(--sub);line-height:2;letter-spacing:0.03em;margin:0 auto var(--sp-28);max-width:32em;}
@media(max-width: 768px){.hero-top h1{font-size:var(--fs-38);}.home .svc3, .home .saas3, .home .svc4{grid-template-columns:1fr;}.koto-band h2{font-size:var(--fs-24);}.hero-top__scr{display:none;}}
.home .saas3__c .ico .ico-sym{width:var(--sp-32);height:var(--sp-32);filter:grayscale(1);}
.home .saas3__c:hover .ico .ico-sym{filter:grayscale(1) brightness(0) invert(1);}
.home .gap{color:var(--ink);}
.home .why-sec .ico{display:flex;align-items:center;justify-content:center;}
.home .why-sec .why-no{font-family:var(--serif);font-size:var(--fs-30);font-weight:700;color:var(--ink);line-height:1;position:relative;z-index:2;}
@media(hover:none){.home .why-sec .why-no{color:var(--white);}}
.home .why-sec .svc3__c:hover .why-no{color:var(--white);}
.home
.home .site-wm{top:50%;}
.home
.svc3__c .ico .kamon-ico{width:var(--sp-32);height:var(--sp-32);color:var(--gray-mid);}
.home .svc3__c:hover .ico .kamon-ico{color:var(--white);}
.home .svc3__c{position:relative;}
.home .koto-link{position:absolute;inset:0;z-index:3;}
.home .koto-head{display:flex;align-items:center;justify-content:center;gap:var(--sp-16);margin-bottom:calc(var(--sp-28) + var(--sp-14));height:var(--sp-58);}.koto-card{position:relative;}
.home .koto-head .ico{margin:0;flex:0 0 auto;}
.home .koto-card{width:var(--sp-104);height:auto;display:block;flex:0 0 auto;}
@media(max-width: 768px){.home .koto-card{width:var(--sp-84);}}
@media(hover:none){.home .saas3__c .ico .ico-sym{filter:brightness(0) invert(1);}.home .kamon-ico{filter:brightness(0) invert(1);}}
.home .hero-top .gap{opacity:0;}
@media(prefers-reduced-motion:reduce){.home .hero-top .gap{opacity:1;}}
@keyframes gapReveal{from{opacity:0;transform:translateY(var(--sp-6));}to{opacity:1;transform:none;}}
@media(prefers-reduced-motion:reduce){.home .hero-top .gap{opacity:1;animation:none;}}
.home .koto-head{justify-content:flex-start;}
.home .idx-s1{font-size:var(--fs-12);margin-top:var(--sp-6);}
.home .idx-s2{display:block;width:auto;height:auto;max-width:var(--sp-200);margin:var(--sp-18) 0 var(--sp-2);}
.home .idx-s3{display:block;width:auto;height:auto;max-width:var(--sp-200);margin:var(--sp-18) 0 var(--sp-2);}
.home .idx-s4{display:block;width:auto;height:auto;max-width:var(--sp-200);margin:var(--sp-18) 0 var(--sp-2);}
