@charset "utf-8";

h1, h2, h3, h4, h5, h6 {
	margin-bottom: .5em;
}

.ttl-deco {
	font-family: "Work Sans", sans-serif;
	font-size: 18vw;
	color: #000;
	z-index: 1;
	line-height: 1;
	position: relative;
	text-indent: -5px;
	text-align: left;
	margin-bottom: .25em;
	width:auto;
}
.ttl-deco:before {
	position: absolute;
	content: "";
	display: inline-block;
	width: 60%;
	height: 40%;
	background: url(../img/ttl_deco.png) left top / contain no-repeat;
	z-index: -1;
	left: 0;
	bottom: -18%;
}
.bg-oblique .ttl-deco {
	margin-top: 1em;
	top: -.5em;
	margin-bottom: -.25em;
}
@media screen and (min-width: 768px){
	.ttl-deco {
		font-size: 8.2rem;
		text-indent: -10px;
	}
	.ttl-deco:before {
		width: 100%;
		max-width: 422px;
	}
}
.fjalla_one {
	font-family: 'Fjalla One', sans-serif;
}
.tx-pink {
	color: #d80c18;
}
.tx-green {
	color: #d80c18;
}
.tx-white {
	color: #fff;
}
.bg-checker {
	background: url(../../img/bg_checker_l.png);
}
.bg-pink {
	background-color: #252a31;
}
.bg-green {
	background-color: #d80c18;
}
.bg-oblique {
	background: url(../img/bg_oblique.png);
}
.bg-gray {
	background-color:#959595;
}
.bg-lgray {
	background-color: #eef0f1;
}
.tx-large {
	font-size: 150%;
}
.tx-small {
	font-size: 70%;
}
.ls-1 {
	letter-spacing: -1px;
}
.ls-2 {
	letter-spacing: -2px;
}
.lh15 {
	line-height: 1.5;
}
.lh13 {
	line-height: 1.3;
}
.fs10 {
	font-size: 1rem;
}
.fs9 {
	font-size: .9rem;
}
.fs8 {
	font-size: .8rem;
}
small {
	font-size: 80%;
}
#top .section {
	margin-bottom: 2em;
}
@media screen and (min-width: 768px){
	#top .section {
		margin-bottom: 3rem;
	}
}
.btn a {
	display: inline-block;
	color: #fff;
	background-color: #000;
	border-radius: 20px;
	line-height: 1.5;
	padding: .5em 2em;
	/*font-size: .9rem;*/
	position: relative;
	transition-duration: .3s;
}
.btn a:hover {
	background-color: rgba(0,0,0,.8);
}
.btnred a{
		background-color: #d80c18;
}
.btnred a:hover {
	background-color: rgba(216,12,24,.8);
}
.btn a:after {
	content: "";
	width: 2em;
	min-height: 2em;
	background-position: right center;
	background-size: contain;
	position: absolute;
	background-repeat: no-repeat;
	right: -1em;
	top: 50%;
	transform: translateY(-50%);
}
.btn.arrow-pink a:after {
	background-image: url(../img/arrow_pink.png);
}
.btn.arrow-green a:after {
	background-image: url(../img/arrow_green.png);
}
.btn.arrow-white a:after {
	background-image: url(../img/arrow_white.png);
}
.btn.arrow-red a:after {
	background-image: url(../img/arrow_red.png);
}
@media screen and (min-width: 768px){
	.btn a {
		font-size: 1rem;
		padding: 1em 4em;
		border-radius: 30px;
	}
}
.bracket {
	font-size: .8rem;
	line-height: 1.5;
	position: relative;
	padding: 1.5em 1em;
}
@media screen and (min-width: 768px){
	.bracket {
		font-size: 1rem;
		line-height: 1.8;
		padding: 40px;
	}
}
.bracket:before,
.bracket:after {
	position: absolute;
	content: "";
	width: 5vw;
	max-width: 31px;
	height: 5vw;
	max-height: 31px;
	display: inline-block;
	background-repeat: no-repeat;
	background-position: left top;
	background-size: contain;
}
.bracket:before {
	background-image: url(../img/bracket_l.png);
	top: 0;
	left: 0;
}
.bracket:after {
	background-image: url(../img/bracket_r.png);
	bottom: 0;
	right: 0;
}






