@charset 'UTF-8';

.screen-reader {
    display: none !important;
}

/*20210423 ry touch*/

.sptrainer {
    display: none;
}

.newsv {
    display: none;
}

.sec-pv {
    text-align: center;
    margin: 20px 0 100px;
}

/*20230825 ry touch*/
.soloinshead {
    display: block;
    width: 90%;
    max-width: 1200px;
    margin: 0 auto;
    text-align: left;
    background-color: #2e2822;
    padding: 2px 2px 2px 10px;
    box-sizing: border-box;
    color: #fff;
    font-size: 27px;
    transition-duration: 0.4s;
}

.soloinshead:hover {
    background-color: #776f68;
}

.soloinshead .soloinsicon {
    vertical-align: middle;
    width: 50px;
    height: auto;
}

.soloinsta {
    width: 90%;
    margin: 0 auto;
    max-width: 1200px;
    background-color: #fff;
    overflow-x: hidden;
    overflow-y: scroll;
    height: 500px;
}

@media (max-width: 768px) {
    .solosns {
        background: none !important;
    }
}


/*20210317 ry touch*/

.newinsta #sb_instagram {
    height: auto !important;
    margin-top: 10px !important;
}

.color_6 {
    color: #666;
}

.color_red {
    color: #f00;
}

.font-small {
    font-size: 87.5%;
    margin: 1rem 0;
}

.font-large {
    font-size: 125%;
    margin: 1rem 0;
}

.blog_post .font-title-h3,
.blog_post .font-title-h4,
.blog_post .font-title-h5 {
    font-weight: 600;
    margin: 1.5em 0 1em;
    color: #434343;
}

.blog_post .font-title-h3 + br,
.blog_post .font-title-h4 + br,
.blog_post .font-title-h5 + br {
    display: none;
}

.blog_post .font-title-h3 {
    font-size: 24px;
    line-height: 1.25;
    padding-left: 8px;
    border-left: 7px solid #786958;
}

.blog_post .font-title-h4 {
    font-size: 20px;
    padding-bottom: 2px;
    border-bottom: 2px solid #786958;
}

.blog_post .font-title-h5 {
    font-size: 16px;
    padding-bottom: 2px;
    border-bottom: 1px dotted #444;
}

.section_content_l {
    width: 1160px;
    margin: 45px auto;
}

.section_content_m {
    width: 1015px;
    margin: 45px auto;
}

.section_content_s {
    width: 800px;
    margin: 45px auto;
}

.header_flex {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    padding: 13.5% 0;
    background: transparent url("../img/faq/header.jpg") center top no-repeat;
    background-size: cover;

    -webkit-box-align: center;

    -ms-flex-align: center;

    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}

.header_flex .banner_text_staff {
    top: auto;
    left: auto;
    margin: auto;
}

.row_title_full {
    font-size: 28px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    -webkit-box-align: center;

    -ms-flex-align: center;

    align-items: center;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
}

.row_title_full span:first-of-type,
.row_title_full span:last-of-type {
    width: 100%;
    min-height: 1px;
    border-top: 1px solid #434343;

    -ms-flex-preferred-size: calc(50% - 105px);

    flex-basis: calc(50% - 105px);
}

.row_title_full span:nth-of-type(2) {
    text-align: center;

    -ms-flex-preferred-size: 210px;

    flex-basis: 210px;
}

.row_title_full.-beforeafter span:nth-of-type(2) {
    -ms-flex-preferred-size: 540px;
    flex-basis: 540px;
}

.row_title_full.-product span:nth-of-type(2) {
    -ms-flex-preferred-size: 460px;
    flex-basis: 460px;
}

.block_tag {
    margin: 20px 0 50px;
}

.keyword_text {
    width: 265px;
    padding: 0 5px;
    border: 1px solid #434343;
}

.keyword_text:focus::-webkit-input-placeholder {
    color: transparent;
}

.keyword_text:focus:-ms-input-placeholder {
    color: transparent;
}

.keyword_text:focus::-ms-input-placeholder {
    color: transparent;
}

.keyword_text:focus::placeholder {
    color: transparent;
}

.section_top_menu .menu_list li .content.border::before {
    position: absolute;
    z-index: -1;
    right: 0;
    bottom: 0;
    display: block;
    width: 1px;
    height: 100%;
    content: '';
    border-right: 1px solid #e7e7ef;
}

.section_top_menu .menu_list li .text {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}

.section_top_menu .menu_list li .text p {
    line-height: 1.6;
}

.ls_faq {
    margin: auto 10px;
}

.ls_faq .content {
    margin-top: 15px;
    padding: 15px 40px;
    background-color: #f0f0f0;
}

