@charset "UTF-8";

/*---------------------------------

	style.css

---------------------------------*/
.top .topMessage{
	width: 100%;
	height: 30px;
    font-size: 14px;
	line-height: 28px;
	color: #fff;
	letter-spacing: 2px;
	background: #075204;
}

.about {
    width: 100%;
    margin: 50px auto 0;
	font-size: 14px;
	line-height: 28px;
}

/*---------------------------------about---------------------------------*/

.about img {
	width: 100%;
}

.about .about01{
	width: 950px;
	margin: 60px auto;
}
.about .about01 h3 {
	font-size: 22px;
	margin: 0 0 10px 0;
	position: relative;
	letter-spacing: 2px;
	border-left: 4px solid #52b653;
    padding-left: 10px;
	line-height: 28px;
}

.about .about01 p {
	line-height: 32px;
}

.about .about01 p:last-child {
	margin: 20px 0 0;
}


/*---------------------------------about02---------------------------------*/

.about .about02{
	margin-top: 25px;
}
.about .about02 ul {
	width: 1050px;
	margin: auto;
	overflow: hidden;
	display: table;
	border-collapse: separate;
	border-spacing: 50px 25px;
}

.about .about02 ul li {
	display: table-cell;
	border: 1px solid #bcbcbc;
	padding: 20px 25px;
	margin: 50px 0 0;
	line-height: 24px;
}
.about .about02 ul li:nth-child(odd) {
	width: 450px;
	box-sizing: border-box;
}
.about .about02 ul li:nth-child(even) {
	width: 450px;
	box-sizing: border-box;
}
.about .about02 ul li h3 {
	font-size: 18px;
	margin: 0 0 10px 0;
	position: relative;
	letter-spacing: 2px;
	border-left: 4px solid #8fc31f;
    padding-left: 10px;
	line-height: 28px;
}

.about .about02 ul li p:last-child {
	margin: 15px 0 0;
}

.about .about02 ul li p a{
	color: #0099FF;
	text-decoration: underline;
}
.about .about02 ul li p a:hover{
	color: #FF9900;
	text-decoration: underline;
}

/*---------------------------------about02-2---------------------------------*/

.about .about02-2{
	margin-top: 0px;
}
.about .about02-2 ul {
	width: 1050px;
	margin: auto;
	overflow: hidden;
	display: table;
	border-collapse: separate;
	border-spacing: 50px 25px;
}

.about .about02-2 ul li {
	display: table-cell;
	border: 1px solid #bcbcbc;
	padding: 20px 25px;
	margin: 50px 0 0;
	line-height: 24px;
}
.about .about02-2 ul li:nth-child(odd) {
	width: 450px;
	box-sizing: border-box;
}
.about .about02-2 ul li:nth-child(even) {
	width: 450px;
	box-sizing: border-box;
}
.about .about02-2 ul li:last-child {
	width: 450px;
	box-sizing: border-box;
    border: none; 
}
.about .about02-2 ul li h3 {
	font-size: 18px;
	margin: 0 0 10px 0;
	position: relative;
	letter-spacing: 2px;
	border-left: 4px solid #8fc31f;
    padding-left: 10px;
	line-height: 28px;
}

.about .about02-2 ul li p:last-child {
	margin: 15px 0 0;
}

.about .about02-2 ul li p a{
	color: #0099FF;
	text-decoration: underline;
}
.about .about02-2 ul li p a:hover{
	color: #FF9900;
	text-decoration: underline;
}






/*---------------------------------about03---------------------------------*/

.about .about03 h3 {
	font-size: 22px;
	margin: 100px 0 20px 0;
	position: relative;
	letter-spacing: 2px;
	border-left: 4px solid #52b653;
    padding-left: 10px;
	line-height: 28px;
}

.about .about03{
	width: 950px;
	margin: auto;
}
.about .about03 ul {
	margin: 25px 0 0 0;
}

.about .about03 ul li {
	display: inline-block;
	padding: 0 0 50px 0;
	box-sizing: border-box;
	line-height: 24px;
}

.about .about03 ul li:nth-child(odd) {
	padding: 0 30px 50px 0;
}

.about .about03 ul li p.kinu {
	font-size: 18px;
    text-indent: -0.5em; 
	margin: 10px 0;
}

.about .about03 ul li p.category {
	color: #51B653;
	font-weight: bold;
	font-size: 16px;
	margin-bottom: 5px;
}

