@charset "utf-8";

/*==============================================

	styling for bootleg
	LastUpdate 2019/02/20

==============================================*/

html,body,p,ol,ul,li,dl,dt,dd,blockquote,figure,fieldset,legend,textarea,pre,iframe,hr,h1,h2,h3,h4,h5,h6{margin:0;padding:0}h1,h2,h3,h4,h5,h6{font-size:100%;font-weight:normal}ul{list-style:none}button,input,select,textarea{margin:0}html{box-sizing:border-box}*,*:before,*:after{box-sizing:inherit}img,embed,iframe,object,audio,video{height:auto;max-width:100%}iframe{border:0}table{border-collapse:collapse;border-spacing:0}td,th{padding:0;text-align:left}

* {
	font-style: normal;
	-webkit-tap-highlight-color:rgba(0,0,0,0);
	box-sizing: border-box;
	word-wrap: break-word;
}

input:not([type="radio"]):not([type="checkbox"]):not([type="submit"]), button, textarea, select {
	margin: 0;
	padding: 0;
	background: none;
	border: none;
	border-radius: 0;
	outline: none;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	box-sizing: border-box;
}

input:not([type="radio"]):not([type="checkbox"]):not([type="submit"]), button, textarea, select {
	display: block;
	width: 100%;
	padding: 5px 5px;
	font-size: 16px;
	font-family: 'Helvetica Neue', Helvetica, Arial, YuGothic, 'Yu Gothic', '游ゴシック体', '游ゴシック', 'ヒラギノ角 ProN W3', 'Hiragino Kaku Gothic ProN', 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'ＭＳ ゴシック', 'MS Gothic', sans-serif;
	border: 1px solid #e6e6e6;
}

input[type="submit"]{
	display: inline-block;
	width: 100%;
	max-width: 360px;
	margin-right: auto;
	margin-left: auto;
	padding: 0;
	height: 60px;
	border: 1px solid #000;
	line-height: 58px;
	background: #fff;
	font-family: 'Helvetica Neue', Helvetica, Arial, YuGothic, 'Yu Gothic', '游ゴシック体', '游ゴシック', 'ヒラギノ角 ProN W3', 'Hiragino Kaku Gothic ProN', 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'ＭＳ ゴシック', 'MS Gothic', sans-serif;
	font-size: 16px;
}

main,time {
	display: block;
}

body {
	background: none;
	min-width: 1140px;
	width: 100%;
	overflow-x: hidden;
	font-size: 14px;
	font-family: 'Helvetica Neue', Helvetica, Arial, YuGothic, 'Yu Gothic', '游ゴシック体', '游ゴシック', 'ヒラギノ角 ProN W3', 'Hiragino Kaku Gothic ProN', 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'ＭＳ ゴシック', 'MS Gothic', sans-serif;	
	color: #000;
	line-height: 2;
	letter-spacing: .1em;
}

body.fix {
	overflow: hidden;
}

.serif {
	font-family: 'Times New Roman', YuMincho, 'Yu Mincho', 游明朝体, '游明朝', 'ヒラギノ明朝 ProN', 'Hiragino Mincho ProN', 'ヒラギノ明朝 Pro W3', 'ヒラギノ明朝 Pro', 'ＭＳ 明朝', 'MS Mincho', serif;
}

strong {
	font-weight: normal;
}

article {
	background: transparent;
}

a {
	text-decoration: none;
	color: #000;
	outline: none;
	-webkit-tap-highlight-color: rgba(0,0,0,0);
	transition: opacity .5s;
}

a[href]:hover {
	opacity: 0.5;
}

a.ul {
	text-decoration: underline;
}

img {
	vertical-align: bottom;
}

*[data-src],
*[data-bg],
*[data-bgset] {
	opacity: 0;
}

*[data-bg],
*[data-bgset] {
	display: block;
	position: relative;
	color: #fff;
	background-repeat: no-repeat;
	background-position: center center;
	background-size: cover;	
	background-color: #f4f4f4;
}

