/*///共通//////////////////////////////*/
/*※見出しは共通の調整が終わったら消す※*/
h2{
	font-size: 3rem;
	margin: 1.25em 0 .5em 0;
	/*text-align: left;*/
	text-align: center;
}
h4{
	font-size: 1.8rem;
	margin-top: .75em;
	margin-bottom: .75em;
}
h5{
	font-size: 1.6rem;
	margin-top: 1.5em;
	margin-bottom: .5em;
}
/*h3{
	margin-bottom: .75em;
    font-size: 2.2rem;
    font-weight: bold;
    line-height: 1.6;
    margin-top: .75em;
}


h4:before {
  content: "";
width: 10px;
height: 10px;
display: inline-block;
border-radius: 100%;
background: #2b2b2b;
position: relative;
left: -6px;
top: -3px;
	margin-left: .4em;
}*/


h5{
	font-size: 1.6rem;
	margin-top: .75em;
	margin-bottom: .75em;
}

.tnm_row {
    flex-direction: column;
}

.tnm_row_sns {
	flex-direction: row;
    display: flex;
}

.free_html p {
    margin-bottom: 1.5rem;
}


ul.free_page_maru_list li{
	list-style: square;
	margin-left: 1em;
	padding-left: 0px !important;
}


.to_page_top{
	font-size: 1.5rem;
}

.bl_main .free_html div:not(.markup2022) :not(.full-width):not(.disable-max-width):not(.el_icon):not(.sp-full-width).tnm_youtube{
	position: relative;
	padding-bottom: 56.25%;
	height: 0 !important;
	overflow: hidden;
	display: block;
	margin: 0 auto;
	max-width: 100%;
}

.r_event_related_event{
			margin:0 30px 2em;
		}

.tnm_w70{
	width: 100%;
}
.tnm_mt0{
	margin-top:0;
}
.tnm_mt20{
	margin-top:20px;
}
.tnm_mt30{
	margin-top:30px;
}
.tnm_mt60{
	margin-top:30px;
}
.tnm_mt80{
	margin-top:30px;
}
.tnm_mt100{
	margin-top:30px;
}
.tnm_mb30{
	margin-bottom:1.5rem;
}
.tnm_mb30{
	margin-bottom:30px;
}
.tnm_mb60{
	margin-bottom:60px;
}
.tnm_pt10{

        padding-top:10px;

    }
.tnm_pt20{

        padding-top:20px;

    }
.tnm_pt30{

		padding-top:30px;

	}
.tnm_pt40{

		padding-top:40px;

	}
.tnm_pt50{

		padding-top:50px;

	}
.tnm_pt60{

		padding-top:60px;

	}
.tnm_pb10{

        padding-bottom:10px;

    }

.tnm_pb20{

        padding-bottom:20px;

    }

.tnm_pb30{

        padding-bottom:30px;

    }
.tnm_pb40{

        padding-bottom:40px;

    }
.tnm_pb50{

        padding-bottom:50px;

    }
.tnm_pb60{
        padding-bottom:60px;
    }
.tnm_pl30{
        padding-left: 0px;
    }
.tnm_plr60{
        padding: 0 26px;
    }
.tnm_red{
		font-size: 115%;
		font-weight: bold;
		color: #FF0004;
	}
.tnm_s80{
		font-size: 80%;
	}
.tnm_border-top{
		border-top: #dcdcdc 1px solid;
	}
.tnm_border-bottom{
		border-bottom: #dcdcdc 1px solid;
	}
.tnm_border-right{
		border-right: #dcdcdc 1px solid;
	}
.tnm_border-left{
		border-left: #dcdcdc 1px solid;
	}
.tnm_col{
  padding-bottom: 30px;
}

.tnm_col_sns{
	padding-bottom: 0px;
}


