@charset "UTF-8";

@font-face {
    font-family: 'Noto Sans CJK JP Light';
    font-style: normal;
    font-weight: 200;
    src: url('/font/NotoSansCJKjp-Light.woff2') format('woff2'),
	     url('/font/NotoSansCJKjp-Light.woff') format('woff'),
	     url('/font/NotoSansCJKjp-Light.ttf')  format('truetype'),
         url('/font/NotoSansCJKjp-Light.eot') format('embedded-opentype');
}
@font-face {
    font-family: 'Noto Sans CJK JP Regular';
    font-style: normal;
    font-weight: 400;
    src: url('/font/NotoSansCJKjp-Regular.woff2') format('woff2'),
	     url('/font/NotoSansCJKjp-Regular.woff') format('woff'),
	     url('/font/NotoSansCJKjp-Regular.ttf')  format('truetype'),
         url('/font/NotoSansCJKjp-Regular.eot') format('embedded-opentype');
}
@font-face {
    font-family: 'Noto Sans CJK JP Bold';
    font-style: normal;
    font-weight: 700;
    src: url('/font/NotoSansCJKjp-Bold.woff2') format('woff2'),
	     url('/font/NotoSansCJKjp-Bold.woff') format('woff'),
	     url('/font/NotoSansCJKjp-Bold.ttf')  format('truetype'),
         url('/font/NotoSansCJKjp-Bold.eot') format('embedded-opentype');
}


body{
	*font-size:small;
	*font:x-small;
	font-size:13px;
	line-height:1.75;
	/* color:#000; */
	color:#4A5564;
	font-feature-settings:"palt";
	font-family: "Noto Sans CJK JP Regular","MS Pゴシック", "MS PGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", sans-serif;
	text-align:center;
	width:100%;
	margin:0px;
	padding:0px;
	background:#fff;
	-webkit-text-size-adjust:100%;
}
body.top,
body.registration{
	background:#e6e6e6;
}
body::before{
	content: "";
	display: block;
	width: 160px;
	height: 17px;
	position: fixed;
	top: 50%;
	left: 50%;
	z-index: 1000;
	transform: translate(-50%,-50%);
	background: url("/common/img/loading_logo.svg") no-repeat center;
	background-size: 100%;
	-webkit-transition:opacity 0.1s;
	-ms-transition:opacity 0.1s;
	transition:opacity 0.1s;
}
body::after{
  content: "";
  display: block;
  width: 100%;
  height: 100vh;
  background: #fff;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 999;
	-webkit-transition:opacity 0.1s;
	-ms-transition:opacity 0.1s;
	transition:opacity 0.1s;
}
body.loadEnd::before{
	-webkit-transition:opacity 0.5s;
	-ms-transition:opacity 0.5s;
	transition:opacity 0.5s;
  opacity: 0;
  pointer-events: none;
}
body.loadEnd::after{
	-webkit-transition:opacity 0.5s;
	-ms-transition:opacity 0.5s;
	transition:opacity 0.5s;
  opacity: 0;
  pointer-events: none;
}
body *,
body *::before,
bory *::after{
  box-sizing: border-box;
}
form,
select,
option,
input,
textarea{
	font-feature-settings:"palt";
	font-family: "Noto Sans CJK JP Regular","MS Pゴシック", "MS PGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", sans-serif;
}
h1,h2,h3,h4,h5,p,ul,ol,li,img,table,th,td,dl,dt,dd{
	margin:0px;
	padding:0px;
	font-size:13px;
	line-height:1.75;
	font-weight: normal;
}
li{
	list-style-type:none;
}
table{
	border-spacing:0px 15px;
	width: 100%;
}
a:link,a:visited{
	cursor:pointer;
	color:#000;
	text-decoration:none;
}
a{
  outline:none;
	transition:opacity 0.2s;
	-webkit-tap-highlight-color:transparent;
}
img{
	vertical-align:top;
	border:0;
	max-width:100%;
	height:auto;
	backface-visibility:hidden;
}
input, 
textarea, 
select,
button,
label{
	font-feature-settings:"palt";
	font-family: "Noto Sans CJK JP Regular","MS Pゴシック", "MS PGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", sans-serif;
	font-weight: normal;
  outline:none;
	-webkit-tap-highlight-color:transparent;
}
#scene canvas{
	background: linear-gradient(to right, #CDCCCA, #F9F9F8 42%,#F9F9F8 64%,#CDCCCA);
	background: -webkit-linear-gradient(left, #CDCCCA, #F9F9F8 42%,#F9F9F8 64%,#CDCCCA);
}
#wrap{
	position:relative;
	text-align:left;
	overflow:hidden;
}

/* header */
header{
	position: fixed;
	top: 0;
	left: 0;
	z-index: 102;
	width: 100%;
	height: 110px;
	background: #fff;
}
body.top header,
body.registration header{
	background:#e6e6e6;
}
header::after{
	content: "";
	display: block;
	clear: both;
}
#menuBtn{
	display: block;
	width: 38px;
	height: 38px;
	position: absolute;
	top: 50%;
	right: 30px;
	z-index: 103;
	transform: translate(0%,-50%);
	cursor: pointer;
}
#menuBtn::before,
#menuBtn::after{
	content: "";
	display: block;
	width: 100%;
	height: 4px;
	background: #3a4351;
	position: absolute;
	top: 50%;
	left: 50%;
	transition: transform .2s;
}
#menuBtn::before{
	transform: translate(-50%,-14px);
}
#menuBtn::after{
	transform: translate(-50%,10px);
}
#menuBtn.active::before{
	transform: translate(-50%,-50%) rotate(45deg);
}
#menuBtn.active::after{
	transform: translate(-50%,-50%) rotate(-45deg);
}
#menuBtn span{
	font-size: 0;
	display: block;
	width: 100%;
	height: 4px;
	background: #3a4351;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
}
#menuBtn.active span{
	display: none;
}
@media only screen and (max-width:768px) {
	header{
		height: 80px;
	}
}

/* galleryTtl */
#galleryTtl{
	position: absolute;
	top: 50%;
	left: 30px;
	font-size: 0;
	line-height: 1;
	width: 70px;
	transform: translate(0%,-50%);
}
#galleryTtl::before{
	content: "";
	display: block;
	width: 100%;
	height: 0;
	padding-top: 69.6428%;
	background: url("/common/img/logo.svg") no-repeat center;
	background-size: 100%;
}
@media only screen and (max-width:768px) {
	#galleryTtl{
		width: 50px;
		left: 20px;
	}
}

/* galleryName */
#galleryName{
	font-size: 14px;
	line-height: 1.2;
	font-family: "Noto Sans CJK JP Bold","MS Pゴシック", "MS PGothic", "ヒラギノ角ゴ Pro W6", "Hiragino Kaku Gothic Pro", sans-serif;
	position: absolute;
	top: 50%;
	left: 130px;
	transform: translate(0%,-50%);
	z-index: 102;
	max-width: 20em;
}
#galleryNameSp{
	display: none;
}
@media only screen and (max-width:768px) {
	#galleryName{
		display: none;
	}
	#galleryNameSp{
		display: block;
		font-size: 14px;
		line-height: 1.2;
		font-family: "Noto Sans CJK JP Bold","MS Pゴシック", "MS PGothic", "ヒラギノ角ゴ Pro W6", "Hiragino Kaku Gothic Pro", sans-serif;
	}
}

/* userBar */
#userBar{
	position: absolute;
	top: 50%;
	right: 100px;
	font-size: 0;
	transform: translate(0%,-50%);
}
#userId{
	display: inline-block;
	vertical-align: middle;
	width: 220px;
	height: 50px;
	margin-right: 20px;
	text-align: center;
}
#userId a{
	display: block;
	width: 100%;
	height: 100%;
	border-radius: 3px;
	background: #3a4351;
	color: #fff;
	font-size: 14px;
	line-height: 50px;
	letter-spacing: 0.08em;
}
#logout{
	display: inline-block;
	vertical-align: middle;
	width: 100px;
	height: 50px;
	border: none;
	border-radius: 3px;
	background: #3a4351;
	color: #fff;
	font-size: 14px;
	line-height: 50px;
	letter-spacing: 0.08em;
	text-align: center;
	cursor: pointer;
}
#userBarSp{
	display: none;
}
@media only screen and (max-width:980px) {
	#userBar{
		display: none;
	}
	#userBarSp{
		display: block;
		margin-top: 40px;
	}
	#userIdSp{
		display: block;
		width: 100%;
		height: 50px;
		text-align: center;
	}
	#userIdSp a{
		display: block;
		width: 100%;
		height: 100%;
		border-radius: 3px;
		background: #3a4351;
		color: #fff;
		font-size: 14px;
		line-height: 50px;
		letter-spacing: 0.08em;
	}
	#logoutSp{
		display: block;
		margin-top: 20px;
		width: 100%;
		height: 50px;
		border: none;
		border-radius: 3px;
		background: #3a4351;
		color: #fff;
		font-size: 14px;
		line-height: 50px;
		letter-spacing: 0.08em;
		text-align: center;
		cursor: pointer;
	}
}

