@charset "UTF-8";
/* ==================================================

	element

================================================== */
@media print, screen and (min-width: 1024px){
      #mainvisual .site_wrap {
          width: 1170px;
     }
}

/*base.cssの設定をtopページ用に上書き（lighthouse)*/
.tit02 span {
  font-weight:bold !important;
}
.tit01 span {
  font-weight:bold !important;
}
h2 {
  font-weight:bold !important;
}
#footer .f_contact .f_tel span {
  font-size:42px;
}
/*end*/

#main .tit01 span
{
  letter-spacing: -5px;
}

#main .tit02 span {
  letter-spacing: 5px;
}

#mainvisual {
    max-width: 1980px;
    margin-right: auto;
    margin-left: auto;
}
#mainvisual.pc { background: url("../images/mv.png"); background-repeat: no-repeat; background-size: cover; background-position: center top; height: 650px !important; }

#mainvisual .vegas-slide, #mainvisual .vegas-slide-inner { background-position: center top !important; }

#mainvisual h1 { color: #fff; font-family: 'M PLUS 1p', sans-serif; font-size: 28px; font-weight: 700; display: inline-block; position: absolute; right: 20.6vw; line-height: 1.2; letter-spacing: 11px; }

#mainvisual h1 span { font-size: 90px; display: inline-block; margin-bottom: 33px; line-height: 1.0; letter-spacing: 0; }
#mainvisual h1.h1_mv6 span { text-align: right;}

#mainvisual h1.h1_mv1 {
    margin: 0;
    font-size: 90px;
    float: none;
    margin-right: auto;
    margin-left: auto;
    display: block;
    padding-top: 150px;
    width: auto;
    text-align: center;
    text-shadow:2px 2px 0 #000;
}
#mainvisual h1.h1_mv1 span {padding:20px 40px;background:rgba(51,51,51,0.6);}
#mainvisual h1.h1_mv2, #mainvisual h1.h1_mv3 { right: auto;left: 0px;}
#mainvisual h1.h1_mv4 { right: auto;left: 20.6vw;}

#mainvisual .scoll { position: absolute; bottom: 55px; left: 50%; -ms-transform: translate(-50%, 0); transform: translate(-50%, 0); -webkit-transform: translate(-50%, 0); -moz-transform: translate(-50%, 0); -o-transform: translate(-50%, 0); max-width: 100%;}

#mainvisual .scoll:before { content: ''; display: block; width: 82px; height: 123px; background: url("../common_img/arr.png"); background-repeat: no-repeat; background-position: center; position: absolute; top: 0; -webkit-animation: animate_arr 2s infinite; animation: animate_arr 2s infinite; }
.tt_mv div{
  position: relative;
  display: inline-block;
  width: 100%;
  height: 100%;
}
.tt_mv a{
  font-family: "M PLUS 1p", sans-serif;
  font-size: 20px;
  border:5px solid #ffffff;
  background: url(../images/tg_click.png) no-repeat center right 8px;
  width: 240px;
  text-decoration: none;
  font-weight: 600;
  text-align: center;
  padding: 10px 0px;
  transition:all 0.3s;
  -webkit-transition:all 0.3s;
  -moz-transition: all 0.3s;
  -ms-transition:all 0.3s;
  -o-transition: all 0.3s;
  position: absolute;
  left: 0;
  color: #ffffff;
  top:100%;
  margin-top: 6%;
}
.tt_mv a:hover{
  border-color: #158530;
  background: url(../images/tg_click.png) no-repeat center right 8px;
}
#mainvisual.pc #my-moniter-click {
    position: relative;
    top: 435px;
    left: 280px;
    width: 250px;
    display: block;
}
#mainvisual.sp #my-moniter-click {
    position: relative;
    top: 124vw;
    display: block;
    margin-left: auto;
    margin-right: auto;
    height: 18px;
    width: 50%;
}
/* ▽ PC-TAB layout ========== */
@media print, screen and (min-width: 768px) {
  #mainvisual h1 { float: right; margin-top: 40%; position: unset; }
  #mainvisual h1.h1_mv2, #mainvisual h1.h1_mv3, #mainvisual h1.h1_mv4 { float: left;}
  #mainvisual h1.h1_mv5 {margin-top: 33%; position: unset; }
  #mainvisual h1.h1_mv5 img {float: right; width:100%; height:auto;}
  #mainvisual h1.h1_mv6 {margin-top: 20%; position: unset; }
  #mainvisual h1.h1_mv6 img {float: right; margin-top:10%; width:100%; height:auto;}
}
@media only screen and (max-width: 1390px) and (min-width: 769px) {
   #mainvisual { height:600px !important;}
   #mainvisual h1 { margin-top: 18%;font-size:25px;}
   #mainvisual h1 span { font-size: 75px;}
   #mainvisual h1.h1_mv5{ margin-top: 14%; margin-right: 5%; text-align: right;}
   #mainvisual h1.h1_mv5 img{ max-width: 70%; margin-top: 1%; width:100%; height:auto;}
   #mainvisual h1.h1_mv6{ margin-top: 14%; margin-right: 5%;}
   #mainvisual h1.h1_mv6 img{ max-width: 70%; margin-top: 1%; width:100%; height:auto;}
}



.image-darker {
  filter: brightness(0.9);
}
#mainvisual .mv7_box{
  text-align: right;
  color: #ffffff;
}

#mainvisual .mv7_box .pop {
  padding-right: 1px;
}
#mainvisual .mv7_box .pop .inner{
  background-image: url("../images/under-stroke.png");
  transform: rotate(8deg);
  background-repeat: no-repeat;
  background-position: left bottom;
  background-size: contain;
  padding: 0 6px;
  text-shadow: #000000 1px 1px 1.5px;
}
#mainvisual .mv7_box .pop .inner :first-child{
  display: inline-block;
}
#mainvisual .mv7_box .pop .inner :nth-child(2){
  color: #ffffff;
}

#mainvisual .mv7_box h1{
  float: none;
  font-weight: 500;
}
#mainvisual .mv7_box h1 span{
  font-size: 52px;
  margin-bottom: 17px;
  color: #ffffff;
  text-shadow: #000000 1px 1px 2px;
}
#mainvisual .mv7_box h2{
  color: #ffffff;
}

#mainvisual .mv7_box .fb{
  display: flex;
  flex-direction: column;
  -webkit-text-stroke-width: 0.02rem;
  font-weight: 200;
  text-shadow: #000000 1px 1px 1.5px;
}

/* PC用-共通 */
@media only screen and (min-width: 769px)  {
  #mainvisual .mv7_box .pop .inner{
    margin-top: 18%;
    text-align: right;
    font-size: 15px;
    padding-right: 0;
    height: 87px;
    -webkit-text-stroke-width: 0.7px;
  }
  #mainvisual .mv7_box .pop .inner :nth-child(2){
    font-size: 4rem;
  }
  #mainvisual .mv7_box p{
    font-size: 24px;
    text-align: left;
    display: inline-block;
  }
  #mainvisual .mv7_box h1{
    margin-top: 1%;
  }
  #mainvisual .mv7_box h2{
    font-size: 34px;
    margin-bottom: 15px;
    margin-right: 103px;
    text-shadow: #000000 1px 1px 1.5px,  #000000 1px 1px 1.5px;
  }

  #mainvisual .mv7_box .fb{
    width: fit-content;
    margin-left: auto;
  }
}
/* PC用-ワイド */
@media only screen and (min-width: 1391px)  {
  #mainvisual .mv7_box .pop{
    margin-top: 8%;
  }
  #mainvisual .mv7_box h1 span{
    font-size: 65px;
    margin-bottom: 43px;
  }
  #mainvisual .mv7_box h2{
    font-size: 40px;
  }
}

/* SP用 */
@media only screen and (max-width: 768px)  {
  #mainvisual .mv7_box{
    text-align: left;
    padding: 0 12px;
  }

  #mainvisual .mv7_box .inner{
    font-size: 8px;
    text-align: left;
    display: inline-block;
    margin-right: 0;
    height: 42px;
    -webkit-text-stroke-width: 0.4px;
  }
  #mainvisual .mv7_box .pop .inner :nth-child(2){
    font-size: 2rem;
  }
  #mainvisual .mv7_box h1{
    margin-top: 5%;
    position: relative;
    left: 0;
    right: auto;
  }
  #mainvisual .mv7_box h1 span{
    font-size: 35px;
    margin-bottom: 8px;
    line-height: 1.2;
  }
  #mainvisual .mv7_box h2{
    width: 100%;
    font-size: 19px;
    margin-bottom: 10px;
    margin-right: 103px;
    text-shadow: #000000 1px 1px 1.5px;
  }
  #mainvisual .mv7_box .pop{
    margin-top: 39%;
    transform: rotate(8deg);
    font-size: 10px;
    width: 100%;
    text-align: center;
  }
  #mainvisual .mv7_box .pop :first-child{
    display: inline-block;
  }
  #mainvisual .mv7_box .pop :nth-child(2){
    font-size: 39px;
  }
  #mainvisual .mv7_box .fb{
    margin-top: 16%;
  }
}

/* ========== end △ */
/* ▽ SP layout ========== */
@media only screen and (max-width: 767px) { #mainvisual { height: 134vw !important;}
#mainvisual h1.h1_mv2, #mainvisual h1.h1_mv3 {margin-left: 2%;}
#mainvisual h1.h1_mv2 {margin-top: auto;top:40%;}
.tt_mv div{
  position: absolute;
  left: 2%;
  bottom: 0;
  max-width: 96%;
}
.tt_mv a{
  bottom: 10%;
  top:auto;
}
.tt_mv a{
  font-size: 15px;
  max-width: 40%;
  border:3px solid #ffffff;
  padding: 7px 0px;
  left: 0;
}
  /* ▽ SP layout ========== */ }

