@charset "UTF-8";

a.otherLinkGray::before{
	content: url(/common/img/parts/link_window_icon01.png);
	margin-right: 5px;
}

a.otherLinkWhite::before{
	content: url(/common/img/parts/link_window_icon02.png);
	margin-right: 5px;
}

.breadcrumbs{
	font-size: 80%;
	margin-top: 5px;
}

.breadcrumbs a{
	color: #000;	
}

.mainTitle, .mainContents{
	width: 960px;
	margin: 0 auto;
}

.l-site-header{
	background: #262626;
	padding: 0;
}

.l-site-header ul.accListMenu{
	background: url(../img/logo.jpg) 20px center no-repeat;
	width: 960px;
	margin: 0 auto;
	font-size: 80%;
}

.l-site-header ul li{
	display: inline-block;
	margin: 0;
}

.l-site-header ul.accListMenu > li:first-child{
	margin: 0 5px 0 50px;
}

.l-site-header ul li a{
	color: #fff;
	padding: 25px 10px;
	display: block;
}

.l-site-header ul li span.menuCurrentP{
	color: #fff;
	padding: 25px 10px;
	display: block;
	background: #505050;
	position: relative;
}

.l-site-header ul li span.menuCurrentP::before{
	content: "";
	background: #fff;
	width: 15px;
	height: 8px;
	border-radius: 0 0 15px 15px;
	margin: 0 auto -5px auto;
	display: inline-block;
	position: absolute;
	top: 0;
	left: 50%;
	margin-left: -7px;
}

.l-site-header ul li span.menuCurrentP::after{
	content: "";
	background: #fff;
	width: 15px;
	height: 8px;
	border-radius: 15px 15px 0 0;
	margin: 0 auto -5px auto;
	display: inline-block;
	position: absolute;
	bottom: 5px;
	left: 50%;
	margin-left: -7px;
}

.l-site-header ul.accListMenu > li:last-child a{
	background: url(../img/list_oubo_end.jpg) 0 center no-repeat;
	padding: 25px 30px 25px 25px;
}


.accListSubMenu{
	height: 0;
	overflow: hidden;
	position: absolute;
	opacity: 0;
	color: #fff;
	background-color: #000;
	width: 15em;
	padding: 0 10px;
	text-align: left;
}

.subMenuOn{
	position: relative;
}

.subMenuOn:hover{
	color: #aaa;
}

.subMenuOn:hover > ul{
	height: auto;
	opacity: 1;
	-webkit-transition: opacity .1s;
}

.subMenuOn:hover > ul li a{
	padding: 5px 0;
}

.imgLinkDisable{
	background: #C5C4C4;
	width: 600px;
	padding: 10px 0;
	display: block;
	margin: 20px auto;
	border-radius: 5px;
	text-align: center;
}

.imgLink{
	width: 628px;
	padding: 30px;
	font-size: 120%;
	text-align: center;
	display: block;
	color: #fff;
	margin: 5px auto;
	background: url(../img/link.jpg) 0 center no-repeat;
}

.accTitle{
	font-size: 200%;
	font-weight: bold;
	text-align: center;
	letter-spacing: 0.2em;
	margin: 50px 0;
}

.accTitle span{
	font-size: 50%;
	font-weight: normal;
	display: block;
	letter-spacing: 0em;
}

.accTitle span::before{
	content: "";
	width: 65px;
	height: 11px;
	background: url(../img/h2_left.jpg) 0 0 no-repeat;
	display: inline-block;
	margin: 0 10px;
	vertical-align: middle;
}

.accTitle span::after{
	content: "";
	width: 65px;
	height: 11px;
	background: url(../img/h2_right.jpg) 0 0 no-repeat;
	display: inline-block;
	margin: 0 10px;
	vertical-align: middle;
}

.accTitle span.smallh2{
	font-size: 40%;
	text-align: center;
}

.accTitle span.smallh2::before, .accTitle span.smallh2::after{
	content: none;
}

.programTitle{
	background: url(../img/start.jpg) 0 0 no-repeat;
	width: 355px;
	height: 355px;
	color: #fff;
	text-align: center;
	padding: 100px 10px;
	margin: 0 50px 20px 0;
	font-weight: bold;
	line-height: 1.3;
	display: inline-block;
	vertical-align: top;

}

