.theme{position:relative;background:var(--blue-700);overflow-x:clip}
.theme-head,.pickup-list,.faq{position:relative;z-index:2}

.theme-stage{position:relative}
.theme-deco{position:absolute;inset:0;display:grid;align-items:start;pointer-events:none}
.theme-stars,.theme-hangs{grid-area:1/1;position:sticky;top:0;width:100%;overflow:hidden}
.theme-stars{z-index:0;height:810px}
.theme-hangs{z-index:3;height:500px}
.theme-stars img,.theme-hangs img{position:absolute;max-width:none;height:auto}
.stars-pc-1,.stars-pc-2{left:calc(50% - 660.64px);width:1394px}
.stars-pc-1{top:40.15px}.stars-pc-2{top:525.93px}
.theme-stars img{animation:theme-twinkle 4s ease-in-out infinite}
.stars-pc-2{animation-delay:-2s}
@keyframes theme-twinkle{0%,100%{opacity:1}50%{opacity:.55}}
.theme-hang{transform-origin:50% 0;animation:theme-drop 1.1s var(--drop,0s) both,theme-swing 2.6s ease-in-out var(--sw,0s) infinite alternate}
@keyframes theme-drop{0%{translate:0 -100%;animation-timing-function:cubic-bezier(.3,0,.6,1)}62%{translate:0 0;animation-timing-function:ease-out}80%{translate:0 -10px;animation-timing-function:ease-in}100%{translate:0 0}}
.hang-1{left:calc(50% - 682.97px);top:-88px;width:80.05px;--drop:.1s}
.hang-2{left:calc(50% - 612px);top:-109.51px;width:81.75px;--sw:-.8s;--drop:.4s}
.hang-3{left:calc(50% + 690px);top:-292.08px;width:79.44px;--sw:-1.6s;--drop:.2s}
.hang-4{left:calc(50% + 530px);top:-55.2px;width:63.95px;--sw:-.4s;--drop:.35s}
.hang-5{left:calc(50% + 605px);top:-74px;width:108.89px;--sw:-1.2s;--drop:.5s}
.hang-6{left:calc(50% - 669.78px);top:-210.84px;width:132.45px;--sw:-2s;--drop:.25s}
@keyframes theme-swing{from{rotate:-2deg}to{rotate:2deg}}

.hang-sp{display:none}
@media(max-width:1023px){
 .hang-pc{display:none}
 .theme-hangs{position:absolute;height:650px}
 .hang-sp{display:block;top:0;width:455px}
 .hang-sp-1,.hang-sp-2,.hang-sp-3{right:-40px}
 .hang-sp-4,.hang-sp-5,.hang-sp-6{left:-40px}
 .hang-sp-1{transform-origin:343.5px 0;--drop:.2s}
 .hang-sp-2{transform-origin:371.9px 0;--sw:-.8s;--drop:.35s}
 .hang-sp-3{transform-origin:394.5px 0;--sw:-1.6s;--drop:.5s}
 .hang-sp-4{transform-origin:140.5px 0;--sw:-.4s;--drop:.4s}
 .hang-sp-5{transform-origin:104.9px 0;--sw:-1.2s;--drop:.25s}
 .hang-sp-6{transform-origin:63.5px 0;--sw:-2s;--drop:.1s}
}

.theme-head{height:300px;display:flex;align-items:center;justify-content:center}
.theme-orn{position:absolute;left:calc(50% + var(--orn-x,-462px));top:var(--orn-y,0px);width:140px;height:270px}
.theme-orn::before{content:"";position:absolute;left:69px;top:0;width:2px;height:72px;background:var(--gold-400)}
.theme-orn img{position:absolute;max-width:none}
.theme-orn-cap{left:41.2px;top:70px;width:57.4px;height:44.8px}
.theme-orn-ball{left:-2px;top:109px;width:144px;height:144px}
.theme-orn-img{left:calc(70px - var(--img-w,102px) / 2);top:calc(var(--img-top,124.5px) + 50px - var(--img-h,100px) / 2);width:var(--img-w,102px);height:var(--img-h,100px);object-fit:contain}
.theme-title{line-height:0}
.theme-title picture{display:block}
.theme-title img{max-width:none;height:auto}
@media(max-width:1023px){
 .theme-head{height:auto;flex-direction:column;gap:16px;padding-bottom:80px}
 .theme-orn{position:relative;left:auto}
}

