@charset "utf-8"; /* 〠 */

/*----------------------------------------------*/
/* frontpage CSS [SP]
/*----------------------------------------------*/

.top-main-frame {
}

.top-mainbox {
	position: relative;
	background-color: #FEF2E8;
	padding-bottom:50px;
}

.top-main {	
	top: 0px;
	right: 0px;
	
	width: 100%;
	height: 375px;
	
	/* background-image: url(../img/top/main.jpg);
	background-repeat: no-repeat;
	background-position: 80% 10%;
	background-size: cover; */
	margin-bottom:50px;
	z-index: 2;
}

.top-main img {
	width: 100%;
}

.top-main-copy {
	position: absolute;
	top: 50%;
	left: 10px;
	
	padding: 0px 10px;
	font-size: 65px;
	font-size: 6.5rem;
	color: #706B5D;
	
	z-index: 3;
}

.top-main-catch {
	position: relative;
	text-align: left;
	margin-bottom: 10px;
	padding: 0px 10px;
	font-size: 17px;
	font-size: 1.7rem;
	color: #706B5D;
	letter-spacing: -1px;
	font-family: 'Shippori Mincho', serif;
	font-weight: 500;
	
	z-index: 3;
}

.top-main-lead {
	position: relative;	
	padding: 0px 10px;
	font-size: 12px;
	font-size: 1.2rem;
	color: #706B5D;
	font-family: 'Shippori Mincho', serif;
	
	z-index: 2;
}

.top-main-lead br {
	display: none;
}

.top-main-shadow {
x	position: absolute;
x	top: 0px;
x	left: 0px;
	
	height: 500px;
	z-index: 1;
	
	background-color: #FEF2E8;
}

.contentsbox-inner-top-top {
	overflow: hidden;  /* preventing height 0 when float */
	padding: 0px 20px 50px 20px;
}

/*---- HYGIENE ----*/
.top-hygienebox {
x	margin: 0px 10px 50px 10px;
	margin: 0px 0px 50px 0px;
	text-align: center;
	border: 1px solid #DEDEDE;
}

.top-hygienebox a {
	display: block;
	padding: 10px;
	font-weight: bold;
	background-color: #FFFFFF;
}

.top-hygienebox a:hover {
	color: #FFFFFF;
	background: #9D9064;
}

.top-i-info {
	font-size: 15px !important;
	font-size: 1.5rem !important;
	line-height: 1;
}

/*---- ABOUT ----*/
.top-aboutbox {
	overflow: hidden;
}

.top-about-photobox {
	margin-bottom: 20px;
	padding: 20px 0px 0px 20px;
}

.top-about-photo-gray {
	box-shadow: -20px -20px 0 0 #F2F2F2;
}

.top-about-photobox img {
	width: 100%;
}

.top-about-textbox {
	line-height: 2.3;
}

.top-about-en {
	font-size: 38px;
	font-size: 3.8rem;
	line-height: 4rem;
	color: #917738;
	letter-spacing: -0.03em;
	font-weight: 100;
}

.top-about-ja {
	margin-bottom: 30px;
	font-size: 14px;
	font-size: 1.4rem;
	color: #917738;
}

.top-i-subnavi {
	font-size: 20px !important;
	font-size: 2.0rem !important;
}

/*---- SUBNAVI ----*/
.top-subnavibox {
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-start;
	margin: 0px 15px 10px 18px;
z	background-color: #669933;
}

.top-subnavibox a {
	display: block;
	width: 30%;
	height: 75px;
	margin: 0px 1.5% 10px;
	padding-top: 10px;
	box-sizing: border-box;
	text-align: center;
	color: #B19C76 !important;
	border: 1px solid #B19C76;
	background-color: #FFFFFF;
	-webkit-border-radius: 4px;
	-moz-border-radius: 4px;
	border-radius: 4px;
}

.top-subnavibox a:hover {
x	color: #FFFFFF;
x	background: #B19C76;
	color: #B19C76 !important;
	border: 1px solid #B19C76;
	background-color: #FFFFFF;
}

.top-subnavibox a:active {
	color: #B19C76 !important;
}

.top-subnavi-text01 {
	margin-top: 10px;
	font-size: 9px;
	font-size: 0.9rem;
	line-height: 1;
}

.top-subnavi-text02 {
	margin-top: 5px;
	font-size: 9px;
	font-size: 0.9rem;
	line-height: 1;
}

