@charset "utf-8";

/* CSS Document */

/* ======================================================
	渥美半島花火大会
	[original] atsumi_hanabi/
	@import"../css/test_line.css";
====================================================== */
#AtsumiHanabi
{
	--color1				: var(--navy);
	--color2				: 25 140 192;
	--color3				: 28 42 68;

	--bg_color				: var(--w) / 0.1;
	--border_color			: var(--w) / 0.5;
	--button_bg_color		: var(--color1);
	--color					: var(--w);
	--arrow_color			: var(--color1);

	--blank_icon_color		: var(--color2);

	--drawer_toggle_size	: 3em;

	--txt_shadow_dark		: drop-shadow(0 0 0.2em rgb(var(--color1)));


	--footerFixed_h			: 7em;
}



/* ------------------------------------------------------------------------------------------------------------
	<block>
*/
body
{
	background-color: rgb(var(--bk));
}


.AtsumiHanabi :is(section, article)
{
	color: rgb(var(--w));
}

.AtsumiHanabi .Ct::before
{
	content: "";
	display: block;

	position: absolute;
	left: 50%;
	top: 50%;
	translate: -50% -50%;

	width: 100vw;
	height: calc(100% + (var(--padding_tb) / 1));
	height: calc(100% + 0.25em);

	background-color: rgb(var(--w) / 0.5);
	background-color: inherit;

	opacity: 0.75;
}
/*

	clip-path: ellipse(85% 100% at 50% 100%);

	background-image: url(../img/round_top.svg);
	background-position: top;
	background-repeat: no-repeat;
	background-size: contain;

	mask-image: linear-gradient(#fff, #fff), var(--round_top);
	mask-position: center;
	mask-repeat: no-repeat;
	mask-composite: intersect;


	--c: 100;

	mask: radial-gradient(calc(var(--c)*1%) 100% at 50% calc(100% + 100%*cos(asin(50/var(--c)))),#0000 calc(100% - 1px),#000);
	clip-path: ellipse(calc(var(--c)*1%) 100% at bottom);
*/

.AtsumiHanabi .Ct:nth-child(odd)
{
}
.AtsumiHanabi .Ct:nth-child(odd)::before,
.AtsumiHanabi .Ct:nth-child(odd)::after
{
	background-color: rgb(var(--color1) / 1);
}

.AtsumiHanabi .Ct:nth-child(even)
{
}
.AtsumiHanabi .Ct:nth-child(even)::before,
.AtsumiHanabi .Ct:nth-child(even)::after
{
	background-color: rgb(var(--color3) / 1);
}

.AtsumiHanabi :is(section, .section, article)>.Wrap
{
	background-color: inherit;
}
/*
	--arch					: 0.1em;
	clip-path: ellipse(85% 100% at 50% 100%);
[250522-1922]　clip-pathに線は引けない
	border-top-width: 1px;
	border-top-color: rgb(var(--w));
*/

/*
.AtsumiHanabi.Index :is(section, article)::before
{
	content: "";
	display: block;

	position: absolute;
	left: 50%;
	bottom: 0;
	translate: -50% -0%;

	width: calc(100% + 0em);
	height: calc(100% + 5em);
	background-color: inherit;
	background-color: rgb(var(--w) / 0.5);

	border-radius: 100% 100% 0 0;
}
*/

.AtsumiHanabi.Index .Ct::before
{
	opacity: 0.9;
}
.AtsumiHanabi.Index :is(section, article):not(:last-of-type)
{
}
/*

	margin-bottom: -40vw;
	padding-bottom: 50vw;
*/
.AtsumiHanabi.Index :is(section, article):last-of-type
{
}
/*
	margin-bottom: calc(0em - var(--padding_tb));

.AtsumiHanabi.Index :is(section, article):last-of-type::after
{
	content: "";
	display: block;

	position: absolute;
	left: 50%;
	bottom: 0;
	translate: -50% -0%;

	width: 100vw;
	height: var(--padding_tb);
}
*/

.id_atsumi_hanabi .Ct .body
{
	display: grid;
	gap: var(--padding_tb);
}

.id_atsumi_hanabi .List
{
	display: grid;
	gap: 0;
}


.id_atsumi_hanabi .memo
{
	background-color: rgb(var(--color2) / 0.25);
	border-width: 0;
}

/* ------------------------------------------------------------------------------------------------------------
	<文字>
*/
.id_atsumi_hanabi :is(h2, .h2)
{
	font-weight: 200;
	margin-bottom: var(--gap);
}
.id_atsumi_hanabi :is(h2, .h2)::before,
.id_atsumi_hanabi :is(h2, .h2)::after
{
	content: "";
	display: block;

	position: absolute;

	width: 80%;
	height: 1px;

	background-color: rgb(var(--color2) / 0.5);
	
}
.id_atsumi_hanabi :is(h2, .h2)::before
{
	bottom: calc(100% + 1em);
	left: 0;
}
.id_atsumi_hanabi :is(h2, .h2)::after
{
	top: calc(100% + 1em);
	right: 0;
}

.id_atsumi_hanabi :is(h2, .h2)>b
{
	font-size: 3em;

	min-width: 7em;
}


#AtsumiHanabi :is(.body, .List) :is(h3, .h3, h4, .h4, h5, .h5)
{
	margin-top: 0;
	margin-bottom: 0;
}


.id_atsumi_hanabi :is(h3, .h3)
{
	background-color: rgb(var(--bg_color));
	filter: var(--txt_shadow_dark) var(--txt_shadow_dark);
	padding: 0.5em 1em;
}


#AtsumiHanabi :is(h2, .h2, h3, .h3, h4, .h4, h5, .h5).plain
{
	margin-top: 0;
	margin-bottom: 0;
}
#AtsumiHanabi :is(h2, .h2, h3, .h3, h4, .h4, h5, .h5).plain>b
{
}
#AtsumiHanabi :is(h2, .h2, h3, .h3, h4, .h4, h5, .h5).plain::before,
#AtsumiHanabi :is(h2, .h2, h3, .h3, h4, .h4, h5, .h5).plain::after
{
	content: none;
}


/* [250611-1258/250612]校正　「coming soonにしてください。」 */
.coming_soon
{
	opacity: 0.5;
}
.coming_soon>b
{
	font-size: 1.5em;
}

/* ------------------------------------------------------------------------------------------------------------
	<a>
*/
.id_atsumi_hanabi a[target]:not(
	[href*=".pdf"],
	[href*=".doc"]
)>*::before
{
	filter: brightness(10);
	opacity: 0.5;
}

.id_atsumi_hanabi .ColorBtn
{
	--border_color			: var(--w) / 0.5;
	border-width: 1px;
	border-color: rgb(var(--border_color)) !important;
	color: inherit;
}

.id_atsumi_hanabi .ColorBtn::after
{
	background-color: rgb(var(--w) / 0.5) !important;
}


.id_atsumi_hanabi .Zoom a .Img:not(.no_Zoom)
{
	overflow: initial;
}


.id_atsumi_hanabi .ColorBtn.short
{
	min-width: initial;
	width: auto;
	max-width: initial;

	padding-top: 0.75em;
	padding-bottom: 0.75em;
	padding-left: 0.75em;
}
.id_atsumi_hanabi .ColorBtn.short::after
{
	height: calc(var(--padding_lr) * 0.5);
}


/* ------------------------------------------------------------------------------------------------------------
	<header>
*/
.Header
{
	color: rgb(var(--color1));
}

.Header .pagetitle
{
	color: inherit;
}

.Header .pagetitle .name
{
	flex-wrap: wrap;
}

html.scroll_Top_half .Header
{
	top: 0;
}


/* ------------------------------------------------------------------------------------------------------------
	<GlobalMenu>
*/
.GlobalMenu
{
}

.GlobalMenu>ul
{
	gap: 1em;
}

.GlobalMenu :is(a, .a)
{
	align-items: baseline;

	padding-left: 0.5em;
	padding-right: 0.5em;
}


.GlobalMenu .Child>ul>li.child_MenuOn>*
{
	background-color: rgb(var(--color2) / 0.5);
}


/* ------------------------------------------------------------------------------------------------------------
	<Drawer>
*/
.Drawer,
.Drawer *::before,
.Drawer *::after
{
	--border_color		: var(--w);
	--bg_color			: var(--color1);
}

.Drawer .List .content_list :where(a, .a)
{
	--arrow_color		: rgb(var(--w));
}

.Drawer
{
	color: rgb(var(--w));
}

.Drawer .toggle .Btn::before
{
	opacity: 0;
}

#nav-input:checked ~ .toggle .Btn
{
	filter: invert(100%);
}

.Drawer #nav-input:checked ~ .toggle .Btn>span
{
	background-color: rgb(var(--bk));
}


.Drawer .List ul.content_list
{
	display: inline-grid;
	grid-template-columns: repeat(1, 1fr);
	text-align: left;
	gap: var(--gap);
}
/*

	
	grid-template-columns: repeat(auto-fit, minmax(33%, 1fr));
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	text-align: left;

	max-width: 60em;
	margin-left: auto;
	margin-right: auto;
*/

