@charset "UTF-8";
html { font-size: 62.5%; }

body { color: #141414; font-family: "Noto Sans JP", sans-serif; font-optical-sizing: auto; font-style: normal; font-weight: 400; background-color: #ffffff; -webkit-text-size-adjust: 100%; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; font-feature-settings: "palt"; letter-spacing: 0.1em; }

main .inner { max-width: 1020px; margin: 0 auto; }

img { width: 100%; }

.visually-hidden { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; border: 0; }

@media screen and (max-width: 767px) { .u-hide-sp { display: none !important; }
  main p { font-size: calc((100vw * 16) / 375); line-height: calc(32 / 16); text-align: justify; } }
@media screen and (min-width: 768px) { .u-hide-pc { display: none !important; }
  a img:hover { filter: brightness(1.1); }
  main p { font-size: 1.6rem; line-height: calc(32 / 16); text-align: justify; } }
header h1 { margin: 0; }

main { position: relative; background-color: #f5f0e7; }
main .inner { width: calc(349 / 375 * 100%); margin: 0 auto; }
main .course { position: relative; display: flex; justify-content: space-between; }
main .course > div { width: calc(169 / 349 * 100%); }
main .course .counter { position: absolute; top: 80%; left: 5%; width: calc(118 / 349 * 100%); display: flex; justify-content: space-between; }
main .course .counter > div { width: calc(28 / 118 * 100%); }
main .entry { position: fixed; bottom: 0; z-index: 999; background-color: #5e8234; width: 100%; padding-top: min(calc(6 / 375 * 100vw), 20px); padding-bottom: min(calc(6 / 375 * 100vw), 20px); }
main .entry .entry-btn { display: flex; justify-content: space-between; width: calc(353 / 375 * 100%); margin: 0 auto; position: relative; left: min(calc(4 / 375 * 100vw), 4px); }
main .entry .entry-btn a { width: calc(172 / 353 * 100%); }
main .entry-period > div:nth-child(1) { margin-top: min(calc(10 / 375 * 100vw), 42px); }
main .entry-period > div:nth-child(2) { margin-top: min(calc(22 / 375 * 100vw), 30px); }
main .entry-period > div:nth-child(3) { margin-top: min(calc(14 / 375 * 100vw), 23px); }
main .entry-guide { background-color: #f9edb7; margin-top: min(calc(15 / 375 * 100vw), 30px); padding-top: min(calc(28 / 375 * 100vw), 56px); }
main .entry-guide .entry-method { background-color: #5e8234; padding: min(calc(14 / 375 * 100vw), 63px); border-radius: min(calc(19 / 375 * 100vw), 19px); }
main .entry-guide .entry-method figure { width: min(calc(161 / 375 * 100vw), 320px); margin: 0 auto; }
main .entry-guide .entry-method .entry-method__tit { font-size: clamp(1.6rem, calc((100vw * 23) / 375), 4.6rem); line-height: calc(27 / 23); text-align: center; color: #ffffff; font-weight: 700; margin-top: min(calc(10 / 375 * 100vw), 20px); }
main .entry-guide .entry-method .entry-method__tit span { color: #fee53d; }
main .entry-guide .entry-method .entry-method__txt { font-size: clamp(1.4rem, calc((100vw * 15) / 375), 3rem); line-height: calc(18 / 15); color: #ffffff; font-weight: 700; text-indent: -1em; padding-left: 1em; margin-top: 0.5em; }
main .entry-guide .entry-method .entry-method__notice { font-size: clamp(1.2rem, calc((100vw * 13) / 375), 2.6rem); line-height: calc(17 / 13); color: #ffffff; text-indent: -1em; padding-left: 1em; margin-top: 0.5em; letter-spacing: -0.03em; }
main .entry-step { background-color: #f9edb7; }
main .entry-step .entry-step__tit { width: calc(184 / 375 * 100%); margin: 0 auto; padding-top: min(calc(36 / 375 * 100vw), 92px); }
main .entry-step .entry-step__step { position: relative; width: calc(325 / 375 * 100%); padding-top: min(calc(28 / 375 * 100vw), 47px); margin: 0 auto; }
main .entry-step .entry-step__step + .entry-step__step { padding-top: min(calc(8 / 375 * 100vw), 10px); }
main .entry-step .entry-step__step figcaption { position: absolute; top: calc(230 / 375 * 100%); left: calc(120 / 375 * 100%); font-size: clamp(1rem, calc((100vw * 13) / 375), 2.6rem); line-height: calc(20 / 13); font-weight: 700; letter-spacing: -0.03em; }
main .entry-step .entry-step__step figcaption.entry-step__step2 { top: calc(245 / 375 * 100%); left: calc(125 / 375 * 100%); }
main .entry-step .entry-step__step figcaption.entry-step__step4 { top: calc(240 / 375 * 100%); }
main .entry-step .entry-step__step figcaption a { color: #e61816; border-bottom: 1px solid #e61816; }
main .prize { background-color: #f9edb7; padding-top: min(calc(65 / 375 * 100vw), 215px); }
main .prize > .inner { background-color: #ffffff; border-radius: min(calc(12 / 375 * 100vw), 22px); position: relative; padding-top: min(calc(22 / 375 * 100vw), 80px); padding-bottom: min(calc(17 / 375 * 100vw), 110px); }
main .prize > .inner h2 { position: absolute; top: 0; top: max(calc(-38 / 375 * 100vw), -80px); right: 0; left: 0; width: min(calc(70 / 375 * 100vw), 160px); margin: 0 auto; }
main .prize .prize-notice, main .prize .prize-notice__txt, main .prize .prize-notice__link, main .prize .prize-notes, main .prize .prize-notes__list { font-weight: 700; }
main .prize .prize-notice { font-size: clamp(1rem, calc((100vw * 10) / 375), 2rem); line-height: calc(13 / 10); }
main .prize .prize-notice__txt { font-size: clamp(1rem, calc((100vw * 14) / 375), 2.8rem); line-height: calc(18 / 14); letter-spacing: -0.03em; margin-top: 0.6em; }
main .prize .prize-notice__link { font-size: clamp(1rem, calc((100vw * 12) / 375), 2.4rem); line-height: calc(18 / 12); letter-spacing: -0.07em; margin-top: 1.6em; }
main .prize .prize-notice__link a { color: #347de0; }
main .prize .prize-notes, main .prize .prize-notes__list { font-size: clamp(1rem, calc((100vw * 11) / 375), 2.2rem); line-height: calc(14 / 11); letter-spacing: -0.03em; }
main .prize .prize-notes { margin-top: 1em; }
main .prize .prize-notes__list { list-style: none; padding-left: 0.6em; }
main .prize .prize-notes__list li { position: relative; }
main .prize .prize-notes__list li::before { content: ""; position: absolute; left: -0.5em; top: 0.6em; width: 0.2em; height: 0.2em; background-color: currentColor; border-radius: 50%; }
main .product { background-color: #f9edb7; padding-top: min(calc(55 / 375 * 100vw), 150px); padding-bottom: min(calc(50 / 375 * 100vw), 80px); }
main .product > .inner { background-color: #ffffff; border-radius: min(calc(12 / 375 * 100vw), 12px); position: relative; padding-top: min(calc(40 / 375 * 100vw), 110px); padding-bottom: min(calc(17 / 375 * 100vw), 74px); }
main .product > .inner h2 { position: absolute; top: 0; top: max(calc(-31 / 375 * 100vw), -71px); right: 0; left: 0; width: min(calc(70 / 375 * 100vw), 160px); margin: 0 auto; }
main .product .product-tit { background-color: #5e8234; padding-top: min(calc(8 / 375 * 100vw), 43px); padding-bottom: min(calc(10 / 375 * 100vw), 36px); text-align: center; }
main .product .product-tit img { width: min(calc(222 / 375 * 100vw), 870px); }
main .product .product-tit span { font-size: clamp(1rem, calc((100vw * 10) / 375), 2rem); line-height: calc(12 / 10); color: #ffffff; display: block; margin-top: 0.8em; }
main .product .product-btn { width: min(calc(295 / 375 * 100vw), 660px); margin: 0 auto; padding-top: min(calc(30 / 375 * 100vw), 60px); }
main .product .product-stores { width: min(calc(305 / 375 * 100vw), 678px); margin: 0 auto; border: 1px solid #5e8234; padding: 1em 1em 0.5em; padding-top: min(calc(10 / 375 * 100vw), 30px); padding-right: min(calc(10 / 375 * 100vw), 30px); padding-bottom: min(calc(5 / 375 * 100vw), 20px); padding-left: min(calc(10 / 375 * 100vw), 30px); margin-top: min(calc(50 / 375 * 100vw), 100px); position: relative; }
main .product .product-stores .product-stores__tit { position: absolute; top: max(calc(-8 / 375 * 100vw), -16px); left: min(calc(5 / 375 * 100vw), 18px); font-size: clamp(1rem, calc((100vw * 13) / 375), 2.6rem); line-height: calc(14 / 13); font-weight: 700; background-color: #ffffff; padding: 0 0.5em; }
main .product .product-stores .product-stores__txt { font-size: clamp(1rem, calc((100vw * 12) / 375), 2.4rem); line-height: calc(14 / 12); letter-spacing: -0.05em; font-weight: 700; }
main .product .product-stores .product-stores__txt span { display: block; color: #e61816; text-indent: -1em; padding-left: 1em; }
main .product .product-list { display: flex; flex-wrap: wrap; row-gap: min(calc(24 / 375 * 100vw), 48px); margin-top: min(calc(27 / 375 * 100vw), 54px); }
main .product .product-list li { width: 50%; text-align: center; }
main .product .product-list li img { width: 53%; }
main .product .product-list li p { font-size: clamp(1rem, calc((100vw * 10) / 375), 2rem); line-height: calc(12 / 10); text-align: center; font-weight: 700; margin-top: 0.8em; }
main .product .product-list li p span { display: block; font-weight: 400; margin-top: 0.5em; }
main .delivery { background-color: #e4e8dc; padding-top: min(calc(50 / 375 * 100vw), 160px); }
main .delivery > .inner { background-color: #ffffff; border-radius: min(calc(12 / 375 * 100vw), 15px); position: relative; padding-top: min(calc(40 / 375 * 100vw), 125px); padding-bottom: min(calc(17 / 375 * 100vw), 40px); }
main .delivery > .inner h2 { position: absolute; top: 0; top: max(calc(-31 / 375 * 100vw), -72px); right: 0; left: 0; width: min(calc(70 / 375 * 100vw), 160px); margin: 0 auto; }
main .delivery > .inner .delivery-send { font-size: clamp(1rem, calc((100vw * 12) / 375), 2.4rem); line-height: calc(17 / 12); font-weight: 700; margin: 0 auto; text-align: left; width: calc(277 / 349 * 100%); display: flex; }
main .delivery > .inner .delivery-send__txt { font-size: clamp(1rem, calc((100vw * 12) / 375), 2.4rem); line-height: calc(15 / 12); text-align: center; letter-spacing: -0.03em; margin-top: 0.8em; }
main .delivery > .inner .delivery-send__notice { font-size: clamp(1rem, calc((100vw * 10) / 375), 2rem); line-height: calc(13 / 10); letter-spacing: -0.03em; width: fit-content; margin: 0 auto; margin-top: 1em; }
main .delivery > .inner .delivery-send__charge { font-size: clamp(1rem, calc((100vw * 12) / 375), 2.4rem); line-height: calc(18 / 12); text-align: center; font-weight: 700; margin-top: 2em; }
main .delivery > .inner .delivery-send__chargeimg { width: min(calc(330 / 375 * 100vw), 926px); margin-right: auto; margin-left: auto; }
main .receipt-photo { background-color: #e4e8dc; padding-top: min(calc(33 / 375 * 100vw), 66px); }
main .receipt-photo > .inner { background-color: #ffffff; border-radius: min(calc(12 / 375 * 100vw), 24px); padding-top: min(calc(26 / 375 * 100vw), 56px); padding-bottom: min(calc(42 / 375 * 100vw), 84px); }
main .receipt-photo > .inner h2 { width: min(calc(260 / 375 * 100vw), 500px); margin: 0 auto; }
main .receipt-photo > .inner h3 { width: min(calc(325 / 375 * 100vw), 650px); margin: 0 auto; margin-top: min(calc(40 / 375 * 100vw), 80px); }
main .receipt-photo > .inner .receipt-photo__tit { font-size: clamp(1rem, calc((100vw * 15) / 375), 3rem); line-height: calc(18 / 15); text-align: center; font-weight: 700; margin-top: 1em; }
main .receipt-photo > .inner > .receipt-photo__img { width: min(calc(320 / 375 * 100vw), 770px); margin: 0 auto; margin-top: min(calc(12 / 375 * 100vw), 24px); }
main .receipt-photo > .inner .receipt-photo__notice { font-size: clamp(1rem, calc((100vw * 13) / 375), 2.6rem); line-height: calc(16 / 13); padding: 1.4em 1.4em 0; }
main .receipt-photo > .inner .receipt-photo__notice span { display: inline-block; text-indent: -1em; padding-left: 1em; }
main .receipt-photo > .inner .receipt-photo__example.receipt-photo__example--good { margin-top: min(calc(28 / 375 * 100vw), 56px); }
main .receipt-photo > .inner .receipt-photo__example.receipt-photo__example--good .receipt-photo__item .receipt-photo__img { width: min(calc(213 / 375 * 100vw), 426px); margin: 0 auto; }
main .receipt-photo > .inner .receipt-photo__example.receipt-photo__example--good .receipt-photo__item .receipt-photo__desc { font-size: clamp(1rem, calc((100vw * 14) / 375), 2.8rem); line-height: calc(18 / 14); font-weight: 700; padding: 0 1em; margin-top: 1em; }
main .receipt-photo > .inner .receipt-photo__example.receipt-photo__example--good .receipt-photo__item + .receipt-photo__item { margin-top: min(calc(20 / 375 * 100vw), 40px); }
main .receipt-photo > .inner .receipt-photo__example.receipt-photo__example--bad { display: flex; flex-wrap: wrap; justify-content: space-between; row-gap: 1.7em; width: min(calc(311 / 375 * 100vw), 622px); margin: 0 auto; margin-top: min(calc(22 / 375 * 100vw), 44px); }
main .receipt-photo > .inner .receipt-photo__example.receipt-photo__example--bad .receipt-photo__item { width: min(calc(148 / 375 * 100vw), 296px); }
main .receipt-photo > .inner .receipt-photo__example.receipt-photo__example--bad .receipt-photo__desc { font-size: clamp(1rem, calc((100vw * 15) / 375), 3rem); line-height: calc(14 / 15); font-weight: 700; text-align: center; margin-top: 0.4em; }
main .accordion { position: relative; background-color: #e4e8dc; }
main .accordion .accordion__head { position: relative; display: block; width: min(calc(309 / 375 * 100vw), 618px); background: none; border: none; margin: 0 auto; padding: 0; cursor: pointer; z-index: 1; }
main .accordion .accordion__head::before { content: ""; display: block; width: 100%; height: 0; padding-bottom: calc(94 / 618 * 100%); transition: background-image 0.3s ease, opacity 0.3s ease; opacity: 1; }
main .accordion .accordion__head.is-open::before { opacity: 1; }
main .accordion .accordion__body { display: none; animation: fade-in 0.3s ease; }
main .accordion .accordion__body.is-open { display: block; }
main .accordion.faq { padding-top: min(calc(46 / 375 * 100vw), 92px); }
main .accordion.faq p { padding-right: min(calc(20 / 375 * 100vw), 40px); padding-left: min(calc(55 / 375 * 100vw), 110px); position: relative; display: flex; align-items: center; }
main .accordion.faq p::before { position: absolute; left: min(calc(16 / 375 * 100vw), 32px); content: ""; width: min(calc(28 / 375 * 100vw), 56px); height: min(calc(28 / 375 * 100vw), 56px); background-size: contain; background-repeat: no-repeat; z-index: 1; display: block; }
main .accordion.faq p.faq__question { min-height: 3.7em; }
main .accordion.faq p.faq__answer { min-height: 6em; }
main .accordion.faq p:nth-child(4n + 1), main .accordion.faq p:nth-child(4n + 2) { background-color: rgba(255, 255, 255, 0.5); }
main .accordion.faq .faq__question { font-size: clamp(1rem, calc((100vw * 14) / 375), 2.8rem); line-height: calc(18 / 14); font-weight: 700; padding-top: min(calc(27 / 375 * 100vw), 54px); }
main .accordion.faq .faq__question::before { background-image: url("../images/faq_q.png"); top: min(calc(27 / 375 * 100vw), 54px); }
main .accordion.faq .faq__answer { font-size: clamp(1rem, calc((100vw * 12) / 375), 2.4rem); line-height: calc(16 / 12); padding-top: min(calc(14 / 375 * 100vw), 28px); padding-bottom: min(calc(27 / 375 * 100vw), 54px); }
main .accordion.faq .faq__answer::before { background-image: url("../images/faq_a.png"); top: min(calc(16 / 375 * 100vw), 32px); }
main .accordion.faq .accordion__head::before { background: url("../images/faq.png") no-repeat center/contain; }
main .accordion.faq .accordion__head.is-open::before { background-image: url("../images/faq_open.png"); }
main .accordion.guidelines { padding-top: min(calc(30 / 375 * 100vw), 60px); }
main .accordion.guidelines .accordion__head::before { background: url("../images/guidelines.png") no-repeat center/contain; }
main .accordion.guidelines .accordion__head.is-open::before { background-image: url("../images/guidelines_open.png"); }
main .accordion.guidelines .accordion__body { background-color: #ffffff; padding-top: min(calc(36 / 375 * 100vw), 72px); padding-bottom: min(calc(28 / 375 * 100vw), 56px); padding-right: 1.5em; padding-left: 1.5em; margin-top: max(calc(-21 / 375 * 100vw), -42px); }
main .accordion.guidelines .accordion__body h2, main .accordion.guidelines .accordion__body h3, main .accordion.guidelines .accordion__body p { font-size: clamp(1rem, calc((100vw * 12) / 375), 2.4rem); line-height: calc(18 / 12); font-weight: 700; }
main .accordion.guidelines .accordion__body h2 { margin-top: 1.4em; }
main .accordion.guidelines .accordion__body p { letter-spacing: -0.03em; }
main .accordion.guidelines .accordion__body p a { text-decoration: underline; }
main .accordion.guidelines .accordion__body p + p, main .accordion.guidelines .accordion__body p + h3 { margin-top: 1em; }
main .accordion.privacy-policy { padding-top: min(calc(30 / 375 * 100vw), 60px); }
main .accordion.privacy-policy .accordion__head::before { background: url("../images/privacy-policy.png") no-repeat center/contain; }
main .accordion.privacy-policy .accordion__head.is-open::before { background-image: url("../images/privacy-policy_open.png"); }
main .accordion.privacy-policy .accordion__body { background-color: #ffffff; padding-top: min(calc(36 / 375 * 100vw), 72px); padding-bottom: min(calc(28 / 375 * 100vw), 56px); padding-right: 1.5em; padding-left: 1.5em; margin-top: max(calc(-21 / 375 * 100vw), -42px); }
main .accordion.privacy-policy .accordion__body h2, main .accordion.privacy-policy .accordion__body p { font-size: clamp(1rem, calc((100vw * 12) / 375), 2.4rem); line-height: calc(18 / 12); font-weight: 700; }
main .accordion.privacy-policy .accordion__body h2 { margin-top: 1.4em; }
main .accordion.privacy-policy .accordion__body h2:first-of-type { margin-top: 0; }
main .accordion.privacy-policy .accordion__body p { letter-spacing: -0.03em; }
main .cp-contact { background-color: #e4e8dc; padding-top: min(calc(37 / 375 * 100vw), 74px); }
main .cp-contact .cp-contact__inner { background-color: #ffffff; width: calc(309 / 375 * 100%); margin: 0 auto; border-radius: min(calc(12 / 375 * 100vw), 12px); padding-top: min(calc(13 / 375 * 100vw), 26px); padding-bottom: min(calc(10 / 375 * 100vw), 20px); }
main .cp-contact .cp-contact__inner .cp-contact__title { color: #eb5c20; font-size: clamp(1rem, calc((100vw * 19) / 375), 3.8rem); line-height: calc(25 / 19); text-align: center; border-bottom: 2px solid #eb5c20; width: fit-content; margin: 0 auto; }
main .cp-contact .cp-contact__inner .cp-contact__office, main .cp-contact .cp-contact__inner .cp-contact__email { font-size: clamp(1rem, calc((100vw * 14) / 375), 2.8rem); line-height: calc(20 / 14); font-weight: 700; }
main .cp-contact .cp-contact__inner .cp-contact__office { margin-top: 0.6em; }
main .cp-contact .cp-contact__inner .cp-contact__email { color: #eb5c20; margin-top: 0.5em; }
main .cp-contact .cp-contact__inner .cp-contact__email::before { display: inline-block; content: ""; width: min(calc(22 / 375 * 100vw), 44px); height: min(calc(15 / 375 * 100vw), 30px); background-image: url("../images/email.png"); background-repeat: no-repeat; background-size: contain; margin-right: 0.5em; }
main .cp-contact .cp-contact__inner .cp-contact__period { font-size: clamp(1rem, calc((100vw * 13) / 375), 2.6rem); line-height: calc(16 / 13); margin-top: 0.8em; }
main .cp-contact .cp-contact__inner .cp-contact__period .cp-contact__label { font-weight: 700; }
main .cp-contact .cp-contact__inner .cp-contact__holiday, main .cp-contact .cp-contact__inner .cp-contact__note { font-size: clamp(1rem, calc((100vw * 10) / 375), 2rem); line-height: calc(12 / 10); }
main .cp-contact .cp-contact__inner .cp-contact__holiday { margin-top: 0.5em; }
main .cp-contact .cp-contact__inner .cp-contact__note { margin-top: 1em; }
main .cp-contact .cp-contact__inner .cp-contact__office, main .cp-contact .cp-contact__inner .cp-contact__email, main .cp-contact .cp-contact__inner .cp-contact__period, main .cp-contact .cp-contact__inner .cp-contact__holiday, main .cp-contact .cp-contact__inner .cp-contact__note { text-align: center; letter-spacing: -0.03em; }
main .link { background-color: #e4e8dc; padding-top: min(calc(37 / 375 * 100vw), 74px); padding-bottom: min(calc(37 / 375 * 100vw), 74px); }
main .link ul { width: calc(309 / 375 * 100%); margin: 0 auto; }
main .link ul li { font-size: clamp(1rem, calc((100vw * 15) / 375), 3rem); line-height: calc(15 / 15); }
main .link ul li::before { content: "▶︎"; }
main .link ul li + li { margin-top: 1em; }
@keyframes fade-in { from { opacity: 0; transform: translateY(-5px); }
  to { opacity: 1; transform: translateY(0); } }
footer { padding-top: min(calc(20 / 375 * 100vw), 40px); padding-bottom: min(calc(95 / 375 * 100vw), 200px); text-align: center; }
footer img { width: calc(62 / 375 * 100%); }

.pagetop { position: fixed; right: 2%; bottom: min(calc(82 / 375 * 100vw), 164px); width: min(calc(50 / 375 * 100vw), 75px); height: min(calc(50 / 375 * 100vw), 75px); background: none; border: none; padding: 0; cursor: pointer; display: none; z-index: 100; }
.pagetop img { width: 100%; height: auto; display: block; transition: opacity 0.3s ease, transform 0.3s ease; }
.pagetop:hover img { opacity: 0.8; transform: translateY(-3px); }
.pagetop.is-show { display: block; animation: fadeIn 0.3s ease; }
.pagetop.is-stop { position: absolute; bottom: min(calc(15 / 375 * 100vw), 156px); }

@keyframes fadeIn { from { opacity: 0; transform: translateY(10px); }
  to { opacity: 1; transform: translateY(0); } }
@media screen and (min-width: 768px) { main .main__inner { padding-left: 20px; padding-right: 20px; }
  main .main__inner .inner { width: 100%; }
  main .main__inner .course > div { width: calc(486 / 1020 * 100%); }
  main .main__inner .course .counter { left: 7.8%; width: calc(293 / 1020 * 100%); }
  main .main__inner .entry { margin-left: -20px; margin-right: -20px; padding-top: 20px; padding-bottom: 20px; }
  main .main__inner .entry .entry-btn { max-width: 1020px; left: 0; }
  main .main__inner .entry .entry-btn a { width: calc(486 / 1020 * 100%); }
  main .main__inner .entry-period > div:nth-child(2), main .main__inner .entry-period > div:nth-child(3) { max-width: 810px; margin-right: auto; margin-left: auto; }
  main .main__inner .entry-guide { margin-left: -20px; margin-right: -20px; padding-left: 20px; padding-right: 20px; }
  main .main__inner .entry-guide .entry-method .entry-method-inner { display: flex; column-gap: 32px; margin-bottom: 50px; }
  main .main__inner .entry-guide .entry-method .entry-method-inner figure { width: calc(330 / 894 * 100%); margin-top: 20px; }
  main .main__inner .entry-guide .entry-method .entry-method-inner .entry-method-inner__txt { flex: 1; }
  main .main__inner .entry-guide .entry-method .entry-method-inner .entry-method-inner__txt .entry-method__tit { font-size: 4rem; text-align: left; margin-top: 0; }
  main .main__inner .entry-guide .entry-method .entry-method-inner .entry-method-inner__txt .entry-method__txt { font-size: 2.2rem; }
  main .main__inner .entry-guide .entry-method .entry-method-inner .entry-method-inner__txt .entry-method__txt.entry-method__txt--first { margin-top: 1em; }
  main .main__inner .entry-guide .entry-method .entry-method__notice { font-size: 2rem; }
  main .main__inner .entry-step { margin-left: -20px; margin-right: -20px; padding-left: 20px; padding-right: 20px; }
  main .main__inner .entry-step .entry-step__tit { max-width: 354px; }
  main .main__inner .entry-step .entry-step__step { max-width: 808px; }
  main .main__inner .entry-step .entry-step__step figcaption { top: calc(220 / 343 * 100%); left: calc(225 / 808 * 100%); font-size: 2.2rem; line-height: calc(28 / 22); }
  main .main__inner .entry-step .entry-step__step figcaption.entry-step__step4 { top: calc(245 / 343 * 100%); }
  main .main__inner .prize { margin-left: -20px; margin-right: -20px; padding-left: 20px; padding-right: 20px; }
  main .main__inner .prize > .inner { padding-bottom: 110px; }
  main .main__inner .prize > .inner .prize-img { max-width: 808px; margin-right: auto; margin-left: auto; }
  main .main__inner .prize .prize-notice, main .main__inner .prize .prize-notice__txt, main .main__inner .prize .prize-notice__link, main .main__inner .prize .prize-notes, main .main__inner .prize .prize-notes__list { max-width: 680px; }
  main .main__inner .prize .prize-notice { font-size: 1.2rem; line-height: calc(13 / 12); text-align: center; margin-top: 20px; }
  main .main__inner .prize .prize-notice__txt { font-size: 2rem; line-height: calc(30 / 20); text-align: center; margin-top: 40px; }
  main .main__inner .prize .prize-notice__link { font-size: 1.4rem; line-height: calc(18 / 14); text-align: center; margin-top: 20px; }
  main .main__inner .prize .prize-notes, main .main__inner .prize .prize-notes__list { font-size: 1.4rem; line-height: calc(20 / 14); }
  main .main__inner .prize .prize-notes { margin-top: 30px; }
  main .main__inner .product { margin-left: -20px; margin-right: -20px; padding-left: 20px; padding-right: 20px; }
  main .main__inner .product .product-tit span { font-size: 2.4rem; line-height: calc(29 / 24); }
  main .main__inner .product .product-btn { padding-top: 38px; }
  main .main__inner .product .product-btn--first { padding-top: 56px; }
  main .main__inner .product .product-stores { margin-top: 75px; padding: 28px 30px 20px; }
  main .main__inner .product .product-stores .product-stores__tit, main .main__inner .product .product-stores .product-stores__txt { font-size: 2.6rem; line-height: calc(30 / 26); }
  main .main__inner .product .product-stores .product-stores__tit { left: 18px; }
  main .main__inner .product .product-list li { width: 25%; }
  main .main__inner .product .product-list li img { width: 57%; }
  main .main__inner .product .product-list li p { font-size: 1.6rem; line-height: calc(19 / 16); letter-spacing: -0.03em; padding-right: 0.5em; padding-left: 0.5em; }
  main .main__inner .delivery { margin-left: -20px; margin-right: -20px; padding-left: 20px; padding-right: 20px; }
  main .main__inner .delivery .delivery-send { font-size: 3.3rem; line-height: calc(50 / 33); width: calc(100% - 3em); text-indent: -5.5em; padding-left: 5.5em; display: block; }
  main .main__inner .delivery .delivery-send__txt { font-size: 1.8rem; line-height: calc(22 / 18); margin-top: 47px; }
  main .main__inner .delivery .delivery-send__notice { font-size: 1.2rem; line-height: calc(13 / 12); margin-top: 40px; }
  main .main__inner .delivery .delivery-send__charge { font-size: 2rem; line-height: calc(28 / 20); margin-top: 75px; }
  main .main__inner .delivery .delivery-send__chargeimg { margin-top: 40px; }
  main .main__inner .receipt-photo { margin-left: -20px; margin-right: -20px; padding-left: 20px; padding-right: 20px; }
  main .main__inner .receipt-photo > .inner { padding-top: 80px; padding-bottom: 110px; }
  main .main__inner .receipt-photo > .inner h3 { width: 100%; max-width: 805px; margin-top: 120px; }
  main .main__inner .receipt-photo > .inner .receipt-photo__tit { font-size: 3rem; line-height: calc(30 / 30); margin-top: 75px; }
  main .main__inner .receipt-photo > .inner > .receipt-photo__img { margin-top: 57px; }
  main .main__inner .receipt-photo > .inner .receipt-photo__notice { font-size: 1.8rem; line-height: calc(23 / 18); padding: 60px 60px 0; }
  main .main__inner .receipt-photo > .inner .receipt-photo__example.receipt-photo__example--good { display: flex; justify-content: space-between; max-width: 770px; margin-right: auto; margin-left: auto; }
  main .main__inner .receipt-photo > .inner .receipt-photo__example.receipt-photo__example--good .receipt-photo__item { width: calc(368 / 770 * 100%); }
  main .main__inner .receipt-photo > .inner .receipt-photo__example.receipt-photo__example--good .receipt-photo__item .receipt-photo__img { width: 100%; }
  main .main__inner .receipt-photo > .inner .receipt-photo__example.receipt-photo__example--good .receipt-photo__item .receipt-photo__desc { font-size: 2.4rem; line-height: calc(32 / 24); padding: 0; }
  main .main__inner .receipt-photo > .inner .receipt-photo__example.receipt-photo__example--good .receipt-photo__item .receipt-photo__desc span { display: inline-block; text-indent: -0.6em; padding-left: 0.6em; }
  main .main__inner .receipt-photo > .inner .receipt-photo__example.receipt-photo__example--good .receipt-photo__item + .receipt-photo__item { margin-top: 0; }
  main .main__inner .receipt-photo > .inner .receipt-photo__example.receipt-photo__example--bad { margin-top: 38px; row-gap: 38px; width: 100%; max-width: 770px; }
  main .main__inner .receipt-photo > .inner .receipt-photo__example.receipt-photo__example--bad .receipt-photo__item { width: calc(368 / 770 * 100%); }
  main .main__inner .receipt-photo > .inner .receipt-photo__example.receipt-photo__example--bad .receipt-photo__item .receipt-photo__desc { font-size: 3.6rem; line-height: calc(36 / 36); }
  main .main__inner .accordion { margin-left: -20px; margin-right: -20px; padding-left: 20px; padding-right: 20px; }
  main .main__inner .accordion .accordion__head { width: 100%; max-width: 660px; }
  main .main__inner .accordion .accordion__head::before { padding-bottom: calc(52 / 660 * 100%); }
  main .main__inner .accordion .accordion__body { max-width: 660px; margin: auto; }
  main .main__inner .accordion.faq { padding-top: 83px; }
  main .main__inner .accordion.faq .accordion__head::before { background: url("../images/faq-pc.png") no-repeat center/contain; }
  main .main__inner .accordion.faq .accordion__head.is-open::before { background-image: url("../images/faq_open-pc.png"); }
  main .main__inner .accordion.faq p { padding-right: 20px; padding-left: 70px; }
  main .main__inner .accordion.faq p::before { width: 40px; height: 40px; left: 18px; }
  main .main__inner .accordion.faq .faq__question { font-size: 2rem; line-height: calc(24 / 20); padding-top: 23px; }
  main .main__inner .accordion.faq .faq__question::before { top: 28px; }
  main .main__inner .accordion.faq .faq__answer { font-size: 1.6rem; line-height: calc(22 / 16); padding-top: 10px; padding-bottom: 20px; min-height: 5em; }
  main .main__inner .accordion.faq .faq__answer::before { top: 16px; }
  main .main__inner .accordion.guidelines { padding-top: 36px; }
  main .main__inner .accordion.guidelines .accordion__head::before { background: url("../images/guidelines-pc.png") no-repeat center/contain; }
  main .main__inner .accordion.guidelines .accordion__head.is-open::before { background-image: url("../images/guidelines_open-pc.png"); }
  main .main__inner .accordion.guidelines .accordion__body { max-width: 900px; margin-top: -26px; padding: 50px 42px; }
  main .main__inner .accordion.guidelines .accordion__body h2, main .main__inner .accordion.guidelines .accordion__body h3, main .main__inner .accordion.guidelines .accordion__body p { font-size: 1.6rem; line-height: calc(24 / 16); }
  main .main__inner .accordion.privacy-policy { padding-top: 36px; }
  main .main__inner .accordion.privacy-policy .accordion__head::before { background: url("../images/privacy-policy-pc.png") no-repeat center/contain; }
  main .main__inner .accordion.privacy-policy .accordion__head.is-open::before { background-image: url("../images/privacy-policy_open-pc.png"); }
  main .main__inner .accordion.privacy-policy .accordion__body { max-width: 900px; margin-top: -26px; padding: 50px 42px; }
  main .main__inner .accordion.privacy-policy .accordion__body h2, main .main__inner .accordion.privacy-policy .accordion__body p { font-size: 1.6rem; line-height: calc(24 / 16); }
  main .main__inner .cp-contact { margin-left: -20px; margin-right: -20px; padding-left: 20px; padding-right: 20px; padding-top: 90px; }
  main .main__inner .cp-contact .cp-contact__inner { max-width: 1020px; padding: 40px 20px; }
  main .main__inner .cp-contact .cp-contact__inner .cp-contact__title { font-size: 4.8rem; border-bottom: 5px solid #eb5c20; }
  main .main__inner .cp-contact .cp-contact__inner .cp-contact__office { font-size: 3.2rem; line-height: calc(40 / 32); margin-top: 55px; }
  main .main__inner .cp-contact .cp-contact__inner .cp-contact__email { font-size: 2.7rem; line-height: calc(39 / 27); margin-top: 30px; }
  main .main__inner .cp-contact .cp-contact__inner .cp-contact__email::before { background-image: url("../images/email-pc.png"); }
  main .main__inner .cp-contact .cp-contact__inner .cp-contact__period { font-size: 2rem; line-height: calc(28 / 20); margin-top: 35px; }
  main .main__inner .cp-contact .cp-contact__inner .cp-contact__period .cp-contact__time { padding-left: 1em; }
  main .main__inner .cp-contact .cp-contact__inner .cp-contact__holiday { font-size: 2rem; line-height: calc(28 / 20); margin-top: 50px; }
  main .main__inner .cp-contact .cp-contact__inner .cp-contact__note { font-size: 1.6rem; line-height: calc(20 / 16); margin-top: 24px; }
  main .main__inner .link { margin-left: -20px; margin-right: -20px; padding-left: 20px; padding-right: 20px; padding-top: 92px; padding-bottom: 156px; }
  main .main__inner .link ul { display: flex; justify-content: space-between; max-width: 1020px; flex-wrap: wrap; row-gap: 2em; } }
@media screen and (min-width: 768px) and (min-width: 1100px) { main .main__inner .link ul { flex-wrap: nowrap; } }
@media screen and (min-width: 768px) { main .main__inner .link ul li { font-size: 1.5rem; line-height: calc(15 / 15); margin-top: 0; width: 50%; } }
@media screen and (min-width: 768px) and (min-width: 1100px) { main .main__inner .link ul li { width: auto; } }

@media screen and (min-width: 768px) { footer { padding-top: 30px; padding-bottom: min(calc(40px + (100vw / 12) + 40px), 170px); text-align: center; }
  footer img { width: calc(62 / 375 * 100%); width: 100%; max-width: 150px; }
  .pagetop { bottom: min(calc(40px + (100vw / 12) + 26px), 156px); }
  .pagetop.is-stop { bottom: 26px; } }
@media (min-width: 1020px) { .main__inner { padding-left: 0; padding-right: 0; } }


.entry{
    translate: 0 100%;
    transition: all 300ms ease-out;
}

.remain_checked .entry{
    translate: 0 0;
}

.sentyaku_closed .entry-btn {
    justify-content: center !important;
}

/* teaser closed */
/*
main .entry::before{
  display: flex;
  align-items: center;
  justify-content: center;
  content: "本キャンペーンは" "\A" "2025年11月1日（土）0：00より開始いたします。";
  position: absolute;
  width: 100%;
  height: 100%;
  z-index: 999;
  background-color: rgba(15,111,186,0.90);
  margin-top: max(calc(-6 / 375 * 100vw), -20px);
  color: #ffffff;
  font-size: clamp(1rem, calc((100vw * 14) / 375), 2.8rem);
  font-weight: 700;
  text-align: center;
  white-space: pre;
  line-height: 1.4;
}
@media screen and (min-width: 768px){
  main .entry::before{
    margin-top: -20px;
  }
}
*/


