@charset "utf-8";
@import url('https://fonts.googleapis.com/css2?family=Lobster&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Caveat:wght@400..700&display=swap');

:root {--Red:#ae000d;--DarkRed:#6b0008;--paleGold:#ffde7c;--Gold: #c5b24a;--DarkYellow: #a59434;--Green:#347a24;--GradeVertical: linear-gradient(to bottom, #dfba4d 0%, rgba(183, 147, 74, 1) 100%); /*縦*/--GradeHorizontal:linear-gradient(to right, rgba(183,147,74,1) 0%,rgba(223,186,77,1) 50%,rgba(183,147,74,1) 100%);/*横*/--BgGrid:conic-gradient(#000000 90deg, transparent 90deg 180deg, #000000 180deg 270deg, transparent 270deg);--BgGridColor: transparent;--BgGridSize_S:25px 25px;--BgGridSize_M:40px 40px;--contentsPadding: 30px 0 50px 0;--MainWidth:1000px;}


article .FontEn{font-family: "Lobster", sans-serif;}
article strong{
	font-weight: 900;
}
article .small{ font-size: 12px}
article .btn{}
article .btn a{position: relative;display: inline-block;background-color: #e1ac3a;color: #fff;font-weight: 900;text-decoration: none;font-style: italic;font-size: 18px;padding: 13px 60px;border-radius: 100px;box-shadow: 0 4px 0px #986f1a;}
article .btn a:hover{
	background-color: #986f1a;
}
article .btn a:after{position: absolute;right: 12px;top:50%;margin-top:-0.5em;content:"\f105";font-family:FontAwesome;line-height: 1;font-style: normal;}
article .btn a[href^="#"]:after{
	content: "\f107";
}
article .btn.Big{
	width: 100%;
	text-align: center;
}
article .btn.Big a{
	padding: 16px 150px;
	font-size: 20px;
}
article .btn li.mail a{
	background-color: #10c6aa;
	box-shadow: 0 4px 0px #0d9c86;
}
article .btn li.mail a:hover{background-color: #0d9c86;}

article .btn li.item a{
	background-color: #40abe1;
	box-shadow: 0 4px 0px #2880ac;
}
article .btn li.item a:hover{background-color: #2880ac;}

article img{
	width: 100%;
	height: auto;
}
article .Photo{
	position: relative;
	line-height: 0;
	}

article .Photo img{
	border-radius: 5px;
}

article .Photo .caption{
	position: absolute;
	bottom: 5px;
	background-color: #000;
	line-height: 1;
	color: #fff;
	font-size: 12px;
	padding: 2px 4px;
	left: 5px;
}
article .WideWidth{
	width: 75%;
	margin: 0 auto;
	max-width: 1200px;
	min-width: 1000px;
}

article .commonTtl {
  position: relative;
  padding: 5px 12px 8px 12px;
  background: var(--Gold);
  color: #fff;
  display: inline-block;
  margin-left: 20px;
  font-size: 18px;
  font-weight: bold;
  white-space: nowrap;
  line-height: 1;
}
article .commonTtl br{display:none}
article .commonTtl strong{
	font-weight: bold;
	font-size: 26px;
}
article .commonTtl span{
	display: inline-block;
	position: relative;
	z-index: 2;
	font-style: italic;
}
article .commonTtl:before,
article .commonTtl:after{
  transform: skewX(-15deg);
  position: absolute;
  content: '';
  left: -10px;
  top: 0;
  height: 100%;
  width: 27px;
  background-color: var(--Gold);
  z-index: 1;
}
article .commonTtl:after{
	right: -10px;
	left: auto;
}

article .SMP{ display: none}
article .Accordion{}
article .Accordion .trigger{
	display: none;
}

/*-------------------------------------------SearchIconBtn*/
#SearchIconBtn{
    position: fixed;
    top: 50%;
    right: 0;
    z-index: 999;
    transform: translate(0,-50%);
    display: none;
    margin-top: -50px;
}
#SearchIconBtn p{
	/* writing-mode: vertical-rl; */
}
#SearchIconBtn.link{
    /* top: 55%; */
}

#SearchIconBtn a{
  background-color: var(--Green);
  text-decoration: none;
  color: #fff;
  font-size: 15px;
  box-shadow: 0px 0px 5px rgb(0 0 0 / 30%);
  text-align: center;
  /* display: flex; */
  align-items: center;
  justify-content: center;
  padding: 12px 10px 11px 10px;
  box-sizing: border-box;
  border: 3px solid #FFF;
  margin-bottom: 10px;
  letter-spacing: 1px;
  border-radius: 5px 0 0 5px;
  border-right: none;
  width: 100px;
  display: block;
  font-weight: bold;
}
#SearchIconBtn.link a{
    font-size: 16px;
}
#SearchIconBtn a span{padding-top: 2px;}
#SearchIconBtn a:after{/* content:"\f107"; */font-family:FontAwesome;font-size: 20px;display: block;font-weight: normal;}
#SearchIconBtn a:before{content:"\f002";font-family:FontAwesome;font-size: 23px;display: block;font-weight: normal;padding-bottom: 5px;line-height: 1;}

