@charset "utf-8";

@import url('https://fonts.googleapis.com/css?family=Noto+Sans+JP:400,500,700,900|Roboto:100,100i,300,300i,400,400i,500,500i,700,700i&subset=japanese');
@import url('https://fonts.googleapis.com/css?family=Noto+Serif+JP:200,300,400,500,600,700,900&display=swap&subse t=japanese');

.clearfix:after {
	overflow: hidden;
	visibility: hidden;
	height: 0;
	display: block;
	font-size: 0;
	content: " ";
	clear: both;
}

/*	レイアウト
---------------------------------*/ 
body {
	width: 100%;
	line-height: 1.6;
	color: #333;
	font-family: "source-han-serif-japanese", serif;
	counter-reset:count-number;
}

#wrapper {
  overflow-y: visible; /* sticky が効くように縦方向は visible に */
  overflow-x: clip;
}

.special_cleaning_wrap {
	background: #f8f8f8b3; 	
}

.section { /* セクションの共通枠（任意） */
  width: 100%;
  position: relative;
}

.sc-what_ttl_wrap, #sc-qualification {
	background: #f8f8f8 url(../images/top2/draw_case.svg) no-repeat 9.5vw top / 30%;
    background-position: right -50px top -110px;
}


/* PRエリア - 白背景 */
.work_pr_area {
}
.work_pr_inner {
	background: #fdf9f2;
	margin: auto;
	max-width: 860px;
	position: relative;
	border: dotted 2px #758d9b;
	padding: 2vh 0 0 0;
}
.explain_wrap {
    display: flex;
    padding: 4vh 1vw 4vh 1vw;
    column-gap: 2rem;
    justify-content: space-evenly;
}

.cta-box {
	text-align: center;
}

.cta-msg {
    position: relative;
    font-weight: 700;
    font-size: clamp(1.6rem, 1.65rem + 0.8vw, 1.75rem);
    color: #333;
    margin-bottom: 2.5rem;
    font-style: italic;
    border: solid 1px #583823;
    border-radius: 2rem;
    background: #fabe00;
    padding: 1rem 0 1rem 0;
}
.cta-msg::after {
    content: "";
    position: absolute;
    bottom: -17px;
    left: 50%;
    transform: translateX(-50%);
    width: 0;
    height: 0;
    border-left: 16px solid transparent;
    border-right: 16px solid transparent;
    border-top: 17px solid rgb(88 56 35);
}

.cta-msg::before {
    content: "\f118";
    font-family: "Font Awesome 6 Free";
    font-weight: 900;
    position: absolute;
    left: 1rem;
    top: 14px;
    font-size: clamp(2.0rem, 2.2rem + 2vw, 3.6rem);
    font-style: normal;
}

.cta-main {
  font-size: clamp(1.4rem, 1.5rem + 1vw, 1.70rem);
  color: #444;
	font-weight: bold;
}

.cta-highlight {
font-size: clamp(1.6rem, 1.8rem + 3vw, 2.05rem);
    color: #603d9b;
    font-weight: bold;
    margin: 1.5rem 0 1.0rem;
}

.cta-button {
    display: inline-block;
    padding: 0.6em 1.5em;
    font-size: 1.60rem;
    color: #fff;
    background: #a67ee5;
    border-radius: 30px;
    text-decoration: none;
    box-shadow: 0 2px 6px rgba(0, 0, 0, 0.1);
    transition: all 0.3s ease;
}

.cta-button:hover {
  background: #8d66d1;
}

.ex_photo {
	flex-basis: 55%;
}
.explain {
	flex-basis: 45%;
}
.line_cta_ttl {
	text-align: center;
	padding: 2vh 0 0 0;
	color: #d92500;
	font-weight: bold;
	font-size: clamp(1.35rem, 1.65rem + 2vw, 2.1rem);
}

.catch_tit {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    background: #;
    padding: 1.7em 2.2em 1.7em 2em;
    font-size: 1.8rem;
    font-weight: 600;
    color: #8062a7;
    letter-spacing: 0.08em;
    position: relative;
    z-index: 2;
    margin: 0 auto;
}

.catch_badge {
   position: absolute;
    display: inline-block;
    background: linear-gradient(0deg, #6b2fa1, #b496d0);
    color: #fff;
    border-radius: 1em;
    font-size: clamp(1.07rem, 1.4rem + 1vw, 1.8rem);
    font-weight: bold;
    padding: 0.55em 1.2em 0.55em 0.8em;
    box-shadow: 0 1px 5px #fff0a855;
    vertical-align: middle;
    top: -26px;
    left: -38px;
}

.catch_badge i {
  margin-right: 0.55em;
  color: #eecb27;
}

.catch_msg {
    color: #8062a7;
    display: flex;
	flex-direction: column;
    font-size: 1.07em;
    letter-spacing: 0.04em;
    padding: 1.5rem 0 0 0;
}

.catch_logo {
  color: #7142ad;
  background: #e4dbfa;
  border-radius: 0.7em;
  padding: 0.05em 0.5em;
  font-weight: bold;
  margin: 0 0.15em;
  box-shadow: 0 0.5px 4px #b89fe422;
}


/*	メインイメージ
---------------------------------*/
.main-img-otr {
	margin-top:0;
    width: calc(1200 / var(--screen-xl) * 100%);
    background: url(../images/top2/1purple_all_bg_header.png);
    padding-right: 0;
    padding-left: 0;

}
.main-img-otr:before,
.main-img-otr:after {
	display: block;
	content: "";
	position: absolute;
	right: 100%;
	top: 0;
	width: 100vw;
	height: 100%;
	background: rgb(248 248 251);
	background: #fff;
	z-index: 100;
}
.main-img-otr:after {
	right: auto;
	left: 100%;
}
.main-img-otr .bx-viewport {
	overflow: visible !important;
}

.main_visual {
	margin: auto;
	text-align: center;
}

.main-img {
	width: 100%;
	height: 560px;
}
.main-img.img01 {
	background: url(../images/top/img_main01.png) no-repeat center top;
	background-size: cover;
}
.main-img.img02 {
	background: url(../images/top/img_main02.png) no-repeat center top;
	background-size: cover;
}
.main-img.img03 {
	background: url(../images/top/img_main03.png) no-repeat center top;
	background-size: cover;
}
.main-img-otr h2 {
	position: absolute;
	left: 50%;
	top: 55%;
	transform: translate(-50%,-50%);
	-webkit-transform: translate(-50%,-50%);
	padding: 0 5.4%;
	width: 100%;
	max-width: 1110px;
	text-align: left;
	z-index: 99;
}

/* 基本レイアウト */
.workflow-content {
	position: relative;
	margin: 0 auto;
	max-width: 1110px;
}
#sub_contents h3{
	position: relative;
    margin: 0 0 50px;
    text-align: center;
    line-height: 1;
    max-width: 800px;
    margin: 5vh auto 8vh;
}
.news .section-inner {
}

.news_list {
	padding: 2vh 2vw;
	background: #f2f2f2;
}

/* service--親：横並び（PC）→ 縦積み（SP） */
.tp_bnarea{
  display: flex;
  gap: clamp(12px, 2vw, 24px);
  align-items: stretch;                 /* 子の高さを揃える */
  max-width: clamp(1024px, 90vw, 1280px);
  margin: clamp(16px, 3vw, 40px) auto;
  padding: 0;
}

/* 子カード共通 */
.tp_bnarea > .kizunaya_official,
.tp_bnarea > .line_official{
flex: 1 1 auto;
    display: flex;
    flex-direction: column;
    gap: .4rem;
    background: #fff;
    border: 1px solid #eee;
    border-radius: 10px;
    padding: clamp(12px, 2vw, 18px);
    box-shadow: 0 2px 8px rgba(0, 0, 0, .06);
    box-sizing: border-box;
}

/* 見出し・説明の体裁 */
.tp_bnarea h3{
  font-size: clamp(1.35rem, 1rem + 1vw, 1.8rem);
  margin: 0 0 .2em;
  line-height: 1.3;
}

