@charset "UTF-8";
.greeting {
  margin: clamp(40px, 4.1666666667vw, 80px) 0;
}
@media screen and (max-width: 767px) {
  .greeting {
    margin: clamp(35px, 9.3333333333vw, 70px) 0;
  }
}

.box-wrapper {
  display: grid;
  gap: 2.6041666667vw 0;
}

.box-wrapper-title {
  margin: clamp(50px, 5.2083333333vw, 100px) 0 1.0416666667vw;
}
@media screen and (max-width: 767px) {
  .box-wrapper-title {
    padding: 0 !important;
    margin: clamp(40px, 10.6666666667vw, 80px) 0 clamp(22.5px, 6vw, 45px);
  }
}

/* ----小厄(男女とも)-----------------------------*/
.parent {
  display: grid;
  grid-template-columns: repeat(6, 1fr);
}
.parent > p.c-txt {
  grid-area: 1/1/2/7;
}
@media screen and (max-width: 767px) {
  .parent {
    display: flex;
    flex-wrap: wrap;
  }
}

.parent div {
  height: 2.6041666667vw;
  border: solid 1px #d0d0d0;
}
@media screen and (max-width: 767px) {
  .parent div {
    height: auto;
    box-sizing: border-box;
  }
}

@media screen and (min-width: 768px) {
  .box-wrapper div.c-txt {
    line-height: 2.6041666667vw;
  }
}
.div1 {
  grid-area: 2/1/3/7;
  background-color: #898989;
  color: #fff;
  font-size: clamp(12px, 1.25vw, 24px);
  line-height: 2.6041666667vw;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .div1 {
    font-size: clamp(15px, 1.5625vw, 30px);
    line-height: 2;
    width: 100%;
  }
}

.div2 {
  grid-area: 3/1/4/2;
  line-height: 2.6041666667vw;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .div2 {
    line-height: 1.8;
    width: 33.3333333333%;
  }
}

.div3 {
  grid-area: 3/2/4/3;
  line-height: 2.6041666667vw;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .div3 {
    line-height: 1.8;
    width: 33.3333333333%;
  }
}

.div4 {
  grid-area: 3/3/4/4;
  line-height: 2.6041666667vw;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .div4 {
    line-height: 1.8;
    width: 33.3333333333%;
  }
}

.div5 {
  grid-area: 3/4/4/5;
  line-height: 2.6041666667vw;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .div5 {
    line-height: 1.8;
    width: 33.3333333333%;
  }
}

.div6 {
  grid-area: 3/5/4/6;
  line-height: 2.6041666667vw;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .div6 {
    line-height: 1.8;
    width: 33.3333333333%;
  }
}

.div7 {
  grid-area: 3/6/4/7;
  line-height: 2.6041666667vw;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .div7 {
    line-height: 1.8;
    width: 33.3333333333%;
  }
}

.div8 {
  grid-area: 4/1/5/2;
  line-height: 2.6041666667vw;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .div8 {
    line-height: 1.8;
    width: 33.3333333333%;
  }
}

.div9 {
  grid-area: 4/2/5/3;
  line-height: 2.6041666667vw;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .div9 {
    line-height: 1.8;
    width: 33.3333333333%;
  }
}

.div10 {
  grid-area: 4/3/5/4;
  line-height: 2.6041666667vw;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .div10 {
    line-height: 1.8;
    width: 33.3333333333%;
  }
}

.div11 {
  grid-area: 4/4/5/5;
  line-height: 2.6041666667vw;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .div11 {
    line-height: 1.8;
    width: 33.3333333333%;
  }
}

.div12 {
  grid-area: 4/5/5/6;
  line-height: 2.6041666667vw;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .div12 {
    line-height: 1.8;
    width: 33.3333333333%;
  }
}

.div13 {
  grid-area: 4/6/5/7;
  line-height: 2.6041666667vw;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .div13 {
    line-height: 1.8;
    width: 33.3333333333%;
  }
}

.div14 {
  grid-area: 5/1/6/2;
  line-height: 2.6041666667vw;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .div14 {
    line-height: 1.8;
    width: 33.3333333333%;
  }
}

