@charset "utf-8";
/* Cタイプ 1カラム 幅  800px ( かんた型 ) */

/* 共通CSS */
* html .clearfix {
	height:1%;
}

.clearfix {
	display:block;
}

.clearfix:after {
	content:".";
	display:block;
	height:0;
	clear:both;
	visibility:hidden;
}

body{
	margin:0px;
	padding:0px;
	text-align:center;
	font-family:Verdana,Arial,"メイリオ",Meiryo,"ヒラギノ角ゴPro W3","Hiragino Kaku Gothic Pro","ＭＳ Ｐゴシック",sans-serif;
	font-size:14px;
	color:#333333;
	background:#FFFAFA fixed;
}

img {
	border:0;
	margin:0;
	padding:0;
}

a {
	margin:0;
	padding:0;
	font-weight:bold;
	color:#0033FF;
}

a:visited {
	color:#0033FF;
}

a:hover {
	color:#FF0000;
}

a img {
	text-decoration:none;
}

p {
	margin:0;
	padding:0;
}

.page4{
	text-align:left;
	color:#666;
	margin:0 20px;
	padding:0 0 15px 0;
	font-size:14px;
	clear:both;
}

.page5{
	text-align:right;
	color:#666;
	margin:0 20px;
	padding:0 0 15px 0;
	font-size:14px;
	clear:both;
}

