@charset "utf-8";
/*------------------------------------------------------------
	トープページ
------------------------------------------------------------*/
.mainVisual {
	background: url(../images/style/main_visual_bg.jpg) no-repeat center top;
	background-size: 100% auto;
}

.pageInner {
	margin-bottom: 70px;
}

body {
font-family: 'Avenir','Helvetica Neue','Helvetica','Arial','Hiragino Sans','ヒラギノ角ゴシック',YuGothic,'Yu Gothic','メイリオ', Meiryo,'ＭＳ Ｐゴシック','MS PGothic'  
}

#main {
	width: auto;
}

#main h3 {
	margin-bottom: 20px;
	text-align: center;
}

#main .comTtl {
	margin-bottom: 14px;
	text-align: center;
}

#main .text01 {
	margin-bottom: 78px;
	line-height: 2.0;
	text-align: center;
}

#main .styleList {
	margin: 0 auto 64px;
	padding-left: 23px;
	width: 1125px;
}

#main .styleList li {
	margin-right: 23px;
	padding-bottom: 23px;
	width: 352px;
	float: left;
	font-size: 12px;
	line-height: 1.7;
	text-align: center;
	background-color: #EEF0F2;
}

#main .styleList .style01 {
	margin: 0 20px 67px 0;
	padding: 0 13px 30px 42px;
	width: 486px;
	text-align: left;
}

#main .styleList .style02 {
	margin: 0 20px 67px 0;
	padding: 0 45px 30px 48px;
	width: 448px;
	text-align: left;
}

#main .styleList p {
	margin: 12px 0 10px;
	font-family: HanaMinA;
	font-size: 24px;
	line-height: 1.4;
}

#main .styleList .photo {
	margin: -31px 0 0;
}

#main .styleList .photo img {
	margin: 0 auto;
}

#main .styleList .imgBox {
	margin-bottom: 10px;
}

#main .styleList .imgBox .photo {
	margin-top: -17px;
	float: right;
}

#main .styleList .imgBox p {
	margin: 44px 0 0;
	width: 250px;
	float: left;
	font-size: 29px;
}

#main .stepBox {
	padding-bottom: 94px;
	background:  #EEE url(../images/style/img07.png) no-repeat right bottom;
}

#main .stepBox .visualImg {	
	padding-top: 31px;
	background: url(../images/style/bg01.gif) repeat-x left top;
}

#main .stepBox .subBox {
	margin: 0 auto;
	padding: 84px 0 0;
	width: 1072px;
}

#main .stepBox h4 {
	margin-top: 16px;
	float: right;
}

#main .stepBox .stepDl {
	padding-left: 26px;
	width: 715px;
	float: left;
}

#main .stepBox .stepDl dt {
	margin-bottom: 16px;
	font-family: HanaMinA;
	font-size: 24px;
}

#main .stepBox .stepDl dt span {
	margin-right: 20px;
	padding: 20px 20px 42px;
	color: #02599A;
	font-weight: bold;
	font-size: 34px;
	font-style: italic;
	background: url(../images/style/span_bg.gif) no-repeat left top;
}

#main .stepBox .stepDl dd {
	padding: 0 0 96px 52px;
	font-size: 12px;
	line-height: 2.0;
}

#main .stepBox .stepDl .photoUl {
	padding: 69px 0 28px;
}

#main .stepBox .stepDl .photoUl li {
	padding: 0 3px 0 15px;
	float: left;
}

#main .qaBox {
	background: url(../images/style/img08.jpg) no-repeat left top;
	background-size: 100% auto;
}

#main .qaBox .subBox {
	padding: 140px 0;
	background: url(../images/style/qa_bg.png) repeat left top;
}

#main .qaBox h4 {
	margin-bottom: 63px;
	color: #FFF;
	font-family:Lora,HanaMinA;
	font-size: 41px;
	line-height: 1.4;
	text-align: center;
}

#main .qaBox h4 span {
	display: block;
	font-size: 17px;
	font-style: italic;
}

#main .qaBox .subQa {
	margin: 0 auto;
	width: 1000px;
}

#main .qaBox .title {
	margin-top: 24px;
	padding-top: 2px;
	border-top: 1px solid #035A9B;
}

#main .qaBox .title p {
	padding: 15px 18px 7px;
	color: #FFF;
	cursor: pointer;
	font-family:Lora,HanaMinA;
	font-size: 23px;
	position: relative;
	background-color: #213C5F;
	border: 1px solid #C8C9C9;
}

