@charset "UTF-8";
@import url("https://fonts.googleapis.com/css?family=Roboto:300,400,500,700");
/* ====================================================

    ┏───────────────────────┓
    │   Table Of Contents   │
    ┗───────────────────────┛

    1. Visual
    1-1. Reset
    2. Professional
    3. Service
    4. News
    5. Recruit
    6. Loading

==================================================== */
/* ====================================

  0. Common

==================================== */
/*
  0-1. Hero
==================================== */
.hero {
  background-image: url(/wp/wp-content/themes/royal_new_theme/assets/images/pages/about/hero-ph_1.jpg);
}

.ur .heading-primary:before {
  background-color: #7b1451;
}

.kousya .heading-primary:before {
  background-color: #008577;
}

/*
  0-2. Container
==================================== */
.about-body > p {
  margin-bottom: 20px;
}

@media screen and (max-width: 959px) {
  .about-body > p {
    margin-bottom: 4vw;
  }
}

.about-body > p:last-of-type {
  margin-bottom: 0;
}

.about-property {
  margin-top: 40px;
  margin-bottom: 30px;
  padding: 25px;
  background-color: #f6f6f6;
}

@media screen and (max-width: 959px) {
  .about-property {
    margin-top: 10vw;
    margin-bottom: 12vw;
    padding: 4vw;
  }
}

.about-property .map {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  align-items: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  justify-content: center;
  width: 308px;
  height: 210px;
  background-color: #fff;

  -webkit-box-pack: center;
  -ms-flex-pack: center;
}

@media screen and (max-width: 959px) {
  .about-property .map {
    width: 86.66667vw;
    height: 59.2vw;
    margin-bottom: 5.33333vw;
  }
  .about-property .map img {
    width: 73.2vw;
    height: 50.4vw;
  }
}

.about-property-inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  justify-content: space-between;

  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
}

@media screen and (max-width: 959px) {
  .about-property-inner {
    display: block;
  }
}

.about-property-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
      flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  justify-content: space-between;
  width: 330px;
  margin-top: -6px;

  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
}

@media screen and (max-width: 959px) {
  .about-property-list {
    width: auto;
    margin-top: -1.33333vw;
  }
}

.about-property-list .item {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  align-items: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  width: 162px;
  margin-top: 6px;
  padding-left: 10px;
  background-color: #fff;
}

@media screen and (max-width: 959px) {
  .about-property-list .item {
    width: calc(50% - .66667vw);
    height: 12.53333vw;
    margin-top: 1.33333vw;
    padding-right: 5.33333vw;
    padding-left: 3.33333vw;
  }
}

.about-property-list .item:before {
  position: absolute;
  top: calc(50% - 8px);
  right: 0;
  content: "";
  width: 16px;
  height: 16px;
}

@media screen and (max-width: 959px) {
  .about-property-list .item:before {
    top: calc(50% - 2.13333vw);
    width: 4.26667vw;
    height: 4.26667vw;
  }
}

.about-property-list .item:after {
  position: absolute;
  top: calc(50% - 3px);
  right: 6px;
  content: "";
  width: 5px;
  height: 5px;
  border-width: 1px 1px 0 0;
  border-style: solid;
  border-color: #fff;
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
}

@media screen and (max-width: 959px) {
  .about-property-list .item:after {
    top: calc(50% - .8vw);
    width: 1.33333vw;
    height: 1.33333vw;
  }
}

.about-property.-ur .about-property-list .item {
  color: #7b1451;
}

.about-property.-ur .about-property-list .item:before {
  background-color: #a4698c;
}

.about-property.-tokuyu .about-property-list .item {
  color: #ba0000;
}

.about-property.-tokuyu .about-property-list .item:before {
  background-color: #bd5555;
}

.about-property.-kosha .about-property-list .item {
  color: #008577;
}

.about-property.-kosha .about-property-list .item:before {
  background-color: #7dbbb4;
}

.about-features {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
      flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  justify-content: space-between;
  margin-top: -25px;
  margin-bottom: 50px;
  padding-top: 8px;
  counter-reset: count;

  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
}

@media screen and (max-width: 959px) {
  .about-features {
    margin-top: -3.33333vw;
    margin-bottom: 8vw;
    padding-top: 1.33333vw;
  }
}

.about-features:after {
  content: "";
  display: block;
  width: 155px;
  height: 0;
}

@media screen and (max-width: 959px) {
  .about-features:after {
    width: calc( (100% - 5.86667vw) / 3);
  }
}

.about-features-box {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
      flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  align-items: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  justify-content: center;
  width: 155px;
  height: 110px;
  margin-top: 25px;

  -webkit-box-pack: center;
  -ms-flex-pack: center;
  -ms-flex-line-pack: center;
  align-content: center;
}

@media screen and (max-width: 959px) {
  .about-features-box {
    width: calc( (100% - 5.86667vw) / 3);
    height: 20.8vw;
    margin-top: 3.33333vw;
  }
}

.about-features-box:before {
  position: absolute;
  top: -8px;
  left: -8px;
  content: "0" counter(count);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  align-items: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  justify-content: center;
  width: 42px;
  height: 42px;
  color: #fff;
  font-size: 18px;
  font-size: 1.8rem;
  font-weight: 300;
  border-radius: 50%;
  counter-increment: count;

  -webkit-box-pack: center;
  -ms-flex-pack: center;
}

@media screen and (max-width: 959px) {
  .about-features-box:before {
    top: -1.33333vw;
    left: -1.33333vw;
    width: 8vw;
    height: 8vw;
    font-size: 14px;
    font-size: 1.4rem;
  }
}

.about-features-box .text {
  width: 100%;
  margin-bottom: 5px;
  font-size: 16px;
  font-size: 1.6rem;
  text-align: center;
  line-height: 1;
}

@media screen and (max-width: 959px) {
  .about-features-box .text {
    font-size: 14px;
    font-size: 1.4rem;
  }
}

.about-features-box .cost {
  font-size: 60px;
  font-size: 6rem;
  font-weight: 500;
  line-height: 1;
}

@media screen and (max-width: 959px) {
  .about-features-box .cost {
    font-size: 45px;
    font-size: 4.5rem;
  }
}

.about-features-box .unit {
  font-size: 18px;
  font-size: 1.8rem;
  font-weight: bold;
  line-height: 1;
}

@media screen and (max-width: 959px) {
  .about-features-box .unit {
    font-size: 13px;
    font-size: 1.3rem;
  }
}

.about-features-box .em {
  font-size: 40px;
  font-size: 4rem;
  font-weight: bold;
  line-height: 1;
}

@media screen and (max-width: 959px) {
  .about-features-box .em {
    font-size: 29px;
    font-size: 2.9rem;
  }
}

.about-features-box .strong {
  font-size: 28px;
  font-size: 2.8rem;
  font-weight: bold;
  line-height: 1;
}

@media screen and (max-width: 959px) {
  .about-features-box .strong {
    font-size: 21px;
    font-size: 2.1rem;
  }
}

.about-features.-ur .about-features-box {
  color: #7b1451;
  background-color: #f9f0f6;
}

.about-features.-ur .about-features-box:before {
  background-color: #96557c;
}

.about-features.-tokuyu .about-features-box {
  color: #ba0000;
  background-color: #feeeee;
}

.about-features.-tokuyu .about-features-box:before {
  background-color: #c14242;
}

.about-merit {
  margin-bottom: 20px;
  border: 1px solid #e0e0e0;
}

@media screen and (max-width: 959px) {
  .about-merit {
    margin-bottom: 4vw;
  }
}

.about-merit:last-of-type {
  margin-bottom: 0;
}

.about-merit-title {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
      flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  height: 40px;
}

@media screen and (max-width: 959px) {
  .about-merit-title {
    height: auto;
    min-height: 11.46667vw;
  }
}

.about-merit-title .count {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
      flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  justify-content: center;
  width: 100px;
  color: #fff;
  text-align: center;
  line-height: 1;
  align-items: center;
  -ms-flex-line-pack: center;
  align-content: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
}

@media screen and (max-width: 959px) {
  .about-merit-title .count {
    width: 13.33333vw;
    font-size: 10px;
    font-size: 1rem;
  }
}

.about-merit-title .number {
  font-size: 16px;
  font-size: 1.6rem;
  font-weight: 300;
}

@media screen and (max-width: 959px) {
  .about-merit-title .number {
    padding-top: 1.33333vw;
    font-size: 14px;
    font-size: 1.4rem;
  }
}

