
.catch_area {position:relative;}
.catch{padding-bottom:0;padding-top:30px;}
.catch h1{display:inline;}
.catch_imgb{position:absolute;
bottom: -70px;
  right: 0;
  left: 0;
  margin: auto;
  text-align: center;
}
.small_catch .mb-3.mt-2 img{width:45% ;}
.small_catch img.mb-0{width:45% ;}

.catch_imgb img{filter: drop-shadow(0px 0px 10px #a0a0a0);}
a.catch_imgb img:hover{filter: drop-shadow(5px 0px 15px #a0a0a0);}
.index .catch_area{padding-bottom:0;}
.catch{margin-bottom:150px;}
.top_service{
background:linear-gradient(0deg, rgb(244, 255, 251), rgb(255, 255, 255));padding-bottom:50px;}
h2.h2_center_b{border: none;
  text-align: center;
  margin-bottom: 20px;
  margin-top: 60px;
  color:#000;
  }
.main-header .navbar-nav .nav-item .btn{width:auto;}
h2.h2_center_b strong{color:#56a592;}

.ttlrow{border-bottom:1px solid #56a592;padding-top:50px;padding-bottom:50px;}
.ttlrow h3{font-weight:bold;color:#56a592;font-size:30px;text-align:center;margin:0;}  
.ttlrow .ttlrow_icon img{width:100px;margin:60px 0 10px auto;display:block;}
.ttlrow .logo_txt img{width:180px;}
.ttlrow .logo_txt{font-size:46px;font-weight:bold;text-align:center;}
.ttlrow p{text-align:center;font-size:24px;}
.ttlrow .btn{border-radius: 2rem;width:180px;position:relative;margin:auto 15px;}
.bg_yellow  .btn{position:relative;margin:auto 15px;}
.bg_yellow .btn-info::after,
.ttlrow .btn::after {
  content: " ";
  width: 12px;
  height: 12px;
  border-top: 3px solid #fff;
  border-right: 3px solid #fff;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  position: absolute;
  right: 6%;
  top: calc(50% - 6px);
}
.bg_yellow  .btn.btn-outline-info::after,
.ttlrow .btn.btn-outline-info::after {
  content: " ";
  width: 12px;
  height: 12px;
  border-top: 3px solid #56a592;
  border-right: 3px solid #56a592;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  position: absolute;
  right: 6%;
  top: calc(50% - 6px);
}
.bg_yellow .btn.btn-outline-info:hover::after,
.ttlrow .btn.btn-outline-info:hover::after {
  content: " ";
  width: 12px;
  height: 12px;
  border-top: 3px solid #fff;
  border-right: 3px solid #fff;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  position: absolute;
  right: 6%;
  top: calc(50% - 6px);
}



.enm_txt{font-size:16px;}
.enm_box{border-radius: 1rem;background:#fff;filter: drop-shadow(0px 0px 4px #a0a0a0);padding:20px;margin:15px 5px;}
.enm_box h4{text-align:center;font-size:16px;font-weight:bold;border-bottom:2px solid #56a592;}
.enm_box .btn_yellow{font-size:16px;margin:0 !important;padding:10px !important}
.bg_yellow  .btn-info{border-radius: 2rem;width:180px;}
.bg_yellow  .btn-outline-info{border-radius: 2rem;width:180px;background:#fff;}
.bg_yellow  .btn-outline-info:hover{background:#56a592;}

.ttlrow .btn-outline-info{background:#fff;}
.ttlrow .btn-outline-info:hover{background:#56a592;}
.bg_yellow .btn i,.ttlrow .btn i{margin-left:5px;}


.flow_design04{width:80%;margin:40px auto;}
.flow04 {
  padding-left: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 60px;
}

.flow04 > li {
  list-style-type: none;
  width : 33.33333% ; /* 未対応ブラウザ用フォールバック */
  width : -webkit-calc(100% / 3 - 40px) ;
  width : calc(100% / 3 - 40px) ;  display: flex;
}


.flow04 > li dl {
  padding: 30px 20px;
  margin: 0;
border-radius: 2rem;
  border: 2px solid #56a592;
  position: relative;
  width:100%;
}

.flow04 > li:not(:first-child) dl::before {
  content: "";
  width: 14px;
  height: 14px;
  margin-right: 10px;
  display: inline-block;
  border-top: 4px solid #56a592;
  border-right: 4px solid #56a592;
  position: absolute;
  top: calc(50% - 14px);
  left: -45px;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}

.flow04 > li dl dt {
  font-size: 1.3em;
  -ms-flex-preferred-size: 20%;
  flex-basis: 20%;
  margin-bottom: 0;
  text-align: center;
      font-weight:normal;

}

.flow04 > li dl dd {
  margin-left: 0;
  font-size: 1.5em;
    text-align: center;
    font-weight:bold;


}

@media(max-width: 767px){
  .flow04 {
    gap: 20px;
  }
  .flow04 > li {
    max-width: unset;
    display: block;
  }
  .flow04 > li:not(:first-child) dl::before {
  }
}


.movie_area{
background:linear-gradient(45deg, rgb(152, 212, 192), rgb(254, 241, 217));padding-bottom:50px;padding-top:50px;}
.movie_area h2{text-align:center;border:0;padding-left:0;font-size:30px;}
.movie_area h2 strong{font-size:42px;}
.movie_area p.m_txt{font-size:24px;text-align:center;font-weight:bold;}
.dekirukoto_area h4{font-size:16px;margin-bottom:20px;}
.dekirukoto_area p{font-size:14px;}



.bg_green{background:#d1efe5;padding:50px 0;}
.cont_btn a {
  position: relative;
  display: block;
  padding: 26px 30px;
  border-radius: 60px;
  color: #fff;
  font-size: 21px;
  text-align: center;
  box-shadow: 0 2px 6px rgba(67, 140, 116, 0.25);
  line-height: 1.4;
  font-weight: 700;
  letter-spacing: 0.15em;
  background: linear-gradient(95deg, rgba(89,166,148,1) 100%, rgba(41,127,107,1) 0%);
  width: 600px;
  ront-size: 18px;
  margin: 0 auto;
}
.cont_btn a img{position:absolute;left:15px;top:-15px;width:100px;}
.cont_btn a::after {
  content: " ";
  width: 12px;
  height: 12px;
  border-top: 3px solid #fff;
  border-right: 3px solid #fff;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  position: absolute;
  right: 6%;
  top: calc(50% - 6px);
}
.cont_btn a:hover{text-decoration:none;  box-shadow: 0 2px 6px rgba(67, 140, 116, 0.8);
}
.bg_green.cont_area h2{border:none;color:#000;text-align:center;padding-left:0;}
.youtube_g{margin-bottom:0;margin-top:40px;}


.top_servicearea h2{text-align:center;border:none;padding:0;margin-bottom:0;font-weight:bold;}
.top_servicearea p{font-weight:bold;font-size:24px;}
.tsbox h4{margin-top:20px;font-weight:bold;}
.tsbox_area{display:flex;}
.tsbox img{width:120px;}
.tsbox{width:18%;text-align:center;padding:1rem 0.5%;margin:0 1%;}
.tsbox td{padding:0 5px;font-size:16px;}
.confilm-tables{background:#fff;border:2px solid #56a592;padding:10px 40px;margin-top:50px;position: relative;}

.confilm-tables:before {
  content: "";
  position: absolute;
  top: -24px;
  left: 50%;
  margin-left: -15px;
  border: 12px solid transparent;
  border-bottom: 12px solid #FFF;
  z-index: 2;
}

.confilm-tables:after {
  content: "";
  position: absolute;
  top: -30px;
  left: 50%;
  margin-left: -17px;
  border: 14px solid transparent;
  border-bottom: 14px solid #56a592;
  z-index: 1;
}
.ts01:before {
  left: calc(20% - 110px);
}
.ts01:after {
  left: calc(20% - 110px);
}
.ts02:before {
  left: calc(40% - 110px);
}
.ts02:after {
  left: calc(40% - 110px);
}

.ts03:before {
  left: calc(60% - 110px);
}
.ts03:after {
  left: calc(60% - 110px);
}
.ts04:before {
  left: calc(80% - 110px);
}
.ts04:after {
  left: calc(80% - 110px);
}
.ts05:before {
  left: calc(100% - 110px);
}
.ts05:after {
  left: calc(100% - 110px);
}



.f_banner{position:fixed; right:5px; bottom:5px;filter: drop-shadow(0px 0px 2px #a0a0a0);z-index:100;}
.f_banner:hover{filter: drop-shadow(0px 0px 5px #a0a0a0);}

.open{display:block !important;transition: 0.5s;}
.tsbox.blue{background:#4ca98a;border-radius: 1rem;}
.tsbox.blue td{color:#fff;}
.tsbox.blue h4{color:#fff;}

.tsbox .open_tgl{background:#fff;color:#56a592;font-size:0;}
.tsbox .open_tgl:before{content:"閉じる";color:#56a592;font-size:16px;}

.dekirukoto_area .h2_center{color:#000;}
.dekirukoto_area .h2_center strong{color:#56a592;}

.inpage_camp_area.pb-0{padding-bottom:50px !important;}
.cont_area .container{margin-top:0;}
.sp_tsarea{display:none;}

@media (max-width: 1199px){

.bg_yellow .btn,.ttlrow .btn{font-size:14px; width:140px;}
.enm_box .btn_yellow{width:90%;margin:10px auto !important;display:block;}
.flow_design04{width:100%;}
.flow04 > li dl dt{font-size:18px;}
.flow04 > li dl dd{font-size:18px;}
.tsbox td{font-size:14px;}
.top_servicearea .container{width:100%;max-width:100%;}
}
@media (max-width: 992px) {
.catch {
  margin-bottom: 100px;
}

.ttlrow{padding-top:20px;}
h2.h2_center_b{margin-top:0;}
.ttlrow .logo_txt{font-size:30px;}
.ttlrow h3{font-size:24px;}
.ttlrow p{font-size:18px;}
.ttlrow .ttlrow_icon img{width:80px;margin:30px 0 10px auto;display:block;}
.enm_box {width:48%;display: inline-block;margin:40px 1%;}
.enm_txt{text-align:center;}

.movie_area h2{font-size:22px;}
.movie_area h2 strong{font-size: 1.4em;}
.movie_area p.m_txt{font-size:16px;}
.movie_area p{font-size:14px;}

.tsbox td{font-size:14px;}
.tsbox {color:#000;}
.tsbox h4{font-size:16px;margin:5px 0;color:#000;}
.tsbox_area{display:none;}
.tsbox{width:46%;display:inline-block;padding:1%;}
.tsbox img{width:60px;float:left;margin-top: 5px;}
.tsbox table{margin:0 auto;}
.confilm-table-btn{margin-top:5px !important;}
.confilm-tables::after {left:50% !important;}
.confilm-tables::before {left:50% !important;}
.bg_yellow img.mt-4{width:200px;}
.top_servicearea h2{font-size: 1.4em;}
.top_servicearea p{font-size: 1.2em;}
.bg_yellow.inpage_camp_area .btn{width:200px;}

.sp_tsarea{display:block;}


.tsbox{width:100%;}

.accordion {
  max-width: 800px;
  margin: 0 auto;
}

.panel {
  margin-bottom: 10px;
  background:#fff;
  border-radius: 0.2rem;
  border:1px solid #dadada;
}

.panel-header {
  width: 100%;
  padding: 15px 20px;
  display: flex;
  justify-content: space-between;
  align-items: center;
  border: none;
  cursor: pointer;
  font-size: 16px;
  text-align: left;
  background:none;
}

.panel-header:hover {
  background: #f8f9fa;
}

.icon {
  transition: transform 0.3s;
  width: 70px;
  font-size:13px;
}

.panel-header.active .icon {
  font-size:0;
}
.panel-header.active .icon::after {
  content: "閉じる";
  font-size:13px;
}


.panel-content {
  height: 0;
  overflow: hidden;
  transition: height 0.3s ease-out;
}

.panel-body {
  padding: 20px;
  border-top: 1px solid #eee;
  background:#fff;
}

.panel-body p{font-size:14px;}























}

.sp_xs{display:none;}
@media (max-width: 786px) {
  
.pc_xs{display:none;}
.sp_xs{display:inline;}
.bg_yellow .btn{margin:auto;l}
.catch_imgb{margin-bottom: 0;
    bottom: -25%;}

.bg_green.cont_area h2,
.top_servicearea h2 {
    margin-bottom: 0;
    font-size: 18px;
    margin-top: 0;
  }
.cont_btn a{width:auto;font-size:14px;width:340px;}
.cont_btn a img {
  left: 0;
  top: -15px;
  width: 60px;
  display:none;
}
.catch{margin-bottom:15%;}
h2.h2_center_b{font-size:20px;}
.ttlrow .ttlrow_icon img{width:60px;}
.ttlrow h3{font-size:18px;}
.ttlrow .logo_txt img{width:120px;}
.ttlrow .logo_txt{font-size:20px;}
.ttlrow p{font-size:14px;}
.ttlrow .col-md-4 img{width:60%;margin-top:50px;}

.bg_yellow .col-lg-3{margin-top:30px;}
.enm_txt{font-size:14px;}
.enm_box{width:100%;margin:10px auto;}
.flow04 > li dl{padding: 10px }
.flow04 > li{width:100%;margin-bottom:20px;}
.flow04 > li:not(:first-child) dl::before {
  content: "";
  width: 14px;
  height: 14px;
  margin-right: 10px;
  display: inline-block;
  border-top: 4px solid #56a592;
  border-right: 4px solid #56a592;

  top: -30px;
  left: calc(50% - 14px);
  -webkit-transform: rotate(45deg);
  transform: rotate(135deg);
}
.flow04 > li dl dd,
.flow04 > li dl dt{margin-top:0 !important;margin-bottom:0 !important;}

.top_service{padding-bottom:0;}
.flow_design04{margin-bottom:0;}
.movie_area h2{font-size:16px;}
.movie_area h2 strong{font-size:20px;}
.inpage_camp_area{margin-top:0 !important;}
.flowbtn{margin-top: 0 !important;}

.bg_yellow.inpage_camp_area .btn{width:340px;}

}
.sp_xxs{display:none;}

@media (max-width: 414px) {
.pc_xxs{display:none;}
.sp_xxs{display:inline;}
  .catch {
    padding: 20px 0 10% 0;
    margin-bottom: 18%;
  }
  
  .catch_imgb{bottom:-60%;}
.small_catch .mb-3.mt-2 img{width:60% !important;}
.small_catch img.mb-0{width:40% !important;}
}

.f_banner img{width:300px;}