/* ------------------------------------------------------------
　common style
---------------------------------------------------------------*/
.top-lead {
	line-height: 1.3;
	font-size: 1.2rem;
	font-weight: bold;
	letter-spacing: -1px;
	margin-bottom: .25em;
}
.top-lead-sub {
	font-size: .8rem;
	line-height: 1.5;
}
.ttl-copy {
	margin: 0 2% 1em;
}
@media screen and (min-width: 768px ){
	.top-lead {
		font-size: 1.6rem;
	}
	.top-lead-sub {
		font-size: 1rem;
		font-weight: bold;
		margin-bottom: 2em;
	}
	.ttl-copy {
		margin: 0 2em;
	}
}
@media screen and (min-width: 1024px ){
	.ttl-wrapper {
		display: flex;
		flex-wrap: wrap;
		position: relative;
		align-items: center;
		margin-top: 8.2rem;
		top: -4.1rem;
		margin-bottom: -2.05rem;
	}
	.bg-oblique .ttl-deco {
		margin-top: 0;
		top: auto;
		margin-bottom:0;
	}
	.top-lead-sub {
		margin-bottom: 0;
	}
}
/* ------------------------------------------------------------
Main Visual[PC] 
---------------------------------------------------------------*/
.mv-wrapper {
	margin-bottom: 50px;
	position: relative;
}
#mv-sp {
	min-height: 100vw;
}
#mv {
	min-height: 835px;
}
.mv-ttl, .mv-copy {
	position: absolute;
}
@media screen and (max-width: 767px ){
	.mv-ttl {
		left:0;
		bottom: 20px;
		width: 80%;
	}
	.mv-copy {
		height: 80vw;
		left: 48%;
		transform: translateX(30%);
		top: 3%;
	}
	.mv-copy img {
		height: 100%;
	}
}
@media screen and (min-width: 768px ){
	.mv-ttl {
		left:0;
		bottom: 50px;
		max-width: 80%;
	}
	.mv-copy {
		left: 50%;
		transform: translateX(30%);
		top: 10%;
	}
}


/*背景youtube*/
.main-visual {
	margin-bottom: 50px;
	position: relative;
}
.main-visual .ie-movie {
  position: relative;
  display: none;
}

@media all and (-ms-high-contrast: none) {
  .main-visual .ie-movie {
    display: block;
  }
}

.main-visual .ie-movie iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.main-visual .ie-movie::after {
  content: "";
  display: block;
  padding-bottom: 56.25%;
}
.main-visual .movie-area {
	background: url(../../img/slider/mv01.jpg) center / cover;
	position: relative;
}
@media screen and (max-width: 767px ){
.main-visual .movie-area {
	background: url(../../img/slider/mv01_sp.jpg) center / contain;
}
}
.main-visual .movie-area > img {
  position: absolute;
  top: 0;
  left: 0;
}
@media all and (-ms-high-contrast: none) {
  .main-visual .movie-area {
    display: none;
  }
}
.main-visual .movie-area .inline-YTPlayer {
  max-width: 100% !important;
}
.main-visual .movie-area .mainvisual__video {
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  position: relative !important;
  padding: 0 !important;
  width: 100%;
  overflow: hidden;
}
.main-visual .movie-area .mainvisual__video iframe {
  position: absolute!important;
  left: 50% !important;
  top: 50% !important;
  transform: translate(-50%, -50%) !important;
  padding: 0 !important;
  margin: 0 !important;
}
@media screen and (min-width: 768px ){
.main-visual .movie-area .mainvisual__video {
  height: calc(100vh - 250px) !important;
}
.main-visual .movie-area .mainvisual__video iframe {
  width: 250% !important;
  height: 150% !important;
}
}
@media screen and (max-width: 767px ){
.main-visual .movie-area .mainvisual__video {
  height: calc(80vh - 110px) !important;
}
.main-visual .movie-area .mainvisual__video iframe {
  width: 450% !important;
  height: 150% !important;
}
}
@media screen and (min-width: 768px ){
.main-visual .mv-ttl {
left: 0px;
    bottom: -1px;
    max-width: 70%;
	}
.main-visual .mv-copy {
	    left: 50%;
    transform: translateX(-50%);
    top: 30px;
    height: 75%;
	}
}
@media screen and (max-width: 767px ){
.main-visual .mv-ttl {
   position: absolute;
	bottom: 0px;
   left: 50%;
   transform: translateY(-50%) translateX(-50%);
    width: 90%;
	}
.main-visual .mv-copy {
    height: 66%;
    top: 46%;
    left: 50%;
    transform: translate(-50%, -50%);
	}
}
.main-visual .mv-copy img {
		height: 100%;
	}
	
