@charset "UTF-8";
/* トップ/サブページ共通 */

/* ========================= ALL ========================= */ 
*{
	margin:0;
	padding:0;
	font-size: 62.5%;
	border:none;
	-webkit-box-sizing: border-box;
	   -moz-box-sizing: border-box;
	    -ms-box-sizing: border-box;
	        box-sizing: border-box;
}
a {
	text-decoration:none;
	color:#666;
}
ul li{
	list-style:none;
}
em{
	font-style:normal;
}
body {
	background:#fff;
/*
	font-family: 'Muli', sans-serif;    // For reading text
	font-family: 'Sniglet', cursive;    // For title text 1
	font-family: 'Comfortaa', cursive;  // For title in face area
*/
	font-family: 'Muli', sans-serif;
	color:#333;
	-webkit-text-size-adjust:none;
}
.cf { zoom: 1; }
.cf:before, .cf:after { content: ""; display: table; }
.cf:after { clear: both; }

.pagetop {
	text-align:right;
	clear:both;
}
.mt_10{margin-top:10px}
.tx_read{
	font-family: 'Muli', sans-serif;
	font-size:18px;
	font-size:1.8rem;
}
.tx_l{
	font-family: 'Sniglet', sans-serif;
	font-weight:400;
	font-size:35px;
	font-size:3.5rem;
	line-height:1.1em;
}
a:hover{
	opacity:.8;
}
.sdw{
	text-shadow:2px 2px 2px #000;
}
.pc{display:block;}
.tb{display:none;}
.sm{display:none;}

/* ========================= HEADER ========================= */
header{
	position:relative;
	text-align:center;
}
header h1{
	position:absolute;
	top:14px;
	left:20px;
	display:block;
}
header h2{
	position:absolute;
	top:14px;
	right:20px;
}
header h1 img,
header h2 img{
	display:block;
}
header nav{
	display:inline-block;
	vertical-align:middle;
	font-weight:600;
	margin:10px;
}
header ul#navi_head {
	margin:0;
	display:block;
}

div#navi_btn {
	display:none;
	width:50px;
	height:50px;
	float:right;
	position:relative;
	background:#e1ca06;
}
div#navi_btn:before{
	content:"";
	width:16px;
	height:3px;
	display:block;
	margin:16px auto 0;
	border-top:3px solid #fff;
	border-bottom:3px solid #fff;
}

div#navi_btn:after{
	content:"";
	width:16px;
	height:3px;
	background:#fff;
	display:block;
	margin:3px auto 0;
}

header ul#navi_head li {
	display:inline-block;
	background:#fff;
}
header ul#navi_head li a {
	display:inline-block;
	margin:13px 20px;
	color:#134d5a;
	font-size:18px;
	font-size:1.8rem;
/*	font-family: 'Comfortaa', cursive;*/
	font-family: 'Sniglet', sans-serif;
}
header ul#navi_head li a span{
	font-size:18px;
	font-size:1.8rem;
	display:inline-block;
	vertical-align:middle;
	border-top-right-radius:20% 50%;
	border-bottom-right-radius:20% 50%;
	border-top-left-radius:20% 50%;
	border-bottom-left-radius:20% 50%;
	margin:0 5px;
	padding:0 20px;
	color:#fff;
	line-height:1.2em;
}
header ul#navi_head li a span{background:#e17c06;vertical-align: initial;}
header ul#navi_head li:nth-child(2) a span{background:#b60066;}

#page_top #navi_head li:first-child a,
.page_ha_kd1 #navi_head li:nth-child(2) a,
.page_ha_kd3 #navi_head li:nth-child(3) a,
.page_ha_kd6 #navi_head li:nth-child(4) a,
header ul#navi_head li a:hover{
	color:#ed1b23;
}

