/*画面の横幅が767pxまで Landscape phones and down */
@media (max-width: 767px) { 

.PC{
	display:none !important;
}
.SP{
	display:block !important;
}
.PC-inline{
	display:none !important;
}
.SP-inline{
	display:inline !important;
}

a{
	outline: none;
}
a:hover {
	opacity: 1;
}

/* コンテンツ基本
------------------------------------------------------------ */	
body{
	-webkit-text-size-adjust: 100%;
	width:100%;
	min-width:100%;
	font-size: 15px;
}

/*コンテンツ幅*/
.content-inner{
	width:92%;
	min-width: inherit;
	margin:0 auto;
	text-align:left;
}
.content-innerS{
	width:90%;
	margin:0 auto;
	text-align:left;
}
.content-full-inner{ 
	width:100%;
}


/* ページトップ 
------------------------------------------------------------ */
.pagetop{
	position:fixed;
	bottom:30px;
	right:4%;
	display:none;
	z-index:1000;
}

.pagetop a,
.pagetop span{
	display: block;
	text-indent: -9999px;
	margin: 0 auto;
	width: 40px;
	height: 40px;
	background: url(../../images/btn_pagetop.png) center center no-repeat;
	background-size: cover;
}

/* header
------------------------------------------------------------ */
	
#header	{
	position:relative;
	top:0;
	left:0;
	z-index:1020;
	width:100%;
	height:60px;
	border-bottom:solid #dcdcdc 1px;
	background-color:#fff;
	padding: 0 15px;
	gap: 0 12px;
}

#header .logo-icon{
	width: auto;
	vertical-align: middle;
	line-height: 2;
}

#header .logo-icon img{
	width: 30px;
	display: inline-block;
}
.logo-icon span{
	display: inline-block;
	font-size: 15px;
	letter-spacing: 0.1em;
	margin: 0 0 0 1em;
}

.language .logo-icon span{
	font-size: 14px;
	letter-spacing: 0.05em;
}

#header #navi nav ul{
	display: block;
	font-size: 16px;
	letter-spacing: 0.05em;
}
#header #navi nav ul li{
	list-style: none;
	border-bottom: solid #dcdcdc 1px;
}
#header #navi nav ul li a{
	padding: 16px 20px;
}
#header #navi nav ul li a::after{
	display: none;
}

/*言語選択（ハンバーガーメニュー内）*/
#navi #utility{
	padding: 16px 20px;
	border-top: solid #dcdcdc 1px;
}
.lang-switcher{
	display: block;
}
.lang-switcher-btn{
	width: 100%;
	justify-content: space-between;
}
.lang-switcher-icon img{
	width: 18px;
}
.lang-switcher-list{
	width: 100%;
}


/* ナビ部分 
------------------------------------------------------------ */
#menuBtn{
	display:block;
}
#menuClose,
#shadows{
	display:none;
}

#menuBtn{
	position:absolute;
	top:0px;
	right:0;
	width:60px;
	height:60px;
	z-index:1050;
}

#panel-btn{
	display: block;
	position: relative;
	width: 60px;
	height: 60px;
}

#panel-btn-icon{
	display: block;
	position: absolute;
	top: 50%;
	left: 50%;
	width: 26px;
	height: 1px;
	margin: -1px 0 0 -13px;
	background: #000;
	transition: .2s;
}
#panel-btn-icon:before, #panel-btn-icon:after{
	display: block;
	content: "";
	position: absolute;
	top: 50%;
	left: 0;
	width: 100%;
	height: 1px;
	background: #000;
	transition: .3s;
}
#panel-btn-icon:before{
	margin-top: -8px;
}
#panel-btn-icon:after{
	margin-top: 6px;
}

#menuBtn.open #panel-btn-icon{
	background: transparent;
}
#menuBtn.open #panel-btn-icon:before, #menuBtn.open #panel-btn-icon:after{
	margin-top: 0;
 
}
#menuBtn.open #panel-btn-icon:before{
	transform: rotate(-45deg);
	-webkit-transform: rotate(-45deg);
}
#menuBtn.open #panel-btn-icon:after{
	transform: rotate(-135deg);
	-webkit-transform: rotate(-135deg);
}

#menuClose{
	position:relative;
	z-index:1010;
}
#shadows{
	position:fixed;
	width:100%;
	height:120%;
	top:0;
	left:0;
	background-color:#000;
	opacity: 0.8;
	filter: alpha(opacity=80);
	z-index:1001;
}

#navi{
	display:none;
	position:absolute;
	top:60px;
	left:0;
	width:100%;
	background-color:#f8f8f8;
}


/* footer
--------------------------------------------*/
#footer{
	font-size: 14px;
	margin-top: 70px;
}
.footer-head{
	padding: 40px 0;
}
.footer-head strong{
	width: 200px;
}
.footer-head strong a{
	display: block;
}
.footer-head p{
	margin-top: 20px;
	font-size: 12px;
}

