@charset "utf-8";*,*:before,*:after{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;-webkit-text-size-adjust:100%;-webkit-font-smoothing:antialiased;padding:0;margin:0}
html{font-size:62.5%}body{line-height:1.2;font-size:1.4rem;font-family:"Helvetica Neue",Helvetica,Arial,"NotoSansCJKjp-Regular-Subset","游ゴシック",YuGothic,"ヒラギノ角ゴ ProN W3","Hiragino Kaku Gothic ProN","メイリオ",Meiryo,sans-serif;color:#000}
a{color:#000;text-decoration:underline;-webkit-transition:all .35s;transition:all .35s;-webkit-tap-highlight-color:rgba(0,0,0,0)}figure{margin:0 auto}
img{width:100%;height:auto;vertical-align:middle}.l_wrapper{position:relative}.l_container{position:relative;width:100%;margin:0 auto;padding:0 7.5%}.l_container:after{content:"";clear:both;display:block}
.is_align-center{text-align:center}@media screen and (min-width:768px){.l_container{max-width:1056px;padding:0 48px}}.l_row{zoom:1}.l_row:before,.l_row:after{content:" ";display:table}
.l_row:after{clear:both}[class*="l_grid-"]{float:left;display:block;width:100%;margin:0 0 24px}[class*="l_grid-"]:last-child{margin:0}
@media screen and (min-width:768px){[class*="l_grid-"]{margin:0 2% 48px 0}.l_grid-3{width:23.5%}.l_grid-4{width:32.0%}.l_grid-6{width:49%}
.l_grid-3:nth-child(4n),.l_grid-4:nth-child(3n),.l_grid-6:nth-child(2n){margin:0 0 48px 0}}.l_clearfix:after{content:"";clear:both;display:block}
.l_header{margin:24px auto 48px}.l_header .m_logo{width:100%;margin:0;line-height:1}.l_header .m_logo a{display:block;width:100%}.m_title{margin:11px 0 0;font-family:"Abel","Helvetica Neue",Helvetica,Arial,sans-serif;color:#999}
.l_navigation{margin:47px 0 0;width:100%}.m_nav-list{list-style:none;text-align:center;font-family:"Abel","Helvetica Neue",Helvetica,Arial,sans-serif}
.m_nav-list-item{letter-spacing:.1em}.m_nav-list-item+.m_nav-list-item{margin:11px 0 0}@media screen and (min-width:768px){.l_header{margin:48px auto 96px}
.l_logo{float:left;width:43.75%;max-width:420px}.l_header .m_logo{width:420px;height:30px}.m_title{margin:10px 0 0;font-size:1.6rem}.l_navigation{float:right;width:56.25%;max-width:540px;height:30px;margin:0;background-color:transparent}
.m_nav-list{height:30px;text-align:right;font-size:0}.m_nav-list-item{display:inline-block;line-height:30px;font-size:1.8rem}.m_nav-list-item+.m_nav-list-item{margin:0 0 0 40px}
.m_nav-list-item a{text-decoration:none}.m_nav-list-item a:hover{opacity:.5}}.l_section{width:100%;margin:48px auto 0}.l_section:first-child{margin:0 auto}
.l_section-header{margin:0 auto 48px}.m_section-header-bar{position:relative;width:100%;height:12px;-webkit-animation:header-bar 15s ease infinite;-moz-animation:header-bar 15s ease infinite;animation:header-bar 15s ease infinite}
@-webkit-keyframes header-bar{0%{background-position:0 50%}50%{background-position:100% 50%}100%{background-position:0 50%}}@-moz-keyframes header-bar{0%{background-position:0 50%}
50%{background-position:100% 50%}100%{background-position:0 50%}}@keyframes header-bar{0%{background-position:0 50%}50%{background-position:100% 50%}100%{background-position:0 50%}
}.m_section-header-bar:after{position:absolute;top:0;left:0;content:"";width:100%;height:100%;background:url(../img/stripe.png) repeat -6px 0;background-size:9px}
.m_section-header-bar.is_personal-works{background:linear-gradient(270deg,#aaeed9,#00a7f5);background-size:400% 400%}.m_section-header-bar.is_about{background:linear-gradient(270deg,#de6262,#ffb88c);background-size:400% 400%}
.m_section-header-bar.is_contact{background:linear-gradient(270deg,#1d976c,#93f9b9);background-size:400% 400%}.m_section-header-bar.is_404{background:linear-gradient(270deg,#1f1c2c,#928dab);background-size:400% 400%}
.m_section-title{margin:24px 0 0;line-height:1;letter-spacing:.1em;text-align:center;font-family:"Abel","Helvetica Neue",Helvetica,Arial,sans-serif;font-size:2.4rem;font-weight:normal}
@media screen and (min-width:768px){.l_section{margin:144px auto 0;padding:0}.l_section-header{margin:0 auto 96px}.m_section-header-bar{height:24px}.m_section-header-bar:after{background-size:17px}
.m_section-title{margin:48px 0 0;font-size:4rem}}.l_page-navigation{position:relative;margin:48px 0 0}.l_page-navigation .m_nav-list{text-align:center}
.l_page-navigation .m_nav-list-item{display:inline-block;top:0;margin:0}.m_nav-list-item.is_prev{position:absolute;left:50%;margin:0 0 0 -120px}.m_nav-list-item.is_next{position:absolute;right:50%;margin:0 -120px 0 0}
.l_page-navigation .m_nav-list-item a{text-decoration:none}.l_works-item+.l_works-item{margin:48px auto 0}.m_works-main-image{margin:0 auto}.m_works-screenshot{border:1px solid #eee}
.m_works-title{margin:14px 0;font-size:1.8rem;font-weight:normal}.m_works-detail{display:block;width:96px;height:24px;line-height:24px;border:1px solid #00a7f5;text-align:center;text-decoration:none;font-family:"Abel","Helvetica Neue",Helvetica,Arial,sans-serif;font-size:1.2rem;color:#00a7f5}
.m_works-detail:active{background-color:#00a7f5;color:#fff}.m_works-summary{margin:0 0 20px;line-height:1.6}.m_works-credit{font-size:1.2rem}.m_works-credit-title{color:#999}
.m_works-credit-content+.m_works-credit-title{margin:9px 0 0}.m_works-credit-content{margin:1px 0 0;word-break:break-all}.m_works-detail-image-list{margin:48px auto 0;list-style:none}
.m_works-detail-image-list-item+.m_works-detail-image-list-item{margin:12px 0 0}@media screen and (min-width:768px){.m_nav-list-item.is_prev{margin:0 0 0 -240px}
.m_nav-list-item.is_next{margin:0 -240px 0 0}.l_page-navigation+.l_section{margin:48px auto 0}.l_works-item+.l_works-item{margin:96px auto 0}.m_works-detail .m_works-screenshot{-webkit-transition:all .35s;transition:all .35s}
.m_works-main-image a{display:block}.m_works-main-image a:hover{opacity:.5}.m_works-title{margin:22px 0;font-size:2rem}.m_works-detail{font-size:1.4rem}
.m_works-detail:hover{background-color:#00a7f5;color:#fff}.m_works-credit-title{float:left;clear:both;width:80px;margin:0 0 11px}.m_works-credit-content+.m_works-credit-title{margin:0 0 11px}
.m_works-credit-content{margin:0 0 11px}.m_works-credit-content a:hover{color:#00a7f5}.m_works-detail-image-list{margin:96px auto 0}.m_works-detail-image-list-item+.m_works-detail-image-list-item{margin:24px 0 0}
}.l_about-image{width:58.823529412%;margin:0 auto}.l_about-text{margin:24px 0 0}.m_about-name{margin:0 0 20px;line-height:1;letter-spacing:.1em;font-size:2rem;font-weight:normal}
.m_about-en-name{display:inline-block;margin:0 0 0 12px;font-size:1.2rem;color:#999}.m_about-intro,.m_about-profile{line-height:1.6;margin:16px 0 0}@media screen and (min-width:768px){.l_about-image{float:left;width:240px}
.m_about-profile-image{width:100%}.l_about-text{margin:0 0 0 288px}.m_about-intro br{display:none}}.m_contact-btn{display:block;width:100%;height:32px;line-height:32px;border:1px solid #000;text-align:center;text-decoration:none;color:#000}
.m_contact-btn .icon-paper-plane-empty{margin:0 8px 0 0}@media screen and (min-width:768px){.m_contact-btn{width:240px;margin:0 auto}.m_contact-btn:hover{background-color:#000;color:#fff}
}.section_404 p{margin:1em 0;text-align:center}.m_page-top-btn{position:fixed;right:0;bottom:20px;width:40px;height:40px;line-height:40px;background:linear-gradient(270deg,#3498db,#2c3e50);background-size:400% 400%;text-align:center;font-size:2rem;color:#fff;-webkit-animation:page-top 15s ease infinite;-moz-animation:page-top 15s ease infinite;animation:page-top 15s ease infinite}
@-webkit-keyframes page-top{0%{background-position:0 50%}50%{background-position:100% 50%}100%{background-position:0 50%}}.m_copyright{margin:48px 0 24px;text-align:center;font-size:1.2rem}
@media screen and (min-width:768px){.m_page-top-btn{right:40px;bottom:40px;width:48px;height:48px;line-height:48px;font-size:2.4rem}.m_page-top-btn:hover{opacity:.5;cursor:pointer}
.m_copyright{margin:96px 0 48px}}