@charset "UTF-8";
/*	cmn-color
------------------------------------ */
/*	transition,hover
------------------------------------ */
/*	media-screen
------------------------------------ */
/*	font
------------------------------------ */
/*	layout
------------------------------------ */
/*	font-size  cmn
------------------------------------ */
/************************************************

  SP layout

************************************************/
/*	cmn parts  SP
------------------------------------ */
.com-inner {
  padding: 50px 15px;
}

.com-md-inner {
  padding: 50px 15px;
}

.no-sb {
  margin: 30px auto 0;
}

.com-ib {
  display: inline;
}

.mb10 {
  margin-bottom: 10px;
}
.mb20 {
  margin-bottom: 20px;
}

.anchor-mp {
  margin: -80px auto 0;
  padding-top: 80px;
}

.com-txt-box p:nth-of-type(n+2) {
  margin-top: 15px;
}

/*  共通パーツ
------------------------------------ */
.com-tel {
  font-size: 1.8rem;
}
.com-tel .num {
  font-size: 2.5rem;
}

.com-bg03 {
  background-size: 15px;
}

.com-num {
  width: 30px;
  height: 30px;
  line-height: 30px;
}

.news-post-item:nth-of-type(n+2) {
  margin-top: 25px;
}
.news-post-time {
  margin-top: 2px;
  font-size: 1.2rem;
}
.news-post-tag {
  margin-left: 10px;
}
.news-post-tag-txt {
  font-size: 1.2rem;
}
.news-post-ttl {
  margin-top: 7px;
}

.com-tag {
  flex-direction: column;
  align-items: center;
}
.com-tag-item:nth-of-type(n+2) {
  margin: 25px auto 0;
}

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

  main  SP

========================================= */
/* top-worries  SP
------------------------------------ */
#top-worries .worries-bg-img {
  background-position: right top, left 53%, right bottom;
}
#top-worries .worries-inner {
  padding: 24% 15px;
}
#top-worries .worries-ttl {
  font-size: 1.7rem;
}
#top-worries .worries-ttl .lg {
  padding-top: 8px;
  background-position-x: 11px;
  background-size: 26px;
  font-size: 2.2rem;
}
#top-worries .worries-dl {
  display: block;
  margin-top: 25px;
  padding: 15px;
}
#top-worries .worries-dl-item:nth-of-type(n+2) {
  margin: 15px 0 0;
}
#top-worries .worries-dl dt {
  padding: 0 9px;
}
#top-worries .worries-list-box {
  height: auto;
  margin: auto;
  top: 50% !important;
  left: 0 !important;
  right: 0 !important;
  bottom: auto !important;
  transform: translateY(-50%);
  visibility: hidden;
  opacity: 0;
  transition: all 0.3s ease;
  z-index: 10;
}
#top-worries .worries-list-box.is-active {
  visibility: visible;
  opacity: 1;
}
#top-worries .worries-list-ttl {
  font-size: 1.8rem;
}
#top-worries .worries-list-link01 {
  left: 35.3%;
  top: 25.9%;
}
#top-worries .worries-list-link02 {
  top: 17.5%;
}
#top-worries .worries-list-link03 {
  top: 40.2%;
  right: 20.2%;
}
#top-worries .worries-list-link04 {
  left: 17.8%;
  bottom: 30.8%;
}
#top-worries .worries-list-link05 {
  bottom: 28.5%;
  right: 37.7%;
}
#top-worries .worries-list-link06 {
  right: 13%;
  bottom: 27.5%;
}
#top-worries .worries-house {
  width: 100%;
  height: 0;
  padding-top: 75%;
  background-position: center top;
  background-size: contain;
}
#top-worries .solution-ttl::before {
  width: 60px;
  height: 69px;
  right: -8px;
  bottom: -3px;
}
#top-worries .solution-txt-box {
  margin-top: 20px;
  text-align: left;
}

