@charset "UTF-8";
/* ＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝　初期設定　＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝ */

*{
	margin: 0px;
	padding: 0px;
	-webkit-box-sizing: border-box;
	   -moz-box-sizing: border-box;
	        box-sizing: border-box;
	font-family:"游明朝", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "ＭＳ 明朝", "MS PMincho", serif;
}

header {
background:#fde4b5;
}
body{
background:#fde4b8;
}

/* link style
---------------------------- */
a:link {
	color: #00c;
	text-decoration: none;
}
a:hover {
	color: #c00;
	text-decoration:underline;
}
a:visited {
	color: #00c;
	text-decoration: none;
}
.bg_shiro {
background:#FFF;
margin:5px;
}
.shiro{
color:#FFF;
}
.aka{
color:#cc0000;
}
.orange{
color:#fd6721;
}
.midori {
color:#336600;
}
.aka_b {
border:1px solid #ff0000;
}
.aka_b_b {
border-bottom:1px solid #cc0000;
}

.strongG{
	color:#336600;
	font-weight:bold;
	font-size:1.1em;
}

.bn_banner a:hover img{
	text-decoration:none;
	filter: alpha(opacity=60);
	  -moz-opacity:0.6;
	  opacity:0.6;
	}

ul.list_ul li {
list-style-type: none
}


/* other
--------------------------- */
@media screen and (min-width: 579px) {
	.br-sp { display:none; }
}

@media screen and (max-width: 579px) {
	.br-sp2 { display:none; }
}


a:focus, *:focus {
	outline:none;
}

.wrapper {
overflow:hidden;
border:1px solid red;
}

.formInput05 { width: 5em; max-width: 100%; box-sizing: border-box; display: inline-block; margin:0px 3px;}
.formInput10 { width: 10em; max-width: 100%; box-sizing: border-box; display: inline-block; margin:0px 3px;}
.formInput15 { width: 15em; max-width: 100%; box-sizing: border-box; display: inline-block; margin:0px 3px;}
.formInput20 { width: 20em; max-width: 100%; box-sizing: border-box; display: inline-block; margin:0px 3px;}
.formInput25 { width: 25em; max-width: 100%; box-sizing: border-box; display: inline-block; margin:0px 3px;}
.formInput30 { width: 30em; max-width: 100%; box-sizing: border-box; display: inline-block; margin:0px 3px;}
.formInput40 { width: 40em; max-width: 100%; box-sizing: border-box; display: inline-block; margin:0px 3px;}

/* ＝＝＝＝＝＝＝＝＝＝＝＝＝　common　＝＝＝＝＝＝＝＝＝＝＝＝＝＝ */

.maincontainer {
	max-width:1200px !important;
	margin-left:auto;
	margin-right:auto;
padding:0;
}

.rl10-container {
  max-width: 1000px;
  position: relative;
  margin: 0 auto;
  padding-left: 5px;
  padding-right: 5px;
}

.rl15-container {
  max-width: 900px;
  position: relative;
  margin: 0 auto;
  padding-left: 5px;
  padding-right: 5px;
}

.rl80-container {
  max-width: 800px;
  position: relative;
  margin: 0 auto;
  padding-left: 45px;
  padding-right: 45px;
}

.rl60-container {
  max-width: 600px;
  position: relative;
  margin: 0 auto;
  padding-left: 45px;
  padding-right: 45px;
}
.rl65-container {
  max-width: 650px;
  position: relative;
  margin: 0 auto;
  padding-left: 5px;
  padding-right: 5px;
}

p.lead {
margin:2em 1em;
font-size:1em;
}
p.lead2 {
margin:1.2em 1em;
font-size:1em;
}
p.leadnotice {
	padding: 0.5em 0.75em;/*上下 左右の余白*/
	color: #cc0000;/*文字色*/
	background:#eee;
	font-size:1.2em;
}
p.leadnotice2 {
	padding: 0.5em;/*上下 左右の余白*/
	background:#fff;
}
span.leadnotice2 {
	padding: 0.5em 0.7em;/*上下 左右の余白*/
	background:#e7e7e7;
	font-weight:600;
	color:#c00;
}
.strongform {
	font-weight:600;
}

