@charset "UTF-8";
html {
  scroll-padding-top: calc(var(--header_h, 0) + 14.4vw);
}
@media screen and (min-width: 769px) {
  html {
    scroll-padding-top: calc(var(--header_h, 0) + 3.90625vw);
  }
}

img {
  max-width: 100%;
  height: auto;
  vertical-align: middle;
}

.en {
  font-family: "Gill Sans", "Gill Sans Nova", sans-serif;
}

.orange {
  color: #BF3B2C;
}

.timerHidden {
  display: none;
}

.timerVisible {
  display: block;
}

#headBar {
  text-align: center;
  font-size: calc(14 / 375 * 100vw);
  color: #fff;
  font-weight: 700;
  padding: calc(10 / 375 * 100vw);
  background-color: #BF3B2C;
  font-family: "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "Hiragino Kaku Gothic Pro", sans-serif;
}
@media screen and (min-width: 769px) {
  #headBar {
    font-size: min(calc(28 / 1920 * 100vw), 1.75rem);
    padding: min(calc(20 / 1920 * 100vw), 1.25rem);
  }
}

#reason {
  background-color: #BF3B2C;
  color: #fff;
}

#recommend {
  background-color: #F8F4E5;
}

.sec {
  padding: calc(42 / 375 * 100vw) 0 calc(80 / 375 * 100vw);
}
@media screen and (min-width: 769px) {
  .sec {
    padding: min(calc(112 / 1920 * 100vw), 7rem) 0 min(calc(220 / 1920 * 100vw), 13.75rem);
  }
}

.sec_ttl {
  text-align: center;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  color: #BF3B2C;
  margin-bottom: calc(30 / 375 * 100vw) !important;
}
@media screen and (min-width: 769px) {
  .sec_ttl {
    margin-bottom: min(calc(80 / 1920 * 100vw), 5rem) !important;
  }
}
.sec_ttl strong {
  font-size: calc(13 / 375 * 100vw);
  font-weight: 500;
}
@media screen and (min-width: 769px) {
  .sec_ttl strong {
    font-size: min(calc(28 / 1920 * 100vw), 1.75rem);
  }
}
.sec_ttl span {
  font-size: calc(26 / 375 * 100vw);
  font-family: "Gill Sans", "Gill Sans Nova", sans-serif;
  line-height: 1.3;
  font-weight: 400;
  text-transform: uppercase;
}
@media screen and (min-width: 769px) {
  .sec_ttl span {
    font-size: min(calc(65 / 1920 * 100vw), 4.0625rem);
  }
}
.sec_ttl em {
  font-style: normal;
  font-size: calc(31 / 375 * 100vw);
  font-weight: 500;
}
@media screen and (min-width: 769px) {
  .sec_ttl em {
    font-size: min(calc(66 / 1920 * 100vw), 4.125rem);
  }
}

#ranking {
  background-color: #F8F4E5;
}