@media only screen and (max-width: 767px) and (max-width: 639px) { #mainvisual { margin-top: 19%; } }

@media only screen and (max-width: 767px) { /* ========== end △ */
  #mainvisual {
    background-image:url("../images/sp/mv01.jpg");
    background-size:100% auto;
  }
  #mainvisual .vegas-slide, #mainvisual .vegas-slide-inner { background-position: center right 0vw !important; }
  #mainvisual h1 { right: 0; letter-spacing: 1.5vw; bottom: 26%; font-size: 3.2vw; line-height: 1.3; }
  #mainvisual h1.h1_mv5 { right: 0; letter-spacing: 1vw; bottom: 25%; font-size: 3vw; line-height: 1.3; }
  #mainvisual h1.h1_mv5 .sp_mv5 {position: absolute;right: 65px; top:-65px; display: block;}
  #mainvisual h1.h1_mv5 { right: 0; letter-spacing: 1vw; bottom: 23%; font-size: 3vw; line-height: 1.3; }
  #mainvisual h1.h1_mv6 { right: 0; letter-spacing: 1vw; bottom: 19%; font-size: 3vw; line-height: 1.3; }
  #mainvisual h1 span { font-size: 11.5vw; margin-bottom: 10%; }
  #mainvisual h1.h1_mv5 span { margin-bottom: 5%; float: right; text-align: right;}
  #mainvisual h1.h1_mv5 img {width:100%; height:auto;}
  #mainvisual h1.h1_mv6 span { margin-bottom: 5%; float: left; text-align: left;}
  #mainvisual h1.h1_mv6 img { margin-top: 10%; width:100%; height:auto;}
  #mainvisual .scoll { width: 11vw; margin: 0 auto; bottom: 12%; text-align: center; }
  #mainvisual .scoll:before { background-size: auto 100%; width: 100%; height: 100%; }
  #mainvisual .scoll img { width: 90%; height:auto; } }

/* ========== end △ */
@-webkit-keyframes mvslideAnime { 0% { -webkit-transform: translate(0px);
    transform: translate(0px); }
  100% { -webkit-transform: translate(-100px);
    transform: translate(-100px); } }

@keyframes mvslideAnime { 0% { -webkit-transform: translate(0px);
    transform: translate(0px); }
  100% { -webkit-transform: translate(-100px);
    transform: translate(-100px); } }

@-webkit-keyframes animate_arr { 0% { opacity: 0;
    -webkit-transform: translate(0, -8px);
    transform: translate(0, -8px); }
  50% { opacity: 1; }
  100% { opacity: 0;
    -webkit-transform: translate(0, 8px);
    transform: translate(0, 8px); } }

@keyframes animate_arr { 0% { opacity: 0;
    -webkit-transform: translate(0, -8px);
    transform: translate(0, -8px); }
  50% { opacity: 1; }
  100% { opacity: 0;
    -webkit-transform: translate(0, 8px);
    transform: translate(0, 8px); } }

#main .site_wrap p { line-height: 1.5; margin-bottom: 30px; }

#main .site_wrap p:last-child { margin-bottom: 0; }

#main .slick-next { right: 20%; width: 3.37%; height: 64px; }

#main .slick-next:before { background-image: url("../images/rl.png"); }

#main .slick-prev { left: 18.8%; width: 3.37%; height: 64px; z-index: 1; }

#main .slick-prev:before { background-image: url("../images/l.png"); }

#main .slick-prev::before { content: ''; font-family: none; color: transparent; opacity: 1; position: absolute; width: 100%; height: 100%; top: 50%; background-position: center; background-repeat: no-repeat; -webkit-transform: translate(0, -50%); -ms-transform: translate(0, -50%); transform: translate(0, -50%); right: 0; background-size: 100% auto; }

#main .slick-next::before { content: ''; font-family: none; color: transparent; opacity: 1; position: absolute; width: 100%; height: 100%; top: 50%; background-position: center; background-repeat: no-repeat; -webkit-transform: translate(0, -50%); -ms-transform: translate(0, -50%); transform: translate(0, -50%); right: 0; background-size: 100% auto; }

#main .tt1_sec {background-color: #fff;}

#main .tt1_sec .tt1_sec_slide { overflow: hidden; position: relative; padding: 100px 0 60px 0; margin-top: -22px; }

#main .tt1_sec .tt1_sec_slide img { width: 95%; height:auto; margin:auto;}

#main .tt1_sec .tt1_sec_slide:before { content: ''; position: absolute; top: 0; left: 0; background: url("../images/ring.png"); background-repeat: repeat-x; width: 100%; height: 58px; }

#main .tt2_sec .tt2_sec_inner { max-width: 1600px; margin: 0 auto; text-align: center; }

#main .tt2_sec .tt2_sec_inner img { width: 100%; height:auto;}

#main .tt2_sec .tt2_sec_inner .tt { text-align: center; display: inline-block; position: relative; margin-bottom: 30px; padding-top: 15px; }

#main .tt2_sec .tt2_sec_inner .tt h2 { word-break: keep-all; color: #ffb64c; font-family: "DFSoGei"; font-size: 72px; font-weight: 100; -ms-transform: scale(0.65, 1); transform: scale(0.65, 1); -webkit-transform: scale(0.65, 1); -o-transform: scale(0.65, 1); letter-spacing: 8px; line-height: 1.2; display: -webkit-box; display: -ms-flexbox; display: flex; display: -webkit-flex; -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center; -webkit-justify-content: center; -moz-justify-content: center; -ms-justify-content: center; -webkit-box-align: end; -ms-flex-align: end; align-items: flex-end; -webkit-align-items: flex-end; -moz-align-items: flex-end; -ms-align-items: flex-end; margin-bottom: 15px; }

#main .tt2_sec .tt2_sec_inner .tt h2 span { display: inline-block; color: #158530; }

#main .tt2_sec .tt2_sec_inner .tt h2 .numb { font-size: 160px; font-weight: 100; -ms-transform: scale(1.2, 1); transform: scale(1.2, 1); -o-transform: scale(1.2, 1); -webkit-transform: scale(1.2, 1); padding: 0 10px; line-height: 0.82; }

#main .tt2_sec .tt2_sec_inner .tt h2 .green { font-size: 96px; line-height: 1.1; }

#main .tt2_sec .tt2_sec_inner .tt p { font-size: 28px;  font-weight: 600; color: rgba(35, 24, 21, 0.6); }

#main .tt2_sec .tt2_sec_inner .tt .box { position: absolute;  font-weight: 600; color: #fff; text-align: left; font-size: 22px; background: url("../images/box.png"); top: 0; left: 0; width: 128px; background-position: center; padding: 2% 0 3% 2%; background-size: 100% 100%; background-repeat: no-repeat; }

#main .tt2_sec .tt2_sec_inner .tt .box span { font-size: 26px; }

#main .tt2_sec .tt2_sec_inner .img { position: relative; width: 23.8%; }

#main .tt2_sec .tt2_sec_inner .img:nth-child(1) a:before { background-image: url("../images/img01.png"); }

#main .tt2_sec .tt2_sec_inner .img:nth-child(2) a:before { background-image: url("../images/img02.png"); }

#main .tt2_sec .tt2_sec_inner .img:nth-child(3) a:before { background-image: url("../images/img03.png"); }

#main .tt2_sec .tt2_sec_inner .img:nth-child(4) a:before { background-image: url("../images/img04.png"); }

#main .tt2_sec .tt2_sec_inner .img a { display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-align: center; -ms-flex-align: center; align-items: center; -webkit-align-items: center; -moz-align-items: center; -ms-align-items: center; -webkit-flex-wrap: wrap; -moz-flex-wrap: wrap; -ms-flex-wrap: wrap; flex-wrap: wrap; -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center; overflow: hidden; text-decoration: none; height: 15.4vw; padding: 10% 5%; }

#main .tt2_sec .tt2_sec_inner .img a:before { content: ''; position: absolute; top: 0%; left: 0; width: 100%; height: 100%; background-size: 100% auto; background-repeat: no-repeat; background-position: center; }

#main .tt2_sec .tt2_sec_inner .img a p { width: auto; }

#main .tt2_sec .tt2_sec_inner .img p { width: 100%; position: relative; font-size: 18px; font-weight: bold; text-align: center; color: #fff; }

#main .tt2_sec .tt2_sec_inner .img p span { font-size: 32px;  font-weight: 700; position: static; margin-bottom: 10px; display: block; width: auto; }

#main .tt2_sec .tt2_sec_inner .img span { position: absolute; top: -15px; width: 26.8%; left: -15px; }

#main .tt3_sec .tt3_sec_inner { background: url("../images/bg01.png"); background-repeat: no-repeat; background-position: center top; padding-top: 280px; padding-bottom: 92px; }

#main .tt3_sec .tt3_sec_inner .slide01 { margin-bottom: 40px; }

#main .tt3_sec .tt3_sec_inner .slide01 .case { position: relative; overflow: hidden; }

#main .tt3_sec .tt3_sec_inner .slide01 .case .case_numb { background-color: rgba(255, 182, 76, 0.9);  font-size: 24px; color: #fff; font-weight: 600; position: absolute; top: 60px; left: -60px; -ms-transform: rotate(-45deg) translate(0, -50%); transform: rotate(-45deg) translate(0, -50%); -webkit-transform: rotate(-45deg) translate(0, -50%); -o-transform: rotate(-45deg) translate(0, -50%); -moz-transform: rotate(-45deg) translate(0, -50%); width: 300px; text-align: center; -webkit-box-shadow: 0 0 10px 1px rgba(0, 0, 0, 0.3); box-shadow: 0 0 10px 1px rgba(0, 0, 0, 0.3); }

#main .tt3_sec .tt3_sec_inner .slide01 .case .case_inner { -webkit-box-shadow: 4px 4px 18px 1px rgba(0, 0, 0, 0.7); box-shadow: 4px 4px 18px 1px rgba(0, 0, 0, 0.7); padding: 15px; max-width: 90%; background-color: #fff; margin-bottom: 15px; }
#main .tt3_sec .tt3_sec_inner .slide01 .case .case_inner img {
  max-width:95%;height:auto;
}
#main .tt3_sec .tt3_sec_inner .slide01 .case h3 { color: #158530; font-weight: 600;  font-size: 129%; margin-bottom: 10px; }

#main .tt3_sec .tt3_sec_inner .slide01 .case p { line-height: 1.5; margin-bottom: 10px; }

#main .tt3_sec .tt3_sec_inner .slide01 .case img { max-width: 100%; margin: 0 auto 10px auto; }

#main .tt3_sec .tt3_sec_inner .slide01 .slick-next { right: 17.5%; }

#main .tt3_sec .tt3_sec_inner .slide01 .slick-next:before { background-image: url("../images/rl1.png"); }

#main .tt3_sec .tt3_sec_inner .slide01 .slick-prev { left: 16%; }

#main .tt3_sec .tt3_sec_inner .slide01 .slick-prev:before { background-image: url("../images/l1.png"); }

#main .tt4_sec { padding-bottom: 10%; overflow: hidden; background: url("../images/bg03.png"); background-repeat: no-repeat; background-position: center top; background-size: cover; }

#main .tt4_sec .tt4_sec_inner { max-width: 1280px; margin: 0 auto; }

