/* #gHeader
================================================ */
#gHeader { border-bottom: 1px solid  #0f7cbb; }

/* #mainImg
================================================ */
#mainImg { position: relative; background: none; margin-top: 0; margin-bottom: 15px; padding-top: 50px; height: auto; z-index: 1; }
#mainImg:before { content: ''; position: absolute; top: 0; left: 0; width: 100%; height: 100%; background: url("../../img/opc-oee/bg_main_iot01_sp.jpg") no-repeat center center/cover; z-index: -1; }
#mainImg .inner { position: static; padding: 50px 20px 120px;}
#mainImg .sub_txt { margin-bottom: 40px; padding-top: 10px; font-size: 1.4rem; color: #fff; }
#mainImg .content { padding-top: 25px; }
#mainImg .mainWrap { position: relative; }
#mainImg .img { width: 332px; }
#mainImg .inner:before { display: none; }
#mainImg .main-header { position: relative; display: flex; flex-direction: column; padding: 30px 25px; width: 100%; max-width: 680px; box-sizing: border-box; }
#mainImg .main-header .sub { margin-bottom: 10px; color: #fff; font-size: 2.3rem; font-weight: 900; line-height: 1.5; letter-spacing: 0.03em; }
#mainImg .main-header .sub_txt { color: #fff; font-size: 1.5rem; font-weight: 900; line-height: 1.5; letter-spacing: 0.03em; }
#mainImg .main-header .sub-small { color: #fff; font-size: 2rem; font-style: normal; font-weight: 900; letter-spacing: 0.01em; line-height: 1.2;}


#mainImg .mainImg_point{
	position: absolute;
}
#mainImg .mainImg_point .area_mark{
	position: absolute;
    max-width: 70px;
    width: 13%;
    top: -10px;
    left: -10px;
}
#mainImg .mainImg_point-wrap{
	margin-bottom: 10px;
	padding: 20px 10px;
	background: #ffffffc4;
    border-radius: 12px;
}
#mainImg .mainImg_point-txt{
	font-size: 1.4rem;
	color: #016cb1;
    font-weight: bold;
    line-height: 1.5;
    text-align: center;
}
#mainImg .mainImg_point-txt span{
	background: linear-gradient(transparent 73%, #FFF100 73%);
}
#mainImg .mainImgbtn .areaBtn .mod_btn01{
	margin: 10px auto 0;
    max-width: 320px;
}
#mainImg .mainImg_point-free{
    margin-right: 6px;
    padding: 2px 12px;
    color: #fff;
    background: #016cb1;
    border-radius: 40px;
}
#mainImg .mod_btn01_link .mod_btn01_txt{
	position: relative;
}
#mainImg .mod_btn01_link .mod_btn01_txt:before {
    content: "";
    display: block;
    position: absolute;
    top: 50%;
    left: -27px;
    width: 15px;
    height: 30px;
    margin-top: -15px;
    background: url(/img/common/ico_info01.png) no-repeat center;
    background-size: 100%;
}
#mainImg .list { 
	display: flex; 
	flex-wrap: wrap; 
	justify-content: space-between; 
	position: absolute;
    max-width: 340px;
    width: 100%;
    bottom: -45%;
    left: 50%;
    transform: translate(-50%, -50%);
}
#mainImg .list .item { 
	    flex: 0 1 30%;
    width: 30%;
    max-width: 100px;
    font-size: 1.6rem;
    color: #fff;
    font-weight: 900;
    text-align: center;
    background-color: #016cb1;
    border-radius: 50%;
    box-sizing: border-box;
    padding: 28px 0;
    line-height: 1.5;
    letter-spacing: 0.01em;
}

