@charset "utf-8";

/*=========================================================== */
/* Common Setteing
============================================================= */
body {
	margin: 0;
	padding: 0;
	line-height: 1.5;
	font-size: 14px;
	font-weight: 500;
	font-family: 游ゴシック体, 'Yu Gothic', YuGothic, 'ヒラギノ角ゴシック Pro', 'Hiragino Kaku Gothic Pro', メイリオ, Meiryo, Osaka, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
	color: #0a1018;
	background: url(../img/contents/bg.png);
}

/* base font size */
/*
8px =>	66%
9px =>	76%
10px =>	84%
11px =>	92%
12px =>	100% (base size)
13px =>	108%
14px =>	116%
15px =>	124%
16px =>	132%
17px =>	140%
18px =>	148%
20px =>	166%
24px =>	200%
*/

/* Link Color */
a:link {
	color: #a51616;
	text-decoration: underline;

	-webkit-transition: all 0.4s ease;
	-moz-transition: all 0.4s ease;
	-o-transition: all 0.4s ease;
	transition: all 0.4s ease;
}
a:visited {	color: #a51616; text-decoration: underline;}
a:hover {	color: #ccc; text-decoration: none;}
a:active {	color: #ccc; text-decoration: none;}

/* bottom space fix for img */
img { vertical-align: bottom; }


/*=========================================================== */
/* clearfix
============================================================= */
/* Modern browsers like Firefox, Safari, Opera */
.cfx:after {
	content: ".";
	display: block;
	height: 0;
	clear: both;
	visibility: hidden;
}
/* IE 7 and MacIE*/
.cfx {	display: inline-block;}

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



/*=========================================================== */
/* container
============================================================= */
#container {
	position: relative;
	min-width: 1000px;
}


@media only screen and (min-width: 0px) and (max-width:480px) {
	#container {
		min-width: 320px;
		width: auto;
	}

}



/*=========================================================== */
/* header
============================================================= */
#header {
	position: fixed;
	z-index: 9999;
	left: 0;
	top: 0;
	width: 100%;
	min-width: 1000px;
	border-top: 5px solid #0d2080;
	border-bottom: 1px solid #ccc;
	background-color: #f9f9f9;
}

@media only screen and (min-width: 0px) and (max-width:480px) {
	#header {
		position: static;
		width: 100%;
		min-width: 320px;
	}
}

/* lead
------------------------------------------------------------- */
#header .lead {
	min-width: 1000px;
	margin: 0 auto;
}
#header .lead h1,#header .lead p {
	width: 980px;
	min-width: 980px;
	margin: 0 auto;
	padding: 4px 10px;
}

@media only screen and (min-width: 0px) and (max-width:480px) {

	#header .lead {
		min-width: 320px;
	}
	#header .lead h1,#header .lead p{
		width: auto;
		min-width: 280px;
	}
}


/* header navi
------------------------------------------------------------- */
#headnav {
	width: 980px;
	min-width: 980px;
	height: 40px;
	margin: 0 auto;
	padding-left:10px;
	padding-right:10px;
}
#headnav p {
	float: left;
	padding-top: 5px;
}
#headnav nav {
	float: right;
}
#headnav nav ul {
	width: 546px;
	overflow: hidden;
}
#headnav nav ul li {
	display: table;
	float: left;
	padding: 5px 10px;
}
#headnav nav ul li a {
	display: table-cell;
	overflow: hidden;
	width: 100%;
	height: 25px;
	border-bottom: 2px solid #f9f9f9;
	text-align: center;
	vertical-align: middle;
	text-decoration: none;
	color: #0a1018;
}
#headnav nav ul li.current a:hover {
	opacity: 0.6;
}
#headnav nav ul li.current a,
#headnav nav ul li a:hover {
	border-bottom: 2px solid #000066;
}
#headnav nav ul li.hurry {
	display: table;
	float: left;
}
#headnav nav ul li.hurry a {
	color: #fff;
	padding: 0 10px;
	border-bottom: none;
	border-radius: 3px;
	background: #a51616;
}
#headnav nav ul li.hurry a:hover {
	opacity: 0.6;
	border-bottom: none;
}


@media only screen and (min-width: 0px) and (max-width:480px) {
	#headnav {
		width: auto;
		min-width: 320px;
		height: auto;
		padding-left:0px;
		padding-right:0px;
	}
	#headnav p {
		float: none;
		width: 100%;
		height: auto;
		margin: 0 auto;
		padding: 10px 0 10px;
		text-align: center;
	}
	#headnav h1 img {
		width: auto;
		height: auto;
	}
	#headnav nav {
		float: none;
		text-align: center;
	}
	#headnav nav ul {
		display: inline-block;
		width: 312px;
	}
	#headnav nav ul li {
		display: table;
		float: left;
		height: auto;
		margin-bottom: 2px;
		padding: 0 4px;
		box-sizing: border-box;
	}
	#headnav nav ul li a {
		display: table-cell;
		overflow: hidden;
		width: 100%;
		height: 100%;
		padding: 15px 0;
		font-size: 77%;
		color: #111111;
	}
		/* IE7fix */
		*:first-child+html #headnav nav ul li a {
			display: block;
			zoom: 1;
			width: 20%;
			height: 44px;
			padding-top: 22px;
			vertical-align: middle;
		}

	#headnav nav ul li.hurry {
		display: table;
		float: left;
		width: 100%;
		height: 40px;
		padding: 0;
		background:url(../img/header/gnav_hurry.png) repeat-x left center;
	}
	#headnav nav ul li.hurry a {
		color:#fff;
	}
}



/*=========================================================== */
/* splash
============================================================= */
#splash {
	height: auto;
	background: #0d2080
	url(../img/splash/splash_default_02.png) left center no-repeat;
}
#splash .inr {
	position: relative;
	width: 980px;
	min-width: 980px;
	margin: 0 auto;
	padding: 35px 10px 25px;
}

@media only screen and (min-width: 0px) and (max-width:480px) {
	#splash {
		height: 70px;
		background-size: 100% ;
		background: #0d2080;
	}
	#splash .inr {
		position: static;
		width: auto;
		min-width: 320px;
		padding: 8px 0;
	}
}




