@charset "utf-8";

a {color: #00f; text-decoration: none;}
a:hover {color: #f00;}
img {max-width: 100%; height: auto; vertical-align: top;}
ul {list-style: none;}
small {font-size: 12px;}
dfn {font-style: normal;}

.arrowLink {
	padding-left: 20px;
	background: url(../../images/icon_arrow.gif) left center no-repeat;
}

/*
--- ※赤字
------------------------------*/
.atn {
	color: #f00;
}


/*
--- 横並び
------------------------------*/
.cf {
	/zoom: 1;
	overflow: hidden;
}

.cf:after {
	content: "";
	display: block;
	clear: both;	
}

.clear {
	clear: both;
}

.center {
	text-align: center;
}

	/*
	--- ボタン
	------------------------------*/
	.btn {
		position: relative;
		display: inline-block;
		height: 60px;
		color: #fa7931;
		font-size: 18px;
		font-weight: bold;
		line-height: 60px;
		text-align: center;
		text-shadow: 1px 1px 2px #fff;
		-webkit-box-sizing: border-box;
		box-sizing: border-box;
		margin-bottom: 30px;
		padding: 0 20px 0 70px;
		-webkit-border-radius: 30px;
		border-radius: 30px;
		-webkit-box-shadow: 0 2px 1px #fa7931;
		box-shadow: 0 2px 1px #fa7931;
		background: #f2f2f2;
		background: -moz-linear-gradient(top,  #f2f2f2 50%, #e5e5e5 50%, #e5e5e5 100%);
		background: -webkit-gradient(linear, left top, left bottom, color-stop(50%,#f2f2f2), color-stop(50%,#e5e5e5), color-stop(100%,#e5e5e5));
		background: -webkit-linear-gradient(top,  #f2f2f2 50%,#e5e5e5 50%,#e5e5e5 100%);
		background: -o-linear-gradient(top,  #f2f2f2 50%,#e5e5e5 50%,#e5e5e5 100%);
		background: -ms-linear-gradient(top,  #f2f2f2 50%,#e5e5e5 50%,#e5e5e5 100%);
		background: linear-gradient(to bottom,  #f2f2f2 50%,#e5e5e5 50%,#e5e5e5 100%);
		filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#f2f2f2', endColorstr='#e5e5e5',GradientType=0 );
	}
	
	.btn .icon {
		position: absolute;
		left: 20px;
		display: inline-block;
		width: 33px;
		height: 60px;
	}
	
	.btn .icon.arrow {
		background: url(../../images/icon_arrow.png) left center no-repeat;
	}
	
	.btn .icon.tel {
		width: 38px;
		background: url(../../images/icon_tel.png) left center no-repeat;
	}

body {
	color: #333;
	font: 14px/1.4 "Hiragino Kaku Gothic Pro","ヒラギノ角ゴ Pro W3",Meiryo,"メイリオ","MS PGothic","ＭＳ Ｐゴシック",sans-serif;
	-webkit-text-size-adjust: none;
	background: #fff;
}

#wrapper {
	width: 960px;
	margin: 0 auto;
	border-right: 5px solid #eee;
	border-left: 5px solid #eee;
}

#globalHeaderInner,
#content,
#globalFooter {
	padding: 0  20px;
}

.sectionDesc {
	margin-bottom: 20px;	
}

.banner {
	text-align: center;
	margin: 20px 0 30px;	
}

.btn {
	text-align: right;
	margin: 20px 0;
}

.btn a:hover img {
	opacity: .7;
}

/*==============================
--- #globalHeader
==============================*/
#globalHeader {
	margin-bottom: 5px;
	padding: 0;
}


/*==============================
--- #mainVisual
==============================*/
#mainVisual {
	margin-bottom: 30px;
}

/*==============================
--- #content
==============================*/
#content {
	margin-bottom: 20px;
}

section {
	margin-bottom: 40px;
}

section section {
	margin-bottom: 20px;
}

section h1,
section h2 {
	margin-bottom: .5em;
}

section h1 {
	color: #fff;
	font-size: 26px;
	font-weight: bold;
	padding: 8px 16px;
	background: #2c99ff;
}

section h2 {
	color: #2c99ff;
	font-size: 23px;
	font-weight: bold;
	padding-left: 5px;
	border-left: 3px solid #2c99ff;	
}

#content #supportFlow .right h2 {
	border: 0;	
}

#content section p {
	margin-bottom: 10px;	
}

/*
--- #main
------------------------------*/
#factor ul li {
	margin-bottom: 1.2em;
}

#factor ul li:nth-child(2n) {
	margin-right: 0;
}

#symptom ul li .inner,
#factor ul li .inner {
	padding: 7px;
	border: 5px solid #ddd;
}

#factor ul li .inner {
	height: 210px;
}

#symptom h2,
#factor h2 {
	text-align: center;
	text-indent: -9999px;
	margin: .3em 0;
	padding-left: 0;
	border-left: 0;	
}

#symptom h2 {
	line-height: 52px;
}

#factor h2 {
	line-height: 37px;
	margin-top: 0;
	margin-bottom: .8em;
}

.factorImp {
	width: 70%;
}

.factorImp h3 {
	color: #fff;
	text-align: center;
	margin: 1.2em 0 .5em;
	padding: 3px;
	background: #ff843a;
}

.factorImp ul {
	font-size: 13px;
	list-style: square;
	margin-left: 1.8em;
}

#factor .factorImp ul li {
	margin-bottom: 0;
}

#symptom01 h2 {background: url(../images/symptom01_title.png) center top no-repeat;}
#symptom02 h2 {background: url(../images/symptom02_title.png) center top no-repeat;}
#symptom03 h2 {background: url(../images/symptom03_title.png) center top no-repeat;}

