@charset "UTF-8";

@media only screen and (max-width: 1440px) {
/* home /////////////////////////////////////////////////////////////////////////////////////////// */


}

@media only screen and (max-width: 1084px) {
/* home /////////////////////////////////////////////////////////////////////////////////////////// */
.home_mainimg .fade{
    width: 90%;
    margin:0 auto;
}
.slick-slide {
    margin: 0;
}

/*home_concept*/
.home_concept:before {
    top: -190px;
    width: 650px;
    height: 650px;
}

}

@media only screen and (max-width: 1024px) {
/* common /////////////////////////////////////////////////////////////////////////////////////////// */
.cmn_maxbox {
    padding-left: 20px;
    padding-right: 20px;
}
.slick-next, .slick-next:hover {
    right: 5%!important;
}
.slick-prev, .slick-prev:hover {
    left: 5%!important;
}
}

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

/* common /////////////////////////////////////////////////////////////////////////////////////////// */

.spNone {
    display: none;
}

.pcNone {
    display: block;
}

.cmn_maxbox {
    padding-left: 20px;
    padding-right: 20px;
}

/* aタグ(電話番号) */
a[href^="tel"] {
    pointer-events: all;
}

p,
li,
dt,
dd,
a {
    font-size: 1.4rem;
}

/* サブページ共通BOX */
.cmn_box {
    padding: 46px 0;
}

/*header*/
.front_menu .flex {
    max-width: 670px;
}


/* home /////////////////////////////////////////////////////////////////////////////////////////// */
/*home_beforeafter_box*/

.home_beforeafter_box .home_beforeafter_box_right {
    max-width: 210px;
}

.home_beforeafter_box .home_beforeafter_box_left {
    max-width: 210px;
}

/*home_contact_box*/
.home_contact_box h2.cmn_ttl {
    margin-right: 40px;
}

/*home_news*/
.home_news_contents ul {
    margin: 0;
}

/* salon /////////////////////////////////////////////////////////////////////////////////////////// */

.salon_greeting .salon_greeting_txt {
    max-width: 100%;
    padding-top: 20px;
}

.salon_greeting .cmn_maxbox{
    background-image:inherit;
}

.salon_greeting .salon_greeting_txt img{
    width: 50%;
    margin:0 auto 50px;
}
}

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

/* common /////////////////////////////////////////////////////////////////////////////////////////// */

.cmn_lower_ttl {
    padding: 110px 0 70px;
}

/* header */
header {
    padding:10px 20px;
}

.front_menu .front_menu_bg {
    width: 100%;
    height: 100%;
    position: fixed;
    z-index: 999;
    background-color: rgba(51, 51, 51, 0.5);
    display: none;
    top: 0;
    left: 0;
}

.front_menu .drawer_button {
    display: block;
    background: none;
    border: none;
    padding: 5px 10px;
    width:60px;
    letter-spacing: 0.1em;
    cursor: pointer;
    position: fixed;
    top: 10px;
    right: 20px;
    z-index: 1001;
    text-align: center;
    outline: none;
    background-color:#35A9C4;
}

.front_menu .drawer_button.active{
    background-color: inherit;
}

.front_menu .drawer_button.active span:nth-of-type(1),
.front_menu .drawer_button.active span:nth-of-type(2),
    .front_menu .drawer_button.active span:nth-of-type(3) {
    width: 49px;
    background-color: #35A9C4;
}

.front_menu .drawer_button.active span:nth-of-type(1) {
    transform: rotate(30deg);
}

.front_menu .drawer_button.active span:nth-of-type(2) {
    opacity: 0;
}

.front_menu .drawer_button.active span:nth-of-type(3) {
    transform: rotate(-30deg);
}

.front_menu .drawer_button.active .front_menu_text {
    display: none;
}

.front_menu .drawer_button.active .drawer_close {
    display: block;
    color: #35A9C4;
}

button.drawer_button.active .drawer_menu_text {
    display: none;
}

.front_menu span {
    display: block;
    height: 2px;
    margin: 10px 0;
    transition: all 0.2s;
    transform-origin: 0 0;
}

.front_menu .drawer_text {
    text-align: center;
    font-size: 10px;
}

.front_menu .drawer_close {
    letter-spacing: 0.08em;
    display: none;
}

.front_menu .front_menu_text {
    display: block;
}

.front_menu .drawer_nav_wrapper {
    width: 250px;
    height: 100%;
    transform: translate(250px);
    position: fixed;
    top: 0;
    right: 0;
    z-index: 1000;
    background-color: #FFF;
    overflow-x: hidden;
    overflow-y: auto;
}

