/*===== 霊園詳細コンテンツ/SP =====*/
.section-viewer h2 {
  background: #edf5e2;
  margin: 0 auto;
  padding: 6px 0 6px;
  text-align: center;
  width: 100%;
}

.section h2 {
  font-size: 18px;
  font-weight: normal;
  border-bottom: 1px solid #05aa22;
  line-height: 1.8;
  margin: 0 10px 24px;
  padding: 16px 0 10px;
}

.section h3 {
  font-size: 16px;
  font-weight: bold;
  line-height: 2.0;
}

.section h3.pr {
  font-size: 17px;
  font-weight: bold;
  position: relative;
  padding: 16px 0 10px;
  border-bottom: 3px solid #edf5e2;
  margin: 0 10px 16px;
  line-height: 1.4;
}

.section h3.pr:after {
  position: absolute;
  bottom: -3px;
  left: 0;
  z-index: 1;
  content: "";
  width: 22%;
  height: 3px;
  background-color: #9fc202;
}

.section h3.pr>span {
  font-size: 12px;
  font-weight: normal;
  border: 1px solid #ccc;
  border-radius: 2px;
  display: inline-block;
  width: 36px;
  line-height: 17px;
  text-align: center;
  margin-left: 12px;
  vertical-align: text-top;
}

.section h4 {
  font-weight: bold;
  margin-bottom: 10px;
  color: #05aa22;
}

.section-more {
  padding: 20px 0;
}

.section-more a {
  box-sizing: border-box;
  display: block;
  border: 1px solid #05aa22;
  width: 84%;
  padding: 5px 10px;
  font-size: 15px;
  border-radius: 5px;
  text-decoration: none;
  text-align: center;
  margin: 0 auto;
}

.section-more a span {
  position: relative;
  color: #05aa22;
  display: flex;
  justify-content: center;
  align-items: center;
}

.section-more a .material-icons {
  color: #05aa22;
}

html,
body {
  margin: 0;
  padding: 0;
  overflow-x: hidden;
}

/* 霊園概要 */
.section-item {
  margin-bottom: 20px;
}

.section-txt-area {
  line-height: 1.6;
  padding: 0 10px;
}

.section-txt-area p {
  font-size: 14px;
  margin-bottom: 30px;
}

.list-type {
  font-size: 16px;
  font-weight: bold;
  line-height: 1.8;
  padding: 0 32px;
}

.list-type li:first-child {
  text-indent: -1em;
}

.list-type a {
  color: #0087cd;
}

/* コンバージョン枠 */
.section-conversion {
  background-color: #f8f5f1;
  padding: 10px;
  margin: 20px auto;
  text-align: center;
}

.section-conversion .conversion-box {
  margin: 10px auto 20px;
}

.section-conversion>p {
  line-height: 1.6;
  margin: 10px 0;
}

.section-conversion>p>span {
  font-size: 24px;
}

.conversion-box p {
  font-size: 14px;
  margin: 0;
  line-height: 1.4;
}

.conversion-box p>span {
  font-size: 24px;
}

