*{
	margin:0;
	padding:0;
}
body{
	font-family: "メイリオ", Meiryo, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	/* overflow-x:hidden; */
}
h1{
	letter-spacing: 8px;
}
li{
	list-style: none;
}
a[target="_blank"]{

}

/*-------------------------------------------------
		header
-------------------------------------------------*/

header{
	padding:0 50px;
	background-color: #fff;
}
header a,
header a:link,
header a:visited{
	text-decoration:none;
	color:#000;
}
header a{
	display:block;
}
header a[target="_blank"]{
	padding-right:22px;
	background-image: url(../img/ico_blank_001.png);
	background-repeat:no-repeat;
	background-position:top 17px right;
}
.header_inner{
	position:relative;
	width:1180px;
	padding:29px 0;
	margin:auto;
	letter-spacing: -.5em;
}
header.over .header_inner{
	border-bottom: 1px solid #d7d7d7;
}
.header_inner > div{
	display:inline-block;
	letter-spacing:normal;
	vertical-align:middle;
}
.header_inner > div ul{
	overflow:hidden;
}
.header_inner > div li{
	float:left;
	font-size:13px;
	line-height: 48px;
	letter-spacing: 1px;
}
.header_left{
	margin-right:136px;
}
#en .header_left{
	margin-right:268px;
}
#cn .header_left{
	margin-right:294px;
}
.header_mid{
	margin-right:30px;
}
.header_mid li{
	margin-right:27px;
}
.header_mid li:last-child{
	margin-right:0;
}
.header_right li{
	padding:0 9px;
	letter-spacing:0.5px;
	border-right:1px solid rgba(0,0,0,0.2);
}
.header_right li:not(.current) a{
	color: rgba(0,0,0,0.5);
}
.header_right li:last-child{
	margin-right:0;
	padding-right:0;
	border-right:0;
}
.header_inner > .nav_button,
.nav_menu{
	display:none;
}
@media screen and (max-width: 750px){
	header{
		padding:0;
	}
	header.open{
		background-color: #000;
	}
	header img{
		max-width: 100%;
	}
	.header_inner{
		width:100%;
		padding:27px 8.5%;
		border:none;
		box-sizing: border-box;
		overflow:hidden;
	}
	header.over .header_inner{
		border:none;
	}
	.header_inner > div{
		display:block;
	}
	.header_left{
		float:left;
		width:50%;
		margin-right:0;
	}
	#en .header_left,
	#cn .header_left{
		margin-right:0;
	}
	.header_left img{
		width:100%;
	}
	.header_left img.logo_white{
		display:none;
	}
	header.open .header_left img.logo_black{
		display:none;
	}
	header.open .header_left img.logo_white{
		display:block;
	}
	.header_inner > div.header_mid,
	.header_inner > div.header_right{
		display:none;
	}
	.header_inner > .nav_button{
		display:block;
		position:absolute;
		top:0;
		bottom:0;
		right:8.5%;
		width:39px;
		height:39px;
		margin:auto;
	}
	.nav_button span{
		position:absolute;
		height:2px;
		width:39px;
		text-indent:-9999px;
		background-color:#000;
		transition: all .4s;
	}
	.open .nav_button span{
		width:52px;
		left:-6px;
		background-color: #fff;
	}

	.nav_button > span:nth-child(1){
		top:7px;
	}
	.nav_button > span:nth-child(2){
		top:18px;
		transition: all .4s;
	}
	.nav_button > span:nth-child(3){
		top:29px;
	}

	.open .nav_button > span:nth-child(1){
		-webkit-transform: translateY(11px) rotate(-45deg);
  		transform: translateY(11px) rotate(-45deg);
	}
	.open .nav_button > span:nth-child(2){
		left: 50%;
		opacity: 0;
	}
	.open .nav_button > span:nth-child(3){
		-webkit-transform: translateY(-11px) rotate(45deg);
		transform: translateY(-11px) rotate(45deg);
	}
	.nav_menu{
		position:absolute;
		left:0;
		width:100%;
		color:#fff;
		background-color:#000;
		z-index:10;
	}
	.open .nav_menu{
		display:block;
	}
	.nav_menu li{
		position:relative;
		font-size:15px;
		line-height:40px;
	}
	.nav_menu a,
	.nav_menu a:link,
	.nav_menu a:visited{
		color:#fff;
	}
	.nav_menu a[target="_blank"]{
		padding-right:22px;
		background-image: url(../img/ico_blank_002.png);
		background-repeat:no-repeat;
		background-size:13px;
	}
	.accordion ul{
		display:none;
	}
	.accordion a[target="_blank"]{
		padding-right:0;
		background-image: none;
	}
	.nav_top > ul > li{
		border-top: 1px solid rgba(215,215,215,0.4);
	}
	.nav_top > ul > li.accordion{
		padding:5px 8.5%;
	}
	.nav_top > ul > li.accordion:after{
		content:"";
		position:absolute;
		top:23px;
		right:32px;
		width:15px;
		height:9px;
		background-image: url(../img/ico_arrow_003.png);
		background-repeat: no-repeat;
		background-position:center;
		transition: transform 0.5s;
	}

	.nav_top > ul > li.accordion.open:after{
		transform-origin: center;
		transform: rotate(180deg);
	}
	.nav_top > ul > li:nth-child(7) a{
		background-position:left 163px top 18px;
	}
	.nav_top > ul > li:nth-child(8) a{
		background-position:left 104px top 18px;
	}

	#en .nav_top > ul > li:nth-child(4) a{
		background-position:left 152px top 18px;
	}
	#en .nav_top > ul > li:nth-child(5) a{
		background-position:left 119px top 18px;
	}
	#cn .nav_top > ul > li:nth-child(4) a{
		background-position:left 100px top 18px;
	}
	#cn .nav_top > ul > li:nth-child(5) a{
		background-position:left 119px top 18px;
	}
	.nav_top > ul > li > a{
		display:block;
		padding: 5px 8.5%;
	}
	.nav_mid ul{
		overflow:hidden;
	}
	.nav_mid li{
		float:left;
		width:50%;
		font-size:13px;
		line-height:18px;
		border-top:1px solid rgba(215,215,215,0.4);
		box-sizing:border-box;
	}
	.nav_mid li a{
		display:block;
		padding:16px 0;
		color:rgba(255,255,255,0.7);
	}
	.nav_mid li a:link,
	.nav_mid li a:visited{
		color:rgba(255,255,255,0.7);
	}
	.nav_mid li:nth-child(odd) a{
		padding-left:32px;
	}
	.nav_mid li:nth-child(even) a{
		padding-right:32px;
	}
	.nav_bottom{
		padding:49px 32px 23px;
		border-top:1px solid rgba(215,215,215,0.4);
	}
	.nav_bottom ul{
		overflow:hidden;
	}
	.nav_bottom li{
		float:left;
		font-size:12px;
		line-height:24px;
		border-right:1px solid rgba(255,255,255,0.5);
	}
	.nav_bottom li.current{
		padding:0 10px;
		color:#fff;
	}
	.nav_bottom li:first-child{
		padding-left:0;
	}
	.nav_bottom li:last-child{
		border-right:none;
	}
	.nav_bottom li a{
		padding:0 10px;
	}
	.nav_bottom li:first-child a{
		padding-left:0;
	}
	.nav_bottom li a,
	.nav_bottom li a:link,
	.nav_bottom li a:visited{
		color:rgba(255,255,255,0.5);
	}



}

