BODY, HTML {
	width:100%;
	height:100%;
}
BODY {
	position:relative;
	color:#000;
	background:#FFF;
	padding:0px;
	margin:0px;
	font-family: Arial, Helvetica, sans-serif;
	font-weight: normal;
	font-size: min(4.8vw, 3vh);
	-webkit-text-size-adjust:none;
}
BODY.home:before,
BODY.form:before {
	position: fixed;
	content:"";
	top:0;
	left:0;
	width:100%;
	height:100%;
	background-position: center center;
	background-size: cover;
	background-repeat: no-repeat;
	z-index:0;
}
BODY.home:before {
	background-image: url('../images/grnd_home.jpg');
}
BODY.form:before {
	background-image: url('../images/grnd_form.jpg');
}
.body {
	padding-bottom:75px;
}
.fullscreen {
	position:absolute;
	top:0;
	left:0%;
	width:100%;
	height:100%;
	overflow:hidden;
}
.wrapper {
	position:relative;
	width:700px;
	margin:0px auto;
}
BODY.home .wrapper {
	width:600px;
}
.narrow {
	position:relative;
	margin:0px auto;
	width: 90%;
}
P {
	margin-top:0.25em;
	margin-bottom:0.25em;
}
A {
}
A:link, A:visited {
	color:#3ba246;
}
B {
	font-weight: bold;
}
I, EM {
	font-style:italic;
	font-size:smaller;
}
SMALL {
	font-size:70%;
}
BIG {
	font-size:125%;
}
H1 {
	color:#0f1b63;
	font-size: 130%;
	margin:0.5em 0;
}
H2 {
	font-size: 120%;
	font-weight: bold;
	margin:1em 0;
}
.halfcolumn {
	float:left;
	width: calc((100% - 1 * 10px) / 2);
}
.halfcolumn:nth-child(2n + 2) {
	float:right;
}
.onethreecolumn {
	float:left;
	width: calc((100% - 2 * 10px) / 3);
}
.onethreecolumn:nth-child(3n + 2) {
	margin-left:10px;
}
.onethreecolumn:nth-child(3n + 3) {
	float:right;
}
.twothreecolumn {
	float:left;
	width: calc((100% * 2 - 10px) / 3);
}
.bigcolumn {
	float:left;
	width: calc(100% - 110px);
}
.smallcolumn {
	float:right;
	width: 100px;
}
._middle {
	position:absolute;
	width:100%;
	top:46%;
	-webkit-transform: translateY(-50%);
       -moz-transform: translateY(-50%);
         -o-transform: translateY(-50%);
        -ms-transform: translateY(-50%);
            transform: translateY(-50%);
}
._top {
	position: absolute;
	width:100%;
	top:7%;
	left:0;
}
._bottom {
	position: absolute;
	width:100%;
	bottom:70px;
	left:0;
}
._fullwidth {
	width: 100%;
}
._halfwidth {
	width: 50%;
}
span.error {
	display:block;
	color:red;
	background-color: rgba(255,255,255,0.3);
	padding:5px;
	font-family: 'Oswald', Arial, Helvetica, sans-serif;
	font-weight: 300;
	font-size: 75%;
	text-align:center;
	margin-top:5px;
	-webkit-border-radius:10px;
	   -moz-border-radius:10px;
	        border-radius:10px;
}
span.edit, span.image, span.draw {
	display:inline-block;
	width:20px;
	height:20px;
	margin:0 1px;
	background: url(../images/icon_pin.png) no-repeat center center;
	background-size: 100% 100%;
	cursor: pointer;
}
span.edit {
	background-image: url(../images/icon_edit.png);
}
span.image {
	background-image: url(../images/icon_camera.png);
}
span.draw {
	background-image: url(../images/icon_setting.png);
}
.grey {
	color:#999;
	font-style:italic;
}
.red {
	color:red;
}
.yellow {
	color:orange;
}
.blue {
	color:#0072ec;
}
.green {
	color:green;
}
.required {
	display:inline-block;
	width:16px;
	height:16px;
	color:#F00;
	background: url(../images/required.png) no-repeat center center;
	background-size: 10px 10px;
	text-indent: -999px;
	overflow:hidden;
}
.nowrap {
	white-space:nowrap;
}
.message {
	display:block;
	margin:10px 0px;
	padding:10px;
	color:#FFF;
	background-color:red;
	text-align:center;
	-webkit-border-radius:5px;
	   -moz-border-radius:5px;
	        border-radius:5px;
}
.inputtext,
INPUT[type='text'],
INPUT[type='password'],
INPUT[type='date'],
INPUT[type='number'],
INPUT[type='file'],
TEXTAREA, .textarea,
SELECT {
	display:block;
	color:#4f4f4f;
	border:1px solid #00a2f5;
	background-color: #FFF;
	font-family: 'Oswald', Arial, Helvetica, sans-serif;
	font-weight: 300;
	font-size: 80%;
	text-align: center;
	text-transform: uppercase;
	margin:1px 0;
	padding:1px 10px;
	width: calc(100% - 22px);
	-webkit-border-radius:10px;
	   -moz-border-radius:10px;
	        border-radius:10px;
	-webkit-appearance: none;
	   -moz-appearance: none;
	        appearance: none;
	outline: none;
	line-height:1.8em;
}
INPUT[type='image'] {
	width:250px;
}
INPUT[type='date'] {
	min-height: 28px;
}
INPUT[type='date']::-webkit-datetime-edit {
	line-height: 1;
	padding: 0;
	margin-bottom: -2px;
}
INPUT[type='checkbox'],
INPUT[type='radio'] {
	border:1px solid #00a2f5;
	background-color:#FFF;
	width: 24px;
	height:24px;
	margin:0;
	display: inline-grid;
	place-content: center;
	-webkit-border-radius:5px;
	   -moz-border-radius:5px;
	        border-radius:5px;
	-webkit-appearance: none;
	appearance: none;
}
INPUT[type='checkbox']::before,
INPUT[type='radio']::before {
	content: "";
	width:16px;
	height:16px;
	background-color:#00a2f5;
	-webkit-border-radius:2px;
	   -moz-border-radius:2px;
	        border-radius:2px;
	opacity:0;
}
INPUT[type="checkbox"]:checked::before,
INPUT[type="checkbox"]:checked::before {
	opacity:1;
}
INPUT[type='number'].hidearrow::-webkit-outer-spin-button,
INPUT[type='number'].hidearrow::-webkit-inner-spin-button {
	-webkit-appearance: none;
	margin: 0;
}
.inputtext {
	white-space:nowrap;
	overflow:hidden;
	text-overflow: ellipsis;
}

