@charset "utf-8";

html{scroll-behavior: smooth;}
h2.section-title{display:none;}

/* reset
---------------------------------------------------------------------------- */
.freeTextArea h3,
.page-list ul,
.page-list ul li,
.freeTextArea td,
.freeTextArea th  {
  border: none;
}
.page-list ul li a::after{
	display: none;
}
.page-list ul li a:hover {
  background: none;
}

/* common
---------------------------------------------------------------------------- */
html {font-size: 62.5%;}
.template-fp{font-family: 'Zen Old Mincho', serif;}
.template-fp h2,
.template-fp h3,
.template-fp h4,
.template-fp h5,
.template-fp p{
  margin:0;
  padding:0;
  border-radius:0;
  line-height: 1.5em;
  letter-spacing: 0.05em;
  font-weight: 500;
  border: none;
  font-size: 1.6rem;
  max-width: 100%;
}
.template-fp a{text-decoration: none;display: block;}
.template-fp img{width:100%;height:auto;display:block;}
.template-fp .span-br{display: inline-block;}
.template-fp .pc-none{display: none;}
.template-fp .sp-none{display: block;}
  /****-1024px****/
  @media screen and (max-width:1024px){html {font-size:55%;}}
   /*****768px****/
  @media screen and (max-width: 768px) {html {font-size: 50%;}}
  /*****560px****/
  @media screen and (max-width: 560px) {
    .template-fp .pc-none{display: block;}
    .template-fp .sp-none{display: none;}
  }



/* cw
---------------------------------------------------------------------------- */
.parts-fp .cw{
    padding:8rem 0;
}
.parts-fp .bg-gray{
	background-color: #F3F3F3;
}
.parts-fp .cw-flex{
	display:flex;
	justify-content:space-between;
	align-items:center;
	flex-wrap:wrap;
}
.parts-fp .cw-flex .-w48{width:48%;}

.parts-fp .max-w520{
	max-width:52rem;
	margin-left:auto;
	margin-right:auto;
}

