* {
  font-family: "microsoft jhenghei","sans-serif"; }

html {
  font-size: 62.5%; }

.center {
  text-align: center; }
  
ul {
  list-style: none; }

a {
  -webkit-transition: all 0.6s ease-out;
  -moz-transition: all 0.6s ease-out;
  -o-transition: all 0.6s ease-out;
  transition: all 0.6s ease-out; }
  a:link, a:visited, a:hover {
    text-decoration: none;
    color: #0d0d0d;
    position: relative; }
  a:hover {
    color: #F04F47; }
    a:hover::before {
      transform: scaleX(1); }
  a::before {
    content: "";
    background-color: #F04F47;
    width: 100%;
    height: 1px;
    transform: scaleX(0);
    position: absolute;
    bottom: 0;
    -webkit-transition: all 0.3s ease-out;
    -moz-transition: all 0.3s ease-out;
    -o-transition: all 0.3s ease-out;
    transition: all 0.3s ease-out; }

#liuzhen {
  border-radius: 50%; }

.white-font {
  color: #f4f100; }

.red-font {
  color: #0d0d0d; }

.ball {
  margin: 20px; }

.logo-img:hover, .icon-small:hover {
  opacity: 0.6; }
  .logo-img:hover::before, .icon-small:hover::before {
    transform: scaleX(0); }

.logo-img img {
  width: 60px;
  height: 60px;
  margin: 20px 40px 20px 0;
}

.row {
  overflow: hidden;
  width: 80%;
  margin: 30px auto;
}

p {
  font-size: 1em;
}

.project-wrapper {
  display: flex;
  align-items: flex-start;
}

.proj-desc {
  flex: 1;
}

#contact p {
  font-size: 1.4em;
}

@media (max-width: 650px){
  body {
    font-size: 0.8em;
  }

  #liuzhen {
    width: 50%;
  }

  .logo-img img {
    width: 40px;
    height: 40px;
    margin: 15px 30px 15px 0;
  }
}

@media (max-width: 400px){
  .logo-img {
    display: none;
  }

  .project-wrapper {
    margin: 5px auto;
  }
}

::selection {
    color: #fcfcfc;
    background: #2da9d7;
}