.Drawer .List .content_list>*
{
	border-bottom-width: 1px !important;
	border-bottom-color: rgb(var(--w) / 0.3) !important;
	border-radius: 0;
}
/*
	background-color: rgb(var(--w) / 0.1);
*/
.Drawer .List .content_list>*:nth-of-type(odd)
{
	margin-right: calc(var(--gap) * 2);
}
.Drawer .List .content_list>*:nth-of-type(even)
{
	margin-left: calc(var(--gap) * 2);
}

.Drawer .List>.Wrap>ul>li,
.Drawer .Change .details
{
	border-radius: 0;
}


.Drawer .List a:hover,
.Drawer .Change .details input + .summary:hover
{
	background-color: rgb(var(--w) / 0.2);
}

.Drawer .List .content_list .Child :is(a, .a)
{
	padding-top: 0.5em;
	padding-bottom: 0.5em;
}

.Drawer .List .child_MenuOn,
.Drawer .List .MenuOn .Child .child_MenuOn
{
	background-color: rgb(var(--color2) / 0.5);
}


/* <Drawer>　今のページ */
.Drawer .List .MenuOn
{
	background-color: rgb(var(--color2) / 0.5);
	padding-bottom: 0.5em;
}

.Drawer .List .MenuOn .Child
{
	font-weight: normal;
}


/* <Drawer>　個別　後援 */
.Drawer .Change .ClassSupport .details input + .summary
{
	display: none;
}


/* [25011-1258/250612]校正　「右上の三本線の部分は、上部にバーがあるので、無くても大丈夫です。」 */
.Drawer label.toggle
{
	display: none;
}


/* ------------------------------------------------------------------------------------------------------------
	index以外　.page_head
*/
.id_atsumi_hanabi .page_head
{
	--img_translate_num			: 1;
	--img_translate_max			: 8;

	overflow: initial;
}

.id_atsumi_hanabi .page_head .Img
{
	position: fixed;
	left: 0;
	right: 0;
	top: 0;

	height: 100svh;
	opacity: 0.75;
	
	>*
	{
		height: 100svh;
/*
		
		background-image: url(65686919.jpg);
		background-position: center top;
		background-repeat: no-repeat;
		background-size: cover;
*/
	}

	img
	{
		height: 100svh;
		object-position: top;
	}
}
/*
.id_atsumi_hanabi .page_head .Img>.Wrap
{
	clip-path: ellipse(85% 100% at 70% 0%);
}
.id_atsumi_hanabi .page_head .Img img
{
}
	height: auto;

	translate: 0% -100%;
	translate: 0% calc(0em - (100% - var(--page_head_h)));
	translate: 0% calc(
		0em - (
			((100% - var(--page_head_h)) / var(--img_translate_max)) * var(--img_translate_num)
		)
	);

.type_design_news .page_head
{
	--img_translate_num			: calc(var(--img_translate_max) - 1);
}

.type_design_guide .page_head
{
	--img_translate_num			: 4;
}

.type_design_venue_map .page_head
{
	--img_translate_num			: 3;
}

.type_design_traffic .page_head
{
	--img_translate_num			: 2;
}

.type_design_gourmet .page_head
{
	--img_translate_num			: 1;
}
*/


.id_atsumi_hanabi .page_head .title
{
	filter: var(--txt_shadow_dark) var(--txt_shadow_dark);
}


/* ------------------------------------------------------------------------------------------------------------
	<main>
*/
.AtsumiHanabi
{
}


/* ------------------------------------------------------------------------------------------------------------
	[250611-1258/250612]校正・追加　「どのページに移動しても、下部に「お問合せ」が表示されるようにしたいです。」
	<footer contact>
*/
.footer_contact
{
	padding-top: var(--gap);
	padding-bottom: var(--gap);

	background-color: rgb(var(--color1) / 0.9);
	border-top-color: rgb(var(--w) / 0.3);
}
.footer_contact::before
{
	content: "";
	display: block;

	position: absolute;
	left: 50%;
	top: 50%;
	translate: -50% -50%;

	width: 100%;
	height: 100%;

	background-color: rgb(var(--color2) / 0.25);
}

.footer_contact>.Wrap
{
}


.footer_contact .body
{
	display: grid;
	grid-template-areas:
		"head head"
		"footer_contact_title name"
		"footer_contact_title address"
		"footer_contact_title contact"
	;
	justify-items: start;
	align-items: start;
	gap: 0 calc(var(--gap) / 2);
}
/*
	justify-content: start;
	grid-template-columns: repeat(3, auto);
	align-items: center;
*/
.footer_contact .body>.head
{
	grid-area: head;
}
.footer_contact .body>.footer_contact_title
{
	grid-area: footer_contact_title;
}
.footer_contact .body>.name
{
	grid-area: name;
}
.footer_contact .body>.address
{
	grid-area: address;
}
.footer_contact .body>.contact
{
	grid-area: contact;
}


.footer_contact .body>*
{
	display: flex;
	flex-wrap: wrap;
	align-items: baseline;
	gap: 0 0.5em;
}


.footer_contact .body .head
{
	margin-bottom: calc(var(--gap) / 2);
}


.footer_contact .body .head .title
{
	font-size: 1.2em;
}

.footer_contact .body .head .title>*
{
}
/*
	display: grid;
*/

.footer_contact .body .footer_contact_title
{
	font-size: 0.9em;

	display: block;

	padding: 0.25em 1em;
	background-color: rgb(var(--w) / 0.15);
}

.footer_contact .body .address
{
	margin-top: 1em;
}


.footer_contact .body .contact
{
	gap: 0em var(--gap);
}

.footer_contact .body .contact>*:not(.url)
{
	display: grid;
	grid-template-columns: repeat(2, auto);
	gap: 0 0.5em;
}
.footer_contact .body .contact>*:not(.url) b
{
	font-weight: inherit;
}

.footer_contact .body .contact .url b
{
	font-weight: inherit;
}


/* ------------------------------------------------------------------------------------------------------------
	<footer>
*/
footer
{
	background-color: rgb(var(--pk));
	background-color: rgb(var(--color1));
	color: rgb(var(--w));
}
/*
	position: sticky;
	left: 0;
	right: 0;
	bottom: 0;

*/

footer .Copy
{
	border-width: 0;
}

/* [250611-1258]校正・追加　「（一社）渥美半島観光ビューロー」の前に「渥美半島花火大会実行委員会事務局」 */
/*
footer .Copy a
{
	display: grid;
	grid-template-areas:
		"c copy_before name"
	;
}
footer .Copy a>span:nth-child(2)
{
	grid-area: c;
}
footer .Copy a>span:nth-child(3)
{
	grid-area: name;
}
footer .Copy a>span.copy_before
{
	grid-area: copy_before;
}
*/
footer .Copy a>span:nth-child(2)
{
	display: grid;
	grid-template-areas:
		"before b"
		"before em"
	;
	align-items: center;
}
footer .Copy a>span:nth-child(2)::before
{
	grid-area: before;
}
footer .Copy a>span:nth-child(2)>b
{
	grid-area: b;
}
footer .Copy a>span:nth-child(2)>em
{
	grid-area: em;
}

footer .Copy a>span:nth-child(2)::before
{
	content: "渥美半島花火大会実行委員会事務局";
	display: inline;
}


/* ------------------------------------------------------------------------------------------------------------
	共通
------------------------------------------------------------------------------------------------------------ */

/* ------------------------------------------------------------------------------------------------------------
	[渥美半島花火大会]共通　周辺地図
*/
.map_around
{
}

.map_around img
{
	width: 100%;
}


/* ------------------------------------------------------
	[渥美半島花火大会]共通　チケット
*/
:is(.Main, .Header) .ClassTicket a>*
{
	grid-template-areas: none;
	grid-template-columns: 1fr;
}
:is(.Main, .Header) .ClassTicket a>*::before,
:is(.Main, .Header) .ClassTicket a>*>*
{
	grid-area: initial;
}
:is(.Main, .Header) .ClassTicket a>*::before
{
	aspect-ratio: 1;
	position: absolute;
	width: 0;
	overflow: hidden;
}


.Header .GlobalMenu .ClassTicket
{
}

.Header .GlobalMenu .ClassTicket a
{
}


.footerFixed
{
	--fixed_ticket_w			: 15em;

	position: fixed;
	right: 1em;
	bottom: 1em;
	
	z-index: 5;
}

.ex_scroll_stop .footerFixed
{
	translate: 0% calc(0em - (var(--fixed_ticket_w) / 1.4));
}

.footerFixed .ClassTicket
{
}

.footerFixed .ClassTicket a
{
	aspect-ratio: 1;

	display: grid;
	justify-content: center;
	justify-items: center;
	align-content: center;
	align-items: center;

	width: fit-content;
	width: var(--fixed_ticket_w);

	text-align: center;
	text-decoration-line: none;

	filter: var(--txt_shadow_dark) var(--txt_shadow_dark);
}
.footerFixed .ClassTicket a::before
{
	aspect-ratio: 1;

	content: "";
	display: block;

	position: absolute;
	left: 50%;
	top: 50%;
	translate: -50% -50%;

	width: 100%;

	background-color: rgb(var(--or) / 0.2);
	border-width: 1px;
	border-color: rgb(var(--y) / 0.3);
	border-radius: 100em;
}
/*
	width: calc(100% + var(--gap));
*/

