@charset "UTF-8";
/* ===================================================================
CSS information

 File Name  : util.css
 Style Info : 案件に依存せず汎用的に使うClassを定義
=================================================================== */
*, *:before, *:after {
  -moz-box-sizing: border-box; -webkit-box-sizing: border-box; box-sizing: border-box;
}
.inline {
  display:inline;
}
.inline_block, .wp-pagenavi a, .wp-pagenavi span, .wp-pagenavi .alignleft, .wp-pagenavi .center, .wp-pagenavi .alignright {
  display: inline-block;
  *display: inline;
  *zoom: 1;
}
.inline {
  display:inline;
}
.block {
  display:block;
}
.flex {
  -webkit-display: flex;
  -moz-display: flex;
  -ms-display: flex;
  -o-display: flex;
  display: flex;
}
/* 横逆順 */
.fx_r_reverse {
  -webkit-flex-direction: row-reverse;
  -moz-flex-direction: row-reverse;
  -ms-flex-direction: row-reverse;
  -o-flex-direction: row-reverse;
  flex-direction: row-reverse;
}
/* 縦逆順 */
.fx_c_reverse {
  -webkit-flex-direction: column-reverse;
  -moz-flex-direction: column-reverse;
  -ms-flex-direction: column-reverse;
  -o-flex-direction: column-reverse;
  flex-direction: column-reverse;
}
/*アイテム折返し*/
.fx_wrap {
  -webkit-flex-wrap: wrap;
  -moz-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  -o-flex-wrap: wrap;
  flex-wrap: wrap;
}
/* 等間隔に配置 */
.fx_between {
  -webkit-justify-content: space-between;
  -moz-justify-content: space-between;
  -ms-justify-content: space-between;
  -o-justify-content: space-between;
  justify-content: space-between;
}
/* センターに配置 */
.fx_center {
  -webkit-justify-content: center;
  -moz-justify-content: center;
  -ms-justify-content: center;
  -o-justify-content: center;
  justify-content: center;
}
/* 右側に配置 */
.fx_end {
  -webkit-justify-content: flex-end;
  -moz-justify-content: flex-end;
  -ms-justify-content: flex-end;
  -o-justify-content: flex-end;
  justify-content: flex-end;
}
/*上下中央寄せ*/
.fx_all_center {
  -webkit-flex-direction: column;
  -moz-flex-direction: column;
  -ms-flex-direction: column;
  -o-flex-direction: column;
  flex-direction: column;/* 子要素をflexboxにより縦方向に揃える */
  -webkit-justify-content: center;
  -moz-justify-content: center;
  -ms-justify-content: center;
  -o-justify-content: center;
  justify-content: center;/* センターに配置 */
  -webkit-align-items: center;
  -moz-align-items: center;
  -ms-align-items: center;
  -o-align-items: center;
  align-items: center;/* 子要素をflexboxにより中央に配置する */
}
.table_cell {
  display: table-cell;
  *display: inline;
  *zoom: 1;
  vertical-align: middle;
}
.ovfl {
  overflow: hidden;
}
.fr,
.imgR,
.alignright {
  float: right;
}
.fl,
.imgL,
.alignleft {
  float: left;
}
.imgC,
.tC,
.btn,
.aligncenter {
  text-align: center;
}
.imgC,
.aligncenter {
  display: block;
  margin-left: auto;
  margin-right: auto;
}
.tR,
.sign {
  text-align: right;
}
.pc_none {
  display:none;
}
.inner,
.wrapper {
  position: relative;
  margin-left: auto;
  margin-right: auto;
}
.inner:after,
.wrapper:after,
.clearfix:after {
  content: ""; 
  display: block; 
  clear: both;
}
.alpha:hover {
  filter: alpha(opacity=80); 
  -moz-opacity: 0.80;
  opacity: 0.8;
}
.no_alpha {
  filter: alpha(opacity=100)!important; 
  -moz-opacity: 1!important;
  opacity: 1!important;
}

@media screen and (max-width: 767px) {
  .pc_none {
    display:block;
  }
  .sp_none {
    display:none;
  }
  .fl,.fr {
    box-sizing:border-box;
    width:100%!important;
    float:none!important;
  }
  .inner,.wrapper {
    box-sizing:border-box!important;
    width:100%!important;
  }
  .sp_block {
    -webkit-display: block;
    -moz-display: block;
    -ms-display: block;
    -o-display: block;
    display: block;
  }
}

