@charset "UTF-8";
/** -----------------------------------
	共通
---------------------------------------- ***/
.main-img {
	max-width: 421px;
  width:35%;
	padding-top: 30px;
}
.online-explain {
  display: flex;
}
.online-explain .explain-txt {
  margin-bottom: 38px;
}
.online-explain .base-ttl {
  margin-bottom: 30px;
}
.online-explain .img-wrap {
  width: 530px;
  max-width: 48.2%;
  flex-shrink: 0;
  margin-left: 40px;
}
@media screen and (max-width: 768px), print {
  .online-explain {
    display: block;
  }
  .online-explain .explain-txt {
    margin-bottom: calc(40/750*100vw);
  }
  .online-explain .base-ttl {
    margin-bottom: calc(20/750*100vw);
  }
  .online-explain .img-wrap {
    width: 100%;
    margin: calc(40/750*100vw) 0 0;
    max-width: inherit;
  }
}

.checkmark-list.flex {
  display: flex;
  flex-wrap: wrap;
}
.checkmark-list .checkmark {
  min-width: 435px;
  margin: 0 0 16px;
}
.checkmark-list .checkmark + .checkmark {
  margin: 0 0 16px;
}
@media screen and (max-width: 768px), print {
  .checkmark-list .checkmark {
    width: 100%;
    min-width: inherit;
  }
}

.border-ttl {
  font-size: 30px;
  font-weight: bold;
  color: #303030;
  margin-bottom: 45px;
  padding-bottom: 7px;
  line-height: 1.5;
  border-bottom: 1px solid #505050;
}
.border-ttl:not(:first-child) {
  margin-top: 60px;
}
@media screen and (max-width: 768px), print {
  .border-ttl {
    font-size: calc(40/750*100vw);
    margin-bottom: calc(40/750*100vw);
    padding-bottom: calc(10/750*100vw);
  }
  .border-ttl:not(:first-child) {
    margin-top: calc(40/750*100vw);
  }
}

.main-contents {
  margin-top: 100px;
}
@media screen and (max-width: 768px), print {
  .main-contents {
    margin-top: 80px;
  }
}

/** -----------------------------------
	おすすめ
---------------------------------------- ***/
.recommend {
  margin-top: 90px;
  background-color: #f6f6f6;
  padding: 60px 0;
}
.recommend .recommend-title {
  padding: 0 50px 25px;
  text-align: center;
  border-bottom: 1px solid #505050;
}
.recommend .base-txt {
  margin-top: 12px;
}
.recommend .checkmark-list {
  padding: 30px 50px 0 80px;
}
@media screen and (max-width: 768px), print {
  .recommend {
    margin-top: calc(120/750*100vw);
    padding: calc(60/750*100vw) 0 calc(60/750*100vw);
  }
  .recommend .inner {
    width: 100%;
  }
  .recommend .recommend-title {
    padding: 0 0 calc(60/750*100vw);
  }
  .recommend .base-txt {
    text-align: left;
  }
  .recommend .checkmark-list {
    padding: calc(40/750*100vw) 0;
  }
}

/* -----------------------------------
	オンライン事前相談の流れ
---------------------------------------- */
.online-flow-area {
  margin-top: 100px;
}
.online-flow-area .base-ttl {
  margin-bottom: 30px;
}
.online-flow-area .online-flow-block {
  margin-top: 60px;
  margin-bottom: 70px;
}
.online-flow-area .online-flow-block .online-flow-box {
  display: flex;
  background: #F6F6F6;
  position: relative;
}
.online-flow-area .online-flow-block .online-flow-box + .online-flow-box {
  margin-top: 130px;
}
.online-flow-area .online-flow-block .online-flow-box + .online-flow-box::before {
  content: "";
  position: absolute;
  width: 0;
  height: 0;
  transform: translateY(-50%);
  border-left: 30px solid transparent;
  border-right: 30px solid transparent;
  border-top: 30px solid #003d8b;
  border-bottom: 30px solid transparent;
  top: -50px;
  left: 0;
  right: 0;
  margin: auto;
}
.online-flow-area .online-flow-block .online-flow-box .flow-img {
  width: 530px;
  max-width: 48.2%;
  flex-shrink: 0;
  line-height: 0;
}
.online-flow-area .online-flow-block .online-flow-box .flow-explain {
  padding: 38px 40px;
  display: flex;
  flex-direction: column;
}
.online-flow-area .online-flow-block .online-flow-box .flow-explain .link {
  margin-top: auto;
  text-align: right;
}
.online-flow-area .online-flow-block .online-flow-box .flow-ttl {
  display: flex;
  color: #303030;
  font-size: 25px;
  font-weight: 700;
  align-items: baseline;
  letter-spacing: .1em;
  margin-bottom: 24px;
}
.online-flow-area .online-flow-block .online-flow-box .flow-ttl .icon-num {
  color: #003d8b;
  font-size: 35px;
  font-weight: 500;
  margin-right: .2em;
}
.online-flow-area .online-flow-block .online-flow-box .flow-txt {
  color: #333333;
}
@media screen and (max-width: 768px), print {
  .online-flow-area {
    margin-top: calc(120/750*100vw);
  }
  .online-flow-area .base-ttl {
    margin-bottom: calc(20/750*100vw);
  }
  .online-flow-area .online-flow-block {
    margin-top: calc(60/750*100vw);
    margin-bottom: calc(60/750*100vw);
  }
  .online-flow-area .online-flow-block .online-flow-box {
    display: block;
  }
  .online-flow-area .online-flow-block .online-flow-box + .online-flow-box {
    margin-top: calc(120/750*100vw);
  }
  .online-flow-area .online-flow-block .online-flow-box + .online-flow-box::before {
    transform: translateY(-50%);
    border-top: 15px solid #003d8b;
    border-right: 20px solid transparent;
    border-left: 20px solid transparent;
    border-bottom: 20px solid transparent;
    top: calc(-40/750*100vw);
  }
  .online-flow-area .online-flow-block .online-flow-box .flow-img {
    width: 100%;
    max-width: 100%;
  }
  .online-flow-area .online-flow-block .online-flow-box .flow-explain {
    padding: calc(40/750*100vw) calc(40/750*100vw) calc(60/750*100vw);
  }
  .online-flow-area .online-flow-block .online-flow-box .flow-explain .link {
    margin-top: calc(30/750*100vw);
  }
  .online-flow-area .online-flow-block .online-flow-box .flow-ttl {
    font-size: calc(36/750*100vw);
    margin-bottom: calc(30/750*100vw);
  }
  .online-flow-area .online-flow-block .online-flow-box .flow-ttl .icon-num {
    font-size: calc(46/750*100vw);
  }
}

