*{
	-moz-box-sizing:border-box;
	-webkit-box-sizing:border-box;
	box-sizing:border-box;
	font-family: -apple-system, BlinkMacSystemFont, "segoe ui", roboto, oxygen, ubuntu, cantarell, "fira sans", "droid sans", "helvetica neue", Arial, sans-serif;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}

body{
	margin: 0px;
	padding: 0px;
	border: 0px;
	background-color: #FFFFFF;
	color: #000000;
}

.pheader{
	padding-top:10vh;
	padding-bottom:1em;
	position:sticky;
	left:0px;
	right:0px;
	z-index:999999;
	top:0px;
	background-color:#FFFFFF;
	opacity:0.98;
	border-bottom:none;
	transition: padding-top 0.5s, border-bottom 0.5s;
}

.pheader_block{
	max-width:1100px;
}
.pheader_left{
	display:block;
	padding-right:0px;
	transition: padding-right 0.5s;
}
.pheader_right{
	display:none;
	position:relative;
	vertical-align:top;
	top:0px;
	bottom:0px;
	text-align:center;
	padding-left:0px;
	padding-top:5vh;
	transition: padding-left 0.5s;
}
.pheader_title{
	font-size:8vw;
	font-family: Helvetica;
	transition: font-size 0.5s;
}
.pheader_subtitle{
	font-size:2vw;
	transition: font-size 0.5s;
}
.pheader_subtitle img{
	max-height:1em;
}
.pheader_subtitle a{
	text-decoration:none;
	color:#000000;
}
.pheader_subtitle a:hover{
	border-bottom:0.15em solid #2C568C;
}
.pheader_subtitle2{
	display:block;
	padding-top:2vh;
	font-size:1.4vw;
	transition: display 0.5s;
}
.pheader.pinned{
	position:sticky;
	left:0px;
	right:0px;
	z-index:999999;
	padding-top:0.4em;
	padding-bottom:0.4em;
	border-bottom:1px solid #2C568C;
	transition: padding-top 0.5s, padding-bottom 0.5s, border-bottom 0.5s;
}
.pheader.pinned .pheader_title{
	font-size:3em;
	transition: font-size 0.5s;
}
.pheader.pinned .pheader_subtitle{
	font-size:1em;
	transition: font-size 0.5s;
}
.pheader.pinned .pheader_subtitle2{
	display:none;
	transition: display 0.5s;
}
.pheader.pinned .pheader_left{
	display:inline-block;
	text-align:left;
	padding-right:10vw;
	padding-left:1%;
	width:48%;
	transition: padding-right 0.5s;
}
.pheader.pinned .pheader_right{
	display:inline-block;
	text-align:right;
	padding-left:10vw;
	padding-right:1%;
	width:48%;
	transition: padding-left 0.5s;
}



.pageblock1{
	-moz-box-sizing:border-box;
	-webkit-box-sizing:border-box;
	box-sizing:border-box;
	padding-top:6vh;
	padding-bottom:8vh;
	padding-left:5vw;
	padding-right:5vw;
	color:#000000;
	background-color:#FFFFFF;
}
.pageblock1 h1{
	color:#2C568C;
}


.pageblock2{
	-moz-box-sizing:border-box;
	-webkit-box-sizing:border-box;
	box-sizing:border-box;
	padding-top:10vh;
	padding-bottom:10vh;
	padding-left:5vw;
	padding-right:5vw;
	color:#FFFFFF;
	background-color:#2C568C;
}
.pageblock2 h1{
	color:#FFFFFF;
}


.pageblock3{
	-moz-box-sizing:border-box;
	-webkit-box-sizing:border-box;
	box-sizing:border-box;
	padding-top:10vh;
	padding-bottom:10vh;
	padding-left:5vw;
	padding-right:5vw;
	color:#000000;
	background-image:url('sys/bg1.jpg');
	background-repeat:no-repeat;
	background-size:cover;
}
.pageblock3 h1{
	color:#2C568C;
}

.pageblock4{
	-moz-box-sizing:border-box;
	-webkit-box-sizing:border-box;
	box-sizing:border-box;
	padding-top:5vh;
	padding-bottom:5vh;
	padding-left:5vw;
	padding-right:5vw;
	color:#FFFFFF;
	background-color:#2C568C;
}
.pageblock4 h1{
	color:#FFFFFF;
}

.pageblock4 a{
	color:#FFFFFF;
	font-size:small;
}

