@charset "utf-8";

.catchImg { padding: 0 0 5vw; }
.catchImg img { width: 100%; }

.scheduleCont { padding: 0 0 5vw; }
.scheduleCont .scheduleInr { padding: 10px 0; border-bottom: 1px solid #D5D7DC; }
.scheduleCont .scheduleInr .plan { position: relative; display: table; width: 100%; padding: 10px 90px 10px 0; }
.scheduleCont .place { display: table-cell; width: 140px; }
.scheduleCont .place span { display: inline-block; width: 150px; background: #2EA38F; color: #fff; font-size: 16px; font-weight: 700; line-height: 30px; text-align: center; padding: 0; }
.scheduleCont .date { display: table-cell; font-size: 16px; font-weight: 700; line-height: 30px; padding: 0 10px; vertical-align: baseline; }
.scheduleCont .date span.day { display: inline-block; font-size: 22px; font-weight: 700; line-height: 30px; padding: 0 5px; vertical-align: baseline; }
.scheduleCont .date span.time { display: inline-block; font-size: 16px; font-weight: 700; line-height: 30px; padding: 0 5px; vertical-align: baseline; }
.scheduleCont .status { position: absolute; right: 0; top: 10px; display: inline-block; width: 90px; text-align: center; }
.scheduleCont .status.full { background: #4B505B; color: #fff; font-size: 16px; font-weight: 700; line-height: 30px; }
.scheduleCont .status.vacancy { border: 1px solid #2E51A3; color: #2E51A3; font-size: 16px; font-weight: 700; line-height: 30px; }
.scheduleCont .message { font-size: 22px; font-weight: 700; padding: 10px; color: #2E51A3; text-align: center; }
.scheduleCont dl { padding: 10px 0; }
.scheduleCont dt { display: inline-block; width: 120px; font-size: 16px; font-weight: 700; line-height: 30px; color: #2E51A3; vertical-align: middle; }
.scheduleCont dt img { height: 26px; margin: 0 5px 0 0; }
.scheduleCont dd { display: inline-block; font-size: 16px; font-weight: 700; line-height: 30px; vertical-align: baseline; }
.scheduleCont dd span { display: inline-block; font-size: 22px; font-weight: 700; line-height: 30px; padding: 0 5px; vertical-align: baseline; }
.moreBtn { margin: 40px auto 0; text-align: center; }

.learnCont { padding: 0 0 5vw;}
.learnCont ul li { text-indent: -1rem; padding-left: 1rem; font-weight: 600;}
.learnCont ul li + li { margin-top: 5px;}

.spShow { display: none; }
.tabShow { display: none; }
.seminarCont { padding: 0 0 2vw; }
.partCont { padding: 0 0 3vw; }
.partCont > .partHead > h3.type02 { border-bottom: solid 3px #cce4ff; position: relative; font-size: 28px; margin-bottom: 20px;}
.partCont > .partHead > h3.type02::after { position: absolute; content: " "; display: block; border-bottom: solid 3px #5472cd; bottom: -3px; width: 20%;}
.partDisc { background: #2E51A3; float: left; width: 120px; padding: 30px 0; }
.partDisc .partNum { font-family: 'Noto Serif JP', serif; font-size: 18px; font-weight: 700; line-height: 40px; color: #fff; vertical-align: baseline; text-align: center; }
.partDisc .partNum span { font-family: 'Noto Serif JP', serif; font-size: 30px; font-weight: 700; line-height: 40px; color: #fff; vertical-align: baseline; }
.partDisc .time { font-family: 'Noto Serif JP', serif; font-size: 14px; font-weight: 500; line-height: 20px; color: #fff; vertical-align: baseline; text-align: center; }
.partTit { float: left; width: calc( 100% - 120px ); padding: 0 0 0 15px; }
.partTit .sub { background: #D80C5E; font-family: 'Noto Serif JP', serif; font-size: 16px; font-weight: 700; line-height: 30px; color: #fff; padding: 0 5px; }
.partTit .main { font-family: 'Noto Serif JP', serif; font-size: 28px; font-weight: 700; line-height: 35px; padding: 10px 0; border-bottom: 1px solid #D5D7DC; }
.partTit .main span { font-family: 'Noto Serif JP', serif; font-size: 28px; font-weight: 700; line-height: 35px; color: #D80C5E; }
.partTit .teacher { font-size: 14px; padding: 10px 0; }
.partList { background: #F2F5FB; padding: 10px; }
.partList li { padding: 10px; line-height: 1.4; vertical-align: middle; }
.partList.type02 li:nth-child(odd) { margin-top: 20px; text-indent: -1rem; padding-left: 1rem;}
.partList.type02 li:first-of-type { margin-top: 0;}
.partList li span { font-weight: 700; color: #2E51A3; vertical-align: middle; }
.seminarCont02 { padding: 0 0 2vw; }
.seminarCont02 .partCont { display: flex; flex-wrap: wrap; align-content: stretch; padding: 0 0 40px; }
.seminarCont02 .partDisc { float: none; }
.seminarCont02 .partList { width: calc( 100% - 120px ); }
.seminarCont02 .part1 { position: relative; }
.seminarCont02 .part1:after { position: absolute; left: 48px; bottom: 15px; z-index: 1; display: block; content: ''; width: 0; height: 0; border-left: 12px solid transparent; border-top: 12px solid #2E51A3; border-right: 12px solid transparent; }
.breakTime { position: relative; }
.breakTime:after { position: absolute; left: 48px; bottom: 15px; z-index: 1; display: block; content: ''; width: 0; height: 0; border-left: 12px solid transparent; border-top: 12px solid #2E51A3; border-right: 12px solid transparent; }
.breakTime .partInr { width: 120px; font-weight: 700; color: #2E51A3; text-align: center; }

.teacherCont { padding: 0 0 4vw; }
.teacherProf { padding: 0 0 30px; }
.teacherProf .thumb { float: left; width: 150px; }
.teacherProf .thumb img { width: 100%; }
.teacherProf dl { float: left; width: calc( 100% - 150px); padding: 0 0 0 20px; }
.teacherProf dt { font-size: 16px; font-weight: 700; vertical-align: baseline; padding: 20px 0; }
.teacherProf dt span { font-size: 22px; font-weight: 700; vertical-align: baseline; }

.reasonCont { padding: 0 0 5vw; }
.reasonCont .subTit { font-weight: 700; line-height: 1.2; padding: 0 0 10px; color: #D80C5E; }
.headline02 span { color: #2E51A3; font-family: 'Noto Serif JP', serif; font-size: 24px; line-height: 1.2; font-weight: 700; text-align: left; padding: 0 0 20px; margin: 0 auto 20px; }
.reasonCont .reasonInr { display: flex; flex-wrap: wrap; align-content: stretch; }
.reasonCont .reasonDisc { width: 50%; position: relative; padding: 30px 10px; }
.reasonDisc .point { position: absolute; left: 0; right: 0; top: 0; margin: 0 auto; background: #D80C5E; width: 60px; color: #fff; font-size: 14px; line-height: 20px; font-weight: 700; text-align: center; padding: 5px 0; }
.reasonDisc .point span { color: #fff; font-size: 30px; line-height: 30px; font-weight: 700; text-align: center; }
.reasonDisc dl { background: #F2F5FB; border: 2px solid #2E51A3; padding: 30px; height: 100%; }
.reasonDisc dt { font-size: 20px; line-height: 1.4; font-weight: 700; color: #2E51A3; text-align: center; padding: 20px 0; }
.reasonDisc dd { font-size: 16px; line-height: 1.75; }

.covid19Info dl { border: 1px solid #2E51A3; padding: 20px; }
.covid19Info dt { color: #2E51A3; font-family: 'Noto Serif JP', serif; font-size: 16px; font-weight: 700; text-align: left; padding: 0 0 10px; }
.covid19Info dd { font-size: 16px; line-height: 1.75; text-align: left; }

.discCont { padding: 0 0 5vw; }
.discInr { display: table; margin: 20px 0 0; }
.discInr h3 { display: table-cell; width: 110px; font-size: 16px; font-weight: 700; color: #2E51A3; padding: 10px 0; }
.discInr .rightDisc { display: table-cell; border-left: 1px solid #D5D7DC; padding: 5px 0 5px 20px; }
.discInr .rightDisc dl { padding: 5px 0; }
.discInr .rightDisc dt { display: inline-block; width: 110px; font-size: 16px; }
.discInr .rightDisc dd { display: inline-block; font-size: 18px; font-weight: 700; padding: 0 10px; }
.discInr .rightDisc dd.close { background: rgba(0,0,0,0.2); color: #666; }
.discInr .rightDisc dd.close:before { content:'満員御礼 '; }

.placeCont { padding: 0 0 5vw; }
.placeInr { display: table; margin: 20px 0 0; }
.placeInr h3 { display: table-cell; width: 110px; font-size: 16px; font-weight: 700; color: #2E51A3; padding: 10px 0; }
.placeInr .rightPlace { display: table-cell; border-left: 1px solid #D5D7DC; padding: 10px 0 10px 20px; }
.placeInr .rightPlace h4 { font-size: 20px; font-weight: 700; }
.placeInr .rightPlace p { font-size: 14px; }

.targetCont { padding: 0 0 5vw; }
.targetInr {  }
.targetInr h3 { font-size: 20px; font-weight: 700; vertical-align: baseline; }
.targetInr h3 span { font-size: 16px; font-weight: 500; vertical-align: baseline; }
.targetInr .supplement { font-size: 14px; }

.feeCont { padding: 0 0 5vw; }
.feeInr {  }
.feeInr p { font-size: 20px; font-weight: 700; vertical-align: baseline; }

.catchMessage { padding: 0 0 5vw; }
.catchMessage p { line-height: 2; }

.entryCont { padding: 20px; background: #F2F5FB; margin: 0 auto 5vw; }
.entryInr dt { font-size: 18px; font-weight: 700; color: #2E51A3; text-align: center; }
.telCont { float: left; width: 50%; }
.telCont dd { margin: 10px 0 0; text-align: center; }
.telCont dd a { display: inline-block; width: 100%; max-width: 300px; border-radius: 30px; color: #2E51A3; font-family: 'Noto Serif JP', serif; font-size: 24px; line-height: 30px; font-weight: 700; text-align: center; text-decoration: none; padding: 15px; box-shadow: 5px 10px 20px rgb(0 0 0 / 10%); background: #fff; border: 1px solid #2E51A3; transition: all 0.3s; }
.telCont dd img { height: 24px; margin: 3px 5px; }
.telCont dd span { display: inline-block; padding: 5px 0 0; }
.mailCont { float: right; width: 50%; }
.mailCont .moreBtn { margin: 10px 0 0; text-align: center; }

.presentCont { padding: 0 0 5vw; }
.presentDisc { padding: 0 0 30px; }
.presentDisc .thumb { float: left; width: 320px; }
.presentDisc .thumb img { width: 100%; }
.presentDisc dl { float: left; width: calc( 100% - 320px ); padding: 0 0 0 20px; }
.presentDisc dt { font-size: 22px; font-weight: 700; color: #2E51A3; padding: 0 0 10px; }
.presentDisc dd .supplement { font-size: 14px; background: #F2F5FB; padding: 10px; margin: 10px 0 0; }

.voiceCont { padding: 0 0 5vw; }
.voiceInr {  }
.voiceInr { padding: 0 0 30px; }
.voiceInr .thumb { float: left; width: 120px; padding: 30px; border-radius: 50%; background: #F2F5FB; }
.voiceInr .thumb img { width: 100%; }
.voiceInr dl { float: left; width: calc( 100% - 120px ); padding: 10px 0 10px 20px; }
.voiceInr dt { font-size: 18px; font-weight: 700; color: #2E51A3; padding: 0 0 10px; vertical-align: baseline; }
.voiceInr dt span { font-size: 16px; font-weight: 700; color: #2E51A3; vertical-align: baseline; }
.voiceInr dd .supplement { font-size: 14px; background: #F2F5FB; padding: 10px; margin: 10px 0 0; }
.voiceThumb img { max-width: 100%; }

.flowCont { padding: 0 0 5vw; }
.flowInr { display: flex; flex-wrap: wrap; align-content: stretch; }
.flowInr .step { width: calc( 100% / 3 ); padding: 0 20px; position: relative; }
.flowInr .step:after { position: absolute; right: -6px; top: 60px; z-index: 1; display: block; content: ''; width: 0; height: 0; border-top: 12px solid transparent; border-left: 12px solid #2E51A3; border-bottom: 12px solid transparent;}
.flowInr .step:last-child:after { display: none; }
.flowInr .step dl { background: #F2F5FB; border: 1px solid #2E51A3; padding: 20px; height: 100%; }
.flowInr .step dt { font-family: 'Noto Serif JP', serif; font-size: 20px; font-weight: 700; color: #2E51A3; padding: 0 0 5px; }
.flowInr .step dd span { font-weight: 700; }
.flowInr .step dd { padding: 5px 0 0; }

.covid19Cont { padding: 0 0 5vw; }
.covidInr ul { background: #F2F5FB; padding: 10px; margin: 20px auto; }
.covidInr .thumb { padding: 20px 0 0; width: 100%; max-width: 400px; }
.covidInr .thumb img { width: 100%; }


/* ─────────────────────────────────────────────────────────────────────────── */

@media screen and (max-width:1400px){
	.teacherProf dt { padding: 0 0 10px; }
	.reasonDisc dl { padding: 20px; }
}

/* ─────────────────────────────────────────────────────────────────────────── */

@media screen and (max-width:1200px){
	.teacherProf { padding: 0 0 30px; }
	.tabShow { display: block; }
	.partTit .main { font-size: 20px; line-height: 30px; }
	.placeInr .rightPlace h4 { font-size: 18px; }
	.flowInr .step dt { font-size: 18px; }
	.presentDisc .thumb { width: 50%; }
	.presentDisc dl { width: 50%; }
	.entryCont { padding: 10px; }
	.entryInr dt { font-size: 16px; }
	.telCont { float: none; width: 100%; padding: 10px 0; }
	.mailCont { float: none; width: 100%; padding: 10px 0; }
}

@media screen and (max-width:1023px){

}

@media screen and (max-width:767px){
	.spShow { display: block; }
	.scheduleCont { padding: 0 0 10vw; }
	.scheduleCont .scheduleInr { padding: 0; }
	.scheduleCont .scheduleInr .plan { display: block; width: 100%; font-size: 14px; padding: 10px 0; border-top: 1px solid #D5D7DC; }
	.scheduleCont .place { display: block; width: auto; font-size: 14px; }
	.scheduleCont .date { display: block; padding: 10px 0 0; }
	.scheduleCont .date span.day { font-size: 20px; }
	.scheduleCont .date span.time { padding: 0; font-size: 14px; }
	.scheduleCont .status { width: 80px; }
	.scheduleCont .status.full { font-size: 14px; }
	.scheduleCont .status.vacancy { font-size: 14px; }
	.scheduleCont dt { display: block; }
	.scheduleCont dd { display: block; font-size: 14px; }
	.scheduleCont dd span { font-size: 20px; }
	.learnCont { padding: 0 0 10vw; }
	.seminarCont02 .partList { width: 100%; }
	.seminarCont02 .part1:after { left: 50%; margin-left: -12px; }
	.breakTime .partInr { width: 100%; }
	.breakTime:after { left: 50%; margin-left: -12px; }
	.partCont { padding: 0 0 10vw; }
	.partHead { position: relative; padding: 0; }
	.partCont > .partHead > h3.type02 { font-size: 22px;}
	.partDisc { float: none; width: 100%; height: auto; padding: 10px 0; margin: 0 auto; }
	.partDisc .time { font-size: 12px; }
	.partTit { float: none; width: 100%; padding: 0; }
	.partTit .sub { font-size: 15px; line-height: 1.2; width: 100%; padding: 10px; text-align: center; }
	.partTit .main { font-size: 20px; line-height: 30px; }
	.partTit .main span { font-size: 20px; line-height: 30px; }
	.teacherCont { padding: 0 0 10vw; }
	.teacherProf { position: relative; }
	.teacherProf .thumb { width: 100px; float: none; position: absolute; top: 0; left: 0; }
	.teacherProf dl { float: none; width: 100%; padding: 0; }
	.teacherProf dt { padding: 10px 0 10px 110px; min-height: 140px; }
	.teacherProf dt span { display: block; font-size: 20px; }
	.reasonCont { padding: 0 0 10vw; }
	.reasonCont .reasonInr { display: block; }
	.reasonCont .reasonDisc { width: 100%; padding: 30px 0; }
	.reasonDisc dt { font-size: 18px; }
	.reasonDisc dd { line-height: 1.6; }
	.covid19Info dd { font-size: 14px; }
	.discCont { padding: 0 0 10vw; }
	.discInr { display: block; }
	.discInr h3 { display: block; }
	.discInr .rightDisc { display: block; border-left: none; border-top: 1px solid #D5D7DC; padding: 5px 0; }
	.discInr .rightDisc dl { padding: 5px 10px; }
	.discInr .rightDisc dt { display: block; width: 100%; }
	.discInr .rightDisc dd { display: block; width: 100%; font-size: 16px; background: #F2F5FB; padding: 5px; }
	.placeCont { padding: 0 0 10vw; }
	.placeInr { display: block; }
	.placeInr h3 { display: block; width: 100%; }
	.placeInr .rightPlace { display: block; border-left: none; border-top: 1px solid #D5D7DC; padding: 5px 0; }
	.targetCont { padding: 0 0 10vw; }
	.targetInr h3 { font-size: 18px; }
	.feeCont { padding: 0 0 10vw; }
	.feeInr p { font-size: 18px; }
	.flowInr { display: block; }
	.flowInr .step { width: 100%; padding: 0 0 50px; max-width: 500px; margin: 0 auto; }
	.flowInr .step:after { right: 0; left: 0; top: auto; bottom: 10px; margin: 0 auto; border-top: 12px solid #2E51A3; border-left: 12px solid transparent; border-right: 12px solid transparent; border-bottom: 12px solid transparent; }
	.flowInr .step dt { font-size: 16px; }
	.flowInr .step dd { font-size: 14px; }
	.entryCont { margin: 0 auto 10vw; }
	.presentDisc .thumb { width: 100%; float: none; }
	.presentDisc dl { width: 100%; float: none; padding: 10px 0; }
	.presentDisc dt { font-size: 18px; padding: 0 0 5px; }
	.voiceInr .thumb { float: none; margin: 0 auto; }
	.voiceInr dl { float: none; width: 100%; padding: 10px 0; }
	.voiceInr dt { text-align: center; }
	.voiceInr dt span { display: block; text-align: center; }


}
