/*------------------------------------------------------------
	FOR PC LAYOUT CSS
------------------------------------------------------------*/
@media screen and (min-width:768px){

/*------------------------------------------------------------
	BODY BASIC
------------------------------------------------------------*/
html{
-webkit-text-size-adjust: 100%;
}

body{
font-size:18px;
line-height:27px;
color:#333;
font-weight:500;
letter-spacing:.025em;
min-width:1024px;
-webkit-text-size-adjust: 100%;
}

/*------------------------------------------------------------
	RESPONSIVE
------------------------------------------------------------*/
.pconly{ display:block; }
.sponly{ display:none; }


/*------------------------------------------------------------
	CONTENT
------------------------------------------------------------*/
.kv{
  position: relative;
  width: 100%;
  min-height: 100svh;
  overflow: clip; /* hiddenでもOK */
  z-index: 0;
}

.kv__inner {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 604px;
  height: 515px;
  transform: translate(-50%, -75%);
  z-index: 1;
  display: flex;
  justify-content: center;
  align-items: center;
}

.kv__bg{
  position: absolute;
  inset: -15% 0 -15% 0;
  background: url(img/kv-pc2025.jpg) center/cover no-repeat;
  z-index: -1;
  will-change: transform;
  transform: translate3d(0,0,0);
}

@media (prefers-reduced-motion: reduce){
  .kv__bg{ transform: none !important; }
}

.ly-prise{
font-size:20px;
line-height:2;
color:#fff;
position:absolute;
bottom:110px;
right:40px;
font-weight:bold;
}


#index0{
width:100%;
height:474px;
background:url(img/cont-bg01.png) no-repeat center top;
background-size:1920px;
margin:-100px 0 0;
z-index:100;
position:relative;
padding:186px 0 0 0;
}
.ev-date-bnr{
width:1000px;
height:204px;
margin:0 auto;
}


#index1{
padding:30px 0 95px;
width:1100px;
margin:0 auto;
}

.i1-cc{
width:787px;
height:164px;
margin:0 auto 35px;
}

.i1desc{
font-size:18px;
line-height:26px;
width:1000px;
margin:0 auto 80px;
}


.i-feed{
width:1092px;
margin:0 auto;
padding:50px 0 100px;
}

.prizeBox{
position:relative;
width:1092px;
margin:0 auto;
padding:30px 0;
background:url(img/pr-bg-sprite.jpg) repeat;
border-radius:10px;
}
.prizeBox::before{
content:'';
width:1092px;
height:30px;
position:absolute;
top:0;
left:0;
background:url(img/flame-top.png) no-repeat center top;
z-index:10;
}
.prizeBox::after{
content:'';
width:1092px;
height:30px;
position:absolute;
bottom:0;
left:0;
background:url(img/flame-bottom.png) no-repeat center top;
z-index:10;
}
.prize-flame{
padding:20px 96px;
position:relative;
background:url(img/flame-v.png) repeat-y center center;
z-index:11;
}

.i1md{
width:970px;
height:120px;
background:url(img/pr-mdbg.png) no-repeat center top;
background-size:970px;
margin:0 auto 60px;
color:#fff;
text-align:center;
font-size:34px;
font-weight:bold;
line-height:85px;
}

.award{
padding-left:120px;
position:relative;
font-size:42px;
line-height:64px;
color:#ea617c;
font-weight:bold;
}
.award span{
font-size:27px;
color:#ea617c;
font-weight:bold;
}

.award-sub{
font-size:27px;
line-height:30px;
color:#ea617c;
font-weight:bold;
padding-left:120px;
margin-bottom:20px;
}

.award::before{
content:'';
width:64px;
height:64px;
background:url(img/icon-crown.svg) no-repeat;
background-size:64px;
position:absolute;
top:-10px;
left:40px;
}
.prize{
padding-left:120px;
font-size:31px;
line-height:46px;
font-weight:bold;
margin-bottom:20px;
}
.prize span{
font-size:26px;
line-height:39px;
}

.pp-col3{
display:flex;
justify-content:space-between;
margin:0 0 60px;
}
.pp-col3 li{
width:286px;
}

