<html><head><meta name="color-scheme" content="light dark"></head><body><pre style="word-wrap: break-word; white-space: pre-wrap;">@charset "UTF-8";
/* ==============================================================
*  base
* ============================================================ */
/*! normalize.css v8.0.0 | MIT License | github.com/necolas/normalize.css */
html {
  line-height: 1.15;
  -webkit-text-size-adjust: 100%;
}

body {
  margin: 0;
}

h1 {
  font-size: inherit;
  margin: 0;
}

hr {
  box-sizing: content-box;
  height: 0;
  overflow: visible;
}

pre {
  font-family: monospace, monospace;
  font-size: 1em;
}

a {
  background-color: transparent;
}

abbr[title] {
  border-bottom: none;
  text-decoration: underline;
  -webkit-text-decoration: underline dotted;
          text-decoration: underline dotted;
}

b, strong {
  font-weight: bolder;
}

code, kbd, samp {
  font-family: monospace, monospace;
  font-size: 1em;
}

small {
  font-size: 80%;
}

sub, sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

img {
  border-style: none;
}

button, input, optgroup, select, textarea {
  font-family: inherit;
  font-size: 100%;
  line-height: 1.15;
  margin: 0;
}

button, input {
  overflow: visible;
}

button, select {
  text-transform: none;
}

[type=button], [type=reset], [type=submit], button {
  -webkit-appearance: button;
}

[type=button]::-moz-focus-inner, [type=reset]::-moz-focus-inner, [type=submit]::-moz-focus-inner, button::-moz-focus-inner {
  border-style: none;
  padding: 0;
}

[type=button]:-moz-focusring, [type=reset]:-moz-focusring, [type=submit]:-moz-focusring, button:-moz-focusring {
  outline: 1px dotted ButtonText;
}

fieldset {
  padding: 0.35em 0.75em 0.625em;
}

legend {
  box-sizing: border-box;
  color: inherit;
  display: table;
  max-width: 100%;
  padding: 0;
  white-space: normal;
}

progress {
  vertical-align: baseline;
}

textarea {
  overflow: auto;
}

[type=checkbox], [type=radio] {
  box-sizing: border-box;
  padding: 0;
}

[type=number]::-webkit-inner-spin-button, [type=number]::-webkit-outer-spin-button {
  height: auto;
}

[type=search] {
  -webkit-appearance: textfield;
  outline-offset: -2px;
}

[type=search]::-webkit-search-decoration {
  -webkit-appearance: none;
}

::-webkit-file-upload-button {
  -webkit-appearance: button;
  font: inherit;
}

details {
  display: block;
}

summary {
  display: list-item;
}

template {
  display: none;
}

[hidden] {
  display: none;
}


body {
  word-wrap: break-word;
}

section, main {
  display: block;
}

*, *::before, *::after {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
  outline: none;
}

i, em {
  font-style: normal;
}

table {
  border-collapse: collapse;
}

li {
  list-style: none;
}

img {
  max-width: 100%;
  line-height: 0;
}

* {
  background-repeat: no-repeat;
  background-position: 50% 50%;
  background-size: cover;
}

/* 2.3 form
------------------------------ */
.form {
  width: 100%;
  margin: 0 auto;
}
.form dt {
  margin: 2em 0 0.75em;
}
.form dd {
  margin: 0 0 1em;
}

/* icon--required */
.icon--required {
  position: relative;
}
.icon--required:before {
  position: absolute;
  content: "必須";
  color: #fff;
  font-size: 10px;
  text-align: center;
  line-height: 1;
  padding: 2px 4px;
  margin-left: 4px;
  position: relative;
  background: #FF5252;
  border-radius: 2px;
  letter-spacing: 0.01em;
}

/* input */
input[type=text],
input[type=tel],
input[type=email],
input[type=password],
input[type=number],
input[type=time],
input[type=date] {
  -webkit-appearance: none;
  display: inline-block;
  width: 100%;
  max-width: 100%;
  box-shadow: none;
  border-radius: 0.3em;
  border: 1px solid rgba(0, 0, 0, 0.4);
  padding: 1em 0.5em;
  background: #fff;
  color: #000;
}
@media screen and (min-width: 961px) {
  input[type=text],
  input[type=tel],
  input[type=email],
  input[type=password],
  input[type=number],
  input[type=time],
  input[type=date] {
    font-family: "Noto Sans JP", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic Pro", "游ゴシック体", YuGothic, "Yu Gothic Medium", "メイリオ", "Meiryo", "ＭＳ Ｐゴシック", "Arial", sans-serif;
    font-weight: 400;
    font-size: 1.6rem;
    line-break: strict;
  }
}
@media screen and (min-width: 1px) and (max-width: 960px) {
  input[type=text],
  input[type=tel],
  input[type=email],
  input[type=password],
  input[type=number],
  input[type=time],
  input[type=date] {
    font-family: "Noto Sans JP", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic Pro", "游ゴシック体", YuGothic, "Yu Gothic Medium", "メイリオ", "Meiryo", "ＭＳ Ｐゴシック", "Arial", sans-serif;
    font-weight: 400;
    font-size: 1.4rem;
    line-break: strict;
  }
}
input[type=text]:focus,
input[type=tel]:focus,
input[type=email]:focus,
input[type=password]:focus,
input[type=number]:focus,
input[type=time]:focus,
input[type=date]:focus {
  border-color: inherit;
}
input[type=text].form__error,
input[type=tel].form__error,
input[type=email].form__error,
input[type=password].form__error,
input[type=number].form__error,
input[type=time].form__error,
input[type=date].form__error {
  background: #fff0ea;
  color: #FF5252;
  border-color: #FF5252;
}
input[type=text].form__error:focus,
input[type=tel].form__error:focus,
input[type=email].form__error:focus,
input[type=password].form__error:focus,
input[type=number].form__error:focus,
input[type=time].form__error:focus,
input[type=date].form__error:focus {
  background: transparent;
  color: inherit;
  border-color: inherit;
}
input[type=text][disabled],
input[type=tel][disabled],
input[type=email][disabled],
input[type=password][disabled],
input[type=number][disabled],
input[type=time][disabled],
input[type=date][disabled] {
  background: #ddd;
  border: none;
  opacity: 0.5;
}

.input--half {
  width: 50% !important;
}

.input--quarter {
  width: 25% !important;
}

/* textarea */
textarea {
  -webkit-appearance: none;
  display: inline-block;
  width: 100%;
  max-width: 100%;
  box-shadow: none;
  border-radius: 0.3em;
  border: 1px solid rgba(0, 0, 0, 0.4);
  padding: 1em 0.5em;
  height: auto;
  line-height: 1.6;
}
@media screen and (min-width: 961px) {
  textarea {
    font-family: "Noto Sans JP", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic Pro", "游ゴシック体", YuGothic, "Yu Gothic Medium", "メイリオ", "Meiryo", "ＭＳ Ｐゴシック", "Arial", sans-serif;
    font-weight: 400;
    font-size: 1.6rem;
    line-break: strict;
  }
}
@media screen and (min-width: 1px) and (max-width: 960px) {
  textarea {
    font-family: "Noto Sans JP", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic Pro", "游ゴシック体", YuGothic, "Yu Gothic Medium", "メイリオ", "Meiryo", "ＭＳ Ｐゴシック", "Arial", sans-serif;
    font-weight: 400;
    font-size: 1.4rem;
    line-break: strict;
  }
}
textarea:focus {
  border-color: inherit;
}
textarea.form__error {
  background: #fff0ea;
  color: #FF5252;
  border-color: #FF5252;
}
textarea.form__error:focus {
  background: transparent;
  color: inherit;
  border-color: inherit;
}
textarea[disabled] {
  background: #ddd;
  border: none;
  opacity: 0.5;
}

/* select */
.form__select {
  display: inline-block;
  position: relative;
}
.form__select::after {
  content: "";
  display: inline-block;
  width: 0.5em;
  height: 0.5em;
  border: 1px solid #BA2425;
  border-top: none;
  border-right: none;
  transform: rotate(-135deg);
  transition: 0.3s;
  vertical-align: middle;
}
.form__select:after {
  position: absolute;
  top: 50%;
  right: 0.5em;
  transform: translateY(-50%) rotate(-45deg);
}
.form__select select {
  -webkit-appearance: none;
  display: inline-block;
  width: 100%;
  max-width: 100%;
  box-shadow: none;
  border-radius: 0.3em;
  border: 1px solid rgba(0, 0, 0, 0.4);
  padding: 1em 0.5em;
  padding-right: 2.5em;
}
@media screen and (min-width: 961px) {
  .form__select select {
    font-family: "Noto Sans JP", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic Pro", "游ゴシック体", YuGothic, "Yu Gothic Medium", "メイリオ", "Meiryo", "ＭＳ Ｐゴシック", "Arial", sans-serif;
    font-weight: 400;
    font-size: 1.6rem;
    line-break: strict;
  }
}
@media screen and (min-width: 1px) and (max-width: 960px) {
  .form__select select {
    font-family: "Noto Sans JP", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic Pro", "游ゴシック体", YuGothic, "Yu Gothic Medium", "メイリオ", "Meiryo", "ＭＳ Ｐゴシック", "Arial", sans-serif;
    font-weight: 400;
    font-size: 1.4rem;
    line-break: strict;
  }
}
.form__select select:focus {
  border-color: inherit;
}
.form__select select.form__error {
  background: #fff0ea;
  color: #FF5252;
  border-color: #FF5252;
}
.form__select select.form__error:focus {
  background: transparent;
  color: inherit;
  border-color: inherit;
}
.form__select select[disabled] {
  background: #ddd;
  border: none;
  opacity: 0.5;
}

