@charset "utf-8";


/* --------------------------------------------------------- */
/*	HEADER  **************************************************/
/* --------------------------------------------------------- */

#subheader{
    position: relative;
}
#subheader header{
    position: absolute;
    z-index: 20;
}

#header {
    position: absolute;
    height: 80px;
    width: 100%;
	-webkit-transition: all .35s ease-in-out;
	-moz-transition: all .35s ease-in-out;
	transition: all .35s ease-in-out;
    font-size: 1.5rem;
    top: 0px;
}
#header-open {
    width: 100%;
}
.header-logo {
    max-width: 1400px;
    margin: auto;
    height: 75px;
    padding-top:5px;
    padding-left: 5px;
}

.header-menu {
    max-width: 1400px;
    margin: auto;
    color: #000;
    padding-top: 5px;
}

.header-menu ul {
    display: flex;
    flex-flow: row;
    flex-wrap: wrap;
    list-style-type: none;
}

.header-menu ul.header-grid-box {
    display: flex;
    flex-wrap: wrap;
    flex-direction: column;
    max-height: 250px;
}
/* 850px以下に適用されるCSS（タブレット用） */
@media screen and (max-width: 850px) {
	.header-menu ul.header-grid-box {
	    max-height: 400px;
	}
}
.header-menu a {
    display: block;
    padding: 10px 9px;
}

.header-menu li img {
    display: inline-block;
    height: 1.6rem;
    width: auto;
}
.header-menu li#inq img {
    display: block;
    width: 85%;
    height: auto;
    max-width: 200px;
}
#header-open {
    /*画面より100%外へ押し出し非表示にさせる*/
    transform: translateY(-100vh);
    /*変化の速度を指定*/
	-webkit-transition: all .35s ease-in-out;
	-moz-transition: all .35s ease-in-out;
	transition: all .35s ease-in-out;
    pointer-events: none;
}
#header-sp{
    display: none;
}
.block01 {
    background-color: rgba(255, 255, 255, 0.9);
    height:80px;
}
.block02 {
    background-color: rgba(255, 255, 255, 1);
    height: 50px;
    /*変化の速度を指定*/
	-webkit-transition: all .35s ease-in-out;
	-moz-transition: all .35s ease-in-out;
	transition: all .35s ease-in-out;

}

/*OPEN時の動き*/
#header-open.open {
    display: block;
    /*メニューを元の位置へ戻す*/
    -webkit-transform: translateY(0px);
    transform: translateY(0px);
    pointer-events: all;
}
/*トップページ以外は、横幅が広いときハンバーガメニューを表示しない*/
#toggle {
    display: none;
}
/* 1048px以下に適用されるCSS（タブレット用） */
@media screen and (max-width: 1048px) {
    #toggle {
        display: block;
        position: absolute;
        z-index: 40;
        /* bodyに対しての絶対位置指定 */
        width: 80px;
        height: 80px;
        cursor: pointer;
        right: 0px;
        color: #000;
        background-color: #fff;
    }

    #toggle span {
        display: block;
        position: absolute;
        left: 25px;
        width: 30px;
        border-bottom: solid 1px #000;
        font-size: 0.9rem;
        font-family: Arial, sans-serif;
    	font-display: swap;
		letter-spacing:0;
        /*変化の速度を指定*/
        -webkit-transition: all .35s ease-in-out;
        -moz-transition: all .35s ease-in-out;
        transition: all .35s ease-in-out;
    }

    /*各ボーダー少しずつずらす*/
    #toggle span:nth-child(1) {
        top: 20px;
    }

    #toggle span:nth-child(2) {
        top: 30px;
    }

    #toggle span:nth-child(3) {
        top: 40px;
    }

    #toggle span:nth-child(4) {/*MENU文字*/
        top: 45px;
        border-bottom: 0px;
        text-align: center;
        letter-spacing: 0rem;
    }

    #toggle.active span:nth-child(1) {
        top: 30px;
        /* 1番目のspanをマイナス45度に */
        -webkit-transform: rotate(-45deg);
        -moz-transform: rotate(-45deg);
        transform: rotate(-45deg);
    }

    /* 2番目と3番目のspanを45度に */
    #toggle.active span:nth-child(2),
    #toggle.active span:nth-child(3) {
        top: 30px;
        -webkit-transform: rotate(45deg);
        -moz-transform: rotate(45deg);
        transform: rotate(45deg);
    }
}