.about .about03 table {
	width:740px;
	border-collapse:collapse;
    margin-bottom: 30px; 
}
.about .about03 table th {
	border:1px solid #d9d9d9;
	padding:8px 30px;
	text-align:center;
	font-weight: bold;
	background:#fffbeb;
}
.about .about03 table td {
	border:1px solid #d9d9d9;
	background:#FFF;
	padding:8px 115px 8px 0px;
	text-align:right;
	font-weight: bold;
}
.about .about03 table td.first{
	padding:8px;
	background: #ffe7c4;
	text-align: center;
    color: #666666; 
}

/*---------------------------------ryusyoen---------------------------------*/

.about .ryusyoen{
	width: 950px;
	height: auto;
	margin: auto;
	border:1px solid #d9d9d9;
}
.about .ryusyoen ul {
	width: 950px;
	margin: auto;
	padding: 30px 0px 40px 40px;
}

.about .ryusyoen ul li {
	display: inline-block;
}

.about .ryusyoen ul li h3{
	font-size: 30px;
}
.about .ryusyoen ul li h3 + p{
	font-size: 20px;
    line-height: 34px;
	margin-top: 15px;
}

.about .ryusyoen ul li p.tel{
	font-size: 36px;
	color:#0099FF;
	margin-top: 20px;
}
.about .ryusyoen ul li p.tel a{
	color:#0099FF;
    text-decoration: none;
}
.about .ryusyoen ul li p.tel a:hover{
	color:#ff9933;
    text-decoration: none;
}
.about .ryusyoen ul li p.tel::before{
	display: inline-block;
	content: url(../img/ico_tel.png);
	margin-right: 10px;
}

.about .ryusyoen ul li p.mail{
	font-size: 24px;
	color:#0099FF;
	text-align: left;
	margin-top: 20px;
}
.about .ryusyoen ul li p.mail a{
	color:#0099FF;
    text-decoration: none;
}
.about .ryusyoen ul li p.mail a:hover{
	color:#ff9933;
    text-decoration: none;
}
.about .ryusyoen ul li p.mail::before{
	display: inline-block;
	content: url(../img/ico_mail.png);
	margin-right: 10px;
}

.about .ryusyoen ul li p.qr{
	width: 180px;
    margin-left: 60px;
}
.about .ryusyoen ul li p.line{
	font-size: 24px;
    margin-left: 120px;
}
.about .ryusyoen ul li p.insta{
	font-size: 24px;
    margin-left: 100px;
}



/*---------------------------------contact---------------------------------*/
.contact{
	width: 1000px;
	margin: auto;
	padding-top: 50px;
	padding-bottom: 80px;
}

.contact .titleBox{
	margin: 0 auto 50px;
	text-align: center;
}

.contact h2 {
	font-family: goudy-old-style, serif;
	font-weight: 400;
	font-style: italic;
	font-size: 28px;
	letter-spacing: 2px;
	color: #007130;
}

.contact h2 + p {
	font-size: 13px;
	display: inline-block;
	letter-spacing: 2px;
	margin: 5px 0;
}

.contact h2 + p::after {
	content: '';
	display: block;
	width: 27px;/*線の長さ*/
	height: 2px;/*線の太さ*/
	background-color: #8fc31f;/*線の色*/
	margin: 10px auto 0;
}

.contact > p{
	font-size: 15px;
	line-height: 40px;
}
.contact .contactBNR{
	display: inline-block;
	margin-top: 45px;
	padding: 15px 170px;
	background: #053f02;
}
.contact .contactBNR .tel{
	font-size: 36px;
	color:#fff;
}
.contact .contactBNR .tel a{
	color:#fff;
    text-decoration: none;
}
.contact .contactBNR .tel a:hover{
	color:#ff9933;
    text-decoration: none;
}


.contact .contactBNR .tel::before{
	display: inline-block;
	content: url(../img/ico_tel_w.png);
	margin-right: 20px;
}
.contact .contactBNR .mail{
	font-size: 20px;
	color:#fff;
	text-align: left;
}
.contact .contactBNR .mail a{
	color:#fff;
    text-decoration: none;
}
.contact .contactBNR .mail a:hover{
	color:#ff9933;
    text-decoration: none;
}
.contact .contactBNR .mail::before{
	display: inline-block;
	content: url(../img/ico_mail_w.png);
	margin-right: 20px;
}