/* top-feature  SP
------------------------------------ */
#top-feature .feature-list {
  margin: 20px auto 0;
}
#top-feature .feature-list-num {
  top: -15px;
}
#top-feature .feature-list-item {
  padding: 34px 15px 20px;
}
#top-feature .feature-list-item-lg {
  padding: 30px 15px;
}
#top-feature .feature-list-item:nth-of-type(n+2) {
  margin: 35px auto 0;
}
#top-feature .feature-list-ttl {
  padding-bottom: 7px;
  font-size: 1.7rem;
}
#top-feature .feature-list-ttl-lg {
  padding-bottom: 9px;
  font-size: 1.8rem;
}
#top-feature .feature-list-txt {
  margin-top: 10px;
  text-align: left;
}
#top-feature .feature-list-txt01 {
  margin-top: 14px;
}

/* top-hikaku  SP
------------------------------------ */
#top-hikaku .hikaku-list {
  flex-direction: column;
  align-items: center;
}
#top-hikaku .hikaku-list li {
  height: 50px;
  padding: 0 15px;
  line-height: 50px;
}
#top-hikaku .hikaku-list li:nth-of-type(n+2) {
  margin: 50px auto 0;
}
#top-hikaku .hikaku-list li:nth-of-type(n+2)::before {
  display: block;
  width: 25px;
  height: 25px;
  margin: auto;
  top: -26px;
  left: 0;
  right: 0;
}
#top-hikaku .hikaku-list p {
  font-size: 1.8rem;
}
#top-hikaku .hikaku-box::before {
  width: 89px;
}
#top-hikaku .hikaku-table {
  white-space: nowrap;
}
#top-hikaku .hikaku-table::before {
  width: 254px;
  height: calc(100% + 30px);
  left: 146px;
}
#top-hikaku .hikaku-table-wrap {
  margin-top: 30px;
  overflow-x: auto;
}
#top-hikaku .hikaku-table .menu {
  width: 133px;
}
#top-hikaku .hikaku-table .lg01 {
  font-size: 4rem;
}
#top-hikaku .hikaku-table .lg02 {
  font-size: 3rem;
}
#top-hikaku .hikaku-table .ttl {
  width: auto;
  font-size: 1.7rem;
}
#top-hikaku .hikaku-table .ttl-lg {
  width: auto;
  font-size: 2rem;
}
#top-hikaku .hikaku-table .num-txt01 {
  font-size: 2rem;
  line-height: 1.5;
}
#top-hikaku .hikaku-table .num-txt02 {
  font-size: 1.8rem;
  line-height: 1.5;
}
#top-hikaku .hikaku-table th, #top-hikaku .hikaku-table td {
  padding: 0 26px;
}
#top-hikaku .hikaku-box {
  margin-top: 30px;
}
#top-hikaku .hikaku-box-inner {
  padding: 30px 15px;
}
#top-hikaku .other {
  margin-top: 71px;
}
#top-hikaku .other::before {
  width: 63px;
  height: 64px;
  right: 2px;
  bottom: -78px;
}
#top-hikaku .other-txt {
  margin-top: 20px;
  text-align: left;
}

/* top-voice  SP
------------------------------------ */
#top-voice .voice-list {
  margin-top: 30px;
  flex-direction: column;
  align-items: center;
}
#top-voice .voice-list-item {
  padding: 20px 15px;
}
#top-voice .voice-list-item:nth-of-type(n+2) {
  margin: 25px auto 0;
}
#top-voice .voice-list-ttl {
  font-size: 1.8rem;
}

/* top-staff  SP
------------------------------------ */
#top-staff .staff-list {
  margin-top: 30px;
  flex-direction: column;
  align-items: center;
}
#top-staff .staff-list-item:nth-of-type(n+2) {
  margin: 25px auto 0;
}
#top-staff .staff-list-ttl {
  margin-top: 10px;
}
#top-staff .staff-list-dl dt {
  font-size: 1.8rem;
}

