@charset "UTF-8";
/*
Theme Name: Emanon Premium child
Theme URI: https://wp-emanon.jp/emanon-premium/
Author: 株式会社イノ・コード
Author URI: https://innocord.co.jp/
Description: Emanon Premiumnの子テーマです。
Template: emanon-premium
Version: 1.0.1
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Tags:one-column, two-columns, three-columns, left-sidebar, right-sidebar, theme-options
*/


.elementor-icon-wrapper {
  margin-bottom: -9px;
}

/* テーブルpress */
.tablepress thead th,
.tablepress tbody td,
.tablepress tfoot th {
	padding: 1.2em;
	font-family: 'Noto serifJP';
	font-size: 14px;
}

.tablepress tr {
	border-bottom: 1px solid #cccccc;
}

.tablepress .column-1 {
	font-weight: bold;
	width: 32%;
}

.tablepress tr td:nth-of-type(2) {
	position: relative;
}

.tablepress tr td:nth-of-type(2)::before {
	content: "";
	display: inline-block;
	width: 1px;
	height: 60%;
	background-color: #cccccc;
	position: absolute;
	top: 20%;
	left: -10px;
}
@media(max-width:500px) {
  .tablepress tr td:nth-of-type(2)::before {
  width: 90%;
	height: 1px;
	position: absolute;
	top: 12%;
	left: 4%;
  }
}

.tablepress.white thead th,
.tablepress.white tbody td,
.tablepress.white tfoot th {
	color: #ffffff;
}

.tablepress.white tr {
	border: 1px solid #ffffff;
}

.tablepress.white tr td:nth-of-type(2)::before {
	background-color: #ffffff;
}

@media(max-width:500px) {
	.tablepress th,
	.tablepress td {
		display: block !important;
		width: 100% !important;
		border-top: none !important;
		-webkit-box-sizing: border-box !important;
		-moz-box-sizing: border-box !important;
		box-sizing: border-box !important;
	}

	.tablepress .column-1 {
		width: 100% !important;
		padding: 1em .5em .5em .5em;
	}
}



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

.contact_table {
  width: 100%;
  max-width: 750px;
  margin: 0 auto;
}
.contact_table th, .contact_table td {
  padding: 3%;
  border: none;
  border-bottom: 5px solid #fff;
}
.contact_table th {
  width: 30%;
  text-align: left;
  background: #f0f5fc;
  color: #333;
}
.contact_table td {
  width: 70%;
}
@media (max-width: 767px) {
  .contact_table th {
    width: 45%;
    font-size: 14px;
  }
  .contact_table td {
  width: 55%;
}
}
.contact_table .required {
  color: red;
  font-size: 14px;
  padding-left: 10px;
}

.contact-submit {
  text-align: center;
}
.contact-submit input[type=submit] {
  border: none;
  background: #03439d;
  color: #fff;
  padding: 15px 40px !important;
  border-radius: 0px;
  margin: 1em auto;
}

/* 投稿ページのpost navigation */
.elementor-widget-post-navigation .elementor-post-navigation .pre_nex_thumbnail {
  display: none;
}


/* PC時右サイド追尾 */
.side_floating {
  position: fixed !important;
  top: 50% !important;
  right: 0 !important;
  left: auto !important;
  transform: translateY(-50%) !important;
  z-index: 9999 !important;

  display: flex;
  flex-direction: column;
}

/* 中のテキストを縦書き */
.side_floating .floating_line *,
.side_floating .floating_tel * {
  writing-mode: vertical-rl;
  text-orientation: upright;
  white-space: nowrap;
  line-height: 1.2;
  margin: 0;
}

/* アイコン */
.side_floating .floating_line i,
.side_floating .floating_tel i,
.side_floating .floating_line svg,
.side_floating .floating_tel svg {
  margin-bottom: 6px;
  flex-shrink: 0;
}

/* LINEボタンの疑似要素吹き出し */
.line_btn {
  position: relative;
}

.line_btn::before {
  content: "";
  position: absolute;
  background-image: url("https://bgrand-clean.com/wp-content/uploads/line_sale.webp");
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;

  width: 145px;
  height: 50px;

  top: -45px;
  left: 53%;
  transform: translateX(-50%);

  z-index: 2;
  pointer-events: none;
}


/* H2の装飾 */
.sec_h2 {
  position: relative;
  padding-bottom: 16px;
}

.sec_h2::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
  width: 70px;
  height: 5px;
  background: #03439d;
  border-radius: 999px;
}

.sec_h2.left::after {
  bottom: 0;
  left: 0;
  transform: none;
}

.sec_h2.white::after {
  background: #ffffff;
}


/* H3の装飾 */

.sec_h3 h3 {
    padding: calc(0.5em + 3px) 0.5em;
    position: relative;
    border-top: 1px solid rgba(51, 51, 51, 0.3);
    border-bottom: 1px solid rgba(51, 51, 51, 0.3);
    z-index: 0;
    letter-spacing: 0.1em;
}

.sec_h3 h3::before {
    content: "";
    position: absolute;
    background: #f0f5fc;
    width: 100%;
    height: calc(100% - 6px);
    top: 3px;
    left: 0;
    z-index: -1;
}

.sec_h3.white h3 {
    border-top: 1px solid rgba(255, 255, 255);
    border-bottom: 1px solid rgba(255, 255, 255);
}

.sec_h3.white h3::before {
    background: #ffffff;
}


/* Cleaningバナーのホバー時の内包制御 */
.cleaning_bnr:hover h3 {
  color: #fff!important;
}

.cleaning_bnr:hover svg,
.cleaning_bnr:hover svg path {
  fill: #fff;
  stroke: #fff;
}