@charset "utf-8";

:root {
	--color-white: #fff;
	--color-black: #222;
	--color-border: #ccc;
	--color-program-bg: #ccf1ff;
	--color-subtitle-bg: #d6e9f0;
	--color-link-common: #007899;
	--shadow-color-black-15: rgba(0, 0, 0, .15);
	--color-note-brown: #7a5f1f;
	--color-gray-666: #666;
	--color-bg-light-gray: #f3f3f3;

	/* yearly colors: theme / akutagawa / special */
	--color-theme: #54b80c;
	--color-theme-deep: #378500;
	--color-theme-hover-bg: #eef8e7;
	--color-akutagawa: #8d5cc9;
	--color-akutagawa-deep: #7344AB;
	--color-akutagawa-hover-bg: #f4effa;
	--color-special: #0092d6;
	--color-special-deep: #007db8;
	--color-special-hover-bg: #e5f4fb;
}


/*==================================================
base setting
================================================== */
#summerfes_contents,
#summerfes_contents section {
	width: 100%;
}

#summerfes_contents a {
	box-sizing: border-box;
}

#summerfes_contents ul {
	list-style: none;
}

#summerfes_contents img {
	width: 100%;
	height: auto;
	vertical-align: bottom;
	transition: opacity 1s;
}

#summerfes_contents figure img {
	width: 100%;
}

#summerfes_contents .sm_bread_crumbs li a,
#summerfes_contents .contents a {
	color: var(--color-link-common);
	text-decoration: underline;
}

/*別window*/
#summerfes_contents a.win {
	position: relative;
	background: url(../img/icon_external.svg) no-repeat right bottom;
}


