/*------------------------------------------------------------
1、align・・・文字の横位置
-------------------------------------------------------------*/

.al-c {
  text-align: center;
} /*中央寄せ*/
.al-r {
  text-align: right;
} /*右寄せ*/
.al-l {
  text-align: left;
} /*左寄せ*/

/*------------------------------------------------------------
2、valign・・・文字の縦位置
-------------------------------------------------------------*/

.vl-t {
  vertical-align: top !important;
} /*上寄せ*/
.vl-m {
  vertical-align: middle !important;
} /*中央寄せ*/
.vl-b {
  vertical-align: bottom !important;
} /*下寄せ*/

/*------------------------------------------------------------
3、float・・・左右の回り込み
-------------------------------------------------------------*/

.fl-r {
  float: right;
} /*右に回り込み*/
.fl-l {
  float: left;
} /*左に回り込み*/
.fl-c {
  clear: both;
}

/*640px以下では回り込み解除*/
@media only screen and (max-width: 640px) {
  .fl-r,
  .fl-l {
    float: none;
  }
}

/*------------------------------------------------------------
4、margin・・・周りのブロックからの距離
-------------------------------------------------------------*/

.m0 {
  margin: 0 !important;
} /*周りからのmarginを0に*/
.m0-t {
  margin-top: 0 !important;
} /*上からのmarginを0に*/
.m0-r {
  margin-right: 0 !important;
} /*右からのmarginを0に*/
.m0-b {
  margin-bottom: 0 !important;
} /*下からのmarginを0に*/
.m0-l {
  margin-left: 0 !important;
} /*左からのmarginを0に*/

.m05 {
  margin: 0.5rem !important;
}
.m05-t {
  margin-top: 0.5rem !important;
}
.m05-r {
  margin-right: 0.5rem !important;
}
.m05-b {
  margin-bottom: 0.5rem !important;
}
.m05-l {
  margin-left: 0.5rem !important;
}

.m10 {
  margin: 1rem !important;
}
.m10-t {
  margin-top: 1rem !important;
}
.m10-r {
  margin-right: 1rem !important;
}
.m10-b {
  margin-bottom: 1rem !important;
}
.m10-l {
  margin-left: 1rem !important;
}

.m15 {
  margin: 15px !important;
}
.m15-t {
  margin-top: 1.5rem !important;
}
.m15-r {
  margin-right: 1.5rem !important;
}
.m15-b {
  margin-bottom: 1.5rem !important;
}
.m15-l {
  margin-left: 1.5rem !important;
}

.m20 {
  margin: 2rem !important;
}
.m20-t {
  margin-top: 2rem !important;
}
.m20-r {
  margin-right: 2rem !important;
}
.m20-b {
  margin-bottom: 2rem !important;
}
.m20-l {
  margin-left: 2rem !important;
}

.m25 {
  margin: 2.5rem !important;
}
.m25-t {
  margin-top: 2.5rem !important;
}
.m25-r {
  margin-right: 2.5rem !important;
}
.m25-b {
  margin-bottom: 2.5rem !important;
}
.m25-l {
  margin-left: 2.5rem !important;
}

.m30 {
  margin: 3rem !important;
}
.m30-t {
  margin-top: 3rem !important;
}
.m30-r {
  margin-right: 3rem !important;
}
.m30-b {
  margin-bottom: 3rem !important;
}
.m30-l {
  margin-left: 3rem !important;
}

.m35 {
  margin: 3.5rem !important;
}
.m35-t {
  margin-top: 3.5rem !important;
}
.m35-r {
  margin-right: 3.5rem !important;
}
.m35-b {
  margin-bottom: 3.5rem !important;
}
.m35-l {
  margin-left: 3.5rem !important;
}

.m40 {
  margin: 4rem !important;
}
.m40-t {
  margin-top: 4rem !important;
}
.m40-r {
  margin-right: 4rem !important;
}
.m40-b {
  margin-bottom: 4rem !important;
}
.m40-l {
  margin-left: 4rem !important;
}

.m45 {
  margin: 4.5rem !important;
}
.m45-t {
  margin-top: 4.5rem !important;
}
.m45-r {
  margin-right: 4.5rem !important;
}
.m45-b {
  margin-bottom: 4.5rem !important;
}
.m45-l {
  margin-left: 4.5rem !important;
}

.m50 {
  margin: 5rem !important;
}
.m50-t {
  margin-top: 5rem !important;
}
.m50-r {
  margin-right: 5rem !important;
}
.m50-b {
  margin-bottom: 5rem !important;
}
.m50-l {
  margin-left: 5rem !important;
}
/*------------------------------------------------------------
5、padding・・・周りのブロックからの距離（padding）
-------------------------------------------------------------*/

.p0 {
  padding: 0 !important;
}
.p0-t {
  padding-top: 0 !important;
}
.p0-r {
  padding-right: 0 !important;
}
.p0-b {
  padding-bottom: 0 !important;
}
.p0-l {
  padding-left: 0 !important;
}