/*
#main .tt4_sec .tit01 { margin-bottom: 0; background: url("../images/bg02.png"); background-repeat: no-repeat; background-position: center top; padding: 25px 0 85px 0; margin-bottom: 100px; }
*/
#main .tt4_sec .tit01 { margin-bottom: 0; padding: 25px 0 85px 0; margin-bottom: 100px; }
#main .tt4_sec .tit01 span{
	color:#158530;
}
/* ▽ SP layout ========== */
@media only screen and (max-width: 639px) { #main .tt4_sec .tit01 { margin-bottom: 3%; } }

/* ========== end △ */
#main .tt4_sec p { color: #71573d; font-size: 114%; line-height: 2; }

#main .tt4_sec .green { margin-top: 60px; }

#main .fly_img .txt p { color: #71573d; }
#main .fly_img figure img { width:100%; height:100%;}

#main .tt5_sec { background: url("../images/bg04.png"); position: relative; padding: 3% 0 6% 0; }

#main .tt5_sec .bor { width: 32%; }

#main .tt5_sec .bor figure { text-align: center; margin-bottom: 20px; }

#main .tt5_sec .bor .tt { display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-align: center; -ms-flex-align: center; align-items: center; -webkit-align-items: center; -moz-align-items: center; -ms-align-items: center; -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center; -webkit-justify-content: center; -moz-justify-content: center; -ms-justify-content: center; font-size: 32px; margin-bottom: 15px; color: #71573d; text-align: center; font-weight: 600;  }

#main .tt5_sec .bor .tt span { font-size: 36px; }

#main .tt5_sec .bor .tt .price { font-size: 48px; }

#main .tt5_sec .bor p { color: #231815; line-height: 1.5; }

#main .tt6_sec { background: url("../images/bg05.png"); position: relative; padding: 3% 0 5% 0; }

#main .tt6_sec:before { content: ''; position: absolute; top: -44px; left: 0; width: 100%; height: 45px; background: url("../images/bg05_i.png"); background-repeat: repeat-x; }

#main .tt6_sec .txt { max-width: 800px; margin-left: 3%; margin: auto; margin-top: 30px;}

#main .tt6_sec .txt p { margin-bottom: 30px; line-height: 1.5; }

#main .tt6_sec .txt p:nth-child(1) { font-size: 22px; }

#main .tt6_sec .txt p:nth-child(2) { font-size: 16px; }

#main .tt6_sec .calendar { max-width: 800px; width: 100%; height: 480px;margin: auto;}
#main .tt6_sec .calendar>iframe { height: 480px;}

#main .tt7_sec { padding: 80px 0 100px 0; }

#main .tt7_sec .tt7 { width: 47%; }

#main .tt7_sec .tt7 p { line-height: 1.5; margin-bottom: 30px; }

#main .tt7_sec .tt7 p:last-child { margin-bottom: 0; }

#main .tt7_sec .tt7 .bx { margin-bottom: 30px; }

#main .tt7_sec .news { max-height: 303px; overflow: auto; margin-bottom: 30px; }

#main .tt7_sec .news dl { margin-bottom: 15px; padding-bottom: 15px; border-bottom: 1px dotted #7f7f7f; font-size: 13px; }

#main .tt7_sec .news dl dt { color: #71573d; font-weight: bold; padding-bottom: 10px; }

#main .tt7_sec .news dl dd a { color: #231815; }

/* ▽ PC-TAB layout ========== */
/* ========== end △ */
/* ▽ SP layout ========== */
@media only screen and (max-width: 767px) { #main .slick-next { right: 1%; width: 8%; filter: brightness(0) invert(1); -webkit-filter: brightness(0) invert(1); }
  #main .slick-prev { left: 1%; width: 8%; filter: brightness(0) invert(1); -webkit-filter: brightness(0) invert(1); }
  #main .tt1_sec .tt1_sec_slide { padding: 10% 0 6% 0; margin-top: -6.9vw; }
  #main .tt1_sec .tt1_sec_slide:before { height: 7vw; background-size: auto 100%; } }

/* ========== end △ */
@media only screen and (max-width: 1100px) { #main .tt2_sec { padding: 0 4%; }
  #main .tt2_sec .tt2_sec_inner .img { width: 49%; margin-bottom: 15px; }
  #main .tt2_sec .tt2_sec_inner .img .img_inner { height: 26vw; }
  #main .tt2_sec .tt2_sec_inner .img:nth-child(1) a:before { background-image: url("../images/img01_sp.png"); }
  #main .tt2_sec .tt2_sec_inner .img:nth-child(2) a:before { background-image: url("../images/img02_sp.png"); }
  #main .tt2_sec .tt2_sec_inner .img:nth-child(3) a:before { background-image: url("../images/img03_sp.png"); }
  #main .tt2_sec .tt2_sec_inner .img:nth-child(4) a:before { background-image: url("../images/img04_sp.png"); } }

/* ▽ TAB-SP layout ========== */
@media only screen and (max-width: 1023px) { #main .tt2_sec .tt2_sec_inner .tt h2 { font-size: 7vw; }
  #main .tt2_sec .tt2_sec_inner .tt h2 .numb { font-size: 15vw; padding: 0; }
  #main .tt2_sec .tt2_sec_inner .tt h2 .green { font-size: 8.5vw; }
  #main .tt2_sec .tt2_sec_inner .tt .box { left: -3%; } }

/* ========== end △ */
/* ▽ PC-TAB layout ========== */
@media print, screen and (min-width: 768px) { #main .tt2_sec .tt2_sec_inner .flex { padding: 0 1%; }
  #main .tt2_sec .tt2_sec_inner .img .img_inner { overflow: hidden; display: block; position: relative; }
  #main .tt2_sec .tt2_sec_inner .img a:hover:before { -webkit-transform: scale(1.2); -ms-transform: scale(1.2); transform: scale(1.2); opacity: 0.7; }
  #main .tt2_sec .tt2_sec_inner .img a:hover p { text-shadow: 0 0 5px #333; }
  #main .tt2_sec .tt2_sec_inner .img a:before { -webkit-transition: all 0.6s cubic-bezier(0.215, 0.61, 0.355, 1) 0s; -o-transition: all 0.6s cubic-bezier(0.215, 0.61, 0.355, 1) 0s; transition: all 0.6s cubic-bezier(0.215, 0.61, 0.355, 1) 0s; -webkit-transform: scale(1.005); -ms-transform: scale(1); transform: scale(1); } }

/* ========== end △ */
/* ▽ SP layout ========== */
@media only screen and (max-width: 767px) { #main .tt2_sec { margin-bottom: 12%; }
  #main .tt2_sec .tt2_sec_inner .tt { display: block; }
  #main .tt2_sec .tt2_sec_inner .tt h2 .numb { font-size: 20vw; }
  #main .tt2_sec .tt2_sec_inner .tt p { color: #231815; opacity: 0.5; font-size: 3.3vw; }
  #main .tt2_sec .tt2_sec_inner .tt .box { font-size: 2.5vw; background-size: 100% 100%; width: 15vw; padding: 3% 0 3% 2%; }
  #main .tt2_sec .tt2_sec_inner .tt .box span { font-size: 3vw; }
  #main .tt2_sec .tt2_sec_inner .img { width: 48.8%; }
  #main .tt2_sec .tt2_sec_inner .img a { height: 20vw; }
  #main .tt2_sec .tt2_sec_inner .img a p { font-size: 3.5vw; }
  #main .tt2_sec .tt2_sec_inner .img a p span { font-size: 4vw; } }

/* ========== end △ */
@media only screen and (max-width: 320px) { #main .tt2_sec .tt2_sec_inner .tt h2 { letter-spacing: 4px; } }

/* ▽ PC-TAB layout ========== */
/* ========== end △ */
/* ▽ SP layout ========== */
@media only screen and (max-width: 767px) { #main .tt3_sec .tt3_sec_inner { background-image: url("../images/bg01_sp.png"); padding: 24% 0 22% 0; background-size: 100% 100%; }
  #main .tt3_sec .tt3_sec_inner .slide01 { margin-bottom: 3%; }
  #main .tt3_sec .tt3_sec_inner .slide01 .slick-next { right: 2%; }
  #main .tt3_sec .tt3_sec_inner .slide01 .slick-prev { left: 2%; }
  #main .tt3_sec .tt3_sec_inner .slide01 .case h3 { font-size: 4vw; margin-bottom: 7%; }
  #main .tt3_sec .tt3_sec_inner .slide01 .case .case_inner { padding: 2.5%; max-width: 90%; }
  #main .tt3_sec .tt3_sec_inner .slide01 .case .case_numb { display: block; font-size: 4vw; top: 11%; width: 100%; left: -36%; }
  #main .tt3_sec .tt3_sec_inner .slide01 .case p { display: none; } }

/* ========== end △ */
/* ▽ PC-TAB layout ========== */
@media print, screen and (min-width: 768px) { #main .tt4_sec_inner { width: 1200px; margin: 0 auto; width: 100%; }
  #main .fly_img { position: relative; padding: 0 2%; }
  #main .fly_img .img figure { position: absolute; width: 26%; text-align: center; }
  #main .fly_img .img figure img { max-width: 100%; }
  #main .fly_img .img .c1 figure { top: -70px; left: 0; }
  #main .fly_img .img .c3 figure { bottom: 110px; left: 40px; }
  #main .fly_img .img .c2 figure { right: -105px; top: 40px; }
  #main .fly_img .img .c4 figure { bottom: 10px; right: -30px; }
  #main .fly_img .txt { width: 68%;  font-weight: 600; padding: 0 16% 60px 16%; margin: 10px auto 0 auto; position: relative; }
  #main .fly_img .txt p { margin-bottom: 40px; font-size: 24px; line-height: 1.5; }
  #main .fly_img .txt .c1, #main .fly_img .txt .c3, #main .fly_img .txt .c2, #main .fly_img .txt .c4 { max-width: 470px; width: 100%; }
  #main .fly_img .txt .c1, #main .fly_img .txt .c3 { float: left; }
  #main .fly_img .txt .c2, #main .fly_img .txt .c4 { float: right; }
  #main .fly_img .txt .c1 { padding-left: 18%; }
  #main .fly_img .txt .c3 { padding-left: 21%; } }

/* ========== end △ */
/* ▽ SP layout ========== */
@media only screen and (max-width: 767px) { #main .tt4_sec { padding-bottom: 25%; }
  #main .tt4_sec .tt4_sec_inner { width: calc(100% - 7%); margin: 0 2% 0 5%; }
  #main .tt4_sec .tit01 { padding: 3% 0 13% 0; background-image: none; background-size: auto 96%; }
  #main .tt4_sec .site_wrap { padding: 0 3%; }
  #main .tt4_sec .fly_img { overflow: hidden; position: relative; }
  #main .tt4_sec .fly_img .img figure { width: 28%; }
  #main .tt4_sec .fly_img .img .c2 figure { -webkit-transform: rotate(-12deg); -ms-transform: rotate(-12deg); transform: rotate(-12deg); }
  #main .tt4_sec .fly_img .img .c3 figure { -webkit-transform: rotate(12deg); -ms-transform: rotate(12deg); transform: rotate(12deg); }
  #main .tt4_sec .fly_img .img .c2, #main .tt4_sec .fly_img .img .c4 { padding-left: 10%; }
  #main .tt4_sec .fly_img .img .c2 figure, #main .tt4_sec .fly_img .img .c4 figure { width: 31%; }
  #main .tt4_sec .fly_img .img .c2 p, #main .tt4_sec .fly_img .img .c4 p { width: 65%; }
  #main .tt4_sec .fly_img .img div { display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-align: center; -ms-flex-align: center; align-items: center; -webkit-align-items: center; -moz-align-items: center; -ms-align-items: center; -webkit-box-pack: justify; -ms-flex-pack: justify; justify-content: space-between; -webkit-justify-content: space-between; -moz-justify-content: space-between; -ms-justify-content: space-between; }
  #main .tt4_sec .fly_img .img p { width: 69%;  font-weight: 600; font-size: 3.3vw; line-height: 1.8; } }

/* ========== end △ */
/* ▽ PC-TAB layout ========== */
/* ========== end △ */
/* ▽ SP layout ========== */
@media only screen and (max-width: 767px) { #main .tt5_sec .flex { -ms-flex-wrap: wrap; flex-wrap: wrap; }
  #main .tt5_sec .bor { width: 100%; -webkit-box-align: center; -ms-flex-align: center; align-items: center; display: -webkit-box; display: -ms-flexbox; display: flex; display: -webkit-flex; display: -moz-flex; display: -ms-flex; -webkit-box-pack: justify; -ms-flex-pack: justify; justify-content: space-between; -webkit-justify-content: space-between; -moz-justify-content: space-between; -ms-justify-content: space-between; padding-bottom: 5vw; border-bottom: 2px solid #fff; margin-bottom: 1vw; }
  #main .tt5_sec .bor:last-child { border: none; margin-bottom: 5%; }
  #main .tt5_sec .bor .tt { -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center; -webkit-justify-content: center; -moz-justify-content: center; -ms-justify-content: center; -webkit-box-align: end; -ms-flex-align: end; align-items: flex-end; -webkit-align-items: flex-end; -moz-align-items: flex-end; -ms-align-items: flex-end; font-size: 5.5vw; }
  #main .tt5_sec .bor .tt span { font-size: 5.5vw; }
  #main .tt5_sec .bor .tt .price { font-size: 8.5vw; line-height: 1.2; }
  #main .tt5_sec .bor figure { width: 26%; padding-left: 2%; }
  #main .tt5_sec .bor figure img { width: 100%; height:auto; }
  #main .tt5_sec .bor .txt { width: 66%; } }

/* ========== end △ */
/* ▽ PC-TAB layout ========== */
/* ========== end △ */
/* ▽ SP layout ========== */
@media only screen and (max-width: 767px) { #main .tt6_sec { padding: 5% 0 12% 0; }
  #main .tt6_sec .flex { display: block; }
  #main .tt6_sec .calendar { max-width: 100%; height: auto; margin-bottom: 3%; float: none; }
  #main .tt6_sec .calendar>iframe{ height: 430px; }
  #main .tt6_sec .txt { max-width: 100%; margin-left: 0; }
  #main .tt6_sec .txt p:nth-child(1) { font-size: 16px; }
  #main .tt6_sec .txt p:nth-child(2) { font-size: 16px; } }

/* ========== end △ */
/* ▽ PC-TAB layout ========== */
/* ========== end △ */
/* ▽ SP layout ========== */
@media only screen and (max-width: 767px) { #main .tt7_sec .tt7_sec { padding: 10% 0 5% 0; }
  #main .tt7_sec .flex { display: block; }
  #main .tt7_sec .flex .tt7 { width: 100%; margin-bottom: 22%; }
  #main .tt7_sec .flex .tt7 .bx { margin-bottom: 10%; padding: 0 2%; }
  #main .tt7_sec .flex .tt7 .bx p { line-height: 2; font-size: 16px; }
  #main .tt7_sec .news { margin-bottom: 10%; height: 60vw; }
  #main .tt7_sec .news dl { margin-bottom: 3%; padding-bottom: 3%; font-size: 16px; }
  #main .tt7_sec .news dl dt { font-weight: 500; padding-bottom: 2%; font-size: 16px; } }

/* ========== end △ */
.sedt { margin-top:18%;margin-bottom: 85px; }

.sedt ul { display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-pack: justify; -ms-flex-pack: justify; justify-content: space-between; width: 1180px; margin: auto; }

.sedt ul img {
  max-width:100%;height:auto;
}
/* ▽ SP layout ========== */
@media only screen and (max-width: 639px) { .sedt ul { width: 100%; -ms-flex-wrap: wrap; flex-wrap: wrap; } }

/* ========== end △ */
.sedt ul li { -webkit-animation: fl 3s linear infinite; animation: fl 3s linear infinite; position: relative; }

/* ▽ SP layout ========== */
@media only screen and (max-width: 639px) { .sedt ul li { width: 45%; } }

/* ========== end △ */
.sedt ul li a { display: inline-block; position: relative; -webkit-box-shadow: 11px 11px 15px rgba(0, 0, 0, 0.3); box-shadow: 11px 11px 15px rgba(0, 0, 0, 0.3); }

.sedt ul li a:after { content: ''; width: 41px; height: 40px; background-image: url("../images/iced.png"); position: absolute; right: 0; bottom: 0; }

.sedt ul li:first-child a { -webkit-transform: rotate(-15deg); -ms-transform: rotate(-15deg); transform: rotate(-15deg); bottom: 20px; }

/* ▽ SP layout ========== */
@media only screen and (max-width: 639px) { .sedt ul li:first-child a { left: 10px; } }

/* ========== end △ */
.sedt ul li:nth-child(2) a { -webkit-transform: rotate(-5deg); -ms-transform: rotate(-5deg); transform: rotate(-5deg); }

/* ▽ SP layout ========== */
@media only screen and (max-width: 639px) { .sedt ul li:nth-child(2) a { left: -10px; } }

/* ========== end △ */
.sedt ul li:nth-child(3) a { -webkit-transform: rotate(20deg); -ms-transform: rotate(20deg); transform: rotate(20deg); bottom: 110px; right: -20px; }

/* ▽ SP layout ========== */
@media only screen and (max-width: 639px) { .sedt ul li:nth-child(3) a { bottom: 20px; } }

/* ========== end △ */
.sedt ul li:nth-child(4) a { -webkit-transform: rotate(7deg); -ms-transform: rotate(7deg); transform: rotate(7deg); bottom: -40px; }

/* ▽ SP layout ========== */
@media only screen and (max-width: 639px) { .sedt ul li:nth-child(4) a { left: -20px; } }

/* ========== end △ */
/* ▽ SP layout ========== */
@media only screen and (max-width: 639px) { .sedt { margin-bottom: 18%; } }

/* ========== end △ */
@-webkit-keyframes fl { 0% { -webkit-transform: translateY(0); transform: translateY(0); }
  33.33333% { -webkit-transform: translateY(-20px); transform: translateY(-20px); }
  66.66667% { -webkit-transform: translateY(0); transform: translateY(0); }
  100% { -webkit-transform: translateY(0); transform: translateY(0); } }
@keyframes fl { 0% { -webkit-transform: translateY(0); transform: translateY(0); }
  33.33333% { -webkit-transform: translateY(-20px); transform: translateY(-20px); }
  66.66667% { -webkit-transform: translateY(0); transform: translateY(0); }
  100% { -webkit-transform: translateY(0); transform: translateY(0); } }

.secTopics {
    padding-bottom: 50px;
}
.secTopics .topics_inner {
    max-width: 1000px;
	margin-left: auto;
	margin-right: auto;
}
.secTopics .secTopics_body {
    border-top: 2px solid #158530;
    border-bottom: 2px solid #158530;
}
.secTopics .secTopics_body:nth-child(3) {
    border-top: none;
}
.secTopics .secTopics_list {
    margin: 0;
    padding-right: 1em;
    padding-left: 1em;
    list-style-type: none;
}

.secTopics  #campaign-img-link {
  position:relative;
  left:calc(50% - 315px);
}

.secTopics  #campaign-img-link .campaign_imgWrap{
  margin-bottom:20px;
}

.secTopics .secTopics_list > li {
    margin-top: 1.5em;
    margin-bottom: 1.5em;
	border-bottom: 1px solid #bebebe;
	padding-bottom: 20px;
}
.secTopics .secTopics_list > li:last-child {
	border-bottom: none;
	padding-bottom: 0px;
}
.secTopics .secTopics_list .list_item {
    margin: 0;
    display: table;
    width: 100%;
}
.secTopics .secTopics_list .list_item > dt {
    padding-right: 32px;
    display: table-cell;
    vertical-align: middle;
	color: #158530;
    font-size: 14px;
    font-weight: 700;
}
.secTopics .secTopics_list .list_item > dd {
    display: table-cell;
    vertical-align: middle;
    color: #000;
    overflow: hidden;
    font-size: 15px;
}
.secTopics .secTopics_list .list_item > dd a{
	color: #333;
}
.secTopics .secTopics_list .list_item > dd a:hover{
	text-decoration: none;
}
.secTopics h2 {
    word-break: keep-all;
	color: #158530;
	font-family: "DFSoGei";
	font-size: 64px;
	font-weight: 100;
	-ms-transform: scale(0.65, 1);
	transform: scale(0.65, 1);
	-webkit-transform: scale(0.65, 1);
	-o-transform: scale(0.65, 1);
	letter-spacing: 8px;
	line-height: 1.2;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	display: -webkit-flex;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	-webkit-justify-content: center;
	-moz-justify-content: center;
	-ms-justify-content: center;
	-webkit-box-align: end;
	-ms-flex-align: end;
	align-items: flex-end;
	-webkit-align-items: flex-end;
	-moz-align-items: flex-end;
	-ms-align-items: flex-end;
	margin-bottom: 15px;
  }

.secTopics h2.delete-campaign{
  font-size:96px;
}

.secTopics .btn.green {
	max-width: 240px !important;
	margin-top: 30px !important;
}
.secTopics .btn.green a{
    font-size: 16px !important;
	padding: 11px !important;
}
.secTopics .btn.green a:after{
	border-bottom: 8px solid transparent !important;
	border-top: 8px solid transparent !important;
	border-left: 15px solid #fff;
}
@media only screen and (max-width: 639px) {
	.secTopics h2 {font-size: 32px; }
	.secTopics .secTopics_list > li {
		margin: 10px 0;
		padding-bottom: 10px;
	}
  .secTopics  #campaign-img-link {
    position:initial;
  }
  .secTopics h2.campaign-info {
    font-size:26px;
  }
  .secTopics h2.campaign-info.delete-campaign {
    font-size:12vw;
  }
}

@media only screen and (max-width: 370px) {
  .secTopics h2.campaign-info {
    font-size:24px;
  }
}


/* ADD カスタム*/
.campaign_wrap {
    font-family: Verdana, 游ゴシック, YuGothic, "Hiragino Kaku Gothic ProN", Meiryo, sans-serif;
    width: 85%;
    height: 415px;
    padding: 16px;
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 50px;
    border: 4px solid #ffb64c;
    border-radius: 40px;
    padding: 30px 40px 50px;
}

.campaign_wrap h2 {
    word-break: keep-all;
    color: #158530;
    font-family: "DFSoGei";
    font-size: 64px;
    font-weight: 100;
    -ms-transform: scale(0.65, 1);
    transform: scale(0.65, 1);
    -webkit-transform: scale(0.65, 1);
    -o-transform: scale(0.65, 1);
    letter-spacing: 8px;
    line-height: 1.2;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    display: -webkit-flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-justify-content: center;
    -moz-justify-content: center;
    -ms-justify-content: center;
    -webkit-box-align: end;
    -ms-flex-align: end;
    align-items: flex-end;
    -webkit-align-items: flex-end;
    -moz-align-items: flex-end;
    -ms-align-items: flex-end;
    margin-bottom: 15px;
}

.campaign_wrap img {
    width: 500px;
    height: 350px;
    padding: 0 16px 16px 0;
    margin-right: 16px;
    float: left;
}

.campaign_wrap .campaign_txt {
    float: left;
    align-items: center;
    width: 35%;
}

.campaign_txt .campaign_ttl {
    height: 150px;
    padding: 50px 0 20px;
    font-size: 21px;
}

.campaign_txt .campaign_btn {

    height: 45px;
    line-height: 45px;
    font-size: 14px;
    text-align: center;
    border-radius: 3px;
    -webkit-box-shadow: 0 4px 0 0 #a87639;
    box-shadow: 0 4px 0 0 #a87639;
    background-color: #FEB64D;
    color: #fff;
    cursor: pointer;
    -webkit-transform: translateY(-4px);
    -moz-transform: translateY(-4px);
    -ms-transform: translateY(-4px);
    transform: translateY(-4px);
    font-weight:bold;
}

.campaign_txt .campaign_ttl:hover {
    text-decoration: underline;
}

.campaign_txt .campaign_btn:hover {
    background-color: #e5a14e;
}

.campaign_wrap .underElement {
    clear: both;
}

@media (min-width: 1175px) {
    .campaign_wrap {
        width: 1000px;
    }
}


@media (max-width: 1174px) {
    .campaign_wrap  {
        width: calc(100% - 8px);
        height: auto;
        padding: 30px 0px 50px;
    }

    .campaign_wrap h2 {
        margin-bottom: 0;
    }

    .campaign_wrap .campaign_txt {
        width: 100%;
    }

    .campaign_imgWrap img {
        width:70%;
        float: none;
        height: 100%;
        margin: 0;
    }

    .campaign_txt .campaign_ttl {
        padding: 10px 0 50px;
        margin: 0 20px;
        height: auto;
    }

    .campaign_txt .campaign_btn {
        width: 600px;
        margin: 0 auto 25px;
    }

}

@media (max-width: 767px) {
    .campaign_wrap {
        padding-bottom: 30px;
    }

    .campaign_wrap img {
        width: 100%;
        height: auto;
        padding: 0 0 16px;
    }

    .campaign_txt .campaign_ttl {
        padding:  10px 0 30px;
    }

    .campaign_txt .campaign_btn {
        width: calc(70% + 8px);
    }
}

@media (max-width: 425px) {
    .campaign_wrap .campaign_label {
        display: none;
    }
}

/* end campaign_wrap */

#main .tit02 {
    margin-bottom: 30px;
}

#main .tt6_sec p.tit02_add {
    width: 800px;
    text-align: center;

    color: #168531;
    font-size: 16px;
    margin: 0 auto 15px;
}

@media (max-width: 800px) {
    #main .tt6_sec p.tit02_add {
        width: 100%;
        font-size: 3.5vw;
        margin-bottom: 10px;
    }
}

.possible_area {
    width: 1200px;
    margin: 0 auto 20px;
    text-align: left;
}

@media (max-width: 1200px) {
    .possible_area {
        width: 100%;
    }
}

.possible_area .area {
    text-align: center;
    color: #FEB64D;
    font-size: 114%;
    padding: 25px;
    font-weight:600;
}

.possible_area .prefecture {
    color: #fff;
    font-size: 14px;
    margin-bottom: 15px;
    font-weight:600;
}

.possible_area .prefecture:not(:second-child) {
    margin-top:20px;
}

.possible_area dl:after {
    content:'';
    display:block;
    clear: both;
}

.possible_area dt {
    display:block;
    margin-bottom:20px;
}

.possible_area dd {
    color: #ddd;
    margin: 0 0 10px 20px;
    float: left;
}

.last_logo img {
    top: 0;
}

@media only screen and (max-width: 639px) {
  .campaign_wrap h2 {
      font-size: 28px;
      letter-spacing: 4px;
      font-size: 28px;
      height: 65px;
      line-height: 65px;
      margin-bottom:10px;
  }

  #main .tit02 {
    margin-bottom: 20px;
  }
}

@media screen and (min-width: 768px) {
  .cv-area-container .btn-cv a:hover {
    transition: .5s;
    transform: translateY(4px);
    box-shadow: none;
  }
}

/* marker */
.marker-yellow {
  background: linear-gradient(transparent 50%, #ffff00 0%);
  font-weight: bold;
}


/* client */
@media (min-width: 767px) {
  #main .about_client #watering-can.sp{
    display:none;
  }
}
#main .about_client #watering-can{
    display:inline-block;
    position:relative;
    top:-50px;
    right:-30px;
    transform: scale(1.5, 1);
    -webkit-transform: scale(1.5, 1);
    -o-transform: scale(1.5, 1);
    -moz-transform: scale(1.5, 1);
}
#main .about_client h2.tit01 span.main{
  white-space: nowrap;
  font-size: 96px;
  color:#158530;
  font-family: "DFSoGei";
  font-weight: 500;
  -ms-transform: scale(0.7, 1);
  transform: scale(0.7, 1);
  -webkit-transform: scale(0.7, 1);
  -o-transform: scale(0.7, 1);
  -moz-transform: scale(0.7, 1);
  letter-spacing: 10px;
  padding-bottom: 10px;
}

#main .about_client h2.tit01 span.sub{
  font-family: inherit;
  display:inline-block;
  font-size:44px;
  color:#ffb64c;
  letter-spacing: 5px;
  transform: scale(1, 1);
  -webkit-transform: scale(1, 1);
  -o-transform: scale(1, 1);
  -moz-transform: scale(1, 1);
  border-bottom: #158530 solid 4px;
  padding-bottom:5px;
  position:relative;
  left:-300px;
}

#main .about_client .container {
    max-width:1200px;
    margin:auto;
    margin-bottom:70px;
    display:flex;
    flex-wrap:wrap;
}

#main .about_client .container .parts{
    width:calc(50% - 24px);
    margin:5px;
    border:#158530 2px solid;
    display:flex;
}

#main .about_client .container .parts .img-area{
    width:40%;
}
#main .about_client .container .parts .img-area img{
    width:100%;
    height:92%;
    margin:3%;
}
#main .about_client .container .parts .disp-area{
    width:60%;
    padding-top:10px;
    padding-left:15px;
}

