@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: 30px;
  }
}

.marker {
  position: relative;
  z-index: 1;
}
.marker::before {
  display: block;
  width: 100%;
  height: 14px;
  background: rgba(220, 42, 5, 0.2);
  border-radius: 5.5px;
  position: absolute;
  bottom: 0;
  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: 110px 0 130px;
  }
}

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

/*  共通パーツ
------------------------------------ */
.com-tel {
  padding-left: 27px;
  background: url(../img/top/f-tel.png) no-repeat left 60%;
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 900;
  font-style: normal;
  font-size: 4rem;
}
@media screen and (max-width: 768px) {
  .com-tel {
    font-size: 2rem;
  }
}
.com-tel {
  letter-spacing: 0;
  line-height: 1;
}

.com-box {
  border: 2px solid #a9a9a9;
  border-radius: 10px;
  background: #fff;
}

.com-bg {
  background: url(../img/ptn/ptn.png) repeat left top;
}

.news-post {
  width: 100%;
  border-top: 1px solid #1a1a1a;
  border-bottom: 1px solid #1a1a1a;
}
.news-post-item:nth-of-type(n+2) {
  border-top: 1px solid #1a1a1a;
}
.news-post-link {
  display: flex;
  padding: 30px 0 23px 30px;
}
.news-post-time {
  display: block;
  margin-right: 35px;
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 900;
  font-style: normal;
  font-size: 1.6rem;
}
@media screen and (max-width: 768px) {
  .news-post-time {
    font-size: 1.5rem;
  }
}
.news-post-time {
  letter-spacing: 0.06em;
  line-height: 1;
  flex-shrink: 0;
}
.news-post-contents {
  width: 100%;
}
.news-post-tag {
  display: flex;
  align-items: flex-start;
  flex-wrap: wrap;
  line-height: 1.1;
}
.news-post-tag li:nth-of-type(n+2) {
  margin-left: 10px;
  padding-left: 10px;
  border-left: 1px solid;
}
.news-post-tag-txt {
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 500;
  font-style: normal;
  font-size: 1.4rem;
}
@media screen and (max-width: 768px) {
  .news-post-tag-txt {
    font-size: 1.5rem;
  }
}
.news-post-tag-txt {
  letter-spacing: 0.04em;
  color: #a7a7a7;
  line-height: 1.2;
}
.news-post-ttl {
  margin-top: 12px;
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 500;
  font-style: normal;
  font-size: 1.6rem;
}
@media screen and (max-width: 768px) {
  .news-post-ttl {
    font-size: 1.5rem;
  }
}
.news-post-ttl {
  letter-spacing: 0.04em;
  line-height: 1.6;
}
.news-post-time, .news-post-tag-txt, .news-post-ttl {
  transition: all 0.3s ease;
}

.com-tag {
  display: flex;
  margin: 45px auto 0;
  justify-content: center;
  flex-wrap: wrap;
}
.com-tag-item {
  margin: 0 20px 20px 0;
}
.com-tag-link {
  display: block;
  padding: 5px 20px;
  background: #1a1a1a;
  text-align: center;
  border-radius: 20px;
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-style: normal;
  color: #fff;
  font-size: 2rem;
}
@media screen and (max-width: 768px) {
  .com-tag-link {
    font-size: 1.5rem;
  }
}
.com-tag-link {
  letter-spacing: 0.04em;
  line-height: 1.5;
}
.com-tag-link.current {
  background-color: #dc2a05;
}

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

  main layout  all

