@charset "UTF-8";

/*!
Theme Name: cleanlife110
Template:   cocoon-master
Version:    1.1.0
*/

/************************************
** 子テーマ用のスタイルを書く
************************************/
/*必要ならばここにコードを書く*/

/************************************
** レスポンシブデザイン用のメディアクエリ
************************************/
/*1240px以下*/
@media screen and (max-width: 1240px) {
  /*必要ならばここにコードを書く*/
}

/*1023px以下*/
@media screen and (max-width: 1023px) {
  /*必要ならばここにコードを書く*/
}

/*834px以下*/
@media screen and (max-width: 834px) {
  /*必要ならばここにコードを書く*/
}

/*480px以下*/
@media screen and (max-width: 480px) {
  /*必要ならばここにコードを書く*/
}

/************************************
** 全体
************************************/

body{ background: #faf8f6; }

/************************************
** グローバルメニュー
************************************/
.navi-in > ul {
  justify-content: flex-end;
}

.fixed-header {
  box-shadow: 0 0 15px 5px rgb(0 0 0 / 10%);
  animation: slide_down_menu 0.5s ease !important;
}

/************************************
** ヘッダーモバイルボタン
************************************/
@media screen and (max-width: 769px) {
  /* メニュー の文字を表示させない　*/
  .navi-menu-icon {
    font-size: 25px;
    padding-top: 5px;
  }

 .mobile-menu-buttons .menu-caption {
    /* display: none; */
  }

  /*スライドインメニューを右から*/
  .navi-menu-content {
    left: auto;
    right: 0;
    transform: translateX(101%);
  }
}

/************************************
** header navi header-area-box contact-box
************************************/

.header-container-in.hlt-top-menu .navi {
    width: auto;
}

.header-area-box {
    padding: 10px;
}

.header-area-box span {
	font-size: 1.25em;
	font-weight: 700;
	color: #d50000;
}

.header-contact-box {
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 10px 20px 10px;
}
.header-contact-box .tel {
    padding-right: 30px;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
}
.header-contact-box .tel-inner {
    display: flex;
    font-size: 2em;
    line-height: 1.0;
    padding: 10px 0 0;
}
.header-contact-box .tel a {
    text-decoration: none;
    color: #222;
    padding-left: 10px;
}
.header-contact-box .tel p {
    font-size: 16px;
    background: #e91e63;
    color: #fff;
    padding: 0 2em;
}
.header-contact-box .tel-inner p {
	display:none;
    font-size: 14px;
    background: none;
    color: #000;
    text-align: right;
    padding: 5px 0;
    line-height: 1.0;
}

@media screen and (max-width: 769px) {
	.header-contact-box{ display:none; }
	.header-area-box {display:none;}
}


/************************************
** header
************************************/

.section-contents {
    width: 100%;
    margin: 0 auto;
}

.section-contents img {
    width: inherit;
}

@media screen and (max-width: 769px) {
	
}

/************************************
** トップへ戻るボタン
************************************/

.go-to-top-button {
  width: 60px;
  height: 60px;
  border-radius: 0px;
  font-size: 30px;
}

/************************************
** front-page
************************************/

.br-sp { display: none; }
.w100vw {
  position: relative;
  left: calc(50% - 50vw);
  right: calc(50% - 50vw);
  max-width: 100vw;
  width: 100vw;
}
.heading h2 {
  margin-top: 1em;
  margin-bottom: 1em;
  text-align: center;
  border: none;
  font-size: 36px;
  font-weight: 700;
}

.heading h2 span {
    font-size: 60px;
    line-height: 1.5;
    color: #d50000;
}
.heading h2 span:after {
    display: none;
}
.heading h2 span.p1 {
    color: #07945e;
}

@media screen and (max-width: 834px) {
  .br-sp {
    display: block;
  }
	.heading {
    margin: 20px 0;
  }
	.heading h2 {
		font-size: 22px;
		line-height: 1.5;
		margin-top: auto;
		text-align: center;
	}
	.heading h2 span {
		font-size: 28px;
	}

}

/* #sec_00 */
#sec_00 {
    margin-top: -40px;
}

