@charset "utf-8";
/*
Theme Name:WP Base
Theme URI:http://www.agn.co.jp/
Description:ベーステンプレート
Version:1.0
Author:K.abe
Author URI:http://www.agn.co.jp/
*/

@import "css/reset.css";
@import "css/common.css";

@import "css/icon.css";
@import "css/etc.css";


@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@800&display=swap');

.noto-sans{
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 800;
  font-style: normal;
}

h2 span{display: inline-block;white-space: nowrap;}


.goverlay {
    background: rgba(0, 0, 0, 0.8) !important; /* 数値を下げると薄くなる（デフォルトは0.92くらい） */
}



.lsc_txt img{
    border:none !important;
    height: 1.4em;
    display: inline-block;
    margin: 0.2em 0;
}


/* トップページ
ーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーー */

.home #kv{
height: 100vh;
/*　background-image: url(images/corporate/kv.jpg);　*/
background-size: cover;
background-position: center 50%;
}



.home #kv{
    position:relative;
    overflow:hidden;
}

#kv .bg{
    position:absolute;
    inset:0;
    background-position:center;
    background-size:cover;
    opacity:0;
}

.home #kv .bg01{
    background-image:url("images/corporate/kv01.jpg");
    animation:kvFade 20s infinite;
}

.home #kv .bg02{
    background-image:url("images/corporate/kv02.jpg");
    animation:kvFade 20s infinite 5s;
}

.home #kv .bg03{
    background-image:url("images/corporate/kv03.jpg");
    animation:kvFade 20s infinite 10s;
}


.home #kv .bg04{
    background-image:url("images/corporate/kv04.jpg");
    animation:kvFade 20s infinite 15s;
}

#kv .ttl_bk{
    position:relative;
    z-index:5;
}

@keyframes kvFade{
    0%{
        opacity:0;
    }
    10%{
        opacity:1;
    }
    30%{
        opacity:1;
    }
    40%{
        opacity:0;
    }
    100%{
        opacity:0;
    }
}







.home .ttl_bk {
height: 100vh;
display: flex;
justify-content: center;
align-items: flex-end;
}

.home .kv_ms{
margin-bottom: 20vh;
}

.home .ttl_bk h2 {
text-align: center;
margin-top: 1em;
}

.home .intro{
background-color: #b5bec4;
}

.home .intro .contents > p {
font-size:clamp(27px, 8vw, 62px);
line-height: 1.4em;
color: #fff;
margin: 2em 0 1em;
letter-spacing: 3px;
}

.home .mess01 p{
font-size: 17px;
line-height: 1.7em;
letter-spacing: 3px;
margin-right: 100px;
}

.home .mess01 img{
display: table;
border-radius: 20px;
}


.home .marquee {
width: 100%;
overflow: hidden;
color: rgb(255 255 255 / 17%);
white-space: nowrap;
margin: 8em 0 1em;
}

.home .marquee_inner {
display: inline-flex;
width: max-content;
animation: marquee 180s linear infinite;
}

.home .marquee span {
font-size: 10em;
font-weight: bold;
padding-right: 2rem;
line-height: 1em;
}

@keyframes marquee {
 from {transform: translateX(0);}
 to {transform: translateX(-50%);}
}


.home .intro h2 {
font-size: clamp(28px, 8vw, 45px);
line-height: 1em;
text-align: center;
color: #fff;
margin-bottom: 1em;
}

.home .intro h2 span{display: inline-block;white-space: nowrap;}

.home .mess02 {
display: block;
text-align: center;
margin: 0 auto 150px;
}

.home .wk_select {
margin: 120px auto 80px !important;
max-width: 960px !important;
}

.home .wk_select li {
text-align: center;
padding: 0 20px 40px;
}

.home .wk_select .pt_mask {
display: table;
margin: 0 auto;
border-radius: 200px 200px 0 0;
}

.home .wk_select a {
font-size: 20px;
font-weight: 800;
text-align: center;
background-color: #da5351;
color: #fff;
padding: 0.7em 0.5em;
display: block;
border-radius: 2em;
max-width: 277px;
margin: 1.3em auto 0;
}

.home .google-maps,
#cleancenter .google-maps {
position: relative;
padding-bottom: 410px;
height: 0;
overflow: hidden;
}

.home .google-maps iframe,
#cleancenter .google-maps iframe {
position: absolute;
top: 0;
left: 0;
width: 100% !important;
height: 100% !important;
}

#cleancenter .google-maps {
margin-top: 100px;
}


.news_box {
display: flex;
margin: 100px auto;
width: 100%;
max-width: 1000px;
gap: 4em;
}

.news_box h2 {
font-size: 45px;
line-height: 1em;
color: #b5bec4;
}

 .news_box ul {
flex: 1;
border-top: solid 1px #b8bec4;
}

.news_box li {
border-bottom: solid 1px #b8bec4;
}

.news_box li a {
display: block;
font-size: 16px;
padding: 2em 0.5em;
color: #000;
}

.news_box a span {
display: inline-block;
width: 20%;
}

.news_box li a:hover {
opacity: 1;
background-color: #f2f2f2;
}