/* ========================= MAIN ========================= */ 
.outer{
	width:100%;
}
.inner{
	max-width:1000px;
	margin:0 auto;
}
.btn_scroll{
	position:absolute;
	right:20px;
	bottom:20px;
	background:#456;
	border-radius:100%;
	background:rgba(0,0,0,.2);
	width:70px;
	height:70px;
	display:block;
}
.btn_scroll:before{
	content:"";
	display:block;
	width:25px;
	height:2px;
	background:#fff;
	-webkit-transform:rotate(30deg);
	-moz-transform:rotate(30deg);
	-ms-transform:rotate(30deg);
	transform:rotate(30deg);
	position:absolute;
	top:50%;
	left:50%;
	margin:0 0px 0px -24px;
}
.btn_scroll:after{
	content:"";
	display:block;
	width:25px;
	height:2px;
	background:#fff;
	-webkit-transform:rotate(-30deg);
	-moz-transform:rotate(-30deg);
	-ms-transform:rotate(-30deg);
	transform:rotate(-30deg);

	position:absolute;
	top:50%;
	left:50%;
	margin:0 0px 0px -2px;
}
.caution{
	font-size:12px;
	font-size:1.2rem;
	text-align:left;
	display:block;
	padding:10px;
	max-width: 1000px;
	margin: 0px auto;
}
.caution span {
	font-size:2rem;
	vertical-align:middle;
	}
/* ========================= FOOTER NAV ========================= */
#navi_foot{
	background:#f5f5f5;
	text-align:center;
	padding:20px;
}
#navi_foot li{
	display:inline-block;
	vertical-align:middle;
}
#navi_foot a{
	padding:10px;
	font-size:14px;
	font-size:1.4rem;

}
.goto_top{
	position:absolute;
	right:10px;
	bottom:10px;
	background:#456;
	border-radius:100%;
	background:rgba(0,0,0,.2);
	width:70px;
	height:70px;
	display:block;
	text-align:center;
}
.goto_top img{
	margin:11px 0 0;
}
/* ========================= FOOTER ========================= */
footer{
	text-align:center;
	margin:10px 0;
}
footer small{
	font-size:14px;
	font-size:1.4rem;
}


/* ========================= Media queries ========================= */ 
@media only screen and (max-width: 1024px){
/*	body:before{
		content:"1024px";
		position:fixed;
		top:0;
		left:0;
		z-index:5000;
		font-size:1rem;
		background:pink;
	}*/
}

@media only screen and (max-width: 800px){
/*	body:before{
		content:"800px";
		position:fixed;
		top:0;
		left:0;
		z-index:5000;
		font-size:1rem;
		background:red;
	}*/
	body {
		-webkit-text-size-adjust: 100%;
		overflow-x:hidden;
	}
	header {
		z-index:3000;
	}
	header h1{
		position:relative;
		float:left;
		top:7px;
	}
	header h1 img {
		width:70px;
	}
	header h2{
		position:relative;
		float:right;
		top:5px;
		right:0;
	}
	header h2 img {
		width:120px;
	}
	.btn_scroll,
	.goto_top{
		display:none;
	}
	/******* [800] HEADER NAVIGATION ********/
	header nav{
		float:right;
		margin:0;
	}
	header ul#navi_head {
		position:fixed;
		top:50px;
		right:0;
		margin:0;
		z-index:3050;
		display:none;
		padding:0;
		height:auto;
	}
	header ul#navi_head li {
		margin:0;
		display:block;
	}
	header ul#navi_head li a {
		display:block;
		min-width:200px;
		width:200px;
		height:48px;
		line-height:48px;
		border-bottom:1px solid #aaa;
		text-align:center;
		background:#fff;
		padding:0;
		margin:0;
	}
	header ul#navi_head li.current {
		border-bottom:2px solid #FC3;
	}
	div#navi_btn {
		display:block;
	}


}
@media only screen and (max-width: 600px){
/*	body:before{
		content:"600px";
		position:fixed;
		top:0;
		left:0;
		z-index:5000;
		font-size:1rem;
		background:yellow;
	}*/
	/******* [600] ALL ********/
	* {
			-webkit-animation: none !important;
				animation: none !important;
	}
	.tx_l{
		font-size:2.4rem;
	}
	.tx_read{
		font-size:1.4rem;
	}
	.caution{
		text-align:left;
	}
}