.p05 {
  padding: 0.5rem !important;
}
.p05-t {
  padding-top: 0.5rem !important;
}
.p05-r {
  padding-right: 0.5rem !important;
}
.p05-b {
  padding-bottom: 0.5rem !important;
}
.p05-l {
  padding-left: 0.5rem !important;
}

.p10 {
  padding: 1rem !important;
}
.p10-t {
  padding-top: 1rem !important;
}
.p10-r {
  padding-right: 1rem !important;
}
.p10-b {
  padding-bottom: 1rem !important;
}
.p10-l {
  padding-left: 1rem !important;
}

.p15 {
  padding: 1.5rem !important;
}
.p15-t {
  padding-top: 1.5rem !important;
}
.p15-r {
  padding-right: 1.5rem !important;
}
.p15-b {
  padding-bottom: 1.5rem !important;
}
.p15-l {
  padding-left: 1.5rem !important;
}

.p20 {
  padding: 2rem !important;
}
.p20-t {
  padding-top: 2rem !important;
}
.p20-r {
  padding-right: 2rem !important;
}
.p20-b {
  padding-bottom: 2rem !important;
}
.p20-l {
  padding-left: 2rem !important;
}

.p25 {
  padding: 2.5rem !important;
}
.p25-t {
  padding-top: 2.5rem !important;
}
.p25-r {
  padding-right: 2.5rem !important;
}
.p25-b {
  padding-bottom: 2.5rem !important;
}
.p25-l {
  padding-left: 2.5rem !important;
}

.p30 {
  padding: 3rem !important;
}
.p30-t {
  padding-top: 3rem !important;
}
.p30-r {
  padding-right: 3rem !important;
}
.p30-b {
  padding-bottom: 3rem !important;
}
.p30-l {
  padding-left: 3rem !important;
}

.p35 {
  padding: 3.5rem !important;
}
.p35-t {
  padding-top: 3.5rem !important;
}
.p35-r {
  padding-right: 3.5rem !important;
}
.p35-b {
  padding-bottom: 3.5rem !important;
}
.p35-l {
  padding-left: 3.5rem !important;
}

.p40 {
  padding: 4rem !important;
}
.p40-t {
  padding-top: 4rem !important;
}
.p40-r {
  padding-right: 4rem !important;
}
.p40-b {
  padding-bottom: 4rem !important;
}
.p40-l {
  padding-left: 4rem !important;
}

.p45 {
  padding: 4.5rem !important;
}
.p45-t {
  padding-top: 4.5rem !important;
}
.p45-r {
  padding-right: 4.5rem !important;
}
.p45-b {
  padding-bottom: 4rem !important;
}
.p45-l {
  padding-left: 4rem !important;
}

.p50 {
  padding: 5rem !important;
}
.p50-t {
  padding-top: 5rem !important;
}
.p50-r {
  padding-right: 5rem !important;
}
.p50-b {
  padding-bottom: 5rem !important;
}
.p50-l {
  padding-left: 5rem !important;
}

/*------------------------------------------------------------
6、font-size・・・フォントサイズの設定
-------------------------------------------------------------*/
.f08rem {
  font-size: 0.8rem;
}
.f09rem {
  font-size: 0.9rem;
}
.f10rem {
  font-size: 1rem;
}
.f11rem {
  font-size: 1.1rem;
}
.f12rem {
  font-size: 1.2rem;
}
.f13rem {
  font-size: 1.3rem;
}
.f14rem {
  font-size: 1.4rem;
}
.f15rem {
  font-size: 1.5rem;
}
.f16rem {
  font-size: 1.6rem;
}
.f17rem {
  font-size: 1.7rem;
}
.f18rem {
  font-size: 1.8rem;
}
.f19rem {
  font-size: 1.9rem;
}
.f20rem {
  font-size: 2rem;
}
.f21rem {
  font-size: 2.1rem;
}
.f22rem {
  font-size: 2.2rem;
}
.f23rem {
  font-size: 2.3rem;
}
.f24rem {
  font-size: 2.4rem;
}
/*------------------------------------------------------------
7、color・・・フォントカラーの設定
-------------------------------------------------------------*/
.red {
  color: #ff0000 !important;
} /*赤*/
.blue {
  color: #0000dd !important;
} /*青*/
.green {
  color: #008000 !important;
} /*緑*/
.yellow {
  color: #ffff00 !important;
} /*黄*/
.navy {
  color: #1f26a9 !important;
} /*紺*/
.orange {
  color: #ff6600 !important;
} /*橙*/
.pink {
  color: #cc6699 !important;
} /*ピンク*/
.purple {
  color: #660099 !important;
} /*紫*/
.olive {
  color: #808000 !important;
} /*黄土色*/
.lime {
  color: #00ff00 !important;
} /*黄緑*/
.aqua {
  color: #167fa6 !important;
} /*水色*/
.black {
  color: #000 !important;
} /*黒*/
.gray {
  color: #ccc !important;
} /*灰*/
.white {
  color: #fff !important;
} /*白*/

