@charset "UTF-8";
html {
  height: auto !important;
scroll-behavior: smooth;
//    overflow-x: hidden;
}

body {
  height: auto !important;
  font-weight: 400;
  font-family: "Noto Sans JP", "ãƒ’ãƒ©ã‚®ãƒŽè§’ã‚´ Pro W3", "Hiragino Kaku Gothic Pro", "ãƒ¡ã‚¤ãƒªã‚ª", Meiryo, Osaka, "ï¼­ï¼³ ï¼°ã‚´ã‚·ãƒƒã‚¯", "MS PGothic", sans-serif;
  overflow-x: hidden;
font-size: 14px;
text-align:left;
margin:0;
line-height: 1.8;
}


@media screen and (max-width: 769px) {
body {
 font-size: 15px;
}
}


@media all and (min-width: 791px)  {
/* // |- PC  */
  .elmSP {  display:none !important;  }
} 
@media all and (max-width: 769px)  {
/* // |- SP  */
  .elmPC{ display:none !important;  }
} 


#wrapper {
  padding-bottom: 0;
}



/*20250408 add*/
/* Margin-Top & Padding-Top */
.mt00 { margin-top: 0px !important; } .pt00 { padding-top: 0px !important; }
.mt04 { margin-top: 4px; } .pt05 { padding-top: 4px; }
.mt05 { margin-top: 5px; } .pt05 { padding-top: 5px; }
.mt06 { margin-top: 6px; } .pt06 { padding-top: 6px; }
.mt07 { margin-top: 7px; } .pt07 { padding-top: 7px; }
.mt08 { margin-top: 8px; } .pt08 { padding-top: 8px; }
.mt09 { margin-top: 9px; } .pt09 { padding-top: 9px; }
.mt10 { margin-top: 10px; } .pt10 { padding-top: 10px; }
.mt15 { margin-top: 15px; } .pt15 { padding-top: 15px; }
.mt20 { margin-top: 20px; } .pt20 { padding-top: 20px; }
.mt25 { margin-top: 25px; } .pt25 { padding-top: 25px; }
.mt30 { margin-top: 30px; } .pt30 { padding-top: 30px; }
.mt35 { margin-top: 35px; } .pt35 { padding-top: 35px; }
.mt40 { margin-top: 40px; } .pt40 { padding-top: 40px; }
.mt45 { margin-top: 45px; } .pt45 { padding-top: 45px; }
.mt50 { margin-top: 50px; } .pt50 { padding-top: 50px; }
.mt55 { margin-top: 55px; } .pt55 { padding-top: 55px; }
.mt60 { margin-top: 60px; } .pt60 { padding-top: 60px; }
.mt65 { margin-top: 65px; } .pt65 { padding-top: 65px; }
.mt70 { margin-top: 70px; } .pt70 { padding-top: 70px; }
.mt75 { margin-top: 75px; } .pt75 { padding-top: 75px; }
.mt80 { margin-top: 80px; } .pt80 { padding-top: 80px; }
.mt85 { margin-top: 85px; } .pt85 { padding-top: 85px; }
.mt90 { margin-top: 90px; } .pt90 { padding-top: 90px; }
.mt95 { margin-top: 95px; } .pt95 { padding-top: 95px; }
.mt100{ margin-top:100px; } .pt100{ padding-top:100px; }
.mt110{ margin-top:110px; } .pt110{ padding-top:110px; }
.mt120{ margin-top:120px; } .pt120{ padding-top:120px; }

.pt40_s { padding-top: 40px; }
.pt60_s { padding-top: 60px; }
.pt80_s { padding-top: 80px; }
.pt100_s { padding-top: 100px; }

.mt20_s{margin-top: 20px;}

/* Margin-Right & Padding-Right */
.mr00 { margin-right: 0px; } .pr00 { padding-right: 0px; }
.mr01 { margin-right: 1px; } .pr01 { padding-right: 1px; }
.mr02 { margin-right: 2px; } .pr02 { padding-right: 2px; }
.mr03 { margin-right: 3px; } .pr03 { padding-right: 3px; }
.mr04 { margin-right: 4px; } .pr04 { padding-right: 4px; }
.mr05 { margin-right: 5px; } .pr05 { padding-right: 5px; }
.mr06 { margin-right: 6px; } .pr06 { padding-right: 6px; }
.mr07 { margin-right: 7px; } .pr07 { padding-right: 7px; }
.mr08 { margin-right: 8px; } .pr08 { padding-right: 8px; }
.mr09 { margin-right: 9px; } .pr09 { margin-right: 9px; }
.mr10 { margin-right: 10px; } .pr10 { padding-right: 10px; }
.mr15 { margin-right: 15px; } .pr15 { padding-right: 15px; }
.mr20 { margin-right: 20px; } .pr20 { padding-right: 20px; }
.mr25 { margin-right: 25px; } .pr25 { padding-right: 25px; }
.mr30 { margin-right: 30px; } .pr30 { padding-right: 30px; }
.mr35 { margin-right: 35px; } .pr35 { padding-right: 35px; }
.mr40 { margin-right: 40px; } .pr40 { padding-right: 40px; }
.mr45 { margin-right: 45px; } .pr45 { padding-right: 45px; }
.mr50 { margin-right: 50px; } .pr50 { padding-right: 50px; }
.mr55 { margin-right: 55px; } .pr55 { padding-right: 55px; }
.mr60 { margin-right: 60px; } .pr60 { padding-right: 60px; }
.mr65 { margin-right: 65px; } .pr65 { padding-right: 65px; }
.mr70 { margin-right: 70px; } .pr70 { padding-right: 70px; }
.mr75 { margin-right: 75px; } .pr75 { padding-right: 75px; }
.mr80 { margin-right: 80px; } .pr80 { padding-right: 80px; }
.mr85 { margin-right: 85px; } .pr85 { padding-right: 85px; }
.mr90 { margin-right: 90px; } .pr90 { padding-right: 90px; }
.mr95 { margin-right: 95px; } .pr95 { padding-right: 95px; }
.mr100{ margin-right:100px; } .pr100{ padding-right:100px; }


/* Margin-Bottom & Padding-Bottom */
.mb00 { margin-bottom: 0px !important; } .pb00 { padding-bottom: 0px !important; }
.mb01 { margin-bottom: 1px; } .pb01 { padding-bottom: 1px; }
.mb02 { margin-bottom: 2px; } .pb02 { padding-bottom: 2px; }
.mb03 { margin-bottom: 3px; } .pb03 { padding-bottom: 3px; }
.mb04 { margin-bottom: 4px; } .pb04 { padding-bottom: 4px; }
.mb05 { margin-bottom: 5px; } .pb05 { padding-bottom: 5px; }
.mb06 { margin-bottom: 6px; } .pb06 { padding-bottom: 6px; }
.mb07 { margin-bottom: 7px; } .pb07 { padding-bottom: 7px; }
.mb08 { margin-bottom: 8px; } .pb08 { padding-bottom: 8px; }
.mb09 { margin-bottom: 9px; } .pb09 { padding-bottom: 9px; }
.mb10 { margin-bottom: 10px; } .pb10 { padding-bottom: 10px; }
.mb15 { margin-bottom: 15px; } .pb15 { padding-bottom: 15px; }
.mb20 { margin-bottom: 20px !important; } .pb20 { padding-bottom: 20px; }
.mb25 { margin-bottom: 25px; } .pb25 { padding-bottom: 25px; }
.mb30 { margin-bottom: 30px; } .pb30 { padding-bottom: 30px; }
.mb35 { margin-bottom: 35px; } .pb35 { padding-bottom: 35px; }
.mb40 { margin-bottom: 40px; } .pb40 { padding-bottom: 40px; }
.mb45 { margin-bottom: 45px; } .pb45 { padding-bottom: 45px; }
.mb50 { margin-bottom: 50px; } .pb50 { padding-bottom: 50px; }
.mb55 { margin-bottom: 55px; } .pb55 { padding-bottom: 55px; }
.mb60 { margin-bottom: 60px; } .pb60 { padding-bottom: 60px; }
.mb65 { margin-bottom: 65px; } .pb65 { padding-bottom: 65px; }
.mb70 { margin-bottom: 70px; } .pb70 { padding-bottom: 70px; }
.mb75 { margin-bottom: 75px; } .pb75 { padding-bottom: 75px; }
.mb80 { margin-bottom: 80px; } .pb80 { padding-bottom: 80px; }
.mb85 { margin-bottom: 85px; } .pb85 { padding-bottom: 85px; }
.mb90 { margin-bottom: 90px; } .pb90 { padding-bottom: 90px; }
.mb95 { margin-bottom: 95px; } .pb95 { padding-bottom: 95px; }
.mb100{ margin-bottom:100px; } .pb100{ padding-bottom:100px; }

/* Margin-Left & Padding-Left */
.ml00 { margin-left: 0px !important; } .pl00 { padding-left: 0px; }
.ml05 { margin-left: 5px; } .pl05 { padding-left: 5px; }
.ml06 { margin-left: 6px; } .pl06 { padding-left: 6px; }
.ml07 { margin-left: 7px; } .pl07 { padding-left: 7px; }
.ml08 { margin-left: 8px; } .pl07 { padding-left: 8px; }
.ml09 { margin-left: 9px; } .pl07 { padding-left: 9px; }
.ml10 { margin-left: 10px; } .pl10 { padding-left: 10px; }
.ml15 { margin-left: 15px; } .pl15 { padding-left: 15px; }
.ml20 { margin-left: 20px; } .pl20 { padding-left: 20px; }
.ml25 { margin-left: 25px; } .pl25 { padding-left: 25px; }
.ml30 { margin-left: 30px; } .pl30 { padding-left: 30px; }
.ml35 { margin-left: 35px; } .pl35 { padding-left: 35px; }
.ml40 { margin-left: 40px; } .pl40 { padding-left: 40px; }
.ml45 { margin-left: 45px; } .pl45 { padding-left: 45px; }
.ml50 { margin-left: 50px; } .pl50 { padding-left: 50px; }
.ml55 { margin-left: 55px; } .pl55 { padding-left: 55px; }
.ml60 { margin-left: 60px; } .pl60 { padding-left: 60px; }
.ml65 { margin-left: 65px; } .pl65 { padding-left: 65px; }
.ml70 { margin-left: 70px; } .pl70 { padding-left: 70px; }
.ml75 { margin-left: 75px; } .pl75 { padding-left: 75px; }
.ml80 { margin-left: 80px; } .pl80 { padding-left: 80px; }
.ml85 { margin-left: 85px; } .pl85 { padding-left: 85px; }
.ml90 { margin-left: 90px; } .pl90 { padding-left: 90px; }
.ml95 { margin-left: 95px; } .pl95 { padding-left: 95px; }
.ml100{ margin-left:100px; } .pl100{ padding-left:100px; }
.ml11 { margin-left: 11px; } .pl63{ padding-left:63px; }
.ml12 { margin-left: 12px; }
.ml13 { margin-left: 13px; }
.ml14 { margin-left: 14px; }

