img {
	width: 100%;
  }
  p {
	line-height: 1.8;
	font-size: 1.8rem;
  }
  @media screen and (max-width:768px){
	p {
	  line-height: 1.8;
	  font-size: 1.6rem;
	}
  }

/* メディアクエリ設定 */
/* 最大幅1180pxにプラスして、左右余白28px追加 */
@media screen and (max-width:1236px) {
}
/* 中間幅980pxにプラスして、左右余白28px追加 */
@media screen and (max-width:1036px) {
}
	/* 調整用 */
	@media screen and (max-width:980px) {
	}
/* タブレット小 */
@media screen and (max-width:768px) {
}
	/* タブレット調整用 */
	@media screen and (max-width:600px) {
	}
/* スマホ */
@media screen and (max-width:390px) {
	
}
/* 見出し設定 */
.bm-content h1 {
	font-size: 4.8rem;
    line-height: 140%;
}
.bm-content h2 {
	font-size: 3.2rem;
	line-height: 140%;
}
.bm-content h3 {
	font-size: 2.8rem;
	line-height: 140%;
}
	@media screen and (max-width:1036px) {
		.bm-content h1 {
			font-size: 4.2rem;
		}
	}
	@media screen and (max-width:980px) {
		.bm-content h1 {
			font-size: 3.8rem;
		}
		.bm-content h2 {
			font-size: 2.8rem;
		}
		.bm-content h3 {
			font-size: 2.6rem;
		}
	}
	@media screen and (max-width:768px) {
		.bm-content h1 {
			font-size: 2.8rem;
		}
		.bm-content h2 {
			font-size: 2.4rem;
		}
		.bm-content h3 {
			font-size: 2.0rem;
		}
	}
