@charset "UTF-8";
/*	cmn-color
------------------------------------ */
/*	transition,hover
------------------------------------ */
/*	media-screen
------------------------------------ */
/*	font
------------------------------------ */
@font-face {
  font-family: "ZenKakuGothicNew-Regular";
  src: url("../fonts/ZenKakuGothicNew-Regular.ttf");
  font-display: swap;
}
@font-face {
  font-family: "ZenKakuGothicNew-Medium";
  src: url("../fonts/ZenKakuGothicNew-Medium.ttf");
  font-display: swap;
}
@font-face {
  font-family: "ZenMaruGothic-Regular";
  src: url("../fonts/ZenMaruGothic-Regular.ttf");
  font-display: swap;
}
@font-face {
  font-family: "ZenMaruGothic-Medium";
  src: url("../fonts/ZenMaruGothic-Medium.ttf");
  font-display: swap;
}
@font-face {
  font-family: "ZenMaruGothic-Bold";
  src: url("../fonts/ZenMaruGothic-Bold.ttf");
  font-display: swap;
}
@font-face {
  font-family: "Outfit-Regular";
  src: url("../fonts/Outfit-Regular.ttf");
  font-display: swap;
}
@font-face {
  font-family: "Outfit-Medium";
  src: url("../fonts/Outfit-Medium.ttf");
  font-display: swap;
}
@font-face {
  font-family: "Poppins-Regular";
  src: url("../fonts/Poppins-Regular.ttf");
  font-display: swap;
}
@font-face {
  font-family: "NotoSansCJKjp-Medium";
  src: url("../fonts/NotoSansCJKjp-Medium.otf");
  font-display: swap;
}
/*	layout
------------------------------------ */
/*	font-size  cmn
------------------------------------ */
/*	com parts  PC
------------------------------------ */
.sns-none {
  display: none !important;
}

.over {
  overflow: hidden;
}

.com-ib {
  display: inline-block;
}

.spxs-only {
  display: none;
}
@media screen and (max-width: 390px) {
  .spxs-only {
    display: inherit;
  }
}

.f26 {
  font-size: 3rem;
}
@media screen and (max-width: 768px) {
  .f26 {
    font-size: 1.5rem;
  }
}

.pre {
  white-space: pre-line;
}

.nowrap {
  white-space: nowrap;
}

@media screen and (min-width: 768px) {
  .nowrap {
    white-space: nowrap;
  }
}
.no-sb {
  margin: 50px auto 0;
}

.com-txt-box p:nth-of-type(n+2) {
  margin: 28px 0 0;
}
.com-txt .ac {
  font-family: "ZenMaruGothic-Bold", sans-serif;
  font-size: 1.9rem;
  letter-spacing: 0.1em;
  color: #ff7800;
  line-height: 1.5;
}
@media screen and (max-width: 768px) {
  .com-txt .ac {
    font-size: 1.5rem;
  }
}

.clamp1 {
  overflow: hidden;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 1;
}

.clamp2 {
  overflow: hidden;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}

.clamp3 {
  overflow: hidden;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
}

@media screen and (min-width: 768px) {
  .com-pd {
    padding: 130px 0 140px;
  }
}

/*  共通パーツ
------------------------------------ */
.com-bg01 {
  background: url(../img/top/com-bg.png) no-repeat center bottom/cover;
}
.com-bg02 {
  background: url(../img/top/about-bg.png) no-repeat center bottom;
}
@media screen and (min-width: 1921px) {
  .com-bg02 {
    background-size: 100%;
  }
}
.com-bg03 {
  background: url(../img/reboha/com-bg-l.png) no-repeat calc(50% - 683px) top, url(../img/reboha/com-bg-r.png) no-repeat calc(50% + 605px) bottom, url(../img/reboha/com-bg-b.png) no-repeat center bottom;
}
@media screen and (min-width: 1921px) {
  .com-bg03 {
    background-position: left top, right bottom, center bottom;
    background-size: auto, auto, 100% auto;
  }
}
.com-bg04 {
  background: url(../img/reboha/com-bg04-bottom.png) no-repeat center bottom;
}
@media screen and (min-width: 1921px) {
  .com-bg04 {
    background-size: 100%;
  }
}
.com-bg05 {
  background: url(../img/reboha/com-bg05-wave.png) no-repeat center bottom, url(../img/reboha/com-bg05-bottom.png) no-repeat center bottom, url(../img/reboha/com-bg05.png);
}
@media screen and (min-width: 1921px) {
  .com-bg05 {
    background-size: 100%, 100%, cover;
  }
}

.com-box01 {
  border-radius: 100px;
  background: url(../img/ptn/ptn01.jpg);
}
.com-box02 {
  padding: 36px 0 30px;
  background: #fff;
  border-radius: 10px;
  box-shadow: 0px 0px 30px 0px rgba(53, 53, 53, 0.15);
}
.com-box03 {
  border-radius: 20px;
  background: #fff;
  box-shadow: 0px 0px 30px 0px rgba(53, 53, 53, 0.15);
}
.com-box03-ttl {
  padding: 16px;
  border-radius: 20px 20px 0 0;
  font-size: 2.8rem;
  letter-spacing: 0.05em;
  font-family: "ZenMaruGothic-Bold", sans-serif;
}
@media screen and (max-width: 768px) {
  .com-box03-ttl {
    font-size: 1.5rem;
  }
}
.com-box03-con {
  padding: 25px;
}

.com-tel {
  line-height: 1;
}
.com-tel-link {
  color: #023859;
  font-family: "Outfit-Medium", sans-serif;
  font-size: 2.6rem;
  letter-spacing: 0.05em;
}
@media screen and (max-width: 768px) {
  .com-tel-link {
    font-size: 1.5rem;
  }
}
.com-tel-link .num {
  font-family: "Outfit-Regular", sans-serif;
  font-size: 3.2rem;
  letter-spacing: 0.03em;
}
@media screen and (max-width: 768px) {
  .com-tel-link .num {
    font-size: 1.6rem;
  }
}
.com-tel-note {
  display: block;
  margin-top: 6px;
}

.news-post {
  width: 100%;
}
.news-post-item {
  width: 100%;
  max-width: 320px;
}
@media screen and (min-width: 768px) {
  .news-post-item:not(:nth-of-type(3n-2)) {
    margin-left: 60px;
  }
  .news-post-item:nth-of-type(n+4) {
    margin-top: 60px;
  }
}
.news-post-link {
  display: block;
}
.news-post-img {
  width: 100%;
  height: 0;
  padding-top: 66.25%;
  position: relative;
}
.news-post-img img {
  border-radius: 30px 10px 30px 10px;
  box-shadow: 0px 0px 30px 0px rgba(53, 53, 53, 0.15);
}
.news-post-tag {
  display: flex;
  margin-top: 15px;
  flex-wrap: wrap;
  line-height: 1;
}
.news-post-tag-txt {
  margin: 0 7px 7px 0;
  padding: 3px 14px;
  background: #01579b;
  border-radius: 999px;
  font-family: "ZenMaruGothic-Medium", sans-serif;
  color: #fff;
  font-size: 1.2rem;
  letter-spacing: 0.05em;
  line-height: 1.2;
}
@media screen and (max-width: 768px) {
  .news-post-tag-txt {
    font-size: 1.5rem;
  }
}
.news-post-ttl {
  font-family: "ZenMaruGothic-Medium", sans-serif;
  font-size: 1.6rem;
  letter-spacing: 0.12em;
  line-height: 1.25;
}
@media screen and (max-width: 768px) {
  .news-post-ttl {
    font-size: 1.5rem;
  }
}
.news-post-time {
  display: block;
  margin-top: 12px;
  text-align: right;
  font-family: "ZenKakuGothicNew-Regular", sans-serif;
  font-size: 1.5rem;
  letter-spacing: 0.12em;
  line-height: 1;
}
@media screen and (max-width: 768px) {
  .news-post-time {
    font-size: 1.5rem;
  }
}