/* Margin & Padding */
.m00 { margin: 0px; } .p00 { padding: 0px; }
.m05 { margin: 5px; } .p05 { padding: 5px; }
.m10 { margin: 10px; } .p10 { padding: 10px; }
.m15 { margin: 15px; } .p15 { padding: 15px; }
.m20 { margin: 20px; } .p20 { padding: 20px; }
.m25 { margin: 25px; } .p25 { padding: 25px; }
.m30 { margin: 30px; } .p30 { padding: 30px; }
.m35 { margin: 35px; } .p35 { padding: 35px; }
.m40 { margin: 40px; } .p40 { padding: 40px; }
.m45 { margin: 45px; } .p45 { padding: 45px; }
.m50 { margin: 50px; } .p50 { padding: 50px; }
.m55 { margin: 55px; } .p55 { padding: 55px; }
.m60 { margin: 60px; } .p60 { padding: 60px; }
.m65 { margin: 65px; } .p65 { padding: 65px; }
.m70 { margin: 70px; } .p70 { padding: 70px; }
.m75 { margin: 75px; } .p75 { padding: 75px; }
.m80 { margin: 80px; } .p80 { padding: 80px; }
.m85 { margin: 85px; } .p85 { padding: 85px; }
.m90 { margin: 90px; } .p90 { padding: 90px; }
.m95 { margin: 95px; } .p95 { padding: 95px; }
.m100{ margin:100px; } .p100{ padding:100px; }

.mt20s{
  margin-top: 20px;
}

/* width & height */
.width00 { width: 0px; } .height00 { height: 0px; }
.width05 { width: 5px; } .height05 { height: 5px; }
.width10 { width: 10px; } .height10 { height: 10px; }
.width15 { width: 15px; } .height15 { height: 15px; }
.width20 { width: 20px; } .height20 { height: 20px; }
.width25 { width: 25px; } .height25 { height: 25px; }
.width30 { width: 30px; } .height30 { height: 30px; }
.width35 { width: 35px; } .height35 { height: 35px; }
.width40 { width: 40px; } .height40 { height: 40px; }
.width45 { width: 45px; } .height45 { height: 45px; }
.width50 { width: 50px; } .height50 { height: 50px; }
.width55 { width: 55px; } .height55 { height: 55px; }
.width60 { width: 60px; } .height60 { height: 60px; }
.width65 { width: 65px; } .height65 { height: 65px; }
.width70 { width: 70px; } .height70 { height: 70px; }
.width75 { width: 75px; } .height75 { height: 75px; }
.width80 { width: 80px; } .height80 { height: 80px; }
.width85 { width: 85px; } .height85 { height: 85px; }
.width90 { width: 90px; } .height90 { height: 90px; }
.width95 { width: 95px; } .height95 { height: 95px; }
.width100{ width:100px; } .height100{ height:100px; }
.width150{ width:150px; } .height150{ height:150px; }
.width300{ width:300px; } .height300{ height:300px; }
.width350{ width:350px; } .height350{ height:350px; }
.width400{ width:400px; } .height400{ height:400px; }
.width450{ width:450px; } .height450{ height:450px; }
.width500{ width:500px; } .height500{ height:500px; }
.width550{ width:550px; } .height550{ height:550px; }

.fs_11{font-size:11px;}
.fs_16{font-size:16px;}
.fs_20{font-size:20px;}
.fs_22{font-size:22px;}
.fs_24{font-size:24px;}
.fs_26{font-size:26px;}
.fs_36{font-size:36px;}

.f_40{font-size: 40% !important}
.f_50{font-size: 50% !important;}
.f_60{font-size: 60% !important;}
.f_70{font-size: 70% !important;}
.f_80{font-size: 80% !important;}
.f_90{font-size: 90% !important;}
.f_110{font-size: 110% !important;}
.f_120{font-size: 120% !important;}
.f_130{font-size: 130% !important;}
.f_140{font-size: 140% !important;}
.f_150{font-size: 150% !important;}
.f_160{font-size: 160% !important;}
.f_170{font-size: 170% !important;}
.f_180{font-size: 180% !important;}
.f_190{font-size: 190% !important;}
.f_200{font-size: 200% !important;}
.f_250{font-size: 250% !important;}
.f_300{font-size: 300% !important;}

.fw_100{font-weight: 100;}
.fw_200{font-weight: 200;}
.fw_300{font-weight: 300;}
.fw_400{font-weight: 400;}
.fw_500{font-weight: 500;}
.fw_600{font-weight: 600;}
.fw_700{font-weight: 700;}
.fw_800{font-weight: 800;}
.fw_900{font-weight: 900;}

.ls_1{letter-spacing: 1px;}

.w_10{width: 9%;}
.w_15{width: 14%;}
.w_20{width: 18.5%; margin-right: 2%;}
.w_25{width: 21.5%; margin-right: 2%;}
.w_30{width: 28.5%;}
.w_33{width: 32%; margin: 0 0.5%; vertical-align: top;}
.w_35{width: 32.5%;  margin: 0 1.5%; vertical-align: top;}
.w_40_2{width:40%;}
.w_40{width: 36%; margin: 0 1.5%;}
.w_50{width: 46%;
  margin-right: 1.5%;
  margin-bottom: 3%;
  margin-left: 1.5%;}
.w_60{width: 56%; margin: 0 1.5%;}
.w_65{width: 60%;  margin: 0 1.5%;}

.w_70{    width: 68.0%; margin: 0 1.5%;}
.w_75{width: 71.5%; margin-right: 4%;}
.w_80{width: 78.5%;}
.w_85{width: 83.5%;}
.w_90{width: 88.5%;}
.w_50-25{width: 48.5%;}

#area .w_20{
  width: 17.5%;
margin: 0 0.5%;
margin-bottom: 1%;
}

/*ハンバーガーメニュー*/
#nav-toggle {
  position: fixed;
    top: 20px;
    right: 20px;
    height: 28px;
    width: 24px;
cursor: pointer;
}
#nav-toggle div {
    position: relative;
    width: 24px;
  }
#nav-toggle span {
    width: 100%;
    height: 3px;
    left: 0;
    display: block;
    background: black;
    position: absolute;
transition: transform .6s ease-in-out, top .5s ease;
}
    #nav-toggle span:nth-child(1) {
      top: 0;
    }
    #nav-toggle span:nth-child(2) {
        top: 8px;
    }
    #nav-toggle span:nth-child(3) {
        top: 16px;
    }

.open #nav-toggle span {
background: #000;
}
.open #nav-toggle span:nth-child(1) {
        top: 7px;
        transform: rotate(45deg);
    }
.open #nav-toggle span:nth-child(2) {
        top: 16px;
        width: 0;
        left: 50%;
    }
.open #nav-toggle span:nth-child(3) {
        top: 8px;
        transform: rotate(-45deg);
    }


#gloval-nav{
  background-color: rgba(255, 255, 255, 0.9);
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  text-align: center;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  font-size: 20px;
  transform: translateX(-100%);
  transition: opacity .6s ease, visibility .6s ease;
}

#gloval-nav a{
    display: block;
    color: #000;
    padding: 20px 0;
transition: color .6s ease;
  }
#gloval-nav ul li{
      opacity: 0;
      transform: translateX(-200px);
      transition:  transform .6s ease, opacity .2s ease;
    }

/* open */
.open {
  overflow: hidden;
}
.open #gloval-nav {
    visibility: visible;
    transform: translateX(0);
transition: transform .6s;
    z-index: 9998;
  }
.open #gloval-nav li {
    opacity: 1;
    transform: translateX(0);
    transition:  transform 1s ease, opacity .9s ease;
  }

#nav-toggle {
z-index: 9000;
background: #fff;
    padding: 12px 10px 3px;
border-radius: 3px;
}
#nav-toggle span{
z-index:9999;
}



/*Q&A*/
.accordion {
  width: 100%;
}

/* inputのチェックボックスを非表示 */
.accordion-hidden {
  display: none;
}

/* 見出しボタン部分 */
.accordion-open {
  display: block;
  padding: 20px 80px 20px 10px;
  background: #F5F5F5;
  cursor: pointer;
  margin: 5px 0;
position: relative;
border-radius: 6px;
border:1px solid #E3E3E3;
}

/* ＋アイコン */
.accordion-open::before,
.accordion-open::after {
  content: '';
  width: 20px;
  height: 3px;
  background: #000;
  position: absolute;
  top: 50%;
  right: 5%;
  transform: translateY(-50%);
}

/* アイコンのー */
.accordion-open::after {
  transform: translateY(-50%) rotate(90deg);
  transition: .5s;
}

/* アコーディオンが開いたらーに */
.accordion-hidden:checked+.accordion-open:after {
  transform: translateY(-50%) rotate(0);
}

/* アコーディオン中身部分 */
.accordion-inner {
  display: block;
  height: 0;
  overflow: hidden;
  padding: 0;
  opacity: 0;
  transition: 0.5s;
  /* 表示速度の設定 */
  cursor: pointer;
}

/* チェックボックスにチェックが入ったら中身部分を表示する */
.accordion-hidden:checked+.accordion-open+.accordion-inner {
  height: auto;
  opacity: 1;
  padding: 10px;
}
/* ↑ここまで共通 */


/* Q&A追加 */
.accordion_qa .Q,
.accordion_qa .A {
position: relative;
margin-left: 80px;
}

.accordion_qa .Q::before,
.accordion_qa .A::before {
  font-size: 1.5em;
  display: block;
  position: absolute;
  top: -.6em;
  left: -3.0em;
}

.accordion_qa .Q::before {
content: 'Q.';
font-weight:700;
}

.accordion_qa .A::before {
content: 'A.';
color:#E11D18;
font-weight:700;
}

.accordion_qa .accordion-open {
  padding-left: 2.5em;
}

.accordion_qa .accordion-hidden:checked+.accordion-open+.accordion-inner {
  height: auto;
  opacity: 1;
padding: 20px 10px 20px 2.5em;
  border-radius: 6px;
border: 1px solid #E3E3E3;
background-color:rgba(255,255,255,0.8);
}
/* Q&A追加ここまで */


.accordion-box {
  display: block;
  height: 0;
  overflow: hidden;
  padding: 0;
  opacity: 0;
  transition: 1s;
}

.accordion-hidden:checked+.accordion-open+.accordion-box {
  height: auto;
  opacity: 1;
  padding: 10px;
}


/**/


