@charset "utf-8";

/*-------------------------------------
  gNav
---------------------------------------*/
@media screen and (max-width: 768px) {
  .u-pc-only {
    display: none;
  }
}
.tx_green {
color: #0B880A;
}

.tx_red {
color: #E60012;
font-size: 90%;
}

.gNav {
 background-color: #fbf8f1;
 padding: 10px 20px;
 font-size: 12px;
}
.gNav ul li {
 display: inline-block;
}
/*-------------------------------------
  Auxiliary
---------------------------------------*/
.pc_only {
 display: inline-block;
}
.sp_only {
 display: none;
}
.clearfix {
 display: block;
}
.disabled {
 pointer-events: none;
}
/*-------------------------------------
  Menu
---------------------------------------*/
.button-color {
 background: rgb(255 255 255 / 61%);
}
.\33 r-campaign-2022 .campaign-menu {
 padding: 0;
 border-bottom: none;
 margin-top: 1%;
 background-color: transparent;
}
.\33 r-campaign-2022 .campaign-menu .button::after {
 content: "\f107";
 left: calc(51% - 0.5em);
 bottom: -0em;
 font-weight: 100;
 font-size: 39px;
}
.\33 r-campaign-2022 .campaign-menu .button {
 position: relative;
 display: -ms-flexbox;
 display: flex;
 -ms-flex-pack: center;
 justify-content: center;
 -ms-flex-align: center;
 align-items: center;
 width: 48.5%;
 margin-top: 3%;
 padding: 1.5% 0 1.75em;
 box-shadow: none;
 font-size: 1.25em;
 color: #fff;
 font-family: 'M PLUS Rounded 1c', sans-serif;
 font-weight: 500;
 line-height: 1.1;
 border: solid 1px rgb(255, 255, 255);
 background: rgb(43 16 0 / 50%);
}
@media only screen and (max-width: 600px) {
 .\33 r-campaign-2022 .campaign-menu .button {
  font-size: 4.1vw;
 }
 .\33 r-campaign-2022 .campaign-menu .button::after {
  font-size: 7vw;
 }
}
.btn-comingsoon {
 display: block;
 margin: -2rem 1rem 3rem;
}
.btn-comingsoon img {
 display: block;
 margin: 3rem auto -2rem;
 max-width: 100%;
}
/*-------------------------------------
  Main
---------------------------------------*/
p.end-comment {
 color: #FFF;
 background: #1e2381;
 font-size: 1.6em;
 font-weight: bold;
 line-height: 1.5;
 padding: 0.5em;
 margin: -3rem auto 2rem;
 text-align: center;
 max-width: 1066px;
 border-radius: 10px;
}
.top-catch-img img {
 width: 85%;
 max-width: 800px;
 padding-bottom: 50px;
}
@media screen and (max-width: 767px) {
 p.end-comment {
  margin: 1rem 0rem -0.5rem;
 }
}
a.button.btn-oubo {
 box-shadow: none;
}
a.button.btn-oubo img {
 width: 35rem !important;
 position: revert !important;
 transform: none !important;
}
.campaign-banner a.button.btn-oubo img {
 margin: 1rem 0 -1rem;
}
.center {
 text-align: center;
}
.campaign-header.bg-3r .title-text1 {
 padding: 1em 1em 0.2em;
 text-align: center;
}
.campaign-header.bg-3r .title-text1 img {
 width: 55em;
}
body .campaign-banner {
 display: block;
 margin: 5% auto 0;
 margin-top: 5%;
 margin-right: auto;
 margin-bottom: 0px;
 margin-left: auto;
 text-align: center;
}
picture.title-banner.center {
 padding: 0 1em;
 display: block;
}
.\33 r-campaign-2022 picture.title-banner.left {
 width: 40vw;
 display: block;
 float: right;
}
.\33 r-campaign-2022 picture.title-banner.right {
 margin: 9vh 15vw;
}
.\33 r-campaign-2022 picture.title-banner.right img {
 width: 80vw;
 margin-top: 8vh;
}
.\33 r-campaign-2022 picture.title-banner.right img + img {
 width: 75vw;
 margin: 2vh 24vw;
}
.campaign-banner .title-text {
 text-align: center;
 color: #FFFFFF;
 margin: 3vh auto;
 font-size: 1.3em;
 line-height: 1.5;
 font-family: "メイリオ", Meiryo, sans-serif;
 font-weight: bolder;
 text-shadow: 0px 0px 7px #000000;
}
.\33 r-campaign-2022 .campaign-banner .oubo-button {
 margin: 0;
}
.\33 r-campaign-2022 .campaign-header.bg-3r picture.title-banner.background {
 z-index: -1;
 display: flex;
 position: absolute;
 width: -webkit-fill-available;
 justify-content: center;
 padding: 0;
 height: auto;
 align-items: flex-start;
 background-position: center top;
 width: 295vw;
 margin-top: -185px;
 margin-left: -29rem;
 right: -80%;
 bottom: 0;
}
.\33 r-campaign-2022 .campaign-gifts-title1000, .\33 r-campaign-2022 .campaign-gifts-title500 {
 display: block;
 max-width: 47vw;
 margin: auto auto auto -2rem;
 transform: translate(0, -44.5%);
 margin-bottom: 3rem;
}
img.pin-center {
 max-width: 100%;
 /* text-align: center; */
 margin: -4rem auto 12px;
 display: block;
}
/*-------------------------------------
  集計結果
---------------------------------------*/
.bg-001 {
 z-index: 1;
}
.cover01 {
 background: #fff;
 padding-bottom: 4rem;
 margin-bottom: -5rem;
}
.cover01-org {
 background-color: #f29600;
 padding-bottom: 26rem;
}
@media screen and (max-width: 767px) {
 .\33 r-campaign-2022 .cover01-org {
  padding-bottom: 35rem;
 }
}
.\33 r-campaign-2022 .campaign-results.g-container01 {
 width: 90%;
 background: #fff;
 padding-top: 5.5rem;
 padding-bottom: 3em;
 border-radius: 20px;
 /* margin: 20px 50px; */
 position: absolute;
 left: 0;
 right: 0;
 margin: -90px auto;
 z-index: 10;
}
.\33 r-campaign-2022 .campaign-results-info {
 font-size: 2.7em;
 font-weight: bold;
 color: #000000;
 line-height: 2em;
 padding: 4rem 0.5rem 0.2rem;
 margin: -5rem 9rem 0;
 border-bottom: solid 1px #000000;
}
.\33 r-campaign-2022 .campaign-results-info p {
 font-size: 1em;
 display: inline-block;
 text-align: left;
}
.\33 r-campaign-2022 .amount-number {
 color: #E60012;
 float: right;
 font-size: 1.2em !important;
 font-weight: 900;
}
.\33 r-campaign-2022 .amount-number span {
 color: #000;
 font-size: 1em;
}
.\33 r-campaign-2022 .small01 {
 font-size: 0.8em;
 font-weight: bolder;
 display: block;
 margin: 0.5em 0 1em;
 text-align: center;
}
.\33 r-campaign-2022 .small01-1 {
 width: 90%;
 font-size: 1em;
 font-weight: bolder;
 display: block;
 margin: 0.5em 0 1em;
 text-align: right;
}
.\33 r-campaign-2022 .campaign-overview-info01 {
 font-size: 1.25em;
}
@media screen and (max-width: 1100px) {
 .\33 r-campaign-2022 .campaign-results-info {
  font-size: 2em;
  margin: 0 2em;
 }
 .\33 r-campaign-2022 .small01 {
  width: 90%;
  float: right;
 }
 div.\33 r-campaign-2022 > div.bg-001 > div.g-container01 {
  min-width: 90%;
 }
}
@media screen and (min-width: 768px) {
 .\33 r-campaign-2022 .campaign-overview-info01 {
  width: 75%;
 }
 .\33 r-campaign-2022 .campaign-header.bg-3r picture.title-banner.background {
  width: 100%;
  margin-top: -79px;
  margin-left: -10rem;
  right: 0;
  bottom: 0;
 }
}
@media screen and (max-width: 767px) {

 .\33 r-campaign-2022 .campaign-results-info {
  padding: 0.3em 0 2em;
  margin: 0 0.8em;
  text-align: center;
 }
 .\33 r-campaign-2022 .campaign-results-info p {
  font-size: 1em;
  display: inline-block;
  text-align: center;
  line-height: 1.5em;
  margin-top: 0.2em;
 }
 .\33 r-campaign-2022 .small01 {
  font-weight: lighter;
  width: 100%;
  display: block;
  text-align: center;
  margin: 0.4em 0 1em;
 }
 .\33 r-campaign-2022 .small01-1 {
  font-weight: lighter;
  width: 100%;
  display: block;
  text-align: center;
  margin: 0.5em 0 1em;
 }
 .\33 r-campaign-2022 .campaign-overview-info01 {
  width: 85%;
 }
 .g-container01 {
  width: 85%;
 }
 div.\33 r-campaign-2022 > div.bg-001 > div.g-container01 {
  width: 90% !important;
 }
 .campaign-cooperation-region01 picture {
  margin: 10px !important;
  width: 23% !important;
  max-width: fit-content;
 }
 .\33 r-campaign-2022 .campaign-results.g-container01 {
  margin-top: -3em;
  padding-top: 3.5rem;
 }
 div.\33 r-campaign-2022 > div.bg-001 > div.g-container01 {
  min-width: auto !important;
 }
}
.campaign-title {
 display: flex;
 justify-content: center;
 color: rgb(255, 255, 255);
 font-weight: bolder;
 position: relative;
 z-index: 100;
}
.campaign-title p {
 padding: 36px 60px;
 margin: 10px;
 border: 8px solid #fff;
 border-radius: 60px;
 background-color: #f29600;
 font-size: 3.5em;
 text-align: center;
 letter-spacing: 0.6em;
 text-indent: 0.6em;
}
@media screen and (max-width: 767px) {
 .\33 r-campaign-2022 .campaign-title p {
  padding: 20px 40px;
  margin: 10px;
  border: 3px solid #fff;
  border-radius: 40px;
  background-color: #f29600;
  font-size: 2em;
  text-align: center;
 }
}
.\33 r-campaign-2022 .campaign-overview-info01 {
 /* width: 75%; */
 font-size: 1.25em;
 color: #000000;
 line-height: 1.5;
 margin-left: auto;
 margin-right: auto;
}
.\33 r-campaign-2022 .campaign-overview-info01 .explanation {
 display: block;
 color: #000000;
 text-align: left;
 padding-bottom: 1em;
}
.\33 r-campaign-2022 .campaign-overview-info01 .description {
 display: block;
 color: #000000;
 text-align: left;
 padding-bottom: 0.5em;
}
.\33 r-campaign-2022 .campaign-overview-info01 .description sup {
 font-size: 0.8rem;
 vertical-align: top;
 position: relative;
 top: -0.3em;
 margin: 0 0 0 -0.3em;
}
.\33 r-campaign-2022 .campaign-overview-info01 .small {
 display: block;
 color: #000000;
 text-align: left;
 font-weight: 100;
 font-size: initial;
}
.g-container01 {
 width: 90%;
 max-width: 1200px;
 margin: auto;
}
div.\33 r-campaign-2022 > div.bg-001 > div.g-container01 {
 width: 51%;
 min-width: 912px;
}
.g-container01 h4 {
 font-size: 1.5rem;
 position: relative;
 text-align: center;
}
.g-container01 h4:before {
 content: "";
 position: absolute;
 top: 50%;
 display: block;
 width: 100%;
 height: 2px;
 border-top: solid 2px #bebebe;
 z-index: 0;
}
.g-container01 h4 span {
 position: relative;
 padding: 0 1em;
 background: #fff;
 z-index: 1;
}
.\33 r-campaign-2022 .campaign-cooperation-region01 {
 display: -ms-flexbox;
 display: flex;
 -ms-flex-pack: center;
 justify-content: center;
 -ms-flex-wrap: wrap;
 flex-wrap: wrap;
 padding-top: 2rem;
 margin: 1% auto;
 justify-content: space-around;
}
.\33 r-campaign-2022 .campaign-cooperation-region01:last-of-type {
 display: -ms-flexbox;
 display: flex;
 -ms-flex-pack: center;
 -ms-flex-wrap: wrap;
 flex-wrap: wrap;
 margin-left: auto;
 margin-right: auto;
 margin-bottom: 10%;
 justify-content: space-around;
}
.campaign-cooperation-region01 picture {
 margin: 30px 40px;
 width: 41%;
 text-align: center;
 align-self: center;
 max-width: fit-content;
}
.campaign-cooperation-region01:last-of-type picture {
 max-width: fit-content;
 align-self: flex-end;
}
.campaign-store-region01::after {
 content: none !important;
}
.\33 r-campaign-2022 p.caution01 {
 padding-top: 2%;
 text-align: center;
 font-size: initial;
}
/*-------------------------------------
  集計結果 終了
---------------------------------------*/
.bg-01 {
 background: url(/img/3r-campaign/2021/bg-01.png) repeat;
 z-index: 1;
}
.cover {
 padding-bottom: 3rem;
 margin-bottom: 4rem;
}
/*-------------------------------------
  概要
---------------------------------------*/
.\33 r-campaign-2022 .campaign-overview-info {
 color: #000000;
 text-align: left;
 font-weight: bold;
 line-height: 1.5;
 margin-bottom: 0;
}
.\33 r-campaign-2022 .campaign-overview-info.emphasis {
 color: #E60012;
 margin-top: 0;
}
.\33 r-campaign-2022 .campaign-overview-info .small {
 color: #000000;
 text-align: left;
 font-weight: 100;
 font-size: initial;
 line-height: 1.5;
}
.\33 r-campaign-2022 .campaign-overview-schedule {
 background-color: #ffffff;
}
.\33 r-campaign-2022 .campaign-overview-info.emphasis sup, div.bg-001 .cover01 .campaign-results.g-container01 p sup {
 font-size: x-small;
 vertical-align: top;
 position: relative;
 top: -0.4em;
 margin: -0.3em;
}
.cover01 .campaign-results.g-container01 p sup {
 color: #000000;
}
.\33 r-campaign-2022 p.mt-1 {
 margin-top: 1em;
}
.\33 r-campaign-2022 .small {
 font-size: 0.9rem;
 margin-top: 1em;
}
.\33 r-campaign-2022 .campaign-store-item .small {
 font-size: 0.7rem;
 text-align: center;
 margin-top: 0.2em;
}
.\33 r-campaign-2022 .campaign-products .products-box > p.small {
 text-align: right;
}
.\33 r-campaign-2022 .oubo-button {
 text-align: center;
 margin: 2em;
 display: block;
}
.\33 r-campaign-2022 .campaign-overview-schedule span {
 font-size: 0.8em;
}
.\33 r-campaign-2022 .campaign-overview h4 span {
 /*background: url(/img/3r-campaign/2022/bg-02.png) repeat !important;*/
}
/*-------------------------------------
  対象品
---------------------------------------*/
.\33 r-campaign-2022 a.campaign-item-link {
 font-size: smaller;
 color: #00f;
 border-bottom: 1px #00f solid;
 margin-top: 0.5em;
 display: inline-block;
}
.\33 r-campaign-2022 .campaign-item .small {
 text-align: left;
}
.campaign-products.g-container b sup {
 font-size: x-small;
 vertical-align: top;
 position: relative;
 top: -0.4em;
 margin: -0.3em;
}
.campaign-item-picture {
 margin-right: inherit;
}
.\33 r-campaign-2022 .campaign-item.hadalabo, .\33 r-campaign-2022 .campaign-item.lux, .\33 r-campaign-2022 .campaign-item.milky, .\33 r-campaign-2022 .campaign-item.bathclin, .\33 r-campaign-2022 .campaign-item.gekiochikun {
 font-size: 0.8em;
}
.\33 r-campaign-2022 .campaign-item.dove {
 font-size: 0.7em;
 line-height: initial;
}
.products-box img.ttl {
 max-height: 10vw;
 width: auto;
 display: block;
 margin: auto;
 margin: -4rem auto 0rem;
}
.\33 r-campaign-2022 .campaign-products-title {
 font-size: 1.3em;
 color: #c02170;
 background-color: #F9E9F1;
 border: none;
}
.\33 r-campaign-2022 .products-box {
 border: 3px solid #c02170;
 margin: 6rem 1rem 1rem;
 padding: 0rem 2rem 3rem;
}

