@charset "UTF-8";
/*	cmn-color
------------------------------------ */
/*	transition,hover
------------------------------------ */
/*	media-screen
------------------------------------ */
/*	font
------------------------------------ */
/*	layout
------------------------------------ */
/*	font-size  cmn
------------------------------------ */
/*	com parts  PC
------------------------------------ */
.sns-none {
  display: none !important;
}

.over {
  overflow: hidden;
}

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

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

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

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

.com-anchor {
  scroll-margin-top: 120px; /* ヘッダーの高さ分 */
}

.nowrap {
  white-space: nowrap;
}

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

@media screen and (min-width: 768px) {
  .com-txt-box p:nth-of-type(n+2) {
    margin-top: 33px;
  }
}
.com-txt .border {
  padding-bottom: 5px;
  border-bottom: 1px solid #4ec7ee;
}

.marker {
  position: relative;
  z-index: 1;
}
.marker::before {
  display: block;
  width: 100%;
  height: 14px;
  background: rgba(113, 186, 47, 0.3);
  border-radius: 5.5px;
  position: absolute;
  bottom: -5px;
  left: 0;
  z-index: -1;
  content: "";
}

.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;
}

.clamp4 {
  overflow: hidden;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 4;
}

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

.com-noimage {
  background: url(../img/top/logo.png) no-repeat center rgba(51, 51, 51, 0.1);
  background-size: clamp(48px, 65%, 209px);
}

/*  共通パーツ
------------------------------------ */
.com-box {
  border-radius: 10px;
  border: 2px solid #4ec7ee;
  background: #fff;
}

.com-tel {
  line-height: 1;
}
.com-tel-link {
  font-family: "Zen Maru Gothic", sans-serif;
  font-weight: 700;
  font-style: normal;
  font-size: 2.4rem;
}
@media screen and (max-width: 768px) {
  .com-tel-link {
    font-size: 1.5rem;
  }
}
.com-tel-link {
  letter-spacing: 0.05em;
  color: #fff;
}
.com-tel-link .num {
  font-size: 3.8rem;
}
@media screen and (max-width: 768px) {
  .com-tel-link .num {
    font-size: 1.9rem;
  }
}
.com-tel-link .num {
  letter-spacing: 0.08em;
}
.com-tel-note {
  display: block;
  margin: 5px auto 0;
  text-align: center;
}

.ra40 img {
  border-radius: 40px;
}

.com-bg {
  background: url(../img/top/com-bg-r.png) no-repeat calc(50% + 696px) 57px, url(../img/top/com-bg-l.png) no-repeat calc(50% - 712px) calc(100% - 130px) #e6f9ff;
}
@media screen and (min-width: 1921px) {
  .com-bg {
    background-position-x: right, left;
  }
}
.com-bg02 {
  background: #e2f7f1;
}

@media screen and (min-width: 768px) and (max-width: 1920px) {
  .sub .com-bg {
    background-position-x: calc(50% + 788px), calc(50% - 712px);
  }
}

.com-waku {
  background: url(../img/ptn/ptn.png);
}
.com-waku02 {
  background: url(../img/top/wave02.png) no-repeat center bottom, url(../img/ptn/ptn.png);
}
@media screen and (min-width: 1921px) {
  .com-waku02 {
    background-size: 100%, auto;
  }
}

.com-wave {
  background: url(../img/top/wave.png) no-repeat center bottom;
}
@media screen and (min-width: 1921px) {
  .com-wave {
    background-size: 100%;
  }
}
.com-wave02 {
  background: url(../img/top/wave02.png) no-repeat center bottom;
}
@media screen and (min-width: 1921px) {
  .com-wave02 {
    background-size: 100%;
  }
}

.com-mail {
  display: flex;
  width: 100%;
  max-width: 300px;
  height: 50px;
  background: #4ec7ee;
  border-radius: 11px;
  font-family: "Zen Maru Gothic", sans-serif;
  font-weight: 700;
  font-style: normal;
  font-size: 1.6rem;
}
@media screen and (max-width: 768px) {
  .com-mail {
    font-size: 1.5rem;
  }
}
.com-mail {
  letter-spacing: 0.08em;
  color: #fff;
  justify-content: center;
  align-items: center;
}
.com-mail::before {
  content: "";
  display: block;
  width: 18px;
  height: 11px;
  margin-right: 11px;
  background: url(../img/top/info-mail.png) no-repeat center/contain;
}

.news-post {
  width: 100%;
  max-width: 834px;
  padding: 40px 32px;
  background: #e6f9ff;
  border-radius: 35px;
}
.news-post-item:nth-of-type(n+2) {
  margin-top: 25px;
}
.news-post-link {
  display: block;
  padding: 14px 35px 10px;
  border-radius: 13px;
  background: #fff;
}
.news-post-time {
  font-family: "Zen Maru Gothic", sans-serif;
  font-weight: 500;
  font-style: normal;
  font-size: 1.8rem;
}
@media screen and (max-width: 768px) {
  .news-post-time {
    font-size: 1.5rem;
  }
}
.news-post-time {
  letter-spacing: 0.08em;
  color: #49c8a4;
  line-height: 1.4;
  flex-shrink: 0;
}
.news-post-tag {
  display: flex;
  margin-left: 11px;
  justify-content: flex-start;
  align-items: flex-start;
  flex-wrap: wrap;
  line-height: 1.3;
}
.news-post-tag-txt {
  margin: 0 13px 5px 0;
  padding: 3px 12px;
  border-radius: 8px;
  text-align: center;
  background: #4ec7ee;
  font-family: "Zen Maru Gothic", sans-serif;
  font-weight: 500;
  font-style: normal;
  font-size: 1.4rem;
  letter-spacing: 0.08em;
  color: #fff;
  line-height: 1.3;
}
.news-post-ttl {
  margin-top: 5px;
  font-family: "Zen Maru Gothic", sans-serif;
  font-weight: 500;
  font-style: normal;
  font-size: 1.8rem;
}
@media screen and (max-width: 768px) {
  .news-post-ttl {
    font-size: 1.5rem;
  }
}
.news-post-ttl {
  letter-spacing: 0.08em;
  line-height: 1.5;
}
.news-post-time, .news-post-tag-txt, .news-post-ttl {
  transition: all 0.3s ease;
}