.pp-list{
margin:0 16px 50px 120px;
}
.pp-list li{
font-size:31px;
line-height:40px;
font-weight:bold;
padding:10px 0 10px 1em;
position:relative;
border-bottom:1px dotted #999;
}
.pp-list li::before{
content:'';
width:8px;
height:8px;
background:#333;
position:absolute;
top:27px;
border-radius:50%;
left:10px;
margin-top:-4px;
}

.pp-list li span{
display:block;
font-size:25px;
line-height:1.3em;
}

.pp-list li:last-child{
border:0;
}

.pp-list-inline{
margin-left:120px;
}
.pp-list-inline{
display:flex;
justify-content:left;
flex-wrap:wrap;
margin-bottom:60px;
}
.pp-list-inline li{
padding-left:1em;
position:relative;
font-size:31px;
line-height:36px;
font-weight:bold;
}
.pp-list-inline li::before{
content:'';
width:8px;
height:8px;
background:#333;
border-radius:50%;
position:absolute;
top:20px;
left:10px;
}

.pp-cap{
text-align:center;
font-size:18px;
}

#index2{
background:url(img/tile-i2.jpg) repeat;
width:100%;
}

.i2Inner{
width:1260px;
margin:0 auto;
padding:55px 100px;
}

.i2md{
width:970px;
height:120px;
background:url(img/pr-mdbg.png) no-repeat center top;
background-size:970px;
margin:0 auto 30px;
color:#fff;
text-align:center;
font-size:34px;
font-weight:bold;
line-height:85px;
}

.appStep{
width:auto;
display:flex;
justify-content:space-between;
margin-bottom:25px;
}
.appStep li{
width:330px;
background:#fff;
padding:50px 20px 25px;
margin:0;
}

.stepTtlArea{
border-bottom:1px solid #ee869a;
height:120px;
margin-bottom:20px;
}
.stepNum{
font-size:23px;
line-height:35px;
font-style:italic;
font-weight:bold;
color:#ee869a;
}
.stepNum span{
font-size:1.8em;
margin-left:.2em;
}
.stepTtl{
font-size:23px;
line-height:35px;
font-style:italic;
font-weight:bold;
}

.stepText{
font-siz:21px;
line-height:26px;
font-weight:bold;
margin-bottom:21px;
}
.stepmd{
background:#ee869a;
color:#fff;
text-align:center;
padding:0 20px;
font-size:21px;
line-height:40px;
height:40px;
border-radius:20px;
margin-bottom:12px;
font-weight:bold;
}

.stepImg{
text-align:center;
display:block;
margin: 20px auto 10px;
}

.stepCap{
padding-left:1.2em;
position:relative;
font-size:18px;
line-height:22px;
font-weight:bold;
}
.stepCap::before{
content:'※';
position:absolute;
top:0;
left:0;
}

.i2Cap{
font-size:18px;
font-weight:500;
line-height:20px;
color:#fff;
width:auto;
}
.i2Cap li{
margin-bottom:1em;
padding-left:1.2em;
position:relative;
}
.i2Cap li:last-child{
margin:0;
}
.i2Cap li::before{
content:'※';
position:absolute;
top:0;
left:0;
}



#index3{
padding:80px 0 90px;
}
.i3md{
width:970px;
height:120px;
background:url(img/pr-mdbg.png) no-repeat center top;
background-size:970px;
margin:0 auto 40px;
color:#fff;
text-align:center;
font-size:34px;
font-weight:bold;
line-height:85px;
}

.i3cc{
text-align:center;
font-size:39px;
line-height:64px;
position:relative;
font-weight:bold;
margin-bottom:50px;
}

.uline{
padding:0 25px 5px;
border-bottom:4px solid #ea6182;
}

.pinkT{
font-size:64px;
color:#ea6182;
position:relative;
top:4px;
margin:0 .1em;
}

.i3desc{
width:970px;
margin:0 auto 20px;
font-size:18px;
line-height:36px;
}

.clickMap {
width:894px;
margin:0 auto 35px;
    position: relative;
}

.overlay-link {
    position: absolute;
    width: 90px;  /* リンク領域の幅 */
    height: 108px; /* リンク領域の高さ */
    cursor: pointer;
}

