@charset "utf-8";

/*ここでは
	examページ
	などを記述します
*/

.page_exam{}

.h3_title{
	border-left: 9px solid #82CF00;
	}

.h4_title::after{
	color: #82CF00;
	}
	
/*-----table-----*/
table.gray th{
	background: #276155;
	/*min-width: 6em;*/
	width: 14.6em;
	font-size: 16px;
    font-weight: bold;
	text-align: left;
    line-height: 1.125;
    text-align: left;
    padding: 0.3em 0.5em 0.3em 1em;
    box-sizing: border-box;
	}
table.gray td{
	padding: 4px 1em;
	font-size: 16px;
	}
	
table.res_gray{
	line-height: 1.85;
	}
table.res_gray th{
	background: #276155;
	width: 210px;
	font-size: 16px;
    font-weight: bold;
    line-height: 1.125;
	text-align: left;
	padding: 0.3em 0.5em 0.3em 1em;
    box-sizing: border-box;
	}
table.res_gray td{
	padding: 0.35em 1em;
	font-size: 16px;
	}
	
	
	
	
/*---------------*/
	
	

.read_box > p, .read_box > .l_read{
	margin-bottom: 0.5em;
	}

.l_read a.green_btn,
.l_read a.blue_btn{
    font-family: "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", "Meiryo", "verdana", sans-serif;
    font-weight: bold;
	padding: 0.75em 3.5em 0.75em 1.5em;
	margin-bottom: 1.8em;
	}
.page_exam .read_box .flex-bet{}
.page_exam .read_box .flex-bet > span,
.page_flowen .read_box .flex-bet > span{
	flex-basis: 40%;
	font-size: 16px;
	line-height: 1.7;
	}


ul.mypage_btn{
	display: flex;
	display: -webkit-flex;
	
	justify-content: space-between;
	text-align: center;
	}
ul.mypage_btn li{
	flex-basis: 47.5%;
    display: flex;
	}
	ul.mypage_btn li.login a{
		background: #82CF00 url(../../../shared/img/parts/w_login.png) no-repeat center bottom 10px / 33px auto;
		}
	ul.mypage_btn li.join a{
		background: #00C0FF url(../../../shared/img/parts/w_join.png) no-repeat center bottom 10px / 33px auto;
		}
    ul.mypage_btn li.login a:hover {
		background: #FF8F00 url(../../../shared/img/parts/w_login.png) no-repeat center bottom 10px / 33px auto;
		}
	ul.mypage_btn li.join a:hover{
		background: #FF8F00 url(../../../shared/img/parts/w_join.png) no-repeat center bottom 10px / 33px auto;
		}
ul.mypage_btn li a{
	display: block;
	border-radius: 5px;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
	box-shadow: 0px 0px 15px -2px rgba(0,0,0,0.3);
	padding: 10px 20px 50px;
	font-size: 18px;
    font-weight: bold;
	line-height: 1.3;
	color: #FFFFFF;
    width: 100%;
	}
ul.mypage_btn li a span{
	display: block;
	font-size: 1.2em;
	}
ul.mypage_btn li a:hover {
	box-shadow: 0px 0px 8px -2px rgba(0,0,0,0.3);
}

.page_exam .read_box .flex-bet ul.mypage_btn,
.page_flowen .read_box .flex-bet ul.mypage_btn{
	flex-basis: 57%;
	}

@media screen and (max-width: 1280px) {
}
@media screen and (max-width: 1200px) {
}
@media screen and (max-width: 990px) {
	table.res_gray th{
		min-width: 9em;
		padding: 0 1em;
		}
		
}
@media screen and (max-width: 680px) {
	ul.mypage_btn li a{
		font-size: 1.05em;
		padding: 15px 20px 3.5em;
		line-height: 1.35;
		}
	ul.mypage_btn li a span{
		font-size: 1.1em;
		}
	ul.mypage_btn li.login a{
		background: #82CF00 url(../../../shared/img/parts/w_login.png) no-repeat center bottom 0.85em / 2em auto;
		}
	ul.mypage_btn li.join a{
		background: #00C0FF url(../../../shared/img/parts/w_join.png) no-repeat center bottom 0.85em / 2em auto;
		}
		
		
	.page_exam .read_box .flex-bet,
    .page_flowen .read_box .flex-bet{
		display: block;
		}
	.page_exam .read_box .flex-bet > span,
    .page_flowen .read_box .flex-bet > span{
		display: block;
		margin-bottom: 1.5em;
		font-size: 15px;
		}
	ul.mypage_btn{
		margin-bottom: 4em;
		}
	/*-----table-----*/
	table.gray th{
		padding: 0.3em 1em;
        width: 44%;
		}
	table.res_gray th{
        width: 100%;
        font-size: 15px;
		padding: 0.5em 1em;
		text-align: center;
		}
    table.res_gray.test_range {
        border-bottom: 1px solid #B4B4B5;
    }
    table.res_gray.test_range td:nth-child(3){
        width: inherit;
    }
	table.res_gray td{
        font-size: 15px;
        padding: 0.2em 15px 0.2em 20px;
        text-align: left;
        border-bottom: none;
        position: relative;
    }
    table.test_range td:nth-child(2){
        min-width: 100%;
        box-sizing: border-box;
        }
    table.res_gray td a {
        display: inline-block;
        position: relative;
    }
    table.res_gray td a:before,
    table.res_gray td:before {
        content:".";
        display: inline-block;
        position: absolute;
        color: #363b43;
        left: 10px;
        top: 0;
    }
    table.res_gray td a:before {
        left: -10px;
        top: -2px;
    }
    table.res_gray td a:first-child:before {
        content: none;
    }
	
}
@media screen and (max-width: 414px) {
}
@media screen and (max-width: 375px) {

}

