@charset "utf-8";

/* @import url(//fonts.googleapis.com/earlyaccess/notosansjapanese.css); */


/* RESET */
body,div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,pre,code,form,fieldset,legend,input,button,textarea,p,blockquote,th,td{margin:0;padding:0;}table{border-collapse:collapse;border-spacing:0;}fieldset,img{border:0;}address,caption,cite,code,dfn,em,strong,th,var,optgroup{font-style:inherit;font-weight:inherit;}del,ins{text-decoration:none;}li{list-style:none;}caption,th{text-align:left;}h1,h2,h3,h4,h5,h6{font-size:100%;font-weight:normal;}q:before,q:after{content:'';}abbr,acronym{border:0;font-variant:normal;}sup{vertical-align:baseline;}sub{vertical-align:baseline;}legend{color:#000;}input,button,textarea,select,optgroup,option{font-family:inherit;font-size:inherit;font-style:inherit;font-weight:inherit;}input,button,textarea,select{*font-size:100%;}
/* RESET HTML5 */
article,aside,canvas,details,figcaption,figure,footer,header,hgroup,menu,nav,section,summary,time,mark,audio,video{margin:0;padding:0;border:0;outline:0;font-size:100%;font:inherit;vertical-align:baseline;}
/* HTML5 display-role reset for older browsers */
article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section{display:block;}

/* GENERAL */
a:link, a:visited {color: #000;text-decoration: none;}
a:hover {color: #222;text-decoration: none;}
a{outline: none;}

/* CLEARFIX */
.clearfix
{zoom: 1;}

.clearfix:after,
header:after,
.worksList:after,
.memberList:after,
.profileBox:after,
.pageBox:after,
.teamList:after,
.aboutBox:after,
.detail .head:after
{content: "."; display: block; visibility: hidden; clear: both; height: 0; font-size: 0; line-height: 0;}

strong{
font-weight: bold;
}

img{
vertical-align: bottom;
}

*{
	box-sizing: border-box;
}

/* ------------------------------------------
LAYOUT
------------------------------------------ */

html{
	height: 100%; 
}

body{
	font: 12px/1.4 'Roboto Condensed',"Yu Gothic", "游ゴシック", YuGothic, 'Noto Sans Japanese',"Lucida Grande","Hiragino Kaku Gothic Pro W6","ヒラギノ角ゴ Pro W6","ＭＳ Ｐゴシック",sans-serif;
	-webkit-font-smoothing: antialiased;
	-webkit-text-size-adjust: none;
	width: 100%; 
	height: 100%; 
	background-color: #fff;
	color:#000;
	position:relative;
	font-size: 14px;

	line-height: 140%;
	
	font-weight: 300;
	
/* 	background: linear-gradient(to right, red, green, yellow); */
}

.onlyPc{
	display: block;
}

.onlySp{
	display: none;
}



/* ------------------------------------------
loading
------------------------------------------ */


#loading{
/* 	display: none !important; */

	position: fixed;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	z-index: 1000;
	background-color: #f2f2f2;
	background-color: #222;

-webkit-transform: translate3d(0,0,0);
}





.mainLogo{
	position: absolute;
	top:50%;
	left: 50%;

-webkit-transform:translate(-50%,-50%);
-moz-transform:translate(-50%,-50%);
-ms-transform:translate(-50%,-50%);
-o-transform:translate(-50%,-50%);
transform:translate(-50%,-50%);

	
    -webkit-transform-origin: 50% 50% 0;
    -ms-transform-origin: 50% 50% 0;
    transform-origin:50% 50% 0;

}

.mainLogo.hidden{
	opacity: 0;
	display: none;
}

.mainLogo img{

    -webkit-transition: transform 0.5s cubic-bezier(0.23, 1, 0.32, 1) 0s;
    transition: transform 0.5s cubic-bezier(0.23, 1, 0.32, 1) 0s;

	opacity: 1;
	
	max-width: 100%;
}

.mainLogo img:hover{
	opacity: 0.8;
}







#topFlexslider{
-webkit-transition: all 0.8s cubic-bezier(0.215, 0.61, 0.355, 1);
-moz-transition: all 0.8s cubic-bezier(0.215, 0.61, 0.355, 1);
-o-transition: all 0.8s cubic-bezier(0.215, 0.61, 0.355, 1);
-ms-transition: all 0.8s cubic-bezier(0.215, 0.61, 0.355, 1);

	position: relative;
	margin-bottom: 40px;
}

#aboutFlexslider{
	margin-bottom: 60px;
}

