@charset "utf-8";

:root {
	--main-color: #009aef;
	--main-color-op:rgba(0, 154, 239,0.3);
	--sub-color: #D2FAFC;
	--red:#fa0213;
	--Line-color:#06C755;
	--light-blue:#1ed6dd;
	--light-blue-op:rgba(30, 214, 221,0.15);
	--light-pink:#ff0066;
	--light-pink-op:rgba(255, 0, 102,0.15);
	--sky-blue:#166fe8;
	--sky-blue-op:rgba(22, 111, 232,0.15);
	--light-green:#12bd62;
	--light-green-op:rgba(18, 189, 98,0.15);
	--light-gray:#f7f7f7;
	--box-shadow: 0px 0px 10px -5px rgba(0, 0, 0, 0.35);
	--text-shadow: 1px 1px 5px rgba(0, 0, 0, 0.35);
	--text-shadow-white: 3px 3px 3px #fff, -3px -3px 3px #fff,-3px 3px 3px #fff,  3px -3px 3px #fff,3px 0 3px #fff, -3px  0 3px #fff,0 3px 3px #fff,  0 -3px 3px #fff;
	--text-shadow-grey: 3px 3px 0px rgba(0, 0, 0, 0.3);
	--gradient-green:linear-gradient(0deg, rgba(6, 199, 85, 1) 10%, rgba(7, 218, 36, 1) 50%, rgba(72, 247, 115, 1) 51%, rgba(6, 199, 85, 1) 90%);
	--gradient-blue:linear-gradient(0deg, rgba(2, 160, 250, 1) 10%, rgba(9, 159, 218, 1) 50%, rgba(66, 197, 255, 1) 51%, rgba(2, 160, 250, 1) 90%);
	--gradient-red: linear-gradient(0deg, rgba(250, 2, 19, 1) 10%, rgba(218, 56, 9, 1) 50%, rgba(255, 87, 66, 1) 51%, rgba(250, 2, 19, 1) 90%);
	--en: "Montserrat", sans-serif;
	--color-gray: #ddd;
	--easing: cubic-bezier(.2, 1, .2, 1);
    --transition: .8s var(--easing);
    --box-shadow-hover: 1rem 1rem 1.5rem rgba(0, 0, 0, .08), -1rem -1rem 1.5rem #fff;
    --box-shadow-inset: inset .8rem .8rem 1.2rem rgba(0, 0, 0, .05), inset -.8rem -.8rem 1.2rem #fff;
    --box-shadow-dark: .8rem .8rem 1.2rem rgba(0, 0, 0, .1), -.8rem -.8rem 1.2rem rgba(#fff,.2);
}

*{box-sizing: border-box;margin: 0; padding: 0;outline: 0}
*, ::before, ::after {
    background-repeat: no-repeat;
    zoom: 1;
}
html {height: 100%;font-size: 100%;}
body {height: 100%;width: 100%;font-size: 16px;line-height:1.6;color: #020202;font-family: "Noto Sans JP", sans-serif;font-weight: 500;}
ul,li{list-style: none}
input, textarea {font-family: 'Noto Sans JP', sans-serif;}
a { overflow: hidden;text-decoration: none;color:inherit;}
input[type=button],input[type=submit] {-webkit-appearance: none; -webkit-appearance: none; border-radius: 0;cursor:pointer}
img {max-width: 100%; height: auto; width: auto}
.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}
.en{font-family: var(--en);font-weight: 700}
.en_b{font-family: var(--en);font-weight: 700}
.small{font-size: 80%}
.normal{font-weight:400}
.bold{font-weight:700}
.bright{-webkit-transition:.1s ease-in-out;-moz-transition:.1s ease-in-out;-o-transition:.1s ease-in-out;transition:.1s ease-in-out}
.bright:hover{filter:brightness(80%)}
.sp_inline{display:none}
.pc_none{display:none !important}
.border01{border:3px solid var(--main-color);border-radius: 10px;padding: 1em}
.border02{border: 10px solid #fff}
.shadow{box-shadow:var(--box-shadow)}
@media screen and (max-width:768px){
.sp_none{display:none !important}
.pc_none{display:block !important}
.sp_inline{display:inline}
}
.mg-auto{margin: 0 auto}
.mgb15{margin-bottom:15px!important}
.mgb20{margin-bottom:20px!important}
.mgb30{margin-bottom:30px!important}
.mgb1{margin-bottom:50px!important}
.pdtb1{padding-top:60px!important;padding-bottom:60px!important}
.pdt1{padding-top:60px!important}
.pdb1{padding-bottom:60px!important}
.pdlr10{padding-left:10px!important;padding-right:10px!important}
.pdlr1{padding-left:6.3%!important;padding-right:6.3%!important}
@media screen and (max-width:960px){
.size1{font-size:150%!important}
.mgb1{margin-bottom:5%!important}
.pdtb1{padding-top:6.3%!important;padding-bottom:6.3%!important}
.pdt1{padding-top:6.3%!important}
.pdb1{padding-bottom:6.3%!important}
}
@media screen and (max-width:480px){

.mgb30{margin-bottom:15px!important}
}
.box1 {padding: 20px;background: #fff;}
.red{color: var(--red)}
.blue{color: var(--main-color);text-shadow: var(--text-shadow-white);font-size: clamp(1.125rem, 0.943rem + 0.91vw, 1.625rem);}
.radius_blue{display: inline-block;line-height: 1.5;padding: 0.5rem 1rem;text-align: center;
  vertical-align: middle;color: #fff;background: var(--main-color);border-radius: 100vh;font-size: clamp(1.125rem, 0.943rem + 0.91vw, 1.625rem);}
/*ギザギザ*/
.giza_green{background:#e0ffe6;}
.giza_green:before{content:"";display:block;background:linear-gradient(135deg,#fff 15px,transparent 0%) 0 15px,linear-gradient(-135deg,#fff 15px,#e0ffe6 0%) 0 15px;background-repeat:repeat-x;background-position:left bottom;background-size:30px 30px;height:30px}
.giza_green:after{content:"";display:block;background:linear-gradient(45deg,#fff 15px,transparent 0%) 0 15px,linear-gradient(-45deg,#fff 15px,#e0ffe6 0%) 0 15px;background-repeat:repeat-x;background-position:left bottom;background-size:30px 30px;height:30px}
.giza_grey{background: var(--light-gray);}
.giza_grey:before{content:"";display:block;background:linear-gradient(135deg,#fff 15px,transparent 0%) 0 15px,linear-gradient(-135deg,#fff 15px, var(--light-gray) 0%) 0 15px;background-repeat:repeat-x;background-position:left bottom;background-size:30px 30px;height:30px}
.giza_grey:after{content:"";display:block;background:linear-gradient(45deg,#fff 15px,transparent 0%) 0 15px,linear-gradient(-45deg,#fff 15px, var(--light-gray) 0%) 0 15px;background-repeat:repeat-x;background-position:left bottom;background-size:30px 30px;height:30px}
.giza_blue{background: var(--sub-color);}
.giza_blue:before{content:"";display:block;background:linear-gradient(135deg,#fff 15px,transparent 0%) 0 15px,linear-gradient(-135deg,#fff 15px,var(--sub-color) 0%) 0 15px;background-repeat:repeat-x;background-position:left bottom;background-size:30px 30px;height:30px}
.giza_blue:after{content:"";display:block;background:linear-gradient(45deg,#fff 15px,transparent 0%) 0 15px,linear-gradient(-45deg,#fff 15px,var(--sub-color) 0%) 0 15px;background-repeat:repeat-x;background-position:left bottom;background-size:30px 30px;height:30px}

.flex_type01{display: flex;flex-direction: row-reverse}
@media screen and (max-width:480px) {
.flex_type01{flex-direction:column;}
}

h2.arrow01 {display:flex;justify-content:center;flex-direction:column;align-items: center; box-sizing:border-box;margin:0 auto 1em;font-size:clamp(1.25rem, 0.841rem + 2.05vw, 2.375rem);font-weight: 800;color:var(--main-color)}
h2.arrow01 span{position:relative;padding:0 0.5em;padding-bottom:.25em;border-bottom:5px solid;text-align:center;text-shadow: var(--text-shadow-white);line-height: 1.35 }
h2.arrow01 span:before, h2.arrow01 span:after{position:absolute;top:100%;left:50%;content:"";height:0;width:0}
h2.arrow01 span:before{border:16px solid;border-color:transparent;border-top-color:var(--main-color);margin-left:-16px}
h2.arrow01 span:after{border:10px solid;border-color:transparent;border-top-color:#fff;margin-left:-10px}
@media screen and (max-width:480px) {
h2.arrow01 span{padding-bottom: 0.25em}}
/*-----------------------------------*/
h2.arrow02 {display:flex;justify-content:center;flex-direction:column;align-items: center; box-sizing:border-box;margin:0 auto 1em;font-size:clamp(1.25rem, 0.841rem + 2.05vw, 2.375rem);font-weight: 800;color:var(--light-green)}
h2.arrow02 span{position:relative;padding:0 0.5em;padding-bottom:.25em;border-bottom:5px solid;text-align:center;text-shadow: var(--text-shadow-white);line-height: 1.35 }
h2.arrow02 span:before, h2.arrow02 span:after{position:absolute;top:100%;left:50%;content:"";height:0;width:0}
h2.arrow02 span:before{border:16px solid;border-color:transparent;border-top-color:var(--light-green);margin-left:-16px}
h2.arrow02 span:after{border:10px solid;border-color:transparent;border-top-color:#fff;margin-left:-10px}
@media screen and (max-width:480px) {
h2.arrow02 span{padding-bottom: 0.25em}}
/*-----------------------------------*/
h3.both_ends{display: flex;justify-content: center;align-items: center;text-align: center;font-size:clamp(1.25rem, 0.841rem + 2.05vw, 2.375rem);font-weight: 800;line-height: 1.2;margin: 1em 0;overflow-y:hidden;}
h3.both_ends::before,h3.both_ends::after{content: "";background-color: var(--main-color); height: 5px; width: 2.8em;}
h3.both_ends::before {margin-right:-10px;transform: rotate(60deg); }
h3.both_ends::after { margin-left:-10px;transform: rotate(-60deg); }
/*-----------------------------------*/
#wrapper{width:100%;position:relative;min-height:100%}

/*HEADER↓*/
header{padding:10px 20px;display:flex;justify-content:space-between;align-items:center;box-sizing:border-box}
#header_btn{display:flex;gap:15px;align-items:center;justify-content:center;}
#header_btn a{text-decoration:none;display:block;color:#fff}
#head_mail{background:var(--gradient-blue);;padding:15px 1em}
#head_mail,#head_line{text-shadow: var(--text-shadow)}
#head_line{background:var(--gradient-green);padding:15px 1em}
#head_tel,#head_line,#head_mail,.shiny{overflow:hidden;transition:.3s;position:relative;display:block}
#head_tel:before,#head_line:before,#head_mail:before,.shiny:before{position:absolute;content:'';display:inline-block;top:-180px;left:0;width:30px;height:100%;background-color:#b5e7ff;transition:.3s;animation:2.5s ease-in-out infinite shinyshiny}
@-webkit-keyframes shinyshiny{0%{-webkit-transform:scale(0) rotate(45deg);opacity:0}
80%{-webkit-transform:scale(0) rotate(45deg);opacity:.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{background: var(--gradient-red);padding: 5px 1em 0;display: flex;flex-direction: column}
#head_tel p{background:#fff;color:var(--red);font-size:12px;text-align:center;}
#head_tel a{color:#fff;text-shadow: var(--text-shadow);font-size:120%;display: flex;align-items: center;font-family: "Montserrat", sans-serif;font-weight: 600;}
#head_tel img{width:22.4px;heigh:auto;margin-right:5px}
#header_logo img{height:60px}
@media screen and (max-width:1020px){
#header_logo{width:35%}
#header_logo img{height:60px}
}
@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{position:fixed;top:0;left:0;width:100%;border-bottom:2px solid var(--main-color);background:#fff;z-index:9999}
#header_logo{text-align:center}
#header_logo img{height:35px}

	
}
@media screen and (max-width:640px){#header_btn{flex-wrap:wrap;gap:10px}
#head_line_wrap,#head_mail_wrap{width:calc(50% - 5px);text-align:center}
#head_line,#head_mail{font-size:3.2vw}
#head_tel{width:100%;text-align:center}
}
nav{border-bottom:2px solid var(--main-color)}
#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(--main-color)}
#nav_ul li:first-of-type{border-left:1px solid var(--main-color)}
#nav_ul a{display:block;text-align:center;padding:1em 0;text-decoration:none;color:#000;font-weight:700;-webkit-transition:.1s ease-in-out;-moz-transition:.1s ease-in-out;-o-transition:.1s ease-in-out;transition:.1s ease-in-out}
#nav_ul a:hover{color:var(--main-color)}
#nav_ul i{color:var(--main-color);margin-right:5px}
#nav_ul_sp{list-style:none;display:none}
#nav_ul_sp li{width:100%;border-bottom:1px solid #eee}
#nav_ul_sp li:last-child{border-bottom:none}
#nav_ul_sp a{display:block;text-align:center;padding:1em 0;text-decoration:none;color:#fff;font-weight:700;-webkit-transition:.1s ease-in-out;-moz-transition:.1s ease-in-out;-o-transition:.1s ease-in-out;transition:.1s ease-in-out;font-size:120%;background:var(--main-color)}
#nav_ul_sp i{margin-right:5px}
#menu_btn{display:none;width:45px;height:50px;position:fixed;top:3px;right:5px;z-index:999999;-webkit-transition:.1s ease-in-out;-moz-transition:.1s ease-in-out;-o-transition:.1s ease-in-out;transition:.1s ease-in-out}
#menu_btn span{display:block;background:var(--main-color);width:25px;height:2px;position:absolute;left:10px;transition:.1s;-webkit-transition:.1s;-moz-transition:.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)}
@media screen and (max-width:768px) {
#menu_btn{display:block!important}
nav{position:fixed;width:100%;top:57px;left:0;background:#fff;z-index:9999}
}
#overlay{display:block;width:0;height:0;background-color:rgba(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)}
/*HEADER↑*/
/*MAIN↓*/
#container {padding-bottom: 335px}
section{position: relative;font-feature-settings: "palt" 1;}
.inner{max-width: 920px;padding: 0 10px;margin: 0 auto;}
.inner_wide{max-width: 1200px; padding: 0 10px;margin: 0 auto}
/*-------------------------*/
#kv img {width: 100%}
@media screen and (max-width:768px) {
#kv{padding-top:57px}
}
section.bg1{padding: 50px 0}
@media screen and (max-width:768px) {
section.bg1{padding: 30px 0}	
}
a.mail_btn{transition: all 0.3s;}

.bg1 {
 background:url("../img/shutter_bg.jpg")repeat;
}
.kv_bot{display: flex;justify-content: space-between;align-items: center;}
.border01,
.tel_banner{width: calc(50% - 0.5em);text-align: center;}
.border01{background: #fff;}
.border01 p:first-child{font-size: 2rem;font-weight: 800;}
.border01 p:last-child{font-weight: 800;}
.tel_banner{}
.tel_banner p:first-child{background: var(--sub-color);font-weight: 800;padding: 0.3em 0;}
.tel_banner p:last-child{background: var(--main-color);color:#fff;font-size: 2.2rem;font-weight: 800;letter-spacing: 0.05em;padding: 0.3em 0;}
.tel_banner p i{font-weight:900;margin-right: 5px;font-size: 90%;}
@media screen and (max-width:768px) {
.kv_bot{flex-direction: column; justify-content: center;}
.kv_bot .border01{margin-bottom:1em; }
.border01,.tel_banner{width: 100%}
}
section{position: relative}
/*----------------
ペストコントロール
-----------------*/
#pest.giza_green:after{content:"";display:block;background:linear-gradient(45deg, var(--light-gray)15px,transparent 0%) 0 15px,linear-gradient(-45deg, var(--light-gray) 15px,#e0ffe6 0%) 0 15px;background-repeat:repeat-x;background-position:left bottom;background-size:30px 30px;height:30px}
#pest .flex_type01{padding: 15px 0 0;justify-content: space-between;background: #fff}
#pest .flex_type01 p{padding: 15px;width:60%;background: rgba(255,255,255,1);border-radius: 10px}
#pest .flex_type01 picture{width: 40%;padding: 15px;}
@media screen and (max-width:480px) {
#pest .flex_type01 p{width: 100%;padding: 0 15px}
#pest .flex_type01 picture{width: 100%;padding: 0 15px 15px;}
}
/*----------------
チェックポイント
-----------------*/
#check{position: relative}
#check.giza_grey{z-index: -2}
#check.giza_grey:before{content:none;}
#check h2.arrow01 span:after {
    border: 10px solid;
    border-color: transparent;
    border-top-color:  var(--light-gray);
    margin-left: -10px;
}
#check .inner{position: relative;}
#check .ta_c,#check h2.arrow01{z-index: 10;position: relative;}
#check .flex_type01{z-index: 0}
#check .flex_type01 picture{z-index: 0}
#check .flex_type01{padding: 15px 0;justify-content: space-between;align-items: center}
#check .flex_type01 ul{padding: 0;width:68%;}
#check .flex_type01 picture{width: 32%}
#check_ul{}
#check_ul li{list-style:none;font-size:clamp(1.125rem, 0.943rem + 0.91vw, 1.625rem);font-weight:700;margin-bottom:.5em;line-height: 1.35}
#check_ul li{position: relative;padding-left: 1.75em}
#check_ul li:before{content:"";background:url(../img/check.svg) no-repeat; width:1.5em;
height:1.5em;background-size: contain; position: absolute;left: 0;top:10%;}
#check .flex_type01:last-child{align-items: flex-end;position: relative;padding-bottom: 0}
#check .flex_type01:last-child::before{content: "";background: var(--main-color);width: 100%; height: 240px;position: absolute; bottom:0;left: 0;z-index: 1}
#check .flex_type01 p{width:calc(60% - 15px);padding: 0 15px 15px 0;font-size:clamp(1.125rem, 0.943rem + 0.91vw, 1.625rem);font-weight:700;color:#fff;z-index: 2}
#check .flex_type01 picture:nth-child(2){width: 40%;z-index: 2}
#check .radius_blue{margin-bottom: 1em;}
#check .blue{font-weight:800;margin-bottom: 1em;}
@media screen and (max-width:768px) {
	#check .flex_type01:last-child::before{height: 210px}
}
@media screen and (max-width:480px) {
#check .flex_type01{padding: 0 0 15px;}
#check .flex_type01 ul{width: 100%;margin-bottom: 15px;text-shadow: var(--text-shadow-white)}
#check .flex_type01 picture{width: 100%;position: relative; }
#check .flex_type01 picture img{position: absolute;width: 30%;right: 0;bottom:0; margin-bottom: 35px}
#check_ul li:before{top:0%;}
#check .flex_type01:last-child{flex-direction: column-reverse;margin-top: 50px}
#check .flex_type01:last-child::before{content:none;}
#check .flex_type01:last-child picture{width: 100%;position: relative;z-index: -1 }
#check .flex_type01:last-child picture img{position: absolute;width: 40%;right: 0;bottom: -50px; margin-bottom: 0px}
#check .flex_type01 p{width: 100%;padding: 15px;background:  var(--main-color);}
#check .blue{margin-bottom: 0.5em;}
}

/*----------------
feature
-----------------*/
ul.feature{display: grid;gap: 25px;grid-template-columns: repeat(3, minmax(200px, 1fr)); }
ul.feature li img{width:100%}
@media screen and (max-width:480px) {
	ul.feature{gap: 10px;grid-template-columns: repeat(2, minmax(180px, 1fr));}
}
/*----------------
strength
-----------------*/
#strength .blue{text-align: center;font-weight: 800;font-size: clamp(1.125rem, 0.989rem + 0.68vw, 1.5rem)}
/*----------------
point
-----------------*/
#point.giza_blue{z-index: -2}
#point h5{position:relative;overflow:hidden;padding:1.5rem 2rem 1.5rem 130px;border-bottom:3px solid var(--main-color)}
#point h5:before{position:absolute;top:-150%;left:-100px;width:300px;height:300%;content:'';-webkit-transform:rotate(225deg);transform:rotate(225deg);background:var(--main-color)}
#point h5 > span{font-size:clamp(1.125rem, 0.852rem + 1.36vw, 1.875rem);position:absolute;z-index:1;top:50%;transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);left:0;display:inline-block;padding-left:16px;color:#fff;text-shadow: var(--text-shadow-grey)}
#point h5 .en{font-family: var(--en)}
@media screen and (max-width:480px) {
#point h5{padding:1.15rem 2rem 1.15rem 130px;}
#point h5:before{left:-130px;}	
}
#point dd{display: flex;justify-content: space-between;align-items: center;padding: 50px 0}
#point dd .text_box{width: 50%}
#point dd .image_box{width:calc(50% - 25px); position: relative;}
#point dd .image_box::before {
    content: '';
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    background-color:var(--main-color-op);
    transform: rotate(-6deg);
    z-index: -1;
}
#point dd h6{padding:3px 10px;background: #fff;font-size:clamp(1.125rem, 0.989rem + 0.68vw, 1.5rem);display: inline-flex;margin-bottom: 15px}
@media screen and (max-width:480px) {
#point dd{display: flex;flex-direction: column;padding: 25px 0 50px}
#point dd .text_box{display: flex;flex-direction: column;width: 100%;margin-bottom: 25px}
#point dd .text_box p{ padding: 0 10px}
#point dd .image_box{width: 90%}
}



.map{position:relative;width:100%;height:0;padding-bottom: 56.25%;}
.map iframe{position:absolute;top:0;left:0;width:100%;height:100%}
p.map_text{text-align: center;font-size: clamp(1.125rem, 0.716rem + 2.05vw, 2.25rem); }
/*----------------
area
-----------------*/
#area{}
.area_dl dt{background:var(--main-color);color:#fff;font-size:clamp(1.125rem, 1.034rem + 0.45vw, 1.375rem);font-weight:600;padding:10px;position:relative;margin-bottom:2px;cursor:pointer}
.area_dl dt:after{content:'\f078';font-family:'Font Awesome 6 Free';position:absolute;right:10px}
.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;display:none;font-size: clamp(1rem, 0.909rem + 0.45vw, 1.25rem)}
/*----------------
COVID
-----------------*/
#covid h2.arrow01 span:after{border-top-color:var(--light-gray)}
#covid p {font-weight: 800; margin-bottom: 1em; font-size: 120%;}
#covid ul{display: grid;gap: 25px;grid-template-columns: repeat(4, minmax(200px, 1fr)); }
#covid ul li img{width:100%}
@media only screen and (max-width:1024px){
#covid ul{display: grid;gap: 15px;grid-template-columns: repeat(4, minmax(200px, 1fr)); }	
}
@media screen and (max-width:480px) {
#covid ul{gap: 10px;grid-template-columns: repeat(2, minmax(180px, 1fr));}
	#covid p  {text-align: left}
}
/*----------------
rat
-----------------*/
#rat{}
#rat .radius_blue{margin-bottom: 1em;}
#rat .blue{font-weight:800;margin-bottom: 1em;}
#rat h2{display: flex; justify-content: center; align-items: center;margin:0 auto 1em;font-size:clamp(1.25rem, 0.841rem + 2.05vw, 2.375rem);font-weight: 800;}
#rat h2 img{width: clamp(1.25rem, 0.841rem + 2.05vw, 2.375rem);padding: 0.3em 0}
#rat h2 span{padding:0 0.25em}
#rat p{font-size: clamp(1rem, 0.955rem + 0.23vw, 1.125rem);}
/*----------------
price
-----------------*/
#price{}
#price p.price_ttl_sub {font-size:clamp(1.125rem, 0.943rem + 0.91vw, 1.625rem);font-weight: 800;}
#price h3.both_ends{display: flex;justify-content: center;align-items: center;text-align: center;font-size:clamp(1.25rem, 0.841rem + 2.05vw, 2.375rem);font-weight: 800;line-height: 1.2;margin: 0.25em 0 0.5em;overflow-y:hidden;}
#price h3.both_ends::before,#price h3.both_ends::after{content: "";background-color: var(--red); height: 5px; width: 2.2em;}
#price .radius_blue{margin-bottom: 1em;}
#price .blue{font-weight:800;margin-bottom: 1em;}
#price p{font-size: clamp(1rem, 0.955rem + 0.23vw, 1.125rem);}
#price .calculator{margin: 0 auto 50px;display: block;}
/*----------------
voice
-----------------*/
#voice h2.arrow01 span:after{border-top-color:var(--sub-color)}

/*----------------
SWIPER
-----------------*/
.l-inner{position:relative;-webkit-box-sizing:content-box;box-sizing:content-box;max-width:1200px;margin:0 auto;padding:0 10rem}
.l-inner{padding-top:4rem;padding-bottom:3rem}
[class*=swiper]:focus{outline:none}
.slide-media{position:relative;overflow:hidden;padding-bottom:0}
.img-cover img{position:absolute;top:0;left:0;width:100%;height:100%;-o-object-fit:cover;object-fit:cover}
.swiper-pagination{display:flex;flex-wrap:wrap;gap:1.2rem 0.8rem;justify-content:center;/*margin:5.2rem auto 0;*/text-align:center}
.swiper-pagination-bullet{width:1rem;height:5px;cursor:pointer;-webkit-transition:var(--transition);transition:var(--transition);vertical-align:top;background-color:var(--color-gray);opacity: 1; border-radius:0}
.swiper-pagination-bullet-active{width:2rem;background-color:rgba(0,154,239,0.5)}
.swiper-button-prev,.swiper-button-next{position:relative;-webkit-flex-shrink:0;-ms-flex-negative:0;flex-shrink:0;margin:0}
.swiper-button-disabled{pointer-events:none;opacity:0.5}
.swiper-button-disabled::before{-webkit-box-shadow:var(--box-shadow-inset);box-shadow:var(--box-shadow-inset)}
.swiper-button-prev,.swiper-button-next{display:grid;place-content:center;width:4rem;height:4rem;cursor:pointer;-webkit-transition:var(--transition);transition:var(--transition)}
.swiper-button-prev::before,.swiper-button-next::before{position:absolute;top:0;right:0;bottom:0;left:0;content:"";border-radius:50%;-webkit-box-shadow:var(--box-shadow);box-shadow:var(--box-shadow)}
.swiper-button-prev::after,.swiper-button-next::after{width:1.2rem;height:1.2rem;content:"";border:solid var(--color-gray);border-width:3px 3px 0 0}
.swiper-button-prev::after{margin-left:0.4rem;-webkit-transform:rotate(-135deg);transform:rotate(-135deg)}
.swiper-button-next::after{margin-right:0.4rem;-webkit-transform:rotate(45deg);transform:rotate(45deg)}
.swiper-button-disabled{pointer-events:none;opacity:0}
.rat_list,.price_list,.voice_list{overflow:hidden}
.swiper{overflow:visible;position:relative;margin-bottom: 30px}
.swiper-pagination {position:absolute;left: 50%!important;bottom:-30px!important;  transform: translateX(-50%);}
.swiper-button-prev,.swiper-button-next{position:absolute;z-index:1;top:0;bottom:0;margin:auto}
.swiper-button-prev::before,.swiper-button-next::before{background-color:rgba(0,154,239,0.75);-webkit-box-shadow:var(--box-shadow-dark);box-shadow:var(--box-shadow-dark)}
.swiper-button-prev::after,.swiper-button-next::after{border-color:#fff}
.swiper-button-prev{right:calc(100% - 1.6rem)}
.swiper-button-next{left:calc(100% - 1.6rem)}
.swiper:not(.swiper-initialized){padding:0}
.swiper:not(.swiper-initialized) .swiper-button-prev,.swiper:not(.swiper-initialized) .swiper-button-next{display:none}
.swiper:not(.swiper-initialized) .swiper-wrapper{display:grid;grid-template-columns:repeat(3,1fr);gap:32px}
.slide{overflow:hidden;border-radius:5px;-webkit-box-shadow:var(--box-shadow);box-shadow:var(--box-shadow)}
.img-cover{padding-top:62.5%}
.slide-media img{height:100%;width:100%}
.slide-content{padding:15px}
.slide-title{font-size:20px!important;line-height:1.6;display:-webkit-box;overflow:hidden;-webkit-line-clamp:2;-webkit-box-orient:vertical;height:2em;text-align:center}
.slide-detail{line-height:1.35;display:block}
.voice_list .slide-content{padding:15px;background:rgba(0,154,239,0.5)}
.voice_list .slide-title{font-size:20px;line-height:1.6;display:-webkit-box;overflow:hidden;-webkit-line-clamp:1;-webkit-box-orient:vertical;height:1.6em;text-align:left;color:#fff;position:relative;padding-left:35px}
.voice_list h3.slide-title:before{content:'';display:block;width:30px;height:30px;background-image:url("img/voice_ico.svg");background-size:contain;background-repeat:no-repeat;position:absolute;top:0;left:0}
.swiper-wrapper .swiper-slide-active{opacity:1}
.swiper-slide:not(.swiper-slide-visible) .slide{pointer-events:none;opacity:0.3}
@media only screen and (max-width:1024px){
html{-webkit-text-size-adjust:100%}
.l-inner{padding:2rem 4rem}
.pc{display:none !important}
.swiper{padding:0 3.2rem; }
.swiper-button-prev{right:calc(100% - 5.2rem)}
.swiper-button-next{left:calc(100% - 5.2rem)}
}
@media only screen and (max-width:599px){
.l-inner{padding:1rem 2rem}
.swiper:not(.swiper-initialized) .swiper-wrapper{grid-template-columns:repeat(1,1fr)}
.swiper{padding:0 1.6rem}
.swiper-button-prev{right:calc(100% - 2.6rem); width: 3rem; height: 3rem;}
.swiper-button-next{left:calc(100% - 2.6rem); width: 3rem; height: 3rem;}
.swiper-button-prev::after, .swiper-button-next::after {width: 0.8rem;height: 0.8rem;}
.swiper-pagination{display:flex;flex-wrap:wrap;gap:1.2rem 0.8rem;justify-content:center;/*margin:3.6rem auto;*/text-align:center}
}
@media only screen and (min-width:1025px){.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)}
.rat_list .swiper-wrapper .swiper-slide .slide{opacity:1}
.slide{-webkit-transition:var(--transition);transition:var(--transition)}
.slide img{-webkit-transition:var(--transition);transition:var(--transition)}
}

@media only screen and (min-width:600px){.sp{display:none !important}
}
@media only screen and (max-width:1024px) and (min-width:600px){
.swiper:not(.swiper-initialized) .swiper-wrapper{grid-template-columns:repeat(2,1fr);gap:24px}
}
/*----------------
reason
-----------------*/
#reason .both_ends{overflow-y:hidden;margin-top:0}
#reason .box2{ background:url("../img/riyu.webp")center center/cover no-repeat;text-align: center;padding: 60px 50px}
#reason p.reason_ttl_sub {font-size:clamp(1.125rem, 0.943rem + 0.91vw, 1.625rem);font-weight: 800;}
#reason .box2 p{margin-bottom: 0.5em;font-weight: 600;font-size: clamp(1rem, 0.909rem + 0.45vw, 1.25rem)}
#reason .box2 p.reason_ttl_sub{font-size:clamp(1.063rem, 0.903rem + 0.8vw, 1.5rem);}
#reason .reason_ttl{font-size:clamp(1.25rem, 0.841rem + 2.05vw, 2.375rem);font-weight: 800;margin-bottom: 15px}
@media only screen and (max-width:599px){#reason .box2{padding: 30px 15px}}
/*----------------
faq
-----------------*/
#faq{}
.faq_dl dt{background:#16c788;color:#fff;font-size:clamp(1.125rem, 1.034rem + 0.45vw, 1.375rem);font-weight:500;padding:10px 20px 10px 15px;position:relative;cursor:pointer;line-height:1.5;margin-bottom:2px}
.faq_dl dt:after{content:'\f078';font-family:'Font Awesome 6 Free';position:absolute;right:15px;font-weight: 900;}
.faq_dl dt.active:after{content:'\f077'}
.faq_dl dt i,.faq_a i{margin-right:5px}
.faq_dl dd{background:#fff;line-height:1.5;padding:10px 15px;margin-bottom:10px;display:none;font-weight:500;font-size: clamp(1rem, 0.909rem + 0.45vw, 1.25rem)}
.faq_a_wrap {display: flex;gap: 10px;}
.faq_a{white-space: nowrap }
#faq h2.arrow02 span:after{border:10px solid;border-color:transparent;border-top-color:#e0ffe6;margin-left:-10px}
/*----------------
form
-----------------*/
#mail_form{box-sizing: border-box;
	max-width: 1150px; 
	margin: 0 auto}
#mail_form dl{
	border-bottom: 1px solid #cccccc;
	display: flex;
	flex-direction: column;}
#mail_form dl dt {
    padding: 25px 0 25px;
    text-align: right;
	display: flex;
	flex-direction: row;align-items: center;
}
#mail_form dl dd {
	padding: 0px 0 20px 0px;
}

#mail_form dl dt span.required {
    background: #f13b1c;
    border: 1px solid #f13b1c;
	font-size: 85%;
	color: #ffffff;
    padding: 4px .5em;
	display: inline-block;
	margin: 0 15px 0 0;
}
#mail_form dl dt span.non_required {
    background: #a6a6a6;
    border: 1px solid #a6a6a6;
	font-size: 85%;
	color: #ffffff;
    padding: 4px .5em;
	display: inline-block;
	margin: 0 15px 0 0;
}
#mail_form li{
text-align: left
}

#mail_form ul li label {
	display: block;
	margin-top: 10px;
	padding: 7px 3%;
	background: #f0f0f0;
}

#mail_form ul li:first-child label {
	margin-top: 0px;
}

#mail_form ul li label:hover {
	cursor: pointer;
	background: #e0e0e0;
}
#mail_form p#form_submit {
	text-align: center;
    margin: 0 auto;
    padding: 30px 0;
}


#mail_form input[type="text"], #mail_form input[type="email"], #mail_form input[type="tel"] {
    width: calc( 100%  - 2px );
    padding: 7px 10px ;
    border: 1px solid #cccccc;
    background: #fafafa;
    -webkit-appearance: none;
    line-height: normal;
}
#mail_form textarea {
    display: block;
    width: calc( 100% - 2px );
    height: 200px;
    padding: 7px 10px;
    resize: vertical;
    border: 1px solid #cccccc;
    border-radius: 3px;
    background: #fafafa;
    -webkit-appearance: none;
    line-height: normal;
}

@media (min-width: 768px){

	#mail_form dl{flex-direction: row;}
	#mail_form dl dt{width: 30%}
	#mail_form dl dd{width: 70%;padding: 30px 0 25px 0;}
	form#mail_form ul{display: flex;  flex-wrap: wrap;justify-content: space-between;}
	form#mail_form li{width: calc(100% / 3 - 10px);margin: 5px;}
	form#mail_form ul li label {margin: 0;}
	form#mail_form input[type="submit"] { padding: 7px 20px;}
	form#mail_form input[type="reset"] { padding: 7px 20px;margin-left: 20px;}
}

#mail_form input[type="submit"],.form_btn{background:var(--main-color);color:#fff;border:0;font-size:clamp(1.125rem, 1.08rem + 0.23vw, 1.25rem);padding:0 40px;height:50px}
form#mail_form input[type="submit"]:hover,.form_btn:hover{background:rgba(0, 154, 239,0.7)}
#mail_form input[type="reset"],.form_backbtn{background:#ccc;border:0;font-size:clamp(1.125rem, 1.08rem + 0.23vw, 1.25rem);padding:0 40px;height:50px}
#mail_form input[type="reset"]:visited,.form_backbtn:visited{color:inherit}
#mail_form input[type="reset"]:hover,.form_backbtn:hover{background: rgba(79, 78, 78,0.5);}
@media only screen and (max-width:599px){
	#mail_form input[type="submit"],.form_btn,#mail_form input[type="reset"],.form_backbtn{padding:0 15px;}	
	.form_btn,#mail_form input[type="reset"],.form_backbtn{margin-left: 10px;}
}
#form_thanks{margin:0 auto;}
.thanks_box{width: 100%;margin: 0 auto}
#form_thanks p{padding: 1em 0;text-align: center}
#form_thanks p:last-child{margin-bottom: 1em}
@media screen and (max-width:768px){
#form_thanks{margin:0 auto;}
}
/*----------------
会社概要
-----------------*/
#page_title{background:url("../img/company.webp")0/cover repeat;letter-spacing:.1em;padding:1.5em;text-align:center;font-size:clamp(1.25rem, 0.841rem + 2.05vw, 2.375rem);line-height: 1}
#page_title.con{background:url("../img/contact.webp")0/cover repeat;letter-spacing:.1em;padding:1.5em;text-align:center;font-size:clamp(1.25rem, 0.841rem + 2.05vw, 2.375rem);line-height: 1}
#page_title span{font-size:80%;letter-spacing:0;font-family: var(--en);line-height: 1}
@media screen and (max-width:768px){
#page_title{margin-top:57px}
}
#pankuzu{background:#eee;font-size:80%;padding: 0.5em 0}
#pankuzu_ul{display:flex;gap:10px;list-style:none;font-family: var(--en);}
#pankuzu_ul a{color:var(--main-color)}
#pankuzu_ul i{margin-right:10px}


.dl_com{display:flex;flex-wrap:wrap;font-size:clamp(1rem, 0.909rem + 0.45vw, 1.25rem);line-height:1.5}
.dl_com dt{border-bottom:3px solid var(--main-color-op);font-weight:700;width:200px}
.dl_com dd,.dl_com dt{box-sizing:border-box;padding:1em}
.dl_com dd{border-bottom:3px solid #eee;width:calc(100% - 200px)}
.dl_com dt:first-of-type{border-top:3px solid var(--main-color-op)}
.dl_com dd:first-of-type{border-top:3px solid #eee}
@media screen and (max-width:640px){
.dl_com dt{width:100px}
.dl_com dd{width:calc(100% - 100px)}
}
/*----------------
access
-----------------*/
#access{}
#access .map{border: 10px solid #fff;}
@media screen and (max-width:480px){
#access .map{border: 5px solid #fff;}	
}




/*----------------
privacy
-----------------*/
#privacy{}
#privacy ol{margin:0;padding:0;list-style:none;counter-reset:li}
#privacy ol li{position:relative;font-size:16px;padding-left:1.5em;line-height:1.5}
#privacy ol li:not(:first-child){margin-top:0.5em}
#privacy ol li::before{counter-increment:li;content:counter(li);position:absolute;left:0;top:2px;display:block;width:20px;height:20px;border-radius:50%;background-color:var(--main-color);font-size:12px;color:#fff;line-height:20px;text-align:center;font-family: var(--en)}
#privacy ul.child_list li{position:relative;font-size:16px;padding-left:1em;line-height:1.5}
#privacy ul.child_list li::before{padding: 0; content: "" !important;width: 8px; height: 8px; border-radius: 50%; background-color:var(--main-color);top:0.75em}

/*MAIN↑*/

/*FOOTER↓*/
#page_top{display:block;position:fixed;bottom:12px;right:0;width:50px;height:50px;font-size:30px;z-index: 1000}
@media screen and (max-width:480px) {
#page_top{bottom:60px;}	
}
#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:rgba(0, 93, 171,.5)}
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:600;margin:0 10px}
#f_logo{padding:20px 15px 10px}
#f_logo .sub_ttl{font-weight: 800;font-size:clamp(0.75rem, 0.591rem + 0.8vw, 1.188rem);padding-bottom:0.15em}
#f_logo img{max-width:480px;min-width: 315px }
.f_address{margin-bottom:20px}
.f_copy{font-family: var(--en) ;font-size:80%;border-top:1px solid #ddd;padding:2em 0}
#f_btn{display:flex;justify-content:center;gap:3px;padding:10px 0 0;background:#fff;position:fixed;bottom:0;left:0;width:100%;box-sizing:border-box;z-index: 100;}
#f_btn a{padding: 10px;text-shadow: var(--text-shadow);width:50% }
#f_btn a:first-child{background: var(--gradient-blue);color: #fff;display: flex;justify-content: center;align-items: center;gap:5px}
#f_btn a:first-child span{line-height: 1;font-size: 17px;font-weight: 600}
#f_btn a i{font-size: 19px;}
#f_btn a:nth-child(2){background: var(--gradient-red);color: #fff;display: flex;justify-content: center;align-items: center;gap:5px}
#f_btn a:nth-child(2) span{font-size: 20px;font-family: "Montserrat", sans-serif;font-weight: 600}
/*#f_btn a:last-child{background: var(--gradient-green);color: #fff;display: flex;justify-content: center;align-items: center;gap:5px}*/
/*FOOTER↑*/

.wrap1 { max-width: 920px;padding: 0 10px;margin: 0 auto}
.wrap2 {max-width: 1200px; padding: 0 10px;margin: 0 auto}
/*スマホメニュー*/
	@media screen and (min-width: 480px) {
  .sp-menu {
    display: none;
  }
}.sp-menu__box {
  position: fixed;
  top: 0;
  right: 0;
  display: flex;
  height: 60px;
  width: 60px;
  justify-content: center;
  align-items: center;
  z-index: 90;
  /*background: #fff;*/
}
.sp-menu__box span,
.sp-menu__box span:before,
.sp-menu__box span:after {
  content: "";
  display: block;
  height: 3px;
  width: 25px;
  border-radius: 3px;
  background:var(--main-color);
  position: absolute;
}
.sp-menu__box span:before {
  bottom: 8px;
}
.sp-menu__box span:after {
  top: 8px;
}
#sp-menu__check {
  display: none;
}
#sp-menu__check:checked ~ .sp-menu__box span {
  background: rgba(255, 255, 255, 0);
}
#sp-menu__check:checked ~ .sp-menu__box span::before {
  bottom: 0;
  transform: rotate(45deg);
}
#sp-menu__check:checked ~ .sp-menu__box span::after {
  top: 0;
  transform: rotate(-45deg);
}
#sp-menu__check:checked ~ .sp-menu__content {
  left: 0;
}
.sp-menu__content {
  width: 100%;
  height: auto;
  position: fixed;
  top: 60px;
  left: 100%;
  z-index: 80;
  background-color: var(--main-color);
  transition: all 0.5s;
}
.sp-menu__list {
  padding: 5px 10px 0;
}
.sp-menu__item {
  border-bottom: solid 1px #ffffff;
  list-style: none;
}
.sp-menu__item:last-child{border-bottom:none}
.sp-menu__link {
	text-align: center;
  display: block;
  width: 100%;
  box-sizing: border-box;
  color: #ffffff;
  text-decoration: none;
  padding: 9px 15px 10px 0;font-size: 120%;font-weight: 700;
}
.sp-menu__link i{padding-right: 0.5em}