@charset "utf-8";

@font-face {
  font-family: 'check';
  src:  url('/fonts/check.eot?xmqja4');
  src:  url('/fonts/check.eot?xmqja4#iefix') format('embedded-opentype'),
    url('/fonts/check.ttf?xmqja4') format('truetype'),
    url('/fonts/check.woff?xmqja4') format('woff'),
    url('/fonts/check.svg?xmqja4#check') format('svg');
  font-weight: normal;
  font-style: normal;
}
@font-face {
  font-family: 'iconfont';
  src: url('/fonts/iconfont.eot?v=1.2');
  src: url('/fonts/iconfont.eot?v=1.2#iefix') format('embedded-opentype'),
       url('/fonts/iconfont.woff?v=1.2') format('woff'),
       url('/fonts/iconfont.ttf?v=1.2') format('truetype'),
       url('/fonts/iconfont.svg?v=1.2#iconfont') format('svg');
  font-weight: normal;
  font-style: normal;
}

section{
	min-width: 1300px;
}
@media screen and (max-width:860px) {
	section{
		min-width: auto;
	}
}
/*----------------------------slider--------------------------------*/

.slider .slick-list{
	position: relative;
	display: block;
	overflow: hidden;

}
.slider{
	position: relative;
	cursor: pointer;
	width:calc(100% - 30px);
	margin:auto;
}
.slider .slick-track{
	position: relative;
	top: 0;
	left: 0;
	display:-webkit-box;/*--- Androidブラウザ用 ---*/
	display:-ms-flexbox;/*--- IE10 ---*/
	display: -webkit-flex;/*--- safari（PC）用 ---*/
	display: flex;
	justify-content: center;
	align-items:flex-start;
}

.slider .slick-arrow{
	display: block;
	text-indent: -10000px;
	outline:none;
	line-height:1px;
	font-size:1px;
	height: 30px;
	width: 30px;
	cursor: pointer;
	position: absolute;
	top: calc(50% - 15px);
	left:-15px;
	z-index: 1;
	border: none;
}
.slider .slick-next{
	left: auto;
	right:-15px;
}
.slider .slick-arrow:before{
	content: "";
	display: block;
	width: 15px;
	height: 15px;
	position: absolute;
	top: calc(50% - 7px);
	border-top: 3px solid rgba(0,0,0,0.8);
	border-left: 3px solid rgba(0,0,0,0.8);
}
.slider .slick-prev:before{
	transform: rotate(-45deg);
	left: calc(50% - 4px);
}
.slider .slick-next:before{
	transform: rotate(135deg);
	left: calc(50% - 12px);
}

.slider .pointer{
	display: table;
	margin: 20px auto 0;
}
.slider .pointer li{
	display: table-cell;
	padding: 0 5px;
}
.slider .pointer li button{
	display: block;
	text-indent: -10000px;
	outline:none;
	line-height:1px;
	font-size:1px;
	background-color: #233242;
	width: 8px;
	height: 8px;
	border-radius: 100%;
	border: none;
	cursor: pointer;
	transition: 0.3s ease-in-out;
}
.slider .pointer .slick-active button{
	width: 16px;
	height: 16px;
	background-color: #019e97;
}

/*---------------------------------
 service
-----------------------------------*/
#s_service1{
  padding-bottom:100px;
}
#s_service1 h2{
  font-size: calc(0.9em + 0.9vw);
  margin-bottom: 30px;
}
#s_service1 p{
  font-size: 18px;
}
.s_service{
  margin-bottom: 100px;
}
.s_service:last-of-type{
  margin-bottom: 0px;
	padding-bottom: 100px;
}
.s_service .cover_img{
  margin-left: calc(50vw - 750px);
  min-width:1150px;
  margin-bottom: 50px;
}
.s_service .cover_img .i{
  position: relative;
  width:100%;
  height:584px;
  overflow: hidden;
  background-size: cover;
  border-radius: 120px 0 0 30px;
}
#s_service2.s_service .cover_img .i{
  background: url(/assets/images/service/index/c1.jpg) 50% 50% no-repeat;
}
#s_service3.s_service .cover_img .i{
  background: url(/assets/images/service/index/c2.jpg) 50% 50% no-repeat;
}
#s_service4.s_service .cover_img .i{
  background: url(/assets/images/service/index/c3.jpg) 50% 50% no-repeat;
}
.s_service .cover_img .i::before{
  content:"";
  position: absolute;
  display:block;
  top:0;
  left:0;
  width:100%;
  height:100%;
  background: -webkit-gradient(
    linear,
    left top,
    left bottom,
    color-stop(50%, transparent),
    color-stop(75%, rgba(23, 33, 44, 0.8)),
    to(rgba(23, 33, 44, 1))
  );
  z-index: 1;
}
.s_service .cover_img .i .t{
  position: absolute;
  width:100%;
  bottom:75px;
  left:0;
  padding:0 75px;
  z-index: 2;
}
.s_service .cover_img .i .t a{
  position: relative;
  display:block;
  width:100%;
  color:#fff;
}
.s_service .cover_img .i .t .en{
  letter-spacing: 0rem;
  font-weight: 900;
  font-size: calc(1.5em + 1.5vw);
}
.s_service .cover_img .i .t .en span{
  margin-left: 10px;
}
.s_service .cover_img .i .t h2{
  letter-spacing: 0.2rem;
  font-size: calc(0.8em + 0.8vw);
}
.s_service .cover_img .i .t a::before,
.s_service .cover_img .i .t a::after{
  content:"";
  position: absolute;
}
.s_service .cover_img .i .t a::before{
  width:48px;
  height:48px;
  bottom:0px;
  right:0;
  background: #fff;
  border-radius: 50px;
  transition: 0.3s ease-in-out;
}
.s_service .cover_img .i .t a::after{
  bottom:20px;
  right:22px;
  width:7px;
  height:7px;
  border-top: 2px solid #019e97;
  border-right: 2px solid #019e97;
  transform: rotate(45deg);
}
.s_service .cover_img .i .t a:hover{
  color:#02b2aa;
}
.s_service .cover_img .i .t a:hover::before{
  background: #02b2aa;
}
.s_service .cover_img .i .t a:hover::after{
  border-color: #fff;
}
.s_service .p{
  font-size: 18px;
  margin-bottom: 60px;
}
.s_service .elm{
  width:100%;
  justify-content: space-between;
  flex-wrap: wrap;
  margin-bottom: 20px;
}
.s_service .elm article{
  width:47%;
  border-bottom: 1px solid #ebe9e9;
  padding-bottom: 40px;
  margin-bottom: 40px;
}
.s_service .elm article .st{
  width:100%;
  align-items: center;
  margin-bottom: 25px;
}
.s_service .elm article .st i{
  display:block;
  width:55px;
}
.s_service .elm article .st i svg{
  display:block;
  fill:#000;
}
.s_service .elm article .st h4{
  width:calc(100% - 55px);
  padding-left: 25px;
  font-size: 24px;
}
.s_service .elm article .desc{
  font-size: 18px;
}
@media screen and (max-width:1620px) {
  .s_service .cover_img{
    margin-left: 50px;
  }
}
@media screen and (max-width:860px) {
  .s_service .cover_img{
    min-width:auto;
    margin-left: 25px;
  }
  .s_service .cover_img .i{
    height:394px;
  }
  #s_service2.s_service .cover_img .i{
    background: url(/assets/images/service/index/c1_tb.jpg) 50% 50% no-repeat;
  }
  #s_service3.s_service .cover_img .i{
    background: url(/assets/images/service/index/c2_tb.jpg) 50% 50% no-repeat;
  }
  #s_service4.s_service .cover_img .i{
    background: url(/assets/images/service/index/c3_tb.jpg) 50% 50% no-repeat;
  }
  .s_service .cover_img .i .t{
    bottom:30px;
    padding:0 30px;
  }
}
@media screen and (max-width:680px) {
  .s_service .cover_img{
    margin-left: 0px;
  }
  .s_service .elm article{
    width:100%;
    border-bottom: 1px solid #ebe9e9;
    padding-bottom: 30px;
    margin-bottom: 30px;
  }
}
@media screen and (max-width:500px) {
  #s_service1{
    padding-bottom:60px;
  }
  #s_service1 h2 br{
    display:none;
  }
  #s_service1 p{
    font-size: 16px;
  }
  .s_service .cover_img{
    margin-bottom: 30px;
  }
  .s_service .cover_img .i{
    height:294px;
    border-radius: 0px 0 0 0px;
  }
  #s_service2.s_service .cover_img .i{
    background: url(/assets/images/service/index/c1_sp.jpg) 50% 50% no-repeat;
  }
  #s_service3.s_service .cover_img .i{
    background: url(/assets/images/service/index/c2_sp.jpg) 50% 50% no-repeat;
  }
  #s_service4.s_service .cover_img .i{
    background: url(/assets/images/service/index/c3_sp.jpg) 50% 50% no-repeat;
  }
  .s_service .cover_img .i .t{
    bottom:30px;
    padding:0 10px 0 15px;
  }
  .s_service .cover_img .i .t .en{
    line-height: 1.0;
    font-size: calc(1.5em + 1.5vw);
  }
  .s_service .cover_img .i .t .en span{
    display:block;
    margin-left: 0px;
  }
  .s_service .p{
    font-size: 16px;
    margin-bottom: 30px;
  }
  .s_service .elm article .st{
    align-items: flex-start;
    margin-bottom: 15px;
  }
  .s_service .elm article .st i{
    width:35px;
  }
  .s_service .elm article .st h4{
    width:calc(100% - 35px);
    padding-left: 15px;
    font-size: 20px;
  }
  .s_service .elm article .desc{
    font-size: 16px;
  }
}

/*---------------------------------
デジタルマーケティング
-----------------------------------*/
.bgcc{
	width:100%;
	background: #fff;
	padding-top: 80px;
	border-top: 1px solid #dddddd;
}
#s_service1.s_dm1{
  margin-left: calc(50vw - 750px);
  min-width:1250px;
  margin-bottom: 10px;
  position: relative;
	overflow: hidden;
}
#s_service1.s_dm1 .inner{
  justify-content: space-between;
}
#s_service1.s_dm1 .inner .elm_l{
  width:49%;
  padding-right: 50px;
}
#s_service1.s_dm1 .inner .elm_r{
  width: 51%;
  margin-top: -50px;
  padding-left: 25px;
}
#s_service1.s_dm1 .inner .elm_r2{
  width:51%;
	margin-top: -50px;
	padding-left: 25px;
}
#s_service1.s_dm1 .inner .elm_r2 > div{
	position: relative;
  width: 100%;
  height: 0;
  padding: 0 0 65%;
}
#s_service1.s_dm1 .inner .elm_r2 > div span {
  display: block;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  overflow: hidden;
}
#s_service1.s_dm1 .inner .elm_r2 > div span img {
  object-fit: cover;
  object-position: 50% 65%;
  font-family: 'object-fit: cover; object-position: 50% 65%;';
  width: 100%;
  height: 100%;
  max-width: none;
  will-change: transform;
}
#s_service1.s_dm1 .service_slide_i{
  position: relative;
  z-index: 2;
  width:100%;
  max-width:800px;
}
#s_service1.s_dm1 .service_slide_t{
  position: relative;
  z-index: 3;
  overflow: hidden;
  position: relative;
  margin-top: -20px;
}
#s_service1.s_dm1 .service_slide_i .simg{

}
#s_service1.s_dm1 .service_slide_i .simg a{
  display: block;
  position: relative;
}
#s_service1.s_dm1 .service_slide_i .simg a span {
  display: block;
  position: relative;
  width: 100%;
  overflow: hidden;
}
#s_service1.s_dm1 .service_slide_i .simg a span img {
  width: 100%;
    max-height: auto;
    object-fit: cover;
    object-position: 50% 65%;
    font-family: 'object-fit: cover; object-position: 50% 65%;';
    will-change: transform;
    transition: 0.5s
ease-out;
    transform: scale(1);
}
#s_service1.s_dm1 .service_slide_t .en{
  font-weight: 700;
  font-size: 16px;
  font-style: italic;
  line-height: 1.2;
}
#s_service1.s_dm1 .service_slide_t .jp{
  font-weight: 700;
  font-size: 18px;
  line-height: 1.4;
}
#s_service_sms{
	margin-bottom: 100px;
}
#s_service_sms .sms{
  text-align: center;
  font-weight: bold;
  font-size: calc(0.84em + 0.84vw);
}

.sv_inner{
	width:100%;
	align-items: center;
	padding-top: 80px;
}
.sv_inner2{
	width:100%;
	align-items: center;
	padding-top: 80px;
}
.sv_inner .ss_elm_l{
	position: relative;
	width:45%;
	z-index:2;
	margin-top: -80px;
}
.sv_inner .ss_elm_r{
	position: relative;
	width:59%;
	padding:10rem 7rem 10rem 12rem;
	z-index:1;
	background: #f0f2f4;
	margin-left: -4%;
}
.sv_inner2 .ss_elm_l{
	position: relative;
	width:45%;
	z-index:2;
	margin-top: -80px;
	order:2;
}
.sv_inner2 .ss_elm_r{
	position: relative;
	width:59%;
	padding:10rem 12rem 10rem 7rem;
	z-index:1;
	background: #f0f2f4;
	margin-right: -4%;
	order:1;
}
.sv_inner .ss_elm_r h2,
.sv_inner2 .ss_elm_r h2,
#s_dm6 .rv_inner .rv_elm_r h2{
	font-size: calc(0.75em + 0.75vw);
	margin-bottom: 4rem;
}
.sv_inner .ss_elm_r p,
.sv_inner2 .ss_elm_r p,
#s_dm6 .rv_inner .rv_elm_r p{
	font-size: 18px;
}

#s_dm1{
	margin-bottom: 100px;
}
#s_dm2{
	margin-bottom: 140px;
}
#s_dm3{
	padding:100px 0;
	background: #f7f7f7;
}
#s_dm4{
	padding:100px 0;
}
#s_dm4 .p1{
	font-size: 18px;
	margin-bottom: 80px;
}
#s_dm5{
	padding:100px 0 200px;
	overflow: hidden;
}

#s_dm5 .elmnt{
	width:100%;
	flex-wrap: wrap;
	margin-bottom: 40px;
}
#s_dm5 .elmnt .i{
	width:50%;
	padding-right: 30px;
}
#s_dm5 .elmnt .t{
	width:50%;
	padding-left: 30px;
}
#s_dm5 .elmnt .t h3{
	font-size: 24px;
	font-weight: bold;
	margin-bottom: 10px;
}
#s_dm5 .elmnt .t .c{
	font-size: 16px;
	font-weight: bold;
	color:#9d9c9c;
	margin-bottom: 30px;
}
#s_dm5 .elmnt .t .d{
	font-size: 18px;
}
#s_dm5 .hadding1{
  font-size: 24px;
}
#s_dm5 .lig{
	width:100%;
	flex-wrap: wrap;
	padding:20px 0;
	border-top: 1px solid #dddddd;
	border-bottom: 1px solid #dddddd;
	margin-bottom: 60px;
}
#s_dm5 .lig dt{
	width:200px;
}
#s_dm5 .lig dt .en{
	display:block;
	font-weight: bold;
}
#s_dm5 .lig dt .jp{
	font-weight: bold;
}
#s_dm5 .lig dd{
	width:calc(100% - 200px);
}