#opLoading{
position: absolute;
left: 50%;
top: 50%;
text-align: center;

	-webkit-transform: translate(-50%,-50%);
	-ms-transform: translate(-50%,-50%);
	transform: translate(-50%,-50%);	

}
#opProgressBarBg{
width:140px;
height: 1px;
overflow:hidden;
background-color: #777;

margin-left: auto;
margin-right: auto;

position: absolute;
bottom: -60px;

left: 50%;
margin-left: -70px;

}

#opProgressBar{
width: 1px;
height: 1px;
background-color: #fff;
}
#opProgressTx{
text-align: center;
font-size: 14px;
margin-top: 15px;
display: none;
}

#opLogo img{
	max-width: 100%;
}


section{
	max-width: 1200px;
	margin-left: auto;
	margin-right: auto;
	
	padding-left: 60px;
	padding-right: 60px;
	
	margin-bottom: 90px;
}


/* ------------------------------------------
header
------------------------------------------ */

header{
	max-width: 1200px;
	margin-left: auto;
	margin-right: auto;
	
	padding-left: 60px;
	padding-right: 60px;
	
	margin-bottom: 60px;
}

h1#logo a{
	width: 60px;
	height: 100px;
	display: block;
	
	margin-top: 20px;
	
	text-indent: -9999px;

	background-image:url(../images/hd_logo.png);
	background-repeat:no-repeat;
	background-position: center center;
	background-size: contain;
	
	max-width: 100%;
	
	float: left;
}

.nav{
    float: right;
    margin-top: 48px;
    margin-right: 60px;
    
    font-size: 14px;
    letter-spacing: 0.1em;
}

.nav li{
	display: inline-block;
	margin: 0 5px;
}

.nav li a{
	color: #000;
	padding: 5px 5px;
	display: inline-block;
	overflow: hidden;
	position: relative;
}

.nav li a:after{
  content: "";
  position: absolute;
  display: block;
  width: 0;
  bottom: 0;
  left: 50%;
  height: 1px;
  background: #000;

  -webkit-transition: left 0.4s ease 0s, width 0.4s ease 0s;
  -moz-transition: left 0.4s ease 0s, width 0.4s ease 0s;
  -ms-transition: left 0.4s ease 0s, width 0.4s ease 0s;
  -o-transition: left 0.4s ease 0s, width 0.4s ease 0s;
  transition: left 0.4s ease 0s, width 0.4s ease 0s;
}

.nav li a:hover:after,
.nav li.current a:after{
  left: 0;
  width: 100%;
}

.snsList{
	position: absolute;
	right: 60px;
	top: 50px;
}

.snsList li{
	display: inline-block;
}

.snsList li a{
	display: inline-block;
	width: 30px;
	height: 20px;
	text-indent: -9999px;


	background-repeat:no-repeat;
	background-position: center center;
	background-size: 11px auto;
}

.snsList li.facebook a{
	background-image:url(../images/ico_facebook.png);
}

.snsList li.instagram a{
	background-image:url(../images/ico_instagram.png);
}











/* ------------------------------------------
main
------------------------------------------ */

.newsBox{
	padding-left: 20px;
	padding-right: 20px;
}
.newsSubBox{
	background-color: #f1f1f1;
	padding: 25px 40px;
	padding-bottom: 15px;
}

.newsTtl{
	font-weight: bold;
	float: left;
	font-size: 16px;
}

.newsList{
	padding-left: 100px;
	text-align: left;
}

.newsList li{
	margin-bottom: 10px;
}

.newsList .date{
	float: left;
}
.newsList .disp{
	padding-left: 100px;
	font-size: 13px;
	text-align: left;

}

.home .copyright{
	display: none;
}


h2.ttl{
	text-align: center;
	font-size: 20px;
	font-weight: bold;
	margin-bottom: 40px;
}
h3.ttl{
	text-align: left;
	font-size: 20px;
	font-weight: bold;
	margin-bottom: 10px;
}

article.detail .date{
	margin-bottom: 20px;
}
article.detail .img{
	margin-bottom: 20px;
}
article.detail .img img{
	max-width: 100%;
}

.worksList{
	margin-left: -15px;
	margin-right: -15px;
}

/*
.worksList .job{
	display: none;
}
*/
.worksList .job{
	display: block;
}
.worksList .ttl{
	font-weight: bold;
}