.\33 r-campaign-2022 .products-box.r3 {
 border: 3px solid #ff9933;
}

.\33 r-campaign-2022 .products-box.r2 {
 border: 3px solid #008dbb;
}

.\33 r-campaign-2022 .products-box.r3 .campaign-products-title {
 color: #ff9933;
 background-color: #F9F6CD;}

.\33 r-campaign-2022 .products-box.r2 .campaign-products-title {
 color: #008dbb;
 background-color: #E5F4F8;
}
.\33 r-campaign-2022 .products-box ul li {
 display: inline-block;
 position: relative;
 padding-left: 1.5em;
}
.\33 r-campaign-2022 .products-box ul li span {
 color: #c02170;
 font-weight: 600;
}
.\33 r-campaign-2022 .products-box .small span {
 color: #c02170;
}
.\33 r-campaign-2022 .products-box ul li::before {
 content: "●";
 color: #c02170;
 position: absolute;
 left: 0.25em;
 font-size: 0.9rem;
}
.\33 r-campaign-2022 .products-box.r2 ul li span {
 color: #008dbb;
 font-weight: 600;
}

.\33 r-campaign-2022 .products-box.r3 ul li span {
 color: #ff9933;
 font-weight: 600;
}

.\33 r-campaign-2022 .products-box.r2 .small span {
 color: #008dbb;
}
.\33 r-campaign-2022 .products-box.r2 ul li::before {
 content: "●";
 color: #008dbb;
 position: absolute;
 left: 0.25em;
 font-size: 0.9rem;
}.\33 r-campaign-2022 .products-box.r3 ul li::before {
 content: "●";
 color: #ff9933;
 position: absolute;
 left: 0.25em;
 font-size: 0.9rem;
}
.\33 r-campaign-2022 .pin-right, .\33 r-campaign-2022 .pin-left {
 width: auto;
 position: absolute;
 top: -1rem;
}
.\33 r-campaign-2022 .pin-right {
 right: -0.5rem;
}
.\33 r-campaign-2022 .pin-left {
 left: 0.5rem;
}
/*-------------------------------------
  プレゼント
---------------------------------------*/
h3#overview.gifts {
 margin: 4rem auto -9rem;
}
.bg-01 {
 background: url(/img/3r-campaign/2022/bg.png) repeat;
 z-index: 1;
 background-size: 100%;
}
.campaign-gifts .g-container {
 margin-top: 2em;
}
.\33 r-campaign-2022 .campaign-gifts-title {
 max-width: 77vw;
}
.campaign-gifts .box {
 border-radius: 0px;
}
.box-present-contents {
 border-radius: 1px;
 padding: 4vw;
 box-shadow: -4px 4px 0px 0px #70584b inset;
}
.campaign-gifts p {
 margin-top: 3%;
 font-size: 1.25em;
 text-align: center;
 line-height: 1.4;
}
.campaign-gifts p.gifts-text {
 margin: 7rem auto 0rem;
 padding: 3rem 0 0;
}
.\33 r-campaign-2022 .campaign-gifts .box p {
 margin: 10px 0rem 1rem;
 font-size: 0.9em;
 line-height: 1.6;
 text-align: left;
 flex-direction: column;
}
.\33 r-campaign-2022 .campaign-gifts .text-contents {
 margin-bottom: 4rem;
}
.\33 r-campaign-2022 .campaign-gifts a.button img {
 width: 1.3rem;
}
.\33 r-campaign-2022 .campaign-gifts .box p span {
 color: #e7372f;
 font-weight: 600;
}
.\33 r-campaign-2022 .campaign-gifts .box.box-present500 p span {
 color: #00A0E9;
 font-weight: 600;
}
.\33 r-campaign-2022 .campaign-gifts .box.box-present1000 p span {
 color: #187D41;
 font-weight: 600;
}
.\33 r-campaign-2022 .campaign-gifts .box.box-present500 p span.small {
 color: #000000;
 font-size: 0.8em;
 font-weight: 100;
}
.\33 r-campaign-2022 .campaign-gifts .button img {
 position: absolute;
 top: 50%;
 right: 10px;
 width: auto;
 max-height: 70%;
 transform: translate(0, -50%);
}
.\33 r-campaign-2022 .campaign-gifts .box p.small {
 font-size: 0.75em;
}
div.\33 r-campaign-2022 div.box.box-present .campaign-gifts-title {
 display: block;
 margin: auto;
 max-width: -webkit-fill-available;
 margin: auto;
 transform: translate(0, 28%);
}
.\33 r-campaign-2022 .campaign-gifts .box.box-w img.campaign-gifts-title {
 display: block;
 margin: -4rem 0px -4rem -2rem;
 max-width: 55vw;
 transform: translate(0, 8%);
}
.\33 r-campaign-2022 .campaign-gifts .box.box-w img {
 max-width: none;
 margin: 0;
}
.\33 r-campaign-2022 .campaign-gifts .box.box-w {
 margin: 8em auto 2em;
 border: 4px solid #b66b6b;
 border-radius: 20px;
}
.\33 r-campaign-2022 .campaign-gifts .box.box-w .campaign-gifts-double {
 padding: 0;
}
.\33 r-campaign-2022 .campaign-gifts .box {
 max-width: 1000px;
 margin: 10% auto;
 padding: 2% 4%;
 box-shadow: -2px 2px 6px -2px #676767;
}
.\33 r-campaign-2022 .campaign-gifts .box.box-present1500 {
 max-width: 1000px;
 margin: 10% auto;
 border: 4px solid #d65f2e;
 border-radius: 20px;
}
.\33 r-campaign-2022 .campaign-gifts .box.box-present1000 {
 max-width: 1000px;
 margin: 10% auto;
 border: 4px solid #00944d;
 border-radius: 20px;
}
.\33 r-campaign-2022 .campaign-gifts .box.box-present500 {
 max-width: 1000px;
 margin: 10% auto;
 border: 4px solid #004086;
 border-radius: 20px;
}
.\33 r-campaign-2022 .box.box-present1500 .button.button-outline-present1500 {
 /* box-shadow: 0px 0px 0px 3px#e8546b; */
 color: #ffffff;
 font-weight: normal;
 background: #d65f2e;
 font-size: 0.7em;
 margin: 0.51rem 0;
 padding: 1rem;
}
.\33 r-campaign-2022 .box.box-present1000 .button.button-outline-present1000 {
 /* box-shadow: 0px 0px 0px 3px#e8546b; */
 color: #ffffff;
 font-weight: normal;
 background: #7CB543;
 font-size: 0.7em;
 margin: 0.51rem 0;
 padding: 1rem;
}
.\33 r-campaign-2022 .box.box-present500 .button.button-outline-present500 {
 color: #ffffff;
 font-weight: normal;
 background: #006FBC;
 font-size: 0.7em;
 margin: 0.51rem 0;
 padding: 1rem;
}
p.button-area.present-company {
 display: flex;
 background-color: #F2AE94;
 font-size: 1.2rem !important;
 font-weight: 700;
 color: #00000 !important;
 padding: 0.5em;
 justify-content: space-between;
 border-radius: 10px;
}
.box.box-present1000 p.button-area.present-company {
 background-color: #DDF8C1;
}
.box.box-present500 p.button-area.present-company {
 background-color: #B2E3F8;
}
.\33 r-campaign-2022 .campaign-gifts-image {
 display: block;
 margin: auto;
 box-shadow: none;
}
.\33 r-campaign-2022 .campaign-gifts-image img {
 max-width: fit-content;
}
.box-w .row {
 margin: -2rem auto 2rem;
}

