/*限定的に使用中のCSS*/
/*-------------------------------------------
    Column
-------------------------------------------*/

/*詳細ページ*/
.column-title {
  padding-top: 10px;
  width: 100%;
  margin: 50px auto 30px;
}
.column-title p {
  font-size: 3.8rem;
  font-weight: bold;
  text-align: center;
}
.content-box-inner .column-title-paragraph{
  font-size: 1.8rem;
  padding-bottom: 25px;
  text-decoration: underline;
}
#cv .inner p {
  position: relative;
  text-align: center;
  font-weight: bold;
}
#cv dl dt p {
  font-size: 2rem;
  font-weight: 500;
  margin: 0 0 15px;
  letter-spacing: 0.06em;
}
#cv dl dd p {
  font-size: 2rem;
  font-weight: 500;
  margin: 0 0 15px;
}
#cv .inner p img {
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  top: -51px;
  width: 60px;
  z-index: 2;
}
#cv dl dt p img,
#cv dl dd p img {
  width: 44px;
  vertical-align: middle;
  margin: -4px 8px 0 0;
}
/*詳しく見るボタン TOPと同じ仕組み*/
#price_fix{
  right: 0;
}
div#price_fix.column-fix.faq-btn{
  width: 40px;
  position: fixed;
  background:transparent;
  z-index: 5;
  transition: .3s all;
  visibility: hidden;
  opacity: 0;
  cursor: pointer;
  margin-right: 9%;
  filter: drop-shadow(0px 3px 6px rgb(0,0,0,20%));
  transform: translateZ(0);
  border-radius: 20px;
  top: calc(100vh - 175px);
  }

#price_fix.column-fix.show,
#price_fix.column-fix.faq-btn.show{
  visibility: visible;
  opacity: 1;
}
div#price_fix.column-fix.column-return {
  margin-right: 9px;
}
@media screen and (max-width: 767px) {
  #cv dl dt p {
    font-size: 3.5vw;
    font-weight: 700;
    margin: 0 5px 10px;
  }
}
/* サブスクプラン お役立ち情報ページ(/column /) タブレット用 */
@media (min-width: 768px) and (max-width: 1280px) {
  #cv dl dt p {
    font-size: 1.8rem;
    margin: 0 0 18px;
  }
  #cv dl dd p {
    font-size: 1.8rem;
    margin: 0 0 18px;
  }
  #top #cv .inner p img {
    top: -51px;
    width: 60px;
  }
  /* お役立ち情報ページ */
  .column_detail-h div.column-paragraph-title{
    padding: 20px 3%;
  }
  .column_detail-h div.column-paragraph-title p{
    font-size: 2.1rem;
  }
  .column_detail-h div.column-main-title h1 p{
    margin-bottom: 25px;
    font-size: 33px;
  }
  .column_detail-h .column-paragraph-text-end{
    padding-bottom: 35px;
  }
  .column_detail-h .column-table-of-contents{
    padding: 30px 6%;
    margin-bottom: 35px;
  }
  .column_detail-h h2{
    padding-bottom: 25px;
  }
  .column_detail-h .culumn-contents-img-width{
    margin-bottom: 25px;
  }
  .column-contents-flex{
    flex-direction: column;
    gap: 0;
  }
  .column-contents-flex a{
    width: auto;
  }
  .side-fixed-banner.column-sd .btns .btn-base{
    font-size: 1.5rem;
    height: 140px;
  }
  div#price_fix.column-fix.column-return {
    margin-right: 2px;
  }
}

@media screen and (max-width: 767px) {
  .column-title{
    margin: 30px auto 20px;
  }
  .column-title p {
    font-size: 2.6rem;
    line-height: 30px;
    text-align: left;
  }
  .content-box-sub-title p{
    font-size: 2rem;
    margin-bottom: 0;
  }
  .white-content-box-inner.sp-margin-less{
    margin: 0;
  }
  section.other-second.column{
    background-position: right -1%;
    padding: 70px 0 30px;
  }
  .white-content-box-inner.column p{
    padding-bottom: 30px;
  }
  .content-box-sub-title.column p{
    font-size: 2.2rem;
    text-align: left;
    padding-bottom: 30px;
  }
  #price_fix.column-fix{
    top:45vh;
  }
  #price_fix {
    width: 35px;
    top: 100px;
  }
  #price_fix.active img{
    opacity: 0;
  }
  #price_fix.faq-btn.active img{
    opacity:1;
  }
  div#price_fix.column-fix.faq-btn{
    margin-right: 1%;
    width: 25px;
    top: auto;
    bottom: 95px;
  }
  div.white-content-box-body table{
    margin:10px 0 auto;
  }
  .content-box-inner .column-title-paragraph{
    font-size: 1.5rem;
  }
  div#price_fix.column-fix.column-return {
    margin-right: 1%;
    width: 25px;
    top: auto;
    bottom: 75px;
  }
  
}