@charset "utf-8";
/*------------------------------------------------------------
	support
------------------------------------------------------------*/
.mainImg {
	background-image: url("../img/reform/main_img.jpg");
}
#main .sec01 {
	padding: 0 0 80px;
}
#main .sec01 .bgSec {
	background-color: #f7f4f4;
	padding:30px 0 40px;
	margin-bottom:62px;
}
#main .sec01 .headLine01 {
	position: relative;
}
#main .sec01 .headLine01 .img {
	position: absolute;
	right: 50%;
	top: -3px;
	margin: 0 -331px 0 0;
}
#main .sec01 .topTxt {
	margin-bottom: 38px;
	text-align: center;
	letter-spacing: 0.075em;
	line-height: 1.875;
}
#main .sec01 .imgBox {
	max-width: 1040px;
	margin: 0 auto 50px;
	padding-left: 1.2%;
	box-sizing: border-box;
}
#main .sec01 .imgBox .img {
	float: right;
	width: 45.8%;
}
#main .sec01 .imgBox .txtBox {
	float: left;
	width: 49%;
}
#main .sec01 .imgBox .txtBox .title {
	font-size:2.4rem;
	font-weight:400;
	border-bottom:dotted 2px #000;
	padding-bottom:15px;
	margin-bottom:25px;
}
#main .sec01 .imgBox .txtBox .title span.color{
	color:#f19993;
}
#main .sec01 .imgBox .txtBox p {
	line-height: 1.875;
}
#main .sec01 .inner{
	max-width: 1102px;
	margin:0 auto;
}
#main .sec02 {
	max-width: 1000px;
	margin:0 auto;
}
#main .sec02 .title{
	background:#f19993;
	text-align:center;
	padding:10px 0;
	color:#fff;
	margin:0 auto 25px;
	font-size:2.4rem;
	font-weight:400;
}
#main .sec02 .topTxt {
	margin-bottom: 38px;
	text-align: center;
	letter-spacing: 0.075em;
	line-height: 1.875;
}
#main .sec02 .txtUl {
	margin: 0 auto 40px;
}
#main .sec02 .txtUl li {
	width: 32.2%;
	padding: 30px 34px 30px;
	margin-right: 1.7%;
	background:#f7f4f4;
	box-sizing: border-box;
	margin-bottom:17px;
}
#main .sec02 .txtUl li:nth-child(3n) {
	margin-right: 0;
}
#main .sec02 .txtUl li p {
	line-height: 1.875;
}
#main .sec02 .txtUl li .boxTtl {
	margin-bottom: 20px;
	text-align: center;
	font-size: 2.2rem;
	line-height: 1.5;
	color:#f19993;
	font-weight:400;
}
#main .sec02 .txtUl li .icon {
	margin-bottom: 20px;
	text-align: center;
}
#main .sec03 {
	padding: 58px 10px 82px;
}
#main .sec03 .bgBox {
	max-width: 1000px;
	margin: 0 auto;
	padding: ０px 49px 60px;
	box-sizing: border-box;
	background-color: #f1eada;
}
#main .sec03 .bgBox .title {
	margin-bottom: 30px;
	padding: 12px 0;
	color: #fff;
	text-align: center;
	font-size: 2.8rem;
	background-color: #e2b954;
	font-weight:400;
}
#main .sec03 .bgBox .ttl {
	margin-bottom: 37px;
	text-align: center;
	letter-spacing: 0.1em;
}
#main .sec03 .bgBox .ttl > span {
	margin-top: 4px;
	display: block;
	font-size: 2.4rem;
	letter-spacing: 0.1em;
}
#main .sec03 .bgBox .ttl > span span {
	color: #e2b954;
}
#main .sec03 .bgBox .txt {
	margin-bottom: 40px;
	text-align: center;
}
#main .sec03 .bgBox .txtBox {
	display:table;
	margin:0 auto;
	padding:0 50px 50px;
}
#main .sec03 .bgBox .leftSec {
	display:table-cell;
	background:#fff;
	width:45%;
	padding-bottom:25px;
}
#main .sec03 .bgBox .rightSec {
	display:table-cell;
	background:#fff;
	width:45%;
	padding-bottom:25px;
}
#main .sec03 .bgBox .plus {
	display:table-cell;
	width:10%;
	text-align:center;
	vertical-align: middle;
	font-size:3.0rem;
}
#main .sec03 .bgBox ul li{
	margin: 0px 3.5% 15px;
	width:43%;
	padding:10px 15px;
	text-align:center;
	border:solid 1px #e2b954;
	color:#e2b954;
	box-sizing: border-box;
}
#main .sec03 .bgBox ul li:last-child{
	margin: 0px 3.5% 0;
	width:100%;
}
#main .sec03 .bgBox .boxTtl {
	margin-bottom: 25px;
	padding: 12px 0;
	color: #fff;
	text-align: center;
	font-size: 2.2rem;
	background-color: #e2b954;
	font-weight:400;
}
#main .sec04 {
	padding: 50px 10px 65px;
	background-color: #f7f4f4;
}
#main .sec04 .pTop{
	padding: 10px 20px 10px;
	margin:0 auto 40px;
	text-align:center;
	width:300px;
	font-size:2.4rem;
	letter-spacing:3px;
	font-weight:400;
	color:#f19993;
	border-top:solid 1px #f19993;
	border-bottom:solid 1px #f19993;
}
#main .sec04 .txtUl {
	margin: 0 auto 40px;
	max-width:1100px;
}
#main .sec04 .txtUl li {
	width: 32.2%;
	padding: 20px 34px 30px;
	margin-right: 1.7%;
	background:#fff;
	box-sizing: border-box;
	margin-bottom:17px;
}
#main .sec04 .txtUl li:nth-child(3n) {
	margin-right: 0;
}
#main .sec04 .txtUl li p {
	line-height: 1.875;
}
#main .sec04 .txtUl li .boxTtl {
	margin-bottom: 20px;
	text-align: center;
	font-size: 2.2rem;
	line-height: 1.5;
	color:#f19993;
	font-weight:400;
}
#main .sec04 .txtUl li .img {
	margin-bottom: 20px;
	text-align: center;
}
#main .sec04 .txtUl li .txt {
	text-align: center;
}
#main .sec05 {
	max-width:1100px;
	margin:0 auto;
	padding:80px 0;
}
#main .sec05 .headLine02 {
	margin-bottom: 34px;
	letter-spacing: 0;
}
#main .sec05 .headLine02 .size {
	margin-bottom: 5px;
}
#main .sec05 .logo{
	margin:0 auto 40px;
	text-align:center;
}
#main .sec05 .topTxt{
	text-align: center;
	margin:0 auto 40px;
}
#main .sec05 .staffBox {
	background:#f1eada;
	padding:40px 40px 30px;
	margin:0 auto;
	max-width:800px;
	margin-bottom:50px;
}
#main .sec05 .staffBox .title{
	margin-bottom:15px;
	font-size:2.4rem;
	font-weight:400;
	border-bottom:dotted 2px #000;
	padding-bottom:5px;
}
#main .sec05 .staffBox .title span{
	color:#e2b954;
}
#main .sec05 .twoColumn .photo{
	float:left;
	width:30%;
}
#main .sec05 .twoColumn .txtBox{
	float:right;
	width:65%;
}
#main .sec05 .twoColumn .txt{
	margin-bottom:15px;
}
#main .sec05 .staffBox dl{
	margin-bottom:10px;
	font-size:1.4rem;
}
#main .sec05 .staffBox dt{
	color:#e2b954;
	margin-bottom:5px;
}
#main .sec05 .contact {
	text-align:center;
	padding:10px 0;
	color:#fff;
	background-color: #e2b954;
	font-weight:400;
	font-size:2.0rem;
	max-width:800px;
	margin:0 auto 40px;
}
#main .sec05 ul {
	display:flex;
	margin:0 auto 40px;
	max-width:850px;
}
#main .sec05 ul li{
	width:46%;
	margin:0 2%;
}
#main .sec05 .name{
	font-size:2.8rem;
	line-height:1.8;
}
#main .sec05 .name .sm{
	font-size:1.6rem;
	display:block;
}
#main .sec05 .pTop{
	font-size:1.6rem;
}
#main .sec05 .tel .sm{
	font-size:1.6rem;
	margin-right:10px;
}
#main .sec05 .tel{
	font-size:3.6rem;
	letter-spacing:3px;
}
#main .sec05 .sub{
	font-size:1.6rem;
}
@media all and (min-width: 897px) {
	#main .sec03 .txtUl li .link a:hover:after {
		width: 120%;
	}
	#main .sec04 ul li .comLink a:hover:before {
		right: -32px;
	}
}