.com-tag {
  display: flex;
  width: 100%;
  flex-wrap: wrap;
}
.com-tag-item {
  width: 100%;
  max-width: 250px;
}
@media screen and (min-width: 768px) {
  .com-tag-item:not(:nth-of-type(4n-3)) {
    margin-left: 26px;
  }
  .com-tag-item:nth-of-type(n+5) {
    margin-top: 26px;
  }
}
.com-tag-link {
  display: block;
  padding: 18px 35px;
  background: url(../img/price/arw.png) no-repeat calc(100% - 20px) center #01579b;
  border-radius: 30px;
  text-align: center;
  font-family: "ZenMaruGothic-Medium", sans-serif;
  font-size: 1.6rem;
  color: #fff;
  letter-spacing: 0;
  line-height: 1.6;
}
@media screen and (max-width: 768px) {
  .com-tag-link {
    font-size: 1.5rem;
  }
}

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

  main layout  all

========================================= */
/* modal  PC
------------------------------------ */
.modal-container {
  width: 100%;
  margin: auto;
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  text-align: center;
  background: rgba(0, 0, 0, 0.8);
  overflow: auto;
  opacity: 0;
  visibility: hidden;
  transition: 0.3s ease-out;
  z-index: 1000;
}
.modal-container.active {
  opacity: 1;
  visibility: visible;
}
.modal-body {
  margin: auto;
  max-width: 1160px;
  width: 90%;
  position: absolute;
  left: 0;
  right: 0;
  top: 50%;
  transform: translateY(-50%);
}
.modal-close {
  position: absolute;
  top: -20px;
  right: -20px;
  color: #fff;
  background: #01579b;
  border: none;
  padding: 0 5px;
  cursor: pointer;
  border-radius: 100px;
  width: 40px;
  height: 40px;
  font-size: 24px;
  line-height: 20px;
  font-weight: bold;
}
.modal-content {
  padding: 40px;
}

#chart .back_btn {
  margin: 32px auto 0;
  padding: 6px 0 13px 48px;
  border-radius: 0;
  background: url(../img/top/chart-back.png) no-repeat left top;
  border-bottom: 1px solid #cecece;
  font-family: "ZenMaruGothic-Medium", sans-serif;
  font-size: 1.5rem;
  letter-spacing: 0.15em;
  line-height: 1;
}
@media screen and (max-width: 768px) {
  #chart .back_btn {
    font-size: 1.5rem;
  }
}

.result_chart {
  padding: 59px 0 46px;
  border-radius: 70px;
  background: #fff;
}

.com_chart {
  padding: 98px 0;
  border-radius: 70px;
  background: #fff;
}
@media screen and (min-width: 768px) {
  .com_chart {
    min-height: 460px;
  }
}

.chart_start_window {
  min-height: 0;
  padding: 45px 0 56px;
  background: none !important;
}
.chart-txt {
  margin: 30px auto 0;
  font-size: 2rem;
}
@media screen and (max-width: 768px) {
  .chart-txt {
    font-size: 1.5rem;
  }
}
.chart_btn {
  max-width: 750px;
  margin: auto;
  padding: 17px 51px;
  border-radius: 999px;
  background-image: url(../img/top/chart-arw.png);
  font-size: 3rem;
}
@media screen and (max-width: 768px) {
  .chart_btn {
    font-size: 1.5rem;
  }
}
.chart_btn_list {
  display: flex;
  max-width: 990px;
  margin: 40px auto 0;
  text-align: center;
  justify-content: center;
  flex-wrap: wrap;
}
.chart_btn_list-item-lg {
  width: 100%;
  max-width: 750px !important;
}
.chart_btn_list li {
  width: 100%;
  max-width: 480px;
}
.chart_btn_list li:nth-of-type(2n) {
  margin-left: 30px;
}
.chart_btn_list li:nth-of-type(n+3) {
  margin-top: 30px;
}
.chart_btn-harf {
  width: 100%;
  max-width: 480px;
  background-size: 22px;
  padding-right: 42px;
  padding-left: 42px;
  font-size: 2.5rem;
}
@media screen and (max-width: 768px) {
  .chart_btn-harf {
    font-size: 1.5rem;
  }
}
.chart_title {
  max-width: 990px;
  margin: auto;
  padding: 10px 84px;
  position: relative;
  font-size: 3.5rem;
}
@media screen and (max-width: 768px) {
  .chart_title {
    font-size: 1.75rem;
  }
}
.chart_q {
  width: 60px;
  height: 60px;
  background: #fff;
  border-radius: 50%;
  text-align: center;
  font-family: "ZenMaruGothic-Bold", sans-serif;
  font-size: 4rem;
  letter-spacing: 0;
  line-height: 55px;
  color: #ffab40;
  position: absolute;
  left: 20px;
  top: 50%;
  transform: translateY(-50%);
}
@media screen and (max-width: 768px) {
  .chart_q {
    font-size: 2rem;
  }
}
.chart_side {
  position: absolute;
  right: 20px;
  bottom: 20px;
}

.result_contents {
  max-width: 990px;
  margin: auto;
}
.result_title {
  height: 80px;
  font-family: "ZenMaruGothic-Bold", sans-serif;
  font-size: 3.5rem;
  letter-spacing: 0.05em;
  position: relative;
  line-height: 80px;
}
@media screen and (max-width: 768px) {
  .result_title {
    font-size: 1.75rem;
  }
}
.result_title::before {
  content: "";
  width: 0;
  height: 0;
  margin: auto;
  border-style: solid;
  border-right: 11px solid transparent;
  border-left: 11px solid transparent;
  border-top: 11px solid #92bde3;
  border-bottom: 0;
  position: absolute;
  left: 0;
  right: 0;
  bottom: -11px;
}
.result_title-icon {
  display: block;
  width: 110px;
  height: 110px;
  padding-top: 15px;
  background: #ffab40;
  border-radius: 50%;
  text-align: center;
  font-family: "ZenMaruGothic-Bold", sans-serif;
  font-size: 3rem;
  letter-spacing: 0.15em;
  color: #fff;
  line-height: 1.1;
  position: absolute;
  top: -20px;
  left: 0;
}
@media screen and (max-width: 768px) {
  .result_title-icon {
    font-size: 1.5rem;
  }
}
.result_flx {
  margin: 38px auto 0;
}
.result_img {
  width: 100%;
  max-width: 460px;
}
.result_img img {
  border-radius: 30px 10px 30px 10px;
}
.result_con {
  width: 100%;
  max-width: 490px;
}
.result_con_name {
  padding: 18px;
  background-color: #01579b;
  border-radius: 20px;
  text-align: center;
  font-family: "ZenMaruGothic-Medium", sans-serif;
  font-size: 2.5rem;
  letter-spacing: 0.12em;
  color: #fff;
  line-height: 1.6;
}
@media screen and (max-width: 768px) {
  .result_con_name {
    font-size: 1.5rem;
  }
}
.result_con_txt {
  margin-top: 17px;
  text-align: left;
  font-family: "ZenMaruGothic-Medium", sans-serif;
  font-size: 1.8rem;
  letter-spacing: 0.12em;
  color: #023859;
}
@media screen and (max-width: 768px) {
  .result_con_txt {
    font-size: 1.5rem;
  }
}
.result_reserve {
  margin: 30px auto 0;
  background: none !important;
}
.result_reserve_ttl {
  height: 60px;
  border-radius: 20px;
  background: #86b6e0;
  text-align: center;
  font-family: "ZenMaruGothic-Medium", sans-serif;
  font-size: 2.5rem;
  color: #fff;
  letter-spacing: 0.12em;
  line-height: 60px;
}
@media screen and (max-width: 768px) {
  .result_reserve_ttl {
    font-size: 1.5rem;
  }
}
.result_contact_list {
  margin: 28px auto 0 !important;
}
.result_btn_back {
  margin: 37px auto 0;
}