*[data-bg]:before,
*[data-bgset]:before {
	content: '';
	display: block;
	width: 100%;
	padding-top: 66.66%;
}

*[data-bg] .hide,
*[data-bgset] .hide {
	display: none;
}

*[data-bg] .content,
*[data-bgset] .content {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	padding: 30px;
}

.lazyloaded {
	opacity: 1;
	transition: opacity .5s;
}

.mov {
  position: relative;
  padding-top: 56.25%;
  height: 0;
  overflow: hidden;
}

.mov iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.mov+.caption {
	margin-top: 20px;
}

.img_tile {
	overflow: hidden;
}

.img_tile a:hover {
	opacity: 1;
}

.img_tile .item {
	float: left;
	width: 31.57%;
	margin-top: 0!important;
}

.img_tile .img_slide {
	float: none;
	width: 100%;
}

.img_tile .content {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	padding: 30px;
}

.img_tile a .content {
	background-color: #fff;
	line-height: 1.5;
	opacity: 0;
	transition: opacity .5s;
	color: #000;
}

.img_tile a:hover .content {
	opacity: .5;
}

.img_tile a .post_summary {
	background-color: #00ff01;
}

.img_tile a:hover .post_summary {
	opacity: 1;
}

.img_tile .item .inner:before {
	content: '';
	display: block;
	width: 100%;
	padding-top: 66.66%;
}

.img_tile .item.col1-2 .inner:before {
		padding-top: 141.66%;
}

.img_tile .item.col1-3 .inner:before {
	padding-top: 216.66%;
}

.img_tile .item.col2-1 {
	width: 65.78%;
}

.img_tile .item.col2-1 .inner:before {
		padding-top: 32%;
}

.img_tile .item.col2-2 {
	width: 65.78%;
}

.img_tile .item.col2-2 .inner:before {
		padding-top: 68%;
}

.img_tile .item.col3-1 {
	width: 100%;
}

.img_tile .item.col3-1 .inner:before {
	padding-top: 21.1%;
}

.img_tile .item.col3-2 {
	width: 100%;
}

.img_tile .item.col3-2 .inner:before {
		padding-top: 44.7%;
}

.img_tile .item.col3-3 {
	width: 100%;
}

.img_tile .item.col3-3 .inner:before {
		padding-top: 68%;
}

.img_tile .post_summary .cat {
	font-size: 11px;
	margin-bottom: 20px;
}

.designcats {
	line-height: 1.5;
	letter-spacing: normal;
}

.img_tile .designcats,
.img_tile .designcats a {
	line-height: 1.4;
	font-size: 24px;
	color: #fff;
}

.img_tile .designcats .title+.list {
	margin-top: 24px;
}

#img_wrap {
	opacity: 1;
	transition: opacity .5s;
}

#img_wrap.filtering {
	opacity: 0;
}

#img_wrap[data-filtering] #index_slide {
	visibility: hidden;
	position: absolute;
	top: -9999999px;
}

#img_wrap[data-filtering='*'] #index_slide {
	position: relative;
	top: 0;
	visibility: visible;
}

#img_wrap:not([data-filtering='*']) .img_tile .item[class*="col"] {
	width: 31.57%!important;
}

#img_wrap:not([data-filtering='*']) .img_tile .item[class*="col"] .inner:before {
	padding-top: 66.66%!important;
}


.krnL {
	margin-left: -0.5em;
}

.krnR {
	margin-right: -0.5em;
}

.krnC {
	margin-left: -0.2em;
	margin-right: -0.2em;
}

.pc {
	display: block;
}

.sp {
	display: none;
}

.txt>*+* {
	margin-top: 30px;
}

.fsn {
	font-size: 14px;
}

.fs12 {
	font-size: 12px;
	line-height: 1.5;
}

.fs16 {
	font-size: 16px;
}

.fs18 {
	font-size: 18px;
}

.fs20 {
	font-size: 20px;
}

.fs22 {
	font-size: 22px;
}

.fs24 {
	font-size: 24px;
	line-height: 1.6;
}

.fs27 {
	font-size: 27px;
	line-height: 1.2;
}