#main .qaBox .title p span {
	padding: 3px 0 3px 35px;
	width: 70px;
	display: block;
	position: absolute;
	right: 18px;
	top: 14px;
	font-size: 14px;
	font-weight: bold;
	font-family: "ヒラギノ角ゴ Pro W3","メイリオ", sans-serif;
	background: url(../images/style/icon02.gif) no-repeat 8px 8px;
}

#main .qaBox .title p .close {
	display: none;
}

#main .qaBox .title.on p .open {
	display: none;
}

#main .qaBox .title.on p .close {
	display: block;
}

#main .qaBox .on p span {
	color: #203B5E;
	background: #FFF url(../images/style/icon01.gif) no-repeat 8px 8px;
}

#main .qaBox .qaSlider {
	margin: 2px 0 16px;
	padding: 16px 30px;
	display: none;
	font-size: 14px;
	line-height: 1.9;
	background-color: #FFF;
	border: 1px solid #C8C9C9;
}

#main .qaBox .qaSlider dt {
	padding: 15px 0 0 10px;
	width: 225px;
	min-height: 40px;
	float: left;
	font-weight: bold;
	line-height: 1.7;
	background: url(../images/style/icon03.gif) no-repeat right 18px;
}

#main .qaBox .qaSlider dd {
	padding: 12px 0 15px 262px;
	min-height: 72px;
	background: url(../images/style/line.gif) repeat-x left bottom;
}

#main .qaBox .qaSlider .none {
	background: none;
}

#main .qaBox .qaSlider dd p {
	margin-bottom: 5px;
	color: #203B5E;
	font-size: 16px;
	font-weight: bold;
}

@media all and (min-width: 0) and (max-width: 767px)  {
	.mainVisual {
		margin-bottom: 50px;
		background: url(../images/style/sp_main_visual_bg.jpg) no-repeat center top;
		background-size: 100% auto;
	}

	.mainVisual h2 span {
		letter-spacing: -3px;
	}
	
	#main h3 {
		margin: 0 20px 25px;
		font-size: 26px;
	}

	#main .comTtl {
		margin-bottom: 20px;
		font-size: 14px;
	}
	
	#main .text01 {
		margin: 0 20px 20px;
		text-align: left;
	}
	
	#main .styleList {
		margin: 0 20px 47px;
		padding: 0;
		width: auto;
	}
	
	#main .styleList li {
		margin: 0 0 32px;
		padding: 25px;
		width: auto;
		float: none;
	}

	#main .styleList li:last-child {
		margin-bottom: 0;
	}

	#main .styleList li:last-child br {
		display: none;
	}
	
	#main .styleList .style01,
	#main .styleList .style02 {
		margin: 0 0 32px;
		padding: 25px;
		width: auto;
	}
	
	#main .styleList .style01 .photo,
	#main .styleList .style02 .photo {
		margin: 0;
		float: none;
	}
			
	#main .styleList .style01 p,
	#main .styleList .style02 p {
		margin-top: 25px;
		padding-top: 0;
		float: none;
		width: auto;
	}

	#main .styleList .style01,
	#main .styleList .style02 {
		text-align: center;
	}

	#main .styleList .style02 p {
		text-align: center;
	}
	
	#main .styleList .photo {
		margin: 8px 30px 0 25px;
	}
	
	#main .styleList p {
		padding-top: 15px;
		text-align: center;
	}
	
	#main .stepBox {
		background: #EEE;
	}
	
	#main .stepBox .subBox {
		padding-top: 35px;
		width: auto;
		background: url(../images/style/sp_img07.jpg) no-repeat right 235px;
	}
	
	#main .stepBox h4 {
		margin: 0 0 140px 40px;
		float: none;
	}

	#main .stepBox h4 img {
		display: none;
	}

	#main .stepBox h4 .sp {
		display: block;
	}
	
	#main .stepBox .stepDl {
		padding-left: 0;
		width: auto;
		float: none;
	}

	#main .stepBox .stepDl dt {
		margin-bottom: 20px;
		padding-left: 50px;
		font-size: 18px;
		font-weight: bold;
		font-family: MS PGothic, "ＭＳ Ｐゴシック", Osaka, "ヒラギノ角ゴ Pro W3";
	}
	
	#main .stepBox .stepDl dt span {
		margin: 0 0 -28px -50px;
		display: block;
		font-family: HanaMinA;
	}

	#main .stepBox .stepDl dd {
		padding: 0 15px 45px 52px;
		font-size: 12px;
	}
	
	#main .stepBox .stepDl .photoUl {
		display: none;
	}
	
	#main .qaBox {
		margin-top: 0;
		background: url(../images/style/qa_box_bg.gif) repeat left top;
	}
	
	#main .qaBox h4 {
		margin: 0 40px 55px;
		font-size: 31px;
	}

	#main .qaBox h4 span {
		margin-top: 15px;
	}
	
	#main .qaBox .subBox {
		padding: 65px 0 20px;
		background: none;
	}
	
	#main .qaBox .subQa {
		margin: 0 10px;
		width: auto;
	}

	#main .qaBox .title p {
		padding: 15px 10px 14px;
		font-size: 18px;
	}
	
	#main .qaBox .title p span {
		right: 5px;
	}
	
	#main .qaBox .qaSlider dt {
		margin-bottom: 11px;
		float: none;
		background: none;
	}
	
	#main .qaBox .qaSlider dd {
		padding: 0 0 15px 55px;
		position: relative;
		line-height: 1.8;
	}

	#main .qaBox .qaSlider dd:before {
		width: 19px;  
		height: 32px;
		background: url(../images/style/icon03.gif) no-repeat left top;
		position: absolute;  
		top: 4px;  
		left: 10px;  
	  
		content: "";
	}