.program01{
	margin: 10px 0;
	font-size: 200%;
}

.program02{
	margin: 30px 0;
	font-size: 150%;
}

.programText{
	vertical-align: top;
	display: inline-block;
	width: 540px;
	font-size: 119%;
}

.jigyo{
	border: 2px solid #aaa;
	padding: 20px;
	margin: 20px; 
	text-align: center;
}

.jigyoTitle{
	font-weight: bold;
	font-size: 120%;
}

.focusTxt01{
	text-align: center;
	font-size: 150%;
	display: block;
}

.focusTxt02{
	text-align: center;
	display: block;
	padding: 0 10px;
}

.focus{
	width: 450px;
	display: inline-block;
	box-shadow: 1px 1px 6px #aaa;
	margin: 5px 10px 20px 0;
	vertical-align: top;
}

.focusBlock{
	display:flex;
	flex-wrap:wrap;
	justify-content: space-between;
}

.focusTitle{
	background: #cddbe3;
	position: relative;
	font-weight: bold;
	padding: 15px 20px 15px 110px;
	text-align: center;
	font-size: 110%;	
}

.Tcol2{
	padding: 15px 20px 15px 110px;
	line-height: 1.1em;
}

.Tcol2 span{
	line-height: 1.8em;
}

.focusTitle::after{
	content: "";
	width: 15px;
	border-radius: 15px 0 0 15px;
	background: #fff;
	position: absolute;
	top: 15px;
	right: 0;
	display: block;
	height: 25px; 
}

.focusNo{
	position: absolute;
	top: 15px;
	left: 0;
	background: #fff;
	border-radius: 0 15px 15px 0;
	color: #66b1dc;
	padding: 0 10px;
	font-size: 80%;
	font-weight: normal;
}

.focusNo span{
	font-size: 130%;
}


.focusText{
	padding: 10px;
	font-weight: bold;
	margin-bottom: 0;
	font-size: 110%;
}

.focusList{
	padding: 0px 10px 20px 30px;
	font-size: 90%;
}

.focusList li{
	list-style: disc;
}

.focusList li:last-child{
	list-style: none;
}


.merit{
	width: 450px;
	display: inline-block;
	box-shadow: 1px 1px 6px #aaa;
	margin: 5px 10px 20px 0;
	vertical-align: top;
}

.meritBlock{
	display:flex;
	flex-wrap:wrap;
	justify-content: space-between;
}

.meritTitle{
	background: #cddbe3;
	position: relative;
	font-weight: bold;
	padding: 15px 20px 15px 80px;
	text-align: center;
	font-size: 120%;
}

.meritTitle::after{
	content: "";
	width: 15px;
	border-radius: 15px 0 0 15px;
	background: #fff;
	position: absolute;
	top: 15px;
	right: 0;
	display: block;
	height: 25px; 
}

.meritNo{
	position: absolute;
	top: 15px;
	left: 0;
	background: #fff;
	border-radius: 0 15px 15px 0;
	color: #66b1dc;
	padding: 0 10px;
	font-size: 80%;
	font-weight: normal;
}

.meritNo span{
	font-size: 130%;
}


.meritText{
	padding: 10px;
	font-weight: bold;
	margin-bottom: 0;
}

.meritList{
	padding: 0px 10px 10px 30px;
	font-size: 100%;
}

.meritList li{
	list-style: disc;
}

.scheTxt{
	overflow: hidden;
}

.scheTxt div{
	width: 45%;
	margin: 2%;
	display: inline-block;
	vertical-align: top;
}

.sche{
	width: 170px;
	display: inline-block;
	box-shadow: 1px 1px 6px #aaa;
	margin: 5px 10px 20px 0;
	vertical-align: top;
	position: relative;
}

.scheBlock{
	display:flex;
	flex-wrap:wrap;
	justify-content: space-between;
}

.scheTitle{
	background: #cddbe3;
	position: relative;
	font-weight: bold;
	padding: 20px 20px;
	text-align: center;
	line-height: 1.1;
}

