/*! normalize.css v3.0.3 | MIT License | github.com/necolas/normalize.css */html{font-family:sans-serif;text-size-adjust:100%}body{margin:0}article,aside,details,figcaption,figure,footer,header,hgroup,main,menu,nav,section,summary{display:block}audio,canvas,progress,video{display:inline-block;vertical-align:baseline}audio:not([controls]){display:none;height:0}[hidden],template{display:none}a{background-color:transparent}a:active,a:hover{outline:0}abbr[title]{border-bottom:1px dotted}b,strong{font-weight:bold}dfn{font-style:italic}h1{margin:.67em 0;font-size:2em}mark{color:#000000;background:#ffff00}small{font-size:80%}sub,sup{position:relative;font-size:75%;line-height:0;vertical-align:baseline}sup{top:-.5em}sub{bottom:-.25em}img{border:0}svg:not(:root){overflow:hidden}figure{margin:1em 40px}hr{box-sizing:content-box;height:0}pre{overflow:auto}code,kbd,pre,samp{font-family:monospace, monospace;font-size:1em}button,input,optgroup,select,textarea{margin:0;font:inherit;color:inherit}button{overflow:visible}button,select{text-transform:none}button,html input[type='button'],input[type='reset'],input[type='submit']{cursor:pointer;appearance:button}button[disabled],html input[disabled]{cursor:default}button::-moz-focus-inner,input::-moz-focus-inner{padding:0;border:0}input{line-height:normal}input[type='checkbox'],input[type='radio']{box-sizing:border-box;padding:0}input[type='number']::-webkit-inner-spin-button,input[type='number']::-webkit-outer-spin-button{height:auto}input[type='search']{box-sizing:content-box;appearance:textfield}input[type='search']::-webkit-search-cancel-button,input[type='search']::-webkit-search-decoration{appearance:none}fieldset{padding:.35em .625em .75em;margin:0 2px;border:1px solid #c0c0c0}legend{padding:0;border:0}textarea{overflow:auto}optgroup{font-weight:bold}table{border-collapse:collapse;border-spacing:0}td,th{padding:0}*{box-sizing:border-box}*:before,*:after{box-sizing:border-box}html{font-size:10px;-webkit-tap-highlight-color:transparent}body{font-family:"Source Serif Pro",serif;font-size:14px;line-height:1.42857;color:#333333;background-color:#ffffff}input,button,select,textarea{font-family:inherit;font-size:inherit;line-height:inherit}a{color:#1e68a8;text-decoration:none}a:hover,a:focus{color:#23527c;text-decoration:underline}a:focus{outline:thin dotted;outline:5px auto -webkit-focus-ring-color;outline-offset:-2px}figure{margin:0}img{vertical-align:middle}.img-responsive{display:block;height:auto;max-width:100%}.img-rounded{border-radius:6px}.img-thumbnail{display:inline-block;height:auto;max-width:100%;padding:4px;line-height:1.42857;background-color:#ffffff;border:1px solid #dddddd;border-radius:4px;transition:all .2s ease-in-out}.img-circle{border-radius:50%}hr{margin-top:20px;margin-bottom:20px;border:0;border-top:1px solid #eeeeee}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0, 0, 0, 0);border:0}.sr-only-focusable:active,.sr-only-focusable:focus{position:static;width:auto;height:auto;margin:0;overflow:visible;clip:auto}[role='button']{cursor:pointer}html,body{position:relative;overflow-x:hidden}body{padding:10rem 0 0;margin:0;font-size:1rem;color:#555;background:#f1ede3;transition:all .5s ease-in-out}@media (min-width: 450px){body{padding:0}}img{max-width:100%}ul{padding-bottom:0.5rem;padding-left:1.6rem}@media (min-width: 450px){ul{padding-left:4rem}}ul li{padding:0.4rem 0 0.4rem 2rem;margin-bottom:1rem;font-size:2rem;font-weight:500;line-height:3rem;border-left:0.4rem solid #dedede;list-style-type:none}ul li ul{margin-top:1.6rem}ul li:has(>ul){border-left:none}ol li{margin-bottom:1rem;font-weight:500}.content{padding:0 1.6rem;margin:0 auto;text-align:left}@media (min-width: 450px){.content{padding-top:5rem}}@media (min-width: 575px){.content{padding-top:0}}@media (min-width: 960px){.content{width:960px}}.skip-to-content{position:absolute;top:-10rem;left:1em;z-index:1000;padding:0.2rem 0.8rem}.skip-to-content:focus{position:absolute;top:1.3rem;color:white;text-decoration:none;background:#1e68a8;border-radius:0.5rem;outline-color:#378fdb}.night .skip-to-content:focus{color:black;background:#00d8ff;outline-color:#4de4ff}html{font-size:62.5%}body{font-family:"Source Serif Pro",serif;font-size:2rem;font-style:normal;font-weight:300;line-height:3rem;-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}h1,.h1{margin:3.2rem 0 .8rem;font-family:"Noto Serif JP",serif;font-size:4.8rem;font-weight:700;line-height:6rem;letter-spacing:-.1rem}h2,h3,h4,h5,h6,.h2,.h3,.h4,.h5,.h6{font-family:"Noto Serif JP",serif;font-weight:700}h2,.h2{margin:3.2rem 0 2.4rem;font-size:3.6rem;font-weight:800;line-height:4.9rem;letter-spacing:-.1rem}h3,.h3{margin:2.4rem 0 2rem;font-size:3rem;line-height:4.5rem;letter-spacing:-.05rem}h4,.h4{margin:2rem 0 1.6rem;font-size:2.4rem;line-height:3.6rem;letter-spacing:-.035rem}h5,.h5{margin:2rem 0 1.6rem;font-size:2rem;line-height:3rem;letter-spacing:-.035rem}h6,.h6{margin:2rem 0 1.6rem;font-size:1.8rem;line-height:2.7rem;letter-spacing:-.035rem}p{margin:0 0 2rem;font-size:2rem;line-height:3rem}strong,.substrong{font-weight:800}em{font-style:italic;font-weight:400}blockquote{position:relative;padding-left:7.2rem;margin:4rem 0;font-style:italic}blockquote:before{position:absolute;top:3.1rem;left:0;font-size:10.5rem;font-style:normal;font-weight:800;color:currentColor;content:'“'}blockquote cite{display:block;padding:0.4rem 0 0.4rem 2rem;margin-top:.8rem;font-style:italic;color:currentColor;border-left:0.4rem solid #dedede}code{padding:0.2rem;background-color:#e0d7c1}pre.highlight{background-color:#e0d7c1}pre code{display:block;padding:1rem}.emoji{font-size:4rem}.night code{background-color:#1a2a4c}nav{display:flex;flex-direction:column;flex-wrap:wrap;justify-content:space-between;margin:2.4rem 0 8rem}@media (min-width: 960px){nav{flex-direction:row}}nav>ul{padding:0;margin:0}@media (min-width: 960px){nav>ul{width:50%}}nav>ul li{padding:0;margin-bottom:0.4rem;border-left:0;list-style-type:none}.home-link{color:#555}.home-link:hover,.home-link:focus{color:#555}.back-link{position:absolute;top:0rem;left:1.6rem;font-size:4rem;color:currentColor}.back-link:hover,.back-link:focus{color:currentColor;text-decoration:none}@media (min-width: 450px){.back-link{top:1.6rem;left:1rem}}@media (min-width: 700px){.back-link{position:static;top:auto;left:auto}}.section{margin-bottom:6.4rem}.role{margin-bottom:4.8rem}.project,.post{padding-left:1.6rem;margin-top:3.2rem;border-left:0.4rem solid #dedede;transition:border-color 0.3s linear}@media (min-width: 450px){.project,.post{padding-left:3.2rem}}.project:hover,.post:hover{border-color:#23527c}.info,.panel{padding:1.5rem;background-color:#ece6d9;border-radius:0.5rem}.info{border:0.1rem solid #555}.info p{margin-bottom:0}.info ul:last-of-type{margin-bottom:0}@media (min-width: 700px){.panel{margin:5rem 0}}.panel p{text-align:center}.night .home-link{color:#00d8ff}.night .home-link:hover,.night .home-link:focus{color:#00d8ff;text-decoration:underline}.night .back-link{color:#e9e5d5}.night .back-link:hover,.night .back-link:focus{color:#e9e5d5;text-decoration:underline}.night .project:hover,.night .post:hover{border-color:#00d8ff}.night .info,.night .panel{background-color:#090f1b;border-color:#00d8ff}.button{font-size:2rem;font-weight:400;letter-spacing:0;color:white;background-color:#1e68a8;border:0.1rem solid #1e68a8;border-radius:.3rem;padding:1.5rem 2rem}.button:hover,.button:focus{color:white;text-decoration:none;background-color:#2275be}.banner{padding:5rem 0;margin-bottom:4rem;text-align:center}@media (min-width: 450px){.banner{padding:12rem 6rem 6rem}}@media (min-width: 700px){.banner{width:80%;padding:20rem 0 4rem;margin:0 auto 4rem}}@media (min-width: 960px){.banner{width:60%;padding:16rem 0 4rem}}@media (min-width: 1100px){.banner{padding:12rem 0}}.banner h1{margin-bottom:3.2rem}.banner p{margin-bottom:6rem}@media (min-width: 960px){.accordion__item{width:80%}}.accordion__item svg{width:100%}.accordion__title{display:flex;align-items:center;justify-content:space-between;color:#555}.accordion__title:hover,.accordion__title:focus{text-decoration:none}.accordion__title h3{z-index:-1;padding-right:1.5rem}.accordion__icon{display:flex;align-items:center;flex:0 0 4.5rem;width:4.5rem;z-index:-1;transition:.3s ease-in-out}.accordion__icon--active{transform:rotate(-180deg)}.accordion__content{display:none}.accordion__content--active{display:block}.logos{display:flex;align-items:center;justify-content:center;flex-direction:column-reverse;flex-wrap:wrap}@media (min-width: 450px){.logos{justify-content:space-evenly;flex-direction:row;flex-wrap:nowrap}}.logos svg{width:50%;margin:0 2rem}@media (min-width: 450px){.logos svg{width:20%}}.logos svg path,.logos svg polygon{fill:#555}.logos svg:nth-child(1){width:35%;margin-top:1rem}.logos svg:nth-child(2){width:30%}@media (min-width: 450px){.logos svg:nth-child(1){width:13%;margin-top:0}.logos svg:nth-child(2){width:10%;margin-right:0}.logos svg:nth-child(3){width:16%}}.night .accordion__icon svg path{fill:#00d8ff}.night .button{color:white}.night .logos svg path,.night .logos svg polygon{fill:#e9e5d5}.day-night-switcher{position:absolute;top:-4.8rem;right:-4rem;width:15rem;height:15rem;padding:0;margin:0 auto 1rem;overflow:hidden;text-align:center;background:linear-gradient(to bottom, #be4405, #f6c60c);border:0.45rem solid #555;border-radius:50%;box-shadow:0 0 2rem rgba(0,0,0,0.4);transition:all 1.1s ease-in-out, width height top right .3s ease-in-out;-webkit-mask-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAIAAACQd1PeAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAA5JREFUeNpiYGBgAAgwAAAEAAGbA+oJAAAAAElFTkSuQmCC)}.day-night-switcher:hover{cursor:pointer}@media (min-width: 450px){.day-night-switcher{top:-3.8rem;right:-3rem;width:18rem;height:18rem}}@media (min-width: 700px){.day-night-switcher{top:-7.2rem;right:-5.2rem;width:30rem;height:30rem}}.sun{position:relative;top:48%;left:35%;width:30%;height:30%;margin-top:20px;background:#f2ef88;border-radius:50%;box-shadow:0 0 20px rgba(242,239,136,0.4);animation:pulse 5s ease infinite alternate;transition:all 1.1s .4s ease}.moon{position:relative;top:-50%;left:120%;width:22.5%;height:22.5%;margin-top:-5%;margin-left:-5%;overflow:hidden;background:#d9d8d0;border-radius:100%;box-shadow:inset 1rem .2rem 0 0 #899098;transition:all 1.1s 0s ease}.moon div:nth-child(n){position:relative;background:#b9b8b0;border-radius:50%;box-shadow:inset .4rem -.2rem 0 0 #535457}.moon div:nth-child(1){top:25%;left:12%;width:27%;height:27%}.moon div:nth-child(2){top:-11%;left:60%;width:16%;height:16%}.moon div:nth-child(3){top:25%;left:44%;width:16%;height:16%}.stars{top:0;left:0;z-index:1000;opacity:0;transition:all .8s 0s ease}.stars div:nth-child(n){position:absolute;width:.8%;height:.8%;margin-top:-20%;margin-left:20%;overflow:hidden;background:radial-gradient(#fff, rgba(255,255,255,0));border-radius:50%;box-shadow:0 0 1rem #fff;transition:all 1s 0s ease}.stars div:nth-child(1){top:30%;left:25%}.stars div:nth-child(2){top:20%;left:55%}.stars div:nth-child(3){top:60%;left:60%}.stars div:nth-child(4){top:45%;left:40%}.stars div:nth-child(5){top:55%;left:15%}.stars div:nth-child(6){top:10%;left:40%}.stars div:nth-child(7){top:55%;left:80%}.water{position:absolute;top:68%;width:100%;height:200px;background:repeating-radial-gradient(ellipse farthest-corner at center -400%, #f5c30e 30%, #518eac 90%) repeat scroll 0 0 #518eac;transition:all 1.1s ease}.night{color:#e9e5d5;background:#0d1526}.night a{color:#00d8ff}.night .project{border-color:#00d8ff}.night .moon{top:-10%;left:65%;transition:all 1.1s .4s ease}.night .stars{opacity:1;transition:all 3s .4s ease}.night .stars div:nth-child(n){margin-top:0;margin-left:0;transition:all 1s .4s ease-out}.night .sun{top:70%;left:20%;transition:all 1.1s 0s ease}.night .day-night-switcher{background:linear-gradient(to bottom, #111936, #285a7b);border-color:#e9e5d5}.night .water{background:repeating-radial-gradient(ellipse farthest-corner at center -400%, #7fa1bb 30%, #1d425a 90%) repeat scroll 0 0 #1d425a}@keyframes pulse{0%{box-shadow:0 0 20px rgba(242,239,136,0.4)}50%{box-shadow:0 0 40px #f2ef88}100%{box-shadow:0 0 20px rgba(242,239,136,0.4)}}.posts{display:flex;justify-content:space-between;flex-wrap:wrap;margin-bottom:6rem}.posts .post h3{margin-bottom:0.8rem}.post{flex-basis:100%}.post__content{padding:0.1rem;padding-left:0;margin-bottom:8rem;border:none}@media (min-width: 700px){.post__content{padding-left:3.2rem;border-left:0.4rem solid #dedede}}.post__content:hover{border-color:#dedede}.post__reading-time{margin:0 0 2.4rem;font-size:98%;font-weight:600}@media (max-width: 450px){.blog-entry h1{margin-top:0}}@media (min-width: 700px){.blog-entry img{max-width:80.5%}}.blog-entry img.full{max-width:100%}@media (min-width: 700px){.blog-entry img.portrait{max-width:40%}}@media (min-width: 700px){.blog-entry img.thin{max-width:20%}}.blog-entry .content{position:relative;padding-top:2rem;padding-bottom:8rem}@media (min-width: 450px){.blog-entry .content{padding-top:12rem}}@media (min-width: 700px){.blog-entry .day-night-switcher{top:-3.8rem;right:-3rem;width:18rem;height:18rem}}.blog-entry .post__reading-time{margin:1.6rem 0 4.8rem;font-weight:400}@media (min-width: 700px){.blog-entry .tags{display:inline}.blog-entry .tags:before{content:"/"}}@media (min-width: 700px){.blog-entry .tags .tag:first-child{margin-left:0.2rem}}.pagination{margin-bottom:1.6rem}.rss{margin-bottom:4rem}blockquote.question,blockquote.answer{display:flex;align-items:center;padding-left:0;margin:3.2rem 0 2.4rem}blockquote.question p,blockquote.answer p{font-size:2.2rem;line-height:3.3rem}blockquote.question p:before,blockquote.question p:after,blockquote.answer p:before,blockquote.answer p:after{font-size:3rem}blockquote.question p:before,blockquote.answer p:before{margin-right:0.4rem;content:open-quote}blockquote.question p:after,blockquote.answer p:after{margin-left:0.4rem;content:close-quote}blockquote.question:before,blockquote.answer:after{position:static;top:0;flex-basis:6rem;display:inline-block;width:6rem;min-width:6rem;height:12rem;content:"";-webkit-mask:url(../img/person.svg) no-repeat 50% 50%;mask:url(../img/person.svg) no-repeat 50% 50%;-webkit-mask-size:cover;mask-size:cover;background-color:#555}blockquote.question:before{margin-right:2rem}blockquote.answer:before{position:static;content:none}blockquote.answer:after{margin-left:2rem;transform:scaleX(-1)}.tags{display:block;margin-top:3.2rem}.tags:before{content:none}.tag{display:inline-block;padding:0.2rem 0.8rem;margin-right:0.4rem;margin-bottom:0.4rem;font-size:1.8rem;line-height:2.7rem;background-color:#1e68a8;border-radius:0.2rem;transition:all 0.2s ease-in;color:#fff}.tag:hover,.tag:focus{color:#fff;text-decoration:none}.tag:hover,.tag:focus{background-color:#1a5b92}.tag--popular{color:#000;background-color:#d7be69}.tag--popular:hover,.tag--popular:focus{color:#000;text-decoration:none}.tag--popular:hover,.tag--popular:focus{background-color:#d2b555}.progress{position:fixed;top:auto;right:0;bottom:0.5rem;left:auto;height:4rem;width:4rem;padding-top:0.5rem;background:#f1ede3;transition:background 0.5s ease-in-out}@media (min-width: 700px){.progress{top:0;right:auto;bottom:auto;left:0}}.progress__circle path{fill:none;stroke:#1e68a8;stroke-width:4}.progress__circle.complete path{fill:#1e68a8}.progress__circle.complete+svg{opacity:1}.progress__complete{position:absolute;top:50%;left:50%;width:2rem;height:2rem;margin-top:-0.7rem;margin-left:-1.2rem;opacity:0}.progress__complete path{stroke:#f1ede3}.night blockquote.question:before,.night blockquote.answer:after{background-color:#e9e5d5}.night .tag{color:black;background-color:#00d8ff}.night .tag:hover,.night .tag:focus{background-color:#00c2e6}.night .tag--popular{background-color:#d7be69}.night .tag--popular:hover,.night .tag--popular:focus{background-color:#d2b555}.night .progress{background:#0d1526}.night .progress .progress__circle path{stroke:#00d8ff}.night .progress .progress__circle.complete path{fill:#00d8ff}.night .progress .progress__complete path{stroke:#0d1526}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0, 0, 0, 0);border:0}.mt-0{margin-top:0 !important}.mb-0{margin-bottom:0 !important}.mt-img{margin-top:4rem}.mt-img--bumper{margin-top:0.5rem}.mb-img{margin-bottom:4rem}.mb-img--bumper{margin-bottom:0.5rem}.half{display:flex;align-items:center;justify-content:space-between;flex-direction:column}@media (min-width: 700px){.half{flex-direction:row}}.half__item{width:100%}@media (min-width: 700px){.half__item{width:46%}}
