@charset "utf-8";

/*---------------------------------------------------------------------------------
 * SVGanimation
 ---------------------------------------------------------------------------------*/
.animating{
	filter: brightness(0) invert(1);
}

.st1{
	fill:none;
	stroke:#FFFFFF;
	stroke-width:2;
	stroke-miterlimit:10;
	stroke-dasharray: 1500;
	stroke-dashoffset:1500;
}

.hiddenMask {
	width: 0;
	height: 0;
	margin: 0;
}

.maskPath{
	fill:none;
	stroke:#FFF;
	stroke-width:10;
	stroke-miterlimit:10;
	stroke-dasharray: 2000;
	stroke-dashoffset:2000;
}
.logoParts{
	fill:#0F3675;
}
.hiddenUnder{
	visibility:hidden;
}
.ended{
	display:none;
}

.logoSVG{
	position:absolute;
	top:0%;
	left:0%;

}
.loading{
	display:none;
}


#indexMain{
	position:relative;
}
#indexMain02{
	position:relative;
}
#indexMain03{
	position:relative;
}

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





.pc_small {
	display: none;
}
#indexMain {
	overflow: hidden;
	margin-top: 178px;
	height: 650px;
	background-color: #5f583f;
	background-image: url(/common/images/indexmain.png);
}
#indexMain .main {
	position: relative;
	height: 650px;
	/*background-position: 50%;*/
	background-position:center top;
	background-repeat: no-repeat;

}
#indexMain .main p.copymain000147 {
	position: absolute;
	right: 0;
	left: 45%;
	top: 30px;
	line-height: 1.3;
	text-align: left;
	font-size: 2.0rem;
	color: #0b3775;
	/*text-shadow: 2px 2px 8px #000, 2px 2px 8px #000, 2px 2px 8px #000, 1px 1px 10px #000;*/
		text-shadow: 2px 2px 8px #ffffff, 2px 2px 8px #ffffff, 2px 2px 8px #ffffff, 1px 1px 10px #ffffff;
	font-weight: 900;

}
#indexMain .main p.copymain000147 span.maintit753{
	font-size: 4.0rem;

}
#indexMain .main p.copymain000147 span.maintit753_b{
	font-size: 4.6rem;

}
#indexMain .main p.copymain000147 span.mainsmall99{
	font-size: 2.8rem;
	margin-right: 3px;

}
#indexMain .main .copymain7536987{
	position: absolute;
	right: 20%;
	top: 260px;
	writing-mode: tb-rl;
	line-height: 1.3;
	text-align: center;
	font-size: 3.8rem;
	color: #0b3775;
	text-shadow: 2px 2px 8px #ffffff, 2px 2px 8px #ffffff, 2px 2px 8px #ffffff, 1px 1px 10px #ffffff;
	font-weight: 900;
}

#indexMain .slick-dots {
	position: absolute;
	bottom: 10px;
	right: 0;
	left: 0;
	text-align: center;
	font-size: 0;
}
#indexMain .slick-dots li {
	float: none;
	width: auto;
	display: inline-block;
	margin: 0;
}
#indexMain .slick-dots button {
	position: relative;
	overflow: hidden;
	width: 20px;
	height: 0;
	padding: 20px 0 0;
	background: none;
	border: 0;
}
#indexMain .slick-dots button:before {
	content: "";
	position: absolute;
	top: 4px;
	right: 4px;
	bottom: 4px;
	left: 4px;
	border: 1px solid #fff;
	border-radius: 100%;
	-webkit-transition: background .2s;
	-o-transition: background .2s;
	transition: background .2s;
}
#indexMain .slick-dots button:after {
	content: "";
	position: absolute;
	top: 7px;
	right: 7px;
	bottom: 7px;
	left: 7px;
	background-color: #fff;
	border-radius: 100%;
	-webkit-transition: opacity .2s;
	-o-transition: opacity .2s;
	transition: opacity .2s;
	opacity: 0;
}
#indexMain .slick-dots .slick-active button:after {
	opacity: 1;
}



@media screen and (max-width: 1260px) {

.pc_small {
	display: block;
}
#indexMain{
display: none;
}

