@charset "UTF-8";

/* screens smaller than 768---------------------------------------------------------- */
@media only screen and (max-width:768px) {

body{min-width:300px;}

a.pagetop {
	width:40px;
	height:0;
	background: url(../img/pagetop_sp.png) no-repeat 0 0;
	background-size:40px 40px;
	padding-top: 40px;
	text-indent:-9999px;
	overflow: hidden;
	display:block;
}



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



/* ---- footer ---- */

footer {
	height:auto;
}

footer #foot_wrap {
	width:90%;
	margin:0 auto;
	overflow:hidden;
}
footer #foot_wrap ul { 
	float:left;
	overflow:hidden;
margin-left:0;
}
footer #foot_wrap ul li {
	float:left;
	margin-right:20px;
	padding-top:20px;
	font-size:12px;
}
footer #foot_wrap img {
	width:29px;
	height:29px;
	float:right;
	padding-top:15px;
	padding-right:40px;
margin-right:0;
}
footer #foot_wrap small {
	font-size:11px;
	float:none;
	margin:0;
	padding:10px 0 15px;
	clear:both;
	display:block;
	text-align:left;

}


/* ====== top  ====== */

/* ---- mainimage ---- */



#mainimage h1 img{
	position: absolute;
	bottom: 32%;
	right: 10px;
		width: 200px;
	height: auto;
}

#mainimage p img{
	width: 124px;
	height: auto;
	position: absolute;
	top: 46%;
	left: 9%;
}

#mainimage h2 .is img{
	position: absolute;
	top: 30%;
	left: 50%;
	margin-top:0;
	margin-left: -50px;
	width: 100px;
	height: auto;
}
#mainimage h2 .b img {
	width:100%;
	position: absolute;
	bottom:15%;;
	left: 50%;
	margin-left: -50%;
}
#mainimage h2 .t img {
	visibility: visible;
	width:100%;
	position: absolute;
	bottom: 0;
	left: 50%;
	margin-left: -50%;
}

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

header {
	position: relative;
	z-index:50;
	
}

header h1 {
	display: none;
}
header h1 img {
	display: none;
}

header p.cont {
  -webkit-writing-mode: vertical-rl;
      -ms-writing-mode: tb-rl;
          writing-mode: vertical-rl;
		position: fixed;
	top: 20px;
	right: 5px;
	font-size: 11px;
	width: auto;
}
header p.cont span {
	padding:10px 0 0 0; 
	
}
header p.cont img {
	width: 10px;
	height: auto;
	margin-top: 5px;
}
	
header p.works {
  -webkit-writing-mode: vertical-rl;
      -ms-writing-mode: tb-rl;
          writing-mode: vertical-rl;
		position: fixed;
	top: 120px;
	right: 5px;
	font-size: 12px;
	width: 14px;
}
header p.works img {
	width: 10px;
	height: auto;
	margin-top: 5px;
}
	
header p.store {
  -webkit-writing-mode: vertical-rl;
      -ms-writing-mode: tb-rl;
          writing-mode: vertical-rl;
		position: fixed;
	bottom: 20px;
	left: 5px;
	font-size: 12px;
	width: 14px;
}

header p.insta {
	position: fixed;
	bottom: 190px;
	left: 2px;
	font-size: 12px;
	width: 14px;
}
header p.insta img {
	width: 14px;
	height: auto;
	margin-top: 2px;
}

	
/* ---- copy ---- */

#copy{
	 background-image: url(../img/sp_copy_bg.jpg);
	 background-position:center top;
	 background-size: cover;
	z-index:0;
	padding-bottom: 45px;
}
#copy h2 {
	padding:40px 0 20px 0;
}
#copy h2 img{
	width: 260px;
	height: auto;
}
#copy .catch_en{
	margin: 0 0 25px 0;
}
#copy .catch_en img{
	width: 222px;
	height: auto;
}
#copy hr {
height: 2px;
 background-color:#222;
 width: 50px;
 border: none;
display: block;
}

#copy .txt01{
	margin: 25px 0 15px 0;
	font-size: 11px;
	line-height: 30px;
	padding: 0 20px;
}
#copy .txt02{
	margin: 0 0 30px 0;
	font-size: 11px;
	line-height: 30px;
	padding: 0 20px;
}
	#copy .txt01 .brsp {
	display: block;
}
#copy h3 {
	font-size: 14px;
	font-weight: 500;
	margin: 0 0 35px 0;
}
#copy .txt_en img{
	width: 296px;
	height: auto;
}

/* ---- image ---- */

