@charset "UTF-8";
@import url("https://fonts.googleapis.com/css2?family=EB+Garamond:ital,wght@0,400;0,700;0,800;1,400;1,500;1,700;1,800&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Open+Sans:ital,wght@0,400;0,600;0,700;0,800;1,400;1,600;1,700;1,800&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Noto+Serif+JP:wght@400;500;600;700;900&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;500;700;900&display=swap");
#main_visual {
  width: 100%; }
  #main_visual video {
    width: 100%; }

.ttl_box {
  position: relative;
  padding-bottom: 20px;
  margin-bottom: 35px; }
  .ttl_box .eng {
    display: block;
    margin-bottom: 10px;
    text-align: center;
    font-family: "EB Garamond", Arial, "Helvetica", "ヒラギノ角ゴ Pro W3", "游ゴシック", "メイリオ", -apple-system, BlinkMacSystemFont, "Helvetica Neue", "Segoe UI", Arial, sans-serif;
    font-size: 2.0rem;
    font-weight: 500;
    line-height: 1.2;
    letter-spacing: 1.6px;
    text-align: center;
    color: #6d2382; }
  .ttl_box .cnt_ttl {
    display: block;
    font-family: "Noto Serif JP", "游明朝", YuMincho medium, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
    font-size: 3.4rem;
    font-weight: 500;
    line-height: 1.1;
    letter-spacing: 2.6px;
    text-align: center;
    color: #000000; }
    .ttl_box .cnt_ttl span {
      color: #6d2382; }
  .ttl_box:after {
    content: "";
    position: absolute;
    top: 110%;
    left: 0;
    right: 0;
    margin: auto;
    width: 50px;
    height: 4px;
    background-color: #854098; }

.txt_box {
  margin-bottom: 30px; }
  .txt_box .txt {
    font-size: 1.6rem;
    line-height: 1.4;
    letter-spacing: 0.85px; }

.covid-19_box {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  position: relative;
  max-width: 1200px;
  width: 90%;
  height: 140px;
  margin: 40px auto 26px;
  background-color: #f8f2fa; }
  .covid-19_box:before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 140px 165px 0 0;
    border-color: #dcc7e3 transparent transparent transparent;
    z-index: 2; }
  .covid-19_box .covid-19_btn {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    position: relative;
    max-width: 960px;
    width: 100%;
    height: 84px;
    background: url(../images/icon/icon02.svg) no-repeat 95% center/11px auto;
    border: solid 2px #8a459e;
    background-color: #ffffff;
    border-radius: 5px;
    font-size: 2.2rem;
    line-height: normal;
    color: #6d2f7e;
    z-index: 3;
    text-decoration: none; }
    .covid-19_box .covid-19_btn span {
      padding-left: 60px;
      height: 40px;
      background: url(../images/icon/icon01.svg) no-repeat left center/40px auto; }

.contents_contact_area.contents_box {
  margin-bottom: 40px; }

.contents_contact_area .bnr {
  max-width: 585px;
  width: 48.75%; }
  .contents_contact_area .bnr a {
    width: 100%; }
  .contents_contact_area .bnr:nth-of-type(1) {
    margin-right: 2.5%; }

@media screen and (max-width: 1240px) {
  .ttl_box {
    position: relative;
    padding-bottom: 1.6129vw;
    margin-bottom: 2.82258vw; }
    .ttl_box .eng {
      margin-bottom: 0.80645vw;
      font-size: 1.6129vw; }
    .ttl_box .cnt_ttl {
      font-size: 2.74194vw; }
  .txt_box {
    margin-bottom: 2.41935vw; }
    .txt_box .txt {
      font-size: 1.29032vw; }
  .covid-19_box {
    width: 90%;
    height: 11.29032vw;
    margin: 40px auto 26px;
    background-color: #f8f2fa; }
    .covid-19_box:before {
      border-width: 11.29vw 13.3vw 0 0; }
    .covid-19_box .covid-19_btn {
      max-width: 960px;
      width: 77.41935vw;
      height: 6.77419vw;
      background: url(../images/icon/icon02.svg) no-repeat 95% center/11px auto;
      background-color: #ffffff;
      font-size: 1.77419vw;
      line-height: 1.8; }
      .covid-19_box .covid-19_btn span {
        padding-left: 4.83871vw;
        height: 3.62903vw;
        background: url(../images/icon/icon01.svg) no-repeat left center/3.22vw auto; }
  .contents_contact_area.contents_box {
    margin-bottom: 3.22581vw; } }

@media screen and (max-width: 960px) {
  .ttl_box {
    position: relative;
    padding-bottom: 2.08333vw;
    margin-bottom: 3.64583vw; }
    .ttl_box .eng {
      margin-bottom: 1.04167vw;
      font-size: 2.08333vw; }
    .ttl_box .cnt_ttl {
      font-size: 3.54167vw; }
  .txt_box {
    margin-bottom: 3.125vw; }
    .txt_box .txt {
      font-size: 1.66667vw; }
  .covid-19_box {
    width: 90%;
    height: 14.58333vw;
    margin: 4.16667vw auto 2.70833vw;
    background-color: #f8f2fa; }
    .covid-19_box:before {
      border-width: 14.58vw 17.18vw 0 0; }
    .covid-19_box .covid-19_btn {
      max-width: 960px;
      height: 8.75vw;
      background: url(../images/icon/icon02.svg) no-repeat 95% center/11px auto;
      background-color: #ffffff;
      font-size: 2.29167vw;
      line-height: 1.8; }
      .covid-19_box .covid-19_btn span {
        padding-left: 6.25vw;
        height: 4.6875vw;
        background: url(../images/icon/icon01.svg) no-repeat left center/4.16vw auto; }
  .contents_contact_area.contents_box {
    margin-bottom: 4.16667vw; } }

@media screen and (max-width: 768px) {
  .ttl_box {
    position: relative;
    padding-bottom: 2.60417vw;
    margin-bottom: 9.11458vw; }
    .ttl_box .eng {
      margin-bottom: 1.30208vw;
      font-size: 3.90625vw; }
    .ttl_box .cnt_ttl {
      font-size: 5.98958vw; }
  .txt_box {
    margin-bottom: 3.90625vw; }
    .txt_box .txt {
      font-size: 4.16667vw; }
  .covid-19_box {
    width: 90%;
    height: 18.22917vw;
    margin: 5.20833vw auto 3.38542vw;
    background-color: #f8f2fa; }
    .covid-19_box:before {
      border-width: 18.22vw 21.48vw 0 0; }
    .covid-19_box .covid-19_btn {
      max-width: 960px;
      height: 10.9375vw;
      background: url(../images/icon/icon02.svg) no-repeat 96% center/1.43vw auto;
      background-color: #ffffff;
      font-size: 2.60417vw; }
      .covid-19_box .covid-19_btn span {
        padding-left: 6.51042vw;
        height: 6.51042vw;
        background: url(../images/icon/icon01.svg) no-repeat left center/5.4vw auto;
        line-height: 2.4; }
  .contents_contact_area {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-flow: column wrap;
    flex-flow: column wrap;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center; }
    .contents_contact_area.contents_box {
      margin-bottom: 5.20833vw; }
    .contents_contact_area .bnr {
      max-width: 708px;
      width: 100%; }
      .contents_contact_area .bnr a {
        display: block;
        width: 100%; }
      .contents_contact_area .bnr:nth-of-type(1) {
        margin-bottom: 5%;
        margin-right: 0%; } }

#info_cnt {
  -webkit-box-align: stretch;
  -ms-flex-align: stretch;
  align-items: stretch;
  margin-bottom: 25px; }
  #info_cnt .left_box {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-flow: column wrap;
    flex-flow: column wrap;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    max-width: 280px;
    width: 23.33333%;
    border-top: 3px solid #92679e;
    border-bottom: 1px solid #92679e; }
    #info_cnt .left_box .ttl_box {
      padding-bottom: 0;
      margin-bottom: 30px; }
      #info_cnt .left_box .ttl_box .eng {
        font-size: 1.6rem;
        font-weight: 600; }
      #info_cnt .left_box .ttl_box .cnt_ttl {
        font-size: 2.6rem; }
      #info_cnt .left_box .ttl_box:after {
        content: none; }
    #info_cnt .left_box .more_btn:first-of-type {
      margin-bottom: 10px; }
  #info_cnt .right_box {
    max-width: 907px;
    width: 75.58333%;
    background: url(../images/top/cnt_bg01.svg) no-repeat 98% 90%/168px auto; }
    #info_cnt .right_box li {
      padding: 18px 30px;
      border-bottom: 1px dotted #b3acac; }
      #info_cnt .right_box li:first-of-type {
        border-top: 1px dotted #b3acac; }
      #info_cnt .right_box li .date {
        font-size: 1.5rem;
        line-height: 1.1;
        color: #000; }
      #info_cnt .right_box li .cat {
        display: inline-block;
        border-radius: 2px;
        background-color: #8a459e;
        padding: 5px 20px;
        margin: 0 15px 0 20px;
        border-radius: 3px;
        font-size: 1.4rem;
        line-height: 1.1;
        text-align: left;
        color: #ffffff; }
      #info_cnt .right_box li a {
        font-size: 1.5rem;
        line-height: 1.2;
        color: #000000;
        text-decoration: none; }
        #info_cnt .right_box li a:hover {
          text-decoration: underline; }