========================================= */
/* com-reserve  PC
------------------------------------ */
.com-reserve {
  background: url(../img/top/contact-bg.png) no-repeat center/cover;
}
.com-reserve .reserve-box {
  padding: 38px 20px;
  border-radius: 10px;
  background: url(../img/top/contact-box.jpg) no-repeat center/cover;
  position: relative;
}
.com-reserve .reserve-box::before {
  display: block;
  width: 406px;
  height: 439px;
  background: url(../img/top/contact-img.png) no-repeat right top/contain;
  position: absolute;
  right: -77px;
  bottom: 0;
  content: "";
}
.com-reserve .reserve-ttl {
  padding: 0 18px;
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 900;
  font-style: normal;
  font-size: 4.4rem;
}
@media screen and (max-width: 768px) {
  .com-reserve .reserve-ttl {
    font-size: 2.2rem;
  }
}
.com-reserve .reserve-ttl {
  letter-spacing: 0.08em;
  color: #fff;
  line-height: 1;
  font-style: italic;
}
.com-reserve .reserve-ttl .area {
  display: inline-block;
  padding: 7px 15px;
  border-radius: 8px;
  background: #fff;
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 900;
  font-style: normal;
  font-size: 5.2rem;
}
@media screen and (max-width: 768px) {
  .com-reserve .reserve-ttl .area {
    font-size: 2.6rem;
  }
}
.com-reserve .reserve-ttl .area {
  letter-spacing: 0.08em;
  color: #dc2a05;
  text-shadow: 0px 4px 2px rgba(0, 0, 0, 0.17);
  font-style: italic;
}
.com-reserve .reserve-ttl .area:last-of-type {
  margin-right: 7px;
}
.com-reserve .reserve-ttl .lg {
  padding-right: 11px;
  font-size: 4.4rem;
}
@media screen and (max-width: 768px) {
  .com-reserve .reserve-ttl .lg {
    font-size: 2.2rem;
  }
}
.com-reserve .reserve-ttl .lg {
  line-height: 1.8;
  background: linear-gradient(transparent 50%, #c32200 50%);
}
.com-reserve .reserve-ttl .sm {
  font-size: 3.4rem;
}
@media screen and (max-width: 768px) {
  .com-reserve .reserve-ttl .sm {
    font-size: 1.7rem;
  }
}
.com-reserve .reserve-tel {
  margin: 26px auto 0;
  padding: 23px 30px;
  background: #fff;
  line-height: 1;
}
.com-reserve .reserve-tel-txt {
  padding: 5px 30px;
  background: #1519aa;
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 900;
  font-style: normal;
  font-size: 2.4rem;
}
@media screen and (max-width: 768px) {
  .com-reserve .reserve-tel-txt {
    font-size: 1.5rem;
  }
}
.com-reserve .reserve-tel-txt {
  letter-spacing: 0;
  color: #fff;
}
.com-reserve .reserve-tel-txt:nth-of-type(n+2) {
  margin-left: 16px;
}
.com-reserve .reserve-tel-txt .lg {
  font-size: 3.4rem;
}
@media screen and (max-width: 768px) {
  .com-reserve .reserve-tel-txt .lg {
    font-size: 1.7rem;
  }
}
.com-reserve .reserve-tel-link {
  display: inline-block;
  margin-top: 24px;
  padding: 14px 67px 14px 130px;
  border-radius: 10px;
  background: url(../img/top/contact-tel.png) no-repeat 73px #f0f0f0;
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 900;
  font-style: normal;
  font-size: 8.3rem;
}
@media screen and (max-width: 768px) {
  .com-reserve .reserve-tel-link {
    font-size: 4.15rem;
  }
}
.com-reserve .reserve-tel-link {
  letter-spacing: 0;
}
.com-reserve02 {
  background-image: url(../img/top/contact02-bg.png);
}
.com-reserve02 .reserve-box {
  background-image: url(../img/top/contact02-box.png);
}
.com-reserve02 .reserve-ttl .area {
  color: #1519aa;
}
.com-reserve02 .reserve-ttl .lg {
  background: linear-gradient(transparent 50%, #1519aa 50%);
}
.com-reserve02 .reserve-tel-txt {
  background-color: #dc2a05;
}
.com-reserve02 .reserve-tel-link {
  background-image: url(../img/top/contact02-tel.png);
}

/* top-worries  PC
------------------------------------ */
#top-worries .worries-inner {
  position: relative;
  z-index: 0;
}
#top-worries .worries-inner::before {
  content: "";
  display: block;
  width: 687px;
  height: 886px;
  background: url(../img/top/worries-img.png) no-repeat left bottom/contain;
  position: absolute;
  left: -281px;
  bottom: 0;
  z-index: -1;
}
#top-worries .worries-con {
  max-width: 890px;
  margin-left: auto;
}
#top-worries .worries-ttl {
  padding: 0 50px;
  background: url(../img/top/worries-ttl-l.png) no-repeat left bottom, url(../img/top/worries-ttl-r.png) no-repeat right bottom;
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 900;
  font-style: normal;
  font-size: 5.6rem;
}
@media screen and (max-width: 768px) {
  #top-worries .worries-ttl {
    font-size: 2.8rem;
  }
}
#top-worries .worries-ttl {
  font-style: italic;
  letter-spacing: 0;
  line-height: 1;
  text-shadow: rgb(255, 255, 255) 5px 0px 0px, rgb(255, 255, 255) 4.90033px 0.993347px 0px, rgb(255, 255, 255) 4.60531px 1.94709px 0px, rgb(255, 255, 255) 4.12668px 2.82321px 0px, rgb(255, 255, 255) 3.48353px 3.58678px 0px, rgb(255, 255, 255) 2.70151px 4.20736px 0px, rgb(255, 255, 255) 1.81179px 4.6602px 0px, rgb(255, 255, 255) 0.849836px 4.92725px 0px, rgb(255, 255, 255) -0.145998px 4.99787px 0px, rgb(255, 255, 255) -1.13601px 4.86924px 0px, rgb(255, 255, 255) -2.08073px 4.54649px 0px, rgb(255, 255, 255) -2.94251px 4.04248px 0px, rgb(255, 255, 255) -3.68697px 3.37732px 0px, rgb(255, 255, 255) -4.28444px 2.57751px 0px, rgb(255, 255, 255) -4.71111px 1.67494px 0px, rgb(255, 255, 255) -4.94996px 0.7056px 0px, rgb(255, 255, 255) -4.99147px -0.291871px 0px, rgb(255, 255, 255) -4.83399px -1.27771px 0px, rgb(255, 255, 255) -4.48379px -2.2126px 0px, rgb(255, 255, 255) -3.95484px -3.05929px 0px, rgb(255, 255, 255) -3.26822px -3.78401px 0px, rgb(255, 255, 255) -2.4513px -4.35788px 0px, rgb(255, 255, 255) -1.53666px -4.75801px 0px, rgb(255, 255, 255) -0.560763px -4.96845px 0px, rgb(255, 255, 255) 0.437495px -4.98082px 0px, rgb(255, 255, 255) 1.41831px -4.79462px 0px, rgb(255, 255, 255) 2.34258px -4.41727px 0px, rgb(255, 255, 255) 3.17346px -3.86382px 0px, rgb(255, 255, 255) 3.87783px -3.15633px 0px, rgb(255, 255, 255) 4.4276px -2.32301px 0px, rgb(255, 255, 255) 4.80085px -1.39708px 0px, rgb(255, 255, 255) 4.98271px -0.415447px 0px, 0px 9px 2px rgba(0, 0, 0, 0.17);
}
#top-worries .worries-ttl .ac {
  color: #1519aa;
}
#top-worries .worries-list {
  margin-top: 62px;
}
#top-worries .worries-list-item {
  display: flex;
  width: 100%;
  max-width: 420px;
  height: 210px;
  border-radius: 10px;
  border: 6px solid #dc2a05;
  text-align: center;
  justify-content: center;
  align-items: center;
}
#top-worries .worries-list-item:nth-of-type(n+3) {
  margin-top: 40px;
}
#top-worries .worries-list-item01 {
  background: url(../img/top/worries-list01.jpg) no-repeat center/cover;
}
#top-worries .worries-list-item02 {
  background: url(../img/top/worries-list02.jpg) no-repeat center/cover;
}
#top-worries .worries-list-item03 {
  background: url(../img/top/worries-list03.jpg) no-repeat center/cover;
}
#top-worries .worries-list-item04 {
  background: url(../img/top/worries-list04.jpg) no-repeat center/cover;
}
#top-worries .worries-list-ttl {
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 900;
  font-style: normal;
  font-size: 3.4rem;
}
@media screen and (max-width: 768px) {
  #top-worries .worries-list-ttl {
    font-size: 1.7rem;
  }
}
#top-worries .worries-list-ttl {
  letter-spacing: 0;
  line-height: 1.3;
  color: #dc2a05;
  font-style: italic;
  text-shadow: rgb(255, 255, 255) 5px 0px 0px, rgb(255, 255, 255) 4.90033px 0.993347px 0px, rgb(255, 255, 255) 4.60531px 1.94709px 0px, rgb(255, 255, 255) 4.12668px 2.82321px 0px, rgb(255, 255, 255) 3.48353px 3.58678px 0px, rgb(255, 255, 255) 2.70151px 4.20736px 0px, rgb(255, 255, 255) 1.81179px 4.6602px 0px, rgb(255, 255, 255) 0.849836px 4.92725px 0px, rgb(255, 255, 255) -0.145998px 4.99787px 0px, rgb(255, 255, 255) -1.13601px 4.86924px 0px, rgb(255, 255, 255) -2.08073px 4.54649px 0px, rgb(255, 255, 255) -2.94251px 4.04248px 0px, rgb(255, 255, 255) -3.68697px 3.37732px 0px, rgb(255, 255, 255) -4.28444px 2.57751px 0px, rgb(255, 255, 255) -4.71111px 1.67494px 0px, rgb(255, 255, 255) -4.94996px 0.7056px 0px, rgb(255, 255, 255) -4.99147px -0.291871px 0px, rgb(255, 255, 255) -4.83399px -1.27771px 0px, rgb(255, 255, 255) -4.48379px -2.2126px 0px, rgb(255, 255, 255) -3.95484px -3.05929px 0px, rgb(255, 255, 255) -3.26822px -3.78401px 0px, rgb(255, 255, 255) -2.4513px -4.35788px 0px, rgb(255, 255, 255) -1.53666px -4.75801px 0px, rgb(255, 255, 255) -0.560763px -4.96845px 0px, rgb(255, 255, 255) 0.437495px -4.98082px 0px, rgb(255, 255, 255) 1.41831px -4.79462px 0px, rgb(255, 255, 255) 2.34258px -4.41727px 0px, rgb(255, 255, 255) 3.17346px -3.86382px 0px, rgb(255, 255, 255) 3.87783px -3.15633px 0px, rgb(255, 255, 255) 4.4276px -2.32301px 0px, rgb(255, 255, 255) 4.80085px -1.39708px 0px, rgb(255, 255, 255) 4.98271px -0.415447px 0px, 0px 9px 2px rgba(0, 0, 0, 0.17);
}
#top-worries .worries-list-ttl .lg {
  font-size: 5rem;
}
@media screen and (max-width: 768px) {
  #top-worries .worries-list-ttl .lg {
    font-size: 2.5rem;
  }
}