/*-------------------------------------------------
		nav
-------------------------------------------------*/
nav{
	position:absolute;
	width:100%;
	min-width:1280px;
	background-color: #fff;
	z-index:10;
}
nav.under{
	margin-top:-97px;
}
nav.over{
	margin-bottom:-97px;
}
nav.fixed{
	position:fixed;
	top:0;
	bottom:inherit;
	bottom:initial;
	bottom:auto;
	margin:0;
	border-bottom: 1px solid #d7d7d7;
}
nav a,
nav a:link,
nav a:visited{
	text-decoration: none;
	color:#000;
}
.nav_inner{

	width:1180px;
	margin:auto;
	padding:0 50px;
}
.nav_inner > div{
}
.nav_left{
	float:left;
	letter-spacing: -.5em;
}
.nav_left .nav_cell{
	display:inline-block;
	font-size:16px;
	line-height:48px;
	letter-spacing: 1px;
}
.nav_left .nav_cell:last-child{
	margin-right:0;
}
.nav_left .nav_cell > p > a{
	display:block;
	padding:24.5px 48px 24.5px 0;
	line-height:48px;
}
.nav_left .dropdown{
	padding:24.5px 73px 24.5px 0;
	background-image: url(../img/ico_arrow_001.png);
	background-repeat:no-repeat;
	background-position:center right 48px;
	cursor:pointer;
}
nav.over .nav_left .dropdown{
	background-image: url(../img/ico_arrow_002.png);
}

