@charset "UTF-8";
/**/
#bread_clumb{ margin-bottom:20px; padding:8px; background-color:#EFEFEF; border-radius: 6px;}
#bread_clumb ul{ display:flex; align-content: center;}
#bread_clumb ul li{ margin-right:15px;}
#bread_clumb ul li:after{ content:"\f105";font-family: Font Awesome\ 5 Free; display:inline-block; padding-left:15px;}
#bread_clumb ul li:last-child:after{ display:none;}
#bread_clumb a{ color: #333;}

/**/
#contents_title{ border-bottom:1px solid #ccc; background-color:#EFF5FC;}
#contents_title .inner{ padding: 30px 0; text-align: left;}
#contents_title .inner h2{
	color:#22538E;
	font-weight:600;
}
#contents{ text-align: left; padding: 20px 0 80px;}

/* Main Colum */
#contents  #main_colum{ width: 930px; float:left;}
#contents  #main_colum.sigle{ width:100%; float:none ;}
@media (max-width:1079px){
#contents  #main_colum{ width:80%; float:left;}
}
@media (max-width:767px){
#contents  #main_colum{ width:100%; float:lnone;}
}

/* Side Colum */
#contents #side_colum{ width: 300px; float: right;}
@media (max-width:1079px){
#contents #side_colum{ width:18%; float:right;}
}

#contents  #side_colum .submenu,
#contents  #side_colum #side_calendar{ margin-bottom: 30px; border:2px solid #3178CD; border-radius: 8px;}
#contents  #side_colum h3{ font-weight:normal; padding: 10px 0; background: #3178CD; text-align: center; color:#fff;
	-webkit-text-shadow: 1px 1px 1px #000;
	-moz-text-shadow: 1px 1px 1px #000;
	-o-text-shadow: 1px 1px 1px #000;
	text-shadow: 1px 1px 1px #000;
}
#contents  #side_colum .submenu ul{}
#contents  #side_colum .submenu > ul > li{ border-bottom: 1px solid #ddd;}
#contents  #side_colum .submenu > ul > li:last-child{ border-bottom:none;}
#contents  #side_colum .submenu > ul > li > a,
#contents  #side_colum .submenu > ul > li > span{ padding: 15px; display: block; color: #000;font-size: 1.4rem;}
#contents  #side_colum .submenu ul li > a.active{ background:#739fcb; color: #fff !important;}
#contents  #side_colum .submenu ul li > a:hover{ color:#3178CD;}
#contents  #side_colum .submenu ul li ul{ padding:0 15px 15px;}
#contents  #side_colum .submenu ul li ul li{ display:inline-block; width:25%;}
#contents  #side_colum .submenu ul li ul li:after{ display:inline-block; content:"/"; vertical-align:middle; padding-left:10px;}
#contents  #side_colum .submenu ul li ul li > a{ display:inline-block; vertical-align:middle;}

#contents  #side_colum #side_calendar p{
	padding:0 10px 10px; font-size:1.4rem;
	font-weight:bold;
}
#contents  #side_colum #side_calendar p span.yasumi{ color:#3178CD;}
#contents  #side_colum #side_calendar p span.mizu{ color:#009900;}
@media (max-width:767px){
    #contents  #side_colum{ width:100%; float:lnone;}
}


#calendar_navi{ width:100%;}
#calendar_navi .month_year{ text-align:center;}
#calendar_navi td{ padding:8px 0;text-align:center;}
#calendar_navi td span{ cursor:pointer;}
#cal { margin-bottom:10px;}
#cal .headline td{ background:#fff4de; font-weight:bold;}

#cal td{ padding:0.4rem 0; text-align:center; background:#fff; color:#000;}
#cal td.yasumi{ background:#3178CD; color:#fff;}
#cal td.Sun{ color:#FF0000; font-weight:bold;}
#cal td.Sat{ color:#0066CC; font-weight:bold;}
#cal td.Today {
    color: #000;
    background-color: #FFCC99;
}
#cal td.mizu {
    color: #fff;
    background: #009900;
}
/* access */
#gmap{ width: 100%; border: none;}

/* Schedule Calendar*/
.sc_navi{ width:1062px;}
@media (max-width:767px){
    .calnavi a span{ display: none;}
}
#month_schedule > div strong{ color:#ff0000;}
#month_schedule > div strong.thismonth{
    color:#00238C;
}
#month_schedule th,
#month_schedule td{ text-align:center;}


#entrylist{ padding-top:50px;}
#entrylist ul{ margin:0 !important;}
#entrylist ul > li{ border-bottom:1px solid #ddd; list-style-type:none !important; margin-bottom:0 !important;}
#entrylist ul > li a{
	display:table;
	padding:15px 10px;
	color:#333;
	width:100%;
	position:relative;
}
#entrylist ul > li a:hover{ background:#eee;}
#entrylist ul > li a span{ display:table-cell;}
#entrylist ul > li a span.date{ width:20%;}
#entrylist ul > li a span.tit{ width:80%; font-weight:bold;}
#entrylist ul > li a:after{
	content:"\f0da";
    font-family: Font Awesome\ 5 Free;
	position: absolute;
	right: 5px;
    color: #333;
}

