@charset "utf-8";


/* ! Common Classes
----------------------------------------------- */

body,
html {
	min-width: 1000px;
}

html {
	height: 100%;
	-ms-text-size-adjust: 100%;
	-webkit-text-size-adjust: 100%;
	font-size: 62.5%;
}

body {
	height: 100%;
	margin: 0;
	color: #333333;
	font-size: 10px;
	font-size: 1.0rem;
	line-height: 1;
	font-family: "メイリオ", Meiryo, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", Osaka, "ＭＳ Ｐゴシック", "MS PGothic", Verdana, sans-serif;
	font-synthesis: none;
	text-rendering: optimizeLegibility;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	-moz-font-feature-settings: 'liga', 'kern';
	-webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}

body.font_small {
	font-size: 90%;
}

body.font_large {
	font-size: 120%;
}

@media screen and (max-width: 639px) {

	body {
		font-size: 100% !important;
	}

	img {
		max-width: 100%;
	}

}

input,
button,
select,
textarea {
	font-size: inherit;
	line-height: inherit;
	font-family: inherit;
}

*,
*:after,
*:before {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}



/*----------------------------------------------------
 header
----------------------------------------------------*/

header {
	width: 100%;
	background: linear-gradient(to bottom, #c9e89a 1%, #f6fce7 100%);
}

#headerTop {
	width: 960px;
	margin: 0 auto;
	font-size: 12px;
	font-size: 1.2em;
	padding: 15px 0;
}

#headerInner {
	width: 960px;
	margin: 0 auto;
	padding: 0 0 20px 0;
}
#headerInner-wrap { display: flex;	justify-content: space-between;	align-items: center;

}

#headerInner .header_right {
	font-size: 14px;
	font-size: 1.4em;
	padding: 20px 0 0 0;
}

#headerInner .header_right img {
	vertical-align: top;
}

#Top_mv img {
	width: 100%;
	max-width: 100%;
}

#pc_nav {
	border-bottom: 5px solid #497700;
	background: #77a72b;
	background: linear-gradient(to bottom, #77a72b 0%, #5c9501 100%);
}

#pc_nav nav {
	width: 940px;
	margin:0 auto;
}

#pc_nav nav a {
	color: #fff;
}

#pc_nav nav ul {
	 display: flex;	justify-content: space-between;	align-items: center;
	font-family: serif;
}

#pc_nav nav ul li {
	width: 100%;
	text-align: center;
	position: relative;
}

#pc_nav nav ul li a { display:block; 
	font-size: 18px;
	font-size: 1.8rem;
	line-height: 1.1;
	padding: 18px 0 16px 0;
}

#pc_nav nav ul li:after {
	content: '｜';
	color: #8eb64f;
	position: absolute;
	right: -13px;
	top: 24%;
	font-size: 25px;
}

#pc_nav nav ul li:first-child:before {
	content: '｜';
	color: #8eb64f;
	position: absolute;
	left: -13px;
	top: 24%;
	font-size: 25px;
}

#pc_nav nav ul li span {
	font-size: 15px;
	font-size: 1.5rem;
}

#pc_nav li.active {
	background-color: #497700 !important;
}

#pc_nav li.active a {
	color: #fff;
}

#pc_nav li:hover {
	background-color: #497700;
}

#h_btn {
	display: flex;
	justify-content: flex-end;
	align-items: center;
	/*padding-top: 10px;*/
}

#h_btn > div {
	margin-left: 20px;
}

#h_btn .tel {
	font-size: 28px;
	font-size: 2.8rem;
	color: #660000;
	font-family: serif;
	font-weight: bold;
	text-align: right;
}

#h_btn .tel span {
	font-size: 15px;
	font-size: 1.5rem;
	color: #333333;
	font-family: sans-serif;
	font-weight: normal;
}

#sp_header {
	display: none;
}


/*----------------------------------------------------
 footer
----------------------------------------------------*/

footer {
	width: 100%;
	background-color: #669c10;
}

#footer01 .Inner {
	position: relative;
}

#pagetop {
	position: absolute;
	right: 0;
	top: -30px;
}

#footer01 {
	background-color: #669c10;
}

#footer02 {
	width:960px;
	margin:0 auto;
	font-size: 14px;
	font-size: 1.4rem;
	line-height: 1.8;
	color: #fff;
}

#footer02 a {
	color: #fff;
	padding-right: 15px;
}

#footer02 #footer02-wrap {
	padding: 60px 0 50px 0;
	display: flex;
	justify-content: space-between;
}

#footer02 #footer02-wrap .footer02_left {
	border-right: 1px solid #b1cd85;
	padding-right: 75px;
}

#footer02 #footer02-wrap .footer02_left ul {
	display: flex;
	justify-content: space-between;
	margin-bottom: 30px;
}