/* top-service  SP
------------------------------------ */
#top-service .service-list {
  margin-top: 30px;
  flex-direction: column;
  align-items: center;
}
#top-service .service-list-item {
  width: 100%;
}
#top-service .service-list-item:nth-of-type(n+2) {
  margin: 25px auto 0;
}
#top-service .service-list-link {
  padding: 10px 10px 15px;
}
#top-service .service-list-ttl {
  width: 194px;
  background-size: 7px;
  margin-top: 15px;
  font-size: 1.8rem;
}

/* top-moru  SP
------------------------------------ */
#top-moru .moru-inner {
  padding-top: 20px;
}
#top-moru .moru-ttl {
  padding-top: 80px;
  background-size: 100px;
}
#top-moru .moru-list {
  margin-top: 20px;
}
#top-moru .moru-list li {
  width: 32%;
}
#top-moru .moru-txt {
  margin-top: 20px;
  text-align: left;
}

/* top-contact  SP
------------------------------------ */
#top-contact .contact-box-inner {
  padding: 30px 15px;
}
#top-contact .contact-dl {
  margin-top: 25px;
  padding: 10px;
  flex-direction: column;
  align-items: center;
}
#top-contact .contact-dl-item:nth-of-type(n+2) {
  margin: 10px auto 0;
}
#top-contact .contact-dl dt {
  width: 50px;
  height: 26px;
  font-size: 1.8rem;
  line-height: 26px;
}
#top-contact .contact-txt {
  margin-top: 20px;
}
#top-contact .contact-list {
  flex-direction: column;
  align-items: center;
}
#top-contact .contact-list-item:nth-of-type(n+2) {
  margin: 25px auto 0;
}
#top-contact .contact-worktime {
  margin-top: 5px;
}

/* top-news  SP
------------------------------------ */
#top-news .news-inner {
  display: block;
}
#top-news .news-left {
  display: flex;
  justify-content: space-between;
  align-items: center;
}
#top-news .news-btn {
  max-width: 134px;
  margin: 0;
  font-size: 1.3rem;
}
#top-news .news-post {
  margin: 30px auto 0;
}

/* top-company  SP
------------------------------------ */
#top-company .company-inner::before {
  width: 138px;
  height: 67px;
}
#top-company .company-table-wrap {
  margin-top: 20px;
}

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

sub layout  SP

========================================= */
/* guide  SP
------------------------------------ */
#guide .about-flx {
  margin-top: 25px;
  flex-direction: column-reverse;
  align-items: center;
}
#guide .about-txt-box {
  margin: 15px auto 0;
}
#guide .area {
  margin-top: 30px;
  padding: 20px;
  flex-direction: column-reverse;
  align-items: center;
}
#guide .area-img {
  margin: auto;
}
#guide .area-con {
  margin: 25px auto 0;
}
#guide .area-ttl {
  text-align: center;
}
#guide .flow-list {
  display: block;
  margin-top: 25px;
}
#guide .flow-list-item:nth-of-type(n+2) {
  margin-top: 35px;
}
#guide .flow-list-item:nth-of-type(n+2)::before {
  margin: auto;
  top: -25px;
  left: 0;
  right: 0;
  transform: rotate(90deg);
}
#guide .flow-list-con {
  display: flex;
  align-items: center;
}
#guide .flow-list-num {
  margin: 0;
  font-size: 2.2rem;
  flex-shrink: 0;
  line-height: 48px;
}
#guide .flow-list-ttl {
  width: 100%;
  height: 50px;
  padding: 0 0 0 10px;
  line-height: 50px;
}
#guide .service-list {
  margin-top: 30px;
  flex-direction: column;
  align-items: center;
}
#guide .service-list li:nth-of-type(n+2) {
  margin: 20px auto 0;
}
#guide .service-list-ttl {
  font-size: 1.8rem;
}
#guide .service-box {
  margin-top: 30px;
  padding: 20px 15px;
}
#guide .service-box-txt {
  text-align: left;
  margin-top: 15px;
}

