@charset "UTF-8";
/**
* Foundation
* ========================== */
/* 
 ==================================
 変数
 ================================== 
*/
/*  primaryColor  */
/*  btnColor  */
/*  secondryColor  */
/*  tertiaryColor  */
/*  Noto Sans JP  */
@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+JP&display=swap");
/*  Noto serif JP  */
@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+JP&family=Noto+Serif+JP&display=swap");
/*  Mrs Sheppards  */
@import url("https://fonts.googleapis.com/css2?family=Mrs+Sheppards&family=Noto+Sans+JP&display=swap");
/*  Oooh Baby  */
@import url("https://fonts.googleapis.com/css2?family=Mrs+Sheppards&family=Noto+Sans+JP&family=Oooh+Baby&display=swap");
/* http://meyerweb.com/eric/tools/css/reset/
   v2.0 | 20110126
   License: none (public domain)
*/
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline;
}

/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
  display: block;
}

body {
  line-height: 1;
}

ol, ul {
  list-style: none;
}

blockquote, q {
  quotes: none;
}

blockquote:before, blockquote:after,
q:before, q:after {
  content: "";
  content: none;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

/* 
 ==================================
 mixin
 ================================== 
*/
/* 
 ==================================
 base
 ================================== 
 */
html,
body {
  overflow-x: hidden;
  width: 100%;
  color: #2A0903;
  font-size: 16px;
  line-height: 1.6;
  font-family: "Noto Sans JP", sans-serif;
  -webkit-text-size-adjust: 100%;
     -moz-text-size-adjust: 100%;
      -ms-text-size-adjust: 100%;
          text-size-adjust: 100%;
  letter-spacing: 0.1em;
  background-color: #ffffff;
  position: relative;
}

p,
a {
  -webkit-font-smoothing: antialiased;
}

a {
  color: #2A0903;
  text-decoration: none;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}

img {
  width: 100%;
  vertical-align: bottom;
}

button {
  cursor: pointer;
}

input:focus {
  outline: 1px #F472B6 solid;
}

input[type=submit] {
  cursor: pointer;
}

/**
* Layout
* ========================== */
/* LPログイン前header */
.lp-header {
  background-color: #4C3837;
  border-bottom: solid 2px #EDDB8C;
  padding-inline: 2%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
.lp-header__logo {
  width: clamp(82px, 14vw, 120px);
}
.lp-header__login {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  width: auto;
  gap: clamp(5px, 1vw, 10px);
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: end;
  height: 100%;
}
.lp-header__list {
  color: #F6E99A;
  font-size: clamp(13px, 2.8vw, 20px);
}
.lp-header__list-item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: end;
  gap: clamp(4px, 1vw, 4px);
}
.lp-header__form-input {
  width: 50%;
  font-size: clamp(10px, 3.2vw, 16px);
}
@media screen and (max-width: 768px) {
  .lp-header__form-input {
    padding: 0;
  }
}
.lp-header__btn-outer {
  height: 100%;
}
.lp-header__btn {
  background: linear-gradient(135deg, #D2B364, #F6E99A, #C3984C);
  color: #47320B;
  border: 3px solid;
  border-image-source: linear-gradient(to top, #C3984C, #F0CA86);
  border-image-slice: 1;
  font-weight: bold;
  font-size: clamp(10px, 3.2vw, 32px);
  white-space: nowrap;
  padding: 0 clamp(3px, 3.2vw, 3px);
}
@media screen and (max-width: 768px) {
  .lp-header__btn {
    height: 100%;
    min-height: 40px;
  }
}

/* ログイン後header */
.header {
  background-color: #0E0301;
  border-bottom: solid 2px #EDDB8C;
  padding-inline: 2%;
}
.header__top {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 100%;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: clamp(8px, 3vw, 20px);
}
@media screen and (max-width: 768px) {
  .header__top {
    padding: 1% 0;
  }
}
.header__logo {
  width: clamp(82px, 14vw, 120px);
}
.header__info {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: clamp(0px, 1vw, 20px);
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
@media screen and (max-width: 768px) {
  .header__info {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: end;
        -ms-flex-align: end;
            align-items: end;
  }
}
.header__info-user {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  font-size: clamp(13px, 2vw, 20px);
  color: #ffffff;
  gap: clamp(8px, 1.6vw, 10px);
  line-height: 1.2;
}
.header__info-btn {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: clamp(6px, 1.6vw, 10px);
}
.header__info-btn a {
  font-weight: 600;
  display: block;
  background-color: #ffffff;
  color: #0E0301;
  border-radius: 100px;
  font-size: clamp(11px, 2vw, 16px);
  padding: clamp(0px, 1vw, 2px) clamp(1px, 1.6vw, 10px);
  min-width: 110px;
  text-align: center;
  -webkit-box-shadow: 0 2px 2px #ffffff, 0 -4px 5px -2px #cecece inset;
          box-shadow: 0 2px 2px #ffffff, 0 -4px 5px -2px #cecece inset;
  -webkit-box-shadow: 0 0 23px #ffffff;
          box-shadow: 0 0 23px #ffffff;
}
@media screen and (max-width: 768px) {
  .header__info-btn a {
    min-width: 70px;
  }
}
.header__nav ul {
  max-width: 1000px;
  margin: 0 auto;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  padding-bottom: 0.3%;
}
@media screen and (max-width: 768px) {
  .header__nav ul {
    padding: 1% 0;
  }
}
.header__nav-item a {
  color: #ffffff;
  font-size: clamp(12px, 2.4vw, 20px);
}

/* LPログイン前footer */
.lp-footer {
  background-color: #0E0301;
  color: #ffffff;
  padding: 16px 4%;
  text-align: center;
}
.lp-footer__menu-container {
  margin-bottom: 10px;
}
@media screen and (max-width: 768px) {
  .lp-footer__menu-container {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    padding: 2% 0;
    width: 90%;
    margin: 0 auto;
  }
}
.lp-footer__logo {
  width: clamp(90px, 20vw, 120px);
  margin: 0 auto;
}
.lp-footer__menu {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  font-size: clamp(10px, 6vw, 16px);
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 30px;
  text-align: left;
}
@media screen and (max-width: 768px) {
  .lp-footer__menu {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: 0;
    width: 64%;
  }
}
.lp-footer__item {
  margin-bottom: -2px;
}
.lp-footer__item a {
  color: #ffffff;
  font-size: clamp(14px, 2.8vw, 18px);
}
.lp-footer__copylight {
  font-size: clamp(9px, 2vw, 12px);
}
.lp-footer__rules {
  margin: 0 auto;
  text-align: left;
  font-size: clamp(10px, 2vw, 16px);
}

/* ログイン後footer(ログイン前footerとデザイン同じ。
リンク先のページが異なる */
.footer {
  background-color: #0E0301;
  color: #ffffff;
  padding: 16px 4%;
  text-align: center;
}
.footer__menu-container {
  margin-bottom: 10px;
}
@media screen and (max-width: 768px) {
  .footer__menu-container {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    padding: 2% 0;
    width: 90%;
    margin: 0 auto;
  }
}
.footer__logo {
  width: clamp(90px, 20vw, 120px);
  margin: 0 auto;
}
.footer__menu {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  font-size: clamp(10px, 6vw, 16px);
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 30px;
  text-align: left;
}
@media screen and (max-width: 768px) {
  .footer__menu {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: 0;
    width: 64%;
  }
}
.footer__item {
  margin-bottom: -2px;
}
.footer__item a {
  color: #ffffff;
  font-size: clamp(14px, 2.8vw, 18px);
}
.footer__copylight {
  font-size: clamp(9px, 2vw, 12px);
}
.footer__rules {
  margin: 0 auto;
  text-align: left;
  font-size: clamp(10px, 2vw, 16px);
}

/* 固定footer */
.fixed-footer {
  position: fixed;
  bottom: 0;
  left: 0;
  left: 0;
  width: 100%;
  background-color: #2A0903;
  z-index: 10;
  -webkit-transition: opacity 0.5s ease, visibility 0.5s ease;
  transition: opacity 0.5s ease, visibility 0.5s ease;
  opacity: 1;
  visibility: visible;
}
.fixed-footer__inner {
  max-width: 1000px;
  margin: 0 auto;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding-inline: 3%;
  padding: 10px 2%;
}
.fixed-footer__item {
  color: #ffffff;
  font-size: clamp(10px, 3.4vw, 22px);
  font-weight: 400;
  padding: 0.5%;
  text-align: center;
  line-height: 1.2;
}

/* 最下部に達したときに付与するクラス */
.fixed-footer.is-hidden {
  opacity: 0;
  visibility: hidden;
}

/* 監視用マーカー（高さは1pxでOK、見えなくても問題ありません） */
#page-bottom-marker {
  height: 1px;
  background: transparent;
}

/*
Object
* ========================== */
/* Component ------------ */
/* lp-content__btn(利用するボタン)のアニメーション定義 */
@-webkit-keyframes pulse-animation {
  0% {
    -webkit-transform: scale(1);
            transform: scale(1);
  }
  50% {
    -webkit-transform: scale(1.06);
            transform: scale(1.06);
  }
  100% {
    -webkit-transform: scale(1);
            transform: scale(1);
  }
}
@keyframes pulse-animation {
  0% {
    -webkit-transform: scale(1);
            transform: scale(1);
  }
  50% {
    -webkit-transform: scale(1.06);
            transform: scale(1.06);
  }
  100% {
    -webkit-transform: scale(1);
            transform: scale(1);
  }
}
/* アニメーションの定義 */
@-webkit-keyframes pulse {
  0% {
    -webkit-transform: translate(-50%, 0) scale(1);
            transform: translate(-50%, 0) scale(1);
  }
  50% {
    -webkit-transform: translate(-50%, 0) scale(1.04);
            transform: translate(-50%, 0) scale(1.04);
  }
  100% {
    -webkit-transform: translate(-50%, 0) scale(1);
            transform: translate(-50%, 0) scale(1);
  }
}
@keyframes pulse {
  0% {
    -webkit-transform: translate(-50%, 0) scale(1);
            transform: translate(-50%, 0) scale(1);
  }
  50% {
    -webkit-transform: translate(-50%, 0) scale(1.04);
            transform: translate(-50%, 0) scale(1.04);
  }
  100% {
    -webkit-transform: translate(-50%, 0) scale(1);
            transform: translate(-50%, 0) scale(1);
  }
}
/* 全てのページの背景 */
.all-bg__wrap {
  background-image: url(/files/img/Best_harem/content-bg.png);
  background-position: center;
  background-size: cover;
  background-attachment: fixed;
  min-height: 100vh;
  width: 100%;
}
.all-bg__inner {
  width: 96%;
  margin: 0 auto;
  min-height: 100vh;
  height: auto;
  background: -webkit-gradient(linear, left top, right bottom, from(#63331C), color-stop(#0F0400), color-stop(#0F0400), to(#63331C));
  background: linear-gradient(to right bottom, #63331C, #0F0400, #0F0400, #63331C);
  border-left: 2vw solid #B78E46;
  border-right: 2vw solid #B78E46;
  -webkit-box-shadow: 0 0 23px #000000;
          box-shadow: 0 0 23px #000000;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  position: relative;
}

/* POP */
.pop {
  position: fixed;
  bottom: 40px;
  right: calc(52% - 100px - 41vw);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  z-index: 20;
  width: clamp(120px, 20vw, 200px);
  -webkit-transition: -webkit-transform 0.3s ease;
  transition: -webkit-transform 0.3s ease;
  transition: transform 0.3s ease;
  transition: transform 0.3s ease, -webkit-transform 0.3s ease;
  -webkit-animation: pulse-animation 1.5s infinite ease-in-out;
          animation: pulse-animation 1.5s infinite ease-in-out;
}
@media screen and (max-width: 768px) {
  .pop {
    right: calc(46% - 60px - 30vw);
    bottom: 50px;
  }
}
.pop__line {
  width: 100%;
}
.pop__pt {
  width: 100%;
  margin-top: -30px;
}
@media screen and (max-width: 768px) {
  .pop__pt {
    margin-top: -20px;
  }
}

/* 共通要素 */
.content {
  text-align: center;
  padding-bottom: 50px;
  padding-inline: 2%;
}

.sec-title {
  display: inline-block;
  font-size: clamp(20px, 6vw, 60px);
  color: #FFF600;
  border-bottom: solid 1px #FFF600;
  font-family: "Noto serif JP", sans-serif;
  margin: clamp(20px, 6vw, 50px);
  line-height: 1;
}

.sec-text {
  color: #ffffff;
  font-family: "Noto serif JP", sans-serif;
  font-size: clamp(10px, 3vw, 18px);
  margin-bottom: clamp(6px, 3vw, 30px);
}

.sec-text-small {
  font-size: clamp(10px, 3vw, 18px);
  width: 90%;
  margin: 0 auto;
  margin-bottom: 30px;
}

.sec-text a {
  color: #ffffff;
  border-bottom: solid 1px #ffffff;
}

.sec-text a:hover {
  opacity: 0.6;
}

.sec-btn {
  position: relative;
}
.sec-btn__text {
  position: relative;
  background: -webkit-gradient(linear, left top, left bottom, from(#FED046), to(#F19308));
  background: linear-gradient(to bottom, #FED046, #F19308);
  border-radius: 100px;
  font-size: clamp(14px, 3vw, 28px);
  color: #2A0903;
  font-weight: bold;
  padding: 10px 20px;
  -webkit-box-shadow: 0 0px 25px #FFFFFF;
          box-shadow: 0 0px 25px #FFFFFF;
  z-index: 1;
  border: none;
}
.sec-btn__text span {
  position: relative;
  z-index: 4;
}
.sec-btn__long {
  padding: 10px 100px;
}
.sec-btn__text-short {
  padding: 10px 100px;
}
.sec-btn__bokashi {
  position: absolute;
  top: 36%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  width: 24%;
  height: 60%;
  background: -webkit-gradient(linear, left top, left bottom, from(rgba(255, 255, 255, 0.3)), to(transparent));
  background: linear-gradient(to bottom, rgba(255, 255, 255, 0.3) 0%, transparent 100%);
  border-radius: 100px;
  -webkit-filter: blur(4px);
          filter: blur(4px);
  opacity: 1;
  z-index: 2;
  pointer-events: none;
}

.fv-cont {
  background-color: #1B0700;
  border-radius: 0 0 90px 90px;
  border-bottom: solid 13px #F19308;
}
@media screen and (max-width: 768px) {
  .fv-cont {
    border-radius: 0 0 50px 50px;
  }
}

/* 的中実績　共通 */
.tekityu-slick-slider-item {
  padding: 0 clamp(2px, 0vw, 3.5px);
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
.tekityu-slick-slider-inner {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  background: -webkit-gradient(linear, left top, right bottom, from(#B08C4E), color-stop(#F2E6A8), to(#B08C4E));
  background: linear-gradient(to bottom right, #B08C4E, #F2E6A8, #B08C4E);
  padding: clamp(3px, 1vw, 6px);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  color: #ffffff;
  font-weight: 400;
  gap: clamp(0.6px, 0.6vw, 6px);
}
.tekityu-slick-slider-price {
  background-color: #2A0903;
  font-size: clamp(12px, 3vw, 26px);
}
.tekityu-slick-slider-price span {
  font-size: clamp(9px, 3vw, 20px);
}
.tekityu-slick-slider-info {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  gap: clamp(1px, 0.6vw, 6px);
}
.tekityu-slick-slider-info p {
  background-color: #2A0903;
  font-size: clamp(10px, 1.9vw, 22px);
  width: 100%;
}
@media screen and (max-width: 768px) {
  .tekityu-slick-slider-info p {
    font-size: clamp(9px, 2.2vw, 18px);
  }
}

.slick-prev,
.slick-next {
  display: none !important;
}

.slick-dots {
  display: none !important;
}

.slick-dotted.slick-slider {
  margin-bottom: 0 !important;
}

/* lp */
.lp-content__btn {
  display: block;
  width: 70%;
  margin: 0 auto;
  min-width: 330px;
  -webkit-animation: pulse-animation 2s infinite ease-in-out;
          animation: pulse-animation 2s infinite ease-in-out;
}
.lp-content__regist {
  position: relative;
  width: 100%;
}
.lp-content__regist .regist-adress {
  position: absolute;
  bottom: 14%;
  right: 8%;
  width: 50%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.lp-content__regist .regist-adress-input {
  font-size: clamp(13px, 2.2vw, 20px);
  border: none;
  padding: 4px 8px;
  border-radius: 2px;
  width: 80%;
}
.lp-content__regist .regist-adress-btn {
  display: block;
  cursor: pointer;
  display: inline-block;
  -webkit-transition: -webkit-transform 0.3s ease;
  transition: -webkit-transform 0.3s ease;
  transition: transform 0.3s ease;
  transition: transform 0.3s ease, -webkit-transform 0.3s ease;
  -webkit-animation: pulse-animation 1.5s infinite ease-in-out;
          animation: pulse-animation 1.5s infinite ease-in-out;
  background: none;
  border: none;
}
.lp-content__regist .regist-line-btn {
  position: absolute;
  right: 8%;
  width: 50%;
  display: block;
  cursor: pointer;
  display: inline-block;
  -webkit-transition: -webkit-transform 0.3s ease;
  transition: -webkit-transform 0.3s ease;
  transition: transform 0.3s ease;
  transition: transform 0.3s ease, -webkit-transform 0.3s ease;
  -webkit-animation: pulse-animation 1.5s infinite ease-in-out;
          animation: pulse-animation 1.5s infinite ease-in-out;
}
.lp-content__regist1 .regist-line-btn {
  bottom: 18%;
}
.lp-content__regist2 .regist-line-btn, .lp-content__regist3 .regist-line-btn, .lp-content__regist4 .regist-line-btn {
  bottom: 15%;
}
.lp-content__lobby {
  position: relative;
  width: 100%;
  overflow: hidden;
}
.lp-content__lobby-slider-item img {
  padding: 0 3%;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
.lp-content__lobby-slick-slider {
  position: absolute;
  bottom: 5%;
  width: 90%;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
}
@media screen and (max-width: 768px) {
  .lp-content__lobby-slick-slider {
    width: 76%;
    bottom: 4%;
  }
}

/* プラン一覧（menu） */
.menu__plan {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  background: -webkit-gradient(linear, left top, right bottom, from(#F19308), color-stop(#FED046), to(#F19308));
  background: linear-gradient(to bottom right, #F19308, #FED046, #F19308);
  border-radius: 20px;
  padding: clamp(6px, 1vw, 10px);
  max-width: 1000px;
  margin: 0 auto;
}
@media screen and (max-width: 768px) {
  .menu__plan {
    border-radius: 8px;
  }
}
.menu__tab {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: clamp(6px, 1.6vw, 15px);
}
.menu__tab-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: distribute;
      justify-content: space-around;
  background-color: #2A0903;
  width: 80%;
  margin: 0 auto;
  border-radius: 100px;
  padding: 8px 0;
}
@media screen and (max-width: 768px) {
  .menu__tab-list {
    width: 96%;
    padding: 3px 1%;
  }
}
.menu__tab-item {
  color: #ffffff;
  font-size: clamp(10px, 3vw, 18px);
  cursor: pointer;
}
.menu__tab-item.is-active {
  background: -webkit-gradient(linear, left top, right top, from(#F19308), color-stop(#FED046), to(#F19308));
  background: linear-gradient(to right, #F19308, #FED046, #F19308);
  color: #2A0903;
  border-radius: 100px;
  padding-inline: 20px;
  font-weight: bold;
}
.menu__panel {
  display: none;
}
.menu__panel.is-active {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: clamp(6px, 1vw, 10px);
}
.menu__item {
  font-family: "Noto serif JP", sans-serif;
  font-weight: bold;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  background-color: #fff;
  border-radius: 20px;
  border: #2A0903 solid 4px;
  width: calc(50% - 5px);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  padding: clamp(6px, 1vw, 10px);
}
@media screen and (max-width: 768px) {
  .menu__item {
    width: 100%;
    border-radius: 8px;
    border: #2A0903 solid 2px;
  }
}
.menu__item-left {
  width: calc(41% - 4px);
}
@media screen and (max-width: 768px) {
  .menu__item-left {
    width: calc(46% - 4px);
  }
}
.menu__item-chara {
  border-radius: 8px;
  aspect-ratio: 1/1;
  -o-object-fit: cover;
     object-fit: cover;
  width: 100%;
}
.menu__item-name {
  font-size: clamp(10px, 2.2vw, 14px);
}
.menu__item-name span {
  font-size: clamp(13px, 2.2vw, 20px);
}
.menu__item-text {
  font-size: clamp(8px, 2.4vw, 16px);
  text-align: left;
  line-height: 1.1;
}
.menu__item-right {
  width: calc(60% - 5px);
}
@media screen and (max-width: 768px) {
  .menu__item-right {
    width: calc(55% - 5px);
  }
}
.menu__item-dividend {
  position: relative;
}
.menu__item-dividend-price {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  font-size: clamp(10px, 1.8vw, 22px);
  white-space: nowrap;
}
@media screen and (max-width: 768px) {
  .menu__item-dividend-price {
    font-size: clamp(12px, 3vw, 22px);
  }
}
.menu__item-info {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
.menu__item-info dl {
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  text-align: left;
  font-size: clamp(10px, 1.6vw, 16px);
  line-height: 1.3;
}
@media screen and (max-width: 768px) {
  .menu__item-info dl {
    font-size: clamp(9px, 2.6vw, 18px);
  }
}
.menu__item-info dt,
.menu dd {
  width: calc(50% - 10px);
}
.menu__item-detail-btn {
  position: relative;
  display: block;
  background: -webkit-gradient(linear, left bottom, left top, from(#F19308), to(#FED046));
  background: linear-gradient(to top, #F19308, #FED046);
  padding: clamp(1px, 0.8vw, 5px) 0;
  border-radius: 100px;
  font-size: clamp(12px, 2.4vw, 18px);
  margin: 6px 0;
  -webkit-box-shadow: 0 3px 4px rgba(0, 0, 0, 0.3);
          box-shadow: 0 3px 4px rgba(0, 0, 0, 0.3);
}
.menu__item-detail-btn::after {
  position: absolute;
  content: ">";
  right: 10%;
}
.menu__item-buy-btn {
  position: relative;
  display: block;
  background-color: #03082A;
  padding: clamp(1px, 0.8vw, 5px) 0;
  border-radius: 100px;
  font-size: clamp(12px, 2.4vw, 18px);
  color: #fff;
  margin: 6px 0;
  -webkit-box-shadow: 0 3px 4px rgba(0, 0, 0, 0.3);
          box-shadow: 0 3px 4px rgba(0, 0, 0, 0.3);
  font-weight: 400;
}
.menu__item-buy-btn-big {
  padding: clamp(1px, 0.8vw, 8px) 0;
  font-size: clamp(16px, 2vw, 20px);
}
@media screen and (max-width: 768px) {
  .menu__item-buy-btn-big {
    font-size: clamp(14px, 3vw, 16px);
  }
}

/* プラン詳細（plan-view） */
.plan-view {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  background: -webkit-gradient(linear, left top, right bottom, from(#F19308), color-stop(#FED046), to(#F19308));
  background: linear-gradient(to bottom right, #F19308, #FED046, #F19308);
  border-radius: 20px;
  padding: clamp(6px, 1vw, 10px);
  max-width: 1000px;
  margin: 0 auto;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: clamp(6px, 1vw, 10px);
}
@media screen and (max-width: 768px) {
  .plan-view {
    border-radius: 8px;
  }
}
.plan-view {
  /* プロフィール */
}
.plan-view__profile {
  background-color: #fff;
  border: #2A0903 solid 4px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  padding: clamp(6px, 1vw, 10px);
  border-radius: 20px;
  font-family: "Noto serif JP", sans-serif;
  font-weight: bold;
}
@media screen and (max-width: 768px) {
  .plan-view__profile {
    border: #2A0903 solid 2px;
    border-radius: 8px;
  }
}
.plan-view__profile-left {
  width: calc(35% - 4px);
}
.plan-view__profile-left img {
  border-radius: 8px;
  aspect-ratio: 1/1;
  -o-object-fit: cover;
     object-fit: cover;
  width: 100%;
}
.plan-view__profile-right {
  width: calc(65% - 5px);
}
.plan-view__profile-name {
  font-size: clamp(14px, 2.2vw, 46px);
}
.plan-view__profile-mail-btn {
  display: block;
  background: -webkit-gradient(linear, left bottom, left top, from(#F19308), to(#FED046));
  background: linear-gradient(to top, #F19308, #FED046);
  line-height: 1;
  padding: clamp(0px, 1vw, 10px) 0;
  border-radius: 100px;
  font-size: clamp(12px, 2.4vw, 22px);
  -webkit-box-shadow: 0 3px 4px rgba(0, 0, 0, 0.3);
          box-shadow: 0 3px 4px rgba(0, 0, 0, 0.3);
}
.plan-view__profile-dividend {
  position: relative;
}
.plan-view__profile-dividend-price {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  font-size: clamp(10px, 3.6vw, 40px);
  white-space: nowrap;
}
.plan-view__profile-info {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin-bottom: clamp(3px, 1vw, 14px);
}
.plan-view__profile-info dl {
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  text-align: left;
  font-size: clamp(12px, 2.4vw, 22px);
  line-height: 1.3;
}
.plan-view__profile-info dt,
.plan-view__profile dd {
  width: calc(50% - 10px);
}
.plan-view__profile-text {
  text-align: left;
  font-size: clamp(12px, 2.4vw, 22px);
  line-height: 1.2;
}
.plan-view {
  /* 過去の的中実績 */
}
.plan-view__tekityu {
  background-color: #fff;
  border: #2A0903 solid 4px;
  padding: clamp(6px, 1vw, 10px);
  border-radius: 20px;
  font-family: "Noto serif JP", sans-serif;
  font-weight: bold;
}
@media screen and (max-width: 768px) {
  .plan-view__tekityu {
    border-radius: 8px;
    border: #2A0903 solid 2px;
  }
}
.plan-view__tekityu-title {
  font-size: clamp(16px, 3vw, 38px);
  text-align: center;
}
.plan-view {
  /* プラン概要、保有ポイント、支払い方法*/
}
.plan-view__others {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
@media screen and (max-width: 768px) {
  .plan-view__others {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: clamp(6px, 1vw, 10px);
  }
}
.plan-view__others {
  /* プラン概要*/
}
.plan-view__others-info {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  background-color: #fff;
  border: #2A0903 solid 4px;
  padding: clamp(6px, 1vw, 10px);
  border-radius: 20px;
  font-family: "Noto serif JP", sans-serif;
  font-weight: bold;
  width: calc(50% - 5px);
}
@media screen and (max-width: 768px) {
  .plan-view__others-info {
    width: 100%;
    border-radius: 8px;
    border: #2A0903 solid 2px;
  }
}
.plan-view__others-info-title {
  font-size: clamp(16px, 3vw, 38px);
  text-align: center;
}
.plan-view__others-info-inner dl {
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  text-align: left;
  font-size: clamp(12px, 2.4vw, 22px);
  line-height: 1.3;
  margin-bottom: 3px;
}
@media screen and (max-width: 768px) {
  .plan-view__others-info-inner dl {
    margin-bottom: 0;
  }
}
.plan-view__others-info-inner dt,
.plan-view__others-info dd {
  width: calc(50% - 10px);
}
.plan-view__others {
  /* 保有ポイント、支払い方法*/
}
.plan-view__others-right {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: clamp(6px, 1vw, 10px);
  font-family: "Noto serif JP", sans-serif;
  font-weight: bold;
  width: calc(50% - 5px);
}
@media screen and (max-width: 768px) {
  .plan-view__others-right {
    width: 100%;
  }
}
.plan-view__others-point {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  background-color: #fff;
  border: #2A0903 solid 4px;
  border-radius: 20px;
  padding: clamp(6px, 1vw, 10px);
  width: 100%;
}
@media screen and (max-width: 768px) {
  .plan-view__others-point {
    border-radius: 8px;
    border: #2A0903 solid 2px;
  }
}
.plan-view__others-point-text {
  font-size: clamp(13px, 3vw, 20px);
  border-radius: 8px;
}
.plan-view__others-point-text span {
  font-size: clamp(20px, 2vw, 50px);
  color: #F19308;
}
.plan-view__others-deposit {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  background-color: #fff;
  border: #2A0903 solid 4px;
  border-radius: 20px;
  padding: clamp(6px, 1vw, 10px);
  width: 100%;
  height: 100%;
}
@media screen and (max-width: 768px) {
  .plan-view__others-deposit {
    border-radius: 8px;
    border: #2A0903 solid 2px;
  }
}
.plan-view__others-deposit-title {
  font-size: clamp(16px, 3vw, 38px);
  text-align: center;
}
.plan-view__others-deposit-btns {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  gap: clamp(6px, 1vw, 10px);
}
.plan-view__others-deposit-btns a {
  display: block;
  background-color: #2A0903;
  border-radius: 100px;
  color: #ffffff;
  min-width: 220px;
  padding: clamp(3px, 1vw, 8px) 0;
  font-size: clamp(12px, 3vw, 20px);
  -webkit-box-shadow: 0 3px 3px rgba(0, 0, 0, 0.5);
          box-shadow: 0 3px 3px rgba(0, 0, 0, 0.5);
}
@media screen and (max-width: 768px) {
  .plan-view__others-deposit-btns a {
    min-width: 148px;
  }
}
.plan-view {
  /* プラン購入ボタン*/
}
.plan-view__buy-btn {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  background-color: #fff;
  border: #2A0903 solid 4px;
  padding: clamp(6px, 1vw, 10px);
  border-radius: 20px;
  font-family: "Noto serif JP", sans-serif;
  font-weight: 400;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: clamp(6px, 1vw, 10px);
}
@media screen and (max-width: 768px) {
  .plan-view__buy-btn {
    border-radius: 8px;
    border: #2A0903 solid 2px;
  }
}
.plan-view__buy-btn a {
  background-color: #03082A;
  color: #ffffff;
  border-radius: 100px;
  padding: clamp(4px, 1vw, 10px) 0;
  font-size: clamp(16px, 3vw, 24px);
  -webkit-box-shadow: 0 3px 3px rgba(0, 0, 0, 0.5);
          box-shadow: 0 3px 3px rgba(0, 0, 0, 0.5);
}
.plan-view__buy-btn a::after {
  position: absolute;
  content: ">";
  right: 26%;
}
.plan-view__buy-btn-big {
  font-size: clamp(16px, 3vw, 30px);
  padding: 12px 0;
}

/* 的中実績（tekityu） */
.tekityu {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  background: -webkit-gradient(linear, left top, right bottom, from(#F19308), color-stop(#FED046), to(#F19308));
  background: linear-gradient(to bottom right, #F19308, #FED046, #F19308);
  border-radius: 20px;
  padding: clamp(6px, 1vw, 10px);
  max-width: 1000px;
  margin: 0 auto;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: clamp(6px, 1vw, 10px);
}
@media screen and (max-width: 768px) {
  .tekityu {
    border-radius: 8px;
  }
}
.tekityu__item {
  background-color: #fff;
  border: #2A0903 solid 4px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: clamp(6px, 1vw, 10px);
  padding: clamp(6px, 1vw, 10px);
  border-radius: 20px;
  font-family: "Noto serif JP", sans-serif;
  font-weight: bold;
}
@media screen and (max-width: 768px) {
  .tekityu__item {
    border-radius: 8px;
    border: #2A0903 solid 2px;
  }
}
.tekityu__item-head {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: clamp(6px, 1vw, 10px);
}
.tekityu__item-head img {
  width: 7%;
  min-width: 40px;
  border-radius: 4px;
  aspect-ratio: 1/1;
  -o-object-fit: cover;
     object-fit: cover;
}
.tekityu__item-name {
  font-size: clamp(16px, 3.6vw, 40px);
}

/* ランキング(ranking) */
.ranking {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  background: -webkit-gradient(linear, left top, right bottom, from(#F19308), color-stop(#FED046), to(#F19308));
  background: linear-gradient(to bottom right, #F19308, #FED046, #F19308);
  border-radius: 20px;
  padding: clamp(6px, 1vw, 10px);
  max-width: 1000px;
  margin: 0 auto;
  margin-bottom: clamp(10px, 2vw, 20px);
}
@media screen and (max-width: 768px) {
  .ranking {
    border-radius: 8px;
  }
}
.ranking__inner {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  background-color: #ffffff;
  border: #2A0903 solid 4px;
  border-radius: 20px;
  font-family: "Noto serif JP", sans-serif;
  font-weight: bold;
  padding: clamp(6px, 1vw, 10px);
}
@media screen and (max-width: 768px) {
  .ranking__inner {
    border-radius: 8px;
    border: #2A0903 solid 2px;
  }
}
.ranking__title {
  font-size: clamp(20px, 5vw, 40px);
}
.ranking__sub-title {
  font-size: clamp(10px, 4vw, 28px);
  margin-top: -12px;
}
.ranking__sub-title::before {
  content: "";
  display: inline-block;
  width: 70px;
  height: 70px;
  background-image: url("/files/img/Best_harem/ranking-icon-star.png");
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  vertical-align: -22px;
}
@media screen and (max-width: 768px) {
  .ranking__sub-title::before {
    width: 50px;
    height: 50px;
    vertical-align: -18px;
  }
}
.ranking__sub-title::after {
  content: "";
  display: inline-block;
  width: 70px;
  height: 70px;
  background-image: url("/files/img/Best_harem/ranking-icon-star.png");
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  vertical-align: -22px;
}
@media screen and (max-width: 768px) {
  .ranking__sub-title::after {
    width: 50px;
    height: 50px;
    vertical-align: -18px;
  }
}
.ranking__title::before {
  content: "";
  display: inline-block;
  width: 60px;
  height: 60px;
  background-image: url("/files/img/Best_harem/ranking-icon.png");
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  vertical-align: -6px;
}
@media screen and (max-width: 768px) {
  .ranking__title::before {
    width: 40px;
    height: 40px;
  }
}
.ranking__title::after {
  content: "";
  display: inline-block;
  width: 60px;
  height: 60px;
  background-image: url("/files/img/Best_harem/ranking-icon.png");
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  vertical-align: -6px;
}
@media screen and (max-width: 768px) {
  .ranking__title::after {
    width: 40px;
    height: 40px;
  }
}
.ranking__item-wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: clamp(6px, 1vw, 10px);
}
.ranking__list-wrap {
  gap: 0;
  margin-bottom: clamp(5px, 1vw, 10px);
}
.ranking__item {
  position: relative;
  max-width: 700px;
  margin: 0 auto;
}
.ranking__item-blue {
  margin-top: -10px;
}
.ranking__icon {
  width: 20%;
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  margin-inline: 1%;
}
@media screen and (max-width: 768px) {
  .ranking__icon {
    width: 16%;
  }
}
.ranking__chara-img {
  width: 20%;
  border-radius: 8px;
  aspect-ratio: 1/1;
  -o-object-fit: cover;
     object-fit: cover;
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
}
@media screen and (max-width: 768px) {
  .ranking__chara-img {
    width: 16%;
    border-radius: 4px;
  }
}
.ranking__item-inner {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  max-width: 600px;
  font-weight: bold;
  width: 80%;
}
.ranking__item-inner-list {
  width: 64%;
}
.ranking__text {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-flex: 3;
      -ms-flex: 3;
          flex: 3;
}
.ranking__chara-name {
  font-size: clamp(10px, 3vw, 26px);
  line-height: 1;
}
.ranking__chara-name span {
  font-size: clamp(12px, 4vw, 38px);
}
.ranking__chara-name-gold {
  background: -webkit-gradient(linear, left top, left bottom, from(#A26C10), color-stop(#B99E33), to(#A26C10));
  background: linear-gradient(180deg, #A26C10, #B99E33, #A26C10);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  color: transparent;
}
.ranking__chara-name-silver {
  background: -webkit-gradient(linear, left top, left bottom, from(#4A494B), color-stop(#C4BEC5), to(#4A494B));
  background: linear-gradient(180deg, #4A494B, #C4BEC5, #4A494B);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  color: transparent;
}
.ranking__chara-name-bronze {
  background: -webkit-gradient(linear, left top, left bottom, from(#3D0601), color-stop(#AA473D), to(#3D0601));
  background: linear-gradient(180deg, #3D0601, #AA473D, #3D0601);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  color: transparent;
}
.ranking__chara-name-blue {
  background: -webkit-gradient(linear, left top, left bottom, from(#03082A), color-stop(#172371), to(#03082A));
  background: linear-gradient(180deg, #03082A, #172371, #03082A);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  color: transparent;
}
.ranking__time {
  font-size: clamp(9px, 2.8vw, 24px);
}
.ranking__btn {
  background-color: #40220F;
  color: #ffffff;
  border-radius: 100px;
  width: 70%;
  font-size: clamp(9px, 3vw, 22px);
  -webkit-box-shadow: 0 4px 4px rgba(0, 0, 0, 0.4);
          box-shadow: 0 4px 4px rgba(0, 0, 0, 0.4);
}

/* ポイント購入(deposit-list) */
.deposit-list {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  background: -webkit-gradient(linear, left top, right bottom, from(#F19308), color-stop(#FED046), to(#F19308));
  background: linear-gradient(to bottom right, #F19308, #FED046, #F19308);
  border-radius: 20px;
  padding: clamp(6px, 1vw, 10px);
  max-width: 1000px;
  margin: 0 auto;
}
@media screen and (max-width: 768px) {
  .deposit-list {
    border-radius: 8px;
  }
}
.deposit-list__wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: start;
  gap: clamp(6px, 1vw, 8px);
}
.deposit-list__item {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  background-color: #ffffff;
  border: #2A0903 solid 4px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: clamp(6px, 4vw, 14px);
  padding: clamp(6px, 1vw, 10px);
  border-radius: 20px;
  font-family: "Noto serif JP", sans-serif;
  font-weight: bold;
  color: #2A0903;
  width: calc((100% - 16px) / 3);
}
@media screen and (max-width: 1200px) {
  .deposit-list__item {
    width: calc((100% - 8px) / 2);
  }
}
@media screen and (max-width: 768px) {
  .deposit-list__item {
    border-radius: 8px;
    border: #2A0903 solid 2px;
    width: 100%;
  }
}
.deposit-list__item-title {
  font-size: clamp(20px, 4vw, 28px);
  line-height: 0.9;
}
.deposit-list__item-title span {
  font-size: clamp(10px, 3.6vw, 18px);
}
.deposit-list__item-icon {
  width: 30%;
  margin: 0 auto;
}
.deposit-list__item-minmin-wall {
  min-width: 48%;
}
.deposit-list__item-text {
  text-align: left;
  line-height: 1.3;
}

/* リアルタイムコメント(lobby-index) */
.lobby-index {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  background: -webkit-gradient(linear, left top, right bottom, from(#F19308), color-stop(#FED046), to(#F19308));
  background: linear-gradient(to bottom right, #F19308, #FED046, #F19308);
  border-radius: 20px;
  padding: clamp(6px, 1vw, 10px);
  max-width: 1000px;
  margin: 0 auto;
}
@media screen and (max-width: 768px) {
  .lobby-index {
    border-radius: 8px;
  }
}
.lobby-index__form {
  font-family: noto sans-serif;
  width: 100%;
  margin: 0 auto;
  text-align: center;
}
.lobby-index__textarea {
  width: 100%;
  min-height: 300px;
  border-radius: 20px;
  padding: 8px;
  font-size: clamp(14px, 5vw, 20px);
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  border: 4px solid #2A0903;
  background-color: #ffffff;
}
@media screen and (max-width: 768px) {
  .lobby-index__textarea {
    min-height: 100px;
    border-radius: 8px;
    border: 2px solid #2A0903;
  }
}
.lobby-index__btn {
  background: #2A0903;
  color: #ffffff;
  font-weight: 500;
  border: none;
  border-radius: 4px;
  padding: 4px 16px;
  font-size: clamp(14px, 5vw, 24px);
  cursor: pointer;
  -webkit-transition: 0.3s;
  transition: 0.3s;
  width: 40%;
  -webkit-box-shadow: 0 4px 4px rgba(0, 0, 0, 0.25);
          box-shadow: 0 4px 4px rgba(0, 0, 0, 0.25);
  min-width: 200px;
}
.lobby-index__btn:hover {
  opacity: 0.8;
}
.lobby-index__content-outer {
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  margin: clamp(8px, 1vw, 20px) 0;
  gap: clamp(6px, 1vw, 7.4px);
  font-family: "Noto serif JP", sans-serif;
}
.lobby-index__content {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  padding: 0.4%;
  aspect-ratio: 1/1;
  background-color: #2A0903;
  clip-path: polygon(0 0, calc(100% - 30px) 0, 100% 30px, 100% 100%, 0 100%);
  width: calc((100% - clamp(6px, 1vw, 7.4px) * 2) / 3);
}
@media screen and (max-width: 1200px) {
  .lobby-index__content {
    width: calc((100% - 8px) / 2);
    padding: 0.3%;
  }
}
@media screen and (max-width: 768px) {
  .lobby-index__content {
    aspect-ratio: 2/1;
    width: 100%;
  }
}
.lobby-index__userData-wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 5px;
  background-color: #fff;
  padding: 2%;
  height: 100%;
  clip-path: polygon(0 0, calc(100% - 30px) 0, 100% 30px, 100% 100%, 0 100%);
}
.lobby-index__userData-detail {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.lobby-index__comment {
  font-size: clamp(10px, 4vw, 16px);
  line-height: 1.3;
  text-align: left;
  font-weight: 500;
}
.lobby-index__radio-wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  margin-bottom: -2%;
}
@media screen and (max-width: 768px) {
  .lobby-index__radio-wrap {
    margin-bottom: -20px;
  }
}
.lobby-index__rating-text {
  font-size: clamp(12px, 5vw, 20px);
  font-weight: bold;
}
.lobby-index__pagenation {
  margin: 0 auto;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: clamp(2px, 1vw, 6px);
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
}
.lobby-index__pagenation-prev {
  color: #2A0903;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
.lobby-index__pagenation-prev:hover {
  opacity: 0.5;
}
.lobby-index__pagenation-next {
  color: #2A0903;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
.lobby-index__pagenation-next:hover {
  opacity: 0.5;
}
.lobby-index__pagenation-num {
  padding: 4px 8px;
  color: #2A0903;
  font-weight: bold;
  background-color: #ffffff;
  border: 1px solid #2A0903;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
.lobby-index__pagenation-num:hover {
  opacity: 0.5;
}
.lobby-index__pagenation-num.highlight {
  background-color: #2A0903;
  color: #ffffff;
}
.lobby-index__star-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  /* ★普通の左から右への並びに変更 */
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  /* ★左詰めで配置 */
  font-size: clamp(10px, 5vw, 24px);
}
.lobby-index__star-list .lobby-index__star-item {
  width: clamp(28px, 6vw, 32px);
  content: url("/files/img/Best_harem/lobby-icon-outline.svg") !important;
}
.lobby-index__star-list1 .lobby-index__star-item:nth-child(-n+1) {
  content: url("/files/img/Best_harem/lobby-icon.svg") !important;
}
.lobby-index__star-list2 .lobby-index__star-item:nth-child(-n+2) {
  content: url("/files/img/Best_harem/lobby-icon.svg") !important;
}
.lobby-index__star-list3 .lobby-index__star-item:nth-child(-n+3) {
  content: url("/files/img/Best_harem/lobby-icon.svg") !important;
}
.lobby-index__star-list4 .lobby-index__star-item:nth-child(-n+4) {
  content: url("/files/img/Best_harem/lobby-icon.svg") !important;
}
.lobby-index__star-list5 .lobby-index__star-item:nth-child(-n+5) {
  content: url("/files/img/Best_harem/lobby-icon.svg") !important;
}
.lobby-index__star-wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
      -ms-flex-direction: row-reverse;
          flex-direction: row-reverse;
  /* 入力側はホバー・チェックの仕様上、右から左のままにします */
}
.lobby-index__star-label img {
  display: block;
  content: url("/files/img/Best_harem/lobby-icon-outline.svg");
  width: clamp(28px, 6vw, 40px);
  height: auto;
  cursor: pointer;
}
.lobby-index__star-radio:checked ~ .lobby-index__star-label img {
  content: url("/files/img/Best_harem/lobby-icon.svg");
}
.lobby-index__star-radio {
  position: absolute;
  opacity: 0;
  pointer-events: none;
}
.lobby-index__userData-img {
  width: 46px;
  border-radius: 50%;
}
.lobby-index__userData-text {
  font-weight: bold;
  margin-bottom: -5px;
  font-size: clamp(10px, 4vw, 20px);
  text-align: left;
}
.lobby-index__userData-star {
  font-weight: bold;
  font-size: clamp(10px, 5vw, 24px);
}
.lobby-index__content-result {
  padding: 20px 8px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 10px;
  font-size: clamp(10px, 5vw, 30px);
  font-weight: bold;
  text-align: center;
}
@media screen and (max-width: 768px) {
  .lobby-index__content-result {
    padding: 32px 4px;
    gap: 8px;
  }
}

/* 無料情報-公開(public-forecast) */
.public-forecast {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  background: -webkit-gradient(linear, left top, right bottom, from(#F19308), color-stop(#FED046), to(#F19308));
  background: linear-gradient(to bottom right, #F19308, #FED046, #F19308);
  border-radius: 20px;
  padding: clamp(6px, 1vw, 15px);
  max-width: 1000px;
  margin: 0 auto;
  font-family: "Noto serif JP", sans-serif;
  font-weight: bold;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: clamp(6px, 1.4vw, 14px);
}
@media screen and (max-width: 768px) {
  .public-forecast {
    border-radius: 8px;
  }
}
.public-forecast__title {
  font-size: clamp(14px, 3vw, 32px);
  line-height: 1.1;
}
.public-forecast__titel span {
  font-size: clamp(11px, 3vw, 36px);
}
.public-forecast__wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: clamp(6px, 1.6vw, 14px);
}
.public-forecast__item {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  background-color: #ffffff;
  border: #2A0903 solid 4px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: clamp(6px, 1.4vw, 14px);
  border-radius: 20px;
  padding-bottom: clamp(6px, 1.4vw, 10px);
}
@media screen and (max-width: 768px) {
  .public-forecast__item {
    border-radius: 8px;
  }
}
.public-forecast__item-title {
  background-color: #2A0903;
  color: #ffffff;
  font-size: clamp(11px, 3vw, 28px);
  border-radius: 6px 6px 0 0;
}
@media screen and (max-width: 768px) {
  .public-forecast__item-title {
    border-radius: 2px 2px 0 0;
  }
}
.public-forecast__item-inner {
  padding: 0 clamp(6px, 1vw, 10px);
}
.public-forecast__item-info {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
@media screen and (max-width: 768px) {
  .public-forecast__item-info {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
}
.public-forecast__item-info dt {
  width: 50%;
}
.public-forecast__item-info dl {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  text-align: left;
  font-size: clamp(12px, 2.4vw, 22px);
  line-height: 1.2;
}
.public-forecast__item-left {
  width: 50%;
}
@media screen and (max-width: 768px) {
  .public-forecast__item-left {
    width: 100%;
  }
}
.public-forecast__item-right {
  width: 50%;
}
@media screen and (max-width: 768px) {
  .public-forecast__item-right {
    width: 100%;
  }
}
.public-forecast__tekityu {
  position: relative;
}
.public-forecast__tekityu-text {
  position: absolute;
  font-size: clamp(8.4px, 2.4vw, 24px);
  top: 50%;
  color: #ffffff;
  left: 50%;
  -webkit-transform: translate(-42%, -50%);
          transform: translate(-42%, -50%);
  line-height: 1.2;
  white-space: nowrap;
  font-weight: 500;
}
.public-forecast__tekityu-text span {
  font-weight: bold;
  font-size: clamp(11px, 3.5vw, 40px);
}

/* 無料情報-未公開(plan-view-before) */
.plan-view-before {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  background: -webkit-gradient(linear, left top, right bottom, from(#F19308), color-stop(#FED046), to(#F19308));
  background: linear-gradient(to bottom right, #F19308, #FED046, #F19308);
  border-radius: 20px;
  padding: clamp(6px, 1vw, 10px);
  max-width: 700px;
  margin: 0 auto;
  font-family: "Noto serif JP", sans-serif;
  font-weight: bold;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: clamp(6px, 1.4vw, 14px);
}
@media screen and (max-width: 768px) {
  .plan-view-before {
    border-radius: 8px;
  }
}
.plan-view-before__item {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  background-color: #ffffff;
  border: #2A0903 solid 4px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: clamp(6px, 1.4vw, 14px);
  border-radius: 20px;
  padding: clamp(6px, 1.4vw, 10px);
}
@media screen and (max-width: 768px) {
  .plan-view-before__item {
    border-radius: 8px;
  }
}
.plan-view-before__item-text {
  font-size: clamp(10px, 2.4vw, 22px);
  line-height: 1.3;
}
.plan-view-before__item-text span {
  background-color: #2A0903;
  color: #ffffff;
  padding: 0 6px;
}

/* 有料予想-公開(plan-view-after) */
.plan-view-after {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  background: -webkit-gradient(linear, left top, right bottom, from(#F19308), color-stop(#FED046), to(#F19308));
  background: linear-gradient(to bottom right, #F19308, #FED046, #F19308);
  border-radius: 20px;
  padding: clamp(6px, 1vw, 15px);
  max-width: 1000px;
  margin: 0 auto;
  font-family: "Noto serif JP", sans-serif;
  font-weight: bold;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: clamp(6px, 1.4vw, 14px);
}
@media screen and (max-width: 768px) {
  .plan-view-after {
    border-radius: 8px;
  }
}
.plan-view-after__title {
  font-size: clamp(11px, 3vw, 40px);
  line-height: 1.1;
}
.plan-view-after__titel span {
  font-size: clamp(11px, 3vw, 36px);
}
.plan-view-after__wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: clamp(6px, 1.6vw, 14px);
}
.plan-view-after__item {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  background-color: #ffffff;
  border: #2A0903 solid 4px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: clamp(6px, 1.4vw, 14px);
  border-radius: 20px;
  padding-bottom: clamp(6px, 1.4vw, 10px);
}
@media screen and (max-width: 768px) {
  .plan-view-after__item {
    border-radius: 8px;
  }
}
.plan-view-after__item-title {
  background-color: #2A0903;
  color: #ffffff;
  font-size: clamp(11px, 3vw, 28px);
  border-radius: 6px 6px 0 0;
}
@media screen and (max-width: 768px) {
  .plan-view-after__item-title {
    border-radius: 2px 2px 0 0;
  }
}
.plan-view-after__item-inner {
  padding: 0 clamp(6px, 1vw, 10px);
}
.plan-view-after__item-info {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
@media screen and (max-width: 768px) {
  .plan-view-after__item-info {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
}
.plan-view-after__item-info dt {
  width: 50%;
}
.plan-view-after__item-info dl {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  text-align: left;
  font-size: clamp(12px, 2.4vw, 26px);
  line-height: 1.2;
}
.plan-view-after__item-left {
  width: 50%;
}
@media screen and (max-width: 768px) {
  .plan-view-after__item-left {
    width: 100%;
  }
}
.plan-view-after__item-right {
  width: 50%;
}
@media screen and (max-width: 768px) {
  .plan-view-after__item-right {
    width: 100%;
  }
}

/* 有料予想-未公開(plan-view-buy) */
.plan-view-buy {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  background: -webkit-gradient(linear, left top, right bottom, from(#F19308), color-stop(#FED046), to(#F19308));
  background: linear-gradient(to bottom right, #F19308, #FED046, #F19308);
  border-radius: 20px;
  padding: clamp(6px, 1vw, 10px);
  max-width: 700px;
  margin: 0 auto;
  font-family: "Noto serif JP", sans-serif;
  font-weight: bold;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: clamp(6px, 1.4vw, 14px);
}
@media screen and (max-width: 768px) {
  .plan-view-buy {
    border-radius: 8px;
  }
}
.plan-view-buy__item {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  background-color: #ffffff;
  border: #2A0903 solid 4px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: clamp(6px, 1.4vw, 14px);
  border-radius: 20px;
  padding: clamp(6px, 1.4vw, 10px);
}
@media screen and (max-width: 768px) {
  .plan-view-buy__item {
    border-radius: 8px;
  }
}
.plan-view-buy__item-text {
  font-size: clamp(10px, 2.4vw, 22px);
  line-height: 1.3;
}
.plan-view-buy__item-text span {
  background-color: #2A0903;
  color: #ffffff;
  padding: 0 6px;
}

/* メールBOX(mail-list) */
.mail-list {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  background: -webkit-gradient(linear, left top, right bottom, from(#F19308), color-stop(#FED046), to(#F19308));
  background: linear-gradient(to bottom right, #F19308, #FED046, #F19308);
  border-radius: 20px;
  padding: clamp(6px, 1vw, 10px);
  max-width: 1000px;
  margin: 0 auto;
  font-family: "Noto serif JP", sans-serif;
  font-weight: bold;
}
@media screen and (max-width: 768px) {
  .mail-list {
    border-radius: 8px;
  }
}
.mail-list__wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: clamp(6px, 1.4vw, 10px);
}
.mail-list__item {
  background-color: #ffffff;
  border: solid 4px #2A0903;
  border-radius: 10px;
  padding: 1%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 1%;
  color: #2A0903;
  -webkit-transition: 0.3s;
  transition: 0.3s;
  -webkit-box-shadow: 0px 4px 3px 0px rgba(0, 0, 0, 0.4);
          box-shadow: 0px 4px 3px 0px rgba(0, 0, 0, 0.4);
}
@media screen and (max-width: 768px) {
  .mail-list__item {
    border: solid 2px #2A0903;
  }
}
.mail-list__pin {
  max-width: 30px;
  min-width: 16px;
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
}
@media screen and (max-width: 768px) {
  .mail-list__pin {
    max-width: 20px;
  }
}
.mail-list__chara {
  width: clamp(60px, 18vw, 120px);
  border-radius: 4px;
  aspect-ratio: 1/1;
  -o-object-fit: cover;
     object-fit: cover;
}
.mail-list__text-area-name {
  color: #2A0903;
  line-height: 1;
  font-size: clamp(13px, 2.6vw, 20px);
  text-align: left;
}
.mail-list__right {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-flex: 7;
      -ms-flex: 7;
          flex: 7;
}
@media screen and (max-width: 768px) {
  .mail-list__right {
    -webkit-box-flex: 6;
        -ms-flex: 6;
            flex: 6;
  }
}
.mail-list__right-head {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  color: #2A0903;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.mail-list__time {
  font-size: clamp(11px, 2vw, 18px);
}
.mail-list__new-icon {
  background-color: #2A0903;
  color: #ffffff;
  padding: clamp(2px, 1.2vw, 6px);
  font-size: clamp(10px, 2vw, 14px);
  line-height: 1;
}
.mail-list__text {
  text-align: left;
  color: #2A0903;
  font-size: clamp(11px, 2.5vw, 18px);
  max-height: 2.4em;
  overflow: hidden;
  line-height: 1.2;
}
.mail-list__more {
  color: blue;
  text-align: justify;
  font-size: clamp(10px, 2.5vw, 18px);
}

/* 1. お気に入りエリア（上）の中にいる時 */
.favorite_targets_wrap .not_favorite_mark_js {
  display: none;
  /* 白抜きピンを隠す（塗りつぶしだけ見える） */
}

/* 2. お気に入り以外のエリア（下）の中にいる時 */
.other_targets_wrap .favorite_mark_js {
  display: none;
  /* 塗りつぶしピンを隠す（白抜きだけ見える）*/
}

/* メール詳細(mail-detail) */
.mail-detail {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  background: -webkit-gradient(linear, left top, right bottom, from(#F19308), color-stop(#FED046), to(#F19308));
  background: linear-gradient(to bottom right, #F19308, #FED046, #F19308);
  border-radius: 20px;
  padding: clamp(6px, 1vw, 10px);
  max-width: 1000px;
  margin: 0 auto;
  font-family: "Noto serif JP", sans-serif;
  font-weight: bold;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}
@media screen and (max-width: 768px) {
  .mail-detail {
    border-radius: 10px;
  }
}
.mail-detail__talk {
  background-color: #ffffff;
  border: 4px solid #2A0903;
  border-radius: 20px;
  padding: 2%;
  min-height: 60vh;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
}
@media screen and (max-width: 768px) {
  .mail-detail__talk {
    border: 2px solid #2A0903;
    border-radius: 10px;
  }
}
.mail-detail__supporter-name {
  -webkit-transition: 0.3s;
  transition: 0.3s;
  color: #2A0903;
  text-align: left;
}
.mail-detail__supporter-link {
  font-size: clamp(13px, 3vw, 24px);
  font-weight: bold;
  color: #2A0903;
}
.mail-detail__supporter-link:hover {
  opacity: 0.5;
}
.mail-detail-talk__more-load-btn {
  display: inline-block;
  background-color: #2A0903;
  border-radius: 4px;
  padding: 8px 24px;
  color: #ffffff;
  font-weight: bold;
  text-align: center;
  -webkit-transition: background 0.3s 0s ease-out;
  transition: background 0.3s 0s ease-out;
  cursor: pointer;
  font-size: clamp(9px, 3vw, 18px);
}
.mail-detail-talk__more-load-btn:hover {
  color: #2A0903;
  background-color: #ffffff;
  font-weight: bold;
}
.mail-detail-talk__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin-bottom: 10px;
}
.mail-detail__text {
  font-size: clamp(10px, 3vw, 18px);
  text-align: left;
  line-height: 1.4;
}
.mail-detail__form {
  background-color: #2A0903;
  padding: 8px;
  border-radius: 16px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 1%;
}
@media screen and (max-width: 768px) {
  .mail-detail__form {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: 6px;
    padding: 4px;
    border-radius: 8px;
  }
}
.mail-detail__btn-outer {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 8px;
}
@media screen and (max-width: 768px) {
  .mail-detail__btn-outer {
    gap: 4px;
  }
}
.mail-detail__btn {
  width: 100%;
  background: -webkit-gradient(linear, left top, right bottom, from(#F19308), color-stop(#FED046), to(#F19308));
  background: linear-gradient(to bottom right, #F19308, #FED046, #F19308);
  border: none;
  border-radius: 10px;
  padding: 2px 8px;
  font-weight: bold;
  text-align: center;
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  color: #2A0903;
  font-size: clamp(12px, 2vw, 24px);
  font-family: noto serif jp;
  line-height: 1;
}
@media screen and (max-width: 768px) {
  .mail-detail__btn {
    border-radius: 5px;
  }
}
.mail-detail__btn:hover {
  opacity: 0.5;
}
.mail-detail__textarea {
  -webkit-box-flex: 7;
      -ms-flex: 7;
          flex: 7;
  width: 100%;
  border-radius: 10px;
  padding: 8px;
  font-size: clamp(12px, 2vw, 16px);
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
@media screen and (max-width: 768px) {
  .mail-detail__textarea {
    height: 80px;
    padding: 4px;
    border-radius: 5px;
  }
}

.talk_message_wrap {
  width: 100%;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  margin: 0 auto;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 20px;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  margin-bottom: clamp(8px, 2vw, 20px);
}
@media screen and (max-width: 768px) {
  .talk_message_wrap {
    width: 100%;
    gap: 8px;
  }
}

.balloon_l {
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 2%;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: end;
}
.balloon_l .faceicon_wrap {
  width: 12%;
  min-width: 80px;
  aspect-ratio: 1/1;
  overflow: hidden;
  border-radius: 4px;
}
@media screen and (max-width: 768px) {
  .balloon_l .faceicon_wrap {
    display: none;
  }
}
.balloon_l .body {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-flex: 9;
      -ms-flex: 9;
          flex: 9;
}
.balloon_l .says {
  background-color: #2A0903;
  max-width: 588px;
  padding: 4px;
  border-radius: 8px 8px 8px 0;
  position: relative;
  font-size: clamp(12px, 2vw, 16px);
  color: #ffffff;
  text-align: left;
}
.balloon_l .says > div {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}
.balloon_r {
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
      -ms-flex-direction: row-reverse;
          flex-direction: row-reverse;
}
.balloon_r .faceicon_wrap {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  display: none;
}
.balloon_r .body {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-flex: 9;
      -ms-flex: 9;
          flex: 9;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
      -ms-flex-direction: row-reverse;
          flex-direction: row-reverse;
}
.balloon_r .says {
  max-width: 582px;
  border: 1px solid #2A0903;
  padding: 4px;
  color: #2A0903;
  border-radius: 8px 8px 0 8px;
  font-size: clamp(12px, 2vw, 18px);
}
.balloon_r .subject_js {
  font-weight: bold;
}
.balloon_r .says > div {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}

.faceicon_wrap > img {
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.talk_timestamp {
  font-size: clamp(10px, 2vw, 16px);
  -ms-flex-item-align: end;
      align-self: flex-end;
  padding: 0 4px;
  font-weight: bold;
  line-height: 1.1;
}

/* メール送信完了(mail-send) */
.mail-send__icon {
  width: 13%;
  min-width: 70px;
  display: block;
  margin: 0 auto;
  margin-bottom: clamp(20px, 5vw, 50px);
}
.mail-send__biginner-btn {
  position: relative;
  width: 90%;
  max-width: 700px;
  margin: 0 auto;
}
.mail-send__biginner-btn-text {
  position: absolute;
  top: 46%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  font-size: clamp(15px, 4vw, 36px);
  color: #B48631;
  font-family: "Noto serif JP", sans-serif;
  font-weight: bold;
  white-space: nowrap;
  line-height: 1.1;
}
.mail-send__biginner-btn-text span {
  font-size: clamp(16px, 4vw, 40px);
  color: #E86893;
}

/* ご登録完了(regist) */
.regist__title {
  position: relative;
  max-width: 700px;
  margin: 0 auto;
  font-family: "Noto serif JP", sans-serif;
  margin-bottom: clamp(20px, 5vw, 50px);
}
.regist__title-text {
  position: absolute;
  top: 50%;
  right: 50%;
  -webkit-transform: translate(50%, -50%);
          transform: translate(50%, -50%);
  color: #ffffff;
  font-size: clamp(14px, 3.6vw, 36px);
  white-space: nowrap;
}
.regist__banner {
  max-width: 1100px;
  margin: 0 auto;
}
.regist__arrow {
  max-width: 500px;
  margin: 0 auto;
  margin-bottom: clamp(20px, 5vw, 50px);
}
.regist__profile {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  background: -webkit-gradient(linear, left top, right bottom, from(#F19308), color-stop(#FED046), to(#F19308));
  background: linear-gradient(to bottom right, #F19308, #FED046, #F19308);
  border-radius: 20px;
  padding: clamp(6px, 1vw, 10px);
  max-width: 1000px;
  margin: 0 auto;
  font-family: "Noto serif JP", sans-serif;
  font-weight: bold;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: clamp(6px, 1.4vw, 14px);
  margin-bottom: clamp(20px, 5vw, 50px);
}
@media screen and (max-width: 768px) {
  .regist__profile {
    border-radius: 8px;
  }
}
.regist__profile-title {
  font-size: clamp(14px, 3.6vw, 36px);
}
.regist__profile-top {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
.regist__profile-img {
  width: calc(30% - 5px);
  border-radius: 8px;
  aspect-ratio: 1/1;
  -o-object-fit: cover;
     object-fit: cover;
}
@media screen and (max-width: 768px) {
  .regist__profile-img {
    border-radius: 6px;
  }
}
.regist__profile-text {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  background-color: rgba(255, 255, 255, 0.7);
  width: calc(70% - 0px);
  text-align: left;
  padding: 1%;
  font-size: clamp(10px, 2.4vw, 22px);
  line-height: 1.3;
}
.regist__profile-tekityu {
  background-color: #fff;
  border: #2A0903 solid 4px;
  padding: clamp(6px, 1vw, 10px);
  border-radius: 20px;
  font-family: "Noto serif JP", sans-serif;
  font-weight: bold;
}
@media screen and (max-width: 768px) {
  .regist__profile-tekityu {
    border-radius: 8px;
    border: #2A0903 solid 2px;
  }
}
.regist__profile-tekityu-title {
  font-size: clamp(16px, 3vw, 38px);
  text-align: center;
}
.regist__text {
  font-style: italic;
  font-size: clamp(14px, 3.6vw, 36px);
  color: #ffffff;
  font-family: "Noto serif JP", sans-serif;
  line-height: 1.2;
  font-weight: bold;
  margin-bottom: clamp(20px, 5vw, 50px);
}
.regist__text span {
  font-size: clamp(14px, 3.6vw, 42px);
  color: #FFF600;
}
.regist__form {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  background: -webkit-gradient(linear, left top, right bottom, from(#F19308), color-stop(#FED046), to(#F19308));
  background: linear-gradient(to bottom right, #F19308, #FED046, #F19308);
  border-radius: 20px;
  padding: clamp(6px, 1vw, 15px);
  max-width: 510px;
  font-family: "Noto serif JP", sans-serif;
  font-weight: bold;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: clamp(6px, 1.4vw, 14px);
}
@media screen and (max-width: 768px) {
  .regist__form {
    border-radius: 6px;
    width: 100%;
  }
}
.regist__form-container {
  background-color: #fff;
  border: #2A0903 solid 4px;
  padding: clamp(30px, 4vw, 50px) clamp(6px, 1vw, 10px);
  border-radius: 20px;
  font-family: "Noto serif JP", sans-serif;
  font-weight: bold;
}
@media screen and (max-width: 768px) {
  .regist__form-container {
    border-radius: 6px;
  }
}
.regist__form-wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  max-width: 1000px;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin: 0 auto;
  margin-bottom: clamp(20px, 5vw, 50px);
}
@media screen and (max-width: 768px) {
  .regist__form-wrap {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
}
.regist__q-box {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: clamp(6px, 1vw, 24px);
}
.regist__q-wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  padding: 10px 0;
  gap: 8px;
  font-weight: bold;
}
.regist__q-wrap p {
  line-height: 1.2;
}
.regist__q-input {
  display: none;
}
.regist__q-label {
  padding: 4px clamp(2px, 1vw, 8px);
  border: 1px solid #2A0903;
  cursor: pointer;
  -webkit-transition: 0.2s;
  transition: 0.2s;
  font-size: clamp(11px, 2.4vw, 18px);
  letter-spacing: 1px;
  line-height: 1.1;
}
@media screen and (max-width: 768px) {
  .regist__q-label {
    font-size: clamp(12px, 3vw, 18px);
  }
}
.regist__q-box-01 input[type=radio]:checked + label {
  background: #2A0903;
  color: #fff;
}
.regist__q-box-02 input[type=radio]:checked + label {
  background: #2A0903;
  color: #fff;
}
.regist__q-box-03 input[type=radio]:checked + label {
  background: #2A0903;
  color: #fff;
}
.regist__msg-send-btn {
  font-weight: bold;
  font-size: clamp(14px, 3.6vw, 26px);
  width: 90%;
  border-radius: 2px;
  color: #2A0903;
  background: -webkit-gradient(linear, left top, right bottom, from(#F19308), color-stop(#FED046), to(#F19308));
  background: linear-gradient(to bottom right, #F19308, #FED046, #F19308);
  border: none;
  -webkit-box-shadow: 3px 3px 6px 3px rgba(0, 0, 0, 0.45);
          box-shadow: 3px 3px 6px 3px rgba(0, 0, 0, 0.45);
  margin-top: 10px;
}
.regist__info {
  position: relative;
  max-width: 600px;
  margin: 0 auto;
}
.regist__info-text {
  position: absolute;
  color: #ffffff;
  top: 50%;
  right: 50%;
  -webkit-transform: translate(50%, -50%);
          transform: translate(50%, -50%);
  font-size: clamp(14px, 3.6vw, 24px);
  white-space: nowrap;
}

/* 初回お試し保証制度(biginner) */
.biginner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  max-width: 1000px;
  margin: 0 auto;
  gap: clamp(15px, 4vw, 30px);
  padding-top: clamp(20px, 5vw, 50px);
}

/* 無料配当プレゼント(present) */
.present {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  max-width: 1000px;
  margin: 0 auto;
  gap: clamp(15px, 4vw, 30px);
  padding-top: clamp(20px, 5vw, 50px);
}

/* 無料配当プレゼント-エントリー完了(present-entry-complete) */
.present-entry-complete {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  max-width: 1000px;
  margin: 0 auto;
  gap: clamp(15px, 4vw, 30px);
  padding-top: clamp(20px, 5vw, 50px);
}

/* リベンジ保証制度(revenge) */
.revenge {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  max-width: 1000px;
  margin: 0 auto;
  gap: clamp(15px, 4vw, 30px);
  padding-top: clamp(20px, 5vw, 50px);
}

/* 法的な情報(compliance) */
.compliance {
  color: #ffffff;
  font-size: clamp(14px, 3.6vw, 20px);
  font-family: "Noto serif JP", sans-serif;
  max-width: 900px;
  margin: 0 auto;
  text-align: left;
}
.compliance__sub-title {
  font-size: clamp(14px, 3.6vw, 30px);
  letter-spacing: 0.5px;
  line-height: 1.2;
  margin-bottom: 30px;
}
.compliance__item {
  margin-bottom: 30px;
}
.compliance__item-head {
  font-size: clamp(14px, 3.6vw, 26px);
}

/* お問い合わせ(ask) */
.ask__form {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  margin-bottom: 20px;
  max-width: 1000px;
  margin: 0 auto;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
.ask-form__label {
  width: 100%;
  font-weight: bold;
}
.ask__textarea {
  background-color: #ffffff;
  width: 100%;
  min-height: 300px;
  border-radius: 20px;
  padding: 8px;
  resize: vertical;
  font-size: clamp(12px, 3vw, 18px);
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  border: 2px solid #2A0903;
}
@media screen and (max-width: 768px) {
  .ask__textarea {
    min-height: 180px;
    border-radius: 8px;
  }
}
.ask__textarea:focus {
  outline: 1px solid #2A0903;
}
.ask-form__input {
  padding: 8px;
  font-size: 20px;
  border: none;
  padding: 6px;
  border-radius: 4px;
  width: 100%;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  border: 1px solid #333;
}
.ask-form__input:focus {
  outline: 2px solid #333;
}
.ask__btn {
  background: #2A0903;
  color: #ffffff;
  border: none;
  font-weight: bold;
  border-radius: 4px;
  padding: 4px 16px;
  font-size: clamp(14px, 5vw, 24px);
  -webkit-transition: 0.3s;
  transition: 0.3s;
  width: 30%;
  -webkit-box-shadow: 0 4px 4px rgba(0, 0, 0, 0.25);
          box-shadow: 0 4px 4px rgba(0, 0, 0, 0.25);
  min-width: 200px;
}
.ask__btn:hover {
  opacity: 0.8;
}
.ask__history {
  background-color: #ffffff;
  border: solid 2px #2A0903;
  border-radius: 20px;
  padding: clamp(6px, 1vw, 10px);
  margin: 10px 0;
  font-family: "Noto serif JP", sans-serif;
}
@media screen and (max-width: 768px) {
  .ask__history {
    border-radius: 8px;
  }
}
.ask__pagenation {
  margin: 0 auto;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 16px;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
}
@media screen and (max-width: 768px) {
  .ask__pagenation {
    gap: 4px;
  }
}
.ask__pagenation-prev {
  padding: 4px 8px;
  border-radius: 6px;
  border: 2px solid #333;
  color: #ffffff;
  font-weight: bold;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
.ask__pagenation-prev:hover {
  opacity: 0.5;
}
.ask__pagenation-next {
  padding: 4px 8px;
  border-radius: 6px;
  border: 2px solid #333;
  color: #ffffff;
  font-weight: bold;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
.ask__pagenation-next:hover {
  opacity: 0.5;
}
.ask__pagenation-num:hover {
  opacity: 0.5;
}
.ask__star-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
      -ms-flex-direction: row-reverse;
          flex-direction: row-reverse;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
}
.ask__userData-wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}
.ask__userData-detail {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.ask__content-outer {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 20px;
}
@media screen and (max-width: 768px) {
  .ask__content-outer {
    gap: 8px;
  }
}
.ask__userData-img {
  width: 46px;
  border-radius: 50%;
}
.ask__userData-head {
  padding-left: 2px;
}
.ask__userData-name {
  font-size: clamp(14px, 4.6vw, 22px);
  font-weight: bold;
}
.ask__time {
  text-align: left;
}
.ask__comment {
  font-size: clamp(12px, 3.2vw, 16px);
  text-align: left;
}
.ask__content-result {
  padding: 20px 8px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 10px;
  font-size: clamp(10px, 5vw, 30px);
  font-weight: bold;
  text-align: center;
}
@media screen and (max-width: 768px) {
  .ask__content-result {
    padding: 32px 4px;
    gap: 8px;
  }
}
.ask__form-btn {
  color: #ffffff;
  background-color: #333;
  border-radius: 4px;
  padding: 4px 16px;
  font-size: clamp(14px, 5vw, 24px);
  cursor: pointer;
  -webkit-box-shadow: 0 4px 4px rgba(0, 0, 0, 0.25);
          box-shadow: 0 4px 4px rgba(0, 0, 0, 0.25);
}
.ask__form-btn:hover {
  opacity: 0.5;
}
.ask__link-text:hover {
  opacity: 0.5;
}
.ask__title {
  text-align: center;
  font-size: clamp(14px, 5vw, 30px);
  font-weight: bold;
  color: #2A0903;
}

/* 支払い方法別ポイント購入画面(payment-method) */
.payment-method__content {
  max-width: 1000px;
  margin: 0 auto;
  padding-inline: 2%;
}
@media screen and (max-width: 768px) {
  .payment-method__content {
    margin-bottom: 16px;
  }
}
.payment-method__notice-text {
  margin-bottom: 40px;
  font-size: 32px;
  font-weight: bold;
  text-align: center;
}
@media screen and (max-width: 768px) {
  .payment-method__notice-text {
    font-size: 4.2vw;
    margin-bottom: 24px;
  }
}
.payment-method-advert {
  width: 80%;
  margin: 0 auto;
  padding: 40px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
@media screen and (max-width: 768px) {
  .payment-method-advert {
    width: 100%;
    padding: 20px;
  }
}
.payment-method__btn:hover {
  opacity: 0.5;
}
.payment-method-plan__btn-link {
  width: 100%;
}
.payment-method-plan__img {
  width: 80%;
  margin: 0 auto;
  margin-bottom: 16px;
}
@media screen and (max-width: 768px) {
  .payment-method-plan__img {
    width: 100%;
    margin-bottom: 8px;
  }
}
.payment-method-plan__btn {
  background: #333;
  color: #333;
  font-weight: bold;
  border: none;
  border-radius: 4px;
  padding: 4px 16px;
  font-size: clamp(14px, 5vw, 24px);
  cursor: pointer;
  -webkit-transition: 0.3s;
  transition: 0.3s;
  -webkit-box-shadow: 0 4px 4px rgba(0, 0, 0, 0.25);
          box-shadow: 0 4px 4px rgba(0, 0, 0, 0.25);
  min-width: 200px;
}
.payment-method-plan__btn:hover {
  opacity: 0.5;
}
.payment-method__form-input {
  width: 50%;
  padding: 8px;
  font-size: 20px;
  border: solid 2px #2A0903;
  color: #2A0903;
  font-family: "Noto serif JP", sans-serif;
  font-weight: bold;
}
@media screen and (max-width: 768px) {
  .payment-method__form-input {
    width: 100%;
  }
}
.payment-method__form {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 24px;
  margin-top: 12px;
  align-items: center;
  margin: 0 auto;
}
@media screen and (max-width: 768px) {
  .payment-method__form {
    gap: 20px;
  }
}

/* 銀行振込情報(payment-method) */
.payment-bank__sec-text {
  line-height: 1.2;
}
.payment-bank__list {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  background: -webkit-gradient(linear, left top, right bottom, from(#F19308), color-stop(#FED046), to(#F19308));
  background: linear-gradient(to bottom right, #F19308, #FED046, #F19308);
  border-radius: 20px;
  padding: clamp(6px, 1vw, 10px);
  max-width: 1000px;
  margin: 0 auto;
  font-family: "Noto serif JP", sans-serif;
  font-weight: bold;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: clamp(6px, 1.4vw, 10px);
}
@media screen and (max-width: 768px) {
  .payment-bank__list {
    border-radius: 8px;
  }
}
.payment-bank__card {
  max-width: 1000px;
  margin: 0 auto;
  border: 4px solid #2A0903;
  background-color: #ffffff;
  border-radius: 20px;
  padding: clamp(6px, 1vw, 10px);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: clamp(6px, 1vw, 20px);
}
@media screen and (max-width: 768px) {
  .payment-bank__card {
    border-radius: 8px;
    border: 2px solid #2A0903;
  }
}
.payment-bank__item-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 100%;
}
.payment-bank__item-title {
  font-size: clamp(22px, 5vw, 32px);
  font-weight: bold;
  text-align: center;
  width: 100%;
}
.payment-bank__item-text {
  font-size: 24px;
  font-weight: bold;
  width: 30%;
  text-align: left;
}
@media screen and (max-width: 768px) {
  .payment-bank__item-text {
    width: 100%;
    font-size: 3.7vw;
  }
}
.payment-bank__title {
  margin-bottom: 20px;
  font-size: 40px;
  font-weight: bold;
  text-align: center;
}
@media screen and (max-width: 768px) {
  .payment-bank__title {
    font-size: 6.4vw;
    margin-bottom: 4px;
  }
}
.payment-bank__text {
  font-size: clamp(9px, 3vw, 20px);
  font-weight: bold;
  text-align: center;
  width: 82%;
  margin: 0 auto;
}
@media screen and (max-width: 768px) {
  .payment-bank__text {
    width: 100%;
  }
}
.payment-bank__price-box {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 8px;
  -ms-flex-pack: distribute;
      justify-content: space-around;
  color: #ffffff;
  width: 100%;
  max-width: 500px;
  margin: 0 auto 16px auto;
}
@media screen and (max-width: 768px) {
  .payment-bank__price-box {
    gap: 4px;
    margin-bottom: 8px;
  }
}
.payment-bank__price {
  width: calc((100% - 8px) / 2);
  text-align: center;
  font-weight: 500;
}
@media screen and (max-width: 768px) {
  .payment-bank__price {
    width: calc((100% - 4px) / 2);
  }
}

/* プロフィール(profile) */
.profile {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  background: -webkit-gradient(linear, left top, right bottom, from(#F19308), color-stop(#FED046), to(#F19308));
  background: linear-gradient(to bottom right, #F19308, #FED046, #F19308);
  border-radius: 20px;
  padding: clamp(6px, 1vw, 10px);
  max-width: 1000px;
  margin: 0 auto;
  font-weight: bold;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: clamp(6px, 1.4vw, 14px);
}
@media screen and (max-width: 768px) {
  .profile {
    border-radius: 6px;
    width: 100%;
  }
}
.profile-form {
  background-color: #fff;
  border: #2A0903 solid 4px;
  padding: clamp(6px, 1vw, 10px);
  border-radius: 20px;
  font-family: "Noto serif JP", sans-serif;
  font-weight: bold;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 16px;
}
@media screen and (max-width: 768px) {
  .profile-form {
    gap: 8px;
    border-radius: 6px;
  }
}
.profile__img {
  border-radius: 8px;
  aspect-ratio: 1/1;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: top;
     object-position: top;
}
.profile-form__label {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  width: 100%;
}
.profile-form__label-text {
  font-weight: bold;
  font-size: clamp(14px, 3vw, 24px);
  width: 30%;
}
.profile-form__input {
  padding: 8px;
  font-size: clamp(12px, 2vw, 18px);
  width: auto;
  border: solid 2px #2A0903;
  width: 70%;
}
.profile-form__birth-wrap {
  width: 70%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
  gap: 1%;
  font-size: clamp(14px, 3vw, 24px);
}
.profile-form__input-sm {
  width: 25%;
  padding: 8px;
  font-size: clamp(12px, 2vw, 18px);
  border: solid 2px #2A0903;
}
.profile-form__line-btn {
  border: none;
  background: #00B515;
  color: #ffffff;
  font-weight: bold;
  padding: 8px 20px;
  font-size: clamp(12px, 2vw, 18px);
  border-radius: 4px;
  -webkit-transition: 0.3s;
  transition: 0.3s;
  cursor: pointer;
}
.profile-form__line-btn-complete {
  border: none;
  font-weight: bold;
  color: #333;
  margin: 0 auto;
  padding: 8px;
  font-size: 16px;
  cursor: pointer;
}
@media screen and (max-width: 768px) {
  .profile-form__line-btn-complete {
    padding: 4px;
    font-size: 12px;
  }
}
.profile-form__line-btn:hover {
  opacity: 0.5;
}
.profile__img-wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  width: 100%;
}
@media screen and (max-width: 768px) {
  .profile__img-wrap {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: 10px;
    width: 100%;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
}
.profile__img-card {
  width: 32%;
}
@media screen and (max-width: 768px) {
  .profile__img-card {
    width: 80%;
    max-width: 400px;
  }
}
.profile__img {
  width: 100%;
}
.profile__img-btn-wrap {
  margin-top: 8px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 3%;
}
.profile__imgChenge-btn {
  border: none;
  background: #BE0000;
  color: #ffffff;
  font-weight: 500;
  padding: 2% 13%;
  font-size: clamp(16px, 3vw, 24px);
  border-radius: 4px;
  -webkit-transition: 0.3s;
  transition: 0.3s;
  white-space: nowrap;
  cursor: pointer;
}
.profile__imgRemove-btn {
  border: none;
  background: #000A74;
  color: #ffffff;
  font-weight: 500;
  padding: 2% 13%;
  font-size: clamp(16px, 3vw, 24px);
  border-radius: 4px;
  -webkit-transition: 0.3s;
  transition: 0.3s;
  cursor: pointer;
  white-space: nowrap;
  font-family: "Noto serif JP", sans-serif;
}
.profile__line-btn {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 16px;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: end;
}
@media screen and (max-width: 768px) {
  .profile__line-btn {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    gap: 4px;
  }
}
.profile__line-btn-item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}

/* お知らせ一覧(news-list) */
.news-list {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  background: -webkit-gradient(linear, left top, right bottom, from(#F19308), color-stop(#FED046), to(#F19308));
  background: linear-gradient(to bottom right, #F19308, #FED046, #F19308);
  border-radius: 20px;
  padding: clamp(6px, 1vw, 10px);
  max-width: 1000px;
  margin: 0 auto;
  font-family: "Noto serif JP", sans-serif;
  font-weight: bold;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: clamp(6px, 1.4vw, 10px);
}
@media screen and (max-width: 768px) {
  .news-list {
    border-radius: 8px;
  }
}
.news-list__item {
  background-color: #ffffff;
  border: solid 4px #2A0903;
  border-radius: 10px;
  padding: 1%;
  gap: 1%;
  color: #2A0903;
  -webkit-transition: 0.3s;
  transition: 0.3s;
  -webkit-box-shadow: 0px 4px 3px 0px rgba(0, 0, 0, 0.4);
          box-shadow: 0px 4px 3px 0px rgba(0, 0, 0, 0.4);
  text-align: left;
}
@media screen and (max-width: 768px) {
  .news-list__item {
    border: solid 2px #2A0903;
  }
}
.news-list__time {
  font-size: clamp(12px, 2vw, 18px);
}
.news-list__text {
  text-align: left;
  color: #2A0903;
  line-height: 1.2;
  font-size: clamp(10px, 3vw, 20px);
}
.news-list__title {
  font-size: clamp(12px, 2vw, 18px);
  background-color: #ffffff;
  border: solid 4px #2A0903;
  border-radius: 10px;
  padding: 1%;
  color: #2A0903;
  -webkit-transition: 0.3s;
  transition: 0.3s;
  text-align: center;
}
@media screen and (max-width: 768px) {
  .news-list__title {
    border: solid 2px #2A0903;
  }
}

/* お知らせ詳細(news-view) */
.news-view {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  background: -webkit-gradient(linear, left top, right bottom, from(#F19308), color-stop(#FED046), to(#F19308));
  background: linear-gradient(to bottom right, #F19308, #FED046, #F19308);
  border-radius: 20px;
  padding: clamp(6px, 1vw, 10px);
  max-width: 1000px;
  margin: 0 auto;
  font-family: "Noto serif JP", sans-serif;
  font-weight: bold;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: clamp(6px, 1.4vw, 10px);
  color: #2A0903;
}
@media screen and (max-width: 768px) {
  .news-view {
    border-radius: 8px;
  }
}
.news-view__item {
  background-color: #ffffff;
  border: solid 4px #2A0903;
  border-radius: 10px;
  padding: 1%;
  gap: 1%;
  color: #2A0903;
  -webkit-transition: 0.3s;
  transition: 0.3s;
  text-align: left;
  min-height: 40vh;
}
@media screen and (max-width: 768px) {
  .news-view__item {
    border: solid 2px #2A0903;
  }
}
.news-view__title {
  font-size: clamp(16px, 3vw, 28px);
}
.news-view__time {
  font-size: clamp(12px, 2vw, 18px);
}
.news-view__text {
  text-align: left;
  line-height: 1.4;
  font-size: clamp(12px, 3vw, 16px);
}

.formulation-wrap {
  padding-inline: 2%;
}

/* 無料配当プレゼント(present) */
.present__banner {
  position: relative;
}
.present__banner-btn {
  position: absolute;
  bottom: 17.2%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  width: 60%;
  display: inline-block;
  -webkit-transition: -webkit-transform 0.3s ease;
  transition: -webkit-transform 0.3s ease;
  transition: transform 0.3s ease;
  transition: transform 0.3s ease, -webkit-transform 0.3s ease;
  -webkit-animation: pulse 1.5s infinite ease-in-out;
          animation: pulse 1.5s infinite ease-in-out;
}

.c-content > a {
  width: 100%;
  padding-top: 20px;
  margin-top: 0 !important;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

/* メール画面で先方がテキスト装飾する用のクラス ------------ */
/* ========================================
▼ メール画面で先方がテキスト装飾する用のクラス
======================================== */
.mo-font-large {
  font-size: 24px;
}
@media screen and (max-width: 768px) {
  .mo-font-large {
    font-size: 16px;
  }
}

.mo-font-bold {
  font-weight: 700;
}

.mo-font-red {
  color: red;
}

.mo-font-yellow {
  color: yellow;
}

.mo-font-blue {
  color: blue;
}

.mo-font-pink {
  color: #EC4899;
}

.mo-font-green {
  color: #059669;
}

.mo-font-underLine {
  text-decoration: underline;
}

.mo-font-marker-yellow {
  background: -webkit-gradient(linear, left top, left bottom, color-stop(50%, transparent), color-stop(50%, #ffff00));
  background: linear-gradient(transparent 50%, #ffff00 50%);
}

.mo-font-marker-red {
  background: -webkit-gradient(linear, left top, left bottom, color-stop(50%, transparent), color-stop(50%, rgba(255, 30, 0, 0.5)));
  background: linear-gradient(transparent 50%, rgba(255, 30, 0, 0.5) 50%);
}

.mo-font-marker-blue {
  background: -webkit-gradient(linear, left top, left bottom, color-stop(50%, transparent), color-stop(50%, rgba(0, 0, 225, 0.5)));
  background: linear-gradient(transparent 50%, rgba(0, 0, 225, 0.5) 50%);
}

.mo-anim-flash {
  -webkit-animation: font-flash 1s infinite;
          animation: font-flash 1s infinite;
}

@-webkit-keyframes font-flash {
  0%, 100% {
    color: inherit;
  }
  50% {
    color: red;
  }
}

@keyframes font-flash {
  0%, 100% {
    color: inherit;
  }
  50% {
    color: red;
  }
}
.mo-anim-shake {
  display: inline-block;
  -webkit-animation: shake 0.3s infinite;
          animation: shake 0.3s infinite;
}

@-webkit-keyframes shake {
  0% {
    -webkit-transform: translate(0px, 0px) rotateZ(0deg);
            transform: translate(0px, 0px) rotateZ(0deg);
  }
  25% {
    -webkit-transform: translate(2px, 2px) rotateZ(1deg);
            transform: translate(2px, 2px) rotateZ(1deg);
  }
  50% {
    -webkit-transform: translate(0px, 2px) rotateZ(0deg);
            transform: translate(0px, 2px) rotateZ(0deg);
  }
  75% {
    -webkit-transform: translate(2px, 0px) rotateZ(-1deg);
            transform: translate(2px, 0px) rotateZ(-1deg);
  }
  100% {
    -webkit-transform: translate(0px, 0px) rotateZ(0deg);
            transform: translate(0px, 0px) rotateZ(0deg);
  }
}

@keyframes shake {
  0% {
    -webkit-transform: translate(0px, 0px) rotateZ(0deg);
            transform: translate(0px, 0px) rotateZ(0deg);
  }
  25% {
    -webkit-transform: translate(2px, 2px) rotateZ(1deg);
            transform: translate(2px, 2px) rotateZ(1deg);
  }
  50% {
    -webkit-transform: translate(0px, 2px) rotateZ(0deg);
            transform: translate(0px, 2px) rotateZ(0deg);
  }
  75% {
    -webkit-transform: translate(2px, 0px) rotateZ(-1deg);
            transform: translate(2px, 0px) rotateZ(-1deg);
  }
  100% {
    -webkit-transform: translate(0px, 0px) rotateZ(0deg);
            transform: translate(0px, 0px) rotateZ(0deg);
  }
}
.mo-insert-img {
  display: block;
}
.mo-insert-img img {
  max-width: 600px;
  margin-inline: auto;
  display: block;
}

/*
html img 変換する
src="/files/img/"

css img 変換する
background-image: url(.././img/　　　);




*//*# sourceMappingURL=main.css.map */