.footerFixed .ClassTicket a .title
{
	font-size: 1.5em;
	background: rgb(var(--r) / 0.5);
	padding-left: 0.5em;
	padding-right: 0.5em;
}
/*

	--size: 0.5em;

	padding-inline: calc(var(--size) + 1em);
	line-height: 1.8;
	clip-path: polygon(
		0 0,
		100% 0,
		calc(100% - var(--size)) 50%,
		100% 100%,
		0 100%,
		var(--size) 50%
	);
	background: rgb(var(--color2) / 0.5);
	width: fit-content;
*/

.footerFixed .ClassTicket a .main
{
	display: grid;
	justify-content: center;
	justify-items: center;
}

.footerFixed .ClassTicket a .main *,
.footerFixed .ClassTicket a .arrow
{
	display: inline-flex;
	align-items: baseline;

	text-align: center;
}

.footerFixed .ClassTicket .main .m1
{
}
.footerFixed .ClassTicket .main .m1>span
{
}
.footerFixed .ClassTicket .main .m1>span>b
{
	font-size: 1.5em;
}
/* [250825-1427]修正　右下『チケットぴあ』バナー　「(販売開始)」→「(販売中、残り僅か)」 */
.footerFixed .ClassTicket .main .m1
{
	left: -2em;
	rotate: -5deg;
	
	margin-top: 0.5em;
	margin-bottom: 0.5em;
	margin-left: 0;
	margin-right: auto;

	border-bottom-width: 0px;
	border-bottom-color: rgb(var(--y));

	text-decoration-line: underline;
	text-decoration-style: wavy;
	text-decoration-style: dotted;
	text-decoration-style: dashed;
	text-decoration-style: double;
	text-decoration-color: rgb(var(--r) / 0.75);
	text-underline-offset: 0.4em;
	text-decoration-thickness: 0.1em;

	color: rgb(var(--or));
	font-weight: bold;

	filter: drop-shadow(0px 2px 0em rgb(var(--r) / 1));
}
/* [250825-1427]修正　右下『チケットぴあ』バナー　「(販売開始)」→「(販売中、残り僅か)」　.m2使わなくなった */
.footerFixed .ClassTicket .main .m2
{
	aspect-ratio: 1;
	position: absolute;
	width: 0;
	overflow: hidden;
}


.footerFixed .ClassTicket .Alert 
{
	color: rgb(var(--y) / 0.9);
}
/*
	width: auto;
	padding: 0.75em 0.5em 0.9em;
	
	background-color: rgb(var(--r));
	color: rgb(var(--w));
	opacity: 0.9;

	line-height: 0;
*/

.footerFixed .ClassTicket .arrow
{
	gap: 0.5em;
}





/* ------------------------------------------------------
	[渥美半島花火大会]共通　日時
*/
.event_day
{
	display: inline-flex;
	align-items: center;
}

.event_time
{
}

.week::before
{
	aspect-ratio: 1;

	content: "";
	display: block;

	position: absolute;
	left: 50%;
	top: 50%;
	translate: -50% -50%;

	width: calc(100% + 0.5em);

	background-color: rgb(var(--color2) / 0.2);
	border-width: 1px;

	border-radius: 100em;
}
.week>b
{
	display: block;
	
	top: -0.05em;

	line-height: 0;
}

.Guide .event_day b
{
	font-weight: inherit;
}

.Guide .event_time b
{
	font-weight: inherit;
}


/* ------------------------------------------------------
	[渥美半島花火大会]共通　天気
*/
.event_weather
{
	display: inline-flex;
}

.Guide .event_weather
{
}


/* ------------------------------------------------------
	[渥美半島花火大会]共通　主催、後援
*/
:is(.event_host, .event_suport)
{
	display: flex;
	align-items: center;
	gap: 0.5em;
}

:is(.event_host, .event_suport)>*[class*="head"]
{
	font-size: 0.8em;

	display: flex;
	line-height: 0;
}
:is(.event_host, .event_suport)>*[class*="head"]::before
{
	content: "";
	display: block;

	position: absolute;
	left: 50%;
	top: 50%;
	translate: -50% -50%;

	width: calc(100% + 0.5em);
	height: 1.7em;

	background-color: rgb(var(--color1));
	border-width: 1px;
}
/*
	content: "：";
*/


/* ------------------------------------------------------------------------------------------------------------
	[渥美半島花火大会]共通　チケット
*/
.ticket
{
}


.id_atsumi_hanabi .VenueMap .ticket .body
{
	gap: 0;
}


.ticket .lead
{
}

.ticket .lead .Border
{
	--clip_rate			: 1em;

	margin-top: var(--gap);

	display: inline-grid;
	justify-content: center;
	justify-items: center;
	gap: 1em;
}
.ticket .lead .Border>.Wrap
{
	display: flex;
	align-items: center;
	gap: 1em;
}
.ticket .lead .Border>.Wrap>b
{
	padding: 0.5em 1em;
	padding-right: calc(var(--clip_rate) * 2);

	background-color: rgb(var(--w) / 0.8);
	color: rgb(var(--color1));

	clip-path: polygon(
		0% 0%,
		calc(100% - var(--clip_rate)) 0%,
		100% 50%,
		calc(100% - var(--clip_rate)) 100%,
		0% 100%
	);
}
.ticket .lead .Border>.Wrap>div
{
	font-size: 1.2em;

	display: flex;
	align-items: baseline;
	gap: 0.25em;
}
.ticket .lead .Border>.Wrap>div b
{
	font-size: 2em;
}
.ticket .lead .Border .Alert
{
	padding: 0 0.5em 0.25em 0.5em;
	background-color: rgb(var(--r) / 0.75);
	color: rgb(var(--w));
}

.ticket .lead .Border .footer
{
}
.ticket .lead .Border .footer a
{
	gap: 1em;
}
.ticket .lead .Border .footer .icon
{
}
.ticket .lead .Border .footer .icon img
{
	width: 4em;
	filter: brightness(0) invert(1);
}


.ticket .lead .Border .r
{
	justify-self: end;
}



.Ct.ticket .List
{
	padding-top: var(--padding_tb);
	gap: 0;
}
.Ct.ticket .List>.Wrap
{
	background-color: rgb(var(--w) / 0.1);
	padding: calc(var(--gap) * 2);
	border-radius: 1em;

	border-width: 3px;
	border-color: rgb(var(--color2) / 0.3);
}
/*

	filter: var(--txt_shadow_dark) var(--txt_shadow_dark);
*/

.ticket .List .Item
{
	display: grid;
	grid-template-columns: 12em auto 8em 12em;
	grid-template-columns: 12em auto 8em;
	align-items: center;
	gap: 1em;

	min-height: calc(4em + (1em * 2));
	padding: 1em var(--gap);

	text-align: left;
}
/*
	grid-template-columns: repeat(2, 1fr) 20% 13em;
*/


.ticket .List .Item:nth-of-type(odd)
{
	background-color: rgb(var(--bg_color));
}
.ticket .List .Item:nth-of-type(even)
{
}


.ticket .List .Item .head
{
	display: flex;
	justify-content: center;
	align-items: center;
	gap: 1em;
}

.ticket .List .Item .icon
{
	filter: var(--txt_shadow_dark);
}
/*
	background-color: rgb(var(--w) / 0.25);
	filter: var(--txt_shadow_dark) var(--txt_shadow_dark);
*/
.ticket .List .Item .icon img
{
	filter: brightness(1.5) invert(12.5%);
	aspect-ratio: 1;
	width: 4em;

	object-fit: contain;
}


.ticket .List .Item .title
{
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 0 0.5em;
	
	padding: 0;
	background-color: transparent;

	line-height: 1;
}
.ticket .List .Item .title>.type
{
	font-size: 1.2em;
	font-weight: bold;
}
.ticket .List .Item .title>b
{
	font-size: 2.5em;
}


.ticket .List .Item .main
{
	display: flex;
	flex-wrap: wrap;
	align-items: baseline;
	gap: 1em var(--gap);
}

.ticket .List .Item .capacity
{
	font-size: 1.2em;
	display: flex;
	align-items: baseline;
	gap: 1em;

	line-height: 1;
}
.ticket .List .Item .capacity>*
{
}
.ticket .List .Item .capacity b
{
	font-size: 1.5em;
}
.ticket .List .Item .capacity .people_num
{
	font-size: 1.2em;
}
.ticket .List .Item .capacity .capacity_num
{
}
.ticket .List .Item .capacity .capacity_num>b
{
	font-weight: inherit;
}


.ticket .List .Item .lead
{
	font-size: inherit;
}


.ticket .List .Item .fee
{
	text-align: right;
}
.ticket .List .Item .fee>b
{
	font-size: 1.5em;
}

.ticket .List .Item .txt
{
}