/* ------------------------------------------------------------
訪問者ナビ[PC] 
---------------------------------------------------------------*/
.top-visitor-nav-list {
	display: table;
	width: 100%;
	border-radius: 20px;
	position: relative;
	margin-bottom: 30px;
}
.top-visitor-nav-list li {
	display: table-cell;
	text-align: center;
	vertical-align: middle;
}
.top-visitor-nav-list li a {
	display: block;
	width: 100%;
	padding: .5em;
	color: #fff;
	transition: .3s;
	font-size: .8rem;
}
.top-visitor-nav-list li:nth-child(odd) a {
	background-color: #434444;
}
.top-visitor-nav-list li:nth-child(even) a {
	background-color: #000;
}
.top-visitor-nav-list li:nth-child(odd) a:hover {
	background-color: rgba(67, 68, 68, .9);
}
.top-visitor-nav-list li:nth-child(even) a:hover {
	background-color: rgba(0, 0, 0, .9);
}
.top-visitor-nav-list li:first-child a {
	border-radius: 20px 0 0 20px;
}
.top-visitor-nav-list li:last-child a {
	border-radius: 0 20px 20px 0;
}
.top-visitor-nav-list::before {
	content: "";
	display: block;
	position: absolute;
	left: 0;
	bottom: -16px;
	width: 100%;
	height: 32px;
	background: url(../img/bg_checker.png) repeat-x;
	border-radius: 20px;
	z-index: -1;
}

/* ------------------------------------------------------------
bnr-box 
---------------------------------------------------------------*/
#bnr-box {
	padding: 20px 0;
	margin-bottom: 30px;
}
#bnr-box .slick-slide {
	box-sizing: border-box;
	padding: 0 10px;
}
#bnr-box .slick-slide img {
	width: 100%;
}
#bnr-box .quote {
	width: 100%;
	max-width: 1260px;
	margin-left: auto;
	margin-right: auto;
	position: relative;
	top: -20px;
}
#bnr-box .quote:before,
#bnr-box .quote:after {
	position: absolute;
	content: "";
	width: 5vw;
	max-width: 46px;
	height: 5.75vw;
	max-height: 53px;
	z-index: 99;
}
#bnr-box .quote:before {
	background: url(../../img/double_quote_l.png) left top / contain no-repeat;
	top: -3vw;
	left: calc(28% - 5vw - 20px);
}
#bnr-box .quote:after {
	background: url(../../img/double_quote_r.png) left top / contain no-repeat;
	top: -3vw;
	right: calc(28% - 5vw - 20px);
}
@media screen and (max-width: 767px){
	#bnr-box .container {
		margin: 0;
		width: 100%;
		overflow: hidden;
	}
}
@media screen and (min-width: 768px){
	#bnr-box {
		padding: 40px 0;
	}
	.bnr-list {
		display: flex;
		justify-content: space-between;
		position: relative;
	}
	.bnr-list li {
		width: 32%;
		max-width: 360px;
	}
	.bnr-list li img {
		width: 100%;
	}
	#bnr-box .quote:before {
		top: -40px;
		left: 1%;
	}
	#bnr-box .quote:after {
		top: -40px;
		right: 1%;
	}
}
@media screen and (min-width: 1280px){
	#bnr-box {
		margin-bottom: 50px;
	}
	#bnr-box .quote {
		width: 1200px;
	}
}

/* ------------------------------------------------------------
COURSE
---------------------------------------------------------------*/
#course {
	padding-bottom: 30px;
}
.course-wrapper {
	position: relative;
	overflow: hidden;
	padding: 2%;
}
.course-wrapper:before,
.course-wrapper:after {
	position: absolute;
	content: "";
	width: 10vw;
	height: 10vw;
	max-width: 79px;
	max-height: 79px;
	z-index: 1;
}
.course-wrapper:before{
	top: 0;
	right: -10px;
	background: url(../../img/circle_red.png) left top /contain no-repeat;
}
.course-wrapper:after {
	bottom: 0;
	left: -10px;
	background: url(../../img/circle_red.png) left top /contain no-repeat;
}
.course-inner {
	padding: 4% 2%;
}
@media screen and (min-width: 1024px ){
	.course-wrapper {
		width: 100%;
		padding: 30px;
		margin: 0 auto;
		max-width: 1260px;
		overflow: visible;
	}
	.course-wrapper:before{
		top: 0;
		right: 0;
	}
	.course-wrapper:after {
		bottom: 0;
		left: 0;
	}
	.course-inner {
		position: relative;
		overflow: visible;
	}
	.course-inner:before {
		content:"Music & entertainment";
		font-family: 'Allura', cursive;
		font-size: 2em;
		line-height: 1;
		position: absolute;
		z-index: 1;
		top: 50%;
		left: -130px;
		transform: rotate(90deg);
		font-weight: bold;
	}
	.course-inner:after {
		content: url(../../img/student01.png);
		position: absolute;
		top: -140px;
		right: 0;
		z-index: 1;
	}
}
/* ------------------------------ tab */
.search-course-nav {
	display: flex;
	justify-content: space-between;
	align-items: stretch;
	border-left: 1px solid #000;
	margin-bottom: 2em;
}
.search-content li a span {
    text-shadow: 1px 1px 0px #000;

}
@media screen and (min-width: 768px ){
	.search-course-nav {
		width: 80%;
		margin-left: auto;
		margin-right: auto;
	}
}
.search-course-tab {
	width: 50%;
	border-right: 1px solid #000;
	position: relative;
}
.search-course-tab a {
	align-items: center;
	color: #8d8d8d;
	display: flex;
	font-size: .6rem;
	justify-content: center;
	padding: 1em 0.25em;
	text-align: center;
	transition-duration: .3s;
}
@media screen and (max-width: 767px){

	.search-course-tab a {
		
	}
	.search-course-tab a span {
		font-size: x-small;
		line-height: 1.2;
		padding-left: 2em;
	}
	.search-course-tab a span::before {
		font-size: 1.2rem;
	}

}
@media screen and (min-width: 768px ){

	.search-course-tab a {
		font-size: 1.0rem;
	}

	.search-course-tab a span{
		padding-left: 2.25em;
	}
	.search-course-tab a span::before {
		font-size: 1.6rem;
	}

}