.about-merit-title .title {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
      flex: 1;
  align-items: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  padding-right: 15px;
  padding-left: 15px;
  font-weight: bold;
  background-color: #fcf7ef;

  -webkit-box-flex: 1;
  -ms-flex: 1;
}

@media screen and (max-width: 959px) {
  .about-merit-title .title {
    padding: 3.2vw 4.4vw;
    line-height: 1.41176;
  }
}

.about-merit-body, .tokuyu-flow {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
      flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  padding: 25px;
  background: url(/wp/wp-content/themes/royal_new_theme/assets/images/common/bg-lattice.png) repeat;
}

@media screen and (max-width: 959px) {
  .about-merit-body, .tokuyu-flow {
    padding: 3.33333vw;
  }
}

.about-merit-body .ph, .tokuyu-flow .ph {
  width: 180px;
}

@media screen and (max-width: 959px) {
  .about-merit-body .ph, .tokuyu-flow .ph {
    width: 32vw;
    height: 32vw;
  }
  .about-merit-body .ph img, .tokuyu-flow .ph img {
    width: 100%;
  }
}

.about-merit-detail {
      flex: 1;

  -webkit-box-flex: 1;
  -ms-flex: 1;
}

@media screen and (max-width: 959px) {
  .about-merit-detail {
    margin-bottom: 4vw;
  }
  .about-merit-detail::after {
    content: "";
    display: block;
    clear: both;
  }
}

.about-merit-catch {
  margin-bottom: 15px;
  font-size: 16px;
  font-size: 1.6rem;
  font-weight: bold;
}

@media screen and (max-width: 959px) {
  .about-merit-catch {
        flex: 1;
    margin-bottom: 0;
    font-size: 14px;
    font-size: 1.4rem;
    line-height: 1.5;

    -webkit-box-flex: 1;
    -ms-flex: 1;
  }
}

@media screen and (max-width: 959px) {
  .about-merit-text {
    width: 100%;
    margin-top: 3.33333vw;
  }
}

.about-merit.-ur:nth-of-type(2n+1) .about-merit-body, .about-merit.-ur:nth-of-type(2n+1) .tokuyu-flow {
  padding-left: 220px;
}

@media screen and (max-width: 959px) {
  .about-merit.-ur:nth-of-type(2n+1) .about-merit-body, .about-merit.-ur:nth-of-type(2n+1) .tokuyu-flow {
    padding-left: 4vw;
  }
}

.about-merit.-ur:nth-of-type(2n+1) .about-merit-body .ph, .about-merit.-ur:nth-of-type(2n+1) .tokuyu-flow .ph {
  left: 25px;
}

@media screen and (max-width: 959px) {
  .about-merit.-ur:nth-of-type(2n+1) .about-merit-body .ph, .about-merit.-ur:nth-of-type(2n+1) .tokuyu-flow .ph {
    margin-left: 1.73333vw;

    -webkit-box-ordinal-group: 3;
    -ms-flex-order: 2;
    order: 2;
  }
}

@media screen and (max-width: 959px) {
  .about-merit.-ur:nth-of-type(2n+1) .about-merit-catch {
    -webkit-box-ordinal-group: 2;
    -ms-flex-order: 1;
    order: 1;
  }
}

@media screen and (max-width: 959px) {
  .about-merit.-ur:nth-of-type(2n+1) .about-merit-text {
    -webkit-box-ordinal-group: 4;
    -ms-flex-order: 3;
    order: 3;
  }
}

.about-merit.-ur:nth-of-type(2n) .about-merit-body, .about-merit.-ur:nth-of-type(2n) .tokuyu-flow {
  padding-right: 220px;
}

@media screen and (max-width: 959px) {
  .about-merit.-ur:nth-of-type(2n) .about-merit-body, .about-merit.-ur:nth-of-type(2n) .tokuyu-flow {
    padding-right: 4vw;
  }
}

.about-merit.-ur:nth-of-type(2n) .about-merit-body .ph, .about-merit.-ur:nth-of-type(2n) .tokuyu-flow .ph {
  right: 25px;
}

@media screen and (max-width: 959px) {
  .about-merit.-ur:nth-of-type(2n) .about-merit-body .ph, .about-merit.-ur:nth-of-type(2n) .tokuyu-flow .ph {
    margin-right: 1.73333vw;
  }
}

.about-merit.-ur .about-merit-body, .about-merit.-ur .tokuyu-flow {
  position: relative;
  min-height: 220px;

  -ms-flex-line-pack: center;
  align-content: center;
}

@media screen and (max-width: 959px) {
  .about-merit.-ur .about-merit-body, .about-merit.-ur .tokuyu-flow {
    align-items: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    min-height: initial;
  }
}

.about-merit.-ur .about-merit-body .ph, .about-merit.-ur .tokuyu-flow .ph {
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}