/* å…±é€š */
#headerIn {
  min-width: 1200px;
}
.scrolled .logo_normal {
 display: none;
}
.scrolled #headerLogo a img:nth-child(2) {
 opacity:1;
}
@media screen and (max-width: 769px) {
#headerIn {
  min-width: 100%;
}
.scrolled #headerLogo a img:nth-child(2) {
 display: none;
}
}




/* header */
#headerIn {
  top: 0;
  z-index: 100;
}
#headerLogo a {
  pointer-events: none;
}

@media screen and (max-width: 769px) {
  #headerIn.headerIn-lp {
 background: rgba(40, 123, 68, 0.6);
 border: none;
 transition: 0.4s ease;
  }
  #headerIn.headerIn-lp .headerLogo-lp a {
 background-image: url(../img/logo_sp_white.png);
  }
  #headerIn.headerIn-lp #navToggle {
 display: none; /* ãƒãƒ³ãƒãƒ¼ã‚¬ãƒ¼ãƒ¡ãƒ‹ãƒ¥ãƒ¼ã®ãƒˆã‚°ãƒ«ãƒœã‚¿ãƒ³ã‚’éžè¡¨ç¤º */
  }
  #headerIn.headerIn-lp #navToggle div {
 width: 40px;
 height: 34px;
 top: 11px;
 left: 0;
 margin-left: auto;
 margin-right: auto;
  }
  #headerIn.headerIn-lp #navToggle span {
 height: 4px;
 margin: 0;
 left: auto;
 right: 0;
  }
  #headerIn.headerIn-lp #navToggle span:nth-child(1) {
 width: 40px;
  }
  #headerIn.headerIn-lp #navToggle span:nth-child(2) {
 width: 30px;
 top: 15px;
  }
  #headerIn.headerIn-lp #navToggle span:nth-child(3) {
 width: 20px;
  }
  #headerIn.headerIn-lp #navToggle.active span:nth-of-type(1) {
 margin: auto;
 bottom: 0;
 left: 0;
 transform: rotate(-45deg);
  }
  #headerIn.headerIn-lp #navToggle.active span:nth-of-type(3) {
 width: 40px;
 margin: auto;
 top: 0;
 left: 0;
 transform: rotate(45deg);
  }
}

#gNavi.gNavi-lp {
  background: transparent;
  border-bottom: none;
  transition: 0.4s ease;
}
#gNavi.gNavi-lp a {
  color: #222;
  font-size: 16px;
  letter-spacing: 0.06em;
  line-height: 1;
  height: inherit;
}
#gNavi > ul {
  padding:12px 20px 0 0 ;
  display: flex;
  align-items: center;
}
#gNavi > ul > li {
  margin-left: 20px;
  text-align: left;
}
#gNavi > ul > li.document > a {
  height: auto;
  margin: 20px 0 0 0;
  padding: 10px 20px;
  border-radius: 5px;
  background: #BF9958;
  font-weight: bold;
  line-height: 1;
  color: #fff !important;
  letter-spacing: 0;
}
#gNavi > ul > li.document > a span {
  display: block;
  padding-left: 25px;
  position: relative;
}
#gNavi > ul > li.document > a span:after {
  content: '';
  position: absolute;
  background: url(../img/icon_document.svg) no-repeat;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
  width: 18px;
  height: 22px;
  display: inline-block;
  background-size: contain;
  z-index: 100;
}

#gNavi > ul > li.mail > a {
  height: auto;
  padding: 10px 40px;
  border-radius: 100px;
  background: #E1FD50;
  font-weight: bold;
  line-height: 1;
  color: #222 !important;
  letter-spacing: 0;
}
#gNavi > ul > li.mail > a span {
  display: block;
  padding-right: 25px;
  position: relative;
}
#gNavi > ul > li.mail > a span:after {
  content: '';
  position: absolute;
  background: url(../img/icon_mail.svg) no-repeat;
  right: 0;
  top: 50%;
  transform: translateY(-50%);
  width: 18px;
  height: 15px;
  display: inline-block;
  background-size: contain;
  z-index: 100;
}

#gNavi > ul > li.tel > a {
  font-size: 24px ;
  font-weight: 600;
  color: #fff;
  position: relative;
  padding-left: 20px;
}
#gNavi > ul > li.tel > a:before {
  content: '';
  position: absolute;
  background: url(../img/icon_tel.svg) no-repeat;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
  width: 17px;
  height: 17px;
  display: inline-block;
  background-size: contain;
  z-index: 100;
}
#gNavi > ul > li.tel > span {
  color: #fff;
  font-size: 12px;
}


@media screen and (max-width: 769px) {
  #gNavi.gNavi-lp {
 background: transparent; 
 position: absolute; 
 top: 10px;
 right: 10px;
  }
  #gNavi > ul {
 padding-right: 0;
  }
  #gNavi > ul > li {
 margin-left: 0;
  }
  #gNavi > ul > li.mail > a {
 height: auto;
 margin: 0;
 padding: 10px;
 border-radius: 5px;
 background: #287B44;
 font-weight: bold;
 line-height: 1;
 color: #fff !important;
 letter-spacing: 0;
 text-align: center;
 padding: 1.35em 15px; 
  }
  #gNavi > ul > li.mail > a span {
 display: inline-block;
 font-family: "Noto Sans JP";
  }
  #gNavi > ul > li.mail > a span:after {
 display: none; 
  }
  #gNavi > ul > li.radio,
  #gNavi > ul > li.line,
  #gNavi > ul > li.document {
 display: none;
  }
}


@keyframes bgmove {
  0% {
 background-position: 0 100%;
  }
  100% {
 background-position: -2127px 100%;
  }
}

/* common */
.lp_btn {
  position: relative;
  display: inline-block;
  background: #F1EFD9;
  border-radius: 5px;
  color: #222;
  font-weight: bold;
  line-height: 80px;
  text-align: center;
  font-size: 18px;
  transition: 0.4s ease;
}
.lp_btn::before {
  content: "";
  position: absolute;
  right: 0;
  top: 40px;
  width: 30px;
  border-top: 1px solid #222;
}

@media screen and (max-width: 769px) {
  .lp_btn {
 line-height: 70px;
 font-size: 15px;
  }
  .lp_btn::before {
 top: 35px;
  }
}




.lp_heading {
  color: #BFD7C7;
  font-size: 120px;
  font-family: "YuMincho", "Hiragino Mincho ProN", "Yu Mincho", "MS PMincho", serif;
  font-weight: 500;
  line-height: 100%;
}
.lp_heading_sub {
  font-size: 20px;
  font-weight: 700;
  background: #287B44;
  color: #fff;
  display: inline-block;
  padding: 3px 12px;
  margin-bottom: 30px;
}
.lp_lead {
  font-size: 36px;
  font-family: "Noto Serif JP", serif;
  font-weight: 700;
  margin-bottom: 45px;
}
.lp_lead_sub {
  font-size: 30px;
  font-family: "Noto Serif JP", serif;
  font-weight: 700;
  margin-bottom: 40px;
}
.lp_txt {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 400;
  font-size: 16px;
  letter-spacing: 0.06em;
  line-height: 2;
}
.textShadow {
-moz-text-shadow: 0px 0px 10px rgba(255, 255, 255, 1);
-webkit-text-shadow: 0px 0px 10px rgba(255, 255, 255, 1);
-ms-text-shadow: 0px 0px 10px rgba(255, 255, 255, 1);
text-shadow: 0px 0px 10px rgba(255, 255, 255, 1);
}
@media screen and (max-width: 769px) {
.lp_heading {
  font-size: 60px;
}
.lp_lead {
  margin-bottom: 30px;
  font-size: 26px;
}
.lp_lead_sub {
  margin-bottom: 30px;
  font-size: 20px;
}
.lp_txt {
  line-height: 1.75;
}
.lp_heading_sub {
  font-size: 16px;
  padding: 3px 10px;
  margin-bottom: 20px;
}
}
.inner {
  width: calc(100% - 40px);
  max-width: 1000px;
  margin-left: auto;
  margin-right: auto;
  position: relative;
}





body,
#wrapper,
#header,
#headerIn {
  min-width: 100%;
}

#main {
  padding-bottom: 0;
}

img {
  width: 100%;
}

.f-min{
  font-family: "Noto Serif JP", serif;
}

.f-en {
  font-family: "Barlow", sans-serif;
}

a:hover {
  text-decoration: none;
}

.btn_hover:hover {
 animation: shake 0.5s 1;
 opacity:inherit !important;
}
.btn_hover:hover:after {
 animation: arrowMove 0.5s 1; /* çŸ¢å°ç”¨ã®ã‚¢ãƒ‹ãƒ¡ãƒ¼ã‚·ãƒ§ãƒ³ã‚’è¿½åŠ  */
}
.text {
  line-height: 2;
}
.fwBold {
  font-weight: 700;
}
/* æœ¬ä½“ã®æºã‚Œã‚¢ãƒ‹ãƒ¡ãƒ¼ã‚·ãƒ§ãƒ³ */
@keyframes shake {
 0% { transform: translateY(0); }
 25% { transform: translateY(-3px); }
 75% { transform: translateY(3px); }
 100% { transform: translateY(0); }
}

/* çŸ¢å°ã®ã‚¢ãƒ‹ãƒ¡ãƒ¼ã‚·ãƒ§ãƒ³ */
@keyframes arrowMove {
 0% { transform: translateY(-50%); } /* å…ƒã®ä½ç½® */
 50% { transform: translateY(-50%) translateY(5px); } /* ä¸‹ã«ç§»å‹• */
 100% { transform: translateY(-50%); } /* å…ƒã®ä½ç½®ã«æˆ»ã‚‹ */
}


@media screen and (max-width: 769px) {
h2 {
  font-size: 26px;
  font-weight: 600;
  text-align: center;
  margin-bottom: 40px;
}
}






/* visual */
.lp_visual {
  box-sizing: border-box;
  background: url(../img/image_1.jpg) no-repeat;
//background: linear-gradient(0deg, #479B64 0%, #287B44 100%);
  position: relative;
z-index: 1;
background-size: cover;
background-position:right center;
}
.lp_visual:after {
  position: absolute;
  left:50%;
  transform: translateX(-50%);
  bottom: -5px;
  content: "";
  width: 100%;
  display: inline-block;
  background-size: contain;
  z-index: -1;
  background-position-x: -30vw;
 background-repeat: repeat-x;
}
.lp_visual_wrap {
  max-width: 1100px;
  margin: 0 auto;
  position: relative;
  display: flex;
  padding: 50px 0 ;
  justify-content: center;
}