.search-course-tab a:hover,
.search-course-tab a.on {
	color: #000;
}

.search-course-tab a span{
	display: block;
	position:relative;
	text-align: center;
}
.search-course-tab a span::before {
	left: 0;
	position: absolute;
	top: 50%;
	-webkit-transform: translateY(-50%); /* Safari用 */
	transform: translateY(-50%);
}
.search-course-tab:nth-child(1) a span::before {
	content: "\f7a6";
}
.search-course-tab:nth-child(2) a span::before {
	content: "\f4be";
}
.search-course-tab:nth-child(3) a span::before {
	content: "\f27e";
	font-family: "Font Awesome 5 Brands"
}
.search-course-tab a:hover:after,
.search-course-tab a.on:after {
	content: "\f107";
	font-size: 1.6rem;
	position: absolute;
	bottom: -1em;
	left: 50%;
	transform: translateX(-50%);
}
.search-content > ul {
	display: none;
}
.search-content > ul.active {
	display: flex;
	/*justify-content: space-between;*/
	flex-wrap: wrap;
}
@media screen and (max-width: 767px){

	.search-content > ul.active > li {
		margin: 0 2% 2% 0;
		width:calc(96% / 3);
	}

	.search-content > ul.active > li:nth-child(3n) {margin-right: 0}
	.search-content li a span {
		font-size:9px!important;
	}

}
@media screen and (min-width: 768px ){
	.search-content > ul.active {
		justify-content: flex-start;
	}
	.search-content > ul.active > li {
		width:calc(92% / 5);
		margin: 0 2% 2% 0;
		text-align: center;
	}
	.search-content > ul.active > li:nth-child(5n) {margin-right: 0;}
	.search-content li a span {
		font-size: 0.5rem!important;
	}


	/*.search-content > ul.active > li:nth-child(n+4) {
		margin-bottom: 0;
	}
	.search-content > ul#search-course.active > li:nth-child(4n){
		margin-right: 0;
	}
	.search-content > ul#search-fav.active > li {
		width: 19%;
		margin-right: calc(5%/4);

	}
	.search-content > ul#search-fav.active > li:nth-child(5n){
		margin-right: 0;
	}*/
}

@media screen and (min-width: 1024px ){
		.search-content li a span {
		font-size: 0.8rem!important;
	}	
}


