/* ===== 全体設定 ===== */

body{
    font-family: Arial, Helvetica, sans-serif;
    margin:0;
    background:#f5f7fa;
    color:#333;
    line-height:1.7;
}

/* ===== ヘッダー ===== */

header{
    background:#232f3e;
    color:white;
    padding:20px;
    text-align:center;
}

header h1{
    margin:0;
    font-size:28px;
}

header p{
    margin:5px 0 0 0;
    font-size:14px;
    color:#ddd;
}

/* ===== コンテンツ幅 ===== */

.container{
    max-width:1000px;
    margin:auto;
    padding:20px;
}

/* ===== プロフィール ===== */

.profile{
    background:white;
    padding:20px;
    border-radius:8px;
    margin-bottom:30px;
}

/* ===== 記事一覧 ===== */

.posts{
    display:grid;
    grid-template-columns:repeat(auto-fit, minmax(280px,1fr));
    gap:20px;
}

.post{
    background:white;
    border-radius:8px;
    padding:20px;
    box-shadow:0 2px 5px rgba(0,0,0,0.1);
    transition:0.2s;
}

.post:hover{
    transform:translateY(-3px);
    box-shadow:0 6px 12px rgba(0,0,0,0.1);
}

.post h3{
    margin-top:0;
}

.post a{
    text-decoration:none;
    color:#ff9900;
    font-weight:bold;
}

/* ===== 記事ページ ===== */

.article{
    background:white;
    padding:30px;
    border-radius:8px;
    box-shadow:0 2px 5px rgba(0,0,0,0.1);
}

.article h1{
    margin-top:0;
}

.meta{
    color:#777;
    font-size:14px;
    margin-bottom:20px;
}

/* ===== ホームボタン ===== */

.home-button{
    display:inline-block;
    margin-bottom:20px;
    padding:10px 15px;
    background:#ff9900;
    color:white;
    text-decoration:none;
    border-radius:5px;
}

.home-button:hover{
    opacity:0.9;
}

/* ===== 画像 ===== */

.article img{
    max-width:100%;
    border-radius:5px;
    margin:20px 0;
}

/* ===== 動画 ===== */

.video{
    margin:20px 0;
}

iframe{
    width:100%;
    height:420px;
}

/* ===== コードブロック ===== */

pre{
    background:#1e1e1e;
    color:#dcdcdc;
    padding:15px;
    border-radius:6px;
    overflow-x:auto;
}

code{
    font-family: Consolas, monospace;
}

/* ===== リスト ===== */

ul{
    padding-left:20px;
}

/* ===== フッター ===== */

footer{
    text-align:center;
    padding:20px;
    font-size:14px;
    color:#666;
}

/* ===== スマホ対応 ===== */

@media (max-width:768px){

header h1{
    font-size:22px;
}

.container{
    padding:15px;
}

.article{
    padding:20px;
}

iframe{
    height:250px;
}

}