@media screen and (max-width: 1240px) {
  #info_cnt {
    -webkit-box-align: stretch;
    -ms-flex-align: stretch;
    align-items: stretch;
    margin-bottom: 1.24194vw; }
    #info_cnt .left_box {
      max-width: 280px;
      width: 23.33333%;
      border-top: 3px solid #92679e;
      border-bottom: 1px solid #92679e; }
      #info_cnt .left_box .ttl_box {
        margin-bottom: 2.41935vw; }
        #info_cnt .left_box .ttl_box .eng {
          font-size: 1.29032vw;
          font-weight: 600; }
        #info_cnt .left_box .ttl_box .cnt_ttl {
          font-size: 2.09677vw; }
      #info_cnt .left_box .more_btn:first-of-type {
        margin-bottom: 10px; }
    #info_cnt .right_box {
      max-width: 907px;
      width: 75.58333%;
      background: url(../images/top/cnt_bg01.svg) no-repeat 98% 90%/168px auto; }
      #info_cnt .right_box li {
        padding: 18px 30px;
        border-bottom: 1px dotted #b3acac; }
        #info_cnt .right_box li:first-of-type {
          border-top: 1px dotted #b3acac; }
        #info_cnt .right_box li .date {
          font-size: 1.5rem;
          line-height: 1.1;
          color: #000; }
        #info_cnt .right_box li .cat {
          padding: 5px 20px;
          margin: 0 15px 0 20px;
          font-size: 1.4rem;
          line-height: 1.1;
          text-align: left;
          color: #ffffff; }
        #info_cnt .right_box li a {
          display: block;
          margin-top: 10px;
          font-size: 1.5rem;
          line-height: 1.6; } }

