@charset "UTF-8";

/* =================================================================
   共通仕様 (Common Styles)
   -----------------------------------------------------------------
   #pickup, #pickup02, .pickupBox, .pickup02Box に共通するスタイル
   ================================================================= */

/* 基本コンテナの共通スタイル (共通仕様のトップレベル要素) */
.pickup-common {
    background-color: #f6f6f6;
}

.pickup-common:before {
    content: "";
    border-top: 1px solid #f0f0f0;
    margin-bottom: 20px;
    display: block;
}

/* ボックスコンテナの共通スタイル */
.pickup-common-box h1 {
    color: #ffffff;
    box-sizing: border-box;
    background: #666666;
    line-height: 1.3;
}

.pickup-common-box ul {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
    margin: 0 auto;
}

.pickup-common-box li {
    background: #ffffff;
    box-sizing: border-box;
    position: relative;
    overflow: hidden;
    margin-bottom: 16px;
}

.pickup-common-box li a {
    display: flex;
    flex-wrap: wrap;
    justify-content: space; /* 元のCSSを保持。'space-between'などの可能性あり */
    align-items: flex-start;
    color: #333333;
}

.pickup-common-box .rmdCoLogo {
    display: table;
}

.pickup-common-box .rmdCoLogo figure {
    display: table-cell;
    vertical-align: middle;
    background: #ffffff;
}

.pickup-common-box .rmdCoLogo img {
    display: block;
    height: auto;
    margin: 0 auto;
    max-width: 92%;
}

.pickup-common-box .rmdCoInfo {
    display: block;
}

/* 企業名や業種名が2行以上の場合、2行目の最後に...を付けて表示 (共通) */
.pickup-common-box .rmdCoInfo > span {
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
}

.pickup-common-box .rmdCoInfo > strong > span {
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
    height: 3.6em;
    line-height: 1.8em;
}

.pickup-common-box li a > div > strong {
    display: table;
    font-weight: bold;
}

.pickup-common-box li a > div > strong span {
    display: table-cell;
    vertical-align: middle;
    line-height: 1.8;
}

.pickup-common-box li .icoRcmEntry {
    width: 50%;
    background-color: orange;
    text-align: center;
    color: #ffffff;
    margin: 0 auto 0;
    display: block;
}


/* =================================================================
   個別仕様 (Specific Styles)
   -----------------------------------------------------------------
   ① #pickup / .pickupBox の個別スタイル
   ================================================================= */
/* PC (min-width: 981px) */
@media screen and (min-width: 981px) {

    /* #pickup (960px コンテンツ) 固有のスタイル */
    #pickup {
        padding: 2px 0 5px;
        margin-bottom: 30px;
    }

    .pickupBox:first-child {
        margin-bottom: 20px;
    }

    .pickupBox h1 {
        width: 960px; /* 固有: 幅 960px */
        font-size: 16px;
        line-height: 1.3;
        margin: 0 auto 26px;
        padding: 15px 22px 15px;
        border-radius: 10px;
    }

    .pickupBox ul {
        width: 960px; /* 固有: 幅 960px */
        justify-content: flex-start;
    }

    .pickupBox li {
        width: calc((960px - 30px) / 6); /* 固有: 6列表示 */
        margin-right: 6px;
        padding: 8px;
        border-radius: 10px;
    }

    /* 6列目の右マージン調整 */
    .pickupBox li:nth-child(6n) {
        margin-right: 0 !important;
    }

    .pickupBox .rmdCoLogo {
        width: 130px;
        padding-right: 0;
        margin: 0 auto 3px;
    }

    .pickupBox .rmdCoLogo figure {
        width: 130px;
        height: 104px;
    }
    
    .pickupBox .rmdCoLogo img {
        max-width: 100%;
    }

    .pickupBox .rmdCoInfo {
        width: 230px;
    }

    .pickupBox .rmdCoInfo > span {
        margin-bottom: 6px;
    }

    .pickupBox li a > div > strong {
        width: 100%;
        margin-bottom: 14px;
        border-bottom: 1px dotted #333333;
    }

    .pickupBox li a > div > strong span {
        height: 70px;
        line-height: 1.6;
    }

    .pickupBox li .icoRcmEntry {
        position: absolute;
        border-radius: 0 0 0 6px;
        font-size: 11px;
        top: 0;
        right: 0;
        width: 110px;
    }
} /* END min 981 (PC) for #pickup */


