@keyframes fv-animation {
  0% {
    opacity: 0;
  }
  15% {
    opacity: 1;
  }
  40% {
    opacity: 1;
  }
  60% {
    opacity: 0;
    z-index: -1;
    transform: scale(1.2);
  }
  100% {
    opacity: 0;
  }
}
.fv {
  position: relative;
  z-index: -2;
  width: 100%;
  height: 40.3333333333vw;
  background-color: #000000;
  overflow: hidden;
}
@media (max-width: 767px) {
  .fv {
    height: 144vw;
  }
}

.fv-bgImg {
  position: absolute;
  z-index: -1;
  opacity: 0;
  width: 100%;
  height: 40.3333333333vw;
  background-size: cover;
  background-position: bottom center;
  animation: fv-animation 20s 0s infinite;
}
@media (max-width: 767px) {
  .fv-bgImg {
    height: 144vw;
  }
}

.fv-bgImg.fv-bgImg--img1 {
  background-image: url("../images/fv/fv-main1-pc.png");
}
@media (max-width: 767px) {
  .fv-bgImg.fv-bgImg--img1 {
    background-image: url("../images/fv/fv-main1-sp.png");
  }
}

.fv-bgImg.fv-bgImg--img2 {
  background-image: url("../images/fv/fv-main2-pc.png");
  animation-delay: 10s;
}
@media (max-width: 767px) {
  .fv-bgImg.fv-bgImg--img2 {
    background-image: url("../images/fv/fv-main2-sp.png");
  }
}

.fv-copy {
  position: absolute;
  top: 0.3475vw;
  left: 9.0316666667vw;
  /* width: 44.6175vw; */
  width: 47.6175vw;
  height: 38.2266666667vw;
  transform: rotate(2deg);
}
@media (max-width: 767px) {
  .fv-copy {
    top: 25.352vw;
    left: 0.9386666667vw;
    width: 97.0586666667vw;
    height: 85.6613333333vw;
  }
}

.fv-book {
  position: absolute;
  top: 0vw;
  left: -4.4166666667vw;
  width: 71.75vw;
  height: 40.3333333333vw;
}
@media (max-width: 767px) {
  .fv-book {
    top: 10.4vw;
    left: 0vw;
    width: 100vw;
    height: 128.5333333333vw;
  }
}

.fv-donut {
  position: absolute;
  bottom: 1.95vw;
  left: 1.9291666667vw;
  width: 7.2375vw;
  height: 6.9616666667vw;
}

.fv-desc1 {
  position: absolute;
  top: 0vw;
  left: 50.5833333333vw;
  width: 18.8333333333vw;
  height: 13.9166666667vw;
}
@media (max-width: 767px) {
  .fv-desc1 {
    top: 0vw;
    left: 47.4613333333vw;
    width: 38.632vw;
    height: 31.016vw;
  }
}

.fv-desc2 {
  position: absolute;
  top: 8.5vw;
  left: 62.25vw;
  width: 9.0041666667vw;
  height: 8.92vw;
}
@media (max-width: 767px) {
  .fv-desc2 {
    top: 13.8693333333vw;
    left: 82.0773333333vw;
    width: 18.4693333333vw;
    height: 18.296vw;
  }
}

.fv-desc3 {
  position: absolute;
  top: 18.0033333333vw;
  left: 56.5vw;
  width: 8.2475vw;
  height: 8.3216666667vw;
}
@media (max-width: 767px) {
  .fv-desc3 {
    top: 27.2186666667vw;
    left: 75.1146666667vw;
    width: 16.9173333333vw;
    height: 17.0693333333vw;
  }
}

.fv-teacup {
  position: absolute;
  bottom: 0vw;
  right: -1.2166666667vw;
  width: 21.135vw;
  height: 22.775vw;
}
@media (max-width: 767px) {
  .fv-teacup {
    bottom: 0vw;
    right: -1.6266666667vw;
    width: 40.8533333333vw;
    height: 44.024vw;
  }
}

.download {
  padding: min(9px, 1.4166666667vw) min(100px, 8.3333333333vw)
    min(17px, 1.4166666667vw);
  background-color: #f2ea82;
}
@media (max-width: 767px) {
  .download {
    padding: min(4vw, 15px) min(4vw, 15px) min(4.16vw, 15.6px);
  }
}

.download-inner {
  max-width: 800px;
  margin: auto;
  display: flex;
  justify-content: space-between;
  align-items: center;
}
@media (max-width: 767px) {
  .download-inner {
    display: block;
  }
}

.download-descBlock {
  padding-top: min(12px, 1vw);
  padding-left: min(15px, 1.25vw);
  text-align: center;
}
@media (max-width: 767px) {
  .download-descBlock {
    padding-top: min(0vw, 0px);
    padding-left: min(0vw, 0px);
  }
}

.download-desc {
  color: #301e0d;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 500;
  font-size: min(21px, 1.75vw);
  line-height: min(32px, 2.6666666667vw);
}
@media (max-width: 767px) {
  .download-desc {
    font-size: min(3.4666666667vw, 13px);
    line-height: min(6.9333333333vw, 26px);
  }
}

.download-desc.download-desc--bold {
  font-weight: 700;
  font-size: min(24px, 2vw);
  line-height: min(32px, 2.6666666667vw);
}
@media (max-width: 767px) {
  .download-desc.download-desc--bold {
    font-size: min(5.3333333333vw, 20px);
    line-height: min(6.9333333333vw, 26px);
  }
}

@media (max-width: 767px) {
  .download-btnBlock {
    width: fit-content;
    margin: auto;
    padding-top: min(1.4933333333vw, 5px);
  }
}

.download-btnTop {
  color: #a33735;
  font-family: "fot-tsukuardgothic-std", sans-serif;
  font-size: min(18px, 2vw);
  font-weight: 700;
  line-height: min(36px, 3.6666666667vw);
  text-align: center;
}
@media (max-width: 767px) {
  .download-btnTop {
    font-size: min(4.3333333333vw, 15px);
    line-height: min(7.9333333333vw, 30px);
  }
}

.download-btnTop::before {
  content: "";
  position: relative;
  top: -7px;
  left: -5px;
  transform: rotate(62deg);
  width: min(24px, 2vw);
  /* height: 19px; */
  margin: 0;
  border-top: 1px solid #a33735;
}
@media (max-width: 767px) {
  .download-btnTop::before {
    width: min(19px, 5vw);
  }
}

.download-btnTop::after {
  content: "";
  position: relative;
  top: -7px;
  right: -5px;
  transform: rotate(-62deg);
  width: min(24px, 2vw);
  /* height: 19px; */
  margin: 0;
  border-top: 1px solid #a33735;
}
@media (max-width: 767px) {
  .download-btnTop::after {
    width: min(19px, 5vw);
  }
}

.download-btn {
  display: inline-block;
  position: relative;
  width: min(420px, 35vw);
  height: min(82px, 6.8333333333vw);
  padding-left: min(82px, 6.8333333333vw);
  border-radius: min(41px, 3.4166666667vw);
  background-color: #2e5291;
  box-shadow: 0 4px 0 #0c2550;
  text-decoration: none;
  overflow: hidden;
}
@media (max-width: 767px) {
  .download-btn {
    width: min(92vw, 345px);
    height: min(17.9626666667vw, 67.36px);
    padding-left: min(17.28vw, 64.8px);
    border-radius: min(8.9813333333vw, 33.68px);
  }
}

