@charset "utf-8";
/* CSS Document */
/********************************************************************
	campaign2312.css
*********************************************************************/
/*--- フロートクリア --------------------------------------------------------------*/
.clearb { clear: both; }

/*--- float ----------------------------------------------------------------------*/
.flL { float: left; }
.flR { float: right; }

/*--- align ----------------------------------------------------------------------*/
.taL { text-align: left; }
.taC { text-align: center; }
.taR { text-align: right; }

/*--- margin ----------------------------------------------------------------------*/
.mgClear { margin: 0px; }
/* top */
.mgT00 { margin-top: 0px !important; }
.mgT01 { margin-top: 1px !important; }
.mgT02 { margin-top: 2px !important; }
.mgT03 { margin-top: 3px !important; }
.mgT04 { margin-top: 4px !important; }
.mgT05 { margin-top: 5px !important; }
.mgT10 { margin-top: 10px !important; }
.mgT15 { margin-top: 15px !important; }
.mgT20 { margin-top: 20px !important; }
.mgT25 { margin-top: 25px !important; }
.mgT30 { margin-top: 30px !important; }
.mgT35 { margin-top: 35px !important; }
.mgT40 { margin-top: 40px !important; }
/* right */
.mgR00 { margin-right: 0px !important; }
.mgR01 { margin-right: 1px !important; }
.mgR02 { margin-right: 2px !important; }
.mgR03 { margin-right: 3px !important; }
.mgR04 { margin-right: 4px !important; }
.mgR05 { margin-right: 5px !important; }
.mgR10 { margin-right: 10px !important; }
.mgR15 { margin-right: 15px !important; }
.mgR20 { margin-right: 20px !important; }
.mgR25 { margin-right: 25px !important; }
.mgR30 { margin-right: 30px !important; }
.mgR35 { margin-right: 35px !important; }
.mgR40 { margin-right: 40px !important; }
/* left */
.mgL00 { margin-left: 0px !important; }
.mgL01 { margin-left: 1px !important; }
.mgL02 { margin-left: 2px !important; }
.mgL03 { margin-left: 3px !important; }
.mgL04 { margin-left: 4px !important; }
.mgL05 { margin-left: 5px !important; }
.mgL10 { margin-left: 10px !important; }
.mgL15 { margin-left: 15px !important; }
.mgL20 { margin-left: 20px !important; }
.mgL25 { margin-left: 25px !important; }
.mgL30 { margin-left: 30px !important; }
.mgL35 { margin-left: 35px !important; }
.mgL40 { margin-left: 40px !important; }
/* bottom */
.mgB0 { margin-bottom: 0px !important; }
.mgB1 { margin-bottom: 1px !important; }
.mgB2 { margin-bottom: 2px !important; }
.mgB3 { margin-bottom: 3px !important; }
.mgB4 { margin-bottom: 4px !important; }
.mgB5 { margin-bottom: 5px !important; }
.mgB10 { margin-bottom: 10px !important; }
.mgB15 { margin-bottom: 15px !important; }
.mgB20 { margin-bottom: 20px !important; }
.mgB25 { margin-bottom: 25px !important; }
.mgB30 { margin-bottom: 30px !important; }
.mgB35 { margin-bottom: 35px !important; }
.mgB40 { margin-bottom: 40px !important; }

/*--- パディング ----------------------------------------------------------------------*/
.pdClear { padding: 0px !important; }
/* top */
.pdT00 { padding-top: 0px !important; }
.pdT05 { padding-top: 5px !important; }
.pdT10 { padding-top: 10px !important; }
.pdT15 { padding-top: 15px !important; }
.pdT20 { padding-top: 20px !important; }
.pdT25 { padding-top: 25px !important; }
.pdT30 { padding-top: 30px !important; }
.pdT35 { padding-top: 35px !important; }
.pdT40 { padding-top: 40px !important; }
.pdT50 { padding-top: 50px !important; }
/* right */
.pdR00 { padding-right: 0px !important; }
.pdR05 { padding-right: 5px !important; }
.pdR10 { padding-right: 10px !important; }
.pdR15 { padding-right: 15px !important; }
.pdR20 { padding-right: 20px !important; }
.pdR25 { padding-right: 25px !important; }
.pdR30 { padding-right: 30px !important; }
.pdR35 { padding-right: 35px !important; }
.pdR40 { padding-right: 40px !important; }
.pdR50 { padding-right: 50px !important; }
/* left */
.pdL00 { padding-left: 0px !important; }
.pdL05 { padding-left: 5px !important; }
.pdL10 { padding-left: 10px !important; }
.pdL15 { padding-left: 15px !important; }
.pdL20 { padding-left: 20px !important; }
.pdL25 { padding-left: 25px !important; }
.pdL30 { padding-left: 30px !important; }
.pdL35 { padding-left: 35px !important; }
.pdL40 { padding-left: 40px !important; }
.pdL50 { padding-left: 50px !important; }
/* bottom */
.pdB0 { padding-bottom: 0px !important; }
.pdB5 { padding-bottom: 5px !important; }
.pdB10 { padding-bottom: 10px !important; }
.pdB15 { padding-bottom: 15px !important; }
.pdB20 { padding-bottom: 20px !important; }
.pdB25 { padding-bottom: 25px !important; }
.pdB30 { padding-bottom: 30px !important; }
.pdB35 { padding-bottom: 35px !important; }
.pdB40 { padding-bottom: 40px !important; }
.pdB50 { padding-bottom: 50px !important; }