/*-----------------------------------ContactIconBtn*/
#ContactIconBtn{right: 0;border-radius: 4px 0 0 4px;padding: 10px;z-index: 999;top: 50%;bottom: auto;transform: translate(0,-50%);margin-top: 130px;}
#ContactIconBtn .delete {right: auto;left: -10px;}
#ContactIconBtn .delete:hover{

}
#ContactIconBtn .delete::after,
#ContactIconBtn .delete::before {

}
#ContactIconBtn .delete::after {
}
#ContactIconBtn p{}
#ContactIconBtn ul{
}
#ContactIconBtn li{}
#ContactIconBtn li + li{
}
#ContactIconBtn a{
	font-size: 12px;
	padding: 8px 20px 9px 6px;
	background-color: #2f2f2f;
	border-radius: 2px;
}

#ContactIconBtn a:after{
	font-size: 10px;
}

#ContactIconBtn a:hover{
}


/*-----------------------------------------------Head*/
#Head{
	background-color: var(--Red);
	position: relative;
	padding-bottom: 50px;
}
#Head:after{content: "";background-image: url(../../../../fair/asset/images/2026hatsuyume/bg_illust_wa.png);width: 630px;height: 400px;position: absolute;bottom: 40px;left: 0;background-position: center bottom;background-repeat: no-repeat;}
#Head:before{content:"";background-image:var(--BgGrid);background-color:var(--BgGridColor);opacity:0.05;position: absolute;width: 100%;height: 100%;top: 0;left: 0;background-size: var(--BgGridSize_M);}
#Head #MV{
	position: relative;
	display: flex;
	flex-direction: column;
}
#Head #MV .MvIn{
	position: relative;
}


#Head #MV .Title{
	box-sizing: border-box;
	position: relative;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	align-items: center;
	z-index: 2;
	order: 2;
	margin-top: 20px;
}
#Head #MV .Title .Box{
	width: 55%;
	/* max-width: 630px; */
	display: flex;
	flex-direction: column-reverse;
}

#Head #MV .Title .Box h2,
#Head #MV .Title .Box h1{
	line-height: 1;
	text-align: center;
	/* text-shadow: 0 0 5px rgb(0 0 0 / 50%); */
}
#Head #MV .Title .Box h2,
#Head #MV .Title .Box h1 p{
	font-size: clamp(28px, 2vw,32px);
}


#Head #MV .Title .Box h1{
	/* margin-top: 10px; */
	display: flex;
	justify-content: flex-start;
	align-items: center;
	flex-wrap: wrap;
}

#Head #MV .Title .Box h2{
	display: flex;
	justify-content: flex-start;
	flex-wrap: wrap;
}
#Head #MV .Title .Box h2 p,
#Head #MV .Title .Box h1 p{
	font-style: italic;
	color: #fff;
	padding-bottom: 10px;
	background-color: #fff;
	color: #000;
	padding: 5px 7px;
	margin-bottom: 8px;
	font-weight: 900;
}
#Head #MV .Title .Box h1 p + p{
	font-size: clamp(38px, 3vw,44px);
}

#Head #MV .Title .Box h2 p strong,
#Head #MV .Title .Box h1 p strong{
	color: var(--Gold);
	font-size: 140%;
	/* font-style: italic; */
}
#Head #MV .Title .Box h1 p strong{
	color: var(--Gold);
	font-size: inherit;
}

#Head #MV .Title .Pickup{
	width: 420px;
	border-radius: 5px;
	padding-top: 0;
}

#Head #MV .Title .Pickup h3{font-size: 16px;font-weight: 900;color: #fff;text-align: center;margin-bottom: 5px;font-style: italic;}
#Head #MV .Title .Pickup h3 strong{
	font-size: 120%;
	color: #efde81;
}
#Head #MV .Title .Pickup h3 strong.pickup{
	font-size: 230%;
	line-height: 1;
	letter-spacing: 0;
}
#Head #MV .Title .Pickup .atte{
	color: #fff;
	font-size: 12px;
	text-align: center;
	margin-bottom: 15px;
}
#Head #MV .Title .Pickup ul{
	display: flex;
	justify-content: space-between;
}
#Head #MV .Title .Pickup li{
	width: 125px;
	/* background-color: rgb(55 156 207); */
	color: #fff;
	height: 125px;
	border-radius: 100%;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	font-size: 15px;
	text-align: center;
	line-height: 1.4;
	font-style: italic;
	border: 2px solid var(--paleGold);
	font-weight: bold;
	/* text-shadow: 0 0 4px rgb(0 0 0 / 60%); */
	box-shadow: 0px 0px 0px 5px rgb(0 0 0 / 20%);
}
#Head #MV .Title .Pickup li strong{
	font-size: 140%;
	line-height: 1.2;
	color: var(--paleGold);
}

