@font-face{font-family:FontAwesome;src:url("fonts/fontawesome.woff2") format("woff2");font-weight:normal;font-style:normal;font-display:swap;}.fa{display:inline-block;font:normal normal normal 1em/1 FontAwesome}.fa-chevron-up:before{content:"";}



html{overflow-y:scroll; overflow-x:hidden;}
html, body{margin:0; padding:0; font-size:14px; line-height:1.6em;}

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

.bold{font-weight:bold;}
.center{text-align:center;}
.right{text-align:right;}
.uppercase{text-transform:uppercase;}
.hidden{display:none;}
.nospace{margin:0; padding:0; list-style:none;}
.borderedbox{border:1px solid;}
.circle{border-radius:50%; background-clip:padding-box;}

.service{display:block; position:relative; width:100%; min-height:80px; margin:0; padding:0 0 0 70px; box-sizing:border-box;}
.service *{margin:0; padding:0;}
.service .icon{display:block; position:absolute; top:0; left:0; width:50px; height:50px; line-height:50px; text-align:center; font-size:26px;}
.icon.nobg{border:1px solid;}
.service .heading{margin-bottom:10px;}
.service.largeicon{min-height:110px; padding:0 0 0 100px;}
.service.largeicon .icon{width:80px; height:80px; line-height:80px; font-size:40px;}

.clear, .group{display:block;}
.clear::before, .clear::after, .group::before, .group::after{display:table; content:"";}
.clear, .clear::after, .group, .group::after{clear:both;}

a{outline:none; text-decoration:none;}

.fl_left, .imgl{float:left;}
.fl_right, .imgr{float:right;}

img{max-width:100%; height:auto; margin:0; padding:0; border:none; line-height:normal; vertical-align:middle;}
.imgl{margin:0 15px 10px 0; clear:left;}
.imgr{margin:0 0 10px 15px; clear:right;}



body{font-family: "メイリオ", "Meiryo", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "Osaka", "ＭＳ Ｐゴシック", "MS P Gothic", Verdana, Arial, Helvetica, sans-serif;}



form, fieldset, legend{margin:0; padding:0; border:none;}
legend{display:none;}
label, input, textarea, select, button{display:block; resize:none; outline:none; color:inherit; font-size:inherit; font-family:inherit; vertical-align:middle;}
label{margin-bottom:5px;}



h1, h2, h3, h4, h5, h6, .heading{margin:0 0 20px 0; font-size:22px; line-height:normal; font-weight:normal;}

address{font-style:normal; font-weight:normal;}
hr{display:block; width:100%; height:1px; border:solid; border-width:1px 0 0 0;}

.wrapper{display:block; width:100%; margin:0; padding:0; text-align:left; word-wrap:break-word;}
#header, #services, #cta, #breadcrumb, .container, #footer, #copyright{display:block; margin:0 auto;}



address, article, aside, figcaption, figure, footer, header, main, nav, section{display:block; margin:0; padding:0;}



.one_half, .one_third, .two_third, .one_quarter, .two_quarter, .three_quarter{display:inline-block; float:left; margin:0 0 0 3.06748466257669%; list-style:none;}

.first{margin-left:0; clear:left;}

.one_quarter{width:22.69938650306748%;}
.one_third{width:31.28834355828221%;}
.one_half, .two_quarter{width:48.46625766871166%;}
.two_third{width:65.6441717791411%;}
.three_quarter{width:74.23312883435584%;}



.btmspace-10{margin-bottom:10px;}
.btmspace-15{margin-bottom:15px;}
.btmspace-30{margin-bottom:30px;}
.btmspace-50{margin-bottom:50px;}
.btmspace-80{margin-bottom:80px;}

.inspace-5{padding:5px;}
.inspace-10{padding:10px;}
.inspace-15{padding:15px;}
.inspace-30{padding:30px;}
.inspace-50{padding:50px;}
.inspace-80{padding:80px;}

.paditout{padding-top:50px;}






a:hover img{
  opacity: 0.7;
  filter: alpha(opacity=70);
  -moz-opacity: 0.7;
  -webkit-transition: 0.5s ease-in-out;
  -moz-transition: 0.5s ease-in-out;
  -o-transition: 0.5s ease-in-out;
  transition: 0.5s ease-in-out;
}

a:hover{ transition: color .5s, text-decoration .5s;}
p.title{ font-weight: bold;}


.row2{ margin: 0 auto; text-align:center;}
.row3{ padding:50px 0;}

.row7{ padding-bottom:30px;}
.row8{ padding:30px 0 70px 0;}
.row9{ padding:30px 0 70px 0; margin-top: -18px;} 

@media screen and (max-width:740px) {
.row3{ padding:30px 0 0 0;}

.row8{ padding:20px 0 40px 0;}
.row9{ padding:20px 0 40px 0;}
}


.container{padding: 1em 0;}
.row2 .container{padding:10px 0;}
.container.nospace{padding-bottom:0}




#footer{padding:55px 0 30px 0; color:#333;}
#footer .title{margin:0 0 15px 0; padding:0 0 8px 0; width: 100%; font-size:14px;}
#footer .title img{width:150px;}

