/* CSS information ===================================================

	file name  : frame.ver6_base.css

    このcssは、以下のテンプレートのレスポンシブデザイン対応版となります。
    campt/member/pc/frame.ver6_base.ini

	ブレイクポイント：768px

=================================================================== */

@charset "UTF-8";

/* frame.html ここから ============================================= */

body {
    background-color: #ffffff;
}

/* footerを下に固定する */
html,
body,
div#page {
    width: 100%;
    height: 100%;
}

div#page {
    background-color: #ffffff;
    display: flex;
    flex-direction: column;
    align-items: center;
}

div#footer {
    flex: 1;
}


div#header {
    width: 100%;
    max-width: 768px;
    max-height: 80px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 0 10px;
    background-color: rgba(162, 41, 19, 1.0);
}

div#header div.logo {
    width: 100%;
    height: auto;
    display: flex;
    flex-direction: column;
    align-items: center;
    margin: 10px 0;
}

div#header div.logo h1 a img {
    width: auto;
    max-width: 100%;
    height: 100%;
    max-height: 48px;
}

div#header div.pc_only.member_menu {
    display: none;
}

/* #wrapper */
div#wrapper {
    width: 100%;
    height: auto;
    display: flex;
    flex-direction: column;
    align-items: center;
    background-color: #f8f6eb;
}

/* 受付期間外メッセージ */
div#wrapper div.camp_error {
    width: 100%;
    height: auto;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 1.3em;
    font-size: 1.3em;
    font-weight: bold;
    line-height: normal;
    color: #ffffff;
    background-color: rgba(162, 41, 19, 1.0);
}

/*	システムエラーメッセージ　*/
div#wrapper div.sysmess {
    width: 100%;
    max-width: 768px;
    height: auto;
    display: flex;
    margin: 10px 0;
    padding: 0 10px;
    flex-direction: column;
    align-items: center;
}

div#wrapper dl.error {
    width: 100%;
    height: auto;
    border: solid 2px #DF2228;
    border-radius: 5px;
}

div#wrapper dl.error dt {
    padding: 10px;
    font-size: 1.1em;
    font-weight: bold;
    line-height: normal;
    color: #ffffff;
    background-color: #DF2228;
}

div#wrapper dl.error ul {
    padding: 10px;
    background-color: #ffffff;
    border-radius: 0 0 3px 3px;
}

div#wrapper dl.error li.err,
div#wrapper dl.error li.mes {
    margin-left: 1.5em;
    line-height: normal;
    list-style-type: disc;
    color: #DF2228;
    text-align: justify;
    word-break: break-all;
}

/* #page_top */
div#wrapper div#page_top {
    width: 100%;
    max-width: 768px;
    height: auto;
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    padding: 20px 10px 0 10px;
}

div#wrapper div#page_top a {
    width: auto;
    height: auto;
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    padding: 10px 10px 10px 35px;
    color: #ffffff;
    text-decoration: none;
    background: url(../../../sp/img/sp_page_top_ico01.png) no-repeat 10px center #999999;
    -moz-background-size: 18px 18px;
    -webkit-background-size: 18px 18px;
    -o-background-size: 18px 18px;
    -ms-background-size: 18px 18px;
    background-size: 18px 18px;
    border-radius: 5px 5px 0 0;
}

div#wrapper div#page_top a:hover {
    opacity: 0.9;
}

/*　上に上がる動き　*/

div#wrapper div#page_top.UpMove {
    animation: UpAnime 0.5s forwards;
}

@keyframes UpAnime {
    from {
        opacity: 0;
        transform: translateY(100px);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }
}

/*　下に下がる動き　*/

div#wrapper div#page_top.DownMove {
    animation: DownAnime 0.5s forwards;
}

@keyframes DownAnime {
    from {
        opacity: 1;
        transform: translateY(0);
    }

    to {
        opacity: 1;
        transform: translateY(100px);
    }
}

/* bottom_menu */
div#wrapper ul.bottom_menu {
    width: 100%;
    height: auto;
    display: flex;
    border-top: solid 4px #555;
    flex-direction: column;
    align-items: center;
    background-color: #ffffff;
}

div#wrapper ul.bottom_menu li {
    width: 100%;
    height: auto;
    display: flex;
    border-bottom: solid 1px #bbbbbb;
    flex-direction: column;
    align-items: center;
    justify-content: center;
}

div#wrapper ul.bottom_menu li a {
    width: 100%;
    max-width: 768px;
    height: auto;
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: space-between;
    text-decoration: none;
    color: #000000;
    background: url(../../../sp/img/sp_icon_arrow.png) no-repeat calc(100% - 20px) center;
    background-size: 12px 12px;
    padding-left: 10px;
}

div#wrapper ul.bottom_menu li:hover {
    background-color: #FEF7D5;
}

