@charset "utf-8";
/* CSS Document */
:root {
--main-color:#00cc99;   
--theme-red:#f21616;
--theme-orange:#ff5c00;
--theme-blue:#0096dc;
--theme-green:#74bf04;  
--theme-yellow:#ffb900;   
}
/*********** 基本設定 ***********/
html{height:100%}
body{height:100%;width:100%;font-size:100%;line-height:1.35;color:#000;font-family: "M PLUS 1", sans-serif;font-weight: 500;}
input,textarea{font-family: "M PLUS 1", sans-serif;font-weight: 400;}
*{outline:none}
a{overflow:hidden}
input[type="submit"],input[type="button"]{-webkit-appearance:none;-webkit-appearance:none;border-radius:0}
img{max-width:100%;height:auto;width:100%}
.clearfix{zoom:100%}
.clearfix:after{content:"";clear:both;height:0;display:block;visibility:hidden}
.ta_c{text-align:center}
.ta_r{text-align:right}
.ta_l{text-align:left}
.normal{font-weight:normal}
.bold{font-weight:bold}

/*********** 透過設定 ***********/

.bright{-webkit-transition:0.1s ease-in-out;-moz-transition:0.1s ease-in-out;-o-transition:0.1s ease-in-out;transition:0.1s ease-in-out}
.bright:hover{filter:brightness(80%)}

/*********** wrap設定 ***********/
#wrap{width:100%;position:relative;min-height:100%}
.wrap1{max-width:920px;padding:0 10px;margin:0 auto 15px}
.wrap2{max-width:1200px;padding:0 10px;margin:0 auto}

/*********** header設定 ***********/
header{padding:10px 20px;display:flex;justify-content:space-between;align-items:center;box-sizing:border-box}
#header_btn{display:flex;gap:10px;align-items:center;justify-content:center;}
#header_btn a{text-decoration:none;display:block;font-weight:bold;color:#fff}
#head_mail{border-radius:5px;background: linear-gradient(to bottom,  rgb(109,179,242) 0%,rgb(84,163,238) 50%,rgb(54,144,240) 51%,rgb(0,150,220) 99%); 
padding:15px 0.8em}
#head_line{border-radius:5px;
background: linear-gradient(to bottom,  rgb(157,213,58) 0%,rgb(161,213,79) 50%,rgb(116,192,39) 51%,rgb(116,191,4) 100%); 
;padding:15px 0.8em}
#head_mail,#head_line,.shiny{overflow:hidden;transition:300ms;position:relative;display:block}
#head_mail:before,#head_line:before,.shiny:before{position:absolute;content:'';display:inline-block;top:-180px;left:0;width:30px;height:100%;background-color:#b5e7ff;transition:300ms;animation:shinyshiny 2.5s ease-in-out infinite}
@-webkit-keyframes shinyshiny{0%{-webkit-transform:scale(0) rotate(45deg);opacity:0}
80%{-webkit-transform:scale(0) rotate(45deg);opacity:0.5}
81%{-webkit-transform:scale(4) rotate(45deg);opacity:1}
100%{-webkit-transform:scale(50) rotate(45deg);opacity:0}
}
#header_btn i{font-size:120%;margin-right:5px}
#head_tel{border-radius:5px;line-height: 1.35; box-sizing: border-box;background: linear-gradient(to bottom,  rgb(242,76,26) 0%,rgb(241,111,92) 50%,rgb(246,41,12) 51%,rgb(242,22,22) 100%);padding:5px 0.8em 
}
#head_tel p{color:#fff;font-weight:500;font-size:12px;text-align:center;}
#head_tel a{color:#fff;font-size:120%}
#head_tel i{font-size:100%}
@media screen and (max-width:1020px){#header_logo{width:35%}
}
@media screen and (max-width:960px){header{padding:10px 20px;display:flex;justify-content:space-between;align-items:center;box-sizing:border-box;flex-direction:column;gap:10px}
#header_logo{width:auto}
}
@media screen and (max-width:768px){header{padding:5px 20px;position:fixed;top:0;left:0;width:100%;border-bottom:2px solid var(--theme-blue);background:#fff;z-index:9999}
#header_logo{text-align:center;height: 45px}
#header_logo img{height: 45px;width: auto!important}
}
@media screen and (max-width:640px){#header_btn{flex-wrap:wrap;gap:10px}
#head_mail_wrap,#head_line_wrap{width:calc(50% - 5px);text-align:center}
#head_mail,#head_line{font-size:3.2vw}
#head_tel{width:100%;text-align:center}
}
/*********** nav設定 ***********/

nav{border-bottom:2px solid var(--theme-blue)}
#nav_ul{list-style:none;display:flex;justify-content:center;max-width:1220px;margin:0 auto}
#nav_ul li{width:200px;border-right:1px solid var(--theme-blue)}
#nav_ul li:first-of-type{border-left:1px solid var(--theme-blue)}
#nav_ul a{display:block;text-align:center;padding:1em 0;text-decoration:none;color:#000;font-weight:bold;-webkit-transition:0.1s ease-in-out;-moz-transition:0.1s ease-in-out;-o-transition:0.1s ease-in-out;transition:0.1s ease-in-out}
#nav_ul a:hover{color:var(--main-color)}
#nav_ul i{color:var(--main-color);margin-right:5px}
@media screen and (max-width:768px){nav{position:fixed;width:100%;top:57px;left:0;background:#fff;z-index:9999}
}
#nav_ul_sp{list-style:none;display:none}
#nav_ul_sp li{width:100%;border-bottom:1px solid #eee}
#nav_ul_sp a{display:block;text-align:center;padding:1.5em 0;text-decoration:none;color:#fff;font-weight:bold;-webkit-transition:0.1s ease-in-out;-moz-transition:0.1s ease-in-out;-o-transition:0.1s ease-in-out;transition:0.1s ease-in-out;font-size:120%;background:var(--theme-blue)}
#nav_ul_sp i{margin-right:5px} 

/***** #menu_btn設定 ******/

#menu_btn{display:none;width:45px;height:50px;position:fixed;top:0px;right:5px;z-index:999999;-webkit-transition:0.1s ease-in-out;-moz-transition:0.1s ease-in-out;-o-transition:0.1s ease-in-out;transition:0.1s ease-in-out;cursor:pointer}
#menu_btn span{display:block;background:var(--theme-blue);width:20px;height:2px;position:absolute;left:13px;transition:all 0.1s;-webkit-transition:all 0.1s;-moz-transition:all 0.1s}
#menu_btn span:first-child{top:16px}
#menu_btn span:nth-child(2){margin-top:-2px;top:50%}
#menu_btn span:last-child{bottom:17px}
#menu_btn.active{position:fixed}
#menu_btn.active span:first-child{-webkit-transform:translateY(6px) rotate(45deg);-moz-transform:translateY(6px) rotate(45deg);-ms-transform:translateY(6px) rotate(45deg);transform:translateY(6px) rotate(45deg);top:17px}
#menu_btn.active span:nth-child(2){opacity:0}
#menu_btn.active span:last-child{-webkit-transform:translateY(-8px) rotate(-45deg);-moz-transform:translateY(-8px) rotate(-45deg);-ms-transform:translateY(-8px) rotate(-45deg);transform:translateY(-8px) rotate(-45deg)}
#overlay{display:block;width:0;height:0;background-color:rgba(0,0,0,0.8);position:absolute;top:0;left:0;z-index:9999;opacity:0;transition:opacity .5s}
#overlay.active{width:100%;height:100%;opacity:1;-ms-filter:blur(6px);filter:blur(6px)}
@media screen and (max-width:768px){#menu_btn{display:block}
}

/*********** コンテンツ設定 ***********/
#contents{padding-bottom:400px}
#mv img{width:100%}
@media screen and (max-width:768px){#mv{padding-top:57px}
}
#media{padding-top:7.28260869565217%}
.mail_wrap01{display:flex;gap:15px;padding-top:15px}

/*********** footer設定 ***********/

#page_top{display:block;position:fixed;bottom:10px;right:0;width:50px;height:50px;font-size:30px;z-index: 100}
#page_top a{display:block;width:100%;height:100%;text-align:center;line-height:50px;color:#fff;background:var(--main-color)}
#page_top a:hover{background:var(--theme-blue)}
@media screen and (max-width:768px){
#page_top{display:block;position:fixed;bottom:100px;right:0;width:50px;height:50px;font-size:30px}
}
footer{width:100%;position:absolute;bottom:0;border-top:4px solid var(--main-color);padding:20px 20px 74px;box-sizing:border-box;background:#fff}
#f_menu a{color:var(--main-color);text-decoration:none;font-weight:bold;margin:0 10px}
#f_logo{padding:20px 20px 10px}
#f_logo img{max-width: 362px}
.f_address{margin-bottom:20px}
.f_copy{font-size:80%;border-top:1px solid #ddd;padding:2em 0}
#f_btn{display:flex;justify-content:center;gap:8px;padding:10px 10px;background-size: auto auto;
background-color: rgba(255, 255, 255, 0.35);
background-image: repeating-linear-gradient(45deg, transparent, transparent 5px, rgba(0, 204, 153, 0.24) 5px, rgba(0, 204, 153, 0.24) 10px );;position:fixed;bottom:0;left:0;width:100%;box-sizing:border-box}

/*********** トラック設定 ***********/
#track_title{background:url(/img/track.png) right center/contain no-repeat}
#track_title img{width: 100%}
#track_ul{display:flex;flex-wrap:wrap;justify-content:center;gap:10px;list-style:none}
#track_ul li{width:calc(50% - 5px);box-sizing:border-box}
@media screen and (max-width:960px){.track_sub{font-size:105%}
}
@media screen and (max-width:768px){#track_title{text-align:center;background:url(/img/track.png) center bottom/110px no-repeat;}
}
@media screen and (max-width:640px){#track_ul li{width:80%}
}
/*********** 人気設定 ***********/

#ninki_title_wrap{}
#ninki_title_wrap p{background:var(--theme-blue);color:#fff;align-self:flex-start;padding:25px 20px 30px;line-height:1}
#ninki_title_wrap h2 img{width: 100%}
#komi_ul{list-style:none;display:flex;background:#f3f3f3;justify-content:center;align-items:center;gap:15px;border-radius:40px;padding:40px 20px;text-align:center;color:var(--main-color);font-size:120%;font-weight:bold}
#komi_ul figure{margin-bottom:10px}
@media screen and (max-width:900px){
#ninki_title_wrap{flex-direction:column}
#ninki_title_wrap p{padding:10px 20px 15px}
}
@media screen and (max-width:768px){
#komi_ul{flex-wrap:wrap}
#komi_ul li{width:calc(100% / 3 - 10px)}
}
@media screen and (max-width:640px){
#ninki_title_wrap{text-align:center}
#ninki_title_wrap p{padding:10px 20px 15px;align-self:center}
}
/*********** 悪質設定 ***********/

#akusitsu{position:relative}
#akusitsu:before{content:'';background:url(/img/caution.png) 0 0 no-repeat;display:inline-block;width:28px;height:26px;vertical-align:middle;margin-right:8px}
#akusitsu:after{content:'';background:url(/img/caution.png) 0 0 no-repeat;display:inline-block;width:28px;height:26px;vertical-align:middle;margin-left:8px}
#point:before{content:'';background:url(/img/point.webp) center center/contain no-repeat;display:inline-block;width:168px;height:54px;vertical-align:middle;margin-right:15px}
.point_dl{display:flex}
.point_dl dt{padding:20px;background:var(--theme-blue);border-radius:20px 0 0 20px;width:144px;display:flex;align-items:center}
.point_dl dd{padding:20px;background:#fff;border-radius:0 20px 20px 0;width:calc(100% - 184px);line-height:1.5;font-size:130%}
@media screen and (max-width:768px){
#point:before{width:84px;height:27px}
}
@media screen and (max-width:640px){
#point:before{width:100%;margin-right:0}
.point_dl{flex-direction:column}
.point_dl dt{border-radius:20px 20px 0 0;box-sizing:border-box;width:100%;justify-content:center}
.point_dl dd{border-radius:0 0 20px 20px;box-sizing:border-box;width:100%;font-size:100%}
}

/*********** チェック設定 ***********/

#check{background:#f3f3f3}
#check h2{font-size: clamp(1.5rem, 1rem + 2.5vw, 2.875rem);font-weight: 700}
#check>div{padding-bottom:0}
#check_ul{padding-bottom:80px;background:url(../img/check_bg.webp) right bottom/38% no-repeat}
#check_ul li{list-style:none;background:url("../img/check_box.svg") 0 0 no-repeat;min-height:32px;padding-left:50px;line-height:1.5;font-size:150%;font-weight:bold;margin-bottom:0.8em;text-shadow:1px 1px 0 #fff,-1px 1px 0 #fff,1px -1px 0 #fff,-1px -1px 0 #fff;}
@media screen and (max-width:768px){
#check_ul{padding-bottom:50px;background:url(../img/check_bg.webp) right bottom/175px no-repeat}
#check_ul li{background:url(../img/check_box.svg) 0 0/24px no-repeat;min-height:26px;padding-left:30px;font-size:110%}
}

/*********** 解消設定 ***********/

/*#kaishou{background:url(/img/kaishou.png) right 20px/192px no-repeat}*/
#kaishou_ul{display:flex;flex-wrap:wrap;gap:20px 10px;list-style:none}
#kaishou_ul li{width:calc(25% - 30px /4)}
.kaishou_img{border:2px solid var(--main-color);margin-bottom:10px}
.kaishou_img img{border:2px solid #fff;width:calc(100% - 4px)}
.kaishou_name{font-weight:bold;text-align:center}
@media screen and (max-width:768px){
.arrow img{width:84px;padding:20px 0}
/*#kaishou{background:url(/img/kaishou.png) 95% 20px/23% no-repeat}*/
#kaishou_ul li{width:calc(50% - 5px)}
}

/*********** スライド設定 ***********/

#slide_wrap{width:100%;overflow:hidden}
.slide-container{width:5328px;margin:50px auto 0;display:flex;align-items:center;overflow:hidden}
.slide-wrapper{display:flex;animation:slide-flow 20s infinite linear 1s both;width:920px}
@keyframes slide-flow{0%{transform:translateX(0)}
100%{transform:translateX(-100%)}
}
/*********** スピード到着設定 ***********/

#speed:after{content:'';display:inline-block;background:url(/img/speed.png) 0 0/cover no-repeat;width:136px;height:66px;vertical-align:middle;margin-left:10px}
#bn_wrap{display:flex;justify-content:center;gap:15px}
@media screen and (max-width:640px){
#speed:after{background:url(/img/speed.png) center center/68px no-repeat;width:100%;margin-left:0}
}
/*********** コロナ設定 ***********/

#korona_ul{display:flex;flex-wrap:wrap;gap:20px 10px;list-style:none;justify-content:center;text-align:center}
#korona_ul li{width:calc(25% - 30px /4);padding:10px;background:#fff;border-radius:10px;box-sizing:border-box}
.korona_img{margin-bottom:10px;width:100%}

/*********** 理由設定 ***********/

#riyu_bg{background:#d4fff4}
.riyu_dl dt{display:flex;font-weight:bold;padding-bottom:2px;border-bottom:2px solid var(--main-color);align-items:flex-end}
.riyu_no{background:var(--main-color);color:#fff;font-size:200%;padding:0px 55px 0px 20px;position:relative;height:65px;box-sizing:border-box;}
.riyu_no span{font-size:140%}
.riyu_no:after{content:'';display:block;width:0;height:0;border-style:solid;border-width:66px 0 0 35px;border-color:#fff transparent transparent transparent;position:absolute;right:0;top:0}
.riyu_title{width:calc(100% - 200px);padding:10px 0 10px 10px;box-sizing:border-box;font-size:160%;min-height:65px;box-sizing:border-box;line-height:1.2}
.riyu_title b{font-size:140%;color:var(--main-color)}
.riyu_dl dd{display:flex;font-weight:bold;padding:20px 0 40px;align-items:center;gap:20px}
.riyu_img{width:26.6%}
.riyu_text{width:calc(100% - 26.6% - 20px);font-size:110%}
@media screen and (max-width:768px){
.riyu_dl dt{flex-direction:column;align-items:flex-start;}
.riyu_no{font-size:150%;height:54px}
.riyu_no:after{border-width:54px 0 0 35px}
.riyu_title{width:100%;padding:10px 0;font-size:120%;min-height:auto}
.riyu_text{font-size:100%}
}
@media screen and (max-width:640px){
.riyu_dl dd{flex-wrap:wrap}
.riyu_img{width:100%;text-align:center}
.riyu_img img{width:80%;max-width:245px}
.riyu_text{width:100%}
}

/*********** 声設定 ***********/

.koe_img{display:flex;gap:47px;align-items:center;justify-content:center;background:url(/img/right.png) center center/37px no-repeat;margin-bottom:50px}
.koe_dl{background:#fff;border-radius:20px;padding:50px 20px 30px;line-height:1.5;font-weight:bold;font-size:110%;position:relative;margin-bottom:40px}
.koe_dl dt{background:var(--theme-blue);color:#fff;border-radius:50px;padding:10px 20px;font-size:110%;position:absolute;top:-20px;left:20px}
@media screen and (max-width:640px){
.koe_img{gap:26px;align-items:center;justify-content:center;background:url(/img/right.png) center center/16px no-repeat}
.koe_dl{font-size:100%}
}

/*********** エリア設定 ***********/

.area_dl dt{background:var(--theme-blue);color:#fff;font-size:120%;font-weight:bold;padding:10px;position:relative;margin-bottom:2px;cursor:pointer}
.area_dl dt.active:after{content:'\f077'}
.area_dl dt i{margin-right:10px}
.area_dl dd{line-height:1.5;padding:10px 10px 20px}
.area_dl dd p{margin-bottom: 0.5em}
/*********** FAQ設定 ***********/
.faq_dl{ padding-top:30px;}
.faq_dl dt{background:var(--theme-blue);color:#fff;font-size:110%;border-radius:10px;font-weight:bold;padding:10px 20px 10px 15px;position:relative;cursor:pointer;line-height:1.5;margin-bottom:10px}
.faq_dl dt:after{content:'\f078';font-family:'Font Awesome 6 Free';position:absolute;right:15px}
.faq_dl dt.active:after{content:'\f077'}
.faq_dl dt i{margin-right:10px}
.faq_dl dd{background:#fff;border-radius:10px;line-height:1.5;padding:10px 15px 10px 15px;margin-bottom:10px;display:none;font-weight:bold}
.faq_a_wrap{display:flex;gap:10px}


/*********** form設定 ***********/
#form_bg{background:url(/img/form_bg.webp) center center/cover no-repeat;padding:30px}
#form_tb{table-layout:fixed;width:100%;line-height:1.2}
#form_tb th{font-size:110%;color:var(--main-color);text-align:left;width:250px}
#form_tb th span{display:inline-block;font-size:90%;color:#fff;background:var(--theme-red);padding:5px 10px;margin-left:10px;float:right}
#form_tb td{padding:0 0 20px 30px;font-size:110%}
#form_tb select{border:1px solid #d1d1d1;padding:0 5px;height:40px;font-size:110%}
#form_tb input[type="email"],#form_tb input[type="tel"]{border:1px solid #d1d1d1;padding:0 5px;height:40px;width:300px;font-size:110%;max-width:100%}
#form_tb label{font-size:110%;line-height:1.5}
#form_tb input[type="radio"]{margin-right:5px}
#form_tb textarea{border:1px solid #d1d1d1;padding:0 5px;height:40px;width:300px;font-size:110%;width:100%;max-width:100%;min-width:100%;min-height:150px;box-sizing:border-box}
.form_btn{background:var(--main-color);color:#fff;border:0;font-size:110%;padding:0 40px;height:50px}
@media screen and (max-width:768px){
#form_tb,#form_tb tr,#form_tb th,#form_tb td{display:block;width:100%;padding:10px 0}
}

/*********** BG設定 ***********/
.bg1{
    background:rgba( 0, 150, 220,0.25);/*ライトブルー*/
}
.bg2{
    background: #f3f3f3;/*グレー*/
}
.bg3{
     background: var(--theme-blue);/*ライトブルー*/
}


/*********** text設定 ***********/
.text1{
    line-height:1.5;
}


/*********** title設定 ***********/
.title1_sub{
    line-height:1.5;
    font-weight: bold;
    font-size:150%;
    display: block;
}
.title1{
    line-height:1.5;
    font-weight: bold;
    font-size:280%;
    display: block;
}
.title1_s{
    font-size:90%;
}
.title1_ss{
    font-size:70%;
}
.title1_strong{
    display: inline-block;
    background:var(--theme-blue); 
    color:#fff;
    padding:0 20px;
}

@media screen and (max-width:768px){
    .title1_sub{
        font-size:120%;
    }
    .title1{
        font-size:200%;
    }
}


/*********** box設定 ***********/
.box1{
    padding:20px;
    background: #fff;
}


/*********** size設定 ***********/
.size1{
    font-size:210%;
}
.size2{
    font-size:110%;
}
.size3{
    font-size:90%;
}

@media screen and (max-width:960px){
    .size1{
        font-size:150%;
    }
}
h2 span.ttl{font-size: clamp(1.5rem, 1rem + 2.5vw, 2.875rem);font-weight: 800;color:var(--theme-blue);}


/*********** size設定 ***********/
.color1{
    color:var(--theme-blue);
}
.color2{
    color:var(--theme-blue);
}
.color3{
    color:var(--theme-orange);
}
.color4{
    color:#fff;/*白*/
}


/*********** 余白設定 ***********/
.mgb15{
    margin-bottom:15px;
}
.mgb20{
    margin-bottom:20px;
}
.mgb30{
    margin-bottom:30px;
}
.mgb1{
    margin-bottom:50px;
}

.pdtb1{
    padding-top:60px;
    padding-bottom:60px;
}
.pdt1{
    padding-top:60px;
}
.pdb1{
    padding-bottom:60px;
}
.pdlr10{
    padding-left:10px;
    padding-right:10px;
}
.pdlr1{
    padding-left:6.3%;
    padding-right:6.3%;
}


@media screen and (max-width:960px){
    .mgb1{
        margin-bottom:5%;
    }
    .pdtb1{
        padding-top:6.3%;
        padding-bottom:6.3%;
    }
}


/*********** 長さ設定 ***********/
.mxw60{
    max-width:60%;
}


/*********** レスポンシブル設定 ***********/
.sp_inline{
    display:none;
}
/*===============================================
●smart.css  画面の横幅が768pxまで
===============================================*/
@media screen and (max-width:768px){
    .sp_none{
        display: none !important;
    }
    .sp_inline{
        display:inline;
    }
}
/*===============================================
スライダー全体 
===============================================*/
.slider-wrapper {
  display: flex; /* スライドのグループを横並び */
  overflow: hidden; /* はみ出たスライドを隠す */
}
/* スライド3枚のグループ */
.slider {
  animation: scroll-left 20s infinite linear .5s both;
  display: flex; /* スライド3枚を横並び */
    list-style: none
}
/* スライド */
.slide {
  width: calc(100vw / 4); /* 4はスライドの枚数 */
     list-style: none
}
/* スライドの画像 */
.slide img {
  display: block;
  width: 100%;
}
/* CSSアニメーション */
@keyframes scroll-left {
  from {
    transform: translateX(0);
  }
  to {
    transform: translateX(-100%);
  }
}