#s_dm5 .lig2{
	width:100%;
	padding:30px;
	background: #e7f7f5;
	margin-bottom: 60px;
}
#s_dm5 .lig2 .lig_t{
	font-size: 18px;
	font-weight: bold;
	margin-bottom: 20px;
}
#s_dm5 .lig2 .lig_p{
	font-size: 18px;
}
#s_dm5 .service_oth{
	width:100%;
  position: relative;
}
#s_dm5 .service_oth .slick-list {
  overflow: visible;
}
#s_dm5 .service_oth .slick-slide {
    margin-right: 0px;
}

#s_dm5 .service_oth .slick-slide a {
    display: block;
    position: relative;
}
#s_dm5 .service_oth .slick-slide .article_mv_img {
    position: relative;
    width: 100%;
    overflow: hidden;
}
#s_dm5 .service_oth .slick-slide .article_mv_img::before {
    content: "";
    position: absolute;
    display: block;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: -webkit-gradient(linear, left top, left bottom, color-stop(50%, transparent), to(rgba(0, 0, 0, 0.90)));
    z-index: 1;
    transition: 0.5s ease-in-out;
}

#s_dm5 .service_oth .slick-slide a .article_mv_img img {
    max-width: none;
  	width: 100%;
  	max-height: 90vh;
  	object-fit: cover;
  	object-position: 50% 50%;
  	font-family: 'object-fit: cover; object-position: 50% 50%;';
    will-change: transform;
    transition: 0.5s ease-out;
    transform: scale(1);
}
#s_dm5 .service_oth .slick-slide a:hover .article_mv_img img{
	transform: scale(1.07);
}
#s_dm5 .service_oth .slick-slide a .desc {
    position: absolute;
    bottom: 0px;
    width: 100%;
    padding: 15px;
    z-index: 2;
    transition: 0.5s ease-out;
    color: #fff;
}
#s_dm5 .service_oth .slick-slide a .desc .label{
  font-size: 1.4rem;
  margin-bottom: 5px;
  color: #fff;
}
#s_dm5 .service_oth .slick-slide a .desc .title {
    font-size: 1.6rem;
    font-weight: 500;
    color: #fff;
    overflow: hidden;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
}
#s_dm5 .service_oth .slick-arrow{
	display: block;
	text-indent: -10000px;
	outline:none;
	line-height:1px;
	font-size:1px;
	height: 40px;
	width: 30px;
	cursor: pointer;
	position: absolute;
	top:auto;
	bottom: -60px;
	right: 0px;
	left:auto;
	z-index: 1;
	border: none;
}
#s_dm5 .service_oth .slick-arrow:before{
	content: "";
	display: block;
	width: 10px;
	height: 10px;
	position: absolute;
	top: calc(50% - 7px);
	border-top: 1px solid #fff;
	border-left: 1px solid #fff;
  z-index:1;
}
#s_dm5 .service_oth .slick-arrow::after{
  position: absolute;
  content: "";
	display: block;
  width:40px;
  height:40px;
  top:0px;
  background: #233242;
  border-radius: 50px;
  transition: 0.3s ease-in-out;
  z-index:0;
}
#s_dm5 .service_oth .slick-arrow:hover::after{
  background: #3b454f;
}
#s_dm5 .service_oth .slick-prev::before{
	transform: rotate(-45deg);
	left:auto;
	right: 72px;
}
#s_dm5 .service_oth .slick-prev::after{
	transform: rotate(-45deg);
	right: 60px;
}
#s_dm5 .service_oth .slick-next::before{
	transform: rotate(135deg);
  right: 0;
}
#s_dm5 .service_oth .slick-next::after{
	transform: rotate(135deg);
  right: 0px;
}
#s_dm6{
	margin-bottom: 80px;
}
#s_dm6 .rv_inner{
	width:100%;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
}
#s_dm6 .rv_inner .rv_elm_l,
#s_dm6 .rv_inner .rv_elm_r{
	width:47%;
}

@media screen and (max-width:1620px) {
  #s_service1.s_dm1{
    margin-left: 50px;
  }
}
@media screen and (max-width:860px) {
  #s_service1.s_dm1{
    min-width:auto;
    margin-left: 0px;
		padding: 0 25px;
		margin-bottom: 50px;
  }
	#s_service1.s_dm1 .inner{
		flex-wrap: wrap;
	}
	#s_service1.s_dm1 .inner .elm_l{
	  width:100%;
	  padding-right: 0px;
	}
	#s_service1.s_dm1 .inner .elm_r{
	  display:none;
	}
	#s_service1.s_dm1 .inner .elm_r2{
	  width:100%;
		margin-top: 0px;
		padding-left: 0px;
		margin-top: 30px;
	}
	#s_service1.s_dm1 h2 br{
		display:none;
	}
	#s_service_sms{
		margin-bottom: 50px;
	}
	.sv_inner,
	.sv_inner2{
		flex-wrap: wrap;
		padding-top: 0px;
	}
	.sv_inner .ss_elm_l{
		width:100%;
		max-width: 580px;
		margin: 0px auto 0;
	}
	.sv_inner .ss_elm_r{
		width:100%;
		padding:5rem 5rem 5rem 5rem;
		margin-left: 0%;
	}
	.sv_inner2 .ss_elm_l{
		width:100%;
		max-width: 580px;
		margin: 0px auto 0;
		order:1;
	}
	.sv_inner2 .ss_elm_r{
		width:100%;
		padding:5rem 5rem 5rem 5rem;
		margin-right: 0%;
		order:2;
	}
	.sv_inner .ss_elm_r h2,
	.sv_inner2 .ss_elm_r h2,
	#s_dm6 .rv_inner .rv_elm_r h2{
		font-size: calc(0.9em + 0.9vw);
		margin-bottom: 3rem;
	}
	.sv_inner .ss_elm_r h2 br,
	.sv_inner2 .ss_elm_r h2 br{
		display:none;
	}
	#s_dm6 .rv_inner .rv_elm_l,
	#s_dm6 .rv_inner .rv_elm_r{
		width:100%;
	}
	#s_dm6 .rv_inner .rv_elm_l{
		margin-bottom: 30px;
	}
	#s_dm1{
		margin-bottom: 80px;
	}
	#s_dm2{
		margin-bottom: 80px;
	}
	#s_dm3,
	#s_dm4{
		padding:80px 0;
	}
	#s_dm5{
		padding:80px 0 100px;
	}
	#s_dm5 .elmnt .i{
		width:100%;
		max-width:680px;
		padding-right: 0px;
		margin:0 auto 40px;
	}
	#s_dm5 .elmnt .t{
		width:100%;
		padding-left: 0px;
	}
	#s_dm6{
		margin-bottom: 80px;
	}
}
@media screen and (max-width:680px) {
  #s_service_sms .sms{
	  text-align: left;
	}
	#s_service_sms .sms .br{
		display:none;
	}
	#s_dm4 .p1{
		font-size: 16px;
		margin-bottom: 50px;
	}
		#s_service1.s_dm1 .inner .elm_r2 > div{
			position: relative;
		  width: 100%;
		  height: 0;
		  padding: 0 0 55%;
		}
		#s_service1.s_dm1 .inner .elm_r2 > div span img {
		  object-fit: cover;
		  object-position: 50% 55%;
		  font-family: 'object-fit: cover; object-position: 50% 55%;';
		  width: 100%;
		  height: 100%;
		  max-width: none;
		  will-change: transform;
		}
}
@media screen and (max-width:500px) {
  #s_service1.s_dm1{
    padding:0 15px;
  }
	#s_dm1 .w,
	#s_dm2 .w{
		padding:0 0px;
	}
	.sv_inner .ss_elm_l p,
	.sv_inner2 .ss_elm_l p,
	#s_dm6 .rv_inner .rv_elm_r p{
		font-size: 14px;
	}
	.sv_inner .ss_elm_r,
	.sv_inner2 .ss_elm_r{
		width:100%;
		padding:4rem 2rem;
	}
	.sv_inner .ss_elm_r p,
	.sv_inner2 .ss_elm_r p{
		font-size: 16px;
	}
	#s_dm5{
		padding:60px 0 120px;
	}
	#s_dm5 .elmnt .t h3{
		font-size: 20px;
	}
	#s_dm5 .elmnt .t .c{
		font-size: 14px;
		margin-bottom: 20px;
	}
	#s_dm5 .elmnt .t .d{
		font-size: 16px;
	}
	#s_dm5 .hadding1{
	  font-size: 22px;
	}
	#s_dm5 .lig{
		margin-bottom: 40px;
	}
	#s_dm5 .lig2{
		padding:15px;
		margin-bottom: 40px;
	}
	#s_dm5 .lig2 .lig_t{
		font-size: 18px;
		margin-bottom: 15px;
	}
	#s_dm5 .lig2 .lig_p{
		font-size: 16px;
	}
	#s_dm5 .lig dt{
		width:100%;
	}
	#s_dm5 .lig dt .en{
		display:none;
	}
	#s_dm5 .lig dt .jp{
		font-weight: bold;
	}
	#s_dm5 .lig dd{
		width:100%;
	}
}

/* ベン図コンテナ */
.venn-diagram {
  position: relative;
  width: 100%;
	max-width: 1200px;
  margin: 0 auto;
  height: 600px;
  margin-bottom: 100px;
  display: flex;
  align-items: center;
  justify-content: center;
}

/* 円の基本スタイル */
.circle {
  position: absolute;
  width: 350px;
  height: 350px;
  border-radius: 50%;
  border: 1px solid #ddd;
  display: flex;
  align-items: center;
  justify-content: center;
}

/* 回転アニメーション（2本の線） */
.circle::before {
  content: "";
  position: absolute;
  z-index: 1;
  width: 380px;
  height: 380px;
  top: -15px;
  left: -15px;
  border: 1px solid transparent;
  border-top-color: #9fcecc;
  border-radius: 50%;
  animation: spin 2s linear infinite;
}

.circle::after {
  content: "";
  position: absolute;
  width: 380px;
  height: 380px;
  z-index: 1;
  top: -15px;
  left: -15px;
  border: 1px solid transparent;
  border-top-color: #9fcecc;
  border-radius: 50%;
  animation: spin 3s linear infinite;
}

@keyframes spin {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}

/* 3つの円をベン図のように配置 */
.strategy-circle {
  top: 50px;
  left: 50%;
  transform: translateX(-50%);
  background-color: rgba(1, 158, 151, 0.3);
  z-index: 3;
}

.marketing-circle {
  bottom: 50px;
  left: 150px;
  background-color: rgba(1, 158, 151, 0.2);
  z-index: 2;
}

.development-circle {
  bottom: 50px;
  right: 150px;
  background-color: rgba(1, 158, 151, 0.1);
  z-index: 1;
}

.circle-content {
  text-align: center;
  padding: 20px;
  z-index: 2;
  position: relative;
}

.circle-content h3 {
  font-size: 1.8rem;
  font-weight: 700;
  color: #333;
  line-height: 1.3;
}

/* サービス項目 */
.service-item {
  position: absolute;
  display: flex;
  align-items: center;
  z-index: 10;
}

.service-line {
  width: 50px;
  height: 1px;
  position: relative;
	background-color: #9fcecc;
}

.service-line::after {
  content: "";
  position: absolute;
  right: -3px;
  top: -2px;
  width: 5px;
  height: 5px;
  border-radius: 50%;
	background-color: #9fcecc;
}

.service-text {
  margin-left: 15px;
  font-size: 1.2rem;
  color: #555;
  white-space: nowrap;
  background-color: rgba(255, 255, 255, 0.95);
  padding: 6px 12px;
  border-radius: 15px;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
}

/* 戦略・コンサルティングのサービス項目配置 */
.strategy-circle .item-1 {
  top: -20px;
  left: -150px;
}

.strategy-circle .item-2 {
  top: 20px;
  right: -190px;
}

.strategy-circle .item-3 {
  top: 70px;
  left: -220px;
}

/* マーケティングのサービス項目配置 */
.marketing-circle .item-1 {
  bottom: 150px;
  left: -200px;
}

.marketing-circle .item-2 {
  bottom: 10px;
  left: -250px;
}

.marketing-circle .item-3 {
  top: 50px;
  left: -180px;
}

/* 制作・開発のサービス項目配置 */
.development-circle .item-1 {
  bottom: 0px;
  right: -150px;
}

.development-circle .item-2 {
  top: 170px;
  right: -180px;
}

.development-circle .item-3 {
  top: 10px;
  right: -140px;
}


