@charset "utf-8";

/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
Q&Aブログ h2/h3 見出し装飾用(2025-10-28)ah
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
.single-qa .site-main div div:not(.sidenavi) h2:not(.h2b) {
	position: relative;
	padding-left: 50px;
	padding-bottom: 15px;
	margin-bottom: 30px;
	border-bottom: 1px solid #b3b3b3;
}

.single-qa .site-main div div:not(.sidenavi) h2:not(.h2b)::before {
	content: '';
	position: absolute;
	width: 15px;
	height: 29px;
	background: url("./images/h_deco01.png")no-repeat 50% / contain;
	top: calc(50% - 18px);
	left: 12px;
}

.single-qa .site-main div div:not(.sidenavi) h3:not(.h3b) {
	background-color: #f3f2ed;
	padding-top: 10px;
	padding-left: 15px;
	padding-bottom: 10px;
	margin-bottom: 20px;
	border-left: 8px solid var(--main);
}

/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
ローディング画面
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
.loading_wrap {
	position: fixed;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	z-index: 9999;
	background-color: #fff;
	display: flex;
	justify-content: center;
	align-items: center;
}

.loading_wrap .img {
	display: none;
	width: 200px;
	margin-bottom: 0px;
}

/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
汎用　＞　表
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
/*table01*/
.table01 th {
    background-color: #e5f1eb;
}

/*table02*/
.table02 table {
    border-spacing: 0;
}

/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
汎用　＞　リスト
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
/* カラム式リスト（リストを見出しにするための追記2025-10-23re） */
:is(ul,ol,.list)[class*="cmn_col"] {
    display: flex;
    justify-content: flex-start;
    flex-wrap: wrap;
	--list_col_gap:30px;
    column-gap: var(--list_col_gap);
}

.list.cmn_col03 > div{
    width: calc((100% - var(--list_col_gap) * 2) / 3);/*3カラムの場合*/
    margin: 0;
}

/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
top ＞ promo
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
/*動画の高さ*/
.entry-content .wp-block-cover {
	height: 100svh;
	max-height: 56.25vw;
}

/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
top ＞ service
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
#home_service .wp-block-splide-carousel .splide__slide img {
	min-height: 440px;
	object-fit: cover;
}

/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
フッター
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
.footer-widgets .widget {
	margin-bottom: -1px;
}

#footer-widgets ul.menu {
	gap: 50px;
	justify-content: normal;
}

/*採用情報*/
#footer-widgets ul.menu li.recruit a::before {
	content: '\f08e';
	position: absolute;
	font-size: 1em;
	font-family: "icomoon";
	line-height: 1;
	top: 50%;
	right: -25px;
	transform: translate3d(0px, -50%, 0px);
}

/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
下層　＞　プロモ下子ナビ
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
.h_child_navi ul.child_navi {
    column-gap: 20px;
}

.h_child_navi ul.child_navi a {
    color: #808080;
    background-color: #fff;
    border: 1px solid #cccccc;
    border-radius: 50px;
}

.h_child_navi ul.child_navi li.current_page_item a {
    background-color: #e5f1eb;
    border: 1px solid var(--main);
    border-radius: 50px;
    color: var(--main);
}

.h_child_navi ul.child_navi a:hover{
	background-color: #e5f1eb;
	color: #808080;
}

/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
下層　＞　私たちについて
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
body.page-about .site-content {
    padding: 70px 110px 0px 110px;
}

/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
下層　＞　サービス
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
/*フッター上の子ナビを非表示(サービスページはヘッダー下の子ナビも非表示)*/
body.page-service .f_child_navi,
body.page-service .h_child_navi,
body.page-service-child .f_child_navi {
    display: none;
}

body.page-service-child.one-container .site-content {
    padding: 70px 110px 0px 110px;
}

/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
施工事例 > カテゴリーカラー
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
/*個人宅*/
.works_cat-private p.works_cat {
	background-color: #7b5c3e;
}

/*民間工事*/
.works_cat-minkan p.works_cat {
	background-color: var(--accent);
}

/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
施工事例 > 詳細 > スライダー
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
.swiper_box {
	position: relative;
}

.swiper_box .gallery-top {
	height: 450px;
	margin-bottom: 20px;
	border-radius: 6px;
}

.gallery-top .img_container img {
	position: absolute;
	width: 100%;
	height: 100%;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	object-fit: cover;
}

.swiper_box .gallery-top .swiper-slide a::after {
	content: "\e905";
	position: absolute;
	display: flex;
	justify-content: center;
	align-items: center;
	font-size: 23px;
	font-family: "icomoon";
	width: 40px;
	height: 40px;
	right: 0;
	bottom: 0;
	color: #fff;
	background-color: rgb(0 0 0 / 50%);
	border-top-left-radius: 6px;
}

