@charset "utf-8";

/*========================================
  page title
========================================*/
.pageTitle {
	background: url("../images/pagetitle_bg.jpg") no-repeat center center;
	background-size: cover;
}
.pageTitle h1 {
	color: #FFF;
}


/*========================================
  guide - Qualifications
========================================*/
.guideQualifications {}

.qualificationsSummary {
	display: flex;
	flex-flow: row nowrap;
	justify-content: space-between;
	align-items: center;
	padding: 20px 0;
	border-top: 2px dotted #AAA;
	border-bottom: 2px dotted #AAA;
}
.qualificationsImg {
	width: 330px;
}
.qualificationsDetail {
	flex: 1;
	margin-right: 40px;
}
.qualificationsList {}
.qualificationsList dt {
	font-size: 2.4rem;
}
.qualificationsList dt:not(:first-of-type) {
	margin-top: 20px;
}
.qualificationsList dt::before {
	content: "ー";
	font-weight: bold;
	color: #00DBFF;
}
.qualificationsList dd {
	margin-top: 10px;
	font-size: 1.8rem;
}

@media screen and (max-width: 540px) {
	.qualificationsSummary {
		display: block;
		padding: 20px 0;
	}
	.qualificationsImg {
		width: 100%;
		margin-top: 40px;
	}
	.qualificationsDetail {
		margin-right: 0;
	}
	.qualificationsList dt {
		font-size: 1.8rem;
	}
	.qualificationsList dd {
		margin-top: 10px;
		font-size: 1.4rem;
	}
}



/*========================================
  guide - flow
========================================*/
.guideFlow {
	margin-top: 80px;
}

.flowStep {
	position: relative;
	display: flex;
	flex-flow: row nowrap;
	justify-content: space-between;
	padding: 40px;
	background-color: #FFF;
	border: 1px solid #F2F2F2;
}
.flowStep + .flowStep,
.flowNotes + .flowStep {
	margin-top: 120px;
}
.flowStep + .flowStep::before,
.flowNotes + .flowStep::before {
	content: "";
	display: block;
	position: absolute;
	left: 50%;
	top: -80px;
	width: 0;
	height: 0;
	border-width: 40px 50px 0 50px;
	border-style: solid;
	border-color: #BBB transparent transparent transparent;
	-webkit-transform: translate(-50%, 0);
	transform: translate(-50%, 0);
}
.flowStep .stepImg {
	width: 240px;
}
.flowStep .stepDetail {
	flex: 1;
	margin-left: 40px;
}
.flowStep .stepDetail h3 {
	padding-left: 1em;
	text-indent: -1em;
	font-size: 2.4rem;
}
.flowStep .stepDetail h3::before {
	content: "ー";
	font-weight: bold;
	color: #00DBFF;
}
.flowStep .stepDetail .stepSummary {
	margin-top: 20px;
	padding-top: 20px;
	border-top: 2px dotted #BBB;
}
.flowStep .stepDetail .stepSummary p {
	font-size: 1.8rem;
	color: #666;
}
.flowStep .stepDetail .stepSummary p + p {
	margin-top: 1em;
}
.flowStep .stepDetail .stepSummary p strong {
	display: block;
	font-weight: normal;
	color: #FF3F8C;
}

@media screen and (max-width: 540px) {
	.flowStep {
		display: block;
		padding: 20px;
	}
	.flowStep + .flowStep,
	.flowNotes + .flowStep {
		margin-top: 60px;
	}
	.flowStep + .flowStep::before,
	.flowNotes + .flowStep::before {
		top: -40px;
		border-width: 20px 25px 0 25px;
	}
	.flowStep .stepImg {
		margin: 0 auto;
	}
	.flowStep .stepDetail {
		margin: 20px 0 0;
	}
	.flowStep .stepDetail h3 {
		font-size: 1.8rem;
	}
	.flowStep .stepDetail .stepSummary p {
		font-size: 1.4rem;
	}
}


.stepAction {
	margin-top: 20px;
	padding-top: 20px;
	border-top: 2px dotted #BBB;
}
.stepAction .actionItem {
	display: block;
	position: relative;
	flex-flow: row nowrap;
	justify-content: space-between;
	align-items: center;
}

.stepAction .actionItem + .actionItem {
	margin-top: 16px;
}

