@charset "utf-8";
/*------------------------------------------------------------
	トープページ
------------------------------------------------------------*/
#main .mainVisual {
	margin: 0 auto 49px;
	width: 1105px;
}

#main .mainVisual .phoList li {
	text-align: center;
}

#main .mainVisual .phoList li img {
	width: 100%;
}

#main .sec01 {
	margin-bottom: 84px;
}

#main .sec01 .inner {
	margin-bottom: 61px;
	padding: 48px 10px 53px 43px;
	background-color: #EFEFEF;
}

#main .sec01 .textList {
	margin: 0 86px 70px 91px;
}

#main .sec01 .textList li {
	margin-bottom: 33px;
	padding: 0 5px 29px 34px;
	font-size: 25px;
	line-height: 1.62;
	letter-spacing: -1.5px;
	border-bottom: 1px dashed #000;
}

#main .sec01 .textList li:last-child {
	margin-bottom: 0;
	padding: 0 10px 0 27px;
	border-bottom: none;
}

#main .sec01 .imgList li {
	padding-bottom: 15px;
	width: 286px;
	float: left;
	color: #FFF;
	font-size: 20px;
	font-weight: bold;
	line-height: 1.35;
}

#main .sec01 .imgList li:nth-child(3n-1) {
	margin: 0 32px 0 23px;
}

#main .sec01 .imgList li .photo {
	margin-bottom: 14px;
	text-align: center;
}

#main .sec01 .imgList li img {
	width: 100%;
}

#main .sec01 .imgList li p {
	margin: 0 5px 0 15px;
}

#main .sec01 h3 {
	margin-bottom: 47px;
	text-align: center;
}

#main .sec01 .phoList {
	margin: -5px 24px 0 29px;
}

#main .sec01 .phoList li {
	margin: 5px 5px 0 0;
	width: 180px;
	float: left;
	background-position: center center;
	background-size: cover;
}

#main .sec01 .phoList li a {
	display: block;
	width: 100%;
	padding-bottom: 100%;
}

#main .sec02 {
	margin-bottom: 94px;
	padding: 45px 39px 67px 32px;
	background-color: #EFEFEF;
}

#main .sec02 .ttlBox {
	margin-bottom: 45px;
	padding: 0 0 55px 18px;
	border-bottom: 1px solid #000;
}

#main .sec02 .ttlBox .photoBox {
	float: left;
}

#main .sec02 .ttlBox .textBox {
	margin-top: 55px;
	width: 625px;
	float: right;
}

#main .sec02 .ttlBox .textBox h2 {
    margin-bottom: 5px;
    color: #008dad;
    font-size: 33px;
}

#main .sec02 .ttlBox .textBox p {
	margin-left: 9px;
	font-size: 24px;
	font-weight: bold;
	letter-spacing: -1px;
}

#main .sec02 .ttlBox .textBox p a {
	margin-left: 5px;
	display: inline-block;
	font-size: 20px;
}

#main .sec02 .textArea {
	margin-bottom: 32px;
	padding: 0 0 40px 25px;
	border-bottom: 1px dashed #000;
}

#main .sec02 .textArea:last-child {
	margin-bottom: 0;
	padding-bottom: 0;
	border-bottom: none;
}

#main .sec02 .textArea h3 {
    margin-bottom: 8px;
    padding-left: 28px;
    color: #008dad;
    font-size: 30px;
    background: url(../img/common/icon01.png) no-repeat left center;
}

#main .sec02 .textArea p {
	margin: 0 3px;
	font-size: 15px;
	line-height: 2.04;
}

#main .sec02 .textArea .text {
	margin: 14px 0 12px;
	font-size: 20px;
}

#main .sec03 {
	margin-bottom: 112px;
}

#main .sec03 h2 {
	margin-bottom: 89px;
	padding-bottom: 38px;
	border-bottom: 1px solid #000;
}

#main .sec03 .imgList {
	margin-bottom: 95px;
}

#main .sec03 .imgList li {
	width: 286px;
	float: left;
	font-size: 20px;
	line-height: 2.05;
}

#main .sec03 .imgList li:nth-child(3n-1) {
	margin: 0 56px 0 64px;
}