.form__checkbox label p {
  display: inline-block;
  padding: 0.5em;
  position: relative;
  cursor: pointer;
  padding-left: 1.8em;
}
.form__checkbox input[type=checkbox],
.form__checkbox input[type=radio],
.form__checkbox input[type=file] {
  -webkit-appearance: none;
  -moz-appearance: none;
       appearance: none;
  width: 0;
  height: 0;
  opacity: 0;
  position: absolute;
}
.form__checkbox.form__error {
  color: #FF5252;
}
.form__checkbox label p::before {
  content: "";
  display: inline-block;
  width: 1.2em;
  height: 1.2em;
  border-radius: 0.3em;
  border: 1px solid #000000;
  margin: -0.6em 0 0;
  position: absolute;
  top: 50%;
  left: 0;
}
.form__checkbox label p::after {
  content: "";
  display: inline-block;
  width: 0.8em;
  height: 0.4em;
  border: 2px solid rgba(0, 0, 0, 0.4);
  border-top: none;
  border-right: none;
  margin: -0.25em 0 0;
  position: absolute;
  top: 70%;
  left: 0.2em;
  transform: rotate(-45deg);
  opacity: 0;
}
.form__checkbox :checked ~ p::after {
  border-color: black;
  top: 50%;
  opacity: 1;
}

.form__radio label p {
  display: inline-block;
  padding: 0.5em;
  position: relative;
  cursor: pointer;
  padding-left: 1.8em;
}
.form__radio input[type=checkbox],
.form__radio input[type=radio],
.form__radio input[type=file] {
  -webkit-appearance: none;
  -moz-appearance: none;
       appearance: none;
  width: 0;
  height: 0;
  opacity: 0;
  position: absolute;
}
.form__radio.form__error {
  color: #FF5252;
}
.form__radio label p::before {
  content: "";
  display: inline-block;
  width: 1.2em;
  height: 1.2em;
  border-radius: 50%;
  border: 1px solid rgba(0, 0, 0, 0.4);
  margin: -0.6em 0 0;
  position: absolute;
  top: 50%;
  left: 0;
}
.form__radio :checked ~ p::before {
  border-color: #BA2425;
  border-width: 0.3em;
}

.form__toggle label p {
  display: inline-block;
  padding: 0.5em;
  position: relative;
  cursor: pointer;
  padding-left: 1.8em;
}
.form__toggle input[type=checkbox],
.form__toggle input[type=radio],
.form__toggle input[type=file] {
  -webkit-appearance: none;
  -moz-appearance: none;
       appearance: none;
  width: 0;
  height: 0;
  opacity: 0;
  position: absolute;
}
.form__toggle.form__error {
  color: #FF5252;
}
.form__toggle label p {
  padding-left: 0;
  position: relative;
}

/* ==============================================================
*  contents
* ============================================================ */
/* common.scss
============================== */
html, body {
  height: 100%;
}

/*Adobe Fonts ちらつき対策用CSS*/
html {
  opacity: 0;
  transition: opacity 0.1s;
}

html.wf-active,
html.loading-delay {
  opacity: 1;
}

/*Adobe Fonts ちらつき対策用CSSここまで*/
html {
  scroll-behavior: smooth;
  font-size: 62.5%;
}

body {
  position: relative;
  color: #000000;
  background: #EFEFEF;
  background-image: url("/static/issuecommune/fanclub/common/paper-bg-01.webp");
}
@media screen and (min-width: 961px) {
  body {
    font-family: "Noto Sans JP", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic Pro", "游ゴシック体", YuGothic, "Yu Gothic Medium", "メイリオ", "Meiryo", "ＭＳ Ｐゴシック", "Arial", sans-serif;
    font-weight: 400;
    font-size: 1.6rem;
    line-break: strict;
  }
}
@media screen and (min-width: 1px) and (max-width: 960px) {
  body {
    font-family: "Noto Sans JP", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic Pro", "游ゴシック体", YuGothic, "Yu Gothic Medium", "メイリオ", "Meiryo", "ＭＳ Ｐゴシック", "Arial", sans-serif;
    font-weight: 400;
    font-size: 1.4rem;
    line-break: strict;
  }
}

.wrap {
  min-height: 100%;
  position: relative;
  overflow-x: hidden;
}

a {
  color: inherit;
  text-decoration: none;
}

button {
  background-color: inherit;
}

h2 {
  font-size: inherit;
  margin: 0;
}

img {
  width: 100%;
  max-width: 100%;
  background-repeat: no-repeat;
  background-position: 50% 50%;
  background-size: cover;
  line-height: 0;
  display: block;
  pointer-events: none;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -moz-user-select: none;
  user-select: none;
}

.clearfix::after {
  content: "";
  display: block;
  clear: both;
}

::-moz-selection {
  background: #000;
  color: #BA2425;
}

::selection {
  background: #000;
  color: #BA2425;
}

::-moz-selection {
  background: #000000;
  color: #BA2425;
}

.svg-parts {
  display: none;
}

@keyframes fade {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@keyframes kv-fade {
  0% {
    transform: translateY(-20px);
    opacity: 0;
  }
  100% {
    transform: translateY(0);
    opacity: 1;
  }
}
.txt--basic {
  margin: 0 0 1em;
}

.txt--sub {
  font-size: 0.85em;
  line-height: 1.8em;
}

.text--link {
  text-decoration: underline;
}

.txt--indent {
  padding-left: 1em;
  text-indent: -1em;
}

.right {
  text-align: right;
}

.center {
  text-align: center;
}

.bold {
  font-weight: bold;
}

.italic {
  font-style: italic;
}

span.br {
  display: inline-block;
}

#popup-join-bg {
  display: none;
  position: fixed;
  width: 100%;
  height: 100vh;
  top: 0;
  left: 0;
  background-color: rgba(51, 51, 51, 0.3);
  -webkit-backdrop-filter: blur(20px);
          backdrop-filter: blur(20px);
  z-index: 10000;
}

#popup-join {
  display: none;
  position: fixed;
  max-height: 90vh;
  max-height: 90svh;
  width: min(90%, 700px);
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: 10002;
  letter-spacing: 0.04em;
}
#popup-join #popup-join-close {
  position: relative;
  width: 32px;
  height: 32px;
  margin: 0 auto 1em;
  cursor: pointer;
}
#popup-join #popup-join-close::before, #popup-join #popup-join-close::after {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  width: 100%;
  height: 4px;
  margin: auto;
  background-color: #fff;
  transform: rotate(45deg);
}
#popup-join #popup-join-close::after {
  transform: rotate(-45deg);
}
#popup-join #popup-join-close span {
  display: none;
}
#popup-join .box {
  padding: 30px;
  background-color: #fff;
  border: 1px solid #000000;
  overflow-y: auto;
  max-height: 80vh;
  max-height: 80svh;
  scrollbar-width: none;
  -ms-overflow-style: none;
  color: #000000;
  text-align: center;
  font-size: 1.1rem;
}
#popup-join .box &gt; .tit {
  color: #ff5252;
  margin-bottom: 1em;
  font-size: 1.4rem;
}
#popup-join .box &gt; .tit i {
  margin-right: 8px;
}
#popup-join .box .btn--attention a {
  position: relative;
  margin: 1em auto;
  text-align: left;
  background-color: transparent;
  border: 1px solid #EFEFEF;
  display: block;
  font-size: 1.1rem;
  width: 100%;
  padding: 16px 32px 16px 16px;
  border-radius: 4px;
  line-height: 1.6;
}
#popup-join .box .btn--attention a::after {
  content: "";
  position: absolute;
  display: inline-block;
  width: 8px;
  height: 8px;
  border: 0;
  border-color: #d1d5e8;
  border-top: solid 2px;
  border-right: solid 2px;
  top: 50%;
  transform: rotate(45deg) translateY(-50%);
  right: 1.6em;
  vertical-align: middle;
}
#popup-join .box .btn--attention a strong {
  font-weight: bold;
  display: block;
}
#popup-join .box &gt; .txt {
  font-size: 1.1rem;
  margin: 1.5em auto;
}
#popup-join .box &gt; .txt a {
  text-decoration: underline;
  transition: all 0.2s 0s ease;
}
#popup-join .box .list--guide {
  display: flex;
  justify-content: space-between;
  border-top: 1px solid #EFEFEF;
  padding-top: 1em;
  -moz-column-gap: 0.8em;
       column-gap: 0.8em;
}
#popup-join .box .list--guide li {
  width: 50%;
  padding: 1.5em;
  border: 1px solid #EFEFEF;
  border-radius: 8px;
}
#popup-join .box .list--guide li a {
  display: block;
}
#popup-join .box .list--guide li a span {
  display: block;
  margin: 0 auto 1em;
  width: min(20%, 30px);
}

.list--join {
  display: flex;
  gap: 0.8em;
}
.list--join li {
  background-color: #EFEFEF;
  padding: 1.5em;
}
.list--join .tit {
  font-size: 1.4rem;
  font-weight: bold;
  letter-spacing: 0.04em;
  margin-bottom: 1em;
}
.list--join .btn--main,
.list--join .btn {
  margin: 0.4em auto;
  width: 100%;
  color: #fff;
  background-color: #BA2425;
  line-height: 1.2;
  font-size: 1.1rem;
  border-radius: 50px;
}
.list--join .btn--main span,
.list--join .btn span {
  font-size: 80%;
}
.list--join .btn--main.btn--overseas,
.list--join .btn.btn--overseas {
  background-color: #F44D4D;
  margin-top: 10px;
}
.list--join .btn--main.btn--overseas span,
.list--join .btn.btn--overseas span {
  letter-spacing: 0.02em;
}

.header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  position: fixed;
  top: 0;
  left: 0;
  width: 100vw;
  z-index: 10000;
}
.header.active {
  background: rgba(239, 239, 239, 0.3);
  -webkit-backdrop-filter: blur(10px);
  backdrop-filter: blur(10px);
}
.header .header-inner {
  display: flex;
  align-items: center;
}
.header ul[class^=list--nav] {
  font-family: adobe-caslon-pro, serif;
  font-weight: bold;
}
.header .list--nav__login li &gt; * {
  color: #BA2425;
}
.header .list--nav__login li button {
  font-weight: bold;
  background-color: transparent;
}
.header .langBar {
  border: 1px solid #000000;
  border-radius: 20px;
  position: relative;
  display: block;
}
.header .langBar .langSelector {
  position: relative;
}
.header .langBar .esb-displayer {
  position: relative;
  cursor: pointer;
  line-height: normal;
}
.header .langBar .esb-displayer::before {
  content: "";
  position: absolute;
  display: inline-block;
  margin-right: 10px;
  width: 1em;
  height: 1em;
  top: 50%;
  transform: translateY(-50%);
  background-image: url("/static/issuecommune/fanclub/lang/icon_lang.png");
  background-repeat: no-repeat;
  background-size: contain;
}
.header .langBar .esb-dropdown {
  display: none;
  margin-top: 5px;
  border: 1px solid #000000;
  border-radius: 4px;
  background: #fff;
  overflow: hidden;
  cursor: pointer;
  position: absolute;
}
.header .langBar .esb-dropdown .esb-item {
  padding: 5px 10px;
}
.header .langBar .esb-dropdown .esb-item + .esb-item {
  border-top: 1px solid #000000;
}
.header .langBar .esb-dropdown #lang--item__zh-cn {
  display: none;
}