#footer02 #footer02-wrap .footer02_left ul i {
	color: #004782;
}

#footer02 #footer02-wrap .footer02_right {
	width: 100%;
}

#footer02 .footer02_right_menu > ul {
	/* padding-left: 70px; */  /* 2021.2.5 折返し防止対応 */
	width: 33%;		/* 2021.2.5 折返し防止対応 */
}

#footer02 .footer02_right_menu {
	display: flex;
	justify-content: space-between;

	padding-left: 30px; /* 2021.2.5 折返し防止対応 */
}

#footer03 {
	background-color: #497700;
	text-align: center;
	color: #fff;
	font-size: 13px;
	font-size: 1.3rem;
	padding: 15px;
}

/*----------------------------------------------------
 content
----------------------------------------------------*/

#content {
	width: 100%;
	background-color: #f6fce7;
	padding-bottom: 45px;
}

.Inner {
	width: 960px;
	margin: 0 auto;
}

.Inner:after {
	content: "";
	display: block;
	clear: both;
}

#section01 {
	padding: 30px 0 45px;
	background-color: #f6fce7;
}

#section01 .Inner > ul {
	display: flex;
	justify-content: space-between;
}

#section01 .Inner > ul li:first-child {
	width: 100%;
	margin-right: 40px;
}

#section01 .Intro {
	border-top: 5px solid #a1ce00;
	background-image: url(../img/intro_bg.png);
	background-size: cover;
	padding: 20px 55px;
	margin-bottom: 25px;
}

#section01 .News {
	font-size: 14px;
	font-size: 1.4rem;
}

#section01 .News dl {
	padding: 15px 0;
	border-bottom: 1px solid #e0e0e0;
}

#section01 .News dl div {
	margin: 0 25px;
	height: 151px;
	width: 106px;
}

#section01 .News dl a {
	color: #333;
}

#section01 .News dt {
	font-size: 16px;
	font-size: 1.6rem;
	font-weight: bold;
}

#section01 .News > div {
	background-color: #fff;
	width: 100%;
	padding: 0px 10px 15px;
	height: 390px;
	overflow-y: scroll;
	border-radius: 0px 0 5px 5px;
}

.News dl img {
	max-width: 100%;
	height: auto;
}

.News dt {
	padding: 10px 0;
	margin: 0 0 0 88px;
}

.News dd {
	margin: 0 0 0 88px;
	line-height: 1.8;
}

.News dd span {
	color:#ff0000;
}

#section02 {
	padding: 30px 0;
	background-color: #c8e89a;
}

#section02 .Inner > ul {
	display: flex;
	justify-content: space-between;
}

#section03 {
	background-image: url(../img/temple_bg.png);
	background-size: cover;
}

#section03 .Inner > ul {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}

#section03 .Inner > ul li {
	padding: 42px 0;
}

#section03 dl {
	background-color: #fff;
	border-radius: 5px;
	border-top: 6px solid #95d000;
	font-family: serif;
	text-align: center;
	padding: 18px 20px;
}

#section03 dl dt {
	font-size: 18px;
	font-size: 1.8rem;
	letter-spacing: 8px;
}

#section03 dl dt span {
	font-size: 11px;
	font-size: 1.1rem;
	color: #3d8900;
	letter-spacing: normal;
}

#section03 dl dd img {
	padding-top: 16px;
}

#section04 {
	background-color: #f6fce7;
	padding: 40px 0 0;
}

.bg_w {
	background-color: #fff;
	padding: 20px;
	border-radius: 5px;
	margin-bottom: 35px;
}

.contact_catch {
	line-height:1.3;
	color: #835b15;
	font-size: 22px;
	font-size: 2.2rem;
	font-family: serif;
	text-align: center;
	font-weight: bold;
}

#section04 .tel {
	color: #660000;
	font-size: 40px;
	font-size: 4.0rem;
	font-family: serif;
	text-align: center;
	font-weight: bold;
	line-height: 0.8;
}

#section04 .tel span {
	color: #333333;
	font-size: 18px;
	font-size: 1.8rem;
}

#section04 .bg_w ul {
	display: flex;
	justify-content: center;
}

#section04 .bg_w ul li {
	padding: 30px 20px 0;
	text-align: center;
}

#sub_header {
	padding: 60px 0;
	width: 100%;
	position:relative; z-index:7;
}

