/* 見学予約／資料請求フォーム */
* {
  -webkit-text-size-adjust: none;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  margin: 0;
  padding: 0;
}

body {
  color: #232b39;
  font-family: "Hiragino Kaku Gothic ProN", "Hiragino Sans", "BIZ UDPGothic", "Yu Gothic Medium", sans-serif;
  font-size: 16px;
  line-height: 1;
  min-width: 320px;
}

a {
  color: #05aa22;
}

nav ul,
li {
  list-style: none;
}

main {
  display: block;
}

select {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  line-height: 1;
}

select::-ms-expand {
  display: none;
}

:focus {
  outline: none;
}

textarea:focus {
  outline: none;
}

.mb_8 {
  margin-bottom: 8px;
}

.mb_16 {
  margin-bottom: 16px;
}

.mb_20 {
  margin-bottom: 20px;
}

.mb_30 {
  margin-bottom: 30px;
}

.mb_40 {
  margin-bottom: 40px;
}

.mb_48 {
  margin-bottom: 48px;
}

.mb_100 {
  margin-bottom: 100px;
}

.mt_16 {
  margin-top: 24px;
}

.mt_24 {
  margin-top: 24px;
}

.mt_32 {
  margin-top: 32px;
}

.mt_40 {
  margin-top: 40px;
}

.pb_10 {
  padding-bottom: 10px;
}

.pb_20 {
  padding-bottom: 20px;
}

.visible-xs {
  display: block;
}

.visible-md {
  display: none;
}

.color-orange {
  color: #fc8217;
}

/* iOSでのデフォルトスタイルをリセット */
input[type="submit"],
input[type="button"] {
  border-radius: 0;
  -webkit-box-sizing: content-box;
  -webkit-appearance: button;
  -moz-appearance: button;
  appearance: button;
  border: none;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  cursor: pointer;
}

input[type="submit"]::-webkit-search-decoration,
input[type="button"]::-webkit-search-decoration {
  display: none;
}

input[type="submit"]::focus,
input[type="button"]::focus {
  outline-offset: -2px;
}

/* 直接記載されていたスタイル */
input[type="radio"] {
  transform-origin: right;
  transform: scale(1.8, 1.8);
  -moz-transform-origin: right;
  -moz-transform: scale(1.8, 1.8);
  -webkit-transform-origin: right;
  -webkit-transform: scale(1.8, 1.8);
}

/* 直接記載されていたスタイル regist_bosekiはテンプレに直書きされているので機会があれば削除する */
textarea.mb24.width-all {
  border: #bbb solid 1px;
  border-radius: 5px;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  padding: 10px;
  width: 100%;
  font-family: sans-serif;
  font-size: 14px;
}

@media (min-width: 768px) {
  textarea.mb24.width-all {
    font-size: 16px;
  }
}

/* ヘッダー */
.header_form {
  border-bottom: 1px solid #d5d5d5;
  border-top: 2px solid #05aa22;
  margin-bottom: 20px;
}

.header_form .blk_header {
  align-items: center;
  display: flex;
  height: 48px;
  justify-content: center;
  position: relative;
}

.header_form .blk_header>a {
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
}

.header_form .img_logo {
  height: auto;
  left: 10px;
  position: absolute;
  width: 78px;
}

.header_form .ttl_form {
  font-size: 1rem;
  font-weight: bold;
}

/* フォーム */
.wrap_form {
  margin: 0 10px 67px;
  position: relative;
}

.wrap_form .ttl_h2,
.wrap_form .ttl_h3 {
  font-size: 0.875rem;
  font-weight: bold;
  line-height: 1.5;
  margin-bottom: 8px;
}

.wrap_form input {
  background: #fff;
}

.wrap_form input.js-required:-moz-placeholder-shown {
  background: #fff5f5;
  color: #999;
}

.wrap_form input.js-required:-ms-input-placeholder {
  background: #fff5f5;
  color: #999;
}

.wrap_form input.js-required:placeholder-shown {
  background: #fff5f5;
  color: #999;
}

.wrap_form select:invalid {
  background: #fff5f5;
  color: #232b39;
}

.wrap_form select,
.wrap_form select option {
  background: #fff;
  color: #232b39;
}

.wrap_form textarea {
  border: #bbb solid 1px;
  border-radius: .25rem;
  line-height: 1.5;
  padding: 1rem;
  min-height: 10rem;
  width: 100%;
}

/* ご希望の霊園 */
.blk_cemetery {
  border: 1px solid #ddd;
  border-radius: .375rem;
  display: flex;
  margin-bottom: 1.5rem;
  padding: .625rem;
}

.wrap__modal--inr .blk_cemetery {
  border: none;
  border-radius: 0;
  margin-bottom: 0;
  padding: 0;
}

.blk_cemetery .img_cemetery {
  height: 88px;
  margin-right: 10px;
  -o-object-fit: cover;
  object-fit: cover;
  width: 135px;
}

.wrap_form__complete .blk_cemetery .img_cemetery {
  height: 73px;
  width: 120px;
}

.blk_cemetery .box_txt {
  font-size: 0.875rem;
  line-height: 1.5;
}

.blk_cemetery .open_detail {
  margin-top: 2px;
}

.blk_cemetery .open_detail>a {
  color: #232b39;
  font-size: 0.75rem;
}

.blk_cemetery .ttl_cemetery {
  font-size: 1rem;
  font-weight: bold;
  margin-bottom: 2px;
}

.blk_cemetery .txt_pdf {
  color: #d94372;
  font-size: 0.75rem;
  margin-top: 2px;
}

.wrap_more .txt_pdf {
  color: #d94372;
  font-size: 0.75rem;
}

.mb_email,
.mb_tel {
  margin-bottom: 16px;
}

/* モーダル */
.wrap_form .modal {
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  display: none;
  height: 100vh;
  left: 0;
  position: fixed;
  top: 0;
  width: 100%;
  z-index: 2;
}

.wrap_form .modal_bg {
  background: rgba(0, 0, 0, 0.6);
  height: 100vh;
  left: 0;
  position: fixed;
  top: 0;
  width: 100%;
}

.wrap_form .modal_container {
  background: #fff;
  border-radius: 5px;
  color: #232b39;
  left: 50%;
  position: absolute;
  top: 50%;
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  width: 94%;
}

.wrap_form .modal_header {
  align-items: center;
  border-bottom: 1px solid #ccc;
  display: flex;
  height: 48px;
  justify-content: center;
  position: relative;
  text-align: center;
}

.wrap_form .modal_header h3 {
  font-size: 15px;
  font-weight: bold;
  line-height: 1;
  margin: 0;
  padding: 0 30px 0 0;
}

.wrap_form .modal_header .modal_close {
  background: #fff;
  border: 1px solid #ccc;
  border-radius: 4px;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  cursor: pointer;
  display: inline-block;
  height: 24px;
  position: absolute;
  right: 12px;
  top: 12px;
  width: 24px;
}

.wrap_form .modal_header .modal_close::before {
  color: #ccc;
  content: "";
  font-family: Material Icons;
  font-size: 24px;
  position: absolute;
  right: -1px;
  text-decoration: inherit;
  top: -1px;
}

.wrap_form .modal_body {
  display: -ms-grid;
  display: grid;
  font-size: 12px;
  grid-auto-rows: auto;
  -ms-grid-columns: 160px 1fr;
  grid-template-columns: 160px 1fr;
  padding: 10px 10px 20px;
}

.wrap_form .modal_body figure {
  -ms-grid-column: 1;
  grid-column: 1/2;
  -ms-grid-row: 1;
  grid-row: 1/4;
  margin: 0 10px 10px 0;
}

.wrap_form .modal_body figure>img {
  height: auto;
  max-height: 112.5px;
  max-width: 150px;
  -o-object-fit: cover;
  object-fit: cover;
  width: 100%;
}

.wrap_form .modal_body .blk_rating {
  align-items: center;
  display: flex;
  margin-bottom: 5px;
}

.wrap_form .modal_body .blk_rating .icon_stars {
  letter-spacing: -3px;
  margin: 2px 5px 0 0;
}

.wrap_form .modal_body .blk_rating .icon_stars i {
  color: #ff7700;
  display: inline-flex;
  font-family: "Material Icons";
  font-size: 1rem;
  font-style: normal;
}

.wrap_form .modal_body .blk_rating .point_rating em {
  font-size: 0.875rem;
  font-style: normal;
  font-weight: 600;
  margin-right: -5px;
}

.wrap_form .modal_body .list_address {
  font-size: 0.875rem;
  -ms-grid-column: 2;
  grid-column: 2/3;
  -ms-grid-row: 1;
  grid-row: 1/2;
  line-height: 1.3;
}

.wrap_form .modal_body .item_address {
  margin-bottom: 5px;
}

.wrap_form .modal_body .item_address::before {
  color: #05aa22;
  content: "\e55f";
  display: inline-block;
  font-family: "Material Icons";
  font-size: 1rem;
  margin-top: -4px;
  vertical-align: middle;
}

.wrap_form .modal_body .item_access {
  margin-bottom: 5px;
}

.wrap_form .modal_body .item_access::before {
  color: #05aa22;
  content: "\e536";
  display: inline-block;
  font-family: "Material Icons";
  font-size: 1rem;
  margin-top: -4px;
  vertical-align: middle;
}

.wrap_form .modal_body .item_type {
  -ms-grid-column: 2;
  grid-column: 2/3;
  -ms-grid-row: 2;
  grid-row: 2/3;
}

.wrap_form .modal_body .item_facility {
  -ms-grid-column: 1;
  grid-column: 1/3;
  -ms-grid-row: 5;
  grid-row: 5/6;
}

.wrap_form .modal_body .list_icon {
  -ms-grid-column: 2;
  grid-column: 2/3;
  -ms-grid-row: 3;
  grid-row: 3/4;
}

.wrap_form .modal_body .item_price {
  -ms-grid-column: 1;
  grid-column: 1/3;
  -ms-grid-row: 6;
  grid-row: 6/7;
}

.wrap_form .modal_body dl {
  line-height: 1.3;
  margin-bottom: 4px;
}

.wrap_form .modal_body dl dt {
  display: inline;
  font-size: 12px;
}

.wrap_form .modal_body dl dd {
  display: inline;
  font-size: 14px;
}

.wrap_form .modal_body .list_icon li {
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  border-radius: 2px;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  height: 24px;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  margin: 0 6px 0 0;
  padding: 0 8px;
}

.wrap_form .modal_body .list_icon .item_type {
  background: #f3fff5;
  border: 1px solid #05aa22;
}

.wrap_form .modal_body .list_icon .item_religious {
  background: #fbf3fc;
  border: 1px solid #924699;
}

.wrap_form .modal_body .item_facility dd>span::before {
  content: " / ";
}

.wrap_form .modal_body .item_facility dd>span:first-child::before {
  content: none;
}

.wrap_form .modal_body .item_price {
  background: #f9f7f5;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  line-height: 20px;
  margin: 0;
  padding: 5px 10px;
}

.wrap_form .modal_body .item_price dt {
  margin-right: 10px;
}

.wrap_form .modal_body .item_price dd>span::before {
  content: " / ";
}

.wrap_form .modal_body .item_price dd>span:first-child::before {
  content: none;
}

.wrap_form .modal_body .item_price em {
  color: #ed702d;
  font-style: normal;
}

.wrap_form .modal_footer {
  align-items: center;
  background: #999;
  border-radius: 0 0 5px 5px;
  display: flex;
  height: 72px;
  justify-content: center;
}

.wrap_form .modal_footer .modal_button {
  background: #fff;
  border-radius: 4px;
  display: inline-block;
  line-height: 48px;
  margin: auto;
  max-width: 200px;
  text-align: center;
  width: 50%;
}

.wrap_form .modal_footer .modal_button a {
  color: #232b39;
  display: block;
  font-size: 16px;
  font-weight: bold;
  text-decoration: none;
}

/* ステップバー */
.wrap_form .bar_step {
  align-items: center;
  color: #05aa22;
  display: flex;
  font-size: 0.875rem;
  font-weight: bold;
  line-height: 1.5;
  margin: 32px auto 10px;
  position: relative;
  width: 90%;
}

.wrap_form .bar_step::before {
  background: #d5d5d5;
  border-radius: 4px;
  content: "";
  display: block;
  height: 8px;
  position: absolute;
  left: 34%;
  width: 66%;
}

.wrap_form .bar_step::after {
  background: #05aa22;
  border-radius: 4px;
  content: "";
  display: block;
  height: 8px;
  left: 34%;
  position: absolute;
  width: 66%;
  z-index: 1;
}

.wrap_form .bar_step.rest_visit_1::after {
  width: 33%;
}

