@charset "utf-8";

/*------------------------------------------------------------
	index
------------------------------------------------------------*/
#main {
	padding-top: 38px;
	max-width: 960px;
}

#main .headLine01 {
	margin-bottom: 60px;
	font-size: 4rem;
}

#main .comBorTxt {
	margin: 0 0 60px;
	padding: 55px 15px 55px 20px;
}

#main p {
	margin: 0 -15px 32px 0;
	line-height: 1.6;
}

#main p.pmarktxt {
	padding-left: 1em;
	text-indent: -1em;
}

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

#main h3 {
	margin-bottom: 14px;
	text-indent: -1em;
	padding-left: 1em;
	font-size: 2.4rem;
	line-height: 1.3;
}

#main .h3Ttl01 {
	margin-bottom: 24px;
}

#main h4 {
	margin-bottom: 9px;
}

#main .inner {
	margin: 0 27px 70px;
}

#main .inner p {
	margin-bottom: 25px;
}

#main .inner01 {
	margin-bottom: 42px;
}

#main .inner01 p {
	margin-bottom: 13px;
}

#main .inner01 p a:not([href^="tel:"]) {
	color: #5db31e;
	text-decoration: underline;
}

#main .inner01 p a:hover {
	text-decoration: none;
}

#main .inner02 p {
	margin: 0 10px 13px;
}

#main .inner .tabBox {
	margin: 0 5px;
}

#main .inner table {
	width: 100%;
	border-collapse: collapse;
}

#main .inner th, #main .inner td {
	padding: 9px 20px;
	font-size: 1.5rem;
	line-height: 1.9;
	text-align: left;
	vertical-align: middle;
	border: 1px solid #707070;
}

#main .inner th {
	padding-left: 28px;
	width: 33%;
	font-weight: normal;
	vertical-align: top;
}

#main .inner tr:first-child th {
	text-align: center;
}

#main .inner tr:first-child td {
	padding-left: 20px;
}

#main .inner02 {
	margin-bottom: 80px;
}

#main .txtList {
	margin-left: 19px;
}

#main .txtList li {
	padding-left: 1em;
	line-height: 1.6;
	text-indent: -1em;
}

#main .inner03 h4 {
	margin-bottom: 16px;
}

#main .numList {
	padding-top: 5px;
}

#main .numList li {
	padding: 0 0 30px 1.3em;
	line-height: 1.6;
	text-indent: -1.3em;
}

#main .numList li:last-child {
	padding-bottom: 0;
}

#main .numList li span {
	margin-bottom: 3px;
	display: block;
}

#main .inner06 p {
	margin-bottom: 35px;
}

#main .inner06 p:first-child {
	margin-bottom: 85px;
}

#main .enactment {
	text-align: right;
	font-size: 18px;
}

@media all and (min-width: 897px) {
	#main p a:hover {
		text-decoration: underline;
	}
}

@media all and (max-width: 896px) {
	#main {
		margin: 0 25px;
	}

	#main .headLine01 {
		margin-bottom: 105px;
		font-size: 2.4rem;
	}

	#main .comBtn {
		margin-bottom: 160px;
	}

	#main .comBorTxt {
		margin-bottom: 32px;
		padding: 29px 10px 23px;
		line-height: 1.85;
		font-weight: bold;
		text-align: center;
	}

	#main p {
		margin: 0 0 21px;
		line-height: 1.5;
	}

	#main .topTxt {
		margin: 0 10px 40px;
	}

	#main h3 {
		margin: 0 -5px 18px;
		font-size: 1.6rem;
	}

	#main .h3Ttl01 {
		margin-bottom: 18px;
	}

	#main h4 {
		margin-bottom: 4px;
	}

	#main .inner {
		margin: 0 3px 53px;
	}

	#main .inner p {
		margin-bottom: 20px;
	}

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

	#main .inner01 p {
		margin-bottom: 20px;
	}

	#main .inner02 p {
		margin: 0 -1px 13px;
	}

	#main .inner .tabBox {
		margin: 0 3px 0 -5px;
	}

	#main .inner th, #main .inner td {
		padding: 3px 4px 4px 10px;
		font-size: 0.75rem;
		line-height: 2;
	}

	#main .inner th {
		padding-left: 7px;
		width: 36%;
	}

	#main .inner tr:first-child td {
		padding-left: 10px;
		text-align: center;
	}

	#main .inner .tabBox02 tr:first-child th, #main .inner .tabBox02 tr:first-child td {
		text-align: left;
	}

	#main .inner02 {
		margin-bottom: 60px;
	}

	#main .txtList {
		margin-left: 5px;
	}

	#main .txtList li {
		line-height: 1.7;
	}

	#main .inner03 h4 {
		margin-bottom: 5px;
	}

	#main .numList {
		padding-top: 5px;
	}

	#main .numList li {
		padding: 0 0 20px 1em;
		text-indent: -1em;
		line-height: 1.5;
	}

	#main .numList li span {
		margin-bottom: 7px;
	}

	#main .inner06 p {
		margin-bottom: 35px;
	}

	#main .inner06 p:first-child {
		margin-bottom: 52px;
	}

	#main .enactment {
		font-size: 14px;
	}
}

@media all and (max-width: 359px) {
	#main .headLine01 {
		font-size: 2.2rem;
	}
}