* { margin: 0; padding: 0; }
html { margin: 0; padding: 0; height: 100%;}
body { margin: 0; padding: 0; height: 100%;font-family: 'メイリオ', 'MS UI Gothic', 'trebuchet ms', sans-serif; font-size: 14px; text-align: left; }
.clearfix:after { content: "."; display: block; clear: both; height: 0; font-size: 0; visibility: hidden; }
.clearfix { min-height: 1px; display: inline-block; display: block; }
* html .clearfix { height: 1px; /*\*//*/ height: auto; overflow: hidden; /**/ }
a:focus { outline: none; }
img { border: 0; }
.rt_f { float: right; }
.lt_f { float: left; }
.rt_t { text-align: right; }
.ctr_t { text-align: center; }
.ctr { margin: 0 auto; }
a { text-decoration: underline; color: #15447B; }
a:hover { text-decoration: none; }
a img { border: 0; }
.p_l { position: relative; }
.p_a { position: absolute; }
p { margin: 0; padding: 15px; }
ul { margin: 15px 0; padding: 0; }
li { margin: 5px 0 5px 20px; padding: 0 3px; list-style: circle; }
dl { margin: 15px 0; padding: 0; }
dt { margin: 0; padding: 0; font-weight: bold; }
dd { margin: 0 0 15px 25px; padding: 0; }
.lt_img img { float: left; margin: 0 15px 15px 0; }
.rt_img img { float: right; margin: 0 0 15px 15px; }
.m0p0 { margin: 0; padding: 0; }
.mt10 { margin-top: 10px; }
.mt100 { margin-top: 70px; }
.mt150 { margin-top: 150px; }
.mt-20 { margin-top: -20px; }
.ml40 { margin-left: 20px; _margin-left: 10px; }
.ml50 { margin-left: 30px; _margin-left: 15px; }
.ml100 { margin-left: 100px; }
.mb300 { margin-bottom: 300px; }
.pt100 { padding-top: 100px; }
.pb100 { padding-bottom: 100px; }
.w120 { width: 120px; }


h1 { margin: 0; padding: 0; font-size: 12px; font-weight: normal; text-align: right; }
h2 { margin: 0 0 20px -31px; padding: 10px 0 10px 30px; border-bottom: 2px solid #666; color: #252523; }
h3 { margin: 0; padding: 0; }