@charset "utf-8";
/*------------------------------------------------------------
	トップページ
------------------------------------------------------------*/
#main .innerBox {
	margin: 0 auto;
	width: 752px;
}

#main .sec01 {
	margin: -19px auto 66px;
}

#main .sec01 .topTitle {
	text-align: center;
}

#main .sec01 .topTitle span {
	padding: 20px 0 20px 91px;
	font-size: 20px;
	font-weight: bold;
	letter-spacing: -1px;
	display: inline-block;
	background: url(../img/index/img01.png) no-repeat left 5px top 7px;
	background-size: 78px auto;
}

#main .sec01 .headLine01 img {
	width: 996px;
}

#main .sec01 p {
	line-height: 2.18;
	letter-spacing: -0.6px;
}

#main .sec01 .topTxt {
	margin-bottom: 77px;
}

#main .sec01 .headLine03 {
	margin: 0 -29px 27px;
}

#main .sec01 .imgBox {
	margin-bottom: 31px;
}

#main .sec01 .imgBox .photoBox {
	margin-top: 6px;
	float: right;
	position: relative;
}

#main .sec01 .imgBox .photoBox img {
	width: 223px;
}

#main .sec01 .imgBox .name {
	position: absolute;
	font-size: 13px;
	left: -529px;
	top: -6px;
	font-weight: bold;
	letter-spacing: -0.3px;
}

#main .sec01 .imgBox .name span {
	margin-top: 8px;
	display: block;
	font-size: 20px;
	line-height: 1;
}

#main .sec01 .imgBox .textBox {
	padding-top: 111px;
	width: 482px;
	float: left;
}

#main .sec01 .txtBox {
	margin-bottom: 90px;
}

#main .sec01 .txtBox > p {
	margin: 0 0 30px 40px;
}

#main .sec01 .txtBox > p:last-of-type {
	margin-bottom: 0;
}

#main .sec01 .txtBox .text01 {
	margin-bottom: 44px;
}

#main .sec01 .txtBox .text02 {
	margin-bottom: 36px;
}

#main .sec01 .txtBox .ttl {
	margin: 0 0 5px;
	font-size: 21px;
	font-weight: bold;
	line-height: 1;
}

#main .sec01 .txtBox .bgBox {
	margin: 0 40px 45px;
	padding: 27px 39px 29px;
	border-radius: 20px;
	background-color: #E5EEF7;
}

#main .sec01 .txtBox .bgBox p {
	padding-left: 4.7em;
	text-indent: -4.7em;
	font-size: 14px;
	line-height: 2.42;
}

#main .sec01 .txtBox .text {
	margin-bottom: 26px;
}

#main .sec01 .txtBox .bgBox p span {
	font-weight: bold;
}

#main .sec01 .headLine02 {
	margin-bottom: 0;
}

#main .sec02 {
	margin-bottom: 105px;
}

#main .sec02 .bgBox {
	margin: 0 auto 75px;
	padding: 27px 22px 34px 39px;
	width: 672px;
	box-sizing: border-box;
	border-radius: 20px;
	background-color: #E5EEF7
}

#main .sec02 .bgBox p {
	font-size: 14px;
	line-height: 2.42;
}

#main .sec02 .bgBox .link {
	margin: 18px 10px 0 0;
	text-align: center;
}

#main .sec02 .bgBox .link a {
	padding-bottom: 8px;
	font-size: 14px;
	font-weight: bold;
	border-bottom: 1px solid #000;
}

#main .sec02 .bgBox .link a:hover {
	border-bottom: none;
}

#main .sec02 .photoUl {
	margin-bottom: 51px;
	text-align: center;
}

#main .sec02 .photoUl li {
	margin: 0 44px;
	display: inline-block;
}

#main .sec02 .photoUl li img {
	width: 188px;
}

#main .sec02 .photoUl li div > span {
	display: block;
}

#main .sec02 .photoUl li div .photo {
	margin-bottom: 26px;
}

#main .sec02 .photoUl li div .name {
	font-size: 14px;
}

#main .sec02 .photoUl li div .name > span {
	margin-bottom: 4px;
	display: block;
	font-size: 18px;
	line-height: 1;
}