/* PC表示 問い合わせ、検索など */
#header-inquiry{
    max-width: 1400px;
    margin: auto;
    position: absolute;
    display: block;
    z-index: 30;
    right: 80px;
    height: 80px;
    pointer-events: none;
}
#header-inquiry a{
    pointer-events: all;
}
#header-search {
    position: absolute;
    display: block;
    z-index: 30;
    top: 80px;
    right: 80px;
    height: 50px;
    padding: 10px 10px 0 5px;
    pointer-events: none;
}

/* ポイントを超えたらヘッダーを固定する */
.is-fixed #header-open{
    position: fixed !important;
    -webkit-transition: all .35s ease-in-out;
    -moz-transition: all .35s ease-in-out;
    transition: all .35s ease-in-out;
    display: block;
    /*メニューを元の位置へ戻す*/
    -webkit-transform: translateY(0px);
    transform: translateY(0px);
    filter: drop-shadow(0px 0px 3px rgba(0, 0, 0, 0.7));
}
.is-fixed .block01,
.is-fixed .block02{
    background-color: rgba(255, 255, 255, 1);
    pointer-events: all;
    /*変化の速度を指定*/
	-webkit-transition: all .35s ease-in-out;
	-moz-transition: all .35s ease-in-out;
	transition: all .35s ease-in-out;

}
.is-fixed #header-search,
.is-fixed #header-inquiry{
    width: 100%;
    max-width: 1400px;
    text-align: right;
    margin: auto;
    left: 50%;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    pointer-events: none;
}
.is-fixed #header-search a,
.is-fixed #header-inquiry input{
    pointer-events: all;
}
/* 1048px以下に適用されるCSS（タブレット用） */
@media screen and (max-width: 1048px) {
    #header-pc{
        display: none;
    }
    #header-sp{
        display: block;
        pointer-events: none;
    }
    #header-sp div{
        pointer-events: all;
    }
    #header-open .block02 {
		display: block;
        font-size: 1.6rem;
        padding: 10px;
        /*画面より100%外へ押し出し非表示にさせる*/
		-webkit-transform: translateY(-100vh);
        transform: translateY(-100vh);
		border-top: 1px solid #ddd;
		height: auto;
    }
    #header-open.open .block02 {
        display: block;
        /*メニューを元の位置へ戻す*/
        -webkit-transform: translateY(0px);
        transform: translateY(0px);
        /*変化の速度を指定*/
        -webkit-transition: all .35s ease-in-out;
        -moz-transition: all .35s ease-in-out;
        transition: all .35s ease-in-out;
		height: auto;
    }
    .header-menu a {
        display: inline-block;
    }
    #header-search-sp input.s{
        width:70%;
        margin-left: 10px;
        max-width: 150px;
    }
    #inq img{
        width: 85%;
        height: auto;
    }
    .is-fixed #toggle {
        position: fixed;
    }

}

/* --------------------------------------------------------- */
/*	各ページヘッダー画像  **************************************/
/* --------------------------------------------------------- */