/* catch copy
------------------------------------------------------------- */
#catch {
	position: static;

}
#catch p ,
#catch h1 {
	font-weight: bold;
	text-align: right;
	font-weight: bold;
	color: #fff;
}

@media only screen and (min-width: 0px) and (max-width:480px) {
	#catch {
		position: static;
	}
	#catch h1 {
		margin-bottom: 0;
		padding: 9px 20px;
		font-size: 92%;
		text-align:center;
	}
	#catch p br {
		display: none;
	}
}


/* contacts
------------------------------------------------------------- */
#contacts {
	margin-top: 20px;
	padding: 10px;
	border: 1px solid #ccc;
	background-color: #FFFFFF;
}
#contacts dl {
	width: 100%;
	line-height: 1;
	font-size: 92%;
	text-align:left;
}
#contacts dl dt {
	clear: both;
	float: left;
	width: 64px;
	margin-top: 5px;
}
#contacts dl dd {
	float: left;
	width: 134px;
	margin-top: 5px;
	padding-left: 8px;
	border-left: 2px solid #0d2080;
}

#contacts h3 {
	margin: 10px 0 10px;
	padding: 4px 0;
	background-color: #0d2080;
	text-align: center;
	color: #FFFFFF;

	-webkit-border-radius: 3px;
	border-radius: 3px;
}

a.tel_link {
	padding-left: 30px;
	line-height: 1;
	font-size: 170%;
	font-weight: bold;
	color: #000066;
	text-decoration: none;
	font-family: メイリオ, Meiryo, Osaka, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
	letter-spacing: -1px;
	background: url(../img/splash/tel.png) left 6px no-repeat;
}
a.tel_link img {
	vertical-align: top;
	padding-right: 5px;
}

#contacts .btn {
	margin-top: 5px;
	font-size: 120%;
}



@media only screen and (min-width: 0px) and (max-width:480px) {
	#contacts {
		position: static;
		height: auto;
		width: auto;
		margin: 10px 0;
		background-color: #FFFFFF;
	}
	#contacts dl {
	}
	#contacts dl dt {
		width: 92px;
	}
	#contacts dl dd {
		width: auto;
	}
	a.tel_link {
		display: inline-block;
		text-align: center;
		background: url(../img/splash/tel.png) left top no-repeat;
	}
}


/*=========================================================== */
/* comments
============================================================= */
.comments {
	clear: both;
	width: 980px;
	margin: 0 auto;
	padding: 15px 10px 20px;
}

@media only screen and (min-width: 0px) and (max-width:480px) {
	.comments {
		clear: both;
		width: auto;
		min-width: 300px;
		padding: 5px 10px;
	}
}



/*=========================================================== */
/* contents
============================================================= */
/* contents layout
------------------------------------------------------------- */
#contents {
	position: relative;
	width: 980px;
	margin: 0 auto;
	padding-bottom: 40px;
}
#main {
	float: left;
	width: 74%;
	margin-right: -26%;
	padding-right: 26%
}
#side {
	float: right;
	width: 24%;
}

@media only screen and (min-width: 0px) and (max-width:480px) {
	#contents {
		width: auto;
		min-width: 300px;
		padding: 10px;
	}
	#main {
		float: none;
		width: auto;
	}
	#side {
		float: none;
		width: auto;
		margin-top: 10px;
	}
}



/* layout changer
------------------------------------------------------------- */
/* single mode */
body.single #main {	width: 100%;}
body.single #side {	width: 100%;}
body.single #side #side-a { width: 100%;}
body.single #side #side-b { width: 100%;}

@media only screen and (min-width: 0px) and (max-width:480px) {

}


/* double mode */
body.double #main {
	float: left;
	width: 74%;
	margin-right: -26%;
	padding-right: 26%
}
body.double #side {
	float: right;
	width: 24%;
}

body.double .inq_wrap {
	width: 100% !important;
}
body.double #side #side-a { width: auto;}
body.double #side #side-b { width: auto;}

@media only screen and (min-width: 0px) and (max-width:480px) {
	body.double #main {
		float: none;
		width: 100%;
		margin-right: 0;
		padding-right: 0;
	}
	body.double #side {
		float: none;
		width: 100%;
	}
}


/* double-l mode */
body.double-l #main {
	float: right;
	width: 74%;
	margin-left: -26%;
	padding-left: 26%
}
body.double-l #side {
	float: left;
	width: 24%;
}
body.double-l #side #side-a { width: auto;}
body.double-l #side #side-b { width: auto;}

@media only screen and (min-width: 0px) and (max-width:480px) {
	body.double-l #main {
		float: none;
		width: 100%;
		margin-left: 0;
		padding-left: 0;
	}
	body.double-l #side {
		float: none;
		width: 100%;
	}
}


/* multi mode */
body.multi #main {
	float: left;
	width: 100%;
	margin-right: -26%;
}
body.multi #main > section,
body.multi #main > article,
body.multi #main > div {
	width: auto;
	margin-left: 26%;
	margin-right: 26%;
}
body.multi #side {
	float: right;
	clear: right;
	width: 24%;
}
body.multi #side #side-a {
	position: absolute;
	top: 0;
	left: 0;
	width: 24%;
	margin: 0;
}
body.multi #side #side-b {
	position: absolute;
	top: 0;
	right: 0;
	width: 24%;
}

@media only screen and (min-width: 0px) and (max-width:480px) {
	body.multi #main {
		float: none;
		width: 100%;
		margin-right: 0;
	}
	body.multi #main > section,
	body.multi #main > article,
	body.multi #main > div {
		width: auto;
		margin-left: 0;
		margin-right: 0;
	}
	body.multi #side {
		float: none;
		clear: none;
		width: auto;
	}
	body.multi #side #side-a {
		position: static;
		width: auto;
		margin: 0;
	}
	body.multi #side #side-b {
		position: static;
		width: auto;
		margin-top: 10px;
	}
}



/* multi2 mode */
body.multi2 #main {
	float: left;
	width: 48%;
	margin: 0;
	padding: 0;
}
body.multi2 #main > section,
body.multi2 #main > article,
body.multi2 #main > div {
	width: auto;
}
body.multi2 #side {
	float: right;
	width: 50%;
}
body.multi2 #side #side-a {
	float: left;
	width: 48%;
}
body.multi2 #side #side-b {
	float: right;
	width: 48%;
}