.lp_copy1{
  color: #fff;
  font-size: clamp(20px, 28 / 1440 * 100vw, 28px);
  font-weight: bold;
  padding: 12px 18px;
  background: #222;
  display: inline-block;
  position: relative;
}
.lp_copy1:before {
  content: "";
  position: absolute;
  width: 0px;
  height: 0px;
  bottom: -20px;
  left: 50%;
  transform: translateX(-50%) rotate(-27deg);
  border-width: 12px 12px 0px;
  border-style: solid;
  border-color: rgb(34, 34, 34) transparent transparent;
  border-image: initial;
  border-top: 30px solid rgb(34, 34, 34);
}
.lp_copy2 {
  font-size: clamp(20px, 56 / 1440 * 100vw, 56px);
  font-weight: 600;
  color: #fff;
  margin: 30px 0 50px;
}
.lp_copy2 span {
  font-size: clamp(20px, 56 / 1440 * 100vw, 56px);
  color: #E1FD50;
  padding-bottom: 15px;
  background: url(../img/border_wave.svg) repeat-x bottom left / auto 9px;
}
.cv_btn_wrap {
  display: inline-block;
  text-align: center;
}
.cv_btn_cap {
  display: inline-block;
  font-size: 15px;
  font-weight: bold;
  padding: 5px 16px;
  background: #222;
  color: #fff;
  position: relative;
  text-align: center;
  z-index: 100;
}
.cv_btn_cap::before {
  content: "";
  position: absolute;
  width: 0px;
  height: 0px;
  bottom: -18px;
  left: 50%;
  transform: translateX(-50%);
  border-width: 12px 10px 10px;
  border-style: solid;
  border-color: rgb(34, 34, 34) transparent transparent;
  border-image: initial;
  border-top: 18px solid rgb(34, 34, 34);
}
.cv_btn {
  margin-top:-12px;
}
.cv_btn a{
  display: inline-block;
  font-size: 22px;
  font-weight: 700;
  color: #222;
  background: #E1FD50;
  border-radius: 100px;
  padding: 15px 75px;
}
.cv_btn a span {
  position: relative;
  padding-right: 35px;
}
.cv_btn a span:after {
  content: '';
  position: absolute;
  background: url(../img/icon_mail.svg) no-repeat;
  right: 0;
  top: 60%;
  transform: translateY(-50%);
  width: 24px;
  height: 20px;
  display: inline-block;
  background-size: contain;
  z-index: 100;
}
@media screen and (max-width: 769px) {
.lp_visual {
padding: 0 20px 80px;
}
.lp_visual_wrap {
  max-width: 100%;
  margin: 0 auto;
  position: relative;
  display: block;
  padding: 50px 0 0px;
}
.lp_img {
  max-width: 55%;
  margin: 0 15vw 0 auto;
}

}



  /* cta */
.lp_cta_area_bottom_2 img{
  vertical-align: top;  
}
.lp_cta {
  box-sizing: border-box;
  background: linear-gradient(0deg, #479B64 0%, #287B44 100%);
  position: relative;
  z-index: 1;
  padding:80px 0; 
}
.lp_cta:after {
  position: absolute;
  background: url(../img/cta_bg.svg) no-repeat;
  left:50%;
  transform: translateX(-50%);
  bottom: -5px;
  content: "";
  width: 100%;
  height: 293px;
  display: inline-block;
  background-size: cover;
  z-index: -1;
  background-position-x: -30vw;
  background-repeat: repeat-x;
}
.lp_cta h2 {
  color: #fff !important;
}
.lp_cta .cv_btn_wrap {
  display: block;
  margin: 0 auto;
  max-width: 680px;
}
.lp_cta .cv_btn_wrap .cv_btn a{
display: block;
  max-width: 680px;
  font-size: 26px;
}
.lp_cta .cv_btn_wrap .cv_btn_cap {
  font-size: 18px;
}
.lp_cta_tel {
  text-align: center;
  color: #fff;
  margin-top: 30px;
}
.lp_cta_tel a {
  font-size: 40px;
  font-weight: 700;
  color: #fff;
}
.lp_cta_tel span {
  font-size: 20px;
  font-weight: 700;
}
@media screen and (max-width: 769px) {
.lp_cta {
  padding: 50px 20px;
}
.lp_cta:after {
  position: absolute;
  background: url(../img/cta_bg.svg) no-repeat;
  left:50%;
  transform: translateX(-50%);
  bottom: -5px;
  content: "";
  width: 100%;
  height: 40%;
  display: inline-block;
  background-size: cover;
  z-index: -1;
}
.lp_cta .cv_btn_wrap .cv_btn a {
  font-size: 22px;
}
.lp_cta .cv_btn_wrap .cv_btn_cap {
  font-size: 15px;
}
.lp_cta_tel {
  margin-top: 20px;
}
.lp_cta_tel a {
  font-size: 30px;
  font-weight: 700;
  color: #fff;
}
.lp_cta_tel span {
  font-size: 16px;
  font-weight: 700;
}
}



/**20250410 add/

/*menu*/

/* ここからメニュー
-----------------------------------------------*/
.menu {
margin: 0 auto;
position:relative;
z-index:500;
}

.dropdwn {
list-style-type: none;
width: 100%;
display: flex;
}

.menubox ul.dropdwn {
text-align: center;
list-style-type: none;
margin: 0 auto;
}

.menubox ul.dropdwn li {
width: 150px;
font-size: 15px;
position: relative;
display: block;
cursor: pointer;
}

.menubox ul.dropdwn li.li_environment {
width: 170px;
}

.menubox ul.dropdwn li.li_flow {
width: 170px;
}

.dropdwn li a {
display:block;
font-weight: 700;
color:#333;
margin-top: 2.2em;
text-decoration:none;
padding: 5px 0;
}

.dropdwn li.header_mail {
margin-right:10px;
}

.dropdwn li.header_mail a{
border: 1px solid #E11D18;
  padding: 5px 10px;
  border-radius: 100px;
  color: #E11D18;
}

.menubox ul.dropdwn li.header_tel{
margin-right:0;
}

.dropdwn li.header_tel a{
padding:0;
max-width:173px;
}


.dropdwn li:hover a {
color :#E11D18;
background-color:#fff;
}

.dropdwn > li {
width: 100%;
margin: 1px;
display: inline;
}

.menu ul.dropdwn_menu {
width: 210px;
display: none;
position: absolute;
margin-left: 0;
margin-top: 0;
padding: 0;
background-color: #FFF;
border: 1px solid #43930E;
}

.menu ul.dropdwn_menu li{
width: 100%;
}

.menu ul.dropdwn_menu li a {
color: #333;
font-size: 13px;
font-weight: 700;
line-height:1.4;
padding: 1em 0.6em;
margin: 0;
display: block;
background-color: #FFF;
border-top:1px solid #43930E;
text-align:left;
}

.menu ul.dropdwn_menu li:first-child a {
border-top:none;
}

.menu ul.dropdwn_menu li a:hover {
color: #FFF;
background-color: #9CBD3B;
}

.headerbox_r ul li.li_recruit{
width: 106px;
color: #FFF;
margin-right: 0;
background-color: #9CBD3B;
}



.headerbox_r ul li.li_contact a span {
position: absolute;
font-size: 1.4rem;
top:inherit;
bottom: 0;
left: 0;
right: 0;
margin: auto;
}

/* スマホメニュー */

#spmenu {
display: block;
position: absolute;
top: 1.3em;
right: 0.8em;
}

/* チェックボックスは非表示に */
.drawer-hidden {
display: none;
}

/* ハンバーガーアイコンの設置スペース */
.drawer-open {
  display: flex;
  height: 40px;
  width: 40px;
  justify-content: center;
  align-items: center;
  position: relative;
  z-index: 200;/* 重なり順を一番上に */
  /*cursor: pointer;*/
}

/* ハンバーガーメニューのアイコン */
.drawer-open span,
.drawer-open span:before,
.drawer-open span:after {
  content: '';
  display: block;
  height: 3px;
  width: 25px;
  border-radius: 3px;
  background: #333;
  transition: 0.5s;
  position: absolute;
}

/* 三本線のうち一番上の棒の位置調整 */
.drawer-open span:before {
  bottom: 8px;
}

/* 三本線のうち一番下の棒の位置調整 */
.drawer-open span:after {
  top: 8px;
}

/* アイコンがクリックされたら真ん中の線を透明にする */
#drawer-check:checked ~ .drawer-open span {
background: rgba(255, 255, 255, 0);
}

/* アイコンがクリックされたらアイコンが×印になように上下の線を回転 */
#drawer-check:checked ~ .drawer-open span::before {
bottom: 0;
transform: rotate(45deg);
}

#drawer-check:checked ~ .drawer-open span::after {
  top: 0;
  transform: rotate(-45deg);
}
  
/* メニューのデザイン*/
 .drawer-content {
 width: 100%;
 height: 100%;
  overflow: scroll;
 position: fixed;
 top: 0;
 left: 100%;/* メニューを画面の外に飛ばす */
 z-index: 99;
  transition: .6s;
 text-align: left;
 padding: 1.5em 1.5em 1em 1.5em;
 background: #fff;
 border: 5px solid #E11D18;
 }

/* アイコンがクリックされたらメニューを表示 */
#drawer-check:checked ~ .drawer-content {
left: 0;/* メニューを画面に入れる */
}

div.navtitle {
font-size: 1.6rem;
font-weight: 500;
line-height: 1.6;
color: #021A3C;
margin: 0 0 1em 0;
}

.accordion-container .accordion-title {
color :#282828;
padding: 0.5em 1em;
border: 1px solid #CCC;
border-top: none;
}

ul.nav1 li {
width: 100%;
font-size: 1.4rem;
font-weight: 500;
}

ul.nav1 li a {
 display: block;
 color :#282828;
 text-decoration: none;
 padding: 0.5em 1em;
 border: 1px solid #CCC;
 border-top: none;
 }
 ul.nav1 li.home a {
 color: #FFF;
background-color:#E11D18;
font-size:18px;
 }
 ul.nav1 li a:hover {
 background-color: #bf524b;
 }
 ul.accordion-content li a {
 padding-left: 2em;
 }

 
ul.nav2 {
width: 100%;
margin-top: 2em;
}

ul.nav2 li {
padding-left: 1.5em;
margin-bottom: 0.6em;
background-image: url(../images/img_arrow.svg);
background-size: 14px 8px;
background-repeat: no-repeat;
background-position: left center;
}

ul.nav2 li a {
display: block;
font-size: 1.3rem;
font-weight: 500;
color :#282828;
text-decoration: none;
transition: 0.6s;
padding: 0;
background-position: center 1em;
background-repeat: no-repeat;
background-size: 30px 18px;
}

ul.nav2 li a:hover {
color: #43930E;
}


/*　開閉　 */

.accordion-container {
  position: relative;
  width: 100%;
  border-top: none;
  outline: 0;
  /*cursor: pointer*/
}

.accordion-container .accordion-title {
  display: block;
  position: relative;
  margin: 0;
  padding: 0.5em 1em;
  /*cursor: pointer;*/
}

