@charset "UTF-8";
/* =======================================

web font

 ======================================= */
@import url("https://fonts.googleapis.com/css2?family=Roboto:ital,wght@0,100;0,300;0,400;0,500;0,700;0,900;1,100;1,300;1,400;1,500;1,700;1,900&display=swap");
/* ----------------------------------------

現代墓所墓石テーマパーク

---------------------------------------- */
:root {
  --mcgtp_slide_hight:calc( 100vh - 9rem - 2.4rem - 8rem );
}
@media (max-width: 768px) {
  :root {
    --mcgtp_slide_hight:calc( 100vh - 6rem - 2.1rem - 8rem );
  }
}

/* mv
------------------------------- */
.mcgtp_mv {
  width: 100%;
  height: 84rem;
  max-height: calc(100vh - 9rem - 2.4rem);
  color: #fff;
  background-color: #003b83;
  padding: 0 !important;
  position: relative;
}
@media (max-width: 768px) {
  .mcgtp_mv {
    height: 48rem;
    max-height: calc(100vh - 6rem - 2.1rem);
    border: 2px solid #003b83;
    border-top: 0;
    border-bottom-left-radius: 4rem;
    overflow: hidden;
  }
}
.mcgtp_mv--ttl {
  display: -webkit-flex;
  display: flex;
  -webkit-align-items: flex-start; /*縦方向（Safari用）*/
  align-items: flex-start; /* 縦方向*/
  -webkit-justify-content: flex-start; /*横方向（Safari用）*/
  justify-content: flex-start; /*横方向*/
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  width: 100%;
  width: 176rem;
  max-width: calc(100% - 5.6rem);
  position: absolute;
  top: 0;
  right: 0;
  z-index: 1;
}
@media (max-width: 768px) {
  .mcgtp_mv--ttl {
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center; /*縦方向（Safari用）*/
    align-items: center; /* 縦方向*/
    -webkit-justify-content: center; /*横方向（Safari用）*/
    justify-content: center; /*横方向*/
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    max-width: 100%;
  }
}
.mcgtp_mv--ttl ._inner {
  padding-top: 12.4rem;
}
@media (max-width: 768px) {
  .mcgtp_mv--ttl ._inner {
    width: auto;
    padding-top: 4rem;
    padding-left: 1rem;
  }
}
.mcgtp_mv--ttl--h {
  font-family: "Noto Serif JP", serif;
  font-size: 16rem;
  font-weight: 700;
  line-height: 1;
  letter-spacing: 0.2em;
}
@media (max-width: 768px) {
  .mcgtp_mv--ttl--h {
    font-size: 6.4rem;
    line-height: 1.4;
  }
}
.mcgtp_mv--ttl--h small {
  display: block;
  font-size: 8rem;
  line-height: 1;
}
@media (max-width: 768px) {
  .mcgtp_mv--ttl--h small {
    font-size: 4.2rem;
  }
}
.mcgtp_mv--ttl--h small:last-child {
  font-size: 10.5rem;
  font-weight: 400;
  line-height: 1;
  letter-spacing: 0.09em;
}
@media (max-width: 768px) {
  .mcgtp_mv--ttl--h small:last-child {
    font-size: 4.6rem;
  }
}
.mcgtp_mv--ttl--p {
  display: -webkit-flex;
  display: flex;
  -webkit-align-items: center; /*縦方向（Safari用）*/
  align-items: center; /* 縦方向*/
  -webkit-justify-content: center; /*横方向（Safari用）*/
  justify-content: center; /*横方向*/
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  width: 67.5rem;
  font-family: "Roboto", "Noto Sans JP", sans-serif;
  font-size: 3.6rem;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0.1em;
  color: #003b83;
  background-color: #fff;
  padding: 1.2rem;
  margin: 2.4rem 0 0 0;
}
@media (max-width: 768px) {
  .mcgtp_mv--ttl--p {
    width: 29rem;
    font-size: 1.6rem;
    padding: 1.2rem 0;
    margin: 1.8rem 0 0 0;
  }
}
.mcgtp_mv--img {
  display: -webkit-flex;
  display: flex;
  -webkit-align-items: flex-start; /*縦方向（Safari用）*/
  align-items: flex-start; /* 縦方向*/
  -webkit-justify-content: space-between; /*横方向（Safari用）*/
  justify-content: space-between; /*横方向*/
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  width: 130.8rem;
  max-width: calc(100% - 16rem);
  height: 76rem;
  max-height: var(--mcgtp_slide_hight);
  overflow: hidden;
  border-bottom-left-radius: 4rem;
  margin: 0 0 0 auto;
}
@media (max-width: 768px) {
  .mcgtp_mv--img {
    max-width: 100%;
    height: 100%;
    padding-top: 27rem;
    border-bottom-left-radius: 0;
  }
  .mcgtp_mv--img .slick-vertical .slick-slide {
    border: 0;
  }
}
.mcgtp_mv--slide {
  width: calc((100% - 4.8rem) / 3);
  height: 100%;
}
@media (max-width: 768px) {
  .mcgtp_mv--slide {
    width: calc((100% - 4px) / 3);
  }
}
.mcgtp_mv--slide .slick-list {
  height: 100% !important;
}
.mcgtp_mv--slide._slide_1 {
  opacity: 0.4;
}
@media (max-width: 768px) {
  .mcgtp_mv--slide._slide_1 {
    opacity: 0.8;
  }
}
.mcgtp_mv--slide._slide_2 {
  opacity: 0.6;
}
@media (max-width: 768px) {
  .mcgtp_mv--slide._slide_2 {
    opacity: 0.8;
  }
}
.mcgtp_mv--slide._slide_2 .slick-list {
  transform: rotate(180deg);
}
.mcgtp_mv--slide._slide_2 .slick-slide {
  transform: rotate(180deg); /* 各スライドを180度回転させて元に戻す */
}
@media (max-width: 768px) {
  .mcgtp_mv--slide._slide_3 {
    opacity: 0.8;
  }
}
.mcgtp_mv--slide--in {
  width: 100% !important;
  padding: 1.2rem 0;
}
@media (max-width: 768px) {
  .mcgtp_mv--slide--in {
    padding: 1px 0;
  }
}
.mcgtp_mv--slide--in img {
  display: block;
  width: 100%;
}

