@media screen and (max-width:834px){
	body {
		font-size: -webkit-calc(1.4rem + 2 * (100vw - 320px) / (960 - 320));
		font-size: calc(1.4rem + 2 * (100vw - 320px) / (960 - 320));
	}

	img {
		max-width: 100%;
		height: auto !important;
	}

	#sb_instagram .sbi_photo img{
		height: inherit !important;
	}

	input[type="submit"], input[type="button"], input[type="text"], input[type="email"], input[type="password"], input[type="search"], input[type="tel"], input[type="url"], input[type="datetime"], input[type="date"], input[type="month"], input[type="week"], input[type="time"], input[type="datetime-local"], input[type="number"], textarea {
		-webkit-appearance: none;
		border-radius: 0;
	}

	input[type="text"], input[type="email"], input[type="password"], input[type="search"], input[type="tel"], input[type="url"], input[type="datetime"], input[type="date"], input[type="month"], input[type="week"], input[type="time"], input[type="datetime-local"], input[type="number"], input[type="range"], textarea {
		width: 100%;
		margin: 0;
		padding: 5px;
	}

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

	body{
		min-width: inherit;
	}

	p{
		text-align: justify;
		line-height: 1.8;
		letter-spacing: .1rem;
	}

	/***************
	* parts
	***************/

	/* scroll */
	.wrp_scroll::-webkit-scrollbar {
		height: 5px;
	}
	.wrp_scroll::-webkit-scrollbar-track {
		background: #ebebeb;
	}
	.wrp_scroll::-webkit-scrollbar-thumb {
		background: #969696;
	}
	.wrp_scroll {
		position: relative;
		overflow-x: scroll;
		overflow-y: hidden;
		margin: 0 0 10px;
		/*-webkit-overflow-scrolling: touch;*/
	}
	.scroll {
		min-width: 768px;
	}

	/* iframe/googlemap */
	.wrp_iframe {
		display: block;
		position: relative;
		overflow: hidden;
		height: 0;
		padding-top: 56.25%;
	}
	.wrp_iframe iframe,
	.googlemap object,
	.googlemap embed {
		position: absolute;
		top: 0;
		left: 0;
		width: 100% !important;
		height: 100% !important;
	}


	/***************
	* header
	***************/
	header{
		width: 100%;
		padding: 0 15px;
	}
	
	header h1{
		width: calc(100vw / 2.5);
		margin: 0 auto;
		padding: 15px 0;
	}

	header h1 img{
		width: 100%;
		height: auto;
	}

	header .sp input{
		display: none;
	}

	header .sp input + label {
		position: fixed;
		top: 16px;
		right: 16px;
		height: 20px;
		width: 20px;
		z-index: 1100;
	}
	header .sp input + label span {
		position: absolute;
		width: 100%;
		height: 1px;
		top: 50%;
		margin-top: -1px;
		left: 0;
		display: block;
		background: #000;
		transition: 0.5s;
	}
	header .sp input + label span:first-child {
		top: 4px;
	}
	header .sp input + label span:last-child {
		top: 16px;
	}
	header .sp label:hover {
		cursor: pointer;
	}
	header .sp input:checked + label span {
		opacity: 0;
		top: 50%;
	}
	header .sp input:checked + label span:first-child {
		opacity: 1;
		transform: rotate(405deg);
	}
	header .sp input:checked + label span:last-child {
		opacity: 1;
		transform: rotate(-405deg);
	}

	header .sp input ~ nav {
		background: #fff;
		position: fixed;
		top: 55px;
		left: 0;
		width: 100%;
		height: 0;
		z-index: 1000;
		transition: 0.5s;
		transition-delay: 0.5s;
		overflow: hidden;
	}
	header .sp input ~ nav > ul {
		text-align: center;
		position: absolute;
		top: 5%;
		left: 15%;
		right: 15%;
		margin: 0;
		padding: 0;
		list-style: none;
	}
	header .sp input ~ nav > ul > li {
		opacity: 0;
		transition: 0.5s;
		transition-delay: 0s;
	}
	header .sp input ~ nav > ul > li > a {
		text-transform: uppercase;
		display: block;
		padding: 30px;
	}
	header .sp input:checked ~ nav {
		height: 100%;
		transition-delay: 0s;
	}
	header .sp input:checked ~ nav > ul > li {
		opacity: 1;
		transition-delay: 0.5s;
	}

	/***************
	* hero
	***************/
	#hero .movie {
		position: relative;
		margin: 60px 0 0 0;
		width: 100%;
		height: 75vh;
		overflow: hidden;
	}

	#hero .movie video {
		left: 50%;
		transform: translateX(-50%);
		width: 100%;
		min-height: 75vh;
		object-fit: cover;
	}

	#hero .movie::after {
		content: "";
		height: 65vh;
	}

	#hero .logo{
		width: 40%;
		left: calc(100vw / 6);
	}

	/***************
	* read
	***************/
	main{
		margin: -100px 0 0 0;
		padding: 0 0 0 0;
	}

	#read{
		padding: 0 0 50px 0;
		background-size: 100%;
	}

	#read .bg_img{
		height: 975px;
	}

	#read .bg_img img{
		width: 100%;
	}

	#read .wrp{
		width: calc(100vw - 40px);
		margin: -680px auto 0 auto;
	}

	#read .wrp h3{
		width: 70%;
		margin: 0 0 30px 0;
	}

	#read .wrp h3 img{
		width: 100%;
		height: auto;
	}

	#read .wrp p{
		width: 100%;
		margin: 0 0 0 0;
		-webkit-font-feature-settings: 'palt' 1;
		font-feature-settings: 'palt' 1;

	}

	
	#read .wrp p + p{
		margin: 1em 0 0 0;
	}

	#read .playmovie{
		position: relative;
		margin: 30px auto 0 auto;
		width: calc(100vw - 40px);
		height: unset;
	}

	/***************
	* eart
	***************/
	#eart{
		position: relative;
		padding: 50px 0 80px 0;
		background: #fff;
	}

	#eart .col2{
		width: 100vw;
		flex-direction: column;
	}
	
	#eart .col2 .text{
		width: 100%;
		margin: 0 auto;
	}

	#eart .col2 .text h2{
		width: calc(100vw - 40px);
		margin: 0 auto 30px auto;
	}

	#eart .col2 .text h2 div{
		width: 70%;
	}

	#eart .col2 .text h2 span{
		width: 65%;
		margin: 0 0 18px 0;
	}

	#eart .col2 .text h2 span + img{
		margin: 0 0 0 -2px;
	}

	#eart .col2 .text p{
		width: calc(100vw - 40px);
		margin: 0 auto 20px auto;
	}

	#eart .col2 .text p:last-child{
		margin: 20px auto 0 auto;
	}

	#eart .eart_img01{
		position: relative;
		width: 95vw;
		margin: 20px 0 20px auto;
		z-index: 10;
	}

	#eart .eart_img01 img{
		width: 100%;
		height: auto;
	}

	#eart .eart_img02{
		position: relative;
		width: 75vw;
		margin: -50px 20px 20px auto;
		z-index: 15;
	}

	#eart .eart_img02 img{
		width: 100%;
		height: auto;
	}

	#eart .col2 .image{
		position: relative;
		margin: 30px 0 0 0;
		width: 100%;
	}

	#eart .flt_img{
		width: 100%;
		margin: 0 0 0 0;
		z-index: 3;
		display: none;
	}

	#eart .flt_ttl{
		width: calc(100vw - 40px);
		margin: 20px auto 0 auto;
	}

	#eart .flt_ttl div{
		width: 80%;
	}
	
	#eart .flt_ttl img{
		display: block;
		margin: 0 0 0 3px;
	}

	#eart .col2_2{
		width: calc(100vw - 40px);
		margin: 20px auto 0 auto;
		flex-direction: column;
	}

	#eart .col2_2 .text{
		width: 100%;
		flex-direction: column;
		order: 2;
		margin: 20px 0 0 0;
	}

	#eart .col2_2 .text p{
		width: 100%;
	}
	
	#eart .col2_2 .text p + p{
		margin: 20px 0 0 0;
	}

	#eart .col2_2 .image{
		width: 100%;
	}

	#eart .col2_2 .image img{
		width: 100%;
		height: auto;
	}

	#eart .btm_image{
		width: 95vw;
		margin: 40px 0 0 0;
	}

	/***************
	* top_news
	***************/
	#top_news{
		padding: 80px 0;
	}

	#top_news h2{
		width: 74px;
		margin: 0 auto 50px auto;
	}

	.newslist{
		width: calc(100vw - 40px);
		margin: 0 auto;
		padding: 0;
		list-style: none;
	}

	.newslist a{
		flex-direction: column;
		align-items: flex-start;
		padding: 10px 10px;
	}

	.newslist a span{
		margin: 0 auto 0 0;
		padding: 0 0 0 0;
		border-right: 0;
	}

	.newslist a p{
		padding: 0 40px 0 0;
		text-align: left;
	}

	.newslist a:after{
		top: 40%;
		right: 10px;
	}

	/***************
	* collection
	***************/
	#collection{
		padding: 80px 0;
	}

	#collection h2{
		width: 169px;
		margin: 0 auto 50px auto;
	}

	#collection .wrp{
		width: calc(100vw - 40px);
		flex-wrap: wrap;
	}
	
	#collection .wrp .image{
		position: relative;
		width: 31%;
		height: auto;
		aspect-ratio: 1;
		margin: 0 0 4% 0;
	}

	#collection .wrp .clct01::after,
	#collection .wrp .clct01b::after,
	#collection .wrp .clct02::after,
	#collection .wrp .clct03::after,
	#collection .wrp .clct04::after,
	#collection .wrp .clct05::after,
	#collection .wrp .clct06::after,
	#collection .wrp .clct07::after,
	#collection .wrp .clct08::after{
		background-size: 100% !important;
	}

	#collection .wrp .image a{
		opacity: 0.95;
		width: 100%;
		height: 100%;
	}

	#collection .wrp .image img{
		width: 60%;
	}
	#collection .wrp .clct01b img{
		width: 80%;
	}

	/***************
	* gallery
	***************/
	#gallery{
		padding: 80px 0;
	}

	#gallery .col2{
		width: calc(100vw - 40px);
		flex-direction: column;
	}

	#gallery .col2 .map{
		width: 100%;
		margin: 20px 0 0 0;
		order: 2;
	}

	#gallery .col2 .text{
		width: 100%;
		order: 1;
	}
	
	#gallery .col2 .text h2{
		margin: 0 0 30px 0;
	}

	#gallery .col2 .text h3{
		margin: 0 0 10px 0;
		font-size: 1.4rem;
	}

	#gallery .col2 .text address{
		font-size: 1.4rem;
		font-style: normal;
	}

	#gallery .cmngsoon{
		width: calc(100vw - 40px);
		margin: 0 auto;
	}
	
	#gallery .cmngsoon h2{
		width: 118px;
		margin: 0 auto 30px auto;
		padding: 0 20px 0 0;
	}

	#gallery .col2 .text .yoyaku{
		display: block;
		margin: 15px 0 0 0;
		padding: 15px;
		background: #000;
		text-align: center;
		color: #fff;
		cursor: pointer;
		transition-duration: .3s;
		-webkit-transition-duration: .3s;
	}

	#gallery .col2 .text .yoyaku::after{
		top: 27px;
		right: 10px;
	}

	/***************
	* about
	***************/
	#about{
		padding: 80px 0;
	}

	#about .wrp{
		width: calc(100vw - 40px);
	}

	#about .wrp h2{
		margin: 0 0 30px 0;
	}

	#about .wrp .col2{
		flex-direction: column;
	}

	#about .wrp .col2 .col_l{
		width: 100%;
	}

	#about .wrp .col2 .col_r{
		width: 100%;
	}

	#about .wrp .col2 .col_r dl{
		flex-direction: column;
		font-size: 1.4rem;
	}
	
	#about .wrp .col2 .col_r dl div{
		width: 100%;
	}

	/***************
	* footer
	***************/
	footer{
		padding: 80px 0;
	}

	footer .wrp{
		width: calc(100vw - 40px);
	}

	footer .wrp .ftr_logo{
		width: 200px;
		margin: 0 auto 30px auto;
	}

	footer .wrp .ftr_logo img{
		width: 100%;
		height: auto;
	}

	footer .wrp .col2{
		flex-direction: column;
	}

	footer .wrp .col2 .navi{
		display: none;
		width: 90%;
		margin: 0 auto;
	}

	footer .wrp .col2 .navi ul li a{
		padding: 15px 0;
	}

	footer .wrp .col2 .add .com{
		width: 90%;
		margin: 30px auto 10px auto;
		font-size: 1.8rem;
	}

	footer .wrp .col2 .add p{
		width: 90%;
		margin: 0 auto 10px auto;
	}

	footer .wrp .col2 .add div{
		width: 90%;
		margin: 45px auto 0 auto;
	}

	footer .wrp .col2 .add div img{
		width: 40px;
		height: 40px;
	}

	/***************
	* modal
	***************/

	#modal-video iframe {
		width: 90vw;
		height: 51vw;
	}

	/***************
	* loading
	***************/
	.loading-content p{
		top: 46%;
		-webkit-transform: translate(-50%, -46%);
		transform: translate(-50%, -46%);
	}
	.sk-cube-grid {
		width: 60px;
		height: 60px;
		top: 40%;
		-webkit-transform: translate(-50%, -40%);
		transform: translate(-50%, -40%);
	}
	/***************
	* products
	***************/
	#products #hero .movie {
		margin: 55px 0 -20px 0;
		height: 40vh;
	}

	#products #hero .movie video {
		min-height: 36vh;
	}

	#products #hero .movie::after {
		height: 36vh;
	}

	#products #hero .main_img{
		position:absolute;
		width: calc(100vw - 40px);
		top: 28%;
		left:50%;
		-webkit-transform: translate(-50%, -28%);
		transform: translate(-50%, -28%);
	}

	#products #hero .ttl_main{
		position:absolute;
		width: 20%;
		bottom: 14%;
		left:50%;
		-webkit-transform: translate(-50%, -14%);
		transform: translate(-50%, -14%);
	}

	#products main{
		margin: 0 0 0 0;
		padding: 50px 0 0 0;
	}

	#products #product_read{
		padding: 250px 0 0 0;
	}
	#rm001 #product_read{
		background-size: 95%;
		padding: 205px 0 0 0;
	}
	#rm002 #product_read{
		background-size: calc(100vw - 40px);
		padding: 390px 0 0 0;
	}
	#rm003 #product_read,
	#rm004 #product_read,
	#rm005 #product_read,
	#rm008 #product_read,
	#rm001b #product_read{
		padding: 0 0 0 0;
	}
	#rm006 #product_read,
	#rm007 #product_read{
		width: calc(100vw - 40px);
		background-size: 100%;
		padding: 250px 0 0 0;
	}
	#products #product_read .wrp{
		width: calc(100vw - 40px);
	}

	#products #product_read .wrp h3{
		width: 50%;
		margin: 0 0 20px 0;
	}

	#products #product_read .wrp h3 img{
		width: 100%;
		height: auto;
	}

	#products #product_read .wrp p{
		width: 100%;
	}

	#products #product_read .wrp .detail{
		position: relative;
		bottom: unset;
		right: unset;
		margin: 20px 0 0 0;
	}

	#products #fbox{
		width: calc(100vw - 40px);
		margin: 50px auto 25px auto;
	}

	#products #fbox + #product_gallery{
		margin-top: 0 !important;
	}

	#products #product_gallery,
	#rm005 #gal{
		margin: 50px 0 0 0;
		padding: 0 0 100px 0;
	}

	#products #product_gallery .wrp,
	#rm005 #gal .col2{
		width: calc(100vw - 40px);
	}

	#rm005 #gal .col2 div + div{
		margin: 0 0 15px 0;
	}

	#products #product_gallery .wrp .col2_l,
	#products #product_gallery .wrp .col2_r{
		flex-direction: column;
	}

	#products #product_gallery .wrp .col2_r{
		margin: 50px 0 0 0;
	}

	#rm001b #product_gallery .wrp .col2_r + .col2_l,
	#rm001b #product_gallery .wrp .col2_r{
		margin: 50px 0 0 0 !important;
	}

	#products #product_gallery .wrp .col2_l p,
	#products #product_gallery .wrp .col2_r p{
		margin: 5px 0 0 0;
		font-size: 1.3rem;
	}

	#products #product_gallery .wrp .col2_l .hf + .hf,
	#products #product_gallery .wrp .col2_r .hf + .hf{
		margin: 0 0 0 0;
	}

	#products #product_gallery .wrp .col2_l .gl_l,
	#products #product_gallery .wrp .col2_r .gl_r{
		width: 100%;
		margin: 0 0 20px 0;
	}

	#products #product_gallery .wrp .col2_l .gl_r,
	#products #product_gallery .wrp .col2_r .gl_l{
		width: 100%;
		display: flex;
		display: -webkit-flex;
		justify-content: space-between;
	}

	#products #product_gallery .wrp .col2_l .gl_r .hf,
	#products #product_gallery .wrp .col2_r .gl_l .hf{
		width: 47%;
	}

	#products #product_gallery .wrp .col2_r .gl_r{
		margin: 20px 0 0 0;
	}

	#products #product_gallery .wrp .col2_r .gl_l{
		margin: 20px 0 0 0;
		order: 2;
	}
	#products #product_gallery .wrp .col2_r .gl_r{
		margin: 0 0 0 0;
		order: 1;
	}
	
	#products .feature{
		margin: 50px 0 0 0;
	}

	#products .feature + .feature{
		margin: 20px 0 0 0;
	}

	#products .feature2{
		margin: 60px 0 0 0;
		padding: 0 0 100px 0;
	}

	#products #artist{
		margin: 100px 0 0 0;
		padding: 0 0 80px 0;
	}

	#products #artist .wrp{
		width: calc(100vw - 40px);
	}

	#products #artist .wrp .col2{
		flex-direction: column;
	}

	#products #artist .wrp .col2 .image{
		width: 40%;
		margin: 0 auto 20px auto;
	}

	#products #artist .wrp .col2 .text{
		width: 100%;
	}

	#products #artist .wrp .col2 .text .ttl{
		font-size: 1.2rem;
	}

	#products #artist .wrp .col2 .text .name{
		font-size: 2rem;
		line-height: 1.4;
	}
	
	#products #artist .wrp .col2 .text .roma{
		font-size: 1.3rem;
	}

	#products #artist .wrp .intro{
		margin: 20px 0 0 0;
	}

	/***************
	* news
	***************/
	#news main{
		margin: 55px 0 0 0;
	}

	#news #top_news{
		padding: 60px 0 80px 0;
	}

	#news main#newslist{
		margin: 55px 0 0 0;
		padding: 0;
	}
	
	#news #hero{
		margin: 55px 0 0 0;
	}

	#news #hero .movie {
		margin: 0 0 50px 0;
		height: 80px;
	}

	#news #hero .ttl_main{
		width: 73px;
		top: 40%;
		left:50%;
		-webkit-transform: translate(-50%, -40%);
		transform: translate(-50%, -40%);
	}
	
	#news #hero .main_img{
		position:absolute;
		width: 70%;
		top: 80%;
		left:50%;
		-webkit-transform: translate(-50%, 0);
		transform: translate(-50%, 0);
		z-index: 30;
	}

	#news.w700 #hero .main_img{
		position:absolute;
		width: 85%;
		top: 90%;
		left:50%;
		-webkit-transform: translate(-50%, 0);
		transform: translate(-50%, 0);
		z-index: 30;
	}

	#news #news_detail{
		padding: 170px 0 80px 0;
	}

	#news .news0705{
		padding-top: 180px !important;
	}

	#news.w700 #news_detail{
		padding: 120px 0 80px 0;
	}

	#news #news_detail .wrp{
		width: calc(100vw - 40px);
	}

	#news #news_detail .wrp h3{
		margin: 5px 0 20px 0;
		font-size: 1.8rem;
	}

	.back_btn{
		margin-top: 60px;
	}

	/***************
	* insta
	***************/

	.insta{
		padding: 80px 0;
	}

	.insta .wrp{
		width: calc(100vw - 40px);
	}
}





















}
