@charset "utf-8";

/* -----------------------------
	concept-area
-------------------------------- */

.concept-area {
	position: relative;
	padding: 150px 0 0;
}

.concept-area::before {
	position: absolute;
	content: "";
	width: 176px;
	height: 197px;
	background: url("../img/illust-10.png") no-repeat center / cover;
	left: -30px;
	top: 45px;
	z-index: -1;
}

.concept-area::after {
	position: absolute;
	content: "";
	width: 288px;
	height: 236px;
	background: url("../img/illust-12.png") no-repeat center / cover;
	right: 150px;
	top: 55px;
	z-index: -2;
}

.concept-area .deco03-box {
	position: relative;
	padding: 0 0 130px;
}

.concept-area .deco03-box::before {
	position: absolute;
	content: "";
	width: 199px;
	height: 271px;
	background: url("../img/illust-14.png") no-repeat center / cover;
	left: -70px;
	bottom: 25px;
	z-index: -1;
}

.concept-area .deco03-box::after {
	position: absolute;
	content: "";
	width: 141px;
	height: 253px;
	background: url("../img/illust-13.png") no-repeat center / cover;
	right: -60px;
	bottom: 140px;
	z-index: -1;
}

.concept-area .inner {
	border: var(--black) solid 2px;
	border-radius: 5px;
	position: relative;
	background: var(--white);
}

.concept-area .inner::before {
	content: "";
	width: 100%;
	height: 100%;
	background: var(--gradation04);
	position: absolute;
	left: 10px;
	top: 10px;
	border-radius: 5px;
	z-index: -1;
}

.concept-area .deco01-box {
	display: block;
	border-bottom: var(--black) solid 2px;
	/*background: #F5F5F5;*/
	width: 100%;
	height: 60px;
	position: relative;
}

.concept-area .deco01-box::before {
	content: "";
	width: calc(100% - 20px);
	height: 40px;
	background: #F5F5F5;
	position: absolute;
	left: 0;
	top: 0;
	right: 0;
	bottom: 0;
	margin: auto;
	border-radius: 20px;
}

.concept-area .deco01-box div {
	display: block;
	width: calc(100% - 20px);
	height: 40px;
	background-image: url("../img/aboutus-deco-vone.png") , url("../img/aboutus-deco-btn.png");
	background-repeat: no-repeat;
	background-position: left 20px center , right 20px center;
	background-size: auto 13px , auto 15px;
	position: absolute;
	left: 0;
	top: 0;
	right: 0;
	bottom: 0;
	margin: auto;
	z-index: 1;
}

.concept-area .txt-box {
	padding: 60px 70px 40px;
	position: relative;
}

.concept-area .txt-box::before {
	content: "";
	width: 960px;
/*
	width: calc(100% - 140px);
*/
	height: calc(100% - 100px);
	background: var(--gray02);
	position: absolute;
	left: 70px;
	top: 60px;
	border-radius: 5px;
}

.concept-area .txt-box::after {
	content: "";
	background: url("../img/character.png") no-repeat center / 100% auto;
	width: 184px;
	height: 530px;
	position: absolute;
	right: 50px;
	bottom: 0;
	top: 0;
	margin: auto;
}

.concept-area .txt-box div {
	position: relative;
	z-index: 1;
	padding: 55px 60px;
}

.concept-area .txt-box .image {
	width: 120px;
	height: 30px;
}

.concept-area .txt-box .image img {
	width: 100%;
}

.concept-area .txt-box h3 {
	font-size: 4.0rem;
	font-weight: 600;
	color: var(--blue);
	line-height: 1.4;
	padding: 20px 0 0;
}

.concept-area .txt-box .txt {
	padding: 30px 0 0;
	width: 590px;
}