.footer-navi{
	display: block;
}
.footer-navi nav{
	width: 100%;
	display: block;
	border-right: none;
	border-bottom: solid #616161 1px;
	padding-bottom: 30px;
}
.footer-navi ul.guide-list{
	width: 100%;
}
.footer-navi ul li ul{
	padding-top: 0;
	padding-bottom: 10px;
}
.footer-navi ul li ul li{
	width: 100%;
	font-size: 13px;
	margin-left: 2em;
}
.footer-navi ul li ul li a{
	padding: 8px 0 8px 25px;
}
.footer-navi ul li ul li a::after{
	top:1.2em;
}

.footer-navi .contact-block{
	width: 100%;
	border-right: none;
	border-bottom: solid #616161 1px;
	padding: 20px 0;
}

.contact-block .time-table table{
	font-size: 12px;
}
.contact-block .time-table th{
	width: 30%;
}
.contact-block .time-table td{
	font-size: 13px;
	padding: 4px 0 4px 5px;
	text-align: right !important;
}
.contact-block .time-table td.month{
	padding: 4px 0 4px 5px;
}

.footer-navi .sns-block{
	width: 100%;
	padding: 20px 0;
}
.sns-block ul{
	padding-top: 16px;
}

.sns-block strong{
	display: none;
	text-align: center;
}
.sns-block ul li{
	width: 30px;
}


.footer-utility{
	margin-top: 20px;
	text-align: center;
	border-bottom: none;
	border-top: solid #616161 1px;
}
.footer-utility ul li a{
	font-size: 12px;
	padding: 8px 15px;
}

address{
	font-size: 10px;
	padding: 15px 0 30px 0;
}


/* ボタン
--------------------------------------------*/
.btn-link{
	font-size: 14px;
}
.btn-link a,
.btn-link p{
	padding: 10px 6px;
}


/* コンテンツ
--------------------------------------------*/
/*タイトル*/
.title h2{
	font-size: 26px;
	letter-spacing: 0.15em;
}
.title h2 span{
	font-size: 13px;
	margin-top: 14px;
	margin-left: 1em;
}



/*縦書きタイトル基本*/
.vertical-content{
	padding: 60px 0 40px 0;
	display: block;
}
.vertical-content .title{
	padding: 0;
	writing-mode: horizontal-tb;
	display: flex;
	align-items: center;
	justify-content: space-between;
}
.vertical-content .title h2{
	writing-mode: horizontal-tb;
}

.vertical-content .title ul{
	margin-top: 0;
	padding-top: 0;
	border-top: none;
	gap: 14px;
}
.vertical-content .title ul li{
	padding: 0;
}
.vertical-content .title ul li img{
	width: 20px;
}


/*横書きコンテンツ*/
.beside-content .title h2 span{
	margin-left: 0;
}
.beside-content .txtbox{
	text-align: left;
}
.beside-content .txtbox p{
	text-align: left;
}


/*イメージ付きコンテンツ*/
.imgcontent-area{
	display: block;
	gap: 0;
	padding: 50px 0;
}
.imgcontent-area.imgareaR{
	flex-direction: unset;
}
.imgcontent-area .imgblock{
	width: 92%;
	border-radius: 0 40px 40px 0;
	margin-right: 8%;
}
.imgcontent-area.imgareaR .imgblock{
	border-radius: 40px 0 0 40px;
	margin-right: 0;
	margin-left: 8%;
}

.imgcontent-area .txtblock{
	width: 90%;
	margin-left: auto;
	margin-right: auto;
	display: block;
	margin-top: 24px;
}

.imgcontent-area .txtblock .txtblock__inner{
	writing-mode: horizontal-tb;
	text-align: left;
	padding-bottom: 0;
}

.imgcontent-area .txtblock .txtblock__inner .txtbox{
	padding: 16px 0 0 0;
	font-size: 15px;
}

.imgcontent-area .txtblock .btn-link{
	text-align: right;
	margin-top: 20px;
}


/*コンテンツナビ*/
.content-navi{
	width: 100%;
	margin-top: 24px;
}
.content-navi ul li{
	font-size: 16px;
}
.content-navi ul li a{
	padding: 14px 8px;
}
.content-navi ul.sub-navi{
	margin-top: 20px;
}


/*お知らせタブ*/
.vertical-content__inner{
	padding-top: 24px;
}
.vertical-content__inner .btn-link{
	margin-top: 20px;
}

.info-tab ul{
  padding-left: 0;
  font-size: 13px;
  flex-wrap: nowrap;
  overflow-y: hidden;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
}
.info-tab ul li{
  padding: 8px 12px;
  margin-right: 6px;
  white-space: nowrap;
  flex-shrink: 0;
}

