@charset "utf-8";
.pcTopBar h1{
	font-weight: 600;
}
.right{
	margin: 0 0 0 auto;
}
.left{
	margin: 0 auto 0 0 0;
}
a[href^="tel:"] { cursor: default; }
.smallTxt{
	font-size:12px;
	color:#333;
	line-height:18px;	
}
.hFont{
	font-family:Roboto, "Droid Sans", Helvetica, Arial, "游ゴシック", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", sans-serif;
}
hr.bluePatation{
	margin:20px 0;
	border:solid #004480;
	border-width:1px 0 0 0;
	height:1px;/* for IE6 */
	clear:both;/* for IE6 */
}

hr.bluePatationPlenty{
	margin:50px 0;
	border:solid #004480;
	border-width:1px 0 0 0;
	height:1px;/* for IE6 */
	clear:both;/* for IE6 */
}

hr.whitePatation{
	margin:20px 0;
	border:solid #fff;
	border-width:1px 0 0 0;
	height:1px;/* for IE6 */
	clear:both;/* for IE6 */
}
.coursePatation{
	margin: 0 5%;
	border:solid #dcdcdc;
border-width:1px 0 0 0;
}
footer{
	font-size: 14px;
	color: #fff;
	text-align: center;
	padding: 38px 0 70px;
}	
.footerTitle{
	font-size: 18px;
	font-weight: 600;
	letter-spacing: .1em;
	margin-bottom: 9px;
}
.footerLink a{
	color: #fff;
	display: inline;
	line-height: 32px;
}
/* success cate erase */
body article.category-success-yamashina, body article.category-success-higashino, body article.category-success-nagitsuji, body article.category-success-ono,  body article.category-success-rokujizo{
	display: none;
}

body.single-post article.category-success-yamashina, body.single-post article.category-success-higashino, body.single-post article.category-success-nagitsuji, body.single-post article.category-success-ono, body.single-post article.category-success-rokujizo{
	display:block;
}

body.archive.category-39 article.category-success-yamashina, body.archive.category-41 article.category-success-higashino, body.archive.category-42 article.category-success-nagitsuji, body.archive.category-43 article.category-success-ono, body.archive.category-44 article.category-success-rokujizo{
	display:block;
}
/* success cate erase end */
html .subPage{
	background-color: #aa0003;
	color: #fff;
	font-size: 19px;
	width: 100%;
	padding: 5px 0 5px 5%;
}

html .subPage h1{
	font-weight: 600;
}
.fullWidth{
	width: 100vw;
	position: relative;
	left: 50%;
	right: 50%;
	margin-left: -50vw;
	margin-right: -50vw;
}
.whiteSpace{
	background-color: #fff;
    padding: 18px;
    margin-top: 32px;
}
.ring{
	width: 23px;
	position: absolute;
	left: 11px;
	top: 8px;
}
.detailButton{
	transition: .3s;
}

.courseDetailWrapper{
	transition: .3s;
	width: 100%;
}
			
.courseDetailWrapper:hover > .detailButton{
	background-color: #ffe9e7;
	color: #aa0003;
}
	
.kids-blog .buttonRadius{
	width: 360px;
}

.kids-blogDate{
	color: #595959;
	font-size: 14px;
    background-color: #fff;
    padding: 5px 12px 13px;
}

.kids-blogCate a{
    font-weight: bold;
    font-size: 12px;
    background-color: #3c3c3c;
    color: #fff;
    padding: 2px 12px;
    margin: 6px 6px 6px 0;
    transition: .3s;
    display: inline-block;
}	

.kids-blogCate a:hover{
	background-color: #c7c7c7;
    color: #000;
}
.kids-blogCate{
	background-color: #fff;
    padding: 2px 12px;
    margin-top: 0;
    margin-bottom: 0;
}	
	
