/*   Universal Selector
---------------------------------------------------- */
* {
  padding: 0;
  margin: 0;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
}
*, *:before, *:after {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
}
/*   Structures
---------------------------------------------------- */
html {
  overflow-y: scroll; /* for FireFox */
  height: 100%;
  font-size: 10px;
  line-height: 10px;
}
body {
    color: #333333;
    margin: 0px;
    padding: 0px;
    background-color: #FFFFFF;
    height: 100%;
    word-spacing: normal;
    font: 1.6rem/3rem YuGothic, "Yu Gothic medium", "Hiragino Sans", Meiryo, sans-serif;
    letter-spacing: 0.1em;
    font-feature-settings: "palt"1;
    -webkit-font-feature-settings: "palt"1;
}
/*   Hyper Text
---------------------------------------------------- */
a {
  color: #666;
  font-weight: normal;
  -webkit-transition: all .3s;
    transition: all .3s;
}
a:link {
  text-decoration: none;
}
a:visited {}
a:hover {
  text-decoration: none;
}
a:focus {}
a:active {
  color: #999;
}
/*   Images
---------------------------------------------------- */
img {
  vertical-align: top;
  background-color: transparent;
  height: auto;
  width: 100%;
}
a img {
  border: none;
}
/*   Texts
---------------------------------------------------- */
h1, h2, h3, h4, h5, h6 {
    font: bold 1.8rem/3rem 'Montserrat', sans-serif;
    color: #333;
}
p, li, form, td, th, caption, dt, dd, div, textarea {}
del {
  text-decoration: line-through;
}
b {
  font-weight: bold;
}
/*   Presentation
---------------------------------------------------- */
.l {
  float: left;
}
.r {
  float: right;
}
/*   List
---------------------------------------------------- */
ul, ol {
  list-style: none;
  margin: 0px;
  padding: 0px;
}
ul li, ol li {
  display: inline-block;
}
/*   Table
---------------------------------------------------- */
table {
  border: none;
  border-collapse: collapse;
  border-spacing: 0;
}
caption {
  text-align: left;
}
th {
  font-weight: bold;
  text-align: center;
}
td {
  text-align: left;
}
/*   clearfix
---------------------------------------------------- */
/* new clearfix */
.clearfix:after {
  visibility: hidden;
  display: block;
  font-size: 0;
  content: " ";
  clear: both;
  height: 0;
}
* html .clearfix {
  zoom: 1;
} /* IE6 */
*:first-child + html .clearfix {
  zoom: 1;
} /* IE7 */

/*   pagetop
---------------------------------------------------- */
#pagetop {
    position: fixed;
    right: 20px;
    bottom: 20px;
    width: 80px;
    height: 80px;
}