@charset "UTF-8";


/** ----------------------------------------------------------------- **/
/** ----------------------------------------------------------------- **/
/** -------------------    MAIN STRUCTURE     ----------------------- **/
/** ----------------------------------------------------------------- **/
/** ----------------------------------------------------------------- **/

body,td,th {
	/*font-family:"Libre Baskerville","游明朝", YuMincho, "Hiragino Mincho ProN", "ヒラギノ明朝 Pro W3", Meiryo, serif;*/

}
/* Body */

.sp {display:none;}
.pc {display:block;}

@media screen and (max-width: 768px){
.sp {display:block;}
.pc {display:none;}
}

.right{
	display: inline-block;
	float: right;
}

.left{
	display: inline-block;
	float: left;
}

body {
font-family: 'Montserrat', 'Noto Sans JP',YuGothic, "Yu Gothic Medium", "Yu Gothic", Verdana, Meiryo, sans-serif;
	background-color: #ffffff;
	margin-top: 0px;
	margin-right: 0px;
	margin-bottom: 0px;
	margin-left: 0px;
	font-size: 13px;
	font-style: normal;
	font-weight: 200;
	color: #333333;
}
/* Container */
.container {
	width: 100%;
	margin-left: auto;
	margin-right: auto;
	background-color: #FFFFFF;
	overflow: hidden;
}
.main_contents{
	margin-top:100px;
}

.max100p{
	width: 100%;
	margin: auto;
}

.header_center_max{
	max-width: 1200px;
	margin: auto;
	width: 88%;
}
@media (max-width: 900px) {
.header_center_max {
    max-width: 1200px;
    margin: auto;
    width: 94%;
}
}

.center_contents_box01{
	max-width: 1200px;
	width: 92%;
	overflow: hidden;
	margin: 50px auto  50px auto;
}

@media (max-width: 768px) {
.center_contents_box01{
	width: 96%;
}
.main_contents{
	margin-top:80px;
}
}

section{
	position: relative;
	overflow: hidden;
	clear: both;
}

/* footer*/
footer {

	padding-bottom: 35px;
  width: 100%;
  height: auto;
  text-align: center;
  padding: 50px 0;
	overflow: hidden;
position: relative;
}

#footer_icon{
	width: 100%;
	text-align: center;
}
#footer_icon img{
	width: 20%;
	max-width: 60px;
}

#footer_copy{
	color: #000;
	text-align: center;
	padding: 30px 15% 50px 15%;
	font-size: 0.9em;
	line-height: 1.6em;
}
@media (max-width: 768px) {
	#footer_copy{
	padding: 30px 5% 50px 5%;
	font-size: 0.7em;
	line-height: 1.2em;
	}
}
.hidden {
	display: none;
}

#scroll_down_icon{
width: 20px;
position: fixed;
right: 1.5%;
top: 40%;
z-index: 1;
}

#scroll_down_icon img{
	width: 100%;
}
@media (max-width: 768px) {
#scroll_down_icon{
width: 15px;
position: fixed;
right: 1.5%;
top: 40%;
z-index: 1;
}
}


/* 画面外にいる状態 */
.fadein {
	opacity : 0.1;
	transform : translate(0, 50px);
	transition : all 600ms;
	}

/* 画面内に入った状態 */
.fadein.scrollin {
	opacity : 1;
	transform : translate(0, 0);
	}



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

.section_title{
width: 94%;
margin: 80px 3% 0 3%;
padding-bottom: 10px;
border-bottom: 1px solid #666;
font-size: 25px;
text-align: center;
	font-weight: 300;
font-family: 'Lato', sans-serif;
}
@media (max-width: 768px) {
.section_title{
margin: 10px 3% 0 3%;
}
}
.text_white{
color: #fff;
}

/* Navigation */
header {
	width: 100%;
	height: 80px;
	background-color:transparent;
	z-index: 10;
background-color: rgba(255, 255, 255, 0.8);;
padding: 20px 0 0 0;
}

.fix_header{
	position: fixed;
	margin: 0px 0 0px 0;
}


.logo {
margin: 0px;
height: 33px;
padding: 5px 0% 0px 30px;
color: #000;
float: left;
width: 170px;
position: fixed;
}