/* top-solution  PC
------------------------------------ */
#top-solution {
  background: url(../img/top/worries-fuki.png) no-repeat calc(50% - 4px) top, url(../img/top/solution-bg.jpg) no-repeat center top/cover;
}
#top-solution .solution-ttl {
  text-align: center;
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 900;
  font-style: normal;
  font-size: 6.6rem;
}
@media screen and (max-width: 768px) {
  #top-solution .solution-ttl {
    font-size: 3.3rem;
  }
}
#top-solution .solution-ttl {
  letter-spacing: 0;
  text-shadow: rgb(255, 255, 255) 5px 0px 0px, rgb(255, 255, 255) 4.90033px 0.993347px 0px, rgb(255, 255, 255) 4.60531px 1.94709px 0px, rgb(255, 255, 255) 4.12668px 2.82321px 0px, rgb(255, 255, 255) 3.48353px 3.58678px 0px, rgb(255, 255, 255) 2.70151px 4.20736px 0px, rgb(255, 255, 255) 1.81179px 4.6602px 0px, rgb(255, 255, 255) 0.849836px 4.92725px 0px, rgb(255, 255, 255) -0.145998px 4.99787px 0px, rgb(255, 255, 255) -1.13601px 4.86924px 0px, rgb(255, 255, 255) -2.08073px 4.54649px 0px, rgb(255, 255, 255) -2.94251px 4.04248px 0px, rgb(255, 255, 255) -3.68697px 3.37732px 0px, rgb(255, 255, 255) -4.28444px 2.57751px 0px, rgb(255, 255, 255) -4.71111px 1.67494px 0px, rgb(255, 255, 255) -4.94996px 0.7056px 0px, rgb(255, 255, 255) -4.99147px -0.291871px 0px, rgb(255, 255, 255) -4.83399px -1.27771px 0px, rgb(255, 255, 255) -4.48379px -2.2126px 0px, rgb(255, 255, 255) -3.95484px -3.05929px 0px, rgb(255, 255, 255) -3.26822px -3.78401px 0px, rgb(255, 255, 255) -2.4513px -4.35788px 0px, rgb(255, 255, 255) -1.53666px -4.75801px 0px, rgb(255, 255, 255) -0.560763px -4.96845px 0px, rgb(255, 255, 255) 0.437495px -4.98082px 0px, rgb(255, 255, 255) 1.41831px -4.79462px 0px, rgb(255, 255, 255) 2.34258px -4.41727px 0px, rgb(255, 255, 255) 3.17346px -3.86382px 0px, rgb(255, 255, 255) 3.87783px -3.15633px 0px, rgb(255, 255, 255) 4.4276px -2.32301px 0px, rgb(255, 255, 255) 4.80085px -1.39708px 0px, rgb(255, 255, 255) 4.98271px -0.415447px 0px, 0px 9px 2px rgba(0, 0, 0, 0.17);
  line-height: 1.7;
  font-style: italic;
}
#top-solution .solution-ttl .ac {
  color: #dc2a05;
  font-size: 7.4rem;
}
@media screen and (max-width: 768px) {
  #top-solution .solution-ttl .ac {
    font-size: 3.7rem;
  }
}
#top-solution .solution-ttl .ac {
  line-height: 1;
}
#top-solution .solution-ttl .num {
  font-size: 10.4rem;
}
@media screen and (max-width: 768px) {
  #top-solution .solution-ttl .num {
    font-size: 5.2rem;
  }
}
#top-solution .solution-box {
  margin: 45px auto 0;
  padding: 39px 0 23px;
}
#top-solution .solution-box-list-item {
  display: flex;
  height: 46px;
  padding: 0 47px;
  background: #1519aa;
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 900;
  font-style: normal;
  font-size: 2.8rem;
}
@media screen and (max-width: 768px) {
  #top-solution .solution-box-list-item {
    font-size: 1.5rem;
  }
}
#top-solution .solution-box-list-item {
  letter-spacing: 0;
  color: #fff;
  justify-content: center;
  align-items: center;
}
#top-solution .solution-box-list-item::before {
  content: "";
  display: block;
  width: 27px;
  height: 26px;
  margin-right: 8px;
  background: url(../img/top/solution-check.png) no-repeat left top/contain;
}
#top-solution .solution-box-list-item:nth-of-type(n+2) {
  margin-left: 33px;
}
#top-solution .solution-box-con {
  margin: 30px auto 0;
  padding-top: 23px;
  border-top: 1px solid #a9a9a9;
}
@media screen and (min-width: 768px) {
  #top-solution .solution-box-left {
    max-width: 515px;
  }
}
#top-solution .solution-box-btn {
  margin-top: 30px;
}
#top-solution .solution-box-map {
  margin-left: 36px;
}