#main .sec02 .photoUl li div .name span span {
	font-weight: bold;
	font-size: 21px;
}

#main .sec02 .comImgBox {
	margin-bottom: 0;
	width: 300px;
}

#main .sec02 .comImgBox .photoBox {
	padding-left: 19px;
	width: 145px;
}

#main .sec02 .comImgBox .photoBox img {
	width: 145px;
}

#main .sec02 .comImgBox .textBox {
	width: 98px;
}

#main .sec03 {
	margin-bottom: 92px;
}

#main .sec03 .innerBox {
	margin-bottom: 92px;
}

#main .sec03 .headLine03 {
	margin: 0 -29px 40px;
}

#main .sec03 .h3Ttl {
	margin: 0 -70px 39px -29px;
	letter-spacing: -1.4px;
}

#main .sec03 .comDl {
	width: auto;
}

#main .sec03 .comDl dd {
	letter-spacing: -0.6px;
}

#main .sec03 .txtBox {
	margin-bottom: 106px;
	position: relative;
}

#main .sec03 .txtBox:before {
	width: 91px;
	height: 594px;
	position: absolute;
	right: -111px;
	top: 141px;
	background: url(../img/common/com_bg01.png) no-repeat;
	background-size: 91px auto;
	content: "";
}

#main .sec03 .txtBox .comDl {
	margin-bottom: 24px;
}

#main .sec03 .txtBox .ddStyle01 {
	padding: 0 0 35px 11.6em;
}

#main .sec03 .txtBox .photo {
	text-align: center;
}

#main .sec03 .txtBox .photo img {
	width: 468px;
}

#main .sec03 .txtBoxR {
	margin-bottom: 62px;
	position: relative;
}

#main .sec03 .txtBoxR:before {
	width: 91px;
	height: 594px;
	position: absolute;
	left: -109px;
	top: 223px;
	background: url(../img/common/com_bg01.png) no-repeat;
	background-size: 91px auto;
	content: "";
}

#main .sec03 .txtBoxR .comDl dd {
	padding-left: 5em;
}

#main .sec03 .txtBoxR .comDl .ddStyle01 {
	padding-left: 11em;
}

#main .sec03 .txtBoxR .comDl img {
	margin: 27px 0 30px 54px;
	float: right;
	width: 253px;
}

#main .sec03 .txtBoxL {
	margin-bottom: 107px;
	position: relative;
}

#main .sec03 .txtBoxL:before {
	width: 91px;
	height: 594px;
	position: absolute;
	right: -111px;
	top: 171px;
	background: url(../img/common/com_bg01.png) no-repeat;
	background-size: 91px auto;
	content: "";
}

#main .sec03 .txtBoxL p {
	line-height: 2.19;
}

#main .sec03 .txtBoxL .imgBox .photoBox {
	margin: 0 48px 30px 0;
	float: left;
}

#main .sec03 .txtBoxL .photoBox img {
	margin-top: -6px;
	width: 253px;
}

#main .sec03 .txtBoxL .imgBox .textBox p span {
	font-weight: bold;
}

#main .sec03 .txtBoxL .imgBox .textBox .text {
	padding: 35px 0 0 21.9em;
	text-indent: -3em;
	letter-spacing: -0.5px;
}

#main .sec03 .txtBox01 {
	margin-bottom: 99px;
}

#main .sec03 .txtBox02 {
	margin-bottom: 0;
}

#main .sec03 .txtBox02:before {
	top: 181px;
}

#main .sec03 .txtBox02 .comDl img {
	margin: 28px 0 30px 42px;
}

#main .sec03 .txtBox02 .comDl .ddStyle02 {
	padding-bottom: 69px;
}

#main .comLink li {
	margin: 0 auto;
	float: none;
	width: 406px;
}

#main .comLink li a {
	padding: 18px 0;
	background: url(../img/common/icon07.png) no-repeat right 14px center #E8E8E8;
}

#main .comLink li a .nest {
	width: 100px;
}

#main .pageNavi li:first-child a {
	border-left: 1px solid #cfcfcf;
}

#main .pageNavi li:nth-child(2) a {
	border-left: none;
}