@media all and (min-width: 600px) {
	#mainImg { margin-top: 95px; margin-bottom: 0; padding-top: 0; }
	#mainImg::before { top: 0; height: 100%; background-image: url(../../img/opc-oee/bg_main_opc_pc.jpg);}
	#mainImg .inner {
	padding: 90px 0 180px;
	box-sizing: border-box;
	}
  #mainImg .inner:before { display: none; }
	#mainImg .sub_txt { margin-bottom: 70px; font-size: 1.8rem;}
	#mainImg .content { padding-top: 27px; }
	#mainImg .txtArea { flex: 1; padding-right: 50px; }
	#mainImg .img { position: relative; width: 568px; }
	#mainImg .main-header .sub { margin-bottom: 20px; font-size: 4.2rem; margin-top: 0; }
	#mainImg .main-header .sub_txt {font-size: 1.8rem; margin-bottom: 70px; }
	#mainImg .main-header .sub-small {font-size: 3rem;  padding-top: 0px; line-height: 1.3;}
	#mainImg .mainImg_point .area_mark{
		left: -30px;
	}
	#mainImg .mainImg_point-wrap{
		margin-bottom: 0px;
		align-content: end;
		flex: 0 1 47%;
		width: 47%;
		max-width: 47%; 
	}
	#mainImg .mainImg_point-txt{
		font-size: 1.7rem;
	}
	#gNav .list .is_download a:after{
		display: none;
	}
	body.is_sticky #gNav .list .is_download a[target]:after{
		display: none;
	}
	#mainImg .list { max-width: 500px; left: 40%; }
	#mainImg .list .item { font-size: 2.2rem; padding: 40px 0; max-width: 30%;}
	#mainImg .mainImg_bnr{
		position: absolute;
		top: 180px;
		right: 20px;
		max-width: 290px;
		width: 100%;
	}
}

.mainImg_bnr {
	max-width: 290px;
    margin: auto;
    margin-bottom: 20px;
}

/* 共通
------------------------------------- */
.mod_tit05 {
    font-size: 1.8rem;
}

.mod_img_box02_img {
    width: calc(65% - 15px);
}

.mod_list02_item{
	margin-bottom: 10px;
	padding-left: 0px;
	font-size: 1.6rem;
	font-weight: bold;
}
.mod_img_box01-3_item {
	margin-bottom: 30px;
}
@media all and (min-width: 600px) {
	.inner_left{
		padding-left: 2%;
	}
	.mod_tit05 {
        margin-bottom: 30px;
        font-size: 3.3rem;
    }
	.mod_img_box02_img {
        width: calc(20% - 10px);
    }
	.mod_list02_item{
		font-size: 1.8rem;
	}
	.mod_img_box01-3_item {
		width: 80%;
	}
}
.common_wrap{
	background: #f7f9fc;
    padding: 30px;
}
.common_note {
  display: flex;
  align-items: flex-start;
  justify-content: center;
  gap: 14px;
  padding: 16px;
  background: #f7f9fc;
}

.common_note_icon {
  width: 46px;
  flex-shrink: 0;
}

.common_note_icon img {
  display: block;
  width: 100%;
  height: auto;
}

.common_note_txt {
  margin: 0;
  font-size: 1.4rem;
  font-weight: 500;
  line-height: 1.8;
}

.common_note_txt strong {
  color: #004ca8;
  font-weight: 700;
}

@media all and (min-width: 600px) {
  .common_note {
    align-items: center;
    gap: 20px;
    padding: 14px 30px;
  }

  .common_note_icon {
    width: 70px;
  }

  .common_note_txt {
    font-size: 2rem;
    line-height: 1.7;
  }

}

.common_point{
	padding:14px 16px;
	border:2px solid #004ca8;
	border-radius:8px;
	background:#fff;
	width: 90%;
    max-width: 850px;
    margin: 0 auto;
}

.common_point_ttl{
	margin-bottom:10px;
	color:#004ca8;
	font-size:1.4rem;
	font-weight:700;
	line-height:1.5;
}

.common_point_list li{
	position:relative;
	padding-left:25px;
	font-size:1.2rem;
	line-height:1.8;
    font-weight: bold;
}

.common_point_list li + li{
	margin-top:4px;
}

.common_point_list li::before{
	content:"";
	position:absolute;
    top: 12px;
    left: 2px;
    width: 12px;
    height: 6px;
	border-left:2px solid #004ca8;
	border-bottom:2px solid #004ca8;
	transform:rotate(-45deg);
	box-sizing:border-box;
}

@media all and (min-width:600px){

.common_point{
	padding:16px 20px;
}

.common_point_ttl{
	font-size:2rem;
}

.common_point_list li{
	font-size:1.6rem;
}

}

