.header {
  padding: 0;
}

/* 共通 */
.main {
  max-width: 128rem;
  background-color: #272E2C;
  font-family: "Zen Old Mincho", serif;
}

.pc {
  display: none;
}

/* フェードイン */
.event_image_box img {
  opacity: 0;
  transform: translateY(20px);
  transition: opacity 1s ease-out, transform 1s ease-out;
}

.event_image_box img.show {
  opacity: 1;
  transform: translateY(0);
}


/* fv */
.fv {
  display: flex;
  justify-content: space-between;
  align-items: center;
  /* background-image: url(../img/グループ\ 1.png); */
  background-repeat: no-repeat;
  background-size: cover;
  height: 100vh;
  position: relative;
  background-size: cover;
  background-position: center center;
}


/* スリック用に追記 */
.slider {
  width: 100%;
  height: 100vh;
  overflow: hidden;
}

.slider img {
  width: 100%;
  height: 100vh;
  object-fit: cover;
}

.fv {
  position: relative;
  display: flex;
  justify-content: space-between;
  align-items: center;
  /* background-image: url(../img/グループ\ 1.png); */
  background-repeat: no-repeat;
  background-size: cover;
  height: 100vh;
  position: relative;
  width: 100%;
}

/* スリック用に追記ここまで */

/* 画像が表示されるときにズームインしながら、右にスライド */
.slick-slide img {
  transition: transform 2s ease-out, opacity 2s ease-out;
  transform: translateX(-5rem) scale(1.1);
  opacity: 0;
}

.slick-current img {
  transform: translateX(0) scale(1);
  opacity: 1;
}

/* 画像にズームインと移動のアニメーションを追加ここまで */


.slick-dotted.slick-slider {
  margin-bottom: 0;
  width: 100%;
}

.fv_logo {
  /* padding-top: 4rem; */
  /* margin-left: 15rem; */
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

.fv_logo_image {
  width: 9.7rem;
  height: 24.1rem;
}

.fv_list_box {
  align-self: flex-end;
  position: absolute;
  right: 0;
  /* 05/16 要望 */
  background-color: rgba(0, 0, 0, 0.5);
  color: white;
  padding: 1rem;
  border-radius: 8px;
}

.fv_list {
  color: #FFFFFF;
}

.fv_list_item {
  font-size: 1.4rem;
  text-align: right;
  padding-bottom: 1.1rem;
  margin-right: 3rem;
}

.fv_list_item:last-child {
  padding-bottom: 3.2rem;
}

/* 情報小見出し */
.info_box {
  display: flex;
  justify-content: space-between;
  width: 115rem;
  height: 4.6rem;
  padding-top: 1.3rem;
  margin-left: 10rem;
}

.info_news,
.info_detail {
  display: flex;
}

.info_text {
  color: #FFFFFF;
  font-size: 1.4rem;
  position: relative;
}

.info_detail .info_text:first-child::before {
  content: url(../img/time.svg);
  position: absolute;
  top: 0.2rem;
  left: -2rem;
}

.info_detail .info_text:last-child::before {
  content: url(../img/map.svg);
  position: absolute;
  top: 0.2rem;
  left: -2rem;
}

.info_news .info_text {
  margin-right: 2rem;
}

.info_news .info_text:nth-child(2) {
  margin-right: 0;
}

.info_detail .info_text {
  margin-right: 4.8rem;
}

.info_detail .info_text:nth-child(2) {
  margin-right: 0;
}

/* イントロ */
.intro_box {
  height: 119.2rem;
  background-image: url(../img/bisyamon.svg);
  background-repeat: no-repeat;
  background-size: 50%;
  background-position: center;
  position: relative;
  width: 100%;
}

.intro_box::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 64.9rem;
  height: 119.2rem;
  background-color: rgb(39, 46, 44, 0.9);
}

