@charset "utf-8";
/*===========================
add
===========================*/
:root {
  --basic-color: #C7A1B0;
}





/*===========================
box01
===========================*/
.box01 .in{
  display: flex;
  margin-bottom: 10px;
  justify-content: center;
  align-items: center;
}

.box01 .in:last-child{
  margin-bottom: 0;
}

.box01 .in.row-reverse{
  display: flex;
  flex-direction: row-reverse;
}

.box01 .ph{
  width: 20%;
}


@media screen and (min-width: 601px) {
  .fukidasi {
    position: relative;
    display: inline-block;
    margin: 1.5em 0 1.5em 5%;
    padding: 20px ;
    min-width: 120px;
    max-width: 100%;
    background: #fff3f8;
    width: 75%;
    -webkit-border-radius: 10px;
    -moz-border-radius: 10px;
    border-radius: 10px;
  }

  .fukidasi:before {
    content: "";
    position: absolute;
    top: 50%;
    left: -30px;
    margin-top: -15px;
    border: 15px solid transparent;
    border-right: 15px solid #fff3f8;
  }

  .fukidasi02 {
    position: relative;
    display: inline-block;
    margin: 1.5em 5% 1.5em 0;
    padding: 20px ;
    min-width: 120px;
    max-width: 100%;
    background: #fff3f8;
    width: 75%;
    -webkit-border-radius: 10px;
    -moz-border-radius: 10px;
    border-radius: 10px;
  }

  .fukidasi02:before {
    content: "";
    position: absolute;
    top: 50%;
    right: -30px;
    margin-top: -15px;
    border: 15px solid transparent;
    border-left: 15px solid #fff3f8;
  }
}

.fukidasi p,
.fukidasi02 p{
  margin: 0;
  padding: 0;
}


@media screen and (max-width: 768px) {
  .box01 .ph{
    width: 25%;
  }
}

@media screen and (max-width: 600px) {
  .box01 .in,
  .box01 .in.row-reverse{
    display: block;
  }

  .box01 .ph{
    margin: 0 auto;
  }

  .fukidasi,
  .fukidasi02 {
    position: relative;
    display: inline-block;
    margin: 1.5em 0;
    padding: 7px 10px;
    min-width: 120px;
    max-width: 100%;
    color: #555;
    background: #fff3f8;
    padding: 20px;

    -webkit-border-radius: 10px;
    -moz-border-radius: 10px;
    border-radius: 10px;
    }

  .fukidasi:before,
  .fukidasi02:before {
    content: "";
    position: absolute;
    top: -30px;
    left: 50%;
    margin-left: -15px;
    border: 15px solid transparent;
    border-bottom: 15px solid #fff3f8;
    }
}




/*===========================
box02
===========================*/
.box02 .in01{
	display: flex;
	border-bottom: #eeeeee solid 2px;
	padding-bottom: 40px;
	margin-bottom: 40px;
}
@media screen and (max-width: 600px) {
	.box02 .in01{
		display: block !important;
		padding-bottom: 40px;
		margin-bottom: 40px;
	}
}


.box02 .in01:last-child{
	border: none;
	margin-bottom: 0;
	padding-bottom: 0;
}


.box02 .st{
	background-color: var(--basic-color);
	width: 130px;
	height: 130px !important;
	text-align: center;
	-webkit-border-radius: 50%;
	-moz-border-radius: 50%;
	border-radius: 50%;
	position: relative;
}
@media screen and (max-width: 600px) {
	.box02 .st{
		width: 100px;
		height: 100px !important;
		margin: 0 auto 30px;
	}
}


.box02 .st .st-box{
	position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}


.box02 .st .st-box p{
	font-size: 3.5em;
	color: #fff;
	/*font-weight: bold;*/
}
@media screen and (max-width: 600px) {
	.box02 .st .st-box p{
		font-size: 2.5em;
	}
}


.box02 .st .title{
	font-size: 1.5em !important;
	margin-bottom: 15px;
	margin-top: -20%;
}
@media screen and (max-width: 600px) {
	.box02 .st .title{
		margin-bottom: 0;
		margin-top: -25%;
		font-size: 1.0em !important;
	}
}


.box02 .de01{
	padding: 0 10px 0;
	margin-left: 50px;
	box-sizing: border-box;
  width: 75%;
}
@media screen and (max-width: 768px) {
	.box02 .de01{
		width: 75%;
		margin: 0 0 0 auto;
	}
}
@media screen and (max-width: 600px) {
	.box02 .de01{
		width: 100%;
		margin: 0 !important;
	}
}


@media screen and (max-width: 600px) {
	.box02 .de01 .catch2{
		text-align: center;
		font-size: 1.5em;
	}
}


.box02 .contactBtnWrap{
	text-align: left;
}
@media screen and (max-width: 600px) {
	.box02 .contactBtnWrap{
		text-align: center;
	}
}


.box02 .contactBtnWrap .contactBtn{
	margin-bottom: 0;
}
@media screen and (max-width: 768px) {
	.box02 .contactBtnWrap .contactBtn{
		margin-bottom: 10px;
	}
	.box02 .contactBtnWrap .contactBtn:nth-child(n+3){
		padding-bottom: 0;
	}
}





