@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
*/


/* 一時的に施工事例の画像のリンクを制御 */
.page-id-1601 .p-postList__meta,
.term-category_mizumawari .p-postList__meta, .term-category_interior-reform .p-postList__meta,
.term-category_exterior-reform .p-postList__meta, .term-category_recommend .p-postList__meta,
.term-category_mizumawari .p-postList__excerpt, .term-category_interior-reform .p-postList__excerpt,
.term-category_exterior-reform .p-postList__excerpt, .term-category_recommend .p-postList__excerpt {
	display: none;
}
.page-id-1601 .p-postList__link,
.term-category_mizumawari .p-postList__link, .term-category_interior-reform .p-postList__link,
.term-category_exterior-reform .p-postList__link, .term-category_recommend .p-postList__link {
    pointer-events: none;
    --card_posts_thumb_ratio: 100%;
}
.swiper .p-postList__link {
    pointer-events: none;
}
#body_wrap .swiper {
    --card_posts_thumb_ratio: 100%;
}
/* 一時的に施工事例の画像のリンクを制御 */




@media screen and ( max-width: 480px ) {
	.top #content { padding-top: 0!important; }
	.contact_form .plan_select {
		display: block;
	}
	.contact_form .plan_select > span.mwform-checkbox-field.horizontal-item {
		display: block !important;
		margin: 0 0 10px 0 !important;
	}
	.contact_form .plan_select > span.mwform-checkbox-field.horizontal-item label {
		display: inline-flex;
		align-items: center;
		gap: 6px;
	}
	.contact_form .plan_select input[type="checkbox"] {
		margin: 0;
		flex-shrink: 0;
	}
	.contact_form .plan_select .mwform-checkbox-field-text {
		display: inline !important;
	}
	
	.box_img_text .swell-block-column:nth-child(2),
	.box_img_text .swell-block-column:nth-child(2),
	.box_text_img .swell-block-column:nth-child(1),
	.box_text_img .swell-block-column:nth-child(1) { padding-left: 1.5em!important; padding-right: 1.5em!important; }
	.home h2::before, .home h2::after, .page h2::before, .page h2::after, .single h2::before, .single h2::after { flex: 0.8; }
	body .home h2, body .page h2 {
		gap: 20px; font-size: 200%; font-weight: 500;
		text-align: center; margin: 0 0 40px; padding: 0px;
	}
	body .c-pageExcerpt { font-size: 80%; width: 60%; }
	body .post_content h3 { font-size: 150%; }
	.box_img_text.sp_padding .swell-block-column:nth-child(2) { padding-top: 1.5em!important; padding-bottom: 1.5em!important; }
}

@media screen and ( min-width: 481px ) {
	.home h2::before, .home h2::after, .page h2::before, .page h2::after, .single h2::before, .single h2::after { flex: 0.1; }
	body .home h2, body .page h2, body .single h2 {
		gap: 20px; font-size: 200%; font-weight: 500;
		text-align: center; margin: 40px 0;
	}
}

@media screen and (min-width: 600px) {
	body .c-pageTitle { font-size: 200%; font-weight: 900; }
	body .l-topTitleArea { min-height: 450px; padding: 1em 0; }
}

@media screen and (max-width: 795px) {
	body .single .c-filterLayer__img { display: none; }
	.flow_step .wp-block-media-text__content { padding: 0!important; margin-bottom: 0; }
	body .flow_step h3 { margin-bottom: 1em; }
	.flow_step img { width: 80%; margin-left: auto; margin-right: auto; margin-bottom: 1em; }
	body .form_tel input[type="text"] { width: 30%; }
	.contact_form textarea { width: 99%!important; }
	.contact_form th { border-bottom: none; padding-bottom: 0!important; }
	.contact_form th, .contact_form td { display: block; width: 100%!important; }
	body .fixed-consult-cta a {
		font-size: 14px; padding: 0px;
	}
	.cta_mae p { text-align: left!important; }
	.cta_mae h2 { font-size: 180%!important; }
	body .cta_content .wp-block-column:first-child { border: none; padding-right: 0; }
	body .cta_content { padding: 1.5em; }
	.promise img { width: 80%; text-align: center; }
	.l-footer { margin-bottom: 5em; }
	.cta_tb { display: none; }
}