.top-subnavi-icon img {
	width: 30px;
}

/*---- SONIC FIT ----*/
.top-sonicfitbox {
x	overflow: hidden;
	margin-bottom: 30px;
	
x	display: flex;
}

.top-sonicfit-photo {
	width: 100%;
	margin-bottom: 30px;
}

.top-sonicfit-photo img {
	width: 100%;
}

.top-sonicfit-text {
	width: 100%;
x	padding: 0px 2%;
	margin-bottom: 30px;
}

.top-sonicfit-text p {
	margin-bottom: 10px;
}

.top-sonicfit-subt {
x	width: 150px;
	display: inline;
	padding: 0px 2rem 10px 2rem;
	margin: 0px auto 25px;
	padding-bottom: 5px;
	font-size: 18px;
	font-size: 1.8rem;
	color: #000000;
	text-align: center;
	border-bottom: 1px solid #999999;
}

.top-sonicfit-subt-lead {
	margin-bottom: 25px;
	text-align: center;
}

.top-sonicfit-catetitle {
	margin-bottom: 10px;
x	font-size: 16px;
x	font-size: 1.6rem;
	color: #000000;
	font-weight: bold;
}

.top-sonicfit-hifubox {
	max-width: 900px;
	margin: 0px auto 50px;
}

.top-sonicfit-hifu-text {
	margin-bottom: 20px;
}

.top-sonicfit-hifu-text p {
	margin-bottom: 10px;
}

.top-sonicfit-hifu-photo {
	text-align: center;
}

.top-sonicfit-hifu-photo img {
	width: 100%;
}

/*---- POINT PC----*/
.sonicfit-pointbox-pc {
	display: none;
}

/*---- POINT SP ----*/
.sonicfit-pointbox-sp {
	margin-bottom: 50px;
	text-align: center;
}

.sonicfit-pointbox-sp img {
	width: 100%;
}

/*---- SONIC FIT EFFECT ----*/
.top-sonicfit-effectlist {
}

/*---- SONIC FIT EFFECT 01 ----*/
.top-sonicfit-effect01box {
	position: relative;
x	height: 510px;
x	margin-bottom: 20px;
	height: 410px;
x	margin-bottom: 20px;
x	background-color: #669933;
}

.top-sonicfit-effect01-photo {
	position: absolute;
	top: 0px;
	left: 0px;
	width: 150px;
	z-index: 1;
}

.top-sonicfit-effect01-photo img {
	width: 150px;
}

.top-sonicfit-effect01-en {
	position: absolute;
x	top: 30px;
	top: 60px;
x	left: 170px;
	right: 70px;
	
	font-size: 50px;
	font-size: 5.0rem;
	color: #C0B7B3;
	z-index: 2;
}

.top-sonicfit-effect01-num {
	position: absolute;
	top: 50px;
x	left: 280px;
	right: 0px;
	
	font-size: 100px;
	font-size: 10rem;
	letter-spacing: -0.08em;
	line-height: 1;
	color: #f2ede9;
	font-weight: 500;
	z-index: 1;
}

.top-sonicfit-effect01-catch {
	position: absolute;
	top: 180px;
	left: 0px;
	margin-bottom: 20px;
	
	font-size: 20px;
	font-size: 2.0rem;
	color: #000000;
	z-index: 2;
}

.top-sonicfit-effect01-text {
	position: absolute;
	top: 215px;
	left: 0px;
	margin-bottom 10px;
	z-index: 2;
}

.top-sonicfit-effect01-text br {
	display: none;
}

.top-sonicfit-effect-icon {
	margin: 20px 0px 10px;
}

.top-sonicfit-effect-icon span {
x	margin-right: 10px;
	padding: 2px 5px;
	font-size: 13px;
	font-size: 1.3rem;
	color: #FFFFFF;
	background-color: #E7B191;
}

/*---- SONIC FIT EFFECT 02 ----*/
.top-sonicfit-effect02box {
	position: relative;
x	height: 520px;
x	margin-bottom: 20px;
	height: 430px;
x	background-color: #112233;
}

.top-sonicfit-effect02-photo {
	position: absolute;
	top: 0px;
	right: 0px;
	width: 150px;
	z-index: 1;
}

.top-sonicfit-effect02-photo img {
	width: 150px;
}