.fs36 {
	font-size: 36px;
	line-height: 1.2;
}

.fs48 {
	font-size: 48px;
	line-height: 1.2;
}

.fs72 {
	font-size: 72px;
	line-height: 1.12;
}

.fc000 {
	color: #000;
}

.fcfff {
	color: #fff;
}

.tac {
	text-align: center;
}

.tal {
	text-align: left;
}

.tar {
	text-align: right;
}

.taj {
	text-align: justify;
}

.cwS {
	width: 540px;
	margin-left: auto;
	margin-right: auto;
}

.cwSp {
	width: 520px;
	margin-left: auto;
	margin-right: auto;
}

.cwSS {
	width: 480px;
	margin-left: auto;
	margin-right: auto;
}

.str {
	text-decoration: line-through;
	margin-right: 5px;
}

.strong {
	font-weight: bold!important;
}

.title>strong,
.title>i {
	display: block;
}

.br {
	margin-top: 10px;
}

.en,
.ja {
	display: block;
}

.btn {
	text-align: center;
}

.btn>a {
	display: inline-block;
	width: 280px;
	line-height: 60px;
	background: #000;
	color: #fff;
	text-align: center;
	font-size: 18px;
}

.btn>a:hover {
	color: #fff;
}

.btn>a+a {
	margin-left: 20px;
}

ul.disc>li {
	padding-left: 1em;
	overflow: hidden;
}

ul.disc>li:before {
	content: '・';
	display: block;
	width: 1em;
	text-align: center;
	float: left;
	margin-left: -1em;
	
}

.caption {
	margin-top: 15px!important;
	font-size: 12px;
	line-height: 1.5;
}



/* Slider */.slick-slider{position:relative;display:block;box-sizing:border-box;-webkit-user-select:none;-moz-user-select:none; -ms-user-select:none;user-select:none;-webkit-touch-callout:none;-khtml-user-select:none;-ms-touch-action:pan-y; touch-action:pan-y;-webkit-tap-highlight-color:transparent;}.slick-list{position:relative;display:block;overflow:hidden;margin:0;padding:0;}.slick-list:focus{outline:none;}.slick-list.dragging{cursor:pointer;cursor:hand;}.slick-slider .slick-track,.slick-slider .slick-list{-webkit-transform:translate3d(0, 0, 0);-moz-transform:translate3d(0, 0, 0); -ms-transform:translate3d(0, 0, 0);  -o-transform:translate3d(0, 0, 0);     transform:translate3d(0, 0, 0);}.slick-track{position:relative;top:0;left:0;display:block;}.slick-track:before,.slick-track:after{display:table;content:'';}.slick-track:after{clear:both;}.slick-loading .slick-track{visibility:hidden;}.slick-slide{display:none;float:left;height:100%;min-height:1px;}[dir='rtl'] .slick-slide{float:right;}.slick-slide img{display:block;}.slick-slide.slick-loading img{display:none;}.slick-slide.dragging img{pointer-events:none;}.slick-initialized .slick-slide{display:block;}.slick-loading .slick-slide{visibility:hidden;}.slick-vertical .slick-slide{display:block;height:auto;border:1px solid transparent;}.slick-arrow.slick-hidden {display:none;}


.slick-dots {
	width: 100%;
	margin-top: 20px;
	font-size: 0;
	text-align: center;
}

.slick-dots li {
	display: inline-block;
	font-size: 12px;
	padding: 0;
	cursor: pointer;
}

.slick-dots li+li {
	margin-left: 10px;
}

.slick-dots li:before {
	content: '';
	display: block;
	width: 10px;
	height: 10px;
	background-color: #fff;
	border-radius: 100px;
}

.slick-dots li.slick-active:before {
	background-color: #000;
}

.slick-dots li:before {
	background: #1d2087;
}

.slick-dots li.slick-active:before {
	background: #f09dc1;
}

.slick-dots button {
	display: none;
}


#wrapper {
	max-width: 1140px;
	margin: 0 auto;
}

#wrapper>*+* {
	margin-top: 60px;
}

