@charset "UTF-8";
@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100;300;400;500;700;900&display=swap");
@import "./destyle.min.css";
.row {
  display: flex;
  flex-wrap: wrap;
}
.row .col {
  display: flex;
  flex-direction: column;
}
@media screen and (max-width: 768px) {
  .row .col {
    padding: 0;
  }
}
.row .col.col-1 {
  width: 8.3333333333%;
}
.row .col.col-2 {
  width: 16.6666666667%;
}
.row .col.col-3 {
  width: 25%;
}
.row .col.col-4 {
  width: 33.3333333333%;
}
.row .col.col-5 {
  width: 41.6666666667%;
}
.row .col.col-6 {
  width: 50%;
}
.row .col.col-7 {
  width: 58.3333333333%;
}
.row .col.col-8 {
  width: 66.6666666667%;
}
.row .col.col-9 {
  width: 75%;
}
.row .col.col-10 {
  width: 83.3333333333%;
}
.row .col.col-11 {
  width: 91.6666666667%;
}
.row .col.col-12 {
  width: 100%;
}
html,
body {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 500;
}

img {
  max-width: 100%;
}

p {
  font-size: 0.8125rem;
  font-weight: 600;
  line-height: 1.8em;
}

a {
  transition: 0.3s;
}

a:hover {
  opacity: 0.7;
}

#general {
  display: flex;
  max-width: 1366px;
  margin: 0 auto;
}

header {
  position: fixed;
  width: 100%;
  top: 0;
  left: 0;
  right: 0;
  display: flex;
  z-index: 9999;
  max-width: 1366px;
  margin: 0 auto;
}
header .header_dummy_width {
  width: calc(100% - 375px);
}
@media screen and (max-width: 768px) {
  header .header_dummy_width {
    display: none;
  }
}
header .header_wrapper {
  max-width: 375px;
}
@media screen and (max-width: 768px) {
  header .header_wrapper {
    max-width: 480px;
  }
}
header .header_wrapper {
  background-color: #ffffff;
  margin: 0 auto;
  padding: 0 8px;
}
header .header_wrapper .header_contents {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 6.3px 0px;
}
header .header_wrapper .header_contents .logo_area {
  width: 40%;
}
header .header_wrapper .header_contents .logo_area h1.title_logo {
  display: flex;
}
header .header_wrapper .header_contents .logo_area h1.title_logo > figure, header .header_wrapper .header_contents .logo_area h1.title_logo a, header .header_wrapper .header_contents .logo_area h1.title_logo div {
  width: 50%;
  max-width: 46px;
}
@media screen and (max-width: 768px) {
  header .header_wrapper .header_contents .logo_area h1.title_logo > figure, header .header_wrapper .header_contents .logo_area h1.title_logo a, header .header_wrapper .header_contents .logo_area h1.title_logo div {
    max-width: 76px;
  }
}
@media screen and (max-width: 414px) {
  header .header_wrapper .header_contents .logo_area h1.title_logo > figure, header .header_wrapper .header_contents .logo_area h1.title_logo a, header .header_wrapper .header_contents .logo_area h1.title_logo div {
    max-width: 46px;
  }
}
header .header_wrapper .header_contents .logo_area h1.title_logo > .main_logo {
  margin-right: 10px;
  margin-top: 3px;
}
header .header_wrapper .header_contents .logo_area h1.title_logo > .since_logo {
  padding: 3px;
}
header .header_wrapper .header_contents .anchor_area {
  display: flex;
  width: 60%;
}
header .header_wrapper .header_contents .anchor_area a {
  margin-left: 8px;
}

@media screen and (max-width: 768px) {
  #mainContents {
    border: none;
    margin: 0 auto;
  }
}

main {
  padding-top: 40px;
  position: relative;
  z-index: 0;
}
@media screen and (max-width: 768px) {
  main {
    margin: 0 auto;
  }
}
main::before {
  content: "";
  position: fixed;
  top: auto;
  left: 0;
  bottom: 0;
  width: 100%;
  height: 100%;
  background-image: url("../images/pc-bg.png");
  background-position: center;
  background-size: cover;
  background-repeat: no-repeat;
  z-index: -1;
}
main .container {
  display: flex;
  max-width: 1366px;
  margin: 0 auto;
}

#pc-kv {
  position: sticky;
  height: 100%;
  top: 40px;
  width: calc(100% - 375px);
  padding: 0 20px;
  z-index: 1;
  max-height: calc(100vh - 40px);
}
#pc-kv img {
  width: 100%;
  height: inherit;
  object-fit: contain;
}
@media screen and (max-width: 768px) {
  #pc-kv {
    display: none;
  }
}
#pc-kv figure.pc-logo {
  width: 12dvw;
  height: 12dvh;
  max-width: 208px;
  position: absolute;
  z-index: 1;
}
#pc-kv figure.pc-kv {
  margin: -30px;
  position: relative;
  left: -30px;
  height: 77vh;
}
#pc-kv .row.pc-kv-row {
  height: 70dvh;
}
@media screen and (max-width: 1260px) {
  #pc-kv .row.pc-kv-row {
    height: 66dvh;
  }
}
@media screen and (max-width: 1260px) and (max-height: 980px) {
  #pc-kv .row.pc-kv-row {
    height: 70dvh;
  }
}
@media screen and (max-width: 1140px) {
  #pc-kv .row.pc-kv-row {
    height: 60dvh;
  }
}
@media screen and (max-width: 1140px) and (max-height: 980px) {
  #pc-kv .row.pc-kv-row {
    height: 70dvh;
  }
}
@media screen and (max-width: 1040px) {
  #pc-kv .row.pc-kv-row {
    height: 57dvh;
  }
}
@media screen and (max-width: 1040px) and (max-height: 980px) {
  #pc-kv .row.pc-kv-row {
    height: 70dvh;
  }
}
@media screen and (max-width: 980px) {
  #pc-kv .row.pc-kv-row {
    height: 50dvh;
  }
}
@media screen and (max-width: 980px) and (max-height: 980px) {
  #pc-kv .row.pc-kv-row {
    height: 70dvh;
  }
}
@media screen and (max-width: 880px) {
  #pc-kv .row.pc-kv-row {
    height: 47dvh;
  }
}
@media screen and (max-width: 880px) and (max-height: 980px) {
  #pc-kv .row.pc-kv-row {
    height: 70dvh;
  }
}
#pc-kv .row.pc-Btn {
  height: 20dvh;
  flex-wrap: nowrap;
}
#pc-kv .row.pc-Btn .col.col-3.pc-Btn-col {
  padding: 24px 8px;
  width: 25dvh;
  align-items: center;
  margin: auto;
}
#pc-kv .row.pc-Btn .col.col-3.pc-Btn-col a img {
  height: 100%;
}