@media (min-width: 600px) {
    .mod_img_box01 {
        margin-bottom: 20px;
    }
}

/*  intro
================================================== */

.intro_lead {
	font-size: 2.1rem;
	line-height: 1.5;
	margin-bottom: 25px;
}

@media (min-width:600px){
	.intro_lead {
		padding-top: 30px;
		font-size: 3.3rem;
        margin-bottom: 35px;
	}
	
}



/*  #problem
================================================== */
.problem__list {
   margin-top: 30px;
  }
.problem__item {
	position: relative;
	margin-bottom: 10px;
    border: 1px solid #ddd;
    padding: 20px 20px 25px;
    box-sizing: border-box;
 }
.problem__item:before {
      content: '';
      display: block;
      position: absolute;
      inset: 0;
      border-radius: 25px;
      }
.problem__item-point{
	display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: center;
    align-content: center;
	margin-bottom: 5px;
}
.problem__img{
	flex: 0 1 24%;
    width: 24%;
    max-width: 24%;
}
.problem__ttl{
	flex: 0 1 73%;
    width: 73%;
    max-width: 73%;
    font-size: 1.8rem;
	color: #1cacda;
	line-height: 1.4;
	font-weight: bold;
}
.problem_txt{
	font-size: 1.5rem;
	text-align: center;
}
.problem_txt span{
	color: #016cb1;
}
@media all and (min-width: 600px){
	.problem__list {
		display: flex;
		flex-wrap: wrap;
        justify-content: space-between;
        align-items: stretch;
        align-content: center;
		margin-top: 40px;
	}
	.problem__item{
		flex: 0 1 32%;
		width: 32%;
		max-width: 32%;
	}
	.problem_txt{
		font-size: 2.2rem;
		line-height: 1.6;
	}
}

/* reason
------------------------------------- */

#reason .reason_img_list{
	display:grid;
	grid-template-columns:1fr;
	gap:0px;
	margin-top:30px;
}

#reason .reason_img_item img{
	display:block;
	width:100%;
	height:auto;
	border-radius:8px;
}

@media all and (min-width:600px){

#reason .reason_img_list{
	grid-template-columns:repeat(2,1fr);
	gap:0px;
	margin-top:20px;
}

}

/*standardization
----------------------------------------------------*/

#standardization *{
	box-sizing:border-box;
}

#standardization .std_lead{
	margin:0 0 24px;
	color:#0068c9;
	font-size:1.8rem;
	font-weight:700;
	line-height:1.5;
	text-align:center;
}

#standardization .pc{
	display:none;
}

#standardization .std_flow{
	display:grid;
	grid-template-columns:1fr;
	gap:16px;
}

#standardization .std_col{
	overflow:hidden;
	border:1px solid #cedaea;
	border-radius:7px;
	background:#fff;
}

#standardization .std_col_ttl{
	display:flex;
	flex-direction:column;
	align-items:center;
	justify-content:center;
	margin:0;
	padding:12px 14px;
	color:#fff;
	font-size:1.6rem;
	font-weight:700;
	line-height:1.4;
	text-align:center;
}

#standardization .std_col_ttl::after{
	content:none;
}

#standardization .std_col_ttl span{
	display:block;
	margin-top:2px;
	font-size:1.4rem;
	font-weight:400;
}

#standardization .std_col_ttl_gray{
	background:#606b78;
}

#standardization .std_col_ttl_blue{
	background:#004db0;
}

#standardization .std_col_ttl_purple{
	background:#4d009f;
}

/* 設備データ */

#standardization .std_equip_list{
	padding:10px;
}

#standardization .std_equip_item{
	display:grid;
	grid-template-columns:minmax(0,.9fr) minmax(0,1.15fr);
	gap:8px;
	padding:10px 0;
	border-bottom:1px solid #dce3eb;
}

#standardization .std_equip_item:last-child{
	border-bottom:none;
}

#standardization .std_equip_ttl,
#standardization .std_data_ttl{
	margin:0 0 5px;
	font-size:1.4rem;
	font-weight:bold;
	text-align: center;
}

#standardization .std_equip_img{
	display:flex;
	align-items:center;
	justify-content:center;
	min-height:72px;
}