.delighter {
  opacity: 0;
  transition: all 0.5s;
}
.delighter.started {
  opacity: 1;
}

.block--member li.delighter,
.section--price.delighter,
.section--attention.delighter {
  transform: translateY(80px);
}
.block--member li.delighter.started,
.section--price.delighter.started,
.section--attention.delighter.started {
  transform: translateY(0);
}

.service-decoration.delighter.started.ribbon-top {
  animation: fade 0.5s ease 0.3s 1 normal forwards;
}
.service-decoration.delighter.started.ribbon-bottom {
  animation: fade 0.5s ease 0.5s 1 normal forwards;
}
.service-decoration.delighter.started.flower {
  animation: fade 0.5s ease 0.5s 1 normal forwards;
}

.attention-decoration.delighter.started {
  animation: fade 0.5s ease 0.3s 1 normal forwards;
}

button {
  border: none;
  cursor: pointer;
}

.btn {
  display: block;
  padding: 20px;
  text-align: center;
  font-weight: bold;
  border-radius: 999px;
}

.primary-btn,
.btn--main {
  background-color: #BA2425;
  color: #fff;
}

.secondary-btn,
.btn--sub {
  border: 1px solid #BA2425;
  color: #BA2425;
}

.tit-jp {
  font-family: "fot-chiaro-std", sans-serif;
  font-weight: 700;
  font-style: normal;
}

.sub-tit,
.tit {
  text-align: center;
  font-weight: bold;
}

.list--attention li {
  line-height: 1.6;
}
.list--attention li:before {
  content: "・";
}
.list--attention li a {
  text-decoration: underline;
}
.list--attention li + li {
  margin-top: 0.5em;
}

.section--top {
  width: 100vw;
  min-height: 100vh;
  position: relative;
}
.section--top .kv-ribbon {
  position: absolute;
  z-index: 100;
  opacity: 0;
}
.section--top .kv-ribbon.top {
  animation: fade 0.7s ease 0.5s 1 normal forwards;
}
.section--top .kv-ribbon.bottom {
  animation: fade 0.7s ease 0.8s 1 normal forwards;
}
.section--top .block--lead .catch {
  font-family: dnp-shuei-gothic-gin-std, sans-serif;
  font-weight: 600;
  font-style: normal;
  line-height: 1.4;
  font-feature-settings: "palt";
  letter-spacing: 0.05em;
}
.section--top .block--lead .catch span {
  color: #BA2425;
}
.section--top .block--lead .txt-link {
  position: relative;
  display: block;
  margin: auto;
  padding-right: 20px;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  text-align: center;
  font-weight: bold;
}
.section--top .block--lead .txt-link::before, .section--top .block--lead .txt-link:after {
  content: "";
  position: absolute;
  top: calc(50% - 0.5px);
  right: 0;
  width: 10px;
  height: 1px;
  border-radius: 9999px;
  background-color: #000000;
  transform-origin: calc(100% - 0.5px) 50%;
}
.section--top .block--lead .txt-link::before {
  transform: rotate(45deg);
}
.section--top .block--lead .txt-link::after {
  transform: rotate(-45deg);
}
.section--top .block--keyvisual .kv-slide {
  padding: 10px;
  border: 1px dashed #000000;
  border-radius: 50%;
}
.section--top .block--keyvisual .kv-slide-inner {
  background-color: rgba(186, 36, 37, 0.2);
  width: 100%;
  height: 100%;
  border-radius: 50%;
  position: relative;
}
.section--top .block--keyvisual .kv-message {
  width: 100%;
  height: 100%;
}
.section--top .block--keyvisual .kv-message .swiper-slide .container {
  opacity: 0;
}
.section--top .block--keyvisual .kv-message .swiper-slide-active .container.artist {
  animation: kv-fade 0.5s ease 0.3s 1 normal forwards;
}
.section--top .block--keyvisual .kv-message .swiper-slide-active .container.user {
  animation: kv-fade 0.5s ease 0.6s 1 normal forwards;
}
.section--top .block--keyvisual .kv-message .message {
  position: absolute;
  width: 100%;
  left: 50%;
  transform: translateX(-50%);
  z-index: 50;
}
.section--top .block--keyvisual .kv-message .message .container .comment-box {
  font-weight: bold;
}
.section--top .block--keyvisual .kv-message .message .container .comment-box .comment {
  box-shadow: 0px 8px 20px rgba(127, 91, 85, 0.4);
  line-height: 1.7;
}
.section--top .block--keyvisual .kv-message .message .container.artist {
  display: flex;
  align-items: flex-start;
}
.section--top .block--keyvisual .kv-message .message .container.artist .icon {
  border-radius: 50%;
  overflow: hidden;
  background-color: #F6F6F6;
}
.section--top .block--keyvisual .kv-message .message .container.artist .comment-box .comment {
  background-color: #F6F6F6;
  border-radius: 0 10px 10px 10px;
}
.section--top .block--keyvisual .kv-message .message .container.user .comment-box .comment {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  margin-left: auto;
  color: #fff;
  background-color: #BA2425;
  border-radius: 10px 0px 10px 10px;
}
.section--top .block--keyvisual .kv-message .slide-back {
  position: absolute;
  width: 100%;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
  overflow: hidden;
  border-radius: 0 0 50vw 50vw;
}
.section--top .block--keyvisual .kv-message .slide-back img {
  margin: auto;
}

.block--member .member-list {
  display: flex;
  justify-content: space-between;
}
.block--member .member-list li {
  aspect-ratio: 1/1;
  position: relative;
}
.block--member .member-list li a,
.block--member .member-list li button {
  display: block;
  border: 1px dashed #000000;
  border-radius: 10px;
  overflow: hidden;
  background-color: transparent;
  color: #000000;
}
.block--member .member-list li.disabled {
  pointer-events: none;
}
.block--member .member-list img {
  border-radius: 10px;
}
.block--member .member-list .member-name {
  position: absolute;
  display: flex;
  align-items: center;
  background-color: #fff;
  font-family: adobe-caslon-pro, serif;
  font-weight: bold;
  transform: rotate(-10deg);
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.5);
}
.block--member .member-list .member-name::after {
  content: "";
  position: absolute;
  display: block;
  width: 1em;
  height: 1em;
  top: calc((100% - 1em) / 2);
  background-image: url("/static/issuecommune/fanclub/common/parts_symbol_commune.png");
  background-repeat: no-repeat;
  background-size: contain;
}
.block--member .member-list .comingsoon {
  position: absolute;
  top: 1px;
  right: 1px;
  padding: 0.6em 0.8em;
  color: #BA2425;
  background-color: #DBD0D0;
  border-radius: 0 10px 0 10px;
}

.section--service {
  position: relative;
}
.section--service .service-decoration {
  opacity: 0;
  position: absolute;
}
.section--service .block--lead .section-tit {
  line-height: 1.5;
}
.section--service .block--lead .lead-txt {
  margin-top: 25px;
}
.section--service .block--slide {
  border: 1px dashed #000000;
  position: relative;
  border-radius: 50vw 50vw 0 0;
  padding: 10px;
}
.section--service .block--slide .slide-inner {
  background-color: #F0E7E7;
  width: 100%;
  height: 100%;
  border-radius: 50vw 50vw 0 0;
  border: 1px solid #000000;
  overflow: hidden;
}
.section--service .block--slide .swiper-wrapper {
  height: 100%;
}
.section--service .block--slide .swiper-slide {
  position: relative;
  height: 100%;
}
.section--service .block--slide .swiper-slide .service-block {
  position: absolute;
  width: 100%;
  bottom: 0;
  left: 0;
}
.section--service .block--slide .swiper-slide .service-txt {
  text-align: center;
  line-height: 1.4;
}
.section--service .block--slide [class^=swiper-button-] {
  background-color: #fff;
  border-radius: 50%;
  top: 58%;
}
.section--service .block--slide [class^=swiper-button-]:after {
  content: "";
  display: inline-block;
  transform: rotate(45deg);
}
.section--service .block--slide .swiper-button-next::after {
  border-top: 2px solid #BA2425;
  border-right: 2px solid #BA2425;
}
.section--service .block--slide .swiper-button-prev::after {
  border-bottom: 2px solid #BA2425;
  border-left: 2px solid #BA2425;
}
.section--service .block--slide .swiper-button-disabled {
  opacity: 0;
}
.section--service .btn {
  margin-top: 40px;
}

.section--price {
  position: relative;
}
.section--price .price-wrap {
  border: 1px solid #000000;
}
.section--price .block--lead .section-tit {
  border-bottom: 1px dashed #000000;
  font-weight: normal;
}
.section--price .block--lead .section-tit span {
  font-weight: bolder;
  font-family: adobe-caslon-pro, serif;
}
.section--price .block--detail .txt-price {
  margin-top: 8px;
  font-weight: bolder;
  font-family: adobe-caslon-pro, serif;
}
.section--price .block--detail .btn {
  width: 100%;
}
.section--price .block--detail .btn.secondary-btn {
  font-size: max(0.8vw, 12px);
  padding: 1em;
}
.section--price .block--detail .btn.secondary-btn i {
  margin-right: 8px;
}
.section--price .block--detail .btn.primary-btn {
  margin-top: 10px;
  padding: 0.85em;
}

