@charset "utf-8";
:root{--ink:#111112;--pink:#ff94bd;--paper:#fff;--pale:#fff2f7;--header-height:78px;color-scheme:light;font-family:"Noto Sans JP","Yu Gothic",Meiryo,sans-serif;color:var(--ink);background:#fff;font-synthesis:weight}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit;color:inherit;cursor:pointer}a{color:inherit;text-decoration:none}img{display:block;max-width:100%}button{border:0;background:none}figure,p,h1,h2,h3,h4{margin:0}em{font-style:normal;color:#e76299}[hidden]{display:none!important}button,a{touch-action:manipulation}a:focus-visible,button:focus-visible{outline:3px solid #dc317a;outline-offset:5px}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:fixed;left:20px;top:-100px;z-index:1000;background:#fff;padding:14px}.skip-link:focus{top:10px}
.site-header{height:var(--header-height);position:fixed;inset:0 0 auto;display:flex;align-items:center;gap:38px;padding:0 4%;z-index:100;background:#fffffffa;border-bottom:1px solid #1111110d}.brand{display:block;width:185px;flex-shrink:0}.brand img{width:100%;height:auto}.desktop-nav{display:flex;gap:30px;align-items:center;margin-left:auto;font:700 10px/1 Arial,sans-serif;letter-spacing:.09em}.desktop-nav a{position:relative;padding:16px 0}.desktop-nav a::after{content:"";position:absolute;height:2px;inset:auto 0 6px;background:var(--pink);transform:scaleX(0);transform-origin:left;transition:transform .25s}.desktop-nav a:hover::after,.desktop-nav a[aria-current]::after{transform:scaleX(1)}.header-actions{display:flex;align-items:center;gap:28px}.motion-toggle{display:flex;align-items:center;gap:8px;min-height:44px;padding:8px}.motion-label{font-size:9px;white-space:nowrap}.motion-symbol{display:block;width:11px;height:14px;border-left:3px solid;border-right:3px solid}.motion-toggle[aria-pressed=true] .motion-symbol{border:0;border-left:11px solid;border-top:7px solid transparent;border-bottom:7px solid transparent}.header-progress{width:75px;height:1px;background:#d8d8db;display:block}.header-progress i{display:block;width:100%;height:100%;background:#f573a7;transform:scaleX(0);transform-origin:left}.menu-toggle{display:none;width:44px;height:44px;padding:11px 7px}.menu-toggle span{height:1px;width:24px;background:#111;display:block;margin:7px 0;transition:transform .2s}.menu-toggle[aria-expanded=true] span:first-child{transform:translateY(4px) rotate(45deg)}.menu-toggle[aria-expanded=true] span:last-child{transform:translateY(-4px) rotate(-45deg)}.mobile-menu{position:fixed;top:var(--header-height);inset-inline:0;background:#fff;padding:15px 6% 30px;border-bottom:1px solid #111;box-shadow:0 20px 20px #11111112}.mobile-menu a{display:flex;align-items:center;gap:20px;min-height:66px;font:700 22px Arial,sans-serif;border-bottom:1px solid #eee}.mobile-menu small{font-size:10px;color:#af537a}.mobile-menu a span{margin-left:auto;font:11px "Yu Gothic",sans-serif}
.eyebrow{font:700 10px/1.6 Arial,sans-serif;letter-spacing:.18em}.scroll-link{display:inline-flex;align-items:center;gap:20px;font:700 9px Arial,sans-serif;letter-spacing:.16em;min-height:44px}.scroll-link span{font-size:22px;font-weight:400}.pill-link{display:inline-flex;justify-content:space-between;align-items:center;gap:35px;border-radius:99px;background:#111;color:#fff;padding:16px 24px;font-size:12px;font-weight:700;min-height:48px}.pill-link span,.line-link span{display:inline-block;transition:transform .25s}.pill-link:hover span,.line-link:hover span{transform:translate(3px,-3px)}.pill-link:hover{background:#343036}.line-link{display:flex;justify-content:space-between;align-items:center;font-size:13px;font-weight:600;padding:20px 0;border-bottom:1px solid #b8b6b9}
.scene-index{position:absolute;left:6%;bottom:5%;display:flex;align-items:center;gap:14px;z-index:15;color:var(--index-color,#111);font:500 11px Arial,sans-serif}.scene-index a{min-width:30px;min-height:44px;display:grid;place-items:center}.scene-index a.is-active{color:#f47eac;font-weight:700}.scene-index>span{width:18px;height:1px;background:currentColor}.scene-caption{position:absolute;right:4%;bottom:5.5%;color:var(--index-color,#111);font-size:8px;letter-spacing:.06em;z-index:12;opacity:.55}
.service-copy{position:absolute;left:5%;top:24%;width:34%;z-index:5}.service-copy .eyebrow{margin-bottom:20px}.service-name{font:600 clamp(64px,7.7vw,132px)/1 Arial,sans-serif;letter-spacing:-.06em;margin-bottom:22px}.service-reading{font-size:10px;color:#75616a;letter-spacing:.1em;margin-top:-12px;margin-bottom:28px}.service-headline{font-size:clamp(25px,2.8vw,45px);font-weight:900;line-height:1.45;letter-spacing:-.055em;margin-bottom:22px}.body-copy{font-size:clamp(11px,1.1vw,16px);line-height:2.1;max-width:360px}.service-features{list-style:none;display:flex;flex-wrap:wrap;gap:8px 16px;margin:20px 0 25px;padding:0;font-size:9px;color:#795769}.service-features li::before{content:"+";color:#be4479;margin-right:5px}.service-link{margin-top:8px}.service-background-word{position:absolute;left:0;bottom:-.07em;font:600 20vw/.85 Arial,sans-serif;letter-spacing:-.06em;color:#fbc5dc;white-space:nowrap;pointer-events:none;z-index:0}.service-sequence{position:absolute;left:5%;bottom:4%;font:10px Arial,sans-serif;letter-spacing:.15em;z-index:6;color:#9d5b78}.service-visual{position:absolute;inset:0;z-index:2;pointer-events:none}.profile-window{position:absolute;left:42%;top:9%;width:64%;height:95%;background:#fff;box-shadow:0 10px 45px #462a3d12;pointer-events:auto;overflow:hidden;transform-origin:50% 40%}.sample-label{position:absolute;right:20px;top:20px;font:9px Arial,sans-serif;letter-spacing:.2em;color:#fff;text-shadow:0 1px 5px #1116;z-index:3}.sample-cover{width:100%;height:37%;min-height:160px;object-fit:cover;object-position:50% 47%}.sample-content{position:relative;padding:0 5% 30px}.sample-identity{display:flex;align-items:flex-start;gap:20px;min-height:105px;padding-top:22px}.sample-avatar{width:80px;height:80px;border-radius:50%;border:4px solid white;object-fit:cover;object-position:50% 45%;margin-top:-49px;position:relative}.sample-name{font:700 22px/1.2 Arial,sans-serif;margin-bottom:7px}.sample-role{font:9px Arial,sans-serif;letter-spacing:.04em}.sample-social-text{margin-left:auto;display:flex;gap:12px;font:9px Arial,sans-serif;padding-top:5px}.sample-tabs{display:flex;gap:30px;border-bottom:1px solid #ebe6e9}.sample-tabs button{min-height:48px;padding:8px 2px;font:9px Arial,sans-serif;letter-spacing:.12em;position:relative}.sample-tabs button[aria-selected=true]{font-weight:700}.sample-tabs button[aria-selected=true]::after{content:"";position:absolute;inset:auto 0 -1px;height:2px;background:var(--pink)}.sample-panel{padding-top:22px;font-size:11px;line-height:1.9;max-width:460px}.sample-intro{margin-bottom:18px;font-size:10px;line-height:1.9}.sample-row{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #eee;padding:13px 0;font:11px Arial,sans-serif}.sample-row span{color:#aa597a}.sample-profile-description{font-size:12px;line-height:2.2}.sample-profile-description small{display:block;color:#9f6a82;margin-top:18px;font-size:9px}.mini-agenda{position:absolute;right:2%;bottom:8%;width:29%;min-width:280px;z-index:4;background:#fff;box-shadow:0 8px 40px #44213c18;padding:24px;pointer-events:auto}.agenda-title{display:flex;justify-content:space-between;align-items:center;font:9px Arial,sans-serif;letter-spacing:.1em;border-bottom:1px solid #eee;padding-bottom:16px}.agenda-title span{letter-spacing:0;color:#777}.agenda-row{display:flex;align-items:center;gap:16px;padding:16px 0;border-bottom:1px solid #eee}.agenda-day{font:600 24px/1 Arial,sans-serif;flex:0 0 40px}.agenda-day small{display:block;font-size:8px;font-weight:400;margin-top:6px;color:#888}.agenda-event{min-width:0;flex:1;font-size:10px;line-height:1.6}.agenda-event small{display:block;font:8px Arial,sans-serif;color:#999;margin-top:4px}.agenda-row img{width:58px;height:40px;object-fit:cover}.agenda-note{font-size:8px;color:#aaa;padding-top:14px}.agenda-open{display:block;padding:10px 0 0;font-size:9px;text-align:left;text-decoration:underline;text-underline-offset:4px;min-height:34px}.mini-calendar{display:grid;grid-template-columns:repeat(7,1fr);gap:5px;font:10px/1 Arial,sans-serif;text-align:center;margin-top:14px}.mini-calendar span{padding:8px 2px}.mini-calendar .has-event{background:#ffe2ef;border-radius:50%;font-weight:700}.sample-event{display:flex;align-items:center;gap:16px;padding:14px 0;border-bottom:1px solid #eee}.sample-event b{font:700 18px Arial,sans-serif}.sample-event small{display:block;font-size:9px;color:#777}.visual-caption{position:absolute;right:4%;bottom:2.5%;z-index:7;font-size:8px;color:#8e6476}.generic-service-image{position:absolute;left:44%;top:15%;width:60%;height:78%;object-fit:cover}.service-scene-reverse .service-copy{left:62%;width:32%}.service-scene-reverse .profile-window{left:-9%}.service-scene-reverse .mini-agenda{right:auto;left:33%}.service-scene-reverse .generic-service-image{left:-5%}
.company-section{display:grid;grid-template-columns:1.1fr 1fr;gap:9%;padding:140px 7% 110px;background:#fff;position:relative}.company-heading .eyebrow{margin-bottom:40px}.company-heading h2{font:500 clamp(90px,11.5vw,190px)/.9 Arial,sans-serif;letter-spacing:-.075em}.company-heading h2 span{color:#e76299}.company-content{padding-top:10px}.company-logo{width:200px;height:auto;margin-bottom:30px}.company-tagline{font-size:19px;font-weight:700;margin-bottom:28px;letter-spacing:-.04em}.company-description{font-size:13px;line-height:2.1;margin-bottom:26px}.contact-block{margin-top:55px;scroll-margin-top:115px}.contact-block .eyebrow{color:#a14f72;margin-bottom:16px}.contact-block>p:not(.eyebrow){font-size:12px;line-height:2;margin-bottom:23px}.site-footer{display:flex;gap:24px;align-items:center;padding:27px 4%;border-top:1px solid #eee;color:#66666b;font-size:9px}.preview-label{font:700 8px Arial,sans-serif;letter-spacing:.1em;color:#111}.back-top{margin-left:auto;font:700 9px Arial,sans-serif;letter-spacing:.08em;color:#111;display:flex;gap:20px;align-items:center;min-height:44px}.back-top span{font-size:22px;font-weight:400}.noscript-note{padding:50px 6%;font-size:14px;line-height:2}.noscript-note a{text-decoration:underline}
@media(max-width:1100px){.desktop-nav{gap:21px}.site-header{gap:28px}.brand{width:164px}.motion-label{display:none}.header-actions{gap:20px}.service-copy{top:23%;width:35%}.service-name{font-size:8.3vw}.service-headline{font-size:2.9vw}.mini-agenda{right:1%;width:32%;min-width:245px;padding:20px}.sample-social-text{display:none}.sample-tabs{gap:22px}.company-section{gap:7%}}
@media(max-width:760px){:root{--header-height:64px}.site-header{padding:0 5%;gap:12px}.brand{width:145px}.desktop-nav{display:none}.header-actions{margin-left:auto;gap:10px}.header-progress{width:35px}.menu-toggle{display:block}.motion-toggle{padding:8px;min-width:32px}.scene-index{left:5%;bottom:3%;gap:5px;font-size:9px}.scene-index>span{width:12px}.scene-caption{right:5%;bottom:5%;font-size:6px}.service-copy,.service-scene-reverse .service-copy{left:6%;top:calc(var(--header-height) + 30px);width:88%;max-width:440px}.service-copy .eyebrow{font-size:8px;margin-bottom:12px}.service-name{font-size:64px;margin-bottom:12px}.service-reading{display:none}.service-headline{font-size:27px;line-height:1.4;margin-bottom:11px}.body-copy{font-size:10px;line-height:1.9;max-width:295px}.service-features{font-size:8px;margin:11px 0 12px;gap:12px}.service-link{font-size:10px;padding:12px 20px;min-height:42px;margin:0}.profile-window,.service-scene-reverse .profile-window{left:12%;top:49%;width:100%;height:74%;min-height:510px}.sample-cover{height:31%;min-height:125px;object-position:50% 45%}.sample-content{padding:0 7% 24px}.sample-identity{min-height:88px;gap:12px;padding-top:19px}.sample-avatar{width:62px;height:62px;margin-top:-40px;border-width:3px}.sample-name{font-size:18px}.sample-role{font-size:8px}.sample-tabs{gap:22px}.sample-tabs button{font-size:8px;min-height:44px}.sample-panel{font-size:9px;padding-top:15px}.sample-row{font-size:10px;padding:12px 0}.sample-intro{font-size:9px;margin-bottom:8px}.sample-profile-description{font-size:10px}.mini-agenda,.service-scene-reverse .mini-agenda{display:none}.visual-caption{bottom:2%;right:5%;font-size:6px}.service-background-word{font-size:40vw;bottom:0}.service-sequence{display:none}.generic-service-image,.service-scene-reverse .generic-service-image{left:8%;top:51%;width:100%;height:50%}.company-section{padding:80px 6% 70px;grid-template-columns:1fr;gap:55px}.company-heading h2{font-size:clamp(76px,25.6vw,100px)}.company-heading .eyebrow{margin-bottom:25px;font-size:9px}.company-content{padding-top:0}.company-logo{width:180px}.company-tagline{font-size:17px}.company-description{font-size:12px}.contact-block{margin-top:40px}.site-footer{padding:20px 6%;flex-wrap:wrap;gap:10px 20px}.site-footer>p{width:100%;order:3;font-size:9px}.back-top{font-size:8px}.back-top span{font-size:18px}}
@media(max-width:390px){.brand{width:137px}.header-actions{gap:5px}.header-progress{width:25px}.service-headline{font-size:25px}.service-name{font-size:58px}.service-copy{top:calc(var(--header-height) + 25px)}.service-features{margin-top:9px;margin-bottom:10px}.profile-window{top:50%}}
