/* ==========================
   更新情報一覧ページ専用
========================== */

*{
    margin:0;
    padding:0;
    box-sizing:border-box;
}

body{
    background:#f5f7fb;
    color:#333;
    font-family:
        "Yu Gothic",
        "Yu Gothic UI",
        sans-serif;
}

a{
    text-decoration:none;
}

/* ==========================
   ページ全体
========================== */

.updates-page{
    max-width:1000px;
    margin:60px auto;
    padding:0 20px;
}

/* ==========================
   ヘッダー
========================== */

.updates-header{
    background:
    linear-gradient(
        135deg,
        #0057b8,
        #0d7ee8
    );

    color:#fff;

    text-align:center;

    padding:60px 40px;

    border-radius:20px;

    margin-bottom:40px;
}

.page-tag{

    display:inline-block;

    padding:8px 18px;

    border-radius:30px;

    background:
    rgba(255,255,255,.2);

    font-size:.85rem;

    margin-bottom:15px;
}

.updates-header h1{

    font-size:2.4rem;

    margin-bottom:15px;
}

.updates-header p{

    opacity:.9;
}

/* ==========================
   一覧
========================== */

#updates-list{

    display:flex;

    flex-direction:column;

    gap:18px;
}

/* ==========================
   カード
========================== */

.update-card{

    position:relative;

    display:block;

    background:#fff;

    padding:24px 30px;

    border-radius:16px;

    border-left:5px solid #0057b8;

    box-shadow:
        0 6px 18px rgba(0,0,0,.06);

    color:#333;

    transition:.3s;
}

.update-card:hover{

    transform:translateY(-3px);

    box-shadow:
        0 12px 28px rgba(0,0,0,.12);
}

.update-content{

    padding-right:70px;
}

.update-content h2{

    font-size:1.35rem;

    line-height:1.5;

    margin:8px 0;
}

.product-tag{

    display:inline-block;

    padding:4px 10px;

    border-radius:20px;

    background:#eef4ff;

    color:#0057b8;

    font-size:.75rem;

    font-weight:600;

    margin-bottom:8px;
}

.new-badge{

    display:inline-block;

    padding:4px 10px;

    border-radius:20px;

    margin-right:8px;

    background:#ff9800;

    color:#fff;

    font-size:.75rem;

    font-weight:bold;
}

.update-date{

    color:#666;

    font-size:.9rem;
}

.arrow{

    position:absolute;

    right:30px;

    top:50%;

    transform:translateY(-50%);

    color:#0057b8;

    font-size:1.6rem;

    font-weight:bold;
}

.update-link-text{

    margin-top:8px;

    color:#0057b8;

    font-size:.9rem;

    font-weight:600;
}

/* ==========================
   SPページ導線
========================== */

.update-card:hover .arrow{

    transform:
        translateY(-50%)
        translateX(6px);
}

/* ==========================
   スマホ
========================== */

@media(max-width:768px){

    .updates-page{
        margin:40px auto;
    }

    .updates-header{
        padding:40px 25px;
    }

    .updates-header h1{
        font-size:1.8rem;
    }

    .update-content{
        padding-right:30px;
    }

    .update-content h2{
        font-size:1.1rem;
    }

    .arrow{
        right:15px;
    }
}