@charset "UTF-8";
/* CSS Document */
body{
	font-family:"ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	color:#333;
	font-size:16px;
}
body.big{
	font-size:1.2em;
}

b,strong{font-weight:bold;}
big{font-size:1.3em;}
small{font-size: 0.8em;}
i{font-style:italic;}

a{
	color:#3A728C;
}
a:hover{
	color:#723052;
}

.container{
	width:960px;
	margin:0 auto;
}

.l_box{
	float:left;
}
.r_box{
	float:right;
}
.al_center{
	text-align: center;
}

.notfound{
	text-align: center;
	margin-top: 100px;
}
.unable{
	visibility: hidden;
}

/*---------------------------
	header_setting
----------------------------*/
header .container.top{
	margin-bottom:14px;
}
header .logo{
	padding:30px 0 0 10px;
	float:left;
	font-size:0px;
}

header .fontsize,
header .head_search,
header .contact{
	float:right;
}

header .fontsize{
	margin-top:19px;
	padding-right:12px;
}
header .fontsize p{
	font-size:10px;
	line-height:150%;
	display:inline-block;
}
header .fontsize p:last-of-type{
	font-size:13px;
	border:#732852 solid 1px;
	background:#732852;
	vertical-align:top;
}
header .fontsize p:last-of-type a{
	color:#fff;
	text-decoration:none;
	padding:4px 10px 2px;
	display:inline-block;
}
header .fontsize p:last-of-type a.active{
	background:#fff;
	color:#777;
}

header .head_search{
	border:#ccc solid 1px;
	border-radius:3px;
	margin-top:19px;
}
header .head_search input{
	padding:5px;
	font-size:11px;
	border:none;
	width:99px;
}
header .head_search a img{
	vertical-align:middle;
}

header .contact{
	padding-left:12px;
	font-size: 0.8125em;
	line-height: 175%;
}

header ul.list{
	clear:both;
	text-align:right;
	font-size:0.8125em;
	line-height:120%;
	padding-top:13px;
}
header ul.list li{
	display:inline-block;
	padding-left:18px;
	background:url(../img/icon_list01.gif) no-repeat 0% 50%;
	margin-left:18px;
}
header ul.list li a{
	color:#333;
	text-decoration:none;
}
header ul.list li a:hover{
	text-decoration:underline;
}

#mobile_header{
	display: none;
}

/*---------------------------
	nav_setting
----------------------------*/
nav{
	width:100%;
	background:#333;
	z-index:9999;
	position: relative;
}
nav .container{
	position: relative;
}
nav ul li{
	float:left;
	font-size:0px;
	position: relative;
}
nav ul li ul{
    position: absolute;
    left:0;
    top:50px;
    display: none;
    z-index:9999;
}
nav ul li ul li{
    background: #333;
    border-top: #444 solid 1px;
    font-size: 12px;
    padding: 0;
    line-height: 150%;
}
nav ul li ul li a{
    width: 205px;
    color:#fff;
    display: block;
    padding: 15px 20px;
    text-align: left;
    box-sizing: border-box;
    font-size: 13px;
    text-decoration: none;
}
nav ul li ul li a:hover{
	background: #712C52;
    color:#fff;
}
nav ul li ul li a:after{
	display: none !important;
}

/*---------------------------
	contents_setting
----------------------------*/
#contents{
	margin-bottom:80px;
}

#contents #main{
	width:700px;
	float:left;
}

#contents #side{
	width:230px;
	float:right;
}

/*---------------------------
	side_common_setting
----------------------------*/
#side a img:hover{
	opacity:0.7;
}

/*today_event*/
#side #today_event{
	border:#AB8098 solid 1px;
	margin-bottom:30px;
}
#side #today_event .inner{
	padding:14px 18px;
}
#side #today_event .inner h1{
	font-size:0.937em;
	color:#702C52;
	line-height:120%;
	text-align:center;
	padding-bottom:8px;
	border-bottom:#702E52 dotted 1px;
	margin-bottom:14px;
}
#side #today_event .inner .time{
	color:#999;
	font-family:Arial, Helvetica, sans-serif;
	font-size:0.8125em;
	margin-bottom:10px;
	line-height:100%;
}
#side #today_event .inner p{
	font-size:0.8125em;
	line-height:175%;
}
#side #today_event .btn{
	font-size:0;
}

