@charset "UTF-8";
@import url('https://fonts.googleapis.com/css2?family=Zen+Kaku+Gothic+Antique:wght@300;400;500;700;900&family=Inter:wght@300;400;500;600;700;800;900&display=swap');

#main {
  font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", sans-serif;
  font-size: 1.15rem;
  color: #595757;
}
@media only screen and (min-width: 768px) {
  .display-sp { display: none !important; }
}
@media only screen and (max-width: 767px) {
  #main {
    font-family: 'Zen Kaku Gothic Antique', sans-serif;
    font-size: 3.74vw;
  }
  .display-pc { display: none !important; }
}
#main * { box-sizing: border-box; }
#main .img img {
  display: block;
  width: 100%;
}
.ff-zenkaku { font-family: 'Zen Kaku Gothic Antique', sans-serif; }
.product-inner { max-width: 1028px; margin: 0 auto; }
@media only screen and (max-width: 767px) {
  .product-inner { padding: 0 35px; }
}

/* mainvisual */
.mainvisual .mainvisual-box {
  /* display: flex; */
  flex-direction: row-reverse;
  display: block;
}
@media only screen and (max-width: 767px) {
  .mainvisual .mainvisual-box { display: block; }
}
/* .mainvisual .mainvisual-list { width: 50%; } */
.mainvisual .mainvisual-list { width: 100%; }
@media only screen and (max-width: 767px) {
  .mainvisual .mainvisual-list { width: 100%; }
}
.mainvisual .mainvisual-img { width: 50%; }
@media only screen and (max-width: 767px) {
  .mainvisual .mainvisual-img { width: 100%; }
}
.mainvisual .slick-dots {
  margin-top: 10px;
  display: flex;
  justify-content: center;
}
@media only screen and (max-width: 767px) {
  .mainvisual .slick-dots { display: none !important; }
}
.mainvisual .slick-dots li {
  margin: 0 .5em;
}
.mainvisual .slick-dots button {
  width: .8em;
  height: .8em;
  color: #ddd;
  background-color: #ddd;
  border: none;
  border-radius: 50%;
  overflow: hidden;
}
.mainvisual .slick-dots .slick-active button {
  color: #ff8705;
  background-color: #ff8705;
}

