@charset "utf-8";

@media screen and (max-width: 768px) and (orientation: portrait) {

body {
    -webkit-text-size-adjust: 100%;
    min-width: initial;
    height: auto;
    padding-top: 78px;
}
.inner {
    max-width: initial;
    margin: 0 auto;
}

header {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    z-index: 1000;
}
header .inner {
    display: block;
}

header .logo {
    padding: 5px;
}
header .logo img {
		display: block;
    height: 30px;
    margin: 0 auto;
}

header .util {
    width: 100%;
}

header .util ul li {
    width: 25%;
    font-size: 10px;
}
header .util ul li a {
    padding: 1em 0;
}



footer {
		height: 200px;
    padding: 1em;
    background-position: right 27% bottom;
    background-size: cover;
}
.footer_menu {
    display: none;
}
.footer_right {
    width: 100%;
}
.footer_right .logo {
    width: 50%;
    margin: 0 auto 1em;
}
.footer_right .copyright {
    text-align: center;
}
.footer_right .copyright .copy {
    font-size: 12px;
}























.mv {
		background: url(../images/bg_mv_sp.jpg) no-repeat center bottom;
    background-size: cover;
    height: calc(100vh - 78px);
    padding: 1em;
    margin-bottom: 0;
}
.mv .inner {
    height: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -ms-flex-wrap: wrap;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
}

.mv_bloc p {
		font-size: 18px;
}
.mv_bloc figure {
    padding: 1em 5em;
    margin: 1em 0;
}
.mv_bloc h1 {
    font-size: 32px;
}

.top_box {
    padding: 1em;
}
.top_box .title_bloc {
    padding-bottom: 0.5em;
}
.top_box .title_bloc h2 .jp {
    font-size: 32px;
}

.top_about .top_box .title_bloc {
    background-size: contain;
}
.top_pickup .top_box .title_bloc {
    background-size: contain;
}
.top_service .top_box .title_bloc {
    background-size: contain;
}


.top_about {
    margin-bottom: 0;
}
.top_about:before {
		display:none;
}
.top_about .top_box {
    background: #55256e;
    width: 100%;
    box-sizing: border-box;
    margin-top: 0;
}
.top_box .detail p {
    font-size: 14px;
    line-height: 1.4em;
}
.top_about figure {
    width: 100%;
    margin: 0;
}



.top_pickup {
    margin-bottom: 0;
}
.top_pickup .top_box {
    width: 100%;
    box-sizing: border-box;
    margin: 0;
    padding: 1em;
}
.top_pickup .top_box .detail p.catch_text {
    display: block;
    font-size: 18px;
}
.top_pickup .top_box .detail h3 {
    font-size: 24px;
}
.top_pickup figure {
    width: 100%;
}


.top_trouble {
		padding: 2em 1em 1em;
}
.top_trouble h2 {
    margin-bottom: 1em;
}
.top_trouble h2 .sub {
    font-size: 16px;
}
.top_trouble h2 .main {
    font-size: 24px;
}

.trouble_detail {
    margin-bottom: 1em;
}

.trouble_arrow p {
    font-size: 21px;
}
.trouble_arrow figure {
    display: block;
    width: 50%;
    margin: 0 auto;
}

.trouble_list ul {
    display: block;
    padding: 1em;
}
.trouble_list ul li .num {
    width: 16px;
}
.trouble_list ul li .text {
    font-size: 15px;
}

.trouble_result .catch p {
    font-size: 18px;
}

.trouble_result h3 {
    margin-bottom: 1em;
}
.trouble_result h3 .title {
    font-size: 18px;
}
.trouble_result h3 .title em {
    font-size: 20px;
}
.trouble_result h3 figure {
    flex: 1 0 0%;
}

.trouble_result ul li {
    display: block;
}
.trouble_result ul li .num {
    display: block;
    width: 50px;
    margin: 0 auto;
}
.trouble_result ul li + li {
    margin-top: 1em;
}
.trouble_result ul li .text {
    font-size: 21px;
    margin-left: 0;
}


.top_salon {
    padding: 1em;
}
.top_salon h2 .sub {
    display: block;
    width: 50%;
    margin: 0 auto;
}
.top_salon h2 .main {
    font-size: 21px;
}
.top_salon h2 {
    margin-bottom: 1em;
}
.salon_point {
    display: block;
    margin-bottom: 1em;
}
.salon_point figure {
    margin-bottom: 1em;
}
.salon_point_bloc {
    margin: 0;
}
.salon_point_bloc ol li .num {
    font-size: 11px;
}
.salon_point_bloc ol li .text {
    font-size: 16px;
}

.salon_movie {
    margin-bottom: 1em;
}

.salon_entry .entry_bloc h3 {
    font-size: 21px;
}


.top_service {
    margin-bottom: 1em;
}
.top_service:before {
		display:none;
}
.top_service .top_box {
		background: #f5f5f5;
    padding: 1em;
    width: 100%;
    box-sizing: border-box;
    margin: 0 0 2em;
}

.service_list {
    padding: 0 1em;
}
.service_list ol li:nth-child(n+2) {
    width: 100%;
}
.service_list ol li .title_bloc h3 {
    width: 100%;
    text-align: center;
}

.service_list ol li .title_bloc.flex p {
    margin: 0;
    font-size: 14px;
}


.top_company {
    padding: 0 0 2em;
}
.top_company .inner {
    display: block;
}
.top_company_bloc {
    padding: 0 1em;
}
.top_company_bloc dl dt {
    padding: 0;
    width: 100%;
    font-size: 14px;
}
.top_company_bloc dl dd {
    width: 100%;
    margin: 0;
    padding: 0 0.5em 0.5em 0.5em;
    font-size: 15px;
    line-height: 1.4em;
}


.under_mv {
    padding: 1em;
}
.under_mv_bloc .ttl h1 {
    font-size: 24px;
}
.under_mv_bloc .ttl .en {
    font-size: 10px;
}

.under_mv_bloc ul li {
    width: 33%;
}
.under_mv_bloc p {
    font-size: 14px;
}

.under_mv_bloc .bottom {
    align-items: center;
    justify-content: center;
}
.under_mv_bloc .bottom p {
    width: 100%;
}
.under_mv_bloc .bottom p + p{
    margin-left: 0;
    margin-top: 0.5em;
}











.under_trouble {
    padding: 1em;
}
.under_trouble h2 {
    font-size: 18px;
}
.under_trouble_bloc {
    padding: 0;
}

.under_trouble_item {
    width: 100%;
    margin-top: 37px;
}
.under_trouble_item.box3 {
    width: 100%;
    margin-top: 37px;
}
.under_trouble_item .detail p {
    font-size: 15px;
}


.under_trouble_item h3 {
    font-size: 16px;
}
.under_trouble_item .detail ul li:before {
    width: 16px;
    height: 16px;
    background-size: contain;
    left: 0;
    top: 50%;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
}
.under_trouble_item .detail ul li {
    font-size: 15px;
    padding-left: 1.6em;
}

.under_cm_band_bloc {
    padding: 1em 1em 0;
    display: block;
}
.under_cm_band_bloc h2 {
    text-align: center;
    justify-content: center;
}
.under_cm_band_bloc h2 img {
		width: 40%;
}
.under_cm_band_bloc h2 .text {
    margin: 0;
    font-size: 16px;
    box-sizing: border-box;
    margin-left: 1em;
}
.under_cm_band_bloc figure {
    width: 40%;
    margin: 0 auto;
    padding: 0;
}
.under_cm_band_bloc figure img {
    margin-bottom: -2px;
}


.under_menu {
    padding: 1em;
}
.under_menu .title_bloc {
    margin-bottom: 1em;
}
.under_menu .title_bloc h2 {
    font-size: 18px;
}
.under_menu .title_bloc p {
    font-size: 14px;
}
.under_menu_bloc ul li {
    width: 100%;
}
.under_menu_bloc ul li + li {
    margin-top: 0.5em;
}
.under_menu_bloc ul li a {
    padding: 0.5em;
}
.under_menu_bloc ul li figure {
    width: 30px;
}
.under_menu_bloc ul li .detail p {
    font-size: 14px;
}
.under_menu_bloc ul li .detail p br {
		display:none;
}
.under_menu_bloc ul li .detail {
    margin-bottom: 0;
}
.under_menu_bloc ul li a:after {
    bottom: auto;
    right: 0.5em;
    left: auto;
}



























/* 事業内容コスト削減 */

.cost_reason .title_bloc {
    padding: 1em;
}
.cost_reason .title_bloc h2 {
    font-size: 21px;
    line-height: 1.4em;
}

.cost_reason_group .item {
    padding: 1em;
}
.cost_reason_group .item .detail {
		width: 100%;
    flex: none;
    margin-bottom: 1em;
}
.cost_reason_group .item .detail h3 {
    margin-bottom: 0.5em;
}
.cost_reason_group .item .detail h3 .jp {
    font-size: 24px;
}
.cost_reason_group .item .detail p {
    font-size: 13px;
    line-height: 1.4em;
}

.cost_reason_group .item figure {
    width: 100%;
    text-align: center;
}
.cost_reason_group .item figure img {
		width: 50%;
}


.cost_result_group {
    padding: 0;
}
.cost_result .title_bloc {
    padding: 1em;
}
.cost_result .title_bloc h2 {
		font-size: 18px;
    line-height: 1.4em;
}
.cost_result_group .item + .item {
    margin-top: 0;
}
.cost_result_group .item .detail {
    flex: none;
    width: 100%;
    box-sizing: border-box;
    padding: 1em;
}


.cost_result_group .item .detail h3 .num {
    font-size: 36px;
}
.cost_result_group .item .detail h3 .jp {
		display: block;
    font-size: 21px;
    line-height: 1.2em;
}
.cost_result_group .item .detail h3 {
    margin-bottom: 0.5em;
}

.cost_result_group .item figure {
    width: 100%;
    text-align: center;
}


.ma_reason_group {
    padding: 1em;
}
.ma_reason_group ul li {
		width: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -ms-flex-wrap: wrap;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
}
.ma_reason_group ul li figure {
    width: 14%;
    margin-right: 1em;
    margin-bottom: 0;
}
.ma_reason_group ul li .detail {
		flex: 1 0 0%;
}
.ma_reason_group ul li + li {
		margin-top: 1em;
    padding-top: 1em;
    border-top: solid 1px rgb(255 255 255 / 0.5);
}
.ma_reason_group ul li:nth-child(n+4) {
    margin-top: 1em;
}
.ma_reason_group ul li h3 {
    text-align: left;
    font-size: 16px;
}
.ma_reason_group ul li p {
    font-size: 13px;
}


.marketing_page {

}
.marketing_group .item .inner {
    padding: 1em;
    box-sizing: border-box;
    display: block;
}
.marketing_group .item .detail {
    width: 100%;
}
.marketing_group .item figure {
    width: 64%;
    margin: 0 auto;
}
.marketing_group .item .detail h3 .jp {
    font-size: 24px;
}
.marketing_group .item .detail p {
    font-size: 13px;
    line-height: 1.4em;
}

.marketing_group .item .detail ul li {
    font-size: 15px;
}
.marketing_group .item .detail ul li:before {
    width: 18px;
    height: 18px;
    background-size: contain;
}
.marketing_group .item .detail ul li:before {
		background-size: contain!important;
}

.marketing_forte .title_bloc {
    padding: 1em;
}
.marketing_forte .title_bloc h2 figure {
    width: 30%;
    margin: 0 auto 0.2em;
}
.marketing_forte .title_bloc h2 .title {
    display: block;
    font-size: 21px;
}
.marketing_forte_bloc {
    padding: 1em;
}
.marketing_forte_bloc ul li {
    width: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -ms-flex-wrap: wrap;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    align-items: flex-start;
    justify-content: space-between;
}
.marketing_forte_bloc ul li figure {
		width: 48px;
    margin-right: 1em;
    margin-bottom: 0;
}
.marketing_forte_bloc ul li .detail {
    flex: 1 0 0%;
    text-align: left;
}
.marketing_forte_bloc ul li .detail h3 {
    font-size: 18px;
    margin-bottom: 0.5em;
}
.marketing_forte_bloc ul li + li {
    border-top: solid 1px rgb(255 255 255 / 0.5);
    margin-top: 1em;
    padding-top: 1em;
}


.recruit_group .title_bloc {
    padding: 1em;
}
.recruit_group .title_bloc h2 {
    margin-bottom: 0.5em;
}
.recruit_group .title_bloc h2 .large_text {
    font-size: 21px;
}
.recruit_group .title_bloc h2 .text {
		font-size: 16px;
}
.recruit_group .title_bloc p {
    font-size: 14px;
}


.recruit_group .item .inner {
    padding: 1em;
    box-sizing: border-box;
    display: block;
}
.recruit_group .item .detail {
    width: 100%;
    margin-bottom: 1em;
}
.recruit_group .item figure {
    width: 64%;
    margin: 0 auto;
}
.recruit_group .item .detail h3 .jp {
    font-size: 24px;
}
.recruit_group .item .detail p {
    font-size: 13px;
    line-height: 1.4em;
}

.recruit_detail {
    padding: 1em;
}
.recruit_detail .title_bloc {
    margin-bottom: 1em;
}
.recruit_detail .title_bloc h2 {
    font-size: 18px;
}

.recruit_detail_bloc ul li {
    width: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -ms-flex-wrap: wrap;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
}
.recruit_detail_bloc ul li figure {
    width: 48px;
    margin-bottom: 0;
    margin-right: 1em;
}
.recruit_detail_bloc ul li .detail {
    flex: 1 0 0%;
}
.recruit_detail_bloc ul li .detail h3 {
		height: auto;
    font-size: 18px;
    text-align: left;
    align-items: center;
    justify-content: flex-start;
}
.recruit_detail_bloc ul li .detail h3 br {
		display:none;
}

.recruit_detail_bloc ul li .detail p {
		font-size: 14px;
    line-height: 1.4em;
    text-align: left;
}
.recruit_detail_bloc ul li + li {
    border-top: solid 1px rgb(255 255 255 / 0.5);
    margin-top: 1em;
    padding-top: 1em;
}


.recruit_preparation {
    padding: 1em;
}
.recruit_preparation .title_bloc {
    margin-bottom: 1em;
}
.recruit_preparation .title_bloc h2 {
    font-size: 21px;
    line-height: 1.2em;
}
.recruit_preparation_bloc p {
    font-size: 14px;
}
.recruit_preparation_bloc > * + * {
    margin-top: 1em;
}
.recruit_preparation_bloc ul li {
    padding-left: 2em;
    font-size: 14px;
}

.recruit_preparation_bottom h3 {
    font-size: 18px;
}
.recruit_preparation_bottom p {
    font-size: 14px;
}


.recruit_preparation_bloc p.catch {
    display: block;
    text-align: center;
}
.recruit_preparation_bloc p.catch .text {
    display: block;
    font-size: 18px;
  
    width: 50%;
    margin: 0.5em auto;
}


.cm_catch {
    padding: 1em;
}
.cm_catch h2 .logo {
    display: block;
    width: 50%;
    margin: 0 auto;
}
.cm_catch h2 .text {
    font-size: 18px;
}


.resources_trouble {
    padding: 1em;
}
.resources_trouble h2 {
    font-size: 18px;
    margin-bottom: 1em;
}

.resources_trouble_bloc ul li {
    width: 48%;
}
.resources_trouble_bloc ul li:nth-child(n+3) {
    margin-top: 1em;
}
.resources_trouble_bloc ul li .mark {
		width: 15px;
    top: 5px;
    left: 5px;
    right: auto;
}
.resources_trouble_bloc ul li .mark img {
    display: block;
}
.resources_trouble_bloc ul li .q {
		font-size: 14px;
    padding: 0.5em;
}
.resources_trouble_bloc ul li .arrow {
    width: 15px;
    margin: 10px auto;
}
.resources_trouble_bloc ul li .arrow img {
    display: block;
}
.resources_trouble_bloc ul li .a {
		font-size: 16px;
    padding: 0.5em;
    height: auto;
}


.service_page .top_service {
    padding-top: 1em;
}
.service_mv_bloc .ttl figure {
    width: 30px;
    margin: 0 auto;
}
.service_mv_bloc .ttl h1 {
    font-size: 24px;
}
.service_mv_bloc .ttl .en {
    font-size: 10px;
}
.service_mv_bloc p {
    font-size: 11px;
}




.salon_page .under_mv {
    background-position: right 38% center;
}
.salon_page .under_mv_bloc > figure {
    width: 33%;
    margin: 0 auto 0.5em;
}
.salon_page .under_mv_bloc h2 {
    font-size: 16px;
}
.salon_page .under_mv_bloc p {
    background: none;
    font-size: 14px;
    padding: 0;
}


.salon_page .top_trouble {
    padding-top: 1em;
}


.about_salon .band {
		padding: 1em;
    margin-bottom: 0;
}
.about_salon .band h2 figure {
    width: 50%;
    margin: 0 auto;
}
.about_salon .band h2 .title {
    font-size: 18px;
}
.about_salon_bloc {
    padding: 1em;
}
.about_salon_bloc .upper {
    margin-bottom: 1em;
}
.about_salon_bloc .bottom .item {
    width: 100%;
}
.about_salon_bloc .bottom .item + .item {
    margin-top: 1em;
}


.about_salon_bloc .bottom .item h3 figure {
    width: 30px;
}
.about_salon_bloc .bottom .item h3 .title {
    font-size: 21px;
}


.profile {
    padding: 1em;
}
.profile figure {
    flex: auto;
    margin-bottom: 1em;
}
.profile .profile_bloc {
    width: 100%;
    margin: 0;
}
.profile .profile_bloc h2 .en {
    font-size: 24px;
}
.profile .profile_bloc h2 .jp {
    font-size: 24px;
}
.profile .profile_bloc h3 {
    font-size: 13px;
}


.under_movie {
    padding: 1em;
}
.movie_wrap .youtube {
    width: 100%;
}
.movie_wrap .youtube p {
    margin-top: 0.5em;
}
.movie_wrap .youtube + .youtube {
    margin-top: 1em;
}
.movie_wrap h2 {
    font-size: 18px;
}



.salon_page .top_salon {
    padding: 0;
}
.salon_page .top_salon .band {
    padding: 1em;
}
.salon_page .top_salon .band h2 {
    font-size: 16px;
    margin: 0;
}
.salon_page .salon_entry {
    padding: 0 1em;
}

.fix_form {
    display: none;
}



#Contact {
    padding: 1em;
}
.contact_page #Contact .contact_bloc dl {
    padding: 0;
}
.contact_page #Contact .contact_bloc dl dt {
    width: 100%;
    padding: 0;
    font-size: 12px;
    margin: 0;
}
.contact_page #Contact .contact_bloc dl dd {
    flex: none;
    margin-left: 0;
}
.contact_page .contact_name {
    width: 86%;
}


.thanks {
    padding: 4em 1em;
    background-size: contain,cover;
    box-sizing: border-box;
}

.top_company_bloc + .privacy_bloc {
    margin: 2em 2em 0;
}












} /*media768px*/
