.cont {
    margin-top: .5rem !important;
    margin-bottom: .5rem !important;
}

#magazine {
    font-size: 22px;
}

@media (max-width: 769px) {
    #magazine {
        font-size: 10.6666666667px;
    }

    #cont4 li .item_read .ttl img {
        height: 3.1em;
    }
}

#main {
    position: relative;
}

#bg-wrap {
    width: 0;
    height: 0;
    top: 0;
    position: fixed;
}

#bg-wrap.over {
    position: absolute;
    left: 0;
    bottom: 0;
    top: auto;
}

#bg-wrap .bg-inner {
    width: 100vw;
    height: 100vh;
    overflow: hidden;
}

#bg-wrap.over .bg-inner {
    -webkit-transform: translateY(-100%);
    transform: translateY(-100%);
}

#bg-wrap .bg-inner .bg {
    width: 100vw;
    height: 100%;
}

#bg-wrap .bg-inner .bg img {
    display: block;
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
}

@media (min-width: 769px) {
    #bg-wrap .bg-inner {
        width: calc(100vw - 185px - 83px);
    }

    #bg-wrap .bg-inner .bg {
        margin-left: -185px;
        margin-right: -83px;
    }
}

#magazine {
    position: relative;
}

/* --------------------
   #ban0
-------------------- */
#ban0 {
    max-width: 750px;
    margin: 0 auto;
}

/* --------------------
   #cont0
-------------------- */
#cont0 {
    background-color: #FFF;
    max-width: 750px;
    margin: 0 auto;
}

#cont0 p {
    margin-bottom: 0;
}

/* --------------------
   #toc
-------------------- */
#toc ul {
    display: block;
    margin-bottom: 0;
}

#toc ul li {
    padding: 1em 0;
}

#toc ul li:last-child {
    padding-bottom: 0;
}

/* --------------------
   Custom CSS
-------------------- */
.bg-none {
    background: transparent !important;
}

.mx-0 {
    margin-right: 0 !important;
    margin-left: 0 !important;
}

.pt-1 {
    padding-top: 1em;
}

.pt-0 {
    padding-top: 0;
}


.pt-2 {
    padding-top: 2em;
}

.pt-3 {
    padding-top: 3em;
}

.mt-0 {
    margin-top: 0 !important;
}

.mt-2 {
    margin-top: 2em !important;
}

.c-container {
    max-width: 750px;
    padding-right: 2em;
    padding-left: 2em;
    margin: 0 auto;
}

@media (max-width: 768px) {
    .px-20 {
        padding-right: 2em;
        padding-left: 2em;
    }
}

.inBox .inBox_body {
    margin: 0;
}

.articleHeader {
    max-width: 750px;
    margin: 0 auto;
}

.cards {
    margin: 0;
}

.c-banner {
    background-color: #FFF;
    max-width: 750px;
    margin: 0 auto;
    padding: 1.5em 2em;
}

.c-banner .c-banner__img {
    max-width: 30.0909090909em;
    margin: 0 auto;
}

.card {
    max-width: unset;
}

.card .card_msg {
    padding: 0;
    max-width: 26.0909090909em;
    margin: 0 auto;
}

.card .card_header {
    padding-right: 2.0454545455em;
    padding-left: 2.0454545455em;
}

.card .txtBox,
.card .priceBox {
    margin-right: 2.0454545455em;
    margin-left: 2.0454545455em;
}

.card .btnBox {
    margin-top: 1.3636363636em;
    margin-right: 1.3636363636em;
    margin-left: 1.3636363636em;
}

.card .card_header .ttl {
    color: #083D67;
    font-size: 1.8181818182em;
    min-height: auto;
    margin: 0;
}

.card .card_header .imgBox {
    width: 15.0454545455em;
    top: 0;
    height: auto;
}

.card .card_header .imgBox.imgBox--small {
    width: 10.1818181818em;
    top: calc(25 * 1em / 22);
    right: calc(50 * 1em / 22);
}

.card .txtBox .ttl {
    font-size: 1.4545454546em;
}

.card .txtBox .sub_ttl {
    font-size: 1.0909090909em;
}

.card .priceBox .price .num {
    font-size: 2.7272727273em;
}

.card .priceBox .tax {
    font-size: 1.0909090909em;
}

.card .priceBox .off {
    font-size: 1.9090909091em;
}

.card .priceBox .discount .num {
    font-size: 1.9090909091em;
}

.card .priceBox .discount+.price .num {
    font-size: 2.7272727273em;
}

.card .subscription {
    font-size: 1.3636363636em;
}

.card .buyBtn {
    font-size: 1.6363636364em;
}

.card .note {
    font-size: 1.2727272727em;
    margin-bottom: 0;
}

#cont4 li .item_read p {
    font-size: 1.4545454546em;
}

#cont4 .items .sect {
    padding-top: 0;
    padding-bottom: 0;
}

#cont4 .items .sect:not(:last-child) {
    margin-bottom: 2.7272727273em;
}

#cont4 li .imgBox div {
    font-size: 1.2727272727em;
}

.card .priceBox {
    margin-top: 1.8181818182em;
}

#cont1 .inBox_body,
#cont2 .inBox_body,
#cont3 .inBox_body {
    border-top: none;
    position: relative;
    padding-top: 1.8181818182em;
}

.cont5  .inBox_body {
    border-top: none;
}

#cont1 .inBox_body::before,
#cont2 .inBox_body::before,
#cont3 .inBox_body::before {
    content: "";
    width: 26.0909090909em;
    height: 0.1818181818em;
    position: absolute;
    top: 0;
    right: 0;
    left: 0;
    margin: 0 auto;
}

#cont1 .inBox_body::before {
    background-color: #00a63d;
}

#cont2 .inBox_body::before {
    background-color: #008cd6;
}

#cont3 .inBox_body::before {
    background-color: #ef7f3a;
}

.badge {
    background-color: transparent !important;
    margin-right: 0 !important;
    padding: 0 !important;
}