@media all and (max-width: 896px) {
	#main .sec01 {
		padding: 0 0 0px;
	}
	#main .sec01 .bgSec {
		background-color: #f7f4f4;
		padding:20px 15px 30px;
		margin-bottom:40px;
	}
	#main .sec01 .headLine01 .img {
		display: none;
	}
	#main .sec01 .inner{
		margin:0 15px;
	}
	#main .sec01 .topTxt {
		margin-bottom: 38px;
		line-height: 1.71;
	}
	#main .sec01 .imgBox {
		max-width: inherit;
		margin: 0 auto 0px;
		padding-left: 0;
	}
	#main .sec01 .imgBox .img {
		margin: 0 0 10px;
		float: none;
		width: auto;
		text-align: center;
	}
	#main .sec01 .imgBox .txtBox {
		float: none;
		width: auto;
		margin-bottom:20px;
	}
	#main .sec01 .imgBox .txtBox .title {
		font-size:1.7rem;
		margin-bottom:20px;
	}
	#main .sec01 .imgBox .txtBox p {
		line-height: 1.71;
	}
	#main .sec02 {
		padding: 30px 15px;
	}
	#main .sec02 .title{
		padding:7px 0;
		margin-bottom:20px;
		font-size:1.7rem;
	}
	#main .sec02 .headLine02 {
		margin-bottom: 25px;
	}
	#main .sec02 .txtUl {
		max-width: inherit;
		margin: 0 auto 30px;
	}
	#main .sec02 .txtUl li {
		width: auto;
		padding: 35px 15px;
		margin: 0 0 20px;
		width:100%;
	}
	#main .sec02 .txtUl li:last-child {
		margin: 0;
	}
	#main .sec02 .txtUl li p {
		line-height: 1.71;
		text-align:center;
	}
	#main .sec02 .txtUl li .ttl {
		margin-bottom: 10px;
		font-size: 2rem;
	}
	#main .sec02 .txtUl li .boxTtl {
		margin-bottom: 10px;
		font-size: 1.7rem;
	}
	#main .sec02 .txtUl li .img {
		margin: 15px 0;
	}
	#main .sec03 {
		padding: 30px 15px;
	}
	#main .sec03 .bgBox {
		max-width: inherit;
		padding: 15px;
	}
	#main .sec03 .bgBox .title {
		margin-bottom: 10px;
		padding: 6px 0;
		font-size: 1.6rem;
	}
	#main .sec03 .bgBox .txt {
		margin-bottom: 20px;
		text-align: left;
	}
	#main .sec03 .bgBox .ttl {
		margin-bottom: 20px;
	}
	#main .sec03 .bgBox .ttl > span {
		margin-top: 2px;
		font-size: 2rem;
		letter-spacing: 0;
	}
	#main .sec03 .bgBox .txtBox {
		display:block;
		margin:0 auto;
		padding:0 10px 50px;
	}
	#main .sec03 .bgBox .leftSec {
		display:block;
		width:100%;
		padding-bottom:25px;
	}
	#main .sec03 .bgBox .rightSec {
		display:block;
		width:100%;
		padding-bottom:25px;
	}
	#main .sec03 .bgBox .plus {
		display:block;
		width:100%;
		text-align:center;
		font-size:2.4rem;
	}
	#main .sec03 .bgBox ul li{
		margin: 0px 10px 10px;
		width:100%;
		padding:10px 15px;
	}
	#main .sec03 .bgBox ul li:last-child{
		margin: 0px 10px 0;
		width:100%;
	}
	#main .sec03 .bgBox .boxTtl {
		margin-bottom: 25px;
		padding: 8px 0;
		font-size: 1.6rem;
	}


	#main .sec04 {
		padding: 30px 15px;
	}
	#main .sec04 .pTop{
		padding: 5px 0px 5px;
		margin:0 auto 20px;
		width:250px;
		font-size:1.7rem;
	}
	#main .sec04 .txtUl {
		max-width: inherit;
		margin: 0 auto 30px;
	}
	#main .sec04 .txtUl li {
		width: auto;
		padding: 35px 15px;
		margin: 0 0 20px;
		width:100%;
	}
	#main .sec04 .txtUl li:last-child {
		margin: 0;
	}
	#main .sec04 .txtUl li p {
		line-height: 1.71;
		text-align:center;
	}
	#main .sec04 .txtUl li .ttl {
		margin-bottom: 10px;
		font-size: 2rem;
	}
	#main .sec04 .txtUl li .boxTtl {
		margin-bottom: 10px;
		font-size: 1.7rem;
	}
	#main .sec04 .txtUl li .img {
		margin: 15px 0;
	}
	#main .sec05 {
		margin:0 15px;
		padding:40px 0;
	}
	#main .sec05 .headLine02 .size {
		margin-bottom: 5px;
	}
	#main .sec05 .logo{
		margin:0 auto 20px;
		text-align:center;
	}
	#main .sec05 .topTxt{
		margin:0 auto 20px;
	}
	#main .sec05 .contact {
		padding:7px 0;
		font-size:1.7rem;
		margin:0 auto 30px;
	}
	#main .sec05 ul {
		display:flex;
		margin:0 auto 40px;
		max-width:850px;
	}
	#main .sec05 ul li{
		width:100%;
		margin:0 0%;
	}
	#main .sec05 ul li:first-child{
		margin-bottom:20px;
	}
	#main .sec05 .name{
		font-size:2.0rem;
	}
	#main .sec05 .name .sm{
		font-size:1.4rem;
	}
	#main .sec05 .pTop{
		font-size:1.4rem;
	}
	#main .sec05 .tel .sm{
		font-size:1.4rem;
	}
	#main .sec05 .tel{
		font-size:3.0rem;
		letter-spacing:3px;
	}
	#main .sec05 .sub{
		font-size:1.4rem;
	}
	#main .sec05 .staffBox {
		padding:20px 20px 15px;
		margin-bottom:40px;
	}
	#main .sec05 .staffBox .title{
		margin-bottom:10px;
		font-size:1.7rem;
	}
	#main .sec05 .twoColumn .photo{
		float:none;
		width:100%;
		margin-bottom:20px;
	}
	#main .sec05 .twoColumn .txtBox{
		float:none;
		width:100%;
	}
	#main .sec05 .twoColumn .txt{
		margin-bottom:10px;
	}
	#main .sec05 .staffBox dl{
		margin-bottom:10px;
		font-size:1.2rem;
	}
}