/* top-service  PC
------------------------------------ */
#top-service .service-btn {
  margin: 45px auto 0;
}

.com-service {
  margin: 64px auto 0;
  padding: 20px;
  border-radius: 10px;
  background: url(../img/top/contact-box.jpg);
}
.com-service .service-box {
  padding: 33px 0 25px;
  text-align: center;
  background: #fff;
}
.com-service .service-ttl {
  display: flex;
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 900;
  font-style: normal;
  font-size: 3.8rem;
}
@media screen and (max-width: 768px) {
  .com-service .service-ttl {
    font-size: 1.9rem;
  }
}
.com-service .service-ttl {
  letter-spacing: 0.08em;
  line-height: 1;
  justify-content: center;
  align-items: center;
  font-style: italic;
}
.com-service .service-ttl .ac {
  padding: 8px 12px;
  color: #fff;
  border-radius: 10px;
  text-shadow: 0px 4px 2px rgba(0, 0, 0, 0.17);
}
.com-service .service-ttl .ac01 {
  background-color: #dc2a05;
}
.com-service .service-ttl .ac02 {
  margin-left: 6px;
  background-color: #1519aa;
}
.com-service .service-txt {
  margin: 14px auto 0;
  text-align: center;
  line-height: 1.77;
}
.com-service-list {
  margin: 50px auto 0;
}
.com-service-list > li {
  width: 100%;
}
@media screen and (min-width: 768px) {
  .com-service-list > li {
    max-width: 510px;
  }
  .com-service-list > li:nth-of-type(n+3) {
    margin-top: 18px;
  }
}
.com-service-list .service-list-ttl {
  margin-top: 12px;
  padding-left: 24px;
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-style: normal;
  font-size: 2.8rem;
}
@media screen and (max-width: 768px) {
  .com-service-list .service-list-ttl {
    font-size: 1.5rem;
  }
}
.com-service-list .service-list-ttl {
  letter-spacing: 0;
  line-height: 1.5;
  position: relative;
}
.com-service-list .service-list-ttl::before {
  content: "";
  display: block;
  width: 12px;
  height: 12px;
  background: #dc2a05;
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
}