.tp_bnarea h3 {
    position: relative;
    padding: .3em 0 .2em 1.5em;
    border-bottom: 3px solid #33096d;
    color: #333333;
}

.tp_bnarea h3::before {
    position: absolute;
    top: 0;
    left: .3em;
    transform: rotate(55deg);
    height: 11px;
    width: 12px;
    background: #9362c1;
    content: '';
}

.tp_bnarea h3::after {
    position: absolute;
    transform: rotate(15deg);
    top: .6em;
    left: 0;
    height: 8px;
    width: 8px;
    background: #9362c1;
    content: '';
}

.tp_bnarea p{
  margin: 0 0 .8em 2em;
  font-size: clamp(1.1rem, .95rem + .6vw, 1.35rem);
  color: #555;
}

/* 画像リンクはカード内いっぱい・角丸継承 */
.tp_bnarea a{
  display: block;
  margin-top: auto;                     /* テキスト量が違っても下に揃う */
  border-radius: 8px;
  overflow: hidden;
}

/* 画像をレスポンシブに */
.tp_bnarea img{
  width: 100%;
  height: auto;
  display: block;
  object-fit: cover;                      /* 比率維持で縮小拡大 */
}



/* 大画面（フルHD以上）向け調整 */
@media (min-width: 1440px) {
  .section-inner {
    max-width: 1280px;
    padding-inline: 64px;
    padding-block: 80px;
  }
  .spc-intro .section-inner {
	padding-block: 0;
    padding-top: 5rem;
  }
  .qualification .section-inner {
	  padding-block: 5vh;
  }
}

@media (min-width: 1440px) {
	.area-hero-section .section-inner {
		background: #fff;
		padding: 8vh 0em 0vh;
	}
    .case-visual-area .section-inner {
        max-width: 1280px;
        padding-inline: 64px;
        padding-block: 5vh;
    }
	.case-benefit-flow 	.section-inner {
		max-width: 1280px;
        padding: 8vh 8vw 3vh 8vw;
	}
	.case-meta-section .section-inner {
		max-width: 1280px;
        padding-inline: 64px;
        padding-block: 80px;
	}
	.expertise_wrap .section-inner {
        padding-inline: 0vw;
        padding-block: 0vh;
	}
	.case-summary-highlight-section .section-inner {
        max-width: 920px;
        padding-inline: 0;
        padding-block: 0px;
		background: #fff;
		border-radius: 20px;
		padding-inline: 3vw;
		padding-top: 2vh;
		box-shadow: 0 3px 18px #8d8d8daa;
	}
	.case-content-section .temp_inner {
		max-width: 920px;
        padding-inline: 0;
        padding-block: 0px;
		padding:  0 0vw 12vh 0vw;
	}
	.foot_pr_eria .section-inner {
		padding-inline: 0;
        padding-block: 6vh;
	}
	.area-support .section-inner {
		padding: 40px 20px;
        max-width: 1110px;
	}
	.groupcampany_lineservice .section-inner {

    }

	
	/* 作業一覧ページ */
	.case-list-section .section-inner {
        padding-inline: 0;
        padding-block: 3vh;
	}
	/* 特殊清掃ページ */
	.about-special_cleaning_wrap .section-inner {
        max-width: 1280px;
        padding-inline: 64px;
        padding-block: 80px;
	}
	.ttl_case {
		background-position: right -50px top -110px;
	}
}



	.cmn-guide-area {
		  width: 100%;
		  max-width: 44.5%;
		  margin: 0 auto;
	}



.area-feature-inner {
	max-width: 1120px;
	margin: auto;
	padding: 0 4vw 0 4vw;
}


/*	こころ屋3つの特徴 */

.feature-header {
	display: flex;
	justify-content: left;
    align-items: center;
	padding: 0 0 1rem 0;
}

.feature-list {
	display: flex;
    flex-wrap: wrap;
}

.area-feature-section li {
        margin: 0 5.42% 0 0;
        padding: 0 10px 25px;
        width: 29.72%;
        max-width: 330px;
        border: 2px solid #ccc;
        border-radius: 10px;
        background: #fff;
}

.cmn-guide-company table th {
display: table-cell;
    padding-left: 40px;
    width: 33%;
    background: #9261c1ba;
    border-right: 1px solid #fff;
    color: #fff;
    text-align: left;
    vertical-align: middle;
}
.cmn-guide-company table td {
	padding: 9px 15px 10px 30px;
	background: #f2f2f2;
	line-height: 1.7;
}
@media screen and (max-width:1280px) {
	.news .section-inner {
	}
}

@media screen and (max-width:1110px) {
.hd-inr {
	padding-left: 15px;
	padding-right: 15px;
}
.hd-logo {
	max-width: 320px;
}
.hd-tel {
	margin: 0 15px 0 0;
	max-width: 300px;
}
.ab_sp_cleaning {
    background: #f8f8fb url(../images/top2/010.png) no-repeat 12% 0% / 45%;
    padding: 5.5em 4vw 7vh 4vw;
}


.about-special_cleaning {
    padding-bottom: 1vh;  
}

.cmn-works .section-inner {
    padding-top: 0em;
}
	

	
.area-feature-inner {
	padding: 0 4vw 4vh 4vw;
}

    .area-feature-section li {
      margin: 0 5.42% 0 0;
      padding: 0 10px 25px;
      width: 29.72%;
      max-width: 330px;
      border: 2px solid #ccc;
      border-radius: 10px;
      background: #fff;
    }	
	

	
	.cmn-guide-area {
      width: 100%;
      max-width: 100%;
      margin: 0 auto;
    }
	.cmn-guide-company {
      width: 100%;
      max-width: 100%;
    }
}

@media screen and (max-width: 1024px) {
.hd-inr {
	padding-left: 15px;
	padding-right: 15px;
}
.hd-logo {
	max-width: 255px;
}
.hd-tel {
	max-width: 255px;
}
.hd-sns {
	max-width: 83px;
}
.hd-sns img {
	display: block;
}
.hd-mail {
	max-width: 105px;
}

.about-special_cleaning {
    padding-bottom: 6vh;  
}
.area-feature-section li {
	padding: 0 10px 25px;
}	
	.news .section-inner {
}
}

@media screen and (max-width: 768px) {
.hd-logo {
	margin: 0;
	width: 120px;
}
.hd-inr {
	padding: 10px;
}
.hd-tel {
	position: absolute;
	right: 45px;
	top: 11px;
	margin: 0 10px 0 0;
	width: 40px;
	height: 40px;
	border: 2px solid #00b4ff;
}
.hd-tel a {
	display: block;
	position: relative;
	padding: 0;
	width: 100%;
	height: 100%;
}
.hd-tel a:before {
	display: block;
	content: "";
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
	-webkit-transform: translate(-50%,-50%);
	background: url(../images/common/icon_hd_tel.png) no-repeat center center;
	width: 25px;
	height: 21px;
	background-size: contain;
}
.hd-sns {
	margin-right: 100px;
	max-width: 63px;
}
.hd-tel p,
.hd-tel span,
.hd-mail {
	display: none;
}

/* -- CTA --*/
.work_pr_inner {
   max-width: 740px;
}
.catch_badge {
    left: -19px;
}
	
.ab_sp_cleaning {
    background: #f8f8fb url(../images/top2/010.png) no-repeat 12% 0% / 45%;
    padding: 5.5em 4vw 7vh 4vw;
}	
	
.feature-header {
	display: flex;
    margin-top: 0px;
    padding: 0.15em 0 0 0;
    align-items: center;
	justify-content: center;
}	
	
.feature-header h4 {
    text-align:center;
}
	
.feature-list {
    display: flex;
    flex-wrap: wrap;
	flex-direction: column;
}	
.area-feature-section li {
        margin: 0 0 2vh 0 ;
        padding: 0 10px 25px;
        width: 100%;
        max-width: 100%;
        background: #fff;
    }
}


