/* CSS Document */
html{ height:100%;}
body{ background:#fff; height:100%; color:#515457; position:relative;}
a{ color:#515457;}
h1,h2,h3,p{ line-height:1.2em;}
img{ max-width:100%; vertical-align:bottom; image-rendering: -webkit-optimize-contrast;}
.contents{ width:930px; max-width:90%; margin:0 auto; padding-bottom:60px;}
.sp{ display:none;}
.wrap{ width:1192px; max-width:100%; margin:0 auto;}

p.text{ width:800px; max-width:95%; font-size:1.6rem; line-height:2em; text-align:center; margin:0 auto 40px;}
h1.title{ margin:80px auto 20px; max-width:90%;}

/*トグルボタン*/
#navi_toggle{ width:50%; margin:60px 0 0 auto; position:relative; z-index:1; display:none;}
#navi_toggle ul{ margin:0px 15px 0 0;}
#navi_toggle ul li{ font-size:1.4rem; line-height:1.2em; padding:5px 0;}
#menubtn{
	width:40px;
	height:41px;
	 display:none;
    position: absolute;
	cursor:pointer;
    top: 10px;
    right: 10px;
    z-index: 3;
	border:1px solid #7d8488;
    border-radius: 4px;        /* CSS3草案 */  
    -webkit-border-radius: 4px;    /* Safari,Google Chrome用 */  
    -moz-border-radius: 4px;   /* Firefox用 */
	font-family:Arial, Helvetica, sans-serif;
	}
#menubtn #menubtn_line{
    width: 40px;
    height:40px;
    position: absolute;
    top: 0px;
    right: 0px;
	
}
#menubtn #menubtn_line span {
    display: block;
    background: #7d8488;
    width:   23px;
    height: 2px;
    position: absolute;
    left: 9px;
    transition: all 0.4s;
    -webkit-transition: all 0.4s;
    -moz-transition: all 0.4s;
}
#menubtn p{color:#fff; position:absolute; bottom:3px; left:8px;}
#menubtn #menubtn_line span:first-child {
    top: 12px;
}
#menubtn #menubtn_line span:nth-child(2) {
    margin-top: -1px;
    top: 50%;
}
#menubtn #menubtn_line span:last-child {
    bottom: 12px;
}
#menubtn.active #menubtn_line span:first-child {
    -webkit-transform: translateY(7px) rotate(45deg);
    -moz-transform: translateY(7px) rotate(45deg);
    -ms-transform: translateY(7px) rotate(45deg);
    transform: translateY(7px) rotate(45deg);
}
#menubtn.active #menubtn_line span:nth-child(2) {
    opacity: 0;
}
#menubtn.active #menubtn_line span:last-child {
    -webkit-transform: translateY(-7px) rotate(-45deg);
    -moz-transform: translateY(-7px) rotate(-45deg);
    -ms-transform: translateY(-7px) rotate(-45deg);
    transform: translateY(-7px) rotate(-45deg);
}


/*ヘッダー*/
header{ width:1192px; max-width:100%; margin:0 auto; padding:30px 0; position:relative; overflow:hidden; text-align:right; background:url(../images/header_bg.jpg) no-repeat bottom left; background-size:cover;}
header .logo{ float:left; margin-left:170px;}
header ul.nav{ margin:0 10px 0 auto;}
header ul.nav li{ display:inline-block; padding:0 10px; line-height:29px; font-size:1.4rem; vertical-align:top; }
header ul.nav li.tel{ font-size:1.2rem; line-height:1em;}
header ul.s_nav{ margin:15px 10px 15px 0;}
header ul.s_nav li{ display:inline-block; margin-right:5px; border:1px solid #515457; font-size:14px; line-height:1.4em;
    border-radius: 15px; -webkit-border-radius: 15px; -moz-border-radius: 15px;
}
header ul.s_nav li a{ display:block; padding:6px 15px 6px 35px; position:relative; }
header ul.s_nav li a:before{ position:absolute; left:10px; top:5px; content:""; background:url(../images/contact_icon.png) no-repeat; width:25px; height:27px; background-size:contain;}

