/*----------------------------------------------------
 Formatting Reset
----------------------------------------------------*/
* {
  -webkit-text-size-adjust: 100%; /*スマートフォンの横向き時に文字が大きくなるのを防ぐ none指定は避ける*/
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
}
body, div, dl, dt, dd, ul, ol, li, h1, h2, h3, h4, h5, h6, pre, form, fieldset,figure, input, textarea, p, blockquote, th, td {
  margin: 0;
  padding: 0;
}
table {
  border-collapse: collapse;
  border-spacing: 0;
}
fieldset, img {
  border: 0;
}
img {
  vertical-align: bottom;
  max-width: 100%;
  height: auto;
  backface-visibility: hidden;
  -webkit-backface-visibility: hidden;
}
article, aside, canvas, details, figcaption, figure, header, footer, main, menu, nav, section, summary {
  display: block
}
address, caption, cite, code, dfn, em, strong, th, var {
  font-style: normal;
  font-weight: normal;
}
ol, ul {
  list-style: none;
}
caption, th {
  text-align: left;
}
h1, h2, h3, h4, h5, h6 {
  font-size: 100%;
  font-weight: normal;
}
/*----------------------------------------------------
 Common Style
----------------------------------------------------*/
/* Hyper Link
----------------------------------------------------*/
a:link {  color: #333;  text-decoration: none;}
a:visited {  color: #333;  text-decoration: none;}
a:hover {  color: #333;  text-decoration: underline;}
a:hover {
  filter: alpha(opacity=70);
  opacity: 0.7;
  -moz-opacity: 0.7;
  -webkit-transition: 0.3s ease-in-out;
  -moz-transition: 0.3s ease-in-out;
  -o-transition: 0.3s ease-in-out;
  transition: 0.3s ease-in-out;
}
/* Font Size  初期値16pxの62.5%でルートが10px
----------------------------------------------------*/
.fs_9 {  font-size: 9px;  font-size: 0.9rem;}.fs_10 {  font-size: 10px;  font-size: 1rem;}.fs_11 {  font-size: 11px;  font-size: 1.1rem;}.fs_12 {  font-size: 12px;  font-size: 1.2rem;}.fs_13 {  font-size: 13px;  font-size: 1.3rem;}.fs_14 {  font-size: 14px;  font-size: 1.4rem;}.fs_15 {  font-size: 15px;  font-size: 1.5rem;}.fs_16 {  font-size: 16px;  font-size: 1.6rem;}.fs_17 {  font-size: 17px;  font-size: 1.7rem;}.fs_18 {  font-size: 18px;  font-size: 1.8rem;}.fs_19 {  font-size: 19px;  font-size: 1.9rem;}.fs_20 {  font-size: 20px;  font-size: 2rem;}
/* Font Style
----------------------------------------------------*/
.b {  font-weight: bold;}.i {  font-style: italic;}.n {  font-style: normal;}.u {  text-decoration: underline;}.d {  text-decoration: line-through;}
/* Font Color
----------------------------------------------------*/
.red {  color: #f00;}
/* Text Align
----------------------------------------------------*/
.txt_l {  text-align: left;}.txt_c {  text-align: center;}.txt_r {  text-align: right;}
/* Line Hight
----------------------------------------------------*/
.lh_10 {  line-height: 1;}.lh_11 {  line-height: 1.1;}.lh_12 {  line-height: 1.2;}.lh_13 {  line-height: 1.3;}.lh_14 {  line-height: 1.4;}.lh_15 {  line-height: 1.5;}.lh_16 {  line-height: 1.6;}.lh_17 {  line-height: 1.7;}.lh_18 {  line-height: 1.8;}.lh_19 {  line-height: 1.9;}.lh_20 {  line-height: 2;}
/* Float
----------------------------------------------------*/
.left {  float: left;}.right {  float: right;}
/* Padding
----------------------------------------------------*/
.p5 {  padding: 5px;}.p10 {  padding: 10px;}.p15 {  padding: 15px;}.p20 {  padding: 20px;}.p25 {  padding: 25px;}.p30 {  padding: 30px;}.p35 {  padding: 35px;}.p40 {  padding: 40px;}.p45 {  padding: 45px;}.p50 {  padding: 50px;}.pt5 {  padding-top: 5px;}.pt10 {  padding-top: 10px;}.pt15 {  padding-top: 15px;}.pt20 {  padding-top: 20px;}.pt25 {  padding-top: 25px;}.pt30 {  padding-top: 30px;}.pt35 {  padding-top: 35px;}.pt40 {  padding-top: 40px;}.pt45 {  padding-top: 45px;}.pt50 {  padding-top: 50px;}.pb5 {  padding-bottom: 5px;}.pb10 {  padding-bottom: 10px;}.pb15 {  padding-bottom: 15px;}.pb20 {  padding-bottom: 20px;}.pb25 {  padding-bottom: 25px;}.pb30 {  padding-bottom: 30px;}.pb35 {  padding-bottom: 35px;}.pb40 {  padding-bottom: 40px;}.pb45 {  padding-bottom: 45px;}.pb50 {  padding-bottom: 50px;}.pl5 {  padding-left: 5px;}.pl10 {  padding-left: 10px;}.pl15 {  padding-left: 15px;}.pl20 {  padding-left: 20px;}.pl25 {  padding-left: 25px;}.pl30 {  padding-left: 30px;}.pl35 {  padding-left: 35px;}.pl40 {  padding-left: 40px;}.pl45 {  padding-left: 45px;}.pl50 {  padding-left: 50px;}.pr5 {  padding-right: 5px;}.pr10 {  padding-right: 10px;}.pr15 {  padding-right: 15px;}.pr20 {  padding-right: 20px;}.pr25 {  padding-right: 25px;}.pr30 {  padding-right: 30px;}.pr35 {  padding-right: 35px;}.pr40 {  padding-right: 40px;}.pr45 {  padding-right: 45px;}.pr50 {  padding-right: 50px;}
/* Margin
----------------------------------------------------*/
.m5 {  margin: 5px;}.m10 {  margin: 10px;}.m15 {  margin: 15px;}.m20 {  margin: 20px;}.m25 {  margin: 25px;}.m30 {  margin: 30px;}.m35 {  margin: 35px;}.m40 {  margin: 40px;}.m45 {  margin: 45px;}.m50 {  margin: 50px;}.mt5 {  margin-top: 5px;}.mt10 {  margin-top: 10px;}.mt15 {  margin-top: 15px;}.mt20 {  margin-top: 20px;}.mt25 {  margin-top: 25px;}.mt30 {  margin-top: 30px;}.mt35 {  margin-top: 35px;}.mt40 {  margin-top: 40px;}.mt45 {  margin-top: 45px;}.mt50 {  margin-top: 50px;}.mb5 {  margin-bottom: 5px;}.mb10 {  margin-bottom: 10px;}.mb15 {  margin-bottom: 15px;}.mb20 {  margin-bottom: 20px;}.mb25 {  margin-bottom: 25px;}.mb30 {  margin-bottom: 30px;}.mb35 {  margin-bottom: 35px;}.mb40 {  margin-bottom: 40px;}.mb45 {  margin-bottom: 45px;}.mb50 {  margin-bottom: 50px;}.ml5 {  margin-left: 5px;}.ml10 {  margin-left: 10px;}.ml15 {  margin-left: 15px;}.ml20 {  margin-left: 20px;}.ml25 {  margin-left: 25px;}.ml30 {  margin-left: 30px;}.ml35 {  margin-left: 35px;}.ml40 {  margin-left: 40px;}.ml45 {  margin-left: 45px;}.ml50 {  margin-left: 50px;}.mr5 {  margin-right: 5px;}.mr10 {  margin-right: 10px;}.mr15 {  margin-right: 15px;}.mr20 {  margin-right: 20px;}.mr25 {  margin-right: 25px;}.mr30 {  margin-right: 30px;}.mr35 {  margin-right: 35px;}.mr40 {  margin-right: 40px;}.mr45 {  margin-right: 45px;}.mr50 {  margin-right: 50px;}
/* table
----------------------------------------------------*/
.tbl01 {
  border-collapse: separate;
  border-top: 1px solid #ccc;
  border-right: 1px solid #ccc;
  border-left: 1px solid #ccc;
}
.tbl01 th, .tbl01 td {
  padding: 10px;
}
.tbl01 th {
  border-top: 1px solid #fff;
  border-bottom: 1px solid #ccc;
  background: #f5f5f5;
  font-weight: bold;
  text-align: center;
}
.tbl01 td {
  border-top: 1px solid #fff;
  border-bottom: 1px solid #ccc;
  background: #fff;
}
/* List Style
----------------------------------------------------*/
.list {  margin-left: 1em;}
.list span {  margin-left: -1em;}
/* yaji
----------------------------------------------------*/
.yaji, .yaji-w {
  position: relative;
}
.yaji:after, .yaji-w:after {
  position: absolute;
  top: 50%;
  right: 10px;
  width: 6px;
  height: 6px;
  margin-top: -3px;
  display: block;
  content: '';
  border-right: 1px solid #333;
  border-bottom: 1px solid #333;
  transform: rotate(-45deg);
}
.yaji-w:after {
  border-right: 1px solid #fff;
  border-bottom: 1px solid #fff;
}