.subpage-headimg{
    background-size: cover;
    background-position: top center;
    background-repeat: no-repeat;
}
#goaisatsu .subpage-headimg{
    background-image: url(../images/headimg_goaisatsu.jpg);
}
#zazen .subpage-headimg{
    background-image: url(../images/headimg_zazen.jpg);
}
#dokyou .subpage-headimg{
    background-image: url(../images/headimg_dokyou.jpg);
}
#shuin .subpage-headimg,
#gokiganfuda .subpage-headimg,
#netsuke .subpage-headimg {
    background-image: url(../images/headimg_shuin.jpg);
}
#gokigan .subpage-headimg,
#omiyamairi .subpage-headimg,
#gokitou .subpage-headimg {
    background-image: url(../images/headimg_gokigan.jpg);
}
#wedding .subpage-headimg {
    background-image: url(../images/headimg_wedding.jpg);
    background-position: bottom center;
}
#gokuyo .subpage-headimg,
#pet .subpage-headimg,
#mizuko .subpage-headimg,
#sougi .subpage-headimg {
    background-image: url(../images/headimg_gokuyo.jpg);
    background-position: bottom center;
}
#bochi .subpage-headimg,
#eitaikuyo .subpage-headimg {
    background-image: url(../images/headimg_bochi.jpg);
}
#jyumokusou .subpage-headimg {
    background-image: url(../images/headimg_jyumokusou.jpg);
}
#news .subpage-headimg{
    background-image: url(../images/headimg_news.jpg);
    background-position: bottom center;
}
#blog .subpage-headimg{
    background-image: url(../images/headimg_blog.jpg);
    background-position: top center;
}
#about .subpage-headimg {
    background-image: url(../images/headimg_about.jpg);
}
#event .subpage-headimg {
    background-image: url(../images/headimg_event.jpg);
}
#keidai .subpage-headimg {
    background-image: url(../images/headimg_keidai.jpg);
}
#hall .subpage-headimg,
#kouen .subpage-headimg{
    background-image: url(../images/headimg_hall.jpg);
    background-position: top center;
}
#inquiry .subpage-headimg,
#inquiry-confirm .subpage-headimg,
#inquiry-thanks .subpage-headimg {
    background-image: url(../images/headimg_inquiry.jpg);
}
#map .subpage-headimg {
    background-image: url(../images/headimg_map.jpg);
}
#odanka .subpage-headimg,
#houyou-entry .subpage-headimg,
#houyou-entry-thanks .subpage-headimg {
    background-image: url(../images/headimg_odanka.jpg);
}
#sitemap .subpage-headimg {
    background-image: url(../images/headimg_sitemap.jpg);
    background-position: center center;
}

.subpage-headimg h2{
    width: 100%;
    max-width: 600px;
    margin: 0 auto;
    height: 430px;
    display: table;
    padding-top: 160px;
    padding-bottom: 30px;
}
.subpage-headimg h2 span{
    display: table-cell;
    background-color: rgba(255, 255, 255, 0.7);
    font-size: 4rem;
    letter-spacing: 1rem;
    text-align: center;
    vertical-align: middle;
}

/*ヘッダー画像がないページ用*/
#site-policy .subpage-headimg,
#privacy-policy .subpage-headimg{
    background-color: #f2edb0;
}
#site-policy .subpage-headimg h2,
#privacy-policy .subpage-headimg h2 {
        height: 150px;
}
#site-policy .subpage-headimg h2 span,
#privacy-policy .subpage-headimg h2 span{
    background-color: rgba(255, 255, 255, 0);
	height: 90px;
}

/*404.php用*/
.subpage-headimg-notext{
	padding-top: 110px;
}

/* 1048px以下に適用されるCSS（タブレット用） */
@media screen and (max-width: 1048px) {
    .subpage-headimg h2{
        height: 280px;
        padding-top: 100px;
        padding-bottom: 20px;
        max-width: 450px;
    }
    .subpage-headimg h2 span {
        margin-top: 30px;
        margin-left: 30px;
        height: 140px;
        width: 450px;
        font-size: 2.7rem;
        letter-spacing: 0.2rem;
    }
    /*404.php用*/
	.subpage-headimg-notext{
		padding-top: 60px;
	}

}
/* 850px以下に適用されるCSS（タブレット用） */
@media screen and (max-width: 850px) {
    .subpage-headimg h2{
        max-width: 350px;
    }
    .subpage-headimg h2 span {
    	padding:0 30px;
    }

}

/* --------------------------------------------------------- */
/*	ぱんくずリスト ****************************************/
/* --------------------------------------------------------- */
.breadcrumbs{
    width: 100%;
    max-width: 1400px;
    margin: auto;
    font-size: 1.4rem;
    padding: 10px;
}


/* --------------------------------------------------------- */
/*	メインコンテンツ ****************************************/
/* --------------------------------------------------------- */
#subpage{
    width: 100%;
    max-width: 1400px;
    margin: 20px auto;
    padding: 0 30px;
    margin-bottom: 60px;
}
h2.wp-block-heading{
    text-align: center;
    color: #b1a421;
    font-size: 3.5rem;
    padding: 15px;
    border-bottom: 1px solid #666;
    margin:auto;
    margin-top: 60px;
    margin-bottom: 30px;
}
h3.wp-block-heading{
    font-size: 2.5rem;
    color: #786f16;
    padding: 15px 0;
}

#subpage p {
	font-size: 18px;
    margin-bottom: 1em;
}
.wp-block-quote {
    display: block;
    padding: 0.5em 0 0.5em 2em;
    font-weight: bold;
    color: #71683e;
}
.wp-block-quote cite{
    font-weight: normal;
    color:#777;
    font-style: italic;
}

