/* ==========================================================================
	general
========================================================================== */

@font-face {
	font-family: 'OratorStd';
	src: url('../fonts/OratorStd.otf') format('opentype');
	src: local('../fonts/OratorStd.otf') format('opentype'); 
}
@font-face {
	font-family: 'OratorStd-Slanted';
	src: url('../fonts/OratorStd-Slanted.otf') format('opentype');
	src: local('../fonts/OratorStd-Slanted.otf') format('opentype');
}

html {
    font-size: 14px;
    
}
body {
    font-family: "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
    color: #666666;
}
p {
	letter-spacing: .2em;
}
a {
    color: #a5a5a5;
    -moz-transition: all 0.3s;
    -o-transition: all 0.3s;
    -webkit-transition: all 0.3s;
    transition: all 0.3s;
}
  
a:hover, a:focus {
    text-decoration: none;
    color: #bdece4;
}
ul {
	list-style: none;
}
img {
	max-width: 100%;
}
.top_section {
	padding-top: 80px;
}

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

.flex-height {
	display: flex;
	flex-wrap: wrap;
	-webkit-align-items: normal;
    align-items: normal;
}
.flex {
	 display: flex;
    -webkit-align-items: center;
    align-items: center;
}
.sp_appear {
	display: none;
}
@media screen and (max-width: 768px) {
	.flex {
	 display: block;
    }
    .sp_appear {
    	display: block;
    }
    .pc_appear {
    	display: none;
    }
}

/* ==========================================================================
	header
========================================================================== */
#header-content {
    padding-top: 5px;
}
#header-top {
    border-bottom:1px solid #989898;
    margin-bottom: 35px;
    position: fixed;
    z-index: 99999;
    background: #fff;
    width: 100%;
}
.header-left {
    float: left;
    width: 30%;
}

.header-left img {
    float:left;
    width: 136px;
    margin-right:25px;
}
.header-left p {
    font-size: 0.7rem;
    margin-top:10px;
}

#global_menu {
    float:right;
}
#global_menu ul {
    display: flex;
    list-style-type: none;
    margin-top:10px;
}
#global_menu ul li {
    text-align: center;
    margin:0 0 0 1.2em;
    -webkit-transform: skewX(150deg);
    -moz-transform: skewX(150deg);
    transform: skewX(150deg);
    border-right: 1px solid #eaeaea;
    padding-right:1.2em;
    font-size:1.0rem;
}
#global_menu ul li a{
    display: block;
    transform: skewX(-150deg);
    padding: 0 10px;
    font-family: "OratorStd-Slanted";
}
#global_menu ul li span{
    display: block;
    font-size: 0.2rem;
}
#global_menu ul li:last-child {
    border-right: none;
}

.open-title {
	font-family: "OratorStd-Slanted";
    text-align:center;
    color:#187ad5;
    font-size:2.2rem;
    margin:25px;
}

#reserve-counseling {
    background-color:#999999;
    color:white;
    padding-top:10px;
}
#reserve-counseling  a {
	color: #fff;
}
#reserve-counseling div{
    position: relative;
}
#reserve-counseling img{
    position: relative;
    top: 10px;
}
#reserve-counseling .counseling-title{
	font-family: 'OratorStd';
	font-style:italic;
    font-size:1.8em;
    margin-left: 10px;
    text-align: center;
    line-height: 90%;
    margin-top:10px;
    letter-spacing: 0.1em;
}
#reserve-counseling .counseling-title span{
	font-style:normal;
    font-size:0.5em;
    display: block;
    letter-spacing: 0;
}
#reserve-tel {
    background-color:#999999;
    color:white;
    padding-left:30px;
    padding-top:10px;
    position: relative;
}
#reserve-tel img {
    position: relative;
    top: 10px;
}

#reserve-tel .tel-title{
	font-family: 'OratorStd';
	font-style:italic;
    font-size: 1.3rem;
}
#reserve-tel .tel-title a {
	color: #fff;
}
#reserve-tel .tel-title span {
    font-size: 3.0rem;
}

#reserve-counseling p, #reserve-tel p {
    margin-bottom:0;
}


