* {
  -webkit-box-sizing: border-box;
  box-sizing: border-box
}

body {
  font-family: "M PLUS Rounded 1c","ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","メイリオ",Meiryo,Osaka,"ＭＳ Ｐゴシック","MS PGothic",sans-serif;
  overflow-x: hidden;
  scrollbar-width: none;
  color: #42210b
}

.inner {
  width: 100%;
  max-width: 960px;
  height: auto;
  margin: 0 auto
}

@media screen and (max-width: 768px) {
  .inner {
      width:100%
  }
}
@media screen and (max-width: 768px) {
  .inner {
      width:auto;
      height: auto
  }
}

.pc,.sp{display: none;}
@media screen and (min-width: 769px) {
  .pc {
      display: block;
  }
}
@media screen and (max-width: 768px) {
  .sp {
      display: block;
  }
}

.top #container {
  padding: 80px 0 0
}

@media screen and (max-width: 768px) {
  .top #container {
      padding:60px 0 0
  }
}

.loading {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%,-50%);
  transform: translate(-50%,-50%)
}

.top_news {
  background-color: #f1962c;
  padding: 5px 0;
  margin: 0 0 5px
}

@media screen and (max-width: 768px) {
  .top_news {
      padding:5px 10px
  }
}

.top_news .inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-transform: rotate(.028deg);
  transform: rotate(.028deg);
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center
}

.top_news .inner a {
  color: #42210b;
  font-size: 14px
}

.top_news .tBox {
  color: #fff;
  font-size: 20px;
  font-weight: 700
}

@media screen and (max-width: 768px) {
  .top_news .tBox {
      width:16%;
      font-size: 14px
  }
}

.top_news .lBox {
  width: 45%;
  background-color: #fff;
  color: #fff;
  border-radius: 50px;
  padding: 3px
}

@media screen and (max-width: 768px) {
  .top_news .lBox {
      width:84%
  }
}

.top_news .lBox .newsBox {
  display: none
}

.top_news .lBox .newsBox.slick-initialized {
  display: block
}

.top_news .lBox .newsBox .in {
  display: block;
  float: left;
  width: 420px
}

@media screen and (max-width: 768px) {
  .top_news .lBox .newsBox .in {
      width:280px
  }
}

.top_news .lBox .newsBox .in a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  padding: 1px 0 0
}

.top_news .lBox .newsBox .in a:after {
  content: " ";
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 6.5px 0 6.5px 10px;
  border-color: transparent transparent transparent #42210b
}

.top_news .lBox .newsBox .in a .icon {
  background-color: #ffa8a9;
  color: #fff;
  font-size: 10px;
  border-radius: 30px;
  width: 20%;
  text-align: center;
  margin: 0 10px 0 0
}

.top_news .lBox .newsBox .in a .icon1 {
  background-color: #5bb331
}

@media screen and (max-width: 768px) {
  .top_news .lBox .newsBox .in a .icon1 {
      display:none
  }
}

.top_news .lBox .newsBox .in a .tx {
  width: calc(78% - 1em);
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap
}

@media screen and (max-width: 768px) {
  .top_news .lBox .newsBox .in a .tx {
      width:95%;
      font-size: 14px
  }
}

.top_news .rBox {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  width: 45%;
  background-color: #fff;
  color: #fff;
  border-radius: 50px;
  padding: 4px 10px 4px 20px
}

@media screen and (max-width: 768px) {
  .top_news .rBox {
      display:none
  }
}

.top_news .rBox a {
  width: calc(100% -1em);
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap
}

.top_news .rBox a+div {
  margin: 4px 0 0;
  content: " ";
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 6.5px 0 6.5px 10px;
  border-color: transparent transparent transparent #42210b
}

.top_news .rBox_no {
  color: #42210b
}

.mv {
  position: relative;
  z-index: 2;
  margin: 0 0 30px
}

@media screen and (max-width: 768px) {
  .mv {
      height:auto;
      overflow: hidden
  }
}

.mv .petit_mainSlide {
  position: relative;
  width: clamp(700px,100%,960px);
  height: auto;
  margin: 0 auto;
  padding-top: 15px;
  padding-bottom: 0
}

@media screen and (max-width: 768px) {
  .mv .petit_mainSlide {
      width:clamp(200px,100%,500px);
      height: auto;
      padding-left: 10px;
      padding-right: 10px
  }

  .mv .petit_mainSlide>picture>* {
      display: block;
      max-width: 100%;
      margin-left: auto;
      margin-right: auto
  }
}

.mv .petit_mainSlide .slide {
  position: relative;
  text-align: center;
  width: 960px;
  height: 450px
}

@media screen and (max-width: 768px) {
  .mv .petit_mainSlide .slide {
      width:100%;
      height: 380px
  }
}

@media screen and (max-width: 768px) {
  .mv .petit_mainSlide .slide .mainimg {
      padding:0 5px;
      width: auto
  }
}

.mv .petit_mainSlide .slide .btnArea {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  width: 360px;
  position: absolute;
  right: 20px;
  bottom: 15px
}

.mv .petit_mainSlide .slide .btnArea a {
  width: 50%
}

@media screen and (max-width: 768px) {
  .mv .petit_mainSlide .slide .btnArea {
      width:140px;
      right: 10px;
      bottom: 23px
  }

  .mv .petit_mainSlide .slide .btnArea a {
      width: 48%
  }
}

.service_icon_area {
  background-color: #f1f1f1;
  padding: 20px 0 50px;
  margin: 20px 0 0;
  position: relative;
  overflow: hidden
}

@media screen and (max-width: 768px) {
  .service_icon_area {
      padding:20px 0
  }
}

.service_icon_area .service_icon_title {
  font-size: 20px;
  font-weight: 700;
  text-align: center;
  -webkit-transform: rotate(.028deg);
  transform: rotate(.028deg);
  padding: 0 0 20px
}

@media screen and (max-width: 768px) {
  .service_icon_area .service_icon_title {
      font-size:16px
  }
}

.service_icon_area .swiperIconSlidePc {
  display: block
}

@media screen and (max-width: 768px) {
  .service_icon_area .swiperIconSlidePc {
      display:none
  }
}

.service_icon_area .swiperIconSlideSp {
  display: none
}

@media screen and (max-width: 768px) {
  .service_icon_area .swiperIconSlideSp {
      display:block
  }
}

.service_icon_area .swiperIconSlidePc .swiper-pagination-bullet {
  margin: 0 15px !important;
  width: 10px;
  height: 10px
}

.service_icon_area .swiperIconSlidePc .swiper-pagination-bullet-active {
  background-color: #42210b
}

.service_icon_area .service_icon_wrapper_pc .swiper-slide,.service_icon_area .service_icon_wrapper_sp .swiper-slide {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center
}

.service_icon_area .service_icon_wrapper_pc .swiper-slide>*:not(:last-child),.service_icon_area .service_icon_wrapper_sp .swiper-slide>*:not(:last-child) {
  text-align: center;
  font-weight: 700;
  margin-right: 20px;
  font-size: 16px
}

.service_icon_area .swiper-button-next,.service_icon_area .swiper-button-prev {
  position: absolute;
  top: auto !important;
  bottom: 51px; /* アイコンの高さ（80px）÷2 - 矢印の高さ（30px）÷2 + wrapperの余白 = 45px をベースに微調整 */
  z-index: 100;
  width: 30px !important;
  height: 30px !important;
  background-size: 30px 30px !important;
}

.service_icon_area .swiper-button-next {
  right: 0;
  background-image: url(../images/service/arrow-r.webp)
}

.service_icon_area .swiper-button-next.swiper-button-disabled {
  background-image: url(../images/service/arrow-r_d.webp)
}

.service_icon_area .swiper-button-prev {
  left: 0;
  background-image: url(../images/service/arrow-l.webp)
}

.service_icon_area .swiper-button-prev.swiper-button-disabled {
  background-image: url(../images/service/arrow-l_d.webp)
}

.service_icon_area .swiper-button-prev:after,.service_icon_area .swiper-button-next:after {
  display: none !important
}

.staffbox {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 100vw;
  height: 100px;
  overflow: hidden
}

@media screen and (max-width: 768px) {
  .staffbox {
      height:90px
  }
}

.staffbox img {
  width: auto !important;
  max-width: none;
  height: 100%;
  margin-right: 10px
}

.staffbox img:nth-child(1) {
  -webkit-animation: slide1 100s -50s linear infinite;
  animation: slide1 100s -50s linear infinite
}

.staffbox img:nth-child(2) {
  -webkit-animation: slide2 100s linear infinite;
  animation: slide2 100s linear infinite
}

@-webkit-keyframes slide1 {
  0% {
      -webkit-transform: translateX(100%);
      transform: translateX(100%)
  }

  to {
      -webkit-transform: translateX(-100%);
      transform: translateX(-100%)
  }
}

@keyframes slide1 {
  0% {
      -webkit-transform: translateX(100%);
      transform: translateX(100%)
  }

  to {
      -webkit-transform: translateX(-100%);
      transform: translateX(-100%)
  }
}

@-webkit-keyframes slide2 {
  0% {
      -webkit-transform: translateX(0);
      transform: translateX(0)
  }

  to {
      -webkit-transform: translateX(-200%);
      transform: translateX(-200%)
  }
}

@keyframes slide2 {
  0% {
      -webkit-transform: translateX(0);
      transform: translateX(0)
  }

  to {
      -webkit-transform: translateX(-200%);
      transform: translateX(-200%)
  }
}

.floating,
.floating1 {
  -webkit-transition: .3s ease-in-out;
  transition: .3s ease-in-out;
  position: fixed;
  right: 0;
  top: 0;
  z-index: 10;
  background-color: #f06400;
  color: #fff;
  -ms-writing-mode: tb-rl;
  -webkit-writing-mode: vertical-rl;
  writing-mode: vertical-rl;
  -webkit-text-orientation: upright;
          text-orientation: upright;
  padding: 30px 14px;
  font-size: 14px;
  font-weight: 700;
  border-radius: 10px 0 0 10px
}

@media screen and (max-width: 768px) {
  .floating,
  .floating1 {
      display:none
  }
}

.floating:hover,
.floating1:hover {
  opacity: 1;
  color: #fff;
  padding: 30px 18px 30px 14px
}

.floating img,
.floating1 img {
  padding: 0 0 5px;
  width: 20px;
}

.floating1 {
  top: 100px
}

.dis {
  right: 0;
}

.dis .infoBox {
  -webkit-box-shadow: 0 0 2px rgba(0,0,0,.3);
  box-shadow: 0 0 2px rgba(0,0,0,.3);
}

.sp_cam_bnr {
  display: none;
}

@media screen and (max-width: 768px) {
  .sp_cam_bnr {
      display:block;
      position: fixed;
      bottom: 100px;
      right: 5px;
      z-index: 10;
  }
}

.titleBox {
  background: url(../images/common/bg1.webp) center center repeat;
  background-repeat: repeat-x;
  background-position: center top;
  text-align: center;
  font-size: 26px;
  font-weight: 700;
  color: #42210b;
  padding: 30px 20px 85px;
  margin: 0 0 50px
}

.no-webp .titleBox {
  background: url(../images/common/bg1.png) center center repeat
}