#container{
	padding: 160px 50px 130px;
	position: relative;
	background: #f2f2f2;
}
#container::after{
	content: "";
	display: block;
	clear: both;
}
.oneColumn #container{
	display: table;
	width: 100%;
	height: 100vh;
	padding: 0;
}
#contents{
	width: 100%;
	text-align: left;
}
#contents::after{
	content: "";
	display: block;
	clear: both;
}
.oneColumn #contents{
	float: none;
	display: table-cell;
	vertical-align: middle;
	width: 100%;
	text-align: center;
	padding: 100px 80px;
}
@media only screen and (max-width:980px) {
	#container{
		padding: 160px 50px 60px;
	}
}
@media only screen and (max-width:768px) {
	#container{
		/* padding: 110px 20px 40px; */
		padding: 110px 20px 100px;
	}
	.oneColumn #contents{
		padding: 80px 20px 100px;
	}
}
@media only screen and (max-width:520px) {
	.oneColumn #contents{
		padding: 80px 20px 120px;
	}
}

/* H1 */
#contents h1{
	font-size: 24px;
	line-height: 1.2;
	font-family: "Noto Sans CJK JP Bold","MS Pゴシック", "MS PGothic", "ヒラギノ角ゴ Pro W6", "Hiragino Kaku Gothic Pro", sans-serif;
	letter-spacing: 0.08em;
}
@media only screen and (max-width:768px) {
	#contents h1{
		font-size: 20px;
	}
}

/* btnArea */
#contents .btnArea{
	font-size: 0;
	text-align: center;
}
#contents .btnArea .btn{
	display: inline-block;
	width: 220px;
	height: 50px;
	font-size: 16px;
	line-height: 50px;
	margin: 0 10px;
}
#contents .btnArea .btn:first-child{
	margin-left: 0;
}
#contents .btnArea .btn:last-child{
	margin-right: 0;
}
#contents .btnArea .btn a{
	display: block;
	background: #000;
	border-radius: 4px;
	color: #fff;
}
#contents .btnArea .btn a:hover{
	opacity: 0.7;
}
@media only screen and (max-width:860px) {
	#contents .btnArea .btn{
		width: 180px;
	}
}
@media only screen and (max-width:768px) {
	#contents .btnArea .btn{
		display: block;
		margin: 20px auto 0 !important;
	}
	#contents .btnArea .btn:first-child{
		margin-top: 0 !important;
	}
}

/* loginBox */
.loginBox{
	max-width: 560px;
	margin: 0 auto;
	text-align: left;
}
.registration .loginBox{
	max-width: 700px;
	padding: 50px 70px 70px;
	background: #f2f2f2;
	border-radius: 4px;
	box-shadow: 2px 2px 8px 0 rgba(0,0,0,0.05);
}
.loginBox::after{
	content: "";
	display: block;
	clear: both;
}
.loginBox h1{
	text-align: center;
}
.loginBox .errorTtl{
	text-align: center;
	color: #ff0000;
	font-size: 14px;
	margin-top: 20px;
	display: none;
}
.error .loginBox .errorTtl,
.errorPasword .loginBox .errorTtl{
	display: block;
}
.loginBox .errorTtl br{
	display: none;
}
.loginBox form{
	margin-top: 40px;
}
.loginBox .formBox + h2{
	margin-top: 20px;
}
.loginBox .formBox{
	position: relative;
}
.loginBox .formBox::before{
	content: "";
	display: block;
	width: 37px;
	height: 37px;
	position: absolute;
	top: 50%;
	left: 16px;
	transform: translate(0%,-50%);
	background-repeat: no-repeat;
	background-position: center center;
	background-size: 100%;
	z-index: 1;
}
.loginBox .formBox.emailForm::before{
	background-image: url("/common/img/ico_mail.svg");
}
.loginBox .formBox.passwordForm::before{
	background-image: url("/common/img/ico_pw.svg");
}
.loginBox input{
	width: 100%;
	height: 70px;
	border: solid 1px #999;
	border-radius: 4px;
	font-size: 20px;
	padding: 10px 60px 10px 80px;
}
.registration .loginBox input{
	border: none;
}
.loginBox input::placeholder{
	color: #999;
}
.loginBox .formBox.passwordForm #toggle-password{
	position: absolute;
	top: 50%;
	right: 16px;
	transform: translate(0%,-50%);
	width: 29px;
	height: 29px;
	background-image: url("/common/img/ico_eye.svg");
	background-repeat: no-repeat;
	background-position: center center;
	background-size: 100%;
	cursor: pointer;
}
.loginBox .formBox.passwordForm #toggle-password.off{
	background-image: url("/common/img/ico_eye_off.svg");
}
#contents .loginBox .btnArea{
	margin-top: 50px;
	text-align: left;
}
#contents .loginBox .btnArea::after{
	content: "";
	display: block;
	clear: both;
}
.loginBox .sign-in{
	float: right;
	width: 220px;
	margin-top: 50px;
	position: relative;
}
#contents .loginBox .btnArea .sign-in{
	margin-top: 0;
}
.loginBox .sign-in::after{
	content: "";
	display: block;
	width: 100%;
	height: 100%;
	background: rgba(255,255,255,0.7);
	position: absolute;
	top: 0;
	left: 0;
}
.loginBox .sign-in.active::after{
	display: none;
}
.loginBox .sign-in button{
	display: block;
	width: 100%;
	height: 50px;
	font-size: 16px;
	line-height: 50px;
	background: #000;
	border-radius: 4px;
	color: #fff;
	border: none;
	cursor: pointer;
	transition: opacity .2s;
}
.loginBox .sign-in button:hover{
	opacity: 0.7;
}
.loginBox .btnArea .reset{
	display: none;
}
.error .loginBox .btnArea .reset{
	display: block;
}
.loginBox .btnArea .reset button{
	display: inline-block;
	border: none;
	margin: 0;
	padding: 0;
	font-size: 14px;
	line-height: 1.2;
	text-decoration: underline;
	background: none;
	cursor: pointer;
}
.loginBox .btnArea .registration{
	margin-top: 15px;
	font-size: 14px;
	line-height: 1.2;
	display: none;
}
.error .loginBox .btnArea .registration{
	display: block;
}
.loginBox .btnArea .registration a{
	display: inline-block;
	text-decoration: underline;
}
@media only screen and (max-width:768px) {
	.loginBox{
		max-width: none;
		padding: 30px 20px;
	}
	.registration .loginBox{
		padding: 30px 20px;
	}
	.loginBox .errorTtl{
		font-size: 13px;
	}
	.loginBox form{
		margin-top: 30px;
	}
	.loginBox .formBox::before{
		width: 28px;
		height: 28px;
		left: 10px;
	}
	.loginBox input{
		height: 60px;
		font-size: 16px;
		padding: 10px 50px 10px 60px
	}
	.loginBox .formBox.passwordForm #toggle-password{
		right: 10px;
		width: 24px;
		height: 24px;
	}
	#contents .loginBox .btnArea{
		margin-top: 30px;
	}
	.loginBox .sign-in{
		float: none;
		width: 180px;
		margin: 30px auto 0;
	}
	.loginBox .sign-in button{
		height: 44px;
		font-size: 14px;
		line-height: 44px;
	}
	.loginBox .btnArea .reset{
		margin-top: 30px;
		font-size: 13px;
		text-align: center;
	}
	.loginBox .btnArea .registration{
		font-size: 13px;
		text-align: center;
	}
}
@media only screen and (max-width:420px) {
	.loginBox .errorTtl br{
		display: block;
	}
}