/*フッター*/
footer{ width:1192px; max-width:100%; overflow:hidden; padding:50px 0 130px; background:url(../images/footer_bg.jpg) no-repeat bottom right; margin:0 auto;}
footer ul.nav{ margin:10px auto; overflow:hidden; text-align:center; font-size:1.4rem;}
footer ul.nav li{ display:inline-block; margin-right:10px; margin-bottom:10px;}

/*トップページ*/
#top .top_mainimage{ overflow:hidden; margin-bottom:20px;}
#top .top_mainimage .gaikan{ float:right; max-width:50%; border-radius: 20px; -webkit-border-radius: 20px; -moz-border-radius: 20px; margin-top:10px; padding:0;}
#top .top_mainimage h1{ max-width:50%; padding:60px 0;  margin:0 50% 0 0; clear:none;}

#top .goaisatu img{ display:block; float:left; margin:20px 20px 40px; max-width:35%;}
#top .goaisatu  p.text{ padding:7% 0 10px; width:auto;}

#top p.text{ width:800px; max-width:95%; font-size:1.6rem; line-height:2em; text-align:left; margin:0 auto 30px;}
#top h1{ text-align:left; clear:both;}
#top h2{ width:800px; font-size:2.2rem; max-width:95%; margin:35px auto 10px; text-align:left;}
#top .image_wrap{ width:800px; max-width:95%; position:relative; text-align:left; margin:0 auto;}
#top img.top_image{ max-width:65%; margin-right:35%;}
#top .sec6 img.top_image{ border-radius: 20px; -webkit-border-radius: 20px; -moz-border-radius: 20px;}

#top section{ margin:30px auto 60px;}
#top .sec4 .more{ position:relative;}
#top .more{ width:210px; border:1px solid #515457; font-size:1.7em; position:absolute; bottom:0; right:0; margin:30px 0 0 auto;}
#top .more a{ display:block; padding:25px 30px;}
#top .more span{ display:block; width:70px; margin:0 auto 0; padding:5px 0 0 0; font-size:0.6em; text-align:right;}

.contact_btn{ width:380px; max-width:95%; margin:20px auto; border:2px solid #515457; font-size:2.4em; font-weight:bold; position:relative; text-align:center; border-radius: 40px; -webkit-border-radius: 40px; -moz-border-radius: 40px;}
.contact_btn a{ display:block; padding:33px 30px 33px 70px;}
.contact_btn a:before{  content:""; background:url(../images/contact_icon2.png) no-repeat; width:40px; height:40px; background-size:contain; position:absolute; left:40px; top:25px; z-index:-1;}

#top .sec7{ overflow:hidden;}
#top .sec7 .top_image{ max-width:65%; margin:20px 2% 0 0 ;}
/*#top .sec7 .energy_btn{ max-width:32%;}*/

#top #facebook ul {
	padding: 0;
	list-style: none;
	margin-top: .7rem;
	margin:30px auto;
	text-align:center;
}

#top #facebook ul li{ width:270px; max-width:30%; display:inline-block; margin-right:20px;}
#top #facebook ul li img{ width:260px; height:180px; object-fit: cover; border-radius: 20px; -webkit-border-radius: 20px; -moz-border-radius: 20px;}
#top #facebook a {
	padding-bottom: .5rem;
}
#top #facebook p.time{ text-align:center; font-size:1.1em;}
#top #facebook p{
	max-width:100%;
	margin:10px 0;
	text-align:left;
	font-size:1.1em; line-height:1.2em;
}

#top #facebook .text-overflow {
  overflow: hidden;
  width:260px;
	height:3.6em;
}
#top .sec9{ text-align:left;}
.gmap{ width:570px; margin:30px 0; float:left;}

#top ul.banner li{ display:inline-block; margin:0 15px 15px 0; border:1px solid rgba(204,204,204,1);}
#top ul.banner{ width:980px; max-width:95%; margin:30px auto;}