/*--- テキスト関連 ----------------------------------------------------------------*/
.fwN { font-weight: normal; }
.fwB { font-weight: bold; }
.fz10 { font-size: 10px; }
.fz11 { font-size: 11px; }
.fz12 { font-size: 12px; }
.fz13 { font-size: 13px; }
.fz14 { font-size: 14px; }
.fz15 { font-size: 15px; }
.fz16 { font-size: 16px; }
.fzLarge { font-size:large; }
.fzXLarge { font-size:x-large; }
.fzSmall { font-size:80%; }

.fc_F00 { color: #F00; }
.fc_00F { color: #00F; }
.fc_06C { color: #06C; }

.bg_gry { background-color: #eeeeee; }
.bg_yer { background-color: #f6fe9d; }

/*--- リスト ------------------------------------------------------------------------*/
ol.type01 {
	margin-bottom: 5px;
}
ol.type01 li {
	list-style-type: decimal;
	margin-left: 0 !important; 
}
ul.type01 {
	margin-bottom: 5px;
}
ul.type01 li {
	list-style-type: disc;
	margin-left: 0 !important; 
}
/*****************************************************
	768px以上【tablet】
******************************************************/
@media print, screen and (min-width: 768px) {
	ol.type01 li {
		list-style-type: decimal;
		margin-left: 25px !important; 
	}
	ul.type01 li {
		list-style-type: disc;
		margin-left: 25px !important; 
	}
}
/*--- 強調 ------------------------------------------------------------------------------*/

em.type01 {
	font-weight: bold;
	font-style: normal;
}

/*--- ボーダー ----------------------------------------------------------------*/
.bdB {
	border-bottom-width: 1px;
	border-bottom-style: solid;
	border-bottom-color: #CCC;
}

/*--- ボックス ----------------------------------------------------------------*/
.box01 {
	background-color: #F5F5F5;
	padding: 15px;
}
.box02 {
  background-color: #dfebf7;
	padding: 15px;
}

/*--- フルードイメージ ---*/
/* 拡大縮小 */
.fluidimg {
	width: 100%;
	max-width: 100%;
	height:auto;
}
/* 画像サイズ内で縮小 */
.fluidimg2 {
	width: auto;
	max-width: 100%;
	height:auto;
}

html {
	width:100%;
}
img {
  vertical-align: bottom;
}


/*==========================================================================
	レイアウト
============================================================================*/
.sp_none {
	display:none;
}
/*-- ボタン --*/
.btnA {
  margin: 40px auto;
}
.btnA a {
  text-align: center;
  color: #FFFFFF;
  background-color: #ff6600;
  line-height: 1;
  font-size: 18px;
  padding: 15px 10px;
  display: block;
  transition: .2s linear;
  position: relative;
  border-radius: 4px;
  font-weight: bold;
}
.btnA a:after {
  font-family: "Font Awesome 5 Free";
　font-weight: 900;
  content: "\f0da";
  position: absolute;
  right: 10px;
}
/*--- リンク ---*/
.btnA a:link, .btnA a:visited {
	color: #FFFFFF;
	text-decoration: none;
}
.btnA a:hover, .btnA a:active {
	color: #FFFFFF;
	text-decoration: none;
  background-color:#666666;
}
/*--　タイトル --*/
.bgttl {
	color: #FFF;
	background-color: #112c3f;
	text-align: center;
	font-size: 18px;
	padding: 10px;
	font-weight: bold;
}

/*****************************************************
	768px以上【tablet】
******************************************************/
@media print, screen and (min-width: 768px) {
  .sp_none {
	  display:block;
  }
  .tb_none {
	  display:none;
  }
  /*-- ボタン --*/
  .btnA {
    width: 90%;
    margin: 40px 0;
  }
  .btnA a {
	  padding: 20px;
	  font-size: 24px;
	  border-radius: 8px;
  }
  /*--　タイトル --*/
 .bgttl {
	font-size: 30px;
	padding: 25px 20px;
  }
}
/*****************************************************
	1024px以上【PC】
******************************************************/
@media print, screen and (min-width: 1024px) {
  .tb_none {
	  display:block;
  }
  .pc_none {
	  display:none;
  }
  /*--- MSG ---*/
  .msgA {
    font-size: 18px;
  }
  /*-- ボタン --*/
  .btnA {
    width: 560px;
    margin: 40px 0;
  }
 
}


/*==========================================================================
	メインビジュアル
============================================================================*/
.mainview {
	background-image:url("img/main_bg.jpg");
  	background-size:cover;
  	background-position:center center;
}
.mainview .mainviewinnr {
	width: 100%;
	box-sizing: border-box;
	padding: 20px 15px;
}
/*****************************************************
	768px以上【tablet】
******************************************************/
@media print, screen and (min-width: 768px) {
	.mainview {
		padding-top: 80px;
	}
	.mainview .mainviewinnr {
		height: 650px;
	}

}
/*****************************************************
	1024px以上【PC】
******************************************************/
@media print, screen and (min-width: 1024px) {
	.mainview {
		background-position:center right;
	}
	.mainview .mainviewinnr {
		max-width: 1400px;
		padding: 0 25px;
		margin: 0 auto;
	}

}

/*==========================================================================
	キャンペーン概要
============================================================================*/
.overviewArea {
	padding: 0 10px;
	font-size: 16px;
}
.overviewArea .overviewAreainnr {
	width: 100%;
	box-sizing: border-box;
	padding: 20px 0;
}
.overviewArea .overviewAreainnr .overviewBox {
	background-color: #FFF;
	padding: 15px;
	box-sizing: border-box;
	box-shadow: 0 0.5rem 3rem 0 rgb(0 0 0 / 20%);
}
.overviewArea .overviewAreainnr .overviewBox .ttl {
    font-weight: bold;
    padding: 0.5rem 1rem;
    margin: 30px 0 20px;
    text-align: left;
    font-size: 20px;
    border-left: 2px solid #ff6a00;
    border-bottom: 1px solid #CCCCCC;
}
/*****************************************************
	768px以上【tablet】
******************************************************/
@media print, screen and (min-width: 768px) {
	.overviewArea {
		padding: 0 10px;
	}
	.overviewArea .overviewAreainnr {
		padding: 30px 0;
	}
	.overviewArea .overviewAreainnr .overviewBox {
		padding: 30px;
	}
}
/*****************************************************
	1024px以上【PC】
******************************************************/
@media print, screen and (min-width: 1024px) {
	.overviewArea {
		padding: 0 10px;
		font-size: 18px;
	}
	.overviewArea .overviewAreainnr {
		max-width: 960px;
		margin: 0 auto;
		padding: 40px 0 80px;
	}
	.overviewArea .overviewAreainnr .overviewBox {
		padding: 40px;
	}
}

/*==========================================================================
	コンタクト見積エリア
============================================================================*/
.contArea {
	background-color: #FFF;
}
.contArea .contAreainnr {
	padding: 20px 10px;
	display: flex;
	flex-wrap: wrap;
}
.contArea .contAreainnr .picArea {
	text-align: center;
	width: 100%;
	margin-bottom: 20px;
}
.contArea .contAreainnr .cntArea {
	width: 100%;
}
.contArea .contAreainnr .cntArea .msg {
	font-weight: bold;
	font-size: 16px;
	text-align: center;
}
/*****************************************************
	768px以上【tablet】
******************************************************/
@media print, screen and (min-width: 768px) {
  	.contArea .contAreainnr {
		padding: 30px 10px;
	}
	.contArea .contAreainnr .picArea {
		text-align: center;
		width: 22%;
		margin-right: 4%;
	}
	.contArea .contAreainnr .cntArea {
		width: 74%;
	}
	.contArea .contAreainnr .cntArea .msg {
		font-weight: bold;
		font-size: 24px;
		text-align: left;
	}
}
/*****************************************************
	1024px以上【PC】
******************************************************/
@media print, screen and (min-width: 1024px) {
  	.contArea .contAreainnr {
		padding: 40px 10px;
		max-width: 960px;
		margin: 0 auto;
	}
}

/*==========================================================================
	specエリア
============================================================================*/
.specArea {
}
.specArea .specAreainnr {
	padding: 20px 0;
	background-color: #FFF;
}
.specArea .specAreainnr .textBoxArea {
	padding: 10px;
}
.specArea .specAreainnr .textBoxArea .txtBox {
	padding: 20px;
	border-radius: 6px;
	border: 1px solid #CCCCCC;
	background-color: #e7f7fe;
	margin-bottom: 15px;
	font-size: 16px;
}
.specArea .specAreainnr .textBoxArea .txtBox span {
	color: #FF0000;
	font-weight: bold;
}
/*****************************************************
	768px以上【tablet】
******************************************************/
@media print, screen and (min-width: 768px) {
  	.specArea .specAreainnr {
		padding: 30px 0;
	}
	.specArea .specAreainnr .textBoxArea .txtBox {
		padding: 40px 20px;
		border-radius: 8px;
		border: 1px solid #CCCCCC;
		background-color: #e7f7fe;
		margin-bottom: 25px;
		font-size: 24px;
	}
}
/*****************************************************
	1024px以上【PC】
******************************************************/
@media print, screen and (min-width: 1024px) {
  	.specArea .specAreainnr {
		padding: 40px 0;
	}
	.specArea .specAreainnr .textBoxArea {
		padding: 20px;
		max-width: 1200px;
		margin: 0 auto;
	}
	.specArea .specAreainnr .textBoxArea .txtBox {
		font-size: 28px;
		text-align: center;
	}
}

