@charset "utf-8";

@import url('https://fonts.googleapis.com/css2?family=Noto+Serif+JP:wght@400;700&display=swap');
/*--------------------------------------------------------------------------------------------------

   common

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


/*reset-------------------------------------------------*/
*, *:before, *:after {
 -webkit-box-sizing: border-box;
 -moz-box-sizing: border-box;
 -o-box-sizing: border-box;
 -ms-box-sizing: border-box;
 box-sizing: border-box;
}

body,div,h1,h2,h3,h4,h5,h6,p,dl,dt,dd {
	margin: 0;
	padding: 0;
}

table {
 border-collapse: collapse;
	border-spacing: 0;
}

img {
	border: none;
	vertical-align: top;
 -webkit-backface-visibility: hidden;
	image-rendering: -webkit-optimize-contrast;
}

h1,h2,h3,h4,h5,h6 {
	font-size: 100%;
	font-weight: normal;
}

header,section,article,aside,footer,nav {
 display: block;
}

/*-------------------------------------------------reset*/


@media screen and (min-width: 1241px){


/*common-------------------------------------------------*/
body {
	margin: 0;
	padding: 0;
	color: #000000;
	font-size: 16px;
	font-family:"ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "Yu Gothic", "Meiryo", "ＭＳ Ｐゴシック", "MS P Gothic", sans-serif;
	line-height: 1.8;
}

a:link {
	color: #006699;
}

a:visited {
	color: #993300;
}

a:hover, a:active {
	color: #CC144F;
}

.clear:after {
 content: "";
	display: block;
	height: 0;
	clear: both;
	visibility: hidden;
}

.clear {
 display: inline-table;
 overflow: hidden;
}

/* mac \*/
* html .clear {
 height: 1%;
}
.clear {
 display: block;
}
/* macend */

.alignleft {
	float: left;
	margin: 0 10px 10px 0;
}

.alignright {
	float: right;
	margin: 0 0 10px 10px;
}

.aligncenter {
	display: block;
	margin: 0 auto;
}

.inner p {
	margin: 0 0 30px;
}

.inner p.mgn10 {
	margin: 0 0 10px;
}

.inner p.mgn {
	margin: 0;
}

.inner p.s20 {
	font-size: 20px;
}

.inner .line01 {
	background:linear-gradient(transparent 70%, #FFFF73 70%);
}

hr {
	margin: 0 0 40px;
	border: 1px solid #CCC;
}

.pc {
	display: block;
}

.sp,
.print {
	display: none;
}


/*-------------------------------------------------common*/


/*------------------------------------------------------------------------------------------------
  header
--------------------------------------------------------------------------------------------------*/
#header {
	display: flex;
	justify-content: space-between;
	border-bottom: 4px solid #183063;
	padding: 20px;
}

#header h1 {
 font-family: 'Noto Serif JP', "YuMincho", "Hiragino Mincho ProN", "Yu Mincho", "MS PMincho", serif;
	font-size: 30px;
	font-weight: 700;
}

#header h1 a {
	color: #000;
	text-decoration: none;
}

#header ul {
	margin: 0;
	padding: 0;
	list-style: none;
	display: flex;
	font-size: 18px;
}

#header ul li {
	margin: 0 0 0 30px;
	padding: 0;
}

#header ul li a {
	display: block;
	padding: 10px 8px;
	color: #000;
	text-decoration: none;
}

#header ul li a:hover {
	text-decoration: underline;
	color: #CC144F;
}

#header ul li:nth-child(4) a {
	padding: 6px 40px;
	border-radius: 32px;
	color: #FFF;
	border: 2px solid #CC144F;
	background: url(../image/arrow-01.png) #CC144F no-repeat 90% center;
	background-size: 6px;
}

#header ul li:nth-child(4) a:hover {
	background: url(../image/arrow-02.png) #FFF no-repeat 90% center;
	background-size: 6px;
	text-decoration: none;
	color: #CC144F;
}


/*------------------------------------------------------------------------------------------------
  pagetop
--------------------------------------------------------------------------------------------------*/
.pagetop {
	position: fixed;
	bottom: 20px;
	right: 20px;
	z-index: 15;
}

/*------------------------------------------------------------------------------------------------
  footer
--------------------------------------------------------------------------------------------------*/
footer {
	text-align: center;
	padding: 16px 0;
}