.com-tag {
  padding: 120px 0 130px;
  background: url(../img/service/com-tag.png) no-repeat center/cover;
}
.com-tag-list {
  max-width: 1080px;
  margin: auto;
}
.com-tag-item {
  width: 100%;
  max-width: 522px;
}
.com-tag-link {
  max-width: none;
}
.com-tag-link01 {
  background-color: #4ec7ee;
  background-image: url(../img/top/com-btn-arw.png);
}
.com-tag-link02 {
  background-color: #49c8a4;
}

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

  main layout  all

========================================= */
/* top-off  PC
------------------------------------ */
#top-off {
  background: url(../img/top/gra.png) no-repeat center/cover;
}
#top-off .off-box {
  position: relative;
  z-index: 0;
}
#top-off .off-box::before, #top-off .off-box::after {
  content: "";
  display: block;
  position: absolute;
  bottom: 0;
}
#top-off .off-box::before {
  width: 253px;
  height: 309px;
  background: url(../img/top/cam-l.png) no-repeat left bottom/contain;
  left: -85px;
}
#top-off .off-box::after {
  width: 317px;
  height: 310px;
  background: url(../img/top/cam-r.png) no-repeat right bottom/contain;
  right: -125px;
}
#top-off .off-box-border {
  padding: 62px 0 58px;
  border-radius: 35px;
  background: url(../img/top/cam-bg.png) no-repeat center/cover;
  border: 2px solid #59d7c1;
}
#top-off .off-ttl-year {
  position: absolute;
  top: -54px;
}
#top-off .off-ttl-year.left {
  left: -18px;
}
#top-off .off-ttl-year.right {
  top: -28px;
  right: -18px;
}
#top-off .off-ttl-main {
  display: block;
  text-align: center;
  position: relative;
}
#top-off .off-list {
  margin: 20px auto 0;
  position: relative;
  z-index: 1;
}
#top-off .off-list-item {
  width: 100%;
  max-width: 400px;
  padding: 18px 20px 13px;
  border-radius: 15px;
}
#top-off .off-list-item01 {
  background-color: #e2f7f1;
}
#top-off .off-list-item02 {
  margin-left: 23px;
  background-color: #e6f9ff;
}
#top-off .off-list-item02 dl dt {
  color: #4ec7ee;
}
#top-off .off-list-item02 dl dd {
  background-image: url(../img/top/cam-arw02.png);
  color: #ddf7ff;
  text-shadow: rgb(78, 199, 238) 6px 0px 0px, rgb(78, 199, 238) 5.91686px 0.995377px 0px, rgb(78, 199, 238) 5.66974px 1.96317px 0px, rgb(78, 199, 238) 5.2655px 2.87655px 0px, rgb(78, 199, 238) 4.71532px 3.71022px 0px, rgb(78, 199, 238) 4.03447px 4.44106px 0px, rgb(78, 199, 238) 3.24181px 5.04883px 0px, rgb(78, 199, 238) 2.35931px 5.51667px 0px, rgb(78, 199, 238) 1.41143px 5.83163px 0px, rgb(78, 199, 238) 0.424423px 5.98497px 0px, rgb(78, 199, 238) -0.574341px 5.97245px 0px, rgb(78, 199, 238) -1.55719px 5.79441px 0px, rgb(78, 199, 238) -2.49688px 5.45578px 0px, rgb(78, 199, 238) -3.36738px 4.96596px 0px, rgb(78, 199, 238) -4.14455px 4.33852px 0px, rgb(78, 199, 238) -4.80686px 3.59083px 0px, rgb(78, 199, 238) -5.33596px 2.74364px 0px, rgb(78, 199, 238) -5.71718px 1.8204px 0px, rgb(78, 199, 238) -5.93995px 0.84672px 0px, rgb(78, 199, 238) -5.99811px -0.150428px 0px, rgb(78, 199, 238) -5.89004px -1.14341px 0px, rgb(78, 199, 238) -5.61874px -2.1047px 0px, rgb(78, 199, 238) -5.19172px -3.00766px 0px, rgb(78, 199, 238) -4.62082px -3.82727px 0px, rgb(78, 199, 238) -3.92186px -4.54081px 0px, rgb(78, 199, 238) -3.11421px -5.12852px 0px, rgb(78, 199, 238) -2.22026px -5.57409px 0px, rgb(78, 199, 238) -1.26477px -5.86518px 0px, rgb(78, 199, 238) -0.274238px -5.99373px 0px, rgb(78, 199, 238) 0.723898px -5.95617px 0px, rgb(78, 199, 238) 1.70197px -5.75355px 0px, rgb(78, 199, 238) 2.63288px -5.39147px 0px, rgb(78, 199, 238) 3.49082px -4.87998px 0px, rgb(78, 199, 238) 4.25202px -4.23324px 0px, rgb(78, 199, 238) 4.89538px -3.46919px 0px, rgb(78, 199, 238) 5.40307px -2.60899px 0px, rgb(78, 199, 238) 5.76102px -1.67649px 0px, rgb(78, 199, 238) 5.95932px -0.697531px 0px;
}
#top-off .off-list-ttl {
  text-align: center;
  font-family: "Zen Maru Gothic", sans-serif;
  font-weight: 700;
  font-style: normal;
  font-size: 2.4rem;
}
@media screen and (max-width: 768px) {
  #top-off .off-list-ttl {
    font-size: 1.5rem;
  }
}
#top-off .off-list-ttl {
  letter-spacing: 0.08em;
  line-height: 1.5;
}
#top-off .off-list-price {
  margin: 17px auto 0;
  padding: 7px 0 20px;
  background: #fff;
  text-align: center;
  border-radius: 12px;
  line-height: 1;
  font-family: "Zen Maru Gothic", sans-serif;
  font-weight: 700;
  font-style: normal;
  font-size: 5rem;
}
@media screen and (max-width: 768px) {
  #top-off .off-list-price {
    font-size: 2.5rem;
  }
}
#top-off .off-list-price {
  letter-spacing: 0.08em;
  color: #fff;
  text-shadow: rgb(249, 88, 88) 6px 0px 0px, rgb(249, 88, 88) 5.91686px 0.995377px 0px, rgb(249, 88, 88) 5.66974px 1.96317px 0px, rgb(249, 88, 88) 5.2655px 2.87655px 0px, rgb(249, 88, 88) 4.71532px 3.71022px 0px, rgb(249, 88, 88) 4.03447px 4.44106px 0px, rgb(249, 88, 88) 3.24181px 5.04883px 0px, rgb(249, 88, 88) 2.35931px 5.51667px 0px, rgb(249, 88, 88) 1.41143px 5.83163px 0px, rgb(249, 88, 88) 0.424423px 5.98497px 0px, rgb(249, 88, 88) -0.574341px 5.97245px 0px, rgb(249, 88, 88) -1.55719px 5.79441px 0px, rgb(249, 88, 88) -2.49688px 5.45578px 0px, rgb(249, 88, 88) -3.36738px 4.96596px 0px, rgb(249, 88, 88) -4.14455px 4.33852px 0px, rgb(249, 88, 88) -4.80686px 3.59083px 0px, rgb(249, 88, 88) -5.33596px 2.74364px 0px, rgb(249, 88, 88) -5.71718px 1.8204px 0px, rgb(249, 88, 88) -5.93995px 0.84672px 0px, rgb(249, 88, 88) -5.99811px -0.150428px 0px, rgb(249, 88, 88) -5.89004px -1.14341px 0px, rgb(249, 88, 88) -5.61874px -2.1047px 0px, rgb(249, 88, 88) -5.19172px -3.00766px 0px, rgb(249, 88, 88) -4.62082px -3.82727px 0px, rgb(249, 88, 88) -3.92186px -4.54081px 0px, rgb(249, 88, 88) -3.11421px -5.12852px 0px, rgb(249, 88, 88) -2.22026px -5.57409px 0px, rgb(249, 88, 88) -1.26477px -5.86518px 0px, rgb(249, 88, 88) -0.274238px -5.99373px 0px, rgb(249, 88, 88) 0.723898px -5.95617px 0px, rgb(249, 88, 88) 1.70197px -5.75355px 0px, rgb(249, 88, 88) 2.63288px -5.39147px 0px, rgb(249, 88, 88) 3.49082px -4.87998px 0px, rgb(249, 88, 88) 4.25202px -4.23324px 0px, rgb(249, 88, 88) 4.89538px -3.46919px 0px, rgb(249, 88, 88) 5.40307px -2.60899px 0px, rgb(249, 88, 88) 5.76102px -1.67649px 0px, rgb(249, 88, 88) 5.95932px -0.697531px 0px;
}
#top-off .off-list-price .sm {
  font-size: 3rem;
}
@media screen and (max-width: 768px) {
  #top-off .off-list-price .sm {
    font-size: 1.5rem;
  }
}
#top-off .off-list-price .md {
  font-size: 4rem;
}
@media screen and (max-width: 768px) {
  #top-off .off-list-price .md {
    font-size: 2rem;
  }
}
#top-off .off-list-dl {
  display: flex;
  justify-content: center;
  align-items: flex-end;
}
@media screen and (min-width: 768px) {
  #top-off .off-list-dl dt, #top-off .off-list-dl dd {
    white-space: nowrap;
  }
}
#top-off .off-list-dl dt {
  font-family: "Zen Maru Gothic", sans-serif;
  font-weight: 700;
  font-style: normal;
  font-size: 1.7rem;
}
@media screen and (max-width: 768px) {
  #top-off .off-list-dl dt {
    font-size: 1.5rem;
  }
}
#top-off .off-list-dl dt {
  letter-spacing: 0.08em;
  color: #49c8a4;
  line-height: 1.2;
}
#top-off .off-list-dl .price {
  color: #333333;
  font-size: 3rem;
}
@media screen and (max-width: 768px) {
  #top-off .off-list-dl .price {
    font-size: 1.5rem;
  }
}
#top-off .off-list-dl .price .sm {
  font-size: 2rem;
}
@media screen and (max-width: 768px) {
  #top-off .off-list-dl .price .sm {
    font-size: 1.5rem;
  }
}
#top-off .off-list-dl dd {
  padding-left: 41px;
  background: url(../img/top/cam-arw01.png) no-repeat 5px 70%;
  font-family: "Zen Maru Gothic", sans-serif;
  font-weight: 700;
  font-style: normal;
  font-size: 5rem;
}
@media screen and (max-width: 768px) {
  #top-off .off-list-dl dd {
    font-size: 2.5rem;
  }
}
#top-off .off-list-dl dd {
  letter-spacing: 0.08em;
  line-height: 1.5;
  color: #ccf5e9;
  text-shadow: rgb(73, 200, 164) 6px 0px 0px, rgb(73, 200, 164) 5.91686px 0.995377px 0px, rgb(73, 200, 164) 5.66974px 1.96317px 0px, rgb(73, 200, 164) 5.2655px 2.87655px 0px, rgb(73, 200, 164) 4.71532px 3.71022px 0px, rgb(73, 200, 164) 4.03447px 4.44106px 0px, rgb(73, 200, 164) 3.24181px 5.04883px 0px, rgb(73, 200, 164) 2.35931px 5.51667px 0px, rgb(73, 200, 164) 1.41143px 5.83163px 0px, rgb(73, 200, 164) 0.424423px 5.98497px 0px, rgb(73, 200, 164) -0.574341px 5.97245px 0px, rgb(73, 200, 164) -1.55719px 5.79441px 0px, rgb(73, 200, 164) -2.49688px 5.45578px 0px, rgb(73, 200, 164) -3.36738px 4.96596px 0px, rgb(73, 200, 164) -4.14455px 4.33852px 0px, rgb(73, 200, 164) -4.80686px 3.59083px 0px, rgb(73, 200, 164) -5.33596px 2.74364px 0px, rgb(73, 200, 164) -5.71718px 1.8204px 0px, rgb(73, 200, 164) -5.93995px 0.84672px 0px, rgb(73, 200, 164) -5.99811px -0.150428px 0px, rgb(73, 200, 164) -5.89004px -1.14341px 0px, rgb(73, 200, 164) -5.61874px -2.1047px 0px, rgb(73, 200, 164) -5.19172px -3.00766px 0px, rgb(73, 200, 164) -4.62082px -3.82727px 0px, rgb(73, 200, 164) -3.92186px -4.54081px 0px, rgb(73, 200, 164) -3.11421px -5.12852px 0px, rgb(73, 200, 164) -2.22026px -5.57409px 0px, rgb(73, 200, 164) -1.26477px -5.86518px 0px, rgb(73, 200, 164) -0.274238px -5.99373px 0px, rgb(73, 200, 164) 0.723898px -5.95617px 0px, rgb(73, 200, 164) 1.70197px -5.75355px 0px, rgb(73, 200, 164) 2.63288px -5.39147px 0px, rgb(73, 200, 164) 3.49082px -4.87998px 0px, rgb(73, 200, 164) 4.25202px -4.23324px 0px, rgb(73, 200, 164) 4.89538px -3.46919px 0px, rgb(73, 200, 164) 5.40307px -2.60899px 0px, rgb(73, 200, 164) 5.76102px -1.67649px 0px, rgb(73, 200, 164) 5.95932px -0.697531px 0px;
}
#top-off .off-list-dl dd .sm {
  font-size: 2rem;
}
@media screen and (max-width: 768px) {
  #top-off .off-list-dl dd .sm {
    font-size: 1.5rem;
  }
}

