@charset "utf-8";
h3.subttl {
    display: block;
    font-size: 2.6rem;
    padding: 2% 0;
    position: relative;
    text-align: center;
    margin-bottom: 10px;
}

h3.subttl::first-letter {
    color: #ca2c2c;
}

h3.subttl span,
h4.menu span {
    font-size: 1.2rem;
    font-weight: normal;
    letter-spacing: 0.15em;
    margin-left: 5px;
    display: block;
}

h4.menu {
    background: url("/img/bg_bar.jpg") repeat scroll left center;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.05);
    display: block;
    font-size: 1.6rem;
    font-weight: bold;
    margin-top: 10px;
    padding: 10px 0;
    position: relative;
    text-align: center;
    border: 1px solid #ce97a4;
    color: #c20000;
}

h5.menu {
    font-size: 1.8rem;
    font-weight: bold;
    text-align: left;
    padding-left: 2%;
}

.conceptBox {
    margin: 0 auto;
    padding: 2% 0 10%;
    overflow: hidden;
    text-align: center;
    max-width: 768px;
    width: 100%;
    background: rgba(0, 0, 0, 0) url("/img/bg_concept_b.png") no-repeat scroll center bottom / 100% auto;
}

.conceptBox p {
    font-size: 1.4rem;
    line-height: 1.6;
    text-align: left;
    padding: 2%;
    width: 90%;
    margin: auto;
    text-shadow: 0 0 10px #fff, 0 0 15px #fff;
}

.conceptBox h3 {
    font-size: 2rem;
    color: #ca2c2c;
    margin-bottom: 25px;
    font-weight: bold;
}

.systemBox {
    text-align: left;
    width: 96%;
    margin: 0 auto 5%;
    overflow: hidden;
}

.fullBox {
    width: 100%;
    margin-bottom: 3%;
    text-align: center;
}

.systemBox p {
    font-size: 1.6rem;
    line-height: 2;
    margin-top: 1%;
}

.systemBox p strong {
    font-weight: bold;
}

.systemBox .caution {
    font-size: 1.2rem;
    border: 1px solid #ccc;
    padding: 1%;
    text-align: center;
    margin-bottom: 20px;
}

.systemBox .caution_r {
    font-size: 1.2rem;
    border: 1px solid #fbccdb;
    padding: 1%;
    text-align: center;
    margin-bottom: 20px;
    color: #ca2c2c;
}

.rankbg {
    background-repeat: no-repeat;
    background-position: left center;
    background-size: contain;
}

.anchorlist li a {
    border: 1px solid #ce97a4;
    box-sizing: border-box;
    display: inline-block;
    float: left;
    font-size: 1.4rem;
    padding: 13px 0;
    text-decoration: none;
    transition: all 0.5s ease 0s;
    width: 32.333%;
    text-align: center;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.05);
    margin: 0.5%;
    color: #ca2c2c;
    font-weight: bold;
    background: rgba(0, 0, 0, 0) url("/img/bg_glist.jpg") repeat scroll left center;
    border: 1px solid #ce97a4;
}

.anchorlist li:last-child a {
    /*border-right: 1px solid #eee;*/
}


/*.anchorlist li a:hover {
    background: #fbccdb none repeat scroll 0 0;
    color:#58443d;
    border: 1px solid #fff;
}*/

table {
    border: medium none;
    border-collapse: collapse;
    line-height: 1.8;
    margin-top: 5px;
    text-align: left;
    width: 100%;
    margin-bottom: 1%;
}

table tr {
    border-bottom: 1px dotted #ccc;
}

table th {
    font-size: 2.6rem;
    padding: 5px 0;
    width: 50%;
}

table td {
    font-size: 2.6rem;
    padding: 5px 2% 5px 0;
    vertical-align: top;
    width: 48%;
    text-align: right;
}

table th span,
table td span {
    font-size: 1.4rem;
}

span.taxin {
    display: block;
}

table.pricelist {}

table.pricelist th {
    font-size: 1.8rem;
}

table.pricelist td {
    font-size: 1.8rem;
}

.playlist {
    border: 1px solid #f58aad;
    padding: 2%;
}

.listframe {
    padding: 0 2% 2%;
    border: 1px solid #ccc;
    margin-top: 5px;
    text-align: left;
    background: rgba(255, 255, 255, 0.6);
}

.listframe .supplement {
    text-align: left;
    font-size: 1.3rem;
    padding: 1% 3%;
}

.card {
    max-width: 412px;
    margin: 1% auto 2%;
}

.coin {
    width: 25px;
    vertical-align: middle;
}

.price-card {
    max-width: 782px;
    margin: 1% auto 2%;
}

p.creditcall {
    font-size: 2.4rem;
    font-weight: bold;
    text-align: center;
}

.areamap {
    max-width: 870px;
    margin: 1% auto 2%;
}

.about {
    text-align: left;
}

p.shoptel {
    font-size: 3rem;
    font-weight: bold;
}

.systemBox .caution_hote {
    border: 1px solid #ccc;
    font-size: 1.3rem;
    margin-bottom: 20px;
    padding: 2%;
    text-align: center;
}


/*Agreement*/

ol.listmark {
    margin: 1em 0;
    padding: 0 2% 1% 8.5%;
    text-align: left;
}

ol.listmark li {
    font-size: 1.4rem;
    padding: 1% 0;
    list-style-type: decimal;
}

@media screen and (max-width: 768px) {
    h3.subttl {
        font-size: 2.4rem;
    }
    h4.menu,
    h5.menu {
        font-size: 1.6rem;
    }
    .systemBox {
        margin-top: 15px;
        width: 94%;
        border: none;
        padding: 0 3%;
    }
    .ajst {
        margin-top: 0px;
    }
    .systemBox p.creditcall {
        font-size: 1.8rem;
    }
    table th,
    table td {
        font-size: 1.6rem;
    }
    table.pricelist th,
    table.pricelist td {
        font-size: 1.5rem;
    }
    table.pricelist th span,
    table.pricelist td span {
        font-size: 1.2rem;
    }
    .systemBox p {
        font-size: 1.4rem;
        line-height: 1.6;
        margin-top: 15px;
    }
}

@media screen and (max-width: 480px) {
    .fullBox {
        text-align: left;
    }
}