#news #facebook ul {
	width:840px;
	max-width:90%;
	padding: 0;
	list-style: none;
	margin-top: .7rem;
	margin:30px auto;
}

#news #facebook ul li{ max-width:100%; clear:both; overflow:hidden; padding:30px 0;}
#news #facebook ul li img{ width:390px; max-width:45%; height:245px; object-fit:cover; object-position:50% 0; border-radius: 20px; -webkit-border-radius: 20px; -moz-border-radius: 20px;}
#news #facebook ul li:nth-of-type(1) img{ float:left;}
#news #facebook ul li:nth-of-type(2) img{ float:right;}
#news #facebook ul li:nth-of-type(3) img{ float:left;}
#news #facebook p.time{ text-align:left; font-size:1.5em; font-weight:bold; color:#000;}
#news #facebook p{
	width:370px;
	max-width:48%;
	padding-left:3%;
	margin:10px 0;
	text-align:left;
	font-size:1.1em; line-height:1.4em;
}
#news #facebook li:nth-of-type(1)  p{ margin-left:45%;}
#news #facebook li:nth-of-type(2)  p{  margin-right:45%;}
#news #facebook li:nth-of-type(3)  p{ margin-left:45%;}
#news .old_news_btn{ border:2px solid #515457; width:390px; margin:40px auto; max-width:80%;}
#news .old_news_btn a{ display:block; width:100%; height:100%;}



#prayer .contents img{ margin:40px auto;}


#event article{ overflow:hidden; margin-bottom:40px;}
#event .event_list h1{ font-size:2.2rem; line-height:1.4em; color:#49BBBC; text-align:left; margin:7px auto 15px;}
#event .event_list img{ width:390px; max-width:40%; height:auto; float:left; border-radius: 20px; -webkit-border-radius: 20px; -moz-border-radius: 20px;}
#event .event_list p.time{ text-align:left; font-size:1.5em; font-weight:bold; color:#000; margin-bottom:20px;}
#event .event_list .text{
	width:370px;
	max-width:53%;
	padding-left:3%;
	margin:10px 0 10px 40%;
	text-align:left;
	font-size:1.4em; line-height:1.6em;
}

.page_navi .page-numbers{ font-size:1.4rem; padding:3px 5px;}
.page_navi .current{ font-weight:bold; text-decoration:underline;}




#greeting .contents{ width:880px; max-width:95%; margin:0 auto; text-align:center;}
#greeting{ text-align:left;}
#greeting img.line{ margin:10px 0 10px 0;}
#greeting h1{ text-align:center;}
#greeting h2{ font-size:1.8rem; line-height:1.4em; margin:10px 0 20px 0;}
#greeting p{ font-size:1.4rem; line-height:1.8em;}
#greeting .image1{ float:left; max-width:45%;}
#greeting .sec1,#greeting .sec2{ margin-left:330px; text-align:left;}

#greeting .sec3,#greeting .sec4,#greeting .sec6{ overflow:hidden; margin:30px 0; text-align:left;}
#greeting .contact_btn{ margin:100px auto;}
#greeting .left_box{ width:460px; max-width:55%; margin-right:4%; float:left;}
#greeting .right_box{ width:460px; max-width:55%; margin-left:4%; float:right;}
#greeting .image2,#greeting .image3,#greeting .image4,#greeting .image5{  border-radius: 20px; -webkit-border-radius: 20px; -moz-border-radius: 20px;}
#greeting .image2,#greeting .image3,#greeting .image5{ max-width:40%;}
#greeting .image4{ margin:30px 0;}
#greeting .sec5{ text-align:center; margin:30px auto;}