.worksList li{
	float: left;
	width: calc(25% - 30px);
	
	margin-left: 15px;
	margin-right: 15px;
	margin-bottom: 40px;
	
	font-size: 12px;
}

.worksList.recentlylist li{
	width: calc(50% - 30px);
}

.worksList li .img{
	margin-bottom: 5px;
}

.worksList li .img{
	display: block;
	position: relative;
	overflow: hidden;
}
.worksList li .img:before {
    content:"";
    display: block;
    padding-top: 56.33%;
}
.worksList li .img img{
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
}


.worksList li .img img{
	width: 100%;
}

.worksList li .imgArea{
	position: relative;
}

.worksList li .imgArea .dispArea{
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	
	background-color: rgba(0,0,0,0.6);
	
	opacity: 0;
	z-index: 2;

-webkit-transition: all 0.3s cubic-bezier(0.215, 0.61, 0.355, 1);
-moz-transition: all 0.3s cubic-bezier(0.215, 0.61, 0.355, 1);
-o-transition: all 0.3s cubic-bezier(0.215, 0.61, 0.355, 1);
-ms-transition: all 0.3s cubic-bezier(0.215, 0.61, 0.355, 1);
}

.worksList li a:hover .imgArea .dispArea{
	opacity: 1;
}

.worksList li{
	position: relative;
}

.worksList li .cat{
	color: #999;
	font-size: 11px;
}

.catIcon{
	position: absolute;
	left: 0;
	top: 0;
	background-color: #fff;
	color: #000;
	padding: 3px 10px;
	font-weight: bold;
	background-color: rgba(255,255,255,0.8);
}

.worksList li .imgArea .dispArea .disp{
	color: #fff;

	position: absolute;
	left: 0%;
	top: 50%;
	text-align: center;
	width: 100%;


	-webkit-transform: translate(-0%,-50%);
	-ms-transform: translate(-0%,-50%);
	transform: translate(-0%,-50%);	
	
	font-size: 14px;
	font-weight: bold;
}

.worksList li .imgArea .dispArea .disp span{
	font-size: 10px;
}

.copyright{
	text-align: center;
}





























#button_container{
	position: fixed;
	top: 34px;
	right: 24px;

	height: 55px;	
	z-index: 300; 
	width: 50px;
	
	margin-top: -20px;
	
	display: none;
}


#toggle {
	position: absolute;
	right: 0px;
	top: 20px;
	height: 27px;
	width: 30px;
	cursor: pointer;
	z-index: 300;
	-webkit-transition: opacity .25s ease;
	transition: opacity .25s ease;
}

#toggle:hover {
  opacity: .7;
}
#toggle.active .top {
  -webkit-transform: translateY(8px) translateX(0) rotate(45deg);
      -ms-transform: translateY(8px) translateX(0) rotate(45deg);
          transform: translateY(8px) translateX(0) rotate(45deg);
  background: #fff;
}
#toggle.active .middle {
  -webkit-transform: translateY(30px) translateX(0) rotate(0);
      -ms-transform: translateY(30px) translateX(0) rotate(0);
          transform: translateY(30px) translateX(0) rotate(0);
  background: #fff;
}
#toggle.active .bottom {
  -webkit-transform: translateY(-8px) translateX(0) rotate(-45deg);
      -ms-transform: translateY(-8px) translateX(0) rotate(-45deg);
          transform: translateY(-8px) translateX(0) rotate(-45deg);
  background: #fff;
}
#toggle span {
  background: #000;
  border: none;
  height: 2px;
  width: 34px;
  position: absolute;
  top: 0px;
  left: 0;
  -webkit-transition: all .35s ease;
          transition: all .35s ease;
  cursor: pointer;
}
#toggle span:nth-of-type(2) {
  top: 8px;
}
#toggle span:nth-of-type(3) {
  top: 16px;
}