/* 各リンク領域の位置を調整 */
.clink01 { top: 56px; left: 685px; }
.clink02 { top: 279px; left: 635px; }
.clink03 { top: 339px; left: 395px; }
.clink04 { top: 78px; left: 359px; }
.clink05 { top: 373px; left: 156px; }
.clink06 { top: 467px; left: 708px; }
.clink07 { top: 0px; left: 478px; }

.spotList {
    display: none;
    background:#fffcdb;
    padding: 85px 0;
    margin-top: 90px;

}

.anchor {
padding-top:20px;
    margin-top: -20px;
	margin-bottom:45px;
}

.spotList.active {
max-height:3700px;
    display: block;
}

.spotListInner{
width:960px;
margin:0 auto;
}

.mapCap{
width:894px;
margin:0 auto 80px;
font-size:18px;
line-height:28px;
}
.mapCap li{
padding-left:1em;
position:relative;
}
.mapCap li::before{
content:'※';
position:absolute;
top:0;
left:0;
}

.center{
text-align:center;
}

button.menu-toggle{
background:url(img/btn01bg.svg) no-repeat;
background-size:324px;
width:324px;
height:68px;
border:none;
color:#fff;
text-align:center;
margin:0 auto;
font-size:21px;
line-height:68px;
font-weight:bold;
cursor:pointer;
transition:all .2s;
}
button.menu-toggle:hover{
opacity:.9;
}


.areaTitle{
text-align:center;
background:url(img/pr-mdbg02.svg) no-repeat;
background-size:960px;
font-size:24px;
font-weight:bold;
line-height:60px;
margin-bottom:25px;
color:#fff;
}

.spotName{
margin-left:40px;
}
.spotName li{
font-size:20px;
line-height:33px;
}


#index4{
width:100%;
}

.i4ttl-area{
background:url(img/tile-i3.jpg) repeat;
padding-bottom:100px;
}


.i4Inner{
width:100%;
margin:0 auto;
padding:100px 0 0;
}

.i4ttl{
font-size:50px;
line-height:60px;
margin-bottom:100px;
text-align:center;
color:#ea617c;
}




.i4md{
width:970px;
height:120px;
background:url(img/pr-mdbg.png) no-repeat center top;
background-size:970px;
margin:0 auto 40px;
color:#fff;
text-align:center;
font-size:34px;
font-weight:bold;
line-height:85px;
}

.topPrize{
text-align:center;
font-size:42px;
line-height:60px;
font-weight:bold;
color:#ea617c;
padding-top:80px;
position:relative;
}
.topPrize:before{
content:'';
width:64px;
height:64px;
background:url(img/icon-crown.svg) no-repeat center top;
background-size:64px;
position:absolute;
top:0;
left:50%;
margin-left:-32px;
}
.winner{
text-align:center;
font-size:24px;
line-height:48px;
margin-bottom:40px;
}
.photo-vt{
width:890px;
margin:0 auto 100px;
}

.top-comment{
width:890px;
margin:0 auto 100px;
background:#fff4cd;
padding:10px;
position:relative;
}
.top-comment-inner{
border:1px solid #8e5d3d;
padding:15px 55px 20px;
color:#8e5d3d;
font-size:23px;
line-height:30px;
text-align:center;
}

.top-com-md{
font-size:28px;
line-height:36px;
margin-bottom:.5em;
}

.cmd{
text-align:center;
color:#8e5d3d;
font-size:28px;
line-height:36px;
font-weight:bold;
margin-bottom:5px;
}

button.ph-toggle{
background:url(img/btn01bg.svg) no-repeat;
background-size:324px;
width:324px;
height:68px;
border:none;
color:#fff;
text-align:center;
margin:0 auto;
font-size:21px;
line-height:68px;
font-weight:bold;
cursor:pointer;
transition:all .2s;
}
button.ph-toggle:hover{
opacity:.9;
}
.pb100{
padding-bottom:100px;
}


.pr-frame{
width:636px;
margin:0 auto;
text-align:center;
font-size:24px;
line-height:30px;
font-weight:bold;
color:#40220f;
padding:40px 0;
background:url(img/pr-frame.jpg) no-repeat;
}