@media screen and (max-width: 768px) {
  #info_cnt {
    margin-bottom: 4.46354vw; }
    #info_cnt .contents_box {
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
      -ms-flex-flow: column wrap;
      flex-flow: column wrap;
      -webkit-box-align: stretch;
      -ms-flex-align: stretch;
      align-items: stretch; }
    #info_cnt .left_box {
      max-width: none;
      width: 100%;
      padding: 3.90625vw 0 3.90625vw;
      border-top: 3px solid #92679e;
      border-bottom: none; }
      #info_cnt .left_box .ttl_box {
        margin-bottom: 7.16146vw; }
        #info_cnt .left_box .ttl_box .eng {
          font-size: 3.38542vw;
          font-weight: 600; }
        #info_cnt .left_box .ttl_box .cnt_ttl {
          font-size: 6.77083vw; }
      #info_cnt .left_box .btn_list {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center; }
      #info_cnt .left_box .more_btn {
        max-width: none;
        width: 41.66667vw;
        height: 9.375vw;
        background: #fff url(../images/icon/icon02.svg) no-repeat 95% center/1.4vw auto;
        font-size: 3.64583vw; }
        #info_cnt .left_box .more_btn:first-of-type {
          margin-right: 10px;
          margin-bottom: 0px; }
    #info_cnt .right_box {
      max-width: none;
      width: 100%;
      background: url(../images/top/cnt_bg01.svg) no-repeat 98% 90%/21.8vw auto; }
      #info_cnt .right_box li {
        padding: 3.64583vw 3.90625vw;
        border-bottom: 1px dotted #b3acac; }
        #info_cnt .right_box li:first-of-type {
          border-top: 1px dotted #b3acac; }
        #info_cnt .right_box li .date {
          font-size: 3.51563vw;
          line-height: 1.1;
          color: #000; }
        #info_cnt .right_box li .cat {
          padding: 1.04167vw 2.60417vw;
          margin: 0 1.95313vw 0 2.60417vw;
          font-size: 3.38542vw; }
        #info_cnt .right_box li a {
          display: block;
          margin-top: 2.60417vw;
          font-size: 4.16667vw;
          line-height: 1.6; } }

#funeral_cnt {
  padding: 70px 0;
  background: #f8f2fa; }
  #funeral_cnt .guide_list {
    margin-right: -3%; }
    #funeral_cnt .guide_list .card_box {
      max-width: 376px;
      width: 30.32258%;
      -webkit-box-shadow: 0px 2px 8px 0 #b5abb8;
      box-shadow: 0px 2px 8px 0 #b5abb8;
      background-color: #ffffff;
      margin-right: 3%;
      margin-bottom: 2.41935%;
      padding: 10px 10px 20px; }
      #funeral_cnt .guide_list .card_box .img {
        max-width: 352px;
        width: 100%;
        padding: 0px;
        margin: 0 auto 21px; }
      #funeral_cnt .guide_list .card_box .sub_ttl {
        display: block;
        position: relative;
        text-align: center;
        margin-bottom: 12px; }
        #funeral_cnt .guide_list .card_box .sub_ttl .ttl {
          padding-bottom: 15px;
          font-family: "Noto Serif JP", "游明朝", YuMincho medium, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
          font-size: 2.6rem;
          font-weight: 600;
          line-height: 1.2;
          letter-spacing: 1.3px;
          color: #6a2a7b; }
        #funeral_cnt .guide_list .card_box .sub_ttl:after {
          content: "";
          position: absolute;
          top: 100%;
          left: 0;
          right: 0;
          margin: auto;
          max-width: 282px;
          width: 75%;
          height: 1px;
          background-color: #6d2382; }
      #funeral_cnt .guide_list .card_box .txt_area {
        margin-bottom: 10px; }
        #funeral_cnt .guide_list .card_box .txt_area .txt {
          margin: 0;
          font-size: 1.6rem;
          line-height: 1.8;
          letter-spacing: 0.48px;
          text-align: center; }
      #funeral_cnt .guide_list .card_box .more_btn {
        width: 79.78723%;
        margin: 0 auto;
        -webkit-box-shadow: 0px 3px 0 0 #5b1071;
        box-shadow: 0px 3px 0 0 #5b1071;
        background: #7c388f url(../images/icon/icon03.svg) no-repeat 95% center/7px auto;
        color: #fff; }
  #funeral_cnt .bnr_list .bnr_box {
    max-width: 580px;
    width: 48.33333%; }
    #funeral_cnt .bnr_list .bnr_box a {
      display: block;
      width: 100%;
      margin-bottom: 10px; }
    #funeral_cnt .bnr_list .bnr_box .txt {
      font-size: 1.5rem;
      line-height: 1.4;
      color: #000000; }