#overlay {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  opacity: 1;
  visibility: hidden;
  -webkit-transition: opacity .35s, visibility .35s, width .35s;
          transition: opacity .35s, visibility .35s, width .35s;
  z-index: 200;
  
}
#overlay:before {
  content: '';
  background: #000;
  left: -55%;
  top: 0;
  width: 50%;
  height: 100%;
  position: absolute;
  -webkit-transition: left .35s ease;
          transition: left .35s ease;
}
#overlay:after {
  content: '';
  background: #000;
  right: -55%;
  top: 0;
  width: 50%;
  height: 100%;
  position: absolute;
  -webkit-transition: all .35s ease;
          transition: all .35s ease;
}
#overlay.open {
  opacity: .9;
  visibility: visible;
  height: 100%;
}
#overlay.open:before {
  left: 0;
}
#overlay.open:after {
  right: 0;
}
#overlay.open li {
  -webkit-animation: fadeInRight .5s ease forwards;
          animation: fadeInRight .5s ease forwards;
  -webkit-animation-delay: .35s;
          animation-delay: .35s;
}
#overlay.open li:nth-of-type(2) {
  -webkit-animation-delay: .40s;
          animation-delay: .40s;
}
#overlay.open li:nth-of-type(3) {
  -webkit-animation-delay: .45s;
          animation-delay: .45s;
}
#overlay.open li:nth-of-type(4) {
  -webkit-animation-delay: .50s;
          animation-delay: .50s;
}
#overlay.open li:nth-of-type(5) {
  -webkit-animation-delay: .55s;
          animation-delay: .55s;
}
#overlay.open li:nth-of-type(6) {
  -webkit-animation-delay: .60s;
          animation-delay: .60s;
}
#overlay.open li:nth-of-type(7) {
  -webkit-animation-delay: .65s;
          animation-delay: .65s;
}
#overlay.open li:nth-of-type(8) {
  -webkit-animation-delay: 0.70s;
          animation-delay: 0.70s;
}
#overlay.open li:nth-of-type(9) {
  -webkit-animation-delay: 0.75s;
          animation-delay: 0.75s;
}
#overlay.open li:nth-of-type(10) {
  -webkit-animation-delay: 0.80s;
          animation-delay: 0.80s;
}

#overlay.open li:nth-of-type(11) {
  -webkit-animation-delay: 0.85s;
          animation-delay: 0.85s;
}
#overlay.open li:nth-of-type(12) {
  -webkit-animation-delay: 0.90s;
          animation-delay: 0.90s;
}
#overlay.open li:nth-of-type(13) {
  -webkit-animation-delay: 0.95s;
          animation-delay: 0.95s;
}
#overlay.open li:nth-of-type(14) {
  -webkit-animation-delay: 1.00s;
          animation-delay: 1.00s;
}
#overlay.open li:nth-of-type(15) {
  -webkit-animation-delay: 1.05s;
          animation-delay: 1.05s;
}







#overlay nav {
  position: relative;
  height: 70%;
  top: 50%;
  -webkit-transform: translateY(-50%);
      -ms-transform: translateY(-50%);
          transform: translateY(-50%);
  font-size: 15px;
  font-weight: 400;
  text-align: center;
  z-index: 100;
}
#overlay ul {
  list-style: none;
  padding: 0;
  margin: 0 auto;
  display: inline-block;
  position: relative;
  height: 100%;
  display: block;
  margin-left: 20px;
  margin-right: 20px;
}
#overlay ul li {
  display: block;

  height: 25%;
  height: calc(100% / 6);
  
  max-height: 60px;

  position: relative;
  opacity: 0;
}

#overlay ul li.lineSp{
	position: relative;
	padding-bottom: 20px;
}

#overlay ul li.lineSp:after{
  content: '';
  background: #eee;
  display: block;

  width: 160px;
  height: 1px;
  
  position: absolute;
  left: 50%;
  bottom: 4px;

  -webkit-transform: translateX(-50%);
      -ms-transform: translateX(-50%);
          transform: translateX(-50%);
}


#overlay ul li a,
#overlay ul li span {
  display: block;
  position: relative;
  color: #fff;
  text-decoration: none;
  overflow: hidden;
  padding: 15px 0;

  font-size: 15x;
  
  font-weight: 300;
  letter-spacing: 0.1em;
  font-weight: bold;
}



#overlay ul li.lang a,
#overlay ul li.lang span{
	display: inline-block;
	color: #fff;
}

#overlay ul li.lang span{
	padding: 15px 15px;
}

#overlay ul li a:hover:after, #overlay ul li a:focus:after, #overlay ul li a:active:after {
  width: 100%;
}


#overlay ul li.snsList{
	right: auto;
	top: 20px;
}

#overlay ul li.snsList a{
	display: inline-block;
	color: #fff;
	
	text-indent: -9999px;
	width: 30px;
	height: 30px;
	
	margin: 0 10px;
	background-position: center center;
}