/* top-staff  PC
------------------------------------ */
#top-staff .staff-ttl {
  max-width: 1080px;
  margin: auto;
  background: url(../img/top/read-ttl-l.png) no-repeat left bottom, url(../img/top/read-ttl-r.png) no-repeat right bottom;
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 900;
  font-style: normal;
  font-size: 5.8rem;
}
@media screen and (max-width: 768px) {
  #top-staff .staff-ttl {
    font-size: 2.9rem;
  }
}
#top-staff .staff-ttl {
  letter-spacing: 0;
  color: #fff;
  line-height: 1.56;
  font-style: italic;
  text-shadow: 0px 9px 2px rgba(0, 0, 0, 0.17);
}
#top-staff .staff-ttl .lg {
  font-size: 6.6rem;
}
@media screen and (max-width: 768px) {
  #top-staff .staff-ttl .lg {
    font-size: 3.3rem;
  }
}
#top-staff .staff-ttl-wrap {
  padding: 45px 0;
  text-align: center;
  background: #DC2A05;
  background: linear-gradient(180deg, rgb(220, 42, 5) 0%, rgb(171, 29, 0) 100%);
}
#top-staff .staff-bg {
  background: #e9e9e9;
}
#top-staff .staff-btn {
  margin: 80px auto 0;
}