.fix_bottom {
	position: fixed;
	bottom: 0;
	width: 100%;
	z-index: 9999;
	background: #999999;
}
@media screen and (max-width: 768px) {
	.header-left {
		width: 40%;
	}
	.header-left img {
		width: 100%;
		margin-right: 0;
	}
	.open-title {
		font-size: 1.6rem;
	}
	#global_menu ul {
		display: block;
	}
	#global_menu ul li {
		border-right: none;
		padding: 10px;
	}
	.fix_bottom {
		display: none;
	}
}
/* ==========================================================================
	campaign
========================================================================== */
#campaign-content {
    text-align:center;
    margin:0 auto;
}
.campaign-img, .campaign-link {
    margin-bottom:50px;
}
.cam-link {
    border:1px solid #b3b3b3;
    padding:20px 0;
    /* margin:0 40px; */
    display: block;
    text-align: center;
    font-family: "OratorStd-Slanted";
}
.campain_bunner {
	max-width: 850px;
    margin: 0 auto 50px;
}
.campain_bunner .col-md-12,
.campain_bunner .col-md-6 {
	padding: 0;
}
@media screen and (max-width: 768px) {
	.campain_bunner img {
		margin-bottom: 20px;
	}
	.cam-link {
		width: 100%;
		margin-bottom: 20px;
	}
}
/* ==========================================================================
	menu
========================================================================== */
#menu-content {
    margin: 100px auto 150px;
    text-align: center;
}
#menu-content h3 {
    font-family: "OratorStd-Slanted";
    color: #646564;
}
#menu-img-content {
    margin-bottom:50px;
}
#menu-img-content div{
    /* display: inline-block;
    margin:0 10px;
    width: 20%; */
}
#menu-img-content a.title{
    text-decoration: underline;
    margin-top:10px;
    font-size: 1.2rem;
    margin-bottom: 0.3rem;
    color: #666;
    margin: 5px 0;
    display: block;
}
#menu-img-content p.desc {
    font-size:0.5rem;
}
#l-news {
	padding-top: 80px;
    margin-top: -50px;
}
.news-title-wrap {
    text-align:left;
    padding-left:80px; 
    color:#656665;
}
#menu-content .news-title {
    font-size: 1.8rem;
    margin-bottom:0;
    font-family: "OratorStd-Slanted";
}

#menu-content .news-title-sub {
    font-size:0.8rem;
}

#news-list li{
    text-align: left;
    padding-left: 20px;
    font-size: 1.2rem;
    margin-bottom: 10px;
}
#news-list li span{
    display: block;
    text-decoration: underline;
}
@media screen and (max-width: 768px) {
	#menu-img-content div {
		margin-bottom: 30px;
	}
}
/* ==========================================================================
	Advantage
========================================================================== */
#advantage-content {

}
#advantage-title {
    text-align: center;
    margin-bottom:80px;
    color: #696969;
}
#advantage-title .wrap {
    border-bottom: 1px solid #959495;
    display: inline-block;
    position: relative;
}
#advantage-title img {
    width: 200px;
}
#advantage-title span {
    font-size: 2.3rem;
    position: relative;
    top: 15px;
}

.reason-img {
    position: relative;

}
.reason-img img {
    position: relative;
    top: -10px;
    left: 60px;
}
.reason-text {
    padding: 50px 0 0 100px;
}
.reason-title1, .reason-title2, .reason-title3 {
    font-size: 2.0rem;
    background: linear-gradient(transparent 50%, #F0F0F0 50%);
    margin-bottom: 0;
    
}
.reason-title1 {
    color: #0062B5
}
.reason-title2 {
    color: #008BAF;
}
.reason-title3 {
    color: #249DDD
}
.reason-desc {
    padding-left: 50px;
    font-size: 1.2rem;
    color: #a5a5a5;
    
}
@media screen and (max-width: 768px) {
	.reason-img img {
		position: static;
	}
	#advantage-title span {
		font-size: 1.6rem;
	}
	#advantage-title img {
		width: 150px;
	}
	.reason-title1, .reason-title2, .reason-title3 {
		font-size: 1.8rem;
   }
}