/* リード文 */
p.lead-a {
	font-size: 2.0rem;
	line-height: 180%;
}
p.lead-b {
	font-size: 1.8rem;
	line-height: 160%;
}
	.fw-b {
		font-weight: bold;
	}
	.fc-01 {
		color: #ff4b36;
	}
	.fc-02 {
		color: #5186ec;
	}
	.underline {
	  background: linear-gradient(transparent 77%,#F6D019 0%);
	  display: inline;
  }

  .attention{
	font-size: 1.2rem;
  }
/* レウアウト */
.container-max {
	width: 100%;
}
.container-large {
	max-width: 1180px;
	margin: 0 auto;
}
.container-small {
	max-width: 980px;
	margin: 0 auto;
}
	@media screen and (max-width:1236px) {
		.container-large {
			max-width: 1180px;
			margin: 0 28px;
		}
	}
	@media screen and (max-width:1036px) {
		.container-small {
			max-width: 980px;
			margin: 0 28px;
		}
	}
	@media screen and (max-width:768px) {
		.container-large {
			max-width: 88%;
			margin: 0 auto;
		}
		.container-small {
			max-width: 88%;
			margin: 0 auto;
		}
		
	}
	.flex-content {
		display: flex;
	}
	/* 2column */
	.container-2col{
		display: flex;
		align-items: stretch;
		gap: 28px;
		justify-content: space-between;
	  }
		.container-2col > div{
		  width: 50%;
		  background: #ccc;
		  border-radius: 7px;
		}
	  
	@media screen and (max-width:768px) {
		.container-2col{
			flex-wrap: wrap;
		}
		.container-2col > div{
			width: 100%;
		}
	}

	/* レスポンシブ表示非表示 */
	@media screen and (min-width:769px) {
		.hidden-pc {
			display:none!important;
		}
	}
	@media screen and (max-width:768px) {
		.hidden-sp {
			display:none!important;
		}
	}
	.pc-img{
			display: block;
		}
	.sp-img{
			display: none;
		}
	@media screen and (max-width:768px) {
		.pc-img{
			display: none;
		}
		.sp-img{
			display: block;
		}
	}

	.tb-br{
		display: none;
	}

	@media screen and (max-width:980px) {
		.tb-br{
			display: block;
		}
		.tb-br-none{
			display: none;
		}
	}
	
	@media screen and (max-width:768px) {
		.pc-br{
			display: none;
		}
		.tb-br{
			display: none;
		}
		.tb-br-none{
			display: block;
		}
		.sp-br{
			display: block;
		}
	}
	.flex-box{
		display: flex;
	}
	.al-c {
		text-align: center;
	}
	.al-l {
		text-align: left;
	}
	.al-r {
		text-align: right;
	}

	/* parts */
    /* 機能アイコンの設定 */
    .headicon {
		background: #ccc;
		width: fit-content;
		padding: 13px 30px 11px;
		line-height: 1;
		border-radius: 9999px;
		font-size: 2.8rem;
		font-weight: bold;
		margin: 0px auto 1.4rem;
	  }
	  .headicon-frame  {
	   display: inline-block;
		padding: 10px 30px;
		line-height: 1;
		border-radius: 9999px;
		font-size: 2.4rem;
		font-weight: bold;
		margin: 0px auto 1.4rem;
		border: 4px solid #ccc;
		text-align: center;
	  }
		  @media screen and (max-width:768px){
				.headicon {
					font-size: 2.2rem;
					padding: 13px 24px 11px;
				}
				.headicon-frame {
					border: 2px solid #ccc;
					font-size: 2.0rem;
				}
		  }
		.headicon-frame.col8 {
			color: #29486d;
			border-color: #29486d;
		}
		.title-bg-01 {
			height: 70px;
			border-radius: 9999px;
			width: 100%;
			background-color: #ccc;
			text-align: center;
			display: flex;
			align-items: center;
			justify-content: center;
		}
		  
	.banner-link{
		width: 100%;
	}
	.banner-link img{
		-webkit-filter: drop-shadow(2px 2px 1px rgba(0, 0, 0, 0.2));
		-moz-filter: drop-shadow(2px 2px 1px rgba(0, 0, 0, 0.2));
		-ms-filter: drop-shadow(2px 2px 1px rgba(0, 0, 0, 0.2));
		filter: drop-shadow(2px 2px 1px rgba(0, 0, 0, 0.2));
		margin-bottom: 0.7rem;
	}
		.banner-link .t-link{
			text-align: left;
			text-decoration: underline;
			text-underline-offset: 2px;
			font-size: 1.2rem;
		}
		@media screen and (max-width:768px) {
		.banner-link{
			width: 76%;
			margin: 0px auto;
		}
		}
		@media screen and (max-width:600px) {
		.banner-link{
			width: 100%;
		}
		}
  
.support{
	display: flex;
	justify-content: space-between;
	align-items: center;
	margin-top: 4.2rem;
  }
  .support .text{
	width: 57%;
  }
  .support .image{
	width: 40%;
  }
  .support .text h3{
	font-size: 3.8rem;
	margin-bottom: 14px;
  }
  .support .text p{
	font-size: 2.0rem;
	line-height: 1.8;
  }
  @media screen and (max-width: 980px) {
	.support .text h3{
	  font-size: 3.0rem;
	}
  }
  @media screen and (max-width: 768px) {
	.support{
		margin: 5.6rem auto 5.6rem;
		flex-flow:column;
	}
	.support .text{
		width: fit-content;
		margin: 0 auto;
	}
	.support .image{
		width: 64%;
		margin: 14px auto 0;
	}
	.support .text h3{
	  font-size: 2.4rem;
	  margin-bottom: 14px;
	}
	.support .text p{
		font-size: 1.6rem;
		line-height: 1.6;
	}
  }
  
  .faq{
	margin-top: 70px;
	margin-bottom: 4.2rem;
  }
  .faq h3{
	font-size: 3.2rem;
	font-weight: bold;
	line-height: 1;
	border-bottom: 4px solid #ccc;
	text-align: center;
	padding-bottom: 14px;
  }
  .faq .box{
	width: 85%;
	border-bottom: 1px solid #ccc;
	padding-bottom: 14px;
	margin: 42px auto 0;
  }
  .faq .box .question{
	font-size: 2.4rem;
	color: #ccc;
	font-weight: bold;
	margin-bottom: 14px;
  }
  .faq .box .answer{
	font-size: 2.0rem;
	line-height: 1.6;
  }
  @media screen and (max-width: 768px) {
	.faq{
		margin-top: 56px;
	}
	.faq h3{
		font-size: 2.2rem;
		border-bottom: 3px solid #ccc;
	}
	.faq .box{
		width: 90%;
		margin: 28px auto 0;
	}
	.faq .box .question{
		font-size: 1.8rem;
		margin-bottom: 7px;
	}
	.faq .box .answer{
		font-size: 1.6rem;
	}
  }
    /* contact */
    .contactcontent {
		background-color: #5186ec;
		padding-top: 4.2rem;
		padding-bottom: 4.2rem;
		overflow: hidden;
	  }
		.contactcontent h2 {
		  color: #fff;
		  text-align: center;
		}
		.contactcontent-inner {
		  width: 980px;
		  background-color: #fff;
		  border-radius: 28px;
		  text-align: center;
		  margin:2.1rem auto;
		  padding: 4.2rem;
		  box-sizing: border-box;
		  background-image: url(../../../lib/images/contact/contact-bg.svg);
		  background-repeat: no-repeat;
		  background-position: center 90px;
		  background-size: contain;
		}
		  .contactcontent-inner .box{
			border-bottom: 1px solid #ccc;
			padding-bottom: 4.2rem;
		  }
		  .contactcontent-inner .box .image{
			width: 460px;
			height: auto;
			margin:0px auto 2.8rem;
		  }
		.to-demo-wrapper {
			position: relative;
			width: 620px;
			margin: 0px auto -54px;
		  }
		 a.to-demo{
			display: block;
			border: 2px solid #5186ec;
			border-radius: 24px;
			width: 620px;
			height: 140px;
			display: flex;
			align-items: center;
			justify-content: center;
			box-sizing: border-box;
			background-color: #fff;
			-webkit-filter: drop-shadow(2px 2px 1px rgba(0, 0, 0, 0.2));
			-moz-filter: drop-shadow(2px 2px 1px rgba(0, 0, 0, 0.2));
			-ms-filter: drop-shadow(2px 2px 1px rgba(0, 0, 0, 0.2));
			filter: drop-shadow(2px 2px 1px rgba(0, 0, 0, 0.2));
		  }
		  a.to-demo p{
			font-size: 3.8rem;
			font-weight: bold;
			line-height: 1.2;
			color: #5186ec;
		  }
			a.to-demo p span{
			font-size: 2.8rem;
			display: inline-block;
			color: #5186ec;
		  }
			.to-demo-wrapper .tag{
			  position: relative;
			  top: -160px;
			  left: 88%;
			  color: #fff;
			  font-size: 2.0rem;
			  background-color: #908173;
			  height: 84px;
			  width: 84px;
			  display: flex;
			  align-items: center;
			  justify-content: center;
			  border-radius: 9999px;
			  font-weight: bold;
			}
			a.to-mail{
			color: #fff;
			background-color: #ff4b36;
			border-radius: 24px;
			width: 620px;
			height: 140px;
			margin: 0px auto;
			font-weight: bold;
			display: flex;
			align-items: center;
			justify-content: center;
			box-sizing: border-box;
			-webkit-filter: drop-shadow(2px 2px 1px rgba(0, 0, 0, 0.2));
			-moz-filter: drop-shadow(2px 2px 1px rgba(0, 0, 0, 0.2));
			-ms-filter: drop-shadow(2px 2px 1px rgba(0, 0, 0, 0.2));
			filter: drop-shadow(2px 2px 1px rgba(0, 0, 0, 0.2));
		  }
		 a.to-mail p{
			font-size: 3.8rem;
			font-weight: bold;
			line-height: 1.2;
			color: #fff;
		  }
		  a.to-mail p span{
			font-size: 2.8rem;
			display: inline-block;
			color: #fff;
		  }
			a.to-mail p span.material-icons-round {
			  font-size: 5.2rem;
			  display: inline-flex;
			  vertical-align:middle;
			}
		  .contactcontent-inner .to-tel{
			margin-top: 2.8rem;
		  }
			.contactcontent-inner .to-tel p{
			  font-size: 2.0rem;
			  font-weight: bold;
			}
			.contactcontent-inner .to-tel a{
			  color: #5186ec;
			  font-size: 5.8rem;
			  font-weight: bold;
			  margin-bottom: 1.0rem;
			}
			.contactcontent-inner .to-tel a span.material-icons-round {
			  font-size: 6.4rem;
			  display: inline-flex;
			  vertical-align:middle;
			}
			  .contactcontent-inner .to-tel p.bussinesstime{
				font-size: 1.6rem;
				font-weight: normal;
			  }
  @media screen and (max-width:1180px) {
	.contactcontent-inner{
	  width: 88%;
	  margin: 1.4rem auto;
	}
  }
  @media screen and (max-width:900px) {
	.to-demo-wrapper {
		width: 90%;
		margin:0px auto;
		margin-bottom: -64px;
	}
	a.to-demo{
		width: 100%;
	}
	a.to-mail{
		width: 90%;
	}
	}
  @media screen and (max-width:768px) {
	.contactcontent {
	  padding-top: 2.1rem;
	  padding-bottom: 4.2rem;
	}
	.contactcontent-inner .box{
	  padding-bottom: 2.8rem;
	}
	.contactcontent-inner .box .image{
	  width: 88%;
	  height: auto;
	  margin:1.4rem auto 0rem;
	}
	.contactcontent-inner .box .to-demo-wrapper{
	  width: 100%;
	}
	.contactcontent-inner .box a.to-demo{
	  width: 100%;
	}
	  .contactcontent-inner .box a.to-demo p{
		font-size: 3.4rem;
		margin-top: -14px;
	  }
	  .contactcontent-inner .box a.to-demo p span{
		font-size: 2.2rem;
	  }
	.contactcontent-inner .box .to-demo-wrapper .tag{
	  left: 88%;
	  top: -150px;
	}
	.contactcontent-inner > div a.to-mail{
	  width: 100%;
	}
	  .contactcontent-inner > div a.to-mail p{
		font-size: 3.4rem;
	  }
	  .contactcontent-inner > div a.to-mail p span{
		font-size: 2.2rem;
	  }
	  .contactcontent-inner .to-tel p{
		font-size: 1.6rem;
	  }
	  .contactcontent-inner .to-tel a{
		font-size: 5.2rem;
	  }
	  .contactcontent-inner .to-tel a span.material-icons-round{
		font-size: 5.8rem;
	  }
  }

  @media screen and (max-width:600px) {
	.contactcontent-inner{
	  max-width: 92%;
	}
	.contactcontent-inner{
	  padding: 1.4rem 2.8rem;
	}
	.contactcontent-inner .box .to-demo-wrapper{
		margin-bottom: -4.2rem;
	}
	.contactcontent-inner .box a.to-demo {
	  height: 112px;
	  border-radius: 14px;
	}
	.contactcontent-inner .box a.to-demo p{
	  font-size: 2.6rem;
	  padding-top: 1.4rem;
	}
	.contactcontent-inner .box a.to-demo p span{
	  font-size: 1.8rem;
	}
	.contactcontent-inner > div a.to-mail p{
	  font-size: 2.2rem;
	  padding-top: 0.7rem;
	}
	.contactcontent-inner .box .to-demo-wrapper .tag{
	  width: 64px;
	  height: 64px;
	  font-size: 2.0rem;
	  top: -120px;
	}
	.contactcontent-inner > div a.to-mail p span{
	  font-size: 1.8rem;
	}
	.contactcontent-inner > div a.to-mail{
	  height: 112px;
	  border-radius: 14px;
	}
	.contactcontent-inner > div a.to-mail p span.material-icons-round{
	  font-size: 3.2rem;
	}
	.contactcontent-inner .to-tel{
	  margin-top: 1.4rem;
	}
	.contactcontent-inner .to-tel a{
	  font-size: 3.0rem;
	}
	.contactcontent-inner .to-tel a span.material-icons-round{
	  font-size: 3.6rem;
	}
	.contactcontent-inner .to-tel p.bussinesstime{
	  font-size: 1.4rem;
	  line-height: 1.4;
	}
  }

  @media screen and (max-width:390px) {
	.func-banners a.box .image{
		width: 42%;
	}
	.contactcontent-inner .box a.to-demo{
		height: 98px;
	}
	.contactcontent-inner > div a.to-mail{
		height: 98px;
	}
	.contactcontent-inner .box .to-demo-wrapper .tag{
	  width: 50px;
	  height: 50px;
	  font-size: 1.6rem;
	  top: -120px;
	}
	.contactcontent-inner .to-tel a{
	  font-size: 2.8rem;
	}
  }
