@charset 'UTF-8';

/* ■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■

	各固定ページ

■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■ */



/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★

	body直下にid名「wrapper」のdivがあります。
	こちらには、固定ページごとに異なるclass名(post-〇)が付与されますので、
	ご活用ください。
	
	【例】
	<body>
	<div id="wrapper" class="post-2 page type-page status-publish has-post-thumbnail hentry">

★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */



/* ================================================================================

	レイアウト

================================================================================ */

/* PC設定
----------------------------------------------- */
@media (min-width: 768px) {
	#wrapper{
	}

	main.outer_wrap {
		position: relative;
		max-width: none;
		/* max-width: 1920px; 固定幅レイアウト時 */
		width: 100%;
		min-height: 50vh;
		display: block;
		padding: 80px 0 0;
		margin: 0 auto;
	}

	.inner_wrap {
		position: relative;
		width: 100%;
		margin: 0 auto;
	}
}



/* SP設定
----------------------------------------------- */
@media (max-width: 767px) {
	#wrapper {
	}

	main.outer_wrap {
		position: relative;
		width: 100%;
		min-height: 50vh;
		padding: 12vw 0 0;
	}

	.inner_wrap {
		position: relative;
		width: 100%;
		padding: 0 4vw;
	}
}




/* ================================================================================

	メイン画像

================================================================================ */

/* PC設定
----------------------------------------------- */
@media (min-width: 768px) {

	/* メイン画像
	----------------------------------------------- */
	.main_cate {
		position: relative;
		background: url(../img/main_cate.jpg) center bottom / cover no-repeat;
		width: 100%;
		height: 31vw;
	}
	.main_cate_in {
		position: relative;
		width: 100%;
		height: 100%;
		display: table;
	}

	/* メイン画像のタイトル */
	.main_cate_in p {
		display: table-cell;
		vertical-align: middle;
		text-align: center;
		font-size: 2.5vw;
		font-weight: 900;
		letter-spacing: 0.15em;
		text-indent: 0.15em;
		z-index: 1;
	}
	.main_cate_in p span {
		display: inline-block;
		background-color: #154a74;
		color: #ffffff;
		padding: 0 1em 0.15em;
	}

}





/* SP設定
----------------------------------------------- */
@media (max-width: 767px) {

	/* メイン画像
	----------------------------------------------- */
	.main_cate {
		position: relative;
		background: url(../img/main_cate_sp.jpg) center bottom / cover no-repeat;
		width: 100%;
		height: 90vw;
	}
	.main_cate_in {
		position: relative;
		width: 100%;
		height: 100%;
		display: table;
		padding: 0 0 0 0;
	}

	/* メイン画像のタイトル */
	.main_cate_in p {
		display: table-cell;
		vertical-align: middle;
		text-align: center;
		font-size: 5.5vw;
		font-weight: 900;
		letter-spacing: 0.1em;
		text-indent: 0.1em;
		z-index: 1;
	}
	.main_cate_in p span {
		display: inline-block;
		background-color: #154a74;
		color: #ffffff;
		padding: 0 1em 0.15em;
	}
}





/* ================================================================================

	マージンボックス

================================================================================ */

/* PC設定
----------------------------------------------- */
@media (min-width: 768px) {

	/* 上にマージンを空ける
	----------------------------------------------- */
	.top_long {
		margin-top: 120px;
	}
	.top_middle {
		margin-top: 80px;
	}
	.top_short {
		margin-top: 40px;
	}
	.top_vshort {
		margin-top: 20px;
	}

	/* 下にマージンを空ける
	----------------------------------------------- */
	.bottom_long {
		margin-bottom: 120px;
	}
	.bottom_middle {
		margin-bottom: 80px;
	}
	.bottom_short {
		margin-bottom: 40px;
	}
	.bottom_vshort {
		margin-bottom: 20px;
	}

	/* 両方にマージンを空ける
	----------------------------------------------- */
	.both_long {
		margin-top: 120px;
		margin-bottom: 120px;
	}
	.both_middle {
		margin-top: 80px;
		margin-bottom: 80px;
	}
	.both_short {
		margin-top: 40px;
		margin-bottom: 40px;
	}
	.both_vshort {
		margin-top: 20px;
		margin-bottom: 20px;
	}

}



/* SP設定
----------------------------------------------- */
@media (max-width: 767px) {

	/* 上にマージンを空ける
	----------------------------------------------- */
	.top_long {
		margin-top: 16vw;
	}
	.top_middle {
		margin-top: 12vw;
	}
	.top_short {
		margin-top: 8vw;
	}
	.top_vshort {
		margin-top: 4vw;
	}

	/* 下にマージンを空ける
	----------------------------------------------- */
	.bottom_long {
		margin-bottom: 16vw;
	}
	.bottom_middle {
		margin-bottom: 12vw;
	}
	.bottom_short {
		margin-bottom: 8vw;
	}
	.bottom_vshort {
		margin-bottom: 4vw;
	}

	/* 両方にマージンを空ける
	----------------------------------------------- */
	.both_long {
		margin-top: 16vw;
		margin-bottom: 16vw;
	}
	.both_middle {
		margin-top: 12vw;
		margin-bottom: 12vw;
	}
	.both_short {
		margin-top: 8vw;
		margin-bottom: 8vw;
	}
	.both_vshort {
		margin-top: 4vw;
		margin-bottom: 4vw;
	}

}




/* ================================================================================

	パディングボックス

================================================================================ */

/* PC設定
----------------------------------------------- */
@media (min-width: 768px) {

	/* 上にパディングを空ける
	----------------------------------------------- */
	.p_top_long {
		padding-top: 120px;
	}
	.p_top_middle {
		padding-top: 80px;
	}
	.p_top_short {
		padding-top: 40px;
	}
	.p_top_vshort {
		padding-top: 20px;
	}

	/* 下にパディングを空ける
	----------------------------------------------- */
	.p_bottom_long {
		padding-bottom: 120px;
	}
	.p_bottom_middle {
		padding-bottom: 80px;
	}
	.p_bottom_short {
		padding-bottom: 40px;
	}
	.p_bottom_vshort {
		padding-bottom: 20px;
	}

	/* 両方にパディングを空ける
	----------------------------------------------- */
	.row_long {
		padding-top: 120px;
		padding-bottom: 120px;
	}
	.row_middle {
		padding-top: 80px;
		padding-bottom: 80px;
	}
	.row_short {
		padding-top: 40px;
		padding-bottom: 40px;
	}
	.row_vshort {
		padding-top: 20px;
		padding-bottom: 20px;
	}
}


/* SP設定
----------------------------------------------- */
@media (max-width: 767px) {

	/* 上にパディングを空ける
	----------------------------------------------- */
	.p_top_long {
		padding-top: 16vw;
	}
	.p_top_middle {
		padding-top: 12vw;
	}
	.p_top_short {
		padding-top: 8vw;
	}
	.p_top_vshort {
		padding-top: 4vw;
	}

	/* 下にパディングを空ける
	----------------------------------------------- */
	.p_bottom_long {
		padding-bottom: 16vw;
	}
	.p_bottom_middle {
		padding-bottom: 12vw;
	}
	.p_bottom_short {
		padding-bottom: 8vw;
	}
	.p_bottom_vshort {
		padding-bottom: 4vw;
	}

	/* 両方にパディングを空ける
	----------------------------------------------- */
	.row_long {
		padding-top: 16vw;
		padding-bottom: 16vw;
	}
	.row_middle {
		padding-top: 12vw;
		padding-bottom: 12vw;
	}
	.row_short {
		padding-top: 8vw;
		padding-bottom: 8vw;
	}
	.row_vshort {
		padding-top: 4vw;
		padding-bottom: 4vw;
	}


	/* 背景色を伸ばす
	----------------------------------------------- */
	.row_sp {
		padding-left: 4vw !important;
		padding-right: 4vw !important;
	}
}




/* ================================================================================

	カラーボックス

================================================================================ */