@media print,
screen and (min-width: 768px) {

	/*------------------------------------------------------------
[PC] summer_header
------------------------------------------------------------ */
	.ham_position,
	#sp_modal {
		display: none;
	}

	#summerfes_contents .summer_header {
		width: 100%;
		padding: 12px 10px 20px;
		background: #ccf1ff;
	}

	#summerfes_contents ul.sm_bread_crumbs {
		display: block;
		height: 40px;
		/*height: 25px;歴史ボタンないとき*/
		padding: 0 280px 0 0;
		line-height: 1;
	}

	#summerfes_contents .sm_bread_crumbs li {
		display: inline-block;
		position: relative;
	}

	#summerfes_contents .sm_bread_crumbs li,
	#summerfes_contents .sm_bread_crumbs li a {
		font-size: 12px;
		line-height: 1.5;
		letter-spacing: 0.02em;
	}

	#summerfes_contents .sm_bread_crumbs li+li {
		margin-left: 1.1em;
	}

	#summerfes_contents .sm_bread_crumbs li+li::before {
		content: '>';
		display: block;
		position: absolute;
		font-size: 12px;
		line-height: 1.5;
		left: -1.1em;
		width: 1.1em;
	}

	#summerfes_contents .summer_header ul.link_other {
		display: block;
		position: absolute;
		right: 0;
		top: 3px;
	}

	#summerfes_contents .bt_history a {
		display: block;
		position: relative;
		color: #222;
		width: 250px;
		height: 34px;
		padding: 0 0 0 15px;
		font-size: 13px;
		line-height: 34px;
		text-align: left;
		text-decoration: none;
		font-weight: normal;
		letter-spacing: 0.02em;
		background: #fff url(../img/arrow_right_aqua.svg) no-repeat right 7px center / 6px;
		border-radius: 5px;
		box-shadow: 1px 1px 4px 0 rgba(0, 0, 0, .1);
	}

	#summerfes_contents .bt_history a:hover {
		text-decoration: underline;
	}

	/*------------------------------------------------------------
[PC] nav#gnavi
------------------------------------------------------------ */
	nav#gnavi {
		width: 100%;
		max-width: 1160px;
		min-width: 940px;
		padding: 0;
		margin: 12px 0 0;
		position: relative;
	}

	nav#gnavi ol {
		margin: 0;
		display: flex;
		flex-flow: row nowrap;
		justify-content: flex-start;
		align-items: flex-start;
		gap: 10px;
	}

	nav#gnavi ol li.tab {
		display: block;
		height: 95px;
		text-align: center;
		background: #FFF;
		border-top: 5px solid;
		box-shadow: 0 0 4px 0 rgba(0, 0, 0, .2);
		position: relative;
		flex: 0 0 auto;
		box-sizing: border-box;
	}

	nav#gnavi ol li#nv_theme {
		width: 410px;
		border-color: var(--color-theme);
	}

	nav#gnavi ol li#nv_theme>a:hover {
		background-color: var(--color-theme-hover-bg);
	}

	nav#gnavi ol li#nv_akutagawa {
		width: 310px;
		border-color: var(--color-akutagawa);
	}

	nav#gnavi ol li#nv_akutagawa>a:hover {
		background-color: var(--color-akutagawa-hover-bg);
	}

	nav#gnavi ol li#nv_special {
		width: 420px;
		padding: 0;
		border-color: var(--color-special);
	}

	nav#gnavi ol li.tab>a {
		width: 100%;
		height: 100%;
		line-height: 1;
		color: #222;
		text-decoration: none;
		transition: all 0.2s linear;
	}

	nav#gnavi ol li#nv_theme>a {
		display: flex;
		flex-flow: column nowrap;
		justify-content: flex-start;
		align-items: center;
		padding: 7px 5px 0;
	}

	nav#gnavi ol li#nv_theme h2 {
		width: 100%;
		margin: 0;
		font-size: 18px;
		font-weight: bold;
		line-height: 1;
		letter-spacing: 0.05em;
	}

	nav#gnavi ol li#nv_theme h2 .sm_txt {
		font-size: 14px;
		font-weight: bold;
		margin-right: 5px;
	}

	nav#gnavi ol li#nv_theme .series {
		width: 100%;
		margin: 5px 0 0;
		font-size: 12px;
		font-weight: 500;
		line-height: 1;
		letter-spacing: 0.05em;
	}

	nav#gnavi ol li#nv_theme .event {
		width: 100%;
		margin: 5px 0 0;
		font-size: 14px;
		line-height: 1.3;
		letter-spacing: 0.05em;
	}

	nav#gnavi ol li#nv_akutagawa>a {
		display: flex;
		flex-flow: column wrap;
		justify-content: center;
		align-items: center;
		padding-top: 8px;
		padding-bottom: 8px;
	}

	nav#gnavi ol li#nv_akutagawa h2 {
		font-size: 18px;
		line-height: 1.35;
		font-weight: bold;
		letter-spacing: 0.05em;
	}

	nav#gnavi ol li#nv_akutagawa h2 .sm_txt {
		display: block;
		margin-bottom: 4px;
		font-size: 14px;
		line-height: 1.2;
	}

	nav#gnavi ol li.tab_special .special_wrap {
		display: flex;
		flex-flow: row nowrap;
		align-items: center;
		justify-content: stretch;
		width: 100%;
		height: 100%;
		min-height: 90px;
		box-sizing: border-box;
	}

	nav#gnavi ol li.tab_special .special_item {
		flex: 1 1 50%;
		display: flex;
		flex-flow: column nowrap;
		justify-content: stretch;
		align-items: stretch;
		align-self: stretch;
		min-width: 0;
	}

	nav#gnavi ol li.tab_special .special_link {
		flex: 1 1 auto;
		width: 100%;
		display: flex;
		flex-flow: column nowrap;
		justify-content: center;
		align-items: center;
		align-self: stretch;
		min-width: 0;
		padding: 10px 8px;
		color: #222;
		text-decoration: none;
		transition: background-color 0.2s linear;
		box-sizing: border-box;
	}

	nav#gnavi ol li.tab_special .special_link:hover {
		background-color: var(--color-special-hover-bg);
	}

	nav#gnavi ol li.tab_special .special_kicker {
		display: block;
		font-size: 14px;
		font-weight: bold;
		line-height: 1.2;
		letter-spacing: 0.02em;
	}

	nav#gnavi ol li.tab_special .special_title {
		display: block;
		font-size: 18px;
		font-weight: bold;
		line-height: 1.35;
		letter-spacing: 0.02em;
		margin-top: 4px;
	}

	nav#gnavi ol li.tab_special .special_link_goforit .special_title {
		margin-top: 0;
	}

	nav#gnavi ol li.tab_special .special_divider {
		flex: 0 0 1px;
		width: 1px;
		height: 60px;
		background: var(--color-border);
	}

	/*サブメニュー*/
	nav#gnavi .tab .dropmenu {
		opacity: 0;
		transition: opacity 0.2s linear;
	}

	nav#gnavi .tab .dropmenu ul {
		display: none;
	}

	nav#gnavi li.tab:not(#nv_special):hover .dropmenu,
	nav#gnavi li#nv_special .special_item:hover .dropmenu {
		display: block;
		z-index: 110;
		opacity: 1;
		width: 100%;
		padding: 15px 30px;
		position: absolute;
		top: 105px;
		left: 0;
		background: rgba(76, 199, 226, .98);
		box-shadow: 2px 2px 3px 0 rgba(0, 0, 0, .1);
	}

	nav#gnavi li.tab:not(#nv_special):hover .dropmenu::before,
	nav#gnavi li#nv_special .special_item:hover .dropmenu::before {
		content: "";
		display: block;
		position: absolute;
		width: 100%;
		height: 15px;
		top: -15px;
		left: 0;
		background: url(../img/icon_submenu.svg) no-repeat center top / 17px;
	}

	nav#gnavi li.tab:not(#nv_special):hover .dropmenu,
	nav#gnavi li#nv_special .special_item:hover .dropmenu {
		display: flex;
		flex-flow: row nowrap;
		justify-content: flex-start;
		align-items: flex-start;
	}

	nav#gnavi li.tab:not(#nv_special):hover .dropmenu ul,
	nav#gnavi li#nv_special .special_item:hover .dropmenu ul {
		display: block;
	}

	nav#gnavi li.tab:not(#nv_special):hover .dropmenu ul+ul,
	nav#gnavi li#nv_special .special_item:hover .dropmenu ul+ul {
		margin-left: 60px;
	}

	nav#gnavi li.tab:not(#nv_special):hover .dropmenu li.programlist,
	nav#gnavi li#nv_special .special_item:hover .dropmenu li.programlist {
		display: flex;
		flex-flow: row nowrap;
		justify-content: flex-start;
		align-items: flex-start;
	}

	nav#gnavi li.tab:not(#nv_special):hover .dropmenu li a,
	nav#gnavi li#nv_special .special_item:hover .dropmenu li a {
		display: block;
		padding: 10px 0;
		font-size: 14px;
		line-height: 1.3;
		color: #222;
		text-decoration: none;
		text-align: left;
	}

	nav#gnavi li.tab:not(#nv_special):hover .dropmenu li a:hover,
	nav#gnavi li#nv_special .special_item:hover .dropmenu li a:hover {
		text-decoration: underline;
	}

	nav#gnavi li.tab:not(#nv_special):hover .dropmenu li.programlist p,
	nav#gnavi li#nv_special .special_item:hover .dropmenu li.programlist p {
		display: block;
		padding: 10px 0;
		margin-right: 20px;
		font-size: 14px;
		line-height: 1.3;
	}

	/* nv_special は2列のため、各 special_item の下に幅50%のドロップを出す */
	nav#gnavi li#nv_special .special_item:hover .dropmenu {
		width: 50%;
		box-sizing: border-box;
	}

	nav#gnavi li#nv_special .special_wrap>.special_item:first-of-type:hover .dropmenu {
		left: 0;
	}

	nav#gnavi li#nv_special .special_wrap>.special_item:last-of-type:hover .dropmenu {
		left: 50%;
	}

	/*------------------------------------------------------------
[PC] aside.sfes_footer
------------------------------------------------------------ */
	#summerfes_contents .sfes_footer {
		background: #f3f3f3;
		padding: 50px 10px 80px;
	}

	#summerfes_contents .sfes_footer .inner {
		display: flex;
		flex-flow: column nowrap;
		justify-content: space-between;
		position: relative;
	}

	#summerfes_contents .sfes_footer .bt_history {
		position: absolute;
		right: 0;
		top: 15px;
	}

	#summerfes_contents .sfes_footer .link_home {
		width: 100%;
		margin-bottom: 20px;
	}

	#summerfes_contents .sfes_footer .link_home p {
		width: 88px;
		height: 68px;
	}

	#summerfes_contents .sfes_footer .link_home a {
		display: block;
		width: 100%;
		height: 100%;
		text-indent: 100%;
		white-space: nowrap;
		overflow: hidden;
		background: url(../img/summer_logo26.svg) no-repeat left top;
		background-size: contain;
	}

	#summerfes_contents .sfes_footer .link_box {
		position: relative;
		padding: 65px 0 0;
		min-width: 320px;
	}

	#summerfes_contents .sfes_footer h4 {
		display: block;
		margin: 0 0 20px;
		font-size: 15px;
		font-weight: bold;
		line-height: 1.5;
	}

	#summerfes_contents .sfes_footer h4 a {
		display: block;
		color: #222;
		text-decoration: none;
	}

	#summerfes_contents .sfes_footer .section_40th h4 a {
		margin-top: 3px;
	}

	#summerfes_contents .sfes_footer h4 .sm_txt {
		display: block;
		font-size: 13px;
	}

	#summerfes_contents .sfes_footer .program_links {
		display: flex;
		align-items: flex-start;
		gap: 20px;
		margin-bottom: 15px;
	}

	#summerfes_contents .sfes_footer li+li {
		margin-top: 15px;
	}

	#summerfes_contents .sfes_footer .program_links p,
	#summerfes_contents .sfes_footer li,
	#summerfes_contents .sfes_footer li a {
		color: #222;
		text-decoration: none;
		font-size: 13px;
		line-height: 1.5;
	}

	#summerfes_contents .sfes_footer h4 a:hover,
	#summerfes_contents .sfes_footer li a:hover {
		text-decoration: underline;
	}

	#summerfes_contents .sfes_footer .top_row {
		display: flex;
		justify-content: space-between;
		align-items: center;
		margin-bottom: 22px;
	}

	#summerfes_contents .sfes_footer .logo_section {
		width: 88px;
		height: 66px;
	}

	#summerfes_contents .sfes_footer .logo_link {
		display: block;
		width: 100%;
		height: 100%;
		text-indent: 100%;
		white-space: nowrap;
		overflow: hidden;
		background: url(../img/summer_logo26.svg) no-repeat left top / contain;
	}

	#summerfes_contents .sfes_footer .history_link {
		display: inline-block;
		min-width: 250px;
		height: 34px;
		padding: 0 22px 0 15px;
		font-size: 13px;
		line-height: 34px;
		font-weight: 500;
		letter-spacing: 0.02em;
		color: #000;
		text-decoration: none;
		background: #fff url(../img/arrow_right_aqua.svg) no-repeat right 8px center / 6px;
		border-radius: 5px;
		box-shadow: 1px 1px 4px 0 rgba(0, 0, 0, .1);
	}

	#summerfes_contents .sfes_footer .history_link:hover {
		text-decoration: underline;
	}

	#summerfes_contents .sfes_footer .links_container {
		display: flex;
		align-items: flex-start;
		justify-content: flex-start;
		gap: 130px;
	}

	#summerfes_contents .sfes_footer .theme_section {
		width: 320px;
	}

	#summerfes_contents .sfes_footer .akutagawa_section {
		width: 280px;
	}

	#summerfes_contents .sfes_footer .other_sections {
		width: 227px;
		display: flex;
		flex-direction: column;
		gap: 44px;
	}



	/*------------------------------------------------------------
[PC] #summerfes_contents
------------------------------------------------------------ */
	#summerfes_contents .inner {
		width: 100%;
		max-width: 1160px;
		min-width: 940px;
		margin: 0 auto;
		position: relative;
	}

	#suntory_contents #summerfes_contents {
		font-size: 15px;
		line-height: 1.7;
		font-weight: 500;
		letter-spacing: 0.05em;
	}

	#summerfes_contents a {
		transition: all 0.1s linear;
	}

	/*別window*/
	#summerfes_contents p a.win {
		padding-right: 15px;
		background-size: 10px;
	}


}