.info-tab-contents .info-list{
  padding-left: 0;
  padding-top: 20px;
}

/*お知らせリスト*/
.info-list{
	font-size: 14px;
}
.info-list li{
	border-bottom: solid #eee 1px;
}
.info-list li a{
  flex-wrap: wrap;
  gap: 6px 12px;
  padding: 14px 4px;
}
.info-list .cat{
  width: auto;
}
.info-list p{
  width: 100%;
  white-space: normal;
  display: -webkit-box;
  line-clamp: 2;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}


/* top
--------------------------------------------*/
/*メインスライド*/
.main-slide{
	height: calc( 100vh - 60px );
	min-height: 500px;
}
.main-slide h1{
	width: 90px;
	margin-left: -45px;
}
.main-slide h1 img{
	width: 50px;
}
.main-slide ul li{
	height: calc( 100vh - 60px );
	min-height: 500px;
}


/*ご案内横イメージ*/
.top-img{
	display: none;
}


/*ショートカットバナースライド*/
#banner-area{
	padding: 40px 0 60px 0;
}
.banner-area-slider-wrapp {
  padding: 0 35px;
}
.banner-slider .slick-slide > div {
  margin: 0 8px;
}
.banner-item{
	font-size: 14px;
}
.banner-item .imgbox{
	border-radius: 20px;
}
.banner-item .txtbox h3{
	font-size: 16px;
	padding: 14px 6px;
}
.banner-item .txtbox p{
	margin-top: 10px;
	padding: 0 6px;
}



/**/
.access-area{
	display: block;
	gap: 0;
	padding: 30px 0 60px 0;
}
.access-area .imgbox{
	width: 220px;
	margin: 0 auto;
	border-radius: 110px;
}
.access-area .txtbox{
	margin-top: 24px;
	text-align: left;
}
.access-area .txtbox p{
	margin-top: 10px;
}
.access-area .txtbox .btn-link{
	margin-top: 24px;
	text-align: right;
}


/**/
.areainfo-area{
	border-radius: 40px;
	margin-bottom: 50px;
}
.areainfo-area a{
	border-radius: 40px;
	padding: 50px 24px;
}
.areainfo-area .txtbox{
	width: 100%;
}
.areainfo-area .title h2 small{
	display: block;
	margin-top: 4px;
}
.areainfo-area .txtbox p{
	margin-top: 10px;
}
.areainfo-area .txtbox .btn-link{
	margin-top: 24px;
	text-align: right;
}


/* 下層ページ共通
--------------------------------------------*/
/*パンくず*/
.breadcrumb{
	padding: 16px 15px 0 15px;
}
.breadcrumb ul{
	font-size: 11px;
}
.breadcrumb ul li + li::before{
	width: 8px;
	height: 16px;
	margin: 0 8px;
}

/*見出し（線あしらい）*/
.section-title{
	gap: 14px;
	font-size: 22px;
	letter-spacing: 0.2em;
}
.section-title::before,
.section-title::after{
	width: 30px;
}

/*下層メインビジュアル*/
.page-mv{
	display: block;
	min-height: inherit;
	padding-top: 0;
}
.page-mv__head{
	width: 100%;
	padding: 40px 8% 30px 8%;
}
.page-mv__head .content-navi{
	margin-top: 30px;
}
.page-mv__img{
	border-radius: 0;
	height: 300px;
	width: 100%;
}

.page-mv .content-navi{
	display: none;
}

/*下層メインビジュアル キャプション（見出し・リード文・タブ）*/
.page-mv__caption{
	padding:0;
}
.page-mv__caption__inner{

	padding: 0px 6%;
	text-align: left;

}
.page-mv__caption h1{
	padding-bottom: 8px;
	font-size: 22px;
	
}
.page-mv__caption .lead{
	text-align: left;
	margin-top: 20px;
	font-size: 13px;
	line-height: 1.7;
}

/*タブ状のページ内アンカーリンク*/
.anchor-nav{
	margin-top: 18px;
}
.anchor-nav ul{
	flex-wrap: wrap;
	gap: 8px 0;
}
.anchor-nav ul li{
	flex-shrink: 0;
	border-right: none;
}
.anchor-nav ul li a{
	padding: 0 14px;
	font-size: 13px;
	white-space: nowrap;
}

/*imgboxセクション*/
.imgbox-content{
	display: block;
	margin-top: 30px;
}
.imgbox-content__img{
	width: 100%;
	height: auto;
}
.imgbox-content__txt{
	margin-top: 24px;
	padding-top: 0;
	font-size: 15px;
	line-height: 1.9;
}
/*見出し＋下線*/
.imgbox-content__txt h3{
	font-size: 19px;
	padding-bottom: 14px;
	margin-bottom: 14px;
}