#overlay a.facebook{
	background-image:url(../images/ico_facebook_white.png);
	background-repeat:no-repeat;
	background-size: 11px auto;
}

#overlay a.instagram{
	background-image:url(../images/ico_instagram.png);
	background-repeat:no-repeat;
	background-size: 11px auto;
}



@-webkit-keyframes fadeInRight {
  0% {
    opacity: 0;
    left: 20%;
  }
  100% {
    opacity: 1;
    left: 0;
  }
}

@keyframes fadeInRight {
  0% {
    opacity: 0;
    left: 20%;
  }
  100% {
    opacity: 1;
    left: 0;
  }
}







footer{
	padding-bottom: 30px;
}





.filterBox{
	text-align: center;
	margin-bottom: 30px;
	font-family: 'Roboto','Noto Sans Japanese',"Lucida Grande","Hiragino Kaku Gothic Pro W6","ヒラギノ角ゴ Pro W6","ＭＳ Ｐゴシック",sans-serif;
	letter-spacing: 0.05em;
	font-size: 13px;
}

.filterEach{
	display: inline-block;
	margin: 0 30px;
}

.filterTtl{
	display: inline-block;
	margin-right: 10px;
}

.filterDisp{
	display: inline-block;
}
















.memberList{
	margin-left: -20px;
	margin-right: -20px;
}

.memberList li{
	float: left;
	width: calc(33% - 40px);
	
	margin-left: 20px;
	margin-right: 20px;
	
	text-align: center;
}

.memberList li img{
	width: 100%;
	margin-bottom: 10px;
}

.memberList li a{
	opacity: 1;

-webkit-transition: all 0.3s cubic-bezier(0.215, 0.61, 0.355, 1);
-moz-transition: all 0.3s cubic-bezier(0.215, 0.61, 0.355, 1);
-o-transition: all 0.3s cubic-bezier(0.215, 0.61, 0.355, 1);
-ms-transition: all 0.3s cubic-bezier(0.215, 0.61, 0.355, 1);
}

.memberList li a:hover{
	opacity: 0.6;
}



.profileBox{
	margin-bottom: 80px;
	margin-left: -20px;
	margin-right: -20px;
}

.profileBox .left{
	float: left;
	width: 360px;
	width: calc(33% - 40px);
	margin-left: 20px;
}

.single .profileBox .left{
	width: 260px;
	max-width: 100%;
}

.profileBox .left img{
	width: 100%;
}

.profileBox .right{
	padding-left: 340px;
	margin-right: 20px;
}

.profileBox .right .name{
	font-size: 20px;
	font-weight: bold;
	margin-bottom: 18px;
}

.profileBox .right .job{
	margin-bottom: 20px;
}

.profileBox .right .profile{
	font-size: 12px;
	margin-bottom: 30px;
}

.profileBox .right .profile p{
	margin-bottom: 20px;
}

.profileBox .right .profile a{
	text-decoration: underline;
}





.mainImg{
	margin-bottom: 70px;
}
.mainImg img{
	width: 100%;
}


.detail{
	padding-left: 50px;
	padding-right: 50px;
}

.detail .head{
	margin-bottom: 50px;
}

.detail .head .left{
	float: left;
	width: 380px;
	max-width: 100%;
}

.detail .head .right{
	padding-left: 420px;
	font-size: 12px;
}

.detail .head h2.ttl{
	margin-bottom: 10px;
	text-align: left;
}

.client{
	font-size: 12px;
	margin-bottom: 0px;
}

.staff{
	font-size: 12px;
	margin-bottom: 30px;
}


.thumList{
	margin-bottom: 0px;
}

.thumList img{
	width: 100%;
	margin-bottom: 0px;
}

.thumList .img{
	margin-bottom: 10px;
}

.thumList li{
	margin-bottom: 30px;
}


.pageBox img{
	width: 100%;
}


.pageBox{
	margin-left: -20px;
	margin-right: -20px;
}

.pageBox > div{
	float: left;
	width: calc(50% - 40px);
	
	margin-left: 20px;
	margin-right: 20px;
	margin-bottom: 40px;
	
	font-size: 12px;
}




.pageBox > div .imgArea{
	position: relative;
}

.pageBox > div .imgArea .dispArea{
/*
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
*/
	
/* 	background-color: rgba(0,0,0,0.6); */
	
/* 	opacity: 0; */
	z-index: 2;

-webkit-transition: all 0.3s cubic-bezier(0.215, 0.61, 0.355, 1);
-moz-transition: all 0.3s cubic-bezier(0.215, 0.61, 0.355, 1);
-o-transition: all 0.3s cubic-bezier(0.215, 0.61, 0.355, 1);
-ms-transition: all 0.3s cubic-bezier(0.215, 0.61, 0.355, 1);
}

