@charset "UTF-8";
.loading {
  position: fixed;
  width: 100%;
  height: 100%;
  /* 背景色の設定 */
  background-color: #fff0f0;
  z-index: 9999;
  top: 0;
  left: 0;
  display: flex;
  justify-content: center;
  align-items: center;
}

.loading_img {
  display: block;
  width: min(30%, 200px);
  height: min(30%, 200px);
  position: absolute;
  z-index: 99999;
  top: 40%;
  left: 10%;
  right: 0;
  margin: 0 auto;
}

.wobble-hor-bottom {
  animation: wobble-hor-bottom 0.8s ease 1s both;
}

/* ----------------------------------------------
 * Generated by Animista on 2024-8-14 14:14:14
 * Licensed under FreeBSD License.
 * See http://animista.net/license for more info.
 * w: http://animista.net, t: @cssanimista
 * ---------------------------------------------- */
/**
 * ----------------------------------------
 * animation wobble-hor-bottom
 * ----------------------------------------
 */
@keyframes wobble-hor-bottom {
  0%, 100% {
    transform: translateX(0%);
    transform-origin: 50% 50%;
  }
  15% {
    transform: translateX(-30px) rotate(-6deg);
  }
  30% {
    transform: translateX(15px) rotate(6deg);
  }
  45% {
    transform: translateX(-15px) rotate(-3.6deg);
  }
  60% {
    transform: translateX(9px) rotate(2.4deg);
  }
  75% {
    transform: translateX(-6px) rotate(-1.2deg);
  }
}
:root {
  --color-brown:#5E3825;
  --color-pink: #DE4C84;
  --color-l-pink: #EC95B7;
  --color-green: #418C5D;
  --color-ocher: #C18953;
  --color-red: #D9383E;
  --color-blue: #4593D0;
  --bg-yellow: #FFFBD2;
  --bg-beige: #FFEBD2;
  --bg-brown: #F1DFC7;
  --bg-pink: #ffdbea;
  --bg-white: #FEFEFE;
  --w375-2px: min(0.53vw, 3.2px);
  --w375-3px: min(.8vw, 4.8px);
  --w375-6px: min(1.6vw, 9.6px);
  --w375-8px: min(2.135vw, 12.8px);
  --w375-10px: min(2.67vw, 16px);
  --w375-12px: min(3.2vw, 19.2px);
  --w375-14px: min(3.73vw, 22.4px);
  --w375-16px: min(4.27vw, 25.6px);
  --w375-18px: min(4.8vw, 28.8px);
  --w375-19px: min(5.07vw, 30.4px);
  --w375-20px: min(5.33vw, 32px);
  --w375-24px: min(6.4vw, 38.4px);
  --w375-30px: min(8vw, 48px);
  --w375-32px: min(8.53vw, 51.2px);
  --w375-40px: min(10.66vw, 64px);
  --w375-80px: min(21.32vw, 128px);
}

body {
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  color: var(--color-brown);
  line-height: 1.5;
}

/* Chromeで画像がぼけるのを防止 */
@media  {
  img {
    image-rendering: -webkit-optimize-contrast;
  }
}
img {
  width: 100%;
  height: auto;
}

svg {
  display: block;
  margin: 0;
  padding: 0;
}

.sp_first__allwrap {
  width: 100%;
}

/* メインコンテンツ */
.sp_first__main--wrap {
  width: 100%;
  margin: 0 auto;
}

@media (min-width: 600px) {
  .sp_first__main--wrap {
    width: 600px;
  }
}
/* メインコンテンツ */
.sp_first__main--wrap {
  width: 100%;
  margin: 0 auto;
}

@media (min-width: 600px) {
  .sp_first__main--wrap {
    width: 600px;
  }
}
.section_img, .section_img.pink {
  width: 100%;
  aspect-ratio: 600/17.85;
  height: -moz-fit-content;
  height: fit-content;
  margin-bottom: -1px;
  margin-top: var(--w375-32px);
}

.section_img.pink {
  fill: var(--bg-pink);
}

.section_img.white {
  width: 100%;
  fill: var(--bg-white);
}

.section_img.yellow {
  width: 100%;
  fill: var(--bg-yellow);
}

.section_img.brown {
  width: 100%;
  fill: var(--color-brown);
}

