@charset "utf-8";
body {
	font-family: "リュウミン R-KL" , "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
	font-size: 14px;
	font-weight: 300;
}
.clearfix:after {
	content: ".";
	display: block;
	height: 0;
	clear: both;
	visibility: hidden;
	overflow: hidden;
	font-size: 0.1em;
	line-height: 0;
}
.pc {
	display: none;
  }
.sp {
	display: block;
}
.b_sp{
	display: none;	
}
.b_pc{
	display: block;	
}
.b_pad{
	display: none;	
}
@keyframes zoomUp {
  0% {
    transform: scale(1);
}
  100% {
    transform: scale(1.15);
}
}
.swiper-slide-active .slide-img,
.swiper-slide-duplicate-active .slide-img,
.swiper-slide-prev .slide-img{
  animation: zoomUp 10s linear 0s 1 normal both;  
}
.slide-img img{
  display: block;
}
#wall_01{
  padding-top:80px;
  margin-top:-80px;
}
@media screen and (min-width: 960px) {
.pc {
    display: block;
}
.sp {
    display: none;
}
}
/****************************************************/
/*共通*/
/****************************************************/
#top img {
    max-width: 100%;
    height: auto;
    box-shadow: 3px 2px 5px rgb(0 0 0 / 30%);
}
section {
  width: 100%;
  margin: auto;
  overflow: hidden;
}
section .ttl {
  text-align: center;
  color: #001d66;
  font-size: 24px;
  font-weight: bold;
  margin-bottom: 50px;
}
section .ttl span {
  display: block;
  font-size: 0.6em;
  font-weight: bold;
}
#top_mv_catch > h1 >img {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    margin: auto;
    z-index: 10;
    width: 100%;
    max-width: 400px;
    height: auto;
	box-shadow: none;
}
#top_mv_catch {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    margin: auto;
    z-index: 10;
    width: 100%;
    max-width: 400px;
    height: auto;
}
section.top-mv {
    position: relative;
}
#top_mv_slide {
    height: 100%;
    width: 100%;
    padding: 0;
    display: block;
}
#top_mv_slide {
    height: 100%;
    width: 100%;
    padding: 0;
    display: block;
}
.mv_inner {
    height: 100%;
    width: 100%;
    padding: 0;
    display: block;
}
video {
  width: 100%;
}
#pankuzu {
    width: 100%;
	background: #E6E6E6;
}
.inner {
    margin: 0 auto;
    width: 1100px;
}
#pankuzu ul {
    padding: 8px 0 5px;
}
nav ul {
    list-style: none;
}
#pankuzu ul li {
    display: inline-block;
	font-family: 游ゴシック体, 游ゴシック, YuGothic;
	color: #001d66;
	font-weight: 900;
}
#pankuzu ul li a {
    font-family: 游ゴシック体, 游ゴシック, YuGothic;
	color: #001d66;
	font-weight: 900;
}
#pankuzu ul li:not(:first-child):before {
    content: ">";
    margin: 0.5em;
}
.pan p {
    width: 1100px;
    margin: 0 auto;
	padding: 10px 0;
    font-family: 游ゴシック体, 游ゴシック, YuGothic;
	color: #001d66;
	font-weight: 900;
}
.footer_info {
    font-size: 16px;
    text-align: center;
	color: #fff;
}
/****************************************************/
/*ヘッダー*/
/****************************************************/
header.sp {
	position: absolute;
	width: 100%;
	height: auto;
	margin: 0 auto;
	padding: 0;
	background: none;
	top: 0;
	left: 0;
	background: #E48B8D;
}
h1.headerlogo {
	position: absolute;
	top: 2%;
	left: 0;
	right: 0;
	text-align: center;
	z-index: 10;
}
h1.headerlogo img {
	max-width: 150px;
}
.header-inner {
    display: flex;
    width: 1100px;
    margin: 0 auto;
}
@media screen and (min-width: 960px){
header {
    position: fixed;
    width: 100%;
    top:0;
    background: #fff;
	box-shadow: 0 3px 6px rgba(0, 0, 0, 0.05);   
}
.header-inner {
    display: flex;
    width: 1100px;
    margin: 0 auto;
}
#top_g {
    z-index: 10;
    position: absolute;
}	
.header-inner h1 {
    display: flex;
    height: 80px;
    -webkit-align-items: center;
    align-items: center;
    padding: 0 5% 0 0;
}
.header-inner h1 a {
    margin: 0 auto;
}
.header-inner img {
    max-width: 150px;
    vertical-align: bottom;
	box-shadow: none !important;  
}
.header-inner nav {
    width: 100%;
}
.header-inner nav ul {	  
    display: flex;
    width: 100%;
    height: 80px;
    -webkit-align-items: center;
    align-items: center;
}
.header-inner nav ul li {
	width: 7%;
    font-size: 14px;
    font-weight: bold;
    text-align: center;
}	
.header-inner nav ul li:nth-of-type(2)  {
    width: 20%;
}
.header-inner nav ul li:nth-of-type(3) {
    width: 10%;
}
.header-inner nav ul li:nth-of-type(4)  {
    width: 24%;
}
.header-inner nav ul li:nth-of-type(6) {
    width: 12%;
}
.header-inner nav ul li:nth-of-type(7) {
    width: 13%;
}
.header-inner nav ul li a {
    color: #001d66;
    transition: .6s;
    font-weight: 900;
	text-shadow: 3px 2px 5px rgb(0 0 0 / 15%);
	font-family: 游ゴシック体, 游ゴシック, YuGothic;
	line-height: 80px;
	height: 80px;  
    display: block;  
}
.header-inner nav ul li a:hover {
    color: #4374c1;
    transition: .3s;
  }
}
ul.menu li:hover ul {
	display: block;	
	top: 80px;
	visibility: visible;
	opacity: 0.95;
}
.header__menu02:hover{
	color: #fff!important;
	background: rgba(24,41,77,0.96);
	transition: .3s;
}
ul.menu li:hover ul li ul {
	position: relative;
    width: 100%;
    top: -20px;
    background: none;
}
ul.menu li ul li ul li {
    width: 100% !important;
}
ul.menu li ul li ul li a:hover {
    color: #4374c1 !important;
    transition: .3s;
}
ul.menu ul {
	margin: 0px;		
	display: none;		
	position: absolute;	
	top: 40px;
    left: 0;
    box-sizing: border-box;
    width: 100%;
    padding: 20px 15%;
    background: url(../img/menu.png) center top / cover no-repeat rgba(24,41,77,0.97);
    -webkit-transition: all .3s ease;
    transition: all .3s ease;
    height: auto;
}
ul.menu ul li {
    float: left;
    width: calc(33.333%) !important;
    border: none;
	box-sizing: border-box;
	transition: all 0.2s ease;
	-webkit-transition: all 0.2s ease;
}
ul.menu ul li a {
    line-height: 35px;
    text-align: center;
    padding-left: 0;
    font-weight: normal;
    color: #fff;
    text-decoration: none;
    height: auto;
    display: block;
    margin: 0 auto;
}
li.menu-item-01.lh-01 a {
    line-height: 25px;
}
ul.menu ul .menu-item-01 a:hover {
	background-color: #fbfbfb;	
	color: #0673bf;	
	border-radius: 3px;
}	
#mainNavi > ul > li.sp {
	display:none;
}
.sidemenu-course p.blue:hover,
.sidemenu-course p.green:hover,
.a-list01 > li > a:hover ,
.s_txt03 > li > p > a:hover {
    transition: 0.3s;
    opacity: 0.6;
}
.header-inner > nav > ul > li.fl01 {
    width: 60px;
    height: 191px;
    position: absolute;
    right: 0;
    top: 150px;
    background: url(../img/contact.png) no-repeat;
    overflow: hidden;
    text-indent: 105%;
    white-space: nowrap;
    z-index: 10;
    transition: all 0.5s 0.25s;
	bottom: 20%;
}
.header-inner > nav > ul > li.fl02 {
    width: 60px;
    height: 134px;
    position: absolute;
    right: 0;
    top: 343px;
    background: url(../img/price_estimate.png) no-repeat;
    overflow: hidden;
    text-indent: 105%;
    white-space: nowrap;
    z-index: 10;
    transition: all 0.5s 0.25s;
    bottom: 20%;
}
.header-inner > nav > ul > li.fl01.add-fl.hide , .header-inner > nav > ul > li.fl02.add-fl.hide { opacity: 0; pointer-events: none }
.header-inner > nav > ul > li.fl01 a , .header-inner > nav > ul > li.fl02 a {
    width: 100%;
    height: 100%;
}
.DSmenu　.sub-menu {
	border: 2px solid #d9d9d9;
}
.toggle_title {
	position: relative;
	padding: 15px;
	cursor: pointer;
	font-size: 18px;
	text-align: center;
	line-height: 1.4;
}
.toggle_btn {
	position: absolute;
	top: 50%;
	right: 20px;
	transform: translateY(-50%);
	background: #0052a4;
	display: block;
	width: 24px;
	height: 24px;
	text-indent: 100%;
	white-space: nowrap;
	overflow: hidden;
	border-radius: 50%;
}
.toggle_btn:before, .toggle_btn:after {
	display: block;
	content: '';
	background-color: #fff;
	position: absolute;
	width: 10px;
	height: 2px;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
}
.toggle_btn:before {
	width: 2px;
	height: 10px;
}
.toggle_title.selected .toggle_btn:before {
	content: normal;
}
.gnav_04 .sub-menu {
	display: none;
} 
.gnav_04 * {
   -moz-transition: .3s;
   -webkit-transition: .3s;
   -o-transition: .3s;
   -ms-transition: .3s;
   transition: .3s;
}
/****************************************************/
/*メインビジュアル*/
/****************************************************/
#top {
	position: relative;
	width: 100%;
	height: 100vh;
	z-index: 1;
}
#main_visual {
	position: relative;
	width: 100%;
	height: 100%;
	background-size: contain;
}
#main-txt {
	width: 94%;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
	-webkit-transform: translate(-50%,-50%);
	-ms-transform: translate(-50%,-50%);
}
#main-txt h2 {
 	font-size: 1.4em;
	line-height: 2em;
	color: #fff;
}
#main-txt p {
	color: #fff;
}
@media screen and (min-width: 960px){
  #main-txt {
    max-width: 980px;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%,-50%);
    -webkit-transform: translate(-50%,-50%);
    -ms-transform: translate(-50%,-50%);
}
  #main-txt h2 {
    font-size: 2.2em;
}
}
button.fixed_cta img {
    box-shadow: none !important;
}
.fixed_cta {
    position: fixed;
    bottom: 20%;
    left: 0;
    padding: 6px 40px;
    z-index: 40;
}