@media only screen and (min-width: 0px) and (max-width:480px) {
	body.multi2 #main {
		float: none;
		width: auto;
		margin: 0;
		padding: 0;
	}
	body.multi2 #side {
		float: none;
		width: auto;
	}
	body.multi2 #side #side-a {
		float: none;
		width: auto;
	}
	body.multi2 #side #side-b {
		float: none;
		width: auto;
		margin-top: 10px;
	}
}


#side .tel_link {
	font-size: 170%;
}
#side #contacts {
	margin-bottom: 20px;
	text-align:center;
}

/* multi2-l mode */
body.multi2-l #main {
	float: right;
	width: 48%;
	margin: 0;
	padding: 0;
}
body.multi2-l #main > section,
body.multi2-l #main > article,
body.multi2-l #main > div {
	width: auto;
}
body.multi2-l #side {
	float: left;
	width: 50%;
}
body.multi2-l #side #side-a {
	float: left;
	width: 48%;
}
body.multi2-l #side #side-b {
	float: right;
	width: 48%;
}

@media only screen and (min-width: 0px) and (max-width:480px) {
	body.multi2-l #main {
		float: none;
		width: auto;
		margin: 0;
		padding: 0;
	}
	body.multi2-l #side {
		float: none;
		width: auto;
	}
	body.multi2-l #side #side-a {
		float: none;
		width: auto;
	}
	body.multi2-l #side #side-b {
		float: none;
		width: auto;
		margin-top: 10px;
	}
}




/* first contents margin cut
------------------------------------------------------------- */
#main > section:first-child,
#main > article:first-child,
#main > div:first-child,
body.double #side-a > section:first-child,
body.double #side-a > article:first-child,
body.double #side-a > div:first-child,
body.double-l #side-a > section:first-child,
body.double-l #side-a > article:first-child,
body.double-l #side-a > div:first-child,
body.multi #side-a > section:first-child,
body.multi #side-a > article:first-child,
body.multi #side-a > div:first-child,
body.multi #side-b > section:first-child,
body.multi #side-b > article:first-child,
body.multi #side-b > div:first-child,
body.multi2 #side-a > section:first-child,
body.multi2 #side-a > article:first-child,
body.multi2 #side-a > div:first-child,
body.multi2 #side-b > section:first-child,
body.multi2 #side-b > article:first-child,
body.multi2 #side-b > div:first-child,
body.multi2-l #side-a > section:first-child,
body.multi2-l #side-a > article:first-child,
body.multi2-l #side-a > div:first-child,
body.multi2-l #side-b > section:first-child,
body.multi2-l #side-b > article:first-child,
body.multi2-l #side-b > div:first-child {
	margin-top: 0 !important;
}
#main div#eye-m + section.mfrm,
#main div#eye-m + article,
#main div#eye-m + div {
	margin-top: 0 !important;
}


/*=========================================================== */
/* main
============================================================= */

/* frame : main area
------------------------------------------------------------- */
#main .mfrm {
	margin-bottom: 20px;
	padding: 20px;
	background-color: #FFF;
	border:1px solid #ccc;
	border-top: 5px solid #0d2080;
}
.col2set .mfrm {
	min-height: 196px;
}
#main .mfrm .mhead {
	padding-bottom: 10px;
	border-bottom: 1px dotted #cbcbcb;
}
#main .mfrm .mhead h2 ,
#main .mfrm .mhead h3 {
	line-height: 1.3;
	font-size: 116%;
	font-weight: bold;
	color: #0d2080;
}
#main .mfrm .mhead .plan_h {
	padding-right: 5px;
	font-size: 160%;
	font-family:"Roboto Slab" , Garamond , "Times New Roman" , "游明朝" , "Yu Mincho" , "游明朝体" , "YuMincho" , "ヒラギノ明朝 Pro W3" , "Hiragino Mincho Pro" , "HiraMinProN-W3" , "HGS明朝E" , "ＭＳ Ｐ明朝" , "MS PMincho" , serif;
}
#main .mfrm .mbody {
	margin-top: 15px;
}
@media only screen and (min-width: 0px) and (max-width:480px) {
	body #main .mfrm {
		margin-top: 10px;
	}
}


/* inner frame : main area
------------------------------------------------------------- */
#main .inrfrm {
	margin-top: 20px;
	padding: 18px;
	background-color: #FFFFFF;
	border: 1px solid #cdcdcd;

	-webkit-border-radius: 5px;
	border-radius: 5px;
}



/* contents_bnr
------------------------------------------------------------- */

#contents_bnr {
	margin-bottom: 20px;
}
#contents_bnr img {
	border: 1px solid #ccc;
	box-sizing: border-box;
}


/* contents guide
------------------------------------------------------------- */
#contguide {}
#contguide .col2set .cols .mbody p {
	margin-top: 10px;
}

/* for single */
body.single #main #contguide .col2set {
	float: right;
	width: 490px;
}
body.single #main #contguide .col2set:first-child {
	float: left;
}
body.single #main #contguide .col2set .cols {
	width: 195px;
}
body.single #main #contguide .col2set .cols .fit {
	width: 100%;
	height: auto;
}

/* for double */
body.double #main #contguide .col2set,
body.double-l #main #contguide .col2set {
}
body.double #main #contguide .col2set .cols,
body.double-l #main #contguide .col2set .cols {
	width: 310px;
	height: auto;
}

/* for multi */
body.multi #main #contguide .col2set .cols,
body.multi2 #main #contguide .col2set .cols,
body.multi2-l #main #contguide .col2set .cols {
	float: none;
	width: auto;
}
body.multi #main #contguide .col2set .cols .fit,
body.multi2 #main #contguide .col2set .cols .fit,
body.multi2-l #main #contguide .col2set .cols .fit {
	width: 100%;
	height: auto;
}


@media only screen and (min-width: 0px) and (max-width:480px) {
	body.single #main #contguide .col2set {
		width: auto;
	}
	body.single #main #contguide .col2set .cols,
	body.double #main #contguide .col2set .cols,
	body.double-l #main #contguide .col2set .cols,
	body.multi #main #contguide .col2set .cols,
	body.multi2 #main #contguide .col2set .cols,
	body.multi2-l #main #contguide .col2set .cols {
		float: none;
		width: auto;
		margin-top: 10px;
	}
	body #main #contguide .col2set .cols {
		width: auto;
	}

}





