@charset "utf-8";
@media screen and (max-width:768px){
html {
	-webkit-text-size-adjust: 100%;
}
html.close {
	overflow:hidden;
	height:100%;
}
body {
	font-size:4vw;
}
img{
	max-width:100%;
}
.only_pc{
	display:none !important;
}

.only_smart{
	display:block !important;
}
.only_smart_i{
	display:inline-block !important;
}


#wrapper{
	min-width:auto;
	min-width:initial;
	background-color:transparent;
}


/* header */
header{
	min-width:100%;
	height:auto;
	position:absolute;
	top:0;
	background-color:transparent;
	box-shadow:none;
}
header.color{
	position:fixed;
	z-index:100;
	top:-24px;
	background-color:#6d1d78;
	box-shadow:0 0 6px rgba(0,0,0,0.2);
}
header > p{
	font-size:12px;
	background-color:#000;
	color:#fff;
}
header > div{
	height:50px;
	margin:auto;
	padding-left:10px;
	position:relative;
}
header > div h1{
	position:relative;
	z-index:1;
}
header > div h1 a{
	display:block;
	width:120px;
	line-height:1;
}

header > div nav{
	width:100%;
	max-height:100vh;
	padding:50px 3% 10% 35%;
	position:absolute;
	top:0;
	left:0;
	background:url(../images/smart_bg.png)no-repeat center top;
	background-size:cover;
	display:none;
	overflow:auto;
	-webkit-overflow-scrolling: touch;
	box-shadow:0 5px 5px rgba(0,0,0,0.2);
}
header > div nav ul{
	display: block;
}
header > div nav ul li{
	width:auto;
	line-height:2.8;
}
header > div nav ul li:nth-child(n+6){
	width:auto;
}
header > div nav ul li:nth-child(-n+4){
	border-right:none;
}
header > div nav ul li a{
	font-size:4.5vw;
	font-weight:bold;
	color:#731d80;
	border-bottom:1px solid;
}
header > div nav ul li:nth-child(-n+5) a,
header > div nav ul li:last-child a{
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: space-between;
	justify-content: space-between;
	-webkit-align-items: center;
	align-items: center;
	transform:scaleX(0.8);
	position:relative;
}
header > div nav ul li:nth-child(-n+5) a:after,
header > div nav ul li:last-child a:after{
	content:'';
	display:block;
	width:100%;
	border-top:2px dotted;
	position:absolute;
	top:50%;
	right:0;
	z-index:-1;
	transform:translateY(-50%);
}
header > div nav ul li a div{
	padding-right:1%;
	background-color:#c9a7ce;
}
header > div nav ul li a span{
	display:block;
	padding-left:1%;
	transform:scaleX(1.2);
	transform-origin:right;
	font-size:3vw;
	background-color:#c9a7ce;
}


/* #btnmenu */
#btnmenu{
	width:50px;
	height:50px;
	margin:0;
	padding:0;
	position:relative;
	z-index:105;
	cursor:pointer;
}
#btnmenu.top{
	background-color:transparent;
}
#btnmenu span{
	display: block;
	position: absolute;
	top: 50%;
	left: 50%;
	width: 22px;
	height: 2px;
	border-radius:2px;
	margin: -1px 0 0 -11px;
	background: #fff;
	-webkit-transition: .2s;
	-moz-transition: .2s;
	-ms-transition: .2s;
	-o-transition: .2s;
	transition: .2s;
}
#btnmenu span:before,
#btnmenu span:after{
	display: block;
	content: "";
	position: absolute;
	top: 50%;
	left: 0;
	width: 22px;
	height: 2px;
	background: #fff;
	border-radius:2px;
	-webkit-transition: .3s;
	transition: .3s;
}

#btnmenu span:before{
	margin-top: -10px;
}

#btnmenu span:after{
	margin-top: 7px;
}
#btnmenu.close{
	width:50px;
	height:50px;
	box-shadow:none;
	border-radius:0;
	background-color:transparent;
}
#btnmenu.close span{
	background-color:transparent;
}

#btnmenu.close span:before,
#btnmenu.close span:after{
	margin-top: 0;
	background-color:#fff;
}

#btnmenu.close span:before{
	width: 22px;
	height: 2px;
	margin: -2px 0 0 0;
	border-radius:2px;
	-webkit-transform: rotate(-45deg);
	transform: rotate(-45deg);
}
#btnmenu.close span:after{
	width: 22px;
	height: 2px;
	margin: -2px 0 0 0;
	border-radius:2px;
	-webkit-transform: rotate(-135deg);
	transform: rotate(-135deg);
}


/* article */
article{
	padding-top:22px;
}


/* .cont */
.cont{
	width:auto;
}


/* #overlay */
html.overlay {
	overflow:hidden;
	height:100%;
}
#overlay{
	width:100%;
	height:100vh;
	padding:50px 0 70px;
	background-color:rgba(0,0,0,0.6);
	text-align:center;
	position:fixed;
	top:0;
	left:0;
	z-index:999999;
	overflow-y:auto;
	overflow-x:hidden;
	-webkit-overflow-scrolling: touch;
	display:none;
}
#overlay:before{
	content:'×';
	color:#fff;
	position:fixed;
	right:20px;
	top:15px;
	cursor:pointer;
}
#overlay > div{
	width:90%;
	max-width:1077px;
	margin:auto;
}


/* footer */
footer{
	margin-top:-20%;
	padding:20% 0 20%;
	background:url(../images/foot_bg_s.png)no-repeat center top;
	background-size:cover;
}
footer dl{
	margin:5% 0 0;
}
footer dl dt{
	margin-bottom:0;
}
footer dl dt img{
	width:60%;
}
footer dl dd{
	margin-top:3%;
}
footer dl dd a{
	margin:0 5%;
	line-height:1.5;
	font-size:7.5vw;
	color:#fff;
}
footer dl dd a img{
	width:10%;
}
footer nav ul{
	display:none;
}
footer > p{
	line-height:2;
	font-size:2vw;
}


/* #to_top */
#topbtn{
	font-size:24px;
	font-weight:bold;
	color:#fff;
}


/* #bottom_banner */
#bottom_banner{
	width:100%;
	position:fixed;
	top:auto;
	bottom:0;
	right:0;
	overflow:hidden;
	z-index:90;
	text-align:center;
}
#bottom_banner li{
	width:50%;
	margin:0;
	float:left;
}
#bottom_banner li a{
	display:block;
}
#bottom_banner li a img{
	width:100%;
}




}