.clean_bnr {
display: flex;
width: 100%;
max-width: 1100px;
margin: 0 auto 70px;
background-color: #66cc33;
align-items: center;
}

.clean_bnr .cnt_box:nth-of-type(1) {
width: 510px;
}

.clean_bnr .cnt_box:nth-of-type(2) {
flex: 1;
}

.clean_bnr .clean_link_box {
text-align: center;
}

.clean_bnr .bnr_link{
display: table;
margin: 1.5em auto 0;
background-color: #fff;
font-weight: 900;
color: #b5bec4;
padding: 0.5em 1.5em;
line-height: 1em;
border-radius: 2em;
}


#frontpage .clean_bnr .bnr_link,
#about .clean_bnr .bnr_link{
color: #66cc33;
}


.botom_tel_box {
background-image: url(images/corporate/botm_photo_cp.png),linear-gradient(90deg, #a8b3b9 35%, #83939c 37%);
background-position: center 50%;
background-repeat: no-repeat;
align-items: center;
justify-content: center;
}
.botom_tel_box img {
margin: 100px 0;
margin-left: 51%;
}


@media (max-width: 1280px) {
.mess01{padding-left: 15px;padding-right: 15px;}
}

@media (max-width: 1080px) {
.botom_tel_box{padding: 0 15px;background-size: auto 110%;}
.botom_tel_box img{margin: 9.3vw 0;margin-left: 44vw;width: 47.5vw;}
}



@media (max-width: 1000px) {
 .news_box{display: block;}
 .news_box .cnt_box{padding: 0 15px 30px;}
 .news_box ul{margin-left: 15px;margin-right: 15px;}
.clean_bnr .cnt_box:nth-of-type(1) {width: 55vw;}
 .clean_bnr .cnt_box:nth-of-type(2){padding: 15px;}
}



@media (max-width: 820px) {
 .home .wk_select a{font-size: 2.4vw;}
}

@media (max-width: 640px) {
.home .mess01 p { margin-right: 0px;margin-bottom: 15px;}
.home .wk_select a {font-size: 20px;}
.home .cnt_box img{display: table;margin: 0 auto;}
.news_box a span {display: block;}
.clean_bnr{display: block;}
.clean_bnr .cnt_box:nth-of-type(1),
.clean_bnr .cnt_box:nth-of-type(1) img {width: 100%;}
.botom_tel_box img{width: 64vw;margin: 9.3vw 0 9.3vw auto;display: table;}
}













/* 事業内容
ーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーー */

#biz_kv{
position: relative;
display: table;
margin: 140px auto 90px
}


#biz_kv .ttl_bk{

display: table;
margin: 0 auto;
position: relative;
border: solid 1px #83939c;
border-radius: 1.5em;
}

#biz_kv h1 {
position: absolute;
top: 0;
left: 0;
background-color: #fff;
padding: 0 30px 20px 0;
border-right: solid 1px #83939c;
border-bottom: solid 1px #83939c;
border-radius: 0 0 20px 0;
font-size: clamp(30px, 8vw, 38px);
font-weight: bold;
line-height: 1em;
color: #83939c;
z-index: 1;
}



#business h2{
font-size: clamp(30px, 8vw, 45px);
 line-height: 1em;
font-weight: bold;
color: #b5bec4;
}
#business h2 span{
display: inline-block;white-space: nowrap;
}


#business #point1{
margin-bottom: 120px;
}
#business #point1 h2 {
text-align: center;
font-size: clamp(27px, 8vw, 62px);
font-weight: 900;
line-height: 1em;
color: #b5bec4;
margin-bottom: 60px;
}



#business #point1 img{
border-radius: 15px;
}

#point1 .contents{
max-width: 950px;
justify-content: space-between;
}

#point1 .contents p{
max-width: 360px;
}


#point2 {
margin-bottom: 100px;
padding: 0 15px;
}

#point2 h2 {
max-width: 950px;
margin: 0 auto 25px;
}

#point2 .facility.contents {
max-width: 950px;
padding: 2em 3em;
background-color: #b5bec4;
margin-bottom: 100px;
justify-content: space-between;
}



#point2 .facility li {
display: flex;
justify-content: space-between;
font-size: 19px;
font-weight: bold;
max-width: 31%;
margin: 0.3em 0px;
}

#point2 .phgallery {
margin-bottom: 50px;
}


#point2 .phgallery .contents{
max-width: 950px;
margin-right: auto;
margin-left: auto;
}
#point2 .phgallery .gset01{
margin-bottom: 30px;
}
#point2 .phgallery .gset01 div{
margin-bottom: 20px;
text-align: center;
}


#point2 .phgallery .cont-box01 {
flex: 1 !important;
}
#point2 .phgallery .cont-box02 {
flex: 0 0 40% !important;
}

#point2 .phgallery ul{
margin-bottom: 0;
}

#point2 .phgallery .cont-box01 li {
padding-right: 15px;
padding-bottom: 25px;
}


#point2 .itm_chk h2 {
background-color: #b6bec4;
color: #000;
font-size: 20px;
line-height: 2em;
text-align: center;
}