.wp-block-group strong{
	font-weight: bold;
	color: #71683e;
}
.wp-element-caption{
	font-size: 1.5rem;
	color: #666;
}
/*記事内のリストタグ表示*/
body.page .wp-block-group ul,
body.single .group-left ul {
    list-style: disc;
    margin-left: 4rem;
    margin-bottom: 2rem;
}
body.page .wp-block-group ol,
body.single .group-left ol {
    list-style: decimal;
    margin-left: 4rem;
    margin-bottom: 2rem;
}
.wp-block-column{
    margin: 0 10px;
}
.has-small-font-size{
    font-size: 1.4rem;
}
.has-large-font-size{
    font-size: 3.0rem;
}
.has-x-large-font-size{
    font-size: 3.8rem;
}
.has-text-align-center{
    text-align: center;
}
.has-text-align-left{
    text-align: left;
}
.has-text-align-right{
    text-align: right;
}
/* 850px以下に適用されるCSS（タブレット用） */
@media screen and (max-width: 850px) {
    #subpage {
        margin: 0px auto;
        padding: 0 15px;
        margin-bottom: 60px;
    }
    h2.wp-block-heading {
		font-size: 2.8rem;
        margin-top: 5px;
		letter-spacing: 0.1rem;
    }
	h3.wp-block-heading{
		font-size: 2.2rem;
		color: #786f16;
		padding: 15px 0;
		letter-spacing: 0;

	}
	.wp-block-column {
        margin: 0 5px;
    }
}

/* お檀家様向けリンク */
p#odanka {
    width: 100%;
    margin: 20px auto;
    padding: 15px;
    font-weight: bold;
    background-color: #b13a97;
    max-width: 1400px;
    text-align: center;
}
p#odanka a{
	color: #fff;
}
p#odanka a:hover{
	color: #d6ce01;
}

/*長福寺の出来事レイアウト*/
.eventsubheader>figure{
	margin: 0;
}
.eventsubheader>h3{
	padding: 5px 0 0 0;
}
#subpage .eventsubheader>p{
	margin-bottom: 0;
}

/*比翼塚 永代供養契約の流れ*/
.eitaikuyo-nagare{
	
	background: -webkit-linear-gradient(28deg, rgb(237, 219, 248), rgb(229, 246, 241));
	background: linear-gradient(28deg, rgb(237, 219, 248), rgb(229, 246, 241));
	border-radius: 8px;
	padding-left: 10px;
}
.eitaikuyo-nagare+div{
	padding-left:30px;
	padding-top:10px;
}

/* --------------------------------------------------------- */
/*	news（お知らせ）／blog（方丈記）／search（検索結果）／error404（File Not Found）
/* --------------------------------------------------------- */
#news .wp-block-group,
#blog .wp-block-group,
#search .wp-block-group,
.error404 .wp-block-group{
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    padding: 0px;
    margin-bottom: 40px;
    background-color: rgba(255,255,255,0);
}
/* 記事ページ メイン */
.group-left{
    flex-grow: 1;
    background-color: #fff;
    padding:20px 40px;
    text-align: left;
}
/* 記事ページ サイドバー */
.group-right{
	border-left: 1px solid #eee;
    flex-grow: 0;
    flex-basis: 30%;
    padding: 0 0 0 10px;
    text-align: center;
    min-width: 300px;
}
.group-right h2{
    margin-top: 0;
    margin-bottom: 10px;
    padding: 10px 0;
    font-size: 2rem;
    text-align: left;
    width: 100%;

}
.group-right ul,
.group-right li{
    list-style-type: none;
    text-align: left;
    margin:0;
    margin-left: 1.5rem;
}
.group-right .children{
    margin-bottom: 10px;
}
.group-right ul{
    margin-bottom: 20px;
    margin-left: 1.5rem;
}
.group-right li{
    display: block;
    font-size: 1.6rem;
    padding-top: 6px;
    padding-left: 1.5rem;
    text-indent: -1.5rem;
}
.group-right li::before{
    content: "●　";
    font-size: 1rem;
    display: inline-block;
}
.group-right li.cat-post-item{
    text-indent: 0rem;
}
.group-right li span.post-date{
    display: block;
}
#site-content .group-right h2{
    text-align: center;
    font-size: 1.9rem;
    line-height: 1;
    letter-spacing: 0.1rem;
    margin-bottom: 20px;
}

