/*Break Point
------------------------------*/
/*Break Point (for viequ house)
---------------------------------*/
/*font
---------------------------------*/
/*font-size
---------------------------------*/
/*color
---------------------------------*/
.mv figure p {
  position: absolute;
  width: 14%;
  left: 8%;
  top: 42%;
}
@media print, screen and (max-width: 768px) {
  .mv figure p {
    width: 37%;
    left: 11%;
    top: 29%;
    -webkit-filter: drop-shadow(0px 0px 3px rgba(0, 0, 0, 0.5529411765));
            filter: drop-shadow(0px 0px 3px rgba(0, 0, 0, 0.5529411765));
  }
}

.pc {
  display: block;
}
@media print, screen and (max-width: 768px) {
  .pc {
    display: none;
  }
}

.sp {
  display: none;
}
@media print, screen and (max-width: 768px) {
  .sp {
    display: block;
  }
}

.col.no1 {
  font-size: clamp(12px, 5.5vw, 3rem);
}
.col.no2 {
  font-size: clamp(11px, 5.3vw, 2.8rem);
}
.col.no3 {
  font-size: clamp(10px, 5vw, 2.5rem);
}
.col.no4 {
  font-size: clamp(10px, 3vw, 1rem);
}
.col.no5 {
  font-size: clamp(9px, 1vw, 10px);
}

h2 {
  font-size: min(5vw, 2.8rem);
  text-align: center;
  border-right: 2px solid #fff;
}
h2 span {
  display: block;
  font-size: 70%;
  padding-bottom: 2%;
}

h3 {
  font-size: min(5vw, 2.2rem);
  text-align: center;
}

h4 {
  font-size: min(4.5vw, 1.7rem);
}

.c_bk01 {
  color: #111011 !important;
}
@media print, screen and (max-width: 768px) {
  .c_bk01 {
    color: #fff !important;
  }
}

@media print, screen and (max-width: 768px) {
  .main {
    margin-top: 15%;
  }
}