/*------------------------------------------------------------------------------------------------
  mv
--------------------------------------------------------------------------------------------------*/
#mv {
	position: relative;
	color: #183063;
	padding: 0 0 20px;
}

#mv::before {
 content: "";
 position: absolute;
 top: 0;
 left: 0;
 width: 0;
 height: 0;
 border-style: solid;
 border-width: 24vw 24vw 0 0;
 border-color: #EEF0F4 transparent transparent transparent;
	z-index: -1;
}

#mv::after {
 content: "";
 position: absolute;
 right: 0;
 bottom: 0;
 width: 0;
 height: 0;
 border-style: solid;
 border-width: 0 0 24vw 24vw;
 border-color: transparent transparent #EEF0F4 transparent;
	z-index: -1;
}

#mv .inner {
	width: 1100px;
	margin: 0 auto;
	min-height: 400px;
	background: url(../image/mv.png) no-repeat 100% 0;
	background-size: contain;
}

#mv p {
	position: absolute;
	font-size: 26px;
 font-family: 'Noto Serif JP', "YuMincho", "Hiragino Mincho ProN", "Yu Mincho", "MS PMincho", serif;
	font-weight: 700;
	letter-spacing: 0.04em;
 top: 50%;
 transform: translateY(-50%);
 -webkit-transform: translateY(-50%);
 -ms-transform: translateY(-50%);
	margin-left: 40px;
}

#mv p span.st {
	font-size: 42px;
	background:linear-gradient(transparent 70%, #FFFF73 70%);
}
	

/*------------------------------------------------------------------------------------------------
  lead
--------------------------------------------------------------------------------------------------*/
#lead01 {
	padding: 60px 0 120px;
	background-color: #F9F9E8;
}

#lead01 .inner {
	width: 1100px;
	margin: 0 auto;
}

#lead01 .inner ul {
	margin: 20px 40px;
	padding: 20px 20px 20px 40px;
	border: 3px double #CCC;
}


/*------------------------------------------------------------------------------------------------
  lead
--------------------------------------------------------------------------------------------------*/
#lead02 {
	position: relative;
	margin: -6vw 0 0;
	padding: 6vw 0 60px;
}

#lead02:before {
 content: "";
 position: absolute;
 top: 0;
 left: 0;
 width: 0;
 height: 0;
 border-style: solid;
 border-width: 0 50vw 6vw 0;
 border-color: transparent transparent #FFF transparent;
	z-index: 1;
}

#lead02:after {
 content: "";
 position: absolute;
 top: 0;
 right: 0;
 width: 0;
 height: 0;
 border-style: solid;
 border-width: 0 0 6vw 50vw;
 border-color: transparent transparent #FFF transparent;
	z-index: 1;
}

#lead02 .inner {
	width: 1100px;
	margin: 0 auto;
	padding: 60px 0 0;
}

#lead02 .inner h2 {
	margin: 0 0 40px;
	padding: 0 0 16px;
	font-size: 26px;
	text-align: center;
	font-weight: bold;
	position: relative;
	line-height: 1.5;
}

#lead02 .inner h2:after {
	position: absolute;
	bottom: 0;
	left: calc( 50% - 40px);
	width: 80px;
	height: 4px;
	background-color: #2954AB;
	content: "";
}

#lead02 .inner h3 {
	margin: 0 0 20px;
	background-color: #E0E3EB;
	padding: 4px 8px;
	border-left: 4px solid #2954AB;
	font-weight: 500;
	font-size: 22px;
}

.lead02Flow {
	margin: 0 100px;
}

.lead02Flow p {
	margin: 0;
}

.lead02Flow .flow01 {
	position: relative;
	border: 4px solid #C7CCDA;
	padding: 20px 30px;
	border-radius: 20px;
}

.lead02Flow .flow01:after {
	position: absolute;
	bottom: -70px;
	left: calc( 50% - 30px);
	content: "";
	width: 60px;
	height: 60px;
	background: url(../image/arrow-03.png) no-repeat center 100%;
}

.lead02Flow .flow02 {
	position: relative;
	margin: 70px 40px 0;
	border: 4px solid #ECECBB;
	padding: 20px 30px;
	border-radius: 20px;
}