@media screen and (max-width: 1240px) {
  #funeral_cnt {
    padding: 5.64516vw 0;
    background: #f8f2fa; }
    #funeral_cnt .guide_list {
      margin-right: -2.41935vw; }
      #funeral_cnt .guide_list .card_box {
        max-width: 350px;
        width: 28.22581vw;
        margin-right: 2.41935vw;
        margin-bottom: 2.41935vw;
        padding: 10px 10px 20px; }
        #funeral_cnt .guide_list .card_box .img {
          max-width: 352px;
          width: 100%;
          padding: 0px;
          margin: 0 auto 1.69355vw; }
        #funeral_cnt .guide_list .card_box .sub_ttl {
          margin-bottom: 0.96774vw; }
          #funeral_cnt .guide_list .card_box .sub_ttl .ttl {
            padding-bottom: 1.20968vw;
            font-size: 2.09677vw; }
          #funeral_cnt .guide_list .card_box .sub_ttl:after {
            max-width: 282px;
            width: 80.57143%; }
        #funeral_cnt .guide_list .card_box .txt_area {
          margin-bottom: 10px; }
          #funeral_cnt .guide_list .card_box .txt_area .txt {
            font-size: 1.29032vw; }
        #funeral_cnt .guide_list .card_box .more_btn {
          width: 24.19355vw;
          background: #7c388f url(../images/icon/icon03.svg) no-repeat 95% center/7px auto; }
    #funeral_cnt .bnr_list .bnr_box a {
      display: block;
      margin-bottom: 0.80645vw; }
    #funeral_cnt .bnr_list .bnr_box .txt {
      font-size: 1.5rem;
      line-height: 1.4;
      color: #000000; } }

@media screen and (max-width: 768px) {
  #funeral_cnt {
    padding: 7.29167vw 0; }
    #funeral_cnt .guide_list {
      margin-right: 0; }
      #funeral_cnt .guide_list .card_box {
        max-width: 350px;
        width: 100%;
        margin-right: 0;
        margin-bottom: 3.90625vw;
        padding: 10px 10px 20px; }
        #funeral_cnt .guide_list .card_box .img {
          max-width: 352px;
          width: 100%;
          padding: 0px;
          margin: 0 auto 3.7594vw; }
        #funeral_cnt .guide_list .card_box .sub_ttl {
          margin-bottom: 3.25521vw; }
          #funeral_cnt .guide_list .card_box .sub_ttl .ttl {
            padding-bottom: 2.60417vw;
            font-size: 5.20833vw; }
          #funeral_cnt .guide_list .card_box .sub_ttl:after {
            max-width: 282px;
            width: 80.57143%; }
        #funeral_cnt .guide_list .card_box .txt_area {
          max-width: 282px;
          width: 80.57143%;
          margin: 0 auto 3.90625vw; }
          #funeral_cnt .guide_list .card_box .txt_area .txt {
            font-size: 4.16667vw; }
        #funeral_cnt .guide_list .card_box .more_btn {
          max-width: 282px;
          width: 80.57143%;
          height: 11.71875vw;
          font-size: 3.90625vw;
          background: #7c388f url(../images/icon/icon03.svg) no-repeat 95% center/1.2vw auto; }
    #funeral_cnt .bnr_list {
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
      -ms-flex-flow: column wrap;
      flex-flow: column wrap;
      -webkit-box-align: center;
      -ms-flex-align: center;
      align-items: center; }
      #funeral_cnt .bnr_list .bnr_box {
        max-width: 708px;
        width: 100%; }
        #funeral_cnt .bnr_list .bnr_box:first-of-type {
          margin-bottom: 3.90625vw; }
        #funeral_cnt .bnr_list .bnr_box a {
          display: block;
          margin-bottom: 0.80645vw; }
        #funeral_cnt .bnr_list .bnr_box .txt {
          font-size: 3.64583vw;
          line-height: 1.4;
          color: #000000; } }

#ceremony_hall_cnt {
	width: 100%;
	padding-top: 10px;
	padding-right: 0;
	padding-bottom: 80px;
	padding-left: 0;
}
  #ceremony_hall_cnt .hall_list {
    margin-right: -40px; }
    #ceremony_hall_cnt .hall_list .card_box {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-flow: column wrap;
	flex-flow: column wrap;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-pack: start;
	-ms-flex-pack: start;
	justify-content: flex-start;
	max-width: 480px;
	width: 40%;
	-webkit-box-shadow: 0px 2px 8px 0 #b5abb8;
	box-shadow: 0px 2px 8px 0 #b5abb8;
	background-color: #ffffff;
	margin-right: 40px;
	padding-bottom: 35px;
	margin-bottom: 20px;
}
    #ceremony_hall_cnt .hall_list .img {
      margin: 10px 10px 20px; }
    #ceremony_hall_cnt .hall_list .sub_ttl {
      display: inline-block;
      position: relative;
      padding-bottom: 15px;
      margin-bottom: 25px; }
      #ceremony_hall_cnt .hall_list .sub_ttl:after {
        content: "";
        position: absolute;
        top: 100%;
        left: 0;
        width: 100%;
        height: 1px;
        background-color: #6d2382; }
      #ceremony_hall_cnt .hall_list .sub_ttl .ttl {
        font-family: "Noto Serif JP", "游明朝", YuMincho medium, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
        font-size: 2.6rem;
        letter-spacing: 0.78px;
        font-weight: 500;
        line-height: 1.2;
        letter-spacing: 0.66px;
        text-align: center;
        color: #6a2a7b; }
        #ceremony_hall_cnt .hall_list .sub_ttl .ttl span {
          font-size: 2.2rem; }
    #ceremony_hall_cnt .hall_list .txt_area {
      text-align: center; }
      #ceremony_hall_cnt .hall_list .txt_area .txt {
        font-size: 1.6rem;
        line-height: 1.5;
        letter-spacing: 1.6px; }
  #ceremony_hall_cnt .btn_box {
    margin-top: 30px; }
    #ceremony_hall_cnt .btn_box .more_btn {
      max-width: 300px;
      width: 100%;
      height: 54px;
      margin: 0 auto;
      -webkit-box-shadow: 0px 3px 0 0 #5b1071;
      box-shadow: 0px 3px 0 0 #5b1071;
      background: #7c388f url(../images/icon/icon03.svg) no-repeat 95% center/7px auto;
      color: #fff; }

