@charset 'utf-8';

/*
 * リセット
 */
body,header,footer,section,article,div,p,ul,ol,li,h1,h2,h3,h4,h5,h6,a,figure,figcaption,img,table,tr,th,td,dl,dt,dd{
  padding:0;
  margin:0;
  box-sizing:border-box;
}
h1,h2,h3,h4,h5,h6,th{font-weight:normal;}
/*
 * 共通
 */
body{
  font-family:Hiragino Kaku Gothic ProN, 游ゴシック, Meiryo, -apple-system, BlinkMacSystemFont, sans-serif;
  line-height:1.4;
  -webkit-text-size-adjust: 100%;
}
img{
  max-width:100%;
  vertical-align:top;
}
.img2x{width:100%;}
a{text-decoration:none;}
.link-hover{transition:.2s;}
.link-hover:hover{opacity:.8;}
ul,ol{list-style:none;}

.mb5{margin-bottom:5px;}
.mb10{margin-bottom:10px;}
.mb20{margin-bottom:20px;}
.mb30{margin-bottom:30px;}
.mb40{margin-bottom:40px;}
.mb50{margin-bottom:50px;}
.mb60{margin-bottom:60px;}
.mb70{margin-bottom:70px;}
.mb80{margin-bottom:80px;}
.mb100{margin-bottom:100px;}
.mb120{margin-bottom:120px;}
.mb150{margin-bottom:150px;}
.mb220{margin-bottom:220px;}

.mt20{
  margin-top: 20px;
}
.align-left{text-align:left;}
.align-center{text-align:center;}
.align-right{text-align:right;}
.v-top{vertical-align:top;}
.v-middle{vertical-align:middle;}
.v-bottom{vertical-align:bottom;}
.center-img{margin: 0 auto;}

.mincho {
  font-family:Yu Mincho,Hiragino Mincho ProN, "HG明朝E", "游明朝", serif;
}
.bld{font-weight:bold;}

.tbl{display:table;}
.row{display:table-row;}
.col,.col-l,.col-c,.col-r{display:table-cell;}
.ib{display:inline-block;}

.wrapper{
  max-width: 1020px;
  margin: 0 auto;
  padding: 0 10px;
}
.container{
  max-width: 1000px;
  margin: 0 auto;
  padding: 0 10px;
}

/* ヘッダー
---------------------------------------------------------------------------------- */
.site-header {
  position: relative;
}
.site-header:not(.home) {
  margin-bottom: 50px;
}
.site-header:before {
  content: '';
  width: 100%;
  height: 50px;
  position: absolute;
  top: 0;
  left: 0;
}
.site-header .ttl-area {
  max-width: 1020px;
  padding: 0 10px;
  margin: 45px auto 40px;
  position: relative;
}
.logo {
  position: absolute;
  left: 10px;
  bottom: 0;
}
.tel {
  text-align: right;
}
/* メニュー */
.slicknav_menu {
  display: none;
}
.gnav {
  background: #f6bebc;
}
.gnav #menu {
  display: flex;
  justify-content: space-between;
  align-items: center;
  max-width: 1020px;
  padding: 10px 10px;
  margin: 0 auto 0;
}
.gnav li {
  font-size: 20px;
  letter-spacing: normal;
}
.gnav li:last-child {
  flex-basis: 54.22px;
}
.gnav a {
  display: inline-block;
  color: #808080;
  text-align: center;
}

.mainvisual {
    /*height: 0;*/
	margin-bottom: 30px;
	
}

.pc-main-img {
    display: block !important;
}

.sp-main-img { display: none !important; }



/* メイン */




/* コンテンツ
---------------------------------------------------------------------------------- */
/* 見出し */

.message {
  font-family: 'Zen Old Mincho', serif;
 text-align: center;
 color: #ec9891;	
	}

.message2 {
 margin-top: 20px;	
 text-align: center;
 color: #333333;	
	}

/* ホーム */

.main-area{
  max-width: 1020px;
  margin: 0 auto;
  }

.main-outer{
  display: flex;
  justify-content: space-between;
  margin-bottom: 30px;
}	
	
.main-l {
 flex-basis: 48%;
 position: relative;
 display: flex;
	align-items: center;
	justify-content: center;
	overflow: hidden;
  /* border-radius: 30px; */
}