.search-content li a {
	display: block;
	position: relative;
}
@media screen and (min-width: 768px ){.search-content li a img{border-radius: 5em}}
@media screen and (max-width: 767px ){.search-content li a img{border-radius: 2em}}
.search-content li a span {
	position: absolute;
	color: #fff;
	font-weight: bold;
	left: 50%;
	bottom: 10%;
	transform: translateX(-50%);
	line-height: 1.2;
	display: inline-block;
	width: 70%;
	text-align: center;
	font-size: .7rem;
}
/*@media screen and (min-width: 320px ){
	.search-content li a span {
		font-size: x-small;
	}
}
@media screen and (min-width: 375px ){
	.search-content li a span {
		font-size: .9rem;
	}
}
@media screen and (min-width: 420px ){
	.search-content li a span {
		font-size: 1rem;
	}
}*/
/* -------------------------------------------------------------
SYSTEM
---------------------------------------------------------------*/
#system {
	margin-top: 30px;
}
.system-box {
	margin-bottom: 40px;
}
.ttl-system {
	margin-bottom: 0;
}
.system-box:nth-child(odd) .ttl-system {
	padding-right: 1em;
	text-align: right;
}
.system-box:nth-child(even) .ttl-system{
	text-align: left;
	padding-left: 1em;
}
.ttl-system-wrapper {
	display: flex;
	flex-direction: column;
	justify-content: center;
	height: 46.6vw;
	font-size: 1.4rem;
	background-size: cover;
	background-repeat: no-repeat;
	background-color: #000;
	margin-bottom: 0;
	line-height: 1.3;
	max-height: 360px;
}
.system-box:nth-child(odd) .ttl-system-wrapper {
	background-position: left top;
}
.system-box:nth-child(even) .ttl-system-wrapper {
	background-position: right top;
}
.project .ttl-system-wrapper {
	background-image: url(../../img/system_project.jpg);
}
.w-major .ttl-system-wrapper {
	background-image: url(../../img/system_wmajor.jpg);
}
.oversea .ttl-system-wrapper {
	background-image: url(../../img/system_abroad.jpg);
}
.facility .ttl-system-wrapper {
	background-image: url(../../img/system_facility.jpg);
}
.system-text {
	margin: -1em 1em;
	padding: 25px 10px;
	position: relative;
	max-width: 100%;
}
@media screen and (min-width: 768px ){
	.system-box:nth-child(odd) .ttl-system,
	.system-box:nth-child(even) .ttl-system{
		text-align: center;
		padding: 0;
	}
	.system-box .ttl-system {
		padding: 0;
	}
	.tx-pink.ttl-system span {
		border-bottom: 5px solid #d80c18;
		display: inline-block;
		text-shadow:0px 2px 5px #000000;
	}
	.tx-green.ttl-system span {
		border-bottom: 5px solid #d80c18;
		display: inline-block;
		text-shadow:0px 2px 5px #000000;
	}
	.tx-white.ttl-system span {
		border-bottom: 5px solid #fff;
		display: inline-block;
		text-shadow:0px 2px 5px #000000;
	}
	.ttl-system-wrapper { 
		background-size: contain;
		background-color: #000;
	}
	.system-text {
		margin-top: -50px;
		margin-left: auto;
		margin-right: auto;
	}
}
@media screen and (min-width: 1024px ){
	.system-box {
		position: relative;
		margin: 0;
	}
	.system-text {
		margin: 0;
		position: absolute;
		bottom: -30px;
		width: 100%;
		max-width: 380px;
		z-index: 1;
	}
	.system-box:nth-child(odd) .system-text {
		right: 0;
	}
	.system-box:nth-child(even) .system-text {
		left: 0;
	}
}

@media screen and (min-width: 1400px ){
	.system-box:nth-child(odd) .system-text {
		right: 50px;
	}
	.system-box:nth-child(even) .system-text {
		left: 50px;
	}
}
.system-text:before {
	font-family: 'Allura', cursive;
	font-size: 2rem;
	color: #fff;
	transform: rotate(-10deg);
	position: absolute;
	top: -30px;
	left: 10px;
}
.project .system-text:before {
	content:"Project";
}
.w-major .system-text:before {
	content:"W major system";
}
.facility .system-text:before {
	content:"Facility";
}
@media screen and (min-width: 768px ){
	.ttl-system {
		font-size: 1.8rem;
		text-align: center;
	}
}
@media screen and (min-width: 1280px ){
	.system-text {
		max-width: none;
		min-width: 500px;
		width: 30vw;
	}
	.system-text .bracket {
		/*font-size: 1vw;*/
	}
	.ttl-system {
		font-size: 2.5vw;
	}
}
/*-------------------------------------------------------------
SUPPORT
---------------------------------------------------------------*/
#support {
	margin-top: 80px;
}
.support-box {
	background-size: 80%;
	padding: 30px 0;
}
.support-box.debut {
	background-image: url(../../img/bg_support_debut.png);
	margin: 0;
}
.support-box.job {
	background-image: url(../../img/bg_support_job.png);
}
.support-photo {
	position: relative;
}
.support-text {
	background-color: #fff;
	padding: 2em 1em;
	/*font-size: .8rem;*/
	line-height: 1.5;
	position: relative;
}
.debut .support-text {
	background: #fff url(../../img/illust_video.png) right 10px bottom / 80px no-repeat;
}
.job .support-text {
	background: #fff url(../../img/illust_star.png) right 10px top / 50px no-repeat;
}
.support-text:before {
	font-family: 'Allura', cursive;
	position: absolute;
	font-size: 1.6rem;
}
.debut .support-text:before {
	content: "Debut!";
	top: 10px;
	right: 10px;
	transform: rotate(15deg);
}
.job .support-text:before {
	content: "Jobs";
	top: 0;
	left: 10px;
	transform: rotate(-15deg);
}
.ttl-support {
	margin-bottom: .25em;
	line-height: 1.3;
	font-size: x-large;
}
.debut .support-box-inner {
	margin-right: 4%;
}
.job .support-box-inner {
	margin-left: 4%;
}
.support-photo {
	position: relative;
}
.debut .support-photo {
	text-align: right;
}
.photo-student {
	position: absolute;
	bottom: 0;
}
.photo-class {
	width: 60%;
}
.debut .photo-student {
	width: 150px;
	left: 20px;
}
.job .photo-student {
	width: 130px;
	right: 20px;
}
#support .btn {
	text-align: center;
	margin-top: -1.2em;
}
@media screen and (min-width: 768px ){
	.support-box-wrapper {
		display: flex;
	}
	.support-box {
		width: 50%;
		position: relative;
	}
	.support-box-inner {
		width: 96%;
	}
	.debut .support-box-inner {
		margin: 0 auto 0 0;
	}
	.job .support-box-inner {
		margin: 0 0 0 auto;
	}
	.support-box .btn {
		position: absolute;
		display: inline-block;
		bottom: -20px;
		left: 50%;
		transform: translateX(-50%);
	}
	.support-box .btn a {
		white-space: nowrap;
	}
}
@media screen and (min-width: 1024px ){
	.support-box-inner {
		display: flex;
		width: auto;
	}
	.debut .support-box-inner {
		margin: 40px 20px 40px auto;
		justify-content: flex-end;
	}
	.job .support-box-inner {
		margin: 40px auto 40px 20px;
		justify-content: flex-start;
	}
	.support-box-inner > div {
		width: 50%;
		max-width: 330px;
	}
	.support-photo {
		align-self: flex-end;
		position: relative;
	}
	.photo-class {
		width : 100%;
	}
	.photo-student {
		position: static;
	}
	.job .support-text {
		order: -1;
	}
	.debut .photo-student {
		width: auto;
		margin-top: -30px;
		position: relative;
		right: -7px;
		z-index: 1;
		left: auto;
	}
	.job .photo-student {
		width: auto;
		margin-top: -30px;
		position: relative;
		right: 10px;
		z-index: 1;
		left: auto;
	}
	.support-text:before {
		font-size: 2rem;
	}
	.debut .support-text:before {
		top: -15px;
		right: -10px;
	}
	.job .support-text:before {
		top: -15px;
		left: -10px;
	}
}