.sche::after{
	content: "";
	width: 15px;
	border-radius: 0 15px 15px 0;
	background: #cddbe3;
	display: block;
	height: 25px;
	position: absolute;
	top: 50%;
	right: -15px;
	margin-top: -10px;
}

.sche:last-child::after{
	display: none;
}

.scheTitle.Kai2{
	padding: 12px 20px;
}

.scheTitle::before{
	content: "";
	width: 15px;
	border-radius: 0 15px 15px 0;
	background: #fff;
	position: absolute;
	top: 15px;
	left: 0;
	display: block;
	height: 25px; 
}

.scheProt{
	padding: 10px;
	margin-bottom: 0;
	font-size: 90%;
}

.scheProt span{
	font-size: 90%;
	display: inline-block;
	margin-top: 10px;
}

.scheSenko{
	border: 1px solid #aaa;
	background: #fefefe;
	text-align: center;
	margin: 5px 5px;
	font-size: 90%;
}

.scheCurrent .scheTitle{
	background: #f00;
	color: #fff;
}

.scheCurrent .scheProt{
	color: #f00;
}

.scheCurrent .scheProt span{
	color: #000;
}

.scheCurrent.sche::after{
	background: #f00;
}


.eventsArea{
	background: #f9f9f9;
	display: block;
	padding: 10px 0;
}

.eventsBlock{
	width: 960px;
	margin: 0 auto;
	text-align: center;
}

.eventsBlock strong{
	font-size: 130%;
}

.eventsBlock h3{
	font-weight: normal;
	font-size: 140%;
	margin: 10px 0;
}

.eventsBlock p{
	margin: 5px 0;
}

.eventsLeft{
	display: inline-block;
	width: 40%;
	vertical-align: top;
	text-align: left;
	margin-left: 15%;
}

.eventsRight{
	display: inline-block;
	width: 40%;
	vertical-align: top;
	text-align: left;
}

.oubo{
	margin-bottom: 20px;
}

.ouboLeft{
	display: inline-block;
	width: 45%;
	vertical-align: top;
	margin-right: 5%;
}

.ouboRight{
	display: inline-block;
	width: 45%;
	vertical-align: top;
}

.ouboTitle{
	background: #cddbe3;
	text-align: center;
	display: block;
	position: relative;
	padding: 8px 20px;
}

.ouboTitle::before{
	content: "";
	width: 15px;
	border-radius: 0 15px 15px 0;
	background: #fff;
	position: absolute;
	top: 10px;
	left: 0;
	display: block;
	height: 25px; 
}

.ouboTitle::after{
	content: "";
	width: 15px;
	border-radius: 15px 0 0 15px;
	background: #fff;
	position: absolute;
	top: 10px;
	right: 0;
	display: block;
	height: 25px; 
}

.backgroundScroll{
	height: 300px;
	background-size: 100%;
}

.backgroundScroll2{
	height: 400px;
	background-size: 100%;
}

.bg00{ background: url(../img/bg00.jpg) center center repeat-y; text-align:center; }
.bg01{ background: url(../img/bg01.jpg) center center repeat-y;}
.bg02{ background: url(../img/bg02.jpg) center center repeat-y;}
.bg03{ background: url(../img/bg03.jpg) center center repeat-y;}
.bg04{ background: url(../img/bg04.jpg) center center repeat-y;}
.bg05{ background: url(../img/bg05.jpg) center center repeat-y;}

.bg0sub{
	padding: 50px 0 0 0;
	display: block;
	margin: 0 auto;
}

.bg0logo{
	padding: 10px 0 0 0;	
	display: inline-block;
	width: 400px;
}

.bg0oubo{
	display: inline-block;
}

.bg0catch{
	display: block;
	width: 600px;
	margin: 0 auto;	
}

.menterBlock{
	display:flex;
	flex-wrap:wrap;
	justify-content: space-between;
}

.menterPhoto{
	width: 150px;
}

.menter{
	width: 25%;
	text-align: center;
	margin: 0;
}

.menterName{
	font-weight: bold;
	font-size: 130%;
}