#standardization .std_equip_img img{
	display:block;
	width:100%;
	max-width:110px;
	height:70px;
	object-fit:contain;
}

#standardization .std_data{
	padding:8px 10px;
	background: #f1f1f1;
	border-radius:3px;
}

#standardization .std_data_list{
	margin:0;
	padding-left:20px;
}

#standardization .std_data_list li{
	font-size:1.4rem;
	line-height:1.6;
}

/* ブロック間矢印 */

#standardization .std_arrow{
	width:0;
	height:0;
	margin:0 auto;
	border-top:18px solid #99a6b7;
	border-right:17px solid transparent;
	border-left:17px solid transparent;
}

/* 標準化 */

#standardization .std_method_list{
	padding:10px;
}

#standardization .std_method_item{
	display:grid;
	align-items:center;
	gap:10px;
	padding:12px;
	border:1px solid;
	border-radius:7px;
	background:#fff;
	margin-bottom: 10px;
}
#standardization .std_method_item:last-child{
	margin-bottom: 0;
}

#standardization .std_method_opc{
	border-color:#2772cf;
	color:#0758b9;
}

#standardization .std_method_packml{
	border-color:#69a970;
	color:#2c913e;
}

#standardization .std_method_model{
	border-color:#eea13c;
	color:#eb8600;
}

#standardization .std_method_icon img{
	display:block;
	width:52px;
	height:52px;
	object-fit:contain;
}

#standardization .std_method_ttl{
	margin:0;
	font-size:1.8rem;
	font-weight:700;
	line-height:1.3;
}

#standardization .std_method_sub{
	margin:4px 0;
	font-size:1.4rem;
	font-weight:700;
	line-height:1.5;
}

#standardization .std_method_txt{
	margin:0;
	color:#222;
	font-size:1.4rem;
	line-height:1.6;
}

#standardization .std_method_arrow{
	width:0;
	height:0;
	margin:4px auto;
	border-top:11px solid #8e9daf;
	border-right:12px solid transparent;
	border-left:12px solid transparent;
}

/* 活用先 */

#standardization .std_use_list{
	display:grid;
	grid-template-columns:repeat(2,1fr);
	gap:18px 10px;
	padding:20px 14px 16px;
}

#standardization .std_use_item{
	text-align:center;
}

#standardization .std_use_icon{
	display:flex;
	align-items:center;
	justify-content:center;
	height:58px;
}

#standardization .std_use_icon img{
	display:block;
	width:54px;
	height:54px;
	object-fit:contain;
}

#standardization .std_use_ttl{
	margin:6px 0 0;
	font-size:1.4rem;
	font-weight:700;
}

#standardization .std_use_txt{
	margin:3px 0 0;
	font-size:1.4rem;
	line-height:1.4;
}

#standardization .std_result_arrow{
	width:0;
	height:0;
	margin:20px auto 10px;
	border-top:18px solid #9298a4;
	border-right:27px solid transparent;
	border-left:27px solid transparent;
}

/* 成果 */

#standardization .std_result{
	margin:0 10px 10px;
	overflow:hidden;
	border:1px solid #f36c72;
	border-radius:7px;
}

#standardization .std_result_ttl{
	margin:0;
	padding:7px 10px;
	background:#f05d65;
	color:#fff;
	font-size:1.4rem;
	text-align:center;
}

#standardization .std_result_list{
	display:grid;
	grid-template-columns:repeat(3,1fr);
	gap:8px;
	padding:14px 8px 10px;
}

#standardization .std_result_item{
	text-align:center;
}

#standardization .std_result_icon{
	display:flex;
	align-items:center;
	justify-content:center;
	height:46px;
}

#standardization .std_result_icon img{
	display:block;
	width:44px;
	height:44px;
	object-fit:contain;
}

#standardization .std_result_item p{
	margin:5px 0 0;
	color:#ed454d;
	font-size:1.4rem;
	font-weight:700;
	line-height:1.4;
}

#standardization .std_result_bottom{
	margin:0 10px 8px;
	padding:8px 4px 0;
	border-top:1px solid #f2a1a4;
	color:#ed454d;
	font-size:1.4rem;
	font-weight:700;
	line-height:1.4;
	text-align:center;
}