/* menu */
#menu{
	position: absolute;
	top: 110px;
	right: 0;
	width: 380px;
	height: calc(100vh - 180px);
	background: rgba(255,255,255,1.0);
	transform: translate(100%,0%);
	transition: transform .5s;
	color: #3a4351;
}
#menuBtn.active + #menu{
	transform: translate(0%,0%);
}
#menu .inner{
	height: 100%;
	padding: 50px;
	overflow-y: auto;
}
#menu #menuName{
	font-size: 14px;
	line-height: 1.5;
	font-family: "Noto Sans CJK JP Bold","MS Pゴシック", "MS PGothic", "ヒラギノ角ゴ Pro W6", "Hiragino Kaku Gothic Pro", sans-serif;
}
#menu #menuMail{
	display: block;
	font-family: "Noto Sans CJK JP Light","MS Pゴシック", "MS PGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", sans-serif;
	margin-top: 5px;
}
#menu ul{
	display: block;
	margin-top: 40px;
}
#menu li{
	display: block;
	font-size: 14px;
	line-height: 1.2;
	font-weight: bold;
	margin-top: 30px;
	padding-left: 30px;
}
#menu li:first-child{
	margin-top: 0;
}
#menu li.current{
	position: relative;
}
#menu li.current::before{
	content: "";
	display: block;
	width: 20px;
	height: 20px;
	border-radius: 50%;
	background: #3a4351;
	position: absolute;
	top: 50%;
	left: 0;
	transform: translate(0%,-50%);
}
#menu li a,
#menu li button{
	display: block;
	color: #3a4351;
}
#menu li button{
	border: none;
	padding: 0;
	background: transparent;
	cursor: pointer;
	font-size: 14px;
	line-height: 1.2;
	font-weight: bold;
}
@media only screen and (max-width:980px) {
	#menu{
		height: calc(100vh - 110px);
	}
	#menu .inner{
		padding-bottom: 100px;
	}
}
@media only screen and (max-width:768px) {
	#menu{
		position: fixed;
		width: 280px;
		top: 80px;
		height: calc(100% - 150px);
	}
	#menu .inner{
		padding: 20px 20px 40px;
	}
	#menu #menuName{
		margin-top: 20px;
	}
}
#viewerLink{
	position: absolute;
	top: 150px;
	right:  100px;
}
#viewerLink button{
display: inline-block;
vertical-align: middle;
width: 100px;
height: 50px;
border: none;
border-radius: 3px;
background: #3a4351;
color: #fff;
font-size: 14px;
line-height: 50px;
letter-spacing: 0.08em;
text-align: center;
cursor: pointer;
}
@media only screen and (max-width:768px) {
	#viewerLink{
    top: 110px;
    right: 20px;
	}
}

/* dashboardTtl */
#dashboardTtl{
	margin-bottom: 40px;
}
#dashboardTtl h1 span{
	display: inline-block;
	padding-right: 0.5em;
	margin-right: 0.5em;
	position: relative;
}
/* #dashboardTtl h1 span::after{
	content: "";
	display: block;
	width: 1px;
	height: 30px;
	background: #000;
	position: absolute;
	top: 50%;
	right: 0;
	transform: translate(0%,-50%);
} */
#dashboardTtl p{
	font-size: 14px;
	line-height: 1.5;
	margin-top: 15px;
	font-family: "Noto Sans CJK JP Light","MS Pゴシック", "MS PGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", sans-serif;
}
#dashboardTtl p br{
	display: none;
}
@media only screen and (max-width:768px) {
	#dashboardTtl{
		margin-bottom: 30px;
	}
	/* #dashboardTtl h1 span::after{
		height: 24px;
	} */
	#dashboardTtl p{
		margin-top: 15px;
	}
}
@media only screen and (max-width:440px) {
	#dashboardTtl h1 span{
		display: block;
		padding-right: 0;
		margin-right: 0;
	}
	/* #dashboardTtl h1 span::after{
		width: 30px;
		height: 1px;
		position: relative;
		top: 0;
		right: auto;
		transform: translate(0%,0%);
		margin: 10px auto;
	} */
	#dashboardTtl p br{
		display: block;
	}
}

/* formWrap */
#formWrap{
	/* max-width: 970px; */
	max-width:  1242px;
	margin: 0 auto;
}
#formWrap::after{
	content: "";
	display: block;
	clear: both;
}

/* userImg */
.userImg{
	width: 240px;
	float: left;
}
.userImg .formBox{
	position: relative;
	width: 100%;
}
.userImg .formBox::before{
	content: "";
	display: block;
	width: 100%;
	height: 0;
	padding-top: 100%;
}
.userImg .img{
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	overflow: hidden;
}
.userImg .img img{
	width: 100%;
}
.userImg .img img.h100{
	width: auto;
	max-width: none;
	height: 100%;
}
.userImg #profileImg{
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
}
.userImg label{
	display: block;
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	cursor: pointer;
}
.userImg label input{
	display: none;
}
@media only screen and (max-width:1200px) {
	#userImg{
		float: none;
		margin: 0 auto;
	}
}
@media only screen and (max-width:768px) {
	#userImg{
		width: 100%;
		max-width: 240px;
	}
}

/* userinfo */
.userInfo{
	margin-left: 280px;
}
.userInfo.formArea table th .iconBox{
	width: 35px;
	text-align: center;
}
@media only screen and (max-width:1200px) {
	.userImg{
		float: none;
		margin: 0 auto;
	}
	.userInfo{
		margin-left: 0;
		margin-top: 60px;
	}
}
@media only screen and (max-width:768px) {
	#userInfo{
		margin: 30px auto 0
	}
	#contents .userInfo table th img{
		height: 15px;
	}
}

/* artistListWrap */
#artistListWrap{
	text-align: left;
}
.artistList{
	display: inline-block;
	font-size: 0;
	margin: -25px;
}
.artistList li{
	display: inline-block;
	width: 160px;
	margin: 25px;
	vertical-align: top;
	font-size: 13px;
	line-height: 1.2;
}
.artistList li .thumbnail{
	margin-bottom: 10px;
}
@media only screen and (max-width:768px) {
	#artistListWrap{
		text-align: center;
	}
	.artistList{
		margin: -10px;
	}
	.artistList li{
		text-align: left;
		width: 50%;
		max-width: 180px;
		margin: 0;
		padding: 10px;
	}
}