.menterName::after{
	content: " 氏";
	font-size:90%;
	font-weight: normal;
}

.menterJob{
	font-size: 85%;
}

.menterJob span{
	display: inline-block;
}

.contactArea{
	background: #f9f9f9;
	display: block;
	padding: 10px 0;
}

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

.contantTxt01{
	font-size: 110%;
}

.contactAddress{
	text-align: center;
	font-weight: bold;
	font-size: 130%;
	margin: 2em 0;
}

.contantBlock a{
	text-decoration: underline;
	color: #f00;
}

.contantAlert{
	background: #efefef;
	border: #aaa 2px solid;
	padding: 10px;
	margin: 5px 0 50px 0;
}

.contantAlert ul li{
	list-style: disc;
	margin-left: 2em;
}

@media (max-width: 767px){

.is-sticky .l-site-header{
	position: relative!important;
}

.l-site-header ul.accListMenu{
	width: 100%;
	background: url(../img/logo.jpg) center 10px no-repeat;
	padding-top: 50px;
}

.mainTitle, .mainContents , .eventsBlock, .contantBlock{
	width: 100%;
}

.l-site-header ul.accListMenu > li:first-child {
    margin: 0 5px;
}

.programTitle {
	background: #f00;
	width: 100%;
	height: auto;
	color: #fff;
	text-align: center;
	padding: 0 10px;
	margin: 20px 0;
	font-weight: bold;
	line-height: 1.3;
	display: inline-block;
	vertical-align: top;
}

.programTitle:before {
	content: "";
	background: #fff;
	width: 30px;
	height: 20px;
	border-radius: 0 0 15px 15px;
	margin: 0 auto;
	display: inline-block;
}

.programTitle:after {
	content: "";
	background: #fff;
	width: 30px;
	height: 20px;
	border-radius: 15px 15px 0 0;
	margin: 0 auto -5px auto;
	display: inline-block;
}

.program02 {
	margin: 10px 0 5px 0;
	font-size: 150%;
}

.programText {
	vertical-align: top;
	display: inline-block;
	width: 100%;
	font-size: 100%;
	padding: 0 10px;
}

.imgLink{
	width: 100%;
	background-size: 100%;
}

.focus{
    width: 100%;
    margin: 5px 10px 20px 10px;
    box-sizing: border-box;
}

.focus img{
    width: 100%;
}

.merit {
    width: 100%;
    margin: 5px 10px 20px 10px;
    box-sizing: border-box;
}

.meritList {
    padding: 0px 10px 10px 30px;
    font-size: 80%;
}

.scheTxt div {
    width: 95%;
}

.sche {
    width: 100%;
    margin: 5px 10px 20px 10px;
    box-sizing: border-box;
}

.sche::after {
	width: 25px;
	border-radius: 0 0 15px 15px;
	height: 15px;
	top: 100%;
	right: 50%;
	margin-top: 0px;
	margin-right: -10px;
}

.eventsLeft {
	width: 96%;
	margin: 2% 0;
	text-align: center;
}

.eventsRight {
	width: 96%;
	margin: 2% 0;
	text-align: center;
}

.eventsBlock img{
	width: 95%;
}

.ouboTopTxt{
	padding: 0 10px;
}

.ouboLeft,.ouboRight {
    width: 96%;
    margin: 0 2%;
}

.ouboTitle {
	padding: 13px 20px;
}

.menter {
    width: 48%;
}

.contantTxt01, .contantTxt02{
	font-size: 100%;
	padding: 0 10px;
}

.contantAlert {
    margin: 5px 5px 50px 5px;
}

.backgroundScroll2{
	height: 200px;
	background-size: 100%;
}

.bg0sub{
	padding: 10px 0 0 0;
}

.bg0logo{
	padding: 1% 0 0 0;
	width: 50%;
	vertical-align: top;
}

.bg0logo img{
	display: block;
	width: 90%;
	margin: 0 auto;	
}

.bg0oubo{
	width: 20%;
	vertical-align: top;
}

.bg0catch{
	display: block;
	width: 80%;
	margin: 0 auto;	
}

.imgLinkDisable{
	width: 90%;
}

}