﻿a.btn-border {
	border: 2px solid #000;
	border-radius: 0;
	background: #fff;
	-webkit-box-shadow: 4px 4px 0 #000;
	box-shadow: 4px 4px 0 #000;
	text-decoration:none;
	padding:6px;
	margin-top:60px;
}

a.btn-border:hover {
	-webkit-box-shadow: -4px -4px 0 #000;
	box-shadow: -4px -4px 0 #000;
}

.manaka{
	position: relative;
	height:250px;
}
.boxmi5 {
	margin: 30px auto;
  	border: solid 2px #ee8992;
  	padding: 0.3em 0.5em;
  	position: absolute;
   	top: 40%;
   	left: 50%;
   	transform: translate(-50%,-50%);
  	color: #ee8992;
  	font-weight: bold;
	background: #fff;
	z-index: 1000;	
	width:70%;

}
.boxmi5:after {
	background: #ee8992;
	color: #fff;
	font-weight: bold;
	position: absolute;
	left: -2px;
	bottom: 100%;
	padding: 1px 10px 0 10px;
	content: "発送先";
	letter-spacing: 0.1em;
}

.txt-area_0{
	margin:60px 10px 0px 10px;
}

.txt-area_0 h3{
	clear: both;
    	margin-bottom: 30px;
    	border-bottom: 1px dashed #999;
    	padding-left: 3%;
    	letter-spacing: 0.1em;
	margin-top:30px;
}
.p-flow_anc__list li i {
    display: block
}

.p-flow_contents {
    margin-bottom: min(5.7142857143vw + 48.5714285714px,140px)
}

.p-flow_contents__target {
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    justify-content: center;
    margin-bottom: 60px;
    margin-top: 20px
}

.p-flow_contents__target__label {
    background: #ed828b;
    border-radius: 3px;
    color: #fff;
    font-size: min(calc(.2449vw + .6301rem),.875rem);
    letter-spacing: 0;
    line-height: 1.2;
    margin-left: min(.1632653061vw + 2.387755102px,5px);
    margin-right: min(.1632653061vw + 2.387755102px,5px);
    padding: min(.2448979592vw + 4.0816326531px,8px) min(.3265306122vw + 6.7755102041px,12px)
}

.p-flow_contents__target__label.-mate {
    background: #ed828b
}

.p-flow_contents__target__label.-medical {
    background: #eba067
}

.p-flow_contents__target__label.-life {
    background: #7acc93
}

.p-flow_contents__target__label.-stay {
    background: #67d0db
}

.p-flow_contents__target__label.-job,.p-flow_contents__target__label.-plan {
    background: #bf96d9
}

.p-flow_contents__target__label.-work {
    background: #6794db
}

.p-flow_contents__target__label.-garden {
    background: #679529
}

.p-flow_contents__body {
    position: relative
}

.p-flow_contents__body:before {
    border-left: 2px dotted #3d3732;
    content: "";
    height: 100%;
    left: 50%;
    position: absolute;
    top: 0;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
    width: 1px;
    z-index: 1
}

.p-flow_contents__block {
    background: #faf9f7;
    border-radius: 30px;
    counter-increment: num;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin-bottom: 50px;
    padding: 60px 70px;
    position: relative;
    z-index: 11
}
.p-flow_contents__block_last {
    background: #faf9f7;
    border-radius: 30px;
    counter-increment: num;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin-bottom: 50px;
    padding: 60px 70px;
    position: relative;
    z-index: 11
}
.p-flow_contents__block_last::after{
	content: '';
	position: absolute;
	top: 100%;
	right: 0;
  	bottom: 0;
  	left: 0;
  	margin: auto;
    	width: 0;
    	height: 0;
    	border-top: 40px solid #555;
    	border-left: 8vw solid transparent;
    	border-right: 8vw solid transparent;
}

.p-flow_contents__block__ico {
    margin-right: min(1.6326530612vw + 13.8775510204px,40px);
    position: relative

}

.p-flow_contents__block__ico:before {
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    background: #665c54;
    border-radius: 50%;
    color: #fff;
    content: counter(num,decimal-leading-zero);
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    height: min(1.2244897959vw + 23.4081632653px,43px);
    justify-content: center;
    left: -10px;
    position: absolute;
    top: 0;
    width: min(1.2244897959vw + 23.4081632653px,43px);
    z-index: 1
}

.p-flow_contents__block__text {
	line-height: 1.8;
    	max-width: 800px;
	padding: 1em 0 0em 1em;

}

.p-flow_contents__block__title {
    font-size: min(calc(.40816vw + .84184rem),1.25rem);
    line-height: 1.4;
    margin-bottom: min(.8163265306vw + 21.9387755102px,35px)
}

.p-flow_contents__block__title span {
    /*color: #3d3732;*/
    display: inline-block;
    position: relative
}

.p-flow_contents__block__title span:before {
    background: #3d3732;
    bottom: max(-.4081632653vw + -3.4693877551px,-10px);
    content: "";
    height: 2px;
    left: 0;
    position: absolute;
    width: 100%
}

.p-flow_contents__beneficiary {
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    justify-content: space-between;
    margin-top: min(3.2653061224vw + 27.7551020408px,80px)
}

.p-flow_contents__beneficiary__text {
    line-height: 2.2;
    width: 50%
}

.p-flow_contents__beneficiary__img {
    margin-left: min(1.6326530612vw + 13.8775510204px,40px);
    text-align: right
}


/*==================================================
ふわっ
===================================*/

.fadeUp {
animation-name:fadeUpAnime;
animation-duration:0.5s;
animation-fill-mode:forwards;
opacity: 0;
}
@keyframes fadeUpAnime{
  from {
    opacity: 0;
	transform: translateY(100px);
  }

  to {
    opacity: 1;
	transform: translateY(0);
  }
}

/* アニメーションスタートの遅延時間を決めるCSS*/

.delay-time02{
animation-delay: 0.2s;
}

.delay-time04{
animation-delay: 0.4s;
}


/***/

/* check mark */

.sample08 li {
	position: relative;
	margin-left:35px;
	margin-top:15px;


}
.sample08 li::after {

	content: '';
	position: absolute;
	top: .5em;
	left: -1em;
	width: 8px;
	height: 3px;
	border-left: 2px solid #3498db;
	border-bottom: 2px solid #3498db;
	-webkit-transform: rotate(-45deg);
	transform: rotate(-45deg);
}
.midashi_01 {
  	position: relative;
 	padding: 5px 5px 5px 42px;
  	background: #666666;
  	color: white;
  	margin-left: -3px;
  	line-height: 1.3;
  	z-index:-1;
	display:inline-block;
	padding-right:8px;
}

.midashi_01:before {
  	position: absolute;
  	content: '';
  	left: -2px;
  	top: -2px;
  	border: none;
  	border-left: solid 40px white;
  	border-bottom: solid 79px transparent;
  	z-index:-2
}
.txt_center{
	font-family:YuGothic, "Yu Gothic", "Noto Sans JP", sans-serif;
	font-size:19px;
	padding: .5em .75em;
  	background-color: #f6f6f6;
	border-bottom: 3px double #ccc;
	margin:40px 0 20px 0	
}
.txt_bgcolor{
	padding: .5em .75em;
}

ul.listbara{
	margin:40px 0px 40px 40px;

}

ul.listbara li{
	float:left;
	font-size:1.5rem;
	font-weight:bold;
	border:solid #000 2px;
	padding:5px;
	margin:3px;
}


.updaInner_3retu{
    	margin: 0 auto;
    	width: 100%;
    	box-sizing: border-box;
	text-align: center;
}

