@charset "UTF-8";

/*** variable ***/
:root {
  --brand-color: #bf0000;
  --brand-color__hover: #e80000;
  --white: #fff;
  --gray100: #f7f7f7;
  --gray200: #ebebeb;
  --gray300: #d1d1d1;
  --gray400: #b6b6b6;
  --gray500: #9c9c9c;
  --gray600: #828282;
  --gray700: #686868;
  --gray800: #4d4d4d;
  --gray900: #333;
  --black: #000;
  --pink-mobile: #ff008c;
  --link-text: #0085c7;
  --link-text--hover: #006a9e;
  --main-text: #252525;
  --notes: #5f5f5f;
  --text-highlight: #ffe569;
  --main-bg: #c5f5f2;
}

/*** /variable ***/
/*** font ***/
@font-face {
  font-family: "Rakuten Sans JP2";
  src: url("https://music.rakuten.co.jp/assets/fonts/RakutenSansJP2_W-Light.woff2")
    format("woff2");
  font-weight: 300;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: "Rakuten Sans JP2";
  src: url("https://music.rakuten.co.jp/assets/fonts/RakutenSansJP2_W-Regular.woff2")
    format("woff2");
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: "Rakuten Sans JP2";
  src: url("https://music.rakuten.co.jp/assets/fonts/RakutenSansJP2_W-Medium.woff2")
    format("woff2");
  font-weight: 500;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: "Rakuten Sans JP2";
  src: url("https://music.rakuten.co.jp/assets/fonts/RakutenSansJP2_W-DemiBold.woff2")
    format("woff2");
  font-weight: 600;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: "Rakuten Sans JP2";
  src: url("https://music.rakuten.co.jp/assets/fonts/RakutenSansJP2_W-Bold.woff2")
    format("woff2");
  font-weight: 700;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: "Rakuten Sans JP2";
  src: url("https://music.rakuten.co.jp/assets/fonts/RakutenSansJP2_W-Heavy.woff2")
    format("woff2");
  font-weight: 800;
  font-style: normal;
  font-display: swap;
}

/*** /font ***/
/*** base ***/
h1,
h2,
h3,
p {
  margin: 0;
}

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

/*** /base ***/
/*** main ***/
.rc-l-wrap {
  width: 90%;
  max-width: 80rem;
  margin: 0 auto;
}

.rc-l-inner {
  width: 94%;
  max-width: 60rem;
  margin: 0 auto;
}

.rc-l-space {
  height: 4.125rem;
}
@media screen and (min-width: 768px) {
  .rc-l-space {
    height: 5.25rem;
  }
}

/*** /main ***/
/*** button ***/
.rc-c-button {
  width: 100%;
}
.rc-c-button__link {
  position: relative;
  display: block;
  width: 100%;
  margin: 0 auto;
  padding: 12px 20px 12px 0;
  border-radius: 50px;
  -webkit-box-shadow: 4px 8px 8px 0px rgba(0, 0, 0, 0.2);
  box-shadow: 4px 8px 8px 0px rgba(0, 0, 0, 0.2);
  font-size: 4.8vw;
  font-weight: 700;
  text-align: center;
}
@media screen and (min-width: 768px) {
  .rc-c-button__link {
    max-width: 700px;
    height: 100px;
    padding-top: 0;
    padding-bottom: 0;
    font-size: 30px;
    line-height: 100px;
  }
  .rc-c-button__link:hover {
    -webkit-box-shadow: none;
    box-shadow: none;
    -webkit-transform: translate(3px, 3px);
    transform: translate(3px, 3px);
  }
}
.rc-c-button__link::before,
.rc-c-button__link::after {
  content: "";
  position: absolute;
  top: 50%;
  right: 30px;
  display: block;
  width: 10px;
  height: 3px;
  pointer-events: none;
}
.rc-c-button__link::before {
  -webkit-transform: rotate(45deg) translateY(-4px);
  transform: rotate(45deg) translateY(-4px);
}
.rc-c-button__link::after {
  -webkit-transform: rotate(-45deg) translateY(4px);
  transform: rotate(-45deg) translateY(4px);
}
.rc-c-button__link--primary {
  background-color: var(--brand-color);
  color: var(--white);
}
.rc-c-button__link--primary::before,
.rc-c-button__link--primary::after {
  background-color: var(--white);
}
.rc-c-button__link--primary:hover {
  background-color: var(--brand-color__hover);
}
.rc-c-button__link--secondary {
  border: solid 1px var(--brand-color);
  background-color: var(--white);
  color: var(--brand-color) !important;
}
.rc-c-button__link--secondary::before,
.rc-c-button__link--secondary::after {
  background-color: var(--brand-color);
}
.rc-c-button__link--mobile-pink {
  background-color: var(--pink-mobile);
  color: var(--white);
}
.rc-c-button__link--mobile-pink::before,
.rc-c-button__link--mobile-pink::after {
  background-color: var(--white);
}