#header {
	padding: 80px 0;
	border-bottom: 1px solid #000;
	letter-spacing: -.4em;
	overflow: hidden;
}

#header>* {
	display: inline-block;
	letter-spacing: normal;
	vertical-align: top;
}

#header .id {
	width: 16.66%;
}

#header .id>a {
	font-size: 0;
	text-indent: -9999px;
	overflow: hidden;
	display: block;
	background-position: center center;
	background-size: contain;
	background-repeat: no-repeat;
	background-color: transparent!important;
}

#header .id>a:before {
	content: '';
	display: block;
	width: 100%;
	padding-top: 15%;
}

#nav {
	float: right;
	width: 66.67%;
	letter-spacing: -.4em;
	line-height: 1.35;
}

#nav>* {
	display: inline-block;
	width: 25%;
	letter-spacing: normal;
	vertical-align: top;
}

#nav .title {
	font-size: 16px;
}

#nav .title:after {
	content: '--';
	display: block;
	margin-top: -.2em;	
}

#nav a.off {
	pointer-events: none;
	text-decoration: line-through;
}

#menu {
	display: none;	
}

#footer {
	border-top: 1px solid #000;
	padding: 30px 0 80px;
	text-align: center;
	letter-spacing: 0;
}

#footer .copyright {
	font-size: 11px;
}

#content_wrapper {
	overflow: hidden;	
}

#contents {
	padding-bottom: 120px;
	overflow: hidden;
}

#contents>*+* {
	margin-top: 60px;
}

#contents>*>*+* {
	margin-top: 30px;
}

.content_header {
	padding-bottom: 60px;
}

.content_header .title {
	font-feature-settings : "palt";
	letter-spacing: .1em;
	font-size: 24px;
}

.content_header .title + .subtitle {
	margin-top: 0!important;
}

.content_body * {
	margin-top: 0;
	margin-bottom: 0;
}

.content_nav {
	font-size: 14px;
	line-height: 1.8;
}

.content_nav>*>*+* {
	margin-top: 30px;
}

.content_nav .cat_list>.title,
.content_nav .cat_list>.title>a {
	text-decoration: underline;
}

.content_nav .cat_list a {
	display: inline-block;
}
.content_nav .date_list .item+.item {
	margin-top: 15px;
}

.topicpath {
	margin-bottom: -15px;
}

.row {
	position: relative;
	margin-left: -15px;
	margin-right: -15px;
	letter-spacing: -.4em;
}

.row+.row {
	margin-top: 60px!important;
}

.row>.col {
	position: relative;
	display: inline-block;
	width: 16.66%;
	padding: 0 15px;
	letter-spacing: normal;
	vertical-align: top;
}

.row>.col>*+* {
	margin-top: 30px;
}

.row>.col.col2 {
	width: 33.33%;
}

.row>.col.col3 {
	width: 50%;
}

.row>.col.col4 {
	width: 66.66%;
}

.row>.col.col5 {
	width: 83.33%;
}

.row>.col.col6 {
	width: 100%;
}

.row>.col>.br {
	margin-top: 60px;
}

.row>.col .title+* {
	margin-top: 30px;
}

.post_img_list {
	margin-bottom: -20px;
}

.post_img_list>.item {
	margin-bottom: 20px;
}

#aside {
	border-top: 1px solid #000;
	padding-top: 60px;
	line-height: 1.5;
	overflow: hidden;
}

#aside .post_img_list .title {
	margin-top: 10px;
	font-size: 12px;
}

.sep {
	position: relative;
	overflow: hidden;
}

.sep:before {
	content: '';
	display: block;
	position: absolute;
	top: 0;
	bottom: 0;
	width: 1px;
	background: #000;
	left: 75%;
}

.sep>#contents {
	float: left;
	width: 66.66%;
}

.sep>#aside {
	float: right;
	width: 16.66%;
	padding-top: 0;
	border-top: 0;
}

.sep>#aside>.row>.col+.col {
	margin-top: 60px;
	padding-top: 60px;
}