@media screen and (max-width: 959px) {
  .about-merit.-ur .about-merit-body .ph, .about-merit.-ur .tokuyu-flow .ph {
    position: static;
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
}

.about-merit.-ur .about-merit-title .count {
  background-color: #96557c;
}

.about-merit.-tokuyu .about-merit-body, .about-merit.-tokuyu .tokuyu-flow {
  align-items: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
}

@media screen and (max-width: 959px) {
  .about-merit.-tokuyu .about-merit-body, .about-merit.-tokuyu .tokuyu-flow {
    display: block;
  }
}

.about-merit.-tokuyu:nth-of-type(2n) .about-merit-body .ph, .about-merit.-tokuyu:nth-of-type(2n) .tokuyu-flow .ph {
  margin-right: 15px;
}

@media screen and (max-width: 959px) {
  .about-merit.-tokuyu:nth-of-type(2n) .about-merit-body .ph, .about-merit.-tokuyu:nth-of-type(2n) .tokuyu-flow .ph {
    float: left;
    margin-right: 2vw;
  }
}

.about-merit.-tokuyu:nth-of-type(2n+1) .about-merit-body .ph, .about-merit.-tokuyu:nth-of-type(2n+1) .tokuyu-flow .ph {
  margin-left: 15px;

  -webkit-box-ordinal-group: 3;
  -ms-flex-order: 2;
  order: 2;
}

@media screen and (max-width: 959px) {
  .about-merit.-tokuyu:nth-of-type(2n+1) .about-merit-body .ph, .about-merit.-tokuyu:nth-of-type(2n+1) .tokuyu-flow .ph {
    float: right;
    margin-right: 2vw;
  }
}

.about-merit.-tokuyu:nth-of-type(2n+1) .about-merit-body .about-merit-detail, .about-merit.-tokuyu:nth-of-type(2n+1) .tokuyu-flow .about-merit-detail {
  -webkit-box-ordinal-group: 2;
  -ms-flex-order: 1;
  order: 1;
}

.about-merit.-tokuyu:nth-of-type(2n+1) .about-merit-body .tokuyu-note, .about-merit.-tokuyu:nth-of-type(2n+1) .tokuyu-flow .tokuyu-note {
  -webkit-box-ordinal-group: 4;
  -ms-flex-order: 3;
  order: 3;
}

.about-merit.-tokuyu .about-merit-title .count {
  background-color: #c14242;
}

.about-return {
  width: 230px;
  margin-top: 40px;
  margin-right: auto;
  margin-left: auto;
  font-size: 16px;
  font-size: 1.6rem;
  background: #264b8f;
  padding-left: 1em;
  line-height: 2.5em;
}

@media screen and (max-width: 959px) {
  .about-return {
    width: 86.66667vw;
    height: 16vw;
    margin-top: 10vw;
    font-size: 15px;
    font-size: 1.5rem;
  }
}

@media screen and (max-width: 959px) {
  .about-return.-arrow:after {
    right: 4vw;
    width: 2.4vw;
    height: 2.4vw;
    margin-top: -1.2vw;
  }
}

/* ====================================

  1. About

==================================== */
/*
  1-1. Public Housing
==================================== */
.public-item {
  margin-top: 40px;
  border: 1px solid #e0e0e0;
}

@media screen and (max-width: 959px) {
  .public-item {
    margin-top: 5.33333vw;
  }
}

.public-item-hero {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  align-items: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  width: 100%;
  height: 259px;
  margin-bottom: 25px;
  background-repeat: no-repeat;
  background-position: left top;
  background-size: cover;
}

@media screen and (max-width: 959px) {
  .public-item-hero {
    height: 34.66667vw;
    margin-bottom: 4.66667vw;
  }
}

.public-item-hero .label {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  align-items: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  width: 290px;
  height: 130px;
  padding-right: 30px;
  padding-left: 30px;
  font-size: 26px;
  font-size: 2.6rem;
  line-height: 1.30769;
  background-color: rgba(255, 255, 255, .9);
}

@media screen and (max-width: 959px) {
  .public-item-hero .label {
    width: auto;
    height: auto;
    padding: 3.33333vw 4vw;
    font-size: 16px;
    font-size: 1.6rem;
  }
}

.public-item-body {
  padding-right: 30px;
  padding-bottom: 30px;
  padding-left: 30px;
}

@media screen and (max-width: 959px) {
  .public-item-body {
    padding-right: 4vw;
    padding-bottom: 4vw;
    padding-left: 4vw;
  }
}

.public-item-title {
  display: inline-block;
  margin-bottom: 20px;
  margin-left: -30px;
  padding-bottom: 5px;
  padding-left: 30px;
  font-size: 20px;
  font-size: 2rem;
  border-bottom: 1px solid #ccc;
}

@media screen and (max-width: 959px) {
  .public-item-title {
    margin-bottom: 4vw;
    margin-left: -4vw;
    padding-bottom: 1.33333vw;
    padding-left: 4vw;
    font-size: 16px;
    font-size: 1.6rem;
  }
}

.public-item-button {
  width: 150px;
  line-height: 3;
  margin-top: 16px;
  margin-right: 0;
  margin-left: auto;
  font-size: 12px;
  font-size: 1.2rem;
    position: relative;
    display: inline-block;
    text-align: center;
}

@media screen and (max-width: 959px) {
  .public-item-button {
    width: 86.66667vw;
    height: 11vw;
    margin-top: 6.66667vw;
    margin-right: auto;
    font-size: 15px;
    font-size: 1.5rem;
  }
}

.public-item-button.-arrow:after {
  right: 8px;
}

@media screen and (max-width: 959px) {
  .public-item-button.-arrow:after {
    right: 4vw;
    width: 2.4vw;
    height: 2.4vw;
    margin-top: -1.2vw;
  }
}

.public-item.-ur .catch {
  color: #7b1451;
}

.public-item.-ur .public-item-hero {
  justify-content: flex-end;
  background-image: url(/wp/wp-content/themes/royal_new_theme/assets/images/pages/about/public-ph_1.jpg);

  -webkit-box-pack: end;
  -ms-flex-pack: end;
}

.public-item.-ur .public-item-hero .label {
  color: #7b1451;
}

.public-item.-ur .public-cost-box .label {
  background-color: #96557c;
}

.public-item.-ur .public-cost-box .sum {
  color: #7b1451;
  background-color: #f9f0f6;
}

.public-item.-tokuyu .catch {
  color: #ba0000;
}

.public-item.-tokuyu .public-item-hero {
  justify-content: flex-start;
  background-image: url(/wp/wp-content/themes/royal_new_theme/assets/images/pages/about/public-ph_2.jpg);

  -webkit-box-pack: start;
  -ms-flex-pack: start;
}

.public-item.-tokuyu .public-item-hero .label {
  color: #ba0000;
}

.public-item.-tokuyu .public-cost-box .label {
  background-color: #e37e7e;
}

.public-item.-tokuyu .public-cost-box .sum {
  color: #d02e2c;
  background-color: #feeeee;
}

.public-item.-kosha .catch {
  color: #008577;
}

.public-item.-kosha .public-item-hero {
  justify-content: flex-end;
  background-image: url(/wp/wp-content/themes/royal_new_theme/assets/images/pages/about/public-ph_3.jpg);

  -webkit-box-pack: end;
  -ms-flex-pack: end;
}

.public-item.-kosha .public-item-hero .label {
  padding-right: 20px;
  padding-left: 20px;
  color: #008577;
  font-size: 22px;
  font-size: 2.2rem;
}

@media screen and (max-width: 959px) {
  .public-item.-kosha .public-item-hero .label {
    padding: 3.33333vw 4vw;
    font-size: 16px;
    font-size: 1.6rem;
  }
}

.public-item.-kosha .public-cost-box .label {
  background-color: #5ea39c;
}

.public-item.-kosha .public-cost-box .sum {
  color: #008577;
  background-color: #ecf6f5;
}







.public-item.-jkk .catch {
  color: #00adbd;
}

.public-item.-jkk .public-item-hero {
  justify-content: flex-start;
  background-image: url(/wp/wp-content/themes/royal_new_theme/assets/images/pages/about/public-ph_2.jpg);

  -webkit-box-pack: start;
  -ms-flex-pack: start;
}

.public-item.-jkk .public-item-hero .label {
  color: #00adbd;
}

.public-item.-jkk .public-cost-box .label {
  background-color: #4fbbc1;
}

.public-item.-jkk .public-cost-box .sum {
  color: #4ec6d1;
  background-color: #effeff;
}




.public-cost {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
      flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  margin-top: 20px;
}

@media screen and (max-width: 959px) {
  .public-cost {
        flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    justify-content: space-between;

    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
  }
}

.public-cost-box {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin-right: 8px;
}

@media screen and (max-width: 959px) {
  .public-cost-box {
    margin-right: 0;
  }
}

.public-cost-box .label {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  align-items: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  justify-content: center;
  width: 24px;
  height: 64px;
  color: #fff;
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 1.14286;
  letter-spacing: 0;

  -webkit-box-pack: center;
  -ms-flex-pack: center;
}

@media screen and (max-width: 959px) {
  .public-cost-box .label {
    width: 4.8vw;
    height: 12.8vw;
    font-size: 10px;
    font-size: 1rem;
  }
}

.public-cost-box .sum {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  align-items: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  justify-content: center;
  width: 80px;
  line-height: 1;

  -webkit-box-pack: center;
  -ms-flex-pack: center;
}

@media screen and (max-width: 959px) {
  .public-cost-box .sum {
    width: 15.73333vw;
  }
}

.public-cost-box .strong {
  font-size: 46px;
  font-size: 4.6rem;
  font-weight: 400;
}

@media screen and (max-width: 959px) {
  .public-cost-box .strong {
    font-size: 40px;
    font-size: 4rem;
  }
}

.public-cost-box .em {
  font-size: 20px;
  font-size: 2rem;
  font-weight: bold;
}

@media screen and (max-width: 959px) {
  .public-cost-box .em {
    font-size: 16px;
    font-size: 1.6rem;
  }
}

.public-cost-box .unit {
  margin-top: 1em;
  font-size: 16px;
  font-size: 1.6rem;
}

@media screen and (max-width: 959px) {
  .public-cost-box .unit {
    font-size: 12px;
    font-size: 1.2rem;
  }
}

.public-cost-box:last-of-type .sum {
  width: 110px;
}

@media screen and (max-width: 959px) {
  .public-cost-box:last-of-type .sum {
    width: 15.73333vw;
  }
}

/* ====================================

  3. Ur

==================================== */
/*
  3-1. Ur
==================================== */
.ur-button {
  width: 360px;
  margin-top: 25px;
  padding-left: 30px;
  line-height: 3em;
}

@media screen and (max-width: 959px) {
  .ur-button {
    width: 86.66667vw;
    height: 16vw;
    margin-top: 5.33333vw;
    margin-right: auto;
    margin-left: auto;
  }
}

.ur-button.-arrow:after {
  right: auto;
  left: 15px;
  margin-top: -6px;
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
}

@media screen and (max-width: 959px) {
  .ur-button.-arrow:after {
    right: 4vw;
    width: 2.4vw;
    height: 2.4vw;
    margin-top: -2.13333vw;
  }
}

/*
  3-1. Judgment
==================================== */
.judgment-head .count {
  margin-right: 5px;
  color: #7b1451;
  font-size: 30px;
  font-size: 3rem;
  font-weight: 400;
}

@media screen and (max-width: 959px) {
  .judgment-head .count {
    margin-right: 2.66667vw;
    font-size: 24px;
    font-size: 2.4rem;
  }
}

.judgment-note {
  margin-top: 20px;
  margin-bottom: 20px;
  padding: 25px;
  background-color: #f6f6f6;
}

@media screen and (max-width: 959px) {
  .judgment-note {
    margin-top: 4vw;
    margin-bottom: 4vw;
    padding: 4vw;
  }
}

.judgment-dl .label {
  position: relative;
  padding-left: 1.2em;
  font-weight: bold;
  line-height: 1;
}

@media screen and (max-width: 959px) {
  .judgment-dl .label {
    margin-bottom: 1vw;
    font-size: 16px;
    font-size: 1.6rem;
  }
}

.judgment-dl .label:before {
  position: absolute;
  top: 0;
  left: 0;
  content: "■";
  margin-right: .5em;
  color: #7b1451;
}

.judgment-table {
  width: 100%;
  border-spacing: 2px;
  border-collapse: initial;
}

.judgment-table .head {
  height: 44px;
  color: #fff;
  font-size: 16px;
  font-size: 1.6rem;
  text-align: center;
  vertical-align: middle;
  background-color: #96557c;
}

@media screen and (max-width: 959px) {
  .judgment-table .head {
    height: 10.66667vw;
  }
}

.judgment-table .label {
  width: 50%;
  height: 44px;
  font-weight: bold;
  text-align: center;
  vertical-align: middle;
  background-color: #e0e0e0;
}

@media screen and (max-width: 959px) {
  .judgment-table .label {
    height: 10.66667vw;
  }
}

.judgment-table .detail {
  height: 44px;
  padding-right: 10px;
  padding-left: 10px;
  vertical-align: middle;
  background-color: #fff;
}

@media screen and (max-width: 959px) {
  .judgment-table .detail {
    height: auto;
    padding: 2vw 4vw;
    line-height: 1.5;
  }
}

.judgment-table .note {
  color: #888;
  font-size: 12px;
  font-size: 1.2rem;
}

.judgment-advice {
  position: relative;
  margin-top: 15px;
  padding-left: 1.5em;
  color: #666;
}

@media screen and (max-width: 959px) {
  .judgment-advice {
    margin-top: 3.33333vw;
    font-size: 12px;
    font-size: 1.2rem;
    line-height: 1.5;
  }
}

.judgment-advice .mark {
  position: absolute;
  top: 0;
  left: 0;
}

/* ====================================

  4. Tokuyuchin

==================================== */
.tokuyu-button {
  width: 260px;
  margin-top: 25px;
}

@media screen and (max-width: 959px) {
  .tokuyu-button {
    width: 86.66667vw;
    height: 16vw;
    margin-top: 5.33333vw;
    margin-right: auto;
    margin-left: auto;
  }
}

@media screen and (max-width: 959px) and (max-width: 959px) {
  .tokuyu-button.-arrow:after {
    right: 4vw;
    width: 2.4vw;
    height: 2.4vw;
    margin-top: -1.2vw;
  }
}

.tokuyu-note {
  width: 100%;
  margin-top: 25px;
}

@media screen and (max-width: 959px) {
  .tokuyu-note {
    margin-top: 6.66667vw;
  }
  .tokuyu-note.-merit_2 .tokuyu-note-inner, .tokuyu-note.-merit_3 .tokuyu-note-inner {
    padding: 0;
    border: none;
    background-color: transparent;
  }
}

.tokuyu-note .heading-tertiary {
  font-size: 18px;
  font-size: 1.8rem;
}

.tokuyu-note .advice {
  margin-top: 10px;
  color: #666;
  font-size: 12px;
  font-size: 1.2rem;
  line-height: 1.5;
}

@media screen and (max-width: 959px) {
  .tokuyu-note .advice {
    margin-top: 4vw;
  }
}

.tokuyu-note-inner {
  padding: 30px;
  text-align: center;
  border: 1px solid #e0e0e0;
  background-color: #fff;
}

@media screen and (max-width: 959px) {
  .tokuyu-note-inner {
    padding: 4vw;
  }
  .tokuyu-note-inner .figure img {
    width: 100%;
  }
}

.tokuyu-note-box {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
      flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  margin-top: 20px;
  margin-right: 30px;
  margin-left: 30px;
  padding: 30px 40px;
  text-align: left;
  background-color: #f6f6f6;
}

@media screen and (max-width: 959px) {
  .tokuyu-note-box {
    margin: 0;
    margin-top: 4vw;
    padding: 4vw 2.66667vw;
  }
}

.tokuyu-note-box .tokuyu-list {
  width: 50%;
}

@media screen and (max-width: 959px) {
  .tokuyu-note-box .tokuyu-list {
    width: 100%;
  }
}

.tokuyu-list {
  text-align: left;
}

.tokuyu-list .item {
  position: relative;
  margin-bottom: 10px;
  padding-left: 15px;
  line-height: 1.5;
}

.tokuyu-list .item:last-of-type {
  margin-bottom: 0;
}

.tokuyu-list .item:before {
  position: absolute;
  top: .5em;
  left: 0;
  content: "";
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background-color: #ba0000;
}

.tokuyu-flow {
  margin-top: 15px;
  margin-right: 0;
  padding-right: 15px;
  padding-left: 35px;
  border: 1px solid #e0e0e0;
}

@media screen and (max-width: 959px) {
  .tokuyu-flow {
    margin-top: 7.33333vw;
    padding: 0;
    border: none;
    background: none;
  }
}

@media screen and (max-width: 959px) {
  .tokuyu-flow > .text {
    color: #666;
    line-height: 1.5;
  }
}

.tokuyu-step {
  position: relative;
  width: 100%;
  margin-bottom: 10px;
}

@media screen and (max-width: 959px) {
  .tokuyu-step {
    margin-bottom: 13.33333vw;
    padding-right: 4vw;
    padding-bottom: 6.66667vw;
    padding-left: 4vw;
    border: 1px solid #000;
    background: url(/wp/wp-content/themes/royal_new_theme/assets/images/common/bg-lattice.png) repeat;
  }
  .tokuyu-step:last-of-type {
    margin-bottom: 2.66667vw;
  }
}

.tokuyu-step .label {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  align-items: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  justify-content: center;
  width: 160px;
  height: 40px;
  color: #fff;
  text-align: center;
  line-height: 1.28571;
  background-color: #a00402;

  -webkit-box-pack: center;
  -ms-flex-pack: center;
}

@media screen and (max-width: 959px) {
  .tokuyu-step .label {
    width: auto;
    height: 10.66667vw;
    margin-right: -4vw;
    margin-bottom: 2.66667vw;
    margin-left: -4vw;
    font-size: 16px;
    font-size: 1.6rem;
    line-height: 10.66667vw;
  }
}

.tokuyu-step .label:before {
  position: absolute;
  top: 40px;
  bottom: 0;
  left: 77px;
  content: "";
  width: 4px;
  background-color: #a00402;
}

@media screen and (max-width: 959px) {
  .tokuyu-step .label:before {
    top: auto;
    bottom: -8vw;
    left: calc(50% - .66667vw);
    width: 5px;
    height: 8vw;
  }
}

.tokuyu-step .label:after {
  position: absolute;
  bottom: 0;
  left: 71px;
  content: "";
  width: 12px;
  height: 12px;
  border-width: 4px 4px 0 0;
  border-style: solid;
  border-color: #a00402;
  -webkit-transform: rotate(135deg);
          transform: rotate(135deg);
}

@media screen and (max-width: 959px) {
  .tokuyu-step .label:after {
    bottom: -8vw;
    left: calc(50% - 2.6vw);
    width: 4vw;
    height: 4vw;
    border-width: 5px 5px 0 0;
  }
}

@media screen and (max-width: 959px) {
  .tokuyu-step.-step1 {
    border: 1px solid #a00402;
  }
}

.tokuyu-step.-step1 .label:before {
  background-color: #a00402;
}

.tokuyu-step.-step1 .label:after {
  border-color: #a00402;
}

.tokuyu-step.-step1 .number {
  color: #ba0000;
  font-size: 18px;
  font-size: 1.8rem;
  font-weight: 400;
}

@media screen and (max-width: 959px) {
  .tokuyu-step.-step1 .number {
    font-size: 21px;
    font-size: 2.1rem;
  }
  .tokuyu-step.-step1 .number > a {
    color: #ba0000;
  }
}

@media screen and (max-width: 959px) {
  .tokuyu-step.-step2 {
    border: 1px solid #ba0000;
  }
}

.tokuyu-step.-step2 .label {
  background-color: #ba0000;
}

.tokuyu-step.-step2 .label:before {
  background-color: #ba0000;
}

.tokuyu-step.-step2 .label:after {
  border-color: #ba0000;
}

@media screen and (max-width: 959px) {
  .tokuyu-step.-step3 {
    border: 1px solid #c8240d;
  }
}

.tokuyu-step.-step3:before {
  position: absolute;
  top: 20px;
  left: -20px;
  content: "";
  width: 18px;
  height: 562px;
  border-top: 2px solid #aaa;
  border-bottom: 2px solid #aaa;
  border-left: 2px solid #aaa;
}

.tokuyu-step.-step3 .label {
  background-color: #c8240d;
}

.tokuyu-step.-step3 .label:before {
  background-color: #c8240d;
}

.tokuyu-step.-step3 .label:after {
  border-color: #c8240d;
}

@media screen and (max-width: 959px) {
  .tokuyu-step.-step4 {
    border: 1px solid #d23f16;
  }
}

.tokuyu-step.-step4 .label {
  height: 54px;
  background-color: #d23f16;
}

@media screen and (max-width: 959px) {
  .tokuyu-step.-step4 .label {
    height: 10.66667vw;
  }
}

.tokuyu-step.-step4 .label:before {
  top: 54px;
  background-color: #d23f16;
}

@media screen and (max-width: 959px) {
  .tokuyu-step.-step4 .label:before {
    top: auto;
  }
}

.tokuyu-step.-step4 .label:after {
  border-color: #d23f16;
}

@media screen and (max-width: 959px) {
  .tokuyu-step.-step5 {
    border: 1px solid #da541e;
  }
}

.tokuyu-step.-step5 .label {
  background-color: #da541e;
}

.tokuyu-step.-step5 .label:before {
  background-color: #da541e;
}

.tokuyu-step.-step5 .label:after {
  border-color: #da541e;
}

@media screen and (max-width: 959px) {
  .tokuyu-step.-step6 {
    border: 1px solid #e7762a;
  }
}

.tokuyu-step.-step6 .label {
  background-color: #e7762a;
}

.tokuyu-step.-step6 .label:before {
  background-color: #e7762a;
}

.tokuyu-step.-step6 .label:after {
  border-color: #e7762a;
}

@media screen and (max-width: 959px) {
  .tokuyu-step.-step7 {
    border: 1px solid #f28026;
  }
}

.tokuyu-step.-step7:before {
  position: absolute;
  top: 16px;
  left: -12px;
  content: "";
  width: 8px;
  height: 8px;
  border-width: 2px 2px 0 0;
  border-style: solid;
  border-color: #aaa;
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
}

.tokuyu-step.-step7 .label {
  float: left;
  margin-right: 10px;
  background-color: #f28026;
}

@media screen and (max-width: 959px) {
  .tokuyu-step.-step7 .label {
    float: none;
    margin-right: -4vw;
  }
}

.tokuyu-step.-step7 .label:before {
  display: none;
}

.tokuyu-step.-step7 .label:after {
  display: none;
}

.tokuyu-step.-step7 .text {
  width: 100%;
  color: #666;
  line-height: 40px;
}

@media screen and (max-width: 959px) {
  .tokuyu-step.-step7 .text {
    line-height: 1;
  }
}

.tokuyu-step.-step7 .tokuyu-step-content {
  margin-left: 0;
  padding-bottom: 0;
}

.tokuyu-step-content {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
      flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  margin-top: 15px;
  margin-left: 100px;
  padding-bottom: 20px;
}

@media screen and (max-width: 959px) {
  .tokuyu-step-content {
    margin-top: 0;
    margin-bottom: 4vw;
    margin-left: 0;
    padding-bottom: 0;
  }
  .tokuyu-step-content:last-of-type {
    margin-bottom: 0;
  }
}

.tokuyu-step-content + .tokuyu-step-content {
  margin-top: -10px;
}

@media screen and (max-width: 959px) {
  .tokuyu-step-content + .tokuyu-step-content {
    margin-top: 0;
  }
}

.tokuyu-step-content .icon {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  align-items: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  justify-content: center;
  width: 40px;
  height: 40px;
  margin-right: 10px;
  border-radius: 50%;
  background-color: #f9cfcf;

  -webkit-box-pack: center;
  -ms-flex-pack: center;
}

@media screen and (max-width: 959px) {
  .tokuyu-step-content .icon {
    width: 12vw;
    height: 12vw;
    margin-right: 2.66667vw;
  }
}

.tokuyu-step-content [class^="icon-"] {
  fill: #ba0000;
}

.tokuyu-step-content .icon-pc {
  width: 24px;
  height: 22px;
}

@media screen and (max-width: 959px) {
  .tokuyu-step-content .icon-pc {
    width: 7.2vw;
    height: 6.66667vw;
  }
}

.tokuyu-step-content .icon-tel {
  width: 22px;
  height: 22px;
}

@media screen and (max-width: 959px) {
  .tokuyu-step-content .icon-tel {
    width: 6.53333vw;
    height: 6.53333vw;
  }
}

.tokuyu-step-content .icon-home {
  width: 23px;
  height: 22px;
}

@media screen and (max-width: 959px) {
  .tokuyu-step-content .icon-home {
    width: 5.33333vw;
    height: 7.2vw;
  }
}

.tokuyu-step-content .icon-note {
  width: 18px;
  height: 23px;
}

@media screen and (max-width: 959px) {
  .tokuyu-step-content .icon-note {
    width: 5.33333vw;
    height: 6.66667vw;
  }
}

.tokuyu-step-content .icon-post {
  width: 20px;
  height: 27px;
}

@media screen and (max-width: 959px) {
  .tokuyu-step-content .icon-post {
    width: 5.33333vw;
    height: 7.2vw;
  }
}

.tokuyu-step-content .icon-key {
  width: 14px;
  height: 27px;
}

@media screen and (max-width: 959px) {
  .tokuyu-step-content .icon-key {
    width: 4vw;
    height: 7.73333vw;
  }
}

.tokuyu-step-item {
      flex: 1;

  -webkit-box-flex: 1;
  -ms-flex: 1;
}

.tokuyu-step-item .title {
  font-weight: bold;
}

.tokuyu-step-item .detail {
  line-height: 1.5;
}

.about-merit.-tokuyu.-merit_4 .about-merit-detail {
      flex: auto;

  -webkit-box-flex: 1;
  -ms-flex: auto;
}

/* ====================================

  4. Kosya

==================================== */
.kosha section {
  counter-reset: number;
  counter-reset: border;
}

.kosha .heading-primary:after {
  background-color: #008577;
}

.kosha .head-number {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  align-items: flex-start;
  -webkit-box-align: start;
  -ms-flex-align: start;
  counter-increment: number;
}

.kosha .head-number:before {
  content: counter(number);
  width: 26px;
  margin-right: 10px;
  color: #fff;
  text-align: center;
  line-height: 26px;
  border-radius: 50%;
  background-color: #55a199;

  -ms-flex-negative: 0;
  flex-shrink: 0;
}

@media screen and (max-width: 959px) {
  .kosha .head-number:before {
    width: 5.33333vw;
    margin-right: 1.33333vw;
    font-size: 12px;
    font-size: 1.2rem;
    font-weight: 400;
    line-height: 5.33333vw;
  }
}

.kosha .up {
  font-size: 10px;
  vertical-align: text-top;
}

.kosha .number-head {
  display: inline-block;
  margin: 15px 0;
  font-size: 16px;
  border-bottom: 1px solid #008577;
}

.kosha .number-head.-border:before {
  content: counter(border) ".";
  color: #008577;
  font-size: 20px;
  font-weight: bold;
  font-weight: 400;
  counter-increment: border;
}

@media screen and (max-width: 959px) {
  .kosha .number-head {
    display: block;
  }
  .kosha .number-head.-border:before {
    font-size: 24px;
  }
}

.kosha .bold {
  font-weight: bold;
}

.kosha .note {
  display: block;
  color: #666;
  font-size: 12px;
}

.kosha .merit-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
      flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  justify-content: space-between;
  margin-top: -12px;

  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
}