/* PC設定
----------------------------------------------- */
@media (min-width: 768px) {

	/* カラー01 */
	.row_c01 {
		background: url(../img/spacer.gif) center top / auto auto repeat ,#ffffff;
	}

	/* カラー02 */
	.row_c02 {
		background: url(../img/spacer.gif) center top / auto auto repeat ,#154a74;
	}

	/* ボーダー囲い */
	.box_border {
		padding: 40px;
	}
	/* 画像のボーダー囲い */
	.img_border img {
		
	}
	
	/* 枠 */
	.special_box {
		background-color: #ffffff;
	}
	
	/* プラン内容 見出し */
	.h3_special {
		background-color: #154a74;
		text-align: center;
		padding: 20px 0;
	}
	.h3_special h3 {
		font-size: 32px;
		font-weight: 900;
		color: #ffffff;
	}
	.row_c02 .h3_special {
		background-color: #fdc723;
	}
	.row_c02 .h3_special h3 {
		color: #154a74;
	}
	
	/* プラン内容 */
	.special_content {
		padding: 35px 0 45px;
	}
	.special_list {
		text-align: center;
		font-size: 0;
	}
	.special_list ul {
		display: inline-block;
		text-align: left;
		margin-left: 50px;
	}
	.special_list ul:first-of-type {
		margin-left: 0;
	}
	.special_list ul li {
		position: relative;
		font-size: 24px;
		font-weight: 700;
		color: #000000;
	}
	
	.special_text {
		text-align: center;
		font-size: 20px;
		font-weight: 700;
	}
	
	.special_red {
		text-align: center;
		font-size: 20px;
		font-weight: 700;
		color: #d92a2a;
		margin-top: 20px;
	}

}


/* SP設定
----------------------------------------------- */
@media (max-width: 767px) {

	/* カラー01 */
	.row_c01 {
		background: url(../img/spacer.gif) center top / auto auto repeat ,#ffffff;
		padding-left: 4vw;
		padding-right: 4vw;
	}

	/* カラー02 */
	.row_c02 {
		background: url(../img/spacer.gif) center top / auto auto repeat ,#154a74;
		padding-left: 4vw;
		padding-right: 4vw;
	}

	/* ボーダー囲い */
	.box_border {
		padding: 6vw;
	}
	/* 画像のボーダー囲い */
	.img_border img {
		border: 2vw solid #5f4b3e;
	}
	
	/* 枠 */
	.special_box {
		background-color: #ffffff;
	}
	
	/* プラン内容 見出し */
	.h3_special {
		background-color: #154a74;
		text-align: center;
		padding: 4vw 0;
	}
	.h3_special h3 {
		font-size: 5vw;
		font-weight: 900;
		color: #ffffff;
	}
	.row_c02 .h3_special {
		background-color: #fdc723;
	}
	.row_c02 .h3_special h3 {
		color: #154a74;
	}
	
	/* プラン内容 */
	.special_content {
		padding: 6vw;
	}
	.special_list {
		
	}
	.special_list ul {
	}
	.special_list ul li {
		position: relative;
		font-size: 4vw;
		font-weight: 700;
		color: #000000;
	}
	
	.special_text {
		text-align: center;
		font-size: 4vw;
		font-weight: 700;
	}
	
	.special_red {
		text-align: center;
		font-weight: 700;
		color: #d92a2a;
		margin-top: 2vw;
	}
	
	
}




/* ================================================================================

	見出し

================================================================================ */

/* PC設定
----------------------------------------------- */
@media (min-width: 768px) {

	/* h2見出し
	----------------------------------------------- */
	.h2_cate {
		border-bottom: 3px solid #154a74;
		padding: 0 0 16px 0 !important;
	}
	.h2_cate h2 {
		font-size: 32px;
		font-weight: 900;
		color: #154a74;
		text-align: center;
		line-height: 1.4 !important;
	}
	
	.row_c02 .h2_cate {
		border-bottom: 3px solid #ffffff;
		padding: 0 0 16px 0 !important;
	}
	.row_c02 .h2_cate h2 {
		font-size: 32px;
		font-weight: 900;
		color: #ffffff;
		text-align: center;
		line-height: 1.4 !important;
	}
	

	/* h3見出し
	----------------------------------------------- */
	.h3_cate {
		border-bottom: 1px solid #154a74;
		padding: 0 0 12px 0 !important;
	}
	.h3_cate h3 {
		font-size: 26px;
		color: #154a74;
		font-weight: 900;
		text-align: center;
	}

}


/* SP設定
----------------------------------------------- */
@media (max-width: 767px) {

	/* h2見出し
	----------------------------------------------- */
	.h2_cate {
		border-bottom: 3px solid #154a74;
		padding: 0 0 2vw 0 !important;
	}
	.h2_cate h2 {
		font-size: 5.5vw;
		font-weight: 900;
		color: #154a74;
		line-height: 1.4 !important;
		text-align: center;
	}
	
	.row_c02 .h2_cate {
		border-bottom: 3px solid #ffffff;
	}
	.row_c02 .h2_cate h2 {
		color: #ffffff;
	}

	/* h3見出し
	----------------------------------------------- */
	.h3_cate {
		border-bottom: 1px solid #154a74;
		padding: 0 0 1.5vw 0 !important;
	}
	.h3_cate h3 {
		font-size: 4.5vw;
		font-weight: 900;
		color: #154a74;
		line-height: 1.4 !important;
		text-align: center;
	}

}




/* ================================================================================

	共通ボタン

================================================================================ */

/* PC設定
----------------------------------------------- */
@media (min-width: 768px) {

	/* リンク
	----------------------------------------------- */
	.link_common {
		margin-top: 40px;
	}
	.link_common ul {
		font-size: 0;
		letter-spacing: -0.4em;
		text-align: center;
	}
	.link_common ul li {
		display: inline-block;
		font-size: 24px;
		letter-spacing: 0;
		margin-left: 20px;
	}
	.link_common ul li:first-of-type {
		margin-left: 0;
	}
	.link_common ul li a {
		position: relative;
		display: block;
		background-color: #ff7f00;
		color: #ffffff;
		letter-spacing: 0.05em;
		text-indent: 0.05em;
		line-height: 1.3;
		padding: 0.8em 4em 0.9em;
	}
	.link_common ul li a::after {
		position: absolute;
		content: "";
		display: block;
		background: url(../img/arrow_w.png) center top / contain no-repeat;
		width: 11px;
		height: 18px;
		top: 50%;
		margin-top: -9px;
		right: 16px;
	}
}


/* SP設定
----------------------------------------------- */
@media (max-width: 767px) {

	/* リンク
	----------------------------------------------- */
	.link_common {
		margin-top: 6vw;
	}
	.link_common ul {
		text-align: center;
	}
	.link_common ul li {
		display: block;
		font-size: 4vw;
	}
	.link_common ul li {
		margin-top: 2vw;
	}
	.link_common ul li:first-of-type {
		margin-top: 0;
	}
	.link_common ul li a {
		position: relative;
		display: block;
		width: 80vw;
		background-color: #ff7f00;
		color: #ffffff;
		letter-spacing: 0.05em;
		text-indent: 0.05em;
		line-height: 1.3;
		padding: 0.8em 0 0.9em;
		margin-left: auto;
		margin-right: auto;
	}
	.link_common ul li a::after {
		position: absolute;
		content: "";
		display: block;
		background: url(../img/arrow_w.png) center top / contain no-repeat;
		width: 2vw;
		height: 3vw;
		top: 50%;
		margin-top: -1.5vw;
		right: 3vw;
	}
}





/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★

	ここから各固定ページ

★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */


/* ================================================================================

	実績紹介部分

================================================================================ */


/* カテゴリアイコン色 */
.works_icon span {
	background-color: #222222;
	color: #ffffff;
}