#footer ul{margin:0 0 0 1em; padding: 0 5.5em 0.5em 1.3em; position: relative; float:left;}
#footer ul:nth-of-type(2n){ padding-right: 0;}
#footer li{ line-height: 1.5; padding: 0.2em 0; list-style-type: none!important;}
#footer li a{ color:#333;}
#footer li:before{ font-family: "FontAwesome"; content: ""; position: absolute; left : 0.3em; color: #eb613b;}
#footer .sitemap:after{ content: ""; clear: both; display: block;}

@media screen and (min-width:741px) {
#footer{margin-top: 0;}
a[href*="tel:"]{ pointer-events: none; cursor: default; text-decoration: none;}
}
@media screen and (max-width:740px) {
#footer ul{margin:0; padding: 0 1em 0.5em 1em;}
}

address span{font-size: 160%; line-height: 2; font-family: "Didact Gothic"; font-weight: normal;}
address span a{color:#333;}


#copyright{padding:15px 0; font-size:12px;}
#copyright *{margin:0; padding:0;}
#copyright a{color:#fff;}


.faico a, #mainav *, .latest ::before, .latest ::after, #backtotop{transition:all .3s ease-in-out;}




#breadcrumb{padding:0; height:466px;}
#breadcrumb img{float:right;}








#backtotop{z-index:10; display:inline-block; position:fixed; visibility:hidden; bottom:70px; right:20px; width:42px; height:42px; line-height:42px; font-size:18px; text-align:center; opacity:.2;}
#backtotop i{display:block; width:100%; height:100%; line-height:inherit;}
#backtotop.visible{visibility:visible; opacity:.6;}
#backtotop:hover{opacity:1;}

@media screen and (min-width:741px) {
  #backtotop{bottom:20px;}
}


h2{ 
	text-align:center;
	font-size: 26px;
	color:#333;
	position: relative;
	padding: 46px 0 0.5em 0;
	margin: 0;
	font-family: source-han-sans-japanese,sans-serif;
	font-weight: 400;
	font-style: normal;
	line-height: 1.4;
	display: inline-block;
}

h2:before{
  content: "";
  position: absolute;
  left: 50%;
  bottom: -7px;
  display: inline-block;
  width: 60px;
  height: 3px;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
  background-color: #eb613b;
  border-radius: 2px;
}

@media screen and (max-width:740px) {
h2{ font-size: 22px; padding: 30px 0 0.5em 0; letter-spacing: 1px;}
}




@media screen and (min-width:741px) { h2.img_title img{ width: 400px;}}
@media screen and (max-width:740px) {h2.img_title img{ width: 60%;}}

.page-kicker{ 
  font-size: 26px;
  position: relative;
  padding: 0 0 0.5em 0;
  margin: 135px 0 1em 0;
  color: #333;
  font-feature-settings: "palt";
  font-family: futura-pt, sans-serif;
  font-weight: 400;
  font-style: normal;
  letter-spacing: 5px;
  line-height: 1.4;
  text-transform: uppercase;
  }

.row6 .top{
  font-size: 14px;
  position: relative;
  padding: 0 0 1em 0;
  margin: 0;
  color: #333;
  font-feature-settings: "palt";
  font-family: yu-mincho-pr6n, sans-serif;
  font-weight: 400;
  font-style: normal;
  line-height: 1.4;
  }

@media screen and (max-width:740px) {
.page-kicker{ font-size: 22px; margin: 75px 0 0.7em 0; padding: 0.3em 0 0.1em 0;}
.row6 .top{ font-size: 14px; padding: 0 0 0.7em 0;}
}


#single h2{
  font-size: 26px;
  padding: 0 0 0.5em 0;
  margin: 0.5em 0;
  text-align: left;
  color: #333;
  font-feature-settings: "palt";
  font-family: source-han-sans-japanese,sans-serif;
  font-weight: 400;
  font-style: normal;
  line-height: 1.4;
  letter-spacing: 0px;
  display:table;
  border-bottom: solid 1px #eb613b;
  }
#single h2:before{ content: none;}
@media screen and (max-width:740px) { #single h2{ font-size: 26px; padding: 1em 0 0.2em 0;}}

#single h3{
  font-size: 22px;
  padding: 0 0 0 1.3em;
  margin: 1em 0 0.2em 0;
  text-align: left;
  color: #333;
  font-feature-settings: "palt";
  font-family: source-han-sans-japanese,sans-serif;
  font-weight: 400;
  font-style: normal;
  line-height: 1.4;
  letter-spacing: 0px;
  display:table;
  position: relative;
  }
#single h3::before{
  font-family: "FontAwesome";
  content: "";
  position: absolute;
  left : 0; 
  color: #d93d3f; 
}
@media screen and (max-width:740px) {
#single h3{ font-size: 22px; margin: 0.7em 0 0.2em 0; }
}


