/* -----------------------------------------------------
   共通
  -----------------------------------------------------*/
#applied {
    --base-color: #b7282b;
}

#applied {
    /* -----------------------------------------------------
    レイアウト上書き
    -----------------------------------------------------*/
    #layout-wrap {
        border-top: none;
    }
    #layout-wrap header {
        width: 1058px;
    }
    #layout-wrap #main {
        padding-left: 10px;
        width: 739px;
    }
    p {
        color: #444;
        vertical-align: middle;
        font-weight: normal;
    }

    /* -----------------------------------------------------
    ロゴ周り
    -----------------------------------------------------*/
    #layout-header-logo {
        display: inline-block;
        width: 300px;
        margin-right: 4px;
        vertical-align: top;
        position: relative;
        height: 90px;
        background: url(/assets/img/applied/logo.png?2025061902);
    }
    #layout-header-logo div#logo_header{
        position: absolute;
        top: 5px;
        left: 5px;
        width: 290px;
        text-indent: -9999px;
    }
    #layout-header-logo div#logo_header a{
        display: block;
        height: 45px;
        width:200px;
    }
    header .ascii_logo{
        position: absolute;
        bottom: 5px;
        right: 10px;
        width: 135px;
        text-indent: -9999px;
    }
    header .ascii_logo a{
        display: block;
        height: 35px;
        width:100px;
        margin-left:20px;
    }
    #layout-header-ad {
        display: inline-block;
        width: 728px;
        text-align: -webkit-right;
        background: #ccc;
    }

    /* -----------------------------------------------------
    アーカイブ
    -----------------------------------------------------*/
    #article_archive{
        margin-bottom: 6px;
    }
    #article_archive .title-box{
        background-color: var(--base-color);
        padding: 8px 15px 6px 10px;
        line-height: 1.2;
    }
    #article_archive .title-box h2{
        font-size: 1rem;
        color: #fff;
        font-weight: 600;
    }
    #article_archive dl{
        background-color: #ffffff;
        font-size: 0.8rem;
        line-height: 1.6;
        padding-top: 5px;
        border-bottom: 1px solid #ddd;
        border-width: 0 1px 1px;
    }
    #article_archive dl:last-child{
        border: none;
    }
    #article_archive dt{
        display: inline-block;
        margin: 0 5px 3px 0;
        padding: 4px 10px;
        font-weight: normal;
        border-right: 1px solid #ddd;
        border-width: 0 1px 1px;
    }
    #article_archive dd{
        color: #ccc;
        display: inline-block;
        padding: 4px 9px 4px 0;
        margin-bottom: 3px;
    }

    /* -----------------------------------------------------
    右ペイン
    -----------------------------------------------------*/
    #right-sidebar{
        background-color: #ffffff;
    }

    /* 広告 */
    #ad_box{
        margin-bottom: 15px;
    }
    #ad_box div {
        margin-bottom: 10px;
    }

    /* Twitter・Facebook */
    /* #tw_box{
        margin-bottom: 15px;
    }
    #fb_box{
        margin-bottom: 15px;
    } */
}

