/*
------------------------------------------------------------
PC 用 (基本設定)
------------------------------------------------------------
*/
html {
	-webkit-text-size-adjust: 100%;
	font-size: 62.5%;
}

body {
	margin: 0px;
	font-family: "Helvetica Neue", "游ゴシック Medium", YuGothic, YuGothicM, "Hiragino Kaku Gothic ProN", メイリオ, Meiryo, sans-serif;
	color: #333;
	background-color: #ecf7fc;
	text-align: center;
	font-size: 1.8rem; /* 18px */
	height: 100%;
}

#wrap {
	margin: 0 auto;
	padding: 0px;
	background-color: #ecf7fc;
	text-align: center;
}

#head {
	display: table;
	width: 100%;
	height: 100px;
	margin: 0 auto;
	padding: 0px;
	color: #106eb7;
	text-shadow:
        2px 2px 2px #fff,
        2px -2px 2px #fff,
        -2px 2px 2px #fff,
        -2px -2px 2px #fff,
        0 0 22px #fff;
	background-image: url('images/hello1.png');
	background-size: contain;
	background-repeat: no-repeat;
	background-position: center;
}

#subhead {
	color: #106eb7;
	text-shadow:
        2px 2px 2px #fff,
        2px -2px 2px #fff,
        -2px 2px 2px #fff,
        -2px -2px 2px #fff,
        0 0 22px #fff;
}

#content {
	margin: 0 auto;
	padding: 20px;
	text-align: left;
}

.form {
	display: flex;
	justify-content: center;
	align-items: center;
}

#foot {
	position: absolute;
	width: 100%;
	bottom: 0px;
}

h1 {
	display: table-cell;
	vertical-align: middle;
	margin: 0px;
	padding: 0px;
	text-align: center;
	vertical-align: middle;
	font-size: 2.8rem; /* 28px */
	font-weight: bold;
}

p {
	line-height: 1.2em;
	vertical-align: middle;
	margin-bottom: 0.5em;
}

img {
	vertical-align: middle;
}

img.medium {
	height: 30px;
	margin-right: 5px;
}

img.small {
	height: 18px;
	margin-left: 5px;
	margin-right: 5px;
}

span {
	margin-top: 0.5em;
}

ul {
	width: auto;
	border: dashed 2px #668ad8;
	margin: 0px;
	margin-bottom: 10px;
	padding: 10px;
}

li {
	list-style: disc;
	margin-left: 20px;
	margin-top: 0.5em;
	margin-bottom: 0.5em;
}

ul.folder > li {
	list-style: none;
	display: flex;
	align-items: center;
}

li > span {
	color: #f78181;
	font-weight: bold;
}

a {
	color: #333;
	text-decoration: none;
}

#notice {
	width: auto;
	border: solid 2px #668ad8;
	margin: 0px;
	margin-bottom: 10px;
	padding: 0px;
}

#notice-header {
	background-color: #668ad8;
	color: #ffffff;
	text-align: center;
}

#notice-content {
	padding: 10px;
	padding-top: 5px;
	padding-bottom: 5px;
}

form.login {
	background-origin: content-box;
	background-size: contain;
	background-repeat: no-repeat;
	background-position: right bottom;
	width: 400px;
	text-align: left;
}

form.logout {
	margin-top: 20px;
}

dl {
	margin-top: 20px;
}

dt {
	border-left: 10px solid #106eb7;
	padding-left: 5px;
	margin-top: 10px;
	margin-bottom: 10px;
}

dd {
	margin-left: 15px;
	margin-bottom: 20px;
}

.textbox {
	-moz-appearance: none;
	-webkit-appearance: none;
	border-width: 1px;
	border-color: #848484;
	border-radius: 0.3em;
	padding-left:0.3em;
	font-size: 1.8rem; /* 18px */
	color: #333;
}

.textbox:focus {
	background-color: #ffffdd;
	border-color: #fe9a2e;
	outline: none;
}

.selectbox {
	border-width: 1px;
	border-color: #848484;
	border-radius: 0.3em;
	padding-left: 0.1em;
	font-size: 1.8rem; /* 18px */
	color: #333;
}

.button {
	-moz-appearance: none;
	-webkit-appearance: none;
	background-color: #85c35b;
	border-width: 0px;
	border-radius: 0.3em;
	padding: 5px 15px;
	font-size: 2.0rem; /* 20px */
	font-weight: bold;
	color: #ffffff;
}

#regist.button {
	background-color: #106eb7;
}

div#foot > p {
	text-align: center;
}

.error {
	font-size: 90%;
	color: #BB1850;
}

.video-js.vjs-playing .vjs-tech {
 	pointer-events: none;
}


/*
------------------------------------------------------------
スマートフォン (横向き) 用 (上記設定との差分)
------------------------------------------------------------
*/
@media screen and (max-width: 896px) {
#wrap {
	min-width: 480px;
	font-size: 1.4rem; /* 14px */
}

#head {
	height: 60px;
}

#foot {
	position: static;
}

h1 {
	font-size: 2.0rem; /* 20px */
}

li {
	margin-top: 0.3em;
	margin-bottom: 0.3em;
}

dt {
	margin-bottom: 5px;
}

dd {
	margin-bottom: 0.5em;
}

.textbox {
	font-size: 1.4rem; /* 14px */
}

.button {
	font-size: 1.6rem; /* 16px */
}

}


/*
------------------------------------------------------------
スマートフォン (縦向き) 用 (上記設定との差分)
------------------------------------------------------------
*/
@media screen and (max-width: 480px) {
#wrap {
	min-width: 360px;
}

#foot {
	position: absolute;
}

}