#image{
	 background-image: url(../img/sp_image_bg.jpg);
	 background-position:center top;
	 background-size: cover;
	height: 630px;
}

	
	
/* ---- cont_wrap ---- */

.cont_wrap{
	width:100%;
	margin: 0 auto;
}

/* ---- pt ---- */

#pt {
	padding-bottom: 20px;
}
	
#pt h2{
	font-size: 16px;
	line-height: 30px;
	font-weight: normal;
	margin:30px auto 10px;
	padding:0;
	width: 84%;
}
#pt h2 span{
	font-size: 12px;
	line-height:22px;
	font-weight: normal;
	display: block;
	margin-top: 10px;
}
	#pt h2 br {
		display: none;
	}

/*  ptA  */
#pt .ptA{
	overflow: hidden;
	width: 84%;
	margin: 0 auto;
}
	
/*  ptB  */
#pt .ptB{
	overflow: hidden;
	width: 84%;
	margin: 30px auto;
}

/*  ptA&B  */
#pt .ptA .blk_txt, #pt .ptB .blk_txt{
	float: none;
	width: 100%;
	background-position:0 0;
	background-repeat: no-repeat;
	background-size: 40px;
	padding: 55px 0 0 0;
	margin: 0 auto;
}
#pt .ptA .blk_txt h3, #pt .ptB .blk_txt h3 {
	font-weight: normal;
	font-size: 22px;
}
#pt .ptA .blk_txt h3 span, #pt .ptB .blk_txt h3 span {
	font-size: 12px;
	display: block;
	margin-top: 10px;
}
#pt .ptA .blk_txt .txt, #pt .ptB .blk_txt .txt {
	font-size: 14px;
	line-height: 24px;
	margin-top: 20px;
	text-align: left;
}
#pt .ptA .blk_txt .txt_en, #pt .ptB .blk_txt .txt_en {
	font-size: 12px;
	line-height: 20px;
	margin-top: 10px;
	text-align: left;
}
#pt .ptA .blk_txt .btn, #pt .ptB .blk_txt .btn {
	margin: 20px auto 0;
	width: 98%;
	height: 50px;
	border: #222 solid 2px;
	line-height: 50px;
	font-size: 14px;
}
#pt .ptA .blk_img, #pt .ptB .blk_img{
	float: none;
	width: 100%;
	background-image:none;
	padding:0;
	margin-top: 20px;
}
#pt .ptA .blk_img img,#pt .ptB .blk_img img{
		width: 100%;
	}	

/*  pt icon  */
#pt .blk_txt .arr {
	background-image: url(../img/icon_arr.png);
	background-position: 10px center;
	background-repeat: no-repeat;
	background-size: 12px;
}
#pt .blk_txt .icon {
	background-image: url(../img/icon_otubB.png);
	background-position: 220px center;
	background-repeat: no-repeat;
	background-size: 12px;
}

	
/* ---- prs (process)---- */
#prs {
	background-color:#fbf0f0;
	padding: 40px 0 50px 0;
}

#prs #prs_ttl h2{
	font-size: 24px;
	font-weight:normal;
	padding-bottom: 3px;
}
#prs #prs_ttl hr {
	border: #222 solid 1px;
	width: 160px;
	height: 4px;
	background-color: #ffffff;
}
#prs #prs_ttl p {
	font-size: 12px;
	margin: 10px 0 0 0;
} 

/* prs box*/
#prs .box {
	width: 84%;
	margin: 30px auto 0;
	text-align: left;
	border: #222 solid 2px;
	position: relative;
	padding-bottom: 20px;
	clear: both;
}
#prs .box .txt {
	float: none;
	width: 90%;
	margin: 30px auto 0;
}

#prs .box .txt h3 {
	font-size: 22px;
	font-weight: bold;
	height: auto;
	padding-left: 60px;
	line-height:22px;
	background-position: 0 center;
	background-repeat: no-repeat;
	background-size: 40px;
}
#prs .box .txt h3 span {
	font-size: 12px;
	line-height: 16px;
	padding: 10px 0 0 0;
	display: block;
}

#prs .box .txt .jp{
	font-size: 14px;
	line-height: 24px;
	margin: 20px 0 0 0;
}
#prs .box .txt .en{
	font-size: 12px;
	line-height: 20px;
	margin: 10px 0 0 0;
}

#prs .box .img {
	float: none;
	margin: 20px auto 0;
	width: 90%;
}
	#prs .box .img img{
		width: 100%;
	}

#prs .box img.arr {
	position: absolute;
	bottom: -22px;
	left: 50%;
	width: 24px;
	height: auto;
	margin-left: -12px;
	z-index: 1;
}

