/*************************************

style.css

*************************************/

.f_l {font-size: 130%;}
.f_m {font-size: 110%;}
.f_s {font-size: 90%;}
.f_ss {font-size: 80%;}

.f_bold {font-weight: bold;}

.asta {font-size: 80%;}
.asta::before {content: "※"; }

.br_sp {display: none;}
.br_pc {display: block;}

.introduction {padding: 4rem 0;}

.bg2 {background: #f1f1f1;}


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

.br_sp {display: block;}
.br_pc {display: none;}	
    
    .introduction {padding: 3rem 0;}
	
}

/* section course_pr

-------------------------*/

section.course_pr {
	width: 80%;
	margin: 0 auto 3rem;
	letter-spacing: .1rem;
}

section.course_pr h1 {
	text-align: center;
	margin-bottom: 4rem;
	font-size: 1.3rem;
    font-weight: 900;
    color: #00aebb;
	position: relative;
}

section.course_pr h1::before,
section.course_pr h1::after {
	position: absolute;
	content: "";
}

section.course_pr h1::before {
	right: 0px;
    bottom: -10px;
    width: 50px;
    height: 50px;
    border-right: 2px solid #00aebb;
    border-bottom: 2px solid #00aebb;
}

section.course_pr h1::after {
	top: -10px;
    left: 0px;
    width: 50px;
    height: 50px;
    border-top: 2px solid #00aebb;
    border-left: 2px solid #00aebb;
}

section.course_pr h1 .h1_02 {
	font-size: 140%;
	margin: 1.2rem 0;
}

section.course_pr .read {
    margin: 0;
    padding: 0;
}

section.course_pr .read p {
    text-align: justify;
}

section.course_pr .course_outline {
	width: fit-content;
    margin: 3rem auto 4rem;
}

section.course_pr .course_outline li {
    font-size: 1.1rem;
	line-height: 2.2rem;
    margin-bottom: 1rem;
    text-indent: -2rem;
    margin-left: 2rem;
}

section.course_pr .course_outline li::before {
    content: "\f14a";
    font-weight: bold;
    font-family: "Font Awesome 5 Free";
    margin-right: 1rem;
    color: #00aebb;
}


@media screen and (orientation: portrait) and (max-width: 767px){
	
	section.course_pr {
	width: 90%;
	margin: 0 auto 2.5rem;
}
	
	section.course_pr h1 {
	font-size: 1.1em;
		margin-bottom: 3rem;
}
	
	section.course_pr h1 .h1_02 {
	font-size: 110%;
	margin: 1rem 0;
}
	
	section.course_pr h1::before {
	right: 0;
    bottom: -10px;
    width: 20px;
    height: 20px;
}

section.course_pr h1::after {
	top: -12px;
    left: 0;
    width: 20px;
    height: 20px;
}

	
}


/* section merit

-------------------------*/

section.merit {
	width: 80%;
	margin: 1rem auto 4rem;
	letter-spacing: .1rem;
	padding: 2rem 2.5rem;
	border: 1px solid #dcdcdc;
}

section.merit h2 {
	font-size: 1.4rem;
	margin-bottom: 2rem;
	color: #00aebb;
	text-align: center;
}

section.merit ul li {
	text-align: justify;
}

section.merit ul li:not(:last-of-type) {
    margin-bottom: 1rem;
}

section.merit ul li span {
	color: #00aebb;
	background-color: #fff;
	padding: 0 .5rem;
}


@media screen and (orientation: portrait) and (max-width: 767px){
	
	section.merit {
	width: 90%;
		margin: 1rem auto 2rem;
	padding: 1rem 1rem;
}
	
	section.merit h2 {
	font-size: 1.2rem;
		margin-bottom: 1.5rem;
}
	
}



/* section question

-------------------------*/

section.question {
	width: 80%;
	margin: 0 auto 4rem;
	padding: 2rem 2.5rem;
	border: 1px solid #dcdcdc;
	letter-spacing: .1rem;
}

section.question .lec_status {
	cursor: pointer;
    color: #00aebb;
	text-align: center;
	font-size: 1.3rem;
}

section.question .lec_status:hover {
	opacity: .5;
}

section.question .acd_active .lec_status::after {
	padding-left: 1rem;
    font-family: var(--Font_Awesome);
    content: "\f106";
    font-weight: 900;
}

section.question .lec_status::after {
	padding-left: 1rem;
    font-family: var(--Font_Awesome);
    content: "\f107";
    font-weight: 900;
}

section.question dt {
	font-size: 1.1rem;
}