/* mcgtp_intro
------------------------------- */
.mcgtp_intro {
  padding: 0 0 6rem !important;
}
@media (max-width: 768px) {
  .mcgtp_intro {
    padding: 6.4rem 0 3.2rem !important;
  }
}
.mcgtp_intro--block {
  display: -webkit-flex;
  display: flex;
  -webkit-align-items: center; /*縦方向（Safari用）*/
  align-items: center; /* 縦方向*/
  -webkit-justify-content: center; /*横方向（Safari用）*/
  justify-content: center; /*横方向*/
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  width: calc(120rem + (100% - 120rem) / 2);
  max-width: 100%;
  margin: 0 auto 0 0;
}
@media (max-width: 768px) {
  .mcgtp_intro--block {
    flex-direction: column-reverse;
    width: 100%;
    margin: 0 auto;
  }
}
.mcgtp_intro--block--item {
  width: 60rem;
}
@media (max-width: 768px) {
  .mcgtp_intro--block--item {
    width: 100%;
  }
}
.mcgtp_intro--block--item--ttl {
  display: -webkit-flex;
  display: flex;
  -webkit-align-items: center; /*縦方向（Safari用）*/
  align-items: center; /* 縦方向*/
  -webkit-justify-content: center; /*横方向（Safari用）*/
  justify-content: center; /*横方向*/
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  width: 36rem;
  aspect-ratio: 1/1;
  font-size: 4.2rem;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0.05em;
  text-align: center;
  color: #fff;
  border-radius: 32rem;
  background-color: #003b83;
  margin: 0 auto 3.6rem;
}
@media (max-width: 768px) {
  .mcgtp_intro--block--item--ttl {
    width: 22rem;
    font-size: 2.4rem;
    margin: 0 auto 2.4rem;
  }
}
.mcgtp_intro--block--item--desc {
  display: -webkit-flex;
  display: flex;
  -webkit-align-items: center; /*縦方向（Safari用）*/
  align-items: center; /* 縦方向*/
  -webkit-justify-content: center; /*横方向（Safari用）*/
  justify-content: center; /*横方向*/
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  font-size: 2.4rem;
  font-weight: 700;
  line-height: 2;
  letter-spacing: 0.1em;
  color: #003b83;
  text-align: left;
}
@media (max-width: 768px) {
  .mcgtp_intro--block--item--desc {
    font-size: 1.8rem;
  }
}
.mcgtp_intro--block--img {
  width: calc(100% - 60rem);
  height: 64rem;
}
@media (max-width: 768px) {
  .mcgtp_intro--block--img {
    width: 100%;
    margin-top: 2.4rem;
    height: 20rem;
  }
}
.mcgtp_intro--block--img img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

