@charset "utf-8";
/*------------------------------------------------------------
	トープページ
------------------------------------------------------------*/
#gNavi .navi01 a {
	border-bottom: 2px solid #fff;
}

#gHeader {
	background: none;
}

.mainVisual {
	position: relative;
	margin: 0 auto;
	padding-bottom: 60px;
	width: 1300px;
	background: url(../img/index/bg01.gif) no-repeat right 20px bottom;
	background-size: 420px auto;
}

.mainVisual .subBox {
	position: absolute;
	text-align: center;
	top: 50%;
	width: 100%;
	margin-top: -75px;
}

.mainVisual .subBox .title {
	font-size: 46px;
	padding-left: 17px;
	color: #fff;
	line-height: 1.25;
	font-weight: bold;
	letter-spacing: -4px;
}

.mainVisual .subBox .textP {
	width: 638px;
	margin: 0 auto;
	font-size: 14px;
	font-weight: bold;
	color: #fff;
	position: relative;
}

.mainVisual .subBox .textP:before {
	width: 170px;
	height: 1px;
	background-color: #D4D7DC;
	position: absolute;
	content: "";
	left: 0px;
	top: 11px;
}

.mainVisual .subBox .textP:after {
	width: 170px;
	height: 1px;
	background-color: #D4D7DC;
	position: absolute;
	content: "";
	right: 0px;
	top: 11px;
}

#main .contentBox {
	width: 1152px;
}

#main h1 {
	text-align: center;
}

#main .inner {
	margin: -29px 0 60px;
	position: relative;
}

#main .inner .photoBox {
	float: left;
}

#main .inner .photoBox img {
	width: 640px;
}

#main .inner .textBox {
	margin: 76px 0 0 -150px;
	padding: 45px 30px 28px 40px;
	float: right;
	width: 618px;
	background: url(../img/index/bg02.png) repeat left top;
	box-sizing: border-box;
	box-shadow: 2px 0 5px #E2E6EF;
}

#main .inner .textBox h2 {
	margin-bottom: 38px;
	font-size: 14px;
	color: #666;
}

#main .inner .textBox h2 img {
	margin-right: 16px;
	vertical-align: middle;
}

#main .inner01 .textBox h2 {
	margin: 5px 0 38px -2px;
}

#main .inner01 .textBox h2 img {
	margin-top: -4px;
}

#main .inner .textBox p {
	color: #333;
}

#main .inner .textBox .top {
	margin-bottom: 16px;
	font-size: 26px;
	font-weight: bold;
	line-height: 1.3;
}

#main .inner .textBox .comBtn {
	margin-top: -10px;
	float: right;
}

#main .inner01 {
	margin: 0 0 105px;
}

#main .inner01 .textBox {
	margin: 75px -150px 0 0;
	float: left;
	box-shadow: -2px 0 5px #E2E6EF;
}

#main .inner01 .photoBox {
	float: right;
}

#main .inner01 .textBox .comBtn {
	margin: 23px 0 0;
}

#main .btmBox .subBox {
	float: left;
	position: relative;
	width: 50%;
	box-sizing: border-box;
}

#main .btmBox .subBox img {
	width: 100%;
}

#main .btmBox .subBox .info {
	margin: -130px 0 0 -225px;
	position: absolute;
	top: 50%;
	left: 50%;
	width: 450px;
	height: 260px;
	box-sizing: border-box;
	text-align: center;
	background: url(../img/index/bg02.png) repeat left top;
}

#main .btmBox .subBox .infoInner {
	display: table;
	width: 100%;
	height: 100%;
}

#main .btmBox .subBox .infoSub {
	display: table-cell;
	vertical-align: middle;
}

#main .btmBox .subBox p {
	margin-bottom: 25px;
	color: #333;
}

#main .btmBox .subBox h3 {
	font-family: "RobotoCondensed-Bold";
	font-size: 50px;
	color: #003392;
	line-height: 1.3;
}

#main .bgBox {
	margin: 0 auto 80px;
	width: 1080px;
	padding-bottom: 40px;
	background: url(../img/index/bg03.gif) no-repeat right bottom;
	background-size: 260px auto;
}

#main .bgBox .comBox {
	margin-bottom: 0;
}

