/*@mixin minchoBold {
font-family: "shippori-mincho", sans-serif;
font-weight: 700;
font-style: normal;
font-feature-settings: 'palt';
}
@mixin en_Paganini {
	font-family: "paganini", serif;
font-weight: 400;
font-style: normal;
	font-feature-settings: 'palt';
}
@mixin en_Paganini_I {
font-family: "paganini", serif;
font-weight: 400;
font-style: italic;
	font-feature-settings: 'palt';
}
@mixin en_Paganini_B {
font-family: "paganini", serif;
font-weight: 700;
font-style: normal;
	font-feature-settings: 'palt';
}
@mixin en_Paganini_BI {
font-family: "paganini", serif;
font-weight: 700;
font-style: italic;
font-feature-settings: 'palt';
}*/
/*$btn-request-off-color:*/
/*#9e7013*/
/*#BD8617;*/
/*$btn-request-on-color:#db9b1a;*/
/*$btn-request-off-color:#a72126;
$btn-request-on-color:#d83c42;*/
/*$btn-reserve-off-color:#9c9e73;
$btn-reserve-on-color:#b5b886;*/
.campaign-conts .mainvisual { max-width: none; }
.campaign-conts .inner { width: 90%; max-width: 1200px; margin-right: auto; margin-left: auto; padding: 0; }
.campaign-conts .sub-inner { width: 90%; max-width: 1040px; margin-right: auto; margin-left: auto; }
.campaign-conts .intro::after { content: none; }
.campaign-conts a { display: block; width: 100%; transform: all 0.4s; }
.campaign-conts a:hover { filter: brightness(112%); }
.campaign-conts .note-section { padding: 2.5rem 0 3rem; }
@media screen and (max-width: 600px) { .campaign-conts .mv img { height: auto; object-fit: contain; } }