.main-l::after{
  position: absolute;
	content: '';
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	box-shadow: inset 0 0 20px 30px #FFF;
}


.main-r {
  margin-top: 10px;	 
 }	
 
 .mail-bt{
  margin-top: 10px;	 
 }	


.topic-ttl {
 background: url(../images/home/topic-ttl.gif) ;
 width: 100%;
 height: 30px;
 text-indent: -9999px;
}

.topics {
  width:100%;
  height:180px;
  overflow:auto;
  -webkit-overflow-scrolling:touch;
  display:inline-block;
	}

.topics iframe {
  width:100%;
  min-height:180px;
  height:100%;
  padding:0;
  border:none;
  display:block;	
	
	}
	
.sns-outer{
  display: flex;
  justify-content: space-between;
  margin-top: 30px;
  margin-bottom: 50px;
}	
	
.sns-l {
 flex-basis: 48%;
}
.sns-r {
  flex-basis: 48%; 
 }		

/* MENU */

.h3-ttl{
  font-size:17px;
  font-weight:bold;
  color: #fff;
  background:#66c3b7;
  padding:3px 10px;
  margin-top:5px;
  margin-bottom:5px;
}

.menu-ttl {
 margin-top: 30px;
 margin-bottom: 30px;	
 text-align: center;
 color: #808080;	
	}

  .menu-block{
  font-size:0;
  margin:0 -15px;
  font-family:sans-serif;
  margin-bottom: 30px;
}
.menu-block li{
  display:inline-block;
  width:33.333%;
  vertical-align:top;
  padding:0 15px;
  margin-bottom:30px;
}
.menu-block dl{
  display:table;
  width:100%;
}
.menu-block dt,.menu-block dd{
  display:table-cell;
  font-size:15px;
  font-weight:bold;
  line-height:1.6;
}
.menu-block dt{
	padding-left: 10px;
	text-align: left;
}
.menu-block dd{
  width:96px;
  text-align:right;
  padding-left:10px;
}
.menu-attention{
  font-size:14px;
  color:#e26713;
}
.menu-attention2{
  font-size:14px;
  color:#e26713;
}
.attention-txt{
  font-size:12.5px;
  }
  
.attention-txt2{
  font-size:12.5px;
  color:#8c6239;
  }  
.box15 {
    padding: 0.2em 0.5em;
    margin: 2em 0;
    color: #565656;
    background: #ffeaea;
    box-shadow: 0px 0px 0px 10px #ffeaea;
    border: dashed 2px #ffc3c3;
    border-radius: 8px;
}
.box15 p {
    margin: 0; 
    padding: 0 1.0em;
}

.img img{
  box-shadow: 0 0 5px 0 rgba(48, 48, 48, 0.3);
}

/* SALON */

.salon-ttl {
 margin-top: 30px;
 margin-bottom: 30px;	
 text-align: center;
 color: #808080;	
	}

.salon-outer{
  display: flex;
  justify-content: space-between;
  margin-top: 30px;
  margin-bottom: 30px;
}	
	
.salon-l {
 flex-basis: 45%;
}
.salon-r {
  flex-basis: 45%; 
 }	
 
 .salon-outer2{
  display: flex;
  justify-content: space-between;
  margin-top: 30px;
  margin-bottom: 30px;
}	
	
.salon-l2 {
 flex-basis: 45%;
}
.salon-r2 {
  flex-basis: 45%; 
 }	
 
 .salon-time{
  font-size: 20px;
  font-weight: bold;	 
  text-align: center;
  margin-bottom: 10px;	 
 }
 
 .salon-info{
 font-size: 17px;	  
 font-family:sans-serif;
 text-align: left; 
 }
 
 /*.info span{
  font-size: 20px;
  font-weight: bold;	 
  color: #ec9891;	 
	 }*/
 
 .container2{
  max-width: 1000px;
  margin: 0 auto;
  margin-bottom: 30px;
  }
 
 .staff-area1{
  max-width:100%;
  /*min-height:478px;*/
  background-color:#ffeef0;
  padding:50px 0 50px;
   }	

 .staff-area2{
  max-width:100%;
  /*min-height:738px;*/
  background-color:#ffeef0;
  padding:50px 0 50px;
   }	


.staff-outer{
  max-width:80%;
  display: flex;
  margin: auto;
  justify-content: space-between;
 
}	
	