.t_info dl{
	display: flex;
	display: -webkit-flex;
	font-size: 16px;
	background: #E9EDE8;
	margin-bottom: 3px;
	}
.t_info dl dt{
	padding: 0.4em 1em 0.4em 2em;
	min-width: 10%;
	background: #276155;
	color: #FFFFFF;
	}
.t_info dl dd{
	padding: 0.4em 1.2em;
	background: #E9EDE8;
	}


@media screen and (max-width: 1280px) {
}
@media screen and (max-width: 1200px) {
}
@media screen and (max-width: 990px) {
.t_info dl dt{
	padding: 0.4em 1.5em;
	min-width: 6em;
	}
	
}
@media screen and (max-width: 680px) {
	.t_info dl{
		display: block;
		background: none;
		margin-bottom: 1em;
        font-size: 15px;
		}
	.t_info dl dt{
		min-width: inherit;
        font-size: 16px;
		width: 6em;
		border-radius: 5px 5px 0 0;
		-webkit-border-radius: 5px 5px 0 0;
		-moz-border-radius: 5px 5px 0 0;
		}
	.t_info dl dd{
		border-radius: 0 0 5px 5px;
		-webkit-border-radius: 0 0 5px 5px;
		-moz-border-radius: 0 0 5px 5px;
		padding: 0.7em 1.2em;
		}
    .t_info dl dd a.arrow_bb:before {
        width: 14px;
        height: 14px;
        top: 4px;
    }
	.t_info dl dd a.arrow_bb{
		display: block;
		line-height: 1.5;
		}
		
}
@media screen and (max-width: 414px) {
}
@media screen and (max-width: 375px) {

}

/*---試験概要---*/
.overview_area{}
.overview_area .l_box{}
.overview_area .r_box{}
.overview_area .clearfix{
	margin-bottom: 40px;
	}


.overview_area .flex_double{
	margin-bottom: 55px;
	}
.overview_area .flex_double > div{
	flex-basis: 48%;
	}

table.test_range{}
.test_range a{
	text-decoration: none;
	}
.test_range td{
	text-align: center;
	min-width: 29%;
	}
.test_range td:nth-child(2){
	min-width: 24%;
	}
.test_range td:nth-child(3){
	width: 32.8%;
	}


@media screen and (max-width: 1280px) {
}
@media screen and (max-width: 1200px) {
}
@media screen and (max-width: 990px) {
}
@media screen and (max-width: 680px) {
	.overview_area .flex_double > div{
		margin-bottom: 3em;
		}

}
@media screen and (max-width: 414px) {
}
@media screen and (max-width: 375px) {

}


#exam02{}
#exam02 a.blue_btn{
	text-align: left;
    font-size: 18px;
    font-weight: bold;
	padding: 0.75em 4.5em;
	}
#exam02 a.blue_btn .w_arrow_r{
	display: block;
    padding-left: 40px;
	}
@media screen and (max-width: 680px) {
   #exam02 a.blue_btn{
        font-size: 16px;
        line-height: 1.2;
        padding: 0.75em 1em;
	}
}

@media screen and (max-width: 1280px) {
}
@media screen and (max-width: 1200px) {
}
@media screen and (max-width: 990px) {
}
@media screen and (max-width: 680px) {
}
@media screen and (max-width: 414px) {
}
@media screen and (max-width: 375px) {

}


#exam03{}
#exam03 .l_box{
	width: 69%;
	}
