/*
 * Emerald is a simple blog theme built for Jekyll.
 */
/*- Base reset -*/
* {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box; }

html, body, h1, h2, h3, h4, h5, h6, p, ul, ol, li, img {
  margin: 0;
  padding: 0;
  border: 0; }

/*- Base color -*/
/*- Base settings -*/
html {
  background-color: #FDFDFD;
  font-size: 16px;
  line-height: 1.5;
  color: #333; }
  @media (min-width: 940px) {
    html {
      font-size: 18px; } }

/*- Link -*/
a {
  color: #00afec;
  text-decoration: none;
  font-weight: 700; }
  a:hover, a:focus {
    color: #009cd3; }

/*- Typography -*/
body {
  font-family: "Source Sans Pro", "source-han-sans-japanese", sans-serif;
  letter-spacing: -0.01em; }

/*- Typography for medium and small screen, based on 16px font-size -*/
p, ul, ol {
  font-size: 1em;
  /* 16px */
  line-height: 1.5em;
  /* 24px/16px */
  margin-bottom: 1.5em;
  /* 24px/16px */ }

h1 {
  font-size: 2.25em;
  /* 36px/16px */
  line-height: 1.3333em;
  /* 48px/36px */
  padding: 0.33335em 0;
  /* 12px/36px * 2 (Use padding instead of margin to maintain proximity with paragraph) */
  margin-bottom: 20px; }

h2 {
  font-size: 1.5em;
  /* 24px/16px */
  line-height: 1em;
  /* 24px/24px */
  padding: 1em 0 0 0;
  /* 12px/24px * 2, only top (Use padding instead of margin to maintain proximity with paragwithph) */
  margin-bottom: 20px; }

h3, h4, h5, h6 {
  font-size: 1.125em;
  /* 18px/16px */
  line-height: 1.3334em;
  /* 24px/18px */
  padding: 0.66667em 0;
  /* 12px/18px * 2 (Use padding instead of margin to maintain proximity with paragraph) */ }

blockquote {
  font-style: italic;
  margin: 1.5em;
  /* 24px/18px */
  -webkit-border-radius: 4px;
  -moz-border-radius: 4px;
  -ms-border-radius: 4px;
  border-radius: 4px;
  background-color: #f0f0f0;
  padding: 0 1.5em;
  /* 24px/18px */ }
  blockquote p, blockquote ul, blockquote ol {
    padding: 1.5em 0;
    /* 24px/18px */ }

/*- Typography for big screen, based on 18px font-size -*/
@media (min-width: 940px) {
  p, ul, ol {
    font-size: 1em;
    /* 18px */
    line-height: 1.3334em;
    /* 24px/18px */
    margin-bottom: 1.3334em;
    /* 24px/18px */ }

  h1 {
    font-size: 2.6667em;
    /* 48px/18px */
    line-height: 1em;
    /* 48px/48px */
    padding: 0.25em 0;
    /* 12px/48px * 2 (Use padding instead of margin to maintain proximity with paragraph) */ }

  h2 {
    font-size: 2em;
    /* 36px/18px */
    line-height: 1.3334em;
    /* 48px/36px */
    padding: 0.66667em 0 0 0;
    /* 12px/36px * 2, pnly top (Use padding instead of margin to maintain proximity with paragraph) */ }

  h3, h4, h5, h6 {
    font-size: 1.3334em;
    /* 24px/18px */
    line-height: 1em;
    /* 24px/24px */
    padding: 0.5em 0;
    /* 12px/24px * 2 (Use padding instead of margin to maintain proximity with paragraph) */ }

  blockquote {
    font-style: italic;
    margin: 1.3334em;
    /* 24px/18px */
    -webkit-border-radius: 4px;
    -moz-border-radius: 4px;
    -ms-border-radius: 4px;
    border-radius: 4px;
    background-color: #f0f0f0;
    padding: 0 1.33334em;
    /* 24px/18px */ }
    blockquote p, blockquote ul, blockquote ol {
      padding: 1.33334em 0;
      /* 24px/18px */ } }
/* -- General Layout -- */
#black {
  position: fixed;
  left: 0;
  top: 0;
  height: 100vh;
  width: 5vw;
  background-color: #333; }

/* Navigation */
#nav a.block, #nav-left a.block {
  display: block;
  padding: 0.33334em 10% 0.3334em 10%; }
  @media (min-width: 940px) {
    #nav a.block, #nav-left a.block {
      color: #FDFDFD;
      font-weight: 400;
      font-size: 0.9rem; }
      #nav a.block:hover, #nav-left a.block:hover {
        background-color: #07bfff; } }
#nav a:not(.block), #nav-left a:not(.block) {
  color: #333; }
  @media (min-width: 940px) {
    #nav a:not(.block), #nav-left a:not(.block) {
      color: #FDFDFD; } }
#nav div b, #nav-left div b {
  display: block;
  padding: 0.33334em 10% 0.3334em 10%; }
#nav .introduction img, #nav-left .introduction img {
  margin: 23px 10% 23px 50%;
  width: 60%;
  margin: 0;
  display: inline;
  opacity: 0.2; }
  #nav .introduction img.logo-black, #nav-left .introduction img.logo-black {
    display: inline; }
    @media (min-width: 940px) {
      #nav .introduction img.logo-black, #nav-left .introduction img.logo-black {
        display: none; } }
  #nav .introduction img.logo-white, #nav-left .introduction img.logo-white {
    display: none; }
    @media (min-width: 940px) {
      #nav .introduction img.logo-white, #nav-left .introduction img.logo-white {
        display: inline; } }
  @media (min-width: 940px) {
    #nav .introduction img, #nav-left .introduction img {
      opacity: 1.0;
      font-weight: 400; } }