.pageblock5{
	position:fixed;
	bottom:0px;
	left:0px;
	right:0px;
	-moz-box-sizing:border-box;
	-webkit-box-sizing:border-box;
	box-sizing:border-box;
	padding-top:1.6vh;
	padding-bottom:1.6vh;
	padding-left:5vw;
	padding-right:5vw;
	color:#468AE4;
	background-color:#2C568C;
	font-size:1.1em;
}
.pageblock5 h1{
}
.pageblock5 a{
	color:#FFFFFF;
	font-size:1.1em;
}



.pinfobtn{
	display:inline-block;
	background-color:#FFFFFF;
	color:#000000;
	border-radius:50%;
	width:40px;
	height:40px;
	padding:10px;
	margin:10px;
	cursor:pointer;
    transition:background-color 100ms, color 100ms;
}
.pinfobtncur{
	background-color:#3465A4;
	color:#FFFFFF;
    transition:background-color 100ms, color 100ms;
}


.pblock{
	margin:1em;
	display:inline-block;
	background-color:#FFFFFF;
	color:#000000;
	border:0.2em solid #2C568C;
	vertical-align:top;
	border-radius: 6px;
	box-shadow: 5px 5px 20px #8888AA;
}

.pblock_header{
	background-color:#3465A4;
	color:#FFFFFF;
	text-align:center;
	padding-top:0.5em;
	padding-bottom:0.7em;
	border-top-left-radius:2px;
	border-top-right-radius:2px;
}
.pblock_header_title{
	text-align:center;
	font-size:1.6em;
	font-weight:bold;
	font-style:italic;
}
.pblock_header_subtitle{
	text-align:center;
	font-size:1em;
}
.pblock_subheader{
	padding-top:1em;
	text-align:center;
	font-size:1em;
}
.pblock_subheader_price{
	display:inline-block;
	font-weight:bold;
	border-bottom:2px solid #3465A4;
}

.pblock_body{
	padding:1em;
}

.pblock_detail{
	border:2px solid #3465A4;
	background-color:#E4F2FF;
}
.pblock_detail_header{
	background-color:#3465A4;
	color:#FFFFFF;
	font-weight:bold;
	padding:0.3em;
}
.pblock_detail_table{
}
.pblock_detail_table tr{
}
.pblock_detail_cell_head{
	padding:0.1em;
	padding-left:0.3em;
	padding-right:0.3em;
	font-weight:bold;
	background-color:#3465A4;
	color:#FFFFFF;
}
.pblock_detail_cell_name{
	padding:0.3em;
	text-align:right;
	font-weight:bold;
}
.pblock_detail_cell_value{
	padding:0.3em;
	text-align:left;
}
.pblock_detail_cell_info{
	padding:0.3em;
	padding-left:0.6em;
	padding-top:1em;
	padding-bottom:1em;
	text-align:left;
	font-size:0.8em;
}
.pblock_detail_cell_info ul{
	margin:0.2em;
	padding-left:1.2em;
}

.pblock_detail_cell_border{
	border-bottom:1px solid #3465A4;
}

.pblockbuissness{
	padding-top:2vh;
	padding-bottom:10vh;
	font-size:1.2em;
}
.pblockbuissness a{
	font-size:1.2em;
}

.pblock_agb{
	padding-top:2em;
	padding-bottom:1em;
	font-size:0.8em;
}
.pblock_agb_body{
	text-align:left;
}





.formbutton{
	-moz-box-sizing:border-box;
	-webkit-box-sizing:border-box;
	box-sizing:border-box;
	display:inline-block;
	text-align:center;
	vertical-align:top;
	padding:0.4em;
	font-size:large;
	background-color:#3465A4;
	color:#FFFFFF;
	border:none;
	transition-property: color, background-color;
	transition-duration: 0.1s;
	transition-delay: 0s;
	cursor:pointer;
}
.formbutton:hover{
	background-color:#4484D7;
	transition-property: color, background-color;
	transition-duration: 0.1s;
	transition-delay: 0s;
}

.formdropbox{
	border:0.2em solid #3465A4;
	background-color:#FFFFFF;
	color:#000000;
}




.cheb{
	display: block;
	position: absolute;
	cursor: default;
	-webkit-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;
	-moz-box-sizing:border-box;
	-webkit-box-sizing:border-box;
	box-sizing:border-box;
	border:2px solid #3465A4;
	cursor:pointer;
}

.cheb_size{
	width:1.8em;
	height:1.8em;
}

.cheb input{
	position: absolute;
	opacity: 0;
	cursor: default;
}

.cheb_checkmark{
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-color: #FFFFFF;
}

.cheb input:checked ~ .cheb_checkmark{
	background-color: #4586DA;
}

.cheb_checkmark:after{
	content: "";
	position: absolute;
	display: none;
}

.cheb_checkmark:focus{
	border:3px dotted #4586DA;
	outline:5px dotted #4586DA;
}