/* formArea */
#contents .formArea::after{
	content: "";
	display: block;
	clear: both;
}
#contents .formArea .formBox + h2,
#contents .formArea .formBox + h3{
	margin-top: 20px;
}
#contents .formArea .formBox input,
#contents .formArea .formBox select{
	display: block;
	/* width:  600px; */
	width:   100%;
	height: 50px;
	margin: 0;
	padding: 13px;
	font-size: 16px;
	line-height: 1.5;
	border: none;
	border-radius: 4px;
	cursor: pointer;
}
#contents .formArea .formBox input::placeholder{
	color: #999;
}
#contents .formArea .formBox input:focus::-webkit-input-placeholder {
	color: transparent;
}
#contents .formArea .formBox input:focus::-moz-placeholder {
	color: transparent;
}
#contents .formArea .formBox input:focus::-ms-input-placeholder {
	color: transparent;
}
#contents .formArea .formBox input:focus::placeholder {
	color: transparent;
}
#contents .formArea .formBox input::placeholder{
	color: #999;
}
#contents .formArea .formBox textarea{
	display: block;
	width: 100%;
	height: 180px;
	margin: 0;
	padding: 13px;
	font-size: 16px;
	line-height: 1.5;
	resize: vertical;
	border: none;
	border-radius: 4px;
	cursor: pointer;
}
#contents .formArea .formBox textarea::placeholder{
	color: #999;
}
#contents .formArea .formBox textarea:focus::-webkit-input-placeholder {
	color: transparent;
}
#contents .formArea .formBox textarea:focus::-moz-placeholder {
	color: transparent;
}
#contents .formArea .formBox textarea:focus::-ms-input-placeholder {
	color: transparent;
}
#contents .formArea .formBox textarea:focus::placeholder {
	color: transparent;
}
#contents .formArea .saveBtn,
#contents form + .saveBtn{
	width: 220px;
	position: relative;
	float: right;
	/* margin-top: 50px; */
	margin-top: 0px;
	margin-left: 15px;
}
#contents .backBtn{
	width: 100px;
    position: absolute;
    /* left: 1760px; */
		left: 75%;
}
#contents .formArea .saveBtn::after,
#contents form + .saveBtn::after{
	content: "";
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: rgba(255,255,255,0.7);
}
#contents .formArea .saveBtn.active::after,
#contents form + .saveBtn.active::after{
	display: none;
}
#contents .formArea .saveBtn input,
#contents .formArea .saveBtn button,
#contents form + .saveBtn input,
#contents form + .saveBtn button{
	display: block;
	width: 100%;
	height: 50px;
	border: none;
	border-radius: 4px;
	background: #3A4351;
	color: #fff;
	font-size: 16px;
	line-height: 1.2;
	text-align: center;
	cursor: pointer;
}
#contents .backBtn input,
#contents .backBtn button,
#contents .backBtn input,
#contents .backBtn button{
	display: block;
	width: 100%;
	height: 50px;
	border: none;
	border-radius: 4px;
	background: #3A4351;
	color: #fff;
	font-size: 16px;
	line-height: 1.2;
	text-align: center;
	cursor: pointer;
}
@media only screen and (max-width:1024px) {
	#contents .backBtn,
	#contents .backBtn{
		width: 100px;
		position: relative;
		float: right;
		/* margin-top: 50px; */
		margin-top: 0px;
		margin-left: 15px;
		left: 0px;
	}
}
@media only screen and (max-width:768px) {
	#contents .formArea .formBox input{
		height: 44px;
		padding: 10px;
		font-size: 14px;
	}
	#contents .formArea .formBox textarea{
		padding: 10px;
		font-size: 14px;
	}
}
@media only screen and (max-width:600px) {
	#contents .formArea .saveBtn,
	#contents form + .saveBtn{
		width:  100px;
	}
	#contents .formArea .saveBtn input,
	#contents .formArea .saveBtn button,
	#contents form + .saveBtn input,
	#contents form + .saveBtn button{
		height: 44px;
		font-size: 14px;
	}
	#contents .backBtn{
		width: 70px;
	}
	#contents .backBtn button{
		width: 100%;
	}
}

/* exhibition */
#exhibition #contents .formArea .formBox::after{
	content: "";
	display: block;
	clear: both;
}
#exhibition #contents .formArea .formBox input[type="radio"]{
	display: none;
}
#exhibition #contents .formArea .formBox input[type="radio"] + label{
	float: left;
	width: 350px;
	position: relative;
	padding-bottom: 40px;
	cursor: pointer;
}
#exhibition #contents .formArea .formBox input[type="radio"] + label img{
	border-radius: 4px;
	transition: opacity .2s;
}
#exhibition #contents .formArea .formBox input[type="radio"] + label:hover img{
	opacity: 0.7;
}
@media only screen and (max-width:768px) {
	#exhibition #contents .formArea .formBox input[type="radio"] + label img{
		width: 100%;
	}
	#exhibition #contents .formArea .formBox input[type="radio"] + label::before{
		width: 25px;
		height: 25px;
	}
	#exhibition #contents .formArea .formBox input[type="radio"]:checked + label::after{
		width: 16px;
		height: 16px;
		bottom: 5px;
	}
}

/* workListWrap */
#workListWrap{
	text-align: left;
}
.workList{
	display: inline-block;
	font-size: 0;
	margin: -25px;
}
.workList li{
	display: inline-block;
	width: 160px;
	margin: 25px;
	vertical-align: top;
	font-size: 13px;
	line-height: 1.2;
}
.workList li .thumbnail{
	margin-bottom: 10px;
}
.workList li .thumbnail img{
	width: 100%;
}
@media only screen and (max-width:768px) {
	#workListWrap{
		text-align: center;
	}
	.workList{
		margin: -10px;
	}
	.workList li{
		text-align: left;
		width: 50%;
		max-width: 180px;
		margin: 0;
		padding: 10px;
	}
}

.workCont{
	position: relative;
}
/*.workCont.active{
	box-shadow: 4px 4px 14px 0 rgba(0,0,0,0.05);
}*/
.workCont h2{
	font-size: 16px;
	line-height: 1.2;
	display: block;
	padding: 16px 60px 15px 80px;
	position: relative;
}
.workCont h2 strong{
	position: absolute;
	top: 50%;
	left: 20px;
	transform: translate(0%,-50%);
	transition: left .2s;
}
.workDetail,.artistDetail,.exhibitionDetail{
	margin: 0 auto;
	max-width: 970px;
}
.workDetail::after{
	content: "";
	display: block;
	clear: both;
}
.workImg{
	width: 240px;
	float: left;
}
.workImg .formBox{
	position: relative;
	width: 100%;
}
.workImg .img{
	width: 100%;
}
.workImg .img img{
	width: 100%;
}
.workImg .img.active{
	position: absolute;
	top: 0;
	left: 0;
	width: 0;
	height: 0;
	opacity: 0;
	overflow: hidden;
}
.workImg canvas{
	position: absolute;
	width: 100%;
	height: auto;
	top: 0;
	left: 0;
}
.workImg #workLarge{
	opacity: 0;
}
.workImg #workMap{
	opacity: 0;
}
.workImg #workThumb{
	opacity: 0;
}
.workImg #workMap.active{
	position: relative;
}
.workImg label{
	display: block;
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	cursor: pointer;
}
.workImg label input{
	display: none;
}
.workImg .map{
	margin-top: 50px;
	position: relative;
}
.workImg .map p{
	position: absolute;
	top: 0;
	left: 0;
}
.workInfo{
	margin-left: 280px;
}
.workInfo h3,
.workInfo input,
.workInfo textarea,
.workInfo select,
.userInfo h3,
.userInfo input,
.userInfo textarea,
.userInfo select,
.exhibitionInfo h3,
.exhibitionInfo input,
.exhibitionInfo textarea{
	font-family: "Noto Sans CJK JP Bold","MS Pゴシック", "MS PGothic", "ヒラギノ角ゴ Pro W6", "Hiragino Kaku Gothic Pro", sans-serif;;
}
.workInfo th,
.userInfo th,
.exhibitionInfo th{
	width: 100px;
}
#contents .workInfo input[type="radio"],
#contents .exhibitionInfo input[type="radio"]{
	display: none;
}
#contents .workInfo .col2{
	display: table;
	width: 100%;
	margin-top: 30px;
}
#contents .workInfo .buyBox,
#contents .workInfo .priceBox{
	display: table-cell;
	vertical-align: top;
}
#contents .workInfo #airtistList{
	border: #4A5564 1px solid;
}
#contents .workInfo #airtistList .select-hide{
	display: none;
}
/* #contents .workInfo #airtistTop{
	display: none;
} */
#contents .workInfo .buyBox{
	width: 210px;
}
#contents .workInfo .buyBox .formBox{
	margin-top: 7px;
}
#contents .workInfo #publicSet{
	margin-top: 0px;
	position: relative;
}
#contents .workInfo #publicSet::after{
	content: "";
	display: block;
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	background: #f2f2f2;
	opacity: 0.7;
}
#contents .workInfo #publicSet.active::after{
	display: none;
}
#contents .workInfo .formBox select{
	-webkit-appearance:none;
	background: #ffffff;
}
#contents .workInfo .buyBox .formBox input[type="radio"]{
	display: none;
}
#contents .workInfo .buyBox .formBox label,
#contents .workInfo #publicSet label,
#contents .exhibitionInfo #ExhibitNumber label,
#contents .exhibitionInfo #designType label{
	display: inline-block;
	font-size: 13px;
	position: relative;
	margin-right: 20px;
	padding-left: 25px;
	cursor: pointer;
}
#contents .workInfo .buyBox .formBox label:last-child,
#contents .workInfo #publicSet label:last-child,
#contents .exhibitionInfo #ExhibitNumber label:last-child,
#contents .exhibitionInfo #designType label:last-child{
	margin-right: 0;
}
#contents .workInfo .buyBox .formBox label::before,
#contents .workInfo #publicSet label::before,
#contents .exhibitionInfo #ExhibitNumber label:before,
#contents .exhibitionInfo #designType label:before{
	content: "";
	display: block;
	width: 20px;
	height: 20px;
	background: #4A5564;
	border-radius: 50%;
	position: absolute;
	top: 50%;
	left: 0px;
	transform: translate(0%,-50%);
}
#contents .workInfo .buyBox .formBox input[type="radio"]:checked + label::after,
#contents .workInfo #publicSet input[type="radio"]:checked + label::after,
#contents .exhibitionInfo #ExhibitNumber input[type="radio"]:checked + label::after,
#contents .exhibitionInfo #designType input[type="radio"]:checked + label::after{
	content: "";
	display: block;
	width: 12px;
	height: 12px;
	border-radius: 50%;
	position: absolute;
	top: 50%;
	left: 4px;
	transform: translate(0%,-50%);
	background: #FFFFFF;
}
@media only screen and (max-width:768px) {
	#contents .workInfo table th,
	#contents .workInfo table td,
	#contents .userInfo table th,
	#contents .userInfo table td,
	#contents .exhibitionInfo table th,
	#contents .exhibitionInfo table td{
		width:100%;
		display:block;
	}
	#contents .exhibitionInfo #ExhibitNumber label,
	#contents .exhibitionInfo #designType label{
		font-size: 10px;
		margin-right: 10px;
		padding-left: 25px;
	}
}
#works #returnBtn{
	width: 100%;
	max-width: 240px;
	margin: 40px auto 0;
}
#works #returnBtn a{
	display: block;
	width: 100%;
	height: 50px;
	font-size: 16px;
	line-height: 50px;
	text-align: center;
	letter-spacing: 0.08em;
	background: #3A4351;
	color: #fff;
	border-radius: 4px;
}
@media only screen and (max-width:1200px) {
	.workImg{
		float: none;
		margin: 0 auto;
	}
	.workInfo{
		margin-left: 0;
		margin-top: 60px;
	}
}
/* @media only screen and (max-width:768px) { */
@media only screen and (max-width:970px) {
	.workCont h2{
		font-size: 14px;
		padding: 16px 60px 15px;
	}
	.workDetail,.artistDetail,.exhibitionDetail{
		padding: 20px 20px 30px;
	}
	.workImg,.userImg{
		width: 100%;
		max-width: 240px;
		margin: 0 auto;
		float: none;
	}
	.workInfo,.userInfo,.exhibitionInfo{
		margin-left: 0;
		margin-top: 30px;
		padding-bottom: 30px;
	}
	#contents .workInfo #publicSet{
		margin-top: 20px;
	}
	#contents .workInfo .col2{
		display: block;
		margin-top: 0;
	}
	#contents .workInfo .buyBox h3{
		width: 100px;
	}
	#contents .workInfo .buyBox,
	#contents .workInfo .priceBox{
		display: block;
		margin-top: 20px;
	}
	#contents .workInfo .buyBox{
		width: 100%;
	}
	#contents .workInfo .buyBox .formBox label,
	#contents .workInfo #publicSet label{
		font-size: 14px;
		margin-right: 20px;
		padding-left: 25px;
	}
	#contents .workInfo .buyBox .formBox label::before,
	#contents .workInfo #publicSet label::before{
		width: 22px;
		height: 22px;
	}
	#contents .workInfo .buyBox .formBox input[type="radio"]:checked + label::after,
	#contents .workInfo #publicSet input[type="radio"]:checked + label::after{
		width: 12px;
		height: 12px;
		left: 5px;
	}
}