/* plan
------------------------------------------------------------- */
#plan {}
#plan .plan3set .plan_caset .article p {
	margin-top: 10px;
}

/* for plan1set */
body #main #plan .plan1set {
	float: right;
	width: 490px;
}
body #main #plan .plan1set:first-child {
	float: left;
}
body #main #plan .plan1set .plan_caset {
	width: 195px;
}
body #main #plan .plan1set .plan_caset .fit {
	width: 100%;
	height: auto;
}

/* for plan2set */
body #main #plan .plan2set {
}
body #main #plan .plan2set .plan_caset {
	width: 50%;
	height: auto;
}

/* for plan3set */
body #main #plan .plan3set {
}
body #main #plan .plan3set .plan_caset:first-child ,
body #main #plan .plan3set .plan_caset:first-child +* +* +* {
	margin-left:0;
}
body #main #plan .plan3set .plan_caset {
	width: 228px;
	height: auto;
	display: inline-block;
	*display: inline;
	*zoom: 1;
	vertical-align: top;
	margin-left:19px;
	padding: 0;
	box-sizing: border-box;
	overflow: hidden;
}
body #main #plan .plan3set .plan_caset header{
	width: 100%;
	text-align:center;
	font-size:21px;
	color:#9A7DC9;
}
body #main #plan .plan3set .plan_caset header a{
	display:block;
	padding: 10px 10px 0;
	font-size:110%;
	font-weight: bold;
	color:#234a60;
	text-decoration:none;
}
body #main #plan .plan3set .plan_caset header a:hover{
	text-decoration:underline;
}
body #main #plan .plan3set .plan_caset article a img{
	width:100%;
	height:auto;
}
body #main #plan .plan3set .plan_caset article p {
	padding: 0 10px;
	text-align:center;
	box-sizing: border-box;
}
body #main #plan .plan3set .plan_caset article p:first-child + p {
	margin-top: 10px;
	text-align: left;
}
body #main #plan .plan3set .plan_caset article p span{
	display:inline;
	vertical-align: middle;
	padding-right: 5px;
	color:#c1272d;
	font-size:24px;
}
body #main #plan .plan3set .plan_caset article p+a{
	height:48px;
	line-height:48px;
	margin: 10px 10px 15px;
	font-size:18px;
	padding:0;
	color: #fff;
	background: #234a60;
}



@media only screen and (min-width: 0px) and (max-width:480px) {
	body #main #plan .plan3set .plan_caset {
		width: 100%;
		height:auto;
		box-sizing: border-box;
		display: inline-block;
		*display: inline;
		*zoom: 1;
		margin-left:0;
		margin-top:0;
	}
	body #main #plan .plan3set .plan_caset header{
		width:100%;
	}
	body #main #plan .plan3set .plan_caset article a img{
		width:100%;
	}
	body #main #plan .plan3set .plan_caset article p{
		width:100%;
	}
	body #main #plan .plan3set .plan_caset article p:first-child + p {
		height: auto;
	}
}





/* case
------------------------------------------------------------- */
#caseexample {}
#caseexample .mbody ul {
	width: auto;
	margin-left: -20px;
}
#caseexample .mbody ul li {
	float: left;
	overflow: hidden;
	width: 220px;
	height: 68px;
	margin-left: 20px;
	margin-bottom:10px;
	padding-top: 10px;
	padding-bottom: 0px;
	padding-left: 0px;
	padding-right: 0px;
}
#caseexample .mbody ul li img {
	float: left;
	margin-right: 10px;
}
#caseexample .mbody ul li p {
	font-size: 78%;
}

/* for single */
body.single #caseexample .mbody ul li {
	width: 306px;
}

/* for double */
body.double #caseexample .mbody ul li,
body.double-l #caseexample .mbody ul li {
	width: 213px;
}

/* for multi */
body.multi #caseexample .mbody ul,
body.multi2 #caseexample .mbody ul,
body.multi2-l #caseexample .mbody ul {
	width: auto;
	margin-left: 0;
}

body.multi #caseexample .mbody ul li,
body.multi2 #caseexample .mbody ul li,
body.multi2-l #caseexample .mbody ul li {
	width: 100%;
	margin-left: 0;
}

@media only screen and (min-width: 0px) and (max-width:480px) {
	#caseexample .mbody ul {
		width: auto;
		margin-left: 0;
	}
	#caseexample .mbody ul li {
		float: none;
		overflow: hidden;
		width: auto;
		height: auto;
		margin-left: 0;
		padding: 5px 0;
	}

	body.single #caseexample .mbody ul li,
	body.double #caseexample .mbody ul li,
	body.double-l #caseexample .mbody ul li,
	body.multi #caseexample .mbody ul li,
	body.multi2 #caseexample .mbody ul li,
	body.multi2-l #caseexample .mbody ul li {
		width: auto;
		margin-top: 10px;
	}


}


/* detail
------------------------------------------------------------- */
#detail {
}

#detail p {
	margin-top: 1em;
}






/*=========================================================== */
/* side
============================================================= */
/* side frame
------------------------------------------------------------- */
#side .sfrm {
	margin-top: 20px;
	background-color: #fff;
	border:1px solid #ccc;
	border-top: 5px solid #0d2080;
	overflow: hidden;
}
#side .sfrm .shead {
	min-height: 36px;
	margin: 0 10px;
	padding: 10px 0 10px 35px;
	border-bottom: 1px dotted #ccc;
	background-position: left 15px;
	background-repeat: no-repeat;
}
#side .sfrm .shead h4 {
	line-height: 1.3;
	font-size: 105%;
	font-weight: bold;
	color: #000066;
}
#side .sfrm .shead h4 span {
	font-weight: bold;
}
#side #ctg_side_bnr li {
	margin-bottom: 20px;
}
#side #ctg_side_bnr img {
	border-top: 1px solid #ccc;
	border-bottom: 1px solid #ccc;
	border-left: 1px solid #ccc;
	box-sizing: border-box;
}
#side #ctg_qr{
	
}
#side #ctg_qr img{
	width:90%;
	margin:0 5%;
}
#side #ctg_results .shead { background-image: url(../img/bullet/icoctg_work.png);}
#side #ctg_plan .shead { background-image: url(../img/bullet/icoctg_plan.png);}
#side #ctg_items .shead { background-image: url(../img/bullet/icoctg_relat.png);}
#side #ctg_keywords .shead { background-image: url(../img/bullet/icoctg_search.png);}
#side #ctg_qr .shead { background-image: url(../img/bullet/icoctg_relat.png);}