.accordion-container .accordion-title:hover,
.accordion-container .accordion-title:active,
.accordion-container .content-entry.open .accordion-title {
  background-color: #EEE;
  color: #021A3C;
}

.accordion-container .accordion-title:hover i:before,
.accordion-container .accordion-title:hover i:active,
.accordion-container .content-entry.open i {
  color: white;
}

.accordion-title{
  position: relative;
}

.accordion-title:after {
  content: "";
  position: absolute;
  right: 1em;
  top: 36%;
  transition: all 0.2s ease-in-out;
  display: block;
  width: 8px;
  height: 8px;
  border-top: solid 2px #021A3C;
  border-right: solid 2px #021A3C;
  -webkit-transform: rotate(135deg);
  transform: rotate(135deg);
}

.accordion-title.open:after {
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
  top: 45%;
}

.accordion-content {
  display: none;
  padding-left: 0;
}

#spmenu{
display:none;
}

/* CSS for CodePen */
.accordion-container {
  width: 100%;
  margin: 1.875em auto;
}

#nav-toggle{
display:none;
}

@media screen and (min-width: 1800px) {
div.lp_cta_area_3{
background-size:10%;
}
  }

  
  
@media screen and (max-width: 1200px) {
#contents {
    top: 75px;
 }
.lp_cta_area_3{
background:none;
}
#nav-toggle{
margin-top: 0px;
      display:block;
      z-index: 9999;
}

.menu{
display:none;
}
#spmenu{
display:block;
}
}


/*common*/
.span_u_c span{
color:#E11D18;
-moz-box-shadow: 0 -0.5em 0 rgba(255,233,233,1.00) inset;
-webkit-box-shadow: 0 -0.5em 0 rgba(255,233,233,1.00) inset;
box-shadow: 0 -0.5em 0 rgba(255,233,233,1.00) inset;

}
.white_cont{
box-shadow: 0 0 10px #cdcdcd;
border-radius:50px 0 50px 0;
padding:50px;
max-width:900px;
margin:auto;
background-color:rgba(255,255,255,0.5);
z-index: 100;
  position: relative;
}
.hover img:hover{
opacity: 0.90;
}

input {
  line-height: normal;
}
optgroup, select, textarea {
  color: inherit;
  font: inherit;
 line-height: inherit;
  margin: 0;
}
ul, li {
  list-style-type: none;
  margin: 0;
  padding: 0;
}
.clearfix {
  display: block;
}
a{text-decoration:none;
color:#000;
}
a:hover{text-decoration:underline;}
.r_line{
border-right:1px solid #D1D1D1;
}
p{margin:0;}
section{padding:80px 0;}
#price,#contact,#reason{
background:#FCF3DB;
}


/*container*/
.container_980{
max-width: 980px;
  margin: 0 auto;
  padding: 0px;
  position: relative;
  box-sizing: border-box;
}
.container_1100{
max-width: 1100px;
  margin: 0 auto;
  padding: 0px;
  position: relative;
  box-sizing: border-box;
}


/*position-layout*/
.text-left{
text-align:left;
}

.column_4{
width: 22.5%;
  margin-right: 2%;
}
@media screen and (max-width: 769px) {
.column_4{width:100%; margin;0;}
}

.pos_rel{position:relative;}
.f_right{float:right}
.f_left{float:left}
.clear{clear:both;}
.text-center{margin:auto; text-align:center;}

/*dispaly*/
.dis_inline_pc,.dis_inline{display:inline-block;}
.dis_flex_pc,.dis_flex{display:flex;}

/*header*/
h2{
font-size: 36px;
  position: relative;
  margin-bottom: 90px;
  font-size: ;
  font-weight: 600;
  text-align: center;
  font-weight: 700;
}
h2 span{
display:block;
font-size:20px;
color:#E11D18;
margin-bottom: 0px;
    font-family: 'Century Gothic';
}
h2::before {
 position: absolute;
 border-bottom: 5px solid #E11D18;
 top: 117%;
 left: 50%;
 transform: translateX(-50%);
 width: 40px;
 content: '';
}

/*font-family*/
.flow_ttl::before,.accordion_qa .A::before,.accordion_qa .Q::before,.cta_tel a{
font-family: "Century Gothic", sans-serif;
}


/*headline*/

/*text*/
.section_copy {
  text-align: center;
  margin: 30px 0;
  font-size: 20px;
}