/* top-health  PC
------------------------------------ */
#top-health .health-txt-box {
  margin: 50px auto 0;
}
@media screen and (min-width: 768px) {
  #top-health .health-txt-box {
    text-align: center;
  }
}
#top-health .worries {
  margin: 85px auto 0;
  text-align: center;
}
#top-health .worries-ttl {
  position: relative;
  z-index: 1;
}
#top-health .worries-list {
  margin: -49px auto 0;
  padding: 98px 0 50px;
  background: #e2f7f1;
  border-radius: 35px;
  position: relative;
  z-index: 0;
}
#top-health .worries-list::before, #top-health .worries-list::after {
  content: "";
  display: block;
  position: absolute;
  bottom: 0;
  z-index: -1;
}
#top-health .worries-list::before {
  width: 239px;
  height: 314px;
  background: url(../img/top/worries-l.png) no-repeat left bottom/contain;
  left: -65px;
}
#top-health .worries-list::after {
  width: 240px;
  height: 335px;
  background: url(../img/top/worries-r.png) no-repeat right bottom/contain;
  right: -65px;
}
#top-health .worries-list-item {
  display: flex;
  width: 100%;
  max-width: 480px;
  background: #fff;
  padding: 9px;
  border-radius: 13px;
  font-family: "Zen Maru Gothic", sans-serif;
  font-weight: 700;
  font-style: normal;
  font-size: 2.2rem;
}
@media screen and (max-width: 768px) {
  #top-health .worries-list-item {
    font-size: 1.5rem;
  }
}
#top-health .worries-list-item {
  letter-spacing: 0.08em;
  color: #333333;
  align-items: center;
  justify-content: center;
}
#top-health .worries-list-item::before {
  content: "";
  display: block;
  width: 26px;
  height: 19px;
  margin-right: 13px;
  background: url(../img/top/worries-check.png) no-repeat center/contain;
}
#top-health .worries-list-item .ac {
  color: #49c8a4;
}
#top-health .worries-list-item:nth-of-type(2n) {
  margin-left: 30px;
}
#top-health .worries-list-item:nth-of-type(n+3) {
  margin-top: 23px;
}