TEXTAREA {
	height: calc(200px - 40px);
}
INPUT[type='text']:focus,
INPUT[type='password']:focus,
INPUT[type='date']:focus,
INPUT[type='number']:focus {
	border-color:#6bb745;
}
INPUT[type='text']:disabled,
INPUT[type='password']:disabled,
INPUT[type='date']:disabled,
INPUT[type='number']:disabled {
	color:#999;
}
SELECT {
	text-align: left;
	width: 100%;
}
::-webkit-input-placeholder { /* WebKit, Blink, Edge */
	font-size: 100%;
	font-style:italic;
	color: #CCC;
}
:-moz-placeholder { /* Mozilla Firefox 4 to 18 */
	font-size: 100%;
	font-style:italic;
	color: #CCC;
	opacity:  1;
}
::-moz-placeholder { /* Mozilla Firefox 19+ */
	font-size: 100%;
	font-style:italic;
	color: #CCC;
	opacity:  1;
}
:-ms-input-placeholder { /* Internet Explorer 10-11 */
	font-size: 100%;
	font-style:italic;
	color: #CCC;
}
::-ms-input-placeholder { /* Microsoft Edge */
	font-size: 100%;
	font-style:italic;
	color: #CCC;
}

INPUT[type='reset'],
INPUT[type='button'],
INPUT[type='submit'] {
	display:inline-block;
	color:#FFF;
	border:1px solid #FFF;
	background-color:#4fc3ed;
	padding:3px 20px;
	margin:5px;
	text-align:center;
	white-space : nowrap;
	font-family: 'Oswald', Arial, Helvetica, sans-serif;
	font-weight: 500;
	font-size: 80%;
	-webkit-border-radius:50px;
	   -moz-border-radius:50px;
	        border-radius:50px;
	box-shadow: 1px 1px 5px inset #0059ba, 1px 1px 5px #0059ba;
	cursor: pointer;
	line-height:1.8em;
}
INPUT[type='button'].solid,
INPUT[type='submit'].solid {
	border:none;
	margin:0px;
	padding:2px 20px;
	box-shadow:none;
	background-color:#0072ec;
	font-weight:300;
}
INPUT[type='button'].disabled,
INPUT[type='submit'].disabled {
	background-color:#b7b7b7;
	box-shadow: 1px 1px 5px inset #b7b7b7, 1px 1px 5px #b7b7b7;
	cursor:default;
}

INPUT[type='submit'], INPUT[type='button'].submit {
}
.fileinput {
	position:relative;
	display:inline-block;
	color:#FFF;
	background-color:#0072ec;
	padding:3px 20px;
	text-align:center;
	white-space : nowrap;
	font-family: 'Oswald', Arial, Helvetica, sans-serif;
	font-weight: 500;
	font-size: inherit;
	-webkit-border-radius:50px;
	   -moz-border-radius:50px;
	        border-radius:50px;
	cursor: pointer;
	line-height:1.8em;
}
.fileinput span {
}
.fileinput input[type='file'] {
	position:absolute;
	margin:0;
	padding:0;
	top:0;
	left:0;
	width:100%;
	height:100%;
	opacity:0;
	z-index:2;
}