/* about  SP
------------------------------------ */
#about .about-list {
  margin-top: 43px;
}
#about .about-list-item {
  padding: 34px 15px 20px;
}
#about .about-list-item:nth-of-type(n+2) {
  margin: 30px auto 0;
}
#about .about-list-ttl {
  font-size: 1.8rem;
}
#about .about-list-num {
  top: -17px;
}
#about .reco {
  margin-top: 50px;
}
#about .reco-ttl {
  padding: 5px 0;
}
#about .reco-flx {
  margin-top: 20px;
  flex-direction: column;
  align-items: center;
}
#about .reco-img {
  width: 70%;
  margin: auto;
}
#about .reco-con {
  margin: 15px auto 0;
}
#about .reco-dl {
  margin-top: 25px;
  padding: 15px 10px;
  border-width: 1px;
}
#about .reco-dl dt {
  width: 58px;
  height: 35px;
  line-height: 35px;
}
#about .reco-dl dd {
  line-height: 1.5;
}
#about .reco-dl dd .lg {
  font-size: 2rem;
}
#about .paint-flx {
  margin-top: 25px;
  flex-direction: column-reverse;
  align-items: center;
}
#about .paint-txt-box {
  margin: 20px auto 0;
}
#about .date-txt {
  margin-top: 15px;
  text-align: left;
}
#about .date-box {
  max-width: 320px;
  margin-top: 15px;
  padding: 20px 15px;
}
#about .date-list {
  display: block;
}
#about .date-list-item {
  margin: 12px auto 0;
}
#about .date-list-ttl {
  width: 156px !important;
}
#about .case-flx {
  flex-direction: column-reverse;
  align-items: center;
}
#about .case-con {
  margin: 20px auto 0;
}
#about .case-con-ttl {
  text-align: center;
  font-size: 1.8rem;
}
#about .feature {
  margin-top: 25px;
}
#about .feature-list {
  margin-top: 20px;
}
#about .feature-list-item {
  padding: 15px;
}
#about .feature-list-item:nth-of-type(n+2) {
  margin: 25px auto 0;
}
#about .feature-list-ttl {
  padding: 8px;
  font-size: 1.7rem;
}
#about .feature-list-detail li {
  width: 50%;
}
#about .price-list {
  margin-top: 30px;
  flex-direction: column;
  align-items: center;
}
#about .price-list li:nth-of-type(n+2) {
  margin: 25px auto 0;
}
#about .price-list-ttl {
  height: 50px;
  font-size: 1.8rem;
  line-height: 50px;
}

/* service  SP
------------------------------------ */
#service .service-list {
  margin-top: 25px;
}
#service .service-list-item:nth-of-type(n+2) {
  margin-top: 30px;
}
#service .service-con {
  margin-top: 15px;
}
#service .service-con li {
  padding: 15px;
  flex-direction: column-reverse;
  align-items: center;
}
#service .service-con li:nth-of-type(n+2) {
  margin-top: 25px;
}
#service .service-con-left {
  margin: 10px auto 0;
}
#service .service-con-ttl {
  text-align: center;
  font-size: 1.8rem;
}
#service .service-con-txt {
  margin-top: 11px;
}

/* other  SP
------------------------------------ */
#other .service-list-item:nth-of-type(n+2) {
  margin-top: 50px;
}
#other .service-con {
  margin-top: 20px;
}
#other .service-con li {
  padding: 20px;
}
#other .service-con li:nth-of-type(n+2) {
  margin: 25px auto 0;
}

/* works  SP
------------------------------------ */
#works .works-list {
  margin-top: 20px;
}
#works .works-list-item {
  width: 49%;
}
#works .works-list-item:nth-of-type(2n) {
  margin-left: 2%;
}
#works .works-list-item:nth-of-type(n+3) {
  margin-top: 6%;
}
#works .works-list-ttl {
  margin-top: 10px;
  padding: 6px 16px;
}
#works .works-list-ttl::before {
  left: 7px;
}
#works .detail-list li {
  width: 49%;
  padding-top: 38%;
}
#works .detail-list li:nth-of-type(2n) {
  margin-left: 2%;
}
#works .detail-list li:nth-of-type(n+3) {
  margin-top: 2%;
}/*# sourceMappingURL=style_sp.css.map */