.staff-l {
 flex-basis: 25%;
}
.staff-r {
  flex-basis: 70%; 
 }	

.recruit-outer{
  max-width:100%;
  display: flex;
  margin: auto;
  justify-content: space-between;
  margin-top: 30px;
 
}	
	
.recruit-l {
 flex-basis: 70%;
}
.recruit-r {
  flex-basis: 25%; 
 }	
 
 
  .recruit-info{
 font-size: 16px;	  
 font-family:sans-serif;
 text-align: left;
 line-height: 1.8;
 margin-bottom: 30px; 
 }
 
 

.recruit-block li{
  display:inline-block;
  width:33.333%;
  vertical-align:top;
  /*padding:0 15px;*/
  margin-bottom:30px;
}
.recruit-block dl{
  /*display:table;*/
  width:100%;
}


.txtBox {
    flex: 1;
}

.Hd02 {
    margin-bottom: 10px;
	}
	
.tbl01 {
    border-collapse: collapse;
    border-spacing: 0;
    width: 100%;
}

table, caption, th, td {
    font-style: normal;
    font-weight: normal;
    padding: 0;
    margin: 0;
}

.tbody {
    display: table-row-group;
    vertical-align: middle;
    border-color: inherit;
}	

.txtBox .tbl01 th {
    width: 186px;
}

.tbl01 th {
    background: #ec9891;
    color: #fff;
}

.tbl01 td {
    background: #ffffff;
    color: #000000;
}


.tbl01 th {
    text-align: center;
}

.tbl01 th, .tbl01 td, .scrTable01 td, .scrTable02 th, .scrTable02 td {
    border: 1px solid #dddddd;
    line-height: 1.23;
    line-height: 1.43;
    font-size: 0.9rem;
    padding: 13px 20px;
    padding: 11px 20px;
}

th, td {
    font-style: normal;
    font-weight: normal;
    padding: 0;
    margin: 0;
}

.profile-h4{
  color: #ec9891;
  font-weight: bold;
  margin-bottom: 1em;
}
/*contact*/

.contact-bg{
background-color:#ffeef0;
height: 100%;
}


	
.contact-ttl {
 font-size: 2em;
 padding-top: 30px;
 margin-bottom: 10px;	
 text-align: center;
 color: #808080;	
	}

  .contact-ttl-sub {
    font-size: 20px;
    font-family:sans-serif;
    margin-bottom: 50px;
     }

/*.contact-ttlsub{
  font-size: 20px;
  font-weight: bold;
  color: #808080;	 
  text-align: center;
  margin-bottom: 50px;
  font-family:sans-serif;	 
 }*/
 
.contact.lead,
.contact-tbl {
  font-size: 16px;
}

.contact-tbl{
  width: 100%;
}

.contact-tbl th {
  width: 200px;
  width: 20%;
  text-align: left;
  vertical-align: top;
  padding-top: 10px;
  position: relative;
}
.contact-tbl td {
  padding: 5px 0;
}

.contact-tbl td input{
  width: 50%;
  min-width: 200px;
}

.contact-tbl td textarea{
  width: 100%;
}

.required {
  display: inline-block;
  font-size: 16px;
  color: #fff;
  background: #ec9891;
  padding: 3px 5px;
}
.contact.lead .required {
  margin-right: 5px;
}
.contact-tbl th .required {
  position: absolute;
  top: 5px;
  right: 20px;
}
.mfp_element_text,
.mfp_element_email,
.mfp_element_textarea {
  max-width: 480px;
  width: 100% !important;
  border: 1px solid #000;
  border-radius: 0;
  box-sizing: border-box;
  box-shadow: none;
}
input[name="郵便番号"],
input[name="年齢"] {
  max-width: 240px;
}
input[type="text"],
input[type="email"] {
  padding: 10px;
}
[name="email"] {
  margin-bottom: 10px;
}
[type="submit"] {
  display: block;
  width: 100%;
  max-width: 170px;
  font-size: 20px;
  color: #fff;
  text-align: center;
  background: #ec9891;
  /*border: 1px solid #000;*/
  border-radius: 8px;
  padding: 10px;
  margin: auto;
  cursor: pointer;
}
.mfp_element_submit {
  text-shadow: none;
}
#mfp_button_send,
#mfp_button_cancel {
  font-size: 16px;
}
.list-radio {
  margin: 10px 0;
}
.list-radio li {
  display: inline-block;
  width: 160px;
}
form#mailformpro label.mfp_checked {
  background-color: transparent;
  border: 0;
  padding: 0;
}
form#mailformpro label.mfp_not_checked {
  border: 0;
  padding: 0;
}
.contact-detail span:last-of-type {
  padding-left: 1em;
}