.conversion-box>a {
  border-radius: 4px;
  background-image: -o-linear-gradient(45deg, #f19500 0%, #ff8501 100%);
  background-image: linear-gradient(45deg, #f19500 0%, #ff8501 100%);
  border: solid 1px #ff7700;
  box-sizing: border-box;
  color: #fff;
  display: inline-block;
  font-weight: normal;
  line-height: 22px;
  padding: 10px 0 4px;
  text-decoration: none;
  width: 100%;
}

.conversion-box>a>.icon-free {
  background: #fff;
  border-radius: 4px;
  color: #ff6012;
  font-size: 18px;
  margin: 0 -16px 0 4px;
  padding: 4px 8px 2px;
}

.button-conversion h2:after {
  display: none;
}

/*ここまで---------CVエリア改修のため新規追加*/
.conversion-box.today a {
  background: #fff;
  color: #ff8501;
  padding: 12px 0 8px;
  border: 1px solid #ff8501;
}

.button-conversion .conversion-box.catalog a {
  border-radius: 5px;
  border: 1px solid #147DB8;
  background: linear-gradient(180deg, #3496CD 0%, #147DB8 100%);
  box-shadow: 0px 2px 4px 0px rgba(0, 0, 0, 0.20);
}

.conversion-box a {
  font-size: 12px;
}

.conversion-box a span {
  display: block;
  margin: 0 0 4px;
  font-weight: bold;
  font-size: 18px;
}

.conversion-box.name a:hover {
  opacity: 0.8;
}

.button-conversion .conversion-box.name a {
  border-radius: 5px;
  border: 1px solid #532C85;
  background: linear-gradient(180deg, #754AAD 0%, #532C85 100%);
  box-shadow: 0px 2px 4px 0px rgba(0, 0, 0, 0.20);
  padding: 7px 0;
  height: auto;
  line-height: 1;
}

.area-call {
  margin-bottom: 10px;
}

.area-call>a {
  color: #232b39;
  text-decoration: none;
}

.area-call>a>.box-call {
  background: #fff;
  margin: 0 0 20px;
  line-height: 1;
  padding: 16px 0 16px;
  width: 100%;
}

.box-call>.txt-lead {
  color: #05aa22;
  font-weight: bold;
  line-height: 1.4;
  margin-bottom: 10px;
}

.box-call>.txt-call {
  font-family: Roboto, sans-serif;
  font-size: 28px;
  font-weight: bold;
  line-height: 1;
  text-decoration: underline;
}

.box-call>.txt-call>i {
  color: #05aa22;
  margin-right: 4px;
  vertical-align: middle;
}

.box-call>.txt-sub {
  font-size: 13px;
  line-height: 1;
}

.section-item .bnr-camp {
  display: none;
}

/* 価格枠 */
.price-summary {
  display: flex;
  flex-wrap: wrap;
  margin: 10px auto 8px;
}

.price-box {
  width: 100%;
  margin: 0 10px 16px;
  box-sizing: border-box;
  overflow: hidden;
  border: 1px solid #ccc;
  border-radius: 5px;
  text-align: center;
}

.price-title {
  padding: 8px 4px;
  font-size: 15px;
  font-weight: bold;
  background: #edf5e2;
  border-bottom: solid 1px #ccc;
}

.price-body {
  padding: 10px 0;
  font-size: 19px;
  color: #d94372;
  font-weight: bold;
}

.price-body h3 {
  margin-bottom: 12px;
  color: #232b39;
  font-size: 17px;
}

.price-body em {
  font-size: 22px;
}

.price-body span {
  color: #232b39;
  font-size: 14px;
  font-weight: normal;
  padding: 0 3px;
}

.price-body .note {
  font-size: 13px;
  font-weight: normal;
  color: #232b39;
  line-height: 1.2;
  margin-left: 10px;
  padding: 8px 0 0;
  text-align: left;
}

.price-body .via {
  position: relative;
  top: -1px;
  font-size: 13px;
  display: inline-block;
  box-sizing: border-box;
  background: #05aa22;
  color: #fff;
  padding: 4px 8px;
  border-radius: 4px;
  margin-right: 8px;
  font-weight: normal;
}

.price-container {
  border-bottom: solid 1px #ccc;
  margin: 0 10px 10px;
  padding-bottom: 18px;
  position: relative;
  width: calc(100% - 20px);
}

.price-item {
  border-collapse: collapse;
  border-spacing: 0;
  position: relative;
  font-size: 14px;
  margin: 0 0;
  width: 100%;
}

.price-item th {
  background: #f0f0e4;
  border: 1px solid #ccc;
  padding: 4px;
  text-align: center;
  font-size: 13px;
  font-weight: bold;
  width: 36%;
}

.price-item td {
  border: 1px solid #ccc;
  font-size: 14px;
  padding: 4px;
  text-align: center;
  width: 46%;
}

.price-item td.open {
  padding: 0;
  vertical-align: middle;
  width: 18%;
}

.price-att {
  font-size: 14px;
  line-height: 1.5;
  margin: 0 10px;
}

.price-att a {
  color: #0187cd;
}

/* 価格補足アコーディオン */
.price-container label {
  background: #fff;
  border: 1px solid #ccc;
  border-radius: 4px;
  box-shadow: 0 1px 0 0 #ccc;
  color: #05aa22;
  cursor: pointer;
  font-size: 14px;
  font-weight: normal;
  height: auto;
  line-height: 14px;
  margin: 0 auto 0;
  padding: 8px 0 0;
  position: absolute;
  right: calc(2% + 4px);
  text-align: center;
  top: 100px;
  transition: all 0.5s;
  width: 40px;
}

.price-container label:after {
  color: #05aa22;
  content: 'expand_more';
  font-family: 'Material Icons';
  font-size: 24px;
}

.price-container input {
  display: none;
}

.price-container .pitem-bottom {
  height: 0;
  opacity: 0;
  overflow: hidden;
  padding: 0;
  -webkit-transition: 0.8s;
  -o-transition: 0.8s;
  transition: 0.8s;
}

.cssacc:checked+label+.pitem-bottom {
  height: auto;
  opacity: 1;
}

.cssacc:checked+label:after {
  content: 'expand_less';
}

.contAc {
  margin: 0 0;
  padding: 10px;
  border: 1px solid #ccc;
  border-top: none;
  font-size: 13px;
}

.contAc span {
  font-weight: bold;
  display: block;
}

.contAc .groupText>div {
  float: left;
  font-size: 13px;
  margin: 0 30px 10px 0;
  width: auto;
}

.contAc .groupText>div:last-child {
  clear: both;
}

/* 現地レポート */
.section-article {
  display: flex;
  justify-content: space-between;
  padding: 0 10px;
}

.section-article .section-txt-area {
  height: 200px;
  line-height: 1.4;
  overflow: hidden;
  width: 60%;
}

.section-article .section-txt-area p {
  margin-bottom: 0;
}

.section-article figure {
  width: 36%;
  height: 200px;
  background: #f5f5f5;
  overflow: hidden;
  position: relative;
}

.section-article figure img {
  position: absolute;
  max-height: 100%;
  width: auto;
  height: auto;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

/* 口コミ */
.section-voice {
  line-height: 1.5;
}

#kuchikomi-list {
  padding: 0 10px;
}

#kuchikomi-list .kuchikomi:last-of-type {
  margin-bottom: 0;
}

.kuchikomi {
  position: relative;
  border-bottom: 1px solid #ccc;
  padding-bottom: 25px;
  font-size: 13px;
  margin: 0 0 15px;
  text-align: left;
}

.kuchikomi-inner {
  padding-left: 58px;
}

.kuchikomi-star {
  font-size: 18px;
  font-weight: bold;
  display: inline-block;
  margin-bottom: 12px;
  line-height: 1;
}

.kuchikomi-star img {
  width: 103px;
  display: inline-block;
  vertical-align: top;
  margin-right: 5px;
}

.kuchikomi-star i {
  color: #ef7b00;
  font-size: 22px;
  margin: 0;
  vertical-align: text-bottom;
}

.kuchikomi-star .txt-score {
  margin-left: 10px;
}

.kuchikomi-star .via {
  position: relative;
  top: -1px;
  font-size: 12px;
  display: inline-block;
  margin-left: 16px;
  box-sizing: border-box;
  color: #ed6103;
  border: 1px solid #ed6103;
  padding: 4px;
  border-radius: 3px;
}

.kuchikomi-star .via:empty {
  border: none;
}

.kuchikomi-star .via.out {
  color: #888;
  border: 1px solid #888;
}

.grad-item {
  position: relative;
  overflow: hidden;
  height: 95px;
  /*隠した状態の高さ*/
}

.grad-item::before {
  display: block;
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 70px;
  /*グラデーションで隠す高さ*/
  background: -webkit-gradient(linear, left top, left bottom, from(rgba(255, 255, 255, 0)), color-stop(50%, rgba(255, 255, 255, 0.9)), color-stop(50%, rgba(255, 255, 255, 0.9)), to(#fff));
  background: -o-linear-gradient(top, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.9) 50%, rgba(255, 255, 255, 0.9) 50%, #fff 100%);
  background: linear-gradient(to top, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.9) 50%, rgba(255, 255, 255, 0.9) 50%, #fff 100%);
  content: "";
}

.grad-trigger {
  display: none;
  /*チェックボックスは常に非表示*/
}

.grad-trigger:checked~.grad-item {
  height: auto;
  /*チェックされていたら、高さを戻す*/
}

.grad-trigger:checked~.grad-item::before {
  display: none;
  /*チェックされていたら、grad-itemのbeforeを非表示にする*/
}

/* 霊園情報 */
.section-detail {
  padding: 0 10px;
}

@media screen and (min-width: 768px) {
  .section-detail {
    padding: 0;
  }

}

.section-detail .map-box {
  width: 100%;
  display: inline-block;
  max-height: 50vh;
}

.detail-box {
  margin-top: 20px;
}

.detail-box dl {
  border: 1px solid #ccc;
  background-color: #f5f5f5;
  padding: 12px 8px 8px;
  line-height: 1.5;
}

.detail-box dl dt {
  padding: 12px 0 8px 28px;
  font-weight: bold;
  box-sizing: border-box;
  position: relative;
}

.detail-box dl dt .material-icons {
  font-size: 24px;
  left: 4px;
  position: absolute;
}

.detail-box dl dd {
  padding: 0 0 8px 28px;
  border-bottom: 1px solid #ccc;
  box-sizing: border-box;
}

.detail-box dl dd span {
  display: block;
}

.detail-box dl dt:first-of-type,
.detail-box dl dd:first-of-type {
  padding-top: 0;
}

.detail-box dl dt:last-of-type,
.detail-box dl dd:last-of-type {
  border-bottom: none;
}

.detail-box dl dd:last-of-type {
  padding-bottom: 0;
}

.detail-box dl dt span {
  display: inline-block;
}

.detail-box dl dd a {
  color: #0187cd;
}

.point-box {
  border: 1px solid #ccc;
  background-color: #f5f5f5;
  padding: 20px;
  line-height: 1.5;
  margin: 0 10px;
}

/* おすすめの霊園 */
.section-link {
  padding: 0 10px;
}

.card-item {
  border-bottom: 1px solid #ccc;
  position: relative;
  display: flex;
  margin-top: 16px;
  padding-bottom: 68px;
}

.card-item:after {
  display: block;
  position: absolute;
  right: 8px;
  top: 42%;
  content: "";
  width: 10px;
  height: 10px;
  margin: -5px 0 0 0;
  border-top: solid 3px #0187cd;
  border-right: solid 3px #0187cd;
  transform: rotate(45deg);
}

.card-item figure {
  width: 120px;
  height: 90px;
  position: relative;
  overflow: hidden;
}

.card-item figure img {
  width: auto;
  height: 100%;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

.card-item .more-txt {
  bottom: 10px;
  display: block;
  left: calc(50% - 80px);
  padding-bottom: 30px;
  position: absolute;
}

.card-data {
  padding: 0;
  margin: 0 10px;
  width: 60%;
}

.card-data ul li {
  margin-bottom: 8px
}

.card-data .data-title {
  color: #0187cd;
  font-size: 16px;
  font-weight: bold;
  height: 42px;
  line-height: 1.5;
  margin-bottom: 12px;
  display: -webkit-box;
  overflow: hidden;
}

.card-data .data-category {
  border: 1px solid #ccc;
  border-radius: 2px;
  font-size: 12px;
  display: none;
  line-height: 1.2;
  margin: 0 4px 4px 0;
  padding: 4px;
}

#fix-nav-box ul .fix-nav-button a {
  color: #fff;
  font-size: 16px;
  font-weight: normal;
  line-height: 30px;
  margin: 0;
  padding: 0;
  text-decoration: none;
}

#fix-nav-box ul .fix-nav-button a:after {
  content: none;
}

.more-txt {
  border: solid 1px #ff7700;
  border-radius: 4px;
  box-sizing: border-box;
  color: #fff;
  display: inline-block;
  font-weight: normal;
  height: 48px;
  line-height: 48px;
  margin: 0 auto;
  text-align: center;
  width: 160px;
}

.more-txt span {
  color: #fff;
  font-size: 14px;
  font-weight: bold;
  margin: 0;
  padding: 0;
  text-decoration: none;
}

.card-link-overlay {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  text-indent: -99999px;
  z-index: 1;
}

/* リンクズレ防止 */
#section-kuchikomi,
#section-map {
  padding-top: 50px;
  margin-top: -50px;
}

.viewer360 {
  overflow: hidden;
}

/* 霊園案内 */
.section-info {
  margin-bottom: 20px;
}

.section-info .section-txt-area {
  margin-bottom: 30px;
}

.section-info .txt-info {
  margin-bottom: 30px;
}

/*===== 霊園詳細コンテンツ/Tablet =====*/
@media only screen and (min-width: 768px) and (max-width: 1040px) {
  .conversion-box>a>.icon-free {
    padding: 4px 6px 2px;
    margin: 0 0 0 8px;
  }

  .box-call>.txt-call {
    font-size: 28px;
  }

  .button-conversion .conversion-box {
    width: auto;
    margin: 12px 8px;
  }

  .conversion-box a img {
    display: none;
  }

  .conversion-box.name a span {
    font-size: 16px;
  }

  .card-item .more-txt {
    width: 100%;
  }

  .fix-btn02 {
    display: none;
  }
}

/*===== 霊園詳細コンテンツ/767px未満 =====*/
@media only screen and (max-width: 767px) {

  .visiting-carve-button-xs,
  .detail_other .visiting-carve-button-xs {
    display: flex;
    gap: 0 10px;
    margin: 12px 0;
    justify-content: center;
    width: 100%;
  }

  .conversion-box.name,
  .conversion-box.catalog {
    margin: 10px 12px;
  }

  .txt-call>a {
    font-size: 13px;
    text-decoration: none;
    color: #232b39;
    display: inline-block;
    width: 100%;
    text-align: center;
  }

  .txt-call>a>span {
    line-height: 1.3;
    text-align: center;
    display: inline-block;
    margin: 10px 0;
    font-weight: bold;
  }

  .txt-call>a>i {
    color: #05aa22;
    font-size: 28px;
    margin: 5px 0;
  }
}

/*===== 霊園詳細コンテンツ/360px未満 =====*/
@media only screen and (max-width: 359px) {

  .visiting-carve-button-xs {
    margin: 12px 4px;
  }

  .txt-call>a {
    font-size: 12px;
  }

  .txt-call>a>i {
    margin: 2px 0;
  }

  .txt-call>a>span {
    margin: 2px 0;
  }

  .kuchikomi-star img {
    width: 90px;
  }

  .kuchikomi-star .via {
    margin-left: 6px;
  }

  /* 価格補足アコーディオン */
  .price-container label {
    background: #fff;
    border: 1px solid #ccc;
    border-radius: 4px;
    box-shadow: 0 1px 0 0 #ccc;
    color: #05aa22;
    cursor: pointer;
    font-size: 14px;
    font-weight: normal;
    height: auto;
    line-height: 14px;
    margin: 0 auto 0;
    padding: 8px 0 0;
    position: absolute;
    right: 2%;
    text-align: center;
    top: 120px;
    transition: all 0.5s;
    width: 40px;
  }
}

/*===== MOON_L1-3720 over write =====*/
#list__result {
  text-align: center;
  background: #fff;
  padding-top: 15px;
}

#list__result h2 {
  background: #fff;
}

#list__result .data-title {
  /*霊園名*/
  font-size: 15px;
}