#main .about_client .container .parts .disp-area h3{
    font-size:20px;
}
#main .about_client .container .parts .disp-area p{
    margin-top:10px;
    color:#71573d;
    font-weight:bold;
    font-size:17px;
}

@media (max-width: 767px) {
  #main .about_client .sp-br {
    display:block;
  }
  #main .about_client h2.tit01 {
    margin-top:-50px;
    margin-bottom:20px;
  }
  #main .about_client h2.tit01 span.main{
    z-index:999;
    margin-bottom:20px;
    width:160%;
    font-size:10vw;
    letter-spacing: 5px;
    position:relative;
    left:-30%;
  }
  #main .about_client h2.tit01 span.sub{
    font-size:6vw;
    border-bottom: #158530 solid 3px;
    padding-bottom: 0;
    margin-bottom:5px;
    left:-25%;
  }
  #main .about_client .container .parts{
    width:96%;
    height:250px;
    display:flow-root;
  }
  #main .about_client .container .parts h3{
    font-size:5vw;
    display:block;
    width:100%;
    text-align:center;
    padding-top:5px;
    padding-bottom:5px;
  }
  #main .about_client .container .parts .img-area{
    float:left;
    width:25%;
  }
  #main .about_client .container .parts .disp-area{
    padding-left:8px;
    white-space: nowrap;
    float:left;
    width:70%;
  }
  #main .about_client .container .parts .disp-area p{
    margin-top:0;
    font-size:3.7vw;
  }
  #main .about_client #watering-can{
    display:block;
    position:relative;
    z-index:1;
    top:0;
    left:55%;
    transform: scale(0.7, 0.7);
    -webkit-transform: scale(0.7, 0.7);
    -o-transform: scale(0.7, 0.7);
    -moz-transform: scale(0.7, 0.7);
  }
  #main .about_client #watering-can.pc{
    display:none;
  }
}