.wrap_form .bar_step.rest_1::after {
  width: 44%;
}

.wrap_form .bar_step.rest_2::after {
  width: 22%;
}

.wrap_form .bar_step>span {
  font-size: 1.125rem;
  margin-top: -2px;
}

select {
  line-height: 1;
}

#cboxClose {
  height: 0px;
  width: 0px;
}

.wrap_selection .blk_materials_check {
  align-items: center;
  display: flex;
  flex-wrap: nowrap;
  justify-content: space-between;
  margin-bottom: 16px;
}

.wrap_selection .blk_materials_check label {
  align-items: center;
  background: #fff5f5;
  border: 1px solid #bbb;
  border-radius: 5px;
  box-sizing: border-box;
  display: flex;
  font-size: 0.875rem;
  height: 48px;
  padding-left: 42px;
  position: relative;
  width: 49%;
}

.wrap_selection .blk_materials_check input[type="radio"] {
  visibility: hidden;
  position: absolute;
}

.wrap_selection .blk_materials_check input[type="radio"]+label::before {
  background: #fff;
  border: 2px solid #ddd;
  border-radius: 50%;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  content: "";
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  height: 22px;
  left: 0;
  margin: 0 10px;
  position: absolute;
  width: 22px;
}

.wrap_selection .blk_materials_check input[type="radio"]:checked+label {
  background: #ecf4e1;
}

.wrap_selection .blk_materials_check input[type="radio"]:checked+label::after {
  background: #05aa22;
  border-radius: 50%;
  content: "";
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  height: 16px;
  margin: 0 10px;
  position: absolute;
  left: 3px;
  width: 16px;
}

.wrap_selection .section_means .blk_online_check .txt_att {
  font-size: 14px;
  position: relative;
  left: 14px;
  margin: 20px 0 10px 0;
  padding: 0;
  line-height: 1;
  top: -4px;
}

.wrap_selection .blk_materials_check .txt_att {
  font-size: 14px;
  position: relative;
  left: 14px;
  top: -10px;
  margin: 0;
  padding: 0;
  line-height: 1;
}

.wrap_selection .blk_materials_check label small {
  font-size: 14px;
}

.blk_selection {
  margin-bottom: 32px;
}

.wrap_selection .blk_selection_ttl .list_means {
  list-style: none;
  margin: 0 0 10px 0;
  padding: 0;
}

.wrap_selection .blk_selection_check {
  margin: 0;
}

.wrap_form .blk_reserve dl {
  align-items: center;
  display: flex;
  flex-wrap: nowrap;
  justify-content: space-between;
  margin-bottom: 16px;
}

.wrap_form .blk_reserve dl dt {
  font-size: 0.875rem;
  font-weight: bold;
  display: block;
  line-height: 1.5;
  width: 21%;
}

.wrap_form .blk_reserve dl dd {
  display: flex;
  flex-wrap: nowrap;
  justify-content: flex-end;
  width: 79%;
}

.wrap_form .blk_reserve .select_time {
  margin-left: 5px;
  position: relative;
  width: 44%;
}

.wrap_form .blk_reserve .select_time::before {
  border-top: solid 3px #05aa22;
  border-right: solid 3px #05aa22;
  content: "";
  height: 8px;
  position: absolute;
  right: 10px;
  top: 16px;
  -webkit-transform: rotate(135deg);
  -ms-transform: rotate(135deg);
  transform: rotate(135deg);
  width: 8px;
}

.wrap_form .blk_reserve input,
.wrap_form .blk_reserve select {
  color: #232b39;
  font-size: 0.875rem;
  height: 48px;
  border-radius: 5px;
  border: #bbb solid 1px;
  padding-left: 10px;
  text-align: left;
  width: 100%;
}

#footer {
  background: #212634;
}

#footer address {
  font-style: normal;
  font-size: 12px;
  color: #fff;
  line-height: 1;
  padding: 24px 0 26px 0;
  text-align: center;
}

#nav {
  margin: 0;
}

.wrap_selection .blk_selection_ttl .name_selection {
  margin: 17px 0 0 0;
}

#contents-onecol-compelete form {
  margin: 0;
}

:focus {
  outline: none;
}

textarea:focus {
  outline: none;
}

.section__form--regist input[type="text"] {
  border: #bbb solid 1px;
  border-radius: 5px;
  height: 48px;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  padding: 0 10px;
  width: 40%;
  font-size: 0.875rem;
}

.section__form--regist .input_address input[type="text"] {
  margin-bottom: 16px;
  width: 100%;
}

.section__form--regist .input_address_end input[type="text"] {
  margin-bottom: 40px;
  width: 100%;
}

.blk_reserve input[type="text"] {
  width: 54%;
}

.section__form--regist input[type="number"],
.section__form--regist input[type="email"],
.section__form--regist input[type="tel"],
.section__form--regist select {
  border: #bbb solid 1px;
  border-radius: 5px;
  height: 48px;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  padding: 0 8px;
  width: 100%;
  font-size: 0.875rem;
}

.section__form--regist input[type="text"]:focus,
.section__form--regist textarea:focus,
div:focus {
  background: #fff;
}

.section__form--regist input[type="text"]:focus,
.section__form--regist input[type="tel"]:focus,
.section__form--regist input[type="email"]:focus,
.section__form--regist select:focus,
.section__form--regist textarea:focus,
div:focus {
  outline: #03aa22;
  border: #03aa22 solid 2px !important;
  background: #fff;
}

.formErrorContent {
  display: block;
  border-radius: 5px;
  color: #d22d5e;
  font-weight: normal;
  background: #fcf2f6;
  border: #d22d5e solid 2px;
  line-height: 1;
  padding: 10px;
  margin: 8px 0 0 0;
  font-size: 13px;
}

div#error-state,
div#error-konyu_schedule {
  margin: 0 0 20px 0;
}

.section_desired .blk_selection:last-child {
  margin-bottom: 0;
}

select {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  background: #fff;
  color: #232b39;
  padding: 0 10px;
}

select::-ms-expand {
  display: none;
}

/*element 擬似サポート*/
.element__select {
  position: relative;
  margin-bottom: 16px;
}

.element__select::after {
  border-top: solid 3px #05aa22;
  border-right: solid 3px #05aa22;
  content: "";
  height: 8px;
  position: absolute;
  right: 10px;
  top: 16px;
  -webkit-transform: rotate(135deg);
  -ms-transform: rotate(135deg);
  transform: rotate(135deg);
  width: 8px;
}

/*element icon*/
.icon__statement--red,
.icon__statement--green,
.icon__statement--basic {
  background: #fff;
  border-radius: 2px;
  display: inline-block;
  text-align: center;
  width: 36px;
  margin: 0 0 0 8px;
  height: 22px;
  line-height: 22px;
  font-weight: bold;
  font-size: 0.8125rem;
}

.icon__statement--red {
  border: #eb5a3c solid 1px;
  color: #eb5a3c;
}

.icon__statement--green {
  border: 1px solid #05aa22;
  border-radius: 2px;
  color: #05aa22;
}

.icon__statement--basic {
  border: #999 solid 1px;
  color: #999 !important;
}

.section__form--regist .icon__statement--red,
.section__form--regist .icon__statement--green,
.section__form--regist .icon__statement--basic {
  display: inline-block !important;
  margin: 0 0 0 10px;
}

.wrap_form .blk_reserve dl dt .icon__statement--red,
.wrap_form .blk_reserve dl dt .icon__statement--green,
.wrap_form .blk_reserve dl dt .icon__statement--basic {
  margin: 2px 0 0 0 !important;
  top: auto;
}

.section__form--regist .ttl__h3--form,
.section__form--regist .ttl__h4--form {
  color: #232b39;
  font-size: 0.875rem;
  line-height: 1;
  padding: 0;
}

.section__form--regist .ttl__h3--form {
  font-weight: bold;
  margin: 0 0 8px;
}

.section__form--regist .ttl__h4--form {
  font-weight: normal;
  text-align: right;
  width: 2em;
}

.form__section--name {
  align-items: center;
  display: flex;
  flex-wrap: nowrap;
  justify-content: space-between;
  margin: 0 0 16px;
  padding: 0;
}

.form__section--name li {
  margin: 0 0 22px 0;
  padding: 0;
}

.form__section--name li:last-child {
  margin: 0;
}

.section__form--regist .form__section--zip {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 16px;
}

.section__form--regist .form__section--zip input[type="text"] {
  width: 91%;
}

.section__form--regist select {
  font-size: 0.875rem;
  margin: 0;
  padding: 0 10px;
}

/*footer*/
.footer__form {
  background: #212634;
  color: #fff;
}

.footer__form--inr {
  padding: 15px 12px 0 12px;
  display: flex;
  justify-content: center;
}

.footer__form--inr--image {
  display: block;
  width: 65px;
  height: 75px;
}

.footer__form--inr--txt {
  font-size: 0.8125rem;
  line-height: 1.8;
  margin: 0;
  padding: 0 0 0 10px;
}

.footer__form address {
  display: block;
  padding: 0 0 26px 0;
  font-size: 12px;
  text-align: center;
  font-style: normal;
}

.footer__form p.to-top {
  color: #fff;
  padding: 0;
  margin: 0;
  text-align: center;
}

.footer__form p.to-top a {
  display: block;
  font-size: 13px;
  padding: 0 0 10px 0;
  line-height: 1;
}

.footer__form p.to-top a,
.footer__form p.to-top a:hover,
.footer__form p.to-top a:visited {
  text-decoration: none;
  color: #fff;
}

.footer__form p.to-top a span {
  position: relative;
  padding: 0 0 0 30px;
}

.footer__form p.to-top a span::before {
  font-family: Material Icons;
  content: "expand_less";
  color: #fff;
  font-size: 30px;
  line-height: 1;
  position: absolute;
  left: 0;
  top: 50%;
  margin: -15px 0 0;
  -webkit-font-feature-settings: "liga";
  font-feature-settings: "liga";
}

/*カレンダーの角丸*/
#cboxLoadedContent {
  border-radius: 5px;
}

#cboxContent {
  background: none;
  margin-top: 0;
}

#cboxClose {
  position: absolute;
  top: 0;
  right: 0;
  display: block;
  background: none;
  width: 40px;
  height: 40px;
  color: inherit;
  font-size: 1.1em;
}

/*カレンダーが選択された時の枠線を削除＆角丸*/
.blk_selection .section__form--regist input[type="text"]:focus,
.blk_selection .section__form--regist select:focus,
.blk_selection .section__form--regist textarea:focus,
div:focus {
  border-radius: 5px;
  outline: none;
  border: none !important;
}

/* submit欄 */
.blk_submit {
  margin: 0 10px 40px;
}

.blk_submit.submit_complete {
  margin: 40px 10px 40px;
}

.blk_submit .btn_submit {
  align-items: center;
  background: #05aa22;
  border: none;
  border-radius: 4px;
  -webkit-box-shadow: 0px 2px 1px 1px #037817;
  box-shadow: 0px 2px 1px 1px #037817;
  color: #fff;
  cursor: pointer;
  display: flex;
  font-size: 1rem;
  font-weight: bold;
  height: 44px;
  justify-content: center;
  line-height: 1;
  margin: 0 auto 20px;
  max-width: 480px;
  padding: 0;
  position: relative;
  width: 256px;
}

.blk_submit .btn_submit input[type="submit"] {
  -webkit-appearance: button;
  -moz-appearance: button;
  appearance: button;
  background: none;
  border: none;
  -webkit-box-sizing: content-box;
  box-sizing: border-box;
  cursor: pointer;
  color: #fff;
  font-size: 1rem;
  font-weight: bold;
}

.blk_submit .btn_submit input[type="submit"]::-webkit-search-decoration {
  display: none;
}

.blk_submit .btn_submit input[type="submit"]:focus {
  outline-offset: -2px;
}

.blk_submit .txt_agree {
  font-size: 0.875rem;
  line-height: 1.8;
  margin-bottom: 14px;
  text-align: center;
}

.blk_submit .txt_agree a {
  color: #05aa22;
  font-weight: bold;
}

.blk_submit .txt_attention {
  font-size: 0.75rem;
  line-height: 1.8;
  text-align: center;
}

/* アコーディオン */
.wrap_more {
  position: relative;
}

.wrap_more_check {
  display: none;
}

.btn_next {
  align-items: center;
  display: block;
  background: #05aa22;
  border: none;
  border-radius: 4px;
  box-shadow: 0px 2px 1px 1px #037817;
  color: #fff;
  cursor: pointer;
  display: flex;
  font-size: 16px;
  font-weight: bold;
  height: 44px;
  justify-content: center;
  margin: 0 auto 40px;
  line-height: 1;
  text-align: center;
  width: 256px;
}