.logo img{
	width: 100%;
}
.logo_white{
	display: none;
}

.logo_black{
	display: block;
}

.text_white .logo_white{
	display: block;
}

.text_white .logo_black{
	display: none;
}
@media (max-width: 1150px) {
    .logo {
      margin: 0px;
      height: 33px;
      padding: 7px 0% 0px 20px;
      color: #000;
      float: left;
      width: 24%;
      max-width: 160px;
	}
}
@media (max-width: 900px) {
.logo {
    width: 19%;
}
}

@media (max-width: 768px) {
    .logo {
margin: 0px;
height: auto;
padding: 5px 0px 30px 0px;
color: #000;
float: none;
width: 100%;
		text-align: center;
		max-width: none;
    }
	
    .logo img{
     width: 60%;
		max-width: 140px;
    }
	
	
}

nav {

	width: 65%;
margin: auto;
height: auto;
overflow: hidden;
}

#header_nav{
padding: 0px;
margin: 0px;
width: 100%;
float: right;
height: auto;
	z-index: 2;
}
@media (max-width: 1150px) {
	#header_nav {
    width: 81%;
	}
}

@media (max-width: 900px) {
	#header_nav {
    width: 81%;
	}
}
@media (max-width: 768px) {
#header_nav {
    padding: 0px;
    margin: 0px;
    width: 100%;
    float: right;
    height: 100vh;
}
}
.open_arrow{
	font-size:0.9em;
	padding: 0px 0 0 5px;
width: 18px;
	display: inline-block;
}

.open_arrow img{
	width:100%;
	margin-bottom: 3px;
}
#sns_menu,#sns_menu_blk{
	position: absolute;
	right: 10%;
	top:-15px;
}
#page_top #sns_menu_blk{
	display: none;
}

.header_sns_menu_li{
	display: inline-block;
}


#main_menu {
	list-style: none;
	padding: 15px 0 0 0 ;
	text-align: center;
}
#main_menu li {
    margin-right: 35px;
    letter-spacing: 0.2px;
    transition: all 0.3s linear;
    font-family: 'Work Sans', sans-serif;
    display: inline-block;
}
.header_menu_fontsize{
		font-size: 1.16em;
}

#collection_sub_menu,#collection_sub_menu_sp{
    position: absolute;
    padding: 1em 0;
    margin: 1em 0;
    width: 65%;
    display: none;
    text-align: left;
    border-top:1px solid #666;
    max-width: 753px;
}

#collection_sub_menu_sp{
	display: none;
}

#page_collection header ,#page_collection_detail header {
	
	height: 120px;
}


#page_collection #collection_sub_menu,#page_collection_detail  #collection_sub_menu{

display: block;
}

#collection_sub_menu_ul{
	
}
#collection_sub_menu_title{

}
.collection_sub_menu_li{
	font-size:0.87em;
	letter-spacing: 0.03em;
	margin-right: 17px !important;
}


@media (max-width: 1150px) {
	#main_menu{
		padding: 10px 0 0 0;
	}	
	
	
	#main_menu li {
    	margin-right: 15px;
		padding-top: 0.3em;
	}
.header_menu_fontsize{
		font-size: 1.2em;
}
	
#collection_sub_menu,#collection_sub_menu_sp{
	width: 650px
	}
	

}


@media (max-width: 900px) {
	
	#main_menu li {
    	margin-right: 10px;
		padding-top: 0.3em;
	}
.header_menu_fontsize{
		font-size: 1.05em;
}
	
#collection_sub_menu,#collection_sub_menu_sp{
		width: 560px;
	}
}





ul li a {

	text-decoration: none;
}
ul li:hover a {

}

.m8,.m9{
padding: 0;
width: 21px;
height: 25px;
margin: 0px 5px 0 5px;

}

#main_menu li.m9{
	margin-right: 0px;
}

.m8 img,.m9 img{
	width: 21px;
	margin-bottom: -2px;
}

@media (max-width: 1200px) {
.m9{
margin-right: 3px;
}
}

@media (max-width: 1150px) {
#main_menu li.m9{
margin-right: 0px;
}
}