/*mcgtp_concept
------------------------------- */
.mcgtp_concept {
  padding: 6rem 0 12rem !important;
}
@media (max-width: 768px) {
  .mcgtp_concept {
    padding: 3.2rem 0 6.4rem !important;
  }
}
.mcgtp_concept--block {
  display: -webkit-flex;
  display: flex;
  -webkit-align-items: stretch; /*縦方向（Safari用）*/
  align-items: stretch; /* 縦方向*/
  -webkit-justify-content: flex-start; /*横方向（Safari用）*/
  justify-content: flex-start; /*横方向*/
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  width: calc(120rem + (100% - 120rem) / 2);
  max-width: 100%;
  margin: 0 0 0 auto;
}
@media (max-width: 768px) {
  .mcgtp_concept--block {
    width: 82%;
    margin: 0 auto;
  }
}
.mcgtp_concept--block--item {
  display: -webkit-flex;
  display: flex;
  -webkit-align-items: center; /*縦方向（Safari用）*/
  align-items: center; /* 縦方向*/
  -webkit-justify-content: flex-start; /*横方向（Safari用）*/
  justify-content: flex-start; /*横方向*/
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  width: 60rem;
  color: #5F5D5D;
  padding-bottom: 16rem;
}
@media (max-width: 768px) {
  .mcgtp_concept--block--item {
    width: 100%;
    padding-bottom: 2.4rem;
  }
}
.mcgtp_concept--block--item--ico {
  display: block;
  width: 52rem;
  margin: 0 auto 2.4rem;
}
.mcgtp_concept--block--item--ttl {
  font-size: 4.2rem;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0.1em;
  margin: 0 auto 2.4rem;
}
@media (max-width: 768px) {
  .mcgtp_concept--block--item--ttl {
    font-size: 3.6rem;
  }
}
.mcgtp_concept--block--item--desc {
  font-size: 1.8rem;
  font-weight: 400;
  line-height: 2;
  letter-spacing: 0.1em;
  text-align: left;
  margin-bottom: 2.4rem;
}
@media (max-width: 768px) {
  .mcgtp_concept--block--item--desc {
    line-height: 1.6;
  }
}
.mcgtp_concept--block--item--small {
  font-size: 1.4rem;
  font-weight: 400;
  line-height: 1.5;
  letter-spacing: 0.1em;
  text-align: left;
}
.mcgtp_concept--block--img {
  width: calc(100% - 60rem);
}
@media (max-width: 768px) {
  .mcgtp_concept--block--img {
    width: 100%;
  }
}
.mcgtp_concept--block--img img {
  display: block;
  width: 100%;
}
.mcgtp_concept--block--img--desc {
  font-size: 1.8rem;
  font-weight: 400;
  line-height: 1.4;
  margin-top: 2.4rem;
}
@media (max-width: 768px) {
  .mcgtp_concept--block--img--desc {
    font-size: 1.6rem;
    line-height: 1.6;
  }
}
.mcgtp_concept--block--img--desc small {
  display: block;
  font-size: 1.4rem;
  margin-bottom: 0.8rem;
}