/* -----------------------------------------------------
トップページ
-----------------------------------------------------*/
#applied.top{
    /* 中央広告枠 */
    #content_top_ad{
        margin-bottom: 10px;
        display: flex;
        justify-content: space-between;
    }

    /* 記事リスト共通 */
    .backnumber{
        margin-bottom: 30px;
    }
    .backnumber:after{
        display: block;
        clear: both;
        content: "";
    }
    .backnumber .title-box{
        background-color: var(--base-color);
        padding: 5px 14px;
        line-height: 1.2;
    }
    .backnumber h2{
        font-size: 1rem;
        color: #fff;
        font-weight: bold;
    }
    .backnumber ul li {
        border-bottom: 1px solid #dce4e7;
        padding: 25px 0;
    }
    .backnumber ul li a {
        overflow: hidden;
    }
    .backnumber ul li a:hover {
        text-decoration: none;
    }
    .backnumber ul li a:hover .thumb_img{
        opacity: 0.8;
    }
    .backnumber ul li a:hover .thumb_txt h4{
        text-decoration: underline;
    }

    /* 注目のレビュー記事、レビューバックナンバー */
    .backnumber#latest_review ul li a,
    .backnumber#review_backnumber ul li a {
        display: flex;
    }
    .backnumber#latest_review ul li .thumb_img,
    .backnumber#review_backnumber ul li .thumb_img {
        width: 240px;
    }
    .backnumber#latest_review ul li .thumb_txt,
    .backnumber#review_backnumber ul li .thumb_txt {
        width: 470px;
        margin-left: auto;
        padding: 0 5px 0 0;
        overflow: hidden;
    }
    .backnumber#latest_review ul li h4,
    .backnumber#review_backnumber ul li h4 {
        font-weight: bold;
        color: #000000;
        font-size: 110%;
    }
    .backnumber#latest_review ul li p.artTxt,
    .backnumber#review_backnumber ul li p.artTxt {
        font-size: 80%;
    }
    .backnumber#latest_review ul li time,
    .backnumber#review_backnumber ul li time {
        display: block;
        margin: 5px 0 0;
        font-size: 0.8rem;
        color: #999;
        text-align: right;
    }

    /* リリース記事 上段 */
    .backnumber#latest_news ul.latest {
        display: flex;
        justify-content: space-between;
        margin: 0 10px;
    }
    .backnumber#latest_news ul.latest li {
        width: 345px;
    }
    .backnumber#latest_news ul.latest li .thumb_img {
        width: 240px;
        margin: 0 auto;
    }
    .backnumber#latest_news ul.latest li .thumb_txt {
        width: 345px;
        margin: 5px 0 0;
        overflow: hidden;
    }
    .backnumber#latest_news ul.latest li h4 {
        font-weight: bold;
        color: #000000;
        font-size: 110%;
        text-align: justify
    }
    .backnumber#latest_news ul.latest li p.artTxt {
        font-size: 80%;
        text-align: justify
    }
    .backnumber#latest_news ul.latest li time {
        display: block;
        margin: 5px 0 0;
        font-size: 0.8rem;
        color: #999;
        text-align: right;
    }

    /* リリース記事 下段 */
    .backnumber#latest_news ul.following li .thumb_txt {
        padding: 0 5px 0 0;
        overflow: hidden;
    }
    .backnumber#latest_news ul.following li h4 {
        font-weight: bold;
        color: #000000;
        font-size: 110%;
    }
    .backnumber#latest_news ul.following li p.artTxt {
        font-size: 80%;
    }
    .backnumber#latest_news ul.following li time {
        display: block;
        margin: 5px 0 0;
        font-size: 0.8rem;
        color: #999;
        text-align: right;
    }

    /* ボタン */
    .backnumber .box_footer {
        background: #ffffff;
        border-top: 1px solid #ffffff;
        text-align: center;
        padding: 10px;
    }
    .backnumber .box_footer .btn {
        display: inline-block;
        height: 30px;
        text-align: center;
        padding: 0 25px;
        text-decoration: none;
        line-height: 30px;
        outline: none;
        font-weight: bold;
        background-color: #ffffff;
        color: #000;
        border: 1px solid #000;
        font-size: 13px;
    }
    .backnumber .box_footer .btn:hover {
        text-decoration: none;
        opacity: 0.5;
    }
}

/* -----------------------------------------------------
記事アーカイブ
-----------------------------------------------------*/
#applied.archive{
    .list_box h2{
        font-size: 1.2rem;
        margin-bottom: 15px;
        color:#444;
        font-weight: bold;
    }
    .list_box ul{
        margin-bottom: 10px;
        padding: 0 5px 10px;
        border-bottom: 1px solid #ccc;
    }
    .list_box li{
        position: relative;
        padding-left: 12px;
        line-height: 1.2;
        margin-bottom: 5px;
    }
    .list_box li:before{
        position: absolute;
        top: 3px;
        left: 0;
        font-family: "Font Awesome 5 Free";
        content: "\f0da";
        -moz-osx-font-smoothing: grayscale;
        -webkit-font-smoothing: antialiased;
        display: inline-block;
        font-style: normal;
        font-variant: normal;
        text-rendering: auto;
        line-height: 1;
        font-weight: bold;
        color:#444;
    }
}