/****************************************************/
/*ご挨拶*/
/****************************************************/
.topfirst {
	padding: 60px 0;
	text-align: center;
}
.topfirst-inner {
	background: rgba(255,255,255,0.8);
	border-radius: 2px;
	width: 100%;
	max-width: 1100px;
	margin: 0 auto;
	padding: 15px 4% 30px;
	box-sizing: border-box;
}
.h-title01 {
    color: #001d66;
    font-size: 36px;
    margin: 0 0 50px 0;
	text-align: center;
	text-shadow: 1px 1px 5px rgb(0 0 0 / 30%);
	line-height: 0.2;
}
.topfirst-inner p {
    text-align: center;
    font-size: 16px;
    line-height: 2;
	font-family: "リュウミン M-KL","Ryumin Medium KL" , "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝";
	font-weight: bold;
}
.salon_inner01 , .salon_inner02 {
    display: flex;
    flex-wrap: nowrap;
    margin: 0 auto;
	width: 100%;
    max-width: 1100px;
	padding: 40px 0;
}
.salon_inner01 div {
    flex-basis: calc((100% - 60px) / 2);
    max-width: calc((100% - 60px) / 2);
    margin: 20px 60px 0 0;
}
.salon_inner01 div:nth-child(2n) {
    margin: 20px 0 0;
}
.salon_inner01 > div > p , .add_txt02{
    text-align: start!important;
    font-size: 16px !important;
	line-height: 2!important;
	font-family: "リュウミン M-KL","Ryumin Medium KL" , "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝";
	font-weight: bold;
}
.add_txt02 {
    text-align: center !important;
    margin: 0 auto;
    margin: 0 auto;
    width: 100%;
    max-width: 1100px;
}
.salon_inner_ttl {
    font-size: 26px;
    text-align: left;
	line-height: 1.7;
	margin: 0 0 30px 0;
	color: #001d66;
}
.salon_inner02 div {
    flex-basis: calc((100% - 60px) / 2);
    max-width: calc((100% - 60px) / 2);
    margin: 20px 60px 0 0!important;
}
/*.salon_inner02 {
    margin: 60px 0;
}*/
.salon_inner_ttl02 {
    font-size: 22px;
    text-align: right;
    line-height: 1.7;
    margin: 0 0 30px 0;
}
.salon_inner02 .salon_inner_ttl {
    font-size: 27px;
    text-align: end;
    line-height: 1.7;
    margin: 0 0 30px 0;
	color: #001d66;
}
.salon_inner02 .salon_inner_ttl span {
    display: inline-block;
    text-align: right;
}
.salon_inner02 > div > p >span {
    text-align: start;
    display: inline-block;
}
.salon_inner02 > div > p {
    text-align: end!important;
    font-size: 16px !important;
	line-height: 2!important;
	font-family: "リュウミン M-KL","Ryumin Medium KL" , "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝";
	font-weight: bold;
}
.salon_inner02 div+div {
    margin: 20px 0 0 !important;
}
.btn {
	background: #001d66;
	border: 2px solid transparent;
	color:  #fff;
	display: inline-block;
	font-size: 18px;
	font-weight: bold;
	max-width: 100%;
	padding: 20px;
	text-align: center;
	width: 280px;
}
.btn {
    color: #FFF;
    position: relative;
    padding: 15px;
}
.btn:focus,
.btn:hover {
	background: #fff;
	border-color: currentColor;
	color: #001d66;
}
.btn::before{
	content: "";
	position: absolute;
	top: 50%;
	left: 5%;
	width: 10px;
	height: 10px;
	border-top: 1px solid #fff;
	border-right: 1px solid #fff;
	transform: rotate(45deg);
	margin-top: -5px;
}
.btn.btn-arrow-right.btn02 {
    width: 200px;
    text-align: center;
}
@media screen and (max-width: 560px){
.greeting-inner img {
    width: 100%;
    max-width: 340px;
}
.topfirst-inner {
	display: block;
    flex-wrap: nowrap;  
}
.greeting-inner p {
	padding: 0;  
}	
}
@media screen and (min-width: 960px){
.topfirst {
    padding: 100px 0 0;
}
.topfirst-inner {
    padding: 30px 0;
}
.greeting-inner p {
    font-size: 1.2em;
    line-height: 2em;
}
}
.salon-inner06 dl .l_content {
    height: 123px;
    display: table-cell;
    vertical-align: middle;
}
.salon-inner06 dl .l_content p a img {
    box-shadow: none !important;
}
/****************************************************/
/*業務内容*/
/****************************************************/
.service {
  padding: 60px 0;
}
.service-inner {
    width: 100%;
    margin: 0 auto;
    text-align: center;
}
.service-inner h2 {
  margin-bottom: 50px;
}
.service-inner .add_con02 , .service-inner .c_list02 {
	overflow: hidden;
    margin: 30px auto 0;
    width: 100%;
    max-width: 1100px;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    text-align: center;
}
.service-inner .add_con02 li , .service-inner .c_list02 li {
	flex-basis:calc((100% - 40px) / 3);
	max-width:calc((100% - 40px) / 3);
	margin-top:20px;
	margin-bottom: 20px;
	padding: 0 !important;
	box-sizing: border-box;
	list-style-type: none;
}
.add_bottom01 {
	margin-bottom: 50px;
}
.service-inner .add_con02 li h3 {
	display: inline-block;
	margin-bottom: 30px;
	padding: 0.5% 10%;
	color: #fff;
	border-radius: 2px;
}
.service-inner .add_con02 li img {
	display: block;
    width: 100%;
    max-width: 340px;
    margin: 0 auto;
}
.list-box01 {
    list-style:  none;      
    margin:  20px 0 50px;             
    padding: 0; 
	text-align: left;
}
.list_01 {
	color: #4d0027;  
}
.list_01:before {
    content:  "";    
    width:  10px;               
    height:  10px;           
    display:  inline-block;    
    background-color: #4d0027; 
	position:  relative;      
    top: -1px;                  
    margin-right: 5px;          
}
.list_02 {
	color: #002d6b;  
}
.list_02:before {
    content:  "";    
    width:  10px;               
    height:  10px;           
    display:  inline-block;    
    background-color: #002d6b; 
	position:  relative;      
    top: -1px;                  
    margin-right: 5px;   	
}
.list_03 {
	color: #30551a;  
}
.list_03:before {
    content:  "";    
    width:  10px;               
    height:  10px;           
    display:  inline-block;    
    background-color: #30551a;
	position:  relative;      
    top: -1px;                  
    margin-right: 5px;   	
}
@media screen and (min-width: 560px){
.service-inner .add_con02 li , .service-inner .c_list02 li {
    width: 33.333%;
    float: left;
    padding: 1%;
}
.service-inner .add_con02 li .list-box01 li {
    width: 100%;
    float: none;
	margin: 0;
    max-width: 100%;
}	
}
@media screen and (min-width: 960px){
.service {
    padding: 60px 0 0;
}
.service-inner h2 {
    font-size: 1.2em;
}
}
/****************************************************/
/*フッター*/
/****************************************************/
footer {
	width: 100%;
	background: #001d66;
	text-align: center;
	font-family: 游ゴシック体, 游ゴシック, YuGothic;
	font-weight: bold;
}
.footer_logo {
    clear: both;
}
.footer_logo img {
    box-shadow: none !important;
}
.footer-inner {
	max-width: 1080px;
	margin: 0 auto;
	padding: 60px 0;
}
.footer-company {
	margin-bottom: 30px;
}
.footer-company img {
	max-width: 180px;
	margin: 0 auto;
}
.footer-company p,
.footer-company p a {
	color: #fff;
}
.copyright,
.copyright a {
	color: #fff;
	font-size: 0.9em;
}
footer .footer-inner dl {
    width: 18%;
    padding: 1%;
    float: left;
    font-size: 13px;
    text-align: center;
}
div#footer div#footerMenuWrap:after {
	content : "";
	display : block;
	height : 0;
	clear : both;
}
footer .footer-inner dl dt a {
    margin-bottom: 5px;
    font-weight: bold;
    color: #fff;
}
footer .footer-inner dl dd{
	margin-bottom: 5px;
	font-weight: bold;
}
footer .footer-inner dl dd ul li{
	margin: 10px 0;
	padding-left:10px;
}
footer .footer-inner dl dd ul li span{
	font-size: x-small;
	padding-left:13px;
	display: inline-block;
}
footer .footer-inner dl dd ul li a{
	text-decoration: none;
	color: #fff;
	font-size: smaller;
	display: block;
}
footer .footer-inner:after {
    content: "";
    display: block;
    height: 0;
    clear: both;
}
ul {
    list-style: none;
}
footer .footer-inner dl dd ul li {
    margin: 5px 0;
    padding-left: 10px;
}
.footer_logo img {
    margin: 100px 0 50px;
}
footer .footer-copy {
	color: #fff;
    text-align: center;
	padding: 30px 0;
	background: #000;				
}
/****************************************************/
/*サービス・under*/
/****************************************************/
.body_v {
    background: url(../img/h_bg.jpg) center center / cover no-repeat;
    width: 100%;
	height: 468px;
    position: relative;
}
.body_v01 {
    background: url(../img/house_header.jpg) center center / cover no-repeat;
    width: 100%;
	height: 468px;
    position: relative;
}
.body_v02 {
    background: url(../img/floor_header.jpg) center center / cover no-repeat;
    width: 100%;
	height: 468px;
    position: relative;
}
.body_v03 {
    background: url(../img/wall_header.jpg) center center / cover no-repeat;
    width: 100%;
	height: 468px;
    position: relative;
}
.body_v04 {
    background: url(../img/flow_header.jpg) center center / cover no-repeat;
    width: 100%;
	height: 468px;
    position: relative;
}
.body_v05 {
    background: url(../img/faq_header.jpg) center center / cover no-repeat;
    width: 100%;
	height: 468px;
    position: relative;
}
.body_v06 {
    background: url(../img/company_header.jpg) center center / cover no-repeat;
    width: 100%;
	height: 468px;
    position: relative;
}
.body_v07 {
    background: url(../img/other_header.jpg) center center / cover no-repeat;
    width: 100%;
	height: 468px;
    position: relative;
}
.body_v08 {
    background: url(../img/h_bg.jpg) center center / cover no-repeat;
    width: 100%;
	height: 468px;
    position: relative;
}
.body_v09 {
    background: url("../img/contact_header.jpg") center center / cover no-repeat;
    width: 100%;
	height: 468px;
    position: relative;
}
.body_v10 {
    background: url("../img/zoom_header.jpg") center center / cover no-repeat;
    width: 100%;
	height: 468px;
    position: relative;
}
.body_text {
	width: 100%;
    height: auto;
    position: relative;
    top: 40%;
    left: 0;
    right: 0;
    margin: 0 auto;	
}
.body_text:before {
    content: "";
    width: 100%;
	max-width: 22%;
    height: 1px;
    display: block;
    background-color: #fff;
    position: absolute;
    bottom: 66px;
    left: 0;
}
.body_text > div > h3 > b {
    display: inline-block;
    border-bottom: solid 1px #fff;
}
.body_v > div > div ,
.body_v01 > div > div ,
.body_v02 > div > div ,
.body_v03 > div > div ,
.body_v04 > div > div ,
.body_v05 > div > div ,
.body_v06 > div > div ,
.body_v07 > div > div ,
.body_v08 > div > div ,
.body_v09 > div > div ,
.body_v10 > div > div {
	position: relative;
    width: 1100px;
    bottom: 10px;
    left: 0;
    right: 0;
    margin: 0 auto;
}
.body_v > div > div > h3 ,
.body_v01 > div > div > h3 ,
.body_v02 > div > div > h3 ,
.body_v03 > div > div > h3 ,
.body_v04 > div > div > h3 ,
.body_v05 > div > div > h3 ,
.body_v06 > div > div > h3 ,
.body_v07 > div > div > h3 ,
.body_v08 > div > div > h3 ,
.body_v09 > div > div > h3 ,
.body_v10 > div > div > h3 {
    min-width: 50%;
    color: #fff;
    font-weight: normal;
    font-size: 40px;
    line-height: 1.4;
    padding-right: 25px;
}
.body_v > div > div > h3 > i,
.body_v01 > div > div > h3 > i,
.body_v02 > div > div > h3 > i,
.body_v03 > div > div > h3 > i,
.body_v04 > div > div > h3 > i,
.body_v05 > div > div > h3 > i,
.body_v06 > div > div > h3 > i,
.body_v07 > div > div > h3 > i,
.body_v08 > div > div > h3 > i,
.body_v09 > div > div > h3 > i,
.body_v10 > div > div > h3 > i{
	width: 75px;
    font-size: 30px;
	position: relative;
    left: 5%;
	display: block;
}
.body_v > div > div > h3 > i > img , 
.body_v01 > div > div > h3 > i > img , 
.body_v02 > div > div > h3 > i > img , 
.body_v03 > div > div > h3 > i > img , 
.body_v04 > div > div > h3 > i > img , 
.body_v05 > div > div > h3 > i > img , 
.body_v06 > div > div > h3 > i > img , 
.body_v07 > div > div > h3 > i > img ,
.body_v08 > div > div > h3 > i > img , 
.body_v09 > div > div > h3 > i > img ,
.body_v10 > div > div > h3 > i > img {
    width: 100%;
}
.body_v > div > div > h3 > span ,
.body_v01 > div > div > h3 > span ,
.body_v02 > div > div > h3 > span ,
.body_v03 > div > div > h3 > span ,
.body_v04 > div > div > h3 > span ,
.body_v05 > div > div > h3 > span ,
.body_v06 > div > div > h3 > span ,
.body_v07 > div > div > h3 > span ,
.body_v08 > div > div > h3 > span ,
.body_v09 > div > div > h3 > span ,
.body_v10 > div > div > h3 > span {
    font-size: 20px;
	position: relative;
    top: -20px;
    left: 0;
}
#service02 {
    padding: 0;
    width: 100%;
    max-width: 1100px;
    margin: 0 auto;
}
@media screen and (min-width: 960px){
.service01 {
    padding: 100px 0;
}
}
.txt_l .h-title02 {
    margin: 0 0 30px 0;
	text-align: left;
}
.box1 {
    padding: 3.5em;
    margin: 2em 0;
    font-weight: bold;
    border: solid 1px #000000;
}
.box1 p , .box2 p , .service_inner02 .txt_add06 {
    margin: 0; 
    padding: 0;
	text-align: left;
}
#service02 .service-inner ul li h3 {
    display: inline-block;
    margin-bottom: 30px;
    padding: 0.5%;
    color: #000;
	font-size: 28px;
	position: relative;
	border-radius: 0;
}
#service02 .service-inner ul li h3:after {
	content: '';
	position: absolute;
	bottom: -15px;
	display: inline-block;
	width: 60px;
	height: 5px;
	left: 50%;
	-webkit-transform: translateX(-50%);
	transform: translateX(-50%);
	background-color: black;
	border-radius: 2px;
}
.service-inner03 {
    padding: 30px 0;
}
.service-inner03 .h-title03 ,
#service03 .h-title03 ,
#service04 .h-title03 ,
.salon-inner04 .h-title03 ,
.salon-inner .h-title03 ,
.accordion-container .h-title03 , 
.service-inner01 .h-title03 {
    font-size: 34px;
	display: inline-block;
    margin-bottom: 30px;
    padding: 0.5% 10%;
    color: #001d66;
	position: relative;
	border-radius: 0;
}
.service-inner03 .h-title03:after ,
#service03 .h-title03:after ,
#service04 .h-title03:after ,
.salon-inner04 .h-title03:after ,
.salon-inner .h-title03:after ,
.accordion-container .h-title03:after ,
.service-inner01 .h-title03:after {
	content: '';
	position: absolute;
	bottom: -15px;
	display: inline-block;
    width: 50px;
    height: 4px;
	left: 50%;
	-webkit-transform: translateX(-50%);
	transform: translateX(-50%);
	background-color: #001d66;
	border-radius: 2px;
}
.service-inner03 span {
    font-size: 34px;
    display: block;
	color: #001d66;
}
.service-inner03 .txt_add02 {
    font-size: 28px;
    display: block;
}
#service03 , #service04 ,.service-inner01 {
    text-align: center;
}
/****************************************************/
/*salon*/
/****************************************************/
.h-title02 {
    color: #001d66;
    font-size: 36px;
    margin: 0 0 50px 0;
    text-align: center;
    text-shadow: 1px 1px 5px rgb(0 0 0 / 30%);
    line-height: 1.5;
}
.add_h04 {
	margin: 0 0 100px;
}
.add_h05 {
	padding: 0;
	margin: 100px 0 0;
}
.add_h06 {
	margin: 0 auto !important;
}
.txt_s .h-title02 {
    color: #001d66;
    font-size: 30px;
    margin: 0 0 50px 0;
    text-align: center;
    text-shadow: 1px 1px 5px rgb(0 0 0 / 30%);
    line-height: 1.5;
    letter-spacing: 0.1em;
}
.salon-inner{
	background: url("../img/bg01.png") center top / cover no-repeat;
	width: 100%;
	display: block;
	margin: 0 auto;
	padding: 75px 0;
	text-align: center;
}
.topbox-v01 {
    position: relative;
    overflow: hidden;
    background: url(../img/mitorizu.png) center / contain no-repeat;
    width: 100%;
	margin: 0 auto;
}
.topbox-v01-inner {
    max-width: 1100px;
	height: 100vh;
    margin: 0 auto;
    box-sizing: border-box;
}
.topbox-v01-catch-area {
    position: absolute;
    top: 7%;
    right: 207px;
    width: 100%;
	height: 152px;
}
.topbox-v01-catch-area p {
    position: relative;
    left: 0;
    /*width: 107px;*/
	width: 450px;
    z-index: 8;
    margin: 0 auto;
}
.tooltip4 {
    position: relative;
    cursor: pointer;
    display: inline-block;
}
.description4 {
    display: none;
    position: absolute;
    padding: 10px;
    font-size: 12px;
    line-height: 1.6em;
    color: #fff;
    border-radius: 5px;
    background: #001d66;
    width: 200px;
	left: 700px;
}
.description4:before {
    content: "";
    position: absolute;
    top: 3px;
    left: 232px;
    border: 15px solid transparent;
    border-top: 15px solid #001d66;
    margin-left: -15px;
    transform: rotateZ(270deg);
}
.tooltip4:hover .description4{
    display: inline-block;
    top: 0px;
    left: 270px;
}
.description4 ul li a{
    color: #fff;
}
.topbox-v01-catch-area p a ,
.topbox-v02-catch-area p a ,
.topbox-v03-catch-area p a ,
.topbox-v04-catch-area p a ,
.topbox-v05-catch-area p a ,
.topbox-v06-catch-area p a ,
.topbox-v07-catch-area p a ,
.topbox-v08-catch-area p a {
    overflow: hidden;
    white-space: break-spaces;
    text-indent: 100%;
    width: 100%;
    height: 100%;
}
.topbox-v02-catch-area {
    position: absolute;
    top: 29%;
    right: 303px;
    width: 100%;
	height: 90px;
}
.topbox-v02-catch-area p {
    position: relative;
    left: 0;
    width: 164px;
    z-index: 7;
    margin: 0 auto;
}
.topbox-v03-catch-area {
    position: absolute;
    top: 55%;
    right: 160px;
    width: 100%;
}
.topbox-v03-catch-area p {
    position: relative;
    left: 0;
    width: 206px;
	z-index: 3;
    margin: 0 auto;
}
.topbox-v04-catch-area {
    position: absolute;
    bottom: 8%;
    right: 115px;
    width: 100%;
}
.topbox-v04-catch-area p {
    position: relative;
    left: 0;
    width: 282px;
	z-index: 4;
    margin: 0 auto;
}
.topbox-v05-catch-area {
    position: absolute;
    top: 10%;
    left: 90px;
    width: 100%;
}
.topbox-v05-catch-area p {
    position: relative;
    left: 0;
    width: 175px;
	z-index: 6;
    margin: 0 auto;
}
.topbox-v06-catch-area {
    position: absolute;
    top: 20%;
    left: 185px;
    width: 100%;
}
.topbox-v06-catch-area p {
    position: relative;
    left: 0;
    width: 137px;
	z-index: 5;
    margin: 0 auto;
}
.topbox-v07-catch-area {
    position: absolute;
    top: 36%;
    left: 292px;
    width: 100%;
}
.topbox-v07-catch-area p {
    position: relative;
    left: 0;
    width: 157px;
	z-index: 2;
    margin: 0 auto;
}
.topbox-v08-catch-area {
    position: absolute;
    bottom: 34%;
    left: 285px;
    width: 100%;
}
.topbox-v08-catch-area p {
    position: relative;
    left: 0;
    width: 206px;
	z-index: 2;
    margin: 0 auto;
}
.salon-inner02 {
    width: 100%;
    max-width: 1100px;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    text-align: center;
    overflow: hidden;
	margin: 0 auto;
}
#service02 .salon-inner02 dl {
    flex-basis: calc((100% - 60px) / 4);
    max-width: calc((100% - 60px) / 4);
    margin-top: 20px;
    text-align: center;
	font-size: 15px;
}
#service02 .salon-inner02 dl dd ul li h3{
	font-size: 18px;
    color: #001d66;
    background-size: auto;
	padding: 10px 0;
}
#service02 .salon-inner02 dl dd ul li:first-child{
	padding: 10px 0;
}
#service02 .salon-inner02 dl dd ul li{
	font-weight: bold;
}
#service02 .salon-inner02 dl dd ul li a {
    font-family: 游ゴシック体, 游ゴシック, YuGothic;
    font-weight: 500;
	font-size: 14px;
}
#service02 .salon-inner02 dl dd ul li a:hover {
	color: #B8860B!important;
	transition: .3s;
}
#service02 .salon-inner02 dl dd ul li h3 {
    display: inline-block;
    border-bottom: solid 1px #001d66;
    width: 80%;
	margin: 0;
}
#service02 .salon-inner02 dl dd ul li a span {
    padding: -10px 0 0;
    position: relative;
    top: -8px;
}
.salon-inner03{
	width: 100%;
	display: block;
	margin: 65px auto 0;
	text-align: center;
}
.service01 .h-title04 {
	font-size: 34px;
    margin-bottom: 60px;
    border-bottom: 1px solid #001d66;
    padding: 1.5% 0;
    color: #001d66;
}
.salonfirst02-inner {
	background: rgba(255,255,255,0.8);
    border-radius: 2px;
    width: 100%;
    max-width: 1100px;
    margin: 0 auto;
    padding: 15px 0 60px;
    box-sizing: border-box;
}
.salonfirst02-inner p {
	text-align: left;
    font-size: 16px;
    line-height: 2;
    font-family: "リュウミン M-KL","Ryumin Medium KL" , "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝";
    font-weight: bold;
	margin: 0 0 20px 0;
}
.txt_add03 {
    margin: 0 0 40px !important;
    color: #ff0000;
	font-family: 游ゴシック体, 游ゴシック, YuGothic !important;
}
.salon_inner03 > div {
    display: flex;
    flex-wrap: nowrap;
    margin: 0 auto;
}
.inner_l > img {
    max-width: 100%;
    height: auto;
    box-shadow: 3px 2px 5px rgb(0 0 0 / 30%);
}
.salon_inner03 > div > .salon_inner_ttl {
    font-size: 27px;
    text-align: left;
	line-height: 1.7;
	margin: 0 0 20px 0;
}
.salon_inner03 .inner_l {
    width: 100%;
	margin: 0 5% 0 0;
}
.salon_inner03 > div > div {
    width: 100%;
}
.salon_inner_ttl02 {
    font-size: 27px;
    text-align: left;
    line-height: 1.7;
    margin: 0 0 10px;
	color: #001d66;
}
.btn-wrap {
    text-align: center;
    margin: 50px 0;
}
.btn_wrap ,.btn-wrap02 {
    display: flex;
    flex-wrap: wrap;
	font-family: 游ゴシック体, 游ゴシック, YuGothic;
}
.btn-wrap02 {
    text-align: center;
    margin: 35px 0;
}
.btn-entry {
    font-weight: 700;
    position: relative;
    display: block;
    margin-right: auto;
    margin-left: auto;
    text-align: center;
    color: #fff;
    border-radius: 50px;
    background: #00044c;
    font-size: 13px;
    width: 200px;
    margin-bottom: 10px;
    padding: 8px 1em 8px 0;
    line-height: 1.2;
}
.h-title05 {
	text-align: center;
	color: #0080b7;
}
.h-title05 h4 {
	position: relative;
	display: inline-block;
	padding: 0 50px;
	font-size: 32px;	
}
.h-title05 h4:before {
	content: '';
	position: absolute;
	top: 50%;
	display: inline-block;
	width: 50px;
	height: 2px;
	background-color: #0080b7;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}
.h-title05 h4:after {
	content: '';
	position: absolute;
	top: 50%;
	display: inline-block;
	width: 50px;
	height: 2px;
	background-color: #0080b7;
	-webkit-transform: rotate(-45deg);
	transform: rotate(-45deg);
}
.h-title05 h4:before {
	left:0;
}
.h-title05 h4:after {
	right: 0;
}
.circle-wrap {
    width: 100%;
    text-align: center;
    margin: 0 auto;
}
.circle-wrap ul {
    margin: 30px auto;
    width: 100%;
    max-width: 1100px;
    display: flex;
    flex-wrap: wrap;
	justify-content:space-between;
    text-align: center;
}
.circle-wrap ul li {
	flex-basis:calc((100% - 60px) / 4);
	max-width:calc((100% - 60px) / 4);
	margin-top:20px;
	text-align:center;
}
.circle-wrap ul li:nth-of-type(4n-1):nth-last-of-type(1),
.circle-wrap ul li:nth-of-type(4n-2):nth-last-of-type(1){
	margin-right:auto;
	margin-left:20px;
}
.circle-wrap ul li:nth-of-type(4n-2):nth-last-of-type(2){
	margin-right:0;
	margin-left:20px;
}
.circle{
	position: relative;
    display: inline-block;
    width: 200px;
    height: 200px;
    text-align: center;
    line-height: 1.5;
    border-radius: 50%;
    border: solid 1px #33add2;
    font-size: 25px;
    box-shadow: #33add2 0px 0px 15px;
	pointer-events: none;
}
.circle span {
    position: absolute;
    display: inline-block;
    left: 0;
    top: 50%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    width: 200px;
    text-align: center;
    font-family: 游ゴシック体, 游ゴシック, YuGothic;
    font-weight: bold;
}
.h-title06 {
    font-size: 26px;
    margin-bottom: 30px;
    padding: 1.5%;
    background: #00044c;
    color: #fff;
    font-family: 游ゴシック体, 游ゴシック, YuGothic;
}
.zoom_flow {
    padding: 0 0 30px;
	font-family: 游ゴシック体, 游ゴシック, YuGothic;
}
.zoom_flow ol {
	list-style-type: none; 
	padding-left: 40px;
}
.zoom_flow li {
    counter-increment: number;
    padding-left: 1em;
    text-indent: -1.7em;
    font-size: 16px;
    line-height: 2; 
}
.zoom_flow li::before {
   content: ""counter(number)"）";
}
.btn-entry02 {
    font-weight: 700;
    position: relative;
    display: block;
    margin: 0 0 10px 15px;
    text-align: center;
    color: #fff;
    border-radius: 50px;
    background: #00044c;
    font-size: 13px;
    width: 200px;
    padding: 8px 1em 8px 0;
    line-height: 1.2;
	padding-left: 0;
    text-indent: 0;
}
.btn_wrap > a:first-child {
	margin: 0 0 10px 0;
}
.zoom_flow02 ul {
    list-style:  none;     
    margin:  0;            
    padding: 0;             
}
.zoom_flow02 ul li{
	padding-left:1em;
	text-indent:-1.7em; 
	font-size: 16px; 
	line-height: 2;
	padding: 0 0 20px; 
}
.zoom_flow02 ul li b{
 	font-weight: normal;
	color: #8a1818;
}
.zoom_flow02 ul li:before {
    content: "";
    width: 15px;
    height: 15px;
    display: inline-block;
    border: solid 1px #333;
    border-radius: 50%;
    margin: 0 10px;       
}
.zoom_flow02 {
	position: relative;
	padding: 10px 20px;
    background-color: #e5e5ed;
    overflow: hidden;
    width: 100%;
	height: 250px;
	border-radius: 15px;
    font-family: 游ゴシック体, 游ゴシック, YuGothic;
}
.zoom_flow02 div{
    position: absolute;
    top: 40%;
    left: 25%;
    transform: translate(-45%,-40%);
}
.zoom_flow02 div a{
    font-size: 16px;
    border: 1px solid #333;
    padding: 5px 10px;
    margin: 0 -25px;
}
.zoom_flow02 div a:before{
    content: ">";
    width: 1px;
    height: 1px;
    display: inline-block;
    margin: 0 25px 0 10px;     
}
.kurukuru.anim.is-animated {
  animation: kurukuru 1.4s ease-out;
  opacity: 1;
}
@keyframes kurukuru {
  0%{
    transform: rotateY(0) translateY(40px);
    opacity: 0;
  }
  100%{
    transform: rotateY(360deg) translateY(0);
    opacity: 1;
  }
}
.menuttl {
    font-size: 18px;
    color: #001d66;
    padding: 10px 0;
}
.remodal {
    color: #001d66 !important;
    background: #fff url(../img/bg01.png) center top / cover no-repeat !important;
	border-radius: 3px;
}
.remodal div div ul li a {
    font-family: 游ゴシック体, 游ゴシック, YuGothic;
    font-weight: 500;
    font-size: 14px;
}
.remodal div div ul li a:hover {
	color: #B8860B!important;
	transition: .3s;
}
.remodal div figure img {
	box-shadow: 3px 2px 5px rgb(0 0 0 / 30%);
}
/****************************************************/
/*flow*/
/****************************************************/
.cnt-catch {
	text-align: center;
	padding: 35px 0;
}
.cnt-catch .text {
	margin-top: 15px;
	font-size: 24px;
}
.cf:before, .cf:after {
    display: table;
    content: " ";
}
.cf:after {
    clear: both;
}
#workflow {
	padding: 45px 0;
}
#workflow .inner {
	width: 100%;
	max-width: 1100px;
	margin: 0 auto;
}
#workflow .list {
	margin-top: 25px;
}
#workflow .list li {
	padding: 25px 0;
}
#workflow .list li:last-child{
	border-bottom: 0;
}
#workflow .list figure {
	float: left;
    height: 350px;
}
#workflow .list figure img {
	width: 100%;
}
#workflow .list .cnt {
	max-width: 100%;
}
#workflow .list .cnt h4 {
    font-weight: bold;
    color: #000;
    font-size: 32px;
    padding: 45px 0 0 0;
}
#workflow .list .cnt p {
	margin-top: 20px;
	line-height: 1.8;
	font-size: 22px;
}
#workflow .list li:after {
	width: 0;
	height: 0;
	border-left: 30px solid transparent;

	border-right: 30px solid transparent;
	border-top: 30px solid #aa8a72;
	margin: auto;
}
#workflow .list li:last-child:after {
    border: none;
}
/****************************************************/
/*info*/
/****************************************************/
.salon-inner04{
	width: 100%;
	max-width: 1100px;
	display: block;
	margin: 65px auto 0;
	text-align: center;
}
.h-title07 {
    font-size: 27px;
    margin-bottom: 60px;
}
/****************************************************/
/*company*/
/****************************************************/
.company {
    width: 100%;
    max-width: 980px;
    margin: 0 auto;
    padding: 100px 0;
}
.company div table {
    width: 980px;
}
.a-list02,
.a-list11{
	margin-top:35px;
	padding:10px;
}
.a-list02 > li,
.a-list11 > dl{
	position:relative;
	display:flex;
}
.a-list02 > li > strong,
.a-list11 > dl > dt{
	width:20%;
	border-bottom:solid 1px #001d66;
	font-size:16px;
	padding:15px 10px;
}
.a-list02 > li > div,
.a-list11 > dl > dd{
	width:80%;
	border-bottom:solid 1px #ccc;
	font-size:16px;
	padding:15px 10px;
}
.a-list02 > li > div > dl{
	display:block;
}
.a-list02 > li > div > dl > dt{
	width:100%;
}
.a-list02 > li > div > dl > dd{
	width:100%;
}
/****************************************************/
/*FAG*/
/****************************************************/
#a01 ,#a02 , #a03 , #a04 , #a05 {
	margin-top:-100px;
	padding-top:100px;
}
.faq_anchor {
	line-height: 40px;
    text-align: center;
    font-size: 14px;
    border: 1px solid;
}
.company table td {
    vertical-align: top;
}
.faq_anchor a {
}
.details p a, a:link, a:active, a:visited {
    text-decoration: none;
}
.accordion-container div {
    margin: 100px 0;
    text-align: center;
    width: 100%;
}
.acd-check{
    display: none;
}
.acd-label {
    color: #333;
    display: block;
    padding: 10px 0 10px 50px;
    position: relative;
    /* font-size: 95%; */
    /* line-height: 150%; */
    border: solid 1px;
}
.acd-label:after {
    box-sizing: border-box;
    content: '\f067';
    display: block;
    font-family: "Font Awesome 5 Free";
    font-weight: 600;
    height: 100%;
    padding: 20px;
    position: absolute;
    left: 0;
    top: 0;
    line-height: 100%;
}
.acd-content{
    display: block;
	background: #eee;
    height: 0;
    opacity: 0;
    padding: 0 10px;
    visibility: hidden;
}
.acd-check:checked + .acd-label:after{
    content: '\f068';
}
.acd-check:checked + .acd-label + .acd-content{
    height: auto;
    opacity: 1;
    padding: 50px;
    visibility: visible;
}
/****************************************************/
/*service*/
/****************************************************/
.service_inner02 ul{
	display:flex;
	margin: 0 auto;
	padding: 0 30px;
	text-align: center;
}
.service_inner02 ul li {
  position: relative;
  color: #000;
  font-size: 18px;
  list-style: none;
}
.service_inner02 ul li:before {
  position: absolute;
  top: 50%;
  content: "/";
  display: block;
  transform: translate(-50%, -50%);
  color: #000;
}
.service_inner02 ul li i {
  padding-left: 10px;
  padding-right: 10px;
  font-style: normal;
}
.service_inner02 ul li:last-child:after {
	position: absolute;
	top: 50%;
	right: -10px;
	content: "/";
	display: block;
	transform: translate(-50%, -50%);
	color: #000;
}
.service-inner .c_list01 {
	overflow: hidden;
    margin: 30px auto;
    width: 100%;
    max-width: 1100px;
    display: flex;
	display: -webkit-box;
    display: -moz-box;
    display: -ms-box;
    display: -webkit-flexbox;
    display: -moz-flexbox;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    -webkit-box-lines: multiple;
    -moz-box-lines: multiple;
    -webkit-flex-wrap: wrap;
    -moz-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    justify-content: space-between;
    text-align: center;
}
.service-inner .c_list01 > li {
	display: flex;
	width: 100%;
    flex-basis: calc((100% - 40px) / 3);
    max-width: calc((100% - 40px) / 3);
    margin-top: 20px;
    box-sizing: border-box;
    list-style-type: none;
    padding: 0;
	margin: 0;
	flex-wrap: wrap;
    justify-content: center;
}
.service-inner .c_list01 > .b_sp {
    display: none;
}
.service-inner ul .b_sp {
    display: none;
}
.c_list01 > li > dl ,
.c_list02 > li > dl ,
.c_list03 > li > dl {
    margin: 0 auto;
    border: solid 1px #001d66;
	width: 100%;
}
.c_list01 > li > dl > dt ,
.c_list02 > li > dl > dt ,
.c_list03 > li > dl > dt{
    background-color: #001d66;
    height: 35px;
    line-height: 35px;
    text-align: center;
}
/*.c_list01 > li > dl > dd,
.c_list02 > li > dl > dd{
    height: 90px;
}*/
.c_list01 > li > dl > dd > p,
.c_list02 > li > dl > dd > p{
    margin: 20px;
}
.c_list01 > li > dl > dt > p,
.c_list02 > li > dl > dt > p,
.c_list03 > li > dl > dt > p{
    font-size: 18px;
    color: #fff;
}
.service-inner .c_list02 {
	overflow: hidden;
    margin: 30px auto;
    width: 100%;
    max-width: 1100px;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    text-align: center;
}
.service-inner .c_list02 > li {
	display: flex;
	display: -webkit-box;
    display: -moz-box;
    display: -ms-box;
    display: -webkit-flexbox;
    display: -moz-flexbox;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    -webkit-box-lines: multiple;
    -moz-box-lines: multiple;
    -webkit-flex-wrap: wrap;
    -moz-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
	width: 100%;
    justify-content: center;
    flex-basis: calc((100% - 20px) / 2);
    margin-top: 20px;
    margin-bottom: 50px;
    box-sizing: border-box;
    list-style-type: none;
    padding: 0;
	margin: 0 10px;
}
.salon-inner .h-title03 span {
	font-size: 25px;
}
.salon-inner02 dl {
    flex-basis: calc((100% - 40px) / 3);
    max-width: calc((100% - 40px) / 3);
    margin-top: 20px;
    margin-bottom: 50px;
    padding: 0 !important;
    box-sizing: border-box;
    list-style-type: none;
}
.salon-inner02 dl dt p img {
    display: block;
    width: 100%;
    max-width: 340px;
    margin: 0 auto;
}
.salon-inner04 .h-title08, .salon-inner05 .h-title08, .service-inner02 .h-title08 {
    font-size: 34px;
    position: relative;
    padding: 1rem 0;
    text-align: left;
    color: #001d66;
}
.service-inner02 .h-title08:before{
	position: absolute;
	bottom: -10px;
	width: 150px;
	height: 5px;
	content: '';
	border-radius: 3px;
	background: #001d66;
}
.salon-inner04 .h-title08:before, .salon-inner05 .h-title08:before {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 120px;
    height: 4px;
    content: '';
    border-radius: 3px;
    background: #001d66;
}
.h-title09 {
    font-size: 28px;
    margin-bottom: 40px;
    text-align: start;
    padding: 0.5rem 1rem;
    border-left: 8px solid #001d66;
	color: #001d66;
}
.salon-inner05 {
    width: 100%;
    max-width: 1100px;
    display: block;
    margin: 0 auto;
    text-align: center;
}
.salon-inner02 dl dd ul li h3 {
    font-size: 19px;
    margin: 20px 0 5px;
}
.add_h01 img {
    max-height: 454px;
    width: max-content !important;
}
/****************************************************/
/*service_floor*/
/****************************************************/
@media screen and (min-width: 960px){
.service02 {
    padding: 50px 0 0;
}
}
.add_con02 {
    width: 100%;
    display: block;
    text-align: center;
    margin: 100px 0;
}
.read_more_link02 {
    padding: 1rem 2rem;
    border: 2px solid #003570;
    color: #003570;
    font-size: 26px;
    color: #003570 !important;
}
.read_more_link02:hover {
    opacity: 0.8;
    transition: all 0.3s ease 0s;
    cursor: pointer;
    font-weight: bold;
	background: #001d66;
    border: 2px solid transparent;
    color: #fff !important;
    display: inline-block;
    font-size: 18px;
    font-weight: bold;
    max-width: 100%;
}
.add_h {
    margin: 50px 0 0;
}
.service_inner_ttl {
    font-size: 27px;
    text-align: left;
    line-height: 31px;
    margin: 0 0 30px 0;
    position: relative;
    background: url(../img/icon01.png) no-repeat;
    padding-left: 40px;
    background-size: 6%;
	text-indent: 0.5em;
}
.service_inner_ttl02 {
    font-size: 27px;
    text-align: left;
    line-height: 31px;
    margin: 0 0 30px 0;
    position: relative;
    background: url("../img/kabe_mini.png") no-repeat;
    padding-left: 40px;
    background-size: 6%;
	text-indent: 0.5em;
}
.service_inner_ttl03 {
    font-size: 27px;
    text-align: left;
    line-height: 31px;
    margin: 0 0 30px 0;
    position: relative;
    background: url("../img/other_mini.png") no-repeat;
    padding-left: 40px;
    background-size: 6%;
	text-indent: 0.5em;
}
.service_inner_ttl04 {
	font-size: 27px;
    text-align: left;
    line-height: 31px;
    margin: 0 0 30px 0;
    position: relative;
    background: url(../img/house_mini.png) 0 no-repeat;
    padding-left: 40px;
    background-size: 4%;
    text-indent: 1.5em;
}
.service_inner_ttl04.h-title03 {
    background: url(../img/house_mini.png) 20% no-repeat;
    background-size: 6%;
}
.box2 {
    padding: 1em;
    margin: 2em 0;
    font-weight: bold;
    border: solid 1px #000000;
    height: 200px;
}
.service-inner03 .txt_add04{
    font-size: 22px;
    display: block;
    text-align: left;
}
.service-inner02 {
    width: 100%;
    max-width: 1100px;
    display: block;
    margin: 0 auto;
    text-align: center;
}
.txt_add05 ul {
    display: block;
}
.txt_add05 ul li {
    display: block;
    width: 100%;
    float: none;
    max-width: 1100px;
    text-align: left;
    margin: 10px 0;
    font-size: 18px;
}
.add_h02 {
    margin: 100px 0 0;
}
.salon-inner06 {
    width: 100%;
    max-width: 1100px;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    text-align: center;
    overflow: hidden;
    margin: 0 auto;
}
.salon-inner06 dl {
    flex-basis: calc((100% - 60px) / 4);
    max-width: calc((100% - 60px) / 4);
    margin-top: 20px;
    text-align: center;
    font-size: 15px;
}
.salon-inner06 dl dt p img {
    display: block;
    width: 100%;
    max-width: 340px;
    margin: 0 auto;
}
.c_list03 {
    overflow: hidden;
    margin: 30px auto;
    width: 100%;
    max-width: 1100px;
    display: flex;
	display: -webkit-box;
    display: -moz-box;
    display: -ms-box;
    display: -webkit-flexbox;
    display: -moz-flexbox;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    -webkit-box-lines: multiple;
    -moz-box-lines: multiple;
    -webkit-flex-wrap: wrap;
    -moz-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    justify-content: space-between;
    text-align: center;
}
.c_list03 li {
	display: flex;
	width: 100%;
	flex-wrap: wrap;
    justify-content: center;
    flex-basis: calc((100% - 60px) / 4) !important;
    max-width: calc((100% - 60px) / 4)!important;
    margin-top: 20px!important;
    margin-bottom: 0!important;
    padding: 0 !important;
    box-sizing: border-box!important;
    list-style-type: none!important;
}