#sec_00 p {
    font-size: 36px;
    font-weight: 700;
    text-align: center;
    margin-bottom: 0;
}
#sec_00 p .p2 {
    color: #e91e63;
}
#sec_00 p .p3 {
    color: #07945e;
/*     font-size: 48px; */
}

@media screen and (max-width: 834px) {
	#sec_00 p {
	  font-size:20px;
	}
	#sec_00 p .p2 {
      font-size: 22px;
	}
	#sec_00 p .p3 {
   font-size: 20px;
 }
}

/* #sec_01 */

#sec_01 {
  margin-top: -40px;
  margin-bottom: auto;
  background: #fff8e1;
}
#sec_01 .p1 {
  text-align: center;
  font-size: 36px;
  font-weight: 700;
  margin-bottom: auto;
}
#sec_01 .p2{
  text-align: center;
  font-size:60px;
  font-weight: 700;
  margin-bottom: auto;
}

@media screen and (max-width: 834px) {
  #sec_01 .p1 {
      font-size:20px;
  }
  #sec_01 .p2{
      text-align: center;
      font-size:30px;
  }
}

/* #sec_02 */

#sec_02 .wrap {
    width: 1256px;
    padding: 1.8em 29px;
    margin: 0 auto;
}

#sec_02 .inner {
  border: 2px solid #29b6f6;
  background: #e3f2fd;
  padding: 1em;
}
#sec_02 .inner ul {
    font-size: 32px;
}

#sec_02 .inner .p1 {
    color: #d50000;
    font-weight: 700;
}

@media screen and (max-width: 834px) {
  #sec_02 .wrap {
	width: auto;
	padding: inherit;
	margin: 0 auto;
  }
  #sec_02 .inner {
    padding: 0.5em;
  }
  #sec_02 .inner .block-box {
    padding: 1em 0;
  }
  #sec_02 .inner ul {
      font-size: 20px;
  }
}

/* #sec_03 */

.item .headingBox {
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
  border-bottom: solid 5px #d50000;
  margin-bottom: 50px;
  padding-bottom: 10px;
}
.item .headingBox-inner {
  position: relative;
  line-height: 1;
  font-size: 5rem;
  margin-right: 10px;
  width: 160px;
}
.skew {
  display: inline-block;
  position: relative;
  -webkit-transform: skewX(-10deg);
  transform: skewX(-10deg);
}
.item .headingBox-inner sup {
  font-size: .35em;
  letter-spacing: .1em;
  position: absolute;
  left: 0;
  top: 0;
  vertical-align: 1.7em;
}
.item .headingBox-inner span .num {
  display: inline-block;
  margin-left: 6rem;
  margin-top: 1rem;
}
.headingBox h3 {
  display: block;
  opacity: 1;
  position: relative;
  width: 100%;
  font-size: 4rem;
  margin: 0;
  padding: 0 0 0 30px;
  border-style: none;
}

#sec_03 .inner {
  font-size: 1.25em;
  background: #fff;
  padding: 30px;
  margin: 0 30px 60px 30px;
  margin-bottom: 60px;
}
#sec_03 .inner p {
  margin-bottom: 1em;
}
#sec_03 .inner .p3 {
  font-size: 1.75em;
  margin-bottom: 1em;
}
#sec_03 .inner .p3.sp {
  display:none;
}

