@charset "utf-8";

body.brand {
  min-width: 1200px;
  margin: auto;
}

.product .pankuzu {
  color: #c15160;
  margin-bottom: 30px;
}
.product img {
  display: inline-block;
  line-height: 1;
  vertical-align: bottom;
}
.product p {
  text-align: left;
}
.product a[href^="tel:"] {
  pointer-events: none;
}
.product strong {
  font-weight: bold;
}
.product sup {
  -webkit-transform: scale(0.75);
  transform: scale(0.75);
  vertical-align: super;
  font-size: 64%;
}

.sp_only {
  display: none !important;
}

/* =======================================================
content
======================================================= */
.content_inner {
  width: 1200px;
  margin: 0 auto;
}
.contents_wrapper {
  position: relative;
  text-align: left;
}

.contents--gray {background-color: #f5f5f5!important;}
.contents--beige {background: #fffcf3!important; }
.contents--yellow {background: #fffcf3!important; }
.contents--pink {background: #f9efef!important; }
.contents--pinkLight {background: #fdf3f1!important; }
.contents--blue {background: #ebf2f8!important; }
.contents--green {background: #f6f9ea!important; }
.contents--purple {background: #f4f1ff!important; }

/* =======================================================
color
======================================================= */
.bg--gray {background-color: #f5f5f5!important;}
.bg-beige {background: #fffcf3!important; }
.bg-yellow {background: #fffcf3!important; }
.bg-pink {background: #f9efef!important; }
.bg-pinkLight {background: #fdf3f1!important; }
.bg-blue {background: #ebf2f8!important; }
.bg-green {background: #f6f9ea!important; }
.bg-purple {background: #f4f1ff!important; }

.text-red { color: #a50319!important; }
.text-beige {color: #efbc23!important; }
.text-yellow {color: #846300!important; }
.text-pink {color: #c95a9f!important; }
.text-pinkLight {color: #ea6e8d!important; }
.text-blue {color: #408bc9!important; }
.text-green {color: #20a091!important; }
.text-purple {color: #8256bf!important; }


/* =======================================================
font-size
======================================================= */
html { font-size: 62.5%; } /* 10px */
body { font-size: 1.6rem; } /* 16px */
p, li {
  font-size: 1.6rem;
}
.contents .lev2 {
  font-size: 2.8rem;
}
.contents .lev3 {
  font-size: 2.4rem;
  font-weight: bold;
}
.contents .lev4 {
  font-size: 2rem;
}
.contents .lev5 {
  font-size: 1.8rem;
}
.contents .lev6 {
  font-size: 1.6rem;
}
.contents .text {
  font-size: 1.6rem;
}
.contents .asterisk,
.contents .note {
  font-size: 1.4rem;
  display: table;
  margin-top: 20px;
}
/* 見出し（大） */
.contents_ttl.lev2 {
  font-size: 2.5rem;
  margin-bottom: 15px;
}
/* 見出し（中） */
.contents_ttl.lev3 {
  font-size: 2.2rem;
  font-weight: bold;
  margin-bottom: 15px;
}

.annotations {
  margin-top: 10px;
}
.annotation {
  font-size: 1.4rem;
}
.contents_ttl small {
  font-size: 80%;
}
.bdr-btm-bold-gray {
  border-bottom: 2px solid #909090;
}
.mx-auto {
  margin: auto;
}
.sp_indent,
.pc_indent {
  margin-left: 20px;
}

/* =======================================================
ampaign_decoration
======================================================= */
/* label
---------------------------------------------- */
.campaign_decoration--label {
  line-height: 1;
  font-size: 1.6rem;
  font-weight: bold;
  border-radius: 20px;
  display: inline-block;
  background: #222222;
  color: #ffffff!important;
  padding: 10px 15px;
}
.campaign_decoration--label.decoration_color--yellow {
  background: #efbc23;
}
.campaign_decoration--label.decoration_color--pink {
  background: #c95a9f;
}
.campaign_decoration--label.decoration_color--pinkLight {
  background: #ea6e8d;
}
.campaign_decoration--label.decoration_color--blue {
  background: #408bc9;
}
.campaign_decoration--label.decoration_color--green {
  background: #20a091;
}
.campaign_decoration--label.decoration_color--purple {
  background: #8256bf;
}

/* left_line
---------------------------------------------- */
.campaign_decoration--left_line {
  padding: 3px 0 3px 10px;
  border-left: 5px solid #a50319;
}
.campaign_decoration--left_line .campaign_decoration--title {
  font-size: 2.4rem;
  font-weight: bold;
}
.campaign_decoration--left_line .campaign_decoration--title_sub {
  font-size: 2.0rem;
  font-weight: bold;
}
.campaign_decoration--left_line.decoration_color--yellow {
  border-left: 5px solid #efbc23;
}
.campaign_decoration--left_line.decoration_color--pink {
  border-left: 5px solid #c95a9f;
}
.campaign_decoration--left_line.decoration_color--pinkLight {
  border-left: 5px solid #ea6e8d;
}
.campaign_decoration--left_line.decoration_color--blue {
  border-left: 5px solid #408bc9;
}
.campaign_decoration--left_line.decoration_color--green {
  border-left: 5px solid #20a091;
}
.campaign_decoration--left_line.decoration_color--purple {
  border-left: 5px solid #8256bf;
}

/* under_line
---------------------------------------------- */
.campaign_decoration--under_line {
  position: relative;
  padding-bottom: 15px;
  border-bottom: 4px solid #d3a8ae;
}
.campaign_decoration--under_line:before {
  position: absolute;
  bottom: -4px;
  left: 0;
  width: 160px;
  height: 4px;
  content: '';
  background: #a50319;
}
.campaign_decoration--under_line .campaign_decoration--title {
  font-size: 2.4rem;
  font-weight: bold;
}

.campaign_decoration--under_line.decoration_color--yellow {
  border-bottom: 4px solid #f7df95;
}
.campaign_decoration--under_line.decoration_color--yellow:before {
  background: #efbc23;
}
.campaign_decoration--under_line.decoration_color--yellow .campaign_decoration--title {
  color: #846300;
}

.campaign_decoration--under_line.decoration_color--pink {
  border-bottom: 4px solid #f0bedd;
}
.campaign_decoration--under_line.decoration_color--pink:before {
  background: #c95a9f;
}
.campaign_decoration--under_line.decoration_color--pink .campaign_decoration--title {
  color: #c95a9f;
}

.campaign_decoration--under_line.decoration_color--pinkLight {
  border-bottom: 4px solid #f7c2cf;
}
.campaign_decoration--under_line.decoration_color--pinkLight:before {
  background: #ea6e8d;
}
.campaign_decoration--under_line.decoration_color--pinkLight .campaign_decoration--title {
  color: #ea6e8d;
}

.campaign_decoration--under_line.decoration_color--blue {
  border-bottom: 4px solid #b7d5ee;
}
.campaign_decoration--under_line.decoration_color--blue:before {
  background: #408bc9;
}
.campaign_decoration--under_line.decoration_color--blue .campaign_decoration--title {
  color: #408bc9;
}

.campaign_decoration--under_line.decoration_color--green {
  border-bottom: 4px solid #bcd5d2;
}
.campaign_decoration--under_line.decoration_color--green:before {
  background: #20a091;
}
.campaign_decoration--under_line.decoration_color--green .campaign_decoration--title {
  color: #20a091;
}

.campaign_decoration--under_line.decoration_color--purple {
  border-bottom: 4px solid #d6c3f2;
}
.campaign_decoration--under_line.decoration_color--purple:before {
  background: #8256bf;
}
.campaign_decoration--under_line.decoration_color--purple .campaign_decoration--title {
  color: #8256bf;
}

/* white_box
---------------------------------------------- */
.campaign_decoration--white_box {
  position: relative;
  padding: 20px 30px;
  background: #ffffff;
}
.campaign_decoration--white_box:before {
  position: absolute;
  top: -4px;
  left: 0;
  width: 80px;
  height: 4px;
  content: '';
  background: #a50319;
}
.campaign_decoration--white_box .campaign_decoration--title {
  font-size: 2.0rem;
  font-weight: bold;
  margin-bottom: 20px;
  color: #a50319;
}
.campaign_decoration--white_box.decoration_color--yellow:before {
  background: #efbc23;
}
.campaign_decoration--white_box.decoration_color--yellow .campaign_decoration--title {
  color: #846300;
}
.campaign_decoration--white_box.decoration_color--pink:before {
  background: #c95a9f;
}
.campaign_decoration--white_box.decoration_color--pink .campaign_decoration--title {
  color: #c95a9f;
}
.campaign_decoration--white_box.decoration_color--pinkLight:before {
  background: #ea6e8d;
}
.campaign_decoration--white_box.decoration_color--pinkLight .campaign_decoration--title {
  color: #ea6e8d;
}
.campaign_decoration--white_box.decoration_color--blue:before {
  background: #408bc9;
}
.campaign_decoration--white_box.decoration_color--blue .campaign_decoration--title {
  color: #408bc9;
}
.campaign_decoration--white_box.decoration_color--green:before {
  background: #20a091;
}
.campaign_decoration--white_box.decoration_color--green .campaign_decoration--title {
  color: #20a091;
}
.campaign_decoration--white_box.decoration_color--purple:before {
  background: #8256bf;
}
.campaign_decoration--white_box.decoration_color--purple .campaign_decoration--title {
  color: #8256bf;
}

/* brackets
---------------------------------------------- */
.campaign_decoration--brackets {
  position: relative;
  padding: 30px;
}
.campaign_decoration--brackets:before,
.campaign_decoration--brackets:after {
  position: absolute;
  content: '';
}
.campaign_decoration--brackets:before {
  top: 0;
  left: 0;
  width: 80px;
  height: 80px;
  border-top: 2px solid #a50319;
  border-left: 2px solid #a50319;
}
.campaign_decoration--brackets:after {
  right: 0;
  bottom: 0;
  width: 80px;
  height: 80px;
  border-right: 2px solid #a50319;
  border-bottom: 2px solid #a50319;
}
.campaign_decoration--brackets .campaign_decoration--title {
  font-size: 2.0rem;
  font-weight: bold;
  margin-bottom: 20px;
  color: #a50319;
}
.campaign_decoration--brackets.decoration_color--yellow:before {
  border-top: 2px solid #efbc23;
  border-left: 2px solid #efbc23;
}
.campaign_decoration--brackets.decoration_color--yellow:after {
  border-right: 2px solid #efbc23;
  border-bottom: 2px solid #efbc23;
}
.campaign_decoration--brackets.decoration_color--yellow .campaign_decoration--title {
  color: #846300;
}
.campaign_decoration--brackets.decoration_color--pink:before {
  border-top: 2px solid #c95a9f;
  border-left: 2px solid #c95a9f;
}
.campaign_decoration--brackets.decoration_color--pink:after {
  border-right: 2px solid #c95a9f;
  border-bottom: 2px solid #c95a9f;
}
.campaign_decoration--brackets.decoration_color--pink .campaign_decoration--title {
  color: #c95a9f;
}
.campaign_decoration--brackets.decoration_color--pinkLight:before {
  border-top: 2px solid #ea6e8d;
  border-left: 2px solid #ea6e8d;
}
.campaign_decoration--brackets.decoration_color--pinkLight:after {
  border-right: 2px solid #ea6e8d;
  border-bottom: 2px solid #ea6e8d;
}
.campaign_decoration--brackets.decoration_color--pinkLight .campaign_decoration--title {
  color: #ea6e8d;
}
.campaign_decoration--brackets.decoration_color--blue:before {
  border-top: 2px solid #408bc9;
  border-left: 2px solid #408bc9;
}
.campaign_decoration--brackets.decoration_color--blue:after {
  border-right: 2px solid #408bc9;
  border-bottom: 2px solid #408bc9;
}
.campaign_decoration--brackets.decoration_color--blue .campaign_decoration--title {
  color: #408bc9;
}
.campaign_decoration--brackets.decoration_color--green:before {
  border-top: 2px solid #20a091;
  border-left: 2px solid #20a091;
}
.campaign_decoration--brackets.decoration_color--green:after {
  border-right: 2px solid #20a091;
  border-bottom: 2px solid #20a091;
}
.campaign_decoration--brackets.decoration_color--green .campaign_decoration--title {
  color: #20a091;
}
.campaign_decoration--brackets.decoration_color--purple:before {
  border-top: 2px solid #8256bf;
  border-left: 2px solid #8256bf;
}
.campaign_decoration--brackets.decoration_color--purple:after {
  border-right: 2px solid #8256bf;
  border-bottom: 2px solid #8256bf;
}
.campaign_decoration--brackets.decoration_color--purple .campaign_decoration--title {
  color: #8256bf;
}

/* =======================================================
anc_nav
======================================================= */
.anc_nav {
  width: 980px; /*20220616 追加*/
  margin: 0 auto; /*20220616 追加*/
  display: flex;
  justify-content: space-between;
}

.anc_nav a {
  transition: 0.2s linear;
}

.anc_nav a:hover {
  opacity: 0.6;
}

.anc_nav li {
  position: relative;
}
.anc_nav .cp_end {
  position: absolute;
  width: 95%;
  height: 112px;
  left: 2.5%;
  top: 8px;
  background-color: rgba(255, 255, 255, 0.85);
  color: #222222;
  font-size: 16px;
  display: flex;
  justify-content: center;
  align-items: center;
}

/* nav2 */
.anc_nav_2col {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
.anc_nav_2col li {
  margin-top: 30px;
}

/* =======================================================
local navigation
======================================================= */
.navigation[data-column] {
  width: 980px;
  margin-right: auto;
  margin-left: auto;
}
.navigation[data-column] .navigationList {
  display: flex;
  justify-content: center;
  align-items: center;
  margin: -20px 0 0 -20px;
}
.navigation[data-column] .navigationItem {
  flex: 1;
  margin: 20px 0 0 20px;
}
.navigation[data-column] .navigationImage {
  display: block;
  width: 100%;
  max-width: 100%;
  height: auto;
}

/* column1 */
.navigation[data-column="1"] .navigationList {
  flex-wrap: wrap;
}
.navigation[data-column="1"] .navigationItem {
  flex: none;
  width: calc(((100% - (20px * 1)) / 1) - .1px);
}

/* column2 */
.navigation[data-column="2"] .navigationList {
  flex-wrap: wrap;
}
.navigation[data-column="2"] .navigationItem {
  flex: none;
  width: calc(((100% - (20px * 2)) / 2) - .1px);
}

/* column3 */
.navigation[data-column="3"] .navigationList {
  flex-wrap: wrap;
}
.navigation[data-column="3"] .navigationItem {
  flex: none;
  width: calc(((100% - (20px * 3)) / 3) - .1px);
}

/* column4 */
.navigation[data-column="4"] .navigationList {
  flex-wrap: wrap;
}
.navigation[data-column="4"] .navigationItem {
  flex: none;
  width: calc(((100% - (20px * 4)) / 4) - .1px);
}

/* column5 */
.navigation[data-column="5"] .navigationList {
  flex-wrap: wrap;
}
.navigation[data-column="5"] .navigationItem {
  flex: none;
  width: calc(((100% - (20px * 5)) / 5) - .1px);
}

/* column6 */
.navigation[data-column="6"] .navigationList {
  flex-wrap: wrap;
}
.navigation[data-column="6"] .navigationItem {
  flex: none;
  width: calc(((100% - (20px * 6)) / 6) - .1px);
}

/* =======================================================
flex-box
======================================================= */
.d-flex {
  display: -ms-flexbox !important;
  display: flex !important;
}
.d-flex .itemImg {
  width: 383px;
}
.d-flex .itemImg img {
  width: 355px;
}
.used_items li {
  margin-top: 15px;
}
.used_items li a {
  text-decoration: underline;
  font-size: 1.6rem;
}

/* =======================================================
box-style
======================================================= */
.box-white {
  background: #ffffff;
  padding: 40px 40px;
  border: 1px solid #e3e3e3;
}

.box-red {
  border: 1px solid #a50319;
  padding: 20px 20px;
  display: inline-block;
}

.box-squareFrame {
  display: inline-block;
  border: 1px solid #222222;
  background-color: #ffffff;
  padding: 6px 10px;
}

/* =======================================================
cart
======================================================= */
.prdctDetail_listInner {
  margin: 0 auto;
}

.prdctDetail_listTitle {
  margin: 50px auto 25px;
  font-size: 2.6rem;
}

.prdctDetail_listTitle span {
  font-size: 2.4rem;
}

.prdctDetail_item {
  margin: 0 auto 0;
  background-color: #fff;
  box-sizing: border-box;
  padding: 0;
}

.prdctDetail_itemInner {
  width: 1140px;
  margin: auto;
}

.prdctDetail_itemInner .itemAll {
  display: flex;
}

.prdctDetail_items .prdctDetail_listInner.prdctDetail_item--top .box-white {
  border-bottom: none;
}

.prdctDetail_itemLeft {
  /* flex: 1;
  display: flex;
  position: relative; */
}

.prdctDetail_itemRight {
  width: 497px;
  padding-left: 40px;
  border-left: 1px solid #e3e3e3;
  margin-left: 40px;
  text-align: left;
  position: relative;
}

.prdctDetail_itemRightLogo {
  position: absolute;
  right: 0;
  top: 0;
}

.prdctDetail_itemRightLogo_eco {
  position: absolute;
  right: 0;
  top: 50;
  margin-top: -20px;
  width: 109px;
}

.prdctDetail_itemRightLogo img {
  width: 109px;
}

.prdctDetail_itemRightIcon {
  position: absolute;
  top: 5px;
  right: 5px;
  width: 100px;
}

.prdctDetail_itemRightIcon img {
  width: 100%;
}
.prdctDetail_itemRightIcon img + img {
  padding-top: 10px;
}

.prdctDetail_itemRightLabel {
  padding: 6px 15px;
  font-size: 1.6rem;
  font-weight: bold;
  color: #fff;
  text-align: center;
  background-color: #000000;
  border-radius: 50px;
  line-height: 1;
  display: inline-block;
}

.prdctDetail_itemRightSubLabel {
  padding: 6px 17px;
  font-size: 1.6rem;
  font-weight: bold;
  color: #222222;
  text-align: center;
  background-color: #fdecbb;
  border-radius: 50px;
  line-height: 1;
  display: inline-block;
}

.prdctDetail_itemRightLabelType {
  margin-left: 15px;
  font-size: 1.2rem;
}

.prdctDetail_itemRightLabelType + .prdctDetail_itemRightTitle {
  margin-top: 15px;
}

.prdctDetail_itemRightTitle {
  font-size: 2.1rem;
  line-height: 1.4;
  font-weight: bold;
  margin-bottom: 10px;
  width: calc(100% - 120px);
}

.prdctDetail_itemRightSubTitle {
  font-size: 2.1rem;
  line-height: 1.2;
  font-weight: bold;
  margin-bottom: 5px;
  margin-top: 35px;
}

.prdctDetail_itemRightBox .prdctDetail_itemRightSubTitle {
  margin-top: 0;
}

.prdctDetail_itemRightLabel + .prdctDetail_itemRightTitle {
  font-size: 2.1rem;
  margin: 20px 0 10px;
  width: calc(100% - 120px);
}

.prdctDetail_itemRightTitle sup {
  font-size: 1.6rem;
}

.prdctDetail_itemRightTxt {
  font-size: 1.6rem;
  margin-top: 10px;
  width: calc(100% - 120px);
}

.prdctDetail_itemRightLead {
  margin-top: 20px;
}

.prdctDetail_itemRightPrice,
.prdctDetail_itemRightSpecialPrice {
  font-size: 1.8rem;
  font-weight: bold;
  margin-top: 30px;
}

.prdctDetail_itemRightPrice span {
  font-size: 1.6rem;
}
.prdctDetail_itemRightSpecialPrice span {
  font-size: 1.8rem;
}

.prdctDetail_itemRightSpecialPrice {
  font-size: 2.4rem;
}

.prdctDetail_itemRightPrice + .prdctDetail_itemRightSpecialPrice {
  margin-top: 0;
}

.prdctDetail_itemRightSpecialPrice {
  color: #a70011;
}

.prdctDetail_itemRightSpecialPrice .badge {
  background: #a50319;
  font-size: 1.8rem;
  color: #ffffff;
  line-height: 1;
  padding: 5px 10px;
  font-weight: normal;
  display: inline-block;
  position: relative;
  top: -3px;
}

.prdctDetail_itemRight hr {
  border: none;
  border-top: 1px solid #e0e0e0;
  margin: 15px 0;
}

.prdctDetail_itemRightTxt strong {
  margin-bottom: 5px;
  display: block;
}

.prdctDetail_itemRightTxt sup {
  font-size: 1rem;
}

.prdctDetail_itemRightTxtSmall {
  font-size: 0.9rem;
  margin-top: 5px;
  text-indent: -10px;
  padding-left: 10px;
}

.prdctDetail_itemRightTxtSmall + .prdctDetail_itemRightTxtSmall {
  margin-top: 0;
}

.prdctDetail_itemBtn {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-top: 20px;
}

.prdctDetail_itemRightBox .prdctDetail_itemBtn {
  margin-top: 10px;
}

.itemBtn_under_prdctDetail_itemRightTxt {
  margin-top: 10px;
  font-size: 1.6rem;
}

.prdctDetail_itemRightTxtmore {
  margin-top: 15px;
  font-size: 1.6rem;
}

.prdctDetail_itemUnderTxt {
  margin-top: 20px;
}

.prdctDetail_itemCap {
  width: 272px;
  padding: 5px;
  margin-left: 50px;
  border: 1px solid #c0c0c0;
  font-size: 0.9rem;
  box-sizing: border-box;
}

.prdctDetail_itemRightBtn {
  width: 100%;
  display: flex;
}

.prdctDetail_itemCap + .prdctDetail_itemRightBtn {
  flex: 1;
}

.prdctDetail_itemRightBtn .cartBtn,
.prdctDetail_itemRightBtn .itemBtn {
  width: 195px;
  text-align: center;
  color: #fff;
  font-size: 1.6rem;
  transition: 0.2s linear;
  box-sizing: border-box;
}

.prdctDetail_itemRightBtn .itemBtn {
  margin-left: 20px;
}

.prdctDetail_itemRightBtn .cartBtn a,
.prdctDetail_itemRightBtn .itemBtn a {
  display: block;
  padding: 14px 0 13px;
  border-radius: 4px;
  font-weight: bold;
  color: #fff;
}

.prdctDetail_itemRightBtn .cartBtn a {
  background-color: #a50319;
}

.prdctDetail_itemRightBtn .itemBtn a {
  background-color: #1f1f1f;
}

.prdctDetail_itemRightBtn .cartbtn:hover,
.prdctDetail_itemRightBtn .itemBtn a:hover {
  opacity: 0.6;
}

.prdctDetail_itemRightBox {
  border: 1px solid #e3e3e3;
  margin-top: 30px;
}

.prdctDetail_itemRightBoxInner {
  padding: 20px;
  position: relative;
}

.prdctDetail_itemRight_refill {
  position: relative;
  padding-top: 20px;
  margin-top: 20px;
  border-top: 1px solid #e3e3e3;
}

.prdctDetail_itemRightReview {
  margin-top: 20px;
}

.prdctDetail_itemRightReview a {
  font-size: 1.6rem;
  color: #a50319;
  text-decoration: underline;
  font-weight: bold;
}
.prdctDetail_note {
  font-size: 1.4rem;
  border: 1px solid #e3e3e3;
  padding: 15px;
}
.prdctDetail_note_bdr {
  border: 1px solid #a50319;
  color: #a50319;
  background: #ffffff;
  padding: 3px 3px;
  font-weight: bold;
}
.bg-gray {
  background: #f7f7f7;
}
.index_bdr_red {
  border: 1px solid #a50319;
  color: #a50319;
  background: #ffffff;
  padding: 3px 3px;
  font-weight: bold;
}

/* select_cart */
.sw-ProductsItemContent_selectBox {
  position: relative;
  width: 327px;
  height: 35px;
  margin-top: 20px;
  padding-left: 10px;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  border: 1px solid #e3e3e3;
  border-radius: 0;
  box-sizing: border-box;
  line-height: 35px;
  background: #fff url("/images/icon_select.png") 100% 0 no-repeat;
  background-size: 35px 34px;
  z-index: 1;
}

select::-ms-expand {
  display: none;
}

.sw-ProductsItemContent_diabledButton {
  position: relative;
  width: 100%;
  height: 47px;
  background-color: #a5a5a5;
  color: #fff;
  border-radius: 4px;
  text-align: center;
  line-height: 47px;
  font-size: 1.5rem;
  font-weight: bold;
  z-index: 1;
}

.sw-ProductsItemContent_Buttons {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-top: 20px;
}

.prdctDetail_itemRightBtn {
  width: 100%;
  display: flex;
}

.prdctDetail_itemCap + .prdctDetail_itemRightBtn {
  flex: 1;
}

.prdctDetail_itemRightBtn .cartBtn,
.prdctDetail_itemRightBtn .itemBtn,
.sw-ProductsItemContent_Buttons .cartBtn,
.sw-ProductsItemContent_Buttons .itemBtn {
  width: 100%;
  text-align: center;
  color: #fff;
  font-size: 1.5rem;
  transition: 0.2s linear;
  box-sizing: border-box;
}

.prdctDetail_itemRightBtn .itemBtn,
.sw-ProductsItemContent_Buttons .itemBtn {
  margin-left: 20px;
}

.prdctDetail_itemRightBtn .cartBtn a,
.prdctDetail_itemRightBtn .itemBtn a,
.sw-ProductsItemContent_Buttons .cartBtn a,
.sw-ProductsItemContent_Buttons .itemBtn a {
  display: block;
  padding: 12px 0 12px;
  border-radius: 4px;
  font-weight: bold;
  color: #fff;
}

.prdctDetail_itemRightBtn .cartBtn a,
.sw-ProductsItemContent_Buttons .cartBtn a {
  background-color: #a50319;
}

.prdctDetail_itemRightBtn .itemBtn a,
.sw-ProductsItemContent_Buttons .itemBtn a {
  background-color: #1f1f1f;
}

.prdctDetail_itemRightBtn .cartbtn:hover,
.prdctDetail_itemRightBtn .itemBtn a:hover {
  opacity: 0.8;
}


/* =======================================================
campaign_subCart
======================================================= */
.campaign_subCart {}
.campaign_subCart > li + li {
  margin-top: 30px;
}
.campaign_subCart_box {
  display: flex;
  flex-wrap: nowrap;
  justify-content: space-between;
}
.campaign_subCart_left_area {
  padding-right: 52px;
  position: relative;
}
.campaign_subCart_left_area:after {
  position: absolute;
  content: "";
  top: 0;
  bottom: 0;
  right: 26px;
  margin: 0;
  border-right: 1px solid #e3e3e3;
}
.campaign_subCart_right_area {
  display: table-cell;
  vertical-align: top;
  overflow: hidden;
  width: 100%;
}
.campaign_subCart_text_area {}
.campaign_subCart_subCart_ttl {}
.campaign_subCart_subCart_desc {}
.campaign_subCart_item_area {
  display: flex;
  margin-top: 20px;
}
.campaign_subCart_item_left_area {
  width: 620px;
}
.campaign_subCart_item_right_area {
  width: 195px;
}
.campaign_subCart_item_image_area {
  display: table-cell;
  vertical-align: top;
  padding-right: 20px;
}
.campaign_subCart_item_detail_area {
  display: table-cell;
  vertical-align: top;
  overflow: hidden;
  width: 100%;
}
.campaign_subCart_item_name {
  font-size: 2.1rem;
  font-weight: bold;
  line-height: 1.4;
}
.campaign_subCart_item_text {
  font-size: 1.6rem;
  margin-top: 10px;
}
.campaign_subCart_item_price {
  font-size: 1.8rem;
  font-weight: bold;
  margin-top: 20px;
}
.campaign_subCart_item_price span {
  font-size: 1.6rem;
}
.campaign_subCart_item_specialPrice {
  font-size: 2.4rem;
  font-weight: bold;
  color: #a70011;
}
.campaign_subCart_item_specialPrice span {
  font-size: 1.8rem;
}
.campaign_subCart_item_right_area .sw-ProductsItemContent_selectBox {
  width: 100%;
}


/* =======================================================
cart 2・3カラム
======================================================= */
/* 2カラム */
.item_2col_list {
  display: flex;
  flex-wrap: wrap;
  overflow: hidden;
  margin-top: -20px;
  margin-left: -30px;
}
.item_2col_list > li {
  background-color: #ffffff;
  border: 1px solid #e5e5e5;
  box-sizing: border-box;
  width: 585px;
  margin-top: 20px;
  margin-left: 30px;
}
/* 3カラム */
.item_3col_list {
  display: flex;
  flex-wrap: wrap;
  overflow: hidden;
  margin-top: -20px;
  margin-left: -30px;
}
.item_3col_list > li {
  background-color: #ffffff;
  border: 1px solid #e5e5e5;
  box-sizing: border-box;
  width: 380px;
  margin-top: 20px;
  margin-left: 30px;
}
/* 2・3カラムのセレクトボタン */
.item_2col_list .sw-ProductsItemContent_selectBox,
.item_3col_list .sw-ProductsItemContent_selectBox {
  width: 100%;
  margin-top: 10px;
}
.item_2col_list .sw-ProductsItemContent_Buttons,
.item_3col_list .sw-ProductsItemContent_Buttons {
  display: block;
  margin-top: 10px;
}
.item_2col_list .prdctDetail_itemRightBtn .itemBtn,
.item_2col_list .sw-ProductsItemContent_Buttons .itemBtn,
.item_3col_list .prdctDetail_itemRightBtn .itemBtn,
.item_3col_list .sw-ProductsItemContent_Buttons .itemBtn {
  margin-left: 0;
  margin-top: 10px;
}
/* 共通 */
.item_box {
  padding: 20px 19px 20px;
  display: flex;
  flex-direction: column;
  align-items: baseline;
  height: 100%;
  box-sizing: border-box;
}
.item_box .item_image {
  text-align: center;
  margin-bottom: 10px;
}
.item_box .item_image img {
  width: 100%;
}
.item_box .item_label {
  padding: 6px 15px;
  font-size: 1.6rem;
  font-weight: bold;
  color: #fff;
  text-align: center;
  background-color: #000000;
  border-radius: 50px;
  line-height: 1;
  display: inline-block;
}
.item_box .item_name {
  font-size: 2.1rem;
  font-weight: bold;
  margin: 20px 0 10px;
}
.item_box .item_lead {
  font-size: 1.6rem;
  margin-top: 10px;
}
.item_box .item_price {
  font-size: 1.8rem;
  font-weight: bold;
  margin-top: 30px;
}
.item_box .item_price span {
  font-size: 1.6rem;
}
.item_box .item_specialPrice {
  font-size: 2.4rem;
  font-weight: bold;
  color: #a70011;
}
.item_box .item_specialPrice span {
  font-size: 1.8rem;
}
.item_box .cart_btn,
.item_box .detail_btn {
  border-radius: 4px;
  -webkit-border-radius: 4px;
  -moz-border-radius: 4px;
  color: #ffffff;
  display: block;
  font-size: 1.5rem;
  font-weight: bold;
  width: 100%;
  height: auto;
  padding: 12px 0 12px;
  margin-top: 10px;
  text-align: center;
  position: relative;
  z-index: 1;
}
.item_box .cart_btn {
  background-color: #a50319;
}
.item_box .cart_btn:hover {
  background-color: #b9172d;
}

.item_box .detail_btn {
  background-color: #000000;
}
.item_box .detail_btn:hover {
  background-color: #4f4f4f;
}
.item_box .item_footer {
  width: 100%;
  margin-top: auto;
}


/* =======================================================
modal
======================================================= */
.bg_modal {
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  background-color: rgba(0, 0, 0, 0.6);
  width: 100%;
  height: 100%;
  z-index: 999;
}
.cont_modal {
  border-radius: 6px;
  background-color: #ffffff;
  display: none;
  padding: 50px 22px;
  width: 800px;
  height: 100%;
  max-height: 80vh;
  position: fixed;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
  text-align: center;
  z-index: 1000;
  box-sizing: border-box;
}
.cont_modal_inner {
  height: 100%;
  overflow-y: auto;
}
a.close_btn_modal {
  background-image: url(/images/close_btn_modal.png);
  background-size: 20px;
  background-repeat: no-repeat;
  background-position: center;
  position: absolute;
  top: 20px;
  right: 17px;
  width: 21px !important;
  height: 21px !important;
}
a.close_btn_modal:hover {
  opacity: 0.8;
}
.cont_modal .advice_img {
  width: 120px;
  margin: 25px auto 20px;
}
.cont_modal p {
  font-size: 15px;
  line-height: 30px;
  letter-spacing: -1px;
}
.cont_modal.short_modal {
  height: 770px;
}
.cont_modal_null {
  display: none;
}
.btn_modal > * {
  cursor: pointer;
}


/* =======================================================
caution
======================================================= */
.box-white + .prdctCaution .campaign_caution_box {
  margin-top: 0;
  border-top: none;
}
.prdctCaution .campaign_caution_box .campaign_caution_box_right li {
  font-size: 16px;
}


/* =======================================================
exp
======================================================= */
.prdctExp_inner {
  display: flex;
  padding: 40px;
  border: 1px solid #e3e3e3;
  background: #ffffff;
}
.prdctExp_right {
  margin-left: 40px;
}


/* =======================================================
show_more
======================================================= */
.box_bdr {
  border: 2px solid #e3e3e3;
  padding: 29px;
  background: #ffffff;
}
.js_box_hidden {
  overflow: hidden;
}
.js_show_more {
  width: 100%;
  position: relative;
  z-index: 1;
  margin-top: 25px;
  padding-bottom: 14px;
  text-align: right;
}
.js_show_more:before {
  content: "";
  display: block;
  position: absolute;
  bottom: 0;
  width: 100%;
  /*height: 100px;
  background: -webkit-gradient(linear, left top, left bottom, from(rgba(255, 255, 255, 0.6)), to(#ffffff));
  background: linear-gradient(rgba(255, 255, 255, 0.6) 0%, #ffffff 40%, #ffffff 100%);*/
  z-index: -1;
}
.js_show_more > .show_mor_btn {
  content: "";
  display: block;
  height: 44px;
  background: url(/images/ico_open.png) no-repeat 50% 50%;
  background-size: 120px;
}
.js_show_more.active {
  background: none;
  padding-top: 0;
  margin-top: 30px;
}
.js_show_more.active:before  {
  content: none;
}
.js_show_more.active > .show_mor_btn {
  content: "";
  display: block;
  height: 44px;
  background: url(/images/ico_close.png) no-repeat 50% 50%;
  background-size: 84px;
}
.js_show_more img {
  width: auto!important;
  margin-left: auto;
  margin-right: 0;
}


/* =======================================================
movie 埋め込みver
======================================================= */
.movie_directlyType {
  margin-top: 60px;
}
.movie_title {
  text-align: center;
  margin-bottom: 20px;
}
.movie_inner {
  text-align: center;
  width: 800px;
  margin-right: auto;
  margin-left: auto;
}
.movie_inner iframe {
  vertical-align: bottom;
}

/* YT_Player */
.YT_Player {
  position: relative;
  width: 100%;
  height: 0;
  margin: 0 auto;
  padding-top: 56.25%;
  cursor: pointer;
}
/*
.YT_Player[data-status="buffering"]::before {
  content: '';
  position: absolute;
  top: 50%;
  left: 50%;
  z-index: 11;
  background-image: url(../img/loading.gif);
  background-position: center center;
  background-repeat: no-repeat;
  background-size: 48px 48px;
  display: block;
  width: 48px;
  height: 48px;
  transform: translate3d(-50%, -50%, 0);
}
*/
.YT_Player>iframe {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1;
  width: 100%;
  height: 100%;
}
.YT_Player[data-thumbnail] iframe {
  z-index: -1;
}
.YT_Player[data-status="buffering"] iframe,
.YT_Player[data-status="playing"] iframe,
.YT_Player[data-status="paused"] iframe {
  z-index: 10;
}
.YT_Player>img.thumbnail {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1;
  width: 100%;
  height: 100%;
}
.YT_Player>.play_btn {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 2;
  width: 100%;
  height: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
}
.YT_Player>.play_btn::before {
  content: '';
  border-radius: 100% 100%;
  display: block;
  width: 57px;
  height: 57px;
  border: #fff 4px solid;
  background-color: rgba(255, 255, 255, 0);
  -webkit-transition: background-color 0.2s ease;
  -moz-transition: background-color 0.2s ease;
  -o-transition: background-color 0.2s ease;
  transition: background-color 0.2s ease;
}
.YT_Player:hover>.play_btn::before {
  background-color: #fff;
}
.YT_Player>.play_btn::after {
  content: '';
  position: absolute;
  top: 50%;
  left: 50%;
  width: 57px;
  height: 57px;
  margin-left: 1px;
  background-image: url("/images/btn_play.svg");
  background-position: center center;
  background-repeat: no-repeat;
  background-size: 13px auto;
  transform: translate3d(-50%, -50%, 0);
  -webkit-transition: background-image 0.2s ease;
  -moz-transition: background-image 0.2s ease;
  -o-transition: background-image 0.2s ease;
  transition: background-image 0.2s ease;
}
.YT_Player:hover>.play_btn::after {
  background-image: url("/images/btn_play_hov.svg");
}


/* =======================================================
movie サムネイルver
======================================================= */
/* モーダル */
#movie_modal {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  min-width: 1248px;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.8);
  transition: opacity 0.2s cubic-bezier(0.645, 0.045, 0.355, 1);
  z-index: 100;
  visibility: hidden;
  opacity: 0;
  pointer-events: none;
}
#movie_modal .modal_inner {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 980px;
  height: 550px;
}
#movie_modal .modal_inner .video_player {
  width: 980px;
  height: 550px;
}
#movie_modal .btn_close {
  position: absolute;
  top: 0;
  right: -52px;
  height: 37px;
  width: 37px;
  border-radius: 100%;
  border: #fff 1px solid;
  background-image: url("/images/movie_close.svg");
  background-size: 14px 14px;
  background-repeat: no-repeat;
  background-position: center center;
}
#movie_modal.on {
  visibility: visible;
  opacity: 1;
  pointer-events: auto;
}
/* サムネイル */
.movie_thumbType {}
.movie_thumbType .movie_thumb.dummy {
  display: none !important;
}
.movie_thumbType .movie_thumb {
  width: 600px;
  height: 440px;
  box-sizing: border-box;
  margin: 0 auto;
}
.movie_thumbType .movie_thumb +.movie_thumb {
  margin-top: 30px;
}
.movie_thumbType .movie_thumb .thumb_inner {
  width: 600px;
  height: 440px;
  overflow: hidden;
  cursor: pointer;
}
.movie_thumbType .movie_thumb .pic {
  width: 100%;
  height: 440px;
  position: relative;
  background-size: cover;
  background-position: center center;
}
.movie_thumbType .movie_thumb .pic .play_btn {
  border-radius: 100%;
  width: 57px;
  height: 57px;
  left: 50%;
  margin-left: -28.5px;
  top: 50%;
  margin-top: -28.5px;
  position: absolute;
  border: #fff 4px solid;
  background-color: rgba(255, 255, 255, 0);
  -moz-transition: background-color 0.2s ease;
  -o-transition: background-color 0.2s ease;
  -webkit-transition: background-color 0.2s ease;
  transition: background-color 0.2s ease;
}
.movie_thumbType .movie_thumb .pic .play_btn:before,
.movie_thumbType .movie_thumb .pic .play_btn:after {
  display: block;
  content: "";
  width: 13px;
  height: 14px;
  position: absolute;
  left: 24px;
  top: 21px;
  background-size: 13px 14px;
}
.movie_thumbType .movie_thumb .pic .play_btn:before {
  background-image: url("/images/btn_play.svg");
}
.movie_thumbType .movie_thumb .pic .play_btn:after {
  background-image: url("/images/btn_play_hov.svg");
  opacity: 0;
  -moz-transition: opacity 0.2s ease;
  -o-transition: opacity 0.2s ease;
  -webkit-transition: opacity 0.2s ease;
  transition: opacity 0.2s ease;
}
.movie_thumbType .movie_thumb .thumb_inner:hover .pic .play_btn {
  background-color: white;
}
.movie_thumbType .movie_thumb .thumb_inner:hover .pic .play_btn:after {
  opacity: 1;
}
.movie_thumbType .note {
  font-size: 12px;
  margin-top: 20px;
}

/* =======================================================
アレルギー表示
======================================================= */
#annotation .annotation_ttl {
  font-size: 18px;
  font-weight: bold;
  padding-bottom: 20px;
}
#annotation .annotation_list > li {
  display: flex;
  flex-wrap: nowrap;
}
#annotation .annotation_list > li + li {
  margin-top: 1.5em;
}
#annotation .annotation_list > li .right_inner {
  width: 94%;
}
#annotation .annotation_list > li .right_inner .img-allergy {
  /* margin: 0 3px -2px; */
  width: 36px;
  height: 23px;
  margin: 0 0 0 6px;
}
#annotation .annotation_list > li .icon {
  width: 4%;
}

#annotation .annotation_list > li .icon img {
  width: 36px;
}