@charset "UTF-8";

/* gakudojyo
---------------------------------------------------------------------------*/

/* .sec-lead
---------------------------------------------------------------------------*/
.sec-lead {
	text-align: center;
	margin: 0 auto;
}

.sec-lead h2 {
	font-size: 16px;
	white-space: nowrap;
}

.sec-lead h2 span {
	padding-bottom: 2px;
}

.sec-lead h4 {
	font-weight: 600;
	font-size: 16px;
	border-bottom: solid 1px;
	padding-bottom: 3px;
	letter-spacing: 0.14em;
	display: inline-block;
	margin-bottom: 44px;
}

.sec-lead h3 {
	margin-bottom: 38px;
}

.sec-lead h3 strong {
	display: inline-block;
	position: relative;
}

.sec-lead h3 strong::before {
	margin-bottom: 38px;
	position: absolute;
	content: '';
	display: block;
	background: url(../img/hoiku/gakudojyo-teens/illust-fukidashi.svg);
	top: 15px;
	left: -59px;
	width: 51px;
	height: 100px;
}

.sec-lead h3 strong::after {
	margin-bottom: 38px;
	position: absolute;
	content: '';
	display: block;
	background: url(../img/hoiku/gakudojyo-teens/illust-fukidashi2.svg);
	top: 15px;
	right: -59px;
	width: 51px;
	height: 100px;
}

.sec-lead .inner {
	position: relative;
	display: inline-block;
}

.sec-lead .newopen {
	position: absolute;
	display: block;
	transform: rotate(10deg);
	top: -8px;
	right: -42px;
}

.sec-lead figure.frame {
	position: absolute;
  width: 115px;
	height: 116px;
	transform: rotate(80deg);
}

.sec-lead figure.txt {
	position: absolute;
	width: 131px;
  height: 75px;
	top: 15px;
	left: -8px;
}

.sec-lead p {
	font-size: 16px;
	letter-spacing: 0.12em;
	line-height: 1.9;
}


/* sec-efforts
---------------------------------------------------------------------------*/
.sec-efforts {
	box-sizing: border-box;
	width: 100%;
	max-width: 1260px;
	margin: 0 auto 110px;
	padding: 135px 60px 0;
}

.sec-efforts .efforts-list li p span {
	border-bottom: solid 2px #FDE102;
	font-weight: 600;
	padding-bottom: 0;
}

.sec-efforts .title-line span {
	line-height: 1.6;
}

.sec-efforts h2 {
  margin: 0 0 35px 8px;
}

/* .efforts-list
------------------------------------*/
.efforts-list {
	overflow: hidden;
}

.efforts-list li figure img {
	width: auto;
}

.efforts-list h3 {
	font-size: 17px;
}

.efforts-list .inner {
	margin-bottom: 25px;
}

.efforts-list .btn-link a,
.efforts-list .btn-link-s a {
	width: 100%;
}

/* .efforts-list - media query
-----------------------------------*/
@media (max-width: 1260px) {
	.efforts-list li figure img { width: 100%; }
}

/* .sec-movie
------------------------------------*/
.sec-movie {
	position: relative;
	box-sizing: border-box;
	width: 1070px;
	margin: 0 auto -10px;
	z-index: 1;
}

.sec-movie-inner {
	box-sizing: border-box;
	background: url(../img/hoiku/gakudojyo-teens/bg-movie@2x.jpg) no-repeat left top / cover;
	padding: 44px 55px 43px;
	z-index: 1;
}

.sec-movie .movie {
	position: relative;
	overflow: hidden;
	cursor: pointer;
}

.sec-movie .movie .movie-btn {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%) !important;
	z-index: 4;
	opacity: 0;
}

.sec-movie .movie .mask {
	position: absolute;
	top: 0;
	left: 0;
	background: rgba(0,0,0,0.2);
	width: 100%;
	height: 100%;
	z-index: 3;
	transition: .2s ease-out;
}

.sec-movie .movie:hover .mask {
	background: rgba(0,0,0,0.35);
}

.sec-movie .movie .img-movie {
	position: relative;
	z-index: 2;
	pointer-events: none;
}

.sec-movie .movie iframe {
	position: absolute;
	top: -1px;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: 0;
}

.sec-movie .pic {
	position: absolute;
	pointer-events: none;
	transform-origin: center bottom;
	opacity: 0;
}

.sec-movie .pic-tree1 { bottom: 7px; left: -73px; z-index: -1; }
.sec-movie .pic-tree2 { bottom: -39px; left: 9px; z-index: 3; }
.sec-movie .pic-tree3 { bottom: -34px; right: -16px; z-index: 3; }
.sec-movie .pic-tree4 { bottom: 43px; right: -65px; z-index: -1; }
.sec-movie .pic-student { bottom: -66px; left: 134px; z-index: 3; }
.sec-movie .pic-book { bottom: -82px; right: 124px; z-index: 3; }

/* .program-alpha
------------------------------------*/
.program-alpha {
	box-sizing: border-box;
	width: 100%;
	max-width: 1036px;
	margin: 0 auto;
	padding-top: 170px;
}

.list3 li {
  width: 30.1%;
  margin-right: 4.8%;
}