@media screen and (max-width: 768px) {
  .titleBox {
      background:url(../images/common/bg1_sp.webp) center center repeat;
      background-repeat: repeat-x;
      background-position: center top;
      padding: 0;
      margin: 0;
      margin-bottom: 30px;
      height: 140px
  }

  .no-webp .titleBox {
      background: url(../images/common/bg1_sp.png) center center repeat
  }
}

.titleBox .title {
  font-size: 35px;
  line-height: 1.35;
}

@media screen and (max-width: 768px) {
  .titleBox .title {
      font-size:20px;
  }
}

.titleBox .title span {
  color: #f06400
}

.titleBox .sub {
  padding: 5px 0 17px;
  line-height: 1
}

@media screen and (max-width: 768px) {
  .titleBox .sub {
      padding: 0;
      margin-bottom: 0.5em;
  }
}

.titleBox .sub span {
  font-size: 14px;
  color: #fff;
  border: 1px solid #fff;
  border-radius: 30px;
  padding: 3px 10px
}

@media screen and (max-width: 768px) {
  .titleBox .sub span {
      font-size:14px;
  }
}

@media screen and (max-width: 768px) {
  .smilegarden .titleBox .sub {
      padding-top:10px
  }
}

.titleBox2 {
  background: url(../images/common/bg4.webp) center center repeat;
  background-repeat: repeat-x;
  background-position: center top
}

.no-webp .titleBox2 {
  background: url(../images/common/bg4.png) center center repeat
}

@media screen and (max-width: 768px) {
  .titleBox2 {
      background:url(../images/common/bg4_sp.webp) center center repeat;
      background-repeat: repeat-x;
      background-position: center top
  }

  .no-webp .titleBox2 {
      background: url(../images/common/bg4_sp.png) center center repeat
  }
}

.titleBox2 .sub span {
  color: #f06400;
  border: 1px solid #f06400
}

.pageMain {
  padding: 80px 0 0
}

@media screen and (max-width: 768px) {
  .pageMain {
      padding:60px 0 0
  }
}

@media screen and (max-width: 768px) {
  .pageMain .titleBox {
      padding:20px 10px 30px;
      margin-bottom: 0;
  }
}

.hidden_sp {
  display: block
}

@media screen and (max-width: 768px) {
  .hidden_sp {
      display:none
  }
}

.swiperTwo {
  margin-left: auto;
  margin-right: auto;
  position: relative;
  overflow: hidden;
  list-style: none;
  padding: 0;
  z-index: 1
}

.bl_box {
  position: relative;
  -webkit-transform: rotate(.028deg);
  transform: rotate(.028deg);
  border-radius: 20px;
  font-size: 22px;
  font-weight: 700;
  text-align: center;
  -webkit-transition-duration: .3s;
  transition-duration: .3s;
  z-index: 1;
  margin-top: 45px;
  margin-bottom: 10px
}

@media screen and (max-width: 768px) {
  .bl_box {
      margin-top:10px
  }
}

.bl_box:before {
  content: "";
  display: block;
  width: 100%;
  padding-top: 100%
}

.bl_box img {
  position: absolute;
  bottom: 13%;
  left: 5%;
  width: 90%;
  height: auto
}

.bl_box a {
  text-decoration: none;
  position: absolute;
  top: 0;
  left: 0;
  padding: 15px 5px 0;
  display: block;
  color: #42210b;
  text-decoration: none !important;
  width: 100%;
  height: 100%;
  z-index: 3
}

@media screen and (max-width: 768px) {
  .bl_box a {
      padding:15px 5px 0;
      font-size: 18px;
      font-weight: 700
  }
}

.bl_box a:before {
  position: absolute;
  bottom: 20px;
  right: 20px;
  content: " ";
  display: block;
  width: 25px;
  height: 25px;
  border-radius: 25px;
  background-color: #f06400;
  z-index: 2;
  -webkit-transition: .3s ease-in-out;
  transition: .3s ease-in-out
}

@media screen and (max-width: 768px) {
  .bl_box a:before {
      bottom:10px;
      right: 10px
  }
}

.bl_box a:hover:before {
  right: 10px
}

.bl_box a:after {
  position: absolute;
  bottom: 28px;
  right: 29px;
  content: " ";
  display: block;
  width: 7px;
  height: 7px;
  border-top: solid 2px #fff;
  border-right: solid 2px #fff;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  z-index: 2;
  -webkit-transition: .3s ease-in-out;
  transition: .3s ease-in-out
}

@media screen and (max-width: 768px) {
  .bl_box a:after {
      bottom:18px;
      right: 19px
  }
}

.bl_box a:hover:after {
  right: 19px
}

.bl_box__zentai {
  background: url(../images/top/top2_img1.webp);
  background-repeat: no-repeat;
  background-position: center 88%;
  background-color: #e8f0c5;
  -webkit-box-shadow: 0 5px 0 #b0e1b7;
  box-shadow: 0 5px 0 #b0e1b7
}

@media screen and (max-width: 768px) {
  .bl_box__zentai {
      background-size:120px
  }
}

.bl_box__zentai:after,.bl_box__zentai a:before {
  background-color: #347800
}

.bl_box__zentai:hover {
  background-color: #d8e69c
}

.bl_box__gaikou {
  background: url(../images/top/top2_img2.webp);
  background-repeat: no-repeat;
  background-position: center 87%;
  background-color: #fff0c8;
  -webkit-box-shadow: 0 5px 0 #ffb2b2;
  box-shadow: 0 5px 0 #ffb2b2
}

@media screen and (max-width: 768px) {
  .bl_box__gaikou {
      background-size:75px
  }
}

.bl_box__gaikou:after,.bl_box__gaikou a:before {
  background-color: #f06400
}

.bl_box__gaikou:hover {
  background-color: #ffb3b3
}

.bl_box__exterior {
  background: url(../images/top/top2_img3.webp);
  background-repeat: no-repeat;
  background-position: center 90%;
  background-color: #d3edf9;
  -webkit-box-shadow: 0 5px 0 #8fd2ef;
  box-shadow: 0 5px 0 #8fd2ef
}

@media screen and (max-width: 768px) {
  .bl_box__exterior {
      background-size:111px
  }
}

.bl_box__exterior:after,.bl_box__exterior a:before {
  background-color: #0071bc
}

.bl_box__exterior:hover {
  background-color: #a6dbf3
}

.bl_box__zouen {
  background: url(../images/top/top2_img4.webp);
  background-repeat: no-repeat;
  background-position: center 80%;
  background-color: #e2dfef;
  -webkit-box-shadow: 0 5px 0 #a7a5df;
  box-shadow: 0 5px 0 #a7a5df
}

@media screen and (max-width: 768px) {
  .bl_box__zouen {
      background-size:92px;
      line-height: 150%
  }
}

.bl_box__zouen:after,.bl_box__zouen a:before {
  background-color: #5050c8
}

.bl_box__zouen:hover {
  background-color: #c3bdde
}

.bl_box__jinkou {
  background: url(../images/top/top2_img10.webp);
  background-repeat: no-repeat;
  background-position: center 70%;
  background-color: #ffe6c8;
  -webkit-box-shadow: 0 5px 0 rgba(255,90,50,.4);
  box-shadow: 0 5px 0 rgba(255,90,50,.4)
}

@media screen and (max-width: 768px) {
  .bl_box__jinkou {
      background-size:99px
  }
}

.bl_box__jinkou:after,.bl_box__jinkou a:before {
  background-color: #f15a3c
}

.bl_box__jinkou:hover {
  background-color: #ffcf95
}

@media screen and (max-width: 768px) {
  .bl_box__jinkou {
      background-size:99px
  }
}

.bl_box__bousou {
  background: url(../images/top/top2_img8.webp);
  background-repeat: no-repeat;
  background-position: center 80%;
  background-color: #dcf0e6;
  -webkit-box-shadow: 0 5px 0 #a3d8bc;
  box-shadow: 0 5px 0 #a3d8bc
}

@media screen and (max-width: 768px) {
  .bl_box__bousou {
      background-size:109px;
      line-height: 150%
  }
}

.bl_box__bousou:after {
  position: absolute;
  content: "";
  background-color: transparent;
  background: url(../images/top/top2_img9.webp) center center repeat;
  background-repeat: no-repeat;
  background-position: center;
  width: 26px;
  height: 26px;
  border-radius: 0;
  bottom: 20px;
  right: 20px;
  -webkit-transition: .3s ease-in-out;
  transition: .3s ease-in-out
}

.no-webp .bl_box__bousou:after {
  background: url(../images/top/top2_img9.png) center center repeat
}

@media screen and (max-width: 768px) {
  .bl_box__bousou:after {
      bottom:10px;
      right: 10px
  }
}

.bl_box__bousou:hover {
  background-color: #b8e1cd
}

.bl_box__bousou:hover:after {
  right: 10px
}

.bl_box__bousou a:after,.bl_box__bousou a:before {
  display: none
}

@media screen and (max-width: 768px) {
  .swiper-slide .bl_box {
      margin-top:45px
  }
}

.service.page #content a,.news.page #content .serviceBox_list a {
  text-decoration: none
}

@media screen and (max-width: 768px) {
  .service.page #content a,.news.page #content .serviceBox_list a {
      font-size:14px
  }
}

.bl_boxWrapper a {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column
}

.bl_boxWrapper a:before {
  position: absolute;
  top: 226px;
  right: 20px;
  content: " ";
  display: block;
  width: 25px;
  height: 25px;
  border-radius: 25px;
  background-color: #f06400;
  z-index: 2;
  -webkit-transition: .3s ease-in-out;
  transition: .3s ease-in-out
}

@media screen and (min-width: 769px) and (max-width:1022px) {
  .bl_boxWrapper a:before {
      top:177px;
      right: 10px
  }
}

@media screen and (max-width: 768px) {
  .bl_boxWrapper a:before {
      top:125px;
      right: 10px
  }
}

.bl_boxWrapper a:after {
  position: absolute;
  top: 234px;
  right: 29px;
  content: " ";
  display: block;
  width: 7px;
  height: 7px;
  border-top: solid 2px #fff;
  border-right: solid 2px #fff;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  z-index: 2;
  -webkit-transition: .3s ease-in-out;
  transition: .3s ease-in-out
}

@media screen and (min-width: 769px) and (max-width:1022px) {
  .bl_boxWrapper a:after {
      top:185px;
      right: 19px
  }
}

@media screen and (max-width: 768px) {
  .bl_boxWrapper a:after {
      top:132px;
      right: 19px
  }
}

.bl_boxWrapper a:hover:before {
  right: 10px
}

.bl_boxWrapper a:hover:after {
  right: 19px
}

.bl_boxWrapper .tx1 {
  margin-top: auto;
  margin-bottom: 10px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
  font-weight: 700
}

@media screen and (max-width: 768px) {
  .bl_boxWrapper .tx1 {
      font-size:16px
  }
}

.bl_boxWrapper .tx1 span {
  padding: 0 5px 0 0;
  -webkit-box-flex: 0;
  -ms-flex: 0 0 35px;
  flex: 0 0 35px
}

.bl_boxWrapper .tx1,.bl_boxWrapper .tx2 {
  color: #42210b !important;
  line-height: 1.6875 !important;
  text-decoration: none !important
}

.serviceBox_child .bl_boxWrapper .tx1 {
  font-size: 20px
}

@media screen and (max-width: 768px) {
  .serviceBox_child .bl_boxWrapper .tx1 {
      font-size:16px
  }
}

