@charset "utf-8";

/* flexbox
---------------------------------------- */
.flex-box,
.flexbox,
.flex {
  display: -webkit-flexbox;
  display: -moz-flexbox;
  display: -ms-flexbox;
  display: -o-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
  -moz-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  -o-flex-wrap: wrap;
  flex-wrap: wrap;
  -js-display: flex;
}

.flex-box-between,
.flex-box-be,
.flexbox-between,
.flexbox-be,
.flex-between,
.flex-be {
  -webkit-justify-content: space-between;
  justify-content: space-between;
}

.flex-box-center,
.flex-box-c,
.flex-box-ce,
.flexbox-center,
.flexbox-c,
.flexbox-ce,
.flex-center,
.flex-c,
.flex-ce {
  -webkit-justify-content: center;
  justify-content: center;
}

.flex-box-left,
.flex-box-l,
.flexbox-left,
.flexbox-l,
.flex-left,
.flex-l {
  -webkit-justify-content: flex-start;
  justify-content: flex-start;
}

.flex-box-right,
.flex-box-r,
.flexbox-right,
.flexbox-r,
.flex-right,
.flex-r {
  -webkit-justify-content: flex-end;
  justify-content: flex-end;
}

.flex-box-bottom,
.flexbox-bottom,
.flex-bottom {
  flex-direction: row;
  -webkit-align-items: flex-end;
  align-items: flex-end;
}

.flex-v,
.flex-vertical,
.flex-vertical-center,
.flex-vc,
.flex-v-c,
.flex-v-t-c,
.flex-vt-c,
.flexbox-vertical-center,
.flexbox-vc,
.flexbox-v-c,
.flexbox-v-t-c,
.flexbox-vt-c,
.flex-box-vertical-center,
.flex-box-vc,
.flex-box-v-c,
.flex-box-v-t-c,
.flex-box-vt-c {
  align-items: center;
}

.vertical,
.v-t {
  position: absolute;
  transform: translateY(-50%);
  top: 50%;
}

.horizontal,
.h-r,
.h-z {
  position: absolute;
  transform: translateX(-50%);
  left: 50%;
}

.vertical-center,
.v-c,
.v-t-c,
.vt-c {
  position: absolute;
  transform: translateY(-50%) translateX(-50%);
  top: 50%;
  left: 50%;
}

/* = Table
----------------------------------------------- */

.table_01 {
  font-size: 14px;
  line-height: 18px;
  width: 100%;
  border-collapse: separate;
  }
.table_01 th {
  color: #fff;
  background-color: #444;
  width: 25%;
  padding: 20px 20px 16px;
  text-align: left;
  vertical-align: top;
  font-weight: lighter;
  border-right: 1px solid #ccc;
  border-bottom: 1px solid #ccc;
  }
.table_01 td {
  background-color: #f5f5f5;
  width:75%;
  padding: 20px 20px 16px;
  border-right: 1px solid #ccc;
  border-bottom: 1px solid #ccc;
  }

.table_02 {
  width: 100%;
  border-collapse: collapse;
  }
.table_02 th {
  color: #333;
  background-color: #eee;
  width: 25%;
  padding: 20px 20px 16px;
  text-align: center;
  border: 1px solid #b9b9b9;
  }
.table_02 td {
  background-color: #fff;
  padding: 20px 20px 16px;
  border: 1px solid #b9b9b9;
  text-align: center;
  }
.table_02 td:last-child,
.table_02 th:last-child {
  color: red;
  font-weight: bold;}

/* = HR
----------------------------------------------- */

hr {margin-bottom: 40px;
  border: 0; border-bottom: 1px dashed #000; background: #fff;
  }

/* = Kadomaru
----------------------------------------------- */

.kadomaru, .k_m, .k_maru {
  border-radius: 10px;		/* CSS3草案 */
  -webkit-border-radius: 10px;	/* Safari,Google Chrome用 */
  -moz-border-radius: 10px;	/* Firefox用 */
  }

/* = boxShadow
----------------------------------------------- */

.box_shadow, .b_s, .b_shadow {
    -webkit-box-shadow: 0 6px 6px -6px #777;
       -moz-box-shadow: 0 6px 6px -6px #777;
            box-shadow: 0 6px 6px -6px #777;
  }

/* = blockquote
----------------------------------------------- */

blockquote {
  background-color:#efefef;
  padding:35px 2em;
  position:relative;
  }
blockquote:before {
  content:"“";
  font-size:600%;
  line-height:1em;
  font-family:"ヒラギノ丸ゴ Pro W4","ヒラギノ丸ゴ Pro","Hiragino Maru Gothic Pro","ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","HG丸ｺﾞｼｯｸM-PRO","HGMaruGothicMPRO";
  color:#ccc;
  position:absolute;
  left:10px;
  top:5px;
  }
blockquote:after {
  content:"”";
  font-size:600%;
  line-height:0em;
  font-family:"ヒラギノ丸ゴ Pro W4","ヒラギノ丸ゴ Pro","Hiragino Maru Gothic Pro","ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","HG丸ｺﾞｼｯｸM-PRO","HGMaruGothicMPRO";
  color:#ccc;
  position:absolute;
  right:10px;
  bottom:0;
  }


