@charset "utf-8";
/*
Theme Name: ishibaji
Theme URI: https://toikota.com/
Author: toikota design studio
Author URI: https://toikota.com/
Version: 2.0.0
*/
/* リセットCSS */
*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{-webkit-text-size-adjust:100%;-webkit-tap-highlight-color:transparent}main{display:block}h1,h2,h3,h4,h5,h6{font-size:inherit;line-height:inherit;font-weight:bold;margin:0}a{text-decoration:none;color:inherit;transition:all .3s ease-in-out}img{display: block;max-width:100%;height:auto;vertical-align: middle;}ol,ul{list-style:none}table{border-collapse:collapse}input,textarea,select{font:inherit;line-height:inherit;border:1px solid #ccc;padding:8px;}textarea{resize:vertical}button{padding: 0;font-family: inherit;appearance: none;cursor: pointer;background-color: transparent;border: none;}fieldset{border:0;padding:0;margin:0;min-width:0}legend{display:block;width:100%;max-width:100%;padding:0;white-space:normal}[hidden],template{display:none}:focus-visible{outline:2px solid #000}

/* 汎用CSS
===================================================== */
/* スマホでテキストの折り返し用 */
.ib {display: inline-block}

/* フォーム */
label {margin-bottom:8px;}
select,
input[type=date],
input[type=email],
input[type=number],
input[type=password],
input[type=tel],
input[type=text],
input[type=url],
textarea {width: 100%;max-width: 100%;padding: 8px 16px;background-color: #fff;margin-top: 4px;}
select,input,textarea {line-height: 1.1;font-family: inherit;font-size: inherit;font-weight: inherit;}

input[type="submit"],
input[type="button"]{padding: 12px 16px;}

.fontM{font-family: 游明朝,"Yu Mincho",YuMincho,"Hiragino Mincho ProN","Hiragino Mincho Pro",HGS明朝E,メイリオ,Meiryo,serif;}
.fontG{font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", sans-serif;}
.fonten{font-family:var(--en-font)}

:root {
	--font-color: #fff;
	--black-color:#101010;
	--main-color:#E75413;
	--secondary-color:#F27C47;
	--bg-color:#061706;
	--gray-color:#969696;
	--main-font:"Noto Serif JP", sans-serif;
	--hover-transform:all .3s ease-in-out;
	--hamburger-transform:display .5s ease-in-out;
	--show-anime:opacity .5s , translate 1s;
	--vertical-txt-line:2.3;
	--clip-triangle-top: polygon(50% 0, 100% 100%, 0 100%);
	--clip-triangle-bottom: polygon(0 0, 100% 0, 50% 100%);
	--clip-triangle-right: polygon(0 0, 100% 50%, 0 100%);
	--clip-triangle-left: polygon(0 50%, 100% 0, 100% 100%);
	--clip-triangle-lower-left: polygon(0 0, 100% 100%, 0 100%);
	--clip-triangle-upper-left: polygon(0 0, 100% 0, 0 100%);
	--clip-triangle-lower-right: polygon(100% 0, 100% 100%, 0 100%);
	--clip-triangle-upper-right: polygon(0 0, 100% 0, 100% 100%);
}

::selection {background-color: var(--black-color);color:#fff;}

/* 基本レイアウト
===================================================== */

html{height: -webkit-fill-available;}
body{min-height: 100vh;min-height: -webkit-fill-available;}

body {font-size: 14px;font-family:var(--main-font);line-height:1.6;letter-spacing: .05em;color: var(--font-color);text-align: justify;font-feature-settings: "palt";}
body.fix {position: fixed;overflow: hidden;width: 100vw;height: 100vh;}

#page{overflow:hidden;}
.container{width: 1144px;max-width: 100%;padding-inline: 24px;margin-inline: auto;position: relative;z-index:11}

@media(max-width:720px){
	body{font-size:14px;}
}


/* 投稿一覧
===================================================== */

.archive-content-wrap{background-color:#d8d8d8;padding-block: 80px;}
.posts-item{width: 800px;max-width: 100%;margin-inline:auto;}
.posts-item:not(:first-of-type){margin-top:40px;border-top:1px solid #101010;padding-top:40px;}
.posts-cat-list{display:flex;flex-wrap:wrap;gap:8px 1em;}
.posts-cat-list li{padding-block:2px;padding-inline:16px;border: 1px solid;font-size: 12px;color: #101010;}
.posts-update{display: block;color:#101010;margin-top:2em;}
.posts-tit{margin-top:1em;font-size: 16px;color: #101010;}
.posts-more{width:fit-content;margin-top: 1em;margin-left:auto}
.posts-more a{color: #101010;}
.posts-more a::before{content:'';display:inline-block;width:13px;aspect-ratio:1/1;background-color: #101010!important;border-radius:100px;margin-right: 8px;vertical-align: -1px;transition:var(--hover-transform)}

.article-wrap{width: 800px;max-width: 100%;margin-inline:auto;}
.posts-list-content{position:relative;display:flex;flex-direction:column;}

/* ページネーション */
.pagination{margin-top: 80px;}
.nav-links ul{position: relative;display:flex;gap: 8px;align-items: center;justify-content: center;width: 100%;flex-wrap: wrap;line-height: 1;}
.nav-links li .page-numbers{width:40px;aspect-ratio:1;color: #101010;border: 1px solid;display:grid;place-items:center;background-color: #fff;position:relative;}
.nav-links li .page-numbers.current{background-color: #101010;border: 1px solid;color: #fff;}

/* 記事
===================================================== */
.single-content-wrap{background-color: #d8d8d8;padding-block: 80px;color: #101010;text-align: left;line-height: 2;}

/* 関連記事 */
.single-related{margin-block: 80px 40px;}
.single-related-list{display:grid;gap: 32px;grid-template-columns:repeat(2,minmax(0,1fr));margin-top: 24px;}
.single-related-list li{position:relative;}
.single-related-tit{font-size: 24px;}
.single-related-item{display:grid;grid-template-columns: 160px minmax(0,1fr);gap: 16px;}
.single-related-img{width:100%;aspect-ratio:3/2;}
.single-related-img img{width:100%;height:100%;object-fit:cover;}
.single-related-des{display:flex;flex-direction:column;}
.single-related-des h4{line-height:1.2;color: #fff;}

/* 投稿者情報 */
.author-info{padding-block: 40px;padding-inline: 24px;background-color: #E4E4E4;color: #101010;}
.author-name{width:fit-content;}
.author-name img{width: 80px;}
.author-data{margin-top: 1em;}
.author-data-head{font-size:12px;}
.author-data-body{margin-top:1em;font-size: 12px;}
.author-googlemap{margin-top: 8px;}
.author-googlemap a{font-size:14px;font-family:var(--en-font);line-height:1;display:inline-block;padding:8px 24px;background-color: #fff;}
.author-contact{margin-top: 1em;}

.single-content-item{/* color: #fff; */}
.shingle-update{font-family:var(--en-font)}
.single-title{font-size: 24px;margin-bottom: 1em;}
.single-thumbnail{margin-bottom: 40px;}

/* 記事コンテンツ内部 */
.single-content h2{font-size: 24px;padding-block:8px;margin-block:1em;text-decoration: underline;text-underline-offset: 8px;}
.single-content h3{font-size: 24px;padding-block:8px;margin-block:1em;border-bottom:1px solid;}
.single-content h4{font-size: 24px;color: var(--main-color);margin-block: 1em 4px;padding-top: .5em;border-top:1px solid ;}
.single-content h5{font-size: 16px;font-weight: 700;margin-block:1em}
.single-content a {text-decoration:underline;text-underline-offset:4px;}
.single-content img{display:block;}

/* レイアウト用 */
/* 文字に蛍光ペンで引いたような下線 */
.marker{background:linear-gradient(transparent 65%, #fff366 65%);display:inline;font-weight:600}

.single-posts-nav{margin-block: 40px;border-top: 1px solid;}
.single-posts-nav ul{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);margin-top:40px;}
.single-posts-nav ul li a{display:block;padding-inline:24px;/* color: #fff; */position: relative;}
.single-posts-nav ul li a::after{content:'';position:absolute;width:10px;aspect-ratio:1/1;border-top:1px solid;border-right:1px solid;top: 24px;}
.single-posts-nav ul li.single-next{text-align:right;}
.single-posts-nav ul li.single-next a::after{rotate:45deg;right:0;}
.single-posts-nav ul li.single-previous a::after{rotate:225deg;left:0;}
.single-posts-nav ul li.single-previous{border-right:1px solid}
.single-prev-txt,
.single-next-txt{font-size:12px;}

.single-more{width:fit-content;margin-top:40px;margin-inline:auto}
.single-more a::before{content:'';display:inline-block;width:13px;aspect-ratio:1/1;background-color: #fff!important;border-radius:100px;margin-right: 8px;vertical-align: -1px;transition:var(--hover-transform)}

/* 記事ページネーション */
.single-pagination{width:400px;max-width: calc(100% - 32px);margin:64px auto 0;}
.single-pagination ul{display:flex;justify-content: space-between;gap: 16px;}
.single-pagination li a{display:block;font-size:14px;font-weight: bold;padding: 4px 24px;border:1px solid #000;text-align:center;position:relative;line-height: 1;}
.single-pagination li.single-previous,
.single-pagination li.single-next{width: 97px;font-size:12px;font-family: var(--en-font);font-weight:bold;}
.single-pagination li.single-previous a::before{content:'';display:inline-block;width: 8px;height: 8px;border-bottom:1px solid #000;border-left:1px solid #000;margin-right:8px;transform: rotate(45deg);vertical-align: 1px;}
.single-pagination li.single-next a::after{content:'';display:inline-block;width: 8px;height: 8px;border-top:1px solid #000;border-right:1px solid #000;margin-left:8px;transform: rotate(45deg);vertical-align: 1px;}

@media(max-width:767px) {
	.single-related-list{grid-template-columns:repeat(1,minmax(0,1fr));}
	.single-related-item{grid-template-columns:120px minmax(0,1fr)}
}

/* WPの汎用（ギャラリーとか）
===================================================== */
.wp-caption .wp-caption-text,.gallery-caption {color: #666;}
.wp-caption a:focus img,.wp-caption a:active img,.wp-caption a:hover img {background: #fff;border-color: #ddd;}
.image-attachment div.attachment {background: #f9f9f9;border: 1px solid #ddd;}
.image-attachment div.attachment img {border-color: #f9f9f9;}
.image-attachment div.attachment a:focus img,.image-attachment div.attachment a:hover img,.image-attachment div.attachment a:active img {border-color: #ddd;background: #fff;}
.gallery-caption {background-color: rgba(0, 0, 0, 0.7);color: #fff;}
.singular figure.pmainimg {margin: 0 0 10px;}
.singular figure.pmainimg img {margin: 0 auto;display: block;}
#nav-single img,.postsimg img,.widget_image img,#event_c img {margin: 0 auto;display: block;max-height: 600px;max-width: 100%;height: auto;width: auto;object-fit: cover;}
.gstyle .postsimg {width: 100%;height:170px;background: #000; }
.gstyle .postsimg a{display: block;height: 100%;display: flex;align-items: center;justify-content: center;}
.gstyle .postsimg.nonimg img{width: 80%;height: auto;}
.entry-content img,.comment-content img,.widget img {max-width: 100%;padding: 0;}
img[class*="align"],img[class*="wp-image-"],img[class*="attachment-"] {height: auto;}
.entry-content img.wp-smiley {border: 0;margin-bottom: 0;margin-top: 0;padding: 0;}
.widget img {margin: 0 auto 10px;display: block;}
img.alignleft,img.alignright,img.aligncenter {margin-bottom: 10px;}
p .alignnone {margin: 20px auto;display: block;}
.wp-caption {margin: .4em 0;}
.wp-caption {margin-bottom: 10px;max-width: 96%;padding: 5px;background: #eee;}
.wp-caption img {display: block;margin: 0 auto;max-width: 100%;}
.wp-caption .wp-caption-text,.gallery-caption {font-size: 12px;}
.wp-caption .wp-caption-text {margin: 5px 0;padding: 5px 1%;position: relative;text-align: center;}
.image-attachment div.attachment {border-width: 1px 0;margin: 0 -8.9% 1.625em;overflow: hidden;padding: 1.625em 1.625em 0;text-align: center;}
.image-attachment div.attachment img {display: block;height: auto;margin: 0 auto 1.625em;max-width: 100%;}
.image-attachment .entry-caption p {font-size: 85%;letter-spacing: .1em;line-height: 2.6em;margin: 0 0 2.6em;text-transform: uppercase;}
.gallery {margin: 20px auto;column-gap: 0;}
.gallery-columns-1 {column-count: 1;}.gallery-columns-2 {column-count: 2;}.gallery-columns-3 {column-count: 3;}.gallery-columns-4 {column-count: 4;}.gallery-columns-5 {column-count: 5;}.gallery-columns-6 {column-count: 6;}.gallery-columns-7 {column-count: 7;}.gallery-columns-8 {column-count: 8;}.gallery-columns-9 {column-count: 9;}.gallery a img {border: 0;}
.gallery-item {padding: 5px;-webkit-column-break-inside: avoid;page-break-inside: avoid;break-inside: avoid;}
.gallery-caption {box-sizing: border-box;font-size: 12px;font-size: 80%;line-height: 1.5;margin: 0;max-height: 60%;padding: 6px 8px;position: absolute;bottom: 0;left: 0;text-align: left;width: 100%;}
.gallery-caption:before {content: "";height: 100%;min-height: 49px;position: absolute;top: 0;left: 0;width: 100%;}
dl.gallery-item {margin: 0;}
.gallery-item:hover .gallery-caption {opacity: 1;}
.ie7 .gallery-item:hover .gallery-caption,.ie8 .gallery-item:hover .gallery-caption {filter: alpha(opacity=70);}
.gallery-columns-7 .gallery-caption,.gallery-columns-8 .gallery-caption,.gallery-columns-9 .gallery-caption {display: none;}

/* ヘッダー
===================================================== */
.sec-header{position:absolute;height:100dvh;width: fit-content;z-index: 111;transition: all .5s ease-in;}
.header-content{width:100%;}
.header-logo{position:absolute;left: 116px;top:32px;}
.header-logo a{display:flex;gap: 14px;flex-direction: row-reverse;}
.header-logo a span{writing-mode:vertical-rl;}
.header-logo a img{width:38px;margin-top:24px;}
.header-nav{width:fit-content}
.header_Menu_list{display:grid;gap: 1.5em;padding:30px;}
.header_Menu_list li a{writing-mode:vertical-rl;}

.home .sec-header{opacity:0;width:100%;}
.home .header-logo{position:absolute;inset:0;margin:auto;display:grid;place-items:center;pointer-events: none;}
.home .header-logo a img{width: 100%;margin-top:40px;}
.active.home .sec-header{opacity:1}

/* ハンバーガーメニュー */
.header-hamburger{display:none}
.hamburgerbutton {position: fixed;display: block;text-decoration: none;-webkit-appearance: none;-moz-appearance: none;appearance: none;border: none;cursor: pointer;height: 78px;width: 78px;background-color: transparent;padding: 0;margin:0 auto;top: 0;right: 0;z-index: 111;}
.hamburgerbutton-line {position: absolute;inset:0;margin: auto;width: 32px;height: 2px;-webkit-transition: inherit;transition: inherit;background-color: var(--font-color);}
.hamburgerbutton-line::before,
.hamburgerbutton-line::after {position: absolute;display: block;width: 100%;height: 100%;background-color: inherit ;content: '';-webkit-transition: inherit;transition: inherit;transition: transform .2s;}
.hamburgerbutton-line::before {top: -8px;}
.hamburgerbutton-line::after {top: 8px;}
.hamburgerbutton[aria-expanded="true"] .hamburgerbutton-line {background-color: transparent;}
.hamburgerbutton[aria-expanded="true"] .hamburgerbutton-line::before,
.hamburgerbutton[aria-expanded="true"] .hamburgerbutton-line::after {top: 0;background-color: var(--font-color);}
.hamburgerbutton[aria-expanded="true"] .hamburgerbutton-line::before {transform: rotate(45deg);width:100%;}
.hamburgerbutton[aria-expanded="true"] .hamburgerbutton-line::after {transform: rotate(-45deg);width:100%;}
.visuallyHidden {position: absolute;white-space: nowrap;width: 1px;height: 1px;overflow: hidden;border: 0;padding: 0;clip: rect(0 0 0 0);clip-path: inset(50%); margin: -1px;}
.nav_hamburger_menu{position:fixed;inset: 0;margin: auto;width:100%;height: 100dvh;backdrop-filter: blur(15px);background-color: var(--black-color);overflow: auto;transition: opacity .5s;align-items: center;display:none;}

.hamburger-content{width: 420px;max-width: calc(100% - 48px);height: 100%;overflow: auto;margin-inline: auto;padding-inline: 40px;padding-block: 80px;}
.hamburger-nav-wrap{display:flex;justify-content: space-between;gap: 40px;width: 100%;}

.hamburger-logo img{width: 120px;margin-top:8px;}
.hamburger_Menu{margin-top: 80px;}
.hamburger_Menu li:not(:first-child){margin-top: 1em;}
.hamburger_Menu li a{display: block;font-size: 18px;font-weight: 200;padding-bottom: .5em;border-bottom: 1px solid var(--gray-color);}
.is-drawerActive .hamburgerbutton{z-index: 1112;background-color:transparent}
.is-drawerActive .nav_hamburger_menu{display: flex;}
.hamburger-link{display:flex;align-items:center;justify-content: center;gap: 40px;margin-top: 24px;}
.hamburger-link p{width:48px;aspect-ratio:1/1;display:grid;place-items:center;filter:grayscale(100%)}

.is-drawerActive .sec-header{position:absolute;width:100%;z-index: 1111;}


/* フッター
---------------------------- */
.sec-footer{background-color: var(--bg-color);margin-top:-44px;}
.footer-content{padding-block: 80px 40px;padding-inline:40px;display:flex;gap: 40px;align-items: flex-end;}
.footer-logo a{display:flex;flex-direction:row-reverse;gap: 8px;}
.footer-logo a span{writing-mode:vertical-rl;}
.footer-logo a img{margin-top:40px;}
.footer_Menu_list{display:flex;flex-direction:row-reverse}
.footer_Menu_list li{writing-mode:vertical-rl;margin-block:4px;}
.site-generator{font-size: 12px;text-align: center;padding-block: 16px 8px;}


@media(max-width:1024px){
	.header-nav{display:none;}
	.header-hamburger{display:block;}
	.header-content{padding-top:24px;padding-left:24px;}
	.header-logo{position:relative;left: 0;top: 0;}
	.footer-logo a img{width:40px;}
}

@media(max-width:640px){
	.sec-footer{margin-top:0;}
}
/*-------------------------------------
/* 共通
--------------------------------------- */
.page-header{height:100dvh;min-height:640px;background:#1C1C1C;position: relative;}
.page-header::before{content:'';position:absolute;inset:0;margin:auto;width:100%;height:31vh;min-height:240px;}
.page-header-item{height:100dvh;min-height:640px;display: grid;grid-template-columns: minmax(0 , 1fr) auto minmax(0 , 1fr);gap: 80px;}
.page-header-item::before{content:'';}
.page-header-item h2{order:2;margin-left:auto;margin-top:12vh}

.more a{text-decoration:underline;text-underline-offset:4px;}
.more a::before{content:'';display:inline-block;width:13px;aspect-ratio:1/1;background-color: #fff;border-radius:100px;transition:var(--hover-transform)}
.more.v-rl a{writing-mode:vertical-rl;letter-spacing:.3em;}
.more.v-rl a::before{margin-bottom:8px;}

.noPost{text-align:center;}

.fadeUP{opacity: .0;translate: 0 50px;transition:var(--show-anime);}
.fadeLeft{opacity: .0;translate: -50px 0;transition:var(--show-anime);}
.fadeRight{opacity: .0;translate: 50px 0;transition:var(--show-anime);}
.fadeIn{opacity: .0;transition:var(--show-anime);}
.show .fadeUP{opacity:1;translate:0}
.show .fadeLeft{opacity:1;translate:0}
.show .fadeRight{opacity:1;translate:0}
.show .fadeIn{opacity:1;}
.show .delay2{transition-delay:.2s}
.show .delay4{transition-delay:.4s}
.show .delay6{transition-delay:.6s}


/*-------------------------------------
/* ホバースタイル
--------------------------------------- */

@media (hover: hover){
	.more a:hover::before{scale:1.1}
	.contact-more a:hover{border-color:var(--black-color)}
}


/* TOP
===================================================== */
.sec-mv{position:relative;}
.sec-mv::before{content:'';position:absolute;inset:0;margin:auto;background-color:rgb(0,0,0,.8);transition: all 2s ease-in;z-index: 11;}
.active .sec-mv::before{background-color:rgb(0,0,0,.2);}
.mv-img{height:100dvh;min-height:640px;}
.mv-img img{width:100%;height: 100dvh;object-fit:cover}
.sec-about{height:100dvh;min-height:640px;background:url(./images/about-bg.jpg)no-repeat center / cover;padding-block:80px;position:relative}
.sec-about::before{content:'';position:absolute;inset:0;margin:auto;background-color:rgb(0,0,0,.5);opacity:1}
.sec-about .container{height:100%;}
.about-wrap{display:grid;place-items:center;height:100%;grid-template-columns: minmax(0,1fr);}
.about-item{display:flex;flex-direction:row-reverse;justify-content:space-between;width:560px;max-width:100%;margin-inline:auto;}
.about-item-txt{writing-mode:vertical-rl;letter-spacing: .3em;line-height:var(--vertical-txt-line);margin-block:auto;padding-inline: 96px 64px;}
.about-item .more{margin-top:auto;}
.sec-treasure{padding-block: 96px 24px;background-color:var(--bg-color)}
.treasure-item{display:grid;grid-template-columns: 420px minmax(0,1fr);width: 1000px;max-width: 100%;margin-inline: auto;}
.treasure-item-head{display:flex;flex-direction:row-reverse;justify-content: center;gap:80px;order: 2;}
.treasure-item-body{display:grid;grid-template-columns: auto minmax(0,1fr);gap:80px;}
.treasure-item-txt{writing-mode:vertical-rl;letter-spacing: .3em;line-height:var(--vertical-txt-line);}
.treasure-img{order:2}
.treasure-item .more{margin-block: auto 40px;}
.sec-infomation{padding-block: 160px;background:url(./images/accent-bg.jpg)repeat-y center / contain}
.info-item{display:flex;gap:10%;}
.info-item h2{margin-inline:6%;}
.info-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));color:var(--black-color);gap:40px;}
.info-list li{display: flex;flex-direction: column;}
.info-list li .info-tit{margin-top:4em;line-height:2}
.info-list li .more{margin-top:auto;padding-top: 1em;}
.info-list li .more a::before{background-color:var(--black-color);margin-right:8px;vertical-align:-1px;}

.visit-item-wrap{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));background-color:var(--bg-color);}
.visit-item{padding:40px;position: relative;display: grid;align-items: center;}
.visit-item-wrap figure{width:100%;height:100dvh;min-height:650px;}
.visit-item-wrap figure img{display: block;width:100%;height:100%;object-fit:cover}
.visit-item-in{width: fit-content;margin-inline: auto;display: grid;grid-template-columns: minmax(0 , 1fr) auto;gap: 80px;}
.visit-item-in h2{order:2;margin-left:auto}
.visit-item-txt{writing-mode:vertical-rl;letter-spacing: .3em;line-height:var(--vertical-txt-line);margin-block:auto;width:fit-content;margin-top: 160px;}
.visit-item .more{position:absolute;bottom:40px;left:40px;}

.event-item-wrap{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));background-color:var(--bg-color);}
.event-item{padding:40px;position: relative;display: grid;align-items: center;}
.event-item-wrap figure{width:100%;height:100dvh;min-height:650px;}
.event-item-wrap figure img{display: block;width:100%;height:100%;object-fit:cover}
.event-item-in{width: fit-content;margin-inline: auto;display: grid;grid-template-columns: minmax(0 , 1fr) auto;gap: 80px;}
.event-item-in h2{order:2;margin-left:auto}
.event-item-txt{writing-mode:vertical-rl;letter-spacing: .3em;line-height:var(--vertical-txt-line);margin-block:auto;width:fit-content;margin-top: 160px;}
.event-item .more{position:absolute;bottom:40px;left:40px;}

.life-item-head{padding-block: 160px;background:url(./images/accent-bg.jpg)repeat-y center / contain;text-align:center;}
.life-item-body{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}

.sec-access{padding-block: 160px;background:url(./images/accent-bg.jpg)repeat-y center / contain}
.access-item-wrap{display:grid;grid-template-columns:minmax(0,1fr) 700px minmax(0,1fr);}
.access-item-wrap::before{content:'';}
.access-item-wrap h2{order:3;margin-left:auto;}
.access-item{order:2;margin-top:80px;}
.access-map{width:100%;height:270px;background-color: #C1C1C1;}
.access-map iframe{width:100%;height:100%;mix-blend-mode: luminosity;}
.access-des{color:var(--black-color)}
.access-des-head dt{;margin-top:1em;}
.access-des-head dd{margin-top:.5em;text-align: left;}
.access-des-body{margin-top:24px;}
.access-des-body dl:not(:first-of-type){margin-top:.5em}
.access-des-body-in{display:grid;grid-template-columns:200px minmax(0,1fr);align-items:center;padding-block:1em;padding-inline:20px;background-color:#fff;}
.access-des-body dd{padding-left:24px;border-left:1px solid;}

.contact-more-item{width: 748px;max-width:100%;margin-inline:auto;padding-inline: 24px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;position: relative;margin-top: -48px;}
.contact-more a{display:block;color:var(--black-color);text-align:center;background-color:#fff;padding-block:32px;padding-inline:24px;border: 1px solid #fff;}
.contact-more.more a::before{background-color:var(--black-color);vertical-align:middle;margin-right:8px}

/* 石馬寺について
===================================================== */
.content-about .page-header::before{background:url(./images/page-about-kv.jpg)no-repeat center / cover}
.page-about-catch{font-size: 18px;align-content:flex-end;padding-bottom: 17vh;}
.page-about-item-wrap{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));background-color:var(--bg-color);}
.page-about-item{padding:40px;position: relative;display: grid;align-items: center;grid-template-columns: minmax(0,1fr);}
.page-about-item-wrap figure{width:100%;}
.page-about-item-wrap figure img{display: block;width:100%;height:100%;object-fit:cover;object-position: center;}
.page-about-item-in{width: 78%;max-width:100%;margin-inline: auto;}
.page-about-item-in h3{width:fit-content;;margin-inline:auto;margin-bottom:48px}
.page-about-item-txt-note{font-size:12px;margin-top:2em;}
.sec-page-jiho{height:100dvh;min-height:640px;background-color:var(--bg-color);padding-block:80px;position:relative}
.sec-page-jiho .container{height:100%;}
.page-jiho-item-wrap{display:grid;place-items:center;height:100%;}
.page-jiho-item{display: grid;grid-template-columns: minmax(0 , 1fr) auto minmax(0 , 1fr);gap: 80px;}
.page-jiho-item::before{content:'';}
.page-jiho-item h3{order:2}
.page-jiho-item-txt{writing-mode:vertical-rl;letter-spacing: .3em;line-height:var(--vertical-txt-line);margin-block:auto;padding-inline: 96px 64px;text-orientation: upright;}
.page-jiho-item-txt span{text-combine-upright: all;padding-bottom: .4em;}
.sec-page-treasure-1{background-color:var(--bg-color)}
.page-treasure-kv{width:100%;aspect-ratio:5.7/1}
.page-treasure-kv img{width:100%;height:100%;object-fit:cover}
.page-treasure-head{background-color:var(--bg-color)}
.page-treasure-head h3{width:fit-content;margin-top: -80px;margin-bottom: -80px;margin-left:auto;}

.sec-page-treasure-2{background-color:var(--bg-color)}
.page-treasure-item-wrap{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));}
.page-treasure-item{padding:40px;position: relative;background-color: #283128;display: grid;place-items: center;}
.page-treasure-item-wrap figure{width:100%;}
.page-treasure-item-wrap figure img{display: block;width:100%;height:100%;object-fit:cover}
.page-treasure-item-in{width: fit-content;max-width:100%;margin-inline: auto;display: grid;grid-template-columns: 40px minmax(0,1fr) 40px;gap: 72px;place-items: center;}
.page-treasure-item-in::before{content:'';}
.page-treasure-item-in h3 span{display: inline-block;order:0;writing-mode:vertical-rl;white-space: pre;font-size:30px;font-weight:400;letter-spacing: .3em;}
.page-treasure-item-txt span{display: inline-block;white-space: pre;writing-mode:vertical-rl;font-size: 16px;letter-spacing: .3em;text-decoration:underline;text-underline-offset:10px;}
.juichimenkannon-item .page-treasure-item-in::before{content:'二体';writing-mode:vertical-rl;font-size: 16px;letter-spacing: .3em;margin-top:auto;}
.page-treasure-other-item{padding-block:80px;background-color:var(--bg-color);}
.page-treasure-other-item h3{font-size:18px;text-align:center;text-decoration:underline;text-underline-offset:12px;}
.page-treasure-other-item ul{display: flex;flex-wrap: wrap;justify-content: center;gap:1.5em;margin-top:40px;text-align:center;}
.page-jyuyoujiho .page-treasure-head h3{margin-bottom:0;padding-bottom:80px}
.page-jyuyoujiho-content{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);}
.page-jyuyoujiho-content .page-treasure-item-in{gap:40px;}
.page-jyuyoujiho-content .page-treasure-item-in h3{order:1;font-size:22px;}
.page-jyuyoujiho-content .page-treasure-item-in::before{order:3}
.page-jyuyoujiho-content .page-treasure-item-txt{margin-top:auto;text-decoration:none;}

/* 拝観／年間行事
===================================================== */
.content-visit .page-header{background-color:var(--bg-color)}
.content-visit .page-header::before{background:url(./images/page-visit-kv.jpg)no-repeat center / cover}
.page-visit-anchor{font-size: 18px;align-content:flex-end;padding-bottom: 17vh;display:flex;align-items:flex-end;justify-content:center;gap: 16px 80px;flex-wrap: wrap;}
.page-visit-anchor p{width:200px;}
.page-visit-anchor a{display:block;padding-bottom:.5em;border-bottom:1px solid;position:relative;}
.page-visit-anchor a::after{content:'';position:absolute;right:8px;top:8px;;width:10px;aspect-ratio:1/1;border-left:1px solid;border-bottom:1px solid;rotate:-45deg;vertical-align:4px;margin-left:80px;}
.sec-page-haikan{padding-block: 215px 160px;background-color:var(--bg-color);position:relative;}
.sec-page-haikan::before{content:'';position:absolute;width:100%;height:calc(100% - 57px);background-color:#283128;bottom:0;}
.page-haikan-item{display: grid;grid-template-columns: auto minmax(0,1fr) auto;gap: 100px;}
.page-haikan-item::before{content:'';}
.page-haikan-item h3{order:2;margin-top: -215px;}
.page-haikan-table tr{border-top:1px solid #707070;border-right:1px solid #707070}
.page-haikan-table th{width:228px;padding-block:27px;padding-inline:20px;background-color:#333933;border-left:1px solid #707070;border-bottom:1px solid #707070}
.page-haikan-table td{padding-block:16px;padding-inline:20px;border-left:1px solid #707070;border-bottom:1px solid #707070}
.page-haikan-table td a{text-decoration:underline;}
.sec-page-nenkan{background-color:#283128;padding-bottom: 160px;}
.page-nenkan-kv{width:100%;aspect-ratio:5.7/1}
.page-nenkan-kv img{width:100%;height:100%;object-fit:cover}
.page-nenkan-item{display: grid;grid-template-columns: auto minmax(0,1fr) auto;gap: 100px;}
.page-nenkan-item::before{content:'';}
.page-nenkan-item h3{order:2;width:fit-content;margin-top: -80px;margin-bottom: -40px;margin-left:auto;}
.page-nenkan-table-item{padding-top:152px;}
.page-nenkan-table-item-in.scroll{overflow-x:scroll}
.page-nenkan-table-item-in.scroll::-webkit-scrollbar {height: 10px;}
.page-nenkan-table-item-in.scroll::-webkit-scrollbar-thumb {background-color: #fff;border-radius: 10px}
.page-nenkan-table tr{border-top:1px solid #707070;border-right:1px solid #707070}
.page-nenkan-table th{padding-block:16px;padding-inline:20px;background-color:#333933;border-left:1px solid #707070;border-bottom:1px solid #707070}
.page-nenkan-table td{text-align: left;padding-block:16px;padding-inline:20px;border-left:1px solid #707070;border-bottom:1px solid #707070}
.page-nenkan-table-note{font-size:12px;margin-top:.5em}

/* 石馬寺について
===================================================== */
.page-cat .page-header::before{background:url(./images/page-cat-kv.jpg)no-repeat center / cover}

/* ペット供養
===================================================== */
.page-kuyou-header{height: 560px;background:url(./images/kuyou/kuyou-kv.jpg)no-repeat center / cover;position:relative}
.page-kuyou-header::before{content:'';position:absolute;inset:0;margin:0;background-color:rgb(0 0 0 /.4);}
.page-kuyou-header h2{display:flex;align-items:center;justify-content: center;gap:.5em;position: relative;height: 100%;font-size: 40px;color: #fff;}
.page-kuyou-header h2::before,
.page-kuyou-header h2::after{content:'';width:160px;height:1px;background-color:#fff;}
.page-kuyou-content{color: var(--black-color);}
.page-kuyou-intro{padding-block:80px;background:url(./images/accent-bg.jpg)repeat-y center / contain;}
.page-kuyou-intro-item{text-align:center;}
.page-kuyou-intro h3{font-size:32px;}
.page-kuyou-intro p{margin-top:1em;line-height:2}
.page-kuyou-intro-item figure{border-radius:40px;overflow:hidden;}
.page-kuyou-about{background:url(./images/accent-bg.jpg)repeat-y center / contain;}
.page-kuyou-about-item{margin-inline:auto;padding-block:40px;padding-inline:40px;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:40px;align-items:center;background-color:#fff;}
.page-kuyou-about h3{font-size:32px;}
.page-kuyou-about p{margin-top:1em;line-height:2}
.page-kuyou-price{background:url(./images/accent-bg.jpg)repeat-y center / contain;padding-top:80px;}
.page-kuyou-price-item{width:640px;max-width:100%;margin-inline:auto;padding-block:40px;padding-inline:40px;display:grid;grid-template-columns:160px minmax(0,1fr);gap:40px;align-items:center;background-color:#fff;}
.page-kuyou-price h3{font-size:32px;text-align:center;letter-spacing: .5em;}
.page-kuyou-price h4{font-size:20px;}
.kuyou-price{font-size:24px;font-weight:bold;margin-top:.5em;}
.page-kuyou-price-note{margin-top:1em;font-size:12px;}
.page-kuyou-flow{padding-block:80px;background:url(./images/accent-bg.jpg)repeat-y center / contain;}
.page-kuyou-flow h3{font-size:32px;}
.page-kuyou-flow-list{margin-top:40px;}
.page-kuyou-flow-list li{padding-block: 16px;padding-inline:40px;background-color:#fff;}
.page-kuyou-flow-list li:not(:last-child){margin-bottom:56px;position:relative;}
.page-kuyou-flow-list li:not(:last-child)::before{content:'';position:absolute;width:80px;aspect-ratio:4/1;clip-path:var(--clip-triangle-bottom);background-color:var(--black-color);left:50%;bottom:-40px;translate:-50% 0}
.page-kuyou-flow-list h4{font-size:18px;}
.page-kuyou-flow-list p{margin-top:.5em;}
.page-kuyou-consult{padding-block:80px;}
.page-kuyou-consult-item{font-size:18px;text-align:center;}

/* お問い合わせ
===================================================== */
.content-contact .page-header::before{background:url(./images/page-contact-kv.jpg)no-repeat center / cover}
.page-contact-des{text-align:center;padding-top:40px;}

.c-table {width: 800px;max-width:100%;margin: 56px auto 0;}
.from-item{display:flex;flex-wrap: wrap;padding-block: 40px;border-top: 1px solid var(--gray-color);color: #101010;}
.c-table .fl{width:240px;padding-block: 4px;display: block;}
.c-table .fr{width:calc(100% - 240px)}
.required{font-size: 12px;color:#fff;padding-block: 4px;padding-inline: 8px;background-color: var(--main-color);margin-right: 16px;vertical-align: 1px;}
.any{font-size: 12px;padding: 4px 8px;background-color: #b4b5b5;margin: 0 16px 0 0;vertical-align: 1px;}
.example{font-size: 14px;letter-spacing: -1px;}
.from-item input[type=email]{width:100%}
.from-item input[type=tel]{width:310px;}
.from-item textarea {height: 140px;width:100%}
.from-note{width: 420px;max-width: 100%;text-align:center;margin:40px auto 0;padding: 32px 16px;border: 1px solid #101010;border-radius:6px;}
.from-note p{color:#000;}
.from-note .acceptance-wrap{font-weight:bold;margin:16px 0 0}
.from-note .doui{width: 18px;height: 18px;margin: 0 8px 0 0;border: none;vertical-align: -3px;}
.wpcf7-submit:disabled{opacity: 0.3;pointer-events: none}
.formsubmit{margin: 60px auto 0;position:relative;width:fit-content;}
.formsubmit .wpcf7-submit{width: 300px;max-width:100%;margin-inline: auto;padding-block: 24px;background-color: var(--secondary-color);line-height:1;color: #fff;text-align: center;position: relative;font-size: 20px;transition:var(--hover-transform)}
.wpcf7-spinner{display:block;margin:16px auto}
.policy-link{padding:0 8px;text-decoration: underline;}

@media(max-width:720px){
  .c-table .fl,
  .c-table .fr{width:100%;}
}

@media(max-width:560px){
  .c-table{margin-top:24px}
}

/* privacypolicy
===================================================== */

.privacypolicy{padding-block: 56px;color: #101010;}
.privacypolicy-item{width: 800px;max-width:100%;margin-inline:auto;}
.privacypolicy-item h3{font-size:20px;color:var(--accent-color);margin-block:40px 8px}
.privacypolicy-item h4{font-size:18px;margin-block:32px 8px}
.privacypolicy-item h4::before{content:'';display:inline-block;width:16px;height:16px;background-color: var(--secondary-color);margin-right:8px;}
.privacypolicy-item h5{margin-block:24px 8px}
.privacypolicy-item h5::before{content:'';display:inline-block;width:16px;height:1px;background-color: var(--secondary-color);margin-right:8px;vertical-align: 6px;}
.privacypolicy-item ul,
.privacypolicy-item ol{margin-block:16px}
.privacypolicy-item li{position:relative;padding-left: 24px;}
.privacypolicy-item li::before{content:'';position: absolute;width:10px;height:10px;border-radius:10px;background-color: var(--secondary-color);margin-right:8px;top: 8px;left: 4px;}

@media(max-width:1300px){
	.page-haikan-item{gap:40px;}
	.page-nenkan-item{gap:40px;}
}

@media(max-width:1024px){
	:root {
		--vertical-txt-line:2;
	}
	.page-header{height:auto;min-height: 100%;padding-block: 80px;}
	.page-header::before{height: 240px;min-height: auto;top: 0;margin: 0;}
	.page-header-item{display:block;height: auto;min-height: auto;}
	.page-header-item::before{display:nonel}
	.page-header-item h2{margin-top:0;margin-inline:auto;width:fit-content;}
	.page-about-catch{margin-top: 80px;text-align:center;padding-bottom: 0;}
	.page-visit-anchor{margin-top: 118px;padding-bottom:0;font-size: 16px;}
	.mv-img{min-height:auto;}
	.treasure-item{display:grid;grid-template-columns:minmax(0,1fr);gap: 40px;}
	.treasure-item-head{order:1;width: 400px;max-width: 100%;margin-inline: auto;gap: 40px;}
	.treasure-item-txt{margin-top:40px;}
	.treasure-item-body{order:2;width: 400px;max-width: 100%;margin-inline: auto;gap: 40px;}
	.treasure-img{width: 240px;margin-left: auto;}
	.info-item h2{margin-left:0;margin-right:auto;}
	.visit-item{padding-block:80px;grid-template-columns: 80px minmax(0,1fr);}
	.visit-item-wrap{grid-template-columns:minmax(0,1fr)}
	.visit-item-wrap figure{height: 50vh;min-height:auto}
	.visit-item-in{order:2}
	.visit-item .more{position: relative;bottom: auto;left: auto;order: 1;margin-top: auto;}
	.event-item{padding-block:80px;grid-template-columns: 80px minmax(0,1fr);}
	.event-item-wrap{grid-template-columns:minmax(0,1fr)}
	.event-item{order:2;padding-block:80px;}
	.event-item-wrap figure{height: 50vh;min-height:auto;order:1}
	.event-item-in{order:2}
	.event-item .more{position: relative;bottom: auto;left: auto;order: 1;margin-top: auto;}
	.life-item-head{padding-block:80px;}
	.sec-access{padding-block: 80px 160px;}
	.access-item-wrap{grid-template-columns:minmax(0,1fr) auto;gap:80px;}
	.access-item-wrap::before{display:none;}
	.page-about-item-wrap{grid-template-columns:minmax(0,1fr)}
	.page-about-item-wrap figure{height: 50vh;min-height:auto}
	.page-about-item{order:2}
	.page-jyuyoujiho-content{grid-template-columns:minmax(0,1fr);}
	.page-jyuyoujiho-content .page-treasure-item-wrap:nth-of-type(even) figure{order:2}
	.page-kuyou-header h2::before, .page-kuyou-header h2::after{width:80px;}
	.page-kuyou-about-item{grid-template-columns:minmax(0,1fr)}
}

@media(max-width:960px){
	.page-haikan-item{grid-template-columns:minmax(0,1fr) auto}
	.page-haikan-table th,
	.page-haikan-table td{display:block;width:100%;}
	.page-haikan-item::before{display:none}
	.page-nenkan-item{grid-template-columns:minmax(0,1fr) auto}
	.page-nenkan-item::before{display:none}
	.page-nenkan-table th{padding-inline:8px;}
	.page-nenkan-table td{padding-inline:8px;}
	.page-nenkan-table td:first-of-type{width:140px;}
}

@media(max-width:640px){
	.sp-none{display:none}
	.sec-infomation{padding-block:80px;}
	.info-list-wrap.scroll{overflow-x:scroll;padding-bottom:40px;}
	.info-list-wrap.scroll::-webkit-scrollbar {height: 10px;}
	.info-list-wrap.scroll::-webkit-scrollbar-thumb {background-color: var(--bg-color);border-radius: 10px}
	.info-list{width:640px;}
	.life-item-body{grid-template-columns:repeat(1,minmax(0,1fr))}
	.sec-access{padding-block:80px;}
	.access-item-wrap{gap:40px;}
	.access-des-body-in{grid-template-columns:minmax(0,1fr)}
	.access-des-body dd{padding-left:0;border:none;margin-top:8px;}
	.contact-more-item{display:grid;grid-template-columns:minmax(0,1fr);margin-top: 0;padding-top: 40px;background-color: var(--bg-color);}
	.page-about-item-in{width:560px;max-width:100%;}
	.page-jiho-item{grid-template-columns:minmax(0,1fr) auto}
	.page-jiho-item::before{display:none}
	.page-treasure-head h3{margin-bottom:0;}
	.page-treasure-kv{height: 120px;}
	.page-treasure-item-wrap{grid-template-columns:minmax(0,1fr);width:480px;max-width:100%;margin-inline:auto;padding-inline:24px;}
	.page-treasure-item-wrap:not(:first-of-type){margin-top:40px;}
	.page-treasure-item-wrap figure{order:1}
	.page-treasure-item{order:2}
	.page-treasure-item-in h3{font-size:24px;margin-inline: auto;margin-block: auto;text-align: center;display: flex;align-items: center;justify-content: center;}
	.page-treasure-other-item ul{flex-direction:column;}
	.page-haikan-item{grid-template-columns:minmax(0,1fr)}
	.page-haikan-item h3{order:0;margin-inline: auto;}
	.sec-page-nenkan{padding-bottom:80px;}
	.page-nenkan-kv{height: 120px;aspect-ratio:auto;}
	.page-nenkan-item{grid-template-columns:minmax(0,1fr)}
	.page-nenkan-item h3{order:0;margin-inline: auto;}
	.page-nenkan-table-item-in table{width: 560px;margin-inline:auto;}
	.page-nenkan-table-item-in.scroll{padding-bottom:24px;}
	.page-nenkan-table td:nth-of-type(2){width:180px;}
	.page-nenkan-table-item{padding-top:80px;}
	.page-kuyou-header h2{font-size:24px;}
	.page-kuyou-header h2::before, .page-kuyou-header h2::after{width:40px;}
	.page-kuyou-intro h3{font-size:20px;}
	.page-kuyou-about-item{padding-inline:24px;}
	.page-kuyou-about-des{order:2}
	.page-kuyou-about h3{font-size:20px;}
	.page-kuyou-price-item{grid-template-columns:minmax(0,1fr);gap:24px;}
	.page-kuyou-price h3{font-size:20px;}
	.page-kuyou-price h4{font-size:18px;text-align:center;}
	.kuyou-price{text-align:center;}
	.page-kuyou-flow h3{font-size:20px;}
	.page-kuyou-flow-list h4{font-size:16px;}
	.page-kuyou-flow-list li{padding-inline:24px;}
	.page-kuyou-consult{padding-block:40px;}
	.page-kuyou-consult-item{font-size:16px;text-align:left}
}

@media(max-width:480px){
	.visit-item-in{width: 100%;gap: 40px;}
	.event-item-in{width: 100%;gap: 40px;}
	.access-item-wrap{grid-template-columns:minmax(0,1fr)}
	.access-item-wrap h2{order:1;margin-inline:auto;}
	.access-item{margin-top:0;}
}