@import url(https://fonts.googleapis.com/earlyaccess/notosansjp.css);

@media screen and (min-width:751px){
.pc_none{
	display: none !important;
}

body{
	background:#fff;
	position:relative;
	-webkit-text-size-adjust : 100% !important ;
	font-size:0.9em;
	color:#000;
	letter-spacing: 0.05em;
	min-width: 1070px;
	font-family: 'Noto Sans JP', sans-serif;
}

/*font*/
.fontroboto{font-family: 'Roboto', sans-serif;}

/*header*/
#header{
	position:fixed;
	top:0;
	left:0;
	width:100%;
	z-index:100;
}

#header .innerbox{
	position:relative;
	z-index:1;
	transition: all 0.3s;
}

#header.active .innerbox{
	background:#fff;
	height:65px;
	box-shadow:0px 0px 1px 1px rgba(0,0,0,0.14);
}

#header .logobox{
	float: left;
	margin:25px 0 0 40px;
	position:relative;
	z-index:1;
	transition: all 0.3s;
}

#header.active .logobox{
	float: left;
	margin:15px 0 0 40px;
	position:relative;
	z-index:1;
}

#header .logobox img.logo1{
	opacity:1;
	position: absolute;
	top:0;
	left:0;
	width:48px;
	transition: all 0.3s;
}

#header.active .logobox img.logo1{
	opacity:0;
	position: absolute;
	top:0;
	left:0;
	width:30px;
}

#header .logobox img.logo2{
	opacity:0;
	position: absolute;
	top:0;
	left:0;
	width:48px;
}

#header.active .logobox img.logo2{
	opacity:1;
	position: absolute;
	top:0;
	left:0;
	width:30px;
}

#header ul.navbox{
	float: right;
	padding:40px 75px 0 0;
	transition: all 0.3s;
	display: block !important;
}

#header.active ul.navbox{
	float: right;
	padding:27px 75px 0 0;
}

#header ul.navbox li{
	float: left;
	margin:0 0 0 30px;
	list-style: none;
}

#header ul.navbox li span{
	color:#fff;
	cursor: pointer;
	z-index:1;
	position: relative;
	font-size:1.05em;
	transition: all 0.3s;
}

#header.active ul.navbox li span{
	color:#000;
	cursor: pointer;
	z-index:1;
	position: relative;
	font-size:1em;
}

#header ul.navbox li:first-child{
	float: left;
	margin:0 0 0 0;
}

#header ul.navbox li a{
	display: inline-block;
	text-decoration: none;
}

#header ul.navbox li .innavibox{
	position: absolute;
	width:100%;
	display: block !important;
	top:0;
	left:0;
	z-index:0;
	opacity: 0;
	transition: opacity 0.5s;
	visibility: hidden;
}

#header.active ul.navbox li .innavibox{
	position: absolute;
	width:100%;
	padding:65px 0 0 0;
	top:0;
	left:0;
	z-index:0;
	opacity: 0;
	transition: opacity 0.5s;
	visibility: hidden;
}

#header ul.navbox li .innavibox .inbox{
	padding:140px 0 60px 0;
	background:#000;
	width:100%;
}

#header.active ul.navbox li .innavibox .inbox{
	padding:60px 0 60px 0;
	background:#000;
	width:100%;
}

#header ul.navbox li:hover .innavibox{
	opacity: 1;
	visibility:visible;
}

#header ul.navbox li:hover .innavibox .inlinebox{
	width:1070px;
	margin:0 auto;
	padding:0 30px;
	box-sizing: border-box;
}

#header ul.navbox li:hover .innavibox .inlinebox .titlebox{
	float:left;
}

#header ul.navbox li:hover .innavibox .inlinebox .titlebox .tl{
	font-weight: bold;
	font-size:2.5em;
	color:#fff;
	letter-spacing: 0;
	margin:0 0 10px 0;
}

#header ul.navbox li:hover .innavibox .inlinebox .titlebox .sub{
	font-size:1.1em;
	color:#fff;
	margin:0 0 30px 0;
}

#header ul.navbox li:hover .innavibox .inlinebox .titlebox a.inbtn{
	display:block;
	width:120px;
	border-radius: 3px;
	background:#fff;
	color:#000;
	text-decoration: none;
	padding:13px 15px;
	position:relative;
	font-size:0.9em;
	transition: opacity 0.3s;
}

#header ul.navbox li:hover .innavibox .inlinebox .titlebox a.inbtn:after{
	width: 0;
  	height: 0;
  	border-left: 4px solid black;
  	border-top: 4px solid transparent;
  	border-bottom: 4px solid transparent;
	content:"";
	position: absolute;
	top:50%;
	margin:-4px 0 0 0;
	right:10px;
}