/*御朱印ページ（/guide/goshuin/）：スライダーを上、表を下に縦積み（スライダーは幅を絞って中央寄せ）*/
.gs-block,
.gs-block.reverse{
	display: block;
	margin-top: 30px;
}
.gs-slider-wrap{
	width: 68%;
	margin: 0 auto;
}
.gs-block .info-table{
	width: 100%;
	margin-top: 40px;
}
.gs-block .info-table th{
	width: 100%;
}
.gs-block .info-table td{
	padding: 18px 40px;
}
.gs-slide__img{
	border-radius: 16px;
}
.gs-slide__cap{
	font-size: 12px;
}
.gs-slider .slick-arrow{
	width: 36px;
	height: 36px;
	margin-top: calc(72.135% - 18px);
}
.gs-slider .slick-prev{
	left: -40px;
}
.gs-slider .slick-next{
	right: -40px;
}

/**/
.imgbox-content__txt.kokoroe-txt strong{
	font-size: 17px;
	padding: 0 0 0 25px;
}
.imgbox-content__txt.kokoroe-txt strong::after{
	top:0.7em;
}
.imgbox-content__txt.kokoroe-txt p{
	font-size: 14px;
	padding: 15px 0 35px 25px;
}




/*・から始まる箇条書き／【】付きラベル*/
.dot-list{
	margin-top: 14px;
}
.label-title{
	margin-top: 20px;
}

/*丸形アウトラインボタン（詳しくみる／ダウンロードなど）*/
.pill-btn{
	width: 100%;
	min-width: inherit;
	padding: 16px 24px;
	font-size: 14px;
}


/*モーダル共通*/
.modal-overlay{
	padding: 70px 20px 30px 20px;
}
.modal-close{
	top: 20px;
	right: 20px;
	width: 52px;
	height: 52px;
}
.modal-close::before,
.modal-close::after{
	width: 40px;
}
.modal-text{
	border-radius: 24px;
	padding: 40px 30px;
}
.modal-text p{
	font-size: 14px;
	line-height: 1.9;
}
.modal-detail{
	display: block;
}
.modal-detail__img{
	width: 100%;
}
.modal-detail__img img{
	max-height: 50vh;
}
.modal-detail__txt{
	margin-top: 30px;
}
.modal-detail__txt h3{
	font-size: 21px;
}



/* ご案内トップ
--------------------------------------------*/

/*由緒*/
.guide-history{
	padding: 60px 0 50px 0;
}


/*コンテンツリンクバナー一覧*/
.contents-list{
	padding: 10px 0 50px 0;
}
.contents-list ul{
	flex-direction: column;
	gap: 30px;
}
.contents-list ul li{
	width: auto;
}
.contents-list .imgbox img{
	height: auto;
	aspect-ratio: 16/10;
}
.contents-list h3{
	margin-top: 18px;
	font-size: 18px;
}
.contents-list p{
	font-size: 14px;
}


/*関連情報（アクセス／大原ガイド）*/
.guide-related{
	padding: 10px 0 60px 0;
}
.guide-related ul{
	grid-template-columns: 1fr;
	gap: 0;
}
.guide-related ul li{
	padding: 0;
	border-bottom: none;
	line-height: 1.3;
}
.guide-related ul li:last-child{
	border-bottom: solid #bfbfbf 1px;
}
.guide-related ul li a{
	gap: 20px;
	align-items: start;
	padding: 20px 0;
}
.guide-related .imgbox{
	width: 110px;
	height: 110px;
}
.guide-related .txtbox{
	padding: 0;
}
.guide-related h3{
	font-size: 18px;
	line-height: 1.4;
}
.guide-related p{
	margin-top: 1em;
	font-size: 14px;
}


/* 拝観時間・料金
--------------------------------------------*/
/*参拝のご案内（表）*/
.info-annai{
	padding: 50px 0 50px 0;
}
.info-table{
	margin-top: 30px;
	border-spacing: 0 4px;
	width: 100%;
}
.info-table th{
	display: block;
	width: 100%;
	padding: 14px 10px;
	font-size: 15px;
	border-right: none;
}
.info-table td{
	display: block;
	width: 100%;
	padding: 18px 40px;
	font-size: 14px;
	line-height: 1.8;
}
.info-table tr{
	display: block;
	margin-bottom: 4px;
}

/*参拝の心得*/
.info-kokoroe{
	padding: 40px 0 50px 0;
}

/*体験コースのご案内*/
.info-taiken{
	padding: 40px 0 60px 0;
}
.info-taiken .lead-text{
	margin-top: 24px;
	text-align: left;
	font-size: 14px;
	line-height: 1.9;
}

