@charset "utf-8";
/*
 common
============================================ */
body{color: #333;}
main{color: #000;}
dl{margin-left: 0;}
dd{margin-left: 0;}
.noto-sans-jp{
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-style: normal;
}
.ecm-floating-toggle-navi{
  height: 80px;
}
.ecm-floating-toggle-navi[data-module-name=ecm-floating][data-static=false]{
  box-shadow:0 2px 8px rgba(0,0,0,.2);
  height: 80px;
}
.ecm-floating-toggle-navi > .ecm-container{
  display: flex;
  justify-content: center;
  height: 80px;
}
.ecm-floating-toggle-navi .ecm-search{
  border:solid 1px #ccc;
  border-radius: 20px;
  overflow:hidden;
}
.ecm-floating-toggle-navi .ecm-search-submit{
  background-color: inherit!important;
}
.ecm-floating-toggle-navi .ecm-search-submit .ecm-icon-search{color: #000;}



/*
 ecm-kanban-image
============================================ */
.ecm-kanban-image{max-width:1920px;}

/*
 lead-area
============================================ */
.lead-area__title{
  font-size: 32px;
  font-weight: 700;
  text-align: center;
  line-height: 1.5;
  color: #ff5a61;
}
.lead-area__text{
  font-size: 14px;
  font-weight: 500;
  line-height: 1.6;
  text-align: center;
}

/*
 anchor-navi
============================================ */
.anchor-navi__link{
  display: flex;
  flex-direction:column;
  align-items: center;
  justify-content: center;
  padding-top: 8px;
  height: 56px;
  border-radius: 28px;
  background-color: #fa2730;
  font-size: 16px;
  font-weight: 700;
  color: #fff !important;
}

/*
 subtitle
============================================ */
.subtitle{
  text-align: center;
}
.subtitle .subtitle__text{
  display: inline-block;
  font-size: 32px;
  font-weight: 700;
  line-height: 1.5;
  color: #000;
}
.subtitle .subtitle__text > span{
  color: #ff5a61;
}
.subtitle__logo{
  display: block;
  margin:24px auto 0;
}
.con01 .subtitle__logo{
  width: 735px;
  filter: brightness(0) saturate(100%) invert(47%) sepia(61%) saturate(3629%) hue-rotate(326deg) brightness(103%) contrast(93%);
}
.con02 .subtitle__logo{
  width: 281px;
  filter: brightness(0) saturate(100%) invert(47%) sepia(61%) saturate(3629%) hue-rotate(326deg) brightness(103%) contrast(93%);
}
.con03 .subtitle__logo{
  width: 435px;
  filter: brightness(0) saturate(100%) invert(47%) sepia(61%) saturate(3629%) hue-rotate(326deg) brightness(103%) contrast(93%);
}
.faq .subtitle__logo{
  width: 137px;
}

/*
 con01
============================================ */
.con01{
  padding-bottom: 120px;
  position: relative;
}
.con01::after{
  content: '';
  position: absolute;
  width: 100%;
  height: 2px;
  background: url(https://r.r10s.jp/evt/event/gift/socialgift/_pc/img/udr/guide/contents_line.png?v=202604031030) no-repeat center top;
  bottom: 0;
  left: 0;
}
.usp-card{
  position: relative;
}
.usp-card__inner{
  position: absolute;
  top: 32px;
  left: 0;
  width: 100%;
  text-align: center;
}
.usp-card__strong{
  font-size: 32px;
  font-weight: 700;
  line-height: 1.5;
}
.usp-card__lead{
  font-size: 14px;
  font-weight: 500;
  line-height: 1.6;
}

/*
 review
============================================ */
.review{
  padding: 40px 16px 20px;
  border-radius: 16px;
  display: flex;
  flex-wrap:wrap;
  position: relative;
}
.review._01{background-color: #ffe2de;}
.review._02{background-color: #E0F1D4;}
.review._03{background-color: #D0F3F8;}
.review._04{background-color: #FAF5C6;}
.review-illust{
  width:100px;
  position: absolute;
  top: -67px;
  left: 50%;
  transform:translateX(-50%);
}
.review-illust__text{
  width: 68px;
  height: 23px;
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 12px;
  line-height: 1;
  text-align: center;
  border:solid 1px #000;
  border-radius: 12px;
}
.review-text > p{
  font-size: 14px;
  line-height: 1.6;
}
.review-rating{
  align-items: center;
  font-size: 12px;
  font-weight: 700;
  line-height: 1;
}
.review-rating > *{
  display: inline-flex;
}

/*
 con03
============================================ */
.con03{
  background-color: #f0f0f0;
  padding-top: 120px;
  padding-bottom: 91px;
  width: 100%;
  margin-right: auto;
  margin-left: auto;
  max-width:1920px;
  position: relative;
}
.con03::before{
  content: '';
  position: absolute;
  width: 100%;
  height: 291px;
  background: url(https://r.r10s.jp/evt/event/gift/socialgift/_pc/img/udr/guide/howtouse_top.png?v=202604031030) #fff center top no-repeat;
  top: 0;
  left: 0;
}
.con03::after{
  content: '';
  position: absolute;
  width: 100%;
  height: 291px;
  background: url(https://r.r10s.jp/evt/event/gift/socialgift/_pc/img/udr/guide/howtouse_bottom.png?v=202604031030) #fff center top no-repeat;
  bottom: 0;
  left: 0;
}
.con03 .ecm-container{
  position: relative;
  z-index:1;
}
.con03 .contents-card{
  border-radius: 12px;
  background-color: #fff;
  box-shadow: 6px 6px 0 0 #33333326;
}
.howtouse__subheader{
  display: flex;
  justify-content: center;
  align-items: center;
  height: 60px;
  font-size: 24px;
  font-weight: 400;
  text-align: center;
  border-radius: 16px 16px 0 0;
}
.presented .howtouse__subheader{
  background-color: #fa2730;
  color: #fff;
}
.received .howtouse__subheader{
  background-color: #9bd236;
  color: #000;
}
.howtouse__smalltitle{
  font-size: 30px;
  font-weight: 400;
  text-align: center;
}
.con03 .contents-card__inner{
  margin-right: 50px;
  margin-left: 50px;
}
.con03 .received .contents-card__inner{
  margin-right: 18px;
  margin-left: 18px;
}
.con03 .contents-card__inner._border{
  border-bottom:solid 2px #CCCCCC;
}
.contents-card__section__title{
  width: 100%;
  height: 56px;
  font-size: 16px;
  margin-bottom: 16px;
  font-weight: 500;
  line-height: 1.4;
  text-align: center;
  background-color: #ffe2de;
  border-radius: 8px;
  display: flex;
  justify-content: center;
  align-items: center;
}
.contents-card__section__title p > span{
  font-weight: 700;
  color: #ff5a61;
}
.contents-card__section__lead{
  font-size: 16px;
  line-height: 1.6;
  text-align: center;
}
.contents-card__section__imageWrap{
  width: 508px;
  margin-right: auto;
  margin-left: auto;
}
.contents-card__section__imageWrap.step{width: 788px;}
.contents-card__section__imageWrap > .contents-card__section__imageList{position: relative;}
.contents-card__section__imageWrap > .contents-card__section__imageList:not(:first-child)::before{
  content: '';
  position: absolute;
  width: 30px;
  height: 20px;
  top: 40%;
  transform:translateY(-50%);
  left: -49px;
}
.presented .contents-card__section__imageWrap.step > .contents-card__section__imageList:not(:first-child)::before{
  top: 45%;
  transform:translateY(-50%);
  left: -38px;
}
.received .contents-card__section__imageWrap.step > .contents-card__section__imageList:not(:first-child)::before{
  top: 41%;
  transform:translateY(-50%);
  left: -20px;
}
.presented .contents-card__section__imageWrap > .contents-card__section__imageList::before{
  background: url(https://r.r10s.jp/evt/event/gift/socialgift/_pc/img/udr/guide/arrow01.png?v=202604031030) no-repeat;
}
.received .contents-card__section__imageWrap > .contents-card__section__imageList::before{
  background: url(https://r.r10s.jp/evt/event/gift/socialgift/_pc/img/udr/guide/arrow02.png?v=202604031030) no-repeat;
}
.presented .contents-card__section__imageList.step2::after{
  content: '';
  position: absolute;
  width: 30px;
  height: 20px;
  top: 45%;
  transform:translateY(-50%);
  right: -38px;
  background: url(https://r.r10s.jp/evt/event/gift/socialgift/_pc/img/udr/guide/arrow01.png?v=202604031030) no-repeat;
}
.howtouse-slider__step{
  text-align: center;
  margin-bottom: 16px;
}
.howtouse-slider__text{
  margin-top: 16px;
  font-size: 16px;
  text-align: center;
  font-weight: 500;
  line-height: 1.6;
}
.received .howtouse-slider__text{
  display: flex;
  justify-content: center;
  align-items: center;
  height: 3.2em;
}
.presented .howtouse-slider__text p > span{color: #fa2730;}
.received .howtouse-slider__text p > span{color: #649A02;}
.howtouse-slider__offer{
  font-size: 12px;
  color: #666;
  line-height: 1.3;
  margin-top: 16px;
  text-align: center;
}
.presented .ecm-slider-prev, .presented .ecm-slider-next{
  border:solid 1px #fa2730;
  font-weight: bold;
  margin-top: -52px;
}
.received .ecm-slider-prev, .received .ecm-slider-next{
  border:solid 1px #649A02;
  font-weight: bold;
  margin-top: -52px;
}
.presented .ecm-slider-prev .ecm-icon-chevron-left,.presented .ecm-slider-prev .ecm-icon-chevron-right,.presented .ecm-slider-next .ecm-icon-chevron-left,.presented .ecm-slider-next .ecm-icon-chevron-right{
  color: #fa2730;
}
.received .ecm-slider-prev .ecm-icon-chevron-left,.received .ecm-slider-prev .ecm-icon-chevron-right,.received .ecm-slider-next .ecm-icon-chevron-left,.received .ecm-slider-next .ecm-icon-chevron-right{
  color: #649A02;
}
.contents-card__section .ecm-slider-pagination-bullet{
  background-color: #bbb;
}
.contents-card__section .ecm-slider-pagination-bullet:not(:first-child){
  margin-left: 16px;
}
.presented .ecm-slider-pagination-bullet.ecm-slider-pagination-bullet-active{
  background-color: #fa2730;
}
.received .ecm-slider-pagination-bullet.ecm-slider-pagination-bullet-active{
  background-color: #649A02;
}
.howtouse__check{
  padding: 35px 17.5px;
  background-color: #ffe2de;
  border-radius: 16px;
}
.mothersday__button{
  width: 700px;
  margin: 0 auto;
}

/*
 faq
============================================ */
.faq__conTitle--darkred {
  font-size: 24px;
  font-weight: normal;
  color: #FA2730;
}
.faq__conTitle--darkgreen {
  font-size: 24px;
  font-weight: normal;
  color: #649A02;
}
.faq__title[data-layout] {
  font-weight: normal;
  font-size: 16px;
  display: inline-block;
  padding: 6px 48px;
  border-radius: 0 24px 24px 0;
  margin-bottom: 32px;
}
.faq__title[data-layout=darkred] {
  color: #FA2730;
  border: 1px solid #FA2730;
  border-left: none;
}
.faq__title[data-layout=darkgreen] {
  color: #649A02;
  border: 1px solid #649A02;
  border-left: none;
}
.faq__container {
  padding: 0 48px;
}
.ecm-accordion[data-layout=faq] {
  display: flex;
  flex-direction: column;
  gap: 32px;
}
.ecm-accordion[data-layout=faq] .ecm-accordion-item {
  border: none;
}
.ecm-accordion[data-layout=faq] .ecm-accordion-trigger {
  padding: 8px 0;
  font-weight: bold;
  font-size: 16px;
  line-height: 1.6;
  position: relative;
}
.faq-accordion-darkred .ecm-accordion-trigger {
  border-bottom: 1px solid #FA2730;
}
.faq-accordion-darkgreen .ecm-accordion-trigger {
  border-bottom: 1px solid #649A02;
}
.ecm-accordion[data-layout=faq] .ecm-accordion-trigger::before{
  content: '';
  display: block;
  width: 19px;
  height: 3px;
  border-radius: 2px;
  position: absolute;
  top: 19px;
  right: 0;
  transform: rotate(90deg);
  transition: .25s;
}
.ecm-accordion[data-layout=faq] .ecm-accordion-trigger[aria-expanded="true"]::before{
  transform: rotate(0deg)!important;
}
.ecm-accordion[data-layout=faq] .ecm-accordion-trigger::after{
  content: '';
  display: block;
  width: 19px;
  height: 3px;
  border-radius: 2px;
  position: absolute;
  top: 19px;
  right: 0;
  transform: rotate(0deg);
}
.faq-accordion-darkred .ecm-accordion-trigger::before,
.faq-accordion-darkred .ecm-accordion-trigger::after{
  background-color: #FA2730;
}
.faq-accordion-darkgreen .ecm-accordion-trigger::before,
.faq-accordion-darkgreen .ecm-accordion-trigger::after{
  background-color: #649A02;
}
.ecm-accordion[data-layout=faq] .ecm-accordion-panel {
  display: grid;
  grid-template-rows: 1fr;
  font-size: 16px;
  line-height: 1.6;
  background-color: transparent;
  padding-top: 8px;
  transition: grid-template-rows .25s;
  overflow:visible!important;
}
.ecm-accordion[data-layout=faq] .ecm-accordion-panel[aria-hidden=true]{
  grid-template-rows: 0fr;

}
.ecm-accordion[data-layout=faq] .ecm-accordion-panel > .accordion-inner{
  overflow-y:hidden;
}
.ecm-accordion[data-layout=faq] .ecm-accordion-text {
  width: calc(100% - 84px);
  text-align: left;
  padding-top: 2px;
}
.ecm-accordion[data-layout=faq] .faq-icon {
  width: 24px;
  height: 24px;
  margin-left: auto;
}
.ecm-accordion[data-layout=faq] .faq-icon-plus {
  mask-image: url(data:image/svg+xml;charset=utf8,%3Csvg%20width%3D%2224%22%20height%3D%2224%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20d%3D%22M12%202.5C12.8284%202.5%2013.5%203.10789%2013.5%203.85742V10.5H20.1426C20.8921%2010.5%2021.5%2011.1716%2021.5%2012C21.5%2012.8284%2020.8921%2013.5%2020.1426%2013.5H13.5V20.1426C13.5%2020.8921%2012.8284%2021.5%2012%2021.5C11.1716%2021.5%2010.5%2020.8921%2010.5%2020.1426V13.5H3.85742C3.10789%2013.5%202.5%2012.8284%202.5%2012C2.5%2011.1716%203.10789%2010.5%203.85742%2010.5H10.5V3.85742C10.5%203.10789%2011.1716%202.5%2012%202.5Z%22%20fill%3D%22%23FA2730%22%2F%3E%3C%2Fsvg%3E);
  mask-size: 100% auto;
  mask-repeat: no-repeat;
}
.ecm-accordion[data-layout=faq] [aria-expanded="true"] .faq-icon-plus {
  display: none;
}
.ecm-accordion[data-layout=faq] .faq-icon-minus {
  mask-image: url(data:image/svg+xml;charset=utf8,%3Csvg%20width%3D%2224%22%20height%3D%2224%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20d%3D%22M18.5882%2010.5C19.3679%2010.5%2020%2011.1716%2020%2012C20%2012.8284%2019.3679%2013.5%2018.5882%2013.5H5.41176C4.63207%2013.5%204%2012.8284%204%2012C4%2011.1716%204.63207%2010.5%205.41176%2010.5H18.5882Z%22%20fill%3D%22%23FA2730%22%2F%3E%3C%2Fsvg%3E);
  mask-size: 100% auto;
  mask-repeat: no-repeat;
}
.ecm-accordion[data-layout=faq] [aria-expanded="false"] .faq-icon-minus {
  display: none;
}
.faq-accordion-darkred .faq-icon-plus,
.faq-accordion-darkred .faq-icon-minus {
  background-color: #FA2730;
}
.faq-accordion-darkgreen .faq-icon-plus,
.faq-accordion-darkgreen .faq-icon-minus {
  background-color: #649A02;
}
.question__other {
  margin: 6px 0 72px;
  font-size: 16px;
  font-weight: 600;
  text-align: right;
  padding: 0 48px;
}
.question__other > a{color: #0783c2!important;}
.question__other > a:hover{text-decoration: underline;}

/*
 notice-area
============================================ */
.notice-area{
  padding: 40px 176px 40px 196px;
  background-color: #F0F0F0;
  margin-top: 120px;
}
.notice-area__title{
  font-size: 20px;
  text-align: center;
  margin-bottom: 16px;
}
.notice-area__list{
  list-style-type:disc;
  font-size: 14px;
  line-height: 1.6;
}

/*
 anchor
============================================ */
html {
  scroll-behavior: smooth;
}
.scroll-offset {
    padding-top: 80px;
    margin-top: -80px;
    background-clip: content-box; /* 背景色が余白にはみ出さないようにする */
}
.scroll-offset-02 {
    /* 既存の pt-40 (40px) を考慮して、合計で80px分上にずらす */
    padding-top: 120px !important;  /* 40px + 80px = 120px */
    margin-top: -80px !important;   /* 既存の mt-80 を相殺 */
    background-clip: content-box;
}