section.question dd {
	text-align: justify;
	margin-top: 2rem;
	line-height: 1.8rem;
}

section.question dd span {
	color: #00aebb;
	text-decoration: underline;
}

@media screen and (orientation: portrait) and (max-width: 767px){
	
	section.question {
	width: 90%;
	margin: 0 auto 2rem;
	padding: 1rem 1rem;
}
	
	section.question .lec_status {
	font-size: 1.2rem;
}

section.question dd {
	line-height: 1.8rem;
}
	
}



/* section.detail

-------------------------*/

.introduction section.detail {
	width: 80%;
	margin: 5rem auto 1rem;
	background-color: #fff;
	padding: .8rem 0rem;
	font-size: 1.1rem;
	letter-spacing: .1rem;
}

section.detail h2 {
	font-size: 1.2rem;
	border-left: 10px solid #00aebb;
	padding-left: 1.5rem;
	margin: 1rem 0 2rem;
	display: flex;
	align-items: center;
}

section.detail h2::after {	
	margin-left: 2rem;
	content: "";
	height: 1px;
	background-color: #dcdcdc; 
	flex-grow: 1;
}

section.detail dl {
	padding: 1rem 0 ;
	margin-left: 2.5rem;
}

section.detail dl dt {
}

section.detail dl dd {
	font-size: 1.15rem;
}

.detail .time_schedule ul {
    margin-left: 2.5rem;
}

.detail .time_schedule ul li {
    margin-bottom: 1.8rem;
}

.detail .time_schedule ul li:not(:last-of-type) {
    border-bottom: 1px solid #dcdcdc;
}


@media screen and (orientation: portrait) and (max-width: 767px){
	
	.introduction section.detail {
		margin: 2rem auto 1rem;
		width: 95%;
		padding: .3rem 0rem;
		font-size: 1rem;
	}
	
section.detail h2 {
	margin: 1rem 0 1.5rem;
}

section.detail h2::after {	
	margin-left: 0rem;
	content: "";
	height: 0px;
	width: 0vw;
}
    
    .detail .time_schedule ul {
    margin-right: 1rem;
}
	
	
}


/* signing_up

============================ */

section.detail .signing_up {
	margin-right: 2rem;
	margin-top: 1rem;
}

section.detail .signing_up dl {
	text-align: center;
}

section.detail .signing_up dl dt.triangle {
	width:0;
    height:0;
    border-style:solid;
    border-width: 20px 15px 0 15px;
    border-color: #00aebb transparent transparent transparent;
	margin: 0 auto 2rem;
}

section.detail .signing_up dl:first-of-type dt {
	display: flex;
	justify-content: center;
	align-items: center;
	margin-bottom: 1rem;
}

section.detail .signing_up dl:first-of-type dt::before,
section.detail .signing_up dl:first-of-type dt::after {
	content: "";
	height: 1px;
	flex-grow: 1;
	background-color: #dcdcdc;
}

section.detail .signing_up dl:first-of-type dt::before {
	margin-right: 2rem;
}

section.detail .signing_up dl:first-of-type dt::after {
	margin-left: 2rem;
}

section.detail .signing_up dl:last-of-type dd {
	display: flex;
	justify-content: center;
}

section.detail .signing_up dl dd a {
	display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    position: relative;
    max-width: 20rem;
    width: 100%;
    height: 3.6rem;
    border-radius: 1.8rem;
    background: var(--Gradation_Orange);
    color: #fff;
    font-weight: 900;
    font-family: var(--Font_Weight_Bold);
    font-size: 1.2rem;
    text-align: center;
    line-height: 1;
}

section.detail .signing_up dl dd a:hover {
	opacity: .5;
}


/* button

============================ */

.button {
    display: flex;
    justify-content: center;
    margin: 0rem auto 6rem;
    width: 100%;
}

.button dl {
    text-align: center;
}

.button dl dt {
    color: #f67600;
    margin-bottom: 1rem;
}

.button dl dd {
    width: 100%;
}

.button dl dd a {
        height: 3rem;
    background: #f67600;
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    border-radius: 1.8rem;
    color: #fff;
    font-weight: 900;
    font-family: var(--Font_Weight_Bold);
    font-size: 1.2rem;
    text-align: center;
    line-height: 1;
    padding: 0 3rem;
}

@media screen and (orientation: portrait) and (max-width: 767px){
    
    .button {
    margin: 0rem auto 5rem;
}
    
}



/* contact_banner

============================ */

.contact_banner.phone .phone_kichijoji,
.contact_banner.phone .phone_shibuya,
.contact_banner.phone .phone_ikebukuro {
  display: none;
}