/*-------------------------------------------------------------
START
---------------------------------------------------------------*/
.start-links {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}
@media screen and (max-width: 767px){
	.start-links-list {
		width: 49%;
		margin-bottom: 2%;
		text-align: center;
		padding: 1em;
	}
	.start-links-list:nth-child(odd) {
		background-color: #252a31;
		border-radius: 0 10px 10px 0;
	}
	.start-links-list:nth-child(even) {
		background-color: #252a31;
		border-radius: 10px 0 0 10px;
	}
}
.start-links-list a {
	display: block;
	cursor: pointer;
}
@media screen and (min-width: 768px){
	.star-links-list {
		width: 25%;
		text-align: center;
	}
}
.start-text {
	color: #fff;
	font-size: .8rem;
	line-height: 1.3;
}
.ttl-start-links {
	color: #fff;
	line-height: 1.3;
	font-size: .9rem;
	position: relative;
	padding-top: 60px;
	margin: 0 auto;
	transition-duration: .3s;
}
.ttl-start-links:before {
	position: absolute;
	display: block;
	content: "";
	width: 50px;
	height: 50px;
	background-color: #000;
	border-radius: 50%;
	top: 0;
	left: 50%;
	transform: translateX(-50%);
}
.ttl-start-links:hover:before {
	background-color: #666;
}
.ttl-start-links:after {
	position: absolute;
	font-size: 1.4rem;
	top: 10px;
	left: 50%;
	transform: translateX(-50%);
}
.shiryo .ttl-start-links:after {
	content: "\f02d";
}
.opencampus .ttl-start-links:after {
	content: "\f001";
}
.kengaku .ttl-start-links:after {
	content: "\f086";
	font-weight: normal;
}
.line .ttl-start-links:after {
	content: "\f3c0";
}
.start-box {
	position: relative;
	margin-top: 30px;
}
.start-box .step-one {
	position: absolute;
	bottom: 0;
	width: 70px;
	left: 50%;
	top: 50%;
	transform: translate(-50%, -50%);
}
.img-loop {
	width: 100%;
	height: 90px;
	position: relative;
	background-size: auto 100%;
}
.img-loop.right{
	background: url(../../img/start01_sp.jpg) repeat-x 0 0;
	animation: bg-slider-l 72s linear infinite; 
}
.img-loop.left {
	background: url(../../img/start02_sp.jpg) repeat-x 0 0;
	animation: bg-slider-r 72s linear infinite; 
}
@media screen and (min-width: 768px){
	.start-box .step-one {
		width: auto;
	}
	.img-loop {
		height: 180px;
	}
	.img-loop.right{
		background: url(../../img/start01.jpg) repeat-x 0 0;
		animation: bg-slider-l 72s linear infinite; 
	}
	.img-loop.left {
		background: url(../../img/start02.jpg) repeat-x 0 0;
		animation: bg-slider-r 72s linear infinite; 
	}
	.start-links-list {
		width: 25%;
		padding: 1em 0;
		text-align: center;
	}
	.start-links-list a {
		border-right: 1px solid #000;
	}
	.start-links-list:last-child a {
		border-right: 0;
	}
	.start-links-list a .ttl-start-links:before {
		color: #fff;
	}
	.start-links-list:nth-child(odd) a .ttl-start-links {
		color: #d80c18;
	}
	.start-links-list:nth-child(even) a .ttl-start-links {
		color: #d80c18;
	}
	.start-links-list a .ttl-start-links:after {
		color: #fff;
	}
}
@keyframes bg-slider-r {
	from { background-position: 0 0; }
	to { background-position: 1440px 0; }
}
@keyframes bg-slider-l {
	from { background-position: 0 0; }
	to { background-position: -1440px 0; }
}

