footer .ft_ttl {
	display: block;
}

header.fixed{
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	z-index: 2000;
}
header.fixed .logo{
	opacity: 1;
	visibility: inherit;
}
header.fixed .lang1{
	line-height: 25px;
	z-index: 11;
	width: 70px;
}
header .logo {
	opacity: 0;
	visibility: hidden;
}
#navbar .nav > li {
	position: relative;
}
#navbar .more.btn_show {
}
#navbar .more > a{
	display: block;
}
#navbar .more.btn_show > a{
	display: none;
}
#navbar .more ul{
	display: none;
}
#navbar .expand{
	margin-left: 5px;
}
#navbar .nav .one_show,
#navbar .nav .btn_show{
	padding: 0;
	opacity: 1;
    visibility: visible;
    transform: translateY(0);
    margin-right: 0 !important;
}
#navbar .nav .btn_show{
	margin-left: 0;
}
#navbar .nav .btn_show li:first-child{
	padding: 0;
}
#navbar .more.btn_show{
	margin-left: 0; 
}
#navbar .btn_show li,
#navbar .one_show ul{
	font-size: 13px;
}
#navbar .btn_show ul li, #navbar .one_show ul li{
	padding: 0 0 0 24px;
}
#navbar .one_show ul{
	display: block;
}
#index_tagline {
	letter-spacing: 1px;
}
@media screen and (max-width: 360px) {
	#index_tagline {
		letter-spacing: 0.8px;
	}
}
#logo{
	width:595px;
	height: 61px;
}
#logo svg{
	height: 100%;
	width: 100%;


	overflow: visible;
	
}


#logo svg .cls-1{
	opacity: 0;
	}




#container{
	margin-top: 0;
}
#main {
	width: 100%;
	position: relative;
	height: 100vh;
}
#main:before {
	height: 644px;
	width: 100%;
	top: 47%;
	position: absolute;
	left: 0;
	content: '';
}
#main .wrap {
	z-index: 10;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
}

#main .info {
	width: 50%;
}

#main h2 {
	padding-top: 0;
}
#main .txt {
	opacity: 0;
	font-size: 18px;
	line-height: 36px;
	letter-spacing: 3.4px;
	padding: 6% 0 0 3px;
}
#main #mission {
	width: 425px;
	padding-top: 110px;
	letter-spacing: 1px;
	font-weight: bold;
}
#main #mission h2 {
	width: auto;
}
#main #mission .txt2 {
	padding: 3% 0 8%;
	letter-spacing: 0px;
}

/*ir緊急対応枠*/

#sec-ir {
	padding: 40px 0;
	background-color: #fff;
	display: flex;
	justify-content: center;
}

#sec-ir .inner {
    max-width: 752px;
	width: 100%;
	display: flex;
	border: 1px solid #f00;
	align-items: center;
}

#sec-ir .date {
	margin: 5px;
	padding: 1px 10px;
	color: #fff;
	background-color: #f00;
}
#sec-ir .title {
	margin-left: 1em;
	width: 100%;
	color:#f00;
	font-weight: bold;
}

#sec-ir .title a {
	display: block;
}

#sec-ir .title a:hover {
	opacity: 0.6;
}

#sec3 {
	padding: 40px 0;
	background-color: #fff;
}
#sec3 .wrap {
	text-align: center;
    max-width: 752px;
	width: 100%;
}
#sec3 .title1 {
	display: flex;
    justify-content: center;}

#sec3 .space {
	display: block;
}
#sec3 .pickup_list {
	display: flex;
    flex-wrap: wrap;
    width: 100%;
    justify-content: space-between;
	align-items: center;
	margin-top: 20px;
}

#sec3 .pickup_list li {
	max-width: 200px;
    width: 100%;
}

#sec3 .pickup_list img {
	width: 100%;
}

#sec1 {
	position: relative;
	max-width: 1266px;
	margin: 0 auto;
	padding-top: 5%;
	padding-bottom: 210px;
}
#sec1 .group {
	width: calc(50% - 25px);
	background: #fff;
	position: relative;
	box-shadow: -7px 7px 24px 0px rgba(0, 0, 0, 0.08);
	cursor: pointer;
}
#sec1 .group:before {
	background: #f0f0f0;
	position: absolute;
	top: 0;
	left: 0;
	bottom: 0;
	right: 0;
	content: '';
	opacity: 0;
	transition: all 0.3s ease;
}
#sec1 .group:hover:before {
	opacity: 1;
}
#sec1 .group:hover .link:before {
	width: calc(100% + 50px);
}
#sec1 .group:hover .photo img {
	transform: scale(1.1);
	-moz-transform: scale(1.1);
	-webkit-transform: scale(1.1);
}
#sec1 .photo {
	position: relative;
	z-index: 1;
}
#sec1 .txt {
	padding: 3% 0 6%;
	font-weight: bold;
}
#sec1 h3 {
	font-size: 30px;
	letter-spacing: 0.6px;
}
#sec1 h3 span {
	font-weight: 300;
}
#sec1 .info {
	width: 490px;
	margin: 0 auto;
	padding: 9% 0 11%;
	position: relative;
	z-index: 1;
}
#company {
	position: relative;
	background: #f0f0f0;
	letter-spacing: 1px;
}
#company .photo {
	position: absolute;
	top: -10%;
	left: -8%;
}

