@charset "UTF-8";

/* ==================================================

採用情報

================================================== */

/*
section
--------------------------------------------------*/
#contents section {
	margin-top: 40px;
}

@media screen and (max-width: 767px) {
	#contents section {
		margin-top: 30px;
	}
}

#contents section .body {
	margin-bottom: 50px;
}

#contents section:last-child ,body {
	margin-bottom: 0;
}

#contents section .note2{
	margin-top: 10px;
	font-size: 20px;
	text-align: center;
}

@media screen and (max-width: 767px) {
	#contents section .note2 {
		margin-top: 0px;
	    font-size: 15px;
	}
}



/*
#contents
--------------------------------------------------*/
#contents .lead {
	font-size: 20px;
	margin-bottom: 80px;
}

@media screen and (max-width: 767px) {
	#contents .lead {
		font-size: 15px;
		margin-bottom: 1em;
	}
}

#contents h2 {
	color: #000;
	font-size: 28px;
	font-weight: normal;
	text-align: left;
	padding: 0 0 15px;
	margin: 0 0 30px;
	border-bottom: 2px solid #004EA2;
}

#contents h3 {
	font-size: 30px;
	line-height: 1.3;
	text-align: left;
	margin-top: 30px;
	margin-bottom: 40px;
	padding-left: 25px;
	border-left: solid 7px #004EA2;
}

@media screen and (max-width: 767px) {
	#contents #companyLower h3 {
		font-size: 18px;
		padding: 0.35em 0.75em!important;
		margin-top: 30px;
		margin-bottom: 1em;
	}
}


/*
table
--------------------------------------------------*/
#contents table {
	border-top: solid 1px #C2C2C2;
	border-left: solid 1px #C2C2C2;

}

#contents th,
#contents td {
	border-bottom: solid 1px #C2C2C2;
	border-right: solid 1px #C2C2C2;
	padding: 20px;
	text-align: left;
	box-sizing: border-box;
}

#contents th {
	background-color: #EFEFEF;
	border-right: none;
	width: 25%;
	vertical-align: middle;
	line-height: 1.3;
}

#contents td {
	width: 75%;
	line-height: 1.75;
}

#contents td p {
	margin-bottom: 1em!important;
}

#contents td .note {
	font-size: 14px;
	line-height: 1.5;
	display: inline-block;
}

@media screen and (max-width: 767px) {
	#contents th,
	#contents td {
		display: block;
		width: 100%;
		font-size: 15px;
		line-height: 1.6;
		padding: 1em;
		border-right: solid 1px #C2C2C2;
	}

	#contents td .note {
		font-size: 13px;
		display: inline-block;
		margin-top: 0.5em;
	}
}


/*
.toggle
--------------------------------------------------*/
#contents .hidden{
	display: none;
}

#contents .toggle{
	cursor: pointer;
	margin-bottom: 0;
}

#contents .toggle .arrow {
	position: relative;
	display: inline-block;
	padding: 0;
	color: #000;
	vertical-align: middle;
	text-decoration: none;
	font-size: 28px;
	width: 100%;
}

@media screen and (max-width: 767px) {
	#contents .toggle .arrow {
		font-size: 20px;
	}
}

#contents .toggle .arrow::after {
	content: "";
	top: 0;
	right: -95%;
	width: 12px;
	height: 12px;
	border-top: 3px solid #004EA2;
	border-right: 3px solid #004EA2;
	-webkit-transform: rotate(135deg);
	transform: rotate(135deg);
}

@media screen and (max-width: 767px) {
	#contents .toggle .arrow::after {
		right: -85%;
	}
}

#contents .open .toggle .arrow::after {
	content: "";
	top: -0;
	right: -95%;
	width: 12px;
	height: 12px;
	border-top: 3px solid #004EA2;
	border-right: 3px solid #004EA2;
	-webkit-transform: rotate(-45deg);
	transform: rotate(-45deg);
}

@media screen and (max-width: 767px) {
	#contents .open .toggle .arrow::after {
		right: -85%;
	}
}

#contents .close.toggle .arrow {
	display: inline-block;
	font-size: 18px!important;
	float: right;
	padding-right: 50px;
	margin-top: 40px;
	margin-bottom: 40px;
	width: auto;
}

@media screen and (max-width: 767px) {
	#contents .close.toggle .arrow {
		font-size: 15px!important;
		margin-top: 20px;
	}
}

#contents .close.toggle .arrow::after {
	top: 7px;
	right: -50%;
}


/*
.new-graduates
--------------------------------------------------*/
.new-graduates .briefing {
	margin: 0 0 5% 0;
}
.new-graduates .briefing img {
	width: 100%;
	height: auto;
}


