@charset "UTF-8";
/*******************
	common
*******************/
body {
  margin: 0 auto;
  font-family: "ヒラギノ角ゴ ProN W3","HiraKakuProN-W3","ヒラギノ角ゴ Pro W3","HiraKakuPro-W3","メイリオ",Meiryo,"ＭＳ Ｐゴシック","MS Pgothic","Osaka",sans-serif,Helvetica, Helvetica Neue, Arial, Verdana;
  font-display: swap;
  line-height: 1.8; }

/*******************
	main
*******************/
.cp-main {
  width: auto;
  margin: 0 auto 1%; }
  .cp-main img {
    display: block;
    max-width: 100%;
    width: auto;
    height: auto;
    margin: 0 auto; }

.cp-banner {
  width: auto;
  margin: 0 0 2.5%; }
  .cp-banner img {
    display: block;
    max-width: 100%;
    width: auto;
    height: auto;
    margin: 0 auto; }

@media screen and (max-width: 767px) {
  .cp-main {
    width: auto;
    margin: 5% auto 0; }
    .cp-main img {
      display: block;
      max-width: 100%;
      width: auto;
      height: auto;
      margin: 0 auto; }
  .cp-banner {
    width: auto;
    margin: 2.5% 0; }
    .cp-banner img {
      display: block;
      max-width: 100%;
      width: auto;
      height: auto;
      margin: 0 auto; } }

/*******************
	nav
*******************/
.cp-listWrap {
  display: flex;
  justify-content: space-between;
  margin: 0 0 2.5%;
  padding: 0;
  list-style: none; }

