@charset "UTF-8";@import url("https://fonts.googleapis.com/css?family=Noto+Sans+JP&display=swap");body{font-family:"Noto Sans Japanese","ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","メイリオ",Meiryo,Osaka,"ＭＳ Ｐゴシック","MS PGothic",sans-serif;font-size:62.5%;background:#efefef;color:#333}body *{box-sizing:border-box}ol,ul,li,dl,dt,dd{margin:0;padding:0;list-style:none}button{font-family:"Noto Sans Japanese","ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","メイリオ",Meiryo,Osaka,"ＭＳ Ｐゴシック","MS PGothic",sans-serif}@keyframes glitch{0{transform:translate(0);opacity:0}90%{transform:translate(0);opacity:0}92%{transform:translate(-3px,3px);opacity:1}94%{transform:translate(-3px,-3px);opacity:1}96%{transform:translate(3px,3px);opacity:1}98%{transform:translate(3px,-3px);opacity:1}100%{transform:translate(0);opacity:0}}@keyframes glitch_font{0{transform:translate(0);opacity:0}90%{transform:translate(0);opacity:0}92%{transform:translate(-1px,1px);opacity:1}94%{transform:translate(-1px,-1px);opacity:1}96%{transform:translate(1px,1px);opacity:1}98%{transform:translate(1px,-1px);opacity:1}100%{transform:translate(0);opacity:0}}@keyframes arrow{0{transform:translate(0,0);opacity:1}100%{transform:translate(0,10px);opacity:0}}.glitch{position:relative;display:block}.glitch__base{position:relative;z-index:2}.glitch__base svg{fill:#333}.glitch__item{position:absolute;z-index:-1;top:0;display:block;width:100%;height:100%;opacity:.8;transform-origin:center center}.glitch__item--r{color:red;animation:glitch 1500ms cubic-bezier(0.25,0.46,0.45,0.94) infinite}.glitch__item--r svg{fill:red}.glitch__item--b{color:#00f;animation:glitch 1500ms cubic-bezier(0.25,0.46,0.45,0.94) infinite reverse}.glitch__item--b svg{fill:blue}.glitch__item--g{color:#00ff0b;animation:glitch 1500ms cubic-bezier(0.25,0.46,0.45,0.94) 60ms infinite}.glitch__item--g svg{fill:#00ff0b}.glitch.font .glitch__item--r{animation:glitch_font 1500ms cubic-bezier(0.25,0.46,0.45,0.94) infinite}.glitch.font .glitch__item--b{animation:glitch_font 1500ms cubic-bezier(0.25,0.46,0.45,0.94) infinite reverse}.glitch.font .glitch__item--g{animation:glitch_font 1500ms cubic-bezier(0.25,0.46,0.45,0.94) 60ms infinite}#wrap{position:relative;z-index:2;margin:0 auto;width:100%;text-align:center}#kv{position:relative;display:flex;flex-direction:column;justify-content:center;align-items:center;width:100%;height:100vh}#kv #title{position:relative;width:90%}#kv #title .base__logo svg{fill:#333}@media screen and (max-width:751px){#kv #title .base__logo svg{max-width:100%}}#kv #title .glitch__logo{position:absolute;z-index:-1;top:0;display:block;width:100%;height:100%;opacity:.8;transform-origin:center center}#kv #title .glitch__logo--r{animation:glitch 1500ms cubic-bezier(0.25,0.46,0.45,0.94) infinite}#kv #title .glitch__logo--r svg{fill:red}#kv #title .glitch__logo--b{animation:glitch 1500ms cubic-bezier(0.25,0.46,0.45,0.94) infinite reverse}#kv #title .glitch__logo--b svg{fill:blue}#kv #title .glitch__logo--g{animation:glitch 1500ms cubic-bezier(0.25,0.46,0.45,0.94) 60ms infinite}#kv #title .glitch__logo--g svg{fill:#00ff0b}#kv .scroll{position:absolute;bottom:30px;font-size:16px;line-height:1}#kv .scroll .glitch{margin:10px 0 0;animation:arrow 1s ease-out infinite}#navi{position:fixed;top:0;right:0;z-index:100;width:100%}#navi dl dt{position:absolute;z-index:110;top:20px;right:5%}#navi dl dt input{position:absolute;opacity:0}#navi dl dt input:checked+label span{background:#fff}#navi dl dt input:checked+label span:nth-child(1){transform:translateY(10px) rotate(405deg)}#navi dl dt input:checked+label span:nth-child(2){left:50%;width:0}#navi dl dt input:checked+label span:nth-child(3){transform:translateY(-10px) rotate(-405deg)}#navi dl dt label{position:relative;display:block;width:35px;height:35px;cursor:pointer}#navi dl dt label span{position:absolute;display:block;width:35px;height:5px;background:#333;transition:all .25s cubic-bezier(0.21,0.51,0.51,1)}#navi dl dt label span:nth-child(1){top:5px;left:0}#navi dl dt label span:nth-child(2){top:15px;left:0}#navi dl dt label span:nth-child(3){top:25px;left:0}#navi dl dd{position:absolute;top:0;right:0;width:30%;height:100vh;padding:80px 5% 0;background:rgba(0,0,0,0.7);font-size:4em;line-height:2;text-align:right;font-weight:700;opacity:0;transform:translateX(100%);transition:all .25s cubic-bezier(0.21,0.51,0.51,1)}#navi dl dd.show{opacity:1;transform:translateX(0)}#navi dl dd a{position:relative;display:inline-block;color:#fff;text-decoration:none}#navi dl dd a span{background:linear-gradient(currentColor,currentColor) left bottom/100% 1px no-repeat;transition:all .25s cubic-bezier(0.21,0.51,0.51,1);pointer-events:none}#navi dl dd a:hover span{background:linear-gradient(currentColor,currentColor) left bottom/0 1px no-repeat}.column{display:flex;flex-direction:column;justify-content:center;min-height:75vh}.column .inner{margin:0 auto;width:85%;text-align:left}.column .inner h2{margin:0;padding:0 0 30px;font-size:5em;line-height:1.5;font-weight:700}.column .inner h3{margin:0;padding:0;font-size:2.4em;line-height:1.5;font-weight:500}.column .inner ul{margin:0 0 20px}.column .inner ul li{margin:0;padding:0;font-size:2em;line-height:1.6}.column .inner p{margin:0;padding:0;font-size:2em;line-height:1.5}.column .inner a{position:relative;display:inline-block;color:#666;text-decoration:none}.column .inner a span{background:linear-gradient(currentColor,currentColor) left bottom/100% 1px no-repeat;transition:all .25s cubic-bezier(0.21,0.51,0.51,1)}.column .inner a:hover{color:#999}.column .inner a:hover span{background:linear-gradient(currentColor,currentColor) left bottom/0 1px no-repeat}#about h3 span{display:block}#about ul{margin:30px 0 0}#about p+p{padding:0 0 60px}#about p{padding:30px 0 10px;font-size:2em;line-height:1.6;text-align:left}#works h3{margin:0;padding:60px 0 0;font-size:2.4em;line-height:1.5;font-weight:500}#works ul{margin:30px 0 0}#works ul li{margin:0;padding:10px 0 .5em;font-size:2em;line-height:1.6}#works #more-works{opacity:0;overflow:hidden;-webkit-transition:opacity .3s ease-out;-moz-transition:opacity .3s ease-out;-o-transition:opacity .3s ease-out;-ms-transition:opacity .3s ease-out;transition:opacity .3s ease-out}#works #more-works.off{height:0}#works #more-works.on{opacity:1}#works #button-works{display:inline-block;color:#666;text-decoration:underline;cursor:pointer;opacity:1;-webkit-transition:opacity .3s ease-out;-moz-transition:opacity .3s ease-out;-o-transition:opacity .3s ease-out;-ms-transition:opacity .3s ease-out;transition:opacity .3s ease-out}#works #button-works.off{opacity:0}#works #button-works.none{display:none}#works #button-works:hover{color:#999;text-decoration:none}#lectures ul li{margin:0;padding:10px 0 .5em;font-size:2em;line-height:1.5;text-align:justify}#lectures ul li:first-child{padding-top:0}#blog ul li{margin:0;padding:10px 0 .5em;font-size:2em;line-height:1.5;text-align:justify}#blog ul li:first-child{padding-top:0}#blog ul li:last-child{text-align:right}#blog ul li.loading{padding-top:20px;font-size:2em;line-height:1.5;text-align:center}#contact{position:relative}#contact .inner{position:relative}#contact .inner>div{position:relative}#contact h2{padding:200px 0 0}#contact ul{margin:0;transform-origin:center bottom;transform:translate(0,0);-webkit-transition:all .5s ease-out;-moz-transition:all .5s ease-out;-o-transition:all .5s ease-out;-ms-transition:all .5s ease-out;transition:all .5s ease-out}#contact ul.sending{transform:translate(0,50px);opacity:0}#contact li{position:relative;margin:1.5em auto 0}#contact li .placeholder{position:absolute;top:0;left:0;z-index:0;width:100%;color:#ccc;text-align:left;-webkit-transition:all .3s ease-out;-moz-transition:all .3s ease-out;-o-transition:all .3s ease-out;-ms-transition:all .3s ease-out;transition:all .3s ease-out}#contact li .caution{padding:0;font-size:70%;color:#f08;opacity:0}#contact li .caution.none{display:none}#contact li .required{position:absolute;top:0;right:8%;z-index:0;color:#999;-webkit-transition:all .5s ease-out;-moz-transition:all .5s ease-out;-o-transition:all .5s ease-out;-ms-transition:all .5s ease-out;transition:all .5s ease-out}#contact li input,#contact li textarea{position:relative;z-index:1;padding:1% 2%;width:100%;border:1px solid #ccc;background-color:transparent;font-size:100%;color:#333;outline:0}#contact li input:focus,#contact li textarea:focus{border:1px solid #0af}#contact li input:focus+.placeholder,#contact li textarea:focus+.placeholder,#contact li input.has_val+.placeholder,#contact li textarea.has_val+.placeholder{top:-1.5em;left:0;color:#333;font-size:80%}#contact li input:focus+.placeholder .caution,#contact li input.has_val+.placeholder .caution{opacity:1}#contact li input:focus ~ .required,#contact li textarea:focus ~ .required{color:#0af}#send_contact{position:relative;z-index:3;display:inline-block;padding:10px 0;border:0;outline:0;background:0;cursor:pointer;transition:all .3s ease-out}#send_contact span{display:inline-block;padding:7px 100px;border:1px solid #999;background:#efefef;color:#333;font-size:3em;line-height:1;transition:all .3s ease-out}#send_contact:hover{padding:10px 0}#send_contact:hover span{border:1px solid #0af;color:#0af}#send_contact.off,#send_contact.off:hover{padding:10px 0;cursor:auto}#send_contact.off span,#send_contact.off:hover span{padding:7px 100px;border:1px solid #ccc;color:#ccc}#send_contact.none{opacity:0}#contact .form_message{position:absolute;z-index:-1;top:0;left:0;width:100%;height:100%;padding:20px 20px;background:rgba(239,239,239,0.8);text-align:left;font-size:2.4em;line-height:1.5;opacity:0;transform:translate(0,-100px);transform-origin:center bottom;transition:all .5s ease-out;transition-delay:.5s}#contact .form_message.show{z-index:2;opacity:1;transform:translate(0,0)}#pagetop{position:fixed;z-index:10;right:5%;bottom:20px;opacity:0;transition:all .25s cubic-bezier(0.21,0.51,0.51,1)}#pagetop.show{opacity:1}#pagetop.show a{cursor:pointer}#pagetop a{display:inline-block;cursor:auto;transition:all .25s cubic-bezier(0.21,0.51,0.51,1)}#pagetop a svg{transform:rotate(180deg)}#pagetop a:hover{opacity:.7}footer .policy{margin:0 auto;padding:100px 0 0;font-size:1.5em;line-height:1.5}footer .policy a{position:relative;display:inline-block;color:#666;text-decoration:none}footer .policy a span{background:linear-gradient(currentColor,currentColor) left bottom/100% 1px no-repeat;transition:all .25s cubic-bezier(0.21,0.51,0.51,1)}footer .policy a:hover{color:#999}footer .policy a:hover span{background:linear-gradient(currentColor,currentColor) left bottom/0 1px no-repeat}footer address{margin:0 auto;padding:10px 0 10px;font-size:1.8em;line-height:1.5;text-align:center;font-style:normal}footer address span{font-size:150%;vertical-align:middle}