.cheb input[type="checkbox"]:focus + label::before{
    outline: rgb(59, 153, 252) auto 5px;
}

.cheb input:checked ~ .cheb_checkmark:after{
	display: block;
}

.cheb .cheb_checkmark:after{
	left: calc(50% - 20%);
	top: calc(50% - 40%);
	width: 30%;
	height: 50%;
	border: solid white;
	border-width: 0 3px 3px 0;
	-webkit-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	transform: rotate(45deg);
}



@media only screen and (max-width: 420px) {
	.pinfobtn{
		margin:4px;
	}
	.pageblock5{
		font-size:0.7em;
	}
	.pageblock5 a{
		font-size:1em;
	}
}

@media screen and (orientation:landscape){
	.pinfo_block{
		max-width:1000px;
	}
	.pinfo{
		margin:1em;
		display:inline-block;
		background-color:#FFFFFF;
		color:#000000;
		border:0.2em solid #1D3A5F;
		vertical-align:top;
		border-radius: 6px;
		box-shadow: 5px 5px 20px #1D3A5F;
		width:100%;
		height:400px;
		max-width:800px;
		position:relative;
	}
	.pinfo_image{
		display:block;
		width:50%;
		position:absolute;
		left:0%;
		right:50%;
		top:0px;
		bottom:0px;
		overflow:hidden;
	}
	.pinfo_image img{
		-moz-box-sizing:border-box;
		-webkit-box-sizing:border-box;
		box-sizing:border-box;
		width:100%;
	}
	.pinfo_text{
		display:block;
		width:50%;
		position:absolute;
		left:50%;
		right:0%;
		top:0px;
		bottom:0px;
		background-color:#3465A4;
		color:#FFFFFF;
		text-align:center;
		vertical-align:middle;
		padding:2em;
		font-size:1.4em;
		border-bottom-left-radius:2px;
		border-bottom-right-radius:2px;
	}
	.pinfo_textbody{
		display: flex;
		height:100%;
		width:100%;
		justify-content: center;
		align-items: center;
		font-size:1.0em;
	}
}
@media screen and (orientation:portrait){
	.pinfo_block{
		max-width:100%;
	}
	.pinfo{
		margin:1em;
		display:inline-block;
		background-color:#FFFFFF;
		color:#000000;
		border:0.2em solid #1D3A5F;
		vertical-align:top;
		border-radius: 6px;
		box-shadow: 5px 5px 20px #1D3A5F;
		max-width:100%;
	}
	.pinfo_image{
		width:100%;
	}
	.pinfo_image img{
		-moz-box-sizing:border-box;
		-webkit-box-sizing:border-box;
		box-sizing:border-box;
		width:100%;
	}
	.pinfo_text{
		background-color:#3465A4;
		color:#FFFFFF;
		text-align:center;
		padding:0.5em;
		border-bottom-left-radius:2px;
		border-bottom-right-radius:2px;
	}
	.pinfo_textbody{
		font-size:3vw;
	}
	
	.pheader_title{
		font-size:16vw;
	}
	.pheader_subtitle{
		font-size:5vw;
	}
	.pheader_subtitle2{
		font-size:4vw;
	}
	.pheader.pinned{
		padding-top:0.4em;
		padding-bottom:0.4em;
		border-bottom:1px solid #2C568C;
		transition: padding-top 0.5s, padding-bottom 0.5s, border-bottom 0.5s;
	}
	.pheader.pinned .pheader_right{
		padding-top:0px;
		font-size:3.3vw;
	}
	.pheader.pinned .pheader_title{
		font-size:6vw;
		transition: font-size 0.5s;
	}
	.pheader.pinned .pheader_subtitle{
		font-size:3vw;
	}

	.pageblock2{
		padding-top:6vw;
		padding-bottom:6vw;
	}

	.pageblock3{
		padding-top:4vw;
		padding-left:0px;
		padding-right:0px;
	}
	.pblock{
		margin:1em;
		margin-left:10px;
		margin-right:10px;
		display:block;
		background-color:#FFFFFF;
		color:#000000;
		border:0.2em solid #2C568C;
		vertical-align:top;
		border-radius: 6px;
		box-shadow: 5px 5px 20px #8888AA;
	}
	
	.pageblock4{
		padding-left:10px;
		padding-right:10px;
		font-size:3vw;
	}
	.pageblock4 a{
		font-size:3vw;
	}
	
	.pblockbuissness{
		padding-top:5vh;
		font-size:5vw;
	}
	.pblockbuissness a{
		font-size:5vw;
	}
	.pblockbuissness h1{
		font-size:8vw;
	}
}
	
}


