/**
 * レスポンシブ対応
 */
@media screen and (max-width: 480px) {
    /*--- 表示領域が480px以上の場合に適用するスタイル ---*/
}

@media screen and (max-width: 768px) {
    /*--- 表示領域が768px以下の場合に適用するスタイル ---*/
}

@media screen and (max-width: 1000px) {
    /*--- 表示領域が1000px以下の場合に適用するスタイル ---*/
    /**
     * レスポンシブ
     */
    .visible-lg {
        display: none !important;
    }

    .visible-md {
        visibility: visible !important;
    }

    /**
     * common
     */
    body {
        font-size: 3vw !important;
    }

    p {
        font-size: 3.5vw !important;
        word-wrap: break-word !important;
    }

    a {
        font-size: 100%;
    }

    nav a,
    nav a:visited{
        font-size: 3vw !important;
        color: #fff;
    }

    nav > ul {
        background-color: #222;
        color: #fff;
        vertical-align: middle;
        text-align: justify
    }

    nav > ul > li {
        display: inline-block;
        font-size: 3vw;
        padding: 2.5vw 2.0vw;
        width: 21%;
        text-align: center;
        vertical-align: middle;
        border-left: solid 1px #4e4e4e;
        letter-spacing: 0.05em;
    }

    .icon-bar {
        background-color: #fff;
        display: block;
        width: 8vw;
        height: 1vw;
        margin-bottom: 1vw;
    }

    .btn-menu {
        margin: 0;
        padding: 1.5vw 1.5vw 1.5vw;
        background-color: #e15d20;
        width: 11%;
        height: 7.6vw;
    }

    .btn-more {
        padding: 3vw 24vw !important;
    }

    .btn-comment {
        display: inline-block;
        font-size: 3.5vw !important;
        color: #666666 !important;
    }

    .btn-comment img {
        margin-right: 1.5vw;
        width: 15%;
    }

    .btn-write,
    .btn-write:hover {
        padding: 2.5vw 3vw !important;
    }

    header {
        border: none;
        padding-bottom: 0;
        margin: 4vw 0;
    }

    .content {
        width: 100% !important;
        padding: 0;
    }

    .content p {
        font-size: 3.5vw !important;
        line-height: 1.5em !important;
    }

    .sidebar {
        width: 100% !important;
    }

    .list-data {
        float: left;
    }

    .list-data:nth-child(even) {
        float: left;
    }

    h3, .h3 {
        font-size: 5vw !important;
        font-weight: bold !important;
        border-left: 1.5vw solid #e15d20 !important;
        padding-left: 2.5vw !important;
        margin-bottom: 0 !important;
    }

    h2, .h2 {
        font-size: 6vw !important;
        font-weight: bold;
        /*padding-left: 2.5vw;*/
        margin-bottom: 3vw;
    }

    header .logo {
        margin-bottom: 8vw;
    }

    h1 img {
        width: 40vw;
    }

    .top h1 img {
        width: 40vw;
    }

    .logo {
        margin: 0 3vw;
    }

    header .logo {
        margin-bottom: 2vw;
    }

    header .search .keyword {
        margin: 0;
        width: auto !important;
    }

    .breadcrumb {
        margin: 0 3vw 3vw;

    }

    .breadcrumb li,
    .breadcrumb li a {
        font-size: 3vw;
    }

    .w100p {
        width: 100%;
    }

    .label {
        background-color: #e1e1e1;
        font-size: 3vw;
        display: inline-block;
        padding: 0.1vw 0.5vw;
        margin: 0 1vw 1vw 0;
    }

    /**
     * header
     */
    .top header h1 {
        margin: 0 0 3vw;
    }

    /**
     * Form
     */
    .search .keyword {
        width: 68%;
        font-size: 3vw;
        height: 8vw;
        padding: 0 0 0 8vw;
        background-size: 3vw;
        background-position: 3vw;
    }

    .search .btn {
        width: 20%;
        font-size: 3vw;
        font-weight: bold;
        height: 8vw;
        padding: 0.5vw 2.5vw 0.5vw 4.5vw;
    }

    .popular-keyword {
        font-size: 3vw;
        color: #666;
        font-weight: bold;
        margin: 3vw 0 0;
        line-height: 1.5;
    }

    .popular-keyword .title {
        display: block;
    }

    /**
     * Toggle Menu
     */
    .menu {
        display: none;
        width: 100%;
        height: 100%;
        text-align: center;
        position: fixed;
        top: 0;
        z-index: 100;
        background: #efefef;
    }

    .menu > ul li {
        text-align: left;
        padding: 4vw 1vw 4vw 5vw;
        background-color: #fff;
        border-bottom: 2px solid #e1e1e1;
    }

    .menu > ul li a,
    .menu > ul li a:visited{
        font-size: 4.5vw !important;
        color: #000;
    }

    .menu > ul li a:after {
        content: '　';
        background: url(../img/icon_list_link.png) no-repeat right center;
        margin: 0 3vw;
        float: right;
        display: inline-block;
        width: 5%;
        height: 5vw;
        background-size: 3vw;
    }

    .menu-group2 {
        margin-top: 1vw;
    }

    .menu-group2 li:first-child {
        border-top: 2px solid #e1e1e1;
    }

    .close-menu {
        color: #d5d2d2 !important;
        display: block;
        width: 60%;
        margin: 5vw auto;
        background-color: #f6f6f6;
        padding: 2vw 3vw 1vw;
    }

    .close-menu .icon {
        width: 12%;
        vertical-align: middle;
        margin-bottom: 5.8vw;
        margin-right: 2vw;
    }

    .close-menu .icon-batsu:before,
    .close-menu .icon-batsu:after {
        background-color: #d5d2d2;
    }

    .icon {
        display: inline-block;
        width: 100%;
        height: auto;
        margin-right: 20px;
        margin-bottom: 4.5vw;
        position: relative;
    }

    .icon-batsu {
        margin-bottom: 4.6vw;
    }

    .icon-batsu:before, .icon-batsu:after {
        display: block;
        content: '';
        width: 0.5vw;
        height: 4.5vw;
        -webkit-transform: rotate(-45deg);
        -o-transform: rotate(-45deg);
        transform: rotate(-45deg);
        background-color: #fff;
        border-radius: 10px;
        position: absolute;
        top: 0;
        left: 3.7vw;
    }

    .icon-batsu:after {
        -webkit-transform: rotate(45deg);
        -o-transform: rotate(45deg);
        transform: rotate(45deg);
    }

    /**
     * ページナビ
     */
    .page-navi {
        margin: 0 0 2vw;
        padding: 4vw 2vw 1vw;
        text-align: center;
    }

    .result .page-navi {
        padding: 0 2vw 1vw;
    }

    .page-navi li {
        display: inline;
        margin: 0;
        padding: 0;
        vertical-align: middle;
    }

    .page-navi li span,
    .page-navi li a {
        display: inline-block;
        margin-bottom: 5px;
        padding: 1vw 2vw;
        background: #efefef;
        text-decoration: none;
        vertical-align: middle;
        font-size: 4vw !important;
    }

    .page-navi li a img {
        width: 2vw;

    }

    .page-navi li span,
    .page-navi li a:hover {
        background: #000;
        color: #fff;
    }

    .page-navi li.pre a,
    .page-navi li.post a {
        background: none;
        vertical-align: inherit;
    }

    .page-navi ul {
        display: inline-block;
        margin-left: 0 !important;
        margin-top: 1vw;
    }

    /**
     * Block
     */
    .ad img {
        width: 100%;
    }

    .new,
    .category,
    .ranking,
    .popular {
        margin: 3vw 0 0;
    }

    .new h3,
    .category h3,
    .ranking h3,
    .popular h3 {
        margin: 0 3vw;
    }

    .top3 {
        width: 100%;
    }

    input[type=radio] {
        width: 3vw;
        height: 3vw;
    }

    /**
     * Box
     */
    .box {
        overflow: hidden;
        margin: 3vw 3vw 0;
    }

    .box h4 {
        background-color: #efefef;
        padding: 3vw 3vw 3vw 4vw !important;
        font-size: 4.5vw;
        font-weight: bold;
    }

    .box .inner-box {
        font-size: 3vw;
        padding: 3vw;
        overflow: hidden;
    }

    .box li {
        padding: 0 3vw 0 9vw;
        font-size: 4vw;
        background-size: 4vw;
        background-position: 2vw 1vw;
    }

    .box li .date {
        display: block;
        font-size: 3vw;
        color: #666666;
    }

    .box a {
        color: #222;
    }

    .box .next a {
        font-size: 4vw;
    }

    /**
     * Sidebar
     */
    .sidebar .login,
    .sidebar .information,
    .sidebar .ranking,
    .sidebar .calendar,
    .sidebar .recommend,
    .sidebar .register,
    .sidebar .profile,
    .sidebar .archive {
        margin-bottom: 5vw;
    }

    .sidebar .top5 {
        width: 100%;
    }

    .sidebar .list-data {
        border: none;
    }

    .sidebar .list-data:after {
        background: none;
        margin: 0;
        width: 0;
        height: 0;
    }

    .sidebar .list-data:first-child {
        margin-top: 2vw;
        border-top: none;
    }

    .sidebar .top5 .list-data .rank {
        margin: 0 !important;
        width: 15%;
        text-align: left;
    }

    .sidebar .top5 .list-data p.title {
        width: 85% !important;
        float: left;
        font-size: 4vw !important;
    }

    .sidebar .ranking .next a {
        font-size: 4vw;
    }

    .sidebar .ranking-cat h5 {
        font-size: 4vw;
        font-weight: bold;
        padding: 7vw 3vw 6vw 19vw;
        margin: 0;
        border-bottom: solid 1px #d5d4d4;
        background: url(../img/icon_crown.png) no-repeat 5vw 3vw;
        background-size: 10vw;
    }

    .sidebar .ranking-cat li {
        font-weight: bold;
        margin-bottom: 1vw;
        padding: 0 3vw;
    }

    .sidebar .ranking-cat li img {
        width: 12%;
    }

    .sidebar .ranking-cat li span {
        display: inline-block;
        vertical-align: middle;
        font-size: 4vw;
        font-weight: bold;
        margin-left: 3vw;
    }

    .sidebar .archive li {
        margin-bottom: 2vw !important;
    }

    .sidebar .archive li h5 {
        font-size: 4vw;
        margin-bottom: 1vw !important;
    }

    .sidebar .archive .created {
        font-size: 3.5vw;
        margin-top: 0 !important;
    }

    /**
     * Sidebar -> Register
    */
    .sidebar .register span {
        font-size: 3.5vw !important;
        margin: 2vw 0 !important;
        letter-spacing: 0.04em !important;
    }

    .sidebar .register span a {
        font-size: 3.5vw !important;

    }

    .sidebar .register form.submit {
        margin-top: 4vw !important;
    }

    .sidebar .register .mail {
        margin-bottom: 3vw !important;
    }

    /**
     * Sidebar -> Profile
     */
    .sidebar .profile .inner-box .profile-image {
        text-align: left;
        float: left;
        width: 30%;
        height: 40vw;
    }

    .sidebar .profile .inner-box .profile-image img {
        width: 90%;
        margin-top: 5vw;
    }

    .sidebar .profile .inner-box p.name {
        font-weight: bold;
        font-size: 4vw !important;
        text-align: left;
        margin-bottom: 1vw;

    }

    .sidebar .profile .inner-box p {
        line-height: 1.3;
    }

    .sidebar .profile .inner-box p.commentArea {
        display: inline-block;
    }

    .sidebar .profile .inner-box p a {
        color: #e15d20;
        font-size: 3.5vw;
    }

    .sidebar .profile .inner-box .more {
        font-size: 3.5vw;
    }

    /**
     * Sidebar -> Recommend
     */
    .sidebar .recommend li {
        padding: 0;
        overflow: hidden;
    }

    .sidebar .recommend img {
        width: 10% !important;
        margin: 1vw 2vw 3vw 0 !important;
    }

    .sidebar .recommend p .reader {
        font-size: 3vw !important;
        color: #666666 !important;
        display: block !important;
    }

    #articleCalenderTable th,
    #articleCalenderTable td {
        padding: 2vw;
    }

    .sidebar .calendar .inner-box {
        padding: 20px 40px;
    }

    /**
     * Content
     */
    .archive h4 {
        background-color: #efefef;
        padding: 4vw 3vw 9vw 3vw;
        font-size: 5vw;
        font-weight: bold;
    }

    .archive h4 small {
        margin: 2vw 0;
    }

    .archive h4 small span.active {
        font-size: 3vw;
        background-color: #fff;
        font-weight: normal;
        padding: 1vw 3vw;
    }

    .archive h4 small a {
        font-size: 3vw;
        font-weight: bold;
    }

    .one-column .content {
        width: 100%;
        padding: 0;
        margin: 0;
    }

    .two-column .content {
        width: 100%;
        padding: 0;
        margin: 0;
    }

    .two-column .content h2,
    .two-column .content > p,
    .two-column .content .support,
    .two-column .content .archive {
        margin-left: 3vw;
        margin-right: 3vw;
    }

    .one-column .content h2 {
        /*margin: 0 0 25px;*/
    }

    .one-column .content h3 {
        /*padding: 0 3vw;*/
        margin: 0 3vw 3vw;
    }

    .two-column .content h3 {
        margin: 0 3vw 3vw;
    }

    .one-column .content p,
    .two-column .content p {
        margin: 0 3vw 5vw;
        /*margin-bottom: 50px;*/
        line-height: 1.5em;
        letter-spacing: 0.04em;
        font-size: 3.5vw !important;
    }

    .content .search {
        margin: 0 3vw;
    }

    .content h2 small {
        font-size: 4vw !important;
        padding-top: 5vw;
    }

    .list-data {
        float: left;
        width: 100% !important;
        display: block;
        height: auto;
        padding: 2vw 3vw;
        border-bottom: 1px solid #e1e1e1;
        border-left: 1px solid #e1e1e1;
        border-right: 1px solid #e1e1e1;
        margin: 0;
        position: relative;
    }

    .list-data:first-child {
        margin-top: 2vw;
        border-top: 1px solid #e1e1e1;
    }

    .list-data img {
        width: 25%;
        padding: 3vw 3vw 3vw 0;
        float: left;
    }

    .list-data p.title {
        font-size: 4vw;
        width: 70% !important;
        padding: 1vw;
        float: left;
    }
    .list-data p.title.top-topics {
        width: 95% !important;
    }

    .list-data p.title .date {
        font-size: 3.5vw;

    }

    .list-data .category,
    .list-data .update {
        font-size: 3.5vw;
        margin: 3vw 5vw 3vw 0;
        position: absolute;
        bottom: 2vw;
        right: 5vw;
    }

    .list-data .rank {
        float: left;
        font-size: 10vw !important;
        color: #222;
        text-shadow: 0.5vw 0.5vw 1vw #fff, -0.5vw 0.5vw 1vw #fff, 0.5vw -0.5vw 1vw #fff, -0.5vw -0.5vw 1vw #fff;
        margin: 0 -8vw 0 !important;
    }

    .list-data:after {
        content: '　';
        background: url(../img/icon_list_link.png) no-repeat right center;
        margin: 10vw 0;
        float: right;
        display: inline-block;
        width: 5%;
        height: 5vw;
        background-size: 3vw;
    }

    .result .archive li a:after {
        content: '　';
        background: url(../img/icon_list_link.png) no-repeat right center;
        margin: -3vw 0;
        float: right;
        display: inline-block;
        width: 5%;
        height: 5vw;
        background-size: 3vw;
    }

    .result .archive ul li h5,
    .result .archive ul li span,
    .result .archive ul li p {
        width: 95%;
        display: inline-block;
    }

    .archive ul li span {
        display: inline-block;
        font-size: 3vw;
        color: #666666;
        padding: 1vw 0;
        letter-spacing: 0.5vw;
    }

    .category .list-data {
        margin-top: 1vw;
        margin-right: 0;
        width: 49.5% !important;
        height: 16vw;
        background-color: #f9f8f7;
        border: none;
        padding: 2vw 1vw;
    }

    .category .list-data:nth-child(even) {
        border: none;
        float: right;
        margin-left: 1vw;
    }

    .category .list-data:first-child {
        border: none;
    }

    .category .list-data:after {
        display: none;
    }

    .category .list-data img {
        padding: 0;
        vertical-align: middle;
    }

    .category .list-data p.title {
        margin-left: 1vw;
        font-size: 3.5vw;
        padding: 4vw 0;
    }

    .more {
        display: inline-block;
        padding: 3vw 0;
        font-size: 4vw;
        width: 100%;
        text-align: center;
        color: #666666;
        background-color: #f9f8f7;
        /*border-top: 1px solid #e1e1e1;*/
        border-bottom: 2px solid #e1e1e1;
        border-left: 1px solid #e1e1e1;
        border-right: 1px solid #e1e1e1;
    }

    .col-3 .list-data .detail {
        display: none;
    }

    .btn {
        padding: 1vw 3vw;
        font-size: 4vw;
        color: #fff;
        cursor: pointer;
    }

    .submit {
        margin: 0 3vw;
        text-align: center;
    }

    .submit .mail {
        width: 98.5% !important;
        height: 6vw !important;
        font-size: 3.5vw !important;
    }

    .btn-submit {
        padding: 1vw 3vw;
        margin-top: 3vw;
        font-size: 4vw;
    }

    .btn-group .btn {
        padding: 3vw 10vw !important;
        margin: 0 1.5vw;
    }

    .btn-prev, .btn-prev:hover {
        padding: 2vw 20vw;
    }

    .content h2 {
        margin: 0 3vw;
    }

    .melma-topics .content .archive ul li {
        padding: 2vw;
        border-bottom: 2px solid #efefef;
    }

    .melma-topics .content .archive ul li:first-child {
        border-top: 2px solid #efefef;
    }

    .melma-topics .content .archive li h5 {
        background: url(../img/icon_double2.png) left top no-repeat;
        font-size: 4vw;
        font-weight: bold;
        line-height: 1.3em;
        padding-left: 5vw;
        background-position: 0 1vw;
        background-size: 2.5vw;
    }

    .melma-topics .content .archive .topics-result {
        font-size: 4vw;
        display: block;
        font-weight: bold;
        margin: 5vw 2vw;
    }

    .melma-topics .content .archive li p {
        padding-left: 5vw;
    }

    .melma-topics .content .archive li p span {
        font-weight: bold;
        font-size: 3vw;
    }

    .archive ul li {
        border-bottom: 1px solid #efefef;
        padding: 4vw 3vw;
    }

    .rank20 .content {
        padding: 0;
    }

    .rank20 .content h3 {
        margin: 0 2vw;
    }

    .rank20 .content h2 {
        padding: 0 2vw;
    }

    .rank20 .content li {
        padding: 3vw 2vw;

    }

    .rank20 .archive .rank-image {
        display: inline-block;
        float: left;
        margin-right: 3vw;
        width: 30%;
    }

    .rank20 .archive .rank-image img {
        width: 80%;
        margin: 0;
    }

    .rank20 .archive .rank5 .rank-image img {
        width: 50%;
        margin-right: 9vw;
    }

    .rank20 .archive .rank-image .rank {
        float: left;
        font-size: 10vw !important;
        color: #222;
        text-shadow: 0.5vw 0.5vw 1vw #fff, -0.5vw 0.5vw 1vw #fff, 0.5vw -0.5vw 1vw #fff, -0.5vw -0.5vw 1vw #fff;
        margin: -1vw -2.5vw 0 !important;
    }

    .rank20 .archive .rank-detail {
        display: inline-block;
        float: left;
        width: 65%;
    }

    .rank20 .archive p {
        display: block;
        margin-bottom: 0 !important;
        font-size: 3vw !important;
        margin-top: 2vw !important;
    }

    .archive ul li h5 {
        font-size: 4.5vw;
        font-weight: bold;
        margin: 0;
        margin-left: 10px;
        line-height: 1.5em;
    }

    .rank20 .archive .rank10 .rank-image .rank {
        margin: 0 !important;
        font-size: 9vw !important;
    }

    .rank20 .archive .rank10 .rank-image {
        width: 10%;
        margin: 0 3vw;
    }

    .rank20 .archive .rank10 .rank-detail {
        width: 80%;
    }

    .explain {
        margin: 0 2vw;
        line-height: 1em;
    }

    .support h4 {
        font-size: 5vw;
        font-weight: bold;
        color: #9ac04b;
        margin-bottom: 2vw;
    }

    .support .support-box {
        margin: 3vw auto 5vw;
    }

    .support h4 img {
        margin-right: 2vw;
        width: 5vw;
    }

    .support p {
        text-align: left;
        margin-left: 2vw;
        padding-bottom: 2vw;
    }

    .btn-support {
        padding: 3vw 5vw;
    }

    .check {
        padding: 3vw 3vw;
    }

    .check span {
        font-size: 4vw !important;
        font-weight: bold !important;
        margin-top: 0.8vw;
        display: inline-block;
    }

    input[type="checkbox"].mag-url {
        -webkit-appearance: none;
        position: relative;
        display: inline-block;
        width: 5vw;
        height: 5vw;
        background: url(../img/icon_check_off.png);
        background-size: cover;
    }

    input[type="checkbox"].mag-url:checked:before {
        width: 5vw;
        height: 5vw;

    }

    .check .check-all {
        display: inline-block;
        margin-right: 2vw;
        float: left;
    }

    .check-archive {
        display: inline-block;
        height: auto;
        margin-right: 0;
        float: left;
        width: 8%;
    }

    .check-content {
        width: 88%;
        overflow: hidden;
    }

    .alert {
        padding: 3vw 2vw;
        margin: 3vw;
    }

    .archive .publisher span {
        font-size: 3.5vw;
        margin: 1.5vw !important;
    }

    .archive .publisher img {
        float: left;
        width: 10%;
    }

    .content > .category {
        /*margin: 0 3vw;*/
    }

    .category .category-row {
        margin: 0 3vw !important;
    }

    .category .category-row .one,
    .category .category-row .two {
        margin-bottom: 5vw;
        width: 100%;
        margin-left: 0;
    }

    .category .category-row > div img {
        width: 9%;

    }

    .cat-list .category h3 {
        margin-left: 11%;
        padding: 0.2em 0 !important;
        border: none !important;
    }

    .cat-list .category h3 a {
        font-weight: bold;
        font-size: 4vw;
    }

    .cat-list .category ul {
        padding: 0;
    }

    .cat-list .category ul li {
        background: url(../img/icon_right.png) left top no-repeat;
        margin: 2vw 0;
        background-position: 0;
        background-size: 4vw;
        width: 49%;
        display: inline-block;
        padding: 2vw 1vw 2vw 6vw;
    }

    .cat-list .category ul li a {
        font-size: 4vw;
        font-weight: bold;
        vertical-align: middle;
        line-height: 1;
    }

    .cat-list .category .category-row {
        display: inline-block;
    }

    .list-category {
        padding: 0 3vw;
    }

    .list-category h4 {
        font-size: 3vw;
        font-weight: bold;
    }

    .new-block .new-topics, .new-block .new-topics-2, .new-block .new-comment {
        width: 100%;
    }

    .new-topics li,
    .new-topics-2 li,
    .new-comment li {
        width: 100%;
    }

    ol.new-topics-list li:first-child,
    ol.new-topics-list li:first-child {
        border-top: 1px solid #e1e1e1;
    }

    .new-block h3 {
        margin: 0 3vw;
    }

    .new-block .new-topics-2 li:nth-child(even) {
        margin-left: 0;
    }

    ol.new-topics-list li {
        background: url(../img/icon_double.png) left top no-repeat;
        padding: 1.5vw 3vw 1.5vw 7vw;
        width: 100% !important;
        line-height: 1.5em;
        background-position: 3vw 3vw;
        float: left;
        background-size: 3vw;
        border-bottom: 1px solid #e1e1e1;
        margin-bottom: 1.5vw;
    }

    ol.new-comment-list li {
        padding: 3vw 3vw;
        /*margin: 3vw 0;*/
        line-height: 2.5em;
        float: left;
        border-bottom: 1px solid #e1e1e1;

    }

    ol.new-comment-list li a,
    ol.new-topics-list li a {
        font-size: 4vw;
    }

    ol.new-comment-list li a span,
    ol.new-topics-list li a span {
        font-size: 3vw;
    }

    .new-topics-more {
        font-size: 3vw;
        font-weight: bold;
        background-color: #efefef;
        padding: 3vw 4vw;
        margin-right: 3vw;
    }

    /**
     * Reader Register
     */
    .reader-register .content h2 {
        margin: 3vw 0;
    }

    .reader-register .content .provisional-text {
        margin: 5vw 10vw !important;
    }

    .reader-register .content .h3 {
        margin: 10vw 0 2vw;
    }

    .reader-register .content .h3-child {
        margin: 3vw 3vw 3vw 5vw !important;
    }

    .reader-register .content .complete-text {
        font-size: 3.5vw !important;
        margin: 0;
        padding: 3vw 3vw;
    }

    .reader-register .content .complete-text a {
        font-size: 3.5vw !important;
    }

    .reader-register .btn-melma {
        padding: 2vw 8vw;
    }

    .reader-register .content .melma-list {
        padding: 0 3vw 5vw;
    }

    .reader-register .content .melma-list dd.head {
        display: none;
    }

    .reader-register .content .melma-list dt {
    }

    .reader-register .content .melma-list dt,
    .reader-register .content .melma-list dt.head,
    .reader-register .content .melma-list dt > a,
    .reader-register .content .melma-list dd {
        width: 100%;
        font-size: 3.5vw;
        padding: 2vw 1vw;
    }

    .reader-register .content .melma-list dd {
        margin-top: 0;
        padding: 2vw 2vw;
        border-top: none;
        border-left: 1px solid #e1e1e1;
    }

    .reader-register .box a {
        color: #e15d20;
        font-size: 3.5vw;
    }

    /**
     * Back Number
     */
    .back .intro {
        margin: 0 3vw;
    }

    .back .intro .cat-name {
        font-size: 3.5vw;
        display: inline-block;
        width: 80%;
        margin-bottom: 2vw;
        margin-top: 1vw;
    }

    .back .intro .cat-name img {
        width: 8vw;
        padding-top: 0;
        vertical-align: middle;
        margin-right: 2vw;
    }

    .back .intro h2 {
        margin: 0;
        line-height: 1.3;
    }

    .back .intro h2 small {
        padding-top: 0;

    }

    .back .intro .sns {
        margin-top: 3vw;
    }

    .back .sns a img {
        width: 5vw;
    }

    .back .intro .detail {
        width: 100%;
    }

    .back .intro .register {
        width: 100%;
    }

    .back .intro .register p {
        display: block;
        overflow: hidden;
        width: 100%;
        margin-bottom: 2vw;
    }

    .back .intro .register form.search {
        margin: 0;
    }

    .back .intro .register .mail {
        width: 96% !important;
        height: 6vw !important;
        font-size: 3.5vw !important;
    }

    .back .intro .register .confirm {
        font-size: 3.5vw !important;
    }

    .back .intro .register .btn {
        width: 30%;
        background-color: #e15d20;
        font-size: 3.5vw;
        float: inherit !important;
        border-radius: 5px;
        padding: 1.5vw 1vw;
    }

    .back .intro h3 {
        font-size: 4vw !important;
        margin-top: 3vw !important;
        margin-bottom: 2vw !important;
    }

    .back .intro .detail p {
        letter-spacing: 0.05em;
        line-height: 1.5;
        font-size: 3vw !important;
    }

    .back .archive h4 {
        padding: 4vw 3vw;
    }

    .back .archive p {
        width: 100%;
    }

    .back .archive p.archive-content {
        width: 100%;
    }

    .back .intro .more {
        background-color: transparent;
    }

    .back .more {
        background-color: #fff;
        border: none;
    }

    .back .more img {
        margin-bottom: 0.2vw;
        vertical-align: sub;
    }

    .back .archive .created {
        font-size: 3.5vw;
        margin-top: 2vw;
    }

    .back .content .more-content {
        /*margin-bottom: 5vw;*/
        margin-left: 3vw;
        display: block;
        overflow: hidden;
    }

    .back .archive .more {
        display: inline-block;
        width: 70%;
        border: none;
        margin-top: 2vw;
        text-align: right;
        background: none;
    }

    .back .content .more-content .more {
        margin-top: 1vw;
        padding: 0;
    }

    /**
     * Back Detail
     */
    .back-detail .intro h2 {
        width: 100%;
    }

    .back-detail .intro p .more {
        background: none;
        text-align: right;
        font-size: 3vw;
        font-weight: bold;
        padding: 0 0 1vw;
        margin: 0;
    }

    .back-detail .intro .register-btn {
        display: inline-block;
        float: inherit;
        width: 100%;
        padding: 3vw 0 4vw;
        text-align: center;
    }

    .back-detail .intro .register-btn .btn {
        width: 100%;
        background-color: #e15d20;
        font-size: 3.5vw;
        float: inherit !important;
        padding: 2vw 3vw;
    }

    .back-detail .back-detail-content {
        border: 1px solid #000;
        /*margin-top: 30px;*/
        padding: 15px 0 15px;
        margin: 3vw;
        overflow: hidden;
    }

    .back-detail .before-after {
        margin: 3vw;
    }

    .back-detail .before-after span {
        font-size: 5vw;
        text-align: center;
    }

    .back-detail .before span {
        float: right;
        position: absolute;
        bottom: 7vw;
        left: 15vw;
    }

    .back-detail .after span {
        float: right;
        position: absolute;
        bottom: 7vw;
        right: 15vw;
    }

    .back-detail .content .more-content {
        /*margin-bottom: 5vw;*/
        margin-left: 0;
        display: block;
        overflow: hidden;
    }

    .back-detail .write-comment .nickname {
        width: 97% !important;
        height: 6vw !important;
        font-size: 3.5vw !important;
        padding: 0.5vw 0 0.5vw 1vw !important;
        margin: 2vw 0 1vw;
    }

    .back-detail .write-comment .comment {
        width: 97%;
        height: 18vw;
        border: 1px solid #000;
        font-size: 3.5vw !important;
        padding: 1vw 0 0 1vw;
        margin: 1vw 0;
        border-radius: 5px;
        background-color: #fff;
    }

    .back-detail .write-comment .captcha-image {
        margin: 1vw 0;
        display: block;
        width: 70%;
    }

    .back-detail .write-comment .captcha-text {
        width: 40%;
        height: 6vw;
        border: 1px solid #000;
        font-size: 3.5vw !important;
        padding: 0.5vw 0 0.5vw 1vw !important;
        margin: 2vw 0 1vw;
    }

    .back-detail .write-comment .btn-post {
        padding: 1vw 5vw;
        border-radius: 5px;
    }

    .newest.archive ul li {
        height: auto;
        overflow: hidden;
    }

    /**
     * Comment List
     */
    .comment-list .content .intro {
        background: none !important;
        border: none !important;
    }

    .comment-list .content .intro {
        padding: 0;
    }

    .comment-list .content .intro h2 img {
        vertical-align: middle;
        margin-right: 2vw;
        width: 8vw;
    }

    .comment-list .content .more {
        margin-top: 30px;
        text-align: left;
    }

    .comment-list .content .archive h4 .btn-post {
        margin-top: -1.5vw;
        color: #1a8ce4 !important;
        background-color: #fff;
        border: 2px solid #1a8ce4;
    }

    /**
     * Newmagazine
     */
    .newmagazine .content .archive {
        margin-left: 0;
        margin-right: 0;
    }

    .newmagazine .check-target {
        margin: 0;
    }

    .newmagazine .check-content p {
        margin: 3vw 0;
    }

    .newmagazine .check-archive input[type="checkbox"],
    .newmagazine .check-archive input[type="checkbox"]:checked:before {
        /*width: 6vw;*/
        /*height: 6vw;*/
    }

    /**
     * footer
     */
    footer {
        text-align: center;
        padding: 4vw 0;
    }

    footer ul {
        padding: 3vw 6vw;
        width: 100%;
        display: block;
    }

    footer ul li {
        padding: 0 2.5vw;
    }

    footer ul li a {
        font-size: 4.0vw;
    }

    .copyright {
        width: 100%;
        font-size: 3.5vw;
        display: block;
        text-align: center;
    }

    .footer-logo {
        width: 40%;
        display: block;
        margin: 8vw auto 4vw;
    }

    footer .list-btn {
        display: block;
    }

    footer .list-btn .btn {
        width: 45%;
        margin: 1vw;
        font-size: 4vw;
        padding: 3vw 0;
        display: inline-block;
    }

    .btn-footer {
        background-color: #464646;
    }

    .page-top {
        height: 10vw;
        width: 20vw;
        border-radius: 10vw 10vw 0 0;
        -moz-border-radius: 10vw 10vw 0 0;
        -webkit-border-radius: 10vw 10vw 0 0;
        background-color: #3b3b3b;
        clear: both;
        margin-bottom: -2px;
    }

    .page-top img {
        margin: 3vw 7vw;
        width: 30%;
    }
}

@media screen and (min-width: 1001px) {
    .visible-lg {
        visibility: visible !important;
    }

    .visible-md {
        display: none !important;
    }
}
