@charset 'utf-8';


/* ------------------------------------------------------------ COMMON ------------------------------------------------------------ */

/* 基本 */

body {
	-webkit-text-size-adjust: 100%; 
	background: none;
}

/* 基本 */

.inner {
	width:100%;
	padding: 0 5%;
}

header {
	height: auto;
	padding: 0 0 10px;
}

header h1 {
	position: relative;
	top: auto;
	left: auto;
	display: inline-block;
}

section.main {
	padding: 0;
	margin: 50px auto 0 auto !important;
}

header + section {
	margin: 50px auto 0 auto;
}

nav {
	width: 100%;
	height: auto;
	line-height: normal;
}

nav ul {
	display: none;
	margin: 15px auto;
	text-align: center;
}

nav ul li {
	display: block;
	width: 100%;
	margin: 0 auto;
}

nav ul li a {
	display: block;
	width: 100%;
	height: 100%;
	padding: 10px 0;
}


/* ナビボタン */

header #nav_btnwrapper {
	display: block;
	position: fixed;
	top: 0;
	right: 0;
	width: 50px;
	height: 50px;
}

header nav #nav_btn {
	display: inline-block;
	position: relative;
	width: 50px;
	height: 50px;
}

#nav_btn_icon {
  display: block;
  position: absolute;
  top: 50%;
  left: 50%;
  width: 20px;
  height: 2px;
  margin: -1px 0 0 -9px;
  background: #0e9700;
  transition: .2s;
}

#nav_btn_icon:before, #nav_btn_icon:after{
  display: block;
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  width: 20px;
  height: 2px;
  background: #0e9700;
  transition: .3s;
}
#nav_btn_icon:before{
  margin-top: -8px;
}
#nav_btn_icon:after{
  margin-top: 6px;
}
#nav_btn .close{
  background: transparent;
}
#nav_btn .close:before, #nav_btn .close:after{
  margin-top: 0;
}
#nav_btn .close:before{
  transform: rotate(-45deg);
  -webkit-transform: rotate(-45deg);
}
#nav_btn .close:after{
  transform: rotate(45deg);
  -webkit-transform: rotate(45deg);
}

footer {
	padding: 15px 0;
}

footer div:first-child {
	display: none;
}

footer .copyright {
	margin: 10px 0 0 15px;
}

footer .pagetop {
	bottom: 15px;
	right: 15px;
}

footer .pagetop:hover {
	bottom: 33px;
}

/* ------------------------------------------------------------ TOPPAGE ------------------------------------------------------------ */

.top_list ul.works_nav {
	padding: 20px 0;
}

.top_list ul.works_nav li {
	margin: 0 5px;
	font-size: 1.2rem;
}

.top_list ul.works_list {
	padding: 0;
	opacity: 1;
}

.top_list ul.works_list li a p {
	font-size: 1.0rem;
}

.top_list ul.works_list li {
	width:25%;
}

.top .top_list ul.works_list li {
	width: 50%;
}


/* ------------------------------------------------------------ SECONDPAGE ------------------------------------------------------------ */


.works_img {
	margin: 0;
}

.works_img li {
	padding: 15px;
	margin: 0 0 30px;
}

/*
.works_img li:first-child img {
	visibility: visible !important;
}
*/

.works_detail {
	margin: 30px auto 0;
	padding: 30px 0 60px;
}

.works_detail h2 {
	margin: 0 auto 30px;
	font-size: 1.6rem;
}

.works_spec {
}

.works_spec dl {
	width: 100%;
	float: none;
	margin: 0 0 20px;
}

.works_spec p {
	width: 100%;
	float: none;
}


/* project */

.project {
	padding: 0;
}

.project dl {
	margin: 60px 0 0;
}

.project dl dt {
	width: 100%;
	float: none;
	padding: 0;
	margin: 30px 0 20px;
	text-align: center;
	background: #fff;
}

.project dl dd {
	padding: 0;
	margin: 20px 0 0;
}

.project dl dd h2 {
	margin: 0 0 10px;
}

.project dl dd img {
	width: 100%;
}



/* process */

.process {
	padding: 30px 0;
}

.process h2 {
	margin: 0 0 30px;
	font-size: 1.6rem;
}

.process dl {
	margin: 30px auto 0;
	line-height: 1.8;
}

.process dl dt {
	width: 100%;
	max-width: 100%;
	padding: 15px 5%;
	font-size: 1.3rem;
	background: #fafafa;
}

.process dl dd {
	width: 100%;
	max-width: 100%;
	padding: 15px 5%;
}

.process dl dd br {
	display: none;
}

.process dl:nth-of-type(2n+1) {
	background: transparent;
}

.process dl + p {
	text-align: left;
	margin: 30px 15px 0;
}

/* profile */

.profile {
	padding: 30px 0;
}

.profile .inner > div {
	margin: 0 0 60px;
}

.profile .inner div h2 {
	width: 100%;
	float: none;
	margin: 0 0 30px;
	color: #0e9700;
}

.profile .inner div .prof_fr {
	width: 100%;
	float: none;
}

.profile .inner div .prof_fr p {
	margin: 0 0 10px;
}

.profile h3 {
	margin: 0 0 10px;
	font-size: 1.4rem;
}

.profile h3 span {
	font-size: 1.1rem;
	display: block;
	margin: 0;
}

.profile ul li {
	margin: 0 0 10px;
}

.profile dl {
	margin: 30px 0 0;
}

.profile dl dt {
	width: 80px;
	font-size: 1.2rem;
}

.profile dl dd {
	margin: 0 0 20px 90px;
}

#map,
#map_custom iframe {
	width:100% !important;
	height: 200px !important;
}


/* contact */

.contact {
	padding: 15px 0 50px;
}

.bx-wrapper .bx-pager,
.bx-wrapper .bx-controls-auto {
	bottom: 10px;
}

.bx-wrapper .bx-pager.bx-default-pager a {
	margin: 0 15px;
}

.bx-wrapper .bx-prev {
	display: none;
}

.bx-wrapper .bx-next {
	display: none;
}