.kosha .merit-list .child {
  width: calc(50% - 5px);
  margin-top: 12px;
  border: 1px solid #e0e0e0;
  counter-increment: number;
}

.kosha .merit-list .-head {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  align-items: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  justify-content: flex-start;
  padding: 7px 5px;
  background-color: #ecf6f5;

  -webkit-box-pack: start;
  -ms-flex-pack: start;
}

.kosha .merit-list .-head:before {
  content: "0" counter(number);
  width: 50px;
  color: #fff;
  font-size: 20px;
  font-weight: 400;
  text-align: center;
  line-height: 50px;
  border-radius: 50px;
  background-color: #55a199;
}

.kosha .merit-list .-head .value {
  padding-left: 10px;
  line-height: 1.3;
}

.kosha .merit-list .-head .value .main, .kosha .merit-list .-head .value .sub {
  display: block;
}

.kosha .merit-list .-head .value .main {
  color: #008577;
  font-size: 18px;
  font-weight: bold;
}

.kosha .merit-list .detail {
  padding: 20px;
  line-height: 1.5;
}

@media screen and (max-width: 959px) {
  .kosha .merit-list {
    display: block;
    margin-top: 5.33333vw;
  }
  .kosha .merit-list .child {
    width: 100%;
    margin-top: 2.66667vw;
  }
  .kosha .merit-list .-head {
    padding: 2vw;
  }
  .kosha .merit-list .-head:before {
    width: 10.66667vw;
    line-height: 10.66667vw;
  }
  .kosha .merit-list .-head .value .sub {
    font-size: 12px;
    font-size: 1.2rem;
  }
  .kosha .merit-list .-head .value .main {
    font-size: 18px;
    font-size: 1.8rem;
  }
  .kosha .merit-list .detail {
    padding: 4vw;
  }
}