#Head #MV .Title .Desk{position: relative;width: 100%;display: flex;align-items: center;justify-content: flex-end;margin-top: 15px;margin-right: 50px;}
#Head #MV .Title .Desk:before,
#Head #MV .Title .Desk:after{/* content:""; */background: repeating-linear-gradient(-45deg, #7ec5d8, #9edde0 1px, transparent 2px, transparent 4px);display: block;width: 100%;height: 5px;position: absolute;top: 0;left: 0;}
#Head #MV .Title .Desk:after{
	top: auto;
	bottom: 0;
}
#Head #MV .Title .Desk dl{text-align: right;/* color: #fff; *//* text-shadow: 0 0 4px rgb(0 0 0 / 80%); */margin-right: 17px;position: relative;z-index: 2;margin-top: 20px;}
#Head #MV .Title .Desk dt{font-size: clamp(16px, 2vw,19px);font-weight: 900;font-style: italic;display: inline-block;/* color: #fff; */line-height: 1;margin-bottom: 10px;background-color: #fff;padding: 2px 5px 4px 4px;}
#Head #MV .Title .Desk dt span{font-style: italic;}
#Head #MV .Title .Desk dt strong{
	font-size: 140%;
	color: var(--Gold);
}
#Head #MV .Title .Desk dd{
	font-size: 14px;
	font-weight: bold;
	color: #fff;
}
#Head #MV .Title .Desk .Photo{
	width: auto;
	margin: 0;
}
#Head #MV .Title .Desk .Photo p{width: 200px;}
#Head #MV .Title .Desk .Photo p + p{}
#Head #MV .Title .Desk .Photo img{border-radius: 100%;}


#Head #MV .Photo{width: 98%;margin: 0 auto;padding-top: 1%;order: 1;}
#Head #MV .Photo ul{
	display: flex;
}
#Head #MV .Photo li{flex: 1;position: relative;}
#Head #MV .Photo li:nth-of-type(1) .img{}
#Head #MV .Photo li:nth-of-type(3) .img{
}
#Head #MV .Photo li .img{width: 100%;height: 100%;background-position: center;background-repeat: no-repeat;background-size: cover;border-radius: 8px;}
#Head #MV .Photo li .caption{
	position: absolute;
	top: 10px;
	font-size: 12px;
	color: var(--Gold);
	background-color: rgb(255 255 255 / 85%);
	line-height: 1.4;
	padding: 1px 4px;
	bottom: auto;
	font-weight: bold;
	/* display: none; */
	left: 10px;
}
#Head #MV .Photo .LogoArea{
	margin: 10px 50px 30px 50px;
	flex: inherit;
	width: 25%;
	line-height: 1.5;
	min-width: 330px;
	max-width: 450px;
}
#Head #MV .Photo .LogoArea .copy{
	width: 75%;
	margin: 0 auto;
	margin-bottom: 6px;
}
#Head #MV .Photo .LogoArea .logo{
	margin-bottom: 16px;
}
#Head #MV .Photo .LogoArea .date{}
#Head #MV .Photo .LogoArea .Recept{
	line-height: 1.5;
	background-color: var(--DarkYellow);
	color: #fff;
	font-size: 16px;
	font-weight: bold;
	display: flex;
	justify-content: center;
	flex-direction: column;
	align-items: center;
	margin-top: 14px;
	padding: 6px 20px;
}
#Head #MV .Photo .LogoArea .Recept span{}
#Head #MV .Photo .LogoArea .Recept span + span{}


@media screen and (min-width:1350px){
#Head #MV .Title .Box{
	/* width: 56%; */
}
#Head #MV .Title .Pickup{
	flex: 1;
	/* margin-top: 40px; */
}
#Head #MV .Title .Pickup h3{
	font-size: clamp(16px, 1.6vw,18px);
}
#Head #MV .Title .Pickup ul{
	justify-content: center;
}
#Head #MV .Title .Pickup li{
	flex: 1;
	height: auto;
	margin: 0 10px;
	font-size: clamp(14px, 1.3vw,18px);
	aspect-ratio: 1;
}
}

#Head #MV .btn{
	order: 3;
	margin-bottom: 20px;
	margin-top: 40px;
}
#Head #MV .btn ul{
	display: flex;
	width: fit-content;
	margin: 0 auto;
	max-width: 1000px;
}
#Head #MV .btn li{
	margin: 0 6px;
}
#Head #MV .btn li + li{}
#Head #MV .btn li a{
	font-size: 17px;
	padding: 15px 40px;
	text-align: center;
}
#Head #MV .btn li a span{
	display: block;
	font-size: 15px;
}


