@charset "utf-8";

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

　   mainImage

--------------------------------------------------------------------------------------------- */
#mainImage {
	position: relative;
	background: url(../img/mainImage.jpg) no-repeat center / cover;
	height: 100vh;
}
#mainImage .img {
	bottom: 2vw;
	right: 3vw;
	position: absolute;
}
@media only screen and ( max-width : 768px ) {
	#mainImage {
		height: 65vh;
	}
	#mainImage .img {
		max-width: 80%;
	}
}
/* ---------------------------------------------------------------------------------------------

　   ABOUT

--------------------------------------------------------------------------------------------- */
#about {
	background: url(../img/about_01.jpg) no-repeat center right / auto 100%;
	position: relative;
}
#about .txt1 {
	font-size: 26px;
	margin-bottom: 40px;
	transform:skewX(-5deg);
	font-weight: 600;
}
#about .txt2 {
	letter-spacing: 2px;
	color: #330000;
	line-height: 2;
}
@media only screen and ( max-width : 768px ) {
	#about .inner {
		position: relative;
		z-index: 2;
	}
	#about:after {
		content: "";
		background: rgba(255,255,255,0.8);
		position: absolute;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
		z-index: 1;
	}
	#about .txt1 {
		font-size: 4.2vw;
	}
	#about .txt2 {
		letter-spacing: 1px;
	}
}
@media only screen and ( max-width : 400px ) {
	#about .txt1 {
		font-size: 4.5vw;
		margin-bottom: 20px;
	}
	#about .txt2 {
		letter-spacing: 0;
	}
}
/* ---------------------------------------------------------------------------------------------

　   INTRO

--------------------------------------------------------------------------------------------- */
#intro {
	background: url(../img/about_bg.jpg) no-repeat center / cover;
	color: #fff;
}
#intro p {
	letter-spacing: 2px;
	text-align: center;
	line-height: 2;
}
#intro .intro_box {
	background: rgba(0,0,0,0.7);
	padding: 70px 10px;
	max-width: 700px;
	margin: 0 auto;
}
#intro .ttl {
	font-family: "ヒラギノ明朝 ProN W6", "HiraMinProN-W6", "HG明朝E", "ＭＳ Ｐ明朝", "MS PMincho", "MS 明朝", serif;
	margin-bottom: 35px;
	font-size: 36px;
	transform: skewX(-10deg);
}
#intro .buttom {
	margin-bottom: 20px;
}
@media only screen and ( max-width : 768px ) {
	#intro .intro_box {
		padding: 40px 10px;
	}
}
@media only screen and ( max-width : 480px ) {
	#intro .ttl {
		margin-bottom: 20px;
		text-align: center;
	}
	#intro p {
		text-align: left;
		letter-spacing: 0;
	}
}
@media only screen and ( max-width : 400px ) {
	#intro .ttl {
		font-size: 26px;
	}
}
/*-----------------------------------------------------------------------------------------------

	３分でわかる日本交通横浜採用ドラマ ～タクヤ編～

-----------------------------------------------------------------------------------------------*/
.video{
	position:relative;
	width:70%;
	padding-top:39.25%;
	margin: 0 auto 60px auto;
}
.video iframe{
	position:absolute;
	top:0;
	right:0;
	width:100%;
	height:100%;
}
#appeal .ttl {
	text-align: center;
	margin-bottom: 30px;
	font-size: 35px;
}
#appeal .link_box {
	text-align: center;
}
#appeal a {
	text-align: center;
}
@media only screen and ( max-width : 768px ) {
	.video{
		width: 95%;
		padding-top:56.25%;
	}
}
/* ---------------------------------------------------------------------------------------------

　  日本交通横浜で働く3つのメリット

--------------------------------------------------------------------------------------------- */
#workstyle article {
	margin: 16vw 0;
	padding-top: 3vw;
	color: #ff7f7f;
	position: relative;
}
#workstyle article:last-child {
	margin-bottom: 5vw;
}
#workstyle article::after {
	content: "";
	background: #ff7f7f;
	background: -moz-linear-gradient(left, #ffcb99 20%, #ff7f7f 100%);
	background: -webkit-linear-gradient(left, #ffcb99 20%,#ff7f7f 100%);
	background: linear-gradient(to right, #ffcb99 20%,#ff7f7f 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffcb99', endColorstr='#ff7f7f',GradientType=1 );
	position: absolute;
	z-index: -1;
	width: 100%;
	height: 120%;
	left: 0;
	top: -10%;
}
#workstyle .ttl {
	position: absolute;
	top: -6.2vw;
}
#workstyle article:nth-child(even) .ttl {
	left: 20px;
}
#workstyle article:nth-child(odd) .ttl {
	right: 20px;
}
#workstyle .txt_box {
	width: 52%;
	box-sizing: border-box;
	padding: 8vw 6vw;
	position: relative;
	background: #fff;
	z-index: 2;
}
#workstyle h3 {
	font-size: 1.7vw;
	position: absolute;
	top: -1vw;
	left: 2vw;
	font-weight: 500;
	font-style: normal;
}
#workstyle .parenthesis {
  width: 92%;
}
#workstyle p {
	font-size: 1vw;
	color: #cc2929;
	line-height: 2;
	margin-top: 30px;
}
#workstyle .img {
	width: 54%;
	position: absolute;
	bottom: -4vw;
}
#workstyle article .img img {
	width: 100%;
}
#workstyle article:nth-child(even) .img {
	right: 0;
}
#workstyle article:nth-child(odd) .img {
	left: 0;
}
@media only screen and ( max-width : 768px ) {
	#workstyle article {
		padding-top: 0;
		padding: 20px;
	}
	#workstyle .ttl {
		width: 300px;
		top: -41px;
	}
	#workstyle h3 {
		font-size: 3.5vw;
		position: relative;
		left: inherit;
	}
	#workstyle .txt_box {
		width: 100%;
		padding: 20px 20px 40px 20px;
	}
	#workstyle p {
		font-size: 14px;
		margin: 20px 0;
	}
	#workstyle .img {
		width: 100%;
		position: relative;
		text-align: center;
		margin-top: -30px;
		z-index: 2;
	}
	#workstyle .parenthesis {
	  width: 100%;
	}
}
@media only screen and ( max-width : 400px) {
	#workstyle .ttl {
		width: 200px;
		top: -20px;
	}
	#workstyle article {
		padding: 20px 10px;
	}
	#workstyle .txt_box {
		padding: 20px 10px;
	}
	#workstyle h3 {
		font-size: 16px;
		font-weight: 700;
		padding: 10px;
	}
	.parenthesis::before, .parenthesis::after {
		width: 20px;
		height: 20px;
		border-width: 2px;
	}
	#workstyle p {
		font-size: 3.7vw;
	}
}
/* ---------------------------------------------------------------------------------------------

	ドライバーの声

--------------------------------------------------------------------------------------------- */
.int_box {
	display: block;
	width: 100%;
	border-bottom: 4px solid #ff4d4d !important;
	border-top: 4px solid #ff4d4d !important;
	color:#ff4d4d;
	outline: none;
}
.first.int_box {
	border-top: 4px solid #ff4d4d !important;
}
.int_box:nth-child(even) .flexbox {
	flex-direction: row-reverse;
}
.int_box .lead {
	font-weight: bold;
	border-bottom: 1px solid #ff4d4d;
	font-style: italic;
	padding-bottom: 0.2em;
	margin-bottom: 0.5em;
}
.name_txt .job_position {
	border: 1px solid #ff4d4d;
	background-color: #ff4d4d;
	border-radius: 20px;
	color: #fff;
	display: inline-block;
	width: 200px;
	height: 30px;
	text-align: center;
	line-height: 30px;
	vertical-align: middle;
	font-size: 11px;
}
.name_txt .name {
	display: inline-block;
	vertical-align: middle;
}
.modal {
	color: #ff4d4d;
}
#int .modalBtn {
	border: none;
	background: none;
	cursor: pointer;
	padding: 0;
	margin: 0;
	position: relative;
	overflow: hidden;
}
#int .modalBtn img {
	-moz-transition: -moz-transform 0.5s linear;
    -webkit-transition: -webkit-transform 0.5s linear;
    -o-transition: -o-transform 0.5s linear;
    -ms-transition: -ms-transform 0.5s linear;
    transition: transform 0.5s linear;
}
#int .modalBtn:hover img {
	-webkit-transform: scale(1.08);
    -moz-transform: scale(1.08);
    -o-transform: scale(1.08);
    -ms-transform: scale(1.08);
    transform: scale(1.08);
}
#int .modalBtn:nth-child(even) .flexbox {
	justify-content: row-reverse
}
#int .modalBtn .name {
	font-weight: bold;
	line-height: 1em;
}
.int_top .lead {
	font-style: italic;
	font-weight: bold;
}
.int_top .name_box .name {
	font-weight: bold;
}
.modal_content dl {
	border: 5px solid #fff4f4;
	box-shadow: 2px 2px 2px rgba(0,0,0,0.1);
}
.modal_content dl dt {
	position: relative;
	font-size: 110%;
	font-style: italic;
	font-weight: bold;
	border-bottom: 2px solid #ffe6e6;
}
.modal_content dl dt:before {
}
.int_top .name_box .name {
	font-style: italic;
}
.name_span {
	margin-right: 20px;
}
@media print, screen and ( min-width : 1000px ) {
	.int_box .lead {
		font-size: 30px;
	}
}
@media only screen and ( max-width : 768px ) {
	.int_btn_txt {
		padding: 20px;
	}
	.int_box .lead {
		font-size: 20px;
	}
	.int_box .lead br {
		display: none;
	}
	#int .modalBtn .name {
		font-size: 40px;
	}
	.close_top {
		width: 50px !important;
	}
	.int_top_img {
		margin-bottom: 20px;
	}
	.int_top_inner .lead {
		font-size: 22px;
		margin-bottom: 20px;
	}
	.int_top_inner .lead br {
		display: none;
	}
	.int_top_inner .name {
		font-size: 40px;
	}
	.int_top_inner .name .position {
		font-size: 16px;
		margin-left: 15px;
	}
	.modal_content dl {
		padding: 20px;
	}
	.modal_content .img {
		margin-bottom: 20px;
		text-align: center;
	}
	.modal_content article {
		margin-bottom: 30px;
	}
	.modal_content dl dt {
		margin-bottom: 15px;
		padding-bottom: 10px;
	}
	.int_btn_txt {
		max-width: 60%;
	}
	.modalBtn .img {
		max-width: 40%;
	}
}
@media only screen and ( max-width : 480px ) {
	.int_top_inner .lead {
		font-size: 18px;
	}
	.int_btn_txt,.modalBtn .img {
		max-width: 100%;
		width: 100%;
	}
	.modalBtn .img {
		text-align: center;
	}
	.modalBtn .img img {
		max-width: 50%;
	}
	.name_txt .job_position {
		width: 160px;
	}
	.name_txt.taR {
		text-align: left !important;
	}
}
@media print, screen and ( min-width : 769px ) {
	.int_box .lead {
		font-size: 2.2vw;
	}
	.int_top {
		position: relative;
	}
	.int_top_inner {
		position: absolute;
		z-index: 2;
		top: 30px;
		left: 30px;
	}
	.int_btn_txt {
		max-width: 60%;
	}
	.modalBtn .img {
		max-width: 40%;
	}
	#int .modalBtn .name {
		font-size: 52px;
	}
	#int .modalBtn .position {
		font-size: 12px;
	}
	.int_top .name_box .name {
		font-size: 72px;
	}
	.int_top {
		margin-bottom: 40px;
	}
	.int_top .name_box .name .position {
		font-size: 18px;
	}
	.int_top .lead {
		font-size: 28px;
	}
	.modal_content article {
		margin-bottom: 40px;
		position: relative;
	}
	.modal_content article.int_article02 {
		justify-content: flex-end;
	}
	.modal_content article.int_article03 {
		justify-content: space-between;
	}
	.modal_content article:last-child {
		margin-bottom: 0;
	}
	.modal_content article .txt {
		width: 52%;
		background: #fff;
		position: absolute;
		z-index: 2;
	}
	.modal_content article.int_article01 .txt {
		right: 0;
		top: 20%;
	}
	.modal_content article.int_article02 .txt {
		left: 0;
		top: 16%;
	}
	.modal_content article.int_article03 .txt {
		width: 90%;
		position: relative;
		margin-left: 10%;
	}
	.modal_content article.int_article04 .txt {
		width: 90%;
		position: relative;
		margin-right: 10%;
	}
	.modal_content article.int_article01 .img {
		width: 52%;
	}
	.modal_content article.int_article02 .img {
		width: 52%;
	}
	.modal_content article.int_article03 .img,.modal_content article.int_article04 .img {
		margin-bottom: -60px;
		position: relative;
		z-index: 3;
	}
	.modal_content article.int_article04 {
		flex-direction: row-reverse;
	}
	.modal_content article .img img {
		width: 100%;
		box-shadow: 2px 2px 2px rgba(0,0,0,0.1);
	}
	.modal_content article:nth-child(odd) .img {
		left: 0;
	}
	.modal_content article:nth-child(even) .img {
		right: 0;
	}
	.modal_content dl {
		padding: 40px;
	}
	.modal_content article.int_article03 dl,.modal_content article.int_article04 dl {
		padding: 80px 40px 40px 40px;
	}
	.modal_content dl dt  {
		margin-bottom: 20px;
		padding-bottom: 10px;
	}
	.modal_content dl dd {
		margin-bottom: 20px;
	}
	.modal_content dl dd:last-child {
		margin-bottom: 0;
		color: #b25959;
	}
}
/* ---------------------------------------------------------------------------------------------

　  就業までの流れ

--------------------------------------------------------------------------------------------- */
.slider {
	display: none;
}
#job .slider_pc {
	text-align: center;
}
#job .slider_pc img {
	margin-bottom: 30px;
	width: 100%;
}
#job table {
	margin: 0 auto;
}
#job th {
	text-align: center;
	vertical-align: middle;
	width: 300px;
}
#job th:nth-child(2),
#job th:nth-child(4),
#job th:nth-child(6),
#job th:nth-child(8) {
	width: 10px;
}
#job th .arrow::after {
	font-family: 'Material Icons';
	content: "arrow_right";
	color: #ff8080;
	font-size: 100px;
	line-height: 1;
}
#job td {
	line-height: 2;
}
@media only screen and ( max-width : 1000px ) {
	.slider_pc {
		display: none;
	}
	.slider {
		display: block;
		width: 100%;
	}
	.slider img{
		height: auto;
		margin: 0;
		margin-left: auto;
		margin-right: auto;
	}
	.slick-prev:before,
	.slick-next:before {
		display: block;
		color: #000;
	}
}
/* ---------------------------------------------------------------------------------------------

　  募集要項

--------------------------------------------------------------------------------------------- */
#recruitment {
	background-color: #fff4f4;
}
#recruitment .tab_group {
	background: #fff;
	box-shadow: 2px 2px 2px rgba(0,0,0,0.1);
	padding: 40px;
}
#recruitment li a {
	position: relative;
	display: -webkit-box;
	display: -moz-box;
	display: -webkit-flexbox;
	display: -moz-flexbox;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: -moz-flex;
	display: flex;
	align-items: center;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
}
.ChangeElem_Btn {
	cursor: pointer;
	margin-bottom: 10px;
}
.ChangeElem_Btn_Content {
	-js-display : flex;
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-justify-content: space-between;
	justify-content: space-between;
}
.ChangeElem_Btn_Content button {
	background: #eee;
	font-size: 20px;
	font-style: italic;
	text-align: center;
	color: #676767;
	width: 32%;
	position: relative;
	border: 4px solid #676767;
	box-shadow: 0px 2px 2px rgba(0,0,0,0.1);
	outline: none;
	transition: .5s;
	padding: 20px 0;
}
.ChangeElem_Btn_Content button.is-active:hover,
.ChangeElem_Btn_Content button:hover {
	background: #fff4f4;
	box-shadow: 10px 10px 10px rgba(0,0,0,0.2);
}
.ChangeElem_Btn_Content button.is-active {
	border: 4px solid #ff8080;
	background: #fff;
	color: #ff6666;
	outline: none;
}
#recruitment table {
	border-collapse: inherit;
	border-spacing: 10px;
}
#recruitment td {
	box-shadow: 2px 2px 2px rgba(0,0,0,0.1);
	background: #fff5f5;
	color: #cc2929;
	padding: 30px;
	vertical-align: middle;
} 
#recruitment th {
	text-align: center;
  	background: #ff8080;
  	color: #fff;
	width: 320px;
	box-shadow: 2px 2px 2px rgba(0,0,0,0.1);
	vertical-align: middle;
}
#recruitment th i {
	display: block;
	text-align: center;
	margin-bottom: 1em;
}
#recruitment th i img {
	width: 30px;
}
.border_list li {
	border: 1px solid #cc2929;
	text-align: center;
	border-radius: 3px;
	padding: 5px;
	margin: 2.5px;
}
@media only screen and ( max-width : 768px ) {
	.ChangeElem_Btn_Content button {
		width: 49%;
	}
	#recruitment table {
		border-spacing: 0;
	}
	#recruitment td {
		display: block;
		padding: 20px 10px;
	} 
	#recruitment th {
		display: block;
		width: 100%;
		padding: 10px;
	}
	#recruitment th i {
		margin-bottom: 0;
	}
	#recruitment .tab_group {
		padding: 20px;
	}
}
@media only screen and ( max-width : 480px ) {
	#recruitment .tab_group {
		padding: 10px;
	}
	.ChangeElem_Btn_Content button {
		font-size: 16px;
		padding: 10px 0;
		margin-bottom: 10px;
	}
}
/* ---------------------------------------------------------------------------------------------

　   応募フォーム TEXT

--------------------------------------------------------------------------------------------- */
#app {
	position: relative;
	background: #ff7f7f;
	background: -moz-linear-gradient(left, #ff7f7f 20%, #ffcb99 100%); 
	background: -webkit-linear-gradient(left, #ff7f7f 20%,#ffcb99 100%);
	background: linear-gradient(to right, #ff7f7f 20%,#ffcb99 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ff7f7f', endColorstr='#ffcb99',GradientType=1 );
	margin: 150px 0 50px 0;
	padding: 50px 30px 30px 30px;
}
#app .img {
	position: absolute;
	left: 30px;
	top: -80px;
	width: 42%;
}
#app .txt_box {
	background: #fff;
	color: #ff4d4d;
	width: 60%;
	position: relative;
	z-index: 2;
	padding: 130px 30px 30px 60px;
}
#app h1 {
	position: absolute;
	top: -20px;
	font-size: 22px;
	font-weight: 600;
}
#app .parenthesis {
	width: 93%;
}
#app .app_ttl {
	position: absolute;
	right: 0;
	top: -37px;
}
@media only screen and ( max-width : 768px ) {
	#app {
		padding: 20px;
		margin: 0 0 50px 0;
	}
	#app .txt_box {
		width: 100%;
		padding: 20px 30px;
	}
	#app .txt_box .txt {
		margin-bottom: 0;
	}
	#app .parenthesis {
		position: inherit;
		width: 100%;
		top: 0;
		left: inherit;
		font-size: 3vw;
		margin-bottom: 20px;
	}
	#app .img {
		position: inherit;
		text-align: center;
		width: 100%;
		top: inherit;
		left: inherit;
	}
}
@media only screen and ( max-width : 480px ) {
	#app {
		padding: 10px;
		margin-bottom: 20px;
	}
	#app .parenthesis {
		padding: 15px 20px;
	}
	#app .txt_box {
		padding: 20px 10px;
	}
}
@media only screen and ( max-width : 400px ) {
	#app .parenthesis {
		padding: 10px;
		font-size: 4.5vw;
	}
}
/* ---------------------------------------------------------------------------------------------

　   応募フォーム

--------------------------------------------------------------------------------------------- */
#entry {
	max-width: 1000px;
	margin: 0 auto;
}
#entry table {
	margin-bottom: 30px;
	color: #333333;
	background: #fff;
	width: 100%;
	z-index: -1;
	border-collapse: inherit;
	border-spacing: 0 10px;
}
#entry th {
	background: #ff7f7f;
	color: #fff;
	outline: 1px solid #fff;
	outline-offset: -8px;
	letter-spacing: 2.5px;
	text-align: center;
    padding: 30px;
    width: 320px;
	vertical-align: middle;
	border: 2px solid #ffcccc;
	border-right: none;
}
#entry td {
	vertical-align: middle;
	border: 2px solid #ffcccc;
	border-left: none;
	padding: 10px;
}
input[type="text"],
textarea,
input[type="tel"],
input[type="email"] {
	border: none;
	display: block;
	background: #fff;
	width: 100%;
	-webkit-appearance: none;
	outline: none;
	height: 70px;
	padding: 0 10px;
}
textarea {
	height: 15em;
	resize: vertical;
}
::placeholder {
	color: #ccc;
	letter-spacing: 1px;
}
#entry select {
	font-family: 'Noto Sans', 'Noto Sans CJK JP', 'Noto Sans CJK JP Subset', sans-serif;
	padding-left: 10px;
	height: 40px;
	cursor: pointer;
	outline: none;
	border: none;
	width: 100%;
	box-sizing: border-box;
}
#entry .stbox select::-ms-expand {
    display: none;
}
#entry .stbox {
	position: relative;
	max-width: 300px;
	border: 1px solid #ff7f7f;
	margin-left: 5px;
}
#entry .stbox::before {
	position: absolute;
	bottom: 50%;
	right: 0;
	transform: translate(-50%,50%);
	width: 0;
	height: 0;
	padding: 0;
	content: '';
	border-left: 6px solid transparent;
	border-right: 6px solid transparent;
	border-top: 10px solid #f94b4a;
	pointer-events: none;
}
.radio02-input{
	display: none;
}
.radio02-input + label{
	padding-left: 25px;
	position:relative;
	cursor: pointer;
	margin: 0 0 10px 10px;
	display: block;
}
.radio02-input + label::before{
	content: "";
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	width: 18px;
	height: 18px;
	border: 1px solid #ff7f7f;
}
.radio02-input:checked + label{
	color: #ff7f7f;
}
.radio02-input:checked + label::after{
	content: "";
	display: block;
	position: absolute;
	top: 3px;
	left: 3px;
	width: 14px;
	height: 14px;
	background: #ff7f7f;
}
#entry input[type="submit"] {
	border: 4px double #ff7f7f;
	background: none;
	display: block;
	color: #ff7f7f;
	text-align: center;
	padding: 1rem;
	width: 100%;
	font-size: 18px;
	cursor: pointer;
	-webkit-transition: 0.5s;
	-moz-transition: 0.5s;
	-o-transition: 0.5s;
	transition: 0.5s;
	-webkit-appearance: none;
}
#entry input[type="submit"]:hover {
	background: #ff7f7f;
	border: 4px double #fff;
	color: #fff;
}
#entry .txt {
	margin-bottom: 30px;
	letter-spacing: 1px;
	color: #ff7f7f;
}
@media only screen and ( max-width : 768px ) {
	input[type="text"],
	input[type="tel"],
	input[type="email"] {
		height: 40px;
	}
	#entry th,
	#entry td {
		display: block;
		width: 100%;
	}
	#entry th {
		padding: 20px 0;
		border: 2px solid #ffcccc;
	}
	#entry td {
		padding: 15px 10px;
		border: 2px solid #ffcccc;
		border-top: none;
	}
	#entry .stbox {
		max-width: 100%;
	}
}