.yellow{color:#FADD5F;}
.red{color:#DA2B27;}
.underline{-moz-box-shadow: 0 -0.6em 0 -0.25em rgb(255, 223, 223) inset;
-webkit-box-shadow: 0 -0.6em 0 -0.25em rgb(255, 223, 223) inset;
box-shadow: 0 -0.6em 0 -0.25em rgb(255, 223, 223) inset}
.txt_free{
background:#FBF2D9;
color:#D73A36;
font-size:90%;
padding: 2px 10px;
margin-top: 5px;
display: block;
}
sup{color:#E11D18;}
.dots {
  background-image: radial-gradient(circle at center, #fff 20%, transparent 20%); /* 点の色とサイズ調整 */
  background-position: top right; /* 点の位置 */
  background-repeat: repeat-x; /* 横方向に繰り返し */
  background-size: 1em 0.3em; /* 点の間隔とサイズ調整 */
  padding-top: .2em; /* 縦方向の位置調整 */
}
.bb_white{
background:#0E0C38;
border-radius:10px 0 10px 0;
color:#fff;
padding: 0 10px;
  margin: 0 5px;
}


/*pagetop*/
.pagetop_box{
position:fixed;
bottom:10%;
right:1%;
width:77px;
height:77px;
z-index:9999;
}

/*mark box*/
.mark-box {
    position: relative;
}
.mark-box:before {
    position: absolute;
    content: "";
    left: 0;
    top: 0;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 70px 70px 0 0;
    border-color: rgba(255,255,255,0.5) transparent transparent transparent;
}
.mark-box:after {
    position: absolute;
    content: "";
    transform: rotate(315deg);
    display: block;
    font-size: 11px;
    white-space: pre;
    color: #fff;
    top: 12px;
    left: 4px;
    text-align: center;
    z-index: 2;
    line-height: 1.2;
}

/*price*/

/*table*/

.table_1 tbody td{
width:20%;
}
.table_1 tbody td:nth-of-type(even) {
background-color: #F5F5F5;
font-size:18px;
height:80px;
text-align:center;
}
.table_1 tbody td:nth-of-type(odd) {
background-color: #fff;
font-size:18px;
text-align:center;
}
.table_1 tbody td.price span{
font-size:18px;
}
.table_1 tbody td.price{
color:#E11D18;
font-size:33px;
font-weight:700;
}
.price_img,.price_img img{
vertical-align: bottom;
}
table.table_1 .bg_red_1{
font-size:22px;
border-radius: 8px 0 0 0;
}

.table_1 .price_kibo_1,.table_1 .price_kibo_2{

height: 80px;
}
.table-scroll{
  overflow-x: scroll;
}
table.table_1{
border-radius:8px 8px 0 0;
}

table.table_1 .bg_red_1,.table_1 .price_kibo_2{
text-align:center;
background:#E11D18;
color:#fff;
width: 20%;
}
.table_1 .price_kibo_1{
text-align:center;
background:#bf524b;
color:#fff;
}

/*swiper*/
  :root {
    --easing: cubic-bezier(.2, 1, .2, 1);
    --transition: .8s var(--easing);
    --color-base: #f8f8f8;
    --color-gray: #ddd;
    --color-theme: #f5695f;
    --color-theme-darken: #f12617;
  }



  .l-section .l-inner {
    padding-top: 1rem;
    padding-bottom: 0rem;
  }

  [class*=swiper]:focus {
    outline: none;
  }

  .slide-media,
  .thumb-media {
    position: relative;
    overflow: hidden;
  }
  .slide-media img,
  .thumb-media img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
       object-fit: cover;
  }


  .card03 {
    overflow: hidden;
  }
  .card03 .swiper {
    overflow: visible;
  }
 
  .card03 .slide {
    overflow: hidden;
    -webkit-transition: var(--transition), opacity 1s;
    transition: var(--transition), opacity 1s;
    -webkit-box-shadow: var(--box-shadow);
            box-shadow: var(--box-shadow);
  }
  .card03 .slide-media {
    padding-top: 62.5%;
  }
  .card03 .slide-media img {
    height: calc(100% + 16px);
    -webkit-transform: translateY(-16px);
            transform: translateY(-16px);
  }
  .card03 .slide-content {
    padding: 1rem;
  }
  .card03 .slide-date {
    font-size: 1.2rem;
    line-height: 1;
    display: block;
    color: var(--color-theme);
  }
  .card03 .slide-title {
    line-height: 1.6;
    display: -webkit-box;
    overflow: hidden;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    height: 3.2em;
    margin-top: 1.6rem;
  }




  @media only screen and (max-width: 1024px) {
    html {
      -webkit-text-size-adjust: 100%;
    }
    .l-inner {
      padding: 0 4rem;
    }
    .pc {
      display: none !important;
    }
    .card03 .swiper {
      padding: 0 3.2rem;
    }
    .card03 .swiper-button-prev {
      right: calc(100% - 5.2rem);
    }
    .card03 .swiper-button-next {
      left: calc(100% - 5.2rem);
    }
  }
@media only screen and (max-width: 768px){
  .card03 .swiper-slide:not(.swiper-slide-visible) .slide {
    pointer-events: none;
    opacity: 0.3;
  }

}

  @media only screen and (max-width: 599px) {
    html {
      font-size: 50%;
    }
    .pc-tab {
      display: none !important;
    }
  }

  @media only screen and (min-width: 1025px) {
  .item_box {
    white-space: nowrap;
}
    .tab-sp {
      display: none !important;
    }
    .swiper-button-prev::before, .swiper-button-next::before {
      -webkit-transition: var(--transition);
      transition: var(--transition);
    }
    .swiper-button-prev:hover::before, .swiper-button-next:hover::before {
      -webkit-transform: scale(1.2);
              transform: scale(1.2);
    }
    .card03 .slide img {
      -webkit-transition: var(--transition);
      transition: var(--transition);
    }
    .card03 .slide:hover {
      -webkit-transform: translateY(-16px);
              transform: translateY(-16px);
s    }
    .card03 .slide:hover img {
      -webkit-transform: translateY(0);
              transform: translateY(0);
    }
  }

  @media only screen and (min-width: 600px) {
    .sp {
      display: none !important;
    }
  }

/*list*/

.dl_1{
padding-bottom:30px;
margin-bottom:30px;
border-bottom:2px solid #E3E3E3;
position:relative;

}
.dl_1::before{
  content: '';
  position: absolute;
  bottom: -2px;
  width: 2%;
  height: 2px;
  background: #E11D18;/*左：ピンク*/
}

.dl_1 dt{
width:20%;
padding-left:60px;
color:#E11D18;
}
.dl_1 dd{
width:79%;
padding-left:20px;
}
ul.ul_2 li{
padding-left: 40px;
line-height: 1.6em;
background: url(../img/icon_li_3.png) left 0px top 5px no-repeat;
background-size: auto;
background-size: 34px auto;
margin-bottom: 25px;
font-size: 22px;
}

ul.ul_1 li{
padding-left: 32px;
  line-height: 1.6em;
  background: url(../img/icon_check.png) left 0px top 8px no-repeat;
 background-size: auto;
  background-size: 18px auto;
  margin-bottom: 20px;
}

ul.ul_1,ul.ul_2{
list-style: none;
}

/*header*/
.header_logo img {
  width: 132px;
  vertical-align: bottom;
  margin-bottom: 0.4em;
  margin-top: 1.8em;
}
.header_logo {
  width: 176px;
  height: 150px;
  position: absolute;
  top: 0;
  left: 10%;
  text-align: center;
  padding: 1em 0 0 0;
  background-color: #FFF;
  border-bottom-right-radius: 14px;
  border-bottom-left-radius: 14px;
  box-shadow: none;
}
.headerbox {
position: absolute;
top: 0;
width: 100%;
display: block;
}
header{
position: relative;
z-index: 100;
}
.menubox ul.dropdwn li {
  width: auto;
  font-size: 15px;
  margin-right: 20px;
}
.header_l{
width: 15%;
  float: left;
  position: relative;
  text-align: left;
}
.header_r{
width: 1100px;
  float: right;
}

/*kv main_copy*/
.lp_kv_form{
background:#fff;
margin:20px;
box-shadow: 0 0 15px gray;
/*height:510px;*/
padding:20px;
}
.lp_visual_wrap {
  max-width: 1100px;
  justify-content: center;
}
.lp_img {
min-width: 430px;
background: linear-gradient(90deg, #C21B17, #FF726E);
border-radius:20px;
/*max-height:590px;*/
}

.lp_img img{
vertical-align: bottom;
}

.lp_desc {
  max-width: 724px;
}


/*bg*/
.g_bg{
background:#F5F5F5;
padding: 20px;
}
/*main content*/
#contents{
top: 100px;
  position: relative;
}

/*works*/
section.works{
padding:0;
position:relative;
height: auto;
background: url(../img/bg_circle_lt.png) no-repeat;
background-size: 440px;
  background-position: left top;
width: 100%;
padding-top: 80px;

}
.works_2{
background: url(../img/bg_circle_rb.png) no-repeat;
background-size: 440px;
  background-position: right bottom;
width: 100%;
padding-bottom: 360px;
}

.s_client{
color:#211815;
font-size:15px;
}

.s_tag {
margin:8px 0;
}

.s_tag span{
color:#233E69;
background:#EEEEEE;
font-size:12px;
margin-right:10px;
padding:2px 6px;
}

.s_txt{
color:#001D49;
font-size:18px;
}

/*stren*/
.stren{
margin-top:-365px;
}

/*sec_02*/
#sec_02{
background:#F5F5F5;
height: 490px;
padding: 20px 0;
z-index: 100;
    position: relative;
}
#sec_02{
.w_50{
width:50%;
margin:0;
}
}
.sec_02_img{
position: absolute;
  top: -50px;
  left: -200px;
  width: 700px;
}
/*nayami*/
.nayami_all{
background:#E11D18;
padding:80px 0;
color:#fff;
position:relative;
}

.nayami_all:before{
  position: absolute;
  background: url(../img/line_rw.png) no-repeat;
top: 0%;
transform: translateY(-50%);
left:50%;
  content: "";
  width: 1px;
  height: 96px;
  display: inline-block;
  background-size: contain;
  z-index: 100;

}

.nayami{
background: url(../img/bg_circle_lb.png) no-repeat;
  background-size: 490px;
  background-position: left bottom;
}

.nayami_2{
background: url(../img/bg_nayami_2.png) no-repeat;
  background-size: 330px;
  background-position: right bottom;

}


/*topic*/
.w_cont_2{
background:#fff;
border-radius:5px;
padding:30px 50px;
max-width:750px;
margin-top:50px;
}
.w_cont{
background:#fff;
border-radius:1000px;
font-size:22px;
text-align:center;
padding:5px 15px;
}
.topic_box_2{
padding: 55px 40px 55px;
div{
vertical-align: bottom;
}
}
.topic_box_2 img{
border-radius: 1000px;
background: #fff;
width:90%;
}



.topic_box{
background:#FFDFDF;
border-radius:20px;
position:relative;
max-width:900px;
margin:auto;
}
.topic_box .ttl img{
width:154px;
}


.topic_box .ttl{
position: absolute;
  left: 14%;
  transform: translateX(-50%);
  top: -14px;
}

/*reason*/

.reason_box{
img
{border-radius:4px;}
}
.reason_box .reason {
background:#EDEDF0;
position: relative;
padding: 20px 0 ;

margin-top:20px;
font-size: 18px;
line-height: 150%;
text-align:center;
}
.reason_box .reason::before{
content: "";
  width: 0px;
  height: 20px;
  position: absolute;
  top: -10px;
  left: 50%;
  margin: auto;
  box-sizing: border-box;

  border-left: 1px solid #0E0C38;
}

.reason_box .ttl{
line-height: 150%;
margin:20px 0;
}

.reason_box .reason_txt{
line-height: 200%;
  letter-spacing: 1px;
}

.reason_box .big_ttl span{
font-size:80px;
}
.reason_box .big_ttl{
font-size:115px;
color:#E11D18;
line-height: 100%;
font-weight:700;
font-family: Futura, 'Century Gothic';
letter-spacing: 3px;
position:relative;
}
.reason_box .big_ttl span{
position:absolute;
top:-90px;
left:0;

}
.reason_box{
background-color:rgba(255,255,255,0.8);
border-radius:30px 0 30px 0;
padding: 0px;
}

.reason_box img{
border-radius: 30px 0 0 0;
}

/*stre*/
.stre_ttl{
font-size:22px;
font-weight:600;
text-align:center;
margin:20px 0;
}


/*item*/
section.item{padding-top:0;}
.item_1{background-image: url(../img/type_1.png);}
.item_2{background-image: url(../img/type_2.png);}
.item_3{background-image: url(../img/type_3.png);}
.item_4{background-image: url(../img/type_4.png);}
.item_5{background-image: url(../img/type_5.png);}
.item_6{background-image: url(../img/type_6.png);}
.item_7{background-image: url(../img/type_7.png);}
.item_8{background-image: url(../img/type_8.png);}

.item_box{
height:auto;
width: 23%;
  margin: 0 0.5% 1%;
    vertical-align: baseline;
}
.item_img{
//background-color:#FBF2D9;
position:relative;
background-size: contain;
  background-repeat: no-repeat;
background-position: center bottom;
//height:200px;
img{
vertical-align: text-bottom;
    margin-bottom: -2px;
}
}
.item_name{
background:#E11D18;
color:#fff;
text-align: center;
padding: 15px 10px 0;
  height: 84px;
  font-size: 18px;
line-height: 140%;
margin: 0 3px;
}
.item_name.line_1{
padding-top:30px;
}
/*flow*/
.flow{
background: url(../img/bg_circle_rb.png) no-repeat;
  background-size: 400px;
  background-position: right bottom;
}

.flow_ttl p{
font-size: 18px;
  line-height: 140%;
 }
.flow_ttl p.one{
  margin-top: 15px;
}
.flow_ttl p.two{
  margin-top: 5px;
}

.flow_ttl{
height:80px;
position:relative;
display:inline-block;
}
.flow_1 + .flow_ttl::before{content:"01";}
.flow_2 + .flow_ttl::before{content:"02";}
.flow_3 + .flow_ttl::before{content:"03";}
.flow_4 + .flow_ttl::before{content:"04";}
.flow_5 + .flow_ttl::before{content:"05";}
.flow_6 + .flow_ttl::before{content:"06";}
.flow_7 + .flow_ttl::before{content:"07";}
.flow_8 + .flow_ttl::before{content:"08";}

.flow_ttl::before{
color: #fff;
  font-weight: bold;
  background: #E11D18;
  padding: 6px 13px;
  border-radius: 100px;
  top: 10px;
  position: absolute;
  font-size: 20px;
}
.flow_box_2 img{
border-bottom: 5px solid #E11D18;
}

.flow_box_2{
position:relative;
height: 350px;
  vertical-align: top;
}
.flow_box_2:not(:last-child)::after{
border-bottom: 4px dotted #F3A794;
  content: "";
  position: absolute;
width: 25px;
  top: 80px;
  right: -25px;
  z-index: 100;
}

.flow_box_2.add_arrow:before{
position: absolute;
    display: block;
    content: "";
    border-top: 8px solid transparent;
    border-right: 0 solid transparent;
    border-bottom: 10px solid transparent;
    border-left: 12px solid #F3A794;
    width: 0;
    height: 0;
    right: -32px;
    top: 73px;
    z-index: 9999;

}


/*faq*/
.faq{
background: url(../img/bg_circle_lt2.png) no-repeat;
  background-size: 490px;
background-position: left top;
padding-top:0;
}
.readmore {
  position: relative;
  margin: 50px auto 0;
  padding: 0 0 75px;
}

.readmore label.morelabel {
  position: absolute;
  display: table;
  left: 50%;
  bottom: 0;
  margin: 0 auto;
  width: 200px;
  padding: 10px 0;
  color: #fff;
  text-align: center;
  border-radius: 5px;
  background-color: #333;
  transform: translateX(-50%);
  cursor: pointer;
  z-index: 1;
}

.readmore label.morelabel::before{
  content: '続きを見る';
}

.readmore input[type="checkbox"]:checked ~ label.morelabel::before {
  content: '元に戻す';
}

.readmore input[type="checkbox"]{
  display: none;
}

.readmore-content {
  position: relative;
  height: 240px;
  overflow: hidden;
}

.readmore .readmore-content::before {
  position: absolute;
  display: block;
  content: "";
  bottom: 0;
  left: 0;
  width: 100%;
  height: 75px;
background: linear-gradient( rgba(255,255,255,0) 0%, rgba(255,255,255,0.8) 50%, #fff 100%);
    z-index: 100;
}

.readmore input[type="checkbox"]:checked ~ .readmore-content::before {
  display: none;
}

.readmore input[type="checkbox"]:checked ~ .readmore-content {
  height: auto;
}

/*area*/
#area{
background:#F5F5F5 url(../img/japan_map.png) no-repeat;
background-size:contain;
background-position:center center;

}
.area_red{
background:#E11D18;
color:#fff;
padding: 15px 5px;
text-align: center;
margin-bottom:15px;
border-radius:3px;

}
.area_white{
background:#fff;
color:#E11D18;
padding:15px 5px;
text-align: center;
border-radius: 3px;
}

/*sdgs*/
.sd_logo_re img{width:190px;}
.sd_logo_re {padding:15px;}
.sd_logo_sdgs img{width:170px;}
.sd_logo_sdgs {padding:15px;}

/*company*/
section.company{
background: url(../img/bg_circle_rb2.png) no-repeat;
  background-size: 490px;
background-position: right bottom;

}

/*footer*/
.footer_link a{
color:#fff;
}
.footer_link p{
margin:20px 10px;
}
.footer_link{
justify-content: center;
}
.footer_logo{
margin:auto;
max-width:120px;
}
#footer{
padding:50px 0 20px 0;
margin:auto;
background:#E11D18;
color:#fff;
text-align:center;
position: inherit;
width:100%;
}

