﻿/*----------------------------------------------------------------------
サブページ
----------------------------------------------------------------------*/
#contents {
	clear: both;
	/*width:1020px;*/
	text-align: center;
	margin: 0 auto 80px auto;
	padding-top: 10px;
	padding-bottom: 30px;
	background: #fff;
}
#contents_inner {
	clear: both;
	width: 1020px;
	text-align: center;
	margin: 0 auto;
	padding-top: 0px;
}
#toptitle {
	background: url(../images/toptitle_bg.jpg) 0 center no-repeat;
	background-size: cover;
	width: 100%;
	height: 200px;
	margin: 0px auto 0px auto;
	padding-top: 0px;
	position: relative;
	overflow: hidden;
}

h2 {
	font-size: 40px;
	padding-bottom: 0px;
	line-height: 140%;
	letter-spacing: 0.02em;
	text-align: center;
	margin: 0 auto;
	padding-top: 62px;
	/*color: #7bc16d;*/
	text-shadow: 2px 2px 3px #fff,  -2px 2px 3px #fff,  2px -2px 3px #fff,  -2px -2px 3px #fff;
}
h2 span {
	display: block;
	font-family: 'Crimson Text', serif;
	font-size: 23px;
	font-weight: normal;
	padding-bottom: 0px;
	line-height: 140%;
	/*color: #222;*/
	letter-spacing: 0.08em;
}

/*
 * path
 */
#path {
	text-align: center;
	margin: 0 auto;
	padding: 0px 0 0px 0px;
	width: 1020px;
}
#path_inner {
	text-align: left;
	padding: 0px 0 5px 0px;
	font-size: 13px;
}
#path span {
	padding: 0 4px 0 6px;
	font-size: 90%;
}
#path a {
	text-decoration: underline;
}
#path a:hover {
	text-decoration: none;
}
#path img {
	vertical-align: text-bottom;
}
/*.topsubtitle {
	font-size: 30px;
	font-weight: normal;
	line-height: 130%;
	text-align: center;
	padding: 0 0 20px 0;
	margin: 0 auto;
	
	
}
*/



.sub_top_txt {
	font-size: 21px;
	font-weight: 500;
	padding: 0.0em 0.0em 0.0em 0.0em;
	text-align: center;
	margin: 0 auto;
	line-height: 150%;
}
.sub_top_txt span {
	color: #b40f0c;
}
.sub_f_txt {
	font-size: 16px;
	font-weight: 400;
	padding: 0.3em 0.0em 0.5em 0.0em;
	text-align: right;
	margin: 0 auto;
	line-height: 150%;
}
.sub_f_txt2 {
	font-size: 19px;
	font-weight: 500;
	padding: 0.8em 0.0em 0.0em 0.0em;
	text-align: center;
	margin: 0 auto;
	line-height: 150%;
}

#sub_box01 {
	text-align: center;
	margin-left:auto;
	margin-right: auto;
	padding: 20px 0px 20px 0;
	/*background-color: rgba(255,255,255,0.4);
	background: url(../images/cat_box01_bg.png) 0 0 no-repeat;*/
	width: 1020px;
}
.subttl {
	text-align: center;
	font-size: 28px;
	font-weight: 600;
	padding: 0.0em 0 0.0em 0.0em;
	line-height: 145%;
	position: relative;
	display: inline-block;
	margin-bottom: 1.5em;
	letter-spacing: 0.04em;
}
.subttl:before {
	content: '';
	position: absolute;
	bottom: -12px;
	display: inline-block;
	width: 54px;
	height: 5px;
	left: 50%;
	-moz-transform: translateX(-50%);
	-webkit-transform: translateX(-50%);
	-ms-transform: translateX(-50%);
	transform: translateX(-50%);
	background-color: #d1f4d6;
	border-radius: 5px;
}


/*
 * about.html
 */

.about{
	margin-bottom: 4rem;
}

.greeting{
	display: flex;
	align-items: center;
	flex-direction: column;
	line-height: 1.6;
}
.greet_img{
	margin-bottom: 1rem;
}

.greet_img img{
	width: 500px;
	max-width: 95%;
	margin:0 auto;
}

.greeting h3{
	text-align: left;
	font-size: 20px;
	margin-bottom:.1rem;
	color: #196517;
}

