@charset "UTF-8";
@import url("https://fonts.googleapis.com/css2?family=M+PLUS+Rounded+1c:wght@500;700;900&display=swap");
html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, menu, nav, output, ruby, section, summary, time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  font: inherit;
  font-size: 100%;
  vertical-align: baseline; }

html {
  line-height: 1; }

ol, ul, li {
  list-style: none; }

table {
  border-collapse: collapse;
  border-spacing: 0; }

caption, th, td {
  text-align: left;
  font-weight: normal;
  vertical-align: middle; }

q, blockquote {
  quotes: none; }

q:before, q:after, blockquote:before, blockquote:after {
  content: "";
  content: none; }

a img {
  border: none; }

article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section, summary {
  display: block; }

*,
*:before,
*:after {
  -webkit-box-sizing: border-box;
          box-sizing: border-box; }

a,
button {
  text-decoration: none;
  -webkit-transition: opacity .4s ease , color .4s ease , background-color .4s ease;
  transition: opacity .4s ease , color .4s ease , background-color .4s ease;
  color: #471f22; }
  a:hover,
  button:hover {
    opacity: .5; }
    @media (min-width: 1px) and (max-width: 1050px) {
      a:hover,
      button:hover {
        opacity: 1; } }

button {
  background-color: transparent;
  border: none;
  cursor: pointer;
  outline: none;
  padding: 0;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none; }

img {
  max-width: 100%;
  height: auto; }
  @media screen and (max-width: 767px) {
    img {
      width: 100%; } }

table {
  width: 100%; }

input[type="text"],
input[type="email"],
textarea {
  -webkit-appearance: none;
  border: none;
  font-family: inherit; }

input[type="text"]:focus,
input[type="email"]:focus {
  outline: 0; }

::-webkit-input-placeholder {
  color: #cccccc; }

:-ms-input-placeholder {
  color: #cccccc; }

::-ms-input-placeholder {
  color: #cccccc; }

::placeholder {
  color: #cccccc; }

/* IE */
:-ms-input-placeholder {
  color: #cccccc; }

/* Edge */
::-ms-input-placeholder {
  color: #cccccc; }

img, object {
  vertical-align: bottom;
  max-width: 100%;
  height: auto; }



/* ---------------------------------------
  html , body
-----------------------------------------*/
html {
  font-size: 62.5%;
  font-family: "Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo, "sans-serif";
}

body {
    -webkit-text-size-adjust: 100%;
    overflow: auto;
    color: #231815;
    position: relative;
    min-width: 1000px;
}

@media screen and (max-width: 767px) {
    body { min-width: inherit;}

}

/* ---------------------------------------
  .wrap
-----------------------------------------*/
.wrap {
    width: 96%;
    max-width: 1600px;
    margin: 0 auto;
}
.inner{
    width: 92%;
    max-width: 1000px;
    margin: 0 auto;
}
@media screen and (max-width: 767px) {
  .wrap {
        width: 100%;
        padding: 0;
    }
  .inner {
        width: 100%;
        padding: 0;
    }
}

/* ---------------------------------------
  .common
-----------------------------------------*/
.txt_sec {
    font-family: 'M PLUS Rounded 1c';
    color: #000;
    font-size: 2.2rem;
    line-height: calc(36/22);
    text-align: center;
}

.note_sec{
    font-family: 'M PLUS Rounded 1c';
    color: #000;
    font-size: 1.8rem;
    line-height: calc(30/18);
    text-align: center;
}

.red{
    color: #ea6353;
}

.aCen{
    text-align: center;
}
@media screen and (max-width: 767px) {
    .txt_sec {
        font-size: 3.3vw;
        line-height: calc(45/25);
        text-align: left;
    }

    .note_sec{
        font-size: 3vw;
        line-height: calc(30/18);
        text-align: left;
    }
}

/* ---------------------------------------
  .floating_btn
-----------------------------------------*/
.floating_btn {
  position: fixed;
  bottom: 3rem;
  right: 3rem;
  z-index: 999;
  opacity: 0;
  pointer-events: none;
  -webkit-transition: opacity .4s ease;
  transition: opacity .4s ease; }
  @media screen and (max-width: 767px) {
    .floating_btn {
      width: 26vw;
      bottom: 2rem;
      right: 0;
      }
}
  .floating_btn.scrolled {
    opacity: 1;
    pointer-events: auto; }

/* ---------------------------------------
.buylink__list
-----------------------------------------*/
.buylink {
  width: auto;
}

.buylink__ttl {
  display: none;
}

.buylink__list {
    display: flex;
    flex-wrap: wrap;
    gap:20px 20px;
    margin: 84px auto 0;
    width: 620px;
    border: none;
    border-radius: 0;
    background-color: transparent;
}

.buylink__list li {
    width: calc((100% - 20px) / 2);
}

.buylink__list a {
    font-size: 2.3rem;
    line-height: calc(36/26);
    color: #fff;
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 12px 0 0px;
    height: 90px;
    border: none;
    border-radius: 10px;
    background: linear-gradient(rgba(255,184,171,1) 0%, rgba(255,142,147,1) 50%, rgba(240,106,99,1) 100%);
    box-shadow: 0 10px 0 rgba(161,159,255,0.5);
    font-weight: bold;
}

.mac .buylink__list a {
    padding: 5px 0 0px;
}

.buylink__list a::before{
    content: "";
    position: absolute;
    top:4px;
    left:4px;
    width: calc(100% - 8px);
    height: 45px;
    border-radius: 8px 8px 0 0;
    background: linear-gradient(rgba(255,255,255,1) 0%, rgba(255,255,255,0.7) 20%, rgba(255,255,255,0) 80%);
}

.buylink__list a span::after {
    display: none;
}

.buylink__list-item:not(:last-of-type) .buylink__link{
    border-bottom: none;
}

@media screen and (max-width: 767px) {
    .buylink__list {
        gap:2.8vw 2.6vw;
        margin: 11vw auto 0;
        width: 76.4vw;
    }

    .buylink__list li {
        width: calc((100% - 2.6vw) / 2);
    }

    .buylink__list a {
        font-size: 2.8vw;
        line-height: calc(32/27);
        padding: 1vw 0 0px;
        height: 13.3vw;
        border-radius: 5px;
        box-shadow: 0 5px 0 rgba(161,159,255,0.5);
    }

    .buylink__list a::before{
        top:2px;
        left:2px;
        width: calc(100% - 4px);
        height: 6vw;
        border-radius: 4px 4px 0 0;
    }
}

/* ---------------------------------------
  .share_btn
-----------------------------------------*/
.share_btn {
    position: relative;
    padding: 103px 0 162px;
}
.share_btn .btn_wrap{
    text-align: center;
    margin: 0 auto;
}
.share_btn .sns_link {
    display: flex;
    gap:0 50px;
    justify-content: center;
}
.share_btn .sns_link img {
    width: 60px;
}
.share_btn .sns_link a {
    text-decoration: none;
    display: inline !important;
}
.share_btn .sns_link a:hover {
    text-decoration: none;
}
@media screen and (max-width: 767px) {
    .share_btn {
        padding: 17vw 0 10vw;
    }
    .share_btn .sns_link {
        gap:0 9.5vw;
    }
    .share_btn .sns_link img {
        width: 10vw;
    }
}

/* ---------------------------------------
  表示・非表示処理
-----------------------------------------*/
.pc_none {
  display: none; }
  @media screen and (max-width: 767px) {
    .pc_none {
      display: block; } }

@media screen and (max-width: 767px) {
  .sp_none {
    display: none; } }