.top-sonicfit-effect02-en {
	position: absolute;
	top: 110px;
	left: 20px;
	
	font-size: 45px;
	font-size: 4.5rem;
	line-height: 1;
	color: #C0B7B3;
	z-index: 2;
}

.top-sonicfit-effect02-num {
	position: absolute;
	top: 10px;
	left: 0px;
	
	font-size: 100px;
	font-size: 10rem;
	letter-spacing: -0.08em;
	line-height: 1;
	color: #f2ede9;
	font-weight: 500;
	z-index: 1;
}

.top-sonicfit-effect02-catch {
	position: absolute;
	top: 180px;
	left: 0px;
	margin-bottom: 20px
	
	font-size: 20px;
	font-size: 2.0rem;
	color: #000000;
}

.top-sonicfit-effect02-text {
	position: absolute;
	top: 215px;
	left: 0px;
	margin-bottom 10px;
	z-index: 3;
}

.top-sonicfit-effect02-text br {
	display: none;
}

/*---- SONIC FIT EFFECT 03 ----*/
.top-sonicfit-effect03box {
	position: relative;
x	height: 480px;
	height: 380px;
x	background-color: #669933;
}

.top-sonicfit-effect03-photo {
	position: absolute;
	top: 0px;
	left: 0px;
	width: 150px;
	z-index: 1;
}

.top-sonicfit-effect03-photo img {
	width: 150px;
}

.top-sonicfit-effect03-en {
	position: absolute;
	top: 80px;
	right: 50px;
	
	font-size: 50px;
	font-size: 5.0rem;
	color: #C0B7B3;
	z-index: 2;
}

.top-sonicfit-effect03-num {
	position: absolute;
	top: 50px;
	right: 0px;
	
	font-size: 100px;
	font-size: 10rem;
	letter-spacing: -0.08em;
	line-height: 1;
	color: #f2ede9;
	font-weight: 500;
	z-index: 1;
}

.top-sonicfit-effect03-catch {
	position: absolute;
	top: 190px;
	left: 0px;
	margin-bottom: 20px
	
	font-size: 20px;
	font-size: 2.0rem;
	color: #000000;
	z-index: 2;
}

.top-sonicfit-effect03-text {
	position: absolute;
	top: 225px;
	left: 0px;
	margin-bottom 10px;
	z-index: 2;
}

.top-sonicfit-effect03-text br {
	display: none;
}

/*---- MEDIA ----*/
.top-mediabox {
}

.top-media-sub-title {
	margin-bottom: 20px;
}

.top-media-textbox {
}

.baslidermediaframe-pc {
	display: none;
}

.baslidermediaframe-sp {
	padding: 0px 50px;  /* for left & right arrow */
x	background-color: #00FF00;
}

#baslidermedia-sp {
}

#baslidermedia-sp > li {
	display: none;  /* Init hide until download all image */
x	width: 25%;
}

#baslidermedia-sp > li .top-media-photo {
	margin-bottom: 10px;
}

#baslidermedia-sp > li .top-media-photo img {
	max-width: 100%;
}

#baslidermedia-sp > li .top-media-title {
	line-height: 1.2;
	font-size: 15px;
	font-size: 1.5rem;
	
x	background-color: #FFFF00;
}

/* bxslider setting */
.baslidermediaframe-sp .bx-wrapper {
x	margin: 0px auto 50px  !important;
	margin: 0px auto 0px  !important;
}

.baslidermediaframe-sp .bx-wrapper .bx-controls-direction a.bx-prev {
	left: -40px;
	top: 40%;
	background-image: url(../img/sonicfit/bxslider_controls.png);
}

.baslidermediaframe-sp .bx-wrapper .bx-controls-direction a.bx-next {
	right: -40px;
	top: 40%;
	background-image: url(../img/sonicfit/bxslider_controls.png);
}

/*---- PRODUCT ----*/
.top-product-icon {
	margin-bottom: 10px;
}

.top-productbox01 {
	margin-bottom: 30px;
	position: relative;
x	height: 500px;
	height: 400px;
	margin-bottom: 20px;
}

.top-product01-photo {
	position: absolute;
	width: 240px;
	max-width: 240px;
	top: 0px;
}

.top-product01-photo img {
	width: 240px;
}

.top-product01-photo-gray {
	box-shadow: 15px 15px 0 0 #F2F2F2;
}