#main .styleList .imgBox p {
	font-size: 24px;
}

}

@media all and (min-width: 768px) and (max-width: 1279px)  {
	.mainVisual {
		background: url(../images/style/pad_main_visual_bg.jpg) no-repeat center top;
		background-size: 100% auto;
	}
	
	.pageInner {
		margin-bottom: 80px;
	}
	
	#main .text01 {
		margin: 0 110px 50px;
	}
	
	#main .styleList {
		margin: 0 auto 47px;
		padding: 0;
		width: 541px;
	}
	
	#main .styleList li {
		margin: 0 0 25px;
		width: 541px;
		float: none;
		text-align: left;
	}

	#main .styleList li:last-child {
		margin-bottom: 0;
	}
	
	#main .styleList .style01 {
		margin-bottom: 25px;
	}

	#main .styleList .style02 {
		margin-bottom: 25px;
	}

	#main .styleList .style01 .photo,
	#main .styleList .style02 .photo {
		margin: -17px 0 0;
	}

	#main .styleList .style01 p,
	#main .styleList .style02 p {
		padding-top: 0;
	}
	
	#main .styleList .photo {
		margin: 8px 30px 0 25px;
		float: left;
	}
	
	#main .styleList p {
		padding-top: 15px;
	}
	
	#main .stepBox {
		background: #EEE;
	}
	
	#main .stepBox .subBox {
		padding-top: 60px;
		width: auto;
		background: url(../images/style/pad_img07.jpg) no-repeat right 70px;
	}
	
	#main .stepBox h4 {
		margin: 0 0 82px 120px;
		float: none;
	}
	
	#main .stepBox .stepDl {
		padding-left: 35px;
		float: none;
	}
	
	#main .stepBox .stepDl .photoUl {
		margin-left: -30px;
		padding: 45px 0 0;
	}
	
	#main .qaBox {
		margin-top: 0;
		background: url(../images/style/pad_img08.jpg) no-repeat left top;
		background-size: 100% auto;
	}
	
	#main .qaBox .subBox {
		padding: 55px 0 100px;
		background: none;
	}
	
	#main .qaBox .subQa {
		margin: 0 20px;
		width: auto;
	}
}

@media all and (min-width: 1920px) {
	.mainVisual {
		background: url(../images/style/tv_main_visual_bg.jpg) no-repeat center top;
		background-size: 100% auto;
	}
	
	.pageInner {
		margin-bottom: 154px;
	}
	
	#main .styleList {
		margin-bottom: 106px;
		padding-left: 114px;
		width: 1248px;
	}
	
	#main .styleList li {
		margin-right: 64px;
	}
	
	#main .styleList .style01 {
		margin: 0 90px 108px 0;
	}

	#main .styleList .style02 {
		margin: 0 20px 108px 0;
	}
	
	#main .stepBox {
		padding-bottom: 60px;
		background: #EEE url(../images/style/tv_img07.png) no-repeat right bottom;
	}
	
	#main .stepBox .visualImg {
		padding-top: 46px;
		background: url(../images/style/tv_bg01.gif) repeat-x left top;
	}
	
	#main .stepBox .subBox {
		padding-top: 88px;
	}
	
	#main .qaBox {
		background: url(../images/style/tv_img08.jpg) no-repeat left top;
		background-size: 100% auto;
	}
	
	#main .qaBox .subBox {
		padding: 180px 0;
	}
	
	#main .qaBox .subBox h4 {
		margin-bottom: 82px;
	}
	
	#main .qaBox .subQa {
		width: 1158px;
	}
	
	#main .qaBox .qaSlider dd {
		padding-right: 50px
	}
	
}