/*.mediaViewInfo {
	--web-view-name: WireFrame- Home first;
	--web-view-id: WireFrame-_Home_first;
	--web-scale-on-resize: true;
	--web-enable-deep-linking: true;
}*/
:root {
	--web-view-ids: WireFrame-_Home_first;
}
* {
	margin: 0;
	padding: 0;
	box-sizing: border-box;
	border: none;
}

html, body {
  margin: 0;
  padding: 0;
}

body {
	width: 100%;
	font-family: KokoroMinchoutai,'Cormorant', serif;
    font-style: normal;
    font-weight: 600;
    font-size: 22px;
	color: rgba(106, 57, 6, 1);
	letter-spacing: -0.01em;
}

.text-bold {
	font-weight: 900;
	text-shadow:
    0.5px 0 0 currentColor,
   -0.5px 0 0 currentColor;
   letter-spacing: -0.03em;
}
.font_en {
	font-family:'Cormorant', serif;
	line-height: 1.8em;
	font-size: 110%;
	font-weight: 400;
	letter-spacing: normal;
}

.font_en .text-bold {
	font-weight: bold;
	text-shadow: none;

}

.text-small {
	font-size: 80%;
	letter-spacing: -0.04em;
}


.align-center {
	text-align: center;
}

h1,.font_kis {
  font-family: "adobe-kis", sans-serif;
  font-weight: 400;
  font-style: normal;
}
p {
	padding:20px 0;
}
img {
  display: inline-block;
  vertical-align: top;
}

#Nav_bar_-_Inner span,h2,.font_kis_italic {
  font-family: "adobe-kis", sans-serif;
  font-weight: 700;
  font-style: italic;
}

h1 {
	font-size: 48px;
}
h2 {
	font-size: 60px;
	padding: 0 0 40px;
}

h2 span {
	height: 100px;
	overflow: visible;
}

h3 {
	font-family: 'Times New Roman', Times, serif;
	font-size: 40px;
	font-weight: 200;
	padding-bottom:20px;
	display: inline-block;
}
.container h2 {
	color:#9E6A4E;
	margin: 30px auto;
	text-align: center;
}

.text_bold {
	font-weight: 700;
	text-shadow:
    0.5px 0 0 currentColor,
   -0.5px 0 0 currentColor;
}

.font-56 {
	font-size: 56px;
}

a {
	color: inherit;
	text-decoration:none ;
  transition: opacity 0.2s ease;
}

a:hover {
  opacity: 0.7;
}

header {
	height: auto;
	display: block;
}

h2:after {
  content: "";
  display: block;
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  width: 152px;
  height: 8px;
  background: url("./images/n_2564_bu.png") no-repeat center / contain;
  padding-top: 3px;
}

.container {
	width: 100%;
	display: flex;
	flex-wrap: wrap;
}

.topimage {
  grid-template-columns: repeat(4, 1fr);
  gap: 0;
}

.container .topimage {
  display: flex;
  flex-wrap: wrap;
}

.container .topimage img {
  display: block;
  height: auto;
  width: 25%;     /* PC：4列 */
  margin: 0;
  max-width: 100%;
  display: block;
}

/* スマホ：2列 */
@media (max-width: 768px) {
 .container .topimage img {
    width: 50%;
  }
}

.boxarea {
	padding:50px 20px;
}
.nextdate_box {
	background: #D8B998;
	width: 100%;
	margin:0 auto;
	text-align: center;
	padding: 20px 0;
	color:#ffffff;
	font-family: 'Times New Roman', Times, serif;
	font-size: 40px;

}
 .leaf-text-deco {
	position: relative;
	width: auto;
	height: auto;
 }

.nextdate_box .frontleaf {
	padding:10px 20px;
} 

.nextdate_box .backleaf {
	transform: scaleX(-1);
	padding:10px 20px;
} 

.concept_box {
	width: 100%;
	background:linear-gradient(rgba(255,255,255,0.5), rgba(255,255,255,0.5)),
	url("images/n_2138.png") repeat;
	text-align: center;
}
.concept_box_in {
  margin: 30px auto 70px;
  width: 90%;
  padding: 40px;
  position: relative;
}

.concept_box_in::before,.concept_box_in::after,
.concept_box_in span::before,.concept_box_in span::after {
  content: "";
  position: absolute;
  top: 0;
  width: 65px;
  height: 65px;
  background: url("images/corner-tl.svg") no-repeat center / contain;
}

.concept_box_in::before {
  top: 0;
  left: 0;
}
.concept_box_in::after {
  top: 0;
  right: 0;
  transform: rotate(90deg);
}

.concept_box_in span::before{
  top: 100%;
  left: 0;
  transform: rotate(-90deg);
}

.concept_box_in span::after {
  top: 100%;
  right: 0;
  transform: rotate(180deg);
}

img.master {
	margin-top: -110px;
    margin-right: -330px;
}

#Nav_bar_-_PC {
	position: absolute;
	width: 1280px;
	height: 100px;
	left: 0px;
	top: 69px;
	overflow: visible;
	display: block;
}
#toppage #Nav_bar_-_PC {
	position: relative;
	top:0;
}