.greeting p,
#recruit p{
padding: 0px 0 15px 0;
text-align: left;
margin: 0 auto;
font-size: 15px;
font-weight: 400;
line-height: 160%;
}

.greeting p.caption_txt{
	text-align: right!important;
}

dl.tb01 dl, dt,dl.tb01 dd {
	margin: 0;
	padding: 0;
}
dl.tb01 {
	border-bottom: 1px solid #ddd;
	width: 80%;
	font-size: 16px;
	padding: 0px 0px 0px 0px;
	text-align: justify;
	line-height: 150%;
	text-align: center;
	margin: 0 auto 0px auto;
}
dl.tb01 dt,dl.tb01 dd {
	padding: 10px 5px;
}
dl.tb01 dt {
	border-top: 1px solid #ddd;
	clear: left;
	float: left;
	width: 20%;
	text-align: left;
	margin-left: 3px;
	font-weight: 600;
}
dl.tb01 dd {
	border-top: 1px solid #ddd;
	margin-left: 20%;
	text-align: left;
}

dl.tb01 dd span{
	display: block;
	font-size:90%;
	color:#062b05;
	line-height: 1.2;
}

.ab_topimage {
	text-align: center;
	margin: 20px auto 10px auto;
}
.ab_topimage p {
	text-align: center;
	font-size: 16px;
	font-weight: 500;
	line-height: 1.4;
}
.ab_toptxt {
	font-size: 26px;
	font-weight: bold;
	font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
	text-align: center;
	padding: 5px 0px 0px 0px;
	margin: 0px auto;
	color: #cd161b;
	line-height: 1.3;
}
.staff_block {
	clear: both;
	/*border-bottom: 1px dotted #efe3ca;*/
	margin-bottom: 0px;
	width: 100%;
	margin: 0 auto 25px auto;
}
.staff_name {
	text-align: left;
	font-size: 24px;
	font-weight: 500;
	border-bottom: 1px solid #ddd;
	padding: 0px 0 8px 2px;
	letter-spacing: 0.02em;
}
.staff_name span {
	font-size: 14px;
	padding: 0px 0 0px 15px;
}
.staff_img {
	float: left;
	text-align: left;
	padding: 15px 0 0px 2px;
	/*width: 200px;*/

}
.staff_img img {
	padding: 4px;
	border: 1px solid #ddd;
}
.staff_profile {
	float: right;
	width: 80%;
}
.staff_profile dl {
	text-align: left;
	font-size: 16px;
}
.staff_profile dl dt {
	padding: 11px 0 0 2px;
	clear: both;
	color: #196517;
	line-height: 160%;
	font-weight: bold;
}
.staff_profile dl dd {
	padding: 0 0 10px 0;/*dtのwidthの値を同じにする*/
	line-height: 160%;
	border-bottom: 1px dashed #f2ede4;
}
.staff_profile dl dd a {
	text-decoration: underline;
	color: #222;
}
.staff_profile dl dd a:hover {
	text-decoration: none;
}
.comment {
/*clear: both;*/
}
.comment .com_txt {
	padding: 10px 0px 10px 0px;
	text-align: left;
	margin: 0 auto;
	font-size: 15px;
	font-weight: 400;
	line-height: 160%;
	border-bottom: 1px dashed #f2ede4;
}

.comment .com_txt:last-of-type{
	border-bottom: none;
}

.comment .com_txt span {
	color: #196517;
	font-weight: bold;
	font-size: 16px;
}
.map01 {
	text-align: center;
	margin: 0px auto 0px auto;
}

#recruit h3{
	text-align: center;
	font-size: 20px;
	margin-bottom:.1rem;
	color: #196517;
}

#recruit p{
	margin-top:.75rem;
}

.rec_imglist ul{
	display: flex;
	margin-left: -.5rem;
	margin-bottom: 1rem;
}
.rec_imglist ul li{
	padding: 3px;
	border:1px solid #ccc;
	width: calc(100% / 4 - .5rem);
	margin-left: .5rem;
}

.rec_imglist ul li img{
	width: 100%;
}

.rec_list dl{
	font-size: 16px;
	line-height: 160%;
	text-align: left;
}