/* PC設定
----------------------------------------------- */
@media (min-width: 768px) {

	.works_wrap {
		position: relative;
		width: 1000px;
		margin:0 auto;
	}
	.works_wrap ul {
		font-size: 0;
	}
	.works_wrap > ul > li {
		display: inline-block;
		vertical-align: top;
		width: 320px;
		margin-left: 20px;
		font-size: 16px;
	}
	.works_wrap > ul > li:nth-of-type(3n+1) {
		margin-left: 0;
	}


	/* カテゴリアイコン */
	.works_icon {
		position: relative;
		height: 0;
	}
	.works_icon span {
		position: relative;
		display: inline-block;
		transform: translateY(16px);
		-webkit-transform: translateY(16px);
		-ms-transform: translateY(16px);
		padding: 0 0.5em 0.1em;
		z-index: 1;
	}


	/* サムネイル画像 */
	.works_thumb img {
		width: 100%;
		height: 213px;
		object-fit: cover;
		font-family: 'object-fit: cover;'; /* IE対策 */
	}


	/* 投稿記事見出し */
	.works_title a {
		display: block;
		overflow: hidden;
		white-space: nowrap;
		text-overflow: ellipsis;
		-webkit-text-overflow: ellipsis;
		-o-text-overflow: ellipsis;
		padding: 0.3em 0.5em;
		font-size: 18px;
	}

}



/* SP設定
----------------------------------------------- */
@media (max-width: 767px) {

	.works_wrap {
		position: relative;
		margin: 0 auto;
	}
	.works_wrap > ul {
	}
	.works_wrap > ul > li {
		position: relative;
		margin: 4vw 4vw 0;
		padding: 0;
	}
	.works_wrap > ul > li:first-of-type {
		margin-top: 0;
	}

	.works_wrap > ul > li > a {
		display: block;
		overflow: hidden;
		white-space: nowrap;
		text-overflow: ellipsis;
		-webkit-text-overflow: ellipsis;
		-o-text-overflow: ellipsis;
		
		border: 1px solid #cccccc;
	}


	/* カテゴリアイコン */
	.works_icon {
		position: relative;
		height: 0;
	}
	.works_icon span {
		position: relative;
		display: inline-block;
		transform: translateY(4vw);
		-webkit-transform: translateY(4vw);
		-ms-transform: translateY(4vw);
		padding: 0 0.5em 0.1em;
		z-index: 1;
	}


	/* サムネイル画像 */
	.works_thumb img {
		max-width: 100%;
		width: 100%;
		height: 61.335vw;
		object-fit: cover;
		font-family: 'object-fit: cover;';
	}


	/* 投稿記事見出し */
	.works_title a {
		display: block;
		overflow: hidden;
		white-space: nowrap;
		text-overflow: ellipsis;
		-webkit-text-overflow: ellipsis;
		-o-text-overflow: ellipsis;
		padding: 0.3em 0.5em;
		font-size: 4vw;
	}

}





/* ================================================================================

	下層共通

================================================================================ */
.box_border.bg_wh {
	background: #ffffff;
}

/* PC設定
----------------------------------------------- */
@media (min-width: 768px) {
	.pc_center {
		text-align: center;
	}
}



/* SP設定
----------------------------------------------- */
@media (max-width: 767px) {
	.col_sp {
		margin-bottom: 6vw;
	}
}





/* ================================================================================

	こだわり

================================================================================ */
.reason_col {
	background: #154a74;
	color: #ffffff;
}
.reason_col h4 {
	text-align: center;
}
.box_arr::after {
	content: ' ';
	position: absolute;
	left: 0;
	right: 0;
	margin: auto;
	width:0;
	height: 0;
	border: none;
}