/*
.privacy.float / .privacy.border
--------------------------------------------------*/
.privacy.float {
	overflow: hidden;
	padding: 20px;
	border-top: solid 1px #3F7AB9;
	border-bottom: solid 1px #3F7AB9;
	margin-top: 40px;
}
.privacy.float .text {
	margin-bottom: 20px;
}
.link {
    float: left;
    width: 452px;
}
.link a {
	position: relative;
	line-height: 1.5;
	color: #212529;
	display: block;
	padding: 10px 20px;
	border: solid 1px #578BBA;
	/* background-image: url("https://www.koseki.co.jp/assets/images/arrow-tiny.svg");
	background-position: right 25px center;
	background-repeat: no-repeat; */

	border-bottom: 1px solid #007dd9;
	border-right: 1px solid #007dd9;
	font-weight: 500;
	color: #007dd9;
}

.link a:hover {
	color: #fff;
	background-color: #007dd9;
	opacity: 1;
}

.link .pdf::after {
	content: "PDF";
	display: inline-block;
	color: #FFF;
	font-size: 16px;
	background-color: #E60512;
	line-height: 1;
	padding: 4px 8px;
	border-radius: 6px;;
	margin-left: 10px;
}
/*

.privacy.float p {
	float: left;
	padding-right: 30px;
	margin-bottom: 0!important;
	box-sizing: border-box;
}

@media screen and (max-width: 767px) {
	.privacy.float {
		padding: 20px 0;
		margin-top: 20px;
	}

	.privacy.float p {
		float: none;
		width: auto;
		padding-right: 0;
	}
}

.privacy.float .link {
	width: 45%;
	margin-top: 20px;
	float: right;
} */

@media screen and (max-width: 767px) {
	.privacy.float .link {
		width: 100%;
		margin-top: 20px!important;
		float: none;
	}
}

.privacy.border {
	overflow: hidden;
	padding: 20px 0;
	border-top: solid 1px #3F7AB9;
	border-bottom: solid 1px #3F7AB9;
}

.privacy.border p  {
	margin-bottom: 1em!important;

}

.privacy.float .link:hover,
.privacy.border .link:hover {
	background-color: #D4EAFF;
}

#contents .privacy.border p.link {
	margin-bottom: 0!important;
}
#contents .privacy.float .link .pdf::after {
	margin-right: 0;
}

/*
.entry-banner
--------------------------------------------------*/
.entry-banner {
	font-size: 26px;
	/*background: url("https://www.koseki.co.jp/assets/images/dot-bg.png") #eef4f7 repeat center center;*/
	background: url("https://www.koseki.co.jp/assets/images/banner_bg.png") #eef4f7 repeat center center;
	display: flex;
	justify-content: center;
	align-items: center;
}
	.entry-banner .banner2 a {
		display: inline;
	}
@media screen and (max-width: 767px) {
	.entry-banner {
		font-size: 16px;
		flex-wrap: wrap;
	}
}

.entry-banner .banner2 {
	margin-left: 50px;
	/*display: block;*/
}


@media screen and (max-width: 767px) {
	.entry-banner .banner2 {
		margin-top: 1em;
		margin-left: 0;
	}
	.entry-banner .banner2 a {
		display: block;
		margin-top: 1em;
		margin-left: 0;
	}
}

/*
.link
--------------------------------------------------*/
#contents .link {
	display: inline-block;
	line-height: 1;
}

@media screen and (max-width: 767px) {
	#contents .link,
	#contents .link a {
		display: block;
	}
}

/* #contents .link a span::before {
	content: "";
	left: 3px;
	width: 6px;
	height: 6px;
	border-top: 1px solid #000;
	border-right: 1px solid #000;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
} */

#contents .link .arrow {
	position: relative;
	display: inline-block;
	padding: 25px 10px 25px 40px;
	color: #000;
	vertical-align: middle;
	text-decoration: none;
	font-size: 16px;
}

@media screen and (max-width: 767px) {
	#contents .link .arrow {
		padding: 25px 10px 25px 40px;
		padding: 15px 0 15px 20px;
		font-size: 14px;
	}
}

#contents .link .arrow::before,
#contents .link .arrow::after {
	position: absolute;
	top: 0;
	bottom: 0;
	left: 30px;
	margin: auto;
	content: "";
	vertical-align: middle;
}

@media screen and (max-width: 767px) {
	#contents .link .arrow::before,
	#contents .link .arrow::after {
		left: 10px;
	}
}

#contents .link .pdf::after {
	content: "PDF";
	display: inline-block;
	color: #FFF;
	font-size: 16px;
	background-color: #E60512;
	line-height: 1;
	padding: 4px 8px;
	border-radius: 6px;;
	margin-right: 35px;
}