#point2 .itm_chk .contents{
max-width: 950px;
margin-right: auto;
margin-left: auto;
}

#point2 .itm_chk ul{
justify-content: center;
}

#point2 .itm_chk ul li span{
display: table;margin: 0 auto;
}



#point3 {
background-color:#b5bec4;
padding: 100px 15px 150px; 
}

#point3 h2 {
color: #fff;
text-align: center;
margin-bottom: 3em;
}

#point3 .testcase {
justify-content: center;
margin-bottom: 100px;
max-width: 950px;
}

#point3 .testcase li {
max-width: 31.3%;
background-color: #fff;
padding: 1em;
margin: 0 1% 20px;
}

#point3 .testcase li img {
margin-bottom: 1em;
}

#point3 .testcase li h3 {
display: block;
min-height: 4em;
font-size: 24px;
line-height: 1.5em;
font-weight: bold;
margin: 0 auto;
color: #83939c;
}


#point3 .testcase li p {
letter-spacing: 1px;
}




#point3 .carryitem {
}
#point3 .carryitem h2 {
font-size: 30px;
max-width: 950px;
margin: 0 auto 30px;
text-align: left;
}
#point3 .carryitem ul {
max-width: 950px;
display: block;
margin: 0 auto;
}
#point3 .carryitem li {
background-color: #fff;
width: 100%;
max-width: 22%;
margin-bottom: 15px;
text-align: center;
padding: 1em 0;
font-weight: bold;
float: left;
margin-right: 3%;
}

#point3 .carryitem li:last-child{
max-width: 47%;
width: 100%;
}


#point3 .carryitem li:nth-child(4n){
margin-right: 0;
}


/* 900px
ーーーーーーーーーーーーーーーーーー */
@media (max-width: 900px) {
#point2 .facility.contents {max-width: 640px;}
#point2 .facility li{flex: 0 0 44% !important;max-width: 100%;}

}

/* 720px
ーーーーーーーーーーーーーーーーーー */
@media (max-width: 720px) {
#point3 .carryitem ul {display: flex;    flex-wrap: wrap;
 justify-content: space-between;}
#point3 .carryitem li,#point3 .carryitem li:last-child {max-width: 49%; font-size: 0.9em;}
#point3 .carryitem li:nth-child(3n) {margin-right: 0%;}
#point3 .carryitem li:nth-child(2n) {margin-right: 0%;}
#point3 .carryitem li {margin-right: 0%;}
}




/* 670px
ーーーーーーーーーーーーーーーーーー */
@media (max-width: 670px) {
#point3 .testcase li {max-width: 48%;}

}

/* 640px
ーーーーーーーーーーーーーーーーーー */
@media (max-width: 640px) {
 #biz_kv h1 {position: relative;border: none;}
 #biz_kv .ttl_bk img{min-height: 50vw;object-fit: cover;}
 #point1 .contents p {max-width: 100%;margin-bottom: 15px;}
#business #point1 img { width: 100%;}
#point2 .facility li { flex: 0 0 100% !important;}
#point2 .facility.contents {max-width: 400px;padding: 2em;}
#point2 .phgallery .cont-box01,
#point2 .phgallery .cont-box02{flex: 0 0 100% !important;}
 #point2 .phgallery .cont-box02 span{display: table;margin: 0 auto;max-width: 380px;}
#point3 { padding: 60px 15px 150px;}
#point3 h2 { margin-bottom: 1.5em;}

}



/* 620px
ーーーーーーーーーーーーーーーーーー */
@media (max-width: 620px) {
#point3 .carryitem li,#point3 .carryitem li:last-child {max-width: 100%;}
}

/* 540px
ーーーーーーーーーーーーーーーーーー */
@media (max-width: 540px) {
#point2 .phgallery .cont-box01 ul {justify-content: center;}
#point2 .phgallery .cont-box01 li {padding-right: 0;display: table;margin: 0 auto;max-width: 380px;}
#point2 .phgallery .cont-box01 li img{width: 100vw;}
}

/* 480px
ーーーーーーーーーーーーーーーーーー */
@media (max-width: 480px) {
#biz_kv {  margin: 140px auto 60px;}
#business #point1 h2 {margin-bottom: 40px;}
#point3 .testcase li {max-width: 100%;}



}














/* 会社案内
ーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーー */

#about .ctn_wrap{
max-width: 1130px;
margin: 0 auto 150px;
padding: 0 15px;
}

#about #permitlist{
padding-top: 130px;
margin-top: -130px;
}


#about h2{
font-size: clamp(27px, 8vw, 45px);
font-weight: 900;
line-height: 1em;
color: #b5bec4;
margin-bottom: 70px;
}

#about .flt_ttl h2{
float: left;
}

#about h3{
margin-left: 70px;
}

#about table {
margin-left: 225px;
border-top: solid 1px #000;
width: calc(100% - 225px);
}

#about table tr{
border-bottom: solid 1px #000;
}

#about table th,
#about table td{
padding: 0.7em 0;
}

#about table th{
white-space: nowrap;
padding-right: 1.5em;
}

