@charset "UTF-8";
/* Scss Document */
/* ------------------------------------------------------------------
/////////////////////////////////////////////////////////////////////
intro
/////////////////////////////////////////////////////////////////////
------------------------------------------------------------------ */
.intro {
  margin: 0;
  padding: 0; }
  .intro__txt {
    line-height: 2.0; }
  .intro__dl {
    width: 50%;
    margin: 40px 0 0;
    padding: 30px 50px;
    border: 4px solid #00a650;
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
    -webkit-flex-wrap: wrap;
    -moz-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    -o-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box; }
    .intro__dl--dt {
      width: 160px;
      margin: 0 0 20px;
      padding: 0 0 0 26px;
      font-size: 24px;
      line-height: 1.0;
      color: #00a650;
      background-image: url("../img/common/ico/03.svg");
      background-position: left center;
      background-repeat: no-repeat;
      background-size: 16px;
      -webkit-box-sizing: border-box;
      -moz-box-sizing: border-box;
      box-sizing: border-box; }
      .intro__dl--dt span {
        padding: 0 0 10px;
        border-bottom: 1px solid #00a650; }
      .intro__dl--dt:last-of-type {
        margin: 0; }
    .intro__dl--dd {
      width: calc(100% - 160px);
      margin: 0 0 20px;
      padding: 0; }
      .intro__dl--dd:last-of-type {
        margin: 0; }

@media (max-width: 1000px) {
  .intro__dl {
    width: 100%; } }
@media (max-width: 700px) {
  .intro__dl {
    padding: 30px;
    display: -webkit-block;
    display: -moz-block;
    display: -ms-block;
    display: -o-block;
    display: block; }
    .intro__dl--dt {
      width: 100%; }
      .intro__dl--dt:last-of-type {
        margin: 0 0 20px; }
    .intro__dl--dd {
      width: 100%; } }
@media (max-width: 500px) {
  .intro__dl {
    padding: 30px 20px; } }
/* ------------------------------------------------------------------
/////////////////////////////////////////////////////////////////////
葬儀の流れ
/////////////////////////////////////////////////////////////////////
------------------------------------------------------------------ */
.flow {
  margin: 100px 0 0;
  padding: 0;
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  -moz-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  -o-flex-wrap: wrap;
  flex-wrap: wrap; }
  .flow__title {
    width: 100%;
    margin: 0 0 50px;
    padding: 0 0 20px;
    font-size: 24px;
    font-weight: normal;
    line-height: 1.0;
    border-bottom: 1px solid #333; }
    .flow__title span {
      min-height: 28px;
      padding: 2px 0 0 50px;
      display: inline-block;
      background-image: url("../img/common/ico/02.svg");
      background-position: left center;
      background-repeat: no-repeat;
      background-size: 30px 28px;
      -webkit-box-sizing: border-box;
      -moz-box-sizing: border-box;
      box-sizing: border-box; }
  .flow__figure {
    width: 653px; }
    .flow__figure p {
      margin: 20px 0 0;
      text-align: center; }
  .flow__txt {
    width: calc(100% - 653px - 20px);
    margin: 0 0 0 20px; }
    .flow__txt--description {
      line-height: 2.0; }
    .flow__txt--tel {
      margin: 40px 0;
      padding: 0 0 0 40px;
      font-family: "Kanit", sans-serif;
      font-size: 32px;
      line-height: 1.0;
      color: #00a650;
      background-image: url("../img/common/ico/01.svg");
      background-position: left center;
      background-repeat: no-repeat;
      background-size: 32px; }
      .flow__txt--tel span.tel-link a {
        color: #00a650; }
    .flow__txt--btn {
      width: 440px;
      height: 70px;
      margin: 0;
      padding: 0; }
      .flow__txt--btn a {
        width: 100%;
        height: 100%;
        display: -webkit-flex;
        display: -moz-flex;
        display: -ms-flex;
        display: -o-flex;
        display: flex;
        align-items: center;
        justify-content: center;
        color: #FFF;
        font-size: 17px;
        line-height: 1.0;
        background-color: #00a650;
        border: 2px solid #00a650;
        -webkit-border-radius: 35px;
        -moz-border-radius: 35px;
        border-radius: 35px;
        text-align: center;
        transition: 0.1s linear; }
        .flow__txt--btn a span {
          padding: 0 30px 0 0;
          background-image: url("../img/common/ico/04.svg");
          background-position: right center;
          background-repeat: no-repeat;
          background-size: 11px 18px; }
        .flow__txt--btn a:hover {
          color: #00a650;
          text-decoration: none;
          background-color: #FFF; }
          .flow__txt--btn a:hover span {
            background-image: url("../img/common/ico/04_green.svg"); }
        .flow__txt--btn a:last-of-type {
          display: none; }
  .flow__image {
    width: 1000px;
    margin: 100px 0 0; }
    .flow__image p {
      margin: 20px 0 0;
      text-align: center;
      font-size: 20px; }

@media (max-width: 1330px) {
  .flow {
    display: -webkit-block;
    display: -moz-block;
    display: -ms-block;
    display: -o-block;
    display: block; }
    .flow__txt {
      width: 100%;
      margin: 30px 0 0; } }
@media (max-width: 1100px) {
  .flow__image {
    width: 100%; }
    .flow__image img {
      width: 100%;
      height: auto; } }
@media (max-width: 750px) {
  .flow__figure {
    width: 100%; }
    .flow__figure img {
      width: 100%;
      height: auto; } }
@media (max-width: 600px) {
  .flow__txt--tel {
    display: none; }
  .flow__txt--btn {
    margin: 40px 0 0; }
    .flow__txt--btn a:first-of-type {
      display: none; }
    .flow__txt--btn a:last-of-type {
      display: -webkit-flex;
      display: -moz-flex;
      display: -ms-flex;
      display: -o-flex;
      display: flex; } }
@media (max-width: 500px) {
  .flow__txt--btn {
    width: 100%; } }
/* ------------------------------------------------------------------
/////////////////////////////////////////////////////////////////////
参考料金一例
/////////////////////////////////////////////////////////////////////
------------------------------------------------------------------ */
.price {
  margin: 100px 0 0;
  padding: 0; }
  .price__title {
    width: 100%;
    margin: 0 0 50px;
    padding: 0 0 20px;
    font-size: 24px;
    font-weight: normal;
    line-height: 1.0;
    border-bottom: 1px solid #333; }
    .price__title span {
      min-height: 28px;
      padding: 2px 0 0 50px;
      display: inline-block;
      background-image: url("../img/common/ico/02.svg");
      background-position: left center;
      background-repeat: no-repeat;
      background-size: 30px 28px;
      -webkit-box-sizing: border-box;
      -moz-box-sizing: border-box;
      box-sizing: border-box; }
  .price__txt {
    line-height: 2.0; }
  .price__cnt {
    margin: 30px 0 0;
    padding: 0; }
    .price__cnt--dt {
      margin: 0 0 30px;
      padding: 0;
      display: -webkit-flex;
      display: -moz-flex;
      display: -ms-flex;
      display: -o-flex;
      display: flex;
      align-items: center; }
      .price__cnt--dt span:first-of-type {
        margin: 0 30px 0 0;
        padding: 0 0 0 18px;
        font-size: 24px;
        color: #00a650;
        line-height: 1.0;
        position: relative; }
        .price__cnt--dt span:first-of-type::before {
          content: '';
          border-top: 11px solid #00a650;
          border-right: 7px solid transparent;
          border-bottom: 11px solid transparent;
          border-left: 7px solid transparent;
          position: absolute;
          top: 7px;
          left: 0; }
    .price__cnt--dd {
      margin: 0;
      padding: 0; }
      .price__cnt--dd table {
        width: 100%;
        margin: 0;
        border-collapse: collapse; }
        .price__cnt--dd table th,
        .price__cnt--dd table td {
          padding: 20px;
          font-size: 18px;
          font-weight: normal;
          text-align: center;
          border: 1px solid #BBB;
          -webkit-box-sizing: border-box;
          -moz-box-sizing: border-box;
          box-sizing: border-box; }
        .price__cnt--dd table th,
        .price__cnt--dd table td:first-of-type {
          background-color: #ffd1f3; }

@media (max-width: 720px) {
  .price__cnt--dt {
    display: -webkit-block;
    display: -moz-block;
    display: -ms-block;
    display: -o-block;
    display: block; }
    .price__cnt--dt span {
      display: block; }
      .price__cnt--dt span:first-of-type {
        margin: 0 0 10px; } }
@media (max-width: 640px) {
  .price__cnt--dd table th {
    display: none; }
  .price__cnt--dd table td {
    width: 100%;
    display: block;
    text-align: left;
    border-bottom: none;
    position: relative; }
    .price__cnt--dd table td::before {
      content: attr(data-label);
      width: 80px;
      font-weight: 700;
      font-size: 14px;
      display: inline-block; }
    .price__cnt--dd table td:first-of-type::before {
      content: none; }
  .price__cnt--dd table tr:last-of-type td:last-of-type {
    border-bottom: 1px solid #BBB; } }
/* ------------------------------------------------------------------
/////////////////////////////////////////////////////////////////////
リンク
/////////////////////////////////////////////////////////////////////
------------------------------------------------------------------ */
.link {
  width: 100%;
  height: 130px;
  margin: 50px 0 0;
  padding: 0; }
  .link__anchor {
    width: 100%;
    height: 100%;
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #FFF !important;
    font-size: 18px;
    line-height: 2.0;
    background-color: #e60012;
    border: 1px solid #e60012;
    transition: 0.1s linear; }
    .link__anchor span {
      padding: 0 44px 0 70px;
      background-image: url("../img/common/ico/05.svg"), url("../img/common/ico/06.svg");
      background-position: left center, right center;
      background-repeat: no-repeat;
      background-size: 50px, 24px 20px; }
    .link__anchor:hover {
      color: #e60012 !important;
      text-decoration: none;
      background-color: #FFF; }
      .link__anchor:hover span {
        background-image: url("../img/common/ico/05_red.svg"), url("../img/common/ico/06_red.svg"); }

@media (max-width: 920px) {
  .link {
    height: auto; }
    .link__anchor {
      padding: 40px 20px;
      -webkit-box-sizing: border-box;
      -moz-box-sizing: border-box;
      box-sizing: border-box; } }
/* ------------------------------------------------------------------
/////////////////////////////////////////////////////////////////////
ラブリー割引
/////////////////////////////////////////////////////////////////////
------------------------------------------------------------------ */
.lovely {
  margin: 100px 0 0;
  padding: 0;
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  -moz-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  -o-flex-wrap: wrap;
  flex-wrap: wrap;
  align-items: flex-start; }
  .lovely__title {
    width: 100%;
    margin: 0 0 50px;
    padding: 0 0 20px;
    font-size: 24px;
    font-weight: normal;
    line-height: 1.0;
    border-bottom: 1px solid #333; }
    .lovely__title span {
      min-height: 28px;
      padding: 2px 0 0 50px;
      display: inline-block;
      background-image: url("../img/common/ico/02.svg");
      background-position: left center;
      background-repeat: no-repeat;
      background-size: 30px 28px;
      -webkit-box-sizing: border-box;
      -moz-box-sizing: border-box;
      box-sizing: border-box; }
  .lovely__right {
    width: calc(100% - 306px - 40px);
    margin: 0 0 0 40px; }
    .lovely__right--cc {
      font-size: 24px;
      line-height: 1.0;
      display: inline-block;
      position: relative; }
      .lovely__right--cc::after {
        content: '';
        width: 100%;
        height: 100%;
        position: absolute;
        bottom: -10px;
        left: 0;
        background-color: #daf8b8;
        -webkit-border-radius: 20px;
        -moz-border-radius: 20px;
        border-radius: 20px;
        z-index: -1; }
    .lovely__right--txt {
      margin: 30px 0 0;
      line-height: 2.0; }
    .lovely__right--qr {
      margin: 10px 0 0;
      display: block; }

@media (max-width: 850px) {
  .lovely {
    display: -webkit-block;
    display: -moz-block;
    display: -ms-block;
    display: -o-block;
    display: block; }
    .lovely__right {
      width: 100%;
      margin: 40px 0 0; } }