/* release */
#release #releaseInfo table{
	width: 100%;
}
#release #releaseInfo th,
#release #releaseInfo td{
	font-size: 14px;
	line-height: 1.75;
	vertical-align: top;
}
#release #releaseInfo th{
	font-weight: normal;
	padding: 6em 0 0 0;
	width: 8em;
}
#release #releaseInfo tr:first-child th{
	padding: 0;
}
#release #releaseInfo td{
	padding: 6em 0 0 0;
}
#release #releaseInfo tr:first-child td{
	padding: 0;
}
#release #releaseInfo td a{
	font-family: "Noto Sans CJK JP Bold","MS Pゴシック", "MS PGothic", "ヒラギノ角ゴ Pro W6", "Hiragino Kaku Gothic Pro", sans-serif;
	word-break: break-all;
	transition: opacity .2s;
}
#release #releaseInfo td a:hover{
	opacity: 0.7;
}
#release #canvas.none{
	height: 0;
	width: 0;
}
#release #data{
	margin: 0;
	padding: 5px 15px;
	border: none;
	border-radius: 4px;
	background: #3A4351;
	color: #fff;
	font-size: 16px;
	outline: none;
	cursor: pointer;
}
#release #contents .formArea .formBox::after{
	content: "";
	display: block;
	clear: both;
}
#release #contents .formArea .formBox input[type="radio"]{
	display: none;
}
#release #contents .formArea .formBox input[type="radio"] + label{
	float: left;
	margin-left: 36px;
	position: relative;
	cursor: pointer;
	padding-left: 44px;
	font-size: 16px;
}
#release #contents .formArea .formBox input[type="radio"]:first-child + label{
	margin-left: 0;
}
#release #contents .formArea .formBox input[type="radio"] + label::before{
	content: "";
	display: block;
	width: 35px;
	height: 35px;
	border: solid 2px #ccc;
	border-radius: 50%;
	position: absolute;
	top: 50%;
	left: 0;
	transform: translate(0%,-50%);
}
#release #contents .formArea .formBox input[type="radio"]:checked + label::after{
	content: "";
	display: block;
	width: 20px;
	height: 20px;
	background: #3A4351;
	border-radius: 50%;
	position: absolute;
	top: 50%;
	left: 7.5px;
	transform: translate(0%,-50%);
}
@media only screen and (max-width:768px) {
	#release #releaseInfo tr{
		display: block;
		width: 100%;
	}
	#release #releaseInfo th,
	#release #releaseInfo td{
		display: block;
		width: 100%;
		font-size: 13px;
	}
	#release #releaseInfo th{
		padding: 4em 0 0 0;
	}
	#release #releaseInfo td{
		padding: 0;
	}
	#release #canvas{
		display: block;
		margin: 0 auto;
	}
	#release #contents .formArea .formBox input[type="radio"] + label{
		font-size: 14px;
	}
	#release #contents .formArea .formBox input[type="radio"] + label::before{
		width: 25px;
		height: 25px;
	}
	#release #contents .formArea .formBox input[type="radio"]:checked + label::after{
		width: 16px;
		height: 16px;
		left: 4.5px;
	}
}

/* ogp */
#ogp #mainImgBox{
	position: relative;
	width: 100%;
}
#ogp #mainImgBox::before{
	content: "";
	display: block;
	width: 100%;
	height: 0;
	padding-top: 52.5%;
}
#ogp #mainImgBox .img,
#ogp #mainImgBox #mainImg{
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	overflow: hidden;
}
#ogp #mainImgBox .img img{
	width: 100%;
}
#ogp #mainImgBox .img img.h100{
	width: auto;
	max-width: none;
	height: 100%;
}
#ogp #mainImgBox label{
	display: block;
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	cursor: pointer;
}
#ogp #mainImgBox label input{
	display: none;
}

#resizeImg,
.resizeImg{
	position: fixed !important;
	top: 0;
	left: 0;
	transform: translate(-100%,-100%);
}
.resizeImg#userImg{
	width: 300px;
	height: 300px;
}