/*** /button ***/
/*** image ***/
.rc-c-image {
  width: 100%;
}

/*** /image ***/
/*** notes ***/
.rc-c-notes {
  color: var(--notes);
  font-size: 0.75rem;
  line-height: 1.3333333333;
}
@media screen and (min-width: 768px) {
  .rc-c-notes {
    font-size: 16px;
  }
}
.rc-c-notes__link {
  color: var(--link-text);
}
@media screen and (min-width: 768px) {
  .rc-c-notes__link:hover {
    color: var(--link-text--hover);
    text-decoration: underline;
  }
}

/*** /notes ***/
/*** section-head ***/
.rc-c-section-head__container {
  width: 100%;
  padding: 0.75rem 0;
  background-color: var(--white);
  border-top: solid 2px #bf0000;
  border-bottom: solid 2px #bf0000;
  text-align: center;
}
.rc-c-section-head__content {
  font-family: "Rakuten Sans JP2";
  color: #bf0000;
  font-size: 1.125rem;
  font-weight: 600;
}
@media screen and (min-width: 768px) {
  .rc-c-section-head__content {
    font-size: 28px;
  }
}

/*** /section-head ***/
/*** about ***/
.rc-p-about {
  padding-bottom: 1.5rem;
  background-color: var(--brand-color);
  color: var(--white);
  font-family:
    "Noto Sans JP", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3",
    "メイリオ", "Meiryo", "ＭＳ Ｐゴシック", Arial, Verdana, sans-serif;
  font-optical-sizing: auto;
  font-weight: 400;
  font-style: normal;
  font-size: 0.875rem;
}
@media screen and (min-width: 768px) {
  .rc-p-about {
    background-color: transparent;
    background-image: url(../img/bg-red.png);
    background-size: cover;
    padding-bottom: 3.5rem;
    font-size: 1rem;
  }
}
.rc-p-about__lead-container {
  background-image: url(../img/bg-red.png);
  background-size: 280%;
}
@media screen and (min-width: 768px) {
  .rc-p-about__lead-container {
    background-image: none;
  }
}
.rc-p-about__lead {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  padding: 1rem 5% 1.5rem;
}
@media screen and (min-width: 768px) {
  .rc-p-about__lead {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
    -ms-flex-direction: row-reverse;
    flex-direction: row-reverse;
  }
}
@media screen and (min-width: 768px) {
  .rc-p-about__lead-item {
    width: 50%;
  }
}
.rc-p-about__lead-item--text-container {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  gap: 0.875rem;
  margin-bottom: 0.625rem;
}
@media screen and (min-width: 768px) {
  .rc-p-about__lead-item--text-container {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 1.5rem;
  }
}
.rc-p-about__lead-item--icon {
  display: block;
  width: 3.75rem !important;
  height: 3.75rem !important;
  margin: 0 auto;
}
@media screen and (min-width: 768px) {
  .rc-p-about__lead-item--icon {
    width: 5.625rem !important;
    height: 5.625rem !important;
    margin-top: 2.5rem;
  }
}
.rc-p-about__lead-item--cate {
  margin: 0 4rem;
}
@media screen and (min-width: 768px) {
  .rc-p-about__lead-item--cate {
    margin-top: 0.75rem;
  }
}
.rc-p-about__content {
  margin-bottom: 0.5rem;
  padding: 1rem 0 1.25rem;
  border-radius: 0.75rem;
  background-color: var(--white);
}
@media screen and (min-width: 768px) {
  .rc-p-about__content {
    margin-bottom: 0;
    padding: 2.5rem 0;
  }
}
.rc-p-about__content-head {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  margin-bottom: 0.75rem;
  font-family: "Rakuten Sans JP2";
  color: var(--brand-color);
  font-size: 1.125rem;
  font-weight: 700;
}
@media screen and (min-width: 768px) {
  .rc-p-about__content-head {
    font-size: 20px;
  }
}
.rc-p-about__icon {
  width: 1.5rem;
  height: 100%;
  margin-right: 0.25rem;
}
@media screen and (min-width: 768px) {
  .rc-p-about__icon {
    width: 24px;
  }
}
.rc-p-about__icon-image {
  vertical-align: sub;
}
.rc-p-about__content-body {
  margin-bottom: 0.75rem;
  font-family: "Rakuten Sans JP2";
  color: var(--gray900);
  font-size: 1.25rem;
  font-weight: 600;
  text-align: center;
  line-height: 1.2;
}
@media screen and (min-width: 768px) {
  .rc-p-about__content-body {
    margin-bottom: 0;
    font-size: 24px;
    line-height: 1.2857142857;
  }
}
@media screen and (min-width: 768px) {
  .rc-p-about__content-notes {
    text-align: center;
  }
}
.rc-p-about__content-image-container {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  color: var(--gray900);
}
@media screen and (min-width: 768px) {
  .rc-p-about__content-image-container {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    margin-bottom: 1rem;
  }
}
.rc-p-about__content-image {
  margin-bottom: 0.75rem;
}
@media screen and (min-width: 768px) {
  .rc-p-about__content-image {
    width: 49%;
    margin-bottom: 0;
  }
}
.rc-p-about__content-text-container {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  margin-bottom: 0.5rem;
}
.rc-p-about__content-text {
  font-family: "Rakuten Sans JP2";
  font-size: 1.25rem;
  font-weight: 600;
  line-height: 1.2;
}
.rc-p-about .c-content {
  margin-top: 1.5rem;
  padding: 1rem 0 1.25rem;
  border-radius: 0.75rem;
  background-color: var(--white);
}
@media screen and (min-width: 768px) {
  .rc-p-about .c-content {
    padding: 2.5rem 0;
  }
}
.rc-p-about .c-content__head {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  color: var(--brand-color);
}
@media screen and (min-width: 768px) {
  .rc-p-about .c-content__head {
    font-size: 1.25rem;
  }
}
.rc-p-about .c-content__lead {
  text-align: center;
}
@media screen and (min-width: 768px) {
  .rc-p-about .c-content__lead {
    font-size: 1.75rem;
  }
}
.rc-p-about .c-media__icon {
  width: 1.5rem;
  height: 100%;
  margin-right: 0.25rem;
}
@media screen and (min-width: 768px) {
  .rc-p-about .c-media__icon {
    width: 1.625rem;
  }
}
.rc-p-about .c-media__icon-image {
  vertical-align: sub;
}
.rc-p-about .p-benefit {
  padding-bottom: 1.5rem;
  background-color: #fff4cd;
}
.rc-p-about .p-benefit__head {
  margin-bottom: 0.5rem;
}
@media screen and (min-width: 768px) {
  .rc-p-about .p-benefit__head {
    margin-bottom: 1rem;
  }
}
.rc-p-about .p-benefit__lead {
  margin-bottom: 0.5rem;
}
@media screen and (min-width: 768px) {
  .rc-p-about .p-benefit__lead {
    margin-bottom: 1rem;
  }
}
.rc-p-about .p-benefit__image--point {
  margin-bottom: 0.75rem;
}
@media screen and (min-width: 768px) {
  .rc-p-about .p-benefit__image--point {
    width: 49%;
  }
}
.rc-p-about .p-benefit__image--rank-box {
  margin-bottom: 0.75rem;
}
@media screen and (min-width: 768px) {
  .rc-p-about .p-benefit__image--rank-box {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
  }
}
.rc-p-about .p-benefit__image--rank {
  padding: 0.75rem 0;
  border-bottom: solid 1px #e9e9e9;
}
@media screen and (min-width: 768px) {
  .rc-p-about .p-benefit__image--rank {
    width: 48%;
    padding: 1.5rem;
  }
}
.rc-p-about .p-benefit__image--rank:last-of-type {
  border: none;
}
@media screen and (min-width: 768px) {
  .rc-p-about .p-benefit__image-container {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
  }
}
.rc-p-about__details {
  margin-top: 3rem;
}
@media screen and (min-width: 768px) {
  .rc-p-about__details {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    row-gap: 1.25rem;
    margin-bottom: 1.875rem;
  }
}
.rc-p-about__details-item {
  margin-bottom: 1.25rem;
  padding: 0.625rem 0.75rem 1.125rem;
  border: solid 1px var(--white);
  border-radius: 0.375rem;
}
@media screen and (min-width: 768px) {
  .rc-p-about__details-item {
    width: 49%;
    margin-bottom: 0;
    padding: 0.75rem 1.25rem 1.5rem;
  }
}
.rc-p-about__details-item-head {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  gap: 0.5rem;
  margin-bottom: 1rem;
}
.rc-p-about__details-item-head-icon {
  width: 3rem;
  margin-left: 0.25rem;
}
.rc-p-about__details-item-head-text {
  font-family: "Rakuten Sans JP2";
  font-size: 1.25rem;
  font-weight: 600;
}
.rc-p-about__details-item-body {
  font-family: "Rakuten Sans JP2";
}
.rc-p-about__details-item-body-link {
  color: #32baff;
}
.rc-p-about__details-item-body-link:hover {
  text-decoration: underline;
}
.rc-p-about__notes {
  margin-bottom: 0.5rem;
  color: var(--white);
  text-align: center;
}
@media screen and (min-width: 768px) {
  .rc-p-about__notes {
    margin-bottom: 0.75rem;
  }
}
.rc-p-about__copyright {
  display: block;
  font-size: 0.625rem;
  line-height: 1.2;
}