@media (max-width: 1024px) {
  .venn-diagram {
		max-width: 980px;
    height: 500px;
  }

  .circle {
    width: 300px;
    height: 300px;
  }

  .circle::before,
  .circle::after {
    width: 330px;
    height: 330px;
    top: -15px;
    left: -15px;
  }

  .service-text {
    font-size: 1.2rem;
    padding: 5px 10px;
  }
}
@media screen and (max-width:860px) {
	.venn-diagram{
		display:none;
	}
}
@media (max-width: 768px) {

}
/*---------------------------------
会社案内
-----------------------------------*/
#s_company1.s_dm1{
	width:100%;
  margin-bottom: 100px;
  position: relative;
}
#s_company1.s_dm1 .w{
	width:100%;
	flex-wrap: wrap;
  justify-content: space-between;
}
#s_company1.s_dm1 .elm_l{
  width:53%;
  padding-right: 25px;
}
#s_company1.s_dm1 .elm_r{
  width:47%;
	margin-top: -50px;
	margin-right: -50px;
	padding-left: 25px;
}
#s_company1.s_dm1 .elm_r > div{
	position: relative;
  width: 100%;
  height: 0;
  padding: 0 0 65%;
}
#s_company1.s_dm1 .elm_r > div span {
  display: block;
  width: 100%;
  height: 460px;
  position: absolute;
  top: 0;
  left: 0;
  overflow: hidden;
}
#s_company1.s_dm1 .elm_r > div span img {
  object-fit: cover;
  object-position: 50% 65%;
  font-family: 'object-fit: cover; object-position: 50% 65%;';
  width: 100%;
  height: 100%;
  max-width: none;
  will-change: transform;
}
#s_company1.s_dm1 h2{
  font-size: calc(0.9em + 0.9vw);
  margin-bottom: 30px;
}
#s_company1.s_dm1 p{
  font-size: 18px;
}
#s_company2{
	padding:100px 0 120px;
	background: #f7f7f7;
}
#s_company2 .outline{
	justify-content: space-between;
	width:100%;
	flex-wrap: wrap;
}
#s_company2 .outline > div{
  width:48%;
}
#s_company2 .outline > div dl{
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  width:100%;
  padding:13px 0;
  align-items: center;
	flex-wrap: wrap;
  border-bottom: 1px solid #eaeaea;
}
#s_company2 .outline > div dt{
  width:150px;
}
#s_company2 .outline > div dd{
  width:calc(100% - 150px);
}
#s_company2 .outline > div dd a{
  color:#1fbc99;
}
#s_company2 .outline > div dd a:hover{
  filter:alpha(opacity=80);-moz-opacity: 0.8;opacity: 0.8;
}
#s_company3{
	padding:100px 0 100px;
}
#s_company3 .inner{
	justify-content: space-between;
	width:100%;
	flex-wrap: wrap;
}
#s_company3 .inner .elm_l{
	width:46%;
	font-size: 18px;
}
#s_company3 .inner .elm_r{
	width:50%;
}
#s_company3 .inner .elm_l .add{
	margin-bottom: 30px;
}
#s_company3 .inner .elm_l ul{
	margin-bottom: 20px;
}
#s_company3 .inner .elm_l ul li{
	position: relative;
	padding-left:15px;
}
#s_company3 .inner .elm_l ul li::before{
	position: absolute;
	content:"";
	top:16px;
	left:0;
	width:5px;
	height:5px;
	background: #1ebc99;
	border-radius: 50px;
}
#s_company4{
	padding:100px 0 40px;
}
#s_company4 .inner{
	width:100%;
	flex-wrap: wrap;
}
#s_company4 .inner article{
	width:32%;
	margin:0 2% 60px 0;
}
#s_company4 .inner article:nth-of-type(3n+3){
	margin-right: 0%;
}
#s_company4 .inner article ul{
	margin-left: 33px;
}
#s_company4 .inner article ul li{
	position: relative;
	font-size: 16px;
	padding-left:28px;
}
#s_company4 .inner article ul li::before,
#s_company4 .inner article ul li::after{
  content:"";
  position: absolute;
  transition: 0.3s ease-in-out;
}
#s_company4 .inner article ul li::before{
  width:18px;
  height:18px;
  top:7px;
  left:0;
  background: #fff;
  border: 1px solid #000;
  border-radius: 50px;
}
#s_company4 .inner article ul li::after{
  top:14px;
  left:7px;
  width:4px;
  height:4px;
  border-top: 1px solid #000;
  border-right: 1px solid #000;
  transform: rotate(45deg);
}
#s_companynav{
	padding:0 0 100px;
}
#s_companynav .inner{
	width:100%;
	flex-wrap: wrap;
}
#s_companynav .inner > div{
	width:50%;
}
#s_companynav .inner > div a{
	position: relative;
	display:block;
	width:100%;
	padding:70px 15px 70px 90px;
	background: #f7f7f7;
	transition: 0.3s ease-in-out;
	border: 1px solid #f7f7f7;
}
#s_companynav .inner > div a .en{
	font-size: 22px;
	font-weight: bold;
	font-style: italic;
	color:#1ebc9b;
}
#s_companynav .inner > div a .jp{
	font-size: 18px;
	font-weight: bold;
	color:#000;
}
#s_companynav .inner > div:nth-of-type(2) a{
	text-align: right;
	padding:70px 90px 70px 15px;
}
#s_companynav .inner > div a::before{
	content:"";
  position: absolute;
	top:calc(50% - 1px);
  width:9px;
  height:9px;
  border-top: 2px solid #000;
  border-right: 2px solid #000;
	transition: 0.3s ease-in-out;
}
#s_companynav .inner > div:nth-of-type(1) a::before{
	left:30px;
	transform: rotate(225deg);
}
#s_companynav .inner > div:nth-of-type(2) a::before{
	right:30px;
	transform: rotate(45deg);
}
#s_companynav .inner > div a:hover{
	background: #fff;
	border: 1px solid #dfdfdf;
}
#s_companynav .inner > div:nth-of-type(1) a:hover::before{
	left:20px;
}
#s_companynav .inner > div:nth-of-type(2) a:hover::before{
	right:20px;
}
@media screen and (max-width:860px) {
  #s_company1.s_dm1{
		margin-bottom: 40px;
  }
	#s_company1.s_dm1 .elm_l{
	  width:100%;
	  padding-right: 0px;
		margin-bottom: 40px;
	}
	#s_company1.s_dm1 .elm_r{
	  width:100%;
		margin-top: 0px;
		margin-right: 0px;
		padding-left: 0px;
	}
	#s_company1.s_dm1 .elm_r > div span {
	  height: 100%;
	}
	#s_company1.s_dm1 .elm_r > div{
	  padding: 0 0 55%;
	}
	#s_company1.s_dm1 .elm_r > div span img {
	  object-position: 50% 55%;
	  font-family: 'object-fit: cover; object-position: 50% 55%;';
	}
	#s_company1.s_dm1 h2{
		font-size: calc(0.9em + 0.9vw);
		margin-bottom: 3rem;
	}
	#s_company1.s_dm1 h2 br{
		display:none;
	}
	#s_company2,
	#s_company3{
		padding:80px 0 80px;
	}
	#s_company4{
		padding:80px 0 40px;
	}
	#s_company2 .outline > div{
	  width:100%;
	}
	#s_company3 .inner .elm_l{
		width:100%;
		font-size: 18px;
		margin-bottom: 40px;
	}
	#s_company3 .inner .elm_r{
		width:100%;
	}
	#s_company4 .inner article{
		width:49%;
		margin:0 2% 40px 0;
	}
	#s_company4 .inner article:nth-of-type(3n+3){
		margin-right: 2%;
	}
	#s_company4 .inner article:nth-of-type(2n+2){
		margin-right: 0%;
	}
}
@media screen and (max-width:500px) {
	#s_company1.s_dm1 p{
		font-size: 16px;
	}
	#s_company2,
	#s_company3{
		padding:60px 0 60px;
	}
	#s_company4{
		padding:60px 0 20px;
	}
	#s_company2 .outline > div dt{
	 width:100%;
	 font-weight: bold;
	 padding-bottom: 3px;
	}
	#s_company2 .outline > div dd{
	  width:100%;
	}
	#s_company4 .inner article{
		width:100%;
		margin:0 0% 30px 0;
	}
	#s_company4 .inner article:nth-of-type(3n+3){
		margin-right: 0%;
	}
	#s_companynav .inner > div{
		width:100%;
	}
	#s_companynav .inner > div a{
		position: relative;
		display:block;
		width:100%;
		padding:30px 15px 30px 80px;
		background: #f7f7f7;
		transition: 0.3s ease-in-out;
		border: 1px solid #dfdfdf;
	}
	#s_companynav .inner > div:nth-of-type(2) a{
		text-align: right;
		padding:30px 80px 30px 15px;
		margin-top: -1px;
	}
}
/*---------------------------------
ご支援の流れ
-----------------------------------*/
#s_flow2{
	padding:0 0 100px;
}
.flow_step .j{
	width:100%;
	position: relative;
	padding:70px 0;
	border-bottom: 1px solid #dddddd;
}
.flow_step .j::before{
	content:"";
	position: absolute;
	top:0;
	left:77px;
	width:5px;
	height:100%;
	background: #019e95;
	z-index:0;
}
.flow_step .j.jl::before{
	height:60px;
}
.flow_step .j .step{
	position: absolute;
	width:160px;
	top:35px;
	left:0;
	z-index:1;
}
.flow_step .j .step .c{
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	justify-content: center;
	align-items: center;
	width:160px;
	height:160px;
	background: rgba(1, 158, 151, 0.1);
	padding:10px;
	border-radius: 100px;
}
.flow_step .j .step .c > div{
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	justify-content: center;
	align-items: center;
	width:140px;
	height:140px;
	background: rgba(1, 158, 151, 0.2);
	padding:10px;
	border-radius: 100px;
}
.flow_step .j .step .c > div span{
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	justify-content: center;
	align-items: center;
	width:120px;
	height:120px;
	background: rgba(1, 158, 151, 1);
	border-radius: 100px;
	color:#fff;
	font-weight: 700;
	font-style: italic;
	font-size: 22px;
}
.flow_step .j .step .c > div span i{
	font-size: 48px;
	font-style: italic;
}
.flow_step .j .step .free{
	position: absolute;
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	justify-content: center;
	align-items: center;
	width:64px;
	height:64px;
	top:-10px;
	left:0;
	font-size: 20px;
	font-weight: bold;
	letter-spacing: 0rem;
	background: #edae00;
	border-radius: 100px;
}
.flow_step .j .inner{
	margin-left: 160px;
	padding-top: 20px;
	padding-left: 25px;
}
.flow_step .j .inner h3{
	font-size: 28px;
	margin-bottom: 80px;
}
.flow_step .j .inner .p1{
	font-size: 18px;
	margin-bottom: 40px;
}
.flow_step .j .inner .blink{
	text-align: left;
	font-weight: bold;
	font-size: 18px;
	margin-bottom: 40px;
}
.flow_step .j .inner .p2{
	font-size: 18px;
}
.flow_step .j .inner .p3{
	font-size: 16px;
	color:#4b4b4b;
}
.flow_step .capbox{
	position: relative;
	width:100%;
	background: #f4f8f7;
	border-radius: 5px;
	padding:20px;
}
.flow_step .capbox ul li{
	position: relative;
	font-size: 18px;
	padding-left:25px;
	margin-bottom: 10px;
}
.flow_step .capbox ul li::before{
	position: absolute;
	content:"";
	width:10px;
	height:10px;
	background: #019e95;
	border-radius: 100px;
	top:13px;
	left:0;
}
.flow_step .capbox ul li:last-of-type{
	margin-bottom: 0px;
}
.flow_step .capbox .label{
	position: absolute;
	top:-20px;
	left:20px;
	width:100%;
}
.flow_step .capbox .label span{
	font-size: 18px;
	font-weight: bold;
	color:#fff;
	padding:5px 25px;
	background: #019e95;
	border-radius: 5px;
}
.flow_step .capbox .p2{
	padding-top: 20px;
}
.flow_step .capbox.capmb1{
	margin-bottom: 60px;
}
.flow_step .capbox.capmb2{
	margin-bottom: 40px;
}
#s_flow3{
	padding:40px 0 100px;
}
#s_flow3 .flowdl{
	width:100%;
	flex-wrap: wrap;
	align-items: center;
}
#s_flow3 .flowdl dt{
	width:46%;
	padding-right: 15px;
}
#s_flow3 .flowdl dd{
	width:54%;
}
#s_flow3 .flowdl dt .hadding1{
	font-size: 32px;
	line-height: 1.4;
}
#s_flow3 .flowdl dt p{
	font-size: 18px;
}
#s_flow3 .flowdl dd img{
	display:block;
	width:100%;
	max-width:1600px;
	margin:0 auto;
}
@media screen and (max-width:860px) {
	#s_flow3 .flowdl dt{
		width:100%;
		padding-right: 0px;
		margin-bottom: 30px;
	}
	#s_flow3 .flowdl dd{
		width:100%;
	}
	#s_flow2{
		padding:0 0 80px;
	}
	#s_flow3{
		padding:40px 0 80px;
	}
}
@media screen and (max-width:500px) {
	#s_flow2{
		padding:0 0 60px;
	}
	#s_flow3{
		padding:20px 0 60px;
	}
	.flow_step .j{
		padding:80px 0 40px;
	}
	.flow_step .j::before{
		left:47px;
		width:5px;
	}
	.flow_step .j.jl::before{
		height:30px;
	}
	.flow_step .j .step{
		width:100px;
		top:0px;
	}
	.flow_step .j .step .c{
		width:100px;
		height:100px;
		padding:5px;
	}
	.flow_step .j .step .c > div{
		width:90px;
		height:90px;
		padding:5px;
	}
	.flow_step .j .step .c > div span{
		width:80px;
		height:80px;
		font-size: 16px;
	}
	.flow_step .j .step .c > div span i{
		font-size: 24px;
	}
	.flow_step .j .step .free{
		width:50px;
		height:50px;
		top:-10px;
		left:-10px;
		font-size: 16px;
	}
	.flow_step .j .inner{
		margin-left: 50px;
		padding-top: 20px;
		padding-left: 25px;
	}
	.flow_step .j .inner h3{
		font-size: 22px;
		margin-bottom: 40px;
	}
	.flow_step .j .inner .p1{
		font-size: 16px;
		margin-bottom: 30px;
	}
	.flow_step .j .inner .blink{
		font-size: 16px;
		margin-bottom: 30px;
	}
	.flow_step .j .inner .blink a::after{
	  top:calc(50% - 5px);
	  right:18px;
	}
	.flow_step .j .inner .p2{
		font-size: 16px;
	}
	.flow_step .j .inner .p3{
		font-size: 14px;
	}
	.flow_step .capbox{
		padding:15px;
	}
	.flow_step .capbox ul li{
		font-size: 16px;
		padding-left:25px;
	}
	.flow_step .capbox ul li::before{
		top:11px;
	}
	#s_flow3 .flowdl dt .hadding1{
		font-size: 26px;
	}
	#s_flow3 .flowdl dt p{
		font-size: 16px;
	}
}
@media screen and (max-width:320px) {
  .flow_step .j .inner .blink a{
		padding-right: 45px;
	}
	.flow_step .j .inner .blink a::before{
		width:40px;
		height:40px;
		top:-9px;
	}
}
/*---------------------------------
代表メッセージ
-----------------------------------*/
#s_message{
	margin-bottom: 100px;
}
#s_message .w{
	overflow: hidden;
}
#s_message .elm_r{
	float: right;
	width:40%;
	margin:0 0 5rem 8rem;
}
#s_message .elm_r > div{
  position: relative;
  width: 100%;
  height: 550px;
	overflow: hidden;
	border-radius: 80px 0 80px 0;
}
#s_message .elm_r > div span {
  display: block;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  overflow: hidden;
}
#s_message .elm_r > div img {
  object-fit: cover;
  object-position: 50% 50%;
  font-family: 'object-fit: cover; object-position: 50% 50%;';
  width: 100%;
  height: 100%;
  max-width: none;
}
#s_message h2{
	font-size: 28px;
	letter-spacing: 0.2rem;
	margin-bottom: 50px;
}
#s_message p {
	font-size: var(--base-p-font-size-18);
  margin-bottom: var(--base-p-margin-bottom-40);
}
@media screen and (max-width:860px) {
	#s_message .w{
		overflow: inherit;
	}
  #s_message .elm_r{
		float: none;
		width:calc(100% + 50px);
		margin:0 0 5rem -25px;
	}
	#s_message .elm_r > div{
	  position: relative;
	  width: 100%;
	  height: 550px;
		overflow: hidden;
		border-radius: 0px 0 0px 0;
	}
}
@media screen and (max-width:500px) {
  #s_message .elm_r{
		float: none;
		width:calc(100% + 30px);
		margin:0 0 5rem -15px;
	}
	#s_message .elm_r > div{
	  height: 280px;
	}
	#s_message h2{
		font-size: 24px;
		margin-bottom: 40px;
	}
}

/*---------------------------------
販促企画・アイデア
-----------------------------------*/
#s_makeaplan_list{
	padding:70px 0 100px;
}
#s_makeaplan_list .list_article3{
	margin-bottom: 60px;
}
.makeaplan-index .makeplanh2,
.blog-index .makeplanh2{
	position: relative;
  padding: 15px 0 0 75px;
	font-size: 26px;
	margin-bottom: 30px;
}
.makeaplan-index .makeplanh2::before,
.blog-index .makeplanh2::before {
    position: absolute;
    content: "";
    top: 18px;
    left: 0;
    width: 49px;
    height: 37px;
    background: url(/assets/images/cmn/p1.svg) 50% 0% no-repeat;
    background-size: auto;
}
.makeaplan-index #key-title-box{
	font-size: 16px;
	margin-bottom: 50px;
}
@media screen and (max-width:680px) {
	#s_makeaplan_list{
		padding:50px 0 80px;
	}
	.makeaplan-index .makeplanh2,
	.blog-index .makeplanh2{
	  padding: 15px 0 0 52px;
		font-size: 22px;
		margin-bottom: 30px;
	}
	.makeaplan-index .makeplanh2::before,
	.blog-index .makeplanh2::before {
	    top: 18px;
	    width: 40px;
	    height: 28px;
	}
	.makeaplan-index #key-title-box{
		font-size: 14px;
		margin-bottom: 30px;
	}
}
@media screen and (max-width:480px) {
	.makeaplan-index .makeplanh2,
	.blog-index .makeplanh2{
	  padding: 15px 0 0 42px;
		font-size: 18px;
		margin-bottom: 20px;
	}
	.makeaplan-index .makeplanh2::before,
	.blog-index .makeplanh2::before {
	    top: 18px;
	    width: 30px;
	    height: 22px;
	}
}
/* ------------- */