/* prs box icon*/
#prs .box .txt h3.icon01 {background-image: url(../img/prs_icon01.png);}
#prs .box .txt h3.icon02 {background-image: url(../img/prs_icon02.png);}
#prs .box .txt h3.icon03 {background-image: url(../img/prs_icon03.png);}	
	
	
/* ---- btn---- */
.btnA {
    position: relative;
    z-index: 1;
	width:84%;
	margin: 30px auto 0;
	background-color: #fff;
	border: #222 solid 2px;
	padding: 20px 0;
}
.btnA a {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    text-indent:-999px;
    z-index: 0; /* 必要であればリンク要素の重なりのベース順序指定 */
}
.btnA p.jp{
	font-size: 15px;
	background-image: url(../img/icon_otub.svg);
	background-position: right 20px center;
	background-repeat: no-repeat;
	background-size: 14px;
	margin-left: -20px;
}
.btnA p.en{
	font-size: 11px;
	margin-top: 10px;
	line-height: 14px;
}

.btnA:hover {
	background-color: #fff;
	color: #222;
	-webkit-transition: none;
  transition: none;
}
.btnA:hover p.jp{
	background-image: url(../img/icon_otub.svg);
}
	

/* ---- artist---- */
	
#artist {
	padding: 40px 0 40px 0;
}

#artist #artist_ttl h2{
	font-size: 32px;
	font-weight:normal;
	padding-bottom: 0;
}
#artist #artist_ttl hr {
	border: #222 solid 1px;
	width: 110px;
	height: 4px;
	background-color: #ffffff;
}

/* artist box */
#artist .box{
	width:84%;
	margin: 40px auto 0;
}
#artist .box .img{
	float:none;
}
	#artist .box .img img {
		width: 100%;
	}
#artist .box .txt{
	float: none;
	width: 100%;
	text-align: left;
	position: relative;
	margin-top: 30px;
}

#artist .box .txt h3{
	font-size: 26px;
	padding-bottom: 10px;
}
#artist .box .txt hr {
display: none;
}


/* artist tub */

#artist section {
	position: relative;
}

#artist .tab {
	position: absolute;
	top:-56px;
	right: 0;
	border: #222 solid 1px;

}

#artist .tab li {
	margin: 0;
	padding: 5px;
	cursor: pointer;
	vertical-align: middle;
	text-align: center;
	background: #fff;
	float:left;
	font-size: 11px;
}
#artist .tab li.current {
	background: #222;
	color: #fff;
	border-bottom: none;
}

#artist .content{
	margin: 20px 0 0 0;
}
#artist .content ul li{
	font-size: 12px;
	margin-bottom: 8px;
	line-height: 20px;
}
#artist .content p{
	font-size: 14px;
	line-height: 24px;
	padding-top: 10px;
}

#artist .box .txt img.Balloon {
	display: none;
}

#artist .contents .content {
	display: none;
}
#artist .contents .content:nth-child(1) {
	display: block;
}

	
/* ---- price ---- */

#price {
	background-color:#fbf0f0;
	padding: 40px 0 40px 0;
}

#price #price_ttl h2{
	font-size: 32px;
	font-weight:normal;
	padding-bottom: 0;
}
#price #price_ttl hr {
	border: #222 solid 1px;
	width: 90px;
	height: 4px;
	background-color: #ffffff;
}
	
	
#price #p_wrap{
	width:84%;
	margin: 20px auto 0;
	text-align: left;
}

#price #p_wrap .box_jp{
	width:100%;
	float: none;
}
#price #p_wrap .box_en{
	width: 100%;
	float: none;
	margin-top: 20px;
}

#price #p_wrap .dlt dl{
	border-bottom: #222 solid 1px;
	overflow: hidden;
	padding: 20px 0 15px;
	font-size: 14px;
	line-height: 20px;
}

#price #p_wrap .dlt dl dt {
	float: left;
}
#price #p_wrap .dlt dl dd {
	float: right;
}	

	
/* ---- studio ---- */

#studio {
	padding: 40px 0 40px 0;
}

#studio #studio_ttl h2{
	font-size: 32px;
	font-weight:normal;
	padding-bottom: 0;
}
#studio #studio_ttl hr {
	border: #222 solid 1px;
	width: 116px;
	height: 4px;
	background-color: #ffffff;
}
	
/*box01*/
#studio #box01 {
	margin: 40px auto 0; 
	width:84%;
	text-align: left;
}
#studio #box01 .img01 {
	float:none;
}
#studio #box01 img{
	width: 100%;
}
#studio #box01 .detail{
	float:none;
	width: 100%;
	margin-top: 20px;
}