#id-22 #sub_header { background:url(../img/sub_bg01.png) right center no-repeat; background-size:auto 100%; }
#id-10 #sub_header { background:url(../img/sub_bg02.png) right center no-repeat; background-size:auto 100%; }
#id-12 #sub_header,
#id-14 #sub_header,
#id-16 #sub_header,
#id-18 #sub_header,
#id-20 #sub_header { background:url(../img/sub_bg03.png) right center no-repeat; background-size:auto 100%; }
#id-7 #sub_header { background:url(../img/sub_bg04.png) right center no-repeat; background-size:auto 100%; }
#id-24 #sub_header { background:url(../img/sub_bg05.png) right center no-repeat; background-size:auto 100%; }
#id-26 #sub_header { background:url(../img/sub_bg06.png) right center no-repeat; background-size:auto 100%; }
#id-28 #sub_header { background:url(../img/sub_bg07.png) right center no-repeat; background-size:auto 100%; }
.sh-blog { background:url(../img/sub_bg08.png) right center no-repeat; }

#sub_header:after { content:""; position:absolute; top:0; left:0; width:100%; height:100%; z-index:8;
background: -moz-linear-gradient(left, rgba(255,255,255,1) 0%, rgba(255,255,255,1) 60%, rgba(255,255,255,0) 100%); /* FF3.6-15 */
background: -webkit-linear-gradient(left, rgba(255,255,255,1) 0%,rgba(255,255,255,1) 60%,rgba(255,255,255,0) 100%); /* Chrome10-25,Safari5.1-6 */
background: linear-gradient(to right, rgba(255,255,255,1) 0%,rgba(255,255,255,1) 60%,rgba(255,255,255,0) 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffffff', endColorstr='#00ffffff',GradientType=1 ); /* IE6-9 */
}


#sub_header .Inner { position:relative; z-index:9; }

#breadcrumb {
	margin-bottom: 10px;
}

#breadcrumb li {
	display: inline-block;
	padding: 0 .25em;
}

#breadcrumb li:after {
	content: "＞";
	padding-left: .5em;
}

#breadcrumb li:last-child:after {
	content: "";
}

#breadcrumb li a {
	color: #333;
}

.breadcrumbInner {
	width: 960px;
	line-height:1.3;
	margin: 20px auto;
	font-size: 14px;
	font-size: 1.4rem;
}

#sub_header h2 {
	font-family: "source-han-serif-japanese", serif;
	color: #5c9502;
	font-size: 40px;
	font-size: 4.0rem;
	letter-spacing: 10px;
}

#sub_header h2 span {
	font-size: 24px;
	font-size: 2.4rem;
}

.News h3 { margin-bottom:0 !important; }
.News h3 a {
	position: absolute;
	right: 12px;
}

.consult_bg {
	background-color: #fff;
	padding: 10px;
	border-radius: 5px;
	margin-bottom: 15px;
}

.consult_bg h4 {
	font-family: "source-han-serif-japanese", serif;
	font-size: 22px;
	font-size: 2.2rem;
	color: #95d000;
	position: relative;
	border-left: 6px solid;
	padding: 2px 0px 2px 15px;
	margin-bottom: 12px;
}

.consult_bg h4 a {
	position: absolute;
	right: 0px;
}

.consult_bg h4 span {
	font-size: 18px;
	font-size: 1.8rem;
	padding-left: 15px;
}

.consult_bg h4 img {
	/* padding-right: 10px; */
}

.consult_bg img {
	width:100%; height:auto; }


.temple_list ul {
	display: flex;
	flex-wrap: wrap;
	/* justify-content: space-between; */
	align-items: stretch;
	margin-bottom: 40px;
	column-gap: 10px;
}

.temple_list ul li {
	width: 225px;
	margin-bottom: 20px;
}

.temple_list dl {
	background-color: #fff;
	border-radius: 5px;
	border-top: 6px solid #95d000;
	font-family: serif;
	/* text-align: center; */
	padding: 18px 20px;
	display: flex;
	justify-content: space-between;
	align-items: center;
}

.temple_list dl dt {
	font-size: 18px;
	font-size: 1.8rem;
	letter-spacing: 8px;
}

.temple_list dl dt span {
	font-size: 11px;
	font-size: 1.1rem;
	color: #3d8900;
	letter-spacing: normal;
}

.accordionbox {
	margin: 10px auto 40px;
}

.accordionbox p {
	margin-bottom: 0;
}

.accordionlist dt {
	display: block;
	line-height:1.8;
	background: #def1ae;
	color: #497700;
	font-weight: bold;
	padding: 10px 0 10px 0;
	margin-bottom: 20px;
	/* border-top: 1px solid #DFDFDF; */
	font-size: 20px;
	font-size: 2rem;
}

.accordionlist dt:first-child {
	border-top: none !important;
}

.accordionlist dt .title {
	/*padding-left: 10px;*/
	float: left;
}

.accordionlist dd {
	display: none;
	background: #fff;
	padding: 0 0 20px 15px;
	font-size: 18px;
	font-size: 1.8rem;
	line-height: 1.5;
}