/*体験コース　外枠ボックス*/
.experience-box{
	margin-top: 30px;
	padding: 20px 20px;
	border-radius: 30px;
}
.experience-box__inner{
	display: block;
}
.experience-col{
	width: 100%;
}
.experience-col + .experience-col{
	margin-top: 40px;
	padding-left: 0;
	padding-top: 40px;
	border-left: none;
	border-top: solid #ddd 1px;
}
.experience-col h3{
	font-size: 18px;
	text-align: left;
}
.experience-col .ttl-sub{
	margin-top: 18px;
	font-size: 15px;
}
.experience-col .txt{
	font-size: 14px;
}
.experience-col .note-list{
	font-size: 12px;
}

/*体験コース内の料金表*/
.course-table th{
	width: 130px;
	padding: 14px 10px;
	font-size: 13px;
	border-right: none;
}
.course-table td{
	padding: 14px 10px;
	font-size: 13px;
}

/*FAXでの申込み案内ボックス*/
.fax-box{
	margin-top: 30px;
	padding: 26px 5%;
	border-radius: 20px;
	font-size: 13px;
}
.fax-box .fax-num{
	font-size: 22px;
	display: block;
}


/* 国宝と重文
--------------------------------------------*/
.treasure{
	padding: 50px 0 0 0;
}
.treasure + .treasure{
	padding-top: 60px;
	padding-bottom: 50px;
}

/*メインスライダー＋サムネイルスライダー*/
.treasure-slider{
	margin-top: 30px;
}
.treasure-item{
	/* style.cssの!important指定をSPで打ち消すため!importantを付与 */
	display: block !important;
	height: auto !important;
	min-height: inherit !important;
	max-height: inherit !important;
}
.treasure-item__img{
	width: 100%;
	height: 320px;
	padding: 0;
}
.treasure-item__txt{
	width: 100%;
	padding: 30px 6%;
	/* グレー部分の高さを固定し、テキスト量が多い場合はスクロールさせる */
	height: 320px;
	overflow-y: auto;
	box-sizing: border-box;
}
.treasure-item__txt h3{
	font-size: 20px;
}
.treasure-item__txt .sub{
	margin-top: 16px;
	font-size: 14px;
}
.treasure-item__txt .desc{
	margin-top: 20px;
	font-size: 14px;
}

/*矢印ボタン（画像部分の中央に配置）*/
.treasure-slider__main .slick-arrow{
	top: 160px;
	width: 36px;
	height: 36px;
	margin-top: -18px;
}
.treasure-slider__main .slick-prev{
	left: 20px;
}
.treasure-slider__main .slick-next{
	right: 20px;
}

/*サムネイルナビ（PC側と同様、slickでのスライダー化はやめ折り返し横並び表示にしている）
  スマホ幅ではPC側のdisplay:flex（折り返し横並び）を、横4列固定のグリッド表示に上書きしている。
  枚数が4の倍数でない場合も、最終行の余ったセルが空白のまま自然に残るだけで崩れない。*/
.treasure-slider__thumbs{
	margin-top: 14px;
	padding: 0;
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 10px;
}
.treasure-thumb{
	width: 100%;
	height: auto;
	aspect-ratio: 1 / 1;
}


/* 境内MAP
--------------------------------------------*/
.ground-map{
	display: block;
	margin-top: 0px;
}
.ground-full-map{
	padding: 0;
}

.ground-full-map__inner .imgbox{
	background-color: #f2f2f2;
}
.ground-full-map__inner .imgbox__inner{
	width: auto;
	min-width:inherit;
	margin:0 auto;
}

.ground-map-pdf{
	margin-top: 0;
	padding: 20px 0 10px 0;
	text-align: center;
	background-color: #f2f2f2;
}

.btn-pdf{
	margin-bottom: 10px;
}
.btn-pdf a{
	font-size: 14px;
}
.btn-pdf a span{
	padding: 10px 40px 10px 0;
}

/*マップ横の一覧（アンカーリンク）*/
.spot-nav{
	padding-top: 20px;
}
.spot-nav ul{
	flex-direction: column;
}
.spot-nav ul li{
	width: auto;
}
.spot-nav ul li a{
	gap: 5px;
	padding: 8px 10px 10px 10px;
	font-size: 15px;
}

/*詳細一覧（画像＋テキスト）*/
.spot-detail{
	margin-top: 50px;
}
.spot-detail li{
	display: block;
	padding: 30px 0;
}
.spot-detail__img{
	width: 100%;
}
.spot-detail__img img{
	height: 220px;
}
.spot-detail__txt{
	margin-top: 20px;
}
.spot-detail__txt h3{
	font-size: 18px;
}
.spot-detail__txt p{
	font-size: 14px;
}


/* 円融蔵展示室
--------------------------------------------*/
.showroom-lead{
	padding: 50px 0 0 0;
	text-align: left;
	font-size: 14px;
}
.showroom-lead .pill-btn{
	margin-top: 30px;
}
.showroom-lead__btn{
	text-align: center;
}