.program-alpha .lead {
	margin-bottom: 60px;
}

.alpha-list li {
	margin-bottom: 4.4%;
}

.alpha-list h4 {
	margin-bottom: 17px !important;
	font-size: 19px;
	font-weight: 600;
	letter-spacing: 0.2em;
	color: #4E94D6;
}

.alpha-list li figure  {
    margin-bottom: 28px;
}

.alpha-list p.btn {
	padding: 0 3px 17px;
}

.alpha-list .btn-link-s a {
	width: 100%;
}

.alpha-list li:nth-child(3), .alpha-list li:nth-child(4), .alpha-list li:nth-child(9) {
	position: relative;
}

.alpha-list .illust-pencil {
	position: absolute;
	right: -27px;
	bottom: -70px;
}
.alpha-list .illust-camp {
	position: absolute;
	right: -73px;
	bottom: -19px;
}

.alpha-list .illust-note {
	position: absolute;
	right: 	-50px;
	top: 224px;
}

.program-alpha .schedule {
	margin: 0 auto;
	background-color: #ECF8FD;
	border-radius: 20px;
	padding: 38px 0px 22px;
	margin-top: 20px;
}

.program-alpha .schedule .inner {
	margin: 0 auto;
	display: block;
	width: 958px;
}

.program-alpha .schedule figure {
	display: block;
}

.program-alpha .schedule h4 {
	font-size: 15px;
	font-weight: 600;
	letter-spacing: 0.14em;
	display: inline-block;
	position: relative;
	padding-bottom: 30px;
}

.program-alpha .schedule h4::after {
	width: 837px;
	height: 1px;
	content: " ";
	background: #000000;
	position: absolute;
	top: 6px;
	left: 122px
}

.program-alpha .contact {
	margin: 80px 0 180px;
	text-align: center;
}

.program-alpha .contact.btn-link-s a {
	background: #4E94D6;
	border-radius: 1px;
	padding: 22px 35px;
	font-size: 16px;
}

.sec-outline #gMap-gakudojyo,
.sec-outline #gMap-gakudojyo iframe {
	height: 395px;
}

.sec-outline .txt-set dl dd p span.txt-s {
	line-height: 1.6 !important;
	padding-top: 4px;
	display: block;
}

/* .sec-play
---------------------------------------------------------------------------*/
/*
.sec-play {
	width: 1030px;
	margin: 0 auto 140px;
}

.sec-play .title-set {
	margin-bottom: 50px;
}

.sec-play .title-set h2 {
	float: left;
	margin-right: 70px;
}

.sec-play .title-set h2 img {
	display: block;
	opacity: 0;
}

.sec-play .title-set h3 {
	float: left;
	margin-bottom: 18px;
	font-size: 23px;
	font-weight: 600;
	line-height: 1.6;
	letter-spacing: 0.15em;
}

.sec-play .title-set p {
	float: left;
	margin-bottom: 10px;
	font-size: 16px;
	letter-spacing: 0.12em;
}

.sec-play .txt-set {
	float: left;
	width: 575px;
}

.sec-play dl {
	margin-bottom: 20px;
}

.sec-play dt {
	padding-top: 15px;
	padding-bottom: 15px;
	font-size: 15px;
	letter-spacing: 0.15em;
}

.sec-play dd {
	padding-top: 16px;
	padding-bottom: 15px;
}

.sec-play dd:last-of-type {
	background: none;
}

.sec-play dd p {
	margin-top: 5px;
	color: #666666;
	letter-spacing: 0.08em;
}

.sec-play dd p:first-of-type {
	margin-top: 0;
}

.sec-play dd p strong {
	display: block;
	margin-top: -3px;
	color: #000000;
	font-size: 18px;
	font-weight: 600;
}

.sec-play .btn-link a {
	width: 380px;
}

.sec-play .img-play {
	position: relative;
	float: right;
	width: 347px;
	height: 379px;
	margin: 20px 25px 0 0;
}

.sec-play .img-play img {
	display: block;
	z-index: 2;
	opacity: 0;
}

.sec-play .img-play img:nth-of-type(1) { position: absolute; top: 0; left: 0; }
.sec-play .img-play img:nth-of-type(2) { position: absolute; top: 37px; right: 0; }
.sec-play .img-play img:nth-of-type(3) { position: absolute; top: 122px; left: 96px; }
.sec-play .img-play img:nth-of-type(4) { position: absolute; bottom: 0; left: 7px; }
.sec-play .img-play img:nth-of-type(5) { position: absolute; bottom: 7px; right: 16px; }

.sec-play .img-play img:last-of-type {
	z-index: 1;
	opacity: 1;
	-webkit-transform: scale(1) !important;
	-ms-transform: scale(1) !important;
	transform: scale(1) !important;
}

@media all and (-ms-high-contrast:none){
	.sec-play dt { padding-top: 18px; }
	.sec-play dd { padding-top: 19px; padding-bottom: 11px; }
}
*/

/* .sec-play - media query
-----------------------------------*/
/*
@media (max-width: 1100px) {
	.sec-play .txt-set { margin-left: 10px; }
}
*/


/* .sec-outline
---------------------------------------------------------------------------*/
.sec-outline {
	margin-bottom: 0;
}