/* support */
#support #galleryTtl{
	float: left;
}
#support #login,
#support #logout{
	float: right;
}
#support #login{
	display: none;
	width: 90px;
	height: 30px;
	border: none;
	border-radius: 4px;
	background: #3A4351;
	color: #fff;
	font-size: 12px;
	line-height: 1;
	letter-spacing: 0.08em;
	text-align: center;
	cursor: pointer;
}
#support.notLogin #login{
	display: block;
}
#support.notLogin #logout{
	display: none;
}
#support.oneColumn #container{
	display: block;
	padding: 170px 60px;
	height: auto;
}
#support.oneColumn #contents{
	display: block;
	padding: 0;
}
#support h1{
	font-family: 'Oswald', sans-serif;
	font-size: 32px;
	line-height: 1;
	font-weight: 500;
	color: #3A4351;
}
#support h1 span{
	font-weight: 300;
}
#support .box{
	margin-top: 90px;
}
#support .box h2{
	font-size: 32px;
	line-height: 1.5;
	font-family: "Noto Sans CJK JP Bold","MS Pゴシック", "MS PGothic", "ヒラギノ角ゴ Pro W6", "Hiragino Kaku Gothic Pro", sans-serif;
	color: #3A4351;
}
#support .box p{
	font-size: 14px;
	line-height: 2;
	color: #3A4351;
}
#support .box ul{
	font-size: 0;
	margin-top: 30px;
}
#support .box ul li{
	display: inline-block;
	vertical-align: middle;
	margin: 0 5px;
}
#support .box ul li a{
	display: block;
	width: 300px;
	height: 70px;
	font-size: 20px;
	line-height: 70px;
	font-weight: bold;
	text-align: center;
	color: #fff;
	background: #3A4351;
	border-radius: 4px;
}
@media only screen and (max-width:768px) {
	#support.oneColumn header{
		background: #fff;
	}
	#support #login,
	#support #logout{
		width: 90px;
		margin: 0;
	}
	#support.oneColumn #container{
		padding: 91px 20px 30px;
	}
	#support h1{
		font-size: 22px;
	}
	#support .box{
		margin-top: 40px;
	}
	#support .box h2{
		font-size: 22px;
	}
	#support .box p{
		font-size: 12px;
	}
	#support .box ul{
		margin-top: 20px;
	}
	#support .box ul li{
		display: block;
		max-width: 260px;
		margin: 10px auto 0;
	}
	#support .box ul li:first-child{
		margin-top: 0;
	}
	#support .box ul li a{
		width: 100%;
		height: 60px;
		font-size: 16px;
		line-height: 60px;
	}
	#support.oneColumn footer{
		position: relative;
	}
}
@media only screen and (max-width:374px) {
	#support h1{
		line-height: 1.2;
	}
	#support .box p{
		font-size: 11px;
	}
}

/* design */
#design{
	overflow: hidden;
}
#design #titleArea{
	position: fixed;
	top: 160px;
	left: 50px;
	display: none;
}
#design #titleArea h1{
	font-size: 14px;
	line-height: 1.5;
	font-family: "Noto Sans CJK JP Light","MS Pゴシック", "MS PGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", sans-serif;
	color: #3A4351;
}
#design #titleArea h1 span{
	display: block;
	font-size: 24px;
	font-family: "Noto Sans CJK JP Bold","MS Pゴシック", "MS PGothic", "ヒラギノ角ゴ Pro W6", "Hiragino Kaku Gothic Pro", sans-serif;
	margin-bottom: 10px;
	letter-spacing: 0.08em;
}
@media only screen and (max-width:767px) {
	#design #titleArea{
		left: 20px;
		top: 130px;
	}
	#design #titleArea h1{
    font-size: 10px;
	}
	#design #titleArea h1 span{
    font-size: 15px;
	}


}

#design #formContainer{
	position: fixed;
	top: 110px;
	right: 0;
	width: 380px;
	background: rgba(255,255,255,1.0);
	transform: translateX(0%);
	transition: transform .5s;
	z-index: 100;
}
#design #formContainer.active{
	transform: translateX(100%);
}
#design #formContainer form{
	width: 100%;
	height: calc(100vh - 180px);
	padding: 30px 40px 40px;
	overflow-y: auto;
}
#design #formContainer form > div{
	position: relative !important;
	top: auto !important;
	left: auto !important;
	right: auto !important;
	bottom: auto !important;
	margin-top: 30px;
}
#design #formContainer form > div:first-child{
	margin-top: 0;
}
#lattice,#wall,#floor{
	padding-top: 30px;
	border-top: solid 1px #C9C8C6;
}
#floor + .formBox{
	padding-bottom: 30px;
	border-bottom: solid 1px #C9C8C6;
}
#design #formContainer .formBox::after{
	content: "";
	display: block;
	clear: both;
}
#design #formContainer .dg{
	height: auto;
	background: transparent;
	color: #4A5564;
	text-shadow: none;
}
#design #formContainer .dg.a{
	float: none !important;
	margin: 0;
	width: 100% !important;
}
#design #formContainer .dg.a > div:first-child,
#design #formContainer .dg.main .close-button.close-bottom{
	display: none;
}
#design #formContainer .dg li.folder{
	border: none;
}
#design #formContainer .dg li.title,
#design #formContainer form h2{
	background: none;
	border: none;
	box-shadow: none;
	height: auto;
	padding: 0;
	cursor: default;
	font-size: 14px;
	line-height: 1.2;
	font-family: "Noto Sans CJK JP Bold","MS Pゴシック", "MS PGothic", "ヒラギノ角ゴ Pro W6", "Hiragino Kaku Gothic Pro", sans-serif;
	margin:0 0 15px;
}
#design #formContainer .dg .cr.number{
	border: none;
	padding: 0;
	margin: 0;
	background: none;
	height: auto;
	line-height: inherit;
	overflow: visible;
}
#design #formContainer .dg .property-name{
	display: none;
}
#design #formContainer .dg .cr.number input[type=text]{
	display: none;
}
#design #formContainer .dg .c{
	width: 100%;
	float: none;
}
#design #formContainer .dg .c .slider{
	background: #b3b3b3;
	width: 100%;
	float: none;
	margin: 0;
	height: 8px;
	cursor: default;
}
#design #formContainer .dg .c .slider-fg{
	background: #3a4351;
	position: relative;
}
#design #formContainer .dg .c .slider-fg::before{
	content: "";
	display: block;
	width: 24px;
	height: 24px;
	background: #3a4351;
	border-radius: 50%;
	position: absolute;
	top: 50%;
	right: 0;
	transform: translate(50%,-50%);
	box-shadow: 7px 7px 5px rgba(0,0,0,0.25);
	cursor: pointer;
}
#design #formContainer form input[type="radio"]{
	display: none;
}
#design #formContainer form input[type="radio"] + label{
	display: inline-block;
	margin-left: 15px;
	padding: 3px 0 3px 22px;
	position: relative;
	font-size: 13px;
	line-height: 1.2;
	font-family: "Noto Sans CJK JP Bold","MS Pゴシック", "MS PGothic", "ヒラギノ角ゴ Pro W6", "Hiragino Kaku Gothic Pro", sans-serif;
	cursor: pointer;
}
#design #formContainer form h2 + input[type="radio"] + label{
	margin-left: 0;
}
#design #formContainer form input[type="radio"] + label::before{
	content: "";
	display: block;
	width: 20px;
	height: 20px;
	border-radius: 50%;
	background: #3a4351;
	position: absolute;
	top: 50%;
	left: 0;
	transform: translate(0%,-50%);
}
#design #formContainer form input[type="radio"] + label::after{
	content: "";
	width: 12px;
	height: 12px;
	border-radius: 50%;
	background: #fff;
	position: absolute;
	top: 50%;
	left: 4px;
	transform: translate(0%,-50%);
	display: none;
}
#design #formContainer form input[type="radio"]:checked + label::after{
	display: block;
}
#design #formContainer .formBox .form{
	float: left;
	width: 50%;
}
#design #formContainer .textureList{
	margin-right: -5px;
	margin-left: 5px;
}
#design #formContainer .textureList::after{
	content: "";
	display: block;
	clear: both;
}
#design #formContainer .textureList li{
	float: left;
	width: 16.66%;
	position: relative;
}