/*カード内*/
#list__result .card-item {
  display: block;
  margin-top: 0;
  padding-bottom: 0;
}

#list__result .card-item-inr {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  text-align: left;
  padding: 0 0 13px 0;
  position: relative;
  z-index: 1;
}

#list__result .card-item-inr a {
  display: block;
  width: 100%;
  height: 100%;
  position: absolute;
  left: 0;
  top: 0;
  z-index: 2;
}

#list__result .more-txt {
  bottom: auto;
  left: auto;
  padding: 0;
  position: relative;
  line-height: 1;
  height: auto;
}

#list__result .more-txt a {
  display: block;
  line-height: 1;
  text-decoration: none;
  padding: 10px 0;
}

#list__result .card-item figure {
  width: 40%;
}

#list__result .input-table div div {
  padding: 0;
}

#list__result .card-data {
  width: 55%;
  margin: 0;
}

#list__result .rating i {
  color: #ff7700;
  font-size: 14px;
}

#list__result .section-more {
  padding: 20px 0;
}

/*まとめて資料請求とcheckbox*/
#list__result .card-list li {
  margin: 0 0 10px 0;
}

#list__result .card-list li ul li {
  margin: 0 0 8px 0;
}

#list__result .checkbox__card-list {
  margin: 0;
  padding: 20px 0;
  z-index: 20;
  position: relative;
  width: 100%;
}