/*-------------------------------------------------------------
SCHOOL INFO
---------------------------------------------------------------*/
.ttl-info {
	position: relative;
	margin-bottom: 10px;
	font-size: 32px;
}
.ttl-info:before {
	content: "";
	width: 30px;
	height: 40px;
	display: inline-block;
	position: relative;
	top: 10px;
	left: -5px;
}
.ttl-info.news:before{
	background: url(../../img/icon_news.png) center center / contain no-repeat;
} 
.ttl-info.line:before{
	background: url(../../img/icon_line.png) center center / contain no-repeat;
} 
.ttl-info.twitter:before{
	background: url(../../img/icon_twitter.png) center center / contain no-repeat;
} 
.ttl-info.movie:before{
	background: url(../../img/icon_youtube.png) center center / contain no-repeat;
}
.ttl-info.instagram:before{
	background: url(../../img/icon_instagram.png) center center / contain no-repeat;
}

/* news */
.info-box {
	padding: 0 2%;
}
.tape-box {
	background-color: #fff;
	padding: 30px 20px;
	position: relative;
}
.tape-box:before {
	content: "";
	display: block;
	width: 30%;
	height: 18px;
	background: url(../img/bg_checker.png) left top / contain repeat-x;
	position: absolute;
	top: -10px;
	left: 50%;
	transform: translateX(-50%);
}
.news-list-item:nth-child(odd){
	background-color: #eef0f1;
}
.news-list-item {
	padding: 10px;
}
.news-item {
	display: flex;
	justify-content: flex-start;
}
.news-item .news-type {
	flex-shrink: 0;
}
.news-item .news-type span {
	color: #fff;
	padding: 4px;
	font-size: .8rem;
}
.news-text {
	margin-left: 1em;
}
.news-text .date {
	font-size: .9rem;
}
.news-text .new {
	font-size: .7rem;
	background-color: red;
	margin-left: .5em;
	padding: 3px 1em 1px;
	color: #fff;
	line-height: 1;
}
.news-body {
	font-size: .8rem;
	line-height: 1.3;
}
.sp-line .btn-line {
	margin-top: -50px;
}
.sp-line .btn-line a {
	background-color: #01b901;
	color: #fff;
	font-size: 1.6rem;
	font-weight: bold;
	width: 100%;
	padding: .5em 0;
	display: inline-block;
	border-radius: 5px;
}
.sp-line .btn-line a:before {
	content: "";
	display: inline-block;
	width: 40px;
	height: 30px;
	background: url(../../img/icon_line_w.png) left top / contain no-repeat;
	position: relative;
	top: 5px;
}
.movie-wrapper {
	position: relative;
	padding-top: 56.25%;
	height: 0;
	overflow: hidden;
}
.movie-wrapper iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}
.twitter-wrapper {
	max-height: 280px;
	overflow: scroll;
}
@media screen and (min-width: 768px){
	.info-wrapper {
		display: flex;
		flex-wrap: wrap;
		justify-content:space-between;
		/*margin-bottom: 50px;*/
	}
	.info-box {
		margin-bottom: 30px;
	}
	.tape-box {
		box-shadow: 0 0 100px -34px rgba(0, 0, 0, 0.8);
	}
	.info-box.news {
		width: 66%;
	}
	.info-box.line {
		width: 33%;
	}
	.info-box.twitter {
		width: 49%;
	}
	.info-box.movie {
		width: 49%;
	}
	.news-list {
		height: 400px;
		overflow: scroll;
	}
	.pc-line {
		height: 400px;
		padding: 0 20px;
	}
}
/*-------------------------------------------------------------
CampusLife Instagram
---------------------------------------------------------------*/
.campuslife-insta-box {
	position: relative;
}
.campuslife-insta-box .bg-photo img {
	width: 100%;
}
.ttl-campuslife {
	position: absolute;
	top: 50%;
	background-color: rgba(0,0,0,.7);
	width: 100%;
	text-align: center;
	transform: translateY(-50%);
	padding: .25em 0;
}
.campuslife-insta-box .btn {
	position: absolute;
	bottom: -.8em;
	left: 50%;
	transform: translateX(-50%);
}
.campuslife-insta-box .btn a {
	white-space: nowrap;
}
@media screen and (min-width: 1024px){

	.campuslife-insta {
		display: flex;
	}
	.campuslife-insta-box {
		width: 50%;
	}

}