.ticket .List .Item .txt_memo
{
	font-size: 0.9em;
}


.ticket .List .Item .ColorBtn
{
	font-size: 0.8em;
	min-width: initial;
	width: auto;

	padding-left: 1em;
}
.ticket .List .Item a>b>span
{
}

/* [渥美半島花火大会]共通　チケット　個別　イス席 */
.ticket .List.list_accessible_seating>.Wrap
{
	border-color: rgb(var(--y) / 0.3);
}

.ticket .List.list_accessible_seating .memo
{
	background-color: rgb(var(--w) / 0.15);
}
.ticket .List.list_accessible_seating .Item+.memo :is(h3, .h3)
{
	background-color: rgb(var(--y) / 0.15);
	filter: none;
}
/**/

.ticket .List .Item[class*="isu"]
{
}
.ticket .List .Item[class*="isu"] .head
{
}
.ticket .List .Item[class*="isu"] .icon
{
}
.ticket .List .Item[class*="isu"] .icon img
{
	scale: 0.8;
}

/* [渥美半島花火大会]共通　チケット　個別　カメラ席 */
.ticket .List .ID_camera
{
}
.ticket .List .ID_camera .title
{
}
.ticket .List .ID_camera .title>b
{
	font-size: 1.5em;
}
.ticket .List .ID_camera .icon img
{
	filter: brightness(0) invert(1);
}

/* [渥美半島花火大会]共通　チケット　個別　車イス席 */
.ticket .List .ID_accessible_seating
{
}
.ticket .List .ID_accessible_seating .title
{
}
.ticket .List .ID_accessible_seating .title>b
{
	font-size: 1.5em;
}
.ticket .List .ID_accessible_seating .icon img
{
	filter: brightness(0) invert(1);
}


.ticket .list_accessible_seating .memo
{
}

.ticket .list_accessible_seating .memo .head
{
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	justify-items: center;
	align-items: center;
	gap: 0.5em 1em;

	margin-bottom: calc(0em - var(--gap));
}
.ticket .list_accessible_seating .memo .head .head_title
{
	padding: 0.25em 1em;
	background-color: rgb(var(--y) / 0.35);
}
.ticket .list_accessible_seating .memo .head .txt
{
	margin: 0 !important;
}
.ticket .list_accessible_seating .memo .head .txt>span
{
}
.ticket .list_accessible_seating .memo .head .txt>span>b
{
	font-size: 1.5em;
}
.ticket .list_accessible_seating .memo .head .txt>b
{
	font-size: 1.2em;
}

.ticket .list_accessible_seating .memo .address
{
	display: flex;
	justify-content: center;
	justify-items: center;
	align-items: center;
	gap: 0.5em 1em;
}
.ticket .list_accessible_seating .memo .address_txt
{
	display: grid;
	gap: 0em;
}
.ticket .list_accessible_seating .memo .address_txt>*
{
	display: flex;
	align-items: baseline;
	gap: 0.5em;
}
.ticket .list_accessible_seating .memo .address .txt1
{
	font-weight: bold;
}
.ticket .list_accessible_seating .memo .address .txt1 .Num
{
	font-size: 1.5em;
}

.ticket .list_accessible_seating .memo .address .txt2
{
}


/* 販売状況 */
.ticket .List .Item .title .status,
.ticket .lead .footer.sold_out .status
{
	font-size: 0.9em;

	position: absolute;
	right: calc(100% + 1em);
	top: 1em;

	rotate: -3deg;

	width: calc(var(--em) * 7);
	line-height: 1;

	padding: 0.5em 0.25em;
}

/* 販売状況「もうすぐ終わり」 */
.ticket .List .Item.soon .status
{
	background-color: rgb(var(--or) / 0.5);
}
.ticket .List .Item.sold_out .title>*:not(.status),
.ticket .List .Item.sold_out :is(.main, .detail, .fee, .icon)
{
	opacity: 0.4;
}
.ticket .List .Item.sold_out .status,
.ticket .lead .footer.sold_out .status
{
	background-color: rgb(var(--r) / 0.5);
}

.ticket .lead .footer.sold_out .status
{
	position: relative;
	left: initial;
	right: initial;
	top: initial;
	bottom: initial;
	translate: none;

	font-size: inherit;
	width: auto;
	padding-left: 0.5em;
	padding-right: 0.5em;
	
	text-align: center;
	line-height: 1.2;
}


/*
[250716-1437]　2025年度用チラシ着

.ticket .List .Item
{
	display: grid;
	grid-template-columns: repeat(2, 1fr) 20% 13em;
	gap: 1em;

	padding: 1em;
	padding-left: 2em;

	text-align: left;
}

.ticket .List .Item:nth-of-type(odd)
{
	background-color: rgb(var(--bg_color));
}
.ticket .List .Item:nth-of-type(even)
{
}


.ticket .List .Item>*
{
	display: grid;
	align-content: center;
	align-items: center;

	height: 100%;

}


.ticket .List .Item .title
{
	display: flex;
	gap: 1em;
	background-color: transparent;
	padding: 0;
}
.ticket .List .Item .title>b
{
	font-size: 0.8em;

	display: block;
	justify-content: center;
	justify-items: center;

	text-align: center;
	line-height: 1.5;
}

.ticket .List .Item .title .status
{
	font-size: 0.9em;

	position: absolute;
	right: calc(100% + 1em);
	top: 1em;

	rotate: -3deg;

	width: calc(var(--em) * 5);
	line-height: 1;

	padding: 0.5em 0.25em;
}



.ticket .List .Item .type
{
	display: grid;
	justify-content: center;
	justify-items: center;
	gap: 0.5em;

	line-height: 1;
}

.ticket .List .Item .type>b
{
	font-size: 2em;
}


.ticket .List .Item .detail
{
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	justify-items: center;
	align-items: baseline;
	gap: 0 1em;
}
.ticket .List .Item .fee
{
	width: 6em;
	text-align: right;
}
.ticket .List .Item .fee>b
{
	font-size: 1.5em;
}
.ticket .List .Item .capacity
{
	width: 4em;
	text-align: left;
}

.ticket .List .Item .footer
{
	text-align: center;
}

.ticket .List .Item .footer .ColorBtn
{
	font-size: 0.8em;
	min-width: initial;
	max-width: initial;
	width: 100%;
}


.ticket .List .Item.soon .status
{
	background-color: rgb(var(--or) / 0.5);
}
.ticket .List .Item.sold_out .title>*:not(.status),
.ticket .List .Item.sold_out :is(.main, .detail)
{
	opacity: 0.4;
}
.ticket .List .Item.sold_out .status
{
	background-color: rgb(var(--r) / 0.5);
}



/ ------------------------------------------------------
	[渥美半島花火大会]共通　チケット　個別「車いす席」
/
.ticket .List .ID_accessible_seating
{
}
.ticket .List .ID_accessible_seating .title
{
}
.ticket .List .ID_accessible_seating .title>b
{
	font-size: 1.75em;
}
*/


.ticket .List .Item+.memo
{
	display: grid;
	gap: var(--gap);

	margin-top: var(--gap);
}
.ticket .List .Item+.memo>.Wrap
{
	background-color: rgb(var(--color1) / 0.25);
	padding: var(--gap);
}

.ticket .List .Item+.memo .txt
{
	margin-top: 1em;
}



/* ------------------------------------------------------------------------------------------------------------
	[渥美半島花火大会]　QA
*/
.qa
{
}

.qa .Change
{
	--change_btn_size		: 1.5em;
	--change_btn_padding	: 2em;
}

.qa .Change .details
{
	border-width: 0;
	background-color: rgb(var(--bg_color));
}


/* ------------------------------------------------------------------------------------------------------------
	[渥美半島花火大会]　index
	atsumi_hanabi/
*/
.AtsumiHanabi.Index .index_bg
{
	position: fixed;
	left: 0;
	right: 0;
	top: 0;

	opacity: 0.4;
}
.AtsumiHanabi.Index .index_bg img
{
	width: 100vw;
	height: 100vh;

	object-position: top;
}


/* ------------------------------------------------------------------------------------------------------------
	[渥美半島花火大会]　index	top
*/
.AtsumiHanabi.Index .Top,
.AtsumiHanabi.Index .Gallery.CrossFade,
.AtsumiHanabi.Index .Gallery.CrossFade *
{
	height: 100vh;
}

.AtsumiHanabi.Index .Gallery.CrossFade
{
	position: fixed;
	left: 0;
	right: 0;
	top: 0;

	.Item
	{
		.Img
		{
			>.Wrap
			{
				display: grid;
				justify-content: center;
				justify-items: center;
				align-items: center;
			}

			img
			{
				width: auto !important;
				max-width: 100% !important;
				height: auto !important;
				max-height: 100vh !important;
				
				margin: auto;

				object-fit: contain !important;
				object-fit: initial !important;

			}
			/*
				scale: 1.2;
			*/
		}
	}
}