.front_menu .drawer_nav {
    display: block;
    position: relative;
    margin-top: 40px;
    padding-left: 20px;
}

.front_menu .drawer_nav li {
    background-color: #fff;
    height: auto;
    line-height: 50px;
    position: relative;
}

.front_menu .drawer_nav li a {
    background-color: #fff;
    display: block;
    text-align: left;
}

.front_menu .drawer_nav_wrapper.open {
    transform: translate(0);
}

.front_menu.left .drawer_button {
    right: auto;
    left: 32px;
}

.front_menu.left .drawer_nav_wrapper {
    transform: translate(-250px);
    right: auto;
    left: 0;
}

.front_menu.left .drawer_nav_wrapper.open {
    transform: translate(0);
}

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

.front_menu .header_address {
    text-align: center;
    color: #fff;
    font-size: 1.4rem;
    position: fixed;
    bottom: 0;
    width: 100%;
    background-color: #35A9C4;
    left: 0;
    display: flex;
    justify-content: center;
    align-items: center;
    margin:0 auto;
    padding:10px 20px;
}

.header_address div {
    padding-right: 20px;
}

.header_bg{
    background-color:inherit;
    box-shadow :inherit;
}

/* home /////////////////////////////////////////////////////////////////////////////////////////// */

.header_contact {
    right: 80px;
    top: -20px;
    width: 130px;
}

.header_contact a {
    width: 56px;
    display: block;
}

/*home_contact*/
.home_contact_box {
    padding: 35px;
    background-size: 80px;
}


/*home_sns*/
.home_sns_left {
    padding-bottom: 100px;
}

.home_sns:before {
    width: 90%;
    height: 50%;
    bottom: inherit;
    top:0;
}

.home_sns:after {
    width: 90%;
    height: 60%;
    bottom: 0;
}

.home_sns_left, .home_sns_right {
    width: 100%;
}

 .fb-wrap{
    width: 100%;
    text-align: center !important;
    margin: 0 auto !important;
}

.fb-page {
    text-align: center !important;
    margin: 0 auto !important;
}


}

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


/* common /////////////////////////////////////////////////////////////////////////////////////////// */

/* 780px表示/非表示 */
.pc780 {
    display:none !important;
}

.sp780 {
    display:block !important;
}



/* footer */


/* home /////////////////////////////////////////////////////////////////////////////////////////// */


/*.home_mainimg*/

.home_mainimg {
    padding: 150px 0 0px;
}

.slick-next, .slick-next:hover,
.slick-prev, .slick-prev:hover {
    width: 50px!important;
    background-size: 50px!important;
}

/*home_concept*/
.home_concept p {
    margin-top: 210px;
    max-width: 100%;
}

.home_concept{
    padding-bottom: 150px!important;
}

.home_concept .cmn_btn {
    bottom: -80px;
}

/*home_beforeafter_box*/
.home_beforeafter_box {
    background-image: url(../img/home_beforeafter_face_sp.png);
    background-size: 60%;
    background-position: center bottom 48%;
    padding-bottom: 300px;
}

.home_beforeafter_box h3 {
    padding-bottom: 700px;
}

.home_beforeafter_box .home_beforeafter_box_left {
    position: absolute;
    left: 0;
    bottom: inherit;
    top: 80px;
    max-width: 490px;
}

.home_beforeafter_box .home_beforeafter_box_right {
    position: absolute;
    right: 0;
    top: inherit;
    bottom: 75px;
    max-width: 520px;
}

/*home_contact*/
.home_contact_box{
    background-size: 50px;
    flex-wrap: wrap;
}

/*home_fb*/
.home_fb_contents {
    width: 49%;
}

.home_news_contents li {
    padding: 30px 0;
}

/*home_access*/
.home_access_right,
.home_access_left {
    width: 100%;
}

.home_access_left .cmn_btn {
    margin: 0 0 50px auto;
    max-width: 230px;
}

/* menu /////////////////////////////////////////////////////////////////////////////////////////// */

.menu_lifting .menu_lifting_right {
    width: 100%;
}

.menu_lifting .menu_lifting_left {
    width: 40%;
    margin: 0 auto 30px;
}

/* contact /////////////////////////////////////////////////////////////////////////////////////////// */


.contact_form_dl div {
    padding: 0 0 20px 0;
}

.contact_form_dl dt {
    width: 100%;
    margin-bottom:5px;
}

.contact_form_dl dd {
    width: 100%;
}

.contact_form_dl #mail1 {
    display: inline-block;
    width: 100%;
}

.contact_form_dl #fax, .contact_form_dl #tel, .contact_form_dl #toiawase {
    width: 100%;
}

}

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

