@charset "shift_jis";
:root{
	--color: #333333;
	--main_color: #745040;
	--sub_color1: #a24738;
	--sub_color2: #f5eeee;
	--sub_color3: #e2d6d4;
	--col2-gap: 60px;
	--col3-gap: 20px;
	--col5-gap: 10px;
	--content-width: 1140px;
}

.bg-main_color{
	background-color: var(--main_color);
}
.c-sub_color1{
	color: var(--sub_color1);
}

.contents_header{
	height: 750px;
  	padding-top: 0;
	background-image: url(/wed/campaign/fair-winter2026-nagoya/images/bg-main_visual.jpg);
	background-position: center top;
	background-size: auto;
}
.main_title-container{
	position: absolute;
	top: 65px;
	width: 740px;
	padding: 0 0 30px;
	background-color: #ffffff;
	color: var(--main_color);
	font-weight: bold;
	outline: 1px solid #e2d6d4;
	outline-offset: -10px;

	.label{
		position: absolute;
		top: -35px;
		right: -66px;
		display: flex;
		width: 150px;
		height: 150px;
		padding: 0;
		background-color: #a66b5e;
		color: #ffffff;
		border-radius: 50%;
		font-size: 2.5rem;
		line-height: 1;
		flex-direction: column;
	}
	.first_line{
		position: relative;
		z-index: 1;
		margin-top: -16px;
		height: 50px;
		padding-top: 3px;
		font-size: 2.4rem;
		color: #ffffff;
		font-weight: normal;
		background: url(/wed/campaign/fair-winter2026-nagoya/images/ribbon.png) no-repeat center center;
		background-size: contain;
	}
	.second_line{
		position: relative;
		display: inline-block;
		padding: 0 25px;
		font-size: 2.6rem;
		color: #745040;
		text-align: center;
		.border{
			border-bottom: 1px solid #e2d6d4;
		}
	}
	.label-first_line{
		font-size: 1.88em;
	}
	.ff-mincho{
		font-family: var(--ff-yu_mincho);
	}
	.label-second_line{
		font-size: 0.8em;
	}
	.label-third_line{
		margin-top: 7px;
	}
/*
.second_line:before, .second_line:after {
  position: absolute;
  content: '';
  width: 0px;
  height: 0px;
  z-index: 1;
}
  */
.second_line:before {
  top: 0;
  left: 0;
  border-width: 19px 0px 19px 10px;
  border-color: transparent transparent transparent #fff;
  border-style: solid;
}
.second_line:after {
  top: 0;
  right: 0;
  border-width: 19px 10px 19px 0px;
  border-color: transparent #fff transparent transparent;
  border-style: solid;
	}
	h2{
		font-size: 4.8rem;
		font-family: 'Noto Serif JP', serif;
		font-weight: 600;
		line-height: 1.25;
		letter-spacing: -0.06em;
		.fs-sm{
			font-size: 58.333%;
			position: relative;
			left: -7px;
		}
	}
	.third_line{
		display: flex;
		align-items: center;
		justify-content: center;
		gap: 20px;
		margin-top: 5px;
	}
	.third_line li{
		background-color: var(--sub_color3);
		border-radius: 25px;
		font-size: 2.4rem;
		padding: 0px 18px;
	}
	.fourth_line{
		margin-top: 15px;
		font-size: 2.4rem;
		letter-spacing: 0.1em;
	}
	.fourth_line .fs-lg{
		font-size: 125%;
	}
}
/* .device--pc{
	.contents_header{
		justify-content: flex-start;
	}
	.main_title-container{
		left: calc((100vw - var(--content-width)) / 2);
	}
} */
@media (max-width: 1140px){
	.device--pc{
		.main_title-container{
			left: 10px;
		}	
	}
}


.introduction {
	padding-top: 160px;
	padding-bottom: 105px;
	h3{
		color: var(--main_color);
	}
	.frame-box-heading{
		top: -87px;
	}
	.flex_box-container .icon > .ml {
		margin-left: 20px;
	}
	h4{
		font-size: 125%;
		margin-bottom: 15px;
		letter-spacing: -0.05em;
		white-space: nowrap;
	}
	.list-block li{
		position: relative;
		padding: 20px 25px;
		background-color: var(--sub_color2);
	}
	.list-block li:after{
		content: "";
		position: absolute;
		top: -35px;
		left: 0;
		right: 0;
		margin: auto;
		width: 200px;
		height: 200px;
		border-radius: 50%;
		background-color: var(--sub_color2);
		z-index: -1;
	}
	.list-block .icon::before{
		width: 100%;
		height: 50px;
		margin-top: -30px;
		margin-bottom: 15px;
	}
	.fs30{
		font-size: 3.0rem;
	}
	.sub_title{
		font-size: 24px;
	}
}



