@charset "utf-8";
/*グローバル日本語版================================= */


@media screen and (max-width:767px) {

	/*==================================================
[sp] #contents common parts
================================================== */
	#suntory_contents #contents h2 {
		margin: 0 4vw;
		font-size: 5.333333333vw;
		font-weight: bold;
		line-height: 1.5;
	}

	#suntory_contents #contents h3 {
		display: block;
		padding: 4vw;
		width: 100%;
		font-size: 4.266666667vw;
		font-weight: bold;
		line-height: 1.5;
		background: #F7F2E8;
	}

	#suntory_contents #contents h4 {
		margin: 8vw 4vw 0;
		font-size: 4.266666667vw;
		font-weight: bold;
		line-height: 1.5;
	}

	#suntory_contents #contents p,
	#suntory_contents #contents dl {
		margin: 0 4vw;
	}

	#suntory_contents #contents p,
	#suntory_contents #contents dt,
	#suntory_contents #contents dd {
		font-size: 3.733333333vw;
		line-height: 1.7;
	}

	#suntory_contents #contents .pager_head {
		margin: 2.667vw 4vw 0;
		display: flex;
	}

	#suntory_contents #contents .pager_head li {
		line-height: 1.2;
	}

	#suntory_contents #contents .pager_head li + li {
		border-left: 0.267vw solid #881133;
    padding-left: 2.133vw;
    margin-left: 2.133vw;
	}

	#suntory_contents #contents .pager_head + .ipmc_series {
		margin: 10vw 0 0;
	}

	#suntory_contents #contents p.lead_txt {
		margin-top: 4.8vw;
	}

	#suntory_contents #contents h3+p {
		margin-top: 6.4vw;
	}

	#suntory_contents #contents h4+p,
	#suntory_contents #contents h4+dl,
	#suntory_contents #contents p+p {
		margin-top: 3.2vw;
	}

	#suntory_contents #contents p.notes {
		font-size: 3.2vw;
	}

	#suntory_contents #contents figcaption,
	#suntory_contents #contents p.caption {
		margin: 1.6vw 0 0;
		font-size: 3.2vw;
		line-height: 1.5;
	}

	#suntory_contents .copyright {
		margin-top: 0.8vw;
		font-size: 2.666666667vw;
	}

	#suntory_contents .copyright::before {
		font-size: 2.666666667vw;
	}

	#suntory_contents #hall_contents .bt_lang {
		width: 28vw;
		height: 9.6vw;
	}

	#suntory_contents #hall_contents .bt_lang a {
		display: block;
		text-align: center;
		text-decoration: none;
		color: #fff;
		width: 100%;
		height: 100%;
		padding: 0 2.4vw 0 0;
		font-size: 3.2vw;
		line-height: 9.6vw;
		background: #813 url(/suntoryhall/legacy/assets/img/icon_external_white.svg) no-repeat right 3.2vw center;
		background-size: 2.4vw;
	}

	#suntory_contents #contents .index_box {
		margin: 8vw 4vw 0;
		box-shadow: 0 0 1.6vw 0 rgba(0, 0, 0, .15);
	}

	#suntory_contents #contents .index_box a {
		display: block;
		padding: 5.6vw 0 8vw;
		width: 100%;
		height: 100%;
		color: #222;
		text-decoration: none;
	}

	#suntory_contents #contents .index_box .sub_title {
		display: flex;
		justify-content: flex-start;
		align-items: center;
		margin: 0;
		height: 9.6vw;
		padding-left: 9.6vw;
		font-size: 4.266666667vw;
		line-height: 1.5;
		font-weight: bold;
		position: relative;
	}

	#suntory_contents #contents .index_box .sub_title::before {
		content: "";
		display: block;
		position: absolute;
		width: 6.4vw;
		height: 9.6vw;
		left: 0;
		background: #813;
	}

	#suntory_contents #contents .index_box .sub_title::after {
		content: "";
		display: block;
		position: absolute;
		left: 1.6vw;
		width: 2.133333333vw;
		height: 2.133333333vw;
		margin: auto;
		border-top: 1px solid #fff;
		border-right: 1px solid #fff;
		transform: rotate(45deg);
	}

	#suntory_contents #contents .index_box a p {
		margin: 5.6vw 5.6vw 0;
	}

	#suntory_contents #contents .index_box a figure {
		width: 69.6vw;
		margin: 5.6vw auto 0;
	}

	#suntory_contents #contents .two_cloumn {
		margin: 6.4vw 0 0;
	}

	#suntory_contents #contents .two_cloumn+.two_cloumn {
		border-top: 1px dotted #CCC;
		padding: 6.4vw 0 0;
	}

	#suntory_contents #contents .two_cloumn .text_block h4:first-child {
		margin-top: 0;
	}

	#suntory_contents #contents .two_cloumn .fig_block {
		margin: 5.6vw 4vw 0;
	}

	#suntory_contents #contents .two_cloumn .fig_block figure {
		width: 69.6vw;
		margin: 0 auto;
	}

	#suntory_contents #contents .two_cloumn.fgdouble .fig_block {
		display: flex;
		flex-flow: row wrap;
		justify-content: space-between;
		gap: 4vw;
	}

	#suntory_contents #contents .two_cloumn.fgdouble .fig_block figure {
		width: 44vw;
	}

	#suntory_contents #contents .latest {
		margin: 8vw 4vw 0;
	}

	#suntory_contents #contents .latest h3 {
		background: #F0E5D1;
	}

	#suntory_contents #contents .latest .two_cloumn {
		margin: 0;
		padding: 4vw 0 8vw;
		background: #F7F2E8;
	}

	#suntory_contents #contents .latest .two_cloumn.fgdouble .fig_block {
		display: block;
	}

	#suntory_contents #contents .latest .two_cloumn.fgdouble .fig_block figure {
		width: 69.6vw;
		margin: 0 auto;
	}

	#suntory_contents #contents .latest .two_cloumn.fgdouble .fig_block figure+figure {
		margin-top: 4vw;
	}


	/*==================================================
[sp] gpj_top
================================================== */
	#suntory_contents #contents #gpj_top01 {
		position: relative;
		margin: 0;
	}

	#suntory_contents #gpj_top01 .bt_lang {
		margin: 0 4vw 0 auto;
	}

	#suntory_contents #gpj_top01 .index_box a {
		padding: 5.6vw 0;
	}

	#suntory_contents #gpj_top01 .index_box a p {
		margin: 4vw 5.6vw 0;
	}


	/*==================================================
[sp] container_gpj_artists
================================================== */
	/*index---------------------------------------------------*/
	#suntory_contents #artists_index01 .index_box:first-child {
		margin-top: 0;
	}

	#suntory_contents #contents #artists_index01 {
		margin-top: 0;
	}

	/*wph-week---------------------------------------------------*/
	#suntory_contents #wph-week01 ul.list_conductor {
		display: flex;
		flex-flow: row wrap;
		justify-content: space-between;
		gap: 4vw;
		margin: 4vw 4vw 0;
	}

	#suntory_contents #wph-week01 .list_conductor li {
		width: 44vw;
		margin: 1.6vw 0 0;
	}

	#suntory_contents #wph-week06 dl {
		display: flex;
		flex-flow: row wrap;
	}

	#suntory_contents #wph-week06 dt {
		width: 4em;
	}

	#suntory_contents #wph-week06 dd {
		width: calc(100% - 4em);
	}

	/*special---------------------------------------------------*/
	#suntory_contents #special02 .program {
		font-size: 4.266666667vw;
		font-weight: bold;
		line-height: 1.5;
	}

	#suntory_contents #special02 .two_cloumn:last-child {
		border-bottom: 1px dotted #CCC;
		padding: 6.4vw 0;
	}

	/*hall-opera---------------------------------------------------*/
	#suntory_contents #hall-opera02 .program,
	#suntory_contents #hall-opera02 .year,
	#suntory_contents #hall-opera03 .program,
	#suntory_contents #hall-opera03 .year,
	#suntory_contents #hall-opera04 .program,
	#suntory_contents #hall-opera04 .year,
	#suntory_contents #hall-opera05 .program,
	#suntory_contents #hall-opera05 .year {
		font-size: 4.266666667vw;
		font-weight: bold;
		line-height: 1.5;
	}

	#suntory_contents #hall-opera02 .two_cloumn:last-child {
		border-bottom: 1px dotted #CCC;
		padding: 6.4vw 0;
	}

	#suntory_contents #hall-opera03.theme,
	#suntory_contents #hall-opera04.theme,
	#suntory_contents #hall-opera05.theme {
		padding: 4vw;
		margin-left: 4vw;
		margin-right: 4vw;
		border: 1px solid #DFDFDF;
	}

	#suntory_contents #hall-opera03.theme p,
	#suntory_contents #hall-opera04.theme p,
	#suntory_contents #hall-opera05.theme p {
		margin-left: 0;
		margin-right: 0;
	}

	/*bcycle---------------------------------------------------*/
	#suntory_contents #bcycle01 .two_cloumn .fig_block {
		margin-top: 0;
	}

	#suntory_contents #bcycle01 .two_cloumn .fig_block figure {
		width: 36vw;
	}

	#suntory_contents #bcycle01 .two_cloumn .text_block {
		margin-top: 5.6vw;
	}

	#suntory_contents #bcycle02 .two_cloumn {
		position: relative;
	}

	#suntory_contents #bcycle02 .year,
	#suntory_contents #bcycle02 .program {
		font-size: 4.266666667vw;
		font-weight: bold;
		line-height: 1.5;
	}

	#suntory_contents #bcycle02 .program {
		margin-bottom: 56vw;
	}

	#suntory_contents #bcycle02 .two_cloumn .fig_block {
		width: 100%;
		margin: 0;
		top: 21.6vw;
		position: absolute;
	}

	#suntory_contents #bcycle02 .two_cloumn:first-of-type .fig_block {
		top: 16vw;
	}

	#suntory_contents #bcycle02 .two_cloumn .fig_block figure {
		width: 36vw;
	}

	#suntory_contents #bcycle02 .two_cloumn.construction p {
		margin: 0 4vw;
		color: #999;
	}

	#suntory_contents #bcycle02 .two_cloumn.construction p .notes {
		font-size: 3.733333333vw;
	}

	/*==================================================
[sp] container_gpj_composers
================================================== */
	/*index---------------------------------------------------*/
	#suntory_contents #contents #composers_index01,
	#suntory_contents #contents #composers_index01 .index_box.summer {
		margin-top: 0;
	}

	#suntory_contents #composers_index01 .btn_single, #suntory_contents #contents .pager_foot .btn_single {
		margin: 0;
	}

	#suntory_contents #composers_index01 .btn_single a,#suntory_contents #contents .pager_foot .btn_single a {
		display: flex;
		justify-content: flex-start;
		align-items: center;
		position: relative;
		height: 13.6vw;
		padding: 0 8vw;
		margin: 3.2vw 0 0;
		color: #fff;
		background: #813;
	}

	#suntory_contents #contents .pager_foot .btn_single a {
		text-decoration: none;
	}

	#suntory_contents #composers_index01 .btn_single a::before, #suntory_contents #contents .pager_foot .btn_single a::before {
		content: "";
		display: block;
		position: absolute;
		width: 4.8vw;
		height: 7.2vw;
		right: 3.2vw;
		background: #A45;
	}

	#suntory_contents #composers_index01 .btn_single a::after, #suntory_contents #contents .pager_foot .btn_single a::after {
		content: "";
		display: block;
		position: absolute;
		right: 5.066666667vw;
		width: 1.6vw;
		height: 1.6vw;
		margin: auto;
		border-top: 0.26666667vw solid #fff;
		border-right: 0.26666667vw solid #fff;
		transform: rotate(45deg);
	}

	#suntory_contents #composers_index01 .index_box.summer a {
		padding: 5.6vw 0 0;
	}

	#suntory_contents #composers_index01 .index_box.summer .grid, #suntory_contents #contents .pager_foot {
		margin: 0 5.6vw 8vw;
	}

	#suntory_contents #composers_index01 .index_box.summer .grid .box figure {
		width: 69.6vw;
		margin: 6.4vw auto 0;
	}

	#suntory_contents #composers_index01 .index_box.summer .btn_single a, #suntory_contents #contents .pager_foot .btn_single a {
		padding: 0 8vw;
	}

	#suntory_contents #composers_index01 .index_box.ipmc {
		padding: 5.6vw 0 8vw;
	}

	#suntory_contents #composers_index01 .index_box.ipmc .sub_title {
		display: flex;
		justify-content: flex-start;
		align-items: center;
		margin: 0;
		height: 9.6vw;
		padding-left: 6.4vw;
		font-size: 4.266666667vw;
		line-height: 1.5;
		font-weight: bold;
		position: relative;
	}

	#suntory_contents #composers_index01 .index_box.ipmc .sub_title::before {
		width: 2.4vw;
		background: #E0CCA3;
		border-radius: 2px;
	}

	#suntory_contents #composers_index01 .index_box.ipmc .sub_title::after {
		content: none;
	}

	#suntory_contents #composers_index01 .index_box.ipmc .sub_title+p {
		margin: 4vw 5.6vw 0;
	}

	#suntory_contents #composers_index01 .index_box.ipmc .img_grid {
		margin: 6.4vw 5.6vw 0;
		display: flex;
		flex-flow: row wrap;
		justify-content: space-between;
	}

	#suntory_contents #composers_index01 .index_box.ipmc .img_grid figure {
		max-width: 25%;
		-webkit-filter: grayscale(100%);
		-moz-filter: grayscale(100%);
		-ms-filter: grayscale(100%);
		-o-filter: grayscale(100%);
		filter: grayscale(100%);
	}

	#suntory_contents #composers_index01 .index_box.ipmc .btn_single.large {
		margin: 6.4vw 5.6vw 0;
	}

	#suntory_contents #composers_index01 .index_box.ipmc .btn_single.large a {
		height: auto;
		margin: 0;
		padding: 3.2vw 8vw 3.2vw 4.8vw;
		line-height: 1.5;
	}

	#suntory_contents #composers_index01 .index_box.ipmc .grid {
		margin: 6.4vw 5.6vw 0;
	}

	#suntory_contents #composers_index01 .index_box.ipmc .btn_single a, #suntory_contents #contents .pager_foot .btn_single a {
		padding: 0 8vw 0 4.8vw;
	}

	/*[sp] numano ---------------------------------------------------*/
	#suntory_contents #numano01 p.writer,
	#suntory_contents #numano01 p.credit {
		margin-top: 3.2vw;
		text-align: right;
	}

	#suntory_contents #numano01 p.writer+h4,
	#suntory_contents #numano01 .with_img+p {
		margin-top: 3.2vw;
	}

	#suntory_contents #numano01 .with_img {
		margin-top: 3.2vw;
	}

	#suntory_contents #numano01 .text_block {
		/*	width: calc(100% - 230px);*/
	}

	#suntory_contents #numano01 .fig_block {
		margin: 5.6vw 4vw;
	}

	#suntory_contents #numano01 figure {
		width: 72vw;
		margin: 0 auto;
		text-align: center;
	}

	#suntory_contents #numano01 figure img {
		width: 40vw;
	}

	#suntory_contents #numano01 figcaption {
		text-align: left;
	}

	#suntory_contents #numano01 figure+figure {
		margin-top: 8vw;
	}

	/*[sp] s1 s2 s3---------------------------------------------------*/
	#suntory_contents #contents .ipmc_series li {
		border-bottom: 1px #ccc dotted;
		padding-bottom: 7.2vw;
		margin-bottom: 5.6vw;
	}

	#suntory_contents #contents .ipmc_series ul li:first-child {
		border-top: 1px #ccc dotted;
		padding-top: 5.6vw;
	}

	#suntory_contents #contents .ipmc_series h4 {
		margin: 0 4vw 4vw;
		font-size: 4.8vw;
		font-weight: bold;
		line-height: 1.5;
	}

	#suntory_contents #contents .ipmc_series figure.portrait {
		width: 32vw;
		margin: 0 auto 3.2vw;
	}

	#suntory_contents #contents .ipmc_series figure.portrait picture {
		/*		width: 110px;*/
		display: block;
	}

	#suntory_contents #contents .ipmc_series .text_block {}

	#suntory_contents #contents .ipmc_series .prog_day {
		font-size: 4.266666667vw;
		font-weight: bold;
	}

	#suntory_contents #contents .ipmc_series .prog_day+p {
		margin-top: 1.6vw;
	}

	#suntory_contents #contents dl.prog_detail dt {
		margin: 2.4vw 0 0;
		font-weight: bold;
		font-size: 4vw;
	}

	#suntory_contents #contents dl.prog_detail dd {
		font-size: 3.733333333vw;
	}

	#suntory_contents #contents .ipmc_series .prog_detail+.prog_day {
		margin-top: 5.6vw;
	}

	#suntory_contents #contents .ipmc_series figure.scene {
		margin: 5.6vw 4vw 0;
	}

	#suntory_contents #contents .ipmc_series figure.scene picture {
		width: 69.6vw;
		margin: 0 auto;
		display: block;
	}

	/*commission--------------------------------------------*/
	#suntory_contents #contents #commission01 .grid,
	#suntory_contents #contents #commission02 .grid {
		margin: 6.4vw 0 0;
		display: flex;
		flex-flow: column wrap;
		justify-content: flex-start;
		align-items: flex-start;
	}

	#suntory_contents #contents #commission01 .prog_title,
	#suntory_contents #contents #commission02 .prog_title {
		width: 100%;
		margin: 0 0 4vw;
	}

	#suntory_contents #contents #commission01 .prog_title p+p,
	#suntory_contents #contents #commission02 .prog_title p+p {
		margin: 1.6vw 4vw 0;
	}

	#suntory_contents #contents #commission02 .prog_title p.prog_day {
		font-size: 16px;
		font-weight: bold;
	}

	#suntory_contents #contents #commission01 figure.portrait {
		width: 32vw;
		margin: 0 auto 3.2vw;
		order: 1;
	}

	#suntory_contents #contents #commission01 .prog_title {
		order: 2;
	}

	#suntory_contents #contents #commission01 .text_block {
		order: 3;
	}

	#suntory_contents #contents #commission01 figure.scene {
		order: 4;
	}

	#suntory_contents #contents #commission02 .prog_detail+p.notes {
		margin-top: 2.4vw;
	}

	#suntory_contents #contents #commission01 figure.scene,
	#suntory_contents #contents #commission02 figure.scene {
		display: block;
		width: 69.6vw;
		margin: 5.6vw auto 0;
	}

	#suntory_contents #contents #commission01 .scene a {
		display: block;
		width: 100%;
		margin: 0;
		position: relative;
		border-color: #fff;
		border: none;
	}

	#suntory_contents #contents #commission01 .scene a::before {
		content: '';
		width: 13.333333333333332vw;
		height: 13.333333333333332vw;
		background: url(../img/icon_play.svg) no-repeat 0 0;
		background-size: 13.333333333333332vw 13.333333333333332vw;
		position: absolute;
		top: calc(50% - 6.666666666666667vw);
		left: calc(50% - 6.666666666666667vw);
		z-index: 100;
	}

	#suntory_contents #contents #commission01 .caption {
		text-align: center;
	}

	/*==================================================
[sp] container_gpj_halls
================================================== */
	/*index---------------------------------------------------*/
	#suntory_contents #contents h2.pc_item+p.lead_txt {
		margin-top: 0;
	}

	/*halls common---------------------------------------------------*/
	#suntory_contents #contents .alliance {
		padding: 0 4vw;
	}

	#suntory_contents #contents .alliance .place {
		display: flex;
		justify-content: center;
		align-items: center;
		text-align: center;
		padding: 2.4vw;
		margin: 0;
		font-size: 15px;
		font-weight: bold;
		line-height: 1.5;
		background: #F0E5D1;
	}

	#suntory_contents #contents .alliance .two_cloumn {
		justify-content: center;
		align-items: center;
		margin: 0;
		padding: 5.6vw 4.8vw;
		background: #F7F2E8;
	}

	#suntory_contents #contents .alliance .two_cloumn .fig_block,
	#suntory_contents #contents .alliance .two_cloumn .fig_block figure {
		width: 36vw;
		margin: 0 auto;
		text-align: center;
	}

	#suntory_contents #carnegie01 .two_cloumn.fgdouble .fig_block,
	#suntory_contents #esplanade01 .two_cloumn.fgdouble .fig_block,
	#suntory_contents #musikverein01 .two_cloumn.fgdouble .fig_block {
		display: block;
	}

	#suntory_contents #carnegie01 .two_cloumn.fgdouble .fig_block figure,
	#suntory_contents #esplanade01 .two_cloumn.fgdouble .fig_block figure,
	#suntory_contents #musikverein01 .two_cloumn.fgdouble .fig_block figure {
		width: 69.6vw;
		margin: 0 auto;
	}

	#suntory_contents #carnegie01 .two_cloumn.fgdouble .fig_block figure+figure,
	#suntory_contents #esplanade01 .two_cloumn.fgdouble .fig_block figure+figure,
	#suntory_contents #musikverein01 .two_cloumn.fgdouble .fig_block figure+figure {
		margin-top: 4vw;
	}

	#suntory_contents #contents .alliance .two_cloumn p {
		margin: 0;
	}

	#suntory_contents #musikverein03 dt {
		margin: 5.6vw 0 0;
	}

	#suntory_contents #musikverein03 dd {
		margin: 1.6vw 0 0;
	}

	/*musikverein ---------------------------------------------------*/
	#suntory_contents #contents #musikverein01 {
		margin-top: 0;
	}

	#suntory_contents #musikverein02.alliance .two_cloumn .text_block {
		margin: 5.6vw 0 0;
	}

	#suntory_contents #musikverein02.alliance .two_cloumn .translation {
		margin: 0 0 4vw;
		font-weight: bold;
	}

	/*carnegie ---------------------------------------------------*/
	#suntory_contents #contents #carnegie01 {
		margin-top: 0;
	}

	#suntory_contents #carnegie02.alliance .two_cloumn .fig_block.right {
		width: 100%;
		margin: 5.6vw 0 0;
		text-align: center;
	}

	#suntory_contents #carnegie02.alliance .two_cloumn .fig_block.right figure {
		width: 100%;
	}

	#suntory_contents #carnegie02.alliance .two_cloumn .fig_block.right img {
		width: 69.6vw;
	}

	/*esplanade ---------------------------------------------------*/
	#suntory_contents #contents #esplanade01 {
		margin-top: 0;
	}


}