.intro_text_box {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

.intro_text {
  font-size: 2.5rem;
  color: #FFFFFF;
  line-height: 1.44;
  position: relative;
}

.intro_text::after {
  position: absolute;
  content: "";
  background-color: #FFFFFF;
  width: 3.6rem;
  height: 0.1rem;
  top: 8.5rem;
  left: 0;
}

.intro_sub_text {
  font-size: 1.6rem;
  color: #FFFFFF;
  line-height: 1.5;
  padding-top: 4.5rem;
}

.intro_btn {
  width: 14.2rem;
  height: 4.8rem;
  border: 1px solid #FFFFFF;
  margin-top: 1.9rem;
}

.intro_btn_link {
  display: block;
  color: #FFFFFF;
  font-size: 1.6rem;
  text-align: center;
  padding-top: 1.2rem;
  margin: 0 auto;
}

.img1 {
  width: 47rem;
  height: 30.2rem;
  position: absolute;
  top: 7.8rem;
  left: 0;
}

.img2 {
  width: 25.5rem;
  height: 32.7rem;
  position: absolute;
  top: 28.3rem;
  right: 0;
}

.img3 {
  width: 22.2rem;
  height: 26.3rem;
  position: absolute;
  top: 57.9rem;
  left: 10rem;
}

.img4 {
  width: 43.2rem;
  height: 30.4rem;
  position: absolute;
  top: 74.5rem;
  right: 3rem;
}

.img5 {
  width: 18.8rem;
  height: 26.3rem;
  position: absolute;
  top: 89.7rem;
  left: 39.2rem;
}


/* お知らせ */
.news {
  background-color: #D2D2D2;
  padding-top: 10.9rem;
  padding-bottom: 10.9em;
  margin: 0 auto;
}

.news_flex_box {
  display: flex;
}

.news_heading_area {
  width: 14.2rem;
  margin-right: 21.5rem;
  margin-left: 9.9rem;
}

.news_heading {
  position: relative;
  font-size: 2.5rem;
  color: #272E2C;
}

.news_heading::after {
  position: absolute;
  content: "";
  width: 3.6rem;
  height: 0.1rem;
  background-color: #272E2C;
  top: 4.9rem;
  left: 0rem;
}

.news_btn {
  width: 14.2rem;
  height: 4.8rem;
  border: 1px solid #272E2C;
  background-color: #272E2C;
  padding-top: 1.2rem;
  padding-left: 1.5rem;
  margin: 15.2rem auto 0;
  transition: .4s cubic-bezier(0.37, 0, 0.63, 1);
  color: #FFFFFF;
}

.news_btn:hover {
  color: #272E2C;
  background-color: #ffffff;
}

.news_btn_sp {
  display: none;
}

.news_btn_link {
  font-size: 1.6rem;
  text-align: center;
}

.news_list_area {
  width: 72.2rem;
  height: 24.1rem;
}

.news_list_item {
  height: 7.9rem;
  border-top: 1px solid #9E9E9E;
  padding-bottom: 0.9rem;
}

.news_list_item:last-child {
  border-bottom: 1px solid #9E9E9E;
}

.news_link {
  width: 72.2rem;
  display: flex;
  justify-content: space-between;
}

.news_image {
  width: 9.8rem;
  height: 6rem;
  padding-top: 1rem;
}

.news_date {
  width: 7.7rem;
  font-size: 1.5rem;
  padding-top: 1rem;
}

.news_text {
  width: 51.5rem;
  color: #272E2C;
  font-size: 1.5rem;
  padding-top: 1rem;
}

/* 納骨堂 */
.bone_flex_box {
  display: flex;
  padding-top: 13.5rem;
  padding-right: 10rem;
  justify-content: space-between;
  position: relative;
}

.bone_image_box {
  padding-right: 4.7rem;
}

.bone_image {
  width: 99.1rem;
  height: 49.6rem;
}

.bone_text_box {
  display: flex;
  flex-direction: row-reverse;
}

.bone_heading,
.bone_text {
  color: #ffffff;
  writing-mode: vertical-rl;
  text-orientation: upright;
}

.bone_heading {
  /* width: 2.5rem; */
  height: 10.6rem;
  font-size: 2.5rem;
  position: relative;
  padding-left: 1.3rem;
}

.bone_heading::after {
  position: absolute;
  content: "";
  width: 0.1rem;
  height: 3.6rem;
  background-color: #FFFFFF;
  top: 0.1rem;
  left: 0.4rem;
}

.bone_text {
  height: 35rem;
  font-size: 1.6rem;
  letter-spacing: 2.4px;
  padding-right: 1rem;
}

.bone_btn {
  width: 14.2rem;
  height: 4.8rem;
  color: #FFFFFF;
  border: 1px solid #ffffff;
  background-color: #272E2C;
  transition: .4s cubic-bezier(0.37, 0, 0.63, 1);
  margin-top: auto;
  /* margin-left: -14rem; */
  position: absolute;
  bottom: 0;
  right: 10rem;
}

.bone_btn_link {
  display: block;
  font-size: 1.6rem;
  padding-top: 1.2rem;
  padding-left: 1.5rem;
}

.bone_btn:hover {
  color: #272E2C;
  background-color: #fff;
}

/* イベント */
.event {
  background-image: url(../img/event_decoration1.png);
  background-repeat: no-repeat;
  background-size: 80%;
  background-position: bottom right;
}

.event_image_box {
  display: flex;
  justify-content: space-between;
  width: 108rem;
  margin: 15rem auto 0;
}

.image2 {
  margin-top: 7.2rem;
}

.image3 {
  margin-top: 14.4rem;
}

.image4 {
  margin-top: 21.6rem;
}

.image1,
.image2,
.image3,
.image4,
.image5 {
  width: 25rem;
  height: 35.6rem;
}

.event_text_box {
  width: 15.8rem;
  margin-left: 10rem;
  margin-top: -14.4rem;
}

.event_heading,
.event_btn {
  color: #FFFFFF;
}

.event_heading {
  font-size: 2.5rem;
  margin-bottom: 4.3rem;
  position: relative;
}

.event_heading::after {
  content: "";
  position: absolute;
  width: 3.6rem;
  height: 0.1rem;
  background-color: #FFFFFF;
  top: 4.9rem;
  left: 0;
}

.event_btn {
  width: 15.8rem;
  height: 4.8rem;
  border: 1px solid #FFFFFF;
  padding-top: 1.2rem;
  padding-left: 1.5em;
}

.event_btn_link {
  display: block;
  font-size: 1.6rem;
}

.event_btn:hover {
  color: #272E2C;
  background-color: #ffffff;
  transition: .4s cubic-bezier(0.37, 0, 0.63, 1);
}

/* 仏事 */

.about_hotoke {
  padding-top: 15rem;
  margin-bottom: 15rem;
  position: relative;
}

.hotoke_flex_box {
  display: flex;
  justify-content: end;
  padding-left: 10rem;
  justify-content: space-between;
}

.hotoke_text_box {
  display: flex;
  color: #FFFFFF;
  flex-direction: row-reverse;
}

.hotoke_heading,
.hotoke_text {
  writing-mode: vertical-rl;
  text-orientation: upright;
}

.hotoke_heading {
  height: 21.1rem;
  font-size: 2.5rem;
  letter-spacing: 2.4px;
  position: relative;
  margin-left: 3rem;
}

.hotoke_heading::after {
  position: absolute;
  content: "";
  width: 0.1rem;
  height: 3.6rem;
  background-color: #FFFFFF;
  top: 0;
  left: -1.3rem;
}

.hotoke_text {
  height: 35rem;
  font-size: 1.6rem;
  letter-spacing: 2.4px;
  /* padding-left: 1rem; */
}


.hotoke_text:nth-child(1) {
  padding-left: 0;
}

.hotoke_image {
  width: 99.1rem;
  height: 49.6rem;
}

.hotoke_btn {
  width: 12.6rem;
  height: 4.8rem;
  color: #FFFFFF;
  border: 1px solid #FFFFFF;
  transition: .4s cubic-bezier(0.37, 0, 0.63, 1);
  padding-top: 1.2rem;
  padding-left: 1.5rem;
  margin-top: -4.8rem;
  margin-left: 10rem;
}

.hotoke_btn:hover {
  color: #272E2C;
  background-color: #FFFFFF;

}

.hotoke_btn_link {
  width: 9.6rem;
  font-size: 1.6rem;
}

/* アクセス */
.access_heading_box {
  width: 10rem;
  height: 3.6rem;
  text-align: center;
  margin: 0 auto;
  margin-bottom: 8.1em;
}

.access_heading {
  font-size: 2.5rem;
  color: #FFFFFF;
  position: relative;
}

.access_heading::after {
  content: "";
  position: absolute;
  width: 3.6rem;
  height: 0.1rem;
  background-color: #FFFFFF;
  top: 4.9rem;
  left: 50%;
  transform: translateX(-50%);
}

.access_map {
  width: 99.1rem;
  height: 49.6rem;
  margin: 0 auto;
}

.map {
  width: 99.1rem;
  height: 49.6rem;
}

.address_box {
  width: 27.2rem;
  height: 4.8rem;
  font-size: 1.6rem;
  color: #FFFFFF;
  margin-top: 1.5rem;
  margin-left: 14.5rem;
  margin-bottom: 2.5rem;
}

.address_image_box {
  display: flex;
  padding-left: 14.5rem;
  width: 100%;
  padding-bottom: 10rem;
  color: #FFFFFF;
  font-size: 1.4rem;
}

.address_image_box2 {
  display: flex;
}

.address_image1 {
  width: 42.8rem;
  height: 28.6rem;
  margin-right: 2rem;
}

.address_image2 {
  width: 22.9rem;
  height: 28.6rem;
  margin-right: 4rem;
}

.address_text {
  color: #FFFFFF;
  font-size: 1.6rem;
}


.event_image_box01 {
  display: flex;
  justify-content: space-between;
  width: 108rem;
  margin: 15rem auto 0;
}


.humbargar_border:first-child {
  margin-top: 0;
}

.access {
  width: 100%;
}

/* スマホ版 */
@media screen and (max-width: 699.98px) {

  /* 共通 */
  .pc {
    display: block;
  }

  .responsive {
    display: none;
  }

  /* fv */
  .fv {
    background-position: center center;
  }

  .fv_list_box {
    display: none;
  }

  .fv_logo {
    margin: 0 auto;
  }

  /* 情報小見出し */
  .info_box {
    width: 28.6rem;
    font-size: 1.4rem;
    flex-direction: column;
    margin: 0 auto;
  }

  .info_detail {
    width: 26.1rem;
    flex-direction: column;
    margin-left: 2.8rem;
  }

  .info_text {
    padding-bottom: 0.5rem;
  }

  .info_text:nth-child(4) {
    padding-bottom: 1rem;
  }

  .info_detail .info_text {
    margin-right: 0;
  }

  /* イントロ */
  .intro_box {
    background-size: 100%;
    background-position: bottom;
  }

  .intro_box::before {
    width: 37.5rem;
    height: 87.5rem;
    top: 63.5%;
  }

  .intro_text_box {
    width: 32.4rem;
    top: 40%;
  }

  .intro_text {
    font-size: 2.1rem;
  }

  .intro_sub_text {
    font-size: 1.6rem;
  }

  .img1 {
    width: 24.8rem;
    height: 21.7rem;
    left: 0;
  }

  .img2 {
    width: 14.6rem;
    height: 18.7rem;
    top: 55rem;
  }

  .img3 {
    width: 13.9rem;
    height: 20.1rem;
    top: 74rem;
    left: 0;
  }

  .img4 {
    width: 18.8rem;
    height: 13.2rem;
    top: 97rem;
    right: 0;
  }

  .img5 {
    width: 10.4rem;
    height: 14.5rem;
    top: 102rem;
    left: 0;
  }

  /* お知らせ */
  .news {
    height: 125.6rem;
    padding-top: 5.9rem;
    padding-bottom: 4.68rem;
    height: auto;
  }

  .news_flex_box {
    flex-direction: column;
  }

  .news_heading {
    margin-bottom: 4.3rem;
  }

  .news_btn {
    display: none;
  }

  .news_list_area {
    width: 28.5rem;
    margin: 0 auto;
    height: auto;
  }

  .news_link {
    display: block;
    flex-direction: column;
    width: 28.3rem;
  }

  .news_list_item {
    /* height: 31.8rem; */
    height: auto;
  }

  .news_list_item:nth-child(3) {
    /* padding-bottom: 0; */
  }

  .news_image {
    width: 28.3rem;
    height: 17.3rem;
  }

  .news_date,
  .news_text {
    padding-top: 0;
  }

  .news_date {
    padding-top: 1rem;
    padding-bottom: 1rem;
  }

  .news_text {
    width: 28.5rem;
  }

  .news_btn_sp {
    width: 14.2rem;
    height: 4.8rem;
    display: block;
    color: #FFFFFF;
    background-color: #272E2C;
    border: 1px solid #272E2C;
    padding-top: 1.2rem;
    padding-left: 1.5rem;
    margin: 3.4rem auto 0;
  }

  .news_btn_link {
    font-size: 1.6rem;
  }

  /* 納骨堂 */

  .about_bone {
    margin-bottom: 17rem;
  }

  .bone_flex_box {
    flex-direction: column;
    padding: 0;
  }

  .bone_image {
    width: 34.5rem;
    height: 32.5rem;
  }

  .bone_heading {
    width: 4.9rem;
    padding-right: 1.2rem;
    width: auto;
    padding: 0.3em 0.1em;
  }

  .bone_heading::after {
    display: none;
  }

  .bone_text_box {
    /* margin-left: 22.5rem; */
    /* margin-top: -13.1rem; */
    /* padding-right: 3rem; */
    position: absolute;
    right: 3rem;
    top: 50%;
  }

  .bone_text,
  .bone_heading {
    background-color: rgb(39 46 44 / 50%);
  }

  .bone_text {
    padding-right: 0;
    margin-right: 0.8rem;
  }

  .bone_text:nth-child(2) {
    margin-right: 0.8rem;
    display: inline-block;
    line-height: 2;
  }

  .bone_btn {
    position: relative;
    margin-left: 3rem;
    inset: initial;
    margin-top: 2rem;
  }

  .bone_image_box {
    padding-right: 0;
  }

  /* イベント */
  .event {
    position: relative;
    margin-bottom: 11rem;
  }

  .about_hotoke {
    margin-bottom: 30rem;
    margin-top: 18rem;
    padding-top: 0;
  }

  .event_image_box {
    width: 100%;
    margin-top: 0;
  }

  .image1,
  .image2,
  .image3,
  .image4,
  .image5 {
    width: 8.5rem;
    height: 15rem;
  }

  .event_text_box {
    position: absolute;
    top: 94%;
    margin-top: auto;
    margin-left: 4.5rem;
  }

  /* 仏事 */
  .hotoke_flex_box {
    flex-direction: column-reverse;
    padding-left: 0;
  }

  .hotoke_text_box {
    color: #272E2C;
    /* margin-left: 23rem; */
    /* margin-top: 36rem; */
    position: absolute;
    right: 3rem;
    top: 50%;
    align-items: flex-start;
  }

  .hotoke_heading {
    /* width: 3.9rem; */
    height: auto;
    background-color: rgb(255 255 255 / 70%);
    margin-left: 1.3rem;
    padding: 0.3em 0.1em;
    white-space: nowrap;
  }

  .hotoke_heading::after {
    display: none;
  }

  .hotoke_text_box {
    z-index: 99;
  }

  .hotoke_text {
    /* width: 2.9rem; */
    line-height: 1.5;
    background-color: rgb(255 255 255 / 70%);
    /* margin-left: 0.5rem; */
  }

  .hotoke_text:nth-child(1) {
    margin-left: 0;
  }

  .hotoke_image_box {
    position: relative;
  }

  .hotoke_image {
    width: 34.5rem;
    height: 32.5rem;
    /* position: absolute; */
    top: 8.7rem;
    right: 0;
    margin-left: auto;
    display: block;
  }

  .hotoke_btn {
    /* margin-right: 4.2rem; */
    margin: 2rem 0 0 3rem;
  }

  /* アクセス */
  .access_container {
    display: block;
    margin: 0 auto;
  }

  .access_map {
    width: 31.5rem;
    height: auto;
  }

  .map {
    width: 31.5rem;
    height: auto;
    aspect-ratio: 1;
  }

  .address_box {
    text-align: left;
    margin: 1rem auto 3rem;
  }

  .address_image_box {
    flex-direction: column;
    margin-left: 0;
    padding-left: 0rem;
    margin-right: 0;
    width: 31.5rem;
    margin: 0 auto;
    /* padding-left: 1rem; */
  }

  .address_image1 {
    width: 100%;
    height: 21rem;
    /* margin-bottom: 3.6rem; */
    margin-right: 0;
  }

  .address_image2 {
    width: 15.8rem;
    height: 19.7rem;
    margin-right: 1.3rem;
    margin-top: 3rem;
  }

  .address_image_box2 {
    display: flex;
    width: 100%;
    flex-direction: column;
    /* padding-left: 1rem; */
  }

  .event_image_box01 {
    width: 100%;
    margin-top: 0;
  }
}