/*calender*/
#side #calender{
	margin-bottom:27px;
}
#side #calender h1{
	margin-bottom:18px;
	text-align: center;
}
#side #calender h1 a{
	text-align: center;
	display: block;
	background: #333;
}
#side #calender h1 a:hover{
	opacity: 0.8;
}
#side #calender h1 a img:hover{
	opacity: 1;
}
#side #calender #calender_head{
	width:100%;
	position:relative;
	padding-bottom:8px;
	border-bottom:#333 dotted 1px;
}
#side #calender #calender_head div{
	width:10%;
}
#side #calender #calender_head p{
	font-size:14px;
	width:80%;
	float:left;
	text-align:center;
}
#side #calender #calender_head .r_box{
	text-align:right;
}
#side #calender #calender_body{
	font-size:12px;
	margin-left:-6px;
}
#side #calender #calender_body{
	border-spacing:13px;
	border-collapse:separate;
}
#side #calender #calender_body th,
#side #calender #calender_body td{
	padding:3px 2px;
	text-align:center;
}
#side #calender #calender_body tr th:nth-of-type(7),
#side #calender #calender_body tr td:nth-of-type(7),
#side #calender #calender_body tr td:nth-of-type(7) a,
#side #calender #calender_body tr td.holiday,
#side #calender #calender_body tr td.holiday a{
	color:#E07D5E;
}
#side #calender #calender_body tr th:nth-of-type(6),
#side #calender #calender_body tr td:nth-of-type(6),
#side #calender #calender_body tr td:nth-of-type(6) a{
	color:#5170A0;
}
#side #calender #calender_body td a{
	color:#333;
}
#side #calender #calender_body td.event{
	background:#E5EAF1;
}
#side #calender #calender_body td.today{
	border:#63A9C1 solid 1px;
}
#side #calender .btn{
	text-align:right;
}

/*btns*/
#side #btns{
	margin-bottom:15px;
}
#side #btns ul li{
	margin-bottom:10px;
	font-size:0px;
}
#side #btns ul li:nth-child(2n+1){
	float:left;
}
#side #btns ul li:nth-child(2n){
	float:right;
}
#side #btns ul li a img:hover{
	opacity:1;
}

/*banners*/
#side #banners ul li{
	margin-bottom:10px;
	font-size:0px;
}

.phone_common_bnr{
	display: none;
}


/*---------------------------
	footer_setting
----------------------------*/
footer{
	width:100%;
	background:#eee;
	padding:23px 0 22px;
}
footer .container{
	position:relative;
}
footer .mobile_list{
	display: none;
}
footer ul{
	font-size:0.8125em;
	line-height:120%;
}
footer ul li{
	display:inline-block;
	border-right:#bbb solid 1px;
	padding:0 13px;
}
footer ul li a{
	text-decoration:none;
	color:#333;
}
footer ul li a:hover{
	text-decoration:underline;
	color:#712C52;

}
footer ul li:first-child{
	padding-left:0;
}
footer ul li:last-child{
	border:none;
}

footer .top{
	font-size: 0.8125em;
	line-height: 175%;
	margin-bottom: 20px;
}
footer .copy{
	float:right;
	font-family:Arial, Helvetica, sans-serif;
	font-size:10px;
	color:#878787;
}

footer .to_top{
	position:absolute;
	top:-35px;
	right:0;
}

/*-----------------------
	pager_setting
-------------------------*/
.pager{
}
.pager li{
	display:inline-block;
	padding:10px 12px;
	font-size:12px;
	background:#EEE;
	margin-right:5px;
	margin-bottom: 10px;
}
.pager li a{
	color:#333;
	text-decoration:none;
}
.pager li.current{
	color:#fff;
	background:#712C52;
}

/*------------------------
	common_title_styles
--------------------------*/
.com_ttl01{
	font-size:1em;
	color:#722652;
	font-weight:bold;
	background:#eee;
	padding:5px 0 4px 15px;
	line-height:175%;
	position:relative;
	margin-bottom:30px;
}
.com_ttl01:before{
	content:" ";
	display:block;
	border-left:#722652 solid 5px;
	width:1px;
	height:15px;
	position:absolute;
	left:0px;
	top:11px;
}

.com_ttl02{
	margin-bottom: 16px;
	margin-top: 30px;
	font-size: 1em;
	padding-left: 7px;
	border-left: #B8B085 solid 3px;
	color:#702C52;
	font-weight: bold;
}

/*------------------------
	common_styles
--------------------------*/
.com_list{
	border-top: #bbb dotted 1px;
	padding:10px 0;
}
.com_list:last-of-type{
	border-bottom: #bbb dotted 1px;
}
.com_list p:first-of-type{
	float:left;
	padding:7px 12px 7px 0;
	font-size:0.8125em;
	font-weight:bold;
}
.com_list p:last-of-type{
	margin-left:90px;
	font-size:0.8125em;
	line-height:175%;
	padding:7px 0 0;
}

/*----------------------------------
　　スマホサイドメニュー
------------------------------------*/
#sideMenu {
	visibility: hidden;
	position:fixed;
	top:73px;
	padding-bottom:60px;
	height:100%;
	z-index:9999;
	width:200px;
	background:#F3EBEF;
	overflow:scroll;
	-webkit-overflow-scrolling:touch;
	-webkit-box-sizing:border-box;
	-moz-box-sizing:border-box;
	box-sizing:border-box;
}
#sideMenu ul,#sideMenu li {
	margin:0;
	padding:0;
}
#sideMenu li {
	border-top:1px solid #AB8098;
	list-style:none;
	line-height:1.2em;
	font-size:12px;
}
#sideMenu li.next {
	background: url(../img/side_cal_next.png) no-repeat 90% 50%;
}
#sideMenu li a {
	padding:15px;
	color:#333;
	text-decoration:none;
	display:block;
}

