@charset "utf-8";
/* CSS Document */

#news .inner h2.hd > dl dd {
	font-size: 18px;
	color: #C7014C;
}

#news .inner{
	padding: 43px 0 36px;
}

/*-----------------------------------------------------------*/

/*お知らせ一覧*/
#news.archive .postlists{
	margin: 42px auto 0;
	display: flex;
	flex-direction: column;
	gap: 20px 0;
}
#news.archive .postlists > a.postwrap{
	width: calc( 86.11% - 30px );/*620*/
	margin: 0 auto;
	display: flex;
	align-items: center;
	padding: 13px 15px;
	background-color: #fff;
	-webkit-border-radius: 13px;
	-moz-border-radius: 13px;
	border-radius: 13px;
}
#news.archive .postlists > a.postwrap .date{
	width: 80px;
	font-size: 12px;
	color: #0EA164;
	letter-spacing: 0.025em;
}
#news.archive .postlists > a.postwrap .title{
	width: calc( 100% - 80px );
	font-size: 13px;
	font-weight: 500;
}

/*ページャー*/
section .wp-pagenavi{
	width: 86.11%;/*620*/
	height: 40px;
    margin: 30px auto 0;
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0 20px;
}
section .wp-pagenavi a.previouspostslink, section .wp-pagenavi a.nextpostslink{
    position: absolute;
    top: 0;
	width: 40px;
	height: 40px;
	border: 2px solid #fff;
	box-sizing: border-box;
	background-color: #C7014C;
	-webkit-border-radius: 50%;
	-moz-border-radius: 50%;
	border-radius: 50%;
	font-size: 0;
}
section .wp-pagenavi a.previouspostslink::before, section .wp-pagenavi a.nextpostslink::before{
    content: "";
    display: block;
    background: url(../image/common/link_icon01.svg) 0 0 / contain no-repeat;
	width: 13px;
	height: 10px;
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	margin: auto;
}
section .wp-pagenavi a.previouspostslink{
    left: 0;
}
section .wp-pagenavi a.previouspostslink::before{
    transform: scale(-1, 1);
}
section .wp-pagenavi a.nextpostslink{
    right: 0;
}
section .wp-pagenavi a.nextpostslink::before{
}

section .wp-pagenavi a.page, section .wp-pagenavi span.current{
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 18px;
    color: #222;
	border: 0;
}
section .wp-pagenavi span.current{
    color: #C7014C;
}

/*-----------------------------------------------------------*/

/*記事詳細ページ*/
#news.single #postwrap{
	width: calc( 86.11% - 60px );/*620*/
	margin: 40px auto 0;
	padding: 30px;
	background-color: #fff;
	-webkit-border-radius: 25px;
	-moz-border-radius: 25px;
	border-radius: 25px;
}

#news.single #postwrap .info{
	margin: 0 auto;
	border-bottom: 2px dotted #C7014C;
	padding-bottom: 15px;
}
#news.single #postwrap .info .date{
	margin: 0 auto;
	font-size: 13px;
	color: #0EA164;
}
#news.single #postwrap .info h3.hd{
	margin: 15px auto 0;
	font-size: 17px;
}

#news.single #postwrap .editer{
	margin: 35px auto 0;
}

#news.single #postwrap .editer > h1{
	font-family: "M PLUS Rounded 1c", serif;
	font-weight: 700;
	transform: rotate(0.05deg);
	font-size: 15px;
	color: #C7014C;
	padding-bottom: 15px;
	border-bottom: 2px dotted #C7014C;
}
#news.single #postwrap .editer > h2{
	font-family: "M PLUS Rounded 1c", serif;
	font-weight: 700;
	transform: rotate(0.05deg);
	color: #333;
	font-family: "M PLUS Rounded 1c", serif;
	font-weight: 700;
	transform: rotate(0.05deg);
	padding-left: 25px;
	padding-bottom: 10px;
	border-bottom: 1px solid #000;
	position: relative;
}
#news.single #postwrap .editer > h2::before{
	content: '';
	display: block;
	width: 17px;
	height: 17px;
	background-color: #EB7F00;
	-webkit-border-radius: 50%;
	-moz-border-radius: 50%;
	border-radius: 50%;
	position: absolute;
	top: 8px;
	left: 2px;
}
#news.single #postwrap .editer > h3{
	font-family: "M PLUS Rounded 1c", serif;
	font-weight: 700;
	transform: rotate(0.05deg);
	color: #333;
	font-family: "M PLUS Rounded 1c", serif;
	font-weight: 500;
	transform: rotate(0.05deg);
	padding-left: 25px;
	position: relative;
}
#news.single #postwrap .editer > h3::before{
	content: '';
	display: block;
	width: 10px;
	height: 10px;
	background-color: #0EA164;
	position: absolute;
	top: 8px;
	left: 0;
}
#news.single #postwrap .editer > p{
	font-weight: 400;
	line-height: 188%;
	text-align: justify;
}
#news.single #postwrap .editer > ul{
	display: flex;
	flex-direction: column;
	gap: 10px 0;
}
#news.single #postwrap .editer > ul li{
	font-weight: 400;
	padding-left: 25px;
	position: relative;
}
#news.single #postwrap .editer > ul li::before{
	content: '';
	display: block;
	width: 10px;
	height: 10px;
	background-color: #0EA164;
	-webkit-border-radius: 50%;
	-moz-border-radius: 50%;
	border-radius: 50%;
	position: absolute;
	top: 5px;
	left: 0px;
}