/* 下部説明 */

#standardization .std_bottom{
	display:grid;
	grid-template-columns:1fr;
	gap:14px;
	margin-top:30px;
}

#standardization .std_bottom .common_note{
	display:flex;
	align-items:flex-start;
	gap:12px;
	padding:0;
	background:transparent;
}

#standardization .std_bottom .common_note_icon{
	width:48px;
	flex-shrink:0;
}

#standardization .std_bottom .common_note_icon img{
	display:block;
	width:100%;
	height:auto;
}

#standardization .std_bottom .common_note_txt{
	margin:0;
	font-size:1.4rem;
	line-height:1.75;
}

#standardization .std_bottom .common_point{
	padding:12px 14px;
	border:1px solid #3476d0;
	border-radius:7px;
	background:#fff;
	box-shadow:none;
}

#standardization .std_bottom .common_point_ttl{
	margin:0 0 7px;
	color:#0758b5;
	font-size:1.6rem;
	font-weight:700;
	line-height:1.5;
}

#standardization .std_bottom .common_point_list{
	margin:0;
	padding:0;
	list-style:none;
}

#standardization .std_bottom .common_point_list li{
	position:relative;
	padding-left:22px;
	font-size:1.4rem;
	line-height:1.7;
}

#standardization .std_bottom .common_point_list li + li{
	margin-top:4px;
}

#standardization .std_bottom .common_point_list li::before{
	content:"";
	position:absolute;
	top:.65em;
	left:2px;
	width:9px;
	height:5px;
	border-bottom:2px solid #0758b5;
	border-left:2px solid #0758b5;
	transform:rotate(-45deg);
	box-sizing:border-box;
}

@media all and (min-width:600px){
	
	#standardization  .std_lead{
		margin-bottom:18px;
		font-size:2rem;
		line-height:1.4;
	}

	#standardization .pc{
		display:block;
	}

	#standardization .std_flow{
		grid-template-columns:
			minmax(0,.95fr)
			18px
			minmax(0,1.05fr)
			18px
			minmax(0,1.15fr);
		align-items:stretch;
		gap:6px;
	}

	#standardization .std_arrow{
		align-self:center;
		margin:0;
		border-top:15px solid transparent;
		border-bottom:15px solid transparent;
		border-left:18px solid #99a6b7;
		border-right:none;
	}

	#standardization .std_col{
		display:flex;
		flex-direction:column;
	}

	#standardization .std_col_ttl{
		min-height:52px;
		padding:8px 12px;
		font-size:1.4rem;
	}

	#standardization .std_col_ttl span{
		font-size:1.4rem;
	}

	#standardization .std_equip_list,
	#standardization .std_method_list{
		flex:1;
	}

	#standardization .std_equip_item{
		grid-template-columns:minmax(0,.9fr) minmax(0,1.15fr);
		padding:15px 0;
	}

	#standardization .std_equip_ttl,
	#standardization .std_data_ttl{
		font-size:1.4rem;
	}

	#standardization .std_equip_img{
		min-height:58px;
	}

	#standardization .std_equip_img img{
		height:56px;
	}

	#standardization .std_data{
		padding:6px 8px;
	}

	#standardization .std_data_list li{
		font-size:1.2rem;
		line-height:1.5;
	}

	#standardization .std_method_icon img{
		width:44px;
		height:44px;
	}

	#standardization .std_method_ttl{
		font-size:1.8rem;
	}

	#standardization .std_method_sub{
		font-size:1.4rem;
	}

	#standardization .std_method_txt{
		font-size:1.4rem;
	}

	#standardization .std_use_list{
		grid-template-columns:repeat(4,1fr);
		gap:8px;
		padding:18px 8px 12px;
	}

	#standardization .std_use_icon{
		height:50px;
	}

	#standardization .std_use_icon img{
		width:46px;
		height:46px;
	}

	#standardization .std_use_ttl{
		font-size:1.4rem;
	}

	#standardization .std_use_txt{
		font-size:1.2rem;
	}

	#standardization .std_result{
		margin-top:auto;
	}

	#standardization .std_bottom{
		grid-template-columns:minmax(0,2fr) minmax(450px,.9fr);
		align-items:center;
	}

	#standardization .std_bottom .common_note{
		align-items:center;
	}

}