#side .sfrm .sbody {
	padding: 10px;
	background-color: #fff;
}

@media only screen and (min-width: 0px) and (max-width:480px) {
	#side .sfrm {
		margin-top: 10px;
	}
}











/* page top
------------------------------------------------------------- */
#pagetop {
	position: fixed;
	z-index: 1000;
	bottom: 120px;
	right: 10px;
}
#pagetop a {
	display: block;
	overflow: hidden;
	width: 50px;
	height: 0;
	padding-top: 50px;
	background-image: url(../img/footer/pagetop.png);
	background-position: left top;
	background-repeat: no-repeat;
}

@media only screen and (min-width: 0px) and (max-width:480px) {
	#pagetop {
		bottom: 5px;
		right: 5px;
	}
	#pagetop a {
		display: block;
		overflow: hidden;
		background-image: url(../img/footer/pagetop.png);
		background-position: center center;
		background-repeat: no-repeat;
		background-size: 50px 50px;
	}
}



/*=========================================================== */
/* footer
============================================================= */
#footer {
	background-color:#0a1018;
	margin-bottom:70px;
}

/* lead
------------------------------------------------------------- */
#footer .lead {
	min-width: 980px;
	height: auto;
	margin: 0 auto;
}
#footer .lead p {
	width: 980px;
	min-width: 980px;
	margin: 0 auto;
	padding: 4px 0;
	color: #fff;
}

@media only screen and (min-width: 0px) and (max-width:480px) {
	#footer {
		margin-bottom:0;
	}
	#footer .lead {
		min-width: 300px;
		padding: 10px 10px;
	}
	#footer .lead p {
		width: auto;
		min-width: 300px;
		padding:0;
	}
}


/* footer navi
------------------------------------------------------------- */
#foot_flat{
	position: fixed;
	left:0px;
	bottom:0px;
	width: 100%;
	min-width: 1000px;
	border-top: 1px solid #ccc;
	background: #0a1018;
}
#footnav {
	width: 980px;
	min-width: 980px;
	padding-top: 10px;
	padding-bottom: 10px;
	margin: 0 auto;
	position:relative;
}
#footnav:after {
	content: ".";
	display: block;
	visibility: hidden;
	height: 0.1px;
	font-size: 0.1em;
	line-height: 0;
	clear: both;
}
#footnav nav {
	float: left;
}
#footnav nav #contacts {
	position: absolute;
	top:10px;
	left:0;
	height: auto;
	min-width: 350px;
	margin-top: 0;
	padding:5px;
	background-color:#0a1018;
	-webkit-border-radius: 5px;
	border-radius: 5px;
	border:solid 1px #ccc;
	display: inline-block;
	*display: inline;
	*zoom: 1;
}
#footnav nav #contacts:after {
	content: ".";
	display: block;
	visibility: hidden;
	height: 0.1px;
	font-size: 0.1em;
	line-height: 0;
	clear: both;
}
#footnav nav #contacts .number{
	float:left;
	vertical-align:top;
	height:38px;
}
#footnav nav #contacts .number a {
	margin:0;
	padding-left: 25px;
	display: inline-block;
	*display: inline;
	*zoom: 1;
	color: #fff;
	font-size: 140%;
	background: url(../img/footer/foot_tel.png) left top no-repeat;
}
#footnav nav #contacts .number a:hover {
	opacity:0.5;
	filter:alpha(opacity=50);
	-ms-filter: "alpha( opacity=50 )";
}
#footnav nav #contacts .number p {
	font-size:10px;
	margin-top:0;
	margin-bottom:0;
	*display: inline;
	*zoom: 1;
	color:#fff;
}
#footnav nav #contacts .btn {
	display: inline-block;
	*display: inline;
	*zoom: 0;
	margin-top:1px;
	margin-left:10px;
	width:160px;
	height:33px;
	line-height:18px;
	padding: 0;
	line-height:36px;
	border:solid 1px #CBCBCB;
	background: #fff;
	background-repeat: repeat-x;
	background-position: center 100%;
}
#footnav nav #contacts .btn:hover {
	opacity: 1;
	color: #fff;
	background: #0a1018;
}
#footnav nav #contacts p {
	color:#53B067;
	margin-top:10px;
	margin-bottom:10px;
}
#footnav nav ul {
	position: absolute;
	top:10px;
	left:420px;
	display: inline-block;
	*display: inline;
	*zoom: 0;
	padding-top:17px;
}
#footnav nav ul li {
	float: left;
	padding-left: 20px;
	vertical-align:baseline;
}
#footnav nav ul li:first-child {
	padding-left: 0;
}
#footnav nav ul li a {
	text-decoration: none;
	color: #fff;
	vertical-align: baseline;
}
#footnav nav ul li a:hover,
#footnav nav ul li a:active {
	text-decoration: underline;
}

#footnav .copyright {
	color: #fff;
	text-align:right;
	height:51px;
	line-height:51px;
}

@media only screen and (min-width: 0px) and (max-width:480px) {
	#foot_flat{
		position: relative;
		left:0;
		bottom:0;
		-webkit-box-shadow: 0 0 0 0 rgba(0,0,0,0);
		box-shadow: 0 0 0 0 rgba(0,0,0,0);
		min-width:100%;
	}
	#footnav {
		width: auto;
		min-width: auto;
		padding: 10px;
		font-size: 92%;
	}
	#footnav nav {
		float: none;
		width: auto;
		height:auto;
		padding:0;
	}
	#footnav nav #contacts {
		position:static;
		height: auto;
		width: auto;
		min-width:auto;
		margin: 0;
		text-align:center;
		display:block;
	}
	#footnav nav #contacts .number{
		float:none;
		height: auto;
		text-align: center;
	}
	#footnav nav #contacts .number a img{
		height:auto;
	}
	#footnav nav #contacts .number p{
		font-size:14px;
		text-align:center;
		width:auto;
		margin-top:5px;
		margin-bottom:5px;
		display:block;
	}
	#footnav nav #contacts .number p br{
		display:none;
	}
	#footnav nav #contacts .btn {
		margin-left:0;
		width:100%;
	}
	#footnav nav ul {
		position:static;
		text-align: center;
		display:block;
		padding-top:10px;
	}
	#footnav .copyright {
		float: none;
		text-align: center;
		line-height:18px;
		height:auto;
		margin-top:10px;
	}
}