#nav .center, #nav-left .center {
  text-align: center; }
#nav .small, #nav-left .small {
  font-size: 0.8rem; }
#nav span, #nav-left span {
  font-weight: 200; }

.divider {
  display: block;
  content: '';
  width: 40%;
  height: 1px;
  margin: 23px 50% 23px 10%;
  background-color: #999999; }
  @media (min-width: 940px) {
    .divider {
      margin: 23px 10% 23px 50%;
      background-color: #FDFDFD;
      font-weight: 400; } }

#nav {
  /*	//width: 14rem;
    //width: 10rem;
    width: 20%;
    position: fixed;
    background-color: $main-color;
    top: 0;
    bottom: 0;
    left: 80%;
    //right: -14rem;
    color: $background-color;
    //opacity: 0.95;
    -webkit-transition: all 0.3s ease-in;
       -moz-transition: all 0.3s ease-in;
        -ms-transition: all 0.3s ease-in;
            transition: all 0.3s ease-in;
    z-index: 1;
    padding: 72px 0;
    //text-align: center;
    text-align: right;
  */
  padding-left: 10vw; }
  @media (min-width: 940px) {
    #nav {
      width: 20vw;
      height: 100vh;
      position: fixed;
      background-color: #00afec;
      top: 0;
      bottom: 0;
      left: 80vw;
      color: #FDFDFD;
      z-index: 1;
      padding: 36px 0 20px 0;
      text-align: right;
      overflow: auto; } }

#nav-left {
  /*	//width: 14rem;
    //width: 10rem;
    width: 20%;
    position: fixed;
    background-color: $main-color;
    top: 0;
    bottom: 0;
    left: 80%;
    //left: -14rem;
    color: $background-color;
    //opacity: 0.95;
    -webkit-transition: all 0.3s ease-in;
       -moz-transition: all 0.3s ease-in;
        -ms-transition: all 0.3s ease-in;
            transition: all 0.3s ease-in;
    z-index: 1;
    padding: 72px 0;
    //text-align: center;
    text-align: right;
  */
  padding-left: 10vw; }
  @media (min-width: 940px) {
    #nav-left {
      width: 20vw;
      height: 100vh;
      position: fixed;
      background-color: #00afec;
      top: 0;
      bottom: 0;
      left: 80vw;
      color: #FDFDFD;
      z-index: 1;
      padding: 36px 0 20px 0;
      text-align: right;
      overflow: auto; } }

/* Toggle class to open menu */
/*
#nav.menu-open {
  @include open(-14rem);
}

#nav-left.menu-open-left {
  @include open(14rem);
}
*/
/* Icon menu */
/*
#nav-menu {
  @include icon-position(right);
}

#nav-menu-left {
  @include icon-position(left);
}

#menu {
  height: 4px;
  width: 1.5em;
  background-color: lighten($text-color, 35%);
  margin-top: 8px;
  &:after, &:before {
    content: "";
    display: block;
    position: relative;
    height: 4px;
    width: 1.5em;
    background-color: lighten($text-color, 35%);
    transition: all 0.3s ease-in;
  }
  &:before {
    top: -8px;
  }
  &:after {
    top: 4px;
  }
  &.btn-close {
    background: none;
  }
  &.btn-close:before {
    top: 0;
    -webkit-transform: rotate(-45deg);
       -moz-transform: rotate(-45deg);
        -ms-transform: rotate(-45deg);
            transform: rotate(-45deg);
    background-color: $background-color;
  }
  &.btn-close:after {
    top: -4px;
    -webkit-transform: rotate(45deg);
       -moz-transform: rotate(45deg);
        -ms-transform: rotate(45deg);
            transform: rotate(45deg);
    background-color: $background-color;
  }
}
*/
/* Main content */
.fixed {
  position: fixed; }
  @media (min-width: 940px) {
    .fixed {
      position: static; } }

