@charset "UTF-8";
/**
 * トップページ
 */
/* ==========================================================================
  TOP用に上書き指定
   ========================================================================== */
#wrapper {
  background: none;
}

#contents {
  background: none;
}

#footer {
  min-height: 45px;
  /* コピーライト */
  /* ソーシャルボタン */
}
#footer p#copyright {
  position: static;
  margin-top: 35px;
  text-align: center;
}
#footer .sns-wrap {
  position: absolute;
  top: 35px;
  left: 0;
}

.sns-wrap {
  width: 1040px;
  margin: 0 auto;
  position: relative;
}

.sns-wrap ul {
  position: absolute;
  top: 22px;
  right: 0;
  width: 230px;
}

/* modern browsers */
.sns-wrap:after {
  content: ".";
  display: block;
  height: 0;
  clear: both;
  visibility: hidden;
}

/* IE7 */
.sns-wrap {
  display: inline-block;
}

/* legacy IE */
* html .sns-wrap {
  height: 1%;
}

.sns-wrap {
  display: block;
}

/* ==========================================================================
   layout
   ========================================================================== */
#bg_wrapper {
  background: url(../../img/bg_sky.gif) repeat-x 0 0;
}

#bg_wrapper2 {
  background: url(../../img/bg_cloud.gif) repeat-x 0 0;
}

#bg_wrapper3 {
  background: url(../../img/bg_town.gif) no-repeat center 60px;
}

#bg_wrapper5 {
  overflow-x: hidden;
  padding-top: 50px;
  margin-top: -50px;
  position: relative;
  zoom: 1;
}

body {
  background: url(img/body.gif) repeat;
}

#main-bg-wrap {
  height: 675px;
}

#main-bg {
  background: url(../../img/bg_main.png) repeat-x 0 0;
  background-size: cover;
}

#main-bg2 {
  background: url(../../img/bg_grass.png) repeat-x center 625px;
}

.sns-wrap {
  height: 50px;
}

#main-wrap {
  width: 1040px;
  height: 750px;
  margin: 0 auto;
  position: relative;
}
#main-wrap h1 {
  position: absolute;
  top: -44px;
  left: 332px;
}
#main-wrap #gnav01 a {
  position: absolute;
  top: 100px;
  left: 115px;
}
#main-wrap #gnav01 a:hover {
  position: absolute;
  top: 100px;
  left: 115px;
}
#main-wrap #gnav02 a {
  position: absolute;
  top: 250px;
  left: 0;
}
#main-wrap #gnav02 a:hover {
  position: absolute;
  top: 250px;
  left: 0;
}
#main-wrap #gnav03 a {
  position: absolute;
  top: 406px;
  left: 55px;
}
#main-wrap #gnav03 a:hover {
  position: absolute;
  top: 406px;
  left: 55px;
}
#main-wrap #gnav04 a {
  position: absolute;
  top: 100px;
  left: 765px;
}
#main-wrap #gnav04 a:hover {
  position: absolute;
  top: 100px;
  left: 765px;
}
#main-wrap #gnav05 a {
  position: absolute;
  top: 235px;
  left: 852px;
}
#main-wrap #gnav05 a:hover {
  position: absolute;
  top: 235px;
  left: 852px;
}
#main-wrap #gnav06 a {
  position: absolute;
  top: 394px;
  left: 798px;
}
#main-wrap #gnav06 a:hover {
  position: absolute;
  top: 394px;
  left: 798px;
}
#main-wrap #kukku {
  width: 286px;
  height: 385px;
  margin: 0 auto;
  position: absolute;
  top: 180px;
  left: 320px;
  text-indent: 100%;
  white-space: nowrap;
  overflow: hidden;
}
#main-wrap #tente {
  width: 157px;
  height: 177px;
  margin: 0 auto;
  position: absolute;
  top: 375px;
  right: 290px;
  text-indent: 100%;
  white-space: nowrap;
  overflow: hidden;
}

#news {
  width: 1040px;
  margin: 0 auto;
  background: url(../../img/bg_news_mid.png) repeat-y top center;
  position: relative;
}
#news h2 {
  padding: 10px 25px;
}

