@charset "utf-8";

html { overflow-y: scroll;}

/* ---------------------------------------------
    img
--------------------------------------------- */
img {
    max-width: 100%;
    height: auto;
}

/* ---------------------------------------------
    1 - Base font
--------------------------------------------- */
body {
    font-size: 14px;
    line-height: 1.5;
    color: #222;
    text-align: left;
    font-family: "ヒラギノ明朝 ProN W6", "HiraMinProN-W6", "HG明朝E", "ＭＳ Ｐ明朝", "MS PMincho", "MS 明朝", serif;
}

/* ---------------------------------------------
    レスポンシブ
--------------------------------------------- */

img {
    max-width: 100%;
    height: auto;
}

a:hover {
    transition: 0.8s;
    -webkit-transition: 0.8s;
    -moz-transition: 0.8s;
    -o-transition: 0.8s;
    -ms-transition: 0.8s;
}

.wHalf  { width: 48%;}
.wTri   { width: 33%;}
.wQuart { width: 24%;}
.wFull  { width: 99.9%;}
.wMax   { width: 100%;}

/* table */
.tw03 { width:  3% !important;}
.tw05 { width:  5% !important;}
.tw10 { width: 10% !important;}
.tw13 { width: 13% !important;}
.tw15 { width: 15% !important;}
.tw20 { width: 20% !important;}
.tw25 { width: 25% !important;}
.tw30 { width: 30% !important;}
.tw35 { width: 35% !important;}
.tw40 { width: 40% !important;}
.tw45 { width: 45% !important;}
.tw50 { width: 50% !important;}

/* ---------------------------------------------
    汎用クラス
--------------------------------------------- */
/* ---------------------------------------------
    0 - radius
--------------------------------------------- */



/* ---------------------------------------------
    font style
--------------------------------------------- */
.fNormal  { font-weight: normal;}
.fBold   { font-weight: bold;}
.fItalic { font-style: italic;}

.fSSS { font-size: 70%;}
.fSS  { font-size: 78%;} /* base 12px =  8px */
.fS   { font-size: 85%;} /* base 12px = 10px */
.fM   { font-size: 100%;}
.fL   { font-size: 115%;}/* base 12px = 14px */
.fLL  { font-size: 130%;}/* base 12px = 16px */
.fLLL { font-size: 143%;}/* base 12px = 18px */
sup {
    font-size: 78%;
    vertical-align: top;
}
sub {
    font-size: 78%;
    vertical-align: baseline;
}

/* ---------------------------------------------
    3 - text color
--------------------------------------------- */

.fRed {
    color: #ff1720;
}
.fGray {
    color: #999999;
}

a {
    color: #147fc1;
    text-decoration: none;
    outline: none;
}

a:hover {
    text-decoration: underline;
}


/* ---------------------------------------------
    margin
--------------------------------------------- */
.mt00 { margin-top:  0   !important;}
.mt05 { margin-top:  5px !important;}
.mt10 { margin-top: 10px !important;}
.mt12 { margin-top: 12px !important;}
.mt15 { margin-top: 15px !important;}
.mt20 { margin-top: 20px !important;}
.mt25 { margin-top: 25px !important;}
.mt30 { margin-top: 30px !important;}
.mt35 { margin-top: 35px !important;}
.mt40 { margin-top: 40px !important;}
.mt45 { margin-top: 45px !important;}
.mt50 { margin-top: 50px !important;}

.mr00 { margin-right:  0   !important;}
.mr05 { margin-right:  5px !important;}
.mr10 { margin-right: 10px !important;}
.mr12 { margin-right: 12px !important;}
.mr15 { margin-right: 15px !important;}
.mr20 { margin-right: 20px !important;}
.mr25 { margin-right: 25px !important;}
.mr30 { margin-right: 30px !important;}
.mr35 { margin-right: 35px !important;}
.mr40 { margin-right: 40px !important;}
.mr45 { margin-right: 45px !important;}
.mr50 { margin-right: 50px !important;}

.mb00 { margin-bottom:  0   !important;}
.mb05 { margin-bottom:  5px !important;}
.mb10 { margin-bottom: 10px !important;}
.mb12 { margin-bottom: 12px !important;}
.mb15 { margin-bottom: 15px !important;}
.mb20 { margin-bottom: 20px !important;}
.mb25 { margin-bottom: 25px !important;}
.mb30 { margin-bottom: 30px !important;}
.mb35 { margin-bottom: 35px !important;}
.mb40 { margin-bottom: 40px !important;}
.mb45 { margin-bottom: 45px !important;}
.mb50 { margin-bottom: 50px !important;}
.mb100 { margin-bottom: 100px !important;}