/* ==========================================================================
	FLOW
========================================================================== */
#flow-content {
    margin-bottom:150px;
}
#flow-heading {
    text-align: center;
    margin-bottom:80px;

}
#flow-heading .upper {
    font-size: 1.2rem;
}
#flow-heading .lower {
    font-size: 2.0rem;
    letter-spacing: 0.1em;
    color: #636363
}
.flow-text-content {
    position: relative;
}
.flow-text-wrap {
    position: relative;
    top:130px;
}
.flow-text-wrap.wrap-left {
    text-align: right;
    width: 100%;
}
.flow-title {
    font-size: 2.2rem;
    position: relative;
    color: #656665;
}
.flow-desc {
    font-size: 1.2rem;
}
#flow-attention {
    text-align: center;
    background-color: #f8f8f8;
    margin-top:120px;
    padding: 30px 0 40px;
}
#flow-attention p {
    font-size: 1.8rem;
    color: #666766;
}
#flow-attention div.attention-item-wrap {
    border: 1px solid #808080;
    width:65%;
    margin: 0 auto;
    text-align: left;
    padding: 15px 0;
}
.attention-item-wrap div:nth-child(1) {
    padding-left:10%;
}
#flow-content .item1, #flow-content .item2, #flow-content .item3, #flow-content .item4, 
#flow-content .item5, #flow-content .item6, #flow-content .item7, #flow-content .item8, 
#flow-content .item9, #flow-content .item10 {
    display: flex;
    flex-direction:column;
}
@media screen and (max-width: 768px) {
	.flow-text-wrap {
		margin-bottom: 30px;
	}
	#flow-attention p {
		font-size: 1rem;
		text-align: left;
	}
	#flow-attention div.attention-item-wrap {
		width: 100%;
	}
}
/* ==========================================================================
	REVIEWS
========================================================================== */
#reviews-content {
    margin: 100px auto;
}
.review-img {
    position: relative;
    margin-bottom: 20px;
}
.review-img img {
    position: relative;
    top: 0;
    left: 190px;
}
.review-text {
    background: url('../images/review_base.jpg') no-repeat;
    background-position:35% 30%;
    position: relative;
}
.review-text div {
    position: absolute;
    top:50px;
    left: 165px;
    font-size: 0.9rem;
}
@media screen and (max-width: 768px) {
	#reviews-content {
		margin: 30px auto;
	}
	#reserve-counseling .counseling-title{
        font-size:1.2em;
    }
    #reserve-counseling .counseling-title span{
        font-size:0.4em;
    }
    #reserve-tel .tel-title{
        font-size: 0.8rem;
    }
    #reserve-tel .tel-title span {
        font-size: 2.0rem;
    }
    .flow-text-wrap {
        top: 50px;
    }
    .review-img {
    	text-align: center;
    }
    .review-img img {
    	position: static;
    }
    .review-text {
    	background: none;
    	padding: 0 15px;
    }
    .review-text div {
        position: static;
        font-size: 1rem;
        background: #cdddd0;
        padding: 20px;
    }
}

/* ==========================================================================
	GALLERY
========================================================================== */
.gallery_list div {
	margin-bottom: 20px;
}
.gallery_list div img {
	width: 100%;
}
/* ==========================================================================
	ACCESS
========================================================================== */
#access-content {
    margin:150px auto 0;
}
#access-content .address-wrap {
    
}
#access-content .address-wrap .address-title{
    position: relative;
    margin: 0 auto;
}
#access-content .address-title img{
    width: 30%;
    position: relative;
    top: -30px;
}
.address-wrap .address-info {
    margin-bottom:50px;
}
.address-wrap .address-info p {
    margin-bottom: 0.2em;
    font-size:1.2rem;
    text-align: left;
}
.address-wrap .address-info p:first-child {
    text-decoration: underline;
} 
.iin_info {
	border: 1px #666666 solid;
    padding: 20px 0;
    max-width: 850px;
    width: 100%;
    margin: 80px auto;
}
.iin_info p {
	line-height: 1.8em;
    font-size: 1.1rem;
}
.iin_info p span {
	font-size: 20px;
    font-weight: bold;
    display: inline-block;
    margin: 10px 0;
}
.iin_info p a {
	text-decoration: underline;
}
@media screen and (max-width: 768px) {
	#access-content {
		margin: 30px auto 50px;
		text-align: center;
	}
	.address-title .float-left {
		float: none!important;
	}
	#access-content .address-title img {
		width: 50%;
		position: static;
		margin: 0 auto;
	}
	.address-wrap .address-info p {
		font-size: 1rem;
	}
	.iin_info p {
		font-size: 0.8rem;
	}
}

/* ==========================================================================
	INSTAGRAM
========================================================================== */
.insta_wrapp {
	margin-bottom: 50px;
}

