@charset "utf-8";
.main {
	padding: 0 0 150px;
}
.tit-h2 {
	font-size: 4.8rem;
	text-align: center;
	font-weight: normal;
	line-height: 1;
	margin-bottom: 4rem;
	font-weight: 500;
}

.mv {
	line-height: 0;
	position: relative;
	overflow: hidden;
}

.mv img {
	width: 100%;
}

.mv .txt {
	position: absolute;
	font-family: 'M PLUS Rounded 1c', sans-serif;
	color: #fff;	
	left: 4%;
	bottom: 13%;
	font-weight: bold;
	line-height: 1.6;
	text-shadow: 0 0 15px #000;
}

.mv .txt .fs-34 {
	font-size: min(2.7vw, 3.4rem);
}

.mv .txt .fs-40 {
	font-size: min(3.2vw, 4rem);
}

.mv .txt .fs-48 {
	font-size: min(3.9vw, 4.8rem);
}

.mv .txt .fs-60 {
	font-size: min(4.9vw, 6rem);
	line-height: 1.4;
}

.mv .txt .fs-90 {
	font-size: min(7.6vw, 9rem);
	line-height: 1.4;
}

.mv .red {
	color: #ff2600;
}

.mv .blue {
	color: #0c4097;
}

.mv .shadow-none {
	text-shadow: none;
}


.mv .shadow-02 {
	text-shadow: 2px 2px 10px #fff, -2px -2px 10px #fff, 3px 3px 10px #fff, -3px -3px 10px #fff, 4px 4px 10px #fff, -4px -4px 10px #fff;	
}

.mv .txt .btn-arr {
	margin: 30px 0 0;
	font-size: 1.8rem;
}

.mv .cap {
	position: absolute;
	right: 15px;
	bottom: 15px;
	font-size: 1.2rem;
	color: #ffffff;
	text-shadow: 1px 1px 5px #000, -1px -1px 5px #000, 2px 2px 5px #000, -2px -2px 5px #000;
}

.mv .slick-arrow {
	position: absolute;
	top: 50%;
	margin-top: -40px;
	width: 50px;
	height: 80px;
	border: none;
	text-indent: -9999px;
	z-index: 100;
	cursor: pointer;
}

.mv .slick-arrow:hover {
	opacity: 0.8;
}

.mv .slick-prev,
.mv .slick-prev:hover, 
.mv .slick-prev:focus {
	left: 0;
	background: url("../img/common/arrow-prev.png") no-repeat top left / cover;
}

.mv .slick-next,
.mv .slick-next:hover, 
.mv .slick-next:focus {
	right: 0;
	background: url("../img/common/arrow-next.png") no-repeat top left / cover;

}








#intro {
	background: #0c4097;
	color: #ffffff;
	overflow: hidden;
}

#intro .container {
	align-items: center;
	padding: 20px 0;
}

#intro .container > p {
	width: 360px;
	font-size: 2.6rem;
	font-weight: 500;
}

#intro .container > ul {
	width: calc(100% - 380px);
	align-items: center;
}

#intro .container > ul li {
	width: 48%;
}

#intro .container > ul li a {
	align-items: center;
	overflow: hidden;
	border-radius: 10px;
	background: #ffffff;
	color: #000000;
	border: 1px solid #ffffff;
}

#intro .container > ul li a figure {
	overflow: hidden;
}

#intro .container > ul li a img {
	transition: all 0.2s;
}

#intro .container > ul li a:hover img {
	transform: scale(1.1);
}

#intro .container > ul li a figure {
	width: 50%;
}

#intro .container > ul li a figure img {
	width: 100%;
}

#intro .container > ul li a p {
	width: 50%;
	color: #0c4097;
	font-size: 2.4rem;
	align-items: center;
	justify-content: center;
	font-weight: 500;
}










#topic {
	padding: 60px 0;
}

#topic .list {
    justify-content: center;
}

#topic .list .item {
	width: 32%;
	border: 2px solid #0c4097;
	border-radius: 10px;
	overflow: hidden;
    margin-right: 2%;
    display: flex;
}

#topic .list .item:last-of-type {
    margin-right: 0;
}

#topic .list .item a{
    width: 100%;
}