/* PARAFUSE.脳洗浄 */

.parafuse-ttl {
  margin-top: 30px;
  margin-bottom: 30px;	
  text-align: center;
  color: #808080;	
}

.para-box1{
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 5%;
  text-align: center;
}

.para-box1 p, .para-box1 ul{
  text-align: left;
}

.para-box1-ue{
  align-items: flex-start;
}

.para-box1-l{
  width: 48%;
}

.para-box1-r{
  width: 48%;
}

.para-box1-r .message{
  margin-bottom: 20px;
  text-align: left;
}

.para-box1-r ul{
  /* list-style: disc; */
  list-style-position: inside;
  padding-left: .2em;
  padding-top: .5em;
}

.para-box1-r ul li::before{
  content: "*";
  color: #ec9891;
  padding-right: .5em;
}

.para-box1-l.menu-block{
  font-size: initial;
  margin: 0;
}



.para-box1-l .box15{
  padding: 1em;
}

.para-box1-l dd.dd_long{
  width: 240px;
}

.para-box1-l .box15 p.box15-ttl{
  display: inline-block;
  padding: 0;
  padding-bottom: .1em;
  margin-left: 1em;
  margin-bottom: .2em;
  /* font-weight: bold; */
  border-bottom: dashed 2px #ffc3c3;
}

.para-box1-l .box15 span{
  font-size: 1.3em;
}

.para-res-area{
  max-width:100%;
  /*min-height:478px;*/
  background-color:#ffeef0;
  padding:50px 0 50px;
  text-align: center;
}	

.para-res-box{
  background-color: #FFF;
  padding: 30px 15%;
  margin: 0 5% 30px;
  text-align: left;
}

.mr2{
  margin-right: 2.1em;
}

.mr1{
  margin-right: 1em;
}

.info-attention{
  color: #ec9891;

}

.container2 .para-sns-outer{
  width: 90%;
  margin: 30px auto 0;
  display: flex;
justify-content: space-around;
}

.sns-1, .sns-2, .sns-3{
margin: 0 1em;
}

.br-sp{
  display: none;
}

.br-480{
  display: none;
}

.salon-info img.br-pc{
  display: inline-block;
}

/* フッター
---------------------------------------------------------------------------------- */
footer {
  background: #f6bebc;
  padding: 10px;
 
}
.footer_info {
  display: table;
  width: 100%;
  max-width: 450px;
  margin: auto;
}

.copyright {
  display: table-cell;
  font-size: 11px;
  color: #000;
  vertical-align: middle;
  text-align: center;
}


@media screen and (min-width:768px) and (max-width:875px){
  .para-box1-l dd.dd_long{
    width: 180px;
  }

  .para-box1-l dd.dd_long .br-480{
    display: block;
  }
}



/* ==================================================================================

  768px以下

================================================================================== */
@media screen and (max-width:768px){

/* ヘッダー
---------------------------------------------------------------------------------- */
  
  .site-header {
    padding-top: 25px;
  }
  .site-header:before {
    height: 25px;
  }
  .site-header .ttl-area {
    margin: 20px auto;
  }
  .logo {
    width: 200px;
  }
  .tel {
    width: 200px;
    margin-left: auto;
  }
  /* メニュー */
  .pc_menu {
    display: none;
  }
  .gnav #menu {
    display: block;
    padding: 0;
    margin: 0 auto;
  }
  .gnav li {
    font-size: 16px;
  }
  .gnav a {
    display: block;
    text-align: left;
  }
  .slicknav_menu {
    display: block;
    background: transparent;
    padding: 0;
    position: relative;
  }
  .slicknav_nav {
    width: 100%;
    background: #fff;
    position: absolute;
    top: 100%;
    left: 0;
    z-index: 1000;
  }
  .slicknav_nav li {
    border-top: 1px dashed #66c3b7;
  }
  .slicknav_nav li:last-child {
    border-bottom: 1px dashed #66c3b7;
  }
  .slicknav_btn {
    background-color: #66c3b7;
    border-radius: 0;
    padding: .6em .8em;
  }
  .slicknav_menu .slicknav_icon-bar {
    width: 1.5em;
    box-shadow: none;
  }
  .slicknav_menu .slicknav_icon:before,
  .slicknav_menu .slicknav_icon {
    width: 1.5em;
    height: 1.2em;
  }
  .slicknav_btn .slicknav_icon-bar+.slicknav_icon-bar {
    margin-top: .4em;
  }
  .slicknav_nav a:hover {
    color: #808080;
    background: transparent;
  }
  
  .sp-main-img {
    display: block !important;
}

  .pc-main-img { display: none !important; }