.bl_box__green {
  background-color: #fff;
  -webkit-box-shadow: 0 5px 0 #b0e1b7;
  box-shadow: 0 5px 0 #b0e1b7
}

.bl_box__green:after {
  background-color: #347800
}

#zentai .bl_boxWrapper a:before {
  background-color: #347800
}

.bl_box__pink {
  background-color: #fff;
  -webkit-box-shadow: 0 5px 0 #ffb2b2;
  box-shadow: 0 5px 0 #ffb2b2
}

.bl_box__pink:after {
  background-color: #f06400
}

#gaikou .bl_boxWrapper a:before {
  background-color: #f06400
}

.bl_box__blue {
  background-color: #fff;
  -webkit-box-shadow: 0 5px 0 #8fd2ef;
  box-shadow: 0 5px 0 #8fd2ef
}

.bl_box__blue:after {
  background-color: #0071bc
}

#exterior .bl_boxWrapper a:before {
  background-color: #0071bc
}

.bl_box__purple {
  background-color: #fff;
  -webkit-box-shadow: 0 5px 0 #a7a5df;
  box-shadow: 0 5px 0 #a7a5df
}

.bl_box__purple:after {
  background-color: #5050c8
}

#zouen .bl_boxWrapper a:before {
  background-color: #5050c8
}

.ly_boxCont__5_218 .bl_boxWrapper:nth-child(1) .bl_box img {
  bottom: 10%;
  left: 10%;
  width: 73%
}

.ly_boxCont__5_218 .bl_boxWrapper:nth-child(4) .bl_box img {
  bottom: 15%;
  left: 4%;
  width: 91%
}

.ly_boxCont__5_218 .bl_boxWrapper:nth-child(5) .bl_box img {
  bottom: 15%;
  left: 7%;
  width: 79%
}

.serviceBox_child .inBox2 {
  margin-top: 60px;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center
}

@media screen and (max-width: 768px) {
  .serviceBox_child .inBox2 {
      margin-top:50px
  }
}

.serviceBox_child .inBox2 .txBox_ttl {
  font-size: 26px;
  font-weight: 700
}

@media screen and (max-width: 768px) {
  .serviceBox_child .inBox2 .txBox_ttl {
      font-size:22px
  }
}

.serviceBox_child .inBox2 .tx {
  margin-top: 20px
}

@media screen and (max-width: 768px) {
  .serviceBox_child .inBox2 .tx {
      font-size:14px;
      margin-top: 10px
  }
}

.serviceBox_child .inBox2 .tx_priceMeta {
  margin-top: 20px;
  font-size: 18px;
  font-weight: 700
}

@media screen and (max-width: 768px) {
  .serviceBox_child .inBox2 .tx_priceMeta {
      margin-top:10px;
      margin-bottom: 10px
  }
}

.serviceBox_child .inBox2 .tx_priceMeta span {
  font-weight: 400;
  margin-left: 10px;
  font-size: 10px;
  background-color: #f0f0f0;
  border-radius: 10px;
  padding: 5px
}

.serviceBox_child .inBox2 .tx_priceBody {
  font-size: 45px;
  font-weight: 800
}

.serviceBox_child .inBox2 .tx_priceBody span {
  font-size: 26px;
  margin-left: 5px
}

.serviceBox_list .service_tx {
  margin-top: 60px;
  max-width: 800px;
  margin-left: auto;
  margin-right: auto
}

.serviceBox_list .service_tx+.bnr {
  text-align: center;
  margin-top: 20px
}

@media screen and (max-width: 768px) {
  .serviceBox_list .service_tx+.bnr {
      margin-top:0
  }
}

@media screen and (max-width: 768px) {
  .serviceBox_list.serviceBox_child .service_tx {
      margin-top:33px
  }
}

.reasonBox {
  padding: 50px 0 150px;
}

@media screen and (max-width: 768px) {
  .reasonBox {
      padding:35px 0 70px
  }
}

.reasonBox .left {
  padding: 100px 0 0
}

@media screen and (max-width: 768px) {
  .reasonBox .left {
      width:100%;
      padding: 0
  }
}

.reasonBox .left .txBox2,.reasonBox .left .txBox3 {
  opacity: 0;
  display: none
}

.reasonBox .left .tx {
  -webkit-transform: rotate(.028deg);
  transform: rotate(.028deg);
  font-size: clamp(16px,2.08062vw,26px);
  font-weight: 700;
  line-height: 180%
}

@media screen and (max-width: 768px) {
  .reasonBox .left .tx {
      font-size:15px;
      padding: 15px 15px 0;
      text-align: center
  }
}

.reasonBox .left .tx2 {
  -webkit-transform: rotate(.028deg);
  transform: rotate(.028deg);
  padding: 10px 0 0
}

@media screen and (max-width: 768px) {
  .reasonBox .left .tx2 {
      padding:10px 10px 0;
      font-size: 10px;
      text-align: center
  }
}

.reasonBox .left .btn {
  margin: 50px 0 0
}

@media screen and (max-width: 768px) {
  .reasonBox .left .btn {
      margin:30px auto 0
  }
}

.reasonBox .right {
  padding: 50px 0 0
}

@media screen and (max-width: 768px) {
  .reasonBox .right {
      width:100%
  }
}

.reasonBox .reason {
  background: url(../images/top/top3_img1.gif) no-repeat center;
  width: 375px;
  height: 330px;
  position: relative
}

@media screen and (max-width: 768px) {
  .reasonBox .reason {
      width:280px;
      height: 300px;
      margin: 0 auto;
      background-size: 100%
  }
}

.reasonBox .reason .reason_mainimg {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%,-50%);
  transform: translate(-50%,-50%);
  top: 65%
}

.reasonBox .reason .reason_mainimg .main2,.reasonBox .reason .reason_mainimg .main3 {
  opacity: 0;
  display: none
}

.reasonBox .reason .reason_rotbox {
  position: absolute;
  left: 54%;
  top: 50%;
  -webkit-transform: translate(-50%,-50%) rotate(180deg);
  transform: translate(-50%,-50%) rotate(180deg);
  width: 400px;
  height: 327px
}

@media screen and (max-width: 768px) {
  .reasonBox .reason .reason_rotbox {
      width:100%;
      height: 300px;
      left: 53%;
      -webkit-transform: translate(-50%,-40%) rotate(180deg);
      transform: translate(-50%,-40%) rotate(180deg)
  }
}

.reasonBox .reason .reason_rotbox .item {
  display: block;
  position: absolute;
  -webkit-transform: rotate(-180deg);
  transform: rotate(-180deg);
  width: 137px;
  height: 140px
}

@media screen and (max-width: 768px) {
  .reasonBox .reason .reason_rotbox .item {
      width:108px;
      height: 108px
  }

  .reasonBox .reason .reason_rotbox .item img {
      background-size: 100%
  }
}

.reasonBox .reason .reason_rotbox .item.active {
  -webkit-transform: rotate(-180deg);
  transform: rotate(-180deg)
}

.reasonBox .reason .reason_rotbox .item.transition {
  -webkit-transition: all .35s ease;
  transition: all .35s ease
}

.reasonBox .reason .reason_rotbox .item1 {
  background: url(../images/top/top3_img2_1.webp) center center repeat;
  background-repeat: no-repeat;
  background-size: 65px 99px
}

.no-webp .reasonBox .reason .reason_rotbox .item1 {
  background: url(../images/top/top3_img2_1.png) center center repeat
}

@media screen and (max-width: 768px) {
  .reasonBox .reason .reason_rotbox .item1 {
      background-size:50%
  }
}

.reasonBox .reason .reason_rotbox .item2 {
  background: url(../images/top/top3_img2_2.webp) center center repeat;
  background-repeat: no-repeat;
  background-size: 65px 99px
}

.no-webp .reasonBox .reason .reason_rotbox .item2 {
  background: url(../images/top/top3_img2_2.png) center center repeat
}

@media screen and (max-width: 768px) {
  .reasonBox .reason .reason_rotbox .item2 {
      background-size:50%
  }
}

.reasonBox .reason .reason_rotbox .item3 {
  background: url(../images/top/top3_img2_3.webp) center center repeat;
  background-repeat: no-repeat;
  background-size: 65px 99px
}

.no-webp .reasonBox .reason .reason_rotbox .item3 {
  background: url(../images/top/top3_img2_3.png) center center repeat
}

@media screen and (max-width: 768px) {
  .reasonBox .reason .reason_rotbox .item3 {
      background-size:50%
  }
}

.reasonBox .reason .reason_rotbox .item1.active {
  background: url(../images/top/top3_img3_1.webp) center center repeat;
  background-repeat: no-repeat;
  background-size: 130px 130px
}

.no-webp .reasonBox .reason .reason_rotbox .item1.active {
  background: url(../images/top/top3_img3_1.png) center center repeat
}

@media screen and (max-width: 768px) {
  .reasonBox .reason .reason_rotbox .item1.active {
      background-size:90%
  }
}

.reasonBox .reason .reason_rotbox .item2.active {
  background: url(../images/top/top3_img4_1.webp) center center repeat;
  background-repeat: no-repeat;
  background-size: 130px 130px
}

.no-webp .reasonBox .reason .reason_rotbox .item2.active {
  background: url(../images/top/top3_img4_1.png) center center repeat
}

@media screen and (max-width: 768px) {
  .reasonBox .reason .reason_rotbox .item2.active {
      background-size:90%
  }
}

.reasonBox .reason .reason_rotbox .item3.active {
  background: url(../images/top/top3_img5_1.webp) center center repeat;
  background-repeat: no-repeat;
  background-size: 130px 130px
}

.no-webp .reasonBox .reason .reason_rotbox .item3.active {
  background: url(../images/top/top3_img5_1.png) center center repeat
}

@media screen and (max-width: 768px) {
  .reasonBox .reason .reason_rotbox .item3.active {
      background-size:90%
  }
}

.reasonBox .reason .controls {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 10
}

.reasonBox .reason .controls .previous {
  position: absolute;
  top: 0;
  left: 0;
  width: 50%;
  height: 100%
}

.reasonBox .reason .controls .next {
  position: absolute;
  top: 0;
  right: 0;
  width: 50%;
  height: 100%
}

.reasonBox .reason .controls .previous:active,.reasonBox .reason .controls .next:active {
  outline: none
}

.reasonBox .reason .controls .previous:hover,.reasonBox .reason .controls .next:hover {
  outline: none
}

.reasonBox .reason .controls a:focus {
  outline: none
}

.sub_underMain {
  display: block;
  font-size: 21px;
  font-weight: 700;
  color: #42210b !important
}

@media screen and (max-width: 768px) {
  .sub_underMain {
      font-size:16px
  }
}

.newEntryBox {
  background-color: #f1962c;
  margin: 0;
  padding: 0 0 100px
}

.newEntryBox a {
  text-decoration: none !important
}

@media screen and (max-width: 768px) {
  .newEntryBox {
      margin:0;
      padding: 0 0 70px
  }
}

.newEntryBox .inBox {
  padding-bottom: 50px
}

.newEntryBox .inBox .inner {
  background-color: #fff;
  border-radius: 20px;
  padding: 50px;
  margin: 0 auto 50px
}

@media screen and (max-width: 768px) {
  .newEntryBox .inBox .inner {
      background-color:transparent;
      padding: 0 0 30px;
      border-radius: 0;
      margin: 0 auto
  }
}