.AtsumiHanabi.Index .Top
{
	color: rgb(var(--w));

	display: grid;
	justify-content: center;
	align-content: center;
	align-items: center;
	gap: var(--gap);


	.top
	{
		font-size: 1.5vw;

		display: grid;
		gap: var(--gap);

		padding-bottom: var(--padding_tb);
		/*
			position: absolute;
			left: 50%;
			top: 50%;
			translate: -50% -50%;
		*/

		/* [ヨコ長] */
		@media screen and (orientation: landscape) {
			font-size: 1.5vh;
			font-size: 2vh;

			padding-top: 5vh;
			padding-bottom: 5vh;
		}

	}



	h2
	{
		gap: 0;
		font-weight: 900;

		&::before,
		&::after
		{
			aspect-ratio: 1;
			position: absolute;
			width: 0;
			overflow: hidden;
		}

		>b
		{
			font-size: inherit;
			font-size: 2em;
		}
	}


	:is(.name .txt, .main, .catch)
	{
		filter: var(--txt_shadow_dark) var(--txt_shadow_dark);
	}

	.logo
	{
		position: absolute;
		left: 50%;
		bottom: calc(100% + var(--gap));
		translate: -50% -0%;
		filter: var(--txt_shadow_w) var(--txt_shadow_w);

		img
		{
			width: auto;
			height: 3em;
		}
	}


	.title .name
	{
		line-height: 1;
		display: block;

		>span
		{
			display: grid;
			justify-content: center;
			justify-items: center;
			gap: 0.5em;
		}

		.event_num
		{
			padding: 0.25em 0.25em 0.35em;

			background-color: rgb(var(--w) / 0.9);
			color: rgb(var(--color1));
			z-index: 5;
		}
		.txt
		{
			font-size: 3.25em;
		}
		/*
		[250523-1750]ヨコナガブラウザではみ出るので、縦書きやめる
			writing-mode: vertical-rl;
			-ms-writing-mode: tb-rl;
			text-orientation: upright;

		*/

		>span:last-child
		{
			display: none;
		}
	}



	.main
	{
		font-size: 1.4em;

		display: inline-grid;
		justify-content: center;
		justify-items: center;
		align-items: baseline;
		gap: 0.75em;

		line-height: 1;

		opacity: 0.9;

		>*
		{
		}

		.m1
		{
			display: flex;
			align-items: baseline;
			gap: 1em;

			padding: 0.4em 1em 0.5em;

			background-color: rgb(var(--w) / 0.2);
		}

		.event_day
		{
			display: inline-flex;
			align-items: baseline;
			gap: 0.25em;

			b
			{
				font-size: 1.5em;
			}

			.week
			{
				scale: 0.9;
				margin-left: 0.25em;

				>b
				{
					font-size: inherit;
				}
			}
		}


		.event_time
		{
			margin-left: -1em;
			padding-left: 1em;

			>b
			{
				font-size: 1.3em;
			}
		}


		.event_venue
		{
		}


		.event_weather
		{
			font-size: 0.8em;
			
			display: inline-flex;
			justify-content: center;
			gap: 1em;

			/*

				margin-top: 0.5em;
				margin-bottom: 0.5em;
			*/

			>*
			{
				padding: 0.25em;
				background-color: rgb(var(--color2) / 0.5);

			}
		}


		.m4
		{
			font-size: 0.8em;

			display: flex;
			gap: 0.5em 2em;
		}
	}


	.catch
	{
		margin-top: calc(var(--gap) * 2);

		>*
		{
			font-size: 2em;
			font-weight: inherit;
			letter-spacing: 0.5em;
		}
	}
}




/* ------------------------------------------------------------------------------------------------------------
	[渥美半島花火大会]　index	ライブ配信
	------------------------------------------------------
	[250902-1136/250903-1714]確認　top左下へ日付の高さで、ユーチューブのロゴを使って「ライブ配信はこちら」
	[250818-1119(250827-1403)]新規　ティーズ　ライブ配信バナー　『詳細は追ってご連絡いたします』
*/
.AtsumiHanabi.Index .Top .tees
{
	--youtube_color			: 255 0 51;

	position: absolute;
	left: 50%;
	bottom: calc(var(--gap) * 1.5);
	translate: -50% -0%;

	text-align: left;
	filter: var(--txt_shadow_dark) var(--txt_shadow_dark);
}
/* [ヨコ長] */
@media screen and (orientation: landscape) {
	.AtsumiHanabi.Index .Top .tees>.Wrap
	{
		font-size: 2vh;
	}
}

.AtsumiHanabi.Index .Top .tees>.Wrap
{
	width: 100%;
}

.AtsumiHanabi.Index .Top .tees a
{
	font-size: 1.3em;
	line-height: 1;
	text-decoration-line: none;

	display: inline-flex;
	align-items: center;
	gap: 0em;

	width: fit-content;
	min-width: initial;

	padding-top: 0.125em;
	padding-bottom: 0.125em;
	padding-left: 0.25em;
	padding-right: 2em;

	background-color: rgb(var(--youtube_color) / 0.1);
	background-color: rgb(var(--w) / 0.2);
	border-width: 1px;
	border-color: rgb(var(--youtube_color) / 0.3) !important;
}

.AtsumiHanabi.Index .Top .tees a>.Img
{
	display: block;
	width: 7em;
}

.AtsumiHanabi.Index .Top .tees a>b
{
	display: block;
	font-size: 0.7em;
}

.AtsumiHanabi.Index .Top .tees a>b::before
{
	aspect-ratio: 1;
	position: absolute;
	width: 0;
	overflow: hidden;
}
/*
*/
.AtsumiHanabi.Index .Top .tees a::after
{
	font-size: 0.5em;

	top: initial;
	bottom: 0.5em;
	translate: 0 0;
}
/*
	aspect-ratio: 1;
	position: absolute;
	width: 0;
	overflow: hidden;
*/


/* ------------------------------------------------------------------------------------------------------------
	[渥美半島花火大会]　index	メインコンテンツ
*/
.Ct.Item
{
}


.Ct.Item .body
{
	display: grid;
	gap: var(--gap);
}

.Ct.Item .body .title
{
	margin-bottom: 0;

	background-color: transparent;
}


.Ct.Item .List
{
	display: flex;
	gap: var(--gap);
}

.Ct.Item .List>*
{
	width: 100%;
}

.Ct.Item .List a
{
	text-decoration-line: none;
}


.Ct.Item .body .txt
{
	justify-self: center;

	font-size: 0.8em;
	text-decoration-line: underline;
	text-decoration-thickness: 1px;
	text-underline-offset: 0.25em;
	text-decoration-color: rgb(var(--w) / 0.4);
	text-decoration-style: wavy;
}

.Ct.Item .body .txt ul
{
	gap: 0.5em;
}
.Ct.Item .body .txt ul>li
{
}


.Ct.contents1
{
}

.Ct.contents1 .List
{
}

.Ct.contents1.Item
{
	width: 100%;
}

.Ct.contents1.Item :is(a, .a)
{
	display: grid;
	justify-content: center;
	align-content: center;
	align-items: center;
	gap: var(--gap);
	
	text-decoration-line: none;
}
.Ct.contents1.Item :is(a, .a)>.head
{
	grid-area: head;
}
.Ct.contents1.Item :is(a, .a)>.main
{
	grid-area: main;
}


.Ct.contents1.Item.odd
{
}
.Ct.contents1.Item.odd :is(a, .a)
{
	grid-template-areas:
		"head main"
	;
	grid-template-columns: 45% auto;
}
.Ct.contents1.Item.odd .main
{
}

.Ct.contents1.Item.even
{
}
.Ct.contents1.Item.even :is(a, .a)
{
	grid-template-areas:
		"main head"
	;
	grid-template-columns: auto 45%;
}
.Ct.contents1.Item.even .main
{
}

.Ct.contents1.Item .Img
{
	display: block;

	filter: drop-shadow(0 0 0.75rem rgb(var(--bl) / 0.5));
}
/*

	position: absolute;
	left: 0;
	top: 50%;
	translate: -0% -50%;
	width: 50%;
*/

.Ct.contents1.Item .Img img
{
	aspect-ratio: 1;
	display: block;
	width: 100%;

	background-color: rgb(var(--w));

	border-radius: 100em;
}
/*
	--g:/9.756% 9.756% radial-gradient(#000 calc(71% - 1px),#0000 71%) no-repeat;

	mask: 100% 50% var(--g),98.831% 60.749% var(--g),95.379% 70.994% var(--g),89.805% 80.259% var(--g),82.369% 88.108% var(--g),73.42% 94.176% var(--g),63.376% 98.177% var(--g),52.707% 99.927% var(--g),41.911% 99.341% var(--g),31.493% 96.449% var(--g),21.941% 91.384% var(--g),13.7% 84.385% var(--g),7.157% 75.778% var(--g),2.617% 65.965% var(--g),0.293% 55.406% var(--g),0.293% 44.594% var(--g),2.617% 34.035% var(--g),7.157% 24.222% var(--g),13.7% 15.615% var(--g),21.941% 8.616% var(--g),31.493% 3.551% var(--g),41.911% 0.659% var(--g),52.707% 0.073% var(--g),63.376% 1.823% var(--g),73.42% 5.824% var(--g),82.369% 11.892% var(--g),89.805% 19.741% var(--g),95.379% 29.006% var(--g),98.831% 39.251% var(--g),radial-gradient(100% 100%,#000 44.857%,#0000 calc(44.857% + 1px));
*/