.section--attention {
  position: relative;
}
.section--attention .attention-decoration {
  opacity: 0;
  position: absolute;
}
.section--attention .attention-content {
  border: 1px solid #BA2425;
  background-color: rgba(240, 231, 231, 0.3);
}
.section--attention .attention-content .tit-wrap {
  border-bottom: 1px solid #BA2425;
}
.section--attention .attention-content .tit-wrap .section-tit {
  color: #BA2425;
  text-align: center;
  font-weight: bold;
  font-family: adobe-caslon-pro, serif;
}
.section--attention .attention-content .tit-wrap .tit-caption {
  text-align: center;
}
.section--attention .attention-content .banner--wrap {
  display: flex;
  justify-content: center;
}
.section--attention .attention-content .banner--wrap &gt; * {
  border: 1px solid #000000;
}
.section--attention .attention-content.other {
  position: relative;
}

.footer .footer-list {
  font-size: 12px;
}
.footer .footer-list li {
  position: relative;
  padding-left: 13px;
}
.footer .footer-list li::before {
  content: "";
  position: absolute;
  display: block;
  width: 5px;
  height: 5px;
  background-color: #BA2425;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
  border-radius: 50%;
}
.footer .footer-list li + li {
  margin-top: 20px;
}
.footer .footer-list button {
  color: #000000;
}
.footer .official-link {
  width: 180px;
}
.footer .official-link img {
  border: 1px solid #000000;
  width: 100%;
}
.footer .copyright {
  font-size: 11px;
  font-family: adobe-caslon-pro, serif;
}

body:not(.page--home) {
  line-height: 1.6em;
}
body:not(.page--home) .section-tit {
  position: relative;
  text-align: center;
  line-height: 1.4;
  font-family: "fot-chiaro-std", sans-serif;
  font-weight: 700;
  font-style: normal;
}
body:not(.page--home) .section-tit span {
  display: block;
  font-weight: 700;
  line-height: 1.4;
  letter-spacing: 0.1em;
}
body:not(.page--home) .page--guide .section-tit span.icon {
  display: inline-block;
  vertical-align: middle;
  margin-right: 0.2em;
  width: 1.4em;
  height: 1.4em;
}
@media screen and (min-width: 1px) and (max-width: 960px) {
  body:not(.page--home) .page--guide .section-tit span.icon {
    width: 2em;
    height: 2em;
  }
}
body:not(.page--home) .page--error .section-tit {
  line-height: 1.3;
  margin-bottom: 1em;
}
body:not(.page--home) .footer {
  position: -webkit-sticky;
  position: sticky;
  top: 100vh;
}
body:not(.page--home) .footer .support-link,
body:not(.page--home) .footer .official-link a {
  display: none;
}

.section--detail.support {
  line-height: 1.6;
}
.section--detail.support .support-tit_sub {
  font-size: 1.4rem;
  padding-bottom: 1em;
  margin-bottom: 2em;
  border: 1px solid #000000;
}
.section--detail.support .txt {
  margin-bottom: 2em;
}
.section--detail.support dl:not(:last-of-type) {
  margin-bottom: 3em;
}
.section--detail.support dt {
  font-weight: bold;
  margin-bottom: 0.5em;
}
.section--detail.support table {
  width: 100%;
  border: 1px solid #000000;
}
.section--detail.support table th {
  width: 160px;
  padding: 1em 0;
  text-align: center;
  font-weight: bold;
  border: 1px solid #000000;
}
.section--detail.support table td {
  padding: 20px;
  text-align: left;
  border: 1px solid #000000;
}
@media screen and (min-width: 1px) and (max-width: 960px) {
  .section--detail.support table th, .section--detail.support table td {
    padding: 0.8em;
    font-size: 1.2rem;
  }
  .section--detail.support table th {
    width: 100px;
  }
}
.section--detail.support .list--support a {
  text-decoration: underline;
}
.section--detail.support .list--support dt {
  padding-bottom: 0.5em;
  margin-bottom: 1.6em;
  border-bottom: 1px solid #999;
}
.section--detail.support .list--support dd {
  margin-bottom: 3em;
}
.section--detail.support .list--terms {
  margin-top: 0.5em;
}
.section--detail.support ol.list--terms {
  padding-left: 1.5em;
}
.section--detail.support ol.list--terms li {
  list-style-type: decimal;
  margin-bottom: 0.5em;
}
.section--detail.support ol.list--terms.parentheses {
  padding-left: 0;
}
.section--detail.support ol.list--terms.parentheses &gt; li {
  list-style-type: none;
  counter-increment: cnt;
}
.section--detail.support ol.list--terms.parentheses &gt; li::before {
  content: "(" counter(cnt) ") ";
}
.section--detail.support ol.list--terms.circle {
  padding-left: 0em;
}
.section--detail.support ol.list--terms.circle.txt--indent {
  padding-left: 1em;
}
.section--detail.support ol.list--terms.circle &gt; li {
  list-style: none;
  list-style-type: none;
  counter-increment: none;
}