/*============
nav
=============*/
nav {
  display: block;
  position: fixed;
  top: 0;
  left: -300px;
  bottom: 0;
  width: 300px;
  background: #ffffff;
  overflow-x: hidden;
  overflow-y: auto;
  -webkit-overflow-scrolling: touch;
  transition: all .5s;
  z-index: 3;
  opacity: 0;
}
.open nav {
  left: 0;
  opacity: 1;
}
nav .inner {
  padding: 25px;
}
nav .inner ul {
  list-style: none;
  margin: 0;
  padding: 0;
}
nav .inner ul li {
  position: relative;
  margin: 0;
  border-bottom: 1px solid #333;
}

nav .inner ul li.footerlist {
	border-bottom: none;
	padding-left: 1em;
}
nav .inner ul li a {
  display: block;
  color: #333;
  font-size: 14px;
  padding: 1em;
  text-decoration: none;
  transition-duration: 0.2s;
}
nav .inner ul li a:hover {
  background: #e4e4e4;
}
@media screen and (max-width: 767px) {
  nav {
    left: -220px;
    width: 220px;
  }
}
/*============
.toggle_btn
=============*/
/* PCではハンバーガー非表示 */
#navArea {
  display: none;
}

.toggle_btn {
  display: block;
  position: fixed;
  top: 15px;
  left: 30px;
  width: 30px;
  height: 30px;
  transition: all .5s;
  cursor: pointer;
  z-index: 3;
}
.open .toggle_btn {
  left: 330px;
}
.toggle_btn span {
  display: block;
  position: absolute;
  left: 0;
  width: 30px;
  height: 2px;
  background-color: #D8B998;
  border-radius: 4px;
  transition: all .5s;
}
.toggle_btn span:nth-child(1) {
  top: 4px;
}
.toggle_btn span:nth-child(2) {
  top: 14px;
}
.toggle_btn span:nth-child(3) {
  bottom: 4px;
}
.open .toggle_btn span {
  background-color: #fff;
}
.open .toggle_btn {
  -webkit-transform: rotate(360deg);
  transform: rotate(360deg);
}
.open .toggle_btn span:nth-child(1), .open .toggle_btn span:nth-child(3) {
  width: 16px;
}
.open .toggle_btn span:nth-child(1) {
  -webkit-transform: translate(-1px,4px) rotate(-45deg);
  transform: translate(-1px,4px) rotate(-45deg);
}
.open .toggle_btn span:nth-child(3) {
  -webkit-transform: translate(-1px,-4px) rotate(45deg);
  transform: translate(-1px,-4px) rotate(45deg);
}
@media screen and (max-width: 767px) {
  .open .toggle_btn {
    left: 250px;
  }
}
/*============
#mask
=============*/
#mask {
  display: none;
  transition: all .5s;
}
.open #mask {
  display: block;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: #000;
  opacity: .8;
  z-index: 2;
  cursor: pointer;
}

@media (max-width: 1024px) {

  /* 普通のメニューを隠す */
  #Nav_bar_-_PC {
    display: none;
  }

  /* ハンバーガーメニューを表示 */
  #navArea {
    display: block;
  }

}

.menu_box {
	background-color: #F4EAE4;
	width: 100%;
}

.menu_box .wrap {
	width: 95%;
	margin: 0 auto;
}
.wrap {
  display: flex;
  gap: 24px; /* 塊同士の余白 */
}

.text-box {
  flex: 1;            /* 横幅を均等に */
  padding: 10px;
}
.box {
  padding: 16px;
  box-sizing: border-box;
}

.whitebox {
	background: #fff;
	width: 100% !important;
    margin: 30px auto !important;
	padding: 15px;
	border-radius: 10px;
}

.set-box1 {flex: 1;}

.whitebox h3 {
	padding-top:20px;
}

.set-box2 {flex: 2;}

.map_box {
	width: 100%;
	padding-right: 0;
	padding-left: 0;
}
#map {
	position: relative;
	width: 100%;
    height: 413px;
    overflow: visible;
    }

.map-wrap {
   position: absolute;
    width: 100%;
    height: 413px;
    left: 3px;
    top: 2452.604px;
    overflow: visible;
}

.map-wrap iframe {
  width: 100%;
  height: 100%;
  border: 0;
}

.map_box .boxarea p .text-bold {
	display:inline;
	border-bottom: 1px solid #D8B998;
	padding: 10px 0px;
}

footer {
	background: #E8E8E8;
	font-size: 60%;
	font-weight: 500;
	font-family:"Noto Sans JP",
    "Noto Sans",
    -apple-system,
    BlinkMacSystemFont,
    "Helvetica Neue",
    Arial,
    sans-serif;
	margin: 0 auto;
	text-align: center;
	padding: 20px 15px 10px;
}

#header {
	position: absolute;
	width: 1280px;
	height: 100px;
	left: 0px;
	top: 0px;
	overflow: visible;
}