#design #formContainer .texSelecter ul li span{
	display: block;
	margin-right: 10px;
	overflow: hidden;
	position: relative;
	border-radius: 50%;
}
#design #formContainer .texSelecter ul li span::before{
	content: "";
	display: block;
	width: 100%;
	height: 0;
	padding-top: 100%;
}
#design #formContainer .texSelecter .textureList li::before{
	content: "";
	display: none;
	width: calc(100% - 10px);
	height: 100%;
	border: solid 5px #3a4351;
	background: #3a4351;
	position: absolute;
	top: 0;
	left: 0;
	border-radius: 50%;
	box-sizing: initial;
	transform: translate(-5px,-5px);
}
#design #formContainer .texSelecter .textureList li.select::before{
	display: block;
}
#design #formContainer .texSelecter ul li span img{
	position: absolute !important;
	top: 0 !important;
	left: 50%;
	transform: translate(-50%,0%);
	width: auto !important;
	max-width: none;
	height: 100% !important;
	cursor: pointer;
}
#design #formContainer .texSelecter ul li span .color{
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}
#design #formContainer .texSelecter .colorPalette{
	height:  172px;
	margin-top: 30px;
	display: none;
}
#design #formContainer .texSelecter .colorPalette ul{
	display: flex;
	justify-content: space-between;
	margin-bottom: 15px;
}
#design #formContainer .texSelecter .colorPalette ul:last-child{
	margin-bottom: 0px;
}
#design #formContainer .texSelecter .colorPalette ul li{
	height: 22px;
	width: 22px;
	border-radius: 3px;
	position: relative;
}
#design #formContainer .texSelecter .colorPalette ul li.select{
	border: solid 2px #3a4351;
}
/* #design #formContainer .texSelecter .colorPalette li::before{
	content: "";
	display: none;
	width: 100%;
	height: 100%;
	border: solid 5px #3a4351;
	background: #3a4351;
	position: absolute;
	top: 0;
	left: 0;
	border-radius: 3px;
	box-sizing: initial;
	transform: translate(-5px,-5px);
	z-index: -1;
} */
#design #formContainer .texSelecter .colorPalette li.select::before{
	display: block;
}
#design #formContainer .texSelecter .colorPalette .record1 li:nth-child(1){
	background: #862321;
}
#design #formContainer .texSelecter .colorPalette .record1 li:nth-child(2){
	background: #412620;
}
#design #formContainer .texSelecter .colorPalette .record1 li:nth-child(3){
	background: #1d352b;
}
#design #formContainer .texSelecter .colorPalette .record1 li:nth-child(4){
	background: #23404c;
}
#design #formContainer .texSelecter .colorPalette .record1 li:nth-child(5){
	background: #23386a;
}
#design #formContainer .texSelecter .colorPalette .record1 li:nth-child(6){
	background: #3e4753;
}
#design #formContainer .texSelecter .colorPalette .record1 li:nth-child(7){
	background: #8d3c58;
}
#design #formContainer .texSelecter .colorPalette .record1 li:nth-child(8){
	background: #191a19;
}
#design #formContainer .texSelecter .colorPalette .record2 li:nth-child(1){
	background: #cb4c28;
}
#design #formContainer .texSelecter .colorPalette .record2 li:nth-child(2){
	background: #684d44;
}
#design #formContainer .texSelecter .colorPalette .record2 li:nth-child(3){
	background: #416b44;
}
#design #formContainer .texSelecter .colorPalette .record2 li:nth-child(4){
	background: #385d62;
}
#design #formContainer .texSelecter .colorPalette .record2 li:nth-child(5){
	background: #345689;
}
#design #formContainer .texSelecter .colorPalette .record2 li:nth-child(6){
	background: #697487;
}
#design #formContainer .texSelecter .colorPalette .record2 li:nth-child(7){
	background: #b64052;
}
#design #formContainer .texSelecter .colorPalette .record2 li:nth-child(8){
	background: #3e3e3e;
}
#design #formContainer .texSelecter .colorPalette .record3 li:nth-child(1){
	background: #e17b33;
}
#design #formContainer .texSelecter .colorPalette .record3 li:nth-child(2){
	background: #aa7057;
}
#design #formContainer .texSelecter .colorPalette .record3 li:nth-child(3){
	background: #7ba157;
}
#design #formContainer .texSelecter .colorPalette .record3 li:nth-child(4){
	background: #6ba097;
}
#design #formContainer .texSelecter .colorPalette .record3 li:nth-child(5){
	background: #538acc;
}
#design #formContainer .texSelecter .colorPalette .record3 li:nth-child(6){
	background: #8396b1;
}
#design #formContainer .texSelecter .colorPalette .record3 li:nth-child(7){
	background: #de9d9d;
}
#design #formContainer .texSelecter .colorPalette .record3 li:nth-child(8){
	background: #6b6a69;
}
#design #formContainer .texSelecter .colorPalette .record4 li:nth-child(1){
	background: #f4ae7d;
}
#design #formContainer .texSelecter .colorPalette .record4 li:nth-child(2){
	background: #dcb19c;
}
#design #formContainer .texSelecter .colorPalette .record4 li:nth-child(3){
	background: #b2ba56;
}
#design #formContainer .texSelecter .colorPalette .record4 li:nth-child(4){
	background: #9bc2a4;
}
#design #formContainer .texSelecter .colorPalette .record4 li:nth-child(5){
	background: #92c6e1;
}
#design #formContainer .texSelecter .colorPalette .record4 li:nth-child(6){
	background: #afbbce;
}
#design #formContainer .texSelecter .colorPalette .record4 li:nth-child(7){
	background: #e6c0c3;
}
#design #formContainer .texSelecter .colorPalette .record4 li:nth-child(8){
	background: #e2e3e2;
}
#design #formContainer .texSelecter .colorPalette .record5 li:nth-child(1){
	background: #ffd8bc;
}
#design #formContainer .texSelecter .colorPalette .record5 li:nth-child(2){
	background: #ebdbcb;
}
#design #formContainer .texSelecter .colorPalette .record5 li:nth-child(3){
	background: #fff39b;
}
#design #formContainer .texSelecter .colorPalette .record5 li:nth-child(4){
	background: #d8e8c8;
}
#design #formContainer .texSelecter .colorPalette .record5 li:nth-child(5){
	background: #d7e9f8;
}
#design #formContainer .texSelecter .colorPalette .record5 li:nth-child(6){
	background: #d8dee9;
}
#design #formContainer .texSelecter .colorPalette .record5 li:nth-child(7){
	background: #f5e4e4;
}
#design #formContainer .texSelecter .colorPalette .record5 li:nth-child(8){
	background: #ffffff;
}

/* #design #formContainer .texSelecter .colorPalette ul li{
	width: 20px;
	height: 20px;
	border-radius: 50%;
	background: #3a4351;
	position: absolute;
	top: 50%;
	left: 0;
	transform: translate(0%,-50%); */
