@charset "UTF-8";
/*
    Template: swell
    Theme Name: SWELL CHILD
    Theme URI: https://swell-theme.com/
    Description: SWELLの子テーマ
    Version: 1.0.0
    Author: LOOS WEB STUDIO
    Author URI: https://loos-web-studio.com/

    License: GNU General Public License
    License URI: http://www.gnu.org/licenses/gpl.html
*/

/* ＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝ */
/* 初期セット */
/* ＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝ */

/* 共通 */
img{
	display: block;
	width: 100%;
}
.center{
	text-align: center;
}
.center img{
	margin-right: auto;
	margin-left: auto;
}
.serif{
	font-family: 'Noto Serif JP', serif;
}
.d_none{
	display: none !important;
}

/* ヘッダー */
@media (min-width: 960px) {
	#header,
	#fix_header{
		padding-top: 6px;
		padding-bottom: 6px;
	}
	.l-header__inner{
		width: 1200px;
	}
	.-parallel .l-header__logo {
		width: 40%;
	}
	.l-header.-parallel .w-header {
		width: 60%;
	}
	.l-header__logo h1,
	.l-header__logo div{
		justify-content: flex-start !important;
	}
	.w-header{
		justify-content: flex-end !important;
	}
	.l-header__gnav span{
		font-size: 14px !important;
	}
	.-series .l-header__logo,
	.l-fixHeader__logo{
		margin-right: 0;
	}
}
@media screen and (max-width: 1200px) {
  .l-header__inner {
    padding-left: 8px !important;
    padding-right: 8px !important;
  }
	.w-header.pc_{
		display: none;
	}
}
.header_cta{
	align-items: center;
	gap: 20px;
}
.header_contact a{
	padding: 12px 32px !important;
}
@media screen and (min-width: 1201px){
  .l-header__inner {
    padding-left: 0 !important;
    padding-right: 0 !important;
  }
}

/* フッターのデザイン調整 */
.l-footer__nav {
  gap: 1em;
  padding: 1em 0 4em;
}

.l-footer__nav a {
  border-right: none;
}

.l-footer__nav li:first-child a {
  border-left: none;
}

.l-footer__nav > li > a {
  font-weight: 700;
  font-size: 14px;
}

.l-footer__nav .sub-menu {
  margin-top: 0.25em;
  display: grid;
  gap: 0.15em;
}

.l-footer__nav .sub-menu > li {
  margin-left: 0.75em;
}

.l-footer__nav .sub-menu > li a {
  padding: 0 0.75em;
  position: relative;
  font-size: 13px;
}

.l-footer__nav .sub-menu > li a::before {
  content: "";
  width: 5px;
  height: 1px;
  background-color: var(--color_footer_text);
  position: absolute;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
}

@media screen and (max-width: 767px) {
  .l-footer__nav {
    gap: 0.5em;
    flex-direction: column;
  }

  .l-footer__nav > li:nth-of-type(n + 2) {
    padding-bottom: 0.5em;
  }

  .l-footer__nav > li {
    border-bottom: 1px solid rgba(255, 255, 255, 0.25);
  }

  .l-footer__nav > li > a {
    font-size: 13px;
  }

  .l-footer__nav .sub-menu {
    margin-top: 0.2em;
    gap: 0.5em;
  }

  .l-footer__nav .sub-menu > li a {
    font-size: 12px;
  }
}

/* SPメニューのデザイン調整 */
.c-spnav .menu-item a{
	font-weight: bold;
}
.c-spnav .sub-menu a{
	font-weight: 400;
}


/* ＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝ */
/* トップページ共通 */
/* ＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝ */
@media (max-width: 960px){
	.heading_img{
		margin-bottom: 2em !important; 
	}
	.heading_img img{
		width: 60% !important;
		max-width: 260px !important;
	}
	#sec_area .heading_img img{
		width: 100% !important;
	}
}

/* ＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝ */
/* メニューセクション */
/* ＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝ */
#sec_menu .menu_ttl{
	padding: 4px 12px;
}
#sec_menu .menu-right .box_wrapper{
	padding: 12px;
}
#sec_menu .menu-right .wp-block-columns{
	gap: 0.6rem !important;
	justify-content: center
}