.accordion_icon,
.accordion_icon span {
	display: inline-block;
	transition: all .4s;
	box-sizing: border-box;
}

.accordion_icon {
	position: relative;
	width: 50px;
	height: 30px;
	float: right;
	/* margin-right: 5px; */
}

.accordion_icon span {
	position: absolute;
	left: 6px;
	width: 50%;
	height: 4px;
	background-color: #74b214;
	/* border-radius: 4px; */
	/* -webkit-border-radius: 4px; */
	-ms-border-radius: 4px;
	-moz-border-radius: 4px;
	-o-border-radius: 4px;
}

.accordion_icon span:nth-of-type(1) {
	top: 18px;
	transform: rotate(0deg);
	-webkit-transform: rotate(0deg);
	-moz-transform: rotate(0deg);
	-ms-transform: rotate(0deg);
	-o-transform: rotate(0deg);
}

.accordion_icon span:nth-of-type(2) {
	top: 18px;
	transform: rotate(90deg);
	-webkit-transform: rotate(90deg);
	-moz-transform: rotate(90deg);
	-ms-transform: rotate(90deg);
	-o-transform: rotate(90deg);
}

/*＋、－切り替え*/

.accordion_icon.active span:nth-of-type(1) {
	display: none;
}

.accordion_icon.active span:nth-of-type(2) {
	top: 18px;
	transform: rotate(180deg);
	-webkit-transform: rotate(180deg);
	-moz-transform: rotate(180deg);
	-ms-transform: rotate(180deg);
	-o-transform: rotate(180deg);
}

.icon_Q,
.icon_A {
	padding-left: 60px !important;
	position: relative;
}

.icon_Q:before {
	position: absolute;
	left: 12px;
	content: url(../img/icon_Q.png);
}

.icon_A:before {
	position: absolute;
	left: 12px;
	content: url(../img/icon_A.png);
}

.accordionbox ul {
	margin-top: 0.5em;
	margin-bottom: 1.5em;
	margin-left: 1em;
}

.accordionbox li {
	position: relative;
	padding: 0.5em 0 0.1em 1.8em;
}

.accordionbox li:before {
	font-family: FontAwesome;
	content: '\f111';
	color: #77b318;
	margin-right: 3px;
	position: absolute;
	top: 0.5em;
	left: 0;
}

.fa-arrow-down {
	display: block;
	padding: 10px 10px 10px 120px;
	color: #77b419;
}