.btn_next.disabled {
  background: #aaa;
  -webkit-box-shadow: 0px 2px 1px 1px rgba(0, 0, 0, 0.5);
  box-shadow: 0px 2px 1px 1px rgba(0, 0, 0, 0.5);
}

.btn_next.mb {
  margin: 0 auto 32px;
}

.wrap_more_content {
  background: #fff;
  color: #232b39;
  font-size: 0.875rem;
  height: 0;
  margin: 0 0;
  overflow: hidden;
}

.wrap_more_check:checked~.wrap_more_content {
  display: flex;
  flex-wrap: wrap;
  height: auto;
  margin: 0;
  padding: 10px 0;
  -webkit-transform: translate(0, 0);
  -ms-transform: translate(0, 0);
  transform: translate(0, 0);
  -webkit-transition: 0.2s;
  -o-transition: 0.2s;
  transition: 0.2s;
}

.wrap_more_check:checked~.bar_step {
  display: none;
}

.wrap_more_check:checked~.btn_next {
  display: none;
}

/* アコーディオン2 */
.wrap_more_check {
  display: none;
}

.icon_zip {
  display: inline;
  font-size: 1.375rem;
  font-style: normal;
  font-weight: bold;
}

.label_material {
  align-items: center;
  background: #fff5f5;
  border: 1px solid #bbb;
  border-radius: 5px;
  display: flex;
  font-size: 0.875rem;
  height: 48px;
  margin-bottom: 8px;
  position: relative;
  width: 100%;
}

.wrap_more input[type="radio"] {
  visibility: hidden;
  position: absolute;
}

.wrap_more input[type="radio"]:checked~label {
  background: #fff;
}

.wrap_more input#material_pdf[type="radio"]:checked~.pdf,
.wrap_more input#material_print[type="radio"]:checked~.print {
  background: #ecf4e1;
  border: 1px solid #05aa22;
}

.wrap_more .label_material::before {
  background: #fff;
  border: #ddd solid 2px;
  border-radius: 50%;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  content: "";
  height: 22px;
  margin: 0 5px 0 10px;
  width: 22px;
}

.wrap_more input#material_pdf[type="radio"]:checked~.pdf::after,
.wrap_more input#material_print[type="radio"]:checked~.print::after {
  background: #05aa22;
  border-radius: 50%;
  content: "";
  height: 16px;
  left: 3px;
  margin: 0 5px 0 10px;
  position: absolute;
  width: 16px;
}

/* 検討中の霊園リスト */
.lead_check {
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  background: #ecf4e1;
  border-radius: 4px;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  font-size: 0.875rem;
  height: 28px;
  margin-bottom: 16px;
  max-width: 100%;
  padding: 0 10px;
  position: relative;
}

.lead_check::before {
  border: 10px solid transparent;
  border-top: 10px solid #ecf4e1;
  content: "";
  left: 12px;
  position: absolute;
  top: 100%;
}

/*アウトライン*/
.list__scroll--cemetery {
  width: 100%;
  height: auto;
  overflow-x: auto;
  overflow-y: hidden;
  padding: 0 0 10px 0;
}

.list__scroll--cemetery ul {
  display: flex;
}

.list__scroll--cemetery::-webkit-scrollbar {
  height: 4px;
}

.list__scroll--cemetery::-webkit-scrollbar-track {
  border-radius: 4px;
  -webkit-box-shadow: inset 0 0 6px rgba(0, 0, 0, 0.1);
  box-shadow: inset 0 0 6px rgba(0, 0, 0, 0.1);
}

.list__scroll--cemetery::-webkit-scrollbar-thumb {
  background: rgba(0, 0, 0, 0.1);
  border-radius: 4px;
}

.list_examination {
  display: flex;
  flex-wrap: nowrap;
  width: calc(100vw - 20px);
  height: auto;
}

.list_examination>li {
  font-size: 0.875rem;
  margin-right: 20px;
}

.list_examination>li:last-child {
  margin-right: 0;
}

.list_examination .check_examination {
  position: relative;
  display: block;
  height: 100%;
}

.list_examination input[type="checkbox"] {
  display: none;
}

.list_examination input[type="checkbox"]:checked~.check_examination .blk_examination {
  border: 2px solid #05aa22;
  padding: 9px 9px 39px;
}

.list_examination input[type="checkbox"]:checked~.check_examination .blk_examination h3 {
  background: #ecf4e1;
  margin: -9px -9px 8px;
  padding: 9px 9px 6px 41px;
}

.list_examination input[type="checkbox"]:checked~.check_examination .blk_examination h3::before {
  background: #05aa22;
  border: 1px solid #05aa22;
}

.list_examination input[type="checkbox"]:checked~.check_examination .blk_examination h3::after {
  border-bottom: 2px solid #fff;
  border-right: 2px solid #fff;
  content: "";
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  height: 12px;
  left: 18px;
  margin-bottom: 2px;
  position: absolute;
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
  width: 5px;
}

.blk_examination {
  border: 1px solid #ccc;
  border-radius: 5px;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  height: 100%;
  padding: 10px 10px 40px;
  position: relative;
  width: 264px;
}

.blk_examination h3 {
  align-items: center;
  border-radius: 5px 5px 0 0;
  box-sizing: border-box;
  display: flex;
  font-size: 0.875rem;
  font-weight: bold;
  line-height: 1.5;
  margin: -10px -10px 8px;
  padding: 10px 10px 6px 42px;
}

.blk_examination h3::before {
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  background: #fff;
  border: 1px solid #bbb;
  border-radius: 4px;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  content: "";
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  height: 24px;
  left: 10px;
  margin-right: 8px;
  position: absolute;
  width: 24px;
}

.blk_examination img {
  height: 140px;
  margin: 0 auto 10px;
  -o-object-fit: cover;
  object-fit: cover;
  width: 244px;
}

.blk_examination .txt_address {
  line-height: 1.3;
  margin-bottom: 5px;
}

.blk_examination .txt_address::before {
  color: #05aa22;
  content: "\e55f";
  display: inline-block;
  font-family: "Material Icons";
  font-size: 1rem;
  margin-top: -4px;
  vertical-align: middle;
}

.blk_examination .txt_access {
  line-height: 1.3;
  margin-bottom: 5px;
}

.blk_examination .txt_access::before {
  color: #05aa22;
  content: "\e536";
  display: inline-block;
  font-family: "Material Icons";
  font-size: 1rem;
  margin-top: -4px;
  vertical-align: middle;
}

.blk_examination .txt_price {
  display: flex;
  flex-wrap: nowrap;
  line-height: 1.5;
}

.blk_examination .txt_price em {
  color: #c33d64;
  font-style: normal;
}

.blk_examination .blk_rating {
  align-items: center;
  display: flex;
  margin: 5px 0;
}

.blk_examination .blk_rating .icon_stars {
  letter-spacing: -3px;
  margin: 2px 5px 0 0;
}

.blk_examination .blk_rating .icon_stars i {
  color: #ff7700;
  display: inline-flex;
  font-family: "Material Icons";
  font-size: 1rem;
  font-style: normal;
}

.blk_examination .blk_rating .point_rating em {
  font-style: normal;
  font-weight: 600;
  margin-right: -5px;
}

.check_examination .link_detail {
  bottom: 0;
  margin: auto;
  padding: 10px 0;
  position: absolute;
  text-align: center;
  width: 264px;
}

.check_examination .link_detail>a {
  color: #232b39;
}

.ttl_visit {
  border-left: 8px solid #05aa22;
  font-size: 1rem;
  font-weight: bold;
  line-height: 24px;
  margin-bottom: 16px;
  padding-left: 8px;
}

.lead_visit {
  background: #fff6d7;
  border-radius: 4px;
  font-size: 0.875rem;
  margin-bottom: 16px;
  padding: 8px 0;
  position: relative;
  text-align: center;
  width: 100%;
  line-height: 1.5;
}

.lead_visit::before {
  border: 10px solid transparent;
  border-top: 10px solid #fff6d7;
  content: "";
  left: calc(50% - 10px);
  position: absolute;
  top: 100%;
}

.lead_visit>em {
  font-style: normal;
  font-weight: bold;
}

.ttl_complete {
  font-size: 1.125rem;
  font-weight: bold;
  line-height: 1.5;
  margin-bottom: 16px;
  text-align: center;
}

.txt_complete {
  font-size: 0.875rem;
  line-height: 1.5;
  padding: 0 10px 28px;
}

.txt__complete--nospace {
  font-size: 0.875rem;
  line-height: 1.5;
  padding: 0 .625rem;
}

.txt_date {
  font-size: 0.75rem;
  font-weight: bold;
  margin-top: 6px;
}

.wrap_footer {
  background: #f5f5f5;
  overflow: hidden;
}

.wrap_footer .wrap_att {
  background: #f5f5f5;
  position: relative;
}

.wrap_footer .wrap_att_check {
  display: none;
}

.wrap_footer .ttl_link {
  margin: 0;
}

.wrap_footer .wrap_att_label {
  align-items: center;
  display: flex;
  font-size: 1rem;
  font-weight: normal;
  height: 48px;
  justify-content: center;
  padding: 0 10px;
  width: 100%;
}

.wrap_footer .wrap_att_label::after {
  border-top: solid 2px #232b39;
  border-right: solid 2px #232b39;
  content: "";
  height: 6px;
  position: absolute;
  right: 10px;
  -webkit-transform: rotate(135deg);
  -ms-transform: rotate(135deg);
  transform: rotate(135deg);
  width: 6px;
}

.wrap_footer .wrap_att_check:checked~.ttl_link .wrap_att_label::after {
  border-top: solid 2px #232b39;
  border-right: solid 2px #232b39;
  content: "";
  height: 6px;
  position: absolute;
  right: 10px;
  -webkit-transform: rotate(-45deg);
  -ms-transform: rotate(-45deg);
  transform: rotate(-45deg);
  width: 6px;
}

.wrap_footer .list_att {
  color: #232b39;
  font-size: 0.75rem;
  height: 0;
  margin: 0 10px;
  overflow: hidden;
}

.wrap_footer .list_att li {
  line-height: 1.5;
  margin-bottom: 8px;
  padding-left: 1em;
  text-indent: -1em;
}

.wrap_footer .list_att li::before {
  content: "※";
  margin-bottom: 8px;
}

.wrap_footer .wrap_att_check:checked~.list_att {
  display: flex;
  flex-wrap: wrap;
  height: auto;
  padding: 0;
  -webkit-transform: translate(0, 0);
  -ms-transform: translate(0, 0);
  transform: translate(0, 0);
  -webkit-transition: 0.1s;
  -o-transition: 0.1s;
  transition: 0.1s;
}

/* フッタナビ */
#nav .to-top {
  align-items: center;
  display: flex;
  flex-wrap: nowrap;
  height: 40px;
  justify-content: center;
}

#nav .to-top a {
  text-decoration: none;
  font-size: 0.875rem;
  position: relative;
}

#nav .to-top a::before {
  background: #05aa22;
  border-radius: 50%;
  content: "";
  height: 15px;
  position: absolute;
  right: -18px;
  width: 15px;
}

#nav .to-top a::after {
  border-top: solid 2px #fff;
  border-right: solid 2px #fff;
  content: "";
  height: 5px;
  margin-top: 6px;
  position: absolute;
  right: -14px;
  -webkit-transform: rotate(-45deg);
  -ms-transform: rotate(-45deg);
  transform: rotate(-45deg);
  width: 5px;
}

.wrap_complete {
  padding-bottom: 48px;
}

/* small SP */
@media (max-width: 359.98px) {
  .wrap_form .bar_step {
    width: 98%;
  }
}