/* ==========================================================================
	contact
========================================================================== */
#contact-content {
    
}
.contact-wrap {
    background-color: #f9f8f6;
    padding:50px 30px;
}
.contact-wrap img.logo {
    width:60%;
}
.contact-wrap .address {
    font-size: 1.2rem;
    padding-top:10px;
}
.contact-wrap .shop-holiday {
    margin: 50px 0 40px;
    
    text-align: center;
}
.contact-wrap .shop-holiday div {
    border: 1px solid #808080;
    margin: 0 auto;
    padding: 20px 0 25px;
    font-size:1.2rem;
}
.contact-wrap .shop-holiday div span {
	padding-right: 50px;
}
.reception-time {
    text-align: center;
    font-size: 1.3rem;
    margin-bottom:40px;
}
.reception-time p{
    font-size: 2.0rem;
    margin-bottom:0.2em;
}


.contact-mail, .contact-tel {
    text-align: center;
    
}
.contact-mail div.wrap, .contact-tel div.wrap {
    width: 95%;
    border: 1px solid #808080;
    padding:25px;
    background-color: white;

}
.contact-mail p span {
	display: block;
    font-size: 0.9rem;
}
.contact-mail .reservation-button {
    background-color: #656665;
    border-radius: 10px;
    display: block;
    color: #fff;
    padding: 10px;
    margin-bottom: 20px;
}
.contact-mail .reservation-button:hover {
	opacity: 0.8;
}
.contact-mail .reservation-button span{
    font-size: 1.2rem;
    
}
.contact-mail .reservation-button .en {
    font-family: "OratorStd-Slanted";
    font-size:0.5rem;
    display: block;
}
.contact-tel {

}
.contact-tel span {
    display: block;
}
.contact_mail_btn {
	display: inline-block;
    border: 1px #666666 solid;
    padding: 5px 10px;
    border-radius: 15px;
    color: #666666;
    margin-top: 10px;
}

.sns-wrap {
    background-color: #ffffff;
    padding: 50px 0;
    max-width: 500px;
    width: 100%;
    margin: 0 auto;
}

.sitemap-wrap {
    background-color: #f2f2f2;
    padding: 80px 70px 100px;
}
.sitemap-wrap p {
    font-size: 3.0rem;
    text-align: center;
    position: relative;
    /* display: inline-block; */
    margin-bottom: 1em;
    font-family: "OratorStd-Slanted";
    color: #636363;
}
.sitemap-wrap p:before {
    content: '';
    position: absolute;
    left: 50%;
    bottom: -5px;/*線の上下位置*/
    display: inline-block;
    width: 120px;/*線の長さ*/
    height: 3px;/*線の太さ*/
    -moz-transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    transform: translateX(-50%);/*位置調整*/
    background-color: #ababab;/*線の色*/
    border-radius: 2px;/*線の丸み*/
}
.sitemap-wrap .left-title {
    float: left;
    margin-right: 20px;
    line-height: 200%;
    
}
.sitemap-wrap .right-title a{
		display: block;
		color: #666;
		padding: 5px;
	}
.sitemap-wrap .right-title {
    float: left;
    line-height: 200%;
    
}
@media screen and (max-width: 768px) {
	.contact-wrap {
		padding: 50px 0;
	}
	.contact-wrap .address {
		font-size: 1rem;
	}
	.contact-wrap .shop-holiday div {
		font-size: 1rem;
	}
	.contact-mail div.wrap, .contact-tel div.wrap {
		width: 100%;
		margin-bottom: 20px;
	}
	.reception-time p {
		font-size: 1.4rem;
	}
	.contact-mail .reservation-button {
		margin-bottom: 0;
	}
	.sitemap-wrap {
		padding: 80px 0 100px;
	}
	.sitemap-wrap .left-title {
		float: none;
		margin-right: 0;
		text-align: center;
		background: #666;
		color: #fff;
		margin-bottom: 15px;
	}
	.sns-wrap li {
		text-align: center;
		margin-bottom: 20px;
	}
	.sns-wrap li img {
		width: 200px;
	}
}

/* ==========================================================================
	horizon line
========================================================================== */
.h_caption {
    color: #626262;
	font-size: 2.0rem;
	display: flex;
    align-items: center;
    margin: 25px 0 50px;
    font-family: "OratorStd-Slanted";
    padding-top: 90px;
    margin-top: -90px;
}
.h_caption div {
    line-height: 80%;
    padding-top: 15px;
}
.h_caption:before, .h_caption:after {
	content: "";
	flex-grow: 1;
	border-top:1px dashed #666;
	display: block;
}
.h_caption:before {
	margin-right: 1.0em;
}
.h_caption:after {
	margin-left: 1.0em;
}
.h_caption span {
    display: block;
    font-size: 0.5rem;
}
.h_caption div {
    text-align: center;
}