@media screen and (max-width: 1240px) {
  #ceremony_hall_cnt {
    width: 100%;
    padding: 1vw 0; }
    #ceremony_hall_cnt .hall_list {
      margin-right: -3.33333vw; }
      #ceremony_hall_cnt .hall_list .card_box {
        max-width: 480px;
        width: 40vw;
        margin-right: 3.33333vw;
        padding-bottom: 2.91667vw; }
      #ceremony_hall_cnt .hall_list .img {
        margin: 10px 10px 1.6129vw; }
      #ceremony_hall_cnt .hall_list .sub_ttl {
        display: inline-block;
        position: relative;
        padding-bottom: 1.20968vw;
        margin-bottom: 1.20968vw; }
        #ceremony_hall_cnt .hall_list .sub_ttl:after {
          content: "";
          position: absolute;
          top: 100%;
          left: 0;
          width: 100%;
          height: 1px;
          background-color: #6d2382; }
        #ceremony_hall_cnt .hall_list .sub_ttl .ttl {
          font-size: 2.16667vw; }
          #ceremony_hall_cnt .hall_list .sub_ttl .ttl span {
            font-size: 1.83333vw; }
      #ceremony_hall_cnt .hall_list .txt_area {
        text-align: center; }
        #ceremony_hall_cnt .hall_list .txt_area .txt {
          font-size: 1.33333vw;
          line-height: 1.5;
          letter-spacing: 1.6px; }
    #ceremony_hall_cnt .btn_box {
      margin-top: 2.5vw; }
      #ceremony_hall_cnt .btn_box .more_btn {
        max-width: 300px;
        width: 100%;
        height: 54px;
        font-size: 1.6rem; } }

@media screen and (max-width: 768px) {
  #ceremony_hall_cnt {
    width: 100%;
    padding: 3.41667vw 0; }
    #ceremony_hall_cnt .hall_list {
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
      -ms-flex-flow: column wrap;
      flex-flow: column wrap;
      -webkit-box-align: center;
      -ms-flex-align: center;
      align-items: center;
      -webkit-box-pack: center;
      -ms-flex-pack: center;
      justify-content: center;
      margin-right: 0px; }
      #ceremony_hall_cnt .hall_list .card_box {
        max-width: 480px;
        width: 100%;
        margin-right: 0px;
        margin-bottom: 5vw;
        padding-bottom: 4.55729vw; }
      #ceremony_hall_cnt .hall_list .img {
        margin: 10px 10px 4.55729vw; }
      #ceremony_hall_cnt .hall_list .sub_ttl {
        display: inline-block;
        position: relative;
        padding-bottom: 3.90625vw;
        margin-bottom: 3.90625vw; }
        #ceremony_hall_cnt .hall_list .sub_ttl .ttl {
          font-size: 4.94792vw; }
          #ceremony_hall_cnt .hall_list .sub_ttl .ttl span {
            font-size: 4.16667vw; }
      #ceremony_hall_cnt .hall_list .txt_area .txt {
        font-size: 4.16667vw;
        line-height: 1.8; }
    #ceremony_hall_cnt .btn_box {
      margin-top: 0vw; }
      #ceremony_hall_cnt .btn_box .more_btn {
        max-width: 65.10417vw;
        width: 100%;
        height: 11.71875vw;
        font-size: 3.90625vw; } }