/* タブレット (min-width: 600px and max-width: 980px) */
@media only screen and (min-width: 600px) and (max-width: 980px) {
    /* #pickup (960px コンテンツ) 固有のスタイル - 幅に関する部分のみ */
    #pickup {
        width: 100%;
        padding: 0 0 1vw;
        margin-bottom: 5vw;
    }

    .pickupBox {
        padding-top: 1vw;
        margin: 0 0 1vw;
    }

    .pickupBox h1 {
        width: 94%;
        margin: 0 auto 3vw;
        padding: 1.5vw 0 1.5vw 1.5vw;
        border-radius: 1.5vw;
        font-size: 2vw;
    }

    .pickupBox ul {
        width: 960px; /* 固有: 幅 960px */
    }

    .pickupBox li {
        width: calc(100% / 6 - 16px); /* 固有: 6列表示 */
        margin-right: 16px;
        padding: 17px 8px 8px;
        border-radius: 10px;
    }

    /* 6列目の右マージン調整 */
    .pickupBox li:nth-child(6n) {
        margin-right: 0 !important;
    }
    
    /* 他のスタイルは、#pickup02と同一のため共通仕様に移動 */
} /* END 600-980 for #pickup */


/* スマホ (max-width: 599px) */
@media screen and (max-width: 599px) {
    /* #pickup (960px コンテンツ) 固有のスタイル - 幅に関する部分のみ */
    #pickup {
        width: 100%;
        padding: 0 0 0;
        margin-bottom: 10vw;
    }

    .pickupBox {
        padding-top: 2vw;
        margin: 0 0 3vw;
    }

    .pickupBox h1 {
        width: 94%;
        margin: 0 auto 4vw;
        padding: 3vw 0 3vw 3vw;
        border-radius: 2.5vw;
        font-size: 3.4vw;
    }

    .pickupBox ul {
        width: 94%;
        justify-content: space-between;
    }

    .pickupBox li {
        width: 48%; /* 固有: 2列表示 */
        padding: 3.8vw 1.5vw 1.4vw;
        margin-bottom: 3vw;
        border-radius: 2vw;
    }

    .pickupBox li:last-child {
        border-bottom: none;
    }

    .pickupBox .rmdCoLogo {
        width: 22vw;
        margin: 0 auto;
        display: table;    }

    .pickupBox .rmdCoLogo figure {
        width: 15vw;
        height: 15vw;
    }

    .pickupBox .rmdCoInfo {
        width: 100%;
    }

    .pickupBox .rmdCoInfo > span {
        margin-bottom: 0.5vw;
        font-size: 2.6vw;
    }

    .pickupBox li a > div > strong {
        margin-bottom: 1.5vw;
        width: 100%;
    }

    .pickupBox li a > div > strong span {
        height: 14vw;
        line-height: 1.1;
        font-size: 2.9vw;
        border-bottom: 1px dotted #cccccc;
    }

    .pickupBox li .icoRcmEntry {
        width: 23vw;
        border-radius: 0 0 2vw 0;
        top: 0;
        left: 0; /* 固有: #pickup は left: 0 */
    }
} /* END max 599 (SP) for #pickup */


/* =================================================================
   個別仕様 (Specific Styles)
   -----------------------------------------------------------------
   ② #pickup02 / .pickup02Box の個別スタイル
   ================================================================= */
/* PC (min-width: 981px) */
@media screen and (min-width: 981px) {

    /* #pickup02 (690px コンテンツ) 固有のスタイル */
    #pickup02 {
        padding: 2px 0 5px;
        margin-bottom: 30px;
    }
    
    .pickup02Box {
        margin-top: 20px;
    }

    .pickup02Box:first-child {
        margin-bottom: 20px;
    }

    .pickup02Box h1 {
        width: 690px; /* 固有: 幅 690px */
        font-size: 16px;
        line-height: 1.3;
        margin: 0 auto 26px;
        padding: 15px 22px 15px;
        border-radius: 10px;
    }

    .pickup02Box ul {
        width: 690px; /* 固有: 幅 690px */
        justify-content: flex-start;
    }

    .pickup02Box li {
        width: calc((690px - 24px) / 4); /* 固有: 4列表示 */
        margin-right: 8px;
        padding: 8px;
        border-radius: 10px;
    }

    /* 4列目の右マージン調整 */
    .pickup02Box li:nth-child(4n) {
        margin-right: 0;
    }

    .pickup02Box .rmdCoLogo {
        width: 130px;
        padding-right: 0;
        margin: 0 auto 3px;
    }

    .pickup02Box .rmdCoLogo figure {
        width: 130px;
        height: 104px;
    }
    
    .pickup02Box .rmdCoLogo img {
        max-width: 100%;
    }

    .pickup02Box .rmdCoInfo {
        width: 230px;
    }

    .pickup02Box .rmdCoInfo > span {
        margin-bottom: 6px;
    }

    .pickup02Box li a > div > strong {
        width: 100%;
        margin-bottom: 14px;
        border-bottom: 1px dotted #333333;
    }

    .pickup02Box li a > div > strong span {
        height: 70px;
        line-height: 1.6;
    }

    .pickup02Box li .icoRcmEntry {
        position: absolute;
        border-radius: 0 0 0 6px;
        font-size: 11px;
        top: 0;
        right: 0;
        width: 110px;
    }
} /* END min 981 (PC) for #pickup02 */