@media screen and (max-width: 425px) {
  .catch_badge {
    left: 60px;
  }
  .explain_wrap {
	flex-direction: column;
    padding: 4vh 4vw 4vh 4vw;
  }
	.ex_photo {
    flex-basis: 55%;
    margin-bottom: 2vh;
  }
	
	/* 親：横並び（PC）→ 縦積み（SP） */
.tp_bnarea{
  display: flex;
	flex-wrap: wrap;
  gap: clamp(12px, 2vw, 24px);
  align-items: stretch;                 /* 子の高さを揃える */
  max-width: clamp(1024px, 90vw, 1280px);
  margin: clamp(16px, 3vw, 40px) auto;
  padding: 0;
}
	
/* Safari (iOS/macOS) 限定ハック */
@supports (-webkit-touch-callout: none) {
  .tp_bnarea > .kizunaya_official,
  .tp_bnarea > .line_official {
    min-height: 0; /* iOS Safari バグ回避 */
height: 300px;
  }
}	
	
.tp_bnarea img {
  width: 100%;
  height: auto;
  display: block;
  object-fit: cover;
}
/* 子カード共通 */
.tp_bnarea > .kizunaya_official,
.tp_bnarea > .line_official{
  flex: none;                          /* 2枚を均等幅で */
  display: block;
  flex-direction: column;               /* 見出し→文→画像 の縦並び */
  gap: .4rem;
  background: #fff;
  border: 1px solid #eee;
  border-radius: 10px;
  padding: clamp(12px, 2vw, 18px);
  box-shadow: 0 2px 8px rgba(0,0,0,.06);
  box-sizing: border-box;
  overflow: visible;
  width: 100%;
}

/* 見出し・説明の体裁 */
.tp_bnarea h3{
  font-size: clamp(1.35rem, 1rem + 1vw, 1.8rem);
  margin: 0 0 .2em;
  line-height: 1.3;
}

.tp_bnarea h3 {
    position: relative;
    padding: .3em 0 .2em 1.5em;
    border-bottom: 3px solid #33096d;
    color: #333333;
}

.tp_bnarea h3::before {
    position: absolute;
    top: 0;
    left: .3em;
    transform: rotate(55deg);
    height: 11px;
    width: 12px;
    background: #9362c1;
    content: '';
}

.tp_bnarea h3::after {
    position: absolute;
    transform: rotate(15deg);
    top: .6em;
    left: 0;
    height: 8px;
    width: 8px;
    background: #9362c1;
    content: '';
}


.tp_bnarea p{
  margin: 0 0 .8em 2em;
  font-size: clamp(1.1rem, .95rem + .6vw, 1.35rem);
  color: #555;
}

/* 画像リンクはカード内いっぱい・角丸継承 */
.tp_bnarea a{
  display: block;
  margin-top: auto;                     /* テキスト量が違っても下に揃う */
  border-radius: 8px;
  overflow: hidden;
}

/* 画像をレスポンシブに */
.tp_bnarea img{
  display: block;
  width: 100%;
  height: auto;                         /* 比率維持で縮小拡大 */
}

	
}








/*=============================
Sub(Lower)Page setting
===============================*/

/* visual
------------------------------*/
#sub_visual {
	 height: auto; 
	padding-bottom: 1em;
	/* border-bottom: 1px solid #a9d2e4; */
	 }
#sub_visual h2 {text-align: center;padding-top: 30px; font-size:33px;font-weight:bold; width:1110px; margin:0 auto;}
#sub_visual h2 b{background: #355d9d; color: #fff;display:inline-block;font-weight: bold;margin:0 5px;padding: 0px 10px;}
#sub_visual h2 b:nth-child(2n){background: #355d9d; }


.area-location-header .area-region-title .area-region-char {
	font-size: clamp(2.4rem, 1.8rem + 1.5vw, 3.3rem); /* ≒ 24px〜33px */

}

.area-location-header {
	padding: 2rem 0 2.5rem 0;
	background: #f0eaf5;
	border-bottom: 1px solid #7C60A0;
	background: url(../images/top2/fv_eria_bg.jpg) no-repeat center 38%;
    background-size: cover;
}

.area-location-inner {
	text-align: center;
    padding: 1em 0 1em 0;
}

.area-name {
	text-align: center;
    font-weight: 500;
    font-style: normal;
    color: #d92500;
	color: #355D9D;
    font-size: clamp(1.6rem, 1.65rem + 1.5vw, 2.0rem);
    letter-spacing: .08em;
    display: block;
	padding: 1.5rem 0 0 0;
}

.area-region-title .area-region-char {
  background: #9261c1;
  color: #ffffff;
  display: inline-block;
  font-weight: bold;
  margin: 0 5px; /* ← 文字の間隔調整 */
  padding: 0 10px 3.5px 10px;
  border-radius: 4px; /* お好みで角丸も可能 */
}

.pref-label b {
  display: inline-block;
  animation: popIn 0.4s ease forwards;
}

@keyframes popIn {
  0% { transform: scale(0.5); opacity: 0; }
  100% { transform: scale(1); opacity: 1; }
}


/* sub_contents
------------------------------*/

#sub_contents h3 span { display: block; margin: 0 0 10px; font-size: 2.25rem; font-weight: 600; text-transform: uppercase; }
#sub_contents h3 small { display: block; font-size: 1.35rem; letter-spacing: 0.5em; }
#sub_contents h4 { border-bottom: 1px solid #ddd;border-top: 3px solid #00a2e9;position: relative; padding:20px 0px 20px 45px;text-align: left; font-size:21px;line-height: 1; margin-bottom:20px; font-weight: bold;}
#sub_contents h4::before { position: absolute; top: 50%; left:10px; transform:translateY(-50%); content: ''; width: 25px; height:25px; border: solid 5px #00a2e9; border-radius:100%; }
#sub_contents h5{font-size: 21px;font-weight: bold;margin-bottom: 10px;display: block;}
#sub_contents h5 span{border-bottom: 2px solid #00a2e9;font-weight: bold;padding-bottom: 5px;}
#sub_contents p{margin-bottom:10px; padding: 0 2rem 0 2rem;}
#sub_contents hr{margin: 100px auto; border-color: #ddd; border-width:0.5px; }
#sub_contents ul.ulbox li{ list-style-position: inside; list-style-type: disc; margin-bottom: 10px;}
#sub_contents .img_right{ float: right; margin-left:20px;}
#sub_contents .img_left{ float: left; margin-right:20px;}
#sub_contents p.txt_cen{text-align: center; font-size:21px; font-weight: bold;margin-bottom: 50px;}


/* local_contents
------------------------------*/
.area-company-message {
	padding: 2vh 0 2vh 0;
	background: #9261c114;
	box-shadow: 0 1.9px 2.5px rgba(0, 0, 0, 0.057), 0 5px 6.1px rgb(0 0 0 / 24%);
	
}
#local_contents, #sub_contents {
	background: #fff;
	padding-top: 0rem;
}


dl { margin: 0; padding: 0; }
dt {
  font-weight: bold;
  font-size: clamp(1.2rem, 0.9rem + 0.8vw, 1.6rem);
  margin-bottom: 7px;
  color: #412567;
}
dd {
  margin: 0 0 15px 0;
  padding: 0;
}


@media (max-width: 600px) {
  .area-tab-wrap { padding: 18px 6px 16px 6px; }
  .area-tabs { margin-bottom: 14px; }
  .area-tab { font-size: 1em; padding: 11px 0 9px 0; }
  .area-list { gap: 7px; }
  .area-list li {
    padding: 8px 7px;
    min-width: 80px;
    font-size: 0.94em;
  }
}


.area_name {
    padding: 4em 0 0 0;
}



.localwrap {
margin: 0 auto 0;
}




h1.area-page-title {
padding: 1rem 1.25rem 1rem;
    background-color: #7c60a0;
    border-radius: 0.5rem;
	margin-top: 3em;
    margin-bottom: 2em;
    color: #fff;
    font-size: clamp(1.65rem, 1.85rem + 0.4vw, 2.0rem);;
    text-align: center;
	font-weight: bold;
}