.fixed .nav_left .dropdown{
	background-image: url(../img/ico_arrow_002.png);
}
.nav_left .dropdown p{
	position:relative;
}
.nav_left .dropdown p:after{
	content:"";
	position:absolute;
	top:-32px;
	left:40px;
	width:13px;
	height:7px;
	margin:auto;
	background-image:url(../img/ico_arrow_005.png);
	background-position:center;
	background-repeat:no-repeat;
	pointer-events: none;
	opacity:0;
	transition:opacity 0.5s;
	z-index:10;
}
nav.over .nav_left .dropdown p:after,
.fixed .nav_left .dropdown p:after{
	top:72px;
	background-image:url(../img/ico_arrow_006.png);
	background-position:center;
	background-repeat:no-repeat;
}
.nav_left .dropdown.active p:after{
	pointer-events: none;
	opacity:1;
}
.drop_menu{
	position:absolute;
	top:0;
	left:0;
	width:100%;
	margin-top:-314px;
	background-color: rgba(0,0,0,0.8);
	overflow:hidden;
	cursor:auto;
	opacity:0;
	pointer-events: none;
	transition:0.5s;
}
.active .drop_menu{
	opacity:1;
	pointer-events: auto;
}
nav.over .drop_menu,
.fixed .drop_menu{
	margin-top:97px;
}
.drop_menu_inner{
	width:1180px;
	padding:50px;
	margin:auto;
}
.drop_menu_inner ul{
	letter-spacing: -.5em;
	overflow:hidden;
}
.drop_menu_inner li{
	float:left;
	margin-left:-1px;
	letter-spacing: normal;
	transition:0.3s;
}
.drop_menu_inner li:nth-child(1+6n){
	margin-left:0;
}
.drop_menu_inner li:nth-child(n+7){
	margin-top:-1px;
}
.drop_menu_inner li:hover{
	opacity: 0.9;
}

.nav_right{
	float:right;
	padding: 32px 0;
}
.nav_right p{
	width:174px;
	font-size:12px;
	line-height:33px;
	text-align:center;
	color:#fff;
	background-color: #474747;
}
.nav_right p a{
	display:block;
	color:#fff;
}

/*-------------------------------------------------
		kv area
-------------------------------------------------*/
#kv_area{
	position:relative;
	width:100%;
	min-width: 1280px;
	overflow:hidden;
}
.kv_inner{
	min-width: 1280px;
}
#kv_area .kv_slide{
	position:relative;
}
#kv_area .kv_main img{
	width:100%;
	min-width: 1280px;
}
#kv_area .kv_logo{
	position:absolute;
	top:0;
	left:0;
	right:0;
	margin:auto;
	z-index:2;
}
#kv_area .kv_logo img{
	position:absolute;
	top:0;
	bottom:0;
	left:0;
	right:0;
	width:300px;
	max-width: 100%;
	margin:auto;

}
.kv_button{
	position:absolute;
	top:0;
	left:0;
	right:0;
	min-width: 1280px;
	margin:auto;
	pointer-events: none;
}
.kv_button > div{
	position:absolute;
	top:48%;
	width:50px;
	height:50px;
	text-indent: -9999px;
	cursor:pointer;
	pointer-events: auto;
}