.rec_list dl div{
	display: flex;
}

.rec_list dl dt{
	width: 30%;
	color: #196517;
	background: #d1f4d6;
	font-weight: bold;
	padding:1rem 0 1rem 1rem;
	border-bottom: 1px solid #fff;
}

.rec_list dl dd{
	width: 70%;
	padding:1rem;
	border-top:1px solid #ccc;
	border-right: 1px solid #ccc;
}

.rec_list dl dd span{
	font-weight: bold;
	display: block;
}

.rec_list dl div:last-of-type dt{
	border-bottom: none;
}

.rec_list dl div:last-of-type dd{
	border-bottom:1px solid #ccc;
}







/*
 * faq.html
 */
.top_q {
	clear: both;
	/*background-color: #bf9a0b;*/
	margin-top: 25px;
	margin-bottom: 25px;
	border-bottom: 1px solid #ddd;
}
.top_q .top_q_l {
	float: left;
	text-align: left;
	padding: 0px 0 5px 0px;
}
.top_q .top_q_r {
	float: right;
	font-size: 19px;
	font-weight: 600;
	text-align: justify;
	padding: 10px 0 20px 0px;
	line-height: 145%;
	width: 940px;
}
.top_q .top_a_l {
	clear: both;
	float: left;
	text-align: left;
	padding: 4px 0 20px 0px;
}
.top_q .top_a_r {
	float: right;
	font-size: 17px;
	font-weight: 400;
	text-align: justify;
	padding: 20px 0 20px 0px;
	line-height: 160%;
	width: 940px;
}

.top_q .top_a_r_l {
	float: right;
	font-size: 17px;
	font-weight: 400;
	text-align: justify;
	padding: 4px 0 20px 0px;
	line-height: 160%;
	width: 940px;
}

.top_q .top_a_r a ,.top_q .top_a_r_l a {
	text-decoration: underline;
}
.top_q .top_a_r a:hover ,.top_q .top_a_r_l a:hover{
	text-decoration: none;
}
.top_q .top_a_r span ,.top_q .top_a_r_l span{
	font-weight: bold;
}







/*
 * voice.html
 */	 

.voice_block {
	clear: both;
	padding: 0px 0px 25px 0px;
	
}

.voice_block ul {
}


.voice_block ul li {
	display: inline-block;
	position: relative;
	width: 480px;
	padding: 0px 15px 0px 15px;
	margin: 2em 0;
	vertical-align: top;
}



.voice_box {
	padding: 30px 25px;
	text-align: center;
	/*border: 5px solid #bfe1ef;*/
	/*width: 280px;*/
	/*height: 190px;*/
	background-color: #f8f8f8;
	border-radius: 30px;
}



.voice_icon {
	padding: 0px 0px 0px 0px;
	text-align: right;
	position: absolute;
	bottom: -35px;
	right: 30px;
}




.voice_txt {
	padding: 0px 0px 0px 0px;
	text-align: justify;
	font-size: 17px;
	font-weight: 400;
	line-height: 1.6;
}


.voice_txt span {
	display: block;
	font-size: 21px;
	font-weight: 600;
	line-height: 1.4;
	margin-bottom: .5rem;
	color: #eb4335;
}



.voice_prof {
	padding: 10px 0px 0px 0px;
	text-align: left;
	font-size: 16px;
	font-weight: 400;
	line-height: 1.6;
}


.voice_sub_box{
	display: flex;
	justify-content: space-between;
}






/*
 * service.html
 */


h3.service_sub_ttl{
	font-size: 28px;
	background: transparent;
}


.service_faq_box{
	background:#edfee3;
	border-radius: 10px;
	padding: 1rem;
	margin-bottom: 1.5rem;
}

.service_faq_box h3{
	text-align: left;
	font-size: 20px;
	color: #196517;
	margin: .5rem 0;
	padding: .25rem 0 .25rem .5rem;
	border-left: 5px solid #196517;
	line-height: 1;
}

ul.service_list{
	margin:0 auto .5rem;
	text-align: left;
	font-size: 16px;
	line-height: 1.8;
}

ul.service_list li{
	border-bottom: 1px dashed #ccc;
	padding: .5rem 0 .5rem 1rem;
	position: relative;
}