.lead02Flow .flow02:after {
	position: absolute;
	bottom: -70px;
	left: calc( 50% - 30px);
	content: "";
	width: 60px;
	height: 60px;
	background: url(../image/arrow-03.png) no-repeat center 100%;
}

.lead02Flow .flow02:nth-child(5):after {
	background-image: none;
}

.lead02Flow .flow03 {
	position: relative;
	margin: 70px 0 80px;
	border: 4px solid #C7CCDA;
	padding: 20px 30px;
	border-radius: 20px;
}

#lead02 .inner .shadow {
	display: block;
	margin: 0 auto;
	box-shadow: 3px 3px 0 #EEE;
}

.shien {
	position: absolute;
	top: -40px;
	left: -50px;
	width: 80px;
	height: 80px;
	display: flex;
	justify-content: center;
	align-items: center;
	border-radius: 100%;
	background-color: #F9A800;
	transform: rotate(-10deg);
	font-weight: 500;
	color: #FFF;
	text-align: center;
	line-height: 1.1;
}

.shien:after {
	position: absolute;
	width: 76px;
	height: 76px;
	border: 2px solid #FFF;
	border-radius: 100%;
	content: "";
}

.dl1 {
	margin: 0 40px;
}

.dl1 dt {
	background-color: #2954AB;
	color: #FFF;
	display: inline-block;
	padding: 8px;
	width: 100px;
	text-align: center;
	letter-spacing: 0.05em;
}
	
.dl1 dd {
	border: 1px solid #2954AB;
	margin: -20px 0 0 -20px;
	padding: 30px 20px 20px;
	background: linear-gradient(#FFF 40%, #F3F2F1);
}

.dl1 dd ol {
	margin: 0 0 0 1em;
	padding: 0;
	list-style-position: inside;
	text-indent: -1.2em;
}

.dl1 dd ol li {
	margin: 0 40px;
	padding: 8px 0;
}

.dl2 {
	margin: 0 40px 40px;
}

.dl2 dt {
	background-color: #2954AB;
	color: #FFF;
	display: inline-block;
	padding: 8px;
	width: 100px;
	text-align: center;
	letter-spacing: 0.05em;
}
	
.dl2 dd {
	border: 1px solid #2954AB;
	margin: -20px 0 0 -20px;
	padding: 40px 50px 20px;
	background: linear-gradient(#FFF 40%, #F3F2F1);
}

.dl2 dd ol {
	margin: 0 0 0 1em;
	padding: 0;
	list-style-position: inside;
	text-indent: -1.2em;
}

.dl2 dd ol li {
	margin: 0 40px;
	padding: 8px 0;
}

#lead02 .inner p.mgn10 .pc,
#lead02 .inner p.mgnl .pc{
	display: inline-block;
}


/*------------------------------------------------------------------------------------------------
  lead
--------------------------------------------------------------------------------------------------*/
#lead03 {
	padding: 60px 0 120px;
	background-color: #F9F9E8;
	transform: skew(0deg, -1.5deg);
}

#lead03 .inner {
	width: 1100px;
	margin: 0 auto;
	transform: skew(0deg, 1.5deg);
}

#lead03 .inner h2 {
	margin: 0 0 40px;
	padding: 0 0 16px;
	font-size: 26px;
	text-align: center;
	font-weight: bold;
	position: relative;
	line-height: 1.5;
}

#lead03 .inner h2:after {
	position: absolute;
	bottom: 0;
	left: calc( 50% - 40px);
	width: 80px;
	height: 4px;
	background-color: #2954AB;
	content: "";
}

#lead03 .inner h3 {
	margin: 50px 0 30px;
	background-color: #E0E3EB;
	padding: 4px 8px;
	border-left: 4px solid #2954AB;
	font-weight: 500;
	font-size: 22px;
}

#lead03 .inner h4 {
	margin: 0 0 20px;
	font-size: 22px;
	font-weight: 700;
	text-align: center;
	color: #2954AB;
}

#lead03 .inner dl {
	margin: 0 40px;
	padding-bottom: 40px;
	/*position: relative;*/
}