#single h4{ 
  font-size: 18px;
  margin:1em 0 1.5em 0;
  color: #FFF;
  padding: 0.5em 1em;
  font-feature-settings: "palt";
  font-family: source-han-sans-japanese,sans-serif;
  font-weight: 400;
  font-style: normal;
  line-height: 1.4;
  background: #eb613b;
  border-radius: 0.3em;
  display:table;
  }

#single h5{ font-size: 120%; margin:2em 0 1em 0; color: #ffffff; background: #c45f1c; padding: 0.5em 1em; border-radius: 0.3em;}


#single h6{ font-size: 120%; padding: 0.1em 0.5em 0.15em 0.7em; margin: 2em 0 1em 0; color: #c45f1c; background: transparent; border-left: solid 5px #c45f1c; font-weight:bold;}

#single ul{
  padding: 0.5em 0 0.5em 1.7em;
  position: relative;
  border-radius: 5px;
}
#single ul li{
  line-height:1.6em;
  margin: 0.6em 0;
  list-style-type: none!important;
  font-feature-settings: "palt";
  font-weight: bold;
}
#single ul li:before{
  font-family: "FontAwesome";
  content: "";
  position: absolute;
  left : 0; 
  color: #d93d3f; 
    }


#single ol{
  border: solid 2px #e89325;
  padding: 0.8em 1em 0.8em 1.3em;
  border-radius: 5px;
}
#single ol li{
  font-size:115%;
  line-height:1.8em;
  list-style-type: none;
  font-weight: bold;
  counter-increment: number;
  position: relative; 
  padding-left: 1.4em;
  margin: 0.6em 0;
  
}
#single ol li::before{
  content: counter(number) ".";
  color: #af8d56;
  font-weight:bold;
  display: block;
  position: absolute; 
  left: 0; 
}


p{line-height:1.8em; padding: 0.5em 0;}
#single img{padding: 0.5em 0;}


.num{ list-style-type: decimal;}
.index ul{ margin:0; padding: 0;}
.index li{ list-style:none; margin: 0; padding: 0.5em 0;}
.index li.last{border-bottom:none;}

.banner{width:100%; margin:0 auto; padding: 10px 0 20px 0; text-align:center;}


@media screen and (min-width:741px) {
.row0{padding: 20px 0 70px 0;}
.row0 .sidebar{padding-left: 35px;}





















ul.category_banner{ margin:0; padding:10px 0 0 50px;}
.category_banner li{ padding:0; margin:20px 0 0 0; list-style:none; width: 100%;}
.category_banner li img{width:100%;}

}


@media screen and (max-width:740px) {

.row0 .sidebar{padding-top: 20px;}
















ul.category_banner{ margin:0; padding:0;}
.category_banner li{ padding:0; margin:20px 0 0 0; list-style:none; width: 100%; display: inline-block;}
.category_banner li img{width:100%;}

}