@media screen and (max-width: 834px) {
	.item .headingBox {
		align-items: flex-end;
		margin-bottom: 5vw;
		padding-bottom: 2vw;
		position: relative;
	}
	.item .headingBox-inner {
		font-size: 3rem;
		margin-bottom: 0;
		width: inherit;
	}
	.item .headingBox-inner sup {
		font-size: 4.6vw;
	}
	.item .headingBox-inner span .num {
		font-size: 8vw;
		margin-left: 4vw;
		margin-right: 7vw;
		margin-top: 4vw;
	}
	.headingBox h3 {
		font-size: 8vw;
		line-height: 1.2;
		padding: 0;
	}

  #sec_03 .inner {
    margin: auto;
    margin-bottom: 1em;
    padding: 16px 10px;
  }
  #sec_03 .inner .p3 {
    font-size: 1.25em;
    margin-bottom: 1em;
  }
  #sec_03 .inner .p3.sp {
    display: block;
  }
  #sec_03 .inner .p3.pc {
    display: none;
  }
}

/* #sec_04 */

#sec_04 {
    background: url(https://cleanlife110.com/wp-content/uploads/2021/09/bg_09_1200x600.jpg);
    background-attachment: fixed;
    background-repeat: no-repeat;
    background-position: center center;
    background-size: cover;
    background-color: #fff;
}

#sec_04 .wrap {
    width: 1256px;
    padding: 1.8em 29px;
    margin: 0 auto;
}

#sec_04 .inner {
    display: flex;
    justify-content: center;
    align-items: center;
}

#sec_04 .inner .inner-column {
    padding: 10px;
}

@media screen and (max-width: 834px) {
	#sec_04 .wrap {
		width: auto;
	    padding: 10px;
		margin: 0 auto;
	}
	#sec_04 .inner {
		flex-wrap: wrap;
		justify-content: inherit;
	}

	#sec_04 .inner .inner-column {
		width: 50%;
	}

	#sec_04 .inner .wp-block-image {
		margin-bottom: 0;
	}
}


/* #sec_08 */

/* dl{
     margin:80px;
     line-height:1.8em;
     font-size: 1.4em;
     overflow: hidden;
     _zoom: 1;
}
 */
dl dd,
dl dt{
     text-indent: -2.6em;
     padding: 0 20px 0px 50px;
}
dl dt{
     margin:20px 20px 0 0;
}
dl dd:first-letter,
dl dt:first-letter{
     font-size: 1.6em;
     font-weight: bold;
     margin-right:10px;
     padding:5px;
     font-family: 'Nunito', sans-serif;
}
dl dd{
     margin: 20px 0 -1px 0;
     padding-bottom:15px;
     border-bottom: 1px #000 dotted;
}
dl dt:first-letter{
     color: #0F78E1;
}
dl dd:first-letter{
     color: #ff6767;
}

@media screen and (max-width: 834px) {
	.article dd {
		margin-left: 0;
	}

	dl dt {
		margin: 0;
	}

	dl dd {
		margin: 0;
		border: none;
	}
}


/* #sec_07 */

#sec_07 {
  background: #e1f5fe;
}
#sec_07 .wrap {
  width: 1256px;
  padding: 1.8em 29px;
  margin: 0 auto;
}
#sec_07 ul {
  list-style: none;
  padding: 0;
  margin: 0;
}
#sec_07 ul li {
  display: flex;
  background: #fff;
  border: solid 0.4em #03a9f4;
  height: 15em;
  align-items: flex-start;
  margin-bottom: 5.3rem;
  position: relative;
}
#sec_07 ul li.step:before, #sec_07 ul li.step:after  {
    content: "";
    border-top: 3rem solid #fff;
    border-right: 1.7rem solid transparent;
    border-left: 1.7rem solid transparent;
    position: absolute;
    top: 100%;
    left: 50%;
    transform: translateX(-50%);
    z-index: 2;
}
#sec_07 ul li.step:after  {
    border-top: 3.8rem solid #03a9f4;
    border-right: 2.3rem solid transparent;
    border-left: 2.3rem solid transparent;
    z-index: 1;
}
#sec_07 .inner .image {
	width: 30%;
	text-align: center;
	padding: 30px;
}
#sec_07 .inner .txt {
    padding: 10px 0;
}
#sec_07 .inner .txt .inner-title {
    font-size: 2em;
    font-weight: 700;
    color: #3f51b5;
}

