#loading{width:100%;text-align:center;display:inline-block;margin:0 auto;}#loading img{width:10%;text-align:center;margin:0 auto;display:block;}#jsonarea{visibility:hidden}.fadeout{animation:fadeOut 1s;animation-fill-mode:both}@keyframes fadeOut{0%{opacity:1}100%{opacity:0}}.fadein{animation:fadeIn 1s;animation-fill-mode:both}@keyframes fadeOut{0%{opacity:0}100%{opacity:1}}.intro .url_video .section_ttl{text-align:center;font-size:140%;margin-bottom:30px;line-height:140%;color:#333}.intro .url_video .prefbox{display:flex;align-items:center;justify-content:center;flex-flow:wrap;width:100%;margin:10px auto 20px auto;background:#eee;padding:15px;border-radius:10px;font-size:120%}.intro .url_video .prefbox p{padding-top:12px}.intro .url_video .prefbox .pref_select{margin-left:20px;width:30%}.intro .url_video .item_table{border:none;border-radius:20px;padding:20px;background:#fff;margin-bottom:20px}.intro .url_video .item_table #api_title{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-around}.intro .url_video .itemdetail{width:32%;padding:15px;border-radius:10px;box-shadow:0 0 5px #ddd;margin-top:10px;margin-bottom:10px;min-height:520px}.intro .url_video a{opacity:1;transition:.8s all}.intro .url_video a:hover{opacity:.8;transition:.8s all}.intro .url_video .btn{width:65%;margin:10px auto;text-align:center}.intro .url_video .btn a{display:block;text-align:center;color:#fff;font-size:120%;font-weight:700;padding:10px 0 8px 0;background:#8BC34A;border-radius:20px}.intro .url_video .btnsubtitle {text-align: center;font-size: 90%;font-weight: bold;margin: 5px 0;color: #8BC34A;letter-spacing: .1em;}.intro .url_video .others{width:65%;margin:20px auto;text-align:center}.intro .url_video .others a{background:#aaa;display:block;text-align:center;color:#fff;font-size:120%;font-weight:700;padding:10px 0 8px 0;border-radius:20px}.intro .url_video .section_ttl{margin:50px auto;font-weight:700;letter-spacing:.1em;}.intro .url_video .subtitle{margin-top:1rem;border-left:6px solid #8BC34A;padding-left:6px;font-weight:700;font-size:110%;line-height:120%;margin-bottom:10px}.intro .url_video .itemdetailimg{display:block; width:100%; background: #f6f6f6; margin: 0 auto; text-align:center; padding:20px;} .intro .url_video .itemdetailimg img{ display:block; margin: 0 auto !important; text-align:center !important; width:90%; }.intro .url_video .iteminfo{margin-top:10px}.intro .url_video .iteminfo ul{width:100%;margin:10px 0;}.intro .url_video .iteminfo li{display:flex;padding:2px 0;font-size:90%;}.intro .url_video .iteminfo img{width:20px;margin-right:10px;display:inline-block}.tdetail a {display:block; width:80%; border-radius:50px; text-align:center; padding:.5rem 0;margin: 0 auto;background:#8BC34A;color:#fff;}.intro .url_video .iteminfo table td.w30{width:35%}
@media (max-width: 750px) {
    .intro .url_video .jobpal_logo {margin: 0; padding-top: 20px; line-height: 100%;}
    .intro .url_video .jobpal_logo img {width: 50%; margin: 0 auto;}
    .intro .url_video .section_ttl {font-size: 100%;}
    .intro .url_video .item_table {width: 100%; padding: 10px; border: none;}
    .intro .url_video .prefbox {padding: 5px;}
    .intro .url_video .prefbox .pref_select {margin-left: 10px; width: 40%;}
    .intro .url_video .item_table #api_title {}
    .intro .url_video .others {width: 90%;}
    .intro .url_video .iteminfo table td {font-size: 90%;}
    .intro .url_video .iteminfo table td.w30 {width: 30%;}
    .intro .url_video .iteminfo table td img {width: 14px;}

    /* =========================================
       ▼ ここからSP時「カード内横並び」の指定 ▼
       ========================================= */

    /* 1. カード全体を幅100%にし、中身をFlexboxで折り返し(wrap)させる */
    .intro .url_video .itemdetail {
        width: 100%;
        padding: 15px 10px;
        min-height: auto; /* PC用の高さを解除 */
        display: flex;
        flex-wrap: wrap; /* 要素を折り返させる */
        align-items: center; /* 画像とテキストの縦位置を中央揃え */
        box-sizing: border-box;
    }

    /* 2. タイトルは幅100%にして一番上に配置 */
    .intro .url_video .subtitle {
        font-size: 95%;
        width: 100%;
        margin-top: 0;
        margin-bottom: 10px;
    }

    /* 3. 画像は幅40%にして左側に配置 */
    .intro .url_video .itemdetailimg {
        width: 40%;
        padding: 0;
        background: transparent; /* 背景色を消してスッキリさせる */
        margin: 0;
    }
    .intro .url_video .itemdetailimg img {
        display: block;
        margin: 0 auto !important;
        text-align: center !important;
        width: 100%;
    }

    /* 4. 求人情報は幅60%にして画像の右側に配置 */
    .intro .url_video .iteminfo {
        width: 60%;
        margin-top: 0;
        padding-left: 10px; /* 画像との隙間をあける */
        box-sizing: border-box;
    }
    .intro .url_video .iteminfo ul { margin: 0; }
    .intro .url_video .iteminfo li { font-size: 80%; padding: 1px 0; }

    /* 5. ボタンエリアは幅100%にして一番下に配置 */
    .intro .url_video .tdetail {
        width: 100%;
        margin-top: 15px; /* 上部（画像・テキスト）との余白 */
    }
    .tdetail a {
        width: 95%;
        padding: 0.5rem 0; /* 少しだけ上下を広げて押しやすく */
    }
}

/* ページネーション用スタイル */
#pagination_area {
    margin-top: 30px;
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    gap: 10px;
}

.page_btn {
    display: flex;
    align-items: center;
    justify-content: center;
    min-width: 44px; /* スマホで押しやすいサイズ */
    height: 44px;
    padding: 0 10px;
    background: #fff;
    border: 2px solid #8BC34A;
    color: #8BC34A;
    font-weight: bold;
    font-size: 16px;
    border-radius: 5px;
    cursor: pointer;
    transition: all 0.3s;
    text-decoration: none;
    box-sizing: border-box;
}

.page_btn:hover {
    background: #f1f8e9;
    opacity: 1 !important; /* 既存のaタグhoverスタイルを上書き */
}

.page_btn.active {
    background: #8BC34A;
    color: #fff;
    pointer-events: none; /* 現在のページは押せないように */
}

/* スマホ調整 */
@media (max-width: 750px) {
    #pagination_area {
        gap: 8px;
    }
    .page_btn {
        min-width: 40px;
        height: 40px;
        font-size: 14px;
    }
}