@charset "UTF-8";

/* -----------------------------------------------------------
   PEOPLE
------------------------------------------------------------*/
#contents-visual .ttl-cover h1.ttl{
	padding-top: 53.125%;
}
.cont-2nd #interview .ttl-box,
.cont-2nd #qa .ttl-box,
.cont-2nd #other .ttl-box{
	margin-bottom: 64px;
}
#interview .ttl-box h2.ttl{
	background-image: url(../people/img/ttl_interview.png);
}
#qa .ttl-box h2.ttl{
	background-image: url(../career/img/ttl_qa.png);
}
#other .ttl-box h2.ttl{
	background-image: url(../people/img/ttl_other.png);
}
.cont-2nd #interview{
	margin-bottom: 120px;
}
#qa .btn-common{
	width: max(22% , 260px);
	margin:0 auto;
}

@media all and (max-width: 767px) {
	.cont-2nd #interview{
		margin-bottom: 16.6vw;
	}
	.cont-2nd #interview .ttl-boxm,
	.cont-2nd #other .ttl-box{
		margin-bottom: 7.6vw;
	}
	.cont-2nd #qa .ttl-box{
		display: flex;
		flex-wrap: wrap;
	}
	.cont-2nd #qa .ttl-box .toptxt-box{
		order: 2;
	}
	.cont-2nd #qa .ttl {
		order: 1;
	}
}

/* -----------------------------------------------------------
   PEOPLE-PAGE
------------------------------------------------------------*/
#people-container{
	padding-top: 70px;
}
#people-container .inner{
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
}
#people-container .inner .main-photo{
	width: 50%;
	order: 2;
}
#people-container .inner .main-photo img{
	width: 100%;
	opacity: 0;
}
#people-container .inner .main-photo.is-active img{animation: fadeIn 0.7s cubic-bezier(0.33, 1, 0.68, 1) forwards;}

#people-container .inner .txt-wrap{
	order: 1;
	width: 46%;
	display: flex;
	flex-wrap: wrap;
	justify-content: end;
}
#people-container .inner .txt-wrap .copy{
	width: 100%;
	font-size: min(3.6rem,2.8vw);
	line-height: 1.8;	
	font-weight: 300;
	margin-bottom: 1.0em;
	letter-spacing: 0.14em;
}
#people-container .inner .txt-wrap .name{
	width: 100%;
	font-size: min(3.0rem,2.3vw);
	display: flex;
	font-weight: 600;
	letter-spacing: 0.2em;
	margin-bottom: 0.6em;
}
#people-container .inner .txt-wrap .name::before{
	content: "";
	display: block;
	width: 40px;
	height: 23px;
	background-color: var(--main-tbsblue);
	font-weight: 700;
	margin-right: 20px;
}
#people-container .inner .txt-wrap .cap{
	width: 90%;
	font-size: min(2.0rem,1.5vw);
	letter-spacing: 0.2em;
	margin-bottom: 2.0em;
}
#people-container .inner .txt-wrap .intro{
	width: 90%;
	font-size: 1.6rem;
	line-height: 1.8;
	letter-spacing: 0.2em;
}

#other .btn-common{
	width: max(36%, 320px);
    margin: 0 auto;
}
@media all and (max-width: 767px) {
	#people-container{
		padding-top: 52px;
		margin-bottom: 13vw;
	}
	#people-container .inner{
		padding: 0;
		display: block;
	}
	#people-container .inner .main-photo{
		width: 100%;
		order: 1;
	}
	#people-container .inner .txt-wrap{
		order: 2;
		width: 90%;
		margin: 0 auto;
		display: block;
		padding-top: 5vw;
	}
	#people-container .inner .txt-wrap .copy{
		width: 100%;
		font-size:1.8rem;
		text-align: right;
	}
	#people-container .inner .txt-wrap .name{
		font-size:2.3rem;
	}
	#people-container .inner .txt-wrap .name::before{
		width: 8vw;
		height: 4.6vw;
		margin-right: 16px;
	}
	#people-container .inner .txt-wrap .cap{
		width: 100%;
		font-size: 1.7rem;
		letter-spacing: 0.14em;
	}
	#people-container .inner .txt-wrap .intro{
		width: 100%;
		font-size: 1.3rem;
	}
	#other .btn-common{
		width: 100%;
        max-width: 400px;
        margin: 0 auto;
	}
}

/* -----------------------------------------------------------
   SCHECULE
------------------------------------------------------------*/
#schedule-sec{
	position: relative;
	margin-bottom: 18.75vw;
	z-index: 100;
}
#schedule-sec::before{
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	width: 49vw;
	height: 110vw;
	background: #F0F3F5;
	z-index: -1;
}
#schedule-sec .inner{
	padding: 50px 0 10.9375vw;
	position: relative;
}