/*#lead03 .inner dl:after {
	content: "";
 position: absolute;
 bottom: -20px;
 left: 50%;
 margin-left: -30px;
 border: 30px solid transparent;
 border-top: 30px solid #E0E3EB;
}

#lead03 .inner dl:nth-of-type(5):after {
	border: none;
	background: url(../image/arrow-04.png) no-repeat 0 0;
	width: 60px;
	height: 60px;
}*/

#lead03 .inner dl dt {
	background-color: #EEE;
	font-size: 18px;
	font-weight: 500;
	padding: 10px;
	border-top: 1px solid #2954AB;
}

#lead03 .inner dl dt span {
	display: inline-block;
	background-color: #2954AB;
	color: #FFF;
	margin-right: 20px;
}

#lead03 .inner dl dd {
	background-color: #FFF;
	padding: 10px 20px;
}

#lead03 .inner dl dd p {
	margin: 0;
}

#lead03 .inner .exam {
	margin: 60px 200px 0;
	padding: 20px;
	border: 1px solid #CCC;
	background-color: #FFF;
	box-shadow: 3px 3px 0 #EEE;
}

#lead03 .inner .exam .title {
	margin: -38px auto 30px;
	padding: 4px;
	display: block;
	width: 300px;
	background-color: #54AB29;
	text-align: center;
	color: #FFF;
}

#lead03 .inner .exam li {
	margin: 0 0 10px;
}

/*------------------------------------------------------------------------------------------------
  lead05
--------------------------------------------------------------------------------------------------*/
#lead05 {
	padding: 60px 0 80px;
}

#lead05 .inner {
	width: 1100px;
	margin: 0 auto;
}

#lead05 .inner h2 {
	margin: 0 0 40px;
	padding: 0 0 16px;
	font-size: 26px;
	text-align: center;
	font-weight: bold;
	position: relative;
	line-height: 1.5;
}

#lead05 .inner h2:after {
	position: absolute;
	bottom: 0;
	left: calc( 50% - 40px);
	width: 80px;
	height: 4px;
	background-color: #2954AB;
	content: "";
}


.c-btn a {
	border: 1px solid #183063;
	padding: 15px 0;
	text-align: center;
	width: 400px;
	display: block;
	margin: 0 auto;
	text-decoration: none;
	position: relative;
	letter-spacing: 0.2em;
	background-color: #183063;
	color: #FFF;
}

.c-btn a:before {
	position: absolute;
	top: calc( 50% - 4px);
	right: -15px;
	width: 30px;
 height: 6px;
	content: "";
 border-bottom: 2px solid #A3ABC2;
 border-right: 2px solid #A3ABC2;
 transform: skew(45deg);
	transition: all .3s;
}

.c-btn a:hover {
	background-color: #FFF;
	color: #183063;
}

.c-btn a:hover:before {
	right: 30px;
	border-color: #A3ABC2;
}

/*------------------------------------------------------------------------------------------------
  lead
--------------------------------------------------------------------------------------------------*/
#lead04 {
	padding: 60px 0 80px;
	background-color: #E3E6EC;
}

#lead04 .inner {
	width: 1100px;
	margin: 0 auto;
}

#lead04 .inner h2 {
	margin: 0 0 40px;
	padding: 0 0 16px;
	font-size: 26px;
	text-align: center;
	font-weight: bold;
	position: relative;
	line-height: 1.5;
}

#lead04 .inner h2:after {
	position: absolute;
	bottom: 0;
	left: calc( 50% - 40px);
	width: 80px;
	height: 4px;
	background-color: #2954AB;
	content: "";
}

#lead04 .inner table {
	width: 700px;
	margin: 0 auto;
}


#lead04 .inner table th {
	padding: 12px;
	font-weight: 400;
	text-align: left;
	vertical-align: top;
	border-bottom: 2px solid #FFF;
}

#lead04 .inner table td {
	position: relative;
	padding: 12px 8px 12px 30px;
	border-bottom: 2px solid #FFF;
}

#lead04 .inner table td:before {
	position: absolute;
	top: calc( 50% - 8px);
	left: 0;
	background-color: #FFF;
	content: "";
	width: 4px;
	height: 16px;
}


}