#topic .list .item figure {
	width: 45.1%;
    overflow: hidden;
    display: flex;
}

#topic .list .item figure img {
	transition: all 0.2s;
    min-height: 293px;
    object-fit: cover;
    object-position: center;
}

#topic .list .item .txt {
	width: 54.9%;
	padding: 5%;
	position: relative;
	z-index: 9;
}

#topic .list .item .txt .tit {
	color: #0c4097;
	font-size: 2.4rem;
	margin-bottom: 20px;
	font-weight: 500;
	line-height: 1.4;
}

#topic .list .item .txt .tit > * {
	vertical-align: middle;
}

#topic .list .item .txt .tit > span {
	display: initial;
}

#topic .list .item img {
	transition: all 0.2s !important;
}

#topic .list .item:hover img {
	transform: scale(1.2);
}





#news {
	margin-bottom: 110px;
}

#news .container {
	background: #e6ebf4;
	padding: 80px 20px;
	border-radius: 20px;
}

#news .nav-tab {
	max-width: 1240px;
	width: 100%;
	margin: 0 auto 40px;
}

#news .nav-tab {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}

#news .nav-tab li {
	width: 16%;	
}

#news .nav-tab li a {
	display: flex;
    justify-content: center;
    align-items: center;
    align-content: center;
    width: 100%;
	height: 68px;
	background: #0c4097;
	border: 2px solid #0c4097;
	border-bottom: 0;
	color: #fff;
	text-align: center;
    line-height: 1.2;
	border-radius: 10px 10px 0 0;
	cursor: pointer;
	transition: all 0.2s;
}

#news .nav-tab li a:hover,
#news .nav-tab li .active {
	background: none;
	color: #0c4097 !important;
}


.info-list{background: rgba(255,255,255,.5); border-radius: 6px; padding: 9px 20px 10px; max-width: 1240px; margin: 0 auto 40px;}
.info-list li{padding: 15px 0;}
.info-list li:not(:last-of-type){border-bottom: 1px solid #c4cbd8;}
.info-list a{display: block; padding: 0 45px 0 0; position: relative;}
.info-list a:after{width: 35px; height: 35px; content: ''; border-radius: 100%;
background: #fff url(../img/common/ic-arr-right-blue.svg) no-repeat center center / 6px 8px;
transition: all 0.2s; position: absolute; right: 0; top: 50%; transform: translateY(-50%); -webkit-transform: translateY(-50%);}
.info-list a:hover{color: #0c4097;}
.info-list a:hover:after{background: #0c4097 url(../img/common/ic-arr-right-white.svg) no-repeat center center / 6px 8px;}

#news .tab {
	display: none;
	margin-bottom: 45px;	
}


#news .tab ul {
	max-width: 1240px;
	width: 100%;
	margin: 0 auto;
}

#news .tab ul li {
	border-bottom: 1px solid #c4cbd8;
	align-items: center;
}

#news .tab ul li a {
	position: relative;
	padding: 1.5rem 45px 1.5rem 0;
	align-items: flex-start;
}

#news .tab ul li .txt {
	padding: 1.5rem 45px 1.5rem 0;
	align-items: flex-start;
}

#news .tab ul li a::after {
	width: 35px;
	height: 35px;
	content: '';
	border-radius: 100%;
	background: #fff url(../img/common/ic-arr-right-blue.svg) no-repeat center center / 6px 8px;
	transition: all 0.2s;
	position: absolute;
	right: 0;
	top: 50%;
	transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
}

#news .tab ul li a:hover::after {
	background: #0c4097 url(../img/common/ic-arr-right-white.svg) no-repeat center center / 6px 8px;
}

#news .tab ul li a:hover .tit {
	color: #0c4097;
}

#news .tab ul li .date {
	margin-top: 5px;
	width: 263px;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: center;
}

#news .tab ul li .date span:first-child {
	width: 80px;
}

#news .tab ul li .date span:last-child {
	width: calc(100% - 100px);
	text-align: center;
}

#news .tab ul li .tit {
	width: calc(100% - 283px);
}

#news .tab span[class^="lb"] {
	margin-left: 20px;
	color: #fff;
	font-size: 1.3rem;
	line-height: 1;
	padding: 5px 20px;
}

#news .tab .lb1 {
	background: #bd3616;
}