.sec_title-img, .sec_title-img-w50, .goods_title-img-w90, .sec_title-img-w90 {
  display: block;
  margin: 0 auto;
  margin-bottom: var(--w375-24px);
}

.sec_title-img-w90 {
  width: 90%;
  margin-bottom: var(--w375-24px);
}

.goods_title-img-w90 {
  width: 90%;
  margin: var(--w375-40px) auto var(--w375-16px);
}

.sec_title-img-w90.card_add-title {
  margin: var(--w375-16px) auto calc(var(--w375-8px) * -1);
}

.sec_title-img-w50 {
  width: 50%;
}

#section1, #section3, #section5 {
  padding-top: var(--w375-40px);
  background-color: var(--bg-pink);
}

#section2, #section4, #section6 {
  padding-top: var(--w375-40px);
  background-color: var(--bg-white);
}

#section7 {
  padding-top: var(--w375-40px);
  background-color: var(--color-brown);
  padding-bottom: var(--w375-32px);
}

.faq_wrapper {
  font-weight: 700;
  color: var(--bg-white);
}

.sponsored_txt {
  text-align: center;
  font-size: var(--w375-24px);
  margin-bottom: var(--w375-8px);
}

.cooperation_box {
  display: grid;
  width: -moz-fit-content;
  width: fit-content;
  margin: 0 auto;
  grid-template-columns: var(--w375-40px) 1fr;
  gap: var(--w375-16px);
  font-size: var(--w375-16px);
  margin-bottom: var(--w375-40px);
}

.faq_rarytitle {
  display: grid;
  width: -moz-fit-content;
  width: fit-content;
  margin: 0 auto;
  font-size: var(--w375-20px);
  text-align: center;
  border-bottom: var(--w375-3px) dotted var(--bg-white);
  padding-bottom: var(--w375-3px);
  margin-bottom: var(--w375-6px);
}

.faq_txt {
  font-size: var(--w375-16px);
  text-align: center;
}

.faq_wrapper > .btn_basic {
  margin-bottom: 0;
}

.txt_bold, .txt_bold-20px, .txt_bold-20px-bd-btm, .txt_bold-20px-center, .txt_bold-16px, .txt_bold-16px-center {
  font-weight: 700;
}

.txt_middle, .txt_middle-14px {
  font-weight: 400;
}

.txt_center, .txt_bold-20px-center, .txt_bold-16px-center {
  text-align: center;
  margin: 0 auto var(--w375-16px);
}

.txt_border-btm, .txt_bold-20px-bd-btm {
  border-bottom: var(--w375-2px) solid var(--color-brown);
  padding-bottom: var(--w375-2px);
  margin-bottom: var(--w375-12px);
}

.txt_middle-14px {
  font-size: var(--w375-14px);
}

.txt_accent {
  font-weight: 700;
  color: var(--color-red);
}

.txt_bold-16px, .txt_bold-16px-center {
  font-size: var(--w375-16px);
}

.txt_bold-20px, .txt_bold-20px-bd-btm, .txt_bold-20px-center {
  font-size: var(--w375-20px);
}

.txt_bold-20px-center.pink {
  color: var(--color-pink);
}

.txt_bold-20px-bd-btm {
  display: inline-block;
}

.sentence_textbox, .sentence_textbox-w90 {
  margin: 0 auto;
  text-align: justify;
  font-feature-settings: "pkna" 1;
  line-break: strict;
  overflow-wrap: break-word;
  hanging-punctuation: last allow-end;
  margin-bottom: var(--w375-16px);
}

.sentence_textbox-w90 {
  width: 90%;
}

.sentence_textbox li, .sentence_textbox-w90 li {
  margin-bottom: var(--w375-6px);
  padding-left: var(--w375-14px);
  text-indent: calc(var(--w375-14px) * -1);
}

.sentence_textbox li:before, .sentence_textbox-w90 li:before {
  content: "※";
}

.txt_num {
  font-size: var(--w375-32px);
  padding: 0 var(--w375-12px) var(--w375-6px) var(--w375-6px);
  letter-spacing: calc(var(--w375-10px) * -1);
}

.txt_comma {
  letter-spacing: calc(var(--w375-20px) * -1);
}

.txt_big {
  font-size: 1.3em;
}