.Ct.contents1.Item .main
{
	display: grid;
	justify-content: center;
	gap: var(--gap);
}

.Ct.contents1.Item .main .title
{
	margin-bottom: calc(var(--gap) / 2);
}
.Ct.contents1.Item .main .title>b
{
	font-size: 2em;
}


.Ct.contents1.Item .main .child_list
{
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 0;
}

.Ct.contents1.Item .main .child_list .child_title
{
	margin: 0;
	padding: 0;
	
	background-color: transparent;
}
.Ct.contents1.Item .main .child_list .child_title>b
{
	font-size: inherit;
}


/* [渥美半島花火大会]　index	メインコンテンツ　個別　大会案内 */
.Ct.contents1.ClassGuide .Img img
{
	object-position: left;
}


/* ------------------------------------------------------------------------------------------------------------
	[渥美半島花火大会]　index	メインコンテンツ2

.AtsumiHanabi.Index .Ct2
{
	display: grid;
	grid-template-columns: repeat(3, 1fr);
}
*/


/* ------------------------------------------------------------------------------------------------------------
	[渥美半島花火大会]　お知らせ
*/
.AtsumiHanabi .News
{
}


/* ------------------------------------------------------
	[渥美半島花火大会]　お知らせ一覧
	news_list.php
*/
.AtsumiHanabi.News .List
{
}

.sort_navi .active
{
	border-color: rgb(var(--w) / 0.5);
}

.sort_navi>*
{
	background-color: rgb(var(--w) / 0.1);
}


/* ------------------------------------------------------
	[渥美半島花火大会]　お知らせ　詳細
	news_detail.php
*/
.AtsumiHanabi.NewsDetail
{
}


/* ------------------------------------------------------------------------------------------------------------
	[渥美半島花火大会]　index	Q＆A
*/
.AtsumiHanabi .qa
{
}


.AtsumiHanabi .qa .coming_soon
{
}
.AtsumiHanabi .qa .coming_soon>b
{
	font-size: 1.2;
}


.AtsumiHanabi .qa .body
{
}

.AtsumiHanabi .qa .Change .details .detail
{
	grid-template-columns: 4.25em 1fr;
}

.AtsumiHanabi .qa .Change .details .detail .num
{
	justify-self: end;
}

.AtsumiHanabi .qa .Change .details .detail .main
{
	display: grid;
	justify-items: start;
	gap: 1em;
}


.AtsumiHanabi .qa .Change .details .detail .table
{
	display: grid;
	grid-template-columns: repeat(3, auto);
	gap: 1em 0.5em;
}
.AtsumiHanabi .qa .Change .details .detail .table :is(.th)
{
	display: flex;
	gap: 0 0.25em;
}
.AtsumiHanabi .qa .Change .details .detail .table :is(.td)
{
	display: block;
}
.AtsumiHanabi .qa .Change .details .detail .table :is(.th, .td) .kome_mark
{
	padding: 0;
}


/* ------------------------------------------------------------------------------------------------------------
	[渥美半島花火大会]　index	注意事項
*/
.AtsumiHanabi .notes
{
}

.AtsumiHanabi .notes .body
{
	justify-content: center;
	justify-items: start;
	gap: var(--gap);
}
/*
	grid-template-columns: repeat(2, 1fr);
*/

.AtsumiHanabi .notes .body .Item
{
	text-align: justify;
}

.AtsumiHanabi .notes .body .Item .txt
{
	display: grid;
	grid-template-columns: 1em auto;
	gap: 0 0.25em;
}


.AtsumiHanabi .notes .body .ID_1
{
}
/*
	grid-column: span 2;
*/
/*
.AtsumiHanabi .notes .body .ID_1 .txt b
{
	background-color: rgb(var(--r) / 0.5);

}
*/


/* ------------------------------------------------------------------------------------------------------------
	[渥美半島花火大会]　index	後援
*/
.AtsumiHanabi .support
{
}

.AtsumiHanabi .support .body
{
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: var(--padding_tb);
}
/*
*/

.AtsumiHanabi .support .body .Item
{
	display: grid;
	gap: var(--gap);
}

.AtsumiHanabi .support .body .Item .title
{
}


/* ------------------------------------------------------------------------------------------------------------
	[渥美半島花火大会]　大会案内
	atsumi_hanabi/guide.php
*/
.Guide
{
}


/* ------------------------------------------------------
	[渥美半島花火大会]　大会案内 / 大会概要
*/
.Guide .overview
{
}


.Guide .overview .week::before
{
	aspect-ratio: 1;
	position: absolute;
	width: 0;
	overflow: hidden;
}
.Guide .overview .List .main .week>b::before,
.Guide .overview .List .main .week>b::after
{
	display: inline;
}
.Guide .overview .List .main .week>b::before
{
	content: "(";
}
.Guide .overview .List .main .week>b::after
{
	content: ")";
}

.Guide .overview .List .main .event_weather
{
	gap: 1em;
}


.Guide .overview .List
{
	grid-template-columns: repeat(2, 1fr);
	align-items: start;
	gap: var(--padding_tb) var(--gap);
}

.Guide .overview .List .body
{
	gap: var(--gap);
}


.Guide .overview .List .body1
{
	grid-column: span 2;
}
.Guide .overview .List .body1 .main
{
}
.Guide .overview .List .body1 .main .m1
{
	font-size: 1.75em;
}
.Guide .overview .List .body1 .main .event_day
{
	font-size: 1.2em;
	font-weight: bold;
}
.Guide .overview .List .body1 .main .week
{
}
.Guide .overview .List .body1 .main .week>b
{
}

.Guide .overview .List .body1 .main .m3
{
	font-size: 1.2em;
	font-weight: bold;
}


.Guide .overview .List .body2 .event_venue
{
	font-size: 1.5em;
}


.Guide .overview .List .body3
{
	grid-column: span 2;
}
.Guide .overview .List .body3 :is(.event_host, .event_suport)>*[class*="head"]
{
	display: none;
}
.Guide .overview .List .body3 :is(.event_host, .event_suport) b
{
	font-weight: inherit;
}

.Guide .overview .List .body3 .main
{
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	grid-template-columns: 40% 1fr;
	align-content: start;
	align-items: start;
	gap: var(--gap);
}

.Guide .overview .List .body3 .main .flier
{
}

/* [250729]修正　「PDFデータは、「概要」の部分の一番下のあたりにダウンロードボタンを付けてください。」 */
.Guide .overview .List .body3 .main .detail
{
	display: grid;
	gap: var(--gap);
}

.Guide .overview .List .body3 .main table
{
}
.Guide .overview .List .body3 .main :is(th, td)
{
	padding-top: 1em;
	padding-bottom: 1em;
}

.Guide .overview .List .body3 .main th
{
	min-width: initial;
	max-width: initial;
	width: auto;
	white-space: nowrap;

	font-weight: inherit;
}
.Guide .overview .List .body3 .main td
{
}
.Guide .overview .List .body3 .main td>.Wrap
{
	display: inline-flex;
	flex-wrap: wrap;
	gap: 0 1em;
}
.Guide .overview .List .body3 :is(.event_day, .event_time, .event_weather)
{
}


.Guide .overview .List .body4
{
}
.Guide .overview .List .body4 .main
{
}
.Guide .overview .List .body4 .main b
{
	font-size: 1.5em;
	font-weight: inherit;
}


/* ------------------------------------------------------
	[渥美半島花火大会]　大会案内 / プログラム
*/
.Guide .program
{
	--number_w						: 6.5em;/* 丸の幅。丸の高さ・列幅・点線の基準にもなる */
	--circle_h						: calc(var(--number_w) * 0.914);/* [260916]丸の高さ＝幅の91.4%（本番Chromeの実測比率）。aspect-ratioがSafariで不安定なため固定比率で幅・高さを直接指定している */
	--time_w						: calc((var(--em) * 1.5) * 3);
}

.Guide .program .body
{
	display: inline-grid;
	grid-template-columns: repeat(1, 1fr);
	gap: calc(var(--padding_tb) + 0.6em) var(--gap);/* [260916]丸の下の点線(2つ)が次の丸と重ならないよう、通常の行間より0.6em広げている */
}