/* .mcgtp_appeal
------------------------------- */
._line {
  width: 96rem;
  max-width: 100%;
  height: 3px;
  background-color: #003b83;
  margin: 12rem auto;
}
@media (max-width: 768px) {
  ._line {
    width: 32rem;
    margin: 6.4rem auto;
  }
}

.mcgtp_appeal {
  background-color: #EFF1F1;
  padding: 12rem 0 !important;
}
@media (max-width: 768px) {
  .mcgtp_appeal {
    padding: 6.4rem 0 !important;
  }
}
@media (max-width: 768px) {
  .mcgtp_appeal .wrap_in {
    width: 100%;
  }
}
.mcgtp_appeal--block {
  position: relative;
}
@media (max-width: 768px) {
  .mcgtp_appeal--block {
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center; /*縦方向（Safari用）*/
    align-items: center; /* 縦方向*/
    -webkit-justify-content: center; /*横方向（Safari用）*/
    justify-content: center; /*横方向*/
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    flex-direction: column-reverse;
    padding: 6.4rem 0;
  }
}
.mcgtp_appeal--block--img {
  width: 72rem;
  height: 64rem;
  margin: 0 auto 0 0;
}
@media (max-width: 768px) {
  .mcgtp_appeal--block--img {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
  }
}
.mcgtp_appeal--block--img img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.mcgtp_appeal--block--item {
  width: 72rem;
  color: #1E1E1E;
  background-color: rgba(255, 255, 255, 0.75);
  padding: 6.4rem 0 6.4rem 8rem;
  position: absolute;
  top: 50%;
  right: 0;
  z-index: 1;
  -webkit-transform: translateY(-50%) translateX(0);
  transform: translateY(-50%) translateX(0);
}
@media (max-width: 768px) {
  .mcgtp_appeal--block--item {
    width: 86%;
    padding: 2.4rem;
    margin: 0 auto 0;
    position: relative;
    top: auto;
    right: auto;
    -webkit-transform: translateY(0) translateX(0);
    transform: translateY(0) translateX(0);
  }
}
.mcgtp_appeal--block--item--ttl {
  font-size: 3.2rem;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0.1em;
  margin-bottom: 2.4rem;
}
@media (max-width: 768px) {
  .mcgtp_appeal--block--item--ttl {
    font-size: 2.4rem;
  }
}
.mcgtp_appeal--block--item--desc {
  font-size: 1.8rem;
  font-weight: 400;
  line-height: 1.5;
  letter-spacing: 0.15em;
  padding-left: 2.4rem;
  position: relative;
}
@media (max-width: 768px) {
  .mcgtp_appeal--block--item--desc {
    font-size: 1.6rem;
    padding-left: 1.6rem;
  }
}
.mcgtp_appeal--block--item--desc + .mcgtp_appeal--block--item--desc {
  margin-top: 1.6rem;
}
.mcgtp_appeal--block--item--desc::after {
  content: "\f04b";
  font-family: "Font Awesome 5 Free";
  font-size: 1.6rem;
  font-weight: 900;
  line-height: 1.9;
  color: #003b83;
  position: absolute;
  top: 0;
  left: 0;
}
@media (max-width: 768px) {
  .mcgtp_appeal--block--item--desc::after {
    font-size: 1.2rem;
    line-height: 2.2;
  }
}
.mcgtp_appeal--block._reverse .mcgtp_appeal--block--img {
  margin: 0 0 0 auto;
}
@media (max-width: 768px) {
  .mcgtp_appeal--block._reverse .mcgtp_appeal--block--img img {
    object-position: 73% center;
  }
}
.mcgtp_appeal--block._reverse .mcgtp_appeal--block--item {
  right: auto;
  left: 0;
}
@media (max-width: 768px) {
  .mcgtp_appeal--block._reverse .mcgtp_appeal--block--item--ttl {
    font-size: 2rem;
  }
}

