/* Minification failed. Returning unminified contents.
(153,30): run-time error CSS1030: Expected identifier, found '#select2-adultPaxCnt-results'
(153,58): run-time error CSS1031: Expected selector, found ')'
(153,58): run-time error CSS1025: Expected comma or open brace, found ')'
(160,30): run-time error CSS1030: Expected identifier, found '#select2-stayDays-results'
(160,55): run-time error CSS1031: Expected selector, found ')'
(160,55): run-time error CSS1025: Expected comma or open brace, found ')'
 */
@charset "utf-8";
/* =================================================================================================

   国内宿泊のみ検索BOX

   ================================================================================================= */
/* ---------------------------------------------------------------------------------------
   レイアウト（全体）
   --------------------------------------------------------------------------------------- */
.body {
    background-color: transparent !important;
}

button:disabled, button:disabled:hover {
    background: #05bae8 !important;
    opacity: .7 !important;
    cursor: not-allowed
}

/* ---------------------------------------------------------------------------------------
   aside（conditions／検索条件フォーム）
   --------------------------------------------------------------------------------------- */
/* ---------------------------------------------------------------------------------------
   共通項目はMainBox.cssに定義 
   --------------------------------------------------------------------------------------- */
/* 目的地 */
#conditions .dest-area {
    display: flow;
}
    /* 目的地エリア1・2・3 */
    #conditions .dest-area .direction span.select2,
    #conditions .dest-area .area span.select2,
    #conditions .dest-area .district span.select2 {
        display: block;
        width: 100%;
    }

/* 出発地 */
#conditions .dept-area {
    display: flow;
}
    /*  出発地エリア1・2・3 */
    #conditions .dept-area .direction span.select2 {
        display: block;
        width: 100%;
    }

/* チェックイン・チェックアウト */
#conditions .check-area {
    display: flow;
}

/* 検索ボタン領域：横並びはPC/スマホ共通（MainBox.cssの343px未満columnを上書き） */
#conditions #modalSearchBtn.btn-area {
    flex-direction: row !important;
    flex-wrap: nowrap;
    gap: 6px;
}

/* -----------------------------------------------
   メディアクエリ(min-width: 343px) 
   ----------------------------------------------- */
@media (min-width: 343px) {

    /* 目的地エリア */
    #conditions .dest-area {
        display: flex;
        gap: 15px;
    }
        /* 目的地エリア1・2・3 */
        #conditions .dest-area .direction,
        #conditions .dest-area .area,
        #conditions .dest-area .district {
            width: 32%;
        }

    /* 出発地エリア */
    #conditions .dept-area {
        display: flex;
        gap: 15px;
    }
        /* 出発地エリア1・2・3 */
        #conditions .dept-area .direction {
            width: 32%;
        }

    /* チェックイン・チェックアウト */
    #conditions .check-area {
        display: flex;
    }
}

/* -----------------------------------------------
   スマホ(幅768px以下)のみ
   ----------------------------------------------- */
@media (max-width: 768px) {

    /* ボタン幅をスマホ対応：固定幅/固定marginを無効化して2ボタンを領域内に収める */
    #conditions #modalSearchBtn.btn-area > button.btn-lg {
        flex: 1 1 0;
        min-width: 0;
        width: auto !important; /* .btn-lg の固定幅(220px/160px)を無効化 */
        margin: 0 !important; /* .btn-lg の固定marginを無効化して幅内に収める */
        white-space: nowrap;
        overflow: hidden;
        text-overflow: ellipsis;
    }

    /* 画面高対応 */
    #conditions {
        max-height: 100vh;
        overflow-y: hidden;
        -webkit-overflow-scrolling: touch;
    }

        /* 縦余白を削減 */
        #conditions .inner {
            padding-top: 6px;
            padding-bottom: 6px;
        }

            /* 各条件ブロックの縦間隔を削減（MainBox.cssの item margin を抑制） */
            #conditions .inner .item {
                margin-bottom: 2px;
            }

        /* 検索ボタン領域の縦余白を削減 */
        #conditions #modalSearchBtn.btn-area {
            padding-top: 0;
            padding-bottom: 0;
            margin-top: 4px;
        }

            /* ボタン自体の高さ/文字サイズを削減 */
            #conditions #modalSearchBtn.btn-area > button.btn-lg {
                height: 36px; /* 42px → 36px */
                padding-top: 0;
                padding-bottom: 0;
                font-size: 13px; /* 15px → 13px */
            }
}

/* 表示件数（高さ）の制限 */
.select2-container--open .select2-results > .select2-results__options {
    max-height: 137px !important;
    overflow-y: auto !important;
}

/* =========================================================
   Select2 表示件数制御
   泊数・大人・子供・客室：約3件表示
========================================================= */
.select2-container--open:has(#select2-adultPaxCnt-results) .select2-results > .select2-results__options,
.select2-container--open:has(#select2-childPaxCnt-results) .select2-results > .select2-results__options,
.select2-container--open:has(#select2-roomCnt-results) .select2-results > .select2-results__options {
    max-height: 99px !important;
    overflow-y: auto !important;
}

.select2-container--open:has(#select2-stayDays-results) .select2-results > .select2-results__options {
    max-height: 99px !important;
    overflow-y: auto !important;
}
