/*
 Theme Name:   rst
 Description:  rst Theme
 Author URI:   http://example.com
 Template:     hello-elementor
 Version:      1.0.0
 License:      GNU General Public License v2 or later
 License URI:  http://www.gnu.org/licenses/gpl-2.0.html
 Text Domain:  rst
*/
html,
body {
  font-size: 0.052083333vw;
}
* {
  box-sizing: border-box;
  font-family: "Helvetica Neue", "Helvetica", "Arial", "Yu Gothic", "YuGothic", "Meiryo", sans-serif !important;
}
.wpcf7-spinner {
  display: none;
}
.single .elementor {
  word-break: break-word;
}
ul {
  list-style: none;
  padding: 0;
}
.mv_bg {
  padding: 56rem 0 78rem;
  background: linear-gradient(250deg, #bbeeff 0%, #76ddff 25.52%, #d1afde 47.71%, #ff98ce 74.52%, #fc7d7d 100%) center/cover no-repeat;
}
.home_swip_slider_mv .swiper-pagination-bullets.swiper-pagination-horizontal {
  top: calc(100% + 32rem);
  bottom: unset;
}
.swiper-char-pagination.swiper-pagination-horizontal.swiper-pagination-bullets {
  margin-top: 25rem;
  text-align: center;
  margin-left: auto;
  margin-right: auto;
  transform: unset;
}
.swiper-char-pagination.swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet {
  border: solid 1.5rem #000;
}
.home_swip_slider_mv .swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet,
.swiper-char-pagination.swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet {
  border: solid 1.5rem #fff;
  background-color: transparent;
  opacity: 1;
  width: 14rem;
  height: 14rem;
  margin: 0 6rem;
}
.swiper-char-pagination.swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet {
  border: solid 1.5rem #000;
}
.swiper-char-pagination.swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet.swiper-pagination-bullet-active {
  background-color: #000;
}
.home_swip_slider_mv .swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet.swiper-pagination-bullet-active {
  background-color: #fff;
}
.swiper-button-prev:after,
.swiper-button-next:after,
.swiper-char-button-prev:after,
.swiper-char-button-next:after {
  content: "";
  width: 60rem;
  height: 60rem;
  background: url("/rswpc/wp-content/uploads/2022/05/Icon-material-keyboard-arrow-left.png") center/22rem no-repeat;
}
.swiper-button-next:after,
.swiper-char-button-next:after {
  transform: scaleX(-1);
}
.swiper-char-button-next,
.swiper-char-button-prev,
.swiper-button-prev,
.swiper-rtl .swiper-button-next,
.swiper-button-next,
.swiper-rtl .swiper-button-prev {
  width: 60rem;
  height: 60rem;
  border-radius: 60rem;
  font-weight: bold;
  background: #fff;
  color: #000;
  background-image: none !important;
}
.swiper-char-button-next,
.swiper-char-button-prev {
  position: absolute;
  top: 50%;
  margin-top: calc(0px - (var(--swiper-navigation-size) / 2));
  z-index: 10;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
}
.swiper-char-button-next {
  right: 222rem;
}
.swiper-char-button-prev {
  left: 222rem;
}
.swiper-button-prev,
.swiper-rtl .swiper-button-next {
  left: 345rem;
}
.swiper-button-next,
.swiper-rtl .swiper-button-prev {
  right: 345rem;
}
#wpadminbar .ab-icon,
#wpadminbar .ab-item::before,
#wpadminbar > #wp-toolbar > #wp-admin-bar-root-default .ab-icon,
.wp-admin-bar-arrow {
  font: normal 20px/1 dashicons !important;
}
[class*=" eicon-"],
[class^="eicon"] {
  font-family: eicons !important;
}
.fab {
  font-family: "Font Awesome 5 Brands" !important;
}
.header_bg {
  display: none;
}
#hamburgermenu,
.hamburgerswitch {
  display: none;
}

.sns_footer {
  display: grid;
  width: 100%;
  padding: 0 12rem;
  place-items: center;
}
.sns_footer h2 {
  font-size: 14rem;
  padding: 13rem;
  position: relative;
}
.sns_footer h2::before {
  position: absolute;
  content: "";
  top: 0;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
  width: 114rem;
  background: url("/rswpc/wp-content/uploads/2022/04/sns_slash.svg") center/contain no-repeat;
}
.header_container {
  position: fixed;
  background-color: #fff;
}
.header_outer {
  display: grid;
  width: 1752rem;
  grid-template-columns: 131rem 1276rem;
  padding: 18rem 0;
  margin: auto;
  justify-content: space-between;
}
.header_site_logo {
  display: grid;
  place-items: center;
}
.header_site_logo img {
  vertical-align: bottom;
}
.header_nav_outer {
  display: grid;
  grid-template-columns: 806rem 210rem;
  justify-content: space-between;
  align-items: center;
  font-weight: bolder;
}
.header_nav_main_ul {
  display: grid;
  grid-template-columns: repeat(5, auto);
  gap: 52rem;
}
.header_nav_main_ul li {
  display: grid;
  place-items: center;
}
.header_nav_main_ul li:first-child {
  display: none;
}
.header_nav_main_ul a {
  font-size: 24rem;
  color: #111;
}
.header_nav_sub_ul {
  display: grid;
  grid-template-columns: repeat(3, auto);
  gap: 22rem;
}
.header_nav_sub_ul img {
  margin-left: 8rem;
}
.header_nav_sub_ul a {
  font-size: 14rem;
  color: #111;
}
.header_nav_sub_outer .header_nav_icon,
.hamburger_nav_footer .header_nav_icon {
  grid-template-columns: repeat(1, 32rem);
  justify-content: center;
}
.header_nav_icon {
  display: grid;
  grid-template-columns: repeat(3, 32rem);
  font-size: 32rem;
  gap: 18rem;
  justify-content: end;
}
.header_nav_icon a {
  width: 32rem;
  line-height: 1;
  display: block;
}
.sp_header_contact_area {
  display: none;
}
.social_line_icon svg {
  fill: #00c300;
  vertical-align: bottom;
}
.fa-twitter::before {
  color: #1da1f2;
}
.fa-facebook::before {
  color: #1877f2;
}
.hamburger_nav_footer {
  display: none;
}

#page > .elementor {
  padding-top: calc(60.508rem + 36rem);
}