.concept-area .txt-box .txt span {
    background: linear-gradient(transparent 50%, #DBEFFA 50%);
}

.concept-area .deco02-box {
	width: 1060px;
	height: 14px;
	background-image: url("../img/aboutus-deco-time.png") , url("../img/aboutus-deco-time.png");
	background-repeat: no-repeat;
	background-position: left center , right center;
	background-size: auto 14px , auto 14px;
	margin: 0 auto 57px;
	position: relative;
}

.concept-area .deco02-box::before {
	content: "";
	width: 930px;
	height: 1px;
	margin: auto;
	background: #C9C9C9;
	position: absolute;
	left: 0;
	top: 0;
	right: 0;
	bottom: 0;
}

.concept-area .deco02-box::after {
	content: "";
	width: 7px;
	height: 7px;
	background: #C9C9C9;
	position: absolute;
	left: 63px;
	top: 0;
	bottom: 0;
	border-radius: 4px;
	margin: auto;
}

.concept-area .deco02-box div {
	display: block;
	background: url("../img/aboutus-deco-saisei.png") no-repeat center bottom / auto 17px;
	padding: 0 0 26px;
	width: 100%;
	height: 17px;
	box-sizing: content-box;
}

@media screen and (max-width: 768px){
	
	.concept-area {
		padding: 50px 0 0;
	}

	.concept-area::before {
		width: 88px;
		height: 99px;
		left: -15px;
		top: 15px;
	}

	.concept-area::after {
		width: 144px;
		height: 119px;
		right: -20px;
		top: -10px;
	}

	.concept-area .deco03-box {
		padding: 0 0 50px;
	}

	.concept-area .deco03-box::before {
		width: 100px;
		height: 136px;
		left: -70px;
		bottom: -25px;
		z-index: -2;
	}

	.concept-area .deco03-box::after {
		width: 70px;
		height: 125px;
		right: -30px;
		bottom: 30px;
		z-index: -2;
	}

	.concept-area .inner {
		width: calc(100% - 20px);
	}

	.concept-area .inner::before {
		left: 5px;
		top: 5px;
	}

	.concept-area .deco01-box {
		height: 40px;
	}

	.concept-area .deco01-box::before {
		width: calc(100% - 10px);
		height: 30px;
	}

	.concept-area .deco01-box div {
		width: calc(100% - 10px);
		height: 30px;
		background-position: left 10px center , right 10px center;
		background-size: auto 9px , auto 10px;
	}

	.concept-area .txt-box {
		padding: 30px 20px;
		margin: 0 0 20px;
	}

	.concept-area .txt-box::before {
		width: calc(100% - 20px);
		height: calc(100% - 215px);
		left: 0;
		right: 0;
		top: auto;
		bottom: 0;
		margin: 0 auto;
	}

	.concept-area .txt-box::after {
		content: "";
		background: url("../img/character-sp.png") no-repeat center / 100% auto;
		width: 184px;
		height: 196px;
		position: absolute;
		right: 0;
		left: 0;
		bottom: auto;
		top: 20px;
		margin: 0 auto;
	}
	
	.concept-area .txt-box div {
		padding: 230px 10px 0;
	}

	.concept-area .txt-box h3 {
		font-size: 3.0rem;
		padding: 10px 0 0;
	}

	.concept-area .txt-box .txt {
		padding: 10px 0 0;
		width: 100%;
		line-height: 2;
	}

	.concept-area .deco02-box {
		width: calc(100% - 20px);
		height: 7px;
		background-size: auto 7px , auto 7px;
		margin: 0 auto 40px;
	}

	.concept-area .deco02-box::before {
		width: calc(100% - 60px );
		margin: auto;
	}

	.concept-area .deco02-box::after {
		width: 3px;
		height: 3px;
		left: 30px;
	}

	.concept-area .deco02-box div {
		background: url("../img/aboutus-deco-saisei.png") no-repeat center bottom / 70px auto;
		padding: 0 0 15px;
		height: 12px;
	}
	
}

/* -----------------------------
	info-area
-------------------------------- */

.info-area {
	background: url("../img/blue-bg.jpg") no-repeat center / cover;
	text-align: center;
	padding: 130px 0 180px;
	position: relative;
}

.info-area .copy {
	background: var(--white);
	border: var(--gray02) solid 5px;
	border-radius: 5px;
	padding: 80px 60px;
	position: relative;
}

.info-area .copy::before {
	content: "";
	background: url("../img/illust-02.png") no-repeat center / cover;
	width: 144px;
	height: 71px;
	position: absolute;
	left: -45px;
	bottom: -24px;
}

.info-area .copy::after {
	content: "";
	background: url("../img/illust-12.png") no-repeat center / cover;
	width: 120px;
	height: 100px;
	position: absolute;
	right: -27px;
	top: -45px;
}

.info-area .copy h3 {
	color: var(--mint-green);
	font-size: 3.0rem;
	font-weight: 500;
	line-height: 1.5;
}

.info-area .copy .logo {
	width: 360px;
	margin: 0 auto 30px;
}

.info-area .copy .logo img {
	width: 100%;
}

.info-area .txt {
	/*color: var(--white);*/
	padding: 30px 0 0;
	line-height: 2.25;
	font-weight: 500;
	font-size: 1.7rem;
}

.info-area .txt span {
    background: linear-gradient(transparent 50%, rgba(255,255,255,0.2) 50%);
}

.scroll_down {
	position: absolute;
	display: block;
	left: 0;
	right: 0;
	margin: 0 auto;
	bottom: -80px;
	width: 1px;
	height: 200px;
}

.scroll_down::before ,
.scroll_down:after {
	content: '';
	position: absolute;
	bottom: 0;
	left: 0;
	width: 1px;
	height: 200px;
	background: #ddd;
}

.scroll_down:after {
	background: #FFE45B;
}

#type01:after {
  animation: sdl01 3s cubic-bezier(1, 0, 0, 1) infinite;
}