#indexMain03 {
	overflow: hidden;
	margin-top: 70px;
	height: 600px;
	background-color: #0b3775;
}
#indexMain03 .main {
	position: relative;
	height: 600px;
	background-size: cover;

	background-position:center top;
	background-repeat: no-repeat;

}
#indexMain03 .main p.copymain000147 {
	position: absolute;
	right: 0;
	left: 45%;
	top: 30px;
	line-height: 1.3;
	text-align: left;
	font-size: 2.0rem;
	color: #0b3775;
	/*text-shadow: 2px 2px 8px #000, 2px 2px 8px #000, 2px 2px 8px #000, 1px 1px 10px #000;*/
		text-shadow: 2px 2px 8px #ffffff, 2px 2px 8px #ffffff, 2px 2px 8px #ffffff, 1px 1px 10px #ffffff;
	font-weight: 900;

}
#indexMain03 .main p.copymain000147 span.maintit753{
	font-size: 4.0rem;

}
#indexMain03 .main p.copymain000147 span.maintit753_b{
	font-size: 4.6rem;

}
#indexMain03 .main p.copymain000147 span.mainsmall99{
	font-size: 2.8rem;
	margin-right: 3px;

}
#indexMain03 .main .copymain7536987{
	position: absolute;
	right: 20%;
	top: 260px;
	writing-mode: tb-rl;
	line-height: 1.3;
	text-align: center;
	font-size: 3.8rem;
	color: #0b3775;
		text-shadow: 2px 2px 8px #ffffff, 2px 2px 8px #ffffff, 2px 2px 8px #ffffff, 1px 1px 10px #ffffff;
	font-weight: 900;
}

#indexMain03 .slick-dots {
	position: absolute;
	bottom: 10px;
	right: 0;
	left: 0;
	text-align: center;
	font-size: 0;
}
#indexMain03 .slick-dots li {
	float: none;
	width: auto;
	display: inline-block;
	margin: 0;
}
#indexMain03 .slick-dots button {
	position: relative;
	overflow: hidden;
	width: 20px;
	height: 0;
	padding: 20px 0 0;
	background: none;
	border: 0;
}
#indexMain03 .slick-dots button:before {
	content: "";
	position: absolute;
	top: 4px;
	right: 4px;
	bottom: 4px;
	left: 4px;
	border: 1px solid #fff;
	border-radius: 100%;
	-webkit-transition: background .2s;
	-o-transition: background .2s;
	transition: background .2s;
}
#indexMain03 .slick-dots button:after {
	content: "";
	position: absolute;
	top: 7px;
	right: 7px;
	bottom: 7px;
	left: 7px;
	background-color: #fff;
	border-radius: 100%;
	-webkit-transition: opacity .2s;
	-o-transition: opacity .2s;
	transition: opacity .2s;
	opacity: 0;
}
#indexMain03 .slick-dots .slick-active button:after {
	opacity: 1;
}
}

@media screen and (max-width: 768px) {
.pc_small {
	display: none;
}

#indexMain02 {
	overflow: hidden;
	margin-top: 0px;
	height: 320px;
	background-color: #0b3775;
}
#indexMain02 .main {
	position: relative;
	height: 320px;
	background-size: cover;
	background-position:center top;
	background-repeat: no-repeat;

}
#indexMain02 .main p.copymain000147 {
	position: absolute;
	right: 0;
	left: 45%;
	top: 30px;
	line-height: 1.3;
	text-align: left;
	font-size: 2.0rem;
	color: #0b3775;
	/*text-shadow: 2px 2px 8px #000, 2px 2px 8px #000, 2px 2px 8px #000, 1px 1px 10px #000;*/
		text-shadow: 2px 2px 8px #ffffff, 2px 2px 8px #ffffff, 2px 2px 8px #ffffff, 1px 1px 10px #ffffff;
	font-weight: 900;

}
#indexMain02 .main p.copymain000147 span.maintit753{
	font-size: 4.0rem;

}
#indexMain02 .main p.copymain000147 span.maintit753_b{
	font-size: 4.6rem;

}
#indexMain02 .main p.copymain000147 span.mainsmall99{
	font-size: 2.8rem;
	margin-right: 3px;

}
#indexMain02 .main .copymain7536987{
	position: absolute;
	right: 20%;
	top: 260px;
	writing-mode: tb-rl;
	line-height: 1.3;
	text-align: center;
	font-size: 3.8rem;
	color: #0b3775;
		text-shadow: 2px 2px 8px #ffffff, 2px 2px 8px #ffffff, 2px 2px 8px #ffffff, 1px 1px 10px #ffffff;
	font-weight: 900;
}