.makeaplan_shingle .hadding3{
  position: relative;
  width:calc(100% + 60px);
  padding:23px 10px 23px 30px;
  border-bottom: 1px solid #dbdad6;
  border-top: 1px solid #dbdad6;
  font-size: 2.4rem;
  font-weight: 600;
  letter-spacing: 0.2rem;
  line-height: 1.6;
  text-align: left;
  margin-bottom: 0px;
  box-sizing: border-box;
	margin-left: -30px;
}
.makeaplan_shingle .hadding3::before{
  content:"";
  position: absolute;
  bottom:0px;
  left:-1px;
  width:4px;
  height:100%;
  background: #1fbc99;
}
.makeaplan_shingle .hadding3::after{
  display:none;
}
.makeaplan_shingle .entry-content .text-desc{
	padding:50px 0px;
	line-height: 2.0;
	letter-spacing: 0.2rem;
}
/*-----*/
.makeaplan_shingle .entry-content .had-line1{
  padding:5px 0 5px 0px;
  font-size: 2.2rem;
  line-height: 2.0;
  font-weight: 600;
  margin: 50px 0 40px;
  position: relative;
  clear: both;
}
@media screen and (max-width: 860px){
	.makeaplan_shingle .hadding3{
		width:calc(100% + 60px);
  }
}
@media screen and (max-width: 800px){
	.entry-content h1{
		font-size: 3vw;
	}
	.makeaplan_shingle .entry-content .text-desc{
		padding:50px 0px;
		font-size: 2.1vw;
		letter-spacing: 0.2rem;
	}
}

@media screen and (max-width: 680px){
  .makeaplan_shingle .hadding3{
		width:calc(100% + 30px);
    padding:23px 10px 23px 15px;
    font-size: 18px;
		margin-left: -15px;
  }
  .makeaplan_shingle .entry-content .had-line1{
    font-size: 16px;
    line-height: 1.8;
    margin: 30px 0 20px;
  }
  .makeaplan_shingle .entry-content .text-desc{
		padding:20px 0px 30px;
		line-height: 1.8;
		font-size: 14px;
	}

}

.makeaplan_shingle .text-desc > h3{
	margin-top: 0px;
}
/* ---------- */

.makeaplan_shingle .entry-content .entry-cta{
	position: relative;
	border-top: 1px solid #dbdad6;
	border-bottom: 1px solid #dbdad6;
	padding:50px 20px;
	background: #f5f7f8;
}
.makeaplan_shingle .entry-content .entry-cta::before{
	content:"";
	position: absolute;
	top:1px;
	left:0;
	width:100%;
	height:1px;
	background: #fff;
}

.makeaplan_shingle .entry-content .entry-cta_bottom{
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	width:100%;
	flex-wrap: wrap;
	justify-content: center;
}
.makeaplan_shingle .entry-content .entry-cta_bottom li{
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	flex-direction: column;
	width:50%;
	padding:0 20px;
}
.makeaplan_shingle .entry-content .entry-cta_bottom li p{
	font-size: 1.8rem;
	font-weight: 600;
	text-align: center;
	margin-bottom: 15px;
	line-height: 1.8;
}
.makeaplan_shingle .entry-content .entry-cta_bottom li:nth-of-type(2) p{
	padding-top: 15px;
}
.makeaplan_shingle .entry-content .entry-cta_bottom li a{
	margin-top: auto;
}


/* -----entry-object-sticked----- */
#entry-object-sticked{
  width:100%;
}

.rside_sidebox{
	position: relative;
	padding:20px 0;
	border-top: 1px solid #dbdad6;
}
.rside_sidebox::before{
	content:"";
	position: absolute;
	top:1px;
	left:0;
	width:100%;
	height:1px;
	background: #ffffff;
}
.rside_sidebox h4{
	font-size: 1.4rem;
	color:#999999;
	margin-bottom: 10px;
}

.mokuji_list li{
	position: relative;
	width:100%;
	padding:2px 0;
	padding-left: 15px;
}
.mokuji_list li::before{
	content:"";
	position: absolute;
	left:0;
	top:calc(50% - 3px);
	width:6px;
	height:6px;
	background: #1fbc99;
	border-radius: 50px;
}
.mokuji_list li a{
	display:block;
	color:#000;
	font-size: 1.6rem;
}
.mokuji_list li a:hover{
	color:#1fbc99;
}
/* ---------- */

.rside_category .category_list{
	width:100%;
}
.rside_category .category_list li{
	display:inline-block;
	margin-bottom: 3px;
  margin-right: 3px;
}
.rside_category .category_list li a{
	display:block;
	font-size: 1.3rem;
	padding:3px 10px;
	color:#fff;
	background: #1fbc99;
}
.rside_category .category_list li a:hover{
	background: #24cda7;
}
/* ---------- */
.rside_tag{
	width:100%;
}
.rside_tag .tag_list li{
	display:inline-block;
	margin-bottom: 3px;
}
.rside_tag .tag_list li a{
	display:block;
	font-size: 1.3rem;
	padding:3px 10px;
	color:#000;
	background: #c9c9bd;
}
.rside_tag .tag_list li a:hover{
	background: #ddddcd;
}
/* ---------- */

.rside_cta_box2{
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	width:100%;
	flex-wrap: wrap;
	justify-content: center;
	margin-bottom: 30px;
}
.rside_cta_box2 li{
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	flex-direction: column;
	width:50%;
	padding:0 10px;
}
.rside_cta_box2 li:nth-of-type(3){
	width:100%;
	font-size: 1.4rem;
	font-weight: 500;
	text-align: center;
	padding-top: 20px;
}
.rside_cta_box2 li a.kibtn{
	font-size: 1.8rem;
	flex-direction: column;
	text-align: center;
	padding:30px 3px;
	font-weight: 600;
}
.rside_cta_box2 li a.kibtn svg{
	width:34px;
	margin-right: 0px;
	margin-bottom: 10px;
}
@media screen and (max-width: 1050px){
	.rside_cta_box2 li a.kibtn{
		line-height: 1.4;
		padding:25px 3px;
	}
	.rside_cta_box2 li a.kibtn svg{
		width:30px;
	}
}
/* ---------- */

.rside_cta_box1{
	width:100%;
	margin-bottom: 30px;
}
.rside_cta_box1 p{
	width:100%;
	font-size: 1.4rem;
	font-weight: 500;
	text-align: center;
	padding-top: 20px;
}
.rside_cta_box1 a.kibtn{
	padding:30px 3px;
}
/* ---------- */

.kibtn{
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	justify-content: center;
	align-items: center;
	width:100%;
	max-width:400px;
	font-size: 1.8rem;
	font-weight: 600;
	color:#fff;
	background: #000;
	margin: 0 auto;
	border: 1px solid #000;
	-webkit-box-shadow: 0 6px 10px 0px rgb(0 0 0 / 22%),inset 0 1px 0 rgba(255,255,255,0.5);
  box-shadow: 0 6px 10px 0px rgb(0 0 0 / 22%),inset 0 1px 0 rgba(255,255,255,0.5);
  transition: 0.3s ease-in-out;
	-moz-border-radius: 3px; -webkit-border-radius: 3px; -o-border-radius: 3px; -ms-border-radius: 3px; border-radius: 3px;
	padding:25px 3px;
	line-height: 1.6;
}
.kibtn svg{
	width:30px;
	margin-right: 10px;
	fill:#fff;
}
.kibtn:hover{
	-webkit-box-shadow: 0 2px 3px 0px rgb(0 0 0 / 22%),inset 0 1px 0 rgba(255,255,255,0.5);
  box-shadow: 0 2px 3px 0px rgb(0 0 0 / 22%),inset 0 1px 0 rgba(255,255,255,0.5);
	color:#fff;
}

.kibtn.kibtn1{
	background: #f5ad00;
	border: 1px solid #e3a101;
}
.kibtn.kibtn1:hover{
	background: #fdba1b;
}
.kibtn.kibtn2{
	background: #ed7079;
	border: 1px solid #d8545d;
}
.kibtn.kibtn2:hover{
	background: #f57b83;
}
@media screen and (max-width: 1250px){
	.makeaplan_shingle .entry-content .entry-cta_bottom li a.kibtn{
		flex-direction: column;
	}
	.makeaplan_shingle .entry-content .entry-cta_bottom li a.kibtn svg{
		margin-right: 0px;
		margin-bottom: 10px;
	}
}

@media screen and (max-width: 1200px){
	.makeaplan_shingle .entry-content .entry-cta_bottom li{
		width:100%;
		padding:0 20px;
	}
	.makeaplan_shingle .entry-content .entry-cta_bottom li:nth-of-type(2){
		margin-top: 30px;
	}
	.makeaplan_shingle .entry-content .entry-cta_bottom li:nth-of-type(2) p{
		padding-top: 0px;
	}
}

@media screen and (max-width: 680px){
	.makeaplan_shingle .entry-content .entry-cta{
		padding:20px 15px;
	}
	.makeaplan_shingle .entry-content .entry-cta_bottom li{
		padding:0 0px;
	}
}


/* ---------- */
.entry-content .alist,
.entry-content .alist2{
	width:100%;
}
.entry-content .alist li,
.entry-content .alist2 li{
	position: relative;
	width:100%;
	margin-bottom: 20px;
	padding:0 0 0 40px;
	font-size: 1.7rem;
}
.entry-content .alist li:last-of-type,
.entry-content .alist2 li:last-of-type{
	margin-bottom: 0px;
}
.entry-content .alist li::before{
	content:"";
	position: absolute;
	left:0;
	top:3px;
	width:20px;
	height:20px;
	background: url(/images/makeaplan/arrow.png) 0 0 no-repeat;
}
.entry-content .alist2 li::before{
	content:"";
	position: absolute;
	left:0;
	top:12px;
	width:10px;
	height:10px;
	background: #1fbc99;
	border-radius: 50px;
}
.entry-content .alist2 li{
	padding-left: 25px;
}

@media screen and (max-width: 800px){
	.entry-content .alist li,
	.entry-content .alist2 li{
		padding:0 0 0 35px;
		font-size: 2.1vw;
	}
}
@media screen and (max-width: 680px){
	.entry-content .alist li,
	.entry-content .alist2 li{
		padding:0 0 0 35px;
		font-size: 14px;
	}
	.entry-content .alist2 li{
		padding:0 0 0 25px;
	}
}


.makeaplan_shingle .entry-content .entry-thumb {
    padding: 0px 0 50px;
}
.makeaplan_shingle .entry-content .entry-thumb img {
    display: block;
    width: 100%;
    max-width: 860px;
    height:auto;
    margin: 0 auto;
}
.entry-content .sp-rmokujibox,
.entry-content .sp-rcategorybox,
.entry-content .sp-rtagbox{
	display:none;
}

@media screen and (max-width: 1200px){
  .makeaplan_shingle #column_main{
    width:calc(100% - 400px);
  }
  .makeaplan_shingle #column_side{
    width:400px;
    padding:30px 0px 0 30px;
  }
}
@media screen and (max-width: 1050px){
  .makeaplan_shingle #column_main{
    width:calc(100% - 360px);
  }
  .makeaplan_shingle #column_side{
    width:360px;
  }
}

@media screen and (max-width:860px) {
  .makeaplan_shingle #column_main{
    width:100%;
  }
  .makeaplan_shingle #column_side{
    display:none;
  }
	.entry-content .sp-rmokujibox,
	.entry-content .sp-rcategorybox,
	.entry-content .sp-rtagbox{
		display:block;
		padding:30px;
		border-top: 1px solid #dbdad6;
	}
	.entry-content .sp-rmokujibox h4,
	.entry-content .sp-rcategorybox h4,
	.entry-content .sp-rtagbox h4{
		font-size: 1.8rem;
		margin-bottom: 10px;
	}
}
@media screen and (max-width: 800px){
	.entry-content .sp-rmokujibox .mokuji_list li a{
		font-size: 2vw;
		letter-spacing: 0.2rem;
	}
}
@media screen and (max-width:680px) {
  .entry-content .entry-thumb{
		padding:0px 0px;
	}
	.makeaplan_shingle .entry-content .entry-thumb {
	    padding: 0px 0 0px;
	}
	.entry-content .sp-rmokujibox,
	.entry-content .sp-rcategorybox,
	.entry-content .sp-rtagbox{
		padding:20px 15px;
	}
	.entry-content .sp-rmokujibox h4,
	.entry-content .sp-rcategorybox h4,
	.entry-content .sp-rtagbox h4{
		font-size: 14px;
		margin-bottom: 10px;
	}
	.entry-content .sp-rmokujibox .mokuji_list li a{
		padding:2px 0;
		font-size: 14px;
	}
  .makeaplan_shingle #key-title-box{
    font-size: 14px;
    margin-bottom: 30px;
  }
}

/*-------------------*/

.makeaplan_shingle .entry-content .blog-btn{
  width:100%;
  margin-top: 30px;
  margin-bottom: 30px;
}
.makeaplan_shingle .entry-content .blog-btn a.btn{
  display: block;
	width:100%;
	font-size: 1.8rem;
	font-weight: 600;
	color:#fff;
	background: #1fbc99;
	border: 1px solid #0795c4;
  text-align: center;
	-webkit-box-shadow: inset 0 1px 0 rgba(255,255,255,0.5);
  box-shadow: inset 0 1px 0 rgba(255,255,255,0.5);
  transition: 0.3s ease-in-out;
	-moz-border-radius: 3px; -webkit-border-radius: 3px; -o-border-radius: 3px; -ms-border-radius: 3px; border-radius: 3px;
	padding:30px 3px;
	line-height: 1.6;
}
.makeaplan_shingle .entry-content .blog-btn a.btn:hover{
  background: #2bb8e7;
}
.makeaplan_shingle .entry-content .blog-btn a.btn.S{
  padding:16px 3px;
  font-size: 1.6rem;
  max-width:260px;
}
.makeaplan_shingle .entry-content .blog-btn a.btn.M{
  padding:20px 3px;
  font-size: 1.6rem;
  max-width:340px;
}
.makeaplan_shingle .entry-content .blog-btn a.btn.L{
  padding:25px 3px;
  font-size: 1.8rem;
  max-width:450px;
}
.makeaplan_shingle .entry-content .blog-btn a.btn.center{
  margin:0 auto;
}
.makeaplan_shingle .entry-content .blog-btn a.btn.right{
  margin-left:auto;
}