#news p.btn {
  padding: 0 25px 10px;
}

#news dl {
  border-left: 4px dotted #ffa619;
  width: 570px;
  padding: 20px 25px 10px;
}
#news dl dt {
  font-size: 17px;
  margin-bottom: 3px;
}
#news dl dd {
  font-size: 19px;
}
#news dl dd a {
  color: #ffa619;
  font-weight: bold;
}
#news #img_news {
  position: absolute;
  top: -50px;
  right: -11px;
}
#news #btn_news {
  position: absolute;
  top: -59px;
  right: 77px;
}

#news #btn_line {
  position: absolute;
  top: 98px;
  right: 27px;
}

#news2 {
  background: url(../../img/bg_news_top.png) no-repeat top center;
  padding-top: 15px;
}

#news3 {
  background: url(../../img/bg_news_btm.png) no-repeat bottom center;
  padding-bottom: 15px;
  margin-bottom: 70px;
}

#anime-class-wrap {
  background: url(../../img/bg_anime_class_btm.png) no-repeat bottom center;
  padding-bottom: 30px;
}

#anime {
  background: url(../../img/bg_anime_top.gif) no-repeat top center;
  padding-top: 24px;
  width: 501px;
  position: relative;
}
#anime h2 {
  position: absolute;
  top: -44px;
  left: 48px;
}
#anime p#movieThumb {
  margin: 54px 0 30px 30px;
}
#anime p#movieTitle {
  color: #ba8c01;
  font-size: 116%;
  font-weight: bold;
  margin-top: 20px;
  text-align: center;
}

#anime2 {
  background: url(../../img/bg_anime_mid.png) repeat-y top center;
}

#classroom {
  background: url(../../img/bg_classroom_mid.png) repeat-y top center;
  width: 501px;
  position: relative;
}
#classroom #class-wrap {
  padding-top: 35px;
}
#classroom h2 {
  position: absolute;
  top: -64px;
  left: 47px;
}
#classroom #left-class {
  padding-left: 30px;
}
#classroom #right-class {
  padding-right: 30px;
  width: 205px;
  position: relative;
}
#classroom #right-class #img_mic {
  position: absolute;
  bottom: 63px;
  right: -15px;
}
#classroom #info {
  margin-bottom: 20px;
}
#classroom #info dt {
  font-size: 14px;
}
#classroom #info dd {
  font-size: 19px;
  color: #2280ff;
  font-weight: bold;
}
#classroom #name {
  font-size: 16px;
  margin-bottom: 25px;
}
#classroom #name dt {
  margin-bottom: 5px;
}

#classroom2 {
  background: url(../../img/bg_classroom_top.png) no-repeat top center;
  width: 501px;
  padding-top: 24px;
}

/*#classroom3 {
	background: url(../../img/bg_classroom_btm.png) no-repeat bottom center;
	width: 501px;
	padding-bottom: 24px;
}*/
#all-wrap {
  background: url(../../img/bg_all.png) no-repeat top center;
  width: 1040px;
  margin: 0 auto;
  height: 282px;
  position: relative;
  margin-top: 70px;
}
#all-wrap h2 {
  position: absolute;
  top: -40px;
  left: 318px;
}
#all-wrap .bx-pager {
  display: none;
}

#tv-class-wrap {
  background: url(../../img/bg_anime_class_btm.png) no-repeat bottom center;
  padding-bottom: 30px;
}

#tv {
  background: url(../../img/bg_tv_mid.png) repeat-y top center;
  width: 501px;
  position: relative;
}

#tv h2 {
  position: absolute;
  top: -64px;
  left: 48px;
}

#tv2 {
  background: url(../../img/bg_tv_top.png) no-repeat center top;
  padding-top: 24px;
}

#tv_wrap {
	padding: 40px 25px 0;
}

#tv_wrap .fr {
	width: 260px;
}

#tv_wrap .fr dt {
	color: #ef3740;
	font-weight: bold;
	font-size: 17px;
}

#tv_wrap div.border {
	border-bottom: 4px dotted #ffa619;
	padding-bottom: 25px;
}