#features_cnt {
  width: 100%;
  background-color: #f8f2fa;
  padding: 85px 0 90px; }
  #features_cnt .ttl_box {
    margin-bottom: 50px; }
    #features_cnt .ttl_box .cnt_ttl span em {
      font-size: 4.0rem;
      font-weight: 500; }
    #features_cnt .ttl_box .cnt_ttl span b {
      font-size: 3.5rem;
      font-weight: 500; }
  #features_cnt .features_list .large_box {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-flow: row wrap;
    flex-flow: row wrap;
    position: relative;
    margin-bottom: 40px; }
    #features_cnt .features_list .large_box .number_box {
      position: absolute;
      top: -18px;
      left: 6.33333%; }
    #features_cnt .features_list .large_box:nth-of-type(1) .txt_area {
      top: 50px;
      right: 0; }
      #features_cnt .features_list .large_box:nth-of-type(1) .txt_area .txt {
        max-width: 440px;
        width: 73.33333%; }
    #features_cnt .features_list .large_box:nth-of-type(2) {
      -webkit-box-orient: horizontal;
      -webkit-box-direction: reverse;
      -ms-flex-flow: row-reverse wrap;
      flex-flow: row-reverse wrap; }
      #features_cnt .features_list .large_box:nth-of-type(2) .txt_area {
        top: 40px;
        left: 0; }
    #features_cnt .features_list .large_box:nth-of-type(3) .txt_area {
      top: 40px;
      right: 0; }
    #features_cnt .features_list .large_box .img {
      max-width: 720px;
      width: 60%; }
    #features_cnt .features_list .large_box .txt_area {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
      -ms-flex-flow: column wrap;
      flex-flow: column wrap;
      -webkit-box-pack: center;
      -ms-flex-pack: center;
      justify-content: center;
      -webkit-box-align: center;
      -ms-flex-align: center;
      align-items: center;
      position: absolute;
      width: 600px;
      padding: 45px 0 60px;
      -webkit-box-shadow: 0px 1px 8px 0 #b5abb8;
      box-shadow: 0px 1px 8px 0 #b5abb8;
      background: #fff url(../images/top/cnt_bg01.svg) no-repeat 96% 96%/126px auto; }
      #features_cnt .features_list .large_box .txt_area .sub_ttl {
        display: inline-block;
        position: relative;
        padding: 0 0px 15px;
        margin-bottom: 25px;
        max-width: 461px;
        width: 76.66667%; }
        #features_cnt .features_list .large_box .txt_area .sub_ttl:after {
          content: "";
          position: absolute;
          top: 100%;
          left: 0;
          width: 100%;
          height: 1px;
          background-color: #6d2382; }
        #features_cnt .features_list .large_box .txt_area .sub_ttl .ttl {
          font-family: "Noto Serif JP", "游明朝", YuMincho medium, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
          font-size: 3.4rem;
          letter-spacing: 0.78px;
          font-weight: 500;
          line-height: 1.5;
          letter-spacing: 0.66px;
          text-align: center;
          color: #6a2a7b; }
          #features_cnt .features_list .large_box .txt_area .sub_ttl .ttl span {
            font-size: 2.2rem; }
      #features_cnt .features_list .large_box .txt_area .txt {
        display: block;
        max-width: 460px;
        width: 76.66667%;
        font-size: 1.6rem;
        line-height: 1.8;
        letter-spacing: 0px;
        text-align: left;
        color: #000000; }
  #features_cnt .btn_box .more_btn {
    max-width: 420px;
    width: 100%;
    height: 70px;
    margin: 0 auto;
    -webkit-box-shadow: 0px 3px 0 0 #5b1071;
    box-shadow: 0px 3px 0 0 #5b1071;
    background: #7c388f url(../images/icon/icon03.svg) no-repeat 95% center/7px auto;
    color: #fff; }

@media screen and (max-width: 1240px) {
  #features_cnt {
    padding: 7.08333vw 0 7.5vw; }
    #features_cnt .ttl_box {
      margin-bottom: 4.16667vw; }
    #features_cnt .features_list .large_box {
      margin-bottom: 3.33333vw; }
      #features_cnt .features_list .large_box:nth-of-type(1) .txt_area {
        top: 2.91667vw;
        right: 0; }
        #features_cnt .features_list .large_box:nth-of-type(1) .txt_area .txt {
          max-width: 36.66667vw;
          width: 36.66667vw; }
      #features_cnt .features_list .large_box:nth-of-type(2) .txt_area {
        top: 1.66667vw; }
      #features_cnt .features_list .large_box:nth-of-type(3) .txt_area {
        top: 2.5vw; }
      #features_cnt .features_list .large_box .img {
        max-width: 60vw;
        width: 60vw; }
      #features_cnt .features_list .large_box .txt_area {
        width: 50vw;
        padding: 3.75vw 0 5vw;
        -webkit-box-shadow: 0px 1px 8px 0 #b5abb8;
        box-shadow: 0px 1px 8px 0 #b5abb8; }
        #features_cnt .features_list .large_box .txt_area .sub_ttl {
          padding: 0 0px 1.25vw;
          margin-bottom: 2.08333vw;
          max-width: 461px;
          width: 38.33333vw; }
          #features_cnt .features_list .large_box .txt_area .sub_ttl .ttl {
            font-size: 2.83333vw; }
            #features_cnt .features_list .large_box .txt_area .sub_ttl .ttl span {
              font-size: 1.83333vw; }
        #features_cnt .features_list .large_box .txt_area .txt {
          max-width: 460px;
          width: 38.33333vw;
          font-size: 1.33333vw; }
    #features_cnt .btn_box .more_btn {
      max-width: 420px;
      width: 100%;
      height: 70px;
      font-size: 1.6rem; } }

@media screen and (max-width: 960px) {
  #features_cnt .ttl_box {
    margin-bottom: 5.20833vw; }
    #features_cnt .ttl_box .cnt_ttl span em {
      font-size: 4.16667vw;
      font-weight: 500; }
    #features_cnt .ttl_box .cnt_ttl span b {
      font-size: 3.64583vw;
      font-weight: 500; }
  #features_cnt .features_list .large_box {
    margin-bottom: 3.33333vw; }
    #features_cnt .features_list .large_box .number_box {
      top: -2.60417vw;
      left: 2.08333vw; }
    #features_cnt .features_list .large_box:nth-of-type(1) .txt_area {
      top: 4.16667vw; }
    #features_cnt .features_list .large_box:nth-of-type(2) .txt_area {
      top: 3.33333vw; }
    #features_cnt .features_list .large_box:nth-of-type(3) .txt_area {
      top: 3.33333vw; }
    #features_cnt .features_list .large_box .img {
      max-width: 60vw;
      width: 60vw; }
    #features_cnt .features_list .large_box .txt_area {
      width: 50vw;
      padding: 3.75vw 0 5vw; }
      #features_cnt .features_list .large_box .txt_area:before {
        top: -2.60417vw;
        left: 2.08333vw;
        width: 6.25vw;
        height: 6.25vw;
        border-radius: 50%; }
      #features_cnt .features_list .large_box .txt_area .sub_ttl {
        padding: 0 0px 1.25vw;
        margin-bottom: 2.08333vw;
        max-width: 461px;
        width: 38.33333vw; }
        #features_cnt .features_list .large_box .txt_area .sub_ttl .ttl {
          font-size: 2.83333vw; }
          #features_cnt .features_list .large_box .txt_area .sub_ttl .ttl span {
            font-size: 1.83333vw; }
      #features_cnt .features_list .large_box .txt_area .txt {
        max-width: 460px;
        width: 38.33333vw;
        font-size: 1.33333vw; }
  #features_cnt .btn_box .more_btn {
    max-width: 420px;
    width: 100%;
    height: 70px; } }