/* PC */
@media (min-width: 768px) {
  .visible-xs {
    display: none;
  }

  .visible-md {
    display: block;
  }

  .wrapper {
    background: #fff;
    -webkit-box-shadow: 0px 0px 8px 1px rgba(0, 0, 0, 0.32);
    box-shadow: 0px 0px 8px 1px rgba(0, 0, 0, 0.32);
    margin: 0 auto;
    max-width: 1000px;
    width: 100%;
  }

  .header_form {
    border-bottom: 1px solid #d5d5d5;
    border-top: none;
    margin-bottom: 24px;
  }

  .header_form .blk_header {
    height: 56px;
    margin: 0 auto;
    width: 480px;
  }

  .header_form .ttl_form {
    font-size: 1.125rem;
  }

  .header_form .img_logo {
    left: 0;
  }

  .wrap_form {
    margin: 0 auto 127px;
    width: 480px;
  }

  .blk_cemetery {
    margin-bottom: 40px;
  }

  .blk_cemetery.adj {
    margin-bottom: 16px;
  }

  .blk_selection {
    margin-bottom: 40px;
  }

  .wrap_form .blk_reserve dl dt {
    width: 19%;
  }

  .wrap_form .blk_reserve dl dd {
    width: 81%;
  }

  .wrap_form .blk_reserve input[type="text"],
  .section__form--regist .blk_reserve input[type="text"] {
    width: 58%;
  }

  .wrap_form .blk_reserve .select_time {
    margin-left: 8px;
    width: 40%;
  }

  .wrap_form .blk_reserve input,
  .wrap_form .blk_reserve select {
    font-size: 1.125rem;
    padding-left: 10px;
  }

  .wrap_form .bar_step {
    font-size: 1rem;
    margin: 40px auto 16px;
  }

  .wrap_form .bar_step::before {
    left: 31%;
    width: 69%;
  }

  .wrap_form .bar_step::after {
    left: 31%;
    width: 69%;
  }

  .wrap_form .bar_step.rest_visit_1::after {
    width: 34.5%;
  }

  .wrap_form .bar_step.rest_1::after {
    width: 46%;
  }

  .wrap_form .bar_step.rest_2::after {
    width: 23%;
  }

  .wrap_form .bar_step>span {
    font-size: 1.25rem;
  }

  .btn_next {
    height: 56px;
    margin: 0 auto 60px;
    width: 400px;
  }

  .wrap_more,
  .section__form--regist {
    width: 480px;
  }

  .wrap_more .txt_pdf.adj {
    text-align: right;
  }

  .wrap_form .ttl_h2 {
    font-size: 1.125rem;
    margin-bottom: 16px;
  }

  .wrap_form .ttl_h3 {
    font-size: 1rem;
    margin-bottom: 10px;
  }

  .blk_cemetery .img_cemetery,
  .wrap_form__complete .blk_cemetery .img_cemetery {
    height: 112px;
    margin-right: 10px;
    width: 184px;
  }

  .blk_cemetery .ttl_cemetery,
  .wrap_form__complete .blk_cemetery .ttl_cemetery {
    font-size: 1.125rem;
    margin-bottom: 4px;
  }

  .blk_cemetery .txt_pdf {
    font-size: 0.875rem;
    margin-top: 5px;
  }

  .blk_cemetery .open_detail {
    margin-top: 10px;
  }

  .blk_cemetery .open_detail>a {
    font-size: 0.875rem;
  }

  .wrap_form .blk_reserve dl dt {
    font-size: 1rem;
  }

  .section__form--regist .form__section--zip input[type="text"] {
    width: 94%;
  }

  .section__form--regist select {
    font-size: 1rem;
  }

  .section__form--regist .form__section--zip,
  .element__select {
    margin-bottom: 2rem;
  }

  .element__select.buy {
    margin-bottom: 40px;
  }

  .wrap_selection .blk_materials_check {
    margin-bottom: 24px;
  }

  .label_material {
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    font-size: 1rem;
    width: 48%;
  }

  .label_material.print {
    margin: 0 10px 8px 0;
  }

  .label_material.pdf {
    margin: 0 0 8px;
  }

  .form__section--name {
    margin: 0 0 24px;
  }

  .mb_email,
  .mb_tel {
    margin-bottom: 24px;
  }

  .section__form--regist .input_address input[type="text"] {
    margin-bottom: 24px;
  }

  .section__form--regist .input_address_end input[type="text"] {
    margin-bottom: 40px;
  }

  .section__form--regist .ttl__h3--form,
  .section__form--regist .ttl__h4--form {
    font-size: 1rem;
    margin: 0 0 10px;
  }

  .section__form--regist input[type="text"] {
    width: 42%;
    font-size: 1.125rem;
  }

  .section__form--regist input[type="number"],
  .section__form--regist input[type="email"],
  .section__form--regist input[type="tel"] {
    font-size: 1.125rem;
  }

  .wrap_selection .blk_materials_check label {
    font-size: 1.125rem;
  }

  .blk_submit .btn_submit {
    height: 56px;
    width: 400px;
  }

  .ttl_complete {
    font-size: 1.5rem;
  }

  .ttl_visit {
    font-size: 1.125rem;
    line-height: 28px;
  }

  .txt_complete {
    font-size: 1rem;
    padding: 0 0 42px;
  }

  .txt__complete--nospace {
    font-size: 1rem;
    padding: 0;
  }

  .blk_submit {
    margin: 0 0 64px;
  }

  .list_examination {
    width: 480px;
  }

  .list_examination>li {
    margin-right: 15px;
  }

  .list_examination::-webkit-scrollbar-thumb {
    background: rgba(5, 170, 34, 0.5);
    border-radius: 10px;
    -webkit-box-shadow: 0 0 0 1px rgb(5 170 34 / 30%);
    box-shadow: 0 0 0 1px rgb(5 170 34 / 30%);
  }

  .blk_examination {
    width: 188px;
  }

  .blk_examination h3 {
    font-size: 0.9375rem;
  }

  .blk_examination img {
    height: 104px;
    width: 168px;
  }

  .check_examination .link_detail {
    width: 188px;
  }

  .lead_visit {
    font-size: 1rem;
  }

  .wrap_form .modal {
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    display: none;
    height: 100vh;
    left: 0;
    position: fixed;
    top: 0;
    width: 100%;
    z-index: 2;
  }

  .wrap_form .modal_bg {
    background: rgba(0, 0, 0, 0.6);
    height: 100vh;
    left: 0;
    position: fixed;
    top: 0;
    width: 100%;
  }

  .wrap_form .modal_container {
    background: #fff;
    border-radius: 5px;
    color: #232b39;
    max-width: 800px;
    left: 50%;
    position: absolute;
    top: 50%;
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    width: 92%;
  }

  .wrap_form .modal_header {
    align-items: center;
    border-bottom: 1px solid #ccc;
    display: flex;
    height: 48px;
    justify-content: center;
    position: relative;
    text-align: center;
  }

  .wrap_form .modal_header h3 {
    font-size: 16px;
    line-height: 1;
    margin: 0;
    padding: 0 30px;
  }

  .wrap_form .modal_header .modal_close {
    background: #fff;
    border: 1px solid #ccc;
    border-radius: 4px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    cursor: pointer;
    display: inline-block;
    height: 24px;
    position: absolute;
    right: 12px;
    top: 12px;
    width: 24px;
    color: #ccc;
  }

  .wrap_form .modal_header .modal_close::before {
    color: #ccc;
    content: "";
    font-family: Material Icons;
    font-size: 24px;
    position: absolute;
    right: -1px;
    text-decoration: inherit;
    top: -1px;
  }

  .wrap_form .modal_body {
    display: -ms-grid;
    display: grid;
    font-size: 16px;
    grid-auto-rows: auto;
    -ms-grid-columns: 340px 1fr;
    grid-template-columns: 340px 1fr;
    padding: 20px 60px;
  }

  .wrap_form .modal_body figure {
    -ms-grid-column: 1;
    grid-column: 1/2;
    -ms-grid-row: 1;
    grid-row: 1/5;
    margin-right: 60px;
    width: 280px;
  }

  .wrap_form .modal_body figure>img {
    max-height: 210px;
    max-width: 280px;
  }

  .wrap_form .modal_body .blk_rating .icon_stars {
    letter-spacing: -3px;
  }

  .wrap_form .modal_body .blk_rating .icon_stars i {
    font-size: 1.5rem;
  }

  .wrap_form .modal_body .blk_rating .point_rating em {
    font-size: 1rem;
  }

  .wrap_form .modal_body .list_address {
    font-size: 1rem;
    -ms-grid-column: 2;
    grid-column: 2/3;
    -ms-grid-row: 1;
    grid-row: 1/2;
  }

  .wrap_form .modal_body .item_address::before {
    font-size: 1.25rem;
  }

  .wrap_form .modal_body .item_access::before {
    font-size: 1.25rem;
  }

  .wrap_form .modal_body .item_type {
    -ms-grid-column: 2;
    grid-column: 2/3;
    -ms-grid-row: 2;
    grid-row: 2/3;
  }

  .wrap_form .modal_body .list_icon {
    -ms-grid-column: 2;
    grid-column: 2/3;
    -ms-grid-row: 3;
    grid-row: 3/4;
  }

  .wrap_form .modal_body .item_facility {
    -ms-grid-column: 2;
    grid-column: 2/3;
    -ms-grid-row: 4;
    grid-row: 4/5;
  }

  .wrap_form .modal_body .item_price {
    -ms-grid-column: 2;
    grid-column: 2/3;
    -ms-grid-row: 5;
    grid-row: 5/6;
  }

  .wrap_form .modal_body dl {
    line-height: 1.3;
    margin-bottom: 12px;
  }

  .wrap_form .modal_body dl dt {
    display: inline;
    font-size: 16px;
  }

  .wrap_form .modal_body dl dd {
    display: inline;
    font-size: 1rem;
  }

  .wrap_form .modal_body .list_icon li {
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    border-radius: 2px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    height: 28px;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    margin: 0 8px 0 0;
    padding: 0 8px;
  }

  .wrap_form .modal_body .list_icon {
    margin: 0 0 12px -8px;
  }

  .wrap_form .modal_body .list_icon .item_type {
    background: #f3fff5;
    border: 1px solid #05aa22;
  }

  .wrap_form .modal_body .list_icon .item_religious {
    background: #fbf3fc;
    border: 1px solid #924699;
  }

  .wrap_form .modal_body .item_facility dd>span::before {
    content: " / ";
  }

  .wrap_form .modal_body .item_facility dd>span:first-child::before {
    content: none;
  }

  .wrap_form .modal_body .item_price {
    background: #f9f7f5;
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    line-height: 26px;
    margin: 0 0 0 -16px;
    padding: 10px 0 10px 16px;
  }

  .wrap_form .modal_body .item_price dt {
    margin-right: 20px;
  }

  .wrap_form .modal_body .item_price dd>span::before {
    content: " / ";
  }

  .wrap_form .modal_body .item_price dd>span:first-child::before {
    content: none;
  }

  .wrap_form .modal_body .item_price em {
    color: #ed702d;
  }

  .wrap_form .modal_footer {
    align-items: center;
    background: #999;
    border-radius: 0 0 5px 5px;
    display: flex;
    height: 72px;
    justify-content: center;
  }

  .wrap_form .modal_footer .modal_button {
    background: #fff;
    border-radius: 4px;
    display: inline-block;
    line-height: 48px;
    margin: auto;
    max-width: 200px;
    text-align: center;
    width: 40%;
  }

  .wrap_form .modal_footer .modal_button a {
    color: #232b39;
    display: block;
    font-size: 16px;
    font-weight: bold;
    text-decoration: none;
  }

  .wrap_footer .wrap_att input#check_att {
    pointer-events: none;
  }

  .ttl_link .wrap_att_label::after {
    display: none;
  }

  .wrap_footer .wrap_att_label {
    font-size: 0.9125rem;
    font-weight: bold;
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: flex-start;
    padding: 0;
  }

  .wrap_footer .list_att {
    color: #232b39;
    font-size: 0.75rem;
    height: auto;
    margin: 0 0 24px;
    overflow: visible;
  }

  .wrap_footer .list_att li {
    line-height: 1.5;
    margin-bottom: 8px;
    padding-left: 1em;
    text-indent: -1em;
  }

  .wrap_footer .wrap_att_check:checked~.list_att {
    display: block;
    margin: 0 0 24px;
    -webkit-transform: none;
    -ms-transform: none;
    transform: none;
    -webkit-transition: none;
    -o-transition: none;
    transition: none;
  }

  .footer__form--inr {
    padding: 16px 0 0;
    margin: 0 auto;
    width: 480px;
  }

  .footer__form--inr--txt {
    font-size: 0.875rem;
  }

  #nav {
    display: none;
  }

  .list__scroll--cemetery::-webkit-scrollbar {
    height: 8px;
  }

  .list__scroll--cemetery::-webkit-scrollbar-track {
    border-radius: 8px;
    -webkit-box-shadow: inset 0 0 6px rgba(0, 0, 0, 0.1);
    box-shadow: inset 0 0 6px rgba(0, 0, 0, 0.1);
  }

  .list__scroll--cemetery::-webkit-scrollbar-thumb {
    background: rgba(0, 0, 0, 0.1);
    border-radius: 8px;
  }
}

/* かんたん一括資料請求（MOON_L1-4871） */
.fv_easy_request {
  background: right / contain no-repeat url("https://cdn.e-ohaka.com/common_img/img_person.png");
  margin: 0 10px 30px;
  padding: 10px 0;
}

