*{
	box-sizing: border-box;
}
html{
	font-size: 62.5%; /* 10px */
}
body{
	/* overflow-x: hidden; */
	/* font-family: 'Noto Sans JP',"游ゴシック Medium","YuGothic Medium","Yu Gothic Medium","游ゴシック","YuGothic","ヒラギノ角ゴ ProN W3","HiraKakuProN-W3","ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","Roboto Regular","メイリオ",Meiryo,"ＭＳ Ｐゴシック","helvetica","arial",sans-serif; */
	text-align: center;
	background: #ebf9ff;
	/* background: url(../img/bg.jpg) no-repeat top center / cover; */
	color: #202020;
	font-size: 1.4rem;
	line-height: 1.6;
	min-width: 320px;
	letter-spacing: 0.01em;
	min-height: 100vh;
}
.sp{ display: block; }
.pc{ display: none; }


h1, h2, h3, h4, h5, h6{
	font-size: 100%;
	font-weight: normal;
	padding: 0;
	margin: 0;
}
ul, li, ol{
	list-style: none outside none;
	margin: 0;
	padding: 0;
}
em{ font-style: normal; }
dl{
	margin: 0;
	padding: 0;
}
p{
	margin: 0;
	padding: 0;
}
img{
	max-width: 100%;
	/* vertical-align: top; */
	transition: 0.4s;
}

a{
	color: #003bfd;
	text-decoration: none;
	transition: 0.4s;
}
/*a:visited{ color: #4900c1; text-decoration: none; }*/
a:hover, a:active, a:focus{
	color: #00ffff;
	text-decoration: none;
	transition: 0.4s;
}
a:hover img{
	opacity: 0.7;
	filter: alpha(opacity=70);
	transition: 0.4s;
}

/* text decoration */
.sat{ color: #006cff; }
.sun{ color: #ff007e; }
.bold{ font-weight: bold; }
.red{ color: #d70b49; }
.pink{ color: #ff3d9d; }
.blue{ color: #0752b9; }
.yellow{ color: #ffd900; }
.green{ color: #00a226; }
.tline{ text-decoration: line-through; }
.uline{ text-decoration: underline; }

.size08{ font-size: 0.8rem; }
.size09{ font-size: 0.9rem; }
.size11{ font-size: 1.1rem; }
.size12{ font-size: 1.2rem; }
.size14{ font-size: 1.4rem; }
.size16{ font-size: 1.6rem; }
.size18{ font-size: 1.8rem; }
.size20{ font-size: 2.0rem; }
.size22{ font-size: 2.2rem; }
.size24{ font-size: 2.4rem; }

.fl-left{ float: left; }
.fl-right{ float: right; }


div#wrapper{
	min-height: 100vh;
	position: relative;
	/* padding-bottom: 60px; */
}
div#container{
	width: 100%;
	max-width: 880px;
	margin: 0 auto;
	padding: 0;
}

	div.cont-inner{
		/* background: #FCFCFC;
		border: 1px solid #E0E0E0;
		border-radius: 8px; */
		width: 98%;
		margin: 80px auto 10vw;
		/* padding: 4vw; */
		padding: 2vw;
		/* -webkit-filter: drop-shadow(1px 1px 8px rgba(0, 0, 0, 0.2));
		filter: drop-shadow(1px 1px 8px rgba(0, 0, 0, 0.2)); */
		/* box-shadow: 0px 1px 16px 0px rgba(0, 0, 0, 0.16); */
		text-align: left;
	}
	div.cont-title{
		background: #009edc;
		background-image: linear-gradient(-0deg, #009edc 0%, #008bd5 100%);
		color: #FCFCFC;
		padding: 2vw 2vw;

		text-align: center;
	}
		h1{
			font-size: 132%;
			font-weight: bold;
			line-height: 1.6;
		}
		h2{
			font-size: 142%;
			font-weight: bold;
			line-height: 1.46;
			border-bottom: 2px solid #009edc;
			margin: 0.2vw auto 0;
		}
	h3{}
	div.cont-inner p{
		font-size: 116%;
		line-height: 1.64;
		margin: 3vw auto 4vw;
		padding: 0.5vw;
		font-weight: bold;
	}
	div.cont-inner p strong{}
	div.cont-inner p img{
		/* border: 1px solid #CCC; */
		margin: 0 auto 0.6em;
		box-shadow: 0px 1px 4px 0px rgba(0, 0, 0, 0.4);
	}



/* Page Top
=================================== */
#page-top{ position: fixed; bottom: 0px; right: 0px; font-size: 88%; z-index: 20; }
#page-top a{
	display: block;
	background: url(../img/to_top.png) center top no-repeat;
	background-size: contain;
	width: 40px;
	height: 40px;
	text-indent: -9999px;
	border: 1px solid #53b3ac;
}
#page-top a:hover{
	background: url(../img/to_top_on.png) center top no-repeat;
	background-size: contain;
}


	footer{
		background: #FFF;
	}
/* footer{
	width: 100%;
	text-align: center;
	font-size: 0.9em;
	line-height: 1.4;
	background: #009edc;
	padding: 0 0 0 0;
}
footer div{
	width: 100%;
	margin: 0 auto;
}
footer p{
	color: #FFF;
	padding: 1em;
	margin: 0;
}
footer p a{
	color: #FFF;
}
footer p a:visited{
	color: #FFF;
}
footer p a:hover{
	color: #fff3d0;
	text-decoration: underline;
} */





/*
======================================================================================================================================================================================================== */
@media screen and (min-width: 375px){
}
@media screen and (min-width: 534px){
}
@media screen and (min-width: 640px){
	h2{
		margin: 10vw auto 0;
	}

	div.cont-title h2{
		margin: 0.2vw auto 0;
	}
}
@media screen and (min-width: 768px){
	div.cont-inner{
		margin: 96px auto 6vw;
	}
}



/* PC
==================================================================================================== */
@media screen and (min-width: 992px){
	html{}

	.sp{ display: none; }
	.pc{ display: block; }

	body{
	}

	div#wrapper{}
	div#container{
		max-width: 100%;
		margin: 0 auto;
		padding: 0;
	}

	div.cont-inner{
		border-radius: 16px;
		max-width: 960px;
		margin: 20px auto 20px;
		padding: 40px 40px 0;
	}
	div.cont-title{
		padding: 24px 24px;
	}
	h1{
		font-size: 190%;
		line-height: 1.64;
	}
	h2{
		font-size: 190%;
		line-height: 1.64;
		margin: 0;
	}
	h3{}
	div.cont-inner p{
		font-size: 132%;
		font-size: 160%;
		line-height: 1.64;
		margin: 16px auto 32px;
		padding: 16px;
	}
	div.cont-inner p strong{}
	div.cont-inner p img{
		width: 98%;
		margin: 0 auto 2em;
	}



	/* footer{
		clear: both;
	}
	footer p{
		padding: 2em;
	}
	footer p a{}
	footer p a:visited{}
	footer p a:hover{} */


	/* Page Top
	==================================================================================================== */
	#page-top{
		position: fixed;
		bottom: 0px;
		right: 0px;
		font-size: 88%;
		z-index: 20;
	}
		#page-top a{
			width: 48px;
			height: 48px;
		}
		#page-top a:hover{
		}
}



.clear{ clear: both; }
.clearfix:after{
	display: block;
	visibility: hidden;
	clear: both;
	height: 0;
	content: ".";
	line-height: 0;
}
.clearfix{
	display: inline-table;
	zoom: 1;
}

/* Hides from IE-mac \*/
* html .clearfix{ height: 1%; }
.clearfix{ display: block; }
/* End hide from IE-mac */