/* com-sec  PC
------------------------------------ */
.com-sec .sec-box {
  padding: 70px 0 87px;
}
.com-sec .sec-flx {
  margin: 29px auto 0;
}
.com-sec .sec-cir {
  width: 320px;
  height: 320px;
  padding-top: 60px;
  background: url(../img/ptn/ptn02.jpg);
  text-align: center;
  border-radius: 50%;
}
.com-sec .sec-cir-txt {
  font-family: "ZenMaruGothic-Bold", sans-serif;
  font-size: 4rem;
  letter-spacing: 0.05em;
  color: #fff;
  line-height: 1.2;
}
@media screen and (max-width: 768px) {
  .com-sec .sec-cir-txt {
    font-size: 2rem;
  }
}
.com-sec .sec-cir-txt .lg {
  display: block;
  padding-bottom: 5px;
  font-size: 9rem;
  line-height: 1;
}
@media screen and (max-width: 768px) {
  .com-sec .sec-cir-txt .lg {
    font-size: 4.5rem;
  }
}
.com-sec .sec-cir-txt .md {
  font-size: 8rem;
}
@media screen and (max-width: 768px) {
  .com-sec .sec-cir-txt .md {
    font-size: 4rem;
  }
}
.com-sec .sec-con {
  margin-left: 50px;
}
.com-sec .sec-con-ttl {
  font-family: "ZenMaruGothic-Bold", sans-serif;
  font-size: 2.5rem;
  letter-spacing: 0.05em;
  color: #01579b;
}
@media screen and (max-width: 768px) {
  .com-sec .sec-con-ttl {
    font-size: 1.5rem;
  }
}
.com-sec .sec-con-lg {
  margin-top: 13px;
  font-family: "ZenMaruGothic-Bold", sans-serif;
  font-size: 5rem;
  letter-spacing: 0.12em;
  line-height: 1.3;
  color: #01579b;
}
@media screen and (max-width: 768px) {
  .com-sec .sec-con-lg {
    font-size: 2.5rem;
  }
}
.com-sec .sec-con-lg .sm {
  font-size: 3.2rem;
  letter-spacing: 0.12em;
}
@media screen and (max-width: 768px) {
  .com-sec .sec-con-lg .sm {
    font-size: 1.6rem;
  }
}
.com-sec .sec-con-lg .ac {
  background: linear-gradient(transparent 80%, #ffead0 80%);
  color: #ff7800;
}
.com-sec .sec-con-note {
  margin-top: 4px;
  font-family: "ZenMaruGothic-Bold", sans-serif;
  font-size: 2.8rem;
  letter-spacing: 0.05em;
  color: #01579b;
}
@media screen and (max-width: 768px) {
  .com-sec .sec-con-note {
    font-size: 1.5rem;
  }
}
.com-sec .sec-con-txt {
  margin-top: 30px;
  font-family: "ZenMaruGothic-Bold", sans-serif;
  font-size: 1.7rem;
  letter-spacing: 0.1em;
  color: #023859;
  line-height: 1.5;
}
@media screen and (max-width: 768px) {
  .com-sec .sec-con-txt {
    font-size: 1.5rem;
  }
}

/* top-worries  PC
------------------------------------ */
#top-worries .worries-ttl {
  display: flex;
  font-family: "ZenMaruGothic-Bold", sans-serif;
  font-size: 5rem;
  letter-spacing: 0.05em;
  color: #01579b;
  align-items: center;
  line-height: 1.8;
  text-shadow: rgb(255, 255, 255) 8px 0px 0px, rgb(255, 255, 255) 7.93758px 0.997398px 0px, rgb(255, 255, 255) 7.7513px 1.97923px 0px, rgb(255, 255, 255) 7.44406px 2.93018px 0px, rgb(255, 255, 255) 7.02066px 3.8354px 0px, rgb(255, 255, 255) 6.4877px 4.68078px 0px, rgb(255, 255, 255) 5.85351px 5.45311px 0px, rgb(255, 255, 255) 5.12797px 6.14035px 0px, rgb(255, 255, 255) 4.32242px 6.73177px 0px, rgb(255, 255, 255) 3.44941px 7.21814px 0px, rgb(255, 255, 255) 2.52258px 7.59188px 0px, rgb(255, 255, 255) 1.55638px 7.84714px 0px, rgb(255, 255, 255) 0.565898px 7.97996px 0px, rgb(255, 255, 255) -0.433417px 7.98825px 0px, rgb(255, 255, 255) -1.42597px 7.87189px 0px, rgb(255, 255, 255) -2.39627px 7.63269px 0px, rgb(255, 255, 255) -3.32917px 7.27438px 0px, rgb(255, 255, 255) -4.21013px 6.80256px 0px, rgb(255, 255, 255) -5.02539px 6.22459px 0px, rgb(255, 255, 255) -5.76223px 5.54948px 0px, rgb(255, 255, 255) -6.40915px 4.78778px 0px, rgb(255, 255, 255) -6.95606px 3.95136px 0px, rgb(255, 255, 255) -7.39442px 3.05329px 0px, rgb(255, 255, 255) -7.71739px 2.10757px 0px, rgb(255, 255, 255) -7.91994px 1.12896px 0px, rgb(255, 255, 255) -7.9989px 0.132735px 0px, rgb(255, 255, 255) -7.95304px -0.865561px 0px, rgb(255, 255, 255) -7.78307px -1.85035px 0px, rgb(255, 255, 255) -7.49165px -2.80627px 0px, rgb(255, 255, 255) -7.08333px -3.71839px 0px, rgb(255, 255, 255) -6.56448px -4.57249px 0px, rgb(255, 255, 255) -5.94318px -5.35524px 0px, rgb(255, 255, 255) -5.22915px -6.05442px 0px, rgb(255, 255, 255) -4.43352px -6.65912px 0px, rgb(255, 255, 255) -3.5687px -7.15991px 0px, rgb(255, 255, 255) -2.6482px -7.54898px 0px, rgb(255, 255, 255) -1.68637px -7.82024px 0px, rgb(255, 255, 255) -0.698222px -7.96947px 0px, rgb(255, 255, 255) 0.300817px -7.99434px 0px, rgb(255, 255, 255) 1.29516px -7.89446px 0px, rgb(255, 255, 255) 2.2693px -7.67139px 0px, rgb(255, 255, 255) 3.20802px -7.32862px 0px, rgb(255, 255, 255) 4.09668px -6.87148px 0px, rgb(255, 255, 255) 4.92142px -6.30711px 0px, rgb(255, 255, 255) 5.66936px -5.64432px 0px, rgb(255, 255, 255) 6.32883px -4.89346px 0px, rgb(255, 255, 255) 6.88954px -4.06623px 0px, rgb(255, 255, 255) 7.34274px -3.17555px 0px, rgb(255, 255, 255) 7.68136px -2.23532px 0px, rgb(255, 255, 255) 7.90012px -1.26021px 0px, rgb(255, 255, 255) 7.9956px -0.265434px 0px;
  position: relative;
  z-index: 1;
}
@media screen and (max-width: 768px) {
  #top-worries .worries-ttl {
    font-size: 2.5rem;
  }
}
#top-worries .worries-ttl::before {
  content: "";
  width: 100%;
  height: 30px;
  margin: auto;
  background: rgba(134, 182, 224, 0.2);
  border-radius: 5px;
  position: absolute;
  left: 0;
  right: 0;
  bottom: 30px;
  z-index: -1;
}
#top-worries .worries-ttl .fuki {
  margin: 0 11px;
}
#top-worries .worries-ttl .dot {
  background: url(../img/top/worries-ttl-dot.png) no-repeat 17px top;
}
#top-worries .worries-list {
  display: flex;
  margin: 40px auto 0;
  justify-content: space-between;
  flex-wrap: wrap;
}
#top-worries .worries-list-item {
  width: 100%;
}
@media screen and (min-width: 768px) {
  #top-worries .worries-list-item {
    max-width: 520px;
  }
  #top-worries .worries-list-item:nth-of-type(n+3) {
    margin-top: 43px;
  }
}
#top-worries .worries-list-ttl {
  width: 100%;
  height: 120px;
  padding-top: 68px;
  text-align: center;
  font-family: "ZenMaruGothic-Bold", sans-serif;
  font-size: 2.4rem;
  letter-spacing: 0.05em;
  color: #fff;
}
@media screen and (max-width: 768px) {
  #top-worries .worries-list-ttl {
    font-size: 1.5rem;
  }
}
#top-worries .worries-list-ttl01 {
  background: url(../img/top/worries-ico01.png) no-repeat center 16px, url(../img/top/worries-list-ttl.png) no-repeat center bottom;
}
#top-worries .worries-list-ttl02 {
  background: url(../img/top/worries-ico02.png) no-repeat center 13px, url(../img/top/worries-list-ttl.png) no-repeat center bottom;
}
#top-worries .worries-list-ttl03 {
  background: url(../img/top/worries-ico03.png) no-repeat center 12px, url(../img/top/worries-list-ttl.png) no-repeat center bottom;
}
#top-worries .worries-list-ttl04 {
  background: url(../img/top/worries-ico04.png) no-repeat center 14px, url(../img/top/worries-list-ttl.png) no-repeat center bottom;
}
#top-worries .worries-list-con {
  padding: 10px 28px;
  background: #fff;
  border-radius: 0 0 20px 20px;
  box-shadow: 0px 0px 30px 0px rgba(53, 53, 53, 0.15);
  position: relative;
}
@media screen and (min-width: 768px) {
  #top-worries .worries-list-con {
    height: 310px;
  }
}
#top-worries .worries-list-con::before {
  content: "";
  position: absolute;
}
#top-worries .worries-list-con01::before {
  width: 177px;
  height: 159px;
  background: url(../img/top/worries-bg01.png) no-repeat center/contain;
  right: 0;
  bottom: 0;
}
#top-worries .worries-list-con02::before {
  width: 133px;
  height: 159px;
  background: url(../img/top/worries-bg02.png) no-repeat center/contain;
  right: 21px;
  bottom: 0;
}
#top-worries .worries-list-con03::before {
  width: 119px;
  height: 180px;
  background: url(../img/top/worries-bg03.png) no-repeat center/contain;
  right: 20px;
  bottom: 0;
}
#top-worries .worries-list-con04::before {
  width: 106px;
  height: 165px;
  background: url(../img/top/worries-bg04.png) no-repeat center/contain;
  right: 11px;
  bottom: 0;
}
#top-worries .worries-list-check {
  font-family: "ZenMaruGothic-Medium", sans-serif;
  font-size: 1.9rem;
  letter-spacing: 0.03em;
  color: #023859;
  line-height: 1.36;
}
@media screen and (max-width: 768px) {
  #top-worries .worries-list-check {
    font-size: 1.5rem;
  }
}
#top-worries .worries-list-check li {
  padding: 17px 0 17px 33px;
  background: url(../img/top/worries-check.png) no-repeat left 18px;
}
#top-worries .worries-list-check li:nth-of-type(n+2) {
  border-top: 1px solid #cecece;
}
#top-worries .worries-list-check .ac {
  color: #ff7800;
  font-family: "ZenMaruGothic-Bold", sans-serif;
}
#top-worries .worries-list-check p {
  position: relative;
}

