@charset "UTF-8";
.-sect {
  margin: 0 0 8% 0; }
  .-sect:last-child {
    margin: 0; }

@media screen and (max-width: 768px) {
  .-sect {
    margin: 0 0 14% 0; }
    .-sect:last-child {
      margin: 0; } }

@media screen and (max-width: 768px) {
  .page-home .contents {
    margin: 0; } }

.-ttl {
  background-image: url(../img/common/ttl_bg.jpg);
  background-size: 100% auto;
  background-position: center;
  font-size: 20px;
  font-weight: bold;
  padding: 20px;
  line-height: 1em;
  margin: 0 0 5% 0; }

.-ttl .-color {
  color: #256f45; }

@media screen and (max-width: 768px) {
  .-ttl {
    font-size: 16px;
    padding: 5%;
    background-size: auto 100%; } }

.-img {
  margin: 0 0 3% 0; }

@media screen and (max-width: 768px) {
  .-img {
    margin: 0 0 5% 0; } }

.-copy {
  margin: 0 0 5% 0; }
  .-copy:last-child {
    margin: 0; }

/* intro */
.intro-ttl {
  font-size: 40px;
  line-height: 1.4em;
  font-weight: bold;
  margin: 0 0 3% 0; }

.intro-index {
  background-color: rgba(37, 111, 69, 0.1);
  padding: 40px;
  border-radius: 10px; }

.intro-index-ttl {
  font-size: 20px;
  font-weight: bold; }

.intro-index-list-item .-btn {
  font-weight: bold;
  font-size: 17px;
  color: #256f45;
  text-decoration: underline; }

.intro-index-list-item .-btn:hover {
  text-decoration: none; }

@media screen and (max-width: 768px) {
  .intro-ttl {
    font-size: 20px;
    margin: 0 0 3% 0; }
  .intro-index {
    padding: 5%; }
  .intro-index-ttl {
    font-size: 16px; }
  .intro-index-list-item .-btn {
    font-size: 13px; } }

/* cemetery */
.cemetery-list {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between; }
  .cemetery-list-item {
    width: 46.4%;
    margin: 0 0 4% 0;
    display: flex;
    flex-direction: column; }
    .cemetery-list-item:last-child {
      margin: 0; }
  .cemetery-list-name {
    font-size: 16px;
    font-weight: bold;
    margin: 0 0 1% 0;
    text-indent: -1.3em;
    padding: 0 0 0 1.3em; }
    .cemetery-list-name:before {
      content: "●";
      color: #256f45; }
  .cemetery-list-img {
    margin: 0 0 3% 0; }
  .cemetery-list-copy {
    margin: 0 0 6% 0;
    height: 100%;
    line-height: 1.5em; }
  .cemetery-list-btn {
    border: 2px solid #256f45;
    padding: 10px 0;
    text-align: center;
    width: 100%;
    display: block;
    position: relative; }
    .cemetery-list-btn .-txt {
      color: #256f45;
      font-weight: bold;
      font-size: 16px;
      transition: 0.5s; }
    .cemetery-list-btn:after {
      position: absolute;
      content: "";
      display: block;
      width: 10px;
      height: 10px;
      border-top: 2px solid #256f45;
      border-right: 2px solid #256f45;
      transform: rotate(45deg);
      right: 15px;
      top: 50%;
      margin: -5px 0 0 0;
      transition: 0.5s; }
    .cemetery-list-btn:hover {
      background-color: #256f45; }
      .cemetery-list-btn:hover .-txt {
        color: #fff; }
      .cemetery-list-btn:hover:after {
        border-color: #fff; }

@media screen and (max-width: 768px) {
  .cemetery-list-item {
    width: 100%;
    margin: 0 0 10% 0; }
  .cemetery-list-btn .-txt {
    font-size: 14px; } }

/* history */
.history-img {
  width: 94%;
  margin: 0 auto; }

@media screen and (max-width: 768px) {
  .history-img {
    width: 100%; } }

/* cost */
.cost-list-item {
  margin: 0 0 5% 0; }

.cost-list-ttl {
  font-size: 16px;
  font-weight: bold;
  margin: 0 0 2% 0;
  padding: 0 0 1% 0;
  border-bottom: 1px solid #256f45;
  text-indent: -1.3em;
  padding: 0 0 0 1.3em; }
  .cost-list-ttl:before {
    content: "●";
    color: #256f45; }

@media screen and (max-width: 768px) {
  .cost-list-item {
    margin: 0 0 5% 0; }
  .cost-list-ttl .-small {
    display: block;
    font-size: 12px;
    padding: 0 0 0 1em; } }

/* merit */
.merit-box {
  margin: 0 0 5% 0; }
  .merit-box:last-child {
    margin: 0; }
  .merit-box-ttl {
    font-size: 30px;
    font-weight: bold;
    padding: 15px 30px;
    line-height: 1em;
    color: #fff; }
  .merit-box-list {
    padding: 25px 40px; }
    .merit-box-list-item {
      margin: 0 0 3% 0;
      padding: 0 0 3% 0;
      border-bottom: 1px solid #ccc; }
      .merit-box-list-item:last-child {
        border: none;
        margin: 0;
        padding: 0; }
    .merit-box-list-ttl {
      font-weight: bold;
      font-size: 20px; }
    .merit-box-list-no {
      font-weight: bold;
      font-size: 20px;
      line-height: 1em; }

.merit-box.-merit {
  border: 1px solid #6fba8f; }

.-merit .merit-box-ttl {
  background-color: #6fba8f; }

.-merit .merit-box-list-item {
  border-color: #6fba8f; }

.-merit .merit-box-list-no {
  color: #6fba8f; }

.merit-box.-demerit {
  border: 1px solid #efb95a; }

.-demerit .merit-box-ttl {
  background-color: #efb95a; }

.-demerit .merit-box-list-item {
  border-color: #efb95a; }

.-demerit .merit-box-list-no {
  color: #efb95a; }

@media screen and (max-width: 768px) {
  .merit-box {
    margin: 0 0 6% 0; }
    .merit-box:last-child {
      margin: 0; }
    .merit-box-ttl {
      font-size: 16px;
      font-weight: bold;
      padding: 4%;
      line-height: 1em;
      color: #fff; }
    .merit-box-list {
      padding: 5%; }
      .merit-box-list-item {
        margin: 0 0 6% 0;
        padding: 0 0 6% 0; }
        .merit-box-list-item:last-child {
          border: none;
          margin: 0;
          padding: 0; }
      .merit-box-list-ttl {
        font-size: 16px; }
      .merit-box-list-no {
        font-size: 14px; } }

/* select */
.select-list-item {
  background-color: #fff3e0;
  padding: 30px 40px;
  margin: 0 0 3% 0;
  border-radius: 15px; }
  .select-list-item:last-child {
    margin: 0; }

.select-list-ttl {
  font-size: 20px;
  font-weight: bold;
  color: #256f45; }

@media screen and (max-width: 768px) {
  .select-list-item {
    padding: 4% 6%;
    margin: 0 0 4% 0; }
    .select-list-item:last-child {
      margin: 0; }
  .select-list-ttl {
    font-size: 16px; } }

/* flow */
.flow-img {
  margin: 0 auto;
  width: 94%; }

@media screen and (max-width: 768px) {
  .flow {
    background-color: rgba(37, 111, 69, 0.1); } }

/* requirement */
.requirement-list {
  padding: 15px 40px;
  border: 1px solid #6fba8f; }
  .requirement-list-item {
    border-bottom: 1px solid #6fba8f;
    margin: 0 0 3% 0;
    padding: 0 0 3% 0; }
    .requirement-list-item:last-child {
      border: none;
      margin: 0;
      padding: 0; }
  .requirement-list-no {
    color: #256f45;
    font-size: 20px;
    font-weight: bold; }
  .requirement-list-ttl {
    font-weight: bold;
    font-size: 20px;
    line-height: 1.4em;
    margin: 0 0 1% 0; }
    .requirement-list-ttl .-line {
      background-color: #ffff00; }

@media screen and (max-width: 768px) {
  /* requirement */
  .requirement-list {
    padding: 4% 6%; }
    .requirement-list-item {
      margin: 0 0 6% 0;
      padding: 0 0 6% 0; }
      .requirement-list-item:last-child {
        margin: 0;
        padding: 0; }
    .requirement-list-no {
      font-size: 16px; }
    .requirement-list-ttl {
      font-size: 16px;
      margin: 0 0 3% 0; }
      .requirement-list-ttl .-line {
        background-color: #ffff00; } }

/* note */
.note-list {
  margin: 0 0 5% 0; }
  .note-list-item {
    background-color: #fff3e0;
    padding: 30px 40px;
    margin: 0 0 3% 0;
    border-radius: 10px;
    border: 1px solid #ef7827; }
    .note-list-item:last-child {
      margin: 0; }
  .note-list-ttl {
    font-weight: bold;
    display: flex;
    align-items: flex-start; }
    .note-list-ttl .-label {
      font-size: 14px;
      width: 90px;
      flex-shrink: 0;
      color: #fff;
      background-color: #ef7827;
      line-height: 1em;
      padding: 4px 0;
      text-align: center;
      border-radius: 30px;
      margin: 4px 15px 0 0; }
    .note-list-ttl .-txt {
      font-size: 20px;
      line-height: 1.5em; }
  .note-list-copy {
    border-top: 1px dashed #ef7827;
    margin: 2% 0 0 0;
    padding: 2% 0 0 0; }

@media screen and (max-width: 768px) {
  .note-list-item {
    padding: 6%;
    margin: 0 0 5% 0; }
    .note-list-item:last-child {
      margin: 0; }
  .note-list-ttl {
    font-weight: bold;
    display: block; }
    .note-list-ttl .-label {
      display: block;
      margin: 0 auto 4% auto;
      padding: 4px 0; }
    .note-list-ttl .-txt {
      font-size: 16px; }
      .note-list-ttl .-txt br {
        display: none; }
  .note-list-copy {
    margin: 4% 0 0 0;
    padding: 4% 0 0 0; } }

/* lottery */
.lottery-list-item {
  margin: 0 0 5% 0; }

.lottery-list-ttl {
  font-size: 16px;
  font-weight: bold;
  margin: 0 0 2% 0;
  padding: 0 0 1% 0;
  border-bottom: 1px solid #256f45;
  text-indent: -1.3em;
  padding: 0 0 0 1.3em; }
  .lottery-list-ttl:before {
    content: "●";
    color: #256f45; }

/* president */
.president-document {
  border: 2px solid #256f45;
  padding: 30px 40px;
  border-radius: 10px; }
  .president-document-ttl {
    font-size: 20px;
    font-weight: bold;
    color: #256f45;
    text-align: center;
    margin: 0 0 3% 0; }
  .president-document-list {
    display: flex; }
    .president-document-list-item {
      width: 24%;
      margin: 0 2% 0 0;
      padding: 0 2% 0 0;
      border-right: 1px dotted #256f45;
      flex-shrink: 0; }
      .president-document-list-item:last-child {
        margin: 0;
        padding: 0;
        border: none; }
    .president-document-list-no {
      border: 1px solid #256f45;
      color: #256f45;
      font-size: 17px;
      text-align: center;
      width: 1.5em;
      border-radius: 3px;
      padding: 3px 0;
      line-height: 1em;
      margin: 0 auto 8px auto; }
    .president-document-list-copy {
      line-height: 1.5em; }

@media screen and (max-width: 768px) {
  .president-document {
    padding: 4% 6%; }
    .president-document-ttl {
      font-size: 16px;
      margin: 0 0 4% 0; }
    .president-document-list {
      display: block; }
      .president-document-list-item {
        display: flex;
        align-items: flex-start;
        width: 100%;
        margin: 0 0 4% 0;
        padding: 0 0 4% 0;
        border: none;
        border-bottom: 1px dotted #256f45; }
        .president-document-list-item:last-child {
          margin: 0;
          padding: 0;
          border: none; }
      .president-document-list-no {
        font-size: 16px;
        width: 1.5em;
        flex-shrink: 0;
        padding: 3px 0;
        line-height: 1em;
        margin: 0 1em 0 0; }
      .president-document-list-copy {
        line-height: 1.5em; } }