.com-staff {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}
.com-staff-item {
  width: 100%;
  max-width: 510px;
}
@media screen and (min-width: 768px) {
  .com-staff-item:nth-of-type(n+3) {
    margin-top: 60px;
  }
}
.com-staff-img {
  width: 100%;
  height: 0;
  padding-top: 77.2%;
  position: relative;
}
.com-staff-ttl {
  margin: 12px auto 0;
  padding-bottom: 9px;
  border-bottom: 2px solid #dc2a05;
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-style: normal;
  font-size: 2.8rem;
}
@media screen and (max-width: 768px) {
  .com-staff-ttl {
    font-size: 1.5rem;
  }
}
.com-staff-ttl {
  letter-spacing: 0;
  line-height: 1.6;
}
.com-staff-txt {
  margin: 18px auto 0;
  white-space: pre-line;
}

/* top-faq  PC
------------------------------------ */
#top-faq .faq-btn {
  margin: 60px auto 0;
}
@media screen and (max-width: 767px) {
  #top-faq .faq-btn {
    margin-top: 30px;
  }
}

.com-faq {
  margin: 60px auto 0;
}
.com-faq-item:nth-of-type(n+2) {
  margin: 38px auto 0;
}
.com-faq-ttl {
  display: flex;
  background: #1519aa;
  align-items: center;
  text-align: center;
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 900;
  font-style: normal;
  font-size: 2.6rem;
}
@media screen and (max-width: 768px) {
  .com-faq-ttl {
    font-size: 1.5rem;
  }
}
.com-faq-ttl {
  letter-spacing: 0;
  color: #fff;
  line-height: 1.6;
}
.com-faq-ttl::before {
  content: "Q";
  display: block;
  width: 74px;
  height: 100%;
  line-height: 100%;
}
.com-faq-ttl .ttl {
  padding: 15px 25px;
  border-left: 1px solid #fff;
}
.com-faq-txt {
  padding: 19px 46px;
  background: #f4f4fe;
  white-space: pre-line;
}

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

  sub layout  all