.category_banner li img{border: 1px solid #d2bdb7;}


dl.info, .info dt, .info dd{ box-sizing: border-box;}
dl.info{ line-height:1.5em; padding:0; margin:0;}
.info dt, .info dd{ padding: 10px 10px 0 0; border-top: 1px solid #eee;}
.info dt{ width: 80px; float: left;}
.info dd{ margin-left: 80px; padding-bottom: 10px;}
.info dd:after{ content: ""; display: block; clear: both;}

@media screen and (min-width:741px) {
.infoarea{ padding-left: 30px;}
}



table.consul-index{width:100%; border-collapse: collapse; border-spacing: 0; table-layout: fixed;}
.consul-index th{ font-size: 30px; margin:0; padding:0 0 0 1em; width: 25%; color:#fff; text-align: left; font-family: "Didact Gothic"; font-weight: normal; letter-spacing: 2px; line-height: 1.4;}
.consul-index td.consul-cont{padding:2.5em 2em; margin:0; width: 35%; color:#333;}
.consul-index td.consul-cont h3{font-size:24px; font-family: yu-mincho-pr6n, sans-serif; font-weight: 400; font-style: normal; margin:0; padding:0;}
.consul-index td.consul-cont p{font-size:14px; margin:0; padding:1em 0 0.7em 0;}
.consul-index td.consul-img{padding:0 2em; margin:0; width: 40%; vertical-align:bottom;}

@media screen and (max-width:740px) {
.consul-index th{ font-size: 24px; margin:0; padding:1.8em 0 0.5em 0; width: 100%; display: block; color:#333; text-align: center; letter-spacing: 1px;}
.consul-index td.consul-cont{padding:1.3em 5%; margin:0; width: 100%; display: block;}
.consul-index td.consul-cont h3{font-size:20px; margin:0; padding:0;}
.consul-index td.consul-cont p{font-size:14px; margin:0; padding:1.5em 0 0.7em 0;}
.consul-index td.consul-img{padding:0 10%; margin:0; width: 100%; display: block; vertical-align:bottom;}
}



#single table, #single th, #single td{ border-collapse:collapse; vertical-align:top; color:#313131; font-feature-settings: "palt";}
#single table, #single th{ table-layout:auto;}
#single table{width:100%; margin-bottom:15px;}
#single td{padding:8px 10px 8px 0;}
#single td:first-child{font-weight:bold; width:90px;}
#single td:last-child{padding:8px 0;}
#single th span, #single td span{font-size: 85%;}

#single .history td:first-child{width:50px;}

#single .inswatch table{margin:15px 0 0 0;}
#single .inswatch td:first-child{width:70px;}



#single .staff{margin-bottom: 50px; border-bottom: 2px dotted #999;}
#single .staff .staff-photo{width:100%; text-align: left;}
#single .staff .staff-photo img{width:85%;}
#single .staff td.position span{ font-size: 14px; padding: 0.5em 1em; color:#FFF; background-color:#eb613b;}
#single .staff td.name{ font-size: 24px; padding-bottom:0; font-family: source-han-sans-japanese,sans-serif; font-weight: 400; font-style: normal;}
#single .staff td.furi{ font-size: 12px; font-weight:normal; padding-bottom:16px;}
#single .staff td.office{ font-weight:normal; padding:16px 10px 0 0;}
#single .staff td:first-child{ width:110px;}
#single .staff td.end{ padding-bottom:16px;}
#single .staff td.msg{ padding: 16px 0; font-weight:normal; border-top: 1px solid #CCC; border-bottom: 1px solid #CCC;}
#single .staff td.staff-msg{ font-weight:normal; }

@media screen and (max-width:740px) {

#single .staff .one_third{margin-bottom:10px;}

#single .staff .staff-photo{ text-align: center;}
#single .staff .staff-photo img{ width:60%;}

#single .staff td:first-child{ width:80px;}
#single .staff td.position{ text-align: center; }
#single .staff td.name{ text-align: center; }
#single .staff td.furi{ text-align: center; }
#single .staff td.office{ text-align: center; }

}


.balloon{
  margin: 16px 0;
  display:flex;
  justify-content: flex-start;
  align-items: center;
}
.faceicon img{
  width: 80px; 
  height: auto;
}
.balloon .faceicon{
  margin-right:25px;
}
.says{
  width:100%;
  display: flex;
  flex-wrap: wrap;
  position: relative;
  padding: 17px 13px 15px 18px;
  border-radius: 12px;
  background: #fbf0dd;
  box-sizing:border-box;
  margin:0 !important;
  line-height:1.5;
  align-items: center;
}
.says p{
  margin:8px 0 0 !important; 
}
.says p:first-child{
  margin-top:0 !important;
}
.says:after{
  content: "";
  position: absolute;
  border: 10px solid transparent;
}
.balloon .says:after{
  left: -26px;
  border-right: 22px solid #fbf0dd;
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
}



html{background-color:#FFF;}
body{color:#333333;}
a{color:#a08768;}
a:hover{ color: #caa72d;}
hr, .borderedbox{border-color:#D7D7D7; margin:35px 0 25px 0;}
label span{color:#333; background-color:inherit;}

.icon{color:#FFFFFF; background-color:#000000;}
.icon.nobg{color:inherit; background-color:inherit; border-color:#D7D7D7;}
.red{background-color:#DC8B8A;}
.orange{background-color:#EC9700;}
.green{background-color:#A7DFC4;}
.flexslider .heading, .flexslider .btn{color:#FFFFFF;}



.row0{color:#333; background-color:#FFF;}
.row1{color:#333; background-color:#DDD;}
.row2{color:#FFF; background-color:#454139; border-top: 1px solid #CCC;}

.row6{background-color:#999;  background-image: url("theme/img/common/bright_squares.png"); height: 300px;}
.row7{color:#ffffff; background-color:#212121; background-image: none;}
.row8{color:#333; background-color:#FFF; background-image: url("theme/img/index/message_bg.jpg"); background-position: bottom; background-repeat: repeat-x; background-size: 1000px;}
.row9{color:#333; background-color:#FFF; background-image: url("theme/img/common/halftone.png");}

@media screen and (max-width:740px) {
.row2{padding-bottom:42px;}
.row6{height: 200px;}
.row8{background-size: 800px;}
}



#backtotop{color:#FFFFFF; background-color:#333333;}






@media screen and (min-width:180px) and (max-width:750px) {
	.imgl, .imgr{display:inline-block; float:none; margin:0 0 10px 0;}
	.fl_left, .fl_right{display:block; float:none;}
	.one_half, .one_third, .two_third, .one_quarter, .two_quarter, .three_quarter{display:block; float:none; width:auto; margin:0 0 30px 0; padding:0;}
	#cta{padding-bottom:0;}
	#footer{padding-bottom:20px;}
}

@media screen and (min-width:180px) and (max-width:900px) {
	#header, #services, #cta, #breadcrumb, .container, #footer, #copyright{max-width:90%;}
	.basicslider .heading{font-size:36px; line-height:36px; margin-bottom:15px;}
	.basicslider .btn{padding:10px 25px;}
	#services{padding-bottom:20px;}
	#comments input[type="reset"]{margin-top:10px;}
	
	#copyright p:first-of-type{margin-bottom:10px;}
}



@media screen and (min-width:1100px) {
	#header, #services, #cta, #breadcrumb, .container, #footer, #copyright{max-width:1100px;}
}




*{
  outline: none;
}

@media screen and (min-width:741px) {
	.sp{ display: none;}
}


@media screen and (max-width:740px) {
	.sp{ display: block;}
	.pc{ display: none;}
}
.border_radius_3{ border-radius: 3px; -webkit-border-radius: 3px; -moz-border-radius: 3px;}
.border_radius_5{ border-radius: 5px; -webkit-border-radius: 5px; -moz-border-radius: 5px;}
 

.loopSliderWrap:after{
    content: "";
    display: none;
    clear: none;
}

.rslides{
  position: relative;
  list-style: none;
  overflow: hidden;
  width: 100%;
  max-width: 100%;
  padding: 0;
  margin: 0 auto;
  z-index: 0;
  }

.rslides li{
  -webkit-backface-visibility: hidden;
  position: absolute;
  display: none;
  width: 100%;
  left: 0;
  top: 0;
  }

.rslides li:first-child{
  position: relative;
  display: block;
  float: left;
  }

.rslides img{
  display: block;
  height: auto;
  float: left;
  width: 100%;
  min-width: 250px;
  border: 0;
  object-fit: cover;
  }
  

@-webkit-keyframes sdb {
  0% {
    -webkit-transform: rotate(-45deg) translate(0, 0);
    opacity: 0;
  }
  50% {
    opacity: 1;
  }
  100% {
    -webkit-transform: rotate(-45deg) translate(-20px, 20px);
    opacity: 0;
  }
}
@keyframes sdb {
  0% {
    transform: rotate(-45deg) translate(0, 0);
    opacity: 0;
  }
  50% {
    opacity: 1;
  }
  100% {
    transform: rotate(-45deg) translate(-20px, 20px);
    opacity: 0;
  }
}









@media ( min-width: 600px) {
  
  
  
  
}







.thumb-wrap{ display: flex;}
.thumb-wrap p{ margin: 0 0 0 16px;}
.thumb-wrap img{
  width: 100px;
  height: 100%;
}

.angle{
  display: flex;
  width: 20px;
}

.ai1ec-calendar-toolbar{border:none !important;}

.tablenav{
clear:both;
padding: 1em 0;
}


.mv{ position: relative;}

.tel-area{
  position: absolute;
  top: 100px;
  right: 0;
  margin: 0;
  padding: 0;
  width: 100%;
  text-align: right;
  height: 80px;
  z-index: 7;
  color: #444;
}

.tel-area p{ padding:0; margin:0; font-size: 34px; font-family: brother-1816, sans-serif; font-weight: 400; font-style: normal;}

@media screen and (max-width:1100px) {
.tel-area p{ padding-right:20px;}
}

@media screen and (max-width:900px) {
.tel-area{ display: none;}
}

.principle{
  position: absolute;
  top: 50%;
  left: 0;
  margin: 0;
  padding: 0 0 0 50px;
  width: 100%;
  height: 80px;
  z-index: 6;
  color: #333;
}

.principle .eng, .principle .jp{padding:0; margin:0;}
.principle .eng{font-size: 34px; font-family: futura-pt, sans-serif; font-weight: 400; font-style: normal; letter-spacing: 10px; line-height: 1.4;}
.principle .eng span{ color:#eb613b;}
.principle .jp{font-size: 16px; font-family: source-han-sans-japanese, sans-serif; font-weight: 400; font-style: normal; line-height: 1.4;}

@media screen and (max-width:740px) {

.principle{
  top: 40%; 
  left: 50%;
  transform: translateY(-50%) translateX(-50%);
  -webkit-transform: translateY(-50%) translateX(-50%);
  margin: 0;
  padding: 0;
  text-align:center;
}
.principle .eng{font-size: 30px; letter-spacing: 8px;}
.principle .jp{font-size: 14px;}

}

a.btn_03{
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 50px;
  position: relative;
  background: #d58d38;
  border: 1px solid #d58d38;
  border-radius: 30px;
  box-sizing: border-box;
  padding: 0 45px 0 25px;
  color: #fff;
  font-size: 115%;
  letter-spacing: 0.1em;
  line-height: 1.3;
  text-align: left;
  text-decoration: none;
  transition-duration: 0.3s;
}
a.btn_03:before{
  content: "";
  width: 8px;
  height: 8px;
  border: 0;
  border-top: 2px solid #fff;
  border-right: 2px solid #fff;
  transform: rotate(45deg);
  position: absolute;
  top: 50%;
  right: 25px;
  margin-top: -5px;
}
a.btn_03:hover{
  background: #fff;
  color: #d58d38;
}
a.btn_03:hover:before{
  border-top: 2px solid #d58d38;
  border-right: 2px solid #d58d38;
}

.cal_wrapper{
max-width: 960px;
min-width: 300px;
margin: 0 auto;
}

.googlecal{
position: relative;
padding-bottom: 100%;
height: 0;
}

.googlecal iframe{
position: absolute;
top: 0;
left: 0;
width: 100% !important;
height: 100% !important;
}

@media only screen and (min-width: 741px) {
.googlecal{ padding-bottom: 90%; }
}

.stylist{padding: 1em 0 0 0;}
.salonprofile{padding: 1.5em 0 0 0;}
.stylistname{font-size: 130%; padding:0; margin:0;}
.romaji{font-size: 90%; padding:0 0 10px 0; margin:0; color:#999;}

.sidebar ul{ list-style:none; padding:0; margin:0;}
.sidebar li{ list-style:none; padding:0 0 1em 0; margin:0;}
.sidebar li img{border: 1px solid #cbb6a2;}


textarea,
input[type="number"],
input[type="email"],
input[type="tel"],
input[type="text"]{
    padding: 7px 10px;
    font-size: 14px;
    font-size: 1.4rem;
    border: 1px solid #ccc;
    -webkit-border-radius: 4px;
    -moz-border-radius: 4px;
    -ms-border-radius: 4px;
    border-radius: 4px;
}

textarea{
    height: 200px; 
}



textarea:focus,
input[type="tel"]:focus,
input[type="email"]:focus,
input[type="text"]:focus{
    border: 1px solid #333;
}
 
input.wpcf7-submit{
  display: flex;
  justify-content: center;
  align-items: center;
  height: 50px;
  position: relative;
  background: #d58d38;
  border: 1px solid #d58d38;
  border-radius: 30px;
  box-sizing: border-box;
  padding: 0 45px 0 25px;
  color: #fff;
  font-size: 115%;
  letter-spacing: 0.1em;
  line-height: 1.3;
  text-align: left;
  text-decoration: none;
  transition-duration: 0.3s;
}
input.wpcf7-submit:before{
  content: "";
  width: 8px;
  height: 8px;
  border: 0;
  border-top: 2px solid #fff;
  border-right: 2px solid #fff;
  transform: rotate(45deg);
  position: absolute;
  top: 50%;
  right: 25px;
  margin-top: -5px;
}
input.wpcf7-submit:hover{
  background: #fff;
  color: #d58d38;
}
input.wpcf7-submit:hover:before{
  border-top: 2px solid #d58d38;
  border-right: 2px solid #d58d38;
}

span.must{ color:#C0272D;}

@media only screen and (min-width: 741px) {
    input{ width: 50%;}
    select{ width: 50%;}
    textarea{ width: 100%;}
}

@media screen and (max-width:740px) {
    input{ width: 100%;}
    select{ width: 100%;}
    textarea{ width: 100%;}
}

.wp-block-button__link{font-size: 16px !important; width: 70%;}
.wp-block-button__link:hover{opacity: 0.7;}
@media screen and (max-width:740px) {
   .wp-block-button__link{width: 95%;}
}


header{
  display: flex;
  position: fixed;
  width: 100%;
  min-height: 70px;
  background-color: #eee;
  border-bottom: solid 1px #aaa;
  color: #fff;
  justify-content: left;
  align-items: center;
  -webkit-tap-highlight-color: rgba(0,0,0,0);
  z-index: 99;
}

header img.logo{height: 90px; margin-left: 30px;}

#nav-container{
  position: fixed;
  height: 100vh;
  width: 100%;
  pointer-events: none;
  z-index: 999;
}

#nav-content li{ font-family: source-han-sans-japanese, sans-serif; font-weight: 200; font-style: normal; line-height: 1.3;}

@media screen and (min-width:901px) {

#nav-container .bg{ display: none;}
#nav-container .button{display: none;}

#nav-content{float:right;}
#nav-content ul{ padding:0; margin:0;}
#nav-content li{ list-style-type: none; display:inline-block; padding:0; margin:0;}
#nav-content li.sp{ display:none;}
#nav-content li a{ transition:1.0s; display:table-cell; vertical-align:middle; height: 90px; width: 100px; color:#fff; background-color: #eb613b; margin:0; padding:0; font-size: 14px; border:0; text-align: center; cursor: pointer; pointer-events: auto;}
#nav-content li a:hover{ background-color: #ebab3b; }

}



@media screen and (max-width:900px) {

header{min-height: 60px;}
header img.logo{height: 60px; margin-left: 15px;}

#nav-container .bg{
  position: absolute;
  top: 60px;
  left: 0;
  width: 100%;
  height: calc(100% - 60px);
  visibility: hidden;
  opacity: 0;
  transition: .3s;
  background: #000;
}
#nav-container[data-open="true"] .bg{
  visibility: visible;
  opacity: .6;
}
#nav-container *{
  visibility: visible;
}

#nav-container .button{
  position: relative;
  display: flex;
  flex-direction: column;
  justify-content: center;
  -webkit-appearance: none;
  border: 0;
  background: transparent;
  border-radius: 0;
  float:right;
  height: 60px;
  width: 30px;
  cursor: pointer;
  pointer-events: auto;
  margin-right: 15px;
  touch-action: manipulation;
  -webkit-tap-highlight-color: rgba(0,0,0,0);
}
#nav-container .icon-bar{
  display: block;
  width: 100%;
  height: 3px;
  background: #666;
  transition: .3s;
}
#nav-container .icon-bar + .icon-bar{
  margin-top: 5px;
}

#nav-container[data-open="true"] .button{
  pointer-events: none;
}
#nav-container[data-open="true"] .icon-bar:nth-of-type(1){
  transform: translate3d(0,8px,0) rotate(45deg);
}
#nav-container[data-open="true"] .icon-bar:nth-of-type(2){
  opacity: 0;
}
#nav-container[data-open="true"] .icon-bar:nth-of-type(3){
  transform: translate3d(0,-8px,0) rotate(-45deg);
}

#nav-content{
  margin-top: 60px;
  padding: 20px;
  width: 70%;
  max-width: 400px;
  position: absolute;
  top: 0;
  right: 0;
  height: calc(100% - 50px);
  background: #eb613b;
  pointer-events: auto;
  -webkit-tap-highlight-color: rgba(0,0,0,0);
  transform: translateX(100%);
  transition: transform .3s;
  will-change: transform;
  contain: paint;
}

#nav-content ul{
  height: 100%;
  display: flex;
  flex-direction: column;
}

#nav-content li a{
color: #FFFFFF;
  padding: 10px 5px;
  display: block;
  text-transform: uppercase;
  transition: color .1s;
}

#nav-content li a:hover{
  color: #ffdea9;
}

#nav-content li:not(.small) + .small{
  margin-top: auto;
}

#nav-container .small{
  display: flex;
  align-self: center;
}

#nav-container .small a{
  font-size: 12px;
  font-weight: 400;
  color: #FFFFFF;
}
#nav-container .small a + a{
  margin-left: 15px;
}

#nav-container[data-open="true"] #nav-content{
  transform: none;
}

#nav-container a,
#nav-container a:visited,
#nav-container a:focus,
#nav-container a:active,
#nav-container a:link{
  text-decoration: none;
  outline: 0;
}

#nav-container a{
  color: currentColor;
  transition: .2s ease-in-out;
}

#nav-container ul{
  padding: 0;
  list-style: none;
}
}


section{
  width: 250px;
  margin: 0 auto;
  padding: 0.5em 0;
}
a.btn_03{
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 40px;
  position: relative;
  background: #eb613b;
  border: 1px solid #FFF;
  color: #fff;
  font-size: 100%;
  line-height: 1.3;
  text-align: left;
  text-decoration: none;
  transition-duration: 0.3s;
}
a.btn_03:before{
  content: "";
  width: 8px;
  height: 8px;
  border: 0;
  border-top: 2px solid #fff;
  border-right: 2px solid #fff;
  transform: rotate(45deg);
  position: absolute;
  top: 50%;
  right: 25px;
  margin-top: -5px;
}
a.btn_03:hover{
  background: #fff;
  color: #eb613b;
}
a.btn_03:hover:before{
  border-top: 2px solid #eb613b;
  border-right: 2px solid #eb613b;
}

@media screen and (max-width:740px) {
section{ width: 80%; margin: 0 auto; padding: 0.5em 0;}
}

.mv{ max-width:1100px; margin: 0 auto;}


.philosophy{ width:70%; margin:0 auto;}

.philosophy ul{ padding: 0.5em 0 0 1.7em; position: relative; border-radius: 5px;}

.philosophy ul li{
  font-size: 18px;
  line-height:1.6em;
  margin: 0.8em 0;
  list-style-type: none!important;
  font-family: source-han-sans-japanese,sans-serif;
  font-weight: 400;
  font-style: normal;
  font-feature-settings: "palt";
}
.philosophy ul li:before{
  font-family: "FontAwesome";
  content: "";
  position: absolute;
  left : 0;
  color: #d93d3f;
}

@media screen and (max-width:740px) {
.philosophy{ width:100%;}
}

.message p{font-size:16px; font-family: source-han-sans-japanese,sans-serif; font-weight: 400; font-style: normal; line-height:2em;}
.message p span{background: linear-gradient(transparent 60%, #ffff66 60%);}


@media screen and (min-width:741px) {
  .sp-tel-area a{ display: none; }
}

@media screen and (max-width:740px) {
.sp-tel-area a{
  position: fixed;
  display: block;
  bottom: 0;
  padding:0.5em 0;
  margin:0;
  font-size: 24px;
  font-family: brother-1816, sans-serif;
  font-weight: 400;
  font-style: normal;
  color:#FFF;
  width: 100%;
  background-color:#eb613b;
  border-top: 1px solid #CCC;
  text-align: center;
  z-index: 999;
}

.sp-tel-area a span{
  font-size: 12px;
  font-family: source-han-sans-japanese,sans-serif;
  font-weight: 400;
  font-style: normal;
  vertical-align: 17%;
}
}





@media screen and (max-width:740px) {

.liquid-speech-balloon-avatar{
    position: relative;
    width: 55px;
    height: 55px;
}

.liquid-speech-balloon-avatar::after{
    top: 60px;
    font-size: 12px;
}

.liquid-speech-balloon-text{
    padding: 10px 15px;
    margin-left: 15px;
}

.liquid-speech-balloon-arrow{
    top: 20px;
}

.liquid-speech-balloon-right .liquid-speech-balloon-text{
    margin-left: 0;
    margin-right: 15px;
}
}

.wp-block-image figcaption{
    margin-top: .5em;
    margin-bottom: 2em;
}
/* Static-site accessibility and WordPress block presentation. */
html{scroll-behavior:smooth;scroll-padding-top:110px}body{overflow-wrap:anywhere}a:focus-visible,button:focus-visible{outline:3px solid #205b9b;outline-offset:4px}a[href^="tel:"]{pointer-events:auto;cursor:pointer}.visually-hidden,.skip-link:not(:focus){position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.skip-link:focus{position:fixed;top:8px;left:8px;z-index:2000;background:white;padding:12px;color:#222}header{top:0}#nav-container{top:0}.page-kicker{display:inline-block}.row6 .top{font-size:14px;font-weight:400}.fas{display:inline-block;font:normal normal normal 1em/1 FontAwesome}.fa-mobile-alt::before{content:""}.fas.fa-building::before{content:""}.wp-block-image{margin:1em 0}.wp-block-image img{max-width:100%;height:auto}.wp-block-image figcaption{color:#666;font-size:13px;margin:.5em 0 2em}.aligncenter{text-align:center;margin-left:auto;margin-right:auto}.wp-block-table{margin:1.2em 0;max-width:100%;overflow-x:auto}.wp-block-table table{width:100%;border-collapse:collapse;border:0}.wp-block-table td,.wp-block-table th{padding:.7em;border:0;vertical-align:top}.wp-block-table tr{border:0;border-bottom:1px solid #ddd}.wp-block-table.history td:first-child{white-space:nowrap}.wp-block-table.inswatch td:first-child{min-width:5em;white-space:nowrap}.wp-block-button{text-align:center;margin:1.3em 0}.wp-block-button__link{display:inline-block;background:#eb613b;color:#fff;padding:12px 20px;border-radius:30px;line-height:1.6}.has-text-align-right{text-align:right}.has-text-align-center{text-align:center}.has-background{padding:1em}.has-luminous-vivid-amber-background-color{background:#fcb900}.has-light-green-cyan-background-color{background:#7bdcb5}.has-very-dark-gray-color{color:#313131}.wp-block-separator{border:0;border-top:1px solid #ddd;margin:2em 0}.contact-phone{font-size:30px}.unavailable-document{color:#777}#backtotop{opacity:1;visibility:visible;bottom:20px}#single{min-width:0}#single iframe{max-width:100%}.rslides{display:grid}.rslides li,.rslides li:first-child{grid-area:1/1;display:block;position:relative;float:none;opacity:0;visibility:visible;transition:opacity 3s ease-in-out;pointer-events:none}.rslides li:first-child,.rslides li.is-active{opacity:1;visibility:visible}.rslides.is-ready li:not(.is-active){opacity:0;visibility:visible}.rslides li img{float:none}.mv{position:relative}.staff table td{overflow-wrap:anywhere}
@media(max-width:900px){html{scroll-padding-top:75px}#nav-container .button{padding:0}#nav-container[data-open="true"] .button{pointer-events:auto}#nav-content{visibility:hidden;overflow-y:auto;height:calc(100dvh - 60px)}#nav-container #nav-content *{visibility:inherit}#nav-container[data-open="true"] #nav-content{visibility:visible}#nav-content ul{height:auto}#nav-container[data-open="true"] .bg{pointer-events:auto}#nav-container{height:100dvh}}
@media(max-width:740px){.row6 .top{font-size:14px}#backtotop{bottom:75px}.staff table{width:100%;table-layout:auto}.wp-block-table td{padding:.55em}.wp-block-table.history td:first-child{width:4em}.contact-phone{font-size:28px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}}
/* Preserve the original title rule after improving the heading hierarchy. */
.page-kicker::after{content:"";position:absolute;left:50%;bottom:-7px;transform:translateX(-50%);width:60px;height:3px;background:#eb613b;border-radius:2px}
@media(min-width:901px) and (max-width:1099px){.container,#footer,#copyright{width:90%}}

/* PCメニュー：ボタン間だけ1px。inline-blockの空白とセル罫線を使わない。 */
@media (min-width:901px) {
  #nav-content ul { display:flex; flex-direction:row; gap:1px; }
  #nav-content li { margin:0; padding:0; flex:0 0 100px; }
  #nav-content li a { display:table-cell; vertical-align:middle; width:100px; border:0; }
}
/* 一覧テーブル：外枠・縦線・上罫線を除き、各行の下だけに罫線を表示。 */
#single .wp-block-table table,
#single .wp-block-table thead,
#single .wp-block-table tbody,
#single .wp-block-table tfoot,
#single .wp-block-table td,
#single .wp-block-table th { border:0; }
#single .wp-block-table tr { border:0; border-bottom:1px solid #ddd; }
