@charset "utf-8";

/* * { border: 1px dotted #d44343; } */

*, *:before, *:after { 
  box-sizing: inherit;
}

header, footer { box-sizing: content-box !important; }


/*******************************/
/*****  喜楽（きららと共通も） *****/
/*******************************/
.box700 { max-width: 700px;}

.kiraku-main {
  box-sizing: border-box;
}

.kiraku-section { 
  max-width: 1220px;
  margin: 100px auto;
  padding: 0 10px;
 }

 .kiraku-section .box1000 {
  margin: 0 auto;
 }

 .kiraku-bg {
	content: "";
	background-image: url("../images/kiraku/top-img01.png"),url("../images/kiraku/top-img02.png"),url("../images/top/top_area02_bg_re.jpg");
	background-repeat: no-repeat,no-repeat,repeat-y;
	background-position: left 2% top 5%,right 2% bottom 5%,center top;
	background-size: 30%,30%,100%;
}

 .kiraku-heart-back {
	background-color: #fff;
	text-align: center;
	z-index: 1;
	position: relative;
}
.kiraku-heart-back h3 {
  font-size: clamp(24px,4vw,32px);
}

.kiraku-heart-back p {
  text-align: center;
  line-height: 1.5;
}


 .kiraku-heart-back > div:first-of-type {
	padding: 1em 2em 2em;
}
.heart-four {
	background-image: url(../images/top/heart_mark1.svg),url(../images/top/heart_mark2.svg),url(../images/top/heart_mark3.svg),url(../images/top/heart_mark4.svg);
	background-repeat: no-repeat;
	background-size: 42px;
	background-position: left top,right top,left bottom,right bottom;
	position: absolute;
	top: -9px;
	left: -12px;
	width: 103%;
	height: 105%;
}


/* .kiraku-topview {
  background: url(../images/kiraku/top-img01.png) no-repeat, url(../images/kiraku/top-img02.png) no-repeat, url(../images/top/top_area02_bg_re.jpg) no-repeat;
  background-position: top 19px left 20px, right 20px bottom 20px, center;
  background-size: 30%, 28%, cover;
  padding: 40px 40px 100px;
} */

.pink-bg .kiraku-above-logo {
  font-size: clamp(18px,2vw,26px);
  text-align: center;
}

.kiraku-ttl {
  width: 100%;
  padding: 0;
  margin: 0 auto 2em;
}

.kiraku-about-flex {
  gap: 2em;
  align-items: center;
  padding: 0 1rem;
}

.kiraku-about-flex img {
  max-width: 90%;
}

.kiraku-subttl {
  font-size: clamp(24px,4vw,36px);
  text-align: center;
  margin: 0 0 1em;
}

.flex-facility {
  gap: 20px;
  line-height: 1.5;
}

.flex-facility p {
  /* margin: 1em auto; */
}
.flex-box.flex-box.flex-facility .con2 {
  padding: 0;
  text-align: center;
}

.flex-facility .con2 > img,
.flex-facility .con3 > img {
  padding: 0 1em;
} 

.facility-item-txt {
  display: inline-block;
  padding: 1em 1em 4em;
  line-height: 1.5;
  text-align: left;
}

.pink-box { 
  background-color: #f7637f;
  color: #fff;
  padding: 0 3px;
}

.pink-circle {
  display: inline-block;
  background-color: #f7637f;
  color: #fff;
  border-radius: 100px;
  width: 100%;
  max-width: 500px;
  padding: 5px;
  margin-bottom: 1em;
}

.flex-service {
  justify-content: space-between;
  gap: 40px;
  text-align: center;
  line-height: 1.4;
  padding: 0 20px;
}

.flex-service2 {
  gap: 20px;
}

.kiraku-service {
  display: inline-block;
  text-align: left;
}

.kiraku-service li {
  padding-left: 1em;
  text-indent: -1em;
}

.kiraku-service li:before {
  content:  "";     
  width:  10px;              
  height:  10px;             
  display:  inline-block;     
  background-color: #000;  
  border-radius:  50%;       
  margin-right: 5px;
  position: relative;
  top: -1px;
}

.kiraku-box500 {
  max-width: 500px;
  margin: 0 auto;
  padding: 0 20px;
}

.kiraku-box500 p {
  margin: 1em 0;
}

.kiraku-table, .kiraku-table-price {
  border: solid 3px #fff;
  line-height: 1.5;
  margin: 0 auto 5em;
}

.kiraku-table th, .kiraku-table-price th{
  background-color: #3e487d;
  color: #fff;
  width: 13em;
  padding: 5px;
  font-weight: normal;
}

.kiraku-table td, .kiraku-table-price td {
  background-color: #fff4e1;
  padding: 5px 1em;
}
.kiraku-table td:first-child, .kiraku-table-price td:first-child {
  text-align: center;
}

.kiraku-table td:last-child {
  text-align: right;
  padding: 0 5em;
}

.kiraku-table-price td:last-child {
  text-align: right;
  padding: 0 3em;
}