========================================= */
/* guide  PC
------------------------------------ */
#guide .reason-list {
  margin: 64px auto 0;
}
#guide .reason-list-item {
  width: 100%;
  padding-top: 210px;
  padding-bottom: 29px;
  position: relative;
}
@media screen and (min-width: 768px) {
  #guide .reason-list-item {
    max-width: 520px;
    min-height: 500px;
  }
  #guide .reason-list-item:nth-of-type(n+3) {
    margin-top: 40px;
  }
}
#guide .reason-list-ico {
  margin: auto;
  text-align: center;
  position: absolute;
  top: 37px;
  left: 0;
  right: 0;
}
#guide .reason-list-ico03 {
  top: 32px;
}
#guide .reason-list-ico04 {
  top: 39px;
}
#guide .reason-list-ttl {
  text-align: center;
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 900;
  font-style: normal;
  font-size: 2.8rem;
}
@media screen and (max-width: 768px) {
  #guide .reason-list-ttl {
    font-size: 1.5rem;
  }
}
#guide .reason-list-ttl {
  letter-spacing: 0;
  line-height: 1.3;
}
#guide .reason-list-ttl .ac {
  color: #dc2a05;
  font-size: 3.6rem;
}
@media screen and (max-width: 768px) {
  #guide .reason-list-ttl .ac {
    font-size: 1.8rem;
  }
}
#guide .reason-list-ttl .ac {
  line-height: 1.2;
}
#guide .reason-list-txt {
  margin: 17px auto 0;
  border-top: 1px solid #a9a9a9;
  padding: 14px 30px 0;
  letter-spacing: 0;
}
#guide .reason-list-btn {
  margin: 20px auto 0;
}
#guide .flow-list {
  margin: 64px auto 0;
}
#guide .flow-list-item {
  padding: 20px;
  border-radius: 10px;
}
#guide .flow-list-item:nth-of-type(n+2) {
  margin: 27px auto 0;
}
#guide .flow-list-item01 {
  background: #DC2A05;
  background: linear-gradient(180deg, rgb(220, 42, 5) 0%, rgb(171, 29, 0) 100%);
}
#guide .flow-list-item02 {
  background: #1B1FCE;
  background: linear-gradient(180deg, rgb(27, 31, 206) 0%, rgb(9, 12, 144) 100%);
}
#guide .flow-list-item02 .flow-list-ttl .step {
  background-color: #1519aa;
}
#guide .flow-list-box {
  padding: 30px 0 35px;
  background: #fff;
}
#guide .flow-list-ttl {
  display: flex;
}
#guide .flow-list-ttl .step {
  width: 178px;
  height: 44px;
  padding-left: 25px;
  background: #dc2a05;
  clip-path: polygon(calc(100% - 12px) 0, 100% 50%, calc(100% - 12px) 100%, 0 100%, 0 0);
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 900;
  font-style: normal;
  font-size: 3rem;
}
@media screen and (max-width: 768px) {
  #guide .flow-list-ttl .step {
    font-size: 1.5rem;
  }
}
#guide .flow-list-ttl .step {
  letter-spacing: 0;
  line-height: 44px;
  color: #fff;
  font-style: italic;
}
#guide .flow-list-ttl .ttl {
  margin-left: 14px;
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 900;
  font-style: normal;
  font-size: 3.4rem;
}
@media screen and (max-width: 768px) {
  #guide .flow-list-ttl .ttl {
    font-size: 1.7rem;
  }
}
#guide .flow-list-ttl .ttl {
  letter-spacing: 0;
  line-height: 1.5;
  font-style: italic;
}
#guide .flow-list-txt {
  margin: 22px auto 0;
  padding: 13px 50px 0;
  border-top: 1px solid #a9a9a9;
}
#guide .flow-list-tel {
  display: flex;
  max-width: 942px;
  height: 60px;
  margin: 15px auto 0;
  background-color: #f1f1f1;
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 900;
  font-style: normal;
  font-size: 4rem;
}
@media screen and (max-width: 768px) {
  #guide .flow-list-tel {
    font-size: 2rem;
  }
}
#guide .flow-list-tel {
  letter-spacing: 0;
  line-height: 1;
  justify-content: center;
  align-items: center;
}
#guide .flow-list-tel::before {
  content: "";
  display: block;
  width: 20px;
  height: 27px;
  margin-right: 7px;
  background: url(../img/top/contact-tel.png) no-repeat left center/contain;
}