/*----------------------------------------------------
support
----------------------------------------------------*/

#support{
	padding:5rem 0;
}

#support .support_list{
	display:grid;
	grid-template-columns:1fr;
	gap:2rem;
}

#support .support_item{
	position:relative;
	display:flex;
	flex-direction:column;
	padding:2rem;
	border:2px solid #d7e2ef;
	border-radius:1.2rem;
	background:#fff;
}

#support .support_item_blue{
	border-color:#0b57b7;
}

#support .support_item_green{
	border-color:#14853f;
}

#support .support_item_orange{
	border-color:#ef7f00;
}

#support .support_head{
	display:flex;
	align-items:flex-start;
	gap:1.4rem;
}

#support .support_num{
	display:flex;
	align-items:center;
	justify-content:center;
	width:5rem;
	height:5rem;
	border-radius:50%;
	color:#fff;
	font-size:2.2rem;
	font-weight:700;
	line-height:1;
	flex-shrink:0;
}

#support .support_item_blue .support_num{
	background:#0b57b7;
}

#support .support_item_green .support_num{
	background:#14853f;
}

#support .support_item_orange .support_num{
	background:#ef7f00;
}

#support .support_head_cont{
	flex:1;
}

#support .support_ttl{
	margin-bottom:.5rem;
	font-size:3rem;
	font-weight:700;
	line-height:1.3;
}

#support .support_item_blue .support_ttl{
	color:#0b57b7;
}

#support .support_item_green .support_ttl{
	color:#14853f;
}

#support .support_item_orange .support_ttl{
	color:#ef7f00;
}

#support .support_sub{
	font-size:1.5rem;
	line-height:1.6;
}

#support .support_img{
	display:flex;
	align-items:center;
	justify-content:center;
	margin:2rem 0;
}

#support .support_img img{
	display:block;
	width:100%;
	max-width:18rem;
	height:auto;
}

#support .support_check{
	padding:1.6rem;
	border-radius:.8rem;
	background:#f5f8fb;
}

#support .support_item_green .support_check{
	background:#f3faf5;
}

#support .support_item_orange .support_check{
	background:#fff8f1;
}

#support .support_check li{
	position:relative;
	padding-left:2.2rem;
	font-size: 1.4rem;
    font-weight: bold;
	line-height:1.8;
}

#support .support_check li + li{
	margin-top:.6rem;
}

#support .support_check li::before{
	content:"";
	position:absolute;
	top:.8rem;
	left:0;
	width:.9rem;
	height:.5rem;
	border-left:2px solid currentColor;
	border-bottom:2px solid currentColor;
	transform:rotate(-45deg);
	box-sizing:border-box;
}

#support .support_item_blue .support_check li{
	color:#0b57b7;
}

#support .support_item_green .support_check li{
	color:#14853f;
}

#support .support_item_orange .support_check li{
	color:#ef7f00;
}

#support .support_txt{
	margin-top: 20px;
	font-size:1.4rem;
	line-height:1.6;
}

#support .support_arrow{
	position:relative;
	width:2.6rem;
	height:2.6rem;
	margin:0 auto;
}

#support .support_arrow::before{
	content:"";
	position:absolute;
	inset:0;
	margin:auto;
	width:0;
	height:0;
	border-left:1.3rem solid transparent;
	border-right:1.3rem solid transparent;
	border-top:1.6rem solid #0b57b7;
}

@media all and (min-width:600px){

#support .support_list{
	grid-template-columns:1fr 3rem 1fr 3rem 1fr;
	align-items:stretch;
}

#support .support_item{
	height:90%;
}

#support .support_head{
	gap:1.6rem;
}

#support .support_num{
	width:3rem;
	height:3rem;
	font-size:1.6rem;
}

#support .support_ttl{
	font-size:2rem;
}

#support .support_sub{
	font-size:1.4rem;
}

#support .support_img{
	margin: 20px 0;
}

#support .support_img img{
	max-width:20rem;
}

#support .support_txt{
	font-size:1.5rem;
}

#support .support_arrow{
	align-self:center;
	width:3rem;
	height:3rem;
}