/* top-pro  PC
------------------------------------ */
#top-pro .pro-inner {
  position: relative;
}
#top-pro .pro-illu {
  position: absolute;
}
#top-pro .pro-illu01 {
  top: 158px;
  left: -130px;
}
#top-pro .pro-illu02 {
  top: 310px;
  left: calc(50% - 691px);
}
#top-pro .pro-box {
  width: 63.75%;
  max-width: 816px;
  margin: 70px 0 0 auto;
  text-align: center;
}
#top-pro .pro-box-ttl {
  width: 100%;
  max-width: 592px;
  margin: auto;
}
#top-pro .pro-list {
  margin: -35px auto 0;
  padding: 82px 15px 60px;
  border-radius: 35px;
  background: #fff;
}
#top-pro .pro-list-item {
  position: relative;
  z-index: 0;
}
#top-pro .pro-list-item::before {
  content: "";
  width: 168px;
  height: 57px;
  background: url(../img/top/point.png) no-repeat left top/contain;
  position: absolute;
  left: -72px;
  top: -25px;
}
#top-pro .pro-list-item:nth-of-type(n+2) {
  margin-top: 37px;
}
#top-pro .pro-list-box-ttl {
  width: 100%;
  max-width: 612px;
  margin: auto;
  padding: 18px 0 18px 55px;
  border-radius: 10px;
  text-align: left;
  border: 2px solid #4ec7ee;
  font-family: "Zen Maru Gothic", sans-serif;
  font-weight: 700;
  font-style: normal;
  font-size: 2.4rem;
}
@media screen and (max-width: 768px) {
  #top-pro .pro-list-box-ttl {
    font-size: 1.5rem;
  }
}
#top-pro .pro-list-box-ttl {
  letter-spacing: 0.08em;
  line-height: 1.4;
}
#top-pro .pro-list-box-ttl .ac {
  color: #4ec7ee;
  font-size: 2.8rem;
}
@media screen and (max-width: 768px) {
  #top-pro .pro-list-box-ttl .ac {
    font-size: 1.5rem;
  }
}
#top-pro .pro-list-box-ttl .ac {
  line-height: 1;
}
#top-pro .pro-list-num {
  width: 64px;
  height: 64px;
  border-radius: 999px;
  text-align: center;
  background: #5CDAB6;
  background: linear-gradient(90deg, rgb(92, 218, 182) 0%, rgb(78, 199, 238) 100%);
  font-family: "Zen Maru Gothic", sans-serif;
  font-weight: 700;
  font-style: normal;
  font-size: 3.4rem;
}
@media screen and (max-width: 768px) {
  #top-pro .pro-list-num {
    font-size: 1.7rem;
  }
}
#top-pro .pro-list-num {
  letter-spacing: 0.04em;
  color: #fff;
  line-height: 64px;
  position: absolute;
  top: -14px;
  left: 54px;
}
#top-pro .pro-btn {
  margin: 70px auto 0;
}