#about table td span{
white-space: nowrap;
}

.cont_wrap{align-items: center !important;}
.cont_wrap .cont_box01 {
flex: 1 !important;
}
.cont_wrap .cont_box02 {
flex: 0 0 170px !important;
}
#about .cont_wrap .cont_box02 a {
display: table-cell;
background-color: #da5351;
padding: 0.5em 1em;
border-radius: 2em;
line-height: 1em;
font-size: 16px;
font-weight: bold;
color: #fff;
}

#about .lc_box01 ul{padding-left: 70px;}
#about .lc_box01 ul:nth-of-type(1){flex: 0 0 55% !important;}
#about .lc_box01 ul:nth-of-type(2){flex: 0 0 45% !important;}
#about .lc_box01 li {
line-height: 1.4em;
padding: 0.5em 0;
}
#about .lc_box01 li span{white-space: nowrap;display: inline-block;}

#about .lc_box02 h3,
#about .lc_box03 h3{
font-size: 25px;
margin-bottom: 1em;
}

#about .lc_box02 table,
#about .lc_box03 table{
margin-left: 70px;
border-right: solid 1px #000;
width: 830px;
}

#about .lc_box02 th,
#about .lc_box02 td,
#about .lc_box03 th,
#about .lc_box03 td{
border-left: solid 1px #000;
}

#about .lc_box02 .tb_title th {
text-align: center;
}

#about .lc_box02 th {
font-weight: bold;
padding: 0.5em 1.5em;
}

#about .lc_box02 .tb_title th:first-child{
background-color: #b5bec4;
color: #fff;
}

#about .lc_box02 td {
text-align: center;
font-family: "Noto Sans JP", sans-serif;
font-optical-sizing: auto;
font-weight: 800;
font-style: normal;
vertical-align: middle;
}

#about .lc_box02 p{
margin-top: 1em;
margin-left: 70px;
}

#about .lc_box03 th{
font-weight: bold;
padding: 0.5em 1.5em;
background-color: #b5bec4;
color: #fff;
text-align: center;
}
#about .lc_box03 td {
vertical-align: middle;
font-weight: bold;
padding: 0.5em 1.5em;
}

#about .lc_box03 br{
display: none;
}

#about .lc_box03 p{
margin-left: 70px;
}
#about .lc_box03 .js-scroll + p{
margin-top: 1em;
}

#about .pdf_box {
width: 100px;
padding: 0 !important;
text-align: center;
}
#about .pdf_box img{
width: 61px;
}

#about .lcbox3_tbl + P {
margin-top: 1em;
margin-left: 70px;
margin-bottom: 150px;
}


#about .permit_list  {
margin: 0px auto;
max-width: 900px;
}

#about .permit_list li{}
#about .permit_list li img {
border: solid 1px #000;
max-width: 350px;
width: 100%;
margin: 0 auto;
display: table;
}

#about .permit_list li p {
    font-size: 14px;
    max-width: 350px;
    margin: 10px auto 70px;
    line-height: 1.2em;
}



#about .lc_box03 a {
    display: inline-block;
    background-color: #2196F3;
    color: #fff;
    padding: 0px 12px;
    border-radius: 2em;
    margin: 0 5px;
}



/* 980px
ーーーーーーーーーーーーーーーーーー */
@media (max-width: 980px) {
#about .lc_box02 table,
#about .lc_box03 table {margin-left: auto;margin-right: auto;}

}

/* 900px
ーーーーーーーーーーーーーーーーーー */
@media (max-width: 900px) {
.cont_wrap .cont_box01,
.cont_wrap .cont_box02 {width: 100%;flex: 0 0 100% !important;}
}

/* 767px
ーーーーーーーーーーーーーーーーーー */
@media (max-width: 767px) {
#about .flt_ttl h2 {float: none;}
#about table {margin-left: 0;width: 100%;}
#about .lc_box01 ul:nth-of-type(1), 
#about .lc_box01 ul:nth-of-type(2) {padding-left: 0;width: auto;flex: 0 0 100% !important;}
#about .lc_box01{display: table;}
#about h3.permit{max-width: 490px;margin-left: auto;margin-right: auto;}
#about .copionfo_tbl th,#about .copionfo_tbl td{display: block;line-height: 1.3em;}
#about .copionfo_tbl th{padding-bottom: 0.2em;font-weight: bold;}
#about .copionfo_tbl td{padding-top: 0.2em;}

#about .enkaku th,#about .enkaku td{display: block;line-height: 1em;}
#about .enkaku th{padding-bottom: 0.2em;font-weight: bold;}
#about .enkaku td{padding-top: 0.2em;}
#about .lc_box02 h3,#about .lc_box03 h3,
#about .lc_box02 p,#about .lc_box03 p{margin-left: 0px;}
}

/* 530px
ーーーーーーーーーーーーーーーーーー */
@media (max-width: 530px) {
#about .lc_box01 li span{display: block;}
#about h3.permit{max-width: 300px;}
#about .lc_box03 br{display:  block;}
}