.event_list{
	align-items: flex-start !important;
    flex-wrap: wrap;
	border-bottom:1px dotted #ccc;
}
.event_list:last-child{ border-bottom:none;}
.event_list > img{flex-basis: 120px;}
.event_list > div{flex-basis: 690px;}
.event_list ul > li p { display:block !important; position:relative;}
.fc-day-grid-event .fc-content {
    white-space:pre-line !important;
    overflow:inherit !important;
}
ol.alpha li {list-style-type: upper-alpha!important;}
table.table.sptable th,table.table.sptable td { width: 50%; display: table-cell!important; }
table th.kyotobus { background: #990000 !important; color: #fff!important; }
table th.kyotoshibus { background: #99CC00 !important; }
table th.subway { background: #FF9900 !important; }

.newslist{ margin:0 !important; margin-left:0; padding:0;}
.newslist > li{ margin:0; list-style:none !important; border-bottom:1px solid #ddd; margin-bottom:0!important;}
.newslist > li > a{ padding:8px; display:block;}
.newslist > li > a:hover{ background:#eee;}
.newslist > li > a > ul{ display:table; margin:0 !important; }
.newslist > li > a > ul > li{ display:table-cell; vertical-align:middle; width:100%; margin:0;}
.newslist > li > a > ul > li.thumb{ width:14.4444%; line-height:100%;}
.newslist > li > a > ul > li.title{ width:80%; font-weight:bolder; color:#000;}

.newslist > li > a > ul > li.title .date{line-height:130%;}
.newslist > li > a > ul > li.title .date#cat{ border-top:1px solid #ddd; padding-top:8px;}
.newslist > li > a > ul > li.title .date ul{ margin:0 !important; padding:0;}
.newslist > li > a > ul > li.title .date li{ list-style:none; display:inline-block; margin-right:8px;}
.newslist > li > a > ul > li.title .date li:after{ display:inline-block; content:"／"; padding-left:8px;}
.newslist > li > a > ul > li.title .tit{ display:block; margin-bottom:8px;}
.newslist > li > a > ul > li.title .desc{ padding-bottom:8px; margin-bottom:8px; border-bottom:1px solid #ddd; font-size:80%;}
@media (max-width:767px){
	.newslist > li > a > ul > li.thumb{ width:25%; line-height:100%;}
	.newslist > li > a > ul > li.thumb img{ width:100%;}
	.newslist > li > a > ul > li.title{ width:60%; padding-left:5%;}
	.newslist > li > a > ul > li.title .date span{ font-size:80%; display:block;}
}

#cat.newslist > li{
	border-bottom:1px solid #ccc;
	padding-bottom:12px;
	margin-bottom:12px;
}
.event_state li{
	padding-bottom:8px;
	margin-bottom:5px;
	border-bottom:1px solid #ccc;
}
.event_state li:last-child{
	padding-bottom:0;
	margin-bottom:0;
	border-bottom:none;
}

#btn_calendar{
	display:block;
	width:100%;
	color:#fff;
	border:2px solid #fff;
	box-shadow:0 0 6px #ccc;
    background: #4489d9;
    background: -webkit-linear-gradient(top, #4489d9 8%, #246cc4 100%);
    background: linear-gradient(to bottom, #4489d9 8%, #246cc4 100%);
}
#btn_calendar::before{
	display:block;
    content: "\f073";
	font-size:5.0rem;
    font-family: Font Awesome\ 5 Free;
}

#room_form{}
#room_form dt{
	display:block;
	width:100%;
}
#room_form dd {
	display:block;
    padding-left:0;
}
@media (max-width:767px){
	table.pcw074p { width: 100%!important; }
}
.col2 figure a{ outline:none;}
.col2 figure img{ width:100%;}

form[name="schedule"] #btn_area {
    position: fixed;
    top: 150px;
    right: 50px;
    justify-content: center;
    flex-wrap: wrap;
    text-align: center;
		width:250px;
}
form[name="schedule"] #btn_area input{
	width:100%;
	display:block;
	margin:10px 0;
}


/* training*/
.training_list ul{
	display: flex !important;
	margin: 0 !important;
	flex-wrap: wrap;
	justify-content: space-between;
}
.training_list ul li{
	width: 48%;
	margin: 0 0 40px !important;
	list-style: none !important;
}
.training_list ul li .youtube{
	position: relative;
	width: 100%;
	padding-top: 56.25%;
	margin-bottom: 10px;
}
.training_list ul li .youtube iframe{
	position: absolute;
	top: 0;
	right: 0;
	width: 100%;
	height: 100%;
}
.training_list ul li p{
	font-size: 1.4rem;
}
.training_list ul li .badge {
    font-size: 1.2rem;
    display: inline-block;
    padding: 0px 10px;
    margin: 0 10px;
    background: #ff0000;
    color: #fff;
    border-radius: 20px;
    vertical-align: unset;
    height: 20px;
    line-height: 20px;
}
@media (max-width:767px){
	.training_list ul{
		display: block;
		width: 90%;
		margin: 0 auto !important;
	}
	.training_list ul li{
		width: 100%;
	}
}
/* message */
.message ul{
	padding: 20px 10px;
	margin: 0 !important;
}
.message ul li{
	list-style-type: none !important;
	margin: 0 0 10px;
}
.message ul li::before{
	content: "※";
}
.fc-ltr .fc-basic-view .fc-day-top .fc-day-number {
    float: left !important;
}