.notice_box {
  width: 100%;
  background-color: var(--bg-white);
  border-radius: var(--w375-16px);
  color: var(--color-red);
  padding: var(--w375-16px);
  margin-bottom: var(--w375-8px);
}

.notice_title {
  font-weight: 700;
  font-size: var(--w375-18px);
  line-height: 1.3;
  text-align: center;
  margin-bottom: var(--w375-8px);
}

.btn_rary {
  width: 90%;
  display: grid;
  place-items: center;
  margin: 0 auto var(--w375-16px);
  aspect-ratio: 337.5/53.13;
}

.btn_basic, .btn_basic-first {
  width: 90%;
  display: block;
  background-color: var(--bg-white);
  border: var(--w375-2px) solid var(--color-brown);
  font-size: var(--w375-19px);
  font-weight: 600;
  color: var(--color-brown);
  margin: var(--w375-16px) auto var(--w375-32px);
  border-radius: 9999px;
  line-height: 1;
}

.btn_basic-first {
  margin: var(--w375-16px) auto;
}

.btn_basic-inner {
  display: flex;
  text-align: center;
  align-items: center;
  justify-content: center;
  gap: var(--w375-12px);
  margin-bottom: var(--w375-4px);
  margin: var(--w375-8px) 0 var(--w375-10px) var(--w375-8px);
}

.polygon {
  display: flex;
  gap: var(--w375-3px);
  margin-top: var(--w375-2px);
}

.polygon span {
  content: "";
  display: block;
  height: calc(1.7320508076 * var(--w375-18px) / 2);
  width: var(--w375-8px);
  clip-path: polygon(0 0, 100% 50%, 0 100%);
  background-color: var(--color-brown);
}

.floating_btn {
  display: block;
  margin-left: auto;
  position: fixed;
  z-index: 100;
  bottom: var(--w375-16px);
  right: var(--w375-16px);
}

.floating_btn img {
  width: var(--w375-80px);
  height: var(--w375-80px);
}

.follow-please {
  display: block;
  margin: var(--w375-16px) auto;
  width: 90%;
}

.follow-please_il {
  display: block;
  width: 65%;
  margin: 0 auto;
}

.follow-please_btn {
  display: block;
  width: 100%;
  margin: 0 auto;
}

.heartbeat {
  animation: heartbeat 1.5s ease-in-out infinite both;
}

/**
* ----------------------------------------
* animation heartbeat
* ----------------------------------------
*/
@keyframes heartbeat {
  from {
    transform: scale(1);
    transform-origin: center center;
    animation-timing-function: ease-out;
  }
  10% {
    transform: scale(0.91);
    animation-timing-function: ease-in;
  }
  17% {
    transform: scale(0.98);
    animation-timing-function: ease-out;
  }
  33% {
    transform: scale(0.87);
    animation-timing-function: ease-in;
  }
  45% {
    transform: scale(1);
    animation-timing-function: ease-out;
  }
}
.sp_first__mainvisual {
  position: relative;
}

.maintitle_top {
  position: relative;
}

.btn_main {
  display: flex;
  flex-direction: column;
  gap: var(--w375-6px);
  width: 56%;
  position: absolute;
  bottom: 5%;
  left: 0;
  right: 0;
  margin: 0 auto;
}

.maintitle_btm {
  background-color: var(--bg-yellow);
  padding-top: var(--w375-16px);
}
.maintitle_btm .sec_title-img-w90 {
  margin-bottom: var(--w375-12px);
}

@media (min-width: 600px) {
  html body {
    background-attachment: fixed;
    background-size: cover;
  }
}
/* 全体のwrap(pc表示) */
.sp_first__allwrap {
  display: flex;
}

/* pcメニューとQR*/
.pc-anchor__g-nav,
.pc-g-nav__QR {
  display: none;
}