.wpcf7-form textarea { width:100%; }
.wpcf7-submit { width:40%; background:#497700; padding:12px; font-size:1.6rem; color:#fff; }
#wpcf7-f9-p28-o1 form p { text-align:center; margin:0 auto; }



/* Blog */

#blog-l { float:left; width:650px; }
#blog-r { float:right; width:240px; }

#news-ul {}
#news-ul li { padding:0 0 30px; }
#sub-box h2 { line-height:1.3; background:#ddd; padding:10px; margin:0 0 30px; }
.type-news { position:relative; }
.type-news .b-cat-ul { position:absolute; top:-4px; right:0; }
.b-cat-ul li { display:inline-block; vertical-align:top; margin:0 0 0 3px; }
.b-cat-ul li a { display:block; width:6rem; border:1px #497700 solid; text-align:center; margin:0 auto; padding:3px 5px; font-size:1.1rem; color:#497700; font-weight:normal; }
.b-cat-ul li a:hover { background:#497700; color:#fff; transition:0.2s ease-in-out; }
.news-cat {}
#news-ul h3 a { color:#fff; }
#news-ul h3 a:hover { text-decoration:underline; }
.news-date { font-size:1.3rem; padding:0 0 10px; color:#aaa; }
.news-thumb { display:inline-block; vertical-align:top; width:25%; background:#eee; margin:0 3% 0 0; }
.news-thumb a { display:block; }
.news-thumb img { width:100% !important; height:auto; }
#news-ul .news-desc { display:inline-block; vertical-align:top; width:70%; }
.news-desc { padding:0 0 30px; }
.news-desc p { line-height:1.8; font-size:1.5rem; }
.btn-readmore { text-align:right; }
.btn-readmore a { display:inline-block; width:180px; background:#497700; text-align:center; margin:auto; padding:10px 20px; font-size:1.5rem; color:#fff; position:relative; }
.btn-readmore a:after { content:"▼"; position:absolute; bottom:0; right:0; color:#fff; transform:rotate(-45deg) scaleX(1.2) scaleY(0.7); }
.btn-readmore a:hover { background:#669c10; color:#fff; transition:0.2s ease-in-out; }
.news-tags {}
#page-navi { text-align:center; margin:auto; padding:30px 0; }
#page-navi span {}
#page-navi a { display:inline-block; background:#f7f7f7; padding:4px; font-size:1.5rem; color:#333; }
#page-navi a:hover { background:#497700; color:#fff; }
.current { display:inline-block; background:#497700; padding:4px; font-size:1.5rem; color:#fff; }

#blog-single-wrap { padding:50px 0; }
.post-edit-link { display:block; width:10em; background:#497700; text-align:center; margin:0 auto 45px; padding:5px 10px; font-size:1.5rem; color:#fff !important; }

#btn-prev-next {}
#prev_wrap { float:left; text-align:left; }
#prev_title { text-align:left; }
#prev_box {}
#next_wrap { float:right; text-align:right; }
#next_title { text-align:right; }
#next_box { text-align:right; }
.pn_wrap { width:40%; }
.pn_wrap dt { background:#669c10; margin:0 auto 15px; padding:4px 10px; font-size:1.5rem; color:#fff; }
.pn_wrap dd { line-height:1.3; font-size:1.5rem; }
.pn_wrap dd a:hover { text-decoration:underline; }
.pn_img { margin:0 0 10px; }
.pn_tit {}

.widget { padding:0 0 40px; }
.widget h3 { background:#669c10; margin:0 0 1em; padding:10px; font-size:1.6rem; color:#fff; font-weight:normal; }

#sidebar-news ul {}
#sidebar-news li { margin:0 0 1.5em; }
#sidebar-news dl { line-height:1.3; }
#sidebar-news dt { float:left; width:25%; margin:0 3% 10px 0; }
#sidebar-news dt img { width:100%; height:auto; }
#sidebar-news dd { padding:0 0 0 28%; }
.side-date { padding:0 0 0.5em; font-size:1.3rem; color:#aaa; }
.side-tit {}
.side-tit a { font-size:1.5rem; }
.side-tit a:hover { text-decoration:underline; }

.calendar_wrap caption { padding:5px 0 10px; font-size:1.5rem; }
.calendar_wrap th, .calendar_wrap td { border:2px #fff solid; text-align:center; margin:auto; padding:0; font-size:1.4rem; }
.calendar_wrap tbody td { height:2em; line-height:2em; }
.calendar_wrap tbody a { display:block; width:100%; height:100%; background:#497700; color:#fff; }
.calendar_wrap #today { background:#ffcc00; color:#fff; }
.calendar_wrap tfoot td { padding:1em 0 0; }
.calendar_wrap #prev { text-align:left; }
.calendar_wrap #next { text-align:right; }

.widget_archive ul, .widget_categories ul {}
.widget_archive li, .widget_categories li { line-height:1.8; position:relative; }
.widget_archive li:before, .widget_categories li:before { content:">"; position:absolute; top:50%; left:0; margin:-1rem 0 0; }
.widget_archive li a, .widget_categories li a { display:inline-block; padding:0 0 0 2rem; font-size:1.5rem; }
.widget_archive li a:hover, .widget_categories li a:hover { text-decoration:underline; }




/* SAMPLE */

.dis-pc { display:block; }
.dis-sp { display:none; }
.brk { display:block; }
.nbrk { display:inline; }

a:hover img { opacity:0.7; transition:0.2s ease-in-out; }
#Sub img { width:auto; max-width:100%; height:auto; }
a[href^="tel:"] { pointer-events:none; cursor:default; }

#header-nav ul, #header-nav ul li,
#footer-nav ul, #footer-nav li
{ list-style-type:none; }


.h2-basic { line-height:1.3; border-radius:5px; margin:0 0 20px; padding:15px; font-size:2.6rem; color:#fff; font-weight:normal; 
background: #497700; /* Old browsers */
background: -moz-linear-gradient(top, #497700 0%, #5a7232 100%); /* FF3.6-15 */
background: -webkit-linear-gradient(top, #497700 0%,#5a7232 100%); /* Chrome10-25,Safari5.1-6 */
background: linear-gradient(to bottom, #497700 0%,#5a7232 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#497700', endColorstr='#5a7232',GradientType=0 ); /* IE6-9 */}
.h3-basic {
	line-height:1.2;
	font-family: "メイリオ", Meiryo, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", Osaka, "ＭＳ Ｐゴシック", "MS PGothic", Verdana, sans-serif;
	border-bottom: 3px solid #497700;
	margin-top: 40px;
	margin-bottom: 40px;
	padding: 13px 0 13px 52px;
	position: relative;
	border-radius: 5px 5px 0 0;
	background: #8ec141;
	background: linear-gradient(to bottom, #8ec141 0%, #74b213 100%);
	font-size: 24px;
	font-size: 2.4rem;
	color: #ffffff;
	font-weight: normal;
}
.h3-basic:before {
	position: absolute;
	top:15px; left:12px;
	content: url(../img/h3_img.png);
}
.h3-basic:first-child { margin-top:0; }
.h4-basic { border-left:5px #497700 solid; margin-bottom:30px; padding-left:10px; font-size:16px; font-size:1.6rem; color:#497700; position:relative; }
.h4-basic:after { content:''; position:absolute; bottom:-10px; left:0; width:100%; height:0; border-top:1px solid #ccc; border-bottom:1px solid #fff; }
.h5-basic { line-height:1.3; padding:1em 0; font-size:1.6rem; color:#497700; }

.btn-basic { text-align:center; margin:auto; font-size:1.5rem; }
.btn-basic a { display:block; width:100%; line-height:1.3; background:#497700; text-align:center; margin:auto; padding:15px 10px; color:#fff; position:relative; }
.btn-basic a:after { content:"▼"; position:absolute; bottom:0; right:0; color:#fff; transform:rotate(-45deg) scaleX(1.2) scaleY(0.7); }
.btn-basic a:hover { opacity:0.8; transition:0.2s ease-in-out; }
.btn-more1 { width:70%; padding:0 0 30px; }
.btn-more2 { padding:0 0 30px; }
.btn-more2 li { display:inline-block; vertical-align:top; width:48%; margin:0 0.5%; }

.txt-basic { line-height:1.85; font-size:1.5rem; color:#333; }
.txt-basic p { padding:0 12px 20px; }
.txt-basic ol, .txt-basic ul { margin:0 0 0 2em; padding:0 0 20px; }
.txt-basic ul li { list-style-type:disc; }
.txt-basic ol li { list-style-type:decimal; }
.txt-basic ol ul, .txt-basic ol ol, .txt-basic ul ul, .txt-basic ol ol { margin:0; }
.check_01 { margin-left:0 !important; list-style-type:none; }
.check_01 li { background:url(../img/common/ico_check_01.png) 0 5px no-repeat; padding:0 0 0 30px; list-style-type:none; }

.txt-basic dl { padding:0 0 10px; }
.txt-basic dt { padding:0 0 5px; }
.txt-basic dd { padding:0 0 20px; }

.img-l dt { float:left; text-align:center; margin:0 auto 20px; }
.img-l dt img { width:100%; height:auto; margin:0 0 10px; }
.img-l dd { float:right; }
.img-r dt { float:right; text-align:center; margin:0 auto 20px; }
.img-r dt img { width:100%; height:auto; margin:0 0 10px; }
.img-r dd { float:left; }

.img20 dt { width:20%; }
.img20 dd { width:77%; }
.img25 dt { width:25%; }
.img25 dd { width:72%; }
.img30 dt { width:30%; }
.img30 dd { width:67%; }
.img35 dt { width:35%; }
.img35 dd { width:62%; }
.img40 dt { width:40%; }
.img40 dd { width:57%; }
.img45 dt { width:45%; }
.img45 dd { width:52%; }
.img50 dt { width:50%; }
.img50 dd { width:47%; }
.img55 dt { width:55%; }
.img55 dd { width:42%; }
.img60 dt { width:60%; }
.img60 dd { width:37%; }
.img65 dt { width:65%; }
.img65 dd { width:32%; }
.img70 dt { width:70%; }
.img70 dd { width:27%; }
.img75 dt { width:75%; }
.img75 dd { width:22%; }
.img80 dt { width:80%; }
.img80 dd { width:17%; }

.img-c { text-align:center; margin:0 auto 20px; }
.border img { border:1px #ccc solid; }

.img-2pane { text-align:center; margin:0 auto; }
.img-2pane ul { display:inline-block; text-align:left; }
.img-2pane li { display:inline-block; vertical-align:top; width:47.5%; text-align:center; margin:0 0.25% 0.5em; }
.img-2pane li img { width:100%; height:auto; }

.img-3pane { text-align:center; margin:0 auto; }
.img-3pane ul { display:inline-block; text-align:left; }
.img-3pane li { display:inline-block; vertical-align:top; width:31.5%; text-align:center; margin:0 0.25% 0.5em; }
.img-3pane li img { width:100%; height:auto; }

.img100 img, .img100 li img { width:100% !important; height:auto; }

.table-basic { width:100%; line-height:1.4; border:1px #bcbcbc solid; border-collapse:collapse; margin:0 0 20px; font-size:1.5rem; }
.table-basic th { background:#eee; vertical-align:middle; border:1px #bcbcbc solid; text-align:center; padding:6px; color:#fff; }
.table-basic thead th { background:#497700; }
.table-basic td { border:1px #bcbcbc solid; text-align:center; padding:6px; color:#497700; }
.vam { vertical-align:middle; }
.wsnr { white-space:nowrap; }

.dl-basic { padding:0 0 30px; }
.dl-basic dt { clear:both; float:left; width:6em; padding:0.5em 0; font-weight:bold; }
.dl-basic dd { border-bottom:1px #ccc solid; padding:0.5em 0 0.5em 7em; position:relative; }
.dl-basic dd:after { content:""; position:absolute; bottom:-1px; left:0; width:6em; border-bottom:1px #f7811e solid; }

#qa-ul { border:1px #0069ab solid; margin:0 0 20px; padding:20px; }
#qa-ul li { counter-increment:question; line-height:1.3; border-bottom:1px #ddd dashed; margin:0 0 15px; padding:20px 1.8rem 35px 60px; color:#0069ab; font-weight:bold; position:relative; }
#qa-ul li:last-child { border-bottom:none; margin:0; padding:20px 1.8rem 20px 60px; }
#qa-ul li:before { content:"Q"counter(question); position:absolute; top:5px; left:0; width:46px; height:46px; line-height:46px; background:#0069ab; border-radius:50%; text-align:center; color:#fff; }
#qa-ul li a { display:block; }
#qa-ul li a:after { content:"▼"; position:absolute; bottom:50%; right:10px; margin:-0.344rem 0 0; font-size:0.688rem; color:#333; transform:scaleX(1.2) scaleY(0.7); }

.qa-dl { padding:20px 0; }
.qa-dl dt { counter-increment:question; line-height:1.5; border-bottom:1px #497700 solid; margin:0 0 15px; padding:20px 0px 35px 60px; font-size:1.5rem; color:#497700; font-weight:bold; position:relative; }
.qa-dl dt:before { content:"Q"counter(question); position:absolute; top:5px; left:0; width:46px; height:46px; line-height:46px; background:#497700; border-radius:50%; text-align:center; color:#fff; }

.qa-dl dd { counter-increment:answer; line-height:1.85; border-bottom:1px #497700 solid; margin:0 0 15px; padding:20px 0px 20px 60px; line-height:1.85; font-size:1.5rem; color:#333; position:relative; }
.qa-dl dd:before { content:"A"counter(answer); position:absolute; top:5px; left:0; width:44px; height:44px; line-height:44px; border:1px #497700 solid; border-radius:50%; text-align:center; font-size:16px; font-weight:bold; color:#497700; }
.qa-dl dd h5 { line-height:1.5; padding:0 0 20px; }
.qa-dl dd p { margin:0 0 0 -60px; }

.media-wrap iframe { width:100%; height:600px; padding:0 0 40px; }

.txt-l { text-align:left !important; }
.txt-r { text-align:right !important; }
.txt-c { text-align:center; margin:auto; }
.hide { display:none; }
.fl { float:left; }
.fr { float:right; }
.cl { clear:both; }
.red { color:#ff0000; }
.blue { color:#000099; }
.orange { color:#f7811e; }
.black { color:#333 !important; }
.s { font-size:0.7rem; }
.l { font-size:1.25rem; }
.fb { font-weight:bold; }
.fn { font-weight:normal !important; }
.mark2 { background:#ffff00; }
.u { text-decoration:underline; }
.lstn, .lstn li { list-style-type:none !important; }
.li-o { margin-left:1rem !important; text-indent:-1rem !important; }
.li-mb1em li { margin-bottom:1rem !important; }
.ren { margin:0 !important; list-style-type:none !important; }
.ren li { counter-increment:section; padding:3px 0 3px 40px; list-style-type:none !important; }
.ren li::before { content:counter(section); display:inline-block; vertical-align:middle; width:30px; height:30px; line-height:30px; background:#497700; border-radius:4px; text-align:center; margin:0 10px 0 -40px; color:#fff; }



/* Grave List */

.fade-img { padding:1px !important; position:relative; }
.fade-img::after { content:""; position:absolute; top:0; bottom:0; left:0; right:0; box-shadow:inset 0 0 15px 15px #fff; }

#grave-price-box {}
#grave-price-box h3 { line-height:1.2; border-bottom:1px #d2d2d2 solid; margin:0 0 28px; padding:0 0 15px 20px; font-size:2.6rem; color:#4b9100; font-family:"source-han-serif-japanese", serif; position:relative; }
#grave-price-box h3:before { content:""; position:absolute; top:0; left:0; width:auto; height:28px; border-left:8px #74b213 solid; }
#grave-price-box h3 span { position:absolute; top:50%; right:0; margin:-0.9em 0 0; font-size:1.8rem; color:#4b9100; }
#grave-price-box dd h4 { text-align:center; margin:0 auto 35px; padding:24px 0; 
background: #8ec040; /* Old browsers */
background: -moz-linear-gradient(top, #8ec040 0%, #80b928 54%, #73b112 100%); /* FF3.6-15 */
background: -webkit-linear-gradient(top, #8ec040 0%,#80b928 54%,#73b112 100%); /* Chrome10-25,Safari5.1-6 */
background: linear-gradient(to bottom, #8ec040 0%,#80b928 54%,#73b112 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#8ec040', endColorstr='#73b112',GradientType=0 ); /* IE6-9 */
 font-size:2.2rem; color:#fff; font-family:"source-han-serif-japanese", serif; }
#grave-price-box h5 { margin:0 0 15px 0; color: #4b9100; font-size:2.0rem; line-height: 1.0; font-family:"source-han-serif-japanese", serif; }
#gpb-txt { text-align:center; margin:0 auto; font-size:3rem; color:#a37d3b; font-family:"source-han-serif-japanese", serif; }
.gpb-txt { text-align:center; margin:0 auto; font-size:3rem; color:#a37d3b; font-family:"source-han-serif-japanese", serif; }

#tofukuji02 { padding:25px 0 0; }
#tofukuji03 { display:inline-block; vertical-align:top; width:175px; margin:0 25px 0 0; }
#tofukuji04 { display:inline-block; vertical-align:top; width:300px; }
#tofukuji03 img, #tofukuji04 img { width:100%; height:auto; }

#nanzenji23 { height:320px; position:relative; }
#nanzenji02 { position:absolute; top:-30px; left:150px; width:45%; }
#nanzenji03 { padding:40px 0 0; }
#nanzenji05 { margin:0 320px 0 -280px; }

#zuishin-in02 { padding:100px 0 0; }
#zuishin-in05 { margin:0 0 0 80px; }

#henshoko-in02 { padding:100px 0 0; }
#jushoku-box { border:1px #ddd solid; margin:0 0 40px; padding:25px; }
#jushoku-box dt { margin:0; padding:0; }
#jushoku-box dt p { padding:0; }



/* clearfix */

.cf:before, .cf:after { content:""; display:table; }
.cf:after { clear:both; }
.cf { *zoom:1; }


/* 2021.2.1 妙心寺ページ => */
.img__2col {
	display: flex;
	justify-content: space-between;
}
.img__inner {
	display: flex;
	flex-wrap: wrap;
	width: 70%;
}
/* .img__item {
	width: 28%;
} */

.item1 img,
.item2 img,
.item3 img {
	width: 100% !important;
}
.item1,
.item2 {
	width: 49%;
}
.item3 {
	width: 100%;
}

#grave-price-box h3.font-small {
	font-size: 2.2rem;
}

#gpb-txt.font-small {
	font-size: 2.5rem;
}

@media screen and (max-width: 639px) {
	.img__2col {
		flex-direction: column;
		align-items: center;
	}
	.img__inner {
		align-items: center;
		flex-direction: column;
		width: 100%;
	}
	.item1,
	.item2 {
		width: 100%;
	}
}
/* <= 2021.2.1 妙心寺ページ */

/* btn */
.btnWrap {
	display: flex;
	align-items: center;
	justify-content: center;
	margin: 30px 0;
}

.basic-btn {
	padding: 20px 30px;
	background-color: #6A9E17;
	color: #fff;
	font-size: 18px;
	border: 3px solid #497700;
	border-radius: 7px;
	letter-spacing: 2px;
}

/* 樹木葬永代供養用のボタン */
.jumokuBtn dl {
	position: relative;
	height: 100%;
}
.jumokuBtn dl dt {
	font-size: 16px;
	letter-spacing: 2px;
}

.temple_list dd > a[href*="jumoku"] {
}
.more-btn {
	background-color: #3d8900;
	border-radius: 4px;
	color: #fff;
	font-size: 14px;
	display: block;
	padding: 5px;
	position: absolute;
	top: 50%;
	right: 10px;
	transform: translateY(-50%);
	text-align: center;
	letter-spacing: 4px;
}
@media screen and (max-width: 640px) {
	.more-btn {
		top: initial;
		right: initial;
		left: 50%;
		bottom: 15px;
		transform: translateX(-50%);
	}
}


/**/


table.price_tbl01 {
	margin-bottom: 20px;
}
table.price_tbl01 th,
table.price_tbl01 td {
	padding: 5px 10px!important;
}
table.price_tbl01 th {
	width: 50%;
	background-color: #f7f7f7;
	box-sizing: border-box;
}
table.price_tbl01 td {
	width: 50%;
	box-sizing: border-box;
}
table.price_tbl01 td span {
	font-size: 0.8em;;
}

/**/

.pc { display: block; }
.sp { display: none; }

@media screen and (max-width: 640px) {
	table.price_tbl01 th,
	table.price_tbl01 td {
		font-size: 14px;
		padding-right: 5px !important;
	}
	table.price_tbl01 th {
		width: 40%;
	}
	table.price_tbl01 td {
		width: 60%;
	}
	.sp { display: block; }
	.pc { display: none; }
}