@charset "utf-8";
/* CSS Document */
@import url('https://fonts.googleapis.com/css2?family=Cinzel:wght@400;500;600;700;800&display=swap');

#mv{ height: 275px; margin: 0;}
#mv h2{ bottom: auto; top: 50%; transform: translateY(-50%); color: #000; text-shadow: none;}

#privacy {
  height: 275px;
  position: relative;
  margin: 0; 
}
#privacy h2 {
  font-size: 32px;
  letter-spacing: 0.1em;
  position: absolute;
  left: 0;
  width: 100%;
  text-align: center;
  bottom: auto;
  top: 50%;
  transform: translateY(-50%);
  color: #000;
  text-shadow: none;
}
#privacy h2 span {
  display: block;
  font-size: 12px;
  letter-spacing: 0.2em;
  font-family: "Cinzel", serif;
}


#fr_map{ height: 670px;}
#map .bxMap{ margin: 0 0 40px;}
#map .bxMap .bxTxt{ display: flex; flex-wrap: wrap; justify-content: center; background: #94204d; color: #fff; padding: 20px 10px;}
#map .bxMap .bxtop{ display: flex; flex-wrap: wrap; align-items: center; justify-content: center; padding: 0 0 15px; margin: 0 0 15px; border-bottom: 1px #fff solid;}
#map .bxMap .bxtop p{ margin: 0 17px 0 0;}
#map .bxMap .bxtop p:last-of-type{ margin: 0;}
#map .bxMap .bxtop .txt1{ font-size: 12px;}
#map .bxMap .bxtop .txt2{ font-size: 36px; line-height: 1.4;}
#map .bxMap .txt3{ font-size: 15px; text-align: center;}
#map .bxMap .f12{ padding: 12px 0 0;}

#map .life{ margin: 0 0 50px;}
#map .life .tit{ font-size: 24px; color: #ad4271; font-family: 'Cinzel', serif; letter-spacing: 0.1em; padding: 0 0 10px;}
#map .life .box1{ display: flex; flex-wrap: wrap; justify-content: space-between; align-items: flex-start;}
#map .life .box1 .img{ width: 40.463%; display: flex; justify-content: space-between;}
#map .life .box1 .img li{ position: relative; width: 48.055%;}
#map .life .box1 .list{ width: 56%;}
#map .life .box1 .list p{ display: flex; flex-wrap: wrap; justify-content: space-between; position: relative; margin: 0 0 15px; font-size: 15px;}
#map .life .box1 .list p:after{ width: 100%; height: 1px; position: absolute; content: ''; top: 50%; left: 0; transform: translateY(-50%); border-bottom: 1px #000 dotted;}
#map .life .box1 .list p span{ background: #fff; position: relative; z-index: 5; line-height: 1;}
#map .life .box1 .list p span:nth-of-type(1){ padding: 0 10px 0 17px;}
#map .life .box1 .list p span:nth-of-type(1):before{ content: '■'; position: absolute; left: 0; color: #94204d;}
#map .life .box1 .list p span:nth-of-type(2){ padding-left: 10px;}
#map .life .txt{ font-size: 12px; padding: 12px 0 0;}

#map .bxlist .item{ font-size: 16px; margin: 0 0 35px;}
#map .bxlist .tit{ font-size: 22px; color: #ad4271; padding: 0 0 13px; margin: 0 0 13px; border-bottom: 1px #e5e5e5 solid;}

#map .print { width: 420px; margin: 50px auto 150px; background: #ad4271; font-size: 19px; line-height: 1; padding: 20px 0; color: #fff; text-align: center; display: block; position: relative;}
#map .print span { display: inline-block; position: relative; padding-left: 25px;}
#map .print span::before { position: absolute; content: ''; width: 16px; height: 16px; left: 0; background: url("../../images/common/ic_arrow.png") no-repeat; background-size: auto; background-size: 100%; top: 55%; transform: translateY(-50%);}

#map .f12{ font-size: 12px;}

/*NP241212追加*/
.sp-on {
  display: none;
}
.privacy-top__text {
  margin: 0 0 40px 0;
}
.privacy-table {
  width: 80%;
  margin: 0 auto 40px;
  line-height: 1.5;
  border: 1px #575757 solid;
}
.privacy-table th {
  padding: 15px 10px;text-align: center; color: #fff; background: #ad4271;
}
.privacy-table .col1{ width: 60%;}
.privacy-table .col2{ width: 40%;}
.privacy-table .bg1{ background: #f7ecf1; text-align: left;}
.privacy-table th{ border-right: 1px #fff solid;}
.privacy-table th:last-of-type{ border: none;}
.privacy-table td{ padding: 10px 20px; border: 1px #575757 solid;}
.privacy-table td:last-of-type{ text-align: left;}

.privacy-list {
	margin-left: 1em; /* サイトに合せて調整 */
}
.privacy-list li {
  margin: 0 0 20px 0;
	list-style-type: none;
	counter-increment: cnt;
	position: relative;
}
.privacy-list li:before {
	content: "(" counter(cnt) ")";
	display: inline-block;
	margin-left: -2.5em; /* サイトに合せて調整 */
	width: 2.5em; /* サイトに合せて調整 */
	text-align: right;
	position: absolute;
	top: 0;
	left: 0;
}
.privacy-list__link {
  color: #ad4271;
  text-decoration: underline;
}
.privacy-content__end {
  text-align: right;
  font-size: 16px;
  margin: 0 0 70px 0;
}
/*NP241212追加*/
/* ============== Media =============== */

@media only screen and (max-width: 1080px){
#map .life .box1 .list p{ font-size: 14px;}

  .privacy-table {
    width: 100%;
  }

}
@media only screen and (max-width: 767px){
	#map .bxMap .bxtop p:nth-of-type(2){ margin: 0;}
	#map .bxMap .bxtop .txt2{ width: 100%; text-align: center;}

	#map .life .box1 .img{ width: 437px; margin: 0 auto 30px;}
	#map .life .box1 .list{ width: 100%;}
	#map .life .box1 .list p{ font-size: 14px;}

/*NP241212追加*/
  .sp-on {
  display: block;
}
}
@media only screen and (max-width: 480px){
	#mv{ /*height: 40vw*/;}
	#fr_map{ height: 400px;}
	#map .bxMap .bxTxt{ padding: 25px 10px;}
	#map .bxMap .bxtop p:nth-of-type(1){ width: 8vw; margin: 0 2% 0 0; }
	#map .bxMap .bxtop .txt1{ font-size: 2.8vw;}
	#map .bxMap .bxtop .txt2{ font-size: 5.7vw;}
	#map .bxMap .txt3{ font-size: 3.5vw;}
	
	#map .life .tit{ font-size: 4.7vw;}
	#map .life .box1 .list p::after{ top: auto; bottom: -15px; z-index: 7;}
	#map .life .box1 .list p span:nth-of-type(1){ width: 100%; padding: 10px 0 10px 15px;}
	#map .life .box1 .list p span:nth-of-type(2){ width: 100%; padding: 10px; background: #edd8e1; text-align: right;}
	
	#map .bxlist .tit{ font-size: 18px;}
	#map .bxlist .item{ font-size: 14px;}
	#map .print{ width: 70%; margin: 50px auto;}
  /*NP241212追加*/
  #privacy {
    margin: 0 0 50px;
  }
  #privacy h2 {
    font-size: 6.5vw;
  }
  #privacy h2 span {
    font-size: 3vw;
  }
.privacy-content__end {
  font-size: 14px;
}
}

@media print{
	header, #gnav, footer, #map .print{ display: none !important;}
}