.hover4_3retu {
  	/*box-shadow: 0 0 3px 0 rgba(0, 0, 0, 0.25);*
  	background-color: #fff;
  	/*border-color:#b8b8b8;*/
  	display: inline-block;
  	padding: 2em 0em;
    	cursor: pointer;
    	transition: all 0.3s ease 0s;
    	margin: 60px 0px 60px 0px;
    	width: 29.3%;
    	text-align: center;
	position:relative;
}
.hover4_3retu a:hover{
  	text-decoration:none;
}
.hover4_3retu a{
	color:#6e6e6e;
}
.hover4_3retu:hover {
  	box-shadow: 0 3px 6px 0 rgba(0, 0, 0, 0.25);
  	transform: translateY(-0.1875em);
}
.updaInner_3retu a{
  	text-decoration:none;
}

.hover4_3retu:after{
	content: "";
    	position: absolute;
    	right: 0;
    	bottom: -6px;
    	left: 0;
    	width: 0px;
    	height: 0px;
    	margin: auto;
    	border-style: solid;
    	border-color: #e8e8e8 transparent transparent transparent;
    	border-width: 31px 44px 0 44px;
}

/***/

.updaInner{
	max-width: 880px;
    	margin: 0 auto;
    	width: 100%;
    	box-sizing: border-box;
}

.hover4 {
  	box-shadow: 0 0 3px 0 rgba(0, 0, 0, 0.25);
  	background-color: #fff;
  	border-color:#b8b8b8;
  	display: inline-block;
  	padding: 2.5em 2em;
  	cursor: pointer;
  	transition: all 0.3s ease 0s;
  	margin:0px 20px 0px 20px;
  	width:45%;
  	text-align:center;
}
.hover4 a:hover{
  	text-decoration:none;
}
.hover4 a{	
	color:#6e6e6e;
}
.hover4:hover {
  	box-shadow: 0 3px 6px 0 rgba(0, 0, 0, 0.25);
  	transform: translateY(-0.1875em);
}
.updaInner a{
  	text-decoration:none;
}


.staff_keireki{
	margin-top:60px;
}


div.staff_keireki table {
    	border-collapse: collapse;  /* セルの線を重ねる */

}
div.staff_keireki  tr{
	border:solid 1px  #ccc;
}

div.staff_keireki th,td {
    	padding: 16px 10px;          /* 余白指定 */
}

div.staff_keireki th {
    	background-color: #0f518a;  /* 背景色指定 */
    	color:  #fff;               /* 文字色指定 */
    	font-weight:  normal;       /* 文字の太さ指定 */
    	position:  relative;        /* 位置指定 */
    	z-index: 10;                /* 重なり調整 */
	
}
div.staff_keireki td {
    	background-color:  #fafafa; /* 背景色指定 */
    	padding-left: 25px;         /* 余白指定 */
	text-align:left;
	border:solid 1px  #ccc;
}
.msg-box-13 {
    	border: 2px solid #e6e6e6;
    	border-radius: 4px;
    	margin: 2em 0;
    	padding: 2em;
    	position: relative;
}
.msg-box-13::before {
    	background-color: #fff;
    	color: #8a8a8;
    	content: "メッセージ";
    	font-weight: bold;
    	left: 1em;
    	padding: 0 .5em;
    	position: absolute;
    	top: -1em;
}
/***/


.kiken{
	width:900px;
	margin:0 auto;
}
.kiken h3 {
	position: relative;
  	padding: 1.5rem;
  	text-align: center;
  	border: 3px solid #000;
  	background: #FDFF00;
	margin-top:60px;
	line-height:200%;
		
}

.kiken h3:before,
.kiken h3:after {
  position: absolute;
  content: '';
color:#FDFF00;
}


.kiken h3:before {
  top: -40px;
  left: calc(50% - 40px);
  width: 80px;
  height: 80px;
  border: 2px solid #000;
  border-radius: 50%;
  background: #fff;
}

.kiken h3:after {
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: #fff;
}

.kiken h3 i {
  font-size: 30px;
  font-size: 3rem;
  line-height: 60px;
  position: absolute;
  z-index: 1;
  top: -40px;
  left: calc(50% - 40px);
  width: 80px;
  height: 60px;
  text-align: center;
}

.kiken h3 span {
  position: relative;
  z-index: 1;
}

.color_red_kiken{
	color:#DE1A22;
	font-weight:bold;
}


div.setumei_list{

	width: 89%;
    margin: 0 auto;
}

div.setumei_list dl{
	margin: 60px 0px;
	padding:20px;
	background:#fff;

}
div.setumei_list dt{
	font-weight:bold;
	margin:20px 0px 0px 0px; 
	font-size:1.2rem;
}

div.setumei_list dd{
	line-height:200%;
	padding-left:20px;
}

/**/

.setumei_list_2{
  	border-radius: 80px;
	background:#fff;

}


.bgwaku_gray{
	background:#f6f6f6;
	padding:20px;
	line-height:1.8;
}
.bgwaku_gray p{
	line-height:1.8;
}

/**/
.head_05 {
    	margin:  0;                 /* デフォルトCSS打ち消し */
    	font-size:  18px;           /* 文字サイズ指定 */
    	border-bottom: solid 3px;   /* 線指定 */
    	padding-bottom:  5px;       /* 余白指定 */
    	margin-bottom: 15px;        /* 周りの余白指定 */
    	position:  relative;        /* 位置調整 */
    	font-weight:  normal;       /* 文字の太さ調整 */
	display:inline-block;
}
.head_05:before {
    	content:  '';                   /* 空白の要素を作る */
    	width: 50px;                    /* 幅指定 */
    	height: 3px;                    /* 高さ指定 */
    	background-color: #42a6ff;      /* 背景色指定 */
    	display:  block;                /* ブロック要素にする */
    	position:  absolute;            /* 位置調整 */
    	left:  0;                       /* 位置調整 */
    	bottom: -3px;                   /* 位置調整 */
}
.yokonarabi_contents {
    	display: flex;
    	flex-wrap: wrap;
    	justify-content: space-around;
    	width: 100%;
    	margin: 0px 0;
    	padding-top: 0px;
	border:solid 0px #000;
}
.yokonarabi_item {
    	width: calc(100% / 3 - 30px);
    	margin-bottom: 0px;
    	padding: 20px 10px;
	border:solid 0px #000;
}
.yokonarabi_item_ttl{
   	text-align: center;
	font-size:14px;
}
.yokonarabi_ttl{
	font-size: 1.3rem;
    	font-weight: bold;
    	margin: 0.2em 0px;
    	color: #e17b03;
    	-webkit-font-feature-settings: "palt";
    	font-feature-settings: "palt";
}
.yokonarabi_text_ttl{
	font-size: 1.0rem;
    	font-weight: bold;
 	border-bottom: 1px dashed rgba(185,185,185,0.5);
	margin-top:50px;
}
.yokonarabi_text_ttl_2{
	font-size: 1.0rem;
    	font-weight: bold;
 	border-bottom: 1px dashed rgba(185,185,185,0.5);
}
.yokonarabi_item div.img_center{
	text-align:center;
	}
div.img_center{
	text-align:center;
	margin:20px;
	}