.newEntryBox .inBox .in {
  margin: 20px 0 0;
  padding: 20px 0 0;
  border-top: 1px solid #42210b
}

.newEntryBox .inBox .in:first-child {
  margin: 0;
  padding: 0;
  border-top: none
}

@media screen and (max-width: 768px) {
  .newEntryBox .inBox .in:first-child {
      margin:0 0 20px
  }
}

@media screen and (max-width: 768px) {
  .newEntryBox .inBox .in {
      border-top:none;
      margin: 0 0 20px;
      padding: 0
  }
}

.newEntryBox .inBox .in a {
  -webkit-transform: rotate(.028deg);
  transform: rotate(.028deg);
  display: block
}

@media screen and (max-width: 768px) {
  .newEntryBox .inBox .in a {
      background-color:#fff;
      border-radius: 20px;
      padding: 30px 25px
  }
}

.newEntryBox .inBox .in a .info {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  font-size: 10px;
  color: #fff;
  padding: 0 0 10px
}

.newEntryBox .inBox .in a .info .icon {
  display: table-cell;
  color: #fff;
  text-align: center;
  border-radius: 10px;
  width: 100px;
  margin: 0 10px 0 0
}

@media screen and (max-width: 768px) {
  .newEntryBox .inBox .in a .info .icon {
      border-radius:60px
  }
}

.newEntryBox .inBox .in a .info .day {
  color: gray;
  padding: 0 0 0 20px
}

.newEntryBox .inBox .in a .info .icon1 {
  background-color: #5bb331
}

.newEntryBox .inBox .in a .info .icon2 {
  background-color: #28abd5
}

.newEntryBox .inBox .in a .info .icon3 {
  background-color: #f1962c
}

.newEntryBox .inBox .in a .info .icon4 {
  background-color: #f06400
}

.newEntryBox .inBox .in a .info .icon5 {
  background-color: #0b9378
}

.newEntryBox .inBox .in a .tx {
  font-size: 20px;
  color: #42210b;
  font-weight: 700;
  padding: 0 0 10px
}

@media screen and (max-width: 768px) {
  .newEntryBox .inBox .in a .tx {
      font-size:16px
  }
}

.newEntryBox .inBox .in a .tx .end {
  font-size: 13px;
  background-color: #e4e4e4;
  padding: 3px 10px;
  margin: 0 5px 0 0;
  border-radius: 10px
}

.newEntryBox .inBox .in a .tx2 {
  color: #42210b;
  line-height: 160%
}

@media screen and (max-width: 768px) {
  .newEntryBox .inBox .in a .tx2 {
      display:none
  }
}

.newEntryBox .btn {
  margin: 0 auto
}

.newEntryBox .btn:after {
  border-left: 8px solid #fff
}

.newEntryBox .btn:before {
  background-color: #42210b !important
}

.newEntryBox .btn a {
  background-color: #fff;
  color: #42210b !important
}

.top .point4_chi,.top .point5_chi,.top .point6_chi,.example .point1_chi,.example .point2_chi,.example .point3_chi {
  padding-left: 50px;
  padding-right: 50px
}

.top .point4_chi .close,.top .point5_chi .close,.top .point6_chi .close,.example .point1_chi .close,.example .point2_chi .close,.example .point3_chi .close {
  display: none
}

.top .point4_chi label,.top .point5_chi label,.top .point6_chi label,.example .point1_chi label,.example .point2_chi label,.example .point3_chi label {
  font-size: 16px
}

@media screen and (max-width: 768px) {
  .top .point4_chi label,.top .point5_chi label,.top .point6_chi label,.example .point1_chi label,.example .point2_chi label,.example .point3_chi label {
      font-size:14px
  }
}

.top .point4_chi label:hover,.top .point5_chi label:hover,.top .point6_chi label:hover,.example .point1_chi label:hover,.example .point2_chi label:hover,.example .point3_chi label:hover {
  cursor: pointer
}

.top .point4_chi input[type=checkbox]:disabled+span,.top .point5_chi input[type=checkbox]:disabled+span,.top .point6_chi input[type=checkbox]:disabled+span,.example .point1_chi input[type=checkbox]:disabled+span,.example .point2_chi input[type=checkbox]:disabled+span,.example .point3_chi input[type=checkbox]:disabled+span {
  color: #c8c8c8;
  cursor: not-allowed
}

@media screen and (max-width: 768px) {
  .top .point4_chi,.top .point5_chi,.top .point6_chi,.example .point1_chi,.example .point2_chi,.example .point3_chi {
      padding-left:30px;
      padding-right: 30px
  }

  .top .point4_chi .close,.top .point5_chi .close,.top .point6_chi .close,.example .point1_chi .close,.example .point2_chi .close,.example .point3_chi .close {
      display: block
  }
}

.storeSearch {
  padding-top: 30px;
  padding-bottom: 50px
}

.storeSearch_box {
  position: relative;
  background-color: #f06400;
  border: none;
  border-radius: 20px;
  padding: 30px 50px;
  color: #fff;
  width: 100%;
  max-width: none
}

@media screen and (max-width: 768px) {
  .storeSearch_box {
      padding:30px;
      width: 100%;
      max-width: 480px;
      margin-left: auto;
      margin-right: auto
  }
}

.storeSearch_box_ttl {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  font-size: 35px;
  font-weight: 700
}

.storeSearch_box_ttl span {
  font-size: 18px;
  font-weight: 700;
  padding: .3em .5em;
  border: 1px solid #fff;
  border-radius: 60px;
  display: inline-block;
  margin-right: 12px;
  margin-bottom: 0
}

@media screen and (max-width: 920px) and (min-width:769px) {
  .storeSearch_box_ttl span {
      margin-bottom:10px
  }
}

@media screen and (max-width: 768px) {
  .storeSearch_box_ttl span {
      font-size:clamp(10px,3.125vw,14px);
      padding: 0;
      border: none;
      margin-right: 0;
      margin-bottom: 0
  }
}

@media screen and (max-width: 920px) and (min-width:769px) {
  .storeSearch_box_ttl {
      -webkit-box-orient:vertical;
      -webkit-box-direction: normal;
      -ms-flex-direction: column;
      flex-direction: column;
      -webkit-box-align: start;
      -ms-flex-align: start;
      align-items: flex-start;
      font-size: 30px;
      margin-left: 0
  }
}

@media screen and (max-width: 768px) {
  .storeSearch_box_ttl {
      -webkit-box-orient:vertical;
      -webkit-box-direction: normal;
      -ms-flex-direction: column;
      flex-direction: column;
      -webkit-box-align: start;
      -ms-flex-align: start;
      align-items: flex-start;
      font-size: clamp(20px,6.25vw,30px);
      margin-left: 0
  }
}

.storeSearch_box_searchBtnWrapper {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  margin-top: 23px
}

.storeSearch_box_searchBtnWrapper>* {
  width: 31.39535%;
  cursor: pointer;
  -webkit-transition: .3s ease-in-out;
  transition: .3s ease-in-out
}

.storeSearch_box_searchBtnWrapper>*:hover {
  opacity: .8
}

@media screen and (max-width: 768px) {
  .storeSearch_box_searchBtnWrapper>* {
      width:29.93197%
  }
}

.storeSearch_box_contactBtnWrapper {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  margin-top: 33px
}

@media screen and (max-width: 768px) {
  .storeSearch_box_contactBtnWrapper {
      margin-top:25px;
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
      -ms-flex-direction: column;
      flex-direction: column
  }
}

.storeSearch_box_contactBtnWrapper .storeSearch_box_tel {
  width: 49.4186%
}

@media screen and (max-width: 768px) {
  .storeSearch_box_contactBtnWrapper .storeSearch_box_tel {
      width:100%
  }
}

.storeSearch_box_contactBtnWrapper .storeSearch_box_webBtn,.storeSearch_box_contactBtnWrapper .storeSearch_box_lineBtn {
  width: 22.09302%
}

@media screen and (max-width: 768px) {
  .storeSearch_box_contactBtnWrapper .storeSearch_box_webBtn,.storeSearch_box_contactBtnWrapper .storeSearch_box_lineBtn {
      width:100%;
      margin-top: 20px
  }
}

.storeSearch_box_contactBtnWrapper .storeSearch_box_tel,.storeSearch_box_contactBtnWrapper .storeSearch_box_webBtn,.storeSearch_box_contactBtnWrapper .storeSearch_box_lineBtn {
  cursor: pointer
}

.storeSearch_box_contactBtnWrapper .storeSearch_box_tel:hover,.storeSearch_box_contactBtnWrapper .storeSearch_box_webBtn:hover,.storeSearch_box_contactBtnWrapper .storeSearch_box_lineBtn:hover {
  opacity: .8
}

.storeSearch_box_count {
  position: absolute;
  top: 0;
  right: 0;
  display: -ms-grid;
  display: grid;
  width: 341px;
  -ms-grid-rows: 80px;
  grid-template-rows: 80px
}

@media screen and (max-width: 768px) {
  .storeSearch_box_count {
      top:-30px;
      right: 10px;
      width: 120px;
      -ms-grid-rows: 120px;
      grid-template-rows: 120px
  }
}

.storeSearch_box_count>* {
  -ms-grid-row: 1;
  -ms-grid-column: 1;
  grid-area: 1/1
}

.storeSearch_box_count .storeSearch_box_count_txtWrapper {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  color: #42210b;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  height: 100%
}

@media screen and (max-width: 768px) {
  .storeSearch_box_count .storeSearch_box_count_txtWrapper {
      -webkit-box-orient:vertical;
      -webkit-box-direction: normal;
      -ms-flex-direction: column;
      flex-direction: column
  }
}

.storeSearch_box_count .storeSearch_box_count_txtWrapper>*:nth-child(1),.storeSearch_box_count .storeSearch_box_count_txtWrapper>*:nth-child(3) {
  font-size: 35px;
  font-weight: 700
}

@media screen and (max-width: 768px) {
  .storeSearch_box_count .storeSearch_box_count_txtWrapper>*:nth-child(1),.storeSearch_box_count .storeSearch_box_count_txtWrapper>*:nth-child(3) {
      font-size:18px
  }
}

.storeSearch_box_count .storeSearch_box_count_txtWrapper>*:nth-child(2) {
  font-size: 68px;
  font-weight: 700
}

@media screen and (max-width: 768px) {
  .storeSearch_box_count .storeSearch_box_count_txtWrapper>*:nth-child(2) {
      font-size:47px;
      line-height: 1
  }
}

.storeSearch_group {
  line-height: 2
}

.storeSearch_group:nth-of-type(2),.storeSearch_group:nth-of-type(3) {
  margin-top: 40px
}

@media screen and (max-width: 768px) {
  .storeSearch_group:nth-of-type(2),.storeSearch_group:nth-of-type(3),.storeSearch_group:nth-of-type(4) {
      margin-top:30px
  }
}

.storeSearch_group_ttl {
  font-size: 20px;
  font-weight: 700
}

@media screen and (max-width: 768px) {
  .storeSearch_group_ttl {
      font-size:16px
  }
}

.storeSearch_groupWrapper {
  display: -ms-grid;
  display: grid;
  /* -ms-grid-columns: 1fr 1fr; */
  grid-template-columns: 1fr 1fr;
  /* -ms-grid-rows: (auto)[3]; */
  grid-template-rows: repeat(3,auto);
}