.oseibo {
  overflow: clip;
  background-color: #fff;
}
.oseibo * {
  box-sizing: border-box;
}
.oseibo *:not(.en):not(.btn--more) {
  font-family: "Yu Gothic Medium", "Yu Gothic", "Hiragino Kaku Gothic Pro", sans-serif;
}
.oseibo_kv {
  display: grid;
  background-color: #F8F4E5;
}
@media screen and (min-width: 769px) {
  .oseibo_kv {
    grid-template-columns: 1fr 1fr;
    align-items: center;
  }
}
.oseibo_kv_anime img {
  width: 100%;
}
.oseibo_kv_ttl {
  text-align: center;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  padding: calc(50 / 375 * 100vw) 0;
}
@media screen and (min-width: 769px) {
  .oseibo_kv_ttl {
    padding: 0;
  }
}
.oseibo_kv_ttl span {
  margin-bottom: calc(30 / 375 * 100vw);
}
@media screen and (min-width: 769px) {
  .oseibo_kv_ttl span {
    margin-bottom: min(calc(70 / 1920 * 100vw), 4.375rem);
  }
}
.oseibo_kv_ttl span img {
  width: calc(146 / 375 * 100vw);
}
@media screen and (min-width: 769px) {
  .oseibo_kv_ttl span img {
    width: min(calc(375 / 1920 * 100vw), 23.4375rem);
  }
}
.oseibo_kv_ttl h1 {
  font-size: calc(36 / 375 * 100vw);
  font-weight: 600;
  color: #BF3B2C;
  line-height: 1.13;
  position: relative;
  padding-bottom: calc(25 / 375 * 100vw);
}
@media screen and (min-width: 769px) {
  .oseibo_kv_ttl h1 {
    font-size: min(calc(91 / 1920 * 100vw), 5.6875rem);
    padding-bottom: min(calc(65 / 1920 * 100vw), 4.0625rem);
  }
}
.oseibo_kv_ttl h1:after {
  content: "";
  width: calc(44 / 375 * 100vw);
  height: 4px;
  background-color: #BF3B2C;
  position: absolute;
  bottom: 0;
  left: calc(50% - 22 / 375 * 100vw);
}
@media screen and (min-width: 769px) {
  .oseibo_kv_ttl h1:after {
    width: min(calc(112 / 1920 * 100vw), 7rem);
    left: calc(50% - min(calc(56 / 1920 * 100vw), 3.5rem));
  }
}
.oseibo_kv_ttl h2 {
  font-size: calc(17 / 375 * 100vw) !important;
  color: #BF3B2C;
  font-weight: 600;
  margin: calc(22 / 375 * 100vw) 0 0 !important;
}
@media screen and (min-width: 769px) {
  .oseibo_kv_ttl h2 {
    font-size: min(calc(43 / 1920 * 100vw), 2.6875rem) !important;
    margin: min(calc(50 / 1920 * 100vw), 3.125rem) 0 0 !important;
  }
}
.oseibo_nav {
  background-color: #BF3B2C;
  padding: calc(10 / 375 * 100vw) 0;
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  width: 100%;
  position: sticky;
  left: 0;
  top: var(--header_h);
  z-index: 1;
}
@media screen and (min-width: 769px) {
  .oseibo_nav {
    padding: min(calc(16 / 1920 * 100vw), 1rem) 0;
    display: flex;
    justify-content: center;
  }
}
.oseibo_nav li {
  border-right: 1.5px solid #fff;
}
@media screen and (min-width: 769px) {
  .oseibo_nav li {
    width: min(calc(378 / 1920 * 100vw), 23.625rem);
  }
}
.oseibo_nav li a {
  line-height: 1.3;
  text-align: center;
  color: #fff;
  font-size: calc(13 / 375 * 100vw);
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  height: 100%;
  font-weight: 700;
}
@media screen and (min-width: 769px) {
  .oseibo_nav li a {
    display: block;
    line-height: min(calc(42 / 1920 * 100vw), 2.625rem);
    font-size: min(calc(24 / 1920 * 100vw), 1.5rem);
  }
}
@media (hover) {
  .oseibo_nav li a:hover {
    opacity: 0.7;
  }
}
.oseibo_nav li:first-child {
  border-left: 1.5px solid #fff;
}
@media screen and (max-width: 768px) {
  .oseibo_nav li:first-child {
    border-left: none;
  }
}
@media screen and (max-width: 768px) {
  .oseibo_nav li:last-child {
    border-right: none;
  }
}
.oseibo_ranking {
  margin-inline: calc(30 / 375 * 100vw);
  color: #333;
}
@media screen and (min-width: 769px) {
  .oseibo_ranking {
    max-width: min(calc(1650 / 1920 * 100vw), 103.125rem);
    margin-inline: auto;
  }
}
.oseibo_ranking_item {
  display: grid;
  row-gap: calc(50 / 375 * 100vw);
}
@media screen and (min-width: 769px) {
  .oseibo_ranking_item {
    grid-template-columns: repeat(3, 1fr);
    gap: 0 min(calc(65 / 1920 * 100vw), 4.0625rem);
  }
}
.oseibo_ranking_item li {
  position: relative;
  z-index: 0;
}
.oseibo_ranking_item li:nth-child(1) .oseibo_ranking_icon {
  background-color: #d4c018;
}
.oseibo_ranking_item li:nth-child(2) .oseibo_ranking_icon {
  background-color: #bababa;
}
.oseibo_ranking_item li:nth-child(3) .oseibo_ranking_icon {
  background-color: #a0662d;
}
.oseibo_ranking_item li a {
  display: block;
}
@media (hover) {
  .oseibo_ranking_item li a:hover {
    opacity: 1;
  }
  .oseibo_ranking_item li a:hover .btn--more {
    text-decoration: underline;
    text-underline-offset: 0.6em;
    text-decoration-thickness: 2px;
  }
}
.oseibo_ranking_item li a figure {
  margin-bottom: calc(16 / 375 * 100vw);
  position: relative;
}
@media screen and (min-width: 769px) {
  .oseibo_ranking_item li a figure {
    margin-bottom: min(calc(30 / 1920 * 100vw), 1.875rem);
  }
}
.oseibo_ranking_item li a figure img {
  width: 100%;
}
.oseibo_ranking_item li a figure span {
  background-color: #BF3B2C;
  color: #fff;
  font-size: calc(13 / 375 * 100vw);
  font-weight: 700;
  line-height: 1;
  padding: calc(5 / 375 * 100vw) calc(8 / 375 * 100vw);
  position: absolute;
  bottom: 0;
  left: 0;
}
@media screen and (min-width: 769px) {
  .oseibo_ranking_item li a figure span {
    font-size: min(calc(22 / 1920 * 100vw), 1.375rem);
    padding: min(calc(10 / 1920 * 100vw), 0.625rem) min(calc(12 / 1920 * 100vw), 0.75rem);
  }
}
.oseibo_ranking_item li a h3 {
  font-size: calc(17 / 375 * 100vw);
  font-weight: 700;
  border-bottom: 2px solid #333;
  padding-bottom: calc(5 / 375 * 100vw);
  margin-bottom: calc(12 / 375 * 100vw);
}
@media screen and (min-width: 769px) {
  .oseibo_ranking_item li a h3 {
    font-size: min(calc(28 / 1920 * 100vw), 1.75rem);
    padding-bottom: min(calc(15 / 1920 * 100vw), 0.9375rem);
    margin-bottom: min(calc(25 / 1920 * 100vw), 1.5625rem);
  }
}
.oseibo_ranking_item .btn--more {
  margin-top: calc(20 / 375 * 100vw);
}
@media screen and (min-width: 769px) {
  .oseibo_ranking_item .btn--more {
    margin-top: min(calc(30 / 1920 * 100vw), 1.875rem);
  }
}
.oseibo_ranking_icon {
  width: calc(52 / 375 * 100vw);
  height: calc(52 / 375 * 100vw);
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  font-size: calc(26 / 375 * 100vw);
  text-align: center;
  font-weight: 700;
  position: absolute;
  top: calc(5 / 375 * 100vw);
  left: calc(5 / 375 * 100vw);
  z-index: 1;
  line-height: 1;
  color: #fff;
  padding-top: calc(3 / 375 * 100vw);
  overflow: hidden;
  box-sizing: border-box;
}
@media screen and (min-width: 769px) {
  .oseibo_ranking_icon {
    width: min(calc(90 / 1920 * 100vw), 5.625rem);
    height: min(calc(90 / 1920 * 100vw), 5.625rem);
    font-size: min(calc(45 / 1920 * 100vw), 2.8125rem);
    top: min(calc(10 / 1920 * 100vw), 0.625rem);
    left: min(calc(10 / 1920 * 100vw), 0.625rem);
    padding-top: min(calc(6 / 1920 * 100vw), 0.375rem);
  }
}
.oseibo_ranking_icon:before {
  content: "RANK";
  font-size: calc(9 / 375 * 100vw);
  font-weight: 700;
  margin-bottom: calc(3 / 375 * 100vw);
}
@media screen and (min-width: 769px) {
  .oseibo_ranking_icon:before {
    font-size: min(calc(16 / 1920 * 100vw), 1rem);
    margin-bottom: min(calc(3 / 1920 * 100vw), 0.1875rem);
  }
}
.oseibo_ranking_price {
  font-size: calc(20 / 375 * 100vw);
  font-weight: 500;
  margin-bottom: calc(10 / 375 * 100vw);
}
@media screen and (min-width: 769px) {
  .oseibo_ranking_price {
    font-size: min(calc(36 / 1920 * 100vw), 2.25rem);
    margin-bottom: min(calc(20 / 1920 * 100vw), 1.25rem);
  }
}
.oseibo_ranking_price small {
  font-size: calc(12 / 375 * 100vw);
}
@media screen and (min-width: 769px) {
  .oseibo_ranking_price small {
    font-size: min(calc(20 / 1920 * 100vw), 1.25rem);
  }
}
.oseibo_ranking_txt {
  font-size: calc(14 / 375 * 100vw);
  line-height: 1.9;
  font-feature-settings: "palt";
}
@media screen and (min-width: 769px) {
  .oseibo_ranking_txt {
    font-size: min(calc(23 / 1920 * 100vw), 1.4375rem);
  }
}
.oseibo_ranking_tag {
  display: flex;
  flex-wrap: wrap;
  gap: calc(13 / 375 * 100vw);
  margin-top: calc(20 / 375 * 100vw);
}
@media screen and (min-width: 769px) {
  .oseibo_ranking_tag {
    gap: min(calc(21 / 1920 * 100vw), 1.3125rem);
    margin-top: min(calc(35 / 1920 * 100vw), 2.1875rem);
  }
}
.oseibo_ranking_tag span {
  background-color: #BF3B2C;
  color: #fff;
  font-size: calc(15 / 375 * 100vw);
  height: calc(27 / 375 * 100vw);
  border-radius: calc(27 / 375 * 100vw);
  padding-inline: calc(20 / 375 * 100vw);
  font-weight: 700;
  padding-top: 2px;
}
@media screen and (min-width: 769px) {
  .oseibo_ranking_tag span {
    font-size: min(calc(25 / 1920 * 100vw), 1.5625rem);
    height: min(calc(44 / 1920 * 100vw), 2.75rem);
    border-radius: min(calc(44 / 1920 * 100vw), 2.75rem);
    padding-inline: min(calc(34 / 1920 * 100vw), 2.125rem);
  }
}
.oseibo_wrapping {
  margin-top: calc(50 / 375 * 100vw);
}
@media screen and (min-width: 769px) {
  .oseibo_wrapping {
    width: fit-content;
    margin-inline: auto;
    margin-top: min(calc(130 / 1920 * 100vw), 8.125rem);
  }
}
.oseibo_wrapping > dt {
  background-color: #BF3B2C;
  color: #fff;
  text-align: center;
  font-size: calc(18 / 375 * 100vw);
  font-weight: 700;
  line-height: 1.5;
  padding-top: calc(18 / 375 * 100vw);
  padding-bottom: calc(15 / 375 * 100vw);
}
@media screen and (min-width: 769px) {
  .oseibo_wrapping > dt {
    font-size: min(calc(35 / 1920 * 100vw), 2.1875rem);
    padding-top: min(calc(20 / 1920 * 100vw), 1.25rem);
    padding-bottom: min(calc(18 / 1920 * 100vw), 1.125rem);
    padding-inline: min(calc(50 / 1920 * 100vw), 3.125rem);
  }
}
@media screen and (max-width: 768px) {
  .oseibo_wrapping > dt span::before {
    content: "【";
  }
}
.oseibo_wrapping > dt span::after {
  content: "】";
}
@media screen and (min-width: 769px) {
  .oseibo_wrapping > dt span::after {
    content: "：";
  }
}
.oseibo_wrapping > dd {
  background-color: #fff;
  padding: calc(34 / 375 * 100vw) calc(20 / 375 * 100vw) calc(25 / 375 * 100vw);
}
@media screen and (min-width: 769px) {
  .oseibo_wrapping > dd {
    padding: min(calc(60 / 1920 * 100vw), 3.75rem) min(calc(55 / 1920 * 100vw), 3.4375rem);
    display: grid;
    grid-template-columns: min(calc(278 / 1920 * 100vw), 17.375rem) 1fr;
    column-gap: min(calc(50 / 1920 * 100vw), 3.125rem);
  }
}
.oseibo_wrapping > dd h3 {
  text-align: center;
  color: #BF3B2C;
  font-weight: 700;
  font-size: calc(21 / 375 * 100vw);
  line-height: 1.66;
  margin-bottom: calc(20 / 375 * 100vw);
}
@media screen and (min-width: 769px) {
  .oseibo_wrapping > dd h3 {
    grid-area: 1/2/2/3;
    font-size: min(calc(33 / 1920 * 100vw), 2.0625rem);
    margin-bottom: min(calc(15 / 1920 * 100vw), 0.9375rem);
    text-align: left;
  }
}
.oseibo_wrapping > dd h3 small {
  font-size: 82%;
}
.oseibo_wrapping > dd figure {
  margin-bottom: calc(25 / 375 * 100vw);
}
@media screen and (min-width: 769px) {
  .oseibo_wrapping > dd figure {
    padding-left: min(calc(5 / 1920 * 100vw), 0.3125rem);
    grid-area: 1/1/3/2;
    margin-bottom: 0;
  }
}
.oseibo_wrapping > dd figure img {
  width: 100%;
}
.oseibo_wrapping > dd p {
  font-size: calc(13 / 375 * 100vw);
  font-weight: 500;
  line-height: 1.76;
  margin-bottom: calc(30 / 375 * 100vw);
}
@media screen and (min-width: 769px) {
  .oseibo_wrapping > dd p {
    font-size: min(calc(22 / 1920 * 100vw), 1.375rem);
    margin-bottom: min(calc(50 / 1920 * 100vw), 3.125rem);
  }
}
.oseibo_wrapping > dd dl {
  position: relative;
  border: 2px solid #BF3B2C;
  padding: calc(24 / 375 * 100vw) calc(20 / 375 * 100vw) calc(20 / 375 * 100vw);
  margin-bottom: calc(12 / 375 * 100vw);
}
@media screen and (min-width: 769px) {
  .oseibo_wrapping > dd dl {
    padding: min(calc(38 / 1920 * 100vw), 2.375rem) min(calc(40 / 1920 * 100vw), 2.5rem) min(calc(30 / 1920 * 100vw), 1.875rem);
    margin-bottom: min(calc(30 / 1920 * 100vw), 1.875rem);
  }
}
.oseibo_wrapping > dd dl dt {
  font-size: calc(14 / 375 * 100vw);
  font-weight: 700;
  background-color: #fff;
  padding-inline: calc(10 / 375 * 100vw);
  line-height: 1;
  position: absolute;
  top: calc(-6 / 375 * 100vw);
  color: #BF3B2C;
}
@media screen and (min-width: 769px) {
  .oseibo_wrapping > dd dl dt {
    font-size: min(calc(26 / 1920 * 100vw), 1.625rem);
    padding-inline: min(calc(20 / 1920 * 100vw), 1.25rem);
    top: max(-0.625vw, -0.75rem);
  }
}
.oseibo_wrapping > dd dl dd {
  font-size: calc(14 / 375 * 100vw);
  font-weight: 700;
  line-height: 1.85;
  color: #BF3B2C;
}
@media screen and (min-width: 769px) {
  .oseibo_wrapping > dd dl dd {
    font-size: min(calc(22 / 1920 * 100vw), 1.375rem);
    line-height: 2;
  }
}
.oseibo_wrapping > dd span {
  font-size: calc(11 / 375 * 100vw);
  font-weight: 500;
  display: block;
}
@media screen and (min-width: 769px) {
  .oseibo_wrapping > dd span {
    font-size: min(calc(21 / 1920 * 100vw), 1.3125rem);
  }
}
@media screen and (min-width: 769px) {
  .oseibo_wrapping_detail {
    grid-area: 2/2/3/3;
  }
}
.oseibo_reason {
  margin-inline: calc(25 / 375 * 100vw);
}
@media screen and (min-width: 769px) {
  .oseibo_reason {
    max-width: min(calc(1650 / 1920 * 100vw), 103.125rem);
    margin-inline: auto;
  }
}
.oseibo_reason_item {
  display: grid;
  gap: calc(50 / 375 * 100vw) 0;
}
@media screen and (min-width: 769px) {
  .oseibo_reason_item {
    grid-template-columns: repeat(3, 1fr);
    gap: 0 min(calc(65 / 1920 * 100vw), 4.0625rem);
  }
}
.oseibo_reason_item li {
  display: grid;
  row-gap: calc(25 / 375 * 100vw);
}
@media screen and (min-width: 769px) {
  .oseibo_reason_item li {
    display: flex;
    flex-direction: column;
    row-gap: min(calc(50 / 1920 * 100vw), 3.125rem);
  }
}
.oseibo_reason_item figure img {
  width: 100%;
}
.oseibo_reason_item span {
  font-size: calc(23 / 375 * 100vw);
  background-color: #fff;
  color: #BF3B2C;
  font-weight: 700;
  width: fit-content;
  margin-inline: auto;
  line-height: 1;
  padding: calc(8 / 375 * 100vw) calc(15 / 375 * 100vw) calc(5 / 375 * 100vw);
}
@media screen and (min-width: 769px) {
  .oseibo_reason_item span {
    font-size: min(calc(36 / 1920 * 100vw), 2.25rem);
    padding: min(calc(14 / 1920 * 100vw), 0.875rem) min(calc(12 / 1920 * 100vw), 0.75rem) min(calc(11 / 1920 * 100vw), 0.6875rem);
  }
}
.oseibo_reason_item h3 {
  font-size: calc(22 / 375 * 100vw);
  text-align: center;
  font-weight: 700;
  line-height: 1.54;
}
@media screen and (min-width: 769px) {
  .oseibo_reason_item h3 {
    font-size: min(calc(35 / 1920 * 100vw), 2.1875rem);
  }
}
.oseibo_reason_item p {
  font-size: calc(16 / 375 * 100vw);
  line-height: 1.75;
}
@media screen and (min-width: 769px) {
  .oseibo_reason_item p {
    font-size: min(calc(25 / 1920 * 100vw), 1.5625rem);
    margin-top: -0.5em;
  }
}
.oseibo_reason .sec_ttl {
  color: #fff;
}
.oseibo_recommend {
  margin-inline: calc(25 / 375 * 100vw);
}
@media screen and (min-width: 769px) {
  .oseibo_recommend {
    margin-inline: auto;
    max-width: min(calc(1325 / 1920 * 100vw), 82.8125rem);
  }
}
@media screen and (min-width: 769px) {
  .oseibo_recommend_item.reverse a {
    flex-direction: row-reverse;
  }
}
.oseibo_recommend_item + .oseibo_recommend_item {
  margin-top: calc(68 / 375 * 100vw);
}
@media screen and (min-width: 769px) {
  .oseibo_recommend_item + .oseibo_recommend_item {
    margin-top: min(calc(140 / 1920 * 100vw), 8.75rem);
  }
}
.oseibo_recommend_item a {
  color: #333;
  display: block;
}
@media screen and (min-width: 769px) {
  .oseibo_recommend_item a {
    display: flex;
    align-items: center;
    justify-content: space-between;
  }
}
@media (hover) {
  .oseibo_recommend_item a:hover {
    opacity: 1;
  }
  .oseibo_recommend_item a:hover .btn--more {
    text-decoration: underline;
    text-underline-offset: 0.6em;
    text-decoration-thickness: 2px;
  }
}
.oseibo_recommend_item figure {
  position: relative;
  margin-bottom: calc(16 / 375 * 100vw);
}
@media screen and (min-width: 769px) {
  .oseibo_recommend_item figure {
    margin-bottom: 0;
    width: min(calc(741 / 1920 * 100vw), 46.3125rem);
  }
}
.oseibo_recommend_item figure img {
  width: 100%;
}
.oseibo_recommend_item figure span {
  background-color: #BF3B2C;
  color: #fff;
  font-size: calc(13 / 375 * 100vw);
  font-weight: 700;
  line-height: 1;
  padding: calc(5 / 375 * 100vw) calc(8 / 375 * 100vw);
  position: absolute;
  bottom: 0;
  left: 0;
}
@media screen and (min-width: 769px) {
  .oseibo_recommend_item figure span {
    font-size: min(calc(30 / 1920 * 100vw), 1.875rem);
    padding: min(calc(10 / 1920 * 100vw), 0.625rem) min(calc(12 / 1920 * 100vw), 0.75rem);
  }
}
@media screen and (min-width: 769px) {
  .oseibo_recommend_item_detail {
    width: min(calc(480 / 1920 * 100vw), 30rem);
  }
}
.oseibo_recommend_item_detail h3 {
  font-size: calc(16 / 375 * 100vw);
  font-weight: 700;
  border-bottom: 1.5px solid #333;
  padding-bottom: calc(5 / 375 * 100vw);
  margin-bottom: calc(12 / 375 * 100vw);
}
@media screen and (min-width: 769px) {
  .oseibo_recommend_item_detail h3 {
    font-size: min(calc(29 / 1920 * 100vw), 1.8125rem);
    padding-bottom: min(calc(15 / 1920 * 100vw), 0.9375rem);
    margin-bottom: min(calc(25 / 1920 * 100vw), 1.5625rem);
  }
}
.oseibo_recommend_grid {
  margin-top: calc(68 / 375 * 100vw);
}
@media screen and (min-width: 769px) {
  .oseibo_recommend_grid {
    margin-top: min(calc(140 / 1920 * 100vw), 8.75rem);
    display: grid;
    grid-template-columns: 1fr 1fr;
    column-gap: min(calc(100 / 1920 * 100vw), 6.25rem);
  }
}
@media screen and (min-width: 769px) {
  .oseibo_recommend_grid .oseibo_recommend_item {
    display: block;
  }
}
@media screen and (min-width: 769px) {
  .oseibo_recommend_grid .oseibo_recommend_item + .oseibo_recommend_item {
    margin-top: 0;
  }
}
@media screen and (min-width: 769px) {
  .oseibo_recommend_grid .oseibo_recommend_item dt {
    margin-bottom: min(calc(40 / 1920 * 100vw), 2.5rem);
  }
}
@media screen and (min-width: 769px) {
  .oseibo_recommend_grid .oseibo_recommend_item dt, .oseibo_recommend_grid .oseibo_recommend_item dd {
    width: 100%;
  }
}
.oseibo_recommend .btn--more {
  margin-top: calc(20 / 375 * 100vw);
}
@media screen and (min-width: 769px) {
  .oseibo_recommend .btn--more {
    margin-top: min(calc(30 / 1920 * 100vw), 1.875rem);
  }
}
.oseibo_recommend_gift {
  background-color: #fff;
  padding: calc(20 / 375 * 100vw);
  border-radius: 2px;
  margin-top: calc(70 / 375 * 100vw);
}
@media screen and (min-width: 769px) {
  .oseibo_recommend_gift {
    padding: min(calc(50 / 1920 * 100vw), 3.125rem) min(calc(25 / 1920 * 100vw), 1.5625rem);
    border-radius: 5px;
    margin-top: min(calc(150 / 1920 * 100vw), 9.375rem);
    max-width: min(calc(1200 / 1920 * 100vw), 75rem);
    margin-inline: auto;
    box-sizing: border-box;
  }
}
.oseibo_recommend_gift h3 {
  text-align: center;
  font-size: calc(17 / 375 * 100vw);
  margin-bottom: calc(25 / 375 * 100vw);
  color: #BF3B2C;
  font-weight: 700;
}
@media screen and (min-width: 769px) {
  .oseibo_recommend_gift h3 {
    font-size: min(calc(28 / 1920 * 100vw), 1.75rem);
    margin-bottom: min(calc(54 / 1920 * 100vw), 3.375rem);
  }
}
@media screen and (min-width: 769px) {
  .oseibo_recommend_gift_item {
    display: grid;
    grid-template-columns: 1fr 1fr;
  }
}
@media screen and (min-width: 769px) {
  .oseibo_recommend_gift dl {
    display: grid;
    grid-template-columns: min(calc(132 / 1920 * 100vw), 8.25rem) 1fr;
    column-gap: min(calc(27 / 1920 * 100vw), 1.6875rem);
    position: relative;
    padding-inline: min(calc(45 / 1920 * 100vw), 2.8125rem);
  }
}
@media screen and (min-width: 769px) {
  .oseibo_recommend_gift dl:first-child:after {
    content: "";
    width: 1px;
    height: 100%;
    position: absolute;
    top: 0;
    right: 0;
    background-color: #333;
  }
}
.oseibo_recommend_gift dl + dl {
  margin-top: calc(40 / 375 * 100vw);
}
@media screen and (min-width: 769px) {
  .oseibo_recommend_gift dl + dl {
    margin-top: 0;
  }
}
.oseibo_recommend_gift dl dt {
  text-align: center;
  margin-bottom: calc(25 / 375 * 100vw);
}
@media screen and (min-width: 769px) {
  .oseibo_recommend_gift dl dt {
    margin-bottom: 0;
  }
}
.oseibo_recommend_gift dl dt img {
  width: calc(132 / 375 * 100vw);
}
@media screen and (min-width: 769px) {
  .oseibo_recommend_gift dl dt img {
    width: 100%;
  }
}
.oseibo_recommend_gift dl dd h4 {
  text-align: center;
  font-size: calc(16 / 375 * 100vw);
  font-weight: 700;
  margin-bottom: calc(12 / 375 * 100vw);
}
@media screen and (min-width: 769px) {
  .oseibo_recommend_gift dl dd h4 {
    font-size: min(calc(21 / 1920 * 100vw), 1.3125rem);
    margin-bottom: min(calc(10 / 1920 * 100vw), 0.625rem);
    text-align: left;
  }
}
.oseibo_recommend_gift dl dd p {
  font-size: calc(12 / 375 * 100vw);
  line-height: 2;
  margin-bottom: calc(12 / 375 * 100vw);
}
@media screen and (min-width: 769px) {
  .oseibo_recommend_gift dl dd p {
    font-size: min(calc(16 / 1920 * 100vw), 1rem);
    margin-bottom: min(calc(20 / 1920 * 100vw), 1.25rem);
  }
}
.oseibo_recommend_gift dl dd a {
  display: block;
  width: fit-content;
  margin-inline: auto;
  padding-inline: calc(20 / 375 * 100vw);
  font-size: calc(13 / 375 * 100vw);
  font-family: "Gill Sans", "Gill Sans Nova", sans-serif !important;
  font-weight: 300;
  border: 1px solid #333;
  border-radius: calc(30 / 375 * 100vw);
  line-height: calc(23 / 375 * 100vw);
}
@media screen and (min-width: 769px) {
  .oseibo_recommend_gift dl dd a {
    padding-inline: min(calc(20 / 1920 * 100vw), 1.25rem);
    margin-inline: 0;
    font-size: min(calc(16 / 1920 * 100vw), 1rem);
    border-radius: min(calc(30 / 1920 * 100vw), 1.875rem);
    line-height: min(calc(30 / 1920 * 100vw), 1.875rem);
  }
}
.oseibo_search {
  background: url(../img/oseibo/search_bg.webp) no-repeat center/cover;
  padding: min(calc(170 / 1920 * 100vw), 10.625rem) 0 min(calc(85 / 1920 * 100vw), 5.3125rem);
  color: #fff;
}
@media screen and (max-width: 768px) {
  .oseibo_search {
    padding: calc(60 / 375 * 100vw) calc(25 / 375 * 100vw) calc(80 / 375 * 100vw);
    background-image: url(../img/oseibo/search_bg_sp.webp);
  }
}
@media screen and (min-width: 769px) {
  .oseibo_search_box {
    max-width: min(calc(1325 / 1920 * 100vw), 82.8125rem);
    margin-inline: auto;
  }
}
.oseibo_search_box dl {
  display: grid;
  grid-template-columns: min(calc(500 / 1920 * 100vw), 31.25rem) 1fr;
  column-gap: min(calc(15 / 1920 * 100vw), 0.9375rem);
  border-top: 1.5px solid #fff;
  padding-block: min(calc(90 / 1920 * 100vw), 5.625rem);
}
@media screen and (max-width: 768px) {
  .oseibo_search_box dl {
    display: block;
    border-top: none;
    padding-block: 0;
  }
}
@media screen and (max-width: 768px) {
  .oseibo_search_box dl + dl {
    margin-top: calc(48 / 375 * 100vw);
  }
}
.oseibo_search_box dl dt {
  display: flex;
  flex-direction: column;
  row-gap: min(calc(30 / 1920 * 100vw), 1.875rem);
}
@media screen and (max-width: 768px) {
  .oseibo_search_box dl dt {
    row-gap: calc(12 / 375 * 100vw);
    margin-bottom: calc(20 / 375 * 100vw);
  }
}
.oseibo_search_box dl dt span {
  font-family: "Gill Sans", "Gill Sans Nova", sans-serif !important;
  font-size: min(calc(60 / 1920 * 100vw), 3.75rem);
  line-height: 1;
  font-weight: 400;
}
@media screen and (max-width: 768px) {
  .oseibo_search_box dl dt span {
    font-size: calc(37 / 375 * 100vw);
  }
}
.oseibo_search_box dl dt b {
  font-size: min(calc(24x / 1920 * 100vw), 1.5xrem);
  line-height: 1;
  font-weight: 500;
}
@media screen and (max-width: 768px) {
  .oseibo_search_box dl dt b {
    font-size: calc(14 / 375 * 100vw);
  }
}
.oseibo_search_box dl dd {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: min(calc(30 / 1920 * 100vw), 1.875rem) min(calc(45 / 1920 * 100vw), 2.8125rem);
}
@media screen and (max-width: 768px) {
  .oseibo_search_box dl dd {
    grid-template-columns: 1fr;
    gap: calc(20 / 375 * 100vw) 0;
  }
}
.oseibo_search_box dl dd a {
  font-size: min(calc(23 / 1920 * 100vw), 1.4375rem);
  position: relative;
  text-align: center;
  padding: min(calc(15 / 1920 * 100vw), 0.9375rem) 0;
  line-height: 1;
  border: 1.5px solid #fff;
  border-radius: min(calc(60 / 1920 * 100vw), 3.75rem);
  transition: 0.3s;
}
@media screen and (max-width: 768px) {
  .oseibo_search_box dl dd a {
    font-size: calc(16 / 375 * 100vw);
    padding: calc(10 / 375 * 100vw) 0;
    border-radius: calc(60 / 375 * 100vw);
  }
}
@media (hover) {
  .oseibo_search_box dl dd a:hover {
    background-color: #fff;
    color: #4b2d19;
    opacity: 1;
  }
}
.oseibo_lineup {
  position: relative;
  background: #F8F4E5;
}
.oseibo_lineup .article_ttl span img {
  width: calc(92 / 375 * 100vw);
}
@media screen and (min-width: 769px) {
  .oseibo_lineup .article_ttl span img {
    width: min(calc(300 / 1920 * 100vw), 18.75rem);
  }
}
.oseibo_lineup .article_ttl span strong {
  color: #BF3B2C;
}
.oseibo_lineup_block {
  margin-inline: calc(25 / 375 * 100vw);
  margin-top: calc(38 / 375 * 100vw);
}
@media screen and (min-width: 769px) {
  .oseibo_lineup_block {
    margin-top: min(calc(150 / 1920 * 100vw), 9.375rem);
  }
}
.oseibo_lineup_block:first-of-type {
  margin-top: min(calc(200 / 1920 * 100vw), 12.5rem);
}
.oseibo_lineup_block_ttl {
  display: flex;
  flex-direction: column;
  margin-bottom: calc(12 / 375 * 100vw);
}
@media screen and (min-width: 769px) {
  .oseibo_lineup_block_ttl {
    margin-bottom: min(calc(30 / 1920 * 100vw), 1.875rem);
  }
}
.oseibo_lineup_block_ttl strong {
  font-size: calc(12 / 375 * 100vw);
  font-weight: 700;
}
@media screen and (min-width: 769px) {
  .oseibo_lineup_block_ttl strong {
    font-size: min(calc(28 / 1920 * 100vw), 1.75rem);
  }
}
.oseibo_lineup_block_ttl span {
  font-size: calc(32 / 375 * 100vw);
  font-weight: 400;
  line-height: 1.2;
}
@media screen and (min-width: 769px) {
  .oseibo_lineup_block_ttl span {
    font-size: min(calc(85 / 1920 * 100vw), 5.3125rem);
  }
}
.oseibo_lineup_block_lead {
  font-size: calc(11 / 375 * 100vw);
  line-height: 1.7;
}
@media screen and (min-width: 769px) {
  .oseibo_lineup_block_lead {
    font-size: min(calc(26 / 1920 * 100vw), 1.625rem);
  }
}
.oseibo_lineup_slider {
  margin-top: calc(38 / 375 * 100vw);
  padding-top: calc(15 / 375 * 100vw);
  border-top: 1.5px solid #333;
}
@media screen and (min-width: 769px) {
  .oseibo_lineup_slider {
    margin-top: min(calc(70 / 1920 * 100vw), 4.375rem);
    padding-top: min(calc(40 / 1920 * 100vw), 2.5rem);
  }
}
.oseibo_lineup_slider .splide__track {
  overflow: visible !important;
}
.oseibo_lineup_slider .splide__slide {
  width: calc(137 / 375 * 100vw) !important;
}
@media screen and (min-width: 769px) {
  .oseibo_lineup_slider .splide__slide {
    width: min(calc(315 / 1920 * 100vw), 19.6875rem) !important;
  }
}
.oseibo_lineup_slider .splide__slide a {
  display: flex;
  flex-direction: column;
  height: 100%;
  transition: 0.3s;
}
@media (hover) {
  .oseibo_lineup_slider .splide__slide a:hover {
    opacity: 1;
  }
  .oseibo_lineup_slider .splide__slide a:hover .btn--more {
    text-decoration: underline;
    text-underline-offset: 0.6em;
    text-decoration-thickness: 2px;
  }
}
.oseibo_lineup_slider .splide__slide figure {
  position: relative;
}
.oseibo_lineup_slider .splide__slide figure img {
  width: 100%;
}
.oseibo_lineup_slider .splide__slide .tag {
  display: flex;
  flex-wrap: wrap;
  gap: calc(5 / 375 * 100vw);
  padding-top: calc(5 / 375 * 100vw);
}
@media screen and (min-width: 769px) {
  .oseibo_lineup_slider .splide__slide .tag {
    gap: min(calc(10 / 1920 * 100vw), 0.625rem);
    padding-top: min(calc(10 / 1920 * 100vw), 0.625rem);
  }
}
.oseibo_lineup_slider .splide__slide .tag span {
  font-size: calc(8 / 375 * 100vw);
  background-color: #BF3B2C;
  color: #fff;
  padding: calc(2 / 375 * 100vw) calc(8 / 375 * 100vw);
  border-radius: calc(15 / 375 * 100vw);
}
@media screen and (min-width: 769px) {
  .oseibo_lineup_slider .splide__slide .tag span {
    font-size: min(calc(18 / 1920 * 100vw), 1.125rem);
    padding: min(calc(5 / 1920 * 100vw), 0.3125rem) min(calc(20 / 1920 * 100vw), 1.25rem) min(calc(3 / 1920 * 100vw), 0.1875rem);
    border-radius: min(calc(30 / 1920 * 100vw), 1.875rem);
  }
}
.oseibo_lineup_slider .splide__slide h4 {
  font-size: calc(12 / 375 * 100vw);
  font-weight: 700;
  margin-top: calc(8 / 375 * 100vw);
}
@media screen and (min-width: 769px) {
  .oseibo_lineup_slider .splide__slide h4 {
    font-size: min(calc(21 / 1920 * 100vw), 1.3125rem);
    margin-top: min(calc(15 / 1920 * 100vw), 0.9375rem);
  }
}
.oseibo_lineup_slider .splide__slide p {
  font-size: calc(13 / 375 * 100vw);
  margin-block: calc(5 / 375 * 100vw);
  line-height: 1;
}
@media screen and (min-width: 769px) {
  .oseibo_lineup_slider .splide__slide p {
    font-size: min(calc(24 / 1920 * 100vw), 1.5rem);
    margin-block: min(calc(10 / 1920 * 100vw), 0.625rem);
  }
}
.oseibo_lineup_slider .splide__slide p small {
  font-size: calc(9 / 375 * 100vw);
}
@media screen and (min-width: 769px) {
  .oseibo_lineup_slider .splide__slide p small {
    font-size: min(calc(14 / 1920 * 100vw), 0.875rem);
  }
}
.oseibo_lineup_slider .splide__slide .btn--more {
  font-size: calc(9 / 375 * 100vw);
  color: #BF3B2C;
}
@media screen and (min-width: 769px) {
  .oseibo_lineup_slider .splide__slide .btn--more {
    font-size: min(calc(22 / 1920 * 100vw), 1.375rem);
  }
}
.oseibo_guide {
  background-color: #fff;
  width: calc(252 / 375 * 100vw);
  margin: calc(35 / 375 * 100vw) auto 0;
  color: #BF3B2C;
  padding: calc(20 / 375 * 100vw);
  text-align: center;
}
@media screen and (min-width: 769px) {
  .oseibo_guide {
    width: fit-content;
    margin: min(calc(110 / 1920 * 100vw), 6.875rem) auto 0;
    padding: min(calc(47 / 1920 * 100vw), 2.9375rem) 0;
    display: grid;
    grid-template-columns: min(calc(470 / 1920 * 100vw), 29.375rem) 1fr;
  }
}
.oseibo_guide dt {
  font-size: calc(13 / 375 * 100vw);
  font-weight: 700;
  padding-bottom: calc(15 / 375 * 100vw);
  margin-bottom: calc(15 / 375 * 100vw);
  position: relative;
}
@media screen and (min-width: 769px) {
  .oseibo_guide dt {
    font-size: min(calc(31 / 1920 * 100vw), 1.9375rem);
    padding-bottom: 0;
    margin-bottom: 0;
    display: flex;
    justify-content: center;
    align-items: center;
  }
}
.oseibo_guide dt:after {
  content: "";
  width: calc(57 / 375 * 100vw);
  height: 2px;
  background-color: #BF3B2C;
  position: absolute;
  bottom: 0;
  left: calc(50% - 28 / 375 * 100vw);
}
@media screen and (min-width: 769px) {
  .oseibo_guide dt:after {
    width: 1px;
    height: 100%;
    background-color: #818181;
    left: auto;
    right: 0;
  }
}
.oseibo_guide dd {
  font-size: calc(11 / 375 * 100vw);
  line-height: 2;
  font-weight: 700;
}
@media screen and (min-width: 769px) {
  .oseibo_guide dd {
    font-size: min(calc(26 / 1920 * 100vw), 1.625rem);
    padding-block: min(calc(22 / 1920 * 100vw), 1.375rem);
    line-height: 1.77;
    text-align: left;
    padding-inline: min(calc(70 / 1920 * 100vw), 4.375rem);
  }
}
.oseibo_event {
  margin-inline: calc(50 / 375 * 100vw);
}
@media screen and (min-width: 769px) {
  .oseibo_event {
    margin-inline: auto;
    max-width: min(calc(800 / 1920 * 100vw), 50rem);
  }
}
.oseibo_event img {
  width: 100%;
}