@media (max-width: 768px) {
.m8, .m9 {
    padding: 0;
    width: 28px;
    margin: 15px 10px 0 -1px;
}
#collection_sub_menu_sp{
position: relative;
padding: 1em 0;
margin: 1em 0;
width: 100%;
display: none;
text-align: left;
border-top:1px solid #333;
}

#page_collection #collection_sub_menu_sp,#page_collection_detail  #collection_sub_menu_sp{

display: block;
}
#page_collection #collection_sub_menu,#page_collection_detail  #collection_sub_menu{

display: none;
}
	#page_collection header ,#page_collection_detail header {
	
	height: 80px;
}
}

/* Small Tablets */
@media (max-width: 768px) {
    .container header nav {
    margin-top: 0px;
    margin-right: 0px;
    margin-bottom: 0px;
    margin-left: 0px;
    width: 100%;
    float: none;
    overflow: auto;
    display: inline-block;
    background: #ffffff;
		
position: fixed;
width: 100%;
background-color: #EBEBE4;
background-color: rgba(255,255,255,0.93);
overflow: hidden;
    overflow-y: hidden;
min-height: auto;
display: none;
z-index: 10;
padding-bottom: 10px;
top: 0;
right: 0;
bottom: 0;
left: 0;
overflow-y: scroll;		
		
	display: none;
    }
	
	
    #main_menu {
    position: relative;
    width: 96%;
    height: auto;
    overflow: hidden;
    max-width: 1024px;
    min-height: 100px;
    padding: 15px 2% 20px 2%;
    margin: auto;
		padding-top: 100px;
text-align: left;
}	
	
	
.fix_header {
    position: fixed;
    margin: 0px 0 20px 0;
}


    #main_menu li {
    margin-top: 0px;
    margin-right: 0px;
    margin-bottom: 0px;
    margin-left: 0px;
    width: 100%;
    text-align: left;
    padding-top: 8px;
    padding-bottom: 8px;
    }

	
    header.text_white{
		color: #333;
    }	

#page_top #sns_menu {
display: none;
}
	
#page_top #sns_menu_blk{
	display: block;
    right:auto;
    top:auto;
position: relative;
width: 96%;
height: auto;
overflow: hidden;
max-width: 1024px;
min-height: 100px;
padding: 0px 2% 50px 2%;
margin: auto;
	}
	
}
/*!------------------------------------*\
    burger Start
\*!------------------------------------*/
#burger_base_box{
  position:relative;
  width:100%;
  max-width:1460px;
  margin:auto;

}
#burger_menu{
    position:absolute;
    left:3%;
   top:15px;
   width:30px;
   z-index:20;

    width: 30px;
    height: 23px;
}

#burger_menu img{
   width:100%;
}

.menu-trigger,
.menu-trigger span {
  display: inline-block;
  transition: all .4s;
  box-sizing: border-box;
}
.menu-trigger {
  position: relative;
  width: 30px;
  height: 23px;
}
.menu-trigger span {
  position: absolute;
  left: 0;
  width: 100%;
  height: 1px;
  background-color: #999;
  border-radius: 4px;
}
.menu-trigger span:nth-of-type(1) {
  top: 0;
}
.menu-trigger span:nth-of-type(2) {
  top: 11px;
}
.menu-trigger span:nth-of-type(3) {
  bottom: 0;
}

.menu-trigger span:nth-of-type(2)::after {
  position: absolute;
  top: 0;
  left: 0;
  content: '';
  width: 100%;
  height: 1px;
  background-color: #999;
  border-radius: 4px;
  transition: all .4s;
}
.menu-trigger.active span:nth-of-type(1) {
  transform: translateY(20px) scale(0);
}
.menu-trigger.active span:nth-of-type(2) {
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
}
.menu-trigger.active span:nth-of-type(2)::after {
  -webkit-transform: rotate(90deg);
  transform: rotate(90deg);
}
.menu-trigger.active span:nth-of-type(3) {
  transform: translateY(-20px) scale(0);
}

/*!------------------------------------*\
    burger end
\*!------------------------------------*/


.section1{
	width:100%;
	position: relative;
	overflow: hidden;
	margin: auto;
	margin-top: 230px;
}