/* タブレット (min-width: 600px and max-width: 980px) */
@media only screen and (min-width: 600px) and (max-width: 980px) {
    /* #pickup02 (690px コンテンツ) 固有のスタイル - 幅に関する部分のみ */
    #pickup02 {
        width: 100%;
        padding: 0 0 1vw;
        margin-bottom: 5vw;
    }

    .pickup02Box {
        padding-top: 1vw;
        margin: 0 0 1vw;
    }

    .pickup02Box h1 {
        width: 94%;
        margin: 0 auto 3vw;
        padding: 1.5vw 0 1.5vw 1.5vw;
        border-radius: 1.5vw;
        font-size: 2vw;
    }

    .pickup02Box ul {
        width: 690px; /* 固有: 幅 690px */
    }

    .pickup02Box li {
        width: calc(100% / 6 - 16px); /* 固有: 6列表示（#pickupと同じだが幅が690pxのため結果は異なる） */
        margin-right: 16px;
        padding: 17px 8px 8px;
        border-radius: 10px;
    }

    /* 6列目の右マージン調整 */
    .pickup02Box li:nth-child(6n) {
        margin-right: 0 !important;
    }
    
    /* 他のスタイルは、#pickupと同一のため共通仕様に移動 */
} /* END 600-980 for #pickup02 */


/* スマホ (max-width: 599px) */
@media screen and (max-width: 599px) {

    /* #pickup02 (690px コンテンツ) 固有のスタイル - 幅に関する部分のみ */
    #pickup02 {
        width: 100%;
        padding: 0 0 0;
        margin-bottom: 10vw;
    }

    .pickup02Box {
        background-color: #f6f6f6; /* 固有: 背景色がここで再定義されている */
        padding-top: 4vw; /* 固有: padding-topが異なる */
        margin: 0 0 3vw;
    }

    .pickup02Box h1 {
        width: 94%;
        margin: 0 auto 4vw;
        padding: 3vw 0 3vw 3vw;
        border-radius: 2.5vw;
        font-size: 3.4vw;
    }

    .pickup02Box ul {
        width: 94%;
        justify-content: space-between;
    }

    .pickup02Box li {
        width: 48%; /* 固有: 2列表示 */
        padding: 3.8vw 1.5vw 1.4vw;
        margin-bottom: 3vw;
        border-radius: 2vw;
    }

    .pickup02Box li:last-child {
        border-bottom: none;
    }

    .pickup02Box .rmdCoLogo {
        width: 22vw;
        margin: 0 auto;
        display: table;
    }

    .pickup02Box .rmdCoLogo figure {
        width: 15vw;
        height: 15vw;
    }

    .pickup02Box .rmdCoInfo {
        width: 100%;
    }

    .pickup02Box .rmdCoInfo > span {
        margin-bottom: 0.5vw;
        font-size: 2.6vw;
    }

    .pickup02Box li a > div > strong {
        margin-bottom: 1.5vw;
        width: 100%;
    }

    .pickup02Box li a > div > strong span {
        height: 14vw;
        line-height: 1.1;
        font-size: 2.9vw;
        border-bottom: 1px dotted #cccccc;
    }

    .pickup02Box li .icoRcmEntry {
        width: 23vw;
        border-radius: 0 0 2vw 0;
        top: 0;
        right: 0; /* 固有: #pickup02 は right: 0 */
    }
} /* END max 599 (SP) for #pickup02 */