@media all and (min-width: 0) and (max-width: 767px) {
	.mainVisual {
		margin-top: 60px;
		padding-bottom: 65px;
		width: auto;
		background: url(../img/index/sp_bg01.gif) no-repeat right bottom;
		background-size: 195px auto;
	}
	
	.mainVisual img {
		width: 100%;
	}
	
	.mainVisual .subBox .title {
		margin: 0 auto 5px;
		padding: 0;
		width: 332px;
		font-size: 35px;
		text-align: left;
		line-height: 1.2;
		letter-spacing: 1px;
	}
	
	.mainVisual .subBox .textP {
		margin: 0 auto;
		font-size: 14px;
		width: 298px;
	}
	
	.mainVisual .subBox .textP:before {
		top: 10px;
		left: 0px;
		height: 2px;
		margin-left: -14px;
		width: 28px;
	}
	
	.mainVisual .subBox {
		margin-top: -90px;
	}
	
	.mainVisual .subBox .textP:after {
		right: 0px;
		top: 10px;
		height: 2px;
		margin-right: -14px;
		width: 28px;
	}
	
	#main .contentBox {
		width: auto;
	}
	
	#main h1 img {
		margin-top: -45px;
		width: 100%;
		height: auto;
		position: relative;
	}
	
	#main .inner {
		margin: -7px 15px 10px;
	}
	
	#main .inner .photoBox {
		float: none;
		width: auto;
	}
	
	#main .inner .photoBox img {
		width: 100%;
	}
	
	#main .inner .textBox {
		margin: -140px 0px 0 0;
		padding: 22px 10px 15px 17px;
		width: 90%;
		float: right;
		position: relative;
		box-shadow: 0 0 0 #fff;
	}
	
	#main .inner01 .textBox {
		margin-top: -116px;
	}
	
	#main .inner .textBox h2 {
		margin-bottom: 13px;
	}
	
	#main .inner .textBox h2 .sp {
		margin-right: 8px;
		display: inline-block !important;
	}
	
	#main .inner .textBox p {
		font-size: 14px;
	}
	
	#main .inner .textBox .top {
		margin-bottom: 10px;
		font-size: 16px;
		line-height: 1.5;
	}
	
	#main .inner .textBox .comBtn {
		display: none;
	}
	
	#main .spComBtn01 {
		margin: 0 15px 27px 20px !important;
	}
	
	#main .bgBox {
		margin-bottom: 0;
		padding: 0;
		width: auto;
		background: none;
	}
	
	#main .bgBox .comBox {
		margin-bottom: 10px;
	}
	
	#main .btmBox {
		margin: 0 15px 25px;
		background: url(../img/index/sp_bg02.gif) no-repeat center center;
		background-size: 130px auto;
	}
	
	#main .btmBox .subBox {
		width: 100%;
		min-height: 212px;
	}
	
	#main .btmBox .subBox:first-child {
		margin-bottom: 30px;
	}
	
	#main .btmBox .subBox .infoInner {
		display: block;
	}
	
	#main .btmBox .subBox .info {
		margin: 0 0 0 -32.5%;
		padding: 18px 0 14px;
		width: 65%;
		height: auto;
		top: 15%;
		text-align: center;
		box-shadow: 1px 0 2px #CCC;
	}
	
	#main .btmBox .subBox .infoSub {
		display: block;
	}
		
	#main .btmBox .subBox .comBtn {
		display: none;
	}
	
	#main .btmBox .subBox h3 {
		margin-bottom: 6px;
		font-size: 40px;
	}
	
	#main .btmBox .subBox p {
		margin: 0;
		font-size: 16px;
	}
	
	#main .btmBox .subBox .addText01 {
		margin: -5px 0;
		font-size: 16px;
		line-height: 1.2;
	}
	
	#main .btmBox .spComBtn {
		margin: 0;
		left: 3%;
		position: absolute;
		bottom: 5%;
		width: 94%;
	}
	
	#main .spComBtn {
		margin-bottom: 40px;
	}
}

@media all and (min-width: 0) and (max-width: 374px) {
	#main .btmBox .subBox {
		min-height: inherit;
	}
	
	#main .btmBox .subBox p {
		letter-spacing: -1px;
	}
	
	#main .btmBox .subBox .addText01 {
		margin: -8px 0 -5px;
	}
	
	#main .btmBox .subBox .info {
		padding: 10px 0;
		top: 8%;
	}
	
	#main .btmBox .spComBtn {
		bottom: 5%;
	}
	
	#main .inner .textBox .top {
		letter-spacing: -1.5px;
	}
	
	.mainVisual .subBox .textP {
		width: 270px;
		font-size: 13px;
	}
	
	.mainVisual .subBox .title {
		width: 306px;
	}
}

@media all and (-ms-high-contrast:none){
	.mainVisual .subBox .textP:before {
		top: 8px;
	}
	
	.mainVisual .subBox .textP:after {
		top: 8px;
	}
}  