/*cta*/
.cta_mail a:hover,.cta_tel a:hover{
text-decoration:none;
}
.cta_mail a{
width: 464px;
height: 93px;
display: block;
padding-top: 15px;
color:#fff;
margin: auto;
}
.cta_mail span.txt{
font-size:26px;
position:relative;
color:#fff;
line-height: 120%;
font-weight:700;
position:relative;
}
.cta_mail span.txt::before{
  position: absolute;
  background: url(../img/icon_mail_w.png) no-repeat;
top: 65%;
  transform: translateY(-50%);
  content: "";
  width: 32px;
  height: 32px;
  display: inline-block;
  background-size: contain;
  z-index: 100;
  left: -45px;
}

.cta_tel span.txt{
font-size:36px;
position:relative;
color:#000;
line-height: 120%;
font-weight:700;
}


.cta_tel span.txt::before{
  position: absolute;
  background: url(../img/icon_free.png) no-repeat;
top: 55%;
  transform: translateY(-55%);
  content: "";
  width: 46px;
  height: 30px;
  display: inline-block;
  background-size: contain;
  z-index: 100;
  left: -55px;
}

.cta_tel{
//background:#fff;
border-radius:4px;
width: 464px;
height: 93px;
padding-top: 10px;
}
.cta_mail{
background:#CE9F04;
color:#fff;
border-radius:80px;
width: 464px;
  height: 93px;
}

.lp_cta_area_bottom{
background-image: url(../img/cta_bottom.jpg) ;
 width: 100%;
height: 46px;
background-size:cover;
background-repeat:no-repeat;
background-position:top center;
}



.lp_cta_area{
background:#E11D18;
text-align:center;
padding:5px;
}
.lp_cta_area_2{
border:1px solid #F0F0F0;
}

.lp_cta_area_3{
background: url(../img/cta_illust.png) no-repeat;
background-size: 190px;
background-position:left 3% bottom;
padding: 30px 15px;
}

.lp_txt_1{
color:#FADD5F;
font-size:20px;
}
.lp_txt_2{
color:#fff;
font-size:30px;
font-weight:700;
}
.lp_txt_3{
font-size:20px;
color:#FBF2D9;
}


.cta_03 .cta_tel {
  margin: 10px auto 60px;
}
.sp_only{
  display: none !important;
}
.btm_fixed{
display:none;
}

        
        
@media screen and (max-width: 1024px) {
.reason_box .reason.reason_1{
margin-top:28px;
}
.reason_box .reason.reason_3{
margin-top:70px;
}
section.nayami {
     padding-bottom: 80px;
}
.works_2 {
    padding-bottom: 310px;
}
.stren {
    margin-top: -254px;
}
.lp_visual {
    padding-bottom: 50px;
}

#sec_02 {
    height: 550px;
}
.w_10,.w_20,.w_25,.w_30,.w_33,.w_35,.w_40,.w_50,.w_60,.w_65,.w_70,.w_75,.w_80,.w_90,#sec_02 .w_50{width:100%;}

.area_box{text-align:center;}
.readmore-content {
    height: 320px;
}

.flow_box_2.add_arrow:before{
content:none;
}

.flow_box_2:not(:last-child)::after{
border:0;
}


#sec_02 {
height: auto;
.f_right {
    float: none;
}
}


.dl_1::before {
    width: 15%;
 }
.sd_logo_re img,.sd_logo_sdgs img {
    width: 100%;
}
.accordion_qa .Q::before, .accordion_qa .A::before {
    top: -.4em;
    left: -1.3em;
}
.accordion_qa .Q, .accordion_qa .A {
    margin-left: 0px;
}
.price_img{
overflow-x: scroll;
}
.price_img img{
width:100%;
}

.flow_box_2 .fow_txt{
margin-top:25px;
}

.flow_ttl p{
font-size:120%;
}
.work_box{
.ttl_teian,.ttl_seika {
    height: 66px;
line-height: 66px;
font-size: 120%;
 }
.f_150 {
    font-size: 130% !important;
    line-height: 140%;
}
.f_200 {
    font-size: 170% !important;
    line-height: 140%;
    margin: 20px 0;
}
}
.topic_box_2 {
padding: 20px 20px 50px;
 img{
max-width: 200px;
    margin: auto;
    text-align: center;
display: block;
    margin-bottom: 20px;
}
.f_180{
    line-height: 150%;
    margin: 10px 0;
}
}

.topic_box .ttl_1 {
    font-size: 140%;
}
.fs_24 {
    line-height: 150%;
font-size: 22px;
        margin-top: 10px;
}
.fs_36 {
    font-size: 30px;
    line-height: 160%;
}
.mt10_sp_only{margin-top:10px;}
section {
    padding: 50px 0;
}
h2 {
    line-height: 140%;
font-size: 30px;
margin: 0 0 70px;
}
h2 span {
    margin-bottom: 0px;
    font-size: 18px;
}

.lp_txt_1 {
    line-height: 140%;
}
.lp_txt_2 {
    font-size: 24px;
    font-weight: 700;
line-height: 130%;
margin-top: 10px;
}

    #nav-toggle {
margin-top: -5px;
        z-index: 9999;
          }
div.grecaptcha-badge{
            bottom: 18% !important;
            z-index: 9999;
          }
.pagetop_box {

bottom: 25%;
width: 50px;
height: auto;
img{
    max-width: 50px;
}_
}
.btm_fixed .cta_tel span.txt::before {
 top: 100%;
left: -45px;
  width: 35px;
}
.btm_fixed .cta_tel a {
  padding-left: 50px;
 }
.btm_fixed .cta_mail a {
  width: 100%;
  padding-left: 55px;
  padding-top: 10px;
 }
.btm_fixed .cta_mail span.txt::before{
top: 100%;
 left: -40px;
}
.btm_fixed .cta_mail a {
text-align: center;
  padding-left: 60px;
 }
.btm_fixed .cta_mail {
  border-radius: 4px;
 }
.btm_fixed .cta_mail span.txt{
font-size:18px;
}
.btm_fixed .cta_tel a{
height:65px;
text-align: center;
}
.btm_fixed .cta_tel,.btm_fixed .cta_mail{
height:65px;
}
.btm_fixed .cta_time{
font-size:10px;
}
.btm_fixed .cta_tel span.txt {
  font-size: 20px;
 }
.btm_fixed{
display:flex;
position: fixed;
bottom:0;
z-index: 9999;
width: 100%;
align-items: flex-end;
img{
  vertical-align: top;
}
}

#footer {
 padding-bottom: 180px;
}
.cta_tel span.txt {
 font-size: 32px;
}
.area_red,.area_white {

padding: 15px 20px;
}
.topic_box .ttl_2 {
  font-size: 18px;
  padding: 20px 0;
  width: auto;
  text-align: center;
  margin: auto;
  display: block;
  padding-bottom: 0;
}
.kai_txt {
font-size: 17px;
padding: 5px 0px 5px 18px;
 }
.cta_mail a {
width:100%;
padding-left: 40px;
}
.dl_1 dt,.dl_1 dt {
  padding-left: 0;
 }
#sdgs .pc_w_50.w_50{
width:48%;
}

#area {
  background-size: 150%;
}
#area .w_20{
width: 36%;
}
.flow_box_2,.flow_ttl {
  height: auto;
 }
.cta_mail{
margin-top:10px;
}

.cta_tel,.cta_mail {
max-width:90%;
}

.cta_03 .cta_tel{
margin: 10px auto 40px;
}
.item_img {
  height: auto;
}
.w_50-25 {
  width: 48%;
height: auto;
margin-top: 8px;
}
.works_cliant{
border-bottom: 1px solid #aaa;
  border-right: 0 !important;
  padding-bottom: 15px;
  margin-bottom: 15px;
}
.g_arrow {
  padding-bottom: 0px;
  width: 100%;
  margin-top: 20px;
}
.ttl_teian,.ttl_seika{
margin: 10px 0;
}
.works_naiyo {
  width: 100%;
  background: #eceaea;
  margin-bottom: 10px;
}
.work_number {
position: relative;
  margin-bottom: 30px;
}


.lp_desc {
padding: 50px 0 50px;
    max-width: 50%;
}
.topic_box {
  padding: 0px;
}
.w_50{
margin:0;
}
.container_1100{
padding:0 20px;
}
.sec_02_img {
  position: relative;
  top: 0;
  width: 100%;
  left: 0;
}
.lp_cta_area_3{
background:none;
}


#contents {
  top: 70px;
 }
.headerbox{
box-shadow: none;
}

.lp_img {
 max-width: 100%;
}

}

@media screen and (max-width: 769px){
.price .f_right{
float:left;
}

div .mt15_sp_only{
margin-top: 15px;
}
div .mt30_sp_only{
margin-top: 30px;
}
div .mt10_sp_only{
margin-top: 10px;
}
    .reason_box .reason.reason_3,.reason_box .reason.reason_1 {
        margin-top: 20px;
    }
    .stren {
        margin-top: -296px;
    }
.works_2,section.works,section.company,section.faq,section.nayami  {
    background-size: 370px;
 }
    .price_img img {
        width: 800px;
    }
.topic_box .ttl {
    left: 19%;
 }
.nayami_all{
padding:80px 20px;
}
.pc_only{  display: none !important;}
.nayami_2{
background:none;
}
.sp_only{
  display: block !important;
}
.lp_kv_form {
    height: auto;
}
    .lp_img {
width: 100%;
margin-bottom:30px;
padding: 1px;
min-width: 100%;
    }
.dis_flex_pc{display:block;}
    .lp_desc {
max-width: 100%;
padding-bottom:0;
    }
}