.kosha .about-image {
  padding: 10px 0 30px;
}

.kosha .about-image.-box {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  justify-content: space-between;

  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
}

@media screen and (max-width: 959px) {
  .kosha .about-image {
    margin-bottom: 8vw;
    padding: 0;
  }
  .kosha .about-image.-box {
    display: block;
  }
  .kosha .about-image.-box .child {
    display: block;
  }
  .kosha .about-image .child + .child {
    margin-top: 4vw;
  }
  .kosha .about-image img {
    width: 100%;
  }
}

.kosha .about-checkbox {
  margin-top: 5px;
  margin-bottom: 25px;
  border: 1px solid #e0e0e0;
  background: url(/wp/wp-content/themes/royal_new_theme/assets/images/common/bg-lattice.png) repeat;
}

.kosha .about-checkbox.-list {
  counter-reset: number;
}

.kosha .about-checkbox .child + .child {
  margin-top: 10px;
}

.kosha .about-checkbox .head {
  padding: 5px 0;
  color: #fff;
  font-size: 18px;
  text-align: center;
  background-color: #55a199;
}

.kosha .about-checkbox .detail {
  padding: 30px;
}

@media screen and (max-width: 959px) {
  .kosha .about-checkbox .child + .child {
    margin-top: 1.33333vw;
  }
  .kosha .about-checkbox .head {
    padding: 10px 0;
    font-size: 15px;
    font-size: 1.5rem;
    line-height: 1.3;
  }
  .kosha .about-checkbox .detail {
    padding: 2.66667vw;
  }
}