/* クリーンセンター TOP
ーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーー */
#cleancenter #kv {
margin: 160px 0 160px;
max-width: 2500px;
width: 100%;
overflow: hidden;
background-image: url(images/clean/cl_kv_mess.svg);
background-repeat: no-repeat;
background-position: calc(100vw / 2 - 590px) bottom;
}

.bg_fade {
position: relative;
overflow: hidden;
width: 100%;
max-width: 1424px;
aspect-ratio: 1424 / 698;
margin-left: calc(100vw / 2 - 330px);
}

/* ーーーーー KV位置調整 ーーーーー */
@media (max-width: 1440px) {
#cleancenter #kv {
background-position: 7.7vw bottom;
background-size: auto 100%;
}

.bg_fade {margin-left: 400px;}
}

@media (max-width: 1150px) {
.bg_fade {margin-left: 35%;}
}

@media (max-width: 767px) {
margin: 100px 0 20vw;
}
/* ーーーーー KV位置調整 ーーーーー */


/* 背景画像レイヤー */
.bg_img{
position: absolute;
inset: 0;
background-size: cover;
background-position: center;
opacity: 0;
animation: bgFade 18s infinite;
}

/* 各画像 */
.img01{
background-image: url(images/clean/cl_kv_main01.jpg);
animation-delay: 0s;
}

.img02{
background-image: url(images/clean/cl_kv_main02.jpg);
animation-delay: 6s;
}

.img03{
background-image: url(images/clean/cl_kv_main03.jpg);
animation-delay: 12s;
}

/* コンテンツを前面へ */
.content{
position: relative;
z-index: 2;
}

@keyframes bgFade{
0%{   opacity: 0; }
8%{   opacity: 1; }
30%{  opacity: 1; }
38%{  opacity: 0; }
100%{ opacity: 0; }
}

#cl_intro {}

#cleancenter .spa_cer{
max-width: 990px;
margin: 0 auto;
}

#cl_intro h2 {
color: #66cc33;
font-size: clamp(27px, 8vw, 62px);;
line-height: 1.4em;
font-weight: 800;
}

#cl_intro .contents {
justify-content: space-between;
align-items: flex-end;
}

#cl_intro div:nth-of-type(2){
align-items: flex-start;
gap: 40px;
}

#cl_intro div:nth-of-type(2) p{
flex: 1;
margin-top: 2.5em;
}

#cl_intro div:nth-of-type(2) div{
width: 400px;
}


#cl_intro a {
background-color: #66cc33;
max-width: 510px;
width: 100%;
display: block;
margin: 15px auto 150px;
text-align: center;
color: #ffffff;
font-weight: bold;
padding: 0.8em 0.5em;
border-radius: 2em;
}

#cl_kaisyu {
}
#cl_kaisyu.spa_cer {
margin-bottom: 280px;
}
#cl_kaisyu .wrap01 {
justify-content: space-between;
align-items: flex-end;
margin-bottom: 70px;
}

#cl_kaisyu h2 {
font-size: clamp(28px, 8vw, 45px);
line-height: 1.4em;
font-weight: 900;
color: #66cc33;
}

#cl_kaisyu .wrap02 {
justify-content: space-between;
gap: 50px;
}

#cl_kaisyu .cont_box03 {
 flex: 1;
}

#cl_kaisyu h3 {
background-color: #66cc33;
text-align: center;
font-size: 24px;
line-height: 1em;
color: #fff;
font-weight: 900;
padding: 0.5em;
margin-bottom: 1.5em;
}

#cl_kaisyu ul {
margin-bottom: 2em;
}

#cl_kaisyu li {
font-size: clamp(25px, 7.9vw, 28px);
padding: 0 0 0.3em;
line-height: 1.2em;
font-family: "Noto Sans JP", sans-serif;
font-weight: 800;
font-style: normal;
color: #66cc33;
text-indent: -1em;
padding-left: 1em;
}

#cl_kaisyu .cont_box03 h3 span{
display: table;
text-align: left;
margin: 0 auto;
}


#cl_kaisyu .wrap04{
justify-content: space-between;
}

#cl_kaisyu .cont_box04 img {
border-radius: 20px;
width: 48vw;
max-width: 480px;
}

/* =====================
  パララックスセクション
===================== */
.pl_outline{
height: 350px;
overflow: hidden;
margin-bottom: 100px;
}

.parallax-wrap {
position: relative;
height: 100vw;
overflow: hidden;
}

.parallax-pos {
position: absolute;
inset: 0;
transform: translateY(-29vw);
}

.parallax-img {
width: 100%;
height: 120%;
object-fit: cover;
}
/* ===================== */


/* =====================
  せり上がりセクション
===================== */
#plbox_wrap {
position: relative;
}

#pl_fixbox {
position: relative;
z-index: 1;
}

#pl_targetbox {
position: relative;
z-index: 2;
}
/* ===================== */



.lift-top {
background-image: url(images/clean/cl_front_bk02.png);
background-position: top center;
background-repeat: repeat-x;
height: 118px;
}
/* 本体 */