/*----中黒のリスト----*/
.circle-list_tnm {
    padding-left: .75em;
    margin-bottom: 1.75em;
    margin-top: .25em;
}
.circle-list_tnm li::before {
    content: "";
width: 4px;
height: 4px;
display: inline-block;
border-radius: 100%;
background: #2b2b2b;
position: relative;
left: -8px;
top: -3px;
}
.circle-list_tnm li:not(:last-child) {
    margin-bottom: .5em;
}
.circle-list_tnm li {
    padding-left: 1em;
    text-indent: -0.3em;
    line-height: 1.6;
}
/*----中白（白丸）のリスト----*/
.circle-list_tnm .circle-white_list_tnm li::before {
    content: "";
    width: 4px;
    height: 4px;
    display: inline-block;
    border-radius: 100%;
    background: #fff;
    position: relative;
    left: -8px;
    top: -3px;
	border: 1px solid #2b2b2b;}

/*----外枠グレーのボックス----*/
.box_border-gray_tnm{
    border: 1px solid #d2d2d2;
	padding: 1em 0.8em;
	border-radius: 4px;
	margin: 20px 0 20px 0;
}

/*----グリーンのボックス----*/
.greenarea_tnm{
	/*width:70%; */
	background: #E0EAE3; 
	border-radius: 5px; 
	padding: 1em 2em; 
	display: flex; 
	align-items: center;
}

/*----（注）のリストのインデント----*/
.attention-list li {
    padding-left: 2.2em;
    text-indent: -2.2em;
    line-height: 1.6;
}
.attention-list li:not(:last-child) {
    margin-bottom: .5em;
}

/*----左が見出しのテーブル----*/
.list-table{
	margin:30px 0;
}

.list-table .table-th-gray_tnm{
width: auto;
border: none;
background-color: #2b2b2b;
color: #fff;
font-weight: bold;
padding: 1rem 1.6rem;
display: block;
text-align: left;
}

.list-table tr th.display_none_sp_tnm{
	display: none;
}

/*----左が見出しのテーブル2----*/

.left_midashi_tnm .list-table tr{
	border-top: none;
}

.left_midashi_tnm .list-table tr:first-child{
	border-top: 1px solid #2b2b2b;
}

.left_midashi_tnm .list-table th{
display: none;
}


.left_midashi_tnm .list-table td{
margin-bottom: 0em;
	/*border-bottom: none;*/
}

.left_midashi_tnm .list-table td:last-child{
	margin-bottom: 0em;
	/*border-bottom: none;*/
}

/*----吹き出し 下----*/
.balloon-bottom_tnm {
  position: relative;
  display: inline-block;
  margin: 1.5em 0;
  padding: 7px 10px;
  min-width: 120px;
  max-width: 100%;
  border: solid 3px #2b2b2b;
  box-sizing: border-box;
border-radius: 4px;
}

.balloon-bottom_tnm:before {
   content: "";
  position: absolute;
  bottom: -24px;
  left: 50%;
  margin-left: -15px;
  border: 12px solid transparent;
  border-top: 12px solid #FFF;
  z-index: 2;
}

.balloon-bottom_tnm:after {
   content: "";
  position: absolute;
  bottom: -30px;
  left: 50%;
  margin-left: -17px;
  border: 14px solid transparent;
  border-top: 14px solid #2b2b2b;
  z-index: 1;
}

.balloon-bottom_tnm p {
  margin: 0;
  padding: 0;
}


/*----タイムライン----*/
.list-table_tnm tbody td::before {
    		width: auto;
		}
		
.list-table_tnm tbody td {
    		border: 1px solid #2b2b2b;
			flex-direction: column;
    	}

/*----バリアフリーアイコン2カラム----*/

.sm-contents-icons2 {
  display: flex;
  flex-wrap: wrap;
  gap: 30px 30px;
  margin-bottom: 30px;
}

/*///トップページ///////////////////////*/
.top-attention {
	background-color: #e0eae3;
}
.top-attention .tnm_icon_green {
	background-color: #00a02a;
}

/*///各国語トップページ///////////////////////*/

/*///庭園・茶室///////////////////////*/

a .bg-black_link-color_tnm{
	color: #7796cf;
}

a:hover .bg-black_link-color_tnm{
	color: #7796cf;
}


/*///交通・料金・開館時間//////////////////////*/
h3 .icon_top_news_tnm {
    content: url("data:image/svg+xml, %3Csvg xmlns='http://www.w3.org/2000/svg' width='40' height='40' viewBox='0 0 40 40'%3E%3Cg%3E%3Ccircle cx='20' cy='20' r='20' style='fill: %23e60000'/%3E%3Cpath d='M17,28.25a2.92,2.92,0,0,1,2.93-2.91H20a2.93,2.93,0,0,1,3.05,2.79v.12a2.88,2.88,0,0,1-2.86,2.88H20a2.87,2.87,0,0,1-3-2.74Zm.5-15-.12-4.37H22.7l-.15,4.37-1,10h-3Z' style='fill: %23fff'/%3E%3C/g%3E%3C/svg%3E ");
	padding-right: 1.2rem;
    position: relative;
    top: 1.2rem;
}

.information_access__contents .alert-small::before {
    background-color: #ff0000;
}

.information_access__contents .link-list li span{
	padding: 1.25em 0;
	display: inline-block;
}


/*///構内マップ　フロアマップ///////////////////////*/
.tnm_floormap_table{
	max-width: 100%;
}

div.free_html .tnm_floormap_table table:not(.tablesaw):not(.pc_hide):not(.no_break):not(.table) tr{
	display: block;
}

div.free_html table:not(.tablesaw):not(.pc_hide):not(.no_break):not(.table) td.tnm_floormap_td_r{
	text-align:right;
	vertical-align: top;
	width: 15%;
	display: inline-block;
}
div.free_html table:not(.tablesaw):not(.pc_hide):not(.no_break):not(.table) td.tnm_floormap_td_l{
	text-align: left;
	display: inline-block;
	width: 80%;
	vertical-align: top;
}

/*///バリアフリーマップ///////////////////////*/
.pd_waku_tnm{
	padding: 26px;
}
.dl_list_barrier-free_tnm{
	display: flex;
}

.dl_list_barrier-free_tnm dt{
	width: 80px;
	flex-shrink: 0;
}

.dl_list_barrier-free_tnm dd{
	padding-left: 1rem;
	margin-bottom: 10px;
}


/*///よくある質問///////////////////////*/
.FAQ_Q{
    font-weight: bold;
    font-size: 80%;
    color: #fff;
    padding: 0 10px 2px 10px;
    border-radius: 4px;
    background: #1b854d;
    margin: 4px 0 0 0;
}
.FAQ_A{
    font-weight: bold;
    font-size: 80%;
    color: #fff;
    padding: 0 9px 2px 11px;
    border-radius: 4px;
    background: #990000;
    margin: 4px 0 0 0;
}
.red_text{
	color:#990000;
}

/*///イベント（初もうで、お花見、アジアの旅）///////////*/

/*----センター揃えの画像----*/
.img_portrait_w1000_tnm {
    max-width: auto;
}
.img_portrait_w1200_tnm {
    max-width: auto;
}

.event_kikan_tenjishitsu_tnm{
        /*font-size:80%;
		font-weight: bold;*/
        background-color:#2b2b2b;
        padding: 7px 10px 5px;
        line-height: 2em;
        color:#fff; 
    }
.event_sakuhin_title_tnm{
        font-size:150%;
    }

.event_2023hanami_bgcolor_tnm
 { /*background-color:#cc3c17;*/
	 background-color: #ed5563;
	}
.event_2023asia_bgcolor_tnm
 { 
	 background-color: #ef8875;
	 color:#2b2b2b;
	}

/*///キッズデー2024///////////*/

		#kidsday2024 #h2-0730
		{
			margin-right: 30px;
			font-size: 3rem;
		}
		
		#kidsday2024 .information-study-menu
		{
    		background-color: #b0d35f;
			padding-bottom: 0px;
			margin-bottom: 0px;
		}

		#kidsday2024 .tnm_col
		{
    		padding-bottom: 0px;
		}

		#kidsday2024 #article_01_tnm
		{
			background-size:130px;
			background-position:102% 0%;
			padding-top: 40px;
		}
		
		#kidsday2024 #article_02_tnm
		{
			background-size:160px;
			background-position:13% 0%;
		}
		
		#kidsday2024 #article_03_tnm
		{
			background-size:160px;
			background-position:102% 0%;
		}
		
		#kidsday2024 #article_05_tnm
		{
			background-size:160px;
			background-position: 102% 0%;
		}
		
		#kidsday2024 #article_06_tnm
		{
			background-size:160px;
  			background-position:13% -2%;
		}
		
		#kidsday2024 .list-table_tnm tbody td::before {
    		width: auto;
		}
		
		#kidsday2024 .list-table_tnm tbody td {
    		border: 1px solid #2b2b2b;
			flex-direction: column;
    	}

/*///あそびば　とーはく///////////*/
	#asobiba_tohaku_tnm .full-width {
  margin-left: 0;
  margin-right: 0;
  width: 100%;
}
	#asobiba_tohaku_tnm .left_midashi_tnm table.list-table td {
  display: block;
  clear: both;
}
	#asobiba_tohaku_tnm #article_01
		{
		background-size: 50%;
    background-position: 100% 3%;
			padding-top: 40px;
		}
		
		#asobiba_tohaku_tnm #article_02
		{
			background-size: 50%;
    background-position: 0% 0%;
		}
		
		#asobiba_tohaku_tnm #article_03
		{
			background-size: 72%;
    background-position: 93% 0%;
		}
		
		#asobiba_tohaku_tnm #article_04
		{
			background-size: 50%;
    background-position: 5% 5%;
			padding-top: 20px;
		}
		