/*----------------------------------------Item*/
#Item{background-image: url(../../../../fair/asset/images/2026hatsuyume/bg_pattern_wa.jpg);padding: 60px 0 40px 0;}
#Item h2{margin-bottom: 30px;}
#Item h2 .logo{width: 250px;margin: 0 auto;margin-bottom: 20px;}
#Item h2 .txt{
	width: fit-content;
	margin: 0 auto;
	position: relative;
	text-align: center;
	font-size: 20px;
	font-weight: 900;
	line-height: 1.4;
}
#Item h2 .txt:before,
#Item h2 .txt:after{content: "";width: 71px;height: 37px;position: absolute;background-repeat: no-repeat;background-position: center;top: 11px;background-size: contain;}
#Item h2 .txt:before{background-image: url(../../../../fair/asset/images/2026hatsuyume/deco_gold_left.png);left: -90px;}
#Item h2 .txt:after{background-image: url(../../../../fair/asset/images/2026hatsuyume/deco_gold_right.png);right: -90px;}
#Item h2 .txt span{}
#Item h2 .txt span br{}

#Item .SC{
	margin-bottom: 40px;
}
#Item .SC ul{
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	column-gap: 6px;
}
#Item .SC li{
	margin-bottom: 10px;
}
#Item .SC li a{
	color: var(--DarkYellow);
	background-color: #fff;
	font-weight: bold;
	line-height: 1;
	padding: 6px 19px 3px 19px;
	border-radius: 100px;
	display: inline-block;
	text-decoration: none;
	border: 2px solid var(--DarkYellow);
}
#Item .SC li a:after{content: "\f107";font-family:FontAwesome;display: block;text-align: center;line-height: 1;padding-top: 1px;font-weight: normal;}
#Item .SC li a:hover{
	background-color: var(--Red);
	color: #fff;
	border-color: var(--Red);
}


#Item .Sec{
	width: 1000px;
	margin: 0 auto;
	text-align: center;
}
#Item .Sec + .Sec{
	margin-top: 50px;
}
#Item .Sec + .Sec:before{content: "";background-image: url(../../../../fair/asset/images/2026hatsuyume/line_ichimatsu.png);width: 100%;height: 26px;display: block;background-position: top left;background-repeat: repeat-x;margin-bottom: 60px;}
#Item .Sec .commonTtl{
	font-size: 24px;
	font-weight: 900;
	margin-bottom: 30px;
	margin-left: -10px;
}
#Item .Sec .commonTtl span{}
#Item .Sec .ItemInner{
	text-align: left;
}
#Item .Sec .ItemInner .EntryWrap{
	width: 32%;
	display: flex;
	flex-direction: column;
	margin-bottom: 30px;
}
#Item .Sec .ItemInner .EntryWrap .Entry{
	width: 100%;
	height: 100%;
	margin-bottom: 10px;
}
#Item .Sec .ItemInner .EntryWrap .Entry .Photo img{height: 213px;object-fit: cover;}
#Item .Sec .ItemInner.Column2 .EntryWrap{
	width: 49%;
}
#Item .Sec .ItemInner.Column1 .EntryWrap{
	width: 100%;
}
#Item .ItemInner .Entry .Main .pointIcon li.normal.pickup{
	background-color: var(--Red);
	color: #fff;
	border-color: var(--Red);
}

#Item .ItemInner.Column2 .Entry .Photo img{
	object-position: center top;
}
#Item .ItemInner .Entry:before{
	border-color: var(--Gold);
}
#Item .ItemInner .Entry:hover:before{
	border-color: var(--Red);
}
#Item .ItemInner .Entry .Btm .btn a{
	font-style: normal;
	font-size: 15px;
}

#Item .ItemInner .EntryWrap .Otherlink{
}
#Item .ItemInner .EntryWrap .Otherlink a{
	text-decoration: none;
	background-color: var(--Red);
	color: #fff;
	display: block;
	position: relative;
	text-align: center;
	font-weight: 900;
	padding: 11px 20px;
	border-radius: 3px;
	font-size: 16px;
}
#Item .ItemInner .EntryWrap .Otherlink a:after{position: absolute;right: 8px; top:50%; margin-top:-0.5em;content:"\f105"; font-family:FontAwesome; line-height: 1}
#Item .ItemInner .EntryWrap .Otherlink a:hover{
	background-color: var(--Gold);
}

/*------------------------------------Info*/
#Info{background-color: #efefef;position: relative;padding: 60px 0;}
#Info:before{
  width: 0;
  height: 0;
  border-style: solid;
  border-right: 100px solid transparent;
  border-left: 100px solid transparent;
  border-top: 40px solid #ffffff;
  border-bottom: 0;
  top: -4px;
  position: absolute;
  left: 50%;
  transform: translate(-50%, 0px);
  }


#Info .head{
	display: flex;
	justify-content: center;
	margin-bottom: 140px;
	flex-wrap: wrap;
	position: relative;
}
#Info .head dt{
	padding-right: 30px;
	text-align: center;
	font-size: 16px;
	font-weight: bold;
	font-style: italic;
}
#Info .head dt strong{
	font-size: 120%;
	font-weight: bold;
	color: var(--Gold);
}
#Info .head dd{}
#Info .head a{}
#Info .head:after{content: "…";width: auto;display: block;color: var(--Gold);text-align: center;font-size: 36px;writing-mode: tb-rl;line-height: 1;position: absolute;bottom: -2.5em;}

