@charset "UTF-8";
.sp_block {
	display: none;
}
.sp_inline {
	display: none;
}
.sp768_block {
	display: none;
}
/*============================================================================================================
*/
@media screen and (max-width:768px) {
	#container #main_contents ul.pic_thumb {
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
	}
	#container #main_contents ul.pic_thumb li {
		width: 48%;
		float: none;
		margin: 0 0 20px;
		padding: 0;
	}
	#container #main_contents ul.pic_thumb li.modal-open .supporter_pic ,
	#container #main_contents ul.pic_thumb li.modal-open .supporter_pic img {
		width: 100%;
		height: auto;
	}
	.pc768_block {
		display: none;
	}
	.sp768_block {
		display: block;
	}
	/* ...and position them! */
	html:before {
		height: 14px;
		left: 0;
		right: 0;
		top: 0;
	}
	html:after {
		width: 14px;
		top: 0;
		right: 0;
		bottom: 0;
	}
	body:before {
		height: 14px;
		right: 0;
		bottom: 0;
		left: 0;
	}
	body:after {
		width: 14px;
		top: 0;
		bottom: 0;
		left: 0;
	}
	a.opa06:hover {
		opacity: 1;
	}
	a.opa07:hover {
		opacity: 1;
	}
	a:hover .opa07 {
		opacity: 1;
	}
	#container_inner {
		width: 90%;
		margin: 0 auto;
	}
	#header {
		width: 100%;
		padding-top: 0;
		margin-top: 0;
	}
	#header_inner {
		width: 100%;
	}
	#header #wanted {
		top: 14px;
	}
	#header_inner {
		padding-top: 34px;
	}
	#header #header_logo {
		float: none;
	}
	#header #menu {
		width: 584px;
		margin: 0 auto;
		float: none;
	}
	#container_inner #wrapper {
		width: 100%;
	}
	#main_contents_inner {
		width: 100%;
	}
	.top_page #main_contents_inner .cont_block,
	#main_contents_inner .cont_block {
		padding-top: 25px;
		padding-left: 10px;
		padding-right: 10px;
	}
	#container_inner #wrapper #outline {
		width: 100%;
	}
	#outline #copy {
		width: 94%;
		margin: 0 auto;
	}
	#outline #outline_upper #outline_block1 {
		width: 60%;
		padding-left: 0;
	}
	#outline #outline_upper #outline_block2 {
		width: 36%;
	}
	#outline #outline_lower #facebook_area {
		width: 36%;
	}
	#main_contents_inner #top_block1 {
		width: 60%;
	}
	#main_contents_inner #top_block2 {
		width: 36%;
	}
	#big_message p {
		font-size: 21pt;
	}
	#outline #outline_lower #outline_block3 {
		width: 60%;
		padding-left: 0;
	}
	#outline_table table tr th {
		white-space: nowrap;
	}
	#outline #outline_upper #outline_block1 #message p {
		font-size: 10pt;
		line-height: 2em;
	}
	#outline_table table tr th::before {
		height: 10px;
		width: 10px;
		top: 8px;
	}
	#outline #outline_lower #outline_block3 table tr th {
		padding-left: 14px;
		font-size: 10pt;
		line-height: 1.9em;
	}
	#outline #outline_lower #outline_block3 table tr td {
		font-size: 10pt;
		line-height: 2em;
	}
	#outline #outline_upper #outline_block1 #btn_about p a {
		height: 24px;
		padding: 8px 0;
		width: 250px;
		line-height: 1.4em;
		font-size: 12pt;
	}
	/* modal */
	.message_page .supporter-win .modal-content {
		width: 90%;
		padding: 10px;
		height: 60%;
		/* overflow:auto; */
	}
	.modal-content .modal_cont .cont1 .cont1_pic {
		width: 48%;
	}
	.modal-content .modal_cont .cont1 .cont1_info {
		width: 48%;
	}
	.modal_cont_wrap .menu_btn_off {
		right: 2px;
		top: -48px;
	}
	.modal_cont {
		overflow: auto;
		height: 500px;
	}
	.modal-content .modal_cont .cont1 .cont1_pic {
		width: 52%;
	}
	.modal-content .modal_cont .cont1 .cont1_info {
		width: 44%;
	}
	.block {
		width: 100%;
	}
	#place .one_place .one_place_first {
		width: 48%;
	}
	#place .one_place .one_place_second {
		width: 48%;
	}
	#about #about_cont1 #cont1_pic {
		width: 48%;
	}
	#about #about_cont1 #cont1_txt {
		width: 48%;
	}
	#about #about_cont1 #cont1_txt p {
		font-size: 10pt;
		line-height: 2em;
	}
	#about #about_cont1 #cont1_pic #cont1_pic_sub ul li img {
		width: 97%;
	}
	#outline_table table tr th,
	#outline_table table tr td {
		line-height: 1.6;
		padding-bottom: 1em;
	}
	#outline_table table tr th::before {
		top: .4em;
	}
	/* profile */
	#profile {
		width: 100%;
	}
	#profile #prof_img {
		width: 32%;
	}
	#profile #prof_cont {
		width: 65%;
	}
	/* footer */
	#footer #copyright {
		padding-bottom: 0;
		margin-bottom: 12px;
	}
	#footer #btn_pagetop {
		right: 14px;
		bottom: 40px;
	}
	/* about_page */
	.about_page #message {
		width: 100%;
	}
	.about_page #message #message_credit p {
		padding-right: 0;
	}
	.en_block2 {
		padding-left: 0;
		padding-right: 0;
	}
	/* event_map ============================= */
	#place .one_place .one_place_second .one_place_txt p {
		/* font-size:9pt; */
		font-size: 10.5pt;
		line-height: 2em;
	}
	#place .one_place .one_place_second .one_place_txt p span.info_note {
		display: inline-block;
		font-size: 8.5pt;
		line-height: 1.6em;
		padding-top: 8px;
	}
	.event_map_page #place #sp_event_map_list ul li {
		width: 50%;
		float: left;
		margin-bottom: 12px;
	}
	.event_map_page #place #sp_event_map_list ul li .li_inner {
		width: 95%;
		margin: 0 auto;
		border: 1px solid #f4b5c2;
		background: #fef7f9 url(../event_map/images/event_map_arrow.gif) no-repeat;
		background-position: top 14px right 10px;
	}
	.event_map_page #place #sp_event_map_list ul li .li_inner p a {
		color: #00b4eb;
		/* font-size:11pt; */
		letter-spacing: 0;
		display: block;
		padding: 6px 20px;
		text-align: center;
	}
	/* message_page ========================= */
	/* map_page ========================= */
	.map_page #place_list table tr td {
		font-size: 11pt;
	}
	.map_page #place_list table tr td.td2 {
		padding-right: 12px;
	}
	.map_page #place_list table tr td.td3 {
		font-size: 9pt;
	}
	.map_page #place_list table tr td.td3 span.detail a {
		padding: 4px 8px;
	}
	/* venue_page ========================= */
	.venue_page .place_list table tr td {
		font-size: 11pt;
	}
	.venue_page .place_list table tr td.td2 {
		padding-right: 12px;
	}
	.venue_page .place_list table tr td.td3 {
		font-size: 9pt;
	}
	.venue_page .place_list table tr td.td3 span.detail a {
		padding: 4px 8px;
	}
}
/*============================================================================================================
*/
@media screen and (max-width:640px) {
	.pc_block {
		display: none;
	}
	.pc_inline {
		display: none;
	}
	.sp_block {
		display: block;
	}
	.sp_inline {
		display: inline;
	}
	.title_sp.sp_block {
		padding-bottom: 30px;
		text-align: center;
	}

	html:before,
	html:after,
	body:before,
	body:after {
		display: none;
	}
	.sp_menu_toggle {
		position: absolute;
		right: 5%;
		top: 14px;
		width: 50px;
		z-index: 20;
	}
	.sp_menu_toggle img {
		width: 50px;
	}
	#btn_pagetop a:hover {
		background: none;
	}
	#btn_pagetop a:hover .opa07 {
		background: none;
	}
	#sp_menu_wrap {
		left: 0;
		position: absolute;
		top: 100px;
		width: 100%;
		z-index: 10;
	}
	#sp_menu_wrap #sp_menu_body {
		display: none;
		background: #00b4eb;
		/* margin-top:14px; */
	}
	#sp_menu_wrap #sp_menu_body #sp_menu_body_inner {
		padding: 4px 0px 0px;
	}
	#sp_menu_wrap #sp_menu_body ul li {
		padding: 6px 0;
		text-align: center;
		border-bottom: 1px solid #f4b5c2;
	}
	#sp_menu_wrap #sp_menu_body ul li a {
		color: #fff;
		font-size: 12pt;
		padding: 8px 4px 2px 4px;
		width: 100%;
		display: inline-block;
		line-height: 1.4em;
	}
	#sp_menu_wrap #sp_menu_body ul li.out {
		color: #fff;
		opacity: 0.5;
		font-size: 12pt;
		padding: 8px 4px;
		width: 100%;
		display: inline-block;
		border-bottom: 0;
	}
	#sp_menu_wrap #sp_menu_body #sp_sns_btn {
		padding: 12px 0;
	}
	#sp_menu_wrap #sp_menu_body #sp_sns_btn img {
		padding-right: 12px;
		width: 30px;
	}
	#sp_menu_wrap #sp_menu_body #sp_sns_btn ul li {
		width: 50%;
		text-align: center;
		float: left;
		border-bottom: 0;
		padding: 0;
	}
	#sp_menu_wrap #sp_menu_body #sp_sns_btn ul li a {
		padding: 10px 0;
		border-right: 1px solid #f4b5c2;
	}
	#sp_menu_wrap #sp_menu_body #sp_sns_btn ul li:last-child {
		border-right: 0;
		border-top: 0;
	}
	#sp_menu_wrap #sp_menu_body #sp_sns_btn ul li:last-child a {
		border-right: 0;
		border-top: 0;
	}
	#sp_menu_wrap #sp_menu_body #sp_sns_btn ul li {
		width: 100%;
	}
	#sp_menu_wrap ul li span.sp_subtitle {
		font-size: 9pt;
	}
	#header {
		width: 100%;
	}
	#header #wanted {
		top: 0;
		right: auto;
		left: 0;
		display: none;
	}
	#header #header_logo {
		text-align: left;
		width: 80%;
		padding-bottom: 1em;
	}
	#header_inner {
		padding-top: 12px;
		padding-bottom: 14px;
	}
	#header #menu {
		display: none;
	}
	.top_page #main_contents_inner #top_block1,
	#main_contents_inner #top_block1 {
		width: 100%;
		float: none;
	}
	#main_contents_inner #top_block2 {
		width: 100%;
		float: none;
		margin-top: 40px;
	}
	#main_contents_inner #top_block2 #banner1 {
		text-align: center;
	}
	#outline #outline_cont_wrap {
		padding-left: 0;
		padding-right: 0;
		padding-bottom: 70px;
	}
	#outline #outline_upper #outline_block1 {
		width: 100%;
		float: none;
	}
	#outline #outline_upper #outline_block2 {
		width: 100%;
		float: none;
		margin: 30px auto 30px auto;
		text-align: center;
	}
	#outline #outline_lower #facebook_area {
		float: none;
		width: 100%;
	}
	#outline #outline_lower #outline_block3 {
		float: none;
		width: 100%;
	}
	#fb_box {
		width: 90%;
		margin: 0 auto;
	}
	.modal_cont {
		height: auto;
	}
	#outline #outline_upper #outline_block1 #btn_about p a {
		margin: 0 auto;
	}
	#outline #outline_lower #outline_block3 table tr th {
		display: block;
	}
	#outline #outline_lower #outline_block3 table tr td {
		display: block;
	}
	#outline_table table tr.space_bottom th {
		padding-bottom: 0;
	}
	/* modal */
	.modal-content .modal_cont .cont1 .cont1_pic {
		width: 100%;
	}
	.modal-content .modal_cont .cont1 .cont1_info {
		width: 100%;
	}
	.modal-content .modal_cont .cont1 .cont1_info p {
		text-align: left;
	}
	.modal-content .modal_cont .cont2 p {
		text-align: left;
	}
	.cont1_sampler {
		text-align: left;
	}
	.modal_cont_wrap {
		height: 92%;
	}
	.modal-content .modal_cont .cont3 p {
		line-height: 1.6em;
		text-align: left;
	}
	.modal-content .modal_cont .cont3 p a {
		padding: 0;
	}
	#news_block table tr th {
		display: block;
		text-align: left;
		line-height: 1.6em;
	}
	#news_block table tr td {
		display: block;
		padding-bottom: 14px;
		line-height: 1.6em;
	}
	/* about_page =================================== */
	.about_page .block_title .page_title {
		left: -40px;
		top: -23px;
	}
	#about #about_cont1 #cont1_pic #cont1_pic_main {
		text-align: center;
	}
	#about #about_cont1 #cont1_pic #cont1_pic_sub ul li {
		width: 100%;
		float: none;
		text-align: center;
	}
	#about #about_cont1 #cont1_pic #cont1_pic_sub ul li img {
		width: auto;
		text-align: center;
	}
	#about #about_cont1 #cont1_pic #cont1_pic_sub ul li:nth-child(2n) {
		text-align: center;
	}
	#about #about_cont1 #cont1_pic {
		width: 100%;
		float: none;
	}
	#about #about_cont1 #cont1_txt {
		width: 100%;
		float: none;
	}
	#about #about_cont2 #process .one_pro {
		float: none;
		width: 100%;
		margin-bottom: 24px;
	}
	#about #about_cont2 #process .arrow {
		display: none;
	}
	#about #about_cont2 #process {
		display: block;
		text-align: center;
	}
	.about_page #program_note p {
		text-align: left;
	}
	.en_block2 {
		text-align: left;
	}
	.profile_stl #prof_img {
		text-align: center;
		float: none;
		margin: 0 auto;
	}
	.profile_stl #prof_cont {
		float: none;
		width: 100%;
	}
	.profile_stl #prof_cont #prof_name p {
		text-align: center;
	}
	#profile #prof_img {
		float: none;
		width: 100%;
		text-align: center;
	}
	#profile #prof_cont #prof_name p {
		text-align: center;
	}
	#profile #prof_cont #prof_title p {
		text-align: center;
	}
	#profile #prof_cont {
		float: none;
		width: 100%;
	}
	#footer #copyright p {
		line-height: 1.4em;
	}
	#contact p {
		font-size: 10pt;
		line-height: 2em;
	}
	.block {
		padding-bottom: 50px;
	}
	.about_page #message .block_title .page_title {
		left: -84px;
		top: -28px;
	}
	.about_page #message #main_message p {
		text-align: left;
	}
	.about_page #message p {
		text-align: left;
	}
	.about_page #about2 {
		width: 100%;
	}
	.about_page #message #message_credit p {
		text-align: left;
	}
	/* event_map ================================ */
	.event_map_page .block_title {
		padding-bottom: 50px;
	}
	.event_map_page .block_title .page_title {
		left: -61px;
		top: -21px;
		width: 224px;
	}
	#place .one_place .one_place_second .one_place_txt {
		padding-bottom: 30px;
	}
	#place .one_place .opening_event .op_one .op_first {
		width: 100%;
		float: none;
	}
	#place .one_place .opening_event .op_one .op_second {
		width: 100%;
		float: none;
		text-align: center;
	}
	#place .one_place .opening_event .op_one .op_second {
		padding-top: 20px;
		padding-bottom: 20px;
	}
	.event_map_page #place #sp_event_map_list ul li {
		width: 100%;
		float: left;
		margin-bottom: 12px;
	}
	.event_map_page #place #sp_event_map_list ul li {
		margin-bottom: 5px;
		float: none;
	}
	.event_map_page #place #sp_event_map_list ul li .li_inner p a {
		padding: 3px 10px;
	}
	#place .one_place .opening_event .op_title {
		width: 100%;
	}
	#place .one_place .opening_event .op_title .op_page_title {
		right: 0;
		left: 0;
		margin: auto;
	}
	.event_map_page #place #sp_event_map_list ul li .li_inner {
		background-position: top 11px right 10px;
	}
	.event_map_page .title_sp {
		width: 100%;
		text-align: center;
	}
	.event_map_page #place {
		padding-top: 45px;
	}
	.event_map_page #place .block_cont .star_note p {
		font-size: 10pt;
	}
	.event_map_page #place .block_cont .star_note p span.star {
		font-size: 11pt;
	}
	/* message_page ========================= */
	.message_page #message .block_title .page_title {
		left: -84px;
		top: -28px;
	}
	.message_page #message #main_message p {
		text-align: left;
	}
	.message_page #message p {
		text-align: left;
	}
	/*
.message_page #supporter ul li {
	width:100%;
	text-align:center;
	margin-right:0;
}
*/
	.message_page #supporter ul li .li_inner {
		width: 100%;
	}
	.message_page #supporter .modal-content {
		width: 90%;
	}
	.message_page #supporter .modal-cont-inner {
		overflow: auto;
		padding: 0;
		height: 100%;
	}
	.message_page #supporter .modal-cont-inner .inner_wrap {
		padding: 20px;
	}
	.message_page #supporter .modal-content .modal_cont_wrap {
		padding-right: 0;
		padding-left: 0;
	}
	#place .one_place .one_place_first {
		float: none;
		width: 100%;
	}
	#place .one_place .one_place_first .first_pic {
		text-align: center;
	}
	#place .one_place .one_place_first .btn_application p {
		text-align: center;
	}
	#place .one_place .one_place_date {
		margin-top: 24px;
	}
	#place .one_place .one_place_second p {
		text-align: center;
	}
	#place .one_place .one_place_second {
		float: none;
		width: 100%;
	}
	.gallery_page #supporter .modal-content .supporter_pic img {
		height: auto;
	}
	.gallery_page #supporter ul li .supporter_info p {
		text-align: center;
	}
	/*
sketchbook_page
*/
	.sketchbook_page #main_contents_inner {
		width: 100%;
	}
	.sketchbook_page .sketch_title2 p {
		font-size: 13pt;
	}
	.sketchbook_page .box_msg p {
		text-align: left;
	}
	/* map_page ========================= */
	.map_page #place_list table tr td {
		display: block;
		width: auto;
	}
	.map_page #place_list table tr td.td1 {
		padding: 12px 0 8px 4px;
	}
	.map_page #place_list table tr td.td2 {
		padding: 0px 0 8px 12px;
	}
	.map_page #place_list table tr td.td3 {
		padding-top: 0;
		padding-left: 12px;
		padding-bottom: 0;
	}
	.map_page #place_list table tr td.td3 span.detail {
		float: left;
		padding-bottom: 14px;
	}
	.map_page #place_list {
		padding-bottom: 40px;
		margin-bottom: 30px;
	}
	#place .one_place .one_place_first {
		padding-top: 30px;
	}
	.map_page #place .one_place .one_place_date p {
		text-align: left;
	}
	/* venue_page ========================= */
	.venue_page .place_list table tr td {
		display: block;
		width: auto;
	}
	.venue_page .place_list table tr td.td1 {
		padding: 12px 0 8px 4px;
	}
	.venue_page .place_list table tr td.td2 {
		padding: 0px 0 8px 12px;
	}
	.venue_page .place_list table tr td.td3 {
		padding-top: 0;
		padding-left: 12px;
		padding-bottom: 0;
	}
	.venue_page .place_list table tr td.td3 span.detail {
		float: left;
		padding-bottom: 14px;
	}
	.venue_page .place_list {
		padding-bottom: 40px;
		margin-bottom: 30px;
	}
	.venue_page .pref_title {
		float: none;
	}
	.venue_page .pref_title_wrap .star_note {
		float: none;
	}
	.venue_page .pref_title_wrap .star_note p {
		line-height: 1.4em;
	}
	.venue_page #place .block_cont .star_note p {
		padding-left: 0;
	}
	.venue_page #place .block_cont .star_note {
		padding: 0px 0 6px 0;
	}
	.venue_page .pref_title {
		margin-bottom: 10px;
	}
	.venue_page .pref_list p {
		font-size: 13pt;
		letter-spacing: 0;
	}
}
/*============================================================================================================
*/
@media screen and (max-width:414px) {
	.audiojs {
		width: 100%;
	}
	.audiojs .scrubber {
		width: 40%;
	}
	.top_page .youtube iframe {
		height: 184px;
	}
	.venue_page .pref_list p {
		font-size: 11pt;
	}
	.modal-open .supporter_pic {
		width: 100%;
		height: auto;
	}
	.modal-open .supporter_pic img {
		position: relative;
		width: 100%;
		height: auto;
		top: auto;
		left: auto;
		transform: none;
		-webkit-transform: none;
	}
	#supporter,
	#outline {
		width: 100%;
	}
	.message_box,
	.message_box p {
		width: 100%;
	}
	.message_box p img {
		float: none;
		width: 100%;
		margin: 0 0 1em;
	}
	.message_menu li {
		width: 100%;
		padding: .25em 0;
		font-size: .9em;
	}
	.message_menu li:after {
		content: "▼";
	}
	.message_menu li.on:after {
		content: "▲";
	}
	.message_box div {
		width: 100%;
		display: block;
	}
	.message_box div p {
		width: 100%;
	}
	.modal_prof {
		width: 70%;
	}
	.modal_prof .modal-cont-inner {
		overflow: scroll;
		height: 100%;
	}
	.modal_prof .inner_wrap {
		display: block;
	}
	.modal_prof .inner_wrap>div:nth-child(1),
	.modal_prof .inner_wrap>div:nth-child(2) {
		width: 100%;
	}
	.about-box {
		margin: 0 0 3em;
	}
	.about-flex section {
		display: block;
	}
	.about-flex section div:nth-child(1),
	.about-flex section div:nth-child(2) {
		width: 100%;
	}
	/*.design-mv {
		margin:0;
		width:100%;
		height: 300px;
		overflow: hidden;
		position: relative;
	}
	.design-mv img {
		left: -180px;
		position: absolute;
		width: auto;
		max-width: none;
		height: 300px;
	}*/
	.design-mv {
		margin: 20px 0;
		width: 100%
	}
	.design-txt {
		width: 96%;
		padding: 0 0 60px;
		text-align: left;
	}
	#designer .one_d {
		padding: 30px 0;
	}
	h2.message_tl {
		font-size: 1.7em;
		text-align: left;
		line-height: 1.4;
	}
	.theme .serif {
		font-size: 1.7em;
	}
	.theme p {
		text-align: left;
		font-size: 1.2em;
	}
	.message_menu.comingsoon li:after,
	.message_menu.comingsoon li.on:after {
		position: relative;
		line-height: 1.2;
		top: auto;
		bottom: 0px;
		text-align: center;
	}
}
/*============================================================================================================
*/
@media screen and (max-width:375px) {
	.audiojs .scrubber {
		width: 34%;
	}
	.event_map_page #place #sp_event_map_list ul li .li_inner p a {
		font-size: 9.5pt;
	}
	.top_page .youtube iframe {
		height: 164px;
	}
}
/*============================================================================================================
*/
@media screen and (max-width:320px) {
	.top_page .youtube iframe {
		height: 136px;
	}
}