.btn--more {
  width: fit-content;
  font-weight: 400;
  font-size: calc(16 / 375 * 100vw);
  margin-top: calc(8 / 375 * 100vw);
  display: block;
  font-family: "Gill Sans", "Gill Sans Nova", sans-serif;
}
@media screen and (min-width: 769px) {
  .btn--more {
    font-size: min(calc(27 / 1920 * 100vw), 1.6875rem);
    margin-top: min(calc(14 / 1920 * 100vw), 0.875rem);
  }
}

.soldout {
  display: inline-block;
  background-color: #b93228;
  color: #fff;
  font-size: calc(8 / 375 * 100vw);
  padding: calc(2 / 375 * 100vw) calc(5 / 375 * 100vw);
  position: absolute;
  top: calc(5 / 375 * 100vw);
  left: calc(5 / 375 * 100vw);
  line-height: 1;
}
@media screen and (min-width: 769px) {
  .soldout {
    font-size: min(calc(18 / 1920 * 100vw), 1.125rem);
    padding: min(calc(5 / 1920 * 100vw), 0.3125rem) min(calc(5 / 1920 * 100vw), 0.3125rem) min(calc(3 / 1920 * 100vw), 0.1875rem);
    top: min(calc(10 / 1920 * 100vw), 0.625rem);
    left: min(calc(10 / 1920 * 100vw), 0.625rem);
  }
}