@media screen and (max-width: 768px) {
  #features_cnt .ttl_box {
    margin-bottom: 9.11458vw; }
    #features_cnt .ttl_box .cnt_ttl span em {
      font-size: 6.51042vw;
      font-weight: 500; }
    #features_cnt .ttl_box .cnt_ttl span b {
      font-size: 5.85938vw;
      font-weight: 500; }
  #features_cnt .features_list .large_box {
    margin-bottom: 5.20833vw; }
    #features_cnt .features_list .large_box .number_box {
      top: -3.90625vw;
      left: 2.60417vw; }
    #features_cnt .features_list .large_box:nth-of-type(1) {
      padding-bottom: 50vw; }
      #features_cnt .features_list .large_box:nth-of-type(1) .txt_area {
        top: auto;
        bottom: 0;
        right: 2vw; }
        #features_cnt .features_list .large_box:nth-of-type(1) .txt_area .txt {
          max-width: none;
          width: 78.125%; }
    #features_cnt .features_list .large_box:nth-of-type(2) {
      padding-bottom: 70vw; }
      #features_cnt .features_list .large_box:nth-of-type(2) .txt_area {
        top: auto;
        bottom: 0;
        left: 2vw; }
    #features_cnt .features_list .large_box:nth-of-type(3) {
      padding-bottom: 80vw; }
      #features_cnt .features_list .large_box:nth-of-type(3) .txt_area {
        top: auto;
        bottom: 0;
        right: 2vw; }
    #features_cnt .features_list .large_box .img {
      max-width: 93.75vw;
      width: 93.75vw; }
    #features_cnt .features_list .large_box .txt_area {
      width: 78.125vw;
      padding: 5.85938vw 0 7.8125vw;
      background: #fff url(../images/top/cnt_bg01.svg) no-repeat 96% 96%/16.4vw auto; }
      #features_cnt .features_list .large_box .txt_area:before {
        top: -3.25521vw;
        left: 2.60417vw;
        width: 9.11458vw;
        height: 9.11458vw;
        border-radius: 50%; }
      #features_cnt .features_list .large_box .txt_area .sub_ttl {
        padding: 0 0px 1.95313vw;
        margin-bottom: 3.25521vw;
        max-width: 500px;
        width: 65.10417vw; }
        #features_cnt .features_list .large_box .txt_area .sub_ttl .ttl {
          font-size: 4.94792vw; }
          #features_cnt .features_list .large_box .txt_area .sub_ttl .ttl span {
            font-size: 3.38542vw; }
      #features_cnt .features_list .large_box .txt_area .txt {
        max-width: 500px;
        width: 65.10417vw;
        font-size: 4.16667vw; }
  #features_cnt .btn_box .more_btn {
    max-width: none;
    width: 70.3125vw;
    height: 11.71875vw;
    font-size: 3.90625vw; } }

#greeting_cnt {
  padding: 60px 0 70px; }
  #greeting_cnt .contents_box {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-flow: column nowrap;
    flex-flow: column nowrap;
    height: 415px;
    padding: 0px 80px 0px;
    border-radius: 5px;
    border: 1px solid #d6d2d9;
    background: url(../images/top/greeting_img01.png) no-repeat right center/cover; }
  #greeting_cnt .border_ttl_box {
    width: 100%;
    position: relative;
    margin-bottom: 35px;
    padding-left: 20px; }
    #greeting_cnt .border_ttl_box:before {
      content: "";
      position: absolute;
      width: 6px;
      height: 100%;
      border-radius: 5px;
      background-color: #752b8a;
      left: 0;
      top: 0;
      bottom: 0;
      margin: auto; }
    #greeting_cnt .border_ttl_box .border_ttl {
      font-family: "Noto Serif JP", "游明朝", YuMincho medium, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
      font-size: 3.4rem;
      font-weight: 600;
      line-height: 1.4;
      letter-spacing: 2.04px;
      text-align: left;
      color: #6a2a7b; }
  #greeting_cnt .txt_box {
    width: 100%;
    margin-bottom: -20px; }
    #greeting_cnt .txt_box .txt {
      margin-bottom: 20px;
      font-size: 1.6rem;
      line-height: 2.0;
      letter-spacing: 0.48px;
      text-align: left;
      color: #000000; }