.swiper {
  width: 100%;
}

article {
  max-width: 375px;
  width: 100%;
}
@media screen and (max-width: 768px) {
  article {
    max-width: 480px;
  }
}
article {
  margin: 0 auto;
  overflow: hidden;
  background-color: #ffffff;
  position: relative;
  z-index: 10;
}

section#kv .content_block .content_inner > .row.kv_bg {
  position: relative;
  height: 408px;
  max-height: 408px;
}
@media screen and (max-width: 768px) {
  section#kv .content_block .content_inner > .row.kv_bg {
    height: 110vw;
    max-height: 530px;
  }
}
@media screen and (max-width: 576px) {
  section#kv .content_block .content_inner > .row.kv_bg {
    height: 110vw;
    max-height: 520px;
  }
}
@media screen and (max-width: 414px) {
  section#kv .content_block .content_inner > .row.kv_bg {
    height: 110vw;
    max-height: 110vw;
  }
}
@media screen and (max-width: 375px) {
  section#kv .content_block .content_inner > .row.kv_bg {
    height: 110vw;
    max-height: 110vw;
  }
}
section#kv .content_block .content_inner > .row.kv_bg {
  background-image: url("../images/kv-bg.png");
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
  z-index: 0;
}
section#kv .content_block .content_inner > .row.kv_bg::before {
  content: "";
  position: absolute;
  inset: 0; /* 上下左右0 */
  border: 46px solid transparent;
  border-image-source: url("../images/kv-frame.png");
  border-image-slice: 180;
  border-image-repeat: repeat;
  pointer-events: none;
  z-index: -1;
}
section#kv .content_block .content_inner > .row.kv_bg .col .kv_elm-wrapper {
  width: 100%;
  height: 100%;
  display: block;
}
section#kv .content_block .content_inner > .row.kv_bg .col .kv_elm-wrapper > img {
  opacity: 1.3;
  position: absolute;
  top: 0;
}
section#kv .content_block .content_inner > .row.kv_bg .col .kv_elm-wrapper > div {
  width: 100%;
  height: 100%;
  display: block;
  /* リボンたち */
}
section#kv .content_block .content_inner > .row.kv_bg .col .kv_elm-wrapper > div.rbn_area {
  overflow: hidden;
  position: relative;
}
section#kv .content_block .content_inner > .row.kv_bg .col .kv_elm-wrapper > div.rbn_area .item.item-01 {
  top: 0;
  right: 0;
  bottom: -83%;
  left: -11%;
  width: 15px;
  height: 19px;
  margin: auto;
}
section#kv .content_block .content_inner > .row.kv_bg .col .kv_elm-wrapper > div.rbn_area .item.item-02 {
  top: 0;
  right: 0;
  bottom: 16%;
  left: -70%;
  width: 8px;
  height: 7px;
  margin: auto;
}
section#kv .content_block .content_inner > .row.kv_bg .col .kv_elm-wrapper > div.rbn_area .item.item-03 {
  top: 0;
  right: 86%;
  bottom: -30%;
  left: 0%;
  width: 20px;
  height: 21px;
  margin: auto;
}
section#kv .content_block .content_inner > .row.kv_bg .col .kv_elm-wrapper > div.rbn_area .item.item-04 {
  top: 0;
  right: 0%;
  bottom: 85%;
  left: 12%;
  width: 7px;
  height: 9px;
  margin: auto;
}
section#kv .content_block .content_inner > .row.kv_bg .col .kv_elm-wrapper > div.rbn_area .item.item-05 {
  top: 0;
  right: -35%;
  bottom: 98%;
  left: 0%;
  width: 14px;
  height: 18px;
  margin: auto;
}
section#kv .content_block .content_inner > .row.kv_bg .col .kv_elm-wrapper > div.rbn_area .item.item-06 {
  top: 66%;
  right: 41%;
  bottom: 0%;
  left: 0%;
  width: 36px;
  height: 51px;
  margin: auto;
}
section#kv .content_block .content_inner > .row.kv_bg .col .kv_elm-wrapper > div.rbn_area .item.item-07 {
  top: -79%;
  right: 24%;
  bottom: 0%;
  left: 0%;
  width: 45px;
  height: 61px;
  margin: auto;
}
section#kv .content_block .content_inner > .row.kv_bg .col .kv_elm-wrapper > div.rbn_area .item.item-08 {
  top: 25%;
  right: -80%;
  bottom: 0%;
  left: 0%;
  width: 16px;
  height: 21px;
  margin: auto;
}
section#kv .content_block .content_inner > .row.kv_bg .col .kv_elm-wrapper > div {
  /* 写真たち */
}
section#kv .content_block .content_inner > .row.kv_bg .col .kv_elm-wrapper > div.item_kv_area {
  overflow: hidden;
  position: absolute;
  top: 0;
}
section#kv .content_block .content_inner > .row.kv_bg .col .kv_elm-wrapper > div.item_kv_area .item.item-img-01 {
  top: 0;
  right: 0;
  bottom: -81%;
  left: -36.2%;
  width: 42px;
  height: 49px;
  z-index: 1;
  margin: auto;
}
section#kv .content_block .content_inner > .row.kv_bg .col .kv_elm-wrapper > div.item_kv_area .item.item-img-02 {
  top: 0;
  right: 0;
  bottom: -4%;
  left: -75%;
  width: 106px;
  height: 63px;
  z-index: 0;
  margin: auto;
}
section#kv .content_block .content_inner > .row.kv_bg .col .kv_elm-wrapper > div.item_kv_area .item.item-img-03 {
  top: 0;
  right: -43%;
  bottom: -76%;
  left: 0%;
  width: 60px;
  height: 50px;
  z-index: 1;
  margin: auto;
}
section#kv .content_block .content_inner > .row.kv_bg .col .kv_elm-wrapper > div.item_kv_area .item.item-img-04 {
  top: 0;
  right: 0%;
  bottom: 28%;
  left: -74%;
  width: 47px;
  height: 49px;
  z-index: 0;
  margin: auto;
}
section#kv .content_block .content_inner > .row.kv_bg .col .kv_elm-wrapper > div.item_kv_area .item.item-img-05 {
  top: 0;
  right: 50%;
  bottom: 82%;
  left: 0%;
  width: 99px;
  height: 68px;
  z-index: 1;
  margin: auto;
}
section#kv .content_block .content_inner > .row.kv_bg .col .kv_elm-wrapper > div.item_kv_area .item.item-img-06 {
  top: -8%;
  right: -71%;
  bottom: 0%;
  left: 0%;
  width: 76px;
  height: 51px;
  z-index: 0;
  margin: auto;
}
section#kv .content_block .content_inner > .row.kv_bg .col .kv_elm-wrapper > div.item_kv_area .item.item-img-07 {
  top: -75%;
  right: -7%;
  bottom: 0%;
  left: 0%;
  width: 61px;
  height: 61px;
  z-index: 0;
  margin: auto;
}
section#kv .content_block .content_inner > .row.kv_bg .col .kv_elm-wrapper > div.item_kv_area .item.item-img-08 {
  top: 34%;
  right: -49%;
  bottom: 0%;
  left: 0%;
  width: 54px;
  height: 48px;
  z-index: 1;
  margin: auto;
}
section#kv .content_block .content_inner > .row.kv_bg .col .kv_elm-wrapper > div.item_kv_area .item.item-img-09 {
  top: 22.5%;
  right: 58%;
  bottom: 0%;
  left: 0%;
  width: 93px;
  height: 48px;
  z-index: 0;
  margin: auto;
}
section#kv .content_block .content_inner > .row.kv_bg .col .kv_elm-wrapper > div.item_kv_area .item.item-img-10 {
  top: -83%;
  right: -54%;
  bottom: 0%;
  left: 0%;
  width: 86px;
  height: 60px;
  z-index: 0;
  margin: auto;
}
section#kv .content_block .content_inner > .row.kv_bg .col .kv_elm-wrapper > div.item_kv_area .item.item-img-11 {
  top: -53%;
  right: -71%;
  bottom: 0%;
  left: 0%;
  width: 76px;
  height: 79px;
  z-index: 0;
  margin: auto;
}
section#kv .content_block .content_inner > .row.kv_bg .col .kv_elm-wrapper > div.item_kv_area .item.item-img-12 {
  top: -61%;
  right: 71%;
  bottom: 0%;
  left: 0%;
  width: 84px;
  height: 88px;
  z-index: 0;
  margin: auto;
}
section#kv .content_block .content_inner > .row.kv_bg .col .kv_elm-wrapper > div.item_kv_area .item.item-img-13 {
  top: 58%;
  right: -68%;
  bottom: 0%;
  left: 0%;
  width: 99px;
  height: 103px;
  z-index: 0;
  margin: auto;
}
section#kv .content_block .content_inner > .row.kv_bg .col .kv_elm-wrapper > div.item_kv_area .item.item-img-14 {
  top: 63%;
  right: 62%;
  bottom: 0%;
  left: 0%;
  width: 91px;
  height: 94px;
  z-index: 0;
  margin: auto;
}
section#kv .content_block .content_inner > .row.kv_bg .col .kv_elm-wrapper > div {
  /* 星たち */
}
section#kv .content_block .content_inner > .row.kv_bg .col .kv_elm-wrapper > div.star_area {
  overflow: hidden;
  position: absolute;
  top: 0;
}
section#kv .content_block .content_inner > .row.kv_bg .col .kv_elm-wrapper > div.star_area .item.item-star-01 {
  top: 0;
  right: 0;
  bottom: -42%;
  left: -41.2%;
  width: 18px;
  height: 18px;
  z-index: 1;
  margin: auto;
}
section#kv .content_block .content_inner > .row.kv_bg .col .kv_elm-wrapper > div.star_area .item.item-star-02 {
  top: 0;
  right: 0;
  bottom: 15%;
  left: -83%;
  width: 9px;
  height: 9px;
  z-index: 0;
  margin: auto;
}
section#kv .content_block .content_inner > .row.kv_bg .col .kv_elm-wrapper > div.star_area .item.item-star-03 {
  top: 0;
  right: -34%;
  bottom: -55%;
  left: 0%;
  width: 7px;
  height: 7px;
  z-index: 1;
  margin: auto;
}
section#kv .content_block .content_inner > .row.kv_bg .col .kv_elm-wrapper > div.star_area .item.item-star-04 {
  top: 0;
  right: -46%;
  bottom: 82%;
  left: -74%;
  width: 14px;
  height: 14px;
  z-index: 0;
  margin: auto;
}
section#kv .content_block .content_inner > .row.kv_bg .col .kv_elm-wrapper > div.star_area .item.item-star-05 {
  top: 0;
  right: -29%;
  bottom: 81%;
  left: 0%;
  width: 16px;
  height: 16px;
  z-index: 1;
  margin: auto;
}
section#kv .content_block .content_inner > .row.kv_bg .col .kv_elm-wrapper > div.star_area .item.item-star-06 {
  top: -22%;
  right: -73%;
  bottom: 0%;
  left: 0%;
  width: 16px;
  height: 16px;
  z-index: 0;
  margin: auto;
}
section#kv .content_block .content_inner > .row.kv_bg .col .kv_elm-wrapper > div.star_area .item.item-star-07 {
  top: -30%;
  right: -81%;
  bottom: 0%;
  left: 0%;
  width: 10px;
  height: 10px;
  z-index: 0;
  margin: auto;
}
section#kv .content_block .content_inner > .row.kv_bg .col .kv_elm-wrapper > div.star_area .item.item-star-08 {
  top: -73%;
  right: -52%;
  bottom: 0%;
  left: 0%;
  width: 10px;
  height: 10px;
  z-index: 1;
  margin: auto;
}
section#kv .content_block .content_inner > .row.kv_bg .col .kv_elm-wrapper > div.star_area .item.item-star-09 {
  top: 44%;
  right: -44%;
  bottom: 0%;
  left: 0%;
  width: 11px;
  height: 11px;
  z-index: 0;
  margin: auto;
}
section#kv .content_block .content_inner > .row.kv_bg .col .kv_elm-wrapper > div figure {
  position: absolute;
}
section#kv .content_block .content_inner > .row.kv_bg .col .kv_elm-wrapper {
  /* みちまるたち */
}
section#kv .content_block .content_inner > .row.kv_bg .col .kv_elm-wrapper .main_area {
  overflow: hidden;
  position: absolute;
  top: 0;
}
section#kv .content_block .content_inner > .row.kv_bg .col .kv_elm-wrapper .main_area h2.kv_title figure.typography {
  top: 11%;
  width: 62.2%;
  margin: auto;
  left: 0;
  right: 0;
}
section#kv .content_block .content_inner > .row.kv_bg .col .kv_elm-wrapper .main_area h2.kv_title figure.michimaru_char {
  top: 55%;
  width: 42.2%;
  margin: auto;
  left: 0;
  right: 0;
}
section#about {
  background-color: #ffffff;
  background-image: radial-gradient(circle, #fef7a9 2px, transparent 2px), radial-gradient(circle, #fef7a9 2px, transparent 2px), radial-gradient(circle, #fef7a9 2px, transparent 2px), radial-gradient(circle, #fef7a9 2px, transparent 2px);
  background-position: 0 0, 14px 0, 7px 14px, 21px 14px;
  background-size: 28px 28px;
}
section#about .kv_period figure.kv_anchor_period {
  margin-bottom: 18px;
}
section#about .kv_period h3.period_title {
  width: 80%;
  margin: 0px auto 18px auto;
}
section#about .kv_period .anchors_inner {
  padding: 0 15px;
  margin-bottom: 18px;
}
section#about .kv_period .anchors_inner ul.anchor_list {
  display: flex;
  gap: 6px;
  justify-content: center;
  align-items: center;
}
section#about .about_elm-wrapper {
  margin-bottom: 52px;
}
section#about .about_elm-wrapper .about_elm-inner {
  padding: 0 30px;
  position: relative;
  margin-top: 82px;
  margin-bottom: 82px;
}
section#about .about_elm-wrapper .about_elm-inner::before {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  width: 100%;
  height: 130%;
  background-image: url("../images/frame-about-02.png");
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
  margin: auto;
}
section#about .about_elm-wrapper .about_elm-inner h3.about_head {
  width: 90px;
  margin: 18px auto;
  position: absolute;
  z-index: 0;
  top: -99px;
  right: 0;
  left: 0;
}
section#about .about_elm-wrapper .about_elm-inner .about_description {
  padding: 8px 18px;
  background-image: url("../images/frame-about-01_mdl.png");
  background-position: center;
  background-size: contain;
  background-repeat: repeat-y;
  position: relative;
}
section#about .about_elm-wrapper .about_elm-inner .about_description::before {
  content: "";
  position: absolute;
  top: -38px;
  left: 0;
  width: 100%;
  height: 100%;
  background-image: url("../images/frame-about-01_top.png");
  background-repeat: no-repeat;
  background-size: contain;
  background-position: top;
}
@media screen and (max-width: 375px) {
  section#about .about_elm-wrapper .about_elm-inner .about_description::before {
    top: -9vw;
  }
}
section#about .about_elm-wrapper .about_elm-inner .about_description::after {
  content: "";
  position: absolute;
  top: auto;
  left: 0;
  bottom: -38px;
  width: 100%;
  height: 100%;
  background-image: url("../images/frame-about-01_btm.png");
  background-repeat: no-repeat;
  background-size: contain;
  background-position: bottom;
}
@media screen and (max-width: 375px) {
  section#about .about_elm-wrapper .about_elm-inner .about_description::after {
    bottom: -9vw;
  }
}
section#about .about_elm-wrapper .about_elm-inner .about_description .about_description_inner p {
  text-align: center;
  color: #754C24;
}
section#stamp-rally .content_block .content_inner {
  position: relative;
}
section#stamp-rally .content_block .content_inner .row .faq_Btn img {
  margin: 28px auto;
}
section#stamp-rally .content_block .content_inner .row .agreement h3 {
  font-size: 1.5rem;
  margin: 0 auto 24px auto;
  text-align: center;
  font-weight: 600;
}
section#stamp-rally .content_block .content_inner .row .agreement .agreement_wrap {
  padding: 18px;
  background-color: #ffffff;
  border: solid 1px #333333;
  border-radius: 14px;
}
section#stamp-rally .content_block .content_inner .row .agreement .agreement_wrap .agreement_inner {
  overflow-y: scroll;
  max-height: 280px;
  padding-right: 18px;
}
section#stamp-rally .content_block .content_inner .row .agreement .agreement_wrap .agreement_inner::-webkit-scrollbar {
  width: 3px;
}
section#stamp-rally .content_block .content_inner .row .agreement .agreement_wrap .agreement_inner::-webkit-scrollbar-track {
  background-color: #C9C9C9;
}
section#stamp-rally .content_block .content_inner .row .agreement .agreement_wrap .agreement_inner::-webkit-scrollbar-thumb {
  background-color: #000000;
  border-radius: 8px;
}
section#stamp-rally .content_block .content_inner .row .agreement .agreement_wrap .agreement_inner * {
  line-height: 1.4em;
}
section#stamp-rally .content_block .content_inner .row .agreement .agreement_wrap .agreement_inner h1 {
  font-size: 1.125rem;
  font-weight: 600;
  margin-bottom: 18px;
}
section#stamp-rally .content_block .content_inner .row .agreement .agreement_wrap .agreement_inner h2 {
  font-size: 1.125rem;
  font-weight: 600;
  margin-top: 28px;
  margin-bottom: 18px;
}
section#stamp-rally .content_block .content_inner .row .agreement .agreement_wrap .agreement_inner p {
  font-size: 0.875rem;
  font-weight: 400;
  margin-bottom: 1em;
  text-align: left;
}
section#stamp-rally .content_block .content_inner .row .agreement .agreement_wrap .agreement_inner ol, section#stamp-rally .content_block .content_inner .row .agreement .agreement_wrap .agreement_inner ul {
  margin-bottom: 1rem;
  padding-left: 1.25em;
  list-style: disc;
  list-style-position: outside;
  font-size: 0.875rem;
  font-weight: 400;
}
section#stamp-rally .content_block .content_inner .row .agreement .agreement_wrap .agreement_inner ol li, section#stamp-rally .content_block .content_inner .row .agreement .agreement_wrap .agreement_inner ul li {
  margin-bottom: 1rem;
}
section#stamp-rally .content_block .content_inner .row .agreement .agreement_wrap .agreement_inner ol li ol, section#stamp-rally .content_block .content_inner .row .agreement .agreement_wrap .agreement_inner ol li ul, section#stamp-rally .content_block .content_inner .row .agreement .agreement_wrap .agreement_inner ul li ol, section#stamp-rally .content_block .content_inner .row .agreement .agreement_wrap .agreement_inner ul li ul {
  margin-top: 18px;
  padding-left: 2em;
}
section#stamp-rally .content_block .content_inner .row .agreement .agreement_wrap .agreement_inner ol li ol ol, section#stamp-rally .content_block .content_inner .row .agreement .agreement_wrap .agreement_inner ol li ol ul, section#stamp-rally .content_block .content_inner .row .agreement .agreement_wrap .agreement_inner ol li ul ol, section#stamp-rally .content_block .content_inner .row .agreement .agreement_wrap .agreement_inner ol li ul ul, section#stamp-rally .content_block .content_inner .row .agreement .agreement_wrap .agreement_inner ul li ol ol, section#stamp-rally .content_block .content_inner .row .agreement .agreement_wrap .agreement_inner ul li ol ul, section#stamp-rally .content_block .content_inner .row .agreement .agreement_wrap .agreement_inner ul li ul ol, section#stamp-rally .content_block .content_inner .row .agreement .agreement_wrap .agreement_inner ul li ul ul {
  padding-left: 2.5em;
}
section#stamp-rally .content_block .content_inner .row .agreement .agreement_wrap .agreement_inner ol li ol ol ol, section#stamp-rally .content_block .content_inner .row .agreement .agreement_wrap .agreement_inner ol li ol ol ul, section#stamp-rally .content_block .content_inner .row .agreement .agreement_wrap .agreement_inner ol li ol ul ol, section#stamp-rally .content_block .content_inner .row .agreement .agreement_wrap .agreement_inner ol li ol ul ul, section#stamp-rally .content_block .content_inner .row .agreement .agreement_wrap .agreement_inner ol li ul ol ol, section#stamp-rally .content_block .content_inner .row .agreement .agreement_wrap .agreement_inner ol li ul ol ul, section#stamp-rally .content_block .content_inner .row .agreement .agreement_wrap .agreement_inner ol li ul ul ol, section#stamp-rally .content_block .content_inner .row .agreement .agreement_wrap .agreement_inner ol li ul ul ul, section#stamp-rally .content_block .content_inner .row .agreement .agreement_wrap .agreement_inner ul li ol ol ol, section#stamp-rally .content_block .content_inner .row .agreement .agreement_wrap .agreement_inner ul li ol ol ul, section#stamp-rally .content_block .content_inner .row .agreement .agreement_wrap .agreement_inner ul li ol ul ol, section#stamp-rally .content_block .content_inner .row .agreement .agreement_wrap .agreement_inner ul li ol ul ul, section#stamp-rally .content_block .content_inner .row .agreement .agreement_wrap .agreement_inner ul li ul ol ol, section#stamp-rally .content_block .content_inner .row .agreement .agreement_wrap .agreement_inner ul li ul ol ul, section#stamp-rally .content_block .content_inner .row .agreement .agreement_wrap .agreement_inner ul li ul ul ol, section#stamp-rally .content_block .content_inner .row .agreement .agreement_wrap .agreement_inner ul li ul ul ul {
  padding-left: 3em;
}
section#stamp-rally .content_block .content_inner .row.part {
  position: absolute;
  max-width: 240px;
  top: -34px;
  left: 0;
}
section#stamp-rally .content_block .content_inner .row.header_row {
  background-color: #F54B69;
  color: #ffffff;
  padding: 62px 15px;
}
section#stamp-rally .content_block .content_inner .row.header_row .header_columns {
  padding: 0 15px;
}
section#stamp-rally .content_block .content_inner .row.header_row .header_columns h3.head.stamp-rally_head {
  position: relative;
  margin-bottom: 18px;
}
section#stamp-rally .content_block .content_inner .row.header_row .header_columns h3.head.stamp-rally_head span.head_sub {
  position: absolute;
  max-width: 78px;
  right: -15px;
  top: -35px;
}
section#stamp-rally .content_block .content_inner .row.header_row .header_columns h3.head.stamp-rally_head span.head_sub {
  position: absolute;
  width: 98px;
  max-width: 98px;
  right: -15px;
  top: -53px;
}
section#stamp-rally .content_block .content_inner .row.header_row .header_columns p {
  margin-bottom: 18px;
  position: relative;
  z-index: 1;
}
section#stamp-rally .content_block .content_inner .row.header_row .header_columns figure.head-figure {
  position: relative;
  z-index: 0;
}
section#stamp-rally .content_block .content_inner .row.header_row .header_columns figure.head-figure::before {
  content: "";
  position: absolute;
  top: -70px;
  left: auto;
  right: -52px;
  bottom: auto;
  width: 200px;
  max-width: 139px;
  height: 130px;
  background-image: url("../images/figure-campaign-01-01_1_mark.png");
  background-repeat: no-repeat;
  background-size: contain;
  background-position: bottom;
  z-index: -1;
}
section#stamp-rally .content_block .content_inner .row.how_to_row .how_to_columns {
  position: relative;
}
section#stamp-rally .content_block .content_inner .row.how_to_row .how_to_columns > h4 {
  margin-bottom: 28px;
}
section#stamp-rally .content_block .content_inner .row.how_to_row .how_to_columns .swiper {
  padding: 0 15px;
}
section#stamp-rally .content_block .content_inner .row.how_to_row .how_to_columns .swiper .swiper-slide {
  padding: 0 28px;
}
section#stamp-rally .content_block .content_inner .row.how_to_row .how_to_columns .swiper-pagination {
  width: 100%;
  position: absolute;
  top: 0;
  bottom: -15%;
  margin: auto;
  pointer-events: none;
  right: 0;
  left: 0;
}
section#stamp-rally .content_block .content_inner .row.how_to_row .how_to_columns .swiper-pagination .swiper-button-prev {
  background-image: url("../images/swipe-arrow-enable.svg");
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;
  transform: rotate(180deg);
  pointer-events: auto;
  width: 38.5px;
  height: 38.5px;
}
section#stamp-rally .content_block .content_inner .row.how_to_row .how_to_columns .swiper-pagination .swiper-button-prev:before, section#stamp-rally .content_block .content_inner .row.how_to_row .how_to_columns .swiper-pagination .swiper-button-prev:after {
  display: none;
}
section#stamp-rally .content_block .content_inner .row.how_to_row .how_to_columns .swiper-pagination .swiper-button-next {
  background-image: url("../images/swipe-arrow-enable.svg");
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;
  transform: rotate(0deg);
  pointer-events: auto;
  width: 38.5px;
  height: 38.5px;
}
section#stamp-rally .content_block .content_inner .row.how_to_row .how_to_columns .swiper-pagination .swiper-button-next:before, section#stamp-rally .content_block .content_inner .row.how_to_row .how_to_columns .swiper-pagination .swiper-button-next:after {
  display: none;
}
section#stamp-rally .content_block .content_inner .row.how_to_row .how_to_columns .swiper-dots {
  position: static; /* 下に固定したくない場合は static に */
  margin-top: 10px;
  text-align: center;
  margin-bottom: 28px;
}
section#stamp-rally .content_block .content_inner .row.how_to_row .how_to_columns .swiper-dots-bullet {
  background: #333333; /* 非アクティブ色 */
  opacity: 1;
}
section#stamp-rally .content_block .content_inner .row.how_to_row .how_to_columns .swiper-pagination-bullet-active {
  background: #F54B69; /* アクティブ色 */
}
section#stamp-rally .content_block .content_inner .row.coupon_row .coupon_columns h4 {
  width: 90%;
  margin: 0 auto 18px auto;
}
section#stamp-rally .content_block .content_inner .row.coupon_row .coupon_columns .coupon_figure_wrap {
  padding: 0 15px;
  position: relative;
  margin-bottom: 28px;
}
section#stamp-rally .content_block .content_inner .row.coupon_row .coupon_columns .coupon_figure_wrap .coupon_Btn {
  position: absolute;
  top: 40.5%;
  margin: auto;
  width: calc(100% - 30px);
  padding: 0 15px;
}
section#stamp-rally .content_block .content_inner .row.stamp-rally-cta_row {
  padding-bottom: 80px;
}
section#stamp-rally .content_block .content_inner .row.stamp-rally-cta_row .stamp-rally-cta_columns {
  padding: 0 15px;
}
section#stamp-rally .content_block .content_inner .row.stamp-rally-cta_row .stamp-rally-cta_columns a {
  margin-bottom: 18px;
}
section#stamp-rally .content_block .content_inner .row.stamp-rally-cta_row .stamp-rally-cta_columns p {
  text-align: center;
}
section#stamp-rally .content_block .content_inner .dots_bg {
  background-color: #ffffff;
  background-image: radial-gradient(circle, #fbe7ee 2px, transparent 2px), radial-gradient(circle, #fbe7ee 2px, transparent 2px), radial-gradient(circle, #fbe7ee 2px, transparent 2px), radial-gradient(circle, #fbe7ee 2px, transparent 2px);
  background-position: 0 0, 14px 0, 7px 14px, 21px 14px;
  background-size: 28px 28px;
}
section#favorite-gourmet {
  background-color: #FB9600;
  color: #ffffff;
}
section#favorite-gourmet .content_block .content_inner {
  position: relative;
}
section#favorite-gourmet .content_block .content_inner .row.part {
  position: absolute;
  max-width: 240px;
  top: -34px;
  left: 0;
}
section#favorite-gourmet .content_block .content_inner .row.header_row {
  padding: 62px 15px 18px 15px;
}
section#favorite-gourmet .content_block .content_inner .row.header_row .header_columns {
  padding: 0 15px;
}
section#favorite-gourmet .content_block .content_inner .row.header_row .header_columns h3.head {
  position: relative;
  margin-bottom: 18px;
}
section#favorite-gourmet .content_block .content_inner .row.header_row .header_columns h3.head span.head_sub {
  position: absolute;
  max-width: 78px;
  right: -15px;
  top: -35px;
}
section#favorite-gourmet .content_block .content_inner .row.header_row .header_columns h3.head span.head_sub {
  position: absolute;
  width: 98px;
  max-width: 98px;
  right: -21px;
  top: -75px;
}
section#favorite-gourmet .content_block .content_inner .row.header_row .header_columns p {
  position: relative;
  z-index: 1;
}
section#favorite-gourmet .content_block .content_inner .row.header_row .header_columns figure.head-badge {
  margin-top: 18px;
}
section#favorite-gourmet .content_block .content_inner .row.gourmet_row .gourmet_columns {
  padding: 0 15px;
}
section#favorite-gourmet .content_block .content_inner .row.gourmet_row .gourmet_columns figure.gourmet {
  margin-bottom: 28px;
  position: relative;
  z-index: 0;
}
section#favorite-gourmet .content_block .content_inner .row.gourmet_row .gourmet_columns figure.gourmet::before {
  content: "";
  position: absolute;
  top: 20px;
  left: auto;
  right: -60px;
  bottom: auto;
  width: 200px;
  height: 120px;
  background-image: url(../images/figure-campaign-02-01_3.png);
  background-repeat: no-repeat;
  background-size: contain;
  background-position: bottom;
  z-index: -1;
}
section#favorite-gourmet .content_block .content_inner .row.favorite-gourmet-cta_row {
  padding-bottom: 82px;
}
section#favorite-gourmet .content_block .content_inner .row.favorite-gourmet-cta_row .favorite-gourmet-cta_columns {
  padding: 0 15px;
}
section#favorite-gourmet .content_block .content_inner .row.favorite-gourmet-cta_row .favorite-gourmet-cta_columns h4.head.favorite-gourmet-cta_head {
  margin-bottom: 18px;
}
section#favorite-gourmet .content_block .content_inner .row.favorite-gourmet-cta_row .favorite-gourmet-cta_columns a.stamp-rally_Btn {
  margin-bottom: 18px;
}
section#anniversary-thanks {
  background-color: #61BE5C;
  color: #ffffff;
}
section#anniversary-thanks .content_block .content_inner {
  position: relative;
}
section#anniversary-thanks .content_block .content_inner .row.part {
  position: absolute;
  max-width: 240px;
  top: -34px;
  left: 0;
}
section#anniversary-thanks .content_block .content_inner .row.header_row {
  padding: 62px 15px 18px 15px;
}
section#anniversary-thanks .content_block .content_inner .row.header_row .header_columns {
  padding: 0 15px;
}
section#anniversary-thanks .content_block .content_inner .row.header_row .header_columns h3.head {
  position: relative;
  margin-bottom: 18px;
}
section#anniversary-thanks .content_block .content_inner .row.header_row .header_columns h3.head span.head_sub {
  position: absolute;
  max-width: 78px;
  right: -15px;
  top: -35px;
}
section#anniversary-thanks .content_block .content_inner .row.header_row .header_columns h3.head span.head_sub {
  max-width: 120px;
  top: -90px;
}
section#anniversary-thanks .content_block .content_inner .row.header_row .header_columns p {
  position: relative;
  z-index: 1;
}
section#anniversary-thanks .content_block .content_inner .row.header_row .header_columns figure.head-badge {
  margin-top: 18px;
}
section#anniversary-thanks .content_block .content_inner .row.header_row .header_columns figure.anniversary-disc {
  margin-bottom: 14px;
}
section#anniversary-thanks .content_block .content_inner .row.header_row .header_columns span {
  font-size: 0.75rem;
  font-weight: 600;
  line-height: 1.4em;
  margin-bottom: 4px;
}
section#anniversary-thanks .content_block .content_inner .row.header_row .header_columns .anniversary_Btn {
  margin: 18px auto;
}
section#anniversary-thanks .content_block .content_inner .row.anniversary_row .anniversary_columns {
  padding: 0 15px;
}
section#anniversary-thanks .content_block .content_inner .row.anniversary_row .anniversary_columns figure.anniversary-figure {
  padding: 0 15px;
  margin-bottom: 18px;
  position: relative;
  z-index: 0;
}
section#anniversary-thanks .content_block .content_inner .row.anniversary_row .anniversary_columns figure.anniversary-figure::before {
  content: "";
  position: absolute;
  top: -20px;
  left: auto;
  right: -50px;
  bottom: auto;
  width: 160px;
  height: 100px;
  background-image: url(../images/hart-green.png);
  background-repeat: no-repeat;
  background-size: contain;
  background-position: bottom;
  z-index: -1;
}
section#anniversary-thanks .content_block .content_inner .row.anniversary_row .anniversary_columns .anniversary_Btn_02 {
  margin-bottom: 18px;
}
section#anniversary-thanks .content_block .content_inner .row.anniversary-thanks-cta_row .anniversary-thanks-cta_columns {
  padding: 0 15px;
}
section#anniversary-thanks .content_block .content_inner .row.anniversary-thanks-cta_row .anniversary-thanks-cta_columns h4.head.anniversary-thanks-cta_head {
  padding: 0 15px;
  margin-top: 8px;
  margin-bottom: 18px;
}
section#anniversary-thanks .content_block .content_inner .row.app-icon-wrap {
  padding: 0 15px 82px 15px;
}
@media screen and (max-width: 768px) {
  section#anniversary-thanks .content_block .content_inner .row.app-icon-wrap {
    justify-content: space-around;
  }
}
@media screen and (max-width: 414px) {
  section#anniversary-thanks .content_block .content_inner .row.app-icon-wrap {
    justify-content: space-between;
  }
}
section#anniversary-thanks .content_block .content_inner .row.app-icon-wrap > .col a.app-Btn img {
  height: 50px;
}
@media screen and (max-width: 768px) {
  section#anniversary-thanks .content_block .content_inner .row.app-icon-wrap > .col a.app-Btn img {
    height: 72px;
  }
}
@media screen and (max-width: 576px) {
  section#anniversary-thanks .content_block .content_inner .row.app-icon-wrap > .col a.app-Btn img {
    height: 50px;
  }
}
section#anniversary-thanks .content_block .content_inner .row.app-icon-wrap > .col a.app-Btn {
  margin-bottom: 18px;
  margin-top: 8px;
  margin-right: auto;
  margin-left: auto;
}
section#anniversary-thanks .content_block .content_inner .row.app-icon-wrap > .col a.app-Btn.app-store_Btn {
  margin-left: auto;
}
section#anniversary-thanks .content_block .content_inner .row.app-icon-wrap > .col span {
  font-size: 0.625rem;
}
section#campaign-another {
  background-size: auto auto;
  background-color: rgb(255, 255, 255);
  background-image: repeating-linear-gradient(135deg, transparent, transparent 20px, rgb(254, 249, 244) 20px, rgb(254, 249, 244) 27px);
  color: #754C24;
  padding-bottom: 78px;
}
section#campaign-another .content_block .content_inner {
  position: relative;
}
section#campaign-another .content_block .content_inner .row.part {
  position: absolute;
  max-width: 240px;
  top: -34px;
  left: 0;
}
section#campaign-another .content_block .content_inner .row.header_row {
  padding: 62px 15px 18px 15px;
}
section#campaign-another .content_block .content_inner .row.header_row .header_columns {
  padding: 0 15px;
}
section#campaign-another .content_block .content_inner .row.header_row .header_columns h3.head {
  position: relative;
  margin-bottom: 18px;
}
section#campaign-another .content_block .content_inner .row.header_row .header_columns h3.head span.head_sub {
  position: absolute;
  max-width: 78px;
  right: -15px;
  top: -35px;
}
section#campaign-another .content_block .content_inner .row.header_row .header_columns h3.head span.head_sub {
  width: 31vw;
  max-width: 100px;
  top: -64px;
}
section#campaign-another .content_block .content_inner .row.header_row .header_columns p {
  position: relative;
  z-index: 1;
  margin-bottom: 18px;
}
section#campaign-another .content_block .content_inner .row.header_row .header_columns figure.another-figure {
  margin-bottom: 8px;
}
section#campaign-another .content_block .content_inner .row.header_row .header_columns figure.head-badge {
  margin-top: 18px;
}
section#campaign-another .content_block .content_inner .row.header_row .header_columns figure.anniversary-disc {
  margin-bottom: 8px;
}
section#campaign-another .content_block .content_inner .row.header_row .header_columns span {
  font-size: 0.75rem;
  font-weight: 600;
}
section#campaign-another .content_block .content_inner .row.header_row .header_columns .anniversary_Btn {
  margin: 18px auto;
}
section#campaign-another .content_block .content_inner .row.header_row .header_columns .another_Btn_01 {
  margin: 18px auto;
}
section#other {
  position: relative;
  background-color: #FFF79E;
  color: #754C24;
  padding-bottom: 48px;
  z-index: 0;
}
section#other > .content_block {
  position: relative;
  z-index: 1;
}
section#other::before {
  content: "";
  position: absolute;
  top: -111px;
  left: auto;
  right: 0;
  bottom: auto;
  width: 100%;
  background-image: url("../images/bg-dots.png");
  background-repeat: no-repeat;
  background-size: contain;
  background-position: top;
  z-index: 0;
  aspect-ratio: 382.9/677;
}
@media screen and (max-width: 375px) {
  section#other::before {
    top: -29vw;
  }
}
section#other .content_block .content_inner h4.head.other_head {
  padding: 0 15px;
  margin-bottom: 28px;
}
section#other .content_block .content_inner a {
  padding: 0 15px;
  margin-bottom: 18px;
}
section#gourmetElection {
  padding: 28px 15px;
  background-color: #FFF0CB;
}
section#gourmetElection .row.header_row.ge-head h2.head.ge_head {
  width: 90%;
  margin: 0px auto 18px auto;
}
section#gourmetElection .row.header_row.ge-route .ge-route {
  padding: 4px;
}
a.back-Btn,
section#gourmetElection .row.header_row.ge-route a.back-Btn {
  width: 76px;
  margin: 28px auto 48px auto;
}
section#faq {
  background-color: #ffffff;
  background-image: radial-gradient(circle, #FEE6EE 2px, transparent 2px), radial-gradient(circle, #FEE6EE 2px, transparent 2px), radial-gradient(circle, #FEE6EE 2px, transparent 2px), radial-gradient(circle, #FEE6EE 2px, transparent 2px);
  background-position: 0 0, 14px 0, 7px 14px, 21px 14px;
  background-size: 28px 28px;
  padding: 28px 15px;
}
section#faq h2 {
  max-width: 172px;
  margin: 18px auto;
}
section#faq .faq_wrapper {
  width: 100%;
}
section#faq .faq_wrapper .faq .faq-item {
  margin: 18px 0 48px 0;
}
section#faq .faq_wrapper .faq .faq-item h3.faq-discription {
  background: #F54B69;
  color: #ffffff;
  display: inline-block;
  padding: 10px 18px;
  border-radius: 10px;
  margin-bottom: 1.4em;
  font-weight: 600;
}
section#faq .faq_wrapper .faq .faq-item details {
  border-bottom: dotted 1px #F54B69;
  margin-bottom: 34px;
}
section#faq .faq_wrapper .faq .faq-item details summary {
  position: relative;
  color: #F54B69;
  font-weight: 600;
  cursor: pointer;
  opacity: 1;
  transition: 0.3s;
  list-style: none;
  margin-bottom: 1.2rem;
  line-height: 1.8em;
  padding-left: 2.2em;
  padding-right: 2.2em;
  box-sizing: border-box;
}
section#faq .faq_wrapper .faq .faq-item details summary::before {
  position: absolute;
  left: 0;
  top: -0.25em;
  content: "Q.";
  font-size: 28px;
}
section#faq .faq_wrapper .faq .faq-item details summary::after {
  position: absolute;
  right: 0;
  top: 0;
  bottom: 0;
  margin: auto;
  width: 1.25em;
  height: 1.25em;
  content: "";
  background-image: url("../images/faq-plus.svg");
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;
}
section#faq .faq_wrapper .faq .faq-item details summary::-webkit-details-marker, section#faq .faq_wrapper .faq .faq-item details summary::marker {
  display: none !important;
}
section#faq .faq_wrapper .faq .faq-item details summary:hover {
  opacity: 0.7;
}
section#faq .faq_wrapper .faq .faq-item details .content {
  position: relative;
  color: #000000;
  font-weight: 600;
  transition: 0.3s;
  list-style: none;
  margin-bottom: 1.2rem;
  line-height: 1.8em;
  padding-left: 2.2em;
}
section#faq .faq_wrapper .faq .faq-item details .content::before {
  position: absolute;
  left: 0;
  top: -0.25em;
  content: "A.";
  font-size: 28px;
}
section#faq .faq_wrapper .faq .faq-item details[open] summary::after {
  background-image: url("../images/faq-minus.svg");
}
section#site-policy {
  background-size: auto auto;
  background-color: rgb(255, 255, 255);
  background-image: repeating-linear-gradient(135deg, transparent, transparent 20px, rgb(254, 249, 244) 20px, rgb(254, 249, 244) 27px);
  color: #754C24;
  padding-bottom: 78px;
}
section#site-policy .content_block .content_inner .row .col.col-12 .inner {
  padding: 42px 20px 0px 20px;
}
section#site-policy .content_block .content_inner .row .col.col-12 .inner h1 {
  font-size: 1.1875rem;
  font-weight: 500;
  text-align: center;
  margin: 1rem 0 2rem 0;
}
section#site-policy .content_block .content_inner .row .col.col-12 .inner p {
  font-size: 0.8125rem;
  font-weight: 500;
  margin-bottom: 1rem;
  line-height: 1.4rem;
}
section#site-policy .content_block .content_inner .row .col.col-12 .inner h2 {
  font-size: 1.0625rem;
  font-weight: 600;
  margin: 2.8rem 0 1rem 0;
  line-height: 1.4rem;
}