#header ul.navbox li:hover .innavibox .inlinebox .titlebox a.inbtn:hover{
	opacity:0.8;
}

#header ul.navbox li:hover .innavibox .inlinebox ul.table1{
	padding:0 0 0 55px;
	float: left;
}

#header ul.navbox li:hover .innavibox .inlinebox ul.table1 li{
	padding:0 15px !important;
	margin:0 0 0 0 !important;
	float: left;
}

#header ul.navbox li:hover .innavibox .inlinebox ul.table1 li a.inbtn2{
	display:block;
	width:230px;
	color:#fff;
	text-decoration: none;
	padding:17px 0;
	position:relative;
	transition: opacity 0.3s;
	border-top:1px solid #535353;
	letter-spacing: 0.1em;
}

#header ul.navbox li:hover .innavibox .inlinebox ul.table1 li a.inbtn2:after{
	width: 4px;
  	height: 4px;
  	border: 1px solid;
  	border-color: #fff #fff transparent transparent;
  	transform: rotate(45deg);
	content:"";
	position: absolute;
	top:50%;
	margin:-4px 0 0 0;
	right:10px;
}

#header ul.navbox li:hover .innavibox .inlinebox ul.table1 li a.inbtn2:hover{
	opacity:0.8;
}

#header ul.navbox li:hover .innavibox .inlinebox ul.table1.bo li a.inbtn2{
	display:block;
	width:230px;
	color:#fff;
	text-decoration: none;
	padding:20px 0;
	position:relative;
	transition: opacity 0.3s;
	border-bottom:1px solid #535353;
}

#header ul.navbox li:hover .innavibox .inlinebox ul.table2{
	padding:0 0 0 25px;
	float: left;
}

#header ul.navbox li:hover .innavibox .inlinebox ul.table2 li{
	padding:0 13px !important;
	margin:0 0 0 0 !important;
	float: left;
}

#header ul.navbox li:hover .innavibox .inlinebox ul.table2 li a.inbtn3{
	display:block;
	width:170px;
	color:#fff;
	text-decoration: none;
	position:relative;
	transition: opacity 0.3s;
	letter-spacing: 0.1em;
}

#header ul.navbox li:hover .innavibox .inlinebox ul.table2 li a.inbtn4{
	display:block;
	width:135px;
	color:#fff;
	text-decoration: none;
	position:relative;
	transition: opacity 0.3s;
	letter-spacing: 0.1em;
}

#header ul.navbox li:hover .innavibox .inlinebox ul.table2 li a.inbtn3:hover,
#header ul.navbox li:hover .innavibox .inlinebox ul.table2 li a.inbtn4:hover{
	opacity:0.8;
}


#header ul.navbox li:hover .innavibox .inlinebox ul.table2 li a.inbtn3 img,
#header ul.navbox li:hover .innavibox .inlinebox ul.table2 li a.inbtn4 img{
	width:100%;
	margin:0 0 13px 0;
}

/*footer*/
#footer{
	width:100%;
	background:#000;
	margin:130px 0 0 0;
}

#footer a.contactlink{
	padding:45px 0;
	text-align: center;
	color:#fff;
	display: block;
	width:100%;
	text-decoration: none;
	background:#212121;
} 

#footer a.contactlink:before{
	content:"";
	width:20px;
	margin:0 10px 0 0;
	height:13px;
	display: inline-block;
	background:url(/images/common/contact_icon.png) no-repeat;
	background-size:cover;
} 

#footer .innerbox{
	padding:45px 0 75px 0;
	width:995px;
	margin:0 auto;
}

#footer .innerbox .logobox{
	padding:0 0 40px 0;
	border-bottom:1px solid #626262;
}
	
#footer .innerbox .logobox .logo{
	width:150px;
	display: inline-block;
	margin:0 40px 0 0;
	vertical-align: middle;
}

#footer .innerbox .logobox .logo img{
	width:100%;
}

#footer .innerbox .logobox .adress{
	display: inline-block;
	vertical-align: middle;
}

#footer .innerbox .logobox .adress{
	color:#fff;
}

#footer .innerbox .logobox .adress a{
	color:#fff;
	text-decoration: none;
}


#footer .innerbox ul.linkbox{
	padding:40px 0;
	border-bottom:1px solid #626262;
}


#footer .innerbox ul.linkbox li{
	float: left;
	margin:0 50px 0 0;
}