/* top-for  PC
------------------------------------ */
@media screen and (min-width: 768px) {
  #top-for .com-wave02 {
    padding-bottom: 124px;
  }
}
@media screen and (min-width: 768px) {
  #top-for .for-flx {
    width: 100%;
    height: 530px;
    position: relative;
  }
}
#top-for .for-flx {
  margin: 70px auto 0;
}
#top-for .for-txt {
  font-size: 1.8rem;
}
@media screen and (max-width: 768px) {
  #top-for .for-txt {
    font-size: 1.5rem;
  }
}
#top-for .for-txt {
  line-height: 2.2;
}
@media screen and (min-width: 768px) {
  #top-for .for-txt-box {
    max-width: 490px;
    padding-top: 20px;
  }
}
@media screen and (min-width: 768px) {
  #top-for .for-img {
    position: absolute;
    right: -248px;
    top: 0;
  }
}
#top-for .for-list {
  display: flex;
  max-width: 1280px;
  margin: 0 auto 0;
  padding: 70px 0 35px;
  border-radius: 35px;
  background: url(../img/top/for-list.png) no-repeat center/cover;
  justify-content: center;
  position: relative;
}
#top-for .for-list::before {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  border: 2px solid rgba(73, 200, 164, 0.3);
  border-radius: 35px;
  position: absolute;
  left: 20px;
  top: 20px;
  pointer-events: none;
}
#top-for .for-list-item:nth-of-type(n+2) {
  margin-left: 42px;
}
#top-for .for-list-ttl {
  margin: 18px auto 0;
  text-align: center;
  font-family: "Zen Maru Gothic", sans-serif;
  font-weight: 700;
  font-style: normal;
  font-size: 2.2rem;
}
@media screen and (max-width: 768px) {
  #top-for .for-list-ttl {
    font-size: 1.5rem;
  }
}
#top-for .for-list-ttl {
  letter-spacing: 0.08em;
  line-height: 1.54;
}
#top-for .for-list-ttl .ac {
  color: #49c8a4;
}
#top-for .for-list-txt {
  margin: 12px auto 0;
  text-align: center;
  font-family: "Zen Maru Gothic", sans-serif;
  font-weight: 500;
  font-style: normal;
  font-size: 1.4rem;
  line-height: 1.4;
}

/* top-bnr  PC
------------------------------------ */
#top-bnr .bnr-list-item {
  width: 100%;
  max-width: 514px;
}
#top-bnr .bnr-list-item:nth-of-type(n+3) {
  margin-top: 40px;
}
#top-bnr .bnr-list-link {
  display: block;
  padding: 35px 0 30px 133px;
  border: 2px solid #4ec7ee;
  border-radius: 30px;
}
#top-bnr .bnr-list-link01 {
  background: url(../img/top/bnr-arw.png) no-repeat calc(100% - 27px) center, url(../img/top/bnr01.png) no-repeat 29px center #fff;
}
#top-bnr .bnr-list-link02 {
  background: url(../img/top/bnr-arw.png) no-repeat calc(100% - 27px) center, url(../img/top/bnr02.png) no-repeat 29px center #fff;
}
#top-bnr .bnr-list-link03 {
  background: url(../img/top/bnr-arw.png) no-repeat calc(100% - 27px) center, url(../img/top/bnr03.png) no-repeat 29px center #fff;
}
#top-bnr .bnr-list-link04 {
  background: url(../img/top/bnr-arw.png) no-repeat calc(100% - 27px) center, url(../img/top/bnr04.png) no-repeat 29px center #fff;
}
#top-bnr .bnr-list-ttl {
  text-align: left;
  line-height: 1;
}
#top-bnr .bnr-list-ttl::after {
  content: none;
}
#top-bnr .bnr-list-ttl .en {
  font-size: 2rem;
}
@media screen and (max-width: 768px) {
  #top-bnr .bnr-list-ttl .en {
    font-size: 1.5rem;
  }
}
#top-bnr .bnr-list-ttl .ja {
  margin-top: 15px;
  font-size: 2.8rem;
}
@media screen and (max-width: 768px) {
  #top-bnr .bnr-list-ttl .ja {
    font-size: 1.5rem;
  }
}
#top-bnr .bnr-list-ttl .ja {
  color: #4ec7ee;
  line-height: 1;
}