/* スマホのスタイル（480px以下） */
@media (max-width: 480px) {
p.button-area.present-company {
 font-size: 1rem !important;;
}
}
/* スマホの時だけ改行させるクラス */
.br-sp {
    display: none;
}

@media (max-width: 600px) {
    .br-sp {
        display: block;
    }
}
/*-------------------------------------
  実施店舗
---------------------------------------*/
.\33 r-campaign-2022 .campaign-store-item picture, .\33 r-campaign-2022 .campaign-store-item p {
 height: 90px;
 background-color: rgba(255, 255, 255, 0);
 border: 1px solid #666666;
 border-radius: 8px;
 box-shadow: -2px 2px 10px -6px rgba(0, 0, 0, 0.6);
}
.campaign-store h4 {
 position: relative;
 margin-top: 6%;
 text-align: center;
}
.campaign-store h4:before {
 content: "";
 position: absolute;
 top: 50%;
 display: block;
 width: 100%;
 height: 2px;
 border-top: solid 2px #bebebe;
 z-index: 0;
}
.campaign-store h4 span {
 position: relative;
 padding: 0 1em;
 background: #fff;
 z-index: 1;
}
.\33 r-campaign-2022 .campaign-store-region + p.caution {
 padding: 2.5% 0 1%;
 background-position: top;
 background-size: 15px 2px;
 background-repeat: repeat-x;
}
.\33 r-campaign-2022 p.caution {
 padding: 2.5% 0;
 text-align: right;
 font-size: smaller;
}
.\33 r-campaign-2022 .campaign-item-half-row {
 display: flex;
 flex-direction: column;
}
.\33 r-campaign-2022 .campaign-item-half {
 width: 100%;
}
/*-------------------------------------
  協力
---------------------------------------*/
.\33 r-campaign-2022 .campaign-cooperation-region {
 display: -ms-flexbox;
 display: flex;
 -ms-flex-pack: center;
 justify-content: center;
 -ms-flex-wrap: wrap;
 flex-wrap: wrap;
 margin: 1% auto;
 justify-content: space-around;
}
.\33 r-campaign-2022 .campaign-cooperation-region:last-of-type {
 display: -ms-flexbox;
 display: flex;
 -ms-flex-pack: center;
 -ms-flex-wrap: wrap;
 flex-wrap: wrap;
 margin: 3% auto;
 justify-content: space-around;
}
.campaign-cooperation-region picture {
 margin: 10px;
 width: 41%;
 text-align: center;
 align-self: center;
 max-width: fit-content;
}
.campaign-cooperation-region:last-of-type picture {
 max-width: fit-content;
 align-self: flex-end;
}
.campaign-store-region::after {
 content: none !important;
}
p.button-area.present-company .text {
 display: flex;
}
p.button-area span {
 display: flex;
 color: #000000 !important;
 font-weight: 600;
 font-size: 0.7em;
}
/*-------------------------------------
  Media
---------------------------------------*/
@media screen and (min-width: 413px) {
 .\33 r-campaign-2022 .campaign-item {
  height: 175px;
  font-size: 1em;
 }
 .campaign-gifts p.gifts-text {
  margin: 0rem auto 0rem;
  padding: 10rem 0 0rem;
 }
 .\33 r-campaign-2022 picture.title-banner.right img {
  width: 79vw;
  margin-top: -4vh;
 }
 .\33 r-campaign-2022 picture.title-banner.right img {
  width: 82vw;
  margin-top: -4.5vh;
  margin-left: -3rem;
 }
 .campaign-item-half .campaign-item {
  width: 100%;
 }
 .campaign-cooperation-region {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: flex-start;
  justify-content: flex-start !important;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin: 3% auto;
 }
 .campaign-cooperation-region picture {
  margin: 10px;
  width: 23%;
  text-align: center;
  align-self: center;
  max-width: -webkit-fill-available;
 }
 .\33 r-campaign-2022 .campaign-cooperation-region:last-of-type {
  justify-content: space-around !important;
 }
 .\33 r-campaign-2022 .campaign-header::before {
  background: #FFFFFF;
  opacity: 0.7;
 }
 .\33 r-campaign-2022 picture.title-banner.right img {
  width: 79vw;
  margin-top: -4vh;
 }
 .\33 r-campaign-2022 .campaign-overview-schedule {
  margin: 3.5% auto;
  font-size: 1em;
  line-height: 1.9;
  font-weight: bolder;
  border: solid 1px #000;
 }
 h3#overview.gifts {
  margin: 4rem auto -12rem;
 }
 .\33 r-campaign-2022 .campaign-gifts .box.box-w img.campaign-gifts-title {
  display: block;
  margin: -4rem 0px -10px -4rem;
  max-width: 30vw;
  transform: translate(0, 11%);
 }
}
@media screen and (max-width: 768px) {
 .pc_only, .takara-detail .pc_only {
  display: none;
 }
 .sp_only {
  display: inline-block;
 }
 .\33 r-campaign-2022 > div.campaign-header.bg-3r.bg-01 > div.campaign-menu.bg-01 a img {
  width: 7.7rem;
  height: 1rem;
 }
 .\33 r-campaign-2022 > div.campaign-header.bg-3r.bg-01 > div.campaign-menu.bg-01 a:nth-child(4) img {
  width: 5.6rem;
 }
 .\33 r-campaign-2022 .campaign-menu {
  padding: 1rem 0px;
 }
 .\33 r-campaign-2022 .campaign-gifts .box.box-present1000 {
  max-width: 1000px;
 }
 .\33 r-campaign-2022 .campaign-gifts .box.box-present500 {
  max-width: 1000px;
  margin: 19% auto;
 }
 .\33 r-campaign-2022 .campaign-gifts .box.box-w img.campaign-gifts-title {
  margin: -4rem 0px -34px -2rem;
  max-width: 47vw;
  transform: translate(0, 30%);
 }
 ul.sp-submenu {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-around;
  padding: 1.5rem 0 0;
 }
 .\33 r-campaign-2022 picture.title-banner.right img {
  width: 82vw;
  margin-top: -1.5vh;
  margin-left: -3rem;
 }
 .\33 r-campaign-2022 .campaign-header::before {
  background: #FFFFFF;
  opacity: 0.7;
 }
 .cover {
  background: rgba(255, 255, 255, 0.7);
  margin-bottom: -2rem;
 }
 .campaign-gifts .box .button {
  margin: 5% auto 2rem;
 }

 .\33 r-campaign-2022 .campaign-item {
  height: 290px;
  font-size: 0.9em;
  padding-top: 1rem;
 }
 .\33 r-campaign-2022 .products-box {
  margin: 2rem 1rem 1rem;
  padding: 3rem 2rem 3rem;
 }
 .products-box img.ttl {
  margin: -4rem auto 0rem;
  width: 100%;
  margin-top: -20px;
 }
}
@media screen and (min-width: 768px) {
 #wrapper {
  font-size: 18px;
 }
 .col1-pc {
  width: 32% !important;
 }
 .col2-pc {
  width: 48% !important;
 }
 .col3-pc {
  width: 66.66666% !important;
 }
 .store {
  width: 14.27777777%;
 }
 .takara-detail2 {
  display: none;
 }
 .campaign-header.bg-3r .title-text1 {
  padding: 1em 1em 0.2em;
  text-align: center;
 }
 .campaign-header.bg-3r .title-text1 img {
  width: 55vw;
 }
 .\33 r-campaign-2022 .campaign-header.bg-3r .campaign-banner {
  margin: auto;
  width: auto;
  display: block;
 }
 .\33 r-campaign-2022 .campaign-header.bg-3r .campaign-banner .campaign-banner-title {
  max-width: 1200px;
  display: block;
  margin: 0 auto;
 }
 .\33 .oubo-button {
  margin: auto;
 }
 .howto-text {
  padding: 0px 10% !important;
  font-size: 0.93em;
 }
 .text-center {
  text-align: center;
 }
 .\33 r-campaign-2022 picture.title-banner.left {
  margin: 2vw auto auto -1vw;
  float: none;
  text-align: left;
 }
 .\33 r-campaign-2022 picture.title-banner.right {
  text-align: right;
  display: block;
  margin: 0 -3vw;
 }
 .\33 r-campaign-2022 picture.title-banner.center {
  text-align: center;
  display: block;
  margin: 30px auto;
 }
 .\33 r-campaign-2022 picture.title-banner.center img {
  max-width: 900px;
 }
 .\33 r-campaign-2022 picture.title-banner.left img {
  width: fit-content;
  max-width: 23vw;
  margin: -1vh auto auto 3vw;
 }
 .\33 r-campaign-2022 picture.title-banner.right img {
  margin-top: 0vh;
  width: fit-content;
  max-width: 47vw;
  margin-left: 0rem;
 }
 .\33 r-campaign-2022 picture.title-banner.right img + img {
  width: fit-content;
  margin: 2vh 10vh 12vh auto;
  max-width: 40vw;
 }
 .\33 r-campaign-2022 .campaign-header.bg-3r .title-text1 {
  padding: 3em 1em 0.2em;
  text-align: center;
 }
 .\33 r-campaign-2022 .campaign-menu .g-container {
  -ms-flex-wrap: inherit;
  flex-wrap: inherit;
  justify-content: center;
  margin: 0rem auto 2rem;
 }
 .campaign-menu {
  margin: 2% auto 25px;
 }
 .\33 r-campaign-2022 .campaign-menu .button {
  width: 22%;
  margin: 1% 0.5%;
  padding: 1.5% 0 1.75em;
  background-color: #0000009e;
 }
 .campaign-overview-info {
  font-size: 1.25em;
  margin: 1em 2.5em 2.5em;
 }
 .campaign-banner .title-text {
  margin: 1.5em 2em;
 }
 .\33 r-campaign-2023 .campaign-header.bg-3r .campaign-banner {
  max-width: 1200px;
 }
 .box .row {
  display: flex;
  margin: 1rem auto;
  flex-direction: column;
 }
 .box-w .row {
  display: flex;
  margin: 1rem auto;
  justify-content: space-between;
  align-items: center;
  margin-top: -6rem;
 }
 div.campaign-gifts.bg-01 div.box.box-w div {
  display: flex;
  flex-direction: row;
 }
 div.campaign-gifts.bg-01 div.box.box-w div img {
  width: 100%;
 }
 .box .item-contents {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: center;
  justify-content: center;
  -ms-flex-align: center;
  align-items: center;
  width: 22%;
  margin-right: auto;
 }
 .\33 r-campaign-2022 .campaign-gifts .box .button {
  width: 35%;
  /* margin: -3rem auto; */
  padding: 0.6rem 1.1rem;
  display: flex;
  justify-content: center;
  margin: 0 !important;
  align-items: center;
  max-height: 3rem;
 }
 .\33 r-campaign-2022 .box-contents {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: justify;
  -ms-flex-wrap: wrap;
  flex-direction: row;
  width: 100%;
  align-items: flex-start;
  margin-top: 2rem;
 }
 .box .item-contents {
  width: 100%;
  margin-right: 1%;
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
 }
 .box .text-contents {
  display: flex;
  width: 100%;
  flex-direction: column-reverse;
 }
 .box .text-contents img {
  max-width: 45%;
  margin-left: 0;
 }
 .\33 r-campaign-2022 .campaign-item.hadalabo, .\33 r-campaign-2022 .campaign-item.lux, .\33 r-campaign-2022 .campaign-item.milky, .\33 r-campaign-2022 .campaign-item.bathclin, .\33 r-campaign-2022 .campaign-item.gekiochikun {
  font-size: 0.9em;
 }
 .\33 r-campaign-2022 .campaign-item.dove {
  font-size: 0.8em;
 }
 .\33 r-campaign-2022 .campaign-gifts .box {
  padding: 1% 4%;
 }
 .\33 r-campaign-2022 .pin-right, .\33 r-campaign-2022 .pin-left {
  position: absolute;
  top: -1rem;
 }
 .\33 r-campaign-2022 .pin-right {
  right: 0rem;
 }
 .\33 r-campaign-2022 .pin-left {
  left: 1rem;
 }
 .\33 r-campaign-2022 .campaign-gifts .box p.small {
  margin-top: 0;
 }
 .\33 r-campaign-2022 p.button-area.present-company {
  display: flex;
  flex-direction: row;
 }
 .box.box-w .item-contents {
  display: -ms-flexbox;
  display: block;
 }
 .box.box-w .right-contents {
  width: auto;
 }
 .\33 r-campaign-2022 .campaign-products-notice {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: flex-start;
 }
 .\33 r-campaign-2022 .campaign-products-notice li {
  display: inline-block;
  margin: 0.5rem 0.3rem 0 0;
  font-weight: 500;
 }
 .\33 r-campaign-2022 .campaign-gifts-title {
  max-width: 100%;
 }
 .\33 r-campaign-2022 .campaign-item {
  height: 250px;
  font-size: 0.9em;
 }
 .\33 r-campaign-2022 .campaign-gifts-title1000, .\33 r-campaign-2022 .campaign-gifts-title500 {
  max-width: 30vw;
  margin: auto auto auto -4rem;
  transform: translate(0, -59.5%);
  margin-bottom: 2rem;
 }
 img.pin-center {
  max-width: 73%;
  /* text-align: center; */
  margin: -6rem auto 0;
  display: block;
 }
 p.button-area span {
  display: flex;
  color: #000000 !important;
  font-weight: 600;
  font-size: 0.7em;
 }
 p.button-area.present-company {
  display: flex;
  flex-direction: row;
 }
 .\33 r-campaign-2022 .campaign-gifts a.button img .campaign-gifts-image {
  width: 10%;
 }
 .\33 r-campaign-2022 .campaign-gifts .box p {
  margin: 0px 0.5rem 1rem;
 }
 .\33 r-campaign-2022 .campaign-item-half-row {
  width: 100%;
  display: flex;
  flex-direction: row;
  justify-content: space-between;
 }
 .\33 r-campaign-2022 .campaign-item-half {
  width: 49%;
 }
 .\33 r-campaign-2022 .campaign-gifts-title1000, .\33 r-campaign-2022 .campaign-gifts-title500 {
  max-width: 36vw;
  margin: auto auto auto -4rem;
  transform: translate(0, -45.5%);
  margin-bottom: 1rem;
 }
 .\33 r-campaign-2022 .campaign-gifts .box.box-w img.campaign-gifts-title {
  max-width: 35vw;
  display: block;
  margin: -3rem 0px -41px -4rem;
  transform: translate(0, 1%);
 }
}
@media screen and (min-width: 821px) {
 .\33 r-campaign-2022 .campaign-gifts-title1000, .\33 r-campaign-2022 .campaign-gifts-title500 {
  max-width: 32vw;
  margin: auto auto auto -4rem;
  transform: translate(0, -54.5%);
  margin-bottom: 2rem;
 }
 .\33 r-campaign-2022 .campaign-gifts .box.box-w img.campaign-gifts-title {
  max-width: 32vw;
  display: block;
  margin: -2rem 0px -29px -4rem;
  transform: translate(0, -17%);
 }
 .\33 r-campaign-2022 picture.title-banner.right img {
  max-width: 37vw;
  margin: 5px 0rem 5rem -4rem
 }
 a.button.btn-oubo {
  padding: 0;
 }
}
@media screen and (min-width: 1100px) {
 .\33 r-campaign-2022 .campaign-gifts-title1000, .\33 r-campaign-2022 .campaign-gifts-title500 {
  max-width: 30vw;
  margin: -1rem auto auto -6rem;
  transform: translate(0, -41.5%);
  margin-bottom: 1rem;
 }
 .\33 r-campaign-2022 .campaign-gifts .box.box-w img.campaign-gifts-title {
  max-width: 30vw;
  display: block;
  margin: -7rem 0px -79px -7rem;
  transform: translate(0, 10%);
 }
 .\33 r-campaign-2022 picture.title-banner.right img {
  margin: 0 auto 50px auto;
  width: auto;
  max-width: 1100px;
  text-align: center;
 }
}
@media screen and (min-width: 1700px) {
 .\33 r-campaign-2022 .campaign-header.bg-3r picture.title-banner.background {
  width: 100vw;
  margin-top: -100px;
  margin-left: 0;
  bottom: 0;
  top: auto;
  left: auto;
  right: 0;
 }
 .\33 r-campaign-2022 .campaign-gifts-title1000, .\33 r-campaign-2022 .campaign-gifts-title500 {
  max-width: 30vw;
  margin: 0rem auto auto -7rem;
  transform: translate(0, -39.5%);
  margin-bottom: -9rem;
 }
 .\33 r-campaign-2022 .campaign-gifts .box.box-w img.campaign-gifts-title {
  max-width: 30vw;
  display: block;
  margin: -8rem 0px -34px -6rem;
  transform: translate(0, 12%);
 }
}
/*-------------------------------------
  IE only
---------------------------------------*/
@media screen and (-ms-high-contrast: active), (-ms-high-contrast: none) {
 .present dl dt, .courses-details h3 {
  font-family: initial !important;
 }
}
@media all and (-ms-high-contrast: none) {
 /* IE */
 @media screen and (max-width: 768px) {
  .\33 r-campaign-2022 .campaign-header.bg-3r .campaign-banner .campaign-banner-title {
   max-width: 1200px;
   display: flex;
   margin: 0 7%;
   ;
  }
 }
 .campaign-header.bg-3r picture.title-banner.background {
  display: block !important;
  position: relative !important;
 }
 .campaign-header.bg-3r picture.title-banner.background img {
  position: absolute !important;
  top: -0% !important;
  left: 50% !important;
  transform: translate(-50%, 0%) !important;
  -webkit-transform: translate(-50%, -50%) !important;
  -moz-transform: translate(-50%, -50%) !important;
 }
 picture.title-banner.right {
  margin: 0 !important;
 }
 picture.title-banner.right img {
  max-width: 32vw !important;
 }
 picture.title-banner.right img + img {
  width: auto !important;
  margin: 2vh 6vh 12vh !important;
 }
 picture.title-banner.left img {
  max-width: 10vw !important;
  margin: 0vw 4vw 0 !important;
 }
 img {
  flex-shrink: 0 !important;
 }
 .campaign-store-region::after {
  content: none !important;
 }
}
@-moz-document url-prefix() {
 /* Firefox */
 picture.title-banner.left {
  float: right !important;
 }
 picture.title-banner.left img {
  max-width: 20vw !important;
 }
 @media screen and (min-width: 768px) {
  .campaign-header.bg-3r picture.title-banner.background {
   width: -moz-available;
  }
  picture.title-banner.right {
   margin: 1vh 12vw 6vh !important;
  }
  picture.title-banner.right img {
   max-width: 32vw !important;
  }
  picture.title-banner.right img + img {
   width: auto !important;
   margin: 2vh 6vh 12vh !important;
  }
  picture.title-banner.left img {
   max-width: 10vw !important;
   margin: 0vw 4vw 0 !important;
  }
  img {
   -moz-force-broken-image-icon: 1 !important;
  }
  .campaign-store-region::after {
   content: none !important;
  }
  .box .item-contents {
   display: -moz-box;
  }
 }
}