.showroom-note{
	margin-top: 40px;
	padding-top: 30px;
	text-align: left;
	font-size: 14px;
}

/*収蔵品カード一覧*/
.showroom-list{
	margin-top: 30px;
	padding-bottom: 50px;
}
.showroom-list.bg{
	padding: 50px 0 60px 0;
}
.showroom-list ul{
	grid-template-columns: 1fr;
	gap: 30px;
}
.showroom-card__img img{
	height: 220px;
}
.showroom-card__txt{
	padding: 20px 20px 30px 20px;
}


.archive-list{
	margin-top: 40px;
}

/*お知らせ（トップページと共通の縦書きタイトル＋リストを使用）*/
.showroom-news{
	padding-bottom: 30px;
}


/* 回向・祈願
--------------------------------------------*/
.ekou-content{
	padding: 50px 0 0 0;
}
.ekou-content .imgbox-content{
	margin-top: 40px;
}
.ekou-content .imgbox-content:first-child{
	margin-top: 30px;
}

/*申込書ダウンロードボックス*/
.download-box{
	margin-top: 50px;
	padding: 40px 6%;
	border-radius: 30px;
}
.download-box h2{
	font-size: 19px;
}
.download-box__inner{
	display: block;
	margin-top: 24px;
}
.download-box__btns{
	width: 100%;
	margin-top: 24px;
}
.download-box__btns .pill-btn{
	font-size: 17px;
	padding: 20px 34px 20px 25px;
	letter-spacing: 0;
}


.ekou-news{
	padding: 40px 0 30px 0;
}


/* 写真ギャラリー
--------------------------------------------*/
/*メインビジュアル（タイトル＋スライダー）*/
.gallery-mv{
	display: block;
	padding-top: 0;
}
.gallery-mv__head{
	width: 100%;
	padding: 40px 8% 40px 8%;
}

.gallery-mv__body .gallery-nav{
	margin-top: 20px;
	padding: 0 8%;
}

/*季節セクション（春夏秋冬・左右交互）*/
.gallery-season{
	display: block;
	width: 100%;
	margin-left: 0;
	padding: 50px 0 0px 0;
}
.gallery-season.reverse{
	flex-direction: row;
}
.gallery-season__head{
	padding: 20px 8% 20px 8%;
	flex-direction: row;
	justify-content: space-between;
	align-items: center;
}
.gallery-season__head .title h2{
	writing-mode: horizontal-tb;
}
.gallery-season__head .gallery-nav{
	margin-top: 0;
}

/*矢印ボタン*/
.gallery-nav-btn{
	width: 40px;
	height: 40px;
}

/*画像スライダー*/
.gallery-slider{
	border-radius: 40px 0 0 40px;
	margin-left: 4%;
}
.gallery-slider.reverse{
	border-radius: 0 40px 40px 0;
	margin-left: 0;
	margin-right: 4%;
}

.gallery-slider .slick-slide{
	margin-right: 2px;
}
.gallery-item{
	/* PC版（style.css）と同じ理由でslick.js本体の.slick-slide{height:100%}と
	   詳細度が同点になり、読み込み順次第で負けることがあったため!importantで確実に上書きする */
	height: 200px !important;
	/* 画像そのものの高さがCSSの想定と一致しない場合でも、はみ出した分を
	   確実に切り取って高さを揃えるための保険（通常はheight:100%指定の
	   画像側でぴったり収まるため、見た目上の変化はありません） */
	overflow: hidden;
}
.gallery-item img{
	max-height: 200px;
}
.gallery-item__icon{
	right: 16px;
	bottom: 16px;
	width: 44px;
	height: 44px;
}
.gallery-item__icon::before{
	width: 14px;
	margin-left: -7px;
}
.gallery-item__icon::after{
	height: 14px;
	margin-top: -7px;
}

/*ライトボックス（画像モーダル）*/
.gallery-modal__img img{
	max-height: 50vh;
}
.gallery-modal__foot{
	display: block;
}
.gallery-modal__meta{
	margin-top: 14px;
}
.gallery-modal__caption{
	font-size: 13px;
}


/* 年間行事
--------------------------------------------*/
/*タグバッジ*/
.event-tag{
	padding: 5px 12px;
	font-size: 12px;
	min-width: inherit;
	width: auto;
}

/*時間／場所などのラベル付き情報*/
.event-meta{
	gap: 10px 16px;
	margin-top: 14px;
}
.event-meta .meta-item{
	font-size: 13px;
	gap: 10px;
}
.event-meta .meta-item .label{
	padding: 4px 10px;
	font-size: 11px;
}

