@charset "UTF-8";

/*================================================
 * 入校から免許取得までの流れ 用
 ================================================*/


section#flow_area .flow_list {
	padding-top: 120px;
}
section#flow_area .flow_list::before,
section#flow_area .flow_list::after {
	position: absolute;
	content: '';
	top: 0;
	left: 50%;
	transform: translate(-50%,0);
	height: 100%;
	z-index: -1;
}
section#flow_area .flow_list::before {
	background-color: #e6e6e6;
	width: 70px;
}
section#flow_area .flow_list::after {
	width: 4px;
	background:linear-gradient(to bottom, #fff, #fff 10px, transparent 10px, transparent 20px) right top / 10px 20px, repeat-y;
}


section#flow_area .flow_list .title {
	border-radius: 10px;
	text-align: center;
	padding: 35px 0;
	margin-bottom: 25px;
}
section#flow_area .flow_list .title:nth-of-type(n+2) {
	margin-top: 120px;
}
section#flow_area .flow_list .title h3 {
	font-size: 42px;
	font-weight: bold;
	letter-spacing: 0.06em;
	text-indent: 0.06em;
}
section#flow_area .flow_list .title h3 + p {
	margin-top: 1em;
}
section#flow_area .flow_list .title .img_fuki {
	top: -70px;
	left: 50%;
	transform: translate(-50%,0);
}
section#flow_area .flow_list .title [class*="img_deco"] {
	bottom: 0;
}
section#flow_area .flow_list .title .img_deco01 {
	left: 80px;
}
section#flow_area .flow_list .title .img_deco02 {
	right: -45px;
}




section#flow_area .flow_list .title .img_grad_fuki {
	top: -70px;
	left: 50%;
	transform: translate(-50%,0);
}
section#flow_area .flow_list .title .img_grad_deco {
	left: 105px;
	bottom: -25px;
}


section#flow_area .flow_list .step_list dl {
	width: 455px;
	width: min(50% - 9.5rem,455px);
	position: relative;
	padding-bottom: 60px;
}
section#flow_area .flow_list .step_list dl:last-of-type,
section#flow_area .flow_list .step_list dl:nth-of-type(odd):nth-last-of-type(2) {
	padding-bottom: 0;
}
section#flow_area .flow_list .step_list dl:nth-of-type(even) {
	margin-top: 80px;
}

section#flow_area .flow_list .step_list dl dt {
	font-size: 30px;
	font-weight: bold;
	margin-bottom: 1em;
}
section#flow_area .flow_list .step_list dl dt img {
	flex-shrink: 0;
	margin-right: 0.5em;
}
section#flow_area .flow_list .step_list dl dt em {
	padding-bottom: 0.3em;
}
section#flow_area .flow_list .step_list dl dt em span {
	font-size: 20px;
}

section#flow_area .flow_list .step_list dl dd .btn_arrow {
	font-size: 24px;
	font-weight: bold;
	margin-top: 40px;
	max-width: 400px;
	height: 100px;
	padding: 0 1.15em;
}




/*個別*/
section#flow_area .flow_list .step_list dl.step01 dd .btn_arrow {
	padding-left: 1.5em;
}

section#flow_area .flow_list .step02 .bg_deco {
	top: -50px;
	right: 5px;
}
section#flow_area .flow_list .step04 {
	padding-bottom: 150px!important;
}
section#flow_area .flow_list .step05 .bg_deco01 {
	bottom: -85px;
	left: -105px;
}
section#flow_area .flow_list .step05 .bg_deco02 {
	top: -205px;
	right: -190px;
}

section#flow_area .flow_list .step07 .bg_deco02 {
	top: 75px;
	right: -90px;
}

section#flow_area .flow_list .step10 .bg_deco01 {
	top: -220px;
	left: -75px;
}
section#flow_area .flow_list .step10 .bg_deco02 {
	bottom: -65px;
	right: -175px;
}


@media screen and (max-width: 1070px) {
	section#flow_area .flow_list::before {
		opacity: 0.5;
	}
}
@media screen and (max-width: 1070px) and (min-width: 800.1px) {
	section#flow_area .flow_list .title:nth-of-type(n+2) {
		margin-top: 150px;
	}
	section#flow_area .flow_list .step_list {
		display: block;
		width: 455px;
		margin: 0 auto;
	}
	section#flow_area .flow_list .step_list dl {
		width: 100%;
	}
	section#flow_area .flow_list .step_list dl:nth-of-type(odd):nth-last-of-type(2) {
		padding-bottom: 60px;
	}
	section#flow_area .flow_list .step_list dl:nth-of-type(even) {
		margin-top: 0;
	}
	
	section#flow_area .flow_list .step02 .bg_deco {
		top: -30px;
	}
	section#flow_area .flow_list .step08 {
		margin-top: 80px;
	}
	
	section#flow_area .flow_list .step_list dl.step09 {
		padding-bottom: 170px;
	}
}