/* top-reboha  PC
------------------------------------ */
#top-reboha {
  background: url(../img/top/com-bg01-arw.png) no-repeat center top, url(../img/top/reboha-bottom.png) no-repeat center bottom;
}
@media screen and (min-width: 1921px) {
  #top-reboha {
    background-size: 100%;
  }
}
#top-reboha .reboha-ttl {
  margin: 48px auto 0;
}
#top-reboha .reboha-flx {
  margin: 48px auto 0;
}
#top-reboha .reboha-img img {
  border-radius: 40px 10px 40px 10px;
  box-shadow: 0px 0px 30px 0px rgba(53, 53, 53, 0.15);
}
#top-reboha .reboha-txt {
  font-family: "ZenMaruGothic-Bold", sans-serif;
  font-size: 1.7rem;
  letter-spacing: 0.1em;
}
@media screen and (max-width: 768px) {
  #top-reboha .reboha-txt {
    font-size: 1.5rem;
  }
}
#top-reboha .reboha-txt-box {
  width: 100%;
}
@media screen and (min-width: 768px) {
  #top-reboha .reboha-txt-box {
    max-width: 520px;
  }
}

/* top-about  PC
------------------------------------ */
#top-about .com-ttl01 .ja {
  text-shadow: rgb(255, 255, 255) 8px 0px 0px, rgb(255, 255, 255) 7.93758px 0.997398px 0px, rgb(255, 255, 255) 7.7513px 1.97923px 0px, rgb(255, 255, 255) 7.44406px 2.93018px 0px, rgb(255, 255, 255) 7.02066px 3.8354px 0px, rgb(255, 255, 255) 6.4877px 4.68078px 0px, rgb(255, 255, 255) 5.85351px 5.45311px 0px, rgb(255, 255, 255) 5.12797px 6.14035px 0px, rgb(255, 255, 255) 4.32242px 6.73177px 0px, rgb(255, 255, 255) 3.44941px 7.21814px 0px, rgb(255, 255, 255) 2.52258px 7.59188px 0px, rgb(255, 255, 255) 1.55638px 7.84714px 0px, rgb(255, 255, 255) 0.565898px 7.97996px 0px, rgb(255, 255, 255) -0.433417px 7.98825px 0px, rgb(255, 255, 255) -1.42597px 7.87189px 0px, rgb(255, 255, 255) -2.39627px 7.63269px 0px, rgb(255, 255, 255) -3.32917px 7.27438px 0px, rgb(255, 255, 255) -4.21013px 6.80256px 0px, rgb(255, 255, 255) -5.02539px 6.22459px 0px, rgb(255, 255, 255) -5.76223px 5.54948px 0px, rgb(255, 255, 255) -6.40915px 4.78778px 0px, rgb(255, 255, 255) -6.95606px 3.95136px 0px, rgb(255, 255, 255) -7.39442px 3.05329px 0px, rgb(255, 255, 255) -7.71739px 2.10757px 0px, rgb(255, 255, 255) -7.91994px 1.12896px 0px, rgb(255, 255, 255) -7.9989px 0.132735px 0px, rgb(255, 255, 255) -7.95304px -0.865561px 0px, rgb(255, 255, 255) -7.78307px -1.85035px 0px, rgb(255, 255, 255) -7.49165px -2.80627px 0px, rgb(255, 255, 255) -7.08333px -3.71839px 0px, rgb(255, 255, 255) -6.56448px -4.57249px 0px, rgb(255, 255, 255) -5.94318px -5.35524px 0px, rgb(255, 255, 255) -5.22915px -6.05442px 0px, rgb(255, 255, 255) -4.43352px -6.65912px 0px, rgb(255, 255, 255) -3.5687px -7.15991px 0px, rgb(255, 255, 255) -2.6482px -7.54898px 0px, rgb(255, 255, 255) -1.68637px -7.82024px 0px, rgb(255, 255, 255) -0.698222px -7.96947px 0px, rgb(255, 255, 255) 0.300817px -7.99434px 0px, rgb(255, 255, 255) 1.29516px -7.89446px 0px, rgb(255, 255, 255) 2.2693px -7.67139px 0px, rgb(255, 255, 255) 3.20802px -7.32862px 0px, rgb(255, 255, 255) 4.09668px -6.87148px 0px, rgb(255, 255, 255) 4.92142px -6.30711px 0px, rgb(255, 255, 255) 5.66936px -5.64432px 0px, rgb(255, 255, 255) 6.32883px -4.89346px 0px, rgb(255, 255, 255) 6.88954px -4.06623px 0px, rgb(255, 255, 255) 7.34274px -3.17555px 0px, rgb(255, 255, 255) 7.68136px -2.23532px 0px, rgb(255, 255, 255) 7.90012px -1.26021px 0px, rgb(255, 255, 255) 7.9956px -0.265434px 0px;
}
#top-about .about-list {
  margin: 43px auto 0;
}
#top-about .about-list-item {
  width: 100%;
  max-width: 320px;
}
@media screen and (min-width: 768px) {
  #top-about .about-list-item:not(:nth-of-type(3n-2)) {
    margin-left: 60px;
  }
  #top-about .about-list-item:nth-of-type(n+4) {
    margin-top: 32px;
  }
}
#top-about .about-list-num {
  width: 74px;
  height: 74px;
  background: url(../img/ptn/ptn02.jpg);
  border-radius: 50%;
  text-align: center;
  font-family: "Outfit-Regular", sans-serif;
  font-size: 3.6rem;
  letter-spacing: 0;
  color: #fff;
  line-height: 74px;
  position: relative;
}
@media screen and (max-width: 768px) {
  #top-about .about-list-num {
    font-size: 1.8rem;
  }
}
#top-about .about-list-img {
  margin: -44px auto 0;
}
#top-about .about-list-img img {
  border-radius: 30px 10px 30px 10px;
  box-shadow: 0px 0px 30px 0px rgba(53, 53, 53, 0.15);
}
#top-about .about-list-ttl {
  margin: 10px auto 0;
  font-family: "ZenMaruGothic-Medium", sans-serif;
  font-size: 2.4rem;
  letter-spacing: 0.08em;
  color: #023859;
  line-height: 1.28;
}
@media screen and (max-width: 768px) {
  #top-about .about-list-ttl {
    font-size: 1.5rem;
  }
}
#top-about .about-btn {
  margin: 60px auto 0;
}