@media screen and (max-width: 1240px){

/*common-------------------------------------------------*/
body {
	margin: 0;
	padding: 0;
	color: #000000;
	font-size: 16px;
	font-family:"ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "Yu Gothic", "Meiryo", "ＭＳ Ｐゴシック", "MS P Gothic", sans-serif;
	line-height: 1.8;
}

img {
	max-width: 100%;
	height: auto;
}

a:link {
	color: #006699;
}

a:visited {
	color: #993300;
}

a:hover, a:active {
	color: #CC144F;
}

.clear:after {
 content: "";
	display: block;
	height: 0;
	clear: both;
	visibility: hidden;
}

.clear {
 display: inline-table;
 overflow: hidden;
}

/* mac \*/
* html .clear {
 height: 1%;
}
.clear {
 display: block;
}
/* macend */


.aligncenter,.alignleft,.alignright {
	display: block;
	margin: 0 auto 20px;
}

.inner p {
	margin: 0 0 30px;
}

.inner p.mgn10 {
	margin: 0 0 10px;
}

.inner p.mgn {
	margin: 0;
}

.inner p.s20 {
	font-size: 18px;
	line-height: 1.7;
}

.inner .line01 {
	background:linear-gradient(transparent 70%, #FFFF73 70%);
}

hr {
	margin: 0 0 40px;
	border: 1px solid #CCC;
}

.sp {
	display: block;
}

.pc,
.print {
	display: none;
}

/*-------------------------------------------------common*/


/*------------------------------------------------------------------------------------------------
  header
--------------------------------------------------------------------------------------------------*/
#header {
	display: flex;
	width: 100%;
	background-color: #FFF;
	justify-content: space-between;
	border-bottom: 4px solid #183063;
	padding: 10px;
	position: fixed;
	z-index: 10;
}

#header h1 {
 font-family: 'Noto Serif JP', "YuMincho", "Hiragino Mincho ProN", "Yu Mincho", "MS PMincho", serif;
	font-size: 20px;
	font-weight: 700;
}

#header h1 a {
	color: #000;
	text-decoration: none;
}

#header ul {
	width: 100%;
	position: absolute;
	top: 60px;
	left: 0;
	display: none;
	margin: 0;
	padding: 0;
	list-style: none;
	font-size: 18px;
	background-color: #FFF;
}

#header ul li {
	margin: 0;
	padding: 0;
	border-bottom: 1px solid #CCC;
}

#header ul li a {
	display: block;
	padding: 10px 8px;
	color: #000;
	text-decoration: none;
}

#header ul li a:hover {
	text-decoration: underline;
	color: #CC144F;
}

#header ul li:nth-child(4) a {
	padding: 10px 8px;
	color: #FFF;
	border: 2px solid #CC144F;
	background: url(../image/arrow-01.png) #CC144F no-repeat 94% center;
	background-size: 6px;
}

#header ul li:nth-child(4) a:hover {
	background: url(../image/arrow-02.png) #FFF no-repeat 94% center;
	background-size: 6px;
	text-decoration: none;
	color: #CC144F;
}

.menubt {
    z-index: 3;
    width: 42px;
    height: 42px;
    display: block;
    right: 8px;
    top: 9px;
    position: absolute;
    background: #093E80;
    background-size: contain;
  }
  
  .menubt span {
    width: 25px;
    height: 2px;
    display: block;
    background: #fff;
    border-radius: 0;
    position: absolute;
    right: 8px;
    top: 20px; 
    transition: all 0.4s;
    transform: rotate(0deg);
  }
  
  .menubt .top {
    -webkit-transform: translateY(-250%);
    -ms-transform: translateY(-250%);
    transform: translateY(-250%);
  }
  
  .menubt .bottom {
    -webkit-transform: translateY(250%);
    -ms-transform: translateY(250%);
    transform: translateY(250%);
  }
  
  .menubt .menuclick1 {
    transform: rotate(-215deg);
  }
  
  .menubt .menuclick2 {
    background-color: rgba(255,255,255,0);
  }
  
  .menubt .menuclick3 {
    transform: rotate(215deg);
  }



/*------------------------------------------------------------------------------------------------
  pagetop
--------------------------------------------------------------------------------------------------*/
.pagetop {
	position: fixed;
	bottom: 20px;
	right: 20px;
	z-index: 15;
}

/*------------------------------------------------------------------------------------------------
  footer
--------------------------------------------------------------------------------------------------*/
footer {
	text-align: center;
	padding: 16px 0;
	font-size: 14px;
}