@media (max-width: 960px){
	#sec_menu .menu_columns{
		flex-direction: column;
	}
}

@media (min-width: 1201px){
	#sec_menu .box_wrapper{
		height: 100%;
	}
	#sec_menu .menu-left .box_wrapper{
		justify-content: space-between;
	}
	
}

/* ＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝ */
/* コラムセクション */
/* ＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝ */

@media (min-width: 960px) {
  .post-col5 .-type-card.-pc-col3 .p-postList__item, .-col4 .-type-thumb.-pc-col3 .p-postList__item{
    width: calc(100% / 5);
  }
}

/* ＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝ */
/* フッター直前ウィジェット */
/* ＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝ */

#before_footer_widget a{
	text-decoration: none;
	color: #0A123D;
}

/* ＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝ */
/* フッター */
/* ＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝ */

#footer .sub-menu{
	color: #505078;
}

/* ＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝ */
/* 施工事例　ACFでbefore・afterを表示 */
/* ＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝ */

/* ▼ メインの画像コンテナ（PC時は横並び） ▼ */
.seko-images {
    display: flex;
    gap: 20px; /* 画像と矢印の間の余白 */
    justify-content: center;
    align-items: center;
    margin-bottom: 20px;
}

/* ▼ BEFORE / AFTER 画像の枠（PC時は50%ずつ） ▼ */
.seko-before, .seko-after {
    position: relative;
    width: 50%; /* PC時は画像を半々に */
    text-align: center;
}

/* ▼ 画像のデザイン ▼ */
.seko-images img {
    width: 100%;
    height: auto;
    max-width: 100%;
    border-radius: 8px;
    box-shadow: 2px 2px 10px rgba(0, 0, 0, 0.1);
}

/* ▼ BEFORE / AFTER の擬似要素ラベル（左上＆画像と少し重なるように調整） ▼ */
.seko-before::before,
.seko-after::before {
    content: 'BEFORE';
    position: absolute;
    top: -14px; /* ← 画像と少し重なるように調整 */
    left: 5px;
    background-color: #04384C;
    color: #fff;
    padding: 6px 12px;
    font-size: 14px;
    font-weight: bold;
    border-radius: 4px;
    box-shadow: 2px 2px 5px rgba(0, 0, 0, 0.2); /* 影をつけて視認性をアップ */
}

.seko-after::before {
    content: 'AFTER';
}

/* ▼ 矢印のデザイン ▼ */
.dli-caret-right {
  display: inline-block;
  vertical-align: middle;
  color: #04384C; /* 矢印の色 */
  line-height: 1;
  width: 0;
  height: 0;
  border-style: solid;
  border-color: transparent;
  border-width: 1.2em 2.4em; /* 矢印のサイズを大きく */
  border-left-color: currentColor;
  border-right: 0;
  margin: 0 10px; /* 画像と矢印の間の余白 */
}

/* ▼ 600px以下の時、縦並びに変更（レスポンシブ対応） ▼ */
@media screen and (max-width: 600px) {
    .seko-images {
        flex-direction: column; /* 縦並びに変更 */
        gap: 10px; /* 余白を調整 */
    }

    .seko-before, .seko-after {
        width: 100%; /* 画像を100%幅に */
    }

    .dli-caret-right {
        transform: rotate(90deg); /* 矢印を縦向きに */
        margin: 10px auto; /* 矢印を中央に配置 */
    }
}

.c-pageTitle__subTitle{
	display: none;
}

/* ＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝ */
/* お問い合わせフォーム */
/* ＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝ */
.w100{
	width: 100%;
}
.snow-monkey-form .smf-button-control{
	display: block !important;
	margin-left: 0 !important;
}
.snow-monkey-form .smf-button-control + .smf-button-control{
	margin-top: 8px !important;
}
.smf-item__description{
	width: fit-content;
    background: #F03C8C;
    padding: 4px 8px;
    color: #fff;
    border-radius: 6px;
}
.snow-monkey-form button{
	width: 90%;
	max-width: 480px;
}
.smf-action .smf-button-control__control{
	background-image: none;
	background: #6A3705;
	color: #fff;
	font-size: 1.3rem;
	border: none;
}