/* top-bnr  PC
------------------------------------ */
#top-bnr .bnr-list-item {
  width: 100%;
  max-width: 490px;
}
#top-bnr .bnr-list-link {
  display: block;
}

/* top-news  PC
------------------------------------ */
#top-news {
  background: url(../img/top/news-wave.png) no-repeat center top #f2f9ff;
}
@media screen and (min-width: 1921px) {
  #top-news {
    background-size: 100%;
  }
}
#top-news .news-ttl {
  color: #01579b;
  font-family: "ZenMaruGothic-Bold", sans-serif;
  font-size: 5rem;
  letter-spacing: 0.05em;
}
@media screen and (max-width: 768px) {
  #top-news .news-ttl {
    font-size: 2.5rem;
  }
}
#top-news .news-btn {
  background: url(../img/top/news-arw.png) no-repeat right top;
  padding: 2px 44px 10px 0;
  border-bottom: 1px solid #aabfcd;
  font-family: "ZenMaruGothic-Medium", sans-serif;
  font-size: 1.5rem;
  letter-spacing: 0.1em;
  color: #023859;
}
@media screen and (max-width: 768px) {
  #top-news .news-btn {
    font-size: 1.5rem;
  }
}
#top-news .news-post {
  margin: 28px auto 0;
}

/* com-contact  PC
------------------------------------ */
.com-contact {
  background: #f2f9ff;
}
.com-contact .ja {
  text-shadow: none !important;
}
.com-contact .contact-box {
  padding: 82px 0 103px;
}
.com-contact .contact-txt {
  margin: 40px auto 0;
  text-align: center;
  font-family: "ZenMaruGothic-Medium", sans-serif;
  font-size: 1.8rem;
  letter-spacing: 0.1em;
  color: #023859;
}
@media screen and (max-width: 768px) {
  .com-contact .contact-txt {
    font-size: 1.5rem;
  }
}
.com-contact .contact-list {
  max-width: 1080px;
  margin: 45px auto 0;
}
.com-contact .contact-list-link {
  display: flex;
  width: 330px;
  height: 70px;
  background: #01579b;
  border-radius: 999px;
  font-family: "ZenMaruGothic-Medium", sans-serif;
  color: #fff;
  font-size: 2rem;
  letter-spacing: 0.05em;
  justify-content: center;
  align-items: center;
}
@media screen and (max-width: 768px) {
  .com-contact .contact-list-link {
    font-size: 1.5rem;
  }
}
.com-contact .contact-list-link::before {
  content: "";
}
.com-contact .contact-list-mail::before {
  width: 29px;
  height: 21px;
  margin-right: 15px;
  background: url(../img/top/info-contact.png) no-repeat center/contain;
}
.com-contact .contact-list-line::before {
  width: 30px;
  height: 30px;
  margin-right: 15px;
  background: url(../img/top/info-line.png) no-repeat center/contain;
}
.com-contact .com-tel-link {
  font-size: 3.2rem;
}
@media screen and (max-width: 768px) {
  .com-contact .com-tel-link {
    font-size: 1.6rem;
  }
}
.com-contact .com-tel-link .num {
  font-size: 3.8rem;
}
@media screen and (max-width: 768px) {
  .com-contact .com-tel-link .num {
    font-size: 1.9rem;
  }
}

.sub .com-contact .ja {
  font-size: 6rem;
}
@media screen and (max-width: 768px) {
  .sub .com-contact .ja {
    font-size: 3rem;
  }
}

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

  sub layout  all