#list__result label {
  display: inline-block;
  cursor: pointer;
  position: relative;
  padding: 0;
  margin: 0;
}

#list__result label span {
  display: block;
  line-height: 20px;
  height: 20px;
  transition: .3s all;
  padding: 0 8px;
  margin: 0 0 0 20px;
  background: #fff;
  color: #404040;
  font-weight: normal;
  font-size: 12px;
}

#list__result label span:hover {
  background: #fff;
  color: #404040;
}

#list__result input[type=checkbox] {
  display: none;
}

#list__result input[type=checkbox]+label:before {
  content: "";
  display: inline-block;
  width: 20px;
  height: 20px;
  border-radius: 4px;
  border: #ccc solid 1px;
  top: 0;
  left: -5px;
  position: absolute;
}

#list__result input[type=checkbox]:checked+label:after {
  content: "";
  border-right: 5px solid #05aa22;
  border-bottom: 5px solid #05aa22;
  content: '';
  display: block;
  height: 9px;
  left: 0;
  margin-top: -7px;
  opacity: 0;
  position: absolute;
  top: 50%;
  transform: rotate(45deg);
  width: 5px;
}

#list__result input[type=checkbox]:checked+label::after {
  opacity: 1;
}


@media only screen and (min-width: 768px) {

  #list__result {
    padding-top: 0;
  }

  #list__result .card-list {
    -ms-flex-flow: wrap;
    flex-flow: wrap;
  }

  #list__result .card-item {
    display: block;
    max-width: 19%;
    min-width: 19%;
  }

  #list__result .rating i {
    color: #ef7b00;
    font-size: 18px;
    margin: 0 -1px;
  }

  /*カード内*/
  #list__result .card-item-inr {
    display: block;
    padding: 0;
    text-align: center;
  }

  #list__result .card-item figure,
  #list__result .card-data {
    width: 100%;
  }

  #list__result .card-data {
    margin: 10px 0 0 0;
  }

  #list__result .card-data ul {
    min-height: 90px;
  }

  #list__result .section-more {
    padding: 20px 0 0 0;
  }

}

/*pc storiesのバナー*/
.bnr__stories {
  text-align: center;
}

/*追従フッター追加によるスペース確保*/
.request-area {
  margin-bottom: 100px;
}

/*追従フッター*/
@media only screen and (min-width: 768px) {

  #fix-arealist-footer {
    background: rgba(0, 0, 0, 0.8);
    position: fixed;
    bottom: 0;
    width: 100%;
    z-index: 30;
  }

  #fix-arealist-footer .fix-arealist-inner {
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 15px 0;
    z-index: 20;
  }

  #fix-arealist-footer p {
    color: #fff;
    font-size: 18px;
    font-weight: bold;
    margin-right: 20px;
  }

  #fix-arealist-footer .fix-arealist-inner .area-list-cv {
    margin: 0;
    display: flex;
    justify-content: space-between;
  }

  #fix-arealist-footer .fix-arealist-inner .area-list-cv .cv-area-form {
    width: 330px;
  }

  .area-list-cv .cv-area-form>a {
    text-decoration: none;
    display: block;
    background: #f55d00;
    border-radius: 6px;
    box-shadow: 0 3px 0 0 #b94600;
    display: block;
    height: 41px;
    position: relative;
    z-index: 2;
    text-decoration: none;
  }

  .area-list-cv .cv-area-form a p {
    color: #fff !important;
    font-size: 13px !important;
    line-height: 42px;
    text-decoration: none;
    margin-right: 0 !important;
    text-align: center;
  }

  .area-list-cv .cv-area-form a p strong {
    font-size: 19px;
    color: #fff !important;
    font-weight: normal;
  }
}

/*MOON_L1-3720 追加*/
#box__cv--CheckBtn {
  border: #b7d8a3 solid 1px;
  border-radius: 4px;
  box-sizing: border-box;
  padding: 8px;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
  background: #faf8ed;
  margin: 0 0 15px 0;
}

#box__cv--CheckBtn a.btn__add {
  display: block;
  background: #ed702d;
  box-shadow: 0 2px 0 #ac501f;
  border-radius: 4px;
  color: #fff;
  padding: 10px 0 6px 0;
  text-align: center;
  text-decoration: none;
  width: 45%;
}

#box__cv--CheckBtn a.btn__add:hover,
#box__cv--CheckBtn a.btn__add:visited {
  color: #fff;
  text-decoration: none;
}

#box__cv--CheckBtn a.btn__add strong {
  display: block;
  font-size: 16px;
  margin: 0 0 3px 0;
  line-height: 1;
}

#box__cv--CheckBtn a.btn__add em {
  display: block;
  font-style: normal;
  font-size: 13px;
  line-height: 1.2;
  margin: 0;
}

#box__cv--CheckBtn a.btn__add em br {
  display: block;
}

#box__cv--CheckBtn input[type=checkbox] {
  display: none;
}

#box__cv--CheckBtn label {
  display: inline-block;
  cursor: pointer;
  position: relative;
  padding: 0;
  margin: 0;
}

#box__cv--CheckBtn input[type=checkbox]+label:before {
  content: "";
  display: inline-block;
  background: #fff;
  width: 20px;
  height: 20px;
  border-radius: 4px;
  border: #05aa22 solid 3px;
  top: 0;
  left: 0;
  position: absolute;
}

#box__cv--CheckBtn input[type=checkbox]:checked+label:after {
  content: "";
  border-right: 5px solid #05aa22;
  border-bottom: 5px solid #05aa22;
  content: '';
  display: block;
  height: 25px;
  left: 13px;
  margin-top: -18px;
  opacity: 0;
  position: absolute;
  top: 50%;
  transform: rotate(45deg);
  width: 5px;
}

#box__cv--CheckBtn input[type=checkbox]:checked+label::after {
  opacity: 1;
}

#box__cv--CheckBtn label span {
  display: block;
  padding: 0 8px;
  margin: 0 0 0 24px;
  background: none;
  color: #404040;
  font-weight: normal;
  font-size: 16px;
  line-height: 1;
  height: auto;
  position: relative;
  top: 5px;
}

#box__cv--CheckBtn label span:hover {
  background: none;
}

/* === MOON_L1-4569 CVボタン／見学カレンダー === */

/*******************************
| 詳細ページのCTA
*******************************/

.inquirycta {
  margin: 30px 0;
}

/* 見出し *******************************/

.inquirycta-balloon {
  background: #03aa22;
  padding: 7px 14px;
  position: relative;
  text-align: center;
}

.inquirycta-balloon::before {
  background: #03aa22;
  clip-path: polygon(0 0, 100% 0, 50% 100%);
  content: "";
  height: calc(32px / 2);
  left: 50%;
  position: absolute;
  top: calc(100% - 4px);
  transform: translateX(-50%);
  width: 36px;
}

.inquirycta-catch {
  color: #fff;
  font-size: 14px;
  font-weight: 400;
}