#footer .innerbox ul.linkbox li a{
	text-decoration: none;
	color:#fff;
	margin:0 0 10px 0;
	display: inline-block;
	font-size:0.9em;
	transition: opacity 0.3s;
}

#footer .innerbox ul.linkbox li a:hover{
	opacity:0.8;
}

#footer .innerbox ul.linkbox li a.toplink{
	margin:0 0 30px 0;
	font-size:1em;
}

#footer .linkbox .topsns a{
	margin-right: 1rem !important;
}

#footer .linkbox .topsns img,
#footer .copybox .topsns img{
	width: 35px;
}


#footer .innerbox .copybox{
	padding:40px 0 0 0;
}

#footer .innerbox .copybox a{
	text-decoration: none;
	color:#fff;
	transition: opacity 0.3s;
	font-size:0.9em;
	margin:0 20px 0 0;
}

#footer .innerbox .copybox a:hover{
	opacity:0.8;
}

#footer .innerbox .copybox .copy{
	color:#626262;
	text-align: right;
	float: right;
	font-size:0.9em;
}
	
#contentbox{
	width:1070px;
	margin:0 auto;
	background:#fff;
	position:relative;
	top:-85px;
}
	
#contentinnerbox{
	padding:0 50px 50px;
}
	
.object-fit-img,.avatar {
  		object-fit: cover;
		width:100%;
		height:100%;
  		font-family: 'object-fit: cover;'
	}
	
#pan{
	padding:25px 40px 50px 40px;
	color:#666666;
	font-size:0.9em;
	vertical-align: middle;
	text-align: right;
}
	
#pan a.home{
	width:15px;
	height:13px;
	background:url(/images/common/home_icon.png) no-repeat;
	background-size: cover;
	display: inline-block;
	text-align: right;
	position: relative;
	margin:0 0 0 0;
	vertical-align: middle;
}
	
#pan a{
	color:#666666;
	text-decoration: none;
	vertical-align: middle;
	
}
	
#pan span.arrow{
	width: 4px;
  	height: 4px;
  	border: 1px solid;
  	border-color: #666 #666 transparent transparent;
  	transform: rotate(45deg);
	content:"";
	margin: 0px 10px 0;
	display: inline-block;
	vertical-align: middle;
	
}
	
#pan span.tx{
	display: inline-block;
	vertical-align: middle;
	
}
}

@media screen and (max-width:750px){
.sp_none{
	display: none !important;
}

body{
	background:#fff;
	position:relative;
	-webkit-text-size-adjust : 100% !important ;
	font-size:0.75em;
	color:#000;
	letter-spacing: 0.05em;
	min-width: 100%;
	font-family: 'Noto Sans JP', sans-serif;
}

/*font*/
.fontroboto{font-family: 'Roboto', sans-serif;}

/*header*/
#header{
	position:fixed;
	top:0;
	left:0;
	width:100%;
	z-index:100;
}

#header .innerbox{
	position:relative;
	z-index:1;
	transition: all 0.3s;
}

#header .logobox{
	float: left;
	padding:0 0 0 0;
	position:relative;
	z-index:1;
	transition: all 0.3s;
	width:100%;
	background:#fff;
	height:55px;
}
	
#header .logobox .open{
	width:17px;
	position:absolute;
	top:20px;
	right:20px;
}
	
#header .logobox .open img{
	width:100%;
}

#header .logobox img.logo1{
	opacity:0 !important;
	position: absolute;
	top:15px;
	left:15px;
	width:48px;
	transition: all 0.3s;
}

#header .logobox img.logo2{
	opacity:1 !important;
	position: absolute;
	top:10px;
	left:20px;
	width:30px;
	
}

#header ul.navbox{
	width:100%;
	padding:0 0 0 0;
	position: fixed;
	top:55px;
	left:0;
	bottom:0;
	right:0;
	overflow-y: auto;
	display: none;
	
}

#header ul.navbox li.navicont{
	float: none;
	list-style: none;
	border-bottom:1px solid #626262;
	background:#000;
}

#header ul.navbox li span{
	color:#fff;
	cursor: pointer;
	z-index:1;
	position: relative;
	font-size:1.05em;
	transition: all 0.3s;
	padding:20px 30px;
	width:100%;
	box-sizing: border-box;
	display: block;
}
	
#header ul.navbox li span.arrow:after{
	width: 5px;
  	height: 5px;
  	border: 1px solid;
  	border-color: #fff #fff transparent transparent;
  	transform: rotate(135deg);
	content:"";
	display: inline-block;
	position: absolute;
	margin:-4px 0 0 0;
	top:50%;
	right:20px;
}
	