/*メインビジュアル（タイトル＋サイドナビ＋コンテンツ）*/
.side-nav-mv{
	display: block;
	padding-top: 0;
}
.side-nav-mv__head{
	width: 100%;
	padding: 40px 0 40px 0;
}

.event-page-title{
	font-size: 22px;
}

/*サイドナビ*/
.side-list{
	margin-top: 30px;
}
.side-list li a{
	padding: 18px 4px;
	font-size: 15px;
}

/*月タブ*/
.event-month-tabs{
	padding: 14px 0;
	overflow-x: auto;
	flex-wrap: nowrap;
	-webkit-overflow-scrolling: touch;
}
.event-month-tabs li{
	padding: 0 14px;
	white-space: nowrap;
}
.event-month-tabs li:first-child{
	padding-left: 0;
}
.event-month-tabs li a{
	font-size: 14px;
}

/*年間の行事一覧*/
.event-month-group{
	display: block;
}
.event-month-group__label{
	width: 100%;
	padding: 12px 20px;
	justify-content: flex-start;
	font-size: 20px;
}
.event-row{
	display: block;
	padding: 30px 0;
}
.event-row__date{
	width: auto;
	font-size: 15px;
}
.event-row__date br{
	display: none;
}
.event-row__tags{
	width: auto;
	flex-direction: row;
	flex-wrap: wrap;
	margin-top: 14px;
}
.event-row__body{
	padding: 20px 0 0 0;
	margin-top: 14px;
	border-left: none;
	border-top: solid #ddd 1px;
	padding-right: 0;
	padding-top: 20px;
}
.event-row__body h3{
	font-size: 18px;
}
.event-row .link-arrow{
	top: auto;
	bottom: 30px;
	right: 0;
	margin-top: 0;
}

/*今月／来月の予定（カード形式リスト）*/
.event-card-list{
	margin-top: 20px;
}
.event-card{
	display: block;
	padding: 40px 0;
}
.event-card:hover{
	background-color: #fff;
}
.event-card .link-arrow{
	right: 0px !important;
	bottom: 10px !important;
}
.event-card__img{
	width: 100%;
	height: 200px;
}
.event-card__body{
	margin-top: 24px;
	padding-right: 0;
}
.event-card__body h3{
	margin-top: 16px;
	font-size: 19px;
}
.event-card .link-arrow{
	bottom: 40px;
	right: 0;
}


/* アクセス
--------------------------------------------*/
/*基本情報*/
.access-info{
	margin-top: 30px;
	padding: 34px 6%;
	border-radius: 24px;
	display: block;
}
.access-info__block .name{
	font-size: 19px;
}
.access-info__hours{
	margin-top: 24px;
}

/*地図*/
.access-map{
	margin-top: 60px;
}
.access-map iframe{
	height: 260px;
}



.ax-app{
	margin-top: 30px;
}
.ax-method-select{
	grid-template-columns: repeat(2, 1fr);
}
.ax-panel{
	padding: 30px 6%;
	border-radius: 22px;
}
.ax-panel__title{
	font-size: 21px;
}
.ax-panel__title svg{
	width: 26px;
	height: 26px;
}
.ax-route-head{
	display: block;
	text-align: right;
	margin-top: 40px;
}
.ax-route-caption{
	font-size: 16px;
	text-align: left;
}
.ax-route-total{
	font-size: 14px;
	display: inline-block;
	text-align: right;
	margin-top: 8px;
}
.ax-route-total .num{
	font-size: 18px;
}
.ax-diagram{
	clear: both;
	display: block;
	padding: 22px 18px;
	border-radius: 18px;
}
.ax-point{
	display: block;
	width: 100%;
	white-space: normal;
}
.ax-leg{
	display: grid;
	grid-template-columns: 1fr auto 1fr;
	align-items: center;
	padding: 14px 4px;
	column-gap: 12px;
}
.ax-leg .badge{
	grid-column: 1;
	grid-row: 1;
	width: 100%;
	display: flex;
	align-items: flex-start;
	justify-content: flex-end;
	gap: 6px;
	white-space: normal;
	text-align: left;
	min-height: inherit;
}
.ax-leg .badge > span{
	flex: 0 1 auto;
	min-width: 0;
}
.ax-leg .min{
	grid-column: 3;
	grid-row: 1;
	justify-self: start;
	text-align: left;
}
.ax-leg .bar{
	grid-column: 2;
	grid-row: 1;
	justify-self: center;
	width: 4px;
	height: 28px;
	flex-shrink: 0;
}
.ax-leg .bar::after{
	top: auto;
	right: auto;
	bottom: -2px;
	left: 50%;
	width: 0;
	height: 0;
	border-top: 7px solid currentColor;
	border-left: 5px solid transparent;
	border-right: 5px solid transparent;
	border-bottom: none;
	transform: translateX(-50%);
}