.Guide .program .body .Item
{
	display: grid;
	gap: calc(var(--gap) / 2);

	text-align: justify;
}
/*
	grid-template-columns: repeat(2, auto);
	justify-content: start;
	align-items: start;

*/
.Guide .program .body .Item .number::after
{
	/* [260916]丸の下に伸びる点線。丸(.number)自身の下端を基準に配置（Item全体を基準にすると丸のサイズ変更の影響を受けてしまうため） */
	content: "";
	display: block;

	position: absolute;
	top: 100%;
	left: 50%;
	translate: -50% 0;
	margin-top: 0.46em;

	width: 1em;
	height: 2em;/* 点線のドット2つ分の高さ。.body の行間側で確保した余白(+0.6em)内に収まるサイズ */

	--dott_color1	: var(--w) / 0.2;
	--dott_color2	: 0 0 255 / 0.0;
	--dott_size		: 25%;
	--dott_step		: 0.5em;

	background-image:
		radial-gradient(
			rgb(var(--dott_color1)) var(--dott_size),
			transparent calc(var(--dott_size) * 2)
		),
		radial-gradient(
			rgb(var(--dott_color2)) var(--dott_size),
			transparent calc(var(--dott_size) * 2)
		)
	;
	background-size: calc(var(--dott_step) * 2) calc(var(--dott_step) * 2);
	background-position: 0 0, var(--dott_step) var(--dott_step);
}
/*
	background-color: rgb(var(--bg_color));

*/

.Guide .program .body .Item .title
{
	display: grid;
	grid-template-areas:
		"number time b"
	;
	grid-template-columns: var(--number_w) var(--time_w) auto;
	justify-content: start;
	justify-items: start;
	align-items: center;
	gap: var(--gap);

	text-align: inherit;

	background-color: transparent;
	padding: 0;

}
.Guide .program .body .Item .title>.number
{
	grid-area: number;
}
.Guide .program .body .Item .title>.time
{
	grid-area: time;
	justify-self: center;
}
.Guide .program .body .Item .title>b
{
	grid-area: b;
	font-size: 1.2em;
}


.Guide .program .body .Item .number
{
	position: absolute;

	display: grid;
	justify-items: center;
	align-items: center;
	gap: 0.3em 0.5em;

	width: var(--number_w);
	height: var(--circle_h);
	box-sizing: border-box;

	line-height: 1;

	background-color: rgb(var(--bg_color));

	border-radius: 100em;
}

.Guide .program .body .Item .number>*
{
}
.Guide .program .body .Item .number>span
{
	text-decoration-line: underline;
	text-underline-offset: 0.5em;
	text-decoration-color: rgb(var(--border_color));
	text-decoration-thickness: 1px;
}
.Guide .program .body .Item .number>b
{
	font-size: 1.5em;
	font-weight: inherit;
}


.Guide .program .body .Item .time
{
	text-align: center;
}
.Guide .program .body .Item .time>*
{
	font-size: 1.5em;
	font-weight: inherit;
}


.Guide .program .body .Item .lead
{
	font-size: inherit;
}


.Guide .program .body .Item a
{
	text-decoration-line: none;
}

.Guide .program .body .Item .main
{
	margin-left: calc(var(--number_w) + var(--gap) + var(--time_w) + var(--gap));
	padding-top: calc(var(--gap) / 2);
	
	border-top-width: 1px;
	border-top-color: rgb(var(--border_color));
	border-top-style: dashed;
}
.Guide .program .body .Item .main>.Wrap
{
	font-size: 0.9em;
	display: grid;
	gap: 0.5em;

}
/*
	padding: calc(var(--gap) / 2);

	background-color: rgb(var(--color1) / 0.2);
*/


.Guide .program .body .Item .main .owner
{
	margin-left: 1em;
}


.Guide .program .body .Item.end
{
	padding: 0.5em 0.25em;
	
	background-color: rgb(var(--color1));
	text-align: center;
}
.Guide .program .body .Item.end::before
{
	--dott_color1	: var(--w) / 0.0;
}
.Guide .program .body .Item.end .title
{
	display: block;
}


/* ------------------------------------------------------
	[渥美半島花火大会]　大会案内 / 司会者の紹介
*/
.Guide .emcee
{
}

.Guide .emcee .body
{
	display: grid;
	grid-template-columns: 30% 1fr;
	align-items: start;
	gap: var(--gap);
}


.Guide .emcee .photo
{
	display: grid;
	gap: var(--gap);
}
.Guide .emcee .photo .Img
{
}
.Guide .emcee .photo img
{
	border-radius: 100%;
	width: 100%;
}

.Guide .emcee .main
{
	display: grid;
	gap: calc(var(--gap) / 2);
	
	text-align: justify;
}

.Guide .emcee .main .title
{
	text-align: inherit;
}
.Guide .emcee .main .title>b
{
	font-size: 1.2em;
}


.Guide .emcee .data
{
	font-size: 0.8em;

	display: grid;
	justify-content: start;
	gap: 1em;

	padding: var(--gap);

	background-color: rgb(var(--color2) / 0.2);
}
/*
	grid-template-columns: repeat(2, auto);
*/
.Guide .emcee .data>.Wrap
{
	margin-left: 1em;
}
.Guide .emcee .data>.Wrap>*:not(:first-child)
{
	margin-top: 1em;
}

.Guide .emcee .data .profile_headline
{
	font-size: 1.2em;

	margin-left: 0;
	border-bottom-width: 1px;

	letter-spacing: 0.2em;
}
/*

	position: absolute;
	left: 0;
	top: 0;
*/

.Guide .emcee .data .profile_head
{
	display: grid;
	grid-template-columns: repeat(2, auto);
	justify-content: space-between;
}
/*
	grid-column: span 2;

*/
.Guide .emcee .data .profile_head>.name
{
	display: flex;
	align-items: baseline;
	gap: 0.5em;
}
.Guide .emcee .data .profile_head>.name>b
{
}
.Guide .emcee .data .profile_head>.name>span
{
	font-size: 0.8em;
	opacity: 0.8;
}


.Guide .emcee .data .profile_detail
{
	display: grid;
	grid-template-columns: repeat(2, auto);
	justify-content: start;
	gap: 1em;
}

.Guide .emcee .data .profile_detail ul
{
	gap: 0;
}
.Guide .emcee .data .profile_detail li::marker
{
	color: rgb(var(--w) / 0.5);
}


.Guide .emcee .data .tr
{
}

.Guide .emcee .data .th
{
}

.Guide .emcee .data .td
{
	display: flex;
	flex-wrap: wrap;
	gap: 0 0.5em;
}


/* ------------------------------------------------------------------------------------------------------------
	[渥美半島花火大会]　会場マップ
	atsumi_hanabi/venue_map.php
*/
.VenueMap .top_map
{
}
/*
	width: 50%;
	position: absolute;
	left: 0;
	top: 0;
*/

.VenueMap .top_map>.Wrap
{
	display: grid;
	gap: var(--padding_tb);

	padding-bottom: var(--padding_tb);
}


.VenueMap .top_map .Img img
{
	width: 100%;
}


.VenueMap .top_map .admission_time
{
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	align-items: start;
	gap: var(--gap);
}


.VenueMap .top_map .admission_time>.Wrap
{
	height: 100%;

	display: grid;
	align-content: start;
	gap: 1em;

	padding: var(--gap);
	background-color: rgb(var(--color1) / 0.5);
	border-width: 0.25em;
}

.VenueMap .top_map .admission_time h2
{
}
.VenueMap .top_map .admission_time h2>b
{
	font-size: 1.5em;
	font-weight: bold;
}
.VenueMap .top_map .admission_time h2>b::after
{
	content: "";
	display: block;

	width: 3em;

	margin-left: auto;
	margin-right: auto;
	border-top-width: 0.25em;

	opacity: 0.65;
}

.VenueMap .top_map .admission_time .txt
{
	display: grid;
	justify-content: center;
	gap: 0 1em;
}
.VenueMap .top_map .admission_time .txt>b
{
	font-size: 1.2em;
}


/* ------------------------------------------------------
	[渥美半島花火大会]　会場マップ / グルメ
*/
.VenueMap .gourmet
{
	padding-bottom: 0 !important;
}

/* [250917-1510]新規　屋台村map(jpg、pdf)追加に伴う変更 */
.VenueMap .gourmet .bg
{
	position: absolute;
	left: 0;
	right: 0;
	top: 0;
	bottom: 0;

	width: 100%;
	height: 100%;
}

.VenueMap .gourmet .bg>.Wrap
{
	height: 100%;
}
.VenueMap .gourmet .bg img
{
	aspect-ratio: none;

	height: 100%;
}

/* [260925-1315]追加　背景写真(0513_02.jpg)の上に暗いレイヤーを重ねて、屋台村mapを見やすく */
.VenueMap .gourmet .bg>.Wrap
{
	position: relative;
}
.VenueMap .gourmet .bg>.Wrap::after
{
	content: "";
	position: absolute;
	left: 0;
	right: 0;
	top: 0;
	bottom: 0;

	background: rgba(0, 0, 0, 0.4);
	pointer-events: none;
}
/*
.VenueMap .gourmet .bg
{
}

.VenueMap .gourmet .bg img
{
	aspect-ratio: 16 / 9;
	width: 100%;

	object-position: bottom;
}
*/


.VenueMap .gourmet .body
{
}

.VenueMap .gourmet .body .main
{
	display: grid;
	grid-template-columns: calc(var(--em) * 25) auto;
	justify-content: center;
	justify-items: center;
	align-items: start;
	gap: 0 calc(var(--padding_tb) * 1);

	padding-top: var(--gap);
	/* [260925-1330]変更　背景写真に対する上下の余白を揃える　var(--padding_tb)→var(--gap) */
	padding-bottom: var(--gap);
}