@media (min-width: 1090px) {
  /* pcメニュー */
  .pc-anchor__g-nav {
    font-weight: 300;
    display: flex;
    flex-direction: column;
    height: 100vh;
    width: calc((100vw - 600px) / 2);
    align-items: center;
    justify-content: center;
    overflow: hidden;
    position: fixed;
    left: 0;
    top: 0;
  }
  .pc-anchor__g-nav ul li {
    position: relative;
    font-size: 1.1rem;
    line-height: 2.3;
    letter-spacing: 0.1em;
    font-weight: 500;
    color: var(--color-brown);
    padding: 0 0 0 2rem;
  }
  .pc-anchor__g-nav ul li.current a {
    color: var(--color-pink);
    border-bottom: 2px solid var(--color-pink);
    font-weight: 800;
    padding-bottom: 4px;
  }
  .pc-anchor__g-nav ul li.current a::before {
    position: absolute;
    left: -16px;
    top: 4px;
    width: 40px;
    height: 40px;
    content: "";
    display: block;
    background: url(../images/pcmenu_icon.webp) 0 0 no-repeat;
    background-size: contain;
  }
  .pc-g-nav__QR {
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
    height: 100vh;
    width: calc((100vw - 600px) / 2);
    align-items: center;
    justify-content: center;
    overflow: hidden;
    position: fixed;
    right: 0;
    top: 0;
    text-align: center;
    padding: 2rem 4rem 2rem 2rem;
    font-weight: 700;
    font-size: 1.3rem;
    line-height: 2;
    color: var(--color-pink);
  }
}
@media (min-width: 1090px) and (max-width: 1300px) {
  .pc-g-nav__QR {
    padding: 1rem;
  }
}
@media (min-width: 1090px) {
  .QR_wrap {
    max-width: 160px;
    display: flex;
    gap: 1rem;
    flex-direction: column;
  }
}
.howto_img-container {
  display: grid;
  grid-template-columns: 0.7fr 1fr;
  aspect-ratio: 10/4.5;
  overflow: hidden;
  margin-top: var(--w375-32px);
}

.sp_prepare-img {
  display: block;
  margin-left: calc(var(--w375-40px) * -1);
}

.howto_card-container {
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: var(--w375-16px);
}
.howto_card-container .card {
  width: 90%;
  margin: 0 auto;
  position: relative;
  background-color: var(--bg-beige);
  border-radius: var(--w375-16px);
  padding: var(--w375-32px) 0 var(--w375-16px);
}

.howto_num {
  position: absolute;
  z-index: 5;
  top: var(--w375-16px);
  left: var(--w375-16px);
  width: var(--w375-40px);
  height: var(--w375-40px);
}

.howto_img {
  display: block;
  width: 80%;
  margin: 0 auto var(--w375-16px);
}

.card_triangle {
  display: block;
  margin: 0 auto;
  height: var(--w375-32px);
  width: var(--w375-40px);
  clip-path: polygon(50% 100%, 0 0, 100% 0);
  background-color: var(--color-pink);
}

.t-card-container {
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: var(--w375-16px);
  margin-bottom: var(--w375-24px);
}

.t-card {
  width: 90%;
  margin: 0 auto;
  position: relative;
  border-radius: var(--w375-16px);
  border: var(--w375-3px) solid;
}

.t-card_inner {
  padding: var(--w375-16px);
}

.t-card_inner > img {
  width: 100%;
  margin-bottom: var(--w375-16px);
}

.t-card_title, .t-card_title-bg-transparent {
  width: 100%;
  text-align: center;
  border-radius: var(--w375-12px) var(--w375-12px) 0 0;
  padding: var(--w375-8px) 0 var(--w375-12px);
  line-height: 1.3;
}

.t-card_title-txt {
  font-family: "Zen Maru Gothic", serif;
  font-weight: 700;
  font-style: normal;
  font-size: var(--w375-30px);
  text-align: center;
}

.t-card_title-subtxt {
  display: grid;
  place-items: center;
  width: -moz-fit-content;
  width: fit-content;
  margin: 0 auto;
  margin-bottom: var(--w375-6px);
  margin-top: var(--w375-2px);
  padding: var(--w375-40px);
  padding-top: var(--w375-6px);
  padding-bottom: var(--w375-6px);
  font-family: "Zen Maru Gothic", serif;
  font-weight: 700;
  font-style: normal;
  font-size: var(--w375-20px);
  background-color: var(--bg-white);
  border-radius: 9999px;
  line-height: 1;
}

.t-card.beige {
  background-color: var(--bg-beige);
  padding: var(--w375-32px) 0 var(--w375-16px);
  border-color: var(--bg-beige);
}