/** ----------------------------------------------------------------- **/
/** ----------------------------------------------------------------- **/
/** -------------------------    TOP     ---------------------------- **/
/** ----------------------------------------------------------------- **/
/** ----------------------------------------------------------------- **/

#page_top header {
	background-color:transparent;
}

/**common**/
.top_section {

}


 .loader{
		width:40px;
		height: 40px;
		display:block;
	    top:55%;
		left:calc( 50% - 20px);
	    position: absolute;
}

.loader img{
	width: 100%;	
}

	
@media (max-width: 768px) {
	
.top_section {

}
}

.sub_title{
	font-size:20px;
		clear: both;
	padding: 30px 0 0 0;
}

.text_box1{
	padding: 30px 0;
	clear: both;
	font-size:15px;
	line-height: 1.9em;
}

.text_box2{
	padding: 30px 0;
	clear: both;
	font-size:15px;
	line-height: 1.9em;
}

/*******SECTION********/
#about{
	height: 100%;
	min-height: 100vh;
}
#main_text01{
	position: absolute;
	width: 100%;
	text-align: center;
	z-index: 1;
bottom: calc(10vh + 8vw);
}
#main_text01 img{
	width:100%;
		max-width: 500px;
}	

@media (max-width: 768px) {
#main_text01{
	position: absolute;

	bottom: calc(10vh + 27vw);
	text-align: center;
	z-index: 1;
}
#main_text01 img{
	width: 96%;
		max-width: 500px;
}	

}
#bg01_1,#bg01_2,#bg01_3,#bg01_4{
	display: none;
}
#bg01_1{
	display: block;
}

#sp_bg01_1,#sp_bg01_2,#sp_bg01_3,#sp_bg01_4{
	display: none;
}



@media (max-width: 768px) {
#bg01_1,#bg01_2,#bg01_3{
	display: none;
}
#sp_bg01_1,#sp_bg01_2,#sp_bg01_3{
	display: none;
}
#sp_bg01_1{
	display: block;
}
}

#top_wide_img,#top_wide_img_sp{
width: 100%;
height: 100%;
height: 100vh;
overflow: hidden;
background-size: cover;
background-position: center;
}
	



.top_photo {
    width: 100%;
    height: 100%;
    height: 101vh;
    overflow: hidden;
    background-size: cover;
    background-position: center;
    position: absolute;
}






/*******SECTION********/

#works{


}

.works_li{
	float: left;
	height: 200px;
	padding: 0px 3px;
}

.works_li img{
	height: 200px;
}
.works_slide{
	height: 240px;
}



/*******SECTION********/
#partner{


}
@media (max-width: 768px) {
#partner {

}
}

#partner_list_ul{}


.partner_list_li{
	float: left;
	width: 21%;
	margin: 10px 2%;
}
.partner_list_li_font{

   font-family: 'Noto Sans JP',YuGothic, "Yu Gothic Medium", "Yu Gothic", Verdana, Meiryo, sans-serif;
	text-align: center;
	font-weight: 300;
	line-height: 2em;
}
.partner_li_img{
	width: 100%;
}

.partner_li_img img{
	width: 100%;
	padding-bottom: 10px;
}
.partner_li_job{

	font-size:12px;
    word-break: break-all;
    height: 2.0em;
    line-height: 1.3em;
}
.partner_li_name{

		font-size:17px;
    padding: 0 0 0.5em 0;
}
.partner_li_text01{
		font-size:13px;
height: 170px;
line-height: 1.8;
	text-align: left;
}

@media (max-width: 768px) {
.partner_list_li{
	
	float: left;
width: 45.8%;
margin: 10px 2% 30px 2%;

}


.partner_li_name {

}
	
}



/*******SECTION********/
#studio{

}

@media (max-width: 768px) {
#studio{

}
}

.studio_photo{
	width: 100%;
}


.studio_photo img{
	width: 100%;
}





/*******SECTION********/
#contact{

}

@media (max-width: 768px) {
#contact{

}
}
#post-6{
	padding-top: 0em;
}
#post-6 .entry-header{
	display: none;
	
}

#page_wp .fix_header,#page_wp footer{
	display: none;
	
}