#header ul.navbox li span.arrow.active:after{
	width: 5px;
  	height: 5px;
  	border: 1px solid;
  	border-color: #fff #fff transparent transparent;
  	transform: rotate(-45deg);
	content:"";
	display: inline-block;
	position: absolute;
	margin:-2px 0 0 0;
	top:50%;
	right:20px;
}

#header.active ul.navbox li span{
	color:#000;
	cursor: pointer;
	z-index:1;
	position: relative;
	font-size:1em;
}


#header ul.navbox li a{
	display: inline-block;
	text-decoration: none;
	width:100%;
}
	
#header ul.navbox li a.spbtn{
	padding:10px 0 10px 0;
	color:#fff;
	text-decoration: none;
}

#header ul.navbox li .innavibox{
	width:100%;
	display: none;
}

#header ul.navbox li .innavibox .inbox{
	padding:0 0 0 0;
	background:#000;
	width:100%;
}


#header ul.navbox li .innavibox .inlinebox{
	width:100%;
	margin:0 auto;
	padding:0 30px 10px;
	box-sizing: border-box;
}

#header ul.navbox li .innavibox .inlinebox .titlebox{
	float:left;
	display: none;
}

#header ul.navbox li .innavibox .inlinebox .titlebox .tl{
	font-weight: bold;
	font-size:2.5em;
	color:#fff;
	letter-spacing: 0;
	margin:0 0 10px 0;
}

#header ul.navbox li .innavibox .inlinebox .titlebox .sub{
	font-size:1.1em;
	color:#fff;
	margin:0 0 30px 0;
}

#header ul.navbox li .innavibox .inlinebox .titlebox a.inbtn{
	display:block;
	width:120px;
	border-radius: 3px;
	background:#fff;
	color:#000;
	text-decoration: none;
	padding:13px 15px;
	position:relative;
	font-size:0.9em;
	transition: opacity 0.3s;
}

#header ul.navbox li .innavibox .inlinebox .titlebox a.inbtn:after{
	width: 0;
  	height: 0;
  	border-left: 4px solid black;
  	border-top: 4px solid transparent;
  	border-bottom: 4px solid transparent;
	content:"";
	position: absolute;
	top:50%;
	margin:-4px 0 0 0;
	right:10px;
}

#header ul.navbox li .innavibox .inlinebox ul.table1{
	padding:0 0 0 20px;
	float: none;
	width:100%;
}

#header ul.navbox li .innavibox .inlinebox ul.table1 li{
	padding:0 0 !important;
	margin:0 0 0 0 !important;
	float: none;
	width:100%;
}

#header ul.navbox li .innavibox .inlinebox ul.table1 li a.inbtn2{
	display:block;
	width:100%;
	color:#fff;
	text-decoration: none;
	padding:10px 20px;
	position:relative;
	transition: opacity 0.3s;
	letter-spacing: 0.1em;
	box-sizing: border-box;
}

#header ul.navbox li .innavibox .inlinebox ul.table1 li a.inbtn2:before{
	width: 4px;
  	height: 4px;
  	border: 1px solid;
  	border-color: #fff #fff transparent transparent;
  	transform: rotate(45deg);
	content:"";
	display: inline-block;
	position: relative;
	top:-2px;
	right:10px;
}

#header ul.navbox li .innavibox .inlinebox ul.table2{
	padding:0 0 0 20px;
	float: none;
	width:100%;
}

#header ul.navbox li .innavibox .inlinebox ul.table2 li{
	padding:0 0 !important;
	margin:0 0 0 0 !important;
	float: none;
	width:100%;
}
	
#header ul.navbox li .innavibox .inlinebox ul.table2 li a.spbtn{
	width:100%;
	padding:10px 0;
}

#header ul.navbox li .innavibox .inlinebox ul.table2 li a.inbtn3{
	display:inline-block;
	width:100%;
	color:#fff;
	box-sizing: border-box;
	padding:10px 20px;
	text-decoration: none;
	position:relative;
	transition: opacity 0.3s;
	letter-spacing: 0.1em;
}
	

#header ul.navbox li .innavibox .inlinebox ul.table2 li .tc:before{
	width: 4px;
  	height: 4px;
  	border: 1px solid;
  	border-color: #fff #fff transparent transparent;
  	transform: rotate(45deg);
	content:"";
	display: inline-block;
	position: relative;
	top:-2px;
	right:10px;
}
	
#header ul.navbox li .innavibox .inlinebox ul.table2 li .tc{
	text-align: left !important;
}