/** -----------------------------------
	青背景＋資料請求
---------------------------------------- ***/
.catalog-area {
  margin: 100px 0 80px;
  padding: 55px 0 65px;
}
.catalog-area .catalog-txt {
  margin: 0;
}
.catalog-area .btn {
  margin: 50px auto 10px;
}
@media screen and (max-width: 768px), print {
  .catalog-area {
    margin: calc(120/750*100vw) 0 calc(120/750*100vw);
    padding: calc(60/750*100vw) 0;
  }
  .catalog-area .btn {
    margin: calc(60/750*100vw) auto calc(30/750*100vw);
  }
}

/** -----------------------------------
	葬儀の相談方法
---------------------------------------- ***/
.consult-block {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  margin-top: 64px;
  margin-bottom: 100px;
  gap: 40px;
}
.consult-block .consult-box {
  max-width: calc((100% - 40px)/2);
  width: 530px;
  border: 1px solid #CACACA;
}
.consult-block .consult-box .img-wrap {
  line-height: 0;
}
.consult-block .consult-box .consult-explain {
  padding: 34px 38px;
}
.consult-block .consult-box .consult-ttl {
  margin-bottom: .3em;
}
.consult-block .consult-box .consult-ttl > * {
  color: #333333;
  font-size: 25px;
  letter-spacing: .08em;
}
.consult-block .consult-box .base-txt * {
  color: #333333;
  letter-spacing: .08em;
}
.consult-block .consult-box .merit-ttl {
  font-size: 18px;
  font-weight: 700;
  margin-top: .6em;
  color: #303030;
  letter-spacing: .08em;
}
@media screen and (max-width: 768px), print {
  .consult-block {
    margin-top: calc(60/750*100vw);
    margin-bottom: calc(100/750*100vw);
  }
  .consult-block .consult-box {
    max-width: 100%;
  }
  .consult-block .consult-box .consult-explain {
    padding: calc(40/750*100vw) calc(40/750*100vw) calc(50/750*100vw);
  }
  .consult-block .consult-box .consult-ttl > * {
    font-size: calc(36/750*100vw);
  }
  .consult-block .consult-box .merit-ttl {
    font-size: calc(30/750*100vw);
  }
}
.consult-block .dot-list .dot {
  position: relative;
  padding-left: 12px;
  font-size: 18px;
  font-weight: 400;
  line-height: 1.75;
  letter-spacing: .08em;
  color: #303030;
}
.consult-block .dot-list .dot::before {
  content: "";
  position: absolute;
  width: 8px;
  height: 8px;
  border-radius: 50%;
  top: .7em;
  left: 0;
  background-color: #003d8b;
}
.consult-block .dot-list .emphasis {
  font-size: 1.2em;
  line-height: 0;
  color: #003d8b;
}
@media screen and (max-width: 768px), print {
  .consult-block .dot-list .dot {
    padding-left: calc(36/750*100vw);
    font-size: calc(32/750*100vw);
  }
  .consult-block .dot-list .dot::before {
    width: calc(16/750*100vw);
    height: calc(16/750*100vw);
    top: calc(22/750*100vw);
  }
}
.consult-block .link {
  margin-top: .7em;
}
.consult-block .link a {
  font-size: 16px;
}
@media screen and (max-width: 768px), print {
  .consult-block .link a {
    font-size: 3.125vw;
  }
}
.consult-block .tel-link {
  margin-top: 10px;
}
.consult-block .tel-link a {
  position: relative;
  letter-spacing: .1em;
  font-size: 32px;
  padding-left: 1em;
}
.consult-block .tel-link a::before {
  content: "";
  position: absolute;
  width: .9375em;
  height: 1em;
  background: url("/gojokai/wp-content/themes/kuratomo2022/common/img/icon-tellink.svg") no-repeat left center/20px;
  margin: auto;
  left: 0;
  top: 0;
  bottom: 0;
}
@media screen and (max-width: 768px), print {
  .consult-block .tel-link a {
    font-size: calc(45/750*100vw);
  }
}