.pageBox > div .imgArea .dispArea .ttl{
	display: none;
}

.pageBox > div.left{
	text-align: right;
}
.pageBox > div.right{
	text-align: left;
	float: right;
}

.pageBox > div a{
	padding: 30px;
	font-weight: bold;
	font-size: 16px;
}
.pageBox > div a:hover{
	text-decoration: underline;
}

.pageBox > div .imgArea .img{
	display: block;
	position: relative;
	overflow: hidden;
	
	display: none;
}

/*
.pageBox > div .imgArea .img:before {
    content:"";
    display: block;
    padding-top: 42%;
}

.pageBox > div .imgArea .img img{
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
}
*/



/*
.pageBox > div a:hover .imgArea .dispArea{
	opacity: 1;
}

.pageBox > div .imgArea .dispArea .disp{
	color: #fff;

	position: absolute;
	left: 20%;
	top: 50%;
	text-align: left;
	width: 50%;


	-webkit-transform: translate(-0%,-50%);
	-ms-transform: translate(-0%,-50%);
	transform: translate(-0%,-50%);	
	
	font-size: 14px;
	font-weight: bold;
}
*/





.web a{
	background-color: #000;
	color: #fff;
	font-size: 11px;
	padding: 2px 5px;
	border-radius: 4px;

-webkit-transition: all 0.3s cubic-bezier(0.215, 0.61, 0.355, 1);
-moz-transition: all 0.3s cubic-bezier(0.215, 0.61, 0.355, 1);
-o-transition: all 0.3s cubic-bezier(0.215, 0.61, 0.355, 1);
-ms-transition: all 0.3s cubic-bezier(0.215, 0.61, 0.355, 1);
}
.web a:hover{
	opacity: 0.6;
}

.set{
	margin-bottom: 80px;
}

.teamTtl{
	font-weight: bold;
	font-size: 18px;
	margin-bottom: 20px;
}

.teamList{
	text-align: left;
}

.teamList{
	margin-left: -20px;
	margin-right: -20px;
}

.teamList li{
	float: left;
	width: calc(33% - 40px);
	
	margin-left: 20px;
	margin-right: 20px;
	margin-bottom: 30px;
}

.teamList li img{
	width: 100%;
	margin-bottom: 10px;
}

.teamList li .name{
	font-weight: bold;
	margin-bottom: 2px;
}

.teamList li .job{
	font-size: 12px;
}




.youtubeLink a{
	display: block;
	width: 77px;
	height: 17px;
	
	background-image:url(../images/ico_youtube.png);
	background-repeat:no-repeat;
	background-position: center center;
	background-size: 77px auto;
	
	text-indent: -9999px;
}





.memberNameList li{
	white-space: nowrap;
	display: inline-block;
	margin: 0 20px;
}

.memberNameList li.current a{
	border-bottom: 1px solid #000;
}

.memberNameList li a:hover{
	opacity: 0.6;
}



.btnArea a{
	background-color: #231815;
	padding: 10px 20px;
	color: #fff;
	display: inline-block;

-webkit-transition: all 0.3s cubic-bezier(0.215, 0.61, 0.355, 1);
-moz-transition: all 0.3s cubic-bezier(0.215, 0.61, 0.355, 1);
-o-transition: all 0.3s cubic-bezier(0.215, 0.61, 0.355, 1);
-ms-transition: all 0.3s cubic-bezier(0.215, 0.61, 0.355, 1);
}

.btnArea a:hover{
	opacity: 0.6;
}

.map .btnArea{
	padding-top: 10px;
}




















/* ------------------------------------------
contact
------------------------------------------ */




#tblForm{
margin-top: 0px;
}

#btnArea{
margin-top: 30px;
margin-bottom: 50px;
}
#btnArea input{
background: none;
border: 0;
color: #FFF;
display: block;
width: 100px;
height: 32px;
background-color: #000;
text-align: center;

}
#tblForm #btnArea input{
border-radius: 0;
}


#tblForm th{
padding: 10px;
padding-left: 0;
width: 210px;
vertical-align: top;
padding-top: 16px;
box-sizing: border-box;
}

