@charset "utf-8";

/* common
----------------------------------------------------------------------------------*/

body {
	margin: 0;
	padding: 0;
	font-size: 87.5%;
	font-family: Verdana,Arial,"メイリオ",Meiryo,"Osaka","ヒラギノ角ゴPro W3","Hiragino Kaku Gothic Pro","ＭＳ Ｐゴシック",sans-serif;
	line-height: 1.8;
	color: #646464;
	vertical-align: top;
	background: #ffffff;
	-webkit-text-size-adjust: 100%;
}

a:link   {color: #0074b7;text-decoration: underline;}
a:visited{color: #0074b7;text-decoration: underline;}
a:hover  {color: #ff6400;text-decoration: none;}
a:active {color: #0074b7;text-decoration: underline;}

button:hover img{
	opacity: 0.5;
}


/* structure
----------------------------------------------------------------------------------*/
.inner{
	position: relative;
	width: 850px;
	margin: 0 auto;
}
.home-main {
    margin: 0 auto 20px;
    text-align: center;
}
#contents{
	float: right;
	width: 690px;
}
#side{
	float: left;
	width: 240px;
}
@media only screen and (max-width: 640px){
	.inner{
		width: auto;
		padding: 0 10px;
	}
	#contents{
		float: none;
		width: auto;
		margin: 0 0 50px;
	}
	#side{
		float: none;
		width: auto;
	}
}


/* header
----------------------------------------------------------------------------------*/
#header{
	padding: 20px 0;
}
#fontChange{
	position: absolute;
	top: 20px;
	right: 0;
}
#fontChange li{
	display:inline-block;
	width: 38px;
	height:30px;
	margin-left:2px;
	text-indent:-999999px;
	vertical-align:middle;
	line-height:1;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
	-ms-border-radius: 5px;
	-o-border-radius: 5px;
	border-radius: 5px;
	-webkit-box-shadow: 0 0 3px #000;
	box-shadow: 0 0 5px -1px #000;
	cursor:pointer;
	zoom:1;
}
#fontChange li.title{
	display:inline-block;
	width: auto;
	margin:0;
	text-indent:0;
	font-weight:bold;
	line-height:30px;
	-webkit-border-radius: 0;
	-moz-border-radius: 0;
	-ms-border-radius: 0;
	-o-border-radius: 0;
	border-radius: 0;
	-webkit-box-shadow: none;
	box-shadow: none;
	cursor:default;
}
#fontChange li.title img{margin:7px 0 0;}
#fontChange li#fontS{background:url(../img/fontsize.png) no-repeat right top;}
#fontChange li#fontM{background:url(../img/fontsize.png) no-repeat -38px top;}
#fontChange li#fontL{background:url(../img/fontsize.png) no-repeat left top;}

#fontChange li#fontS.change.active{background:url(../img/fontsize.png) no-repeat right bottom;}
#fontChange li#fontM.change.active{background:url(../img/fontsize.png) no-repeat -38px bottom;}
#fontChange li#fontL.change.active{background:url(../img/fontsize.png) no-repeat left bottom;}

#fontChange li#fontS:hover{background:url(../img/fontsize.png) no-repeat right bottom;}
#fontChange li#fontM:hover{background:url(../img/fontsize.png) no-repeat -38px bottom;}
#fontChange li#fontL:hover{background:url(../img/fontsize.png) no-repeat left bottom;}

/* フォントサイズ */
.fontS{font-size: 87.5%;}
.fontM{font-size: 100%;}
.fontL{font-size: 112.5%;}

#header .h-tel{
	position: absolute;
	right: 0;
	top: 70px;
}

@media only screen and (max-width: 640px){
	#header{
		padding: 15px 10px 10px;
	}
	#fontChange{
		display: none;
	}
	.btn-menu{
		position: absolute;
		top: 10px;
		right: 10px;
		font-size: 40px;
		line-height: 1;
	}
	.btn-menu span{
		color: #29abe2;
		cursor: pointer;
	}
	#header .h-tel{
		display: none;
	}
}