/*------------------------------------------------------------
8、line-height・・・行間の設定
-------------------------------------------------------------*/

.lh10 {
  line-height: 1 !important;
}
.lh11 {
  line-height: 1.1 !important;
}
.lh12 {
  line-height: 1.2 !important;
}
.lh13 {
  line-height: 1.3 !important;
}
.lh14 {
  line-height: 1.4 !important;
}
.lh15 {
  line-height: 1.5 !important;
}
.lh20 {
  line-height: 2 !important;
}

/*------------------------------------------------------------
9、width・・・テーブル・セルの横幅
-------------------------------------------------------------*/

#main table .w05 {
  width: 5%;
}
#main table .w10 {
  width: 10%;
}
#main table .w15 {
  width: 15%;
}
#main table .w20 {
  width: 20%;
}
#main table .w25 {
  width: 25%;
}
#main table .w30 {
  width: 30%;
}
#main table .w35 {
  width: 35%;
}
#main table .w40 {
  width: 40%;
}
#main table .w45 {
  width: 45%;
}
#main table .w50 {
  width: 50%;
}
#main table .w55 {
  width: 55%;
}
#main table .w60 {
  width: 60%;
}
#main table .w65 {
  width: 65%;
}
#main table .w70 {
  width: 70%;
}
#main table .w75 {
  width: 75%;
}
#main table .w80 {
  width: 80%;
}
#main table .w85 {
  width: 85%;
}
#main table .w90 {
  width: 90%;
}
#main table .w95 {
  width: 95%;
}

/*------------------------------------------------------------
10、下線や取消線の設定
-------------------------------------------------------------*/

.underline {
  text-decoration: underline !important;
}
.del {
  text-decoration: line-through;
}
.noborder {
  border: 0 !important;
} /*枠線を無くす*/

/*------------------------------------------------------------
11、zindex・・・重なりの優先度
-------------------------------------------------------------*/

.z1 {
  z-index: 1 !important;
}
.z2 {
  z-index: 2 !important;
}
.z3 {
  z-index: 3 !important;
}
.z4 {
  z-index: 4 !important;
}
.z5 {
  z-index: 5 !important;
}

/*------------------------------------------------------------
12、ul.none・・・リスト先頭のアイコンを無くす
-------------------------------------------------------------*/

ul.none li {
  list-style-type: none;
}

/*------------------------------------------------------------
13、box・・・蛍光ペンのようなボックスの設定
-------------------------------------------------------------*/

.box-yellow {
  padding: 0.1rem;
  background-color: #ff9 !important;
} /*黄色*/
.box-aqua {
  padding: 0.1rem;
  background-color: #9ff !important;
} /*水色*/
.box-gray {
  padding: 0.1rem;
  background-color: #eee !important;
} /*灰色*/
.box-red {
  padding: 0.1rem;
  background-color: #fcc !important;
} /*赤色*/

/*------------------------------------------------------------
14、input:focus・・・入力フォームをハイライトする
-------------------------------------------------------------*/
input:focus,
textarea:focus,
input.focus,
textarea.focus {
  background-color: #ffffe4 !important;
}

/*------------------------------------------------------------
15、left、right・・・画像を簡単に回り込ませる設定
-------------------------------------------------------------*/
/*左に画像、右に文章*/
.left {
  float: left;
  margin: 0 30px 20px 0 !important;
}

/*右に画像、左に画像*/
.right {
  float: right;
  margin: 0 0 20px 30px !important;
}

/*左に画像、右に文章*/
.left_02 {
  float: left;
  margin: 0 30px 20px 0 !important;
}

/*右に画像、左に画像*/
.right_02 {
  float: right;
  margin: 0 0 20px 30px !important;
}

/*640pxでは回り込み解除*/
@media only screen and (max-width: 640px) {
  .left,
  .right {
    float: none;
    margin-right: 0 !important;
    margin-left: 0 !important;
  }
}

/*------------------------------------------------------------
17、ノートのような線を引く
-------------------------------------------------------------*/

.noteline {
  display: inline !important;
  padding-bottom: 0.3em !important;
  border-bottom: 1px dashed #7070ba !important;
  line-height: 2.1em !important;
}

.line_under {
  border-bottom: 1px dotted #ccc;
  padding-bottom: 10px;
  margin-bottom: 1em;
}

.blue_line {
  background: rgba(0, 0, 0, 0) linear-gradient(transparent 60%, #ccf0ff 0%) repeat scroll 0 0;
}

/*------------------------------------------------------------
18、テキストボックスのIME制御（IE＆Firefox）
-------------------------------------------------------------*/

.ime-active {
  ime-mode: active;
}
.ime-inactive {
  ime-mode: inactive;
}
.ime-disabled {
  ime-mode: disabled;
}