#indexMain02 .slick-dots {
	position: absolute;
	bottom: 10px;
	right: 0;
	left: 0;
	text-align: center;
	font-size: 0;
}
#indexMain02 .slick-dots li {
	float: none;
	width: auto;
	display: inline-block;
	margin: 0;
}
#indexMain02 .slick-dots button {
	position: relative;
	overflow: hidden;
	width: 20px;
	height: 0;
	padding: 20px 0 0;
	background: none;
	border: 0;
}
#indexMain02 .slick-dots button:before {
	content: "";
	position: absolute;
	top: 4px;
	right: 4px;
	bottom: 4px;
	left: 4px;
	border: 1px solid #fff;
	border-radius: 100%;
	-webkit-transition: background .2s;
	-o-transition: background .2s;
	transition: background .2s;
}
#indexMain02 .slick-dots button:after {
	content: "";
	position: absolute;
	top: 7px;
	right: 7px;
	bottom: 7px;
	left: 7px;
	background-color: #fff;
	border-radius: 100%;
	-webkit-transition: opacity .2s;
	-o-transition: opacity .2s;
	transition: opacity .2s;
	opacity: 0;
}
#indexMain02 .slick-dots .slick-active button:after {
	opacity: 1;
}
}







#map_canvas {
	width: 100%;
	height: 600px;
	margin-bottom: 35px;
	margin-top: 50px;
	margin-left: auto;
	margin-right: auto;
}


#indexMain .main01 {
		background-image: url(/common/images/main_new01.jpg);
	}
#indexMain .main02 {
		background-image: url(/common/images/main_new02.jpg);
	}


#indexMain .main01_new {
		background-image: url(/common/images/main01_new.jpg);
	}
#indexMain .main02_new {
		background-image: url(/common/images/main02_new.jpg);
	}
#indexMain02 .main03_new {
		background-image: url(/common/images/main03_new.jpg);
	}
#indexMain02 .main04_new {
		background-image: url(/common/images/main04_new.jpg);
	}
#indexMain03 .main05_new {
		background-image: url(/common/images/main05_new.jpg);
	}
#indexMain03 .main06_new {
		background-image: url(/common/images/main06_new.jpg);
	}	

#indexMain .main1_new {
		background-image: url(/common/images/main1_new.jpg);
	}
#indexMain .main2_new {
		background-image: url(/common/images/main2_new.jpg);
	}


.recruit_bnr{
padding: 40px 0;
text-align: center !important;
border-bottom: none !important;
}

.recruit_bnr .sec_bnr{
margin-left: 10px;
}



@media screen and (min-width: 769px), print {
	
	/*
	#indexMain .main01 {
		background-image: url(/images/main.png);
	}
	*/
	#indexMain .main p.copymain000147{
	
	
	}
	
	
}
#map_canvas {
	width: 100%;
	height: 600px;
	margin-bottom: 0px;
	margin-top: 50px;
	margin-left: auto;
	margin-right: auto;
}

@media screen and (min-width: 769px), print {
	#indexMain .main01 {
		background-image: url(/common/images/main.png);
	}
	#indexMain .main p.copymain000147{
	
	
	}
	
	
}


/*
@media screen and (min-width: 1200px) {
	#indexMain {
		height: 711px;
	}
	#indexMain .main {
		height: 711px;
	}
}
@media screen and (min-width: 2040px) {
	#indexMain {
		height: 820px;
	}
	#indexMain .main {
		height: 820px;
	}
}
*/
/*
@media screen and (max-width: 768px) {
	#indexMain02 {
		height: 350px;
			margin-top: 0px;
	}
	#indexMain02 .main {
		height: 350px;
		background-size: cover;
		background-position: 50% top;
	}
	#indexMain02 .main p.copymain000147 {
		top: 10px;
		font-size: 1.5rem;
	}

	
	#indexMain02 .main p.copymain000147 span.maintit753{
	font-size: 2.0rem;
	}
	#indexMain02 .main p.copymain000147 span.maintit753_b{
	font-size: 2.6rem;
	}
	#indexMain02 .main p.copymain000147 span.mainsmall99{
	font-size: 1.8rem;
}
#indexMain02 .main .copymain7536987{
	position: absolute;
	right: 0;
	bottom: 0px;
	writing-mode: lr-tb;
	font-size: 2.0rem;
	text-align: right;

}
#map_canvas {
	height: 600px;
	width: 100%;
}	
	
	
}*/
/*
@media screen and (max-width: 500px) {
	#indexMain {
		height: 400px;
	}
	#indexMain .main {
		height: 400px;
	}
}
*/
			
			
			@media screen and (max-width: 768px) {
			
			.recruit_bnr .sec_bnr{
			display: block;
			margin-left: 0px;
			margin-top: 10px !important;
			}


			}



