

/*====================================================
////id |  overview
====================================================*/
#overview {
  overflow: hidden;
}
#overview::before {
  background: url('../img/top/top-circle-deco-g.webp') no-repeat center / contain;
  content: '';
  display: block;
  margin: auto;
  opacity: .8;
  position: absolute;
    top: 0;
    left: 55%;
  width: min(70vw, 700px);
  height: min(70vw, 700px);
  z-index: -1;
}
#overview::after {
  background: url('../img/top/top-circle-deco-o.webp') no-repeat center / contain;
  content: '';
  display: block;
  margin: auto;
  position: absolute;
    top: 15%;
    right: calc(50% + min(20vw, 300px));
    bottom: 0;
  width: min(50vw, 600px);
  height: min(50vw, 600px);
  z-index: -1;
}
.overview-head {
  font-size: min(5.866vw, 3rem);
  margin-bottom: 1.2em;
  text-align: center;
}
.overview-img {
  margin-top: min(8.5vw, 60px);
}
.overview-img .coverImg {
  border-radius: 15px;
  padding-top: min(40vw, 500px);
}

/* ////////// mobile ////////// */
@media screen and (max-width: 769.0px) {}

/* ////////// PC ////////// */
@media print,screen and (min-width: 769.1px) {
  .overview-text {
    text-align: center;
  }
}

@media (hover: hover) {}


/*====================================================
////id |  trouble
====================================================*/
.trouble-head {
  font-size: min(5.866vw, 3rem);
  margin-bottom: 1em;
  text-align: center;
}
.trouble-text {
  text-align: center;
}
.trouble-items {
  display: flex;
    flex-wrap: wrap;
    gap: min(2vw, 20px);
    justify-content: center;
  margin-top: min(10vw, 60px);
}
.trouble-item {
  background: #fff;
  border-radius: 15px;
  overflow: hidden;
  padding: min(6.4vw, 32px) min(3vw, 24px);
  text-align: center;
  width: min(calc(50% - min(1vw, 10px)), 300px);
}
.trouble-item .img {
  margin: auto;
  width: 60%;
}
.trouble-item .img .coverImg {
  border-radius: 100%;
  padding-top: 100%;
}
.trouble-item .text {
  margin-top: 1em;
  line-height: 1.4;
}
/* ////////// mobile ////////// */
@media screen and (max-width: 769.0px) {
}

/* ////////// PC ////////// */
@media print,screen and (min-width: 769.1px) {
  .trouble-item .text {
    display: flex;
      align-items: center;
      justify-content: center;
    font-size: min(3.7333vw, 1.8rem);
    min-height: 3em;
  }

}

@media (hover: hover) {}


/*====================================================
////id |  xxx
====================================================*/

.trouble-link_area {
  overflow: hidden;
}
.trouble-link_area-inner {
  padding: min(8.533vw, 88px) 0;
}
.trouble-link_area-content {
  background: var(--color_3);
  border-radius: min(4vw, 40px);
  padding: min(10.66vw, 72px) min(6.66vw, 40px);
  position: relative;
}
.trouble-link_area-text {
  color: #fff;
  display: flex;
    justify-content: center;
  line-height: 1.4;
  margin-bottom: min(6.4vw, 40px);
  text-align: center;
  padding-bottom: min(5.4vw, 42px);
  position: relative;
}
.trouble-link_area-text::after {
  background: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" version="1.1" viewBox="0 0 75 6"><path fill="%23ffffff" d="M.89,2.21c1.8-.04,3.53-.38,5.29-.61C11.43.86,16.73.43,22.03.18c5.95-.22,22.4-.72,27.03,2.23,1.23.84.48,2.68-.63,3.3-.93.45-2.14.4-2.88-.37-.4-.45-.29-1.14-.03-1.6.42-.9,1.36-1.44,2.26-1.68,5.17-1.45,10.58-1.3,15.88-1.04,1.77.1,3.53.23,5.29.39,1.78.12,3.51.51,5.3.35.1-.01.2,0,.3.03s.18.09.25.16c.07.07.12.16.16.26s.04.2.03.3c-.01.1-.05.2-.1.28-.06.08-.13.16-.22.21-.09.05-.18.08-.29.09-.1,0-.2,0-.3-.04-1.68-.61-3.46-.62-5.21-.84-3.5-.34-7.01-.58-10.52-.61-2.63,0-5.25.04-7.84.55-.86.16-1.73.32-2.55.56-.8.21-1.51.59-1.87,1.34-.14.29-.26.63-.04.88.44.48,1.49.52,2.05.2.55-.32,1.06-1.15.86-1.81-.21-.3-.5-.54-.84-.68-1.54-.71-3.32-.97-5.01-1.22-3.49-.42-7-.65-10.51-.66-7.04-.07-14.07.35-21.05,1.27-1.74.23-3.48.49-5.21.78-1.73.3-3.47.56-5.14,1.17-1.3.42-1.79-1.63-.34-1.77h0Z" /></svg>') no-repeat center bottom / contain;
  content: '';
  display: block;
  margin: auto;
  position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
  width: min(19vw, 125px);
  height: 10px;
}
.trouble-link_area-text p::before {
  background: url('../img/top/top-contact-deco.webp') no-repeat center bottom / contain;
  content: '';
  display: block;
  margin: auto;
  position: absolute;
  z-index: 5;
}

