/* ===================================================================
CSS information
 file name  :  default.css
 style info :  リセット及びbody初期設定 (このスタイルシートは基本的に変更しない)
=================================================================== */
*{
    -webkit-box-sizing: border-box;
       -moz-box-sizing: border-box;
         -o-box-sizing: border-box;
        -ms-box-sizing: border-box;
            box-sizing: border-box;
            }
html,
body,
#wrapper{
  width:100%;
  height:100%;
  }
body{
  color:#4C4C4C;
  font-size:12px;
  line-height:1;
  margin:0;
  font-family: "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", "Meiryo", "verdana", sans-serif;
  -webkit-text-size-adjust: 100%;
  }
h1, h2, h3, h4, h5, h6, p, dl, dt, dd, ul, ol, li, figure, small, p {
  margin: 0;
  padding:0;
  font-size:100%;
  }
article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section {
  display:block;
  }
hr{
  display:block;
  height:1px;
  border:0;
  border-top:1px solid #cccccc;
  margin:1em 0;
  padding:0;
  }
ul{
  list-style:none;
  padding:0;
  margin:0;
  }
li {
    padding:0;
  margin:0;
  }
samp {
  font-family: "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", "Meiryo", "verdana", sans-serif;
}
input[type="submit"]{
  cursor:pointer;
  border:none;
  }
textarea{
  resize:vertical;
  overflow:hidden;
  -moz-border-radius: 0;
  -webkit-border-radius: 0;
  box-shadow:none;
  -moz-box-shadow:none;
  -webkit-box-shadow:none;
  -webkit-appearance:none;
  background-color:#fff;
  background-image:none;
  }
#wrapper input {
  vertical-align:middle;
  }
#wrapper input[type="text"],
#wrapper input[type="email"],
#wrapper input[type="url"] {
  vertical-align:middle;
  border-radius: 0;
  -moz-border-radius: 0;
  -webkit-border-radius: 0;
  box-shadow:none;
  -moz-box-shadow:none;
  -webkit-box-shadow:none;
  -webkit-appearance:none;
  background-color:#fff;
  background-image:none;
  }
#wrapper select{
  vertical-align:middle;
  border-radius: 0;
  -moz-border-radius: 0;
  -webkit-border-radius: 0;
  box-shadow:none;
  -moz-box-shadow:none;
  -webkit-box-shadow:none;
  -webkit-appearance:none;
  background:url(../img/i_select.png) #fff right top no-repeat;
  background-size:29px 30px;
  }
a {
  display: block;
  -webkit-touch-callout:none;
  -webkit-tap-highlight-color:rgba(2,201,251,0.12);  
  }
table{
  border-collapse:collapse;
  }

/*utility*/
.m05 {
  margin-bottom: 5px;
}
.m10 {
  margin-bottom: 10px;
}
.m12 {
  margin-bottom: 12px;
}
.m15 {
  margin-bottom: 15px;
}
.m20 {
  margin-bottom: 20px;
}
.m30 {
  margin-bottom: 30px;
}
.m40 {
  margin-bottom: 40px;
}
.m50 {
  margin-bottom: 50px;
}
.m60 {
  margin-bottom: 60px;
}
.mt05 {
  margin-top: 5px;
}
.mt10 {
  margin-top: 10px;
}
.mt12 {
  margin-top: 12px;
}
.mt15 {
  margin-top: 15px;
}
.mt20 {
  margin-top: 20px;
}
.mt30 {
  margin-top: 30px;
}
.mt40 {
  margin-top: 40px;
}
.mt50 {
  margin-top: 50px;
}
.mt60 {
  margin-top: 60px;
}
.ml05 {
  margin-left: 5px;
}
.ml10 {
  margin-left: 10px;
}
.ml12 {
  margin-left: 12px;
}
.ml15 {
  margin-left: 15px;
}
.ml20 {
  margin-left: 20px;
}
.ml30 {
  margin-left: 30px;
}
.ml40 {
  margin-left: 40px;
}
.ml50 {
  margin-left: 50px;
}
.ml60 {
  margin-left: 60px;
}
.mr05 {
  margin-right: 5px;
}
.mr10 {
  margin-right: 10px;
}
.mr15 {
  margin-right: 15px;
}
.mr20 {
  margin-right: 20px;
}
.mr30 {
  margin-right: 30px;
}
.mr40 {
  margin-right: 40px;
}
.mr50 {
  margin-right: 50px;
}
.mr60 {
  margin-right: 60px;
}
.pt05 {
  padding-top: 5px;
}
.pt10 {
  padding-top: 10px;
}
.pt15 {
  padding-top: 15px;
}
.pt20 {
  padding-top: 20px;
}
.pt30 {
  padding-top: 30px;
}
.pt40 {
  padding-top: 40px;
}
.pb05 {
  padding-bottom: 5px;
}
.pb10 {
  padding-bottom: 10px;
}
.pb15 {
  padding-bottom: 15px;
}
.pb20 {
  padding-bottom: 20px;
}
.pb30 {
  padding-bottom: 30px;
}
.pb40 {
  padding-bottom: 40px;
}
.pl05 {
  padding-left: 5px;
}
.pl10 {
  padding-left: 10px;
}
.pl15 {
  padding-left: 15px;
}
.pl20 {
  padding-left: 20px;
}
.pl30 {
  padding-left: 30px;
}
.pl40 {
  padding-left: 40px;
}
.pr05 {
  padding-right: 5px;
}
.pr10 {
  padding-right: 10px;
}
.pr15 {
  padding-right: 15px;
}
.pr20 {
  padding-right: 20px;
}
.pr30 {
  padding-right: 30px;
}
.pr40 {
  padding-right: 40px;
}
.flt {
  float: left;
}
.flr {
  float: right;
}
.txt_l, td.txt_l, .txt_l td {
  text-align: left;
}
.txt_r, td.txt_r, .txt_r td {
  text-align: right;
}
.txt_c, td.txt_c, .txt_c td {
  text-align: center;
}
.valign_t, td.valign_t, .valign_t td {
  vertical-align: top;
}
.valign_m, td.valign_m, .valign_m td {
  vertical-align: middle;
}
.valign_b, td.valign_b, .valign_b td {
  vertical-align: bottom;
}
.clear {
  clear: both;
}
.clearfix:before, .clearfix:after {
  content: "";
  display: block;
}
.clearfix:after {
  clear: both;
}
.clearfix {
  zoom: 1;
}