.c_list03 > li > dl > dd > p{
    margin: 5px;
}
.service_inner02 .txt_add04 {
    text-align: left;
    padding: 0 30px;
    font-size: 18px;
}
.inner_l02 p {
	width: 80%;
    margin: 15px auto;
}

.salon-inner07 {
    width: 100%;
    max-width: 1100px;
    display: flex;
    flex-wrap: wrap;
    justify-content: unsafe center;
    text-align: center;
    overflow: hidden;
    margin: 0 auto;
}
.salon-inner07 dl {
    flex-basis: calc((100% - 60px) / 3);
    max-width: calc((100% - 60px) / 3);
    text-align: center;
    font-size: 15px;
    margin: 20px 15px;
}
.salon-inner07 dl dt p img {
    display: block;
    width: 100%;
    max-width: 340px !important;
    margin: 0 auto;
}
.add_h03 {
    margin: 100px 0;
}
.txt_add07 {
	position: relative;
	color: #000;
	font-size: 18px;
	list-style: none;
    width: 92px;
    left: 30px;	
}
.txt_add07:before {
	position: absolute;
	top: 50%;
	content: "/";
	display: block;
	transform: translate(-50%, -50%);
	color: #000;
}
.txt_add07 i {
	padding-left: 10px;
	padding-right: 10px;
	font-style: normal;
}
.txt_add07:last-child:after {
	position: absolute;
	top: 50%;
	right: -10px;
	content: "/";
	display: block;
	transform: translate(-50%, -50%);
	color: #000;
}
.add_con {
    margin: 100px 0 0;
    width: 100%;
    max-width: 1100px;
    display: block;
    text-align: center;
}
.add_con video {
  width: 100%;
  max-width: 520px; 
}
.service-inner .c_list04 {
    overflow: hidden;
    margin: 30px auto;
    width: 100%;
    max-width: 1100px;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    text-align: center;
}
.service-inner .c_list04 > li {
    flex-basis: calc((100% - 20px) / 2);
    margin-top: 20px;
    margin-bottom: 50px;
    box-sizing: border-box;
    list-style-type: none;
    padding: 0;
    margin: 0 10px;
}
.a-privacy > p {
    padding: 10px;
}
.a-privacy > ul > li {
    margin: 15px 35px 0;
    list-style-type: decimal;
}
.a-privacy > ul > li > ul {
    margin: 15px;
}
.a-privacy > ul > li > ul > li {
    margin-left: 15px;
    list-style-type: disc;
}
.a-privacy > ul > li > ul > li > ul {
    margin: 15px;
}
.a-privacy > ul > li > ul > li > ul > li {
    margin-left: 15px;
    list-style-type: decimal;
}
.a-form01 {
	margin:35px auto 0;
	font-size:16px;
}
.a-form01 > ul{
	margin:20px 25px;
}
.a-form01 > ul > li{
	position:relative;
	padding-left:18px;
	font-size:15px;
}
.a-form01 > ul > li:before{
	content:"";
	width:8px;
	height:8px;
	background-color:#001d66;
	border-radius:2px;
	position:absolute;
	left:0px;
	top:8px;
}
.a-form02 {
	margin:35px 0 0;
	width:100%;
}
.a-form02 li{
	display:flex;
	border-bottom:solid 1px #ccc;
}
.a-form02 li > label{
	width:30%;
	padding:10px;
	padding:15px;
	position:relative;
}
.a-form02 li.hissu > label:after{
	content:"［必須］";
	position:absolute;
	right:0;
	top:20px;
	font-size:10px;
	font-weight:bold;
	color:#ff0000;
}
.a-form02 li > div{
	width:70%;
	padding:15px 15px 9px;
}
.a-form02 input[type="text"],
.a-form02 input[type="email"],
.a-form02 input[type="tel"],
.a-form02 select,
.a-form02 textarea{
	border:solid 1px #ccc;
	width:100%;
	height:25px;
	background-color:#fff;
}
.a-form02 textarea{
	height:250px;
	min-width:100%;
	max-width:100%;
}
.a-form02 .sm-btn {
	margin:25px 0 0 32%;
}
.a-form02 .sm-btn input[type="submit"]{
	background-color:#001d66;
	color: #fff;
    font-weight: bold;
    padding: 10px 22px 10px 25px;
    font-size: 18px;
    letter-spacing: 3px;
}
.company .day-calendar table td {
    vertical-align: middle;
}
#booking_in #booking-form {
    width: 980px;
    overflow: hidden;
    margin: 0 auto;
    padding: 100px 0 50px;
}
.reservation_headline.rich_font {
    font-size: 22px;
    line-height: 22px;
}
#zoom_reservation input[type="button"] {
    border: none;
    background: none;
}
span.wpcf7-list-item {
display: block;
}
.txt_red {
    color: #ff0000;
}
.consultation_headline, .reservation_headline {
    margin: 0;
    height: 55px;
    line-height: 55px;
    padding: 15px 23px !important;
    border: 1px solid #ddd;
    border-top: none;
    box-shadow: 0 -5px 0 0 #000;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}
.company .monthly-calendar table {
    width: 100%;
}
.day-calendar table {
    width: 100% !important;
}
.day-calendar h3 {
    display: none;
}
.step-bar {
    margin: 0 auto !important;
    text-align: center;
    width: 50%;
    min-width: 384px;
    max-width: 384px;
    padding: 0 0 30px;
}
#consultation_counter .post_content, #zoom_reservation .post_content {
    border: 1px solid #ddd;
    border-top: none;
    padding: 40px 50px 13px;
}
.progressbar {
    position: relative;
    margin: 0;
    padding: 0;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}