.top-product01-arrow {
	position: absolute;
	top: 70px;
	left: 170px;
}

.top-product01-name {
	position: absolute;
x	top: 60px;
	top: 100px;
x	right: 0px;
	left: 170px;
	font-size: 30px;
	font-size: 3rem;
	line-height: 1.2;
	color: #917738;
	font-weight: 300;
	letter-spacing: -0.03em;
}

.top-product01-text {
	position: absolute;
	top: 300px;
	left: 0px;
}

.top-product01-name-ja, .top-product02-name-ja {
	margin-bottom: 5px;
	padding-bottom: 5px;
	font-size: 12px;
	font-size: 1.2rem;
	color: #000000;
	border-bottom: 1px solid #999999;
}

.top-productbox02 {
	position: relative;
	height: 400px;
}

.top-product02-photo {
	position: absolute;
	top: 0px;
	right: 0px;
x	box-shadow: -20px 20px 0 0 #F2F2F2;
}

.top-product02-photo img {
	width: 240px;
}

.top-product01-photo-gray {
	box-shadow: 10px 10px 0 0 #F2F2F2;
}

.top-product02-arrow {
	position: absolute;
	top: 70px;
	left: 0px;
}

.top-product02-name {
	position: absolute;
	top: 90px;
	left: 0px;
	
	font-size: 35px;
	font-size: 3rem;
	color: #917738;
	font-weight: 300;
	letter-spacing: -0.03em;
}

.top-product02-text {
	position: absolute;
	top: 300px;
x	left: 0px;
}

/*---- SALON ----*/
.top-salonbox {
	margin: 0px auto;
}

.top-salon-textbox {
	margin-bottom: 20px;
}

.top-salon-mapbox {
	margin-bottom: 30px;
}

.top-salon-name {
x	display: inline-block;
x	margin-bottom: 10px;
x	padding: 5px 20px;
x	background-color: #dddddd;

	margin-bottom: 15px;
	padding-bottom: 5px;
	font-size: 16px;
	font-size: 1.6rem;
	border-bottom: 1px solid #999999;
}

.top-salon-infotable {
}

.top-salon-infotable-row {
}

.top-salon-infotable-title {
	font-weight: bold;
	line-height: 1.5;
}

.top-salon-infotable-data {
	margin-bottom: 15px;
	line-height: 1.5;
}

.top-salon-mapbox iframe {
	width: 100%;
	height: 350px;
	height: 200px;
}

.top-salon-listtable {
	margin-bottom: 10px;
}

.top-salon-listtable-row {
x	display: table-row;
}

.top-salon-listtable-title {
	font-weight: bold;
}

.top-salon-listtable-data {
}

.top-salonlist {
	overflow: hidden;
}

.top-salonlist li {
	float: left;
	display: inline-block;
	margin-right: 20px;
	margin-bottom: 10px;
}

.top-salonlist li a {
	display: block;
	color: #B19C76;
}

/*---- BLOG ----*/
.top-blogbox {
}

.top-blog-sub-title {
	margin-bottom: 20px;
}

.top-blog-textbox {
}

.top-bloglist {
}

.top-bloglist > li {
	padding: 10px 0px;
	border-bottom: 1px solid #DDDDDD;
}

.top-bloglistbox {
x	display: table;
x	table-layout: fixed;
x	width: 100%;
}

.top-blog-date {
x	display: inline-block;
	margin-bottom: 10px;
	font-size: 13px;
	font-size: 1.3rem;
}

.top-blog-photo {
x	display: inline-block;
	width: 80%;
x	max-width: 600px;
	margin: 0px auto 5px;
x	text-align: center;
}

.top-blog-photo img {
	width: 100%;
}

.top-blog-title {
	line-height: 1.5;
}

.top-blog-title a {
	display: block;
	color: #505050;
}

/*---- NEWS ----*/
.top-newsbox {
}

.top-news-sub-title {
	margin-bottom: 20px;
}

.top-news-textbox {
}

.top-newslist {
}

.top-newslist > li {
	padding: 10px 0px;
	border-bottom: 1px solid #DDDDDD;
}

.top-newslistbox {
x	display: table;
x	table-layout: fixed;
x	width: 100%;
}

.top-news-date {
x	display: inline-block;
	margin-right: 10px;
	font-size: 13px;
	font-size: 1.3rem;
}