@media screen and (max-width: 834px) {
	#sec_07 .wrap {
		width: auto;
		padding: 10px;
	}
	#sec_07 ul li {
		display: block;
		padding: 1rem;
		border: solid 0.45rem #03a9f4;
		height: auto;
	}
	#sec_07 ul li.step:after{
		border-top-width: 3.6rem;
		border-right-width: 2.2rem;
		border-left-width: 2.2rem;
	}
	#sec_07 .inner .image {
		width: 100%;
		padding: initial;
	}
	.sec_07_wrap .inner .txt {
		padding: 30px 0 0;
	}
    #sec_07 .inner .txt p {
		margin: 0;
	}

}

/* #sec_13 施工時も施工後も */

#sec_13 {
/*     background: url(https://cleanlife110.com/wp-content/uploads/2021/09/main_01_1200x600.jpg); */
    background-attachment: fixed;
    background-repeat: no-repeat;
    background-position: center center;
    background-size: cover;
    background-color: #faf8f6;
	margin-bottom: 0;
}

#sec_13 .wrap {
    width: 1256px;
    padding: 1.8em 29px;
    margin: 0 auto;
}

#sec_13 .inner {
    display: flex;
    justify-content: center;
    align-items: center;
}

#sec_13 .inner .inner-column {
    padding: 10px;
}

@media screen and (max-width: 834px) {
	#sec_13 .wrap {
		width: auto;
	    padding: 10px;
		margin: 0 auto;
	}
	#sec_13 .inner {
		flex-wrap: wrap;
		justify-content: inherit;
	}

	#sec_13 .inner .inner-column {
		width: 50%;
	}

	#sec_13 .inner .wp-block-image {
		margin-bottom: 0;
	}
}

/************************************
** to contact
************************************/
.sec_09{
  background: url(https://cleanlife110.com/wp-content/uploads/2021/09/bg_06_1200x600.jpg);
	background-attachment: fixed;
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
  background-color: #fff;
  margin-bottom: 0;
}
.sec_09_inner {
  padding: 90px 0 90px;
  position: relative;
  width: 960px;
  margin: 0 auto;
  z-index: 10;
}
.sec_09_inner .box {
  background: rgba(255,255,255,0.8);
  width: 770px;
  margin: 0 auto;
  padding: 40px 80px;
}
.sec_09 h2 {
  border-style: none;
  font-weight: 700;
  text-align: center;
  margin: 1em;
  font-size: 1.7em;
}
.sec_09 h2 > span::after {
	background: none;
}
.sec_09_inner .box p {
  text-align: center;
  font-size: xx-large;
  font-weight: 700;
  color: #0000ff;
}
.sec_09 .info_tel_box .txt1 {
  display: block;
  font-size: 1.5em;
  letter-spacing: 0px;
  padding-top: 0px;
  padding-bottom: 10px;
  margin-bottom: 12px;
  border-bottom-width: 1px;
  border-bottom-style: solid;
}
.sec_09 .tel-inner {
  font-size: 4em;
  text-align: center;
  color: #222;
  line-height: 1.2;
}
.sec_09 .tel-inner a {
  text-decoration: none;
  color: #222;
  font-weight: 700;
}
.sec_09 .inner .txt3 {
  display: block;
  text-align: right;
}
.sec_09 .info_mail_box {
  margin: 20px;
}
.sec_09 .info_mail_box_inner {
  font-size: 2em;
  text-align: center;
  color: #222;
  line-height: 1.2;
}

@media screen and (max-width: 834px) {
  .sec_09{
    display: none;
  }
	.sec_09_inner {
		padding-top: calc(90 * 0.15625vw);
		padding-bottom: calc(90 * 0.15625vw);
		width: auto;
	}
	.sec_09_inner .box {
		width: 100%;
		position: relative;
		width: 95vw;
		padding: 20px;
		margin: 0 auto;
	}
	.sec_09_inner h2 {
		font-size: 21px;
		line-height: 1.4;
		padding: 0;
		margin: 20px 0;
	}
	.sec_09_inner .box p {
		margin: 0 0 10px;
		font-size: 24px;
		text-align: left;
	}
	.sec_09_inner .info_tel_box .txt1 {
	margin: 0 0 10px;
	line-height: 1.5;
	}
	.sec_09 .tel-inner {
		font-size: 2.0em;
	}
	.sec_09 .info_tel_box .inner .txt3 {
		text-align: center;
	}
}
/************************************
** to contact sec_09_sp
************************************/
#sec_09_sp{
  display: none;
}
@media screen and (max-width: 834px) {
  #sec_09_sp{
    display: block;
  }
  #sec_09_sp .contant-tel {
    margin-bottom: 1em;
  }
  #sec_09_sp .contact-insta {
  	margin-bottom: 1em;
  }
  #sec_09_sp .contact-line {
  	margin-bottom: 1em;
  }
}