.kosha .table-note {
  margin: 10px 0 0 30px;
  font-size: 12px;
}

.kosha .table-note th, .kosha .table-note td {
  padding: 10px;
}

.kosha .table-note tr + tr th, .kosha .table-note tr + tr td {
  vertical-align: middle;
  border-top: 2px solid #fff;
}

.kosha .table-note th {
  width: 72px;
  background-color: #eee;
}

.kosha .table-note td {
  border-left: 2px solid #fff;
  background-color: #ecf6f5;
}

@media screen and (max-width: 959px) {
  .kosha .table-note {
    margin: 1.33333vw 0 0;
    line-height: 1.5;
  }
  .kosha .table-note th {
    width: 10.13333vw;
    padding: 0;
  }
  .kosha .table-note td {
    padding: 1.33333vw;
  }
}

.kosha .judgment-table {
  margin: 10px 0 50px;
}

.kosha .judgment-table th, .kosha .judgment-table td {
  padding: 7px 20px;
          box-sizing: border-box;
  -webkit-box-sizing: border-box;
  vertical-align: middle;
}

.kosha .judgment-table th {
  color: #fff;
  background-color: #55a199;
}

.kosha .judgment-table td {
  background-color: #ecf6f5;
}

.kosha .judgment-table tr:nth-of-type(odd) td {
  background-color: #f6f6f6;
}

@media screen and (max-width: 959px) {
  .kosha .judgment-table {
    margin: 1.33333vw 0 6.66667vw;
  }
  .kosha .judgment-table th, .kosha .judgment-table td {
    padding: 1.33333vw;
  }
}

.kosha .rent-table {
  width: 100%;
  border-spacing: 2px;
  border-collapse: initial;
}

.kosha .rent-table th, .kosha .rent-table td {
  padding: 10px;
}

.kosha .rent-table th {
  background-color: #eee;
}

.kosha .rent-table td {
  padding: 15px 20px;
  background-color: #f6f6f6;
}

.kosha .no-judgment {
  line-height: 1.5;
  counter-reset: number;
}

.kosha .no-judgment .judgment-table {
  margin-bottom: 0;
}

.kosha .formula {
  margin: 15px 0;
  padding: 20px 20px 10px;
  line-height: 1.5;
  background-color: #fcf7ef;
}

.kosha .formula .main {
  font-size: 26px;
}

@media screen and (max-width: 959px) {
  .kosha .formula {
    padding: 4vw 5.33333vw;
  }
  .kosha .formula .main {
    font-size: 24px;
    font-size: 2.4rem;
  }
}
/* ====================================

  5. yokohamajkk

==================================== */
.yokohamajkk section {
  counter-reset: number;
  counter-reset: border;
}
.yokohamajkk .head {
    font-weight: bold;
}
.yokohamajkk .detail-text{
    margin-bottom: 1em;
}
.yokohamajkk .detail-point {
    font-weight: bold;
}
.yokohamajkk .detail-point div {
  background: #fff;
  border: 1px solid #4ec6d1;
  border-radius: 50px;
  display: inline-block;
  padding: 0 10px;
  margin: 0 5px 5px 0;
}
.yokohamajkk .heading-primary::before {
  background-color: #4ec6d1;
}
.yokohamajkk .heading-secondary {
  border-bottom: 3px solid #4ec6d1;
}
.yokohamajkk .head-number {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  align-items: flex-start;
  -webkit-box-align: start;
  -ms-flex-align: start;
  counter-increment: number;
    flex-wrap: wrap;
}
.yokohamajkk .head-number ul {
  width: 100%;
  padding-left: 2.3em;
  margin-bottom: 0.6em;
}
.yokohamajkk .head-number p {
  font-weight: bold;
}
.yokohamajkk .head-number::before {
  content: counter(number);
  width: 26px;
  margin-right: 10px;
  color: #fff;
  text-align: center;
  line-height: 26px;
  border-radius: 50%;
  background-color: #4ec6d1;
  -ms-flex-negative: 0;
  flex-shrink: 0;
}

@media screen and (max-width: 959px) {
  .yokohamajkk .head-number:before {
    width: 5.33333vw;
    margin-right: 1.33333vw;
    font-size: 12px;
    font-size: 1.2rem;
    font-weight: 400;
    line-height: 5.33333vw;
  }
}

.yokohamajkk .up {
  font-size: 10px;
  vertical-align: text-top;
}

.yokohamajkk .number-head {
  display: inline-block;
  margin: 15px 0;
  font-size: 16px;
  border-bottom: 1px solid #008577;
}

.yokohamajkk .number-head.-border:before {
  content: counter(border) ".";
  color: #008577;
  font-size: 20px;
  font-weight: bold;
  font-weight: 400;
  counter-increment: border;
}

@media screen and (max-width: 959px) {
  .yokohamajkk .number-head {
    display: block;
  }
  .yokohamajkk .number-head.-border:before {
    font-size: 24px;
  }
}

.yokohamajkk .bold {
  font-weight: bold;
}

.yokohamajkk .note {
  display: block;
  color: #666;
  font-size: 12px;
}

.yokohamajkk .merit-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
      flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  justify-content: space-between;
  margin-top: -12px;

  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
}

.yokohamajkk .merit-list .child {
  width: calc(50% - 5px);
  margin-top: 12px;
  border: 1px solid #e0e0e0;
  counter-increment: number;
}

.yokohamajkk .merit-list .-head {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  align-items: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  justify-content: flex-start;
  padding: 7px 5px;
  background-color: #e8fdff;
  -webkit-box-pack: start;
  -ms-flex-pack: start;
}

.yokohamajkk .merit-list .-head:before {
  content: "0" counter(number);
  width: 50px;
  color: #fff;
  font-size: 20px;
  font-weight: 400;
  text-align: center;
  line-height: 50px;
  border-radius: 50px;
  background-color: #4ec6d1;
}

.yokohamajkk .merit-list .-head .value {
  padding-left: 10px;
  line-height: 1.3;
}

.yokohamajkk .merit-list .-head .value .main, .yokohamajkk .merit-list .-head .value .sub {
  display: block;
}

.yokohamajkk .merit-list .-head .value .main {
  color: #0096a4;
  font-size: 18px;
  font-weight: bold;
}

.yokohamajkk .merit-list .detail {
  padding: 20px;
  line-height: 1.5;
}