ul.service_list li::before{
	position: absolute;
	content: '';
	top:0;
	bottom: 0;
    left: 5px;
	margin:auto;
    box-sizing: border-box;
    width: 4px;
    height: 4px;
    border: 4px solid transparent;
    border-left: 4px solid #7a0;
}

table.tb02 .lst_block td{
    text-align: justify;
	padding: 1rem;
	box-sizing: border-box;
	line-height: 1.6;
}

table.tb02 .lst_block span{
	display: block;
	font-weight: bold;
}

table.tb02{
    border-collapse: collapse;
    margin: .25rem auto;
	font-size:16px;
	border-top:1px solid #999;
	border-left: 1px solid #999;
	width: 100%;
	}

.tb02 th{
	background-color:#efefef;
	padding: 1rem 0;
	border-bottom: 1px solid #999;
    border-right: 1px solid #999;
	width: 400px;
	  border-collapse: collapse;
  border-spacing: 0;
}

.tb02 td{
	width: 50%;
	padding: 1rem 0;
	border-bottom: 1px solid #999;
    border-right: 1px solid #999;
	  border-collapse: collapse;
  border-spacing: 0;
}

.service{
	width:800px;
	max-width: 95%;
}

.service p{
	text-align: left;
}

.service_block{
	margin-bottom: 6rem;
}

.sub_at{
	margin-left: 1rem;
	text-indent: -1rem;
}




















 @media screen and (max-width: 768px) {
	 
#contents {
	clear: both;
	width: 100%;
	text-align: center;
	margin: 0 0% 0px 0%;
	padding-top: 15px;
}
#contents_inner {
	clear: both;
	width: 94%;
	text-align: center;
	margin: 0 3% 50px 3%;
	padding-top: 0px;
}
#toptitle{
	height: 170px;
}
h2 {
	font-size: 31px;
	padding-bottom: 0px;
	line-height: 140%;
	letter-spacing: 0.02em;
	text-align: center;
	margin: 0 auto;
	padding-top: 57px;
	/*color: #7bc16d;*/
	text-shadow: 2px 2px 3px #fff,  -2px 2px 3px #fff,  2px -2px 3px #fff,  -2px -2px 3px #fff;
}
h2 span {
	display: block;
	font-family: 'Crimson Text', serif;
	font-size: 18px;
	font-weight: normal;
	padding-bottom: 0px;
	line-height: 140%;
	/*color: #222;*/
	letter-spacing: 0.08em;
}

/*
 * path
 */
#path {
	display: none;
}
.sub_top_txt {
	font-size: 15px;
	padding: 0.0em 0.0em 0.0em 0.0em;
	text-align: center;
	margin: 0 auto;
	line-height: 140%;
}
.sub_f_txt {
	font-size: 13px;
	padding: 0.3em 0.0em 1.5em 0.0em;
	text-align: left;
	margin: 0 auto;
	line-height: 150%;
}
/*
 * about.html
 */

.about {
    margin-bottom: 2rem;
} 

#sub_box01 {
	text-align: center;
	padding: 10px 0px 30px 0;
	/*background-color: rgba(255,255,255,0.4);
	background: url(../images/cat_box01_bg.png) 0 0 no-repeat;*/
	width: 100%;
}
.subttl {
	text-align: center;
	font-size: 28px;
	font-weight: 600;
	padding: 0.0em 0 0.0em 0.0em;
	line-height: 145%;
	position: relative;
	display: inline-block;
	margin-bottom: 1.5em;
	letter-spacing: 0.04em;
}
dl.tb01 {
	border-bottom: 1px solid #ddd;
	width: 100%;
	font-size: 15px;
	padding: 0px 0px 0px 0px;
	text-align: justify;
	line-height: 150%;
	text-align: center;
	margin: 0 auto 0px auto;
}
dl.tb01 dt {
	border-top: 1px solid #ddd;
	clear: left;
	float: left;
	width: 100%;
	text-align: left;
	margin-left: 0px;
	font-weight: 600;
	display: block;
	padding: 10px 0px 3px 0;
}
dl.tb01 dd {
	border-top: 1px solid #ddd;
	margin-left: 0%;
	text-align: left;
	width: 100%;
	padding: 0px 0px 10px 0;
}
.ab_topimage {
	text-align: center;
	margin: 10px auto 10px auto;
}
.ab_toptxt {
	font-size: 18px;
	font-weight: bold;
	font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
	text-align: center;
	padding: 3px 15px 0px 15px;
	margin: 0px auto;
	color: #cd161b;
}
.staff_img {
	float: none;
	text-align: center;
	margin: 10px auto 0 auto;
	padding: 0 0px 0px 0;
}
.staff_profile {
	float: none;
	width: 100%;
}
.staff_profile dl {
	text-align: left;
	font-size: 15px;
	font-weight: 500;
}
.staff_profile dl dt {
	clear: both;
	color: #196517;
}
.staff_profile dl dd {
	line-height: 160%;
}
.comment .com_txt span {
	color: #196517;
	font-size: 15px;
}
.map01 {
	float: none;
	position: relative;
	padding-bottom: 75%;/*16:9 = 56.25%、4:3 = 75%*/
	height: 0;
	overflow: hidden;
}
.map01 iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100% !important;
	height: 100% !important;
}

