.clearfix:after {
	content: ".";
	display: block;
	height: 0;
	font-size: 0;
	clear: both;
	visibility: hidden;
}
.clearfix {
	display: inline-block;
}
* html .clearfix {
	height: 1%;
}
.clearfix {
	display: block;
}
.m_t_80 {
	margin-top:80px;
}
.tabs {
	margin-top: 50px;
	padding-bottom: 40px;
	background-color: #f7f7f7;
	width: auto;
	margin: 0 auto;
	line-height: 1.6em;
}
.tabs h3 {
	font-size:28px;
	text-align: center;
	margin-bottom:50px;
	font-weight: bold;
}
.tabs h3 span {
	display: block;
	font-size:16px;
	color:#949494;
	margin-top:15px;
}
.tabs h4 {
	font-size:20px;
	text-align: center;
	margin-top:70px;
	margin-bottom:20px;
}
.tab_item {
	display:none;
}
.tabBtn li {
	width: calc(100%/5);
	height: 70px;
	line-height: 70px;
	font-size: 20px;
	text-align: center;
	display: block;
	float: left;
	font-weight: bold;
	transition: all 0.2s ease;
	box-sizing: border-box;
	border-right: 2px solid #fff;
	cursor: pointer;
	position:relative;
	font-size:16px;
}
.tabBtn li a {
	color: #000;
	display:block;
	background-color: #dbe6f1;
}