.inquirycta-ttl {
  color: #fff;
  font-size: 18px;
  font-weight: 700;
}

/* 上部リンク *******************************/

.inquirycta-contents {
  background: #fef6d9;
  margin: auto;
  padding: 22px 10px 15px;
}

.inquirycta-list {
  align-items: flex-start;
  display: flex;
  flex-flow: column wrap;
  gap: 8px 0;
  justify-content: center;
  margin-bottom: 16px;
  width: 100%;
}

.inquirycta-item {
  text-align: center;
  width: 100%;
}

.inquirycta-link {
  align-items: center;
  background: #fff;
  border: 1px solid #03aa22;
  border-radius: 4px;
  box-shadow: 0 4px 4px 0 rgba(0, 0, 0, .25);
  display: inline-flex;
  height: 48px;
  text-align: left;
  text-decoration: none;
  width: 100%;
}

.inquirycta-link em,
.inquirycta-link i {
  margin-left: 11px;
}

.inquirycta-link em {
  background: #03aa22;
  border-radius: 4px;
  color: #fff;
  font-size: 14px;
  font-weight: 700;
  padding: 4px;
  text-align: center;
}

.inquirycta-link i {
  color: #03aa22;
  font-size: 26px;
}

.inquirycta-link span {
  color: #232b39;
  display: inline-block;
  font-size: 14px;
  font-weight: 700;
  margin: 0 30px 0 8px;
}

.inquirycta-link-arrow {
  position: relative;
}

.inquirycta-link-arrow::before,
.inquirycta-link-arrow::after {
  content: "";
  margin: auto;
  position: absolute;
  right: 12px;
  vertical-align: middle;
}

.inquirycta-link-arrow::before {
  border-right: 3px solid #03aa22;
  border-top: 3px solid #03aa22;
  height: 10px;
  transform: rotate(45deg);
  width: 10px;
}

@media (min-width: 768px) and (max-width: 1024px) {

  .inquirycta-list {
    justify-content: center;
  }
}

/* PC 下部リンク *******************************/