.supportExp {
	min-height: 79px;
	border: 3px solid #ffe5b8;
	padding: 10px 10px 10px 143px;
	background: url(../images/support_exp_img.png) left center no-repeat #fffcec;
}

#factor01 .inner {background: url(../images/factor01_img.png) right bottom no-repeat !important;}
#factor02 .inner {background: url(../images/factor02_img.png) right bottom no-repeat !important;}
#factor03 .inner {background: url(../images/factor03_img.png) right bottom no-repeat !important;}
#factor04 .inner {background: url(../images/factor04_img.png) right bottom no-repeat !important;}

#factor01 h2 {background: url(../images/factor01_title.png) left top no-repeat;}
#factor02 h2 {background: url(../images/factor02_title.png) left top no-repeat;}
#factor03 h2 {background: url(../images/factor03_title.png) left top no-repeat;}
#factor04 h2 {background: url(../images/factor04_title.png) left top no-repeat;}

#serviceExp h1 {
	height: 64px;
	text-indent: -9999px;
	padding: 0;
	background: url(../images/service_title01.png) left top no-repeat;
}

#supportFlow ul {
	padding-left: 83px;
	background: url(../images/support_flow_side.png) left top no-repeat;
}

#supportFlow .right {
	float: none;
	margin-left: 245px;	
}

#supportFlow p strong {
	color: #0084ff;
}

#supportFlow p strong span {
	color: #f00;	
}

#supportFlow #supportFlow01,
#supportFlow #supportFlow02 {
	margin-bottom: 25px;
}

#supportFlow h2 {
	color: #ff7510;
	font-size: 20px;
	margin-bottom: 10px;
	padding: 0;
}

#price ul {
	margin: 20px 0 30px;
}

#price ul li {
	float: left;
}

.priceList .price01,
.priceList .price02 {
	padding-right: 49px;
	background: url(../images/price_plus.png) right center no-repeat;	
}

.priceList .price03 {
	padding-right: 49px;
	background: url(../images/price_equal.png) right center no-repeat;	
}

#main #area section {
	min-height: 190px;
	padding-left: 224px;
	background: url(../../images/support_area_img.gif) left top no-repeat;
}

#main #address dl {
	min-height: 200px;
	padding-right: 310px;
	background: url(../images/img_address.jpg) right top no-repeat;		
}

#main #address dl dt {
	font-size: 18px;
	font-weight: bold;
	margin-bottom: 5px;
	padding-left: 5px;
	border-left: 2px solid #0066cc;	
}

#main #address dl dd {
	margin-bottom: 10px;
}

#customerVoice #voiceLeft {
	width: 350px;
	float: left;
	text-align: center;
}

#customerVoice #voiceRight {
	padding: 10px;
	margin-left: 370px;
	border: 2px solid #ffeca8;
	background: #fffdee;
}

#customerVoice .customerName {
	color: #2c99ff;
	font-size: 18px;
	font-weight: bold;
}

#customerVoice #voiceRight .customerName {
	text-align: right;
	margin-bottom: 30px;
}

#main #overview table {
	width: 100%;	
}

#main #overview th,
#main #overview td {
	padding: 5px 10px;
	border: 1px solid #ccc;	
}

#main #overview th {
	text-align: left;
	background: #eee;	
}

/*==============================
--- #globalFooter
==============================*/
#globalFooter {
	color: #fff;
	padding: 10px 0;
	background: #2c99ff;
}

#globalFooter #copyright {
	text-align: center;
}

@media screen and (max-width: 640px) {
	.btn {
		display: block;
		text-align: center;
	}
	
	#wrapper {
		width: 96%;
		padding: 0 2%;
		border: 0;
	}
	
	#globalHeader {
		text-align: center;
		margin-bottom: 1em;
	}
	
	#globalHeader h1 {
		margin-bottom: .5em !important;
	}
	
	#globalHeader #headerTel .btn {
		margin-bottom: 5px;
	}
	
	#mainVisual {
		margin-bottom: 20px;
	}
	
	#content {
		padding: 0;
	}
	
	section h1 {
		font-size: 20px;
		line-height: 24px;
	}

	section h2 {
		font-size: 18px;
		line-height: 22px;
	}
	
	.symptomImg {
		text-align: center;
	}
	
	#serviceExp h1 {
		text-indent: 0;
		padding: 8px 16px;
		background: #2c99ff;
	}
	
	#supportFlow ul {
		padding-left: 0;
		background: none;
	}
	
	#supportFlow .left {
		display: none;
	}
	
	#supportFlow01, #supportFlow02 {
		padding-bottom: 30px;
		background: url(../images/flow_arrow.png) center bottom no-repeat;
	}

	#price ul li {
		width: 46%;
		float: left;
		margin-left: 2%;
		margin-bottom: 2%;
	}
	
	#price ul li img {
		width: 100%;
		height: auto;
	}

	.priceList .price01,
	.priceList .price02,
	.priceList .price03 {
		padding-right: 0;
		background: none;	
	}
	
	.supportExp {
		min-height: 0;
		border: 3px solid #ffe5b8;
		padding: 10px;
		background: #fffcec;
	}
	
	#factor .inner {
		height: auto !important;
		background: none !important;
	}
	
	#factor h2 {
		text-align: left;
		line-height: 22px;
		text-indent: 0;
		background: none;
	}
	
	.factorImp {
		width: 100%;
	}

	.factorImp h3 {
		color: #fff;
		font-size: 16px;
		text-align: center;
		margin: 1.2em 0 .5em;
		padding: 0;
		background: #ff843a;
	}
	
	#serviceExp h1 {
		height: auto;
	}
}