.logo {
	padding-top:20px;
	text-align:center;
}

.navigation {
	position:fixed;
	left:0;
	bottom:0;
	width:100%;
	z-index:1;
	background-color: rgba(255,255,255,0.9);
}
.navigation ul {
	list-style-type:none;
	margin:0;
	padding:10px 0px;
	text-align:center;
	display:flex;
}
.navigation ul li {
	flex:1;
	flex-grow: 1;
	display:inline-block;
	margin:0;
	text-align:center;
}
.navigation ul li img {
	display:inline-block;
	width:20px;
	height:20px;
}
.navigation ul li span {
	display:inline-block;
	white-space:nowrap;
	margin-top:3px;
}
.navigation ul li a {
	text-decoration:none;
	font-size:small;
}
.navigation ul li a:link, .navigation ul li a:visited {
	color:#333;
}
.scrolling {
	margin:0px auto;
	width: 100%;
	overflow-x:auto;
}
.ttable {
	font-size: 16px;
	color:#333;
	background-color:#FFF;
	border-collapse: collapse;
}
.ttable > thead {
	background-color:#EEE;
}
.ttable > thead > tr,
.ttable > tbody > tr {
}
.ttable > thead > tr > th,
.ttable > tbody > tr > td,
.ttable > tfoot > tr > td {
	padding:10px;
	text-align:left;
	border-left: 1px dotted rgba(128,128,128,0.25);
	vertical-align: top;
}
.ttable > tbody > tr > td,
.ttable > tfoot > tr > td {
	border-top:1px solid #4f4f4f;
}
.ttable > tfoot {
	background-color:#EEE;
	font-weight:bold;
}

a.pagenav {
	display:inline-block;
	padding:5px 10px;
	-webkit-border-radius:5px;
	   -moz-border-radius:5px;
	        border-radius:5px;
	text-decoration:none;
	font-weight:bold;
}
a.pagenav:link, a.pagenav:visited {
	color:#3ba246;
	background-color:#FFF;
}
a.pagenav:hover,
a.pagenav.active {
	color:#003c49;
	background-color:#3ba246;
}
.textbold {
	font-family: 'Oswald', Arial, Helvetica, sans-serif;
	font-weight: 300;
	margin-top:0.5em;
	line-height:1.2em;
}
.textbold b {
	font-weight: 500;
}
.larger {
	font-size: larger;
}
.bigger {
	margin:0;
	font-size: 350%;
	text-shadow: -2px -2px 0 #FFF, 2px -2px 0 #FFF, -2px  2px 0 #FFF, 2px  2px 0 #FFF;
}
.frame {
	display:block;
	border:1px solid #FFF;
	background-color: rgba(255,255,255, 0.7);
	box-shadow: 1px 1px 5px inset #0059ba, 1px 1px 5px #0059ba;
	padding:10px 20px;
	-webkit-border-radius:15px;
	   -moz-border-radius:15px;
	        border-radius:15px;
}
.scroll {
	margin:0px auto;
	height: 200px;
	overflow-y:auto;
	line-height:1em;
}
.photo {
	overflow:hidden;
	max-height:30px;
	-webkit-border-radius:15px;
	   -moz-border-radius:15px;
	        border-radius:15px;
}

.board {
	position:relative;
	width:100%;
	padding-bottom:100%;
}
.circle {
	position:absolute;
	top:0;
	left:0;
	width:100%;
	height:100%;
	z-index:1;
}
.centerdot {
	position:absolute;
	top:42%;
	left:42%;
	width:16%;
	height:16%;
	z-index:2;
}
.arrow {
	position:absolute;
	bottom:0;
	left:45%;
	width:10%;
	height:10%;
	z-index:3;
}
.centerdot span,
.circle span,
.arrow span {
	display:block;
	position:absolute;
	top:50%;
	left:50%;
	width:100%;
	height:100%;
	background-position:center center;
	background-repeat: no-repeat;
	background-size:100% 100%;
	-webkit-transform: translate(-50%,-50%);
       -moz-transform: translate(-50%,-50%);
         -o-transform: translate(-50%,-50%);
        -ms-transform: translate(-50%,-50%);
            transform: translate(-50%,-50%);
}
.centerdot span {
	background-image: url(../images/center.png);
}
.circle span {
	background-image: url(../images/circle.png);
}
.arrow span {
	background-image: url(../images/pin.png);
}
.counter {
	position:absolute;
	width: 25%;
	font-size: smaller;
	white-space: nowrap;
	z-index:1;
}
.counter p {
	margin:0.5em;
	position:absolute;
}
.confirm {
	position:absolute;
	width:100%;
	z-index:9;
}
.underline {
	border-bottom: 1px dotted #4fc3ed;
}
.underline:last-child {
	border-bottom:none;
}
.dashline {
	border-bottom:1px dashed #0072ec;
}
.leftline {
	border-left:1px solid #0072ec;
}
TR:last-child .dashline {
	border-bottom:none;
}