.lift-section{
background-image: linear-gradient(transparent 100px, #66cc33 100px);
}

.lift-inner {
color: #fff;
padding: 0px 0px 100px;
margin:0;
}

#cl_items h2,
#cl_trash h2 {
margin-top: 100px;
font-size: clamp(27px, 8vw, 45px);
line-height: 1em;
margin-bottom: 1em;
font-weight: 900;
letter-spacing: 5px;
}

#cl_items h3 {
font-size: 30px;
color: #fff;
line-height: 1em;
font-weight: 900;
margin-bottom: 1em;
}

#cl_items p,
#cl_trash h2 + p {
color: #000000;
margin-bottom: 3em;
}

#cl_items .wrap03 {
justify-content: space-between;
}


#cl_items .wrap03 .cl_itm_list {
width: 23%;
}

.wrap03 ul li {
background-color: #fff;
color: #000000;
text-align: center;
font-weight: bold;
padding: 1em;
margin-bottom: 0.8em;
font-size: clamp(13px, 2.7vw, 17px);
}

#cl_items .wrap03 .clttl {
font-size: clamp(13px, 4.3vw, 20px);
text-align: center;
border: solid 2px #fff;
padding: 1em 0.5em 1em 60px;
border-radius: 15px;
background-repeat: no-repeat;
background-position: 5% 50%;
color: #000;
margin-bottom: 0.7em;
}

#cl_items .wrap03 .list01{background-image: url(images/clean/cl_icon01.png);}
#cl_items .wrap03 .list02{background-image: url(images/clean/cl_icon02.png);}
#cl_items .wrap03 .list03{background-image: url(images/clean/cl_icon03.png);}
#cl_items .wrap03 .list04{background-image: url(images/clean/cl_icon04.png);}
#cl_items .wrap03 .list05{background-image: url(images/clean/cl_icon05.png);}

#cl_trash {
background: #66cc33;
color: #fff;
padding: 0px 0px 330px;
margin: 0;
background-image: url(images/clean/cl_bottom_line.png);
background-position: bottom center;
background-repeat: repeat-x; 
}

#cl_trash .in_wrap{
max-width: 990px;
margin: 0 auto;
}

#cl_trash .linecard{
justify-content: space-between;
max-width: 990px;
}

#cl_trash .linecard li {
width: 24%;
text-align: center;
border: solid 2px #fff;
border-radius: 15px;
padding: 1em;
}

#cl_trash .linecard li p {
text-align: center;
margin-top: 1em;
color: #000;
font-size: clamp(12px, 4vw, 16px);
}

#cl_trash .linecard li p strong{
font-size: clamp(15px, 5.1vw, 20px);
font-weight: 900;
}

.lift-inner {
background-image: url(images/clean/cl_img04.png);
background-repeat: no-repeat;
background-position: calc(100vw / 2 - 620px) bottom;
}

.clean_bnr.cop_bnr {
background-color: #b5bec4;
}

.clean_bnr.cop_bnr a{
 color:#b5bec4
}

.botom_tel_box.cop_bnr {
background-image: url(images/corporate/botm_photo_cp.png),linear-gradient(90deg, #a8b3b9 35%, #83939c 37%);
background-position: center 50%;
background-repeat: no-repeat;
align-items: center;
justify-content: center;
}


@media (max-width: 1250px) {
.lift-inner { background-position: 10px bottom;}
}

@media (max-width: 1000px) {
 .home .news_box{display: block;}
 .home .news_box .cnt_box{padding: 0 15px 30px;}
 .home .news_box ul{margin-left: 15px;margin-right: 15px;}
}

@media (max-width: 894px) {
#cl_kaisyu .cont_box01{display: table; margin: 0 auto;}
#cl_kaisyu .cont_box02{ width: 100%; text-align: center; margin-top: 20px;}
#cl_trash .linecard li {width: 48%;margin-bottom: 20px;}
#cl_trash .linecard { max-width: 500px;}
}


@media (max-width: 767px) {
 #cl_intro div:nth-of-type(2) div{text-align: center;}
.pl_outline {height: 47vw; margin-bottom: 13.5vw;}
 #cl_intro a {margin: 15px auto 100px;}
#cl_kaisyu .cont_box04 img {width: 100%;margin: 0 auto;display: table;}
#cl_items .wrap03 .cl_itm_list {width: 49%;}
}

@media (max-width: 640px) {
.lift-inner { background-position: 10px bottom; background-size: 47vw;}
#cl_items .wrap03 .clttl {padding: 1em 0.5em 1em 9vw;background-position: 3% 50%;background-size: 8vw;}
.wrap03 ul li {padding: 0.5em;}
}

@media (max-width: 520px) {
#cl_intro .contents {align-items: flex-start;}
#cl_intro .leaf h2 + div {flex: 1;display: flex;align-items: flex-start;}
}

@media (max-width: 480px) {
#cl_trash .linecard li p {line-height: 1.4em}
}








/* クリーンセンター 会社案内
ーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーー */

#clean-about .ctn_wrap{
max-width: 1130px;
margin: 0 auto 150px;
padding: 0 15px;
}

#clean-about #biz_kv .ttl_bk {
display: table;
margin: 0 auto;
position: relative;
border: none;
border-radius: 1.5em;
}