.area-description-block	 {
    display: flex;
    max-width: 1110px;
    column-gap: 2em;
	padding: 2.5em 0 3em 0;
}
.area-image img {
	max-height: 400px; 
}
.area-image-block {
	padding:0.6rem 2rem 0 0;
}
.area-desc {
	max-width: 700px;
	padding: 0 0rem 0 2em;
	line-height: 1.8;
	font-size: clamp(1.25rem, 1.1rem + 1vw, 1.65rem);
}
.content-wrap {
    max-width: 1110px;
    margin: auto;
    padding: 2rem 1em;
    background: #FFF;
}
.h1block {
	margin: auto;
	width: 1110px;
	display: block;
}

.area-hero-section::before {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    height: 50px;
    background: #f8f8fb;
    z-index: 0;
}



/* ❷ 三角（中央だけ）: コンテンツ幅で中央揃え */
.area-hero-section::after{
  content: "";
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
  width: min(1280px, 90vw);   /* ヘッダー/コンテンツ幅と合わせる */
  height: 57px;               /* 三角の高さ */
	background: #fff; /* 三角の色（中面のグレー） */
  clip-path: polygon(0 0, 100% 0, 50% 100%);
  z-index: 1;
  pointer-events: none;
}

.area-workflow-section {
	background :#fff;
}

.workflow-title	{
	text-align: center;
	padding: 3em 0 1em 0;
}

/* 対応エリア
------------------------------*/
.area-support {
	background: #f9f6f2;
	border-top: solid 1px #ddd;
	
}







/* cleaning
------------------------------*/
#sub_contents ul.list_cleaning li{width: 16%; border: 1px solid #ddd; padding: 15px 10px;}
#sub_contents ul.list_cleaning li dt{ font-size: 17px; font-weight: bold;margin-bottom: 5px;}
#sub_contents ul.list_cleaning li dt::before{content: "■";margin-right: 5px; color: #00a2e9; font-size: 14px;}
#sub_contents ul.list_cleaning li dd{line-height: 120%;}

/* service
------------------------------*/
#sub_contents p.s_area{width:53%; display: inline-flex;float: left;}
#sub_contents .f_right{width: 45%;}
#sub_contents .f_right ul.se_img li{ width: 48%;margin-bottom: 15px;}
#sub_contents hr.ser{margin: 50px auto; border-color: #fff;}
#sub_contents ul.s02{margin-bottom: 50px;}
#sub_contents ul.s02 li{ width: 48%; float: left;}
#sub_contents ul.s02 li:last-child{ float: right;}
#sub_contents .sbg{background:url(../images/cleaning/bg.jpg) center center no-repeat; background-size: cover; padding: 80px;}
#sub_contents .sbg p{ font-size: 24px; text-align: center; font-weight: bold; text-shadow: 1px 1px #fff;}


/* aircon
------------------------------*/
#sub_contents .ss_price{ font-size: 22px; font-weight: bold; display: block;margin-bottom: 20px; color: #DB0003;}
#sub_contents .ss_price.cl{font-size: 20px;}
#sub_contents .ss_price span{display: block; font-size: 17px;}
#sub_contents .ss_list{width:52%;}
#sub_contents .ss_list li{font-size: 15px; margin-bottom: 10px;border-bottom: 1px dashed #ddd;padding: 5px 0px 10px;}
#sub_contents .ss_list li span{font-size: 15px; font-weight: bold;width: 110px;color: #29983a; border: 1px solid #29983a;padding: 2px 10px;margin-right: 15px; display: inline-block;text-align: center;}
#sub_contents .ss_area li{ width: 32%; border: 2px solid #00a2e9; padding: 20px; border-radius: 15px;margin-bottom: 50px;background:url(../images/aircon/ss01.png) center 70% no-repeat;}
#sub_contents .ss_area li dl dt{background: #00a2e9;padding: 10px 20px; color: #fff; font-size: 18px; font-weight: bold; margin-bottom: 10px;}
#sub_contents .ss_area li dl dt::before{content: "■";margin-right: 5px;font-size: 14px;font-weight: normal;}
#sub_contents .ss_area li dl dd{ font-size: 16px;}
#sub_contents .ss_area li:nth-child(2){border: 2px solid #ff6a36;background:url(../images/aircon/ss02.png) center 70% no-repeat;}
#sub_contents .ss_area li:nth-child(3){border: 2px solid #ea2c3b;background:url(../images/aircon/ss03.png) center 70% no-repeat;}
#sub_contents .ss_area li:nth-child(2) dl dt{background: #ff6a36;}
#sub_contents .ss_area li:nth-child(3) dl dt{background: #ea2c3b;}
#sub_contents .ss_area li:nth-child(3) dl dd{font-size: 15px;}
#sub_contents .ss_flow li{width: 24%;}
#sub_contents .ss_flow li img{width: 100%;margin-bottom: 10px;}
#sub_contents .ss_flow li p span{border: 1px solid #00a2e9;padding: 0px 10px; color: #00a2e9;display: block;width: 110px; text-align:center;margin-bottom:2px; font-size: 16px;font-weight: bold;}
#sub_contents .ss_flow.cl li{width: 32%;}
#sub_contents .ss_flow.cl li p span{border: 1px solid #00a2e9;padding: 0px 10px; color: #00a2e9;display: block;width: 100%; text-align:center;margin-bottom:2px; font-size: 16px;font-weight: bold;}
#sub_contents .ss_flow.cl.ucc{width: 60%; margin:0 auto;}
#sub_contents .ss_flow.cl.ucc li{width:48%;}

/* case
------------------------------*/
#sub_contents ul.case_list{ clear:both; overflow:hidden;}
#sub_contents ul.case_list p.c_ttl{ font-size:20px; margin-bottom:10px; border-left:3px solid #00a2e9; padding:0px 0px 0px 10px;}
#sub_contents ul.case_list li{ width:48%; float:left;margin-bottom:40px;}
#sub_contents ul.case_list li:nth-child(even){ float:right;}
#sub_contents ul.case_list li .img_container { margin-bottom:10px;position: relative;}
#sub_contents ul.case_list li .img_container a {float: left;text-align:center;margin-bottom:20px;width:48%;}
#sub_contents ul.case_list li .img_container a{border-top:1px solid #ddd;}
#sub_contents ul.case_list li .img_container a:nth-child(even){ float:right;}
#sub_contents ul.case_list li .img_container b{background: #00a2e9; color: #fff; padding: 2px 15px; position: absolute;}
#sub_contents ul.case_list li .img_container small{background: #00a2e9; color: #fff; padding: 2px 15px; position: absolute;left:277px;}
#sub_contents ul.case_list li p{ text-align:left;}
#sub_contents ul.case_list li p.c_date{color:#ff7800; font-size:16px;margin-bottom:5px;}
#sub_contents ul.case_list li p.c_tit{ border-bottom:1px solid #ddd; border-top:1px solid #ddd; padding:10px 0px;margin-bottom:5px; display:block;font-size: 18px; font-weight: bold;}
#sub_contents ul.case_list li p.c_tit::before{content: "■";font-size: 12px; margin-right: 5px;color: #00a2e9;}

/* faq
------------------------------*/
.faq {
	max-width: 1120px;
	margin-bottom: 5em !important;
}
.faq h2, .faq h3{
    font-family: source-han-serif-japanese, serif;
    font-weight: 500;
    font-style: normal;
    color: rgb(217, 37, 0);
    font-size: 2rem;
    letter-spacing: 0.08em;
    display: block;
    margin: 1em 0px;
}