.download-btn::before {
  content: "";
  position: absolute;
  top: 0;
  left: -75%;
  width: 50%;
  height: 100%;
  background: linear-gradient(
    to right,
    rgba(255, 255, 255, 0) 0%,
    rgba(255, 255, 255, 0.3) 100%
  );
  transform: skewX(-25deg);
}

.download-btn:hover::before {
  animation: shine 0.7s;
}

@keyframes shine {
  100% {
    left: 125%;
  }
}
.download-btnAppeal {
  display: flex;
  justify-content: center;
  align-items: center;
  position: absolute;
  left: min(7px, 0.5833333333vw);
  top: min(8px, 0.6666666667vw);
  width: min(66px, 5.5vw);
  height: min(66px, 5.5vw);
  border-radius: min(41px, 3.4166666667vw);
  background-color: #a33735;
  color: #ffffff;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 700;
  font-size: min(18px, 1.5vw);
  line-height: min(20px, 1.6666666667vw);
}
@media (max-width: 767px) {
  .download-btnAppeal {
    left: min(1.5466666667vw, 5.8px);
    top: min(1.76vw, 6.6px);
    width: min(14.456vw, 54.21px);
    height: min(14.456vw, 54.21px);
    border-radius: min(7.228vw, 27.105px);
    font-size: min(3.4666666667vw, 13px);
    line-height: min(4vw, 15px);
  }
}

.download-btnRecommend {
  padding-top: min(10px, 0.8333333333vw);
  padding-left: min(39px, 3.25vw);
  color: #ffffff;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 700;
  font-size: min(16px, 1.3333333333vw);
  line-height: min(24px, 2vw);
}
@media (max-width: 767px) {
  .download-btnRecommend {
    padding-top: min(2.3466666667vw, 8.8px);
    font-size: min(3.4666666667vw, 13px);
    line-height: min(4.5333333333vw, 17px);
  }
}

.download-btnMain {
  padding-top: max(-5px, -0.4166666667vw);
  color: #eee563;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 700;
  font-size: min(30px, 2.5vw);
  line-height: min(30px, 2.5vw);
}
@media (max-width: 767px) {
  .download-btnMain {
    padding-top: max(-1.2vw, -4.5px);
    font-size: min(6.4vw, 24px);
    line-height: min(6.4vw, 24px);
  }
}

.revenue {
  position: relative;
  width: 100%;
  height: min(492px, 41vw);
  background-size: cover;
  background-position: center;
  background-image: url("../images/revenue/revenue-bg-pc.png");
}
@media (max-width: 767px) {
  .revenue {
    height: min(134.6vw, 505px);
  }
}

.revenue-inner {
  width: min(1000px, 83.3333333333vw);
  margin: 0 auto;
  padding-top: min(69px, 5.75vw);
}
@media (max-width: 767px) {
  .revenue-inner {
    padding-top: min(10.9333333333vw, 41px);
  }
}

.revenue-titleBlock {
  display: flex;
  justify-content: center;
}

.revenue-title {
  display: table;
  position: relative;
  color: #52371f;
  font-family: "Shippori Mincho", serif;
  font-family: 800;
  font-size: min(36px, 3vw);
  line-height: min(50px, 4.1666666667vw);
  letter-spacing: 0.05em;
  text-align: center;
}
@media (max-width: 767px) {
  .revenue-title {
    font-size: min(6.9333333333vw, 26px);
    line-height: min(9.8666666667vw, 37px);
    white-space: nowrap;
  }
}

.revenue-title--2 {
  color: #9b4847;
}

.revenue-title--3 {
  font-size: min(26px, 2.1666666667vw);
}
@media (max-width: 767px) {
  .revenue-title--3 {
    font-size: min(5.3333333333vw, 20px);
  }
}

.revenue-titleImg {
  position: absolute;
  left: 50%;
  top: max(-34px, -2.8333333333vw);
  transform: translateX(-50%);
  width: min(130px, 10.8333333333vw);
  height: min(130px, 10.8333333333vw);
}
@media (max-width: 767px) {
  .revenue-titleImg {
    top: max(-6.9333333333vw, -26px);
    width: min(25.6vw, 96px);
    height: min(25.6vw, 96px);
  }
}

.revenue-titleStar {
  position: absolute;
  left: max(-88.05px, -7.3375vw);
  top: max(-24.14px, -2.0116666667vw);
  width: min(65.85px, 5.4875vw);
  height: min(68.28px, 5.69vw);
}
@media (max-width: 767px) {
  .revenue-titleStar {
    left: max(-0.3466666667vw, 0.95px);
    top: max(-6.9333333333vw, -26px);
    width: min(13.0266666667vw, 48.85px);
    height: min(13.5093333333vw, 50.66px);
  }
}

.revenue-storeBlock {
  display: flex;
  justify-content: center;
  gap: 0 min(45px, 3.75vw);
  padding-top: min(65px, 5.4166666667vw);
}
@media (max-width: 767px) {
  .revenue-storeBlock {
    padding-top: min(12.8vw, 20px);
  }
}

@media (max-width: 767px) {
  .revenue-storeBlock .slick-list.draggable {
    /* width: min(57.2586666667vw, 214.72px); */
    width: min(66.258667vw, 248.29px);
  }
}

.revenue-storeOpeningDate {
  color: #9b4847;
  font-family: "fot-tsukuardgothic-std", sans-serif;
  font-style: normal;
  font-size: min(14px, 1.3333333333vw);
  font-weight: 700;
  line-height: min(30px, 2.3333333333vw);
  text-align: center;
}
@media (max-width: 767px) {
  .revenue-storeOpeningDate {
    font-size: min(4.2666666667vw, 15px);
    line-height: min(7.4666666667vw, 30px);
  }
}

.revenue-storeImg {
  position: relative;
  padding: 0 5px 5px 0;
}
@media (max-width: 767px) {
  .revenue-storeImg {
    /* width: min(57.2586666667vw, 214.72px); */
    width: min(66.258667vw, 248.29px);
    /* height: min(45.2026666667vw, 169.51px); */
    height: min(53.202667vw, 196.02px);
  }
}

.revenue-storeImg img {
  position: relative;
}

.revenue-storeName {
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translateX(-50%) translateY(-50%);
  width: min(79px, 6.5833333333vw);
  height: min(79px, 6.5833333333vw);
  padding-top: min(15.5px, 1.2916666667vw);
  border-radius: 50%;
  background-color: rgba(255, 255, 255, 0.8);
  text-align: center;
}
@media (max-width: 767px) {
  .revenue-storeName {
    width: min(21.0666666667vw, 79px);
    height: min(21.0666666667vw, 79px);
    padding-top: min(4.1333333333vw, 15.5px);
  }
}

.revenue-storeName1 {
  color: #52371f;
  font-family: "Shippori Mincho", sans-serif;
  font-weight: 700;
  font-size: min(17px, 1.4166666667vw);
  line-height: min(20px, 1.6666666667vw);
}
@media (max-width: 767px) {
  .revenue-storeName1 {
    font-size: min(4.5333333333vw, 17px);
    line-height: min(5.3333333333vw, 20px);
  }
}

