@charset "UTF-8";
body {
  min-width: 950px;
}

.l-moduleWrap {
  font-family: "Hiragino Kaku Gothic ProN", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, sans-serif;
  font-feature-settings: 'palt';
  color: #333333;
}

#breadcrumbs a {
  color: #333333;
}

.l-width950 {
  width: 950px;
  margin: 0 auto;
}

.imageBox.-center {
  text-align: center;
}

.imageBox img {
  max-width: 100%;
}

.imageBox.-w336 {
  position: relative;
  width: 336px;
  margin: 0 auto;
}

.imageBox.-w336::before {
  display: block;
  width: 100%;
  padding-top: 100%;
  content: "";
}

.imageBox.-w336--1x1::before, .imageBox.-w336.-ratio1x1::before {
  padding-top: 100%;
}

.imageBox.-w336--16x9::before, .imageBox.-w336.-ratio16x9::before {
  padding-top: 56.25%;
}

.imageBox.-w336 img {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  display: block;
  min-width: 30%;
  max-width: 100%;
  min-height: 30%;
  max-height: 100%;
  margin: auto;
}

.imageBox.-w336 a:hover img {
  opacity: 0.8;
}

.textBox.-center {
  text-align: center;
}

.textBox.-right {
  text-align: right;
}

.textBox__text {
  font-size: 14px;
  line-height: 1.57143;
}

.textBox a.textBox__link {
  color: #333333;
  text-decoration: none;
}

.textBox a.textBox__link:hover {
  text-decoration: underline;
}

.mainVisual {
  width: 100%;
  overflow: hidden;
}

.mainVisual__imageBox {
  text-align: center;
}

.mainVisual__imageBox img {
  position: relative;
  left: 50%;
  display: block;
  transform: translateX(-50%);
}

.mainVisual .swiper-slide {
  overflow: hidden;
}

.mainVisual .swiper-container {
  width: 950px;
}

.mainVisual .swiper-pagination-bullet {
  width: 10px;
  height: 10px;
  background: #d1d1d1;
  opacity: 1;
}

.mainVisual .swiper-pagination-bullet-active {
  background: #ffffff;
}

.mainVisual.swiper-container-horizontal > .swiper-pagination-bullets .swiper-pagination-bullet {
  margin: 0 6px;
}

.mainVisual .swiper-button-next,
.mainVisual .swiper-button-prev {
  width: 33px;
  height: 48px;
  margin-top: -24px;
  color: #666666;
  background: rgba(255, 255, 255, 0.8);
}

.mainVisual .swiper-button-next::after,
.mainVisual .swiper-button-prev::after {
  display: none;
  font-size: 17px;
  font-weight: bold;
}

.mainVisual .swiper-button-next::before,
.mainVisual .swiper-button-prev::before {
  font-weight: bold !important;
  text-shadow: 0.2px 0.2px 0, 0.2px -0.2px 0, -0.2px 0.2px 0, -0.2px -0.2px 0, 0.2px 0 0;
}

.mainVisual .swiper-button-next,
.mainVisual .swiper-container-rtl .swiper-button-prev {
  right: calc((100% - 950px) / 2);
}

.mainVisual .swiper-button-prev,
.mainVisual .swiper-container-rtl .swiper-button-next {
  left: calc((100% - 950px) / 2);
}

.userNavi {
  margin-top: 24px;
}

.userNavi__textLinkContainer {
  text-align: center;
}

.userNavi__textLink {
  font-size: 11px;
  line-height: 1.45455;
  text-decoration: none;
}

.userNavi__textLink::before {
  margin: 0 3px 0 0;
}

.userNavi__textLink.ra-i-mail::before {
  position: relative;
  top: 1px;
}

.userNavi__textLink:not(:first-child) {
  margin-left: 8px;
}

.userNavi a.userNavi__textLink {
  color: #333333;
}

.userNavi a.userNavi__textLink:hover {
  padding-bottom: 1px;
  text-decoration: underline;
}

.userNavi a.userNavi__textLink.-pink {
  color: #ff41be !important;
}

.userNavi .userNavi__textLink.-pink {
  color: #ff41be !important;
}

.userNavi__tagContainer {
  display: flex;
  flex-wrap: wrap;
}

.userNavi__tag {
  font-size: 10px;
  font-weight: bold !important;
  line-height: 1.8;
  padding: 0 16px;
  margin: 0 8px 8px 0;
  background: #ebebeb;
}

.headline {
  margin-bottom: 24px;
  text-align: center;
}

.headline__leadText {
  font-size: 14px;
  line-height: 1.57143;
  margin: 8px 0 0;
}

.container.-bg-gray {
  background-color: #f7f7f7;
}

.container.-bg-light-yellow {
  background-color: #fff8cb;
}

.container.-bg-light-yellow2 {
  background-color: #ffec5d;
}