@media only screen and (min-width:768px) {

  .button-conversion .conversion-box.catalog,
  .button-conversion .conversion-box.name {
    width: 350px;
  }

  .detail_main .detail-fv .button-conversion .cvbtn-box.cvBtn-4569,
  .detail_main .detail-fv .button-conversion .cvbtn-box.cvBtn-4569-two,
  .detail_other .detail-fv .button-conversion .cvbtn-box.cvBtn-4569,
  .detail_other .detail-fv .button-conversion .cvbtn-box.cvBtn-4569-two,
  .detail__other-review .detail-fv .button-conversion .cvBtn-4569,
  .detail__other-review .detail-fv .button-conversion .cvBtn-4569-two {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 0 10px;
    margin: 10px 0;
    width: 100%;
  }

  .button-conversion .conversion-box.today {
    font-size: 14px;
    height: 36px;
    margin: 0 auto 12px;
    padding: 0;
  }

  .button-conversion .conversion-box.today a {
    line-height: 14px;
    height: 36px;
  }

  .button-conversion .conversion-box.today a span {
    font-size: 18px;
  }

  .button-conversion .conversion-box.catalog a:hover {
    opacity: 0.8;
  }

  .button-conversion .txt-call a {
    color: #232b39;
  }

  .section-viewer h2 {
    padding: 10px 0 10px;
  }

  .section h2 {
    font-size: 24px;
    font-weight: normal;
    border-bottom: 1px solid #05aa22;
    line-height: 1.4;
    margin: 0 0 20px;
  }

  .section h3 {
    font-size: 18px;
  }

  .section h3.pr {
    font-size: 20px;
    border-bottom: 4px solid #f0f0e4;
    margin: 0 0 24px;
  }

  .section h3.pr:after {
    bottom: -4px;
    height: 4px;
  }

  .section h3.pr>span {
    font-size: 14px;
    line-height: 24px;
  }

  .section h4 {
    font-size: 16px;
  }

  .section-more a {
    font-size: 18px;
    text-align: center;
    width: 50%;
    padding: 10px;
  }

  /* 霊園概要 */
  .section-item {
    margin-bottom: 40px;
    clear: both;
  }

  .section-txt-area {
    line-height: 1.6;
    padding: 0 0;
  }

  .section-txt-area p {
    font-size: 16px;
    margin-bottom: 30px;
  }

  .section-item.bg-be {
    background: #f8f5f1;
  }

  .section-conversion {
    padding: 30px 0 10px;
    margin: 0 auto 20px;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    width: 600px;
  }

  .section-conversion p {
    font-size: 16px;
    width: 100%;
  }

  .section-conversion a {
    min-height: 48px;
  }

  .section-conversion .conversion-box {
    margin: 0 auto 30px;
    width: 600px;
  }

  .section-conversion .conversion-box p {
    font-size: 16px;
    font-weight: normal;
  }

  .section-conversion .conversion-box a {
    height: 72px;
    font-size: 16px;
    line-height: 1.3;
  }

  .section-conversion .conversion-box a span {
    display: inline-block;
    font-size: 24px;
  }

  .section-conversion .conversion-box>a>.icon-free {
    background: #fff;
    border-radius: 4px;
    display: inline-block;
    color: #ff6012;
    font-size: 18px;
    margin: 0 -16px 0 8px;
    padding: 4px 12px 2px;
  }

  .section-conversion .conversion-box.kengaku {
    margin-bottom: 0;
  }

  .section-conversion .conversion-box.today+.conversion-box.catalog {
    margin-left: 24px;
  }

  .section-conversion .conversion-box.catalog,
  .section-conversion .conversion-box.name {
    display: inline-block;
    width: 288px;
  }

  .section-conversion .conversion-box.name {
    margin-left: 24px;
  }

  .section-conversion .conversion-box.today+.conversion-box.catalog+.conversion-box.name {
    margin-top: 20px;
  }

  .section-conversion .conversion-box.today {
    display: inline-block;
    flex-grow: 2;
    margin: 0;
    width: 288px;
  }

  .section-conversion .conversion-box.today a {
    font-size: 14px;
    height: 60px;
    line-height: 2;
  }

  .section-conversion .conversion-box.today a span {
    font-size: 18px;
  }

  .section-conversion .conversion-box.catalog a,
  .section-conversion .conversion-box.name a {
    font-size: 14px;
    line-height: 1.2;
    height: 60px;
  }

  .section-conversion .conversion-box.catalog a span,
  .section-conversion .conversion-box.name a span {
    font-size: 18px;
  }

  .area-call {
    margin: 0 auto 0;
    width: 600px;
  }

  .area-call>a {
    color: #232b39;
    text-decoration: none;
  }

  .area-call .box-call {
    background: #fff;
    height: 74px;
    margin: 0 auto 0;
    line-height: 1;
    padding: 16px 0 0;
    width: 600px;
  }

  .box-call>.txt-lead {
    color: #05aa22;
    font-size: 16px;
    line-height: 1;
    margin-bottom: 10px;
  }

  .box-call>.txt-call {
    font-size: 26px;
    text-decoration: none;
  }

  .box-call>.txt-call a {
    color: #232b39;
  }

  .box-call>.txt-call>i {
    color: #05aa22;
    vertical-align: middle;
  }

  .box-call>.txt-call>.txt-sub {
    display: inline-block;
    font-size: 14px;
    line-height: 1;
    vertical-align: middle;
  }

  .section-item a.bnr-camp {
    display: block;
    margin: 0 auto 20px;
    padding-bottom: 20px;
    width: 690px;
  }

  .area-list-conversion ul {
    display: flex;
    justify-content: center;
    margin: 20px 0;
  }

  .area-list-conversion li {
    height: 120px;
    margin-right: 10px;
  }

  .area-list-conversion li:nth-child(2n) {
    margin-right: 0;
  }

  .area-list-conversion li img {
    width: auto;
    height: 100%;
  }

  .list-type {
    font-size: 20px;
    font-weight: bold;
    line-height: 1.6;
    padding: 0 20px;
  }

  .list-type li:first-child {
    text-indent: -1em;
  }

  .list-type a {
    color: #0087cd;
  }

  /* 価格枠 */
  .price-summary {
    display: flex;
    flex-wrap: wrap;
    margin: 10px auto 15px;
  }

  .price-box {
    width: 48%;
    margin: 0 1% 10px;
  }

  .price-box .price-body {
    font-size: 20px;
  }

  .price-body em {
    font-size: 28px;
  }

  .price-body span {
    font-size: 16px;
  }

  .price-body .note {
    font-size: 14px;
    margin: 0 20px
  }

  .price-container {
    border-bottom: none;
    font-size: 15px;
    margin: 0 0 10px;
    padding-bottom: 0;
    position: relative;
    width: 100%;
  }

  .price-item {
    font-size: 15px;
  }

  .price-item th {
    font-size: 15px;
    font-weight: normal;
    padding: 6px;
  }

  .price-item td {
    font-size: 16px;
    padding: 6px;
  }

  .contAc .groupText {
    font-size: 15px;
    padding: 10px;
  }

  .contAc .groupText p {
    line-height: 2;
  }

  /* 価格補足アコーディオン */
  .price-container label {
    background: #fff;
    border: 1px solid #ccc;
    border-radius: 4px;
    box-shadow: 0 1px 0 0 #ccc;
    color: #05aa22;
    cursor: pointer;
    font-size: 15px;
    font-weight: normal;
    height: 15px;
    line-height: 15px;
    margin: 0 auto 0;
    padding: 12px 0 12px;
    position: absolute;
    right: 3.5%;
    text-align: center;
    top: 120px;
    transition: all 0.5s;
    vertical-align: text-bottom;
    width: 100px;
  }

  .price-container label:after {
    font-size: 28px;
    vertical-align: text-bottom;
  }

  /* 口コミ */
  .kuchikomi {
    font-size: 14px;
    padding-bottom: 30px;
    margin: 0 0 30px;
  }

  .kuchikomi-star img {
    width: 110px;
    margin-right: 10px;
  }

  .kuchikomi-star i {
    font-size: 24px;
  }

  .kuchikomi-star .via {
    font-size: 13px;
  }

  /* 霊園情報 */
  .section-detail .map-box {
    display: inline-block;
    max-width: 1000px;
    max-height: 500px;
  }

  .detail-box dl {
    padding: 20px;
    display: flex;
    flex-wrap: wrap;
  }

  .detail-box dl dt {
    width: 20%;
    padding: 12px 10px 20px 38px;
    border-bottom: 1px solid #ccc;
  }

  .detail-box dl dt .material-icons {
    font-size: 24px;
    left: 8px;
    position: absolute;
  }

  .detail-box dl dd {
    width: 80%;
    padding: 12px 10px 20px;
  }

  /* おすすめの霊園 */
  .card-list {
    display: flex;
    flex-flow: nowrap;
    justify-content: space-between;
  }

  .card-list li {
    margin: 0 1% 0 0;
  }

  .card-list li:last-of-type {
    margin-right: 0;
  }

  .card-item figure {
    width: 100%;
  }

  .card-data {
    margin: 10px;
    width: auto;
  }

  .card-data ul li {
    margin-bottom: 8px;
  }

  .card-item {
    display: block;
    max-width: 24%;
    min-width: 19%;
    border: 1px solid #ccc;
    padding: 10px 0 10px;
    position: relative;
  }

  .card-data .data-category {
    border: 1px solid #ccc;
    border-radius: 2px;
    font-size: 12px;
    display: inline-block;
    line-height: 1.2;
    margin: 0 4px 4px 0;
    padding: 4px;
  }

  .card-item .more-txt {
    display: block;
    height: 28px;
    line-height: 28px;
    margin: 0 auto;
    padding: 0;
    position: static;
    width: 140px;
  }

  .card-item a {
    text-decoration: none;
  }

  .card-item:after {
    display: none;
  }

  .card-link-overlay {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    text-indent: -99999px;
    z-index: 1;
  }

  /* 霊園案内 */
  .section-info {
    margin-bottom: 40px;
  }

  .section-info>h2 {
    margin-bottom: 20px;
  }

  .section-info .txt-info {
    font-size: 18px;
    margin-bottom: 16px;
  }

  #box__cv--CheckBtn {
    padding: 8px 8px 8px 20px;
    margin: 0 0 30px 0;
  }

  #box__cv--CheckBtn a.btn__add {
    padding: 10px 0;
    width: 40%;
  }

  #box__cv--CheckBtn a.btn__add strong {
    font-size: 20px;
    margin: 0 0 5px 0;
  }

  #box__cv--CheckBtn a.btn__add em {
    font-size: 14px;
    line-height: 1;
  }

  #box__cv--CheckBtn a.btn__add em br {
    display: none;
  }

  #box__cv--CheckBtn label span {
    font-size: 24px;
    top: auto;
  }

  #box__cv--CheckBtn input[type=checkbox]:checked+label:after {
    margin-top: -20px;
  }

  .inquirycta-balloon::before {
    height: calc(32px / 2);
    width: 43px;
  }

  .inquirycta-catch {
    margin-bottom: 3px;
  }

  .inquirycta-contents {
    padding: 33px 30px 29px;
  }

  .inquirycta-list {
    align-items: center;
    display: flex;
    flex-flow: row wrap;
    gap: 20px;
    justify-content: center;
    margin: 0 auto;
    max-width: 940px;
  }

  .inquirycta-item {
    width: 300px;
  }

  /* 子要素が4個 */
  .inquirycta-item:first-child:nth-last-child(4),
  .inquirycta-item:first-child:nth-last-child(4)~* {
    max-width: 220px;
  }

  /* 電話ボタン */
  .inquirycta-link span {
    font-size: 16px;
  }

  /* 子要素が4個 */
  .inquirycta-item:first-child:nth-last-child(4)>.inquirycta-link,
  .inquirycta-item:first-child:nth-last-child(4)~*>.inquirycta-link {
    padding: 5px 0;
  }

  /* 子要素が4個 */
  .inquirycta-item:first-child:nth-last-child(4)>.inquirycta-link span,
  .inquirycta-item:first-child:nth-last-child(4)~*>.inquirycta-link span {
    line-height: 1.2;
    max-width: 150px;
  }

  /* 子要素が4個 */
  .inquirycta-item:first-child:nth-last-child(4)>.inquirycta-link span.inquirycta-link-txt,
  .inquirycta-item:first-child:nth-last-child(4)~*>.inquirycta-link span.inquirycta-link-txt {
    max-width: 120px;
  }

  .button-conversion .conversion-box.catalog,
  .button-conversion .conversion-box.name {
    width: 400px;
    margin: 8px 0;
  }
}