/* com-contact  PC
------------------------------------ */
.com-contact {
  background: url(../img/top/contact-bg.jpg) no-repeat center/cover;
  position: relative;
}
.com-contact::before {
  content: "";
  display: block;
  width: calc(100% - 44px);
  height: calc(100% - 44px);
  margin: auto;
  border: 2px solid #fff;
  border-radius: 28px;
  position: absolute;
  left: 0;
  top: 0;
  right: 0;
  bottom: 0;
  pointer-events: none;
}
.com-contact .contact-ttl {
  text-align: center;
  color: #fff;
  line-height: 1;
}
.com-contact .contact-ttl .en {
  font-family: "Zen Maru Gothic", sans-serif;
  font-weight: 700;
  font-style: normal;
  font-size: 2.2rem;
}
@media screen and (max-width: 768px) {
  .com-contact .contact-ttl .en {
    font-size: 1.5rem;
  }
}
.com-contact .contact-ttl .en {
  letter-spacing: 0.14em;
}
.com-contact .contact-ttl .ja {
  display: inline-block;
  margin: 11px auto 0;
  padding: 10px 86px 0;
  background: url(../img/top/contact-l.png) no-repeat left bottom, url(../img/top/contact-r.png) no-repeat right bottom;
  font-family: "Zen Maru Gothic", sans-serif;
  font-weight: 700;
  font-style: normal;
  font-size: 4.4rem;
}
@media screen and (max-width: 768px) {
  .com-contact .contact-ttl .ja {
    font-size: 2.2rem;
  }
}
.com-contact .contact-ttl .ja {
  letter-spacing: 0.08em;
}
.com-contact .contact-ttl .ac {
  background: linear-gradient(transparent 50%, #49c8a4 50%);
  font-size: 5.4rem;
}
@media screen and (max-width: 768px) {
  .com-contact .contact-ttl .ac {
    font-size: 2.7rem;
  }
}
.com-contact .contact-list {
  margin: 61px auto 0;
}
@media screen and (min-width: 768px) {
  .com-contact .contact-list > li:nth-of-type(n+2) {
    margin-left: 38px;
  }
}
@media screen and (min-width: 768px) {
  .com-contact .contact-list-btn {
    width: 340px;
  }
}

/* top-recruit  PC
------------------------------------ */
#top-recruit {
  background: url(../img/top/recruit-lt.png) no-repeat calc(50% - 574px) 108px, url(../img/top/recruit-r.png) no-repeat calc(50% + 681px) 210px, url(../img/top/recruit-bottom.png) no-repeat center bottom, url(../img/top/recruit-bg.jpg) no-repeat center/cover;
}
@media screen and (min-width: 1921px) {
  #top-recruit {
    background-position-x: calc(50% - 574px), right, center, center;
    background-size: auto, auto, 100%, cover;
  }
}
#top-recruit .recruit-inner {
  position: relative;
}
#top-recruit .recruit-inner::before, #top-recruit .recruit-inner::after {
  content: "";
  display: block;
  position: absolute;
}
#top-recruit .recruit-inner::before {
  width: 251px;
  height: 394px;
  background: url(../img/top/recruit-l.png) no-repeat left bottom/contain;
  left: -114px;
  bottom: 0;
}
#top-recruit .recruit-inner::after {
  width: 240px;
  height: 388px;
  background: url(../img/top/recruit-rb.png) no-repeat right bottom/contain;
  right: -114px;
  bottom: 0;
}
#top-recruit .recruit-box {
  margin: 80px auto 0;
  padding: 50px 0 60px;
  border-radius: 35px;
  background: #fff;
}
#top-recruit .recruit-box-txt {
  line-height: 2.2;
}
@media screen and (min-width: 768px) {
  #top-recruit .recruit-box-txt {
    text-align: center;
  }
}
#top-recruit .recruit-box-btn {
  margin: 50px auto 0;
}

/* top-blog  PC
------------------------------------ */
#top-blog .blog-ttl::after {
  content: none;
}
#top-blog .blog-ttl .ja {
  margin-top: 15px;
}
#top-blog .blog-left {
  text-align: center;
}
#top-blog .blog-btn {
  width: 213px;
  margin-top: 41px;
}

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

  sub layout  all