.noshi {
  display: inline-block;
  background-color: #808080;
  color: #fff;
  font-size: calc(8 / 375 * 100vw);
  padding: calc(2 / 375 * 100vw) calc(5 / 375 * 100vw);
  position: absolute;
  bottom: 0;
  left: 0;
  line-height: 1;
}
@media screen and (min-width: 769px) {
  .noshi {
    font-size: min(calc(18 / 1920 * 100vw), 1.125rem);
    padding: min(calc(6 / 1920 * 100vw), 0.375rem) min(calc(5 / 1920 * 100vw), 0.3125rem) min(calc(3 / 1920 * 100vw), 0.1875rem);
  }
}

.housoushi {
  background-color: #BF3B2C;
  color: #fff;
  font-size: calc(8 / 375 * 100vw);
  padding: calc(2 / 375 * 100vw) calc(5 / 375 * 100vw);
  position: absolute;
  top: 0;
  left: 0;
  line-height: 1;
}
@media screen and (min-width: 769px) {
  .housoushi {
    font-size: min(calc(18 / 1920 * 100vw), 1.125rem);
    padding: min(calc(6 / 1920 * 100vw), 0.375rem) min(calc(5 / 1920 * 100vw), 0.3125rem) min(calc(3 / 1920 * 100vw), 0.1875rem);
  }
}