/************************************
** モバイルフッターメニュー
************************************/

#menu-menu-8 {
    border-top: 1px solid #fff;
}
#menu-menu-8 .menu-button {
    border-right: 1px solid #fff
}
#menu-menu-8 .menu-button:nth-child(1) {
    background: #3F51B5;
}
#menu-menu-8 .menu-button:nth-child(2) {
    background: #9d5d00;
}
#menu-menu-8 .menu-button:nth-child(3) {
    background: #006800;
}
#menu-menu-8 .menu-button:nth-child(4) {
    background: #70004b;
    border-right: none;
}
#menu-menu-8 li a span {
    color: #fff;
}




/* 
#menu-menu-7 {
    background: #1e73be;
}
#menu-menu-7 .menu-button {
    line-height: 1.8;
}
#menu-menu-7 .menu-button .menu-button-in {
    display: flex;
    justify-content: center;
    align-items: center;
}
#menu-menu-7 .menu-button .menu-button-in .menu-icon {
    display: none;
    width: auto;
    text-align: right;
}
#menu-menu-7 .menu-button .menu-button-in .menu-caption {
    width: auto;
    font-size: 1.2em;
    color: #ffffff;
    font-weight: 700;
    letter-spacing: 0.05em;
    transform: scale(1.5, 1.3);
	opacity: 1;
}
#menu-menu-7 .menu-button .menu-button-in .menu-caption i {
    padding-right: 0.5em;
}
*/


/************************************
** お問い合わせフォーム
************************************/

.contact02 {}

.inquiry-table {
    border-collapse: collapse;
    text-align: left;
    width: 100%;
    line-height: 1.8;
    margin-bottom: 20px;
}

.inquiry-table th {
    background-color: #1e73be;
    color: #fff;
    border: 1px solid #e6e6e6;
    padding: 20px;
}

.inquiry-table .lang-en {
    font-size: 14px;
    line-height: 1.2;
}

span.haveto {
    padding: 10px;
    color: #ffcc00;
	display:none;
}
span.any {
    padding: 10px;
    color: #ffcc00;
	display:none;
}
.inquiry-table td {
    background-color: #fff;
    border: 1px solid #ddd;
    padding: 20px;
}

.inquiry-table td .caption {
    line-height: 1.2;
    font-size: 14px;
    margin-top: 10px;
}

.submit-box {
    text-align: center;
    border: 1px solid #1e73be;
    padding: 30px 0;
}

.box-inner-1 {
    padding: 30px 0;
}

.submit {
    width: 50%;
    margin: 0 auto;
}