/*-------------------*/
.makeaplan_shingle .entry-content .well { min-height:20px; padding:19px; margin-bottom:20px; background-color:#f5f5f5; border:1px solid #e3e3e3; border-radius:4px; -webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.05); box-shadow:inset 0 1px 1px rgba(0,0,0,0.05); }
.makeaplan_shingle .entry-content .well2 { margin:1em 0 30px; padding:1em 1.5em; line-height:2; border:1px solid #cdcdcd; background:#fcfcfc; box-shadow: 0 1px 3px 0 rgba(195,195,195,0.3); }
.makeaplan_shingle .entry-content .well3 { margin:2em 0 2.5em; padding:1em 1.5em;line-height:2.0; border:1px dashed #cdcdcd; background:#fcfcfc;  box-shadow: 0 1px 3px 0 rgba(195,195,195,0.3); }
.makeaplan_shingle .entry-content .wl_red { background-color: #f2dede; border-color: #ebccd1; color: #a94442; }
.makeaplan_shingle .entry-content .wl_yellow { background-color: #fcf8e3; border-color: #faebcc; color: #8a6d3b; }
.makeaplan_shingle .entry-content .wl_blue { background-color: #d9edf7; border-color: #bce8f1; color: #31708f; }
.makeaplan_shingle .entry-content .wl_green { background-color: #dff0d8; border-color: #d6e9c6; color: #3c763d; }

/*-------------------*/
.marker_green_futo{
  font-weight: bold;
  padding-bottom: 2px;
  border-bottom: 2px solid #10af9e;
}
.marker_green_hoso{
  padding-bottom: 2px;
  border-bottom: 1px solid #10af9e;
}
.marker_yellow_futo{
  font-weight: bold;
  padding-bottom: 2px;
  border-bottom: 2px solid #ffd900;
}
.marker_yellow_hoso{
  padding-bottom: 2px;
  border-bottom: 1px solid #ffd900;
}
.marker_red_futo{
  font-weight: bold;
  padding-bottom: 2px;
  border-bottom: 2px solid #f70e5a;
}
.marker_red_hoso{
  padding-bottom: 2px;
  border-bottom: 1px solid #f70e5a;
}
.marker_blue_futo{
  font-weight: bold;
  padding-bottom: 2px;
  border-bottom: 2px solid #1fbc99;
}
.marker_blue_hoso{
  padding-bottom: 2px;
  border-bottom: 1px solid #1fbc99;
}

/*-------------------*/
.makeaplan_shingle .entry-content .list-a{
  width:100%;
  margin-bottom: 30px;
}
.makeaplan_shingle .entry-content .list-a li{
  position: relative;
	padding:5px 5px 5px 25px;
}
.makeaplan_shingle .entry-content .list-a li::before {
  content: '';
  display: block;
  position: absolute;
  top: calc(50% - 5px);
  left: 0;
  width: 10px;
  height: 5px;
  border-left: 3px solid #1fbc99;
  border-bottom: 3px solid #1fbc99;
  transform: rotate(-45deg);
}

.makeaplan_shingle .entry-content .list-b{
  width:100%;
  margin-bottom: 30px;
}
.makeaplan_shingle .entry-content .list-b li{
  position: relative;
	padding:5px 5px 5px 20px;
}
.makeaplan_shingle .entry-content .list-b li::before {
  content: '';
  display: block;
  position: absolute;
  top: calc(50% - 3px);
  left: 0;
  width: 6px;
  height: 6px;
  border-left: 2px solid #1fbc99;
  border-bottom: 2px solid #1fbc99;
  transform: rotate(-135deg);
}

.makeaplan_shingle .entry-content .list-c{
  width:100%;
  margin-bottom: 30px;
}
.makeaplan_shingle .entry-content .list-c li{
  position: relative;
	padding:5px 5px 5px 20px;
}
.makeaplan_shingle .entry-content .list-c li::before {
  content: '';
  display: block;
  position: absolute;
  top: calc(50% - 3px);
  left: 4px;
  width: 8px;
  height: 8px;
  background: #1fbc99;
  border-radius: 50px;
}

.makeaplan_shingle .entry-content .list-d{
  width:100%;
  margin-bottom: 30px;
}
.makeaplan_shingle .entry-content .list-d li{
  position: relative;
  counter-increment: number;
	padding:5px 5px 5px 20px;
}
.makeaplan_shingle .entry-content .list-d li::before {
  content: counter(number) ".";
  display: block;
  position: absolute;
  color: #1fbc99;
  left: 2px;
}

/*-------------------*/
.makeaplan_shingle .entry-content .color1{
  color: #1fbc99;
}
/*-------------------*/
.makeaplan_shingle .entry-content .clear{
  clear: both;
}
.makeaplan_shingle .entry-content .height30{
  height:30px;
}
.makeaplan_shingle .entry-content .height50{
  height:50px;
}
.makeaplan_shingle .entry-content img.alignleft{
  float: left;
  margin:0 30px 30px 0;
}
.makeaplan_shingle .entry-content img.aligncenter{
  display:block;
  clear: both;
  margin:0 auto 30px auto;
}
.makeaplan_shingle .entry-content img.alignright{
  float: right;
  margin:0 0 30px 30px;
}

@media screen and (max-width: 760px){
  .makeaplan_shingle .entry-content img.alignleft{
    float: none;
    display:block;
    margin:0 auto 30px auto;
  }
  .makeaplan_shingle .entry-content img.alignright{
    float: none;
    display:block;
    margin:0 auto 30px auto;
  }
}
/*-------------------*/

.makeaplan_shingle .entry-content .imgtext{
  display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	width:100%;
	flex-wrap: wrap;
  margin-bottom: 30px;
}
.makeaplan_shingle .entry-content .imgtext .img{
  width:30%;
}
.makeaplan_shingle .entry-content .imgtext .text{
  width:70%;
  padding-left: 30px;
}

.makeaplan_shingle .entry-content .textimg{
  display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	width:100%;
	flex-wrap: wrap;
  margin-bottom: 30px;
}
.makeaplan_shingle .entry-content .textimg .img{
  width:30%;
}
.makeaplan_shingle .entry-content .textimg .text{
  width:70%;
  padding-right: 30px;
}

@media screen and (max-width: 760px){
  .makeaplan_shingle .entry-content .imgtext .img{
    width:100%;
  }
  .makeaplan_shingle .entry-content .imgtext .img img{
    display:block;
    margin:0 auto 20px;
  }
  .makeaplan_shingle .entry-content .imgtext .text{
    width:100%;
    padding-left: 0px;
  }
  .makeaplan_shingle .entry-content .textimg .img{
    order: 1;
    width:100%;
  }
  .makeaplan_shingle .entry-content .textimg .text{
    order: 2;
    width:100%;
    padding-right: 0px;
  }
  .makeaplan_shingle .entry-content .textimg .img img{
    display:block;
    margin:0 auto 20px;
  }
}

/*-------------------*/
.makeaplan_shingle img{
  height:auto;
}
.makeaplan_shingle .entry-content .robbox{
  display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	width:100%;
	flex-wrap: wrap;
  margin-bottom: 15px;
  justify-content: space-between;
}
.makeaplan_shingle .entry-content .robbox li{
  margin-bottom: 15px;
}
.makeaplan_shingle .entry-content .robbox.box2-c li{
  width:49%;
}
.makeaplan_shingle .entry-content .robbox.box2-r li{
  width:49%;
}
.makeaplan_shingle .entry-content .robbox.box3 li{
  width:32%;
}
.makeaplan_shingle .entry-content .robbox.box4-c li{
  width:24%;
}
.makeaplan_shingle .entry-content .robbox.box4-r li{
  width:24%;
}

@media screen and (max-width: 860px){
  .makeaplan_shingle .entry-content .robbox.box4-c li{
    width:49%;
  }
  .makeaplan_shingle .entry-content .robbox.box4-r li{
    width:49%;
  }
}

@media screen and (max-width: 680px){
  .makeaplan_shingle .entry-content .robbox li img{
    display:block;
    margin:0 auto;
  }
  .makeaplan_shingle .entry-content .robbox.box2-r li{
    width:100%;
  }
  .makeaplan_shingle .entry-content .robbox.box3 li{
    width:100%;
  }
  .makeaplan_shingle .entry-content .robbox.box4-r li{
    width:100%;
  }
}

/*-------------------*/
.makeaplan_shingle .entry-content .supplement{
  width:100%;
  margin-bottom: 40px;
  margin-top: 20px;
  position: relative;
  border: 3px solid #ccc;
  border-radius: 3px;
  background: #fff;
  color: #000;
  padding:40px 15px 15px;
}
.makeaplan_shingle .entry-content .supplement span{
  position:absolute;
  display:inline-block;
  padding:6px 15px;
  background: #ccc;
  color: #fff;
  border-radius: 0 0 3px 3px;
  font-size: 1.4rem;
  top:0;
  left:15px;
  line-height: 1.2;
}
.makeaplan_shingle .entry-content .supplement.pink{
  border-color: #ff8178;
}
.makeaplan_shingle .entry-content .supplement.pink span{
  background: #ff8178;
}
.makeaplan_shingle .entry-content .supplement.yellow{
  border-color: #eea800;
}
.makeaplan_shingle .entry-content .supplement.yellow span{
  background: #eea800;
}
.makeaplan_shingle .entry-content .supplement.green{
  border-color: #10af9e;
}
.makeaplan_shingle .entry-content .supplement.green span{
  background: #10af9e;
}
.makeaplan_shingle .entry-content .supplement.blue{
  border-color: #1fbc99;
}
.makeaplan_shingle .entry-content .supplement.blue span{
  background: #1fbc99;
}
/* -----カードリンク----- */
.makeaplan_shingle .entry-content .item-box1{
	display:block;
	width:100%;
	border: 1px solid #dbdad6;
	margin: 30px 0;
}
.makeaplan_shingle .entry-content .item-box1 a{
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	width:100%;
	flex-wrap: wrap;
	padding:15px 15px;
	align-items: center;
	justify-content: space-between;
}
.makeaplan_shingle .entry-content .item-box1 a .img{
	width:20%;
}
.makeaplan_shingle .entry-content .item-box1 a .img img{
	display:block;
	width:100%;
	height:auto;
}
.makeaplan_shingle .entry-content .item-box1 a .item-inner{
	width:75%;
}
.makeaplan_shingle .entry-content .item-box1 a .item-inner h3{
	font-size: 18px;
	margin-bottom: 5px;
	overflow: hidden;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 1;
  color: #1fbc99;
}
.makeaplan_shingle .entry-content .item-box1 a .item-inner p{
	color: #333333;
	font-size: 14px;
	overflow: hidden;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
	margin-bottom: 7px;
}
.makeaplan_shingle .entry-content .item-box1 a .item-inner .btn{
	display:inline-block;
	padding:3px 45px;
	font-size: 14px;
	color:#fff;
	background: #1fbc99;
}
.makeaplan_shingle .entry-content .item-box1 a:hover .item-inner h3{
	color: #24cda7;
}
.makeaplan_shingle .entry-content .item-box1 a:hover .item-inner .btn{
	background: #24cda7;
}

@media screen and (max-width: 760px){
	.makeaplan_shingle .entry-content .item-box1 a .item-inner h3{
		font-size: 16px;
	}
	.makeaplan_shingle .entry-content .item-box1 a .item-inner p{
		font-size: 14px;
	  -webkit-line-clamp: 1;
	}
	.makeaplan_shingle .entry-content .item-box1 a .item-inner .btn{
		padding:3px 35px;
		font-size: 12px;
	}
}
@media screen and (max-width: 500px){
	.makeaplan_shingle .entry-content .item-box1 a .img{
		width:100%;
		margin-bottom: 5px;
	}
	.makeaplan_shingle .entry-content .item-box1 a .item-inner{
		width:100%;
	}
	.makeaplan_shingle .entry-content .item-box1 a .item-inner h3{
		font-size: 15px;
		margin-bottom: 5px;
		overflow: inherit;
	  -webkit-box-orient: inherit;
	  -webkit-line-clamp: inherit;
	}
	.makeaplan_shingle .entry-content .item-box1 a .item-inner p{
	  -webkit-line-clamp: 2;
	}
	.makeaplan_shingle .entry-content .item-box1 a .item-inner .btn{
		display:block;
		width:100%;
		max-width:200px;
		text-align: center;
		margin:0 auto;
	}
}

.makeaplan_shingle .entry-content .item-box2{
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	width:100%;
	border: 1px solid #dbdad6;
	margin: 30px 0;
	flex-wrap: wrap;
}
.makeaplan_shingle .entry-content .item-box2 .items{
	width:50%;
	padding:50px;
}
.makeaplan_shingle .entry-content .item-box2 .items:nth-of-type(1){
	border-right: 1px solid #dbdad6;
}
.makeaplan_shingle .entry-content .item-box2 a .img{
	width:100%;
	margin-bottom: 5px;
}
.makeaplan_shingle .entry-content .item-box2 a .img img{
	display:block;
	width:100%;
	height:auto;
}
.makeaplan_shingle .entry-content .item-box2 a .item-inner{
	width:100%;
}
.makeaplan_shingle .entry-content .item-box2 a .item-inner h3{
	font-size: 18px;
	margin-bottom: 5px;
	overflow: hidden;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  color: #1fbc99;
}
.makeaplan_shingle .entry-content .item-box2 a .item-inner p{
	color: #333333;
	font-size: 14px;
	overflow: hidden;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
	margin-bottom: 15px;
}
.makeaplan_shingle .entry-content .item-box2 a .item-inner .btn{
	display:block;
	width:100%;
	max-width:200px;
	text-align: center;
	margin:0 auto;
	padding:3px 5px;
	font-size: 14px;
	color:#fff;
	background: #1fbc99;
}
.makeaplan_shingle .entry-content .item-box2 a:hover .item-inner h3{
	color: #24cda7;
}
.makeaplan_shingle .entry-content .item-box2 a:hover .item-inner .btn{
	background: #24cda7;
}
@media screen and (max-width: 760px){
	.makeaplan_shingle .entry-content .item-box2 .items{
		width:50%;
		padding:20px;
	}
}
@media screen and (max-width: 680px){
	.makeaplan_shingle .entry-content .item-box2 a .item-inner h3{
		font-size: 16px;
		margin-bottom: 5px;
	}
}
@media screen and (max-width: 500px){
	.makeaplan_shingle .entry-content .item-box2 .items{
		width:100%;
		padding:20px 15px;
	}
	.makeaplan_shingle .entry-content .item-box2 .items:nth-of-type(1){
		border-right:none;
		border-bottom: 1px solid #dbdad6;
	}
	.makeaplan_shingle .entry-content .item-box2 a .item-inner h3{
		font-size: 15px;
		margin-bottom: 5px;
	}
}


.makeaplan_shingle .entry-content .item-box3{
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	width:100%;
	border: 1px solid #dbdad6;
	margin: 30px 0;
	flex-wrap: wrap;
}
.makeaplan_shingle .entry-content .item-box3 .items{
	width:33.3333%;
	padding:20px;
}
.makeaplan_shingle .entry-content .item-box3 .items:nth-of-type(1),
.makeaplan_shingle .entry-content .item-box3 .items:nth-of-type(2){
	border-right: 1px solid #dbdad6;
}
.makeaplan_shingle .entry-content .item-box3 a .img{
	width:100%;
	margin-bottom: 5px;
}
.makeaplan_shingle .entry-content .item-box3 a .img img{
	display:block;
	width:100%;
	height:auto;
}
.makeaplan_shingle .entry-content .item-box3 a .item-inner{
	width:100%;
}
.makeaplan_shingle .entry-content .item-box3 a .item-inner h3{
	font-size: 15px;
	margin-bottom: 5px;
	overflow: hidden;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  color: #1fbc99;
}
.makeaplan_shingle .entry-content .item-box3 a .item-inner p{
	color: #333333;
	font-size: 12px;
	overflow: hidden;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
	margin-bottom: 7px;
}
.makeaplan_shingle .entry-content .item-box3 a .item-inner .btn{
	display:block;
	width:100%;
	max-width:200px;
	text-align: center;
	margin:0 auto;
	padding:3px 5px;
	font-size: 14px;
	color:#fff;
	background: #1fbc99;
}
.makeaplan_shingle .entry-content .item-box3 a:hover .item-inner h3{
	color: #24cda7;
}
.makeaplan_shingle .entry-content .item-box3 a:hover .item-inner .btn{
	background: #24cda7;
}

@media screen and (max-width: 500px){
	.makeaplan_shingle .entry-content .item-box3 .items{
		width:100%;
		padding:20px 15px;
	}
	.makeaplan_shingle .entry-content .item-box3 .items:nth-of-type(1),
		.makeaplan_shingle .entry-content .item-box3 .items:nth-of-type(2){
		border-right:none;
		border-bottom: 1px solid #dbdad6;
	}
	.makeaplan_shingle .entry-content .item-box3 a .item-inner h3{
		font-size: 15px;
		margin-bottom: 5px;
	}
}

.makeaplan_shingle .more_entry{
	padding-top: 20px;
}
.makeaplan_shingle .more_entry h4{
	position: relative;
  padding: 0px 0 0 33px;
  font-size: 20px;
  margin-bottom: 20px;
	color:#000;
}
.makeaplan_shingle .more_entry h4::before {
    position: absolute;
    content: "";
    top: 9px;
    left: 0;
    width: 22px;
    height: 27px;
    background: url(/assets/images/cmn/p2.svg) 50% 0% no-repeat;
    background-size: auto;
}
.popular-makeaplan-list{
	margin-bottom: 40px;
}
.popular-makeaplan-list li{
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	width:100%;
	padding: 13px 0;
	border-bottom: 1px solid #dbdad6;
	transition: 0.3s ease-in-out;
}
.popular-makeaplan-list li:hover{
	background: #f1f1f1;
}
.popular-makeaplan-list li span{
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	justify-content: center;
	align-items: center;
	background: #dfdfdf;
	width:30px;
	height:30px;
	font-size: 14px;
	color:#fff;
}
.popular-makeaplan-list li a{
	width:calc(100% - 30px);
	padding-left: 15px;
	color:#000;
}
.popular-makeaplan-list li:nth-of-type(1) span{
	background: #019e97;
}
.popular-makeaplan-list li:nth-of-type(2) span{
	background: #03b4ac;
}
.popular-makeaplan-list li:nth-of-type(3) span{
	background: #06c3af;
}
.popular-makeaplan-list li:nth-of-type(4) span{
	background: #10cbb7;
}
.popular-makeaplan-list li:nth-of-type(5) span{
	background: #10d3a7;
}
/* ----------------------------------------------------------------------
 recommend_area
---------------------------------------------------------------------- */
#recommend_area{
	background: #fff;
	width:100%;
	border: 1px solid #dbdad6;
  border-bottom: none;
	border-top: 4px solid #000;
}
#recommend_area h6{
	position: relative;
	padding:30px;
	font-size: 18px;
	border-bottom: 1px solid #dbdad6;
}
#recommend_area h6::after{
	content:"";
	position: absolute;
	bottom:0px;
	left:30px;
	width:30px;
	height:4px;
	background: #1fbc99;
}

#recommend_area .recommend_box{
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	width:100%;
	flex-wrap: wrap;
	padding:40px 30px 20px;
}
#recommend_area .recommend_box .items{
  width:23.5%;
  background: #fff;
  margin:0 2% 25px 0;
}
#recommend_area .recommend_box .items:nth-of-type(4n+4){
  margin-right: 0%;
}

#recommend_area .recommend_box .items .item-thumb {
  width: 100%;
  height: 0;
  padding: 0 0 60%;
  position: relative;
  background: #000;
}
#recommend_area .recommend_box .items .item-thumb a {
    display: block;
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    overflow: hidden;
}
#recommend_area .recommend_box .items .item-thumb a img {
    object-fit: cover;
    object-position: 50% 60%;
    font-family: 'object-fit: cover; object-position: 50% 60%;';
    width: 100%;
    height: 100%;
    max-width: none;
    will-change: transform;
    transition: 0.5s ease-out;
    transform: scale(1);
}
#recommend_area .recommend_box .items .item-thumb a:hover img{
  transform: scale(1.1);
  opacity: 0.4;
}
#recommend_area .recommend_box .items .item-info{
	position: relative;
	padding:20px 20px;
	background: #fff;
}
#recommend_area .recommend_box .items .item-info .category-label{
  position: absolute;
  top:-15px;
  right:0px;
  background: #1fbc99;
  color:#fff;
  padding:3px 6px;
  font-size: 12px;
}
#recommend_area .recommend_box .items .item-info h4{
	margin-bottom: 15px;
	overflow: hidden;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}