#tblForm th .require{
float: right;
font-size: 10px;
color: #fff;
background-color: #696969;
padding: 0px 6px;
border-radius: 4px;
line-height: 180%;
margin-top: 3px;
}

#tblForm td{
padding: 10px;
padding-left: 0;
box-sizing: border-box;
}

#tblForm .sel1{
width: 290px;
}

#tblForm .sel2{
width: 60px;
}

#tblForm .sel3{
width: 400px;
height: 150px;
}

#tblForm input{
border: solid 1px #CCC;
border-radius: 4px;
padding: 6px;
}
#tblForm .wpcf7-list-item input{
border: none;
}


#tblForm textarea{
border: solid 1px #CCC;
border-radius: 4px;
padding: 6px;
}
.attention{
text-align: center;
font-size: 12px;
font-weight: bold;
margin-bottom: 280px;
}







#btnArea{
	text-align: center;
}

#btnArea input{
	display: inline-block;
	cursor: pointer;
}

.contactBox{
	padding-top: 60px;
	width: 800px;
	max-width: 100%;
	margin-left: auto;
	margin-right: auto;
}






.aboutBox .right{
	float: right;
	width: 40%;
}

.aboutBox .right img{
	max-width: 100%;
}

.aboutBox .left{
	float: left;
	width: 55%;

	line-height: 180%;
}



.concept{

}

.infoList li{
	margin-bottom: 10px;
}

.infoList .ttl{
	float: left;
}


.infoList .disp{
	padding-left: 120px;
}


.home .newsBox{
	position: fixed;
	bottom: 40px;
	text-align: center;
	width: 800px;
	max-width: 100%;
	left: 50%;

-webkit-transform:translate(-50%,0%);
-moz-transform:translate(-50%,0%);
-ms-transform:translate(-50%,0%);
-o-transform:translate(-50%,0%);
transform:translate(-50%,0%);
}

.home footer{
	position: fixed;
	bottom: 0px;
	text-align: center;
	width: 100%;
}















.map{
	clear: both;
}

.map iframe{
	width: 100%;
}






#pagetop{
	width: 60px;
	height: 60px;
	position: fixed;
	right: 20px;
	bottom: 20px;
	z-index: 1000;
	opacity: 0;
	visibility: hidden;

-webkit-transition: all 0.3s cubic-bezier(0.215, 0.61, 0.355, 1);
-moz-transition: all 0.3s cubic-bezier(0.215, 0.61, 0.355, 1);
-o-transition: all 0.3s cubic-bezier(0.215, 0.61, 0.355, 1);
-ms-transition: all 0.3s cubic-bezier(0.215, 0.61, 0.355, 1);
}

#pagetop a{
	display: block;
	width: 100%;
	height: 100%;
	border-radius: 10px;
	background-image: url(../images/ic_pagetop.png);
	background-repeat: no-repeat;
	background-position: 50% 50%;
	text-indent: -9999px;
	background-color: #333;
	background-size: 24px 24px;
}

#pagetop.show{
	visibility: visible;
	opacity: 1;
}



#memberTop{
	width: 60px;
	height: 60px;
	position: fixed;
	right: 20px;
	bottom: 90px;
	z-index: 1000;
	opacity: 0;
	visibility: hidden;

-webkit-transition: all 0.3s cubic-bezier(0.215, 0.61, 0.355, 1);
-moz-transition: all 0.3s cubic-bezier(0.215, 0.61, 0.355, 1);
-o-transition: all 0.3s cubic-bezier(0.215, 0.61, 0.355, 1);
-ms-transition: all 0.3s cubic-bezier(0.215, 0.61, 0.355, 1);
}

#memberTop a{
	display: block;
	width: 100%;
	height: 100%;
	border-radius: 10px;
	background-image: url(../images/ic_back.png);
	background-repeat: no-repeat;
	background-position: 50% 50%;
	text-indent: -9999px;
	background-color: #333;
	background-size: 24px 24px;
}

.single-works #memberTop.show{
	visibility: visible;
	opacity: 1;
}