.top-news-title {
	margin-bottom: 10px;
	line-height: 1.5;
}

.top-news-title a {
	display: block;
	color: #505050;
}


/* 10-19-2021 */
.top-main .slider{
	display:none;
}

.top-main .bx-wrapper .slider{
	display:block;
}

.top-main.animate-run{
	height:auto;
	background:transparent;
	margin-bottom:0;
}

.top-main .bx-wrapper{
	margin-bottom:0;
}

/* 10-25-2021 */
.top-main .bx-wrapper .bx-controls-direction a{
	top: auto;
    bottom: 12px;
	left: 12px;
    width: 47.5px;
    height: 47.5px;    
    background: rgba(191, 183, 162, 0.5);
    border-radius: 50%;
	position:absolute;
	font-size:0;
}

.top-main .bx-wrapper .bx-controls-direction a.bx-next{
	left:auto;
	right:12px;
}

.top-main .bx-wrapper .bx-controls-direction a:after{
	content:'';
    content: '';
    position: absolute;
    width: 7px;
    height: 7px;
    border: 2px solid #fff;
    display: block;
    top: 20px;
    left: 21px;
    border-top: none;
    border-right: none;
    transform: rotate(45deg);
}

.top-main .bx-wrapper .bx-controls-direction a.bx-next:after{
	transform: rotate(-135deg);
	left: 18px;
}

.top-main .bx-wrapper .bx-pager.bx-default-pager a:hover, .top-main .bx-wrapper .bx-pager.bx-default-pager a.active, .top-main .bx-wrapper .bx-pager.bx-default-pager a:focus{
	background:#707070;
}

.top-main .bx-wrapper .bx-pager.bx-default-pager a{
	background:#FEF2E8;
	width:7px;
	height:7px;
	border:1px solid #707070;
	border-radius: 50%;
}

.top-main .bx-wrapper{
	margin-bottom:50px;
}

.top-main-shadow{
	display:none;
}

/* 12-07-2021 */
.top-product01-text .btnbox, .top-product02-text .btnbox{
	text-align: left;
	margin-top:20px;
}
.top-productbox01{
	margin-bottom:190px;
}

.top-productbox02{
	margin-bottom:70px;
}

/* 10-25-2022 */
.point-box {
    border: 1px solid #917738;
    background: #fff;
    padding: 20px;
}

.point-box__ttl {
    text-align: center;
    font-weight: 500;
    font-size: 2rem;
    color: #917738;
    line-height: 1;
    margin-bottom: 10px;
}

.point-list__item {
    display: flex;
    align-items: flex-start;
    font-weight: 500;
    margin-bottom: 10px;
}

.point-list__item .num {
    font-size: 2rem;
    color: #917738;
    line-height: 0.8;
    flex-basis: 22px;
    flex-shrink: 0;
}

.point-list__item .num:after {
    content: '.';
}

.point-list__item dd {
    font-size: 13px;
    line-height: 1.5;
}

.point-list__item:last-child {
    margin-bottom: 0;
}

.product-content .point-box {
    margin-bottom: 10px;
}

.product-price {
    font-size: 1.6rem;
}

.top-product01-text {
    position: static;
	top:277px;
}

.top-product01-text .top-product-content {
    position: absolute;
    top: inherit;
    left: 0;
}

.top-product01-name-ja {
    position: absolute;
    top: 175px;
    right: 0;
    border-bottom: none;
}

.top-productbox02 {
    margin-top: 360px;
}

.top-product02-name-ja {
    position: absolute;
    top: 140px;
    left: 0;
    border-bottom: none;
}

.top-product02-text {
    position: static;
	top:277px;
}

.top-product02-text .top-product-content {
    position: absolute;
    top: inherit;
}

div#btnbox-top-product {
    margin-top: 200px;
}

/* 11-11-2022 */
.top-media-blocks {
    margin-top: 40px;
}

.top-media-block {
    margin-bottom: 35px;
}

.top-media-block:last-child {
    margin-bottom: 0;
}

.top-media-block .ttl {
    text-align: center;
    font-size: 19px;
    font-weight: 500;
    line-height: 1;
    margin-bottom: 20px;
}

/* 2024-07-23 */
.top-sonicfit-hifu-photo {
	width: 50%;
	margin-left: auto;
	margin-right: auto;
}