#mobile_search{
	display: none;
	position: fixed;
	top:73px;
	right:0px;
	padding: 15px;
	width:50%;
	box-sizing:border-box;
	background:#FFF;
	z-index: 9998;
}
#mobile_search form{
	border:#ccc solid 1px;
	border-radius:3px;
	text-align: right;
	position: relative;
}
#mobile_search form input{
	padding:6px 6px 7px 6px;
	font-size:11px;
	border:none;
	width:100%;
}
#mobile_search form a{
	position: absolute;
	top:-1px;
	right: 0;
	border:#ccc solid 1px;
	border-left:none;
	border-radius:3px;
}
#mobile_search form a img{
	vertical-align:middle;
}



@media screen and (max-width: 960px){
	.container{
		width: 94%;
		margin-bottom: 0 3%;
	}

	header{
		display: none;
	}

	nav{
		display: none;
	}

	#contents{
		margin-bottom: 40px;
	}

	#contents #main,
	#contents #side{
		width:100%;
		float:none;
	}

	#side #today_event{
		display:none;
	}

	img{
		max-width: 100% !important;
		height: auto;
	}

	/*-----------------------------
		mobile_header_setting
	------------------------------*/
	#mobile_header{
		display: block;
		position: fixed;
		top:0;
		left:0;
		width: 100%;
		background: #fff;
		padding-top: 23px;
		padding-bottom: 21px;
		z-index: 9999;
	}
	#mobile_header .mobile_search_btn{
		margin-right: 10px;
	}

	#mobile_search{
		display: block;
		visibility: hidden;
	}

	#side #calender{
		width: 230px;
		float: left;
		padding-right: 15px;
	}

	#side #btns{
		width: 230px;
		float: left;
		padding-right: 15px;
	}

	footer{
		padding-top:30px;
	}

	footer ul.mobile_list{
		display: block;
		clear:both;
		font-size:0.8125em;
		line-height:120%;
		margin-bottom: 13px;
	}
	footer ul.mobile_list li{
		display:inline-block;
		padding-left:18px;
		background:url(../img/icon_list01.gif) no-repeat 0% 50%;
		margin-right:18px;
		border: none;
	}
	footer ul.mobile_list li a{
		color:#333;
		text-decoration:none;
	}
	footer ul.mobile_list li a:hover{
		text-decoration:underline;
	}

	footer .l_box{
		float: none;
		margin-bottom: 30px;
	}
	footer .copy{
		float: none;
		text-align: right;
	}

	footer .to_top{
		top:-42px;
	}

}

@media screen and (max-width: 667px){
	#contents #side{
		width: 490px;
		margin: 0 auto;
	}
	#side #calender{
		padding-right: 30px;
	}
	#side #btns{
		padding-right: 0px;
	}

	#side #banners ul li:nth-child(3){
		display: none;
	}

}

@media screen and (max-width: 414px){
	#mobile_header{
		padding: 15px 0;
	}
	#mobile_header .l_box{
		width: 72%;
	}
	#mobile_header .l_box img{
		width: 100%;
	}
	#mobile_search{
		width: 100%;
		top:59px;
	}

	#contents #side {
    	width: 100%;
	}
	#side #calender{
		width: 100%;
		padding-right: 0;
		float: none;
	}
	#side #calender #calender_body {
	    border-spacing: 20px;
	    border-collapse: separate;
	    width: 310px;
	    margin:0 auto;
	}
	#side #btns {
	    width: 100%;
	    float: none;
	    padding-right: 0;
	}
	#side #btns ul li{
	    float: left !important;
	    width: 23.4%;
	    padding-right: 2%;
	}
	#side #btns ul li:last-child{
		padding-right: 0;
	}
	#side #btns ul li img{
		width: 100%;
	}
	#side #banners{
		display: none;
	}

	.phone_common_bnr{
		display: block;
	}
	.phone_common_bnr li{
		float: left;
		padding-right: 2%;
		width: 32%;
	}
	.phone_common_bnr li:last-child{
		padding-right: 0;
	}
	.phone_common_bnr li img{
		width: 100%;
	}

	#sideMenu {
		top:59px;
	}

	footer .top img{
		display: block;
		margin-bottom: 10px;
	}
	footer ul.mobile_list li{
		margin-bottom: 10px;
	}
	footer ul.l_box li{
		margin-bottom: 10px;
	}
}

.youtube_wrapper{
	clear:both;
	text-align: center;
	margin-bottom: 20px;
}
@media screen and (max-width: 480px){
	.youtube_wrapper{
		position: relative;
		width: 100%;
		height: 0;
		padding-bottom: 56.85%;
	}

	.youtube_wrapper iframe{
		position: absolute;
		left: 0;
		top: 0;
		width: 100%;
		height: 100%;
	}
}