/* -----------------------------------------------------
記事詳細
-----------------------------------------------------*/
#applied.detail{
    #detail_contents h2,
    #detail_contents h3{
        margin: 2em 0 1em;
        padding: 5px 5px 2px 12px;
        font-size: 1.1rem;
        line-height: 1.2;
        font-weight: 600;
        color: #263D5E;
        border-left: 8px solid #263D5E;
        background: #ccc;
        background: -moz-linear-gradient(top, #E8EAEE 0%, #fff 100%);
        background: -webkit-linear-gradient(top, #E8EAEE 0%,#fff 100%);
        background: linear-gradient(to bottom, #E8EAEE 0%,#fff 100%);
        filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#E8EAEE', endColorstr='#fff',GradientType=0 );
    }
    #detail_contents h3{
        font-size: 1.0rem;
    }
    #detail_contents .style1 caption,
    #detail_contents .style2 caption {
        caption-side: top;
        text-align: center;
        color: #444;
        margin:0 0 5px;
        font-weight: 600;
    }
    #detail_contents tr.header th,
    #detail_contents tr.header th {
        background-color: #999;
    }
    #detail_contents .style1 th,
    #detail_contents .style2 th {
        background-color: #eee;
    }
    #detail_contents .photo {
        width: 600px;
    }
    #detail_contents .photo .rows2 {
        display: inline-block;
        width: 240px;
        vertical-align: top;
    }
    #detail_contents .photo.single {
        width: 600px;
    }
    #detail_special h2{
        border-left: 7px solid var(--base-color);
        border-bottom: 1px solid var(--base-color);
    }
    #detail_recommend h2{
        border-left: 7px solid var(--base-color);
        border-bottom: 1px solid var(--base-color);
    }
}

/* -----------------------------------------------------
特集・連載
-----------------------------------------------------*/
#applied.special{
    #special_title{
        padding: 40px 10px 10px;
        border-top: 1px solid #aaa;
        border-bottom: 1px solid #ccc;
        background-color: #F4F5F7;
        position: relative;
        color: #444;
        min-height: 205px;
    }
    #special_title .special_type{
        background-color: #c00;
        color: #fff;
        padding: 0 5px;
        display: inline-block;
        font-size: 1.0rem;
        position: absolute;
        top: 10px;
        left: 10px;
    }
    #special_title h1{
        font-size: 1.4rem;
        color: #000;
        font-weight: 500;
        width: 550px;
    }
    #special_title p.lead{
        font-size: 1.0rem;
        width: 550px;
        margin-bottom: 15px;
    }
    #special_title .special_info{
        position: absolute;
        bottom: 10px;
        width: 710px;
    }
    #special_title .special_info:after{
        display: block;
        clear: both;
        content: "";
    }
    #special_title .author{
        font-size: 0.9rem;
        width: 480px;
        float: left;
    }
    #special_title time{
        font-size: 0.8rem;
        color: #666;
        text-align: right;
        display: block;
        float: right;
        width: 220px;
    }
    #special_title .title_img {
        width: 150px;
        height: 150px;
        position: absolute;
        top: 10px;
        right: 10px;
        background-color: #ffffff;
    }
    #special_title .title_img img {
        width: 150px;
        height: 150px;
        object-fit: contain;
    }
    #special_list .specail_box{
        position: relative;
        padding: 0 10px 15px;
        margin-bottom: 15px;
        border-bottom: 1px solid #ccc;
    }
    #special_list .specail_box a:hover {
        text-decoration: none;
    }
    #special_list .text_box{
        width: 575px;
        min-height: 125px;
    }
    #special_list .text_box h2{
        font-size: 1.1rem;
        line-height: 1.2;
        font-weight: 600;
        margin-bottom: 10px;
        color:#000000;
    }
    #special_list .specail_box a:hover h2 {
        text-decoration: underline;
    }
    #special_list .text_box .subtitle{
        font-size: 0.9rem;
        color: #55757a;
        font-weight: 600;
    }
    #special_list .text_box p{
        font-size: 0.9rem;
        line-height: 1.6;
        color: #444;
        margin-bottom: 15px;
    }
    #special_list .text_box time{
        font-size: 0.7rem;
        color: #666;
        display: block;
        margin: 0 0 3px;
    }
    #special_list .img_box {
        width: 120px;
        height: 120px;
        position: absolute;
        top: 0;
        right: 10px;
        overflow: hidden;
        border:1px solid #ccc;
    }
    #special_list .specail_box a:hover .img_box {
        opacity: 0.8;
    }
    #special_list .img_box img {
        width: 120px;
        height: 120px;
        object-fit: contain;
    }
    #special_list .img_box img {
        width: 120px;
        height: 120px;
        object-fit: contain;
    }
}