div#wrapper ul.bottom_menu li a span {
    padding: 15px 0 15px 40px;
    text-shadow: 0 1px 0 #FFF;
    background-size: 18px 18px;
}

div#wrapper ul.bottom_menu li a span span {
    padding: 0;
}


div#wrapper ul.bottom_menu li a span.icon01 {
    background: url(../../../sp/img/sp_footer_menu_ico01.png) no-repeat 10px center;
    background-size: 18px 18px;
}

div#wrapper ul.bottom_menu li a span.icon02 {
    background: url(../../../sp/img/sp_footer_menu_ico02.png) no-repeat 10px center;
    background-size: 18px 18px;
}

div#wrapper ul.bottom_menu li a span.icon03 {
    background: url(../../../sp/img/sp_footer_menu_ico03.png) no-repeat 10px center;
    background-size: 18px 18px;
}

div#wrapper ul.bottom_menu li a span.icon04 {
    background: url(../../../sp/img/sp_footer_menu_ico04.png) no-repeat 10px center;
    background-size: 18px 18px;
}

div#wrapper ul.bottom_menu li a span.icon05 {
    background: url(../../../sp/img/sp_footer_menu_ico05.png) no-repeat 10px center;
    background-size: 18px 18px;
}

div#wrapper ul.bottom_menu li a span.icon06 {
    background: url(../../../sp/img/sp_footer_menu_ico06.png) no-repeat 10px center;
    background-size: 18px 18px;
}


/* #content */
div#content {
    width: 100%;
    max-width: 768px;
    height: auto;
    display: flex;
    flex-direction: column;
    align-items: center;
    background-color: #ffffff;
}


/* #footer */
div#footer {
    width: 100%;
    max-width: 768px;
    height: auto;
    display: flex;
    flex-direction: column;
    align-items: center;
    padding: 10px;
    background-color: #333333;
}

div#footer>div {
    color: #ffffff;
}



/* pc表示 */
@media screen and (min-width:769px) {

    /* #header */
    div#header {
        max-width: 100%;
        max-height: 104px;
        flex-direction: row;
        align-items: center;
        padding: 0 10px;
    }

    div#header div.logo {
        width: auto;
        max-width: 40%;
        margin: 20px 0;
    }

    div#header div.logo h1 a img {
        max-height: 84px;
    }

    div#header div.pc_only.member_menu {
        width: auto;
        max-width: 60%;
        height: auto;
        display: flex;
        justify-content: flex-end;
        align-items: center;
        margin: 20px 0;
    }

    div#header div.pc_only.member_menu div a {
        width: auto;
        height: auto;
        display: flex;
        flex-direction: row;
        align-items: center;
        color: #000000;
        text-decoration: none;
    }

    div#header div.pc_only.member_menu div a:hover {
        text-decoration: underline;
        opacity: 0.5;
    }

    div#header div.pc_only.member_menu div a span {
        padding-left: 20px;
    }

    div#header div.pc_only.member_menu div a span span {
        padding-left: 0;
    }

    div#header div.pc_only.member_menu div.header_menu {
        margin-left: 1.0em;
    }


    div#header div.pc_only.member_menu a span.icon01 {
        background: url(../../../sp/img/sp_footer_menu_ico01.png) no-repeat 0 center;
        background-size: 18px 18px;
    }

    div#header div.pc_only.member_menu a span.icon02 {
        background: url(../../../sp/img/sp_footer_menu_ico02.png) no-repeat 0 center;
        background-size: 18px 18px;
    }

    div#header div.pc_only.member_menu a span.icon03 {
        background: url(../../../sp/img/sp_footer_menu_ico03.png) no-repeat 0 center;
        background-size: 18px 18px;
    }

    div#header div.pc_only.member_menu a span.icon04 {
        background: url(../../../sp/img/sp_footer_menu_ico04.png) no-repeat 0 center;
        background-size: 18px 18px;
    }

    div#header div.pc_only.member_menu a span.icon05 {
        background: url(../../../sp/img/sp_footer_menu_ico05.png) no-repeat 0 center;
        background-size: 18px 18px;
    }

    div#header div.pc_only.member_menu a span.icon06 {
        background: url(../../../sp/img/sp_footer_menu_ico06.png) no-repeat 0 center;
        background-size: 18px 18px;
    }

    /*	システムエラーメッセージ　*/
    div#wrapper div.sysmess {
        max-width: 960px;
    }

    /* #page_top */
    div#wrapper div#page_top {
        max-width: 960px;

    }

    /* bottom_menu */
    div#wrapper ul.sp_only.bottom_menu {
        display: none;
    }

    /* #content */
    div#content {
        max-width: 960px;
    }

    /* #footer */
    div#footer {
        max-width: 100%;
        padding: 30px 10px;
    }

}

/* frame.html ここまで ============================================= */