#indexMain .main01pc {
		background-image: url(/common/images/main02pc.jpg);
	}
#indexMain .main02pc {
		background-image: url(/common/images/main02pc.jpg);
	}
#indexMain .main03pc {
		background-image: url/common/images/main02pc.jpg);
	}
#indexMain .main04pc {
		background-image: url(/common/images/main02pc.jpg);
	}
#indexMain .main05pc {
		background-image: url(/common/images/main02pc.jpg);
	}	
	
	
	
#indexMain02 .main01sp {
		background-image: url(/common/images/main02pc.jpg);
	}
#indexMain02 .main02sp {
		background-image: url(/common/images/main02pc.jpg);
	}
#indexMain02 .main03sp {
		background-image: url(/common/images/main02pc.jpg);
	}
#indexMain02 .main04sp {
		background-image: url(/common/images/main02pc.jpg);
	}		
#indexMain02 .main05sp {
		background-image: url(/common/images/main02pc.jpg);
	}		



#indexMain03 .main01pcs {
		background-image: url(/common/images/main02pc.jpg);
	}
#indexMain03 .main02pcs {
		background-image: url(/common/images/main02pc.jpg);
	}
#indexMain03 .main03pcs {
		background-image: url(/common/images/main02pc.jpg);
	}
#indexMain03 .main04pcs {
		background-image: url(/common/images/main02pc.jpg);
	}
#indexMain03 .main05pcs {
		background-image: url(/common/images/main02pc.jpg);
	}			





/* ========================================================
	index.css => index
======================================================== */


.point_list {
	margin-bottom:;
}

.point_list a {
	position: relative;
	display: block;
	background-repeat: no-repeat;
	background-position: 50%;
	-webkit-background-size: cover;
	background-size: cover;
	line-height: 1.8;
}
.point_list a.point01 {
	background-image: url(/common/images/point01_bg.jpg);
}
.point_list a.point02 {
	background-image: url(/common/images/point02_bg.jpg);
}
.point_list a.point03 {
	background-image: url(/common/images/point03_bg.jpg);
}
.point_list a.point04 {
	background-image: url(/common/images/point04_bg.jpg);
}
.point_list a.point05 {
	background-image: url(/common/images/point05_bg.jpg);
}
.point_list a.point06 {
	background-image: url(/common/images/point06_bg.jpg);
}
.point_list a.point07 {
	background-image: url(/common/images/point07_bg.jpg);
}
.point_list a.point08 {
	background-image: url(/common/images/point08_bg.jpg);
}
.point_list a.point09 {
	background-image: url(/common/images/point09_bg.jpg);
}
.point_list a.point11 {
	background-image: url(/common/images/point11_bg.jpg);
}
.point_list a.point12 {
	background-image: url(/common/images/point12_bg.jpg);
}
.point_list a.point13 {
	background-image: url(/common/images/point13_bg.jpg);
}
.point_list a.point14 {
	background-image: url(/common/images/point14_bg.jpg);
}
.point_list a .bg,
.point_list a .bg > div {
	position: absolute;
	top: 0;
	right: 0;
	left: 0;
	bottom: 0;
}
.point_list a .bg > div {
	background-color: rgba(0,0,0,.5);
}