/*===========================
title design
===========================*/

/*line dot--------------------*/
.line-dot-b{
  font-size: 1.2em;
  color: var(--basic-color);
  border-bottom: 1px dotted var(--basic-color);
  padding-bottom: 10px;
  margin-bottom: 10px;
}

.line-dot-b i{
  font-size: 2.5em;
  line-height: 180%;
}



/*===========================
title-af-none
===========================*/
.title-af-none{
	text-shadow: none;
}
.title-af-none:after{
	content: none;
}

.title-sahdow-none{
	text-shadow: none;
}



/*===========================
font
===========================*/
.fw-b{font-weight: bold;}




/*===========================
width
===========================*/
.w150px{
 width: 150px;
}

.w150px-center{
 width: 150px;
 margin: 0 auto;
}

.w200px{
 width: 200px;
}


.w100p,
li.w100p{
	width: 100% !important;
	display: block;
}


@media screen and (max-width: 768px) {
	.w100Tablet{
		width: 100% !important;
		box-sizing: border-box;
	}
	
	.w90Tablet{
		width: 90% !important;
		box-sizing: border-box;
	}

	.w80Tablet{
		width: 80% !important;
		box-sizing: border-box;
	}

  .w70Tablet{
		width: 70% !important;
		box-sizing: border-box;
	}

  .w70Tabletsp{
		width: 70% !important;
		box-sizing: border-box;
	}

	.w50Tablet{
		width: 50% !important;
		box-sizing: border-box;
	}
}

@media screen and (max-width: 600px) {
	.w100sp,
	.w90Tablet,
	.w80Tablet,
  .w70Tablet,
	.w50Tablet{
		width: 100% !important;
		box-sizing: border-box;
	}

 .w90sp{
		width: 90% !important;
		box-sizing: border-box;
	}

	.w70sp{
		width: 70% !important;
		box-sizing: border-box;
	}

	.width-sp-50 img{
		width: 50% !important;
	}
}




/*===========================
table
===========================*
/*table-line-no---*/

.table-line-no{
 margin: 0 auto;
}

.table-line-no th{
 text-align: left;
 padding-right: 10px;
}

@media screen and (max-width: 600px) {
 .table-line-no th,
 .table-line-no td{
  display: block;
  width: 100%;
  text-align: center;
 }
 .table-line-no td{
  padding-bottom: 10px;
 }
}


/*table-line-dot2---*/
.table-line-dot2 tr,{
 text-align: left;
}

.table-line-dot2 th{
 font-weight: normal;
}

.table-line-dot2 td::before{
 content: "：";
}

@media screen and (max-width: 600px) {
 .table-line-dot2 th,
 .table-line-dot2 td{
  display: block;
  width: 100%;
 }
 .table-line-dot2 td{
  padding-bottom: 10px;
 }

 .table-line-dot2 th::after{
  content: "：";
 }

 .table-line-dot2 td::before{
  content: none;
 }
}


/*table-line-dot2b---*/
.table-line-dot2b tr{
 text-align: left;
}

.table-line-dot2b th{
 font-weight: normal;
}

.table-line-dot2b td::before{
 content: "：";
}

@media screen and (max-width: 768px) {
 .table-line-dot2b th,
 .table-line-dot2b td{
  display: block;
  width: 100%;
 }
 .table-line-dot2b td{
  padding-bottom: 10px;
 }

 .table-line-dot2b th::after{
  content: "：";
 }

 .table-line-dot2b td::before{
  content: none;
 }
}


/*table-line-dot3b---*/
.table-line-dot3b tr{
 text-align: left;
}

.table-line-dot3b th{
 font-weight: normal;
}

.table-line-dot3b td::before{
 content: "：";
}




/*===========================
wf
===========================*/
.wf-t-all ,ul.wf-t-all {
	width: fit-content;
	margin: auto;
}

@media screen and (min-width: 769px) {
	ul.wf-t,
  ol.wf-t{
		width: fit-content;
		margin: auto;
	}
}

@media screen and (min-width: 601px) {
	p.wf-pcONspOFF,
  ul.wf-pcONspOFF {
		width: fit-content !important;
		margin: auto !important;
	}
}

.wf-t-right ,ul.wf-t-right {
	width: fit-content;
	margin: auto 0 auto auto;
}

@media screen and (max-width: 600px) {
  ul.wf-t-sp{
    width: fit-content;
    margin: auto;
  }
}





/*===========================
onOff
===========================*/
.pcOFFtabletONspOFF{display: none !important;}
.pcOFFtabletOFFspON{display: none;}

@media screen and (min-width: 769px) {
	.pcOFFtabletONspON{display: none !important;}
}

@media screen and (max-width: 768px) {
	.pcOFFtabletONspOFF{display: block !important;}
	.pcOFFtabletOFFspON{display: none;}
	.pcONtabletOFFspOFF{display: none !important;}
}

@media screen and (max-width: 600px) {
	.pcOFFtabletONspOFF{display: none !important;}
	.pcOFFtabletOFFspON{display: block;}
	.pcONtabletONspOFF{display: none;}
}