.bnr--textbox h3 {
  background: linear-gradient(rgb(0 0 0 / 0%) 70%, #fff17f 70%);
}

@media only screen and (min-width: 1024px) {

  .button-conversion .conversion-box.catalog,
  .button-conversion .conversion-box.name {
    margin-bottom: 10px;
  }
}

/******************************* 
| 「個別相談」「無料送迎」ボタン
*******************************/

/* 外枠 *******************************/

.inquirycta-modalbtn-list {
  display: flex;
  flex-flow: column wrap;
  gap: 16px 20px;
  justify-content: center;
  margin-top: 16px;
}

.inquirycta-modalbtn-item {
  width: 100%;
}

@media screen and (min-width: 768px) {
  .inquirycta-modalbtn-list {
    flex-flow: row wrap;
  }

  .inquirycta-modalbtn-item {
    width: calc(50% - 10px);
  }
}

/* 中身 *******************************/

.inquirycta-modalbtn-inner {
  align-items: center;
  background: #fff;
  border: 1px solid #03aa22;
  border-radius: 4px;
  box-shadow: 0 4px 4px 0 rgba(0, 0, 0, 0.25);
  cursor: pointer;
  display: flex;
  justify-content: space-between;
  padding: 5px;
}

.inquirycta-modalbtn-img {
  display: block;
  height: 85px;
  object-fit: cover;
  width: 127px;
}

.inquirycta-modalbtn-text {
  padding: 0 20px 0 13px;
  text-align: left;
  width: calc(100% - 127px);
}

.inquirycta-modalbtn-ttl {
  color: #03aa22;
  font-size: 14px;
  font-weight: 700;
  margin-bottom: 2px;
}

.inquirycta-modalbtn-detail {
  color: #232b39;
  font-size: 14px;
  font-weight: 400;
}

/******************************* 
  | 「個別相談」「無料送迎」ボタン→モーダル
  *******************************/

/* modal内 header *******************************/

.section h2.inquirycta-modal__ttl {
  border-bottom: none;
  font-weight: 600;
  margin: 12px auto;
  padding: 0;
  text-align: center;
}

.inquirycta-modal__header--type {
  height: auto;
  line-height: normal;
}

/* modal内 *******************************/

.inquirycta-modal__content {
  height: 80%;
  margin: auto;
  padding: 17px 13px 33px;
  text-align: center;
  max-width: 600px;
}

/* サブタイトル */
.inquirycta-modal__subttl:nth-of-type(1) {
  margin-bottom: 17px;
}

.inquirycta-modal__subttl:nth-of-type(2) {
  margin-bottom: 5px;
}

/* メリット */
.inquirycta-modal__merit-ttl {
  font-size: 14px;
}

.inquirycta-modal__merit-list {
  background: #fef6d9;
  border-radius: 8px;
  display: inline-block;
  margin-bottom: 15px;
  padding: 12px 30px;
  box-sizing: border-box;
}

.inquirycta-modal__merit-item {
  font-size: 14px;
  font-weight: 600;
  line-height: 1.6;
  list-style-type: disc;
  margin-left: 1em;
  text-align: left;
}

/* テーブル */
.inquirycta-modal__table {
  margin: 0 auto 25px;
}

.inquirycta-modal__table-content {
  display: flex;
}

.inquirycta-modal__table-detail,
.inquirycta-modal__table-label {
  border: 1px solid #ccc;
  font-size: 14px;
  line-height: 1.6;
  margin-bottom: -1px;
  padding: 4px 7px;
  text-align: left;
  box-sizing: border-box;
}

.inquirycta-modal__table-label {
  background: #eee;
  font-weight: 600;
  width: 120px;
}

.inquirycta-modal__table-detail {
  margin-left: -1px;
  width: calc(100% - 120px);
}

/* キャンペーン */
.inquirycta-modal__present {
  background: #ecf4e1;
  border: 2px solid #ccc;
  margin: 0 auto 80px;
  padding: 10px 6px 6px;
  box-sizing: border-box;
}

.inquirycta-modal__present-text {
  font-size: 14px;
  line-height: 1.3;
  margin-bottom: 5px;
  text-align: center;
}

.inquirycta-modal__present-text strong {
  font-weight: 600;
  display: block;
}

.inquirycta-modal__present-text em {
  font-size: 20px;
}

.inquirycta-modal__present-link {
  color: #03aa22;
  display: inline-block;
  font-size: 12px;
  line-height: 1.5;
  text-align: center;
  text-decoration-line: underline;
}

/* modal nav *******************************/

.modal__footer--type {
  align-items: center;
  background: #fff;
  border-top: 1px solid #ccc;
  bottom: 0;
  display: flex;
  gap: 20px;
  justify-content: center;
  left: 0;
  padding: 12px 13px;
  position: absolute;
  right: 0;
  box-sizing: border-box;
}

.inquirycta-modal__nav-close {
  background: #fff;
  border: 2px solid #ccc;
  border-radius: 4px;
  cursor: pointer;
  display: inline-block;
  font-size: 14px;
  font-weight: 600;
  line-height: 1;
  max-width: 99px;
  padding: 17px;
  text-align: center;
  width: 100%;
  box-sizing: border-box;
}

.inquirycta-modal__nav-link {
  background: linear-gradient(180deg, #fa0 0%, #f70 100%);
  border: 1px solid #f70;
  border-radius: 4px;
  box-shadow: 0 2px 4px 0 rgba(102, 48, 0, 0.50);
  display: inline-block;
  max-width: 208px;
  padding: 13px;
  text-align: center;
  text-decoration: none;
  width: 100%;
}

.inquirycta-modal__nav-link span {
  color: #fff;
  font-size: 20px;
  font-weight: 600;
  line-height: 1.4;
  text-align: center;
  text-shadow: 1px 0 4px rgba(156, 83, 2, 0.50);
}

/* area list.css内のモーダル部分cssを引用
  *******************************/

.modal__header--type .btn-close {
  cursor: pointer;
  display: inline-table;
  line-height: 24px;
  padding: 0;
  position: absolute;
  right: 0;
  text-align: center;
  top: 0;
}

.modal__header--type {
  border-bottom: solid 1px #dcdcdc;
}

.modal__header--type .btn-close i.material-icons {
  border: solid 1px #ccc;
  border-radius: 4px;
  box-sizing: border-box;
  color: #ccc;
  font-size: 24px;
  height: 24px;
  margin: 12px;
  text-align: center;
  width: 24px;
}

.modal__inr--type {
  overflow-y: scroll;
}

/* modal.css内のcssを引用
*******************************/
/* リセット */
.wrap_more_check:checked~.wrap_more_content {
  display: block;
}

.wrap_more_label::after {
  content: none;
  border-right: none;
  right: auto;
  top: auto;
  position: relative;
}

.wrap_more_content {
  height: auto;
  overflow: visible;
}

.button-conversion {
  background-color: #fff;
  display: block;
  height: auto;
  line-height: 1;
  margin: 0 auto;
  order: 5;
  padding: 0;
  text-align: center;
  width: calc(100% - 20px);
}

.section.detail-fv .button-conversion h2.txt-lead,
.detail_other .detail-fv .button-conversion {
  display: none;
}

.detail__other-review .button-conversion,
.detail__other-review .detail-fv .button-conversion {
  display: block;
}

.button-conversion .conversion-box-right {
  font-size: 14px;
  border-radius: 5px;
  margin: 10px 0 0;
}

.detail_main .conversion-box-right {
  position: relative;
  width: 100%;
}

.detail_other .conversion-box-right,
.detail__other-review .conversion-box-right {
  width: 50%;
}

.conversion-box-right>a {
  box-sizing: border-box;
  color: #fff;
  display: inline-block;
  font-weight: normal;
  padding: 13px 0;
  text-decoration: none;
  width: 100%;
}

.conversion-box-right>a>.icon-free {
  background: #fff;
  border-radius: 4px;
  font-size: 12px;
  font-weight: bold;
  display: inline-block;
  height: 19px;
  line-height: 19px;
  margin: 0 -16px 0 8px;
  padding: 0 4px;
}

.button-conversion .cv-button-orange>a>.icon-free {
  color: #ff6012;
}

.button-conversion .cv-button-darkgreen>a>.icon-free {
  color: #05AA22;
}

.button-conversion .cv-button-orange {
  background: linear-gradient(to bottom, rgb(255, 170, 0), rgb(255, 119, 0));
  border: 1px solid rgb(255, 119, 0);
}

.button-conversion .cv-button-darkgreen {
  background: linear-gradient(to bottom, rgba(87, 221, 6, 1), rgba(5, 170, 34, 1));
  border: 1px solid rgba(5, 170, 34, 1);
}

.button-conversion .cv-button-orange:hover,
.button-conversion .cv-button-darkgreen:hover {
  opacity: 0.8;
}

.button-conversion .cv-button-darkgreen .cv-button-title {
  text-shadow: 1px 0px 4px rgba(5, 98, 22, 0.5);
}

.cv-button-subtext {
  position: relative;
  color: #fff;
  font-size: 12px;
  font-weight: normal;
  display: block;
  margin: 3px 0 0 0;
  text-shadow: 1px 0 4px rgba(66, 89, 3, 0.5);
  width: 100%;
}

#footer_fix .cv-button-subtext {
  font-size: 12px;
  margin: 2px 0 0 0;
}

.button-conversion__info {
  background: #fff;
  border: solid 1px #ccc;
  border-radius: 5px;
  box-sizing: border-box;
  font-size: 12px;
  margin: 10px auto 0 auto;
  padding: 12px 0;
  text-align: center;
  width: 100%;
}

.button-conversion__info strong {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 0 5px;
  margin: 0 0 8px;
  font-size: 18px;
  font-weight: bold;
  line-height: 1;
}

.button-conversion__info span {
  color: #05aa22;
}

.button-conversion__info .material-icons {
  color: #05aa22;
  font-size: 18px;
}

.detail_main .button-conversion .conversion-box.catalog a {
  box-sizing: border-box;
  color: #fff;
  display: inline-block;
  font-weight: normal;
  line-height: 1;
  padding: 8px 0;
  text-decoration: none;
  height: auto;
  width: 100%;
}

.detail_main .button-conversion .cvbtn-box {
  display: flex;
  flex-wrap: wrap;
}

.detail_main .heading .button-conversion.top {
  margin: 0 auto 20px;
}

@media (max-width: 320px) {
  .cv-button-subtext {
    font-size: 10px;
  }
}

@media only screen and (max-width: 359px) {
  .button-conversion .conversion-box-right {
    margin: 0px 8px 12px;
  }
}

@media only screen and (min-width:768px) {
  .conversion-box-right>a {
    padding: 7px 0;
  }

  .detail_main .button-conversion .cvbtn-box {
    flex-wrap: nowrap;
  }

  .button-conversion {
    align-items: center;
    border: solid 1px #ccc;
    display: flex;
    gap: 0 10px;
    flex-wrap: wrap;
    height: auto;
    justify-content: center;
    line-height: 1;
    text-align: center;
    margin: 16px auto 20px;
  }

  .section.detail-fv .button-conversion h2.txt-lead {
    background-color: #f5f5f5;
    border-bottom: none;
    display: block;
    font-size: 16px;
    font-weight: bold;
    line-height: 28px;
    margin: 0;
    padding: 0;
    width: 100%;
  }

  .cv-button-subtext {
    font-size: 14px;
  }

  .detail_main .button-conversion .conversion-box-right,
  .detail_main .visiting-carve-button-xs {
    margin: 0 0 12px 0;
    justify-content: space-between;
  }

  .detail_main .button-conversion .conversion-box-right,
  .detail_main .button-conversion .cvBtn-4569 .conversion-box-right,
  .detail_main .button-conversion .cvBtn-4569 .conversion-box-right.cv-button-orange,
  .detail__other-review .heading.detail-fv .regist,
  .button-conversion .conversion-box-right {
    width: 40%;
    margin: 0;
  }

  .button-conversion__tel {
    width: 40%;
    margin: 0 auto 10px;
  }

  .button-conversion__info {
    order: 5;
    margin: 0 auto 16px;
    width: 400px;
    padding: 7px 0 3px;
  }

  .button-conversion__info strong {
    gap: 0 2px;
    margin: 0 0 3px;
    font-size: 16px;
  }

  .button-conversion__info span,
  .button-conversion__info .material-icons {
    font-size: 16px;
  }

}

@media only screen and (min-width: 768px) and (max-width: 1040px) {
  .button-conversion {
    width: 34%;
  }
}

@media only screen and (min-width: 1024px) {

  .detail_main .button-conversion .conversion-box-right,
  .detail_main .button-conversion .cvBtn-4569 .conversion-box-right,
  .detail_main .button-conversion .cvBtn-4569 .conversion-box-right.cv-button-orange,
  .detail__other-review .heading.detail-fv .regist,
  .button-conversion .conversion-box-right {
    width: 400px;
    margin: 0;
  }

  .button-conversion__tel {
    width: 400px;
    margin: 0 auto 10px;
  }
}