.stepAction .actionItem p[class^="action-"] {
	display: flex;
	flex-flow: row nowrap;
	justify-content: flex-start;
	align-items: center;
	font-size: 1.4rem;
}

.stepAction .actionItem p[class^="action-"] .actionHead {
	display: block;
	position: relative;
	min-width: 140px;
	margin-right: 40px;
	padding: 10px 20px;
	text-align: center;
	font-size: 1.6rem;
	color: #FFF;
}

.stepAction .actionItem p[class^="action-"] .actionribbon {
	display: block;
	position: relative;
	width: 300px;
	margin-top: 20px;
	margin-left: 180px;
        padding:10px 20px;
	text-align: center;
	font-size: 1.2rem;
        background-color: #ff4500;
	color: #FFF;
}

.stepAction .actionItem p[class^="action-"] .actionribbon a {
	color: #FFF
}

.stepAction .actionItem p[class^="action-"] .actionribbon2 {
	display: block;
	position: relative;
	width: 300px;
	margin-top: 10px;
	margin-left: 180px;
        padding:10px 20px;
	text-align: center;
	font-size: 1.2rem;
        background-color: #1e90ff;
	color: #FFF;
}

.stepAction .actionItem p[class^="action-"] .actionribbon2 a {
	color: #FFF
}