#main .sec03 .imgList li .photoBox {
	margin-bottom: 22px;
	width: 100%;
	min-height: 272px;
	display: table;
}

#main .sec03 .imgList li .photoBox span {
	padding: 15px;
	display: table-cell;
	text-align: center;
	vertical-align: middle;
	background-color: #EFEFEF;
	box-sizing: border-box;
}

#main .sec03 .phoList01 {
	margin-bottom: 131px;
}

#main .sec03 .phoList01 li {
	margin-bottom: 76px;
}

#main .sec03 .phoList01 li:last-child {
	margin-bottom: 0;
}

#main .sec03 p {
	margin: 0 100px 41px 106px;
	font-size: 20px;
	line-height: 2.05;
}

#main .sec03 .text {
	margin-bottom: 49px;
}

#main .sec03 h3 {
	margin-bottom: 43px;
	color: #1D2088;
	font-size: 20px;
	text-align: center;
}

#main .sec03 .phoList02 li {
	float: left;
}

#main .sec03 .phoList02 li:nth-child(3n-1) {
	margin: 0 61px 0 59px;
}

#main .sec04 {
	margin-bottom: 100px;
	padding: 68px 0 46px;
	background-color: #EFEFEF;
}

#main .sec04 h2 {
	margin-bottom: 71px;
}

#main .sec04 .tableBox {
	margin: 0 101px 87px 109px;
}

#main .sec04 table {
	width: 100%;
	border-collapse: collapse;
}

#main .sec04 th,
#main .sec04 td {
	padding: 8px 30px 7px;
	width: 78%;
	vertical-align: middle;
	text-align: left;
	font-size: 15px;
	line-height: 2.25;
	border: 1px solid #000;
	background-color: #FFF;
	word-break: break-all;
}

#main .sec04 th {
	padding: 8px 10px 7px;
	width: 22%;
	font-weight: normal;
	text-align: center;
	background-color: #ddeff4;
}

#main .sec04 td a {
	color: #000;
}

#main .sec04 td span a:hover {
	text-decoration: none;
}

#main .sec04 .map iframe {
	width: 978px;
	height: 530px;
	vertical-align: top;
}

#main .sec05 h2 {
	margin-bottom: 29px;
	padding: 9px 10px 16px;
	color: #FFF;
	font-size: 33px;
	text-align: center;
	background-color: #70bfd0;
}

#main .sec05 .formBox {
	margin: 0 93px;
}

#main .sec05 .formBox p {
	margin-bottom: 42px;
	font-size: 16px;
	line-height: 1.75;
}

#main .sec05 .formBox .mailForm {
	padding: 0 3px;
}

#main .sec05 .formBox table {
	width: 100%;
	border-collapse: collapse;
}

#main .sec05 .formBox th,
#main .sec05 .formBox td {
	padding: 9px;
	width: 86%;
	vertical-align: middle;
	text-align: left;
	font-size: 17px;
	line-height: 1.75;
	border: 1px solid #666;
	word-break: break-all;
}

#main .sec05 .formBox th {
	width: 14%;
	text-align: center;
	font-weight: normal;
}

#main .sec05 .formBox td input[type="text"],
#main .sec05 .formBox td input[type="tel"],
#main .sec05 .formBox td input[type="email"],
#main .sec05 .formBox td input,
#main .sec05 .formBox td textarea {
	padding: 3px 10px;
	width: 593px;
	height: 26px;
	font-size: 17px;
	box-sizing:border-box;
	border: 1px solid #9FA0A0;
	border-radius: 0;
	-webkit-appearance: none;
}

#main .sec05 .formBox td span {
	margin-left: 13px;
}

#main .sec05 .formBox td textarea {
	margin: 0;
	width: 523px;
	height: 187px;
}

#main .sec05 .formBox td .submit {
	margin-bottom: 3px;
	text-align: center;
}

#main .sec05 .formBox td .submit li {
	margin: 0 13px;
	display: inline-block;
}

#main .sec05 .formBox td .submit li input {
	padding: 2px 23px 0;
	width: auto;
	cursor: pointer;
	font-size: 14px;
	font-weight: bold;
	line-height: 1.4;
	background-color: #FFF;
	border: 1px solid #BCBCBC;
	border-radius: 5px;
	-webkit-appearance: none;
}