@media (max-width: 450px) {
  #main .about_client .container .parts {
    width:96%;
    height:120px;
  }
  #main .about_client .container .parts .img-area {
    height:70%;
  }
}

/*フォント調整 base.cssを上書く*/
.full_menu .site_wrap li a,.full_menu .site_wrap li div,
#main .tit01, #main .tit01 span, #main .btn a,
.secTopics h2, #main .tt2_sec .tt2_sec_inner .tt h2,
#main .tit02 span, #main .tit02, #footer .f_contact a,
#footer .f_nav ul li a
{
  font-family: "メイリオ",Meiryo,"ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","游ゴシック","Yu Gothic","游ゴシック体",Verdana,Arial,Roboto,YuGothic,"ＭＳ Ｐゴシック",monospace,sans-serif;
}
@media only screen and (max-width: 767px) {
    #footer .f_nav ul .hsub a, #footer .f_nav ul .hsub div {
        font-family: "メイリオ",Meiryo,"ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","游ゴシック","Yu Gothic","游ゴシック体",Verdana,Arial,Roboto,YuGothic,"ＭＳ Ｐゴシック",monospace,sans-serif;
    }
}

.tit02.client-ex {
  letter-spacing: 3px;
}

/*こんなひとにご依頼いただいています*/
#main .tt5_sec.client-ex span{
  letter-spacing: 3px;
}
#main .tt5_sec.client-ex:before { content: ''; position: absolute; top: -62px; left: 0; width: 100%; height: 63px; background: url("../images/bg04_i.png"); background-repeat: repeat-x; }
#main .tt5_sec.client-ex .slide02 {
  display: flex;
  align-items: stretch;
}

#main .tt5_sec.client-ex .slide02 .case { position: relative; overflow: hidden; width:100%; margin:15px;}

#main .tt5_sec.client-ex .slide02 .case .case_numb { background-color: rgba(255, 182, 76, 0.9);  font-size: 24px; color: #fff; font-weight: 600; position: absolute; top: 50px; left: -70px; -ms-transform: rotate(-45deg) translate(0, -50%); transform: rotate(-45deg) translate(0, -50%); -webkit-transform: rotate(-45deg) translate(0, -50%); -o-transform: rotate(-45deg) translate(0, -50%); -moz-transform: rotate(-45deg) translate(0, -50%); width: 300px; text-align: center; -webkit-box-shadow: 0 0 10px 1px rgba(0, 0, 0, 0.3); box-shadow: 0 0 10px 1px rgba(0, 0, 0, 0.3); }

#main .tt5_sec.client-ex .slide02 .case .case_inner { padding: 15px; max-width: 90%; background-color: #fff; height:100%;}
#main .tt5_sec.client-ex .slide02 .case .case_inner img { max-width:95%;height:auto; }
#main .tt5_sec.client-ex .slide02 .case h3 { color: #71573d; font-weight: 600;  font-size: 200%; margin-bottom: 10px; text-align: center; }

#main .tt5_sec.client-ex .slide02 .case p { line-height: 1.5; margin-bottom: 10px; }

#main .tt5_sec.client-ex .slide02 .case img { max-width: 100%; margin: 0 auto 10px auto; }

@media only screen and (max-width: 767px) { 
  #main .tt5_sec.client-ex span{
    margin-left: -30px; margin-right: -30px;
  }
  #main .tt5_sec.client-ex .slide02 { margin-bottom: 3%; display:block; }
  #main .tt5_sec.client-ex .slide02 .case { margin:15px 10px 20px;}
  #main .tt5_sec.client-ex .slide02 .case h3 { font-size: 4vw; margin-bottom: 7%; font-size: 150%;}
  #main .tt5_sec.client-ex .slide02 .case .case_inner { padding: 2.5%; max-width: 90%; height:inherit; }
  #main .tt5_sec.client-ex .slide02 .case .case_numb { display: block; font-size: 4vw; top: 6%; width: 50%; left: -13%; }
  #main .tt5_sec.client-ex .slide02 .case .case_inner img { margin:auto; margin-bottom:15px; max-width: 100%;}
}

/*instagram*/
.instagram_hidden {
  display:none;
}
#main #load-more {
  margin:20px auto;
  font-size:28px;
  font-weight:600;
}

#main #load-more {
  padding:0;
} 
#main .tt_instagram_sec .tt_instagram_sec_inner{
  font-family: "ＭＳ Ｐゴシック",'Noto Sans JP', sans-serif;
}
#main .tt_instagram_sec .green:after {
  content:"";
  border:initial;
}
#main .tt_instagram_sec img.logo {
  margin:auto;
  width:80px;
  height:80px;
}