#schedule-sec .inner .en-image{
	width: 7.8%;
	height: 0;
	padding-top:calc(65.2% * 0.078) ;
	background-image: url(../people/img/text_q1.png);
	background-size: 100%;
	background-repeat: no-repeat;
	position: absolute;
	top: max(-2.9vw,-29px);
	left: 0;
	text-indent: -9999px;
	overflow: hidden;
}
#schedule-sec .inner .q1-text{
	width: 96%;
	max-width: 888px;
	color: #0050FF;
	font-size: 3.0rem;
	letter-spacing: 0.1em;
	padding-bottom: 10px;
	display: block;
	margin:0 auto 7vw;
	position: relative;
}


#schedule-sec .inner .schedule-box{
	width: 100%;
	max-width: 888px;
	margin: 0 auto;
	background-color: #FFF;
	padding: 7vw 7vw 7vw 9vw;
	box-shadow: 20px 20px #98a6b5;
	box-sizing: border-box;
}
#schedule-sec ul.timeline{
	max-width: 678px;
	margin: 0 auto;
	list-style: none;
	position: relative;
}
#schedule-sec ul.timeline > li:before {
	content: '';
	position: absolute;
	top: 8px;
	bottom: -8px;
	width: 1px;
	background: #0050FF;
	left: 0;
	margin-left: -30px;
}
#schedule-sec ul.timeline > li:last-child:before{
	content: none;
}

#schedule-sec ul.timeline > li{
	position: relative;
	padding-bottom: 54px;
}
#schedule-sec ul.timeline > li:last-child{
	margin-bottom: 0;
}
#schedule-sec ul.timeline > li .circle{
	width: 24px;
	height: 24px;
	position: absolute;
	background: #0050FF;
	border-radius: 50%;
	left:-42px;
	top: 8px;
}
#schedule-sec ul.timeline > li time.date{
	display: block;
	width: 35%;
	position: absolute;
	font-size: 2.4rem;
	font-weight: bold;
	line-height: 3.6rem;
	text-align: left;
}
#schedule-sec ul.timeline > li .content{
	margin: 0 0 0 25%;
	position: relative;
	padding-top: 18px;
}
#schedule-sec ul.timeline > li .content .content-cover{

	text-align: left;
	border: 1px solid #CDD6DD;
	padding: 0 36px 36px;
	position: relative;
}
#schedule-sec ul.timeline > li .content .content-cover h3{
	font-size: 2.0rem;
	border: 1px solid #CDD6DD;
	color: #0050FF;
	display: inline-block;
	padding: 0.2em 1.0em;
	font-weight: bold;
	margin-bottom: 24px;
	margin-top: -18px;
	line-height: 1.4;
	background-color: #FFF;
	letter-spacing: 0.2em;
}
#schedule-sec ul.timeline > li  .content .content-cover p{
	font-size: 1.6rem;
	line-height: 3rem;
}
#schedule-sec .bg-pict{
	width: 71.5625%;	
	z-index: 1;
	margin-left: auto;
}
#schedule-sec .bg-pict img{
	opacity: 0;
}
#schedule-sec .bg-pict.is-active img{animation: slideIn_right 1s cubic-bezier(0.25, 1, 0.5, 1) forwards;}

@media all and (min-width: 768px) {
	#schedule-sec .inner .q1-text::after{
		content: "";
		display: block;
		position: absolute;
		width: 100%;
		max-width: 839px;
		border-bottom: 1px solid #CDD6DD;
		left: -13.5%;
		bottom: -10px;
	}
}