.bb_title {
	display: flex;
	align-items: center;
}
.bb_title:before, .bb_title:after {
	content: "";
	flex-grow: 1;
	height: 7px;
	display: block;
}
.bb_title:before {
	background: linear-gradient(-90deg, #ff0000, transparent);
	margin-right: .4em;
}
.bb_title:after {
	background: linear-gradient(90deg, #ff0000, transparent);
	margin-left: .4em;
}

.sp-header {
position:sticky;
position: -webkit-sticky;/*Safari用ベンダープレフィックス*/
background:#fde4b8;
height:50px;
z-index:2;
margin-top:-1;
}

/* ＝＝＝＝＝＝＝＝＝＝＝＝＝　ナビゲーション固定　＝＝＝＝＝＝＝＝＝＝＝＝＝＝ */

.is-fixed {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 10;
  width: 100%;
}
 
/* ＝＝＝＝＝＝＝＝＝＝＝＝＝　ナビゲーション　＝＝＝＝＝＝＝＝＝＝＝＝＝＝ */
.toggleMenu {
position:fixed;
top:5px;
left:20px;
z-index:9999;
    display:  none;
    background: #000;
    padding: 8px 12px;
    color: #fff;
}

.d_nav {
max-width:1200px;
	margin-left:auto;
	margin-right:auto;
margin-bottom:0;/*余計なマージンをとる*/
    list-style: none;
	background:#000;
}
.d_nav:before,
.d_nav:after {
    content: " "; 
    display: table; 
}
.d_nav:after {
    clear: both;
}
.d_nav ul {
    list-style: none;
    width: 18em;/*階層の長さ*/
}
.d_nav a {
    padding: 10px 15px;
    color:#fff;
    text-decoration: none;
    outline: none;
    z-index: 1;
}
.d_nav li {
    position: relative;
}
.d_nav > li {
    float: left;
    border-bottom: 1px solid #FFF;/*メニューの下線*/
}
.d_nav > li > .parent {
/*        background-image: url("../css/downArrow.png");*/
    background-repeat: no-repeat;
    background-position: right;
}

.d_nav a:visited {
	text-decoration: none;
}

.d_nav a:hover {
    padding: 10px 15px;
    color:#fff;
    text-decoration: none;
    background:#ff0000;
}

.d_nav li {
    position: relative;
	padding:0;/*navとnavの間*/
}
.d_nav > li {
    float: left;
}
.d_nav > li > .parent {
/*    background-image: url("../css/downArrow.png");*/
    background-repeat: no-repeat;
    background-position: right;
}

.d_nav > li > a {/*navのtitle*/
    display: block;
    font-size: 0.9rem;
	margin:0 3px;/*navとnavの間*/
}
.d_nav li  ul {
    position: absolute;
    left: -9999px;
}
.d_nav > li.hover > ul {
    left: 0;
}
.d_nav li li.hover ul {
    left: 100%;
    top: 0;
}
.d_nav li li a {
    display: block;
    background: #333;
    position: relative;
    z-index:100;
    border-top: 1px solid #000;
    font-size: 0.9rem;
}
.d_nav li li li a {
    background:#249578;
    z-index:200;
    border-top: 1px solid #FFF;
}

@media screen and (min-width: 770px) {
.sp_nav{
	display:none;
	}
}
@media (min-width: 687px) and (max-width: 770px) {
.d_nav {
    margin: 70px auto 0;
z-index:1;
    }
}

@media screen and (max-width: 687px) {
.d_nav {
    margin: 50px auto 0;
z-index:1;
    }
.d_nav li {
    position: relative;
	padding:0;
    }
    .active {
        display: block;
    }
    .d_nav > li {
        float: none;
    border-top: 1px solid #000;
    }
    .d_nav > li > .parent {
        background-position: 95% 50%;
    }
    .d_nav li li .parent {
/*        background-image: url("../css/downArrow.png");*/
        background-repeat: no-repeat;
        background-position: 95% 50%;
    }
    .d_nav ul {
        display: block;
        width: 100%;
    z-index: -1;
    }
   .d_nav > li.hover > ul , .d_nav li li.hover ul {
        position: static;
    z-index: 1;
    }
}
.is-fixed {
z-index:9999;
}
/*-------------------------------------------------- */
.bread {
margin-left:20px;
margin-bottom:30px;
}

.bread ol {
margin:0;
padding:0;
list-style:none;
}

.bread li {
display: inline-block;
padding:3px;
color:#000;
font-size:0.8em;
text-decoration:none;
}

.bread li a:hover {
background:#eee;
}

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

.bread li {
float:left;
width:auto;
}


.bread li:after {
  content: '\003e';
color:#888888;
margin-left:5px;
margin-right:5px;
}


.bread li.nashi:after {
content:none;
color:#888888;
margin-left:5px;
margin-right:5px;
}

/* ＝＝＝＝＝＝＝＝＝＝＝＝＝　詳しくは…ページ_ボタン　＝＝＝＝＝＝＝＝＝＝＝＝＝＝ */	
.square_btn a {
	align-items: center;
font-size:1.1rem;
    display: block;/*inline-block にするとテキストだけのサイズ*/
    padding: 0.5em 1em;
    text-decoration: none;
    border-radius: 4px;
    color:#FFF;/*効かない*/
    background-image: -webkit-linear-gradient(45deg, #FFC107 0%, #ff8b5f 100%);
    background-image: linear-gradient(45deg, #FFC107 0%, #ff8b5f 100%);
    box-shadow: 0px 2px 2px rgba(0, 0, 0, 0.29);
    border-bottom: solid 3px #f76a35;
  }

.square_btn a:hover{
background:#f76a35;
border-bottom: solid 3px #f76a35;
}
.square_btn a:active{
    -ms-transform: translateY(4px);
    -webkit-transform: translateY(4px);
    transform: translateY(4px);
    box-shadow: 0px 0px 1px rgba(0, 0, 0, 0.2);
    border-bottom: none;
    color: #fff;
}
.square_btn_small,
li p:has(.square_btn_small) {
    background: none !important;
    border: none !important;
    box-shadow: none !important;
    padding: 0 !important;
}

.square_btn_small a {
	align-items: center;
font-size:1rem;
    display:inline-flex;
    padding: 0.6em 1em;
    text-decoration: none;
    border-radius: 4px;
color: #FFF !important;
    background-image: -webkit-linear-gradient(45deg, #FFC107 0%, #ff8b5f 100%);
    background-image: linear-gradient(45deg, #FFC107 0%, #ff8b5f 100%);
    box-shadow: 0px 2px 2px rgba(0, 0, 0, 0.29);
    border-bottom: solid 3px #f76a35;
  }

.square_btn_small a:hover{
background:#f76a35;
border-bottom: solid 3px #f76a35;
color: #FFF !important;
}
.square_btn_small a:active{
    -ms-transform: translateY(4px);
    -webkit-transform: translateY(4px);
    transform: translateY(4px);
    box-shadow: 0px 0px 1px rgba(0, 0, 0, 0.2);
    border-bottom: none;
color: #FFF !important;
}

.radius_btn {
	align-items: center;
font-size:1rem;
    display:inline-block;
    padding: 0.4em 0.8em;
    text-decoration: none;
    border-radius: 14px;
background:#b0894e;
  }

/* ＝＝＝＝＝＝＝＝＝＝＝＝＝　footer　＝＝＝＝＝＝＝＝＝＝＝＝＝＝ */
.copyright {
  text-align: center;
font-size:0.8em;
padding:1.5em 0;
}

.footer_hr {
  border-top: 2px solid #ff0000;
  border-bottom: 3px solid #fde4b8;
}
.footer_hr:after {
  content: '';
  display: block;
  margin-top: 2px;
  border-top: 2px solid #000;
  border-bottom: 1px solid #fde4b8;
}

.facebook_color {
  color:#3b5998;
}
.bg_daibutsu {
  background-image: url("../image/bg_daibutsu.jpg");
  background-repeat: no-repeat;
  background-position:50% 0%;
}
/* ＝＝＝＝＝＝＝＝＝＝＝＝＝　今後の予定　＝＝＝＝＝＝＝＝＝＝＝＝＝＝ */	
.bg_schedule {
background:linear-gradient(151.97751664084512deg, rgba(255, 251, 228,1) 4.303571428571427%,rgba(254, 245, 211,1) 10.848571428571427%,rgba(250, 211, 112,1) 51.64857142857143%)
}

dl.topics {
	display:block;
	padding: 7px 0;
	border-bottom: 2px solid #FF0000;
	width:100%;
	font-size:1.2rem;
}
dl.topics dt {
	padding-bottom: 5px;
	background:#000;
	color:#FFF;
	text-align:center;
	margin-left:5%;
	padding:3px;
}
dl.topics dt.none {
	padding-bottom: 5px;
	background:none;
	text-align:center;
	margin-left:5%;
	padding:3px;
}
dl.topics dd {
	text-align:center;
	color:#FF0000;
	font-size:100%;
}
@media screen and (min-width: 768px) {
	dl.topics dt {
		clear: left;
		float: left;
		width: 25%;
		margin-right:5%;
	}
	dl.topics dt:first-letter {
		font-size:150%;
	}
	dl.topics dd {
		margin-left: 18%;
		font-size:150%;
	}
}


.topics2 {
	margin:15px;
}

.topics2_kai {
	padding:30px 0;
	background:#000;
	color:#FFF;
	text-align:center;
	font-size:1.2rem;
}
.topics2_date {
	padding 2px;
	color:#c00;
	font-size:1.2rem;
}
.topics2_discription {
	margin-top: 5px;
	color:#333;
	font-size:1.1rem;
	line-height: 1.5rem;
}
.topics2_pdf {
	padding 2px;
	font-size:.9rem;
	text-align:center;
}



.yokonarabi {
	display:flex;
}
span.small_year {
	font-size:60%;
	margin-right:5px;
}

h4.schedule13 {
background:#FF0000;
color:#FFF;
border-radius:20px;
padding:0.3em 0 0.3em 0.8em;
}

h4.schedule13sq {
background:#FF0000;
color:#FFF;
padding:0.3em 0 0.3em 0.8em;
}

/*second.css に記述すると反映されないのでこちらに*/
.mantra {
border-bottom:1px solid #ff0000;
}
.mantra_box {
border:solid 1px #ff0000;
padding:8px 2px;
margin:5px 0;
max-width:660px;
}


.cp_navi *, nav.cp_navi *:after, nav.cp_navi *:before {
	-webkit-box-sizing: border-box;
	        box-sizing: border-box;
}
.cp_navi a {
	text-decoration: none;
}
.cp_navi {
	margin: 2em 0;
	text-align: center;
}
.cp_navi .cp_pagination {
	display: inline-block;
	margin-top: 2em;
	padding: 0 0.5em;
	background: #f76a35;
}
.cp_navi .cp_pagenum {
	font-size: 1em;
	line-height: 2.5em;
	display: block;
	float: left;
	padding: 0 25px;
	transition: 400ms ease;
	letter-spacing: 0.1em;
	color: #ffffff;
}
.cp_navi .cp_pagenum:hover,
.cp_navi .cp_pagenum.current {
	font-weight: bold;
	color: #ffffff;
	background-color: #FFC107;
}
.cp_navi .cp_pagenum.prev:hover,
.cp_navi .cp_pagenum.next:hover {
	color: #C5E1A5;
	background-color: transparent;
}
@media only screen and (max-width: 960px) {
	.cp_navi .cp_pagination {
		margin-top: 50px;
		padding: 0 10px;
	}
	.cp_navi .cp_pagenum {
	font-size: 0.8em;
	line-height: 2.5em;
	padding: 0 15px;
	}
	.cp_navi .cp_pagenum.prev,
	.cp_navi .cp_pagenum.next {
		padding: 0 10px;
	}
}
@media only screen and (min-width: 120px) and (max-width: 767px) {
	.cp_navi .cp_pagenum {
	display: none;
	padding: 0 14px;
	}
	.cp_navi .cp_pagenum:nth-of-type(2) {
	position: relative;
	padding-right: 50px;
	}
	.cp_navi .cp_pagenum:nth-of-type(2)::after {
	font-size: 1.2em;
	position: absolute;
	top: 0;
	left: 45px;
	content: '...';
	}
	.cp_navi .cp_pagenum:nth-child(-n+3),
	.cp_navi .cp_pagenum:nth-last-child(-n+3) {
		display: block;
	}
	.cp_navi .cp_pagenum:nth-last-child(-n+4) {
		padding-right: 14px;
	}
	.cp_navi .cp_pagenum:nth-last-child(-n+4)::after {
		content: none;
	}
	.cp_navi .cp_pagenum.prev,
	.cp_navi .cp_pagenum.next {
		padding: 0 5px;
	}
}


.tokubetsu_2 {
padding:8px;
background:#fef2dc;
}
/* ＝＝＝＝ 地図 ＝＝＝＝＝ */
#gmap {
	float:left;
	width:100%;
	height:500px;
	margin:0px 0px 0px 0px;
}
.maph4 {
	color:#034a7f;
	font-weight: 900; 
	font-size:12px;
}
.popup {
	width:200px;
	height:50px;
	padding:5px;
	white-space: nowrap;
}

/* mp4の表示用 */
.video {
	width: 100%;
	max-width: auto;
}
/* YouTubeの表示用 */
.youtube {
	position: relative;
	width: 100%;
	padding-top: 56.25%;
}
/* ＝＝＝＝＝＝＝＝＝＝＝＝＝　information　＝＝＝＝＝＝＝＝＝＝＝＝＝＝ */
#information_list {
	margin: 10px auto;
	padding: 0;
	width: 100%;
	list-style-type: none;
}
#information_list li {
	clear: both;
	border-bottom: 1px solid #ff0000;
	padding: 15px;
	overflow: hidden;
}
#information_list span {
	display: inline-block;
	padding: 5px 0;
}
#information_list .Date {
	margin-left: 20px;
	font-weight: bold;
}
#information_list .DateX {
	margin-left: 40px;
	font-weight: bold;
}
#information_list .Category {
	border: 1px solid #600;
	color: #fff;
	width: 160px;
	background-color: #600;
	text-align: center;
	margin-left:15px;
}
#information_list .CategoryX {
	border: 1px solid #c00;
	color: #fff;
	width: 140px;
	background-color: #c00;
	text-align: center;
	margin-left:15px;
}
#information_list .Title {
	text-align: left;
	line-height: 1.8em;
}
#information_list .TitleX {
	text-align: left;
	line-height: 1.8em;
}