/* コンテンツ
---------------------------------------------------------------------------------- */
  /* ホーム */
  .home.lead {
    font-size: 16px;
  }
  
  .main-outer {
	display: block;
	text-align: center;
  }

  .main-l {
    max-width: 500px;
    margin-left: auto;
    margin-right: auto;
   
  }
  .main-r {
    
	flex-basis: 50%;
	float: none;
  }	 
  
  .topic-ttl {
	max-width: 354px;
	margin: auto;
	 }
  
  .topics iframe {
	max-width: 354px;
	margin: auto;  
	  }
  
  .sns-outer {
	display: block;
	text-align: center;
  }

  .sns-l {
    max-width: 500px;
    margin-left: auto;
    margin-right: auto; 
	margin-bottom: 20px;
   
  }
  .sns-r {
    
	flex-basis: 50%;
	float: none;
  }	 
  
  /* MENU */
  .h3-ttl{font-size:15px;}
 .menu-block{margin:0;}
  .menu-block li{
    display:block;
    width:100%;
    padding:0;
    margin-bottom:30px;
  }
  
  .img{
    text-align: center;
  }
   
  /* SALON */
  
   .salon-outer {
	display: block;
	text-align: center;
  }

  .salon-l {
    max-width: 500px;
    margin-left: auto;
    margin-right: auto; 
	margin-bottom: 20px;
   
  }
  .salon-r {
    
	flex-basis: 50%;
	float: none;
  }
  
   .salon-outer2 {
	display: block;
	text-align: center;
  }

  .salon-l2 {
    max-width: 500px;
    margin-left: auto;
    margin-right: auto; 
	margin-bottom: 20px;
   
  }
  .salon-r2 {
    max-width: 400px;
    padding-left: 0;
    margin: auto;
  }	 	 
  
  .staff-outer {
	display: block;
	text-align: center;
  }

  .staff-l {
    max-width: 500px;
    margin-left: auto;
    margin-right: auto; 
	margin-bottom: 20px;
   
  }
  .staff-r {
    
	flex-basis: 50%;
	float: none;
  }	
  
   .recruit-outer {
	display: block;
	text-align: center;
  }

  .recruit-l {
    max-width: 400px;
    padding-left: 0;
    margin: auto;
   
  }
  .recruit-r {
    
	flex-basis: 50%;
	float: none;
  }	
  
  .txtBox {
    width: 100%;
    flex: none;
}
  
  .txtBox .tbl01 th {
    display: block;
    width: 100%;
    font-weight: bold;
    border-bottom: none;
} 

.txtBox .tbl01 td {
  display: block;
  text-align: left;
  border-top: none;
  border-bottom: none;
} 

.txtBox .tbl01 tr:last-child td{
  border-bottom: 1px solid #dddddd;
}

.tbl01 th, .tbl01 td, .scrTable01 th, .scrTable01 td {
    /* font-size: 0.5rem; */
    padding: 6px 10px 7px;
}
  
  /*contact*/
  
  .contact.lead,
  .contact-tbl {
    font-size: 14px;
  }
  .contact.lead.mb70 {
    margin-bottom: 50px;
  }
  .contact-tbl th {
      width: 160px;
  }
  .required {
    font-size: 14px;
  }
  .contact-tbl th .required {
    right: 10px;
  }
  [type="submit"] {
    font-size: 18px;
  }
   
  
/* PARAFUSE.脳洗浄 */

.para-box1{
  flex-direction: column;
}

.para-box1-rev{
  flex-direction: column-reverse;
}

.para-box1-l{
  width: 100%;
  margin-bottom: 30px;
}