.point_list a dl dt {
	margin-bottom: 10px;
	font-weight: bold;
	text-align: center;
	font-size: 2rem;
	line-height: 1.4;
	color: #fff;
}
@media screen and (min-width: 769px), print {
	.point_list {
		display: -webkit-flex;
		display: -moz-flex;
		display: -ms-flex;
		display: -o-flex;
		display: flex;
		-webkit-flex-wrap: wrap;
		-moz-flex-wrap: wrap;
		-ms-flex-wrap: wrap;
		-o-flex-wrap: wrap;
		flex-wrap: wrap;
		margin: 0 -1px;
	}
	.point_list > * {
		width: 32%;
		border: 1px solid #fff;
		margin:0.5%;
	}
	.point_list a {
		overflow: hidden;
		height: 200px;
	}
	.point_list a .bg {
		top: 30px;
		bottom: 30px;
		left: 30px;
		right: 30px;
		-webkit-transition: all .4s;
		-o-transition: all .4s;
		transition: all .4s;
	}
	.point_list a dl {
		position: absolute;
		top: 10px;
		left: 30px;
		right: 30px;
		-webkit-transform: translateY(78px);
		-ms-transform: translateY(78px);
		-o-transform: translateY(78px);
		transform: translateY(78px);
		-webkit-transition: -webkit-transform .4s;
		-o-transition: -o-transform .4s;
		transition: transform .4s;
		z-index: 3;
	}
	.point_list a dd {
		opacity: 0;
		-webkit-transform: translateY(20px);
		-ms-transform: translateY(20px);
		-o-transform: translateY(20px);
		transform: translateY(20px);
		-webkit-transition: -webkit-transform .4s, opacity .4s;
		-o-transition: -o-transform .4s, opacity .4s;
		transition: transform .4s, opacity .4s;
		color: #fff;
		font-size: 1.3rem;	
	}
	.point_list a:hover .bg {
		top: -2px;
		bottom: -2px;
		left: -2px;
		right: -2px;
	}
	.point_list a:hover dl {
		-webkit-transform: translateY(0);
		-ms-transform: translateY(0);
		-o-transform: translateY(0);
		transform: translateY(0);
		top: 50px;
	}
	.point_list a:hover dd {
		-webkit-transform: translateY(0);
		-ms-transform: translateY(0);
		-o-transform: translateY(0);
		transform: translateY(0);
		opacity: 1;
	}
}
@media screen and (max-width: 768px) {
	.point_list li {
		margin-top: 2px;
	}
	.point_list li + li {
		margin-top: 2px;
	}
	.point_list a {
		line-height: 1.8;
		font-size: 1.2rem;
		color: #fff;
		text-decoration: none;
	}
	.point_list a .bg::before,
	.point_list a .bg::after,
	.point_list a .bg > div::before,
	.point_list a .bg > div::after {
		width: 30px;
		height: 30px;
	}
	.point_list a dl {
		position: relative;
		padding: 25px 20px;
		z-index: 3;
	}
	.point_list a dl dt {
		margin-bottom: 10px;
		font-size: 1.6rem;
	}
	.pb50 .copy.mb50 {
		margin-bottom: 20px !important;
	}

	.info_list li span{
		display:block;
	}

}


.bnr_txt88{
display: block;
border: solid 1px #0b3775;
width: 920px;
margin: 0 auto 10px auto;
padding: 10px 15px 5px 15px;
background-color: #ffffff;
}
.bnr_txt88 img{
float: left;
}
.bnr_txt88 p{
float: right;
width: 465px;
border-bottom: none;
margin: 15px 0 0 0;
}
.bnr_txt88 p em{
font-size: 1.8rem;
font-weight: 600;
display: block;
}


@media screen and (max-width: 768px) {

.bnr_txt88{
width: 100%;
margin: 0 auto 10px auto;
padding: 5px 2% 0 2%;
background-color: #ffffff;
}
.bnr_txt88 img{
float: none;
width: 100%;
}
.bnr_txt88 p{
font-size: 1rem;
float: none;
width: 100%;
margin: 0;
text-align: center;
line-height: 1.3rem;
padding-bottom: 10px;
}
.bnr_txt88 p em{
font-size: 1.4rem;
font-weight: 600;
display: block;
margin-bottom: 5px;
}


}

.mainbnr_box{

}

.d500{
position: fixed;
top:50px;
right: 0;
z-index: 50000;
}




/* Relux_2019 */

.relux2019 a:hover{
opacity: 0.5;
}

@media screen and (min-width: 769px) {

.relux2019{
width: 640px;
margin: 0 auto;
margin-bottom: 60px;
}

.relux_sp{
display:none;
}

}

@media screen and (max-width: 768px) {

.relux_pc{
display:none;
}

.relux_sp{
margin-bottom: 20px;
}

}

.bnr_box{
margin: 20px auto;
width:920px;
display: table;
border-top: 1px solid #ccc;
border-bottom: 1px solid #ccc;
padding: 20px 0;
}

.bnr_box .bnr_inn a:hover img{
	filter:alpha(opacity=50);
	-moz-opacity: 0.5;
	opacity: 0.5;
}


.btn_link00 a {
display: block;
background-color: #d9a147;
color: #fff;
font-weight: 800;
text-align: center;
margin: 0px auto 30px auto;
padding: 10px 0;
border: 1px solid #d9a147;
text-decoration: none;
font-size: 120%;
width: 920px;
}

.btn_link00 a:hover {
color: #d9a147;
background-color: #fff;
border: 1px solid #d9a147;
}

@media screen and (max-width: 768px) {
.btn_link00 a {
width: 90%;
}

.bnr_box{
margin: 20px auto;
width:96%;
display: block;

}

}