.progressbar li {
    position: relative;
    list-style-type: none;
    text-align: center;
    text-transform: uppercase;
    width: 25%;
    color: #999999;
    font-weight: bold;
}
.progressbar li:before {
    display: block;
    width: 18px;
    height: 18px;
    margin: 7px auto 20px auto;
    content: '';
    text-align: center;
    border-radius: 50%;
    background-color: #F5F5F5;
}
.progressbar li:after {
    position: absolute;
    z-index: -1;
    top: 15px;
    left: -50%;
    width: 100%;
    height: 2px;
    content: '';
    background-color: #F5F5F5;
}
.progressbar li:first-child:after {
    content: none;
}
.progressbar li.active,
.progressbar li.complete{
    color: #001d66;
}
.progressbar li.active:before,
.progressbar li.complete:before {
    background-color: #001d66;
}
.progressbar li.active:after,
.progressbar li.complete:after {
    background-color: #001d66;
}
.add_b button {
	background: #001d66;
	border: 2px solid transparent;
	color:  #fff;
	display: inline-block;
	font-size: 18px;
	font-weight: bold;
	max-width: 100%;
	padding: 20px;
	text-align: center;
	width: 230px;
}
.add_b button {
    color: #FFF;
    position: relative;
    padding: 15px;
	font-family: "リュウミン R-KL" , "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
}
.add_b button:focus,
.add_b button:hover {
	background: #fff;
	border-color: currentColor;
	color: #001d66;
}
.add_b button::before{
	content: "";
	position: absolute;
	top: 50%;
	left: 5%;
	width: 10px;
	height: 10px;
	border-top: 1px solid #fff;
	border-right: 1px solid #fff;
	transform: rotate(45deg);
	margin-top: -5px;
}
#action-button {
    padding: 0 0 100px;
}
.content-form fieldset {
    width: 98%!important;
}
.add_txt01 {
    margin: 0 auto;
    text-align: center!important;
}
.add_txt03 {
    margin: -10px 0 10px;
}
.add_con01 li {
    flex-basis: calc((100% - 40px) / 4) !important;
    max-width: calc((100% - 40px) / 4) !important;
    margin-top: 20px;
    margin-bottom: 50px !important;
    padding: 0 !important;
    box-sizing: border-box;
    list-style-type: none;
}
.salon-inner06 .in_tiles {
    flex-basis: calc((100% - 60px) / 3);
    max-width: calc((100% - 60px) / 3);
    margin-top: 20px;
    text-align: center;
    font-size: 15px;
}
.salon-inner06 .logo_content_box {
    flex-basis: calc(100% / 7);
    max-width: calc(100% / 7);
    margin-top: 20px;
    text-align: center;
    display: grid;
    place-items: center;
}
.salon-inner06 dl .l_content {
    height: 40px;
    display: table-cell;
    vertical-align: middle;
}

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

}