@media all and (max-width: 767px) {
	#schedule-sec{
		background: linear-gradient(to right, #F0F3F5 0%, #F0F3F5 70%, white 70%,  white 100%);
		margin-bottom: 64vw;
		padding-bottom: 10px;
	}
	#schedule-sec::before{
		content:none;
	}
	#schedule-sec .inner{
		width: 87%;
		margin: 0 auto;
		padding: 10vw 0;
	}
	#schedule-sec .inner .en-image{
		width: 14%;
    	height: 0;
		padding-top: calc(65.2% * 0.14);
		left: 0;
		top:min(-5.9vw,-21px);
	}
	#schedule-sec .inner .q1-text{
		width: 100%;
		font-size: 1.5rem;
		line-height: 1.4;
		border-bottom: 1px solid #CDD6DD;
		margin: 0 auto;
	}
	#schedule-sec .inner .schedule-box{
		margin-top: 6.6vw;
		box-shadow: 10px 10px #98a6b5;
		padding: 20px 20px 20px 90px;
	}
	#schedule-sec ul.timeline{
		width: 100%;
	}
	#schedule-sec ul.timeline > li:before{
		margin-left: -69px;
		top: 10px;
	}
	#schedule-sec ul.timeline > li{
		display: flex;
		padding-bottom: 6vw;
	}
	#schedule-sec ul.timeline > li time.date{
		display: block;
		width: 9vw;
		font-size: 1.3rem;
		font-weight: 700;
		line-height: 2.0rem;
		text-align: left;
		color: #000;
		padding-right: 6.6vw;
		left: -50px;
	}

	#schedule-sec ul.timeline > li .circle{
		width: 9px;
		height: 9px;
		left: -73px;
		top: 5px;
		margin: 0;
	}
	#schedule-sec ul.timeline > li  .content{
		width: 58.4vw;
		margin: 0;
		text-align: left;
		padding-top: 10px;
	}
	#schedule-sec ul.timeline > li .content .content-cover{
		padding: 0 15px 15px 15px;
	}
	#schedule-sec ul.timeline > li .content .content-cover h3{
		font-size: 1.3rem;
		font-weight: 700;
		line-height: 1.4;
		margin-bottom:0.8em;
		margin-top: -4vw;
		padding: 0.4em 0.8em;
		position: relative;
	}
	#schedule-sec ul.timeline > li .content .content-cover p{
		font-size: 1.3rem;
		line-height: 2.2rem;
	}
	#schedule-sec .bg-pict{
		width: 84%;
		z-index: 1;
		position: absolute;
		right: 0;
		bottom: -54vw;
	}

}

/* -----------------------------------------------------------
   QA TEXT
------------------------------------------------------------*/
#qatext-sec{
	position: relative;
	padding-top: 40px;
	background-color: var(--main-bgblue);
}
#qatext-sec .inner{
	padding: 0 0 70px;
}
#qatext-sec .bg-pict img{
	width: 100%;
	opacity: 0;
}
#qatext-sec .bg-pict.is-active img{animation: slideIn_left 1s cubic-bezier(0.25, 1, 0.5, 1) forwards;}

#qatext-sec .qatext-cover{
	width: 96%;
	position: relative;
	margin: 0 auto min(9.3vw,120px);
}
#qatext-sec .q2-cover{
	margin: 0 auto min(23vw,300px);
}

#qatext-sec .qatext-cover h2 span{
	font-size: 3.0rem;
	font-weight: 700;
	color: #FFF;
	letter-spacing: 0.1em;
	line-height: 1.4;
}
#qatext-sec .qatext-cover .text-box p{
	font-size: 1.8rem;
	line-height: 2.0;
}
#qatext-sec .qatext-cover .en-image{
	background-size: 100%;
	background-repeat: no-repeat;
	top: -76.5px;
	text-indent: -9999px;
	overflow: hidden;
	z-index: 10;
	position: absolute;
	width: 120px;
	height: 75px;
	background-size: cover;
}

@media all and (max-width: 767px) {
	#qatext-sec{
		padding-top: 0;
		padding-bottom: 0;
	}
	#qatext-sec .inner{
		padding: 0 0 12vw;
	}
	#qatext-sec::after {
		border-width: 0 0 200px 100vw ;
	}
	#qatext-sec .qatext-cover{
		width: 87%;
		margin: 0 auto 23vw;
	}
	#qatext-sec .qatext-cover .en-image{
		width: max(15.8vw, 62px);
		max-width: 100px;
		/*padding-top: calc(62.5%* 0.18);*/
		top: -4.2vw;
		background-size: contain;
	}
	#qatext-sec .qatext-cover h2 span{
		font-size: 1.5rem;
		letter-spacing: 0.06em;
	}
	#qatext-sec .qatext-cover .text-box p{
		font-size: 1.5rem;
		line-height: 1.6;
	}
}


/* ------------Q2-----------*/

#qatext-sec .q2-cover .en-image{
	background-image: url(../people/img/text_q2.png);
	right:0;
}
#qatext-sec .q2-cover h2{
	text-align: right;
	padding-right: 120px;
	margin-bottom: 100px;
	position: relative;
}
#qatext-sec .q2-cover h2:after{
	content: "";
	display: block;
	position: absolute;
	width: 686px;
	border-bottom: 1px solid #FFF;
	right: 0;
	bottom: -20px;
}
#qatext-sec .q2-cover .text-box{
	width: 47%;
	background: rgba(255,255,255,0.9);
	margin-left: auto;
	padding: 3.3vw;
	box-sizing: border-box;
	z-index: 2;
	position: relative;
}
#qatext-sec .q2-cover .bg-pict{
	position: absolute;
	top: 216px;
	left: 0;
	width: 58%;
	z-index: 1;
}