.tabBtn li:hover {
	opacity: 0.75;
}
.tab_content {
	display: none;
	padding: 80px 40px 0;
	clear: both;
	overflow: hidden;
}
#company:target ~ #company_content, #outline:target ~ #outline_content, #list:target ~ #list_content, #program_type:target ~ #program_type_content {
	display: block;
}
.tabs #company:target ~ .tabBtn li a[href="#company"], .tabs #outline:target ~ .tabBtn li a[href="#outline"], .tabs #list:target ~ .tabBtn li a[href="#list"], .tabs #program_type:target ~ .tabBtn li a[href="#program_type"]  {
	background-color: #0659af;
	color: #fff;
	position: relative;
}
.tabs #company:target ~ .tabBtn a[href="#company"], .tabs #outline:target ~ .tabBtn a[href="#outline"], .tabs #list:target ~ .tabBtn a[href="#list"], .tabs #program_type:target ~ .tabBtn a[href="#program_type"]  {
	color: #fff;
}
.tabs #company:target ~ .tabBtn a[href="#company"]:before, .tabs #outline:target ~ .tabBtn a[href="#outline"]:before, .tabs #list:target ~ .tabBtn a[href="#list"]:before, .tabs #program_type:target ~ .tabBtn a[href="#program_type"]:before {
	content: "";
	position: absolute;
	top: 100%;
	left: 50%;
	margin-left: -20px;
	border: 20px solid transparent;
	border-top: 15px solid #0659af;
}
#tab_wrap {
	background:#f7f7f7;
}
.company_content_l {
	float:left;
	width:55%;
}
.company_content_r {
	float:right;
	width:40%;
}
.company_content_r img {
	max-width:100%;
}
.company_btn_wrap {
	display:block;
	width:320px;
	margin: 20px auto 30px;
	border:1px solid #8c8c8c;
	text-align: center;
	box-shadow: 0 4px 0 0px rgb(189, 189, 189)
}
.company_btn_wrap a {
	padding:20px 10px;
	display: block;
	border:7px solid #f5f5f5;
	background-color:#fff;
	background-image:url(../corp/img/pdf_icn.gif);
	background-repeat: no-repeat;
	background-position:left 10px center;
	background-size:auto;
	font-weight:bold;
}
.tabs .note {
	text-align: center;
}
.tabs .note a {
	text-decoration: underline;
}
.company_list {
	text-align: center;
}
.tabs table {
	width:100%;
	border-collapse: inherit;
	border-spacing: 5px;
}
.tabs table th {
	text-align: left;
	background: #595959;
	color:#fff;
	padding:15px;
	border:1px solid #c5c5c5;
	vertical-align: middle;
	width:150px;
}
.tabs table td {
	padding:15px;
	background: #fff;
	border:1px solid #c5c5c5;
	vertical-align: middle;
}
.tabs table td span {
	font-weight:bold;
	display: block;
	margin-bottom:20px;
}
.tabs table td ul {
	margin:20px auto;
}
.tabs table td ul li {
	width:48%;
	float:left;
}
.tabs table td dt,.tabs table td dd {
    margin: 0;
    padding: 0;
}
.tabs table td dl {
    width: 100%;
    display: flex;
    flex-wrap: wrap;
}
.tabs table td dl dt,
.tabs table td dl dd {
    box-sizing: border-box;
    padding: 0px 0px 30px;
}
.tabs table td dl dt {
    font-size: 16px;
    width: 150px;
}
.tabs table td dl dd {
    width: calc(100% - 150px);
}
#list_content table th, #list_content table td {
	text-align: center;
}
#program_type_content table th {
	text-align: center;
}
.bg_gray th, .bg_gray td {
	background:#d9d9d9!important;
	color:#000!important;
}
.bg_blue th {
	background: #0cbcf2!important;
	border: 1px solid #595959!important;
}
.bg_blue td {
	background: #b9e5f2!important;
}
.bg_yellow td {
	background: #faf3cc!important;
}
.bg_yellow td p {
	text-align: center;
	margin-bottom: 30px;
}
.bg_yellow td span {
	font-weight: normal!important;
	margin-bottom: 0!important;
	margin-top:20px;
}
.txt_c {
	text-align: center!important;
}
#program_type_content h4 {
	background:#fff;
	text-align: center;
	border-top:2px solid #c5c5c5;
	border-bottom:2px solid #c5c5c5;
	padding:10px 0;
	font-weight:bold;
	margin-bottom:50px;
}
.program_type_btn_wrap {
	margin-bottom:60px;
}
.program_type_btn_wrap.ex {
	text-align: center;
}
.program_type_btn_wrap.ex .company_btn_wrap {
	display: inline-block;
	margin:20px 8px 30px;
}
.disp_sp {
	display: none;
}
@media screen and (max-width: 42em) {
	.tabs #company:target ~ .tabBtn a[href="#company"]::before, .tabs #outline:target ~ .tabBtn a[href="#outline"]::before, .tabs #list:target ~ .tabBtn a[href="#list"]::before, #program_type:target ~ .tabBtn a[href="#program_type"]::before {
		display:none;
	}
	.tabBtn li {
		width:calc(100%/2);
		margin-bottom:2px;
	}
	.tabBtn li:nth-child(2), .tabBtn li:nth-child(4) {
		border-right:none;
	}
	.company_content_l {
		width:100%;
		float: none;
	}
	.company_content_r {
		width:100%;
		float: none;
		margin-top:30px;
		text-align: center;
	}
	.tab_item {
		font-size:14px;
		line-height: 1.5em;
		padding-top:25px;
	}
	.tab_item:last-of-type {
		padding-top:13px;
	}
	.tab_content {
		padding:50px 20px 0;
	}
	.disp_sp {
		display: block;
	}
	.tabs h3 {
		font-size:20px;
		margin-bottom:30px;
	}
	#program_type_content table th {
		width:auto;
		display: block;
	}
	#program_type_content table td {
		display: block;
		width: auto;
	}
	#program_type_content table {
		text-align: center!important;
	}
	.tabs h4 {
		font-size:18px;
	}
	.tabs table th, .tabs table td {
		display: block;
		width:auto;
		padding: 10px;
		font-size: 13px;
	}
	.tabs table td dl dt {
		width:120px;
	}
	.tabBtn li {
		font-size: 13px;
		height: 40px;
		line-height: 40px;
	}
	.company_btn_wrap a {
		padding: 10px 10px;
	}
}