========================================= */
/* service  PC
------------------------------------ */
#service .service-flx {
  margin: 56px auto 0;
}
#service .service-flx-img img {
  border-radius: 21px;
}
#service .service-flx-txt {
  width: 100%;
  max-width: 677px;
  margin-left: 60px;
}
#service .reason-txt {
  margin: 55px auto 0;
  text-align: center;
}
#service .reason-list {
  margin: 61px auto 0;
}
#service .reason-list-item {
  display: grid;
  place-content: center;
  width: 250px;
  height: 250px;
  padding: 149px 0 26px;
  text-align: center;
}
#service .reason-list-item01 {
  background: url(../img/service/reason-ico1.png) no-repeat center 39px #fff;
  border-radius: 999px;
}
#service .reason-list-item02 {
  background: url(../img/service/reason-ico2.png) no-repeat center 46px #fff;
  border-radius: 999px;
}
#service .reason-list-item03 {
  background: url(../img/service/reason-ico3.png) no-repeat center 50px #fff;
  border-radius: 999px;
}
#service .reason-list-item04 {
  background: url(../img/service/reason-ico4.png) no-repeat center 50px #fff;
  border-radius: 999px;
}
#service .reason-list-ttl {
  font-family: "Zen Maru Gothic", sans-serif;
  font-weight: 700;
  font-style: normal;
  font-size: 2rem;
  letter-spacing: 0.08em;
  line-height: 1.5;
}
#service .menu-list {
  margin: 72px auto 0;
}
#service .menu-list-item {
  padding: 30px 47px;
  background: #fff;
  border: 2px solid #4ec7ee;
  border-radius: 10px;
}
#service .menu-list-item:nth-of-type(n+2) {
  margin: 44px auto 0;
}
#service .menu-list-table {
  width: 100%;
  margin: 10px auto 0;
}
#service .menu-list-table tr:nth-of-type(n+2) {
  border-top: 1px solid #4ec7ee;
}
#service .menu-list-table th, #service .menu-list-table td {
  padding: 15px 10px;
  font-family: "Zen Maru Gothic", sans-serif;
  font-weight: 500;
  font-style: normal;
  font-size: 1.8rem;
}
@media screen and (max-width: 768px) {
  #service .menu-list-table th, #service .menu-list-table td {
    font-size: 1.5rem;
  }
}
#service .menu-list-table th, #service .menu-list-table td {
  letter-spacing: 0.08em;
  line-height: 1.5;
}
#service .menu-list-table td {
  text-align: right;
}
#service .menu-list-note {
  margin-top: 30px;
  text-align: right;
}
#service .com-about {
  max-width: 1080px;
  margin: 75px auto 0;
  padding: 36px 0 30px;
  border-radius: 35px;
  background: url(../img/service/com-about.png) no-repeat center/cover;
  text-align: center;
}
#service .com-about-ttl {
  display: inline-block;
  background: #5CDAB6;
  background: linear-gradient(90deg, rgb(92, 218, 182) 0%, rgb(78, 199, 238) 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  font-size: 2.6rem;
}
@media screen and (max-width: 768px) {
  #service .com-about-ttl {
    font-size: 1.5rem;
  }
}
#service .com-about-ttl {
  font-family: "Zen Maru Gothic", sans-serif;
  font-weight: 700;
  font-style: normal;
  line-height: 46px;
}
#service .com-about-ttl-box {
  max-width: 370px;
  margin: auto;
  background: #fff;
  border-radius: 999px;
  height: 46px;
}
#service .com-about-txt {
  margin: 25px auto 0;
}
#service .com-work {
  display: flex;
  margin: 58px auto 0;
  justify-content: space-between;
}
#service .com-work > li:nth-of-type(n+2) {
  position: relative;
}
#service .com-work > li:nth-of-type(n+2)::before {
  content: "";
  width: 16px;
  height: 42px;
  background: url(../img/service/flow-arw.png) no-repeat left center/contain;
  position: absolute;
  left: -28px;
  top: 52px;
}
#service .com-work-item {
  width: 100%;
  max-width: 240px;
  text-align: center;
}
#service .com-work-step {
  max-width: 158px;
  height: 28px;
  margin: auto;
  border-radius: 999px;
  background: #5CDAB6;
  background: linear-gradient(90deg, rgb(92, 218, 182) 0%, rgb(78, 199, 238) 100%);
  font-family: "Zen Maru Gothic", sans-serif;
  font-weight: 700;
  font-style: normal;
  font-size: 1.8rem;
}
@media screen and (max-width: 768px) {
  #service .com-work-step {
    font-size: 1.5rem;
  }
}
#service .com-work-step {
  color: #fff;
  letter-spacing: 0.08em;
  line-height: 28px;
  position: relative;
}
@media screen and (min-width: 768px) {
  #service .com-work-ttl {
    min-height: 122px;
  }
}
#service .com-work-ttl {
  margin: -16px auto 0;
  padding: 31px 0 21px;
  border-radius: 21px;
  background: #fff;
  font-family: "Zen Maru Gothic", sans-serif;
  font-weight: 700;
  font-style: normal;
  font-size: 2rem;
}
@media screen and (max-width: 768px) {
  #service .com-work-ttl {
    font-size: 1.5rem;
  }
}
#service .com-work-ttl {
  letter-spacing: 0.08em;
  line-height: 1.7;
}
#service .com-work-ttl-sm {
  padding: 51px 0 40px;
}
#service .start-list {
  margin: 72px auto 0;
  padding: 40px 0;
  border-radius: 10px;
  border: 2px solid #4ec7ee;
  background: #fff;
}
#service .start-list-item {
  width: 100%;
  max-width: 1080px;
  margin: auto;
  padding-left: 20px;
  font-family: "Zen Maru Gothic", sans-serif;
  font-weight: 500;
  font-style: normal;
  font-size: 1.8rem;
}
@media screen and (max-width: 768px) {
  #service .start-list-item {
    font-size: 1.5rem;
  }
}
#service .start-list-item {
  letter-spacing: 0.08em;
  line-height: 2;
  position: relative;
}
#service .start-list-item::before {
  content: "・";
  position: absolute;
  left: 0;
  top: 0;
}
#service .start-list-item .ac {
  color: #f95858;
}
#service .flow {
  background: #e6f9ff;
}

/* features  PC
------------------------------------ */
#features .features-list {
  margin: 70px auto 0;
  padding: 50px 0;
  background: #e2f7f1;
  border-radius: 35px;
}
#features .features-list-item {
  width: 100%;
}
@media screen and (min-width: 768px) {
  #features .features-list-item {
    max-width: 520px;
  }
  #features .features-list-item:nth-of-type(2n) {
    margin-left: 39px;
  }
  #features .features-list-item:nth-of-type(n+3) {
    margin-top: 30px;
  }
}
#features .features-list-point {
  width: 158px;
  height: 28px;
  margin-left: 26px;
  text-align: center;
  background: #5CDAB6;
  background: linear-gradient(90deg, rgb(92, 218, 182) 0%, rgb(78, 199, 238) 100%);
  border-radius: 999px;
  font-family: "Zen Maru Gothic", sans-serif;
  font-weight: 700;
  font-style: normal;
  font-size: 1.8rem;
}
@media screen and (max-width: 768px) {
  #features .features-list-point {
    font-size: 1.5rem;
  }
}
#features .features-list-point {
  letter-spacing: 0.08em;
  color: #fff;
  line-height: 28px;
  position: relative;
}
#features .features-list-box {
  margin-top: -20px;
  padding: 36px 23px 0;
  border-radius: 13px;
  background: #fff;
}
@media screen and (min-width: 768px) {
  #features .features-list-box {
    height: 210px;
  }
}
#features .features-list-ttl {
  font-family: "Zen Maru Gothic", sans-serif;
  font-weight: 700;
  font-style: normal;
  font-size: 2.2rem;
}
@media screen and (max-width: 768px) {
  #features .features-list-ttl {
    font-size: 1.5rem;
  }
}
#features .features-list-ttl {
  letter-spacing: 0.08em;
  line-height: 1.5;
  color: #49c8a4;
}
#features .features-list-txt {
  margin-top: 16px;
}
#features .features-list-txt .sm {
  font-size: 1.2rem;
  line-height: 1.2;
}
#features .ex-list {
  margin: 70px auto 0;
}
#features .ex-list-item {
  padding: 30px 50px;
}
#features .ex-list-item:nth-of-type(n+2) {
  margin: 55px auto 0;
}
#features .ex-ba {
  margin: 34px auto 0;
}
#features .ex-ba-item {
  background: url(../img/features/arw.png) no-repeat center 46%;
}
#features .ex-ba-item:nth-of-type(n+2) {
  margin: 26px auto 0;
  padding-top: 26px;
  border-top: 1px solid #4ec7ee;
}
#features .ex-ba-ttl {
  margin: 9px auto 0;
  text-align: center;
  font-family: "Zen Maru Gothic", sans-serif;
  font-weight: 700;
  font-style: normal;
  font-size: 2rem;
}
@media screen and (max-width: 768px) {
  #features .ex-ba-ttl {
    font-size: 1.5rem;
  }
}
#features .ex-ba-ttl {
  letter-spacing: 0.08em;
  color: #4ec7ee;
  line-height: 1;
}
#features .ex-voice {
  margin: 40px auto 0;
}
#features .ex-voice-item {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
}
#features .ex-voice-item:nth-of-type(n+2) {
  margin: 23px auto 0;
  padding-top: 33px;
  border-top: 1px solid #4ec7ee;
}
#features .ex-voice-con {
  width: 100%;
}
@media screen and (min-width: 768px) {
  #features .ex-voice-con {
    max-width: 630px;
  }
}
#features .ex-voice-ttl {
  font-family: "Zen Maru Gothic", sans-serif;
  font-weight: 700;
  font-style: normal;
  font-size: 2.2rem;
}
@media screen and (max-width: 768px) {
  #features .ex-voice-ttl {
    font-size: 1.5rem;
  }
}
#features .ex-voice-ttl {
  letter-spacing: 0.08em;
  color: #49c8a4;
  line-height: 1.5;
}
#features .ex-voice-txt {
  margin-top: 20px;
}
#features .ex-movie {
  margin: 38px auto 0;
}
#features .ex-movie-item {
  width: 100%;
}
@media screen and (min-width: 768px) {
  #features .ex-movie-item {
    max-width: 470px;
  }
  #features .ex-movie-item:nth-of-type(n+3) {
    margin-top: 34px;
  }
}
#features .ex-movie-frame {
  width: 100%;
  height: 0;
  padding-top: 56.25%;
  position: relative;
}
#features .ex-btn {
  margin: 41px auto 0;
}
#features .faq-list {
  margin: 72px auto 0;
  padding: 33px 50px;
}
#features .faq-list-item:nth-of-type(n+2) {
  margin: 20px auto 0;
  padding-top: 30px;
  border-top: 1px solid #4ec7ee;
}
#features .faq-list-ttl {
  display: flex;
  align-items: flex-start;
}
#features .faq-list-ttl::before {
  content: "Q. ";
  margin-right: 10px;
  flex-shrink: 0;
}
#features .faq-list-txt {
  margin: 18px auto 0;
}