#header ul.navbox li .innavibox .inlinebox ul.table2 li a.inbtn4{
	display:block;
	width:100%;
	color:#fff;
	text-decoration: none;
	position:relative;
	transition: opacity 0.3s;
	letter-spacing: 0.1em;
	box-sizing: border-box;
	padding:10px 20px;
}

#header ul.navbox li .innavibox .inlinebox ul.table2 li a.inbtn3 img,
#header ul.navbox li .innavibox .inlinebox ul.table2 li a.inbtn4 img{
	width:100%;
	margin:0 0 13px 0;
	display: none;
}


/*footer*/
#footer{
	width:100%;
	background:#000;
}

#footer a.contactlink{
	padding:20px 0;
	text-align: center;
	color:#fff;
	display: block;
	width:100%;
	text-decoration: none;
	background:#212121;
} 

#footer a.contactlink:before{
	content:"";
	width:20px;
	margin:0 10px 0 0;
	height:13px;
	display: inline-block;
	background:url(/images/common/contact_icon.png) no-repeat;
	background-size:cover;
} 

#footer .innerbox{
	padding:65px 0 120px 0;
	width:100%;
	margin:0 auto;
}

#footer .innerbox .logobox{
	padding:0 0 30px 0;
}
	
#footer .innerbox .logobox .logo{
	width:150px;
	display: block;
	vertical-align: middle;
	margin:0 auto 20px;
}

#footer .innerbox .logobox .logo img{
	width:100%;
}

#footer .innerbox .logobox .adress{
	display: inline-block;
	width:100%;
	vertical-align: middle;
	text-align: center;
	line-height: 1.5em;
}

#footer .innerbox .logobox .adress{
	color:#fff;
}

#footer .innerbox .logobox .adress a{
	color:#fff;
	text-decoration: none;
}


#footer .innerbox ul.linkbox{
	padding:40px 0;
	display: none;
}


#footer .innerbox ul.linkbox li{
	float: left;
	margin:0 50px 0 0;
}

#footer .innerbox ul.linkbox li a{
	text-decoration: none;
	color:#fff;
	margin:0 0 10px 0;
	display: inline-block;
	font-size:0.9em;
	transition: opacity 0.3s;
}

#footer .innerbox ul.linkbox li a:hover{
	opacity:0.8;
}

#footer .innerbox ul.linkbox li a.toplink{
	margin:0 0 30px 0;
	font-size:1em;
}

#footer .innerbox .copybox{
	padding:0 0 0 0;
	text-align: center;
}

#footer .innerbox .copybox a{
	text-decoration: none;
	color:#fff;
	transition: opacity 0.3s;
	font-size:0.9em;
	display: inline-block;
	width:100%;
	text-align: center;
	margin:0 0 20px 0;
}

#footer .innerbox .copybox a:hover{
	opacity:0.8;
}

#footer .innerbox .copybox .copy{
	color:#626262;
	text-align: center;
	float: none;
	font-size:0.8em;
	margin:45px 0 0 0;
}
	
#footer .copybox .topsns{
	display: flex;
	justify-content: space-around;
	margin: 0 auto;
	width: 100px;
}


#footer .copybox .topsns a,
#footer .copybox .topsns img{
	width: 35px;
}


#contentbox{
	width:90%;
	margin:0 auto;
	background:#fff;
	position:relative;
	top:0;
}
	
#contentinnerbox{
	padding:40px 0 0;
}
	
.object-fit-img,.avatar {
  		object-fit: cover;
		width:100%;
		height:100%;
  		font-family: 'object-fit: cover;'
	}
	
#pan{
	padding:25px 40px 50px 40px;
	color:#666666;
	display: none;
	font-size:0.9em;
	vertical-align: middle;
	text-align: right;
}
	
#pan a.home{
	width:15px;
	height:13px;
	background:url(/images/common/home_icon.png) no-repeat;
	background-size: cover;
	display: inline-block;
	text-align: right;
	position: relative;
	margin:0 0 0 0;
	vertical-align: middle;
}
	
#pan a{
	color:#666666;
	text-decoration: none;
	vertical-align: middle;
	
}
	
#pan span.arrow{
	width: 4px;
  	height: 4px;
  	border: 1px solid;
  	border-color: #666 #666 transparent transparent;
  	transform: rotate(45deg);
	content:"";
	margin: 0px 10px 0;
	display: inline-block;
	vertical-align: middle;
	
}
	
#pan span.tx{
	display: inline-block;
	vertical-align: middle;
	
}
}