/* #gHeader
================================================ */
#gHeader { border-bottom: 1px solid  #0f7cbb; }

#eng-doc #mainImg .tit { font-family: 'Noto Serif JP', sans-serif; font-size: 2.1rem; }

@media all and (min-width: 600px) { #eng-doc #mainImg .tit { font-size: 4rem; } }

@media all and (min-width: 600px) { #eng-doc #mainImg .tit .sub { font-size: 3.0rem; } }

/* 白い大きいタイトルはheader.php参照 */

/* #mainImg
================================================ */
/*#mainImg { background: url("../img/engineering/bg_main_engineering01_sp.png") no-repeat center center/cover; margin-top: 0; padding-top: 50px; }

#mainImg .inner { position: static; }

#mainImg .inner:before { display: none; }

@media all and (min-width: 600px) { #mainImg { background: url("../img/engineering/bg_main_engineering01_pc.png") no-repeat center center/cover; margin-top: 95px; padding-top: 0; }
  #mainImg .inner:before { display: none; } }*/

/* #mainImg
================================================ */
#mainImg { position: relative; background: none; margin-top: 0; margin-bottom: 45px; padding-top: 50px; height: auto; z-index: 1; }
#mainImg:before { content: ''; position: absolute; top: 0; left: 0; width: 100%; height: 100%; background: url("../../img/eng-doc/bg_main_iot01_sp.jpg") no-repeat center center/cover; z-index: -1; }
#mainImg .inner { width: 1120px; position: relative; padding-left: 15px; padding-right: 15px; padding-bottom: 50px; }
#mainImg .inner:before { display: none; }
#mainImg .main-header { display: flex; flex-direction: column; }
#mainImg .main-header .sub { color: #fff; font-size: 2.3rem; font-weight: 900; text-shadow: 2px 2px 2px #333; line-height: 1.5; margin-top: 10px; letter-spacing: 0.03em; }
#mainImg .main-header .sub_txt { color: #fff; font-size: 1.4rem; font-weight: 900; text-shadow: 2px 2px 2px #333; line-height: 1.5; margin-top: 10px; margin-bottom: 10px; letter-spacing: 0.03em; }
#mainImg .main-header .sub-small { padding-top: 50px; color: #ffe156; font-size: 1.5rem; font-style: normal; font-weight: 900; text-shadow: 2px 2px 2px #333; letter-spacing: 0.01em;}
#mainImg .imgArea .circle { color: #0171b8; font-weight: 900; text-align: center; position: absolute; top: -80px; right: -10px; background: url(../../img/sensor/img_main_en01_sp.png) no-repeat top left/contain; width: 120px; height: 120px; padding: 40px 20px 0; z-index: -1;}
#mainImg .list { display: flex; flex-wrap: wrap; justify-content: center; max-width: 370px; margin: 10px auto 0; margin-bottom: 20px; }
#mainImg .list .item { width: 105px; width: calc(33.333% - 12px); font-size: 1.4rem; color: #fff; font-weight: 900; text-align: center; background-color: #ffb22d; border-radius: 50%; box-sizing: border-box; padding: 9% 0; line-height: 1.5; letter-spacing: 0.01em; margin: 0 6px; display: flex; align-items: center; justify-content: center;}
#mainImg .mainImg_point-wrap{
	padding: 20px 10px;
	background: #fff;
	border: 2px solid #016cb1;
    border-radius: 12px;
}
#mainImg .mainImg_point-txt{
	font-size: 1.4rem;
	color: #016cb1;
    font-weight: bold;
    line-height: 1.5;
    text-align: center;
}
#mainImg .mainImgbtn .mod_btn01{
	margin: 10px auto 0;
    max-width: 385px;
}
@media all and (max-width: 350px) { 
	#mainImg .list .item { padding: 23px 0; } 
}

