@charset "UTF-8";
/*******************************
 
TopCss
 
*******************************/
/*-----------------------------
mainimg
-----------------------------*/
.firstview{
	position: absolute;
	width: 100%;
	height: 100%;
	overflow: hidden;
}
.firstview:before{
	content: "";
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1;
    width: 100%;
    height: 100%;
	background: rgb(10 53 90 / 30%);
}
.firstview .waku{
    width: 100%;
    height: 100%;
	background: #fff;
}
.firstview img{
	width: 100%;
	max-width: none;
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	margin: auto;
	-webkit-animation: eco 30s linear infinite;
	animation: eco 30s linear infinite;
}
/*画像アニメーション*/
@-webkit-keyframes eco{
    25% { transform: scale(1.2); }
}
@keyframes eco{
    25% { transform: scale(1.2); }
}

/*ボーダーアニメーション*/
.firstview .loadingbar {
    width:100%;
	height:10px;
	position: absolute;
	bottom: 0;
	left: 0;
	z-index: 2;
}
.firstview .loadingbar .in {
	display: block;
    width:100%; /* 横幅100% */
    height:10px;
    background:#044484;
	position: relative;
}
.firstview .loadingbar .in:before {
	content: "";
    width:100%;
    height:10px;
    margin:0;
    background:#9ECAEF;
    position:absolute;
	top: 0;
	left: 0;
    -moz-animation:fullexpand 6s ease-out;
    -webkit-animation:fullexpand 6s ease-out;
}
@-moz-keyframes fullexpand {
    0%  { width:0px;}
    100%{ width:100%;} 
}
@-webkit-keyframes fullexpand {
    0%  { width:0px;}
    100%{ width:100%;} 
}


.mainimg{
	position: relative;
}
.mainimg img{
	width: 100%;
}
.mainimg .lead{
	position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
	z-index: 1;
    margin: auto;
    height: 225px;
	line-height: 2.5;
    font-size: 190%;
    font-weight: 600;
    letter-spacing: .1em;
    color: #fff;
    text-align: center;
}
/*==== mobile スマフォ縦用css ===*/
@media screen and (max-width: 480px){
	.mainimg .lead{
		font-size: 110%;
		height: 97px;
	}
}


/*-----------------------------
advantage
-----------------------------*/
.advantage,
.advantage a{
	color: #fff;
}
.advantage{
	background: url("../img/top/advantage_bg.jpg") no-repeat center;
	background-size: cover;
	padding: 90px 0 50px;
}
.advantage ul{
	max-width: 1126px;
	margin: auto;
	flex-flow: nowrap;
	justify-content: center;
	align-items: baseline;
}
.advantage li{
	width: 100%;
	padding: 0 30px;
}
.advantage li a img{
	transition: all 300ms 0s ease;
}
.advantage li a:hover img{
	-webkit-transform:translate(0, -5px);
    transform:translate(0, -5px);
}
.advantage li p{
	text-align: center;
	font-weight: 600;
	font-size: 112.5%;
	margin-top: 15px;
}


/*==== mobile スマフォ横〜用css ===*/
@media screen and (max-width: 896px){
	.advantage li{
		padding: 0 20px;
	}
}
/*==== mobile スマフォ縦用css ===*/
@media screen and (max-width: 480px){
	.advantage {
		padding: 40px 0 10px;
	}
	.advantage ul{
		flex-wrap: wrap;
	}
	.advantage li{
		width: 50%;
		margin-bottom: 10px;
		padding: 0 25px;
	}
}

/*-----------------------------
pcb
-----------------------------*/
.pcb{
	padding: 80px 0 60px;
	position: relative;
}
.pcb .wrap-common{
	position: relative;
	z-index: 1;
}
.pcb p{
	text-align: center;
	font-size: 112.5%;
	line-height: 2;
}
.pcb:before,
.pcb:after{
	content: "";
	position: absolute;
	top: 0;
	bottom: 0;
	margin: auto;
	width: 45%;
	height: 100%;
	background-size: auto;
	background-repeat: no-repeat;
	background-position: center;
}
.pcb:before{
	background-image: url("../img/top/pcb_img01.png");
	left: 0;
}
.pcb:after{
	background-image: url("../img/top/pcb_img02.png");
	right: 0;
}
/*==== tablet タブレット用css ===*/
@media screen and (max-width: 1024px){
	.pcb:before,
	.pcb:after{
		width: 33.333%;
	}
}
/*==== mobile スマフォ横〜用css ===*/
@media screen and (max-width: 896px){
	.pcb:before,
	.pcb:after{
		width: 25%;
		background-size: contain;
		background-position: bottom;
		height: 50%;
	}
}
/*==== mobile スマフォ縦用css ===*/
@media screen and (max-width: 480px){
	.pcb {
		padding: 70px 0 10px;
	}
	.pcb:before,
	.pcb:after{
		width: 48%;
		background-size: 80px;
		height: 86%;
	}
	.pcb:before{
		background-position: right top;
	}
	.pcb:after{
		background-position: left top;
	}
	.pcb .ttl-middle{
		margin-bottom: 10px;
	}
}

/*-----------------------------
case
-----------------------------*/
.case{
	background: #e4e9ec;
	padding: 90px 0;
}
.case .ttl-middle .bottom{
	color: #044484;
}

.case .slide-arrow{
	position: absolute;
	top: 0;
	bottom: 0;
	height: 123px;
	margin: auto;
	cursor: pointer;
	transition: all 100ms 0s ease;
}
.case .slide-arrow.prev-arrow{
	left: -64px;
}
.case .slide-arrow.next-arrow{
	right: -64px;
}
.case .prev-arrow:hover {
	left: -68px;
}
.case .next-arrow:hover {
	right: -68px;
}