/* product-box */
.product-box {
  max-width: 490px;
  margin: 60px auto 0;
}
@media only screen and (max-width: 767px) {
  .product-box { padding: 0 35px; margin-top: 35px; }
}
.product-box .product-box-list {
  margin-top: 30px;
  background: url("../../common/img/powergunpocket/bg_dotted.jpg") repeat center;
  border-top: 1px solid #777575;
  border-bottom: 1px solid #777575;
  display: flex;
  justify-content: center;
  align-items: center;
}
@media only screen and (max-width: 767px) {
  .product-box .product-box-list { margin-top: 15px; }
}
.product-box .product-box-list li {
  width: 50%;
  padding: .5em 0;
  font-size: 1.29rem;
  line-height: 1.4;
  text-align: center;
  position: relative;
}
@media only screen and (max-width: 767px) {
  .product-box .product-box-list li { font-size: 3.22vw; }
}
.product-box .product-box-list li:not(:last-child) { border-right: 1px solid #777575; }
.product-box .btn-cart a {
  width: 100%;
  height: 88px;
  color: #fff;
  font-size: 1.85rem;
  line-height: 1;
  background-color: #ff8705;
  text-decoration: none;
  display: flex;
  justify-content: center;
  align-items: center;
  position: relative;
  transition: all .5s;
}
@media only screen and (max-width: 767px) {
  .product-box .btn-cart a { height: 60px; font-size: 4.54vw; }
}
.product-box .btn-cart a::after {
  content: '';
  width: .4em;
  height: .4em;
  border-bottom: 2px solid #fff;
  border-right: 2px solid #fff;
  transform: translateY(-50%) rotate(45deg);
  position: absolute;
  top: 47%;
  right: 1.5em;
}
.product-box .btn-cart a:hover { background-color: #403f3f; }
.product-box .btn-cart svg { width: 28px; fill: #fff; margin-right: 1em; padding-bottom: .1em; }
@media only screen and (max-width: 767px) {
  .product-box .btn-cart svg { width: 17px; }
}

/* product-gift */
.product-gift { margin-top: 10px; }
@media only screen and (max-width: 767px) {
  .product-gift { margin-top: 0; }
  .product-gift .product-inner { padding: 0; }
}
.product-gift .product-gift-box {
  padding: 20px 0;
  background: url("../../common/img/powergunpocket/bg_dotted_p.jpg") repeat center;
  display: flex;
  justify-content: center;
  align-items: center;
}
@media only screen and (max-width: 767px) {
  .product-gift .product-gift-box { padding: 35px; display: block; }
}
.product-gift .product-gift-box .ttl {
  font-size: 1.58rem;
  font-weight: 600;
  text-align: right;
  line-height: 1.2;
  padding: .7em 0;
  position: relative;
}
@media only screen and (max-width: 767px) {
  .product-gift .product-gift-box .ttl { font-size: 5.34vw; text-align-last: center; width: fit-content; margin: 0 auto 1em; padding: 0 .5em; position: relative; }
}
.product-gift .product-gift-box .ttl::before,
.product-gift .product-gift-box .ttl::after {
  content: '';
  width: 100%;
  height: 1px;
  background-color: #595757;
  position: absolute;
  left: 0;
}
.product-gift .product-gift-box .ttl::before { top: 0; transform: rotate(10deg); }
.product-gift .product-gift-box .ttl::after { bottom: 0; transform: rotate(-10deg); }
@media only screen and (max-width: 767px) {
  .product-gift .product-gift-box .ttl::before,
  .product-gift .product-gift-box .ttl::after {
    content: '';
    width: 2px;
    height: 85%;
    background-color: #595757;
    position: absolute;
    top: auto;
    bottom: 0;
  }
  .product-gift .product-gift-box .ttl::before { left: 0; transform: rotate(-25deg); }
  .product-gift .product-gift-box .ttl::after { right: 0; left: auto; transform: rotate(25deg); }
}
.product-gift .product-gift-box .txt { font-size: 1.29rem; font-weight: 600; }
@media only screen and (max-width: 767px) {
  .product-gift .product-gift-box .txt { font-size: 3.47vw; text-align: center; line-height: 1.8; margin-top: 1em; }
}
.product-gift .product-gift-box .txt span { font-weight: normal; }
.product-gift .product-gift-box .img { width: 15%; margin: 0 3% 0 2%; }
@media only screen and (max-width: 767px) {
  .product-gift .product-gift-box .img { width: 100%; margin: 0; }
}

/* product-intro */
.product-intro {
  margin-top: 50px;
  padding-bottom: 80px;
  background: url("../../common/img/powergunpocket/bg_intro.jpg") repeat-x bottom / contain;
}
@media only screen and (max-width: 767px) {
  .product-intro { margin-top: 40px; padding-bottom: 40px; background-image: url("../../common/img/powergunpocket/bg_intro_sp.jpg"); }
  .product-intro .product-inner { padding: 0; }
}
.product-intro .product-intro-box {
  display: flex;
  align-items: flex-end;
}
@media only screen and (max-width: 767px) {
  .product-intro .product-intro-box { display: block; }
}
.product-intro .product-intro-box:not(:last-child) { margin-bottom: 80px; }
@media only screen and (max-width: 767px) {
  .product-intro .product-intro-box:not(:last-child) { margin-bottom: -10vw; }
}
.product-intro .product-intro-box:nth-child(odd) { flex-direction: row-reverse; }
.product-intro .product-intro-box .img { width: 60%; }
@media only screen and (max-width: 767px) {
  .product-intro .product-intro-box .img { width: 80%; transform: translateY(10vw); position: relative; z-index: 5; }
  .product-intro .product-intro-box:nth-child(odd) .img { margin: 0 0 0 auto; }
}
.product-intro .product-intro-box .txt {
  width: 40%;
  font-size: 1.29rem;
  line-height: 2;
  padding: 5em 1em;
  background-color: #fff;
  position: relative;
}
@media only screen and (max-width: 767px) {
  .product-intro .product-intro-box .txt { width: 80%; font-size: 3.74vw; padding: 5em 2em 3em; }
  .product-intro .product-intro-box:nth-child(even) .txt { margin: 0 0 0 auto; }
}
.product-intro .product-intro-box .txt .ff-zenkaku { font-weight: 500; }
.product-intro .product-intro-box .txt::before {
  content: '';
  width: 100%;
  height: 100%;
  background-color: #fff;
  position: absolute;
  top: 0;
}
.product-intro .product-intro-box:nth-child(odd) .txt::before { transform: translateX(-100%); left: 0; }
.product-intro .product-intro-box:nth-child(even) .txt::before { transform: translateX(100%); right: 0; }

/* product-message */
.product-message .product-inner { padding-top: 15px; }
@media only screen and (max-width: 767px) {
  .product-message .product-inner { padding: 15px 0 0; }
}
.product-message .ttl { font-size: 2rem; }
@media only screen and (max-width: 767px) {
  .product-message .ttl { font-size: 5.06vw; }
}
.product-message .ttl.btm {
  margin-top: 1.5em;
  font-size: 2.07rem;
  font-weight: 500;
  line-height: 1.5;
  padding-left: 1em;
  position: relative;
}
@media only screen and (max-width: 767px) {
  .product-message .ttl.btm { font-size: 5.6vw; margin: 0 35px; }
}
.product-message .ttl.btm::before {
  content: '';
  width: 5px;
  height: calc(100% - .2em);
  background-color: #595757;
  position: absolute;
  top: .1em;
  left: 0;
}
.product-message .txt.btm {
  font-size: 1.43rem;
  line-height: 1.8;
  margin: 1em 0 1.5em;
  padding-left: 1.8em;
}
@media only screen and (max-width: 767px) {
  .product-message .txt.btm { font-size: 4vw; margin-top: 1em; padding: 0 55px; }
}
.product-message .product-message-top { position: relative; }
.product-message .product-message-top .ttl {
  padding-left: 1em;
  line-height: 2;
  transform: translate(0, -75%);
  position: absolute;
  top: 50%;
  left: 50%;
}
@media only screen and (max-width: 767px) {
  .product-message .product-message-top .ttl {
    width: fit-content;
    margin: 0 auto;
    transform: translate(0, -50%);
    position: relative;
    top: 0;
    left: 0;
  }
}
.product-message .product-message-top .ttl::before {
  content: '';
  width: 8px;
  height: calc(100% - 1em);
  background-color: #595757;
  position: absolute;
  top: .5em;
  left: 0;
}
.product-message .product-message-box {
  display: flex;
  align-items: center;
}
@media only screen and (max-width: 767px) {
  .product-message .product-message-box { display: block; }
}
.product-message .product-message-box_elm { width: 50%; position: relative; }
@media only screen and (max-width: 767px) {
  .product-message .product-message-box_elm { width: 100%; }
  .product-message .product-message-box_elm .ttl { font-size: 4.54vw; }
}
.product-message .product-message-box_elm .txt { background-color: #fff; opacity: .9; position: absolute; }
.product-message .product-message-box_elm:nth-child(1) .txt { padding: 3em 2em; top: 5%; left: 5%; }
.product-message .product-message-box_elm:nth-child(2) .txt { padding: 1.5em 2em; bottom: 5%; left: 5%; }
@media only screen and (max-width: 767px) {
  .product-message .product-message-box_elm:nth-child(1) .txt { padding: .8em 1.2em; }
  .product-message .product-message-box_elm:nth-child(2) .txt { padding: .8em 1.2em; }
}
.product-message .product-message-box_elm .txt p { margin-top: .5em; font-size: 1.29rem; line-height: 1.6; }
@media only screen and (max-width: 767px) {
  .product-message .product-message-box_elm .txt p { font-size: 3.47vw; }
}
.product-message .product-message-box_img { width: 50%; position: relative; }
@media only screen and (max-width: 767px) {
  .product-message .product-message-box_img { width: 100%; }
}
.product-message .product-message-box_img .img { margin-bottom: 10px; }
.product-message .product-message-box_img .ttl { font-size: 1.72rem; position: absolute; top: 29%; left: 10%; }
@media only screen and (max-width: 767px) {
  .product-message .product-message-box_img .ttl { font-size: 4.54vw; }
}
.product-message .product-message-box_img .txt { font-size: 1rem; position: absolute; top: 31%; right: 7%; }
@media only screen and (max-width: 767px) {
  .product-message .product-message-box_img .txt { font-size: 2.6vw; }
}
.product-message .notece { font-size: 0.82rem; text-indent: -1em; margin-left: 1em; }
@media only screen and (max-width: 767px) {
  .product-message .notece { font-size: 2.93vw; }
}
.product-message .product-message-box_param { width: 50%; padding: 0 2.5em; /*border: 1px solid #6e6e6e; background-color: #f5f4f4;*/ }
@media only screen and (max-width: 767px) {
  .product-message .product-message-box_param { width: calc(100% - 70px); margin: 0 35px; padding: 0; /*transform: translateY(-60px);*/ }
  /* .product-message .product-message-box_param.js-fade.show { transform: translateY(-60px); } */
}
.product-message .product-message-box_param .ttl { font-size: 1.64rem; font-weight: bold; text-align: center; margin-bottom: 1em; }
@media only screen and (max-width: 767px) {
  .product-message .product-message-box_param .ttl { font-size: 16px; }
}
.product-message .product-message-box_param .ttl::before { content: '['; padding-right: 1em; font-weight: normal; }
.product-message .product-message-box_param .ttl::after { content: ']'; padding-left: 1em; font-weight: normal; }
.product-message .product-message-box_param .labels { font-size: 1rem; text-align: right; }
@media only screen and (max-width: 767px) {
  .product-message .product-message-box_param .labels { font-size: 2.93vw; }
}
.product-message .product-message-box_table {
  width: 100%;
  margin: 5px 0 10px;
  border-top: 1px solid #838080;
}
.product-message .product-message-box_table th,
.product-message .product-message-box_table td {
  padding: .3em;
  font-size: 1.29rem;
  font-weight: normal;
  text-align: center;
  border-bottom: 1px solid #838080;
  border-right: 1px solid #838080;
}
@media only screen and (max-width: 767px) {
  .product-message .product-message-box_table th,
  .product-message .product-message-box_table td { font-size: 3.47vw; }
}
.product-message .product-message-box_table th:last-child,
.product-message .product-message-box_table td:last-child { border-right: none; }
.product-message .product-message-box_table th:first-child,
.product-message .product-message-box_table td:first-child { background-color: #f5f4f4; }
@media only screen and (max-width: 767px) {
  .product-message .product-message-box_table th:first-child,
  .product-message .product-message-box_table td:first-child { font-weight: bold; }
}
/* .product-message .product-message-box_inner { padding: 20px 20px 40px; background-color: #fff; }
@media only screen and (max-width: 767px) {
  .product-message .product-message-box_inner { padding: 20px; }
} */

/* product-attachment */
.product-attachment {
  margin-top: 100px;
  padding: 80px 0;
  background-color: #f9fafa;
}
@media only screen and (max-width: 767px) {
  .product-attachment { margin-top: 50px; padding: 60px 0; }
  .product-attachment .product-inner { padding: 0; }
}
.product-attachment .ttl.top {
  font-size: 2.07rem;
  font-weight: 500;
  line-height: 1.5;
  padding-left: 1em;
  position: relative;
}
@media only screen and (max-width: 767px) {
  .product-attachment .ttl.top { font-size: 5.6vw; margin: 0 35px; }
}
.product-attachment .ttl.top::before {
  content: '';
  width: 5px;
  height: calc(100% - .5em);
  background-color: #595757;
  position: absolute;
  top: .3em;
  left: 0;
}
.product-attachment .txt.top {
  font-size: 1.43rem;
  line-height: 1.8;
  margin-top: 1.5em;
  padding-left: 1.8em;
}
@media only screen and (max-width: 767px) {
  .product-attachment .txt.top { font-size: 4vw; margin-top: 1em; padding: 0 55px; }
}
.product-attachment-list { margin-top: 40px; display: flex; }
@media only screen and (max-width: 767px) {
  .product-attachment-list { margin-top: 20px; flex-wrap: wrap; }
}
.product-attachment-list li { width: 25%; padding: 0 5px; }
@media only screen and (max-width: 767px) {
  .product-attachment-list li { width: 50%; }
}
.product-attachment-list li:not(:last-child) { border-right: 1px dashed #b7b8ba; }
@media only screen and (max-width: 767px) {
  .product-attachment-list li:nth-child(even) { border-right: none; }
  .product-attachment-list li:nth-child(1),
  .product-attachment-list li:nth-child(2)   { padding-bottom: 30px; }
}
.product-attachment-list li .icon { margin: 15px 0; width: 100%; height: 60px; display: flex; justify-content: center; align-items: center; }
@media only screen and (max-width: 767px) {
  .product-attachment-list li .icon { margin: 10px 0; height: 40px; }
  .product-attachment-list li .icon img { display: block; width: auto; height: 90%; }
  .product-attachment-list li:nth-child(1) .icon img { height: 100%; }
}
.product-attachment-list li .ttl { margin-top: 1em; font-size: 1.29rem; font-weight: bold; text-align: center; }
@media only screen and (max-width: 767px) {
  .product-attachment-list li .ttl { font-size: 3.47vw; }
}
.product-attachment-list li .txt { padding: 0 1em; }
@media only screen and (max-width: 767px) {
  .product-attachment-list li .txt { font-size: 3.22vw; line-height: 1.6; padding: 0 .8em; }
}

/* product-more */
.product-more {
  margin-top: 120px;
  padding: 20px 0;
  background: url("../../common/img/powergunpocket/bg_dotted_p.jpg") repeat center;
}
@media only screen and (max-width: 767px) {
  .product-more { margin-top: 60px; padding: 0; }
}
.product-more .product-inner { max-width: 100%; }
@media only screen and (max-width: 767px) {
  .product-more .product-inner { padding: 0; }
}
.product-more .ttl {
  font-size: 2.28rem;
  font-weight: 500;
  line-height: 1.2;
  text-align: center;
}
@media only screen and (max-width: 767px) {
  .product-more .ttl { font-size: 5.34vw; }
}
/* .product-more .product-more-box { display: flex; align-items: center; } */
@media only screen and (max-width: 767px) {
  .product-more .product-more-box { display: block; }
}
.product-more .product-more-color {
  /* width: 47%; */
  width: 90%;
  padding: 60px 5%;
  background-color: #fff;
  margin-left: 3%;
}
@media only screen and (max-width: 767px) {
  .product-more .product-more-color { width: 100%; margin: 0; padding: 0 35px 45px; }
}
.product-more .product-more-color .ttl span { font-size: 2rem; }
@media only screen and (max-width: 767px) {
  .product-more .product-more-color .ttl span { font-size: 4.8vw; }
}
.product-more .product-more-color_list { display: flex; flex-wrap: wrap; }
@media only screen and (min-width: 768px) {
  .product-more .product-more-color_list { justify-content: space-between; }
}
.product-more .product-more-color_list li { /*width: 30%;*/ width: 15%; margin-top: 30px; text-align: right; }
@media only screen and (max-width: 767px) {
  .product-more .product-more-color_list li { width: 30%; margin-top: 30px; padding-right: 15px; }
  .product-more .product-more-color_list li:not(:nth-child(3n+1)) { margin-left: 5%; }
}
/* .product-more .product-more-color_list li:not(:nth-child(3n+1)) { margin-left: 5%; } */
.product-more .product-more-color_list li .img { width: 65%; margin: 0 auto 10px; }
@media only screen and (max-width: 767px) {
  .product-more .product-more-color_list li .img { width: 85%; }
}
.product-more .product-more-color_list li .txt { padding-right: 1.8em; }
@media only screen and (max-width: 767px) {
  .product-more .product-more-color_list li .txt { padding-right: 0; }
}
.product-more .product-more-gift { width: 50%; padding: 45px 5% 0; margin: 0 auto; }
@media only screen and (max-width: 767px) {
  .product-more .product-more-gift { width: 100%; padding: 45px 35px; }
}
.product-more .product-more-gift .ttl { width: fit-content; margin: 0 auto; padding: 0 .5em; position: relative; }
.product-more .product-more-gift .ttl::before,
.product-more .product-more-gift .ttl::after {
  content: '';
  width: 2px;
  height: 85%;
  background-color: #595757;
  position: absolute;
  bottom: 0;
}
.product-more .product-more-gift .ttl::before { left: 0; transform: rotate(-25deg); }
.product-more .product-more-gift .ttl::after { right: 0; transform: rotate(25deg); }
.product-more .product-more-gift .txt { margin-top: 1em; font-size: 1.29rem; font-weight: 600; line-height: 1.8; text-align: center; }
@media only screen and (max-width: 767px) {
  .product-more .product-more-gift .txt { margin-top: 1.5em; font-size: 3.47vw; }
}
.product-more .product-more-gift .txt span { font-weight: normal; }
.product-more .product-more-gift .img { margin-top: 15px; }

/* product-summary */
.product-summary { margin-top: 100px; }
@media only screen and (max-width: 767px) {
  .product-summary { margin-top: 0; }
  .product-summary .product-inner { padding: 0; }
}
.product-summary .product-summary-box { padding: 10px 60px 60px; background: url("../../common/img/powergunpocket/bg_summary.jpg") no-repeat center / cover; }
@media only screen and (max-width: 767px) {
  .product-summary .product-summary-box { padding: 10px 35px 60px; background-image: url("../../common/img/powergunpocket/bg_summary_sp.jpg"); }
}
.product-summary .product-summary-list_img { display: flex; flex-wrap: wrap; }
.product-summary .product-summary-list_img li { width: calc(100% / 3); position: relative; }
@media only screen and (max-width: 767px) {
  .product-summary .product-summary-list_img li { width: 50%; }
}
.product-summary .product-summary-list_img li .txt {
  font-size: 1.29rem;
  padding: .5em 1em;
  background-color: rgba(255, 255, 255, .8);
  position: absolute;
  bottom: 1em;
  left: 1em;
}
@media only screen and (max-width: 767px) {
  .product-summary .product-summary-list_img li .txt { font-size: 3.47vw; font-weight: bold; left: 0; }
}
.product-summary .product-summary-list_txt { display: flex; justify-content: space-between; flex-wrap: wrap; margin-bottom: 1em; }
.product-summary .product-summary-list_txt li {
  width: 48%;
  margin-top: 4%;
  padding: 2em 2.5em;
  background-color: #fff;
}
@media only screen and (max-width: 767px) {
  .product-summary .product-summary-list_txt li { width: 100%; margin-top: 8%; padding: 1em 2.2em; }
}
.product-summary .product-summary-list_txt .ttl { font-size: 1.36rem; font-weight: bold; position: relative; }
@media only screen and (max-width: 767px) {
  .product-summary .product-summary-list_txt .ttl { font-size: 4.54vw; }
}
.product-summary .product-summary-list_txt .ttl::before { content: '◎'; position: absolute; top: 0; left: -1em; }
.product-summary .product-summary-list_txt .txt { margin-top: .5em; line-height: 1.8; }
.product-summary .notece { font-size: 1rem; text-indent: -1em; margin-left: 1em; }
@media only screen and (max-width: 767px) {
  .product-summary .notece { font-size: 2.93vw; text-indent: -1.75em; margin-left: 1.75em; }
}

/* product-price */
.product-price { padding-top: 140px; }
@media only screen and (max-width: 767px) {
  .product-price { width: 100%; margin-top: 60px; padding-top: 0; }
}
.product-price .product-inner { max-width: 868px; }
@media only screen and (max-width: 767px) {
  .product-price .product-inner { padding: 0; }
}
.product-price .ttl_main { font-size: 3.44rem; text-align: center; letter-spacing: .2em; }
@media only screen and (max-width: 767px) {
  .product-price .ttl_main { font-size: 9.36vw; }
}
.product-price .ttl_main span { display: block; font-size: 1.15rem; letter-spacing: .1em; }
@media only screen and (max-width: 767px) {
  .product-price .ttl_main span { font-size: 3.22vw; }
}
.product-price .ttl { font-size: 1.64rem; font-weight: bold; }
@media only screen and (max-width: 767px) {
  .product-price .ttl { font-size: 5.06vw; /*margin: 0 35px;*/ }
}
.product-price .product-box-list {
  max-width: 490px;
  margin: 20px auto 0;
  background: url("../../common/img/powergunpocket/bg_dotted.jpg") repeat center;
  border-top: 1px solid #777575;
  border-bottom: 1px solid #777575;
  display: flex;
  justify-content: center;
  align-items: center;
}
@media only screen and (max-width: 767px) {
  .product-price .product-box-list { margin: 20px 35px 0; }
}
.product-price .product-box-list li {
  width: 50%;
  padding: .5em 0;
  font-size: 1.29rem;
  line-height: 1.4;
  text-align: center;
  position: relative;
}
@media only screen and (max-width: 767px) {
  .product-price .product-box-list li { font-size: 3.22vw; }
}
.product-price .product-box-list li:not(:last-child) { border-right: 1px solid #777575; }
.product-price .product-price-top {
  margin: 30px 0 40px;
  padding: 25px;
  text-align: center;
  background-color: #f8f9f9;
}
@media only screen and (max-width: 767px) {
  .product-price .product-price-top { margin: 15px 35px 20px; padding: 25px 20px; }
  .product-price .product-price-top .ttl { font-size: 4.54vw; width: fit-content; margin: 0 auto; text-decoration: underline; }
}
.product-price .product-price-top .txt { margin-top: 1em; }
@media only screen and (max-width: 767px) {
  .product-price .product-price-top .txt { font-size: 3.22vw; line-height: 1.6; }
}
.product-price .product-price-top .txt a:hover { text-decoration: none; }
.product-price .product-price-box { margin-top: 60px; display: flex; justify-content: space-between; }
@media only screen and (max-width: 767px) {
  .product-price .product-price-box { margin-top: 30px; display: block; }
}
.product-price .product-price-box .img_area { width: 40%; }
@media only screen and (max-width: 767px) {
  .product-price .product-price-box .img_area { width: 100%; }
}
#main .product-price .product-price-box .img_area img { width: 60%; margin: 0 auto; }
@media only screen and (max-width: 767px) {
  #main .product-price .product-price-box .img_area img { padding-right: 20%; }
}
.product-price .product-price-box .txt_area { width: 50%;position:relative;vertical-align: bottom;}
@media only screen and (max-width: 767px) {
  .product-price .product-price-box .txt_area { width: calc(100% - 70px); margin: 20px auto 0; }
}
.product-price .product-price-box .txt_area .line_linkage_icon{position: absolute;top:0;right: 0;}
@media only screen and (max-width: 767px) {.product-price .product-price-box .txt_area .line_linkage_icon{position: absolute;top:0.5em;right: 0;}}

.product-price .product-price-box .val { margin: 1em 0; font-size: 1rem; }
@media only screen and (max-width: 767px) {
  .product-price .product-price-box .val { font-size: 3.22vw; }
}
.product-price .product-price-box .price { margin: 1.5em 0 1em; font-size: 1.5rem; font-weight: bold; color: #ff8705; }
@media only screen and (max-width: 767px) {
  .product-price .product-price-box .price { margin-top: .5em; font-size: 4vw; text-align: center; }
}
.product-price .product-price-box .price strong { font-size: 2.22rem; }
@media only screen and (max-width: 767px) {
  .product-price .product-price-box .price strong { font-size: 6.4vw; }
}
.product-price .product-price-box .detail { margin-top: 1em; font-size: 1rem; }
@media only screen and (max-width: 767px) {
  .product-price .product-price-box .detail { font-size: 2.93vw; }
}
.product-price .product-price-list_img { position: relative; }
.product-price .product-price-list_img li { display: none; }
.product-price .product-price-list_img li.active { display: block; }
.product-price .product-price-list_color { display: flex; flex-wrap: wrap; }
.product-price .product-price-list_color li { width: 28% !important; padding: 10px 8% 10px 19px; margin-bottom: 4%; border: 1px solid #d4d1d1; position: relative; cursor: pointer; }
.product-price .product-price-list_color li:not(:nth-child(3n+1)) { margin-left: 7.5%; }
.product-price .product-price-list_color li.active::after { content: ''; width: calc(100% - 12px); height: calc(100% - 12px); border: 6px solid #d4d1d1; position: absolute; top: 0; left: 0; }
.product-price .product-price-list_color .slick-current::after { content: ''; width: calc(100% - 12px); height: calc(100% - 12px); border: 6px solid #d4d1d1; position: absolute; top: 0; left: 0; }
.product-price .product-price-list_color .slick-track { transform: unset !important; }

.product-price .product-price-list_img li.outofstock { display: block; }
.product-price .product-price-list_color li.outofstock::after { content: ''; width: calc(100%); height: calc(100%); background: rgba(0, 0, 0, .5); position: absolute; top: 0; left: 0; cursor: auto; }



.product-price .btn-cart { /*margin-top: 20px;*/ }
.product-price .btn-cart a {
  width: 100%;
  height: 88px;
  color: #fff;
  font-size: 1.85rem;
  line-height: 1;
  background-color: #ff8705;
  text-decoration: none;
  display: flex;
  justify-content: center;
  align-items: center;
  transition: all .5s;
}
@media only screen and (max-width: 767px) {
  .product-price .btn-cart a { height: 60px; font-size: 4.54vw; }
}
.product-price .btn-cart a:hover { background-color: #403f3f; }
.product-price .btn-cart svg { width: 28px; fill: #fff; margin-right: 1em; padding-bottom: .1em; }
@media only screen and (max-width: 767px) {
  .product-price .btn-cart svg { width: 17px; }
}


.p-series__ttl {
  text-align: center;
}
@media screen and (min-width: 767px) {
  .p-series__ttl {
    margin-bottom: 30px;
  }
}
@media screen and (max-width: 766px) {
  .p-series__ttl {
    margin-bottom: 6.6666666667vw;
  }
}
.p-series__ttl > span {
  display: block;
}
.p-series__ttl .en {
  font-family: "Inter", sans-serif;
}
@media screen and (min-width: 767px) {
  .p-series__ttl .en {
    font-size: 58px;
    line-height: 1.2931034483;
    letter-spacing: 0.04em;
    font-weight: 300;
  }
}
@media screen and (max-width: 766px) {
  .p-series__ttl .en {
    font-size: calc(70 / 750 * 100vw);
    line-height: 1.6285714286;
    letter-spacing: 0.1em;
    font-weight: 300;
  }
}
.p-series__ttl .ja {
  color: #c96715;
}
@media screen and (min-width: 767px) {
  .p-series__ttl .ja {
    font-size: 18px;
    line-height: 1.5;
    letter-spacing: 0.1em;
    font-weight: 700;
  }
}
@media screen and (max-width: 766px) {
  .p-series__ttl .ja {
    font-size: calc(26 / 750 * 100vw);
    line-height: 1.5;
    letter-spacing: 0.1em;
    font-weight: 700;
  }
}
.scroll-hint-icon-wrap.is-active .scroll-hint-icon:before {
  animation-iteration-count: infinite;
}
.p-series .scroll-hint-icon:after {
  margin-left: 0;
  transform: translateX(-50%);
  transition-delay: 0s;
}
@media screen and (max-width: 766px) {
  .p-series .scroll-hint-icon {
    top: 20vw;
  }
}
.product-price .product-price-btm {
  padding-top: 20px;
}
.p-series { margin-top: 80px; }

@media only screen and (max-width: 767px) {
  .p-series {
    margin-top: 60px;
  }
  .product-price .product-price-btm { 
    width: 100vw;
    overflow-x: scroll;
    padding-left: 6.6666666667vw;
    padding-right: 6.6666666667vw;
}
}

.product-price-list_type {
  border-top: 2px solid #e2e2dd;
  border-bottom: 2px solid #e2e2dd;
}
@media screen and (min-width: 768px) {
  .product-price-list_type {
    width: 100%;
  }
}
.product-price-list_type thead th {
  vertical-align: top;
  border-top: 2px solid #e2e2dd;
}
@media screen and (min-width: 768px) {
  .product-price-list_type thead th {
    padding: 0 0 50px;
  }
}
@media screen and (max-width: 767px) {
  .product-price-list_type thead th {
    padding: 0 0 8vw;
  }
}
.product-price-list_type thead th:first-of-type {
  background-color: rgba(201, 103, 21, 0.1);
}
.product-price-list_type td,
.product-price-list_type th {
  text-align: center;
}
@media screen and (max-width: 767px) {
  .product-price-list_type tbody tr.sp-left td {
    text-align: left;
  }
}
.product-price-list_type tbody th {
  background-color: #e9e9e9;
  color: #747373;
}
@media screen and (min-width: 768px) {
  .product-price-list_type tbody th {
    font-size: 16px;
    font-weight: 700;
    padding: 12px 0;
  }
}
@media screen and (max-width: 767px) {
  .product-price-list_type tbody th {
    font-size: calc((24 / 750) * 100vw);
    line-height: 1;
    letter-spacing: 0em;
    font-weight: 700;
  }
}
@media screen and (max-width: 767px) {
  .product-price-list_type tbody th {
    min-width: 40vw;
    padding: 3.3333333333vw;
  }
}
@media screen and (min-width: 768px) {
  .product-price-list_type tbody td {
    font-size: 15px;
    line-height: 1.375;
    padding: 30px 0;
    width: 25%;
    font-weight: 700;
  }
}
@media screen and (max-width: 767px) {
  .product-price-list_type tbody td {
    font-size: calc((24 / 750) * 100vw);
    line-height: 1.3846153846;
    letter-spacing: 0em;
    font-weight: 700;
  }
}
@media screen and (max-width: 767px) {
  .product-price-list_type tbody td {
    min-width: 45.333333vw;
    padding: 6.4vw;
    white-space: nowrap;
  }
}
.product-price-list_type tbody td span {
  display: block;
}
@media screen and (min-width: 768px) {
  .product-price-list_type tbody td span {
    font-size: 12px;
    line-height: 1.33333333;
    letter-spacing: -0.06em;
    font-weight: 700;
  }
}
@media screen and (max-width: 767px) {
  .product-price-list_type tbody td span {
    font-size: calc((18 / 750) * 100vw);
    line-height: 1.33333333;
    letter-spacing: 0em;
    font-weight: 700;
  }
}
.product-price-list_type tbody td:first-of-type {
  background-color: rgba(201, 103, 21, 0.1);
}
.product-price-list_type tbody td:nth-of-type(2),
.product-price-list_type tbody td:nth-of-type(3) {
  border-right: 1px dashed #e9e9e9;
}

/* 20231227追加 */
.product-price-osusume {
  position: absolute;
  top: 20px;
  left: 50%;
  transform: translate(-50%,-50%);
  background-color: #fff;
  padding: 0 10px;
  z-index: 3;
}
@media screen and (min-width: 768px) {
  .product-price-osusume {
    font-size: 15px;
    font-weight: 700;
  }
}
@media screen and (max-width: 767px) {
  .product-price-osusume {
    font-size: calc((22 / 750) * 100vw);
    font-weight: 700;
  }
}
@media screen and (min-width: 768px) {
  .product-price-list_type thead tr.osusume td {
    padding: 24px 10px 28px;
  }
  .product-price-list_type thead .osusume-item {
    position: relative;
    background-color: #e9e9e9;
    border-radius: 8px;
    padding: 16px 0;
  }
  .product-price-list_type thead .osusume-item p {
    font-size: 14px;
    font-weight: 500;
    line-height: 1.5;
  }
}
.product-price-list_type thead .osusume-item::after {
  position: absolute;
  content: '';
  right: 0;
  bottom: -8px;
  left: 0;
  width: 0px;
  height: 0px;
  margin: auto;
  border-style: solid;
  border-color: #e9e9e9 transparent transparent transparent;
  border-width: 8px 8px 0 8px;
}
@media screen and (max-width: 767px) {
  .product-price-list_type thead tr.osusume td {
    padding: 4.6666667vw 2.733333vw 6vw;
  }
  .product-price-list_type thead .osusume-item {
    position: relative;
    background-color: #e9e9e9;
    border-radius: 1.06666667vw;
    padding: 2.4vw 0;
  }
  .product-price-list_type thead .osusume-item p {
    font-size: calc((19.75   / 750) * 100vw);
    font-weight: 500;
    line-height: 1.5;
  }
}
.product-price-list_type {
  position: relative;
}
.product-price-list_type::before,
.product-price-list_type::after {
  position: absolute;
  content: '';
  display: block;
  width: 10px;
  height: 93.27%;
  background-color: #e5b48c;
  z-index: 0;
  bottom: 0;
}
.product-price-list_type::before {
  left: 0;
}
.product-price-list_type::after {
  left: 24%;
}
@media screen and (max-width: 767px) {
  .product-price-list_type::before,
  .product-price-list_type::after {
    height: 93.6%;
  }
  .product-price-list_type::before {
    left: -1vw;
  }
  .product-price-list_type::after {
    left: 23.6%;
  }
}
.product-price-list_type tbody tr:last-of-type td:first-of-type {
  border-bottom: 10px solid #e5b48c;
}
.product-price-list_type thead th .link {
  color: #c96715;
  display: inline-block;
}
.product-price-list_type thead th:first-of-type .logo__wrap {
  background-color: #e5b48c;
}
.product-price-list_type thead th .product img {
  height: auto;
}
.product-price-list_type thead th .ttl {
  position: relative;
  z-index: 3;
}
.product-price-list_type thead th .ttl sup {
  font-size: 75% !important;
}
@media screen and (min-width: 768px) {
  .product-price-list_type thead th .logo__wrap {
    padding: 25px 0 9px;
  }
  .product-price-list_type thead th .logo {
    height: 50px;
    width: auto;
  }
  .product-price-list_type thead th .ttl__wrap {
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 72px;
  }
  .product-price-list_type thead th .product {
    display: flex;
    align-items: center;
    justify-content: center;
    height: 280px;
  }
  .product-price-list_type thead th.slim .product img {
    width: 161px;
  }
  .product-price-list_type thead th.active .product img {
    width: 158px;
  }
  .product-price-list_type thead th.pocket .product img {
    width: 139px;
  }
  .product-price-list_type thead th.plus .product img {
    width: 125px;
  }
  .product-price-list_type thead th .ttl {
    font-size: 15px;
    line-height: 1.6;
    font-weight: 700;
  }
  .product-price-list_type thead th .ttl span {
    display: block;
    font-size: 12px;
  }
  .product-price-list_type thead th .price {
    margin-top: 20px;
    font-size: 20px;
    font-weight: 700;
  }
  .product-price-list_type thead th .price span {
    display: block;
    font-size: 12px;
  }
  .product-price-list_type thead th .link {
    font-size: 14px;
    font-weight: 700;
    margin-top: 20px;
    color: #c96715;
    display: inline-block;
  }
}
@media screen and (max-width: 767px) {
  .product-price-list_type thead th .logo__wrap {
    padding: 4.9vw 0 1.2vw;
  }
  .product-price-list_type thead th .logo {
    height: 9.3333333vw;
    width: auto;
  }
  .product-price-list_type thead th .ttl__wrap {
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 14.4vw;
  }
  .product-price-list_type thead th .product {
    display: flex;
    align-items: center;
    justify-content: center;
    height: 38vw;
  }
  .product-price-list_type thead th.slim .product img {
    width: 30.266667vw;
  }
  .product-price-list_type thead th.active .product img {
    width: 31.2vw;
  }
  .product-price-list_type thead th.pocket .product img {
    width: 26vw;
  }
  .product-price-list_type thead th.plus .product img {
    width: 21.2666667vw;
  }
  .product-price-list_type thead th .ttl {
    font-size: calc((24   / 750) * 100vw);
    line-height: 1.5;
    font-weight: 700;
    letter-spacing: -0.05em;
  }
  .product-price-list_type thead th .ttl span {
    display: block;
    font-size: calc((20   / 750) * 100vw);
  }
  .product-price-list_type thead th .price {
    margin-top: 7.2vw;
    font-size: calc((30 / 750) * 100vw);
    font-weight: 700;
  }
  .product-price-list_type thead th .price span {
    font-size:calc((18 / 750) * 100vw);
  }
  .product-price-list_type thead th .link {
    font-size: calc((20 / 750) * 100vw);
    font-weight: 700;
    margin-top: 2.4vw;
    color: #c96715;
    display: inline-block;
  }
}
/* ここまで */

/* product-spec */
.product-spec { margin-top: 120px; padding: 80px 0 100px; background-color: #f9fafa; width: 100%; }
@media only screen and (max-width: 767px) {
  .product-spec { margin-top: 30px; padding: 40px 0 60px; }
}
.product-spec .product-inner { max-width: 868px; }
.product-spec .ttl_main { font-size: 3.44rem; text-align: center; letter-spacing: .2em; }
@media only screen and (max-width: 767px) {
  .product-spec .ttl_main { font-size: 9.36vw; }
}
.product-spec .ttl_main span { display: block; font-size: 1.15rem; letter-spacing: .1em; }
@media only screen and (max-width: 767px) {
  .product-spec .ttl_main span { font-size: 3.22vw; }
}
.product-spec .product-box-list { margin-top: 50px; border-top: 1px solid #cacbcc; display: flex; flex-wrap: wrap; }
@media only screen and (max-width: 767px) {
  .product-spec .product-box-list { margin-top: 25px; }
}
.product-spec .product-box-list dt,
.product-spec .product-box-list dd { padding: 1.2em 0; border-bottom: 1px solid #cacbcc; }
.product-spec .product-box-list dt { width: 20%; font-weight: bold; }
@media only screen and (max-width: 767px) {
  .product-spec .product-box-list dt { width: 30%; }
}
.product-spec .product-box-list dd { width: 80%; }
@media only screen and (max-width: 767px) {
  .product-spec .product-box-list dd { width: 70%; }
}
.product-spec .product-box-list dd.set-pt { padding-top: 2.2em; }
@media only screen and (max-width: 767px) {
  .product-spec .product-box-list dd.set-pt { padding-top: 2em; }
}

/* product-attention */
/* .product-attention { margin-top: 80px; padding: 0; text-align: left; background-color: #fff; }
@media only screen and (max-width: 767px) {
  .product-attention { margin: 60px 0 0; }
}
.product-attention .product-inner { max-width: 868px; }
.product-attention .ttl { margin-bottom: 1em; font-size: 2rem; font-weight: bold; text-align: center; }
@media only screen and (max-width: 767px) {
  .product-attention .ttl { font-size: 5.34vw; }
}
.product-attention .txt { margin-bottom: 1em; line-height: 2; }
@media only screen and (max-width: 767px) {
  .product-attention .txt { font-size: 3.47vw; }
}
.product-attention .notece { font-size: 1rem; text-indent: -1em; margin-left: 1em; }
@media only screen and (max-width: 767px) {
  .product-attention .notece { font-size: 2.93vw; }
}
.product-attention .product-attention-list { line-height: 2; }
@media only screen and (max-width: 767px) {
  .product-attention .product-attention-list { font-size: 3.47vw; }
}
.product-attention .product-attention-list li::before { content: '○'; } */
.product-attention { margin-top: 80px; padding: 0; text-align: left; background-color: #fff; }
@media only screen and (max-width: 767px) {
  .product-attention .product-inner { padding: 0; }
}
#main .safetyattention__grayhead {
  background: #eeeeef;
  padding: 45px;
  margin-bottom: 2px;
}
@media only screen and (max-width: 767px) {
  #main .safetyattention__grayhead {
    width: 100%;
    padding: 25px;
    margin: 0 auto 2px;
  }
}
#main .safetyattention__grayhead h2 {
  text-align: center;
  font-size: 2.8rem;
  margin-bottom: 25px;
}
@media only screen and (max-width: 767px) {
  #main .safetyattention__grayhead h2 {
    font-size: 6vw;
    margin-bottom: 15px;
  }
}
#main .safetyattention__grayhead .txt {
  font-size: 1.1rem;
  text-align: center;
}
@media only screen and (max-width: 767px) {
  #main .safetyattention__grayhead .txt { font-size: 3.5vw; line-height: 1.8; }
}
#main .safetyattention__grayhtable {
  padding: 55px 0 60px;
  background: #eeeeef;
}
@media only screen and (max-width: 767px) {
  #main .safetyattention__grayhtable {
    width: 100%;
    padding: 25px;
    margin: 0 auto 2px;
  }
}
#main .safetyattention__grayhtable dl {
  padding-bottom: 40px;
  display: flex;
}
@media only screen and (max-width: 767px) {
  #main .safetyattention__grayhtable dl { display: block; }
}
#main .safetyattention__grayhtable dt {
  font-size: 1.1rem;
  color: #ff6c05;
  width: 135px;
  text-align: center;
  vertical-align: middle;
  border-right: 2px solid #ff6c05;
  display: flex;
  justify-content: center;
  align-items: center;
  font-weight: 700;
}
@media only screen and (max-width: 767px) {
  #main .safetyattention__grayhtable dt {
    width: 100%;
    text-align: center;
    font-size: 4.5vw;
    border-right: none;
    border-bottom: 2px solid #ff6c05;
    padding-bottom: 10px;
    margin-bottom: 20px;
  }
}
#main .safetyattention__grayhtable dd {
  padding-left: 40px;
  width: calc(100% - 135px);
  font-size: 1.1rem;
}
@media only screen and (max-width: 767px) {
  #main .safetyattention__grayhtable dd {
    padding-left: 0;
    width: 100%;
    font-size: 3.5vw;
    line-height: 1.8;
  }
}

/* animation */
.js-fade { transform: translateY(40px); opacity: 0; transition: all .8s; }
.js-fade.show { transform: translateY(0); opacity: 1; }

/*--2023/02/22 LINE--*/
.line_id_txt{font-size:20px;text-align:center;margin:0 auto 4px;}
@media screen and (min-width: 0px) and (max-width: 767px){.line_id_txt{font-size:4vw;margin:0 auto 8px;}}

#wrapper .point10Label.it-header{margin-top:15px;background: #ff8705;}
@media screen and (min-width: 0px) and (max-width: 767px){#wrapper .point10Label.it-header{margin-top:0;}}
#wrapper .point10Label.it-header a:link,#wrapper .point10Label.it-header a:visited,#wrapper .point10Label.it-header a:hover{ color:#fff !important;text-decoration: none;display: block;padding:9px 0 !important;line-height: 1.75;font-size: 18px; font-weight: 300 !important;}
@media screen and (min-width: 0px) and (max-width: 767px){#wrapper .point10Label.it-header a:link,#wrapper .point10Label.it-header a:visited,#wrapper .point10Label.it-header a:hover{padding:2vw 0 !important;font-size: 15px;}}

.product-price .product-price-box .txt_area .line_cart_link{text-align: center;margin:30px auto 4px;text-decoration: none;font-size:20px;}
@media screen and (min-width: 0px) and (max-width: 767px){.product-price .product-price-box .txt_area .line_cart_link{font-size:4vw;margin:30px auto 8px;}}
.product-price .product-price-box .txt_area .line_cart_link a{text-decoration: none !important;}
.product-price .product-price-box .txt_area .line_cart_link a:link,.product-price .product-price-box .txt_area .line_cart_link a:visited{}
.product-price .product-price-box .txt_area .line_cart_link a:hover{}

/*在庫表記*/
.product-detail__attention {
  padding: 20px 30px;
  margin-top: 20px;
  box-sizing: border-box;
}

@media all and (max-width: 767px) {
  .product-detail__attention {
    width: inherit;
    margin:15px 35px 20px;
  }
}

.product-price-attention .product-detail__attention {
  padding: 20px 30px;
  margin-top: 60px;
}

@media all and (max-width: 767px) {
  .product-price-attention .product-detail__attention {
    padding: 20px 30px;
    margin-top: 30px;
  }
}

.powergun_link ,
.powergunslim_link {
	padding: 0 10px;
	width: 100%;
	margin: 20px auto 0;
}
@media all and (min-width: 767px) {
	.powergun_link ,
	.powergunslim_link {
		padding: 0;
		max-width: 960px;
	}

}

/* 20231031追加 */
#goodsspec_body .goodscomment_ .deliveryBlock_ dt {
  color: red;
  font-size: 16px;
  font-weight: bold;
  line-height: 1.7;
  width: auto;
  margin: 0;
  border: none;
  text-align: left;
  padding: 0;
  background: transparent;
}
#goodsspec_body .goodscomment_ .deliveryBlock_ dt:before {
  display: inline-block;
  content: "";
  width: 22px;
  height: 15px;
  vertical-align: middle;
  background: url(/img/usr/common/icon_delivery.png) 0 center no-repeat;
  background-size: 17px 14px
}
#goodsspec_body .goodscomment_ .deliveryBlock_ dd {
  margin-bottom: 1rem;
  font-size: 12px;
  line-height: 1.7;
  margin-bottom: 20px;
}
#goodsspec_body.mt {
  margin-top: 6px;
}
.goodscomment_ a:hover {
  border: none !important;
}
.goodscomment_ a {
  color: inherit !important;
}
#goodsspec_body .goodscomment_ .deliveryBlock_ dd span{
  padding: 0 0.2rem;
  font-weight: bold;
  text-decoration: underline
}

.product-link {
	max-width: 940px;
	width: 90%;
	margin: 90px auto 90px;
}

/* 20240125追加 */
@media all and (min-width: 767px) {
  .product-price .product-price-box .txt_area .ttl {
    font-size: 2.1rem;
  }
}
@media all and (max-width: 766px) {
  .product-price .product-price-box .txt_area .ttl {
    text-align: center;
  }
  .product-price .product-price-box .txt_area .line_linkage_icon {
    top: 6em;
  }
  .product-price .product-price-box .price strong {
    font-size: calc((64 / 750) * 100vw);
  }

}
@media all and (min-width: 767px) {
  .img_area_logo {
    display: block;
    margin-top: 2rem !important;
    margin-left: 6.5rem !important;
  }
}
@media all and (max-width: 766px) {
  .txt_area_logo {
    display: block;
    width: 55%;
    margin: 2vw auto 8vw;
  }
}
.kv__btn__text {
  text-align: center;
}
@media screen and (min-width: 767px) {
  .kv__btn__text {
    font-size: 1rem;
    line-height: 1.1818181818;
    letter-spacing: 0.08em;
    font-weight: 600;
  }
}
@media screen and (max-width: 766px) {
  .kv__btn__text {
    font-size: calc((26 / 750) * 100vw);
    line-height: 1.1923076923;
    letter-spacing: 0.08em;
    font-weight: 600;
  }
}
@media screen and (min-width: 767px) {
  .kv__btn__text {
    margin-bottom: 12px;
  }
}
@media screen and (max-width: 766px) {
  .kv__btn__text {
    margin-bottom: 2vw;
  }
}
.kv__btn__text span {
  position: relative;
}
.kv__btn__text span::before, .kv__btn__text span::after {
  position: absolute;
  content: "";
  display: block;
  bottom: 0;
  background-repeat: no-repeat;
  background-size: contain;
  background-image: url(../img/im-slash.png);
}
@media screen and (min-width: 767px) {
  .kv__btn__text span::before, .kv__btn__text span::after {
    width: 15px;
    height: 12px;
  }
}
@media screen and (max-width: 766px) {
  .kv__btn__text span::before, .kv__btn__text span::after {
    width: 3.8666666667vw;
    height: 3.0666666667vw;
  }
}
.kv__btn__text span::before {
  transform: translateX(-100%);
}
@media screen and (min-width: 767px) {
  .kv__btn__text span::before {
    left: -15px;
  }
}
@media screen and (max-width: 766px) {
  .kv__btn__text span::before {
    left: -2.6666666667vw;
  }
}
.kv__btn__text span::after {
  transform: translateX(100%) scale(-1, 1);
}
@media screen and (min-width: 767px) {
  .kv__btn__text span::after {
    right: -15px;
  }
}
@media screen and (max-width: 766px) {
  .kv__btn__text span::after {
    right: -2.6666666667vw;
  }
}

.customer-voice {
  z-index: 0;
  margin-top: 8vh;
  background: linear-gradient(to bottom, #cadcf0, #fedee3);
  padding: 80px 0;
  position: relative;
  overflow: hidden;
}

/* 766px以下に適用される */
@media screen and (max-width: 766px) {
  .customer-voice {
    padding: 6vh 0;
  }
}

@media screen and (max-width: 766px) {
  .customer-voice {
   top: 50%;
  }
}


.customer-voice::before {
  content: "";
  position: absolute;
  bottom: 0px;
  left: 50%;
  transform: translateX(-50%) translateX(-260px);
  width: 920px;
  height: 290px;
  background-image: url('../img/bg_voice.png');
  background-size: contain;
  background-repeat: no-repeat;
  pointer-events: none;
}


@media screen and (max-width: 766px) {
  .customer-voice::before {
    content: "Voice";
    position: absolute;
    top: 63.5%;
    left: 50%;
    width: 100%;
    height: auto;
    transform: translate(-50%, -50%);
    font-weight: 500;
    font-size: 44vw;
    color: rgba(255, 255, 255, 0.2);
    white-space: nowrap;
    pointer-events: none;
    background-image: none;

  }
}

.customer-voice__heading {
  font-size: 2.2rem;
  letter-spacing: .3em;
  text-align: center;
  margin-bottom: 6vh;
}
@media screen and (max-width: 766px) {
  .customer-voice__heading {
    font-size: 7vw;
    margin-bottom: 2.5vh;
  }
}
.customer-voice__heading span {
  color: #f09ba9;
}
.customer-voice__box {
  display: flex;
  justify-content: center;
  align-items: center;
  margin-bottom: 6vh;
}

.customer-voice__chart {
  width: 50%;
  display: flex;
  justify-content: right;
  padding-right: 70px;
}


.customer-voice__conts {
  width: 50%;
  overflow: hidden;
}


@media screen and (max-width: 766px) {
  .customer-voice__box {
    display: block;
    margin-bottom: 0vh;
  }
  .customer-voice__chart {
    width: 100%;
    display: block;
    padding-right: 0px;
  }
  .customer-voice__conts {
    width: 100%;
    overflow: hidden;
  }
  
}


/* .customer-voice__note {
  font-size: 10px;
  text-align: center;
  line-height: 1;
  margin-bottom: 4vh;
} */
.customer-voice__note {
  font-size: 10px;
  text-align: left;
  line-height: 1;
  max-width: 500px;
  margin: 0 auto;
  margin-bottom: 2vh;
}
@media screen and (max-width: 766px) {
  .customer-voice__note {
    line-height: 1.6;
    margin-bottom: 0vh;
    width: calc(100% - 70px);
  }
}


.chart-container {
  position: relative;
  width: 440px;
  height: 440px;
  width: 100%;
  max-width: 560px;
  max-height: 560px;
}
@media screen and (max-width: 766px) {
  .chart-container {
    width: 70%;
    height: auto;
    margin: 0 auto;
  }
}

.chart-text {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  text-align: center;
  font-weight: bold;
  color: #595757;
}

.chart-text .label {
  display: block;
  font-size: clamp(16px, 4vw, 32px);
  font-weight: normal;
  line-height: 1.2;
}

@media screen and (max-width: 766px) {
  .chart-text .label {
    font-size: 6.5vw;
  }
}

.chart-text .value {
  display: block;
  font-size: clamp(24px, 7vw, 70px);
  line-height: 1.2;
}

.chart-text .value span {
  font-size: clamp(24px, 6vw, 45px);
}

@media screen and (max-width: 766px) {
  .chart-text .value {
    font-size: 13vw;
  } 
}

@media screen and (max-width: 766px) {
  .chart-text .value span {
    font-size: 9vw;
  }
}

.customer-voice__bubble-1 {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 26%;
  transform: translate(-50%, -50%) translate(140%, -90%);
}

.customer-voice__bubble-2 {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 26%;
  transform: translate(-50%, 50%) translate(-120%, 20%);
}

@media screen and (max-width: 766px) {
  .customer-voice__bubble-1 {
    width: 32%;
    transform: translate(-50%, -50%) translate(140%, -90%);
  }
  
  .customer-voice__bubble-2 {
    width: 32%;
    transform: translate(-50%, 50%) translate(-120%, 20%);
  }
   
}


.customer-voice__bubble-1 img,
.customer-voice__bubble-2 img {
  width: 100%;
  height: auto;
}



.underline-text {
  position: relative;
  display: inline-block;
  font-weight: bold !important;
}

.underline-text::after {
  content: '';
  position: absolute;
  left: 50%;
  transform: translateX(-51%);
  bottom: 5px;
  width: 90%;
  height: 7px;
  background-color: #f0c0c8;
  z-index: -1;  
}
@media screen and (max-width: 766px) {
  .underline-text::after {
    bottom: 3px;
  }
}
.customer-voice__conts__heading {
  font-size: 1.3rem;
  line-height: 1.8;
    letter-spacing: .2em;
}

@media screen and (max-width: 766px) {
  .customer-voice__conts__heading {
    font-size: 3.8vw;
    text-align: center;
    margin-bottom: 5vh;
  }
}



.slider_customer-voice .testimonial {
  background:#fff url(../img/customer-voice-mark.png) no-repeat 90% 90%;
  background-size: 30px;
  border-radius: 15px;
  padding: 25px;
  text-align: center;
  line-height: 1.6;
  position: relative;
}
@media screen and (max-width: 766px) {
  .slider_customer-voice .testimonial {
    margin: 0 auto;
  }
}
.slider_customer-voice .testimonial p {
  font-size: 13px;
  color: #333;
  display: block;
  min-height:120px ;
  text-align: left;
  line-height: 1.8;
  padding-bottom: 35px;
}
@media screen and (max-width: 766px) {
  .slider_customer-voice .testimonial p {
    min-height:auto;
  }
}
.slider_customer-voice .testimonial .author {
  margin-top: 15px;
  font-size: 14px;
  font-weight: bold;
  color: #888;
  text-align: left;
  position: absolute;
  bottom:25px;
  left: 25px;
}

.slider_customer-voice .slick-slide {
  margin: 0 10px;
}

.slider_customer-voice .slick-list {
  margin: 0 -10px;
  width: 120%;
}
@media screen and (max-width: 766px) {
  .slider_customer-voice .slick-list {
    width: 180%;
  }
}



.slider_customer-voice .slick-prev, .slick-next {
  width: 30px;
  height: 30px;
  z-index: 1;
  border: none;
  position: absolute;
}
.slider_customer-voice .slick-prev {
  left: 0px;
  bottom: -.83vh;
  background: url('../img/previous-image.png') no-repeat center center;
  background-size: contain;
}
.slider_customer-voice .slick-next {
  left: 40px;
  bottom: -.83vh;
  background: url('../img/next-image.png') no-repeat center center;
  background-size: contain;
}


.slider_customer-voice.slick-dotted.slick-slider {
  margin: 40px auto;
}
@media screen and (max-width: 766px) {
  .slider_customer-voice.slick-dotted.slick-slider {
    margin: 7vh 0px 3vh 40px;
  }
}

/* ドット */

.slider_customer-voice .slick-dots {
  display: flex !important;
  justify-content: left !important;
  align-items: center;
  margin-top: 20px;
  margin-left: 95px;
  width: 88%;
}
@media screen and (max-width: 766px) {
  .slider_customer-voice .slick-dots {
    margin-left: 0px;
    margin-top: 0px;
    width: 100%;
  }
}

.slider_customer-voice .slick-dots li {
  margin: 0px;
  cursor: pointer;
  width: 20%;
}

.slider_customer-voice .slick-dots li button {
  width: 100%;
  height: 5px;
  background: #ffffff;
  border: none;
  cursor: pointer;
  outline: none;
  border-radius: 0px;
  font-size: 0;
    color: transparent;
    transition: background 0.3s ease;
}
.slider_customer-voice .slick-dots li:first-child button {
  border-top-left-radius: 5px;
  border-bottom-left-radius: 5px;
}

.slider_customer-voice .slick-dots li:last-child button {
  border-top-left-radius: 5px;
  border-bottom-left-radius: 5px;
}

@media screen and (max-width: 766px) {
  .slider_customer-voice .slick-dots li button {
    width: 100%;
  }
}
.slider_customer-voice .slick-dots li button:before {
  content: none;
}

.slider_customer-voice .slick-dots li.slick-active button {
  background: #f09ba9;
  border-radius: 5px;
}
/* 長友夫妻コンテンツ */
.nagatomo-special {
	padding: 7.1rem 1rem 9.94rem 1rem;
}
@media screen and (max-width: 767px) {
	.nagatomo-special {
		padding: 16vw 0 10vw 0;
		text-align: center;
	}
}
@media all and (min-width: 768px) {
	.nagatomo-special .display-sp {
		display: none;
	}
}
@media screen and (max-width: 767px) {
	.nagatomo-special .display-pc {
		display: none;
	}
}
.nagatomo-special__inner {
	margin-left: auto;
	margin-right: auto;
	max-width: 85.91rem;
}
@media screen and (max-width: 767px) {
	.nagatomo-special__inner {
		padding: 0 6.6667vw;
	}
}
@media all and (min-width: 768px) {
	.nagatomo-special__columns {
		display: flex;
		flex-wrap: nowrap;
    justify-content: space-between;
		max-width: 73.13rem;
		margin-left: auto;
		margin-right: auto;
	}
}
.nagatomo-special img {
	max-width: 100%;
}
@media all and (min-width: 768px) {
	.nagatomo-special__columns__column:nth-child(1) {
		width: 33.37rem;
	}
}
.nagatomo-special__columns__column:nth-child(2) {
	width: 27.69rem;
}
@media all and (max-width: 767px) {
	.nagatomo-special__columns__column:nth-child(2) {
		margin-top: 12vw;
    width: 52vw;
		margin-left: auto;
	}
}
.nagatomo-special__h2 {
	font-size: 2.556rem;
	line-height: 1.5;
}
@media screen and (min-width: 768px) {
	.nagatomo-special__h2 {
		margin-top: 4.26rem;
	}
}
@media screen and (max-width: 767px) {
	.nagatomo-special__h2 {
		font-size: 5.06vw;
	}
}
.nagatomo-special__lead {
	margin-top: 2.13rem;
	font-size: 1.42rem;
	line-height: 2;
}
@media screen and (max-width: 767px) {
	.nagatomo-special__lead {
		font-size: 3.4666vw;
	}
}
@media screen and (min-width: 768px) {
    .nagatomo-special__button {
        line-height: 1;
        margin-top: 4.97rem;
    }
}
@media screen and (max-width: 767px) {
    .nagatomo-special__button {
        text-align: center;
        margin-top: 9.33333vw;
    }
}
.nagatomo-special__button__anchor {
    display: inline-block;
    position: relative;
    background-image: url(/wellness/sixpad/products/common/img/powergunpocket/ic-nagatomo-arrow.png);
    background-repeat: no-repeat;
    background-position: top right;
    line-height: 1 !important;
    color: #333333;
    text-decoration: none;
    transition: ease 0.5s;
}
@media screen and (min-width: 768px) {
    .nagatomo-special__button__anchor {
        font-size: 1.136rem;
        padding-right: 1.988rem;
        padding-bottom: 0.852rem;
        background-size: 1.42rem;
    }
}
@media screen and (max-width: 767px) {
    .nagatomo-special__button__anchor {
        font-size: 3.2vw;
        padding-right: 6vw;
        padding-bottom: 2vw;
        background-size: 4vw;
    }
}
.nagatomo-special__button__anchor:hover {
    opacity: 0.7;
}
.nagatomo-special__button__anchor:after {
    content: "";
    display: block;
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
    height: 1px;
    background-color: #ff872b;
}
.nagatomo-special__figure-columns {
	margin-top: 7.1rem;
}
@media screen and (max-width: 767px) {
	.nagatomo-special__figure-columns {
		margin-top: 6.66666667vw;
	}
}
@media all and (min-width: 768px) {
	.nagatomo-special__figure-columns__img:nth-child(1) {
		width: 66.03rem;
	}
}
@media screen and (max-width: 767px) {
	.nagatomo-special__figure-columns__img:nth-child(1) {
		width: 63.2vw;
	}
}
.nagatomo-special__figure-columns__img:nth-child(2) {
	margin-left: auto;
}
@media all and (min-width: 768px) {
	.nagatomo-special__figure-columns__img:nth-child(2) {
		margin-top: -22.01rem;
		width: 27.69rem;
	}
}
@media screen and (max-width: 767px) {
	.nagatomo-special__figure-columns__img:nth-child(2) {
		margin-top: -20vw;
		width: 30.6vw;
	}
}