/****font-size****/
.parts-fp .text-18-1{font-size: 1.8rem;}
.parts-fp .text-18-2{font-size: 1.8rem; font-weight: bold;}
.parts-fp .text-18-3{font-size: 1.8rem; font-weight: bold; color: #fff;}
.parts-fp .text-20-1{font-size: 2rem;}
.parts-fp .text-20-2{font-size: 2rem;font-weight: bold;}
.parts-fp .text-20-3{font-size: 2rem; font-weight: bold; color: #fff;}

	/**************-560px***************/
	@media screen and (max-width: 560px) {
	.parts-fp .text-18-1,.parts-fp .text-18-2,.parts-fp .text-18-3{font-size: 1.7rem;}
  .parts-fp .text-20-1,.parts-fp .text-20-2,.parts-fp .text-20-3{font-size: 1.9rem;}
	}

/****margin/padding****/
.parts-fp .m-t120{margin-top:12rem;}
.parts-fp .m-t80{margin-top:8rem;}
.parts-fp .m-t60{margin-top:6rem;}
.parts-fp .m-t50{margin-top:5rem;}
.parts-fp .m-t40{margin-top:4rem;}
.parts-fp .m-t30{margin-top:3rem;}
.parts-fp .p-lr50{padding-left:5rem;padding-right:5rem;box-sizing:border-box;}

	/**************-768px***************/
	@media screen and (max-width: 768px) {
		.parts-fp .m-t120{margin-top:10%;}
		.parts-fp .m-t80{margin-top:8%;}
		.parts-fp .m-t60{margin-top:6%;}
    .parts-fp .m-t50{margin-top:4rem;}
		.parts-fp .m-t40{margin-top:3rem;}
		.parts-fp .m-t30{margin-top:2rem;}
		.parts-fp .p-lr50{padding-left:3rem;padding-right:3rem;box-sizing:border-box;}
	}
	/**************-560px***************/
	@media screen and (max-width: 560px) {
		.parts-fp .p-lr50{padding-left: 1.5rem;padding-right: 1.5rem;}
		.parts-fp .cw-flex .-w48{width:100%;margin-top: 2rem;}
	}

/****txt****/
.parts-fp span.color-txt{
    color:var(--sub-color);
    font-size:1.8rem;
    font-weight:bold;
}

.parts-fp .note-c{
    text-align:center;
}

.parts-fp span.marker-txt{
    background: linear-gradient(transparent 60%, var(--marker) 0%);
}
.parts-fp .note-txt{
	text-indent: -1em;
	padding-left: 1em;
	color:var(--gray-color);
	font-size: 1.5rem;
}
.parts-fp .en-txt{
	font-family:var(--en-txt);
}
.parts-fp .gold-txt{
	color:var(--sub-color);
	font-weight: bold;
}
.parts-fp .navy-txt{
	color:var(--main-color);
	font-weight: bold;
}

/**************-560px***************/
	@media screen and (max-width: 560px) {
		.parts-fp .note-c{text-align:left;}
	}

/****list****/
.parts-fp ul.list-type01{
	border: none;
}
.parts-fp ul.list-type01 li{
	margin-bottom: 0.5rem;
	position: relative;
	padding-left: 1.5em;
	border: none;
	line-height: 1.3em;
}

.parts-fp ul.list-type01 li::after{
	position:absolute;
	content:'';
	width:0.5rem;
	height: 0.5rem;
	background-color: var(--sub-color);
	border-radius: 50%;
	top: 0.6em;
	left: 0.4em;
}
.parts-fp ul.list-type01 a{
	display: inline-block;
	text-decoration: underline;
	padding: 0;
	color: var(--sub-color);
}

.parts-fp ul.list-type01 a:hover{
	opacity:0.7;
}

.parts-fp .common-contact{
	margin-top: 5rem;
	margin-bottom: 5rem;
}


/****box****/
.parts-fp .box-type01{
	background: #F3F3F3;
	padding-top: 3rem;
	padding-bottom: 4rem;
	box-sizing: border-box;
}
#page-link01 .box-type01.p-lr50{
	padding-bottom: 0;
}
.parts-fp .box-type02{
	background:#fff;
	box-sizing: border-box;
	border-radius:5px;
	padding: 3rem;
}
	/**************-560px***************/
	@media screen and (max-width: 560px) {
		.parts-fp .box-type01{
			padding-top: 3rem;
			padding-bottom:3rem;
		}
		.parts-fp .box-type02{
			padding: 2rem;
		}
	}
/****link****/
.parts-fp a.link-type01{
	background:var(--sub-color);
	width: auto;
	display: inline-block;
	margin: 1rem 0 0;
	text-align:center;
	padding: 0rem;
	box-sizing:border-box;
	transition:.4s;
	border: 2px solid var(--sub-color);
	padding: 0.8rem 2.4rem;
}

.parts-fp a.link-type01 p{
    color:#fff;
    font-size: 1.6rem!important;
    padding-left: 3rem;
    font-weight:bold;
    position: relative;
    transition:.4s;
    margin: 0!important;
}

.parts-fp a.link-type01 p::before,
.parts-fp a.link-type01 p::after{
    position: absolute;
    top: 50%;
    left: 0;
    content:'';
    transform:translateY(-50%);
}

.parts-fp a.link-type01 p::before{
    width: 2rem;
    height: 2rem;
    background: #fff;
    -webkit-border-radius: 50%;
    border-radius: 50%;
    transition:.4s;
}

.parts-fp a.link-type01 p::after{
    left: 0.8rem;
    width: 0;
    height: 0;
    box-sizing: border-box;
    border: 0.4rem solid transparent;
    border-left: 0.5rem solid  var(--sub-color);
    transition: .4s;
}

.parts-fp a.link-type01-2{
	padding: 2rem 2.4rem;
	width: 31.5%;
	background:var(--main-color);
	border: 2px solid var(--main-color);
}

.parts-fp a.link-type01-2 p{
    font-size: 2rem!important;
    padding-left: 0.5rem;
}

.parts-fp a.link-type01-2 p::after{
    border-left: 0.5rem solid  var(--main-color);
}

.parts-fp a.link-type01:hover{background:#fff;}
.parts-fp a.link-type01:hover p{color:var(--sub-color);}

.parts-fp a.link-type01:hover p::before{background: var(--sub-color);}
.parts-fp a.link-type01:hover p::after{border-left: 0.5rem solid #fff;}

.parts-fp a.link-type01-2:hover p{color:var(--main-color);}
.parts-fp a.link-type01-2:hover p::before{background: var(--main-color);}

  /****-1120px****/
  @media screen and (max-width:1120px){
  	.parts-fp .cw-inner{
  		margin-left: auto;
  		margin-right: auto;
  	}
  }

  /*****768px****/
  @media screen and (max-width: 768px) {
  	.parts-fp .cw{
  		padding:6rem 0;
  	}
  }

  /*****560px****/
  @media screen and (max-width: 560px) {
  	.parts-fp .cw{
  		padding:4rem 0;
  	}
  	.parts-fp .common-contact{
  		margin-bottom: 6rem;
  	}
	  .parts-fp a.link-type01-2{
  		padding: 2rem 2.4rem;
  		width: 100%;
  	}
  }



/* mv-wrapper
---------------------------------------------------------------------------- */
.parts-fp .mv-text{
	text-align: left;
	margin: 0 auto 4rem;
	padding-bottom: 3rem;
	width: 100%;
	display: flex;
	justify-content: flex-start;
	align-items: center;
	position:relative;
	flex-wrap: wrap;
}

.parts-fp .mv-text::before{
  position:absolute;
  content:'';
  width: 0.9rem;
  height: 0.9rem;
  background:#2F4254;
  bottom:-0.4rem;
  left:0;
  border-radius:50%;
}
.parts-fp .mv-text::after{
  position:absolute;
  content:'';
  width:16rem;
  border-bottom: 1px solid #2F4254;
  bottom:0;
  left:0;
}
.parts-fp .mv-text h2{
	text-align:center;
	font-size: 4.8rem;
	font-weight: 400;
	color: #2F4254;
	position:relative;
	font-family: var(--en-txt);
	display: inline-block;
	padding-right: 3rem;
}
.parts-fp .mv-text h2:first-letter{
	color: var(--sub-color);
 }
.parts-fp .mv-text p{
    font-size: 1.8rem;
    color: var(--gray-color);
    display: inline-block;
    font-weight: bold;
}
.parts-fp .mv-wrap.mv2{
    margin-top: 15rem;
    margin-bottom: 4rem;
}
.parts-fp .mv-text .plan-ttl{
    font-size: 4rem;
    font-family: 'Zen Old Mincho', serif;
    text-align: left;
    font-weight:bold;
}
.parts-fp .mv-text .plan-ttl:first-letter{
	color: var(--main-color);
 }

.parts-fp ul.page-link{
	display:flex;
	justify-content:flex-start;
	align-items:center;
	flex-wrap: wrap;
	border: none;
	margin-bottom: 3rem;
}

.parts-fp ul.page-link li{
  	border: none;
  	margin-bottom: 1rem;
}

.parts-fp ul.page-link li a{
  padding:0;
}

.parts-fp ul.page-link li a:hover{
  background:none;
  transform:translateY(2px);
}

.parts-fp ul.page-link li a p{
  font-weight: 500;
  position: relative;
  font-size: 1.6rem;
  padding:0 3rem;
  transition:.4s;
}

.parts-fp ul.page-link li a p::before,
.parts-fp ul.page-link li a p::after{
    position: absolute;
    top: 50%;
    left: 0;
    content:'';
    transform:translateY(-50%);
}

.parts-fp ul.page-link li a p::before{
    width: 2rem;
    height: 2rem;
    background: var(--main-color);
    -webkit-border-radius: 50%;
    border-radius: 50%;
    transition:.4s;
}

.parts-fp ul.page-link li a p::after{
    left: 0.8rem;
    width: 0;
    height: 0;
    box-sizing: border-box;
    border: 0.4rem solid transparent;
    border-left: 0.5rem solid #fff;
}

.parts-fp ul.page-link li a:hover p::before{
    background: var(--sub-color);
}

.parts-fp .mv-img{
	display:flex;
	justify-content:center;
	align-items:center;
}

.parts-fp .mv-img img{
  width:50%;
  height: 24rem;
  object-fit: cover;
  font-family: 'object-fit: cover;';
}

.parts-fp .mv-img01 img{
  width:100%;
}


  /****-1120px****/
  @media screen and (max-width:1120px){
  	.parts-fp .mv-img img{
  	  height: 25vw;
  	}
  }

  /*****768px****/
  @media screen and (max-width: 768px) {
  }

  /*****560px****/
  @media screen and (max-width: 560px) {
    .parts-fp .mv-wrap.mv2{
        margin-top: 6rem;
        margin-bottom: 2rem;
    }
    .parts-fp .mv-text h2{
      font-size: 4.3rem;
      padding-right: 2rem;
    }
    .parts-fp .mv-text .plan-ttl{
        font-size: 3rem;
    }
  }


/* title-box01
---------------------------------------------------------------------------- */
.parts-fp .title-box01{
    margin-bottom: 4rem;
}

.parts-fp .title-box01 h3{
    font-size:3.2rem;
    font-weight:bold;
    position:relative;
    padding-left:6rem;
    text-align: left;
    color: var(--main-color);
}

.parts-fp .title-box01 h3 .s-txt{
    font-size: 2.6rem;
    display: inline-block;
}

.parts-fp .title-box01 h3::before{
  position:absolute;
  content:'';
  width:4rem;
  border-bottom: 1px solid var(--main-color);
  top:50%;
  left:0;
  transform:translateY(-50%);
}

.parts-fp .title-box02{
    margin: 3rem 0 1rem;
    font-size: 1.8rem;
    font-weight:bold;
    position:relative;
    background: none;
    padding-left: 2.4rem;
    color: var(--main-color);
}

.parts-fp .title-box02::before{
  position:absolute;
  content:'';
  width: 1.6rem;
  border-bottom:2px solid var(--main-color);
  top:50%;
  left:0;
  transform:translateY(-50%);
}

.parts-fp .title-box03{
    font-size: 2.2rem;
    font-weight:bold;
    background-color: var(--main-color);
	color:#fff;
	text-align:center;
	padding:1rem;
}
.parts-fp .title-box03 span{
	background:#fff;
	border-radius:4px;
	color: var(--sub-color);
	font-size:1.8rem;
	padding:4px 2rem;
	margin-left:3rem;
	display: inline-block;
}

.parts-fp .title-box04{
    font-size: 1.8rem;
    font-weight:bold;
    align-items: center;
    display:flex;
    margin-bottom: 3rem;
    padding-bottom: 2rem;
    border-bottom: 2px solid var(--border-color-fp);
}
.parts-fp .title-box04 .-tag{
	background: var(--main-color);
	border-radius: 4px;
	color:#fff;
	font-size: 1.8rem;
	padding: 4px 2rem;
	margin-right: 1rem;
	min-width: fit-content;
}
.parts-fp .title-box04 .-arrow{
	position:relative;
	padding-right: 3rem;
	font-weight: bold;
	min-width: fit-content;
}
.parts-fp .title-box04 .-arrow::before{
		position:absolute;
		content:'';
		border-width: 0.7rem 0 0.7rem 1.2rem;
		border-color:transparent transparent transparent var(--main-color);
		border-style:solid;
		right:0;
		top:50%;
		transform: translate(-50%,-50%);
}

.parts-fp .title-box05{
    border-bottom: 3px solid var(--main-color);
    position: relative;
    margin-bottom: 2rem;
    padding-bottom: 1rem;
}

.parts-fp .title-box05 p{
    font-size: 2.2rem;
    font-weight: bold;
    color: var(--main-color);
    padding-left: 4rem;
    position: relative;
}
.parts-fp .title-box05 p span{
    font-size: 1.8rem;
    font-weight: bold;
    background-color: var(--main-color);
    width:3.2rem;
    height:3.2rem;
    color:#fff;
    border-radius:50%;
    display: flex;
    justify-content: center;
    align-items: center;
    position: absolute;
    left: 0;
    top: 50%;
    transform: translateY(-50%);
}

  /****-1120px****/
  @media screen and (max-width:1120px){
  }

  /*****768px****/
  @media screen and (max-width: 768px) {
  }

  /*****560px****/
  @media screen and (max-width: 560px) {
  	.parts-fp .title-box01 h3{
  		font-size:2.4rem;
  		padding-left: 3rem;
  	}
    .parts-fp .title-box01 h3 .s-txt{
  		font-size:1.8rem;
  		display: inline-block;
  	}

  	.parts-fp .title-box01 h3::before{
  	  width: 2rem;
  	}
  	.parts-fp .title-box01{
  		margin-bottom: 1rem;
  	}

  	.parts-fp .title-box03{
  	    font-size: 2rem;
  	    line-height: 1.7em;
  	}
  	.parts-fp .title-box03 span{
  		font-size:1.6rem;
  		padding: 0px 1rem;
  		margin-left: 1rem;
  	}

	  .parts-fp .title-box04{
	    flex-direction:column;
		  align-items:flex-start;
	   }
	  .parts-fp .title-box04 .-arrow{
  		padding-right: 3rem;
		  margin-top:1rem;
  	}
  	.parts-fp .title-box04 .-arrow::before{
  			border-width:1.2rem 0.7rem 0 0.7rem;
  			border-color: var(--main-color) transparent transparent transparent;
  	}

  }



  /* cw-01
  ---------------------------------------------------------------------------- */
  .parts-fp .cw-01 .cw-inner{
      counter-reset: number 0;
  }

  .parts-fp .cw-01 .cw-box{
  	display:flex;
  	justify-content: space-between;
  	align-items: flex-start;
  	counter-increment: number 1;
  	padding: 4rem 0;
  	border-bottom: 2px solid var(--border-color-fp);
  }

  .parts-fp .cw-01 .cw-box:nth-child(2n){
      flex-direction:row-reverse;
  }

  .parts-fp .cw-01 .cw-box:last-child{
  	border-bottom: 0px solid;
  }

  .parts-fp .cw-01 .cw-box .cw-text{
      width: 58%;
  }

  .parts-fp .cw-01 .cw-box .cw-text h4{
      position:relative;
      padding-left: 7rem;
      margin-bottom: 3rem;
      font-size: 2.4rem;
      font-weight: bold;
      color: var(--main-color);
  }

  .parts-fp .cw-01 .cw-box .cw-text p{
      font-size: 1.6rem;
      margin: 1rem 0;
  }

  .parts-fp .cw-01 .cw-box .cw-text h4::before{
  	position:absolute;
  	content: counter(number,decimal-leading-zero);
  	left: 0;
  	top: 50%;
  	transform: translateY(-50%);
  	font-size: 4.8rem;
  	font-weight: 500;
  	color: var(--sub-color);
  	font-family: var(--en-txt);
  }

  .parts-fp .cw-01 .cw-box .cw-img{
      width: 35%;
  }

  .parts-fp .cw-01 .cw-box .cw-text li p{
      margin:0;
  }
    /****-1120px****/
    @media screen and (max-width:1120px){
    	.parts-fp .cw-01 .cw-box{
    		padding: 3rem 0;
    	}
    }

    /*****768px****/
    @media screen and (max-width: 768px) {
    	.parts-fp .cw-01 .cw-box .cw-text h4::before{
    		font-size: 4rem;
    	}
    	.parts-fp .cw-01 .cw-box .cw-text h4{
    		padding-left: 6rem;
    	}
    }

    /*****560px****/
    @media screen and (max-width: 560px) {
    	.parts-fp .cw-01 .cw-box,
    	.parts-fp .cw-01 .cw-box:nth-child(2n){
          flex-direction:column;
    	}

    	.parts-fp .cw-01 .cw-box .cw-text{
    		width: 100%;
    	}

    	.parts-fp .cw-01 .cw-box .cw-img{
    		width: 80%;
    		max-width:32rem;
    		margin:2rem auto 0;
    	}

    	.parts-fp .cw-01 .cw-box .cw-text h4{
    		padding-left: 5rem;
    		margin-bottom: 2rem;
    		font-size: 2rem;
    	}
    	.parts-fp .cw-01 .cw-box .cw-text h4::before{
    		font-size: 3.2rem;
    	}
    }



/* cw03
---------------------------------------------------------------------------- */
.parts-fp .cw-03 .cw-flex{
	display:flex;
	justify-content: center;
	align-items:stretch;
	flex-wrap:wrap;
}

.parts-fp .cw-03 .cw-box{
    width: calc(100% / 2);
    text-align: left;
    position: relative;
    margin: 4rem 0 2rem;
    overflow: hidden;
    padding: 0 2rem;
    box-sizing: border-box;
    border-right: 2px solid var(--border-color-fp);
    max-width: 36rem;
}

.parts-fp .cw-03-1 .cw-box:nth-child(2n){
    border-right: 0px;
}

.parts-fp .cw-03 .cw-box .cw-img{
    width:100%;
}

.parts-fp .cw-03 .cw-box .cw-img img{
  height: 18rem;
  object-fit: cover;
  font-family: 'object-fit: cover;';
}

.parts-fp .cw-03 .cw-box  h4{
  font-size: 1.8rem;
  font-weight: bold;
  color: var(--sub-color);
  padding: 1rem 0
}

  /*****769px****/
  @media screen and (min-width: 769px) {
  	/****cw-03-2*****/
  	.parts-fp .cw-03-2 .cw-box{
  		display:flex;
  		justify-content: space-between;
  		align-items:center;
  		width: calc(100% / 2);
  	}

  	.parts-fp .cw-03-2 .cw-box:nth-child(2n){
  		border-right: 0px;
  	}

  	.parts-fp .cw-03-2 .cw-box .cw-img{
  	  width: 44%;
  	}

  	.parts-fp .cw-03-2 .cw-box .cw-text{
  	  width: 51%;
  	}

  	.parts-fp .cw-03-2 .cw-box .cw-img img{
  	  height: 12rem;
  	}

  	.parts-fp .cw-03-2 .cw-box  h4{
  	  padding-top:0;
  	}
  }


  /****-1120px****/
  @media screen and (max-width:1120px){
  	.parts-fp .cw-03 .cw-box .cw-img img{
  	  height: 17vw;
  	}
  }
	/****768px-1120px****/
	@media screen and (min-width:769px) and ( max-width:1120px) {
		.parts-fp .cw-03-2 .cw-box .cw-img img{
		  height: 12vw;
		}
	}

  /*****768px****/
  @media screen and (max-width: 768px) {
  	.parts-fp .cw-03 .cw-box{
  		width: calc(100% / 2);
  		margin: 3rem 0 2rem;
  	}

  	.parts-fp .cw-03 .cw-box:nth-child(3n){border-right: 2px solid var(--border-color-fp);}
  	.parts-fp .cw-03 .cw-box:nth-child(2n){border-right: 0px;}
  	.parts-fp .cw-03 .cw-box .cw-img img{
  	  height: 25vw;
  	}
  }

  /*****480px****/
  @media screen and (max-width: 480px) {
  	.parts-fp .cw-03 .cw-box,
  	.parts-fp .cw-03 .cw-box:nth-child(3n){
  		width: 100%;
  		margin: 0;
  		padding: 2rem 0;
  		border-bottom: 2px solid var(--border-color-fp);
  		border-right: 0;
  	}

  	.parts-fp .cw-03 .cw-box .cw-img img{
  	  height: 20rem;
  	}

  	.parts-fp .cw-03 .cw-box .cw-img{
  		width:80%;
  		margin:0 auto;
  		max-width:32rem;
  	}
  }

  /*****380px****/
  @media screen and (max-width: 380px) {
  	.parts-fp .cw-03 .cw-box .cw-img img{
  	  height: 40vw;
  	}
  }



/* cw04
---------------------------------------------------------------------------- */
.parts-fp .cw-04{
    padding-bottom:2rem;
}

.parts-fp .cw-04 .cw-flex{
	display:flex;
	justify-content: center;
	align-items:stretch;
	flex-wrap:wrap;
}

.parts-fp .cw-04 .cw-box{
    width: calc(100% / 3);
    text-align: left;
    position: relative;
    margin: 4rem 0 2rem;
    overflow: hidden;
    padding: 0 2rem;
    box-sizing: border-box;
    max-width: 24rem;
}

.parts-fp .cw-04 .cw-box .cw-img{
    width:100%;
}

.parts-fp .cw-04 .cw-box .cw-img img{
  height: 14rem;
  width: 14rem;
  object-fit: cover;
  font-family: 'object-fit: cover;';
  border-radius: 50%;
  margin: 0 auto;
}

.parts-fp .cw-04 .cw-box  h4{
  font-size: 1.8rem;
  font-weight: bold;
  color: var(--main-color);
  padding: 1rem 0;
  text-align: center;
}

.parts-fp .cw-04 .cw-box p{
  font-size: 13px;
}

  /****-1120px****/
  @media screen and (max-width:1120px){
  }

  /*****768px****/
  @media screen and (max-width: 768px) {
  	.parts-fp .cw-04 .cw-box{
  		margin: 3rem 0 2rem;
  	}
  }

  /*****480px****/
  @media screen and (max-width: 480px) {
  	.parts-fp .cw-04 .cw-box{
  		width: 100%;
  		margin: 2rem 0;
  		padding: 0;
  	}
  }


/* cw05
---------------------------------------------------------------------------- */
.parts-fp .cw-05{
    counter-reset: number 0;
}

.parts-fp .cw-05 .cw-box{
	display:flex;
	justify-content: space-between;
	align-items: flex-start;
	counter-increment: number 1;
	padding: 4rem 0;
	border-bottom: 2px solid var(--border-color-fp);
}

.parts-fp .cw-05 .cw-box:last-child{
	border-bottom: 0px solid;
}

.parts-fp .cw-05 .cw-box .cw-text{
    width: 100%;
}

.parts-fp .cw-05 .cw-box .cw-text h4{
    position:relative;
    padding-left: 7rem;
    margin-bottom: 3rem;
    font-size: 2.4rem;
    font-weight: bold;
}

.parts-fp .cw-05 .cw-box .cw-text p{
    font-size: 1.6rem;
    margin: 1rem 0;
}

.parts-fp .cw-05 .cw-box .cw-text h4::before{
	position:absolute;
	content: counter(number,decimal-leading-zero);
	left: 0;
	top: 50%;
	transform: translateY(-50%);
	font-size: 4.8rem;
	font-weight:bold;
	color:var(--main-color);
	font-family: var(--en-txt);
}

.parts-fp .cw-05 .cw-box .cw-text li p{
    margin:0;
}

  /****-1120px****/
  @media screen and (max-width:1120px){
  }

  /*****768px****/
  @media screen and (max-width: 768px) {
  	.parts-fp .cw-05 .cw-box{
  		padding: 3rem 0;
  	}
  }

  /*****560px****/
  @media screen and (max-width: 560px) {
  	.parts-fp .cw-05 .cw-box{
  		padding: 2rem 0;
  	}
  	.parts-fp .cw-05 .cw-box .cw-text h4{
  		padding-left: 5rem;
  		margin-bottom: 2rem;
  		font-size: 2rem;
  	}
  	.parts-fp .cw-05 .cw-box .cw-text h4::before{
  		font-size: 3.2rem;
  	}
  }



/* voice
---------------------------------------------------------------------------- */
.template-fp .voice{margin-bottom: 12rem;}

/**************-560px***************/
@media screen and (max-width: 560px) {
	.template-fp .voice{margin-bottom: 4rem;}
}



/* check-list
---------------------------------------------------------------------------- */
.template-fp .check-list{padding: 5rem;display: flex;align-items: center;justify-content: center;margin-top: 5rem;border: solid 1px var(--sub-color);box-sizing: border-box;}
.template-fp .check-list .check-list-inner{display: inline-block;}
.template-fp .check-list li+li {
  margin-top: 1rem;
}
.template-fp .check-list ul {display: flex;flex-wrap: wrap;justify-content: center;align-items: baseline;max-width: 600px;}
.template-fp .check-list li {
  position: relative;
  padding-left: 3rem;
  font-size: 1.8rem;
  line-height: 1.7em;
  font-weight: 500;
  width: 35%;
  margin-left: 4rem;
  margin-bottom: 1rem;
}
.template-fp .check-list li:before {
  content: "";
  position: absolute;
  width: 0.4rem;
  height: 0.8rem;
  top: 1rem;
  left: 0.7rem;
  -webkit-transform: rotate(50deg);
  -ms-transform: rotate(50deg);
  transform: rotate(50deg);
  border-right: 2px solid #ffffff;
  border-bottom: 2px solid #ffffff;
  z-index: 1;
}
.template-fp .check-list li:after {
  content: "";
  position: absolute;
  top: 0.6rem;
  left: 0;
  width: 2rem;
  height: 2rem;
  border-radius: 2px;
  background: var(--sub-color);
}

/*****768px****/
@media screen and (max-width: 768px) {
}

/*****560px****/
@media screen and (max-width: 560px) {
	.template-fp .check-list{padding: 3rem;margin-top: 2rem;}
	.template-fp .check-list li {
    width: 100%;
    margin-bottom: 0;
  }
}



/* contact-wrapper
---------------------------------------------------------------------------- */
.template-fp .common-contact{
	position: relative;
	background: var(--bg-color-fp);
	padding: 6rem 0;
}

.template-fp .common-contact .contact-inner{
	width: calc(100% - 8rem);
	margin: 0 auto;
	box-sizing: border-box;
	text-align: center;
}

.template-fp .common-contact .contact-title {
    margin-bottom:4rem;
}

.template-fp .common-contact .contact-title h3{
    font-size:3.2rem;
    font-weight:bold;
	color:var(--main-color);
}

.template-fp .common-contact .contact-title p{
    font-size:1.6rem;
    font-weight: 400;
}

.template-fp .common-contact .contact-mail{
	background:var(--sub-color);
	max-width: 38rem;
	margin: 0 auto 1.2rem;
	text-align:center;
	padding:1.6rem;
	box-sizing:border-box;
	transition:.4s;
	border-radius: 0.5rem;
	display:flex;
	justify-content: center;
	align-items: center;
	border: 2px solid var(--sub-color);
}

.template-fp .common-contact .contact-mail p{
    color:#fff;
    font-size:1.8rem;
    padding-left: 1.2rem;
    font-weight:bold;
}

.template-fp .common-contact .contact-mail svg{
    fill:#fff;
    width: 1.8rem;
    height:auto;
    padding-top: 0.3rem;
}

.template-fp .common-contact .contact-mail:hover{background:#fff;}
.template-fp .common-contact .contact-mail:hover p{color:var(--sub-color);}
.template-fp .common-contact .contact-mail:hover svg{fill:var(--sub-color);}

.template-fp .common-contact .contact-tel{
    display:flex;
    justify-content:center;
    align-items:center;
    flex-wrap: wrap;
}
.template-fp .common-contact .contact-tel p{
    font-size: 1.6rem;
    color:var(--main-color);
}

.template-fp .common-contact .contact-tel p.l-text{
    font-size: 3.2rem;
    letter-spacing:0;
    padding-left: 4px;
    padding-bottom: 0.5rem;
}

.template-fp .common-contact .contact-tel svg{
    fill:var(--main-color);
    padding-left: 8px;
    padding-right: 6px;
    width: 2rem;
}


@media screen and (min-width: 769px) {
  .template-fp a[href^="tel:"] {
    pointer-events: none;
  }
}

  /****-1120px****/
  @media screen and (max-width:1120px){

  }

  /*****768px****/
  @media screen and (max-width: 768px) {
	.template-fp .common-contact{padding: 4rem 0;}
	.template-fp .common-contact .contact-title {margin-bottom:3rem;}
	.template-fp .common-contact .contact-inner{width: calc(100% - 6rem);}

  }

  /*****560px****/
  @media screen and (max-width: 560px) {
  	.template-fp .common-contact .contact-tel p:first-child{width:100%;}
  	.template-fp .common-contact .contact-tel svg{padding-left: 0px;}
	  .template-fp .common-contact .contact-title {
        margin-bottom:2.5rem;
    }

    .template-fp .common-contact .contact-title h3{
        font-size:2.8rem;
    }
  }


/* ver.2
---------------------------------------------------------------------------- */

/****title-box02****/
.parts-fp .title-box01-2{
    margin: 0rem 0 2rem;
    font-size: 1.8rem;
    font-weight:bold;
    position:relative;
    background: none;
    padding-bottom: 2rem;
    color: var(--main-color);
    text-align:center;
}

.parts-fp .title-box01-2 h3{
	text-align:center;
	font-size: 2.2rem;
	font-weight: bold;
	color: var(--main-color);
	position:relative;
}

.parts-fp .title-box01-2 p{
    font-size: 1.6rem;
    color: var(--main-color);
  	font-family: 'Roboto', sans-serif;
}

.parts-fp .title-box01-2::before{
  position:absolute;
  content:'';
  width: 8rem;
  border-bottom:2px solid var(--main-color);
  bottom:0;
  left:50%;
  transform:translateX(-50%);
}

  /*****560px****/
  @media screen and (max-width: 560px) {
  	.parts-fp .title-box01-2 h3{
  		font-size:2.4rem;
  	}

  	.parts-fp .title-box01-2{
  		margin-bottom: 1rem;
  	}
  }