.fv_easy_request h2 {
  color: #05aa22;
  font-size: 0.875rem;
  font-weight: 600;
  line-height: 1.5;
  margin-bottom: 8px;
}

.fv_easy_request .txt_lead {
  font-size: 0.875rem;
  line-height: 1.5;
  margin-right: 120px;
}

/* easy_requestのお墓のタイプ　用 */
.list_cemetery .label_cemetery {
  align-items: center;
  display: inline-flex;
  font-size: 1rem;
  height: 3rem;
  padding-left: 2.375rem;
  border: 1px solid #bbb;
  border-radius: .25rem;
  cursor: pointer;
  margin-bottom: .5rem;
  position: relative;
  width: 100%;
}

.list_cemetery span {
  align-items: center;
  display: flex;
}

.list_cemetery span::before {
  align-items: center;
  content: "";
  height: 2rem;
  width: 2rem;
}

.list_cemetery .cemetery_ippan::before {
  background: center / contain no-repeat url("https://cdn.e-ohaka.com/common_img/icon_ippan.png");
}

.list_cemetery .cemetery_eitai::before {
  background: center / contain no-repeat url("https://cdn.e-ohaka.com/common_img/icon_eitai.png");
}

.list_cemetery .cemetery_jumoku::before {
  background: center / contain no-repeat url("https://cdn.e-ohaka.com/common_img/icon_jumoku.png");
}

.list_cemetery .cemetery_nokotu::before {
  background: center / contain no-repeat url("https://cdn.e-ohaka.com/common_img/icon_nokotu.png");
}

.list_cemetery .cemetery-other::before {
  content: none;
}

/* easy_requestのお墓のタイプ用 終わり */

/* お墓のタイプ */
.list_cemetery,
.list_cemetery.label__cemetery--height,
.list-time,
.list-basic {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  margin-bottom: 2rem;
}

.list_cemetery li,
.list_cemetery.label__cemetery--height li,
.list-time li,
.list-basic li {
  width: calc(50% - 5px);
}

.label__cemetery--height li.li-join,
.list-time li.li-join {
  width: 100%;
}

.list_cemetery.label__cemetery--height .label_cemetery,
.list-time .label_cemetery,
.list-basic .label_cemetery {
  background: #fff;
  border: 1px solid #bbb;
  border-radius: .25rem;
  cursor: pointer;
  display: block;
  font-size: 0.875rem;
  height: auto;
  margin-bottom: .5rem;
  padding: .625rem;
  position: relative;
  width: 100%;
}

.label__cemetery--height .li-join .label_cemetery {
  padding: 1rem .625rem;
}

.list-time .label_cemetery,
.list-time .li-join .label_cemetery,
.list-basic .label_cemetery {
  padding: 1rem 0 1rem 2.5rem;
}

.list_cemetery.label__cemetery--height .label-disabled {
  background: #fff !important;
}

.list-time .label_cemetery,
.list-basic .label_cemetery {
  background: #fff;
}

.list_cemetery.label__cemetery--height .label-disabled,
.list-time .label-disabled {
  border: 1px solid #ccc;
  color: #ccc;
}

.list_cemetery.label__cemetery--height .label-disabled .figure__cemetery,
.list-time .label-disabled .figure__cemetery {
  opacity: .5;
}

.list_cemetery .label_cemetery::before,
.list_cemetery.label__cemetery--height .label_cemetery::before,
.list-time .label_cemetery::before,
.list-basic .label_cemetery::before {
  align-items: center;
  background: #fff;
  border: 1px solid #bbb;
  border-radius: 4px;
  box-sizing: border-box;
  content: "";
  display: inline-flex;
  height: 24px;
  left: 10px;
  margin-right: 8px;
  position: absolute;
  width: 24px;
}

.list_cemetery.label__cemetery--height .li-join .label_cemetery::before,
.list-time .li-join .label_cemetery::before,
.list-time .label_cemetery::before,
.list-basic .label_cemetery::before {
  top: 50%;
  transform: translateY(-50%);
}

.list-time .label_cemetery.label-disabled::before {
  border: 1px solid #ccc;
}

.list_cemetery input[type="checkbox"],
.list-time input[type="checkbox"],
.list-basic input[type="checkbox"] {
  visibility: hidden;
  position: absolute;
}

.list_cemetery input[type="checkbox"]:checked~.label_cemetery,
.list-time input[type="checkbox"]:checked~.label_cemetery,
.list-basic input[type="checkbox"]:checked~.label_cemetery {
  background: #ecf4e1;
  border: 1px solid #05aa22;
  font-weight: 600;
}

.list_cemetery input[type="checkbox"]:checked~.label_cemetery::before,
.list-time input[type="checkbox"]:checked~.label_cemetery::before,
.list-basic input[type="checkbox"]:checked~.label_cemetery::before {
  background: #05aa22;
  border: 1px solid #05aa22;
}

.list_cemetery input[type="checkbox"]:checked~.label_cemetery::after,
.list-time input[type="checkbox"]:checked~.label_cemetery::after,
.list-basic input[type="checkbox"]:checked~.label_cemetery::after {
  border-bottom: 2px solid #fff;
  border-right: 2px solid #fff;
  content: "";
  display: inline-flex;
  height: .75rem;
  left: 1.125rem;
  position: absolute;
  top: .8rem;
  transform: rotate(45deg);
  width: .375rem;
}

.list_cemetery .li-join input[type="checkbox"]:checked~.label_cemetery::after,
.list-time .li-join input[type="checkbox"]:checked~.label_cemetery::after {
  top: .8rem;
}

.list_cemetery.label__cemetery--height strong,
.list_cemetery.label__cemetery--height em {
  display: block;
}

.list_cemetery.label__cemetery--height strong {
  font-size: .875rem;
  padding-top: .3rem;
  margin-left: 2rem;
}

.list_cemetery.label__cemetery--height .li-join strong {
  padding-top: 0;
}

.list_cemetery.label__cemetery--height em {
  font-size: .75rem;
  font-style: normal;
  font-weight: normal;
  letter-spacing: -0.03rem;
  margin: 1rem 0 .5rem;
}

.figure__cemetery {
  aspect-ratio: 7.7 / 4;
  display: block;
  overflow: hidden;
}

.figure__cemetery img {
  width: 100%;
}

/* お墓のタイプ 終わり */

.easy_request {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}

.easy_request .ttl_h3 {
  width: 100%;
}

.wrap_content_home,
.wrap_content_other {
  background: #fff;
  color: #232b39;
  font-size: 14px;
  height: 0;
  margin: 0 0;
  overflow: hidden;
}

.wrap_check_home:checked~.wrap_content_home,
.wrap_check_other:checked~.wrap_content_other {
  display: flex;
  flex-wrap: wrap;
  height: auto;
  margin: 0;
  padding: 0 0 20px;
  transform: translate(0, 0);
  transition: 0.2s;
  width: 100%;
}

.easy_request .txt_advice {
  font-size: 0.875rem;
  line-height: 1.5;
  margin-bottom: 5px;
}

.easy_request .wrap_content_other .txt_advice {
  margin-left: 10px;
}

.easy_request .sec_content_other {
  display: flex;
  justify-content: space-between;
  margin: 0 10px;
  width: 100%;
}

.easy_request .blk_select {
  position: relative;
}

.easy_request .blk_select::after {
  border-top: solid 3px #05aa22;
  border-right: solid 3px #05aa22;
  content: "";
  height: 8px;
  position: absolute;
  right: 10px;
  top: 16px;
  -webkit-transform: rotate(135deg);
  -ms-transform: rotate(135deg);
  transform: rotate(135deg);
  width: 8px;
  z-index: -1;
}

.easy_request .sec_content_other .blk_select {
  width: calc(50% - 5px);
}

.easy_request .label_area {
  align-items: center;
  border: 1px solid #bbb;
  border-radius: 5px;
  display: inline-flex;
  font-size: 0.875rem;
  height: 48px;
  margin-bottom: 5px;
  position: relative;
  width: calc(50% - 5px);
}

.easy_request input#area_home[type="radio"]:checked~.home,
.easy_request input#area_other[type="radio"]:checked~.other {
  background: #ecf4e1;
  border: 1px solid #05aa22;
  font-weight: 600;
}

.easy_request .label_area::before {
  background: #fff;
  border: #ddd solid 2px;
  border-radius: 50%;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  content: "";
  height: 22px;
  margin: 0 5px 0 10px;
  width: 22px;
}

.easy_request input#area_home[type="radio"]:checked~.home::after,
.easy_request input#area_other[type="radio"]:checked~.other::after {
  background: #05aa22;
  border-radius: 50%;
  content: "";
  height: 16px;
  left: 3px;
  margin: 0 5px 0 10px;
  position: absolute;
  width: 16px;
}

.easy_request input[type="checkbox"] {
  visibility: hidden;
  position: absolute;
}

.easy_request select.prefectures,
.easy_request select.municipalities,
.easy_request select.sect,
.easy_request select.persons {
  background: none;
  padding: 0 10px 0;
}

.easy_request select.prefectures:focus,
.easy_request select.municipalities:focus,
.easy_request select.sect:focus,
.easy_request select.persons:focus {
  background: #ecf4e1;
  border: 1px solid #05aa22;
}

.easy_request .label_point {
  align-items: center;
  border: 1px solid #bbb;
  border-radius: 5px;
  display: inline-flex;
  font-size: 0.875rem;
  height: 48px;
  margin-bottom: 16px;
  padding-left: 38px;
  position: relative;
  width: 100%;
}

.easy_request input[type="checkbox"]:checked+.label_point {
  background: #ecf4e1;
  border: 1px solid #05aa22;
  font-weight: 600;
}

.easy_request input[type="checkbox"]:checked+.point_sect {
  margin-bottom: 8px;
}

.easy_request .label_point::before {
  align-items: center;
  background: #fff;
  border: 1px solid #bbb;
  border-radius: 4px;
  box-sizing: border-box;
  content: "";
  display: inline-flex;
  height: 24px;
  left: 10px;
  margin-right: 8px;
  position: absolute;
  width: 24px;
}

.easy_request input[type="checkbox"]:checked+.label_point::before {
  background: #05aa22;
  border: 1px solid #05aa22;
}

.easy_request input[type="checkbox"]:checked~.label_point::after {
  border-bottom: 2px solid #fff;
  border-right: 2px solid #fff;
  content: "";
  display: inline-flex;
  height: 12px;
  left: 18px;
  margin-bottom: 2px;
  position: absolute;
  transform: rotate(45deg);
  width: 5px;
}

.easy_request .add_point {
  color: #05aa22;
  display: flex;
  font-size: 0.875rem;
  font-weight: 600;
  justify-content: center;
  margin: 0 auto 30px;
  padding: 20px;
  text-align: center;
  text-decoration: underline;
  width: auto;
}

.easy_request .add_point::after {
  border-top: solid 3px #05aa22;
  border-right: solid 3px #05aa22;
  content: "";
  display: inline-flex;
  height: 8px;
  margin-left: 8px;
  transform: rotate(135deg);
  width: 8px;
}

.wrap_content_add,
.wrap_content_sect {
  background: none;
  color: #232b39;
  font-size: 14px;
  height: 0;
  margin: 0 0;
  overflow: hidden;
  width: 100%;
}

.wrap_check_add:checked~.wrap_content_add,
.wrap_check_sect:checked~.wrap_content_sect {
  display: flex;
  flex-wrap: wrap;
  height: auto;
  transform: translate(0, 0);
  transition: 0.2s;
}

.wrap_check_add:checked~.wrap_content_add {
  margin: 0;
  padding: 0 0 36px;
}

.wrap_check_sect:checked~.wrap_content_sect {
  margin: 0 10px 0;
  padding: 0 0 16px;
  width: calc(100% - 20px);
}

.wrap_content_add .section__form--regist {
  width: 100%;
}

.wrap_check_add:checked~.add_point {
  display: none;
}

.easy_request .section__form--regist {
  width: 100%;
}

.btn_submit.disabled {
  background: #aaa;
  box-shadow: 0px 2px 1px 1px rgba(0, 0, 0, 0.5);
  cursor: unset;
  pointer-events: none;
}

.ttl_easy_request {
  font-size: 1.125rem;
  font-weight: 600;
  line-height: 1.5;
  margin-bottom: 24px;
  text-align: center;
}

.list_complete {
  padding: 0 10px 28px;
}

.list_complete li {
  font-size: 0.875rem;
  line-height: 1.5;
  margin-bottom: 8px;
  padding-left: 1em;
  text-indent: -1em;
}

.txt_complete em {
  color: #eb5a3c;
  font-style: normal;
}