.div15 {
  grid-area: 5/2/6/3;
  line-height: 2.6041666667vw;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .div15 {
    line-height: 1.8;
    width: 33.3333333333%;
  }
}

.div16 {
  grid-area: 5/3/6/4;
  line-height: 2.6041666667vw;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .div16 {
    line-height: 1.8;
    width: 33.3333333333%;
  }
}

.div17 {
  grid-area: 5/4/6/5;
  line-height: 2.6041666667vw;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .div17 {
    line-height: 1.8;
    width: 33.3333333333%;
  }
}

.div18 {
  grid-area: 5/5/6/6;
  line-height: 2.6041666667vw;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .div18 {
    line-height: 1.8;
    width: 33.3333333333%;
  }
}

.div19 {
  grid-area: 5/6/6/7;
  line-height: 2.6041666667vw;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .div19 {
    line-height: 1.8;
    width: 33.3333333333%;
  }
}

/* 大厄（男性）-------------------------------*/
.parent2 {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  grid-template-rows: repeat(3, 1fr);
  grid-column-gap: 0px;
  grid-row-gap: 0px;
}

.parent2 div {
  height: 2.6041666667vw;
  border: solid 1px #d0d0d0;
}
@media screen and (max-width: 767px) {
  .parent2 div {
    height: auto;
  }
}

.parent3 {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  grid-template-rows: repeat(3, 1fr);
  grid-column-gap: 0px;
  grid-row-gap: 0px;
}

.parent3 div {
  height: 2.6041666667vw;
  border: solid 1px #d0d0d0;
}
@media screen and (max-width: 767px) {
  .parent3 div {
    height: auto;
  }
}

.grid-flex {
  display: grid;
  grid-auto-flow: column;
  gap: 0 0.5208333333vw;
}
@media screen and (max-width: 767px) {
  .grid-flex {
    grid-auto-flow: row;
    gap: 4vw 0;
  }
}

.div1-1 {
  grid-area: 1/1/2/4;
  background-color: #3e4a66;
  color: #fff;
  font-size: clamp(12px, 1.25vw, 24px);
  line-height: 2.6041666667vw;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .div1-1 {
    line-height: 2;
  }
}

.div2-1 {
  grid-area: 2/1/3/2;
  line-height: 2.6041666667vw;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .div2-1 {
    line-height: 1.8;
  }
}

.div3-1 {
  grid-area: 2/2/3/3;
  line-height: 2.6041666667vw;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .div3-1 {
    line-height: 1.8;
  }
}

.div4-1 {
  grid-area: 2/3/3/4;
  line-height: 2.6041666667vw;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .div4-1 {
    line-height: 1.8;
  }
}

.div5-1 {
  grid-area: 3/1/4/2;
  line-height: 2.6041666667vw;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .div5-1 {
    line-height: 1.8;
  }
}

.div6-1 {
  grid-area: 3/2/4/3;
  line-height: 2.6041666667vw;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .div6-1 {
    line-height: 1.8;
  }
}

.div7-1 {
  grid-area: 3/3/4/4;
  line-height: 2.6041666667vw;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .div7-1 {
    line-height: 1.8;
  }
}

/*大厄（女性）---------------------------------*/
.div1-2 {
  grid-area: 1/1/2/4;
  background-color: #911b1b;
  color: #fff;
  font-size: clamp(12px, 1.25vw, 24px);
  line-height: 2.6041666667vw;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .div1-2 {
    line-height: 2;
  }
}

.div2-2 {
  grid-area: 2/1/3/2;
  line-height: 2.6041666667vw;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .div2-2 {
    line-height: 1.8;
  }
}

.div3-2 {
  grid-area: 2/2/3/3;
  line-height: 2.6041666667vw;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .div3-2 {
    line-height: 1.8;
  }
}

.div4-2 {
  grid-area: 2/3/3/4;
  line-height: 2.6041666667vw;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .div4-2 {
    line-height: 1.8;
  }
}

.div5-2 {
  grid-area: 3/1/4/2;
  line-height: 2.6041666667vw;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .div5-2 {
    line-height: 1.8;
  }
}

.div6-2 {
  grid-area: 3/2/4/3;
  line-height: 2.6041666667vw;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .div6-2 {
    line-height: 1.8;
  }
}