#clean-about h2{
font-size: clamp(27px, 8vw, 45px);
font-weight: 900;
line-height: 1em;
color: #66cc33;
 margin-bottom: 70px;
}

#clean-about .flt_ttl h2{
float: left;
}

#clean-about h3{
margin-left: 0px;
}

#clean-about table {
margin-left: 225px;
border-top: solid 1px #000;
width: calc(100% - 225px);
}

#clean-about table tr{
border-bottom: solid 1px #000;
}

#clean-about table th,
#clean-about table td{
padding: 0.7em 0;
}

#clean-about table th{
white-space: nowrap;
padding-right: 1.5em;
}

#clean-about table td span{
white-space: nowrap;
}

#clean-about .cont_wrap .cont_box02 a {
display: table-cell;
background-color: #66cc33;
padding: 0.5em 1em;
border-radius: 2em;
line-height: 1em;
font-size: 16px;
font-weight: bold;
color: #fff;
}


#clean-about .permit_layout {
margin: 0 auto 40px;
max-width: 900px;
justify-content: space-between;
}

#clean-about .permit_layout  li {
font-size: 15px;
padding: 0.5em 0;
}

#clean-about .permit_layout  p {
font-size: 14px;
}

#clean-about .glightbox img{
border: solid 1px #000;
}

#clean-about .lcc_img {
text-align: center;
}




@media (max-width: 840px) {
.permit_layout .cont-box:nth-of-type(2){
    text-align: center;
    margin-top: 15px;
}
 .permit_layout .cont-box:nth-of-type(2) p{
text-align: center;
margin-bottom: 30px;
}


}

@media (max-width: 767px) {

#clean-about .flt_ttl h2 {float: none;}
#clean-about  .copionfo_tbl {margin-left: 0;width: 100%;}
#clean-about .copionfo_tbl th,#clean-about .copionfo_tbl td{display: block;line-height: 1.3em;}
#clean-about .copionfo_tbl th{padding-bottom: 0.2em;font-weight: bold;}
#clean-about .copionfo_tbl td{padding-top: 0.2em;}

}











/* お見積もり・お問い合わせ
ーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーー */



#quote-contact .spa_cer {
    max-width: 640px;
    margin: 100px auto 80px;
}

#quote-contact .spa_cer h1 {
    display: table;
    margin: 50px auto 50px;
    padding: 0.5em;
    border: solid 1px #83939c;
    border-radius: 20px;
    font-size: clamp(30px, 8vw, 38px);
    font-weight: bold;
    line-height: 1em;
    color: #83939c;
}



#cl-contact .spa_cer {
    max-width: 640px;
    margin: 100px auto 80px;
}

#cl-contact .spa_cer h1 {
    display: table;
    margin: 50px auto 50px;
    padding: 0.5em;
    border: solid 1px #83939c;
    border-radius: 20px;
    font-size: clamp(30px, 8vw, 38px);
    font-weight: bold;
    line-height: 1em;
    color: #83939c;
}






/* ===== フォーム全体 ===== */

div.wpcf7 {
max-width: 600px;
margin: 0 auto;
}


div.wpcf7cp-btns {
    margin: 4em auto;
    display: flex;
}

button.wpcf7cp-cfm-edit-btn {
    margin-right: 0px;
    margin-bottom: 20px;
}

button.wpcf7cp-cfm-edit-btn, button.wpcf7cp-cfm-submit-btn {
    display: block;
    width: 100%;
    max-width: 250px;
    margin: 24px auto 0;
    padding: 14px 32px;
    background: #2c6fad;
    color: #fff;
    border: none;
    border-radius: 4px;
    font-size: 15px;
    font-weight: 700;
    cursor: pointer;
    letter-spacing: 0.04em;
    transition: background 0.2s;
}



.wpcf7 .wpcf7-submit:disabled {
    opacity: 0.3;
}


.wpcf7 form label {
    display: block;
    font-size: 18px;
    font-weight: 600;
    color: #444;
}

.wpcf7 form label abbr,
.wpcf7 form fieldset abbr {
  color: #c0392b;
  text-decoration: none;
  margin-left: 4px;
  font-size: 11px;
}

/* ===== 姓・名の横並び ===== */
.cf7-row {
  display: flex;
  gap: 16px;
}

.cf7-row label {
  flex: 1;
}

/* ===== テキスト入力・メール・電話 ===== */
.wpcf7 input[type="text"],
.wpcf7 input[type="email"],
.wpcf7 input[type="tel"] {
  display: block;
  width: 100%;
  margin-top: 6px;
  padding: 10px 12px;
  border: 1px solid #ccc;
  border-radius: 4px;
  font-size: 15px;
  box-sizing: border-box;
  transition: border-color 0.2s;
}

.wpcf7 input[type="text"]:focus,
.wpcf7 input[type="email"]:focus,
.wpcf7 input[type="tel"]:focus {
  border-color: #2c6fad;
  outline: none;
  box-shadow: 0 0 0 3px rgba(44, 111, 173, 0.12);
}