/* home /////////////////////////////////////////////////////////////////////////////////////////// */
/*
home_beforeafter*/
.home_beforeafter_box2 .home_beforeafter_box_right:before {
    top: 10px;
}


}


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

/* home /////////////////////////////////////////////////////////////////////////////////////////// */

/*home_contact_box*/
.home_contact_box h2.cmn_ttl:before {
    bottom: 0px;
}

.home_contact_box p {
    margin-top: 15px;
}

.home_contact_box {
    padding: 20px;
}

/*home_news*/
.home_news_contents {
    width: 100%;
    margin-bottom: 40px;
}

.home_fb_contents {
    width: 100%;
}

}



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

/* common /////////////////////////////////////////////////////////////////////////////////////////// */

.cmn_ttl {
    font-size: 2.6rem;
}

.cmn_lower_ttl p {
    font-size: 3.5rem;
    padding-bottom: 10px;
    margin-bottom: 12px;
}

.cmn_lower_ttl h1 {
    font-size: 1.5rem;
}

.cmn_lower_ttl {
    padding: 110px 0 0;
}

h2.cmn_subttl_lower {
    font-size: 3.5rem;
    margin-bottom: 20px;
}

/* anchor */
.anchor {
    padding-top: 60px;
    margin-top: -60px;
}

/* sp表示/非表示 */
.pc {
    display:none !important;
}

.sp {
    display:block !important;
}

.cmn_btn a {
    max-width: 230px;
    font-size: 1.6rem;
    padding-right: 90px;
    background-size: 60px;
    background-position: center right 15px;
}

.cmn_btn:before {
    top: -14px;
    width: 60px;
    height: 60px;
}

/* コンテンツ余白 */
.calc_contents{
    margin:0 auto 20px;
    width: calc(100% - 40px);
}

.section {
    padding: 50px 0;
}

.section_pb{
    padding:0 0 50px;
}

/*footer*/
footer {
    padding: 80px 0 80px;
}

.footer_nav {
    width: 100%;
    padding-right: 0;
    margin-bottom: 15px;
}

.footer_sns {
    width: 29%;
    margin: 0 auto;
}


/* home /////////////////////////////////////////////////////////////////////////////////////////// */
/*home_mainimg*/
.slick-next, .slick-next:hover,
.slick-prev, .slick-prev:hover {
    display: none!important;
}

/*home_beforeafter_box*/
.home_beforeafter_box {
    background-size: 90%;
}


/*home_concept*/
.home_concept:before {
    top: 20px;
    width: 400px;
    height: 400px;
    right: -40px;
}

.home_concept p {
    margin-top: 140px;
    max-width: 100%;
    padding: 20px;
}

.home_concept .cmn_maxbox {
    background-position: center top 90px;
}

.home_concept {
    overflow: hidden;
}


/*home_beforeafter*/

.home_beforeafter .home_beforeafter_txt h2 {
    font-size: 2.0rem;
    margin-bottom: 20px;
}

.home_beforeafter .home_beforeafter_txt {
    max-width: 780px;
    margin-bottom: 60px;
    background-size: 170px;
    background-position: center top 20px;
}


/*home_access*/
.home_access_left .cmn_btn {
    margin: 25px 0 50px auto;
    max-width: 230px;
}

.home_access {
    margin-bottom: 50px;
}

.home_access_left .cmn_ttl {
    margin-bottom: 20px;
}

.home_contact_box {
    padding: 20px;
    background-position: top 30px right 15px;
}

/* salon /////////////////////////////////////////////////////////////////////////////////////////// */

.salon_greeting .salon_greeting_txt img {
    width: 80%;
    margin: 0px auto 30px;
}

.salon_greeting .salon_greeting_txt p.name {
    margin-top: 30px;
    font-size: 1.6rem;
}

.salon_info table {
    margin: 50px auto 0;
}

.salon_info th,
.salon_info td {
    width: 100%;
    display: block;
}

.salon_info th{
    padding:15px 0 10px;
}

.salon_info td{
    padding:0 0 15px;
}

.salon_access h2 {
    margin-bottom: 40px;
}

.salon_access h2:before {
    bottom: -10px;
}

/*menu /////////////////////////////////////////////////////////////////////////////////////////// */

.menu_course_box .menu_course_box_left {
    width: 48%;
    color: #7a7b87;
}

.menu_course_box .menu_course_box_right span {
    font-size: 6rem;
}

.menu_course_option .flex {
    padding: 0;
}

.menu_lifting .menu_lifting_right li{
    margin-bottom: 15px;
}

.menu_lifting .menu_lifting_left {
    width: 70%;
}