.h_caption2 {
    border-top: 1px dashed #666;
}

/* ==========================================================================
	media query
========================================================================== */

@media screen and (max-width: 768px) {
    #reserve-counseling div {
        float: none !important;
    }
    #reserve-tel {
        padding-left:15px;
    }

    .flow-text-content div {
        float: none !important;
    }
    .flow-text-wrap.wrap-left {
        text-align: left;
    }
    .attention-item-wrap div:nth-child(1) {
        padding-left:15px;
    }
    .review-text div {
        top: -80%;
        left: 10%;
    }
    #access-content .map{
        margin-top:30px;
        height: 500px;
    }
    .flow-text-wrap{
        top: 0;
    }
    
    #flow-content .item1{
        order:1;
    }
    #flow-content .item2{
        order:2;
    }
    #flow-content .item3{
        order:4;
    }
    #flow-content .item4{
        order:3;
    } 
    #flow-content .item5{
        order:5;
    }
    #flow-content .item6{
        order:6;
    }
    #flow-content .item7{
        order:8;
    }
    #flow-content .item8{
        order:7;
    }
    #flow-content .item9{
        order:9;
    }
    #flow-content .item10 {
        order:10;
    }
    .reason-text {
        padding: 0 15px;
        text-align: left;
    }
    .reason-desc {
        padding-left:0;
        margin-top: 10px;
    }
}


/* ==========================================================================
	SP Navi
========================================================================== */

.navigation.open {
  opacity: 0.9;
  visibility: visible;
  -moz-transition: opacity 0.5s;
  -o-transition: opacity 0.5s;
  -webkit-transition: opacity 0.5s;
  transition: opacity 0.5s; 
}
.navigation {
  float: right; 
}
.navigation ul {
	display: -webkit-flex;
    display: flex;
    -webkit-align-items: center;
    align-items: center;
    -webkit-justify-content: center;
    justify-content: center;
}
.navigation li {
    display: inline-block; 
}
.nav_btn span {
	display: block;
	margin-bottom: 10px;
	font-size: 18px;
}
.nav-toggle {
  display: none;
  height: 44px;
  overflow: hidden;
  position: fixed;
  right: 5%;
  text-indent: 100%;
  top: 3px;
  white-space: nowrap;
  width: 44px;
  z-index: 99999;
  -moz-transition: all 0.3s;
  -o-transition: all 0.3s;
  -webkit-transition: all 0.3s;
  transition: all 0.3s; 
}

.nav-toggle span {
    background-color: #666666;
    bottom: auto;
    display: inline-block;
    height: 2px;
    left: 50%;
    position: absolute;
    right: auto;
    top: 50%;
    width: 30px;
    z-index: 10;
    -moz-transform: translateX(-50%) translateY(-50%);
    -ms-transform: translateX(-50%) translateY(-50%);
    -webkit-transform: translateX(-50%) translateY(-50%);
    transform: translateX(-50%) translateY(-50%);
}
.nav-toggle span:before, .nav-toggle span:after {
      background-color: #666666;
      content: "";
      height: 100%;
      position: absolute;
      right: 0;
      top: 0;
      width: 100%;
      -moz-transform: translateZ(0);
      -ms-transform: translateZ(0);
      -webkit-transform: translateZ(0);
      transform: translateZ(0);
      -moz-backface-visibility: hidden;
      -webkit-backface-visibility: hidden;
      backface-visibility: hidden;
      -moz-transition: -moz-transform 0.3s;
      -o-transition: -o-transform 0.3s;
      -webkit-transition: -webkit-transform 0.3s;
      transition: transform 0.3s;
}
.nav-toggle span:before {
      -moz-transform: translateY(-10px) rotate(0deg);
      -ms-transform: translateY(-10px) rotate(0deg);
      -webkit-transform: translateY(-10px) rotate(0deg);
      transform: translateY(-10px) rotate(0deg);
}
.nav-toggle span:after {
      -moz-transform: translateY(10px) rotate(0deg);
      -ms-transform: translateY(10px) rotate(0deg);
      -webkit-transform: translateY(10px) rotate(0deg);
      transform: translateY(10px) rotate(0deg); 
}
.nav-toggle.close-nav:before {
    -moz-transform: scale(0);
    -ms-transform: scale(0);
    -webkit-transform: scale(0);
    transform: scale(0); 
}
.nav-toggle.close-nav:after {
    -moz-transform: scale(1);
    -ms-transform: scale(1);
    -webkit-transform: scale(1);
    transform: scale(1);
}
.nav-toggle.close-nav span {
    background-color: rgba(255, 255, 255, 0); 
}
.nav-toggle.close-nav span:before, .nav-toggle.close-nav span:after {
      background-color: #fff; 
}
.nav-toggle.close-nav span:before {
      -moz-transform: translateY(0) rotate(45deg);
      -ms-transform: translateY(0) rotate(45deg);
      -webkit-transform: translateY(0) rotate(45deg);
      transform: translateY(0) rotate(45deg); 
}
.nav-toggle.close-nav span:after {
      -moz-transform: translateY(0) rotate(-45deg);
      -ms-transform: translateY(0) rotate(-45deg);
      -webkit-transform: translateY(0) rotate(-45deg);
      transform: translateY(0) rotate(-45deg); 
}