.para-box1-r{
  width: 100%;
  margin-bottom: 30px;
}



.para-box1-r .message{
  font-size: 1.3em;
}

.para-box1-l .box15{
  padding: 0.5em;
}

.para-box1-l .box15 p{
  font-size: 0.9em;
  text-align: center;
}

.para-box1-l .box15 p.box15-ttl{
  margin-left: 0;
}

.para-res-box{
  padding: calc(30px - 1em) 5% 30px;
}

.para-res-box .salon-info img{
  display: block;
  margin-top: 1em;
  margin-bottom: .5em;
}

.br-sp{
  display: block;
}

.salon-info img.br-pc{
  display: none;
}

.para-sns-outer{
  flex-direction: column;
}

.sns-1{
  background-color: #fff;
  margin: 0 auto 1em;
  max-width: 462px;
}

.sns-2{
  margin: 0 auto 1em;
}

.sns-3{
  margin: 0 auto 1em;
}

.para-res-box .salon-info{
  font-size: 1em;
}
  
/* フッター
---------------------------------------------------------------------------------- */
  .site-footer .ttl-area {
    margin: 0 auto 30px;
  }
  .footer-logo {
    text-align: center;
    position: static;
  }
  /* メニュー */
  .fnav {
    padding-top: 20px;
    margin-right: auto;
  }
  .fnav li {
    font-size: 14px;
  }
  .copyright {
    font-size: 12px;
  }
}

/* ==================================================================================

  480px以下

================================================================================== */
@media screen and (max-width:480px){
  .hidden480 {
    display: none;
  }
  
/* ヘッダー
---------------------------------------------------------------------------------- */
  .logo {
    width: 140px;
  }
  .tel {
    width: 140px;
  }
  
/* コンテンツ
---------------------------------------------------------------------------------- */
  /* 見出し */
  .section-ttl.mb50 {
    margin-bottom: 25px;
  }
  
  /* ホーム */
  .home.lead {
    font-size: 14px;
  }
  
  /* MENU */
  
  /*contact*/
  .contact-tbl,
  .contact-tbl tbody,
  .contact-tbl tr,
  .contact-tbl th,
  .contact-tbl td {
    display: block;
    width: 100%;
  }
  input[type="text"] {
    padding: 8px;
  }
  .contact-tbl th {
    font-weight: bold;
  }
  .contact-tbl th .required {
    right: 0;
  }
  .contact.lead.mb40,
  .contact.lead.mb70 {
    margin-bottom: 20px;
  }
  .contact-detail span {
    display: inline;
  }
  .contact-detail span:last-of-type {
      padding-left: 0;
  }
  
  
/* フッター
---------------------------------------------------------------------------------- */
  /* メニュー */
  .fnav {
    padding-left: 0;
    padding-right: 0;
  }
  .fnav ul {
    display: block;
  }
  .fnav li {
    display: block;
    font-size: 14px;
    text-align: center;
    border-top: 1px dashed #3d8ffb;
  }
  .fnav li:last-child {
    border-bottom: 1px dashed #3d8ffb;
  }
  .fnav a {
    display: block;
    padding: 10px;
  }
  .fnav a:hover {
    text-decoration: none;
  }

  .para-box1-l dd.dd_long{
    width: 180px;
  }

  .br-480{
    display: block;
  }
}

/*sora様トップページ追加　2025/4/15*/

.cormorant{font-family: "Cormorant Garamond";text-transform:none;}
.noto-serif { font-family: "Noto Serif JP", sans-serif; }

#reserve{
	background-color: rgba(254,250,238,1.0);
	padding-top: 100px; 
	padding-bottom: 100px; 
	margin-top: 100px;
}

.area-ttl02{
	margin: 0 auto;
	font-size: clamp(1.563rem, 1.202rem + 1.6vw, 3.125rem);
	text-transform:none;
	text-align: center;
	font-weight:lighter;
	letter-spacing: 0.2em;
	color: #333;
}

.area-ttl{
	margin: 30px auto;
	font-size: clamp(1.563rem, 1.202rem + 1.6vw, 3.125rem);
	text-transform:none;
	text-align: center;
	font-weight:lighter;
	letter-spacing: 0.2em;
	color: #333;
	padding-top: 30px;
}