#exam03 .r_box{
	width: 25%;
	}

/* nth-of-typeを使うレスポンシブ */
.test_table {
	margin-bottom: 20px;
	}
.test_table table {
	margin: 0 auto;
	border: 3px solid #B4B4B5;
	width: 100%;
	border-collapse: collapse;
	font-size: 16px;
	}
.test_table table thead {
}
.test_table table thead th{
    font-size: 16px;
	background: #276155;
	color: #FFFFFF;
	text-align: center;
	padding: 0.25em 0.5em;
    font-weight: bold;
	letter-spacing: 1px;
	border-left: 1px solid #B4B4B5;
	}
.test_table table th {
	}
.test_table table th:first-child {
	border-left-width: 0;
	}
.test_table table tbody {
	vertical-align: top;
	}
.test_table table tbody tr {
}
.test_table table tbody td {
	border-left: 1px solid #B4B4B5;
	padding: 0.35em 1em;
	border-top: 1px solid #B4B4B5;
	overflow: hidden;
	vertical-align: middle;
	font-size: 16px;
	}
.test_table table tbody td:first-child {
	border-left-width: 0;
	}
.test_table table tbody td:last-child{
	text-align: center;
	}
/*.test_table table tbody td.pcnone{
	padding: 0;
	height: 0;
	border: none;
	}
*/



@media screen and (max-width: 1280px) {
	.test_table table tbody td{
		font-size: inherit;
		}
	
	
}
@media screen and (max-width: 1200px) {
}
@media screen and (max-width: 990px) {
}

/* モバイル用 */
@media screen and (max-width: 680px) {
	.test_table {
		margin-bottom: 10px;
		}
	.test_table table {
		width: 100%;
		margin: 0 auto;
		border: none;
		padding-bottom: 20px;
		font-size: 15px;
		line-height: 1.45em;
		}
	.test_table table thead{
		display: none;
		}
	.test_table table tbody tr {
		display: block;
		padding: 0;
		margin-bottom: 0.7em;
		border: 3px solid #B4B4B5;
		}
	.test_table table tbody td {
		display: block;
        font-size: 15px;
		border-left-width: 0;
        padding-left: 120px;
        position: relative;
        z-index: 1;
		}
    .test_table table tbody td span {
        display: inline-block;
        padding: 0;
        position: relative;
    }
    .test_table table tbody td:after {
        content:"";
		display: inline-block;
		vertical-align: middle;
        font-size: 15px;
		font-weight: bold;
		padding: 0.5em 0.5em;
		background: #276155;
		color: #FFFFFF;
		width: 110px;
        height: 100%;
        box-sizing: border-box;
        position: absolute;
        left: 0;
        top: 0;
        z-index: -1;
		}
	.test_table table tbody td:before {
		display: inline-block;
		vertical-align: middle;
		font-weight: bold;
		padding: 0.5em 0.5em;
		background: #276155;
		color: #FFFFFF;
		width: 110px;
        box-sizing: border-box;
        position: absolute;
        left: 0;
        top: 50%;
        transform: translateY(-50%);
		}
		.test_table table tbody td:first-child{
			border-top: 0px;
			}
		.test_table table tbody td:last-child{
			text-align: left;
			}
	.test_table table tbody td:nth-of-type(1)::before {
		content: "Date";
		}
	.test_table table tbody td:nth-of-type(2)::before {
		content: "Place";
		}
	.test_table table tbody td:nth-of-type(3)::before {
		content: "Job category";
		}
	.test_table table tbody td:nth-of-type(4)::before {
		content: "Information";
		}
	.test_table table tbody .thead_content {
	}
	.test_table th {
		display: none;
		}
	.test_table tr { /*padding: 0 15px; */
	}
}

@media screen and (max-width: 414px) {
	#exam03 .l_box{
		width: auto;
		}
	#exam03 .r_box{
		width: auto;
		}
	#exam03 .r_box a{
		display: block;
		width: 80%;
		margin: 0 auto;
		}
	
	#exam03 .r_box a > img{}
	
	
}
@media screen and (max-width: 375px) {

}



#exam04{}
#exam04 .l_box{
	width: 75%;
	}

#exam04 table.gray{}
#exam04 table.gray th{
	text-align: center;
	padding: 4px 1em;
	}
#exam04 table.gray td{
	text-align: center;
	}
#exam04 table.gray td:first-child{
	text-align: left;
	}