/* voice /////////////////////////////////////////////////////////////////////////////////////////// */
.voice_main .voice_main_flex .voice_main_before:before,
.voice_main .voice_main_flex .voice_main_after:before {
    font-size: 2.2rem;
    left: 10px;
    top: -21px;
}

.voice_main h2 {
    padding: 10px 0;
    font-size: 1.8rem;
    margin-bottom: 40px;
    margin-top: 40px;
}

.voice_main .voice_main_txt {
    padding: 15px;
    margin-top: 40px;
}

.voice_list .voice_main_flex {
    padding: 50px 0px;
}

/* faq /////////////////////////////////////////////////////////////////////////////////////////// */

.faq_list_box h3 span, .faq_list_box p span {
    font-size: 3rem;
    padding-right: 22px;
    line-height: 30px;
}

.faq_list_box h3 {
    margin-bottom: 10px;
    padding-bottom: 10px;
    font-size: 1.6rem;
}

.faq_list .cmn_maxbox {
    margin-top: 50px;
}

.faq_list .faq_list_box {
    padding: 20px 0;
}

/* contact /////////////////////////////////////////////////////////////////////////////////////////// */

.contact_box {
    padding: 50px 0;
}

.contact_phone_box h3 {
    color: #35a9c4;
}

.contact_phone_box p.address {
    margin: 20px 0;
}

.contact_phone_box a {
    font-size: 3rem;
    margin: 0 auto;
}

.contact_box p {
    text-align: left;
}

}


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

/* common /////////////////////////////////////////////////////////////////////////////////////////// */

/* header */
.front_menu .header_logo {
    width: 80px;
}


/* home /////////////////////////////////////////////////////////////////////////////////////////// */

/*home_mainimg*/
.slick-current:before {
    display: none;
}

.slick-slide {
    transform: scale(.95);
}

.home_mainimg {
    padding: 120px 0 0px;
}

.slick-current img {
    display: block;
    padding: 0;
    background:inherit;
    background:inherit;
}

/*home_beforeafter_box*/
.home_beforeafter_box h3 {
    padding-bottom: 550px;
}

.home_beforeafter_box .home_beforeafter_box_left {
    top: 50px;
}
/* menu /////////////////////////////////////////////////////////////////////////////////////////// */
.salon_course_contents .menu_course_box_odd .menu_course_box_right:before,
.salon_course_contents .menu_course_box_odd .menu_course_box_right:after {
    display: none;
}

.menu_course_box .menu_course_box_right {
    width: 100%;
    margin-bottom: 20px;
}

.menu_course_contents .menu_course_box_odd .menu_course_box_left {
    order: 0;
}

.menu_course_box_left {
    order: 2;
}

.menu_course_box .menu_course_box_left {
    width: 100%;
    margin-bottom: 20px;
}

.menu_course_box .menu_course_box_right span {
    top: -25px;
}

.menu_cosme li {
    width: 100%;
}

.menu_cosme p {
    margin-bottom: 30px;
}

.menu_course_option {
    margin-top: 50px;
    padding: 30px 0;
}

.menu_course_option .flex {
    margin-top: 25px;
}

.menu_course_option h3 {
    margin-bottom: 2px;
}

.menu_cosme ul {
    margin-top: 60px;
}

.menu_cosme h2:before {
    bottom: -20px;
}

.menu_course_txt {
    padding-top: 30px;
    margin-bottom: 30px;
}

/* voice /////////////////////////////////////////////////////////////////////////////////////////// */
.voice_list .voice_main_flex {
    padding: 30px 0px;
}

.voice_main .voice_main_flex {
    background-size: 24px;
}

/* faq /////////////////////////////////////////////////////////////////////////////////////////// */

.faq_list_box h3 {
    line-height: 1.5;
}

}


@media only screen and (max-width:390px) {
/* common /////////////////////////////////////////////////////////////////////////////////////////// */



/* menu /////////////////////////////////////////////////////////////////////////////////////////// */
.menu_course_option .flex div {
    width: 100%;
}

/* contact /////////////////////////////////////////////////////////////////////////////////////////// */
.contact_line_box li {
    width: 100%;
    margin-bottom: 15px;
}


}



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

/* common /////////////////////////////////////////////////////////////////////////////////////////// */
/*footer_logo*/
.footer_logo {
    top: -40px;
    width: 80px;
}

}

@media only screen and (max-width:320px) {
/* common /////////////////////////////////////////////////////////////////////////////////////////// */

/*header*/
.header_contact {
    right: 70px;
    top: -20px;
    width: 100px;
}

.header_contact a {
    width: 45px;
}

/*footer*/
.footer_nav li {
    width: 33%;
}

.footer_sns {
    width: 51%;
}

.front_menu .header_address a {
    font-size: 1.4rem;
}
}