@charset "utf-8";
@media screen and (max-width:1100px){
	header nav > ul {
		/* width: 720px; */
		/* width: auto; */
	}
	header nav > ul > li {
		margin-left: 25px;
	}
	header h1 {
		width: 250px;
	}
}
@media screen and (max-width:768px){
html {
	-webkit-text-size-adjust: 100%;
}
html.close {
	overflow:hidden;
	height:100%;
}
body {
	font-size:13px;
}
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;
}


/* header */
header{
	width:100%;
	min-width:100%;
	height:50px;
	padding:0 10px;
}
header h1 {
	width: auto;
}
header h1 a img{
	width:140px;
}
header nav{
	width:100%;
	height:100vh;
	background-color:#fff;
	position:fixed;
	top:50px;
	left:0;
	display:none;
}
header nav > ul{
	width:auto;
	text-align:left;
	border-bottom:1px dotted;
}
header nav > ul > li{
	display:block;
	margin-left:0;
	border-top:1px dotted;
	position:static;
}
header nav > ul > li a{
	display:block;
	font-size:14px;
	padding:5px 1em;
}

header nav > ul > li > ul{
	position:static;
	top:auto;
	left:auto;
	transform:none;
	background-color:#fff;
	display:block;
}
header nav > ul > li > ul li a{
	padding:0 1em 0 2em;
	line-height:2em;
	font-size:14px;
	text-align:left;
	background-color:transparent;
	color:#4D4131;
	border-top:none;
	position:relative;
}
header nav > ul > li > ul li a:before{
	content:'';
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 4px 0 4px 6px;
	border-color: transparent transparent transparent #4D4131;
	position:absolute;
	left:1.2em;
	top:50%;
	transform:translateY(-50%);
}


/* smart_nav */
#smart_nav{
	display:block;
	width:40px;
	height:40px;
	padding:0 0;
	cursor:pointer;
}
#btnmenu{
	width:40px;
	height:42px;
	margin:0;
	padding:0;
	position:relative;
}

#btnmenu span{
	display: block;
	position: absolute;
	top: 50%;
	left: 50%;
	width: 28px;
	height: 3px;
	margin: -3px 0 0 -14px;
	background: #000;
	-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: 28px;
	height: 3px;
	background: #000;
	-webkit-transition: .3s;
	-moz-transition: .3s;
	-ms-transition: .3s;
	-o-transition: .3s;
	transition: .3s;
}
#btnmenu span:before{
	margin-top: -10px;
}

#btnmenu span:after{
	margin-top: 7px;
}

#btnmenu .close{
	background: transparent;
	width:42px;
	height:40px;
	margin-top:-20px;
	margin-left:-20px;
}

#btnmenu .close:before,
#btnmenu .close:after{
	margin-top: 0;
}

#btnmenu .close:before{
	width: 28px;
	height: 3px;
	margin: -2px 0 0 6px;
	-webkit-transform: rotate(-45deg);
	-moz-transform: rotate(-45deg);
	-ms-transform: rotate(-45deg);
	-o-transform: rotate(-45deg);
	transform: rotate(-45deg);
}
#btnmenu .close:after{
	width: 28px;
	height: 3px;
	margin: -2px 0 0 6px;
	-webkit-transform: rotate(-135deg);
	-moz-transform: rotate(-135deg);
	-ms-transform: rotate(-135deg);
	-o-transform: rotate(-135deg);
	transform: rotate(-135deg);
}




/* article */
article{
	padding-top:50px;
}


/* #cont0 */
#cont0{
	height:300px;
	background:url(../images/h1_bg.jpg)no-repeat center right;
	background-size:cover;
}
#cont0 div{
	width:90%;
}
#cont0 div h1{
	font-size:5vw;
}
#cont0 div h1 span{
	font-size:3.4vw;
}
#cont0 div p{
	line-height:1.8;
}


/* h2.tit_icon */
h2.tit_icon{
	margin-bottom:20px;
	font-size:5vw;
}
h2.tit_icon img{
	width:3%;
	margin:0 auto 5px;
}
h2.tit_icon span{
	font-size:3.4vw;
}
h2.tit_icon + p{
	display:inline-block;
	margin-bottom:30px;
	padding:0 3%;
	font-size:14px;
	text-align:left;
}


/* .more */
.more{
	display:inline-block;
	width:180px;
	line-height:34px;
	border-radius:20px;
	font-size:12px;
	color:#fff;
	text-align:center;
	border:1px solid #fff;
	letter-spacing:0.08em;
	text-indent:0.08em;
	position:relative;
}
.more span{
	font-size:14px;
}
.more:after{
	content:'';
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 4px 0 4px 6px;
	border-color: transparent transparent transparent #fff;
	position:absolute;
	right:30px;
	top:50%;
	transform:translateY(-50%);
}
.more.orange{
	color:#FE8512;
	border:1px solid #FE8512;
}
.more.orange:after{
	border-color: transparent transparent transparent #FE8512;
}


/* #contact */
#contact{
	padding:60px 0 50px;
}
#contact > div{
	width:94%;
	margin:auto;
	text-align:center;
	display: block;
}
#contact > div h2.tit_icon{
	margin-bottom:20px;
}
#contact > div dl{
	margin-bottom:30px;
}
#contact > div dl dd{
	display:inline-block;
	margin-right:15px;
	font-size:16px;
}
#contact > div dl dd span{
	font-size:10px;
}
#contact > div div .more{
	width:260px;
	line-height:40px;
}
#contact > div div .more:after{
	right:15px;
}


/* footer */
footer{
	padding:0 0 5%;
}
footer #topbtn{
	width:40px;
	display:inline-block;
	transform:translateY(-40%);
}
footer > div{
	width:100%;
	margin:-5px auto 0;
	display: block;
}
footer > div nav > ul > li:last-child{
	margin-left:0;
	border-bottom:1px dotted;
}
footer > div nav > ul > li{
	display:block;
}
footer > div nav > ul > li a{
	display:block;
	line-height:3;
	padding:0 1em;
}
footer > div nav > ul > li > ul > li{
	margin-bottom:0;
	border-top:1px dotted;
}
footer > div nav > ul > li > ul > li ul li a{
	display:block;
	padding-left:2em;
	position:relative;
	line-height:2;
}
footer > div nav > ul > li > ul > li ul li a:before{
	content:'';
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 4px 0 4px 6px;
	border-color: transparent transparent transparent #fff;
	position:absolute;
	left:1em;
	top:50%;
	transform:translateY(-50%);
}

footer > div dl{
	margin-top:8%;
	padding:01em;
}
footer > div dl dt{
	width:200px;
}
footer > div dl dd:first-of-type,
footer > div dl dd:last-of-type{
	margin-top:10px;
}
footer > div dl dd ul li{
	display:inline-block;
	margin-right:1em;
}
footer > div dl dd ul li a{
	color:#fff;
}
footer > div dl dd ul li a img{
	width:18px;
	margin-right:5px;
}

}


@media screen and (max-width:540px){
#cont0{
	height:200px;
}
#cont0 div p{
	font-size:11px;
}
}


@media screen and (min-width: 480px){
  .br_pc { display:block; }
  .br_sp { display:none; }
}
@media screen and (max-width: 480px){
  .br_pc { display:none; }
  .br_sp { display:block; }
}