#main .tt_instagram_sec .btn a:after { content: ""; border:none; }

.tt_instagram_sec {
  background-image: url("../images/instagram/background.jpg");
}
.tt_instagram_sec .tt_instagram_sec_inner { max-width: 1600px; margin: 0 auto; text-align: center; padding-top:50px;padding-bottom:30px; }
.tt_instagram_sec .tt_instagram_sec_inner div { background-color: #fff; margin:20px auto; width:95%; padding-bottom:20px; padding-top:20px}
.tt_instagram_sec .tt_instagram_sec_inner img { width: 100%; height:100%;}
.tt_instagram_sec .tt_instagram_sec_inner .tt { text-align: center; display: inline-block; position: relative; margin-bottom: 30px; padding-top: 15px; }
.tt_instagram_sec .tt_instagram_sec_inner h2 { word-break: keep-all; color:rgb(231, 65, 106); font-size: 72px; font-weight: 100; -ms-transform: scale(0.65, 1); transform: scale(0.65, 1); -webkit-transform: scale(0.65, 1); -o-transform: scale(0.65, 1); letter-spacing: 8px; line-height: 1.2; display: -webkit-box; display: -ms-flexbox; display: flex; display: -webkit-flex; -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center; -webkit-justify-content: center; -moz-justify-content: center; -ms-justify-content: center; -webkit-box-align: end; -ms-flex-align: end; align-items: flex-end; -webkit-align-items: flex-end; -moz-align-items: flex-end; -ms-align-items: flex-end; margin-bottom: 15px; margin-top:20px;transform: scaleX(0.9);}
.tt_instagram_sec .tt_instagram_sec_inner p.h2-sub {
  font-size:54px;
  margin-top:-10px;
  transform: scaleX(1.1);
  margin-bottom:30px;
}
.tt_instagram_sec .tt_instagram_sec_inner p { color :rgb(231, 65, 106); font-size:28px; font-weight:700}
.tt_instagram_sec .tt_instagram_sec_inner ul { display: flex;flex-flow: row wrap; margin: auto;justify-content:space-around;}
.tt_instagram_sec .tt_instagram_sec_inner ul li {
  margin:10px;
  width:23.5%;
}
@media only screen and (max-width: 767px) { 
  #main .tt_instagram_sec .sp-br {
    display:block;
  }
  #main .tt_instagram_sec img.logo {
    width:50px;
    height:50px;
  }
  #main .tt_instagram_sec .tt_instagram_sec_inner ul li {
    width:43%;
  }
  #main .tt_instagram_sec .tt_instagram_sec_inner h2 {
    margin-top:10px;
    font-size:8vw;
  }
  #main .tt_instagram_sec .tt_instagram_sec_inner p {
    width:96%;
    margin:auto;
    margin-top:10px;
    font-size:14px;
    font-weight:bolder;
    transform:scaleX(1.0);
  }
  #main .tt_instagram_sec .tt_instagram_sec_inner p.h2-sub {
    margin-top:-12px;
    margin-bottom:25px;
    font-size:5.8vw;
  }

  .tt_instagram_sec .tt_instagram_sec_inner div { padding-bottom:10px; padding-top:10px}
  .tt_instagram_sec .tt_instagram_sec_inner div a {
    padding:0;
  }
  #main .tt_instagram_sec .btn a:after { content: ""; border:none !important; }
  #main #load-more {
    padding:0;
    font-size:16px;
    font-weight: 600;
  }
}

/* セクションのスペース調整 sp*/
#main .sec.secTopics {
  padding-top:70px;
  background-color: #fff;;
} 
#main .tt2_sec,
#main .tt4_sec
{
  padding-top:50px; 
}
#main .tt5_sec {
  padding-top:80px; 
}
#main .tt5_sec .content .bor{
  padding-top:20px; 
}
#main .tt7_sec {
  padding-top:50px; 
}

@media (max-width: 768px) {
  #main .sec.secTopics {
    padding-top:40px;
  } 
  #main .tt2_sec,
  #main .tt4_sec
  {
    padding-top:30px; 
  }
  #main .tt3_sec {
    background-color: #fff;
    padding-top:120px; 
  }
  #main .tt5_sec {
    padding-top:60px; 
  }
  #main .tt5_sec .content .bor{
    padding-top:20px; 
  }
  #main .tt7_sec {
    padding-top:30px; 
  }
}
/*お問い合わせ */
.contact-section {
    background: url(../images/bg04.png);
    padding:50px 0 75px;
    text-align: center;
}
.contact-section .flex {justify-content: center;}
.contact-section h2{ font-size: 32px;margin-bottom:35px;}
.contact-section h2 div.title{ margin:15px 0; line-height:120%;}
.contact-section h2 div.title span{font-size:60%; }
.contact-section h2 div.tyuki{ font-size: 20px; font-weight:500;}
.contact-section .site_wrap { padding: 0 30px; }
.contact-section .cnt { width: 35%; height:66px;}
.contact-section .cnt:nth-child(1) { background-color: #00b900; color: #fff; margin-right:20px;}
.contact-section .cnt:nth-child(1) a { color: #fff; }
.contact-section .cnt:nth-child(1) a:after { content: ''; background: url("../common_img/line.webp"); background-repeat: no-repeat; background-position: center; background-size: 100% auto; width: 60px; height: 60px; position: absolute; top: 12px; left: 4%; -ms-transform: translate(0, -50%); transform: translate(0, -50%); -webkit-transform: translate(0, -50%); -o-transform: translate(0, -50%); -moz-transform: translate(0, -50%); }
.contact-section .cnt:nth-child(2) { background-color: #ffb64c; color: #4a3725; margin-left:20px; }
.contact-section .cnt:nth-child(2) a { color: #4a3725; }
.contact-section .cnt:nth-child(2) a:after { content: ''; background: url("../common_img/mail.webp"); background-repeat: no-repeat; background-position: center; background-size: 100% auto; position: absolute; top: 12px; width: 40px; height: 32px; left: 11%; -ms-transform: translate(0, -50%); transform: translate(0, -50%); -webkit-transform: translate(0, -50%); -o-transform: translate(0, -50%); -moz-transform: translate(0, -50%); }
.contact-section a { margin-top:20px;height:100%; font-size: 18px; text-decoration: none; font-weight: 700; display: block; position: relative; }
.contact-section a.button { padding: 0px 0px 0px 45px; position: relative; }



@media (max-width: 768px) {
  .contact-section {
      padding:50px 0 50px;
  }
  .contact-section .site_wrap {padding:0 5px;}
  #main .contact-section p.tyuki{ font-size: 20px; font-weight:500;margin-top:40px;}
  .contact-section .cnt { width: 85%; height:66px;display: block;}
  .contact-section .flex {display: block;}
  .contact-section a.button { padding: 17px 0px 0px 25px; position: relative; }
  .contact-section .cnt:nth-child(1) {margin:5px auto;}
  .contact-section .cnt:nth-child(1) a:after {top:32px;left:4%;}
  .contact-section .cnt:nth-child(2) {margin:5px auto;}
  .contact-section .cnt:nth-child(2) a:after {top:32px;left:7%;}
  .contact-section h2 div.tyuki.tyuki-after{ font-size: 16px; font-weight:500;}
}

/* FAQ */
#main .tt4_sec.faq{
  background: #fff;
}
#main .tt4_sec.faq p {
  margin-top:20px;
  color:#333;
}
#main .tt4_sec.faq p a{
      text-decoration-skip-ink: none;
    -webkit-text-decoration-skip: none;
    color: #1155cc;
    text-decoration: underline;
}
#main .faq h2.faq-tit01{
  margin-bottom:0px;
  padding-bottom:0px;
}
#main .faq h2.faq-tit01 span{
  letter-spacing:10px;
}

.faq h3.faq-question {
  color:#666666;
  font-size: 24px;
  margin-top:30px;
  padding-top: 8pt;
  padding-left: 2pt;
  border-left-color: #d8e6fd;
  padding-bottom: 4pt;
  line-height: 1.3;
  page-break-after: avoid;
  border-left-width: 2.2pt;
  background-color: #f3f3f3;
  border-left-style: solid;
  orphans: 2;
  widows: 2;
  text-align: left;
  font-weight: 700;
  font-family: "Proxima Nova";
  display: flex;
}
.faq .faq-answer {
  display: none;
}
.faq ul {
  margin-top:20px;
}
.faq ul li {
  margin-left:22px;
  color:#333;
}
.faq ul.disc {
  list-style-type: disc;
}
.faq ul.number {
  list-style-type: decimal;
}
.faq table {
    margin-top:20px;
    border-spacing: 0;
    border-collapse: collapse;
    margin-right: auto;
    max-width:800px;
}

.faq table th {
  text-align: center;
  border-right-style: solid;
  border-bottom-color: #c9c9c9;
  border-top-width: 1pt;
  border-right-width: 1pt;
  border-left-color: #c9c9c9;
  vertical-align: top;
  border-right-color: #c9c9c9;
  border-left-width: 1pt;
  border-top-style: solid;
  border-left-style: solid;
  border-bottom-width: 1pt;
  width: 169.1pt;
  border-top-color: #c9c9c9;
  border-bottom-style: solid;
  background-color: #d9eeca;
}

.faq table td {
  padding-left:8px;
  border-right-style: solid;
  border-bottom-color: #c9c9c9;
  border-top-width: 1pt;
  border-right-width: 1pt;
  border-left-color: #c9c9c9;
  vertical-align: top;
  border-right-color: #c9c9c9;
  border-left-width: 1pt;
  border-top-style: solid;
  border-left-style: solid;
  border-bottom-width: 1pt;
  width: 169.1pt;
  border-top-color: #c9c9c9;
  border-bottom-style: solid;
}
.faq table td:first-child {
  width:40%;
}

.faq table p {
  border-right-style: solid;
  padding-top: 0pt;
  border-top-width: 0pt;
  border-right-width: 0pt;
  padding-left: 0pt;
  padding-bottom: 0pt;
  line-height: 1.3;
  border-left-width: 0pt;
  border-top-style: solid;
  border-left-style: solid;
  border-bottom-width: 0pt;
  border-bottom-style: solid;
  orphans: 2;
  widows: 2;
  text-align: center;
  padding-right: 0pt;
}

.faq .faq-question .question-content{
  width:95%;
}
.faq .minus {
    position: relative;
    top: 0;
    right: 0;
}
.faq .minus::before {
    content: '';
    display: inline-block;
    position: absolute;
    width: 3px;
    height: 20px;
    background-color: #158530;
    transform: rotate(90deg);
}

.faq .plus {
    position: relative;
    top: 0;
    right: 0;
}
.faq .plus::before,.plus::after  {
    content: '';
    display: inline-block;
    position: absolute;
    width: 3px;
    height: 20px;
    background-color: #158530;
}
.faq .plus::after {
    transform: rotate(90deg);
}