#Nav_bar_-_Inner {
	position: absolute;
	width: 525.344px;
	height: 31px;
	left: 385.885px;
	top: 41px;
	overflow: visible;
}
#n_1488 {
	position: absolute;
	width: 525.344px;
	height: 31px;
	left: 0px;
	top: 0px;
	overflow: visible;
}
#Access__Info {
	left: 375.344px;
	top: 0px;
	position: absolute;
	overflow: visible;
	width: 151px;
	white-space: nowrap;
	text-align: left;
	font-family: Adobe Kis;
	font-style: normal;
	font-weight: bold;
	font-size: 24px;
	color: rgba(106,57,6,1);
	letter-spacing: 0.5px;
}

#n_83__1 {
	position: absolute;
	width: 88px;
	height: 31px;
	left: 119.115px;
	top: 0px;
	overflow: visible;
}
#n_84__1 {
	position: absolute;
	width: 88px;
	height: 31px;
	left: 260px;
	top: 0px;
	overflow: visible;
}

#n_82__1 {
	position: absolute;
	width: 63px;
	height: 31px;
	left: 0px;
	top: 0px;
	overflow: visible;
}

#salon_name {
	background: #3E3A39;
	width: 100%;
	margin:0 auto;
	height:79px;
}
#salon_name h1 {
	margin:0 auto;
	text-align: center;
	padding-top: 3px;
	color:#FFF2AD;
}

.titokyo_info {
	text-align: center;
	width: auto;
	display: flex;
  justify-content: center; /* 横方向の中央寄せ */
  gap: 20px;               /* 画像同士の間隔 */
  padding-top:26px;
  padding-bottom: 20px;
}

.titokyo_info .ico_mail {
	margin-top:8px;
}
.titokyo_info .ico_insta {
	margin-top:10px;
}

#policy #Copyright__2026_TI_TI_Tokyo__T {
	padding-top:20px;
	top:0;
	position: inherit;
}

.border-gray {
	width: 100%;
	height: 17px;
	background-color: #989393;
}

/*============
policy page
=============*/

#policy {
	position: relative;
}

#policy #WireFrame-_Home_first {
	height: auto;
	position: inherit;
}

#policy #Nav_bar_-_PC, #policy #header,#policy .n_1181,
#toppage #Nav_bar_-_PC, #toppage #header  {
	width: 100%;
}
#policy_area {
    width: 90%;
	margin: 90px auto;
	text-align: center;
}

#policy_area h2 span {
	position: relative;
  color: rgba(158, 106, 78, 1);

}

#policy_area h2 span::after {
	content: "";
  display: block;
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  width: 152px;
  height: 8px;
  background: url("./images/n_2564_bu.png") no-repeat center / contain;
  padding-top: 3px;
}

#policy #Nav_bar_-_Inner,#toppage #Nav_bar_-_Inner {
	left:50%;
	transform: translateX(-50%);
}

.tiot-bullet {
	font-weight: bold;
	padding: 10px;
	font-size: 120%;
	text-decoration: solid 1px ;
	color:rgba(158, 106, 78, 1);
	margin: 0 auto;
}

.policy_text {
	text-align:left;
	margin-top:30px;
	margin-left: 30px;
	width: auto;
}

.page-left {
	text-align:left;
}
#policy h3.size40 {
	font-size: 40px;
	color:rgba(158, 106, 78, 1);
	padding: 20px;
	text-align: center;
}

#policy h3 {
	padding: 20px 0;
}

#policy #n_2559, #policy #n_2518 {
	position: inherit;
	width: 100%;
	top:auto;
}

#policy #n_2559 {
	text-align: center;
	background:#E8E8E8;
}

#policy #n_2518 {
	height: auto;
 }

#policy .n_2109,#policy .n_2217,#policy #Copyright__2026_TI_TI_Tokyo__T {
	width: 100%;
	left: auto;
}

#policy #n_1 {
	left: 0%;
}

@media (max-width: 768px) {
	.wrap {
    flex-direction: column;
	}
	#salon_name h1 {
		font-size: 30px;
		padding-top: 10px;
	}
	#salon_name {
    height: 60px;
	}

	.nextdate_box {
		font-size: 120%;
		line-height: 1.3em;
	}
	
	.nextdate_box p{
		padding: 10px 0 0;
	}

	.nextdate_box span.time {
		display: block;
	}
	
	.font-56 {
    font-size: 130%;
	}
	.nextdate_box img.frontleaf,.nextdate_box img.backleaf {
		width: 70px;
		height: auto;
		padding: 10px 10px;
	}
	.boxarea {
    padding: 20px 10px;
	}
	.concept_box_in {
    margin: 20px auto 40px;
    width: 100%;
    padding: 20px;
	}
	img.master {
   	 margin-right: 0;
	 margin-top: 30px;
	}
	.menu_box .wrap {
    width: 98%;
	}
	.whitebox .box {
    padding: 5px;
	}
	.whitebox h3 {
    padding-bottom: 0;
	}
	.whitebox {
	gap: 0;
	}
	.whitebox p {
    padding: 0;
	}
	.map_box.boxarea p {
	font-size: 85%;
	}
	#policy_area {
    margin: 50px auto;
	}
	#policy h3 {
    font-size: 32px;
	}
	#policy p {
    font-size: 90%;
	}
}