#Info .Intro{
	background-color: #fff;
	padding: 40px 50px;
	box-sizing: border-box;
	box-shadow: 0 0 5px rgb(0 0 0 / 40%);
	border-radius: 5px;
	position: relative;
}
#Info .Intro h2{text-align: center;position: absolute;top: -22px;left: 50%;transform: translate(-50%, 0);}
#Info .Intro h2 strong{
	font-weight: bold;
	color: #ffff51;
}

#Info .Inner{
	text-align: center;
	position: relative;
}

#Info .Inner h3{
	margin-bottom: 25px;
	display: flex;
	justify-content: center;
	align-items: center;
}
#Info .Inner h3:before,
#Info .Inner h3:after{content:"";width: 50px;height: 3px;background-color: var(--Gold);margin: 0 8px;}
#Info .Inner h3 span{
	font-style: italic;
	color: var(--Gold);
	font-weight: 900;
	font-size: 20px;
}
#Info .Inner h3 span strong{
	font-size: 125%;
}
#Info .Inner .Box{
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
#Info .Inner .Entry{
	width: 31%;
	text-align: left;
}
#Info .Inner .Entry .Photo{
	margin-bottom: 8px;

}

#Info .Inner .Entry dl{}
#Info .Inner .Entry dt{
	/* color: var(--Gold); */
	font-weight: 900;
	font-size: 19px;
	line-height: 1.4;
	font-style: italic;
	padding-bottom: 6px;
}
#Info .Inner .Entry dd{font-weight: bold;font-size: 14px;}

#Info .Inner + .Inner{margin-top: 60px;/* margin-bottom: 140px; */}
#Info .Inner + .Inner .Entry{
	display: flex;
	width: 100%;
	align-items: center;
}
#Info .Inner + .Inner .Photo{
	margin-bottom: 0;
	width: 25%;
}
#Info .Inner + .Inner .Photo + .Photo{
	margin-left: 11px;
}
#Info .Inner + .Inner .Photo .caption{
	background-color: #d4a031;
	bottom: auto;
	font-size: 14px;
	top: 0px;
	transform: rotate(-5deg);
	left: -6px;
	font-weight: bold;
}
#Info .Inner + .Inner dl{
	flex: 1;
	margin-left: 20px;
}

#Info .Inner + .Inner:after{/* content: "…"; */width: auto;display: block;color: var(--Gold);text-align: center;font-size: 36px;writing-mode: tb-rl;line-height: 1;position: absolute;bottom: -2.8em;transform: translate(-50%, 0px);left: 50%;}

#Info .Answer{
}
#Info .Answer .Entry{
	display: flex;
	justify-content: center;
	align-items: center;
}
#Info .Answer .Entry dl{/* padding-right: 20px; */text-align: center;}
#Info .Answer .Entry dt{
	font-size: 16px;
	/* font-style: italic; */
	font-weight: bold;
	padding-bottom: 20px;
	line-height: 1.5;
}
#Info .Answer .Entry dd{
	font-size: 22px;
	font-weight: 900;
	line-height: 1.4;
	font-style: italic;
	margin-bottom: 20px;
}
#Info .Answer .Entry dd strong{
	color: var(--Gold);
	font-size: 150%;
}
#Info .Answer .Entry dd + dd{
	font-weight: bold;
	background-color: #f3f374;
	color: var(--Gold);
	line-height: 1;
	padding: 0px 5px 4px 5px;
}

#Info .Answer .Entry .illust{
	width: 200px;
}
#Info .Answer .Entry + .Entry{
	flex-direction: row-reverse;
	margin: 0 auto;
	margin-top: 35px;
	align-items: center;
	max-width: 1300px;
}
#Info .Answer .Entry + .Entry .Main{/* flex: 1; */padding-top: 5px;}
#Info .Answer .Entry + .Entry .Main dl{
	padding-right: 0;
	padding-left: 40px;
	text-align: left;
}
#Info .Answer .Entry + .Entry .Main dt{
	font-size: 20px;
	position: relative;
	display: inline-block;
	padding: 0 20px;
	margin-bottom: 15px;
	font-weight: 900;
	line-height: 1;
	font-style: italic;
}

#Info .Answer .Entry + .Entry .Main dt:before,
#Info .Answer .Entry + .Entry .Main dt:after { 
  position: absolute;
  top: 0;
  content:'';
  width: 8px;
  height: 100%;
  display: inline-block;
}
#Info .Answer .Entry + .Entry .Main dt:before {
  border: solid 2px black;
  left: 0;
  border-right: none;
}
#Info .Answer .Entry + .Entry .Main dt:after {
  content: '';
  border: solid 2px black;
  right: 0;
  border-left: none;
}
#Info .Answer .Entry + .Entry .Main dt strong{
	color: var(--Gold);
	font-size: 130%;
}
#Info .Answer .Entry + .Entry .Main dd{
	font-size: 15px;
	font-weight: bold;
	font-style: normal;
	line-height: 1.6;
}
#Info .Answer .Entry + .Entry .Main dl + dl{
	margin-top: 40px;
}
#Info .Answer .Entry + .Entry .Photo{
	width: 35%;
}