.wp-block-latest-posts__post-date {
    color: #666;
}


@media screen and (max-width: 850px) {
    #news .wp-block-group,
    #blog .wp-block-group,
    #search .wp-block-group,
    .error404 .wp-block-group{
            flex-direction: column;
    }
    .group-left{
        padding: 10px;
    }
    .group-right{
        padding: 0 30px;
        border-top: 1px solid #eee;
        border-left: 0;
    }
    .group-right h2{
        text-align: left;
    }
}
@media screen and (max-width: 750px) {
    .wp-block-image,
    .wp-block-embed-youtube{
        margin-left: 0.5rem;
        margin-right: 0.5rem;
    }
}

.contents-list{
	max-width:400px;
	padding-left: 20px;
	margin: 0 auto;
	font-size: 1.7rem;
}
.list-thumbnail{
    position: relative;
	margin-right: 10px;
	width: 110px;
}
.list-thumbnail img{
	width: 110px;
	height: auto;
}
.list-postdata{
    flex: 1;
}
.mark{
    width: 100%;
    background-color: rgba(0, 0, 0, 0.5);
    color: #fff;
    font-size: 1.4rem;
    text-align: center;
    position: absolute;
    top: 0;    
}
.post a{
	font-weight: bold;
}
#subpage .post p{
    font-size: 1.5rem;
}
.list_wrap{
	display: flex;
	margin: 20px 0;
	padding-bottom:30px;
	border-bottom: 1px solid #666666;
	text-align: left;
}

.date,.post-date{
	font-size:1.5rem;
    color: #666;
}


/*カテゴリごとに不要カテゴリを非表示*/
#news li.cat-item-4,
#blog li.cat-item-3{
	display: none;
}

/*方丈記で特定の記事を非表示にする*/
.group-right li.oldpost{
	display: none;
}

/*投稿詳細ページ*/
.single-post-date{
    color: #666;
    text-align: right;
    font-size: 1.6rem;
	margin-bottom:25px;
}
.single-post-title{
    font-size: 2.8rem;
	margin: 15px 0;
	padding-bottom: 10px;
	border-bottom: 1px solid #ccc;	
}
.single-post-title:before{
	content: "≪≫　";
    font-size: 3.7rem;
	font-weight: bold;
	color: #e9da26;
	letter-spacing: -13px;
}

/*投稿にYouTubeを掲載*/
.youtube {
	position: relative;
	width: 100%;
	padding-top: 56.25%;
}

.youtube iframe{
	position: absolute;
	top: 0;
	right: 0;
	width: 100% !important;
	height: 100% !important;
}

/* --------------------------------------------------------- */
/*	検索バー（wp-block-search）
/* --------------------------------------------------------- */

.wp-block-search{
    text-align: left;
    max-width: 300px;
    border: 1px solid #999;
}

.wp-block-search button{
    border: 1px solid #999;
    padding: 5px;
    background-color: #999;
    color: #fff;
}

/* --------------------------------------------------------- */
/*	ページ移動(pagination)
/* --------------------------------------------------------- */
.m-pagination{
    text-align: center;
    font-size: 1.5rem;
    margin: 60px 0 30px 0;
}

.m-pagination a,
span.-current{
    display: inline-block;
    padding: 3px 5px;
    margin: 4px;
    border-bottom: solid 3px #b1a421;
    color: #ffffff;
}
.m-pagination a{
    background: #b1a421;
    transition: all 0.5s ease;
}
.m-pagination span.-current{
    background: #e9da26;
}
.m-pagination a:hover{
    background: #e9da26;
    border-bottom: solid 3px #b1a421;
}


#subpage .contents-head-link,
#subpage .contents-head-link p {
    text-align: center;
}

/* --------------------------------------------------------- */
/*	入力フォーム
/* --------------------------------------------------------- */
#subpage .wpcf7-form input,
#subpage .wpcf7-form textarea,
#subpage .wpcf7-form select{
	font-family: "Times New Roman", "Hiragino Mincho ProN", "YuMincho", "Yu Mincho", "MS PMincho", "Noto Serif JP", serif;
	font-display: swap; /*ウェブフォントの読み込み完了まで代替フォントを表示させる*/

	font-size: 1.8rem;
    padding: 12px 12px;
}
#subpage .wpcf7-form select{
	padding: 17px 12px;
}