/*------------------------------------------------------------------------------------------------
  mv
--------------------------------------------------------------------------------------------------*/
#mv {
	width: 100%;
	margin: 0 auto;
	color: #183063;
	padding: 80px 0 20px;
	position: relative;
}

#mv::before {
 content: "";
 position: absolute;
 top: 60px;
 left: 0;
 width: 0;
 height: 0;
 border-style: solid;
 border-width: 14vw 14vw 0 0;
 border-color: #EEF0F4 transparent transparent transparent;
	z-index: -1;
}

#mv::after {
 content: "";
 position: absolute;
 right: 0;
 bottom: 0;
 width: 0;
 height: 0;
 border-style: solid;
 border-width: 0 0 14vw 14vw;
 border-color: transparent transparent #EEF0F4 transparent;
	z-index: -1;
}

#mv .inner {
	width: 94%;
	margin: 0 auto;
}

#mv p {
	margin: 0 0 8px !important;
	font-size: 18px;
 font-family: 'Noto Serif JP', "YuMincho", "Hiragino Mincho ProN", "Yu Mincho", "MS PMincho", serif;
	font-weight: 700;
	letter-spacing: 0.04em;
	text-align: center;
	line-height: 1.4;
}

#mv p span.st {
	font-size: 20px;
	background:linear-gradient(transparent 70%, #FFFF73 70%);
}

#mv p img {
	width: 88%;
	display: block;
	margin: 0 auto;
}

/*------------------------------------------------------------------------------------------------
  lead
--------------------------------------------------------------------------------------------------*/
#lead01 {
	padding: 60px 0 30px;
	background-color: #F9F9E8;
}

#lead01 .inner {
	width: 94%;
	margin: 0 auto;
}

#lead01 .inner ul {
	margin: 20px 0;
	padding: 20px 20px 20px 40px;
	border: 3px double #CCC;
}


/*------------------------------------------------------------------------------------------------
  lead
--------------------------------------------------------------------------------------------------*/
#lead02 {
	position: relative;
	margin: -6vw 0 0;
	padding: 6vw 0 30px;
}

#lead02:before {
 content: "";
 position: absolute;
 top: 0;
 left: 0;
 width: 0;
 height: 0;
 border-style: solid;
 border-width: 0 50vw 6vw 0;
 border-color: transparent transparent #FFF transparent;
	z-index: 1;
}

#lead02:after {
 content: "";
 position: absolute;
 top: 0;
 right: 0;
 width: 0;
 height: 0;
 border-style: solid;
 border-width: 0 0 6vw 50vw;
 border-color: transparent transparent #FFF transparent;
	z-index: 1;
}

#lead02 .inner {
	width: 94%;
	margin: 0 auto;
	padding: 30px 0 0;
}

#lead02 .inner h2 {
	margin: 0 0 40px;
	padding: 0 0 16px;
	font-size: 18px;
	text-align: center;
	font-weight: bold;
	position: relative;
	line-height: 1.5;
}

#lead02 .inner h2:after {
	position: absolute;
	bottom: 0;
	left: calc( 50% - 40px);
	width: 80px;
	height: 4px;
	background-color: #2954AB;
	content: "";
}

#lead02 .inner h3 {
	margin: 0 0 20px;
	background-color: #E0E3EB;
	padding: 4px 8px;
	border-left: 4px solid #2954AB;
	font-weight: 500;
	font-size: 18px;
}

#lead02 .inner p.mgn10,
#lead02 .inner p.mgnl {
	border-bottom: 1px dotted #CCC;
	padding: 0 0 10px !important;
}

.lead02Flow {
	margin: 0;
	line-height: 1.4;
}

.lead02Flow p {
	margin: 0;
}

.lead02Flow .flow01 {
	position: relative;
	border: 4px solid #C7CCDA;
	padding: 20px 30px;
	border-radius: 20px;
}

.lead02Flow .flow01:after {
	position: absolute;
	bottom: -70px;
	left: calc( 50% - 30px);
	content: "";
	width: 60px;
	height: 60px;
	background: url(../image/arrow-03.png) no-repeat center 100%;
}

