/* new definitions follow: */
.container{
    display: flex;
}
/* top level elements */
.form_frame{
    flex-flow: column nowrap; 
    /*background-color:#f1c400;*/
    color:#001e62;
}

.event_details{
    flex-flow: column nowrap; 
    background-color:#f1c400;
    color:#001e62;
}

.page_header{
    flex-flow: column nowrap; 
    height: 120px;
    color: white;
    justify-content:space-evenly;
    align-items:stretch;
    align-content:stretch;
    text-align:center;
    font-weight:bold;
}

/* second level elements */
.top_line{
    display:flex;
    flex-flow: row;
    justify-items:center;
    margin-top:7px;
}

.margin_top_3px{
    margin-top:3px;
}

.top_line_filler{
    flex-basis:10%;
}
.top_line_image{
    flex-basis:10%;
}

.top_line_text{
    flex-basis: 80%;
}

.event_detail_item{
    display: flex;
    align-content:flex-start;
    flex-flow: row nowrap; 
    flex-grow:1;
    margin: 3px 0px;
}

.form_item{
    display: flex;
    justify-content:flex-start;
    align-content:flex-start;
    flex-flow: row nowrap; 
    flex-grow:1;
    margin: 5px 0px;
}

/* third level elements */
.event_detail_filler{
    flex-basis:5%;
}

.event_detail_key{
    flex-basis:30%;
    text-align:left;
}

.event_detail_value{
    flex-basis:65%;
    text-align:left;
    text-wrap:wrap;
}

.form_item_title{
    text-align:center;
    margin: 10px 0px;
}

.form_mo_flag{
    flex-basis:5%;
    text-align:right;
}

.form_item_key{
    flex-basis:35%;
    text-align:left;
    text-wrap:nowrap;
}

.form_item_value{
    flex-basis:60%;
    text-align:left;
    text-wrap:wrap;
}

/* subordinate elements */
.item_caption{
    font-size:small;
    text-wrap:wrap;
    color:#606060;
}

.accompanyment_choice{
    display:flex;
    flex-flow:row nowrap;
    font-size:small;
    text-wrap:wrap;
}

.accompanyment_detail{
    display:flex;
    flex-flow:column nowrap;
}

.accompanyment_types{
    display:flex;
    flex-flow:row nowrap;
}

.accompanyment_kind{
    flex-basis:50%;
    text-wrap:wrap;
}

.accompanyment_num{
    flex-basis:50%;
    text-wrap:nowrap;
}

/* color definitions independent of structure */
.color_keio_middle{
    background-color: #c63527;
    height:30px;
}

.color_keio_top,.color_keio_bottom{
    background-color:#001e62;
    height:45px;
}

/* the button */
.button{
    padding-left: 1em;
    height: 30px;
    width: 100px;
}

/* finally, image */
#pen_details{
    height: 30px;
    width: auto;
}