#subpage .wpcf7-form input[type="submit"],
#subpage .wpcf7-form input[type="button"]{
	display: inline-block;
    border-radius: 20px;
	border: 2px solid #b1a62b;
    background-color: #e9da26;
    padding: 5px;
    width: 100%;
	font-size: 1.8rem;
	font-weight: bold;
	max-width:230px;
	text-align: center;
	margin: auto;
}
input[type="radio"]{
	appearance: auto;
	margin-right: 5px;
}
#inquiry-confirm #subpage input.wpcf7-previous,
#houyou-entry-confirm #subpage input.wpcf7-previous{
	background-color: #ffffff;
	max-width:90px;
	margin-right:7px;
}
#subpage input#wpcf7-previous{
	background-color: #ffffff;
}
.inquiry-policy{
	background-color: #eeeeee;
	padding: 10px;
	margin-bottom: 15px;
}
/* --------------------------------------------------------- */
/*	contact form
/* --------------------------------------------------------- */
form.wpcf7-form{
    width: 100%;
    max-width: 800px;
    margin: 0 auto;
}
.form-table select,
.form-table textarea,
.form-table input[type="text"],
.form-table input[type="date"],
.form-table input[type="email"]{
	border:1px solid #666;
	border-radius: 5px;
    width: 100%;
}
.form-table input[type="tel"]{
	border:1px solid #666;
	border-radius: 5px;
    width: 50%;
}
.form-table input#houyou-member,
.form-table input#sessai-num,
.form-table input#zipcode{
    width: 12em;
    max-width:100%;
}
.form-table input[id^="sotoba-order"],
.form-table input#houyou-date,
.form-table input#botsunengappi,
.form-table select{
	width: 20em;
	max-width: 95%;
}
.form-table .wpcf7-form-confirm select,
.form-table .wpcf7-form-confirm textarea,
.form-table .wpcf7-form-confirm input[type="text"],
.form-table .wpcf7-form-confirm input[type="tel"],
.form-table .wpcf7-form-confirm input[type="date"],
.form-table .wpcf7-form-confirm input[type="email"]{
	border:0;
}

form.post-password-form input[type="password"]{
	border:1px solid #666;
	border-radius: 5px;
    width: 200px;
}
.errorcheck{
    color: #e40000;
    border: 2px solid #e40000;
    padding: 5px;
}

#subpage .form-title p{
	margin-bottom: 0.2em;
}
.form-title{
    font-weight: bold;
    width: 100%;
    vertical-align: top;
	border-top: 1px dotted #aaa;
	padding-top: 10px;
}
.form-main{
    width: 100%;
	margin-bottom: 10px;
}
.form-main-split,
.form-main-split-sp{
	display: flex;
	justify-content: flex-start;
	align-items: center;
	
}
.form-main-split span,
.form-main-split-sp span{
	display: inline-block;
}
.wpcf7-radio label input,
.wpcf7-radio label span{
	display: inline-block;
}

#inquiry-confirm .form-main,
#houyou-entry-confirm .form-main{
/*	border-bottom: 1px solid #bbbbbb;*/
	padding-left: 2rem;
}
#inquiry input[type="checkbox"],
#houyou-entry input[type="checkbox"]{
	width: 20px;
	height: 20px;
}
.hissu,
.wpcf7-not-valid-tip{
    color: #e40000;
    font-size: 1.5rem;
}
.example{
    color: #666666;
    font-size: 1.4rem;
	font-weight: normal;
	margin-left: 10px;
}
.hissu{
	display: inline-block;
	border: 1px #e40000 solid;
	border-radius: 15px;
	margin-left: 10px;
	padding: 0px 10px;
    font-size: 1.2rem;
}
.wpcf7-not-valid-tip{
	font-weight:bold;
}
.wpcf7-not-valid-tip:before{
	content: "※";
    color: #e40000;
	font-weight:bold;
}
.form-main span.wpcf7-not-valid-tip,
.form-main-split span.wpcf7-not-valid-tip,
.form-main-split-sp span.wpcf7-not-valid-tip{
	display: block;
}