.sep>#aside>.row>.col+.col:before {
	content: '';
	display: block;
	position: absolute;
	top: 0;
	left: 15px;
	right: 15px;
	height: 1px;
	background: #000;
}

.sep>#aside .row>.col {
	width: 100%;
}

/*
	works
*/

.works_content .content_header .subtitle {
	font-size: 24px;
}

/*
	gallery
*/

.gallery_content .content_nav {
	width: 33.33%;
	float: left;
	padding-right: 30px;
}

.gallery_content .content_body {
	width: 66.66%;
	float: right;
}

/*
	page
*/

.page_content .content_body {
	font-size: 16px;
}

/*
	Gutenberg
*/

.content_body .wp-block-image {
	text-align: center;
	margin-bottom: 0;
}

.content_body .wp-block-image img {
	width: 100%;
	height: auto;
}

.content_body .wp-block-image figcaption {
	margin-top: 15px;
	margin-bottom: 0;
	letter-spacing: 0;
	font-size: 12px;
}

/*
	form
*/

.form_table {
	max-width: 750px;
	width: 100%;
	margin-right: auto;
	margin-left: auto;
}

.form_table>*+* {
	margin-top: 30px;
}

.form_table li {
	display: flex;
	padding: 30px 0;
	border-top: 1px solid #000;
	border-bottom: 1px solid #000;
}

.form_table li>* {
	flex: 2;
}

.form_table li>label {
	flex: 1;
}

.form_table li+li {
	margin-top: -1px;
}

div.wpcf7-response-output {
	margin: 30px auto 0!important;
	padding: 0!important;
	max-width: 750px;
	width: 100%;
	font-size: smaller;
	text-align: center;
	border: none!important;
	letter-spacing: 0;
}

span.wpcf7-not-valid-tip {
	font-size: 12px!important;
}

div.wpcf7 .ajax-loader {
	display: none!important;
	visibility: hidden!important;
}











/*modal*/
#ol,
#olInner {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  width: 100%;
  height: 100%; 
}

#ol {
	display: none;
	z-index: 100000;
	-webkit-transform-style: preserve-3d;
}

#olInner {
  display: table;

  min-width: 1080px;
  background: rgba(0, 0, 0, 0.5);
}

#olBody {
  display: table-cell;
  vertical-align: middle;
  text-align: center; 
}

#olCol {
	display: none;
	position: relative;
	max-width: 300px;
	padding: 40px 0 100px;
	margin: 0 auto;
	background: #fff;
}

#olScroll {
	padding: 0 20px;
	overflow: auto;
}

#ol .btn.close {
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  background: #000;
}

#ol .btn.close > a {
  width: 100%;
  display: block;
  height: 60px;
  line-height: 60px;
  color: #fff;
  background: #0014ff;
}

#ol .btn.close > a > img {
  vertical-align: middle; 
}

#ol .olContent {
	display: none;
	background: #fff;
	text-align: left;
}

#ol .olContent a {
	color: #000;
}

#ol .olContent>*+* {
	margin-top: 20px;
}


#ol .olContent .txt {
	margin-top: 30px;
}

#ol .olContent .txt>.title {
	font-size: 18px;
	line-height: 32px;
}

#ol .olContent .txt>*+* {
	margin-top: 10px;	
}


#olCol .btn.close,
#olCol .btn.close>a {
	background: #000;
}

/*20200212*/

body.post-type-archive-gallery,
body.single-gallery {
background-color: #eff2f2;
}

.img_tile .item a .post_summary {
	background-color: #00ff00;
}

.img_tile .item.post a,
.img_tile .item.post a .post_summary {
	background-color: #0000ff;
}

.img_tile .item.works a,
.img_tile .item.works a .post_summary {
	background-color: #00ff00;
}

.img_tile .item.publishing a,
.img_tile .item.publishing a .post_summary {
	background-color: #00ff00;
}

.img_tile .item.gallery a,
.img_tile .item.gallery a .post_summary {
	background-color: #00ff00;
}

.img_tile .item.content a,
.img_tile .item.content a .post_summary {
	background-color: #00ff00;
}