/*
[250917-1510]新規　屋台村map(jpg、pdf)追加に伴う変更
.VenueMap .gourmet .body
{
	position: absolute;
	left: 50%;
	top: var(--gap);
	translate: -50% -0%;

	justify-content: end;
	justify-items: center;

	gap: var(--gap);

}
.VenueMap .gourmet .body .map2
{
	width: 20em;
}

.VenueMap .gourmet .body .main
{
	display: grid;
	gap: 1em;
}
*/

.VenueMap .gourmet .body .main .detail
{
	/* [260925-1330]追加　丸(::before)の上端を屋台村mapの上端に揃える　※丸は中身より var(--padding_tb) 大きいので、その半分下げる */
	margin-top: calc(var(--padding_tb) / 2);
}

.VenueMap .gourmet .body .main .detail>.Wrap
{
	display: grid;
	gap: 1em;
}

.VenueMap .gourmet .body .main .detail>.Wrap::before
{
	aspect-ratio: 1;

	content: "";
	display: block;

	position: absolute;
	left: 50%;
	top: 50%;
	translate: -50% -50%;

	width: calc(100% + var(--padding_tb));

	background-color: rgb(var(--color1) / 0.8);

	border-width: 1px;
	border-radius: 100em;
}

.VenueMap .gourmet .body .main .detail .lead
{
	display: grid;
	justify-items: center;
	gap: 0.75em;
}
.VenueMap .gourmet .body .main .detail .lead>b
{
}
/*
	position: absolute;
	left: 50%;
	bottom: calc(100% + 0.5em);
	translate: -50% -0%;

	border-top-width: 3px;
	border-bottom-width: 3px;
	border-color: rgb(var(--pk) / 0.75);
	border-style: dotted;

	line-height: 2.25em;

	color: rgb(var(--y) / 0.8);
*/
.VenueMap .gourmet .body .main .detail .lead>b::before,
.VenueMap .gourmet .body .main .detail .lead>b::after
{
	content: "";
	display: block;

	position: absolute;
	left: 50%;
	translate: -50% -0%;

	width: 100%;
	height: 0.5em;

	--dott_color1	: var(--r) / 1.0;
	--dott_color2	: var(--or) / 0.0;
	--dott_size		: 25%;
	--dott_step		: 0.25em;
	
	background-image:
		radial-gradient(
			rgb(var(--dott_color1)) var(--dott_size),
			transparent calc(var(--dott_size) * 2)
		),
		radial-gradient(
			rgb(var(--dott_color2)) var(--dott_size),
			transparent calc(var(--dott_size) * 2)
		)
	;
	background-size: calc(var(--dott_step) * 2) calc(var(--dott_step) * 2);
	background-position: 0 0, var(--dott_step) var(--dott_step);
}
.VenueMap .gourmet .body .main .detail .lead>b::before
{
	bottom: 100%;
}
.VenueMap .gourmet .body .main .detail .lead>b::after
{
	top: 100%;
}
.VenueMap .gourmet .body .main .detail .lead>b>span:nth-of-type(odd)
{
	color: rgb(var(--or));
}
.VenueMap .gourmet .body .main .detail .lead>b>span:nth-of-type(even)
{
	color: rgb(var(--y));
}


.VenueMap .gourmet .body .main .detail h3
{
	padding: 0em 0.5em;

	background-color: rgb(var(--w) / 0.9);
	color: rgb(var(--color1));
}
.VenueMap .gourmet .body .main .detail h3>b
{
}


/*
	[250917-1510]新規　屋台村map(jpg、pdf)追加
	[渥美半島花火大会]　会場マップ / グルメ　屋台村map
*/
.VenueMap .gourmet .gourmet_img
{
}

.VenueMap .gourmet .gourmet_img>.Wrap
{
	display: grid;
	gap: var(--gap);
}

.VenueMap .gourmet .gourmet_img .lead
{
	font-size: inherit;
}

.VenueMap .gourmet .gourmet_img .img_preview a
{
	display: block;
	width: 100%;
	margin-left: auto;
	margin-right: auto;
}
.VenueMap .gourmet .gourmet_img .img_preview a>*
{
	display: block;
}

.VenueMap .gourmet .gourmet_img .img_preview img
{
	max-height: 70vh;
	object-fit: contain;
}


.VenueMap .gourmet .gourmet_img .footer
{
	position: absolute;
	left: calc(100% + var(--gap));
	bottom: 10%;
}
.VenueMap .gourmet .gourmet_img .footer .ColorBtn
{
	background-color: rgb(var(--bk) / 0.6);
}


/* ------------------------------------------------------------------------------------------------------------
	[渥美半島花火大会]　会場マップ
	atsumi_hanabi/venue_map.php
*/
.VenueMap
{
}



/* ------------------------------------------------------------------------------------------------------------
	[渥美半島花火大会]　交通案内
	atsumi_hanabi/traffic.php
*/
.Traffic
{
}


.Traffic .access
{
	--point_w					: 6.5em;
}


.Traffic .access .body
{
}

.Traffic .access .body .main
{
	display: grid;
	grid-template-columns: repeat(1, 1fr);
	gap: var(--padding_tb);
}

.Traffic .access .Item
{
	display: grid;
	gap: var(--gap);

	width: 75%;
	width: 100%;
	margin-left: auto;
	margin-right: auto;
}

.Traffic .access .body .data
{
	display: grid;
	grid-template-columns: repeat(3, var(--point_w) 1fr) var(--point_w);
	align-items: center;
	gap: var(--gap) 0;
}

.Traffic .access .body .data .r_Item
{
	display: grid;
	align-items: center;

	height: 100%;
}

.Traffic .access .body .data .point
{
	display: grid;
	align-items: center;

	width: 100%;
	height: 100%;

	padding: 1em 0.25em;

	border-width: 1px;

	line-height: 1.5;
}
/*
	aspect-ratio: 1;

*/

.Traffic .access .body .data .guide
{
	display: grid;
	align-items: center;

	border-bottom-width: 1px;
}
/*
	height: 100%;
	
*/
.Traffic .access .body .data .guide>.Wrap
{
	font-size: 0.9em;
	
	position: absolute;
	left: 50%;
	top: 50%;
	translate: -50% -50%;

	width: 100%;
	height: 5em;

	padding-left: 0.25em;
	padding-right: 0.25em;

	line-height: 2.5em;
}
.Traffic .access .body .data .guide>.Wrap>*
{
	white-space: nowrap;
}


.Traffic .access .body .data
{
	grid-template-areas:
		"p1 p2 p5 p6 p7 p8 goal"
		"p3 p4 p5 p6 p7 p8 goal"
	;
}
.Traffic .access .body .data>.point_1
{
	grid-area: p1;
}
.Traffic .access .body .data>.point_2
{
	grid-area: p2;
}
.Traffic .access .body .data>.point_3
{
	grid-area: p3;
}
.Traffic .access .body .data>.point_4
{
	grid-area: p4;
}
.Traffic .access .body .data>.point_5
{
	grid-area: p5;
}
.Traffic .access .body .data>.point_6
{
	grid-area: p6;
}
.Traffic .access .body .data>.point_7
{
	grid-area: p7;
}
.Traffic .access .body .data>.point_8
{
	grid-area: p8;
}
.Traffic .access .body .data>.point_9
{
	grid-area: p9;
}
.Traffic .access .body .data>.point_10
{
	grid-area: p10;
}
.Traffic .access .body .data>.goal
{
	grid-area: goal;
}


.Traffic .access .body .data .goal
{
	background-color: rgb(var(--color2) / 0.25);
}


.Traffic .access .ID_car
{
}
/*
	justify-self: end;
*/

.Traffic .access .ID_car .data
{
	grid-template-areas:
		"p1 p2 p5 p6 p7 p8 goal"
		"p3 p4 p5 p6 p7 p8 goal"
	;
	grid-template-columns: repeat(3, var(--point_w) 1fr) var(--point_w);
}
/*
		"p9 p10 p10 p10 p10 p10 goal"

[250716-1437]　2025年度用チラシ着
	grid-template-areas:
		"p1 p2 p3 p4 goal"
		"p5 p6 p7 p8 goal"
		"p9 p10 p10 p10 goal"
	;
*/


/* ------------------------------------------------------
	[渥美半島花火大会]　交通案内　-周辺駐車場と交通規制のお知らせ
	atsumi_hanabi/traffic.php
*/
.Traffic .regulation
{
}


.Traffic .regulation h2
{
}


.Traffic .regulation .Gallery
{
	margin-top: 0;
}
.Traffic .regulation .Gallery>ul
{
	gap: var(--gap);
}

.Traffic .regulation .List
{
	display: grid;
	gap: 0;

}
/*
[250825-1611]　idず潜るので、隙間はpaddingで指定
	display: grid;
	gap: var(--padding_tb);
*/
.Traffic .regulation .List div[class*="Item"]
{
	display: grid;
	gap: var(--gap);

	padding-top: var(--padding_tb);
}