/* PC設定
----------------------------------------------- */
@media (min-width: 768px) {
	.reason_col_box {
		margin-bottom: 30px;
	}
	.reason_col {
		padding: 35px 40px;
	}
	.reason_col h4 {
		font-size: 24px;
		margin-bottom: 20px;
	}
	.box_arr::after {
		bottom: -35px;
		border-top: 35px solid #ffffff;
		border-right: 40px solid transparent;
		border-left: 40px solid transparent;
	}
	
	
	.toryou {
		margin-top: 25px;
		height: 320px;
		background: url(../img/toryou_haikei-2.png) center top / contain no-repeat;
	}
	
	.ashiba_img {
		text-align: center;
		margin: 20px 0;
	}
	
	/* セクション */
	.costcut_row {
	}
	
	/* 見出し */
	.h2_costcut h2 {
		text-align: center;
		color: #154a74;
		font-size: 43px;
		font-weight: 900;
		line-height: 1.4;
		letter-spacing: 0.04em;
	}
	
	/* インナーセクション */
	.costcut_row_in {
	}
	
	/* 自社施工しない塗装店 */
	.costcut_left {
		margin-right: 2px;
	}
	.costcut_left:after {
		position: absolute;
		content: '';
		background: url(../img/paint_a.png) center top / contain no-repeat;
		width: 115px;
		height: 321px;
		bottom: -51px;
		left: -53px;
	}
	
	/* 自社施工しない塗装店 見出し */
	.h3_costcut01 {
		text-align: center;
		background-color: #154a74;
		color: #ffffff;
		padding: 34px 0;
	}
	.h3_costcut01 h3 {
		font-size: 25px;
		font-weight: 900;
		letter-spacing: 0.05em;
	}
	
	/* 自社施工しない塗装店 グラフ */
	.costcut_example01 {
		background-color: #ffffff;
		padding: 35px 0;
		text-align: center;
	}
	.costcut_example01 img {
		width: 274px;
	}
	
	/* ハローペイント */
	.costcut_right:after {
		position: absolute;
		content: '';
		background: url(../img/paint_b.png) center top / contain no-repeat;
		width: 138px;
		height: 430px;
		bottom: -79px;
		right: -69px;
	}

	/* ハローペイント 見出し */
	.h3_costcut02 {
		text-align: center;
		background-color: #154a74;
		padding: 17px 0;
	}
	.h3_costcut02 img {
		width: 187px;
	}
	
	/* ハローペイント グラフ */
	.costcut_example02 {
		text-align: center;
		background-image: linear-gradient(-45deg, rgb(212,236,254) 25%, #fff 25%, #fff 50%, rgb(212,236,254) 50%, rgb(212,236,254) 75%, #fff 75%);
		background-size: 40px 40px;
		padding: 35px 0;
	}
	.costcut_example02 img {
		width: 274px;
	}
	
	/* コストカット テキスト */
	.costcut_text {
		font-size: 20px;
		font-weight: 700;
		text-align: center;
		color: #154a74;
		margin: 34px 0 0;
		line-height: 1.4;
	}
	
	/* ボタン */
	.costcut_btn {
		margin-top: 39px;
	}
	.costcut_btn a {
		display: block;
		width: 695px;
		background-color: #d92a2a;
		border-radius: 40px;
		color: #ffffff;
		font-weight: 900;
		text-align: center;
		font-size: 30px;
		margin: 0 auto;
		padding: 15px 0;
	}
	
	.maker_list {
		text-align: center;
		font-size: 0;
	}
	.maker_list ul {
		display: inline-block;
		text-align: left;
		margin-left: 20px;
	}
	.maker_list ul:first-of-type {
		margin-left: 0;
	}
	.maker_list ul li {
		position: relative;
		font-size: 20px;
		font-weight: 700;
		color: #000000;
	}
	
	.maker_text {
		margin-top: 20px;
		text-align: center;
		font-size: 20px;
		font-weight: 700;
	}
	
	.flow_img {
		margin-left: 40px;
	}
	
}



/* SP設定
----------------------------------------------- */
@media (max-width: 767px) {
	.reason_col_box {
		margin-bottom: 6vw;
	}
	.reason_col {
		padding: 6vw;
	}
	.reason_col h4 {
		font-size: 4.4vw;
		margin-bottom: 3vw;
	}
	.box_arr::after {
		bottom: -6vw;
		border-top: 6vw solid #ffffff;
		border-right: 7vw solid transparent;
		border-left: 7vw solid transparent;
	}
	
	.toryou {
		margin-top: 25px;
		height: 300px;
		background: url(../img/toryou_haikei_sp.png) center top / contain no-repeat;
	}
	
	.ashiba_img {
		text-align: center;
		margin: 6vw 0;
	}
	
	/* セクション */
	.re_costcut_row {
		padding: 12vw 0 16vw;
	}
	
	/* 見出し */
	.h2_costcut h2 {
		text-align: center;
		color: #154a74;
		font-size: 5vw;
		font-weight: 900;
		line-height: 1.4;
		letter-spacing: 0.04em;
	}
	
	/* インナーセクション */
	.costcut_row_in {
		margin: 8vw 0 0;
	}
	
	/* 自社施工しない塗装店 */
	.costcut_left:after {
		position: absolute;
		content: '';
		background: url(../img/paint_a.png) center top / contain no-repeat;
		width: 17vw;
		height: 47vw;
		bottom: -4vw;
		left: -2vw;
	}
	
	/* 自社施工しない塗装店 見出し */
	.h3_costcut01 {
		text-align: center;
		background-color: #154a74;
		color: #ffffff;
		padding: 6vw 0;
	}
	.h3_costcut01 h3 {
		font-size: 5vw;
		font-weight: 900;
		letter-spacing: 0.05em;
	}
	
	/* 自社施工しない塗装店 グラフ */
	.costcut_example01 {
		background-color: #ffffff;
		padding: 6vw 0;
		text-align: center;
	}
	.costcut_example01 img {
		width: 60vw;
	}
	
	/* ハローペイント */
	.costcut_right {
		margin-top: 8vw;
	}
	.costcut_right:after {
		position: absolute;
		content: '';
		background: url(../img/paint_b.png) center top / contain no-repeat;
		width: 19vw;
		height: 60vw;
		bottom: -6vw;
		right: -3vw;
	}

	/* ハローペイント 見出し */
	.h3_costcut02 {
		text-align: center;
		background-color: #154a74;
		padding: 4vw 0;
	}
	.h3_costcut02 img {
		width: 40vw;
	}
	
	/* ハローペイント グラフ */
	.costcut_example02 {
		text-align: center;
		background-image: linear-gradient(-45deg, rgb(212,236,254) 25%, #fff 25%, #fff 50%, rgb(212,236,254) 50%, rgb(212,236,254) 75%, #fff 75%);
		background-size: 40px 40px;
		padding: 6vw 0;
	}
	.costcut_example02 img {
		width: 60vw;
	}
	
	/* コストカット テキスト */
	.costcut_text {
		font-size: 4vw;
		font-weight: 700;
		text-align: center;
		color: #154a74;
		margin: 8vw 0 0;
		line-height: 1.4;
	}
	
	.maker_list {
		text-align: center;
	}
	.maker_list ul {
		text-align: left;
	}
	.maker_list ul li {
		position: relative;
		font-size: 4vw;
		font-weight: 700;
		color: #000000;
	}
	
	.maker_text {
		margin-top: 4vw;
		text-align: center;
		font-size: 4vw;
		font-weight: 700;
	}
	
	.sp_kodawari_text .special_text {
		text-align: left;
	}
	
	.flow_img {
		margin-bottom: 6vw;
	}
	
}




/* ================================================================================

	ポップアップリンク

================================================================================ */


		/* ライン */
		span.line_merit{
			background:linear-gradient(transparent 60%, #ff6 60%);
			font-weight: bold;
		}
		span.line_demerit{
			background:linear-gradient(transparent 60%, #9ae4ff 60%);
			font-weight: bold;
		}
		span.line_meyasu{
			background:linear-gradient(transparent 60%, #c1d96a 60%);
			font-weight: bold;
		}



/* PC設定
----------------------------------------------- */
@media (min-width: 768px) {

	.popupModal1{
	}
	.popupModal1 > input { /* ラジオボックス非表示 */
		display: none;
	}
	.popupModal1 > input:nth-child(1) + label { 
		cursor: pointer;
		position: relative;
		line-height: 1;
		display: block;
		width: 695px;
		background-color: #d92a2a;
		border-radius: 40px;
		color: #ffffff;
		font-weight: 900;
		text-align: center;
		font-size: 30px;
		margin: 0 auto;
		padding: 25px 0;
	}
	.popupModal1 > input:nth-child(1) + label.btn--brown.btn--cubic {
		  border-bottom: 5px solid #9f000c;
		}

		.popupModal1 > input:nth-child(1) + label.btn--brown.btn--cubic:hover {
		   border: 2px solid #d92a2a;
		  color:#d92a2a;
		  background-color: #fff;
		  margin-top: 3px;
		  border-bottom: 2px solid #9f000c;

		}

		.popupModal1 > input:nth-child(1) + label.btn--radius {
		  border-radius: 100vh;
		}

		.fa-position-right {
		  position: absolute;
		  top: calc(50% - .5em);
		  right: 1rem;
		}
	.modalPopup2 { /* 初期設定 ポップアップ非表示 */
		display: none;
	}
	
	.popupModal1 > input:nth-child(1):checked + label + input:nth-child(3) + label + input:nth-child(5) + label + .modalPopup2 {/* ラジオ１ チェックでポップアップ表示 */
		display: block;
		z-index: 998;
		position: fixed;
		width: 90%;
		height: 80%;
		border-radius: 20px;
		left: 50%;
		top: 50%;
		margin-top: 30px;
		-webkit-transform: translate(-50%,-50%);
		-ms-transform: translate(-50%,-50%);
		transform: translate(-50%,-50%);
		background: #fff;
		padding: 10px 20px;
		overflow: hidden;
	}
	@media (min-width: 768px) {/* PCのときはページの真ん中の600x600領域 */
	.popupModal1 > input:nth-child(1):checked + label + input:nth-child(3) + label + input:nth-child(5) + label + .modalPopup2{
		width: 90%;
		/* height: 40vw; */
		padding: 30px;
	
		}
	.popupModal1 > input:nth-child(1):checked + label + input:nth-child(3) + label + input:nth-child(5) + label {
		 left: 50% !important;
		 top: 50% !important;
		 margin-left: 270px !important;
		 margin-top: -310px !important;
	}
	}
	
	.popupModal1 > input:nth-child(1):checked + label + input:nth-child(3) + label + input:nth-child(5) + label + .modalPopup2 > div {/* */
		overflow:auto;
		-webkit-overflow-scrolling:touch;
		display: inline-block;
		width: 100%;
		height: 100%;
	}
	.popupModal1 > input:nth-child(1):checked + label + input:nth-child(3) + label + input:nth-child(5) + label + .modalPopup2 > div > iframe {
		width: 100%;
		  height:100%;
		  border:none;
		  display:block;
	}
	
	.popupModal1 > input:nth-child(1):checked + label + input:nth-child(3) + label + input:nth-child(5) + label + .modalPopup2 > div > img {/* ポップアップの中の要素 */
	max-width: 100%;
	}
	.popupModal1 > input:nth-child(1) + label ~ label {
		display: none;/* ラジオ１ 以外のラベルを初期は非表示 */
	
	}
	.popupModal1 > input:nth-child(1):checked + label + input:nth-child(3) + label {
		width: 100%;
		height: 100%;
		background: rgba(0, 0, 0, 0.70);
		display: block;
		position: fixed;
		left: 0;
		top: 0;
		z-index: 997;
		text-indent: -999999px;
		overflow: hidden;
	}
	.popupModal1 > input:nth-child(1):checked + label + input:nth-child(3) + label + input:nth-child(5) + label {
		background: rgba(255, 255, 255, 0.5);
		display: inline-block;
		position: fixed;
		left: 50% !important;
		margin-left: -575px !important;
		z-index: 999;
		width: 44pt;
		height: 44pt;
		font-size: 40px;
		border-radius: 50%;
		line-height: 44pt;
		text-align: center;
		box-shadow: 2px 2px 10px 0px rgba(0, 0, 0, 0.2);
	}
	
	.popupModal1 > input:nth-child(1) + label + input:nth-child(3):checked + label + input:nth-child(5) + label + .modalPopup2,
	.popupModal1 > input:nth-child(1) + label + input:nth-child(3) + label + input:nth-child(5):checked + label + .modalPopup2 { /* ラジオ２と３ どっちかチェックでポップアップ非表示 */
		display: none;
	}
	
	
	.modalPopup2 {
		animation: fadeIn 1s ease 0s 1 normal;
		-webkit-animation: fadeIn 1s ease 0s 1 normal;
	}
	
	@keyframes fadeIn {
		0% {opacity: 0}
		100% {opacity: 1}
	}
	
	@-webkit-keyframes fadeIn {
		0% {opacity: 0}
		100% {opacity: 1}
	}
	
	.popupModal1 .modalTitle {
		 padding-bottom: .5em;
		 margin: .5em 0;
		 border-bottom:
		 1px solid #ccc;
		 font-weight: bold;
	}
	.popupModal1 .modalMain {
		color: #604c3f;
		 text-align: center;
		font-size: 16px;
		 line-height: 1.8em;
	}
	.popupModal1 .modalMain img {
		width: 300px;
	}





	/* タブ設定 */
	    /*ベース*/
		section.typeB{
			display: flex;
			flex-wrap: wrap;
		}
		section.typeB::after {
			content: '';
			width: 100%;
			height: 3px;
			display: block;
			order: -1;
			background: rgba(0,0,0,.1);
		}
		section.typeB .tabLabel {	/* タブ */
			margin-right: 1px;
			padding: 7px 12px;
			flex: 1;
			order: -1;
			color: #154a74;
			background: #fdc723;
			position: relative;
			transition: .5s ;
			cursor: pointer;
		}
		section.typeB .tabLabel::after {
			content: '';
			width: 100% ;
			height: 3px;
			display: block;
			pointer-events: none;
			transform: translateX(100%);
			transition: cubic-bezier(0.4, 0, 0.2, 1) .2s 80ms;
			background: #fdc723;
			position: absolute;
			left: 0;
			bottom: -3px;
			z-index: 10;
			opacity: 0;
		}
		section.typeB .tabLabel:nth-last-of-type(1){ margin-right: 0; }
		section.typeB input {		/* ラジオボタン非表示 */
			display: none;
		}
		section.typeB .content {	/* 本文 */
			width: 100%;
			height:0;
			overflow:hidden;
			/* box-shadow: 0 0 5px rgba(0,0,0,.2); */
			opacity:0;
		}
		section.typeB .content > div {
			pointer-events:none;
			transform: translateX(30%);
			transition: transform .3s 80ms, opacity .3s 80ms;
		}
		/*アクティブ設定*/
		section.typeB input:checked + .tabLabel {		/*タブ*/
			background-color: #154a74;
			color: #ffffff;
		}
		section.typeB input:checked ~ .tabLabel::after {
			transform: translateX(-100%);
		}
		section.typeB input:checked + .tabLabel::after {
			opacity: 1;
			transform: translateX(0);
		}
		section.typeB input:checked + .tabLabel + .content {	/*本文*/
			height: auto;
			padding: 20px 15px 35px;
			order: 1;
			opacity: 1;
		}
		section.typeB input:checked ~ .content > div {
			transform: translateX(30%);
		}
		section.typeB input:checked + .tabLabel + .content > div {
			pointer-events:auto;
			transform: translateX(0);
		}


		/* タブ内リンク */
		ul.tospu_link {
			text-align: center;
			font-size: 0;
		}
		ul.tospu_link li{
			display: inline-block;
			font-size: 16px;
		}
		ul.tospu_link li a {
			background-color: #d92a2a;
			padding: 10px 65px;
			margin: 0 5px;
			color: #fff;
			position: relative;
		}
		ul.tospu_link li a::before{
			position: absolute;
			content: "";
			display: block;
			background: url(../img/arrow_w.png) center top / contain no-repeat;
			width: 8px;
			height: 14px;
			top: 50%;
			margin-top: -7px;
			right: 20px;
		}
}



/* SP設定
----------------------------------------------- */
@media (max-width: 767px) {
	.popupModal1{
		margin-top: 1vw;
	}
	.popupModal1 > input { /* ラジオボックス非表示 */
		display: none;
	}
	.popupModal1 > input:nth-child(1) + label { 
		cursor: pointer;
		position: relative;
		line-height: 1;
		display: block;
		background-color: #d92a2a;
		border-radius: 9vw;
		color: #ffffff;
		font-weight: 900;
		text-align: center;
		font-size: 4vw;
		margin: 0 6vw;
		padding: 6vw 0;
	}
	
	.modalPopup2 { /* 初期設定 ポップアップ非表示 */
		display: none;
	}
	
	.popupModal1 > input:nth-child(1):checked + label + input:nth-child(3) + label + input:nth-child(5) + label + .modalPopup2 {/* ラジオ１ チェックでポップアップ表示 */
		display: block;
		z-index: 998;
		position: fixed;
		width: 90%;
		height: 80%;
		border-radius: 6vw;
		left: 50%;
		top: 50%;
		margin-top: 8vw;
		-webkit-transform: translate(-50%,-50%);
		-ms-transform: translate(-50%,-50%);
		transform: translate(-50%,-50%);
		background: #fff;
		padding: 6vw;
		overflow: hidden;
	}
	@media (min-width: 768px) {/* PCのときはページの真ん中の600x600領域 */
	.popupModal1 > input:nth-child(1):checked + label + input:nth-child(3) + label + input:nth-child(5) + label + .modalPopup2{
			 width: 600px;
			 height: 600px;
			 padding: 30px;
	
		}
	.popupModal1 > input:nth-child(1):checked + label + input:nth-child(3) + label + input:nth-child(5) + label {
		 left: 50% !important;
		 top: 50% !important;
		 margin-left: 270px !important;
		 margin-top: -310px !important;
	}
	}
	
	.popupModal1 > input:nth-child(1):checked + label + input:nth-child(3) + label + input:nth-child(5) + label + .modalPopup2 > div {/* */
		overflow-x: hidden;
		-webkit-overflow-scrolling:touch;
		display: inline-block;
		width: 100%;
		height: 100%;
	}
	.popupModal1 > input:nth-child(1):checked + label + input:nth-child(3) + label + input:nth-child(5) + label + .modalPopup2 > div > iframe {
		width: 100%;
		  height:100%;
		  border:none;
		  display:block;
	}
	
	.popupModal1 > input:nth-child(1):checked + label + input:nth-child(3) + label + input:nth-child(5) + label + .modalPopup2 > div > img {/* ポップアップの中の要素 */
	max-width: 100%;
	}
	.popupModal1 > input:nth-child(1) + label ~ label {
		display: none;/* ラジオ１ 以外のラベルを初期は非表示 */
	
	}
	.popupModal1 > input:nth-child(1):checked + label + input:nth-child(3) + label {
		width: 100%;
		height: 100%;
		background: rgba(0, 0, 0, 0.70);
		display: block;
		position: fixed;
		left: 0;
		top: 0;
		z-index: 997;
		text-indent: -999999px;
		overflow: hidden;
	}
	.popupModal1 > input:nth-child(1):checked + label + input:nth-child(3) + label + input:nth-child(5) + label {
		background: rgba(255, 255, 255, 0.5);
		display: inline-block;
		position: fixed;
		left: 5vw;
		top: 10vw;
		z-index: 999;
		width: 14vw;
		height: 14vw;
		font-size: 8vw;
		border-radius: 50%;
		line-height: 1.7;
		text-align: center;
	}
	
	.popupModal1 > input:nth-child(1) + label + input:nth-child(3):checked + label + input:nth-child(5) + label + .modalPopup2,
	.popupModal1 > input:nth-child(1) + label + input:nth-child(3) + label + input:nth-child(5):checked + label + .modalPopup2 { /* ラジオ２と３ どっちかチェックでポップアップ非表示 */
		display: none;
	}
	
	
	.modalPopup2 {
		animation: fadeIn 1s ease 0s 1 normal;
		-webkit-animation: fadeIn 1s ease 0s 1 normal;
	}
	
	@keyframes fadeIn {
		0% {opacity: 0}
		100% {opacity: 1}
	}
	
	@-webkit-keyframes fadeIn {
		0% {opacity: 0}
		100% {opacity: 1}
	}
	
	.popupModal1 .modalTitle {
		 padding-bottom: .5em;
		 margin: .5em 0;
		 border-bottom:
		 1px solid #ccc;
		 font-weight: bold;
	}
	.popupModal1 .modalMain {
		text-align: left;
		font-size: 4vw;
		line-height: 1.6;
	}

	/*ベース*/
	section.typeB{
		display: flex;
		flex-wrap: wrap;
	}
/*	section.typeB::after {
		content: '';
		width: 100%;
		height: 3px;
		display: block;
		order: -1;
		background: rgba(0,0,0,.1);
	}*/
	section.typeB .tabLabel {	/* タブ */
		padding: 3vw 0vw;
		order: -1;
		color: #154a74;
		background: #fdc723;
		position: relative;
		transition: .5s;
		cursor: pointer;
		width: 49%;
		text-align: center;
		margin-bottom: 1vw;
	}
	section.typeB .tabLabel:nth-child(odd) {	/* タブ */
		margin-left: 1vw;
	}
	section.typeB .tabLabel::after {
		content: '';
		width: 100%;
		height: 1vw;
		display: block;
		pointer-events: none;
		transform: translateX(100%);
		transition: cubic-bezier(0.4, 0, 0.2, 1) .2s 80ms;
		background: #fdc723;
		position: absolute;
		left: 0;
		bottom: 0;
		z-index: 10;
		opacity: 0;
	}
	section.typeB .tabLabel:nth-last-of-type(1){ margin-right: 0; }
	section.typeB input {		/* ラジオボタン非表示 */
		display: none;
	}
	section.typeB .content {	/* 本文 */
		width: 100%;
		height:0;
		overflow:hidden;
		/* box-shadow: 0 0 5px rgba(0,0,0,.2); */
		opacity:0;
	}
	section.typeB .content > div {
		pointer-events:none;
		transform: translateX(30%);
		transition: transform .3s 80ms, opacity .3s 80ms;
	}
	/*アクティブ設定*/
	section.typeB input:checked + .tabLabel {		/*タブ*/
		background: #154a74;
		color: #ffffff;
	}
	section.typeB input:checked ~ .tabLabel::after {
		transform: translateX(-100%);
	}
	section.typeB input:checked + .tabLabel::after {
		opacity: 1;
		transform: translateX(0);
	}
	section.typeB input:checked + .tabLabel + .content {	/*本文*/
		height: auto;
		padding: 15px;
		order: 1;
		opacity: 1;
	}
	section.typeB input:checked ~ .content > div {
		transform: translateX(30%);
	}
	section.typeB input:checked + .tabLabel + .content > div {
		pointer-events:auto;
		transform: translateX(0);
	}


		/* タブ内リンク */
		ul.tospu_link {
			text-align: center;
			font-size: 0;
		}
		ul.tospu_link li{
			display: inline-block;
			font-size: 4vw;
		}
		ul.tospu_link li a {
			background-color: #d92a2a;
			padding: 2vw 2vw;
			margin: 1vw 0;
			color: #fff;
			position: relative;
			display: inline-block;
			width: 70vw;
		}
		ul.tospu_link li a::before{
			position: absolute;
			content: "";
			display: block;
			background: url(../img/arrow_w.png) center top / contain no-repeat;
			width: 2vw;
			height: 4vw;
			top: 50%;
			margin-top: -1.4vw;
			right: 3vw;
		}
}





/* ================================================================================

	料金プラン

================================================================================ */


/* PC設定
----------------------------------------------- */
@media (min-width: 768px) {
	/* セクション */
	.re_campaign_row {
		background: url(../img/campaign_bg.jpg) center top / cover no-repeat;
		padding: 100px 0 129px;
	}
	.re_campaign_row:after {
		position: absolute;
		content: '';
		background: url(../img/campaign_staff01.png) center top / contain no-repeat;
		width: 243px;
		height: 463px;
		left: 50%;
		bottom: 0;
		margin-left: -513px;
	}
	
	/* インナーセクション */
	.campaign_row_in {
		margin-left: 272px;
	}
	
	/* コンテンツ内容 */
	.campaign_text img {
		width: 727.5px;
	}
	
	.price_col {
		padding: 0 20px;
	}
	.price_col ul {
		display: flex;
	}
	.price_col ul li {
		width: 30%;
		margin-right: 5%;
		position: relative;
	}
	.price_col ul li:last-child {
		margin-right: 0;
	}
	.price_col ul li::before {
		position: absolute;
		content: "";
		display: block;
		background: url(../img/pack_price.jpg) center top / contain no-repeat;
		width: 200px;
		height: 52px;
		top: -26px;
		left: -20px;
		z-index: 10;
	}
	
	.price_col02 {
		/* max-width: 665px; */
		width: 100%;
		padding: 0 20px;
		box-sizing: border-box;
		margin: 0 auto;
	}
	.price_col02 ul {
		display: flex;
	}
	.price_col02 ul li {
		/* width: 45%; 
		margin-right: 10%;*/
		width: 30%;
		margin-right: 5%;
	}
	.price_col02 ul li:last-child {
		margin-right: 0;
	}
	.price_imgcol_box {
		margin-bottom: 40px;
	}
	
	/* キャンペーン内容 */
	.campaign .campaign_out {
		position: relative;
		background-color: #154a74;
		text-align: center;
	}
	
	.campaign .campaign_out h3 {
		padding: 20px 0 24px;
		letter-spacing: 0.05em;
		text-indent: 0.05em;
		color: #ffffff;
		line-height: 1.4;
		font-size: 32px;
		font-weight: 900;
	}
	
	.campaign .campaign_in{
		background-color: #ffffff;
		padding: 32px 40px 38px;
		text-align: center;
	}
	
	.campaign .campaign_in .imanara{
		font-size: 25px;
		font-weight: bold;
		background: linear-gradient(transparent 60%, #ff6 60%);
		line-height: 1.6;
		color: #d92a2a;
	}
	
	span.campaign_line{
		background:linear-gradient(transparent 60%, #ff6 60%);
		font-weight: bold;
		}
	

	
	.other_paint02 {
		margin-left: 40px;
	}
	
	/* インナーセクション */
	.art_row_in {
		background-color: #ffffff;
	}
	.art_text {
		text-align: center;
		padding: 32px;
	}
	
	/* プラン例 見出し */
	.h4_plan {
		background-color: #154a74;
		text-align: center;
		padding: 20px 0;
	}
	.h4_plan h4 {
		font-size: 32px;
		font-weight: 900;
		color: #ffffff;
	}
	
	/* プラン例 内容 */
	.plan_in {
		background-color: #ffffff;
		text-align: center;
		padding: 25px 0 0;
	}
	
	.plan_example_in {
		margin-left: 40px;
	}
	
	.breadth_text {
		color: #000000;
		font-size: 30px;
		font-weight: 700;
	}
	
	.plan_price {
		color: #d92a2a;
		font-size: 110px;
		font-weight: 700;
		margin-top: -40px;
	}
	.plan_price span {
		color: #154a74;
		font-size: 30px;
		font-weight: 700;
	}

}



/* SP設定
----------------------------------------------- */
@media (max-width: 767px) {
	/* セクション */
	.re_campaign_row {
		background: url(../img/campaign_bg.jpg) -20vw top / cover no-repeat;
		padding: 14vw 0;
	}
	.re_campaign_row:before {
		position: absolute;
		content: '';
		background: url(../img/campaign_staff01.png) center top / contain no-repeat;
		width: 30vw;
		height: 57vw;
		bottom: 0;
		left: -3vw;
	}
	
	/* インナーセクション */
	.campaign_row_in {
		margin: 0 4vw 0 16vw;
		text-align: center;
	}
	
	/* コンテンツ内容 */
	.campaign_text img {
	}
	
	.price_col ul {
		text-align: center;
		padding: 0 6vw;
	}
	.price_col ul li {
		position: relative;
		display: block;
		margin: 0 0 12vw 0;
	}
	.price_col ul li:last-child {
		margin-bottom: 0;
	}
	.price_col ul li::before {
		position: absolute;
		content: "";
		display: block;
		background: url(../img/pack_price.jpg) center top / contain no-repeat;
		width: 40vw;
		height: 10vw;
		top: -4.5vw;
		left: -4.5vw;
	}
	.price_col02 ul {
		text-align: center;
		padding: 0 6vw;
	}
	.price_col02 ul li {
		display: block;
		margin: 0 0 12vw 0;
	}
	.price_col02 ul li:last-child {
		margin-bottom: 0;
	}
	.price_imgcol_box {
		margin-bottom: 4vw;
	}
	.price_imgcol {
		margin-bottom: 4vw;
	}

	/* キャンペーン内容 */
	.campaign .campaign_out {
		position: relative;
		background-color: #154a74;
		text-align: center;
	}
	
	.campaign .campaign_out h3{
		padding: 4vw 0;
		font-size: 5vw;
		font-weight: 900;
		color: #ffffff;
		text-align: center;
		line-height: 1.4;
	}
	
	.campaign .campaign_in{
		background-color: #ffffff;
		padding: 6vw;
	}
	
	.campaign .campaign_in .imanara{
		font-size: 4vw;
		font-weight:bold;
		background:linear-gradient(transparent 60%, #ff6 60%);
		color: #d92a2a;
	}
	
	span.campaign_line{
		background:linear-gradient(transparent 60%, #ff6 60%);
		font-weight: bold;
		}
	
	.other_paint02 {
		margin-top: 8vw;
	}
	
	/* インナーセクション */
	.art_row_in {
		background-color: #ffffff;
	}
	.art_text {
		text-align: center;
		padding: 32px;
	}
	
	/* プラン例 見出し */
	.h4_plan {
		background-color: #154a74;
		text-align: center;
		padding: 4vw 0;
	}
	.h4_plan h4 {
		font-size: 5vw;
		font-weight: 900;
		color: #ffffff;
	}
	
	/* プラン例 内容 */
	.plan_in {
		background-color: #ffffff;
		text-align: center;
		padding: 6vw 0 0;
	}
	.plan_example_in {
		margin-top: 6vw;
	}
	
	.breadth_text {
		color: #000000;
		font-size: 5vw;
		font-weight: 700;
	}
	
	.plan_price {
		color: #d92a2a;
		font-size: 20vw;
		font-weight: 700;
		margin-top: -7vw;
	}
	.plan_price span {
		color: #154a74;
		font-size: 7vw;
		font-weight: 700;
	}

}





/* ================================================================================

	事業所概要・お問い合わせ

================================================================================ */
.gmap {
	position: relative;
}
.gmap iframe {
	width: 100%;
}
.map_box a {
	width: 100%;
	display: block;
	z-index: 1;
	position: absolute;
}
.ceo_name {
	text-align: right;
}
.ceo_name span {
	font-family: 'Noto Serif JP','游明朝',YuMincho,'ヒラギノ明朝 ProN W2','Hiragino Mincho ProN','HG明朝B',serif;
	display: inline-block;
}

/* PC設定
----------------------------------------------- */
@media (min-width: 768px) {
	.gmap iframe,
	.map_box a {
		height: 450px;
	}
	.ceo_name {
		margin-top: 20px;
	}
	.ceo_name span {
		margin-left: 15px;
		font-size: 30px;
	}
	
	.staff_box {
		background-color: #ffffff;
		padding: 20px;
	}
	.staff_02 {
		margin-left: 20px;
	}
	
	.staff_name {
		text-align: center;
		margin-top: 10px;
	}
	
	.staff_info {
		font-size: 13.8px;
		line-height: 1.4;
		margin-top: 5px;
		font-weight: 500;
		text-align: center;
	}
	
	
}



/* SP設定
----------------------------------------------- */
@media (max-width: 767px) {
	.gmap iframe,
	.map_box a {
		height: 250px;
	}
	.ceo_name {
		margin-top: 2vw;
	}
	.ceo_name span {
		margin-left: 1.5vw;
		font-size: 4.8vw;
	}
	
	.staff_box {
		background-color: #ffffff;
		padding: 4vw;
		margin-bottom: 8vw;
	}
	.staff_02 {
		
	}
	
	.staff_img {
		width: 30vw !important;
		float: left;
		margin-right: 4vw;
	}
	
	.staff_text {
		width: 50vw !important;
		text-align: center;
		padding: 7vw 0;
	}
	.staff_name {
		font-size: 4.5vw;
	}
	
	.staff_info {
		line-height: 1.4;
		margin-top: 1vw;
		font-weight: 500;
	}
	
	
}




/* ================================================================================

	施工実績

================================================================================ */


/* PC設定
----------------------------------------------- */
@media (min-width: 768px) {
	.page-works .voice_wrap > ul {
		margin-top: 40px;
	}
	
}



/* SP設定
----------------------------------------------- */
@media (max-width: 767px) {
	.page-works .voice_wrap > ul {
		margin-top: 8vw;
	}
	.page-works .inner_wrap {
		padding-bottom: 12vw;
	}
	
}




/* ================================================================================

	ブログ

================================================================================ */


/* PC設定
----------------------------------------------- */
@media (min-width: 768px) {
	.page-blog .inner_wrap {
		padding-bottom: 80px;
	}
	
}



/* SP設定
----------------------------------------------- */
@media (max-width: 767px) {
	.page-blog .inner_wrap {
		padding-bottom: 12vw;
	}
	
}




/* ================================================================================

	問い合わせからアフターまで

================================================================================ */


/* PC設定
----------------------------------------------- */
@media (min-width: 768px) {
	.flow_contact li {
		float: left;
		text-align: center;
	}
	.flow_contact li:first-child {
		width: 100%;
		margin: 15px 0;
	}
	.flow_contact li:first-child a {
		position: relative;
		font-size: 37px;
		color: #fdc723;
		padding: 7.5px 0 7.5px 57px;
		font-weight: 900;
		display: block;
		background-color: #154a74;
	}
	.flow_contact li:first-child a:before {
		position: absolute;
		content: "";
		background: url(../img/re_tel.png) center top / contain no-repeat;
		width: 25px;
		height: 36px;
		top: 50%;
		margin-top: -16px;
		left: 50%;
		margin-left: -139px;
	}
	.flow_contact li:last-child {
		margin-left: 15px;
	}
	.flow_contact li:nth-of-type(2) a {
		width: 255px;
		display: block;
	}
	.flow_contact li:nth-of-type(3) a {
		display: block;
		width: 270px;
	}
	
}



/* SP設定
----------------------------------------------- */
@media (max-width: 767px) {
	.flow_contact li {
		float: left;
		text-align: center;
	}
	.flow_contact li:first-child {
		width: 100%;
		margin: 4vw 0 2vw;
	}
	.flow_contact li:first-child a {
		position: relative;
		font-size: 8.5vw;
		color: #fdc723;
		display: block;
		padding: 0 0 0.3vw 8vw;
		background-color: #154a74;
	}
	.flow_contact li:first-child a:before {
		position: absolute;
		content: "";
		background: url(../img/re_tel.png) center top / contain no-repeat;
		width: 5vw;
		height: 8vw;
		top: 50%;
		margin-top: -3.2vw;
		left: 13vw;
	}
	.flow_contact li:last-child {
		margin-left: 2vw;
	}
	.flow_contact li:nth-of-type(2) a {
		width: 44vw;
		display: block;
	}
	.flow_contact li:nth-of-type(3) a {
		display: block;
		width: 46vw;
	}
	
}





/* ================================================================================

	よくある質問

================================================================================ */


/* PC設定
----------------------------------------------- */
@media (min-width: 768px) {
	.faq_contact {
		display: flex;
	}
	.faq_contact li {
		width: 28%;
		margin-left: 2.8%;
	}
	.faq_contact li:first-child {
		width: 37%;
		margin-left: 0;
	}
	.faq_contact li:first-child a {
		position: relative;
		font-size: 37px;
		color: #fdc723;
		padding: 7.5px 0 7.5px 57px;
		font-weight: 900;
		display: block;
		background-color: #154a74;
	}
	.faq_contact li:first-child a:before {
		position: absolute;
		content: "";
		background: url(../img/re_tel.png) center top / contain no-repeat;
		width: 25px;
		height: 36px;
		top: 50%;
		margin-top: -16px;
		left: 22px;
	}
	.faq_contact li:nth-of-type(2) a {
		display: block;
		width: 250px;
	}
	.faq_contact li:last-child a {
		display: block;
		width: 265px;
	}
	
		/* チェックボックス */
	.row06 .check_in {
		background-color: #ffffff;
		padding: 2vw 0 2.2vw;
	}
	.row06 .check_in ul {
		font-size: 0;
	}
	.row06 .check_in ul li {
		display: inline-block;
		vertical-align: top;
		text-align: left;
		font-size: 1.200vw;
		color: #ff7f00;
    	font-weight: bold;
	}
	.row06 .check_in ul li:frist-of-type {
		margin-left: 0;
	}
	.row06 .check_in ul li p {
		position: relative;
		padding: 0 0 0 1.8em;
		margin-top: 0;
	}
	.row06 .check_in ul li p::before {
		position: absolute;
		content: "";
		display: block;
		background: url(../img/icon_check.jpg) center top / contain no-repeat;
		width: 2.23vw;
		height: 1.71vw;
		top: 50%;
		margin-top: -0.8vw;
		left: 0;
	}
	
	.h3_change {
		background-color: #154a74;
		text-align: center;
		padding: 20px 0;
	}
	.h3_change h3 {
		font-size: 32px;
		font-weight: 900;
		color: #ffffff;
	}
	
	.change_text {
		text-align: center;
	}
	
	.change_box img {
		width: 490px;
		height: 360px;
		object-fit: cover;
	}
	.change_right {
		margin-left: 20px;
	}
	.h4_change {
		background-color: #fdc723;
		padding: 0 20px;
		color: #154a74;
	}
	.h4_change h4 {
		font-weight: 900;
		line-height: 1.4;
		vertical-align: middle;
		display: table-cell;
		height: 90px;
	}
	
	
	.guarantee_img ul {
		text-align: center;
		font-size: 0;
		margin-top: 40px;
	}
	.guarantee_img ul li {
		display: inline-block;
	}
	.guarantee_img ul li:nth-of-type(2) {
		margin-left: 40px;
	}
	.guarantee_img ul li img {
		width: 400px;
	}
	
	.insurance_pdf {
		width: 200px !important;
		margin: 20px auto 0;
	}
	.insurance_text {
		text-align: center;
		font-size: 14px;
		margin-top: 10px;
	}
	
	
}



/* SP設定
----------------------------------------------- */
@media (max-width: 767px) {
	.faq_contact li {
		float: left;
		text-align: center;
	}
	.faq_contact li:first-child {
		width: 100%;
		margin: 0 0 2vw;
	}
	.faq_contact li:first-child a {
		position: relative;
		font-size: 8.5vw;
		color: #fdc723;
		display: block;
		padding: 0 0 0.3vw 8vw;
		background-color: #154a74;
	}
	.faq_contact li:first-child a:before {
		position: absolute;
		content: "";
		background: url(../img/re_tel.png) center top / contain no-repeat;
		width: 5vw;
		height: 8vw;
		top: 50%;
		margin-top: -3.2vw;
		left: 7vw;
	}
	.faq_contact li:last-child {
		margin-left: 2vw;
	}
	.faq_contact li:nth-of-type(2) a {
		width: 37vw;
		display: block;
	}
	.faq_contact li:nth-of-type(3) a {
		display: block;
		width: 39vw;
	}
	
	/* チェックボックス */
	.row06 .check {
		position: relative;
		border: 4px solid #604d3f;
		margin-top: 12vw;
		text-align: center;
	}

	.row06 .check h3 {
		background-color: #604d3f;
		padding: 0.25em 0.25em 0.4em;
		font-size: 4.5vw;
		font-weight: 600;
		letter-spacing: 0.05em;
		text-indent: 0.05em;
		color: #ffffff;
	}
	.row06 .check_in {
		background-color: #ffffff;
		padding: 4vw 6vw;
	}
	.row06 .check_in ul {
		font-size: 0;
		text-align: left;
	}
	.row06 .check_in ul li {
		text-align: left;
		font-size: 4.5vw;
		color: #ff7f00;
    	font-weight: bold;
	}
	.row06 .check_in ul li:frist-of-type {
	}
	.row06 .check_in ul li p {
		position: relative;
		padding: 0 0 0 1.4em;
		margin-top: 0;
	}
	.row06 .check_in ul li p::before {
		position: absolute;
		content: "";
		display: block;
		background: url(../img/icon_check.jpg) center top / contain no-repeat;
		width: 7vw;
    	height: 6vw;
		top: 2vw;
		left: 0;
	}
	
	
	.h3_change {
		background-color: #154a74;
		text-align: center;
		padding: 4vw 0;
	}
	.h3_change h3 {
		font-size: 5vw;
		font-weight: 900;
		color: #ffffff;
	}
	
	.change_text {
		text-align: center;
	}
	
	.change_box img {
		width: 100%;
		height: 65vw;
		object-fit: cover;
	}
	.change_right {
		margin-top: 4vw;
	}
	.h4_change {
		background-color: #fdc723;
		padding: 4vw;
		color: #154a74;
	}
	.h4_change h4 {
		font-weight: 900;
		line-height: 1.4;
		font-size: 4vw;
	}
	
}

/* ================================================================================

	見積もりシミュレーション 結果表示（result）：202411追加

================================================================================ */

/* PC設定
----------------------------------------------- */
@media (min-width: 768px) {
    .result{
        width:100%;
        max-width: 1000px;
        margin: 0 auto;
    }

    .result-box ul{
        display: flex;
        align-items: stretch;
        justify-content: space-between;
        margin-bottom: 50px;
    }
    .result-box ul li{
        width: calc( (100% - 60px) / 3 );
        margin-right: 30px;
        background-color: #fff;
    }
    .result-box ul li h2{
        font-size: 32px;
        font-weight: 900;
        color: #ffffff;
        background-color: #154a74;
        text-align: center;
        padding: 20px 0;
    }

    .result-box-price{
        padding: 20px;
        text-align: center;
    }
    .result-box-price h3{
        font-size: 30px;
    }
    .result-box-price strong{
        font-size: 25px;
        color:#154a74;
    }
    .result-box-price strong span{
        color: #d92a2a;
        font-size: 40px;
    }
    
    .result-box-text{
        padding: 0 25px 25px;
        font-size: 18px;
    }
    
    .result-box-notice{
        text-align: center;
        color: #154a74;
        font-size:20px;
        padding-bottom: 100px;
    }
}

/* SP設定
----------------------------------------------- */
@media (max-width: 767px) {
    .result{
        width:100%;
        margin: 0 auto;
    }

    .result-box ul{
        display: block;
        margin-bottom: 8vw;
    }
    .result-box ul li{
        width:100%;
        margin-bottom: 4vw;
        background-color: #fff;
    }
    .result-box ul li h2{
        font-size: 5vw;
        font-weight: 900;
        color: #ffffff;
        padding: 4vw 0;
        background-color: #154a74;
        text-align: center;
    }

    .result-box-price{
        padding: 5.333vw;
        text-align: center;
    }
    .result-box-price h3{
        font-size: 6.666vw;
    }
    .result-box-price strong{
        font-size: 5.333vw;
        color:#154a74;
    }
    .result-box-price strong span{
        color: #d92a2a;
        font-size: 9.333vw;
    }
    
    .result-box-text{
        padding: 0 5.333vw 5.333vw;
        font-size: 4.2666vw;
    }
    
    .result-box-notice{
        text-align: center;
        color: #154a74;
        font-size:4.2666vw;
        padding-bottom: 26.666vw;
    }
    
}