@media screen and (max-width: 768px) {
  .storeSearch_groupWrapper {
      /* -ms-grid-columns:1fr; */
      grid-template-columns: 1fr;
      /* -ms-grid-rows: (auto)[4]; */
      grid-template-rows: repeat(4,auto);
  }
}

.storeSearch_groupWrapper>.storeSearch_group:nth-of-type(1) {
  -ms-grid-column: 1;
  grid-column: 1;
  -ms-grid-row: 1;
  grid-row: 1
}

.storeSearch_groupWrapper>.storeSearch_group:nth-of-type(2) {
  -ms-grid-column: 1;
  grid-column: 1;
  -ms-grid-row: 2;
  grid-row: 2
}

.storeSearch_groupWrapper>.storeSearch_group:nth-of-type(3) {
  -ms-grid-column: 1;
  grid-column: 1;
  -ms-grid-row: 3;
  grid-row: 3
}

.storeSearch_groupWrapper>.storeSearch_group:nth-of-type(4) {
  -ms-grid-column: 2;
  grid-column: 2;
  grid-row: 1/-1
}

@media screen and (max-width: 768px) {
  .storeSearch_groupWrapper>.storeSearch_group:nth-of-type(4) {
      -ms-grid-column:1;
      grid-column: 1;
      -ms-grid-row: 4;
      grid-row: 4
  }
}

.storeSearch_btnGroup {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center
}

.storeSearch_btnGroup>*:last-child {
  margin-left: 30px
}

@media screen and (max-width: 768px) {
  .storeSearch_btnGroup>*:last-child {
      margin-left:0
  }
}

.storeSearch_btn {
  margin-top: 60px;
  color: #fff;
  min-width: 250px;
  padding: 18px;
  font-size: 16px;
  font-weight: 700;
  text-align: center;
  background-color: #f06400;
  border: none;
  border-radius: 60px;
  cursor: pointer;
  -webkit-transition: .3s ease-in-out;
  transition: .3s ease-in-out
}

.storeSearch_btn:hover {
  opacity: .8
}

@media screen and (max-width: 768px) {
  .storeSearch_btn {
      padding:15px;
      font-size: 14px
  }
}

.storeSearch_btn.storeSearch_btn--back {
  background-color: #42210b;
  display: block
}

@media screen and (max-width: 768px) {
  .storeSearch_btn.storeSearch_btn--back {
      display:none
  }
}

.storeSearch_btn.storeSearch_btn--search {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center
}

.storeSearch_btn.storeSearch_btn--search:before {
  display: block;
  content: url(../images/common/search.svg);
  width: 1em;
  height: 1.2em;
  margin-right: 1em
}

.storeSearchByPref_group {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  line-height: 2
}

.storeSearchByPref_group>p {
  -webkit-box-flex: 0;
  -ms-flex: 0 0 25%;
  flex: 0 0 25%
}

@media screen and (max-width: 768px) {
  .storeSearchByPref_group>p {
      -webkit-box-flex:0;
      -ms-flex: 0 0 50%;
      flex: 0 0 50%
  }
}

.storeSearchByPrice_group {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  line-height: 2
}

.storeSearchByPrice_group>p {
  -webkit-box-flex: 0;
  -ms-flex: 0 0 50%;
  flex: 0 0 50%
}

@media screen and (max-width: 768px) {
  .storeSearchByPrice_group>p {
      -webkit-box-flex:0;
      -ms-flex: 0 0 100%;
      flex: 0 0 100%
  }
}

.search_count {
  margin-top: 40px;
  text-align: center;
  font-size: 16px;
  font-weight: 700
}

@media screen and (max-width: 768px) {
  .search_count {
      margin-top:30px;
      font-size: 14px
  }
}

.search_count span {
  color: #f06400;
  font-size: 40px;
  font-weight: 700;
  margin-left: .3em
}

@media screen and (max-width: 768px) {
  .search_count span {
      font-size:24px
  }
}

.search_count+.storeSearch_btnGroup>.storeSearch_btn {
  margin-top: 30px
}

@media screen and (max-width: 768px) {
  .search_count+.storeSearch_btnGroup>.storeSearch_btn {
      margin-top:20px
  }
}

.star5_rating {
  position: relative;
  z-index: 0;
  display: inline-block;
  white-space: nowrap;
  color: #fff;
  -webkit-text-stroke: 1px #fa0;
  text-stroke: 1px #fa0;
  font-size: inherit
}

.star5_rating:before,.star5_rating:after {
  content: "★★★★★"
}

.star5_rating:after {
  position: absolute;
  z-index: 1;
  top: 0;
  left: 0;
  overflow: hidden;
  white-space: nowrap;
  color: #fa0
}

.star5_rating[data-rate="5"]:after {
  width: 100%
}

.star5_rating[data-rate="4.5"]:after {
  width: 90%
}

.star5_rating[data-rate="4"]:after {
  width: 80%
}

.star5_rating[data-rate="3.5"]:after {
  width: 70%
}

.star5_rating[data-rate="3"]:after {
  width: 60%
}

.star5_rating[data-rate="2.5"]:after {
  width: 50%
}

.star5_rating[data-rate="2"]:after {
  width: 40%
}

.star5_rating[data-rate="1.5"]:after {
  width: 30%
}

.star5_rating[data-rate="1"]:after {
  width: 20%
}

.star5_rating[data-rate="0.5"]:after {
  width: 10%
}

.star5_rating[data-rate="0"]:after {
  width: 0
}

.common_card {
  display: block;
  background-color: #f1f1f1;
  border-radius: 20px;
  width: 100%;
  max-width: 465px
}

@media screen and (max-width: 768px) {
  .common_card {
      max-width:354px
  }
}

.common_card_img {
  position: relative;
  width: 100%
}

.common_card_img:before {
  content: "";
  display: block;
  width: 100%;
  padding-top: 66.23656%
}

.common_card_img>img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover
}

.common_card_img .common_card_rating {
  position: absolute;
  bottom: 20px;
  left: 50%;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%)
}

.common_card_img .common_card_writer {
  position: absolute;
  bottom: 20px;
  right: 20px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  border-radius: 50px;
  background-color: #fff;
  max-width: 80%;
  padding: 5px;
  height: 40px
}

.common_card_img .common_card_writer .common_card_writer_img {
  -webkit-box-flex: 0;
  -ms-flex: 0 0 30px;
  flex: 0 0 30px;
  height: 30px
}

.common_card_img .common_card_writer .common_card_writer_img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover
}

.common_card_img .common_card_writer p {
  margin: 5px;
  color: #42210b;
  font-size: 12px;
  font-weight: 700
}

.common_card_rating {
  background-color: #fff;
  border-radius: 50px;
  padding: 0;
  min-width: 140px;
  border: none
}

.common_card_rating p {
  color: #42210b;
  font-size: 12px;
  font-weight: 700;
  text-align: center
}

.common_card_rating p span {
  margin-right: .5em
}

.common_card_body {
  padding: 30px
}

.common_card_body>*:not(:first-child) {
  margin-top: 20px
}

.common_card_body>.common_card_btn {
  margin-top: 30px
}

@media screen and (max-width: 768px) {
  .common_card_body>.common_card_btn {
      margin-top:20px
  }
}

.common_card_body p {
  padding: 0 !important;
  color: #42210b !important
}

@media screen and (max-width: 768px) {
  .common_card_body {
      padding:20px
  }
}

.common_card_entryDateWrapper {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center
}

.common_card_entryDateWrapper>p:last-child {
  margin-left: 1em
}

.common_card_entryDateWrapper>p {
  color: #f06400 !important;
  font-size: 10px
}

.common_card_ttl {
  color: #42210b;
  font-size: 18px;
  font-weight: 700;
  line-height: 1.66667;
  overflow: hidden;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2
}

@media screen and (max-width: 768px) {
  .common_card_ttl {
      font-size:16px
  }
}

.common_card_desc {
  font-size: 16px;
  line-height: 1.6875;
  padding: 0 !important;
  color: #42210b;
  overflow: hidden;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2
}

@media screen and (max-width: 768px) {
  .common_card_desc {
      font-size:14px
  }
}

.common_card_tagList {
  margin-top: 10px;
  margin-left: -10px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap
}

.common_card_tagList li {
  margin-top: 10px;
  margin-left: 10px;
  background-color: #fff;
  border-radius: 30px;
  padding: .5em .8em .5em 1.8em;
  font-size: 10px;
  color: #f06400;
  list-style: none;
  text-indent: -1em
}

@media screen and (max-width: 768px) {
  .common_card_tagList li {
      padding:0 .8em 0 1.8em
  }
}

.common_card_tagList li:before {
  content: "#"
}

.common_card_areaList {
  margin-top: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap
}

.common_card_areaList li {
  line-height: 2;
  font-size: 12px;
  color: #42210b;
  list-style: none
}

.common_card_areaList li:not(:first-child):before {
  content: " / "
}

.common_card_serviceList_ttl,.common_card_areaList_ttl {
  font-weight: 700
}

.common_card_serviceList .common_card_tagList {
  margin-top: 0
}

.common_card_btn {
  display: block;
  position: relative;
  width: 63.44086%;
  margin-left: auto;
  margin-right: auto;
  color: #fff;
  font-size: 16px;
  font-weight: 700;
  text-align: center;
  padding: 16px;
  border-radius: 60px;
  border: none;
  cursor: pointer;
  background-color: #f06400
}

@media screen and (max-width: 768px) {
  .common_card_btn {
      font-size:14px
  }
}

.common_card_btn:before {
  -webkit-transform: translate(-50%,-50%);
  transform: translate(-50%,-50%);
  content: " ";
  position: absolute;
  top: 50%;
  right: 10px;
  background-color: #fff;
  width: 20px;
  height: 20px;
  border-radius: 10px;
  z-index: 2
}

.common_card_btn:after {
  -webkit-transform: translate(-50%,-50%);
  transform: translate(-50%,-50%);
  content: " ";
  position: absolute;
  top: 50%;
  right: 20px;
  width: 0;
  height: 0;
  border-left: 8px solid #f06400;
  border-top: 6px solid transparent;
  border-bottom: 6px solid transparent;
  z-index: 3
}

.common_cardSliderSect {
  padding-top: 130px
}

@media screen and (max-width: 768px) {
  .common_cardSliderSect {
      padding-top:70px
  }
}

.swiperCommonCardOuter {
  position: relative;
  overflow: hidden
}

.swiperCommonCard {
  width: 100%;
  max-width: 465px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  overflow: visible !important
}

@media screen and (max-width: 768px) {
  .swiperCommonCard {
      max-width:354px !important
  }
}

.swiperCommonCard .swiper-button-next,.swiperCommonCard .swiper-button-prev {
  position: absolute;
  top: 50%;
  z-index: 100;
  width: 30px;
  height: 30px;
  background-size: 30px 30px;
  display: none
}

@media screen and (max-width: 768px) {
  .swiperCommonCard .swiper-button-next,.swiperCommonCard .swiper-button-prev {
      display:block
  }
}

.swiperCommonCard .swiper-button-next {
  right: 2%;
  background-image: url(../images/service/arrow-r.webp)
}

.swiperCommonCard .swiper-button-next.swiper-button-disabled {
  background-image: url(../images/service/arrow-r_d.webp)
}