.link_top {
  align-items: center;
  border: 1px solid #05aa22;
  border-radius: 4px;
  display: flex;
  font-size: 1rem;
  font-weight: bold;
  height: 44px;
  justify-content: center;
  line-height: 1;
  margin: 0 auto 40px;
  max-width: 480px;
  padding: 0;
  position: relative;
  text-decoration: none;
  width: 256px;
}

/* かんたん一括資料請求（PC） */
@media (min-width: 768px) {
  .fv_easy_request {
    margin: 0 0 20px;
    padding: 0 0 30px;
  }

  .fv_easy_request h2 {
    font-size: 1.125rem;
    margin-bottom: 16px;
  }

  .fv_easy_request .txt_lead {
    font-size: 1rem;
    margin-right: 0;
  }

  .list_cemetery .label_cemetery,
  .easy_request .label_area {
    cursor: pointer;
    font-size: 1rem;
  }

  .list_cemetery {
    margin-bottom: 16px;
  }

  .wrap_check_home:checked~.wrap_content_home,
  .wrap_check_other:checked~.wrap_content_other {
    padding: 0 0 24px;
  }

  .easy_request .label_point {
    cursor: pointer;
    font-size: 1rem;
    margin-bottom: 24px;
  }

  .wrap_check_sect:checked~.wrap_content_sect {
    padding: 0 0 24px;
  }

  .wrap_check_add:checked~.wrap_content_add {
    padding: 0 0 48px;
  }

  .ttl_easy_request {
    font-size: 1.5rem;
    margin-bottom: 36px;
  }

  .link_top {
    cursor: pointer;
    font-size: 1.125rem;
    height: 56px;
    margin: 0 auto 64px;
    width: 400px;
  }
}


/*ハンドブック資料請求（MOON_L1-4906）*/
/*---------form-----------*/

.mv_pdf_request {
  align-items: center;
  background-color: #ECF4E1;
  display: flex;
  justify-content: center;
  padding: 10px;

}

.wrap_pdf_request {
  margin-right: 5px;
}

.mv_pdf_request h2 {
  color: #05aa22;
  font-size: 20px;
  font-weight: bold;
  line-height: 1.5;
  margin-bottom: 3px;
  text-align: center;
}

.mv_pdf_request ul {
  background-color: #fff;
  border-radius: 5px;
  display: inline-flex;
  flex-wrap: wrap;
  padding: 10px 10px 0;
}

.mv_pdf_request ul li {
  align-items: center;
  display: flex;
  flex-shrink: 0;
  font-size: 12px;
  margin: 0 12px 8px 0;
}

.mv_pdf_request ul li::before {
  background-color: #05aa22;
  content: "";
  display: block;
  height: 8px;
  margin-right: 5px;
  width: 8px;
}

.mv_pdf_request img {
  max-width: 75px;
  height: auto;
}

.fv_pdf_request .lead_txt,
.fv_pdf_request .ohaka_txt {
  font-size: 0.875rem;
}

.fv_pdf_request .lead_txt {
  line-height: 1.5;
  margin: 15px 0 30px;
}

.fv_pdf_request .ohaka_txt {
  border-left: solid 6px #05aa22;
  font-weight: bold;
  margin-bottom: 15px;
  padding-left: 10px;
}

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

  .mv_pdf_request {
    padding: 10px 20px;
  }

  .wrap_pdf_request {
    margin-right: 15px;
  }

  .mv_pdf_request h2 {
    font-size: 24px;
    margin-bottom: 8px;
  }

  .mv_pdf_request ul {
    padding: 10px 20px 0;
  }

  .mv_pdf_request ul li {
    font-size: 14px;
    margin: 0 15px 10px 0;
  }

  .mv_pdf_request img {
    max-width: 100px;
  }

  .fv_pdf_request .lead_txt,
  .fv_pdf_request .ohaka_txt {
    font-size: 1rem;
  }

}

/*---------complete-----------*/
.button_download-pdf {
  background: linear-gradient(to bottom, rgba(87, 221, 6, 1), rgba(5, 170, 34, 1));
  border-radius: 5px;
  border: 1px solid rgba(5, 170, 34, 1);
  box-shadow: 0 2px 4px rgb(0 0 0 / 20%);
  box-sizing: border-box;
  flex-shrink: 0;
  height: 64px;
  margin: 0 auto 10px;
  max-width: calc(100% - 20px);
  width: 320px;
}

.button_download-pdf a {
  align-items: center;
  color: #fff;
  display: inline-flex;
  height: 100%;
  justify-content: space-between;
  padding: 0 10px;
  text-decoration: none;
  width: 100%;
}

.button_download-pdf p {
  font-size: 18px;
  font-weight: bold;
  line-height: 1.2;
  text-align: center;
  text-shadow: 0 0 6px rgb(0 0 0 / 15%);
}

.button_download-pdf p span {
  font-size: 16px;
}

.button_download-pdf .i_pdf {
  font-size: 32px;
}

.wrap_download-pdf>p {
  font-size: .875rem;
  margin-bottom: 30px;
  text-align: center;
}

@media screen and (min-width: 768px) {
  .wrap_download-pdf>p {
    font-size: 1rem;
  }
}

/*----------./MOON_L1-4906----------*/

/*----------./ MOON_L1-4926----------*/
/*ヘッダー*/
.regist-hakajimai .ttl__h1 {
  font-size: 20px;
  font-weight: bold;
  margin: 20px 0 0 0;
  text-align: center;
  line-height: 1.8;
}

@media (min-width: 768px) {
  .regist-hakajimai .ttl__h1 {
    margin: 30px 0 0 0;
    line-height: 1;
  }
}

/*flow*/
.regist-hakajimai__flow {
  width: 100%;
  display: block;
  margin: 0 auto 30px auto;
}

@media (min-width: 768px) {
  .regist-hakajimai__flow {
    width: auto;
    margin: 0 auto 50px auto;
  }
}

/*inputの幅*/
.regist-hakajimai input[type="tel"].input__tel {
  width: 20%;
}

.regist-hakajimai input[type="text"].width-all {
  width: 100%;
  border: #999 solid 1px !important;
}

/*margin*/
.regist-hakajimai .mb24 {
  margin-bottom: 24px;
}

/*見出し*/
.regist-hakajimai .ttl__h2--form-hakajimai {
  font-size: 18px;
  margin: 30px 0;
  text-align: center;
  border-bottom: #ccc solid 1px;
  line-height: 1;
  padding: 0 0 10px 0;
}

.regist-hakajimai .ttl__h4--form {
  margin: 0;
}

@media (min-width: 768px) {
  .regist-hakajimai .ttl__h2--form-hakajimai {
    margin: 50px 0 30px 0;
  }

  .regist-hakajimai .ttl__h3--form {
    margin: 10px 0;
  }
}

/*注意書き*/
.regist-hakajimai__attention {
  color: #d53b47;
  font-size: 16px;
  line-height: 1.8;
  margin: 50px auto;
  font-weight: bold;
}

/*送信完了ページ*/
.regist-hakajimai__complete {
  margin: 30px 10px;
}

@media (min-width: 768px) {
  .regist-hakajimai__complete {
    margin: 50px auto;
  }
}

.regist-hakajimai__complete-ttl {
  font-size: 18px;
  line-height: 1.7;
  margin: 0 0 30px 0;
  text-align: center;
  color: #05aa22;
  font-weight: bold;
}

.regist-hakajimai__complete-lead {
  font-size: 16px;
  line-height: 2;
  margin-bottom: 50px;
}

.regist-hakajimai__information {
  display: block;
  text-decoration: none;
  background: #d53b47;
  border-radius: 6px;
  padding: 15px;
  margin: 30px 0;
  font-size: 16px;
  text-align: center;
  color: #fff;
  letter-spacing: 1px;
}

@media (min-width: 768px) {
  .regist-hakajimai__information {
    pointer-events: none;
    margin: 50px 0;
  }
}

.regist-hakajimai__information-no {
  font-size: 30px;
  font-weight: bold;
  display: block;
  font-style: normal;
  margin: 10px 0 0 0;
}

.regist-hakajimai__anchor--button {
  font-size: 18px;
  font-weight: bold;
  padding: 20px 0;
  text-align: center;
  color: #fff;
  background: #05aa22;
  text-decoration: none;
  display: block;
  border-radius: 6px;
  box-shadow: 0px 2px 1px 1px #037817;
}

.regist-hakajimai__complete_btn {
  padding: 20px 0;
}

.regist-hakajimai__complete_btn a {
  display: block;
  border: 1px solid #05aa22;
  width: 84%;
  height: 40px;
  font-size: 15px;
  border-radius: 5px;
  text-decoration: none;
  text-align: center;
  margin: 0 auto;
}

.regist-hakajimai__complete_btn a span {
  position: relative;
  color: #05aa22;
  display: block;
  line-height: 40px;
}

.regist-hakajimai__complete_btn a .material-icons {
  color: #05aa22;
  position: absolute;
  top: 6px;
}

/*エレメント*/
.red {
  color: #d53b47;
}

/*ページトップに戻る*/
.pagetop {
  position: fixed;
  right: 10px;
  bottom: 50px;
  width: 40px;
  height: auto;
  cursor: pointer;
}

.pagetop-image,
img.page-top {
  display: block;
  width: 100%;
  height: auto;
}

#colorbox {
  top: 5vh !important;
}

#colorbox,
#cboxWrapper,
#cboxContent,
#cboxLoadedContent {
  height: 90vh !important;
  max-height: 600px;
}

@media (min-width: 768px) {
  .wrap_complete {
    padding-bottom: 64px;
  }

  .wrap_footer .wrap_att {
    margin: 0 auto;
    width: 480px;
  }
}

.blk_cemetery {
  position: relative;
}

.blk_cemetery .ttl_cemetery {
  margin: 0 24px 4px 0;
}

.blk_cemetery .btn-close {
  cursor: pointer;
  position: absolute;
  top: 0;
  right: 0;
}

.blk_cemetery .btn-close i.material-icons {
  border: solid 1px #999;
  border-radius: 4px;
  color: #999;
  margin: 4px;
}

.wrap_form .ttl_h2 {
  position: relative;
}

.wrap_form .back_link {
  position: absolute;
  bottom: 0;
  right: 0;
  font-size: .75rem;
}

/* 区画タイプのご希望枠設置 */
.wrap_selection.cemetery_type .blk_materials_check {
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}

.wrap_selection.cemetery_type .blk_materials_check label {
  margin-bottom: 10px;
  background: #fff;
}

.wrap_selection.cemetery_type .blk_materials_check input[type="checkbox"] {
  visibility: hidden;
  position: absolute;
}

.wrap_selection.cemetery_type .blk_materials_check input[type="checkbox"]+label::before {
  background: #fff;
  border: 2px solid #ddd;
  border-radius: 5px;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  content: "";
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  height: 22px;
  left: 0;
  margin: 0 10px;
  position: absolute;
  width: 22px;
}

.wrap_selection.cemetery_type .blk_materials_check input[type="checkbox"]:checked+label {
  background: #ecf4e1;
}

.wrap_selection.cemetery_type .blk_materials_check input[type="checkbox"]:checked+label::before {
  background: #05aa22;
  border: 1px solid #05aa22;
}

.wrap_selection.cemetery_type .blk_materials_check input[type="checkbox"]:checked+label::after {
  border-bottom: 2px solid #fff;
  border-right: 2px solid #fff;
  content: "";
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  height: 12px;
  left: 18px;
  margin-bottom: 2px;
  position: absolute;
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
  width: 5px;
}

/* 区画タイプとはモーダル */
.info_type {
  align-items: center;
  color: #05aa22;
  display: flex;
  font-size: .8125rem;
  font-weight: bold;
  position: absolute;
  right: 0;
  top: 4px;
  cursor: pointer;
}

.info_type::before {
  border: 2px solid #05aa22;
  border-radius: 50%;
  content: '?';
  display: inline-block;
  font-size: .8rem;
  height: 12px;
  margin-right: 2px;
  text-align: center;
  width: 12px;
}

.modal-type .modal-dialog {
  height: 80%;
  max-height: 680px;
  width: 90%;
  min-width: auto;
  max-width: 600px;
}

.modal-type .modal-open:checked~.modal-wrap .modal-dialog {
  top: 10%;
}

.modal__inr--type {
  padding: 20px 10px;
  height: calc(100% - 48px);
  overflow-y: scroll;
}

.modal__inr--type .modal__inr--type--txt {
  display: block;
  border-bottom: #ddd solid 1px;
  padding: 0 0 10px 0;
  margin: 0 0 20px 0;
}