.kv_prev{
	left:60px;
	border-left:1px solid #fff;
	border-top:1px solid #fff;
	transform: rotate(-45deg);
}
.kv_next{
	right:60px;
	border-right:1px solid #fff;
	border-top:1px solid #fff;
	transform: rotate(45deg);
}

@media screen and (max-width: 750px){
	#kv_area,
	.kv_inner,
	#kv_area .kv_main img,
	.kv_button{
		min-width: 0%;
	}
	.kv_inner{

	}
	.kv_button > div{
		width:22px;
		height:22px;
	}
	.kv_prev{
		left:4.25%;
	}
	.kv_next{
		right:4.25%;
	}
	#kv_area .kv_logo img{
		width:50%;
	}
}

/*-------------------------------------------------
		main
-------------------------------------------------*/

#main{
}
#contents_wrap{
	width:1180px;
	padding:0 50px;
	margin:auto;
}
#content{
	margin:80px 0 125px;
}
.content_block{
	overflow:hidden;
}
.box_left{
	float:left;
	width:565px;
	margin-right:50px;
}
.box_right{
	float:right;
	width:565px;
}
.block_news h2{
	padding:0 50px;
	margin-bottom:40px;
}
.block_news h2 > img{
	margin-right:28px;
}
.block_news h2 > img:first-child{
	display:inline-block;
}

