.vertical-text {
    writing-mode: vertical-rl;
    text-orientation: upright;
    letter-spacing: 0.1em;
}

/* Hide scrollbar */
.no-scrollbar::-webkit-scrollbar {
    display: none;
}

.no-scrollbar {
    -ms-overflow-style: none;
    scrollbar-width: none;
}

.pilot-icon {
    width: 32px;
    height: 32px;
    object-fit: contain;
}

/* 2025/12/18 のぎの ページ下部記事一覧 */

/* スマホ向け */
.fruits-pilot-posts {
    padding-inline: 1rem;
}

/* PC等向け */
@media (min-width: 640px) {
    .fruits-pilot-posts {
        --post_width: 240px;
        --gap: 3rem;
        --count: calc(round(down, 100% / (var(--post_width) + var(--gap))));
        width: calc((var(--post_width)) * var(--count) + var(--gap) * (var(--count) - 1));
        padding-inline: 0 !important;
    }
}

/* モーダル全体のスタイル */
#pdf-modal {
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.3s ease, visibility 0.3s ease;

    /* ★ここを修正: ヘッダーよりも確実に手前に来るように最強の値を設定 */
    z-index: 9999999 !important;

    cursor: pointer;
}
#pdf-modal.active {
    opacity: 1;
    visibility: visible;
}

/* モーダルの中身（白い枠） */
#pdf-modal .modal-content-wrapper {
    cursor: default;
    /* スマホでヘッダーに隠れないように、少しだけ位置を下げる調整 */
    margin-top: 20px;
}

/* 閉じるボタンのスタイル */
.modal-close-btn {
    position: absolute;
    top: 10px;
    right: 10px;
    display: flex;
    align-items: center;
    gap: 8px;
    color: white;
    background-color: rgba(0, 0, 0, 0.7);
    padding: 8px 20px;
    border-radius: 30px;
    font-size: 0.9rem;
    font-weight: bold;
    cursor: pointer;
    transition: background-color 0.3s;
    pointer-events: auto;

    /* ★念のためボタン自体も最前面指定 */
    z-index: 10000000 !important;
}
.modal-close-btn:hover {
    background-color: rgba(0, 0, 0, 0.9);
}

@media (max-width: 768px) {
    .modal-close-btn {
        top: 8px;
        right: 8px;
        padding: 6px 16px;
        font-size: 0.8rem;
    }
}