.modal__inr--type .modal__inr--type--txt h3 {
  font-size: 14px;
  margin: 0;
  padding: 8px 8px 8px 10px;
  font-weight: bold;
  width: 67%;
  position: relative;
}

.modal__inr--type .modal__inr--type--txt h3::before {
  content: "";
  width: 5px;
  height: 30px;
  background: #03aa22;
  left: 0;
  top: 0;
  position: absolute;
}

.modal__inr--type .modal__inr--type--txt h3 span {
  display: inline-block;
  font-size: 11px;
  position: relative;
  padding: 0 0 0 5px;
  font-weight: normal;
  top: -2px;
}

.modal__inr--type .modal__inr--type--txt p {
  width: 100%;
  font-size: 13px;
  margin: 0;
  padding: 8px 0 0 0;
  line-height: 1.5;
}

.modal__inr--type .modal__inr--type--txt p strong {
  font-weight: bold;
}

.modal__inr--type .modal__inr--type--txt figure {
  display: block;
  margin: 0 0 0 15px;
  float: right;
  width: 35%;
}

.modal__inr--type .modal__inr--type--txt figure img {
  width: 100%;
}

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

.modal__header--type h2 {
  font-size: 16px;
  font-weight: 600;
  margin: 0;
  padding: 7px 0 0 0;
  text-align: center;
  line-height: 1;
}

.modal__header--type .txt__attention {
  font-size: 12px;
  font-weight: normal;
  display: block;
  letter-spacing: -1px;
  margin: 5px 0 0 0;
  line-height: 1;
}

.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 .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;
}

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

  .modal__inr--type {
    padding: 5px 10px 0 10px;
  }

  .modal__inr--type .modal__inr--type--txt {
    display: grid;
    display: -ms-grid;
    grid-template-columns: 80% 20%;
    grid-template-rows: 100%;
    -ms-grid-template-columns: 80% 20%;
    -ms-grid-rows: 100%;
    margin: 10px 10px 10px 10px;
    padding: 0;
  }

  .modal__header--type h2 {
    font-size: 17px;
    margin: auto;
    line-height: inherit;
    padding: 0;
  }

  .modal__inr--type .modal__inr--type--txt h3 {
    font-size: 15px;
    margin: 0;
    padding: 5px 10px;
    grid-column: 1/3;
    grid-row: 1;
    -ms-grid-column: 1;
    -ms-grid-row: 1;
    width: auto;
  }

  .modal__inr--type .modal__inr--type--txt h3::before {
    height: 25px;
  }

  .modal__inr--type .modal__inr--type--txt p {
    width: 78%;
    font-size: 14px;
    margin: 20px 0 0 0;
    grid-column: 1/3;
    grid-row: 1;
    -ms-grid-column: 1;
    -ms-grid-row: 1;
    padding: 10px 0;
    line-height: 1.6;
  }

  .modal__inr--type .modal__inr--type--txt figure {
    display: block;
    grid-column: 2/3;
    grid-row: 1;
    -ms-grid-column: 2;
    -ms-grid-row: 1;
    float: none;
    width: auto;
  }

  .modal__header--type .txt__attention {
    display: inline-block;
  }
}

.header_form .ttl_form small {
  margin-left: 70px;
}

/******************************* 
| 案件番号: MOON_L1-5404
| ページ: /visit/complete/
| 墓じまいCTA
*******************************/

html {
  scroll-behavior: smooth;
}

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

.completeHakajimaiEstimate {
  text-align: center;
}

.completeHakajimaiEstimate__innerLink {
  max-width: 368px;
  width: 100%;
  padding: 8px 10px;
  background: #fff;
  border-radius: 5px;
  border: 2px solid #05aa22;
  color: #232b39;
  text-decoration: none;
  font-size: 14px;
  font-weight: 600;
  display: inline-block;
  line-height: 1.5;
}

.completeHakajimaiEstimate__innerLink span {
  display: inline-block;
}

/* Tb */
@media (min-width: 768px) and (max-width: 1024px) {
  .completeHakajimaiEstimate__innerLink {
    max-width: none;
  }
}

/* PC */
@media screen and (min-width: 768px) {
  .completeHakajimaiEstimate__innerLink {
    max-width: none;
    font-size: 16px;
  }
}

/* バナー *******************************/

.completeHakajimaiEstimateBanner {
  text-align: center;
  margin-bottom: 67px;
}

.completeHakajimaiEstimateBanner___link {
  text-decoration: none;
  display: inline-block;
}

.completeHakajimaiEstimateBanner__img {
  max-width: 355px;
  width: 100%;
}

/* PC */
@media screen and (min-width: 768px) {

  .completeHakajimaiEstimateBanner {
    margin-bottom: 127px;
  }

}

/*ヘッダー*/
.regist-boseki .ttl__h1 {
  font-size: 20px;
  font-weight: bold;
  margin: 20px 0 0 0;
  text-align: center;
  line-height: 1.8;
}

@media (min-width: 768px) {
  .regist-boseki .ttl__h1 {
    margin: 30px 0 0 0;
    line-height: 1;
  }
}

/*flow*/
.regist-boseki__flow {
  width: 100%;
  display: block;
  margin: 0 auto 30px auto;
}

@media (min-width: 768px) {
  .regist-boseki__flow {
    width: auto;
    margin: 0 auto 50px auto;
  }
}

/*inputの幅*/
.regist-boseki input[type="tel"].input__tel {
  width: 20%;
}

.regist-boseki input[type="text"].width-all {
  width: 100%;
  border: #999 solid 1px !important;
}

/*margin*/
.regist-boseki .mb24 {
  margin-bottom: 24px;
}

/*見出し*/
.regist-boseki .ttl__h2--form-boseki {
  font-size: 18px;
  margin: 30px 0;
  text-align: center;
  border-bottom: #ccc solid 1px;
  line-height: 1;
  padding: 0 0 10px 0;
}

.regist-boseki .ttl__h4--form {
  margin: 0;
}

@media (min-width: 768px) {
  .regist-boseki .ttl__h2--form-boseki {
    margin: 50px 0 30px 0;
  }

  .regist-boseki .ttl__h3--form {
    margin: 10px 0;
  }
}

/*注意書き*/
.regist-boseki__attention {
  color: #d53b47;
  font-size: 16px;
  line-height: 1.8;
  margin: 50px auto;
  font-weight: bold;
}

/*送信完了ページ*/
.regist-boseki__complete {
  margin: 30px 10px;
}

@media (min-width: 768px) {
  .regist-boseki__complete {
    margin: 50px auto;
  }
}

.regist-boseki__complete-ttl {
  font-size: 18px;
  line-height: 1.7;
  margin: 0 0 30px 0;
  text-align: center;
  color: #05aa22;
  font-weight: bold;
}

.regist-boseki__complete-lead {
  font-size: 16px;
  line-height: 2;
  margin-bottom: 50px;
}

.regist-boseki__information {
  display: block;
  text-decoration: none;
  background: #d53b47;
  border-radius: 6px;
  padding: 15px;
  margin: 30px 0;
  font-size: 16px;
  text-align: center;
  color: #fff;
  letter-spacing: 1px;
}

@media (min-width: 768px) {
  .regist-boseki__information {
    pointer-events: none;
    margin: 50px 0;
  }
}

.regist-boseki__information-no {
  font-size: 30px;
  font-weight: bold;
  display: block;
  font-style: normal;
  margin: 10px 0 0 0;
}

.regist-boseki__anchor--button {
  font-size: 18px;
  font-weight: bold;
  padding: 20px 0;
  text-align: center;
  color: #fff;
  background: #05aa22;
  text-decoration: none;
  display: block;
  border-radius: 6px;
  box-shadow: 0px 2px 1px 1px #037817;
}

.hope_hakajimai1 {
  order: -1;
}

.hope_hakajimai1 .txt_attention {
  font-size: .75rem;
  margin: 10px 0 40px;
}

.type_hakajimai1 {
  display: block;
  order: -1;
  margin: -20px 0 30px;
}

.hope_hakajimai1:has(option[value="6"]:checked)+.type_hakajimai1 {
  display: none;
}

/* ===== MOON_L1-5572 ===== */
#error-cemetery_state,
#error-cemetery_address {
  width: 100%;
}

/* ===== MOON_L1-5545 ===== */
/* original */
.section__border {
  border-top: none;
  border-bottom: #eee solid 1px;
  margin: 0 0 20px;
}

.ttl__calendar {
  font-size: 16px;
  position: relative;
  text-align: center;
  display: inline-block;
  margin: 10px auto;
  padding: 0 10px;
  color: #05aa22;
  line-height: 1.2;
}

.wrap__modal--inr .ttl__calendar {
  font-size: .875rem;
}

.ttl__calendar::before,
.ttl__calendar::after {
  content: "";
  position: absolute;
  top: 0;
  display: block;
  width: 0.1em;
  height: 100%;
  background: #05aa22;
}

.ttl__calendar::before {
  left: -10px;
  transform: rotate(-30deg);
}

.ttl__calendar::after {
  right: -10px;
  transform: rotate(30deg);
}

.discription__calendar {
  background-color: #fff4e3;
  border-radius: 15px;
  color: #ff6012;
  font-size: 14px;
  font-weight: bold;
  height: 26px;
  line-height: 26px;
  margin: 0 auto 10px;
  position: relative;
  text-align: center;
  width: 85%;
}

.wrap__modal--inr .discription__calendar {
  width: 100%;
}

.discription__calendar::before {
  border: transparent solid 12px;
  border-top: solid #fff4e3 8px;
  content: "";
  left: 50%;
  position: absolute;
  top: 24px;
  transform: translateX(-50%);
}

.anchor__reserve--other {
  font-size: 14px;
}

/* overwrite */
.visit-calendar.register.section-calseep::before,
.visit-calendar.register.section-calseep::after {
  content: none;
}

.visit-calendar.register .calseep__today p.calseep__tel {
  font-size: 14px;
}

.visit-calendar.section-calseep.register,
.visit-calendar.register .calseep__days {
  margin: 0 0 20px;
}

.wrap__modal--inr .visit-calendar.section-calseep.register {
  border: none;
  margin: 0;
  padding: 0;
}

.visit-calendar.register .calseep__days {
  border-bottom: #ccc solid 1px;
}

@media (min-width: 768px) {

  .ttl__calendar,
  .wrap__modal--inr .ttl__calendar {
    font-size: 17px;
  }

  .discription__calendar,
  .wrap__modal--inr .discription__calendar {
    width: 65%;
  }

  .visit-calendar.section-calseep.register,
  .section__border {
    margin: 0 0 32px;
  }

  .visit-calendar.section-calseep.register .calseep__today div {
    padding: 13px 0 0;
    height: 64px;
  }
}

/* ===== MOON_L1-5646 ===== */
.bnr-line {
  display: block;
  margin: 2rem auto;
  width: 100%;
}

.bnr-line img {
  width: 100%;
}

.bnr-line.visible-xs {
  display: block;
}

.bnr-line.visible-md {
  display: none;
}

.txt-note {
  color: #05aa22;
  display: block;
  font-size: .875rem;
  margin-bottom: .5rem;
  text-align: center;
}

@media (min-width: 768px) {
  .bnr-line {
    margin: 3rem auto;
  }

  .bnr-line.visible-xs {
    display: none;
  }

  .bnr-line.visible-md {
    display: block;
  }

  .txt-note {
    font-size: 1rem;
  }
}

/* タイトルの重なりを調整 */
@media (max-width: 420px) {
  .regist-hakajimai .blk_header {
    padding-left: 20%;
  }
}

/* 周辺のおすすめ霊園 */
.recommend_other_cemeteries .recommend_checbox input[type="checkbox"] {
  visibility: hidden;
  position: absolute;
}

.recommend_other_cemeteries .recommend_checbox input[type="checkbox"]+label::before {
  background: #fff;
  border: 2px solid #ddd;
  border-radius: 5px;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  content: "";
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  height: 22px;
  left: 0;
  margin: 0 10px;
  position: absolute;
  width: 22px;
}

.recommend_checbox label {
  align-items: center;
  border-radius: 5px;
  box-sizing: border-box;
  display: flex;
  font-size: 0.875rem;
  height: 48px;
  padding-left: 42px;
  position: relative;
  line-height: 1.8;
  word-break: auto-phrase;
  border: 1px solid #bbb;
}

.recommend_other_cemeteries {
  margin: 0 0 30px;
}

@media (min-width: 768px) {
  .recommend_checbox label {
    font-size: 1.125rem;
  }
}

.recommend_other_cemeteries .recommend_checbox input[type="checkbox"]:checked+label::after {
  border-bottom: 2px solid #fff;
  border-right: 2px solid #fff;
  content: "";
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  height: 12px;
  left: 18px;
  margin-bottom: 2px;
  position: absolute;
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
  width: 5px;
}