.ls_faq .ttl {
    position: relative;
    display: block;
    cursor: pointer;
}

.ls_faq .ttl::after {
    position: absolute;
    top: 40%;
    right: 0;
    display: inline-block;
    width: 12px;
    height: 12px;
    content: '';
    -webkit-transition: 0.3s;
    -o-transition: 0.3s;
    transition: 0.3s;
    background: url("../img/faq/arrow_faq.svg") 0 0 no-repeat;
}

.ls_faq .ttl.open::after {
    -webkit-transform: rotate(-180deg);
    -ms-transform: rotate(-180deg);
    transform: rotate(-180deg);
    -webkit-transform-origin: 50% 30%;
    -ms-transform-origin: 50% 30%;
    transform-origin: 50% 30%;
}

.ls_faq dd {
    display: none;
    margin-top: 10px;
}

.ls_faq .answer {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    color: #da4d3c;
}

.page_sns {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin-top: 50px;
    padding: 0;

    -webkit-box-pack: end;

    -ms-flex-pack: end;

    justify-content: flex-end;
}

.block_tag {
    width: 940px;
    margin: 30px auto;
}

.form_item {
    display: inline-block;
    margin-bottom: 20px;
}

.form_item:not(:last-of-type) {
    margin-right: 40px;
}

.tag_sex {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin-bottom: 30px;

    -webkit-box-pack: center;

    -ms-flex-pack: center;

    justify-content: center;
}

.tag_sex .form_item {
    font-size: 19px;
    margin: 0 15px;
}