@media screen and (max-width:767px) {
	:root {
		/* SPデザインカンプの横幅（375px） */
		--base-width: 375;
		/* 1pxあたりのvw単位を計算して変数化 */
		--vw-unit: calc(100vw / var(--base-width));
		/* トップ #top_program の公演日（.prog_day）ブロック幅（375デザインのpx換算） */
		--top-program-prog-day-w: calc(120 * var(--vw-unit));
	}

	/*------------------------------------------------------------
[SP] #summerfes_contents
------------------------------------------------------------ */
	body {
		-webkit-text-size-adjust: 100%;
		/*iOSsafariのfont自動調整無効*/
		text-size-adjust: 100%;
	}

	#summerfes_contents .contents {
		padding: 0 0 16vw;
	}

	/*------------------------------------------------------------
[SP] text setting
------------------------------------------------------------ */
	#summerfes_contents * {
		font-family: Arial, "Helvetica Neue", "Hiragino Kaku Gothic ProN", "Hiragino Sans", sans-serif;
	}

	#suntory_contents #summerfes_contents {
		font-feature-settings: normal;
		letter-spacing: 0;
		font-size: 3.73333333vw;
		line-height: 1.7;
		position: relative;
	}

	/*------------------------------------------------------------
[SP] hamburger menu
------------------------------------------------------------ */
	.summer_header {
		display: none;
	}

	#summerfes_contents .ham_position {
		display: block;
		position: absolute;
		top: 0;
		left: 0;
		height: 0;
		padding: 0;
		transition: 0.5s all;
		z-index: 20;
	}

	#summerfes_contents .ham_position.stickycss {
		position: sticky;
		/* margin-bottom: 2.4vw; */
	}

	#summerfes_contents .ham_position.stickycss .btn_hamburger {
		transform: translateY(14.4vw);
	}

	body.bodyfixed {
		overflow: hidden;
	}

	#summerfes_contents .btn_hamburger {
		display: block;
		position: absolute;
		top: 3.2vw;
		left: 3.2vw;
		width: 14.4vw;
		height: 14.4vw;
		background: var(--color-link-common);
		border-radius: 50%;
		padding: 8vw 3.2vw 0;
		-webkit-tap-highlight-color: transparent;
		touch-action: manipulation;
		transition: transform 0.3s ease;
		will-change: transform;
	}

	#summerfes_contents .btn_hamburger p {
		color: #fff;
		text-align: center;
		font-size: 3.2vw;
		line-height: 1;
	}

	#summerfes_contents .btn_hamburger .first {
		display: block;
		position: absolute;
		width: 8vw;
		height: 2px;
		background-color: #fff;
		top: 4vw
	}

	#summerfes_contents .btn_hamburger .second {
		display: block;
		position: absolute;
		width: 8vw;
		height: 2px;
		background-color: #fff;
		top: 6.133333333vw
	}

	#summerfes_contents .btn_close {
		display: block;
		position: absolute;
		top: 3.2vw;
		left: 3.2vw;
		width: 12.8vw;
		height: 12.8vw;
		/* background: rgba(255, 255, 255, 0.8); */
		/* border-radius: 50%; */
	}

	#summerfes_contents .btn_close .first {
		display: block;
		width: 6.4vw;
		height: 0.533333333vw;
		background: #222;
		position: absolute;
		left: 3.2vw;
		top: 6.4vw;
		transform: rotate(45deg);
	}

	#summerfes_contents .btn_close .second {
		display: block;
		width: 6.4vw;
		height: 0.533333333vw;
		background: #222;
		position: absolute;
		left: 3.2vw;
		top: 6.4vw;
		transform: rotate(-45deg);
	}


	/*------------------------------------------------------------
[SP]  #sp_modal menu
------------------------------------------------------------ */
	#summerfes_contents #sp_modal {
		display: block;
		z-index: 10000;
		padding: 0;
		margin: 0;
		height: 100%;
		width: 100%;
		position: fixed;
		top: 50%;
		left: 50%;
		transform: translate(-50%, -50%);
		overflow-y: scroll;
		background: rgba(247, 247, 247, 0.98);
		opacity: 0;
		visibility: hidden;
		transition: 0.3s;
	}

	#summerfes_contents #sp_modal.active {
		opacity: 1;
		visibility: visible;
	}

	#summerfes_contents #sp_modal .wrapper {
		padding: 4vw 4vw 8vw;
		position: relative;
	}

	#summerfes_contents #sp_modal a {
		color: #222;
		text-decoration: none;
	}

	#summerfes_contents #sp_modal .link_home {
		margin: 0 auto;
		width: 19.2vw;
		height: 14.4vw;
	}

	#summerfes_contents #sp_modal .link_home a {
		display: block;
		width: 100%;
		height: 100%;
		text-indent: 100%;
		white-space: nowrap;
		overflow: hidden;
		background: url(../img/summer_logo26.svg) no-repeat left top;
		background-size: contain;
	}

	#summerfes_contents #sp_modal dl {
		width: 100%;
		margin: 0;
	}

	#summerfes_contents #sp_modal dt {
		margin: 6.4vw 0 0;
		border-top: 0.8vw solid;
	}

	#summerfes_contents #sp_modal dt:nth-of-type(1) {
		border-color: #62b626;
	}

	#summerfes_contents #sp_modal dt:nth-of-type(2) {
		border-color: #8d5cc9;
	}

	#summerfes_contents #sp_modal dt:nth-of-type(3) {
		border-color: #0092d6;
	}

	#summerfes_contents #sp_modal dt:nth-of-type(4) {
		border-color: #0092d6;
	}

	#summerfes_contents #sp_modal h4 a {
		display: block;
		font-size: 4.533333333vw;
		font-weight: 600;
		line-height: 1.4;
		padding: 2.4vw 0;
	}

	#summerfes_contents #sp_modal h4 a .sm_txt {
		font-size: 3.466666667vw;
	}

	#summerfes_contents #sp_modal dt:nth-of-type(2) h4 a {
		font-size: 4.266666667vw;
	}

	#summerfes_contents #sp_modal dt:nth-of-type(3) h4 a,
	#summerfes_contents #sp_modal dt:nth-of-type(4) h4 a {
		font-size: 4.266666667vw;
	}

	#summerfes_contents #sp_modal dd ul {
		margin: 0 0 0 1.6vw;
	}

	#summerfes_contents #sp_modal dd li a {
		display: block;
		font-size: 3.733333333vw;
		line-height: 1.5;
		padding: 2.4vw 0;
	}

	#summerfes_contents #sp_modal dd li.programlist {
		display: flex;
		flex-flow: row nowrap;
		justify-content: flex-start;
		align-items: flex-start;
	}

	#summerfes_contents #sp_modal dd li.programlist p {
		display: block;
		margin-right: 3.2vw;
		font-size: 3.733333333vw;
		line-height: 1.5;
		padding: 2.4vw 0;
	}

	#summerfes_contents #sp_modal li.bt_history {
		width: 72vw;
		height: 12vw;
		margin: 6.4vw auto 0;
	}

	#summerfes_contents #sp_modal li.bt_history a {
		display: block;
		text-align: center;
		text-decoration: none;
		color: #222;
		width: 100%;
		height: 100%;
		padding: 0 2.4vw 0 0;
		line-height: 12vw;
		font-size: 3.733333333vw;
		background: #fff url(../img/arrow_right_aqua.svg) no-repeat right 2.666666667vw center;
		background-size: 6px;
		box-shadow: 0.4vw 0.4vw 1.2vw 0 rgba(0, 0, 0, .15);
		border-radius: 1.6vw;
	}

	/*------------------------------------------------------------
[SP] aside.sfes_footer 
------------------------------------------------------------ */
	#summerfes_contents .sfes_footer {
		background: #f3f3f3;
		padding: 6vw 3.2vw 12vw;
	}

	#summerfes_contents .sfes_footer a {
		color: #222;
		text-decoration: none;
	}

	#summerfes_contents .sfes_footer .link_home {
		margin: 0 auto;
		width: 19.2vw;
		height: 14.4vw;
	}

	#summerfes_contents .sfes_footer .link_home a {
		display: block;
		width: 100%;
		height: 100%;
		text-indent: 100%;
		white-space: nowrap;
		overflow: hidden;
		background: url(../img/summer_logo26.svg) no-repeat left top;
		background-size: contain;
	}

	#summerfes_contents .sfes_footer dl {
		width: 100%;
		margin: 0;
	}

	#summerfes_contents .sfes_footer dt {
		margin: 6.4vw 0 0;
		border-top: 0.8vw solid;
	}

	#summerfes_contents.theme .sfes_footer .miniindex dt {
		border-color: var(--color-theme);
	}

	#summerfes_contents.akutagawa .sfes_footer .miniindex dt {
		border-color: var(--color-akutagawa);
	}

	#summerfes_contents .sfes_footer h4 a {
		display: block;
		font-size: 4.533333333vw;
		font-weight: 600;
		line-height: 1.4;
		padding: 2.4vw 0;
	}

	#summerfes_contents .sfes_footer .miniindex h4 a .sm_txt {
		font-size: 3.466666667vw;
	}

	#summerfes_contents.akutagawa .sfes_footer h4 a {
		font-size: 4.266666667vw;
	}

	#summerfes_contents .sfes_footer .miniindex dd ul {
		margin: 0 0 0 1.6vw;
	}

	#summerfes_contents .sfes_footer .miniindex dd li a {
		display: block;
		font-size: 3.733333333vw;
		line-height: 1.5;
		padding: 2.4vw 0;
	}

	#summerfes_contents .sfes_footer .miniindex dd li.programlist {
		display: flex;
		flex-flow: row nowrap;
		justify-content: flex-start;
		align-items: flex-start;
	}

	#summerfes_contents .sfes_footer .miniindex dd li.programlist p {
		display: block;
		margin-right: 3.2vw;
		font-size: 3.733333333vw;
		line-height: 1.5;
		padding: 2.4vw 0;
	}

	#summerfes_contents.fortieth .sfes_footer .miniindex dt,
	#summerfes_contents.goforit .sfes_footer .miniindex dt {
		border-color: #0092d6;
	}

	/*別window*/
	#summerfes_contents a.win {
		padding-right: 4vw;
		background-size: 2.666666667vw;
	}


}