#deration h2{ font-size:2rem; line-height:1.4em; margin:30px auto 40px;}
#deration dl{ width:500px; display: flex; flex-wrap: wrap; max-width:95%; margin:30px auto; border:1px solid #ccc; font-size:1.4rem; line-height:1.4em; text-align:left}
#deration dl dt{ width: 30%; border-bottom:1px solid #ccc; padding:2%; box-sizing: border-box;}
#deration dl dd{width:70%; padding:2%; border-left:1px solid #ccc; border-bottom:1px solid #ccc; box-sizing: border-box;}
#deration dl dt:nth-of-type(2){ border-bottom:none;}
#deration dl dd:nth-of-type(2){ border-bottom:none;}

/*プライバシーポリシー*/
#privacy .contents{ width:820px; max-width:90%; margin:0 auto;}
#privacy img.image1{ margin:30px auto 50px; border-radius: 15px; -webkit-border-radius: 15px; -moz-border-radius: 15px;}
#privacy h2{ margin:30px auto 5px; font-size:1.8em; line-height:1.6em; text-align:left;}
#privacy p{ font-size:1.3em; line-height:2em; text-align:left;}



#thanks h1{ text-align:center;}
#thanks { width:600px; max-width:90%; text-align:left; font-size:1.2rem; padding-bottom:100px; margin:0 auto;}
#thanks h2{ font-size:1.8rem; line-height:1.4em;  margin:60px 0 30px; font-weight:bold; letter-spacing:0.2em;}
#thanks p{ font-size:1.4rem; line-height:1.8em; margin:0 auto; padding:15px 0;}

#tera .sec1{ margin:30px auto;}
#tera h1.title{ margin-bottom:40px;}
#tera img.line{ margin:10px 0 10px 0;}

#tera p{ font-size:1.4rem; line-height:1.8em; max-width:55%; float:left; text-align:left;}
#tera .image1{ width:310px; max-width:40%; margin-left:4%; border-radius: 20px; -webkit-border-radius: 20px; -moz-border-radius: 20px;}
#tera img.banner{ width:303px; border:3px solid #E8E195; max-width:80%; margin:20px auto; border-radius: 20px; -webkit-border-radius: 20px; -moz-border-radius: 20px;}

#tera .main_image{ width:920px; max-width:100%; border:5px solid #f6830c; position:relative;}
#tera .tera_btn{ position:absolute; bottom:1%; right:2.2%; max-width:17%;}
br.sp{ display:none;}

#consultation p{ width:630px; text-align:left;}

#consultation .contact_btn{ width:280px; max-width:95%; margin:20px auto; border:2px solid #515457; font-size:2.4em; font-weight:bold; position:relative; text-align:center; border-radius: 40px; -webkit-border-radius: 40px; -moz-border-radius: 40px;}
#consultation .contact_btn a{ display:block; padding:33px 30px 33px 70px;}
#consultation .contact_btn a:before{  content:""; background:url(../images/contact_icon1.png) no-repeat; width:40px; height:40px; background-size:contain; position:absolute; left:40px; top:25px; z-index:-1;}

/*1020以下 */
@media screen and (max-width: 1020px){








}


/*960以下
 */
@media screen and (max-width: 960px){

footer ul.nav{ text-align:right;}











}



/*767以下 ipadを含まない*/
@media screen and (max-width: 767px){
br.sp{ display:block;}
br.spno{ display:none;}
#menubtn{ display:block;}
header ul.nav,header ul.s_nav{ display:none;}
header #navi_toggle ul.s_nav{ width:150px; display:block; margin-left:auto; margin:10px 10px 0 auto;}
header #navi_toggle ul.s_nav li{ display:block; text-align:left; margin:0 0 5px 0;}
header{ background:url(../images/header_bg2.jpg) no-repeat left bottom; background-size:cover;}	
header .logo{margin-left:60px;}

#top p.text{ font-size:1.5em; line-height:1.8em; }
#top .more{ position:relative; bottom:0; right:0;}
#top img.top_image{ max-width:95%; margin-right:0%;}

#top .sec7 .more{ clear:left;}
#top #facebook ul li{ width:31%; margin-right:2%;}
#top #facebook ul li img{ width:100%; height:130px; object-fit: cover; border-radius: 20px; -webkit-border-radius: 20px; -moz-border-radius: 20px;}





















/*グーぐるマップ*/
.gmap {
position: relative;
padding-bottom: 60%;
height: 0;
overflow: hidden;
width:490px;
max-width:100%;
margin-bottom:40px;
border:1px solid #CCCCCC;
}
 
.gmap iframe,
.gmap object,
.gmap embed {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
}





}
/*660以下 */
@media screen and (max-width: 660px){
#top .sec7 .top_image{ max-width:100%; float:none; margin:20px 0 0 0 ;}
#top .sec7 .energy_btn{ max-width:50%;}
#greeting .sec1,#greeting .sec2{ margin-left:48%;}

#tera p{ max-width:90%; float:none;}
#tera .image1{ width:310px; max-width:90%; margin-left:0; margin-top:20px;}

}