.ml00 { margin-left:  0   !important;}
.ml05 { margin-left:  5px !important;}
.ml10 { margin-left: 10px !important;}
.ml12 { margin-left: 12px !important;}
.ml15 { margin-left: 15px !important;}
.ml20 { margin-left: 20px !important;}
.ml25 { margin-left: 25px !important;}
.ml30 { margin-left: 30px !important;}
.ml35 { margin-left: 35px !important;}
.ml40 { margin-left: 40px !important;}
.ml45 { margin-left: 45px !important;}
.ml50 { margin-left: 50px !important;}


/* ---------------------------------------------
    padding
--------------------------------------------- */
.pt00 { padding-top:  0   !important;}
.pt05 { padding-top:  5px !important;}
.pt10 { padding-top: 10px !important;}
.pt12 { padding-top: 12px !important;}
.pt15 { padding-top: 15px !important;}
.pt20 { padding-top: 20px !important;}
.pt25 { padding-top: 25px !important;}
.pt30 { padding-top: 30px !important;}
.pt35 { padding-top: 35px !important;}
.pt40 { padding-top: 40px !important;}
.pt45 { padding-top: 45px !important;}
.pt50 { padding-top: 50px !important;}

.pr00 { padding-right:  0   !important;}
.pr05 { padding-right:  5px !important;}
.pr10 { padding-right: 10px !important;}
.pr12 { padding-right: 12px !important;}
.pr15 { padding-right: 15px !important;}
.pr20 { padding-right: 20px !important;}
.pr25 { padding-right: 25px !important;}
.pr30 { padding-right: 30px !important;}
.pr35 { padding-right: 35px !important;}
.pr40 { padding-right: 40px !important;}
.pr45 { padding-right: 45px !important;}
.pr50 { padding-right: 50px !important;}

.pb00 { padding-bottom:  0   !important;}
.pb05 { padding-bottom:  5px !important;}
.pb10 { padding-bottom: 10px !important;}
.pb12 { padding-bottom: 12px !important;}
.pb15 { padding-bottom: 15px !important;}
.pb20 { padding-bottom: 20px !important;}
.pb25 { padding-bottom: 25px !important;}
.pb30 { padding-bottom: 30px !important;}
.pb35 { padding-bottom: 35px !important;}
.pb40 { padding-bottom: 40px !important;}
.pb45 { padding-bottom: 45px !important;}
.pb50 { padding-bottom: 50px !important;}

.pl00 { padding-left:  0   !important;}
.pl05 { padding-left:  5px !important;}
.pl10 { padding-left: 10px !important;}
.pl12 { padding-left: 12px !important;}
.pl15 { padding-left: 15px !important;}
.pl20 { padding-left: 20px !important;}
.pl25 { padding-left: 25px !important;}
.pl30 { padding-left: 30px !important;}
.pl30 { padding-left: 35px !important;}
.pl40 { padding-left: 40px !important;}
.pl45 { padding-left: 45px !important;}
.pl50 { padding-left: 50px !important;}


/* ---------------------------------------------
    inline align
--------------------------------------------- */
.inlineL { text-align: left;}
.inlineC { text-align: center;}
.inlineR { text-align: right;}


/* ---------------------------------------------
    vertical align
--------------------------------------------- */
.vlineT { vertical-align: top    !important;}
.vlineM { vertical-align: middle !important;}
.vlineB { vertical-align: bottom !important;}

/* ---------------------------------------------
    4 - clearfix
--------------------------------------------- */
.clearfix {
    display: block;
    min-height: 1%;
    overflow:hidden;
}
.clearfix:after {
    clear: both;
    content:".";
    display: block;
    height: 0;
    visibility: hidden;
}
* html .clearfix {
    height: 1%;
    /*\*//*/
    height: auto;
    overflow: hidden;
    /**/
}

/* ---------------------------------------------
    5 - float
--------------------------------------------- */
.fltL {
    display: inline;
    float: left;
}
.fltR {
    display: inline;
    float: right;
}
.ft {
    overflow: hidden;
    zoom: 1;
}

/* ---------------------------------------------
    tools
--------------------------------------------- */
.clear {
    clear: both;
}

.block  { display: block;}
.inline { display: inline;}
.hide   { display: none;}

.nobg {
    background: none !important;
}

.underLine { text-decoration: underline;}
.noLine    { text-decoration: none;}