.area-sub{
	text-align: center;
	font-size: clamp(1.25rem, 1.106rem + 0.64vw, 1.875rem);
	font-weight:normal;
	color: #242424;
}

.reserve-list li{
	position: relative;
	text-align: left;
	padding-left: 30px;
	line-height: 1.8;
}

.reserve-list li:before {
    position: absolute;
  top: 13px;
    left: 5px;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    content: "";
  display: block;
  width: 19px;
  height: 14px;
  background: url("../images/home/reserve_icon.webp") no-repeat center;
  background-size: 19px 14px;
}

.reserve-right-w460{
	max-width: 460px;
	margin: 0 auto;
}

.reserve-line-ttl{
	text-align: center;
	font-size: 16px;
	align-items: center;
	position: relative;
	margin-bottom: 10px;
}

.reserve-line-ttl::before {
    position: absolute;
    top: 10px;
    left: 23px;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    content: "";
  display: block;
  width: 23px;
  height: 37px;
  background: url("../images/home/reserve_b.svg") no-repeat center;
  background-size: 23px 37px;
}

.reserve-line-ttl::after {
    position: absolute;
    top: 10px;
    right: 23px;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    content: "";
  display: block;
  width: 23px;
  height: 37px;
  background: url("../images/home/reserve_a.svg") no-repeat center;
  background-size: 23px 37px;
}

.flex-outer {
  display: flex;
  flex-direction: row;
  gap: 10px;
}

.flex-item {
  flex: 1;
  padding: 0 10px;
  text-align: center;
  margin-bottom: 20px;	
}


.flex-bt {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 10px 20px;
  background-color: #fff;
  border: 1px #000 solid;
  margin: 0 auto 20px;
  height: 85px;	
  font-family: "Noto Serif JP", sans-serif;	
  }



.reserve-bt-ttl{
	text-align: center;
	font-size: 21px;
	color:#242424;
}

.reserve-bt-ttl-sub{
	font-size: 14px;
	text-align: center;
	color:#242424;
}

.bt-left{
	display: block;
	text-align: center;
	flex-basis: 80%;
}

.bt-right{
	flex-basis: 20%;
	text-align: center;
}

.menu-img img {
    box-shadow: 10px 10px 4px rgba(62, 58, 57, .5);
}

.line-qr img{
	max-width: 60px;
	vertical-align: middle;
}

.web-link img{
	max-width:32px;
	vertical-align: middle;
}

#links{
	margin: 140px auto;
}

.links-sub{
	font-size: 24px;
	text-align: center;
	margin: 60px auto 20px;
	color: #242424;
	
}

.sora-box{
	max-width: 570px;
	margin: 0 auto 100px;
}

.align-items-end{align-items: flex-end;}

.sora-line-ttl{
	text-align: center;
	font-size: clamp(0.875rem, 0.846rem + 0.13vw, 1rem);
	align-items: center;
	position: relative;
	font-family: "Noto Serif JP", sans-serif;
	}

.sora-line-ttl::before {
    position: absolute;
    top: 10px;
    left: 0px;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    content: "";
  display: block;
  width: 16px;
  height: 25px;
  background: url("../images/home/sora_b.svg") no-repeat center;
  background-size: 16px 25px;
}

.sora-line-ttl::after {
    position: absolute;
    top: 10px;
    right: 0px;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    content: "";
  display: block;
  width: 16px;
  height: 25px;
  background: url("../images/home/sora_a.svg") no-repeat center;
  background-size: 16px 25px;
}


[class^="width-box-"] {
  margin-left: auto;
  margin-right: auto;
  padding-left: 20px;
  padding-right: 20px;
}
/* 各幅設定 - 100px単位で拡張 */


.width-box-500 {
  max-width: 500px;
}
.width-box-560 {
  max-width: 560px;
}
.width-box-1000 {
  max-width: 1000px;
}

.mb50-100 {
  margin-bottom: clamp(5rem, 14vw, 10rem);
}

@media screen and (max-width:1024px) {
	
.flex-outer {
  display: block;
  }
	
	
	
.sora-box{
	max-width: 260px;
}	
	
	
}

@media screen and (max-width:820px) {
.reserve-line-ttl::before {
        top: 20px;
    }

.reserve-line-ttl::after {
       top: 20px;
   }	

.flex-bt{
	height: 120px;	
}
	
	
}