@charset "utf-8";


@media screen and (max-width:767px) {
	#wrapper {
		width: 100%;
	}
	#wrapper > * {
		margin-left: 0;
		margin-right: 0;
	}
	
	
	
	#sp-menu {
		position: absolute;
		display: block;
		width: 32px;
		height: 32px;
		right: 35px;
		top: 36px;
		z-index: 100;
		background: url(/images/sp/icon_menu.gif) 50% 50% no-repeat;
		background-size: 20px auto;
	}
	#sp-search {
		position: absolute;
		display: block;
		width: 32px;
		height: 32px;
		right: 4px;
		top: 36px;
		z-index: 100;
		overflow: hidden;
		background: #fff;
		background: url(/images/sp/icon_search.gif) 50% 50% no-repeat;
		background-size: 20px auto;
	}
	
	
	#float-search {
		position: absolute;
		display: block;
		box-sizing: border-box;
		width: 100%;
		height: 50%;
		left: 0;
		top: 85px;
		z-index: 101;
		padding: 0 10px;
		
		visibility: hidden;
	}
	body.search-mode #float-search {
		visibility: visible;
	}
	
	#float-search form {
		padding: 20px;
		border: 2px solid #999;
		background: #fff;
		text-align: center;
	}
	#float-search form input.word {
		width: 180px;
		height: 26px;
		padding: 0 4px;
		line-height: 26px;
		outline: none;
		font-size: 16px;
		border: 1px solid #ccc;
		border-radius: 0;
		background: #fff;
		vertical-align: middle;
		-webkit-appearance: none;
	}
	#float-search form .btn {
		width: 26px;
		height: 26px;
		margin-left: 5px;
		border: none;
		font-size: 0;
		color: rgba(255,255,255,0);
		
		background: #fff url(/images/sp/icon_search.gif) 50% 50% no-repeat;
		background-size: 20px auto;
		vertical-align: middle;
	}
	
	
	
	
	
	
	header hgroup {
		box-sizing: border-box;
		height: 70px;
		padding: 15px;
	}
	header hgroup h1 img {
		width: auto;
		height: 32px;
	}
	header hgroup h2 img {
		width: auto;
		height: 36px;
	}
	header hgroup h2 {
		margin-left: -4px;
		padding-top: 16px;
	}
	header hgroup div.produce {
		position: relative;
		float: left;
		width: 100%;
		padding-top: 6px;
		text-align: right;
	}
	header hgroup div.produce a {
		float: right;
	}
	header hgroup div.produce img {
		width: auto;
		height: 22px;
	}
	
	
	header hgroup h1 img {
		height: 40px;
	}
	header hgroup h2,
	header hgroup div.produce {
		display: none;
	}
	
	
	header #hdLinks {
		width: 100%;
		right: auto;
		left: 0;
	}
	
	header #hdLinks .logo {
		position: absolute;
		top: 10px;
		right: 10px;
	}
	header #hdLinks .logo img {
		width: 60px;
		height: auto;
	}

	header #hdLinks ul,
	header #hdLinks li,
	header #hdLinks .en {
		float: none !important;
		margin: 0 !important;
	}
	#hdLinks span.en {
		box-sizing: content-box !important;
		position: static !important;
		margin: 15px auto 0 !important;
		padding-bottom: 20px !important;
	}
	#hdLinks span.en a {
		text-indent: 0 !important;
		background: none !important;
		height: auto !important;
		text-align: center;
		color: #999;
		font-size: 14px;
		font-weight: bold;
		font-family: "HelveticaNeue-CondensedBold", "AvenirNextCondensed-Bold", Helvetica, Arial, sans-serif;

	}
	
	
	header #hdLinks .language {
		position: static;
		width: 100%;
		height: auto;
		top: auto;
		right: auto;
	}
	header #hdLinks .language > a {
		display: none !important;
	}
	header #hdLinks .language ul {
		margin: 0 !important;
		padding: 20px 0 20px !important;
		width: 100% !important;
		height: auto !important;
		text-align: center;
		border: none;
	}
	header #hdLinks .language li {
		display: inline-block;
		margin: 0 !important;
		padding: 0 !important;
		font-size: 11px;
		border: none;
	}
	header #hdLinks .language a {
		display: inline-block;
		margin: 0 !important;
		font-size: 11px;
		height: auto !important;
	}
	
	
	#hdLinks li {
		padding: 12px !important;
		background: none !important;
		text-align: center;
	}
	
	#hdLinks .extra {
		position: relative;
		width: 100%;
		top: 71px;
		z-index: 100;
		background: #fff;
		
		height: 0;
		overflow: hidden;
		
		transition: height 300ms ease-out;
	}
	#hdLinks .extra ul {
		padding-top: 10px !important;
	}
	body.opened-menu #hdLinks .extra {
		border-bottom: 1px solid #ccc;
	}
	
	
	
	header #hdLinks ul li a span {
		display: inline;
		color: #999;
		font-size: 16px;
		font-weight: bold;
		font-family: "HelveticaNeue-CondensedBold", "AvenirNextCondensed-Bold", Helvetica, Arial, sans-serif;
	}
	header #hdLinks ul li a img {
		display: none;
	}
	
	
	
	header > nav {
		position: relative;
	}
	header > i {
		content: "";
		position: absolute;
		display: block;
		width: 15px;
		height: 35px;
		top: 76px;
		background: #fff url(../images/top/mini_arrow.png) 50% 50% no-repeat;
		background-size: 7px auto;
	}
	header > i.prev {
		left: 0;
	}
	header > i.next {
		right: 0;
		transform: rotate(180deg);
	}
	
	
	
	
	
	
	header > nav a,
	header > nav em {
		display: inline-block !important;
		width: auto !important;
		font-size: 0;
	}
	header > nav a,
	header > nav em {
		float: none !important;
		margin-right: 15px;
	}
	header > nav a:first-child,
	header > nav em:first-child {
		margin-left: 15px;
	}
	header > nav a img,
	header > nav em img {
		width: auto;
		height: 20px;
	}
	
	header > nav a:last-child,
	header > nav em:last-child {
		margin-right: 25px;
	}

	header > nav {
		width: 100%;
		overflow-x: scroll;
		overflow-y: hidden;
		-webkit-overflow-scrolling: touch;
		overflow-scrolling: touch;
		
		padding: 15px 0 0;
		border-top: 1px solid #ccc;
	}
	header > nav .inner {
		display: block;
		white-space: nowrap;
		padding: 0 0 0 10px;
	}
	
	
	
	
	
	
	
	
	
	#blog-menu {
	}
	#blog-menu nav {
		width: 100%;
		text-align: center;
	}
	#blog-menu a {
		display: inline-block !important;
		width: auto !important;
		float: none !important;
	}
	#blog-menu a img {
		width: auto;
		height: 15px;
	}
	#blog-menu a + a {
		margin-left: 15px;
	}
	
	
	
	
	#contents {
		width: 100%;
		padding: 10px 0 20px;
	}
	#contents > section {
		float: none;
		width: 100%;
		overflow: hidden;
	}
	
	#contents > nav {
		float: none;
		width: 100%;
		overflow: hidden;
	}
	
	
	
	
	footer.dark #ftMap {
		padding: 25px 15px;
	}
	
	footer.dark > div > div {
		width: 100%;
	}
	footer.dark #ftMap > div {
		display: block;
	}
	
	footer.dark #ftMap .ft-8-logo,
	footer.dark #ftMap .ft-facilities,
	footer.dark #ftMap .ft-access,
	footer.dark #ftMap .ft-follow-us {
		display: block;
		width: 100%;
	}
	
	footer.dark #ftMap .ft-8-logo img {
		width: 40px;
		height: auto;
	}
	
	footer.dark #ftMap > div > dl.ft-8-logo {
		padding: 0;
	}
	footer.dark #ftMap > div > dl.ft-8-logo dt {
		margin-bottom: 15px;
	}
	footer.dark #ftMap > div > dl.ft-8-logo dd {
		padding: 0;
		line-height: 1.5;
		text-align: center;
		font-size: 11px;
	}
	
	
	
	footer.dark #ftMap .ft-facilities {
		margin: 25px 0 0;
	}
	footer.dark #ftMap > div > dl.ft-facilities dt {
		margin: 0 0 5px;
		font-size: 16px;
	}
	footer.dark #ftMap > div > dl.ft-facilities dd {
		text-align: left;
		padding: 0;
	}
	footer.dark #ftMap > div > dl.ft-facilities dd + dd {
	}
	
	
	
	footer.dark #ftMap .ft-access {
		margin: 25px 0 0;
	}
	footer.dark #ftMap > div > dl.ft-access dt {
		margin: 0 0 5px;
		font-size: 16px;
	}
	footer.dark #ftMap > div > dl.ft-access dd {
		line-height: 1.5
	}
	
	
	
	footer.dark #ftMap .ft-follow-us {
		margin: 25px 0 0;
	}
	footer.dark #ftMap > div > dl.ft-follow-us dt {
		margin: 0 0 5px;
		font-size: 16px;
	}
	
	
	footer.dark #ftMap .ft-follow-us dd.fwedget.search-widget {
		padding: 15px 0 0;
	}
	footer.dark #ftMap .ft-follow-us dd.fwedget.search-widget #search-form {
		display: none;
	}
	
	
	
	footer.dark #ftIdentity {
		padding: 10px 15px;
	}
	footer.dark #ftIdentity .ft-hikarie {
		float: none;
		margin: 0;
		padding: 0;
		text-align: center;
	}
	footer.dark #ftIdentity .ft-hikarie img {
		width: 60px;
		height: auto;
	}
	
	footer.dark #ftIdentity .ft-copy {
		float: none;
		margin: 10px 0 0;
		text-align: center;
	}
	
	footer.dark #ftIdentity .ft-menu {
		float: none;
	}
	footer.dark #ftIdentity .ft-menu a {
		padding: 0;
		font-size: 10px;
	}
	footer.dark #ftIdentity .ft-menu a + a {
		margin-left: 10px;
	}
	
	#contents nav #banners a {
		margin: 0;
	}
	#contents nav #banners a + a {
		margin-top: 10px;
	}
	#contents nav #banners img {
		max-width: 100%;
		height: auto;
	}
	
	
	
	#contents nav #monthly-schedule {
		padding: 15px !important;
	}
	#contents nav #sns-link {
		padding: 15px !important;
	}
	
	
	#contents nav #currently-showing {
		padding: 15px !important;
	}
	#contents nav #currently-showing a {
		margin: 0;
		padding: 0;
		text-align: center;
	}
	#contents nav #currently-showing a + a {
		margin-top: 10px;
	}
	#contents nav #currently-showing img {
		max-width: 100%;
		height: auto;
	}
	
	#contents nav #now-on-event {
		padding: 15px !important;
	}
	#contents nav #now-on-event img {
		max-width: 100%;
		height: auto;
	}
	#contents nav #now-on-event div {
		text-align: center;
	}
	
	
	
	#sitesearch {
		display: none;
	}
	
	#banners {
		padding: 15px !important;
		text-align: center;
	}
	
	
	
	
	#contents section h2.slash {
		margin-left: -8px; 
		background-size: 8px auto;
	}

	#contents section article {
		padding: 15px;
	}
	
	
	#contents section article.entry {
		padding: 15px 0;
	}
	#contents section article.entry:first-child {
		padding-top: 0 !important;
		border-top: none !important;
	}
	#contents .entry figure {
		display: block;
		width: 100%;
		float: none;
	}
	#contents .entry .note {
		width: auto;
		float: none;
		padding: 15px;
	}
	
	#contents .entry figure img {
		width: 100%;
		height: auto;
		vertical-align: bottom;
	}
	
	#contents .entry .nowon {
		background: none;
		padding-left: 0;
		min-height: 1px;
	}
	
	#contents section article.entry figcaption {
		margin-left: 15px;
	}
	
	
	
	article.archive-list.coloring {
		padding-top: 0 !important;
		border-top-width: 0 !important;
		border-top-style: none !important;
	}
	
	
	
	
	
	figure.main img {
		width: 100%;
		height: auto;
	}
	figure.main iframe {
		width: 100%;
		height: auto;
		height: calc(100vw * 56.25%);
	}
	
	#detail article #entry-meta {
		margin: 10px 0 0;
	}
	#detail article .entry-body {
		margin: 20px 0 0 0;
		font-size: 14px;
	}
	#detail article .entry-more{
		margin: 15px 0 0;
	}
	#detail article .profile{
		margin: 15px 0 0;
	}
	
	body.blog .entry {
		padding-left: 15px !important;
		padding-right: 15px !important;
	}
	body.blog .entry img[class*="mt-image"] {
		width: 100%;
		height: auto;
	}
	
	
	
	
	
	#detail a {
		word-break: break-all;
	}
	#detail img {
		max-width: 100%;
		height: auto !important;
		float: none !important;
	}
	
	
	#page-content a {
		word-break: break-all;
	}
	#page-content img {
		max-width: 100%;
		height: auto;
		float: none !important;
	}
	#page-content table {
		max-width: 100%;
	}
	
	
	.fb-comments {
		width: 100%;
	}
	.fb_iframe_widget iframe {
		width: 300px !important;
	}
	
	
	
	
	
	
	
	

	figure.main {
		margin-top: -10px;
	}
	figure.main iframe {
		vertical-align: bottom;
	}
		
	article.archive-list {
	}
	article.archive-list .archive:after {
		clear: both;
		content: "";
		display: block;
		visibility: hidden;
	}
	article.archive-list .archive + .archive {
		margin-top: 15px;
		padding-top: 15px;
		border-top: 1px solid #ccc;
	}
	article.archive-list figure {
		float: none;
		width: 200px;
		margin: 0 auto;
	}
	article.archive-list figure img {
		vertical-align: bottom;
	}
	article.archive-list dl {
		float: none;
		width: 100%;
	}
	article.archive-list dl.date dt,
	article.archive-list dl.title dt {
		display: none;
	}
	article.archive-list dl.date {
		margin-top: 15px;
	}
	article.archive-list dl.artist {
		margin-top: 10px;
	}
	
	
	
	
	
	
	body.menu .entry-more br + br {
		display: none;
	}
	body.menu .entry-more table {
		width: 100% !important;
	}
	body.menu .entry-more table tr td:first-child {
		width: 70px;
	}
	
	
	
	
	/* ABOUT */
	
	html.static-about figure.main {
		margin-top: 10px;
	}
	
	html.static-about table.basic-tiny {
		width: 100% !important;
		margin: 15px 0 !important;
	}
	html.static-about table.basic-tiny tr,
	html.static-about table.basic-tiny th,
	html.static-about table.basic-tiny td {
		display: block !important;
	}
	html.static-about table.basic-tiny tr + tr {
		margin-top: 20px !important;
	}
	html.static-about table.basic-tiny th {
		font-size: 14px !important;
	}
	html.static-about article iframe {
		float: none !important;
		margin: 0 0 15px !important;
		padding: 0 !important;
	}
	
	
	
	/* FLOOR-GUIDE */
	
	html.static-floorguide #page-content article h2 img {
		width: auto !important;
		height: 40px !important;
	}
	html.static-floorguide #page-content article.f1 h2 img,
	html.static-floorguide #page-content article.f2 h2 img,
	html.static-floorguide #page-content article.f8 h2 img {
		width: auto !important;
		height: 30px !important;
	}
	
	html.static-floorguide #page-content article p a {
		display: block;
	}
	
	#floormap img {
		max-width: 680px !important;
		width: 680px !important;
		height: 267px !important;
	}
	
	
	
	
	
	/* EN */
	html.static-floorguide table.basic-tiny {
		width: 100% !important;
		margin: 15px 0 !important;
	}
	html.static-floorguide table.basic-tiny tr,
	html.static-floorguide table.basic-tiny th,
	html.static-floorguide table.basic-tiny td {
		display: block !important;
	}
	html.static-floorguide table.basic-tiny tr + tr {
		margin-top: 20px !important;
	}
	html.static-floorguide table.basic-tiny th {
		font-size: 14px !important;
	}
	
	html.static-floorguide .box1 > a {
		display: block;
		width: 100% !important;
		margin: 0 0 15px;
	}
	html.static-floorguide .box1 > p {
		float: none !important;
		width: 100% !important;
	}
	html.static-floorguide article iframe {
		float: none !important;
		margin: 0 0 15px !important;
		padding: 0 !important;
	}
	
	
	
	
	
	/* ACCESS */
	
	html.static-access #page-content article > iframe {
		width: 100% !important;
		width: calc(100% + 30px) !important;
		height: 100% !important;
		height: 56.25vw !important;
		margin: 0 -15px !important;
	}
	
	html.static-access .datainfo th {
		padding-right: 10px;
	}
	
	
	
	
	
	
	/* CONTACT */
	
	html.static-contact #page-content article > div {
		width: 100% !important;
		
	}
	html.static-contact #page-content article hr {
		display: none;
	}
	
	
	
	
	
	/* TV */
	
	#contents.tv > #page-content > article {
		padding: 15px 0 !important;
	}
	
	#page-content .tv-archives {
		width: 100% !important;
	}
	.tv-archives.pickup li {
		position: relative;
		float: none !important;
		width: 100% !important;
		min-height: 1px !important;
	}
	.tv-archives.pickup li + li {
		margin-top: 20px !important;
	}
	
	#page-content .tv-archives li p {
		position: static !important;
		display: block !important;
		opacity: 1 !important;
		color: #000 !important;
		background: #fff !important;
	}
	#page-content .tv-archives li p .more {
		position: static !important;
		display: block !important;
		border: none !important;
		padding: 0 !important;
		margin: 15px 0 0 !important;
		color: #000 !important;
	}
	#page-content .tv-archives li p .more + a {
		position: absolute !important;
		display: block !important;
		width: 40px !important;
		height: 40px !important;
		left: 50%;
		top: 50%;
		top: 28.125vw;
		margin: -20px 0 0 -20px !important;
	}
	#page-content .tv-archives li p .more + a:after {
		width: 40px !important;
		height: 40px !important;
		right: auto !important;
		bottom: auto !important;
		background-size: 46px 46px !important;
		background-color: rgba(0,0,0,0.3);
		border-radius: 24px;
		border: 2px solid #fff;
	}
	.tv-archives.all #projects li p .more + a {
		top: 50%;
		top: 14.06vw;
	}
	
	
	
	#contents.tv .read {
		padding: 0 !important;
	}
	#contents.tv .read strong {
		padding: 10px 0 30px !important;
		font-size: 24px !important;
	}
	
	#contents.tv .tv-categories {
		padding: 0 15px !important;
	}
	#contents.tv .tv-categories li {
		margin: 0 !important;
	}
	#contents.tv .tv-categories li + li {
		margin-left: 20px !important;
	}
	
	#contents.tv #projects li {
		min-height: 1px !important;
	}
	
	
	
	
	
	
	/* REPORT */
	
	
	.yearly-menu {
		float: none;
		box-sizing: border-box;
		width: 100%;
		padding: 15px
	}
	.yearly-menu ul {
	}
	
	
	body.report figure.main {
		padding-top: 15px;
	}
	body.report figure.main figcaption {
		margin-left: 15px;
	}
	
	figure.report-main {
		padding-top: 10px;
	}
	
	.report-description {
		padding: 15px;
	}
	
	
	
	/* SEARCH RESULT */
	body.search-result #contents .entry .archive {
		margin: 0;
	}
	body.search-result #contents .entry .note {
		padding-top: 0;
	}
	
	#result-info .search-form {
		margin-top: 10px;
	}
	
}




@media screen and (min-width:320px) {
	#floormap {
		transform-origin: left top;
		transform: scale(0.6);
	}
	#floormap-wrap {
		height: 200px;
	}
}


@media screen and (min-width:375px) {
	#floormap {
		transform-origin: left top;
		transform: scale(0.7);
	}
	#floormap-wrap {
		height: 230px;
	}
}


@media screen and (min-width:414px) {
	#floormap {
		transform-origin: left top;
		transform: scale(0.8);
	}
	#floormap-wrap {
		height: 250px;
	}
}