#container {
  margin: 0 5vw 0 5vw;
  width: 90vw;
  padding: 0 1.5rem; }
  @media (min-width: 940px) {
    #container {
      margin: 0 25vw 0 10vw;
      width: 65vw; } }

#header {
  text-align: center;
  padding: 24px 0;
  position: relative; }
  #header a {
    text-decoration: none;
    color: #333;
    display: inline-block; }
  #header img {
    max-height: 72px;
    margin: 0 auto;
    display: block; }
  #header:after {
    display: block;
    content: '';
    width: 5rem;
    height: 1px;
    margin: 23px auto;
    background-color: #e6e6e6; }

/* Posts */
#posts li {
  list-style-type: none; }

#post-page {
  margin-bottom: 1.5em; }
  #post-page p {
    text-indent: 1em; }
  @media (min-width: 940px) {
    #post-page {
      margin-bottom: 1.3334em; } }

.post + .post:before {
  display: block;
  content: '';
  width: 5rem;
  height: 1px;
  margin: 23px auto;
  background-color: #e6e6e6; }

.by-line {
  display: block;
  color: #737373;
  line-height: 1.5em;
  /* 24px/16px */
  margin-bottom: 1.5em;
  /* 24px/16px */
  font-weight: 200; }
  @media (min-width: 940px) {
    .by-line {
      display: block;
      color: #737373;
      line-height: 1.3334em;
      /* 24px/18px */
      margin-bottom: 1.3334em;
      /* 24px/18px */
      font-weight: 200; } }

.content img:not(.emoji) {
  max-width: 100%;
  display: block;
  margin: 0 auto;
  margin-bottom: 24px;
  -webkit-border-radius: 4px;
  -moz-border-radius: 4px;
  -ms-border-radius: 4px;
  border-radius: 4px; }

.content img.emoji {
  vertical-align: -0.2rem; }

#post-page .social-share {
  text-align: right;
  padding-bottom: 15px; }

/*
img[title="Emerald"] {
    box-shadow: 0 2px 6px #ddd;
  }
*/
code {
  color: #8c8c8c;
  background-color: white;
  overflow: auto; }

.code pre {
  overflow: auto;
  width: 50vw; }

/* Set the vertical rhythm (and padding-left) for lists inside post content */
.content ul, .content ol {
  line-height: 1.5em;
  /* 24px/16px */
  padding-left: 1.5em; }
  @media (min-width: 940px) {
    .content ul, .content ol {
      line-height: 1.33334em;
      /* 24px/18px */ } }

/* Pages */
#page ul, #page ol {
  padding-left: 1.5em; }

#posts li.post div.preview {
  opacity: 0.8;
  font-size: 0.8rem; }
  #posts li.post div.preview p {
    text-indent: 1em; }

