@charset "utf-8";
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;600&family=Noto+Serif+JP:wght@400;500;600;900&display=swap');
/* Photoshop: 1920 × 5718. Scope all rules to this LP; retain shared CSS. */
.snapshot-page {--brown:#6b5a4c; --orange:#ea540a; --ink:#3d3937; margin:0; color:var(--ink); font-family:"Noto Sans JP",sans-serif; font-size:16px; line-height:1.5;}
.snapshot-page *, .snapshot-page *::before, .snapshot-page *::after {box-sizing:border-box;}
.snapshot-page img {max-width:100%;height:auto; display:block;}
.snapshot-page .sp_br {display:none;}
.snapshot-page .container {width:calc(100% - 40px); max-width:1000px; padding:0; margin-inline:auto;}
.snapshot-page .wf-notoserif {font-family:"Noto Serif JP","Yu Mincho",serif;}
.snapshot-page .head {height:80px;}
.snapshot-page .head__inner {height:100%; display:flex; align-items:center; justify-content:space-between; gap:20px;}
.snapshot-page .head__brand {display:flex; align-items:center; gap:16px; color:#333; text-decoration:none;}
.snapshot-page .head__brand img {display:block; width:162px; height:40px;}
.snapshot-page .head__brand span {font-size:12px;}
.snapshot-page .head__share {display:flex; align-items:center; justify-content:flex-end; width:77px; min-height:20px; flex-shrink:0;}
.snapshot-page .head__share > a {display:block; width:77px; height:20px; border-radius:999px; background:#000; color:#fff; font:600 12px/20px Arial,sans-serif; text-align:center; text-decoration:none; white-space:nowrap;}
.snapshot-page .head__share iframe {display:block;}
.snapshot-page #mainimage {padding:30px 0 8px; margin:0; background: url('../images/snapshot/hero-background.webp') center top / cover no-repeat; overflow:visible;}
.snapshot-page #mainimage .mv {width:calc(100% - 40px); max-width:1000px; margin:0 auto;}
.snapshot-page #mainimage .mv__characters {display:block; width:100%; height:auto;}
.snapshot-page .mv__title {width:916px; max-width:100%; margin:-48px auto 0; position:relative; line-height:0;}
.snapshot-page #mainimage .mv__title img {display:block; width:100%; height:auto;}
.snapshot-page .mv__copyright {font-size:16px; line-height:24px; color:var(--brown); text-align:center; margin:15px 0 0;}
.snapshot-page #content02 {padding:96px 0 147px; background:var(--brown); color:#fff; position:static;}
.snapshot-page #content02 h2 {font-size:36px; font-weight:600; line-height:48px; letter-spacing:.04em; max-width:none; margin:0 0 49px;}
.snapshot-page main .container h2::after {content:none;}
.snapshot-page #content02 .info_dayarea {margin:0 0 32px; max-width:none;}
.snapshot-page #content02 .intro_dayttl {padding:0; height:60px; display:flex; align-items:center; justify-content:center; margin:0 0 22px; background:white; color:var(--brown); font-size:28px; font-weight:600; letter-spacing:.08em; line-height:1.5;}
.snapshot-page #content02 .intro_day {display:block; margin:0; font-size:27.44px; font-weight:500; line-height:42px; text-align:center; letter-spacing:0;}
.snapshot-page .intro_day time {white-space:nowrap;}
.snapshot-page #detail {display:grid; gap:37px;}
.snapshot-page .snap-accordion {display:block; width:100%; max-width:none; box-sizing:border-box; border-radius:10px; margin:0; text-align:left; background:white; overflow:hidden;}
.snapshot-page .snap-accordion h4 {margin:0; padding:15px 40px; min-height:60px; background:#ece7db; color:var(--brown); font-weight:600; font-size:25.15px; line-height:30px; display:flex; align-items:center; justify-content:space-between; gap:16px; cursor:pointer; position:relative;}
.snapshot-page .snap-accordion h4::after {content:""; border-left:7px solid transparent; border-right:7px solid transparent; border-top:8px solid var(--brown); flex-shrink:0; transition:transform .4s;}
.snapshot-page .snap-accordion h4.acc_open::after {transform:rotate(180deg);}
.snapshot-page .snap-accordion ul {margin:0; padding:0 40px; list-style:none; background:none; transition:padding .4s;}
.snapshot-page .snap-accordion li {height:0; opacity:0; color:#20252a; font-size:16px; line-height:27px; letter-spacing:.02em; transition:opacity .2s, height .4s;}
.snapshot-page .snap-accordion li::before {content:"・"; padding-right:4px;}
.snapshot-page .snap-accordion:first-child li::before {content:none;}
.snapshot-page .snap-accordion h4.acc_open + ul {padding:23px 40px 31px;}
.snapshot-page .snap-accordion h4.acc_open + ul > li {height:auto; opacity:1;}
.snapshot-page .snap-accordion li small {font-size:12px;}
.snapshot-page .snap-accordion li a {color:var(--orange); text-decoration:underline;}
.snapshot-page .snap-accordion:nth-child(2) h4.acc_open + ul {padding-bottom:32px;}
.snapshot-page #content03 {padding:92px 0 144px; text-align:center; background:#eee9de url('../images/snapshot/bonus-background.webp') center top / cover no-repeat; position:static;}
.snapshot-page main .container .title {display:flex; align-items:center; justify-content:center; height:72px; max-width:none; margin:0 0 51px; line-height:0; text-indent:0;}
.snapshot-page main .container .title img {display:block; width:auto; height:92px; max-width:100%; object-fit:contain;}
.snapshot-page #content03 .tokuten {margin-bottom:0;}
.snapshot-page #content03 .tokuten__img {margin:0 0 6px;}
.snapshot-page #content03 .tokuten__img img {display:block; width:100%; height:auto;}
.snapshot-page #content03 .tokuten__ttl {width:fit-content; max-width:100%; margin:0 auto 12px; padding:9px 24px; border-radius:24px; color:white; background:var(--brown); font-size:18px; font-weight:600; line-height:26px; letter-spacing:.04em;}
.snapshot-page #content03 .tokuten__txt {margin:0; color:var(--brown); font-size:16px; font-weight:500; line-height:27px; letter-spacing:.03em;}
.snapshot-page .tokuten__txt strong {font-weight:600; color:var(--orange);font-size:120%;}
.snapshot-page #content03 .tokuten__txt small {font-size:14px;}
.snapshot-page .itemlist {padding:91px 0 145px;}
.snapshot-page .itemlist--ec {background:#ffc49f url('../images/snapshot/ec-background.webp') center top / cover no-repeat; border-block:10px solid var(--orange);}
.snapshot-page .itemlist--normal {background:var(--brown); color:white; padding-top:89px; padding-bottom:154px;}
.snapshot-page .itemlist--ec .container .title {color:var(--orange); margin-bottom:51px;}
.snapshot-page .itemlist--normal .container .title {margin-bottom:56px;}
.snapshot-page .itemlist__row {display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:64px 20px;}
.snapshot-page .item {min-width:0; display:flex; flex-direction:column;}
.snapshot-page .item__variants {font-size:14px; line-height:1.75; margin:0 0 16px; overflow-wrap:anywhere;}
.snapshot-page .item .item__price {margin-top:auto;}
.snapshot-page .item__gallery {position:relative; width:100%; aspect-ratio:1; background:#fff; overflow:hidden;}
.snapshot-page .item__slides {display:flex; width:100%; height:100%; margin:0; padding:0; list-style:none; transition:transform .35s ease;}
.snapshot-page .item__slide {flex:0 0 100%; width:100%; height:100%;}
.snapshot-page .item__slide button {display:block; width:100%; height:100%; padding:0; border:0; background:none; cursor:zoom-in;}
.snapshot-page .item__slide img {display:block; width:100%; height:100%; object-fit:cover;}
.snapshot-page .item__nav {position:absolute; top:50%; transform:translateY(-50%); width:23px; height:33px; border:0; padding:0; background:url('../images/sliderarrow.svg') no-repeat center / contain; cursor:pointer; filter:drop-shadow(0 0 2px #fff) drop-shadow(0 0 2px #fff);}
.snapshot-page .item__nav:hover {opacity:.7;}
.snapshot-page .item__nav--prev {left:8px; transform:translateY(-50%) scaleX(-1);}
.snapshot-page .item__nav--next {right:8px;}
.snapshot-page .item__dots {position:absolute; left:0; right:0; bottom:8px; display:flex; flex-wrap:wrap; justify-content:center; gap:6px; padding:0 40px; margin:0;}
.snapshot-page .item__dot {width:7px; height:7px; border-radius:50%; border:1px solid rgba(0,0,0,.2); background:rgba(255,255,255,.7); padding:0; cursor:pointer;}
.snapshot-page .item__dot.is-active {background:var(--brown); border-color:var(--brown);}
.snapshot-page .lightbox {position:fixed; inset:0; z-index:1000; display:flex; align-items:center; justify-content:center; background:rgba(20,16,14,.9); padding:56px;}
.snapshot-page .lightbox[hidden] {display:none;}
.snapshot-page .lightbox__img {display:block; max-width:100%; max-height:100%; box-shadow:0 10px 40px rgba(0,0,0,.5); background:#fff;}
.snapshot-page .lightbox__close {position:absolute; top:16px; right:16px; width:44px; height:44px; border:0; border-radius:50%; background:rgba(255,255,255,.9); color:var(--ink); font-size:24px; line-height:1; cursor:pointer;}
.snapshot-page .item__gallery .item__nav[hidden] {display:none;}
.snapshot-page .item__ttl {display:flex; align-items:flex-start; justify-content:space-between; gap:4px; font-size:24px; line-height:36px; font-weight:600; letter-spacing:0; margin:19px 0 28px;}
.snapshot-page .item__ttl span {min-width:0; font-feature-settings:"palt" 1;}
.snapshot-page .item__version, .snapshot-page .item__count {white-space:nowrap;}
.snapshot-page .item__fav {background:none; border:0; padding:0; width:40px; height:40px; flex-shrink:0;}
.snapshot-page .item__fav img {display:block; border-radius:50%;}
.snapshot-page .item__size, .snapshot-page .item__txt {font-size:16px; font-weight:400; line-height:24px; letter-spacing:.05em; text-align:left; margin:0;}
.snapshot-page .item__size {padding-left:10px; margin-bottom:11px;}
.snapshot-page .item__txt {min-height:96px; margin-bottom:23px;}
.snapshot-page .item__price {font-size:24px; line-height:36px; font-weight:600; margin:0 0 6px; letter-spacing:.02em;}
.snapshot-page .item__price small {font-size:80%;}
.snapshot-page .formbox .flex-box {display:flex; width:100%; flex-wrap:nowrap; justify-content:center; align-items:center; gap:7px; margin:0 0 23px; font-size:16px; line-height:33px;}
.snapshot-page .formbox label {margin:0; white-space:nowrap; flex-shrink:0;}
.snapshot-page .formbox .form__quantity {width:65px; min-width:0; height:33px; border:1px solid #ccc; border-radius:0; padding:2px 9px; color:var(--ink); background:white;}
.snapshot-page .formbox .form__select-row {justify-content:center;}
.snapshot-page .formbox .form__select {width:100%; max-width:220px; min-width:0; height:33px; border:1px solid #ccc; border-radius:0; padding:2px 9px; color:var(--ink); background:white; font-family:inherit; font-size:16px; text-align:center; text-align-last:center;}
.snapshot-page .formbox .form__tokuten {display:flex; flex-direction:column; align-items:center; gap:8px; margin:0 0 23px; text-align:center;}
.snapshot-page .formbox .form__tokuten_txt {font-size:14px; line-height:1.5;}
.snapshot-page .formbox .form__tokuten select {width:100%; max-width:220px; height:33px; border:1px solid #ccc; border-radius:0; padding:2px 9px; color:var(--ink); background:white; font-family:inherit; font-size:15px; text-align:center; text-align-last:center;}
.snapshot-page .form__btn {display:grid; gap:7px; width:405px; max-width:100%; margin:0 auto;}
.snapshot-page .formbox .form__btn button, .snapshot-page .formbox .form__btn a {max-width:none; width:100%; height:55px; margin:0; padding:0 12px; border:0; border-radius:3px; display:flex; align-items:center; justify-content:center; gap:7px; font-family:inherit; font-size:16px; font-weight:400; line-height:24px; letter-spacing:.07em; text-decoration:none; box-sizing:border-box;}
.snapshot-page .formbox .form__btn .form__cart {background:var(--orange); color:#fff;}
.snapshot-page .formbox .form__btn .form__detail {background:#fff; color:var(--ink);}
.snapshot-page button:disabled {opacity:1; cursor:not-allowed;}
.snapshot-page .itemlist--normal .item__ttl {margin-bottom:4px;}
.snapshot-page .itemlist--normal .item__txt {margin-bottom:25px;}
.snapshot-page footer {min-height:140px; padding:23px 0 24px;}
.snapshot-page footer .container {width:calc(100% - 40px); padding:0;}
.snapshot-page footer .nav {gap:22px; margin:12px 0 25px; font-size:16px; line-height:24px;}
.snapshot-page footer .nav-link {padding:0;}
.snapshot-page footer p {margin:0; line-height:24px; font-size:16px; text-align:center;}
.snapshot-page footer small {font-size:inherit;}
.snapshot-page :is(a,button,input,summary):focus-visible {outline:3px solid #147eb3; outline-offset:4px;}
@media (max-width:1040px) {
 .snapshot-page .mv__title {width:91.6%; margin-top:-4.6vw;}
 .snapshot-page .mv__copyright {font-size:clamp(10px,1.54vw,16px);}
 .snapshot-page .item__ttl {font-size:clamp(18px,2.3vw,24px);}
}
@media (max-width:767px) {
 .snapshot-page .sp_br {display:inline;}
 .snapshot-page .container,.snapshot-page #mainimage .mv {width:calc(100% - 32px);}
 .snapshot-page .head {height:64px;}
 .snapshot-page .head__brand img {width:130px; height:auto;}
 .snapshot-page .head__brand span {display:none;}
 .snapshot-page #mainimage {padding:20px 0 12px; background-size:auto 100%;}
 .snapshot-page .mv__title {width:96%; margin-top:-4.5vw;}
 .snapshot-page .mv__copyright {font-size:9px; line-height:16px; margin-top:9px;}
 .snapshot-page #content02 {padding:48px 0;}
 .snapshot-page #content02 h2 {font-size:clamp(16px,4.25vw,24px); line-height:1.65; letter-spacing:0; margin-bottom:28px;}
 .snapshot-page #content02 .intro_dayttl {height:46px; font-size:21px; margin-bottom:16px;}
 .snapshot-page #content02 .intro_day {font-size:17px; line-height:1.8;}
 .snapshot-page #content02 .info_dayarea {margin-bottom:28px;}
 .snapshot-page #detail {gap:20px;}
 .snapshot-page .snap-accordion h4 {font-size:17px; line-height:1.5; padding:15px 16px; min-height:54px; gap:8px;}
 .snapshot-page .snap-accordion ul {padding:0 16px;}
 .snapshot-page .snap-accordion h4.acc_open + ul,.snapshot-page .snap-accordion:nth-child(2) h4.acc_open + ul {padding:18px 16px 22px;}
 .snapshot-page .snap-accordion li {font-size:14px; line-height:1.8; letter-spacing:0;}
 .snapshot-page .snap-accordion li small {font-size:12px;}
 .snapshot-page #content03 {padding:48px 0 56px;}
 .snapshot-page main .container .title {height:50px; margin-bottom:28px;}
 .snapshot-page main .container .title img {height:56px; width:auto;}
 .snapshot-page #content03 .tokuten__ttl {font-size:13px; padding:10px 12px; line-height:1.7;}
 .snapshot-page #content03 .tokuten__txt {font-size:14px; line-height:1.9; letter-spacing:0;}
 .snapshot-page #content03 .tokuten__txt small {font-size:12px;}
 .snapshot-page .itemlist,.snapshot-page .itemlist--normal {padding:48px 0 56px;}
 .snapshot-page .itemlist--ec {border-width:6px; background-size:auto 100%;}
 .snapshot-page .itemlist--ec .container .title,.snapshot-page .itemlist--normal .container .title {margin-bottom:28px;}
 .snapshot-page .itemlist__row {grid-template-columns:minmax(0,1fr); gap:48px;}
 .snapshot-page .item__ttl,.snapshot-page .itemlist--normal .item__ttl {font-size:20px; line-height:30px; margin:16px 0;}
 .snapshot-page .item__size,.snapshot-page .item__txt {font-size:14px; line-height:1.75; letter-spacing:0;}
 .snapshot-page .item__size {padding-left:0; margin-bottom:12px;}
 .snapshot-page .item__txt,.snapshot-page .itemlist--normal .item__txt {min-height:0; margin-bottom:20px;}
 .snapshot-page .item__price {font-size:22px; line-height:33px; margin-bottom:12px;}
 .snapshot-page .item__nav {width:17px; height:24px;}
 .snapshot-page .lightbox {padding:24px;}
 .snapshot-page .lightbox__close {width:38px; height:38px; font-size:20px;}
 .snapshot-page .formbox .flex-box {margin-bottom:16px; min-height:44px;}
 .snapshot-page .formbox .form__quantity {height:44px; width:76px;}
 .snapshot-page .formbox .form__select {height:44px;}
 .snapshot-page .formbox .form__tokuten {margin-bottom:16px;}
 .snapshot-page .formbox .form__tokuten select {height:44px;}
 .snapshot-page .form__btn {width:100%; gap:9px;}
 .snapshot-page footer {padding:28px 0;}
 .snapshot-page footer .nav {font-size:12px; gap:12px 18px; margin:0 0 20px;}
 .snapshot-page footer p {font-size:10px; line-height:1.8;}
}