#company .photo.animated {
    width: 0;
}
#company .photo[style*='visible'] {
    width: 100%;
}

#company .info {
	padding: 13% 0 12%;
	margin-left: 60%;
	position: relative;
	z-index: 1;
}

#company .txt {
	padding: 7% 0 18%;
	font-weight: bold;
}
#sec2 {
	position: relative;
	background: #f0f0f0;
	padding: 124px 0 129px;
	line-height: 22px;
	letter-spacing: 0.5px;
}
#sec2 dl {
	position: relative;
	font-weight: bold;
	padding-bottom: 6.5%;
}
#sec2 dl dt {
	font-size: 12px;
	font-weight: normal;
	color: #999;
	padding-bottom: 10px;
}
#sec2 dl dt .keywords li {
	font-weight: bold;
	text-align: center;
	display: inline-block;
	margin-left: 18px;
	padding: 0 30px;
	background: #fff;
	color: #000;
	font-size: 10px;
}
#sec2 dl dd{
	transition: all .3s ease;
}
#sec2 dl dd a:hover {
	color: #999;
}
#sec2 .link {
	float: right;
	text-align: right;
	font-size: 12px;
	width: 120px;
}
#sec2 .link:before{
	left: auto;
	right: 0;
}
#sec2 .link:hover:before{
	width: calc(100% + 20px);
}

#sec2 .group {
	width: 44.5454%;
}
#topic {
	position: relative;
	padding:127px 0 191px;
}
#topic .topics_item {
	display: block;
	width: 320px;
	margin-right: 70px;
	cursor: pointer;
	float: left;
}
#topic .topics_item:nth-child(3n) {
	margin-right: 0;
	padding-left: 0;
}

#topic .topics_item dt img {
	width: 100%;
	height: auto;
}

#topic .topics_item .date {
	font-size: 12px;
	color: #999;
	padding: 8% 0 2%;
}
#topic .topics_item dd{
	transition: all .3s ease;
}
#topic .topics_item:hover dd {
	color: #999;
}
#topic .topics_item:hover dt img {
	transform: scale(1.1);
	-moz-transform: scale(1.1);
	-webkit-transform: scale(1.1);
}
#topic .link {
	float: right;
	text-align: right;
	font-size: 12px;
	margin-top: 3%;
	width:120px;
}
#topic .link:before{
	left: auto;
	right: 0;
}
#topic .link:hover:before {
	width: calc(100% + 20px);
}
#recruit {
	position: relative;
	cursor: pointer;
	background: #242424;
}
#recruit:hover .photo img {
	transform: scale(1.1);
	-moz-transform: scale(1.1);
	-webkit-transform: scale(1.1);
}
#recruit:before {
	background: #000;
	position: absolute;
	top: 0;
	left: 0;
	width: 50%;
	height: 100%;
	content: '';
	opacity: 0;
	transition: all .3s ease;
}
#recruit:hover:before {
	opacity: 1;
}
#recruit:hover .link:before {
	margin-left: 0;
}
#recruit .photo {
	width: 50%;
	position: relative;
}

#recruit .txt {
	font-weight: bold;
	padding: 7% 0 14%;
}
#recruit .info {
	color: #fff;
	width: 50%;
	position: relative;
}
#recruit .info .group {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	
}

#recruit .link:before{
	background: #fff;
}
#recruit:hover .link:before{
	width: calc(100% + 50px);
}

.un_recruitLink_newWindow {
	display: inline-block;
	position: relative;
}
.un_recruitLink_newWindow::after {
	margin-top: -2px;
	width: 13px;
	height: 10px;
	content: '';
	display: block;
	background-image: url(../img/icon_new_window_white.png);
	background-size: 100% auto;
	background-repeat: no-repeat;
	position: absolute;
	right: -22px;
	top: 50%;
	transform: translateY(-50%);
}

/*-----------------------------------------------------
201904リニューアルトップ メインビジュアル
------------------------------------------------------*/
.un_mainvisVideoBlock { width: 100vw; height: 100vh; position: relative; overflow: hidden; display: none; z-index: -1; }
.un_mainvisVideoBlock .un_mainvisVideo { position: absolute; top: 50%; left: 50%; transform: translate(-50%,-50%); }
.un_mainvisVideoBlock .un_mainvisVideo.is_height_100per { width: auto; max-width: none; height: 100%; max-height: 100%; }
.un_mainvisVideoBlock .un_mainvisVideo.is_width_100per { width: 100%; max-width: 100%; height: auto; max-height: none; }