.formBox{
	padding: 45px 0 40px;
	background: #e6f1e6;
}
.formBox h2{
	font-size: 20px;
}
.formBox h2 + p{
	font-size: 15px;
	margin-top: 20px;
}
.formBox form{
	width: 1000px;
	margin: 30px auto 0;
	box-sizing: border-box;
	padding: 0 100px;
}
.formBox table{
	width: 100%;
}
.formBox table th{
	width: 225px;
	text-align: left;
	vertical-align: top;
	font-size: 15px;
	line-height: 54px;
	font-weight: normal;
}
.formBox table td{
	padding: 10px 0;
	font-size: 16px;
	line-height: 26px;
}
.formBox table td input,
.formBox table td textarea{
	font-size: 15px;
	line-height: 28px;
}
.formBox table td input.number{
	margin: 0 10px;
}
.formBox table td label{
	margin-right: 50px;
	cursor: pointer;
}
.formBox .formBtn{
	width: 100%;
	margin: 50px auto 0;
	text-align: center;
}
.formBox .formBtn input{
	display: inline-block;
	width: 315px;
	font-family: kozuka-mincho-pro,serif;
	font-size: 16px;
	line-height: 50px;
	color: #fff;
	background: #053f02;
	cursor: pointer;
	transition: all .7s;
}
.formBox .formBtn input:hover{
	opacity: .5;
}


