@charset "utf-8";

/*--------------------
1. 共通
--------------------*/
.clearfix:after {content: ''; display: block; height: 0; clear: both; visibility: hidden;}

.mt50 {margin-top: 50px;}
.mb30 {margin-bottom: 30px;}


/* 404 Not Found
---------------------------------- */
.backtotop {margin: 20px 0;}
.notpage {text-align: center;}
a.link-top {display: inline-block; padding: 7px 25px; color: #000; font-weight: bold; line-height: 1.8; border: solid 2px #000; border-radius: 36px; background-color: #fff;}
a.link-top:hover {color: #fff; background-color: #d56349; transition: 0.4s;}


/* bootstrap
---------------------------------- */

@media screen and (max-width: 1100px) {
	html {scroll-padding: 100px;}
	.post_col-2 {margin-right: 0px; width: auto;}
}
@media screen and (max-width: 800px) {
	section {padding: 40px 0;}
	
	.col-8 {-ms-flex: 0 0 100%; flex: 0 0 100%; max-width: 100%;}
	.col-7 {-ms-flex: 0 0 100%; flex: 0 0 100%; max-width: 100%;}
	.col-6 {-ms-flex: 0 0 100%; flex: 0 0 100%; max-width: 100%;}
	.col-5 {-ms-flex: 0 0 100%; flex: 0 0 100%; max-width: 100%;}
	.col-4 {-ms-flex: 0 0 100%; flex: 0 0 100%; max-width: 100%;}
	.col-3 {-ms-flex: 0 0 100%; flex: 0 0 100%; max-width: 100%;}
	
	.desktop {display: none!important;}
	.smartphone {display: block!important;}
}


/*--------------------
2. 下層Header
--------------------*/
#header.tkj-contentspage {background-color: #fff; height: 70px; position: fixed;}
.tkj-contentspage .logoset-backside {display: block;}


@media screen and (max-width: 1100px) {
	#header.tkj-contentspage {height: 70px;}
	.tkj-contentspage #drawer_menu_button {top: 5px;}
	.tkj-contentspage #drawer_menu_button span {background: #000;}
}

/* Navigation
---------------------------------- */
.tkj-contentspage #pc-nav {margin: 0 0 0 auto; font-size: 16px;}
.tkj-contentspage #pc-nav > ul {flex-direction: initial;}
.tkj-contentspage #pc-nav > ul > li {}
.tkj-contentspage #pc-nav > ul > li > a {writing-mode: initial; -ms-writing-mode: initial; -webkit-writing-mode: initial; min-width: initial; padding: 0 0.5em; color: #000;}
.tkj-contentspage #pc-nav > ul > li.current-menu-item > a {color: #000;}
.tkj-contentspage #pc-nav ul li a:hover {color: #b31d1b;}

@media screen and (max-width: 1250px) {
	.tkj-contentspage #drawer_menu {top: 70px;}
}


/* 下層ヘッダーイメージ
---------------------------------- */
#tkj-underarea {padding-top: 70px;}
#tkj-underarea #header_slider_wrap {height: 310px;}
#tkj-underarea #header_slider_content .midashi-catch {font-size: 36px;}

@media screen and (max-width: 1500px) {#tkj-underarea #header_slider_content .midashi-catch {font-size: 2.4vw;}}
@media screen and (max-width: 1100px) {#tkj-underarea #header_slider_content .midashi-catch {font-size: 28px;}}
@media screen and (max-width: 600px) {}
@media screen and (max-width: 400px) {#header_slider_content .midashi-catch {font-size: 7.4vw;}}


/* パンくず
---------------------------------- */
#tkj-breadcrumb {padding: 12px 0; background-color: #4b2249;}
#tkj-breadcrumb ol {position: relative; color: #fff; margin-bottom: 0; overflow: hidden; line-height: 1; text-overflow: ellipsis; white-space: nowrap;}
#tkj-breadcrumb ol li {color: #fff; font-size: 16px; display: inline;}
#tkj-breadcrumb ol li a {color: #fff; text-decoration: none; position: relative;}
#tkj-breadcrumb ol li.breadcrumb-home a span {display: none;}
#tkj-breadcrumb ol li.breadcrumb-item {}
#tkj-breadcrumb ol li.breadcrumb-item::before {font-size: 12px; margin-right: 12px; margin-left: 12px; font-family: "Font Awesome 6 Free"; font-weight: 900; content: "\3e";}
#tkj-breadcrumb ol li.breadcrumb-home a img {width: 100%; height: auto; max-width: 16px; filter: invert(88%) sepia(61%) saturate(0%) hue-rotate(229deg) brightness(107%) contrast(101%);}


/*------------------------------------------------------------------------------------*/
/*--------------------
3-1. 厄とは
--------------------*/
#tkj-lower {background: url("../images/lower_page/tkj-lower01.webp") top center repeat-y fixed; background-size: cover;}
#tkj-lower .container {max-width: 980px;}
.lower-inner {background-color: #f4f2ef; padding: 80px; margin-bottom: 40px; box-shadow: rgba(0, 0, 0, 0.1) 0px 4px 12px;}
.lower-header {display: block;}
.lower-element {text-align: center; margin-bottom: 12px;}
.lower-element img {max-width: 60px;}
.lower-header h3 {font-size: 32px; text-align: center; line-height: 1.6;}
.lower-header h4 {font-size: 26px; text-align: center; margin: 50px 0; line-height: 1.6;}
.lower-header h4.h4-m0 {margin: 0; font-size: 22px;}
.lower-header figure {margin: 50px 0; text-align: center; background-color: #f4f2ef;}
.lower-header figure img {}
.lower-body {}
.lower-body p {margin-bottom: 2em;}
.lower-body p:last-child {margin-bottom: 0;}
.three-types {font-size: 12px; padding-top: 8px;}


@media screen and (max-width: 800px) {
	#tkj-lower {padding: 0;}
	#tkj-lower .container {width: 100%; padding: 15px;}
	.lower-inner {padding: 40px 20px 30px; margin-bottom: 20px;}
	.lower-inner:last-child {margin-bottom: 0;}
	.lower-element img {max-width: 40px;}
	.lower-header h3 {font-size: 24px; line-height: 1.3;}
	.lower-header h4 {font-size: 20px; margin: 20px 0; line-height: 1.3;}
    .lower-header h4.h4-m0 {font-size: 18px; line-height: 1.4;}
	.lower-header figure {margin: 20px 0;}
	.lower-body p {line-height: 1.6;}
    .three-types {font-size: 16px;}
}


/*--------------------
3-2. 厄除け開運祈願･祈祷
--------------------*/
.lower-header p {margin: 50px 0; line-height: 1.6;}
.lower-body .row-ar {margin-top: 20px;}
.lower-body .row-ar.mb50 {margin-bottom: 50px;}
.lower-body h5 {background-color: #cf4323; position: relative; font-size: 24px; padding: 7px 5px 5px 45px; color: #fff;}
.lower-body h5 span {position: absolute; top: 50%; left: 10px; transform: translateY(-50%); -webkit-transform: translateY(-50%); -ms-transform: translateY(-50%); display: inline-flex;}
.lower-body h5 span img {max-width: 32px;}
.lower-body .col-8 {padding: 0 20px 0 0;}
.lower-body .col-8 p {margin-bottom: 1.5em;}
.lower-body .col-8 p:last-child {margin-bottom: 0;}
.lower-body .col-4 figure {}
.lower-table {margin-bottom: 1.5em;}
.lower-table table {width: 100%; border-collapse: collapse; background-color: #fff;}
.lower-table table th, .lower-table table td {padding: 5px 10px; border: solid 1px #bbb;}
.lower-table table th {background-color: #d7d7f4; width: 25%; vertical-align: middle;}
.lower-table table td {width: 75%;}

.box-design {margin: 50px auto; padding: 20px 20px 25px; border: 2px solid #000; position: relative; background-color: #fff; border-radius: 8px; max-width: 460px;}
.box-design h5 {text-align: center; font-size: 20px; margin-bottom: 15px;}
.box-design p {background-image: linear-gradient(90deg, rgba(237, 119, 128, 0) 0%, rgba(237, 119, 128, 0) 50%, #fff 0%, #fff 100%), linear-gradient(180deg, rgba(237, 119, 128, 0) 0%, rgba(237, 119, 128, 0) 95%, #000 100%); background-size: 8px 100%, 100% 2.25em; line-height: 2.25; margin: 0;}

@media screen and (max-width: 800px) {
	.lower-header p {margin: 20px 0 40px;}
	.lower-body .row-ar.mb50 {margin-bottom: 0;}
	.lower-body .col-8 {padding: 0;}
	.lower-body h5 {font-size: 20px;}
    .box-design h5 {font-size: 18px;}
    .lower-header .box-design p {margin: 0;}
}

@media screen and (max-width: 600px) {
    .lower-table {overflow-x: scroll;}
	.lower-table table {width: 600px; margin-bottom: 5px;}
	.lower-table::-webkit-scrollbar {height: 10px;}
	.lower-table::-webkit-scrollbar-track {background-color: #fff; border-radius: 4px;}
	.lower-table::-webkit-scrollbar-thumb {background-color: #cf4323; border-radius: 4px;}
    .box-design h5 {font-size: 16px;}
    .lower-header .box-design p {font-size: 14px;}
}

@media screen and (max-width: 480px) {
	.lower-header h3 {font-size: 22px;}
	.lower-body h5 {font-size: 18px;}
}

/**** テキストリンクのデザイン ****/
.textlink-area {text-align: right; margin: 2em 0;}
.textlink-area a {position: relative; display: inline-block; width: 220px; text-align: center; padding: 5px 30px 5px 10px; border-radius: 5px; background-color: #303b94; color: #fff; transition: 0.3s;}
.textlink-area a img {position: absolute; top: 40%; right: 8px; transform: translateY(-50%); -webkit-transform: translateY(-50%); -ms-transform: translateY(-50%); width: 25px;}
.textlink-area a:hover {background-color: #b31d1b;}

@media screen and (max-width: 800px) {
	.textlink-area {text-align: center;}
}


/*--------------------
3-3. お守り･お札
--------------------*/
.headline-text {background-color: #fff5d9; padding: 40px 80px; margin-bottom: 40px; box-shadow: rgba(0, 0, 0, 0.16) 0px 1px 4px; border-radius: 6px;}
.headline-text p {}
.omamori .lower-header p {margin: 50px 0 0;}
.omamori .row-ar {justify-content: left;}
.omamori .col-3 {padding: 5px;}
.lower-item {box-shadow: rgba(50, 50, 93, 0.25) 0px 2px 5px -1px, rgba(0, 0, 0, 0.3) 0px 1px 3px -1px;}
.lower-item p.item-name {margin: 0; padding: 16px 5px 8px; text-align: center; background-color: #4b2249; color: #fff; line-height: 1.2;}
.lower-item p.item-name span {font-size: 10px; display: inline-block;}
.lower-item p.item-name ruby rt {font-size: 9px;}
.item-detail-wrapper {position: relative; z-index: 1;}
.lower-item p.item-detail {margin: 0; padding: 5px; font-size: 0.9em; line-height: 1.5; min-height: 65px; overflow: hidden; transition: max-height 0.4s ease;}
.omamori .lower-item p.item-detail {display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; text-overflow: ellipsis;}
.lower-item p.item-detail.open {overflow: visible; -webkit-line-clamp: unset; -webkit-box-orient: unset;}
.toggle-detail {display: block; background: none; border: none; color: #4b2249; cursor: pointer; padding: 10px; font-size: 13px; width: 100%;}
.item-image {overflow: hidden;}
.item-image img {backface-visibility: hidden; transition: transform 0.3s ease;}
.lower-item:hover .item-image img {transform: scale(1.1, 1.1); opacity: 0.8;}
.wrap-amulet .lower-item, .wrap-bill .lower-item, .wrap-player .lower-item, .wrap-benefit .lower-item {position: relative; min-height: 310px; display: flex; flex-direction: column; justify-content: space-between;}
.wrap-stamp_book .col-4 {padding: 5px;}
.wrap-stamp_book .lower-item {}
.wrap-stamp_book .lower-item .item-image {position: relative;}
.wrap-stamp_book .item-image img {margin-bottom: 1px;}
p.price {position: relative; width: 100%; min-height: 33.8px; padding: 5px; text-align: right; background-color: #b81414; color: #fff; z-index: 0;}
p.price span {position: absolute; top: 10px; left: 5px; background-color: #fff; color: #b81414; padding: 1px 8px; border-radius: 4px; margin-right: 8px; font-size: 12px; line-height: 1.2;}

@media screen and (max-width: 800px) {
	.headline-text {margin: 0; border-radius: 0; padding: 20px;}
	.omamori .lower-header p {margin: 20px 0 0;}
	.omamori .col-3 {-ms-flex: 0 0 50%; flex: 0 0 50%; max-width: 50%;}
	.omamori .lower-body .row-ar.mb50 {margin-bottom: 0;}
	.wrap-stamp_book .col-6 {-ms-flex: 0 0 50%; flex: 0 0 50%; max-width: 50%;}
    .wrap-stamp_book .col-4 {-ms-flex: 0 0 50%; flex: 0 0 50%; max-width: 50%;}
    p.price {padding: 5px 5px 5px 56px;}
}

@media screen and (max-width: 500px) {
	.omamori .col-3 {-ms-flex: 0 0 100%; flex: 0 0 100%; max-width: 100%;}
	.wrap-amulet .lower-item, .wrap-bill .lower-item, .wrap-player .lower-item, .wrap-benefit .lower-item {min-height: auto;}
	.wrap-stamp_book .col-6 {-ms-flex: 0 0 100%; flex: 0 0 100%; max-width: 100%;}
    .wrap-stamp_book .col-4 {-ms-flex: 0 0 100%; flex: 0 0 100%; max-width: 100%;}
}


/*--------------------
3-4. 厄年早見表
--------------------*/
.quick_reference {}

.lower-body h5 {margin-bottom: 1em;}

.judg-program {max-width: 540px; margin: 0 auto;}
.judg-program form {width: 100%;padding: 30px; border: 3px solid #e7c4f0; border-radius: 7px; background-color: #fff;}
.judg-program form table.tbl-yaku-program {width: 100%; border-collapse: collapse;}
.judg-program form table.tbl-yaku-program tr {text-align: center;}
.judg-program table.tbl-yaku-program td input[type="submit"] {font-size: 1.3em; font-weight: 600;}
.judg-program table.tbl-yaku-program select {font-size: 1.1em;}
input[type="submit"] {cursor: pointer;}

.input-method {padding: 0 10px; font-weight: 600;}
.jg-calendar {display: flex; flex-wrap: wrap; gap: 20px; justify-content: center;}
.jg-calendar span {display: block;}

.chart-box {margin: 30px 0 0; text-align: center;}
.chart-box h3.hl-line {font-size: 1.3em; line-height: 1.4;}
.chart-box h3.hl-line span.red {color: red;}
.chart-box p.sentence {margin-top: 10px;}

.scroll {overflow: auto; white-space: nowrap; box-shadow: rgba(50, 50, 93, 0.25) 0px 10px 20px -4px inset, rgba(0, 0, 0, 0.3) 0px 6px 12px -6px inset; padding: 30px;}
.scroll table {width: 100%; background: #fff; border-collapse: collapse; margin-bottom: 10px;}
.scroll table.tbl-yaku-chart th, .scroll table.tbl-yaku-chart td {text-align: center; border: 1px solid #ccc; padding: 5px 10px;}
.scroll table.tbl-yaku-chart th {font-size: 1.1em; font-weight: bold; background: #6c4b24; color: #fff;}
.scroll table.tbl-yaku-chart td p {font-size: 1.1em; font-weight: bold; line-height: 1.6;}
.scroll table.tbl-yaku-chart td span {line-height: 1.4;}
.scroll::-webkit-scrollbar {height: 10px;}
.scroll::-webkit-scrollbar-track {background-color: #fff; border-radius: 4px;}
.scroll::-webkit-scrollbar-thumb {background-color: #cf4323; border-radius: 4px;}
.cl-yaku-01 {background: #ddddff;}
.cl-yaku-02 {background: #ffd8d8;}
.cl-yaku-03 {background: #CCFFCC;}
.cl-yaku-04 {background: #FFFFCC;}

.color-select {margin-top: 20px;}
.color-select ul.cl-yaku {}
.color-select ul.cl-yaku li {float: left; padding: 5px 10px; font-size: 1.1em; font-weight: 600; margin: 0 5px 0 0; border-radius: 3px;}




@media screen and (max-width: 800px) {
	.quick_reference .mt50 {margin-top: 20px;}
    .judg-program form {padding: 20px 15px;}
	.judg-program table.tbl-yaku-program td.sentence span {display: block; margin-bottom: 10px;}
	.judg-program table.tbl-yaku-program select {width: initial; margin-right: 5px;}
    .scroll {padding: 15px;}
    .scroll table.tbl-yaku-chart th, .scroll table.tbl-yaku-chart td {padding: 2px 5px;}
    .scroll table.tbl-yaku-chart th {font-size: 14px;}
    .scroll table.tbl-yaku-chart td span {font-size: 12px;}
    .scroll table.tbl-yaku-chart td p {font-size: 13px; line-height: 1.4;}
    .color-select ul.cl-yaku li {font-size: 13px; margin: 0 5px 5px 0;}
}

@media screen and (max-width: 480px) {
    .input-method {display: block;}
    .jg-calendar {display: block;}
    .lower-body .tbl-yaku-program p {margin-bottom: 1.5em;}
    .lower-body p:last-child {margin-bottom: 0.5em;}
}

/*--------------------
3-5. 年中行事
--------------------*/
.tkj-yt-area.temple_events {margin: 20px 0 0;}
.tkj-yt-area.temple_events .row-ar {justify-content: center;}
.tkj-yt-area.temple_events .col-6 {padding: 10px;}
.temple_events .tkj-yt-movie h4 {font-size: 16px; line-height: 1.4; height: calc(1.7em * 2);}

@media screen and (max-width: 800px) {
    .tkj-yt-area.temple_events .col-6 {-ms-flex: 0 0 50%; flex: 0 0 50%; max-width: 50%;}
    .temple_events .tkj-yt-movie h4 {font-size: 14px;}
}

@media screen and (max-width: 480px) {
    .tkj-yt-area.temple_events .col-6 {-ms-flex: 0 0 100%; flex: 0 0 100%; max-width: 100%;}
}

/*--------------------
3-6. 境内案内
--------------------*/
.annai {}
.annai .row-ar {justify-content: initial;}
.annai .lower-item {}
.annai .col-6 {padding: 10px;}
.annai .lower-header figure {background-color: #fff;}
.annai .lower-header figure img {max-width: 800px;}
.circle-purple {border: solid 1px #c42562;}
.circle-purple p.item-name {background-color: #c42562; font-weight: 600;}
.circle-green {border: solid 1px #8cc63f;}
.circle-green p.item-name {background-color: #8cc63f; font-weight: 600;}
.annai .lower-item p.item-detail {padding: 20px; display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; text-overflow: ellipsis; min-height: 80px;}
.annai .lower-item p.item-detail.open {min-height: initial; -webkit-line-clamp: unset; -webkit-box-orient: unset;}

.trans-port-info {margin-top: 50px;}
.googlemap {}
.googlemap iframe {width: 100%; height: 420px; vertical-align: top;}
.streetview {}
.streetview iframe {width: 100%; height: 420px; vertical-align: top;}



/*--------------------
3-7. 交通案内
--------------------*/
#tkj-access {background: url("../images/lower_page/tkj-lower01.webp") top center repeat-y fixed; background-size: cover;}
#tkj-access .container {max-width: 980px;}
.tkj-access {margin-top: 50px;}
.lower-body.tkj-access h5 {margin-bottom: 1em;}
p.chyuui {border: solid 2px #cf4323; border-radius: 12px; padding: 20px 30px;}
.tkj-parking {margin: 3em 0 0;}
.lower-body.tkj-access .tkj-parking h5 {background-color: #2326CF;}
.lower-body.tkj-access .tkj-parking .please-note h5 {padding: 7px 5px 5px;}
.please-note {border: solid 2px #2326CF; border-radius: 12px; padding: 20px;}
.please-note h5 {text-align: center; font-size: 20px;}
p.not-available {font-size: 20px; font-weight: bold; margin: 0;}
.not_traffic_allowed {margin: 10px 0 40px; text-align: center;}
.not_traffic_allowed img {max-width: 820px;}
.separate-tab {display: inline-block; margin-left: 10px;}
.separate-tab a {display: block;}
.separate-tab a img {max-width: 32px;}
.separate-tab a:hover img {opacity: 0.8;}

.location {margin-top: 50px;}
.location dl {}
.location dl dt {background-color: #4b2249; color: #fff; width: 90px; text-align: center; padding: 2px; border-radius: 20px; margin-right: 10px; float: left;}
.location dl dd {font-size: 1.2em; margin-bottom: 10px; padding-bottom: 10px; border-bottom: dotted 2px #4b2249;}

@media screen and (max-width: 800px) {
	.annai .col-6 {padding: 10px 0;}
	.annai .lower-item {min-height: auto;}
	.annai .made-higher .lower-item {min-height: auto;}
	.annai .make-higher .lower-item {min-height: auto;}
    p.chyuui {padding: 10px; font-size: 14px;}
	.trans-port-info {margin-top: 20px;}
	.googlemap iframe {height: 360px;}
	.streetview iframe {height: 360px;}
	.tkj-access {margin-top: 20px;}
	.location {margin-top: 20px;}
	.location dl dt {float: none; width: 80px; font-size: 0.8em;}
	.location dl dd {font-size: 1em; padding-top: 5px; padding-bottom: 0; margin-bottom: 15px;}
	.annai .lower-body .row-ar.mb50 {margin-bottom: 0;}
    .please-note {padding: 10px;}
    .please-note h5 {font-size: 16px;}
    p.not-available {font-size: 16px;}
    .separate-tab a img {max-width: 24px;}
    .not_traffic_allowed {margin: 10px 0 20px;}
}


/*--------------------
3-8. よくある質問
--------------------*/
.tkj-faq {}
.lower-body.tkj-faq h5 {margin: 50px 0 0;}


.top-main__qa-content {margin-top: 20px;}
.top-main__qa-content__list-items.question {-webkit-align-items: center; align-items: center; background: #fff; box-shadow: rgba(0, 0, 0, 0.1) 0px 4px 12px; -webkit-flex-basis: 920px; flex-basis: 920px; -webkit-justify-content: flex-start; justify-content: flex-start; margin-top: 20px; margin-left: auto; position: relative; width: 100%; height: auto; min-height: 70px; text-align: left; transition: relative;}
.top-main__qa-content__list-items a {color: #121212;}
.top-main__qa-content__list-items p {position: absolute; bottom: 20px; right: 5px; margin: 0; color: #00419d;}
.top-main__qa-content__list-items.question .ico {background: rgb(44,102,185); background: -moz-linear-gradient(155deg, rgba(44,102,185,1) 0%, rgba(44,102,185,1) 75%, rgba(0,65,157,1) 75%, rgba(0,65,157,1) 100%); background: -webkit-linear-gradient(155deg, rgba(44,102,185,1) 0%, rgba(44,102,185,1) 75%, rgba(0,65,157,1) 75%, rgba(0,65,157,1) 100%); background: linear-gradient(155deg, rgba(44,102,185,1) 0%, rgba(44,102,185,1) 75%, rgba(0,65,157,1) 75%, rgba(0,65,157,1) 100%); filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#2c66b9",endColorstr="#00419d",GradientType=1); box-shadow: 0 5px 10px 0 rgb(165 179 185 / 25%); left: 0; position: absolute; top: 0;}
.top-main__qa-content__list-items .ico {-webkit-align-items: center; align-items: center; color: #fff; display: -webkit-flex; display: flex; height: 70px; -webkit-justify-content: center; justify-content: center; width: 70px; font-size: 45px; font-weight: 700;}
.top-main__qa-content__list-items.question .ico img {margin-left: 8px; vertical-align: top; max-width: 45px;}
.top-main__qa-content__list-items.question .txt {font-size: 18px; font-weight: 500; display: block; padding: 10px 50px 10px 40px;}
.top-main__qa-content__list-items .txt {margin-left: 70px; line-height: 1.6;}
	
.qa-space {padding-left: 70px;}
.top-main__qa-content__list-items.answer {background: #f3f8ff; box-shadow: rgba(0, 0, 0, 0.1) 0px 4px 12px; height: auto; -webkit-justify-content: flex-start; justify-content: flex-start; margin-bottom: 40px; width: 100%; text-align: left;}
.top-main__qa-content__list-items.answer .ico {background: rgb(240,96,96); background: -moz-linear-gradient(155deg, rgba(240,96,96,1) 0%, rgba(240,96,96,1) 75%, rgba(211,60,60,1) 75%, rgba(211,60,60,1) 100%); background: -webkit-linear-gradient(155deg, rgba(240,96,96,1) 0%, rgba(240,96,96,1) 75%, rgba(211,60,60,1) 75%, rgba(211,60,60,1) 100%); background: linear-gradient(155deg, rgba(240,96,96,1) 0%, rgba(240,96,96,1) 75%, rgba(211,60,60,1) 75%, rgba(211,60,60,1) 100%); filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#f06060",endColorstr="#d33c3c",GradientType=1); float: left;}
.top-main__qa-content__list-items.answer .ico img {width: 46px; height: 37px;}
.top-main__qa-content__list-items.answer .txt {font-size: 18px; font-weight: 400; line-height: 1.8; -webkit-flex-basis: 850px; flex-basis: 850px; padding: 20px 50px 20px 100px; display: block; margin: 0; text-align: left;}
	
.acd-check {display: none;}
.acd-label {display: block; margin-bottom: 1px;}
.acd-content {height: 0; opacity: 0; transition: .5s; visibility: hidden;}
.acd-check:checked + .acd-label + .acd-content{height: auto; opacity: 1; visibility: visible;}

.tkj-mokuji {margin: 30px 0 0;}
.tkj-mokuji-inner {padding: 10px; border: solid 2px #4b2249; border-radius: 12px;}
.tkj-mokuji-inner ul {display: flex; flex-wrap: wrap;}
.tkj-mokuji-list {}
.tkj-mokuji-list a {}

	
@media (max-width: 800px) {
	.top-main__qa-content {margin-top: 20px;}
	.top-main__qa-content__list-items.question {height: auto; min-height: 44px;}
	.top-main__qa-content__list-items.question:not(:first-of-type){margin-top: 30px; height: auto;}
	.top-main__qa-content__list-items.question .ico {box-shadow: none; height: 42px; left: 0; top: 0; min-width: 42px; width: 42px;}
	.top-main__qa-content__list-items.question .ico img {margin-left: 5px;}
	.top-main__qa-content__list-items .ico img {width: 26px;}
	.top-main__qa-content__list-items.question .txt {font-size: 15px; font-weight: 500; line-height: 1.6; padding: 10px 30px 10px 60px; margin: 0; width: 100%; display: block;	text-align: left;}
	.top-main__qa-content__list-items p {bottom: initial;}
	.qa-space {padding-left: 10px;}
	.top-main__qa-content__list-items.answer {height: auto; margin-bottom: 0; overflow-y: hidden; width: 100%;}
	.top-main__qa-content__list-items.answer .ico {height: 42px; min-width: 42px; width: 42px;}
	.top-main__qa-content__list-items.answer .ico img {margin-left: 5px; width: 26px; height: auto;}
	.top-main__qa-content__list-items.answer .txt {width: 100%; font-size: 15px; font-weight: 400; line-height: 1.6; padding: 15px 15px 15px 60px; display: block;}
	}



/*--------------------
3-9. 門戸厄神縁起
--------------------*/
.aus-origin {margin: 50px 0 0;}

.aus-image {text-align: left;}
.aus-image img {max-width: 120px;}
.lower-body .aus-text p {margin-bottom: 1em; line-height: 1.6; padding: 0 10px;}
.reverse {flex-direction: row-reverse;}
.reverse .aus-image {text-align: right;}


@media (max-width: 800px) {
	.aus-origin {margin: 20px 0 0;}
	.aus-origin .col-2, .aus-origin .col-10 {-ms-flex: 0 0 100%; flex: 0 0 100%; max-width: 100%;}
	.aus-image {text-align: center;}
	.reverse {flex-direction: initial;}
	.reverse .aus-image {text-align: center;}
	.aus-text {margin: 20px 0 0;}
}


/*--------------------
3-10. 人形供養
--------------------*/
.doller {}
.reception {background-color: #fff; border: solid 2px #e0d7c8; border-radius: 7px; padding: 50px;}
.reception-inner {}
.reception-inner h4 {position: relative; margin-bottom: 10px; padding-left: 30px; font-size: 1.2em;}
.reception-inner h4::before {content: ''; background-image: url("../images/lower_page/fude.webp"); background-size: contain; vertical-align: middle; display: inline-block; width: 24px; height: 24px; position: absolute; top: 0; left: 0;}
.reception-inner p {line-height: 1.6;}

.reception.doll-pay {background-color: #f0ecfc; margin: 2em 0 0;}
.doll-pay .reception-inner {display: flex; gap: 20px;}
.doll-pay-image {width: 40%;}
.doll-pay-image h4 {}
.doll-pay-image img {border-radius: 4px;}
.doll-pay-list {width: 60%;}
.doll-pay-list li {position: relative; padding: 0 0 10px 20px;}
.doll-pay-list li::before {content: '●'; color: #442281; font-size: 24px; position: absolute; top: -3px; left: 0;}
.doll-pay-list li:last-child {padding: 0 0 0 20px;}

@media (max-width: 800px) {
	.reception {padding: 20px;}
	.reception-inner.mb30 {margin-bottom: 20px;}
	.reception-inner p {font-size: 0.9em; line-height: 1.3;}
    .doll-pay .reception-inner {display: block;}
    .doll-pay-image {width: 100%; margin: 0 0 1.5em;}
    .doll-pay-list {width: 100%;}
}


/*--------------------
3-11. 写真供養
--------------------*/
.photer {}
.photer .lower-header figure, .doller .lower-header figure {margin: 50px 0 0;}
.boot-row {margin: 10px 0 30px; background-color: #fff;}
.boot-row .col-4 {padding: 5px;}
.boot-image {}
.boot-image img {}


@media (max-width: 800px) {
	.photer .lower-header figure, .doller .lower-header figure {margin: 20px 0 0;}
	.boot-row .col-4 {-ms-flex: 0 0 50%; flex: 0 0 50%; max-width: 50%;}
	.boot-row .col-4:last-child {display: none;}
}


/*--------------------
3-12. その他ご祈祷関連宮前り/七五三/十三詣など
--------------------*/
.reception-inner dl {border: solid 2px #303b94; border-radius: 7px; padding: 1.5em; margin-top: 20px;}
.reception-inner dd {margin: 0 0 10px;}
.reception-inner dd:last-child {margin: 0;}
.reception-inner dd span {background-color: #303b94; color: #fff; padding: 3px 10px; margin-right: 7px;}


/*--------------------
3-13. 厄除けの法話 ～門戸厄神百景～
--------------------*/
.hyakkei {}
.hyakkei .row-ar {gap: 20px;}
.hyakkei .col-4 {max-width: calc(33.333333% - 20px); background-color: #fff;}
.hyakkei .lower-item {padding: 5px;}
.item-iframe {}
.item-iframe iframe {width: 100%; height: auto; aspect-ratio: 16 / 9;}

@media screen and (max-width: 800px){
	.hyakkei .cal-4 {-ms-flex: 0 0 50%; flex: 0 0 50%; max-width: calc(50% - 20px);}
}

@media screen and (max-width: 480px){
	.hyakkei .cal-4 {-ms-flex: 0 0 100%; flex: 0 0 100%; max-width: 100%;}
}

/*--------------------
3-14. お問い合わせ
--------------------*/
.tkj-contact {margin: 50px 0 0;}
.tkj-contact table p {font-weight: 500;}


.contact-box p {text-align: center; margin: 0 0 1em;}
.contact-box p.sentence {font-size: 18px; line-height: 1.6;}
.contact-box p.sentence a {font-size: 18px; line-height: 1.6;}
.contact-box .tbl-form tr th p {margin: 0;}
.hl-under {font-size: 1.4em; font-weight: bold; border-bottom: 1px solid #004055; margin: 2em 0 1em; padding: 0 0 0.5em;}
table.tbl-form {width: 100%; margin: 0 0 30px; border-collapse: collapse;}
table.tbl-form tr th, table.tbl-form tr td {border: 1px solid #ccc; padding: 1em; vertical-align: middle; font-size: 1.1em;}
table.tbl-form tr th {background: #004055; color: #fff; font-weight: bold;  width: 30%; text-align: left;}
table.tbl-form tr th span {font-weight: bold; color: #ffdf05; font-size: .85em; margin-left: 10px;}
.contact-box p.form-text {padding: 0.3em 0; text-align: left;}
.residence p {text-align: left;}
.wpcf7-form-control-wrap {position: relative;}
input[type="text"], input[type="number"], input[type="tel"], input[type="email"], input[type="url"], input[type="password"], input[type="search"], select, textarea {padding: 0.3em; font-family: "游ゴシック体", "Yu Gothic", YuGothic, "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ", Meiryo, sans-serif; border: solid 1px #ccc; font-weight: 500;}
input.per100[type="text"], input.per100[type="email"], textarea {width: 100%;}
.wpcf7-list-item {display: inline-block; margin: 0 0 0 1em;}
input[type="checkbox"] {margin: 0 0.5em 0 0; transform: scale(1.2); vertical-align: 1px;}
.form-button input[type="submit"] {background: #df7e00; color: #fff; font-size: 1.1em; padding: 1em; min-width: 47%; margin: 0 1%; display: inline-block; border-radius: 5px; -webkit-border-radius: 5px; -moz-border-radius: 5px; cursor: pointer; -webkit-transition: all 0.5s ease; transition: all 0.5s ease;}
.form-button {margin-bottom: 2em;}
.form-button input[type="submit"]:hover {background: #301b00;}

.screen-reader-response {display: none;}
.wpcf7-response-output {text-align: center; color: red;}
.wpcf7-not-valid-tip {color: red;}

@media screen and (max-width: 800px){
	table.tbl-form tr th, table.tbl-form tr td {display: block; width: 100%;}
	input[type="text"], input[type="number"], input[type="tel"], input[type="email"], input[type="url"], input[type="password"], input[type="search"], select, textarea {width: 100%;}
}


/*--------------------
4. お知らせ
--------------------*/
.news-section {padding: 50px 0;}
.news-section .lower-inner {padding: 40px 80px;}
.news-section .lower-header {margin: 0 0 24px;}

.news-single-meta {display: flex; flex-wrap: wrap; gap: 15px; justify-content: end; margin: 10px 0;}
.news-single-date {}
.news-single-category {line-height: 1.4;}
.news-single-category span {border-radius: 12px; font-size: 13px; padding: 4px 16px;}

.news-section .lower-header h3 {font-size: 24px;}
.news-section figure.has-nested-images {margin: 0 0 20px;}
.news-section p {margin: 0 0 20px;}

.news-single-footer {margin-top: 10px; text-align: right;}
a.news-single-back {}
.news-single-back::before {font-family: FontAwesome; content: '\f137'; margin-right: 6px;}

@media screen and (max-width: 800px){
	#tkj-lower.news-section {padding: 20px 0 40px;}
	.news-section .lower-inner {padding: 30px 20px;}
	.news-section .lower-header {margin: 0 0 16px;}
	.news-section .lower-header h3 {font-size: 20px;}
}

/* 前の記事・次の記事
---------------------------------- */
.news-single-pager {display: flex; flex-wrap: wrap; margin: 30px 0 0; border: solid 1px #ddd; background: #ddd;}
.news-single-pager a {width: 50%; height: 110px; padding: 15px; color: #fff; border: solid 1px #ddd; background-color: #999;}
.news-single-pager a:hover {background-color: #4b2249;}
.news-single-pager span {display: block; text-align: center; font-weight: bold; margin: 0 0 5px;}
span.news-single-prev-title, span.news-single-next-title {font-weight: initial; text-align: left; display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 2; height: 52px; overflow: hidden; margin: 0;}

@media screen and (max-width: 480px){
	.news-single-pager a {padding: 5px; height: 86px;}
	.news-single-pager span {font-size: 14px;}
	span.news-single-prev-title, span.news-single-next-title {height: 48px;}
}

/* お知らせ一覧
---------------------------------- */
.lower-inner.news-archive-wrap {padding: 60px 80px;}
.lower-inner.news-archive-wrap .lower-header {margin: 0 0 40px;}
.news-archive-wrap .lower-body {margin: 15px 0; padding: 0 0 15px; border-bottom: solid 1px #4b2249;}
.news-archive-title {position: relative; background: rgba(97, 37, 98, 0.1); padding: 8px; font-size: 20px; font-family: "Times New Roman", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "メイリオ", Meiryo, serif;}
.news-archive-title::before {font-family: FontAwesome; content: '\f10c'; margin: 0 7px 0 0;	color: #612562;}
.news-archive-title span {margin: 0 0 0 2px;}
.news-archive-inner {display: flex; flex-wrap: wrap; gap: 20px; margin: 15px 0 0;}
.news-archive-thumb {max-width: 135px;}
.news-archive-body {width: calc(100% - 155px);}
.news-archive-date {float: right; margin: 0 5px;}
.news-archive-ctegory {float: left;}
.news-archive-ctegory span {border-radius: 12px; font-size: 13px; padding: 4px 16px;}
.uncategorized {background-color: #bcbcbc; color: #000;}
.temple_event {background-color: #612562; color: #fff;}
.market {background-color: #0ca4a4; color: #fff;}
.online_prayer {background-color: #cc44aa; color: #fff;}
.lower-body p.news-archive-excerpt {clear: both; margin: 0; line-height: 1.6; height: 76px; overflow: hidden;}
.lower-body p.news-archive-excerpt span {display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 3;}
.news-archive-body a {padding: 5px; float: right;}
.news-archive-body a::before {font-family: FontAwesome; content: '\f138'; margin: 0 5px 0 0; color: #b31d1b;}

@media screen and (max-width: 800px){
	.lower-inner.news-archive-wrap .lower-header {margin: 0 0 25px;}
	.lower-inner.news-archive-wrap {padding: 30px 20px;}
	.news-archive-wrap .lower-body {margin: 10px 0; padding: 0 0 10px;}
	.news-archive-title {font-size: 16px;}
	.news-archive-inner {gap: 10px; margin: 10px 0 0;}
	.news-archive-thumb {max-width: 90px;}
	.news-archive-body {width: calc(100% - 100px);}
	.news-archive-date {font-size: 14px;}
	.news-archive-ctegory span {font-size: 12px; padding: 3px 14px;}
	.lower-body p.news-archive-excerpt {font-size: 14px; line-height: 1.5; height: 47px; padding: 5px 0 0;}
	.lower-body p.news-archive-excerpt span {-webkit-line-clamp: 2;}
	.news-archive-body a {padding: 0 5px;}
}

@media screen and (max-width: 480px){
	.news-archive-date, .news-archive-ctegory {float: none;}
	.lower-body p.news-archive-excerpt {display: none;}
	.news-archive-date {display: block; margin: 5px 0;}
}

/* ページネーション
---------------------------------- */
.pagination-wrap {margin-top: 30px;}
.news-archive-pagination {}
.news-archive-pagination ul.page-numbers {display: flex; flex-wrap: wrap; justify-content: center; gap: 10px; list-style: none; margin: 0; padding: 0;}
.news-archive-pagination ul.page-numbers li {display: inline-flex; background: #ddd; border: 1px solid #999; border-radius: 2px;}
.news-archive-pagination .page-numbers {display: inline-flex; align-items: center; justify-content: center; min-width: 40px; height: 40px; padding: 0 12px; border-radius: 2px; text-decoration: none; line-height: 1; color: #000; transition: all 0.3s ease;}
.news-archive-pagination .page-numbers.current {background: #000; border-radius: 2px; color: #fff; font-weight: 600;}
.news-archive-pagination .page-numbers.next, .news-archive-pagination .page-numbers.prev {min-width: 72px;}
.news-archive-pagination .page-numbers.dots {border: none; background: transparent; padding: 0 6px; min-width: auto;}
.news-archive-pagination a.page-numbers:hover {background: #4b2249; color: #fff;}

@media screen and (max-width: 480px){
	.news-archive-pagination .page-numbers {min-width: 36px; height: 36px; padding: 0 10px; border-radius: 7px;}
}