.t-card.pink {
  border-color: var(--bg-pink);
}

.t-card_title.pink, .pink.t-card_title-bg-transparent {
  background-color: var(--bg-pink);
}

.t-card_title-txt.pink {
  color: var(--color-pink);
}

.t-card.brown {
  border-color: var(--bg-brown);
}

.t-card_title.brown, .brown.t-card_title-bg-transparent {
  background-color: var(--bg-brown);
}

.t-card_title-txt.brown {
  color: var(--color-brown);
}

.t-card.green {
  border-color: var(--color-green);
}

.t-card_title.green, .green.t-card_title-bg-transparent {
  background-color: var(--color-green);
}

.t-card_title-subtxt.green {
  color: var(--color-green);
}

.t-card.ocher {
  border-color: var(--color-ocher);
}

.t-card_title.ocher, .ocher.t-card_title-bg-transparent {
  background-color: var(--color-ocher);
}

.t-card_title-subtxt.ocher {
  color: var(--color-ocher);
}

.t-card.red {
  border-color: var(--color-red);
}

.t-card_title.red, .red.t-card_title-bg-transparent {
  background-color: var(--color-red);
}

.t-card_title-subtxt.red {
  color: var(--color-red);
}

.t-card.blue {
  border-color: var(--color-blue);
}

.t-card_title.blue, .blue.t-card_title-bg-transparent {
  background-color: var(--color-blue);
}

.t-card_title-subtxt.blue {
  color: var(--color-blue);
}

.t-card_title-txt.white {
  color: var(--bg-white);
}

.t-card_title-bg-transparent {
  padding: var(--w375-16px) 0 0;
}

.place_box {
  border-radius: var(--w375-12px);
  border: var(--w375-3px) solid;
  padding: var(--w375-6px) 0 var(--w375-12px);
}

.place_box > p {
  margin-bottom: 0;
  line-height: 1;
}

.place_box > .txt_bold-20px-bd-btm,
.useplace_box > .inner > article > .txt_bold-20px-bd-btm {
  display: flex;
  align-items: center;
  justify-content: center;
  width: -moz-fit-content;
  width: fit-content;
  margin: 0 auto;
  margin-bottom: var(--w375-6px);
}

.goods_box {
  display: grid;
  grid-template-columns: 0.3fr 1fr;
  gap: var(--w375-12px);
  align-items: center;
  margin-bottom: var(--w375-16px);
  line-height: 1.3;
  letter-spacing: -0.05em;
}

.goods_box.clearfile {
  grid-template-columns: repeat(2, 1fr);
}

.useplace_box {
  background-color: var(--bg-pink);
  border-radius: var(--w375-12px);
  padding: var(--w375-16px) var(--w375-16px) 0;
  margin-top: var(--w375-16px);
}

.useplace_box > .inner {
  display: flex;
  flex-direction: column;
  gap: var(--w375-16px);
}

.useplace_box > .inner > article > ul {
  width: -moz-fit-content;
  width: fit-content;
  margin: 0 auto;
}

.useplace_box > .inner > article > ul > li {
  font-weight: 700;
  font-size: var(--w375-16px);
}

.useplace_box > .inner > article > ul > li:before {
  content: "●";
  color: var(--color-l-pink);
  margin-right: var(--w375-2px);
}

.spot_img {
  position: relative;
  display: block;
  overflow: hidden;
  border-radius: 0 0 var(--w375-12px) var(--w375-12px);
}

.icon_quiz {
  position: absolute;
  z-index: 5;
  top: var(--w375-8px);
  left: var(--w375-8px);
  width: min(16vw, 96px);
}

.spot_img .btn_basic {
  position: absolute;
  z-index: 5;
  bottom: var(--w375-16px);
  left: 0;
  right: 0;
  margin: 0 auto;
}

.shadow_img {
  display: block;
  width: 95%;
  margin: 0 auto;
  filter: drop-shadow(0 var(--w375-2px) var(--w375-12px) rgba(0, 0, 0, 0.2));
}

.t-card_triangle {
  display: block;
  margin: 0 auto;
  height: var(--w375-32px);
  width: var(--w375-40px);
  clip-path: polygon(50% 100%, 0 0, 100% 0);
  background-color: var(--color-pink);
}/*# sourceMappingURL=style.css.map */