@media screen and (max-width: 1024px) {
  #header .header-content {
    width: 100%; }
  .banner-text {
    padding-top: 50%;
    }

  .nav-toggle {
    display: block; }
  
  .hedear_info .info_left {
	font-size: 10px;
	width: 100%;
	margin: 0 auto;
	text-align: center; }

  .navigation {
    position: fixed;
    background-color: #666666;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    z-index: 99999;
    visibility: hidden;
    opacity: 0;
   }
   .navigation .primary-nav {
      position: absolute;
      top: 40%;
      -moz-transform: translateY(-45%);
      -ms-transform: translateY(-45%);
      -webkit-transform: translateY(-45%);
      transform: translateY(-45%); }
     .navigation ul {
      	display: block; 
     }
    .navigation li {
      display: block;
      margin-bottom: 20px; 
     }
    .navigation a {
      display: block;
      font-size: 18px;
      color: #fff!important;
      margin: 0;
      padding: 0px 40px;
      text-align: left; 
     }
     .nav_btn {
      	width: 100%;
      	padding: 10px !important;
      	text-align: center!important;
     }

}


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

	.navigation .primary-nav {
		padding: 0;
	}
	.navigation a {
		font-size: 26px;
	}
	#global_menu ul li span {
		font-size: 12px;
	}
}
/* ==========================================================================
	LADIES
========================================================================== */
#campaign-content .img-wrap {
    margin: 50px 0;
}
.page-title {
    margin-top: 30px;
}
.page-title p:nth-child(1) {
    display: inline-block;
    position: relative;
    margin-bottom: 0.5em;
    font-size: 2.2rem;
    font-family: "OratorStd-Slanted";
}
.page-title p:nth-child(1):before {
    content: '';
    position: absolute;
    left: 50%;
    bottom: -3px;
    display: inline-block;
    width: 110px;
    height: 3px;
    -moz-transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    transform: translateX(-50%);
    background-color: #a9d5fa;
    border-radius: 2px;
}
#ladies-menu {
    margin: 50px 0;
}
#ladies-menu .menu-item-wrap {
    border: 1px solid #AAD5F9;
    text-align: center;
    padding: 20px 0;
    color: #666666;
    -moz-transition: all 0.3s;
    -o-transition: all 0.3s;
    -webkit-transition: all 0.3s;
    transition: all 0.3s;
}
#ladies-menu .menu-item-wrap:hover {
	background: #AAD5F9;
    color: #fff;
}
.campain_title {
	display: block;
    margin-top: 20px;
    font-size: 17px;
}
@media screen and (max-width: 768px) {
	#ladies-menu .menu-item-wrap {
		margin-bottom: 10px;
	}
}
/* =================================
	technology
==================================== */
#technology-content {
    margin:  100px 0;
    color: #636363;
}
#technology-content .row {
    margin:  100px 0;
}
#technology-content .technology-img {
    position: relative;
}
#technology-content .technology-img img {
    position: relative;
    /* left: 50px; */
}
#technology-content .technology-text {
    position: relative;
}
#technology-content .technology-text .technology-title{
    position: relative;
    left: -50px;
    padding: 10px 0 0 30px;
    font-size: 2.0rem;
    border-bottom: 2px solid #cccccc;
    display: block;
    width:  50%;
    /* margin-left: 10px; */
}
#technology-content .technology-text .technology-desc{
    font-size: 1.2rem;
}
/* =================================
	PARTS
==================================== */
#parts-content {
    margin: 0 0 100px;
    padding: 50px 0 0 90px;
}
#parts-content .size-button {
    border: 2px solid #2076d5;
    border-radius: 15px;
    padding: 10px;
    margin-bottom: 30px;
}

