@-webkit-keyframes spin-rotating-border{0%{transform:translate(-50%,-50%) rotate(0)}to{transform:translate(-50%,-50%) rotate(360deg)}}@keyframes spin-rotating-border{0%{transform:translate(-50%,-50%) rotate(0)}to{transform:translate(-50%,-50%) rotate(360deg)}}@keyframes a{25%{opacity:0}}@keyframes b{0%{transform:rotate(-135deg) translate3d(50vmax,0,0);opacity:0}20%{opacity:1}40%,to{transform:rotate(-135deg) translate3d(-50vmax,0,0);opacity:0}}@keyframes c{0%{transform:rotate(35deg) translate3d(50vmax,0,0);opacity:0}20%{opacity:1}40%,to{transform:rotate(35deg) translate3d(-50vmax,0,0);opacity:0}}@keyframes d{0%{transform:rotate(120deg) translate3d(50vmax,0,0);opacity:0}20%{opacity:1}40%,to{transform:rotate(120deg) translate3d(-50vmax,0,0);opacity:0}}:root{--radius-small:0.4rem;--radius-medium:0.8rem;--radius-large:1.6rem;--transition:0.35s;--transition-hover:0.1s;--duration:4s;--black:#16161d;--black-a:rgba(22,22,29,.15);--gray:#909099;--blue:#1e90ff;--blue-a:rgba(30,144,255,.1);--blue-dark:#005cb8;--blue-light:#52c3fb;--purple:#a029de;--purple-dark:#5f267d;--purple-muted:#a377d2;--white:#fff;--bg-white:#eeeeee30;--offwhite:#ccc;--sky-100:#3b2f4a;--sky-150:#302944;--sky-200:#1f1f3a;--sky-300:#16161d;--background-gradient:radial-gradient(circle at center bottom,/*var(--sky-100),*/var(--sky-200),var(--sky-300));--background:var(--bg-white);--toggle-background:var(--white);--text-color:var(--black);--text-color-a:var(--gray);--text-color-header:#000;--link-color:var(--blue);--link-color-hover:var(--blue-dark);--link-color-visited:var(--purple);--link-color-visited-hover:var(--purple-dark);--black-blue:#1f2029;--red:#da2c4d;--grey:#ecedf3;--yellow:#f8ab37}.g-dark{--toggle-background:var(--sky-300);--text-color:var(--offwhite);--text-color-header:#fff;--link-color:var(--blue);--link-color-hover:var(--blue);--link-color-visited:var(--purple-muted);--link-color-visited-hover:var(--purple-muted)}body,html{height:unset}html{font-size:10px;line-height:1.15;-webkit-text-size-adjust:100%}body{position:relative;font-size:1.6rem;line-height:1.5;color:var(--text-color);background:var(--background);transition:background 600ms ease-in-out}[lang=de] body,[lang=en] body,[lang=es] body,[lang=fr] body,[lang=it] body,[lang=pl] body,[lang=pt-PT] body{font-family:var(--g-font-family-specific)}.copyright,.dark-toggle,h2,img,ul{-ms-user-select:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.header-wrapper{max-width:56rem;margin:0 auto;text-align:center;padding-top:2.4rem}@media (min-width:40em){.header-wrapper{max-width:67.2rem;padding-top:4.8rem}}@media (min-width:60em){.header-wrapper{max-width:64rem}}.main-wrapper{margin:2.4rem auto 0}@media (min-width:40em){.main-wrapper{margin:0 auto;padding:4rem 0}.main-wrapper .container{max-width:35.2rem;margin:2.4rem auto}}.container{position:relative;margin:2.4rem}.footer-wrapper .container,.header-wrapper .container{padding:2.4rem 0;margin:0 2.4rem}h1{font-size:2.5rem;line-height:2}[lang=ja] h1{font-size:2.2rem!important}h1+p,h2{font-weight:600}h1+p{color:#727272}h1 a{display:block;line-height:5rem;margin:0 auto}h1 a:before{content:"";position:absolute;left:51%;right:51%;bottom:0;background:linear-gradient(to right,#4285f4 25%,#ea4335 25%,#ea4335 50%,#fbbc04 50%,#fbbc04 75%,#34a853 75%);height:3px;transition-property:left,right;transition-duration:.3s;transition-timing-function:ease-out}h1 a:hover:before{left:0;right:0}.rotating-border--google{--border-radius:4.8rem;--border-size:0.24rem;--border-bg:conic-gradient( #ea4335 0.0turn 0.125turn, #4285f4 0.125turn 0.25turn, #fbbc05 0.25turn 0.375turn, #34a853 0.375turn 0.5turn, #ea4335 0.5turn 0.625turn, #4285f4 0.625turn 0.75turn, #fbbc05 0.75turn 0.875turn, #34a853 0.875turn 1.0turn );position:relative;z-index:0;overflow:hidden;padding:.8rem 2.4rem;border-radius:var(--border-radius);text-align:center}.rotating-border--google::before{content:'';display:block;background:var(--border-bg);width:calc(100%*1.41421356237);padding-bottom:calc(100%*1.41421356237);position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);border-radius:100%;z-index:-1;-webkit-animation:spin-rotating-border 5s linear infinite;animation:spin-rotating-border 5s linear infinite}.rotating-border--google::after{content:'';position:absolute;top:var(--border-size);right:var(--border-size);bottom:var(--border-size);left:var(--border-size);background:var(--toggle-background);z-index:0;border-radius:calc(var(--border-radius) - var(--border-size))}.rotating-border--google span{position:relative;z-index:1;font-size:1.3rem}h1 a,h2,li{position:relative}h2{z-index:1;display:block;cursor:default;font-size:1.6rem;opacity:.85;text-align:center;margin:0 -1rem}@media (min-width:40em){.rotating-border--google span{font-size:1.6rem}h2{font-size:2rem}}h2 #faq_img img{vertical-align:top}.outline,a{color:var(--text-color)}.outline{display:inline-block;border:thin solid rgba(128,128,128,.4);padding:.6rem 1.3rem;border-radius:var(--radius-large)}h2 .outline{color:var(--text-color-header)}header .container{text-align:center}@media (min-width:40em){header .container,header h1{-ms-flex-align:center;align-items:center}header .container{display:-ms-flexbox;display:flex;text-align:left}header h1{-ms-flex:1;flex:1}}@media (max-width:40em){header br{display:none}}.logo{width:9.6rem;height:9.6rem;margin:0 0 .8rem;transform:scale(1);transition:transform .5s ease-in-out}.header-wrapper .container a{perspective:30rem}.header-wrapper .container:hover .logo{transform:scale(1.1)}@media (min-width:40em){.logo{width:11.2rem;height:11.2rem;margin:0 2.4rem 0 0}}@media (min-width:60em){.logo{width:12.8rem;height:12.8rem}}.about-wrapper{max-width:64rem;margin:3.2rem auto 0}.about-wrapper .outline{margin:0 2.4rem;border-radius:var(--radius-large);padding:2.4rem;border-color:rgba(128,128,128,.3)}.about-wrapper p{font-size:1.6rem;margin-top:1.6rem}.about-wrapper p:first-letter{font-size:2rem}.about-wrapper a,.footer-wrapper a{display:inline-block;font-weight:700;color:var(--link-color);border-radius:var(--radius-medium);transition:background var(--transition-hover),color var(--transition-hover)}.about-wrapper a:hover,.footer-wrapper a:hover{background:var(--blue-a);color:var(--link-color-hover)}ul{font-size:1.76rem}li{list-style:none}.works{margin:1.6rem 0}@media (min-width:40em){ul{font-size:1.92rem}.works{margin-bottom:6rem}}.project-link{display:block;position:relative;cursor:pointer;padding:2.4rem 0;transition:all .6s ease-in-out}.contact-link strong,.project-link strong{color:var(--link-color);transition:color var(--transition)}.contact-link:hover strong,.project-link:hover strong{color:var(--link-color-hover)}.contact-link:visited strong,.project-link:visited strong{color:var(--link-color-visited)}.contact-link:visited:hover strong,.project-link:visited:hover strong{color:var(--link-color-visited-hover)}.project-link .caption span::before{content:"("counter(counter_item)") "}.project{counter-increment:counter_item}@media (min-width:40em){.project-link{border-radius:var(--radius-medium);margin:1.6rem 0;padding:2.4rem}.project-link:hover{background:var(--blue-a);transition-duration:var(--transition-hover)}}.project-link{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center}.project:nth-child(odd) .project-link{-ms-flex-direction:row-reverse;flex-direction:row-reverse}.screenshot-wrapper{min-width:50%;max-width:50%;height:auto;margin:0 2.4rem 0 0;transition:transform var(--transition);transform:scale(.9)}.project:nth-child(odd) .screenshot-wrapper{margin:0 0 0 2.4rem}.project-link:hover .screenshot-wrapper{transform:scale(1);transition-duration:var(--transition-hover)}@media (min-width:40em){.screenshot-wrapper{position:absolute;z-index:1;width:19.2rem;height:14.4rem}.project:nth-child(odd) .screenshot-wrapper{margin:0}}.screenshot{width:100%;height:auto;border-radius:var(--radius-small);box-shadow:0 .8rem 2.4rem var(--black-a)}@media (min-width:40em){.screenshot{display:block;width:100%;height:auto;transition:box-shadow var(--transition)}}.project-link:hover .screenshot{box-shadow:0 .8rem 4.8rem var(--gray)}.g-dark .project-link:hover .screenshot{box-shadow:0 .8rem 4.8rem var(--sky-100)}@media (min-width:40em){.line{position:absolute;content:"";width:16rem;height:.1rem;background:var(--text-color);opacity:.25;pointer-events:none;top:50%;transition:opacity var(--transition)}.project-link:hover .line{opacity:1}}.project:nth-child(odd) .line{right:calc(100% + .8rem);transform-origin:center right}@media (min-width:40em){.project:nth-child(odd) .screenshot-wrapper{right:calc(100% + 4rem)}}@media (min-width:60em){.project:nth-child(odd) .screenshot-wrapper{right:calc(100% + 8rem)}}.project:nth-child(odd) .screenshot-wrapper .screenshot{transform:rotate(5deg)}@media (min-width:40em){.project:first-child .line{transform:rotate(6deg)}.project:first-child .screenshot-wrapper{top:-40%}.project:first-child .screenshot-wrapper .screenshot{transform:rotate(4deg)}.project:nth-child(3) .line{transform:rotate(14deg)}.project:nth-child(3) .screenshot-wrapper{top:-45%}.project:nth-child(3) .screenshot-wrapper .screenshot{transform:rotate(-2deg)}.project:nth-child(5) .line{transform:rotate(-5deg)}.project:nth-child(5) .screenshot-wrapper{top:-35%}.project:nth-child(5) .screenshot-wrapper .screenshot{transform:rotate(8deg)}.project:nth-child(7) .line{transform:rotate(5deg)}.project:nth-child(7) .screenshot-wrapper{top:-20%}.project:nth-child(7) .screenshot-wrapper .screenshot{transform:rotate(-8deg)}}.project:nth-child(2n) .line{left:calc(100% + .8rem);transform-origin:center left}@media (min-width:40em){.project:nth-child(2n) .screenshot-wrapper{left:calc(100% + 4rem)}}@media (min-width:60em){.project:nth-child(2n) .screenshot-wrapper{left:calc(100% + 8rem)}}.project:nth-child(2n) .screenshot-wrapper .screenshot{transform:rotate(-5deg)}@media (min-width:40em){.project:nth-child(2n) .line{transform-origin:left center}.project:nth-child(2n) .screenshot img{transform:rotate(-5deg)}.project:nth-child(2) .line{transform:rotate(-25deg)}.project:nth-child(2) .screenshot-wrapper{top:-80%}.project:nth-child(2) .screenshot-wrapper .screenshot{transform:rotate(-8deg)}.project:nth-child(4) .line{transform:rotate(-25deg)}.project:nth-child(4) .screenshot-wrapper{top:-60%}.project:nth-child(4) .screenshot-wrapper .screenshot{transform:rotate(2deg)}.project:nth-child(6) .line{transform:rotate(-18deg)}.project:nth-child(6) .screenshot-wrapper{top:-70%}.project:nth-child(6) .screenshot-wrapper .screenshot{transform:rotate(8deg)}}.footer-wrapper{font-size:smaller;text-align:center}.copyright{cursor:default;margin:0 0 2.4rem}.love-heart{font-size:1.8rem;color:#ea4335;vertical-align:middle}.dark-toggle{margin-top:1rem;cursor:pointer;background:var(--toggle-background);transition:opacity var(--transition),background var(--transition)}.dark-toggle strong{color:var(--blue)}.footer-wrapper:hover .dark-toggle{box-shadow:0 .8rem 1.6rem var(--black-a);color:var(--offwhite);opacity:1;background:var(--sky-100)}.g-dark .footer-wrapper:hover .dark-toggle{color:var(--black);background:var(--offwhite)}.progress-wrap{position:fixed;right:50px;bottom:50px;height:46px;width:46px;cursor:pointer;display:block;border-radius:50px;box-shadow:inset 0 0 0 2px rgba(0,0,0,.2);z-index:10000;opacity:0;visibility:hidden;transform:translateY(15px);-webkit-transition:all 200ms linear;transition:all 200ms linear}@media (min-width:60em){.progress-wrap.active-progress{font-family:Arial,sans-serif;opacity:1;visibility:visible;transform:translateY(0)}.progress-wrap svg.progress-circle path,.progress-wrap::after{-webkit-transition:all 200ms linear;transition:all 200ms linear}.progress-wrap::after,.progress-wrap::before{position:absolute;content:'\21EA';text-align:center;line-height:46px;font-size:24px;left:0;top:0;height:46px;width:46px;cursor:pointer;display:block}.progress-wrap::after{color:var(--black-blue);z-index:1}.progress-wrap:hover::after{opacity:0}.progress-wrap::before{opacity:0;z-index:2;-webkit-transition:all 200ms linear;transition:all 200ms linear}.progress-wrap:hover::before{opacity:1;color:#ea4335}.progress-wrap svg path{fill:none}.progress-wrap svg.progress-circle path{stroke:var(--black-blue);stroke-width:4;box-sizing:border-box}html.g-dark .progress-wrap{box-shadow:inset 0 0 0 2px rgba(255,255,255,.2)}html.g-dark .progress-wrap::after{color:var(--grey)}html.g-dark .progress-wrap svg.progress-circle path{stroke:var(--grey)}}.dark-toggle:focus{outline:0}.stars,.stars-wrapper{height:0;position:absolute;top:0;left:0;right:0;bottom:0;overflow:hidden}.g-dark .stars,.g-dark .stars-wrapper{height:100%}.stars-wrapper{background:var(--background-gradient);z-index:-2;transition:all 600ms ease-in-out}.g-dark .stars{animation:a var(--duration) ease-in-out infinite}.stars:nth-child(2){animation-delay:calc(var(--duration)*-.33)}.stars:nth-child(3){animation-delay:calc(var(--duration)*-.66)}.star{fill:#fff}.star:nth-child(3n){opacity:.8}.star:nth-child(7n){opacity:.6}.star:nth-child(13n){opacity:.4}.star:nth-child(19n){opacity:.2}.comet{position:absolute;left:calc(50% - 7.5rem)}.g-dark .comet{animation:10s linear infinite both}.comet.comet-a{top:50vh;animation-name:b;animation-delay:1s}.comet.comet-b{top:50%;animation-name:c;animation-delay:6.6s}.comet.comet-c{top:calc(100% - 50vh);animation-name:d;animation-delay:7.6s}#taboola-below-article-thumbnails-2x1,#tr_slot468x2x2,.vli_slot{margin:0 auto;width:80%;max-width:800px;min-width:320px}.vli_slot{max-width:970px;display:none}@media screen and (max-width:60em){.vli_slot.w336{display:block}}@media (min-width:60em){.vli_slot.w970{display:block}}@media (max-width:40em){#taboola-below-article-thumbnails-2x1,#tr_slot468x2x2,.vli_slot{width:100%}}#rbox-t2m{border-radius:0!important;box-shadow:none!important}.trc_rbox_outer{padding-inline:4px!important}.trc_elastic_thumbnails-2x1.tr_2nd .videoCube,.trc_elastic_thumbnails-rr.tr_2nd .videoCube{width:39.5%!important}.trc_elastic_thumbnails-2x1.tr_2nd .videoCube:not(:first-child),.trc_elastic_thumbnails-rr.tr_2nd .videoCube:not(:first-child){float:right!important}