/* information  PC
------------------------------------ */
#information .creating-flx {
  margin: 66px auto 0;
}
@media screen and (min-width: 768px) {
  #information .creating-txt {
    max-width: 650px;
  }
}
#information .creating-txt {
  margin-left: 64px;
}
#information .creating-img img {
  border-radius: 21px;
}
#information .basic-box {
  margin: 70px auto 0;
  padding: 20px 50px;
  border-radius: 35px;
  background: #fff;
}

/* recruit  PC
------------------------------------ */
#recruit .recruit-txt {
  margin: 55px auto 0;
}
@media screen and (min-width: 768px) {
  #recruit .recruit-txt {
    text-align: center;
  }
}
@media screen and (min-width: 768px) {
  #recruit .partner {
    background-position-y: 57px, 267px;
  }
}
#recruit .partner-flx {
  margin-top: 70px;
}
#recruit .partner-img img {
  border-radius: 21px;
}
#recruit .partner-txt {
  width: 100%;
}
@media screen and (min-width: 768px) {
  #recruit .partner-txt {
    max-width: 640px;
    margin-left: 64px;
  }
}
#recruit .partner-list {
  max-width: 1080px;
  margin: 85px auto 0;
}
#recruit .partner-list-item:nth-of-type(n+2) {
  margin: 66px auto 0;
}
#recruit .partner-list-item-center {
  text-align: center;
}
#recruit .partner-list-con {
  display: inline-block;
  margin: 20px auto 0;
}
#recruit .partner-list-con li {
  padding-left: 23px;
  font-family: "Zen Maru Gothic", sans-serif;
  font-weight: 500;
  font-style: normal;
  font-size: 1.8rem;
}
@media screen and (max-width: 768px) {
  #recruit .partner-list-con li {
    font-size: 1.5rem;
  }
}
#recruit .partner-list-con li {
  letter-spacing: 0.08em;
  line-height: 1.5;
  position: relative;
  text-align: left;
}
#recruit .partner-list-con li::before {
  content: "・";
  position: absolute;
  left: 0;
  top: 0;
}
#recruit .partner-list-con li:nth-of-type(n+2) {
  margin-top: 13px;
}
#recruit .com-box {
  padding: 30px 50px;
}
#recruit .com-table {
  margin: 16px auto 0;
}
@media screen and (min-width: 768px) {
  #recruit .com-table th {
    width: 220px;
  }
}
#recruit .staff-flx {
  margin-top: 72px;
}
#recruit .staff-img img {
  border-radius: 21px;
}
#recruit .staff-txt {
  width: 100%;
}
@media screen and (min-width: 768px) {
  #recruit .staff-txt {
    max-width: 644px;
    margin-left: 59px;
  }
}
#recruit .staff-box {
  max-width: 1080px;
  margin: 100px auto 0;
}
#recruit .staff-btn {
  max-width: 538px;
  margin: 130px auto 0;
  background-color: #49c8a4;
}
#recruit .staff .com-wave02 {
  background-image: url(../img/recruit/wave.png);
}

/* news  PC
------------------------------------ */
#news .com-box {
  padding: 50px;
}
#news .com-news-ttl {
  font-size: 2.3rem;
}
@media screen and (max-width: 768px) {
  #news .com-news-ttl {
    font-size: 1.5rem;
  }
}
#news .com-news-img img {
  border-radius: 20px;
}
#news .detail-tag {
  margin: 20px auto 0;
}

/* site  PC
------------------------------------ */
#site .site-box {
  padding: 20px;
}

/* contact  PC
------------------------------------ */
#contact .breadcrumb {
  background: url(../img/service/sv-bg.png) no-repeat center bottom/cover;
}
#contact .breadcrumb .bread-inner {
  padding-top: 10px;
  padding-bottom: 10px;
  position: static;
}
#contact .calendar-inner {
  padding-bottom: 0;
}
#contact .calendar-wrap {
  max-width: 900px;
  margin: 50px auto 0;
}/*# sourceMappingURL=all.css.map */