.swiperCommonCard .swiper-button-prev {
  left: 2%;
  background-image: url(../images/service/arrow-l.webp)
}

.swiperCommonCard .swiper-button-prev.swiper-button-disabled {
  background-image: url(../images/service/arrow-l_d.webp)
}

.swiperCommonCard .swiper-button-prev:after,.swiperCommonCard .swiper-button-next:after {
  display: none !important
}

.bl_resTable {
  margin-top: 25px;
  border: 1px solid #42210b !important
}

@media screen and (max-width: 768px) {
  .bl_resTable {
      margin-top:20px
  }
}

.bl_resTable td {
  padding: 12px 20px;
  border: none;
  width: 50%
}

@media screen and (max-width: 768px) {
  .bl_resTable td {
      display:block;
      padding: 9px 20px
  }
}

.bl_resTable tr {
  border-bottom: .5px solid #42210b
}

.bl_resTable tr>*:last-child {
  border-left: .5px solid #42210b
}

@media screen and (max-width: 768px) {
  .bl_resTable tr>td {
      width:100%;
      text-align: center;
      font-size: 13px !important
  }

  .bl_resTable tr>td:first-child {
      background-color: #f06400 !important;
      color: #fff
  }
}

.bl_resTable thead {
  background-color: #f06400;
  color: #fff;
  border: none
}

@media screen and (max-width: 768px) {
  .bl_resTable thead {
      display:none
  }
}

.bl_resTable thead th {
  padding: 12px 20px;
  text-align: center;
  font-size: 16px;
  font-weight: 700
}

.bl_resTable tbody {
  background-color: #fff;
  text-align: left;
  font-size: 16px
}

figure.bl_imgWrapper {
  position: relative
}

figure.bl_imgWrapper figcaption {
  position: absolute;
  right: 0;
  bottom: -16px;
  font-size: 10px;
  color: #42210b
}

.bl_singleTableWrapper {
  margin-top: 17px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center
}

@media screen and (max-width: 768px) {
  .bl_singleTableWrapper {
      margin-top:10px;
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
      -ms-flex-direction: column;
      flex-direction: column
  }
}

.bl_singleTableWrapper>.bl_singleTable {
  width: calc((100% - 20px)/2)
}

@media screen and (max-width: 768px) {
  .bl_singleTableWrapper>.bl_singleTable {
      width:100%
  }

  .bl_singleTableWrapper>.bl_singleTable:last-child {
      border-top: none
  }
}

.bl_singleTableWrapper>*:last-child {
  margin-left: 20px
}

@media screen and (max-width: 768px) {
  .bl_singleTableWrapper>*:last-child {
      margin-left:0
  }
}

.bl_singleTable {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  border: 1px solid #42210b;
  padding: 0 !important
}

.bl_singleTable dt {
  width: 50%;
  font-size: 16px;
  background-color: #f06400;
  color: #fff;
  text-align: center;
  padding: 12px 20px;
  font-weight: 400
}

@media screen and (max-width: 768px) {
  .bl_singleTable dt {
      font-size:13px;
      padding: 7px 20px
  }
}

.bl_singleTable dd {
  width: 50%;
  font-size: 16px;
  background-color: #fff;
  color: #42210b;
  padding: 12px 20px
}

@media screen and (max-width: 768px) {
  .bl_singleTable dd {
      font-size:13px;
      padding: 7px 20px;
  }
}

.ly_slideGroupWrapper {
  position: relative;
}

.ly_slideGroupWrapper .swiper,
.ly_slideGroupWrapper .swiper-wrapper {
  position: static !important;
}

.ly_slideGroup {
  margin-top: 50px;
  max-width: 720px;
}
.ly_slideGroupWrapper .swiper-wrapper {
  -ms-flex-pack: distribute;
      justify-content: space-around;
}

@media screen and (max-width: 768px) {
  .ly_slideGroup {
      margin:0 calc(50% - 50vw) !important;
      width: 100vw !important;
      overflow: hidden !important;
  }
}

.bl_slideGroup {
  margin-top: 30px;
  .swiper-slide {
  }
}

.bl_slideGroup .bl_boxWrapper .bl_box {
  position: relative;
  -webkit-transform: none;
          transform: none;
  border-radius: 20px;
  margin-top: 0;
  margin-bottom: 15px;
  background-color: #fff;
  width: 220px;
  height: 220px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}

.bl_slideGroup .bl_boxWrapper .bl_box:before {
  content: none;
}

.bl_slideGroup .bl_boxWrapper .bl_box img {
  position: static;
  bottom: 0;
  left: 0;
  width: 90%;
  height: auto;
}
@media screen and (max-width:768px) {
  .bl_slideGroup {
    .swiper-slide {
      padding: 0 10%;
    }
  }
  .bl_slideGroup .bl_boxWrapper .bl_box {
    width: 200px;
    height: 200px;
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 20px;
  }
}


.bl_slideGroup .bl_boxWrapper .tx1 {
  margin-top: auto;
  margin-bottom: 10px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  font-weight: 700
}

.bl_slideGroup .bl_boxWrapper .tx1 span {
  padding: 0 5px 0 0
}

.bl_slideGroup .bl_boxWrapper .tx1,.bl_slideGroup .bl_boxWrapper .tx2 {
  color: #42210b !important;
  line-height: 1.6875 !important;
  text-decoration: none !important
}

.swiper-button-next,.swiper-button-prev {
  position: absolute !important;
  top: 155px !important;
  z-index: 100 !important;
  width: 50px !important;
  height: 50px !important;
  background-size: 50px 50px !important;
  background-repeat: no-repeat !important
}

@media screen and (max-width: 768px) {
  .swiper-button-next,.swiper-button-prev {
      top:122px !important;
      width: 40px !important;
      height: 40px !important;
      background-size: 40px 40px !important
  }
}

.swiper-button-next {
  right: 0 !important;
  background-image: url(../images/service/arrow-r.webp) !important
}

.swiper-button-next.swiper-button-disabled {
  background-image: url(../images/service/arrow-r_d.webp) !important
}

.swiper-button-prev {
  left: 0 !important;
  background-image: url(../images/service/arrow-l.webp) !important
}

.swiper-button-prev.swiper-button-disabled {
  background-image: url(../images/service/arrow-l_d.webp) !important
}

.swiper-button-prev:after,.swiper-button-next:after {
  display: none !important
}

.bl_box__lightBox {
  border: 1px solid #f0f0f0;
  border-radius: 20px;
  -webkit-box-shadow: 0 5px 0 rgba(0,0,0,.2);
  box-shadow: 0 5px 0 rgba(0,0,0,.2);
  cursor: pointer
}

.bl_box__lightBox:after {
  content: " ";
  display: block !important;
  position: absolute;
  border-radius: 0;
  bottom: 8px;
  right: 12px;
  width: 30px;
  height: 38px;
  background: url(../images/common/syurui_icon.webp) center center;
  background-repeat: no-repeat;
  background-size: 100%
}

.bl_box__lightBox:hover {
  border: 2px solid #f06400;
  -webkit-box-shadow: none;
  box-shadow: none
}

.el_lightBoxTtl {
  font-size: 16px;
  font-weight: 700;
  text-align: center;
  line-height: 1.3125
}

.bl_slideGroup .bl_boxWrapper .bl_box.bl_box__lightBox img {
  bottom: 18% !important;
  left: 15% !important;
  width: 150px;
  height: 150px;
  max-width: 100%;
  max-height: 100%;
  -o-object-fit: contain;
     object-fit: contain;
}
@media screen and (max-width: 768px) {
  .bl_slideGroup .bl_boxWrapper {
    .bl_box.bl_box__lightBox img {
        width: 110px;
        height: 110px;
      }
    .bl_box__lightBox:after {
      width: 22px;
      height: 28px;
    }
  }
}

.lightbox {
  display: none
}

.lightTx {
  display: none;
  position: fixed;
  top: 50%;
  left: 50%;
  background-color: #fff;
  border-radius: 20px;
  padding: 50px 0;
  width: 800px;
  z-index: 100;
  -webkit-transform: translate(-50%,-50%);
  transform: translate(-50%,-50%)
}

@media screen and (max-width: 768px) {
  .lightTx {
      width:90%;
      height: auto
  }

  .lightTx .lightbox {
      height: 100%;
      overflow: auto
  }
}

.lightTx .lightbox {
  display: block
}

.lightTx .inBox {
  position: relative;
  -webkit-transform: rotate(.028deg);
  transform: rotate(.028deg)
}

.lightTx .inBox .title {
  padding: 0 50px 20px;
  font-size: 20px;
  font-weight: 700
}

@media screen and (max-width: 768px) {
  .lightTx .inBox .title {
      font-size:16px;
      padding: 0 20px 20px
  }
}

.lightTx .inBox .title .red {
  color: #f06400
}

.lightTx .inBox .title .blue {
  color: #2f80c2
}

.lightTx .inBox .tx {
  padding: 0 50px
}

@media screen and (max-width: 768px) {
  .lightTx .inBox .tx {
      padding:0 20px
  }
}

.lightTx .inBox .tx p {
  padding: .5em 0;
  font-size: 16px;
  line-height: 1.6875
}

.lightTx .inBox .tx p span {
  color: #f06400
}

@media screen and (max-width: 768px) {
  .lightTx .inBox .tx p {
      font-size:14px
  }
}

.lightTx .inBox .txBox {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  border: 2px solid #42210b;
  padding: 0;
  margin: 0 50px
}

@media screen and (max-width: 768px) {
  .lightTx .inBox .txBox {
      margin:0 20px;
      border: none
  }
}

.lightTx .inBox .txBox .box {
  width: 50%
}

@media screen and (max-width: 768px) {
  .lightTx .inBox .txBox .box {
      width:100%;
      margin: 10px 0;
      border: 2px solid #42210b
  }
}

.lightTx .inBox .txBox .box .subTitle {
  background-color: #f06400;
  color: #fff;
  text-align: center;
  padding: 10px
}

.lightTx .inBox .txBox .box .subTitle span {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center
}

.lightTx .inBox .txBox .box .subTitle span:before {
  content: " ";
  display: inline-block;
  width: 10px;
  height: 10px;
  margin: 0 5px 0 0;
  border: 3px solid #fff;
  border-radius: 10px
}

.lightTx .inBox .txBox .box .tableTx {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  padding: 10px 20px 10px 40px;
  font-size: 14px;
  height: 60px
}

.lightTx .inBox .txBox .box .tableTx:nth-child(3) {
  border-top: 1px dotted #42210b;
  border-bottom: 1px dotted #42210b
}

.lightTx .inBox .txBox .box .tableTx:after {
  content: " ";
  display: block;
  position: absolute;
  top: 21px;
  left: 18px;
  width: 15px;
  height: 15px;
  border: 1px solid #42210b
}

.lightTx .inBox .txBox .box .tableTx:before {
  content: "";
  display: block;
  position: absolute;
  top: 20px;
  left: 20px;
  width: 15px;
  height: 5px;
  border-left: 3px solid #f06400;
  border-bottom: 3px solid #f06400;
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg)
}

.lightTx .inBox .txBox .box2 {
  border-left: 1px solid #42210b
}

.lightTx .inBox .txBox .box2 .subTitle {
  background-color: #2f80c2
}