.revenue-storeName2 {
  color: #52371f;
  font-family: "Shippori Mincho", sans-serif;
  font-weight: 700;
  font-size: min(16px, 1.3333333333vw);
  line-height: min(19px, 1.5833333333vw);
}
@media (max-width: 767px) {
  .revenue-storeName2 {
    font-size: min(4.2666666667vw, 16px);
    line-height: min(5.0666666667vw, 19px);
  }
}

.revenue-storeBorder {
  position: absolute;
  left: 5px;
  top: 5px;
  z-index: 1;
  width: calc(100% - 5px);
  height: calc(100% - 5px);
  border: 1px solid #52371f;
}

.revenue-storeMonthlySalesBlock {
  display: flex;
  justify-content: center;
  padding-top: min(21px, 1.75vw);
}
@media (max-width: 767px) {
  .revenue-storeMonthlySalesBlock {
    padding-top: min(4vw, 15px);
  }
}

.revenue-storeMonthlySales {
  position: relative;
  width: fit-content;
  color: #323232;
  font-family: "fot-tsukuardgothic-std", sans-serif;
  /* font-family: "Zen Maru Gothic", serif; */
  font-weight: 700;
  font-size: min(20px, 1.6666666667vw);
  line-height: min(28px, 2.3333333333vw);
  letter-spacing: -0.05em;
}
@media (max-width: 767px) {
  .revenue-storeMonthlySales {
    font-size: min(5.3333333333vw, 20px);
    line-height: min(7.4666666667vw, 28px);
  }
}

.revenue-storeMonthlySales p {
  position: relative;
  z-index: 2;
}

.revenue-storeMonthlySales::before {
  position: absolute;
  z-index: 1;
  left: 0;
  bottom: 0;
  content: "";
  width: 100%;
  height: min(5px, 0.4166666667vw);
  background-color: #f2ea82;
}
@media (max-width: 767px) {
  .revenue-storeMonthlySales::before {
    width: calc(100% - min(1.6vw, 6px));
  }
}

.revenue-storeProfit {
  color: #323232;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 500;
  font-size: min(16px, 1.3333333333vw);
  line-height: min(28px, 2.3333333333vw);
  text-align: center;
}
@media (max-width: 767px) {
  .revenue-storeProfit {
    font-size: min(4.2666666667vw, 16px);
    line-height: min(7.4666666667vw, 28px);
  }
}

.about {
  position: relative;
  width: 100%;
  height: min(612px, 51vw);
  background-size: cover;
  background-position: center;
  background-image: url("../images/about/about-bg-pc.png");
}
@media (max-width: 767px) {
  .about {
    height: min(221.6vw, 831px);
  }
}

.about-inner {
  width: min(1200px, 100vw);
  margin: 0 auto;
  padding-top: min(92px, 7.6666666667vw);
}
@media (max-width: 767px) {
  .about-inner {
    padding-top: min(14.4vw, 54px);
  }
}

.about-titleBlock {
  display: flex;
  justify-content: center;
}

.about-title {
  display: table;
  position: relative;
  color: #9b4847;
  font-family: "Shippori Mincho", serif;
  font-family: 800;
  font-size: min(36px, 3vw);
  line-height: min(50px, 4.1666666667vw);
  letter-spacing: -0.08em;
  text-align: center;
}
@media (max-width: 767px) {
  .about-title {
    font-size: min(6.9333333333vw, 26px);
    line-height: min(8vw, 30px);
    letter-spacing: -0.1em;
  }
}

.about-title--2 {
  color: #52371f;
}

.about-titleImg {
  position: absolute;
  left: 50%;
  top: max(-39px, -3.25vw);
  transform: translateX(-50%);
  width: min(130px, 10.8333333333vw);
  height: min(130px, 10.8333333333vw);
}
@media (max-width: 767px) {
  .about-titleImg {
    top: max(-7.7333333333vw, -29px);
    width: min(25.6vw, 96px);
    height: min(25.6vw, 96px);
  }
}

.about-titleStar {
  position: absolute;
  right: max(-90.85px, -7.5708333333vw);
  top: max(-24.14px, -2.0116666667vw);
  width: min(65.85px, 5.4875vw);
  height: min(68.28px, 5.69vw);
}
@media (max-width: 767px) {
  .about-titleStar {
    right: max(-5.8666666667vw, -22px);
    top: min(10.0533333333vw, 37.7px);
    width: min(13.0266666667vw, 48.85px);
    height: min(13.5093333333vw, 50.66px);
  }
}

.about-content {
  display: flex;
  justify-content: space-evenly;
  max-width: 1000px;
  margin: auto;
  margin-top: min(60px, 5.008333vw);
  background-color: #ffffff;
  /* gap: 0 min(27px, 2.25vw); */
  padding-top: min(48.1px, 4.0083333333vw);
}
@media (max-width: 767px) {
  .about-content {
    flex-direction: column-reverse;
    gap: min(2.6666666667vw, 10px) 0;
    margin: min(11vw, 40px) min(4vw, 15px);
    padding-top: min(6.9333333333vw, 26px);
  }
}

.about-mediaBlock {
  position: relative;
  width: min(399px, 33.4166666667vw);
}
@media (max-width: 767px) {
  .about-mediaBlock {
    margin: auto;
    width: min(87.7333333333vw, 329px);
  }
}

.about-media {
  width: min(399px, 34.0833333333vw);
  height: min(295px, 25vw);
}
@media (max-width: 767px) {
  .about-media {
    width: min(93.2533333333vw, 348px);
    height: min(70.7333333333vw, 265px);
  }
}

.about-descBlock {
  width: min(450px, 37.75vw);
}
@media (max-width: 767px) {
  .about-descBlock {
    width: 100%;
    padding: 0 min(1vw, 4px);
  }
}

.about-desc {
  color: #000000;
  font-family: "Noto Sans JP", sans-serif;
  font-size: min(16px, 1.3333333333vw);
  line-height: min(36px, 3vw);
}
@media (max-width: 767px) {
  .about-desc {
    font-size: min(4.2666666667vw, 16px);
    line-height: min(9.6vw, 36px);
  }
}