/* ============================================================
   大原ガイドページ専用の追加スタイル
   ============================================================ */
.rk-area{
	padding: 60px 0 50px 0;
}
.rk-map{
	padding: 50px 0 50px 0;
}
.rk-map__note{
	text-align: left;
}
.rk-spot{
	padding: 50px 0 50px 0;
}
.rk-spot-list{
	width: 100%;
	margin-top: 30px;
}
.rk-spot-list li{
	display: block;
	margin-top: 4px;
}
.rk-spot-list__head{
	width: 100%;
	padding: 14px 40px;
	border-right: none;
}
.rk-spot-list__head{
	gap: 14px;
}
.rk-spot-list__head .num{
	width: 36px;
	height: 36px;
	font-size: 16px;
}
.rk-spot-list__name h3{
	font-size: 18px;
}
.rk-spot-list__desc{
	display: block;
	padding: 18px 40px;
	font-size: 14px;
	line-height: 1.8;
}
.rk-spot__cta{
	margin-top: 40px;
}
.rk-spot__cta-text{
	margin-bottom: 18px;
	font-size: 14px;
	line-height: 1.8;
}
.rk-spot__cta .pill-btn{
	min-width: inherit;
	padding: 18px 56px;
	font-size: 16px;
}
.pill-btn.icon-arrow::after{
	right: 22px;
	width: 18px;
	height: 18px;
	margin-top: -9px;
}
.rk-route{
	padding: 50px 0 50px 0;
}
.rk-route-list{
	width: 100%;
	margin-top: 30px;
}
.rk-route-list li{
	gap: 16px;
	padding: 18px 0;
}
.rk-season{
	padding: 50px 0 50px 0;
}
.rk-access{
	padding: 50px 0 60px 0;
}
.rk-access__note{
	text-align: left;
}

/* お知らせ
--------------------------------------------*/
.list-heading{
	gap: 14px;
	padding-bottom: 16px;
}
.list-heading h2{
	font-size: 21px;
}
.list-heading .en{
	font-size: 11px;
}
.news-row{
	flex-wrap: wrap;
	gap: 8px 14px;
	padding: 20px 30px 20px 2px;
}
.news-row__date{
	width: auto;
	font-size: 12px;
}
.news-row__title{
	flex: 1 1 100%;
	font-size: 15px;
	line-height: 1.6;
}
.news-row .link-arrow{
	right: 2px;
}
.news-detail__meta{
	font-size: 12px;
	gap: 14px;
}
.news-detail__title{
	margin-top: 16px;
	padding-bottom: 20px;
	font-size: 21px;
}
.news-detail__body{
	margin-top: 28px;
	font-size: 15px;
	line-height: 1.9;
}
.news-detail__photo{
	margin-top: 28px;
}
.news-detail__related{
	margin-top: 60px;
}
.back-to-list{
	margin-top: 40px;
	font-size: 14px;
}


/* ============================================================
   ご利用規約／プライバシーポリシー 共通の追加スタイル
   ============================================================ */
	.section-mt{
		margin-top: 60px;
	}
	.lg-hero{
		padding: 60px 0 40px 0;
	}
	.lg-hero h1{
		font-size: 21px;
	}
	.lg-body{
		padding: 0 0 60px 0;
	}
	.lg-lead{
		padding-bottom: 30px;
		margin-bottom: 30px;
	}
	.lg-body p,
	.lg-body .dot-list li{
		font-size: 14px;
		line-height: 1.9;
	}
	.lg-contact{
		padding: 24px 6%;
	}

	.emergency-notice__inner{
		width: 92%;
	}
	.emergency-notice__bar{
		flex-wrap: wrap;
		border-radius: 20px;
	}
	.emergency-notice__label{
		width: 100%;
		justify-content: center;
		padding: 10px 16px;
		font-size: 13px;
	}
	.emergency-notice__text{
		width: 100%;
		padding: 12px 16px;
		font-size: 13px;
		line-height: 1.6;
	}
	.emergency-notice--overlay{
		top: 16px;
	}
	.emergency-notice--static{
		padding: 16px 0;
	}


	/* 多言語ページ（.language）専用スタイル：スマホ表示
	--------------------------------------------*/
	.language .page-mv .page-mv__img{
		height: 400px;
	}
	.language .lang-section{
		padding: 50px 0;
	}
	.language .lang-section-lead{
		margin-top: 24px;
		font-size: 14px;
		line-height: 1.9;
	}
	.language .lang-grid{
		grid-template-columns: repeat(2, 1fr);
		gap: 24px 16px;
		margin-top: 30px;
	}
	.language .lang-grid figcaption{
		font-size: 13px;
	}
	.language .lang-subblock{
		margin-top: 40px;
		padding-top: 30px;
	}
	.language .etiquette-list{
		margin-top: 14px;
	}

}