/* 表示幅の変更 */

body #ss_stage {
    width: inherit;
}

body #ss_container {
    width: 960px;
}


/* ヘッダー調整 */

div#ss_header {
    position: relative;
    padding-bottom: 15px;
    width: 100%;
    border-bottom: 1px solid #cccccc;
    margin-left: 0;
    margin-right: 0;
}

#ss_header>.noDispElement.template_category2 {
    display: flex !important;
    justify-content: center;
}

#ss_header>.noDispElement.template_category2 table {
    width: 960px
}

.ss_heading01 {
    display: flex !important;
    justify-content: center;
}

.ss_heading01 h1 {
    width: 960px;
    margin-top: 20px;
    font-size: 1.3em;
}

/* フッター調整 */
#ss_footer {
    width: 960px;
    font-size: 0.8em;
    text-align: right;
    border-top: 3px double #CCCCCC;
    padding-top: 8px;
    margin-right: auto;
    margin-left: auto;
    margin-top: 30px;
    height: 50px;
}

#ss_footer .noDispElement.template_category2 img {
    visibility: hidden;

}


/* 2カラム表示 */
div.contents {
    display: flex;
}

div.right_obj {
    width: 40%;
    margin-left: 5%;
}

div.right_form {
    border-top: 1px solid #c7c7c7;
    border-bottom: 1px solid #c7c7c7;
    background-color: #fff;
    border-radius: 10px;
    box-shadow: rgba(0, 0, 0, 0.24) 0px 3px 8px;
    border-left: 1px solid #c7c7c7;
    border-right: 1px solid #c7c7c7;
    /* 高さ固定の場合 */
    /* height: 500px; */
    overflow: auto;
    padding: 0.5rem !important;
    /* Edgeスクロールバー非表示 */
    -ms-overflow-style: none;
    /* Firefoxスクロールバー非表示 */
    scrollbar-width: none;
}

/* スクロールバー非表示 */
/* chrome向け */
.right_form::-webkit-scrollbar {
    display: none;
}

/* 個人情報保護 */
.pre-scrollable.col-12.mb-4 {
    height: 6rem;
    font-size: 0.7rem;
    background-color: #fff;
    border: 3px solid #efefef;
    margin-bottom: 3rem !important;
    max-height: 340px;
    overflow-y: scroll;
}

/* 文字サイズ */
.input-label {
    font-size: 0.9rem;
}


/* チェックボックス位置調整 */
input[type="checkbox"] {
    margin-right: 10px;
}


.row {
    display: flex;
    flex-wrap: wrap;
    margin-right: -15px;
    justify-content: space-between;
}

.row,
.row input[type="text"] {
    box-sizing: border-box;
    width: 100%;
    height: auto !important;
}

.form-group {
    margin-bottom: 1rem;
}

.ss_upComment,
.ss_rightComment,
.ss_bottomComment {
    display: none;
}

.no-gutters {
    margin-right: 0;
    margin-left: 0
}

.no-gutters>.col,
.no-gutters>[class*=col-] {
    padding-right: 0;
    padding-left: 0
}


.col {
    flex-basis: 0;
    flex-grow: 1;
    min-width: 0;
    max-width: 100%
}

.row-cols-1>* {
    flex: 0 0 100%;
    max-width: 100%
}

.row-cols-2>* {
    flex: 0 0 50%;
    max-width: 50%
}

.row-cols-3>* {
    flex: 0 0 33.33333%;
    max-width: 33.33333%
}

.row-cols-4>* {
    flex: 0 0 25%;
    max-width: 25%
}

.row-cols-5>* {
    flex: 0 0 20%;
    max-width: 20%
}

.row-cols-6>* {
    flex: 0 0 16.66667%;
    max-width: 16.66667%
}

.col-auto {
    flex: 0 0 auto;
    width: auto;
    max-width: 100%
}

.col-1 {
    flex: 0 0 8.33333%;
    max-width: 8.33333%
}

.col-2 {
    flex: 0 0 16.66667%;
    max-width: 16.66667%
}

.col-3 {
    flex: 0 0 25%;
    max-width: 25%
}

.col-4 {
    flex: 0 0 33.33333%;
    max-width: 33.33333%
}

.col-5 {
    flex: 0 0 41.66667%;
    max-width: 41.66667%
}

.col-6 {
    flex: 0 0 50%;
    max-width: 45%
}

.col-7 {
    flex: 0 0 58.33333%;
    max-width: 58.33333%
}

.col-8 {
    flex: 0 0 66.66667%;
    max-width: 66.66667%
}

.col-9 {
    flex: 0 0 75%;
    max-width: 75%
}

.col-10 {
    flex: 0 0 83.33333%;
    max-width: 83.33333%
}

.col-11 {
    flex: 0 0 91.66667%;
    max-width: 91.66667%
}

.col-12 {
    flex: 0 0 100%;
    max-width: 100%
}



div.left_obj {
    width: 60%;
}

/* 左側のコンテンツ内 */
/* 画像 */
.ss_header_image_section img {
    width: 100%;
}


/* 右側のフォーム内 */
/* フローナビ表示 */
div.right_form>.responsive_flow_navi img {
    width: 100%;
}

/* タイムテーブルの線を非表示 */
#ss_contents th,
#ss_contents td {
    border-width: 0;
}

#ss_contents .ss_form table.ss_timetable {
    border-right: 0;
    border-bottom: 0;
}

/* ボタン表示調整 */
#ss_contents div.ss_btnArea {
    margin-bottom: 0;
}


input[name="submit_base"] {
    color: #fff;
    background-color: #6495ed;
    border-color: #004ea1;
    padding: 0.5rem 1rem;
    font-size: 1.25rem;
    line-height: 1.5;
    border-radius: 0.3rem;
    display: block;
    width: 100%;
    margin-top: 1.5rem !important;
    cursor: pointer;
    -webkit-appearance: button;
    overflow: visible;
}

input[name="submit_base"]:hover {
    background-color: #004ea1;
}

input.back_btn {
    color: #fff;
    background-color: #a9a9a9;
    border-color: #696969;
    padding: 0.5rem 1rem;
    font-size: 1.25rem;
    line-height: 1.5;
    border-radius: 0.3rem;
    display: block;
    width: 100%;
    margin-top: 1.5rem !important;
    cursor: pointer;
    -webkit-appearance: button;
    overflow: visible;

}

body.sb_complate .responsive_flow_navi img {
    width: 40%;

}


/* レスポンシブ対応 */

@media (max-width: 767px) {
    body #ss_container {
        width: 100%;
    }

    div.contents {

        flex-direction: column;
        padding: 1rem;
    }

    div.right_obj {
        width: 100%;
        margin-left: inherit;
        height: inherit;
    }

    .row,
    .row input[type="text"],
    input[type="password"] {
        box-sizing: border-box;
        width: 100%;
    }


    div.left_obj {
        width: 100%;

    }

    div.left_obj a:link {
        white-space: pre-wrap;
        /* CSS 2.1 */
        white-space: pre-line;
        /* CSS 3.0 */
        word-wrap: break-word;
        /* IE 5+ */
    }

    /* 完了画面微修正 */
    body.sb_complate .responsive_flow_navi img {
        width: 90%;
    }
}