.div7-2 {
  grid-area: 3/3/4/4;
  line-height: 2.6041666667vw;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .div7-2 {
    line-height: 1.8;
  }
}

/* 0年の厄年（男女共通）満年齢*/
.parent4 {
  display: grid;
  grid-template-columns: repeat(6, 1fr);
  grid-template-rows: repeat(3, 1fr);
  grid-column-gap: 0px;
  grid-row-gap: 0px;
}
@media screen and (max-width: 767px) {
  .parent4 {
    display: flex;
    flex-wrap: wrap;
  }
}

.parent4 div {
  height: 2.6041666667vw;
  border: solid 1px #d0d0d0;
}
@media screen and (max-width: 767px) {
  .parent4 div {
    box-sizing: border-box;
    height: auto;
  }
}

.div1-3 {
  grid-area: 1/1/2/7;
  line-height: 2.6041666667vw;
  text-align: center;
  background-color: #898989;
  color: #fff;
  font-size: clamp(12px, 1.25vw, 24px);
}
@media screen and (max-width: 767px) {
  .div1-3 {
    width: 100%;
    line-height: 2;
  }
}

.div2-3 {
  grid-area: 2/1/3/2;
  line-height: 2.6041666667vw;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .div2-3 {
    line-height: 1.8;
    width: 33.3333333333%;
  }
}

.div3-3 {
  grid-area: 2/2/3/3;
  line-height: 2.6041666667vw;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .div3-3 {
    line-height: 1.8;
    width: 33.3333333333%;
  }
}

.div4-3 {
  grid-area: 2/3/3/4;
  line-height: 2.6041666667vw;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .div4-3 {
    line-height: 1.8;
    width: 33.3333333333%;
  }
}

.div5-3 {
  grid-area: 2/4/3/5;
  line-height: 2.6041666667vw;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .div5-3 {
    line-height: 1.8;
    width: 33.3333333333%;
  }
}

.div6-3 {
  grid-area: 2/5/3/6;
  line-height: 2.6041666667vw;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .div6-3 {
    line-height: 1.8;
    width: 33.3333333333%;
  }
}

.div7-3 {
  grid-area: 2/6/3/7;
  line-height: 2.6041666667vw;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .div7-3 {
    line-height: 1.8;
    width: 33.3333333333%;
  }
}

.div8-3 {
  grid-area: 3/1/4/2;
  line-height: 2.6041666667vw;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .div8-3 {
    line-height: 1.8;
    width: 33.3333333333%;
  }
}

.div9-3 {
  grid-area: 3/2/4/3;
  line-height: 2.6041666667vw;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .div9-3 {
    line-height: 1.8;
    width: 33.3333333333%;
  }
}

.div10-3 {
  grid-area: 3/3/4/4;
  line-height: 2.6041666667vw;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .div10-3 {
    line-height: 1.8;
    width: 33.3333333333%;
  }
}

.div11-3 {
  grid-area: 3/4/4/5;
  line-height: 2.6041666667vw;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .div11-3 {
    line-height: 1.8;
    width: 33.3333333333%;
  }
}

.div12-3 {
  grid-area: 3/5/4/6;
  line-height: 2.6041666667vw;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .div12-3 {
    line-height: 1.8;
    width: 33.3333333333%;
  }
}

.div13-3 {
  grid-area: 3/6/4/7;
  line-height: 2.6041666667vw;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .div13-3 {
    line-height: 1.8;
    width: 33.3333333333%;
  }
}

.other .box_wrap {
  display: flex;
  flex-wrap: wrap;
  gap: 0 1.4583333333vw;
}

.temple_box h2 {
  width: 100%;
  background: url(../img/kitou-img02.jpg) no-repeat center/cover;
  padding: clamp(80px, 8.3333333333vw, 160px) 0;
  writing-mode: vertical-rl;
  font-size: clamp(12px, 1.25vw, 24px);
  display: flex;
  justify-content: center;
  align-items: center;
  color: #fff;
}
@media screen and (max-width: 767px) {
  .temple_box h2 {
    background: url(../img/sp-kitou-img02.jpg) no-repeat center/cover;
    font-size: clamp(23px, 6.1333333333vw, 46px);
  }
}