footer {
  position: relative;
  width: 100%;
  top: 0;
  left: 0;
  right: 0;
  display: flex;
  z-index: 9999;
  max-width: 1366px;
  margin: 0 auto;
}
footer .footer_dummy {
  width: calc(100% - 375px);
}
@media screen and (max-width: 768px) {
  footer .footer_dummy {
    display: none;
  }
}
footer .footer_wrap {
  max-width: 375px;
}
@media screen and (max-width: 768px) {
  footer .footer_wrap {
    max-width: 480px;
  }
}
footer .footer_wrap {
  margin: 0 auto;
  background-size: auto auto;
  background-color: rgb(255, 255, 255);
  background-image: repeating-linear-gradient(135deg, transparent, transparent 20px, rgb(254, 249, 244) 20px, rgb(254, 249, 244) 27px);
  height: fit-content;
}
footer .footer_wrap .footer_inner .footer_content {
  padding: 42px 0 0px 0;
  position: relative;
}
footer .footer_wrap .footer_inner .footer_content a.to-top {
  position: absolute;
  width: 80px;
  top: -40px;
  right: 0;
  left: 0;
  margin: auto;
}
footer .footer_wrap .footer_inner .footer_content .row {
  padding: 0 15px;
}
footer .footer_wrap .footer_inner .footer_content .row.footer_row {
  color: #754C24;
  font-size: 0.9375rem;
  font-weight: 600;
}
footer .footer_wrap .footer_inner .footer_content .row.footer_row figure.footer_logo {
  padding: 32px;
}
footer .footer_wrap .footer_inner .footer_content .row.footer_row figure.footer_logo img {
  display: block;
  margin: 0 auto;
  max-width: 142px;
}
footer .footer_wrap .footer_inner .footer_content .row.footer_row ul.footer_menu_list {
  display: flex;
  flex-wrap: wrap;
  padding: 0 18px;
}
footer .footer_wrap .footer_inner .footer_content .row.footer_row ul.footer_menu_list li {
  margin: 8px 0;
  width: 50%;
  position: relative;
}
footer .footer_wrap .footer_inner .footer_content .row.footer_row ul.footer_menu_list li::before {
  content: "-";
  margin-right: 0.5em;
}
footer .footer_wrap .footer_inner .footer_content .row.footer_row_sns {
  padding: 28px 42px;
}
footer .footer_wrap .footer_inner .footer_content .row.footer_row_sns ul.footer_sns_list {
  display: flex;
  gap: 28px;
}
footer .footer_wrap .footer_inner .footer_content .row.footer_copyright {
  background-color: #333333;
  color: #ffffff;
  font-size: 0.625rem;
  font-weight: 500;
  line-height: 1.8em;
  padding: 8px 15px;
  text-align: center;
}
footer .footer_wrap .footer_inner .footer_content .row .site-policy-link {
  text-align: center;
  font-size: 0.875rem;
  color: #333333;
  padding: 1rem 0;
  text-decoration: underline;
}
footer .footer_wrap .footer_inner .footer_content .row {
  color: #754C24;
}
footer .footer_wrap .footer_inner .footer_content .row h4.ft-cr {
  margin-top: 2rem;
  text-align: center;
  line-height: 1.8em;
  font-size: 1.125rem;
}
footer .footer_wrap .footer_inner .footer_content .row h4.ft-cr span {
  font-size: 0.9375rem;
  display: block;
}
footer .footer_wrap .footer_inner .footer_content .row h4.ft-cr + p {
  text-align: center;
  font-size: 1rem;
}
footer .footer_wrap .footer_inner .footer_content .row h4.ft-cr + p a {
  text-decoration: underline;
  color: #006EE2;
}
footer .footer_wrap .footer_inner .footer_content .row h4.ft-cr + p + span {
  font-size: 0.75rem;
  margin-top: 8px;
  text-align: center;
  line-height: 1.8em;
}
footer .footer_wrap .footer_inner .footer_content .row h4.ft-cr + p + span + span {
  font-size: 0.75rem;
  text-align: center;
  line-height: 1.8em;
  margin-bottom: 8px;
}

.is-teaser {
  pointer-events: none;
  margin-bottom: 18px;
}