@charset "utf-8";



.col_w{
	color: #fff;
}




/* ---------------------------------------
* common
------------------------------------------ */

main{
	position: relative;
}

.btn.sp{
	display: none;
}

.col-w{
	color: #fff;
}

.access a{
	display: block;
	text-decoration: underline;
}

.mainTop{
	overflow: hidden;
}

.btn-404{
	margin: 0 auto;
}

.slideImg{
	display: inline-block;
	margin-right: 2.5vw;
}

.nav-other02{
	padding-left: 30px;
}

.nav-other02 li a{
	display: block;
	font-size: 12px;
	line-height: 100%;
	letter-spacing: normal;
	transition: all .3s;
	font-weight: 600;
}

.nav-other02 li a:hover{
	color: #005FFF;
}

.nav-other02 li.active a{
	color: #005FFF;

}

.nav-other02 li:not(:last-of-type){
	padding-right: 5px;
	margin-right: 5px;
	position: relative;
}

.nav-other02 li:not(:last-of-type)::after{
	content: "/";
	display: block;
	position: absolute;
	right: -2px;
	top: 50%;
	transform: translateY(-50%);
	color: #000000;
	font-size: 12px;
	font-weight: 600;
	line-height: 100%;
	letter-spacing: normal;
}

svg{
	width: 100%;
	height: 100%;
}

.bg{
	background-repeat: no-repeat;
	background-size: cover;
}

:root {
	--primary: #004B29;
	--secondary: #336F54;
	--bg01: #252525;
	--bg02: #F0EFED;
}

.footer_small p{
	font-size: 14px;
	line-height: 160%;
	letter-spacing: normal;
	color: #999999;
}

/* --------------------------------
* Top ページ
----------------------------------- */

.header,.footer{
	display: none;
}

.mainTop{
	overflow: hidden;
}

.mv{
	padding-top: 5vw;
	padding-left: 5vw;
	width: 100vw;
	height: 100vh;
	background-color: #2E75FF;
	position: relative;
}

.mvShape{
	position: absolute;
	right: 0;
	top: 0;
	width: 50.8%;
}

.mvWrap{
	width: 100%;
	height: 100%;
	position: relative;
	z-index: 2;
}

.mvLogo{
	width: 14.9%;
	position: absolute;
	top: 0;
	right: 3.333vw;
}

.mvWrap p{
	width: 37.75vw;
}

.mvWrap h2{
	position: absolute;
	left: 0;
	bottom: 0;
	width: 100%;
}


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

/* ---------------------------------------
* common
------------------------------------------ */

.btn.sp{
	display: flex;
}

.btn.pc{
	display: none;
}

.btn{
	margin: 0 auto;
}

.nav-other02{
	padding-right: 10px;
}

.nav-other02 li a{
	display: block;
	font-size: 12px;
}


.footer_small p{
	font-size: 12px;
	padding-top: 4px;
}
	
/* --------------------------------
* Top ページ
----------------------------------- */

.mv{
	padding-top: 4rem;
	padding-bottom: 3rem;
	padding-left: 0;
}

.mvShape{

	width: 34rem;
}

.mvWrap{
	padding: 0;
	width: calc(100% - 40px);
	margin: 0 auto;
}

.mvTxtWrap{
	width: 100%;
	position: absolute;
	left: 0;
	bottom: 0;
}

.mvLogo{
	width: 18rem;
	position: static;
}

.mvWrap p{
	position: absolute;
	left: 0;
	bottom: 18rem;
	width: 29rem;
}

.mvWrap h2{
	width: 100%;
	padding-top: 4rem;
}

	
}

