/*common*/
.history{
	max-width: 1000px;
	margin: 0 auto 60px auto;
  }

  /*サポート*/
  .text-red{
	  color: #c33d64;
	  font-style: normal;
  }
  .is-pc{
	  display: none;
  }
  .is-sp{
	  display: block;
  }

  /*title*/
  .history__title--h1,
  .history__title--h2,
  .history__title--type{
	  font-weight: bold;
  }
  .history__title--h1{
	  font-size: 20px;
	  margin: 12px 10px 20px 10px;
  }
  .history__title--h1 .material-icons{
	  color: #05aa22;
	  position: relative;
	  top: 8px;
	  font-size: 30px;
	  margin: 0 10px 0 0;
  }
  .history__title--h2{
	  color: #0088ce;
	  font-size: 18px;
	  text-decoration: underline;
	  margin: 0;
	  padding: 14px 20px 14px 58px;
  }
  .history__title--type{
	  font-size: 16px;
	  display: inline-block;
  }
  .history__title--type .text-red{
	  font-size: 18px;
  }

  /*text*/
  .history__text--total{
	  font-size: 18px;
  }
  .history__text--check{
	  background: #fff;
	  border: #05aa22 solid 1px;
	  border-radius: 14px;
	  color: #05aa22;
	  display: table;
	  font-size: 16px;
	  font-weight: bold;
	  height: 28px;
	  line-height: 28px;
	  margin: 0 0 5px 10px;
	  position: relative;
	  text-align: center;
	  width: 255px;
	  z-index: 20;
  }
  .history__text--check::before, .history__text--check::after{
	  content: '';
	  border-top: 12px solid #05aa22;
	  border-right: 10px solid transparent;
	  border-left: 10px solid transparent;
	  bottom: -12px;
	  left: 20px;
	  transform: translateX(-50%);
	  position: absolute;
  }
  .history__text--check::after{
	  bottom: -10px;
	  border-top: solid 12px #fff;
  }
  .history__text--small{
	  font-size: 14px;
  }
  .history__text--price{
	  line-height: 1.5;
  }
  .history__text--address{
	  margin: 0 0 13px 0;
  }
  .history__text--address,
  .history__text--station{
	  position: relative;
	  padding: 0 0 0 22px;
	  font-size: 14px;
	  line-height: 1.4;
  }
  .history__text--address::before{
	  color: #05aa22;
	  content: '\e55f';
	  font-family: 'Material Icons';
	  display: inline-block;
	  font-size: 20px;
	  position: absolute;
	  left: 0;
	  top: 50%;
	  transform: translateY(-50%);
  }
  .history__text--station::before{
	  color: #05aa22;
	  content: '\e536';
	  font-family: 'Material Icons';
	  display: inline-block;
	  font-size: 20px;
	  position: absolute;
	  left: 0;
	  top: 50%;
	  transform: translateY(-50%);
  }
  .history__text--type{
	  background: #05aa22;
	  border-radius: 2px;
	  color: #fff;
	  display: block;
	  font-size: 13px;
	  line-height: 24px;
	  padding: 0 10px;
	  text-align: center;
	  position: absolute;
	  left: 6px;
	  top: 6px;
	  z-index: 2;
  }

  /*item*/
  .history__item{
	  background: #fff;
	  box-shadow: 0px 2px 6px rgba(0, 0, 0, 0.15);
	  border-radius: 10px;
	  margin: 0 10px 30px 10px;
	  position: relative;
  }
  .history__item--inr{
	  padding: 53px 10px 0 10px;
	  position: relative;
	  z-index: 5;
  }
  .history__item--tag{
	  background: #fff;
	  border: #05aa22 solid 1px;
	  color: #05aa22;
	  border-radius: 3px;
	  font-size: 13px;
	  text-align: center;
	  line-height: 24px;
	  height: 24px;
	  padding: 0 10px;
	  margin: 0 5px 5px 0;
  }

  /*figure*/
  .history__figure{
	  aspect-ratio: 16 / 9;
	  display: block;
	  overflow: hidden;
	  position: relative;
	  margin: 0 0 15px 0;
	  width: 100%;
	  z-index: 1;
  }
  .history__figure img{
	  width: 100%;
	  position: absolute;
	  left: 50%;
	  top: 0;
	  transform: translateX(-50%);
  }

  /*list*/
  .history__list--cemetery{
	  position: relative;
  }
  .history__list--item{
	  width: 100%;
  }
  .history__list--tag{
	  display: flex;
	  flex-wrap: wrap;
	  align-items: center;
	  margin: 11px 0 10px 0;
  }

  /*anchor*/
  .history__anchor,
  .history__anchor:visited,
  .history__anchor:hover{
	  color: #232b39;
	  text-decoration: none;
	  position: absolute;
	  z-index: 5;
	  display: block;
	  width: 100%;
	  height: 100%;
	  left: 0;
	  top: 0;
  }

  /*nav*/
  .history__nav--cv{
	  display: flex;
	  justify-content: center;
	  align-items: center;
	  gap: 0 10px;
	  margin: 0;
	  padding: 10px;
	  position: relative;
	  z-index: 20;
  }

  /*button*/
  .history__button--document, .history__button--visit{
	  align-items: center;
	  border-radius: 5px;
	  color: #fff;
	  display: flex;
	  font-size: 20px;
	  font-weight: bold;
	  height: 48px;
	  justify-content: center;
	  line-height: 48px;
	  text-decoration: none;
	  text-shadow: 0px 1px 5px rgba(0, 0, 0, 0.15);
	  text-align: center;
	  width: 50%;
  }
  .history__button--document:visited, .history__button--visit:visited, .history__button--document:hover, .history__button--visit:hover{
	  text-decoration: none;
  }
  .history__button--document{
	  background: linear-gradient(180deg, #57DD06 0%, #05AA22 100%);
	  border: 1px solid #05AA22;
  }
  .history__button--visit{
	  background: linear-gradient(180deg, #FFAA00 0%, #FF7700 100%);
	  border: 1px solid #FF7700;
	  border-radius: 5px;
  }

  /*icon*/
  .history__icon--document, .history__icon--visit{
	  background: #fff;
	  border-radius: 3px;
	  display: block;
	  font-size: 12px;
	  line-height: 18px;
	  height: 18px;
	  margin: 0 0 0 5px;
	  text-align: center;
	  width: 34px;
  }
  .history__icon--document{
	  color: #05aa22;
  }
  .history__icon--visit{
	  color: #ff7700;
  }

  /* チェックボタン */
  .history__item input {
	display: none;
  }
  .history__item .history__label--off, .history__item .history__label--on{
	  align-items: center;
	  background: #fff;
	  border-radius: 10px;
	  box-sizing: border-box;
	  display: block;
	  width: 100%;
	  height: 100%;
	  position: absolute;
	  top: 0;
	  left: 0;
  }
  .history__item .history__label--off {
	  border: #ccc solid 1px;
  }
  .history__item .history__label--on {
	  border: #05aa22 solid 2px;
  }
  .history__item .history__label--on .history__title--h2{
	  background: #ecf4e1;
	  border-radius: 10px 10px 0 0;
  }
  .history__item .history__label--off::before, .history__item .history__label--on::before{
	  content: "";
	  border-radius: 4px;
	  box-sizing: border-box;
	  cursor: pointer;
	  display: block;
	  height: 28px;
	  position: absolute;
	  width: 28px;
	  z-index: 20;
  }
  .history__item .history__label--off::before {
	background: #fff;
	  border: #ccc solid 2px;
	  left: 10px;
	  top: 10px;
  }
  .history__item .history__label--on::before {
	background: #05aa22;
	  border: #05aa22 solid 2px;
	  left: 9px;
	  top: 9px;
  }
  .history__item .history__label--off::after, .history__item .history__label--on::after{
	  content: "";
	  display: block;
	  height: 14px;
	  left: 20px;
	  position: absolute;
	  top: 13px;
	  transform: rotate(45deg);
	  width: 6px;
	  z-index: 20;
  }
  .history__item .history__label--off::after {
	border-bottom: 2px solid #ccc;
	border-right: 2px solid #ccc;
  }
  .history__item .history__label--on::after {
	border-bottom: 2px solid #fff;
	border-right: 2px solid #fff;
  }
  .history__item input[name^="btn_check_"].history__radio--on:checked+.history__label--on {
	display: none;
  }
  .history__item input[name^="btn_check_"].history__radio--on:checked+.history__label--off {
	display: block;
  }
  .history__item input[name^="btn_check_"].history__radio--off:checked+.history__label--on {
	display: block;
  }
  .history__item input[name^="btn_check_"].history__radio--off:checked+.history__label--off {
	display: none;
  }

  @media only screen and (min-width: 1024px){
	  /*サポート*/
	  .is-pc{
		  display: block;
	  }
	  .is-sp{
		  display: none;
	  }

	  /*title*/
	  .history__title--h1{
		  font-size: 24px;
		  margin: 28px 0 20px 0;
	  }
	  .history__title--h1 .material-icons{
		  font-size: 40px;
		  top: 10px;
	  }
	  .history__title--h2{
		  padding: 24px 20px 14px 58px;
	  }

	  /*text*/
	  .history__text--check{
		  margin: 0 0 5px 0;
	  }

	  /*item*/
	  .history__item{
		  margin: 0 0 30px 0;
	  }
	  .history__item--inr{
		  display: flex;
		  gap: 0 20px;
		  flex-wrap: wrap;
		  padding: 66px 20px 0 20px;
	  }

	  /*figure*/
	  .history__figure{
		  width: 320px;
		  margin: 0;
	  }

	  /*list*/
	  .history__list--item{
		  width: 64%;
	  }

	  /*nav*/
	  .history__nav--cv{
		  padding: 15px 20px;
	  }

	  /* チェックボタン */
	  .history__item .history__label--on::before {
		  left: 17px;
		  top: 19px;
	  }
	  .history__item .history__label--off::before {
		  left: 18px;
		  top: 20px;
	  }
	  .history__item .history__label--off::after, .history__item .history__label--on::after{
		  left: 28px;
		  top: 23px;
		  width: 8px;
	  }

  }

  /* チェックボタン 資料請求できない場合 cemetery_no_cvがつく */
  .history__item .history__label--off.cemetery_no_cv{
	  align-items: center;
	  background: #fff;
	  border-radius: 10px;
	  box-sizing: border-box;
	  display: block;
	  width: 100%;
	  height: 100%;
	  position: absolute;
	  top: 0;
	  left: 0;
  }
  .history__item .history__label--off.cemetery_no_cv{
	  border: #ccc solid 1px;
  }
  .history__item .history__label--off.cemetery_no_cv::before,
  .history__item .history__label--off.cemetery_no_cv::after{
	  content: none;
  }
  .history__item .history__label--on.cemetery_no_cv::before,
  .history__item .history__label--on.cemetery_no_cv::after{
	  content: none;
  }

  .history__item .history__label--on.cemetery_no_cv .history__title--h2,
  .history__item .history__label--off.cemetery_no_cv .history__title--h2{
	  padding: 14px 10px;
  }
  @media only screen and (min-width: 1024px){
	  .history__item .history__label--on.cemetery_no_cv .history__title--h2,
	  .history__item .history__label--off.cemetery_no_cv .history__title--h2{
		  padding: 24px 20px 14px 20px;
	  }
  }