.cp-list {
  width: 33.1%;
  margin: 0;
  text-align: center;
  background: #e50012;
  opacity: .6;
  transition: all 0.3s; }
  .cp-list:hover {
    background: #e50012;
    opacity: 1;
    transition: all 0.3s; }
  .cp-list .s5-button {
    display: block;
    width: 100%;
    padding: 3.8% 0;
    font-size: 1.25rem;
    font-weight: bold;
    background: #e50012;
    cursor: pointer;
    text-align: center;
    outline: none; }
    .cp-list .s5-button:focus {
      background: #e50012; }

.active {
  background: #e50012;
  opacity: 1;
  transition: all 0.3s; }

@media screen and (max-width: 767px) {
  .cp-listWrap {
    display: block;
    justify-content: space-between;
    margin: 0 0 10%;
    padding: 0;
    list-style: none; }
  .cp-list {
    width: auto;
    margin: 0 0 .5%;
    text-align: center;
    background: #e50012;
    opacity: .6;
    transition: all 0.3s; }
    .cp-list .s5-button {
      display: block;
      width: 100%;
      padding: 3.8% 0;
      font-size: 1.25rem;
      font-weight: bold;
      background: #e50012;
      cursor: pointer;
      text-align: center;
      outline: none; }
      .cp-list .s5-button:hover {
        background: #e50012;
        opacity: 1;
        transition: all 0.3s; }
      .cp-list .s5-button:focus {
        background: #e50012; }
  .active {
    background: #e50012;
    opacity: 1;
    transition: all 0.3s; } }

/*******************
	cp-description 内容部分
*******************/
.cp-description {
  margin: 0 0 3%; }
  .cp-description__title {
    margin: 0 0 1%;
    padding-left: .5%;
    font-size: 1.1rem;
    border-left: solid 8px #f27f88;
    border-bottom: dotted 1px #f27f88; }
  .cp-description__text {
    margin: 0;
    padding-left: .5em;
    font-size: 1.25rem;
    font-weight: 600; }
    .cp-description__text--indent {
      text-indent: -.5em; }
    .cp-description__text--S {
      font-size: 1rem; }
    .cp-description__text--numTop {
      font-size: 1rem;
      font-weight: 600;
      margin-bottom: 0.1%; }
      .cp-description__text--numTop span {
        color: #f27f88;
        font-size: 1rem;
        font-weight: bold;
        font-family: sans-serif; }
  .cp-description__comment {
    list-style: none;
    margin: 0;
    padding-left: .5%; }
  .cp-description__caution {
    list-style: none;
    margin: 0 0 0.2%;
    padding-left: 2em;
    font-size: 1rem; }
  .cp-description__benefit {
    list-style: none;
    margin: 0;
    padding-left: .5%;
    font-size: 1.25rem;
    font-weight: 600; }
  .cp-description__btn {
    text-align: center;
    max-width: 330px;
    margin: 0 auto; }
    .cp-description__btn .s5-button {
      display: block;
      padding: 2% 2%;
      font-size: 1.4rem;
      cursor: pointer; }
      .cp-description__btn .s5-button:hover {
        opacity: .6;
        transition: all 0.3s; }
      .cp-description__btn .s5-button:focus {
        background: #8aacf6; }

@media screen and (max-width: 767px) {
  .cp-description {
    margin: 0 0 10%; }
    .cp-description--qa {
      margin: 0 0 20%; }
    .cp-description__title {
      margin: 0 0 5%;
      padding-left: .5em;
      font-size: 1.1rem;
      border-left: solid 8px #f27f88;
      border-bottom: dotted 1px #f27f88;
      color: #e50012; }
    .cp-description__text {
      width: 90%;
      margin: 0 auto;
      padding-left: 0;
      font-size: 1.25rem;
      font-weight: 600; }
      .cp-description__text--indent {
        text-indent: -.5em; }
      .cp-description__text--sp {
        width: auto; }
      .cp-description__text--S {
        font-size: 1rem; }
      .cp-description__text--numTop {
        font-size: 1rem;
        font-weight: 600;
        text-indent: -1.3em;
        padding-left: 1em; }
        .cp-description__text--numTop span {
          color: #f27f88;
          font-size: 1rem;
          font-weight: bold;
          font-family: sans-serif; }
    .cp-description__comment {
      list-style: none;
      width: 90%;
      margin: 0 auto;
      padding-left: .5em; }
    .cp-description__caution {
      list-style: none;
      margin: 0;
      padding-left: 2em;
      font-size: 1rem; }
    .cp-description__benefit {
      list-style: none;
      margin: 0;
      padding-left: .5%;
      font-size: 1.25rem;
      font-weight: 600; }
    .cp-description__btn {
      text-align: center;
      max-width: 80%;
      margin: 20% auto 10%; }
      .cp-description__btn .s5-button {
        display: block;
        padding: 2% 2%;
        font-size: 1.4rem;
        cursor: pointer; }
        .cp-description__btn .s5-button:hover {
          opacity: .6;
          transition: all 0.3s; }
        .cp-description__btn .s5-button:focus {
          background: #8aacf6; } }

/*******************
	cp-target 囲い部分
*******************/
.cp-target {
  position: relative;
  margin: 0 0 5%;
  padding: 0;
  border: solid 2px #e50012; }
  .cp-target__targetComment {
    margin: 0;
    text-align: right; }
    .cp-target__targetComment--popup {
      width: 92%;
      margin: 0 auto; }
  .cp-target--last {
    margin: 0 0 4%; }
  .cp-target__title {
    position: absolute;
    top: 0;
    display: inline-block;
    min-height: 38px;
    margin: 0;
    padding: .6% 2%;
    background: #e50012;
    color: #fff;
    font-size: 1.25rem; }
    .cp-target__title:after {
      position: absolute;
      left: 100%;
      top: 0;
      content: "";
      background: url(../images/arrow.png) no-repeat left top;
      background-size: contain;
      width: 19%;
      height: 100%; }
  .cp-target__box {
    display: flex;
    justify-content: space-between;
    align-items: end;
    max-width: 1132px;
    margin: 0 3%;
    padding: 2.5% 0;
    background: url(../images/border_target.png) repeat-x center bottom; }
    .cp-target__box:last-of-type {
      background: none; }
    .cp-target__box--ipod {
      display: block;
      padding: 6.8% 0 2%; }
  .cp-target__boxInner {
    display: flex;
    justify-content: space-between;
    align-items: baseline;
    width: 48%; }
    .cp-target__boxInner--ipod {
      overflow: hidden;
      display: block;
      width: auto; }
  .cp-target__btnWrap {
    display: flex;
    justify-content: space-between;
    align-items: baseline; }
  .cp-target__text {
    margin: 0;
    font-size: calc(1.125rem + ((1vw - 3.2px) * 0.375));
    font-weight: bold;
    line-height: 1.3; }
    .cp-target__text:first-letter {
      color: #f27f88; }
    .cp-target__text--ipod {
      text-indent: -1em;
      padding-left: 1em; }
  .cp-target__comment {
    list-style: none;
    width: auto;
    margin: 0 0 .8%;
    padding-left: 2em; }
  .cp-target__imageBox {
    width: 50%; }
    .cp-target__imageBox--product {
      width: 40%;
      padding: 8% 0 0; }
    .cp-target__imageBox--product2 {
      width: 60%;
      padding: 3% 0 0; }
    .cp-target__imageBox--product3 {
      width: 100%;
      padding: 3% 0 0; }
    .cp-target__imageBox--product4 {
      width: 50%;
      padding: 3% 2% 0; }
    .cp-target__imageBox--product5 {
      width: 45%;
      padding: 3% 2% 0; }
  .cp-target__image {
    width: auto;
    margin: 0 0 2%; }
    .cp-target__image--present {
      padding: 13% 0 0; }
    .cp-target__image img {
      display: block;
      max-width: 100%;
      width: auto;
      height: auto;
      margin: 0 auto; }
  .cp-target__name {
    margin: 0 0 5%;
    font-size: 2rem;
    font-weight: bold;
    text-align: center;
    line-height: .9;
    white-space: nowrap; }
    .cp-target__name--S {
      font-size: 1.8rem; }
    .cp-target__name--S2 {
      font-size: 1.8rem;
      line-height: 1.1; }
    .cp-target__name span {
      font-size: 1.1rem;
      line-height: 1; }
  .cp-target__btn {
    width: 160px;
    margin: 0 auto;
    text-align: center; }
    .cp-target__btn--1line {
      margin-top: 11%; }
    .cp-target__btn .s5-button {
      display: block;
      padding: 5% 2%;
      font-size: 1rem;
      background: #000;
      cursor: pointer; }
      .cp-target__btn .s5-button:hover {
        background: #000;
        opacity: .6;
        transition: all 0.3s; }
      .cp-target__btn .s5-button:focus {
        background: #000; }

@media (min-width: 1920px) {
  .cp-target__name {
    font-size: 32px; }
    .cp-target__name--S {
      font-size: 29px; }
    .cp-target__name span {
      font-size: 18px; }
  .cp-target__text {
    margin: 0;
    font-size: calc(1.125rem + ((1vw - 3.2px) * 0.375));
    font-weight: bold;
    line-height: 1.3; }
    .cp-target__text:first-letter {
      color: #f27f88; }
    .cp-target__text--ipod {
      text-indent: -1em;
      padding-left: 1em; } }

@media screen and (min-width: 768px) and (max-width: 1200px) {
  .cp-target {
    position: relative;
    margin: 0 0 5%;
    padding: 0;
    border: solid 2px #e50012; }
    .cp-target__box {
      display: flex;
      justify-content: space-between;
      align-items: end;
      max-width: 1132px;
      margin: 0 3%;
      padding: 2.5% 0 3%;
      background: url(../images/border_target.png) no-repeat center bottom;
      background-size: 98% 1px; }
      .cp-target__box:last-of-type {
        border-bottom: none; }
      .cp-target__box--ipod {
        display: block;
        padding: 6.8% 0 2%; }
    .cp-target__targetComment {
      margin: 0;
      text-align: right; }
    .cp-target__boxInner {
      display: flex;
      justify-content: space-between;
      align-items: baseline;
      width: 48%; }
      .cp-target__boxInner--ipod {
        overflow: hidden;
        display: block;
        width: auto; }
    .cp-target__btnWrap {
      display: flex;
      justify-content: space-between;
      align-items: baseline; }
    .cp-target__text {
      margin: 0;
      font-size: calc(1.125rem + ((1vw - 3.2px) * 0.375));
      font-weight: bold;
      line-height: 1.3; }
      .cp-target__text:first-letter {
        color: #f27f88; }
      .cp-target__text--ipod {
        text-indent: -1em;
        padding-left: 1em; }
    .cp-target__comment {
      list-style: none;
      width: auto;
      margin: 0 0 .8%;
      padding-left: 2em; }
    .cp-target__imageBox {
      width: 50%; }
      .cp-target__imageBox--product {
        width: 40%;
        padding: 8% 0 0; }
      .cp-target__imageBox--product2 {
        width: 60%;
        padding: 3% 0 0; }
      .cp-target__imageBox--product3 {
        width: 100%;
        padding: 3% 0 0; }
      .cp-target__imageBox--product4 {
        width: 50%;
        padding: 3% 2% 0; }
      .cp-target__imageBox--product5 {
        width: 45%;
        padding: 3% 2% 0; }
    .cp-target__image {
      width: auto;
      margin: 0 0 2%; }
      .cp-target__image img {
        display: block;
        max-width: 100%;
        width: auto;
        height: auto;
        margin: 0 auto; }
    .cp-target__name {
      margin: 0 0 5%;
      font-size: calc(1rem + ((1vw - 7.68px) * 3.7037));
      font-weight: bold;
      text-align: center;
      line-height: .8;
      white-space: nowrap; }
      .cp-target__name--S {
        font-size: calc(1rem + ((1vw - 7.68px) * 3.0093)); }
      .cp-target__name span {
        font-size: calc(0.75rem + ((1vw - 7.68px) * 1.3889)); }
    .cp-target__btn {
      width: 120px;
      margin: 0 auto;
      text-align: center; }
      .cp-target__btn--1line {
        margin-top: 11%; }
      .cp-target__btn .s5-button {
        display: block;
        padding: 5% 2%;
        font-size: .8rem;
        background: #000;
        cursor: pointer; }
        .cp-target__btn .s5-button:hover {
          background: #000;
          opacity: .6;
          transition: all 0.3s; }
        .cp-target__btn .s5-button:focus {
          background: #000; }
        .cp-target__btn .s5-button--s {
          font-size: .8rem; } }

@media screen and (max-width: 900px) {
  .cp-target__box--ipod {
    display: block;
    padding: 8% 0 2%; } }

@media screen and (max-width: 767px) {
  .cp-target {
    position: relative;
    margin: 0 0 5%;
    padding: 0;
    border: solid 2px #e50012; }
    .cp-target--last {
      margin: 0 0 4%; }
    .cp-target__targetComment {
      margin: 0;
      text-align: right; }
    .cp-target__title {
      position: absolute;
      top: 0;
      display: inline-block;
      min-height: 38px;
      margin: 0;
      padding: .6% 5%;
      background: #e50012;
      color: #fff;
      font-size: 1.25rem; }
      .cp-target__title:after {
        position: absolute;
        left: 100%;
        top: 0;
        content: "";
        background: url(../images/arrow.png) no-repeat left top;
        background-size: contain;
        width: 19%;
        height: 100%; }
      .cp-target__title--2line {
        padding: 2% 5%;
        font-size: 1rem;
        line-height: 1.3; }
        .cp-target__title--2line:after {
          position: absolute;
          left: 100%;
          top: 0;
          content: "";
          background: url(../images/arrow.png) no-repeat left top;
          background-size: contain;
          width: 19%;
          height: 100%; }
    .cp-target__box {
      display: block;
      justify-content: space-between;
      align-items: end;
      max-width: 1132px;
      margin: 0 0 3%;
      padding: 0 0 3%;
      background: url(../images/border_target.png) no-repeat center bottom;
      background-size: 90% 1px; }
      .cp-target__box:first-of-type {
        padding: 20% 0 3%; }
      .cp-target__box--ipod {
        padding: 6.8% 0 2%; }
    .cp-target__boxInner {
      overflow: auto;
      display: block;
      width: auto; }
      .cp-target__boxInner--ipod {
        overflow: auto;
        display: block;
        width: 92.8%;
        margin: 0 auto; }
    .cp-target__btnWrap {
      display: block;
      margin: 0 auto 10%;
      align-items: baseline; }
    .cp-target__text {
      margin: 0 0 3%;
      font-size: 1.3rem;
      font-weight: bold;
      line-height: 1.3;
      text-indent: -1.3em;
      padding-left: 1.3em; }
      .cp-target__text:first-letter {
        color: #f27f88; }
      .cp-target__text--ipod {
        margin: 0 auto 1%; }
    .cp-target__comment {
      list-style: none;
      margin: 0 0 3%;
      padding-left: 1.5em; }
    .cp-target__imageBox {
      width: 90%;
      margin: 0 auto 7%; }
      .cp-target__imageBox--product {
        padding: 0; }
    .cp-target__image {
      width: auto;
      margin: 0 0 3%; }
      .cp-target__image--present {
        padding: 3% 0 7%; }
      .cp-target__image img {
        display: block;
        max-width: 100%;
        width: auto;
        height: auto;
        margin: 0 auto; }
    .cp-target__name {
      margin: 0 0 5%;
      font-size: 1.3rem;
      font-weight: bold;
      text-align: center;
      line-height: .8;
      white-space: nowrap; }
      .cp-target__name--S {
        font-size: 1.3rem; }
      .cp-target__name span {
        font-size: .9rem; }
    .cp-target__btn {
      clear: both;
      float: none;
      width: 160px;
      margin: 0 auto;
      text-align: center; }
      .cp-target__btn--1line {
        margin-top: 0; }
      .cp-target__btn .s5-button {
        display: block;
        padding: 5% 2%;
        font-size: 1rem;
        background: #000;
        cursor: pointer; }
        .cp-target__btn .s5-button:hover {
          background: #000;
          opacity: .6;
          transition: all 0.3s; }
        .cp-target__btn .s5-button:focus {
          background: #000; } }

@media screen and (max-width: 375px) {
  .cp-target__title {
    min-height: 21px; }
    .cp-target__title--2line {
      padding: 0% 5% 1%;
      font-size: 1rem;
      line-height: 1.3; }
      .cp-target__title--2line:after {
        position: absolute;
        left: 99.1%;
        top: 0;
        content: "";
        background: url(../images/arrow.png) no-repeat left top;
        background-size: contain;
        width: 19%;
        height: 100%; } }

/*******************
	cp-inquiry お問い合わせ
*******************/
.cp-inquiry__text {
  padding-left: .5em;
  margin: 0; }
  .cp-inquiry__text--bold {
    font-weight: bold; }

/*******************
	tab02 cp-howtoApply 2ぺーじ目
*******************/
.cp-howtoApply__subtitle {
  margin: 2% 0;
  padding-left: .5em;
  font-size: 1.1rem;
  color: #fff;
  background: #e50012; }

.cp-howtoApply__text {
  padding-left: 1em;
  font-size: 1.1rem;
  font-weight: bold; }

.cp-qr {
  max-width: 500px;
  margin: 0 auto 1%;
  padding: 20px 20px;
  background: #eee; }
  .cp-qr__content {
    display: flex;
    margin: 0;
    align-items: center;
    font-size: 1rem; }
  .cp-qr__text {
    width: 75%;
    margin: 0;
    padding: 0 3% 0 0;
    line-height: 1.5; }
    .cp-qr__text a {
      font-weight: bold; }
    .cp-qr__text span {
      font-size: .89rem; }
    .cp-qr__text strong {
      color: #e50012; }

@media screen and (max-width: 767px) {
  .cp-howtoApply__subtitle {
    margin: 2% 0 5%;
    padding-left: .5em;
    font-size: 1.1rem;
    color: #fff;
    background: #e50012; }
  .cp-howtoApply__text {
    padding-left: 0;
    font-size: 1.1rem;
    font-weight: bold; }
  .cp-qr {
    max-width: 500px;
    margin: 0 auto 3%;
    padding: 20px 20px;
    background: #eee; }
    .cp-qr:first-of-type {
      margin: 0 auto 8%; }
    .cp-qr__content {
      display: block;
      margin: 0;
      align-items: center;
      font-size: 1rem; }
    .cp-qr__text {
      width: auto;
      margin: 0 0 5%;
      padding: 0;
      line-height: 1.5; }
      .cp-qr__text a {
        font-weight: bold; }
      .cp-qr__text span {
        font-size: .8rem; }
      .cp-qr__text strong {
        color: #e50012; } }

/*******************
	tab02 cp-benefit 2ぺーじ目
*******************/
.cp-benefit__subtitle {
  border: solid 2px #e50012;
  font-size: 1.1rem; }
  .cp-benefit__subtitle span {
    display: inline-block;
    margin: 0 0.5em 0 0;
    padding: 0 0.5em;
    font-size: 1.1rem;
    color: #fff;
    background: #e50012; }

.cp-benefit__text {
  margin: 0;
  padding-left: 1em;
  font-size: 1.1rem; }

.cp-benefit__step {
  font-size: 1.1rem;
  font-weight: bold; }
  .cp-benefit__step span {
    color: #f27f88;
    font-size: 1rem;
    font-weight: bold;
    font-family: sans-serif; }

.cp-benefit__step3 {
  padding-left: 1em;
  font-size: 1rem; }
  .cp-benefit__step3 span {
    color: #f27f88;
    font-size: 1rem;
    font-weight: bold;
    font-family: sans-serif; }
  .cp-benefit__step3 strong {
    color: #e50012; }

.cp-benefit__comment {
  margin: 0;
  padding-left: 1em;
  font-size: 1rem; }

.cp-benefit__list {
  list-style: none;
  padding-left: 1em; }
  .cp-benefit__list--red {
    color: #e50012; }
  .cp-benefit__list li span {
    color: #f27f88;
    font-size: 1rem;
    font-weight: bold;
    font-family: sans-serif; }

.cp-flyer__text {
  padding-left: 1.5em; }

.cp-flyer__imageWrap {
  display: flex;
  justify-content: space-between;
  max-width: 970px;
  margin: 0 auto; }

.cp-flyer__image {
  max-width: 100%;
  width: 31.34020618556701%;
  margin: 0; }
  .cp-flyer__image:first-child {
    max-width: 100%;
    width: 61.95876288659794%;
    margin-right: 5%; }
  .cp-flyer__image img {
    display: block;
    max-width: 100%;
    width: auto;
    height: auto;
    margin: 0 auto; }

@media screen and (max-width: 767px) {
  .cp-benefit__subtitle {
    border: solid 2px #e50012;
    font-size: 1.1rem;
    text-indent: 0;
    padding: 0;
    text-align: center; }
    .cp-benefit__subtitle span {
      display: block;
      margin: 0;
      padding: 0;
      font-size: 1.1rem;
      color: #fff;
      background: #e50012; }
  .cp-benefit__text {
    width: 90%;
    margin: 0 auto;
    padding-left: 0;
    font-size: 1.1rem; }
  .cp-benefit__step {
    font-size: 1.1rem;
    font-weight: bold; }
    .cp-benefit__step span {
      color: #f27f88;
      font-size: 1rem;
      font-weight: bold;
      font-family: sans-serif; }
  .cp-benefit__step3 {
    padding-left: 1em;
    font-size: 1rem; }
    .cp-benefit__step3 span {
      color: #f27f88;
      font-size: 1rem;
      font-weight: bold;
      font-family: sans-serif; }
    .cp-benefit__step3 strong {
      color: #e50012; }
  .cp-benefit__comment {
    width: 90%;
    margin: 0 auto;
    padding-left: 0;
    font-size: 1rem; }
  .cp-benefit__list {
    list-style: none;
    margin-bottom: 10%;
    padding-left: 1em; }
    .cp-benefit__list--red {
      color: #e50012; }
    .cp-benefit__list li span {
      color: #f27f88;
      font-size: 1rem;
      font-weight: bold;
      font-family: sans-serif; }
  .cp-flyer__text {
    padding-left: 0; }
  .cp-flyer__imageWrap {
    display: block;
    max-width: 970px;
    width: 100%;
    margin: 0 auto; }
  .cp-flyer__image {
    max-width: 100%;
    width: auto;
    margin: 0; }
    .cp-flyer__image:first-child {
      width: auto;
      margin-right: 0;
      margin-bottom: 5%; }
    .cp-flyer__image img {
      display: block;
      max-width: 100%;
      width: auto;
      height: auto;
      margin: 0 auto; } }

/*******************
	tab02 cp-document 2ぺーじ目
*******************/
.cp-document dt {
  font-weight: bold; }
  .cp-document dt .copy {
    color: #c93434; }
  .cp-document dt .barcode {
    padding: 0.1em 0.2em;
    background: #c93434;
    color: #fff; }

.cp-document dd {
  margin: 0; }

@media screen and (max-width: 767px) {
  .cp-document {
    width: 90%;
    margin: 0 auto 10%; }
    .cp-document dt {
      font-weight: bold; }
      .cp-document dt .copy {
        color: #c93434; }
      .cp-document dt .barcode {
        padding: 0.1em 0.2em;
        background: #c93434;
        color: #fff; }
    .cp-document dd {
      margin: 0; } }

/*******************
	tab02 cp-barcode 2ぺーじ目
*******************/
.cp-barcode {
  max-width: 840px;
  margin: 0 auto; }
  .cp-barcode__title {
    margin: 0;
    font-size: 1rem;
    font-weight: bold; }
  .cp-barcode__wrap {
    display: flex;
    justify-content: space-between; }
  .cp-barcode__box {
    margin-right: 5%; }
    .cp-barcode__box:last-child {
      margin-right: 0; }
  .cp-barcode__image {
    margin: 0 0 1%; }
    .cp-barcode__image img {
      display: block;
      max-width: 100%;
      width: auto;
      height: auto;
      margin: 0 auto; }
  .cp-barcode__text {
    margin: 0;
    font-size: .75rem;
    text-indent: -1em;
    padding-left: 1em;
    line-height: 1.5; }

@media screen and (max-width: 767px) {
  .cp-barcode {
    max-width: 840px;
    margin: 0 auto; }
    .cp-barcode__title {
      margin: 0;
      font-size: 1rem;
      font-weight: bold; }
    .cp-barcode__wrap {
      display: block;
      justify-content: space-between; }
    .cp-barcode__box {
      margin: 0 auto 10%; }
    .cp-barcode__image {
      margin: 0 0 3%; }
      .cp-barcode__image img {
        display: block;
        max-width: 100%;
        width: auto;
        height: auto;
        margin: 0 auto; }
    .cp-barcode__text {
      margin: 0;
      font-size: .9rem;
      text-indent: -1em;
      padding-left: 1em;
      line-height: 1.5; } }

/*******************
	tab02 cp-barcode 2ぺーじ目
*******************/
.cp-document__btn {
  text-align: center;
  max-width: 620px;
  margin: 0 auto; }
  .cp-document__btn .s5-button {
    display: block;
    padding: 1% 2%;
    font-weight: bold;
    font-size: calc(1.3rem + ((1vw - 3.2px) * 0.625));
    cursor: pointer; }
    .cp-document__btn .s5-button:hover {
      opacity: .6;
      transition: all 0.3s; }
    .cp-document__btn .s5-button:focus {
      background: #5787f4; }

@media (min-width: 1920px) {
  .cp-document__btn .s5-button {
    font-size: 28px; } }

@media screen and (max-width: 767px) {
  .cp-document__btn {
    text-align: left;
    max-width: 620px;
    width: 86%;
    margin: 0 auto;
    line-height: 1.3; }
    .cp-document__btn .s5-button {
      display: block;
      padding: 3% 0.6em;
      font-weight: bold;
      cursor: pointer; }
      .cp-document__btn .s5-button:hover {
        opacity: .6;
        transition: all 0.3s; }
      .cp-document__btn .s5-button:focus {
        background: #000; }
      .cp-document__btn .s5-button:before {
        margin: 0 0.4em 0.05em 0; } }

@media screen and (max-width: 375px) {
  .cp-document__btn {
    text-align: left;
    max-width: 620px;
    width: 95%;
    margin: 0 auto;
    line-height: 1.3; }
    .cp-document__btn .s5-button {
      display: block;
      padding: 3% 0.6em;
      font-size: 1.12rem;
      font-weight: bold;
      cursor: pointer; }
      .cp-document__btn .s5-button:hover {
        opacity: .6;
        transition: all 0.3s; }
      .cp-document__btn .s5-button:focus {
        background: #000; }
      .cp-document__btn .s5-button:before {
        margin: 0 0.4em 0.05em 0; } }

/*******************
	tab02 cp-caution 2ぺーじ目
*******************/
.cp-caution {
  list-style: none;
  margin: 0 0 .8%;
  padding-left: 2em;
  text-indent: -1em; }

@media screen and (max-width: 767px) {
  .cp-caution {
    list-style: none;
    margin: 0 0 10%;
    padding-left: 2em;
    text-indent: -1em; } }

/*******************
	tab02 cp-caution 2ぺーじ目
*******************/
.cp-info__text {
  padding-left: 1em; }

.cp-info__list dt {
  margin-bottom: 1.5%;
  padding-left: 0;
  font-size: 1.1rem;
  font-weight: bold; }

.cp-info__list dd {
  margin-left: .8em;
  padding-left: 0; }

.cp-info__steplist {
  margin-bottom: 0; }
  .cp-info__steplist dd {
    margin: 0; }

.cp-info__bold {
  margin: 0;
  font-weight: bold; }

@media screen and (max-width: 767px) {
  .cp-info__text {
    padding-left: 1em; }
  .cp-info__list:last-child {
    margin-bottom: 10%; }
  .cp-info__list dt {
    margin-bottom: 5%;
    padding-left: 0;
    font-size: 1.1rem;
    font-weight: bold; }
  .cp-info__list dd {
    margin-left: 2.2em;
    padding-left: 0; }
  .cp-info__steplist {
    margin-bottom: 0; }
    .cp-info__steplist dd {
      margin: 0; }
  .cp-info__bold {
    margin: 0;
    font-weight: bold; } }

.cp-paper {
  margin-bottom: 5%; }
  .cp-paper__sample {
    display: flex;
    justify-content: space-between;
    list-style: none;
    padding: 0; }
    .cp-paper__sample li {
      padding: 0 1.5%;
      border-right: solid 1px #009ee8; }
      .cp-paper__sample li:last-child {
        border-right: none; }
  .cp-paper__note {
    list-style: none;
    padding: 0; }

@media screen and (max-width: 767px) {
  .cp-paper {
    margin-bottom: 5%; }
    .cp-paper__sample {
      display: block;
      justify-content: space-between;
      list-style: none;
      margin: 0 0 10%;
      padding: 0; }
      .cp-paper__sample li {
        padding: 5% 0;
        border-right: none;
        border-bottom: solid 1px #009ee8; }
        .cp-paper__sample li:last-child {
          border-right: none;
          border-bottom: none; }
    .cp-paper__note {
      list-style: none;
      padding: 0 0 0 1em;
      text-indent: -1em; } }

/*******************
	tab03 cp-caution 3ぺーじ目
*******************/
.cp-qaNavigation {
  list-style: none;
  padding: 0; }
  .cp-qaNavigation li {
    position: relative;
    width: 100%;
    padding: 1em 0 0 1em;
    border-bottom: dotted 1px #f27f88;
    font-weight: bold; }
    .cp-qaNavigation li a {
      display: block;
      color: #c93434; }
      .cp-qaNavigation li a:hover {
        color: #c93434; }

.cp-faq {
  margin-bottom: 1%;
  border-bottom: dotted 1px #f27f88; }
  .cp-faq__targetComment {
    margin: 0;
    text-align: right; }
  .cp-faq__target {
    width: 100%;
    margin: 0 auto; }
  .cp-faq__inner {
    display: flex;
    justify-content: flex-start;
    margin-bottom: 1%; }
    .cp-faq__inner:last-child {
      margin-bottom: 2%; }
  .cp-faq .cp-target {
    position: relative;
    margin: 0 0 5%;
    padding: 0;
    border: solid 2px #e50012; }
    .cp-faq .cp-target--last {
      margin: 0 0 4%; }
    .cp-faq .cp-target__title {
      position: absolute;
      top: 0;
      display: inline-block;
      min-height: 38px;
      margin: 0;
      padding: .6% 2%;
      background: #e50012;
      color: #fff;
      font-size: 1.25rem; }
      .cp-faq .cp-target__title:after {
        position: absolute;
        left: 100%;
        top: 0;
        content: "";
        background: url(../images/arrow.png) no-repeat left top;
        background-size: contain;
        width: 19%;
        height: 100%; }
    .cp-faq .cp-target__box {
      display: flex;
      justify-content: space-between;
      align-items: end;
      max-width: 1132px;
      margin: 0 3%;
      padding: 2.5% 0;
      border-bottom: solid 1px #e50012; }
      .cp-faq .cp-target__box:last-of-type {
        border-bottom: none; }
      .cp-faq .cp-target__box--ipod {
        display: block;
        padding: 6.8% 0 2%; }
    .cp-faq .cp-target__boxInner {
      display: flex;
      justify-content: space-between;
      align-items: baseline;
      width: 48%; }
      .cp-faq .cp-target__boxInner--ipod {
        overflow: hidden;
        display: block;
        width: auto; }
    .cp-faq .cp-target__btnWrap {
      display: flex;
      justify-content: space-between;
      align-items: baseline; }
    .cp-faq .cp-target__text {
      margin: 0;
      font-size: calc(1.125rem + ((1vw - 3.2px) * 0.375));
      font-weight: bold;
      line-height: 1.3; }
      .cp-faq .cp-target__text:first-letter {
        color: #f27f88; }
      .cp-faq .cp-target__text--ipod {
        text-indent: -1em;
        padding-left: 1em; }
    .cp-faq .cp-target__link {
      display: inline-block; }
    .cp-faq .cp-target__comment {
      list-style: none;
      width: auto;
      margin: 0 0 .8%;
      padding-left: 2em; }
    .cp-faq .cp-target__imageBox {
      width: 50%; }
      .cp-faq .cp-target__imageBox--product {
        width: 40%;
        padding: 8% 0 0; }
      .cp-faq .cp-target__imageBox--product2 {
        width: 60%;
        padding: 3% 0 0; }
      .cp-faq .cp-target__imageBox--product3 {
        width: 100%;
        padding: 3% 0 0; }
      .cp-faq .cp-target__imageBox--product4 {
        width: 50%;
        padding: 3% 2% 0; }
      .cp-faq .cp-target__imageBox--product5 {
        width: 45%;
        padding: 3% 2% 0; }
    .cp-faq .cp-target__image {
      width: auto;
      margin: 0 0 2%; }
      .cp-faq .cp-target__image img {
        display: block;
        max-width: 100%;
        width: auto;
        height: auto;
        margin: 0 auto; }
    .cp-faq .cp-target__name {
      margin: 0 0 5%;
      font-size: 2rem;
      font-weight: bold;
      text-align: center;
      line-height: .9;
      white-space: nowrap; }
      .cp-faq .cp-target__name--S {
        font-size: 1.8rem; }
      .cp-faq .cp-target__name--S2 {
        font-size: 1.8rem;
        line-height: 1.1; }
      .cp-faq .cp-target__name span {
        font-size: .9rem;
        line-height: 1; }
    .cp-faq .cp-target__btn {
      width: 160px;
      margin: 0 auto;
      text-align: center; }
      .cp-faq .cp-target__btn--1line {
        margin-top: 12%; }
      .cp-faq .cp-target__btn .s5-button {
        display: block;
        padding: 5% 2%;
        font-size: 1rem;
        background: #000;
        cursor: pointer; }
        .cp-faq .cp-target__btn .s5-button:hover {
          background: #000;
          opacity: .6;
          transition: all 0.3s; }
        .cp-faq .cp-target__btn .s5-button:focus {
          background: #000; }
  .cp-faq__icon {
    margin: 0 1% 0 0; }
    .cp-faq__icon .icon {
      display: block;
      width: 35px; }
    .cp-faq__icon img {
      display: block;
      max-width: 100%;
      width: auto;
      height: auto;
      margin: 0 auto;
      margin: 0; }
  .cp-faq__text {
    margin: 0; }
    .cp-faq__text--bold {
      font-weight: bold; }
    .cp-faq__text a {
      text-decoration: underline; }

@media screen and (min-width: 768px) and (max-width: 1200px) {
  .cp-faq {
    margin-bottom: 5%;
    border-bottom: dotted 2px #f27f88; }
    .cp-faq .cp-target {
      position: relative;
      margin: 0 0 5%;
      padding: 0;
      border: solid 2px #e50012; }
      .cp-faq .cp-target__text {
        margin: 0;
        font-size: calc(1.125rem + ((1vw - 3.2px) * 0.375));
        font-weight: bold;
        line-height: 1.3; }
      .cp-faq .cp-target__name {
        margin: 0 0 5%;
        font-size: calc(1rem + ((1vw - 7.68px) * 3.7037));
        font-weight: bold;
        text-align: center;
        line-height: .9;
        white-space: nowrap; }
        .cp-faq .cp-target__name--S {
          font-size: calc(1rem + ((1vw - 7.68px) * 3.0093)); }
        .cp-faq .cp-target__name--S2 {
          font-size: calc(.9rem + ((1vw - 7.68px) * 3.7037));
          line-height: 1.1; }
        .cp-faq .cp-target__name span {
          font-size: .9rem;
          line-height: 1; }
      .cp-faq .cp-target__btn {
        width: 120px;
        margin: 0 auto;
        text-align: center; }
        .cp-faq .cp-target__btn--1line {
          margin-top: 12%; }
        .cp-faq .cp-target__btn .s5-button {
          display: block;
          padding: 5% 2%;
          font-size: .8rem;
          background: #000;
          cursor: pointer; }
          .cp-faq .cp-target__btn .s5-button--s {
            font-size: .8rem; } }

@media screen and (max-width: 900px) {
  .cp-faq .cp-target__box--ipod {
    display: block;
    padding: 8% 0 2%; } }

@media screen and (max-width: 767px) {
  .cp-qaNavigation {
    list-style: none;
    padding: 0; }
    .cp-qaNavigation li {
      position: relative;
      width: 100%;
      padding: 1em 0 0 1em;
      border-bottom: dotted 1px #f27f88;
      font-weight: bold; }
      .cp-qaNavigation li a {
        display: block;
        color: #c93434; }
        .cp-qaNavigation li a:hover {
          color: #c93434; }
  .cp-faq {
    margin-bottom: 5%;
    border-bottom: dotted 2px #f27f88; }
    .cp-faq__targetComment {
      margin: 0;
      text-align: center; }
    .cp-faq__inner {
      display: flex;
      justify-content: flex-start;
      margin-bottom: 3%; }
      .cp-faq__inner:last-child {
        margin-bottom: 5%; }
    .cp-faq .cp-target {
      position: relative;
      margin: 0 0 5%;
      padding: 0;
      border: solid 2px #e50012; }
      .cp-faq .cp-target--last {
        margin: 0 0 4%; }
      .cp-faq .cp-target__title {
        position: absolute;
        top: 0;
        display: inline-block;
        min-height: 38px;
        margin: 0;
        padding: .6% 2%;
        background: #e50012;
        color: #fff;
        font-size: 1.25rem; }
        .cp-faq .cp-target__title:after {
          position: absolute;
          left: 100%;
          top: 0;
          content: "";
          background: url(../images/arrow.png) no-repeat left top;
          background-size: contain;
          width: 19%;
          height: 100%; }
      .cp-faq .cp-target__box {
        display: flex;
        justify-content: space-between;
        align-items: end;
        max-width: 1132px;
        margin: 0 3%;
        padding: 2.5% 0;
        background: url(../images/border_target.png) repeat-x center bottom; }
        .cp-faq .cp-target__box:last-of-type {
          background: none; }
        .cp-faq .cp-target__box--ipod {
          display: block;
          padding: 6.8% 0 2%; }
      .cp-faq .cp-target__boxInner {
        display: flex;
        justify-content: space-between;
        align-items: baseline;
        width: 48%; }
        .cp-faq .cp-target__boxInner--ipod {
          overflow: hidden;
          display: block;
          width: auto; }
      .cp-faq .cp-target__btnWrap {
        display: flex;
        justify-content: space-between;
        align-items: baseline; }
      .cp-faq .cp-target__text {
        margin: 0;
        font-size: calc(1.125rem + ((1vw - 3.2px) * 0.375));
        font-weight: bold;
        line-height: 1.3; }
        .cp-faq .cp-target__text:first-letter {
          color: #f27f88; }
        .cp-faq .cp-target__text--ipod {
          text-indent: -1em;
          padding-left: 1em; }
      .cp-faq .cp-target__comment {
        list-style: none;
        width: auto;
        margin: 0 0 .8%;
        padding-left: 2em; }
      .cp-faq .cp-target__imageBox {
        width: 50%; }
        .cp-faq .cp-target__imageBox--product {
          width: 40%;
          padding: 8% 0 0; }
        .cp-faq .cp-target__imageBox--product2 {
          width: 60%;
          padding: 3% 0 0; }
        .cp-faq .cp-target__imageBox--product3 {
          width: 100%;
          padding: 3% 0 0; }
        .cp-faq .cp-target__imageBox--product4 {
          width: 50%;
          padding: 3% 2% 0; }
        .cp-faq .cp-target__imageBox--product5 {
          width: 45%;
          padding: 3% 2% 0; }
      .cp-faq .cp-target__image {
        width: auto;
        margin: 0 0 2%; }
        .cp-faq .cp-target__image img {
          display: block;
          max-width: 100%;
          width: auto;
          height: auto;
          margin: 0 auto; }
      .cp-faq .cp-target__name {
        margin: 0 0 5%;
        font-size: calc(1rem + ((1vw - 7.68px) * 3.7037));
        font-weight: bold;
        text-align: center;
        line-height: .9;
        white-space: nowrap; }
        .cp-faq .cp-target__name--S {
          font-size: calc(1rem + ((1vw - 7.68px) * 3.0093));
          word-break: break-all;
          white-space: initial;
          line-height: 1.5; }
        .cp-faq .cp-target__name--S2 {
          font-size: calc(.9rem + ((1vw - 7.68px) * 3.7037));
          line-height: 1.1; }
        .cp-faq .cp-target__name span {
          font-size: .9rem;
          line-height: 1; }
      .cp-faq .cp-target__btn {
        width: 160px;
        margin: 0 auto;
        text-align: center; }
        .cp-faq .cp-target__btn--1line {
          margin-top: 0; }
        .cp-faq .cp-target__btn .s5-button {
          display: block;
          padding: 5% 2%;
          font-size: 1rem;
          background: #000;
          cursor: pointer; }
          .cp-faq .cp-target__btn .s5-button:hover {
            background: #000;
            opacity: .6;
            transition: all 0.3s; }
          .cp-faq .cp-target__btn .s5-button:focus {
            background: #000; } }
  @media screen and (max-width: 767px) and (min-width: 1920px) {
    .cp-faq .cp-target__name {
      font-size: 32px; }
      .cp-faq .cp-target__name--S {
        font-size: 29px; }
      .cp-faq .cp-target__name span {
        font-size: 18px; }
    .cp-faq .cp-target__text {
      margin: 0;
      font-size: 1.5rem;
      font-weight: bold;
      line-height: 1.3; }
      .cp-faq .cp-target__text:first-letter {
        color: #f27f88; }
      .cp-faq .cp-target__text--ipod {
        text-indent: -1em;
        padding-left: 1em; } }
  @media screen and (max-width: 767px) and (min-width: 768px) and (max-width: 1200px) {
    .cp-faq .cp-target {
      position: relative;
      margin: 0 0 5%;
      padding: 0;
      border: solid 2px #e50012; }
      .cp-faq .cp-target__box {
        display: flex;
        justify-content: space-between;
        align-items: end;
        max-width: 1132px;
        margin: 0 3%;
        padding: 2.5% 0 3%;
        background: url(../images/border_target.png) no-repeat center bottom;
        background-size: 98% 1px; }
        .cp-faq .cp-target__box:last-of-type {
          border-bottom: none; }
        .cp-faq .cp-target__box--ipod {
          display: block;
          padding: 6.8% 0 2%; }
      .cp-faq .cp-target__boxInner {
        display: flex;
        justify-content: space-between;
        align-items: baseline;
        width: 48%; }
        .cp-faq .cp-target__boxInner--ipod {
          overflow: hidden;
          display: block;
          width: auto; }
      .cp-faq .cp-target__btnWrap {
        display: flex;
        justify-content: space-between;
        align-items: baseline; }
      .cp-faq .cp-target__text {
        margin: 0;
        font-size: 1.5rem;
        font-weight: bold;
        line-height: 1.3; }
        .cp-faq .cp-target__text:first-letter {
          color: #f27f88; }
        .cp-faq .cp-target__text--ipod {
          text-indent: -1em;
          padding-left: 1em; }
      .cp-faq .cp-target__comment {
        list-style: none;
        width: auto;
        margin: 0 0 .8%;
        padding-left: 2em; }
      .cp-faq .cp-target__imageBox {
        width: 50%; }
        .cp-faq .cp-target__imageBox--product {
          width: 40%;
          padding: 8% 0 0; }
        .cp-faq .cp-target__imageBox--product2 {
          width: 60%;
          padding: 3% 0 0; }
        .cp-faq .cp-target__imageBox--product3 {
          width: 100%;
          padding: 3% 0 0; }
        .cp-faq .cp-target__imageBox--product4 {
          width: 50%;
          padding: 3% 2% 0; }
        .cp-faq .cp-target__imageBox--product5 {
          width: 45%;
          padding: 3% 2% 0; }
      .cp-faq .cp-target__image {
        width: auto;
        margin: 0 0 2%; }
        .cp-faq .cp-target__image img {
          display: block;
          max-width: 100%;
          width: auto;
          height: auto;
          margin: 0 auto; }
      .cp-faq .cp-target__name {
        margin: 0 0 5%;
        font-size: calc(1rem + ((1vw - 7.68px) * 3.7037));
        font-weight: bold;
        text-align: center;
        line-height: .8;
        white-space: nowrap; }
        .cp-faq .cp-target__name--S {
          font-size: calc(1rem + ((1vw - 7.68px) * 3.0093)); }
        .cp-faq .cp-target__name span {
          font-size: calc(0.75rem + ((1vw - 7.68px) * 1.3889)); } }
  @media screen and (max-width: 767px) and (max-width: 767px) {
    .cp-faq .cp-target {
      position: relative;
      margin: 0 0 5%;
      padding: 0;
      border: solid 2px #e50012; }
      .cp-faq .cp-target--last {
        margin: 0 0 4%; }
      .cp-faq .cp-target__title {
        position: absolute;
        top: 0;
        display: inline-block;
        min-height: 38px;
        margin: 0;
        padding: .6% 5%;
        background: #e50012;
        color: #fff;
        font-size: 1.25rem; }
        .cp-faq .cp-target__title:after {
          position: absolute;
          left: 100%;
          top: 0;
          content: "";
          background: url(../images/arrow.png) no-repeat left top;
          background-size: contain;
          width: 19%;
          height: 100%; }
        .cp-faq .cp-target__title--2line {
          padding: 2% 5%;
          font-size: 1rem;
          line-height: 1.3; }
          .cp-faq .cp-target__title--2line:after {
            position: absolute;
            left: 100%;
            top: 0;
            content: "";
            background: url(../images/arrow.png) no-repeat left top;
            background-size: contain;
            width: 19%;
            height: 100%; }
      .cp-faq .cp-target__box {
        display: block;
        justify-content: space-between;
        align-items: end;
        max-width: 1132px;
        margin: 0 0 3%;
        padding: 0 0 3%;
        background: url(../images/border_target.png) no-repeat center bottom;
        background-size: 90% 1px; }
        .cp-faq .cp-target__box:first-of-type {
          padding: 20% 0 3%; }
        .cp-faq .cp-target__box--ipod {
          padding: 6.8% 0 2%; }
      .cp-faq .cp-target__boxInner {
        overflow: auto;
        display: block;
        width: auto; }
        .cp-faq .cp-target__boxInner--ipod {
          overflow: auto;
          display: block;
          width: 92.8%;
          margin: 0 auto; }
      .cp-faq .cp-target__btnWrap {
        display: block;
        margin: 0 auto 10%;
        align-items: baseline; }
      .cp-faq .cp-target__text {
        margin: 0 0 3%;
        font-size: 1.3rem;
        font-weight: bold;
        line-height: 1.3;
        text-indent: -1.3em;
        padding-left: 1.3em; }
        .cp-faq .cp-target__text:first-letter {
          color: #f27f88; }
        .cp-faq .cp-target__text--ipod {
          margin: 0 auto 1%; }
      .cp-faq .cp-target__comment {
        list-style: none;
        margin: 0 0 3%;
        padding-left: 1.5em; }
      .cp-faq .cp-target__imageBox {
        width: 90%;
        margin: 0 auto 7%; }
        .cp-faq .cp-target__imageBox--product {
          padding: 0; }
      .cp-faq .cp-target__image {
        width: auto;
        margin: 0 0 3%; }
        .cp-faq .cp-target__image--present {
          padding: 3% 0 7%; }
        .cp-faq .cp-target__image img {
          display: block;
          max-width: 100%;
          width: auto;
          height: auto;
          margin: 0 auto; }
      .cp-faq .cp-target__name {
        margin: 0 0 5%;
        font-size: 1.3rem;
        font-weight: bold;
        text-align: center;
        line-height: .8;
        white-space: nowrap; }
        .cp-faq .cp-target__name--S {
          font-size: 1.3rem;
          word-break: break-all;
          white-space: initial;
          line-height: 1.5; }
        .cp-faq .cp-target__name span {
          font-size: .9rem; }
      .cp-faq .cp-target__btn {
        clear: both;
        float: none;
        width: 160px;
        margin: 0 auto;
        text-align: center; }
        .cp-faq .cp-target__btn .s5-button {
          display: block;
          padding: 5% 2%;
          font-size: 1rem;
          background: #000;
          cursor: pointer; }
          .cp-faq .cp-target__btn .s5-button:hover {
            background: #000;
            opacity: .6;
            transition: all 0.3s; }
          .cp-faq .cp-target__btn .s5-button:focus {
            background: #000; } }
  @media screen and (max-width: 767px) and (max-width: 375px) {
    .cp-faq .cp-target__title {
      min-height: 21px; }
      .cp-faq .cp-target__title--2line {
        padding: 0% 5% 1%;
        font-size: 1rem;
        line-height: 1.3; }
        .cp-faq .cp-target__title--2line:after {
          position: absolute;
          left: 98.8%;
          top: 0;
          content: "";
          background: url(../images/arrow.png) no-repeat left top;
          background-size: contain;
          width: 19%;
          height: 100%; } }

@media screen and (max-width: 767px) {
    .cp-faq__icon {
      margin: 0 2% 2% 0; }
      .cp-faq__icon .icon {
        display: block;
        width: 35px; }
      .cp-faq__icon img {
        display: block;
        max-width: 100%;
        width: auto;
        height: auto;
        margin: 0 auto;
        margin: 0; }
    .cp-faq__text {
      margin: 0; }
      .cp-faq__text--bold {
        font-weight: bold; } }

/*******************
	modal モーダルウィンドウ
*******************/
.modal {
  display: none; }
  .modal__close {
    margin: 0;
    height: 60px;
    background: #adaeaf; }
  .modal__block {
    max-width: 935px;
    width: 100%;
    margin: 0 auto;
    padding: 0 0 5%;
    background: #fff; }
  .modal__inner {
    width: 92%;
    margin: 3% auto;
    background: #fff;
    border: solid 2px #e50012; }
    .modal__inner.last {
      margin: 3% auto 0; }
  .modal__title {
    margin: 0;
    background: #e50012;
    color: #fff;
    font-size: 1.4rem;
    text-align: center; }
  .modal__product {
    display: flex;
    justify-content: space-between;
    align-items: center;
    border-bottom: solid 1px #e50012; }
    .modal__product:last-child {
      border-bottom: none; }
  .modal__name {
    font-size: 1.05rem;
    font-weight: 600;
    padding-left: 3%;
    white-space: nowrap; }
  .modal__images {
    width: 73%;
    margin: 0; }
    .modal__images img {
      display: block;
      max-width: 100%;
      width: auto;
      height: auto;
      margin: 0 auto; }
  .modal__faq {
    display: inline-block; }

@media screen and (max-width: 767px) {
  .modal {
    display: none; }
    .modal__close {
      margin: 0;
      height: 60px;
      background: #adaeaf; }
    .modal__block {
      max-width: 935px;
      width: 100%;
      margin: 0 auto;
      padding: 0 0 5%;
      background: #fff; }
    .modal__inner {
      width: 92%;
      margin: 3% auto;
      background: #fff;
      border: solid 2px #e50012; }
    .modal__title {
      margin: 0;
      background: #e50012;
      color: #fff;
      font-size: 1.4rem;
      text-align: center; }
    .modal__product {
      display: block;
      padding: 1% 0;
      border-bottom: solid 1px #e50012; }
      .modal__product:last-child {
        border-bottom: none; }
    .modal__name {
      font-size: 1.05rem;
      font-weight: 600;
      margin: 2% 0 0;
      padding-left: 0;
      white-space: nowrap;
      text-align: center; }
    .modal__images {
      width: 90%;
      margin: 0 auto; }
      .modal__images img {
        display: block;
        max-width: 100%;
        width: auto;
        height: auto;
        margin: 0 auto; }
    .modal__faq {
      display: inline-block; } }

/*** utility  ***/
.cp-mbs {
  margin-bottom: 1%; }

.cp-mbM {
  margin-bottom: 3%; }

.cp-mbL {
  margin-bottom: 5%; }

.cp-mbLL {
  margin-bottom: 8%; }

.moraLink {
  text-decoration: underline; }

.pc {
  display: block; }

.sp {
  display: none; }

.br {
  display: none; }

.br2 {
  display: block; }

@media (max-width: 767px) {
  .pc {
    display: none; }
  .sp {
    display: block; }
  .br {
    display: block; }
  .br2 {
    display: none; } }

.cf:before, .cf:after {
  content: "";
  display: table; }

.cf:after {
  clear: both; }

a:hover .fadeImg {
  opacity: 0.7;
  transition: opacity 0.5s; }