/* ---- FORM ------ */

.wpcf7-form{
	margin-top: 30px;
}


.item02{
	padding:0 0 3em 0;
}
input[type="text"],
input[type="email"] {
	width: 100%;
	height: 40px;
	padding: 10px;
	border: #ccc 1px solid;
    background-color: #fefefe;
	box-sizing: border-box;
	font-size: 13px;
	margin-bottom: 20px;
}

.wpcf7-form-control-wrap textarea {
	width: 100%;
	padding: 10px;
	border: #ccc 1px solid;
    background-color: #fefefe;
	box-sizing: border-box;
	font-size: 13px;
	line-height: 1.5em;
}
 
input[type="submit"] {
	color: #333;
	font-size: 14px;
	padding: 15px 40px;
	background-color: #eee;
	border: none;
	margin-top: 60px;
}
span.wpcf7-list-item { display: block; }

.sent .formInner { display: none; }
div.wpcf7-mail-sent-ok {
	padding: 0;
	border: none;
}
div.wpcf7 {
	margin: 0;
	padding: 0;
}

div.wpcf7-response-output {
	margin: 2em 0.5em 1em;
	padding: 0.2em 1em;
}

div.wpcf7 .screen-reader-response {
	position: absolute;
	overflow: hidden;
	clip: rect(1px, 1px, 1px, 1px);
	height: 1px;
	width: 1px;
	margin: 0;
	padding: 0;
	border: 0;
}

div.wpcf7-mail-sent-ok {
	border: 2px solid #398f14;
}

div.wpcf7-mail-sent-ng {
	border: 2px solid #ff0000;
}

div.wpcf7-spam-blocked {
	border: 2px solid #ffa500;
}

div.wpcf7-validation-errors {
	border: 2px solid #f7e700;
}

.wpcf7-form-control-wrap {
	position: relative;
}

span.wpcf7-not-valid-tip {
	color: #f00;
	font-size: 1em;
	display: block;
}

.use-floating-validation-tip span.wpcf7-not-valid-tip {
	position: absolute;
	top: 20%;
	left: 20%;
	z-index: 100;
	border: 1px solid #ff0000;
	background: #fff;
	padding: .2em .8em;
}

span.wpcf7-list-item {
	display: inline-block;
	margin: 0 0 0 1em;
}

span.wpcf7-list-item-label::before,
span.wpcf7-list-item-label::after {
	content: " ";
}

.wpcf7-display-none {
	display: none;
}

div.wpcf7 .ajax-loader {
	visibility: hidden;
	display: inline-block;
	background-image: url('../../images/ajax-loader.gif');
	width: 16px;
	height: 16px;
	border: none;
	padding: 0;
	margin: 0 0 0 4px;
	vertical-align: middle;
}

div.wpcf7 .ajax-loader.is-active {
	visibility: visible;
}

div.wpcf7 div.ajax-error {
	display: none;
}

div.wpcf7 .placeheld {
	color: #888;
}

div.wpcf7 .wpcf7-recaptcha iframe {
	margin-bottom: 0;
}

div.wpcf7 input[type="file"] {
	cursor: pointer;
}

div.wpcf7 input[type="file"]:disabled {
	cursor: default;
}
span.wpcf7-list-item {
	display: inline-block;
	margin: 0 0 0 1em;
}


@media (max-width: 768px) {
input[type="text"], input[type="email"] {
    width: 100%;
    height: 26px;
    padding: 7px;
    border: #ccc 1px solid;
    background-color: #fefefe;
    box-sizing: border-box;
    font-size: 13px;
}
}

.cssIcon-cross {
  display: inline-block;
  position: relative;
  padding-right: 20px;
	width: 30px
}
.cssIcon-cross::before {
  content: "";
  position: absolute;
  background: #000;
  right: 10px;
  top: 50%;
  width: 1px;
  height: 20px;
  transform: translate(-50%, -50%) rotateZ(45deg);
}
.cssIcon-cross::after {
  content: "";
  position: absolute;
  background: #000;
  right: 10px;
  top: 50%;
  width: 1px;
  height: 20px;
  transform: translate(-50%, -50%) rotateZ(-45deg);
}


/**/