/*ページャー*/
section .navigation{
    width: 86.11%;
    margin: 30px auto 0;
    display: flex;
    justify-content: center;
    align-items: center;
    position: relative;
}

section .navigation .alignleft, section .navigation .alignright{
    position: absolute;
	top: 33px;
}
section .navigation .alignleft{
    left: 0;
}
section .navigation .alignright{
    right: 0;
}
section .navigation .alignleft a, section .navigation .alignright a{
	font-family: "M PLUS Rounded 1c", serif;
	font-weight: 700;
	transform: rotate(0.05deg);
    font-size: 13px;
	position: relative;
	padding-top: 55px;
}
section .navigation .alignleft a::before, section .navigation .alignright a::before{
	content: '';
	display: block;
	width: 30px;
	height: 30px;
	border: 2px solid #fff;
	box-sizing: border-box;
	background-color: #C7014C;
	-webkit-border-radius: 50%;
	-moz-border-radius: 50%;
	border-radius: 50%;
	position: absolute;
	top: 0;
	bottom: 0;
	margin: auto;
}
section .navigation .alignleft a::before{
	left: 0;
}
section .navigation .alignright a::before{
	right: 0;
}
section .navigation .alignleft a::after, section .navigation .alignright a::after{
    content: "";
    display: block;
    background: url(../image/common/link_icon01.svg) 0 0 / contain no-repeat;
	width: 10px;
	height: 8px;
	position: absolute;
	top: 0;
	bottom: 0;
	margin: auto;
}
section .navigation .alignleft a::after{
	left: 10px;
    transform: scale(-1, 1);
}
section .navigation .alignright a::after{
	right: 10px;
}

section .navigation .aligncenter{
    width: 155px;
    height: 50px;
}
section .navigation .aligncenter a{
	padding-left: 0;
	justify-content: center;
}
section .navigation .aligncenter a:hover{
}

/*-----------------------------------------------------------*/
/*プログラム詳細*/

section#program{
}
section#program .inner{
	width: 90.28% !important;/*650*/
	margin: 40px auto 55px;
}

section#program .inner h2.hd > dl::before {
    top: 65px;
}
section#program .inner h2.hd > dl dd {
    margin-top: 35px;
	color: #c7014c;
}

section#program .posttitle{
	margin: 50px auto 0;
	border: 2px solid #c7014c;
	-webkit-border-radius: 20px;
	-moz-border-radius: 20px;
	border-radius: 20px;
	background-color: #fff;
	position: relative;
	padding: 35px 0 20px;
}
section#program .posttitle .number{
	font-size: 35px;
	color: #c7014c;
	text-align: center;
	line-height: 100%;
	position: absolute;
	top: -15px;
	left: 50%;
	transform: translateX(-50%);
	-webkit-transform: translateX(-50%);
	-ms-transform: translateX(-50%);
	text-shadow: 2px 1px 0px rgba(0, 0, 0, 0.5);
}
section#program .posttitle > dl{
	width: calc( 100% - 50px );
	margin: 0 auto;
	text-align: center;
}
section#program .posttitle > dl > dt{
	font-size: 16px;
	color: #c7014c;
	border-bottom: 2px dotted #c7014c;
	padding-bottom: 15px;
}
section#program .posttitle > dl > dd{
	font-size: 13px;
	padding-top: 15px;
}