/*試験*/
section#flow_area .flow_list .shiken_box {
	border: 4px solid;
	border-radius: 10px;
	max-width: 780px;
	margin: 0 auto;
	padding: 40px 20px;
	margin-top: 60px;
	position: relative;
}
section#flow_area .flow_list .shiken_box h4 {
	font-size: 30px;
	font-weight: bold;
	margin-bottom: 0.8em;
}
section#flow_area .flow_list .shiken_box h4 span {
	display: inline-block;
	position: relative;
}
section#flow_area .flow_list .shiken_box h4 .img_no {
	position: absolute;
	top: -60px;
	left: -120px;
}
section#flow_area .flow_list .shiken_box .kome_list > li {
	justify-content: center;
}


/*卒業*/
section#flow_area .flow_list .grad_photo {
	margin-top: 70px;
}




/*================================================================================================
 *  スマートフォン向けデザイン
 ================================================================================================*/
@media screen and (max-width:800px) {






section#flow_area .flow_list {
	padding-top: 15vw;
}
section#flow_area .flow_list::before {
	width: 11.5vw;
}
section#flow_area .flow_list::after {
	width: 2px;
	background:linear-gradient(to bottom, #fff, #fff 10px, transparent 10px, transparent 20px) right top / 10px 20px, repeat-y;
}


section#flow_area .flow_list .title {
	border-radius: 3vw;
	padding: 7vw 0;
	margin-bottom: 5vw;
}
section#flow_area .flow_list .title:nth-of-type(n+2) {
	margin-top: 16vw;
}
section#flow_area .flow_list .title h3 {
	font-size: 6.9vw;
}
section#flow_area .flow_list .title .img_fuki {
	top: -11vw;
	width: 28vw;
}


section#flow_area .flow_list .title .img_grad_fuki {
	top: -10.5vw;
	width: 37vw;
}


section#flow_area .flow_list .step_list {
	width: 80vw;
	margin: 0 auto;
}
section#flow_area .flow_list .step_list dl {
	width: 100%;
	padding: 0;
	margin: 0!important;
}
section#flow_area .flow_list .step_list dl + dl {
	margin-top: 7vw!important;
}

section#flow_area .flow_list .step_list dl dt {
	font-size: 5.6vw;
	margin: 0 -1em 5vw 0;
}
section#flow_area .flow_list .step_list dl dt img {
	width: 18vw;
}
section#flow_area .flow_list .step_list dl dt em span {
	font-size: 3.4vw;
}

section#flow_area .flow_list .step_list dl dd .btn_arrow {
	font-size: 4.8vw;
	margin-top: 5vw;
	max-width: inherit;
	height: 20vw;
}


/*個別*/
section#flow_area .flow_list .step_list dl.step01 dd .btn_arrow {
	padding-left: 7.5vw!important;
}
section#flow_area .flow_list .step_list dl.step01 dd .btn_arrow .replace-svg {
	width: 6.1vw;
}

section#flow_area .flow_list .step02 .bg_deco {
	top: 3vw;
	right: 0;
	width: 25vw;
}

section#flow_area .flow_list .step04 {
	padding-bottom: 0!important;
}

section#flow_area .flow_list .step05,
section#flow_area .flow_list .step10 {
	margin-top: 15vw!important;
}

section#flow_area .flow_list .step05 .bg_deco01,
section#flow_area .flow_list .step10 .bg_deco02 {
	top: auto;
	right: auto;
	bottom: -11.5vw;
	left: -9vw;
	width: 29vw;
}
section#flow_area .flow_list .step05 .bg_deco02,
section#flow_area .flow_list .step10 .bg_deco01 {
	bottom: auto;
	left: auto;
	top: -12.5vw;
	right: -9.5vw;
	width: 37vw;
}
section#flow_area .flow_list .step07 .bg_deco01 {
	width: 57vw;
	position: relative;
	left: -4.8vw;
}
section#flow_area .flow_list .step07 .bg_deco02 {
	top: 23vw;
	right: -15vw;
	width: 45vw;
}








/*試験*/
section#flow_area .flow_list .shiken_box {
	border-width: 2px;
	border-radius: 3vw;
	max-width: inherit;
	left: -3vw;
	width: 92vw;
	padding: 12vw 0;
	position: relative;
	margin-top: 12vw;
}
section#flow_area .flow_list .shiken_box h4 {
	font-size: 5.6vw;
	line-height: 1.5;
	position: relative;
}
section#flow_area .flow_list .shiken_box h4 span {
	position: static;
}
section#flow_area .flow_list .shiken_box h4 .img_no {
	top: -10vw;
	left: 5vw;
	width: 18.6vw;
}


/*卒業*/
section#flow_area .flow_list .grad_photo {
	margin-top: 11vw;
	width: 100vw;
	position: relative;
	left: -7vw;
}














}