/*ラジオボタンなどをクリックしたときにエラーメッセージが表示される問題*/
/*
.wpcf7-form.hide_error_message .wpcf7-not-valid-tip {
	display: none;
}
*/
/*戒名、俗名のフォーム幅*/
#kaimyo,
#zokumyo{
	display: inline-block;
	width:80%;
}


input:-webkit-autofill {
	-webkit-box-shadow: 0 0 0px 1000px white inset;
}

/*スマホ表示*/
@media screen and (max-width: 750px) {
	.form-main-split{
		display: block;
	}
	.form-main-split input[type="text"]{
	    width: 100%;
	}

	.form-table input[type="tel"]{
	    width: 100%;
	}
	.form-table input[id^="sotoba-order"],
	.form-table input#houyou-date,
	.form-table input#botsunengappi,
	.form-table select{
		max-width: 100%;
	}

}



/*写真ギャラリー*/
.mfp-title,
.rbsTitle{
    font-family: "Times New Roman", "Hiragino Mincho ProN", "YuMincho", "Yu Mincho", "MS PMincho", "Noto Serif JP", serif;
	font-display: swap; /*ウェブフォントの読み込み完了まで代替フォントを表示させる*/

}

.mfp-title {
    font-size: 1.6rem;
    line-height: 1;
    position: absolute;
	bottom: 4px;
	background-color: rgba(0,0,0,0.4);
	padding: 5px;
}

/*問い合わせバナー*/
.inquiry_banner {
    margin: 2rem auto;
    padding: 0.6rem;
    border-radius: 10px;
    border: 1px solid #939393;
    background: #eaeaea;
	max-width: 850px;
}
.inq-inner-main {
    padding: 1rem;
    border-radius: 6px;
    background: #fff;
    text-align: center;
}

.inq-inner-main:after {
    content: "";
    clear: both;
    display: block;
}
.inq-inner-text{
    font-size: 1.6rem;
    color: #6c6421;
}
.inq-inner-banner{
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-items: stretch;
    text-align: center;
}
.inq-inner {
    margin: 10px;
    border-radius: 10px;
    background-color: #e9da26;
    padding: 10px 5px 0px 5px;
    width: 100%;
    box-shadow: 0 3px 0 #cabb00; /* 影の太さ・色 */
}
.inq-inner:hover{
    box-shadow: none;
    transform: translateY(3px);
    background-color: #e2c703;
}
.inq-inner img {
    width: 100%;
    max-width: 300px;
}

@media screen and (max-width: 750px) {
	.inquiry_banner {
		max-width: 400px;
	}
	.inq-inner-banner {
        display: block;
    }
    .inq-inner {
		margin: 0px;
		margin-top: 10px;
    }
	.inq-inner img{
		max-width: 250px;
	}
}
/*固定ページ共通リンク（cate-link）*/
.wp-block-column:has(.cate-link){
	border-radius: 5px;
	padding-top:15px;

}
.wp-block-column:has(.cate-link-now){
	/*background-image: linear-gradient(180deg, rgba(255, 243, 231, 1), rgba(255, 255, 255, 1));*/
	background-image: linear-gradient(180deg, rgba(19, 9, 166, 0.15), rgba(255, 255, 255, 1) 60%);
}
.wp-block-column:has(.cate-link):last-child{
	border-right:0px;
}

#subpage p.cate-link {
    position: relative;
    display: inline-block;
    margin-bottom: 25px;
    font-size: 2.3rem;
}
.cate-link:before {
    content: '';
    position: absolute;
    bottom: -1px;
    display: inline-block;
    width: 80px;
    height: 3px;
    left: 50%;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
    background-color: #e9da26;
    border-radius: 2px;
}
.cate-link-now:before{
	background-color: #e9da26;
}
.cate-link-now:after {
    content: '▼';
	font-size: 1.8rem;
    color: #e9da26;
    position: absolute;
    bottom: 4px;
    display: inline-block;
    width: 100px;
    height: 5px;
    left: 50%;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
}
.cate-link a{
	text-decoration: none;
}
@media screen and (max-width: 850px) {
	.wp-block-column:has(.cate-link){
		border-right:0px;
	}

}
/*サイトマップ*/
ul.menu>li{
	padding-top: 10px;
}


/* --------------------------------------------------------- */
/*	中ページ     印刷時にヘッダーが毎ページ印刷されてしまう  */
/* --------------------------------------------------------- */

@media print {
	.is-fixed #header-open {
		position: absolute !important;
	}
}