.title_border {
  position: relative;
}
.title_border::after {
  position: absolute;
  left: 0;
  right: 0;
  top: 100%;
  height: 5rem;
  content: "";
  background: repeating-linear-gradient(250deg, #94e4ff 0%, #46cffc 4.315%, #ce297f 45.185%, #fc7d7d 50%, #ce297f 54.63%, #46cffc 95.37%, #94e4ff 100%);
  background-size: 200%;
  background-position: 100%;
}
.news_sec,
.event_sec,
.home_news_sec,
.home_event_sec {
  text-align: center;
}
.post_list_news_tag,
.home_news_sec {
  background-color: #fff6fb;
}
.post_list_event_tag,
.home_event_sec {
  background-color: #fffef5;
}

.post_list_disco_tag .post_pl > a:nth-of-type(2) .post_list_title,
.home_swip_slider_news .home_pl > a:nth-of-type(2),
.home_swip_slider_event .home_pl > a:nth-of-type(2),
.post_list_event_tag .post_pl > a:nth-of-type(2),
.post_list_news_tag .post_pl > a:nth-of-type(2) {
  height: 72rem;
  overflow: hidden;
  display: inline-block;
}

.post_list_disco_tag,
.home_event_sec {
  background-color: #f5fcff;
}
.post_list_news_tag,
.post_list_disco_tag,
.post_list_event_tag {
  padding: 47rem 0 68rem;
  margin-top: 45rem;
}
.contact_sec h1,
.news_sec h1,
.event_sec h1,
.disco_sec h1,
.home_news_sec .home_sec_news_title h2,
.home_event_sec .home_sec_event_title h2,
.home_char_sec .home_sec_char_title h2,
.home_sec_mv_title h1 {
  font-size: 48rem;
  width: -moz-fit-content;
  width: fit-content;
  margin: auto;
  margin-top: 63rem;
  margin-bottom: 37rem;
}
.news_sec h1,
.home_news_sec .home_sec_news_title h2 {
  border-width: 0;
  border-bottom: solid #ee2288 5rem;
}
.event_sec h1,
.home_event_sec .home_sec_event_title h2 {
  border-width: 0;
  border-bottom: solid #ff8d1c 5rem;
}
.disco_sec h1 {
  border-width: 0;
  border-bottom: solid #47d8fd 5rem;
}
.contact_sec h1,
.home_char_sec .home_sec_char_title h2,
.home_sec_mv_title h1 {
  border-width: 0;
  border-bottom: solid 5rem;
  border-image: repeating-linear-gradient(250deg, #fc7d7d 0%, #ce297f 8.63%, #c1b4e0 50%, #46cffc 90.37%, #94e4ff 100%);
  border-image-slice: 1;
}
.page_mv {
  width: 1920rem;
}
.home_date_container {
  padding-top: 35rem;
  display: grid;
  grid-auto-flow: column;
}
.post_list_news_tag .home_date_container,
.post_list_event_tag .home_date_container,
.home_swip_slider .home_date_container
 {
  height: 67rem;
}
.post_date,
.home_date {
  font-size: 16rem;
  text-align: right;
  color: #bebebe;
}
.post_list_disco_tag .post_date {
  text-align: left;
}
.post_news > img,
.post_event > img,
.home_news > img,
.home_event > img {
  width: 421rem;
  height: 259rem;
  vertical-align: middle;
}
.home_char_sec {
  overflow: hidden;
}
.home_swip_slider_character {
  margin-top: 35rem;
  height: 713rem;
}
.home_swip_slider_character .swip_slider_wrapper {
  height: 670rem !important;
}
.home_swip_slider_character .swiper-char-pagination {
  transform: unset;
  margin-left: auto;
  margin-right: auto;
}
.swip_slider_wrapper .char_pl {
  width: 300rem;
  height: 670rem;
  padding: 20rem;
  margin: auto;
  overflow: hidden;
  position: relative;
  background-color: #eee;
  border: solid 2px #fff;
}
.char_pl img {
  height: 100%;
  width: 100%;
  max-width: none;
  position: absolute;
  object-position: top;
  object-fit: cover;
  left: 50%;
  top: 0;
  transform: translateX(-50%);
}
.home_char_name {
  line-height: 1;
  position: absolute;
  bottom: 27rem;
  right: 40rem;
  font-size: 18rem;
  text-align: right;
  color: #fff;
  text-shadow: 0 0 5rem #000;
}
.home_char_name span {
  font-size: 49rem;
}
.post_list_wrapper .post_pl,
.swip_slider_wrapper .home_pl {
  background-color: #fff;
  width: 460rem;
  padding: 20rem;
  margin: auto;
}
.home_discography_outer {
  background: linear-gradient(250deg, #bbeeff 0%, #76ddff 25.52%, #d1afde 47.71%, #ff98ce 74.52%, #fc7d7d 100%) center/cover no-repeat;
  padding: 40rem 0;
}
.home_discography_outer > p {
  font-size: 35rem;
  width: 1400rem;
  margin: auto;
  color: #ce297f;
}
.home_discography_container {
  display: grid;
  grid-template-columns: repeat(3, 333rem);
  justify-content: center;
  gap: 141rem;
}
.disco_pl {
  width: 333rem;
  height: 333rem;
  position: relative;
  background-color: #747474;
  display: grid;
  align-content: center;
}
.disco_pl:after {
  content: "";
  position: absolute;
  width: 333rem;
  height: 333rem;
  top: 0;
  left: 0;
  background: #3339;
  z-index: 2;
}
.disco_pl p {
  font-size: 24rem;
  margin: 10rem;
  text-align: center;
  position: relative;
  z-index: 10;
  color: #fff;
  text-shadow: 0 0 10rem #000;
}
.disco_pl img {
  position: absolute;
  width: 333rem;
  height: 333rem;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: 1;
}
.post_list_tag {
  place-content: center;
  min-height: calc(100vh - 647rem);
}
.home_news_sec .home_swip_slider,
.home_event_sec .home_swip_slider {
  width: 1440rem;
  margin: auto;
  overflow: hidden;
}
.post_list_wrapper,
.home_news_sec .swip_slider_wrapper,
.home_event_sec .swip_slider_wrapper {
  width: 1440rem;
}
.post_list_wrapper {
  grid-template-columns: repeat(3, 1fr);
  place-content: center;
  margin: auto;
  gap: 50rem 30rem;
}
.post_list_wrap,
.home_list_wrap {
  display: grid;
  grid-auto-flow: column;
  justify-content: left;
  gap: 20rem;
  height: 86rem;
  padding: 32rem 0 22rem;
  overflow-x: scroll;
  -ms-overflow-style: none;
  scrollbar-width: none;
}
.post_list_wrap::-webkit-scrollbar,
.home_list_wrap::-webkit-scrollbar {
  display: none;
}
.post_list_wrap > div,
.post_list_wrap > a,
.home_list_wrap > a,
.home_date_container > a,
.home_date_container > .home_date_tag {
  font-size: 20rem;
  text-decoration: none !important;
  line-height: 1;
  border-radius: 20rem;
  padding: 6rem 25rem;
  color: #fff;
  background-color: #555;
}
.home_date_container > a,
.home_date_container > .home_date_tag {
  width: fit-content;
  width: -moz-fit-content;
}
.post_list_wrap > div:hover,
.post_list_wrap > a:hover,
.home_list_wrap > a:hover,
.home_date_container > a:hover {
  color: #fff;
}
.post_list_wrap > .home_news_link,
.home_list_wrap > .home_news_link {
  background-color: #ee2288;
}
.post_list_wrap > .home_event_link,
.home_list_wrap > .home_event_link {
  background-color: #ff8d1c;
}
.post_list_title,
.home_list_title {
  text-align: left;
  font-size: 16rem;
  color: #111;
}
.post_pl a,
.home_pl a {
  text-decoration: none !important;
}
.post_discography img {
  width: 400rem;
  height: 400rem;
}
.contact_sec .btn_rbb_link,
.post_list_sec .btn_rbb_link,
.home_news_sec .btn_rbb_link,
.home_event_sec .btn_rbb_link,
.home_char_sec .btn_rbb_link {
  margin: 50rem auto;
}
.home_swip_slider_mv {
  overflow: hidden;
}
.home_swip_slider_mv img {
  vertical-align: middle;
  width: 1163.63rem;
}
.home_swip_slider_mv .swip_slider_slide {
  padding: 0 10rem;
}
.temp_post_meta_wrap .theme_color > h2 {
  text-transform: uppercase;
}
.theme_color > div,
.theme_color > h2 {
  border-color: var(--post-custom-theme-color) !important;
}
.temp_post_meta_wrap .temp_meta_title {
  font-size: 48rem;
  font-weight: bold;
  border-width: 0;
  border-bottom: solid var(--post-custom-theme-color) 5rem;
  width: -moz-fit-content;
  width: fit-content;
  margin: auto;
  margin-top: 45rem;
}
.temp_date {
  font-size: 16rem;
}
.temp_meta {
  display: flex;
  gap: 40rem;
  padding-top: 35rem;
}
.temp_post_meta_wrap .temp_meta .temp_cate .cats_list {
  display: flex;
  gap: 10rem;
}
.temp_post_meta_wrap .temp_meta .temp_cate li {
  width: -moz-fit-content;
  width: fit-content;
  display: inline-flex;
}
.meta_link {
  text-decoration: none !important;
  background-color: #555 !important;
  font-weight: bold;
  font-size: 12rem;
  line-height: 1;
  padding: 5rem 18rem;
  border-radius: 20rem;
  color: #fff;
}
.temp_post_meta_wrap .temp_meta .temp_cate .meta_news,
.temp_post_meta_wrap .temp_meta .temp_cate .meta_event {
  background-color: var(--post-custom-theme-color) !important;
}

.postid-174 #page > .elementor > div > .elementor-element,
.postid-253 #page > .elementor > div > .elementor-element,
.elementor-html .single-news #page > .elementor > div > .elementor-element,
.elementor-html .single-event #page > .elementor > div > .elementor-element,
.elementor-html .single-discography #page > .elementor > div > .elementor-element,
.single-news #page > .elementor > .elementor-element,
.single-event #page > .elementor > .elementor-element,
.single-discography #page > .elementor > .elementor-element {
  max-width: 1200rem;
}

ul.tab {
  /*タブ部分*/
  display: grid;
  grid-auto-flow: column;
  justify-content: center;
  gap: 10rem;
}
ul.tab li > a {
  padding: 18rem 65rem;
  font-size: 18rem;
  line-height: 1;
  display: block;
}
ul.tab_news li > a {
  border: solid 2rem #ee2288;
}
ul.tab_event li > a {
  border: solid 2rem #ff8d1c;
}
ul.tab_disco li > a {
  border: solid 2rem #47d8fd;
}
ul.tab li.active > a {
  transition: 0.5s;
}
ul.tab_news li.active > a {
  background-color: #ee2288;
}
ul.tab_event li.active > a {
  background-color: #ff8d1c;
}
ul.tab_disco li.active > a {
  background-color: #47d8fd;
}
ul.tab li a {
  color: #333;
}
.post_list_wrapper {
  display: grid;
}
.profile_sec .cprev,
.profile_sec .cnext {
  display: grid;
  place-items: center;
  width: 60rem;
  height: 60rem;
  border-radius: 30rem;
  background-color: #fff;
  overflow: hidden;
  position: absolute;
  top: 682rem;
}
.profile_sec .cprev::before,
.profile_sec .cnext::after {
  content: "";
  width: 60rem;
  height: 60rem;
  background: url("/rswpc/wp-content/uploads/2022/05/Icon-material-keyboard-arrow-left.png") center/22rem no-repeat;
}
.profile_sec .cprev {
  left: 273rem;
}
.profile_sec .cnext {
  right: 273rem;
  transform: scaleX(-1);
}
.profile_sec {
  margin-top: 75rem;
  overflow: hidden;
  position: relative;
}
.char_upper_outer {
  position: relative;
  display: grid;
  grid-template-columns: 637rem 600rem;
  justify-content: space-between;
}
.char_upper_outer::before,
.char_upper_outer::after {
  position: absolute;
  content: "";
  left: 50%;
  transform: translateX(-50%);
  height: 920rem;
  width: 2560rem;
  z-index: -1;
  top: 0;
}
.char_upper_outer::before {
  opacity: 0.2;
  transform: translate(-50%, 457rem) rotate(14deg);
}
.char_upper_outer::after {
  transform: translate(-50%, 884rem) rotate(-7deg);
}
.char_upper_r_img {
  width: 600rem;
}
.char_upper_l_title {
  width: fit-content;
  width: -moz-fit-content;
  font-size: 48rem;
  border-width: 0;
  border-bottom: solid 5rem;
  border-image: repeating-linear-gradient(70deg, #fc7d7d 0%, #ce297f 8.63%, #c1b4e0 50%, #46cffc 90.37%, #94e4ff 100%);
  border-image-slice: 1;
}
.char_upper_l_name {
  margin-top: 115rem;
  font-size: 86rem;
  line-height: 1;
  font-weight: bold;
}
.char_upper_l_name > span {
  display: inline-block;
  font-size: 42rem;
  font-weight: normal;
}
.char_upper_l_cv {
  margin-top: 64rem;
  font-size: 32rem;
  line-height: 1;
  display: grid;
  grid-template-columns: auto auto;
  gap: 37rem;
  place-content: center left;
  align-items: center;
}
.char_upper_l_cv span {
  padding: 14rem 46rem;
  border-radius: 50rem;
  color: #fff;
}
.char_upper_l_gr {
  height: 182rem;
  display: grid;
  grid-template-columns: auto auto;
  align-items: center;
  justify-content: left;
  margin-top: 53rem;
  gap: 90rem;
}
.char_upper_l_gr_name {
  font-size: 27rem;
}
img.char_upper_l_gr_img {
  max-width: 250rem;
  width: 100%;
}
.char_upper_r_img {
  position: relative;
  z-index: -1;
}
.char_lower_outer {
  display: grid;
  grid-template-columns: 637rem 510rem;
  justify-content: space-between;
  position: relative;
  top: -90rem;
}
.profile_container {
  width: 1388rem;
  margin: auto;
}
.char_lower_l_container {
  background-color: #fff;
  padding: 77rem 0;
  display: grid;
  justify-items: center;
}
.char_lower_l_h2 {
  font-size: 30rem;
}
.char_lower_l_p {
  font-size: 16rem;
  line-height: 36rem;
  margin-top: 56rem;
  width: 484rem;
}
.char_lower_r_profile {
  margin-top: 40rem;
}
.char_lower_r_profile dl {
  display: grid;
  grid-template-columns: auto auto;
  justify-content: space-between;
  font-size: 22rem;
  line-height: 3;
  color: #fff;
  border-width: 0;
  border-bottom: solid #fff 1px;
}
.char_lower_r_h2 {
  position: relative;
  margin: 10rem 0 0 auto;
  font-size: 22rem;
  color: #fff;
  width: fit-content;
  width: -moz-fit-content;
}
.char_lower_r_h2::before {
  content: "";
  top: 50%;
  right: calc(100% + 25rem);
  position: absolute;
  height: 1rem;
  background-color: #fff;
  width: 225rem;
}

.single_title {
  padding: 58rem 0rem 8rem 0rem;
  border-style: solid;
  border-width: 0px 0px 2px 0px;
  border-color: var(--post-custom-theme-color);
}
.single_title h1 {
  font-size: 42rem;
  line-height: 1;
  font-weight: bold;
}
.contact_sec form {
  width: 879rem;
  margin: auto;
}
.contact_sec label {
  margin-top: 37rem;
}
.contact_sec label input,
.contact_sec label textarea {
  margin-top: 13rem;
  width: 879rem;
}
.contact_sec label,
.contact_sec label input,
.contact_sec label textarea,
.wpcf7 form.invalid .wpcf7-response-output {
  font-size: 20rem;
}
.footer_main .footer_btn_rbb_link {
  background-color: #555;
  height: 180rem;
  color: #fff;
  width: 100%;
  display: grid;
  place-items: center;
}
.page-id-732 .home_discography_outer,
.page-id-861 .home_discography_outer,
.page-id-732 .home_discography_outer,
.elementor-page-948 .footer_main .footer_btn_rbb_link {
  display: none;
}
.btn_rbb_link {
  background: repeating-linear-gradient(250deg, #94e4ff 0%, #46cffc 4.315%, #ce297f 45.185%, #fc7d7d 50%, #ce297f 54.63%, #46cffc 95.37%, #94e4ff 100%);
  background-size: 200%;
  background-position: 100%;
  border-radius: 58rem;
  width: 382rem;
  height: 58rem;
  display: grid;
  place-items: center;
  cursor: pointer;
}
.btn_rbb_link > span > input:hover,
.btn_rbb_link > span > input:focus {
  background-color: #fff;
  color: #111;
}
.btn_rbb_link > span > input,
.btn_rbb_link > span {
  position: relative;
  background: #fff;
  font-size: 22rem;
  border-radius: 180rem;
  color: #111;
  width: 372rem;
  height: 51rem;
  display: grid;
  place-items: center;
}
.btn_rbb_link > span::after {
  position: absolute;
  height: 16rem;
  width: 16rem;
  top: 50%;
  right: 25rem;
  transform: translateY(-50%);
  content: "";
  background: url("/rswpc/wp-content/uploads/2022/05/Icon-ionic-ios-arrow-dropright-circle.svg") center/cover no-repeat;
}
.get_applink {
  width: 297rem;
}
.get_applink img {
  vertical-align: middle;
}
.get_applink .elementor-widget-container {
  display: grid;
  place-items: center;
}
.get_applink .googleplay img {
  width: 262rem;
}
.get_applink .appstore img {
  width: 230rem;
}
.footer_btm_outer {
  width: 1440rem;
  padding: 34rem 0;
  display: grid;
  grid-template-columns: 269rem auto 178rem;
  gap: 45rem;
  justify-items: right;
  align-items: center;
  margin: auto;
}
.footer_btm_logo_wrap {
  color: #111;
  width: 169rem;
  height: 37rem;
  display: grid;
  grid-template-columns: 34rem auto;
  gap: 25rem;
  justify-self: right;
}
.footer_btm_link_wrap {
  display: grid;
  grid-template-columns: repeat(3, auto);
  gap: 15rem;
  align-items: center;
  justify-content: center;
}
.footer_btm_link_wrap > a {
  color: #111;
  position: relative;
}
.footer_btm_link_wrap > a:nth-of-type(2)::before,
.footer_btm_link_wrap > a:nth-of-type(2)::after {
  content: "";
  border: solid 1px #70707070;
  position: absolute;
  top: 0;
  bottom: 0;
}
.footer_btm_link_wrap > a:nth-of-type(2)::before {
  left: calc(100% + 7rem);
}
.footer_btm_link_wrap > a:nth-of-type(2)::after {
  left: -7rem;
}
.footer_btm_outer > small,
.footer_btm_link_wrap > a {
  font-size: 16rem;
}
.footer_btm_outer > small,
.hamburger_nav_footer > small {
  color: #ce297f;
}
.cl_sp,
.spbr {
  display: none;
}
.cl_pc {
  display: grid;
  padding: 80rem 0;
  gap: 41rem;
  width: 1620rem;
  margin: auto;
}
.cl_col {
  display: grid;
  gap: 41rem;
  place-content: center;
}
.cl_group.com {
  pointer-events: none;
  cursor: none;
}
.cl_group img {
  height: 350rem;
  width: auto;
  max-width: none;
  position: absolute;
  left: 50%;
  top: 0;
  transform: translateX(-50%);
  z-index: 10;
}
.cl_group a {
  overflow: hidden;
  width: 122rem;
  height: 350rem;
  display: inline-block;
  position: relative;
}

@media screen and (max-width: 767px) {
  html {
    font-size: 0.266666667vw;
  }
  .mv_bg {
    padding: 17rem 0;
  }
  .cl_pc {
    display: none;
  }
  .cl_sp,
  .spbr {
    display: initial;
  }
  .mv_bg {
    padding: 17rem 0 22rem;
    background: linear-gradient(250deg, #bbeeff 0%, #76ddff 25.52%, #d1afde 47.71%, #ff98ce 74.52%, #fc7d7d 100%) center/cover no-repeat;
  }

  .home_swip_slider_mv .swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet,
  .swiper-char-pagination.swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet {
    width: 9rem;
    height: 9rem;
  }
  .cl_sp .swiper-char-pagination.swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet {
    margin-bottom: 40rem;
  }
  .home_swip_slider_mv .swip_slider_slide {
    padding: 0;
  }
  .home_swip_slider_mv .swiper-pagination-bullets.swiper-pagination-horizontal {
    top: calc(100% + 5rem);
    bottom: unset;
  }
  .home_swip_slider_mv .swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet {
    width: 9rem;
    height: 9rem;
  }
  .swiper-button-prev:after,
  .swiper-button-next:after,
  .swiper-char-button-prev:after,
  .swiper-char-button-next:after {
    width: 18rem;
    height: 18rem;
    background: url("/rswpc/wp-content/uploads/2022/05/Icon-material-keyboard-arrow-left.png") center/18rem no-repeat;
  }
  .swiper-button-next,
  .swiper-button-prev,
  .swiper-char-button-prev,
  .swiper-char-button-next {
    width: 37rem;
    height: 37rem;
  }
  .cl_sp .swiper-char-button-next,
  .cl_sp .swiper-char-button-prev {
    top: unset;
    bottom: 80rem;
  }
  .swiper-rtl .swiper-button-next,
  .swiper-rtl .swiper-button-prev {
    width: 18rem;
    height: 18rem;
    border-radius: unset;
    background: transparent;
  }
  .swiper-char-button-prev,
  .swiper-button-prev,
  .swiper-rtl .swiper-button-next {
    left: 9rem;
  }
  .swiper-char-button-next,
  .swiper-button-next,
  .swiper-rtl .swiper-button-prev {
    right: 9rem;
  }
  .hamburgerswitch {
    display: block;
    position: absolute;
    right: 23rem;
    top: 50%;
    transform: translatey(-50%);
    height: 22rem;
    width: 30rem;
  }

  #page > .elementor {
    padding-top: 90.133rem;
  }

  .hamburgerswitch > i {
    background-color: #707070;
    width: 30px;
    height: 2px;
    position: absolute;
    left: 50%;
    transition: 0.25s;
  }
  .hamburgerswitch > i:nth-of-type(1) {
    top: 0;
    transform: translateX(-50%);
  }
  .hamburgerswitch > i:nth-of-type(2) {
    top: 50%;
    transform: translate(-50%, -50%);
  }
  .hamburgerswitch > i:nth-of-type(3) {
    bottom: 0;
    transform: translateX(-50%);
  }
  #hamburgermenu:checked ~ .hamburgerswitch > i:nth-of-type(1) {
    top: 50%;
    transform: translate(-50%, -50%) rotate(0.625turn);
  }
  #hamburgermenu:checked ~ .hamburgerswitch > i:nth-of-type(2) {
    top: 50%;
    transform: translate(-50%, -50%) scaleX(0);
  }
  #hamburgermenu:checked ~ .hamburgerswitch > i:nth-of-type(3) {
    bottom: 50%;
    transform: translate(-50%, 50%) rotate(-0.625turn);
  }

  .header_outer {
    display: grid;
    width: 100%;
    grid-template-columns: 98rem auto;
    padding: 15rem 7rem;
    position: relative;
    background-color: #fff;
    z-index: 1000;
  }

  .header_bg {
    display: block;
    position: absolute;
    z-index: -1;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    background-color: #fff;
    box-shadow: 0 3rem 6rem #0003;
  }

  .header_site_logo {
    display: grid;
    place-items: center;
  }
  .header_nav_outer {
    background-color: #fff;
    top: 71rem;
    padding-top: 0;
    left: 0;
    right: 0;
    position: absolute;
    z-index: -2;
    grid-template-columns: 100%;
    justify-content: center;
    justify-items: center;
    align-content: flex-start;
    overflow-y: scroll;
    height: 0;
    transition: 0.25s linear, height 0.25s;
  }
  #hamburgermenu:checked ~ .header_nav_outer {
    padding-top: 64rem;
    height: calc(100vh - 71rem);
  }
  .header_nav_main_ul {
    grid-template-columns: auto;
    gap: 23rem;
    justify-items: start;
  }
  .header_nav_main_ul li:first-child {
    display: grid;
  }
  .header_nav_main_ul a {
    font-size: 28rem;
    line-height: 32rem;
    text-indent: 19rem;
    position: relative;
  }
  .header_nav_main_ul a::before {
    content: "";
    background: linear-gradient(310deg, #47d8fd 0%, #46c5fc 25.52%, #bfbae5 47.71%, #d43d84 71.55%, #e268a5 84.52%, #ce297f 100%) center;
    background-size: 200% 200%;
    position: absolute;
    width: 7rem;
    left: 0;
    top: 0;
    bottom: 0;
  }
  .header_nav_sub_ul {
    gap: 21rem;
    padding: 44rem 0;
  }
  .header_nav_sub_ul a {
    font-size: 17rem;
    vertical-align: middle;
    line-height: 1;
  }
  .header_nav_icon {
    display: grid;
    grid-template-columns: repeat(3, 32rem);
    font-size: 32rem;
    gap: 18rem;
    justify-content: end;
    padding-bottom: 17rem;
  }
  .header_nav_icon a {
    width: 32rem;
    line-height: 1;
    display: block;
  }
  .header_nav_sub_outer .header_nav_icon {
    display: none;
  }
  .sp_header_contact_area {
    display: grid;
    justify-items: center;
    width: 100%;
    padding: 26rem 0;
    background-color: #46cffc;
  }

  .hamburger_nav_footer {
    display: grid;
    width: 100%;
    padding: 0 12rem;
    place-items: center;
  }
  .hamburger_nav_footer h2 {
    font-size: 14rem;
    padding: 13rem;
    position: relative;
  }
  .hamburger_nav_footer h2::before {
    position: absolute;
    content: "";
    top: 0;
    bottom: 0;
    left: 50%;
    transform: translateX(-50%);
    width: 114rem;
    background: url("/rswpc/wp-content/uploads/2022/04/sns_slash.svg") center/contain no-repeat;
  }
  .hamburger_nav_footer .footer_btm_link_wrap {
    padding-top: 17rem;
  }
  .hamburger_nav_footer .footer_btm_link_wrap::before {
    top: 0;
  }
  .hamburger_nav_footer > small {
    padding: 17rem 0;
  }
  .contact_sec h1,
  .news_sec h1,
  .event_sec h1,
  .disco_sec h1,
  .home_news_sec .home_sec_news_title h2,
  .home_event_sec .home_sec_event_title h2,
  .home_char_sec .home_sec_char_title h2,
  .home_sec_mv_title h1 {
    font-size: 28rem;
    margin-top: 32rem;
    margin-bottom: 22rem;
    border-width: 0;
    border-bottom-width: 3rem;
  }
  .post_list_news_tag,
  .post_list_disco_tag,
  .post_list_event_tag {
    padding: 36rem 0 40rem;
  }

  .post_list_event_tag .post_pl > a:nth-of-type(2),
  .post_list_news_tag .post_pl > a:nth-of-type(2) {
    overflow: hidden;
    min-height: 60px;
  }
  .post_date,
  .home_date {
    font-size: 12rem;
  }
  .post_news > img,
  .post_event > img {
    width: 154rem;
    height: 94rem;
  }
  .home_news > img,
  .home_event > img {
    width: 293rem;
    height: 180rem;
  }
  .post_list_wrapper .post_pl {
    width: 160rem;
    padding: 6rem;
  }
  .swip_slider_wrapper .home_pl {
    width: 320rem;
    padding: 14rem;
  }
  .home_discography_outer {
    padding: 20rem 0;
  }
  .home_discography_outer > p {
    font-size: 14rem;
    width: 320rem;
  }
  .home_discography_container {
    grid-template-columns: repeat(2, 130rem);
    gap: 32rem;
  }
  .home_discography_container > .home_discography:last-of-type {
    display: none;
  }

  .disco_pl,
  .disco_pl:after,
  .disco_pl img {
    width: 130rem;
    height: 130rem;
  }
  .disco_pl p {
    font-size: 14rem;
    margin: 5rem;
  }
  .home_swip_slider {
    width: 347rem;
    margin: auto;
  }
  .home_swip_slider_character {
    width: 375rem;
    overflow: hidden;
  }
  .home_swip_slider_character {
    height: 340rem;
  }
  .home_swip_slider_character .swip_slider_wrapper {
    height: auto !important;
  }
  .home_char_sec {
    overflow: hidden;
  }
  .home_swip_slider_character {
    margin-top: 35rem;
  }
  .swip_slider_wrapper .char_pl {
    width: 76rem;
    height: 300rem;
    padding: 5rem;
  }
  .cl_sp .swip_slider_wrapper .char_pl {
    width: 80rem;
    height: 230rem;
  }
  .cl_sp .home_swip_slider_character {
    width: 320rem;
    margin-left: auto;
    margin-right: auto;
  }
  .home_char_name {
    writing-mode: vertical-rl;
    bottom: 10rem;
    left: 13rem;
    right: unset;
    font-size: 10rem;
  }
  .home_char_name span {
    font-size: 24rem;
  }
  .home_news_sec .home_swip_slider,
  .home_event_sec .home_swip_slider,
  .home_news_sec .swip_slider_wrapper,
  .home_event_sec .swip_slider_wrapper {
    width: 320rem;
  }
  .post_list_wrapper {
    width: 330rem;
    gap: 0;
    grid-template-columns: repeat(2, 1fr);
  }
  .post_list_wrap,
  .home_list_wrap {
    height: 54rem;
    gap: 14rem;
    padding: 22rem 0 10rem;
  }
  .post_list_wrap > div,
  .post_list_wrap > a,
  .home_list_wrap > a {
    font-size: 12rem;
    border-radius: 14rem;
    padding: 5rem 17rem;
  }
  .home_date_container {
    padding-top: 18.5rem;
  }
  .post_list_news_tag .home_date_container,
  .post_list_event_tag .home_date_container,
  .home_swip_slider .home_date_container
   {
    height: 40.5rem;
  }
  .home_date_container > a,
  .home_date_container > .home_date_tag {
    padding: 5rem 10rem;
  }
  .post_list_title,
  .home_list_title,
  .home_date_container > a,
  .home_date_container > .home_date_tag {
    font-size: 12rem;
  }

  .post_discography img {
    display: block;
    margin: auto;
    width: 130rem;
    height: 130rem;
  }
  .post_list_sec .btn_rbb_link,
  .home_news_sec .btn_rbb_link,
  .home_event_sec .btn_rbb_link {
    margin: 30rem auto;
  }
  .post_list_sec .post_list_btn {
    margin-bottom: 0;
  }
  .elementor-html .single-news .elementor > div > .elementor-element,
  .elementor-html .single-event .elementor > div > .elementor-element,
  .elementor-html .single-discography .elementor > div > .elementor-element,
  .single-news #page > .elementor > .elementor-element,
  .single-event #page > .elementor > .elementor-element,
  .single-discography #page > .elementor > .elementor-element {
    max-width: 320rem;
  }

  ul.tab {
    grid-template-columns: repeat(2, 1fr);
    grid-auto-flow: row;
    gap: 10rem;
    width: 320rem;
    margin: auto;
  }
  ul.tab_news li:first-child {
    grid-column: 1/3;
  }
  ul.tab li > a {
    padding: 12rem 47rem;
    font-size: 16rem;
    text-align: center;
  }
  .temp_post_meta_wrap .temp_meta_title {
    font-size: 28rem;
    margin-top: 30rem;
  }
  .temp_date {
    font-size: 12rem;
  }
  .temp_meta {
    display: grid;
    gap: 16rem;
    padding: 30rem 0 15rem;
  }
  .profile_sec .cprev,
  .profile_sec .cnext {
    width: 37rem;
    height: 37rem;
    top: 550rem;
  }
  .profile_sec .cprev::before,
  .profile_sec .cnext::after {
    content: "";
    width: 37rem;
    height: 37rem;
    background: url("/rswpc/wp-content/uploads/2022/05/Icon-material-keyboard-arrow-left.png") center/17rem no-repeat;
  }
  .profile_sec .cprev {
    left: 25rem;
  }
  .profile_sec .cnext {
    right: 25rem;
  }

  .profile_sec {
    margin-top: 0;
    padding-bottom: 35rem;
  }
  .char_upper_outer {
    grid-template-columns: 130rem 183rem;
    justify-content: center;
    margin-top: 103rem;
    height: 500rem;
  }
  .char_upper_outer::before {
    opacity: 0.2;
    transform: translate(-50%, 408rem) rotate(25.5deg);
  }
  .char_upper_outer::after {
    transform: translate(-50%, 525rem) rotate(-25.5deg);
  }
  .char_upper_r_img {
    width: 183rem;
  }
  .char_upper_l_title {
    position: absolute;
    font-size: 28rem;
    left: 50%;
    transform: translateX(-50%);
    bottom: calc(100% + 38rem);
  }
  .char_upper_l_name {
    margin-top: 50rem;
    font-size: 36rem;
    letter-spacing: 0.16em;
    line-height: 1.5;
  }
  .char_upper_l_name > span {
    display: inline-block;
    font-size: 18rem;
    font-weight: normal;
  }
  .char_upper_l_cv {
    margin-top: 30rem;
    font-size: 18rem;
    grid-template-columns: auto;
    gap: 13rem;
    place-content: center left;
    align-items: center;
  }
  .char_upper_l_cv span {
    font-size: 12rem;
    padding: 7rem 16rem;
    width: fit-content;
    width: -moz-fit-content;
  }
  .char_upper_l_gr {
    height: unset;
    grid-template-columns: auto;
    grid-template-rows: auto 81rem;
    justify-items: center;
    justify-content: center;
    margin-top: 35rem;
    gap: 14rem;
  }
  .char_upper_l_gr_name {
    font-size: 14rem;
  }
  img.char_upper_l_gr_img {
    max-width: 80rem;
  }
  .char_upper_r_img {
    align-self: center;
  }
  .char_lower_outer {
    grid-template-columns: auto;
    top: 0;
    justify-content: unset;
  }
  .profile_container {
    width: 325rem;
  }
  .char_lower_l_container {
    padding: 25rem 0;
    order: 1;
  }
  .char_lower_l_h2 {
    font-size: 16rem;
  }
  .char_lower_l_p {
    font-size: 14rem;
    line-height: 26rem;
    margin-top: 15rem;
    width: 281rem;
  }
  .char_lower_r_profile {
    margin-top: 40rem;
  }
  .char_lower_r_profile dl {
    font-size: 14rem;
    line-height: 1;
    padding-top: 1em;
    padding-bottom: 1em;
  }
  .char_lower_r_profile dl dd {
    margin-left: 10rem;
  }
  .char_lower_r_h2 {
    position: relative;
    margin: 10rem 0 0 auto;
    font-size: 22rem;
    color: #fff;
    width: fit-content;
    width: -moz-fit-content;
  }
  .char_lower_r_h2::before {
    content: "";
    top: 50%;
    right: calc(100% + 17rem);
    position: absolute;
    height: 1rem;
    background-color: #fff;
    width: 150rem;
  }

  .footer_main .footer_btn_rbb_link {
    height: 99rem;
  }
  .btn_rbb_link {
    width: 243rem;
    height: 37rem;
  }
  .btn_rbb_link > span > input,
  .btn_rbb_link > span {
    font-size: 14rem;
    width: 235rem;
    height: 33rem;
  }
  .get_applink {
    width: 150rem;
  }
  .get_applink .googleplay img {
    width: 133rem;
  }
  .get_applink .appstore img {
    width: 116rem;
  }

  .single_title {
    padding: 0 0rem 8rem 0rem;
  }
  .single_title h1 {
    font-size: 24rem;
  }
  .contact_sec form {
    width: 273rem;
    margin: auto;
  }
  .contact_sec label {
    margin-top: 7rem;
  }
  .contact_sec label input,
  .contact_sec label textarea {
    margin-top: 4rem;
    width: 273rem;
  }
  .contact_sec label,
  .contact_sec label input,
  .contact_sec label textarea,
  .wpcf7 form.invalid .wpcf7-response-output {
    font-size: 12rem;
  }
  .footer_main .footer_btm_outer {
    width: 100%;
    padding: 20rem 12rem;
    grid-template-columns: auto auto;
    gap: 32rem 68rem;
    justify-items: initial;
    margin: auto;
  }
  .footer_btm_logo_wrap {
    width: 117rem;
    height: 25rem;
    grid-template-columns: 23rem auto;
    order: 3;
    justify-self: left;
  }
  .footer_btm_link_wrap {
    gap: 13rem;
    align-items: center;
    justify-content: center;
    position: relative;
  }
  .footer_btm_link_wrap::before {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    height: 1px;
    background-color: #bebebe;
  }
  .footer_main .footer_btm_link_wrap::before {
    bottom: -20rem;
  }
  .footer_main .footer_btm_link_wrap {
    grid-column: 1/3;
  }
  .footer_btm_link_wrap > a {
    font-size: 12rem;
  }
  .footer_btm_link_wrap > a:nth-of-type(2)::before {
    left: calc(100% + 7rem);
  }
  .footer_btm_link_wrap > a:nth-of-type(2)::after {
    left: -7rem;
  }
  .footer_btm_outer > small {
    font-size: 10rem;
    text-align: right;
  }
}