.c-txt {
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-weight: 400;
  font-style: normal;
  font-size: clamp(9px, 0.9375vw, 18px);
  line-height: 1.667;
}
@media screen and (max-width: 767px) {
  .c-txt {
    font-size: clamp(15px, 4vw, 30px);
    padding: 0 clamp(21.5px, 5.7333333333vw, 43px);
  }
}

.temple_box h3 {
  margin-top: clamp(25px, 2.6041666667vw, 50px);
  font-size: clamp(12px, 1.25vw, 24px);
}
@media screen and (max-width: 767px) {
  .temple_box h3 {
    font-size: clamp(23px, 6.1333333333vw, 46px);
    padding: 0 clamp(21.5px, 5.7333333333vw, 43px);
  }
}

.temple_box h3 + p {
  margin-top: clamp(15px, 1.5625vw, 30px);
}

.txt-area {
  margin-top: clamp(10px, 1.0416666667vw, 20px);
}

.other {
  margin-top: clamp(35px, 3.6458333333vw, 70px);
}

.other dl {
  display: flex;
  align-items: center;
  width: calc(50% - 0.7291666667vw);
  border-top: 1px solid #d0d0d0;
  border-bottom: 1px solid #d0d0d0;
}
@media screen and (max-width: 767px) {
  .other dl {
    flex-direction: column;
    width: 100%;
    align-items: baseline;
    padding: clamp(15px, 4vw, 30px) 0;
  }
}

.box_wrap {
  margin-top: clamp(30px, 3.125vw, 30px);
  display: flex;
  justify-content: space-between;
  gap: 0 1.4583333333vw;
}
@media screen and (max-width: 767px) {
  .box_wrap {
    flex-direction: column;
    padding: 0 clamp(21.5px, 5.7333333333vw, 43px);
  }
}

.box_wrap dt {
  padding: clamp(14px, 1.4583333333vw, 28px) 0;
  width: 5.9375vw;
  font-size: clamp(12px, 1.25vw, 24px);
}
@media screen and (max-width: 767px) {
  .box_wrap dt {
    width: auto;
    padding: 0;
    font-size: clamp(20px, 5.3333333333vw, 40px);
  }
}

.box_wrap dd {
  width: calc(100% - 5.9375vw);
}

.consultation {
  padding: clamp(27px, 2.8125vw, 54px) 0 0;
  border-top: 1px solid #a5a5a5;
}
@media screen and (max-width: 767px) {
  .consultation {
    padding: clamp(20px, 5.3333333333vw, 40px) clamp(15px, 2vw, 30px) 0;
  }
}
.consultation p {
  text-align: center;
}
@media screen and (max-width: 767px) {
  .consultation p {
    text-align: initial;
    font-size: clamp(15px, 4vw, 30px);
  }
}
.consultation .c-btn {
  max-width: clamp(164.5px, 17.1354166667vw, 329px);
  width: 100%;
  margin: clamp(25px, 2.6041666667vw, 50px) auto 0;
}
@media screen and (max-width: 767px) {
  .consultation .c-btn {
    max-width: clamp(250px, 33.3333333333vw, 500px);
    margin: clamp(25px, 2.6041666667vw, 50px) auto 0;
  }
}
.consultation .c-btn a {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  border: 1px solid #565656;
  height: clamp(38px, 3.9583333333vw, 76px);
  font-size: clamp(9px, 0.9375vw, 18px);
  letter-spacing: 0.2em;
}
@media screen and (max-width: 767px) {
  .consultation .c-btn a {
    text-align: center;
    height: clamp(50px, 13.3333333333vw, 100px);
    font-size: clamp(15px, 4vw, 30px);
  }
}
.consultation .c-btn a::before {
  display: inline-block;
  position: absolute;
  top: 50%;
  left: -1.813em;
  width: clamp(28px, 2.9166666667vw, 56px);
  height: 1px;
  background: #ff0000;
  content: "";
}
@media screen and (max-width: 767px) {
  .consultation .c-btn a::before {
    width: clamp(28px, 7.4666666667vw, 56px);
    left: -1em;
  }
}/*# sourceMappingURL=style.css.map */