.tag_sex .checkbox_parts {
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    width: 145px;
    height: 45px;
    padding-left: 0;
    cursor: pointer;
    color: #fff;

    -webkit-box-pack: center;

    -ms-flex-pack: center;

    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

.tag_sex .checkbox_parts span {
    position: relative;
    z-index: 1;
}

.tag_sex .checkbox_parts::before {
    position: absolute;
    z-index: 0;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    content: '';
    border: 0;
    border-radius: 4px;
    background-color: #bcb8b4;
}

.tag_sex .checkbox:checked + .checkbox_parts::before {
    position: absolute;
    top: 0;
    left: 0;
    display: inline-block;
    content: '';
    background-color: #b4966f;
}

.tag_sex input[value='mens']:checked + .checkbox_parts::before {
    background-color: #4db8dc;
}

.tag_sex input[value='ladys']:checked + .checkbox_parts::before {
    background-color: #ff80b4;
}

.checkbox {
    display: none;
}

.checkbox_parts {
    position: relative;
    padding-left: 20px;
}

.checkbox_parts:before {
    position: absolute;
    top: 2px;
    left: 0;
    display: block;
    width: 10px;
    height: 10px;
    content: '';
    border: 1px solid #000;
}

.checkbox:checked + .checkbox_parts:before {
    color: #000;
    background-color: #000;
}

.tag_search_button {
    margin: 30px auto 60px;
    text-align: center;
}

.tag_search_button .keyword_text {
    height: 32px;
}

.tag_search_button .button_submit {
    font-size: 16px;
    width: 128px;
    height: 35px;
    margin-left: 1em;
    letter-spacing: 4px;
    color: #fff;
    border: 0;
    border-radius: 0;
    background-color: #000;
}

.tag_search_button.-beforeafter button {
    display: block;
    margin: 20px auto;
}

.banner {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin: 0 -5px;

    -webkit-box-orient: horizontal;

    -webkit-box-direction: normal;

    -ms-flex-flow: row wrap;

    flex-flow: row wrap;
    -webkit-box-align: flex-top;
    -ms-flex-align: flex-top;
    align-items: flex-top;
}

.banner li {
    position: relative;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    margin: 5px;
    text-align: center;
    border: 1px solid #666;

    -ms-flex-preferred-size: calc(100% / 3 - 10px);

    flex-basis: calc(100% / 3 - 10px);
}

.banner li a {
    display: block;
}

.banner li img {
    max-width: 100%;
}

.banner .title {
    font-size: 34px;
    margin-top: 5px;
}

.banner .desc {
    margin-bottom: 10px;
}

.banner .large {
    text-align: left;

    -ms-flex-preferred-size: calc(100% / 3 * 2 - 10px);

    flex-basis: calc(100% / 3 * 2 - 10px);
}

.banner .large img {
    width: calc(50% - 10px);
    vertical-align: middle;
}

.banner .large .content {
    position: absolute;
    top: 50%;
    left: calc(75% - 70px);
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
    text-align: center;
}

.banner .large2 {
    display: none;
}

.banner .large2 img {
    width: 100%;
    vertical-align: middle;
}

.banner2 {
    position: relative;
    display: block;
    height: 167px;
    margin: 30px 0 40px;
    border: 1px solid #000;
}

.banner2 .content {
    position: relative;
    padding: 30px;
}

.banner2 .title {
    font-size: 40px;
    position: relative;
    display: inline-block;
    margin-bottom: 25px;
    padding: 5px;
}

.banner2 .title::after {
    position: absolute;
    bottom: 0;
    left: 0;
    display: block;
    width: 100%;
    height: 2px;
    content: '';
    border-top: 2px solid #000;
}

.banner2 .image {
    position: absolute;
    top: 0;
    right: 0;
    width: 221px;
}

.banner2 .image img {
    width: 100%;
}

.ls_pd,
.ls_ba {
    clear: both;
    margin: 40px auto;
}

.ls_pd .content,
.ls_ba .content {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin-bottom: 15px;
    padding: 30px 20px;
    border: 1px solid #ccc;
}

.ls_pd .image,
.ls_ba .image {
    -ms-flex-preferred-size: 382px;
    flex-basis: 382px;
}

.ls_pd .image img,
.ls_ba .image img {
    width: 100%;
    height: auto;
}

.ls_pd .text,
.ls_ba .text {
    margin-left: auto;

    -ms-flex-preferred-size: calc(100% - 402px);

    flex-basis: calc(100% - 402px);
}

.ls_pd .ttl,
.ls_ba .ttl {
    font-size: 32px;
    font-weight: bold;
    margin: 20px 0;
}

.ls_pd .ecpt,
.ls_ba .ecpt {
    font-size: 18px;
}

.post_content .ttl {
    font-size: 31px;
    font-weight: bold;
    padding-top: 10px;
    text-align: center;
    border-bottom: 1px solid #000;
}

.post_content time {
    font-size: 12px;
    display: block;
    margin: 10px 0 15px;
    text-align: right;
}

.post_content img {
    margin: 35px 0;
}

.post_content iframe {
    margin: 40px 0;
}

.post_content.-ba .image {
    font-size: 0;
    margin: 30px -1.5% 50px;
}

.post_content.-ba .image img {
    display: inline-block;
    width: 30.33%;
    height: auto;
    margin: 0 1.5%;
    vertical-align: bottom;
}

.post_content.-ba p {
    line-height: 1.72222;
    margin-bottom: 100px;
}

.ls_ba .image {
    font-size: 0;

    -ms-flex-preferred-size: 522px;

    flex-basis: 522px;
}

.ls_ba .image img {
    width: 248px;
    height: auto;
}

.ls_ba .image img:first-of-type {
    margin-right: 20px;
}

.ls_ba .text {
    -ms-flex-preferred-size: calc(100% - 542px);
    flex-basis: calc(100% - 542px);
}

.ttl_gray {
    font-size: 22px;
    line-height: 1;
    padding: 24px;
    text-align: center;
    background-color: #e6e6e6;
}

.row.-ba {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin: 0 -40px;
}

.row.-ba .col6 {
    padding: 0 40px;
    text-align: center;

    -ms-flex-preferred-size: 50%;

    flex-basis: 50%;
}

.row.-ba .col6 img {
    width: 100%;
}

.row.-ba .ttl_gray {
    position: relative;
}

.row.-ba .ttl_gray::before {
    position: absolute;
    top: 0;
    left: 0;
    width: 0;
    height: 0;
    content: '';
    border-width: 35px 0 35px 20px;
    border-style: solid;
    border-color: transparent transparent transparent #fff;
}

.row.-ba .ttl_gray::after {
    position: absolute;
    top: 0;
    right: 0;
    width: 0;
    height: 0;
    content: '';
    border-width: 35px 0 35px 20px;
    border-style: solid;
    border-color: #fff transparent #fff;
}

.link_shop {
    display: block;
    margin-bottom: 10px;
    text-align: right;
    text-decoration: underline;
}

.link_shop_border {
    display: inline-block;
    float: right;
    margin-top: 10px;
    margin-bottom: 40px;
    padding: 4px 30px;
    border: 1px solid #000;
}

.link_black {
    font-size: 22px;
    display: block;
    width: 380px;
    margin: 10px auto 50px;
    padding: 6px 0;
    text-align: center;
    letter-spacing: 0.34em;
    color: #fff;
    background-color: #000;
}

.block_staff {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin-top: 20px;
}

.block_staff .image {
    position: relative;
    margin-right: 60px;
    padding-left: 15px;
}

.block_staff .image > img {
    width: 222px;
    height: auto;
}

.block_staff .flag {
    position: absolute;
    top: 190px;
    left: 0;
}

.block_staff .content.-sp {
    display: none;
}

.block_staff .ft_mincho {
    font-size: 40px;
}

.block_staff .link_store {
    font-size: 18px;
    font-weight: bold;
    margin-right: 12px;
    text-decoration: underline;
}

.block_staff .position {
    font-size: 18px;
}

.block_staff .sns {
    margin: 15px 0;
}

.block_staff .comment {
    font-size: 20px;
}

.block_staff .link_shop_border {
    font-size: 22px;
    float: none;
}

.block_staff .link_shop_border:nth-of-type(3) {
    margin-left: 15px;
}

.-boforeafter .link_shop_border:nth-of-type(3) {
    display: none;
}

.detail_gallery.-beforeafter .gallery_title .btn {
    margin-top: -10px !important;
}

.kouz_gr_new {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin: 40px 0 0;

    -webkit-box-pack: justify;

    -ms-flex-pack: justify;

    justify-content: space-between;
}

.kouz_new_wrap {
    width: 480px;
}

.kouz_new_wrap > .tit {
    line-height: 1.4em;
    margin-bottom: 20px;
}

.kouz_new {
    width: 100%;
    margin-top: 0;
    margin-bottom: 15px;
    border: 0;
}

.kouz_new .head .tit {
    font-size: 18px;
    font-weight: bold;
    line-height: 1.2em;
    float: left;
}

.kouz_new .head .more {
    line-height: 1em;
    float: right;
    margin: 3px 0 0 span;

    margin-border-bottom: 1px solid #434343;
    margin-display: inline-block;
    margin-margin: 0 2px;
}

.kouz_new:not(:last-of-type) .ul_news01 {
    border-bottom: 1px dotted #252526;
}

.kouz_new .ul_news01 {
    margin: 0;
    padding: 3px 5px;
    border: 0;
}

.kouz_new .ul_news01 > li {
    padding: 8px 6px 10px;
    background: url("../_components/img/salon/kouzu/k_line01.png") repeat-x 0 bottom;
}

.kouz_new .ul_news01 .p_img {
    float: left;
    width: 51px;
}

.kouz_new .ul_news01 .p_img img {
    display: block;
    width: 100%;
    height: 100%;
}

.kouz_new .ul_news01 .info {
    margin: 0 0 0 70px;
}

.kouz_new .ul_news01 .name {
    margin: 5px 0 0;
    text-decoration: underline;
}

.kouz_new .ul_news01.noimage .info {
    margin-left: 0;
}

.-hairinfo .lead {
    font-size: 21px;
    margin: 80px 0;
    text-align: center;
}

.-hairinfo .banner li {
    margin-bottom: 50px;

    -ms-flex-preferred-size: 46%;

    flex-basis: 46%;
}

.-hairinfo .banner li:nth-of-type(3),
.-hairinfo .banner li:nth-of-type(5) {
    margin-left: auto;
}

.-hairinfo .banner li .content {
    padding: 0 1.2em 1em;
}

.-hairinfo .banner li .content p {
    font-size: 90%;
}

.-hairinfo .banner .large {
    -ms-flex-preferred-size: 100%;
    flex-basis: 100%;
}

.-hairinfo .banner .large .content {
    left: calc(50% + 132px);
    max-width: 250px;
    padding: 0;
}

.-hairinfo .banner .large2 {
    /*display: none;*/
}

.catlog_navi-salon {
    left: 50% !important;
    -webkit-transform: translateX(-50%) !important;
    -ms-transform: translateX(-50%) !important;
    transform: translateX(-50%) !important;
}

.sec_map iframe {
    width: 100%;
    height: 100%;
    min-height: 300px;
}

.section_menu_content .menu a {
    text-decoration: underline;
}

.section_menu_content .menu a:hover {
    opacity: 0.8;
}

input:disabled:hover {
    opacity: 1;
}

.wpcf7-acceptance span.wpcf7-list-item {
    margin-left: 0;
}

.form_buttons {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    -webkit-box-align: center;

    -ms-flex-align: center;

    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}

.banner_caredry {
    float: right;
    margin-top: 20px;
    text-align: right;
}

.banner_caredry a:hover {
    opacity: 0.7;
}

.banner_caredry img {
    margin-top: 10px;
}

.banner_caredry + .menu_btn {
    margin-top: 60px;
}

.page_header {
    margin-bottom: 40px;
    padding: 40px 0 0;
    text-align: center;
}

.page_title {
    font-size: 30px;
    line-height: 1em;
}

.page_title span {
    line-height: 1.2;
    position: relative;
    display: block;
    margin-bottom: 10px;
    padding: 15px 0;
}

.page_title span::after {
    position: absolute;
    bottom: 5px;
    left: 50%;
    display: block;
    width: 50px;
    margin-left: -25px;
    content: '';
    border-bottom: 1px solid #000;
}

.page_title small {
    font-size: 12px;
    line-height: 1em;
    display: block;
    text-transform: uppercase;
}

.page_title br {
    display: none;
}

.section_staff_list,
.section_blog,
.section_coupon {
    margin-top: 50px;
    padding-top: 0;
}

.section_salon_point {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    float: none;
    clear: both;
    margin: 84px -7px 60px;

    -ms-flex-wrap: wrap;

    flex-wrap: wrap;
}

.section_salon_point > li,
.section_salon_point li:first-child {
    float: none;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    width: 100%;
    min-height: 0;
    margin: 7px;

    -ms-flex-preferred-size: calc(33.33% - 14px);

    flex-basis: calc(33.33% - 14px);
}

.section_salon_point .name_point {
    white-space: normal;
}

.trans {
    display: block;
}

.trans.d-ib {
    display: inline-block;
}

.inner_about .kouz_about .des,
.kouz_point .decs,
.kouz_access .ul_access .car {
    text-align: justify;
}

.kouz_access .ls_data > li.clearfix {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
}

.kouz_access .ls_data li .lbl {
    float: none;
    width: 150px;

    -webkit-box-flex: 1;

    -ms-flex: 1 0 152px;

    flex: 1 0 152px;
}

.kouz_access .ls_data li .lbl span {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    height: 100%;
    padding: 0.8em 0.5em;
}

.kouz_access .ls_data li .ctn {
    float: none;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    width: auto;
    padding: 0.5em 0 0.5em 1em;

    -webkit-box-flex: 1;

    -ms-flex: 1 0 320px;

    flex: 1 0 320px;
}

.voice-more {
    font-size: 16px;
    line-height: 1.3em;
    display: block;
    width: 200px;
    margin: 0 auto;
    padding: 6px 0;
    text-align: center;
    color: #fff;
    border-radius: 4px;
    background: #2e2822;
}

.section_eyelash .banner_title {
    color: #666;
}

.section_menu .menu .price-example {
    font-size: 80%;
    font-weight: normal;
    line-height: 1.4;
    margin-top: 2em;
    text-align: left;
}

.section_menu .menu li .price .pr_all {
    padding: 20px 14px 20px 0;
}

.menu_note_box {
    font-weight: bold;
    margin: 2em 0 1em;
    padding: 1em;
    text-align: center;
    border: 1px solid black;
}

.menu_note_box-2 {
    margin: 1em 0;
}

.menu_note_box-2 dt {
    font-weight: bold;
    margin-top: 1em;
}

.menu_attention {
    margin: 1em 0;
}

.menu_attention ul {
    margin-left: 1.3em;
    list-style: outside;
    list-style-type: disc;
}

.menu_attention a {
    text-decoration: underline;
}

.menu_attention a:hover {
    opacity: 0.8;
}

.section_menu .font-small {
    font-size: 90%;
    line-height: 1.4;
    margin: 5px 0;
}

.menu_btn_wrap {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin: 0 -10px;
}

.menu_btn_wrap .menu_btn {
    padding: 0 10px;
}

.shop-banner ul {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin: 0 -10px;
}

.shop-banner__item {
    padding: 0 10px;

    -ms-flex-preferred-size: 50%;

    flex-basis: 50%;
}

.shop-banner__item img {
    width: 100%;
}

.shop-banner__item a:hover img {
    opacity: 0.8;
}

.improve-image-area img {
    width: 100%;
    height: auto;
}

.improve-image-area .improve-button {
    font-size: 14px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    width: 100%;
    padding: 10px;
    color: #786858;
    border: 0;
    border: 1px solid #786858;
    border-radius: 0.3em;
    background-color: #fff;

    -webkit-box-align: center;

    -ms-flex-align: center;

    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}

.improve-image-area .improve-button::after {
    font-size: 1.5rem;
    line-height: 40px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    width: 40px;
    height: 40px;
    margin-left: 1em;
    padding: 0;
    content: '＋';
    color: #fff;
    border-radius: 50%;
    background-color: #786858;

    -ms-flex-negative: 0;

    flex-shrink: 0;
}

.improve-image-area .improve-button.open::after {
    content: 'ー';
}

.improve-image-area .pc {
    display: block;
}

.improve-image-area .sp {
    display: none;
}

.improve-image-area .improve-content {
    margin-top: 15px;
}

#instagram-gallery {
    width: 100%;
}