@media print,
screen and (min-width:768px) {
	/*pc================================================== */

	/*==================================================
[pc] #contents common parts
================================================== */
	#suntory_contents #contents a:hover {
		text-decoration: underline;
	}

	#suntory_contents #contents h2 {
		max-width: 1084px;
		min-width: 960px;
		margin: 0 auto;
		font-size: 26px;
		font-weight: bold;
		line-height: 1;
	}

	#suntory_contents #contents h3 {
		display: flex;
		align-items: center;
		height: 60px;
		padding: 0 30px;
		font-size: 20px;
		font-weight: bold;
		line-height: 1;
		background: #F7F2E8;
	}

	#suntory_contents #contents h4 {
		margin-top: 30px;
		font-size: 18px;
		font-weight: bold;
		line-height: 1;
	}

	#suntory_contents #contents p,
	#suntory_contents #contents dt,
	#suntory_contents #contents dd {
		font-size: 15px;
		line-height: 1.7;
	}

	#suntory_contents #contents .pager_head {
		margin: 20px 0 0;
		display: flex;
	}

	#suntory_contents #contents .pager_head li {
		line-height: 1.2;
	}

	#suntory_contents #contents .pager_head li + li {
		border-left: 1px solid #881133;
    padding-left: 12px;
    margin-left: 12px;
	}

	#suntory_contents #contents .pager_head li a {
		text-decoration: underline;
	}

	#suntory_contents #contents .pager_head + .ipmc_series {
		margin: 40px 0 0;
	}

	#suntory_contents #contents p.lead_txt {
		margin-top: 30px;
	}

	#suntory_contents #contents h3+p {
		margin-top: 30px;
	}

	#suntory_contents #contents h4+p,
	#suntory_contents #contents h4+dl,
	#suntory_contents #contents p+p {
		margin-top: 15px;
	}

	#suntory_contents #contents p.notes {
		font-size: 13px;
	}

	#suntory_contents #contents figcaption,
	#suntory_contents #contents p.caption {
		margin: 5px 0 0;
		font-size: 12px;
		line-height: 1.5;
	}

	#suntory_contents .copyright {
		margin-top: 3px;
		font-size: 10px;
	}

	#suntory_contents .copyright::before {
		margin-right: 1px;
		font-size: 11px;
	}

	#suntory_contents #hall_contents .bt_lang {
		width: 100px;
		height: 36px;
	}

	#suntory_contents #hall_contents .bt_lang a {
		display: block;
		text-align: center;
		text-decoration: none;
		color: #fff;
		width: 100%;
		height: 100%;
		padding: 0 10px 0 0;
		font-size: 12px;
		line-height: 36px;
		background: #813 url(/suntoryhall/legacy/assets/img/icon_external_white.svg) no-repeat right 12px center;
		background-size: 9px;
	}

	#suntory_contents #hall_contents .bt_lang a:hover {
		background-color: #c04;
	}

	#suntory_contents #contents .index_box {
		box-shadow: 0 0 6px 0 rgba(0, 0, 0, .15);
		margin-top: 30px;
	}

	#suntory_contents #contents .index_box a {
		display: block;
		padding: 30px;
		width: 100%;
		height: 100%;
		color: #222;
	}

	#suntory_contents #contents .index_box .sub_title {
		display: flex;
		justify-content: flex-start;
		align-items: center;
		margin: 0;
		height: 36px;
		padding-left: 36px;
		font-size: 18px;
		line-height: 1;
		font-weight: bold;
		position: relative;
	}

	#suntory_contents #contents .index_box .sub_title::before {
		content: "";
		display: block;
		position: absolute;
		width: 24px;
		height: 36px;
		left: 0;
		background: #813;
	}

	#suntory_contents #contents .index_box .sub_title::after {
		content: "";
		display: block;
		position: absolute;
		left: 6px;
		width: 8px;
		height: 8px;
		margin: auto;
		border-top: 1px solid #fff;
		border-right: 1px solid #fff;
		transform: rotate(45deg);
	}

	#suntory_contents #contents .index_box a:hover {
		background: #FFFCF3;
		text-decoration: none;
	}

	#suntory_contents #contents .index_box a:hover .sub_title {
		color: #A14;
	}

	#suntory_contents #contents .index_box a:hover .sub_title::before {
		background: #A14;
	}

	#suntory_contents #contents .two_cloumn {
		margin: 30px 0 0;
		display: flex;
		flex-flow: row nowrap;
		justify-content: space-between;
		gap: 4.612546125461255%;
	}

	#suntory_contents #contents .two_cloumn+.two_cloumn {
		border-top: 1px dotted #CCC;
		padding: 30px 0 0;
	}

	#suntory_contents #contents .two_cloumn .fig_block,
	#suntory_contents #contents .two_cloumn .fig_block figure,
	#suntory_contents #contents .two_cloumn.fgdouble .fig_block figure {
		width: 260px;
	}

	#suntory_contents #contents .two_cloumn.fgwide .fig_block,
	#suntory_contents #contents .two_cloumn.fgwide .fig_block figure {
		width: 300px;
	}

	#suntory_contents #contents .two_cloumn.fgdouble .text_block {
		width: calc(100% - 585px);
	}

	#suntory_contents #contents .two_cloumn.fgdouble .fig_block {
		width: 535px;
		display: flex;
		flex-flow: row wrap;
		justify-content: space-between;
		gap: 15px;
	}

	#suntory_contents #contents .two_cloumn .text_block h4:first-child {
		margin-top: 0;
	}

	#suntory_contents #contents .latest h3 {
		background: #F0E5D1;
	}

	#suntory_contents #contents .latest .two_cloumn {
		margin: 0;
		padding: 30px;
		background: #F7F2E8;
	}

	/*==================================================
[pc] gpj_top
================================================== */
	#suntory_contents #contents #gpj_top01 {
		position: relative;
		margin: 0;
	}

	#suntory_contents #gpj_top01 .bt_lang {
		position: absolute;
		right: 0;
		top: -10px;
	}

	#suntory_contents #gpj_top01 .bt_lang+p {
		margin: 0;
	}

	#suntory_contents #gpj_top01 .grid {
		margin: 50px 0 0;
		display: flex;
		flex-flow: row nowrap;
		justify-content: space-between;
	}

	#suntory_contents #gpj_top01 .index_box {
		width: 31.549815498154982%;
		margin: 0;
	}

	#suntory_contents #gpj_top01 .index_box a {
		padding: 25px 30px;
	}

	#suntory_contents #gpj_top01 .index_box .sub_title {
		width: 280px;
		height: 46px;
		margin: 0 auto;
		line-height: 1.3;
	}

	#suntory_contents #gpj_top01 .index_box .sub_title::before {
		top: 5px;
	}

	#suntory_contents #gpj_top01 .index_box .sub_title::after {
		top: 18px;
	}

	#suntory_contents #gpj_top01 .index_box figure {
		width: 280px;
		margin: 20px auto 0;
	}

	#suntory_contents #gpj_top01 .index_box p {
		width: 280px;
		margin: 20px auto 0;
		font-size: 14px;
		line-height: 1.7;
	}

	/*==================================================
[pc] container_gpj_artists
================================================== */
	/*index---------------------------------------------------*/
	#suntory_contents #artists_index01 .index_box a {
		display: flex;
		flex-flow: row nowrap;
		justify-content: space-between;
		align-items: flex-start;
	}

	#suntory_contents #artists_index01 .index_box .text_block {
		width: calc(100% - 320px);
	}

	#suntory_contents #artists_index01 .index_box figure {
		width: 270px;
	}

	#suntory_contents #artists_index01 .index_box p {
		margin-top: 20px;
		font-size: 15px;
		line-height: 1.7;
	}

	/*wph-week---------------------------------------------------*/
	#suntory_contents #wph-week01 ul.list_conductor {
		display: flex;
		flex-flow: row wrap;
		justify-content: flex-start;
		gap: 1.291512915129151%;
		margin: 0;
	}

	#suntory_contents #wph-week01 .list_conductor li {
		width: 23.985239852398524%;
		margin: 25px 0 0;
	}

	#suntory_contents #wph-week01 .list_conductor li a:hover img {
		opacity: .7;
	}

	#suntory_contents #wph-week01 .list_conductor figure {
		width: 100%;
	}

	#suntory_contents #wph-week01 .list_conductor figcaption {
		margin: 10px 0 0;
		font-size: 13px;
		line-height: 1.5;
	}

	#suntory_contents #wph-week06 dl {
		display: flex;
		flex-flow: row wrap;
	}

	#suntory_contents #wph-week06 dt {
		width: 4em;
	}

	#suntory_contents #wph-week06 dd {
		width: calc(100% - 4em);
	}

	/*special---------------------------------------------------*/
	#suntory_contents #special02 .program {
		font-size: 18px;
		font-weight: bold;
		line-height: 1;
	}

	#suntory_contents #special02 .two_cloumn:last-child {
		border-bottom: 1px dotted #CCC;
		padding: 30px 0;
	}

	/*hall-opera---------------------------------------------------*/
	#suntory_contents #hall-opera02 .year,
	#suntory_contents #hall-opera03 .year,
	#suntory_contents #hall-opera04 .year,
	#suntory_contents #hall-opera05 .year {
		width: 70px;
		font-size: 18px;
		font-weight: bold;
		line-height: 1.5;
	}

	#suntory_contents #hall-opera02 .two_cloumn.fgwide .text_block,
	#suntory_contents #hall-opera03 .two_cloumn.fgwide .text_block,
	#suntory_contents #hall-opera04 .two_cloumn.fgwide .text_block,
	#suntory_contents #hall-opera05 .two_cloumn.fgwide .text_block {
		width: calc(100% - 470px);
	}

	#suntory_contents #hall-opera02 .program,
	#suntory_contents #hall-opera03 .program,
	#suntory_contents #hall-opera04 .program,
	#suntory_contents #hall-opera05 .program {
		font-size: 18px;
		font-weight: bold;
		line-height: 1.5;
	}

	#suntory_contents #hall-opera02 .two_cloumn:last-child {
		border-bottom: 1px dotted #CCC;
		padding: 30px 0;
	}

	#suntory_contents #hall-opera03.theme,
	#suntory_contents #hall-opera04.theme,
	#suntory_contents #hall-opera05.theme {
		padding: 30px;
		border: 1px solid #DFDFDF;
	}

	/*bcycle---------------------------------------------------*/
	#suntory_contents #bcycle01 .two_cloumn {
		justify-content: flex-start;
	}

	#suntory_contents #bcycle01 .two_cloumn .text_block {
		width: calc(100% - 200px);
	}

	#suntory_contents #bcycle01 .two_cloumn .fig_block,
	#suntory_contents #bcycle01 .two_cloumn .fig_block figure {
		width: 150px;
	}

	#suntory_contents #bcycle02 .two_cloumn {
		justify-content: flex-start;
	}

	#suntory_contents #bcycle02 .two_cloumn .year {
		width: 70px;
		font-size: 18px;
		font-weight: bold;
		line-height: 1;
	}

	#suntory_contents #bcycle02 .two_cloumn .text_block {
		width: calc(100% - 320px);
	}

	#suntory_contents #bcycle02 .program {
		font-size: 18px;
		font-weight: bold;
		line-height: 1;
	}

	#suntory_contents #bcycle02 .two_cloumn .fig_block,
	#suntory_contents #bcycle02 .two_cloumn .fig_block figure {
		width: 150px;
	}

	#suntory_contents #bcycle02 .two_cloumn.construction p {
		margin: 0;
		color: #999;
	}

	#suntory_contents #bcycle02 .two_cloumn.construction p .notes {
		font-size: 15px;
	}

	/*==================================================
[pc] container_gpj_composers
================================================== */
	/*index---------------------------------------------------*/
	#suntory_contents #composers_index01 .index_box p {
		margin-top: 20px;
		font-size: 15px;
		line-height: 1.7;
	}

	#suntory_contents #contents .index_box.summer>a:hover {
		background: rgb(255, 252, 243);
		background: linear-gradient(180deg, rgba(255, 252, 243, 1) 85%, rgba(255, 255, 255, 1) 100%);
	}

	#suntory_contents #composers_index01 .index_box.summer .grid {
		padding: 10px 30px 40px;
		max-width: 980px;
		margin: 0 auto;
		display: flex;
		flex-flow: row nowrap;
		justify-content: space-between;
	}

	#suntory_contents #composers_index01 .index_box.summer .grid .box {
		width: 280px;
	}

	#suntory_contents #composers_index01 .index_box.summer .grid .box figure {
		width: 280px;
	}

	#suntory_contents #composers_index01 .btn_single, #suntory_contents #contents .pager_foot .btn_single {
		margin: 0;
	}

	#suntory_contents #composers_index01 .btn_single a, #suntory_contents #contents .pager_foot .btn_single a {
		display: flex;
		justify-content: flex-start;
		align-items: center;
		position: relative;
		height: 50px;
		padding: 0 30px;
		margin: 20px 0 0;
		color: #fff;
		background: #813;
	}

	#suntory_contents #composers_index01 .btn_single a::before, #suntory_contents #contents .pager_foot .btn_single a::before {
		content: "";
		display: block;
		position: absolute;
		width: 18px;
		height: 28px;
		right: 11px;
		background: #A45;
	}

	#suntory_contents #composers_index01 .btn_single a::after, #suntory_contents #contents .pager_foot .btn_single a::after {
		content: "";
		display: block;
		position: absolute;
		right: 18px;
		width: 6px;
		height: 6px;
		margin: auto;
		border-top: 1px solid #fff;
		border-right: 1px solid #fff;
		transform: rotate(45deg);
	}

	#suntory_contents #composers_index01 .btn_single a:hover, #suntory_contents #contents .pager_foot .btn_single a:hover {
		background: #A14;
	}

	#suntory_contents #composers_index01 .btn_single a:hover::before, #suntory_contents #contents .pager_foot .btn_single a:hover::before {
		background: #c04;
	}

	#suntory_contents #composers_index01 .index_box.ipmc {
		padding: 30px 30px 40px;
	}

	#suntory_contents #composers_index01 .index_box.ipmc .sub_title {
		padding-left: 22px;
	}

	#suntory_contents #composers_index01 .index_box.ipmc .sub_title::before {
		width: 10px;
		background: #E0CCA3;
		border-radius: 2px;
	}

	#suntory_contents #composers_index01 .index_box.ipmc .sub_title::after {
		content: none;
	}

	#suntory_contents #composers_index01 .index_box.ipmc .img_grid {
		margin: 30px 0 0;
		display: flex;
		flex-flow: row nowrap;
		justify-content: space-between;
		gap: 0.866648029074644%;
	}

	#suntory_contents #composers_index01 .index_box.ipmc .img_grid figure {
		max-width: 120px;
		-webkit-filter: grayscale(100%);
		-moz-filter: grayscale(100%);
		-ms-filter: grayscale(100%);
		-o-filter: grayscale(100%);
		filter: grayscale(100%);
	}

	#suntory_contents #composers_index01 .index_box.ipmc .grid, #suntory_contents #contents .pager_foot {
		margin: 0;
		display: flex;
		flex-flow: row wrap;
		justify-content: center;
	}

	#suntory_contents #composers_index01 .index_box.ipmc .btn_single.large a {
		margin: 30px auto;
		width: 460px;
		height: 60px;
		padding: 5px 40px;
	}

	#suntory_contents #composers_index01 .index_box.ipmc .btn_single a, #suntory_contents #contents .pager_foot .btn_single a {
		margin: 0 20px;
		width: 280px;
	}

	/*numano ---------------------------------------------------*/
	#suntory_contents #numano01 p.writer,
	#suntory_contents #numano01 p.credit {
		margin-top: 15px;
		text-align: right;
	}

	#suntory_contents #numano01 p.writer+h4,
	#suntory_contents #numano01 .with_img+p {
		margin-top: 15px;
	}

	#suntory_contents #numano01 .with_img {
		margin-top: 15px;
		display: flex;
		flex-flow: row nowrap;
		justify-content: space-between;
		align-items: flex-start;
	}

	#suntory_contents #numano01 .text_block {
		width: calc(100% - 230px);
	}

	#suntory_contents #numano01 .fig_block,
	#suntory_contents #numano01 figure {
		width: 180px;
	}

	#suntory_contents #numano01 figure+figure {
		margin-top: 30px;
	}

	/*[pc] s1 s2 s3---------------------------------------------------*/
	#suntory_contents #contents .ipmc_series li {
		border-bottom: 1px #ccc dotted;
		padding-bottom: 30px;
		margin-bottom: 30px;
		display: grid;
		grid-template-columns: 140px 614px 330px;
		grid-template-rows: 50px auto auto;
	}

	#suntory_contents #contents .ipmc_series ul li:first-child {
		border-top: 1px #ccc dotted;
		padding-top: 30px;
	}

	#suntory_contents #contents .ipmc_series h4 {
		margin: 0;
		font-size: 20px;
		font-weight: bold;
		line-height: 1;
		grid-column: 1 / 3;
		grid-row: 1 / 2;
	}

	#suntory_contents #contents .ipmc_series figure.portrait {
		margin: 0;
		/*		width: 140px;*/
		grid-column: 1 / 2;
		grid-row: 2 / 3;
	}

	#suntory_contents #contents .ipmc_series figure.portrait picture {
		width: 110px;
		display: block;
	}

	#suntory_contents #contents .ipmc_series figure.portrait figcaption {
		width: 110px;
	}

	#suntory_contents #contents .ipmc_series .text_block {
		grid-column: 2 / 3;
		grid-row: 2 / 3;
	}

	#suntory_contents #contents .ipmc_series .prog_day {
		font-size: 18px;
		font-weight: bold;
	}

	#suntory_contents #contents .ipmc_series .prog_day+p {
		margin: 5px 0 0;
	}


	#suntory_contents #contents dl.prog_detail {
		display: flex;
		flex-flow: row wrap;
		align-content: flex-start;
	}

	#suntory_contents #contents dl.prog_detail dt {
		width: 50px;
		margin: 10px 0 0;
		font-weight: bold;
		font-size: 16px;
	}

	#suntory_contents #contents dl.prog_detail dd {
		width: calc(100% - 50px);
		margin: 10px 0 0;
	}

	#suntory_contents #contents .ipmc_series .prog_detail+.prog_day {
		margin: 15px 0 0;
	}

	#suntory_contents #contents .ipmc_series figure.scene {
		grid-column: 3 / 4;
		grid-row: 1 / 3;
	}

	#suntory_contents #contents .ipmc_series figure.scene picture {
		margin: 0 0 0 auto;
		width: 300px;
		display: block;
	}

	/*commission--------------------------------------------*/
	#suntory_contents #contents #commission01 .grid,
	#suntory_contents #contents #commission02 .grid {
		margin: 30px 0 0;
		display: flex;
		flex-flow: row wrap;
		justify-content: space-between;
		align-items: flex-start;
	}

	#suntory_contents #contents #commission01 .prog_title,
	#suntory_contents #contents #commission02 .prog_title {
		width: 100%;
		margin: 0 0 20px;
	}

	#suntory_contents #contents #commission01 .prog_title p+p,
	#suntory_contents #contents #commission02 .prog_title p+p {
		margin: 5px 0 0;
	}

	#suntory_contents #contents #commission02 .prog_title p.prog_day {
		font-size: 16px;
		font-weight: bold;
	}

	#suntory_contents #contents #commission02 .prog_detail+p.notes {
		margin: 30px 0 0;
	}

	#suntory_contents #contents #commission01 figure.portrait {
		width: 110px;
	}

	#suntory_contents #contents #commission01 .text_block {
		width: 604px;
	}

	#suntory_contents #contents #commission02 .text_block {
		width: 744px;
	}

	#suntory_contents #contents #commission01 dl.prog_detail dt:first-of-type,
	#suntory_contents #contents #commission01 dl.prog_detail dd:first-of-type,
	#suntory_contents #contents #commission02 dl.prog_detail dt:first-of-type,
	#suntory_contents #contents #commission02 dl.prog_detail dd:first-of-type {
		margin: 0;
	}

	#suntory_contents #contents #commission01 figure.scene,
	#suntory_contents #contents #commission02 figure.scene {
		width: 300px;
	}

	#suntory_contents #contents #commission01 .scene a {
		display: block;
		width: 300px;
		margin: 0;
		position: relative;
	}

	#suntory_contents #contents #commission01 .scene picture::before {
		content: '';
		width: 50px;
		height: 50px;
		background: url(../img/icon_play.svg) no-repeat 0 0;
		background-size: 50px 50px;
		position: absolute;
		top: calc(50% - 25px);
		left: calc(50% - 25px);
		z-index: 10;
	}

	#suntory_contents #contents #commission01 .scene a:hover picture {
		opacity: .7;
	}


	/*==================================================
[pc] container_gpj_halls
================================================== */
	/*index---------------------------------------------------*/
	#suntory_contents #halls_index01 .index_box a {
		display: flex;
		flex-flow: row nowrap;
		justify-content: space-between;
		align-items: flex-start;
	}

	#suntory_contents #halls_index01 .index_box .text_block {
		width: calc(100% - 320px);
	}

	#suntory_contents #halls_index01 .index_box figure {
		width: 270px;
	}

	#suntory_contents #halls_index01 .index_box p {
		margin-top: 20px;
		font-size: 15px;
		line-height: 1.7;
	}

	/*halls common---------------------------------------------------*/
	#suntory_contents #contents .alliance {
		max-width: 960px;
	}

	#suntory_contents #contents .alliance .place {
		display: flex;
		justify-content: center;
		align-items: center;
		height: 50px;
		padding: 0;
		font-size: 15px;
		font-weight: bold;
		line-height: 1;
		background: #F0E5D1;
	}

	#suntory_contents #contents .alliance .two_cloumn {
		justify-content: center;
		align-items: center;
		margin: 0;
		padding: 30px;
		background: #F7F2E8;
	}

	#suntory_contents #contents .alliance .two_cloumn .fig_block,
	#suntory_contents #contents .alliance .two_cloumn .fig_block figure {
		width: 180px;
	}

	#suntory_contents #contents .alliance .two_cloumn .translation {
		margin: 0 0 30px;
		font-size: 14px;
		font-weight: bold;
	}

	/*musikverein ---------------------------------------------------*/
	#suntory_contents #musikverein03 dt {
		margin: 20px 0 0;
	}

	#suntory_contents #musikverein03 dd {
		margin: 0 0 0 30px;
	}

	/*carnegie ---------------------------------------------------*/
	#suntory_contents #carnegie02.alliance .two_cloumn .fig_block.right,
	#suntory_contents #carnegie02.alliance .two_cloumn .fig_block.right figure {
		width: 300px;
	}


}