/*=========================================================== */
/* eye-catch
============================================================= */
/* eye-catch : header */
body.eye-h #header {
	background-image: url(../img/contents/eye-catch.jpg);
	background-repeat: no-repeat;
	background-position: center top;
	background-size: cover;
}
body.eye-h #headnav {
	margin-top: 200px;
}
/* eye-catch : header bottom */
body.eye-hb #header {
	padding-bottom: 200px;
	background-image: url(../img/contents/eye-catch.jpg);
	background-repeat: no-repeat;
	background-position: center bottom;
	background-size: cover;
}
body.eye-hb #header h1 {
	display: none;
}

/* eye-catch : main */
#eye-m { display: none;}
body.eye-m #eye-m {
	display: block;
	margin-bottom: 20px;
	padding-top: 200px;
	background-image: url(../img/contents/eye-catch.jpg);
	background-repeat: no-repeat;
	background-position: center bottom;
	background-size: auto 200px;
}

/* eye-catch : contents */
#eye-c { display: none;}
body.eye-c #eye-c {
	display: block;
	margin-bottom: 20px;
	padding-top: 200px;
	background-image: url(../img/contents/eye-catch.jpg);
	background-repeat: no-repeat;
	background-position: center bottom;
	background-size: auto 200px;
}

@media only screen and (min-width: 0px) and (max-width:480px) {
}

/*=========================================================== */
/* plan_list
============================================================= */
.plan_detail_list {
}
.plan_detail_list li:first-child {
	margin-top:0;
}
.plan_detail_list li {
	border-bottom:dotted 1px #CBCBCB;
	padding-bottom:20px;
	margin-top:20px;
}
.plan_detail_list li .plan_detail_list_copy {
	margin-bottom:10px;
}
.plan_detail_list li h3 {
	font-size: 130%;
	color: #555555;
	font-size: 24px;
	font-weight: bold;
}
.plan_detail_list li h3 span {
	color:#ff0000;
	font-size:80%;
	font-weight:normal;
	padding-right:5px;
	vertical-align:top;
	line-height:22px;
}
.plan_detail_list li .plan_detail_list_img {
	display: inline-block;
	*display: inline;
	*zoom: 1;
	margin-right:20px;
	margin-bottom:10px;
	vertical-align:top;
}
.plan_detail_list li .plan_detail_list_info {
	width: 400px;
	display: inline-block;
	*display: inline;
	*zoom: 1;
	vertical-align:top;
	margin-bottom:10px;
}
.plan_detail_list li .plan_detail_list_info .price {
	margin-bottom:10px;
}
.plan_detail_list li .plan_detail_list_info p {
	display: block;
	padding: 20px;
	border: 1px dotted #ccc;
}
.plan_detail_list li .plan_detail_list_info div {
	font-size:150%;
	color:#a51616;;
	font-weight:bold;
	display:block;
}
.plan_detail_list li .plan_detail_list_info div em {
	vertical-align: middle;
	color:#0d2080;
	border:solid 1px #A3A3A3;
	font-size:90%;
	font-weight:normal;
	padding: 3px 10px;
	margin-right:10px;
}
.plan_detail_list li .plan_detail_list_info div span {
	font-size:120%;
	height:42px;
	line-height:42px;
	margin-right:5px;
}
.plan_detail_list li a {
	width: 50%;
	float: right;
	font-size:120%;
	padding:10px;
	margin-top:20px;
}

@media only screen and (min-width: 0px) and (max-width:480px) {
	.plan_detail_list li .plan_detail_list_info {
		float: none;
		width: 100%;
	}
	.plan_detail_list li .plan_detail_list_info p {
		display: block;
		width: 100%;
		box-sizing:border-box;
	}
	.plan_detail_list li .plan_detail_list_img {
		width: 100%;
		height: auto;
	}
	.plan_detail_list li a {
		width: 100%;
		line-height: 40px;
		box-sizing: border-box;
	}
}