#news .tab .lb2 {
	background: #1050bb;
}

#news .tab .lb3 {
	background: #2d95d0;
}

#news .tab .lb4 {
	background: #545454;
}

#news .tab .lb5 {
	background: #10ae9d;
}

#news .tab a:hover span[class^="lb"] {
	color: #fff !important;
}

#news #tab1 {
	display: block;
}



#news .btn-arr {
	border: 2px solid transparent;
}

#news .btn-arr:hover {
	background: #fff !important;
	border-color: #0c4097;
}

#news .btn-arr:hover span {	
	color: #0c4097 !important;
}

#news .btn-arr:hover span::after {
	background-image: url("../img/common/ic-arr-right-blue.svg") !important;
}




#recruit {
	margin-bottom: 110px;
}
#recruit .container {
	position: relative;
	border-radius: 40px;
}

#recruit .container figure img {
	width: 100%;
}

#recruit .container .txt {
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
	width: 100%;
	text-align: center;
	color: #fff;
}

#recruit .container .txt .tit-h2 {
	text-shadow: 2px 2px 20px rgba(0,0,0,0.4), -2px -2px 20px rgba(0,0,0,0.4), 3px 3px 20px rgba(0,0,0,0.4), -3px -3px 20px rgba(0,0,0,0.4), 4px 4px 20px rgba(0,0,0,0.4), -4px -4px 20px rgba(0,0,0,0.4);
}

#recruit .container .txt .btn-arr {
	box-shadow: 2px 2px 20px rgba(0,0,0,0.4), -2px -2px 20px rgba(0,0,0,0.4), 3px 3px 20px rgba(0,0,0,0.4), -3px -3px 20px rgba(0,0,0,0.4), 4px 4px 20px rgba(0,0,0,0.4), -4px -4px 20px rgba(0,0,0,0.4);
}


.company ul li {	
	width: 23%;	
}

.company ul li a {
	overflow: hidden;
	display: block;
	border-radius: 10px;
	box-shadow: 0 0 10px #ccc;
	transition: all 0.2s;
}

.company ul li a:hover {
	box-shadow: 0 0 10px #0c4097;
}


/* MEDIA */

@media (max-width: 1400px){
	.tit-h2 {
		font-size: 3.6rem;
	}


	.mv .txt {
		bottom: 5%;
	}
	.mv .txt .fs-34 {
		font-size: 1.7vw;
	}

	.mv .txt .fs-40 {
		font-size: 2vw;
	}

	.mv .txt .fs-48 {
		font-size: 2.5vw;
	}

	.mv .txt .fs-60 {
		font-size: 3vw;
	}

	.mv .txt .fs-90 {
		font-size: 5vw;
	}

	.mv .txt .btn-arr {
		margin-top: 15px;
		padding: 15px 0;
	}

	


	#intro .container > p {
		width: 30%;
		font-size: 2vw;
	}

	#intro .container > ul {
		width: 68%;
	}

	#intro .container > ul li {
		width: 49%;
	}

	#intro .container > ul li a p {
		font-size: 1.5vw;
	}


	#topic .list .item .txt .tit {
		font-size: 1.8rem;
	}
}


@media (max-width: 1200px){
	.mv .slick-arrow {
		margin-top: -24px;
		width: 30px;
		height: 48px;
	}
}

@media (max-width: 1000px){

	#topic .list .item .txt .tit br {
		display: none;
	}

	#intro .arr-round {
		margin-left: 5px;
	}
	#intro .arr-round i {
		width: 20px;
		height: 20px;
	}
}