/* mcgtp_contact
------------------------------- */
.mcgtp_contact {
  padding: 12rem 0 !important;
}
@media (max-width: 768px) {
  .mcgtp_contact {
    padding: 6.4rem 0 !important;
  }
}
.mcgtp_contact--ttl {
  display: -webkit-flex;
  display: flex;
  -webkit-align-items: center; /*縦方向（Safari用）*/
  align-items: center; /* 縦方向*/
  -webkit-justify-content: center; /*横方向（Safari用）*/
  justify-content: center; /*横方向*/
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  width: 54rem;
  min-height: 7.2rem;
  font-size: 2.4rem;
  font-weight: 400;
  line-height: 1.5;
  letter-spacing: 0.1em;
  color: #fff;
  background-color: #003b83;
  margin: 0 auto 6rem;
}
@media (max-width: 768px) {
  .mcgtp_contact--ttl {
    width: 100%;
    min-height: 5.6rem;
    font-size: 2rem;
    margin: 0 auto 3.2rem;
  }
}
.mcgtp_contact--map {
  display: -webkit-flex;
  display: flex;
  -webkit-align-items: center; /*縦方向（Safari用）*/
  align-items: center; /* 縦方向*/
  -webkit-justify-content: center; /*横方向（Safari用）*/
  justify-content: center; /*横方向*/
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
}
.mcgtp_contact--map--img {
  width: 50%;
  height: 32rem;
}
@media (max-width: 768px) {
  .mcgtp_contact--map--img {
    width: 100%;
  }
}
.mcgtp_contact--map--img iframe {
  display: block;
  width: 100%;
  height: 100%;
}
.mcgtp_contact--map--item {
  width: 50%;
  padding: 2rem 4rem;
}
@media (max-width: 768px) {
  .mcgtp_contact--map--item {
    width: 100%;
    padding: 2rem 0 0;
  }
}
.mcgtp_contact--map--item--desc {
  font-family: "Roboto", "Noto Sans JP", sans-serif;
  font-size: 1.8rem;
  font-weight: 400;
  line-height: 1.6;
  letter-spacing: 0.05em;
}
@media (max-width: 768px) {
  .mcgtp_contact--map--item--desc {
    font-size: 1.6rem;
  }
}
.mcgtp_contact--map--item--desc ._indent {
  display: block;
  padding-left: 1em;
  text-indent: -1em;
}
.mcgtp_contact--tel {
  display: -webkit-flex;
  display: flex;
  -webkit-align-items: center; /*縦方向（Safari用）*/
  align-items: center; /* 縦方向*/
  -webkit-justify-content: center; /*横方向（Safari用）*/
  justify-content: center; /*横方向*/
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  gap: 8rem;
}
@media (max-width: 768px) {
  .mcgtp_contact--tel {
    gap: 3.2rem;
  }
}
.mcgtp_contact--tel--logo {
  display: -webkit-flex;
  display: flex;
  -webkit-align-items: center; /*縦方向（Safari用）*/
  align-items: center; /* 縦方向*/
  -webkit-justify-content: center; /*横方向（Safari用）*/
  justify-content: center; /*横方向*/
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  gap: 2.4rem;
  font-size: 4.2rem;
  font-weight: 400;
  line-height: 1.5;
  letter-spacing: 0;
  color: #003b83;
}
@media (max-width: 768px) {
  .mcgtp_contact--tel--logo {
    gap: 1.2rem;
    font-size: 2rem;
  }
}
.mcgtp_contact--tel--logo img {
  display: block;
  width: 9.6rem;
}
@media (max-width: 768px) {
  .mcgtp_contact--tel--logo img {
    width: 4.8rem;
  }
}
.mcgtp_contact--tel--item {
  display: -webkit-flex;
  display: flex;
  -webkit-align-items: center; /*縦方向（Safari用）*/
  align-items: center; /* 縦方向*/
  -webkit-justify-content: flex-end; /*横方向（Safari用）*/
  justify-content: flex-end; /*横方向*/
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  width: 48rem;
}
.mcgtp_contact--tel--item a {
  display: block;
  width: 100%;
}
.mcgtp_contact--tel--item img {
  display: block;
  width: 100%;
  margin-bottom: 1.6rem;
}
.mcgtp_contact--tel--item--desc {
  font-size: 2.2rem;
  font-weight: 400;
  line-height: 1.5;
  letter-spacing: 0.05em;
  color: #1E1E1E;
}
@media (max-width: 768px) {
  .mcgtp_contact--tel--item--desc {
    font-size: 1.6rem;
  }
}
.mcgtp_contact--tel--item--desc small {
  display: block;
  font-size: 1.8rem;
}
@media (max-width: 768px) {
  .mcgtp_contact--tel--item--desc small {
    font-size: 1.4rem;
  }
}