@media screen and (max-width: 1240px) {
  #greeting_cnt {
    padding: 60px 0 70px; }
    #greeting_cnt .contents_box {
      height: 34.58333vw;
      padding: 0px 6.66667vw 0px;
      background: url(../images/top/greeting_img01.png) no-repeat 80% center/cover; }
    #greeting_cnt .border_ttl_box {
      margin-bottom: 2.91667vw;
      padding-left: 1.66667vw; }
      #greeting_cnt .border_ttl_box .border_ttl {
        font-size: 2.83333vw; }
    #greeting_cnt .txt_box {
      width: 100%;
      margin-bottom: -1.66667vw; }
      #greeting_cnt .txt_box .txt {
        margin-bottom: 1.66667vw;
        font-size: 1.33333vw;
        line-height: 1.8;
        letter-spacing: 0.48px; } }

@media screen and (max-width: 960px) {
  #greeting_cnt {
    padding: 60px 0 70px; }
    #greeting_cnt .contents_box {
      height: auto;
      padding: 6.66667vw 5vw;
      background: url(../images/top/greeting_img01.png) no-repeat 80% center/cover; }
    #greeting_cnt .border_ttl_box {
      margin-bottom: 3.64583vw;
      padding-left: 2.08333vw; }
      #greeting_cnt .border_ttl_box .border_ttl {
        font-size: 3.54167vw; }
    #greeting_cnt .txt_box {
      width: 100%;
      margin-bottom: -2.08333vw; }
      #greeting_cnt .txt_box .txt {
        margin-bottom: 2.08333vw;
        font-size: 1.66667vw;
        line-height: 1.8;
        letter-spacing: 0.48px; } }

@media screen and (max-width: 768px) {
  #greeting_cnt {
    padding: 7.8125vw 0 9.11458vw; }
    #greeting_cnt .contents_box {
      height: auto;
      padding: 11.71875vw 6.77083vw;
      background: #fff url(../images/top/greeting_img01_sp.png) no-repeat right top/cover; }
    #greeting_cnt .border_ttl_box {
      margin-bottom: 4.55729vw;
      padding-left: 3.90625vw; }
      #greeting_cnt .border_ttl_box .border_ttl {
        font-size: 6.51042vw;
        letter-spacing: 0em;
        text-shadow: 1px 1px 3px rgba(255, 255, 255, 0.8), -1px -1px 3px rgba(255, 255, 255, 0.8); }
    #greeting_cnt .txt_box {
      width: 100%;
      margin-bottom: -2.60417vw; }
      #greeting_cnt .txt_box .txt {
        margin-bottom: 2.60417vw;
        font-size: 4.42708vw;
        line-height: 1.8;
        letter-spacing: 0.1em;
        text-shadow: 1px 1px 3px rgba(255, 255, 255, 0.8), -1px -1px 3px rgba(255, 255, 255, 0.8); } }
		
		

/* イメージリスト movie */
#imageListmovie{
	max-width:1400px;
	overflow:hidden;
	margin-top:20px;
}

#imageListmovie li{
	width:50%;
	float:left;
	margin-bottom:20px;
	padding:0 15px;
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	list-style: none;
}


#imageListmovie p.txt01 {
	line-height:45px;
	text-align:center;
	color:#FFFFFF;
	font-size:120%;
	font-weight:bold;
	background-color: #333333;
}

#imageListmovie p.txt02 {
	color: #fff;
	font-size: 1.8rem;
	font-family: "Noto Serif JP", "游明朝", YuMincho medium, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
	font-weight: 500;
	background-color: #6d2382;
	padding:10px;
}



#imageListmovie p.txt03 {
	color:#333333;
    font-size: 1.6rem;
}



.img-responsive{
	width:100%;
	height:auto;
}


/* TABLET */
@media screen and (max-width: 768px){

#imageListmovie li{
	width:100%;
	float:none;
	padding:0 ;
}
}

/* イメージリスト */
#imageListSNS01{
	max-width: 1200px;
	overflow: hidden;
	margin-top: 20px;
	margin-right: auto;
	margin-left: auto;
	margin-bottom: 20px;
}

#imageListSNS01 li{
	width:33.3333%;
	float:left;
	margin-bottom:20px;
	padding:0 5px;
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	list-style: none;
}



.img-responsive{
	width:100%;
	height:auto;
}


/* TABLET */
@media screen and (max-width: 768px){
#imageListSNS01{
	margin-right: 15px;
	margin-left: 15px;
}

#imageListSNS01 li{
	width: 48%;
	float: left;
	padding: 0;
	margin-right: 1%;
	margin-left: 1%;
	margin-bottom:5px;
}


}

/*採用ページボックスレスポンシブ001*/
.boxresrec001 {
	margin-bottom: 20px;
	max-width: 1200px;
	margin-right: auto;
	margin-left: auto;
}
.boxresrec001 p.txt01 {
	display: inline-block;
	/*
	border-radius: 25px;
	*/
	text-decoration: none;
	color: #FFF;
	background-image: linear-gradient(to right, #7131A0, #B28FCC);
	transition: .4s;
	margin-right: 10%;
	margin-left: 10%;
	width: 80%;
	padding-top: 15px;
	padding-right: 20px;
	padding-bottom: 15px;
	padding-left: 20px;
	text-align: center;
	font-size: 117%;
	font-weight: bold;
}
.boxresrec001 p.txt01:hover {
  background-image: linear-gradient(to left top, #B28FCC, #7131A0);
}
.boxresrec001 p.txt01 a:link {
	text-decoration:none;
	color: #FFF;
}
.boxresrec001 p.txt01 a:visited {
	color: #FFF;
}
.boxresrec001 p.txt01 a:hover {
	color: #FFF;
}
.boxresrec001 p.txt01 a:active {
	color: #FFF;
}