.container.-bg-image--01 {
  background-color: #ffec5d;
  background-image: url(https://r.r10s.jp/evt/event/family/_pc/img/2019/bg_image_01.png?v=201912180942);
  background-repeat: no-repeat;
  background-position: top center;
}

.container.-bg-image--02 {
  background-color: #ffec5d;
  background-image: url(https://r.r10s.jp/evt/event/family/_pc/img/2019/bg_image_02.png?v=201912180942);
  background-repeat: no-repeat;
  background-position: top center;
}

.container.-bg-image--03 {
  min-height: 321px;
  background-image: url(https://r.r10s.jp/evt/event/family/_pc/img/2019/bg_image_03.png?v=201912180942);
  background-repeat: no-repeat;
  background-position: center top;
  background-size: contain;
}

.container.-bg-image--04 {
  background-color: #ffec5d;
  background-image: url(https://r.r10s.jp/evt/event/family/_pc/img/2019/bg_image_04.png?v=201912180942);
  background-repeat: no-repeat;
  background-position: top center;
}

.subHeadline {
  text-align: center;
}

.subHeadline__title {
  font-size: 14px;
  line-height: 1.57143;
  margin: 0 0 8px;
}

.column1 {
  display: flex;
  flex-wrap: wrap;
}

.column1.-center {
  justify-content: center;
}

.column1 > * {
  margin-bottom: 8px !important;
}

.column1.-mb-0 > * {
  margin-bottom: 0 !important;
}

.column1.-mb-4 > * {
  margin-bottom: 4px !important;
}

.column1.-mb-8 > * {
  margin-bottom: 8px !important;
}

.column1.-mb-12 > * {
  margin-bottom: 12px !important;
}

.column1.-mb-16 > * {
  margin-bottom: 16px !important;
}

.column1.-mb-20 > * {
  margin-bottom: 20px !important;
}

.column1.-mb-24 > * {
  margin-bottom: 24px !important;
}

.column1.-mb-28 > * {
  margin-bottom: 28px !important;
}

.column1.-mb-32 > * {
  margin-bottom: 32px !important;
}

.column1.-mb-48 > * {
  margin-bottom: 48px !important;
}

.column1.-mb-64 > * {
  margin-bottom: 64px !important;
}

.column1 > * {
  flex-basis: 100%;
}

.column2 {
  display: flex;
  flex-wrap: wrap;
}

.column2.-center {
  justify-content: center;
}

.column2 > * {
  margin-bottom: 8px !important;
}

.column2.-mb-0 > * {
  margin-bottom: 0 !important;
}

.column2.-mb-4 > * {
  margin-bottom: 4px !important;
}

.column2.-mb-8 > * {
  margin-bottom: 8px !important;
}

.column2.-mb-12 > * {
  margin-bottom: 12px !important;
}

.column2.-mb-16 > * {
  margin-bottom: 16px !important;
}

.column2.-mb-20 > * {
  margin-bottom: 20px !important;
}

.column2.-mb-24 > * {
  margin-bottom: 24px !important;
}

.column2.-mb-28 > * {
  margin-bottom: 28px !important;
}

.column2.-mb-32 > * {
  margin-bottom: 32px !important;
}

.column2.-mb-48 > * {
  margin-bottom: 48px !important;
}

.column2.-mb-64 > * {
  margin-bottom: 64px !important;
}

.column2 > * {
  flex-basis: calc((100% - 32px) / 2 - 0.1px);
  margin-right: 32px;
}

.column2 > *:nth-of-type(2n), .column2 > *:last-child {
  margin-right: 0;
}

.column3 {
  display: flex;
  flex-wrap: wrap;
}

.column3.-center {
  justify-content: center;
}

.column3 > * {
  margin-bottom: 8px !important;
}

.column3.-mb-0 > * {
  margin-bottom: 0 !important;
}

.column3.-mb-4 > * {
  margin-bottom: 4px !important;
}

.column3.-mb-8 > * {
  margin-bottom: 8px !important;
}

.column3.-mb-12 > * {
  margin-bottom: 12px !important;
}

.column3.-mb-16 > * {
  margin-bottom: 16px !important;
}

.column3.-mb-20 > * {
  margin-bottom: 20px !important;
}

.column3.-mb-24 > * {
  margin-bottom: 24px !important;
}

.column3.-mb-28 > * {
  margin-bottom: 28px !important;
}

.column3.-mb-32 > * {
  margin-bottom: 32px !important;
}

.column3.-mb-48 > * {
  margin-bottom: 48px !important;
}

.column3.-mb-64 > * {
  margin-bottom: 64px !important;
}

.column3 > * {
  width: calc((100% - 32px * 2) / 3 - 0.1px);
  margin-right: 32px;
}

.column3 > *:nth-of-type(3n), .column3 > *:last-child {
  margin-right: 0;
}

.column4 {
  display: flex;
  flex-wrap: wrap;
}

.column4.-center {
  justify-content: center;
}

.column4 > * {
  margin-bottom: 8px !important;
}

.column4.-mb-0 > * {
  margin-bottom: 0 !important;
}

.column4.-mb-4 > * {
  margin-bottom: 4px !important;
}

.column4.-mb-8 > * {
  margin-bottom: 8px !important;
}

.column4.-mb-12 > * {
  margin-bottom: 12px !important;
}

.column4.-mb-16 > * {
  margin-bottom: 16px !important;
}

.column4.-mb-20 > * {
  margin-bottom: 20px !important;
}

.column4.-mb-24 > * {
  margin-bottom: 24px !important;
}

.column4.-mb-28 > * {
  margin-bottom: 28px !important;
}

.column4.-mb-32 > * {
  margin-bottom: 32px !important;
}

.column4.-mb-48 > * {
  margin-bottom: 48px !important;
}

.column4.-mb-64 > * {
  margin-bottom: 64px !important;
}

.column4 > * {
  width: calc((100% - 32px * 3) / 4 - 0.1px);
  margin-right: 32px;
}

.column4 > *:nth-of-type(4n), .column4 > *:last-child {
  margin-right: 0;
}

.helpful__link {
  display: display;
}

.helpful a.helpful__link {
  color: #333333;
  text-decoration: none;
}

.helpful__imageBox {
  position: relative;
  flex-basis: 30.7%;
}

.helpful__imageBox::before {
  display: block;
  width: 100%;
  padding-top: 100%;
  content: "";
}

.helpful__imageBox--1x1::before, .helpful__imageBox.-ratio1x1::before {
  padding-top: 100%;
}

.helpful__imageBox--16x9::before, .helpful__imageBox.-ratio16x9::before {
  padding-top: 56.25%;
}

.helpful__imageBox img {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  display: block;
  min-width: 30%;
  max-width: 100%;
  min-height: 30%;
  max-height: 100%;
  margin: auto;
}

.helpful__imageBox a:hover img {
  opacity: 0.8;
}

.helpful__imageBox:hover img {
  opacity: 0.8;
}

.helpful__textBox {
  margin: 8px 0 0;
}

.helpful__tag {
  font-size: 10px;
  font-weight: bold !important;
  line-height: 2;
  display: inline-block;
  padding: 0 8px;
  color: #ffffff;
  text-align: center;
}

.helpful__tag--purple, .helpful__tag.-purple, .helpful__tag.papamama {
  background-color: #7e50d6;
}

.helpful__tag--pink, .helpful__tag.-pink, .helpful__tag.fashion, .helpful__tag.beauty {
  background-color: #ff41be;
}

.helpful__tag--dark-pink, .helpful__tag.-dark-pink {
  background-color: #cc119b;
}

.helpful__tag--red, .helpful__tag.-red, .helpful__tag.food {
  background-color: #f20707;
}

.helpful__tag--orange, .helpful__tag.-orange, .helpful__tag.lifestyle {
  background-color: #ed6328;
}

.helpful__tag--yellow, .helpful__tag.-yellow {
  background-color: #ffc400;
}

.helpful__tag--green, .helpful__tag.-green, .helpful__tag.interior, .helpful__tag.activity {
  background-color: #16af6f;
}

.helpful__tag--light-blue, .helpful__tag.-light-blue, .helpful__tag.training, .helpful__tag.childcare {
  background-color: #26addd;
}

.helpful__tag--black, .helpful__tag.-black {
  background-color: #333333;
}

.helpful__text {
  font-size: 14px;
  line-height: 1.57143;
  margin: 8px 0 0;
}

.helpful__text--2lines {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  height: 45px;
  overflow: hidden;
}

.helpful__text:hover {
  text-decoration: underline;
}

.helpful__subText {
  font-size: 12px;
  line-height: 2;
}

.helpful__subText--date {
  margin: 0 8px 0 0;
}

.linkTextList {
  display: flex;
  flex-wrap: wrap;
}

.linkTextList.-center {
  justify-content: center;
}

.linkTextList__item {
  margin-right: 32px;
}

.linkTextList a.linkTextList__link {
  font-size: 12px;
  line-height: 1.5;
  position: relative;
  color: #333333;
  text-decoration: none;
}

.linkTextList a.linkTextList__link::before {
  font-size: 12px;
  font-weight: bold !important;
  line-height: 1.5;
  position: absolute;
  right: -16px;
  bottom: 0;
}

.linkTextList a.linkTextList__link.-anchor::before {
  right: -19px;
  transform: rotate(90deg);
}

.linkButton a.linkButton__link {
  font-size: 15px;
  font-weight: bold !important;
  line-height: 1.33333;
  position: relative;
  display: block;
  padding: 18px 24px 17px 24px;
  text-align: center;
  text-decoration: none;
}

.linkButton a.linkButton__link.-text2lines {
  padding: 8px 24px 8px 8px;
}

.linkButton a.linkButton__link::before {
  position: absolute;
  top: calc(50% - 7px);
  right: 12px;
  font-size: 14px;
  font-weight: bold !important;
}

.linkButton a.linkButton__link:hover {
  opacity: 0.8;
}

.linkButton a.linkButton__link.-black {
  color: #333333;
  background-color: #ffffff;
  border: 1px solid #e0e0e0;
}

.linkButton a.linkButton__link.-black::before {
  color: #d1d1d1;
}

.linkButton a.linkButton__link.-white {
  color: #333333;
  background-color: #ffffff;
  border: 1px solid #e0e0e0;
}

.linkButton a.linkButton__link.-white::before {
  color: #d1d1d1;
}

.linkButton a.linkButton__link.-white-pink {
  color: #ff41be;
  background-color: #ffffff;
  border: 1px solid #ff41be;
}

.linkButton a.linkButton__link.-white-pink::before {
  color: #ff41be;
}

.linkButton a.linkButton__link.-light-blue {
  color: #ffffff;
  background-color: #26addd;
}

.linkButton a.linkButton__link.-light-blue::before {
  color: #ffffff;
}

.linkButton a.linkButton__link.-green {
  color: #ffffff;
  background-color: #16af6f;
}

.linkButton a.linkButton__link.-green::before {
  color: #ffffff;
}

.linkButton a.linkButton__link.-yellow {
  color: #ffffff;
  background-color: #ffc400;
}

.linkButton a.linkButton__link.-yellow::before {
  color: #ffffff;
}

.linkButton a.linkButton__link.-red {
  color: #ffffff;
  background-color: #f20707;
}

.linkButton a.linkButton__link.-red::before {
  color: #ffffff;
}

.linkButton a.linkButton__link.-pink {
  color: #ffffff;
  background-color: #ff41be;
}

.linkButton a.linkButton__link.-purple::before {
  color: #ffffff;
}

.linkButton a.linkButton__link.-purple {
  color: #ffffff;
  background-color: #7e50d6;
}

.linkButton a.linkButton__link.-pink::before {
  color: #ffffff;
}

.linkButton__text {
  font-size: 12px;
  line-height: 1;
  margin: 8px 0 0 0;
  text-align: center;
}

.linkItem {
  display: flex;
  flex-basis: calc(100% / 3 - 0.1px);
  align-items: center;
  margin-right: 0;
}

.linkItem.-orange {
  background-color: #ed6328;
}

.linkItem.-green {
  background-color: #16af6f;
}

.linkItem.-pink {
  background-color: #ff41be;
}

.linkItem.-red {
  background-color: #f20707;
}

.linkItem.-purple {
  background-color: #7e50d6;
}

.linkItem__link {
  position: relative;
  display: flex;
  flex-basis: 100%;
  flex-direction: row;
  align-items: flex-start;
  padding: 15px 8px 15px;
  font-weight: bold;
  color: #ffffff !important;
  text-decoration: none !important;
}

.linkItem__link::before {
  position: absolute;
  top: calc(50% - 8px);
  right: 16px;
  font-size: 16px;
  font-weight: bold !important;
  color: #ffffff;
}

.linkItem__link:hover {
  opacity: 0.8;
}

.linkItem__imageBox {
  position: relative;
  flex-basis: 50px;
  margin-left: 8px;
}

.linkItem__imageBox::before {
  display: block;
  width: 100%;
  padding-top: 100%;
  content: "";
}

.linkItem__imageBox--1x1::before, .linkItem__imageBox.-ratio1x1::before {
  padding-top: 100%;
}

.linkItem__imageBox--16x9::before, .linkItem__imageBox.-ratio16x9::before {
  padding-top: 56.25%;
}

.linkItem__imageBox img {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  display: block;
  min-width: 30%;
  max-width: 100%;
  min-height: 30%;
  max-height: 100%;
  margin: auto;
}

.linkItem__imageBox a:hover img {
  opacity: 0.8;
}

.linkItem__textBox {
  flex-basis: calc(100% - 50px);
  align-self: center;
  margin: 0 38px 0 8px;
}

.linkItem__title {
  font-size: 18px;
  line-height: 1.5;
}

.linkItem__text {
  font-size: 12px;
  line-height: 1.5;
}

.linkItem__subLinkContainer {
  display: flex;
  flex-wrap: wrap;
  margin: 4px 0 0;
}

.linkItem a.linkItem__subLink {
  font-size: 12px;
  line-height: 1.5;
  position: relative;
  display: block;
  padding: 0 16px 0 0;
  margin-right: 8px;
  color: #333333;
}

.linkItem a.linkItem__subLink::before {
  position: absolute;
  top: calc(50% - 12px);
  right: 0;
  font-size: 16px;
  color: #e0e0e0;
}

.banner__imageBox {
  position: relative;
}

.banner__imageBox::before {
  display: block;
  width: 100%;
  padding-top: 100%;
  content: "";
}

.banner__imageBox--1x1::before, .banner__imageBox.-ratio1x1::before {
  padding-top: 100%;
}

.banner__imageBox--16x9::before, .banner__imageBox.-ratio16x9::before {
  padding-top: 56.25%;
}

.banner__imageBox img {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  display: block;
  min-width: 30%;
  max-width: 100%;
  min-height: 30%;
  max-height: 100%;
  margin: auto;
}

.banner__imageBox a:hover img {
  opacity: 0.8;
}

.banner__link:hover img {
  opacity: 0.8;
}

.recommended__imageBox {
  position: relative;
}

.recommended__imageBox::before {
  display: block;
  width: 100%;
  padding-top: 100%;
  content: "";
}

.recommended__imageBox--1x1::before, .recommended__imageBox.-ratio1x1::before {
  padding-top: 100%;
}

.recommended__imageBox--16x9::before, .recommended__imageBox.-ratio16x9::before {
  padding-top: 56.25%;
}

.recommended__imageBox img {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  display: block;
  min-width: 30%;
  max-width: 100%;
  min-height: 30%;
  max-height: 100%;
  margin: auto;
}

.recommended__imageBox a:hover img {
  opacity: 0.8;
}

.recommended__text {
  font-size: 11px;
  line-height: 1.54545;
  margin: 4px 0 0;
}

.recommended a.recommended__imageLink {
  color: #333333;
}

.contentsItem__imageBox {
  flex-basis: 30.7%;
  text-align: center;
}

.contentsItem__textBox {
  margin: 24px 0 0;
}

.contentsItem__textBox.-mh-168 {
  min-height: 168px;
}

.contentsItem__textBox.-mh-230 {
  min-height: 230px;
}

.contentsItem__lead {
  font-size: 12px;
  font-weight: bold !important;
  line-height: 2;
}

.contentsItem__title {
  font-size: 18px;
  font-weight: bold !important;
  line-height: 1.33333;
  text-align: center;
}

.contentsItem__text {
  font-size: 14px;
  line-height: 1.57143;
  margin: 8px 0 0;
}

.contentsItem__text.-center {
  text-align: center;
}

.contentsItem__text.-small {
  font-size: 12px;
  line-height: 1.83333;
}

.contentsItem__button {
  margin: 24px 0 0;
  text-align: center;
}

.contentsItem__link {
  font-size: 14px;
  font-weight: bold !important;
  line-height: 1.57143;
  position: relative;
  display: inline-block;
  padding: 0 16px 0 0;
  margin: 8px 0 0;
  text-decoration: none;
}

.contentsItem__link::before {
  position: absolute;
  top: calc(50% - 11px);
  right: 0;
  color: #d1d1d1;
}

.contentsItem__link:hover {
  text-decoration: underline;
}

.contentsItem a.contentsItem__linkText {
  color: #333333;
  text-decoration: none;
}

.contentsItem a.contentsItem__linkText:hover {
  text-decoration: underline;
}

.contentsItem a.contentsItem__linkContainer {
  display: flex;
  color: #333333;
}

.contentsItem a.contentsItem__link {
  color: #333333;
}

.footer {
  padding: 56px 0 32px 0;
  margin: 40px 0 0;
  background-color: #f7f7f7;
}

.footer__imageBox {
  margin: 0 0 32px;
  text-align: center;
}

.footer__contents {
  padding: 0;
}

.footer__title {
  font-size: 18px;
  line-height: 1.33333;
  margin: 0 0 16px;
  font-weight: bold;
}

.footer__list {
  padding: 0;
}

.footer__item {
  font-size: 14px;
  line-height: 1.57143;
}

.footer__item.facebook {
  background: url(https://r.r10s.jp/evt/event/family/_pc/img/2019/footer_icon_fb.png?v=201912180942) no-repeat;
}

.footer__item.mail {
  background: url(https://r.r10s.jp/evt/event/family/_pc/img/2019/footer_icon_mail.png?v=201912180942) no-repeat;
}

.footer__item.line {
  background: url(https://r.r10s.jp/evt/event/family/_pc/img/2019/footer_icon_line.png) no-repeat;
}

.footer__item--icon {
  font-size: 12px;
  position: relative;
  display: block;
  padding: 0 0 0 40px;
}

.footer a.footer__link {
  color: #333333;
  text-decoration: none;
}

.footer a.footer__link:hover {
  text-decoration: underline;
}

.footer__itemTitle {
  margin: 0 0 8px;
}

.modal {
  position: fixed;
  top: 100vh;
  left: 0;
  z-index: 500;
  width: 100%;
  height: 100%;
  padding: 24px 0 0;
  overflow: auto;
  background: #f7f7f7;
  transition: all 0.4s ease;
}

.modal.js-active {
  top: 0;
}

.modal__header {
  position: relative;
}

.modal__title {
  font-size: 14px;
  line-height: 1.57143;
  margin: 0 0 16px 0;
  text-align: center;
}

.modal__close {
  position: absolute;
  top: -6px;
  right: 16px;
  padding: 8px;
}

.modal__close::before {
  font-size: 16px;
  font-weight: bold !important;
}

.bannerCarousel {
  padding: 24px 0;
}

.bannerCarousel.-bg-gray {
  background-color: #f7f7f7;
}

.bannerCarousel__imageBox {
  position: relative;
}

.bannerCarousel__imageBox::before {
  display: block;
  width: 100%;
  padding-top: 100%;
  content: "";
}

.bannerCarousel__imageBox--1x1::before, .bannerCarousel__imageBox.-ratio1x1::before {
  padding-top: 100%;
}

.bannerCarousel__imageBox--16x9::before, .bannerCarousel__imageBox.-ratio16x9::before {
  padding-top: 56.25%;
}

.bannerCarousel__imageBox img {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  display: block;
  min-width: 30%;
  max-width: 100%;
  min-height: 30%;
  max-height: 100%;
  margin: auto;
}

.bannerCarousel__imageBox a:hover img {
  opacity: 0.8;
}

.bannerCarousel__title {
  font-size: 12px;
  line-height: 2.33333;
}

.bannerCarousel__title.center {
  text-align: center;
}

.bannerCarousel__swiper {
  width: 950px;
  margin: 0 auto;
}

.bannerCarousel__text {
  display: none;
}

.bannerCarousel .swiper-button-next,
.bannerCarousel .swiper-button-prev {
  width: 26px;
  height: 32px;
  margin-top: -16px;
  color: #666666;
  background: rgba(255, 255, 255, 0.8);
}

.bannerCarousel .swiper-button-next::after,
.bannerCarousel .swiper-button-prev::after {
  display: none;
  font-size: 17px;
  font-weight: bold;
}

.bannerCarousel .swiper-button-next::before,
.bannerCarousel .swiper-button-prev::before {
  font-weight: bold !important;
  text-shadow: 0.2px 0.2px 0, 0.2px -0.2px 0, -0.2px 0.2px 0, -0.2px -0.2px 0, 0.2px 0 0;
}

.bannerCarousel .swiper-button-next,
.bannerCarousel .swiper-container-rtl .swiper-button-prev {
  right: calc((100% - 950px) / 2);
}

.bannerCarousel .swiper-button-prev,
.bannerCarousel .swiper-container-rtl .swiper-button-next {
  left: calc((100% - 950px) / 2);
}

.floatingBanner__buttonBox {
  position: fixed;
  right: 16px;
  bottom: 96px;
  z-index: 200;
  width: 90px;
  height: 90px;
  text-align: center;
  background-color: #333333;
  border-radius: 50%;
  box-shadow: 0 3px 6px 0 rgba(0, 0, 0, 0.47);
}

.floatingBanner__buttonBox:hover {
  cursor: pointer;
  opacity: 0.8;
}

.floatingBanner__buttonText {
  font-size: 15px;
  font-weight: bold !important;
  line-height: 1.66667;
  position: absolute;
  top: calc(50% - 25px);
  left: calc(50% - 29px);
  color: #ffffff;
}

.floatingBanner__container {
  position: fixed;
  right: 36px;
  bottom: 85px;
  z-index: 300;
  box-sizing: border-box;
  display: none;
  width: 310px;
  padding: 16px 16px 16px;
  background-color: #ffffff;
  box-shadow: 0 3px 16px 0 rgba(0, 0, 0, 0.4);
}

.floatingBanner a.floatingBanner__link {
  display: flex;
  flex-wrap: nowrap;
  color: #333333;
  text-decoration: none;
}

.floatingBanner__imageBox {
  position: relative;
  flex-basis: 27%;
}

.floatingBanner__imageBox::before {
  display: block;
  width: 100%;
  padding-top: 100%;
  content: "";
}

.floatingBanner__imageBox--1x1::before, .floatingBanner__imageBox.-ratio1x1::before {
  padding-top: 100%;
}

.floatingBanner__imageBox--16x9::before, .floatingBanner__imageBox.-ratio16x9::before {
  padding-top: 56.25%;
}

.floatingBanner__imageBox img {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  display: block;
  min-width: 30%;
  max-width: 100%;
  min-height: 30%;
  max-height: 100%;
  margin: auto;
}

.floatingBanner__imageBox a:hover img {
  opacity: 0.8;
}

.floatingBanner__imageBox:hover img {
  opacity: 0.8;
}

.floatingBanner__textBox {
  flex-basis: calc(73% - 16px);
  margin: 0 0 0 16px;
  color: #333333;
}

.floatingBanner__lead {
  font-size: 10px;
  font-weight: bold !important;
  line-height: 2.4;
}

.floatingBanner__title {
  font-size: 14px;
  font-weight: bold !important;
  line-height: 1.42857;
}

.floatingBanner__title:hover {
  text-decoration: underline;
}

.floatingBanner__text {
  font-size: 10px;
  font-weight: bold !important;
  line-height: 2.4;
}

.floatingBanner__closeButton {
  position: absolute;
  top: -18px;
  right: -18px;
  width: 36px;
  height: 36px;
  background-color: #333333;
  border-radius: 50%;
}

.floatingBanner__closeButton::before {
  position: absolute;
  top: calc(50% - 8px);
  left: calc(50% - 8px);
  font-size: 16px;
  font-weight: bold !important;
  color: #ffffff;
}

.floatingBanner__closeButton:hover {
  cursor: pointer;
  opacity: 0.8;
}

.toTop {
  position: fixed;
  right: 16px;
  bottom: 16px;
  z-index: 200;
  width: 48px;
  height: 48px;
  cursor: pointer;
  background: #333333;
}

.toTop::before {
  position: absolute;
  top: calc(50% - 8px);
  left: calc(50% - 8px);
  display: block;
  font-size: 16px;
  font-weight: bold !important;
  color: #ffffff;
  transform: rotate(-90deg);
}

.toTop:hover {
  opacity: 0.8;
}

.information__container {
  padding: 12px 12px;
  text-align: center;
  background-color: #ffffff;
}

.information__text {
  font-size: 14px;
  line-height: 1.57143;
}

.information.-ballon {
  position: relative;
  text-align: center;
}

.information.-ballon .information__container {
  display: inline-block;
  padding: 12px 32px;
}

.information.-ballon::before {
  position: absolute;
  top: -12px;
  left: calc(50% - 12px);
  display: inline-block;
  content: "";
  border-color: transparent transparent #ffffff transparent;
  border-style: solid;
  border-width: 0 12px 12px 12px;
}

.questionnaire {
  box-shadow: 0 2px 4px 0 rgba(0, 0, 0, 0.1);
}

.questionnaire__tagBox {
  font-size: 14px;
  font-weight: bold !important;
  line-height: 1.71429;
  position: relative;
  padding: 11px 0 10px 0;
  color: #ffffff;
  text-align: center;
}

.questionnaire__tagBox em {
  font-size: 22px;
  font-weight: bold !important;
  line-height: 1.09091;
  padding: 0 6px 0 0;
  font-style: normal;
  vertical-align: middle;
}

.questionnaire__tagBox::after {
  position: absolute;
  bottom: -15px;
  left: calc(50% - 15px);
  display: inline-block;
  content: "";
  border-style: solid;
  border-width: 15px 15px 0 15px;
}

.questionnaire__tagBox.-dark-pink {
  background-color: #cc119b;
}

.questionnaire__tagBox.-dark-pink::after {
  border-color: #cc119b transparent transparent transparent;
}

.questionnaire__tagBox.-green {
  background-color: #16af6f;
}

.questionnaire__tagBox.-green::after {
  border-color: #16af6f transparent transparent transparent;
}

.questionnaire__tagBox.-purple {
  background-color: #7e50d6;
}

.questionnaire__tagBox.-purple::after {
  border-color: #7e50d6 transparent transparent transparent;
}

.questionnaire__tagBox.-light-blue {
  background-color: #26addd;
}

.questionnaire__tagBox.-light-blue::after {
  border-color: #26addd transparent transparent transparent;
}

.questionnaire__tagBox.-pink {
  background-color: #ff41be;
}

.questionnaire__tagBox.-pink::after {
  border-color: #ff41be transparent transparent transparent;
}

.questionnaire__container {
  flex-basis: calc(100% - 115px - 32px);
  flex-grow: 1;
  padding: 32px 32px;
  background: #ffffff;
}

.questionnaire__column1 {
  min-height: 100px;
  padding-left: 124px;
  margin: 0 0 12px;
  background: url(https://r.r10s.jp/evt/event/family/questionnaire/_pc/img/icon_questionnaire.png?v=201912180942) left center no-repeat;
}

.questionnaire__column2 {
  display: flex;
  flex-wrap: nowrap;
  margin: 0 0 16px;
}

.questionnaire__imageLink {
  position: relative;
  flex-basis: 100px;
  margin-right: 24px;
}

.questionnaire__imageLink::before {
  display: block;
  width: 100%;
  padding-top: 100%;
  content: "";
}

.questionnaire__imageLink--1x1::before, .questionnaire__imageLink.-ratio1x1::before {
  padding-top: 100%;
}

.questionnaire__imageLink--16x9::before, .questionnaire__imageLink.-ratio16x9::before {
  padding-top: 56.25%;
}

.questionnaire__imageLink img {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  display: block;
  min-width: 30%;
  max-width: 100%;
  min-height: 30%;
  max-height: 100%;
  margin: auto;
}

.questionnaire__imageLink a:hover img {
  opacity: 0.8;
}

.questionnaire__textBox {
  flex-basis: calc((100% - 16px) - 33.76%);
  align-self: center;
}

.questionnaire__title {
  font-size: 28px;
  font-weight: bold !important;
  line-height: 1.28571;
  margin: 0 0 8px;
}

.questionnaire__title.-large {
  margin: 0 0 8px;
}

.questionnaire__text {
  font-size: 18px;
  line-height: 1.33333;
}

.questionnaire__textList {
  display: flex;
  flex-wrap: wrap;
}

.questionnaire .linkButton {
  display: block;
  width: 266px;
  margin: 24px auto 0;
}

.questionnaire__item {
  font-size: 16px;
  line-height: 1.5;
  margin-right: 16px;
}

.questionnaire__item em {
  font-style: normal;
  font-weight: bold;
}

.questionnaire a.questionnaire__textLink {
  font-size: 14px;
  font-weight: bold !important;
  line-height: 1.5;
  position: relative;
  display: inline-block;
  margin: 8px 0 0;
  overflow: visible;
  color: #333333;
  text-decoration: none;
}

.questionnaire a.questionnaire__textLink::before {
  position: absolute;
  top: calc(50% - 11px);
  right: -16px;
}

.questionnaire a.questionnaire__textLink:hover {
  text-decoration: underline;
}

.questionnaire.-disabled {
  color: #bbbbbb;
}

.questionnaire.-disabled a {
  color: #bbbbbb !important;
  pointer-events: none;
}

.questionnaire.-disabled .questionnaire__tagBox {
  background-color: #cccccc;
}

.questionnaire.-disabled .questionnaire__tagBox::after {
  border-color: #cccccc transparent transparent transparent;
}

.sampleReview a.sampleReview__link {
  display: block;
  color: #333333;
  text-decoration: none;
}

.sampleReview a.sampleReview__link:hover {
  opacity: 0.8;
}

.sampleReview__item {
  margin: 0 0 16px;
}

.sampleReview__imageBox {
  position: relative;
  flex-basis: 213.5px;
  border: 1px solid #d1d1d1;
}

.sampleReview__imageBox::before {
  display: block;
  width: 100%;
  padding-top: 100%;
  content: "";
}

.sampleReview__imageBox--1x1::before, .sampleReview__imageBox.-ratio1x1::before {
  padding-top: 100%;
}

.sampleReview__imageBox--16x9::before, .sampleReview__imageBox.-ratio16x9::before {
  padding-top: 56.25%;
}

.sampleReview__imageBox img {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  display: block;
  min-width: 30%;
  max-width: 100%;
  min-height: 30%;
  max-height: 100%;
  margin: auto;
}

.sampleReview__imageBox a:hover img {
  opacity: 0.8;
}

.sampleReview__imageBox img {
  max-width: 180px;
  max-height: 180px;
}

.sampleReview__textContainer {
  margin: 16px 0 0;
}

.sampleReview__title {
  font-size: 18px;
  font-weight: bold !important;
  line-height: 1.55556;
}

.sampleReview__subText {
  font-size: 12px;
  line-height: 1.66667;
  margin: 2px 0 0;
}

.sampleReview__tagContainer {
  display: flex;
  flex-wrap: wrap;
  margin: 8px 0 0;
}

.sampleReview__tag {
  font-size: 10px;
  font-weight: bold !important;
  line-height: 1.8;
  padding: 0 8px;
  margin: 0 4px 4px 0;
  color: #ffffff;
}

.sampleReview__tag--purple, .sampleReview__tag.-purple, .sampleReview__tag.papamama {
  background-color: #7e50d6;
}

.sampleReview__tag--pink, .sampleReview__tag.-pink, .sampleReview__tag.fashion, .sampleReview__tag.beauty {
  background-color: #ff41be;
}

.sampleReview__tag--dark-pink, .sampleReview__tag.-dark-pink {
  background-color: #cc119b;
}

.sampleReview__tag--red, .sampleReview__tag.-red, .sampleReview__tag.food {
  background-color: #f20707;
}

.sampleReview__tag--orange, .sampleReview__tag.-orange, .sampleReview__tag.lifestyle {
  background-color: #ed6328;
}

.sampleReview__tag--yellow, .sampleReview__tag.-yellow {
  background-color: #ffc400;
}

.sampleReview__tag--green, .sampleReview__tag.-green, .sampleReview__tag.interior, .sampleReview__tag.activity {
  background-color: #16af6f;
}

.sampleReview__tag--light-blue, .sampleReview__tag.-light-blue, .sampleReview__tag.training, .sampleReview__tag.childcare {
  background-color: #26addd;
}

.sampleReview__tag--black, .sampleReview__tag.-black {
  background-color: #333333;
}

.sampleReview__user {
  font-size: 16px;
  font-weight: bold !important;
  line-height: 1.75;
}

.sampleReview__user::before {
  position: relative;
  top: 7px;
  left: 0;
  display: inline-block;
  width: 32px;
  height: 32px;
  margin-right: 8px;
  content: "";
  background: url(https://r.r10s.jp/evt/event/family/samplebox/_pc/img/2019/samplebox_icon_04.png?v=201912180942);
  background-size: contain;
}

.sampleReview__text {
  font-size: 14px;
  line-height: 1.57143;
  margin: 8px 0 0;
}

.coupon a.coupon__link {
  color: #333333;
  text-decoration: none;
}

.coupon__tagBox {
  position: relative;
  z-index: 10;
  padding: 16px 0 15px 0;
  text-align: center;
  background-color: #26addd;
}

.coupon__tagBox::before, .coupon__tagBox::after {
  position: absolute;
  z-index: 10;
  display: inline-block;
  width: 12px;
  height: 22px;
  content: "";
  background: #ffffff;
}

.coupon__tagBox::before {
  bottom: -12px;
  left: -2px;
  background: linear-gradient(-90deg, #e9e9e9 0%, #fcfcfc 50%, white 100%);
  border-radius: 0 100% 100% 0 / 50%;
}

.coupon__tagBox::after {
  right: -2px;
  bottom: -12px;
  background: linear-gradient(90deg, #e9e9e9 0%, #fcfcfc 50%, white 100%);
  border-radius: 100% 0 0 100% / 50%;
}

.coupon__tagBox:hover {
  opacity: 0.8;
}

.coupon__tag {
  font-size: 18px;
  font-weight: bold !important;
  line-height: 0.88889;
  color: #ffffff !important;
  text-decoration: none;
}

.coupon__container {
  position: relative;
  display: flex;
  flex-wrap: nowrap;
  padding: 16px;
  background: #ffffff;
  box-shadow: 0 2px 4px 0 rgba(0, 0, 0, 0.1);
}

.coupon__container::before {
  position: absolute;
  top: -2px;
  left: 0;
  display: block;
  width: 100%;
  height: 4px;
  content: "";
  background: url(https://r.r10s.jp/evt/event/family/_pc/img/2019/bg_dotted_02.png?v=201912180942) bottom left repeat-x;
}

.coupon__imageBox {
  position: relative;
  flex-basis: 33.33%;
  align-self: flex-start;
  border: 1px solid #d1d1d1;
}

.coupon__imageBox::before {
  display: block;
  width: 100%;
  padding-top: 100%;
  content: "";
}

.coupon__imageBox--1x1::before, .coupon__imageBox.-ratio1x1::before {
  padding-top: 100%;
}

.coupon__imageBox--16x9::before, .coupon__imageBox.-ratio16x9::before {
  padding-top: 56.25%;
}

.coupon__imageBox img {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  display: block;
  min-width: 30%;
  max-width: 100%;
  min-height: 30%;
  max-height: 100%;
  margin: auto;
}

.coupon__imageBox a:hover img {
  opacity: 0.8;
}

.coupon__imageBox img {
  max-width: calc(84.76% + 2px);
  max-height: calc(84.76% + 2px);
}

.coupon__textBox {
  flex-basis: calc(100% - 33.33% - 16px);
  align-self: center;
  margin-left: 16px;
}

.coupon__title {
  font-size: 18px;
  font-weight: bold !important;
  line-height: 1.33333;
  color: #f20707;
}

.coupon__text {
  font-size: 10px;
  line-height: 1.6;
  margin: 4px 0 0;
}

.coupon__shopName {
  font-size: 12px;
  line-height: 1.41667;
  margin: 4px 0 0;
}

.coupon__shopName.ra-i-shop::before {
  position: relative;
  top: 2px;
  margin-right: 6px;
  font-size: 16px;
  color: #f20707;
}

.coupon.-disabled .coupon__link {
  pointer-events: none;
}

.coupon.-disabled .coupon__link:hover {
  pointer-events: none;
  cursor: default;
}

.coupon.-disabled .coupon__tagBox {
  background-color: #7cceea;
}

.coupon.-disabled .coupon__imageBox {
  background-color: #ebebeb;
}

.coupon.-disabled .coupon__imageBox img {
  max-width: 35%;
}

.coupon.-disabled .coupon__title,
.coupon.-disabled .coupon__text {
  color: #bbbbbb;
}

.coupon.-disabled .coupon__title {
  font-size: 15px;
  font-weight: bold !important;
  line-height: 1.6;
  letter-spacing: -0.5px;
}

.coupon.-disabled .coupon__text {
  font-size: 12px;
  line-height: 1.58333;
  margin: 4px 0 0;
}

.migration-01 a {
  color: #333333;
  text-decoration: none;
}

.mamaslife-box .left {
  position: relative;
}

.mamaslife-box .left::before {
  display: block;
  width: 100%;
  padding-top: 100%;
  content: "";
}

.mamaslife-box .left--1x1::before, .mamaslife-box .left.-ratio1x1::before {
  padding-top: 100%;
}

.mamaslife-box .left--16x9::before, .mamaslife-box .left.-ratio16x9::before {
  padding-top: 56.25%;
}

.mamaslife-box .left img {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  display: block;
  min-width: 30%;
  max-width: 100%;
  min-height: 30%;
  max-height: 100%;
  margin: auto;
}

.mamaslife-box .left a:hover img {
  opacity: 0.8;
}

.mamaslife-box .left:hover img {
  opacity: 0.8;
}

.mamaslife-box .right {
  font-size: 14px;
  line-height: 1.57143;
  margin: 16px 0 0;
}

.mamaslife-box .right-upper:hover {
  text-decoration: underline;
}

.mamaslife-box .right-bottom {
  display: flex;
  flex-wrap: wrap;
}

.mamaslife-box .date {
  font-size: 12px;
  line-height: 2;
  margin-right: 8px;
}

.mamaslife-box .mamaslife-tag {
  font-size: 10px;
  font-weight: bold !important;
  line-height: 2;
  color: #ffffff;
}

.mamaslife-box .icon {
  display: inline-block;
  padding: 0 8px;
}

.mamaslife-box .icon.training {
  background-color: #26addd;
}

.mamaslife-box .icon.childcare {
  background-color: #26addd;
}

.mamaslife-box .icon.interior {
  background-color: #16af6f;
}

.mamaslife-box .icon.activity {
  background-color: #16af6f;
}

.mamaslife-box .icon.lifestyle {
  background-color: #ed6328;
}

.mamaslife-box .icon.food {
  background-color: #f20707;
}

.mamaslife-box .icon.fashion {
  background-color: #ff41be;
}

.mamaslife-box .icon.beauty {
  background-color: #ff41be;
}

.mamaslife-box .icon.papamama {
  background-color: #7e50d6;
}

/* howtoCouponArea */
.howtoArea {
  padding: 0 16px;
}

.rcpHowtoListWrap {
  overflow: hidden;
  padding-bottom: 30px;
}

.rcpHowtoList {
  width: 165px;
  min-height: 288px;
  float: left;
  padding: 0 11px;
  border-left: 1px solid #e2e2e2;
}

.rcpHowtoList:first-child {
  border-left: none;
  padding-left: 0;
}

.rcpHowtoList:last-child {
  padding-right: 0;
}

.rcpHowtoList__img {
  display: block;
}

.rcpHowtoList__ttl {
  display: block;
  font-size: 14px;
  font-weight: bold;
  margin: 10px 0;
}

.rcpHowtoList__desc {
  display: block;
  font-size: 13px;
}

.rcpHowtoList__subDesc {
  display: block;
  color: #848484;
  font-size: 11px;
  padding-top: 10px;
}