.stepAction .actionItem p[class^="action-"] .actionHead::before {
	content: "";
	display: block;
	position: absolute;
	right: -12px;
	top: 50%;
	width: 0;
	height: 0;
	border-width: 11px 0 11px 12px;
	border-style: solid;
	-webkit-transform: translate(0, -50%);
	transform: translate(0, -50%);
}
.stepAction .actionItem p.action-person .actionHead { background-color: #00DBFF;}
.stepAction .actionItem p.action-person .actionHead::before { border-color: transparent transparent transparent #00DBFF;}

.stepAction .actionItem p.action-parents .actionHead { background-color: #FF3F8C;}
.stepAction .actionItem p.action-parents .actionHead::before { border-color: transparent transparent transparent #FF3F8C;}

.stepAction .actionItem p.action-003 .actionHead { background-color: #00B200;}
.stepAction .actionItem p.action-003 .actionHead::before { border-color: transparent transparent transparent #00B200;}

.stepAction .actionItem p.action-004 .actionHead { background-color: #FF7F00;}
.stepAction .actionItem p.action-004 .actionHead::before { border-color: transparent transparent transparent #FF7F00;}

.stepAction .actionItem p.action-005 .actionHead { background-color: #0000FF;}
.stepAction .actionItem p.action-005 .actionHead::before { border-color: transparent transparent transparent #0000FF;}

.stepAction .actionItem p.action-006 .actionHead { background-color: #FF0000;}
.stepAction .actionItem p.action-006 .actionHead::before { border-color: transparent transparent transparent #FF0000;}


.stepAction2 {
	margin-top: 20px;
	padding-top: 20px;
	border-top: 2px dotted #BBB;
}
.stepAction2 .actionItem {
	display: flex;
	flex-flow: row nowrap;
	justify-content: space-between;
	align-items: center;
}
.stepAction2 .actionItem + .actionItem {
	margin-top: 16px;
}
.stepAction2 .actionItem p[class^="action-"] {
	display: flex;
	flex-flow: row nowrap;
	justify-content: flex-start;
	align-items: center;
	font-size: 1.6rem;
	color: #FF0000
}
.stepAction2 .actionItem p[class^="action-"] .actionHead {
	display: block;
	position: relative;
	min-width: 140px;
	margin-right: 40px;
	padding: 10px 20px;
	text-align: center;
	font-size: 1.6rem;
	color: #FFF
}
.stepAction2 .actionItem p[class^="action-"] .actionHead::before {
	content: "";
	display: block;
	position: absolute;
	right: -12px;
	top: 50%;
	width: 0;
	height: 0;
	border-width: 11px 0 11px 12px;
	border-style: solid;
	-webkit-transform: translate(0, -50%);
	transform: translate(0, -50%);
}

.stepAction2 .actionItem p.action-person .actionHead { background-color: #00DBFF;}
.stepAction2 .actionItem p.action-person .actionHead::before { border-color: transparent transparent transparent #00DBFF;}

.stepAction2 .actionItem p.action-parents .actionHead { background-color: #FF3F8C;}
.stepAction2 .actionItem p.action-parents .actionHead::before { border-color: transparent transparent transparent #FF3F8C;}

.stepAction2 .actionItem p.action-003 .actionHead { background-color: #00B200;}
.stepAction2 .actionItem p.action-003 .actionHead::before { border-color: transparent transparent transparent #00B200;}

.stepAction2 .actionItem p.action-004 .actionHead { background-color: #FF7F00;}
.stepAction2 .actionItem p.action-004 .actionHead::before { border-color: transparent transparent transparent #FF7F00;}

.stepAction2 .actionItem p.action-005 .actionHead { background-color: #0000FF;}
.stepAction2 .actionItem p.action-005 .actionHead::before { border-color: transparent transparent transparent #0000FF;}

.stepAction2 .actionItem p.action-006 .actionHead { background-color: #FF0000;}
.stepAction2 .actionItem p.action-006 .actionHead::before { border-color: transparent transparent transparent #FF0000;}



@media screen and (max-width: 540px) {
	.stepAction .actionItem {
		display: block;
	}
	.stepAction .actionItem + .actionItem {
		margin-top: 16px;
	}
	.stepAction .actionItem p[class^="action-"] {
		display: block;
		margin-bottom: 10px;
		font-size: 1.4rem;
	}
	.stepAction .actionItem p[class^="action-"] .actionHead {
		width: 140px;
		margin: 0 auto 10px;
		padding: 5px 10px;
		font-size: 1.4rem;
	}


	.stepAction .actionItem p[class^="action-"] .actionHead::before {
		right: auto;
		left: 50%;
		top: 100%;
		border-width: 6px 5px 0 5px;
		border-style: solid;
		-webkit-transform: translate(-50%, 0);
		transform: translate(-50%, 0);
	}

.stepAction .actionItem p.action-person .actionHead { background-color: #00DBFF;}
.stepAction .actionItem p.action-person .actionHead::before { border-color: transparent transparent transparent #00DBFF;}

.stepAction .actionItem p.action-parents .actionHead { background-color: #FF3F8C;}
.stepAction .actionItem p.action-parents .actionHead::before { border-color: transparent transparent transparent #FF3F8C;}

.stepAction .actionItem p.action-003 .actionHead { background-color: #00B200;}
.stepAction .actionItem p.action-003 .actionHead::before { border-color: transparent transparent transparent #00B200;}

.stepAction .actionItem p.action-004 .actionHead { background-color: #FF7F00;}
.stepAction .actionItem p.action-004 .actionHead::before { border-color: transparent transparent transparent #FF7F00;}

.stepAction .actionItem p.action-005 .actionHead { background-color: #0000FF;}
.stepAction .actionItem p.action-005 .actionHead::before { border-color: transparent transparent transparent #0000FF;}

.stepAction .actionItem p.action-006 .actionHead { background-color: #FF0000;}
.stepAction .actionItem p.action-006 .actionHead::before { border-color: transparent transparent transparent #FF0000;}

	.stepAction2 .actionItem {
		display: block;
	}
	.stepAction2 .actionItem + .actionItem {
		margin-top: 16px;
	}
	.stepAction2 .actionItem p[class^="action-"] {
		display: block;
		margin-bottom: 10px;
		font-size: 1.4rem;
	}
	.stepAction2 .actionItem p[class^="action-"] .actionHead {
		width: 140px;
		margin: 0 auto 10px;
		padding: 5px 10px;
		font-size: 1.4rem;
	}


	.stepAction2 .actionItem p[class^="action-"] .actionHead::before {
		right: auto;
		left: 50%;
		top: 100%;
		border-width: 6px 5px 0 5px;
		border-style: solid;
		-webkit-transform: translate(-50%, 0);
		transform: translate(-50%, 0);
	}

.stepAction2 .actionItem p.action-person .actionHead { background-color: #00DBFF;}
.stepAction2 .actionItem p.action-person .actionHead::before { border-color: transparent transparent transparent #00DBFF;}

.stepAction2 .actionItem p.action-parents .actionHead { background-color: #FF3F8C;}
.stepAction2 .actionItem p.action-parents .actionHead::before { border-color: transparent transparent transparent #FF3F8C;}

.stepAction2 .actionItem p.action-003 .actionHead { background-color: #00B200;}
.stepAction2 .actionItem p.action-003 .actionHead::before { border-color: transparent transparent transparent #00B200;}

.stepAction2 .actionItem p.action-004 .actionHead { background-color: #FF7F00;}
.stepAction2 .actionItem p.action-004 .actionHead::before { border-color: transparent transparent transparent #FF7F00;}

.stepAction2 .actionItem p.action-005 .actionHead { background-color: #0000FF;}
.stepAction2 .actionItem p.action-005 .actionHead::before { border-color: transparent transparent transparent #0000FF;}

.stepAction2 .actionItem p.action-006 .actionHead { background-color: #FF0000;}
.stepAction2 .actionItem p.action-006 .actionHead::before { border-color: transparent transparent transparent #FF0000;}


.stepAction .actionItem p[class^="action-"] .actionribbon {
	display: block;
	position: relative;
	width: 220px;
        margin-left:80px;
	margin-top: 20px;
        padding:10px 20px;
	text-align: center;
	font-size: 1.2rem;
        background-color: #ff4500;
	color: #FFF;
}

.stepAction .actionItem p[class^="action-"] .actionribbon a {
	color: #FFF
}

.stepAction .actionItem p[class^="action-"] .actionribbon2 {
	display: block;
	position: relative;
	width: 220px;
        margin-left:80px;
	margin-top: 10px;
        padding:10px 20px;
	text-align: center;
	font-size: 1.2rem;
        background-color: #1e90ff;
	color: #FFF;
}

.stepAction .actionItem p[class^="action-"] .actionribbon2 a {
	color: #FFF
}


}




.flowNotes {
	position: relative;
	margin-top: 40px;
	padding: 40px;
	background-color: rgba(255, 63, 140, 0.1);
	font-size: 1.8rem;
}
.flowNotes::before {
	content: "";
	display: block;
	position: absolute;
	left: 50%;
	top: -12px;
	width: 0;
	height: 0;
	border-width: 0 11px 12px 11px;
	border-style: solid;
	border-color: transparent transparent rgba(255, 63, 140, 0.1) transparent;
	-webkit-transform: translate(-50%, 0);
	transform: translate(-50%, 0);
}

.flowNotes h4 {
	font-size: 2.4rem;
	color: #FF104D;
}
.flowNotes p {
	margin-top: 1em;
	color: #666;
}
.flowNotes dl {
	margin-top: 30px;
}
.flowNotes dl dt {
	font-weight: bold;
}
.flowNotes dl dd {
	margin-top: 1em;
}
.flowNotes dl dd ul li {
	margin-top: 0.5em;
}
.flowNotes dl dd ul li a {
	color: #FF104D;
}

@media screen and (max-width: 540px) {
	.flowNotes {
		margin-top: 20px;
		padding: 20px;
		font-size: 1.4rem;
	}
	.flowNotes h4 {
		font-size: 1.8rem;
		color: #FF104D;
	}
}

/*========================================
  How to Apply
========================================*/
.howtoApply {
	margin-top: 80px;
	font-size: 1.8rem;
}
.applyBody {
	padding: 40px;
	background-color: #EEE;
}
.applyBody .applyItem {}
.applyBody .applyItem + .applyItem {
	margin-top: 40px;
	
}
.applyBody .applyItem h3 {
	margin-bottom: 20px;
	font-size: 3.4rem;
	color: #333;
}
.applyBody .applyItem h3::before {
	content: "ー";
	font-weight: bold;
	color: #00DBFF;
}
.applyBody .applyItem .btnSet {
	margin-top: 20px;
	text-align: left;
}
.applyBody .applyItem .btnSet .btn {
	margin: 0;
}

.applyBody .applyItem .requiredDoc {
	margin: 30px 0;
	line-height: 2;
}
.applyBody .applyItem .requiredDoc dt {
	margin: 30px 0 0;
	font-weight: bold;
}
.applyBody .applyItem .requiredDoc dd {
	padding-left: 1em;
}
.applyBody .applyItem .requiredDoc dd a {
	color: #FF104D;
}

@media screen and (max-width: 540px) {
	.howtoApply {
		margin-top: 60px;
		font-size: 1.4rem;
	}
	.applyBody {
		padding: 20px;
	}
	.applyBody .applyItem + .applyItem {
		margin-top: 40px;
	}
	.applyBody .applyItem h3 {
		margin-bottom: 20px;
		font-size: 2rem;
	}
	.applyBody .applyItem .requiredDoc {
		margin: 10px 0;
		line-height: 2;
	}
	.applyBody .applyItem .requiredDoc dt {
		margin: 20px 0 0;
	}

}


/*========================================
  examination
========================================*/
.examination {
	margin-top: 80px;
}
.examinationBody {
	display: flex;
	flex-flow: row nowrap;
	justify-content: space-between;
	align-items: flex-start;
}
.examinationBody .examinationImg {
	width: 240px;
}
.examinationBody .examinationText {
	flex: 1px;
	margin-left: 40px;
	font-size: 1.8rem;
}

@media screen and (max-width: 540px) {
	.examination {
		margin-top: 60px;
	}
	.examinationBody {
		display: block;
	}
	.examinationBody .examinationImg {
		margin: 0 auto;
	}
	.examinationBody .examinationText {
		margin: 20px 0 0;
		font-size: 1.4rem;
	}

}




/*========================================
  tuition Fee
========================================*/
.tuitionFee {
	margin-top: 80px;
}
.tuitionSummary {
	text-align: center;
	line-height: 2;
	font-size: 1.8rem;
}
.tuitionFee h3 {
	margin: 40px 0 20px;
	font-weight: normal;
	font-size: 2.4rem;
	color: #00BCFF;
}
@media screen and (max-width: 540px) {
	.tuitionFee {
		margin-top: 60px;
	}
	.tuitionSummary {
		line-height: 1.5;
		font-size: 1.6rem;
	}
	.tuitionFee h3 {
		margin: 40px 0 20px;
		font-weight: normal;
		font-size: 1.8rem;
		color: #00BCFF;
	}
}

.tuitionFee .scrollBox {
    overflow-x: auto;
    margin: 20px 0;
    width: 100%;
}
.tuitionFee .scrollBox table {
    table-layout: auto;
    min-width: 100%;
    width: 100%;
}
.tuitionFee .scrollBox table {
    border-spacing: 0;
    min-width: 100%;
}
.tuitionFee .scrollBox table th,
.tuitionFee .scrollBox table td {
    padding: 15px 20px;
    font-size: 1.8rem;
    font-weight: normal;
    text-align: center;
    border: #fff 4px solid;
}
.tuitionFee .scrollBox table th {
    background-color: #00BCFF;
    color: #fff;
}
.tuitionFee .scrollBox table th {
    background: #00bcff;
}
.tuitionFee .scrollBox table td {
    background: url("../../common/images/bg_pinstripe.png") repeat left top #EEE;
}
.tuitionFee .scrollBox table td.stripe-blue {
    background: url("../../common/images/bg_pinstripe.png") repeat left top #D7F9FF;
	color: #00BCFF;
}
@media screen and (max-width: 540px) {
	.tuitionFee .scrollBox table th,
	.tuitionFee .scrollBox table td {
		min-width: 120px;
		padding: 5px;
		font-size: 1.4rem;
		border: #fff 2px solid;
	}
}

.tuitionDetail {
	margin-top: 20px;
}
.tuitionDetail p {
	margin-top: 1em;
	line-height: 2;
}
.tuitionDetail strong {
	color: #FF104D;
}
.tuitionDetail a {
	color: #FF104D;
}
@media screen and (max-width: 540px) {
	.tuitionDetail {
		font-size: 1.4rem;
	}
	.tuitionDetail p {
		margin-top: 1em;
		line-height: 1.5;
	}
}


.tuitionNotes {
	margin-top: 20px;
}
.tuitionNotes li:not(:first-child) {
	margin-top: 0.5em;;
}
ul.tuitionNotes li {
	padding-left: 1em;
	text-indent: -1em;
}
ol.tuitionNotes {
	list-style: decimal;
	margin-left: 20px;
}
@media screen and (max-width: 540px) {
	.tuitionNotes {
		font-size: 1.4rem;
	}

}