.line_y {
	background: linear-gradient(transparent 60%, #FFFF66 60%);
	font-weight:bold;
}

.line_b {
	background: linear-gradient(transparent 60%, #66FFFF 60%);
	font-weight:bold;
}

.line_p {
	background: linear-gradient(transparent 60%, #FF66FF 60%);
	font-weight:bold;
}

.line_g {
	background: linear-gradient(transparent 60%, #FF66FF 60%);
	font-weight:bold;
}

.line_o {
	background: linear-gradient(transparent 60%, #FFAA66 60%);
	font-weight:bold;
}
/* 共通CSS 終了 */

/* PC・タブレット用CSS */
@media screen and (min-width: 900px) {

	.page1 {
		margin:8px 0;
		padding:0;
		width:800px;
		margin-right:auto;
		margin-left:auto;
		position:relative;
		background-color:#FFF;
		border:#D3D3D3 solid 1px;
		border-radius:15px 15px 0 0;
		font-size:14px;
		color:#666;
	}

	.header {
		height:250px;
		width:800px;
		background:url("./") 0% 50% no-repeat #78A0FF;
		background-size:cover;
		border-bottom:1px solid #C3C3C3;
		border-radius:15px 15px 0 0;
		margin:0;
		padding:0;
		font-size:14px;
		color:#666;
		text-align:left;
		clear:both;
	}

	.header h1 {
		width:760px;
		font-size:24px;
		text-align:left;
		line-height:30px;
		margin:0 20px;
		padding-top:120px;
		position:relative;
	}

	.header h1 a, .header h1 {
		color:#000000;
		text-decoration:none;
	}

	.header h2 {
		width:480px;
		font-size:14px;
		font-weight:normal;
		text-align:left;
		line-height:18px;
		color:#000000;
		margin:10px 300px 0 20px;
		position:relative;
	}

	.page2 {
		margin:0px;
		padding:0px 10px;
		width:780px;
		position:relative;
		overflow:hidden;
	}

	.navi {
		background-color:#EAEAEA;
		background:linear-gradient(to bottom, #D3D3D3, #EAEAEA, 80%, #D3D3D3);
		float:left;
		width:800px;
		border-bottom:1px solid #C3C3C3;
		padding:0;
		margin:0;
		font-size:14px;
		text-align:left;
	}

	.navi ul {
		margin:0;
		padding:0;
		height:40px;
		text-decoration:none;
		display:table;
	}

	.navi ul a {
		height:40px;
		text-decoration:none;
		display: table-cell;
		vertical-align: middle;
	}

	.navi ul a li {
		margin:0;
		padding:0 5px;
		width:149px;
		height:40px;
		border-right:1px solid #C3C3C3;
		text-decoration:none;
		list-style-type:none;
		display: table-cell;
		text-align:center;
		vertical-align:middle;
		font-size:14px;
		line-height:1em;
		color:#666666;
	}

	.navi ul a li:hover {
		background-color:#D3D3D3;
		background:linear-gradient(to bottom, #EAEAEA, #D3D3D3, 80%, #EAEAEA);
	}

	.page3 {
		float:left;
		width:760px;
		height:30px;
		padding:0;
		margin:10px 10px 0;
		font-size:11px;
		text-align:left;
	}

	.page6 {
		width:760px;
		margin:10px 10px;
		padding:0;
		font-size:14px;
		float:right;
		text-align:left;
	}

	.page7 {
		width:760px;
		margin:10px 10px;
		padding:0;
		font-size:14px;
		float:left;
		text-align:center;
	}

	.caption {
		margin:0;
		padding:0;
		text-align:left;
		border-left:3px solid #78A0FF;
		border-right:3px solid #78A0FF;
		background-color:#EAEAEA;
		background:linear-gradient(to bottom, #78A0FF, #FFFAF0, 60%, #78A0FF);
		clear:both;
		display: block;
		position: relative;
	}

	.caption:before {
		content: "";
		position: absolute;
		top: 50%;
		left: 8px;
		width: 20px;
		height: 20px;
		margin-top: -10px;
		border-radius: 50%;
		background: #FFFFFF;
		border: 1px solid #CCCCCC;
	}

	.caption:after {
		content: "";
		position: absolute;
		top: 50%;
		left: 16px;
		width: 0;
		height: 0;
		margin-top: -6px;
		border: 6px solid transparent;
		border-left: 8px solid #78A0FF;
	}

	.caption h2 {
		margin:0;
		padding:0 5px 0 35px;
		font-size:16px;
		font-weight:bold;
		line-height:40px;
		color:#666;
	}

	.caption h3 {
		margin:0;
		padding:0 5px 0 35px;
		font-size:16px;
		font-weight:bold;
		line-height:40px;
		color:#666;
	}

	.caption p {
		margin:0;
		padding:0 5px 0 35px;
		font-size:16px;
		font-weight:bold;
		line-height:40px;
		color:#666;
	}

	.free {
		margin:0;
		padding:0 0 15px 0;
		font-size:14px;
		color:#666;
		text-align:center;
		clear:both;
	}

	.contents {
		margin:0;
		padding:10px 10px 20px;
		font-size:14px;
		color:#666;
		text-align:left;
		line-height:1.6em;
	}

	.contents p {
		margin:0 0 30px 0px;
		text-align:left;
	}

	.contents .icenter {
		margin:7px 0 15px 0;
		text-align:center;
	}

	.contents .ileft {
		margin:7px 15px 15px 0;
		max-width:345px;
		float:left;
		text-align:center;
	}

	.contents .iright {
		margin:7px 0 15px 15px;
		max-width:345px;
		float:right;
		text-align:center;
	}

	.page6 ul {
		margin:0;
		padding:0;
		text-decoration:none;
	}
	
	.page6 ul li{
		margin:0;
		padding:0 0 20px 0;
		text-decoration:none;
		list-style-type:none;
		border-bottom:1px dashed #999;
		text-align:left;
		clear:both;
	}

	.page6 ul li a {
		text-decoration:none;
		display:block;
		padding:10px 10px;
	}

	.page10 {
		margin:0;
		padding:0 0 20px;
		font-size:14px;
		color:#666;
		text-align:left;
		line-height:1.6em;
	}

	.page10 ul {
		margin:0;
		padding:0;
		text-decoration:none;
	}
	
	.page10 ul li{
		margin:0;
		padding:0;
		text-decoration:none;
		list-style-type:none;
		text-align:left;
		display: inline-block;

	}

	.page10 ul li a {
		text-decoration:none;
		display:block;
		padding:10px 15px;
	}

	.page10 p {
		padding:10px 10px;
		text-align:left;
	}

	.page11 {
		width:770px;
		height:45px;
		margin:0 15px 10px 15px;
		padding:15px 0 0 0;
		background-color:#78A0FF;
		text-align:center;
		color:#666;
		border-top:1px solid #999;
		border-bottom:1px solid #999;
		clear:both;
		font-size:12px;
	}

	.display-pc {
	}

	.display-sp {
		display:none;
	}

	.tomoki {
		padding:0 30px;
		height:56px;
		overflow:hidden;
		font-size:11px;
		line-height:14px;
	}

}
/* PC・タブレット用CSS */

/* スマホ用CSS */
@media screen and (max-width:899px){

	.page1 {
		margin:8px 2%;
		padding:0;
		width:96%;
		margin-right:auto;
		margin-left:auto;
		position:relative;
		background-color:#FFF;
		border:#D3D3D3 solid 1px;
		border-radius:15px 15px 0 0;
		font-size:16px;
		color:#666;
	}

	h2 {
		font-size:16px;
		font-weight:normal;
		text-align:left;
		line-height:1.6em;
		color:#666;
		margin:0;
		padding:0;
	}

	.header {
		height:130px;
		width:100%;
		background:url("./") 0% 50% no-repeat #78A0FF;
		background-size:cover;
		border-bottom:1px solid #C3C3C3;
		border-radius:15px 15px 0 0;
		margin:0;
		padding:0;
		font-size:16px;
		color:#666;
		text-align:left;
		clear:both;
	}

	.header h1 {
		width:96%;
		font-size:22px;
		text-align:left;
		line-height:30px;
		margin:0px 2%;
		padding-top:90px;
		position:relative;
	}

	.header h1 a, .header h1 {
		color:#000000;
		text-decoration:none;
	}

	.header h2 {
		display:none;
	}

	.page2 {
		margin:0px;
		padding:0px;
		width:100%;
		position:relative;
		overflow:hidden;
	}

	.page2 h2 {
		font-size:16px;
	}

	.navi {
		background-color:#EAEAEA;
		background:linear-gradient(to bottom, #D3D3D3, #EAEAEA, 80%, #D3D3D3);
		float:left;
		width:100%;
		padding:0;
		margin:0;
		font-size:16px;
		text-align:left;
		line-height:1.6em;
	}

	.navi ul {
		margin:0;
		padding:0;
		text-decoration:none;
	}

	.navi ul a {
		text-decoration:none;
	}

	.navi ul a li {
		margin:0;
		padding:0;
		text-decoration:none;
		list-style-type:none;
		font-size:16px;
		color:#666666;
		border-bottom:1px solid #C3C3C3;
		text-align:left;
		display:block;
		padding:20px 10px;
		clear:both;
	}

	.navi ul a li:hover {
		background-color:#D3D3D3;
		background:linear-gradient(to bottom, #EAEAEA, #D3D3D3, 80%, #EAEAEA);
	}

	.navititle {
		margin:0;
		padding:0;
		height:30px;
		text-align:left;
		background-color:#FFFFFF;
		overflow:hidden;
		clear:both;
		display: block;
		position: relative;
	}

	.navititle:before {
		display: block;
		content: "";
		position: absolute;
		top: 50%;
		right: 5px;
		width: 50px;
		height: 30px;
		margin-top: -10px;
		background: #666666;
	}

	.navititle:after {
		display: block;
		content: "MENU";
		position: absolute;
		top:8px;
		right:10px;
		color:#FFFFFF;
		font-size:14px;
	}

	.page3 {
		display:none;
	}

	.page6 {
		width:94%;
		margin:20px 3% 10px;
		padding:0;
		font-size:16px;
		float:left;
		text-align:left;
	}

	.page7 {
		width:94%;
		margin:10px 3% 10px 3%;
		padding:0;
		font-size:16px;
		float:left;
		text-align:center;
	}

	.caption {
		margin:0 0 1px 0;
		padding:0;
		text-align:left;
		border-left:3px solid #78A0FF;
		border-right:3px solid #78A0FF;
		background-color:#EAEAEA;
		background:linear-gradient(to bottom, #78A0FF, #FFFAF0, 60%, #78A0FF);
		clear:both;
		display: block;
		position: relative;
	}

	.caption:before {
		content: "";
		position: absolute;
		top: 50%;
		right: 9px;
		width: 20px;
		height: 20px;
		margin-top: -10px;
		border-radius: 50%;
		background: #FFFFFF;
		border: 1px solid #CCCCCC;
	}

	.caption:after {
		content: "";
		position: absolute;
		top: 50%;
		right: 9px;
		width: 0;
		height: 0;
		margin-top: -6px;
		border: 6px solid transparent;
		border-left: 8px solid #78A0FF;
	}

	label {
		display: block;
		cursor: pointer;
	}

	input[type="checkbox"].on-off{
		display: none;
	}

	input[type="checkbox"].on-off + div{
		display: none;
	}

	input[type="checkbox"].on-off:checked + div{
		display: block;
	}

	.caption h2 {
		margin:0;
		padding:0 5px 0 12px;
		font-size:16px;
		font-weight:bold;
		line-height:40px;
		color:#666;
	}

	.caption h3 {
		margin:0;
		padding:0 5px 0 12px;
		font-size:16px;
		font-weight:bold;
		line-height:40px;
		color:#666;
	}

	.caption p {
		margin:0;
		padding:0 5px 0 12px;
		font-size:16px;
		font-weight:bold;
		line-height:40px;
		color:#666;
	}

	.free {
		margin:0;
		padding:20px 0 20px 0;
		font-size:16px;
		color:#666;
		text-align:center;
	}

	.contents {
		margin:0;
		padding:20px 10px 30px;
		font-size:16px;
		color:#666;
		text-align:left;
		line-height:1.8em;
	}

	.contents p {
		margin:0 0 40px 0px;
		text-align:left;
	}

	.contents .icenter {
		margin:0 0 15px 0;
		text-align:center;
	}

	.contents .ileft {
		margin:0 0 15px 0;
		text-align:center;
	}

	.contents .iright {
		margin:0 0 15px 0;
		text-align:center;
	}

	.page6 ul {
		margin:0;
		padding:0;
		text-decoration:none;
	}
	
	.page6 ul li{
		margin:0;
		padding:0 0 20px 0;
		text-decoration:none;
		list-style-type:none;
		border-bottom:1px dashed #999;
		text-align:left;
		clear:both;
	}

	.page6 ul li a {
		text-decoration:none;
		display:block;
		padding:10px 10px;
	}

	.page10 {
		margin:0;
		padding:0 0 20px;
		font-size:16px;
		color:#666;
		text-align:left;
		line-height:1.8em;
	}

	.page10 ul {
		margin:0;
		padding:0;
		text-decoration:none;
	}
	
	.page10 ul li{
		margin:0;
		padding:0;
		text-decoration:none;
		list-style-type:none;
		border-bottom:1px dashed #999;
		text-align:left;
		clear:both;
	}

	.page10 ul li a {
		text-decoration:none;
		display:block;
		padding:20px 10px;
	}

	.page10 p {
		padding:20px 10px;
		text-align:left;
	}

	.page11 {
		width:96%;
		height:60px;
		margin:10px 2%;
		padding:5px 0;
		background-color:#78A0FF;
		text-align:center;
		color:#666;
		border-top:1px solid #999;
		border-bottom:1px solid #999;
		clear:both;
		font-size:12px;
	}

	.page11 a {
		display:block;
	}

	.display-pc {
		display:none;
	}

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

	#fixed_footer{
		z-index: 1;
		position: fixed;
		bottom: 0;
		left: 0;
		right:0;
		max-width:100%;
	}

	.fixed_footer_space{
		height:100px;
	}

	.tomoki {
		display:none;
	}

}
/* スマホ用CSS */