/* = Page Top JS
----------------------------------------------- */

#page-top {
  position: fixed;
  bottom: 30px !important;
  right: 20px;
  font-size: 77%;
  }
#page-top a {
  background: #FF450E;
  text-decoration: none;
  color: #FFF;
  padding: 16px;
  text-align: center;
  display: block;
  border-radius: 5px;
  }

/* = imagesFit
----------------------------------------------- */

.imgfit img,
.img_fit img,
img.imgfit,
img.img_fit {
  width: 100% !important;
  height: auto !important;
  display: block;
  }

/* = Align
----------------------------------------------- */

img.centered, img.aligncenter {display: block; margin-left: auto; margin-right: auto;}
img.alignright {padding: 4px; margin: 0 0 2px 7px; display: inline; float: right;}
img.alignleft {padding: 4px; margin: 0 7px 2px 0; display: inline; float: left;}

/* = Float
----------------------------------------------- */

.left, .f_left { float: left; }
.right, .f_right { float: right; }
.center, .m_c, .f_c {margin-left: auto; margin-right: auto;}
.c_none, .c_n {clear: none;}

/* = Preset
----------------------------------------------- */

.pt10 {padding-top: 10px;}.pt20 {padding-top: 20px;}.pt30 {padding-top: 30px;}.pt40 {padding-top: 40px;}.pt50 {padding-top: 50px;}
.pt60 {padding-top: 60px;}.pt70 {padding-top: 70px;}.pt80 {padding-top: 80px;}.pt90 {padding-top: 90px;}.pt100 {padding-top: 100px;}
.pr10 {padding-right: 10px;}.pr20 {padding-right: 20px;}.pr30 {padding-right: 30px;}.pr40 {padding-right: 40px;}.pr50 {padding-right: 50px;}
.pr60 {padding-right: 60px;}.pr70 {padding-right: 70px;}.pr80 {padding-right: 80px;}.pr90 {padding-right: 90px;}.pr100 {padding-right: 100px;}
.pb10 {padding-bottom: 10px;}.pb20 {padding-bottom: 20px;}.pb30 {padding-bottom: 30px;}.pb40 {padding-bottom: 40px;}.pb50 {padding-bottom: 50px;}
.pb60 {padding-bottom: 60px;}.pb70 {padding-bottom: 70px;}.pb80 {padding-bottom: 80px;}.pb90 {padding-bottom: 90px;}.pb100 {padding-bottom: 100px;}
.pl10 {padding-left: 10px;}.pl20 {padding-left: 20px;}.pl30 {padding-left: 30px;}.pl40 {padding-left: 40px;}.pl50 {padding-left: 50px;}
.pl60 {padding-left: 60px;}.pl70 {padding-left: 70px;}.pl80 {padding-left: 80px;}.pl90 {padding-left: 90px;}.pl100 {padding-left: 100px;}
.mt10 {margin-top: 10px;}.mt20 {margin-top: 20px;}.mt30 {margin-top: 30px;}.mt40 {margin-top: 40px;}.mt50 {margin-top: 50px;}
.mt60 {margin-top: 60px;}.mt70 {margin-top: 70px;}.mt80 {margin-top: 80px;}.mt90 {margin-top: 90px;}.mt100 {margin-top: 100px;}
.mr10 {margin-right: 10px;}.mr20 {margin-right: 20px;}.mr30 {margin-right: 30px;}.mr40 {margin-right: 40px;}.mr50 {margin-right: 50px;}
.mr60 {margin-right: 60px;}.mr70 {margin-right: 70px;}.mr80 {margin-right: 80px;}.mr90 {margin-right: 90px;}.mr100 {margin-right: 100px;}
.mb10 {margin-bottom: 10px;}.mb20 {margin-bottom: 20px;}.mb30 {margin-bottom: 30px;}.mb40 {margin-bottom: 40px;}.mb50 {margin-bottom: 50px;}
.mb60 {margin-bottom: 60px;}.mb70 {margin-bottom: 70px;}.mb80 {margin-bottom: 80px;}.mb90 {margin-bottom: 90px;}.mb100 {margin-bottom: 100px;}
.ml10 {margin-left: 10px;}.ml20 {margin-left: 20px;}.ml30 {margin-left: 30px;}.ml40 {margin-left: 40px;}.ml50 {margin-left: 50px;}
.ml60 {margin-left: 60px;}.ml70 {margin-left: 70px;}.ml80 {margin-left: 80px;}.ml90 {margin-left: 90px;}.ml100 {margin-left: 100px;}
.font14 {font-size: 14px;}
.font12 {font-size: 12px;}
.font10 {font-size: 10px;}
.bold, .strong {font-weight: bold;}
.f_normal {font-weight: normal;}
.t_c, .t_center {text-align: center;}
.t_l, .t_left {text-align: right;}
.t_r, .t_right {text-align: right;}
.small {font-size: 10px;}
.red {color: #ff2a00;}
.p_r, .relative {position: relative;}
.p_a, .absolute {position: absolute;}
.c_both, .c_b {clear: both;}
.justify {text-align: justify; text-justify: inter-ideograph; -ms-text-justify: inter-ideograph;}
.meiryo {font-family: Meiryo, Tahoma, Verdana, Arial, sans-serif;}