@media screen and (max-width: 767px) {
	#contents .link .pdf::after {
		font-size: 10px;
		padding: 2px 3px;
		margin-right: 0px;
		border-radius: 3px;;
	}
}
#contents .link a span.arrow2 {
	position: absolute;
	display: inline-block;
	content: "";
	top:18px;
	right: 20px;
	width: 8px;
	height: 8px;
	border-top: 2px solid #007dd9;
	border-right: 2px solid #007dd9;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}
#contents .link a:hover span.arrow2 {
	border-color: #fff;
}
@media screen and (max-width: 767px) {
	#contents .link a span.arrow2 {
		top: 35px;
	}
}


/*
.mailto
--------------------------------------------------*/
.mailadd {
    position: relative;
    top: 3px;
    height: 19px;
}


ul.tab li {
	cursor: pointer;
}

ul.tab li.active::after {
	position: absolute;
	top: 33px;
	bottom: 0;
	left: 48%;
	margin: auto;
	content: "";
	font-size: 20px;
	color: #004EA2;
	vertical-align: middle;
	content: "";
	bottom: 0px;
	width: 10px;
	height: 10px;
	border-top: 3px solid #fff;
	border-right: 3px solid #fff;
	-webkit-transform: rotate(135deg);
	transform: rotate(135deg);
}

ul.tab li::after {
	position: absolute;
	top: 25px;
	bottom: 0;
	left: 48%;
	margin: auto;
	content: "";
	font-size: 20px;
	color: #004EA2;
	vertical-align: middle;
	content: "";
	bottom: 0px;
	width: 10px;
	height: 10px;
	border-top: 3px solid #004EA2;
	border-right: 3px solid #004EA2;
	-webkit-transform: rotate(135deg);
	transform: rotate(135deg);
}


	.underline{
		position: relative;
		width: 1000px;
		margin: 0 auto;
	}
	ul.tab {
		display: table;
		position: relative;
	    list-style: none;
		vertical-align:middle;
		text-align:center;
		padding: 0!important;
		margin: 0 auto;
		 border-collapse: separate;
		 border-spacing: 10px 0;
	}
	ul.tab li {
 	width: 250px;
 	height: 60px;
 	margin: 0 20px 0 0;
 	float: left;
 	border:10px solid #ccdcec;

 	transition: all 0.5s ease-out;

 	position: relative;
 	display: table-cell;
 }
	ul.tab li:last-child  {
 		margin: 0;
	}

ul.tab li:hover {
 	border:10px solid #007dd9;
 }

 ul.tab li.active span {
 	display: inline-block;
 	color:#fff;
 }

 ul.tab li span {
 	display: inline-block;
 	color:#004EA2;
 	font-size: 20px;
 	text-align: center;
 	margin-top: 5px;
 	width: 100%;
 	display: block;
 	line-height: 1.5;
 	font-weight: bold;
 }
ul.tab li.active {
	background-color: #007dd9;
 	border:10px solid #007dd9;
}

ul.tab li:hover {
		/* transition: 0.2s; */
		color: #fff;
}
	div.tabContent {
	    clear: both;
	    padding: 20px;
	    display: none;
	}
	div.active {
	    display: block;
	}
	ul.tab li:nth-child(1),
	ul.tab li:nth-child(2) {
		float: left;
	}
	ul.tab li:nth-child(3) {
		float: right;
	}


div.tabContent {
    clear: both;
    display: none;
    padding: 20px 20px 0 20px;
	margin: 0 auto;
    max-width: 1000px;
    width: 100%;
}
div.active {
    display: block;
}

.career-tasin{
    display: inline-block;
    /*padding: 2px 1px;*/
    border: 1px solid #ccc;
}

@media screen and (max-width: 767px) {
	.underline{
		width: 90%;
		margin: 0 auto;
	}
	div.tabContent {
		padding: 20px 0;
	}

	div.tabContent table {
		width: 100%;
	}
	#contents #companyLower {
		padding: 0 10px;
	}
	ul.tab li {
 		width:100%;
 		margin: 0 0 3%!important;
 		padding: 15px 0;
 		box-sizing:border-box;
 		height: 70px;
 		border: 5px solid rgba(0,78,162,0.2);
 		display: flex;
 		align-items: center;
 		justify-content: center;
 	}
 	ul.tab li.active {
	background-color: #1d89e4;
 	border:5px solid #1d89e4;
	}
	ul.tab li:hover {
 	border:5px solid #1d89e4;
 	}
 	ul.tab li::after {
    	top: 33px;
    }
	ul.tab li span{
 		font-size: 15px;
 		height: 65px;
 		box-sizing: border-box;
 		width: 100%;
 		position: relative;
 		padding-top: 0;
 		padding: 10px 0;
 		display: block;
	}
	ul.tab li.active span {
		color: #fff;
 		font-size: 15px;
	}
	ul.tab li.active::after {
		border-color: #fff;
	}
	ul.tab li:nth-child(1) {
	}
	ul.tab li:nth-child(2) {
	}
}