@media screen and (max-width: 959px) {
  .yokohamajkk .merit-list {
    display: block;
    margin-top: 5.33333vw;
  }
  .yokohamajkk .merit-list .child {
    width: 100%;
    margin-top: 2.66667vw;
  }
  .yokohamajkk .merit-list .-head {
    padding: 2vw;
  }
  .yokohamajkk .merit-list .-head:before {
    width: 10.66667vw;
    line-height: 10.66667vw;
  }
  .yokohamajkk .merit-list .-head .value .sub {
    font-size: 12px;
    font-size: 1.2rem;
  }
  .yokohamajkk .merit-list .-head .value .main {
    font-size: 18px;
    font-size: 1.8rem;
  }
  .yokohamajkk .merit-list .detail {
    padding: 4vw;
  }
}

.yokohamajkk .about-image {
  padding: 10px 0 30px;
}

.yokohamajkk .about-image.-box {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  justify-content: space-between;

  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
}

@media screen and (max-width: 959px) {
  .yokohamajkk .about-image {
    margin-bottom: 8vw;
    padding: 0;
  }
  .yokohamajkk .about-image.-box {
    display: block;
  }
  .yokohamajkk .about-image.-box .child {
    display: block;
  }
  .yokohamajkk .about-image .child + .child {
    margin-top: 4vw;
  }
  .yokohamajkk .about-image img {
    width: 100%;
  }
}

.yokohamajkk .about-checkbox {
  margin-top: 5px;
  margin-bottom: 25px;
  border: 1px solid #e0e0e0;
  background: url(/wp/wp-content/themes/royal_new_theme/assets/images/common/bg-lattice.png) repeat;
}

.yokohamajkk .about-checkbox.-list {
  counter-reset: number;
}

.yokohamajkk .about-checkbox .child + .child {
  margin-top: 10px;
}

.yokohamajkk .about-checkbox .head {
  padding: 5px 0;
  color: #fff;
  font-size: 18px;
  text-align: center;
  background-color: #4ec6d1;
}

.yokohamajkk .about-checkbox .detail {
  padding: 30px;
}

@media screen and (max-width: 959px) {
  .yokohamajkk .about-checkbox .child + .child {
    margin-top: 1.33333vw;
  }
  .yokohamajkk .about-checkbox .head {
    padding: 10px 0;
    font-size: 15px;
    font-size: 1.5rem;
    line-height: 1.3;
  }
  .yokohamajkk .about-checkbox .detail {
    padding: 2.66667vw;
  }
}

.yokohamajkk .table-note {
  margin: 10px 0 0 30px;
  font-size: 12px;
}

.yokohamajkk .table-note th, .yokohamajkk .table-note td {
  padding: 10px;
}

.yokohamajkk .table-note tr + tr th, .yokohamajkk .table-note tr + tr td {
  vertical-align: middle;
  border-top: 2px solid #fff;
}

.yokohamajkk .table-note th {
  width: 72px;
  background-color: #eee;
}

.yokohamajkk .table-note td {
  border-left: 2px solid #fff;
  background-color: #ecf6f5;
}

@media screen and (max-width: 959px) {
  .yokohamajkk .table-note {
    margin: 1.33333vw 0 0;
    line-height: 1.5;
  }
  .yokohamajkk .table-note th {
    width: 10.13333vw;
    padding: 0;
  }
  .yokohamajkk .table-note td {
    padding: 1.33333vw;
  }
}

.yokohamajkk .judgment-table {
  margin: 10px 0 50px;
}

.yokohamajkk .judgment-table th, .yokohamajkk .judgment-table td {
  padding: 7px 20px;
          box-sizing: border-box;
  -webkit-box-sizing: border-box;
  vertical-align: middle;
}

.yokohamajkk .judgment-table th {
  color: #fff;
  background-color: #55a199;
}

.yokohamajkk .judgment-table td {
  background-color: #ecf6f5;
}

.yokohamajkk .judgment-table tr:nth-of-type(odd) td {
  background-color: #f6f6f6;
}

@media screen and (max-width: 959px) {
  .yokohamajkk .judgment-table {
    margin: 1.33333vw 0 6.66667vw;
  }
  .yokohamajkk .judgment-table th, .yokohamajkk .judgment-table td {
    padding: 1.33333vw;
  }
}

.yokohamajkk .rent-table {
  width: 100%;
  border-spacing: 2px;
  border-collapse: initial;
}

.yokohamajkk .rent-table th, .yokohamajkk .rent-table td {
  padding: 10px;
}

.yokohamajkk .rent-table th {
  background-color: #eee;
}

.yokohamajkk .rent-table td {
  padding: 15px 20px;
  background-color: #f6f6f6;
}

.yokohamajkk .no-judgment {
  line-height: 1.5;
  counter-reset: number;
}

.yokohamajkk .no-judgment .judgment-table {
  margin-bottom: 0;
}

.yokohamajkk .formula {
  margin: 15px 0;
  padding: 20px 20px 10px;
  line-height: 1.5;
  background-color: #fcf7ef;
}

.yokohamajkk .formula .main {
  font-size: 26px;
}

@media screen and (max-width: 959px) {
  .yokohamajkk .formula {
    padding: 4vw 5.33333vw;
  }
  .yokohamajkk .formula .main {
    font-size: 24px;
    font-size: 2.4rem;
  }
}
/* ====================================

  追加分

==================================== */
@media screen and (max-width: 959px) {
	ul.ur_meritt li{
		display: inline-block;
		width: 48%;
	}
}
@media screen and (min-width: 960px) {
	ul.ur_meritt li{
		display: inline-block;
	}
	ul.ur_meritt li img{
		width: 171px;
	}
}

.hozen_box{
    text-align: center;
	border-collapse: separate;
	border-spacing: 5px 0;
	display: table;
	width: 100%;
	margin: 2em 0;
}
.hozen_box div{
 display: table-cell;
 vertical-align: middle;
    border: 3px solid #d02e2c;
    background: #fff1f1;
    font-weight: 700;
    font-size: 1.2em;
    line-height: 1.4em;
    width: 20%;
    height: 8em;
    border-radius: 5px;
    padding: 4px;
    text-align: center;
	margin: 0 0.5em;
}

@media screen and (max-width: 960px) {
.hozen_box div {
    display: inline-block;
    vertical-align: middle!important;
    border: 3px solid #d02e2c;
    background: #fff1f1;
    font-weight: 700;
    font-size: 1.2em;
    line-height: 1.4em;
    width: 44%;
    height: 8em;
    border-radius: 5px;
    padding: 4px;
    text-align: center;
    margin: 0.5em;
}
}

#tokuyuchin_check #flow1 {
border-radius:5px;
background:#ccd7dd;
padding:20px 20px 0 20px;
margin:0 0 10px;
text-align:center !important;
font-weight:bold;
position:relative;
}	

#tokuyuchin_check #flow2,
#tokuyuchin_check #flow3,
#tokuyuchin_check #flow4,
#tokuyuchin_check #flow5,
#tokuyuchin_check #flow6,
#tokuyuchin_check #flow6-2,
#tokuyuchin_check #flow7 {
border-radius:5px;
background:#ccd7dd;
padding:20px 20px 0 20px;
margin:0 0 10px;
text-align:center !important;
font-weight:bold;
display:none;
}		

#tokuyuchin_check_result {
}

#tokuyuchin_check #ng_end,
#tokuyuchin_check #ng_houjin,
#tokuyuchin_check #ng_miseinen,
#tokuyuchin_check #ng_house,
#tokuyuchin_check #ng_double {
background:#ffbd80;
color:#330000;
border-radius:5px;
padding:20px 20px 0 20px;
margin:0 0 10px;
text-align:center !important;
font-weight:bold;
display:none;
}	

#tokuyuchin_check #ok {
background:#ffbd80;
color:#330000;
border-radius:5px;
padding:20px;
margin:0 0 10px;
text-align:center !important;
font-weight:bold;
display:none;
}	

#tokuyuchin_check .tokuyuchin_check_box .btn {
padding:20px 0 5px 0;
text-align:center !important;
}

#tokuyuchin_check .tokuyuchin_check_box .inner2 {
padding:20px 0 5px 0;
text-align:center !important;
}

#tokuyuchin_check .tokuyuchin_check_box .btn a {
width:200px;
text-align:center;
display:inline-block;
margin:0 10px 20px;
}

a.white_button {
display:inline-block;
background:#ffebeb;
border-radius:3px;
box-shadow:0 1px 1px rgba(0,0,0,0.5);
font-size:13px;
line-height:1;
padding:6px 10px 4px 15px;
color:#333;
-webkit-transition: all 0.3s;
-moz-transition: all 0.3s;
transition: all 0.3s;
}

