img.right-icon {
  width: 12px;
  height: 12px;
  display: inline-block;
}
.caption-p {
  --caption-list-item-padding-left: 12px;
  font-family: noto-sans-cjk-jp, sans-serif;
  font-size: 10px;
  line-height: normal;
  color: #797979;
}
.animated {
  -webkit-animation-duration: 0.2s;
  animation-duration: 0.2s;
  -webkit-animation-fill-mode: both;
  animation-fill-mode: ease-in;
  animation-timing-function: cubic-bezier(0.2, 1, 0.48, 1);
}

.noinput {
  background-color: #ffdee0;
}
.bluecolor {
  color: #01b5d0;
  font-weight: bold;
}

.redcolor {
  color: #ff0024;
  font-weight: bold;
}

::placeholder {
  color: #c9c9c9;
}
/* 旧Edge対応 */
::-ms-input-placeholder {
  color: #c9c9c9;
}
/* IE対応 */
:-ms-input-placeholder {
  color: #c9c9c9;
}
.inputerror {
  margin-left: 12px;
  font-size: 10px;
  margin-top: 2px;
}

.bluecolor::after {
  content: "";
  /* position: absolute; */
  display: block;
  box-sizing: border-box;
  width: 9px;
  height: 6px;
  margin-top: -13px;
  top: 50%;
  left: 3px;
  transform: rotate(-45deg);
  border-bottom: 2px solid;
  border-left: 2px solid;
  border-color: #18b5d1;
  margin-left: 39px;
}

#errorbox {
  background: #f0f0f0;
  font-size: 11px;
  color: #ff002a;
}
.errorp {
  padding-left: 24px;
  padding-right: 24px;
}
.errorp:first-child {
  padding-top: 24px;
}
.errorp:last-child {
  padding-bottom: 24px;
}

/* apply campaign */
p.text-topic {
  text-align: center;
  font-size: 1.25em;
  color: #01b5d0;
  font-weight: bold;
  margin: 30px 0 0 0;
}

p.text-topic:before,
p.text-topic:after {
  position: relative;
  display: inline-block;
  content: "";
  background: #01b5d0;
  width: 2px;
  height: 22px;
  margin: 0px 1em;
  margin-top: -0.2em;
  vertical-align: middle;
}

p.text-topic:before {
  transform: rotate(-30deg);
}

p.text-topic:after {
  transform: rotate(30deg);
}

ul.cam-disc-ul {
  margin-top: -10px;
  padding: 24px;
}

.cam-disc-ul li {
  list-style: none;
  font-size: 14px;
  background: #fff;
  padding: 12px 5px 12px 20px;
  font-weight: bold;
  text-align: left;
}

.campaign-ttl {
  text-align: center;
}

.cashback {
  transform: skewX(-15deg);
  color: #333333;
  display: inline-block;
  font-size: 1.75em;
  font-weight: bold;
  padding: 0 2px 3px;
  line-height: 40px;
  background-image: linear-gradient(90deg, #ebff00, #ebff00);
  background-repeat: no-repeat;
  background-position: 0 60px;
  background-size: 100% 10px;
}

.cashback span {
  font-size: 2em;
}

.cashback small {
  font-size: 0.5em;
}

p.cam-disc-fm {
    background-image: linear-gradient(90deg, #ebff00, #ebff00);
    background-repeat: no-repeat;
    background-position: 0 36px;
    background-size: 100% 10px;
}
@media screen and (max-width: 768px) {
  .cashback {
    font-size: 1.5em;
    background-position: 0 51px;

  }
p.cam-disc-fm {
    background-image: none;
    background-repeat: no-repeat;
    background-position: 0 36px;
    background-size: 100% 10px;
    background: #fff0f3;
    padding: 10px;
}

  .cashback {
  transform: skewX(0deg);
  color: #333333;
  display: inline-block;
  font-size: 1.75em;
  font-weight: bold;
  padding: 0 2px 3px;
  line-height: 40px;
  background-image: none;
  background-repeat: no-repeat;
  background-position: 0 60px;
  background-size: 100% 10px;
}



}

/* option改修 */
.select-option-box {
  margin: 32px 24px -14px;
}


.select-option-box details {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: space-between;
  height: 100%;


 
  background-color: #fff;
  border: 1px solid #f1f0ec;
  border-radius: 6px;
  outline: none;
margin: 0 0px 10px 0px;
}

.select-option-box label.a-radio.js-change-link{

  margin-bottom:30px;
}


li.innline-apps-disc {
  display: inline-flex;
  /* align-items: center; */
font-size: 13px;
  color: inherit;
  width: 100%;
  justify-content: space-between;
margin-bottom: 30px;
  font-weight: bold;
}

li.innline-apps-disc {
  display: flex;
  flex-direction: column;
}


/* .select-option-box details input[type=checkbox] {
  display: inline-block;
}

.select-option-box details label {
  position: relative;

  align-items: center;
 
  height: 100%;
  min-height: 56px;

  cursor: pointer;
  background-color: #fff;
  border: 1px solid #f1f0ec;
  border-radius: 6px;
  outline: none;

}

.select-option-box details label {
  position: relative;
  align-items: center;
  height: 3.6em;
  cursor: pointer;
  background-color: #fff;
  border: 1px solid #f1f0ec;
  border-radius: 6px;
  outline: none;
  padding: 1em;
  background: #e4e4e4;
  margin-bottom: 1em;
}

.select-option-box details summary {
  font-size: 15px;
  font-weight: bold;
}

input[type="checkbox" i] {
  background-color: initial;
  cursor: default;
  appearance: auto;
  box-sizing: border-box;
  margin: 3px 3px 3px 4px;
  padding: initial;
  border: initial;
} */


/* color */
::marker {
  color: #3bd8a0;
}


summary{
      padding: 0.8rem 1.5rem;
        outline: 0;
        cursor: pointer;
        display: block;
          color: #1c1c1c;
        font-weight: 700;
        font-size: 14px;
        list-style: none;

      }

  summary:hover {
    background: #eee;

     
        
  }


p.options-p {
  margin: 0px 24px 0px 24px;

  padding-top:12px;
  padding-bottom:12px;
}

li.innline-apps-disc span{

  text-align:left;
  font-size:12px;
  font-weight:500;
}
.scroll-box {
  height: 130px;
  overflow-y: scroll;
  border: solid 1px #e1e1e1;
  padding: 1.2em;
  margin: 1.2em 0;
  border-radius: 6px;
  margin-bottom: 40px;
}
input#agree[type=checkbox] {
  display: block;
  



}







.select-option-box li details {
  box-shadow: 3px 2px 1px #eeeeee;
}

.agreebox {
  padding: 0.5em 1em;
  background: #defd;
  margin-bottom: 1em;
  margin-top: 1em;
}


.agreebtn {
  display: flex;
  font-size: 15px;
  width: 120px;
  margin: 0 auto;
  font-weight: 600;
}
.agreebox>p {
  margin: 1em auto 0;
}


summary::marker {
  color: #3bd8a0;
}
.option-pricebox {
  margin: 0px 24px 24px 24px;
  padding-top: 4px;
  padding-bottom: 4px;
  border: solid 1px;
  width: 180px;
  text-align: center;
}
@media screen and (max-width: 768px) {

  input#agree[type=checkbox] {
    display: block;
    margin: 0 auto;
  }
    .agreebtn {
      display: block;
      font-size: 15px;
      width: 120px;
      margin: 0 auto;
      font-weight: 600;
      text-align: center;
    }
    
}