.section--detail.page--guide .txt--basic {
  margin-bottom: 1em;
}
.section--detail.page--guide .label--step {
  display: inline-block;
  font-family: adobe-caslon-pro, serif;
  color: #fff;
  background-color: #BA2425;
  border-radius: 9999px;
  padding: 8px 1.6em 2px;
  font-size: 1.8rem;
}
.section--detail.page--guide .block--step__index {
  margin-top: 6em;
  margin-bottom: 4em;
}
.section--detail.page--guide .block--step__index .list--step__index {
  display: flex;
  gap: 1em;
}
.section--detail.page--guide .block--step__index .list--step__index li a {
  display: block;
  position: relative;
  font-weight: bold;
  color: #BA2425;
  background-color: rgba(240, 231, 231, 0.3);
  border: 1px solid #BA2425;
  border-radius: 999px;
}
.section--detail.page--guide .block--step .list--step &gt; li {
  padding-top: 2em;
  margin: 2em 0 0;
}
.section--detail.page--guide .block--step .list--step &gt; li &gt; .inner {
  background-color: #fff;
  padding: 2em;
  border: 1px solid #000000;
}
.section--detail.page--guide .block--step .list--step &gt; li .block-tit {
  background-image: linear-gradient(to right, #000000 2px, transparent 2px);
  background-size: 6px 2px;
  background-repeat: repeat-x;
  background-position: bottom;
  padding-bottom: 1.6em;
  margin-bottom: 2em;
  text-align: center;
}
.section--detail.page--guide .block--step .list--step &gt; li .block-tit .label--step {
  margin-bottom: 1em;
}
.section--detail.page--guide .block--step .list--step &gt; li .block-tit .tit {
  color: #000000;
}
@media screen and (min-width: 1px) and (max-width: 960px) {
  .section--detail.page--guide .block--step .list--step &gt; li .block-tit .tit {
    font-size: 1.8rem;
  }
}
.section--detail.page--guide .block--step .list--step &gt; li .block--btn {
  text-align: center;
}
.section--detail.page--guide .block--step .list--step &gt; li .block--btn .btn {
  margin: 0.5em auto;
}
.section--detail.page--guide .block--step .list--step &gt; li .block--btn .btn span {
  font-size: 0.8em;
  margin-top: 2px;
}
.section--detail.page--guide .block--step .list--step &gt; li .inner-txt .tit {
  margin-bottom: 1em;
}
.section--detail.page--guide .block--step .list--step &gt; li .inner-txt .tit.label {
  padding: 0.6em;
  background-color: #F0E7E7;
}
.section--detail.page--guide .block--step .list--step &gt; li .inner-txt .ph {
  margin-bottom: 2em;
}
.section--detail.page--guide .block--step .list--step &gt; li .box {
  background-color: #EFEFEF;
}
.section--detail.page--guide .block--step .list--step &gt; li .list--flow li {
  padding-left: 1.5em;
  list-style-type: decimal;
  margin-bottom: 0.5em;
}
.section--detail.page--guide .block--step .list--step &gt; li .box {
  margin: 1em 0;
  padding: 1em;
}
.section--detail.page--guide .block--step .list--step &gt; li .box .icon {
  width: min(20%, 100px);
  margin: 0 auto 1em;
  border-radius: 10px;
  overflow: hidden;
}
.section--detail.page--guide .block--step .list--step &gt; li .box .list--app {
  width: min(100%, 400px);
  margin: 1em auto 0;
  display: flex;
  justify-content: center;
  gap: 1em;
}
.section--detail.page--guide .block--step .list--step &gt; li .box .list--app a {
  display: block;
}
.section--detail.page--guide .block--step .list--step &gt; li .box .list--app img {
  width: auto;
  height: 40px;
  -o-object-fit: cover;
     object-fit: cover;
  vertical-align: bottom;
}
@media screen and (min-width: 961px) {
  .section--detail.page--guide .block--step .list--step &gt; li .box .list--app a:hover {
    opacity: 0.5;
  }
}
.section--detail.page--guide .block--step .list--step &gt; li .flex {
  display: flex;
  gap: 1em;
  margin: 2em 0;
}
.section--detail.page--guide .block--step .list--step &gt; li .flex .ph {
  margin-bottom: 0;
}
@media screen and (min-width: 961px) {
  .section--detail.page--guide .block--step .list--step &gt; li .flex {
    justify-content: space-between;
    align-items: center;
  }
  .section--detail.page--guide .block--step .list--step &gt; li .flex .ph {
    width: 50%;
  }
  .section--detail.page--guide .block--step .list--step &gt; li .flex .detail {
    width: 50%;
  }
}
@media screen and (min-width: 1px) and (max-width: 960px) {
  .section--detail.page--guide .block--step .list--step &gt; li .flex {
    flex-direction: column-reverse;
  }
  .section--detail.page--guide .block--step .list--step &gt; li .flex .ph {
    width: 80%;
    margin: 0 auto;
  }
}
@media screen and (min-width: 961px) {
  .section--detail.page--guide .block--step .list--step &gt; li .inner-txt .tit {
    font-size: 1.6rem;
  }
}
@media screen and (min-width: 1px) and (max-width: 960px) {
  .section--detail.page--guide .block--step .list--step &gt; li &gt; .inner {
    padding: 1.6em;
  }
}
.section--detail.page--guide .block--step__ph {
  margin-top: 2em;
  position: relative;
  overflow: hidden;
}
.section--detail.page--guide .block--step__ph .list--step__ph .ph {
  margin-bottom: 0 !important;
}
.section--detail.page--guide .block--step__ph .list--step__ph li img {
  width: min(64%, 300px);
  margin: 0 auto;
}
.section--detail.page--guide .block--step__ph .swiper-pagination {
  padding-top: 1em;
  position: relative;
}
.section--detail.page--guide .block--step__ph .swiper-pagination .swiper-pagination-bullet {
  background: transparent;
  border: 1px solid #BA2425;
  opacity: unset;
}
.section--detail.page--guide .block--step__ph .swiper-pagination .swiper-pagination-bullet-active {
  background: #BA2425;
}
.section--detail.page--guide .block--step__ph .swiper-horizontal &gt; .swiper-pagination-bullets, .section--detail.page--guide .block--step__ph .swiper-pagination-bullets.swiper-pagination-horizontal {
  bottom: 0;
}
.section--detail.page--guide .block--step__ph .swiper-button-wrapper {
  margin: 0 auto;
  display: flex;
  justify-content: space-between;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: 10;
}
.section--detail.page--guide .block--step__ph .swiper-button-wrapper [class^=swiper-button-] {
  position: inherit;
  background-color: #fff;
  border-radius: 50%;
  border: 1px solid #BA2425;
}
.section--detail.page--guide .block--step__ph .swiper-button-wrapper [class^=swiper-button-]:after {
  content: "";
  display: inline-block;
  transform: rotate(45deg);
}
.section--detail.page--guide .block--step__ph .swiper-button-wrapper .swiper-button-next::after {
  border-top: 2px solid #BA2425;
  border-right: 2px solid #BA2425;
  margin-left: -3px;
}
.section--detail.page--guide .block--step__ph .swiper-button-wrapper .swiper-button-prev::after {
  border-bottom: 2px solid #BA2425;
  border-left: 2px solid #BA2425;
  margin-right: -3px;
}
.section--detail.page--guide .block--step__ph .swiper-button-wrapper .swiper-button-disabled {
  opacity: 0;
}
.section--detail.page--guide.entry .block--step .btn span {
  display: block;
  margin-top: 4px;
}
.section--detail.page--guide.service .block--step .inner-txt &gt; .txt--basic, .section--detail.page--guide.service .block--step .inner-txt &gt; .txt, .section--detail.page--guide.service .block--step .inner-txt &gt; .txt--sub {
  text-align: center;
}
.section--detail.page--guide.service .block--coming_soon {
  margin-top: 4em;
  border: 1px solid #000000;
  padding: 2em 0.4em;
  text-align: center;
  font-size: 3rem;
  line-height: 1.6;
}
@media screen and (min-width: 1px) and (max-width: 960px) {
  .section--detail.page--guide.service .block--coming_soon {
    padding: 2em 0.8em;
    font-size: 1.8rem;
  }
}
.section--detail.page--guide .list--join li {
  padding: 2em 1em;
  width: 100%;
}
.section--detail.page--guide .list--join li .btn {
  max-width: 480px;
  font-size: clamp(0.688rem, 0.491rem + 0.98vw, 1.375rem);
  padding: 1.5em 3em;
}

.page--faq .block--guide {
  margin-bottom: 5em;
}
.page--faq .block--guide .list--guide {
  display: flex;
  gap: 1.6em;
}
.page--faq .block--guide .list--guide li a {
  display: block;
  padding: 2em;
  font-size: 1.8rem;
  color: #000000;
  font-weight: bold;
  background-color: #fff;
  border: 1px solid #000000;
}
.page--faq .block--guide .list--guide li span {
  display: block;
  margin-bottom: 0.4em;
}
.page--faq .block--guide .list--guide li span img {
  width: 80px;
  margin: auto;
}
.page--faq .searchBox {
  position: relative;
}
.page--faq .searchBox form {
  position: relative;
}
.page--faq .searchBox input[type=text] {
  width: 100%;
  padding: 1em 1.5em;
  background-color: #EFEFEF;
  color: #000000;
  border: 1px solid #000000;
}
.page--faq .searchBox input[type=submit] {
  position: absolute;
  top: 50%;
  right: 0.5em;
  transform: translateY(-50%);
  z-index: 2;
  border: none;
  background: transparent;
  color: #000;
  font-family: FontAwesome;
  cursor: pointer;
  font-size: 2rem;
}
.page--faq .list--tag {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  white-space: normal;
  gap: 0.8em;
}
.page--faq .list--tag li a {
  display: block;
  font-size: 1.2rem;
  color: #BA2425;
  border: 1px solid #BA2425;
  padding: 0.4em 1em;
  border-radius: 999px;
}
.page--faq .block--faq {
  margin-top: 4em;
  background-color: #fff;
  border: 1px solid #000000;
}
.page--faq .block--faq .inner {
  padding: 2em 2em 1em;
}
.page--faq .block--faq .category-tit {
  color: #BA2425;
  font-weight: bold;
  font-size: 110%;
  padding-bottom: 1em;
  border-bottom: 1px solid #BA2425;
}
.page--faq .list--faq li a {
  display: flex;
  text-decoration: none;
  line-height: 1.7;
  padding: 1.6em 0;
}
.page--faq .list--faq li .icon--q {
  margin-right: 0.5em;
  font-weight: bold;
  color: #F44D4D;
}
.page--faq .list--faq li + li {
  border-top: 1px solid #EFEFEF;
}
.page--faq .section--detail .block--detail {
  background-color: #fff;
  border: 1px solid #000000;
  padding: 1.6em;
}
.page--faq .section--detail .block--detail .category-tit .category-tag {
  display: inline-block;
  padding: 0.3em 1em;
  font-size: 1.2rem;
  color: #BA2425;
  border: 1px solid #BA2425;
  border-radius: 999px;
}
.page--faq .section--detail .block--detail .category-tit .tit {
  display: flex;
  align-items: flex-start;
  margin: 1em 0;
  padding-bottom: 1em;
  border-bottom: 1px solid #999;
  font-size: 120%;
  text-align: left;
}
.page--faq .section--detail .block--detail .category-tit .icon--q {
  margin-right: 0.5em;
  color: #F44D4D;
}
.page--faq .section--detail .block--detail .txt a {
  text-decoration: underline;
}
@media screen and (min-width: 961px) {
  .page--faq .section--detail .block--detail .txt a:hover {
    text-decoration: none;
  }
}
.page--faq .detail__btn {
  font-weight: bold;
  text-align: center;
  margin-top: 2em;
}
@media screen and (min-width: 961px) {
  .page--faq .detail__btn a:hover {
    opacity: 0.5;
  }
}
.page--faq .block--contact {
  margin-top: 3em;
}
.page--faq .block--contact a {
  text-decoration: underline;
}
@media screen and (min-width: 961px) {
  .page--faq .block--contact a:hover {
    text-decoration: none;
  }
}
.page--faq .txt--no-data {
  margin-top: 3em;
}

.page--questionnaire .content-main &gt; section {
  color: #000000;
  padding: min(4vw, 5em);
}
.page--questionnaire .content-main &gt; section &gt; .ph {
  margin-bottom: 1em;
}
.page--questionnaire .block--error {
  margin: 2em 0;
  color: #BA2425;
}
.page--questionnaire form dl {
  margin: 3em 0;
}
.page--questionnaire form dl + .txt--sub {
  margin-bottom: 1.5em;
  text-align: center;
}
.page--questionnaire form dl dt {
  font-weight: bold;
}
.page--questionnaire form dl .form__select::after {
  position: absolute;
  border-color: #ccc;
  pointer-events: none;
}
.page--questionnaire .form--confirm dd {
  padding-top: 1em;
  border-top: 1px solid rgba(0, 0, 0, 0.1);
}
.page--questionnaire .form--horizontal .form__select::after {
  position: absolute;
  border-color: #000000;
}
.page--questionnaire .btn + .btn .btn--sub {
  margin-top: 0;
}
.page--questionnaire .list--attention {
  margin-top: 1em;
}
.page--questionnaire .btn {
  margin: auto;
  padding: 0;
}
.page--questionnaire .btn &gt; * {
  margin: 1em 0;
  border-radius: 999px;
  font-weight: bold;
  cursor: pointer;
}
.page--questionnaire .btn--main {
  border: none;
}
.page--questionnaire .btn--sub {
  display: block;
}

.page--error .txt-link {
  display: block;
  text-align: center;
  font-weight: bold;
  margin-top: 2em;
}
@media screen and (min-width: 1px) and (max-width: 960px) {
  .page--error .tit {
    font-size: 5vw;
  }
  .page--error .tit span {
    font-size: 14vw;
  }
}

@media screen and (min-width: 961px) {
  .sp {
    display: none !important;
  }
  a {
    transition: all 0.2s 0s ease;
  }
  a:hover {
    transition: all 0.2s 0s ease;
  }
  .text--link:hover {
    text-decoration: none;
  }
  .section--inner {
    width: 85%;
    margin: auto;
  }
  #popup-join .box .list--join {
    display: flex;
  }
  #popup-join .box .btn--attention a,
  #popup-join .box .list--guide li {
    transition: all 0.2s 0s ease;
  }
  #popup-join .box .btn--attention a:hover,
  #popup-join .box .list--guide li:hover {
    background-color: #EFEFEF;
    transition: all 0.2s 0s ease;
  }
  .list--join {
    justify-content: space-between;
  }
  .list--join li {
    width: 50%;
  }
  .list--join .btn--main.btn--overseas,
  .list--join .btn.btn--overseas {
    border: 1px solid #F44D4D;
  }
  .list--join .btn--main.btn--overseas:hover,
  .list--join .btn.btn--overseas:hover {
    background-color: transparent;
    color: #F44D4D;
  }
  .header {
    padding: 8px 40px 6px;
  }
  .header .logo {
    width: 78px;
    height: auto;
  }
  .header .g-nav {
    display: flex;
  }
  .header .g-nav &gt; ul {
    display: flex;
    font-size: 15px;
  }
  .header .g-nav &gt; ul li {
    transition: all 0.2s 0s ease;
  }
  .header .g-nav &gt; ul li + li {
    margin-left: 30px;
  }
  .header .g-nav &gt; ul li:hover {
    opacity: 0.3;
    transition: all 0.2s 0s ease;
  }
  .header .g-nav &gt; ul + ul {
    margin-left: 30px;
    border-left: 1px solid #000000;
  }
  .header .g-nav .list--nav__login {
    padding-left: 30px;
  }
  .header .langBar {
    margin-left: 40px;
    width: 130px;
    font-size: 12px;
  }
  .header .langBar .esb-displayer {
    padding: 10px 10px 10px calc(20px + 1em);
  }
  .header .langBar .esb-displayer::before {
    left: 10px;
  }
  .header .langBar .esb-dropdown {
    width: 130px;
  }
  .header .langBar .esb-dropdown .esb-item {
    transition: all 0.2s 0s ease;
  }
  .header .langBar .esb-dropdown .esb-item:hover {
    background-color: #000000;
    color: #fff;
    transition: all 0.2s 0s ease;
  }
  .btn {
    display: inline-block;
    font-size: max(1.4vw, 14px);
    padding: 1em 5em;
    transition: all 0.2s 0s ease;
  }
  .primary-btn:hover,
  .btn--main:hover {
    background-color: #000000;
  }
  .secondary-btn:hover,
  .btn--sub:hover {
    background-color: #fff;
  }
  .sub-tit {
    font-size: 24px;
  }
  .list--attention {
    margin-top: 40px;
  }
  .list--attention li {
    text-indent: calc(-1em - 10px);
    padding-left: calc(1em + 10px);
  }
  .list--attention li::before {
    margin-right: 10px;
  }
  .list--attention li a:hover {
    text-decoration: none;
  }
  .section--top {
    display: flex;
  }
  .section--top .kv-ribbon.top {
    width: 48.4vw;
    height: auto;
    top: 6vh;
    left: -10vw;
    z-index: -1;
    transform: rotate(110deg);
    filter: drop-shadow(0 -10px 12px rgba(0, 0, 0, 0.32));
  }
  .section--top .kv-ribbon.bottom {
    width: 64.5vw;
    height: auto;
    right: -20vw;
    bottom: 8vh;
    transform: rotate(-28deg);
    filter: drop-shadow(0 10px 12px rgba(0, 0, 0, 0.32));
  }
  .section--top .block--lead {
    padding-top: 28vh;
    padding-left: 10vw;
    width: 46vw;
  }
  .section--top .block--lead .catch {
    font-size: 4vw;
  }
  .section--top .block--lead .block--btn {
    width: 85%;
    margin-top: 4.3vh;
    text-align: center;
  }
  .section--top .block--lead .txt-link {
    margin-top: 20px;
  }
  .section--top .block--keyvisual {
    margin-left: 3vw;
  }
  .section--top .block--keyvisual .kv-slide {
    margin-top: 15vh;
    width: 45vw;
    height: 45vw;
  }
  .section--top .block--keyvisual .slide-back img {
    width: 68%;
  }
  .section--top .block--keyvisual .kv-message .message {
    top: 28%;
    padding: 0 8%;
  }
  .section--top .block--keyvisual .kv-message .message .container .comment-box .comment {
    font-size: max(1.2vw, 10px);
    padding: 0.95em 0.63em;
  }
  .section--top .block--keyvisual .kv-message .message .container.artist .icon {
    width: 10vw;
    height: auto;
    border: 0.5vw solid #f6f6f6;
  }
  .section--top .block--keyvisual .kv-message .message .container.artist .comment-box {
    margin-left: 15px;
  }
  .section--top .block--keyvisual .kv-message .message .container.artist .comment-box .name {
    font-size: max(1.1vw, 10px);
    margin-bottom: 4px;
  }
  .section--top .block--keyvisual .kv-message .message .container.user {
    margin-top: 20px;
  }
  .wrap.lang_en .section--top .block--lead .catch {
    font-size: 3.5vw;
    line-height: 1.3;
  }
  .wrap.lang_ko .section--top .block--lead .catch {
    font-size: 3.6vw;
  }
  .block--member {
    margin-top: 100px;
    padding: 0 3vw;
  }
  .block--member .member-list {
    gap: 2vw;
  }
  .block--member .member-list li {
    width: 25%;
  }
  .block--member .member-list li:hover a::after, .block--member .member-list li:hover button::after {
    transition: all 0.2s 0s ease;
    transform: scaleY(1);
  }
  .block--member .member-list li a,
  .block--member .member-list li button {
    padding: 3%;
  }
  .block--member .member-list li a::after,
  .block--member .member-list li button::after {
    content: "";
    position: absolute;
    display: block;
    width: 100%;
    height: 100%;
    bottom: 0;
    left: 0;
    transform: scaleY(0);
    transform-origin: bottom;
    background-color: #fff;
    transition: all 0.2s 0s ease;
    border-radius: 10px;
    z-index: -1;
  }
  .block--member .member-list li .member-name {
    padding: 0.55em 0.83em 0;
    width: 43%;
    height: 13%;
    bottom: -15px;
    right: -14px;
    font-size: max(1.3vw, 1rem);
  }
  .block--member .member-list li .member-name::after {
    right: 0.83em;
  }
  .block--member .member-list li .comingsoon {
    font-size: max(0.8vw, 12px);
  }
  .section--service {
    margin-top: 50px;
    padding-top: 80px;
  }
  .section--service .service-decoration.ribbon-top {
    width: 32.7vw;
    top: calc(-6.7vh + 80px);
    left: -2.8vw;
    transform: rotate(-41deg);
    filter: drop-shadow(2px 7px 10px rgba(0, 0, 0, 0.4));
    z-index: -1;
  }
  .section--service .service-decoration.ribbon-bottom {
    width: 48.4vw;
    bottom: -11.3vh;
    right: -26.5vw;
    z-index: 10;
    transform: rotate(132deg);
    filter: drop-shadow(0px -10px 12px rgba(0, 0, 0, 0.32));
  }
  .section--service .service-decoration.flower {
    width: 7.5vw;
    bottom: -34vh;
    right: -1.8vw;
    z-index: 10;
    transform: rotate(-32deg);
    filter: drop-shadow(-3px 7px 6px rgba(0, 0, 0, 0.32));
  }
  .section--service .service-wrap {
    display: flex;
    justify-content: space-between;
    align-items: center;
  }
  .section--service .block--lead .section-tit {
    font-size: 3vw;
    line-height: 1.5;
  }
  .section--service .block--lead .lead-txt {
    font-size: max(1.4vw, 14px);
    margin-top: 25px;
  }
  .section--service .block--slide {
    width: 50%;
    aspect-ratio: 1/1.12;
  }
  .section--service .block--slide .swiper-slide .service-txt {
    margin-bottom: 4vh;
    font-size: 1vw;
  }
  .section--service .block--slide .swiper-slide .service-img {
    margin: auto;
    width: 60%;
  }
  .section--service .block--slide [class^=swiper-button-] {
    width: 3.6vw;
    height: 3.6vw;
  }
  .section--service .block--slide [class^=swiper-button-]:after {
    width: 28%;
    height: 28%;
  }
  .section--service .block--slide .swiper-button-next {
    right: -1.3vw;
  }
  .section--service .block--slide .swiper-button-next:after {
    margin-left: -6%;
  }
  .section--service .block--slide .swiper-button-prev {
    left: -1.3vw;
  }
  .section--service .block--slide .swiper-button-prev:after {
    margin-right: -6%;
  }
  .section--price {
    margin-top: 30px;
    padding-top: 80px;
  }
  .section--price .price-wrap {
    display: flex;
  }
  .section--price .block--lead {
    width: 58%;
    padding: 4.3vw;
  }
  .section--price .block--lead .section-tit {
    padding-bottom: 10px;
  }
  .section--price .block--lead .section-tit span {
    font-size: 4.6vw;
    margin-right: 20px;
  }
  .section--price .block--lead .txt {
    margin-top: 30px;
    line-height: 2;
  }
  .section--price .block--detail {
    width: 42%;
    padding: 4.3vw;
    border-left: 1px solid #000000;
  }
  .section--price .block--detail .txt-price {
    font-size: 5.8vw;
  }
  .section--price .block--detail .txt-price span {
    font-size: 2.2vw;
    margin-left: 10px;
  }
  .section--attention {
    margin-top: -20px;
    padding-top: 80px;
  }
  .section--attention .attention-decoration.ribbon {
    width: 48.3vw;
    top: calc(-32vh + 60px);
    left: -28vw;
    z-index: 10;
    transform: rotate(30deg);
    filter: drop-shadow(0px 10px 12px rgba(0, 0, 0, 0.32));
  }
  .section--attention .attention-decoration.flower {
    width: 13.3vw;
    top: calc(-27vh + 60px);
    left: -1vw;
    z-index: 20;
    transform: rotate(25deg);
    filter: drop-shadow(3px 3px 3px rgba(0, 0, 0, 0.3));
  }
  .section--attention .attention-decoration.bottom {
    width: 10.6vw;
    bottom: 2vh;
    right: -0.5vw;
    transform: rotate(-33deg);
    filter: drop-shadow(0px -5px 4px rgba(0, 0, 0, 0.3));
  }
  .section--attention .attention-content {
    padding: 50px;
  }
  .section--attention .attention-content + .attention-content {
    margin-top: 24px;
  }
  .section--attention .attention-content .tit-wrap {
    margin-bottom: 40px;
    padding-bottom: 30px;
  }
  .section--attention .attention-content .tit-wrap .section-tit {
    font-size: 42px;
  }
  .section--attention .attention-content .tit-wrap .tit-caption {
    margin-top: 14px;
  }
  .section--attention .attention-content .sub-tit {
    margin-bottom: 35px;
  }
  .section--attention .attention-content .banner--wrap &gt; * {
    width: 240px;
  }
  .section--attention .attention-content .banner--wrap &gt; * + * {
    margin-left: 30px;
  }
  .section--attention .attention-content .banner--wrap a:hover {
    opacity: 0.5;
  }
  .section--attention .attention-content .list--attention {
    margin-top: 40px;
  }
  .footer {
    margin-top: 80px;
    padding-bottom: 60px;
  }
  .footer .footer--inner {
    display: flex;
    justify-content: space-between;
  }
  .footer .footer--inner .support-link {
    display: flex;
  }
  .footer .footer--inner .footer-list li {
    transition: all 0.2s 0s ease;
  }
  .footer .footer--inner .footer-list li:hover {
    opacity: 0.5;
    transition: all 0.2s 0s ease;
  }
  .footer .footer--inner .footer-list + .footer-list {
    margin-left: 40px;
  }
  .footer .footer--inner .official-link a:hover {
    opacity: 0.5;
  }
  .footer .footer--inner .copyright {
    margin-top: 30px;
    text-align: right;
  }
  body:not(.page--home) .section--inner {
    margin-top: 120px;
  }
  body:not(.page--home) .section-tit {
    font-size: 3.6rem;
    margin-bottom: 1.6em;
  }
  body:not(.page--home).page--error .section-tit {
    font-size: 2vw;
  }
  body:not(.page--home).page--error .section-tit span {
    font-size: 4vw;
  }
  body:not(.page--home) .footer .footer--inner {
    width: min(80%, 1000px);
  }
  body:not(.page--home) .footer .copyright {
    text-align: left;
  }
  .section--detail {
    width: min(80%, 1000px);
    margin: 120px auto 0;
  }
  .section--detail.page--guide .block--step__index .list--step__index {
    justify-content: space-between;
  }
  .section--detail.page--guide .block--step__index .list--step__index li {
    width: 33.3333333333%;
  }
  .section--detail.page--guide .block--step__index .list--step__index li a {
    padding: 2em;
    text-align: center;
  }
  .section--detail.page--guide .block--step__index .list--step__index li a:hover {
    opacity: 0.5;
  }
  .section--detail.page--guide .block--step__index .list--step__index li .label--step {
    position: absolute;
    font-size: 1.2rem;
    top: -1em;
    left: 50%;
    transform: translateX(-50%);
  }
  .section--detail.page--guide .block--step__ph .swiper-button-wrapper {
    width: 80%;
  }
  .section--detail.page--guide .block--step__ph .swiper-button-wrapper [class^=swiper-button-] {
    width: 50px;
    height: 50px;
  }
  .section--detail.page--guide .block--step__ph .swiper-button-wrapper [class^=swiper-button-]:after {
    width: 14px;
    height: 14px;
  }
  .section--detail.page--guide .block--step .list--step .block--btn .btn {
    font-size: clamp(0.875rem, 0.554rem + 1.61vw, 2rem);
    min-width: 380px;
  }
  .section--detail.page--guide .block--step .list--join {
    text-align: center;
  }
  .section--detail.page--guide .block--step .list--attention {
    margin-top: 20px;
  }
  .section--detail.page--guide.entry .btn--sub:hover {
    background: #F0E7E7;
  }
  .page--faq .section--inner {
    width: min(80%, 1000px);
  }
  .page--faq .block--guide .list--guide {
    justify-content: space-between;
  }
  .page--faq .block--guide .list--guide li {
    width: 50%;
  }
  .page--faq .block--guide .list--guide li a {
    text-align: center;
  }
  .page--faq .block--guide .list--guide li a:hover {
    opacity: 0.3;
  }
  .page--faq .list--tag {
    margin-top: 40px;
  }
  .page--faq .list--tag li a:hover {
    background-color: #BA2425;
    color: #fff;
  }
  .page--faq .list--faq li a:hover {
    opacity: 0.5;
  }
  /* page--questionnaire
  ------------------------------ */
  .page--questionnaire .content-main &gt; section {
    width: min(80%, 1000px);
    margin: 100px auto 0;
  }
  .page--questionnaire .section-tit {
    margin-bottom: 0.8em;
    font-size: 3rem;
    line-height: 1.5;
  }
  .page--questionnaire form dl dt {
    margin: 0 0 0.4em;
  }
  .page--questionnaire form dl dd {
    margin: 0 0 3em;
  }
  .page--questionnaire form dl .form__select::after {
    top: 50%;
    right: 0.75em;
    margin-top: -0.25em;
  }
  .page--questionnaire form .input--half[type=tel] {
    width: 25% !important;
  }
  .page--questionnaire form .input--quarter[type=number] {
    width: 5em !important;
    margin-right: 5px;
  }
  .page--questionnaire .form--horizontal .form__select::after {
    top: 50%;
    right: 0.5em;
    margin-top: -0.25em;
  }
  .page--questionnaire .icon--required {
    display: inline-block;
  }
  .page--questionnaire .icon--required::before {
    margin-left: 5px;
    padding: 2px 6px 3px;
    font-size: 11px;
    vertical-align: 2px;
  }
  .page--questionnaire .list--txt li {
    margin-bottom: 1em;
    padding-left: 1em;
    text-indent: -1em;
  }
  .page--questionnaire .btn {
    width: 100%;
  }
  .page--questionnaire .btn &gt; * {
    display: inline-block;
    padding: 1.2em 5em;
    font-size: 16px;
    transition: all 0.2s 0s ease;
    overflow: hidden;
  }
  .page--error .txt {
    text-align: center;
  }
  .page--error .txt-link:hover {
    text-decoration: underline;
  }
}
@media screen and (min-width: 1px) and (max-width: 960px) {
  /* common.scss
  ============================== */
  .pc {
    display: none !important;
  }
  .section--inner {
    width: 100%;
    padding: 0 20px;
  }
  .btn {
    width: 86%;
    max-width: 300px;
    margin: auto;
  }
  .block--btn__fixed {
    position: fixed;
    display: flex;
    width: 100vw;
    bottom: 0;
    left: 0;
    z-index: 1000;
    transition: all 0.2s 0s ease;
  }
  .block--btn__fixed [class^=btn-] {
    display: block;
    width: 50vw;
    padding: 8px 0 12px;
    color: #fff;
    font-size: 18px;
    font-weight: bold;
    text-align: center;
  }
  .block--btn__fixed [class^=btn-] span {
    display: inline-block;
    font-size: 12px;
    margin-bottom: 3px;
  }
  .block--btn__fixed .btn-entry,
  .block--btn__fixed .btn-mypage {
    background-color: #BA2425;
  }
  .block--btn__fixed .btn-login {
    background-color: #000000;
  }
  .block--btn__fixed .btn-mypage {
    width: 100%;
  }
  #popup-join .box {
    padding: 20px;
  }
  #popup-join .box &gt; .tit i {
    margin-right: 6px;
  }
  .list--join {
    flex-direction: column;
  }
  .header {
    padding: 10px 20px 8px;
  }
  .header .logo {
    width: 70px;
    height: auto;
  }
  .header .header-inner {
    flex-direction: row-reverse;
  }
  .header .drawer--btn {
    width: 30px;
    height: 20px;
    position: relative;
  }
  .header .drawer--btn span {
    position: absolute;
    display: block;
    width: 100%;
    height: 2px;
    border-radius: 2px;
    left: 0;
    background-color: #000000;
    transition: all 0.2s 0s ease;
  }
  .header .drawer--btn span:nth-of-type(2) {
    top: 50%;
    transform: translateY(-50%);
  }
  .header .drawer--btn span:last-of-type {
    bottom: 0;
  }
  .header .drawer--btn.open {
    height: 30px;
    z-index: 2500;
  }
  .header .drawer--btn.open span {
    width: 130%;
    transform-origin: left;
    transition: all 0.2s 0s ease;
  }
  .header .drawer--btn.open span:first-of-type {
    transform: rotate(45deg);
  }
  .header .drawer--btn.open span:nth-of-type(2) {
    display: none;
  }
  .header .drawer--btn.open span:last-of-type {
    transform: rotate(-45deg);
  }
  .header .drawer--btn.open + .drawer {
    opacity: 1;
    pointer-events: all;
    transition: all 0.2s 0s ease;
  }
  .header .drawer {
    opacity: 0;
    pointer-events: none;
    transition: all 0.2s 0s ease;
    position: fixed;
    top: 0;
    left: 0;
    display: block;
    width: 100vw;
    height: 100lvh;
    z-index: 2000;
    background-color: #EFEFEF;
    background-image: url("/static/issuecommune/fanclub/common/paper-bg-01.png");
  }
  .header .g-nav {
    margin: 100px auto 0;
    text-align: center;
  }
  .header .g-nav &gt; ul {
    font-size: 18px;
  }
  .header .g-nav &gt; ul li + li {
    margin-top: 30px;
  }
  .header .g-nav &gt; ul + ul {
    margin-top: 30px;
    padding-top: 30px;
    position: relative;
  }
  .header .g-nav &gt; ul + ul::before {
    content: "";
    position: absolute;
    display: block;
    width: 64px;
    height: 1px;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
    background-size: 6px 1px;
    background-image: linear-gradient(to right, #000000, #000000 2px, transparent 4px, transparent 6px);
    background-repeat: repeat-x;
  }
  .header .langBar {
    margin-right: 20px;
    width: 114px;
    font-size: 11px;
  }
  .header .langBar .esb-displayer {
    padding: 8px 10px 8px calc(16px + 1em);
  }
  .header .langBar .esb-displayer::before {
    left: 10px;
  }
  .header .langBar .esb-dropdown {
    width: 114px;
  }
  .sub-tit {
    font-size: 16px;
    margin-bottom: 25px;
    line-height: 1.5;
  }
  .list--attention {
    margin-top: 25px;
  }
  .list--attention li {
    text-indent: calc(-1em - 2px);
    padding-left: calc(1em + 2px);
  }
  .list--attention li:before {
    margin-right: 2px;
  }
  .section--top .kv-ribbon.top {
    width: 87vw;
    height: auto;
    top: 9vh;
    left: -25.6vw;
    transform: rotate(98deg);
    filter: drop-shadow(0 -5px 6px rgba(0, 0, 0, 0.32));
  }
  .section--top .kv-ribbon.bottom {
    width: 135vw;
    max-width: none;
    height: auto;
    right: -53.5vw;
    bottom: 16.8vh;
    transform: rotate(-38deg);
    filter: drop-shadow(0 5px 6px rgba(0, 0, 0, 0.32));
  }
  .section--top .block--lead .catch {
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    font-size: 4vh;
    line-height: 1.3;
    margin: auto;
    padding-top: 18.6vh;
  }
  .section--top .block--keyvisual {
    margin-top: 6.6vh;
  }
  .section--top .block--keyvisual .kv-slide {
    margin: auto;
    width: 41vh;
    height: 41vh;
  }
  .section--top .block--keyvisual .kv-message .message {
    top: 15%;
    width: 96%;
  }
  .section--top .block--keyvisual .kv-message .message .container .comment-box .comment {
    font-size: 1.4vh;
    padding: 14px 12px;
  }
  .section--top .block--keyvisual .kv-message .message .container.artist .icon {
    width: 10vh;
    height: auto;
    border: 5px solid #f6f6f6;
  }
  .section--top .block--keyvisual .kv-message .message .container.artist .comment-box {
    margin-left: 6px;
  }
  .section--top .block--keyvisual .kv-message .message .container.artist .comment-box .name {
    font-size: 1.3vh;
    margin-bottom: 5px;
  }
  .section--top .block--keyvisual .kv-message .message .container.user {
    margin-top: 20px;
  }
  .section--top .block--keyvisual .kv-message .slide-back img {
    width: 71.4%;
  }
  .wrap.lang_en .section--top .block--lead .catch {
    width: min(80%, 520px);
    font-size: 3.8vh;
  }
  .wrap.lang_zh-tw .section--top .block--lead .catch {
    font-size: 3.3vh;
  }
  .wrap.lang_ko .section--top .block--lead .catch {
    max-width: 70%;
    font-size: 3vh;
  }
  .block--member {
    padding: 0 5vw;
  }
  .block--member .member-list {
    flex-wrap: wrap;
    gap: 5vw;
  }
  .block--member .member-list li {
    width: 42.5vw;
  }
  .block--member .member-list li a,
  .block--member .member-list li button {
    padding: 3%;
  }
  .block--member .member-list li .member-name {
    padding: 0.58em 0.83em 0;
    width: 51.5%;
    height: 15.7%;
    bottom: -5px;
    right: -6px;
    font-size: 3vw;
  }
  .block--member .member-list li .member-name::after {
    right: 0.83em;
  }
  .block--member .member-list li .comingsoon {
    font-size: max(2.5vw, 10px);
  }
  .section--service {
    padding-top: 19vh;
  }
  .section--service .service-decoration.ribbon-top {
    width: min(64vw, 450px);
    top: 5.6vh;
    left: -8vw;
    transform: rotate(-44deg);
    filter: drop-shadow(1px 2px 6px rgba(0, 0, 0, 0.4));
    z-index: -1;
  }
  .section--service .service-decoration.ribbon-bottom {
    width: 80vw;
    bottom: 11.6vh;
    right: -45.6vw;
    z-index: 10;
    transform: rotate(126deg);
    filter: drop-shadow(0px -5px 6px rgba(0, 0, 0, 0.32));
  }
  .section--service .service-decoration.flower {
    width: 15.5vw;
    bottom: -5.6vh;
    right: -4.8vw;
    z-index: 10;
    transform: rotate(-30deg);
    filter: drop-shadow(-1.5px 4px 3px rgba(0, 0, 0, 0.32));
  }
  .section--service .block--lead {
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    max-width: min(90%, 670px);
    margin: auto;
  }
  .section--service .block--lead .section-tit {
    font-size: min(6.9vw, 45px);
  }
  .section--service .block--lead .lead-txt {
    margin-top: 1em;
    font-size: max(3.5vw, 14px);
    line-height: 1.6;
  }
  .section--service .block--slide {
    width: 100%;
    max-width: 600px;
    aspect-ratio: 1/1.55;
    margin: 20px auto 0;
  }
  .section--service .block--slide .swiper-slide .service-txt {
    margin: 0 auto 3vh;
    font-size: clamp(14px, 3.6vw, 24px);
    width: 75%;
  }
  .section--service .block--slide .swiper-slide .service-img {
    margin: auto;
    width: 75%;
  }
  .section--service .block--slide [class^=swiper-button-] {
    width: 10.2vw;
    height: 10.2vw;
  }
  .section--service .block--slide [class^=swiper-button-]:after {
    width: 25%;
    height: 25%;
  }
  .section--service .block--slide .swiper-button-next {
    right: -3vw;
  }
  .section--service .block--slide .swiper-button-next:after {
    margin-left: -7.5%;
  }
  .section--service .block--slide .swiper-button-prev {
    left: -3vw;
  }
  .section--service .block--slide .swiper-button-prev:after {
    margin-right: -7.5%;
  }
  .section--price {
    margin-top: 10px;
    padding-top: 70px;
  }
  .section--price .block--lead {
    padding: 30px;
  }
  .section--price .block--lead .section-tit {
    padding-bottom: 8px;
  }
  .section--price .block--lead .section-tit span {
    font-size: 36px;
    margin-right: 12px;
  }
  .section--price .block--lead .txt {
    margin-top: 20px;
    font-size: 12px;
    line-height: 1.8;
  }
  .section--price .block--detail {
    padding: 30px;
    border-top: 1px solid #000000;
  }
  .section--price .block--detail .txt-price {
    font-size: 56px;
  }
  .section--price .block--detail .txt-price span {
    font-size: 24px;
    margin-left: 6px;
  }
  .section--attention {
    margin-top: -34px;
    padding-top: 70px;
  }
  .section--attention .attention-decoration.flower {
    width: 17vw;
    top: calc(-8.4vh + 70px);
    left: -5.6vw;
    z-index: 20;
    transform: rotate(37deg);
    filter: drop-shadow(1px 1px 2px rgba(0, 0, 0, 0.3));
  }
  .section--attention .attention-decoration.bottom {
    width: min(23vw, 100px);
    top: -7.7vh;
    right: -12vw;
    transform: rotate(-32deg);
    filter: drop-shadow(0px 2px 2px rgba(0, 0, 0, 0.3));
  }
  .section--attention .attention-content {
    padding: 30px 20px;
  }
  .section--attention .attention-content + .attention-content {
    margin-top: 30px;
  }
  .section--attention .attention-content .tit-wrap {
    margin-bottom: 30px;
    padding-bottom: 25px;
  }
  .section--attention .attention-content .tit-wrap .section-tit {
    font-size: 32px;
  }
  .section--attention .attention-content .tit-wrap .tit-caption {
    margin-top: 5px;
  }
  .section--attention .attention-content .sub-tit {
    margin-bottom: 25px;
  }
  .section--attention .attention-content .banner--wrap &gt; * {
    width: calc((100% - 10px) / 2);
    max-width: 240px;
  }
  .section--attention .attention-content .banner--wrap &gt; * + * {
    margin-left: 10px;
  }
  .footer {
    margin-top: 70px;
    padding-bottom: 50px;
  }
  .footer .footer--inner .footer-list {
    line-height: 1.6;
  }
  .footer .footer--inner .footer-list + .footer-list {
    margin-top: 40px;
  }
  .footer .footer--inner .official-link {
    margin: 60px auto 0;
  }
  .footer .footer--inner .copyright {
    margin-top: 50px;
    text-align: center;
  }
  body:not(.page--home) .section--inner {
    margin-top: 100px;
  }
  body:not(.page--home) .section-tit {
    font-size: 2.2rem;
    margin-bottom: 1em;
  }
  body:not(.page--home) .section-tit span {
    font-size: 1.4rem;
  }
  body:not(.page--home).page--error .sectino-tit {
    font-size: 5vw;
  }
  body:not(.page--home).page--error .sectino-tit span {
    font-size: 14vw;
  }
  .section--detail {
    width: 100%;
    margin-top: 100px;
    padding: 0 20px;
  }
  .section--detail.page--guide .block--step__index .list--step__index {
    flex-direction: column;
  }
  .section--detail.page--guide .block--step__index .list--step__index li {
    width: 100%;
  }
  .section--detail.page--guide .block--step__index .list--step__index li a {
    padding: 0;
  }
  .section--detail.page--guide .block--step__index .list--step__index li .label--step {
    margin-right: 1em;
    padding: 12px 16px 4px;
  }
  .section--detail.page--guide .block--step .list--step .block--btn .btn {
    font-size: 1.6rem;
  }
  .section--detail.page--guide .block--step .list--step .block--btn .btn span {
    font-size: 75%;
  }
  .section--detail.page--guide .block--step .list--join {
    flex-direction: column;
  }
  .section--detail.page--guide .block--step .block-tit .sub-tit {
    margin-bottom: 0;
  }
  .section--detail.page--guide .block--step__ph .swiper-button-wrapper {
    width: 100%;
  }
  .section--detail.page--guide .block--step__ph .swiper-button-wrapper [class^=swiper-button-] {
    width: 36px;
    height: 36px;
  }
  .section--detail.page--guide .block--step__ph .swiper-button-wrapper [class^=swiper-button-]:after {
    width: 10px;
    height: 10px;
  }
  .page--faq .block--guide .list--guide {
    flex-direction: column;
    gap: 1.2em;
  }
  .page--faq .block--guide .list--guide li {
    width: 100%;
  }
  .page--faq .block--guide .list--guide li a {
    display: flex;
    align-items: center;
    padding: 1em;
    font-size: 1.6rem;
  }
  .page--faq .block--guide .list--guide li span {
    margin-bottom: 0;
  }
  .page--faq .block--guide .list--guide li span img {
    width: 50px;
    margin: 0 0.5em 0 0;
  }
  .page--faq .list--tag {
    margin-top: 30px;
  }
  .page--questionnaire .content-main &gt; section {
    padding: 0 20px;
    margin-top: 80px;
  }
  .page--questionnaire form dl dt {
    margin: 0 0 0.4em;
  }
  .page--questionnaire form dl dd {
    margin: 0 0 2.4em;
  }
  .page--questionnaire form dl .form__select::after {
    top: 50%;
    right: 0.75em;
    margin-top: -0.25em;
  }
  .page--questionnaire form .input--half {
    width: 100% !important;
  }
  .page--questionnaire form .input--quarter {
    width: 50% !important;
  }
  .page--questionnaire form .input--half[type=tel] {
    width: 100% !important;
  }
  .page--questionnaire form .input--quarter[type=number] {
    width: 5em !important;
    margin-right: 5px;
  }
  .page--questionnaire .form--horizontal .form__select::after {
    top: 50%;
    right: 0.5em;
    margin-top: -0.25em;
  }
  .page--questionnaire .icon--required {
    display: inline-block;
  }
  .page--questionnaire .icon--required::before {
    margin-left: 5px;
    padding: 2px 6px 3px;
    padding-left: 5px;
    font-size: 11px;
    vertical-align: inherit;
  }
  .page--questionnaire .btn &gt; * {
    width: 100%;
    padding: 20px;
  }
}/*# sourceMappingURL=fanclub-service.css.map */</pre></body></html>