.lead02Flow .flow02 {
	position: relative;
	margin: 70px 0 0 40px;
	border: 4px solid #ECECBB;
	padding: 20px 10px 20px 30px;
	border-radius: 20px;
}

.lead02Flow .flow02:after {
	position: absolute;
	bottom: -70px;
	left: calc( 50% - 30px);
	content: "";
	width: 60px;
	height: 60px;
	background: url(../image/arrow-03.png) no-repeat center 100%;
}

.lead02Flow .flow02:nth-child(5):after {
	background-image: none;
}

.lead02Flow .flow03 {
	position: relative;
	margin: 70px 0 80px;
	border: 4px solid #C7CCDA;
	padding: 48px 0 20px 30px;
	border-radius: 20px;
}

#lead02 .inner .shadow {
	display: block;
	margin: 0 auto;
	box-shadow: 3px 3px 0 #EEE;
}

.shien {
	position: absolute;
	top: -40px;
	left: -50px;
	width: 80px;
	height: 80px;
	display: flex;
	justify-content: center;
	align-items: center;
	border-radius: 100%;
	background-color: #F9A800;
	transform: rotate(-10deg);
	font-weight: 500;
	color: #FFF;
	text-align: center;
	line-height: 1.1;
}

.shien:after {
	position: absolute;
	width: 76px;
	height: 76px;
	border: 2px solid #FFF;
	border-radius: 100%;
	content: "";
}

.lead02Flow .flow03 .shien {
	left: 0;
}


.dl1 {
	margin: 0 20px 0 40px;
}

.dl1 dt {
	background-color: #2954AB;
	color: #FFF;
	display: inline-block;
	padding: 8px;
	width: 100px;
	text-align: center;
	letter-spacing: 0.05em;
}
	
.dl1 dd {
	border: 1px solid #2954AB;
	margin: -20px 0 0 -20px;
	padding: 30px 20px 20px;
	background: linear-gradient(#FFF 40%, #F3F2F1);
}

.dl1 dd ol {
	margin: 0 0 0 1em;
	padding: 0;
	list-style-position: inside;
	text-indent: -1.2em;
}

.dl1 dd ol li {
	margin: 0;
	padding: 8px 0;
	line-height: 1.4;
}

.dl2 {
	margin: 0 20px 40px 40px;
}

.dl2 dt {
	background-color: #2954AB;
	color: #FFF;
	display: inline-block;
	padding: 8px;
	width: 100px;
	text-align: center;
	letter-spacing: 0.05em;
}
	
.dl2 dd {
	border: 1px solid #2954AB;
	margin: -20px 0 0 -20px;
	padding: 40px 30px 20px;
	background: linear-gradient(#FFF 40%, #F3F2F1);
}

.dl2 dd ol {
	margin: 0 0 0 1em;
	padding: 0;
	list-style-position: inside;
	text-indent: -1.2em;
}

.dl2 dd ol li {
	margin: 0 40px;
	padding: 8px 0;
}


/*------------------------------------------------------------------------------------------------
  lead
--------------------------------------------------------------------------------------------------*/
#lead03 {
	padding: 60px 0 60px;
	background-color: #F9F9E8;
	transform: skew(0deg, -1.5deg);
}

#lead03 .inner {
	width: 94%;
	margin: 0 auto;
	transform: skew(0deg, 1.5deg);
}

#lead03 .inner h2 {
	margin: 0 0 40px;
	padding: 0 0 16px;
	font-size: 18px;
	text-align: center;
	font-weight: bold;
	position: relative;
	line-height: 1.5;
}

#lead03 .inner h2:after {
	position: absolute;
	bottom: 0;
	left: calc( 50% - 40px);
	width: 80px;
	height: 4px;
	background-color: #2954AB;
	content: "";
}

#lead03 .inner h3 {
	margin: 50px 0 30px;
	background-color: #E0E3EB;
	padding: 4px 8px;
	border-left: 4px solid #2954AB;
	font-weight: 500;
	font-size: 18px;
	line-height: 1.4;
}

#lead03 .inner h4 {
	margin: 0 0 20px;
	font-size: 18px;
	font-weight: 700;
	text-align: center;
	color: #2954AB;
}

#lead03 .inner dl {
	margin: 0;
	padding-bottom: 40px;
	/*position: relative;*/
}