.swiper_box .gallery-thumbs .swiper-slide {
	width: 120px!important;
	margin-right: 20px!important;
	border-radius: 3px;
	overflow: hidden;
}

.swiper_box :is(.swiper-button-next,.swiper-button-prev) {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 60px;
	height: 60px;
	background-image: none;
	border-radius: 50%;
	border: 2px solid var(--main);
	top: 200px;
	margin-top: 0;
	z-index: 1;
}

.swiper_box .swiper-button-next {
	right: -85px;
}

.swiper_box .swiper-button-prev {
	left: -85px;
}

.swiper_box :is(.swiper-button-next,.swiper-button-prev):after {
	content: '\e913';
	font-size: 18px;
	font-family: "icomoon";
	color: var(--main);
}

.swiper_box .swiper-button-prev:after {
	transform: scaleX(-1);
}

/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
下層　＞　寄せ植え教室
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
/*スライダー*/
.slick-slide {
    margin: 0 2px !important;
}

/*ギャラリー*/
.gallery .wp-block-gallery figure {
    position: relative;
}

.gallery .wp-block-gallery figure::after {
    content: "\e905";
    position: absolute;
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 23px;
    font-family: "icomoon";
    width: 40px;
    height: 40px;
    right: 0;
    bottom: 0;
    color: #fff;
    background-color: rgb(0 0 0 / 50%);
    border-top-left-radius: 6px;
}

/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
下層　＞　造園Q&A
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
/* サイドナビ */
.sidenavi ul.child_navi li:first-child {
    display: none;
}

.sidenavi ul li {
    list-style-type: none;
}

.sidenavi ul li a {
    text-decoration: none;
    display: block;
    position: relative;
    padding: 10px;
    transition: .3s;
	font-size:15px;
	color:var(--text);
}

.sidenavi ul li a:hover {
    opacity: .7;
}

.sidenavi ul li.current_page_item a{
	background-color: #e5f1eb;
    color: var(--main);
}

/*詳細ページ幅調整*/
body.single-qa #content {
    margin: 60px auto;
}

/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
フォーム
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
.wpforms-field input[type="text"], .wpforms-field input[type="url"], .wpforms-field input[type="email"], .wpforms-field input[type="tel"], .wpforms-field textarea, div.wpforms-container-full .wpforms-form .wpforms-field.wpforms-field-checkbox ul, div.wpforms-container-full .wpforms-form .wpforms-field.wpforms-field-radio ul {
    background: #fff !important;
}

div.wpforms-container-full .wpforms-form [class*="wpforms-field-required"],
div.wpforms-container-full .wpforms-form .wpforms-field.wpforms-field-checkbox ul[class*="wpforms-field-required"],
div.wpforms-container-full .wpforms-form .wpforms-field.wpforms-field-radio ul[class*="wpforms-field-required"] {
    background: #fff !important;
}

.wpforms-field input[type="text"], .wpforms-field input[type="tel"]{
    background: #fff !important;
}

/*ラジオボタンの背景は透明*/
div.wpforms-container.wpforms-container-full .wpforms-form .wpforms-field-radio ul[class*="wpforms-field-required"],
div.wpforms-container-full .wpforms-form .wpforms-field.wpforms-field-radio ul{
	background-color: rgba(0,0,0,0)!important;
}

/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
ハンバーガーメニューのカスタマイズ(2023-03-13mk)
↓↓↓下記をまずは削除した上で、【https://coco-factory.jp/ugokuweb/move01-cat/humbugermenu/】から、お好みのボタンのCSSを追加
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
/*ボタン外側※レイアウトによってpositionや形状は適宜変更してください*/
.openbtn{
	position: relative;/*ボタン内側の基点となるためrelativeを指定*/
	background:transparent;
	cursor: pointer;
	width: 50px;
	height:50px;
	border-radius: 5px;
}

/*ボタン内側*/
.openbtn span{
	display: inline-block;
	transition: all .4s;/*アニメーションの設定*/
	position: absolute;
	left: 10px;
	height: 1px;
	border-radius: 2px;
	background: var(--main);
	width: 60%;
}

.home #mobile-header:not(.navigation-stick) .openbtn span{
	background: #fff;
}

.openbtn span:nth-of-type(1) {
	top:15px; 
}

.openbtn span:nth-of-type(2) {
	top:23px;
}

.openbtn span:nth-of-type(3) {
	top:31px;
}

/*activeクラスが付与されると線が回転して×に*/

.openbtn.active span:nth-of-type(1) {
	top: 18px;
	left: 18px;
	transform: translateY(6px) rotate(-45deg);
	width: 30%;
}

.openbtn.active span:nth-of-type(2) {
	opacity: 0;/*真ん中の線は透過*/
}

.openbtn.active span:nth-of-type(3){
	top: 30px;
	left: 18px;
	transform: translateY(-6px) rotate(45deg);
	width: 30%;
}