/* ////////// mobile ////////// */
@media screen and (max-width: 960.0px) {
  .trouble-link_area-text {
    font-size:min(4.8vw, 2.4rem);
  }
  .trouble-link_area-text p::before {
    left: calc(100% - 2.3em);
    bottom: calc(100% - 1.3em);
    width: min(26.4vw, 130px);
    height: min(22.66vw, 120px);
  }

}

/* ////////// PC ////////// */
@media print,screen and (min-width: 960.1px) {
  .trouble-link_area-text {
    font-size: min(2.6vw, 2.6rem);
    font-weight: 700;
  }
  .trouble-link_area-text p {
    position: relative;
  }
  .trouble-link_area-text p::before {
    right: 100%;
    bottom: -.2em;
    width: 160px;
    height: 145px;
  }
}

@media (hover: hover) {}


/*====================================================
////id |  bringing
====================================================*/
#bringing {
  background: var(--color_5);
}
.bringing-head {
  font-size: min(5.866vw, 3rem);
  margin-bottom: 1em;
  text-align: center;
}
.bringing-items {
  display: grid;
    grid-gap: min(3vw, 30px);
}
.bringing-item {
  border-radius: 15px;
  background: #fff;
  padding: min(10vw, 42px) min(5vw, 80px);
}
.bringing-item-head {
  display: flex;
    align-items: center;
    gap: .4em;
  font-size: min(5.333vw, 2.2rem);
  font-weight: 700;
}
.bringing-item-head .no {
  background: var(--color_1);
  border-radius: 5px;
  color: #fff;
  display: flex;
    align-items: center;
    justify-content: center;
  font-size: .82em;
  font-weight: 500;
  width: 1.777em;
  height: 2.333em;
}
.bringing-item-text {
  margin-top: 1.2em;
}
.bringing-details {
  display: grid;
    grid-gap: 15px 10px;
  margin-top: min(5vw, 24px);
}
.bringing-detail {
  border: solid 1px var(--color_3);
  border-radius: 10px;
  padding: min(6.4vw, 24px) min(5vw, 32px);
}
.bringing-detail dt .text {
  border-bottom: solid 1px var(--color_1);
  display: inline-block;
  font-size: 1.2em;
  margin-bottom: .4em;
  padding-bottom: .3em;
}
.bringing-detail .price {
  background: var(--color_3);
  border-radius: 2em;
  color: #fff;
  display: flex;
    align-items: center;
    justify-content: center;
    gap: .5em;
  font-size: min(4.8vw, 2.0rem);
  margin-top: 15px;
  min-height: 2.5em;
}
.bringing-detail .price_text {
  background: #fff;
  color: var(--red);
  font-size: .85em;
  font-weight: 700;
  line-height: 1;
  padding: .3em .8em;
}
.bringing-detail .price_no .no {
  display: inline-block;
  font-size: 1.4em;
  line-height: 1;
}
.bringing-item .attentionMark {
  font-size: min(3.2vw, 1.4rem);
  margin-top: .8em;
}
.bringing-text {
  font-size: min(3.733vw, 2.0rem);
  margin-top: min(8vw, 32px);
  text-align: center;
}
/* ////////// mobile ////////// */
@media screen and (max-width: 769.0px) {}

/* ////////// PC ////////// */
@media print,screen and (min-width: 769.1px) {
  .bringing-item {
    padding: min(10vw, 42px) min(3vw, 80px);
  }
  .bringing-details.horizontal {
    grid-template-columns: 1fr 1fr;
  }
  .bringing-detail {
    padding: min(6.4vw, 24px) min(2vw, 32px);
  }
  .bringing-detail .price {
    font-size: min(2vw, 2rem);
  }

}
@media print,screen and (min-width: 1120.1px) {
  .bringing-item {
    padding: min(10vw, 42px) 100px;
  }
}

@media (hover: hover) {}


/*====================================================
////id |  xxx
====================================================*/

/* ////////// mobile ////////// */
@media screen and (max-width: 769.0px) {}

/* ////////// PC ////////// */
@media print,screen and (min-width: 769.1px) {}

@media (hover: hover) {}