.img_tile .item.blankimg .post_summary {
	opacity: 1!important;
}

#aside .designcats .title {
	font-size: 14px;
}

#aside .list {
	font-size: 12px!important;
}

.wp-block-button a {
	border: 1px solid #000;
	border-radius: 0;
	max-width: 300px;
	width: 100%;
	line-height: 60px;
	display: block;
	padding: 0;
	margin-right: auto;
	margin-left: auto;
}


/* for smartphone */

@media only screen and (max-width: 30em){

	a[href]:hover,
	.btn>a:hover,
	.content_header.opener:hover>.inner {
		opacity: 1;
	}

	body {
		min-width: 0;
	}

	.pc {
		display: none;
	}

	.sp {
		display: block;
	}

	.cwS,.cwSp,.cwSS {
		width: 100%;
	}

	.btn>a {
		width: 100%;
	}

	#wrapper {
		padding: 20px 20px 40px;
	}

	#header {
		padding: 60px 0 0;
	}

	#header .id {
		width: 160px;
		padding-bottom: 40px;
	}

	#nav {
		float: none;
		width: 100%;
		padding: 15px 0;
		max-height: 0;
		opacity: 0;
		transition: max-height 0.5s, opacity 0.5s;
	}

	#nav.open {
		max-height: 100vh;
	}

	#nav.show {
		opacity: 1;
	}

	#nav>* {
		padding: 15px 0;
		width: calc( 50% - 15px )!important;
	}

	#nav>*:nth-child(2n) {
		position: relative;
		right: -30px;
	}

	#menu {
		position: relative;
		display: block;
		font-size: 0;
		text-indent: -9999px;
		overflow: hidden;
		width: 30px;
		height: 30px;
		position: absolute;
		right: 20px;
		top: 18px;
	}

	#menu:before,
	#menu:after {
		content: '';
		display: block;
		position: absolute;
		top: 0;
		right: 0;
		bottom: 0;
		left: 0;
		background-position: center center;
		background-repeat: no-repeat;
		background-size: contain;
		transition: opacity .5s;
	}

	#menu:before {
		opacity: 1;
		background-image: url(../images/menu.gif);
	}
	#menu:after {
		opacity: 0;
		background-image: url(../images/menu_close.gif);
	}

	#menu.close:before {
		opacity: 0;
	}

	#menu.close:after {
		opacity: 1;
	}

	#index_slide *[data-bg]:before,
	#index_slide *[data-bgset]:before {
		padding-top: 141%;
	}

	.img_tile .item {
		width: 100%;
	}

	.sep:before {
		display: none;
	}

	#contents,
	#aside,
	.sep>#contents,
	.sep>#aside {
		width: 100%;
		float: none;
	}


	#aside,
	.sep>#aside {
		padding-top: 60px;
		border-top: 1px solid #000;
	}

	.row>.col {
		width: 100%;
		float:  none;
		clear: both;
		font-size: 16px;
	}

	.row>.col+.col {
		margin-top: 60px;
	}

	.post_img_list>.item {
		margin-bottom: 0;
	}

	.row.post_img_list>.col.item+.col.item {
		margin-top: 30px;
	}

	.row>.col.col2,
	.row>.col.col3,
	.row>.col.col4,
	.row>.col.col5,
	.row>.col.col6 {
		width: 100%;
	}

	#aside>.row>.col {
		padding-top: 60px;
	}

	#aside>.row>.col:before {
		content: '';
		display: block;
		position: absolute;
		top: 0;
		left: 15px;
		right: 15px;
		height: 1px;
		background-color: #000;
	}

	#aside>.row>.col.stationed {
		width: 50%;
		float: left;
		clear: none;
		margin-top: 0!important;
		padding: 0 15px!important;
	}

	#aside>.row>.col.stationed:before {
		display: none!important;
	}

	.content_header {
		padding-bottom: 0;
	}

	.gallery_content .content_body,
	.gallery_content .content_nav {
		float: none;
		width: 100%;
	}

	.form_table li {
		display: block;
	}

	.form_table li>label+* {
		margin-top: 10px;
	}

	




}

