html{font-size:15px;}

.for_sp{display:none;}
.ime_j{ime-mode:active;}
.ime_e{ime-mode:inactive;}
.center_pc{margin-left:auto;margin-right:auto;text-align:center;}



#header_wrapper{
	position:absolute;
}
#header{
	display:flex;
	justify-content:space-between;
	box-align:center;
	align-items:center;
}
#header .nav{
	display:flex;
	column-gap:40px;
}



#footer{
	padding:40px 0;
}
#footer .nav{
	display:flex;
	column-gap:40px;
}



#visual .wrp{
	left:20px;
	bottom:100px;
}
#visual .hdr{
	font-size:80px;
	line-height:90px;
}
#visual .txt{
	font-size:40px;
	line-height:50px;
}



.dl_tbl{
	display:flex;
	flex-wrap:wrap;
	width:100%;
}
.dl_tbl dt,
.dl_tbl dd{
	padding:40px 50px;
	margin:0;
	box-sizing:border-box;
	border-bottom:1px solid #3bc;
}
.dl_tbl dt{
	width:30%;
	font-weight:bold;
}
.dl_tbl dd{
	width:70%;
}
.dl_tbl.noline dt,
.dl_tbl.noline dd{
	padding:30px 0;
	border-bottom:none;
}



.content .inner{
	max-width:800px;
	margin-left:auto;
	margin-right:auto;
}



.gmap iframe{
	height:450px;
}



#nxtlnk .wrp{
	height:300px;
}
#nxtlnk a{
	width:200px;
}



#top .hdr,
#business .hdr{
	font-size:23px;
	line-height:35px;
}
#top .txt,
#business .txt{
	font-size:12px;
	line-height:25px;
}
#top .wrp,
#business .wrp{
	display:flex;
	column-gap:30px;
}
#top .wrp .cell,
#business .wrp .cell{
	flex:1;
}



#top .subhdr{
	margin-bottom:-15px;
}
#top .hsp{
	font-size:100px;
	line-height:100px;
}



#business .sdn .wrp{
	flex-direction:row-reverse;
}



#philosophy .hdr{
	font-size:35px;
	line-height:50px;
	margin:1rem auto 50px;
}
#philosophy .txt{
	font-size:16px;
	line-height:35px;
}



#contact .dscr,
#contact .hdr{
	text-align:center;
}