#sub_box01 p{
	
	text-align: justify;
	 }



/*
 * faq.html
 */	
.top_q {
	clear: both;
	/*background-color: #bf9a0b;*/
	margin-top: 15px;
	margin-bottom: 15px;
	border-bottom: 1px solid #ddd;
}
.top_q .top_q_l {
	float: none;
	text-align: left;
	padding: 0px 0 5px 15px;
}
.top_q .top_q_r {
	float: none;
	font-size: 15px;
	font-weight: bold;
	text-align: justify;
	padding: 0px 15px 20px 15px;
	line-height: 145%;
	width: 100%;
}
.top_q .top_a_l {
	clear: both;
	float: none;
	text-align: left;
	padding: 0px 0 5px 15px;
}
.top_q .top_a_r,.top_q .top_a_r_l{
	float: none;
	font-size: 14px;
	text-align: justify;
	padding: 0px 15px 20px 15px;
	line-height: 160%;
	width: 100%;
}
	 
	 
}
 @media screen and (max-width: 640px) {
	 
	 
	 
	 
/*
 * voice.html
 */	 
	 
.voice_block {
	clear: both;
	padding: 25px 0px 0px 0px;
	
}

.voice_block ul {
	
	
}


.voice_block ul li {
    display: block;
    width: 100%;
    padding: 0px 0px 0px 0px;
    vertical-align: top;
    text-align: center;
    margin: 0 auto -2rem;
}



.voice_box {
	padding: 20px 20px;
	text-align: center;
	/*border: 5px solid #bfe1ef;*/
	/*width: 280px;*/
	/*height: 190px;*/
	background-color: #f8f8f8;
	border-radius: 20px;
}



.voice_icon {
	padding: 0px 0px 0px 0px;
	text-align: right;
	position: relative;
	bottom: 60px;
	right: 30px;
}




.voice_txt {
	padding: 0px 0px 0px 0px;
	text-align: justify;
	font-size: 15px;
	font-weight: 400;
	line-height: 1.6;
}


.voice_txt span {
	display: block;
	font-size: 19px;
	font-weight: 600;
	line-height: 1.4;
	color: #eb4335;
}


.voice_prof {
	padding: 10px 0px 0px 0px;
	text-align: left;
	font-size: 15px;
	font-weight: 400;
	line-height: 1.6;
}


/*
 * voice.html
 */	 
	 
table.tb02{
	width: 100%;
	}



.tb02 th{
	display:block;
	width: 100%;
}

.tb02 td{
	border-left: 1px solid #999;
	display:block;
	width: 100%;
}
	 
	 
	 
	 
	 

	 
	 
	 
	 
	 
}
 @media screen and (max-width: 480px) {
h2 {
	font-size: 24px;
	padding-bottom: 0px;
	line-height: 140%;
	letter-spacing: 0.00em;
	text-align: center;
	margin: 0 auto;
	padding-top: 57px;
	/*color: #7bc16d;*/
	text-shadow: 2px 2px 3px #fff,  -2px 2px 3px #fff,  2px -2px 3px #fff,  -2px -2px 3px #fff;
}
}