@keyframes sdl01 {
  0% {
    transform: scale(1, 0);
    transform-origin: 0 0;
  }
  50% {
    transform: scale(1, 1);
    transform-origin: 0 0;
  }
  50.1% {
    transform: scale(1, 1);
    transform-origin: 0 100%;
  }
  100% {
    transform: scale(1, 0);
    transform-origin: 0 100%;
  }
}

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

	.info-area {
		padding: 50px 20px 70px;
		text-align: left;
	}

	.info-area .copy {
		padding: 30px 15px;
		margin: 0 0 20px;
	}

	.info-area .copy::before {
		width: 72px;
		height: 35px;
		left: -20px;
		bottom: -20px;
	}

	.info-area .copy::after {
		width: 60px;
		height: 50px;
		right: -20px;
		top: -20px;
	}

	.info-area .copy h3 {
		font-size: 2.2rem;
	}
	
	.info-area .copy .logo {
		width: 260px;
		margin: 0 auto 10px;
	}

	.info-area .txt {
		padding: 20px 0 0;
		line-height: 2;
		font-size: 1.6rem;
	}

	.scroll_down {
		bottom: -50px;
		height: 100px;
	}

	.scroll_down::before ,
	.scroll_down:after {
		height: 100px;
	}
}


/* -----------------------------
	audition-area
-------------------------------- */

.audition-area {
	background: 
		url("../img/aboutus-audition-bg.png") no-repeat center / cover,
		url("../img/top-character-bg-pc.png") no-repeat center bottom / 100% auto;
	padding: 160px 0 100px;
	text-align: center;
	position: relative;
	/*background: url("../img/blue-bg2.png") #00408E no-repeat center top / 100% auto;
	background: var(--gradation02);*/
	
}
.audition-area::before ,
.audition-area::after ,
.audition-area .deco::before ,
.audition-area .deco::after {
	content: "";
	position: absolute;
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
	z-index: 2;
}
.audition-area::before {
	width: 282px;
	height: 387px;
	background-image: url("../img/illust-14.png");
	left: -40px;
	top: -40px;
}
.audition-area::after {
	width: 258px;
	height: 442px;
	background-image: url("../img/illust-15.png");
	left: 80px;
	left: calc((100% - 1400px) / 2);
	top:  340px;
}
.audition-area .deco::before {
	width: 281px;
	height: 496px;
	background-image: url("../img/illust-13.png");
	right: -80px;
	top: -30px;
}
.audition-area .deco::after {
	width: 200px;
	height: 258px;
	background-image: url("../img/illust-03.png");
	right: 120px;
	right: calc((100% - 1250px) / 2);
	top: 500px;
}