/*560以下 */
@media screen and (max-width: 560px){
#top .top_mainimage h1{ max-width:100%; text-align:center; margin:0 auto 10px; padding:0;}
#top .top_mainimage img.gaikan{ float:none; width:300px; max-width:80%; margin:20px auto 10px;}
#top p.text{ font-size:1.4em; line-height:1.6em; }
footer{ padding:40px 0 70px;}
	
#top #facebook ul li img{ width:100%; height:110px; object-fit: cover; border-radius: 10px; -webkit-border-radius:10px; -moz-border-radius:10px;}
	
#greeting .left_box{ width:460px; max-width:100%; margin-right:0%; float:none;}
#greeting .right_box{ width:460px; max-width:100%; margin-left:0%; float:none;}
#greeting .image2,#greeting .image3,#greeting .image5{ max-width:100%; margin-top:20px;}
	
	
	
	
	
	
	
	


/*414以下 iphone縦*/
@media screen and (max-width: 414px){
header{ background:url(../images/header_bg_sp.jpg) no-repeat right bottom; background-size:cover;}
#top_h header{ height:370px;}
header .logo{margin-left:30px;}
.contact_btn{ width:270px; font-size:1.8em; border-radius: 30px; -webkit-border-radius: 30px; -moz-border-radius: 30px;}
.contact_btn a{ padding:23px 20px 23px 40px;}
.contact_btn a:before{  width:30px; height:30px; background-size:contain; position:absolute; left:13px; top:15px;}

#news #facebook ul li img{ width:390px; max-width:90%; height:245px;}
#news #facebook ul li:nth-of-type(1) img{ float:none;}
#news #facebook ul li:nth-of-type(2) img{ float:none;}
#news #facebook ul li:nth-of-type(3) img{ float:none;}
#news #facebook p{
	max-width:90%;
	padding-left:0;
	margin:10px auto;
}
#news #facebook li:nth-of-type(1)  p{ margin-left:auto;}
#news #facebook li:nth-of-type(2)  p{  margin-right:auto;}
#news #facebook li:nth-of-type(3)  p{ margin-left:auto;}

#event .event_list img{ max-width:90%; float:none; border-radius:}
#event .event_list .text{
	max-width:90%;
	padding-left:0%;
	margin:10px auto;
}

#greeting .image1{ float:none; max-width:55%;}
#greeting .sec1,#greeting .sec2{ margin-left:0;}











}

/*375以下 iphone縦*/
@media screen and (max-width: 375px){
#class_including .photo{ text-align:center; margin:0 auto;}
#class_including dl dt{ float:none; padding:10px 0 0 0; margin-bottom:5px; border-bottom:1px dotted #515457;}
#class_including dl dd,#class_including dl.distance dd,#class_including dl.other dd{ margin-left:10px;}

#mypage .photo{ text-align:center; margin:0 auto;}
#mypage dl dt{ float:none; padding:10px 0 0 0; margin-bottom:5px; border-bottom:1px dotted #515457;}
#mypage dl dd,#mypage dl.distance dd,#mypage dl.other dd{ margin-left:10px;}


}
