@charset "UTF-8";

@media screen and (max-width: 767px) {

    /* ==================================================
       タイトル・見出しのスマホ最適化
       ================================================== */
    .main-contents .detail-title {
        font-size: 22px !important; /* スマホ画面に合わせて可読性を確保 */
        padding: 0 10px;
        line-height: 1.3;
    }

    .detail-section-title {
        font-size: 22px;
    }

    /* ==================================================
       文章・コンテンツ幅の最適化（画面いっぱいに広げる）
       ================================================== */
    .detail-overview-text,
    .detail-spec-list,
    .detail-body {
        width: 100% !important; /* PC版の80%〜90%制限を解除 */
        box-sizing: border-box;
    }

    /* 仕様リストの余白調整 */
    .detail-spec-list {
        padding: 4px 10px;
    }

    .detail-spec-list li {
        font-size: 14px;
        line-height: 1.6;
        display: block; /* 単語ごとに強制改行 */
    }

    .detail-spec-list li span {
        font-size: 13px;
        padding: 3px 10px;
    }

    /* ==================================================
       SNSエリアのはみ出し防止調整
       ================================================== */
    .sns-logo {
        max-width: 80px;      /* スマホ用に適切なサイズに変更 */
        margin: 15px 15px;    /* PC版の margin: 50px による画面外はみ出しを防止 */
    }

    .sns-images {
        gap: 10px;
    }

    .sns-link {
        font-size: 15px;
    }

    /* ==================================================
       ボタン・アクションの縦並び＆押しやすさ調整
       ================================================== */
    .link-buttons {
        flex-direction: column;
    }

    .btn {
        justify-content: center;
        width: 100%;
        box-sizing: border-box;
    }

    .btn-back-main {
        display: block;
        width: 60%;
        text-align: center;
        box-sizing: border-box;
        margin: 0 auto 0 auto;
    }

    /* 既存設定の保持 */
    .detail-header {
        flex-direction: column;
        gap: 15px;
    }

    .detail-img-box {
        width: 100%;
    }

    .gallery-grid {
        grid-template-columns: 1fr;
    }
}