section#program .mainimage{
	width: 100%;
	margin: 15px auto 0;
}
section#program .mainimage img{
	width: 100%;
	height: auto;
	-webkit-border-radius: 13px;
	-moz-border-radius: 13px;
	border-radius: 13px;	
}

section#program .info{
	margin: 15px auto 0;
	padding: 30px 25px;
	border: 2px solid #000;
	box-sizing: border-box;
	background-color: #fff;
	-webkit-border-radius: 13px;
	-moz-border-radius: 13px;
	border-radius: 13px;
}
section#program .info h3.hd{
	width: 100%;
	height: 35px;
	background-color: #c7014c;
	-webkit-border-radius: 4px;
	-moz-border-radius: 4px;
	border-radius: 4px;
	display: flex;
	justify-content: center;
	align-items: center;
	font-size: 15px;
	color: #fff;
	letter-spacing: 0.25em;
}
section#program .info h3.hd:not(:first-of-type){
	margin-top: 55px;
}

section#program .info > .txts{
	margin: 20px auto 0;
	text-align: justify;
}

section#program .info > .table{
	margin: 20px auto 0;
	display: flex;
	flex-direction: column;
	gap: 10px 0;
}
section#program .info > .table > dl{
	display: flex;
	flex-direction: column;
	gap: 5px 0;
}
section#program .info > .table > dl > dt{
	background-color: #0da3f7;
	padding: 7px 0;
	text-align: center;
	color: #fff;
	letter-spacing: 0.075em;
}
section#program .info > .table > dl > dd{
	width: calc( 100% - 24px );
	background-color: #daf0f5;
	padding: 7px 12px;
}

section#program .dates{
	margin: 20px auto 0;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 14px;
}
section#program .dates > dl{
	width: calc( 50% - 7px );
	text-align: center;
}
section#program .dates > dl dt{
	display: flex;
	justify-content: center;
	gap: 0 10px;
}
section#program .dates > dl dt p.day{
	font-weight: 700;
}
section#program .dates > dl dt p.youbi{
	display: flex;
	align-items: center;
}
section#program .dates > dl dt p.youbi span{
	display: flex;
	justify-content: center;
	align-items: center;
	font-size: 11px;
	color: #fff;
	min-width: 20px;
	height: 18px;
	padding: 0 10px;
	-webkit-border-radius: 15px;
	-moz-border-radius: 15px;
	border-radius: 15px;	
}
section#program .dates > dl dt p.youbi .sat{
	background-color: #0d6aff;
}
section#program .dates > dl dt p.youbi .sun{
	background-color: #e80c0c;
}

section#program .dates > dl dd{
	margin-top: 5px;
}
section#program .dates > dl dd > ul{
	display: flex;
	flex-direction: column;
	gap: 5px 0;
}
section#program .dates > dl dd > ul li{
	background-color: #daf0f5;
	-webkit-border-radius: 25px;
	-moz-border-radius: 25px;
	border-radius: 25px;
	padding: 5px 0;
}

section#program .bnr{
	width: 100%;
	height: 90px;
	margin: 40px auto 0;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	background-color: #ebebeb;
	gap: 14px 0;
}
section#program .bnr > a{
	width: 52.08%;/*375*/
	height: 53px;
	display: flex;
	justify-content: center;
	align-items: center;
	background-color: #fff;
	-webkit-border-radius: 10px;
	-moz-border-radius: 10px;
	border-radius: 10px;
	box-shadow: 3px 3px 0px rgba(0, 0, 0, 0.2);
}
section#program .bnr > a > img{
	width: auto;
	max-width: 115px;
	height: auto;
}

section#program .tolinkbtn{
	width: 100%;
	height: 55px;
	margin: 35px auto 0;
}
section#program .tolinkbtn > a{
	padding-left: 0;
	justify-content: center;
	-webkit-border-radius: 28px;
	-moz-border-radius: 28px;
	border-radius: 28px;
}
section#program .tolinkbtn > a.close{
	pointer-events: none;
	opacity: 0.4;
}
section#program .hosokutxts{
	margin-top: 5px;
	color: #C7010D;
	text-align: center;
}


/*-----------------------------------------------------------*/
/*-----------------------------------------------------------*/
/*-----------------------------------------------------------*/
/*-----------------------------------------------------------*/
/*-----------------------------------------------------------*/
/*-----------------------------------------------------------*/
/*-----------------------------------------------------------*/
/*-----------------------------------------------------------*/