/*** /about ***/
/*** align ***/
.rc-u-align--center {
  text-align: center;
}
.rc-u-align--left {
  text-align: left;
}

@media screen and (min-width: 768px) {
  .rc-u-align-pc--center {
    text-align: center;
  }
}

/*** /align ***/
/*** color ***/
.rc-u-color--brand {
  color: var(--brand-color);
}
.rc-u-color--highlight {
  color: var(--text-highlight);
}

/*** /color ***/
/*** only ***/
.rc-u-onlySP {
  display: block;
}
@media screen and (min-width: 768px) {
  .rc-u-onlySP {
    display: none;
  }
}
.rc-u-onlySP--flex {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
@media screen and (min-width: 768px) {
  .rc-u-onlySP--flex {
    display: none;
  }
}
.rc-u-onlySP--inlineblock {
  display: inline-block;
}

.rc-u-onlyPC {
  display: none;
}
@media screen and (min-width: 768px) {
  .rc-u-onlyPC {
    display: block;
  }
}
.rc-u-onlyPC--flex {
  display: none;
}
@media screen and (min-width: 768px) {
  .rc-u-onlyPC--flex {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
}

/*** /only ***/
/*** margin ***/
.rc-u-margin--0 {
  margin: 0;
}

.rc-u-margin-top--8 {
  margin-top: 0.5rem;
}
.rc-u-margin-top--20 {
  margin-top: 1.25rem;
}
.rc-u-margin-top--32 {
  margin-top: 2rem;
}

@media screen and (min-width: 768px) {
  .rc-u-margin-top-pc--16 {
    margin-top: 1rem;
  }
}

.rc-u-margin-bottom--8 {
  margin-bottom: 0.5rem !important;
}
.rc-u-margin-bottom--10 {
  margin-bottom: 0.625rem !important;
}
.rc-u-margin-bottom--12 {
  margin-bottom: 0.75rem !important;
}
.rc-u-margin-bottom--16 {
  margin-bottom: 1rem !important;
}

@media screen and (min-width: 768px) {
  .rc-u-margin-bottom-pc--20 {
    margin-bottom: 1.25rem !important;
  }
  .rc-u-margin-bottom-pc--28 {
    margin-bottom: 1.75rem !important;
  }
  .rc-u-margin-bottom-pc--32 {
    margin-bottom: 2rem !important;
  }
}

/*** /margin ***/ /*# sourceMappingURL=rch.css.map */
