@charset "utf-8";
html { -webkit-text-size-adjust: none; height: 100%; }
body { line-height: 1; margin: 0; }
body, div, span, h1, h2, h3, h4, h5, h6, p, blockquote, pre, address, code, dl, dt, dd, ol, ul, li, fieldset, form, legend, table, tbody, thead, tfoot, tr, th, td { padding: 0; margin: 0; word-break: break-all; font-size: 1em; }
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section, a { display: block }
img { border: 0; vertical-align: top; }
hr { display: block; height: 1px; border: 0; border-top: 1px solid #cccccc; margin: 1em 0; padding: 0; }
ul, ol { list-style: none; padding: 0; }
ul, li { padding: 0; list-style: none; }
html, body { overflow-x: hidden; width: 100%;}
i { font-style: normal; margin: 0; padding: 0; display: block; }
img { max-width: 100%; height: auto; }
a, a:hover { text-decoration: underline; color: #000; }
table { border-collapse: collapse; border-spacing: 0; table-layout: fixed; }
body { font-size: 75%; line-height: 1.8; font-family: "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif; -webkit-text-size-adjust: none; text-align: center; color: #000; position: relative; max-width: 640px; margin: 0 auto;
}
body * { box-sizing: border-box; -webkit-box-sizing: border-box; -moz-box-sizing: border-box; -ms-box-sizing: border-box; }
/* clearfix */
.cf { }
.cf:after { content: ""; display: block; clear: both; height: 0; overflow: hidden; }
* html .cf { zoom: 1 }
*:first-child+html .cf { zoom: 1 }
.f-mincho { font-family: "Times New Roman", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "メイリオ", Meiryo, serif }
.on a img, .op { -webkit-transition: all 0.3s ease-in-out 0; -moz-transition: all 0.3s ease-in-out 0; -ms-transition: all 0.3s ease-in-out 0; transition: all 0.3s ease-in-out 0; }
.on a img, .op { }
.on a:hover img, .op:hover { filter: alpha(opacity=70); -ms-filter: "alpha( opacity=70)"; -moz-opacity: 0.7; -webkit-opacity: 0.7; opacity: 0.7; }

body { max-width: 640px; width: 100%; margin: 0 auto; }

.component-wrap {
    padding: 0 0 60px 0;
    background: #ffffff;
}
.component-wrap .component-ttl {
    background: #686868;
    font-size: 20px;
    font-weight: normal;
    color: #ffffff;
    letter-spacing: 2px;
    padding: 12px 0;
    text-align: center;
    position: relative;
}
.component-wrap .post-ttl {
    background: #ffffff;
    border-width: 20px 0 20px 0;
    border-style: solid;
    border-color: #eae9e9;
    text-align: center;
    font-size: 15px;
    color: #606060;
    padding: 14px 0;
    line-height: 1.6;
    font-weight: bold;
}
.component-wrap .component-ttl .btn-top {
    display: block;
    width: 40px;
    height: 40px;
    position: absolute;
    top: 6px;
    right: 10px;
    color: #ffffff;
}
.component-wrap .component-ttl .btn-top span {
    display: inline-block;
    vertical-align: middle;
}
.component-wrap .component-ttl .btn-top span:before {
    content: '\002715';
    display: inline-block;
    vertical-align: middle;
    font-size: 20px;
    padding: 0 0 0 6px;
}
.component-inner {
    padding: 16px 16px 0 16px
}
.component-inner table {
    display: block;
    width: 100%;
}
.component-inner table thead,
.component-inner table tbody {
    width: 100%;
    display: table;
}
.component-inner table thead tr {
    border-bottom: 1px solid #dcdcdc;
    color: #646464;
}
.component-inner table tr th,
.component-inner table tr td {
    font-size: 12px;
    padding: 10px 0;
}
.component-inner table thead tr th,
.component-inner table tbody tr td {
    width: 30%;
    text-align: left;
}
.component-inner table thead tr th:first-child,
.component-inner table tbody tr td:first-child {
    width: 70%;
    text-align: left;
}
@media screen and (max-width: 480px) {
    .component-inner table tbody tr td:first-child {
        width: 68%;
        text-align: left;
        padding-right: 2%;
    }
}
.component-inner table tbody tr {
    border-bottom: 1px dashed #dcdcdc
}
.component-inner table tbody tr td {
    color: #646464
}
.component-wrap .btn-wrap {

}
.component-wrap .btn-wrap .btn {
    display: inline-block;
    vertical-align: middle;
    cursor: pointer;
    background: #b3b3b3;
    padding: 5px 46px;
    color: #ffffff;
    font-size: 12px;
    margin: 40px auto 0 auto;
}
@media screen and (max-width: 480px) {
    .component-wrap .btn-wrap {

    }
    .component-wrap .btn-wrap .btn {
        padding: 5px 80px;
        font-size: 130%;
    }
}
.component-wrap .btn-wrap .btn a {
    text-decoration: none;
    color: #ffffff;
}
.component-wrap .btn-wrap .btn span:after {
    content: '\002715';
    display: inline-block;
    vertical-align: middle;
    font-size: 10px;
    padding: 0 0 0 6px;
}