.instagram-header {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    width: 100%;
    text-decoration: none;
    color: white;
    background-color: #285989;

    -webkit-box-align: center;

    -ms-flex-align: center;

    align-items: center;
}

.instagram-header-pic {
    width: 38px;
}

.instagram-header-name {
    font-size: 14px;
    font-weight: bold;
    margin-left: 14px;
    white-space: nowrap;
    text-transform: uppercase;
    -o-text-overflow: ellipsis;
    text-overflow: ellipsis;
}

.instagram-header-logo {
    width: 29px;
    margin-right: 4px;
    margin-left: auto;
}

.instagram-header-logo img {
    width: 100%;
    vertical-align: bottom;
}

.instagram-panel {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    width: 100%;
    padding: 10px 5px;
    -webkit-box-shadow: 0 1px 0 0 rgba(0, 0, 0, 0.05);
    box-shadow: 0 1px 0 0 rgba(0, 0, 0, 0.05);

    -webkit-box-align: center;

    -ms-flex-align: center;

    align-items: center;
}

.instagram-panel-counter {
    text-align: center;
}

.instagram-panel-counter-value {
    font-size: 12px;
    font-weight: 700;
    font-style: normal;
    display: block;
}

.instagram-panel-counter-label {
    font-size: 12px;
    display: block;
    overflow: hidden;
    width: 50px;
    margin-top: 2px;
    white-space: nowrap;
    -o-text-overflow: ellipsis;
    text-overflow: ellipsis;
    color: #727272;
}

