/* CSS Document */


/* 講師紹介 */


.big-text span strong{
	font-size: 22px;
}

.history{
	justify-content: center;
    display: flex;
    flex-direction: column;
    width: 100%;
	background: #fff;
	padding-bottom: 30px;
}

.history-year ul{
	margin: auto;
}

.history-year{
	width: 100%;
	max-width: 750px;
	margin: auto;
}

.history-year li{
	display: flex;
	flex-direction: row;
	
}

.history-year .time{
	font-size: 18px;
	font-weight: 600;
	letter-spacing: 1px;
	padding: 20px;
	line-height: 32px;
	margin-right: 5px;
	width: 140px;
	position: relative;
}

.history-year .time::before{
	position: absolute;
	content: '';
	display: block;
	background: #d52423;
	border-radius: 50%;
	width: 20px;
	aspect-ratio:1/1;
	right:-10px;
	top:27px;
}

.history-year .sch_box{
	margin-left: 15px;
	padding: 20px;
	position: relative;
}

.history-year .sch_box::before{
	position: absolute;
	content: '';
	display: block;
	height: 100%;
	background: #d52423;
	width: 5px;
	left:-22px;
	top: 30px;
}

.history-year .sch_box p{
	font-size: 18px;
	font-weight: 600;
	padding-bottom: 0;
}

.history h7{
	z-index: 2;
	font-weight: 600;
	background: #d52423;
	color: #fff;
	font-size: 25px;
	text-align: center;
	display: inline;
}



/*　講師紹介///*/





/* 受講生　*/

#student{
	position: relative;
	z-index: 3;
	padding: 0 20px;
}

.student{
    display: flex;
    flex-direction: column;
    justify-content: center;
	align-items: center;
}

.student .intro-title p{
    margin-bottom: 10px!important;
}

.student .intro-title h5 {
    text-align: center;
}


.student-voice{
	background: #fff;
	width: 100%;
	margin: 50px auto 0;
	display: flex;
	flex-direction: row;
	padding: 20px 20px 0;
	border: 3px solid #ef8200;
}

.left-box{
	width: 45%;
	min-width: 190px;
}

.left-box h6{
	font-weight: 800;
    font-size: 40px;
    color: #fff;
	background: #ef8200;
	text-align: center;
    letter-spacing: 4px;
}

.student-img {
	width: 100%;
	display: flex;
	flex-direction: column;
	align-items: center;
}

.student-img img{
	width: 80%;
	opacity: 0.9;
}


.student-voice .left-box p{
	font-size: 35px;
	letter-spacing: 5px;
	padding-bottom: 0;
	text-align: center;
	padding-top: 20px;
	line-height: 35px;
	color :#ef8200;
}

.student-voice .left-box  span{
    font-size: 18px;
    letter-spacing: 0;
    line-height: 30px;
    padding-top: 10px;
    display: block;
    text-align: center;
}


.student-qa{
	padding-left:5vw;
}

.student-qa dl{
    margin-bottom: 40px;
}

.student-qa dl dt{
	font-size: 18px;
	line-height: 28px;
	font-weight: 600;
	padding-left:30px;
	position: relative;
	margin-bottom:5px;
	color: #ef8200;
	font-family: "Noto Sans JP", sans-serif;
	letter-spacing: 0;
}

.student-qa dl dt::before,
.student-qa dl dd::before{
    position: absolute;
    content: '';
    display: block;
    font-size: 18px;
    left: 0;
    border: 1px solid #ef8200;
    padding: 0 3px 4px 2px;
    line-height: 18px;
    top: 4px;
	color: #ef8200;
    font-weight: 600;
	width: 22px;
    text-align: center;
}

.student-qa dl dt::before{
	content:'Q';
	background:#ef8200;
	color:#fff;
}


.student-qa dl dd{
	font-size: 18px;
	line-height: 28px;
	font-weight: 400;
	padding-left:30px;
	position: relative;
	color: #000;
	font-family: "Noto Sans JP", sans-serif;
}

.student-qa dl dd::before{
	content:'A';
	background: #fff;
	padding-left: 3px;
}


.student-qa dl dd span{
	color:#ef8200;
}

/*用語集*/



.melody-ps-ps {
    display: flex;
	margin: 10px 0;
    align-items: center;
}

.melody-ps-ps span{
	padding:0 10px;
	font-size: 18px;
}

.melody-ps-ps img{
	width: inherit;
	height: 35px;
	aspect-ratio:11/10;
}