@media (max-width: 768px){
	.main {
		padding-bottom: 80px;
	}
	.tit-h2 {
		font-size: 3rem;
	}

	.mv .slick-arrow {
		margin-top: -19px;
		width: 24px;
		height: 38px;		
	}

	.mv .txt {
		left: 8%;
		bottom: 5%;
		width: 100%;
	}

	.mv .txt .btn-arr {
		margin-top: 4vw;
		width: 72%;
	}

	.mv .txt .fs-34 {
		font-size: 5vw;
	}

	.mv .txt .fs-40 {
		font-size: 5.2vw;
	}

	.mv .txt .fs-48 {
		font-size: 5.3vw;
	}

	.mv .txt .fs-60 {
		font-size: 9vw;
		line-height: 1.2;
	}

	.mv .txt .fs-90 {
		font-size: 11vw;
		line-height: 1.2;
	}

	.mv .shadow-none {
		text-shadow: 0 0 15px #000;
	}

	




	#intro .container {
		width: calc(100% - 20px);
	}

	#intro .container > p {
		width: 100%;
		text-align: center;
		margin-bottom: 10px;
		font-size: 2.4rem;
	}

	#intro .container > ul {
		width: 100%;
	}

	#intro .container > ul li a figure {
		width: 100%;
	}

	#intro .container > ul li a p {
		width: 100%;
		font-size: 1.8rem;
		padding: 10px 0;        
	}

	#topic .list .item {
		border: 0;
		border-radius: 0;
		height: 100%;
	}

	#topic .list .item > a {
		height: 100%;
	}

	#topic .list .item figure img {
		min-height: 38vw;
	}

	#topic .slick-track {
		display: flex !important;
	}

	#topic .slick-slide {
		margin: 0 5px;
		height: inherit !important;
		border: 2px solid #0c4097;
  		border-radius: 10px;
  		overflow: hidden;
	}

	#topic .slick-slide > div {
		height: 100%;
	}

	#topic .slick-dots {
		display: flex;
		justify-content: center;
		line-height: 1;
		margin-top: 6rem;
		border: 0;
	}


	#topic .slick-dots li {
		margin: 0;
	}

	#topic .slick-dots button {
		width: 50px;
		height: 5px;
		border-radius: none;
		background: #f2f2f2;
		text-indent: -9999px;
		position: relative;
	}


	#topic .slick-dots li.slick-active button::before {
		display: none;
	}

	#topic .slick-dots li.slick-active button {
		background: #0c4097;
	}

	#topic .slick-arrow {
		position: absolute;	
		top: auto;
		bottom: 0;	
		width: 29px;
		height: 29px;
		text-indent: -9999px;
		z-index: 100;
		cursor: pointer;
		left: 5%;
	}


	#topic .slick-prev,
	#topic .slick-prev:hover, 
	#topic .slick-prev:focus {
		background: url("../img/common/ic-prev.svg") no-repeat top left/100% 100%;
	}

	#topic .slick-next,
	#topic .slick-next:hover, 
	#topic .slick-next:focus {
		background: url("../img/common/ic-next.svg") no-repeat top left/100% 100%;
		left: auto;
		right: 5%;
	}

	#topic .list .item figure {
		width: 40%;
	}
	#topic .list .item .txt {
		width: 60%;
		padding: 5%;
	}
	#topic .list .item .txt .tit {
		font-size: min(4.5vw, 2.4rem);
	}

	#topic .arr-round i {
		width: 20px;
		height: 20px;
	}











	#news {
		margin-bottom: 60px;
	}

	#news .nav-tab li {
		width: 32%;
		margin-bottom: 2%;
	}

	#news .nav-tab li a {
		height: 52px;
		border: 1px solid #0c4097;
		font-size: min(3.5vw, 1.8rem);
	}	

    html[lang="en"] #news .nav-tab li a{
        padding: 0 0.5rem;
    }
    
	#news .container {
		width: 100%;
		padding: 40px 20px;
		border-radius: 0;
	}

	#news .tab ul li .txt {
		padding-right: 0;
	}

	#news .tab ul li .tit {
		width: 100%;
		margin-top: 1rem;
	}

	#news .tab ul li .date {
		margin-top: 0;
	}

	#news .btn-arr {
		width: 50%;
	}

	





	#recruit {
		margin-bottom: 60px;
	}

	#recruit .tit-h2 {
		margin-bottom: 3rem;
	}

	#recruit .container {
		border-radius: 20px;
	}
	#recruit .btn-arr {
		width: 60%;
	}

	.company ul li {
		width: 100%;
		text-align: center;
		margin-bottom: 20px;
	}

    

}

@media (max-width: 480px){
    html[lang="en"] #intro .container > ul li a p span{
        font-size: 3.6vw !important;
    }
    
    html[lang="en"] #intro .container > ul li a p.arr-r::after{
        margin-left: 10px;
    }
}