.plan-thum {
  -webkit-box-align: stretch;
      -ms-flex-align: stretch;
          align-items: stretch;
}
@media print, screen and (max-width: 768px) {
  .plan-thum {
    padding: 0 18px;
  }
}
.plan-thum li {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-flow: column;
          flex-flow: column;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
@media print, screen and (max-width: 768px) {
  .plan-thum li {
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
  }
}
.plan-thum li a {
  display: block;
  height: -webkit-fill-available;
}
@media print, screen and (max-width: 768px) {
  .plan-thum li a {
    height: auto;
  }
}
.plan-thum .plan_spec {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  padding-bottom: 2%;
  border-bottom: 1px solid #1F5027;
}
@media print, screen and (max-width: 768px) {
  .plan-thum .plan_spec {
    padding-bottom: 1%;
  }
}
.plan-thum .plan_spec dt {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  width: 80%;
}
.plan-thum .plan_spec dt .type {
  font-size: min(4vw, 1.2rem);
  padding: 0 8% 2%;
  font-weight: 100;
  margin-right: 6%;
  letter-spacing: 0.2rem;
}
@media print, screen and (max-width: 768px) {
  .plan-thum .plan_spec dt .type {
    padding: 0 4% 2%;
  }
}
.plan-thum .plan_spec dt .type span {
  font-size: 170%;
}
.plan-thum .plan_spec dt .spec01 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: baseline;
      -ms-flex-align: baseline;
          align-items: baseline;
  line-height: 0.85;
  font-size: min(3.6vw, 1.4rem);
}
.plan-thum .plan_spec dt .spec01 span {
  display: contents;
  font-size: 130%;
}
.plan-thum .plan_spec dt .spec01 span span {
  font-size: 130%;
}
.plan-thum .plan_spec dt .spec01 .s-inner01 {
  font-size: 80%;
}
.plan-thum .plan_spec dd {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 30%;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.plan-thum .plan_spec dd .spec02 {
  font-size: min(2.1vw, 12px);
  letter-spacing: 0.15rem;
  line-height: 1.3;
}
.plan-thum .plan_spec dd .spec03 {
  font-size: min(4.5vw, 24px);
  padding-left: 3%;
}
.plan-thum .plan_spec dd .spec03 span {
  font-size: 160%;
}

.plan__img {
  height: 460px;
  display: -ms-grid;
  display: grid;
  place-items: center;
}
@media print, screen and (max-width: 768px) {
  .plan__img {
    height: auto;
  }
}

.plan-single .plan_spec {
  padding-bottom: 2%;
}
.plan-single .plan_spec dt {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  width: 100%;
  border-bottom: 1px solid #1F5027;
}
.plan-single .plan_spec dt .type {
  font-size: min(5vw, 1.8rem);
  padding: 0 4%;
  font-weight: 100;
  margin-right: 3%;
  letter-spacing: 0.2rem;
}
.plan-single .plan_spec dt .type span {
  font-size: 200%;
}
.plan-single .plan_spec dt .spec01 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: baseline;
      -ms-flex-align: baseline;
          align-items: baseline;
  font-size: min(4.5vw, 1.8rem);
}
@media print, screen and (max-width: 768px) {
  .plan-single .plan_spec dt .spec01 {
    line-height: 1;
  }
}
.plan-single .plan_spec dt .spec01 span {
  display: contents;
  font-size: 130%;
}
.plan-single .plan_spec dt .spec01 span span {
  font-size: 130%;
}
.plan-single .plan_spec dt .spec01 .s-inner01 {
  font-size: 80%;
}
.plan-single .plan_spec dd {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 100%;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
@media print, screen and (max-width: 768px) {
  .plan-single .plan_spec dd {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
}
.plan-single .plan_spec dd .spec02 {
  font-size: min(2.8vw, 14px);
  letter-spacing: 0.15rem;
}
.plan-single .plan_spec dd .spec02.s02-02 {
  min-width: 90px;
}
@media print, screen and (max-width: 768px) {
  .plan-single .plan_spec dd .spec02.s02-02 {
    min-width: 66px;
  }
}
.plan-single .plan_spec dd .spec03 {
  font-size: min(4.8vw, 32px);
  padding-left: 1%;
}
.plan-single .plan_spec dd .spec03.s03-02 {
  min-width: 240px;
}
@media print, screen and (max-width: 768px) {
  .plan-single .plan_spec dd .spec03 {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
}
.plan-single .plan_spec dd .spec03 span {
  font-size: 140%;
}
.plan-single .plan_spec dd .spec04 {
  width: 78%;
  font-size: min(3vw, 14px);
  padding-left: 3%;
}
@media print, screen and (max-width: 768px) {
  .plan-single .plan_spec dd .spec04 {
    width: 100%;
    text-align: center;
  }
}
.plan-single .plan_spec dd .spec05 {
  font-size: 41% !important;
  display: block;
  margin-top: -5%;
}
@media print, screen and (max-width: 768px) {
  .plan-single .plan_spec dd .spec05 {
    display: inline;
    font-size: 52% !important;
    letter-spacing: 0.05rem;
  }
}

.col3-1 {
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  width: 93%;
}
@media print, screen and (max-width: 768px) {
  .col3-1 > * {
    width: 48%;
  }
}

.box01 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-flow: column;
          flex-flow: column;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
.box01 p:first-child {
  padding-top: 30%;
}
@media print, screen and (max-width: 768px) {
  .box01 p:first-child {
    padding-top: 10%;
  }
}

.box02 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-flow: column;
          flex-flow: column;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
.box02 p:first-child {
  padding-top: 10%;
}
@media print, screen and (max-width: 768px) {
  .box02 p:first-child {
    padding-top: 10%;
  }
}

.negam01 {
  margin-left: -25%;
}
@media print, screen and (max-width: 768px) {
  .negam01 {
    margin-left: auto;
  }
}

.negam02 {
  margin-left: -10%;
}
@media print, screen and (max-width: 768px) {
  .negam02 {
    margin-left: auto;
  }
}