/* ===== テキストエリア ===== */
.wpcf7 textarea {
  display: block;
  width: 100%;
  margin-top: 6px;
  padding: 10px 12px;
  border: 1px solid #ccc;
  border-radius: 4px;
  font-size: 15px;
  min-height: 140px;
  resize: vertical;
  box-sizing: border-box;
}

.wpcf7 textarea:focus {
  border-color: #2c6fad;
  outline: none;
  box-shadow: 0 0 0 3px rgba(44, 111, 173, 0.12);
}

/* ===== fieldset（ラジオ・同意） ===== */
.wpcf7 fieldset {
  border: none;
  padding: 0;
  margin: 0 0 50px 0;
}

.wpcf7 fieldset legend {
  font-size: 18px;
  font-weight: 600;
  color: #444;
  margin-bottom: 8px;
}

/* ===== ラジオボタン ===== */
.wpcf7 .wpcf7-radio .wpcf7-list-item {
  margin-right: 24px;
}

.wpcf7 .wpcf7-radio .wpcf7-list-item-label {
  font-size: 18px;
  font-weight: 400;
  cursor: pointer;
}

/* ===== 同意チェック ===== */
.wpcf7 .wpcf7-acceptance {
  font-size: 13px;
  font-weight: 400;
}

/* ===== 送信ボタン ===== */
.wpcf7 input[type="submit"] {
  display: block;
  width: 100%;
  max-width: 320px;
  margin: 24px auto 0;
  padding: 14px 32px;
  background: #2c6fad;
  color: #fff;
  border: none;
  border-radius: 4px;
  font-size: 15px;
  font-weight: 700;
  cursor: pointer;
  letter-spacing: 0.04em;
  transition: background 0.2s;
}

.wpcf7 input[type="submit"]:hover {
  background: #1a4f80;
}

/* ===== 確認画面（Confirm Plus 出力） ===== */
#wpcf7cpcnf table {
  width: 100%;
  border-collapse: collapse;
  margin-bottom: 24px;
  font-size: 14px;
}

#wpcf7cpcnf th {
  width: 30%;
  padding: 11px 14px;
  background: #f0f5fb;
  border: 1px solid #dde3ea;
  font-weight: 600;
  color: #2c6fad;
  text-align: left;
  vertical-align: top;
}

#wpcf7cpcnf td {
  padding: 11px 14px;
  border: 1px solid #dde3ea;
  color: #333;
  vertical-align: top;
  line-height: 1.7;
}

/* 戻る・送信ボタン（確認画面） */
#wpcf7cpcnf input[type="button"],
#wpcf7cpcnf input[type="submit"] {
  padding: 12px 28px;
  border-radius: 4px;
  font-size: 14px;
  font-weight: 600;
  cursor: pointer;
  transition: all 0.2s;
}

#wpcf7cpcnf input[type="button"] {
  background: #f0f0f0;
  border: 1px solid #ccc;
  color: #444;
  margin-right: 12px;
}

#wpcf7cpcnf input[type="button"]:hover {
  background: #e0e0e0;
}

#wpcf7cpcnf input[type="submit"] {
  background: #2c6fad;
  border: none;
  color: #fff;
  max-width: none;
  width: auto;
  margin: 0;
}

#wpcf7cpcnf input[type="submit"]:hover {
  background: #1a4f80;
}

/* ===== バリデーションエラー ===== */
.wpcf7-not-valid-tip {
  display: block;
  font-size: 12px;
  color: #c0392b;
  margin-top: 4px;
}

.wpcf7-not-valid {
  border-color: #c0392b !important;
}

.wpcf7-response-output {
  margin-top: 16px;
  padding: 12px 16px;
  border-radius: 4px;
  font-size: 13px;
}


.wpcf7-turnstile{
display: table;
margin: 0 auto 70px;
}

#wpcf7-f30-o1 a,
#wpcf7-f182-p183-o1 a{
color:#492fd6;
text-decoration: underline;
}







/* プライバシーポリシー
ーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーー */

#privacy-policy .post{
    max-width: 800px;
    margin: 100px auto;
}


#privacy-policy .post h1 {
    display: table;
    margin: 50px auto 50px;
    padding: 0.5em;
    border: solid 1px #83939c;
    border-radius: 20px;
    font-size: clamp(30px, 8vw, 38px);
    font-weight: bold;
    line-height: 1em;
    color: #83939c;
}

#privacy-policy .entry_content{
font-size: 16px;
}

#privacy-policy .post p, 
#privacy-policy .post ul, 
#privacy-policy .post ol, 
#privacy-policy .post dd, 
#privacy-policy .post pre, 
#privacy-policy .post hr {
    margin-bottom: 20px;
}

#privacy-policy .post h3 {
    color: #000000;
    border-bottom: 1px solid #000000;
    font-weight: bold;
    margin: 0 0 10px;
    font-size: 21px;
    text-align: left;
    padding-left: 10px;
}

#privacy-policy .post ul {
    list-style: square;
    margin: 0 0 18px 1.5em;
}

#privacy-policy .post .musubi{
text-align: right;
}


