@media screen and (max-width: 767px) {
	#main .innerBox {
		width: auto;
	}
	
	#main .sec01 .topTitle {
		text-align: center;
	}
	
	#main .sec01 .topTitle span {
		padding: 2px 0 13px 59px;
		font-size: 14px;
		letter-spacing: -1px;
		text-align: left;
		line-height: 1.57;
		background: url(../img/index/img01.png) no-repeat left top 7px;
		background-size: 39px auto;
	}
	
	#main .sec01 .topTitle .sp {
		display: inline-block !important;
	}

	#main .sec01 .headLine01 {
		margin-bottom: 28px;
	}
	
	#main .sec01 .headLine01 img {
		width: 340px;
	}
	
	#main .sec01 {
		margin: 9px 15px 42px;
		width: auto;
	}
	
	#main .sec01 p {
		line-height: 1.66;
		letter-spacing: -0.6px;
		font-size: 15px;
	}
	
	#main .sec01 .topTxt {
		margin: 0 0 43px;
	}
	
	#main .sec01 .headLine03 {
		margin: 0 -4px 32px;
		padding-bottom: 6px;
	}
	
	#main .sec01 .imgBox {
		margin-bottom: 24px;
	}
	
	#main .sec01 .imgBox .photoBox {
		margin: 0 9px 36px 3px;
		float: none;
		text-align: right;
	}
	
	#main .sec01 .imgBox .photoBox img {
		width: 45.5%;
	}
	
	#main .sec01 .imgBox .name {
		font-size: 10px;
		top: inherit;
		left: 0;
		bottom: 0;
		width: 47%;
		line-height: 1.5;
	}
	
	#main .sec01 .imgBox .name span {
		font-size: 15px;
	}
	
	#main .sec01 .imgBox .textBox {
		padding-top: 0;
		float: none;
		width: auto;
	}
	
	#main .sec01 .txtBox {
		margin-bottom: 42px;
	}
	
	#main .sec01 .txtBox > p {
		margin: 0 0 34px 30px;
	}
	
	#main .sec01 .txtBox > p:last-of-type {
		margin-bottom: 0;
	}
	
	#main .sec01 .txtBox .text01 {
		margin-bottom: 24px;
	}
	
	#main .sec01 .txtBox .text02 {
		margin-bottom: 25px;
	}
	
	#main .sec01 .txtBox .ttl {
		margin: 0 0 1px;
		padding-left: 2em;
		font-size: 15px;
		line-height: 1.53;
		text-indent: -2em;
	}
		
	#main .sec01 .txtBox .bgBox {
		margin: 0 0 38px;
		padding: 16px 14px;
		border-radius: 8px;
	}
	
	#main .sec01 .txtBox .bgBox p {
		margin-top: 4px;
		padding-left: 0;
		text-indent: inherit;
		font-size: 12.5px;
		line-height: 1.84;
		letter-spacing: -0.7px;
	}
	
	#main .sec01 .txtBox .bgBox p:first-child {
		margin-top: 0;
	}
	
	#main .sec01 .txtBox .text {
		margin-bottom: 26px;
	}

	#main .sec01 .headLine02 {
		margin: 0 -15px 30px;
	}
	
	#main .sec02 {
		margin: 0 15px 48px; 
	}
	
	#main .sec02 .innerBox {
		margin-bottom: 86px;
	}
	
	#main .sec02 .bgBox {
		margin: 0 auto 41px;
		padding: 15px 13px 22px 15px;
		width: auto;
		border-radius: 8px;
	}
	
	#main .sec02 .bgBox p {
		font-size: 12.5px;
		line-height: 1.84;
		letter-spacing: -0.4px;
	}
	
	#main .sec02 .bgBox .link {
		margin: 13px 6px 0 0;
	}
	
	#main .sec02 .bgBox .link a {
		padding-bottom: 5px;
		letter-spacing: -0.4px;
	}
	
	#main .sec02 .bgBox .link a:hover {
		border-bottom: 1px solid #000;
	}
	
	#main .sec02 .photoUl {
		margin: 0 auto 6px;
		width: 293px;
	}
	
	#main .sec02 .photoUl li {
		margin: 0 0 15px;
		display: table;
		width: 100%;
	}
	
	#main .sec02 .photoUl li img {
		width: 127px;
	}
	
	#main .sec02 .photoUl li div > span {
		display: table-cell;
		vertical-align: middle;
		text-align: center;
	}
	
	#main .sec02 .photoUl li div .photo {
		margin-bottom: 0;
		width: 30%;
	}
	
	#main .sec02 .photoUl li div .name {
		padding: 6px 0 0 19px;
		font-size: 11px;
		width: 60%;
	}
	
	#main .sec02 .photoUl li div .name > span {
		margin-bottom: 5px;
		font-size: 11px;
	}
	
	#main .sec02 .photoUl li div .name span span {
		font-size: 15px;
	}
	
	#main .sec02 .comImgBox {
		width: 229px;
	}
	
	#main .sec02 .comImgBox .photoBox {
		padding-left: 19px;
		width: 50%;
	}
	
	#main .sec02 .comImgBox .photoBox img {
		width: 95px;
	}
	
	#main .sec02 .comImgBox .textBox {
		width: 50%;
	}
	
	#main .sec03 {
		margin: 0 12px 92px;
	}
	
	#main .sec03 .headLine03 {
		margin: 0 0 28px;
		padding: 8px 0 6px 8px
	}
	
	#main .sec03 .h3Ttl {
		margin: 0 0 24px;
		letter-spacing: -1.4px;
	}
	
	#main .sec03 .comDl {
		width: auto;
	}
	
	#main .sec03 .txtBox {
		margin-bottom: 46px;
	}
	
	#main .sec03 .txtBox:before {
		display: none;
	}
	
	#main .sec03 .txtBox .comDl {
		margin-bottom: 0;
	}
	
	#main .sec03 .txtBox .photo {
		margin: -2px 18px 0;
		text-align: center;
	}
	
	#main .sec03 .txtBox .photo img {
		width: 100%;
	}
	
	#main .sec03 .txtBoxR {
		margin-bottom: 47px;
	}
	
	#main .sec03 .txtBoxR:before {
		display: none;
	}
	
	#main .sec03 .txtBoxR .comDl img {
		display: none;
	}
	
	#main .sec03 .txtBoxR .comDl dd {
		letter-spacing: -1.1px;
	}
	
	#main .sec03 .txtBoxR .photo {
		margin: 0 83px;
	}
	
	#main .sec03 .txtBoxR .photo img {
		margin: 0 auto;
		width: 100%;
	}
	
	#main .sec03 .txtBoxL {
		margin-bottom: 107px;
		position: relative;
	}
	
	#main .sec03 .txtBoxL:before {
		display: none;
	}
	
	#main .sec03 .txtBoxL .comDl dd {
		letter-spacing: -1.5px;
	}
	
	#main .sec03 .txtBoxL p {
		line-height: 1.67;
		font-size: 15px;
	}
	
	#main .sec03 .txtBoxL .imgBox .textBox .text {
		padding: 28px 0 0 0;
		text-indent: inherit;
	}
	
	#main .sec03 .txtBoxL .imgBox .textBox p span {
		margin-right: 14px;
	}
	
	#main .sec03 .txtBoxL .photo {
		margin: 25px 83px;
	}
	
	#main .sec03 .txtBoxL .photo img {
		margin: 25px auto;
		width: 100%;
	}
	
	#main .sec03 .txtBoxL .comDl .ddStyle01 {
		padding-left: 0;
	}
	
	#main .sec03 .txtBox01 {
		margin-bottom: 48px;
	}
	
	#main .sec03 .txtBox02 {
		margin-bottom: 0;
	}
	
	#main .sec03 .txtBox02 .comDl img {
		display: none;
	}
	
	#main .sec03 .txtBox02 .comDl .ddStyle02 {
		padding-bottom: 49px !important;
	}
		
	#main .comLink li a {
		padding: 12px 0 12px 20px;
		text-align: left;
		background: url(../img/common/icon07.png) no-repeat right 14px center #E8E8E8;
	}
	
	#main .comLink li a .nest {
		width: 87px;
	}
}

@media screen and (max-width: 370px) {
	#main .sec01 .headLine01 img {
		width: 280px;
	}	
	
	#main .sec03 .txtBox .photo img {
		width: 95%;
	}
}

@media all and (-ms-high-contrast:none){
	#main .comLink li a {
		padding: 20px 0 16px;
	}
}