/* ------------------------------------------
ipad
------------------------------------------ */
@media screen and (max-width: 860px){


.detail{
	padding-left: 20px;
	padding-right: 20px;
}
.detail .head{
	margin-bottom: 10px;
}

section{
	padding-left: 30px;
	padding-right: 30px;
}

.worksList{
	margin-left: -8px;
	margin-right: -8px;
}

.worksList li{
	width: calc(25% - 16px);
	margin-left: 8px;
	margin-right: 8px;
}


.memberList{
	margin-left: -10px;
	margin-right: -10px;
}

.memberList li{
	width: calc(33.33% - 20px);
	margin-left: 10px;
	margin-right: 10px;
}


.contactBox{
	padding-top: 20px;
	width: 640px;
}


header{
	padding-left: 40px;
	padding-right: 40px;
}

.snsList{
	right: 30px;
}

.nav{
	margin-right: 30px;
}














}









/* ------------------------------------------
smartphone
------------------------------------------ */
@media screen and (max-width: 719px){


section{
	padding-left: 20px;
	padding-right: 20px;
}

.nav{
	display: none;
}

header{
	padding-left: 20px;
	padding-right: 20px;
}

.snsList{
	display: none;
}

#button_container{
	display: block;
}





.memberNameList li{
	margin: 0 10px;
}


.worksList{
	margin-left: 0;
	margin-right: 0;
}

.worksList li{
	width: calc(50% - 16px);
	width: 100%;
	margin-left: 0;
	margin-right: 0;
	
	height: auto !important;
	margin-bottom: 30px;
}

.mainImg{
	margin-bottom: 30px;
}

.detail{
	padding-left: 0px;
	padding-right: 0px;
}

.detail .head h2.ttl{
	font-size: 16px;
}

.staff{
	margin-bottom: 20px;
}

.detail .head{
	margin-bottom: 30px;
}


.pageBox{
	padding-left: 20px;
	padding-right: 20px;
}
.pageBox > div{
	width: 100%;
	margin-left: 0;
	margin-right: 0;
	margin-bottom: 20px;
}

.thumList img{
	margin-bottom: 15px;
}


.pageBox > div .imgArea .dispArea .disp{
	left: 30px;
}


.thumList{
	margin-bottom: 60px;
}


.memberList{
	margin-left: 0;
	margin-right: 0;
}

.memberList li{
	width: 100%;
	margin-left: 0;
	margin-right: 0;
	margin-bottom: 30px;
}

.profileBox{
	padding-left: 20px;
	padding-right: 20px;
}

.profileBox .left{
	width: 100%;
	float: none;
	margin-left: 0;
}

.profileBox .right{
	padding-left: 0;
	margin-right: 0;
}

.profileBox .left img{
	margin-bottom: 20px;
}

.profileBox .right .name{
	margin-bottom: 5px;
}

.profileBox .right .job{
	margin-bottom: 20px;
}


.aboutBox .right{
	width: 100%;
	float: none;
	margin-bottom: 40px;
}

.aboutBox .left{
	width: 100%;
	float: none;
}


.teamList{
	margin-left: 0;
	margin-right: 0;
}

.teamList li{
	width: calc(50% - 40px);
	width: 100%;
	margin-left: 0;
	margin-right: 0;
	
	height: auto !important;
	
	margin-bottom: 20px;
}

.teamTtl{
	margin-bottom: 20px;
}













#tblForm{
	width: 100%;
}


#tblForm th{
	display: block;
	width: auto;
	padding-bottom: 5px;
	padding-right: 0;
}
#tblForm td{
	display: block;
	width: auto;
	padding-top: 0;
	padding-right: 0;
}

#tblForm .sel1{
	width: 100%;
	box-sizing: border-box;
}



#tblForm .sel3{
	width: 100%;
	box-sizing: border-box;
}





.detail .head .left{
	float: none;
}

.detail .head .right{
	padding-left: 0;
	padding-top: 20px;
}





.home h1{
	display: none;
}


.newsSubBox{
	padding: 25px 20px;
}


.newsList .date{
	float: none;
	width: auto;
}

.newsList{
	padding-left: 80px;
}

.newsList .disp{
	float: none;
	width: auto;
	display: block;
	padding-left: 0;
}


.pageBox{
	text-align: center;
}

.pageBox > div.left{
	display: inline-block;
	width: auto;
	text-align: center;
	float: none;
	margin-bottom: 0;
}
.pageBox > div.right{
	display: inline-block;
	width: auto;
	text-align: center;
	float: none;
	margin-bottom: 0;
}

.thumList{
	margin-bottom: 0;
}


.detail .head{
	margin-bottom: 0;
}

header{
	margin-bottom: 10px;
}



.map iframe{
	height: 260px;
}

h1#logo a{
	margin-top: 0;
}



.single-works .detail .head{
	margin-bottom: 20px;
}










}




