@media (max-width: 768px) {
  #main .faq h2.faq-tit01 span{
    letter-spacing:4px;
  }
  #main .tt4_sec.faq p {
    font-size:16px;
  }
  .faq h2.faq-tit01 {
    margin-left:0;
    font-size:24px;
  }
  .faq h3.faq-question {
    margin-left:0;
    font-size:18px;
    height:47px;
    vertical-align: middle;
    display: flex;
    align-items: center;
  }
  #main .tt4_sec.faq .tt4_sec_inner {
    margin: 0 3% 0 4%;
  }

  .faq .faq-question .question-content{
    width:90%
  }
  .faq .minus {
      top: -16px;
      right: -14px;
  }
  .faq .plus {
      top: -16px;
      right: -14px;
  }
}

.ten-year-guarantee {
  background-image: url("../images/guarantee-back.jpg");
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center top;
  font-size:22px;
  font-weight:500;
}
.ten-year-guarantee {
  padding:120px 0;
}       
.ten-year-guarantee div{
  margin-top:20px;
  margin-bottom:20px;
}
.ten-year-guarantee .title {
  text-align: center;
  font-size: 88px;
  color:#158530;
}
.ten-year-guarantee .title p{
  font-size: 42px;
  font-weight:bold;
}
.ten-year-guarantee .introduction {
  margin:auto;
  width:1000px;
}
.ten-year-guarantee .introduction img{
  margin:20px auto 40px;
}
.ten-year-guarantee .conclusion {
  text-align: center;
  color:#158530;
  font-weight: bold;
  margin:0px 0 60px 0;
}
.ten-year-guarantee .conclusion img {
  position:relative;
  width:150px;
}
.ten-year-guarantee .conclusion #turf-img-left {
   left:-300px;
   top:60px;
}
.ten-year-guarantee .conclusion #turf-img-right {
   right:-300px;
   top:60px;
}
.ten-year-guarantee .content {
  text-align: center;
  margin:auto;
}
@media print, screen and (max-width: 768px) {
  .ten-year-guarantee {
    padding-top:60px;
    padding-bottom:60px;
  }
  .ten-year-guarantee div {
    width:95%;
  }
  .ten-year-guarantee .introduction {
    width:95%;
  }
  /*
  #main .ten-year-guarantee .introduction p,
  #main .ten-year-guarantee .conclusion p
  {
    font-size:14px;
  }
  */
  .ten-year-guarantee .title {
    margin:auto;
    font-size:10vw;
    margin-bottom:30px;
    width:100%;
    line-height: 13vw;
  }
  #main .ten-year-guarantee .title p {
    font-size:14px;
    text-align: center;
  }
  .ten-year-guarantee .content {
    width:100%;
    padding:0;
  } 
  .ten-year-guarantee .conclusion {
    width:100%;
    margin:auto;
    margin-bottom:30px;
  }
  .ten-year-guarantee .conclusion .turf-img{
    margin:auto;
    font-size:15px;
  }
  .ten-year-guarantee .conclusion img {
    width:80px;
  }
  .ten-year-guarantee .conclusion #turf-img-left {
     left:-120px;
     top:40px;
  }
  .ten-year-guarantee .conclusion #turf-img-right {
     right:-120px;
     top:40px;
  }
  .ten-year-guarantee .content img{
    height:250px;
  }
}

@media (max-width: 768px) {
  .pc {
    display: none;
  }
}

.sp {
  display: none;
}
@media (max-width: 768px) {
  .sp {
    display: block;
  }
}

.img {
  width: 100%;
  height: auto;
  display: block;
  -o-object-fit: cover;
     object-fit: cover;
}

.l-inner {
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 20px;
}

.fv {
  padding-top: 100px;
  width: 100%;
  position: relative;
}
@media (max-width: 768px) {
  .fv {
    padding-top: 0;
  }
}
.fvWrap {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  position: relative;
}
@media (max-width: 768px) {
  .fvWrap {
    grid-template-columns: repeat(2, 1fr);
  }
}
.fvImg {
  width: 100%;
  height: auto;
  -o-object-fit: cover;
     object-fit: cover;
}
@media (max-width: 768px) {
  .fvImg {
    height: 27vh;
  }
}
.fvBox {
  position: absolute;
  top: 40%;
  left: 0;
  right: 0;
  margin: 0 auto;
  color: #fff;
  background: rgba(24, 24, 24, 0.1);
  -webkit-backdrop-filter: blur(8px);
          backdrop-filter: blur(8px);
  width: 47.65625vw;
  padding: 10px;
  border-radius: 10px;
}
@media (max-width: 768px) {
  .fvBox {
    width: 84vw;
    top: 25%;
  }
}
.fvTitle {
  width: 100%;
}
.fvBanner {
  width: 28.125vw;
  position: absolute;
  bottom: 25px;
  right: 25px;
}
@media (max-width: 768px) {
  .fvBanner {
    width: 60vw;
    left: 0;
    right: 0;
    margin: 0 auto;
  }
}

.c-reason {
  padding: 60px 0 120;
}
@media (max-width: 768px) {
  .c-reason {
    padding: 30px 0 60px;
  }
}
.c-reasonHead {
  font-size: 20px;
  line-height: 2;
  text-align: center;
  margin-bottom: 100px;
}
@media (max-width: 1024px) {
  .c-reasonHead {
    font-size: 16px;
  }
}
.c-reasonHead span {
  font-size: 24px;
  color: #1d8332;
  font-weight: bold;
}
@media (max-width: 1024px) {
  .c-reasonHead span {
    font-size: 20px;
  }
}
.c-reasonHead strong {
  color: #ff0000;
  font-size: 36px;
}
@media (max-width: 1024px) {
  .c-reasonHead strong {
    font-size: 30px;
  }
}
.c-reasonTitle {
  width: 400px;
  margin: 0 auto 40px;
  background-color: #1d8332;
  color: #fff;
  font-size: 30px;
  position: relative;
  text-align: center;
  padding: 16px 0;
}
@media (max-width: 768px) {
  .c-reasonTitle {
    font-size: 20px !important;
    max-width: 335px;
  }
}
.c-reasonTitle::after {
  content: "";
  display: inline-block;
  background-image: url(../images/top/arrow-green.png);
  background-size: cover;
  position: absolute;
  width: 53px;
  height: 20px;
  bottom: -20px;
  right: 0;
  left: 0;
  margin: 0 auto;
}
.c-reasonText {
  font-size: 30px;
  font-weight: bold;
  text-align: center;
  margin-bottom: 60px;
}
@media (max-width: 1024px) {
  .c-reasonText {
    font-size: 24px;
  }
}
.c-reasonTable {
  max-width: 830px;
  margin: 0 auto;
}
.c-reasonTableHead {
  background-color: #fab03f;
  color: #fff;
  font-size: 24px;
  text-align: center;
  padding: 13px 0;
}
@media (max-width: 768px) {
  .c-reasonTableHead {
    font-size: 16px;
  }
}
.c-reasonTableItem {
  background-color: #fffcf2;
  border-bottom: 2px solid #cfccc0;
  display: flex;
  align-items: center;
  padding: 17px 20px;
}
.c-reasonTableItemCheck {
  width: 18px;
  height: 14px;
  margin-right: 14px;
  margin-bottom: 3px;
}
.c-reasonTableItemText {
  font-size: 20px;
  line-height: 1;
  font-weight: bold;
}
@media (max-width: 1024px) {
  .c-reasonTableItemText {
    font-size: 16px !important;
  }
}
@media (max-width: 768px) {
  .c-reasonTableItemText {
    font-size: 12px !important;
  }
}
.c-reasonBtn {
  width: -webkit-max-content;
  width: -moz-max-content;
  width: max-content;
  display: block;
  margin: 0 auto 60px;
}
.c-reasonBtnImg {
  max-width: 800px;
}
@media (max-width: 768px) {
  .c-reasonBtnImg {
    max-width: 335px;
  }
}

.c-strong {
  padding: 120px 0;
  background-image: url(../images/top/bg-strong.png);
  background-size: cover;
}
@media (max-width: 768px) {
  .c-strong {
    padding: 60px 0;
  }
}
.c-strongCont {
  background-color: #fff;
  padding: 40px 30px;
}
@media (max-width: 768px) {
  .c-strongCont {
    padding: 20px;
  }
}
.c-strongTitle {
  font-size: 58px;
  font-weight: bold;
  text-align: center;
  color: #158530;
  margin-bottom: 40px;
}
@media (max-width: 1024px) {
  .c-strongTitle {
    font-size: 40px;
  }
}
@media (max-width: 768px) {
  .c-strongTitle {
    font-size: 28px;
    margin-bottom: 20px;
  }
}
.c-strongText {
  font-size: 16px;
  line-height: 2.1;
}
@media (max-width: 768px) {
  .c-strongText {
    font-size: 13px !important;
  }
}

.c-compare {
  padding: 120px 0;
  background-color: #fffcf2;
}
@media (max-width: 768px) {
  .c-compare {
    padding: 60px 0;
  }
}
.c-compareTitle {
  font-size: 58px;
  font-weight: bold;
  color: #158530;
  line-height: 1.3;
  margin-bottom: 60px;
  text-align: center;
}
@media (max-width: 1024px) {
  .c-compareTitle {
    font-size: 40px;
  }
}
@media (max-width: 768px) {
  .c-compareTitle {
    font-size: 23px;
    margin-bottom: 20px;
  }
}
.c-compareBox {
  overflow-x: scroll;
}
@media (max-width: 768px) {
  .c-compareImg {
    width: 200vw;
    max-width: none !important;
  }
}