#studio #box01 .detail dl {
	border-bottom: #222 solid 1px;
	padding: 16px 0;
	overflow: hidden;
	font-size: 14px;
}
#studio #box01 .detail dl dt{
	float:none;
	width:100%;
	padding-bottom: 10px;
		font-weight: bold;
}
#studio #box01 .detail dl dd{
	float:none;
}

#studio #box01 .detail dl.name {
	border-bottom: #222 solid 2px;
	padding: 0 0 15px 0;
}
#studio #box01 .detail dl.name dt{
	font-size: 26px;
	width:100%;
	padding-bottom: 5px;
}
#studio #box01 .detail dl.name dd{
	font-size: 16px;
	padding-top: 0;
}

#studio #box01 .detail dl.open dd{
	padding-right:10px;
	float: left;
}
#studio #box01 .detail dl.mail dd{
	padding-right: 0;
	padding-bottom: 10px;
}
#studio #box01 .detail dl.add dd{
	width: 100%;
	line-height: 20px;
}
#studio #box01 .detail dl.add dd.pt{
	padding-top: 10px;
	line-height: 18px;
	font-size: 12px;
}
#studio #box01 .detail dl.add dt{
	height:auto;

}

/*box02*/
#studio #box02 {
	margin: 20px auto 0; 
	width:84%;
	text-align: left;
}
#studio #box02 .map {
	width:100%;
	height:300px;
	float: none;
}
#studio #box02 #gmap {
	width:100%;
	height:300px;
}
#studio #box02 .img {
	float:none;
	width:100%;
	margin-top: 20px;
}
	#studio #box02 .img img{
		width: 100%;
	}
#studio #box02 .img img.img02{
	margin-bottom: 10px;
}

#studio #box02 .img img.img03{
	margin-right:0;
	margin-bottom: 10px;
	width: 100%;
	height: auto;
}
#studio #box02 .img img.img04{
	width: 100%;
	height: auto;
}


/* ---- faq ---- */

#faq {
	background-color:#fbf0f0;
	padding: 40px 0 40px 0;
}

#faq #faq_ttl h2{
	font-size: 32px;
	font-weight:normal;
	padding-bottom: 0;
}
#faq #faq_ttl hr {
	border: #222 solid 1px;
	width: 60px;
	height: 4px;
	background-color: #ffffff;
}
	

#faq #qa{
	width:84%;
	margin: 40px auto 0;
	text-align: none;
}
#faq #qa dl {
	width: 100%;
	float:none;
	margin-bottom: 30px;
}
#faq #qa dl:nth-child(2n+1){
	margin-right: 80px;
}
#faq #qa dl dt {
	font-size: 16px;
	border-bottom:#222 solid 1px;
	padding-bottom: 10px;
	line-height: 26px;
}
#faq #qa dl dd {
	font-size: 14px;
	line-height: 24px;
	margin-top: 15px;
}
/*hyg*/
#faq #hyg {
	width: 84%;
	margin: 40px auto 0;
	border: #222 solid 1px;
	padding-bottom: 20px;
}
#faq #hyg h3 {
	font-size: 16px;
	padding: 30px 0 20px;
}
#faq #hyg p {
	width: 86%;
	margin: 0 auto;
	text-align: left;
		font-size: 14px;
	line-height: 24px;
}
#faq #hyg p.jp{
padding-bottom: 10px;
}
#faq #hyg p.en{
font-size: 12px;
	line-height: 20px;
}

/*att*/
#faq #att {
	width: 84%;
	margin: 30px auto 0;
	border: #222 solid 1px;
	padding-bottom: 20px;
}
#faq #att h3 {
	font-size: 16px;
	padding: 30px 0 20px;
}
#faq #att ul {
	width: 80%;
	margin: 0 auto;
	text-align: left;
		font-size: 14px;
	line-height: 22px;
	list-style-type: disc;
}
#faq #att ul li{
	list-style-type: disc;
	padding-bottom: 5px;
}
#faq #att ul.en{
	padding-top: 15px;
	font-size: 12px;
	line-height: 18px;
}
	
#studio #reservation {
	width:86%;
	text-align:center;
	margin:0 auto;
}

.call_btn{
	display: block;
width:84%;
margin: 20px auto 0;
	background-color: #222;
	color: #fff;
	border-radius: 6px;
	padding: 10px 0;
}
	.call_btn a {color: #fff;}

/* ---- footer ---- */

footer{
	padding: 30px 0;
}
	
footer p.works {
	display: none;
}

footer p.insta {
	display: none;
}


}