/* } */
.dg.main.a .cr.color{
	border-left-color: rgba(0,0,0,0.0) !important;
	background: rgba(0,0,0,0.0);
	border-bottom-color: rgba(0,0,0,0.0);
}
#design #formContainer .dg.main.a:nth-child(n + 2) {
	margin-top: 30px;
}
#design #formContainer #matSaveBtn{
	display: block;
	width: 100%;
	max-width: 220px;
	height: 50px;
	margin: 30px auto 0;
	background: #3a4351;
	border: none;
	padding: 0;
	color: #fff;
	font-size: 14px;
	letter-spacing: 0.08em;
	cursor: pointer;
	-webkit-border-radius : 4px;
	border-radius: 4px;
	-webkit-appearance : none;
	-webkit-tap-highlight-color : rgba(0,0,0,0);
}
#design #formContainer #fileArea{
	margin-right: -23px;
}
#design #formContainer #fileArea + .formBox{
	padding-bottom: 30px;
	border-bottom: solid 1px #C9C8C6;
}
#design #formContainer #fileArea .form{
	padding-right: 23px;
	width: 33.333%;
}
#design #formContainer #fileArea .h2ttl{
	clear: both;
	padding-top: 20px;
	margin-top: 20px;
	border-top: solid 1px #C9C8C6;
	float: left;
	width: calc(100% - 23px);
}
#design #formContainer #fileArea .h2ttl:first-child{
	margin-top: 0px;
}
#design #formContainer #fileArea h2{
	display: block;
	font-size: 14px;
	line-height: 1.2;
	font-family: "Noto Sans CJK JP Light","MS Pゴシック", "MS PGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", sans-serif;
	margin-bottom: 10px;
}
#design #formContainer #fileArea h2 strong{
	font-family: "Noto Sans CJK JP Bold","MS Pゴシック", "MS PGothic", "ヒラギノ角ゴ Pro W6", "Hiragino Kaku Gothic Pro", sans-serif;
}
#design #formContainer #fileArea .thumb{
	overflow: hidden;
	width: 100%;
	position: relative;
	background: #ccc;
}
#design #formContainer #fileArea .thumb::before{
	content: "";
	display: block;
	width: 100%;
	height: 0;
	padding-top: 59.5238%;
}
#design #formContainer #fileArea .thumb canvas{
	position: absolute;
	top: 50%;
	left: 50%;
	width: 100%;
	height: auto;
	transform: translate(-50%,-50%);
}
#design #formContainer #fileArea .thumb label{
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}
#design #formContainer #fileArea .thumb input[type="file"]{
	display: none;
}
#design #formContainerBtn{
	width: 60px;
	height: 60px;
	background: #3a4351;
	position: absolute;
	top: 0;
	left: 0;
	transform: translate(-100%,0%);
	cursor: pointer;
}
#design #formContainerBtn::before{
	content: "";
	display: block;
	width: 21px;
	height: 21px;
	border-top: solid 2px #fff;
	border-right: solid 2px #fff;
	position: absolute;
	top: 50%;
	left: 50%;
	margin-left: -5px;
	transform: translate(-50%,-50%) rotate(45deg);
	transition: transform .5s, margin-left .5s;
}
#design #formContainerBtn.active::before{
	margin-left: 5px;
	transform: translate(-50%,-50%) rotate(-135deg);
}
#design #formContainer form button{
	display: block;
	width: 100%;
	max-width: 220px;
	height: 50px;
	margin: 30px auto 0;
	background: #3a4351;
	border: none;
	padding: 0;
	color: #fff;
	font-size: 14px;
	letter-spacing: 0.08em;
	cursor: pointer;
	-webkit-border-radius: 4px;
	border-radius: 4px;
	-webkit-appearance: none;
	-webkit-tap-highlight-color: rgba(0,0,0,0);
}
@media only screen and (max-width:768px) {
	#design #formContainer form{
		height: 100%;
	}
	#design #formContainer{
		width: 280px;
		top: 80px;
		height: calc(100% - 150px);
	}
	#design #formContainer #floorMaterial .form{
    clear: both;
		width: 100%;
	}
	#design #formContainer #floorMaterial .form:nth-child(2) {
		margin-top: 20px;
	}
}
/* @media only screen and (max-width:320px) {
	#design #formContainerBtn {
    width: 30px;
    height: 30px;
	}
	#design #formContainerBtn::before {
    width: 11px;
    height: 11px;
	}
} */

/* footer */
footer{
	position: fixed;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 70px;
	padding: 20px;
	background: #3a4351;
	z-index: 102;
}
.oneColumn footer{
	position: absolute;
}
footer ul{
	font-size: 0;
}
footer li{
	display: inline-block;
	vertical-align: top;
	font-size: 12px;
	line-height: 1.5;
	font-family: "Noto Sans CJK JP Light","MS Pゴシック", "MS PGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", sans-serif;
	color: #fff;
}
footer li:last-child{
	margin-right: 0;
}
footer li::after{
	content: "｜";
	display: inline-block;
}
footer li:last-child::after{
	display: none;
}
footer li a:link,
footer li a:visited{
	color: #fff;
}
footer p{
	font-size: 10px;
	line-height: 1.2;
	font-family: "Noto Sans CJK JP Light","MS Pゴシック", "MS PGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", sans-serif;
	color: #fff;
}
@media only screen and (max-width:980px) {
	/* footer{
		position: relative;
	} */
}
@media only screen and (max-width:768px) {
}
#gui_lattice{ 
	position: absolute;
	top: 200px;
	left: 200px;
}
#fadeBlack{
	left: 0px;
	top: 0px;
	position: absolute;
	width:100%;
	height:100%;
	background-color:#000;
	z-index:10;
	display: none;
}
#loading{
	width: 100%;
	height: 100%;
	background:#fff;
	color: #95D5FF;
	position: absolute;
	left: 0;
	top: 0;
	z-index: 99;
}
#loadImg{
	position: absolute;
	width: 6%;
	height: auto;
	top: 50%;
	left: 50%;
	font-size: 13px;
	transform: translate(-50%, -50%);
	z-index: 99;
}
/* モーダルCSS */
.modalArea {
	display: none;
	position: fixed;
	z-index: 10; /*サイトによってここの数値は調整 */
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}
.modalBg {
	width: 100%;
	height: 100%;
	background-color: rgba(30,30,30,0.9);
}
.modalWrapper {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
	width: 80%;
	height: 80%;
	padding: 10px 30px;
	background-color: #fff;
}
.modalContents{
	position: relative;
	width: 100%;
	height: 100%;
}
iframe{
	height: 100%;
	width: 100%;
}
.closeModal {
	position: absolute;
	top: 0.5rem;
	right: 1rem;
	cursor: pointer;
}
#design #animBtnsArea{
	/* position: absolute; */
	position: fixed;
	left: 3.5%;
	bottom: 90px;
	height: 40px;
	width: 430px;
	display: flex;
	justify-content: space-between;
}
#design .anim_panorama button{
	width: 100px;
	height: 50px;
	background: #3a4351;
	border: none;
	padding: 0;
	color: #fff;
	font-size: 14px;
	letter-spacing: 0.08em;
	cursor: pointer;
	-webkit-border-radius : 4px;
	border-radius: 4px;
	-webkit-appearance : none;
	-webkit-tap-highlight-color : rgba(0,0,0,0);
}
@media only screen and (max-width:430px) {
	#design #animBtnsArea{
		width: 100%;
    justify-content: space-around;
		left: 0%;
	}
	#design .anim_panorama button{
		width: 70px;
		font-size: 13px;
	}
}

/* galleryType */
#formWrap.typeform{
	padding: 200px 0;
}
#typeInfo #galleryListArea{
	display: flex;
	justify-content: space-around;
}
#typeInfo #galleryTypeForm label img{
	width: 100%;
}
#typeInfo #galleryTypeForm label div{
	position: relative;
	top: 44px;
}
#typeInfo #galleryTypeForm label div p{
	text-align: center;
	font-family: "Noto Sans CJK JP Bold","MS Pゴシック", "MS PGothic", "ヒラギノ角ゴ Pro W6", "Hiragino Kaku Gothic Pro", sans-serif;
}
#typeInfo #galleryTypeForm label a{
	color: #4A5564;
}
@media only screen and (max-width:414px) {
	#typeInfo #galleryTypeForm label div p{
		font-size: 8px;
	}
	#exhibition #contents .formArea .formBox input[type="radio"] + label {
    width: 250px;
		padding-bottom: 60px;
	}
}
@media only screen and (max-width:768px) {
	#formWrap.typeform {
		padding: 0;
	}
	#typeInfo #galleryListArea{
		display: flex;
    flex-flow: column;
    flex-direction: column;
    align-items: center;
	}
	#typeInfo #galleryTypeForm label div {
    position: relative;
    top: 20px;
}
}

/* only works-3D*/
#linkToWorksPage{
	position: absolute;
	top: 160px;
	right: 60px;
}
#linkToWorksPage button{
	display: inline-block;
	vertical-align: middle;
	width: 100px;
	height: 50px;
	border: none;
	border-radius: 3px;
	background: #3a4351;
	color: #fff;
	font-size: 14px;
	line-height: 50px;
	letter-spacing: 0.08em;
	text-align: center;
	cursor: pointer;
}
@media only screen and (max-width:767px) {
	#linkToWorksPage{
		right: 20px;
		top: 130px;
	}
	#linkToWorksPage button{
		width: 75px;
		font-size: 15px;

	}
}
.breadcrumbs li{
	display: inline-block;
	font-size: 14px;
	line-height: 1.5;
	margin-top: 15px;
	font-family: "Noto Sans CJK JP Light","MS Pゴシック", "MS PGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", sans-serif;
}
.breadcrumbs li a{
	color: #4A5564;

}
.breadcrumbs li::after{
  content: '>';
  display: inline-block;
  padding: 0 10px; /*左右に余白*/
}

.breadcrumbs li:last-child::after{
  display: none;
}
#design .breadcrumbs li{
	margin-top: 0px;
}
@media only screen and (max-width:600px) {
	.breadcrumbs li{
		display: inline-block;
		font-size: 10px;
		line-height: 1.5;
		margin-top: 15px;
		font-family: "Noto Sans CJK JP Light","MS Pゴシック", "MS PGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", sans-serif;
	}
}