.c-case {
  padding: 120px 0;
}
@media (max-width: 768px) {
  .c-case {
    padding: 60px 0;
  }
}
.c-caseTitle {
  font-size: 58px;
  font-weight: bold;
  color: #158530;
  line-height: 1.3;
  margin-bottom: 60px;
  text-align: center;
}
@media (max-width: 1024px) {
  .c-caseTitle {
    font-size: 40px;
  }
}
@media (max-width: 768px) {
  .c-caseTitle {
    font-size: 28px;
    margin-bottom: 20px;
  }
}
.c-case .box {
  box-shadow: 12px 12px 15px 1px rgba(0, 0, 0, 0.3);
  padding: 15px 0 40px 0 !important;
  background-color: #e1efde !important;
  width: 31%;
  margin-bottom: 30px;
  border: none !important;
  border-radius: 0 !important;
  display: flex;
  flex-direction: column;
}
@media (max-width: 1024px) {
  .c-case .box {
    width: 47% !important;
  }
}
@media (max-width: 768px) {
  .c-case .box {
    width: 100% !important;
  }
}
.c-case .box .headline {
  padding-top: 0 !important;
}
.c-case .box .headline h3 {
  display: flex;
  align-items: center;
  min-height: 100px;
}
@media (max-width: 768px) {
  .c-case .box .headline h3 {
    min-height: auto;
  }
}
.c-case .box .headline span {
  display: block;
  font-size: 16px;
  color: #158530 !important;
  background: none !important;
  border: none !important;
  margin: 0 0 10px !important;
  padding: 0 0 0 20px !important;
}
.c-case .box img {
  max-width: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.c-case .box .imgg {
  background-color: #efebde;
  height: 277px;
  display: flex;
  align-items: center;
  justify-content: center;
}
.c-case .box .pd {
  padding: 0 20px;
  margin-bottom: 10px;
  margin-top: auto;
}
.c-case .box .txt {
  margin-bottom: 30px;
  line-height: 1.5;
  text-align: justify;
}
.c-case .box a {
  padding: 3.5% 5% !important;
  font-size: 114% !important;
  font-weight: bold;
}

.c-guarantee {
  padding: 120px 0;
  background-color: #f8ffe4;
}
@media (max-width: 768px) {
  .c-guarantee {
    padding: 60px 0;
  }
}
.c-guaranteeTitle {
  font-size: 58px;
  font-weight: bold;
  color: #158530;
  line-height: 1.3;
  margin-bottom: 60px;
  text-align: center;
}
@media (max-width: 1024px) {
  .c-guaranteeTitle {
    font-size: 40px;
  }
}
@media (max-width: 768px) {
  .c-guaranteeTitle {
    font-size: 28px;
    margin-bottom: 20px;
  }
}
.c-guaranteeImg {
  max-width: 1000px;
  margin: 0 auto 40px;
  display: block;
}
.c-guaranteeText {
  font-size: 14px;
  line-height: 1.8;
  margin-bottom: 40px;
}
@media (max-width: 768px) {
  .c-guaranteeText {
    font-size: 12px !important;
  }
}
.c-guaranteeBox {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 28px;
  max-width: 755px;
  margin: 0 auto;
}
@media (max-width: 768px) {
  .c-guaranteeBox {
    grid-template-columns: repeat(1, 1fr);
  }
}
.c-guaranteeItem {
  box-shadow: 6px 6px 27px rgba(0, 0, 0, 0.4);
  background-color: #fff;
}
.c-guaranteeHead {
  background-color: #158530;
  color: #fff;
  font-size: 22px;
  display: grid;
  place-items: center;
  padding: 20px 0;
  font-weight: bold;
}
.c-guaranteeHead.gray {
  background-color: #d0d0d0;
  color: #000000;
}
.c-guaranteeBottom {
  padding: 20px;
}
.c-guaranteeNote {
  font-size: 18px;
  margin-bottom: 20px;
  display: flex;
  align-items: center;
}
.c-guaranteeNote:last-of-type {
  margin-bottom: 0;
}
.c-guaranteeNote::before {
  content: "";
  display: inline-block;
  width: 5px;
  height: 5px;
  border-radius: 50%;
  background-color: #7a7a7a;
  margin-right: 10px;
}

.c-price {
  padding: 120px 0;
}
@media (max-width: 768px) {
  .c-price {
    padding: 60px 0;
  }
}
.c-priceTitle {
  font-size: 58px;
  font-weight: bold;
  color: #158530;
  line-height: 1.3;
  margin-bottom: 60px;
  text-align: center;
}
@media (max-width: 1024px) {
  .c-priceTitle {
    font-size: 40px;
  }
}
@media (max-width: 768px) {
  .c-priceTitle {
    font-size: 28px;
    margin-bottom: 20px;
  }
}
.c-priceText {
  font-size: 18px;
  margin-bottom: 40px;
  line-height: 2.1;
}
@media (max-width: 768px) {
  .c-priceText {
    font-size: 15px !important;
  }
}
.c-priceBox {
  background-color: #e1f0de;
  box-shadow: 12px 12px 32px rgba(0, 0, 0, 0.4);
  padding: 40px;
}
@media (max-width: 768px) {
  .c-priceBox {
    padding: 20px;
  }
}
.c-price .image-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 30px 60px;
  margin-bottom: 30px;
}
@media (max-width: 768px) {
  .c-price .image-grid {
    grid-template-columns: repeat(2, 1fr);
    gap: 10px;
  }
}
.c-price .image-wrap img {
  width: 100%;
  margin-bottom: 20px;
}
@media (max-width: 768px) {
  .c-price .image-wrap img {
    margin-bottom: 10px;
  }
}
.c-price .image-desc {
  color: #71573d;
  font-size: 16px;
  text-align: center;
}
.c-priceBtn {
  background-color: #158530;
  color: #fff;
  font-size: 20px;
  font-weight: bold;
  text-align: center;
  text-decoration: none !important;
  display: block;
  max-width: 400px;
  margin: 0 auto;
  padding: 10px;
}
@media (max-width: 768px) {
  .c-priceBtn {
    font-size: 16px;
  }
}

.c-flow {
  padding: 120px 0;
  background-color: #fff;
  margin-bottom: 0 !important;
}
@media (max-width: 768px) {
  .c-flow {
    padding: 60px 0;
  }
}
.c-flowTitle {
  font-size: 58px !important;
  font-weight: bold;
  color: #158530;
  line-height: 1.3;
  margin-bottom: 60px;
  text-align: center;
}
@media (max-width: 1024px) {
  .c-flowTitle {
    font-size: 40px !important;
  }
}
@media (max-width: 768px) {
  .c-flowTitle {
    font-size: 28px !important;
    margin-bottom: 20px;
  }
}
.c-flowText {
  font-size: 18px;
  margin-bottom: 40px;
  line-height: 2.1;
}
@media (max-width: 768px) {
  .c-flowText {
    font-size: 15px !important;
  }
}
.c-flow .choose-sub::before, .c-flow .choose-sub::after {
  background-image: none !important;
}
.c-flowCta {
  max-width: 715px;
  width: 100%;
  margin: 0 auto;
  background-color: #e1f0de;
  display: flex;
}
@media (max-width: 768px) {
  .c-flowCta {
    flex-direction: column;
  }
}
.c-flowCtaImg {
  aspect-ratio: 240/180;
  max-width: 240px;
  width: 100%;
  height: auto;
  -o-object-fit: cover;
     object-fit: cover;
}
@media (max-width: 768px) {
  .c-flowCtaImg {
    width: 100%;
    max-width: none;
  }
}
.c-flowCtaRight {
  padding: 25px;
}
.c-flowCtaText {
  font-size: 18px;
  line-height: 1.8;
  margin-bottom: 15px;
  text-align: center;
}
.c-flowCtaLink {
  background-color: #158530;
  color: #fff;
  font-size: 20px;
  font-weight: bold;
  text-align: center;
  display: block;
  margin: 0 auto;
  padding: 18px;
  max-width: 290px;
  text-decoration: none !important;
}
@media (max-width: 768px) {
  .c-flowCtaLink {
    font-size: 16px !important;
  }
}

.c-youtube {
  padding: 120px 0;
  background-color: #e1f0de;
}
@media (max-width: 768px) {
  .c-youtube {
    padding: 60px 0;
  }
}
.c-youtubeTitle {
  font-size: 58px;
  font-weight: bold;
  color: #158530;
  line-height: 1.3;
  margin-bottom: 60px;
  text-align: center;
}
@media (max-width: 1024px) {
  .c-youtubeTitle {
    font-size: 40px;
  }
}
@media (max-width: 768px) {
  .c-youtubeTitle {
    font-size: 28px;
    margin-bottom: 20px;
  }
}
.c-youtubeText {
  font-size: 18px;
  margin-bottom: 40px;
  line-height: 2.1;
}
@media (max-width: 768px) {
  .c-youtubeText {
    font-size: 15px !important;
  }
}
.c-youtubeMov {
  width: 100%;
  max-width: 835px;
  display: block;
  margin: 0 auto;
  aspect-ratio: 835/550;
}

.tt1_sec_slide {
  padding-top: 20px !important;
}
.tt1_sec_slide::before {
  display: none;
}

@media (max-width: 1024px) {
  .sedt ul {
    width: 100% !important;
  }
}

#main.case.list_cont .list .box a:after {
  right: 10px !important;
}

.tt4_sec {
  background: none !important;
}
@media (max-width: 768px) {
  .tt4_sec {
    padding-bottom: 60px !important;
  }
}

.p-pageVoiceLink {
  max-width: 285px;
  margin: 80px auto 0;
  display: flex;
  flex-direction: column;
  align-items: center;
}
.p-pageVoiceLinkTitle {
  font-size: 22px;
  font-weight: bold;
  text-align: center;
  margin-bottom: 20px;
}
@media (max-width: 768px) {
  .p-pageVoiceLinkTitle {
    font-size: 14px;
  }
}
.p-pageVoiceLinkBtn {
  color: #1f8631;
  text-align: center;
  font-size: 30px;
  font-weight: bold;
  display: flex;
  gap: 5px;
  align-items: center;
  text-decoration: none !important;
  border-bottom: 2px solid #1f8631;
  width: -webkit-max-content;
  width: -moz-max-content;
  width: max-content;
}
@media (max-width: 768px) {
  .p-pageVoiceLinkBtn {
    font-size: 22px;
  }
}
.p-pageVoiceLinkBtn::after {
  content: "";
  display: inline-block;
  background-image: url(../images/top/icon-link.png);
  background-size: cover;
  width: 19px;
  height: 19px;
}

.contact-section h3 {
  font-size: 32px;
  margin-bottom: 35px;
}

.contact-section h3 div.title {
  margin: 15px 0;
  line-height: 120%;
}

.contact-section h3 div.title span {
  font-size: 60%;
}

.contact-section h3 div.tyuki {
  font-size: 20px;
  font-weight: 500;
}

#header {
  background-color: rgba(255, 255, 255, 0.6) !important;
}

.f_contact {
  opacity: 0;
  transform: translateY(20px);
  transition: 0.6s ease;
}
.f_contact.active {
  opacity: 1;
  transform: translateY(0);
}

.p-handling {
  background-color: #e1f0de;
  padding: 120px 0;
}
@media (max-width: 768px) {
  .p-handling {
    padding: 60px 0;
  }
}
.p-handlingTitle {
  font-size: 58px;
  font-weight: bold;
  color: #158530;
  line-height: 1.3;
  margin-bottom: 80px;
  text-align: center;
}
@media (max-width: 1024px) {
  .p-handlingTitle {
    font-size: 40px;
  }
}
@media (max-width: 768px) {
  .p-handlingTitle {
    font-size: 23px;
    margin-bottom: 20px;
  }
}
.p-handlingText {
  font-size: 22px;
  line-height: 2;
  letter-spacing: 0.05em;
  text-align: center;
  margin-bottom: 20px;
}
@media (max-width: 768px) {
  .p-handlingText {
    font-size: 15px !important;
  }
}
.p-handlingText span {
  color: #158530;
  font-weight: bold;
}
.p-handlingWrap {
  padding: 40px;
  background-color: #fff;
}
@media (max-width: 768px) {
  .p-handlingWrap {
    padding: 20px;
  }
}
.p-handlingTop {
  display: flex;
  align-items: flex-start;
  gap: 14px;
  margin-bottom: 60px;
}
@media (max-width: 768px) {
  .p-handlingTop {
    margin-bottom: 30px;
    flex-direction: column-reverse;
  }
}
.p-handlingTopText {
  font-size: 16px;
  line-height: 2;
  letter-spacing: 0.05em;
}
@media (max-width: 768px) {
  .p-handlingTopText {
    font-size: 14px !important;
  }
}
.p-handlingTopImg {
  aspect-ratio: 312/376;
  max-width: 312px;
}
.p-handlingCenter {
  display: flex;
  justify-content: center;
  gap: 34px;
  margin-bottom: 40px;
}
@media (max-width: 768px) {
  .p-handlingCenter {
    margin-bottom: 20px;
    flex-direction: column;
    gap: 16px;
  }
}
.p-handlingCenterImg {
  aspect-ratio: 382/255;
  max-width: 382px;
}
.p-handlingBottom {
  font-size: 16px;
  line-height: 2;
  letter-spacing: 0.05em;
}
@media (max-width: 768px) {
  .p-handlingBottom {
    font-size: 14px !important;
  }
}