/*=========================================================== */
/* plan_detail
============================================================= */
.plan_detail {
}
.plan_detail .plan_deta {
}
.plan_detail .plan_deta .plan_info {
	margin-bottom:10px;
	padding-left:10px;
	padding-right:10px;
	display: inline-block;
	*display: inline;
	*zoom: 1;
	vertical-align:top;
	width:300px;
	height:160px;
	border-top:solid 3px #53B067;
	border-left:solid 1px #CBCBCB;
	border-bottom:solid 1px #CBCBCB;
	text-align:center;
}
.plan_detail .plan_deta .plan_info h3 {
	font-size:180%;
	color:#666666;
	margin-top:5px;
	margin-bottom:10px;
	border-bottom: 1px dotted #CBCBCB;
	height:40px;
	line-height:40px;
	vertical-align:middle;
}
.plan_detail .plan_deta .plan_info h3 span {
	color:#ff0000;
	font-size:60%;
	font-weight:normal;
	display: inline-block;
	*display: inline;
	*zoom: 1;
	vertical-align:middle;
	line-height: 9px;
	height: 13px;
	padding-right:5px;
}
.plan_detail .plan_deta .plan_info .price {
	margin-bottom:10px;
	font-size:150%;
	color:#F27800;
	font-weight:bold;
	display:block;
}
.plan_detail .plan_deta .plan_info .price em {
	border-radius: 2px;
	-moz-border-radius: 2px;
	-webkit-border-radius: 2px;
	color:#ffffff;
	background-color:#F27800;
	font-size:90%;
	font-weight:normal;
	padding:1px 4px;
	margin-right:10px;
	vertical-align: top;
}
.plan_detail .plan_deta .plan_info .price span {
	font-size:120%;
	margin-right:5px;
	height:28px;
	line-height:28px;
	display: inline-block;
	*display: inline;
	*zoom: 1;
	vertical-align: top;
}
.plan_detail .plan_deta .plan_info .scale {
	margin-bottom:0;
	font-size:100%;
	color:#53B067;
	font-weight:bold;
	display:block;
}
.plan_detail .plan_deta .plan_info .scale em {
	border-radius: 2px;
	-moz-border-radius: 2px;
	-webkit-border-radius: 2px;
	color:#53B067;
	border:solid 1px #53B067;
	font-weight:normal;
	padding:1px 4px;
	margin-right:10px;
}
.plan_detail .plan_deta .plan_info .scale span {
	font-size:120%;
	margin-right:5px;
}
.plan_detail .plan_deta .plan_detail_img {
	vertical-align:top;
	border-top:solid 3px #53B067;
	border-bottom:solid 1px #CBCBCB;
}
.plan_detail .plan_deta .plan_detail_img + img {
	vertical-align:top;
	border-top:solid 3px #53B067;
	border-right:solid 1px #CBCBCB;
	border-bottom:solid 1px #CBCBCB;
}
.plan_detail .plan_deta .detail_text {
	font-size:120%;
	margin-bottom:10px;
}
.plan_detail .plan_deta .detail_text span {
	display:block;
	color:#B85FA2;
	font-weight:bold;
	margin-bottom:5px;
}
.plan_detail h4{
	border-top: 1px solid #CBCBCB;
	border-bottom: 1px dotted #CBCBCB;
	color:#53B067;
	font-size:130%;
	height:40px;
	line-height:40px;
	padding-left:10px;
	padding-right:10px;
	margin-top:30px;
	margin-bottom:20px;
}
.plan_detail .plan_flow:first-child {
	margin-top:0 !important;
}
.plan_detail .plan_flow{
	margin-top:10px;
}
.plan_detail .plan_flow .flow_l {
	background-color:#b5d3af;
	width:16px;
	border-radius: 3px;
	-moz-border-radius: 3px;
	-webkit-border-radius: 3px;
	display:table-cell;
	vertical-align:top;
}
.plan_detail .plan_flow .flow_l p {
	padding:10px;
	color:#ffffff;
	font-size:150%;
	font-weight:bold;
	line-height:20px;
	text-align:center;
}
.plan_detail .plan_flow .flow_r {
	display:table-cell;
	vertical-align:top;
	padding-left:20px;
}
.plan_detail .plan_flow .flow_r dl:first-child {
	margin-top:0 !important;
}
.plan_detail .plan_flow .flow_r dl {
	margin-top:10px;
	text-align:center;
}
.plan_detail .plan_flow .flow_r dl dt {
	display:table-cell;
	background-color:#53B067;
	color:#ffffff;
	font-size:200%;
	text-align:center;
	padding-top:10px;
	padding-bottom:10px;
	width:100px;
	vertical-align:middle;
	border-radius: 3px 0 0 3px;
	-moz-border-radius: 3px 0 0 3px;
	-webkit-border-radius: 3px 0 0 3px;
}
.plan_detail .plan_flow .flow_r dl dt span {
	display:block;
	font-size:60%;
}
.plan_detail .plan_flow .flow_r dl dd {
	display:table-cell;
	border-top:solid 1px #53B067;
	border-bottom:solid 1px #53B067;
	border-right:solid 1px #53B067;
	width:505px;
	padding:10px;
	vertical-align:top;
	border-radius: 0 3px 3px 0;
	-moz-border-radius: 0 3px 3px 0;
	-webkit-border-radius: 0 3px 3px 0;
	text-align:left;
}
.plan_detail .plan_flow .flow_r dl dd span {
	color:#B85FA2;
	display:block;
	font-size:120%;
	font-weight:bold;
	margin-bottom:5px;
}
.plan_detail .plan_flow .flow_r dl dd p+span {
	margin-top:5px;
}
.plan_detail .plan_flow .flow_r dl dd span+p {
	margin-top:0;
}
.plan_detail .plan_flow .flow_r dl dd p {
	/*min-height:36px;*/
	margin-top:5px;
}
.plan_detail .plan_flow .flow_r dl .next_flow {
	background-color:#B85FA2;
	margin-top:10px;
}

@media only screen and (min-width: 0px) and (max-width:480px) {
}


/*=========================================================== */
/* pankz
============================================================= */
.pankz {
	width: 980px;
	margin: 0 auto 10px;
}
.pankz ol li {
	color: #555;
	display: inline;
}
@media only screen and (min-width: 0px) and (max-width:480px) {
	.pankz {
		width: auto;
		margin: 10px;
	}
}

/*=========================================================== */
/* plan
============================================================= */

.plan_detail .plan_deta .plan_head{
	overflow: hidden;
	display: table;
	width: 100%;
	height: 200px;
	margin-bottom: 20px;
	border: 1px solid #ccc;
}
.plan_detail .plan_deta .plan_head > div {
	display: table-cell;
	width: 100%;
	vertical-align: middle;
	text-align: center;
	color: #234a60;
}
.plan_detail .plan_deta .plan_head > div h3 span {
	padding-left: 20px;
	font-size: 120%;
	color: #c1272d;
}
.plan_detail .plan_deta .plan_head > span {
	display: table-cell;
	vertical-align: middle;
	float: left;
}
.plan_detail .plan_deta .plan_head .plan_listetc li {
	display: inline-block;
	border: 1px solid #ccc;
	background-color: #0d2080;
	color: #fff;
	padding: 3px 5px;
}
.plan_detail .plan_deta .plan_head .plan_listetc li.notlist {
	background-color: #ccc;
}

.plan_detail .plan_deta .plan_detail_text {
	float: right;
	width: 300px;
	display: block;
}