.recommend_other_cemeteries .recommend_checbox input[type="checkbox"]:checked+label::before {
  background: #05aa22;
  border: 1px solid #05aa22;
}

.recommend_other_cemeteries .recommend_checbox input[type="checkbox"]:checked+label {
  background: #ecf4e1;
}

/* progressbar */
.form-progress {
  margin-bottom: 2rem;
}

.form-progress__list {
  display: flex;
  height: 3.5rem;
  justify-content: space-between;
  margin: 0 auto;
  padding: 0;
  position: relative;
  width: 98%;
}

.form-progress__list.progress-second {
  position: relative;
}

.form-progress__list::before {
  content: "";
  background: #ccc;
  height: 1px;
  width: 66.5%;
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  z-index: 1;
}

/* 2番目のライン */
.form-progress__list.progress-second::after {
  content: "";
  background: #05aa22;
  height: 2px;
  width: 33.25%;
  position: absolute;
  left: 18%;
  top: 50%;
  transform: translateY(-50%);
  z-index: 2;
}

/* ラスト */
.form-progress__list.progress-thrd::before {
  background: #05aa22;
  height: 2px;
  z-index: 2;
}

.form-progress__item {
  color: #777;
  flex: 1;
  font-size: .75rem;
  list-style: none;
  position: relative;
  text-align: center;
}

.form-progress__item::after {
  content: "";
  background: #999;
  border-radius: 50%;
  height: .5rem;
  width: .5rem;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  z-index: 3;
}

.form-progress__item--current {
  color: #05aa22;
}

.form-progress__item--current::after {
  background: #05aa22;
}

.form-progress__step {
  display: block;
  font-weight: bold;
}

.form-progress__item--situation {
  font-style: normal;
  display: block;
  position: absolute;
  left: 50%;
  line-height: 1.3;
  top: 75%;
  width: 100%;
  transform: translateX(-50%);
}

@media screen and (min-width: 768px) {
  .form-progress__list {
    height: 3rem;
    width: 30rem;
  }

  .form-progress__item--situation {
    line-height: 1;
    top: 80%;
  }
}

/* hakajimaiのCTA */
.txt-primary {
  color: #05aa22;
}

.txt-accent {
  color: #fc8013;
}

.is-pc {
  display: none;
}

.lp-cta__button--estimate,
.lp-cta__button--book {
  border-radius: 10px;
  box-shadow: 0px 2px 5px 0px rgba(0, 0, 0, 0.2);
  box-sizing: border-box;
  display: block;
  line-height: 1;
  padding: 0.5rem 0;
  text-align: center;
  text-decoration: none;
  width: 100%;
}

.lp-cta__icon--estimate,
.lp-cta__icon--book {
  font-size: 0.9375rem;
  height: 1.5rem;
  line-height: 1.5rem;
  width: 2.5rem;
  background-color: #fff;
  border-radius: 0.125rem;
  display: inline-block;
  font-weight: bold;
  margin-left: 0.375rem;
  padding: 0;
  transform: translateY(-3px);
}

.lp-cta__icon--estimate {
  color: #fc8013;
}

.cta-hakajimai__wrap {
  background: #fff;
  border: 2px solid #05aa22;
  border-radius: 20px;
  box-sizing: border-box;
  font-family: "BIZ UDPGothic", sans-serif;
  letter-spacing: 0.01rem;
  margin: 0;
  padding: 1rem 0.625rem;
  position: relative;
}

.cta-hakajimai {
  margin: 0;
}

.cta-hakajimai:last-child {
  margin: 1rem 0 0 0;
}

.cta-hakajimai__ttl--book {
  display: flex;
  padding: 0 0 0.9rem 0;
}

.cta-hakajimai__figure {
  margin: 0;
  width: 5rem;
}

.cta-hakajimai__figure img {
  width: 100%;
}

.cta-hakajimai__ttl--book .cta-hakajimai__text {
  line-height: 1.5;
  padding: 0 0 0 1rem;
  width: calc(100% - 5rem);
}

.cta-hakajimai__text {
  text-align: left;
  font-size: 0.875rem;
}

.cta-hakajimai__text strong {
  font-size: 1.25rem;
  display: block;
  line-height: 1.4;
}

.cta-hakajimai__content {
  position: relative;
  text-align: center;
}

.lp-cta__button--book {
  background: linear-gradient(180deg, #08c205 0%, #05aa22 100%);
  border: 1px solid #05aa22;
}

.lp-cta__button--subtitle {
  font-size: 0.875rem;
  color: #fff;
  display: block;
  margin: 0 0 0.5rem 0;
}

.lp-cta__button--title {
  font-size: 1.25rem;
  display: inline-block;
  color: #fff;
  font-weight: bold;
}

.lp-cta__icon--book {
  color: #05aa22;
}

.cta-hakajimai__balloon {
  font-size: 0.875rem;
  height: 1.5rem;
  line-height: 1.5rem;
  background: #fdf1d3;
  border-radius: 12px;
  font-weight: bold;
  display: block;
  margin: 0 0 5px 0;
  position: relative;
  text-align: center;
  width: 100%;
}

.cta-hakajimai__balloon::after {
  content: "";
  position: absolute;
  bottom: -20px;
  left: 50%;
  border: 10px solid transparent;
  border-top-color: #fdf1d3;
  transform: translateX(-50%);
}

.lp-cta__button--estimate {
  background: linear-gradient(180deg, #ef8802 0%, #eb7005 100%);
  border: 1px solid #fc8013;
}

/* テキストリンク：霊園情報をみる */
.link_detail {
  margin-top: .5rem;
}

.link_detail a {
  color: #232b39;
}

.link_detail a:hover,
.link_detail a:visited {
  color: #232b39;
}

/* バンドブック：完了ページ */
.anchor-bnr img {
  width: 100%;
}

/* register：完了ページ */
.wrap__modal--visit {
  background: rgba(0, 0, 0, 0.5);
  position: fixed;
  left: 0;
  top: 0;
  height: 100vh;
  width: 100%;
  z-index: 100;
}

.btn__close--all,
.btn__close--card {
  border-radius: .5rem;
  border: #ccc solid 1px;
  background: #fff;
  cursor: pointer;
  position: absolute;
  z-index: 10;
}

.btn__close--all {
  align-items: center;
  font-size: .875rem;
  right: .5rem;
  top: .5rem;
  padding: .25rem .5rem;
  display: flex;
  gap: .25rem;
  z-index: 11;
}

.btn__close--card {
  width: 1.75rem;
  height: 1.75rem;
  right: -.25rem;
  top: -.5rem;
  font-size: .875rem;
}

.btn__close--all .material-icons {
  font-size: 1.25rem;
  color: #bbb;
}

.btn__close--card .material-icons {
  font-size: 1.75rem;
  line-height: 1.7rem;
  color: #bbb;
}

.card-cemetery {
  background: #fff;
  border-radius: .375rem;
  margin: auto auto 2rem auto;
  position: relative;
  padding: 1rem .5rem;
  border: #ddd solid 1px;
}

.card-cemetery:last-child {
  margin: auto;
}

.wrap__modal--inr {
  background: #fff;
  position: relative;
  margin: 1rem auto auto;
  width: 90%;
}

@media (min-width: 768px) {
  .wrap__modal--inr {
    width: 30rem;
  }
}

.wrap__modal--contents {
  overflow-y: scroll;
  overflow-x: hidden;
  height: 90vh;
  padding: 1.5rem .5rem;
  margin: auto;
}

/* unit */
.form__note {
  display: block;
  font-size: .875rem;
  margin: 0 0 1rem;
}

.btn__form--anchor {
  display: block;
  background: #05aa22;
  border: none;
  border-radius: .25rem;
  box-shadow: 0px 2px 1px 1px #037817;
  color: #fff;
  font-size: 1rem;
  font-weight: bold;
  height: 3rem;
  justify-content: center;
  margin: 0 auto;
  line-height: 3rem;
  text-align: center;
  text-decoration: none;
  position: relative;
}

.btn__form--anchor::after {
  content: "\e5e1";
  font-family: 'Material Icons Outlined';
  position: absolute;
  right: .625rem;
  top: 50%;
  transform: translateY(-50%);
}

/* メール停止フォーム（MOON_L1-4992） */
.header_form .ttl_h1 {
  font-size: 1rem;
  font-weight: bold;
  margin-left: 10%;
}

.txt_explain {
  font-size: .875rem;
  line-height: 1.5;
  margin-bottom: 20px;
}

.form_stopmail .blk_reason_1,
.form_stopmail .blk_reason_2,
.form_stopmail .blk_reason_3 {
  background: #fff;
  color: #232b39;
  font-size: .875rem;
  height: 0;
  margin: 0;
  overflow: hidden;
}

.form_stopmail .check_reason_1:checked~.blk_reason_1,
.form_stopmail .check_reason_2:checked~.blk_reason_2,
.form_stopmail .check_reason_3:checked~.blk_reason_3 {
  height: auto;
  margin: 0;
  padding: 16px 0 0;
  transform: translate(0, 0);
  transition: 0.2s;
}

.form_stopmail .label_reason {
  align-items: center;
  background: #fff5f5;
  border: 1px solid #bbb;
  border-radius: 5px;
  display: flex;
  font-size: .875rem;
  height: 48px;
  margin-bottom: 8px;
  position: relative;
  width: 100%;
}

.form_stopmail input[type="radio"] {
  visibility: hidden;
  position: absolute;
}

.form_stopmail input[type="radio"]:checked~label {
  background: #fff;
}

.form_stopmail input#reason_1[type="radio"]:checked~.reason_1,
.form_stopmail input#reason_2[type="radio"]:checked~.reason_2,
.form_stopmail input#reason_3[type="radio"]:checked~.reason_3,
.form_stopmail input#reason_4[type="radio"]:checked~.reason_4,
.form_stopmail input#reason_5[type="radio"]:checked~.reason_5 {
  background: #ecf4e1;
  border: 1px solid #05aa22;
}

.form_stopmail .label_reason::before {
  background: #fff;
  border: #ddd solid 2px;
  border-radius: 50%;
  box-sizing: border-box;
  content: "";
  height: 22px;
  margin: 0 5px 0 10px;
  width: 22px;
}

.form_stopmail input#reason_1[type="radio"]:checked~.reason_1::after,
.form_stopmail input#reason_2[type="radio"]:checked~.reason_2::after,
.form_stopmail input#reason_3[type="radio"]:checked~.reason_3::after,
.form_stopmail input#reason_4[type="radio"]:checked~.reason_4::after,
.form_stopmail input#reason_5[type="radio"]:checked~.reason_5::after {
  background: #05aa22;
  border-radius: 50%;
  content: "";
  height: 16px;
  left: 3px;
  margin: 0 5px 0 10px;
  position: absolute;
  width: 16px;
}

.form_stopmail .section__form--regist input[type="text"] {
  font-size: 1rem;
  margin-bottom: 16px;
  width: 100%;
}

.form_stopmail .section__form--regist input[type="email"] {
  font-size: 1rem;
}

.form_stopmail .blk_submit {
  margin: 40px 10px;
}

/* 完了画面（MOON_L1-4992） */
.section_complete {
  margin: 0 10px 40px;
}

.section_complete .ttl_complete {
  margin-bottom: 20px;
}

.section_complete p {
  font-size: .875rem;
  line-height: 1.5;
  margin-bottom: 20px;
}

.wrap_form .btn_submit {
  text-decoration: none;
}

/* Small Mobile */
@media (max-width: 359.98px) {
  .header_form .ttl_h1 {
    margin-left: 15%;
  }
}

/* PC */
@media (min-width: 768px) {
  .header_form .ttl_h1 {
    font-size: 1.125rem;
    margin-left: 0;
  }

  .txt_explain {
    font-size: 1rem;
    margin-bottom: 40px;
  }

  .section_complete {
    margin: 0 0 48px;
  }

  .section_complete .ttl_complete {
    margin-bottom: 24px;
  }

  .section_complete p {
    font-size: 1rem;
    margin-bottom: 24px;
  }
}

.form__section--comment {
  margin-bottom: 30px;
}
.form__section--comment textarea {
  min-height: 3rem;
  width: 100%;
}
.input_plain_envelope {
  padding:0 10px 0 10px;
}
.input_plain_envelope .envelope_txt {
  color: #262a38;
  font-size: 0.9rem;
  line-height: 1;
  padding-left:5px;
}
.input_plain_envelope .envelope {
  width: 10px;
  height: 10px;
  border: 1px solid #d1d1d1;
  border-radius: 2px;
}