/* -- PC -- */
@media screen and (min-width: 768px) {
	#information_list .Title {
		float: right;
		display: block;
		width:560px;
	}
}
@media screen and (min-width: 768px) {
	#information_list .TitleX {
		float: right;
		display: block;
		width:750px;
	}
}
/* -- SMP -- */
@media screen and (max-width: 767px) {
	#information_list .Title {
		display: block;
		margin-top: 10px;
		width: 100%;
		text-align:left;
	}
}
@media screen and (max-width: 767px) {
	#information_list .TitleX {
		display: block;
		margin-top: 10px;
		width: 100%;
		text-align:left;
	}
}

/*------------------- for report ------------------------- */
.title_1 {
	padding: 0.5em 0.75em;/*上下 左右の余白*/
	color: #000;/*文字色*/
	/*  background: transparent;背景透明に*/
	background:#eee;
	border-left: solid 7px #9e5e02;/*左線*/
	font-size:1.2em;
}
.title_2 {
	padding: 0.25em 0.75em;
	color: #000;
	border-top:solid 3px #9e5e02;
	border-bottom:solid 3px #9e5e02;
	font-size:0.8rem;
}

.title_4 {
	padding: 0.5em 0 0.5em 1.25em;
	background:#9e5e02;
	color:#FFF;
	font-size:1.2em;
}
.title_10 {
	position: relative;
	padding:.8rem;
	font-size:1.4em;
	text-align:center;
}
.title_10:before {
	position: absolute;
	bottom: -5px;
	/*left:50%;
	left: calc(50% - 30px);*/
	left:0;
	right:0;
	margin:auto;
	width: 100px;
	height: 5px;
	content: '';
	background:#9e5e02;
	border-radius: 2px;
}
.title_date {
	font-size:0.9em;
	text-align:center;
}