.about-desc span {
  font-weight: bold;
  background-image: linear-gradient(transparent 0%, #f2ea82 0%);
  background-size: 100% min(8px, 0.6666666667vw);
  background-position: bottom;
  background-repeat: no-repeat;
  padding-bottom: min(3px, 0.25vw);
}
@media (max-width: 767px) {
  .about-desc span {
    background-size: 100% min(2.1333333333vw, 8px);
    padding-bottom: min(0.8vw, 3px);
  }
}

.positioning {
  position: relative;
  width: 100%;
  padding-bottom: min(47.6px, 3.9666666667vw);
  background-size: cover;
  background-position: center;
  background-image: url("../images/positioning/positioning-bg.png");
}
@media (max-width: 767px) {
  .positioning {
    padding-bottom: min(5.3333333333vw, 20px);
  }
}

.positioning-inner {
  width: min(1200px, 100vw);
  margin: 0 auto;
  padding-top: min(78px, 6.5vw);
}
@media (max-width: 767px) {
  .positioning-inner {
    width: 100%;
    padding-top: min(15.2vw, 57px);
  }
}

.positioning-titleBlock {
  display: flex;
  justify-content: center;
}

.positioning-title {
  display: table;
  position: relative;
  color: #52371f;
  font-family: "Shippori Mincho", serif;
  font-family: 800;
  font-size: min(36px, 3vw);
  line-height: min(42px, 3.5vw);
  letter-spacing: -0.05em;
  text-align: center;
}
@media (max-width: 767px) {
  .positioning-title {
    font-size: min(6.9333333333vw, 26px);
    line-height: min(8vw, 30px);
    letter-spacing: 0;
  }
}

.positioning-title--1 {
  color: #9b4847;
}

.positioning-titleImg {
  position: absolute;
  left: 50%;
  top: max(-39px, -3.25vw);
  transform: translateX(-50%);
  width: min(130px, 10.8333333333vw);
  height: min(130px, 10.8333333333vw);
}
@media (max-width: 767px) {
  .positioning-titleImg {
    top: max(-6.9333333333vw, -26px);
    width: min(25.6vw, 96px);
    height: min(25.6vw, 96px);
  }
}

.positioning-titleStar {
  position: absolute;
  left: max(-88.05px, -7.3375vw);
  top: max(-24.14px, -2.0116666667vw);
  width: min(65.85px, 5.4875vw);
  height: min(68.28px, 5.69vw);
}
@media (max-width: 767px) {
  .positioning-titleStar {
    left: max(-17.3466666667vw, -65.05px);
    top: max(-6.9333333333vw, -26px);
    width: min(13.0266666667vw, 48.85px);
    height: min(13.5093333333vw, 50.66px);
  }
}

.positioning-subTitleBlock {
  padding-top: min(46px, 3.8333333333vw);
}
@media (max-width: 767px) {
  .positioning-subTitleBlock {
    padding-top: min(10.9333333333vw, 41px);
  }
}

.positioning-subTitle {
  color: #52371f;
  font-family: "Shippori Mincho", serif;
  font-family: 600;
  font-size: min(20px, 1.6666666667vw);
  line-height: min(29px, 2.4166666667vw);
  text-align: center;
}
@media (max-width: 767px) {
  .positioning-subTitle {
    font-size: min(4.8vw, 18px);
    line-height: min(7.4666666667vw, 28px);
  }
}

.positioning-content {
  display: flex;
  padding-top: min(15px, 1.25vw);
  overflow: hidden;
}
@media (max-width: 767px) {
  .positioning-content {
    align-items: center;
    flex-direction: column;
    padding-top: min(6.1333333333vw, 23px);
  }
}

.positioning-matrixBlock {
  padding-left: min(61px, 5.0833333333vw);
}
@media (max-width: 767px) {
  .positioning-matrixBlock {
    padding-left: min(0vw, 0px);
  }
}

.positioning-matrix {
  width: min(617px, 51.4166666667vw);
  height: min(456.42px, 38.035vw);
}
@media (max-width: 767px) {
  .positioning-matrix {
    width: min(100vw, 375px);
    height: min(72.3066666667vw, 271.15px);
  }
}

.positioning-chocolateBlock {
  position: relative;
}
@media (max-width: 767px) {
  .positioning-chocolateBlock {
    position: relative;
    height: min(67.5493333333vw, 253.31px);
    padding-left: min(6.4026666667vw, 24.01px);
  }
}

.positioning-chocolate {
  position: absolute;
  left: max(-10px, -0.8333333333vw);
  top: min(9px, 0.75vw);
  width: min(588.64px, 49.0533333333vw);
  height: min(424.84px, 35.4033333333vw);
}
@media (max-width: 767px) {
  .positioning-chocolate {
    position: relative;
    left: 0;
    top: 0;
    width: min(93.5946666667vw, 350.98px);
    height: min(67.5493333333vw, 253.31px);
  }
}

.reason {
  position: relative;
  width: 100%;
  padding-bottom: min(65px, 5.4166666667vw);
  background-size: cover;
  background-position: center;
  background-image: url("../images/reason/reason-bg.png");
}
@media (max-width: 767px) {
  .reason {
    padding-bottom: min(17.0666666667vw, 64px);
  }
}

.reason-inner {
  position: relative;
  width: min(1000px, 83.3333333333vw);
  margin: 0 auto;
  padding-top: min(70px, 5.8333333333vw);
}
@media (max-width: 767px) {
  .reason-inner {
    width: calc(100% - min(8vw, 30px));
    padding-top: min(17.0666666667vw, 64px);
  }
}

.reason-titleBlock {
  display: flex;
  justify-content: center;
}

.reason-title {
  display: table;
  position: relative;
  font-family: "Shippori Mincho", serif;
  font-weight: 800;
  font-size: min(36px, 3vw);
  line-height: min(56px, 4.5vw);
  letter-spacing: -0.05em;
  text-align: center;
}
@media (max-width: 767px) {
  .reason-title {
    font-size: min(6.9333333333vw, 26px);
    line-height: min(11vw, 40px);
    letter-spacing: -0.1em;
    white-space: nowrap;
  }
}

.reason-title--1 {
  color: #52371f;
}

.reason-title--2 {
  color: #9b4847;
}

.reason-titleImg {
  position: absolute;
  left: 50%;
  top: max(-30px, -2.5vw);
  transform: translateX(-50%);
  width: min(130px, 10.8333333333vw);
  height: min(130px, 10.8333333333vw);
}
@media (max-width: 767px) {
  .reason-titleImg {
    top: max(-7.7333333333vw, -29px);
    width: min(25.6vw, 96px);
    height: min(25.6vw, 96px);
  }
}

.reason-titleStar {
  position: absolute;
  right: max(-113.05px, -9.4208333333vw);
  top: min(-30.66px, -1.638333vw);
  width: min(65.85px, 5.4875vw);
  height: min(68.28px, 5.69vw);
}
@media (max-width: 767px) {
  .reason-titleStar {
    right: max(-3.2vw, -12px);
    top: max(-14.496vw, -54.36px);
    width: min(13.0266666667vw, 48.85px);
    height: min(13.5093333333vw, 50.66px);
  }
}

.reason-subTitleBlock {
  padding-top: min(29px, 2.4166666667vw);
}
@media (max-width: 767px) {
  .reason-subTitleBlock {
    padding-top: min(5.0666666667vw, 19px);
  }
}

.reason-subTitle {
  color: #52371f;
  font-family: "Shippori Mincho", serif;
  font-family: 600;
  font-size: min(20px, 1.6666666667vw);
  line-height: min(29px, 2.4166666667vw);
  text-align: center;
}
@media (max-width: 767px) {
  .reason-subTitle {
    font-size: min(4.8vw, 18px);
    line-height: min(7.4666666667vw, 28px);
  }
}

.reason-contents {
  display: flex;
  flex-wrap: wrap;
  gap: min(37px, 3.0833333333vw) min(69px, 5.75vw);
  padding-top: min(30px, 2.5vw);
}
@media (max-width: 767px) {
  .reason-contents {
    flex-direction: column;
    align-items: center;
    gap: min(8vw, 30px) 0;
    padding-top: min(6.6666666667vw, 25px);
  }
}

.reason-content {
  position: relative;
  width: calc((100% - min(69px, 5.75vw)) / 2);
  min-height: min(374px, 31.1666666667vw);
  padding: min(11px, 0.9166666667vw) min(8px, 0.6666666667vw)
    min(8px, 0.6666666667vw) min(0px, 0vw);
}
@media (max-width: 767px) {
  .reason-content {
    width: min(92vw, 345px);
    min-height: min(73.8666666667vw, 277px);
    padding: min(2.1333333333vw, 8px) min(1.6vw, 6px) min(1.6vw, 6px)
      min(0vw, 0px);
  }
}

.reason-contentBorder {
  position: absolute;
  z-index: 1;
  left: min(8px, 0.6666666667vw);
  top: min(19px, 1.5833333333vw);
  width: calc(100% - min(8px, 0.6666666667vw));
  height: calc(100% - min(16px, 1.3333333333vw));
  border: 1px solid #52371f;
}
@media (max-width: 767px) {
  .reason-contentBorder {
    left: min(1.6vw, 6px);
    top: min(3.7333333333vw, 14px);
    width: calc(100% - min(1.6vw, 6px));
    height: calc(100% - min(3.2vw, 12px));
  }
}

.reason-contentPointImg {
  position: absolute;
  z-index: 2;
  left: min(13.98px, 1.165vw);
  top: min(0px, 0vw);
  width: min(64.74px, 5.395vw);
  height: min(84.07px, 7.0058333333vw);
}
@media (max-width: 767px) {
  .reason-contentPointImg {
    left: min(2.7626666667vw, 10.36px);
    top: min(0vw, 0px);
    width: min(12.7866666667vw, 47.95px);
    height: min(16.6053333333vw, 62.27px);
  }
}

.reason-contentInner {
  position: relative;
}

.reason-contentInfo {
  min-height: min(149px, 12.4166666667vw);
  padding-top: min(15px, 1.25vw);
  background-color: #ffffff;
}
@media (max-width: 767px) {
  .reason-contentInfo {
    min-height: min(30.1333333333vw, 113px);
    padding-top: min(2.4vw, 9px);
  }
}

.reason-contentInfoTitle {
  display: table;
  width: 100%;
  font-family: "Shippori Mincho", sans-serif;
  font-weight: 700;
  font-size: min(28px, 2.3333333333vw);
  line-height: min(40px, 3.3333333333vw);
  text-align: center;
}
@media (max-width: 767px) {
  .reason-contentInfoTitle {
    font-size: min(5.3333333333vw, 20px);
    line-height: min(7.7333333333vw, 29px);
  }
}

.reason-contentInfoTitle .reason-contentInfoTitle--red {
  color: #9b4847;
}

.reason-contentInfoTitle .reason-contentInfoTitle--brown {
  color: #52371f;
}

.reason-contentInfoDesc {
  padding: min(1px, 0.0833333333vw) min(28px, 2.3333333333vw) 0;
  color: #323232;
  font-family: "Noto Sans JP", sans-serif;
  font-size: min(16px, 1.3333333333vw);
  line-height: min(30px, 2.5vw);
}
@media (max-width: 767px) {
  .reason-contentInfoDesc {
    padding: min(2.9333333333vw, 11px) min(5.3333333333vw, 20px)
      min(6.64vw, 24.9px);
    font-size: min(3.7333333333vw, 14px);
    line-height: min(6.9333333333vw, 26px);
  }
}

.reason-contentInfoDesc span {
  font-weight: bold;
  background-image: linear-gradient(transparent 0%, #f2ea82 0%);
  background-size: 100% min(8px, 0.6666666667vw);
  background-position: bottom;
  background-repeat: no-repeat;
  padding-bottom: min(3px, 0.25vw);
}
@media (max-width: 767px) {
  .reason-contentInfoDesc span {
    background-size: 100% min(2.1333333333vw, 8px);
    padding-bottom: min(0.8vw, 3px);
  }
}

.reason-characterImg {
  position: absolute;
  right: min(50px, 4.1666666667vw);
  bottom: max(-3px, -0.25vw);
  width: min(387px, 32.25vw);
  height: min(381px, 31.75vw);
}

.download2 {
  padding: min(23px, 2.6666666667vw) min(100px, 8.3333333333vw)
    min(23px, 2.6666666667vw);
  background-color: #f2ea82;
}
@media (max-width: 767px) {
  .download2 {
    padding: min(8.6133333333vw, 32.3px) min(4vw, 15px)
      min(8.6133333333vw, 32.3px);
  }
}

.download2-inner {
  display: flex;
  justify-content: space-around;
}
@media (max-width: 767px) {
  .download2-inner {
    display: block;
  }
}

@media (max-width: 767px) {
  .download2-btnTop {
    letter-spacing: -0.1em;
  }
}

@media (max-width: 767px) {
  .download2-btnTop::before {
    left: 3px;
  }
}

@media (max-width: 767px) {
  .download2-btnTop::after {
    right: 3px;
  }
}

.download2-btn {
  display: inline-block;
  position: relative;
  margin: auto;
  width: min(420px, 35vw);
  height: min(82px, 6.8333333333vw);
  padding-left: min(82px, 6.8333333333vw);
  border-radius: min(41px, 3.4166666667vw);
  background-color: #2e5291;
  box-shadow: 0 4px 0 #0c2550;
  text-decoration: none;
  overflow: hidden;
  display: flex;
  align-items: center;
}
@media (max-width: 767px) {
  .download2-btn {
    width: min(92vw, 345px);
    height: min(17.9626666667vw, 67.36px);
    padding-left: min(17.28vw, 64.8px);
    border-radius: min(8.9813333333vw, 33.68px);
  }
}

.download2-btn::before {
  content: "";
  position: absolute;
  top: 0;
  left: -75%;
  width: 50%;
  height: 100%;
  background: linear-gradient(
    to right,
    rgba(255, 255, 255, 0) 0%,
    rgba(255, 255, 255, 0.3) 100%
  );
  transform: skewX(-25deg);
}

.download2-btn:hover::before {
  animation: shine 0.7s;
}

.download2-btnAppeal {
  display: flex;
  justify-content: center;
  align-items: center;
  position: absolute;
  left: min(7px, 0.5833333333vw);
  top: min(8px, 0.6666666667vw);
  width: min(66px, 5.5vw);
  height: min(66px, 5.5vw);
  border-radius: min(41px, 3.4166666667vw);
  background-color: #a33735;
  color: #ffffff;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 700;
  font-size: min(18px, 1.5vw);
  line-height: min(20px, 1.6666666667vw);
}
@media (max-width: 767px) {
  .download2-btnAppeal {
    left: min(1.5466666667vw, 5.8px);
    top: min(1.76vw, 6.6px);
    width: min(14.456vw, 54.21px);
    height: min(14.456vw, 54.21px);
    border-radius: min(7.228vw, 27.105px);
    font-size: min(3.4666666667vw, 13px);
    line-height: min(4vw, 15px);
  }
}

.download2-btnRecommend {
  padding-top: min(10px, 0.8333333333vw);
  padding-left: min(3px, 0.25vw);
  color: #ffffff;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 700;
  font-size: min(16px, 1.3333333333vw);
  line-height: min(24px, 2vw);
}
@media (max-width: 767px) {
  .download2-btnRecommend {
    padding-top: min(2.3466666667vw, 8.8px);
    padding-left: min(0vw, 0px);
    font-size: min(3.4666666667vw, 13px);
    line-height: min(4.5333333333vw, 17px);
  }
}

.download2-btnMain {
  padding-top: max(-5px, -0.4166666667vw);
  color: #eee563;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 700;
  font-size: min(30px, 2.5vw);
  line-height: min(30px, 2.5vw);
}
@media (max-width: 767px) {
  .download2-btnMain {
    padding-top: max(-1.2vw, -4.5px);
    font-size: min(6.4vw, 24px);
    line-height: min(6.4vw, 24px);
  }
}

.voice {
  position: relative;
  width: 100%;
  /* min-height: min(761px, 63.4166666667vw); */
  min-height: min(700px, 63.4166666667vw);
  background-size: cover;
  background-position: center;
  background-image: url("../images/voice/voice-bg.png");
  overflow-x: hidden;
}
@media (max-width: 767px) {
  .voice {
    min-height: min(181.3333333333vw, 680px);
  }
}

.voice-inner {
  width: min(1200px, 100vw);
  margin: 0 auto;
  padding-top: min(66px, 5.5vw);
  padding-bottom: min(40px, 9.8333333333vw);
}
@media (max-width: 767px) {
  .voice-inner {
    width: min(100vw, 375px);
    padding-top: min(15.2vw, 57px);
    padding-bottom: min(0vw, 0px);
  }
}

.voice-titleBlock {
  display: flex;
  justify-content: center;
}

.voice-title {
  display: table;
  position: relative;
  color: #52371f;
  font-family: "Shippori Mincho", serif;
  font-family: 800;
  font-size: min(36px, 3vw);
  line-height: min(42px, 3.5vw);
  letter-spacing: 0.05em;
  text-align: center;
}
@media (max-width: 767px) {
  .voice-title {
    font-size: min(6.9333333333vw, 26px);
    line-height: min(8vw, 30px);
  }
}

.voice-title--1 {
  color: #52371f;
}

.voice-title--2 {
  color: #9b4847;
}

.voice-titleImg {
  position: absolute;
  left: 50%;
  top: max(-33px, -2.75vw);
  transform: translateX(-50%);
  width: min(130px, 10.8333333333vw);
  height: min(130px, 10.8333333333vw);
}
@media (max-width: 767px) {
  .voice-titleImg {
    top: max(-6.9333333333vw, -26px);
    width: min(25.6vw, 96px);
    height: min(25.6vw, 96px);
  }
}

.voice-titleStar {
  position: absolute;
  left: max(-93.75px, -7.8125vw);
  top: max(-17.14px, -1.4283333333vw);
  width: min(61.05px, 5.0875vw);
  height: min(68.28px, 5.69vw);
}
@media (max-width: 767px) {
  .voice-titleStar {
    left: max(-17.3466666667vw, -65.05px);
    top: max(-6.9333333333vw, -26px);
    width: min(13.0266666667vw, 48.85px);
    height: min(13.5093333333vw, 50.66px);
  }
}

.voice-content {
  /* display: flex;
  gap: 0 min(66.7px, 5.5583333333vw); */
  padding-top: min(69.1px, 5.7583333333vw);
}
@media (max-width: 767px) {
  .voice-content {
    flex-direction: column-reverse;
    align-items: center;
    gap: min(2.0266666667vw, 7.6px) 0;
    padding-top: min(17.3333333333vw, 65px);
  }
}

.voice-mediaBlock {
  display: flex;
  width: min(533px, 44.4166666667vw);
}
@media (max-width: 767px) {
  .voice-mediaBlock {
    width: min(87.7333333333vw, 329px);
    height: min(71.7333333333vw, 269px);
  }
}

.voice-media {
  position: absolute;
  left: max(-56px, -4.6666666667vw);
  width: min(589px, 49.0833333333vw);
  height: min(420px, 35vw);
}
@media (max-width: 767px) {
  .voice-media {
    left: max(-9.52vw, -35.7px);
    width: min(97.2533333333vw, 364.7px);
    height: min(71.7333333333vw, 269px);
  }
}

.voice-voices {
  position: relative;
  margin: auto;
  display: flex;
  justify-content: center;
  /* width: min(479.6px, 39.9666666667vw); */
  width: min(730px, 60.9666666667vw);
  /* height: min(521px, 43.4166666667vw); */
  height: min(440px, 35.4166666667vw);
  /* padding-top: min(9.9px, 0.825vw); */
  padding-top: min(21.9px, 1.825vw);
  background-color: #ffffff;
}
@media (max-width: 767px) {
  .voice-voices {
    width: min(92vw, 345px);
    height: min(117.733333vw, 460px);
    /* padding-top: min(0vw, 0px); */
    padding-top: min(6vw, 23px);
  }
}

.voice-voices::before {
  display: block;
  position: absolute;
  content: "";
  top: min(10px, 1.4166666667vw);
  left: min(10px, 0.9666666667vw);
  width: min(720px, 60.9666666667vw);
  height: min(430px, 35.4166666667vw);
  border: 1px solid #52371f;
}
@media (max-width: 767px) {
  .voice-voices::before {
    left: min(1.6vw, 6px);
    top: min(3.7333333333vw, 5px);
    width: calc(100% - min(1.6vw, 6px));
    height: calc(100% - min(0.2vw, 12px));
    /* width: min(340px, 60.9666666667vw);
    height: min(440px, 35.4166666667vw); */
  }
}

@media (max-width: 767px) {
  .voice-voices.slick-dotted.slick-slider {
    margin-bottom: 50px;
  }
}

.voice-voices .slick-prev,
.voice-voices .slick-next {
  /* top: min(9.9px, 0.825vw); */
  top: min(210.9px, 17.825vw);
  /* width: min(20.7px, 1.725vw);
  height: min(427.54px, 35.6283333333vw); */
  width: min(40px, 3.725vw);
  height: min(40px, 3.725vw);
  border-radius: 50%;
  background-color: rgba(82, 55, 3, 0.2);
}
@media (max-width: 767px) {
  .voice-voices .slick-prev,
  .voice-voices .slick-next {
    top: min(58vw, 215px);
    width: min(10vw, 36px);
    /* height: min(99.7333333333vw, 374px); */
    height: min(10vw, 36px);
  }
}

.voice-voices .slick-prev {
  left: max(-55.7px, -7.725vw);
}
@media (max-width: 767px) {
  .voice-voices .slick-prev {
    left: max(-6vw, -20px);
  }
}

.voice-voices .slick-next {
  right: max(-55.7px, -7.725vw);
}
@media (max-width: 767px) {
  .voice-voices .slick-next {
    right: max(-6vw, -20px);
  }
}

.voice-voices .slick-list.draggable {
  width: min(590px, 49.9666666667vw);
  /* height: min(521px, 43.4166666667vw); */
  height: min(395px, 33.4166666667vw);
}
@media (max-width: 767px) {
  .voice-voices .slick-list.draggable {
    width: min(92vw, 345px);
    height: min(109.7333333333vw, 425px);
  }
}

.voice-voice {
  /* width: min(479.6px, 39.9666666667vw); */
  width: min(590px, 39.9666666667vw);
  /* height: min(446px, 37.1666666667vw); */
  height: min(352px, 32.1666666667vw);
  /* padding: 0 min(35.3px, 2.9416666667vw); */
  padding: 0 min(2px, 2.9416666667vw);
}
@media (max-width: 767px) {
  .voice-voice {
    width: min(92vw, 345px);
    height: min(99.7333333333vw, 374px);
    padding: 0 min(35.3px, 5.9416666667vw);
  }
}

.voice-voiceTitleBlock {
  position: relative;
  padding-top: min(22px, 1.8333333333vw);
  text-align: center;
}
@media (max-width: 767px) {
  .voice-voiceTitleBlock {
    padding-top: min(0vw, 0px);
  }
}

.voice-voiceTitleMarkLeft {
  position: absolute;
  /* left: min(38.11px, 3.1758333333vw); */
  left: min(130.11px, 11.1758333333vw);
  top: min(22px, 1.8333333333vw);
  width: min(29.62px, 2.4683333333vw);
  height: min(80.13px, 6.6775vw);
  transform: rotate(6deg);
}
@media (max-width: 767px) {
  .voice-voiceTitleMarkLeft {
    width: min(6vw, 21px);
    height: min(14.733333vw, 57px);
    left: min(8.6vw, 32px);
  }
}

.voice-voiceTitleMarkRight {
  position: absolute;
  /* right: min(38.11px, 3.1758333333vw); */
  right: min(130.11px, 11.1758333333vw);
  top: min(22px, 1.8333333333vw);
  width: min(29.62px, 2.4683333333vw);
  height: min(80.13px, 6.6775vw);
  transform: rotate(-6deg);
}
@media (max-width: 767px) {
  .voice-voiceTitleMarkRight {
    width: min(6vw, 21px);
    height: min(14.733333vw, 57px);
    right: min(8.6vw, 32px);
  }
}

.voice-voiceTitle {
  color: #52371f;
  font-family: "Shippori Mincho", sans-serif;
  font-weight: 800;
  font-size: min(30px, 2.5vw);
  line-height: min(45px, 3.75vw);
}
@media (max-width: 767px) {
  .voice-voiceTitle {
    font-size: min(5.6vw, 21px);
    line-height: min(8.5333333333vw, 32px);
  }
}

.voice-voiceTitle span {
  color: #67a542;
  font-size: min(40px, 3.3333333333vw);
}
@media (max-width: 767px) {
  .voice-voiceTitle span {
    font-size: min(7.4666666667vw, 28px);
  }
}

.voice-voiceNameBlock {
  display: flex;
  flex-direction: column;
  align-items: center;
  padding-top: min(19px, 1.5833333333vw);
}
@media (max-width: 767px) {
  .voice-voiceNameBlock {
    padding-top: min(3.12vw, 11.7px);
  }
}

.voice-voiceName {
  width: fit-content;
  color: #52371f;
  font-family: "Shippori Mincho", sans-serif;
  font-weight: 800;
  font-size: min(16px, 1.3333333333vw);
  line-height: min(30px, 2.5vw);
  letter-spacing: 0.05em;
}
@media (max-width: 767px) {
  .voice-voiceName {
    font-size: min(3.2vw, 12px);
    line-height: min(6.4vw, 24px);
    letter-spacing: 0.05em;
  }
}

.voice-voiceName span {
  font-size: min(20px, 1.6666666667vw);
}
@media (max-width: 767px) {
  .voice-voiceName span {
    font-size: min(4.2666666667vw, 16px);
  }
}

.voice-voiceName.voice-voiceName--mark {
  margin-top: min(5px, 0.4166666667vw);
  background-color: rgba(103, 165, 66, 0.15);
  line-height: min(20px, 1.6666666667vw);
}
@media (max-width: 767px) {
  .voice-voiceName.voice-voiceName--mark {
    margin-top: min(0.5333333333vw, 2px);
    line-height: min(5.3333333333vw, 20px);
  }
}

.voice-voiceDescBlock {
  padding-top: min(31px, 2.5833333333vw);
}
@media (max-width: 767px) {
  .voice-voiceDescBlock {
    padding-top: min(3.5466666667vw, 13.3px);
  }
}

.voice-voiceDesc {
  color: #52371f;
  font-family: "Noto Sans JP", sans-serif;
  font-size: min(14px, 1.1666666667vw);
  line-height: min(28px, 2.3333333333vw);
}
@media (max-width: 767px) {
  .voice-voiceDesc {
    font-size: min(3.7333333333vw, 14px);
    line-height: min(6.9333333333vw, 26px);
  }
}

.voice-voiceDesc span {
  font-weight: bold;
  background-image: linear-gradient(transparent 0%, #f2ea82 0%);
  background-size: 100% min(8px, 0.6666666667vw);
  background-position: bottom;
  background-repeat: no-repeat;
  padding-bottom: min(3px, 0.25vw);
}
@media (max-width: 767px) {
  .voice-voiceDesc span {
    background-size: 100% min(2.1333333333vw, 8px);
    padding-bottom: min(0.8vw, 3px);
  }
}

.simulation {
  position: relative;
  width: 100%;
  background-size: cover;
  background-position: center;
  background-image: url("../images/simulation/simulation-bg.png");
}

.simulation-inner {
  width: min(1000px, 83.3333333333vw);
  margin: 0 auto;
  padding-top: min(92px, 7.6666666667vw);
  padding-bottom: min(60.1px, 5.0083333333vw);
}
@media (max-width: 767px) {
  .simulation-inner {
    width: calc(100% - min(8vw, 30px));
    padding-top: min(16vw, 60px);
    padding-bottom: min(14.6666666667vw, 55px);
  }
}

.simulation-titleBlock {
  display: flex;
  justify-content: center;
}

.simulation-title {
  display: table;
  position: relative;
  font-family: "Shippori Mincho", serif;
  font-family: 800;
  font-size: min(36px, 3vw);
  line-height: min(50px, 4.1666666667vw);
  text-align: center;
}
@media (max-width: 767px) {
  .simulation-title {
    font-size: min(6.9333333333vw, 26px);
    line-height: min(8vw, 30px);
  }
}

.simulation-title--1 {
  color: #9b4847;
}

.simulation-title--2 {
  color: #52371f;
}

.simulation-titleImg {
  position: absolute;
  left: 50%;
  top: max(-39px, -3.25vw);
  transform: translateX(-50%);
  width: min(130px, 10.8333333333vw);
  height: min(130px, 10.8333333333vw);
}
@media (max-width: 767px) {
  .simulation-titleImg {
    top: max(-7.7333333333vw, -29px);
    width: min(25.6vw, 96px);
    height: min(25.6vw, 96px);
  }
}

.simulation-titleStar {
  position: absolute;
  right: max(-106.05px, -8.8375vw);
  top: max(-23.66px, -1.9716666667vw);
  width: min(65.85px, 5.4875vw);
  height: min(68.28px, 5.69vw);
}
@media (max-width: 767px) {
  .simulation-titleStar {
    right: max(-15.4533333333vw, -57.95px);
    top: max(-4.576vw, -17.16px);
    width: min(13.0266666667vw, 48.85px);
    height: min(13.5093333333vw, 50.66px);
  }
}

.simulation-chartBlock {
  padding-top: min(69px, 5.75vw);
}
@media (max-width: 767px) {
  .simulation-chartBlock {
    padding-top: min(6.9333333333vw, 26px);
  }
}

.simulation-chartDesc {
  padding-top: min(27.9px, 2.325vw);
  color: #000000;
  font-family: "Noto Sans JP", sans-serif;
  font-size: min(14px, 1.1666666667vw);
  line-height: min(15px, 1.25vw);
  text-align: center;
}

.flow {
  position: relative;
  width: 100%;
  background-size: cover;
  background-position: center;
  background-image: url("../images/flow/flow-bg.png");
}

.flow-inner {
  width: min(1000px, 83.3333333333vw);
  margin: 0 auto;
  padding-top: min(78px, 6.5vw);
  padding-bottom: min(68px, 5.6666666667vw);
}
@media (max-width: 767px) {
  .flow-inner {
    width: 100%;
    padding-top: min(16.2666666667vw, 61px);
    padding-bottom: min(22.32vw, 83.7px);
  }
}

.flow-titleBlock {
  display: flex;
  justify-content: center;
}

.flow-title {
  display: table;
  position: relative;
  color: #52371f;
  font-family: "Shippori Mincho", serif;
  font-family: 800;
  font-size: min(36px, 3vw);
  line-height: min(50px, 4.1666666667vw);
  text-align: center;
}
@media (max-width: 767px) {
  .flow-title {
    font-size: min(6.9333333333vw, 26px);
    line-height: min(13.3333333333vw, 50px);
  }
}

.flow-title--1 {
  color: #52371f;
}

.flow-title--2 {
  color: #9b4847;
}

.flow-titleImg {
  position: absolute;
  left: 50%;
  top: max(-39px, -3.25vw);
  transform: translateX(-50%);
  width: min(130px, 10.8333333333vw);
  height: min(130px, 10.8333333333vw);
}
@media (max-width: 767px) {
  .flow-titleImg {
    top: max(-8vw, -30px);
    width: min(25.6vw, 96px);
    height: min(25.6vw, 96px);
  }
}

.flow-titleStar {
  position: absolute;
  left: max(-80.75px, -6.7291666667vw);
  top: max(-17.66px, -1.4716666667vw);
  width: min(61.05px, 5.0875vw);
  height: min(68.28px, 5.69vw);
}
@media (max-width: 767px) {
  .flow-titleStar {
    left: max(-14.9466666667vw, -56.05px);
    top: max(-5.904vw, -22.14px);
    width: min(13.0266666667vw, 48.85px);
    height: min(13.5093333333vw, 50.66px);
  }
}

.flow-stepBlock {
  padding-top: min(97px, 8.0833333333vw);
  overflow-y: hidden !important;
}
@media (max-width: 767px) {
  .flow-stepBlock {
    padding-top: min(18.1333333333vw, 68px);
    overflow-x: scroll !important;
  }
}

.flow-stepContent {
  display: flex;
}
@media (max-width: 767px) {
  .flow-stepContent {
    width: fit-content;
    padding: 0 min(4vw, 15px);
  }
}

.flow-download {
  width: min(96px, 8vw);
  height: min(114.64px, 9.5533333333vw);
  margin-top: min(59.36px, 4.9466666667vw);
}
@media (max-width: 767px) {
  .flow-download {
    width: min(24vw, 90px);
    height: min(28.36vw, 106.35px);
    margin-top: min(15.1866666667vw, 56.95px);
  }
}

.flow-step {
  width: min(134px, 11.1666666667vw);
  height: min(174px, 14.5vw);
}
@media (max-width: 767px) {
  .flow-step {
    width: min(33.536vw, 125.76px);
    height: min(43.5466666667vw, 163.3px);
  }
}

.flow-icon {
  width: min(22.96px, 1.9133333333vw);
  height: min(41.91px, 3.4925vw);
  margin: min(66px, 5.5vw) min(10.9px, 0.9083333333vw);
}
@media (max-width: 767px) {
  .flow-icon {
    width: min(5.7466666667vw, 21.55px);
    height: min(10.4906666667vw, 39.34px);
    margin: min(16.5333333333vw, 62px) min(1.8666666667vw, 7px)
      min(16.5333333333vw, 62px) min(2.72vw, 10.2px);
  }
}

.session {
  position: relative;
  width: 100%;
  background-size: cover;
  background-position: center;
  background-image: url("../images/session/session-bg.png");
}

.session-inner {
  width: min(1000px, 83.3333333333vw);
  margin: 0 auto;
  padding-top: min(79px, 6.5833333333vw);
  padding-bottom: min(32px, 2.6666666667vw);
}
@media (max-width: 767px) {
  .session-inner {
    width: calc(100% - min(1vw, 4px));
    padding-top: min(16vw, 60px);
    padding-bottom: min(4.8266666667vw, 18.1px);
  }
}

.session-titleBlock {
  display: flex;
  justify-content: center;
}

.session-title {
  position: relative;
  width: fit-content;
  color: #52371f;
  font-family: "Shippori Mincho", sans-serif;
  font-weight: 800;
  font-size: min(30px, 2.5vw);
  line-height: min(50px, 4.1666666667vw);
  letter-spacing: 0.05em;
  text-align: center;
}
@media (max-width: 767px) {
  .session-title {
    font-size: min(4.8vw, 18px);
    line-height: min(7.4666666667vw, 28px);
    letter-spacing: 0;
  }
}

.session-title span {
  background: linear-gradient(transparent 66%, #f2ea82 66%);
}

.session-title-left {
  position: absolute;
  left: max(-58.02px, -4.835vw);
  top: min(6.66px, 0.555vw);
  width: min(35.62px, 2.9683333333vw);
  height: min(87.34px, 7.2783333333vw);
}
@media (max-width: 767px) {
  .session-title-left {
    left: max(-5.2773333333vw, -19.79px);
    top: min(1.456vw, 5.46px);
    width: min(5.2773333333vw, 19.79px);
    height: min(12.944vw, 48.54px);
  }
}

.session-title-right {
  position: absolute;
  right: max(-58.02px, -4.835vw);
  top: min(6.66px, 0.555vw);
  width: min(35.62px, 2.9683333333vw);
  height: min(87.34px, 7.2783333333vw);
}
@media (max-width: 767px) {
  .session-title-right {
    right: max(-5.2773333333vw, -19.79px);
    top: min(1.456vw, 5.46px);
    width: min(5.2773333333vw, 19.79px);
    height: min(12.944vw, 48.54px);
  }
}

.session-imgBlock {
  display: flex;
  justify-content: center;
  padding-top: min(33.1px, 2.7583333333vw);
}
@media (max-width: 767px) {
  .session-imgBlock {
    padding-top: min(8.0266666667vw, 30.1px);
  }
}

.session-img {
  width: min(794.14px, 66.1783333333vw);
}
@media (max-width: 767px) {
  .session-img {
    width: min(101.368vw, 380.13px);
  }
}

.only-pc {
  display: block;
}
@media (max-width: 767px) {
  .only-pc {
    display: none;
  }
}

.only-sp {
  display: none;
}
@media (max-width: 767px) {
  .only-sp {
    display: block;
  }
}

.slash {
  display: flex;
  justify-content: center;
  align-items: center;
  position: relative;
  align-items: baseline;
}