#Info .Answer .btn{
	margin-top: 40px;
	text-align: center;
	margin-bottom: 90px;
}

#Info .Copy{
	margin-top: 40px;
}
#Info .Copy dl{
	display: flex;
	width: fit-content;
	margin: 0 auto;
	align-items: center;
}
#Info .Copy dt{
	text-align: left;
	margin-right: 23px;
	font-weight: bold;
	font-style: italic;
	font-size: 18px;
}
#Info .Copy dt strong{
	display: block;
	color: var(--Gold);
	font-size: 145%;
	font-style: italic;
	padding-bottom: 5px;
}
#Info .Copy dd{
	width: 102px;
}
#Info .Copy dd img{}


/*---------------------------------Classone*/
#Classone{background-image: url(../../images/business/bg_classone.jpg);position: relative;padding: 70px 0;}
#Classone:before{content:"";background-color: rgb(255 255 255 / 70%);width: 100%;height: 100%;position: absolute;top: 0;left: 0;}

#Classone .Inner{
	position: relative;
	z-index: 2;
	width: 1000px;
	margin: 0 auto;
	display: flex;
	justify-content: space-between;
}
#Classone .Main{
	flex: 1;
}
#Classone .Main h2{
	font-size: 19px;
	font-weight: 900;
	margin-bottom: 15px;
}
#Classone .Main h2 p{
	font-style: italic;
	display: inline-block;
	background-color: #fff;
	line-height: 1;
	padding: 3px 7px 5px 6px;
}
#Classone .Main h2 p + p{
	margin-top: 6px;
}
#Classone .Main h2 p strong{
	color: #e1ac3a;
	font-size: 135%;
}
#Classone .Main .txt{
	font-size: 15px;
	font-weight: bold;
	margin-bottom: 20px;
}
#Classone .Photo{
	width: 400px;
	margin-left: 40px;
}
#Classone .Photo img{}

/*-------------------------------Voice*/
#Voice{
	background-color: #ffffff;
	padding: 70px 0;
	text-align: center;
}
#Voice h2{
	margin-bottom: 10px;
}
#Voice .Maintxt{
	font-weight: bold;
	font-size: 18px;
	/* color: var(--Gold); */
	font-style: italic;
}
#Voice .Inner{
	text-align: left;
	width: 1000px;
	margin: 0 auto;
	display: flex;
	justify-content: space-between;
	margin-top: 50px;
	position: relative;
}
#Voice .Inner:after{content:"Thank you!";color: #f4b141;font-family: "Caveat", cursive;letter-spacing: -0.5px;font-size: 50px;position: absolute;font-weight: normal;line-height: 1;bottom: 0px;transform: rotate(-7deg);left: -31px;}

#Voice .Inner .Box{
	width: 48%;
}
#Voice .Inner .Box + .Box{}
#Voice .Inner .Box .Entry{
	border: 4px solid var(--Gold);
	border-radius: 7px;
	padding: 35px 30px;
	position: relative;
}
#Voice .Inner .Box .Entry + .Entry{
	margin-top: 40px;
}
#Voice .Inner .Box .Entry p{
	/* padding-top: 6px; */
	font-size: 16px;
	line-height: 1.8;
	font-weight: bold;
}
#Voice .Inner .Box .Entry p strong{
	background: linear-gradient(transparent 60%, #e9e9a2 50%);
	color: var(--Gold);
	font-weight: 900;
	font-size: 110%;
}
#Voice .Inner .Box .Entry:before{content:"\f2be";font-family:FontAwesome;color: var(--Gold);font-size: 45px;position: absolute;line-height: 1;top: -25px;background-color: #ffffff;left: 50%;transform: translate(-50%, 0px);}
#Voice .btn{
	margin-top: 40px;
}