.splide__arrows {
  display: flex;
  justify-content: flex-end;
  position: absolute;
  width: 100%;
  top: auto;
  bottom: calc(100% + 6 / 375 * 100vw);
  right: 0;
  padding-right: calc(10 / 375 * 100vw);
}
@media screen and (min-width: 769px) {
  .splide__arrows {
    bottom: calc(100% + min(calc(15 / 1920 * 100vw), 0.9375rem));
    padding-right: min(calc(30 / 1920 * 100vw), 1.875rem);
  }
}

.splide__arrow {
  width: calc(20 / 375 * 100vw);
  height: calc(20 / 375 * 100vw);
  background-color: transparent;
  border-radius: 50%;
  border: 1.5px solid #333;
  position: static;
  margin: 0 calc(5 / 375 * 100vw);
  transform: none;
}
@media screen and (min-width: 769px) {
  .splide__arrow {
    width: min(calc(40 / 1920 * 100vw), 2.5rem);
    height: min(calc(40 / 1920 * 100vw), 2.5rem);
    margin: 0 min(calc(12 / 1920 * 100vw), 0.75rem);
  }
}
.splide__arrow svg {
  width: 100%;
  height: auto;
}

.slide-count-1 .splide__arrows, .slide-count-2 .splide__arrows {
  display: none !important;
}

@media screen and (min-width: 769px) {
  .slide-count-3 .splide__arrows, .slide-count-4 .splide__arrows {
    display: none !important;
  }
}

footer {
  margin-top: 0;
}/*# sourceMappingURL=oseibo.css.map */