.kiraku-table2area {
  max-width: 1000px;
  margin: 0 auto;
  align-items: start;
  gap: 20px;
  justify-content: space-between;
}

.price-subttl {
  font-weight: bold;
  font-size: 18px;
  text-align: center;
  margin: 2em 0 1em;
}

.day-flex {
  padding: 0 1em 0 2em;
  gap: 2em;
  align-items: center;
}
.day-schedule dl {
  display: flex;
  flex-direction: row;
  align-items: center;
  border-bottom: 4px dotted #dcdddd;
  padding: 1em;
}

.day-schedule dl:first-child{
  border-top: 4px dotted #dcdddd;

}

.day-schedule dl dt {
  font-size: 25px;
  white-space: nowrap;
  width: 8em;
}

.day-schedule dl dd  .schedule-item{
  font-weight: bold;
  font-size: 21px;
  margin-bottom: 10px;
}

.day-schedule dl dd {
  margin-left: 0;
}

.day-schedule dl dt .day-am,
.day-schedule dl dt .day-pm {
  width:  60px;              
  height:  60px;             
  display:  inline-block;     
  border-radius:  50%;       
  margin-right: 1em;
  font-size: 21px;
  text-align: center;
  color: #fff;
  padding-top: 16px;
}

.day-schedule dl dt .day-am {
  background-color: #7cba27;  
}

.kiraku-section .mov-tel-box2 .flex-box > div h3 {
  font-size: clamp(26px,3vw,36px);
  margin: 0;
}

.kiraku-section .mov-tel-box2.contact-link-btn .flex-box > div h3 {
  font-size: clamp(16px,2.6vw,26px);
}

.day-schedule dl dt .day-pm {
  background-color: #f7b101;  
}

.kiraku-blue-ttl {display: block;}

@media screen and (max-width: 1200px) {
  .kiraku-bg {
    background-image: url(../images/top/top_area02_bg_re.jpg);
    background-repeat: repeat-y;
    background-position: center top;
    background-size: 100%;
  }
}

@media screen and (max-width: 768px) {
  .kiraku-section .flex-box {
    flex-direction: column;
    padding: 0 20px;
  }

  .kiraku-ttl {
    margin: 0 auto 30px;
  }

  .kiraku-heart-back p {
    text-align: left;
  }

  .heart-four {
    top: -12px;
    left: -14px;
    width: 104%;
    height: 105%;
  }

  .kiraku-table, .kiraku-table-price {
    margin: 0 auto 2em;
  }

  .kiraku-table-price td:last-child {
    text-align: right;
    padding: 0 1em;
  }

  .kiraku-table-price th:last-child {
    width: 8em;
  }

  .kiraku-table2area {
    align-items: center;
  }

  .kiraku-table td:last-child {
    padding: 0 4em;
  }
  
  
  .day-schedule dl {
    flex-direction: column;
    align-items: start;
    padding: 1em 0;
  }

  .day-flex {
    padding: 0 10px !important;
  }

  .day-schedule dl dd {
    padding: 1em 0;
  }

  .day-schedule dl dd .schedule-item {
    font-size: 18px;
    margin-bottom: 10px;
  }

  .day-schedule dl dt .day-am, .day-schedule dl dt .day-pm {
    width: 50px;
    height: 50px;
    padding-top: 14px;
  }

  .kiraku-section .mov-tel-fl {
    flex-direction: row;
}

  .kiraku-section .mov-tel-box2 .flex-box {
    flex-direction: row;
  }
}

@media screen and (max-width: 560px) {
  .heart-four {
    top: -10px;
    left: -7px;
    width: 105%;
    height: 103%;
  }

  .kiraku-section .mov-tel-fl {
    flex-direction: column;
}
	
	.kiraku-blue-ttl.pc-view560 {display: none;}

}

/*******************************/
/*****     きらら           *****/
/*******************************/

.kirara-topview {
  background: url(../images/top/top_area02_bg_re.jpg) no-repeat center / cover;
  padding: 40px 40px 100px;
}

.kirara-top-flex {
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 1em;
  justify-content: center;
}

.kirara-top-flex img {
  flex-basis: 25%;
}
.kirara-top-flex p {
  flex-basis: 70%;
}
.kirara-bluecircle {
  display: inline-block;
  border: 2px solid #3e487d;
  border-radius: 100px;
  width: 11em;
  text-align: center;
  max-width: 500px;
  padding: 0.5em 1em;
  margin: 2em 0 1em;
  font-size: 28px;
}



@media screen and (max-width: 768px) {
  .kirara-top-flex {
    flex-direction: column;
  }

  .kirara-top-flex img {
    order: 1;
  }

  .kiraku-section .flex-box.flex-facility {
    flex-direction: row;
    
  }
}

@media screen and (max-width: 560px) {
  .kiraku-section .flex-box.flex-facility {
    gap: 0;
    margin-bottom: 0;
    flex-direction: column;
    align-items: center;
  }
  .kiraku-section .flex-box.flex-facility .con3 > img {
    margin: 0 auto;
  }
  .flex-facility .facility-item-txt {
    /* margin-bottom: 4em; */
  }