.section{
	h3{
		color: var(--main_color);
	}
	h3 .en{
		font-size: 4.8rem;
		font-family: "Abril Fatface", serif;
		line-height: 1;
		text-transform: uppercase;
		font-weight: normal;
	}
	h3 .jp{
		font-size: 1.8rem;
	}
}

.cassette .detail-heading{
	text-align: left;
	color: var(--color);
	font-size: 150%;
}

.section.border{
	border-top: 4px solid var(--sub_color3);
}
.section.border::before,
.section.border::before{
	content: "";
	display: block;
	width: 100%;
	height: 1px;
	margin-top: -116px;
	margin-bottom: 116px;
	background-color: var(--sub_color3);
}
.content .content-heading{
	margin-bottom: 40px;
	text-align: center;
}
.content .content-heading span{
	display: inline-block;
	width: 60px;
	font-size: 5.6rem;
	font-family: "Abril Fatface", serif;
	font-weight: normal;
	border-bottom: 1px solid var(--main_color);
	color: var(--main_color);
	line-height: 1;
}

.chapel_list {
	.list-block dt{
		background-color: var(--sub_color3);
		color: var(--main_color);
	}	
}

.content_3{
	.list-block .text-container {
		padding: 30px;
		background-color: var(--sub_color2);
	}
	.list-block h5{
		display: flex;
		flex-direction: column;
		align-items: center;
		padding-bottom: 13px;
		margin-bottom: 13px;
		border-bottom: 1px solid #e2d6d4;
	}
	h4{
		position: relative;
	}
	h4 .label{
		position: absolute;
		top: 4px;
		margin-left: 153px;
		font-size: 1.8rem;
	}
}
.bg-beige{
	background-color: var(--sub_color2);
}


.button.-primary{
	width: 470px;
	font-size: 112.5%;
}

.special-list-block li{
	padding: 10px;
	border: 1px solid var(--main_color);
	text-align: left;
}
.special-list-block li::before, .special-list-block li::after{
	content: "";
	display: block;
	width: 100%;
	height: 15px;
	background: url(/wed/campaign/fair-common/images/bg-frame_line-top-800.png) no-repeat top center / 100%;
}
.special-list-block li::after{
	transform: scale(1, -1);
}
.special-list-block li > div{
	height: calc(100% - 30px);
	padding: 25px 65px;
	background: url(/wed/campaign/fair-common/images/bg-frame_line-800.png) repeat-y top center / contain;
}


.special-list-block p{
	color: var(--sub_color1);
	font-weight: bold;
	font-size: 125%;
}
.special-list-block h4{
	padding-bottom: 18px;
	margin-bottom: 20px;
	border-bottom: 1px solid #e2d6d4;
	color: var(--main_color);
	font-size: 187.5%;
}

.special {
	.frame-box{
		margin-top: 145px;
	}
	.frame-box-heading{
		top: -81px;
	}
}
.special_event{
	dl{
		flex: auto;
		padding: 20px;
		background-color: var(--sub_color2);
		font-size: 111.111%;

		width: 105%;
		margin-left: -2.5%;
		dt{
			display: flex;
			align-items: baseline;
			justify-content: center;
			margin-bottom: 20px;
			padding: 10px 0 20px;
			border-bottom: 1px solid #e2d6d4;
			font-size: 166.666%;
			font-weight: bold;
			line-height: 1;
		}
		dd .fs-lg{
			font-size: 166.666%;
		}
		.icon.-crown::before {
						margin-right: 7px;
		}
	}
}

.special-grid{
	grid-template-columns: 2fr 1fr;
	column-gap: 30px;
}
.lazy_image-wrap {
	position: relative;
	width: 100%;
	height: 0;
	  .caption{
		  position: absolute;
		  right: 0;
		  bottom: -25px;
		  font-size: 1.2rem;
	  }
}
.lazy_image{
	position: absolute;
	  left: 0;
	  right: 0;
	  margin: auto;
	width: 100%;
	height: auto;
}
.special-lazy_image-wrap{
	padding-bottom: calc( 242 / 400 * 100%);
}

.event_overview{
	dl > div{
		padding: 35px 0;
		border-bottom: 1px solid #e2d6d4;
	}
	dt{
		width: 100px;
	}
	dd{
		position: relative;
		flex: 1;
		text-align: left;
	}
}
.device--pc .event_overview	dl .button.-primary{
	position: absolute;
	right: 0;
	bottom: -7px;
	width: 220px;
	height: 36px;
}
.device--pc .event_overview	dl .button.-primary span{
	left: -20px;
}

.contact{
	dl > div{
		margin-top: 15px;
		align-items: center;
	}
	dt{
		width: 100px;
		margin-right: 22px;
		font-size: 112.5%;
		div{
			border-radius: 15px;
			background-color: #ffffff;
			color: var(--main_color);
		}
	}
	dd{
		font-size: 125%;
	}
}

.floating-link.fair-link{
	display: none;
}