input[type=submit] {padding: 20px;font-size: 20px;background-color: #1e73be;color: #fff;transition: 0.5s all;}

input[type=submit]:hover {
    background-color: #fff;
    border: 1px solid #1e73be;
    color: #1e73be;
}

@media screen and (max-width:767px) {
	.inquiry-table th, .inquiry-table td {
		padding: 10px;
	}
	.submit { width: 80%; }
}

/* Box menu class="ex-box-menu" */
.ex-box-menu .box-menu-icon { color: #000; }
.box-menu:hover {
    box-shadow: inset 2px 2px 0 0 #000000, 2px 2px 0 0 #000000, 2px 0 0 0 #000000, 0 2px 0 0 #000000;
}


/************************************
** content-blog.php
************************************/

.blog-images {
    display: flex;
    justify-content: left;
}

.blog-images > div {
    padding: 0 40px 0 0;
}

.blog-images > div img {
    width: auto;
    height: 300px;
}


@media screen and (max-width:767px) {
	.blog-images {
		justify-content: center;
		flex-wrap: wrap;
	}

	.blog-images > div {
		padding: 20px 0;
	}

	.blog-images > div img {
		height: auto;
	}
}


/********************************************
** ショートコード [post_list num="5" post_type="blog"]
*********************************************/


.blog-list .heading-box {
    display: flex;
    justify-content: space-between;
}

.blog-list .heading-box a {
    text-decoration: none;
    font-size: 1.2em;
    font-weight: 700;
}

.blog-list .text_01 {
    border-bottom: 1px solid #ddd;
    margin-bottom: 20px;
}

@media screen and (max-width:767px) {
	.blog-list .heading-box {
		flex-wrap: wrap;
	}
	.blog-list .heading-box p {
		width: 100%;
		text-align: right;
		margin-bottom: 1em;
	}
}

/********************************************
** tableのデザイン
*********************************************/

.price-table table th {
    background: #eee;
    width: 30%;
    border: 1px solid #ddd;
}

.price-table table td {
    width: 70%;
    padding-left: 1em;
    border: 1px solid #ddd;
}

/********************************************
** 一覧のデザイン - blog
*********************************************/

#list {
    display: flex;
    flex-wrap: wrap;
}
a.entry-card-wrap.a-wrap.border-element.cf {
    width: 50%;
}
.entry-card-content.card-content.e-card-content {
    margin: 0;
    position: absolute;
    width: 100%;
    bottom: 0;
    padding: 0.6em;
    background: linear-gradient(180deg,transparent,#555);
    color: #fff;
    max-height: 40%;
    overflow: hidden;
    transition: all .5s;
}

figure.entry-card-thumb.card-thumb.e-card-thumb {
    float: none;
    width: 100%;
}

@media screen and (max-width:767px) {
	a.entry-card-wrap.a-wrap.border-element.cf {
    	width: 100%;
	}
}

/********************************************
** お客様の声ループ - customer-voice-loop
*********************************************/

.cv-list {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
}
.cv-list div {
    width: 48%;
}
@media screen and (max-width:767px) {
	.cv-list div {
		width: 48%;
	}
}

/********************************************
** サイドバー 
*********************************************/

#sidebar .su-post {
    margin-bottom: 1.5em;
}
#sidebar .su-post-title {
    font-size: 1.0em;
}
#sidebar .su-post-title a {
    color: #000;
}

/* 害獣・害虫駆除 */
.new-entry-cards.widget-entry-cards.no-icon.cf.card-large-image.large-thumb-on {
    display: flex;
    justify-content: space-around;
    align-items: center;
    flex-wrap: wrap;
}
a.new-entry-card-link.widget-entry-card-link.a-wrap {
    width: 48%;
}

/********************************************
** お問い合わせBOX
*********************************************/

#sec_contact {
  background-image: url(https://cleanlife110.com/wp-content/uploads/2021/12/22396873_s.jpg);
  background-attachment: fixed;
  background-size: cover;
  margin-bottom: 0;
  position:relative;
}
#sec_contact::before {
  box-sizing: border-box;
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.7);
}

#sec_contact .box {
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
    padding: 20px;
    position: relative;
    color: #fff;
}

#sec_contact .box p {
    text-align: center;
    margin-bottom: 1em;
    font-size: 1.5em;
}

#sec_contact .tel-inner {
    font-size: 3.0em;
    font-weight: 700;
}

#sec_contact .tel-inner a {
    text-decoration: none;
    color: #fff;
    letter-spacing: 11px;
}