.card {
	box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.5);
	margin:0.5em;
}
.card-body {
	padding:0.8rem;
}
.card-img-top {
	max-width: 100%;
	flex-shrink:0;
}
p.card-text {
	font-size:0.9em;
	line-height:0.4:
}

.card-title {
font-size:0.9em;
	padding: 0.2em 0.4em;/*上下 左右の余白*/
	color: #494949;/*文字色*/
	background: transparent;/*背景透明に*/
	border-left: solid 5px #9e5e02;/*左線*/
}
span.katsudou_h {
	background:blue;
	padding:0.5em;
	border-radius:3px;
	color:#fff;
	font-size:0.9em;
	margin-left:5px;
}

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

.reportcontainer {
	width: 100%;
	padding-right: 5px;
	padding-left: 5px;
	margin-right: auto;
	margin-left: auto;
}
.reportcom {
	margin:3px 3px;
	font-size:1em;
	line-height:1.5em;
}
.report_btn_small a {
	align-items: center;
	font-size:0.8rem;
	display:inline-block;
	padding: 0.3em 1em;
	text-decoration: none;
	border-radius: 4px;
	color:#FFF;/*効かない*/
	background-image: -webkit-linear-gradient(45deg, #FFC107 0%, #ff8b5f 100%);
	background-image: linear-gradient(45deg, #FFC107 0%, #ff8b5f 100%);
	box-shadow: 0px 2px 2px rgba(0, 0, 0, 0.29);
	border-bottom: solid 3px #f76a35;
}

.report_btn_small a:hover{
	background:#f76a35;
	border-bottom: solid 3px #f76a35;
}
.report_btn_small a:active{
	-ms-transform: translateY(4px);
	-webkit-transform: translateY(4px);
	transform: translateY(4px);
	box-shadow: 0px 0px 1px rgba(0, 0, 0, 0.2);
	border-bottom: none;
	color: #fff;
}



/* ===================================================
   【完全リセット版】新しいオレンジボタンの設定
   =================================================== */

/* 1. 外側のpタグ：一切の四角や色、影を禁止してただの中央寄せの箱にする */
p.my-orange-btn {
    display: block !important;
    background: none !important;
    background-image: none !important;
    border: none !important;
    box-shadow: none !important;
    padding: 0 !important;
    margin: 1.5rem 0 0 0 !important;
    text-align: center !important;
}

/* 2. 中のaタグ：ここだけを完璧なボタンの形にする */
p.my-orange-btn a {
    /* タイムラインのテーマの邪魔なデザインを全て初期化 */
    position: relative !important;
    display: inline-flex !important; 
    align-items: center !important;
    justify-content: center !important;
    width: auto !important;
    height: auto !important;
    min-width: 170px !important; /* ボタンが小さすぎないように最低幅を固定 */
    font-size: 1rem !important;
    padding: 0.6em 1.5em !important;
    text-decoration: none !important;
    border-radius: 4px !important;
    box-sizing: border-box !important;
    vertical-align: middle !important;
    
    /* 文字色を白に強制 */
    color: #FFF !important; 
    
    /* グラデーションと影 */
    background: linear-gradient(45deg, #FFC107 0%, #ff8b5f 100%) !important;
    background-image: linear-gradient(45deg, #FFC107 0%, #ff8b5f 100%) !important;
    box-shadow: 0px 2px 2px rgba(0, 0, 0, 0.29) !important;
    
    /* 下側の立体的な線だけをつける（上下左右のテーマの線をリセット） */
    border-bottom: solid 3px #f76a35 !important;
    border-top: none !important;
    border-left: none !important;
    border-right: none !important;
}

/* 3. ホバー時（マウスを乗せたとき） */
p.my-orange-btn a:hover {
    background: #f76a35 !important;
    background-image: none !important;
    border-bottom: solid 3px #f76a35 !important;
    color: #FFF !important; 
    box-shadow: 0px 1px 1px rgba(0, 0, 0, 0.2) !important;
}

/* 4. クリック時 */
p.my-orange-btn a:active {
    -ms-transform: translateY(4px) !important;
    -webkit-transform: translateY(4px) !important;
    transform: translateY(4px) !important;
    box-shadow: 0px 0px 1px rgba(0, 0, 0, 0.2) !important;
    border-bottom: none !important;
    color: #FFF !important;
}