#support .support_arrow::before{
	border-top:1.5rem solid transparent;
	border-bottom:1.5rem solid transparent;
	border-left:1.8rem solid #99a6b7;
	border-right:none;
}

}


/* contact
------------------------------------- */
#contact{
	position: relative;
	margin-top: 8%;
	padding: 60px 0;
	background: url("../../img/eng-sec/bk_contact.png") bottom center / cover no-repeat;
}
#contact .contact_ttl{
	margin-bottom: 30px;
	text-align: center;
	color: #FFF;
}
#contact .contact_ttl h3{
	margin-bottom: 10px;
	font-size: 1.6rem;
	font-weight: bold;
}
#contact .button-group .btn{
	display: block;
	margin-bottom: 20px;
	padding: 20px;
	transition: transform 0.3s ease, filter 0.3s ease, box-shadow 0.3s ease;
    will-change: transform, filter, box-shadow;
}

#contact .button-group .btn:hover {
   transform: translateY(-3px);
  filter: brightness(1.05);
  box-shadow: 0 3px 6px rgba(0, 0, 0, 0.1);
}

#contact .button-group .btn-list:hover {
  background-image: linear-gradient(90deg, #0090ff 0%, #00c9ff 100%);
}
#contact .button-group .btn-contact:hover {
  background-image: linear-gradient(90deg, #ff9500 0%, #ffbc00 100%);
}

#contact .button-group .btn .icon:before {
	content: '';
	position: relative;
	display: inline-block;
	vertical-align: middle;
	margin-right: 6px;
	width: 23px;
	height: 23px;
}
#contact .button-group .btn .icon_dl:before{
	background: url("../../img/l1m-net/icon-dl.png") no-repeat center / contain;
}
#contact .button-group .btn .icon_farm:before{
	background: url("../../img/l1m-net/btn_foam.png") no-repeat center / contain;
}
#contact .button-group .btn span{
	padding: 10px 0px;
	font-size: 1.3rem;
	letter-spacing: 1px;
	color: #fff;
	
}
#contact .button-group .btn .icon{
	font-size: 1.8rem;
}
#contact .button-group .btn::after{
	display: none;
}
#contact .button-group .btn-list{
	background: #03A9F4;
	text-decoration: none;
	text-align: center;
}
#contact .button-group .btn-contact{
	background: #ffa707;
	text-decoration: none;
	text-align: center;
}
@media all and (min-width: 600px){
	#contact .contact_ttl h3{
		font-size: 2.2rem;
	}
	.button-group{
		display: flex;
        flex-wrap: wrap;
        align-content: flex-start;
        justify-content: center;
		max-width: 1000px;
		margin: auto;
		font-weight: bold;
	}
	.button-group .btn{
		flex: 0 1 48%;
		width: 48%;
		max-width: 48%;
		box-sizing: border-box;
	}
}

/*  バナー
================================================== */

/* ふわふわ効果 */
.fluffy{
	width: 100%;
	animation: fluffy 4s ease infinite;
}

@keyframes fluffy{
  0%, 40%, 60%, 80% {
    transform: scale(1.0);
  }
  50%, 70% {
    transform: scale(0.95);
  }
}
.Bnr{
  position: relative;
  margin: 0 auto;
  display: none;
}
.Bnr .Bnr__img{
  position: fixed;
  bottom: 140px;
  right: 0;
  z-index: 888;
}
.Bnr__img__inner{
  box-sizing:border-box;
  padding: 10px;
  padding-right: 14px;
}
.Bnr .Bnr__img__inner a{
  display: block;
  filter: drop-shadow(2px 2px 2px rgba(160, 160, 160, 0.8)); 
}
.Bnr .Bnr__img p.close{
  position: absolute;
  right: 10px;
  top:-20px;
}
.Bnr .Bnr__img p.close a{
  display: block;
  width: 20px;
  text-align: center;
}
.Bnr .Bnr__img p.close a span{
  display: block;
  width: 1px;
  height: 1px;
  overflow: hidden;
}
.Bnr .Bnr__img p.close a i{
  font-size: 20px;
  z-index: 999;
  color: #999;
  padding: 2px 4px;
  background-color: #fff;
}