========================================= */
/* reboha  PC
------------------------------------ */
#reboha .about-flx {
  margin: 10px auto 0;
}
@media screen and (min-width: 768px) {
  #reboha .about-img {
    position: relative;
    left: -25px;
  }
}
#reboha .about-txt {
  font-size: 1.7rem;
  letter-spacing: 0.1em;
}
@media screen and (max-width: 768px) {
  #reboha .about-txt {
    font-size: 1.5rem;
  }
}
@media screen and (min-width: 768px) {
  #reboha .about-txt-box {
    max-width: 520px;
    padding-top: 20px;
  }
}
#reboha .about-support {
  margin: 10px auto 0;
  text-align: center;
}
#reboha .about-support-ttl {
  max-width: 520px;
  margin: auto;
  font-size: 2.8rem;
  position: relative;
}
@media screen and (max-width: 768px) {
  #reboha .about-support-ttl {
    font-size: 1.5rem;
  }
}
#reboha .about-support-txt {
  max-width: 800px;
  margin: -15px auto 0;
  font-family: "ZenMaruGothic-Bold", sans-serif;
  font-size: 1.7rem;
  letter-spacing: 0.1em;
  color: #023859;
  box-shadow: 0px 0px 30px 0px rgba(53, 53, 53, 0.15);
}
@media screen and (max-width: 768px) {
  #reboha .about-support-txt {
    font-size: 1.5rem;
  }
}
#reboha .feature-list {
  margin: 25px auto 0;
}
#reboha .feature-list-item {
  display: flex;
  justify-content: space-between;
}
#reboha .feature-list-item:nth-of-type(2n) {
  flex-direction: row-reverse;
}
#reboha .feature-list-item:nth-of-type(2n) .feature-list-img {
  margin-right: -25px;
}
#reboha .feature-list-item:nth-of-type(2n-1) .feature-list-img {
  margin-left: -25px;
}
#reboha .feature-list-item:nth-of-type(n+2) {
  margin-top: 45px;
}
#reboha .feature-list-con {
  width: 100%;
}
@media screen and (min-width: 768px) {
  #reboha .feature-list-con {
    max-width: 515px;
    padding-top: 20px;
  }
}
#reboha .feature-list-ttl {
  border-bottom: 1px solid #cecece;
}
@media screen and (min-width: 768px) {
  #reboha .feature-list-ttl {
    min-height: 128.78px;
  }
}
#reboha .feature-list-ttl .num {
  font-family: "Poppins-Regular", sans-serif;
  font-size: 2.2rem;
  color: #86b6e0;
  letter-spacing: 0.1em;
  line-height: 1;
}
@media screen and (max-width: 768px) {
  #reboha .feature-list-ttl .num {
    font-size: 1.5rem;
  }
}
#reboha .feature-list-ttl .ja {
  margin-top: 12px;
  padding-bottom: 14px;
  font-family: "ZenMaruGothic-Medium", sans-serif;
  font-size: 3rem;
  letter-spacing: 0.08em;
  color: #023859;
  line-height: 1.33;
}
@media screen and (max-width: 768px) {
  #reboha .feature-list-ttl .ja {
    font-size: 1.5rem;
  }
}
#reboha .feature-list-txt {
  margin-top: 17px;
  font-size: 1.6rem;
  letter-spacing: 0.08em;
  line-height: 1.875;
}
@media screen and (max-width: 768px) {
  #reboha .feature-list-txt {
    font-size: 1.5rem;
  }
}
#reboha .reboha-txt {
  margin: 30px auto 0;
  text-align: center;
}
#reboha .reboha-list {
  margin: 25px auto 0;
}
#reboha .reboha-list-item {
  text-align: center;
}
#reboha .reboha-list-item:nth-of-type(n+2) {
  position: relative;
}
#reboha .reboha-list-item:nth-of-type(n+2)::before {
  content: "";
  width: 38px;
  height: 38px;
  background: url(../img/reboha/x.png) no-repeat center/contain;
  position: absolute;
  top: 88px;
  left: -75px;
}
@media screen and (min-width: 768px) {
  #reboha .reboha-list-item:nth-of-type(n+2) {
    margin-left: 128px;
  }
}
#reboha .reboha-list-item:nth-of-type(3)::before {
  width: 52px;
  height: 18px;
  background-image: url(../img/reboha/iko.png);
  top: 100px;
  left: -94px;
}
#reboha .reboha-list-ttl {
  width: 220px;
  height: 220px;
  margin: auto;
  background: #86b6e0;
  border-radius: 50%;
  font-family: "Outfit-Regular", sans-serif;
  font-size: 3.6rem;
  letter-spacing: 0;
  color: #fff;
  line-height: 220px;
}
@media screen and (max-width: 768px) {
  #reboha .reboha-list-ttl {
    font-size: 1.8rem;
  }
}
#reboha .reboha-list-ttl02 {
  background: #ffab40;
  font-size: 2.8rem;
}
@media screen and (max-width: 768px) {
  #reboha .reboha-list-ttl02 {
    font-size: 1.5rem;
  }
}
#reboha .reboha-list-txt {
  margin: 20px auto 0;
  font-family: "ZenMaruGothic-Medium", sans-serif;
  font-size: 1.8rem;
  letter-spacing: 0;
  color: #01579b;
}
@media screen and (max-width: 768px) {
  #reboha .reboha-list-txt {
    font-size: 1.5rem;
  }
}
#reboha .reboha-list-txt02 {
  color: #ffab40;
}
#reboha .reboha-box {
  max-width: 750px;
  margin: 62px auto 0;
  padding: 23px 0 20px;
  text-align: center;
  font-family: "ZenMaruGothic-Medium", sans-serif;
  font-size: 1.8rem;
  letter-spacing: 0;
  color: #023859;
}
@media screen and (max-width: 768px) {
  #reboha .reboha-box {
    font-size: 1.5rem;
  }
}
#reboha .reboha-box .ac {
  color: #ff7800;
}
#reboha .reco-box {
  width: 100%;
  max-width: 816px;
  margin: 40px auto 0;
  padding: 40px 56px;
}
#reboha .reco-list-item {
  padding: 14px 0 14px 40px;
  border-bottom: 1px solid #cecece;
  background: url(../img/reboha/check.png) no-repeat left 30px;
  font-family: "ZenMaruGothic-Medium", sans-serif;
  font-size: 3rem;
  letter-spacing: 0.1em;
  color: #01579b;
  line-height: 1.5;
}
@media screen and (max-width: 768px) {
  #reboha .reco-list-item {
    font-size: 1.5rem;
  }
}
#reboha .reco-list-item .ac {
  color: #ff7800;
}