.slide{
	margin-right: 0;
}
.slide .item{
	padding: 15px;
}


.btn-line{
	border-bottom: solid 1px #044484;
	font-weight: 600;
	color: #044484;
	padding-bottom: 5px;
}
.btn-line:after{
	content: "\f105";
    font-family: FontAwesome;
	font-size: 112.5%;
	margin-left: 5px;
}

.btn-tag:before{
	content: "\f02c";
    font-family: FontAwesome;
	font-size: 112.5%;
	margin-right: 5px;
}
.btn-list:before{
	content: "\f0ca";
    font-family: FontAwesome;
	font-size: 112.5%;
	margin-right: 8px;
}

/*==== tablet タブレット用css ===*/
@media screen and (max-width: 1024px){
	.case .slide-arrow{
		width: 56px;
		height: 97px;
	}
	.case .slide-arrow.prev-arrow {
		left: -50px;
	}
	.case .slide-arrow.next-arrow {
		right: -50px;
	}
	.case .prev-arrow:hover {
		left: -54px;
	}
	.case .next-arrow:hover {
		right: -54px;
	}
}
/*==== mobile スマフォ横〜用css ===*/
@media screen and (max-width: 896px){
	.case .slide-arrow {
		width: 44px;
		height: 76px;
	}
	.case .slide-arrow.prev-arrow {
		left: -40px;
	}
	.case .slide-arrow.next-arrow {
		right: -40px;
	}
	.case .prev-arrow:hover {
		left: -44px;
	}
	.case .next-arrow:hover {
		right: -44px;
	}
}
/*==== mobile スマフォ縦用css ===*/
@media screen and (max-width: 480px){
	.case {
		padding: 40px 0;
	}
	.case .wrap-common{
		width: 80%;
	}
	.case .ttl-middle{
		margin-bottom: 10px;
	}
}


/*-----------------------------
news
-----------------------------*/
.news{
	padding: 60px 0 90px;
}
.news .ttl-middle{
	text-align: left;
}
.news .ttl-middle span{
	display: inline-block;
}
.news .ttl-middle .top.font-en{
	color: #b4c5d5;
}
.news .list-news{
	justify-content: space-between;
}
.news .list-news .list-news-item{
	width: 45%;
}

.news .btn-list{
	float: right;
}

/*==== mobile スマフォ横〜用css ===*/
@media screen and (max-width: 896px){
	.list-news .list-news-item:nth-child(n+5){
		display: none;
	}
}
/*==== mobile スマフォ縦用css ===*/
@media screen and (max-width: 480px){
	.news {
		padding: 40px 0;
	}
	.news .list-news .list-news-item{
		width: 100%;
	}
}


/*-----------------------------
company
-----------------------------*/
.company{
	background: #f6f7f8;
	padding: 60px 0 40px;
}
.company > .flex{
	flex-flow: nowrap;
}
.company .ttl-middle .bottom{
	color: #044484;
}
.company .img{
	width: 45%;
	position: relative;
	overflow: hidden;
}
.company .img img{
	width: 100%;
}
/*.company .txt{
	padding: 0 0 0 50px;
}*/
.company .txt > div{
	height: 100%;
    align-items: center;
}
.company .txt p{
	font-size: 112.5%;
	text-align: center;
	line-height: 2;
}
/*==== tablet タブレット用css ===*/
@media screen and (max-width: 1024px){
	.company .img {
		width: 70%;
	}
	.company .txt {
		padding: 0;
	}
	.company .txt p {
		font-size: 100%;
	}
}
/*==== mobile スマフォ横〜用css ===*/
@media screen and (max-width: 896px){
	.company > .flex{
		flex-flow: wrap;
	}
	.company .img{
		width: 100%;
	}
	.company .img img{
		width: 100%;
	}
	.company .txt {
		margin: 20px 0 0;
	}
}
/*==== mobile スマフォ縦用css ===*/
@media screen and (max-width: 480px){
	.company .ttl-middle {
		margin: 0 0 10px;
	}
}


/*-----------------------------
recruit
-----------------------------*/
.recruit{
	background-image: url("../img/top/recruit_bg.jpg");
	background-repeat: no-repeat;
	background-position: center;
	background-size: cover;
	padding: 60px 0;
}
.recruit .txt{
	width: 50%;
    margin: 0 0 0 auto;
}
.recruit h3{
	color: #fff;
    font-size: 125.0%;
    font-weight: 600;
    letter-spacing: .05em;
	margin-bottom: 10px;
}
.recruit h3:after{
	content: "";
    display: block;
    width: 55px;
    height: 1px;
    background: #fff;
    margin: 10px auto 0;
}
.recruit p{
	font-size: 250%;
    font-weight: 600;
    color: #fff;
    text-align: center;
    letter-spacing: .03em;
}

/*==== tablet タブレット用css ===*/
@media screen and (max-width: 1024px){
	.recruit {
		padding: 60px 0 10px;
	}
}
/*==== mobile スマフォ横〜用css ===*/
@media screen and (max-width: 896px){
	.recruit {
		padding: 20px 0 10px;
	}
	.recruit p {
		font-size: 200%;
	}
	.recruit .btn{
		margin: 10px 0;
	}
}
/*==== mobile スマフォ縦用css ===*/
@media screen and (max-width: 480px){
	.recruit{
		background-image: url("../img/top/recruit_bg_sp.jpg");
		padding: 20px 0;
	}
	.recruit .txt{
		width: 75%;
	}
	.recruit h3 {
		margin-bottom: 5px;
		font-size: 100%;
	}
	.recruit h3:after {
		margin: 5px auto 0;
	}
	.recruit p {
		font-size: 170%;
    	letter-spacing: 0;
	}
}