/**********************/
.yokonarabi_2_contents {
    	display: flex;
    	flex-wrap: wrap;
    	justify-content: space-around;
    	width: 100%;
    	margin: 0px 0;
    	padding-top: 0px;
	border:solid 0px #000;
}
.yokonarabi_2_item {
    	width: calc(100% / 2 - 30px);
    	margin-bottom: 0px;
    	padding: 20px 10px;
	border:solid 0px #000;
}
.yokonarabi_2_item_ttl{
	font-size:14px;
}
.yokonarabi_2_ttl{
	font-size: 1.3rem;
    	font-weight: bold;
    	margin: 0.2em 0px;
    	color: #e17b03;
    	-webkit-font-feature-settings: "palt";
    	font-feature-settings: "palt";
}
.yokonarabi_2_text_ttl{
	font-size: 1.0rem;
    	font-weight: bold;
 	border-bottom: 1px dashed rgba(185,185,185,0.5);
	margin-top:50px;
}
.yokonarabi_2_text_ttl_2{
	font-size: 1.0rem;
    	font-weight: bold;
 	border-bottom: 1px dashed rgba(185,185,185,0.5);
}
.yokonarabi_2_item div.img_center{
	float:left;
	padding-right:20px;
	}
.txt{
	padding-left:20px;
	line-height:200%;
}
.p_ttl{
	display:inline-block;
	border-bottom:solid 2px gray;
	margin:20px;
	padding-top:20px;
}

.check_list ul, ol {
	list-style-type: circle;
}

.check_list ul li,.check_list ol li {
  	line-height: 1.5; /*文の行高*/
  	padding: 0.5em 0; /*前後の文との余白*/
}
/**********************/
/**/
.sample-box-13 {
    	border: 2px solid #da4033;
    	border-radius: 4px;
    	margin: 2em 0;
    	padding: 2em;
    	position: relative;
}
.sample-box-13::before {
    	background-color: #fff;
    	color: #da4033;
    	content: "結論";
    	font-weight: bold;
    	left: 1em;
    	padding: 0 .5em;
    	position: absolute;
    	top: -1em;
}
ol.list-1{
  	font: 14px/1.6 'arial narrow', sans-serif;
  	padding: 10px 10px 20px;
  	color: #448ccb;
  	background: #ecf3fa;
  	border: solid 0px #adcce8;
 	border-radius: 5px;
	margin-left:20px;
	display:inline-block;
}
ol.list-1 li{
  	position: relative;
  	padding: 20px 0 20px 45px;
  	font-weight: bold;
  	border-bottom: dashed 1px #448ccb;
	counter-increment: list;
}
ol.list-1 li:before{
  	content: counter(list);
  	position: absolute;
  	left: 0px;
  	width: 30px;
  	height: 25px;
  	background: #F6A38B;
  	text-align: center;
  	color: #fff;
  	top: 50%;
  	-moz-transform: translateY(-50%);
  	-webkit-transform: translateY(-50%);
  	-o-transform: translateY(-50%);
  	-ms-transform: translateY(-50%);
  	transform: translateY(-50%);
}

span.maker_yellow {
	background:linear-gradient(transparent 60%, #ff6 60%);
 	font-weight:bold;
}
/**/
/*スタイル*/
.mediaset.type-over {
	margin-bottom: 50px;
}
.mediaset {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	width: 100%;
	max-width: 1120px;
	margin-left: auto;
	margin-right: auto;
	padding-left: 10px;
	padding-right: 10px;
	margin-bottom: 100px;
}
.mediaset.type-over .imgbox {
	width: 68.18182%;
	position: relative;
	top: 0;
	margin-left: 0 !important;
	margin-right: 0 !important;
}
.mediaset.type-over .imgbox img {
	width: 118.66667%;
    	max-width: none;
    	height: auto;
}
.mediaset.type-over .txtbox {
    	margin-top: 150px;
    	width: 31.81818%;
    	min-width: 300px;
    	z-index: 1;
    	background-color: #fff;
    	height: 100%;
    	outline: solid 1px #cccccc;
    	outline-offset: -10px;
    	padding: 35px 15px;
}
.mediaset.type-over .txtbox .title {
    	letter-spacing: 0.2em;
    	line-height: 1.6;
    	text-align: center;
}
.mediaset:not(.img-small) .text {
    	line-height: 2;
}
.mediaset.type-over .btn {
    	margin-left: auto;
    	margin-right: auto;
}
.mediaset:not(.img-small) .btn {
    	width: 100%;
    	max-width: 240px;
    	margin-top: 40px;
}
.mediaset.type-over.img-right .imgbox {
    	-webkit-box-ordinal-group: 2;
    	-ms-flex-order: 1;
    	order: 1;
    	right: 12.72727%;
}
/**/
/*ABOUTここから*/
#about-wrap{
	width:94%;
	margin:0 3% 50px;
}
#about-wrap ul{
	overflow: hidden;
}
#about-wrap ul li{
	margin-top:20px;
	height:150px;
	margin-right:20px;
	float:left;
	background:#FFF;
	border:solid 1px #e6e6e6;
}
#about-wrap ul.column3 li{
	width: 33.33333%;
	width: calc((100% - 40px) / 3);
	width: -webkit-calc((100% - 40px) / 3);
	width: -moz-calc((100% - 40px) / 3);
}
@media all and (-ms-high-contrast:none){
	#about-wrap ul.column3 li{
		width: calc((100% - 41px) / 3);
	}
}

@media all and (-ms-high-contrast:none){
	#about-wrap ul.column4 li{
	width: calc((100% - 61px) / 4);
	}
}
#about-wrap ul.column6 li{
	width: 16.666666%;
	width: calc((100% - 100px)/6);
	width: -webkit-calc((100% - 100px)/6);
	width: -moz-calc((100% - 100px)/6);
}
#about-wrap ul.column6 > li  a {
	cursor: pointer;
    	-webkit-transition: opacity .3s ease-out;
    	transition: opacity .3s ease-out;
    	align-items: center;
    	display: flex;
    	height: 100%;
    	justify-content: center;
    	position: relative;
	text-decoration:none;
	font-size:0.8rem;
	color:#666;
}
#about-wrap ul.column6 li:before{
	font-family: Lato, sans-serif;
    	counter-increment: number;
    	content: counter(number);
	color: #666;
    	font-size: 2rem;
    	line-height: .8;
    	position: absolute;
	margin:10px;
	font-size:16px;
}
#about-wrap ul.column6 li > .active::after {
    	background-image: url(images/about/howto/triangle.png);
   	background-position: center;
   	background-repeat: no-repeat;
    	background-size: cover;
    	bottom: .3em;
    	content: "";
    	height: 3em;
    	position: absolute;
    	right: .3em;
    	width: 3em;
}
/**************///
.materials {

}
 
.materials ul {
	display: flex;
    	justify-content: center;
}
.materials ul li {
	float: left;
	padding:20px;
}
.materials ul li a{
	text-decoration:none;
	text-align:center;
	color:#666666;
}
.materials ul li span{
	margin-top:10px;
	display:block;
}
.ac{
	background:#f6f6f6;

}
/**************/

@media all and (-ms-high-contrast:none){

	#about-wrap ul.column6 li{
		width: calc((100% - 101px) / 6);
	}
}
#about-wrap ul li:last-child {
	margin-right:0;
}
/********************/
.breadcrumb *, .breadcrumb *:after, .breadcrumb *:before {
  	-webkit-box-sizing: border-box;
          box-sizing: border-box;
}
.breadcrumb {
  	overflow: hidden;
  	width: 100%;
	padding: 0;
  	list-style: none;
}
.breadcrumb li {
  	display: inline-block;
  	padding: 0;
  	margin: 0 0 0.5em 0;
}
.breadcrumb a {
  	position: relative;
  	display: inline-block;
  	margin: 0;
  	padding: 0.7em 1em 0.7em 2em;
  	text-decoration: none;
  	color: #ffffff;
  	background-color: #8a8a8a;
}
.breadcrumb li:first-child a {
  	padding-left: 1em;
  	border-radius: 5px 0 0 5px;
}
.breadcrumb a::after,
.breadcrumb a::before {
  	position: absolute;
  	top: 50%;
  	right: -1.5em;
  	margin-top: -1.48em;
  	content: '';
  	border-top: 1.48em solid transparent;
  	border-bottom: 1.48em solid transparent;
  	border-left: 1.5em solid;
  }