/*-------------------------------*/
#Point{color: var(--Gold);background-color: #efefef;padding: 90px 0;}
#PointIn{margin: 0 auto;box-sizing: border-box;position: relative;border-radius: 5px;z-index: 2;box-shadow: 0 0 5px rgb(0 0 0 / 40%);}
#Point h2{
	position: absolute;
	left: 50%;
	top: -20px;
	text-align: center;
	transform: translate(-50%, 0px);
	display: flex;
	flex-direction: column;
}
#Point h2 .sub{
	font-size: 30px;
	font-weight: 900;
}
#Point h2 .sub span {
  position: relative;
  display: inline-block;
  padding: 0 37px;
  margin-bottom: 5px;
  font-style: italic;
}
#Point h2 .sub span:before, #Point h2 .sub span:after {
  content: '';
  position: absolute;
  top: 50%;
  display: inline-block;
  width: 35px;
  height: 5px;
  background-color: var(--Gold);
  -webkit-transform: rotate(60deg);
  transform: rotate(60deg);
}
#Point h2 .sub span:before {
  left:0;
}
#Point h2 .sub span:after {
  right: 0;  -webkit-transform: rotate(-60deg);
  transform: rotate(-60deg);
}
#Point h2 .main{
	/* background-color: #ddb325; */
}
#Point h2 .main:before,
#Point h2 .main:after{
	/* background-color: #ddb325; */
}
#Point .Inner{
	background-color: #fff;
	padding: 40px;
	border-radius: 5px;
	padding-top: 32px;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
#Point .Inner h3{
	text-align: center;
	font-size: 18px;
	font-style: italic;
	font-weight: 900;
	margin-bottom: 30px;
	width: 100%;
	line-height: 1.6;
}
#Point .Inner h3 strong{
	background: linear-gradient(transparent 70%, #f3f374 70%);
	font-size: 130%;
	/* font-weight: bold; */
}
#Point .Inner .Entry{
	width: 31%;
	position: relative;
}
#Point .Inner .Entry + .Entry{}
#Point .Inner .Entry .deco{
	font-size: clamp(40px, 4vw,60px);
	color: #e1eef4;
	line-height: 1;
	margin-bottom: 3px;
	position: absolute;
	bottom: -13px;
	z-index: 1;
	right: 0;
}
#Point .Inner .Entry .deco strong{
	font-size: 140%;
	padding-left: 3px;
	font-weight: normal;
}
#Point .Inner .Entry .Photo{margin-bottom: 8px;}
#Point .Inner .Entry .Photo img{}
#Point .Inner .Entry dl{
	position: relative;
	z-index: 2;
}
#Point .Inner .Entry dt{
	font-size: 22px;
	font-weight: 900;
	font-style: italic;
	padding-bottom: 3px;
}
#Point .Inner .Entry dd{
	color: #000;
	font-size: 14px;
	font-weight: bold;
}
@media screen and (min-width:1400px){
#Point .Inner .Entry dd{font-size: 15px;}
}
#Point .Inner .btn{
	width: 100%;
	text-align: center;
	margin-bottom: 10px;
	margin-top: 35px;
}
#Point .Inner .btn h4{text-align: center;font-size: 18px;position: relative;display: inline-block;padding: 0 1.5em;margin-bottom: 10px;font-style: italic;}
#Point .Inner .btn h4:before, #Point .Inner .btn h4:after {
  content: '';
  position: absolute;
  top: 50%;
  display: inline-block;
  width: 1.5em;
  height: 3px;
  background-color: var(--Gold);
  -webkit-transform: rotate(60deg);
  transform: rotate(60deg);
}
#Point .Inner .btn h4:before {
  left:0;
}
#Point .Inner .btn h4:after {
  right: 0;  -webkit-transform: rotate(-60deg);
  transform: rotate(-60deg);
}
#Point .Inner .btn ul{
	width: 100%;
	display: flex;
	justify-content: center;
}
#Point .Inner .btn li{}
#Point .Inner .btn li + li{
	margin-left: 13px;
}
#Point .Inner .btn li a{}

#Point .Inner .atte{
	font-size: 23px;
	font-weight: 900;
	text-align: center;
	width: 100%;
	margin-top: 30px;
	font-style: italic;
}
/*-------------------------------Contact*/
#Contact{
	padding: 70px 0;
	text-align: center;
}
#Contact h2{
	font-size: 22px;
	font-style: italic;
	font-weight: 900;
	margin-bottom: 30px;
}
#Contact h2 strong{
	font-size: 150%;
}
#Contact h2 em{
	font-style: italic;
	color: var(--Gold);
}
#Contact .txt{
	font-size: 16px;
	font-weight: bold;
	margin-bottom: 30px;
}
#Contact ul{
	display: flex;
	justify-content: center;
	align-items: center;
	width: 1000px;
	margin: 0 auto;
}
#Contact li{}
#Contact li + li{
	margin-left: 15px;
}

#Contact li a{
	padding: 10px 75px;
	font-size: 20px;
}
#Contact li a span{
	font-style: italic;
	display: block;
	font-size: 80%;
}


/*----------------------------------Topic*/
#Topic{background: var(--GradeVertical);position: relative;padding: 70px 0 90px 0;}
#Topic:after{content: "";background-image: url(../../../../fair/asset/images/2026hatsuyume/bg_goldleaf_dark.png);position: absolute;width: 100%;height: 100%;top: 0;left: 0;}