@media all and (min-width: 600px) {
	#mainImg { margin-top: 95px; padding: 90px 0; margin-bottom: 0; }
	#mainImg::before { top: 0; height: 100%; background-image: url(../../img/eng-doc/bg_main_iot01_pc.jpg);}
	#mainImg .inner{background: #33333382; padding: 50px; margin-right: 0; margin-left: auto; box-sizing: border-box;}
	#mainImg .mainWrap { position: relative; }
	#mainImg .main-header {  }
	#mainImg .main-header .sub { font-size: 4.6rem; margin-top: 0; }
	#mainImg .main-header .sub_txt { font-size: 2.6rem; margin-bottom: 40px; }
	#mainImg .main-header .sub-small {font-size: 2.6rem; padding-top: 0px; }
	#mainImg .imgArea .circle { font-size: 2.6rem; top: -230px; right: -10px; background: url(../../img/sensor/img_main_en01_pc.png) no-repeat top left/contain; width: 250px; height: 250px; padding: 76px 20px;}
	#mainImg .list { 
		flex: 0 1 45%;
		width: 45%;
		max-width: 45%;
		margin-bottom: 0px;
	}
	#mainImg .list .item { width: 140px; width: calc(33.333% - 20px); font-size: 2.2rem; padding: 34px 0; margin: 0 10px;}
	#mainImg .mainImg_point-wrap{
		flex: 0 1 45%;
		width: 45%;
		max-width: 45%; 
	}
	#mainImg .mainImg_point{
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
		align-items: center;
	}
	#mainImg .mainImg_point-txt{
		font-size: 1.7rem;
	}
}