/* service  PC
------------------------------------ */
#service .service .service-list {
  margin: 64px auto 0;
}
#service .service .service-list-item {
  width: 100%;
}
@media screen and (min-width: 768px) {
  #service .service .service-list-item {
    max-width: 510px;
  }
  #service .service .service-list-item:nth-of-type(n+3) {
    margin-top: 70px;
  }
}
#service .service .service-list-ttl {
  display: flex;
  margin: 11px auto 0;
  padding-bottom: 10px;
  border-bottom: 2px solid #dc2a05;
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-style: normal;
  font-size: 2.8rem;
}
@media screen and (max-width: 768px) {
  #service .service .service-list-ttl {
    font-size: 1.5rem;
  }
}
#service .service .service-list-ttl {
  letter-spacing: 0;
  line-height: 1.5;
  align-items: center;
}
#service .service .service-list-ttl::before {
  content: "";
  display: block;
  width: 12px;
  height: 12px;
  margin-right: 11px;
  background: #dc2a05;
  flex-shrink: 0;
}
#service .service .service-list-txt {
  margin: 13px auto 0;
}
#service .com-service .service-ttl .sm {
  font-size: 2.8rem;
}
@media screen and (max-width: 768px) {
  #service .com-service .service-ttl .sm {
    font-size: 1.5rem;
  }
}
#service .com-service .service-ttl .sm {
  letter-spacing: -0.03em;
}

/* company  PC
------------------------------------ */
#company .com-staff {
  margin: 64px auto 0;
}
#company .company-box {
  margin: 64px auto 0;
  padding: 15px 0;
}

/* contact  PC
------------------------------------ */
#contact .contact-txt {
  margin: 60px auto 0;
  text-align: center;
}
#contact .contact-tel-link {
  display: flex;
  margin: 24px auto 0;
  padding: 10px;
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 900;
  font-style: normal;
  font-size: 8.3rem;
}
@media screen and (max-width: 768px) {
  #contact .contact-tel-link {
    font-size: 4.15rem;
  }
}
#contact .contact-tel-link {
  letter-spacing: 0;
  line-height: 1;
  justify-content: center;
  background-color: #ffffff;
  align-items: center;
}
#contact .contact-tel-link::before {
  content: "";
  display: block;
  width: 47px;
  height: 61px;
  margin-top: 5px;
  margin-right: 13px;
  background: url(../img/top/contact-tel.png) no-repeat center/contain;
}
#contact .contact-form-table {
  margin: 60px auto 0;
}
#contact .com-reserve {
  margin: 40px auto 0;
  padding: 22px 50px;
  background: #f4f4fe;
  line-height: 1;
}
#contact .com-reserve .reserve-tel-txt {
  width: 100%;
  max-width: 480px;
  text-align: center;
}

/* news  PC
------------------------------------ */
#news .com-box {
  padding: 50px;
}
#news .com-news-ttl {
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-style: normal;
}
#news .detail-flx {
  margin: 0;
}/*# sourceMappingURL=all.css.map */