@media screen and (max-width: 480px) {
	.top .topMessage{
		width: 100%;
		height: auto;
		font-size: 12px;
		line-height: 20px;
		color: #fff;
		letter-spacing: 1px;
		padding: 5px 0px;
		background: #075204;
	}

.about {
    width: 94%;
    margin: 20px auto 0;
	font-size: 13px;
	line-height: 24px;
}

.about .about01{
	width: 100%;
	margin: auto;
}
.about .about01 h3 {
	margin: 40px 0 5px 0;
}

.about .about01 p {
	line-height: 28px;
}


.about .about01 p:last-child {
	margin: 5px 0 0;
}



.about .about02 ul {
	overflow: hidden;
	display: block;
	width: 100%;
}

.about .about02 ul li {
	display: block;
	border: 1px solid #bcbcbc;
	padding: 15px 3%;
	margin: 20px 0 0;
	line-height: 24px;
}

.about .about02 ul li:nth-child(odd) {
	float: none;
	width: 100%;
	height: auto;
	box-sizing: border-box;
}

.about .about02 ul li:nth-child(even) {
	float: none;
	width: 100%;
	height: auto;
	box-sizing: border-box;
}

.about .about02 ul li p:last-child {
	margin: 5px 0 0;
}


.about .about02-2 ul {
	overflow: hidden;
	display: block;
	width: 100%;
}

.about .about02-2 ul li {
	display: block;
	border: 1px solid #bcbcbc;
	padding: 15px 3%;
	margin: 20px 0 0;
	line-height: 24px;
}

.about .about02-2 ul li:nth-child(odd) {
	float: none;
	width: 100%;
	height: auto;
	box-sizing: border-box;
}

.about .about02-2 ul li:nth-child(even) {
	float: none;
	width: 100%;
	height: auto;
	box-sizing: border-box;
}

.about .about02-2 ul li:last-child {
    display: none; 
}

.about .about02-2 ul li p:last-child {
	margin: 5px 0 0;
}



.about .about03{
	width: 100%;
}
.about .about03 h3 {
	margin: 40px 0 20px 0;
}

.about .about03 ul {
	margin: 20px 0 0 0;
}

.about .about03 ul li {
	display: block;
	padding: 0 0 30px 0;
	box-sizing: border-box;
	line-height: 24px;
}

.about .about03 ul li:nth-child(odd) {
	padding: 0 0 30px 0;
}

.about .about03 ul li p.kinu {
	margin-bottom: 5px;
}

.about .about03 ul li p.category {
	margin: 5px 0;
}

.about .about03 table {
	width:100%;
	border-collapse:collapse;
    margin-bottom: 20px; 
}
.about .about03 table th {
	border:1px solid #d9d9d9;
	padding:6px;
	text-align:center;
	font-weight: bold;
	background:#fffbeb;
}
.about .about03 table td {
	border:1px solid #d9d9d9;
	background:#FFF;
	padding:6px;
	text-align:center;
	font-weight: bold;
}
.about .about03 table td.first{
	padding:6px;
	background: #ffe7c4;
	text-align: center;
    color: #666666; 
}


/*---------------------------------ryusyoen---------------------------------*/

.about .ryusyoen{
	width: 100%;
	height: auto;
	margin: auto;
	border:1px solid #d9d9d9;
	text-align: center;
}
.about .ryusyoen ul {
	width: 100%;
	padding: 30px 0px 0px 0px;
}
.about .ryusyoen ul li {
	display: inline-block;
}

.about .ryusyoen ul li h3{
	font-size: 28px;
}
.about .ryusyoen ul li h3 + p{
	font-size: 16px;
    line-height: 28px;
	margin-top: 10px;
}

.about .ryusyoen ul li p.tel{
	font-size: 32px;
	color:#0099FF;
	margin-top: 15px;
}
.about .ryusyoen ul li p.tel a{
	color:#0099FF;
    text-decoration: none;
}
.about .ryusyoen ul li p.tel a:hover{
	color:#ff9933;
    text-decoration: none;
}
.about .ryusyoen ul li p.tel::before{
	display: inline-block;
	content: url(../img/ico_tel.png);
	margin-right: 7px;
}

.about .ryusyoen ul li p.mail{
	font-size: 20px;
	color:#0099FF;
	text-align: left;
	margin-top: 15px;
    margin-bottom: 15px; 
}
.about .ryusyoen ul li p.mail a{
	color:#0099FF;
    text-decoration: none;
}
.about .ryusyoen ul li p.mail a:hover{
	color:#ff9933;
    text-decoration: none;
}
.about .ryusyoen ul li p.mail::before{
	display: inline-block;
	content: url(../img/ico_mail.png);
	margin-right: 10px;
}

.about .ryusyoen ul li p.qr{
	width: 180px;
	margin-bottom: 0px;
    margin-left: 0px;
}
.about .ryusyoen ul li p.line{
	font-size: 18px;
    margin-left: 0px;
	margin-bottom: 30px;
}
.about .ryusyoen ul li p.insta{
	font-size: 18px;
    margin-left: 0px;
	margin-bottom: 30px;
}


/*---------------------------------contact---------------------------------*/
	.contact{
		width: 100%;
		margin: auto;
		padding-top: 30px;
		padding-bottom: 30px;
	}
	
	.contact h2{
		font-family: goudy-old-style, serif;
		font-weight: 400;
		font-style: italic;
		font-size: 28px;
		letter-spacing: 2px;
		color: #007130;
	}
	
	.contact h2 + p {
		font-size: 13px;
		display: inline-block;
		letter-spacing: 2px;
		margin: 5px 0;
	}
	
	.contact h2 + p::after{
		content: '';
		display: block;
		width: 27px;/*線の長さ*/
		height: 2px;/*線の太さ*/
		background-color: #8fc31f;/*線の色*/
		margin: 10px auto 0;
	}
	
	.contact .titleBox{
		margin: 0 auto 20px;
		text-align: center;
	}
	
	.contact > p{
		font-size: 15px;
		line-height: 25px;
	}
	.contact .contactBNR{
		display: inline-block;
		margin-top: 30px;
		padding: 10px 50px;
		background: #053f02;
	}
	.contact .contactBNR .tel{
		font-size: 24px;
		color:#fff;
	}
	.contact .contactBNR .tel::before{
		display: inline-block;
		content: url(../img/ico_tel_w.png);
		margin-right: 15px;
	}
	.contact .contactBNR .mail{
		font-size: 18px;
		color:#fff;
		text-align: left;
	}
	.contact .contactBNR .mail::before{
		display: inline-block;
		content: url(../img/ico_mail_w.png);
		margin-right: 15px;
	}
	
	.formBox{
		padding: 45px 0 40px;
		background: #e6f1e6;
	}
	.formBox h2{
		font-size: 20px;
	}
	.formBox h2 + p{
		font-size: 15px;
		margin-top: 20px;
	}
	.formBox form{
		width: 94%;
		margin: 30px auto 0;
		box-sizing: border-box;
		padding: 0;
	}
	.formBox table{
		display: block;
		width: 100%;
	}
	.formBox table tbody,
	.formBox table tr{
		display: block;
	}
	.formBox table tr{
		padding: 0 2%;
	}
	.formBox table th{
		display: block;
		width: 100%;
		text-align: left;
		vertical-align: top;
		font-size: 15px;
		line-height: 40px;
		font-weight: normal;
		margin-top: 15px;
	}
	.formBox table td{
		display: inline-block;
		width: 100%;
		padding: 0 0 10px;
		font-size: 16px;
		line-height: 26px;
	}
	.formBox table td input,
	.formBox table td textarea{
		font-size: 15px;
		line-height: 28px;
		box-sizing: border-box;
		max-width: 100%;
	}
	.formBox table td input.number{
		margin: 0 10px;
	}
	.formBox table td label{
		margin-right: 0;
		line-height: 24px;
		cursor: pointer;
	}
	.formBox .formBtn{
		width: 100%;
		margin: 30px auto 0;
		text-align: center;
	}
	.formBox .formBtn input{
		display: inline-block;
		width: 280px;
		font-family: kozuka-mincho-pro,serif;
		font-size: 16px;
		line-height: 30px;
		color: #fff;
		background: #053f02;
		cursor: pointer;
		transition: all .7s;
	}
	.formBox .formBtn input:hover{
		opacity: .5;
	}




}