#recommend_area .recommend_box .items .item-info h4 a{
	color:#000;
	font-size: 15px;
	font-weight: 500;
	transition: 0.3s ease-in-out;
}
#recommend_area .recommend_box .items .item-info h4 a:hover{
	color:#1fbc99;
}
#recommend_area .recommend_box .items .item-info .item-meta{
  color:#999999;
  font-size: 1.2rem;
  overflow: hidden;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 1;
}

@media screen and (max-width: 1200px){
	#recommend_area .recommend_box .items{
	  width:32%;
	  margin:0 2% 25px 0;
	}
	#recommend_area .recommend_box .items:nth-of-type(4n+4){
	  margin-right: 2%;
	}
	#recommend_area .recommend_box .items:nth-of-type(3n+3){
	  margin-right: 0%;
	}
}
@media screen and (max-width: 860px){
	#recommend_area .recommend_box .items{
	  width:49%;
	  margin:0 2% 25px 0;
	}
	#recommend_area .recommend_box .items:nth-of-type(4n+4){
	  margin-right: 0%;
	}
	#recommend_area .recommend_box .items:nth-of-type(3n+3){
	  margin-right: 2%;
	}
	#recommend_area .recommend_box .items:nth-of-type(2n+2){
	  margin-right: 0%;
	}
}

@media screen and (max-width: 680px){
	#recommend_area h6{
		padding:20px 15px;
		font-size: 18px;
	}
	#recommend_area h6::after{
		left:15px;
	}

	#recommend_area .recommend_box{
		padding:30px 15px 10px;
	}
}
@media screen and (max-width: 600px){
	#recommend_area .recommend_box .items{
		width:100%;
		margin:0 0% 25px 0;
	}
	#recommend_area .recommend_box .items:nth-of-type(4n+4){
		margin-right: 0%;
	}
}

/*---------------------------------
s_projectswrap
-----------------------------------*/
#s_projectswrap{
	padding-top: 90px;
	padding-bottom: 140px;
	background: #fff;
	border-radius: 3rem 3rem 0 0;
}
#s_projectswrap .projects_list{
	width:100%;
  display: grid;
  grid-template-columns: repeat(3, 1fr);
	column-gap: 35px;
  row-gap: 60px;
	margin-bottom: 80px;
}
#s_projectswrap .projects_list article a {
    display: block;
    position: relative;
}
#s_projectswrap .projects_list article a .article_mv_img {
    position: relative;
    width: 100%;
    overflow: hidden;
}

#s_projectswrap .projects_list article a .article_mv_img img {
    max-width: none;
  	width: 100%;
  	max-height: auto;
  	object-fit: cover;
  	object-position: 50% 65%;
  	font-family: 'object-fit: cover; object-position: 50% 65%;';
    will-change: transform;
    transition: 0.5s ease-out;
    transform: scale(1);
}
#s_projectswrap .projects_list article a:hover .article_mv_img img{
	transform: scale(1.07);
}
#s_projectswrap .projects_list article .desc {
    width: 100%;
    padding-top: 25px;
}
#s_projectswrap .projects_list article .desc .label{
  margin-bottom: 20px;
}
#s_projectswrap .projects_list article .desc .label a{
  display:inline-block;
  color:#000;
  font-size: 12px;
  padding:6px 10px;
  border: 1px solid #dadbd6;
  background: #f7f7f7;
  border-radius: 5px;
  transition: 0.3s ease-in-out;
}
#s_projectswrap .projects_list article .desc .label a:hover{
  font-weight: bold;
  border: 1px solid #000;
  background: #fff;
}
#s_projectswrap .projects_list article .desc .label2{
  padding-top: 20px;
	color:#6e6e6e;
}
#s_projectswrap .projects_list article .desc .label2 a{
	display: inline;
	font-size: 14px;
	color:#6e6e6e;
}
#s_projectswrap .projects_list article .desc .label2 a:hover{
	text-decoration: underline;
}
#s_projectswrap .projects_list article .desc .title a{
	line-height: 1.8;
    font-size: 18px;
    font-weight: 500;
    overflow: hidden;
    display: -webkit-box;
		color:#000;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
		transition: 0.5s ease-out;
}
#s_projectswrap .projects_list article .desc .title a:hover{
	color:#1fbc99;
}
#s_projectswrap .projects_list article a:hover .desc{
	bottom: 30%;
	transform: translateY(-30%);
}
#s_projectswrap .projects_list article a:hover .desc .label{
	display:none;
}
#s_projectswrap .projects_list article a:hover .desc .title{
	font-size: 1.8rem;
}

@media screen and (max-width: 860px){
	#s_projectswrap .projects_list{
	  grid-template-columns: repeat(2, 1fr);
	}
}
@media screen and (max-width: 760px){
	#s_projectswrap{
		padding-top: 60px;
		padding-bottom: 90px;
	}
}

@media screen and (max-width: 680px){
	#s_projectswrap .projects_list{
	  grid-template-columns: repeat(1, 1fr);
	}
	#s_projectswrap{
		padding-top: 40px;
		padding-bottom: 60px;
	}
}

#projects_tumb{
	width:100%;
	overflow: hidden;
	position: relative;
}
#projects_tumb .img{
  position: relative;
  width: 100%;
}
#projects_tumb .img::before {
    content: "";
    position: absolute;
    display: block;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 60%;
    background: linear-gradient(to top, rgba(0, 0, 0, 0.9) 0%, transparent 60%);
    z-index: 1;
    transition: 0.5s ease-in-out;
}

#projects_tumb .meta {
    position: absolute;
    bottom: 50px;
    width: 100%;
    padding: 0 50px;
    z-index: 2;
    color: #fff;
}
#projects_tumb .meta h1{
	font-weight: bold;
  font-size: 28px;
  line-height: 1.8;
  letter-spacing: 0.2rem;
}

@media screen and (max-width:860px) {
	#projects_tumb .meta {
	  position: static;
	  padding: 25px 25px;
	  color: #000;
	}
	#projects_tumb .meta h1{
	  font-size: 24px;
	  line-height: 1.8;
	}
}
@media screen and (max-width:500px) {
	#projects_tumb .meta {
	  padding: 20px 15px 5px;
	}
	#projects_tumb .meta h1{
	  font-size: 22px;
	  line-height: 1.8;
	}
}

/*---------------------------------
s_projects_page
-----------------------------------*/
.single-projects #mmv .s-title h1{
  font-size: 34px;
}
.single-projects #mmv .cts{
	font-size: 16px;
}
.single-projects #mmv .cat{
	width:100%;
	padding-top: 15px;
  display: flex;
  flex-wrap: wrap;
  column-gap: 12px;
  row-gap: 12px;
}
.single-projects #mmv .cat li{
  display: grid;
  place-items: center;
}
.single-projects #mmv .cat li a{
  display:block;
  color:#000;
  font-size: 12px;
  padding:6px 10px;
  border: 1px solid #dadbd6;
  background: #f7f7f7;
  border-radius: 5px;
  transition: 0.3s ease-in-out;
}
.single-projects #mmv .cat li a:hover{
  font-weight: bold;
  border: 1px solid #000;
  background: #fff;
}


.projects_mv{
	position: relative;
	width:100%;
	height: calc((100vh - 100px - 0px) / 2 + 50px);
	background-position: 50% 0;
	background-size: cover;
	margin-bottom: 90px;
}
.projects_mv .overlay {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 2;
}

#s_projects_page{
	padding: 0px 0 80px;
}
#s_projects_page .w{
	position: relative;
	max-width:1100px;
}
#s_projects_page .main_th,
#s_projects_page .sub_th{
	margin-bottom: 140px;
}
#s_projects_page .main_th img{
	width:100%;
	max-width:1100px;
	margin:0 auto;
}
#s_projects_page .projects_dl{
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	width:100%;
	flex-wrap: wrap;
	margin-bottom: 120px;
}
#s_projects_page .projects_dl dt{
	width:270px;
}
#s_projects_page .projects_dl dt h2{
	font-size: 28px;
}
#s_projects_page .projects_dl dt .en{
	font-weight: bold;
	font-size: 20px;
	color:#ddd;
}
#s_projects_page .projects_dl dd{
	width:calc(100% - 270px);
}
#s_projects_page .projects_dl dd table{
	width:100%;
	border-top: 1px solid #ddd;
}
#s_projects_page .projects_dl dd table th,
#s_projects_page .projects_dl dd table td{
	vertical-align: middle;
	padding:15px 0;
	text-align: left;
	border-bottom: 1px solid #ddd;
}
#s_projects_page .projects_dl dd table th{
	font-size: 16px;
	width:180px;
}
#s_projects_page .projects_dl dd table td a{
	color:#1d9383;
	transition: 0.5s ease-in-out;
}
#s_projects_page .projects_dl dd table td a:hover{
	color:#1fbc99;
}
@media screen and (max-width:860px) {
	#s_projects_page .main_th,
	#s_projects_page .sub_th{
		margin-bottom: 80px;
	}
	#s_projects_page .projects_dl dt{
		width:100%;
	}
	#s_projects_page .projects_dl dd{
		width:100%;
	}
	#s_projects_page .projects_dl{
		margin-bottom: 80px;
	}
}
@media screen and (max-width:760px) {
	.projects_mv{
		height: 400px;
		margin-bottom: 60px;
	}
}

