@charset "utf-8";

/*================================
		PC & SP
================================*/
html,body{
	height: 100%;
}
img{
	border:none;
	vertical-align:bottom;
}
a{
	text-decoration: none;
	color: #333;
}
.marker{
	background: linear-gradient(transparent 60%, #0bfeaa 60%);
}
.article .content a{
	background: linear-gradient(transparent 60%, #0bfeaa 60%);
}
.over{
	transition: -webkit-opacity .5s ease;
	transition: opacity .5s ease;
}
.over:hover{
	opacity: 0.4;
}

.oswald{
	font-family: 'Oswald',"游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", sans-serif;
}
.libre{
	font-family: 'Libre Baskerville', serif;
}
.roboto{
	font-family: 'Roboto', sans-serif;
}

/*================================
		for PC
================================*/
@media screen and (min-width: 961px) {
	.is-pc{
		display: block !important;
	}
	.is-sp{
		display: none !important;
	}

}



/*================================
		body headerなど
================================*/
body{
	font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", sans-serif;
	font-weight: 500;
	font-size: 14px;
	color: #000;
}
/*--------------------------------------
	 header 	
--------------------------------------*/
header h1{
	margin: 15px 0 0;
	text-align: center;
}
header h1 img{
	width: 60%;
}
header > p{
	transform: rotate(-90deg);
	position: absolute;
	top: 95%;
	width: 220px;
	left: 22px;
	transform-origin: left top;
}
/* ヘッダー */
header{
	position: fixed;
	z-index: 200;
	width: 60px;
	height: 100%;
	background: #f4f4f2;
	top: 0;
}

/* ハンバーガー */
.drawer-hamburger{
	z-index: 300;
	top: 30%;
}
.drawer-nav .drawer-menu{
	background: #9508f8;
}

/* メインコンテンツ */
main{
	display: block;
	margin: 0 270px 0 60px;
	padding: 20px;
	position: relative;
}
main:after{
	display: block;
	content: "";
	position: absolute;
	right: -270px;
	top: 0;
	height: 100%;
	width: 270px;
	background: #ebebeb;
}
main .inner{
	max-width: 960px;
	margin: 0 auto;
}
/* pagetopnavタグ */

main nav.pagetopnav{
	text-align: right;
	margin: 0 0 0px;
	line-height: 1.4em;
}
main nav.pagetopnav ul{
	font-weight: bold;
}
main nav.pagetopnav ul li{
	display: inline-block;
}
main nav.pagetopnav ul li:after{
	content: "|";
	color: #000;
}
main nav.pagetopnav ul li:last-child:after{
	content: "";
}
main nav.pagetopnav ul li a{
	padding: 0 5px;
}
main nav.pagetopnav ul li a:hover{
	border-bottom: 1px solid #000;
}
/* breadcrumbsタグ */

main .breadcrumbs{
	padding: 10px 0;
	font-weight: 600;
	line-height: 1.4em;
}
main .breadcrumbs a:hover{
	border-bottom: 1px solid #000;
}



/*================================
		for SP
================================*/
@media screen and (max-width: 960px) {
	.is-pc{
		display: none !important;
	}
	.is-sp{
		display: block !important;
	}

	/* ヘッダー　*/
	header{
		width: 50px;
		background: none;
	}
	main{
		margin: 0 10px 10px;
		padding: 0 10px 10px;
	}
	main:after{
		display: none;
	}
	/* pagetopnavタグ */
	main nav.pagetopnav{
		padding: 10px 0 10px 40px;
		min-height: 40px;
	}
	main nav.pagetopnav ul li a{
		font-size: 0.6rem;
	}
	/* breadcrumbsタグ */
	main .breadcrumbs{
		font-size: 0.8em;
		padding: 0 0 10px;
	}
	/* drawer-hamburgerタグ */
	.drawer-hamburger{
		top: 0;
		background: #fff;
		padding: 12px 10px 22px;
	}
}
/*================================
		drawer
================================*/
.drawer-nav{
	width: 50%;
	height: auto;
	min-height: 100%;
}
.drawer--left .drawer-nav{
	left: -50%;
}
.drawer-nav .drawer-menu{
/*
	overflow-y: scroll;
	height: 100%;
	position: absolute;
*/
	overflow: hidden;
	width: 100%;
}
.drawer-nav .drawer-menu .nav_left{
	width: 50%;
	float: left;
	background: #f0f0ed;
	box-sizing: border-box;
	padding: 60px 60px;
	min-height: 100%;
}
.drawer-nav .drawer-menu .nav_right{
	width: 50%;
	float: left;
	background: #9508f8;
	box-sizing: border-box;
	padding: 60px 60px;
}
.drawer-nav .drawer-menu h3{
	font-size: 14px;
	margin: 0 0 30px;
}
.drawer-nav .drawer-menu .nav_right h2{
	font-size: 18px;
	margin: 0 0 20px;
	text-align: center;
}
.drawer-nav .drawer-menu .nav_right p{
	margin: 0 0 50px;
	font-weight: bold;
}
.drawer-nav .drawer-menu .nav_right p a{
	color: #fff;
}
.drawer-nav .drawer-menu .nav_right p a span i{
	font-size: 14px;
}
.drawer-nav .drawer-menu .nav_right h3{
	text-align: center;
	font-size: 16px;
	letter-spacing: 0.2em;
}
.drawer-nav .drawer-menu .nav_right h4{
	margin: 0 0 0px;
}
.drawer-nav .drawer-menu .nav_right h4 a{
	color: #fff;
}
.drawer-nav .drawer-menu .nav_right ul{
}
.drawer-nav .drawer-menu .nav_right ul li a{
	color: #fff;
	font-size: 12px;
	letter-spacing: 0.1em;
}
.drawer-nav .drawer-menu ul{
	list-style-type: none;
	margin: 0px 0 30px 10px;
	font-size: 12px;
}
.drawer-nav .drawer-menu ul.category{
	font-weight: bold;
	font-size: 13px;
}
.drawer-nav .drawer-menu ul li{
	line-height: 2.1em;
}
.drawer-nav .drawer-menu ul li.bold{
	font-weight: bold;
}
.drawer-nav .drawer-menu a{
	transition: opacity 0.5s ease;
}
.drawer-nav .drawer-menu a:hover{
	opacity: 0.4;
}
.drawer-hamburger-icon, .drawer-hamburger-icon:before, .drawer-hamburger-icon:after{
	height: 1px;
}
/*================================
		for SP
================================*/
@media screen and (max-width: 960px) {
	.drawer-nav{
		width: 80%;
	}
	.drawer--left .drawer-nav{
		left: -80%;
	}
	.drawer-nav .drawer-menu .nav_left{
		width: 100%;
		float: none;
		padding: 20px 20px 20px 60px;
	}
	.drawer-nav .drawer-menu .nav_right{
		width: 100%;
		float: none;
		padding: 20px 20px 20px 60px;
	}
	.drawer-nav .drawer-menu{
		overflow: auto;
	}
		.drawer-hamburger-icon, .drawer-hamburger-icon:before, .drawer-hamburger-icon:after{
		height: 2px;
	}
	.drawer-nav .drawer-menu h3{
		margin: 0 0 20px;
	}
	.drawer-nav .drawer-menu ul{
		margin: 0 0 20px;
	}

}

/*-------------------------------
		 swiper 		
-------------------------------*/
.swiper-wrapper li h3{
	font-size: 16px;
	margin: 0 0 10px;
}
}
.swiper-container {
		width: 100%;
		height: auto;
}
main .blog p.txt{
	margin: 0 0 20px;
}
main .section h2{
	margin: 0 0 15px 0;
	text-align: left;
}
main .category{
	font-weight: 600;
	font-size: 0.9rem;
	line-height: 1.2em;
	margin: 0 0 20px 0;
	text-align: left;
}
main .timeandname{
	font-weight: 600;
	font-size: 0.9rem;
	text-align: right;
}


.swiper-button-prev, .swiper-container-rtl .swiper-button-next{
	background-color: rgba(0,0,0,0.5);
	width: 40px;
	height: 100%;
	top: 0;
	left: 0;
	margin-top: 0;
}
.swiper-button-next, .swiper-container-rtl .swiper-button-prev{
	background-color: rgba(0,0,0,0.5);
	width: 40px;
	height: 100%;
	top: 0;
	right: 0;
	margin-top: 0;
}
.swiper-button-next.swiper-button-disabled, .swiper-button-prev.swiper-button-disabled{
	opacity: 0;
}
.swiper-button-next, .swiper-container-rtl .swiper-button-prev{
	background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2027%2044'%3E%3Cpath%20d%3D'M27%2C22L27%2C22L5%2C44l-2.1-2.1L22.8%2C22L2.9%2C2.1L5%2C0L27%2C22L27%2C22z'%20fill%3D'%23ffffff'%2F%3E%3C%2Fsvg%3E");
}
.swiper-button-prev, .swiper-container-rtl .swiper-button-next{
	background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2027%2044'%3E%3Cpath%20d%3D'M0%2C22L22%2C0l2.1%2C2.1L4.2%2C22l19.9%2C19.9L22%2C44L0%2C22L0%2C22L0%2C22z'%20fill%3D'%23ffffff'%2F%3E%3C%2Fsvg%3E");
}


/*---------------------------------
	 タイトル 	
---------------------------------*/
main .title{
	position: relative;
	margin: 0 0 60px;
	background-color: #000;
	background-size: cover;
	background-position: center center;
	position: relative;
}
main .title h2{
	position: absolute;
	z-index: 5;
	text-align: center;
	color: #fff;
	/*width: 50%;*/
}
main .title .caption{
	/*height: 400px;*/
	overflow: hidden;
	position: relative;
}
main .title .caption img{
	width: 100%;
	height: auto;
/*	position: absolute;
	left: 50%;
	transform: translateX(-50%);*/
}
main .title_1{
	height: 400px;
}
main .title_1 h2{
	font-size: 1.2rem;
	padding: 25px 50px;
	border: 5px solid #fff;
	line-height: 1.5em;
	top: 50%;
	left: 50%;
	transform: translateX(-50%) translateY(-50%);
	-webkit-transform: translateX(-50%) translateY(-50%);
}
main .title_1 h2 span{
	font-size: 2.2rem;
}

main .title_2{
}
main .title_2 h2{
	font-size: 16px;
	line-height: 1.5em;
	border: 5px solid #fff;
	top: 5%;
	left: 3%;
	padding: 14px 20px;
}
main .title_2 h2 span{
	font-size: 24px;
}

main .title_3{
	height: 400px;
}
/*
main .title_3:before{
	position: absolute;
	content: "";
	width: 100%;
	height: 100%;
	background: rgba(0,0,0,0.3);
}
*/
main .title_3 h2{
	font-size: 16px;
	line-height: 1.5em;
	border: 5px solid #fff;
	top: 5%;
	left: 3%;
	padding: 14px 20px;
}
main .title_3 h2 span{
	font-size: 24px;
}
main .title_3 h3{
	position: absolute;
	text-align: center;
	font-size: 30px;
	color: #fff;
	top: 50%;
	left: 50%;
	transform: translateX(-50%) translateY(-50%);
	z-index: 5;
	width: 100%;
}

main .title_4{
	height: 400px;
}
main .title_4 h2{
	font-size: 1.8rem;
	padding: 70px 0;
	color: #fff;
	line-height: 1.5em;
	width: 400px;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translateX(-50%) translateY(-50%);
	padding: 25px 0;
}
main .title_4 h2 span{
	font-size: 18px;
}
main .title_5{
	height: 300px;
}
main .title_5 .caption{
/*	height: 200px;*/
	margin: 0 0 60px;
}
main .title_5 h2{
	font-size: 1.8rem;
	padding: 70px 0;
	color: #000;
	line-height: 1.5em;
	width: 100%;
	top: 50%;
	left: 50%;
	transform: translateX(-50%) translateY(-50%);
	padding: 25px 0;
}
main .title_5 h2 span{
	font-size: 18px;
}
main .title_6{
	height: 540px;
}
main .title_6 .caption{
	overflow: hidden;
	position: relative;
}
main .title_6 .caption img{/*
	position: absolute;
	left: 50%;
	transform: translateX(-50%)*/;
}
main .title_6 h2{
	font-size: 16px;
	line-height: 1.5em;
	border: 5px solid #fff;
	top: 5%;
	left: 3%;
	padding: 14px 20px;
	letter-spacing: 0.1em;
}
main .title_6 h2 span{
	font-size: 24px;
}
main .title_6 h3{
	color: #fff;
	background: #000;
	padding: 10px 35px;
	position: absolute;
	bottom: 50px;
	right: 0;
	z-index: 5;
	font-size: 12px;
}
main .title_6 h2.title{
	color: #000;
	font-size: 66px;
	position: absolute;
	top: 50%;
	left: 15%;
	transform:	translateY(-50%);
	border: none;
	line-height: 1.1em;
	margin: 0;
}
main .title_6 h2.title span{
	font-size: 48px;
}
main .title_6 iframe{
	width: 100%;
	height: 540px;
}

/*================================
		for SP
================================*/
@media screen and (max-width: 960px) {
	main .title{
		margin: 0 0 30px;
	}
	main .title h2{
		width: 70% !important;
	}
	main .title_1{
		height: 50vw;
	}
	main .title_1 h2{
		font-size: 0.9rem;
		padding: 10px 20px;
		border: 3px solid #fff;
		line-height: 1em;
	}
	main .title_1 h2 span{
		font-size: 1.2rem;
	}
	main .title_2 h2{
		font-size: 0.8rem;
		border: 3px solid #fff;
		top: 50%;
		left: 50%;
		transform: translateX(-50%) translateY(-50%);
		text-shadow:black 2px 0px 2px, black -2px 0px 2px,
								black 0px -2px 2px, black -2px 0px 2px,
								black 2px 2px 2px, black -2px 2px 2px,
								black 2px -2px 2px, black -2px -2px 2px,
								black 1px 2px 2px, black -1px 2px 2px,
								black 1px -2px 2px, black -1px -2px 2px,
								black 2px 1px 2px, black -2px 1px 2px,
								black 2px -1px 2px, black -2px -1px 2px,
								black 1px 1px 2px, black -1px 1px 2px,
								black 1px -1px 2px, black -1px -1px 2px;
	}
	main .title_3{
		height: 50vw;
	}
	main .title_3 h2{
		font-size: 0.8rem;
		padding: 5px 10px;
		top: 10%;
		left: 50%;
		transform: translateX(-50%);
		border: 2px solid #fff;
	}
	main .title_3 h2 span{
		font-size: 1rem;
	}
	main .title_3 h3{
		font-size: 1.1rem;
		top: 55%;
		transform: translateX(-50%) translateY(0);
	}
	main .title_4{
		height: 50vw;
	}
	main .title_5{
		height: 40vw;
	}
	main .title_5 h2{
		font-size: 1rem;
	}
	main .title_6{
		height: 50vw;
	}
	main .title_6 h2{
		top: 50%;
		left: 50%;
		transform: translateX(-50%) translateY(-50%);
		text-shadow:black 2px 0px 2px, black -2px 0px 2px,
								black 0px -2px 2px, black -2px 0px 2px,
								black 2px 2px 2px, black -2px 2px 2px,
								black 2px -2px 2px, black -2px -2px 2px,
								black 1px 2px 2px, black -1px 2px 2px,
								black 1px -2px 2px, black -1px -2px 2px,
								black 2px 1px 2px, black -2px 1px 2px,
								black 2px -1px 2px, black -2px -1px 2px,
								black 1px 1px 2px, black -1px 1px 2px,
								black 1px -1px 2px, black -1px -1px 2px;

	}
	main .title_6 h3{
		padding: 10px 20px;
		bottom: 0;
	}
	main .title_6 iframe{
		height: 50vw;
	}
}

/*---------------------------------
	sns-tag
---------------------------------*/
main .section .tag-sns{
	overflow: hidden;
	margin: 40px 0 0;
}
main .section .tag-sns .sns{
	width: calc(100% - 560px);
	float: left;
	text-align: center;
	height: 116px;
}
main .section .tag-sns .tag{
	background: url(../images/bg_dotted.png) left top;
	min-height: 116px;
	padding: 30px;
	box-sizing: border-box;
	float: left;
	width: 560px;
}
main .section .tag-sns .tag ul{
	list-style-type: none;
	background: url(../images/icon_tag.png) no-repeat left top;
	padding: 0 0 0 50px;
}
main .section .tag-sns .tag ul li{
	display: inline-block;
	margin: 0 10px 0 0;
	height: 22px;
	line-height: 22px;
	font-weight: 600;
}
main .section .tag-sns .tag ul li:after{
	content: ",";
	padding: 0 0 0 5px;
}
main .section .tag-sns .tag ul li:last-child:after{
	content: "";
}
main .section .tag-sns .sns p.share{
	text-align: center;
	font-size: 18px;
	position: relative;
}
main .section .tag-sns .sns p.share:before{
	content: "";
	width: 2px;
	height:24px;
	display: block;
	transform: rotate(-28deg);
	background: #000;
	top: -4px;
	left: 162px;
	position: absolute;
}
main .section .tag-sns .sns p.share:after{
	content: "";
	width: 2px;
	height:24px;
	display: block;
	transform: rotate(28deg);
	background: #000;
	top: -4px;
	right: 162px;
	position: absolute;
}

main .section .tag-sns .sns p.icon span{
	display: block;
	border-radius: 50%;
	border: 5px solid #000;
	width: 40px;
	height: 40px;
}

main .section .tag-sns .sns p.icon{
	display: inline-block;
	font-size: 28px;
	line-height: 40px;
	padding: 20px 4px;
}
/*================================
		for SP
================================*/
@media screen and (max-width: 960px) {
	main .section .tag-sns .tag{
		padding: 10px;
		float: none;
		width: 100%;
		min-height: 0;
		margin: 0 0 30px;
	}
	main .section .tag-sns .tag ul{
		background: url(../images/icon_tag.png) no-repeat center top;
		padding: 30px 0 0 0;
	}
	main .section .tag-sns .sns{
		width: 100%;
		float: none;
		height: auto;
		margin: 0 0 0px;
	}
	main .section .tag-sns .sns p.share:before{
		left: 125px;
	}
	main .section .tag-sns .sns p.share:after{
		right: 125px;
	}
}


/*-------------------------------------------
		 btn-sns 
-------------------------------------------*/

main .btn-sns ul{
	list-style-type: none;
	text-align: center;
}
main .btn-sns ul li{
	display: inline-block;
	margin: 0 5px;
}
main .btn-sns ul li a{
	display: block;
	padding: 10px 30px 10px 60px;
	border-radius: 5px;
	text-align: center;
	color: #fff;
	height: 30px;
	line-height: 30px;
}
main .btn-sns ul li.btn-twitter a{
	background: #00a8ba url(../images/icon_twitter.png) no-repeat left 20px top 10px;
}
main .btn-sns ul li.btn-facebook a{
	background: #00628c url(../images/icon_facebook.png) no-repeat left 20px top 10px;
}
main .btn-sns ul li.btn-bookma a{
	background: #009bc5 url(../images/icon_bookma.png) no-repeat left 20px top 10px;
}
/* SP用 */
@media screen and (max-width: 960px) {
	main .btn-sns ul li{
		display: block;
		margin: 0 0 10px;
	}
}


/*---------------------------------
	section
---------------------------------*/

main .section{
	margin: 0 0 60px;
}
main .section h2{
	margin: 0 0 40px 0;
	font-weight: 600;
	text-align: center;
	font-size: 2.4rem;
	line-height: 1.4em;
}

main .section p.txt{
	font-weight: 600;
	line-height: 1.9em;
	margin: 0 0 20px 0;
}
main .section img{
	max-width: 100%;
	height: auto;
}
main .content div{
	max-width: 100% !important;
}

/*================================
		for SP
================================*/
@media screen and (max-width: 960px) {
	main .section{
		margin: 0 0 30px;
	}
	main .section h2{
		margin: 0 0 30px;
		font-size: 1.2rem;
	}
	main .section p.txt{
		font-size: 0.8rem;
	}
}







/*---------------------------------
	tag
---------------------------------*/

main .tag{
	background: url(../images/bg_dotted.png) left top;
	padding: 30px;
	box-sizing: border-box;
}
main .tag ul{
	list-style-type: none;
	background: url(../images/icon_tag.png) no-repeat left top;
	padding: 0 0 0 50px;
}
main .tag ul li{
	display: inline-block;
	margin: 0 10px 0 0;
	height: 22px;
	line-height: 22px;
	font-weight: 600;
}
main .tag ul li:after{
	content: ",";
	padding: 0 0 0 5px;
}
main .tag ul li:last-child:after{
	content: "";
}

/*================================
		for SP
================================*/
@media screen and (max-width: 960px) {
	main .tag ul{
		list-style-type: none;
		background: url(../images/icon_tag.png) no-repeat center top;
		padding: 30px 0 0 0;
	}
}



/*---------------------------------
	blog_lists
---------------------------------*/
main .blog{
	text-align: center;
}
main .blog p.txt{
	display: inline-block;
	font-weight: 600;
	border-bottom: 2px solid #000;
	margin: 0 0 20px;
}
main .blog ul{
	list-style-type: none;
}
main .blog ul li figure{
	position: relative;
	margin: 0 0 20px;
	height: 20vw;
	max-height: 160px;
	overflow: hidden;
	background: #ebebeb;
}
main .blog ul li figure img{
	position: absolute;
	top: 50%;
	left: 50%;
	width: auto;
	height: auto;
	min-width: 100%;
	max-width: 100%;
	transform: translateX(-50%) translateY(-50%);
}
main .blog ul li iframe{
	width: 100%;
	height: 20vw;
	max-height: 160px;
	position: absolute;
	top: 40px;
	left: 0px;
	padding: 0px 10px 0;
	box-sizing: border-box;
}
main .blog ul li.swiper-slide iframe{
	top: 0;
	padding: 0;
}


main .blog_lists > ul{
	margin: 0 0 50px;
	text-align: center;
	overflow: hidden;
}
main .blog_lists > ul > li{
	width: calc(33.3% - 15px);
	float: left;
	box-sizing: border-box;
	padding: 40px 10px 20px;
	margin: 30px 7px 30px;
	list-style-type: none;
	position: relative;
	vertical-align: top;
}
main .blog_lists > ul > li.new:before{
	content: url(../images/icon_new_mini.png);
	position: absolute;
	z-index: 1;
	top: 0px;
	left: 50%;
	transform: translateX(-50%);
	-webkit-transform: translateX(-50%);
}
main .blog_lists > ul > li h2{
	font-weight: 600;
	font-size: 1.1rem;
	line-height: 1.2em;
	margin: 0 0 20px 0;
}
main .blog_lists > ul > li > .tag{
	padding: 10px;
	min-height: 0;
	text-align: right;
}
main .blog_lists > ul > li > .tag li{
	font-size: 0.8rem;
	margin: 0;
}
main .blog_lists > ul > li:before{
	content: "";
	width: 100%;
	height: 4px;
	background: #000;
	position: absolute;
	top: 0;
	left: 0px;
}
main .blog_lists > ul > li:after{
	content: "";
	width: 100%;
	height: 4px;
	background: #000;
	position: absolute;
	bottom: 0;
	left: 0px;
}

main .blog_lists > ul > li .category{
	font-weight: 600;
	font-size: 0.8rem;
	line-height: 1.2em;
	margin: 0 0 20px 0;
	text-align: left;
}
main .blog_lists > ul > li .timeandname{
	font-weight: 600;
	font-size: 0.9rem;
	text-align: right;
}
main .blog_lists > ul > li .shopname{
	text-align: right;
	font-size: 0.8rem;
	margin: 0px;
}
main .blog_lists > ul > li .place{
	font-size: 0.8rem;
	text-align: right;
	margin:0 0 10px;	
	font-weight: 600;
}

main .blog_lists > ul > li .tagWrapper{
	text-align: right;
}
main .blog_lists > ul > li .tagWrapper .tag{
	display: inline-block;
	padding: 5px;
}
main .blog_lists > ul > li .tagWrapper .tag ul li{
	font-size: 0.8rem;
}



/*================================
		for SP
================================*/
@media screen and (max-width: 960px) {
	main .section.tag{
		padding: 15px;
	}
	main .section.tag ul li{
		font-size: 0.8rem;
	}
	main .blog_lists > ul{
		margin: 30px 0;
	}
	main .blog_lists > ul > li{
		width: calc(50% - 15px);
		float: left;
		box-sizing: border-box;
		padding: 40px 10px 20px;
		margin: 30px 7px 30px;
		list-style-type: none;
		position: relative;
		vertical-align: top;
	}
	main .blog_lists > ul > li:before,
	main .blog_lists > ul > li:after{
		left: 50%;
		height: 3px;
		transform: translateX(-50%);
		
	}
	main .blog ul li figure{
		height: 24vw;
		max-height: 320px;
	}
	main .blog ul li iframe{
		height: 24vw;
		max-height: 320px;
		padding: 0;
	}

	main .blog_lists > ul > li .category{
		margin: 0 0 10px;
		font-size: 0.8rem;
	}
	main .blog_lists > ul > li .timeandname{
		font-size: 0.8rem;
	}
	main .blog_lists > ul > li h2{
		font-size: 1rem;
	}
}
@media screen and (max-width: 480px) {
	main .blog_lists > ul > li{
		width: 100%;
		padding: 40px 0;
		margin: 10px 0;
		float: none;
	}
	main .blog ul li figure{
		height: 40vw;
		max-height: 320px;
	}
	main .blog ul li iframe{
		height: 40vw;
		max-height: 320px;
		padding: 0;
	}
}


/*---------------------------------
	 btn_more 	
---------------------------------*/
main p.btn-more{
	position: relative;
}
main p.btn-more a{
	display: block;
	color: #fff;
	background: #000;
	margin: 60px auto 110px;
	max-width: 300px;
	height: 50px;
	line-height: 50px;
	font-size: 18px;
	text-align: center;
	box-sizing: border-box;
}
main p.btn-more i{
	position: absolute;
	top: 80px;
	left: 50%;
	margin: 0 0 0 -10px;
	font-size: 25px;
}



/*================================
		for SP
================================*/
@media screen and (max-width: 960px) {
}






/*---------------------------------
	 banner_bottom 	
---------------------------------*/
main .banner_bottom ul.three_column{
	list-style-type: none;
	text-align: center;
}

main .banner_bottom ul.three_column li{
	display: inline-block;
	background-size: cover;
	position: relative;
	padding: 0 0px;
	width: calc(33.3% - 15px);
	box-sizing: border-box;
	margin: 0 5px 15px;

}
main .banner_bottom ul.three_column li.new:after{
	content: url(../images/icon_new.png);
	z-index: 50;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translateX(-50%) translateY(-165%);
	-webkit-transform: translateX(-50%) translateY(-165%);
}

main .banner_bottom ul.three_column li a{
	display: block;
	width: 100%;
	height: 100%;
	color: #fff;
	font-size: 18px;
	position: relative;
	overflow: hidden;
}

main .banner_bottom ul.three_column li a:before{
	content: "";
	display: block;
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	background: rgba(0,0,0,0.3);
	transition: all 0.3s ease;
	z-index: 1;
}
main .banner_bottom ul.three_column li a:hover:before{
	background: rgba(0,0,0,0.6);
}
main .banner_bottom ul.three_column li a figure{
	position: relative;
	height: 300px;
	background: #000;
}
main .banner_bottom ul.three_column li a figure img{
	transition: all 0.3s ease;
	width: 100%;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translateY(-50%) translateX(-50%);
	-webkit- transform: translateY(-50%) translateX(-50%);
}
main .banner_bottom ul.three_column li a:hover figure img{
	position: absolute;
	top: 50%;
	left: 50%;
	transform: scale(1.1) translateY(-50%) translateX(-50%);
	-webkit- transform: scale(1.1) translateY(-50%) translateX(-50%);
}
main .banner_bottom ul.three_column li a figure figcaption{
	display: block;
	width: 80%;	
	border: 5px solid #fff;
	text-align: center;
	position: absolute;
	top: 30%;
	left: 50%;
	transform: translateY(0%) translateX(-50%);
	-webkit- transform: translateY(0%) translateX(-50%);
	z-index: 5;
}

main .banner_bottom ul.three_column li a figure figcaption span{
	display: inline-block;
	padding: 10px 10px;
	line-height: 1.6em;
}

main .banner_bottom ul.three_column li a figure p{
	position: absolute;
	font-size: 12px;
	line-height: 1.5em;
	text-align: center;
	color: #fff;
	top: 210px;
	left: 0;
	right: 0;
	width: 90%;
	z-index: 10;
	margin: 0 auto;
}

/*================================
		for SP
================================*/
@media screen and (max-width: 960px) {
	main .banner_bottom ul.three_column li{
		width: 100%;
		max-width: 640px;
		margin: 0 0 10px; 
		padding: 0;
	}
	main .banner_bottom ul.three_column li.new:after{
		top: 42%;
		content: url(../images/icon_new_mini.png);
	}
	main .banner_bottom ul.three_column li a figure{
		height: 50vw;
	}
	main .banner_bottom ul.three_column li a figure figcaption span{
		font-size: 1rem;
	}
	main .banner_bottom ul.three_column li a figure figcaption{
		border: 2px solid #fff;
	}
	main .banner_bottom ul.three_column li a figure p{
		top: 60%;
		left: 50%;
		transform: translateX(-50%);
	}


}


/*---------------------------------
	 aside 	
---------------------------------*/
aside{
	position: absolute;
	right: 0;
	top: 0;
	width: 270px;
	box-sizing: border-box;
	padding: 20px 40px;
	background: #ebebeb;
}
aside .iconWrapper{
	overflow: hidden;
}
aside .iconWrapper i{
	font-size: 1.8rem;
	width: 26px;
	float: left;
	color: #6f6f6f;
	margin: 0 5px 0 0;
}
aside .iconWrapper p{
	width: 37px;
	float: right;
}
aside form p.search{
	height: 44px;
	margin: 20px auto;
}
aside form p.search input{
	background: #ebebeb;
	display: block;
	width: 100%;
	border: 2px solid #000;
}
aside form .search{
	position: relative;
}
aside form .search input[type="text"]{
	position: absolute;
	top: 0;
	padding: 5px 10px;
	box-sizing: border-box;
	height: 100%;
}
aside form .search input[type="image"]{
	position: absolute;
	top: 2px;
	right: 2px;
	width: 40px;
	border: none;
}
aside .pickup{
	margin: 0 0 40px 0;
}
aside .pickup h2{
	font-size: 1.2rem;
	color: #ebebeb;
	width: 120px;
	height: 30px;
	line-height: 30px;
	background: #000;
	text-align: center;
	margin: 0 auto;
	position: relative;
}
aside .pickup h2:after{
	content: "";
	position: absolute;
	display: block;
	background: #000;
	width: 10px;
	height: 10px;
	top: 25px;
	left: 54px;
	transform: rotate(45deg);
}
aside .pickup .pickup_contents > h3{
  text-align: center;
  margin: 20px 0 0;
  border-top: 2px solid #666;
  border-bottom: 2px solid #666;
  padding: 10px 0;
}
aside .pickup .pickup_contents > div{
	margin: 20px 0 20px;
	padding: 0 0 20px;
	border-bottom: 1px dotted #CCC;
}
aside .pickup .pickup_contents > div:last-child{
	border-bottom: none;
	margin: 20px 0 0px;
	padding: 0 0 0px;
}
aside .pickup p.sample{
	margin: 0px 0 5px;
	font-weight: bold;
}
aside .pickup p.category{
	display: inline-block;
	position: relative;
	font-size: 12px;
	margin: 0px 0 5px;
}
aside .pickup p.category:after{
	content: "|";
	color: #000;
	padding: 0 10px;
}
aside .pickup p.date{
	display: inline-block;
	font-size: 12px;
}
aside .entry h2{
	font-size: 1.2rem;
	color: #000;
	width: 120px;
	height: 30px;
	line-height: 30px;
	background: #08ffab;
	text-align: center;
	margin: 20px auto;
	position: relative;
}
aside .entry h2:after{
	content: "";
	display: block;
	width: 10px;
	height: 10px;
	position: absolute;
	transform: rotate(45deg);
	background: #08ffab;
	top: 25px;
	left: 54px;

}
aside .entry .entry01{
	list-style-type: none;
}
aside .entry .entry01 h3{
	text-align: center;
	font-weight: 600;
	padding: 15px 0 5px;
}

aside .entry .entry01 > li{
	border: 2px solid #000;
	margin:0 0 10px 0;
	background: #fff;
	line-height: 1.2;
}
aside .entry .entry01 > li > a{
	display: block;
	text-align: center;
	font-weight: 600;
	padding: 15px 10px 15px 0;
	position: relative;
}
aside .entry .entry01 > li > a i{
	position: absolute;
	top: 50%;
	right: 5px;
	font-size: 0.9rem;
	transform: translateY(-50%);
}
aside .entry .entry01 > li > .entry02{
	list-style-type: none;
}
aside .entry .entry01 > li > .entry02 > li > a{
	display: block;
	text-align: center;
	font-weight: 600;
	padding: 12px 5px 12px 0;
	position: relative;
}
aside .entry	.entry01 > li >.entry02 > li > a i{
	position: absolute;
	top: 12px;
	right: 8px;
}
aside .designstudio{
	margin: 40px 0;
}
aside .designstudio h2{
	font-size: 1.2rem;
	color: #000;
	height: 30px;
	line-height: 30px;
	text-align: center;
	margin: 0 auto;
}

aside .designstudio .bdw{
	background: #fff;
	margin: 10px 0;
}
aside .designstudio .bdw a{
	display: block;
	border: 2px solid #000;
	text-align: center;
	padding: 30px 0;
}
aside .designstudio .atmos{
	background: #fff;
}
aside .designstudio .atmos a{
	display: block;
	border: 2px solid #000;
	text-align: center;
	padding: 30px 0;
}

/*================================
		for SP
================================*/
@media screen and (max-width: 960px) {
	aside{
	position: static;
	height: auto;
	width: 100%;
}
}






/*---------------------------------
	 footer 	
---------------------------------*/
footer{
	margin: 0px 270px 0 70px;
	padding: 100px 20px 20px;
	position: relative;
}
footer .inner{
	max-width: 960px;
	margin: 0 auto;
}
footer:after{
	display: block;
	content: "";
	position: absolute;
	right: -270px;
	top: 0;
	height: 100%;
	width: 270px;
	background: #ebebeb;
}
footer h2{
	margin: 0 0 70px;
	text-align: center;
}
footer h3{
	font-size: 14px;
	margin: 0 0 30px;
}
footer h4{
	margin:	0 0 30px;
}
footer .footerboxWrapper{
	overflow: hidden;
}
footer .footerboxWrapper .footerbox{
	float: left;
	margin: 0 0 50px 50px;
}
footer .footerboxWrapper .footerbox:first-of-type{
	margin: 0;
	width: 170px;
}
footer .footerboxWrapper .footerbox .wslContainer{
	overflow: hidden;
}
footer .footerboxWrapper .footerbox .wslContainer .wslCategory{
	float: left;
	margin: 0 50px 0 0;
	width: 210px;
}
footer .footerboxWrapper .footerbox .wslContainer .wslCategory:last-of-type{
	margin: 0;
}
footer .footerboxWrapper .footerbox ul{
	list-style-type: none;
	margin: -20px 0 30px 10px;
	font-size: 12px;
}
footer .footerboxWrapper .footerbox ul.category{
	font-weight: bold;
	font-size: 13px;
}
footer .footerboxWrapper .footerbox ul li{
	line-height: 1.8em;
	margin: 0 0 10px;
}
footer .footerboxWrapper .footerbox ul li.bold{
	font-weight: bold;
}
footer a{
	transition: opacity 0.5s ease;
}
footer a:hover{
	opacity: 0.4;
}
footer .copyright{
	text-align: center;
}

/*================================
		for SP
================================*/
@media screen and (max-width: 960px) {
	footer{
		margin: 0px;
		padding: 60px 20px 20px;
	}
	footer:after{
		display: none;
	}
	footer h2{
		margin: 0 0 40px;
	}
	footer h3{
		border-bottom: 1px dotted #ccc;
		padding: 0 0 10px;
	}
	footer .footerboxWrapper .footerbox{
		float: none;
		margin: 0 0 50px 0;
 		text-align: center;
	}
	footer .footerboxWrapper .footerbox:first-of-type{
		width: auto;
	}
	footer .footerboxWrapper .footerbox .wslContainer .wslCategory{
		float: none;
		margin: 0 0 0px 0px;
		width: auto;
	}
	footer .footerboxWrapper .footerbox ul{
		margin: -20px 0 30px 0;
	}