a.white_button:hover {
background:#ffebeb;
color:#333;
text-decoration:none;
}

a.white_button2 {
display:inline-block;
background:#ffebeb;
border-radius:3px;
box-shadow:0 1px 1px rgba(0,0,0,0.5);
font-size:13px;
line-height:1;
padding:16px 15px 14px 15px;
color:#333;
-webkit-transition: all 0.3s;
-moz-transition: all 0.3s;
transition: all 0.3s;
}

a.white_button2:hover {
background:#ffebeb;
color:#333;
text-decoration:none;
}

a.white_button2.checked {
background:#ffebeb;
color:#333;
text-decoration:none;
}

img {
	max-width: 100%;
	height: auto;
}

.search-map {
  position: relative;
  width: 654px;
  height: 480px;
  margin-right: auto;
  margin-bottom: 30px;
  margin-left: auto;
  border: 1px solid #e0e0e0;
}

@media screen and (max-width: 959px) {
  .search-map {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
        flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    justify-content: space-between;
    width: 86.66667vw;
    height: auto;
    margin-bottom: 0;
    padding-top: 66.66667vw;
    border: none;

    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
  }
}

.search-map .button {
  position: absolute;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  align-items: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  height: 36px;
  padding-right: 30px;
  padding-left: 15px;
  color: #555;
  line-height: 40px;
  border-width: 2px;
  border-style: solid;
  border-radius: 18px;
  background-color: #fff;
}

@media screen and (max-width: 959px) {
  .search-map .button {
    position: relative;
    top: auto !important;
    right: auto !important;
    left: auto !important;
    width: calc(50% - .66667vw);
    height: 13.33333vw;
    margin-top: 1.86667vw;
    border: none;
    border-radius: 4px;
    -webkit-box-shadow: 0 2px 0 #d6d6d6;
            box-shadow: 0 2px 0 #d6d6d6;
  }
  .search-map .button:first-of-type, .search-map .button:nth-of-type(2) {
    margin-top: 0;
  }
}

.search-map .button:before {
  position: absolute;
  top: calc(50% - 4px);
  right: 13px;
  content: "";
  width: 7px;
  height: 7px;
  border-width: 1px 1px 0 0;
  border-style: solid;
  border-color: #000;
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
}
.search-map.-yokohama {
  background: url(/wp/wp-content/themes/royal_new_theme/assets/images/pages/search/map-yokohama.png) no-repeat left top;
}

@media screen and (max-width: 959px) {
  .search-map.-yokohama {
    background-image: url(/wp/wp-content/themes/royal_new_theme/assets/images/pages/search/map-yokohama--md.png);
    background-size: 86.66667vw auto;
  }
}

.search-map.-yokohama .button {
  border-color: #90dce0;
}

.search-map.-yokohama .button:before {
  border-color: #4ec6d1;
}

@media screen and (max-width: 959px) {
  .search-map.-yokohama .button:before {
    border-color: #333;
  }
}

@media screen and (min-width: 960px) {
  .search-map.-yokohama .button:hover {
    border-color: #fff;
    background-color: #90dce0;
  }
  .search-map.-yokohama .button:hover:before {
    border-color: #fff;
  }
}

.search-map.-yokohama .button.-aoba {
  top: 55px;
  left: 120px;
}

.search-map.-yokohama .button.-midori {
  top: 120px;
  left: 145px;
}

.search-map.-yokohama .button.-seya {
  top: 195px;
  left: 80px;
}

.search-map.-yokohama .button.-izumi {
  top: 280px;
  left: 105px;
}

.search-map.-yokohama .button.-tsuduki {
  top: 85px;
  left: 230px;
}

.search-map.-yokohama .button.-asahi {
  top: 175px;
  left: 190px;
}

.search-map.-yokohama .button.-hoshigaya {
  top: 230px;
  left: 205px;
}

.search-map.-yokohama .button.-totsuka {
  top: 300px;
  left: 195px;
}

.search-map.-yokohama .button.-konan {
  top: 340px;
  left: 250px;
}

.search-map.-yokohama .button.-sakae {
  top: 390px;
  left: 220px;
}

.search-map.-yokohama .button.-kohoku {
  top: 80px;
  left: 340px;
}

.search-map.-yokohama .button.-kanagawa {
  top: 170px;
  left: 295px;
}

.search-map.-yokohama .button.-nihsi {
  top: 220px;
  left: 350px;
}

.search-map.-yokohama .button.-minami {
  top: 275px;
  left: 300px;
}

.search-map.-yokohama .button.-isogo {
  top: 330px;
  left: 350px;
}

.search-map.-yokohama .button.-kanazawa {
  top: 405px;
  left: 340px;
}

.search-map.-yokohama .button.-tsurumi {
  top: 135px;
  left: 415px;
}

.search-map.-yokohama .button.-naka {
  top: 265px;
  left: 395px;
}

.search-map.-kawasaki {
  background: url(/wp/wp-content/themes/royal_new_theme/assets/images/pages/search/map-kawasaki.png) no-repeat left top;
}

@media screen and (max-width: 959px) {
  .search-map.-kawasaki {
    background-image: url(/wp/wp-content/themes/royal_new_theme/assets/images/pages/search/map-kawasaki--md.png);
    background-size: 86.66667vw auto;
  }
}

.search-map.-kawasaki .button {
  border-color: #e7d2f3;
}

.search-map.-kawasaki .button:before {
  border-color: #e7d2f3;
}

@media screen and (max-width: 959px) {
  .search-map.-kawasaki .button:before {
    border-color: #333;
  }
}

@media screen and (min-width: 960px) {
  .search-map.-kawasaki .button:hover {
    border-color: #fff;
    background-color: #e7d2f3;
  }
  .search-map.-kawasaki .button:hover:before {
    border-color: #fff;
  }
}

.search-map.-kawasaki .button.-asao {
  top: 173px;
  left: 90px;
}

.search-map.-kawasaki .button.-tama {
  top: 122px;
  left: 222px;
}

.search-map.-kawasaki .button.-miyamae {
  top: 215px;
  left: 207px;
}

.search-map.-kawasaki .button.-takatsu {
  top: 162px;
  left: 312px;
}

.search-map.-kawasaki .button.-nakahara {
  top: 210px;
  left: 382px;
}

.search-map.-kawasaki .button.-saiwai {
  top: 276px;
  left: 346px;
}

.search-map.-kawasaki .button.-kawasakiku {
  top: 305px;
  left: 472px;
}

.kawasaki .about-checkbox .head {
  padding: 5px 0;
  color: #fff;
  font-size: 18px;
  text-align: center;
  background-color: #ae77d1;
}
.kawasaki .about-checkbox {
  margin-top: 5px;
  margin-bottom: 25px;
  border: 1px solid #e0e0e0;
  background: url(/wp/wp-content/themes/royal_new_theme/assets/images/common/bg-lattice.png) repeat;
}
.kawasaki .head-number::before {
  content: counter(number);
  width: 26px;
  margin-right: 10px;
  color: #fff;
  text-align: center;
  line-height: 26px;
  border-radius: 50%;
  background-color: #ae77d1;
  -ms-flex-negative: 0;
  flex-shrink: 0;
}
.kawasaki .head-number {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  align-items: flex-start;
  -webkit-box-align: start;
  -ms-flex-align: start;
  counter-increment: number;
  flex-wrap: wrap;
}
.kawasaki .about-checkbox .detail {
  padding: 30px;
}
.kawasaki .detail-text {
  margin-bottom: 1em;
}
.kawasaki .head-number p {
  font-weight: bold;
  display: inline-block;
  max-width: 600px;
}
.kawasaki .about-checkbox .child + .child {
  margin-top: 10px;
}
.kawasaki .heading-secondary {
  border-bottom: 3px solid #ae77d1;
}

.public-item.-kawasaki .catch {
  color: #ae77d1;
}
.public-item.-kawasaki .public-cost-box .sum {
  color: #ae77d1;
  background-color: #fbf5ff;
}
.public-item.-kawasaki .public-cost-box .label {
  background-color: #ae77d1;
}
.public-item.-kawasaki .public-item-hero {
justify-content: flex-end;
background-image: url(/wp/wp-content/themes/royal_new_theme/assets/images/pages/about/public-ph_3.jpg);
-webkit-box-pack: end;
-ms-flex-pack: end;
}
.public-item.-kawasaki .public-item-hero .label {
  color: #ae77d1;
}

.button-primary {
  display: block;
}
.button-primary.-kawasaki {
  background-color: #ae77d1;
}