/* 動画再生中のメインビジュアルにある文字色の制御 */
.un_mainvisLogo svg .cls-1 { fill: #fff; transition: fill 3s; }
.un_mainvisLogo.is_videoEnd svg .cls-1 { fill: red; }

.un_mainvisLogo .un_mainvisCopy { color: #fff; transition: color 3s; }
.un_mainvisLogo.is_videoEnd .un_mainvisCopy { color: #000; }

.un_mainvisTxt { opacity: 0; transition: opacity 3s; }
.un_mainvisTxt.is_videoEnd { opacity: 1; }

/* メインビジュアルを見ていて、背景動画も再生していたらヘッダーナビの色は白 */
@media screen and (min-width: 1049px) {
	.nav-fixed #navbar nav { transition: color 0.3s; }
	.nav-fixed.is_videoPlay #navbar nav { color: #fff; }
	.nav-fixed.is_videoPlay #navbar a.newWindow::after { background-image: url(../img/icon_new_window_white.png); }
	.nav-fixed.is_videoPlay #navbar li a:before { background-color: #fff; }
	.nav-fixed.is_videoPlay #navbar li.active a:before { background-color: #fff; }
	.nav-fixed.is_videoPlay.fixed #navbar li a:before { background-color: #000; }
	.nav-fixed.is_videoPlay.fixed #navbar li.active a:before { background-color: #999; }
	.nav-fixed.is_videoPlay.fixed #navbar nav { color: #000; }
} /* media */


/*-----------------------------------------------------
201904リニューアルトップ リクルート別ウィンドウアイコン
------------------------------------------------------*/
.un_recruitLink_newWindow::after { margin-top: -2px; width: 13px; height: 10px; content: ''; display: block; background-image: url(../img/icon_new_window_white.png); background-size: 100% auto; background-repeat: no-repeat; position: absolute; right: -22px; top: 50%; transform: translateY(-50%); }

@media screen and (max-width: 767px) {
	.un_recruitLink_newWindow::after { margin-top: -1px; right: -18px; }	
} /* media */



/*=============================================
 * RESPONSIVE
 *=============================================*/

@media screen and (min-width: 768px) {
	#company .company_ttl {
		font-size: 38px;
	}

	#sec-ir {
		width: 100%;
	}

	#sec3 h3 {
		font-size: 36px;
	}
	#sec2 h3 {
		font-size: 36px;
		letter-spacing: 0.6px;
		padding-bottom: 8.8%;
	}
	#sec2 dl{
		font-size: 13px;
	}
	#topic .topic_ttl {
		font-size: 36px;
		letter-spacing: 0.6px;
		padding-bottom: 4%;
	}
	#topic dl{
			font-size: 13px;
		line-height: 22px;
	}
	#recruit .recruit_ttl {
		letter-spacing: 0.6px;
		font-size: 36px;
	}
	
}
@media screen and (max-width: 1050px){

	header .logo{
		display: none;
	}
	
	header .more > a{
		display: none;
	}
	header .more ul{
		display: block;
	}

}
@media screen and (max-width: 767px) {
	#logo{
		width: 360px;
		height: auto;
		height: 50px;
	}
	#logo svg{
		width: 360px;
		height: 50px;
		margin-left: 20px;

	}
	
	#main {
		padding-top: 30%;
		/*height: 81vh;*/
	}
	
	#main:before {
		
		height: 50%;
	}
	#main .wrap {
		position: initial;
		transform: none;
		top: auto;
		left: auto;
		margin-top: 50px;
	}

	#main .txt{
		font-size: 13px;
		line-height: 26px;
		letter-spacing: 1.8px;
		padding: 6px 0 0 0;
	}
	#main h2 {
		width: 80%;
	}
	#main .info {
		width: 100%;
	}
	#main #mission {
		width: auto;
		padding-top: 10%;
		right: 10%;
		float: right;
	}
	
	#sec-ir {
		display: block;
	}

	#sec-ir .inner {
		max-width: auto;
		width: auto;
		margin: 0 20px;
	}
	
	#sec3 .wrap {
		max-width: 640px;
	}

	#sec3 .sp {
		display: none !important;
	}
	#sec3 .space {
		display: block;
	}

	#sec3 .pickup_list {
		justify-content: center;
		gap: 40px;
	}

	#sec1 {
		padding-bottom: 14%;
	}
	#sec1 h3{
		font-size: 16px;
		line-height: 20px;
	}
	#sec1 .group {
		width: 84%;
		margin: 0 auto;
	}
	#sec1 #business {
		margin-top: 7%;
	}
	#sec1 .info {
		width: 90%;
	}
	#company .wrap {
		padding: 0;
		width: 100%;
	}
	#company .info {
		width: 84%;
		margin: 0 auto;
	}
	#company .txt {
		padding: 5% 0;
	}
	#company .photo {
		position: relative;
		top: auto;
		left: auto;
		width: 92%;
		padding-bottom: 9%;
	}
	#sec2{
		padding: 13% 0;
	}
	#sec2 h3{
		padding-bottom: 5%;
	}
	#sec2 .wrap{
		width: 100%;
		padding:  0;
	}
	#sec2 .group {
		width: 84%;
		margin: 0 auto;
		overflow: hidden;
	}
	#sec2 .link{
		width: 90px;
	}
	#sec2 dl{
		padding-bottom: 4%;
	}
	#sec2 #media {
		margin-top: 7%;
	}
	#sec2 dl dt{
		font-size: 10px;
		line-height: 15px;
	}
	#topic {
		padding: 0% 0 20%;

	}
	#topic .topic_ttl{
		padding:  10% 0;
	}
	#topic > div{
		padding: 0 !important;
	}
	#topic .topic_ttl{
		width: 90%;
		margin: 0 auto;
	}
	#topic .topics_item {
		width: 50%;
		box-sizing: border-box;;
		margin-right: 0;
		padding-left: 5%;
		padding-right: 5%;
	}

	#topic dl + dl{
		padding-left: 0;
	}

	#topic dl .date{
		font-size: 10px;
	}
	#topic .slick-dots {
		width: 100%;
		text-align: center;
		position: relative;
		padding-top: 5px;
		z-index: 1000;
	}
	#topic .slick-dotted.slick-slider{
		margin-bottom: 0;
	}
	#topic .link{
		width: 90px;
		margin-right: 5%;
		margin-top: 25px;
	}
	#topic .slick-dots li{
		margin: 0;
	}
	#topic .slick-dots li button {
		display: inline-block;
		height: 10px;
		margin: 0 5px;
		overflow: hidden;
		width: 10px;
	}
	#topic .slick-dots li button:before {
		background: #c0c0c0;
		display: block;
		height: 10px;
		padding: 0;
		width: 10px;
		border-radius: 50%;
		opacity: 1;
		content: '';
	}
	#topic .slick-dots li.slick-active button:before {
		background: #000;
	}
	#recruit{
		overflow: hidden;
	}
	#recruit:before {
		width: 100%;
	}
	#recruit .w_50pc {
		width: 100%;
	}
	#recruit .info {
		padding-bottom: 5%;
	}
	#recruit .info .group {
		width: 92%;
	}
	#recruit .txt {
		padding:  3% 0 8%;
		font-size: 12px;
		line-height: 20px;
		letter-spacing:1px;
	}
	#recruit .info .group {
	left: 55%;	
	}

	@media screen and (max-width: 488px) {
		#sec3 .pickup_list li {
			max-width: 140px;
			width: 100%;
		}
	}

	@media screen and (max-width: 374px) {
		#sec3 .sp {
			display: block !important;
		}
		
		#sec3 .space {
			display: none;
		}

		#sec3 .pickup_list li {
			max-width: 200px;
			width: 100%;
		}
	}

	/*-----------------------------------------------------
	201904リニューアルトップ
	------------------------------------------------------*/
	.un_mainvisVideoBlock { position: absolute; top: 0; }
	.un_mainvisVideoBlock .un_mainvisVideo.is_height_100per,
	.un_mainvisVideoBlock .un_mainvisVideo.is_width_100per { width: auto; max-width: none; height: 100%; max-height: 100%; }
	
}/* media */

@media screen and (min-width: 1051px){
	header{
		position: fixed;
		top: 80px;
		left: 0;
		transform: translateY(-80px);
		-moz-transform: translateY(-80px);
		-webkit-transform: translateY(-80px);
		transition:
			background .3s ease,
			transform .3s ease;
		-moz-transition:
			background .3s ease,
			transform .3s ease;
		-webkit-transition:
			background .3s ease,
			transform .3s ease;
		z-index: 1;
	}
	header.fixed{
		background: rgba(248,248,248,0.9);
		transform: translateY(0);
		-moz-transform: translateY(0);
		-webkit-transform: translateY(0);
		transition: transform .3s ease;
		-moz-transition: transform .3s ease;
		-webkit-transition: transform .3s ease .3s;
	}
}
@media screen and (max-width: 520px) {

	#main #mission{
		position:absolute;
		bottom:20%;
		right: 3%;
	}
}

@media screen and (max-width: 360px) {
#logo{
		width: 360px;
		height: auto;
		height: 44px;
	}
	#logo svg{
		width: 340px;
		height: 44px;
		margin-left: 23px;

	}
}