@media all and (min-width: 768px) {
	#qatext-sec .q2-cover .text-box{
		max-width: 552px;
	}
}

@media all and (max-width: 767px) {
	#qatext-sec .q2-cover{
		padding-top: 22vw;
	}
	#qatext-sec .q2-cover h2{
		width: 100%;
		font-size: 1.5rem;
		line-height: 1.4;
		position: absolute;
		top: 0;
		right: -6.5%;
		border-bottom: 1px solid #CDD6DD;
		padding-right: 25px;
		padding-bottom: 12px;
		margin-top: 37px;
	}
	#qatext-sec .q2-cover h2:after{
		content: none;
	}
	#qatext-sec .q2-cover h2 span{
		font-size: 1.5rem;
	}
	#qatext-sec .q2-cover .text-box{
		width: 100%;
		margin-left: auto;
		margin-right: auto;
		padding: 25px 35px;
	}
	#qatext-sec .q2-cover .bg-pict{
		position: relative;
		top: auto;
		left: auto;
		width: 100%;
		z-index: 1;
	}
}


/* ------------Q3,5-----------*/

#qatext-sec .q3-cover .en-image{
	background-image: url(../people/img/text_q3.png);
	left:0;
}
#qatext-sec .q5-cover .en-image{
	background-image: url(../people/img/text_q5.png);
	left:0;
}

#qatext-sec .q3-cover h2,
#qatext-sec .q5-cover h2{
	text-align: left;
	padding-left: 140px;
	margin-bottom: 100px;
	position: relative;
}
#qatext-sec .q3-cover h2:after,
#qatext-sec .q5-cover h2:after{
	content: "";
	display: block;
	position: absolute;
	width: 796px;
	border-bottom: 1px solid #FFF;
	left: 0;
	bottom: -20px;
}
#qatext-sec .q3-cover .text-box,
#qatext-sec .q5-cover .text-box{
	width: 68%;
	margin:0 auto;
	z-index: 2;
	position: relative;
	color: #FFF;
}
@media all and (min-width: 768px) {
	#qatext-sec .q3-cover h2:after,
	#qatext-sec .q5-cover h2:after{
		right: 0;
	}
}

@media all and (max-width: 767px) {
	#qatext-sec .q3-cover,
	#qatext-sec .q5-cover{
		padding-top: 40px;
	}
	#qatext-sec .q3-cover h2,
	#qatext-sec .q5-cover h2{
		text-align: left;
		padding-left: 0;
		margin-bottom: 35px;
		position: relative;
	}
	#qatext-sec .q3-cover h2:after,
	#qatext-sec .q5-cover h2:after{
		width: 90%;
		left: -6.5%;
	}
	#qatext-sec .q3-cover .text-box,
	#qatext-sec .q5-cover .text-box{
		width: 90%;
	}
}

/* ------------Q4-----------*/

#qatext-sec .q4-cover .en-image{
	background-image: url(../people/img/text_q4.png);
	right: 0;
}
#qatext-sec .q4-cover h2{
	text-align: right;
	padding-right: 120px;
	margin-bottom: 70px;
	position: relative;
}
#qatext-sec .q4-cover h2:after{
	content: "";
	display: block;
	position: absolute;
	width: 864px;
	border-bottom: 1px solid #FFF;
	right: 0;
	bottom: -20px;
}
#qatext-sec .q4-cover .text-box{
	width: 68%;
	margin:0 auto;
	z-index: 2;
	position: relative;
	color: #FFF;
}


@media all and (max-width: 767px) {
	#qatext-sec .q4-cover{
		padding-top: 40px;
	}
	#qatext-sec .q4-cover h2{
		text-align: right;
		margin-bottom: 28px;
		padding-right: 25px;
		margin-right: -6.5%;
	}
	#qatext-sec .q4-cover h2:after{
		width: 83%;
		bottom: -12px;
	}
	#qatext-sec .q4-cover .text-box{
		width: 90%;
		z-index: 2;
		position: relative;
		color: #FFF;
	}
	#qatext-sec > .bg-pict{
		width: 82%;
		height: 0;
		padding-top: calc(50% * 0.82);

	}
}
/* -----------------------------------------------------------
   PEOPLE-LIST OTHER
------------------------------------------------------------*/
@media all and (max-width: 767px) {
	#other{
		padding: 0 2%;
	}
	#other .ttl-box{
		width: 94%;
	}
}