/*#lead03 .inner dl:after {
	content: "";
 position: absolute;
 bottom: -20px;
 left: 50%;
 margin-left: -30px;
 border: 30px solid transparent;
 border-top: 30px solid #E0E3EB;
}

#lead03 .inner dl:nth-of-type(5):after {
	border: none;
	background: url(../image/arrow-04.png) no-repeat 0 0;
	width: 60px;
	height: 60px;
}*/

#lead03 .inner dl dt {
	background-color: #EEE;
	font-size: 18px;
	font-weight: 500;
	padding: 10px;
	border-top: 1px solid #2954AB;
	line-height: 1.4;
}

#lead03 .inner dl dt span {
	display: inline-block;
	background-color: #2954AB;
	color: #FFF;
	margin-right: 20px;
}

#lead03 .inner dl dd {
	background-color: #FFF;
	padding: 10px 20px;
}

#lead03 .inner dl dd p {
	margin: 0;
}

#lead03 .inner .exam {
	margin: 60px 0 0;
	padding: 20px 10px;
	border: 1px solid #CCC;
	background-color: #FFF;
	box-shadow: 3px 3px 0 #EEE;
}

#lead03 .inner .exam .title {
	margin: -38px auto 30px;
	padding: 4px;
	display: block;
	width: 300px;
	background-color: #54AB29;
	text-align: center;
	color: #FFF;
}

#lead03 .inner .exam li {
	margin: 0 0 10px;
}

/*------------------------------------------------------------------------------------------------
  lead05
--------------------------------------------------------------------------------------------------*/
#lead05 {
	padding: 60px 0 50px;
}

#lead05 .inner {
	width: 94%;
	margin: 0 auto;
}

#lead05 .inner h2 {
	margin: 0 0 40px;
	padding: 0 0 16px;
	font-size: 18px;
	text-align: center;
	font-weight: bold;
	position: relative;
	line-height: 1.5;
}

#lead05 .inner h2:after {
	position: absolute;
	bottom: 0;
	left: calc( 50% - 40px);
	width: 80px;
	height: 4px;
	background-color: #2954AB;
	content: "";
}


.c-btn a {
	border: 1px solid #183063;
	padding: 15px 0;
	text-align: center;
	width: 80%;
	display: block;
	margin: 0 auto;
	text-decoration: none;
	position: relative;
	letter-spacing: 0.2em;
	background-color: #183063;
	color: #FFF;
}

.c-btn a:before {
	position: absolute;
	top: calc( 50% - 4px);
	right: -15px;
	width: 30px;
 height: 6px;
	content: "";
 border-bottom: 2px solid #A3ABC2;
 border-right: 2px solid #A3ABC2;
 transform: skew(45deg);
	transition: all .3s;
}

.c-btn a:hover {
	background-color: #FFF;
	color: #183063;
}

.c-btn a:hover:before {
	right: 30px;
	border-color: #A3ABC2;
}

/*------------------------------------------------------------------------------------------------
  lead
--------------------------------------------------------------------------------------------------*/
#lead04 {
	padding: 60px 0 40px;
	background-color: #E3E6EC;
}

#lead04 .inner {
	width: 94%;
	margin: 0 auto;
}

#lead04 .inner h2 {
	margin: 0 0 40px;
	padding: 0 0 16px;
	font-size: 18px;
	text-align: center;
	font-weight: bold;
	position: relative;
	line-height: 1.5;
}

#lead04 .inner h2:after {
	position: absolute;
	bottom: 0;
	left: calc( 50% - 40px);
	width: 80px;
	height: 4px;
	background-color: #2954AB;
	content: "";
}

#lead04 .inner table {
	width: 100%;
	margin: 0 auto;
	line-height: 1.4;
}


#lead04 .inner table th {
	display: block;
	width: 100%;
	padding: 8px 12px;
	font-weight: 400;
	text-align: left;
	vertical-align: top;
	background-color: #FFF;
}

#lead04 .inner table td {
	display: block;
	width: 100%;
	position: relative;
	padding: 12px 8px 12px 30px;
}

#lead04 .inner table td:before {
	position: absolute;
	top: 14px;
	left: 16px;
	background-color: #2954AB;
	content: "";
	width: 4px;
	height: 16px;
}


}