/* price  PC
------------------------------------ */
#price .com-sec .ja {
  text-shadow: none;
  font-size: 6rem;
}
@media screen and (max-width: 768px) {
  #price .com-sec .ja {
    font-size: 3rem;
  }
}
#price .price-ttl {
  padding: 20px 0 30px;
  font-family: "ZenMaruGothic-Bold", sans-serif;
  font-size: 4rem;
  letter-spacing: 0.1em;
  color: #ff7800;
  line-height: 1.2;
}
@media screen and (max-width: 768px) {
  #price .price-ttl {
    font-size: 2rem;
  }
}
#price .price-ttl-wrap {
  max-width: 700px;
  margin: 39px auto 0;
  text-align: center;
}
#price .price-ttl .sm {
  font-size: 3rem;
}
@media screen and (max-width: 768px) {
  #price .price-ttl .sm {
    font-size: 1.5rem;
  }
}
#price .price-ttl-note {
  margin: 15px auto 0;
  text-align: left;
  font-family: "ZenMaruGothic-Medium", sans-serif;
  font-size: 1.6rem;
  letter-spacing: 0.08em;
  color: #023859;
}
@media screen and (max-width: 768px) {
  #price .price-ttl-note {
    font-size: 1.5rem;
  }
}
#price .price .plus {
  margin: 0 20px 0 10px;
  color: #01579b;
  font-size: 3rem;
  font-family: "ZenMaruGothic-Bold", sans-serif;
}
@media screen and (max-width: 768px) {
  #price .price .plus {
    font-size: 1.5rem;
  }
}
#price .price-point {
  margin: 75px auto 0;
}
#price .price-point-ttl {
  max-width: 520px;
  margin: auto;
  font-size: 2.8rem;
  letter-spacing: 0.05em;
  position: relative;
}
@media screen and (max-width: 768px) {
  #price .price-point-ttl {
    font-size: 1.5rem;
  }
}
#price .price-point-txt {
  max-width: 800px;
  margin: -15px auto 0;
  text-align: center;
  font-family: "ZenMaruGothic-Medium", sans-serif;
  font-size: 1.7rem;
  letter-spacing: 0.1em;
  color: #023859;
  line-height: 1.4;
}
@media screen and (max-width: 768px) {
  #price .price-point-txt {
    font-size: 1.5rem;
  }
}
#price .price-point-txt .ac {
  color: #ff7800;
  font-size: 2rem;
}
@media screen and (max-width: 768px) {
  #price .price-point-txt .ac {
    font-size: 1.5rem;
  }
}
#price .price-point-txt .sm {
  display: block;
  margin: 10px auto 0;
  font-size: 1.5rem;
  letter-spacing: 0.1em;
}
@media screen and (max-width: 768px) {
  #price .price-point-txt .sm {
    font-size: 1.5rem;
  }
}
#price .benefits-txt {
  margin: 30px auto 0;
  text-align: center;
  font-family: "ZenMaruGothic-Medium", sans-serif;
  font-size: 1.8rem;
  letter-spacing: 0;
}
@media screen and (max-width: 768px) {
  #price .benefits-txt {
    font-size: 1.5rem;
  }
}
#price .benefits-list {
  margin: 32px auto 0;
}
#price .benefits-list-item {
  width: 100%;
  border-radius: 20px;
  text-align: center;
  box-shadow: 0px 0px 30px 0px rgba(53, 53, 53, 0.15);
  background: #fff;
}
@media screen and (min-width: 768px) {
  #price .benefits-list-item {
    max-width: 520px;
  }
  #price .benefits-list-item:nth-of-type(n+3) {
    margin-top: 41px;
  }
}
#price .benefits-list-ttl {
  display: flex;
  height: 82px;
  background: url(../img/ptn/ptn02.jpg);
  border-radius: 20px 20px 0 0;
  justify-content: center;
  align-items: center;
}
#price .benefits-list-ttl-txt {
  font-family: "ZenMaruGothic-Bold", sans-serif;
  font-size: 2.4rem;
  letter-spacing: 0.05em;
  color: #fff;
  line-height: 1.33;
}
@media screen and (max-width: 768px) {
  #price .benefits-list-ttl-txt {
    font-size: 1.5rem;
  }
}
#price .benefits-list-ttl-txt .sm {
  font-size: 2rem;
}
@media screen and (max-width: 768px) {
  #price .benefits-list-ttl-txt .sm {
    font-size: 1.5rem;
  }
}
#price .benefits-list-ttl-txt.lg {
  font-size: 2.8rem;
}
@media screen and (max-width: 768px) {
  #price .benefits-list-ttl-txt.lg {
    font-size: 1.5rem;
  }
}
#price .benefits-list-con {
  display: flex;
  padding: 23px 0 39px;
  justify-content: center;
  align-items: center;
}
#price .benefits-list-txt {
  font-family: "ZenMaruGothic-Bold", sans-serif;
  font-size: 2.4rem;
  letter-spacing: 0;
  color: #01579b;
  line-height: 1.5;
}
@media screen and (max-width: 768px) {
  #price .benefits-list-txt {
    font-size: 1.5rem;
  }
}
#price .benefits-list-txt .lg {
  display: block;
  margin: 16px auto 0;
  font-family: "ZenMaruGothic-Bold", sans-serif;
  font-size: 4rem;
  letter-spacing: 0.1em;
  color: #ff7800;
  line-height: 1;
}
@media screen and (max-width: 768px) {
  #price .benefits-list-txt .lg {
    font-size: 2rem;
  }
}
#price .benefits-note {
  margin: 50px auto 0;
  text-align: center;
}
#price .program .ja {
  text-shadow: none;
}
#price .program-txt {
  margin: 30px auto 0;
  text-align: center;
}
#price .program-list {
  max-width: 1000px;
  margin: 32px auto 0;
}
#price .program-list li:nth-of-type(n+2) {
  margin: 59px auto 0;
}
#price .program-box-con {
  padding-bottom: 30px;
}
#price .program-box-dl div {
  display: flex;
  justify-content: center;
  align-items: center;
}
#price .program-box-dl dt {
  background: linear-gradient(transparent 60%, #ffe4cc 60%);
  font-family: "ZenMaruGothic-Bold", sans-serif;
  font-size: 2.4rem;
  letter-spacing: 0;
  color: #ff7800;
  line-height: 1.5;
}
@media screen and (max-width: 768px) {
  #price .program-box-dl dt {
    font-size: 1.5rem;
  }
}
#price .program-box-dl dd {
  margin-left: 65px;
  font-family: "ZenMaruGothic-Bold", sans-serif;
  font-size: 2.4rem;
  letter-spacing: 0;
  color: #01579b;
  line-height: 1.6;
}
@media screen and (max-width: 768px) {
  #price .program-box-dl dd {
    font-size: 1.5rem;
  }
}
#price .program-box-dl dd .lg {
  display: block;
  margin-top: 5px;
  font-size: 4rem;
  letter-spacing: 0.1em;
  color: #ff7800;
  line-height: 1.2;
}
@media screen and (max-width: 768px) {
  #price .program-box-dl dd .lg {
    font-size: 2rem;
  }
}
#price .program-box-dl02 {
  display: flex;
  margin: 20px auto 0;
  justify-content: center;
}
#price .program-box-dl02 dt {
  width: 160px;
  height: 38px;
  text-align: center;
  border-radius: 10px;
  background-color: #01579b;
  font-family: "ZenMaruGothic-Medium", sans-serif;
  font-size: 2.4rem;
  letter-spacing: 0.05em;
  line-height: 38px;
  color: #fff;
  position: relative;
}
@media screen and (max-width: 768px) {
  #price .program-box-dl02 dt {
    font-size: 1.5rem;
  }
}
#price .program-box-dl02 dt::before {
  content: "";
  width: 0;
  height: 0;
  border-style: solid;
  border-top: 6px solid transparent;
  border-bottom: 6px solid transparent;
  border-left: 11.25px solid #01579b;
  border-right: 0;
  position: absolute;
  top: 0;
  right: -11px;
  bottom: 0;
  margin: auto;
}
#price .program-box-dl02 dd {
  margin-left: 27px;
  font-family: "ZenMaruGothic-Medium", sans-serif;
  font-size: 1.6rem;
  letter-spacing: 0.12em;
  color: #023859;
  line-height: 1.75;
}
@media screen and (max-width: 768px) {
  #price .program-box-dl02 dd {
    font-size: 1.5rem;
  }
}
#price .course-tag {
  margin: 40px auto 0;
}
#price .course-list {
  margin: 60px auto 0;
}
#price .course-list-item:nth-of-type(n+2) {
  margin-top: 95px;
}
#price .course-list-item .course-list-ttl:nth-of-type(n+2) {
  margin: 95px auto 0;
}
#price .course-list-ttl {
  padding: 18px;
  text-align: center;
  border-radius: 20px;
  background: #01579b;
  font-family: "ZenMaruGothic-Bold", sans-serif;
  font-size: 2.8rem;
  letter-spacing: 0.05em;
  line-height: 1.6;
  color: #fff;
  white-space: pre-line;
}
@media screen and (max-width: 768px) {
  #price .course-list-ttl {
    font-size: 1.5rem;
  }
}
#price .course-list-txt {
  margin: 14px auto 0;
  font-family: "ZenMaruGothic-Medium", sans-serif;
  font-size: 1.8rem;
  line-height: 1.6;
  letter-spacing: 0;
  color: #023859;
  white-space: pre-line;
}
@media screen and (max-width: 768px) {
  #price .course-list-txt {
    font-size: 1.5rem;
  }
}
#price .course-list-box {
  margin: 23px auto 0;
  border-radius: 0;
}
#price .course-list-box-ttl {
  padding: 11px;
  background: #86b6e0;
  text-align: center;
  font-family: "NotoSansCJKjp-Medium", sans-serif;
  font-size: 2.2rem;
  letter-spacing: 0.15em;
  color: #fff;
  line-height: 1.7;
  white-space: pre-line;
}
@media screen and (max-width: 768px) {
  #price .course-list-box-ttl {
    font-size: 1.5rem;
  }
}
#price .course-list-box-con {
  padding: 0 25px;
}
#price .course-list-table {
  width: 100%;
}
#price .course-list-table tr:nth-of-type(n+2) {
  border-top: 1px solid #cecece;
}
#price .course-list-table th, #price .course-list-table td {
  padding: 13px 0;
  font-family: "ZenMaruGothic-Medium", sans-serif;
  font-size: 1.6rem;
  letter-spacing: 0.05em;
  color: #023859;
  white-space: pre-line;
}
@media screen and (max-width: 768px) {
  #price .course-list-table th, #price .course-list-table td {
    font-size: 1.5rem;
  }
}
#price .course-list-table td {
  text-align: right;
}
#price .policy {
  background: #f2f9ff;
}
#price .policy .ja {
  text-shadow: none;
}
#price .policy-txt {
  margin: 28px auto 0;
  text-align: center;
  font-size: 1.8rem;
  letter-spacing: 0;
  line-height: 1.7;
}
@media screen and (max-width: 768px) {
  #price .policy-txt {
    font-size: 1.5rem;
  }
}
#price .policy-table {
  width: 100%;
  margin: 28px auto 0;
}
#price .policy-table tr:nth-of-type(n+2) {
  border-top: 1px solid #cecece;
}
#price .policy-table tr:nth-of-type(1) th {
  border-radius: 30px 0 0 0;
}
#price .policy-table tr:nth-of-type(1) td {
  border-radius: 0 30px 0 0;
}
#price .policy-table tr:last-of-type th {
  border-radius: 0 0 0 30px;
}
#price .policy-table tr:last-of-type td {
  border-radius: 0 0 30px 0;
}
#price .policy-table th, #price .policy-table td {
  padding: 20px 30px;
  font-family: "ZenMaruGothic-Medium", sans-serif;
  font-size: 1.6rem;
  letter-spacing: 0.1em;
  line-height: 1.7;
  vertical-align: middle;
}
@media screen and (max-width: 768px) {
  #price .policy-table th, #price .policy-table td {
    font-size: 1.5rem;
  }
}
#price .policy-table th {
  width: 250px;
  background: #86b6e0;
  text-align: center;
  color: #fff;
}
#price .policy-table td {
  background: #fff;
}