.plan_detail .plan_deta .plan_head >p{
	margin-top: 10px;
}
.plan_detail .plan_deta .plan_off h3 {
	padding-bottom: 5px;
	margin-bottom: 20px;
	margin-top: 20px;
	border-bottom: 1px solid #ccc;
	line-height: 1.3;
	font-size: 116%;
}
.plan_detail .plan_deta .plan_off p {
	margin-bottom: 10px;
	height:	44px;
}
.plan_detail .plan_deta .plan_off .plan_listdetail {
	border: 1px dotted #ccc;
	padding: 0 10px 10px;
}
.plan_detail .plan_deta .plan_off .plan_listdetail li {
	display: inline-block;
	width: 23%;
	vertical-align: middle;
	margin-right: 10px;
	margin-top: 10px;
}
.plan_detail .plan_deta .plan_off .plan_listdetail li:before {
	content: url(../img/bullet/blt_rtri_gy.png);
}
.plan_detail .plan_deta .plan_price {
	font-size: 90%;
	margin-top: 20px;
}
.plan_detail .plan_deta .plan_price ul li {
	margin-top: 5px;
}
.plan_detail .plan_deta .plan_price ul li:before {
	content: url(../img/bullet/blt_rtri_gy.png);
	padding-right: 3px;
}

.plan_detail .plan_deta .plan_img ul {
	width: 100%;
	display: table;
}
.plan_detail .plan_deta .plan_img ul li {
	display: table-cell;
	text-align: center;
}


@media only screen and (min-width: 0px) and (max-width:480px) {
	.plan_detail .plan_deta .plan_head > em ,
	.plan_detail .plan_deta .plan_head > span {
		display: block;
	}
	.plan_detail .plan_deta .plan_head > em {
		padding: 30px;
	}
	.plan_detail .plan_deta .plan_head > span img {
		width: 100%;
		height: auto;
	}
	.plan_detail .plan_deta .plan_off .plan_listdetail li {
		display: block;
		width: auto;
		margin-right: 0;
	}
	.plan_detail .plan_deta .plan_img ul li {
		display: inline-block;
		margin-bottom: 5px;
		margin-right: 5px;
	}
}

.plan_title {
    color: #555555;
    padding: 10px;
    font-size: 160%;
	font-weight: normal !important;
    font-family: "Roboto Slab" , Garamond , "Times New Roman" , "ヒラギノ明朝 Pro W3" , "Hiragino Mincho Pro" , "HiraMinProN-W3" , "HGS明朝E" , "ＭＳ Ｐ明朝" , "MS PMincho" , serif;
}
.plan_title span {
	font-weight: bold;
	color: #F15A24;
}

.mapa img{
	width:80%;
	margin:20px 10%;
}
.mapb span{
	font-weight:bold;
}
.mapb img{
	width:60%;
	margin:10px 20%;
}

.plan_off ul{
	width:100%;
}
.plan_off ul li{
	display: inline-block;
	*display: inline;
	*zoom: 1;
	border:solid 2px #6766a5;
	width:11%;
	margin:0 1% 15px;
}
.plan_off ul li img{
	border-bottom:solid 1px #CBCBCB;
}
.plan_off ul li p{
	display:table-cell;
	vertical-align:middle;
	text-align:center;
	width:76px;
	height:36px;
}

.img_l{
	float:left;
	width:45%;
	padding:6px;
	box-sizing: border-box;
}
.img_l img{
	margin-bottom:10px;
}
.img_l img:first-child{
	width:100%;
}
.img_l img{
	width:49%;
}

@media only screen and (min-width: 0px) and (max-width:480px) {
	.img_l{
		float:none;
		width:100%;
	}
	.img_l img{
	width:100%;
}
}


.tb_com {
	margin-top:10px;
	margin-bottom: 10px;
	border:1px solid #F8FAFA;
}

.tb_com td,
.tb_com th {
	text-align:center;
	vertical-align:top;
	font-size:12px;
	line-height:100%;
	font-weight:bold;
	padding:10px;
	border:1px solid #F8FAFA;
}

.tb_com td:nth-child(2n){
	background-color: #F7F6EB;
}

.tb_com th {
	text-align:left;
	color: #FFF;
	vertical-align: middle;
}
.tb_com strong {
	font-weight:bold;
	font-size:14px;
	line-height:120%;
}


.tb_com td p{
	font-weight: bold;
	letter-spacing: 1px;
}

.centering {
	margin:0 auto;
}
#est_error{
	color:#FF0000;
	font-size:110%;
}
.est_list{

}
.est_list li{
	float:left;
	width:25%;
	margin:2px 0;
}
.est_list select{
	width:65%;
}
.est_list2{
}
.est_list2 li{
	position: relative;
	float:left;
	width:33%;
	height:135px;
	margin:2px 0 5px;
}
.est_list2 select{
	width:65%;
}
.est_out{
	width:100%;
	position: absolute;
	bottom:0;
}
.btn_1{
	width:40%;
	margin:20px 30% 0;
	box-sizing: border-box;
}
#est_out{
	display:none;
}
@media only screen and (min-width: 0px) and (max-width:480px) {
	.tb_com{
	}
	.scrTable{
		box-sizing: border-box;
		overflow-x:scroll;
	}
	.est_list li{
		width:50%;
	}
	.est_list2 li{
		width:50%;
		height:170px;
	}
	.sp_del{
		display: none;	
	}
	.btn_1{
		width:80%;
		margin:20px 10% 0;
	}
}


.offering_plan_box {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	width: 683px;
}
.offering_plan_box img {
	display: block;
	width: 48%;
	margin-top: 20px;
}
.offering_plan_box img:nth-child(odd) {
}
.offering_plan_box img:nth-child(even) {
}
.offering_plan .btn {
	width: 450px;
	margin: 20px auto 0;
}
@media only screen and (min-width: 0px) and (max-width:480px) {
	.offering_plan_box {
		display: block;
		width: 100%;
	}
	.offering_plan_box img {
		width: 100%;
		margin-top: 15px;
	}
	.offering_plan .btn {
		width: 70%;
	}
}


/* 下層ページバナー */
.contact_bn {
	line-height: 0;
	margin-bottom: 20px;
}
.contact_bn a {
	display: inline-block;
	line-height: 0;
}
.contact_bn a:hover {
	opacity: .6;
}
@media only screen and (min-width: 0px) and (max-width:480px) {
	.contact_bn img {
		width: 100%;
		height: auto;
	}
}


/* 記事内画像 */
.detail_img {
	display: block;
	margin-bottom: 1em;
}