.block_news h2 a,
.block_news h2 a:link,
.block_news h2 a:visited{
	color:rgba(0,0,0,0.7);
}
.block_news h2 span{
	font-size:14px;
	line-height:24px;
}
.block_news dl{
	padding:35px 50px;
	font-size:14px;
	line-height:24px;
	letter-spacing: normal;
	border-top: 1px solid #d7d7d7;
}
.block_news dt,
.block_news dd{
	display:inline-block;
	letter-spacing: normal;
	vertical-align: top;
}
.block_news dt{
	width:82px;
	margin-right:29px;
}
.block_news dd{
	width:347px;
}
.block_news dd a{
	display:block;
	color:#000;
	text-decoration:none;
}
@media screen and (max-width: 750px){
	#contents_wrap{
		width:100%;
		padding: 0 8.5%;
		box-sizing: border-box;
	}
	#content{
		margin:8.5% 0 0;
	}
	.block_news > div{
		float:none;
		width:100%;
		margin:0 0 60px;
	}
	.box_left,
	.box_right{

	}
	.block_news h2{
		padding:0;
		margin-bottom:20px;
	}
	.block_news h2 > img{
		width:132px;
		padding:0;
	}
	.block_news h2 > img:first-child{
		display:none;
	}
	.block_news h2 > a{
		display:none;
	}
	.block_news dl{
		padding:14.5px 0;
		font-size:13px;
	}
	.block_news dl:last-of-type{
		margin-bottom:20px;
		border-bottom:1px solid #d7d7d7;
	}
	.block_news dt{
		width:86px;
		margin-right:20px;
	}
	.block_news dd{
		width:calc(100% - 111px);
	}
	.more_news{
		text-align:center;
	}
	.more_news img{
		width:215px;
		margin:auto;
	}
}
/*-------------------------------------------------
		footer
-------------------------------------------------*/
footer{

}
footer p{
	margin-bottom:39px;
	font-size:10px;
	line-height:48px;
	text-align:center;
}
footer li{
	display:inline-block;
	position:relative;
	margin-right:40px;
	font-size:12px;
	line-height:48px;
	letter-spacing:normal;
}
footer li:last-child{
	margin-right:0;
}
footer a,
footer a:link,
footer a:visited{
	color:#000;
	text-decoration:none;
}
footer a{
	display:block;
}
footer a[target="_blank"]{
	padding-right:22px;
	background-image: url(../img/ico_blank_001.png);
	background-repeat:no-repeat;
	background-position:top 17px right;
}
.footer_inner{
	width:1180px;
	padding: 0 50px;
	margin:auto;
}
.footer_top{
	padding-bottom:21px;
	letter-spacing: -.5em;
}
.footer_top > div{
	display: inline-block;
    letter-spacing: normal;
    vertical-align: top;
}
.footer_left{
	padding-left:50px;
	margin-right:55px;
}
.footer_right{
	margin-top:-17px;
}
.footer_right > div{
	letter-spacing: -.5em;
}
.footer_box.box02 a,
.footer_box.box02 a:link,
.footer_box.box02 a:visited{
	color:rgba(0,0,0,0.7);
}
.footer_bottom{
	padding-top:21px;
	border-top:1px solid #d7d7d7;
}
.pagetop{
	position:fixed;
	bottom:0;
	left:50%;
	margin-left:-40px;
	line-height:0;
	text-align:center;
	opacity:0;
	transition:0.5s;
	pointer-events: none;
	z-index:2;
}
.pagetop.active{
	opacity:1;
	pointer-events: auto;
}
.footer_top > div.footer_nav{
	display:none;
}
@media screen and (max-width: 750px){
	footer{

	}
	footer li{
		display:block;
		margin:0;
		font-size:15px;
		line-height:40px;
	}
	footer li a{
		display:block;
		padding: 5px 0;
	}
	footer img{
		max-width: 100%;
	}

	.footer_inner{
		width:100%;
		padding:0 8.5%;
		box-sizing: border-box;
	}
	.footer_top{
		padding-bottom:0;
	}
	.footer_top > div{
		display:block;
	}

	.footer_left{
		padding:0;
		margin:0 0 26px;
		text-align:center;
	}
	.footer_top > div.footer_right{
		display:none;
	}
	.footer_top > div.footer_nav{
		display:block;
	}
	.footer_nav_top > ul > li{
		border-top: 1px solid #d7d7d7;
	}
	.footer_nav_top > ul > li.accordion{
		padding:5px 0;
	}
	.footer_nav_top > ul > li.accordion:after{
		content:"";
		position:absolute;
		top:23px;
		right:20px;
		width:15px;
		height:9px;
		background-image: url(../img/ico_arrow_002.png);
		background-repeat: no-repeat;
		background-position:center;
		transition:transform 0.5s;
	}
	.footer_nav_top > ul > li.accordion.open:after{
		transform-origin: center;
		transform: rotate(180deg);
	}
	.footer_nav_top > ul > li:nth-child(7) a{
		background-position:left 132px top 19px;
	}
	.footer_nav_top > ul > li:nth-child(8) a{
		background-position:left 72px top 19px;
	}
	#en .footer_nav_top > ul > li:nth-child(4) a{
		background-position:left 122px top 18px;
	}
	#en .footer_nav_top > ul > li:nth-child(5) a{
		background-position:left 89px top 18px;
	}
	#cn .footer_nav_top > ul > li:nth-child(4) a{
		background-position:left 70px top 18px;
	}
	#cn .footer_nav_top > ul > li:nth-child(5) a{
		background-position:left 89px top 18px;
	}

	.accordion span{
		display:block;
	}
	.accordion ul{
		margin-top:2px;
		margin-bottom:6px;
		overflow:hidden;
	}
	.accordion.open ul{
	}
	.accordion li{
		float:left;
		width:32%;
		margin-right:1.8%;
		margin-bottom:1.8%;
		letter-spacing: normal;
	}
	.accordion li:nth-child(3n){
		margin-right:0;
	}
	.accordion li a{
		display:block;
		padding:0;
		margin:0;
		line-height:0;
	}

	.footer_nav_bottom{
	}
	.footer_nav_bottom ul{
		overflow:hidden;
	}
	.footer_nav_bottom li{
		float:left;
		width:50%;
		font-size:13px;
		border-top:1px solid #d7d7d7;
	}
	.footer_nav_bottom li a{
		color:rgba(0,0,0,0.7);
	}
	.footer_bottom{
		padding-top:20px;
	}
	.footer_bottom p{
		margin-bottom:65px;
		font-size:10px;
		line-height:30px;
	}
}

/*-------------------------------------------------
		option
-------------------------------------------------*/
.sp_none{
	display:block;
}
.pc_none{
	display:none;
}
.clrFix:after{
	display:block;
	clear:both;
	height:0;
	visibility:hidden;
	content:".";
}
@media screen and (max-width: 750px){
	.sp_none{
		display:none;
	}
	.pc_none{
		display:block;
	}
}
