html, body, div, span, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, abbr, address, cite, code, del, dfn, em, img, ins, kbd, q, samp, small, strong, sub, sup, var, b, i, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, figcaption, figure, footer, header, hgroup, menu, nav, section, summary, time, mark, audio, video {
    border: 0;
    background: 0 0;
    outline: 0;
    vertical-align: baseline;
    margin: 0;
    padding: 0;
    border: 0;
    list-style: none;
    font-size: 100%;
    font-family: sans-serif;
    line-height: 1;
    text-decoration: none;
    -webkit-font-smoothing: antialiased;
    box-sizing: border-box;
    transition: .2s cubic-bezier(.3,.3,0,1);
    word-spacing: 1px;
    -webkit-backface-visibility: hidden;
    }

p, td, h1, h2, h3, h4, h5, th, h6 {
    line-height: 1.4;
}

body{
    visibility: visible!important;
    -webkit-text-size-adjust: 100%;
}



/**/
#container,#wrapper{
    display:flex;
    z-index:0;
    pointer-events:all;
    flex-wrap:nowrap;
    -webkit-overflow-scrolling:touch;
    display:flex;
    position:relative;
    flex-direction:column;
    align-content:center;
    align-items:center;
    flex:none
}

#container{
    position:relative;
    max-width:100%;
    z-index:0;
}

#wrapper{
    height: 100%;
    margin: 0 0 0 0;
    opacity: 1;
    padding: 0 0 0 0;
    width: 100%;
    max-width: 100%;
    }

#outwrap{
    align-content: flex-start;
    align-items: flex-start;
    bottom: auto;
    background-image: url("../img/bg.jpg");
    background-size: cover;
    display: flex; flex: none;
    flex-direction: row; flex-wrap: nowrap;
    height: 100vh; justify-content: center;
    left: 0px; margin: 0 0 0 0; overflow-x: hidden;
    overflow-y: hidden; padding: 0px; position: fixed;
    right: 0px; top: 0px; width: 100%; z-index: -2; max-width: 100%;
}
@media screen and (max-width: 1120px){
    .#outwrap{display: flex; }
}

#mainwrap{
    align-content: center;
    align-items: center;
    background: #FFF;
    box-shadow: 0px 4px 32px -8px rgb(0 0 0 / 15%);
    flex: 1;
    flex-direction: column;
    flex-wrap: nowrap;
    height: auto;
    justify-content: flex-start;
    overflow-x: hidden;
    overflow-y: scroll;
    /*スクロールバー非表示（IE・Edge）*/
    -ms-overflow-style: none;
    /*スクロールバー非表示（Firefox）*/
    scrollbar-width: none;    padding: 0px 0px 0px 0px;
    width: 400px;
    z-index: 1;
    max-width: 100%;
    pointer-events: all;
    display: flex;
    position: relative;
}
#mainwrap::-webkit-scrollbar{
  display:none;
}
@media screen and (max-width: 480px){
    #mainwrap{
        width: 100%;
        max-width: 100%;
    }
}