.audition-area .copy {
	font-size: 2.6rem;
	font-weight: 500;
	position: relative;
	display: inline-block;
	padding: 50px 0 30px;
	margin: 0 auto 50px;
	width: 612px;
}

.audition-area .copy::before {
	content: "";
	background: url("../img/aboutus-audition-deco.png") no-repeat center / cover;
	width: 73px;
	height: 65px;
	position: absolute;
	top: 10px;
	left: 10px;
	z-index: 1;
}

.audition-area .copy::after {
	content: "";
	background: url("../img/aboutus-audition-txt.png") no-repeat center top / 100% auto;
	width: 612px;
	height: 135px;
	position: absolute;
	left: 0;
	right: 0;
	margin: 0 auto;
	top: 0;
}

.audition-area .copy span {
	position: relative;
	z-index: 2;
	background: linear-gradient(transparent 50%, #FFE45B 50%);
	padding: 0 10px;
}

.audition-area .image {
	height: 400px;
	margin: 0 0 50px;
}

.audition-area .image img {
	height: 100%;
	
	user-drag: none; /* ドラッグ禁止 */
	user-select: none; /* 選択禁止 */
	-webkit-user-drag: none; /* Webkitブラウザ（ChromeやSafari）向け */
	-webkit-user-select: none;
	-moz-user-select: none; /* Firefox向け */
	-ms-user-select: none; /* IE向け */
	pointer-events: none; /* 右クリックや長押し禁止 */
}

/*.audition-area .txt-box {
	background: #fff;
	border-radius: 20px;
	padding: 60px;
	margin: 0 auto;
	width: 1200px;
}*/

.audition-area .txt {
	font-size: 1.8rem;
	line-height: 2;
	padding: 30px 0 0;
}

.audition-area .txt span {
    background: linear-gradient(transparent 50%, #FFEF9C 50%);
}

.audition-area .btn {
	margin: 50px auto 0;
	width: 360px;
	height: 80px;
	line-height: 80px;
	font-size: 1.8rem;
}

.audition-area .btn {
	text-align: left;
}

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

	.audition-area {
		padding: 70px 20px 50px;
		text-align: left;
	}

	.audition-area::before {
		width: 73px;
		height: 100px;
		left: -26px;
		top: 140px;
		z-index: -1;
	}

	.audition-area::after {
		display: none;
	}

	.audition-area .deco::before {
		width: 72px;
		height: 126px;
		right: -30px;
		top: 300px;
		z-index: -1;
	}

	.audition-area .deco::after {
		display: none;
	}

	
	.audition-area .copy {
		font-size: 1.6rem;
		padding: 20px 0 20px;
		margin: 0 auto 30px;
		width: 100%;
	}

	.audition-area .copy::before {
		background: url("../img/aboutus-audition-deco.png") no-repeat center / cover;
		width: 35px;
		height: 30px;
		top: 0;
		left: -20px;
	}

	.audition-area .copy::after {
		background: url("../img/aboutus-audition-txt.png") no-repeat center / auto 100%;
		width: 100%;
		height: 67.5px;
	}

	.audition-area .copy span {
		padding: 0 5px;
	}

	.audition-area .image {
		height: auto;
		margin: 0 0 20px;
	}

	.audition-area .image img {
		height: auto;
		width: 100%;
	}

	.audition-area .txt {
		font-size: 1.6rem;
		padding: 15px 0 0;
	}

	.audition-area .btn {
		margin: 30px auto 0;
		width: 100%;
		font-size: 1.6rem;
	}
	
}


/* -----------------------------
	talent-area
-------------------------------- */

.talent-area .box {
	text-align: center;
	padding: 100px 0;
}

.talent-area .illust {
	padding: 50px 0 100px;
}

.talent-area .link-area .btn {
	margin: 0 auto;
	text-align: left;
}


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

	.talent-area .box {
		padding: 50px 20px;
	}

	.talent-area .illust {
		padding: 30px 0;
	}

	.talent-area .illust img {
		width: 100%;
	}
	
}