.kids-blog .blogDetail span{
	display: block;
}
.educationInfo .blogDetail{
	filter: drop-shadow(2px 4px 6px #c1c1c1);
}
.kids-blog .blogDetail span.blogImgTxt{
	display:flex;
}	
html .kidsRokuButton{
	width: 330px;
}
	
html .transferBnr{
	margin-bottom: 40px;
}
.maxPoint-parent{
	width: 100vw;
    position: relative;
    left: 50%;
    transform: translateX(-50%);
}
	
.maxPoint{
	width:100%;
	height:100%;
    position: absolute;
}
.redBall{
	width: 8px;
	margin-right: 3px;
	margin-bottom: 1px;
}
.ball{
	width: 17px;
	margin-right: 0px;
	margin-bottom: -3px;
}
/* トップへ戻る start */
.page-top{
	margin: 0 ;
	padding: 0 ;
}
 
.page-top p{
	margin: 0 ;
	padding: 0 ;
	position: fixed ;
	right: 16px ;
	bottom: 16px ;
	right: 5%;
    bottom: 86px;
	z-index: 10000;
}
 
.move-page-top{
	display: block ;
	width: 50px ;
	height: 50px ;
	color: #fff ;
	line-height: 50px ;
	text-decoration: none ;
	text-align: center ;
	-webkit-transition:all 0.3s ;
	-moz-transition:all 0.3s ;
	transition:all 0.3s ;
}

.move-page-top:hover{
	opacity: 0.85 ;
}
/* トップへ戻る end */

/* アニメーション start */
.campaignTitle-animation{
	/* 1秒かけてアニメーションする */
  -webkit-animation-duration: 2s;
  animation-duration: 2s;
/* 6.5秒待ってからアニメーションする */
  -webkit-animation-duration:.5s;
  animation-delay:.5s;
}
.campaignCatch-animation{
  -webkit-animation-duration: 2s;
  animation-duration: 2s;
	
}
/* アニメーション end */

/* swiperスライダー */

	
.sample02 .swiper-wrapper {
  align-items: stretch;
}

.sample02 .swiper-slide {
  display: flex;
  justify-content: center;
  align-items: center;
  height: auto;
  padding-bottom: 25px;
}

.sample02 .sample02-inner {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
}

.sample02 .swiper-button-prev,
.sample02 .swiper-button-next {
  display: none;
  width: 20px;
  height: 32.58px;
  fill: #666;
  stroke: none;
  stroke-width: 0;
  background-image: none;
  z-index: 10000;
}

.sample02 .swiper-container-horizontal > .swiper-pagination-bullets {
  bottom: 0;
}

.sample02 .swiper-pagination-bullet-active {
  background: #666;
}

@media (min-width: 768px) {
  .sample02 .swiper-slide {
    padding: 50px;
  }

  .sample02 .swiper-button-prev,
  .sample02 .swiper-button-next {
    display: block;
  }

  .sample02 .swiper-container-horizontal > .swiper-pagination-bullets {
    bottom: 10px;
  }
}

/* swipterスライダー end */

.privilege{
	display: inline;
	border-radius: 13px;
	padding: 2px 22px;
	margin: 0 2px;
	font-size: 17px;
	color: #aa0003;
	background-color: #fff;
}
.ppZone{
	padding: 6px 0;
	background-color: #aa0003;
}
html body .ppZone a{
	color: #fff;
	font-size: 14px;
	text-decoration: underline;
	font-weight: 600;
	margin: 0 12px;
}
.ppZone-pcRight{
	display: none;
}
	
.copyRight{
	color: #aa0003;
	text-align: center;
	padding: 7px 0;
}
.darkGreen{
	color: #4D610E;
}

.darkOrange{
	color: #DA721E;
}
.patation{
	margin-top: 47px;
	margin-bottom: 35px;
	border: solid #d2d2d2;
	border-width: 1px 0 0 0;
	height: 1px;
	clear: both;
}
.about{
	width: 100%;
	background-image: url(../img/top/bgAbout.jpg);
	background-image: url(../img/top/bgAbout.webp);
	background-position: center center;
	background-repeat: no-repeat;
	background-size: cover;
	background-color: #454545;
	text-align: center;
	color: #fff;
	font-size: 12px;
	line-height:21px;
	padding-bottom: 77px;
}

.aboutTitle{
	font-size: 30px;
	padding-top: 83px;
	letter-spacing: -0.05em;
}

.aboutSub{
	font-size: 18px;
	font-weight: 600;
	line-height: 24px;
	padding: 20px 0;
}

.aboutTxt{
	font-weight: 600;
	text-align: left;
	margin-top: 26px;
}
.about a.whiteButtonWrapper{
	margin-top: 13px;
}
.hazuki{
	width: 20px;
	position: absolute;
	left: 12px;
	top: 10px;
}
.buttonDiv{
	background-color: #aa0003;
	color: #fff;
	border-radius: 25px;
	padding: 8px 0;
	width: 260px;
	border: 2px solid #aa0003;
	font-size: 18px;
	font-weight: 600;
	text-align: center;
	margin: 0 auto;
	transition: .3s;
}

.buttonDiv:hover{
	background-color: #fff;
	color: #aa0003;
}
.bgOcher{
	background-color: #EEE9DD;
}




@media screen and (min-width:600px) and ( max-width:979px) {
	.ppZone-pcRight{
		display: none;
	}

	html .subPage{
		padding: 12px 0;
		font-size: 22px;
	}
	html .subPage h1{
		width: 90%;
			margin: 0 auto;
	}
	.pc3Division{
		display: none;
	}
	footer{
		padding: 38px 0 94px;
	}
	.page-top p{
		bottom: 112px;
	}
	.gutsWrapper{
		display: none;
	}
	.puzzleLogo {
		flex-basis: 39%;
	}
	.sokudokuLogo {
		flex-basis: 38%;
	}
	.about{
		height: 373px;
	}
	footer{
		font-size: 18px;
	}
	
	.footerUnder {
		font-size: 18px;
		margin: 8px 0;
		height: 85px;
	}
	html .campaign{
		height: 116px;
	    position: relative;
	}
	
	.campaign-main{
		font-size: 25px;
	}
	.requireMark {
		margin-right: 25px;
	}




}

@media screen and (min-width: 980px) {
	html .schoolLink-link:first-child {
		border-left: 1px #d1d1d1 solid;
		border-right: 1px #d1d1d1 solid;
	}
	html .schoolLink-link:not(first-child) {
		border-right: 1px #d1d1d1 solid;
	}
	html .schoolLink-link:nth-child(odd){
		border-right: 1px #d1d1d1 solid;
	}
	html .subPage{
		padding: 19px 0;
		font-size: 30px;
	}
	html .subPage h1{
		width: 980px;
			margin: 0 auto;
	}
	html .pc3Division{
		display: flex;
		justify-content: space-between;
	}
	
	.pc3Division-inner{
		flex-basis: 30%;
	}
	.pcJizume{
		letter-spacing: -0.15em;
	}
	.kids-blog .buttonRadius{
		width: 330px;
	}
	
	html .kids-blog .blogDetail{
		margin-top: 0;
	}	

	.kids-blog .blogDetail span.blogImgTxt {
	    display: block;
	}
	.junior-hirakata .whiteComment{
    display: flex;
    justify-content: space-between;
    align-items: center;
	}
	.iconSNS{
		width: 41px;
		margin: 0px 5px;
	}
	.gutsWrapper{
		display: inline-block;
		position: absolute;
		bottom: -19px;
		left: 66px;
	}

	.forGuts{
		position: relative;
	}
	.ppZone{
		overflow: hidden;
		padding: 25px 0;
	}
	

	.ppZone-pcRight{
		display: inline;
		float: right;
		font-size: 14px
	}
	.ppZoneInner{
		width: 980px;
		margin: 0 auto;
	}
	.aboutTitle {
		font-size: 42px;
		padding-top: 92px;
	}

	.aboutTxt{
			font-size: 14px;
		line-height: 24px;
			max-width: 86%;
		margin: 0 auto;
		margin-top: 25px;
	}

	.aboutSub{
			padding: 24px 0 10px;
	}
	footer{
		font-size: 18px;
	}
	
	.footerUnder {
	    font-size: 18px;
	    margin: 8px 0;
	    height: 85px;
	}
	.brandLinks{
		display: flex;
		justify-content: space-around;
		width: 980px;
	    margin: 0 auto;
    }
    
    .brand{
		flex-basis: 21%;
	}
	    
    .brandWrapper{
	    margin: 0 17px;
    }
	.brandKokojyuku {
		width: 162px;
	}
    .brandKokojyukuPlus {
		width: 214px;
	}
	.brandKokoHirakata{
		width: 182px;
	}
	.brandKokoKids {
		width: 202px;
	}
	.brandWrapper:nth-child(1){
		flex-basis: 200px;
	}

	.brandWrapper:nth-child(2){
		flex-basis:243px;
	}

	.brandWrapper:nth-child(3){
		flex-basis: 256px;
	}
	
	html .schoolLinks{
			background-color: #fff;
		display: flex;
			width: 980px;
		margin: 0 auto 28px;
			}
	
	#wrapper .schoolLink-link:not(first-child){
			border-right: 1px #d1d1d1 solid;
	}

	#wrapper .schoolLink-link:first-child{
			border-left: 1px #d1d1d1 solid;
			border-right: 1px #d1d1d1 solid;
	}
	
	html body #wrapper .brandLinks .brandWrapper{
		border:none;
	}
	
	footer{
		padding: 38px 0 119px;
	}
	.crumBred{
		padding: 12px 0;
	}
	.brand{
		border-bottom: none;
	}
	.schoolLink-link{
		font-size: 13px;
	}

}

@media all and (-ms-high-contrast: none){
	.courseDetailTop{
		height: 100%;
	}
	.junior-hirakata .whiteComment{
		text-align: left;
		margin-top: 18px;
	}
}