/*　モデルベースデザイン　*/
.modelbase_wrap{
	position: relative;
    top: -50px;
    padding: 80px 5% 40px;
    background: #EBD4E7;
    z-index: 0;
}
.modelbase_wrap .modelbase_box{
	margin-bottom: 20px;
    padding: 20px;
    background: #fff;
	box-sizing: border-box;
}
.modelbase_box-main{
	margin-bottom: 10px;
    font-size: 2rem;
    color: #72216A;
    text-align: center;
    font-weight: bold;
    line-height: 1.3;
}
.modelbase_box-main span{
	font-size: 1.6rem;
}
.modelbase_txt{
	font-weight: bold;
}
.modelbase_txt span{
	color: #6B3588;
	font-weight: bold;
}
.modelbase_ttl{
	position: relative;
    max-width: 750px;
    width: 100%;
    margin: auto;
    margin-top: 35px;
    padding: 20px 2px;
    background: #A94F99;
    border-radius: 10px;
    box-sizing: border-box;
	z-index: 1;
}
.modelbase_ttl-main{
	font-size: 2rem;
	color: #fff;
	text-align: center;
    font-weight: bold;
    line-height: 1.6;
}	
.modelbase_ttl:before {
	content: "";
    position: absolute;
    top: -15%;
    left: 50%;
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    border-bottom: 25px solid #A94F99;
    border-left: 25px solid transparent;
    border-right: 25px solid transparent;
}
.modelbase_box-ttl{
	position: relative;
	margin-bottom: 20px;
    padding: 10px;
    background: #A576B1;
    color: #fff;
    font-size: 1.6rem;
    font-weight: bold;
    text-align: center;
	line-height: 1.3;
}
.modelbase_box-ttl:before {
	content: "";
    position: absolute;
    top: 100%;
    left: 50%;
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    border-left: 25px solid transparent;
    border-right: 25px solid transparent;
    border-top: 20px solid #A576B1;
    z-index: 0;
}
.modelbase_blue-ttl{
	background: #2EADE5;
}
.modelbase_blue-ttl:before{
	border-left: 25px solid transparent;
    border-right: 25px solid transparent;
    border-top: 20px solid #2EADE5;
}
.merit_box{
	background: #fff;
    border: 3px solid #D3EDFB;
    padding: 20px;
}
.merit_box-txt{
	position: relative;
    padding-left: 25px;
    margin-bottom: 10px;
    font-size: 1.5rem;
    font-weight: bold;
}
.merit_box-txt:before {
	content: "";
    position: absolute;
    top: 0.4em;
    left: 0;
    width: 15px;
    height: 15px;
    background: url(../../img/common/ico_check01.png) no-repeat center / contain;
}
.merit_box-txt span{
	color: #1B569B;
	background: linear-gradient(transparent 70%, #FFF100 70%);
}

@media all and (min-width: 600px) {
	.modelbase_ttl{
		margin-top: 55px;
		border-radius: 100px;
	}
	.modelbase_ttl:before{
		top: -20%;
	}
	.modelbase_box-wrap{
		margin-bottom: 30px;
		display: flex;
  		justify-content: space-between;
	}
	.modelbase_wrap .modelbase_box{
		margin-bottom: 0;
		padding: 20px 40px;
		flex: 0 1 49%;
		width: 49%;
		max-width: 49%;
	}
	.modelbase_box-main{
		margin-bottom: 20px;
	}
	.modelbase_txt {
		font-size: 1.4rem;
	}
	.merit_box-txt{
		margin-bottom: 5px;
	}
	.merit_box-txt{
		font-size: 1.6rem;
	}
	.merit_box-txt:before {
		width: 17px;
		height: 17px;
	}
}

/*  装飾
================================================== */
.keyword{
background-color:#fec81c; 
color:#fff; 
padding:2px 10px; 
border-radius: 1em;
}

/*事例紹介 枠線＋画像＋テキスト　　*/
.wrap3 {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  border: 1px solid #e2e2e2;
    margin-bottom: 30px;
  padding: 20px;
}
.item3 {
  padding: 10px;
  width:30%;
  background-color: #fff;
  text-align:center
}
.item3 img {
  width:140px;
  padding-bottom: 20px;
}
@media not all and (min-width: 600px) {
  .item3 {
    width: 100%;
  }
  .item3:not(:last-child) {
    margin-bottom: 20px;
  }
}

.dl_btn .mod_btn01{
	text-align: center;
}
@media all and (min-width: 600px)  {
  .dl_btn .mod_btn01{
		max-width: none;
		width: 400px;
	}
}


/*特長 枠線 画像＋テキスト*/


.task_sol {
	padding-bottom: 80px
}
.task_sol h2 {
	font-size: 3.2rem;
	font-weight: 700;
	line-height: 1;
	text-align: center;
	color: #005bab;
	position: relative;
	height: 44px;
	background-size: 343px 44px;
	background-position: 0 0;
}
@media (max-width:600px) {
	.task_sol {
		padding-bottom: 65px;
	}
	.task_sol h2 {
		font-size: 2.4rem;
		line-height: 1.5
}
	.task_sol h2::before {
		top: 10px;
	}
	.task_sol_item .inner {
		padding: 0 10px 0 16px;
	}
}


.solul{
	max-width: 1200px;
	margin:
	auto;
	width: 95%;
}
.solli{
	background:
	white;
	display: flex;
	margin: 30px 0;
	justify-content: space-around;
	padding: 20px;
	border: 1px solid #ccc; /* 枠線 */
}
.sol2{
	flex-direction: row-reverse;
}
.txtarea{
	max-width:840px;
	width:100%;
}
.soimg1{
	max-width: 380px;
	max-height: 400px;
	background:#fff;
	width:100%;
	text-align:center;
	display: flex;
	align-items: center;
	margin: 0 20px 0 0;
}
.sol2 .soimg1{
	margin:0 0 0 20px;
}
.soimg1 img{
	margin:	auto;
	width: 100%;
}
.skyb{
	color:#21c9fd!important;
}
.big{
	font-size:88px;
	font-weight:700;
}
.bluet{
	color:#1F5BAA;
	font-size: 2rem;
	font-weight: 700;
	line-height: 1.3;
}
.title3{
	display: flex;
	flex-direction: column;
	line-height: 1;
	text-align: center;
	margin-right: 10px;
	width: 100px;
}
.big{
	font-size:60px;
	font-weight:700;
}
.title2{
	display:
	flex;
	align-items: center;
}
.title2 h4{
	font-size: 34px;
	font-weight:700;
	line-height: 1.3;
}
.txtarea p{
	font-size:25px;
	font-weight:700;
	line-height: normal;
	margin-bottom:10px;
	margin-top: 30px;
}
.txt2{
	font-size:19px;
	line-height: 2;
}


.title1{
	font-size:40px;
	font-weight:900;
}
.title1:before{
display:none;
}



@media (max-width:600px) {

	.solli{
	background:white;
	display: flex;
	margin: 10% auto 0;
	justify-content: space-around;
	padding: 20px;
	flex-direction: column-reverse;
	max-width: 500px;
	width: 100%;
    box-sizing: border-box;
}
.sol2{
	flex-direction: column-reverse;
}
.txtarea{
	max-width:840px;
	width:100%;
}
.soimg1{
	max-width: 820px;
	max-height: 320px;
	background:#fff;
	width: 100%;
	height: 60vw;
	text-align:center;
	display: flex;
	align-items: center;
	margin: 30px auto;
}
.sol2 .soimg1{
	margin: 30px auto;
}
.title3{
	display: flex;
	flex-direction: column;
	line-height: 1;
	text-align: center;
	margin-right: 5px;
	width: 90px;
}
.big{
	font-size: 40px;
	font-weight:700;
}
}


/*3列 テキスト＋画像＋テキスト*/

/*　　
<div class="main">
  <section>
    <h3>テキスト</h3>
<div class="sankakucenter_s sankaku_s"></div>
<img src="画像" alt="">
<ul class="checkli">
    <li>テキスト</li>
</ul>
  </section>
  <section>
    <h3>テキスト</h3>
<div class="sankakucenter_s sankaku_s"></div>
<img src="画像" alt="">
<ul class="checkli">
    <li>テキスト</li>
</ul>
  </section>
  <section>
    <h3>テキスト</h3>
<div class="sankakucenter_s sankaku_s"></div>
<img src="画像" alt="">
<ul class="checkli">
    <li>テキスト</li>
</ul>
  </section>
</div>
　　*/

.main {
  display: flex;
  flex-wrap: wrap;
}

/* Main contents */
.main section {
  flex-grow: 1;
    flex-shrink: 1;

  margin: 15px;
  background: #fff;
  box-shadow: 0 2px 6px #ccc;
  max-height:auto;
  max-width: 334px;
}

.main h3 {
  color: #fff;
  font-size: 1.6rem;
font-weight: bold;
  padding: 10px 12px;
background-color: #21c9fd;
text-align: center; 
}

.checkli {
    width: fit-content;
    margin: auto;
    padding-left: 15px;
    padding-right: 15px;
}
.checkli li{
    position: relative;
    padding-left: 15px;
margin-bottom: 10px;
line-height: 1.5em
  }
 
.checkli li:before {
    content: "";
    position: absolute;
    top: .2em;
    left: 0;
    -webkit-transform: rotate(50deg);
    -ms-transform: rotate(50deg);
    transform: rotate(50deg);
    width: 5px;
    height: 10px;
    border-right: 3px solid #29abe2 ;
    border-bottom: 3px solid #29abe2 ;
  }

/*　　↓▼　　*/
.sankakucenter_s{
	width: 100%;
	margin: 0 auto;
}
.sankaku_s{
	width: 0;
	height: 0;
	border: 20px solid transparent;
	border-top: 20px solid #21c9fd;
}






/*枠線 画像＋テキスト*/

.f-box{
  padding:10px;
  display : flex;
  flex-wrap : wrap;
  justify-content:space-between;
}
.f-box::after{
  content:"";
  display: block;
  width:100%;
}
.f-boxitem{
  border: 1px solid #ccc;
  padding:20px;
  margin-bottom:10px;
  box-sizing:border-box;
  width:100%;
}
.f-boxitem h1 {
  color: #195aa5;
  font-size: 1.8rem;
  font-weight: bold;
  line-height: 1.5;
}
.f-boxitem p {
}
.f-boxitem img {
margin-right:10px; float: left; width: 70px;
}


@media screen and (min-width:600px) {
.f-box::after{
  width:49.2%;
}
.f-boxitem{
  width:49.2%;
}
.f-boxitem img {
margin-right:10px; float: left; width: 140px;
}

}

/*　テキストサイズ　*/
.fts180p{font-size: 100%;}
.fts220p{font-size: 100%;}
@media screen and (min-width:600px) {
.fts180p{font-size: 180%;}
.fts220p{font-size: 220%;}}





.mgr-3em{margin-right : 3em;}

/*　center　*/
.center { text-align: center; }

/*　　↓▼　　*/
.sankakucenter{
	width: 100%;
	margin: 20px auto;
}
.sankaku{
	width: 0;
	height: 0;
	border: 80px solid transparent;
	border-top: 40px solid #ccc;
	margin-bottom: -40px;
}

/*　lbl テキストの水色　*/
.lbl { color:#1cace1}

/*　txtry テキストの両揃え　*/
.txtry {text-align: justify; text-justify: inter-ideograph;}

/*　bold　*/
.bold {font-weight: bold; }

/*　 ↓ボタン　*/
a.butn{
  display: inline-block;
  width: 240px;
  margin: 6px 0px 0px 0px;
  padding: 5px 5px 5px 5px;
  border: 1px solid ;
  background: rgba(255,255,255,.90);
  text-decoration: none;
  line-height: 1.5em;
  transition: .3s;
  color: rgba(1,108,177,.90);
}

a.butnover:hover {
  background: rgba(1,108,177,.90);
  color: rgba(255,255,255,.90);
  border: 1px solid #009BD3;
}



.schedu{
	width: 100%;
	margin: 20px auto;
	border-collapse: collapse;
}
.schedu th{
	width: 30%;
	padding: 10px 20px ;
	text-align: left;
	vertical-align: top;
	font-weight: bold;
	background-color: #e5f0f7;
	border: 1px solid #ccc;
    font-size: 1.25rem;
	vertical-align: middle;
    letter-spacing: 0.15rem;
}
.schedu td{
	padding: 10px 20px ;
	background-color: #fff;
	border: 1px solid #ccc;
    vertical-align: middle;
}
@media all and (min-width: 600px) {
.schedu{
	width: 90%;
	margin: 20px auto;
	border-collapse: collapse;
}
.schedu th{
	width: 30%;
	padding: 10px 20px ;
	text-align: left;
	vertical-align: top;
	font-weight: bold;
	background-color: #e5f0f7;
	border: 1px solid #ccc;
  font-size: 1.75rem;
vertical-align: middle;
letter-spacing: 0.15rem;
}
}



/*  #about
================================================== */
#about .imgBox { display: -webkit-box; display: -ms-flexbox; display: flex; -ms-flex-wrap: wrap; flex-wrap: wrap; margin-bottom: 25px; }
#about .imgBox .img_box { /* width: 50%; */ -webkit-box-ordinal-group: 3; -ms-flex-order: 2; order: 2; margin-bottom: 0; }
#about .imgBox .area { -webkit-box-ordinal-group: 2; -ms-flex-order: 1; order: 1; }
#about .subTit { margin-bottom: 5px; font-size: 1.5rem; font-weight: 700; }
#about .txt { margin-bottom: 20px; }
#about .areaBox { margin-bottom: 25px; }
#about .areaBox .box .txt { margin-bottom: 10px; }
#about .areaBox .box + .box { margin-top: 25px; }
#about .img_box { margin-bottom: 20px; }
#about .texts .txt + .txt { margin-top: 20px; }
#about .areaBtn { margin: 0 -18px; padding: 25px 45px; background: #f3f3f3; }
#about .areaBtn .btn { margin-top: 0; }
#about .areaBtn .btn + .btn { margin-top: 10px; }
#about .areaBtn .btn a { height: auto; padding: 13px 0 14px; line-height: 1.4; text-align: center; }

@media all and (min-width: 600px) { #about .imgBox { margin-bottom: 35px; }
  #about .imgBox .img_box { /* width: calc(50% - 15px); */ -webkit-box-ordinal-group: 2; -ms-flex-order: 1; order: 1; margin-bottom: 0; }
  #about .imgBox .area { -webkit-box-ordinal-group: 3; -ms-flex-order: 2; order: 2; }
  #about .subTit { margin-bottom: 5px; font-size: 1.8rem; }
  #about .txt { margin-bottom: 15px; }
  #about .areaBox { display: -webkit-box; display: -ms-flexbox; display: flex; -ms-flex-wrap: wrap; flex-wrap: wrap; -webkit-box-pack: justify; -ms-flex-pack: justify; justify-content: space-between; margin-bottom: 30px; }
  #about .areaBox .box { width: calc(50% - 15px); box-sizing: border-box; }
  #about .areaBox .box .txt { margin-bottom: 20px; }
  #about .areaBox .box + .box { margin-top: 0; }
  #about .img_box { margin-bottom: 50px; }
  #about .texts { display: -webkit-box; display: -ms-flexbox; display: flex; -ms-flex-wrap: wrap; flex-wrap: wrap; -webkit-box-pack: justify; -ms-flex-pack: justify; justify-content: space-between; margin-bottom: 50px; }
  #about .texts .txt { width: calc(50% - 15px); box-sizing: border-box; margin-bottom: 0; }
  #about .texts .txt + .txt { margin-top: 0; }
  #about .areaBtn { display: -webkit-box; display: -ms-flexbox; display: flex; -ms-flex-wrap: wrap; flex-wrap: wrap; -webkit-box-pack: start; -ms-flex-pack: start; justify-content: flex-start; margin: 0; padding: 25px 100px; }
  #about .areaBtn .btn { max-width: 280px; width: 280px; margin-top: 0; }
  #about .areaBtn .btn a { height: 85px; }
  #about .areaBtn .btn a:before { height: 85px; }
  #about .areaBtn .btn + .btn { margin-top: 0; margin-left: 30px; } }



/*  #task
================================================== */
#task .imgBox { display: -webkit-box; display: -ms-flexbox; display: flex; -ms-flex-wrap: wrap; flex-wrap: wrap; margin-bottom: 25px; }
#task .imgBox .img_box { /* width: 50%; */ -webkit-box-ordinal-group: 3; -ms-flex-order: 2; order: 2; margin-bottom: 0; }
#task .imgBox .area { -webkit-box-ordinal-group: 2; -ms-flex-order: 1; order: 1; }
#task .subTit { margin-bottom: 5px; font-size: 1.5rem; font-weight: 700; }
#task .txt { margin-bottom: 20px; }
#task .areaBox { margin-bottom: 25px; }
#task .areaBox .box .txt { margin-bottom: 10px; }
#task .areaBox .box + .box { margin-top: 25px; }
#task .img_box { margin-bottom: 20px; }
#task .texts .txt + .txt { margin-top: 20px; }
#task .areaBtn { margin: 0 -18px; padding: 25px 45px; background: #f3f3f3; }
#task .areaBtn .btn { margin-top: 0; }
#task .areaBtn .btn + .btn { margin-top: 10px; }
#task .areaBtn .btn a { height: auto; padding: 13px 0 14px; line-height: 1.4; text-align: center; }

@media all and (min-width: 600px) { #task .imgBox { margin-bottom: 35px; }
  #task .imgBox .img_box { /* width: calc(50% - 15px); */ -webkit-box-ordinal-group: 2; -ms-flex-order: 1; order: 1; margin-bottom: 0; }
  #task .imgBox .area { -webkit-box-ordinal-group: 3; -ms-flex-order: 2; order: 2; }
  #task .subTit { margin-bottom: 5px; font-size: 1.8rem; }
  #task .txt { margin-bottom: 40px; }
  #task .areaBox { display: -webkit-box; display: -ms-flexbox; display: flex; -ms-flex-wrap: wrap; flex-wrap: wrap; -webkit-box-pack: justify; -ms-flex-pack: justify; justify-content: space-between; margin-bottom: 30px; }
  #task .areaBox .box { width: calc(50% - 15px); box-sizing: border-box; }
  #task .areaBox .box .txt { margin-bottom: 20px; }
  #task .areaBox .box + .box { margin-top: 0; }
  #task .img_box { margin-bottom: 50px; }
  #task .texts { display: -webkit-box; display: -ms-flexbox; display: flex; -ms-flex-wrap: wrap; flex-wrap: wrap; -webkit-box-pack: justify; -ms-flex-pack: justify; justify-content: space-between; margin-bottom: 50px; }
  #task .texts .txt { width: calc(50% - 15px); box-sizing: border-box; margin-bottom: 0; }
  #task .texts .txt + .txt { margin-top: 0; }
  #task .areaBtn { display: -webkit-box; display: -ms-flexbox; display: flex; -ms-flex-wrap: wrap; flex-wrap: wrap; -webkit-box-pack: start; -ms-flex-pack: start; justify-content: flex-start; margin: 0; padding: 25px 100px; }
  #task .areaBtn .btn { max-width: 280px; width: 280px; margin-top: 0; }
  #task .areaBtn .btn a { height: 85px; }
  #task .areaBtn .btn a:before { height: 85px; }
  #task .areaBtn .btn + .btn { margin-top: 0; margin-left: 30px; } }



/*  #step1
================================================== */

#step1 .inner { padding-bottom: 50px; }
#step1 .subTit { font-size: 1.7rem; font-weight: 700; text-align: center; color: #1cacda; }
#step1 .txt { margin-bottom: 15px; }
#step1 .list { counter-reset: num; }
#step1 .list .item { background: #fff; border: 1px solid  #c6c6c6; counter-increment: num; padding: 23px 25px 25px; position: relative; }
#step1 .list .item + .item { margin-top: 15px; }
#step1 .list .item .copy {  font-size: 1.5rem; font-weight: 700; border-bottom: 1px solid #c6c6c6; position: relative; margin-bottom: 9px; padding-bottom: 14px; }
#step1 .list .item .childList { margin-bottom: 0; }
#step1 .copy { margin-bottom: 5px; font-size: 1.5rem; font-weight: 700; }


@media all and (min-width: 600px) { 
  #step1 .inner { padding-top: 120px; padding-bottom: 119px; }
  #step1 .subTit { font-size: 2.4rem; }
  #step1 .txt { margin-bottom: 30px; }
  #step1 .list {display: -webkit-box; display: -ms-flexbox; display: flex; -ms-flex-wrap: wrap; flex-wrap: wrap; -webkit-box-pack: justify; -ms-flex-pack: justify; justify-content: space-between; }
  #step1 .list .item { width: calc(33.33% - 17px); box-sizing: border-box; padding: 27px 20px 35px 35px; }
  #step1 .list .item + .item { margin-top: 0; }
  #step1 .list .item .copy { font-size: 1.8rem; line-height: 1.5; margin-bottom: 12px; padding-bottom: 15px; text-align: center; 
display: -webkit-flex;
 display: flex;
 -webkit-align-items: center; /* 縦方向中央揃え（Safari用） */
 align-items: center; /* 縦方向中央揃え */
 -webkit-justify-content: center; /* 横方向中央揃え（Safari用） */
 justify-content: center; 
}
  #step1 .list .item .childList .childItem { font-size: 1.5rem; }
  #step1 .copy { margin-bottom: 5px; font-size: 1.8rem; }  
 }



/*  #step2
================================================== */

#step2 .inner { padding-bottom: 50px; }
#step2 .subTit { font-size: 1.7rem; font-weight: 700; text-align: center; color: #1cacda; }
#step2 .txt { margin-bottom: 15px; }
#step2 .list { counter-reset: num; }
#step2 .list .item { background: #fff; border: 1px solid  #c6c6c6; counter-increment: num; padding: 23px 25px 25px; position: relative; }
#step2 .list .item + .item { margin-top: 15px; }
#step2 .list .item .copy {  font-size: 1.5rem; font-weight: 700; border-bottom: 1px solid #c6c6c6; position: relative; margin-bottom: 9px; padding-bottom: 14px; }
#step2 .list .item .childList { margin-bottom: 0; }
#step2 .copy { margin-bottom: 5px; font-size: 1.5rem; font-weight: 700; }


@media all and (min-width: 600px) { 
  #step2 .inner { padding-top: 120px; padding-bottom: 119px; }
  #step2 .subTit { font-size: 2.4rem; }
  #step2 .txt { margin-bottom: 30px; }
  #step2 .list {display: -webkit-box; display: -ms-flexbox; display: flex; -ms-flex-wrap: wrap; flex-wrap: wrap; -webkit-box-pack: justify; -ms-flex-pack: justify; justify-content: space-between; }
  #step2 .list .item { width: calc(33.33% - 17px); box-sizing: border-box; padding: 27px 20px 35px 35px; }
  #step2 .list .item + .item { margin-top: 0; }
  #step2 .list .item .copy { font-size: 1.8rem; line-height: 1.5; margin-bottom: 12px; padding-bottom: 15px; text-align: center; 
display: -webkit-flex;
 display: flex;
 -webkit-align-items: center; /* 縦方向中央揃え（Safari用） */
 align-items: center; /* 縦方向中央揃え */
 -webkit-justify-content: center; /* 横方向中央揃え（Safari用） */
 justify-content: center; 
}
  #step2 .list .item .childList .childItem { font-size: 1.5rem; }
  #step2 .copy { margin-bottom: 5px; font-size: 1.8rem; }  
 }




/*  #strength
================================================== */

#strength .inner { padding-bottom: 50px; }
#strength .subTit { font-size: 1.7rem; font-weight: 700; text-align: center; color: #1cacda; }
#strength .txt { margin-bottom: 15px; }
#strength .list { counter-reset: num; }
#strength .list .item { background: #fff; border: 1px solid  #c6c6c6; counter-increment: num; padding: 23px 25px 25px; position: relative; }
#strength .list .item + .item { margin-top: 15px; }
#strength .list .item .copy {  font-size: 1.5rem; font-weight: 700; border-bottom: 1px solid #c6c6c6; position: relative; margin-bottom: 9px; padding-bottom: 14px; }
#strength .list .item .childList { margin-bottom: 0; }
#strength .copy { margin-bottom: 5px; font-size: 1.5rem; font-weight: 700; }


@media all and (min-width: 600px) { 
  #strength .inner { padding-top: 120px; padding-bottom: 119px; }
  #strength .subTit { font-size: 2.4rem; }
  #strength .txt { margin-bottom: 30px; }
  #strength .list {display: -webkit-box; display: -ms-flexbox; display: flex; -ms-flex-wrap: wrap; flex-wrap: wrap; -webkit-box-pack: justify; -ms-flex-pack: justify; justify-content: space-between; }
  #strength .list .item { width: calc(33.33% - 17px); box-sizing: border-box; padding: 27px 20px 35p 35pxx; }
  #strength .list .item + .item { margin-top: 0; }
  #strength .list .item .copy { font-size: 1.8rem; line-height: 1.5; margin-bottom: 12px; padding-bottom: 15px; text-align: center; 
display: -webkit-flex;
 display: flex;
 -webkit-align-items: center; /* 縦方向中央揃え（Safari用） */
 align-items: center; /* 縦方向中央揃え */
 -webkit-justify-content: center; /* 横方向中央揃え（Safari用） */
 justify-content: center; 
}
  #strength .list .item .childList .childItem { font-size: 1.5rem; }
  #strength .copy { margin-bottom: 5px; font-size: 1.8rem; }  
 }



/*  #archive
================================================== */
#archive .inner { padding-top: 35px; margin-bottom: -16px; }

#archive .tablistwrap { overflow-x: auto; width: 100%; margin: 0 0 25px; padding: 0 0 25px; border-bottom: solid 1px #e2e2e2; }

#archive .tablistwrap .tablist { margin: 0; /* min-width: 970px; margin-left: -20px; */ }

#archive .tablistwrap .tablist .tabitem { width: calc(33% - 10px); margin: 5px; border-radius: 3px; }

#archive .list .item { padding-top: 60px; margin-top: -60px; margin-bottom: 35px; /* +.item{ margin-top: -15px; } */ }

#archive .list .item:nth-child(even) { border-bottom: 1px solid #e2e2e2; margin-bottom: 40px; padding-bottom: 34px; }

#archive .list .item .date { font-size: 1.3rem; font-weight: 700; }

#archive .list .item .tit { margin-bottom: 20px; font-size: 1.7rem; line-height: 1.6; font-weight: 700; color: #1cacda; }

#archive .list .item .box .img { margin-bottom: 18px; position: relative; }

#archive .list .item .box .img .cat { position: absolute; width: 100%; left: 0; bottom: 0; padding: 2px 0; background: rgba(1, 108, 177, 0.9); font-size: 2.1rem; font-weight: 700; text-align: center; color: #fff; }

#archive .list .item .box .areaTxt .txt { margin-bottom: 22px; }

#archive .list .item .box .areaTxt .btn { margin: 0 25px; }

@media all and (min-width: 600px) { 
  #archive .inner { padding-top: 120px; padding-bottom: 0px; }
  #archive .tablistwrap { padding: 0 0 50px; margin: 0 -10px 40px; }
  #archive .tablistwrap .tablist { min-width: 1100px; }
  #archive .tablistwrap .tablist .tabitem { width: 210px; }
  #archive .tablistwrap .tablist .tabitem.is_wide { width: 150px; }
  #archive .list { display: -webkit-box; display: -ms-flexbox; display: flex; -ms-flex-wrap: wrap; flex-wrap: wrap; -webkit-box-pack: justify; -ms-flex-pack: justify; justify-content: space-between; margin-right: -20px; margin-left: -20px; }
  #archive .list .item { width: 50%; box-sizing: border-box; border-bottom: 1px solid #e2e2e2; margin-bottom: 32px; padding-bottom: 41px; padding-right: 20px; padding-left: 20px; padding-top: 90px; margin-top: -90px; /* +.item{ margin-top: 0; } */ }
  #archive .list .item:nth-child(even) { margin-bottom: 32px; padding-bottom: 41px; }
  #archive .list .item .date { margin-bottom: 5px; font-size: 1.5rem; }
  #archive .list .item .tit { margin-bottom: 21px; font-size: 2rem; }
  #archive .list .item .box { display: -webkit-box; display: -ms-flexbox; display: flex; -ms-flex-wrap: wrap; flex-wrap: wrap; -webkit-box-pack: justify; -ms-flex-pack: justify; justify-content: space-between; }
  #archive .list .item .box .img { width: calc(53.5% - 13px); box-sizing: border-box; margin-bottom: 0; }
  #archive .list .item .box .img .cat { top: 126px; bottom: auto; padding: 1px 0; font-size: 2.2rem; }
  #archive .list .item .box .areaTxt { width: calc(46.5% - 13px); box-sizing: border-box; margin-top: -5px; }
  #archive .list .item .box .areaTxt .txt { margin-bottom: 22px; font-size: 1.5rem; }
  #archive .list .item .box .areaTxt .btn { width: 150px; margin: 0 auto; }
  #archive .list .item .box .areaTxt .btn a { padding: 4px 10px 2px 20px; font-size: 1.3rem; text-align: left; -webkit-box-pack: start; -ms-flex-pack: start; justify-content: flex-start; }
  #archive .list .item .box .areaTxt .btn a:after { right: 20px; } }



/*  #back-btn f3f3f3
================================================== */
#back-btn .areaBtn { margin: 0 -18px; padding: 25px 45px; background: #e5f0f7; }
#back-btn .areaBtn .btn { margin-top: 0; }
#back-btn .areaBtn .btn a { height: auto; padding: 13px 0 14px; line-height: 1.4; text-align: center; }

@media all and (min-width: 600px) {
  #back-btn .areaBtn .btn { max-width: 350px; width: 350px; margin: 0 auto; }
  #back-btn .areaBtn .btn a { padding: 20px 0 19px; } }



/* other
------------------------------------- */
#other { background: #eeeeee; }

#other .otherInner { padding-top: 50px; margin-bottom: 60px; }

@media all and (min-width: 600px) { #other .otherInner { padding-top: 90px; padding-bottom: 70px; } }
