@charset "utf-8";

/* =============================ページ共通*/
html{
    font-family: 'Arial', sans-serif;
    font-size: 100%;
    line-height: 1.6;
}
body{
    width: 100%;
    margin: 0 auto;
}
main {
    margin: 0 auto;
    max-width: 1200px; /* ページの最大幅を制限 */
    padding: 2rem;
}
img{
    width: 100%;
}
.logo h2{
    text-align: center;
    margin-bottom: 1.5rem;
    font-family:'Times New Roman', Times, serif;
    color: #2E4057;
}
.logo h1{
    width: 80%;
    margin: 0 auto;
    padding-top: 1rem;
}
a{
    text-decoration: none;
    color: #2E4057;
}

/* =============================navi関連*/
header{
    background-color: #6CA6CD;
}
nav ul{
    list-style: none;
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: .5rem 0;
    text-align: center;
    padding-bottom: 1.5rem;
}
nav ul li a{
    border-bottom: solid #5ec4da 1px;
    padding: .2rem;
    text-decoration: none;
    color: #2e4057;
}

/* =============================ホームページ*/
.article{
    border: solid 1px #b0afaf;
    border-radius: 8px;
    box-shadow: 2px 2px 5px #b0afaf;
    padding: 1rem;
    margin: .5rem 0 2rem;
    background-color: #D2CFC4;
}
.article li{
    font-size: 80%;
    border-bottom: solid 1px #b0afaf;
    padding-top: .5rem;
}
.article .all_article{
    text-align: end;
    padding-top: 1rem;
}
.article li a{
    color: #2E4057;
}
.article_photo{
    border-radius: 2px;
    height: 180px;
    object-fit: none;
}
/* =============================左バナー*/
.banner_left{
    display: none;
}
/* =============================右バナー*/
.banner_right{
    gap: 1rem;
}
/*おすすめ記事*/
.recomend{
    border: #2E4057 1px solid;
    border-radius: 8px;
    padding: .5rem;
}
/*カテゴリー欄*/
.categories{
    border-radius: 8px;
    background: #ddd;
    padding: .5rem;
    margin-top: 1rem;
}
.category img{
    border-radius: 8px;
    box-shadow: 2px 2px 5px #b0afaf;
}
.category h2{
	font-size: 90%
}
/*カテゴリー別背景*/
.tech-category {
    background-color: #f0f8ff; /* 薄い青 */
}

.lifestyle-category {
    background-color: #e6fff2; /* 薄い緑 */
}

.career-category {
    background-color: #fff9e6; /* 薄い黄色 */
}

.challenge-category {
    background-color: #ffe5e9; /* 薄い赤 */
}

.eco-category {
    background-color: #e6f9f8; /* 薄いターコイズ */
}

.culture-category {
    background-color: #fff3e6; /* 薄いオレンジ */
}

/*=======================================中央カテゴリー部分js命令部分*/
/*カテゴリー文字*/
.article{
    position: relative;
}
/* テクノロジーと創造性 */
.tech-category .article_category {
    font-weight: bold;
    font-size: .8rem;
    color: #2E4057;
    position: absolute;
    right: 1rem;
    background-color: #a569bd; /* オレンジ系の背景色 */
    padding: 0 .3rem;
}

/* ライフスタイル */
.lifestyle-category .article_category {
    font-weight: bold;
    font-size: .8rem;
    color: #2E4057;
    position: absolute;
    right: 1rem;
    background-color: #82c4f5; /* ブルー系の背景色 */
    padding: 0 .3rem;
}

/* キャリアと働き方 */
.career-category .article_category {
    font-weight: bold;
    font-size: .8rem;
    color: #2E4057;
    position: absolute;
    right: 1rem;
    background-color: #f582a0; /* ピンク系の背景色 */
    padding: 0 .3rem;
}

/* 挑戦と成長 */
.challenge-category .article_category {
    font-weight: bold;
    font-size: .8rem;
    color: #2E4057;
    position: absolute;
    right: 1rem;
    background-color: #f5e082; /* イエロー系の背景色 */
    padding: 0 .3rem;
}