.pickup-list{width:min(1200px,calc(100% - 40px));margin:0 auto;padding:0 0 80px;display:flex;flex-direction:column;gap:50px}
.pickup-card .product-catch p{position:relative;color:var(--red-500);font-size:28px;font-weight:700;line-height:1.6;white-space:pre-line}
.pickup-card .product-credit{margin-top:4px;font-size:14px;line-height:1.6}
.pickup-card .product-name{line-height:1.6}
.pickup-card{opacity:0;translate:0 40px;transition:opacity .6s ease-out,translate .8s var(--ease)}
.pickup-card.is-inview{opacity:1;translate:0 0}
.pickup-card .product-snowman{opacity:0}
.pickup-card.is-inview .product-snowman{animation:snowman-in .6s ease-out .3s both,snowman-float 2.2s ease-in-out 1.2s infinite alternate}
@media(min-width:701px) and (max-width:1023px){
 .pickup-card{padding:56px 40px}
 .pickup-card .product-flake{left:-41px;top:-57px}
 .pickup-card .product-main{gap:32px}
}
@media(min-width:701px) and (max-width:860px){
 .pickup-card .product-main{flex-direction:column;align-items:center}
}

.faq{padding:0 20px 80px}
.faq-head{display:flex;flex-direction:column;align-items:center;gap:10px;padding:0 0 48px;color:var(--neutral-200);text-align:center}
.faq-title-en{font-family:var(--font-en);font-size:48px;line-height:normal}
.faq-title{font-size:20px;font-weight:400;line-height:normal}
.faq-list{width:min(786px,100%);margin:0 auto;display:flex;flex-direction:column;gap:10px}
.faq-item{background:#fff;border-radius:16px;padding:16px 20px}
.faq-q{display:flex;align-items:center;gap:10px;cursor:pointer;list-style:none}
.faq-q::-webkit-details-marker{display:none}
.faq-label{flex:none;font-weight:800;line-height:1.5}
.faq-q .faq-label{color:var(--green-600);font-size:24px;letter-spacing:1.2px}
.faq-q-text{flex:1;min-width:0;font-size:18px;font-weight:700;line-height:1.6;letter-spacing:.9px}
.faq-icon{position:relative;flex:none;width:16px;height:16px}
.faq-icon::before,.faq-icon::after{content:"";position:absolute;left:1px;top:7px;width:14px;height:2px;border-radius:2px;background:var(--body-dark);transition:rotate .25s var(--ease);transition:rotate .45s linear(0,0.0088,0.0327,0.068,0.1117,0.1614,0.2149,0.2706,0.327,0.3831,0.4379,0.4907,0.5412,0.5889,0.6336,0.6751,0.7135,0.7487,0.7809,0.81,0.8362,0.8597,0.8807,0.8994,0.9158,0.9302,0.9428,0.9537,0.9632,0.9712,0.9781,0.9839,0.9888,0.9928,0.9961,0.9988,1.001,1.0026,1.0039,1.0049,1.0055,1.006,1.0062,1.0063,1.0062,1.0061,1.0059,1.0056,1.0053,1.005,1.0046,1.0043,1.0039,1.0036,1.0032,1.0029,1.0026,1.0023,1.0021,1.0018,1.0016,1.0014,1.0012,1.0011,1.0009,1.0008,1.0006,1.0005,1.0005,1.0004,1.0003,1.0002,1.0002,1.0001,1.0001,1.0001,1)}
.faq-icon::after{rotate:90deg}
.faq-item[open]:not(.is-closing) .faq-icon::after{rotate:0deg}
.faq-a{display:flex;align-items:flex-start;gap:10px;padding:16px 0 8px}
.faq-a .faq-label{color:var(--red-400);font-size:24px;letter-spacing:1.2px}
.faq-a-text{flex:1;min-width:0;font-size:16px;font-weight:400;line-height:2;letter-spacing:.8px}
.faq-a-text p:empty{height:2em}
@media(hover:hover){.faq-q:hover .faq-q-text{color:var(--green-600)}}

.page-theme .share{background:var(--blue-700)}

@media(max-width:700px){
 .stars-sp{left:calc(50% - 183.74px);top:19.87px;width:368px}
 .theme-head{height:auto;flex-direction:column;gap:16px;padding-bottom:16px}
 .theme-orn{position:relative;left:auto;width:120px;height:167px}
 .theme-orn::before{left:59px;height:32px}
 .theme-orn-cap{left:48px;top:30px;width:24px;height:19px}
 .theme-orn-ball{left:-2px;top:45px;width:124px;height:124px}
 .theme-orn-img{left:calc(60.5px - var(--img-w-sp,75px) / 2);top:calc(30px + var(--img-top-sp,34.57px) + 37.5px - var(--img-h-sp,73.5px) / 2);width:var(--img-w-sp,75px);height:var(--img-h-sp,73.5px)}
 .pickup-list{width:calc(100% - 32px);padding-top:40px}
 .pickup-card .product-catch p{font-size:18px}
 .pickup-card .product-credit{font-size:12px}
 .faq{padding-inline:25px}
 .faq-title-en{font-size:32px}
 .faq-title{font-size:16px}
 .faq-q .faq-label{font-size:20px;letter-spacing:1px}
 .faq-q-text{font-size:16px;letter-spacing:.8px}
 .faq-a .faq-label{font-size:20px;letter-spacing:1px}
 .faq-a-text{font-size:14px;letter-spacing:.7px}
}
.theme-tour{position:relative;z-index:2;padding:0 20px 80px}
.theme-tour-list{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,max-content);justify-content:center;align-items:start;column-gap:40px;row-gap:20px}
.theme-tour-list li:nth-child(3n+2){padding-top:40px}
.theme-tour-link{position:relative;display:flex;flex-direction:column;align-items:center;gap:10px;color:#fff;text-decoration:none}
.theme-tour-orn{position:relative;width:80px;height:103px;transition:transform .25s var(--ease)}
.theme-tour-orn img{position:absolute;max-width:none}
.theme-tour-cap{left:24px;top:0;width:32px;height:25px}
.theme-tour-ball-a{left:-1.6px;top:21.7px;width:83.2px;height:83.2px}
.theme-tour-ball-b{left:-4px;top:19.3px;width:94.4px;height:94.4px}
.theme-tour-img{left:40px;top:63.3px;width:var(--w);height:var(--h);translate:-50% -50%;object-fit:contain}
.theme-tour-dream-role{--w:60px;--h:59px}.theme-tour-new-friends{--w:60px;--h:46px}.theme-tour-smart-item{--w:60px;--h:53px}
.theme-tour-together-play{--w:60px;--h:51px}.theme-tour-make-believe{--w:60px;--h:60px}.theme-tour-toy-award{--w:60px;--h:58px}
.theme-tour-label{display:flex;align-items:center;gap:4px;font-size:16px;font-weight:700;line-height:normal;text-align:center}
.theme-tour-label small{display:block;font-size:12px}
.theme-tour-label>span{white-space:nowrap}
.theme-tour-label::after{content:"";flex:none;width:24px;height:24px;background:url(../img/icon-arrow-badge.svg) center/contain no-repeat}
@media(hover:hover){.theme-tour-link:hover .theme-tour-orn{transform:rotate(-4deg)}}
@media(min-width:1100px){
 .theme-tour-list{display:flex;align-items:flex-start;gap:16px}
 .theme-tour-list li:nth-child(3n+2){padding-top:0}
 .theme-tour-list li:nth-child(2n){padding-top:40px}
}
@media(max-width:700px){
 .theme-tour{padding-inline:16px}
 .theme-tour-list{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:10px;row-gap:0;padding-inline:20px}
 .theme-tour-list li:nth-child(3n+2){padding-top:0}
 .theme-tour-list li:nth-child(2n){padding-top:30px}
 .theme-tour-orn{height:98px}
 .theme-tour-cap{left:28px;width:24px;height:19px}
 .theme-tour-ball-a{top:16.1px}
 .theme-tour-ball-b{top:13.7px}
 .theme-tour-img{top:57.7px}
 .theme-tour-label{gap:6px}
 .theme-tour-label small{font-size:11px}
}
@media(max-width:374px){
 .theme-tour{padding-inline:0}
 .theme-tour-label{font-size:13px}
 .theme-tour-label small{font-size:10px}
}

@media(prefers-reduced-motion:reduce){
 .theme-stars img,.theme-hang,.pickup-card .product-snowman{animation:none!important}
 .pickup-card,.pickup-card .product-snowman{opacity:1;translate:0 0;transition:none}
 .theme-tour-orn,.faq-icon::before,.faq-icon::after{transition:none}
}