@media screen and (max-width: 1280px) {
}
@media screen and (max-width: 1200px) {
}
@media screen and (max-width: 990px) {
}
@media screen and (max-width: 680px) {
	#exam04 .l_box{
		width: auto;
		}
    #exam04 table.gray {
        table-layout: fixed;
    }
	#exam04 table.gray th{
		padding: 4px 0.3em;
		font-size: 14px;
        font-weight: bold;
		letter-spacing: 0;
        width: inherit;
		}
	#exam04 table.gray td{
		padding: 4px 0.5em;
		font-size: 14px;
		letter-spacing: 0;
        /*word-wrap: break-word;*/
		}
    #exam04 table.gray td .pdf {
        margin-left: 0;
    }
	#exam04 table.gray td:first-child{
		min-width: inherit;
		}
	#exam04 table.gray td:nth-child(3){
		min-width: inherit;
		}
	
}
@media screen and (max-width: 414px) {
}
@media screen and (max-width: 375px) {

}

.fits_area{ 
    display: flex;
	display: -webkit-flex;
	justify-content: space-between;
	font-size: 16px;
    margin-top: 60px;
	}
.fits_area p {
    margin-bottom: 0;
}
.fits_area p:first-child {
    width: 69.7%;
}
.fits_area p:nth-child(2) {
    width: 23.9%;
}	
@media screen and (max-width: 680px) {
    .fits_area{ 
        display: block;
    }
    .fits_area p:first-child {
        width: 100%;
    }
    .fits_area p:nth-child(2) {
        width: 100%;
    }	
    .fits_area p img {
        max-width: 235px;
        margin-top: 1.5em;
    }
		
}


/*試験申込から合格証明書受領までの流れ*/
.page_flowen{}

.page_flowen .flex-flow{
	display: flex;
	display: -webkit-flex;

	/*flex-wrap: wrap;*/
	justify-content: space-between;
	margin: 3em 0 0;
	align-items: flex-start;
	}
.page_flowen .flex-flow p{
	margin-bottom: 0;
	line-height: 1.6;
	}
.page_flowen .flex-flow .above_box,
.page_flowen .flex-flow .bottom_box{
	border-radius: 8px;
	-webkit-border-radius: 8px;
	-moz-border-radius: 8px;
	background: #E5F9FF;
	padding: 1.5em 1.5em;
	box-sizing: border-box;
	flex-basis: 26.5%;
	}
.page_flowen .flex-flow .bottom_box{
	align-self: flex-end;
	}

.page_flowen .flex-flow .flow_area{
	flex-basis: 43%;
	}
.page_flowen .flex-flow .flow_area > dl{
	border-radius: 8px;
	-webkit-border-radius: 8px;
	-moz-border-radius: 8px;
	overflow: hidden;
	display: flex;
	display: -webkit-flex;
	/*justify-content: space-between;*/
	/*align-items: center;*/
	/*align-content: center;*/
	text-align: center;
	font-size: 16px;
	}
.page_flowen .flex-flow .flow_area dl dt{
	color: #FFFFFF;
	background: #FF9800;
	flex-basis: 40%;
    font-size: 16px;
    font-weight: bold;
	min-height: 3.6em;
	display: flex;
	display: -webkit-flex;
	align-items: center;
	justify-content: center;
    box-sizing: border-box;
	}
.page_flowen .flex-flow .flow_area dl dd{
	background: #FFDAA9;
	flex-basis: 75%;
	display: flex;
	display: -webkit-flex;
	align-items: center;
	justify-content: center;
    box-sizing: border-box;
	}
.page_flowen .flex-flow .flow_area .arrow{
	display: block;
	min-height: 35px;
	background: url(../img/arrow.svg) no-repeat center right 30% / auto 88%;
	}
.flex-flow .flow_area dl.jac dt{
	background: #82CF00;
	}
.flex-flow .flow_area dl.jac dd{
	background: #D6EFAB;
	}

@media screen and (max-width: 1280px) {
}
@media screen and (max-width: 1200px) {
}
@media screen and (max-width: 990px) {
}
@media screen and (max-width: 680px) {
	.page_flowen .flex-flow{
		display: block;
		margin: 2.5em 0 0;
		}
	.page_flowen .flex-flow .above_box, .page_flowen .flex-flow .bottom_box{
		padding: 1.6em 1.6em;
		margin-bottom: 2.5em;
		}
	.page_flowen .flex-flow .flow_area{
		margin-bottom: 2.5em;
		}
	.page_flowen .flex-flow .flow_area > dl{
		font-size: 1em;
		}
	
}
@media screen and (max-width: 414px) {
}
@media screen and (max-width: 375px) {

}

@media screen and (max-width: 680px) {
    .blank {
        background: none;
    }
}