#main .sec05 .formBox td .submit li input:hover {
	filter: alpha(opacity=70);
	opacity: 0.7;	
}

@media all and (-ms-high-contrast:none){
	#main .sec01 .imgList li .photo {
		margin-bottom: 17px;
	}
	
	#main .sec01 .imgList li {
		padding-bottom: 12px;
	}

	#main .sec02 .textArea h3 {
		background-position: left 4px;
	}
	
	#main .sec05 h2 {
		padding: 13px 10px 11px;
	}
		
	#main .sec05 .formBox th {
		padding: 10px 10px 8px;
	}
		
	#main .sec05 .formBox td {
		padding: 11px 10px 7px;
	}
	
	#main .sec05 .formBox td .submit li input {
		padding: 4px 24px 0;
		line-height: 1.3;
	}
}

@media all and (min-width: 0) and (max-width: 767px) {
	/*------------------------------------------------------------
		トープページ
	------------------------------------------------------------*/
	#main .mainVisual {
		margin-bottom: 30px;
		width: auto;
	}
	
	#main .sec01 {
		margin-bottom: 30px;
	}
	
	#main .sec01 .headLine01 img {
		width: 350px;
	}

	#main .sec01 .inner {
		margin-bottom: 30px;
		padding: 20px 15px;
	}
	
	#main .sec01 .textList {
		margin: 0 0 20px;
	}
	
	#main .sec01 .textList li {
		margin-bottom: 15px;
		padding: 0 10px 15px;
		font-size: 14px;
		letter-spacing: 0;
	}
	
	#main .sec01 .textList li:last-child {
		padding: 0 10px;
	}
	
	#main .sec01 .imgList {
		margin-top: -15px;
	}
	
	#main .sec01 .imgList li {
		margin-top: 15px;
		padding-bottom: 10px;
		width: 49%;
		font-size: 14px;
	}
	
	#main .sec01 .imgList li:nth-child(3n-1) {
		margin: 15px 0 0;
	}
	
	#main .sec01 .imgList li:nth-child(2n) {
		float: right;
	}

	#main .sec01 .imgList li p {
		margin: 0 10px;
	}
	
	#main .sec01 h3 {
		margin-bottom: 20px;
	}
	
	#main .sec01 h3 img {
		width: 116px;
	}

	#main .sec01 .phoList {
		margin: -10px 0 0;
	}
	
	#main .sec01 .phoList li {
		margin: 10px 0 0;
		width: 49%;
		float: left;
		text-align: center;
	}
	
	#main .sec01 .phoList li:nth-child(2n) {
		float: right;
	}
	
	#main .sec02 {
		margin-bottom: 30px;
		padding: 20px 15px;
	}
	
	#main .sec02 .ttlBox {
		margin-bottom: 15px;
		padding: 0 0 10px;
	}
	
	#main .sec02 .ttlBox .photoBox {
		float: none;
		text-align: center;
	}
	
	#main .sec02 .ttlBox .textBox {
		margin-top: 15px;
		width: auto;
		float: none;
	}
	
	#main .sec02 .ttlBox .textBox h2 {
		font-size: 18px;
		text-align: center;
	}

	#main .sec02 .ttlBox .textBox p {
		font-size: 14px;
		letter-spacing: 0;
	}
	
	#main .sec02 .ttlBox .textBox p a {
		margin-left: 0;
		display: block;
		font-size: 14px;
	}

	#main .sec02 a:hover {
		text-decoration: none;
	}
	
	#main .sec02 .textArea {
		margin-bottom: 15px;
		padding: 0 0 10px;
	}
	
	#main .sec02 .textArea h3 {
		margin-bottom: 5px;
		padding-left: 16px;
		font-size: 16px;
		background-size: 13px 14px;
	}

	#main .sec02 .textArea p {
		font-size: 12px;
	}

	#main .sec02 .textArea .text {
		margin: 5px 0;
		font-size: 14px;
	}
	
	#main .sec03 {
		margin-bottom: 30px;
	}
	
	#main .sec03 h2 {
		margin-bottom: 20px;
		padding-bottom: 10px;
	}
		
	#main .sec03 .imgList {
		margin-bottom: 30px;
	}
	
	#main .sec03 .imgList li {
		width: auto;
		float: none;
		font-size: 14px;
	}
	
	#main .sec03 .imgList li:nth-child(3n-1) {
		margin: 15px 0;
	}
	
	#main .sec03 .imgList li .photoBox {
		margin-bottom: 10px;
	}
	
	#main .sec03 .imgList li .photoBox span img {
		max-width: 100%;
	}
	
	#main .sec03 .phoList01 {
		margin-bottom: 20px;
	}
	
	#main .sec03 .phoList01 li {
		margin-bottom: 15px;
	}
	
	#main .sec03 .phoList01 li img {
		max-width: 100%;
	}
	
	#main .sec03 p {
		margin: 0 0 10px;
		font-size: 14px;
	}
	
	#main .sec03 .text {
		margin-bottom: 15px;
	}
	
	#main .sec03 h3 {
		margin-bottom: 15px;
		font-size: 16px;
	}
	
	#main .sec03 .phoList02 {
		margin-top: -10px;
	}
	
	#main .sec03 .phoList02 li {
		text-align: center;
		width: 49%;
		margin-top: 10px;
	}
		
	#main .sec03 .phoList02 li:nth-child(3n-1) {
		margin: 10px 0 0;
	}
		
	#main .sec03 .phoList02 li:nth-child(2n) {
		float: right;
	}
	
	#main .sec03 .phoList02 li img {
		max-width: 100%;
	}
	
	#main .sec04 {
		margin-bottom: 30px;
		padding: 20px 0;
	}
	
	#main .sec04 h2 {
		margin-bottom: 15px;
	}
	
	#main .sec04 .tableBox {
		margin: 0 10px 20px;
	}
	
	#main .sec04 table {
		border-top: 1px solid #000;
	}
	
	#main .sec04 th,
	#main .sec04 td {
		padding: 5px 15px;
		width: 100%;
		display: block;
		font-size: 13px;
		box-sizing: border-box;
		border-top: none;
	}
	
	#main .sec04 th {
		text-align: left;
	}
	
	#main .sec04 td a:hover {
		text-decoration: none;
	}
	
	#main .sec04 .map iframe {
		width: 100%;
		height: 270px;
	}
	
	#main .sec05 h2 {
		margin-bottom: 20px;
		padding: 5px 10px;
		font-size: 18px;
	}
	
	#main .sec05 .formBox {
		margin: 0;
	}
		
	#main .sec05 .formBox p {
		margin-bottom: 15px;
		font-size: 14px;
	}
	
	#main .sec05 .formBox .mailForm {
		padding: 0;
	}
	
	#main .sec05 table {
		border-top: 1px solid #666;
	}
	
	#main .sec05 .formBox th,
	#main .sec05 .formBox td {
		padding: 5px 10px;
		width: 100%;
		min-height: 40px;
		display: block;
		font-size: 14px;
		border-top: none;
		box-sizing: border-box;
	}
	
	#main .sec05 .formBox th {
		padding: 8px 10px 3px;
		text-align: left;
	}
		
	#main .sec05 .formBox td input[type="text"],
	#main .sec05 .formBox td input[type="tel"],
	#main .sec05 .formBox td input[type="email"],
	#main .sec05 .formBox td textarea,
	#main .sec05 .formBox td input {
		width: 85%;
		font-size: 14px;
	}
	
	#main .sec05 .formBox td input[type="tel"],
	#main .sec05 .formBox td input[type="email"],
	#main .sec05 .formBox td textarea {
		width: 100%;
	}
	
	#main .sec05 .formBox td span {
		margin-left: 10px;
	}
	
	#main .sec05 .formBox td textarea {
		height: 120px;
	}
	
	#main .sec05 .formBox td .submit {
		margin: 2px 0 0;
	}
	
	#main .sec05 .formBox td .submit li {
		margin: 0 5px;
	}
	
	#main .sec05 .formBox td .submit li input {
		padding: 1px 23px 0;
		width: auto;
	}

	#main .sec05 .formBox td .submit li input:hover {
		filter: alpha(opacity=100);
		opacity: 1;	
	}
}