.sp_500_only{display:none;}

				@media screen and (max-width: 500px) {
					.nayami_all.fs_36{
					font-size: 28px;
					}
.w_cont_2 {
    padding: 20px 30px;
 }
.nayami ul.ul_2 li {
     font-size: 20px;
}
.reason_box .reason {
padding: 20px 15px;
text-align: left;
 }
    .stren h2 {
        margin-bottom: 30px;
    }
    .works_2,section.works,section.company,section.faq,section.flow {
        background-size: 330px;
    }
    .works_2 {
        padding-bottom: 280px;
    }
.item .section_copy{
font-size:16px;
}
.w_cont {
font-size: 20px;
        line-height: 160%;
 }
.white_cont {
    padding: 50px 24px;
 }
    h2 {
        font-size: 28px;
    }
    .topic_box_2 {
        padding: 66px 20px 50px;
    }
    .topic_box .ttl {
        left: 27%;
    }
    .lp_desc {
        padding: 0px 0 0px;
    }
          div.grecaptcha-badge{
                bottom: 10% !important;
          }
              .pagetop_box {
        bottom: 18%;
    }
              .kai_txt {
        font-size: 16px;
        padding: 5px 10px 5px 28px;
    }
#gloval-nav a {
padding: 10px 0;
font-size: 18px;
}
.reason_box .big_ttl {
font-size: 36px;
}
.reason_box .big_ttl span {
    top: -57px;
}
.dl_1 dd {
    padding-left: 10px;
}
.sp_500_only{display:block;}
.item_name {
    font-size: 15px;
}
.header_logo {
width: 120px;
height: 90px;
img{
    width: 90px;
    margin-top: 0.5em;
}
}
  
}
        
                @media screen and (max-width: 330px) {
              .kai_txt {
            font-size: 15px;
            padding: 10px 10px 5px 30px;
          }
        }

@media (min-width: 500px) {
a[href^="tel:"] {
    pointer-events: none;
    cursor: default;
}
}


  
  @media screen and (max-width: 1400px){
  .lp_cta_area_3{
background:none;
} 
  } 




/* Form 下部 */
.p-contact__table {
  color: #333;
}
.p-contact_head {
  text-align: center;
  font-size: 20px;
  font-weight: 700;
  margin-bottom: 45px;
}
.p-contact_head span {
  color: #E11D18;
  border-bottom: 8px solid #F8D714;
}
.p-contact__table {
  max-width: 1000px;
  margin: 0 auto;
}
.p-contact__row {
  display: flex;
  justify-content: space-between;
  padding: 0 40px;
}
.p-contact__row:not(:last-child) {
  padding-bottom: 20px;
  margin-bottom: 20px;
  border-bottom: 1px solid #E4D6B0;
}
.p-contact__data input{
  width: 650px;
  border:none;
  border-radius: 4px;
  padding: 15px;
  font-size: 16px;
}
.p-contact__data textarea {
  width: 650px;
  border:none;
  border-radius: 4px;
  padding: 15px;
  max-height: 200px;
  font-size: 16px;
}
.p-contact__label {
  margin-right: 20px;
  font-size: 18px;
  font-weight: 700;
}
.p-contact__label--required {
  font-size: 13px;
  color: #fff;
  background: #EC3437;
  padding: 2px 4px;
  display: inline-block;
  margin-left: 10px;
}
.p-contact__label--note {
  font-size: 11px;
  font-weight: 500;
  line-height: 1.5;
  display: inline-block;
  margin-top: 5px;
}
.p-contact__privacy {
  text-align: center;
  font-size: 18px;
  margin-top: 30px;
  font-weight: 700;
}
.p-contact__privacyInput {
  text-align: center;
}
.p-contact__note {
  text-align: center;
  font-size: 18px;
  font-weight:normal;
  margin-top: 30px;
}
.p-contact__submit {
  text-align: center;
}
.p-contact__submit input {
  color: #fff;
  font-size: 24px;
  font-weight: 700;
  background: #E11D18;
  padding: 25px 120px;
  border-radius: 100px;
  border: none;
  margin-top: 20px;
  cursor: pointer;
  transition: .3s;
}
.p-contact__submit input:hover {
  opacity: 0.7;
}
.p-contact__submit input:disabled {
  opacity: 0.5
}
.p-contact__submit input:disabled:hover {
  opacity: 0.5;
}
@media screen and (max-width: 1000px) {
.p-contact__table {
  color: #333;
}
.p-contact_head {
  text-align: center;
  font-size: 20px;
  font-weight: 700;
  margin-bottom: 45px;
}
.p-contact_head span {
  color: #E11D18;
  border-bottom: 8px solid #F8D714;
}
.p-contact__table {
  max-width: 1000px;
  margin: 0 auto;
}
.p-contact__row {
  display: block;
  padding: 0 15px;
}
.p-contact__row:not(:last-child) {
  padding-bottom: 20px;
  margin-bottom: 20px;
  border-bottom: 1px solid #E4D6B0;
}
.p-contact__data input{
  width: calc(100% - 30px);
  max-width: 100%;
  border:none;
  border-radius: 4px;
  padding: 15px;
  font-size: 16px;
}
.p-contact__data textarea {
  width: calc(100% - 30px);
  max-width: 100%;
  border:none;
  border-radius: 4px;
  padding: 15px;
  max-height: 200px;
  font-size: 16px;
}
.p-contact__label {
  margin-right: 20px;
  font-size: 16px;
  font-weight: 700;
  margin-bottom: 10px;
}
.p-contact__label--required {
  font-size: 13px;
  color: #fff;
  background: #EC3437;
  padding: 2px 4px;
  display: inline-block;
  margin-left: 10px;
}
.p-contact__label--note {
  font-size: 11px;
  font-weight: 500;
  line-height: 1.5;
  display: inline-block;
  margin-top: 5px;
}
.p-contact__privacy {
  text-align: center;
  font-size: 16px;
  margin-top: 30px;
  font-weight: 700;
}
.p-contact__privacyInput {
  text-align: center;
}
.p-contact__note {
  text-align: center;
  font-size: 15px;
  font-weight:normal;
  margin-top: 30px;
}
.p-contact__submit {
  text-align: center;
}
.p-contact__submit input {
  color: #fff;
  font-size: 20px;
  font-weight: 700;
  background: #E11D18;
  padding: 20px;
  border-radius: 100px;
  border: none;
  margin-top: 20px;
  cursor: pointer;
  transition: .3s;
  width: 100%;
}
}







/* Form KV */
.top-contact__table {
  color: #333;
}
.top-contact_head {
  text-align: center;
  font-size: 20px;
  font-weight: 700;
  margin-bottom: 45px;
}
.top-contact_head span {
  color: #E11D18;
  border-bottom: 8px solid #F8D714;
}
.top-contact__table {
  margin: 0 auto;
}
.top-contact__row {

}
.top-contact__row:not(:last-child) {
  padding-bottom: 10px;
  /*margin-bottom: 10px;
  border-bottom: 1px solid #EEEEEE;*/
}
.top-contact__data input{
  border:none;
  border-radius: 4px;
  padding: 6px;
  font-size: 12px;
  border: 1px solid #CCCCCC;
  width: calc(100% - 12px);
}
.top-contact__data textarea {
  border:none;
  border-radius: 4px;
  padding: 6px;
  max-height: 80px;
  font-size: 12px;
  border: 1px solid #CCCCCC;
  width: calc(100% - 12px);
}
.top-contact__label {
  margin-bottom: 5px;
  font-size: 12px;
  font-weight: 700;
}
.top-contact__label--required {
  font-size: 10px;
  color: #fff;
  background: #EC3437;
  padding: 4px;
  display: inline-block;
  margin-left: 10px;
  line-height: 1;
}
.top-contact__label--note {
  font-size: 10px;
  font-weight: 500;
  line-height: 1.5;
  display: inline-block;
}
.top-contact__privacy {
  text-align: center;
  font-size: 13px;
  margin-top: 10px;
  font-weight: 700;
}
.top-contact__privacyInput {
  text-align: center;
  font-size: 12px;
}
.top-contact__note {
  text-align: center;
  font-size: 10px;
  font-weight:normal;
  margin-top: 10px;
}
.top-contact__submit {
  text-align: center;
}
.top-contact__submit input {
  color: #fff;
  font-size: 14px;
  font-weight: 700;
  background: #E11D18;
  padding: 15px 10px;
  border-radius: 100px;
  border: none;
  margin-top: 20px;
  cursor: pointer;
  transition: .3s;
  width: 100%;
}
.top-contact__submit input:hover {
  opacity: 0.7;
}
.top-contact__submit input:disabled {
  opacity: 0.5
}
.top-contact__submit input:disabled:hover {
  opacity: 0.5;
}
.wpcf7-not-valid-tip {
  font-size: 12px !important;
}
@media screen and (max-width: 1000px) {
.top-contact__table {
  color: #333;
}
.top-contact_head {
  text-align: center;
  font-size: 20px;
  font-weight: 700;
  margin-bottom: 45px;
}
.top-contact_head span {
  color: #E11D18;
  border-bottom: 8px solid #F8D714;
}
.top-contact__table {
  margin: 0 auto;
}
.top-contact__row {

}
.top-contact__row:not(:last-child) {
  padding-bottom: 10px;
  /*margin-bottom: 10px;
  border-bottom: 1px solid #EEEEEE;*/
}
.top-contact__data input{
  border:none;
  border-radius: 4px;
  padding: 6px;
  font-size: 12px;
  border: 1px solid #CCCCCC;
  width: calc(100% - 12px);
}
.top-contact__data textarea {
  border:none;
  border-radius: 4px;
  padding: 6px;
  max-height: 80px;
  font-size: 12px;
  border: 1px solid #CCCCCC;
  width: calc(100% - 12px);
}
.top-contact__label {
  margin-bottom: 5px;
  font-size: 12px;
  font-weight: 700;
}
.top-contact__label--required {
  font-size: 12px;
  color: #fff;
  background: #EC3437;
  padding: 4px;
  display: inline-block;
  margin-left: 10px;
  line-height: 1;
}
.top-contact__label--note {
  font-size: 11px;
  font-weight: 500;
  line-height: 1.5;
  display: inline-block;
  margin-top: 5px;
}
.top-contact__privacy {
  text-align: center;
  font-size: 13px;
  margin-top: 10px;
  font-weight: 700;
}
.top-contact__privacyInput {
  text-align: center;
}
.top-contact__note {
  text-align: center;
  font-size: 10px;
  font-weight:normal;
  margin-top: 10px;
}
.top-contact__submit {
  text-align: center;
  font-size: 12px;
}
.top-contact__submit input {
  color: #fff;
  font-size: 14px;
  font-weight: 700;
  background: #E11D18;
  padding: 15px 10px;
  border-radius: 100px;
  border: none;
  margin-top: 20px;
  cursor: pointer;
  transition: .3s;
  width: 100%;
}
}



