@import url("https://fonts.googleapis.com/css2?family=M+PLUS+1:wght@100..900&family=Noto+Sans+JP:wght@100..900&family=Zen+Maru+Gothic:wght@300;400;500;700;900&display=swap");
:root {
  --font-fam: "noto sans JP";
  --theme-color: #fff;
  --font-color: #111;
}

img {
  width: 100%;
}

.br-sp {
  display: block;
}
@media (min-width: 768px) {
  .br-sp {
    display: none;
  }
}

@media (min-width: 900px) {
  .fv img {
    min-height: min(52.22vw, 530px);
    object-fit: cover;
    object-position: top center;
  }
}

.cp_txt {
  background-color: #F0F3F3;
  position: relative;
  background: #FFF6FA;
}
.cp_txt .wrap {
  padding-block: 10.66vw;
  width: min(100% - 40px, 960px);
  margin-inline: auto;
  position: relative;
}
@media (min-width: 1024px) {
  .cp_txt .wrap {
    padding-block: clamp(6rem, 7.5vw, 8rem);
  }
}
.cp_txt .wrap::before {
  content: "";
  display: block;
  background: url(../img/index/cp_txt/cp_txt_arrow.svg) no-repeat;
  background-size: 100%;
  min-width: 18.93vw;
  min-height: 35.73vw;
  position: absolute;
  bottom: 0;
  left: 1.33vw;
  z-index: 0;
}
@media (min-width: 768px) {
  .cp_txt .wrap::before {
    min-width: 148px;
    min-height: 270px;
    left: 0px;
  }
}
@media (min-width: 1024px) {
  .cp_txt .wrap::before {
    left: max(-2.19vw, -28px);
  }
}
.cp_txt p {
  font-family: "noto sans JP", sans-serif;
  color: #663A00;
  text-align: center;
  font-size: 3.73vw;
  font-weight: 500;
  position: relative;
  z-index: 5;
}
@media (min-width: 768px) {
  .cp_txt p {
    font-size: min(2.34vw, 2.4rem);
  }
}
.cp_txt p span {
  font-family: "noto sans JP", sans-serif;
  color: #DD2600;
  font-weight: bold;
}
.cp_txt p a {
  font-family: "noto sans JP", sans-serif;
  color: #663A00;
  font-weight: 500;
  transition: opacity 0.2s;
}
@media (min-width: 1024px) {
  .cp_txt p a:hover {
    opacity: 0.6;
  }
}

.contents {
  background: url(../img/index/bg_right.png), url(../img/index/bg_left.png), url(../img/index/bg.jpg);
  background-repeat: repeat-y, repeat-y, repeat;
  background-size: 42.66vw, 42.66vw, auto;
  background-position: right top 6.93vw, left top 6.93vw, center top;
}
@media (min-width: 768px) {
  .contents {
    background-size: min(29.11vw, 559px), min(29.11vw, 559px), auto;
    background-position: right top, left top, center top;
  }
}
.contents .anchor {
  padding-top: 7.06vw;
  width: min(100% - 30px, 1280px);
  margin-inline: auto;
}
@media (min-width: 768px) {
  .contents .anchor {
    padding-top: 67px;
  }
}
.contents .anchor ul {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-wrap: wrap;
  gap: 4.8vw 3.73vw;
}
@media (min-width: 768px) {
  .contents .anchor ul {
    gap: clamp(1.6rem, 2.08vw, 2rem);
  }
}
.contents .anchor ul li {
  width: calc((100% - 3.73vw) / 2);
  transition: opacity 0.2s;
}
@media (min-width: 768px) {
  .contents .anchor ul li {
    width: min(15.93vw, 239px);
  }
}
.contents .anchor ul li:nth-last-of-type(1) {
  width: 39.46vw;
}
@media (min-width: 768px) {
  .contents .anchor ul li:nth-last-of-type(1) {
    width: min(14.66vw, 220px);
  }
}
@media (min-width: 1024px) {
  .contents .anchor ul li:hover {
    opacity: 0.6;
  }
}
.contents .contents__lst {
  width: min(100% - 20px, 1040px);
  margin-inline: auto;
  padding-bottom: clamp(5rem, 6.51vw, 15rem);
}
.contents .contents__lst li {
  padding-top: clamp(3rem, 3.75vw, 8rem);
  position: relative;
}/*# sourceMappingURL=style2.css.map */