@media screen and (min-width: 796px) {
	.fixed-consult-cta { background: #fcfaf6; }
	.cta_sp { display: none; }
}

@media screen and (min-width: 796px) {
	/* global menu */
	body .c-gnav { height: 50%; }
	
	body .l-header__inner { padding-left: 0; padding-right: 0; }
	
	body .top #content { padding-top: 0; }
	
	body .home .post_content h2, body .page .post_content h2 { margin-top: -.2em !important; }
/*
	body .fixed-consult-cta { display: none; }
*/
}

@media screen and ( max-width: 959px ) {
	.sp_h2_small h2 { font-size: 140%!important; }
	
	.reason02{ margin-bottom:-50px; }
	.box_text_img .swell-block-column:nth-child(1) {
		order: 2; transform:translateY(-50px);
	}
	
	/* テキスト、画像の場合に画像、テキストの順で表示するために必要 */
	/* .box_wrapper で .box_text_img や .box_img_text を囲む必要がある */
	body .post_content .reason02 .swell-block-columns__inner,
	body .post_content .box_wrapper .swell-block-columns__inner { display: flex !important; flex-direction: column !important; gap: 0; }
	.box_img_text img, .box_text_img img { width: 100%!important; }
	
	.box_img_text .swell-block-column:nth-child(1), .box_text_img .swell-block-column:nth-child(1) {
		margin: -2em auto 0; width: 95%; max-width: 95%;
		padding: 3em; z-index: 99; border-radius: 1em; 
		box-shadow: 0 20px 40px rgba(0,0,0,0.08); position: relative;
	}
	.box_img_text .swell-block-column:nth-child(2), .box_text_img .swell-block-column:nth-child(2) {
		margin: -2em auto 0; width: 95%; max-width: 95%;
		padding: 3em; z-index: 99; border-radius: 1em; 
		box-shadow: 0 20px 40px rgba(0,0,0,0.08); position: relative;
	}
	.box_img_text .swell-block-column:nth-child(1), .box_text_img .swell-block-column:nth-child(2) {
		max-width:100%; width:100%; flex: 0 0 100%; position: relative;
		z-index: 1; margin: 0; padding: 0; 
	}
	.box_img_text .swell-block-columns__inner, .box_text_img .swell-block-columns__inner {
		display: block!important; margin-left: 0; margin-right: 0;
	}
}

@media screen and ( min-width: 960px ) {
	.box_img_text {
		position: relative; transform: translateX(-1%); left: -1%;
	}
	.box_text_img {
		position: relative; transform: translateX(1%); right: -1%;
	}

  .box_text_img .swell-block-columns, .box_img_text .swell-block-columns {
    position: relative; min-height: 550px;
  }

  .box_text_img .swell-block-column:nth-child(2) {
    margin-left: auto;
    margin-right: 0;
  }

  .box_text_img .swell-block-column:nth-child(1) {
    left: 0;
    right: auto;
  }

	.box_img_text .swell-block-column:nth-child(1), .box_text_img .swell-block-column:nth-child(2) {
		max-width:65%; width:65%; flex: 0 0 65%; position: relative;
		z-index: 1;
	}
	
	.box_text_img .swell-block-column:nth-child(1) {
		margin-top: 60px!important; margin-right: 0em; margin-left: var(--swl-clmn-mrgn--x);
		left: 0;  flex: 0 0 45%; position: absolute;
		padding: 3em; max-width: 45%;
		z-index: 99; border-radius: 1em; 
		box-shadow: 0 5px 20px rgba(0,0,0,0.08);
	}
	
	.box_img_text .swell-block-column:nth-child(2) {
		margin-top: 60px; margin-left: 0em; margin-right: var(--swl-clmn-mrgn--x);
		flex: 0 0 45%; position: absolute;
		padding: 3em; max-width: 45%;
		z-index: 99; right: 0; border-radius: 1em; 
		box-shadow: 0 5px 20px rgba(0,0,0,0.08);
	}
/*
	.box_img_text .swell-block-fullWide, .box_text_img .swell-block-fullWide { min-height:900px; }
*/
}
@media screen and ( max-width: 1200px ) {
	.p-fixBtnWrap { bottom: 7.5em; }
	.p-spMenu { display: block; }
	body .l-header .l-header__logo {
		display: flex !important;
		align-items: center !important;
	}

	body .l-header .l-header__menuBtn.sp_ {
		display: flex !important;
		align-items: center !important;
		justify-content: center !important;
		align-self: center !important;
		margin-top: 0 !important;
		margin-bottom: 0 !important;
		height: 48px;
	}
	
	body .l-header .sp_ { display: block!important; }
	.l-fixHeader, .l-header__gnav { display: none; }
}
@media screen and ( min-width: 1201px ) {
	body .fixed-consult-cta { display: none; }
}


/* 投稿ページ */
.single .l-articleBottom__section { margin-bottom: 3em; }


/* 下層ページのタイトル */
.single .l-topTitleArea, .page .l-topTitleArea { background: #fcfaf6; padding: 0!important; }
body .single .c-filterLayer__img { position: static; }
.c-pageTitle { font-family: "Shippori Mincho", serif; }


/* sagasu-renovartion */
.h3_maru .swell-block-column:nth-child(2) h3 { background: #e6e6d1; }
.h3_maru .swell-block-column:first-child h3 { background: #c1b8ac; }
body .h3_maru h3 { text-align: center; padding: .7em; border-radius: 2em; }
.h3_maru h3::before { content: none; }


/* service */
.reform_list .swell-block-columns__inner > .swell-block-column:nth-child(5) h3::before {
  content: "";
  display: inline-block;
  width: 56px;
  height: 56px;
  margin-right: 14px;
  vertical-align: middle;
  background: url("http://ais-shop.work/lifa-sendai/wp-content/uploads/reform_icon05.png") center / contain no-repeat;
}
.reform_list .swell-block-columns__inner > .swell-block-column:nth-child(4) h3::before {
  content: "";
  display: inline-block;
  width: 56px;
  height: 56px;
  margin-right: 14px;
  vertical-align: middle;
  background: url("http://ais-shop.work/lifa-sendai/wp-content/uploads/reform_icon04.png") center / contain no-repeat;
}
.reform_list .swell-block-columns__inner > .swell-block-column:nth-child(3) h3::before {
  content: "";
  display: inline-block;
  width: 56px;
  height: 56px;
  margin-right: 14px;
  vertical-align: middle;
  background: url("http://ais-shop.work/lifa-sendai/wp-content/uploads/reform_icon03.png") center / contain no-repeat;
}
.reform_list .swell-block-columns__inner > .swell-block-column:nth-child(2) h3::before {
  content: "";
  display: inline-block;
  width: 56px;
  height: 56px;
  margin-right: 14px;
  vertical-align: middle;
  background: url("http://ais-shop.work/lifa-sendai/wp-content/uploads/reform_icon02.png") center / contain no-repeat;
}
.reform_list .swell-block-columns__inner > .swell-block-column:first-child h3::before {
  content: "";
  display: inline-block;
  width: 56px;
  height: 56px;
  margin-right: 14px;
  vertical-align: middle;
  background: url("http://ais-shop.work/lifa-sendai/wp-content/uploads/reform_icon01.png") center / contain no-repeat;
}
.reform_list h3 { margin-bottom: 1em; padding-left: 3em; }
.reform_list .swell-block-column {
	border: 1px solid #ccc;
	border-radius: 0.7em;
	padding: 2em;
}
.promise .bg_white .swell-block-column { background: #fff; }

/* contact */
.contact_form select { margin-bottom: 10px; }
body .form_post input[type="tel"] { width: 70px!important; }
.contact_form input[type="text"], .contact_form input[type="email"] { width: 99%; }
.form_tel input[type="text"] { width: auto; }
.contact_form th, .contact_form td { padding: 1em; background: none; border-left: none; border-right: none; border-top: none; }
.contact_form th { width: 30%; }
.contact_form { margin-bottom: 2em; }

/* staff */
.staff_detail h3 { margin: 1em 0em 1em; }
.staff_detail .is-style-balloon_box { border-radius: 10px; }
.staff_detail { padding: 1em; }
.staff_box img { margin-bottom: 1em; border-radius: 10px 10px 0 0; }
.staff_box { border: 1px solid #f0ece5; border-radius: 0.7em; box-shadow: 0 5px 10px rgba(0,0,0,0.1); padding-bottom: 2em; }
.img_size01 img { width: 70%; }
.white_box h3 { margin: 1em 0em 1em; }
.white_box { background: #fff; padding: 1em; border-radius: 1em; }

/* company */
.tbl_design01 td { background: none; border-top: none; border-right: none; border-left: none; }
.tbl_design01 th { background: none; width: 180px!important; border-top: none; border-right: none; border-left: none; }
.tbl_design01 th, .tbl_design01 td { padding: 1em; }
.tbl_design01 table { border: none; }

/* faq */

.faq_list .swell-block-accordion__body::before {
	content:'A'; color: #fff; background: #cab8a1; border-radius: 50%;
	width: 28px; height: 28px; display: inline-flex;
	align-items: center; justify-content: center; margin-right: 10px;
}
.faq_list .swell-block-accordion__label::before {
	content:'Q'; color: #fff; background: #e77926; border-radius: 50%;
	width: 28px; height: 28px; display: inline-flex;
	align-items: center; justify-content: center; margin-right: 10px;
}
.faq_list .swell-block-accordion__body { background: #fff; }
.faq_list .swell-block-accordion__title { background: #fff; border: 1px solid #f7f1e8; }

/* promise */
.promise h3::after {
	position: absolute; top: -35px; left: 0; font-weight: 800;
    font-size: 24px; font-weight: bold; color: #c97a3d;
    letter-spacing: 0.03em; opacity: 0.9;
}
.promise h3 { margin: 1em 0 1em; text-align: center; }
.promise .swell-block-column {
	border: 1px solid #f0ece5; border-radius: 0.7em; box-shadow: 0 5px 10px rgba(0,0,0,0.1);
	padding: 2em;
}


/* cta_content */
.cta_button { padding-top: 2em; }
.cta_content_merit_icon img { width: 80%; }
.cta_content_merit_icon { padding: 1em 0 0; }
.cta_content .wp-block-columns {
    gap: 40px;
}
.cta_content .wp-block-column:first-child {
    border-right: 1px solid #D8D0C6;
    padding-right: 40px;
}
.cta_content {
	padding: 3em; background: #fcf9f8; border-radius: 2em;
}

/* flow */
.flow_step .swell-block-column:nth-child(6) h3::after {
	content: "Step06";
}
.flow_step .swell-block-column:nth-child(5) h3::after {
	content: "Step05";
}
.flow_step .swell-block-column:nth-child(4) h3::after {
	content: "Step04";
}
.flow_step .swell-block-column:nth-child(3) h3::after {
	content: "Step03";
}
.flow_step .swell-block-column:nth-child(2) h3::after {
	content: "Step02";
}
.flow_step .swell-block-column:nth-child(1) h3::after {
	content: "Step01";
}
.flow_step h3::after {
	position: absolute; top: -35px; left: 0; font-weight: 800;
    font-size: 24px; font-weight: bold; color: #c97a3d;
    letter-spacing: 0.03em; opacity: 0.9;
}
.flow_step .swell-block-column {
	border: 1px solid #f0ece5; border-radius: 0.7em; box-shadow: 0 5px 10px rgba(0,0,0,0.1);
	padding: 3em 2em 2em;
}


/* merit */
.merit05 h3::after {
	content: "Merit05";
}
.merit04 h3::after {
	content: "Merit04";
}
.merit03 h3::after {
	content: "Merit03";
}
.merit02 h3::after {
	content: "Merit02";
}
.merit01 h3::after {
	content: "Merit01";
}
.merit01 h3::after, .merit02 h3::after, .merit03 h3::after, .merit04 h3::after, .merit05 h3::after {
	position: absolute; top: -35px; left: 0;
    font-size: 24px; font-weight: bold; color: #c97a3d;
    letter-spacing: 0.03em; opacity: 0.6;
}


/* point */
.point05 h3::after {
	content: "Point05";
}
.point04 h3::after {
	content: "Point04";
}
.point03 h3::after {
	content: "Point03";
}
.point02 h3::after {
	content: "Point02";
}
.point01 h3::after {
	content: "Point01";
}
.point01 h3::after, .point02 h3::after, .point03 h3::after, .point04 h3::after, .point05 h3::after {
	position: absolute; top: -35px; left: 0;
    font-size: 24px; font-weight: bold; color: #c97a3d;
    letter-spacing: 0.03em; opacity: 0.6;
}


/* reason */
.reason03 h3::after {
	content: "Reason03";
}
.reason02 h3::after {
	content: "Reason02";
}
.reason01 h3::after {
	content: "Reason01";
}
.reason01 h3::after, .reason02 h3::after, .reason03 h3::after {
	position: absolute; top: -35px; left: 0;
    font-size: 24px; font-weight: bold; color: #c97a3d;
    letter-spacing: 0.03em; opacity: 0.6;
}

.box_img_text .swell-block-column:nth-child(2), .box_text_img .swell-block-column:nth-child(1) {
	background: #fff; border: 1px solid #f6f6f6; margin-bottom: 3em!important;
}

/* Works */
.swiper a:hover .p-postList__title { text-decoration: underline; }


/* index_reform */
.index_reform .swell-block-column > p:first-of-type::before { border-top: 35px solid #a99b82; bottom: -40px; }
.index_reform .swell-block-column > p:first-of-type { background: #a99b82; color: #fff; border-radius: 0.7em; margin-left: 0.7em; }
.index_reform .index_reform_box h3 { text-align: center; margin-bottom: 1em;}
.index_reform .index_reform_box h3::before { content: none; }
.index_reform .index_reform_box {
	border: 1px solid #f0ece5; border-radius: 0.7em; box-shadow: 0 5px 10px rgba(0,0,0,0.1);
	background: #fff; padding-bottom: 2em;
}
.index_reform img { border-radius: 0.7em 0.7em 0 0; margin-bottom: 1em; }


/* midashi */
.sub_title {
	color: #333;
	font-size: 150%;
	margin-bottom: 0.1em;
}
body .home h2, body .page h2, body .single h2 {
	color: #333;
	display: flex;
	align-items: center;
	justify-content: center;
	background: none;
}
.home h2::before, .home h2::after, .page h2::before, .page h2::after,
.single h2::before, .single h2::after {
	content: "";
	position: static;
	border-top: 2px solid #333 !important;
	border-bottom: none !important;
}


/* global menu */
.header_sub_menu img { max-height: 53px; width: auto; }
.header_sub_menu { margin-top: 12px; }
.c-gnav a::after {
	background: #b50000;
}

.l-topTitleArea__body {
	color: #000;
	text-shadow: 1px 1px 0 rgba(255,255,255,.1);
	-webkit-text-stroke: 5px #fff;
	paint-order: stroke fill;
}

h1, h2, h3, h4, h5, .mincho, .sub_title {
	font-family: "Shippori Mincho", serif;
}

/* footer */
/* 各メニュー行 */
.w-beforeFooter li a:hover::after {
  color: #e66a00;
  transform: translateX(3px);
}
.w-beforeFooter li a:hover {
  color: #e66a00;
  padding-left: 6px;
}
.w-beforeFooter li a::after {
  content: "›";
  flex: 0 0 auto;
  font-size: 24px;
  line-height: 1;
  color: #333;
  opacity: 0.85;
  transition: transform 0.2s ease, color 0.2s ease;
}
.w-beforeFooter li a {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  padding: 13px 4px 13px 0;
  color: #222;
  font-size: 15.5px;
  line-height: 1.5;
  text-decoration: none;
  transition: color 0.2s ease, padding-left 0.2s ease;
}
.w-beforeFooter li {
	margin: 0; padding: 0; border-bottom: 1px solid rgba(80, 55, 35, 0.16);
}
.w-beforeFooter ul { list-style: none; padding-left: 0.3em; }

.w-beforeFooter { margin: 0!important; padding: 0!important;}
.l-footer, .w-beforeFooter { background: #fcfaf6; }
.widget_media_image { text-align: center; }
.fixed-consult-cta {
	position: fixed;
	bottom: 0;
	left: 0;
	width: 100%;
	display: flex;
	z-index: 999;
}
.fixed-consult-cta a {
	flex: 1;
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 10px;
	padding: 18px 10px;
	font-size: 18px;
	font-weight: 700;
	text-decoration: none;
	color: #fff;
	transition: .3s;
}
/*
.fixed-consult-cta .cta-mail {
	background: #2D8CFF;
}
.fixed-consult-cta .cta-line {
	background: #06C755;
}
*/


/* slider */


/* layout */
.l-content { margin-bottom: 0!important; }

/* パンくずリスト */
.l-topTitleArea + .p-breadcrumb { padding-top: 2em; }

body .p1em { padding: 1em; }

body .mt0 { margin-top: 0; }
body .red { color: #cf0909; }
body .center { text-align: center; }
body .mb3em { margin-bottom: 3em; }
body .mb2em { margin-bottom: 2em; }
body .mb1em { margin-bottom: 1em; }
body .mb0 { margin-bottom: 0; }

body .mb30 { margin-bottom: 30px; }

/* 郵便番号プラグインの吹き出し */
#autozip { display: none!important; }

.hissu::after { content: "※"; margin-left: 10px; color: #ff0000; }