@media screen and (max-width:680px) {
	#s_projects_page .main_th,
	#s_projects_page .sub_th{
		margin-bottom: 60px;
	}
	#s_projects_page .projects_dl{
		margin-bottom: 60px;
	}
}
@media screen and (max-width:480px) {
	.projects_mv{
		height: 250px;
		margin-bottom: 60px;
	}
}
/*---------------------------------
s_info
-----------------------------------*/
#s_info .p-info:last-of-type{
	margin-bottom: 40px;
}
#s_info .p-info a{
	position: relative;
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	width:100%;
	flex-wrap: wrap;
	align-items: center;
	padding: 30px 0px 30px 15px;
  border-bottom: 1px solid #dae4e3;
	transition: 0.3s ease-in-out;
}
#s_info .p-info a:hover{
	background: #f1f1f1;
}
#s_info .p-info:first-of-type a{
	border-top: 1px solid #dae4e3;
}
#s_info .p-info a .meta{
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	width:280px;
	align-items: center;
}
#s_info .p-info a .time{
	display:block;
	width:110px;
	color: #85a09f;
}
#s_info .p-info a .ctag{
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	justify-content: center;
	align-items: center;
	min-width:110px;
	color: #fff;
	background: #a8aeb3;
	font-size: 12px;
	border-radius: 50px;
}
#s_info .p-info a .title{
	position: relative;
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	width:calc(100% - 280px);
	padding-right: 40px;
}
#s_info .p-info a .title h2{
	color:#000;
	font-size: 18px;
	font-weight: normal;
}
#s_info .p-info a::before,
#s_info .p-info a::after{
	position: absolute;
	content:"";
}
#s_info .p-info a::before{
  width:24px;
  height:24px;
  top:50%;
	transform: translateY(-50%);
  right:15px;
  background: #233242;
  border: 1px solid #fff;
  border-radius: 50px;
}
#s_info .p-info a::after{
  top:calc(50% - 3px);
  right:26px;
  width:4px;
  height:4px;
  border-top: 1px solid #fff;
  border-right: 1px solid #fff;
  transform: rotate(45deg);
}
.news-index .article_post{
	width:100%;
	max-width:1200px;
	margin:0 auto;
	border-bottom: 1px solid #e5e5e5;
	margin-bottom: 60px;
}
.news-index .article_post .meta{
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	width:100%;
	align-items: center;
	justify-content: space-between;
	margin-bottom: 20px;
}
.news-index .article_post .meta .post_time{
	color: #85a09f;
	font-size: 16px;
}
.news-index .article_post .meta .ccat{
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	justify-content: center;
	align-items: center;
	min-width:110px;
	color: #fff;
	background: #a8aeb3;
	font-size: 12px;
	border-radius: 50px;
}
.news-index .article_post h1{
	font-size: 28px;
	padding-bottom: 20px;
	margin-bottom: 30px;
	border-bottom: 1px solid #e5e5e5;
}
.news-index .article_post .post_content{
	line-height: 2.0;
	font-size: 18px;
	padding-bottom: 60px;
}
.news-index .article_post .post_content a{
	color:#233242;
	text-decoration: underline;
	font-family: "Poppins", serif;
}
.news-index .article_post .post_content a:hover{
	color:#3b454f;
	text-decoration: none;
}
.news-index .news_rvbtn a{
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	justify-content: center;
	align-items: center;
	width:100%;
	max-width:300px;
	font-size: 16px;
	margin: 0 auto;
	background: #233242;
	color:#fff;
	border-radius: 50px;
	padding:20px 0;
}
.news-index .news_rvbtn a:hover{
	background: #3b454f;
}
@media screen and (max-width:760px) {
  #s_info .p-info a .meta{
		width:100%;
		justify-content: space-between;
		margin-bottom: 10px;
		padding-right: 50px;
	}
	#s_info .p-info a .title{
		width:100%;
		padding-right: 40px;
	}
}
@media screen and (max-width:680px) {
	.news-index .article_post h1{
		font-size: 24px;
	}
	.news-index .article_post .post_content{
		line-height: 2.0;
		font-size: 16px;
	}
}
@media screen and (max-width:500px) {
  #s_info .p-info a{
		padding: 20px 0px 20px 15px;
	}
	#s_info .p-info a .title h2{
		font-size: 16px;
	}
	#s_info .p-info a::before{
	  right:0px;
	}
	#s_info .p-info a::after{
	  right:11px;
	}
}
/*---------------------------------
solution-index
-----------------------------------*/
.solution-index .solution-title {
    position: relative;
		display: -webkit-box;
		display: -webkit-flex;
		display: -ms-flexbox;
		display: flex;
		flex-direction: column;
		justify-content: center;
    padding: 4rem 0 7rem;
    z-index: 1;
}
.solution-index .solution-title .bgt{
	position: absolute;
	top:0;
	right:0;
	letter-spacing: 0;
	color:#fff;
	font-weight: bold;
	line-height: 1.0;
	font-size: calc(3.8em + 3.3vw);
	z-index: 0;
	pointer-events: none;
}
.solution-index .solution-title h1{
	position: relative;
	font-weight: bold;
  font-size: 32px;
  line-height: 1.6;
  letter-spacing: 0.2rem;
	margin-bottom: 25px;
	z-index:1;
}
.solution-index .solution-cat{
	position: relative;
	width:100%;
  display: flex;
  flex-wrap: wrap;
  column-gap: 12px;
  row-gap: 12px;
	z-index:1;
}
.solution-index .solution-cat li{
  display: grid;
  place-items: center;
}
.solution-index .solution-cat li a{
  display:block;
  color:#000;
  font-size: 12px;
  padding:8px 10px;
  border: 1px solid #dadbd6;
  background: #fff;
  border-radius: 5px;
  transition: 0.3s ease-in-out;
}
.solution-index .solution-cat li a:hover{
  font-weight: bold;
  border: 1px solid #000;
  background: #fff;
}
.solution-index #content{
  padding: 70px 0 90px;
}
.solution-index .article_post{
	width:100%;
	max-width:1200px;
	margin:0 auto;
	border-bottom: 1px solid #e5e5e5;
	margin-bottom: 60px;
	padding-bottom: 60px;
}
.solution_cta{
	background: #f6f7fa;
	border-radius: 15px;
	padding:40px 20px;
	text-align: center;
}
.solution_cta .rvbtn{
	padding-top: 30px;
}
.solution_cta .rvbtn a{
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	justify-content: center;
	align-items: center;
	width:100%;
	max-width:300px;
	font-size: 16px;
	margin: 0 auto;
	background: #233242;
	color:#fff;
	border-radius: 50px;
	padding:20px 0;
}
.solution_cta .rvbtn a:hover{
	background: #3b454f;
}
.solution-index .post_inner{
  padding-bottom: 30px;
}
.solution-index .post_content p {
  line-height: 2.4;
  margin: 0 0 2em 0;
  font-size: 16px;
}
.solution-index .post_content .post_img{
  margin-bottom: 50px;
}
.solution-index .sol_m1{
  display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	width:100%;
	flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 80px;
}
.solution-index .sol_m1 dt{
  width:30%;
}
.solution-index .sol_m1 dt img{
  display:block;
  width:100%;
  max-width:1200px;
  margin:0 auto;
}
.solution-index .sol_m1 dd{
  width:66%;
}
.solution-index .sol_m1 dd p{
  margin-bottom: 0;
}
.solution-index .sol_q_box{
  margin-bottom: 80px;
}
.solution-index .sol_q_box .sol_q{
  width:100%;
  padding:25px 0;
  border-bottom: 1px solid #e5e5e5;
}
.solution-index .sol_q_box .sol_q:first-of-type{
  border-top: 1px solid #e5e5e5;
}
.solution-index .sol_q_box .sol_q dt{
  position: relative;
  padding-left: 30px;
  font-size: 22px;
  margin-bottom: 20px;
  font-weight: bold;
}
.solution-index .sol_q_box .sol_q dt::before{
  position: absolute;
  content:"";
  width:20px;
  height:20px;
  top:12px;
  left:0;
  background: url(/assets/images/cmn/l_i1.svg) 0 0 no-repeat;
  background-size: auto;
}
.solution-index .sol_q_box .sol_q dd{
  padding-left: 30px;
}

.solution-index .sol_list{
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  grid-column-gap: 50px;
  margin-bottom: 50px;
}

.solution-index .sol_list article{
  padding:25px 0;
  border-bottom: 1px solid #e5e5e5;
}
.solution-index .sol_list article .subt{
  font-size: 20px;
  margin-bottom: 15px;
}
.solution-index .sol_list article p{
  margin-bottom: 0;
  line-height: 2.0;
}

.solution-index .sol_list2{
  width:100%;
  margin-bottom: 50px;
}
.solution-index .sol_list2 article{
  padding:35px 0;
  border-bottom: 1px solid #e5e5e5;
}
.solution-index .sol_list2 article .subt{
  position: relative;
  font-size: 20px;
  padding-left: 30px;
  margin-bottom: 25px;
}
.solution-index .sol_list2 article .subt::before{
  position: absolute;
  content:"";
  width:20px;
  height:26px;
  top:8px;
  left:0;
  background: url(/assets/images/cmn/l_i2.svg) 0 0 no-repeat;
  background-size: auto;
}
.solution-index .sol_list2 article p{
  margin-bottom: 0;
  line-height: 2.0;
}

.solution-index .sol_list2 .pul{
  background: #eff0f3;
  padding: 25px;
  margin-top: 30px;
}
.solution-index .sol_list2 .pul .in{
  display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	width:100%;
	flex-wrap: wrap;
  align-items: center;
  background: #fff;
  padding: 25px;
}
.solution-index .sol_list2 .pul .pul_img{
  width:420px;
  order: 2;
}
.solution-index .sol_list2 .pul .pul_img img{
  display:block;
  width:100%;
  margin:0 auto;
}
.solution-index .sol_list2 .pul p{
  order: 1;
  width:calc(100% - 420px);
  padding-right: 40px;
}

.solution-index .sol_list2 .inbox{
  display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	width:100%;
	flex-wrap: wrap;
  justify-content: space-between;
}
.solution-index .sol_list2 .inbox .t{
  width:60%;
}
.solution-index .sol_list2 .inbox .i{
  width:35%;
}
.solution-index .sol_list2 .inbox .i img{
  display:block;
  width:100%;
  max-width:750px;
  margin:0 auto 10px;
}
.solution-index .sol_list2 .inbox .i p{
  font-size: 14px;
  color:#5d5d5d;
}
@media screen and (max-width:860px) {
  .solution-index .solution-title .bgt{
		top:3vw;
    font-size: calc(3.8em + 3.3vw);
  }
  .solution-index .sol_m1 dt{
    width:100%;
    margin-bottom: 30px;
  }
  .solution-index .sol_m1 dd{
    width:100%;
  }
  .solution-index .had-line1::before,
  .solution-index .had-line2::before{
    left: -25px;
  }
  .solution-index .sol_list{
    grid-template-columns: 1fr;
    grid-column-gap: 0px;
    margin-bottom: 40px;
  }
}
@media screen and (max-width:760px) {
  .solution-index #content{
	  padding: 40px 0 60px;
	}
  .solution-index .post_content p {
    line-height: 2.0;
    margin: 0 0 1.5em 0;
    font-size: 16px;
  }
  .solution-index .sol_list2 .inbox .t{
    width:100%;
    margin-bottom: 20px;
  }
  .solution-index .sol_list2 .inbox .i{
    width:100%;
  }
  .solution-index .sol_list2 .inbox .i img{
    max-width:600px;
  }
}
@media screen and (max-width:680px) {
  .solution-index .solution-title h1{
	  font-size: 28px;
	}
  .solution-index .sol_m1{
    margin-bottom: 60px;
  }
  .solution-index .sol_q_box .sol_q dt{
    position: relative;
    padding-left: 30px;
    font-size: 20px;
    margin-bottom: 20px;
    font-weight: bold;
  }
  .solution-index .sol_q_box .sol_q dt::before{
    top:8px;
  }
  .solution-index .sol_list article .subt{
    font-size: 20px;
  }
  .solution-index .sol_list2 article .subt{
    font-size: 20px;
    padding-left: 30px;
    margin-bottom: 20px;
  }
  .solution-index .sol_list2 article .subt::before{
    top:6px;
  }
}
@media screen and (max-width:500px) {
  .solution-index .solution-title {
	  padding: 2rem 0 5rem;
	}
	.solution-index .solution-title h1{
	  font-size: 24px;
	}
  .solution-index .had-line1::before,
  .solution-index .had-line2::before{
    left: -15px;
  }
}
@media screen and (max-width:480px) {
	.solution-index .solution-title {
	  padding: 2rem 0 4rem;
	}
	.solution-index .solution-title .bgt{
		top:2vw;
    font-size: calc(3.4em + 3.0vw);
  }
}
@media screen and (max-width:320px) {
	.solution-index .solution-title {
	  padding: 2rem 0 3rem;
	}
	.solution-index .solution-title h1{
	  font-size: 22px;
	}
	.solution-index .solution-cat li a{
	  font-size: 10px;
	  padding:6px 8px;
	}
}
/*---------------------------------
s_makeaplanwrap
-----------------------------------*/
.projects_shingle #content {
    border-radius: 0rem 0rem 0 0;
    padding: 0px 0 30px;
}
#s_makeaplanwrap{
	padding-top: 90px;
	padding-bottom: 140px;
	background: #fff;
	border-radius: 3rem 3rem 0 0;
}
#s_makeaplanwrap .projects_list{
	width:100%;
  display: grid;
  grid-template-columns: repeat(3, 1fr);
	column-gap: 35px;
  row-gap: 60px;
	margin-bottom: 80px;
}
#s_makeaplanwrap .projects_list article a {
    display: block;
    position: relative;
}
#s_makeaplanwrap .projects_list article a .article_mv_img {
    position: relative;
    width: 100%;
    overflow: hidden;
}

#s_makeaplanwrap .projects_list article a .article_mv_img img {
    max-width: none;
  	width: 100%;
  	max-height: auto;
  	object-fit: cover;
  	object-position: 50% 65%;
  	font-family: 'object-fit: cover; object-position: 50% 65%;';
    will-change: transform;
    transition: 0.5s ease-out;
    transform: scale(1);
}
#s_makeaplanwrap .projects_list article a:hover .article_mv_img img{
	transform: scale(1.07);
}
#s_makeaplanwrap .projects_list article .desc {
    width: 100%;
    padding-top: 25px;
}
#s_makeaplanwrap .projects_list article .desc .label{
  margin-bottom: 20px;
}
#s_makeaplanwrap .projects_list article .desc .label a{
  display:inline-block;
  color:#000;
  font-size: 12px;
  padding:6px 10px;
  border: 1px solid #dadbd6;
  background: #f7f7f7;
  border-radius: 5px;
  transition: 0.3s ease-in-out;
}
#s_makeaplanwrap .projects_list article .desc .label a:hover{
  font-weight: bold;
  border: 1px solid #000;
  background: #fff;
}
#s_makeaplanwrap .projects_list article .desc .title a{
	line-height: 1.8;
    font-size: 18px;
    font-weight: 500;
    overflow: hidden;
    display: -webkit-box;
		color:#000;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
		transition: 0.5s ease-out;
}
#s_makeaplanwrap .projects_list article .desc .title a:hover{
	color:#1fbc99;
}
#s_makeaplanwrap .projects_list article a:hover .desc{
	bottom: 30%;
	transform: translateY(-30%);
}
#s_makeaplanwrap .projects_list article a:hover .desc .label{
	display:none;
}
#s_makeaplanwrap .projects_list article a:hover .desc .title{
	font-size: 1.8rem;
}

@media screen and (max-width: 860px){
	#s_makeaplanwrap .projects_list{
	  grid-template-columns: repeat(2, 1fr);
	}
}
@media screen and (max-width: 760px){
	#s_makeaplanwrap{
		padding-top: 60px;
		padding-bottom: 90px;
	}
}

@media screen and (max-width: 680px){
	#s_makeaplanwrap .projects_list{
	  grid-template-columns: repeat(1, 1fr);
	}
	#s_makeaplanwrap{
		padding-top: 40px;
		padding-bottom: 60px;
	}
}

/*---------------------------------

-----------------------------------*/
#s_makeaplanwrap .makeaplan_list{
	width:100%;
  display: grid;
  grid-template-columns: repeat(3, 1fr);
	column-gap: 35px;
  row-gap: 60px;
	margin-bottom: 80px;
}
#s_makeaplanwrap .makeaplan_list article a {
    display: block;
    position: relative;
}
#s_makeaplanwrap .makeaplan_list article a.aimg {
	display: block;
  width: 100%;
  height: auto;
  overflow: hidden;
  position: relative;
	aspect-ratio: 860 / 500;
}

#s_makeaplanwrap .makeaplan_list article a .article_mv_img {
	display: block;
  width: 100%;
  height: 100%;
  position: relative;
  top: 0;
  left: 0;
  z-index: 1;
	overflow: hidden;
  backface-visibility: hidden;
}