/* ----------------------------------------

25.10.24 改修

---------------------------------------- */
@media (min-width: 769px) {
  .mcgtp_mv--ttl--p {
    width: 78rem;
  }
}
.mcgtp_mv--ttl--p ._small {
  font-size: 0.6em;
  font-weight: 400;
}
@media (max-width: 768px) {
  .mcgtp_mv--ttl--p ._small {
    font-size: 0.8em;
  }
}

.mcgtp_concept--block--item {
  padding-right: 2rem;
  padding-bottom: 0;
}
@media (max-width: 768px) {
  .mcgtp_concept--block--item {
    padding-right: 0;
    padding-bottom: 2.4rem;
  }
}

@media (max-width: 768px) {
  .mcgtp_concept--block--item--desc {
    text-align: justify;
    text-justify: inter-ideograph;
  }
}
.mcgtp_concept--block--item--desc ._indent {
  display: block;
  text-indent: -1em;
  padding-left: 1em;
}

._col_blu {
  color: #003b83;
}

._col_red {
  color: #c00;
}

._col_blk {
  color: #000000;
}

._fukutomoji {
  display: inline-block;
  -webkit-text-stroke: 0.8rem #003b83;
  position: relative;
}
._fukutomoji::before {
  content: attr(data-item) "";
  display: inline-block;
  -webkit-text-stroke: 0rem #003b83;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 2;
}
._fukutomoji::after {
  content: attr(data-item) "";
  display: inline-block;
  -webkit-text-stroke: 0.4rem #fff;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1;
}

/* ----------------------------------------

home

---------------------------------------- */
#home01 .tbb_text_move .cell_block._desc {
  position: relative;
}
@media (max-width: 768px) {
  #home01 .tbb_text_move .cell_block._desc img {
    display: block;
    object-position: 10% 100%;
    height: 23rem;
  }
}
#home01 .tbb_text_move .cell_block._desc .mcgtp_concept--block--img--desc {
  margin: 0;
  padding: 0;
  position: absolute;
  top: 50%;
  left: 1em;
  z-index: 1;
  -webkit-transform: translateY(-50%) translateX(0);
  transform: translateY(-50%) translateX(0);
}
@media (max-width: 768px) {
  #home01 .tbb_text_move .cell_block._desc .mcgtp_concept--block--img--desc {
    top: 59.8%;
    left: 6rem;
  }
}
@media (max-width: 768px) {
  #home01 .tbb_text_move .cell_block._desc .mcgtp_concept--block--img--desc small {
    font-size: 1.1rem;
  }
}
/*# sourceMappingURL=_maps/style.css.map */