#parts-content .button-s {
    border-color: #2076d5;
    color: #2076d5;
}
#parts-content .button-m {
    border-color: #fcb13e;
    color: #fcb13e;
}
#parts-content .button-l {
    border-color: #03a8a1;
    color: #03a8a1
}
#parts-content .size-button p {
    font-size: 3.5rem;
    font-family: "OratorStd-Slanted";
    padding-left: 20px;
}
#parts-content .size-button p span {
    font-size: 2.0rem;
    
}
#parts-content .button-s p {
    border-bottom: 2px solid #2076d5;
}
#parts-content .button-m p {
    border-bottom: 2px solid #fcb13e;
}
#parts-content .button-l p {
    border-bottom: 2px solid #03a8a1;
}
#parts-content .size-button div {
    text-align: center;
}
/* =================================
	PLAN
==================================== */
#plan-content {
    margin: 70px 0  120px;
}
#plan-content .plan-text {
    font-size:1.2rem;
    padding: 70px 0 0 50px;
}
.price-table {
    width:85%;
    border: 2px solid #d4e9fe;
    padding-bottom: 40px;
    margin: 80px 0 0;
}
.price-table table {
    
}
.price-table .thead{
    background-color: #aad5f8;
    color: white;
    padding: 10px 0;    
}
.price-table .thead div{
    float: left;
}
.price-table .thead .symbol {
    font-size: 3.0rem;
}
.price-table .thead div:nth-child(2) {
    padding-top: 10px;
}

.price-table .thead div:nth-child(3) {
    font-size: 2.0rem;
    padding-left: 100px;
}

.price-table .tbody {
    margin: 0 50px;
    border-bottom: 1px solid #9f9e9f;
    
}
.price-table .tbody div{
    float: left;
}
.price-table .tbody div:nth-child(1){
    padding-top: 32px;
}
.price-table .tbody div:nth-child(2) {
    padding: 38px 0 0 60px;
}