.td-sp{
	display: flex;
    justify-content: center;
    align-items: center;
}

.font-style{
	font-style: italic;
}

/*用語集///*/

@media(max-width: 1200px){
	.history h7 {
    	letter-spacing: 1px;
		padding: 5px;
	}
}


@media(max-width: 1000px){
	
	.history{
		flex-direction: column;
    	display: flex;
		padding: 10px;
	}
	
	#teacher-intro .intro-title {
		width:80%;
		min-width: 650px;
    	margin: auto;
	}
	
	
	.student-voice .left-box p {
    	font-size: 30px;
    	letter-spacing: 2px;
    	padding-top: 10px;
	}
	
    .student-voice .left-box p {
        font-size: 20px;
        letter-spacing: 1px;
        padding-top: 5px;
    }
	
	.left-box h6 {
		font-size: 18px;
		letter-spacing: 0px;
	}
	
	.student-voice .left-box span {
		font-size: 15px;
		letter-spacing: 0;
		line-height: 22px;
		padding-top: 0px;
	}
	
	.left-box {
		width: 45%;
		min-width: 160px;
	}
	
	.student-qa {
		padding-left: 5px;
	}
	

	.student-voice {
    	margin: 30px auto 0;
    	padding: 20px 10px 0;
	}
	
	#student {
		padding: 0;
	}
	
	
}


@media(max-width: 800px){
	.history-year .time {
		min-width: 150px;
	}
	
	.history h7 {
		font-size: 20px;
		padding: 5px 0;
	}
	
	
	.student-voice {
    	margin: 10px auto 0;
    	padding: 20px 5px 0;
	}
	
}


@media(max-width:650px){
	
	
	.history-year .time,
	.history-year .sch_box p {
		font-size: 16px;
		padding: 10px;
	}
	
	.history-year .time{
		min-width:100px;
		width:100px;
		padding: 10px;
	}
	
	.history-year .time::before {
		position: absolute;
		content: '';
		display: block;
		background: #d52423;
		border-radius: 50%;
		width: 15px;
		aspect-ratio: 1 / 1;
		right: -7px;
		top: 20px;
	}
	
	.history-year .sch_box::before {
		position: absolute;
		content: '';
		display: block;
		height: 100%;
		background: #d52423;
		width: 2px;
		left: -7px;
	}
	
	.history-year .sch_box {
	    margin-left: 0px;
		padding: 10px;
	}
	
	.history-year .sch_box p {
		padding: 5px;	
		letter-spacing: 0;
	}	
	
	.history h7 {
		font-size: 18px;
		padding: 2px 5px;
		text-align: left;
	}
	
	.student-voice {
		flex-direction: column;
		padding: 20px 0px 0;
	}
	
	.left-box {
        width: 100%;
        min-width: 100%;
		border-bottom: 2px solid #ef8200;
    }
	
	.student-img {
    	width: 60%;
		min-width: 250px;
		margin: auto;
	}

	.left-box h6 {
        font-size: 18px;
        letter-spacing: 2px;
        padding: 5px;
    }
	
	.student-voice .left-box span {
        font-size: 16px;
        letter-spacing: 1px;
        line-height: 25px;
        padding-top: 0px;
        padding-bottom: 10px;
    }
	
	.student-qa {
        padding: 20px 5px;
	}
	
	.student-qa dl {
		margin-bottom: 20px;
	}
	
	
}

@media(max-width:500px){
	
	.history{
		padding: 0 10px 20px;
	}

	.history-year li {
		flex-direction: column;
	}

    .history-year .time {
        padding: 5px 10px 0 20px;
        min-width: 100%;
    }
	
	.history-year .time {
        color: #d52423;
    }
	
	.history-year .sch_box {
        margin-left: 0px;
		padding: 5px 0 5px 20px;
    }
	
	.history-year .sch_box p {
		padding: 0;
	}
	
    .history-year .sch_box::before {
        top: 50%;
        left: 6px;
        height: calc(100% + 35px);
        transform: translateY(-50%);
    }
	
	.history-year .time::before {
        top: 50%;
		transform: translateY(-50%);
        left: 0;
    }
	
	.history h7 {
        font-size: 16px;
        padding: 5px 10px 8px;
        text-align: left;
    }
	
	.melody-ps-ps img {
    	height: 30px;
	}
	
	.melody-ps-ps span {
		padding: 0 5px;
	}

}