/* Paginator */
.pagination {
  text-align: center;
  margin: 2.666668em; }
  .pagination span {
    background-color: #f0f0f0;
    color: #333; }
  .pagination a:hover {
    background-color: #07bfff; }

.page-item {
  background-color: #00afec;
  color: #FDFDFD;
  padding: 4px 8px;
  font-weight: 400;
  padding: 0.5em 1em;
  -webkit-border-radius: 4px;
  -moz-border-radius: 4px;
  -ms-border-radius: 4px;
  border-radius: 4px; }

/* Footer */
/*
footer {
  background-color: $main-color;
  color: $background-color;
  text-align: center;
  padding: 0.6667em 0;
}
*/
/*
 * A Github stylesheet to highlight code snippet
 * https://github.com/mojombo/tpw/blob/master/css/syntax.css
 */
.lineno {
  color: #bdbdbd;
  margin-right: 1em; }

.highlight {
  overflow-x: auto;
  font-size: 15px;
  margin-left: 40px;
  border-top: 1px solid #999;
  border-bottom: 1px solid #999;
  padding: 10px;
  margin-bottom: 20px; }

.highlight .c {
  color: #999988;
  font-style: italic; }

/* Comment */
.highlight .err {
  color: #a61717;
  background-color: #e3d2d2; }

/* Error */
.highlight .k {
  font-weight: bold; }

/* Keyword */
.highlight .o {
  font-weight: bold; }

/* Operator */
.highlight .cm {
  color: #999988;
  font-style: italic; }

/* Comment.Multiline */
.highlight .cp {
  color: #999999;
  font-weight: bold; }

/* Comment.Preproc */
.highlight .c1 {
  color: #999988;
  font-style: italic; }

/* Comment.Single */
.highlight .cs {
  color: #999999;
  font-weight: bold;
  font-style: italic; }

/* Comment.Special */
.highlight .gd {
  color: #000000;
  background-color: #ffdddd; }

/* Generic.Deleted */
.highlight .gd .x {
  color: #000000;
  background-color: #ffaaaa; }

/* Generic.Deleted.Specific */
.highlight .ge {
  font-style: italic; }

/* Generic.Emph */
.highlight .gr {
  color: #aa0000; }

/* Generic.Error */
.highlight .gh {
  color: #999999; }

/* Generic.Heading */
.highlight .gi {
  color: #000000;
  background-color: #ddffdd; }

/* Generic.Inserted */
.highlight .gi .x {
  color: #000000;
  background-color: #aaffaa; }

/* Generic.Inserted.Specific */
.highlight .go {
  color: #888888; }

/* Generic.Output */
.highlight .gp {
  color: #555555; }

/* Generic.Prompt */
.highlight .gs {
  font-weight: bold; }

/* Generic.Strong */
.highlight .gu {
  color: #aaaaaa; }

/* Generic.Subheading */
.highlight .gt {
  color: #aa0000; }

/* Generic.Traceback */
.highlight .kc {
  font-weight: bold; }

/* Keyword.Constant */
.highlight .kd {
  font-weight: bold; }

/* Keyword.Declaration */
.highlight .kp {
  font-weight: bold; }

/* Keyword.Pseudo */
.highlight .kr {
  font-weight: bold; }

/* Keyword.Reserved */
.highlight .kt {
  color: #445588;
  font-weight: bold; }

/* Keyword.Type */
.highlight .m {
  color: #009999; }

/* Literal.Number */
.highlight .s {
  color: #d14; }

/* Literal.String */
.highlight .na {
  color: #008080; }

/* Name.Attribute */
.highlight .nb {
  color: #0086B3; }

/* Name.Builtin */
.highlight .nc {
  color: #445588;
  font-weight: bold; }

/* Name.Class */
.highlight .no {
  color: #008080; }

/* Name.Constant */
.highlight .ni {
  color: #800080; }

/* Name.Entity */
.highlight .ne {
  color: #990000;
  font-weight: bold; }

/* Name.Exception */
.highlight .nf {
  color: #990000;
  font-weight: bold; }

/* Name.Function */
.highlight .nn {
  color: #555555; }

/* Name.Namespace */
.highlight .nt {
  color: #000080; }

/* Name.Tag */
.highlight .nv {
  color: #008080; }

/* Name.Variable */
.highlight .ow {
  font-weight: bold; }

/* Operator.Word */
.highlight .w {
  color: #bbbbbb; }

/* Text.Whitespace */
.highlight .mf {
  color: #009999; }

/* Literal.Number.Float */
.highlight .mh {
  color: #009999; }

/* Literal.Number.Hex */
.highlight .mi {
  color: #009999; }

/* Literal.Number.Integer */
.highlight .mo {
  color: #009999; }

/* Literal.Number.Oct */
.highlight .sb {
  color: #d14; }

/* Literal.String.Backtick */
.highlight .sc {
  color: #d14; }

/* Literal.String.Char */
.highlight .sd {
  color: #d14; }

/* Literal.String.Doc */
.highlight .s2 {
  color: #d14; }

/* Literal.String.Double */
.highlight .se {
  color: #d14; }

/* Literal.String.Escape */
.highlight .sh {
  color: #d14; }

/* Literal.String.Heredoc */
.highlight .si {
  color: #d14; }

/* Literal.String.Interpol */
.highlight .sx {
  color: #d14; }

/* Literal.String.Other */
.highlight .sr {
  color: #009926; }

/* Literal.String.Regex */
.highlight .s1 {
  color: #d14; }

/* Literal.String.Single */
.highlight .ss {
  color: #990073; }

/* Literal.String.Symbol */
.highlight .bp {
  color: #999999; }

/* Name.Builtin.Pseudo */
.highlight .vc {
  color: #008080; }

/* Name.Variable.Class */
.highlight .vg {
  color: #008080; }

/* Name.Variable.Global */
.highlight .vi {
  color: #008080; }

/* Name.Variable.Instance */
.highlight .il {
  color: #009999; }

/* Literal.Number.Integer.Long */
/*- Custom style -*/
code {
  color: #333; }

#preflight {
  margin-left: 10vw; }
  @media (min-width: 940px) {
    #preflight {
      margin: 10px 25vw 10px 10vw;
      border-top: 1px solid #e6e6e6;
      padding: 20px 1.5rem;
      width: 25vw; }
      #preflight .divider {
        display: none; } }
  #preflight img {
    width: 10vw;
    border-radius: 50%;
    pointer-events: none;
    float: left;
    margin-left: 10vw; }
    @media (min-width: 940px) {
      #preflight img {
        width: 5vw;
        margin-left: 0; } }
  #preflight .description {
    margin-left: 13vw;
    line-height: 10vw;
    padding: 0 0 0 10vw; }
    @media (min-width: 940px) {
      #preflight .description {
        margin-left: 5vw;
        padding: 0 0 0 2vw;
        line-height: 5vw; } }
