@charset "utf-8";

/* ==========================================
  ポジション
========================================== */
.relative{ position: relative; }


/* ==========================================
  フロート
========================================== */
.f_left{ float: left; }
.f_right{ float: right; }


/* ==========================================
  テキスト位置
========================================== */
.t_center{ text-align: center;}
.t_left{ text-align: left; }
.t_right{ text-align: right; }

/* ==========================================
  ブロック
========================================== */
.db{ display: block;}

/* ==========================================
  文字装飾系
========================================== */
.bold{ font-weight: bold; }
.f10p{ font-size: 10px; }
.f12p{ font-size: 12px; }
.f14p{ font-size: 14px; }
.f16p{ font-size: 16px; }
.f18p{ font-size: 18px; }
.f20p{ font-size: 20px; }

.f_red{ color: #ef4d60; }


/* ==========================================
  文字数「…」
========================================== */
.text-ellipsis {
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
  line-height: 1.4;
}
.text-ellipsis.multiline {
  white-space: normal;
/*  max-height: 2em; */
  position: relative;
}
.text-ellipsis.multiline::after {
  position: absolute;
  display: block;
  bottom: 0;
  right: 0;
}
.text-ellipsis.line-2 { max-height: 3em; }
.text-ellipsis.line-3 { max-height: 4.5em; }
.text-ellipsis.line-4 { max-height: 6em; }
.text-ellipsis.line-5 { max-height: 7.5em; }


/* ==========================================
  margin
========================================== */

/*  margin-top  ------------------------*/
.mt0{ margin-top:0px !important; }
.mt5{ margin-top:5px !important; }
.mt10{ margin-top:10px !important; }
.mt15{ margin-top:15px !important; }
.mt20{ margin-top:20px !important; }
.mt25{ margin-top:25px !important; }
.mt30{ margin-top:30px !important; }

/*  margin-bottom  ------------------------*/
.mb0{ margin-bottom:0px !important; }
.mb5{ margin-bottom:5px !important; }
.mb10{ margin-bottom:10px !important; }
.mb15{ margin-bottom:15px !important; }
.mb20{ margin-bottom:20px !important; }
.mb25{ margin-bottom:25px !important; }
.mb30{ margin-bottom:30px !important; }
.mb40{ margin-bottom:40px !important; }

/*  margin-right  ------------------------*/
.mr0{ margin-right:0px !important; }
.mr5{ margin-right:5px !important; }
.mr10{ margin-right:10px !important; }
.mr15{ margin-right:15px !important; }
.mr20{ margin-right:20px !important; }
.mr25{ margin-right:25px !important; }
.mr30{ margin-right:30px !important; }

/*  margin-left  ------------------------*/
.ml0{ margin-left:0px !important; }
.ml5{ margin-left:5px !important; }
.ml10{ margin-left:10px !important; }
.ml15{ margin-left:15px !important; }
.ml20{ margin-left:20px !important; }
.ml25{ margin-left:25px !important; }
.ml30{ margin-bottom:30px !important; }



/* ==========================================
  padding
========================================== */

/*  padding-top  ------------------------*/
.pt0{ padding-top:0px !important; }
.pt5{ padding-top:5px !important; }
.pt10{ padding-top:10px !important; }
.pt15{ padding-top:15px !important; }
.pt20{ padding-top:20px !important; }
.pt25{ padding-top:25px !important; }
.pt30{ padding-top:30px !important; }


/*  padding-bottom  ------------------------*/
.pb0{ padding-bottom:0px !important; }
.pb5{ padding-bottom:5px !important; }
.pb10{ padding-bottom:10px !important; }
.pb15{ padding-bottom:15px !important; }
.pb20{ padding-bottom:20px !important; }
.pb25{ padding-bottom:25px !important; }
.pb30{ padding-bottom:30px !important; }

/*  padding-right  ------------------------*/
.pr0{ padding-right:0px !important; }
.pr5{ padding-right:5px !important; }
.pr10{ padding-right:10px !important; }
.pr15{ padding-right:15px !important; }
.pr20{ padding-right:20px !important; }
.pr25{ padding-right:25px !important; }
.pr30{ padding-right:30px !important; }

/*  padding-left  ------------------------*/
.pl0{ padding-left:0px !important; }
.pl5{ padding-left:5px !important; }
.pl10{ padding-left:10px !important; }
.pl15{ padding-left:15px !important; }
.pl20{ padding-left:20px !important; }
.pl25{ padding-left:25px !important; }
.pl30{ padding-bottom:30px !important; }


/* ==========================================
  横幅
========================================== */
.w5p{ width: 5%; }
.w10p{ width: 10%; }
.w15p{ width: 15%; }
.w20p{ width: 20%; }
.w25p{ width: 25%; }
.w30p{ width: 30%; }
.w35p{ width: 35%; }
.w40p{ width: 40%; }
.w45p{ width: 45%; }
.w50p{ width: 50%; }
.w55p{ width: 55%; }
.w60p{ width: 60%; }
.w65p{ width: 65%; }
.w70p{ width: 70%; }
.w75p{ width: 75%; }
.w80p{ width: 80%; }
.w85p{ width: 85%; }
.w90p{ width: 90%; }
.w95p{ width: 95%; }
.w100p{ width: 100%; }
.mw100p{ max-width: 100%; }