/* flow  PC
------------------------------------ */
#flow .flow .ja {
  text-shadow: none;
}
#flow .flow-list {
  margin: 40px auto 0;
}
#flow .flow-list-item {
  display: flex;
  padding: 0;
}
@media screen and (min-width: 768px) {
  #flow .flow-list-item:not(:last-of-type) {
    border-radius: 83px 10px 10px 83px;
  }
}
#flow .flow-list-item:nth-of-type(n+2) {
  margin: 66px auto 0;
  position: relative;
}
#flow .flow-list-item:nth-of-type(n+2)::before {
  content: "";
  width: 37px;
  height: 20px;
  margin: auto;
  background: url(../img/flow/flow-arw.png) no-repeat center;
  position: absolute;
  top: -43px;
  left: 0;
  right: 0;
}
@media screen and (min-width: 768px) {
  #flow .flow-list-img {
    flex-shrink: 0;
  }
  #flow .flow-list-img img {
    border-radius: 20px 0 0 20px;
  }
}
#flow .flow-list-con {
  width: 100%;
  padding: 45px 35px;
}
#flow .flow-list-ttl .step {
  font-family: "Poppins-Regular", sans-serif;
  font-size: 2.2rem;
  letter-spacing: 0.1em;
  color: #86b6e0;
  line-height: 1;
}
@media screen and (max-width: 768px) {
  #flow .flow-list-ttl .step {
    font-size: 1.5rem;
  }
}
#flow .flow-list-ttl .ja {
  margin-top: 7px;
  padding-bottom: 10px;
  border-bottom: 1px solid #cecece;
  font-family: "ZenMaruGothic-Medium", sans-serif;
  font-size: 3rem;
  letter-spacing: 0.08em;
  line-height: 1.5;
}
@media screen and (max-width: 768px) {
  #flow .flow-list-ttl .ja {
    font-size: 1.5rem;
  }
}
#flow .flow-list-txt {
  margin-top: 17px;
  font-family: "ZenMaruGothic-Medium", sans-serif;
  font-size: 1.6rem;
  letter-spacing: 0.08em;
  color: #023859;
  line-height: 1.5;
}
@media screen and (max-width: 768px) {
  #flow .flow-list-txt {
    font-size: 1.5rem;
  }
}
#flow .faq-tag {
  margin: 40px auto 0;
  justify-content: center;
}
#flow .faq-tag li {
  max-width: 380px;
}
#flow .faq-tag li:nth-of-type(2n) {
  margin-left: 40px !important;
}
#flow .faq-tag li:nth-of-type(n+3) {
  margin-top: 40px;
}
#flow .faq-tag li:not(:nth-of-type(4n-3)) {
  margin-left: 0;
}
#flow .faq-list {
  margin: 53px auto 0;
}
#flow .faq-list-item:nth-of-type(n+2) {
  margin-top: 90px;
}
#flow .faq-con {
  margin: 36px auto 0;
}
#flow .faq-con li:nth-of-type(n+2) {
  margin-top: 35px;
}
#flow .faq-con-dl {
  padding: 24px 40px;
}
#flow .faq-con-dl dt {
  padding: 3px 0 16px 44px;
  border-bottom: 1px solid #cecece;
  font-family: "ZenMaruGothic-Medium", sans-serif;
  font-size: 1.8rem;
  letter-spacing: 0.08em;
  color: #023859;
  position: relative;
}
@media screen and (max-width: 768px) {
  #flow .faq-con-dl dt {
    font-size: 1.5rem;
  }
}
#flow .faq-con-dl dt::before {
  content: "Q";
  font-family: "ZenMaruGothic-Medium", sans-serif;
  font-size: 3.5rem;
  letter-spacing: 0;
  color: #86b6e0;
  position: absolute;
  top: 0px;
  left: 0;
  line-height: 1;
}
@media screen and (max-width: 768px) {
  #flow .faq-con-dl dt::before {
    font-size: 1.75rem;
  }
}
#flow .faq-con-dl dd {
  padding: 20px 0 0 44px;
  font-family: "ZenMaruGothic-Medium", sans-serif;
  font-size: 1.6rem;
  letter-spacing: 0.08em;
  color: #023859;
  white-space: pre-line;
  position: relative;
}
@media screen and (max-width: 768px) {
  #flow .faq-con-dl dd {
    font-size: 1.5rem;
  }
}
#flow .faq-con-dl dd::before {
  content: "A";
  font-family: "ZenMaruGothic-Medium", sans-serif;
  font-size: 3.5rem;
  letter-spacing: 0;
  color: #ffab40;
  position: absolute;
  top: 20px;
  left: 0;
  line-height: 1;
}
@media screen and (max-width: 768px) {
  #flow .faq-con-dl dd::before {
    font-size: 1.75rem;
  }
}

/* staff  PC
------------------------------------ */
#staff .staff-list {
  margin: 40px auto 0;
}
#staff .staff-list-item:nth-of-type(n+2) {
  margin-top: 80px;
}
#staff .staff-list-ttl {
  padding: 8px;
  font-size: 2.8rem;
  font-family: "ZenMaruGothic-Bold", sans-serif;
}
@media screen and (max-width: 768px) {
  #staff .staff-list-ttl {
    font-size: 1.5rem;
  }
}
#staff .staff-list-flx {
  margin: 30px auto 0;
}
#staff .staff-list-img {
  width: 100%;
  max-width: 520px;
  height: 0;
  padding-top: 374px;
  position: relative;
}
#staff .staff-list-img img {
  border-radius: 40px 10px 40px 10px;
  box-shadow: 0px 0px 30px 0px rgba(53, 53, 53, 0.15);
}
#staff .staff-list-con {
  width: 100%;
}
@media screen and (min-width: 768px) {
  #staff .staff-list-con {
    max-width: 520px;
  }
}
#staff .staff-list-txt {
  margin-bottom: 20px;
  font-family: "ZenMaruGothic-Medium", sans-serif;
  font-size: 1.7rem;
  letter-spacing: 0.1em;
  color: #023859;
  line-height: 1.7;
  white-space: pre-line;
}
@media screen and (max-width: 768px) {
  #staff .staff-list-txt {
    font-size: 1.5rem;
  }
}
#staff .staff-list-dl dt {
  height: 50px;
  padding: 0 30px;
  border-radius: 20px;
  background: url(../img/ptn/ptn02.jpg);
  font-family: "ZenMaruGothic-Bold", sans-serif;
  font-size: 2.2rem;
  letter-spacing: 0.05em;
  line-height: 50px;
  color: #fff;
}
@media screen and (max-width: 768px) {
  #staff .staff-list-dl dt {
    font-size: 1.5rem;
  }
}
#staff .staff-list-dl dd {
  margin-top: 12px;
  font-size: 1.7rem;
  font-family: "ZenMaruGothic-Medium", sans-serif;
  letter-spacing: 0.1em;
  color: #023859;
  white-space: pre-line;
}
@media screen and (max-width: 768px) {
  #staff .staff-list-dl dd {
    font-size: 1.5rem;
  }
}

/* information  PC
------------------------------------ */
#information .information-table {
  margin: 40px auto 0;
  box-shadow: 0px 0px 4px 0px rgba(3, 16, 34, 0.1);
}
#information .information-map {
  margin: 80px auto 0;
}

/* news  PC
------------------------------------ */
#news .news-tag {
  margin: 50px auto 0;
}
#news .news-post {
  margin: 50px auto 0;
}
#news .detail-box {
  padding: 30px 40px;
}
#news .detail .news-post-time {
  margin-top: 0;
}
#news .detail .news-post-tag {
  margin-top: 0;
}
#news .detail .com-news-ttl {
  padding: 5px 20px;
  text-align: left;
}/*# sourceMappingURL=all.css.map */