a.instagram-panel-subscribe {
    font-size: 12px;
    margin-left: auto;
    padding: 6px 10px;
    text-decoration: none;
    color: #fff;
    border-radius: 3px;
    background-color: #285989;
    -webkit-box-shadow: inset 0 0 100px rgba(255, 255, 255, 0);
    box-shadow: inset 0 0 100px rgba(255, 255, 255, 0);
}

.instagram-feed {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    padding: 5px;

    -webkit-box-flex: 1;

    -ms-flex: 1 1 50%;

    flex: 1 1 50%;
}

.instagram-feed-wrap {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin: 0 auto;
    padding: 0;

    -ms-flex-wrap: wrap;

    flex-wrap: wrap;
}

.instagram-feed a {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    overflow: hidden;
    width: 100px;
    height: 100px;
    background-color: #fff;

    -webkit-box-align: center;

    -ms-flex-align: center;

    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}

.instagram-feed a img,
.instagram-feed a video {
    width: 100px;
    height: 100px;

    -o-object-fit: cover;

    object-fit: cover;
}

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

    /*20210423 ry touch*/

    .sptrainer {
        display: inline-block;
    }

    .pctrainer {
        display: none;
    }

    .newsv {
        display: inherit;
    }

    .sec-pv {
        max-width: 800px;
        text-align: center;
        margin: 20px 0 100px;
        position: relative;
        padding-bottom: 56.25%;
        /*アスペクト比 16:9の場合の縦幅*/
        height: 0;
        overflow: hidden;
    }

    .sec-pv iframe {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
    }

    .section_content_l {
        -webkit-box-sizing: border-box;
        box-sizing: border-box;
        width: 100%;
        padding: 0 15px;
    }

    .section_content_m {
        -webkit-box-sizing: border-box;
        box-sizing: border-box;
        width: 100%;
        padding: 0 15px;
    }

    .section_content_s {
        -webkit-box-sizing: border-box;
        box-sizing: border-box;
        width: 100%;
        padding: 0 15px;
    }

    .header_flex {
        margin-top: 45px;
    }

    .row_title_full {
        font-size: 18px;
        margin: 20px -15px auto;
    }

    .row_title_full span:first-of-type,
    .row_title_full span:last-of-type {
        -ms-flex-preferred-size: calc(50% - 110px);
        flex-basis: calc(50% - 110px);
    }

    .row_title_full span:nth-of-type(2) {
        -ms-flex-preferred-size: 110px;
        flex-basis: 110px;
    }

    .row_title_full.-spborder {
        margin-right: 0;
        margin-left: 0;
        border-bottom: 1px solid #000;
    }

    .row_title_full.-spborder span:first-of-type,
    .row_title_full.-spborder span:last-of-type {
        display: none;
    }

    .keyword_text {
        width: 250px;
    }

    .section_top_content .news .title {
        font-size: 0.95em;
    }

    .section_top_content .news .list {
        font-size: 0.75em;
    }

    .section_top_content .news .list li {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
    }

    .section_top_content .news .list li .cat {
        margin-right: 15px;

        -ms-flex-preferred-size: 15em;

        flex-basis: 15em;
    }

    .section_top_content .news .list li .ctn {
        margin-left: 0;
    }

    .section_top_content .news .list li .ctn a {
        width: 100%;
    }

    .section_top_menu .menu_list li .content {
        position: relative !important;
    }

    .section_top_menu .menu_list li .text p {
        font-size: 90%;
        padding: 0 12px 15px;
    }

    .section_top_menu .menu_list li .text p br {
        display: none;
    }

    .ls_faq {
        margin: 0;
    }

    .ls_faq .content {
        padding: 20px 15px;
    }

    .page_sns {
        display: none;
    }

    .block_tag {
        width: 93.75%;
        margin: 15px auto;
    }

    .form_item {
        font-size: 15px;
        margin-bottom: 15px;
    }

    .form_item:not(:last-of-type) {
        margin-right: 30px;
    }

    .tag_sex .form_item {
        margin: 0;
    }

    .tag_sex .form_item:not(:last-of-type) {
        margin-right: 10px;
    }

    .tag_sex .checkbox_parts {
        font-size: 12px;
        width: 82px;
        height: 30px;
        padding: 5px 0;
    }

    .tag_other {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;

        -webkit-box-orient: horizontal;

        -webkit-box-direction: normal;

        -ms-flex-flow: row wrap;

        flex-flow: row wrap;
    }

    .tag_search_button .button_submit {
        margin: 20px auto;
    }

    .banner li {
        -ms-flex-preferred-size: calc(50% - 10px);
        flex-basis: calc(50% - 10px);
    }

    .banner .title {
        font-size: 17px;
        margin-bottom: 3px;
    }

    .banner .desc {
        font-size: 10px;
    }

    .banner .large {
        -ms-flex-preferred-size: 100%;
        flex-basis: 100%;
    }

    .banner .large .content {
        left: calc(75% - 45px);
    }

    .banner .large2 {
        display: block;

        -ms-flex-preferred-size: 100%;

        flex-basis: 100%;
    }

    .banner2 {
        height: 84px;
        margin: 20px;
    }

    .banner2 .content {
        font-size: 10px;
        padding: 8px 10px;
    }

    .banner2 .title {
        font-size: 20px;
        margin-bottom: 6px;
    }

    .banner2 .image {
        width: 111px;
    }

    .ls_pd,
    .ls_ba {
        margin: 15px auto;
    }

    .ls_pd .content,
    .ls_ba .content {
        display: block;
        padding: 20px 15px 10px;
    }

    .ls_pd .image,
    .ls_ba .image {
        width: 100%;
    }

    .ls_pd time,
    .ls_ba time {
        display: none;
    }

    .ls_pd .ttl,
    .ls_ba .ttl {
        font-size: 20px;
        margin: 0;
    }

    .ls_pd p,
    .ls_ba p {
        display: none;
    }

    .post_content .ttl {
        font-size: 20px;
        padding-top: 0;
    }

    .post_content img {
        max-width: 100%;
        height: auto;
    }

    .post_content iframe {
        max-width: 100%;
    }

    .post_content.-ba .image {
        margin: 15px 0 0;
    }

    .post_content.-ba .image img {
        width: 100%;
        margin: 0;
        margin-bottom: 15px;
    }

    .post_content.-ba p {
        font-size: 12px;
        margin-bottom: 40px;
    }

    .ls_ba .image img {
        width: calc(50% - 5px);
    }

    .ls_ba .image img:first-of-type {
        margin-right: 10px;
    }

    .ttl_gray {
        font-size: 20px;
        padding: 8px 0;
    }

    .row.-ba {
        margin: 0 -5px;
    }

    .row.-ba .col6 {
        padding: 0 5px;
    }

    .row.-ba .col6 img {
        margin: 15px 0;
    }

    .row.-ba .ttl_gray {
        font-size: 12px;
    }

    .row.-ba .ttl_gray::before {
        border-width: 14px 0 14px 7px;
    }

    .row.-ba .ttl_gray::after {
        border-width: 14px 0 14px 7px;
    }

    .link_shop {
        font-size: 10px;
        margin-bottom: 5px;
    }

    .link_shop:last-of-type {
        margin-bottom: 20px;
    }

    .link_shop_border {
        display: block;
        float: none;
        width: 180px;
        margin-right: auto;
        margin-bottom: 20px;
        margin-left: auto;
        padding: 4px 0;
        text-align: center;
    }

    .link_black {
        font-size: 20px;
        display: block;
        width: 250px;
        margin: 0 auto 40px;
        padding: 0;
        text-align: center;
    }

    .block_staff {
        display: block;
        width: 94%;
        margin: 20px auto 10px;
    }

    .block_staff .image {
        float: left;
        margin-right: 15px;
        padding-left: 0;
    }

    .block_staff .image > img {
        width: 90px;
    }

    .block_staff .flag {
        top: 68px;
        left: -8px;
    }

    .block_staff .flag img {
        width: 75px;
    }

    .block_staff .content.-pc .ft_mincho,
    .block_staff .content.-pc .link_store,
    .block_staff .content.-pc .position,
    .block_staff .content.-pc .sns {
        display: none;
    }

    .block_staff .content.-sp {
        display: block;
    }

    .block_staff .ft_mincho {
        font-size: 28px;
    }

    .block_staff .link_store {
        font-size: 16px;
    }

    .block_staff .position {
        font-size: 16px;
    }

    .block_staff .sns {
        margin: 10px 0;
    }

    .block_staff .sns img {
        width: 26px;
    }

    .block_staff .comment {
        font-size: 18px;
        clear: both;
    }

    .block_staff .link_shop_border {
        font-size: 20px;
        display: block;
        width: 250px;
        margin: 10px auto;
        padding: 0;
        text-align: center;
    }

    .block_staff .link_shop_border:nth-of-type(3) {
        margin-left: auto;
    }

    .detail_gallery.-beforeafter {
        margin-top: 40px;
    }

    .detail_gallery.-beforeafter .gallery_title .btn {
        margin-top: 0 !important;
    }

    .kouz_gr_new {
        display: block;
    }

    .kouz_new_wrap {
        width: auto;
    }

    .kouz_new_wrap > .tit {
        font-size: 1.5em;
        margin-top: 40px;
    }

    .kouz_new {
        float: none;
        width: 100%;
    }

    .-hairinfo .lead {
        font-size: 15px;
        margin: 40px 0;
    }

    .-hairinfo .banner {
        display: block;
    }

    .-hairinfo .banner li {
        margin-bottom: 20px;
    }

    .-hairinfo .banner li .content p {
        font-size: 80%;
    }

    .-hairinfo .banner .large .image {
        overflow: hidden;
        height: 0;
        margin-bottom: 10px;
        padding-bottom: 58.67419%;
    }

    .-hairinfo .banner .large .image img {
        width: 100%;
        -webkit-transform: translateY(-22%);
        -ms-transform: translateY(-22%);
        transform: translateY(-22%);
    }

    .-hairinfo .banner .large .content {
        position: relative;
        top: 0;
        left: 0;
        max-width: 100%;
        margin-right: 0;
        padding: 0 1.2em 1em;
        -webkit-transform: none;
        -ms-transform: none;
        transform: none;
    }

    .section_staff_detail .detail_gallery .gallery_title .txt {
        font-size: 22px;
        padding-top: 2px;
    }

    .section_staff_detail .detail_gallery .gallery_title .btn {
        font-size: 13px;
    }

    .banner_caredry {
        margin-bottom: 10px;
        text-align: center;
    }

    .page_header {
        padding: 80px 0 0;
    }

    .page_title br {
        display: inline-block;
    }

    .section_salon_point {
        display: block;
        margin: 30px 0 0;
    }

    .section_salon_point > li,
    .section_salon_point li:first-child {
        margin: 10px 0;
    }

    .section_eyelash .banner_title .dsc {
        font-size: 1rem;
    }

    .shop-banner ul {
        margin: 20px -10px;
    }

    .improve-image-area .pc {
        display: none;
    }

    .improve-image-area .sp {
        display: block;
    }

    .improve-image-area .sp .improve-content {
        display: none;
    }
}

@media only screen and (min-width: 769px) {
    .section_top_menu .menu_list li .text {
        position: absolute;
        bottom: 0;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        width: 100%;
        min-height: 100px;
        background-color: #fff;

        -webkit-box-pack: center;

        -ms-flex-pack: center;

        justify-content: center;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
    }

    .banner2 .content br {
        display: none;
    }

    .-hairinfo .lead br {
        display: none;
    }
}

@media only screen and (max-width: 640px) {
    .page_title {
        font-size: 1.5em;
    }

    .page_title small {
        font-size: 0.55em;
    }
}

@media (max-width: 768px) {
    .kouz_access .ls_data > li.clearfix {
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    }

    .kouz_access .ls_data li .lbl {
        width: 100%;

        -webkit-box-flex: 1;

        -ms-flex: 1 0 100%;

        flex: 1 0 100%;
    }

    .kouz_access .ls_data li .ctn {
        padding: 0.5em 1em;

        -webkit-box-flex: 1;

        -ms-flex: 1 0 100%;

        flex: 1 0 100%;
    }
}