.faq h2 span, .faq h3 span {
	display: inline;
    font-size: 1.0625rem;
    letter-spacing: 0.5em;
    padding-left: 2em;
}
 .faq dl.faq_list{ margin-bottom:25px; background: #9261c159; padding: 15px;}
 .faq dl.faq_list dt{ border-bottom:1px solid #c4dae3; padding:20px 20px 15px; font-size:16px;box-sizing:border-box;background: #fff;}
 .faq dl.faq_list dt span{ font-size:24px; margin-right:10px; font-weight:bold;background: #00a2e9; color: #fff; padding: 0px 8px;line-height: 100%;}
 .faq dl.faq_list dd span{ font-size:24px; margin-right:10px; font-weight:bold;background: #ff7800; color: #fff; padding: 0px 8px;line-height: 100%;}
 .faq dl.faq_list dt p{ font-size: 17px;display: inline-block;margin-bottom: 0px; font-weight: bold;line-height: 100%;}
 .faq dl.faq_list dd p{ font-size: 15px;display: inline-block;margin-bottom: 0px;line-height: 100%;}
 .faq dl.faq_list dd{width:100%;padding:20px 20px;font-size:15px;background: #fff;}

/* company
-------------------------*/
.company_verview {
	max-width: 1110px;
	margin-bottom: 5em !important;
}

.company_verview h2, .company_verview h3{
    font-family: source-han-serif-japanese, serif;
    font-weight: 500;
    font-style: normal;
    color: rgb(217, 37, 0);
    font-size: 2.8rem;
    letter-spacing: 0.08em;
    display: block;
    margin: 1em 0px;
}

.company_verview h2 span, .company_verview h3 span {
	display: inline;
    font-size: 1.90rem;
    letter-spacing: 0.5em;
    padding-left: 2em;
}

table.tbl_company{border-collapse:collapse; font-size:14px; width:100%;box-sizing:border-box; text-align: left; margin-top:30px; margin-bottom: 5em;}
table.tbl_company th{
	padding: 18px 10px 18px 10px;
    width: 32%;
    border: 1px solid #ccc;
    background: #f0eaf5;
    text-align: center;
    font-size: 1.2em;
    font-weight: bold;
    color: #333;}
table.tbl_company td{padding:18px 10px 18px 30px;border: 1px solid #ddd;background: #fff; font-size: 1.2em;}
.gmap {margin-bottom: 10px;border: 6px solid #e0f6ff; padding:10px 10px 2px 10px;}
table.tbl_company.pp th{padding:18px 10px 18px 10px; width: 16%; border: 1px solid #b9dceb;background:#00a2e9;color: #fff;text-align: center; font-size: 15px; font-weight: bold;}
table.tbl_company.pp td{padding:18px 10px 18px 10px;width: 16%;border: 1px solid #ddd;background: #fff;text-align: center;}
table.tbl_company.pr th{padding:18px 10px 18px 10px; width: 12.5%; border: 1px solid #b9dceb;background:#00a2e9;color: #fff;text-align: center; font-size: 15px; font-weight: bold;}
table.tbl_company.pr td{padding:18px 10px 18px 10px;width: 12.5%;border: 1px solid #ddd;background: #fff;text-align: center;}
table.tbl_company.ff th b{font-weight: bold;text-decoration: underline;}
table.tbl_company.ff td{text-decoration: underline;}
table.tbl_company02{border-collapse:collapse; font-size:14px; width:100%;box-sizing:border-box; text-align: left; margin-top:30px;}
table.tbl_company02 th{padding:10px 10px 10px 10px; width: 32%;text-align: left; font-size: 16px; font-weight: bold;border-bottom: 1px solid #ddd;}
table.tbl_company02 th::before{content: "■";font-size: 14px; margin-right: 5px;}
table.tbl_company02 td{padding:10px 10px 10px 10px;border-bottom: 1px solid #ddd;}
table.tbl_company02 td small{border-bottom: 1px dotted #000;}
table.tbl_company02 th b{font-weight: bold;text-decoration: underline;color: #00a2e9; font-size: 1.2rem;}
table.tbl_company02 tr:last-child th{border-bottom: none;}
table.tbl_company02 tr:last-child td{border-bottom: none;}

/* sitemap
------------------------------*/
#sub_contents ul.sitemap_list{margin-bottom: 50px; border: 4px solid #eee; padding: 30px 35px 20px;box-sizing: border-box;overflow: hidden;}
#sub_contents ul.sitemap_list li a{position: relative;padding-left: 30px;line-height: 55px;border: solid 1px #ddd;overflow: hidden; margin-bottom:20px; display: block; width: 48.5%; float: left; box-sizing: border-box; font-size: 17px;text-align:center;box-sizing: border-box;}
#sub_contents ul.sitemap_list li:nth-child(even) a{ float: right;}
#sub_contents ul.sitemap_list li a:hover{color: #fff; text-decoration:none;border: solid 1px #fff; background: #00a2e9;opacity: 1.0;}
#sub_contents ul.sitemap_list li a:after{content: ""; position: absolute; top: 0; bottom: 0; right: 35px; width: 8px; height: 8px; margin: auto; border-top: 2px solid #ccc; border-right: 2px solid #ccc; -webkit-transform: rotate(45deg); transform: rotate(45deg);}

/* contact
----------------------------------- */
#local_contents p.con_cen{text-align:center; padding:30px 50px 30px; font-size:16px; margin:0px auto 50px; line-height:180%; border:1px dashed #d2c8bd;}
#local_contents p.con_cen a{ display: inline-block; margin:15px 0px;}
#local_contents p.con_cen a.cc-tel{margin: 10px 0 10px;font-size: 2.4rem; font-weight: bold;background:url(../images/common/icon_hd_tel.png) no-repeat;padding:2px 0px 5px 45px;background-size: 40px;}
#local_contents p.con_cen span{font-size: 1.0rem;font-weight: bold;display:block;}

#sub_contents table.defTable01{margin:0px auto 80px;border-collapse:collapse; font-size:14px; width:100%;box-sizing:border-box;}
#sub_contents table.defTable01 tr{ display:block;border-bottom:1px solid #ddd; padding:10px 0px;}
#sub_contents table.defTable01 tr:first-child{ border-top: 1px solid #ddd;}
#sub_contents table.defTable01 th{ padding:10px 40px 10px 30px;width:32%;display:inline-block; box-sizing:border-box; font-weight:bold; font-size: 15px;}
#sub_contents table.defTable01 th span{ background: #ff5c7a; padding: 5px 30px; text-align: center; width: 200px; color: #fff; display: block;}
#sub_contents table.defTable01 td{ padding:10px 0px 10px 0px;display:inline-block;box-sizing:border-box;width:67.5%; text-align:left;}
#sub_contents table.defTable01 th em.clrred{ font-size:12px;color:#fff;font-style:normal; text-align:center;background:#d30000; padding:1px 5px; display:block; width:50px; float:right;}
#sub_contents table.defTable01 th em.any{ font-size:12px;color:#fff;font-style:normal; text-align:center;background:#333;padding:1px 5px;width:50px; float:right;}
#sub_contents table.defTable01 td.cen{ text-align:center; margin:0 auto; display:block;}
#sub_contents table.defTable01 td.cen input{padding: 10px;color: #111;font-size: 16px;width: 250px;background: #fff;cursor: pointer; border:1px solid #ccc; display:block; text-align:center; margin:0 auto;}
#sub_contents table.defTable01 td.cen input:hover{ background: #111;opacity: 0.8;filter: alpha(opacity=80);-moz-opacity: 1.0;-webkit-transition: 0.3s ease-in-out;-moz-transition: 0.3s ease-in-out;-o-transition: 0.3s ease-in-out;transition: 0.3s ease-in-out; color:#fff;}
#sub_contents table.defTable01 input {padding: 8px 10px; background: #eee; font-size:13px;border:none;box-sizing:border-box;width:100%;}
#sub_contents table.defTable01 textarea  {padding:8px 10px;background: #eee;font-size:13px; border:none; width:100%;box-sizing: border-box;}
#sub_contents table.defTable01 .bbn {border-bottom: none!important;}
#sub_contents table.defTable01 a.bb01 {color: #efe384;}
#sub_contents table.defTable01 td.tel_area input {width:23%;}
#sub_contents table.defTable01 input[type="checkbox"] { width:4%;}
#sub_contents table.defTable01 input[type="radio"] { width:4%;}
#sub_contents table.defTable01 .privacyBox {padding:0px 20px 30px;width: calc(100% - 0px);height: 300px;overflow-y: scroll;margin-bottom: 20px;background: #fff; font-size:90%; border: 1px solid #ddd; box-sizing: border-box;}
#sub_contents table.defTable01 .privacyBox .sub_ttl {margin:20px 0px 10px 0px; font-size:140%; padding:2px 0px 2px 8px;border-left: 5px solid #00a2e9;line-height: 100%; font-weight: bold;}
#sub_contents table.defTable01 .privacyBox p{text-align:left; margin-bottom:10px; font-size:14px;line-height: 160%;}
#sub_contents table.defTable01 .privacyBox ul.ulbox li{ list-style-type:disc; list-style-position:inside; margin-left:5px;}
#sub_contents table.defTable01 .privacyBox::-webkit-scrollbar {height: 5px;}
#sub_contents table.defTable01 .privacyBox::-webkit-scrollbar-track {background: #fffcee;}
#sub_contents table.defTable01 .privacyBox::-webkit-scrollbar-thumb {background: #00a2e9;}

/* news
------------------------------*/
#sub_contents ul.news_list li a{ position: relative; padding: 20px 10px; border-bottom: 1px solid #dad9d1; display: block; }
#sub_contents ul.news_list li a:hover{background: #eee;}
#sub_contents ul.news_list li:last-of-type a{ border-bottom: none; }
#sub_contents ul.news_list li a p{margin-bottom: 0px;}
#sub_contents ul.news_list li a .cmn-news-list-inr { display:-webkit-box; display:-ms-flexbox; display:flex; flex-wrap:wrap; }
#sub_contents ul.news_list li a .cmn-news-date { margin: 0 10px 0 0; }
#sub_contents ul.news_list li a .cmn-news-cate { display: inline-block; margin: 0 10px 0 0; padding: 0 10px; background: #ccc; text-align: center; font-size: 13px; color: #fff; line-height: 25px; }
#sub_contents ul.news_list li a .cmn-news-cate.news { background: #29983a; }
#sub_contents ul.news_list li a .cmn-news-cate.campaign { background: #ffa800; }




@media screen and (max-width:1110px) {
#sub_visual {height:100px;border-bottom: 1px solid #a9d2e4;}
#sub_visual h2 {text-align: center;padding-top: 30px; font-size:25px;font-weight:bold; width:94%; margin:0 auto;}
#sub_visual h2 b{background: #00a2e9; color: #fff;display:inline-block;font-weight: bold;margin:0 3px;padding: 0px 3px;}
#sub_visual h2 b:nth-child(2n){background: #ff7800; }
.bread_crumb_list ul{ margin: 0 auto; width:94%;}
#sub_contents .img_right{ float: none; margin-left:0px;width: 100%; display: block; margin: 0 auto 10px; text-align: center;}
#sub_contents .img_left{ float: none; margin-right:0px; width: 100%; display: block; margin: 0 auto 10px; text-align: center;}

#sub_contents .ss_price{ font-size: 15px; font-weight: bold; display: block;margin-bottom: 20px; color: #DB0003;}
#sub_contents .ss_price.cl{font-size: 17px;}
#sub_contents .ss_price span{display: block; font-size: 13px;}
#sub_contents .ss_list{width:100%;}
#sub_contents .ss_list li{font-size: 13px; margin-bottom: 10px;border-bottom: 1px dashed #ddd;padding: 5px 0px 10px;}
#sub_contents .ss_list li span{font-size: 14px; font-weight: bold;width: 100px;color: #29983a; border: 1px solid #29983a;padding: 2px 5px;margin-right: 15px; display: inline-block;text-align: center;}
#sub_contents .ss_area li{ width: 100%; border: 2px solid #00a2e9; padding: 10px; border-radius: 10px;margin-bottom: 10px;background:url(../images/aircon/ss01.png) center 70% no-repeat;}
#sub_contents .ss_area li dl dt{background: #00a2e9;padding: 5px 5px; color: #fff; font-size: 16px; font-weight: bold; margin-bottom: 10px;}
#sub_contents .ss_area li dl dt::before{content: "■";margin-right: 5px;font-size: 13px;font-weight: normal;}
#sub_contents .ss_area li dl dd{ font-size: 13px;}
#sub_contents .ss_area li:nth-child(2){border: 2px solid #ff6a36;background:url(../images/aircon/ss02.png) center 70% no-repeat;}
#sub_contents .ss_area li:nth-child(3){border: 2px solid #ea2c3b;background:url(../images/aircon/ss03.png) center 70% no-repeat;}
#sub_contents .ss_area li:nth-child(2) dl dt{background: #ff6a36;}
#sub_contents .ss_area li:nth-child(3) dl dt{background: #ea2c3b;}
#sub_contents .ss_area li:nth-child(3) dl dd{font-size: 13px;}
#sub_contents .ss_area li:nth-child(3){margin-bottom: 30px;}
#sub_contents .ss_flow li{width: 100%;}
#sub_contents .ss_flow li img{width: 100%;margin-bottom: 10px;}
#sub_contents .ss_flow li p span{border: 1px solid #00a2e9;padding: 0px 10px; color: #00a2e9;display: block;width: 100px; text-align:center;margin-bottom:2px; font-size: 16px;font-weight: bold;}

}

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

/* visual
------------------------------*/
#sub_visual {height:100px;border-bottom: 1px solid #a9d2e4;}
#sub_visual h2 {text-align: center;padding-top: 30px; font-size:25px;font-weight:bold; width:94%; margin:0 auto;}
#sub_visual h2 b{background: #00a2e9; color: #fff;display:inline-block;font-weight: bold;margin:0 3px;padding: 0px 3px;}
#sub_visual h2 b:nth-child(2n){background: #ff7800; }

/* bread_crumb_list
------------------------------*/
.bread_crumb_list{margin:0px 0px 20px 0px;padding: 10px 0px 10px 0px;text-align: left;font-size:13px;border-bottom: 1px solid #c2eeff;}
.bread_crumb_list ul{ margin: 0 auto; width:94%;}
.bread_crumb li { display:inline;}
.bread_crumb li:after {content : '>>';padding-left:5px;}
.bread_crumb li:last-child:after { content : '';}
.bread_crumb li a { text-decoration:underline;}
.bread_crumb li a:hover{ text-decoration:none;}
.bread_crumb li.current { font-weight:bold;}

/* sub_contents
------------------------------*/
#sub_contents {font-size:13px;}
#sub_contents h3{ position: relative; margin: 0 0 30px; text-align: center; line-height: 1; }
#sub_contents h3 span { display: block; margin: 0 0 10px; font-size: 20px; font-weight: 600; text-transform: uppercase; }
#sub_contents h3 small { display: block; font-size: 1.0625rem; letter-spacing: 0.5em; }
#sub_contents h4 { border-bottom: 1px solid #ddd;border-top: 3px solid #00a2e9;position: relative; padding:10px 0px 10px 35px;text-align: left; font-size:17px;line-height: 1; margin-bottom:15px; font-weight: bold;}
#sub_contents h4::before { position: absolute; top: 50%; left:10px; transform:translateY(-50%); content: ''; width: 17px; height:17px; border: solid 4px #00a2e9; border-radius:100%; }
#sub_contents h5{font-size: 17px;font-weight: bold;margin-bottom: 10px;display: block;}
#sub_contents h5 span{border-bottom: 2px solid #00a2e9;font-weight: bold;padding-bottom: 5px;}
#sub_contents p{margin-bottom:10px; font-size: 15px;}
#sub_contents hr{margin: 40px auto; border-color: #ddd; border-width:0.5px; }
#sub_contents ul.ulbox li{ list-style-position: inside; list-style-type: disc; margin-bottom: 10px;}
#sub_contents .img_right{ float: none; margin-left:0px;width: 100%; display: block; margin: 0 auto 10px; text-align: center;}
#sub_contents .img_left{ float: none; margin-right:0px; width: 100%; display: block; margin: 0 auto 10px; text-align: center;}
#sub_contents p.txt_cen{text-align: center; font-size:13px; font-weight: bold;margin-bottom: 30px;}

/* cleaning
------------------------------*/
#sub_contents ul.list_cleaning li{width: 100%; border: 1px solid #ddd; padding: 15px 10px;margin-bottom: 15px;}
#sub_contents ul.list_cleaning li dt{ font-size: 15px; font-weight: bold;margin-bottom: 5px;}
#sub_contents ul.list_cleaning li dt::before{content: "■";margin-right: 5px; color: #00a2e9; font-size: 12px;}
#sub_contents ul.list_cleaning li dd{line-height: 120%;}

/* service
------------------------------*/
#sub_contents p.s_area{width:100%; display:block;float: none;}
#sub_contents .f_right{width: 100%;}
#sub_contents .f_right ul.se_img li{ width: 100%;margin-bottom: 10px;}
#sub_contents hr.ser{margin: 40px auto; border-color: #fff;}

/* aircon
------------------------------*/
#sub_contents .ss_price{ font-size: 15px; font-weight: bold; display: block;margin-bottom: 20px; color: #DB0003;}
#sub_contents .ss_price.cl{font-size: 17px;}
#sub_contents .ss_price span{display: block; font-size: 13px;}
#sub_contents .ss_list{width:100%;}
#sub_contents .ss_list li{font-size: 13px; margin-bottom: 10px;border-bottom: 1px dashed #ddd;padding: 5px 0px 10px;}
#sub_contents .ss_list li span{font-size: 14px; font-weight: bold;width: 100px;color: #29983a; border: 1px solid #29983a;padding: 2px 5px;margin-right: 15px; display: inline-block;text-align: center;}
#sub_contents .ss_area li{ width: 100%; border: 2px solid #00a2e9; padding: 10px; border-radius: 10px;margin-bottom: 10px;background:url(../images/aircon/ss01.png) center 70% no-repeat;}
#sub_contents .ss_area li dl dt{background: #00a2e9;padding: 5px 5px; color: #fff; font-size: 16px; font-weight: bold; margin-bottom: 10px;}
#sub_contents .ss_area li dl dt::before{content: "■";margin-right: 5px;font-size: 13px;font-weight: normal;}
#sub_contents .ss_area li dl dd{ font-size: 13px;}
#sub_contents .ss_area li:nth-child(2){border: 2px solid #ff6a36;background:url(../images/aircon/ss02.png) center 70% no-repeat;}
#sub_contents .ss_area li:nth-child(3){border: 2px solid #ea2c3b;background:url(../images/aircon/ss03.png) center 70% no-repeat;}
#sub_contents .ss_area li:nth-child(2) dl dt{background: #ff6a36;}
#sub_contents .ss_area li:nth-child(3) dl dt{background: #ea2c3b;}
#sub_contents .ss_area li:nth-child(3) dl dd{font-size: 13px;}
#sub_contents .ss_area li:nth-child(3){margin-bottom: 30px;}
#sub_contents .ss_flow li{width: 100%;}
#sub_contents .ss_flow li img{width: 100%;margin-bottom: 10px;}
#sub_contents .ss_flow li p span{border: 1px solid #00a2e9;padding: 0px 10px; color: #00a2e9;display: block;width: 100px; text-align:center;margin-bottom:2px; font-size: 16px;font-weight: bold;}
#sub_contents .ss_flow.cl li{width: 100%;}
#sub_contents .ss_flow.cl li p span{border: 1px solid #00a2e9;padding: 0px 10px; color: #00a2e9;display: block;width: 100%; text-align:center;margin-bottom:2px; font-size: 14px;font-weight: bold;}

/* case
------------------------------*/
#sub_contents ul.case_list{ clear:both; overflow:hidden;}
#sub_contents ul.case_list p.c_ttl{ font-size:18px; margin-bottom:10px; border-left:3px solid #00a2e9; padding:0px 0px 0px 10px;}
#sub_contents ul.case_list li{ width:100%; float:none;margin-bottom:30px;}
#sub_contents ul.case_list li:nth-child(even){ float:none;}
#sub_contents ul.case_list li .img_container { margin-bottom:10px;position: relative;}
#sub_contents ul.case_list li .img_container a {float: left;text-align:center;margin-bottom:20px;width:49%;}
#sub_contents ul.case_list li .img_container a{border-top:1px solid #ddd;}
#sub_contents ul.case_list li .img_container a:nth-child(even){ float:right;}
#sub_contents ul.case_list li .img_container b{background: #00a2e9; color: #fff; padding: 2px 10px; position: absolute;}
#sub_contents ul.case_list li .img_container small{background: #00a2e9; color: #fff; padding: 2px 10px; position: absolute;left:auto;right: 0px;}
#sub_contents ul.case_list li p{ text-align:left;}
#sub_contents ul.case_list li p.c_date{color:#ff7800; font-size:15px;margin-bottom:5px;}
#sub_contents ul.case_list li p.c_tit{ border-bottom:1px solid #ddd; border-top:1px solid #ddd; padding:10px 0px;margin-bottom:5px; display:block;font-size: 17px; font-weight: bold;}
#sub_contents ul.case_list li p.c_tit::before{content: "■";font-size: 11px; margin-right: 5px;color: #00a2e9;}

/* faq
------------------------------*/
#sub_contents dl.faq_list{ margin-bottom:15px;background:url(../images/common/bg_hd.png) center center;padding: 2px;}
#sub_contents dl.faq_list dt{ border-bottom:1px solid #c4dae3; padding:10px 10px 10px; font-size:16px;box-sizing:border-box;background: #fff;}
#sub_contents dl.faq_list dt span{ font-size:16px; margin-right:6px; font-weight:bold;background: #00a2e9; color: #fff; padding: 0px 4px;line-height: 100%;}
#sub_contents dl.faq_list dd span{ font-size:16px; margin-right:6px; font-weight:bold;background: #ff7800; color: #fff; padding: 0px 4px;line-height: 100%;}
#sub_contents dl.faq_list dt p{ font-size: 14px;display: inline-block;margin-bottom: 0px; font-weight: bold;line-height: 100%;}
#sub_contents dl.faq_list dd p{ font-size: 13px;display: inline-block;margin-bottom: 0px;line-height: 100%;}
#sub_contents dl.faq_list dd{width:100%;padding:10px 10px;font-size:13px;background: #fff;}

/* company
-------------------------*/
#sub_contents table.tbl_company{border-collapse:collapse; font-size:13px; width:100%;box-sizing:border-box; text-align: left; margin-top:30px;}
#sub_contents table.tbl_company th{padding:18px 10px 18px 10px; width: 32%; border: 1px solid #b9dceb;background:#00a2e9;color: #fff;text-align: center; font-size: 13px; font-weight: bold;vertical-align: middle;}
#sub_contents table.tbl_company td{padding:18px 10px 18px 10px;border: 1px solid #ddd;background: #fff;font-size: 13px;}
#sub_contents .gmap {margin-bottom: 10px;border: 3px solid #e0f6ff; padding:5px 5px 2px 5px;}
#sub_contents .gmap iframe{height: 290px;}

/* sitemap
------------------------------*/
#sub_contents ul.sitemap_list{margin-bottom: 30px; border: 3px solid #eee; padding: 10px 10px 10px;box-sizing: border-box;overflow: hidden;}
#sub_contents ul.sitemap_list li a{position: relative;padding-left: 10px;line-height: 35px;border: solid 1px #ddd;overflow: hidden; margin-bottom:10px; display: block; width: 100%; float: none; box-sizing: border-box; font-size: 14px;text-align:center;box-sizing: border-box;}
#sub_contents ul.sitemap_list li:nth-child(even) a{ float: none;}
#sub_contents ul.sitemap_list li a:hover{color: #fff; text-decoration:none;border: solid 1px #fff; background: #00a2e9;opacity: 1.0;}
#sub_contents ul.sitemap_list li a:after{content: ""; position: absolute; top: 0; bottom: 0; right: 35px; width: 8px; height: 8px; margin: auto; border-top: 2px solid #ccc; border-right: 2px solid #ccc; -webkit-transform: rotate(45deg); transform: rotate(45deg);}

/* contact
----------------------------------- */
#sub_contents p.con_cen{text-align:center; padding:10px 15px 10px; font-size:14px; margin:0px auto 30px; line-height:150%; border:1px dashed #d2c8bd;}
#sub_contents p.con_cen a{ display: inline-block; margin:10px 0px;}
#sub_contents p.con_cen a.cc-tel{margin: 10px 0 10px;font-size: 24px; font-weight: bold;background:url(../images/common/icon_hd_tel.png) no-repeat;padding:2px 0px 5px 40px;background-size: 28px;}
#sub_contents p.con_cen span{font-size: 16px;font-weight: bold;display:block;}
#sub_contents table.defTable01{margin:0px auto 40px;border-collapse:collapse; font-size:13px; width:100%;box-sizing:border-box;}
#sub_contents table.defTable01 tr{ display:block;border-bottom:0px solid #ddd; padding:0px 0px;}
#sub_contents table.defTable01 tr:first-child{ border-top: 0px solid #ddd;}
#sub_contents table.defTable01 th{ padding:10px 0px 10px 0px;width:100%;display:block; box-sizing:border-box; font-weight:bold; font-size: 13px;border-bottom:1px solid #ddd;border-top:1px solid #ddd;text-align: left;}
#sub_contents table.defTable01 th span{ background: #ff5c7a; padding: 5px 20px; text-align: center; width: 160px; color: #fff; display: block;}
#sub_contents table.defTable01 td{ padding:10px 0px 10px 0px;display:block;box-sizing:border-box;width:100%; text-align:left;}
#sub_contents table.defTable01 th em.clrred{ font-size:12px;color:#fff;font-style:normal; text-align:center;background:#d30000; padding:1px 5px; display:block; width:50px; float:right;}
#sub_contents table.defTable01 th em.any{ font-size:12px;color:#fff;font-style:normal; text-align:center;background:#333;padding:1px 5px;width:50px; float:right;}
#sub_contents table.defTable01 td.cen{ text-align:center; margin:0 auto; display:block;}
#sub_contents table.defTable01 td.cen input{padding: 10px;color: #111;font-size: 13px;width: 100%;background: #fff;cursor: pointer; border:1px solid #ccc; display:block; text-align:center; margin:0 auto;}
#sub_contents table.defTable01 td.cen input:hover{ background: #111;opacity: 0.8;filter: alpha(opacity=80);-moz-opacity: 1.0;-webkit-transition: 0.3s ease-in-out;-moz-transition: 0.3s ease-in-out;-o-transition: 0.3s ease-in-out;transition: 0.3s ease-in-out; color:#fff;}
#sub_contents table.defTable01 input {padding: 8px 10px; background: #eee; font-size:13px;border:none;box-sizing:border-box;width:100%;}
#sub_contents table.defTable01 textarea  {padding:8px 10px;background: #eee;font-size:13px; border:none; width:100%;box-sizing: border-box;}
#sub_contents table.defTable01 .bbn {border-bottom: none!important;}
#sub_contents table.defTable01 a.bb01 {color: #efe384;}
#sub_contents table.defTable01 td.tel_area input {width:23%;}
#sub_contents table.defTable01 input[type="checkbox"] { width:4%;}
#sub_contents table.defTable01 input[type="radio"] { width:4%;}
#sub_contents table.defTable01 .privacyBox {padding:0px 15px 20px;width: calc(100% - 0px);height: 300px;overflow-y: scroll;margin-bottom: 20px;background: #fff; font-size:90%; border: 1px solid #ddd; box-sizing: border-box;}
#sub_contents table.defTable01 .privacyBox .sub_ttl {margin:20px 0px 10px 0px; font-size:140%; padding:2px 0px 2px 8px;border-left: 5px solid #00a2e9;line-height: 100%; font-weight: bold;}
#sub_contents table.defTable01 .privacyBox p{text-align:left; margin-bottom:10px; font-size:14px;line-height: 160%;}
#sub_contents table.defTable01 .privacyBox ul.ulbox li{ list-style-type:disc; list-style-position:inside; margin-left:5px;}
#sub_contents table.defTable01 .privacyBox::-webkit-scrollbar {height: 5px;}
#sub_contents table.defTable01 .privacyBox::-webkit-scrollbar-track {background: #ddd;}
#sub_contents table.defTable01 .privacyBox::-webkit-scrollbar-thumb {background: #00a2e9;}

/* news
------------------------------*/
#sub_contents ul.news_list li a{ position: relative; padding: 15px 10px; border-bottom: 1px solid #dad9d1; font-size: 13px; display: block; }
#sub_contents ul.news_list li a:hover{background: #eee;}
#sub_contents ul.news_list li:last-of-type a{ border-bottom: none; }
#sub_contents ul.news_list li a p{margin-bottom: 0px;}
#sub_contents ul.news_list li a .cmn-news-list-inr { display:-webkit-box; display:-ms-flexbox; display:flex; flex-wrap:wrap; }
#sub_contents ul.news_list li a .cmn-news-date { margin: 0 10px 0 0; }
#sub_contents ul.news_list li a .cmn-news-cate { display: inline-block; margin: 0 10px 0 0; padding: 0 10px; background: #ccc; text-align: center; font-size: 12px; color: #fff; line-height: 20px; }
#sub_contents ul.news_list li a .cmn-news-cate.news { background: #29983a; }
#sub_contents ul.news_list li a .cmn-news-cate.campaign { background: #ffa800; }

/* wp-pagenavi
------------------------------*/
#sub_contents .wp-pagenavi {clear: both;text-align:center;margin-top:40px;}
#sub_contents .wp-pagenavi a,.wp-pagenavi span {display: inline-block;color: #000;border: 1px solid #ddd;background-color: #fff;padding: 8px 12px;margin: 0 2px 5px;white-space: nowrap;text-align: center;text-decoration: none;}
#sub_contents .wp-pagenavi span.pages {display: none;}
#sub_contents .wp-pagenavi a:hover{color: #fff;background-color: #ff7800;opacity: 1.0;transition: 1.0s;}
#sub_contents .wp-pagenavi span.current{color: #fff;background-color: #ff7800;font-weight: bold;}

}


/*
Wordpress single-page
__________________________*/
.single p {display: block;margin-top: 1em;margin-bottom: 1em;}
.single strong{font-weight:bold;}
.single cite,.single em,.single i{font-style:italic;}
.single big{font-size:131.25%;}
.single ins{background:#ffc;text-decoration:none;}
.single blockquote{font-style:italic;padding:03em;}
.single blockquotecite,.single blockquoteem,.single blockquotei{font-style:normal;}
.single pre{background:#f7f7f7;color:#222;line-height:18px;margin-bottom:18px;overflow:auto;padding:1.5em;}
.single abbr,.single acronym{border-bottom:1px dotted #666;cursor:help;}
.single sup,.single sub{height:0;line-height:1;position:relative;vertical-align:baseline;}
.single sup{bottom:1ex;}
.single sub{top:.5ex;}
.single img, .single img.alignnone {display: block; margin-bottom: 10px; font-size: inherit;}
img.size-auto,img.size-full,img.size-large,img.size-medium,.attachment img{
max-width:100%; height:auto; }
.alignleft,img.alignleft{display:inline;float:left;margin-right:24px;margin-top:4px;}
.alignright,img.alignright{display:inline;float:right;margin-left:24px;margin-top:4px;}
.aligncenter,img.aligncenter{clear:both;display:block;margin-left:auto;margin-right:auto;}
img.alignleft,img.alignright,img.aligncenter{margin-bottom:12px;}






/*
Contact Form 7
__________________________*/
.wpcf7-list-item{display: inline!important;margin-left: 0em!important;margin-right: 0em!important;}
.wpcf7-form input[type="checkbox"] {width: 1em!important;margin: 0 0.3em!important;}
.wpcf7-form input[type="radio"] {width: 1em!important;margin: 0 0.3em!important;}
.ajax-loader{display: none!important;}
.cen .wpcf7-form-control{margin-bottom: 10px!important;} 
.custom-wpcf7c-confirmed input[type="reset"]{display: none!important;}