.tbody .item-cat {
    font-size: 1.8rem;
    padding-left: 20px;
}
.tbody .add-info {
    font-size:1.2rem;
}
.tbody .times {
    color: #626262;
}
.tbody .price {
	font-family: "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
    font-size: 4.5rem;
    color: #f99122;
    padding-left:20px;
}
.tbody .yen {
    display: inline-block;
    position: relative;
    margin-left: -40px;
    font-size: 2.0rem;
    color: #f99122;
}
.tbody .upper {
    position: relative;
    font-size: 0.5rem;
    top: -27px;
    left: 35px;
    color: #f99122;
}
@media screen and (max-width: 768px) {
	#plan-content .plan-text {
		padding: 0;
	}
	.price-table .thead {
		text-align: center;
	}
	.price-table .thead div {
		float: none;
	}
	.price-table .thead div:nth-child(2) {
		margin-top: -30px;
	}
	.price-table .thead div:nth-child(3) {
		padding: 0
	}
	.price-table .tbody {
		margin: 0 20px;
	}
	.price-table .tbody div {
		float: none;
	}
	.price-table .tbody div:nth-child(2) {
		padding: 10px 0;
	}
	.price-table .tbody .float-right {
		position: relative;
	}
	.tbody .item-cat {
		padding-left: 0px;
	}
	.tbody .times {
		display: block;
		padding-left: 0;
	}
	.tbody .price {
		display: inline-block;
		padding-left: 0;
	}
	.tbody .yen {
		margin-left: 0;
		position: absolute;
		bottom: 0;
		right: 0;
		font-size: 2.8rem;
	}
	.tbody .upper {
		font-size: 1rem;
		top: -35px;
		left: 50px;
	}
	.float-right {
		float: none!important;
	}
}
/* =================================
	facial
==================================== */
#facial-content {
    margin: 70px 0 120px;    
}
.facial-text {
    font-size:1.2rem;
    padding: 70px 0 0 50px;
}
#facial-content .price-table {
    border: 2px solid #e7e3de;
}
#facial-content .price-table .thead{
    background-color: #d0c6bd;
}
#facial-content .tbody .yen {
    margin-left: -80px;
}
#facial-content .tbody .upper {
    top: -28px;
    left: 28px;
}
.special-cource {
    color: #646564
}
.cource-sub {
    padding-left: 50px;
}
.table-group {
    margin-top: -60px;
}
@media screen and (max-width: 768px) {
	.facial-text {
		padding: 0;
	}
}
/* ==========================================================================
	MENS
========================================================================== */
#mens-menu {
    margin: 50px 0;
}
#mens-menu .menu-item-wrap {
    border: 1px solid #d3eafa;
    text-align: center;
    padding: 20px 0;
}
.mens-content #parts-content .button-l {
    border-color: #2babe4;
    color: #2babe4
}
.mens-content #parts-content .button-l p {
    border-bottom: 2px solid #2babe4;
}
.mens-content #parts-content .button-ll {
    border-color: #ec2177;
    color: #ec2177;
}
.mens-content #parts-content .button-ll p {
    border-bottom: 2px solid #ec2177;
}
.mens-content #parts-content .button-face {
    border-color: #05a79b;
    color: #05a79b;
}
.mens-content #parts-content .button-face p {
    font-size: 2.2rem;
    border-bottom: 2px solid #05a79b;
}
.mens-content #plan-content .tbody .yen {
    margin-left: -20px;
}
.mens-content #plan-content .tbody .upper {
    top: -27px;
    left: 28px;    
}
@media screen and (max-width: 768px) {
	#facial-content .tbody .upper {
		top: -37px;
		left: 38px;
	}
}
/* ==========================================================================
	arrow
========================================================================== */
.arrow{
    position: relative;
    display: inline-block;
    /* padding: 0 0 0 150px; */
    color: #000;
    vertical-align: middle;
    text-decoration: none;
    font-size: 15px;
}
.arrow::before,
.arrow::after{
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    margin: auto;
    content: "";
    vertical-align: middle;
}
.head-arrow {
    padding: 0 0 0 150px;
}
.head-arrow::before{
    left: 30px;
    top: 20px;
    width: 20px;
    height: 20px;
    border-top: 2px solid #fff;
    border-right: 2px solid #fff;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
}

.body-arrow {
    padding: 0 0 0 30px;
}
.body-arrow::before{
    width: 20px;
    height: 20px;
    top: -10px;
    -webkit-border-radius: 50%;
    border-radius: 50%;
    background: #aad5f8;
}
.body-arrow::after{
    left: 6px;
    top: -10px;
    /* box-sizing: border-box; */
    width: 5px;
    height: 5px;
    /* border: 3px solid transparent;
    border-left: 3px solid #fff; */
    border-top: 1px solid #fff;
    border-right: 1px solid #fff;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
}
#facial-content .body-arrow::before {
    background: #d2c5bc;
}
@media screen and (max-width: 768px) {
	.head-arrow::before {
		display: none;
	}
}
/* ==========================================================================
	horizon line
========================================================================== */
.h_caption {
    color: #626262;
	font-size: 2.0rem;
	display: flex;
    align-items: center;
    margin: 25px 0 50px;
    font-family: "OratorStd-Slanted";
}
.h_caption div {
    line-height: 80%;
    padding-top: 15px;
}
.h_caption:before, .h_caption:after {
	content: "";
	flex-grow: 1;
	border-top:1px dashed #666;
	display: block;
}
.h_caption:before {
	margin-right: 1.0em;
}
.h_caption:after {
	margin-left: 1.0em;
}
.h_caption span {
    display: block;
    font-size: 0.5rem;
}
.h_caption div {
    text-align: center;
}

.h_caption2 {
    border-top: 1px dashed #666;
}

@media screen and (max-width: 768px) {
	.h_caption {
		margin: 25px 0 30px;
		padding-top: 0px;
	}
	#parts-content {
        padding: 20px 0 0 0px;
    }
    #technology-content .technology-text .technology-desc{
        padding-left: 0px;
    }
    #technology-content .technology-img {
        text-align: center;
    }
    #technology-content .technology-text {
        text-align: center;
    }
    #technology-content .technology-text .technology-title{
        left: 0;
        padding: 0;
        width:   100%;
    }
    #plan-content .text-right ,#facial-content .text-right {
        text-align: center!important;
    }
}