body {
    min-width: 310px;
    min-height: 100%;
    position: relative;
    padding-bottom: 2em;
    box-sizing: border-box;
}

#contents {
    max-width: 1180px;
    /*min-height: 600px;*/
    margin: 0 auto;
    
    margin-top: 3em;
    padding-left : 5px;
    padding-right : 5px;
}

footer {
    position: absolute;
    bottom: 0;
    width: 100%;
}

#footer_contents {
    display: flex;
    justify-content: space-between;
    border-top: 1px solid black;
}

.textbox_label{
}

.a_button {
    text-align: center;
}

a.button_style {
    box-shadow: 0 0 4px #333333;
    border: 0px;
    background-color: #f6f6f6;
    background: -webkit-gradient(linear, left top, left bottom, from(#ffffff), color-stop(0.90, #ffffff), to(#aaaaff));
    background: -moz-linear-gradient(top, #ffffff, #ffffff 90%, #aaaaff);
    filter: progid:DXImageTransform.Microsoft.Gradient(GradientType=0, StartColorStr=#ffffff, EndColorStr=#aaaaff);
    /* IE10 */
    background: linear-gradient(to bottom, #ffffff, #ffffff, #aaaaff);
    
    color: #0077ff;
    font-size: 1.4em;
    font-weight: 900;
    -webkit-border-radius: 6px;
    border-radius: 6px;
    text-align: center;
    text-decoration: none;
    /* cursor:hand; */
    cursor: pointer;

    display: block;
    padding: 0.5em;
    margin: 0.5em 0.25em;
    min-width: 6em;
    max-width: 10em;
}


a.button_style:hover {
    color: #ff0000;
    background-color: #ffdcf0;
    background: -webkit-gradient(linear, left top, left bottom, from(#ffa7a9), color-stop(0.01, #ffdcf0), color-stop(0.5, #ffa7a9), color-stop(0.99, #ffa7a9), to(#ffdcf0));
    background: -moz-linear-gradient(top, #ffa7a9, #ffdcf0 1%, #ffdcf0 50%, #ffa7a9 99%, #ffdcf0);
    filter: progid:DXImageTransform.Microsoft.Gradient(GradientType=0, StartColorStr=#ffa7a9, EndColorStr=#ffdcf0);
    /* IE10 */
    background: linear-gradient(to bottom, #ffa7a9, #ffdcf0, #ffdcf0);
    /* background: #777777; */
}



.page {
    font-size: 1.5em;
}


.login_page {
    margin-top: 1em;
}

.move_page {
    margin-top: 1em;
    /*background-color: royalblue;*/
}

.syusseki_page {
    margin-top: 1em;
}

.isyoku_page {
    margin-top: 1em;
    display: none !important;
}

.report_page {
    margin-top: 1em;
    display: none !important;
}

.ninteisho_page {
    margin-top: 1em;
    display: none !important;
}

.setting_page {
    margin-top: 1em;
    display: none !important;
}


img {
    max-width: 100%;
    height: auto;
}

button {
    width: 8em;
}

.button_center {
    text-align: center;
}

.box {
    display: flex;
    flex-wrap: wrap;
    
    padding: 0 5px;
    justify-content: center;
    align-items: center;
}

#side-menu .box {
    padding: 0;
}


.shiken_schedule_date {
    padding-left: 1em;
}

.report_kyu {
    font-weight: bold;
}


.acd-check {
    display: none;
}

.acd-label {
    display: none;
}

/*チェックボックスをフラットデザインに*/
label.flat-design > input[type="checkbox"] {
	position: relative;
	top: 13.33333px;
	right: 0;
	bottom: 0;
	left: 0;
	width: 30px;
	height: 30px;
	margin-right: 0.5rem;
	cursor: pointer;
	transition: all 0.15s ease-out 0s;
	color: #ffffff;
	border: none;
	outline: none;
	background: #d7cbcb;
	-webkit-appearance: none;
	        appearance: none;
}
label.flat-design > input[type="checkbox"]:hover {
	background: #d6a9a9;
}
label.flat-design > input[type="checkbox"]:checked {
	background: #da3c41;
}
label.flat-design > input[type="checkbox"]:checked::before {
	/*font-size: 20px;*/
	line-height: 30px;
	position: absolute;
	display: inline-block;
	width: 30px;
	height: 30px;
	content: '✔';
	text-align: center;
}
label.flat-design > input[type="checkbox"]:checked::after {
	position: relative;
	display: block;
	content: '';
	background: #da3c41;
}
label.flat-design {
	line-height: 40px;
	display: block;
}
label.flat-design > input[type="checkbox"]:disabled {
	cursor: not-allowed;
	background: #b8b7b7;
}
label.flat-design > input[type="checkbox"]:disabled::before {
	font-size: 20px;
	line-height: 30px;
	position: absolute;
	display: inline-block;
	width: 30px;
	height: 30px;
	content: '✖︎';
	text-align: center;
}
/*チェックボックスをフラットデザインに*/



/*エラーメッセージ*/
#mainErrorMessage{
    padding: 0.5em;
    margin-bottom: 1em;
    background-color: pink;
    border-radius: 0.5em;
}
#mainErrorMessage ul {
    padding-top: 0.5em;
}
#mainErrorMessage li {
    list-style-position: inside;
    padding: 0.1em 0;
    padding-left: 0.5em;
}
/*エラーメッセージ*/


@media screen and (max-width: 767px) {
    #footer_contents {
        display: block;
    }

    .move_page a.button_style {
        box-shadow: 0 0 0px #333333;
        background-color: transparent;
        background: transparent;
        color: white;
        font-size: 1.4em;
        font-weight: 900;
        text-align: center;
        text-decoration: none;
        cursor: pointer;

        display: block;
        padding: 1.0em;
        min-width: 8em;
        
        max-width: 1000px;
        margin: 0px;
        border-radius: 0px;
    }

    .move_page a.button_style:hover {
        background: cornflowerblue;
    }

    .move_page {
        background-color: royalblue;
    }
    
    .acd-content div{
        width: 100%;
    }
    
    /*メニュー表示切替*/
    #header-menu{
        display:none;
    }
    
}