#s_makeaplanwrap .makeaplan_list article a .article_mv_img img {
  object-fit: cover;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1;
	transform: scale(1);
  transition: transform 0.5s ease;
  -webkit-backface-visibility: hidden;
}
#s_makeaplanwrap .makeaplan_list article a:hover .article_mv_img img{
	transform: scale(1.07);
}
#s_makeaplanwrap .makeaplan_list article .desc {
    width: 100%;
    padding-top: 25px;
}
#s_makeaplanwrap .makeaplan_list article .desc .label{
  margin-bottom: 20px;
}
#s_makeaplanwrap .makeaplan_list article .desc .label a{
  display:inline-block;
  color:#000;
  font-size: 12px;
  padding:6px 10px;
  border: 1px solid #dadbd6;
  background: #f7f7f7;
  border-radius: 5px;
  transition: 0.3s ease-in-out;
}
#s_makeaplanwrap .makeaplan_list article .desc .label a:hover{
  font-weight: bold;
  border: 1px solid #000;
  background: #fff;
}
#s_makeaplanwrap .makeaplan_list article .desc .title a{
	line-height: 1.8;
    font-size: 18px;
    font-weight: 500;
    overflow: hidden;
    display: -webkit-box;
		color:#000;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
		transition: 0.5s ease-out;
}
#s_makeaplanwrap .makeaplan_list article .desc .title a:hover{
	color:#1fbc99;
}
#s_makeaplanwrap .makeaplan_list article a:hover .desc{
	bottom: 30%;
	transform: translateY(-30%);
}
#s_makeaplanwrap .makeaplan_list article a:hover .desc .label{
	display:none;
}
#s_makeaplanwrap .makeaplan_list article a:hover .desc .title{
	font-size: 1.8rem;
}

@media screen and (max-width: 860px){
	#s_makeaplanwrap .makeaplan_list{
	  grid-template-columns: repeat(2, 1fr);
	}
}

@media screen and (max-width: 680px){
	#s_makeaplanwrap .makeaplan_list{
	  grid-template-columns: repeat(1, 1fr);
	}
}

/*---------------------------------
 shinglepage-title
-----------------------------------*/
#mmv .shinglepage-title{
  position: relative;
  padding:4rem 0 7rem;
  z-index:1;
}
#mmv .shinglepage-title h1{
  font-weight: bold;
  font-size: 28px;
  line-height: 1.6;
  letter-spacing: 0.2rem;
}
@media screen and (max-width:980px) {
}
@media screen and (max-width:860px) {

}
@media screen and (max-width:500px) {
  #mmv .shinglepage-title{
    padding:2rem 0 5rem;
  }
	#mmv .shinglepage-title h1{
	  font-size: 24px;
	}
}
@media screen and (max-width:320px) {
	#mmv .shinglepage-title h1{
	  font-size: 22px;
	}
}

/*---------------------------------
 makeaplan_shingle
-----------------------------------*/
.makeaplan_shingle #content,
.blog_shingle #content{
  border-radius: 0rem 0rem 0 0;
  padding: 0px 0 90px;
	border-top: 3px solid #233242;
}
@media screen and (max-width:760px) {
  .makeaplan_shingle #content,
	.blog_shingle #content{
    padding: 0px 0 60px;
  }
}
/*---------------------------------
s_blogwrap
-----------------------------------*/
#s_blogwrap{
	padding-top: 90px;
	padding-bottom: 140px;
	background: #fff;
	border-radius: 3rem 3rem 0 0;
}

#s_blogwrap .blog_list{
	width:100%;
  display: grid;
  grid-template-columns: repeat(3, 1fr);
	column-gap: 35px;
  row-gap: 60px;
	margin-bottom: 80px;
}
#s_blogwrap .blog_list article {
    display: block;
    position: relative;
}
#s_blogwrap .blog_list article .img {
  position: relative;
  width: 100%;
  height: 0;
  padding: 0 0 60%;
  margin-bottom: 30px;
}
#s_blogwrap .blog_list article .img span {
  display: block;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  overflow: hidden;
}
#s_blogwrap .blog_list article .img span img {
  object-fit: cover;
  object-position: 50% 60%;
  font-family: 'object-fit: cover; object-position: 50% 60%;';
  width: 100%;
  height: 100%;
  max-width: none;
  will-change: transform;
  transition: 0.5s ease-out;
  transform: scale(1);
}
#s_blogwrap .blog_list article .img a:hover span img{
	transform: scale(1.07);
}
#s_blogwrap .blog_list article .article_tag{
	width: 100%;
  display: flex;
  flex-wrap: wrap;
  column-gap: 12px;
  row-gap: 12px;
  margin-bottom: 20px;
}
#s_blogwrap .blog_list article .article_tag a{
  display:inline-block;
  color:#000;
  font-size: 10px;
  padding:3px 7px;
  border: 1px solid #dadbd6;
  background: #f7f7f7;
  border-radius: 5px;
  transition: 0.3s ease-in-out;
}
#s_blogwrap .blog_list article .article_tag a:hover{
  font-weight: bold;
  border: 1px solid #000;
  background: #fff;
}
#s_blogwrap .blog_list article .article_title{
	margin-bottom: 20px;
}
#s_blogwrap .blog_list article .article_title a{
	line-height: 1.8;
  font-size: 20px;
  font-weight: 500;
  overflow: hidden;
  display: -webkit-box;
	color:#000;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
	transition: 0.5s ease-out;
}
#s_blogwrap .blog_list article .article_title a:hover{
	color:#1fbc99;
}
#s_blogwrap .blog_list article .desc{
	line-height: 2.0;
  font-size: 14px;
  overflow: hidden;
  display: -webkit-box;
	color:#000;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
	transition: 0.5s ease-out;
}
.blog_shingle .entry-thumb img{
	display:block;
	width:100%;
}
.blog_shingle .yarpp-related{
	margin: 0;
}
@media screen and (max-width: 860px){
	#s_blogwrap .blog_list{
	  grid-template-columns: repeat(2, 1fr);
	}
}
@media screen and (max-width: 760px){
	#s_blogwrap{
		padding-top: 60px;
		padding-bottom: 90px;
	}
}

@media screen and (max-width: 680px){
	#s_blogwrap{
		padding-top: 40px;
		padding-bottom: 60px;
	}
	#s_blogwrap .blog_list{
	  grid-template-columns: repeat(1, 1fr);
	}
	#s_blogwrap .blog_list article .img {
	  margin-bottom: 20px;
	}
	#s_blogwrap .blog_list article .article_tag{
	  margin-bottom: 15px;
	}
	#s_blogwrap .blog_list article .article_title{
		margin-bottom: 15px;
	}
	#s_blogwrap .blog_list article .article_title a{
	  font-size: 18px;
	}
}
.article_post a{
  color:#1fbc99;
  font-weight: 500;
  padding-bottom: 2px;
  border-bottom: 1px dashed #1fbc99;
  transition: 0.3s ease-in-out;
}
.article_post a:hover{
  color:#019e97;
  border-bottom:none;
}
/*---------------------------------
 media
-----------------------------------*/
.mediaindex #s_info{
  margin-bottom: 100px;
}

/*-----*/
.jsScroll .img {
  -webkit-transition: 1s;
  display: block;
  overflow: hidden;
  position: relative;
  transition: 1s;
  z-index: 1;
}
.jsScroll .img .imgCover {
    -webkit-transform: skew(0) translate3d(-140%, 0, 0) scale3d(1, 0.1, 1);
    -webkit-transition: 1s;
    background: #f0f4f6;
    height: 110%;
    left: 0;
    position: absolute;
    top: -10px;
    transform: skew(0) translate3d(-140%, 0, 0) scale3d(1, 0.1, 1);
    transition: 1s;
    width: 300%;
    z-index: 2;
}
.jsScroll.jsReach .img .imgCover {
    -webkit-transform: skew(60deg) translate3d(-20%, 0, 0) scale3d(1, 1, 1);
    transform: skew(60deg) translate3d(-20%, 0, 0) scale3d(1, 1, 1);
}
.jsScroll.jsReach.jsSlide .img .imgCover {
    -webkit-transform: skewX(60deg) translateX(80%) scaleY(1);
    transform: skewX(60deg) translateX(80%) scaleY(1);
}

.jsScroll .img img {
    -webkit-transform: scale3d(1.2, 1.2, 1);
    opacity: 0;
    transform: scale3d(1.2, 1.2, 1);
}
.jsScroll.jsReach.jsSlide .img img {
    -webkit-transform: scale3d(1, 1, 1);
    -webkit-transition: 0.4s;
    opacity: 1;
    transform: scale3d(1, 1, 1);
    transition: 0.4s;
}
.jsScroll.jsReach.jsSlide .img a:hover span img{
	transform: scale(1.07);
}
.jsScroll .details {
    -webkit-transition: 1s;
    opacity: 0;
    transition: 1s;
}
.jsScroll.jsReach.jsSlide .details {
    opacity: 1;
}

@media screen and (max-width: 680px){
  .jsScroll .img img {
      -webkit-transform: scale3d(1.2, 1.2, 1);
      opacity: 1;
      transform: scale3d(1.2, 1.2, 1);
  }
  .jsScroll .img .imgCover{
    display:none;
  }
  .jsScroll .details {
      opacity: 1;
  }
}

/*---------------------------------
costomer
-----------------------------------*/
.s1_costomer .catch{
  text-align: center;
  font-size: 18px;
  margin-bottom: 60px;
}
.s1_costomer article{
	width:100%;
  border-top: 1px solid #ebe9e9;
}
.s1_costomer article a{
  display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	width:100%;
	flex-wrap: wrap;
  align-items: center;
  padding: 50px 50px;
  transition: 0.3s ease-in-out;
  color:#000;
}
.s1_costomer article a:hover{
  background: #f1f1f1;
}
.s1_costomer article:last-of-type{
  border-bottom: 1px solid #ebe9e9;
}
.s1_costomer article dl{
  width:calc(100% - 200px);
}
.s1_costomer article .btn{
  width:200px;
  text-align: right;
}
.s1_costomer article dl dt{
  margin-bottom: 25px;
}
.s1_costomer article dl dt .en{
  letter-spacing: 0rem;
  color: #e9eff4;
  font-weight: 900;
  font-size: calc(2.0em + 2.0vw);
  line-height: 1;
  transition: 0.3s ease-in-out;
}
.s1_costomer article a:hover dl dt .en{
  color: #fff;
}
.s1_costomer article dl dt h2{
  font-weight: bold;
  font-size: calc(0.8em + 0.8vw);
  line-height: 1;
  letter-spacing: 0.2rem;
  margin-top: -15px;
}
.s1_costomer article .btn span{
  position: relative;
  padding-right: 65px;
  color:#000;
  transition: 0.3s ease-in-out;
}
.s1_costomer article .btn span::before,
.s1_costomer article .btn span::after{
  content:"";
  position: absolute;
}
.s1_costomer article .btn span::before{
  width:50px;
  height:50px;
  top:-13px;
  right:0;
  background: #019e97;
  border-radius: 50px;
  transition: 0.3s ease-in-out;
}
.s1_costomer article .btn span::after{
  top:calc(50% - 4px);
  right:22px;
  width:7px;
  height:7px;
  border-top: 2px solid #fff;
  border-right: 2px solid #fff;
  transform: rotate(45deg);
}
.s1_costomer article a:hover .btn span{
  color:#02b2aa;
}
.s1_costomer article a:hover .btn span::before{
  background: #02b2aa;
}

@media screen and (max-width: 860px){
  .s1_costomer article a{
    padding: 50px 25px;
  }
}
@media screen and (max-width: 680px){
  .s1_costomer .catch{
    text-align: left;
    font-size: 16px;
    margin-bottom: 40px;
  }
  .s1_costomer .catch br{
    display: none;
  }
  .s1_costomer article dl{
    width:100%;
    margin-bottom: 25px;
  }
  .s1_costomer article .btn{
    width:100%;
    text-align: right;
  }
}
@media screen and (max-width: 480px){
  .s1_costomer article a{
    padding: 30px 15px;
  }
  .s1_costomer article dl dt h2{
    font-size: 18px;
    margin-top: -15px;
  }
  .s1_costomer article dl dd{
    font-size: 14px;
  }
}


/*---------------------------------
 s_privacy
-----------------------------------*/

#s_privacy{
  padding-bottom: 100px;
}
#s_privacy .inner-box{
  background: #fff;
  padding:30px 60px;
  box-sizing: border-box;
  margin-bottom: 60px;
}
#s_privacy .inner-box ul.num{
  padding-left:20px;
}
#s_privacy .inner-box ul.num li{
  list-style: decimal;
  margin-left: 0px;
  line-height:2.2;
}
#s_privacy .inner-box ul.num li a{
  color:#1fbc99;
}
#s_privacy .inner-box ul.num li a:hover{
  opacity: 0.8;
}

@media screen and (max-width:680px) {
  #s_privacy .inner-box{
    background: #fff;
    padding:15px 15px;
    box-sizing: border-box;
    margin-bottom: 30px;
  }
  #s_privacy .inner-box .hadding2{
    font-size: 1.8rem;
  }
}


/*---------------------------------
 sitemap
-----------------------------------*/

#s_sitemap{
  padding-bottom: 100px;
}
#s_sitemap .inner-box{
  background: #fff;
  padding:30px 60px;
  box-sizing: border-box;
  margin-bottom: 60px;
  display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	width:100%;
  justify-content: space-between;
}
#s_sitemap .inner-box .l{
  width:48%;
}
#s_sitemap .inner-box .r{
  width:48%;
}

#s_sitemap .inner-box .site-col{
  margin-bottom: 25px;
}
#s_sitemap .inner-box .site-col a{
  color:#000;
  transition: 0.2s ease-in-out;
}
#s_sitemap .inner-box .site-col a:hover{
  color:#1fbc99;
}
#s_sitemap .inner-box .site-col .h{
  position: relative;
  padding-left: 20px;
  line-height: 2.0;
  font-weight: 500;
  margin-bottom: 8px;
}
#s_sitemap .inner-box .site-col .h::before{
  content: "";
  position: absolute;
  top:0;
  left:-1px;
  width:2px;
  height:100%;
  background: #1fbc99;
}
#s_sitemap .inner-box .site-col .site-nav{
  border-left: 1px solid #dfdfdf;
}
#s_sitemap .inner-box .site-col .site-nav li{
  padding-left: 20px;
  line-height: 2.0;
}
#s_sitemap .inner-box .site-col .site-nav li.child{
  position: relative;
  padding-left: 40px;
  line-height: 2.0;
}
#s_sitemap .inner-box .site-col .site-nav li.child::before{
  content: "";
  position: absolute;
  top:calc(50% - 0px);
  left:20px;
  width:5px;
  height:1px;
  background: #1fbc99;
}
#s_sitemap .inner-box .site-col a[target="_blank"]{
	padding-right: 17px;
	position: relative;
}
#s_sitemap .inner-box .site-col a[target="_blank"]:before,
#s_sitemap .inner-box .site-col a[target="_blank"]:after{
	content: "";
	display: block;
	width: 6px;
	height: 5px;
	border: 1px solid rgba(0,0,0,0.4);
	position: absolute;
}
#s_sitemap .inner-box .site-col a[target="_blank"]:before{
	top: calc(50% - 4px);
	right: 0;
}
#s_sitemap .inner-box .site-col a[target="_blank"]:after{
	top: calc(50% - 2px);
	right: 2px;
}


@media screen and (max-width:860px) {
  #s_sitemap .inner-box{
    padding:30px 30px;
  }
}


@media screen and (max-width:680px) {
  #s_sitemap .inner-box{
    background: #fff;
    padding:15px 15px;
    box-sizing: border-box;
    margin-bottom: 30px;
    flex-wrap: wrap;
  }
  #s_sitemap .inner-box .l{
    width:100%;
  }
  #s_sitemap .inner-box .r{
    width:100%;
  }
}

/*---------------------------------

-----------------------------------*/