.campaign-outline { padding-top: 0.5rem; }
.campaign-outline .midashi { text-align: center; }
.campaign-outline .property-list > ul { display: -webkit-box; display: flex; flex-wrap: wrap; -webkit-box-pack: justify; justify-content: space-between; -webkit-box-align: stretch; align-items: stretch; }
.campaign-outline .property-list > ul * { min-height: 0%; }
.campaign-outline .property-list > ul::after { content: ""; display: block; width: calc(96% / 3); }
.campaign-outline .property-list > ul > li { width: calc(96% / 4); margin-top: 1rem; }
.campaign-outline .property-list > ul > li a { height: 100%; background-color: #585757; }
.campaign-outline .property-list > ul > li .image .img .cap { color: #fff; text-shadow: 0 0 2px #000, 0 0 2px #000, 0 0 3px #000; }
.campaign-outline .property-list > ul > li .property-name { background-color: #585757; color: #fff; text-align: center; display: flex; justify-content: center; align-items: center; padding: 1rem; min-height: 68px; }
.campaign-outline .property-list > ul > li .property-name p { font-size: clamp(12px, 1vw, 1rem); line-height: 1.28; }
@media screen and (max-width: 768px) { .campaign-outline .property-list > ul > li { width: calc(96% / 3); }
  .campaign-outline .property-list > ul > li .property-name { min-height: 64px; } }
@media screen and (max-width: 600px) { .campaign-outline .property-list > ul > li { width: calc(96% / 2); } }

#Summer2026 .bg-blue { background-color: #59a2b1; color: #fff; overflow-x: hidden; }
#Summer2026 .intro { padding: 3rem 0; text-align: center; }
#Summer2026 .intro * { position: relative; z-index: 2; }
#Summer2026 .intro::before { content: ""; display: block; margin-inline: calc(50% - 50vw); width: 100vw; height: 100%; background-color: rgba(255, 255, 255, 0.16); position: absolute; left: 0; top: 0; z-index: 1; }
#Summer2026 .intro .cv { width: 64%; max-width: 610px; margin: 0 auto 2.5rem; }
#Summer2026 .intro .cv a { box-shadow: 3px 3px 6px 0 rgba(0, 0, 0, 0.4); }
#Summer2026 .intro .lead { text-align: center; }
#Summer2026 .intro .lead .em { font-size: 152%; display: block; color: #f0e36c; letter-spacing: 0.15em; }
#Summer2026 .intro .note { text-align: center; margin-top: 1.5rem; }
#Summer2026 .cont-prize { padding: 3rem 0; position: relative; z-index: 2; }
#Summer2026 .cont-prize * { position: relative; z-index: 2; }
#Summer2026 .cont-prize * .img .cap.in { position: absolute; }
#Summer2026 .cont-prize .prize-title { width: 100%; max-width: 1026px; margin: auto; }
#Summer2026 .cont-prize .prize-image { margin: 1rem auto 0; }
#Summer2026 .cont-prize .prize-image .note { margin-top: 0.5rem; }
#Summer2026 #Prize01 { padding: 0; }
#Summer2026 #Prize01 .prize-title { margin-top: -2.5%; }
#Summer2026 #Prize01 .prize-image { max-width: 1000px; margin-bottom: 5%; }
#Summer2026 #Prize01 .shimagreen { margin-bottom: 5%; position: relative; }
#Summer2026 #Prize01 .shimagreen * { position: relative; z-index: 2; }
#Summer2026 #Prize01 .shimagreen::after { content: ""; display: block; margin-inline: calc(50% - 50vw); width: 100vw; height: 100%; background-color: rgba(255, 255, 255, 0.16); position: absolute; left: 0; top: 0; z-index: 1; top: 28px; }
#Summer2026 #Prize01 .shimagreen .prize-title { max-width: 1200px; margin-top: -3.5%; }
#Summer2026 #Prize01 .shimagreen .prize-image { display: -webkit-box; display: flex; flex-wrap: wrap; -webkit-box-pack: justify; justify-content: space-between; -webkit-box-align: stretch; align-items: stretch; max-width: 1440px; margin-top: 1.5rem; margin-bottom: 1rem; }
#Summer2026 #Prize01 .shimagreen .prize-image * { min-height: 0%; }
#Summer2026 #Prize01 .shimagreen .prize-image .image { width: calc((1102 / 1200) * 100%); }
#Summer2026 #Prize01 .shimagreen .prize-image .image:nth-of-type(1) { margin-left: 0; margin-right: auto; }
#Summer2026 #Prize01 .shimagreen .prize-image .image:nth-of-type(2) { margin-left: auto; margin-right: 0; }
#Summer2026 #Prize01 .shimagreen .link { padding: 2.5rem 0; }
#Summer2026 #Prize01 .shimagreen .link a { width: 64%; max-width: 468px; margin: auto; }
#Summer2026 #Prize01 .shimagreen .link a:hover { background-color: rgba(255, 255, 255, 0.24); }
#Summer2026 #Prize02 .prize-image { max-width: 1098px; margin-top: -18%; }
#Summer2026 #Prize02 .prize-image .img .cap { bottom: 10%; }
#Summer2026 #Prize02 .prize-image .img .cap:nth-of-type(1) { right: calc((568 / 1098) * 100%); }
#Summer2026 #Prize02 .prize-image .img .cap:nth-of-type(2) { right: calc((56 / 1098) * 100%); }
#Summer2026 #Prize03::after { content: ""; display: block; margin-inline: calc(50% - 50vw); width: 100vw; height: 100%; background-color: rgba(255, 255, 255, 0.16); position: absolute; left: 0; top: 0; z-index: 1; }
#Summer2026 #Prize04 .prize-image { max-width: 996px; }
#Summer2026 #Prize04 .prize-image .img { background-color: rgba(255, 255, 255, 0.88); }
@media screen and (max-width: 768px) { #Summer2026 .cont-prize { padding: 1.5rem 0; }
  #Summer2026 .intro .cv { width: 80%; }
  #Summer2026 #Prize01 { container-type: inline-size; }
  #Summer2026 #Prize01 > .prize-image { margin-bottom: 7%; }
  #Summer2026 #Prize01 .shimagreen { width: 100vw; margin-inline: calc(50% - 50vw); }
  #Summer2026 #Prize01 .shimagreen::after { top: 10px; }
  #Summer2026 #Prize01 .shimagreen .link { padding-inline: calc(50vw - 50%); } }