.lightTx .inBox .txBox .box2 .subTitle span .clo {
  position: relative;
  display: inline-block;
  margin: -3px 20px 0 0
}

.lightTx .inBox .txBox .box2 .subTitle span .clo:after {
  position: absolute;
  top: 0;
  left: 0;
  content: " ";
  display: inline-block;
  content: "";
  width: 15px;
  height: 3px;
  background: #fff;
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg)
}

.lightTx .inBox .txBox .box2 .subTitle span .clo:before {
  position: absolute;
  top: 0;
  left: 0;
  content: " ";
  display: inline-block;
  width: 15px;
  height: 3px;
  background: #fff;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg)
}

.lightTx .inBox .txBox .box2 .subTitle span:before {
  display: none;
  border: none
}

.lightTx .inBox .txBox .box2 .tableTx:before {
  border-left: 3px solid #2f80c2;
  border-bottom: 3px solid #2f80c2
}

.lightTx .close {
  cursor: pointer;
  position: absolute;
  top: -15px;
  right: -15px;
  width: 52px;
  height: 52px
}

.light_bg {
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 11;
  background: #000;
  opacity: .5;
  filter: alpha(opacity=50)
}

.service_parking06 #content .bl_slideGroup>li:last-child img {
  bottom: 10% !important;
  left: 11% !important;
  width: 80% !important
}

.voiceBox_list .bl_boxWrapper a {
  position: static
}

.voiceBox_list .bl_boxWrapper a:before,.voiceBox_list .bl_boxWrapper a:after {
  display: none
}

.voiceBox_list .bl_slideGroup .bl_boxWrapper .bl_box.bl_box__lightBox img {
  bottom: unset;
  top: 50%;
  left: 50% !important;
  width: 65% !important;
  -webkit-transform: translateX(-50%) translateY(-50%);
  transform: translateX(-50%) translateY(-50%)
}

.voiceBox_list .bl_box__lightBox:after {
  z-index: 100
}

/* バナー：安心な3つの理由 */
.threeReasonWrapper {
  padding-left: 4.26667vw;
  padding-right: 4.26667vw;

  /* pタグのスタイルリセット */
  & p {
    padding: 0 !important;
    margin: 0 !important;
    line-height: 1.35 !important;
  }
}

@media screen and (max-width: 768px) {
  .threeReasonWrapper {
      margin-left:auto;
      margin-right: auto;
      width: 100%;
      max-width: 480px
  }
}

.threeReason {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -ms-flex-wrap: nowrap !important;
  flex-wrap: nowrap !important;
  background-color: #f06400;
  color: #fff;
  padding: 20px;
  margin: 30px auto 0;
  border-radius: 20px;
}

@media screen and (max-width: 768px) {
  .threeReason {
      margin:0 auto;
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
      -ms-flex-direction: column;
      flex-direction: column
  }

  .threeReason.inner.w-container {
      margin-top: 30px
  }
}

.threeReason .lead {
  -webkit-box-flex:1;
      -ms-flex:1 0 27%;
          flex:1 0 27%;
}

@media screen and (max-width: 768px) {
  .threeReason .in p {
      font-size:16px !important
  }
  .threeReason .lead {
      -ms-flex-preferred-size: 100%;
          flex-basis: 100%;
      text-align: center;
  }
}

.threeReason .reasons {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -ms-flex-wrap: nowrap !important;
  flex-wrap: nowrap !important;
  -webkit-box-flex:0;
      -ms-flex:0 1 71%;
          flex:0 1 71%;
}

@media screen and (max-width: 768px) {
  .threeReason .reasons {
      -webkit-box-orient:vertical;
      -webkit-box-direction: normal;
      -ms-flex-direction: column;
      flex-direction: column;
      -ms-flex-preferred-size: 100%;
          flex-basis: 100%;
      text-align: left;
      padding: 10px 0 0
  }
}

.threeReason .in .tx4 {
  font-size: 30px !important;
  font-weight: 700;
  line-height: normal
}

.threeReason .in .tx4 span {
  font-size: 12px;
  display: block
}

@media screen and (max-width: 768px) {
  .threeReason .in .tx4 span {
      font-size:14px
  }
}

.threeReason .in .tx4 span.fsz50 {
  font-size: 30px;
  display: inline
}

@media screen and (max-width: 768px) {
  .threeReason .in .tx4 span.fsz50 {
      font-size:50px;
      display: inline
  }
}

.threeReason .in .in1 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -ms-flex-wrap: nowrap !important;
  flex-wrap: nowrap !important;
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center
}

@media screen and (max-width: 768px) {
  .threeReason .in .in1 {
      width:100%;
      padding: 5px 0
  }
}

.threeReason .in .in1 .en {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -ms-flex-wrap: nowrap !important;
  flex-wrap: nowrap !important;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  background-color: #fff;
  width: 35px;
  height: 35px;
  border-radius: 17px;
  color: #f06400;
  margin: 0 10px 0 0
}

/* バナー：お庭業界3冠達成 */
.threeWinner {
  background: url(../images/top/top1_2imgBg.webp) center center repeat;
  background-repeat: no-repeat;
  background-position: top;
  background-size: cover;
  text-align: center;
  font-size: 11px;
  line-height: 0;
  margin: 30px 0 0;
  height: 350px
}

.no-webp .threeWinner {
  background: url(../images/top/top1_2imgBg.png) center center repeat
}

@media screen and (max-width: 768px) {
  .threeWinner {
      background:url(../images/top/top1_2imgBg_sp.webp) center center repeat;
      background-repeat: no-repeat;
      background-position: center;
      background-size: cover;
      height: 140vw;
      max-height: 635px
  }

  .no-webp .threeWinner {
      background: url(../images/top/top1_2imgBg_sp.png) center center repeat
  }
}

.threeWinner .inner {
  width: auto;
  max-width: 1080px;
  display: block;
  position: relative
}

@media screen and (max-width: 768px) {
  .threeWinner .inner {
      max-width:560px
  }

  .threeWinner .inner img {
      width: 100%;
      max-width: 480px
  }
}

.threeWinner .inner .tx {
  line-height: 180%;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%,-50%);
  transform: translate(-50%,-50%);
  width: 100%;
  -webkit-transform: translate(-50%,80px);
  transform: translate(-50%,80px);
  transform: translate(-50%,80px) !important
}

@media screen and (max-width: 768px) {
  .threeWinner .inner .tx {
      width:90%;
      text-align: left;
      left: 48%;
      font-size: 10px !important;
      -webkit-transform: translate(-50%,190px);
      transform: translate(-50%,190px);
      transform: translate(-50%,190px) !important
  }
}

@media screen and (max-width: 768px) {
  .threeWinner .inner .tx p {
      font-size:10px !important
  }
}

.threeWinner .inner .tx .tx_we {
  padding: 30px 30px 0 0;
  text-align: right
}

@media screen and (max-width: 768px) {
  .threeWinner .inner .tx .tx_we {
      padding:10px 0 0;
      text-align: left
  }
}

/* サービスページ 実績表示 */
.mitumoriBnr {
  position: relative;
  width: 100%;
  color: #42210b !important;
}

.mitumoriBnr:before {
  content: "";
  display: block;
  width: 100%;
  padding-top: 46.75%;
}

@media screen and (max-width: 768px) {
  .mitumoriBnr:before {
    padding-top: 151.6949152542%;
  }
}

.mitumoriBnr.mitumoriBnr--s:before {
  padding-top: 32.25%;
}

@media screen and (max-width: 768px) {
  .mitumoriBnr.mitumoriBnr--s:before {
    padding-top: 101.1299435028%;
  }
}

.mitumoriBnr_inner {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border-radius: 20px;
}

.mitumoriBnr_topCont {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  background-color: #fff0c8;
  padding: 47px 6.25% 30px;
  border-radius: 20px 20px 0 0;
}

@media screen and (max-width: 768px) {
  .mitumoriBnr_topCont {
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
    -ms-flex-direction: column-reverse;
    flex-direction: column-reverse;
    padding: 0;
  }
}

.mitumoriBnr_topCont>*:last-child {
  margin-left: 2.8571428571%;
}

@media screen and (max-width: 768px) {
  .mitumoriBnr_topCont>*:last-child {
    margin-left: 0;
  }
}

.mitumoriBnr--s .mitumoriBnr_topCont {
  padding: 28px 5.5%;
}

@media screen and (max-width: 768px) {
  .mitumoriBnr--s .mitumoriBnr_topCont {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
    padding: 28px 5.5% 20px;
  }
}

.mitumoriBnr--s .mitumoriBnr_topCont>*:last-child {
  margin-left: 0;
}

@media screen and (max-width: 768px) {
  .mitumoriBnr--s .mitumoriBnr_topCont>*:last-child {
    margin-left: 0;
  }
}

.mitumoriBnr_body {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-flex: 0;
  -ms-flex: 0 0 47.1428571429%;
  flex: 0 0 47.1428571429%;
}

@media screen and (max-width: 768px) {
  .mitumoriBnr_body {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 100%;
    flex: 0 0 100%;
    padding: 20px;
  }
}

.mitumoriBnr--s .mitumoriBnr_body {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -ms-flex-direction: row;
  flex-direction: row;
  -webkit-box-flex: 0;
  -ms-flex: 0 0 100%;
  flex: 0 0 100%;
  width: 100%;
}

@media screen and (max-width: 768px) {
  .mitumoriBnr--s .mitumoriBnr_body {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    padding: 0;
  }
}

.mitumoriBnr--s .mitumoriBnr_body>*:last-child {
  margin-left: 4.6348314607%;
}

@media screen and (max-width: 768px) {
  .mitumoriBnr--s .mitumoriBnr_body>*:last-child {
    margin-left: 0;
    margin-top: 20px;
  }
}

.mitumoriBnr_img {
  position: relative;
  -webkit-box-flex: 0;
  -ms-flex: 0 0 50%;
  flex: 0 0 50%;
}

@media screen and (max-width: 768px) {
  .mitumoriBnr_img {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 100%;
    flex: 0 0 100%;
    width: 100%;
  }
}

.mitumoriBnr_img:before {
  content: "";
  display: block;
  width: 100%;
  padding-top: 56.2857142857%;
}

@media screen and (max-width: 768px) {
  .mitumoriBnr_img:before {
    padding-top: 53.9548022599%;
  }
}

.mitumoriBnr_img img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
  border-radius: 20px;
}

@media screen and (max-width: 768px) {
  .mitumoriBnr_img img {
    border-radius: 20px 20px 0 0;
  }
}

#content .mitumoriBnrTxtCont {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
}

#content .mitumoriBnrTxtCont * {
  line-height: 1;
  margin: 0;
  padding: 0;
}

#content .mitumoriBnrTxtCont .mitumoriBnrTxt_right {
  margin-left: 2.8571428571%;
}

#content .mitumoriBnrTxtCont .mitumoriBnrTxt_left_wrapper,
#content .mitumoriBnrTxtCont .mitumoriBnrTxt_right_wrapper {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}

#content .mitumoriBnrTxtCont .mitumoriBnrTxt_unit {
  -webkit-writing-mode: vertical-rl;
  -ms-writing-mode: tb-rl;
  writing-mode: vertical-rl;
  font-size: clamp(1.375rem, -1.1414rem + 5.2356vw, 2rem);
  font-weight: 700;
}