/*---------------------*/
.Campaign{
	position: relative;
}
.Campaign.Presale{
	margin-bottom: 30px;
}
.Campaign.Discount .Title:before, .Campaign.Discount .Title:after{
}
.Campaign br.pc{ display: inline}
.Campaign br.smp{ display: none}
.Campaign .Entry .Detail .stamp{
	/* margin-top: -20px; */
	/* margin-left: -20px; */
}
.Campaign.Discount.multi .Entry .Detail .stamp{
	/* top: 0; */
	/* left: -7px; */
}
.Campaign .TitleArea{
	width: 190px;
	padding: 0 0px 0 10px;
}
.Campaign.Discount .Title .logo{
	display: none;
}
.Campaign.Discount .Title h2{
	margin-bottom: 0 !important;
	font-family: inherit;
	font-weight: bold;
	text-align: center;
	font-size: 20px;
	line-height: 1.5;
	display: flex;
	flex-direction: column;
}
.Campaign.Discount .Title h2 p{
	font-size: 18px;
}
.Campaign.Discount .Title h2 p + p{
	font-size: 26px;
	font-weight: 900;
	margin-top: 10px;
}
.Campaign.Discount .Entry .Detail .main dt{
	display: none;
}
.Campaign.Discount .Entry .Detail .main dd{
	font-size: 12px;
}
.Campaign.Discount .Entry .Detail{
}
.Campaign.Discount .Entry .Detail .main{
	border-top: 2px solid var(--Red);
	padding-top: 10px;
}
.Campaign.Discount.multi .Entry .Detail .main{
	padding-top: 3px;

}
.Campaign.Discount.multi .Entry + .Entry .Detail .main{	border-top: 2px solid var(--Green);}
.Campaign.Discount .Entry .Detail .main dd + dd{
	font-size: 20px;
}
.Campaign.Discount .Entry .atte{
	font-size: 12px;
}
.Campaign ul.list{display: flex;flex-wrap: wrap;}
.Campaign ul.list li{padding-left:16px;line-height: 1.4;margin-right: 10px;}
.Campaign ul.list li + li{
	margin-top: 5px;
}
.Campaign ul.list li:before{content:"\f058";display:block;float:left;margin-left: -15px;width:1em;text-align:center;font-family:FontAwesome;font-size: 90%;margin-top: 2px;}
.Campaign .AccordionPC .AccClose{
	background-color: #414141;
	color: #fff;
	text-align: center;
	padding: 5px 0;
	margin-top: 10px;
}
.Campaign .AccordionPC .trigger{position: relative;border: 1px solid #9f9f9f;text-align: center;border-radius: 3px;padding: 3px 0;display: block;}
.Campaign .AccordionPC .trigger:hover{
	cursor: pointer;
	background-color: #e8e8e8;
}
.Campaign .AccordionPC .trigger:after{position: absolute;right: 8px;top:50%;margin-top:-0.5em;content:"\f067";font-family:FontAwesome;line-height: 1;font-weight: normal;}
.Campaign .AccordionPC .trigger.active:after{content:"\f068";}

#Topic .OtherLink{
	width: 840px;
	margin: 0 auto;
	margin-top: 30px;
	position: relative;
	z-index: 3;
}
#Topic .OtherLink a{background-color: var(--Red);display: block;display: flex;position: relative;color: #fff;justify-content: center;align-items: center;height: 120px;border-radius: 5px;justify-content: center;column-gap: 30px;}
#Topic .OtherLink a:before{content: "";position: absolute;top: 5px;left: 5px;width: calc(100% - 10px);height: calc(100% - 10px);border: 1px solid var(--Gold);box-sizing: border-box;}
#Topic .OtherLink a:hover{
	background-color: #650008;
}
#Topic .OtherLink a:after{
	right: 20px;
	font-size: 40px;
	font-weight: normal;
}
#Topic .OtherLink a .deco{width: 180px;}
#Topic .OtherLink a .sub{
	font-size: 13px;
	text-align: center;
	font-weight: bold;
}
#Topic .OtherLink a .main{
	font-size: 20px;
	text-align: center;
}



/*------------------------------*/
#SearchWrap{--Gold:#ae000d;--DarkYellow:#ae000d;}
#SearchWrap{
	width: 1000px;
	text-align: center;
	background-image: none;
	position: relative;
	z-index: 3;
}
#SearchWrap:before{content: "";background-image: url(../../../../fair/asset/images/2026hatsuyume/line_ichimatsu_02.png);width: 100%;height: 26px;display: block;background-position: top left;background-repeat: repeat-x;margin-bottom: 40px;left: auto;position: relative;}
#SearchWrap:after{
	content: none;
}
#SearchWrap h2{
	background: var(--Red);
	padding: 10px 12px 12px 12px;
	margin-bottom: 30px;
}
#SearchWrap h2 .main{
	background-image: none;
	font-size: 34px;
}
#SearchWrap .commonTtl:before, #SearchWrap .commonTtl:after{
	background-color: var(--Red);
}
#SearchWrap .Inner{
	text-align: left;
}

#SearchWrap .TabEntry{
	border: 5px solid var(--Gold);
}