/* pagetitle
----------------------------------------------------------------------------------*/
#contents #pttl,
#contents .home-ttl{
	position: relative;
	margin: 0 0 30px;
	padding: 15px 15px 15px 20px;
	color: #42210b;
	font-size: 26px;
	font-weight: bold;
	line-height: 1.2;
	border: 2px solid #f7931e;
	border-radius: 5px;
	background: #ffffff;
	background: -moz-linear-gradient(top,  #ffffff 0%, #ffc83a 100%);
	background: -webkit-linear-gradient(top,  #ffffff 0%,#ffc83a 100%);
	background: linear-gradient(to bottom,  #ffffff 0%,#ffc83a 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffffff', endColorstr='#ffc83a',GradientType=0 );
	-webkit-box-shadow: 5px 5px 10px -5px #333;
	box-shadow: 0px 5px 8px -5px #333;
}
#contents .home-ttl{
	margin: 45px 0 30px;
}
#contents #pttl:before,
#contents .home-ttl:before{
	position: absolute;
	top: 10px;
	left: -4px;
	content: "";
	width: 10px;
	height: 40px;
	border-left: 9px solid #f7931e;
}
@media only screen and (max-width: 640px){
	#contents #pttl,
	#contents .home-ttl{
		font-size: 20px;
	}
}


/* footer
----------------------------------------------------------------------------------*/
.common-contact{
	margin: 60px 0 0;
	text-align: center;
}
#footer{
	position: relative;
	margin: 10px 0 0;
	padding: 25px 0;
	background: #29abe2;
}
#footer .pagetop{
	position: fixed;
	bottom: 10px;
	right: 30px;
}
#footer .f-navi{
	margin: 0 0 15px;
	color: #000;
	text-align: center;
}
#footer .f-navi li:before,
#footer .f-subnavi li:before{
	content: "|";
	padding: 0 15px;
}
#footer .f-navi li:first-child:before,
#footer .f-subnavi li:first-child:before{
	display: none;
}
#footer .f-navi li a,
#footer .f-subnavi li a{
	color: #000;
}
#footer .f-subnavi{
	font-size: 85.714%;
	text-align: center;
}
#footer .f-logo{
	margin: 10px 0 10px;
	text-align: center;
}
#footer .copyright{
	color: #fff;
	text-align: center;
}
@media only screen and (max-width: 640px){
	#footer{padding: 10px 0 10px;}
	#footer .pagetop{
		width: 60px;
		right: 10px;
	}
	#footer .f-navi,
	#footer .f-subnavi{
		margin: 0 -10px;
		border-top: 1px solid #fff;
	}
	#footer .f-navi li,
	#footer .f-subnavi li{
		display: block;
	}
	#footer .f-navi li:before,
	#footer .f-subnavi li:before{
		display: none;
	}
	#footer .f-navi li a,
	#footer .f-subnavi li a{
		position: relative;
		display: block;
		padding: 10px;
		color: #fff;
		text-decoration: none;
		border-bottom: 1px solid #fff;
	}
	#footer .f-navi li:last-child a{
		border-bottom: none;
	}
	#footer .f-navi li a:after,
	#footer .f-subnavi li a:after {
		position: absolute;
		right: 10px;
		top: 12px;
		color: #fff;
		font-family: 'FontAwesome';
		content:"\f054";
	}
}


.point-ttl{
	margin: 40px 0 10px;
	padding-left: 10px;
	color: #42210b;
	font-size: 157.142%;
	font-weight: bold;
	border-left: 5px solid #f7931e;
}

@media only screen and (max-width: 640px){
	.contact{
		text-align: center;
	}
	.contact span{
		display: block;
		text-align: center;
	}
	.tel{
		margin: 0 0 10px;
	}
}

.contact{
	margin: 15px 0 10px;
}
.tel {
    margin: 0 20px 10px 0;
}
.fee{
    width: 100%;
    margin: 0 0 20px;
}
.fee table {
    border-collapse: collapse;
    border-spacing: 0;
}
.fee th {
	text-align: center;
	background-color: #efefef;
	border: 1px solid #666;
	vertical-align: middle;
	padding: 5px;
}
.fee td{
	text-align: center;
	border: 1px solid #666;
	padding: 5px;
}

h3{
	margin: 0 0 5px;
	padding: 0 0 5px;
	color: #f7931e;
	font-weight: bold;
	border-bottom: 1px solid #f7931e;
}