/* エコライフ */
.eco-category .article_category {
    font-weight: bold;
    font-size: .8rem;
    color: #2E4057;
    position: absolute;
    right: 1rem;
    background-color: #82f5b0; /* グリーン系の背景色 */
    padding: 0 .3rem;
}

/* カルチャーとインスピレーション */
.culture-category .article_category {
    font-weight: bold;
    font-size: .8rem;
    color: #2E4057;
    position: absolute;
    right: 1rem;
    background-color: #a582f5; /* パープル系の背景色 */
    padding: 0 .3rem;
}

/* =============================記事本文ページ*/
.article-text{
    padding: 1rem 0;
}
.article-text h3{
    margin-top: 1rem;
    margin-bottom: .5rem;
}
.article-image{
    margin-top: .5rem;
}
/* =====本文ページ右バナー*/
/* 関連記事欄*/
.related_articles{
    padding: .5rem;
}
.related_articles li{
    list-style: none;
    border-bottom: solid 1px #D2CFC4;
    border-top: solid 1px #D2CFC4;
    padding: .2rem .5rem;
    text-align: center;
}
.related_articles li a{
    font-size: .85rem;
}
.banner_right .article_link h3{
    padding-left: 1rem;
}
/* 右広告欄*/
.container .ad_right_top{
    text-align: center;
}
.container .ad_right_top img{
    width: 200px;
}
/* =============================フッター*/
footer p{
    font-size: 0.8rem;
    text-align: center;
    padding: 2rem 0 2rem 1rem;
}
footer nav ul{
    font-size: 0.9rem;
    justify-content: center;

}
/* =============================デスクトップ版*/
@media(min-width: 1200px){
    /*共通*/
    body{
        object-fit: cover;
    }
    header{
        display: flex;
        justify-content: space-around;
        align-items: flex-end;
    }
    /*ナビ*/
    nav ul{
        display: flex;
        gap: .5rem;
        margin-right: 1rem;
    }
    nav ul a:hover{
        color: #edaf82;
    }
    /*ホーム*/
    /*記事*/
    main{
        display: grid;
        grid-template-columns: 10% 60% 25%;
        gap: 1.5rem;
    }
    article{
        display: grid;
        grid-template-columns: repeat(2, minmax(300px, 1fr));
		grid-auto-rows: auto;
        gap: 0 .5rem;
    }
    .article a:hover{
        color: #edaf82;
    }
    /*右部カテゴリー欄*/
    .banner_right{
        margin-top: .5rem;
    }
    .banner_right h3{
        padding-bottom: .5rem;
    }
    .categories{
        display: grid;
        grid-template-columns: repeat(1, 1fr);
        gap: 0 .5rem;
        margin-top: .5rem;
        height: min-content;
    }
    .category img{
        object-fit: cover;
        height: 40px;
    }
    .category h2 a:hover{
    color: #edaf82;
    background: #fff;
    border-radius: 4px;
    padding: .3rem;
    }
    /* カテゴリー追尾 */
.sticky {
    position: sticky;
    top: 0;
    padding: 5px;
    background: #ddd;
}
    /*左部バナー*/
    .banner_left{
        display: block;
    }
    .banner_left p{
        padding-top: 1.5rem;
    }
    /*=====================================各記事本文ページ*/
    /*メイン*/
    .container{
        display: grid;
        grid-template-columns: repeat(3, 1fr);
        max-width: 1200px;
        width: 100%;
        gap: 2rem;
        margin: 0 auto;
    }
    /*本文セクション*/
    .main_article{
        width: 600px;
        display: flex;
        flex-direction: column;
        order: 2;
    }
    /*左部セクション*/
    .container .banner_right{
        width: 190px;
        order: 1;
    }
    .related_articles a:hover{
        color: #edaf82;
    }
    /*右部広告セクション*/
    .container .ad_right_top{
        order: 3;
    }
    .container .ad_right_top img{
        width: 250px;
    }
}