.breadcrumb a::after {
  	z-index: 2;
  	border-left-color: #8a8a8a;
}
.breadcrumb a::before {
  	z-index: 1;
  	right: -1.8em;
  	border-left-color: #ffffff;
}
.breadcrumb li:nth-child(2) a       { background:        #949494; }
.breadcrumb li:nth-child(2) a:after { border-left-color: #949494; }
.breadcrumb li:nth-child(3) a       { background:        #bfbfbf; }
.breadcrumb li:nth-child(3) a:after { border-left-color: #bfbfbf; }
.breadcrumb li:nth-child(4) a       { background:        #d4d4d4; }
.breadcrumb li:nth-child(4) a:after { border-left-color: #d4d4d4; }

.breadcrumb li:last-child a {
  	cursor: default;
  	pointer-events: none;
  	color: black;
  	background: #e9e9e9;
  	border-radius: 0 5px 5px 0;
}
.breadcrumb li:last-child a:hover {
  	background: none;
}
.breadcrumb li:last-child a::before,
.breadcrumb li:last-child a::after {
  	content: normal;
}

h3.sub_ttl_h3 {
	padding: 30px 0px 60px 0;
	text-align:center;
	font-family:YuGothic, "Yu Gothic", "Noto Sans JP", sans-serif;
}
h3.sub_ttl_h3:after {
    	margin: 10px auto auto;
    	display: block;
    	content: "";
    	width: 50px;
    	height: 2px;
    	background-color: #030303;
}

.h3set h3:after {
    	margin: 10px auto auto;
    	display: block;
    	content: "";
    	width: 50px;
    	height: 2px;
    	background-color: #19371a;
}
.h3set h3 {
   	font-size: 26px;
   	line-height: 1.2;
   	text-align: center;
	font-family:YuGothic, "Yu Gothic", "Noto Sans JP", sans-serif;
}

/************/
.content_sub,.content_sub_first {
	clear: both;
}
.content_sub::after, .content_sub_first::after {
	content: ".";
	display: block;
	height: 0;
	font-size: 0;
	clear: both;
	visibility: hidden;
}
.content_sub p,.content_sub_first p {
	font-size: 1.25rem;
	/*margin-bottom: 30px;*/
	margin-right: 15px;
	margin-left: 15px;
	margin-top: 10px;
	/*line-height:300%;*/
}
.p_cont_center{
	text-align:center;
	line-height:300%;
	padding:10px;
}
.p_cont_left{
	text-align:left;
	line-height:300%;
	padding:10px;
}
.p_cont{
	margin-bottom: 30px;
	margin-right: 15px;
	margin-left: 15px;
	margin-top: 10px;
	line-height:300%;
}
.p_cont_left{
	text-align:left;
	line-height:300%;
	padding:10px;
}
.moji_minchou{
	font-family: "HG明朝E", "Hiragino Mincho ProN", 游明朝, YuMincho, HG明朝E, "Sawarabi Mincho", "ＭＳ Ｐ明朝", "MS PMincho", serif;
	font-size:20px;
}
img.yohaku{
	margin:10px;
}
img.mawarikomi_left{
	float:left;
	margin:10px 10px;
}
.box_center{
	text-align:center;

}
img.mawarikomi_right{
	float:right;
	margin:10px 10px;
}
img.g_size{
	width:45%;
}
h3.content_sub  {
 	font-size: 26px;
}

h4 {
    	font-size: 18px;
}
h4.midashi_4 {
    	line-height: 30px;
    	font-weight: normal;
    	color: #044760;
    	letter-spacing: 1px;
    	margin-top: 20px;
    	margin-bottom: 20px;
    	padding-top: 10px;
    	padding-right: 10px;
    	padding-bottom: 10px;
    	padding-left: 36px;
    	background-color: #F6F6F6;
    	display: block;
    	position: relative;
    	border-bottom-width: 1px;
    	border-bottom-style: dotted;
    	border-bottom-color: #CCC;
    	clear: both;
}
h4.midashi_4::before {
	display: block;
	width: 2px;
	height: 24px;
	position: absolute;
	content: "";
	top: 13px;
	left: 20px;
	background-color: #65B7DA;
	border-radius: 5px;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
}
/************/
.yokatta{
	clear:both;
	margin-top:38px;
    width: 90%;
    margin: 0 auto;

}
.yokatta_txt{
	font-size:1.4rem;
	float:left;
	padding:15px;
	margin-left:10%;
}
.box18{
    	margin:2em 0;
    	position: relative;
    	padding: 1.25em 1em;
    	border: solid 2px #ffcb8a;
    	border-radius: 3px 0 3px 0;
	margin:0px auto;
	text-align:center;
	font-size:18px;

}
.box18:before,.box18:after
{
    	content: '';
    	position: absolute;
    	width:10px;
    	height: 10px;
    	border: solid 2px #ffcb8a;
    	border-radius: 50%;
}
.box18:after {
    	top:-12px;
    	left:-12px;
}
.box18:before {
    	bottom:-12px;
    	right:-12px;
}
.box18 p {
    	margin: 0; 
    	padding: 0;
}
.bubble08:after{

     	content: '';
     	position: absolute;
     	display: block;
     	z-index: 0;
     	border-style: solid;
     	border-color: #000 transparent;
     	border-width: 25px 25px 0 0;
     	bottom: -25px;
     	left: 50%;
     	margin-left: -14px;
}
.mgn{
	padding-top:20px;
	font-size:1.6rem;
}
.box33{
    	position: relative;
	height:140px;
}
.box33 div{
    	position: absolute;
    	top: 50%;
    	left: 50%;
    	transform: translate(-50%, -50%);
    	-webkit-transform: translate(-50%, -50%);
    	-ms-transform: translate(-50%, -50%);

}
.postmark{
    	position: relative;
    	margin: 0;
	padding: 10px;
	width: 125px;
	height: 125px;
	border: 5px double #430;
	-webkit-border-radius: 50%;
	-moz-border-radius: 50%;
	border-radius: 50%;
	color: #430;
	text-align: center;
	font-size: 22px;
	font-family: 'Bree Serif', serif;
	line-height: 100px;
	-webkit-transform: rotate(-16deg);
	-ms-transform: rotate(-16deg);
	transform: rotate(-16deg);
}
.postmark:before{
    	position: absolute;
    	top: 14%;
    	display: block;
    	padding: 0 0 8px;
    	width: 82%;
    	border-bottom:1px solid #430;
    	content: 'HeartfulLife';
    	font-size: 16px;
    	line-height: 1;
}
.postmark:after{
    	position: absolute;
    	bottom: 16%;
    	display: block;
    	padding: 6px 0 0;
    	width: 82%;
    	border-top: 1px solid #430;
    	content: '生穂建設';
    	font-size: 13px;
    	line-height: 1;
}
.kokomade{
	height:200px;
}
.kokomade_txt{
	text-align:center;
	font-size:23px;
	margin:20px;
}
.boldtop{
    	position: relative;

}
.boldtop::before{
    	content: "";
    	display: block;
    	position: absolute;
    	top: 40px;
    	left: 12px;
    	width: 16px;
    	height: 50px;
    	background: #666;
}
.boldtop::after{
    	content: "";
    	display: block;
    	position: absolute;
    	top: 0;
    	left: 0;
    	width: 0;
    	height: 0;
    	border: 20px solid;
   	border-color: transparent transparent #666 transparent;
}

.arrow3_box{ 
	display: block;
	padding: 0px;
	margin: 0;
}
.arrow3{
  	width: 200px;
	margin: 0 auto;
}
.arrow3::before{
  	content: "";
  	display: block;
  	margin: 0 auto;
  	
  	background: #666;
}
.arrow3::after{
  	content: "";
  	display:block;
  	border-top: 100px solid #666;
  	border-left: 100px solid transparent;
  	border-right: 100px solid transparent;
  	transform-origin: left top;
  	transform: scaleY(.5);
}
.btn10 {
    	background-color: #000;
    	color: #fff !important;
    	margin: 0 0 10px 0;
	padding:10px 30px;
 	text-decoration:none;
}
.btn10:hover {
    	border-bottom: none;
    	box-shadow: none;
	background-color: #e6e6e6;
	color: #000 !important;
}
/*　テープ　枠　2 */
.kakomi-tape2 {
	position: relative;
	width: 60%;
 	margin: 2.5em auto;
 	padding: 35px 30px 20px;
 	color: #770000;/* 文字色 */
 	background-color: #e8ddbd; /*枠背景色*/
 	box-shadow: inset 0 0 40px rgba(204, 186, 136,1), 0 2px 2px #ccc;
}
.kakomi-tape2::before {
 	display: block;
 	position: absolute;
 	content: "";
 	width: 140px;
 	height: 35px;
 	left: 35%;
 	top: -16px;
 	background-color: rgba(204, 186, 136,0.3);/*テープ色*/
 	box-shadow: 0 0 3px rgba(0,0,0,0.1);
 	transform: rotate( -3deg ); /*テープ角度*/
}
.flow_contents_2 {
    	display: flex;
    	flex-wrap: wrap;
    	justify-content: space-around;
    	width: 100%;
    	margin: 0px 0;
    	padding-top: 0px;
	border:solid 0px #000;
}
.flow_item_2 {
    	width: calc(100% / 2 - 30px);
    	margin-bottom: 30px;
    	padding: 50px 10px;
	border:solid 0px #000;
}

.flow_contents {
    	display: flex;
    	flex-wrap: wrap;
    	justify-content: space-around;
    	width: 100%;
    	margin: 0px 0;
    	padding-top: 0px;
	border:solid 0px #000;
}
.flow_item {
    	width: calc(100% / 3 - 30px);
    	margin-bottom: 30px;
    	padding: 50px 10px;
	border:solid 0px #000;
}
.flow_item_ttl{
   	text-align: center;
	font-weight:bold;
	font-size:14px;
}
.f_ttl{
	font-size: 1.3rem;
    	font-weight: bold;
    	margin: 0.2em 0px;
    	color: #e17b03;
    	-webkit-font-feature-settings: "palt";
    	font-feature-settings: "palt";
}
.f_text_ttl{
	font-size: 1.0rem;
    	font-weight: bold;
 	border-bottom: 1px dashed rgba(185,185,185,0.5);
	margin-top:50px;
}
.f_text_ttl_2{
	font-size: 1.0rem;
    	font-weight: bold;
 	border-bottom: 1px dashed rgba(185,185,185,0.5);
}
.flow_2 {
  	border: 0px solid rgb(107,144,219);
}
.flow_2 > li {
  	padding: 30px 10px 30px 10px;
  	clear:both;
	position: relative;
	background: #fff;
	z-index: 0;
}
.flow_2 > li:nth-child(1):after {
	z-index: 999;
    	content: "";
    	width: 0;
    	height: 0;
    	border-style: solid;
    	border-width: 0px;
    	border-color: #f9f9f9 transparent transparent transparent;
    	position: absolute;
    	left: 50%;
    	-webkit-transform: translateX(-50%);
    	transform: translateX(-50%);
    	top: 0;
}
.flow_2 > li:after {
	z-index: 999;
    	content: "";
    	width: 0;
    	height: 0;
    	border-style: solid;
    	border-width: 40px 80px 0 80px;
    	border-color: #f9f9f9 transparent transparent transparent;
    	position: absolute;
    	left: 50%;
    	-webkit-transform: translateX(-50%);
    	transform: translateX(-50%);
    	top: 0;
}
.flow_2 > li:nth-child(2n):after {
	border-width: 40px 80px 0 80px;
  	border-top-color: #f9f9f9;
	z-index:150;
}

.flow_2 > li:nth-child(2n):after {
    border-color: #fff transparent transparent transparent;
}

.flow_2 > li:nth-child(2n) {
    background-color: #f9f9f9;
}
.flow_2 > li{
	width:100%;
	margin: 0 auto;
}

.flow_2 > li.step2 {
  	font-size: 20px;
  	font-weight: 600;
  	color: rgb(107,144,219);
  	-ms-flex-preferred-size: 20%;
  	flex-basis: 20%;
  	margin-right: 1vw;
  	text-align: center;
  	display:block;
}
.flow_2 > li .icon {
  	display: inline-block;
    	color: #fff;
    	background: #000;
    	padding: 0.2em 0.6em;
    	font-size: 1.0rem;
    	border-radius: 0px;
    	font-weight: bold;
    	margin-bottom: 0.3em;
}
.p_haikei{
	color: #010079;
	text-shadow: 0 0 5px white;
	padding: 2.3em 0.5em;
	background: -webkit-repeating-linear-gradient(-45deg, #cce7ff, #cce7ff 3px,#e9f4ff 3px, #e9f4ff 7px);
	background: repeating-linear-gradient(-45deg, #cce7ff, #cce7ff 3px,#e9f4ff 3px, #e9f4ff 7px);
	font-size:18px;
	color:#0f0f0f;
	text-align:center;
	
}


/****流れ*******/
.flow {
  	padding-left: 120px;
  	position: relative;
	padding-top: 2em;
}
.flow::before {
  	content: "";
  	width: 15px;
  	height: 100%;
  	background: #eee;
  	margin-left: -8px;
  	display: block;
  	position: absolute;
  	top: 0;
  	left: 222px;
}
.flow > li {
  	position: relative;
}
.flow > li:not(:last-child) {
  	margin-bottom: 8vh;
}
.flow > li .icon {
  	font-size: 19px;
  	color: #fff;

/*  	background: rgb(107,144,219);
  	background: -moz-linear-gradient(left, rgba(107,144,219,1) 0%, rgba(102,213,233,1) 100%);
  	background: -webkit-linear-gradient(left, rgba(107,144,219,1) 0%,rgba(102,213,233,1) 100%);
  	background: linear-gradient(to right, rgba(107,144,219,1) 0%,rgba(102,213,233,1) 100%);
  	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#6b90db', endColorstr='#66d5e9',GradientType=1 );
*/
	width: 100px;
 	height: 100px;
 	 border-radius: 50%;
  	background: skyblue;/*背景色*/

  	padding: 23px 20px;
  	display: block;
  	position: absolute;
  	top: -40px;
  	left: -45px;
  	z-index: 100;
	text-align:center;
}
.flow > li .icon::after {
  	content: "";
  	border-style: solid;
  	border-width: 5px 0 5px 10px;
  	border-color: transparent transparent transparent #87CEEB;
  	position: absolute;
  	top: 50%;
  	left: 100%;
  	-webkit-transform: translateY(-50%);
  	transform: translateY(-50%);
}
.flow > li dl {
  	padding-left: 170px;
  	position: relative;
}
.flow > li dl::before,
.flow > li dl::after {
  	content: "";
  	display: block;
  	position: absolute;
  	top: 15px;
}
.flow > li dl::before {
  	width: 7px;
  	height: 7px;
  	margin-top: -3px;
  	background: #6b90db;
  	border-radius: 50%;
  	left: 98px;
}
.flow > li dl::after {
  	width: 50px;
  	border-bottom: 1px dashed #999;
  	position: absolute;
  	left: 110px;
}
.flow > li dl dt {
  	font-size: 20px;
  	font-weight: 600;
  	color: rgb(90,90,90);
  	margin-bottom: 1vh;
}

@media screen and (min-width: 1100px)
{
.content_sub {
    	width: 1100px;
    	margin-right: auto;
    	margin-left: auto;
    	padding-top: 50px;
    	padding-bottom: 30px;
}
.content_sub_first {
    	width: 1100px;
    	margin-right: auto;
    	margin-left: auto;
    	padding-top: 0px;
    	padding-bottom: 30px;
}


}

@media screen and (max-width: 1100px){
.content_sub p, .content_sub_first p {
    font-size: 1.0rem;
}
.p-flow_contents__block {
    padding: 30px 20px;

}
.p-flow_contents__block__ico {
    display: flex;
}
.kiken{
	width:100%;

}
.flow {
  	padding-left: 90px;
}

.flow::before {
    left: 192px;
}
ul.listbara{
	margin:0px;
}

.content_sub,.content_sub_first {
    	width: 100%;
    	padding-top: 10px;
    	padding-bottom: 10px;
}

.flow_item{
	width: calc(100% / 2 - 0px);

}
.flow_item_2{
	width: calc(100% / 1 - 0px);
}

.flow_item div.img_center{
	text-align:center;
	}

.section_support {
    margin-top: 40px;
}
}
@media screen and (max-width: 639px){
.p-flow_contents__block,.p-flow_contents__block_last {
	display: block;
	height: 450px;
}
.content_sub p, .content_sub_first p {
    font-size: 0.9rem;
 
}
.flow_item{
	width: calc(100% / 1 - 0px);
	}

}
/********/
.second_title{
	width: 100%;
        overflow: hidden;
	height:350px;
	margin: auto;
	font-family:YuGothic, "Yu Gothic", "Noto Sans JP", sans-serif;
	background:url(../images/orijinal/back.jpg) center;
	background-size: cover;
	background-color: rgba(255, 255, 255, 0.9);
    	background-blend-mode: lighten;
}
.second_title_omakase{
	width: 100%;
        overflow: hidden;
	height:350px;
	margin: auto;
	font-family:YuGothic, "Yu Gothic", "Noto Sans JP", sans-serif;
	background:url(../images/orijinal/omakaseback.jpg) center center;
	background-size: cover;
	background-color: rgba(255, 255, 255, 0.9);
    	background-blend-mode: lighten;
}
.second_title_bunseki{
	width: 100%;
        overflow: hidden;
	height:350px;
	margin: auto;
	font-family:YuGothic, "Yu Gothic", "Noto Sans JP", sans-serif;
	background:url(../images/orijinal/bunseki.jpg) center center;
	background-size: cover;
	background-color: rgba(255, 255, 255, 0.9);
    	background-blend-mode: lighten;
}
.second_title_inner{
	width: 1100px;
    max-width: 70%;
    	height: 250px;
	margin: 0 auto;
}
.second_title_inner h2{
	margin-top:95px;
}
footer ul.f_bn {
	text-align: center;
	display: block;
	padding-top: 20px;
	padding-bottom: 20px;
	background-color: #1DA1F2;

}
footer .f_bn li {
	display: inline;
}
footer .f_bn li a {
	display: inline-block;
	font-size: 14px;
	letter-spacing: 1px;
	padding: 10px;
	text-decoration: none;
	color: #FFF;
	margin-left: 10px;
	font-weight: bold;
	border-radius: 10px;
	-webkit-border-radius: 10px;
	-moz-border-radius: 10px;
	margin-right: 10px;
}

footer .f_bn li a:hover {
	background-color: #e3e3e3;
	color:#3f3f3f;
}

footer .f_bn li a i {
	padding-right: 5px;
	font-size: 200%;
}
footer ul.f_list {
	display: block;
	width: 33.3%;
	float: left;
	padding-bottom: 20px;
	padding-top: 20px;
}

footer ul.f_list li a {
	text-decoration: none;
	color: #FFF;
	display: block;
	padding-top: 2px;
	padding-right: 2px;
	padding-bottom: 2px;
	padding-left: 10px;
}

footer ul.f_list li li a {
	padding-left: 27px;
	position: relative;
	border-radius: 5px;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
	font-size: 14px;
}

footer ul.f_list li a:hover {
	background-color: #0085B2;
}

footer ul.f_list li li a::before {
	content:"a?≫";
	position: absolute;
	top: 2px;
	left: 9px;
}

/*矢印が右に移動して背景がつく*/
.about_btn{
	text-align:center;
	margin:30px 0px;
}

.btnarrow5{
    	/*矢印の基点とするためrelativeを指定*/
	position: relative;
    	/*ボタンの形状*/
	border: 3px solid #0f518a;
    	padding: 8px 80px;
    	display: inline-block;
    	text-align: center;
    	text-decoration: none;
    	color: #0f518a;
    	outline: none;
    	/*アニメーションの指定*/
    	transition: all .2s linear;
	font-weight:bold;
	font-size:18px;
}

.btnarrow5:hover{
	background:#0f518a;
	color:#fff;
	text-decoration:none;
}
/*矢印と下線の形状*/
.btnarrow5::before{
	content:"";
    	/*絶対配置で下線の位置を決める*/
	position: absolute;
	top:50%;
	right:-26px;
    	/*下線の形状*/
	width:40px;
	height:3px;
	background:#0f518a;
    	/*アニメーションの指定*/
    	transition: all .2s linear;
}
.btnarrow5::after{
	content:"";
    	/*絶対配置で矢印の位置を決める*/
	position: absolute;
    	top: 20%;
    	right: -21px;
    	/*矢印の形状*/
	width:3px;
	height:16px;
	background:#0f518a;
    	transform:skewX(45deg);
    	/*アニメーションの指定*/
    	transition: all .2s linear;
}

/*hoverした際の移動*/
.btnarrow5:hover::before{
	right:-30px;
}

.btnarrow5:hover::after{
	right:-25px;
}

/*********/
/*ボタンの背景白**/
.btnarrow6{
    	/*矢印の基点とするためrelativeを指定*/
    	position: relative;
    	/*ボタンの形状*/
    	border: 1px solid #fff;
    	padding: 8px 80px;
    	display: inline-block;
    	text-align: center;
    	text-decoration: none;
    	color: #000;
    	outline: none;
    	/*アニメーションの指定*/
    	transition: all .2s linear;
	background:#fff;
	opacity: 0.9;	 
}
.btnarrow6:hover{
	background:#000;
	color:#fff;
	text-decoration:none;
}

/*矢印と下線の形状*/
.btnarrow6::before{
	content:"";
    /*絶対配置で下線の位置を決める*/
	position: absolute;
	top:50%;
	right:-26px;
    /*下線の形状*/
	width:40px;
	height:1px;
	background:#fff;
    /*アニメーションの指定*/
    	transition: all .2s linear;
}

.btnarrow6::after{
	content:"";
    	/*絶対配置で矢印の位置を決める*/
	position: absolute;
    	top: 20%;
    	right: -21px;
    	/*矢印の形状*/
	width:1px;
	height:12px;
	background:#fff;
    	transform:skewX(45deg);
    /*アニメーションの指定*/
    	transition: all .2s linear;
}

/*hoverした際の移動*/
.btnarrow6:hover::before{
	right:-30px;
}
.btnarrow6:hover::after{
	right:-25px;
}
/****WORKS**/
.contents_2-section {
	background: #efefef;
    	padding: 0em 0 0px 0;
}
.top-works-img {
    	width: 40em;
    	transform: translateY(-11%);
	display: inline-block;
}
.top-works-img img {
   	font-family: 'object-fit: cover;';
    	box-sizing: border-box;
    	-o-object-fit: cover;
    	object-fit: cover;
    	height: auto;
    	max-width: 100%;
    	width: 100%;
    	display: block;
}
.top-works-wrap {
    	max-width: 1100px;
    	margin: 0 auto;
}
.top-works-wrap p{
 	font-size:14px;
}
.top-works-right .fs-title {

}
.top-works-right {
    	width: 36.66666667%;
    	padding: 5em 0 0em 0em;
	float:right;
}
/*******SW工法***********/
/******スーパーウォール******/
.top-sw-wrap p {
    	font-size: 14px;
}
.contents_2-section_sw {
    	background: #fff;
    	padding: 10em 0 3em 0;
	margin-bottom:40px;
}
.top-sw-img {
    	width: 40em;
    	transform: translateY(-11%);
	display: inline-block;
}

.top-sw-img img {
    	font-family: 'object-fit: cover;';
    	box-sizing: border-box;
    	-o-object-fit: cover;
    	object-fit: cover;
    	height: auto;
    	display: block;
	overflow: hidden

}
.top-sw-text {
    	margin-top: 2em;
    	line-height: 2.1428571429;
}
.top-sw-wrap {
    	max-width: 1100px;
    	margin: 0 auto;
}
.top-sw-wrap p{
 	font-size:14px;
}
.top-sw-right .fs-title {

}
.top-sw-right {
    	width: 39%;
    	padding: 0.8em 4em 0em 0em;
	float:left;
}
/************/
/******SW工法*********/
@media screen and (max-width: 1597px) {
.top-works-wrap {
   	padding:0;
 }
}
.fs-title {
    	font-size: 2rem;
    	font-weight: bold;
    	line-height: 1;

    	letter-spacing: .1em;
}
.fs-subtitle {
    	font-size: 1.0rem;
    	font-weight: normal;
    	line-height: 1;
    	margin-top: 1.25em;

}
.top-works-text {
    	margin-top: 2em;
    	line-height: 2.1428571429;
}
/****************/
/*******サポート***********/
.section_support{
	background: #fff;
    	padding: 0em 0 2em 0;
	margin-bottom:20px;
}
.top-support-left {
    	position: relative;
    	width: 50%;
    	height: 26em;
	background:#000;
}
.top-support-right {
    	width: 50%;
   	 height: 26em;
}
.top-support-wrap {
    	height: 26em;
    	margin-top: 0;
}
.jc-space-between {
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
}
.flt {
    	display: -webkit-box;
    	display: -ms-flexbox;
    	float: left;
}
.top-support-left img {
    	height: 100%;
}
.top-support-left .top-support-left-img {
    	height: 100%;
    	width: 100%;
opacity: 0.8;
}
.top-support-left-content .top-support-text {
    	text-align: left;
    	color: #fff;
    	margin-top: 2em;
    	line-height: 2.1428571429;
}
.top-support-left-content {
    	position: absolute;
    	width: 100%;
    	top: 50%;
    	left: 50%;
    	transform: translate(-50%, -50%);
    	z-index: 2;
    	padding: 0 4em;
    	box-sizing: border-box;
}
.top-support-left-content{
    	background-color: transparent;
    	border: 0px solid #fff;
    	display: block;
    	transition: all .3s;
    	margin-top: 1em;
}
.suppot-img img {
    	font-family: 'object-fit: cover;';
    	box-sizing: border-box;
    	-o-object-fit: cover;
    	object-fit: cover;
    	height: 26em;
    	max-width: 100%;
    	width: 100%;
    	display: block;
}
/******************/

/********ABOUT************/
.

.img-responsive {
    	display: block;
    	max-width: 100%;
    	height: auto;
}
.img-responsive {
  @include img-responsive;
}

.top_about_ttl{
	font-size: 2rem;
    	line-height: 1.8;
    	letter-spacing: .1em;
    	text-align: center;
    	white-space: pre-line;

}
ul.top_about{
	text-align: center;
	margin:0px;
	padding:0px;
	clear:both;
}

ul.top_about li{
	list-style:none;
	width:20%;
	float:left;
	padding:8px;
	display: inline;
}
ul.top_about li a:hover{
	display:block;
   	background:#000;
}

.box1 {
    	margin: 0;
    	border: solid 1px #7f7f7f;
    	color:#fff;
	
}
.box1 a{
    	text-decoration:none;
}

.box1 p {
    	margin: 0; 
    	padding: 7% 0px 21% 0;
}
.top-about-works-list__title {
    	font-size: 1.4em;
    	line-height: 1.4285714286;
    	margin-top: 4.3em;
    	text-align: center;
    	white-space: pre-line;
	color: rgb(127, 127, 127);
}

.top-about-works-list__title::before {
    	font-family: Lato, sans-serif;
    	counter-increment: number;
    	content: counter(number);
    	display: block;
 
}
.top-about-works-list__title:hover{
	color:#fff;
}

section:after{
	clear:both;

}
.white-color{
	color:#fff;
}
.txt-center{
	text-align:center;
}
.txt-right{
	text-align:right;
}

ul.top_about li{
	list-style:none;
	width:33.3%;
	}

.top_about_ttl {
    	font-size: 2rem;
}
/********************/
/****COMANY*********/
.main-flow,.main-flow_2 {
    	margin: 0px auto;
    	width: 100%;
}
.main-flow_first {

    	padding: 0px 20px 0px 20px;
	background:url(../images/chousa.jpg) bottom left no-repeat;
	background-size: cover;
	background-color:rgba(255,255,255,0.9);
	background-blend-mode:lighten;
}
.main-flow {

    	padding: 75px 20px 0px 20px;

}
.main-flow_2 {
    	padding: 0px 20px;
    	background: #efefef;

}
.fh5co-heading {
    	margin-bottom: 30px;
}
.inner-block{
 	float:left;
 	display:block;
}
.white-bg {
	float:right;
    	width: 55%;
    	padding: 80px 80px 60px 80px;
    	background: #FAFAFA;
	margin-top:-30%;
	z-index:5;
	background:url(../images/top/genba.jpg);
	background-color: rgba(255, 255, 255, 0.9);
    background-blend-mode: lighten;
}

.ttl {
    	margin-bottom: 50px;
    	font-size: 22px;
    	letter-spacing: .1em;
}
h1, h2, h3, h4, h5, h6, figure {
    	margin: 0px 0 0px 0;
}
/******WORKS 1100*******/
@media screen and (max-width:1100px){
.top-works-img {
    	width: 100%;
}
.top-works-wrap {
   	width: 100%;
} 
.top-works-right {
    	width: 100%;
    	padding: 0em 0 1px 0em;
	float:none;
	text-align:center;
}
.top-works-right h2{
    	text-align: center;
}
.white-bg {
	padding:80px 10px 10px 10px;
    	width: 100%;
}
/***********/
.top-sw-img {
    	width: 100%;
}
.top-sw-wrap {
   	width: 100%;
}
.top-sw-right {
    	width: 100%;
    	padding: 0em 0 1px 0em;
	float:none;
	text-align:center;
}
.top-sw-right h2{
    	text-align: center;
}
/***********/
.top-support-left {
    	position: relative;
    	width: 100%;
    	height: 26em;
}
.top-support-right {
    	width: 100%;
    	height: 100%;
}
.top-support-wrap {
    	height: 100%;
 
}
.inner-block{
 	float:none;
 	display:block;
}
.white-bg {
 	float:none;
    	width: 100%;
    	padding: 80px;
    	background: #fff;
	margin-top:0%;
}
.ttl {
    	margin-bottom: 50px;
    	font-size: 22px;
    	letter-spacing: .1em;
	}
}
.gyoukan{

	line-height:200%;
}
/*media query*/
@media screen and (max-width: 768px) {
.updaInner{
    	margin: 0 auto;
    	width: 95%;
    	box-sizing: border-box;
}
.hover4 {
  	width:95%;
	margin-bottom:40px;
}
.yokonarabi_item, .yokonarabi_2_item {
	width:100%;
}
img.mawarikomi_left, img.mawarikomi_right{
	float:none;
	display: block;
    	margin-left: auto;
    	margin-right: auto;

}
.mediaset.type-over .imgbox img {
    	width: 100%;
}
.mediaset.type-over .imgbox {
    	width: 100%;
    	max-width: 500px;
    	margin: 0 auto 20px !important;
}
.mediaset:not(.img-small) .title {
    	margin-bottom: 15px;
    	font-size: 20px;
}
.mediaset.type-over .imgbox img {
    	max-width: none;
    	height: auto;
}
.mediaset.type-over {
    	display: block;
}
.mediaset.type-over {
    	margin-bottom: 50px;
}
.mediaset {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
}
.mediaset.type-over .txtbox {
    	margin-top: 0px;
    	width: 100%;
 
}
.mediaset.type-over.img-right .imgbox {
    right: 0%;
}

#about-wrap ul.column6 li{
	width: 33.33333%;
	width: calc((100% - 40px) / 3);
	width: -webkit-calc((100% - 40px) / 3);
	width: -moz-calc((100% - 40px) / 3);
	}
#about-wrap ul.column6 li:nth-child(3n){
	margin-right:0;
	}
}
@media screen and (max-width: 768px),@media all and (-ms-high-contrast:none){
	#about-wrap ul.column6 li{
		width: calc((100% - 41px) / 3);
	}
}
@media screen and (max-width: 640px) {
	#about-wrap ul.column4 li{
		float:none;
		width:100%;
	}
	ul.top_about li {

	width: 50%;
	}
.hover4_3retu {
    	margin: 0px 20px 20px 20px;
    	width: 89%;
	}
}

@media screen adn(max-width:640px){

.flow {
  	padding-left: 10px;
  	position: relative;
}
.flow::before {
  	content: "";
  	width: 15px;
  	height: 100%;
  	background: #eee;
  	margin-left: -16px;
  	display: block;
  	position: absolute;
  	top: 0;
  	left: 100px;
}
.flow > li {
  	position: relative;
}
.flow > li:not(:last-child) {
  	margin-bottom: 8vh;
}
.flow > li .icon {
  	font-size: 10px;
  	color: #fff;
  	background: rgb(107,144,219);
  	background: -moz-linear-gradient(left, rgba(107,144,219,1) 0%, rgba(102,213,233,1) 100%);
  	background: -webkit-linear-gradient(left, rgba(107,144,219,1) 0%,rgba(102,213,233,1) 100%);
  	background: linear-gradient(to right, rgba(107,144,219,1) 0%,rgba(102,213,233,1) 100%);
  	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#6b90db', endColorstr='#66d5e9',GradientType=1 );
  	padding: 8px 20px;
  	display: block;
  	position: absolute;
  	top: 0;
  	left: -120px;
  	z-index: 100;
}
.flow > li .icon::after {
  	content: "";
  	border-style: solid;
  	border-width: 5px 0 5px 10px;
  	border-color: transparent transparent transparent #66d5e9;
  	position: absolute;
  	top: 50%;
  	left: 100%;
  	-webkit-transform: translateY(-50%);
  	transform: translateY(-50%);
}
.flow > li dl {
  	padding-left: 10px;
  	position: relative;
}
.flow > li dl::before,
.flow > li dl::after {
  	content: "";
  	display: block;
  	position: absolute;
  	top: 15px;
}
.flow > li dl::before {
  	width: 7px;
  	height: 7px;
  	margin-top: -3px;
  	background: #6b90db;
  	border-radius: 50%;
  	left: -22px;
}
.flow > li dl::after {
  	width: 15px;
  	border-bottom: 1px dashed #999;
  	position: absolute;
  	left: -9px;
}
.flow > li dl dt {
  	font-size: 15px;
  	font-weight: 600;
  	color: rgb(90,90,90);
  	margin-bottom: 1vh;
	}



}
@media screen and (max-width: 480px) {
.flow {
  	padding-left: 38px;
}
.flow::before {
        left: 140px;
    }
#demo-wrap ul.column3 li{
	float:none;
	width:100%;
}
.content_sub h3 {
    	font-size: 16px;
}
.content_sub p {
    	font-size: 12px;
}
.materials ul li {
     	padding: 7px;
}
.materials ul li span{
	font-size:12px;
}
h3.sub_ttl_h3 {
    	padding: 30px 0px 20px 0;
 }
.txt_center {
    	font-size: 16px;
}
.column6 div{
    	font-size: 10px;
}
#about-wrap ul li {
    	height: 110px;
}
.content h3 {
     padding-left: 0px; 

}
.hover4 {
    	width: 88%;

}
div.staff_keireki table {
	font-size:12px;
    	width: 100%;
	margin-top:10px;
}
.msg-box-13 {
	font-size:12px;
}
div.staff_keireki td {
    	padding-left: 10px;
}
.p_cont_center {
    	text-align: left; 
    	padding: 5px;
}
.txt_center {
    	padding: .5em 0.3em;
}
.content_sub p {
    	font-size: 12px;
}

.ttl {
    	font-size: 14px;

}
txt {
    	padding-left: 5px;
   
}
.white-bg {
    	padding: 80px 0 80px 0;
 
}
.txt-right {
	text-align: center;
	font-size:12px;
	margin-top:20px;
}
.top_about_ttl {
    	font-size: 1.0rem;
}
.fs-title {
    	font-size: 1.5rem;
}
.top-works-wrap p, .top-sw-wrap p , .txt p  {
    	font-size: 12px;
	padding:5px;
}
.contents_2-section_sw {
    padding: 1em 0 3em 0;
}
.txt_center {
     margin: 20px 0 20px 0;
}
}
@media screen and (max-width:480px){

.flow > li dl dt {
    font-size: 14px;
    
}
.flow > li dl dd {
    font-size: 14px;
    
}

.flow > li dl {
    padding-left: 130px;

}
.flow > li dl::after {
    width: 15px;
 
}

.flow > li dl::before, .flow > li dl::after {
 
    top: 10px;
}

.setumei_list_2{
  	border-radius: 3px;

}
.content_sub p {
    font-size: 13px;
}
}

