#wp-edit > section{
    margin-bottom: 60px;
    border-bottom: 1px dashed #ddd;
    padding-bottom: 30px;
}
#wp-edit > section:first-of-type{
    margin-top: 30px;
}
#wp-edit > section:last-of-type{
    border-bottom: none;
}
#wp-edit h2{
	font-size:140%;
    background: #498bca;
    color: #fff;
    padding: 10px 15px;
	clear:both;
	margin-bottom:0.5em;
}
#wp-edit .p_contact h2,
#wp-edit section div h2{
    background: #fffaeb;
    color: #4d4d4d;
}
#wp-edit h4{
    border: 1px solid #ddd;
    padding: 10px 15px;
	clear:both;
    margin-top: 1em;
	margin-bottom:0.5em;
}
#wp-edit h3{
    font-size:110%;
    font-weight: bold;
    margin-top: 1em;
	margin-bottom:0.5em;
}
#wp-edit h3::before{
    content: "";
    display: inline-block;
    width: 10px;
    height: 10px;
    border-radius: 50%;
    border: 3px solid #f45d88;
    margin-right: 5px;
    vertical-align: middle;
}

#wp-edit ul,#wp-edit ol{
    margin: 1em 0;
}
#wp-edit ul:not(.pages,.fl_box) > li{
	list-style-type:disc;
	margin-left:1.5em;
	padding-left:0;
	margin-bottom:0.5em;
}
#wp-edit .fl_box > figure{
    width: 30%;
    min-width: 270px;
    margin-right: 30px;
}
#wp-edit .fl_box > figure img{
    width: 100%;
    height: auto;
}
#wp-edit .fl_box > div{
    flex-basis: 100%;
}
#wp-edit .fl_box > div ul.fl_box > li{
    flex: 1;
    padding: 0 15px;
    text-align: center;
}
#wp-edit .fl_box > div ul.fl_box > li img{
    margin: 10px auto;
}

#wp-edit .p_contact{
    background: rgba(194, 189, 189, 0.1);
    padding: 25px;
    margin-top: 20px;
    border-radius: 7px;
}
#wp-edit .p_contact dt{
    font-weight: bold;
    margin-bottom: 0.5em;
}
#wp-edit .p_contact dt::before{
    content: "";
    display: inline-block;
    width: 10px;
    height: 10px;
    border-radius: 50%;
    border: 3px solid #f45d88;
    margin-right: 5px;
    vertical-align: middle;
}
#wp-edit .p_contact dd{
    font-size: 120%;
}

#wp-edit p img{
    display: block !important;
}
#wp-edit p img.aligncenter{
    margin: 10px auto !important; 
}
#wp-edit p img.alignright{
    margin: 10px 0 10px auto !important; 
}
#wp-edit a.img_link img{
    transition: all ease .3s;
}
#wp-edit a.img_link:hover img{
    opacity: 0.7;
}

#wp-edit table{
    width: 100%;
    margin: 20px 0;
    border: 1px solid #ddd;
}
#wp-edit table td{
    padding: 10px;
    border: 1px solid #ddd;
}
#wp-edit table th{
    padding: 10px;
    font-weight: bold;
    background: #fffaeb;
    border: 1px solid #ddd;
}

#wp-edit div.table_2c > div{
	flex: 1
}
#wp-edit div.table_2c > div table{
	height: 100%
}
#wp-edit div.table_2c > div table th{
    height: 63px;
}

/* イベント */
#wp-edit p.close em{
    display: block;
    padding: 2px 10px;
    border-radius: 20px;
	background: rgba(0, 0,0,0.05);
    font-size: 120%;
    text-align: center;
}
#wp-edit p.today em{
    display: table;
    padding: 2px 20px;
    min-width: 150px;
    border-radius: 20px;
	background: rgba(255, 255, 0,1);
	color: #f45d88;
    font-size: 120%;
    text-align: center;
	font-weight: bold;
	animation: ball 0.6s alternate infinite;
  -webkit-animation: ball 0.6s alternate infinite;
  -moz-animation: ball 0.6s alternate infinite;
}
@keyframes ball{
	0%   { transform:translate(0%, 0%) rotateX(25deg); }
	100% { transform:translate(0%, -20px); }
  }
  @-webkit-keyframes ball{
	0%   { -webkit-transform:translate(0%, 0%) rotateX(25deg); }
	100% { -webkit-transform:translate(0%, -20px); }
  }
  
  @-moz-keyframes ball{
	0%   { -moz-transform:translate(0%, 0%) rotateX(25deg); }
	100% { -moz-transform:translate(0%, -20px); }
  }


/*-----------------------------
ギャラリー
------------------------------*/
.gallery { /** ギャラリーを囲むボックス **/
	width: 100%;
	margin: 20px auto !important;
    overflow: hidden;
}
.gallery img{
	border: none !important;
}
td .gallery{
	margin: 0 auto !important;
}

.gallery-item { /** 画像共通のスタイル **/
	margin-bottom: 10px;
	border: none !important;
	padding: 0 !important;
}
.gallery-item dt{
	padding-left: 0 !important;
	border-left: 0 !important;
}
.gallery-icon { /** 画像を囲む dt のスタイル **/
    text-align: center;
}

.gallery-icon img {
	width: 100%;
	height: auto;
	aspect-ratio: auto;
}


.wp-caption-text{/** ギャラリー外 **/
	display: block;
    color: #222;
    font-size: 80%;
    margin: 10px auto;
    text-align: center;
}
.wp-caption{
	width: 100% !important;
}

.gallery-icon{
	margin-bottom:5px !important;
}
.gallery-caption { /** キャプション **/
	display: block;
    color: #222;
    font-size: 80%;
    text-align: center;
    margin-left:auto !important;
}

.gallery-columns-1 .gallery-item { /** カラムなし **/
    width: 100%;
}
.gallery{
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}
.gallery-columns-2 .gallery-item { /** 2カラム **/
	width: 49% !important;
}
.gallery-columns-3 .gallery-item { /** 3カラム **/
    width: 31% !important;
}
.gallery-columns-4 .gallery-item { /** 4カラム **/
    width: 24% !important;
}
.gallery-columns-5 .gallery-item { /** 5カラム **/
    width: 19% !important;
}
.gallery-columns-6 .gallery-item{
	width: 15.66666% !important;
}


.gallery::after {
    content: "";
    display: block;
    height: 0;
}
.gallery.gallery-columns-2::after{
	width: 49%;
}
.gallery.gallery-columns-3::after{
	width: 31.33333%;
}
.gallery.gallery-columns-4::after{
	width: 24%;
}
.gallery.gallery-columns-5::after{
	width: 19%;
}
.gallery.gallery-columns-6::after{
	width: 15.66666%;
}



@media screen and (min-width: 0px) and (max-width: 600px) {/* sm */
    #wp-edit .fl_box > figure{
        width: 100%;
        margin-right: 0;
        margin-bottom: 30px;
    }
    #wp-edit p img{
        width: 100%;
        height: auto;
    }

	.gallery-columns-2 .gallery-item,.gallery-columns-3 .gallery-item, .gallery-columns-4 .gallery-item {
		width: 48%;
		margin: 0 1%;
	}
	.gallery-columns-5 .gallery-item {
		width: 31.33333%;
		margin: 0 1%;
	}
}