/** SocialContentItem **/
.socialContent {
	position:relative;
	display:flex;
	justify-content:space-between;
	padding-bottom: 3.75em;
	overflow: hidden;
}

.socialContent:before {
	content: "";
	display: block;
	width: 15%;
	height: 18px;
	background: url(../img/bg_checker.png) left top / contain repeat-x;
	position: absolute;
	top: 60px;
	left: 50%;
	transform: translateX(-50%);
}

.socialContentItem {
	position:relative;
	display:block;
	width:100%;
}
.socialContentItem__head {
	margin:auto;
	display:block;
	text-align:center;
}
.socialContentItem__body {
	margin:auto;
	display:block;
	text-align: center;
}

/* * + .socialContentItem { margin-top:60px; } */
* + .socialContentItem__body { padding-top:1.95em }

.socialContentItem__body .btn { margin-top: 1.25em }

@media screen and (max-width:767px) {

	.socialContent {
		padding: 0 0 30px 0;
	}

	.socialContent:before {
		width: 30%;
	}

}

/** InstagramScroll **/

.instagramScroll {
	position:relative;
	display:block;
}
.instagramScroll .simply-scroll-container,
.instagramScroll .simply-scroll-clip {
	position:relative;
	overflow:hidden;
}
.instagramScroll__list {
	margin:0;
	padding:0;
	display:flex;
}
.instagramScroll__list > * {
	margin:0 10px;
	padding:0;
	display:block;
	width:150px;
	height:150px;
	flex:none;
}
.instagramScroll > :nth-child(n+2) { margin-top:20px; }
.instagramScroll > :nth-child(2n+1) .instagramScroll__list { justify-content:flex-start; }
.instagramScroll > :nth-child(2n)   .instagramScroll__list { justify-content:flex-end;   }



/* ----------------------------------------------
「notice」お知らせ（注意書き）
---------------------------------------------- */

.blNotice { margin-bottom: 50px; border: 5px solid #F44336; padding: 20px; background-color: #FFFFFF; font-size: 14px;}
.blNotice > p {
	font-size: 20px;
	font-weight: bold;
	color: #F44336;
	border-bottom: 2px dotted #F44336;
	padding-bottom: 5px;
	margin-bottom: 10px;
}
@media screen and (max-width: 767px) {
.blNotice > p {
	font-size: 16px;
}
}


.slick-prev:before, .slick-next:before{
	color: #000!important;
    font-family: 'Font Awesome 5 Free';
	font-weight: bold;
    font-size: 40px;
    line-height: 1;
    opacity: 1;
	position: absolute;
	top: 50%;
	-webkit-transform: translateY(-50%); /* Safari用 */
	transform: translateY(-50%);
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}
.slick-prev:before{
	content: '\f053';
	left: -10px;
}
.slick-next:before{
	content: '\f054';
	right: -10px;
}



.coronavirus {text-align: center}
@media print,screen and (min-width:768px){.coronavirus {padding: 0 25%}}
@media screen and (max-width:767px){.coronavirus {padding: 0 2%}}


.coronavirus aside{
	border: .25em solid #F44336;
	padding: 1em 1em 0;
}

.coronavirus aside h2{
	border-bottom: 3px dotted #F44336;
	color: #F44336;
	font-size: 1.4rem;
	margin-bottom: 1em;
}

.coronavirus a.btn {
    display: block;
    font-weight: bold;
	font-size: smaller;
    color: #FFF;
    text-align: center;
    padding: .5em;
    margin: 20px auto 0;
    background: #c71e21;
    -moz-border-radius: 5px;
    -webkit-border-radius: 5px;
    border-radius: 4px;
    box-shadow: 2px 4px 0 rgba(170,47,38,1);
    text-shadow: -1px 0 0 #666;
    border: none;
}
@media print,screen and (min-width:768px){.coronavirus a.btn {width: 50%}}
@media screen and (max-width:767px){.coronavirus a.btn {width: 100%}}

.coronavirus a.btn {
    transition-property: background-color;
}