.photoList{
margin:0;
background:#fff;
padding:100px 0;
}

.photoList section{
margin-bottom:160px;
}


.pmd{
text-align:center;
color:#ea617c;
font-size:36px;
line-height:64px;
font-weight:bold;
margin-bottom:10px;
}
.pmd span{
display:inline-block;
padding:0 80px;
position:relative;
}
.pmd span::before{
content:'';
width:64px;
height:64px;
background:url(img/icon-crown.svg) no-repeat left top;
background-size:64px;
position:absolute;
top:-10px;
left:0;
}

.pmd2{
text-align:center;
font-weight:bold;
font-size:28px;
line-height:48px;
}

.photo{
margin:0 auto 80px;
}


.photo-s{
width:512px;
margin:0 auto;
}

.photo-b{
width:640px;
margin:0 auto;
}
.photo-v{
width:480px;
margin:0 auto;
}


#index5{
width:100%;
background:#fadce9;
padding:75px 0;
}
.i5Inner{
width:1260px;
margin:0 auto;
}

.i5md{
width:970px;
height:120px;
background:url(img/pr-mdbg.png) no-repeat center top;
background-size:970px;
margin:0 auto 40px;
color:#fff;
text-align:center;
font-size:34px;
font-weight:bold;
line-height:85px;
}

.rules{
width:1000px;
background:#fff;
border-radius:20px;
padding:85px;
margin:0 auto;
}
.i5Title{
text-align:center;
font-size:25px;
font-weight:bold;
line-height:45px;
margin-bottom:20px;
color:#ea617c;
}

.ruleT{
width:100%;
border:1px solid #ccc;
font-size:16px;
line-height:26px;
margin-bottom:60px;
}
.ruleT th{
padding:15px;
border:1px solid #ccc;
vertical-align:top;
text-align:left;
white-space:nowrap;
background:#f8f8f8;
}
.ruleT td{
padding:15px;
border:1px solid #ccc;
}

.decimal{
margin-left:1.5em;
}
.decimal li{
list-style-type:decimal;
font-size:16px;
line-height:26px;
}


button.term-toggle{
background:url(img/btn02bg.svg) no-repeat;
background-size:324px;
width:324px;
height:68px;
border:none;
color:#fff;
text-align:center;
margin:0 auto;
font-size:21px;
line-height:68px;
font-weight:bold;
cursor:pointer;
transition:all .2s;
display:block;
}
button.term-toggle:hover{
opacity:.9;
}


.terms{
padding:60px 0 0;
font-size:16px;
line-height:26px;
}
.term-desc{
margin-bottom:80px;
}


.term{
margin-bottom:60px;
font-size:16px;
line-height:26px;
}
.term-ttl{
font-size:20px;
line-height:30px;
border-bottom:1px solid #ccc;
padding-bottom:5px;
margin-bottom:15px;
}

.termList{

}
.termList li{
font-size:16px;
line-height:26px;
padding-left:1em;
position:relative;
}
.termList li::before{
content:'';
width:6px;
height:6px;
background:#333;
border-radius:50%;
position:absolute;
top:13px;
left:5px;
}

.termCap{
margin-top:1em;
}
.termCap li{
padding-left:1.2em;
position:relative;
font-size:18px;
line-height:28px;
}
.termCap li::before{
content:'※';
position:absolute;
top:0;
left:0;
}


/*------------------------------------------------------------
	FOOTER
------------------------------------------------------------*/
footer{
width:100%;
background:#ea6176;
padding:50px 0 20px;
color:#fff;
}

.footerInner{
width:1260px;
margin:0 auto;
}


.fTitle{
text-align:center;
font-size:29px;
line-height:44px;
margin-bottom:5px;
}
.forg{
width:1000px;
margin:0 auto 40px;
display:flex;
flex-wrap:wrap;
}
.forg li{
width:auto;
margin-right:1.5em;
}

.copy{
text-align:center;
font-size:20px;
line-height:30px;
}


/*------------------------------------------------------------
	END PC LAYOUT CSS
------------------------------------------------------------*/
}