@media screen and (max-width: 768px) {
  #content .mitumoriBnrTxtCont .mitumoriBnrTxt_unit {
    font-size: clamp(1.8125rem, 0.3506rem + 5.6497vw, 3.0625rem);
  }
}

#content .mitumoriBnrTxtCont .mitumoriBnrTxt_ttl {
  text-align: center;
  font-size: clamp(0.625rem, -0.3815rem + 2.0942vw, 0.875rem);
  font-weight: 700;
  white-space: nowrap;
}

@media screen and (max-width: 768px) {
  #content .mitumoriBnrTxtCont .mitumoriBnrTxt_ttl {
    font-size: clamp(0.75rem, 0.0191rem + 2.8249vw, 1.375rem);
  }
}

#content .mitumoriBnrTxtCont .mitumoriBnrTxt_num {
  font-size: clamp(3.4375rem, -4.1116rem + 15.7068vw, 5.3125rem);
  font-weight: 900;
}

@media screen and (max-width: 768px) {
  #content .mitumoriBnrTxtCont .mitumoriBnrTxt_num {
    font-size: clamp(4.125rem, -0.9915rem + 19.774vw, 8.5rem);
  }
}

.mitumoriBnr_bottomCont img {
  -webkit-filter: drop-shadow(0px 5px 0px rgba(0, 0, 0, 0.2));
  filter: drop-shadow(0px 5px 0px rgba(0, 0, 0, 0.2));
}

.mitumoriBnr--ft {
  position: static;
}

.mitumoriBnr--ft:before {
  display: none;
}

.mitumoriBnr--ft .mitumoriBnr_inner {
  position: static;
}

.mitumoriBnr--ft .mitumoriBnr_bottomCont {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
  padding: 0 5.5% 28px;
  border-radius: 0 0 20px 20px;
}

@media screen and (max-width: 768px) {
  .mitumoriBnr--ft .mitumoriBnr_bottomCont {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
  }
}

.mitumoriBnr--ft .mitumoriBnr_bottomCont>* {
  -webkit-box-flex: 1;
  -ms-flex: 1;
  flex: 1;
}

.mitumoriBnr--ft .mitumoriBnr_bottomCont>*:last-child {
  margin-left: 2.8571428571%;
}

@media screen and (max-width: 768px) {
  .mitumoriBnr--ft .mitumoriBnr_bottomCont>*:last-child {
    margin-left: 0;
    margin-top: 20px;
  }
}

.mitumoriBnr--ft .mitumoriBnr_bottomCont img {
  -webkit-filter: unset;
  filter: unset;
}

.mitumoriBnr_default .mitumoriBnr_topCont {
  background-color: #fbd571;
}
.mitumoriBnr_exterior .mitumoriBnr_topCont,
.mitumoriBnr_exterior .mitumoriBnr_bottomCont {
  background-color: #fbd571;
}

/* BPショップ一覧リスト */
.shop_list_wrapper {
  /* ナビゲーションボタン */
  .navbtn {
    display: none;
  }
}
/*BP店舗リスト*/
.list_bpshopinfo {
  list-style: none;
  margin-bottom: 50px;
  
  .bpshopinfo {
    margin-bottom: 40px;
    
    & a {
      display: grid;
      grid-template-columns: 29% auto;
      grid-template-rows: 13em auto;
      text-decoration: none !important;
      color: #41200a;

      .image {
        grid-column: 1 / 2;
        grid-row: 1 / 2;
        border-radius: 20px 0 0 0;
        overflow: hidden;
        background-color: #ccc;
        & img {
          width: 100%;
          height: 100%;
          -o-object-fit: cover;
             object-fit: cover;
        }
      }
      .image:has(.noimage) {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
            -ms-flex-align: center;
                align-items: center;
        -webkit-box-pack: center;
            -ms-flex-pack: center;
                justify-content: center;
        & img {
          width: auto;
          height: auto;
        }
      }
      .text {
        grid-column: 2 / 3;
        grid-row: 1 / 2;
        border-radius: 0 20px 0 0;
        background-color: #f1f1f1;
        padding: 20px 30px;
        .bpname {
          font-size: 20px;
          font-weight: bold;
          margin-bottom: 30px;
        }
        .bpcomment {
          line-height: 1.5;
        }
      }
      .area {
        grid-column: 1 / 3;
        grid-row: 2 / 3;
        border-radius: 0 0 20px 20px;
        background-color: #fff0c8;

        .areatitle {
          padding: 0.5em 30px;
          background-color: #f06400;
          color: #fff;
          font-weight: normal;
        }
        .wrap_arealist {
          padding: 20px 30px;

          .arealist {

          }

          .btnmore {
            text-align: right;
            font-size: 0.9em;
            & span{
              background-color: #f06400;
              color: #fff;
              padding: 3px 6px;
              border-radius: 2px;
            }
          }
        }
      }
    }
  }
}
@media screen and (max-width: 768px) {
  .shop_list_wrapper {
    position: relative;

    /* ナビゲーションボタン */
    .navbtn {
      display: block;
      position: absolute;
      top:calc(50% - 20px);
      width: 40px;
      height: 40px;
      cursor: pointer;

      & img {
        vertical-align: bottom;
      }
    }
    .shop_list_next {
      right: 5px;
    }
    .shop_list_prev {
      left: 5px;
      -webkit-transform: rotate(180deg);
              transform: rotate(180deg);
    }
  }

  /*BP店舗リスト*/
  .list_bpshopinfo {
    margin-bottom: 50px;
    
    .bpshopinfo {
      margin-bottom: 0;
      padding: 0 7vw;
      float: left; /* カルーセルスライダー（carouFredSel）用に必要 */
      & a {
        grid-template-columns: 50% auto;
        grid-template-rows: 14em auto;
        .text {
          padding: 20px;
          .bpname {
            font-size: 16px;
            margin-bottom: 10px;
          }
          .bpcomment {
            font-size: 15px;
          }
        }
        .area {
          .areatitle {
            padding-left: 20px;
            padding-right: 20px;
          }
          .wrap_arealist {
            padding: 15px 20px;
            overflow-y: scroll;
            height: 150px;
            .arealist {
              font-size: 15px;
            }
          }
        }
      }
    }
  }
  .list_bpshopinfo::after {
    content: "";
    display: block;
    width: 0;
    height: 0;
    clear: both;
  }

}

/* PC・モバイル表示非表示制御 */
.mobileonly {
  display: none;
}
@media screen and (max-width: 768px) {
  .mobileonly {
    display: inherit;
  }
}

/* サービスグループアイコンメニュー */
.list_service_group_icons {
  list-style: none;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  gap:30px;
  margin-top: 15px;
  margin-bottom: 15px;
  & li {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 30%;
            flex: 0 0 30%;
    & a {
      position: relative;
      display: block;
      text-decoration: none !important;
      padding: 1em;
      font-size: 22px;
      line-height: 1.35;
      text-align: center;
      color: #42210b;
      font-weight: bold;
      height: 230px;
      border-radius: 20px;
      background-color: #ccc;
      background-repeat: no-repeat;
      background-position: center bottom 10px;
      background-size: auto;
      -webkit-box-shadow:0 5px 0 #999;
              box-shadow:0 5px 0 #999;
    }
    & a:hover {
      opacity: 1.0;
    }
    & a::before {
      position: absolute;
      bottom: 20px;
      right: 20px;
      content: " ";
      display: block;
      width: 25px;
      height: 25px;
      border-radius: 25px;
      background-color: #f06400;
      z-index: 2;
      -webkit-transition: .3s ease-in-out;
      transition: .3s ease-in-out;
    }
    & a::after {
      position: absolute;
      bottom: 28px;
      right: 29px;
      content: " ";
      display: block;
      width: 7px;
      height: 7px;
      border-top: solid 2px #fff;
      border-right: solid 2px #fff;
      -webkit-transform: rotate(45deg);
      transform: rotate(45deg);
      z-index: 2;
      -webkit-transition: .3s ease-in-out;
      transition: .3s ease-in-out;
    }
    & a:hover::before {
      right: 10px;
    }
    & a:hover::after {
      right: 19px;
    }
  }
}
.list_service_group_icons {  
  .zentai {
    & a {
      background-image: url(../images/top/top2_img1.webp);
      background-color: #e8f0c5;
      -webkit-box-shadow: 0 5px 0 #b0e1b7;
      box-shadow: 0 5px 0 #b0e1b7;
    }
    & a:hover {
      background-color: #d8e69c;
    }
    & a::before {
      background-color: #347800;
    }
  }
  .gaikou {
    & a {
      background-image: url(../images/top/top2_img2.webp);
      background-color: #fff0c8;
      -webkit-box-shadow: 0 5px 0 #ffb2b2;
              box-shadow: 0 5px 0 #ffb2b2;
    }
    & a:hover {
      background-color: #ffb3b3;
    }
    & a::before {
      background-color: #f06400;
    }    
  }
  .exterior {
    & a {
      background-image: url(../images/top/top2_img3.webp);
      background-color: #d3edf9;
      -webkit-box-shadow: 0 5px 0 #8fd2ef;
      box-shadow: 0 5px 0 #8fd2ef;
    }
    & a:hover {
      background-color: #a6dbf3;
    }
    & a::before {
      background-color: #0071bc;
    }
  }
  .zouen {
    & a {
      background-image: url(../images/top/top2_img4.webp);
      background-color: #e2dfef;
      -webkit-box-shadow: 0 5px 0 #a7a5df;
      box-shadow: 0 5px 0 #a7a5df;
    }
    & a:hover {
      background-color: #c3bdde;
    }
    & a::before {
      background-color: #5050c8;
    }
  }
  .jinkou {
    & a {
      background-image: url(../images/top/top2_img10.webp);
      background-color: #ffe6c8;
      -webkit-box-shadow: 0 5px 0 #ffbdad;
      box-shadow: 0 5px 0 #ffbdad;
    }
    & a:hover {
      background-color: #ffcf95;
    }
    & a::before {
      background-color: #f15a3c;
    }
  }
  .bousou {
    & a {
      background-image: url(../images/top/top2_img8.webp);
      background-color: #dcf0e6;
      -webkit-box-shadow: 0 5px 0 #a3d8bc;
      box-shadow: 0 5px 0 #a3d8bc;
    }
    & a:hover {
      background-color: #b8e1cd;
    }
    & a::before {
      content: url("../images/top/top2_img9.webp");
      background-color: transparent;
    }
    & a::after {
      display: none;
    }
  }
}
@media screen and (max-width: 768px) {
  .list_service_group_icons {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    gap: 20px 5%;
    
    & li {
      -webkit-box-flex: 0;
          -ms-flex: 0 0 47.5%;
              flex: 0 0 47.5%;
      & a {
        font-size: 15px;
        height: 140px;
        background-size: auto 60%;
        padding: 1em 0.5em;
        border-radius: 10px;
      }
      & a::before {
        bottom: 5px;
        right: 5px;
      }
      & a::after {
        bottom: 13px;
        right: 14px;
      }
    }
  }
}

/* Footer ISO JAPHIC */
.japhic_iso_sp {
  display: none;
}
@media screen and (max-width: 768px) {
  .japhic_iso_sp {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -ms-flex-line-pack: center;
        align-content: center;
    background-color: #fff;
    padding: 10px 0;
    gap:10px;
    & img {
      height: 80px;
    }
  }
  
}
